]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: make ceph_msdc_build_path use ref-walk
authorJeff Layton <jlayton@kernel.org>
Wed, 5 Aug 2020 18:50:48 +0000 (14:50 -0400)
committerIlya Dryomov <idryomov@gmail.com>
Mon, 15 Aug 2022 12:51:41 +0000 (14:51 +0200)
commit57a5cb89d01c6509f80a676664bd5103c9c5bc10
tree8f905f838b0b5eb863b5f7be5c8199abfd7b2605
parent48228ec82f9d9ee577fdf41edce8ecb9be871f87
ceph: make ceph_msdc_build_path use ref-walk

Encryption potentially requires allocation, at which point we'll need to
be in a non-atomic context. Convert ceph_msdc_build_path to take dentry
spinlocks and references instead of using rcu_read_lock to walk the
path.

This is slightly less efficient, and we may want to eventually allow
using RCU when the leaf dentry isn't encrypted.

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
fs/ceph/mds_client.c