diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2010-01-25 06:16:19 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-01-26 22:22:27 -0500 |
commit | 083c73c253c23c20359a344dfe1198ea628e6259 (patch) | |
tree | 22f4f25627db5569f7ce78ef3b9270a828ae924a /fs/9p | |
parent | 7e32b7bb734047c5e3cecf2e896b9cf8fc35d1e8 (diff) | |
download | linux-stable-083c73c253c23c20359a344dfe1198ea628e6259.tar.gz linux-stable-083c73c253c23c20359a344dfe1198ea628e6259.tar.bz2 linux-stable-083c73c253c23c20359a344dfe1198ea628e6259.zip |
fix oops in fs/9p late mount failure
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>
Diffstat (limited to 'fs/9p')
-rw-r--r-- | fs/9p/vfs_super.c | 3 |
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); |