Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 92cf7652 authored by Sage Weil's avatar Sage Weil
Browse files

ceph: fix null pointer dereference in ceph_init_dentry for nfs reexport



The fh_to_dentry etc. methods use ceph_init_dentry(), which assumes that
d_parent is defined.  It isn't for those callers, so check!

Signed-off-by: default avatarSage Weil <sage@newdream.net>
parent ab226e21
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -40,7 +40,8 @@ int ceph_init_dentry(struct dentry *dentry)
	if (dentry->d_fsdata)
		return 0;

	if (ceph_snap(dentry->d_parent->d_inode) == CEPH_NOSNAP)
	if (dentry->d_parent == NULL ||   /* nfs fh_to_dentry */
	    ceph_snap(dentry->d_parent->d_inode) == CEPH_NOSNAP)
		dentry->d_op = &ceph_dentry_ops;
	else if (ceph_snap(dentry->d_parent->d_inode) == CEPH_SNAPDIR)
		dentry->d_op = &ceph_snapdir_dentry_ops;