]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: ObjectMap::aio_update can acquire snap_lock out-of-order
authorJason Dillaman <dillaman@redhat.com>
Thu, 30 Apr 2015 19:32:38 +0000 (15:32 -0400)
committerJason Dillaman <dillaman@redhat.com>
Thu, 7 May 2015 23:03:09 +0000 (19:03 -0400)
commit8cbd92b1fe835b1eb3a898976f9507f51cc115b2
treeebfad4c16a3cfab904a8429a6ba952e635707552
parenta23933e4ccc489190aba8a2877494126b0d3fd15
librbd: ObjectMap::aio_update can acquire snap_lock out-of-order

Detected during an fsx run where a refresh and CoR were occurring
concurrently.  The refresh held the snap_lock and was waiting on
the object_map_lock, while the CoR held object_map_lock and was
waiting for snap_lock.

Fixes: #11577
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/AioRequest.cc
src/librbd/AsyncTrimRequest.cc
src/librbd/CopyupRequest.cc
src/librbd/ImageWatcher.cc
src/librbd/ImageWatcher.h
src/librbd/ObjectMap.cc