]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: cancel ops before blocking IO 8565/head
authorJason Dillaman <dillaman@redhat.com>
Tue, 12 Apr 2016 20:17:05 +0000 (16:17 -0400)
committerJason Dillaman <dillaman@redhat.com>
Tue, 12 Apr 2016 20:23:44 +0000 (16:23 -0400)
commit8451c0f86eaf79395f0502ed235e4932522cec86
tree1b8411f78de735bcf94a114de9f5bc73a4eb6a47
parente90e3d90eb98006114173f660311e37bb4aa8cbd
librbd: cancel ops before blocking IO

Ops might have in-flight IO -- blocking IO after canceling the ops
will result in the in-flight IO being flushed.  Shutdown also requires
an intermediate state where is still acts like it downs the lock
until after all ops are canceled and all IO is flushed.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/ExclusiveLock.cc
src/librbd/ExclusiveLock.h
src/librbd/exclusive_lock/ReleaseRequest.cc
src/librbd/exclusive_lock/ReleaseRequest.h
src/test/librbd/exclusive_lock/test_mock_ReleaseRequest.cc