summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorSteve French <smfrench@gmail.com>2007-07-20 20:07:26 +0200
committerSteven Whitehouse <swhiteho@redhat.com>2007-10-10 09:54:46 +0200
commitafd0942d98f74296b74993739e41d2ca7cb9fd5a (patch)
treebf2568363daa826db9a8c00eb9038f67b0ab0005 /fs
parent[GFS2] Clean up duplicate includes in fs/gfs2/ (diff)
downloadlinux-afd0942d98f74296b74993739e41d2ca7cb9fd5a.tar.xz
linux-afd0942d98f74296b74993739e41d2ca7cb9fd5a.zip
[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>
Diffstat (limited to 'fs')
-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 911c115b5c6c..5b8b994b9912 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);
}