Fixes: https://tracker.ceph.com/issues/42217
Signed-off-by: GaryHyg <huygbj@inspur.com>
}
queue.request_completed();
// Perform a blocking wait until the request callback is called
- if (std::unique_lock<std::mutex> lk(req_mtx); rstate != ReqState::Wait) {
- req_cv.wait(lk, [&rstate] {return rstate != ReqState::Wait;});
+ {
+ std::unique_lock lock{req_mtx};
+ req_cv.wait(lock, [&rstate] {return rstate != ReqState::Wait;});
}
if (rstate == ReqState::Cancelled) {
//FIXME: decide on error code for cancelled request