From: Xiubo Li Date: Wed, 30 Mar 2022 04:21:12 +0000 (+0800) Subject: ceph: update the dlease for the hashed dentry when removing X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=17c67c5717d234b99ba0305db92de88dba725303;p=ceph-client.git ceph: update the dlease for the hashed dentry when removing The MDS will always refresh the dentry lease when removing the files or directories. And if the dentry is still hashed, we can update the dentry lease and no need to do the lookup from the MDS later. Reviewed-by: Jeff Layton Signed-off-by: Xiubo Li --- diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c index 3c7554d97093..ebc936231ea2 100644 --- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -1467,10 +1467,12 @@ retry_lookup: } else if (have_lease) { if (d_unhashed(dn)) d_add(dn, NULL); + } + + if (!d_unhashed(dn) && have_lease) update_dentry_lease(dir, dn, rinfo->dlease, session, req->r_request_started); - } goto done; }