ceph: clear d_fsinfo pointer under d_lock
authorJeff Layton <jlayton@redhat.com>
Fri, 1 Jul 2016 13:39:20 +0000 (09:39 -0400)
committerIlya Dryomov <idryomov@gmail.com>
Thu, 28 Jul 2016 01:00:39 +0000 (03:00 +0200)
commit5b484a513149f53613d376a9d1cd0391de099fb4
tree0ee1d9977b0ba7ec005647ec6086414979eca3c0
parent8aa152c77890abd0731f119e4e6662375503e288
ceph: clear d_fsinfo pointer under d_lock

To check for a valid dentry lease, we need to get at the
ceph_dentry_info. Under rcuwalk though, we may end up with a dentry that
is on its way to destruction. Since we need to take the d_lock in
dentry_lease_is_valid already, we can just ensure that we clear the
d_fsinfo pointer out under the same lock before destroying it.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Yan, Zheng <zyan@redhat.com>
fs/ceph/dir.c