summaryrefslogtreecommitdiff
path: root/fs/9p
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2010-01-25 06:16:19 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2010-02-09 04:50:46 -0800
commit26d2257801281a5bd2833d8f22cebead57a4b4c6 (patch)
tree15833d8f1b4837d8095e1580b0a8b09e70421d5b /fs/9p
parentdeb20f1c49d390d3fcb62fa9789486f170054004 (diff)
fix oops in fs/9p late mount failure
commit 083c73c253c23c20359a344dfe1198ea628e6259 upstream. if 9P ->get_sb() fails late (at root inode or root dentry allocation), we'll hit its ->kill_sb() with NULL ->s_root Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'fs/9p')
-rw-r--r--fs/9p/vfs_super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index 14a86448572c..69357c0d9899 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -188,7 +188,8 @@ static void v9fs_kill_super(struct super_block *s)
P9_DPRINTK(P9_DEBUG_VFS, " %p\n", s);
- v9fs_dentry_release(s->s_root); /* clunk root */
+ if (s->s_root)
+ v9fs_dentry_release(s->s_root); /* clunk root */
kill_anon_super(s);