]> err.no Git - linux-2.6/blobdiff - fs/gfs2/ops_fstype.c
ide/Kconfig: couple of fixes
[linux-2.6] / fs / gfs2 / ops_fstype.c
index c4b7a210c0c012e9f6cb55e5c8b8b8d6088b93f3..ef9c6c4f80f6cb420ba539e26a601240bbb49183 100644 (file)
@@ -723,7 +723,7 @@ static int gfs2_lm_mount(struct gfs2_sbd *sdp, int silent)
 {
        char *proto = sdp->sd_proto_name;
        char *table = sdp->sd_table_name;
-       int flags = 0;
+       int flags = LM_MFLAG_CONV_NODROP;
        int error;
 
        if (sdp->sd_args.ar_spectator)
@@ -943,7 +943,6 @@ static struct super_block* get_gfs2_sb(const char *dev_name)
 {
        struct kstat stat;
        struct nameidata nd;
-       struct file_system_type *fstype;
        struct super_block *sb = NULL, *s;
        int error;
 
@@ -955,8 +954,7 @@ static struct super_block* get_gfs2_sb(const char *dev_name)
        }
        error = vfs_getattr(nd.path.mnt, nd.path.dentry, &stat);
 
-       fstype = get_fs_type("gfs2");
-       list_for_each_entry(s, &fstype->fs_supers, s_instances) {
+       list_for_each_entry(s, &gfs2_fs_type.fs_supers, s_instances) {
                if ((S_ISBLK(stat.mode) && s->s_dev == stat.rdev) ||
                    (S_ISDIR(stat.mode) &&
                     s == nd.path.dentry->d_inode->i_sb)) {
@@ -1000,7 +998,6 @@ static int gfs2_get_sb_meta(struct file_system_type *fs_type, int flags,
                error = PTR_ERR(new);
                goto error;
        }
-       module_put(fs_type->owner);
        new->s_flags = flags;
        strlcpy(new->s_id, sb->s_id, sizeof(new->s_id));
        sb_set_blocksize(new, sb->s_blocksize);