mirror of
https://github.com/torvalds/linux.git
synced 2024-12-03 17:41:22 +00:00
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: Sage Weil <sage@newdream.net>
This commit is contained in:
parent
ab226e21ad
commit
92cf765237
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user