mirror of
https://github.com/ceph/ceph
synced 2024-12-19 18:02:46 +00:00
rgw/pubsub: Waiter unlocks before suspend
Signed-off-by: Casey Bodley <cbodley@redhat.com>
This commit is contained in:
parent
b7328fed0e
commit
629ad4562b
@ -154,10 +154,10 @@ public:
|
||||
auto yield = y.get_yield_context();
|
||||
auto&& token = yield[ec];
|
||||
boost::asio::async_initiate<boost::asio::yield_context, Signature>(
|
||||
[this] (auto handler, auto ex) {
|
||||
[this, &l] (auto handler, auto ex) {
|
||||
completion = Completion::create(ex, std::move(handler));
|
||||
l.unlock(); // unlock before suspend
|
||||
}, token, yield.get_executor());
|
||||
l.unlock();
|
||||
return -ec.value();
|
||||
}
|
||||
cond.wait(l, [this]{return (done==true);});
|
||||
|
Loading…
Reference in New Issue
Block a user