mirror of
https://github.com/ceph/ceph
synced 2025-03-11 02:39:05 +00:00
os/bluestore: fix Extent leak from _wctx_finish
Signed-off-by: Sage Weil <sage@redhat.com>
This commit is contained in:
parent
0d414cea68
commit
3ae6929b22
@ -7353,7 +7353,10 @@ void BlueStore::_wctx_finish(
|
|||||||
WriteContext *wctx)
|
WriteContext *wctx)
|
||||||
{
|
{
|
||||||
set<pair<bool, BlobRef> > blobs2remove;
|
set<pair<bool, BlobRef> > blobs2remove;
|
||||||
for (auto &lo : wctx->old_extents) {
|
auto oep = wctx->old_extents.begin();
|
||||||
|
while (oep != wctx->old_extents.end()) {
|
||||||
|
auto &lo = *oep;
|
||||||
|
oep = wctx->old_extents.erase(oep);
|
||||||
dout(20) << __func__ << " lex_old " << lo << dendl;
|
dout(20) << __func__ << " lex_old " << lo << dendl;
|
||||||
BlobRef b = lo.blob;
|
BlobRef b = lo.blob;
|
||||||
const bluestore_blob_t& blob = b->get_blob();
|
const bluestore_blob_t& blob = b->get_blob();
|
||||||
@ -7401,6 +7404,7 @@ void BlueStore::_wctx_finish(
|
|||||||
txc->statfs_delta.compressed_allocated() -= e.length;
|
txc->statfs_delta.compressed_allocated() -= e.length;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
delete &lo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user