bufferlist &chunk = encoded[chunk_index(i)];
chunk.substr_of(prepared, i * blocksize, blocksize);
chunk.rebuild_aligned_size_and_memory(blocksize, SIMD_ALIGN);
- assert(chunk.is_contiguous());
+ ceph_assert(chunk.is_contiguous());
}
if (padded_chunks) {
unsigned remainder = raw.length() - (k - padded_chunks) * blocksize;
int ErasureCode::encode_chunks(const set<int> &want_to_encode,
map<int, bufferlist> *encoded)
{
- assert("ErasureCode::encode_chunks not implemented" == 0);
+ ceph_assert("ErasureCode::encode_chunks not implemented" == 0);
}
int ErasureCode::_decode(const set<int> &want_to_read,
const map<int, bufferlist> &chunks,
map<int, bufferlist> *decoded)
{
- assert("ErasureCode::decode_chunks not implemented" == 0);
+ ceph_assert("ErasureCode::decode_chunks not implemented" == 0);
}
int ErasureCode::parse(const ErasureCodeProfile &profile,
int ErasureCodePluginRegistry::remove(const std::string &name)
{
- assert(lock.is_locked());
+ ceph_assert(lock.is_locked());
if (plugins.find(name) == plugins.end())
return -ENOENT;
std::map<std::string,ErasureCodePlugin*>::iterator plugin = plugins.find(name);
int ErasureCodePluginRegistry::add(const std::string &name,
ErasureCodePlugin* plugin)
{
- assert(lock.is_locked());
+ ceph_assert(lock.is_locked());
if (plugins.find(name) != plugins.end())
return -EEXIST;
plugins[name] = plugin;
ErasureCodePlugin *ErasureCodePluginRegistry::get(const std::string &name)
{
- assert(lock.is_locked());
+ ceph_assert(lock.is_locked());
if (plugins.find(name) != plugins.end())
return plugins[name];
else
ErasureCodePlugin **plugin,
ostream *ss)
{
- assert(lock.is_locked());
+ ceph_assert(lock.is_locked());
std::string fname = directory + "/" PLUGIN_PREFIX
+ plugin_name + PLUGIN_SUFFIX;
void *library = dlopen(fname.c_str(), RTLD_NOW);
coding[i - k] = (*decoded)[i].c_str();
}
erasures[erasures_count] = -1;
- assert(erasures_count > 0);
+ ceph_assert(erasures_count > 0);
return isa_decode(erasures, data, coding, blocksize);
}
if (m == 1) {
// single parity decoding
- assert(1 == nerrs);
+ ceph_assert(1 == nerrs);
dout(20) << "isa_decode: reconstruct using region xor [" <<
erasures[0] << "]" << dendl;
region_xor(recover_source, recover_target[0], k, blocksize);
// use xor decoding if a data chunk is missing or the first coding chunk
dout(20) << "isa_decode: reconstruct using region xor [" <<
erasures[0] << "]" << dendl;
- assert(1 == s);
- assert(k == r);
+ ceph_assert(1 == s);
+ ceph_assert(k == r);
region_xor(recover_source, recover_target[0], k, blocksize);
return 0;
}
" [ matrix ] = " <<
((matrixtype == kVandermonde) ? "Vandermonde" : "Cauchy") << dendl;
- assert((matrixtype == kVandermonde) || (matrixtype == kCauchy));
+ ceph_assert((matrixtype == kVandermonde) || (matrixtype == kCauchy));
}
// -----------------------------------------------------------------------------
#include <stdio.h>
#include <string.h>
#include "arch/intel.h"
+
+#include "include/assert.h"
+
// -----------------------------------------------------------------------------
vector_op_t* ew)
// -----------------------------------------------------------------------------
{
- assert(is_aligned(cw, EC_ISA_VECTOR_OP_WORDSIZE));
- assert(is_aligned(dw, EC_ISA_VECTOR_OP_WORDSIZE));
- assert(is_aligned(ew, EC_ISA_VECTOR_OP_WORDSIZE));
+ ceph_assert(is_aligned(cw, EC_ISA_VECTOR_OP_WORDSIZE));
+ ceph_assert(is_aligned(dw, EC_ISA_VECTOR_OP_WORDSIZE));
+ ceph_assert(is_aligned(ew, EC_ISA_VECTOR_OP_WORDSIZE));
while (cw < ew) {
*dw++ ^= *cw++;
}
// -----------------------------------------------------------------------------
{
#ifdef __x86_64__
- assert(!(size % EC_ISA_VECTOR_SSE2_WORDSIZE));
+ ceph_assert(!(size % EC_ISA_VECTOR_SSE2_WORDSIZE));
unsigned char* p;
int d, l;
unsigned i;
chunk_size++;
dout(20) << "get_chunk_size: chunk_size " << chunk_size
<< " must be modulo " << alignment << dendl;
- assert(alignment <= chunk_size);
+ ceph_assert(alignment <= chunk_size);
unsigned modulo = chunk_size % alignment;
if (modulo) {
dout(10) << "get_chunk_size: " << chunk_size
} else {
unsigned tail = object_size % alignment;
unsigned padded_length = object_size + ( tail ? ( alignment - tail ) : 0 );
- assert(padded_length % k == 0);
+ ceph_assert(padded_length % k == 0);
return padded_length / k;
}
}
}
erasures[erasures_count] = -1;
- assert(erasures_count > 0);
+ ceph_assert(erasures_count > 0);
return jerasure_decode(erasures, data, coding, blocksize);
}
int ret;
ret = crush.add_rule(rno, steps, pg_pool_t::TYPE_ERASURE,
min_rep, max_rep);
- assert(ret == rno);
+ ceph_assert(ret == rno);
int step = 0;
ret = crush.set_rule_step(rno, step++, CRUSH_RULE_SET_CHOOSELEAF_TRIES, 5, 0);
- assert(ret == 0);
+ ceph_assert(ret == 0);
ret = crush.set_rule_step(rno, step++, CRUSH_RULE_SET_CHOOSE_TRIES, 100, 0);
- assert(ret == 0);
+ ceph_assert(ret == 0);
ret = crush.set_rule_step(rno, step++, CRUSH_RULE_TAKE, root, 0);
- assert(ret == 0);
+ ceph_assert(ret == 0);
// [ [ "choose", "rack", 2 ],
// [ "chooseleaf", "host", 5 ] ]
for (vector<Step>::const_iterator i = rule_steps.begin();
return -EINVAL;
}
ret = crush.set_rule_step(rno, step++, op, i->n, type);
- assert(ret == 0);
+ ceph_assert(ret == 0);
}
ret = crush.set_rule_step(rno, step++, CRUSH_RULE_EMIT, 0, 0);
- assert(ret == 0);
+ ceph_assert(ret == 0);
crush.set_rule_name(rno, name);
return rno;
}
unsigned tail = object_size % alignment;
unsigned padded_length = object_size + ( tail ? ( alignment - tail ) : 0 );
- assert(padded_length % k == 0);
+ ceph_assert(padded_length % k == 0);
return padded_length / k;
}
dout(10) << " [ technique ] = " <<
((technique == MULTIPLE) ? "multiple" : "single") << dendl;
- assert((technique == SINGLE) || (technique == MULTIPLE));
+ ceph_assert((technique == SINGLE) || (technique == MULTIPLE));
}