Moved vselector.sub_usage, so sub_usage and add_usage will not cross
_flush_bdev_safely(), which contains unlock().
Fixes: https://tracker.ceph.com/issues/43538
Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
flush_bdev(); // FIXME?
_flush_and_sync_log(l, 0, old_log_jump_to);
- vselector->sub_usage(log_file->vselector_hint, log_file->fnode);
// 2. prepare compacted log
bluefs_transaction_t t;
++from;
}
+ vselector->sub_usage(log_file->vselector_hint, log_file->fnode);
+
// clear the extents from old log file, they are added to new log
log_file->fnode.clear_extents();
// swap the log files. New log file is the log file now.