mirror of
https://github.com/ceph/ceph
synced 2025-01-20 01:51:34 +00:00
os/bluestore: fix unsharing blob dirty_range args
Fixes: http://tracker.ceph.com/issues/20227 Signed-off-by: Sage Weil <sage@redhat.com>
This commit is contained in:
parent
d85f4bb4ca
commit
6e83cfecfb
@ -10353,7 +10353,7 @@ int BlueStore::_do_remove(
|
||||
if (b.is_shared() &&
|
||||
std::find(unshared_blobs.begin(), unshared_blobs.end(),
|
||||
sb) != unshared_blobs.end()) {
|
||||
dout(20) << __func__ << " " << e << dendl;
|
||||
dout(20) << __func__ << " unsharing " << e << dendl;
|
||||
bluestore_blob_t& blob = e.blob->dirty_blob();
|
||||
blob.clear_flag(bluestore_blob_t::FLAG_SHARED);
|
||||
if (e.logical_offset < b_start) {
|
||||
@ -10365,7 +10365,7 @@ int BlueStore::_do_remove(
|
||||
}
|
||||
}
|
||||
|
||||
h->extent_map.dirty_range(b_start, b_end);
|
||||
h->extent_map.dirty_range(b_start, b_end - b_start);
|
||||
txc->write_onode(h);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user