summaryrefslogtreecommitdiffstats
path: root/init/do_mounts.h
diff options
context:
space:
mode:
authorIlya Dryomov <idryomov@gmail.com>2019-05-30 11:15:23 +0200
committerIlya Dryomov <idryomov@gmail.com>2019-07-08 14:01:45 +0200
commita2b1da09793d003410b57f96eaf7e83e43b7a50a (patch)
tree9f9c5a9723b3bebb43b7c6460327b00f99675e9c /init/do_mounts.h
parent793333a303c90174c317e3fa12e898bbc02daee4 (diff)
downloadblackbird-op-linux-a2b1da09793d003410b57f96eaf7e83e43b7a50a.tar.gz
blackbird-op-linux-a2b1da09793d003410b57f96eaf7e83e43b7a50a.zip
rbd: lock should be quiesced on reacquire
Quiesce exclusive lock at the top of rbd_reacquire_lock() instead of only when ceph_cls_set_cookie() fails. This avoids a deadlock on rbd_dev->lock_rwsem. If rbd_dev->lock_rwsem is needed for I/O completion, set_cookie can hang ceph-msgr worker thread if set_cookie reply ends up behind an I/O reply, because, like lock and unlock requests, set_cookie is sent and waited upon with rbd_dev->lock_rwsem held for write. Signed-off-by: Ilya Dryomov <idryomov@gmail.com> Reviewed-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
Diffstat (limited to 'init/do_mounts.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud