Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
os/bluestore: fix split vs finish_write race
In _tcx_finish(), we were looking at the right Cache for the collection, and then calling finish_write with that Cache and taking the lock. This could race with a split_cache() such that after we got the lock the collection was not on a different cache. This would in turn lead to a failed assertion later on in _rm_buffer when the sharedblob was trimmed. Fixes: http://tracker.ceph.com/issues/24439 Signed-off-by: Sage Weil <sage@redhat.com> (cherry picked from commit f21f1f1)
- Loading branch information
Showing
2 changed files
with
22 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters