Fix freeing of dyn_data and temp metadata block buffers on read cancel
A regression test would also be fun
This commit is contained in:
@@ -552,8 +552,6 @@ int blockstore_impl_t::dequeue_read(blockstore_op_t *read_op)
|
||||
undo_read:
|
||||
// need to wait. undo added requests, don't dequeue op
|
||||
release_clean(read_op);
|
||||
if (dsk.csum_block_size > dsk.bitmap_granularity)
|
||||
{
|
||||
for (auto & vec: rv)
|
||||
{
|
||||
if ((vec.copy_flags & COPY_BUF_CSUM_FILL) && vec.buf)
|
||||
@@ -567,7 +565,6 @@ undo_read:
|
||||
vec.dyn_data = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
rv.clear();
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user