]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
librbd: fix parent cache races and error handling
authorJason Dillaman <dillaman@redhat.com>
Mon, 13 Jul 2020 20:11:06 +0000 (16:11 -0400)
committerJason Dillaman <dillaman@redhat.com>
Wed, 15 Jul 2020 13:36:35 +0000 (09:36 -0400)
commit74a139d2ceb068fd5c77884e2a7be0359a3300c9
tree2c824154536ac4e0708f353841dd51854e3af174
parent7f6341f73fae222cfd60ed232f7587c6ff2ebd7f
librbd: fix parent cache races and error handling

If the plugin fails to connect to the daemon at start-up it will
crash the process due to a resource deadlock exception being
thrown as the client is destroyed. Additionally, librbd will support
concurrent IO thread processing in the future so the client needs
to be protected by a lock.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/cache/ParentCacheObjectDispatch.cc
src/librbd/cache/ParentCacheObjectDispatch.h
src/test/librbd/CMakeLists.txt
src/test/librbd/cache/test_mock_ParentCacheObjectDispatch.cc [new file with mode: 0644]
src/test/librbd/cache/test_mock_ParentImageCache.cc [deleted file]