behavior.
Fixes: https://tracker.ceph.com/issues/37733
Signed-off-by: linbing <linbing@t2cloud.net>
(cherry picked from commit
dbbde306484276251cbd7a7b7a6fde0093f98ba2)
Conflicts:
src/os/bluestore/BlockDevice.h : Resolved in try_aio_wake
uint64_t get_num_ios() const;
void try_aio_wake() {
+ std::lock_guard l(lock);
if (num_running == 1) {
// we might have some pending IOs submitted after the check
// as there is no lock protection for aio_submit.
// Hence we might have false conditional trigger.
// aio_wait has to handle that hence do not care here.
- std::lock_guard<std::mutex> l(lock);
cond.notify_all();
--num_running;
ceph_assert(num_running >= 0);