| From | Ben Hutchings <> | Date | Tue, 17 Dec 2019 00:47:18 +0000 | Subject | [PATCH 3.16 104/136] ceph: add missing check in d_revalidate snapdir handling |
| |
3.16.80-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Al Viro <viro@zeniv.linux.org.uk>
commit 1f08529c84cfecaf1261ed9b7e17fab18541c58f upstream.
We should not play with dcache without parent locked...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com> [bwh: Backported to 3.16: - Test ceph_mds_request::r_locked_dir - Adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk> --- fs/ceph/inode.c | 1 + 1 file changed, 1 insertion(+)
--- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -1260,6 +1260,7 @@ retry_lookup: req->r_request_started); dout(" final dn %p\n", dn); } else if (!req->r_aborted && + req->r_locked_dir && (req->r_op == CEPH_MDS_OP_LOOKUPSNAP || req->r_op == CEPH_MDS_OP_MKSNAP)) { struct dentry *dn = req->r_dentry;
|