mirror of
https://github.com/ceph/ceph
synced 2025-03-20 01:07:42 +00:00
librbd: avoid possible recursive lock when racing acquire lock
Fixes: http://tracker.ceph.com/issues/17447 Signed-off-by: Jason Dillaman <dillaman@redhat.com>
This commit is contained in:
parent
5c5147efdf
commit
5e46e8eb66
@ -203,10 +203,10 @@ struct C_InvokeAsyncRequest : public Context {
|
||||
CephContext *cct = image_ctx.cct;
|
||||
ldout(cct, 20) << __func__ << dendl;
|
||||
|
||||
Context *ctx = util::create_context_callback<
|
||||
C_InvokeAsyncRequest<I>,
|
||||
&C_InvokeAsyncRequest<I>::handle_acquire_exclusive_lock>(
|
||||
this);
|
||||
Context *ctx = util::create_async_context_callback(
|
||||
image_ctx, util::create_context_callback<
|
||||
C_InvokeAsyncRequest<I>,
|
||||
&C_InvokeAsyncRequest<I>::handle_acquire_exclusive_lock>(this));
|
||||
|
||||
if (request_lock) {
|
||||
// current lock owner doesn't support op -- try to perform
|
||||
|
Loading…
Reference in New Issue
Block a user