[PATCH 29/51] [GFS2] panic after can't parse mount arguments

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: swhiteho
Date: Thursday, October 4, 2007 - 1:49 am

From: Abhijith Das <adas@redhat.com>

When you try to mount gfs2 with -o garbage, the mount fails and the gfs2
superblock is deallocated and becomes NULL. The vfs comes around later
on and calls gfs2_kill_sb. At this point the hidden gfs2 superblock
pointer (sb->s_fs_info) is NULL and dereferencing it through
gfs2_meta_syncfs causes the panic. (the other function call to
gfs2_delete_debugfs_file() succeeds because this function already checks
for a NULL pointer)

Signed-off-by: Abhijith Das <adas@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>

diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
index 9e0e9be..314c113 100644
--- a/fs/gfs2/ops_fstype.c
+++ b/fs/gfs2/ops_fstype.c
@@ -887,8 +887,10 @@ error:
 
 static void gfs2_kill_sb(struct super_block *sb)
 {
-	gfs2_delete_debugfs_file(sb->s_fs_info);
-	gfs2_meta_syncfs(sb->s_fs_info);
+	if (sb->s_fs_info) {
+		gfs2_delete_debugfs_file(sb->s_fs_info);
+		gfs2_meta_syncfs(sb->s_fs_info);
+	}
 	kill_block_super(sb);
 }
 
-- 
1.5.1.2

-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[GFS2/DLM] Pre-pull patch posting, swhiteho, (Thu Oct 4, 1:48 am)
[PATCH 17/51] [GFS2] unneeded typecast, swhiteho, (Thu Oct 4, 1:49 am)
[PATCH 25/51] [GFS2] Reduce truncate IO traffic, swhiteho, (Thu Oct 4, 1:49 am)
[PATCH 26/51] [DLM] Fix lowcomms socket closing, swhiteho, (Thu Oct 4, 1:49 am)
[PATCH 29/51] [GFS2] panic after can't parse mount arguments, swhiteho, (Thu Oct 4, 1:49 am)
[GFS2/DLM] Pull request, Steven Whitehouse, (Fri Oct 12, 12:47 am)