]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: Propagate EBLOCKLIST in send_acquire_lock
authorChristopher Hoffman <choffman@redhat.com>
Tue, 21 Mar 2023 16:15:04 +0000 (16:15 +0000)
committerChristopher Hoffman <choffman@redhat.com>
Thu, 6 Apr 2023 15:44:31 +0000 (15:44 +0000)
commitba3871568a8224a2b19c17e09d772eb2e427f765
treefb3f4fa47233369044d8b6143553939ff64b7f65
parentc1a1fc7456fbe01a4d4c0ac6309da527dffb5ac4
librbd: Propagate EBLOCKLIST in send_acquire_lock

During send_acquire_lock, there's a case where
there's no watcher handle present and lock request is delayed.
If the client is blocklisted, the delayed request will not
continue and the call that requested lock will never complete.

The lock process will now propagate -EBLOCKLIST, to callback
instead of indefinitely delaying.

Fixes: https://tracker.ceph.com/issues/59115
Signed-off-by: Christopher Hoffman <choffman@redhat.com>
(cherry picked from commit 6a0aeadc31ab1942c42c6e466183148f1d3752be)
src/librbd/ManagedLock.cc
src/test/librbd/test_mock_ManagedLock.cc