]> git.baikalelectronics.ru Git - kernel.git/commit
ceph: move ceph_find_inode() outside the s_mutex
authorYan, Zheng <zyan@redhat.com>
Tue, 16 Sep 2014 23:45:12 +0000 (07:45 +0800)
committerIlya Dryomov <idryomov@redhat.com>
Tue, 14 Oct 2014 17:03:39 +0000 (21:03 +0400)
commited6c86ea323fcf2787ac035216b6baeebde03b6c
treeb1b9f47e26f0553902803e7e58d23a0a3d3b5b0b
parentb1b453ace3fbaabf043b0685f15ce01f9405a5c5
ceph: move ceph_find_inode() outside the s_mutex

ceph_find_inode() may wait on freeing inode, using it inside the s_mutex
may cause deadlock. (the freeing inode is waiting for OSD read reply, but
dispatch thread is blocked by the s_mutex)

Signed-off-by: Yan, Zheng <zyan@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
fs/ceph/caps.c
fs/ceph/mds_client.c