summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve French <smfrench@gmail.com>2007-07-20 18:07:26 (GMT)
committerSteven Whitehouse <swhiteho@redhat.com>2007-10-10 07:54:46 (GMT)
commitafd0942d98f74296b74993739e41d2ca7cb9fd5a (patch)
treebf2568363daa826db9a8c00eb9038f67b0ab0005
parentaa0481e58a9a97a97035725a712920b5fe32f348 (diff)
downloadlinux-fsl-qoriq-afd0942d98f74296b74993739e41d2ca7cb9fd5a.tar.xz
[GFS2] GFS2 not checking pointer on create when running under nfsd
When looking at an unrelated problem, I noticed that nfsd does not set nameidata pointer on create (ie nd is NULL). This should cause an oops in some cases in which when NFSd is mounted over GFS2. Signed-off-by: Steve French <sfrench@us.ibm.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
-rw-r--r--fs/gfs2/ops_inode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/gfs2/ops_inode.c b/fs/gfs2/ops_inode.c
index 911c115..5b8b994 100644
--- a/fs/gfs2/ops_inode.c
+++ b/fs/gfs2/ops_inode.c
@@ -69,7 +69,7 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry,
mark_inode_dirty(inode);
break;
} else if (PTR_ERR(inode) != -EEXIST ||
- (nd->intent.open.flags & O_EXCL)) {
+ (nd && (nd->intent.open.flags & O_EXCL))) {
gfs2_holder_uninit(ghs);
return PTR_ERR(inode);
}