]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: fixed deadlock while attempting to flush AIO requests 6586/head
authorJason Dillaman <dillaman@redhat.com>
Mon, 9 Nov 2015 16:22:24 +0000 (11:22 -0500)
committerAbhishek Lekshmanan <abhishek.lekshmanan@ril.com>
Sat, 14 Nov 2015 18:41:55 +0000 (00:11 +0530)
commit9c33dccaad9a4cdd46e9ecfa1e3ba6c03d95885a
tree3d8de6cbc4cc54f23c2c1d1cbd6d7262deb50b1d
parentb3b7877f9b4b3f43acab09d0dd6ee971b6aa1c29
librbd: fixed deadlock while attempting to flush AIO requests

In-flight AIO requests might force a flush if a snapshot was created
out-of-band.  The flush completion was previously invoked asynchronously,
potentially via the same thread worker handling the AIO request. This
resulted in the flush operation deadlocking since it can't complete.

Fixes: #13726
Backport: infernalis, hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit bfeb90e5fe24347648c72345881fd3d932243c98)
src/librbd/ImageCtx.cc