Partially remove zeroing of op_ptr buffer, it's not necessary because it
is overwritten later anyway, and bufferptr::zero() adds a bit of latency
to the pipeline (not only memset, but also mutex (un)locking and CRC
invalidation).
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
Op* _get_next_op() {
if (op_ptr.length() == 0 || op_ptr.offset() >= op_ptr.length()) {
op_ptr = bufferptr(sizeof(Op) * OPS_PER_PTR);
- op_ptr.zero();
}
bufferptr ptr(op_ptr, 0, sizeof(Op));
op_bl.append(ptr);
op_ptr.set_offset(op_ptr.offset() + sizeof(Op));
char* p = ptr.c_str();
+ memset(p, 0, sizeof(Op));
return reinterpret_cast<Op*>(p);
}
__le32 _get_coll_id(const coll_t& coll) {