Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d1e2777d4f419a865ddccdb9b3412021d0e4de51
Commit:     d1e2777d4f419a865ddccdb9b3412021d0e4de51
Parent:     ec217e0ece60f2240772e6f08e0529775846c627
Author:     Abhijith Das <[EMAIL PROTECTED]>
AuthorDate: Thu Aug 23 13:33:01 2007 -0500
Committer:  Steven Whitehouse <[EMAIL PROTECTED]>
CommitDate: Wed Oct 10 08:55:46 2007 +0100

    [GFS2] panic after can't parse mount arguments
    
    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 <[EMAIL PROTECTED]>
    Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
---
 fs/gfs2/ops_fstype.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

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);
 }
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to