]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
xfs: dont set sb in xfs_mount_alloc()
authorIan Kent <raven@themaw.net>
Mon, 4 Nov 2019 21:58:46 +0000 (13:58 -0800)
committerDarrick J. Wong <darrick.wong@oracle.com>
Tue, 5 Nov 2019 16:28:26 +0000 (08:28 -0800)
When changing to use the new mount api the super block won't be
available when the xfs_mount struct is allocated so move setting the
super block in xfs_mount to xfs_fs_fill_super().

Signed-off-by: Ian Kent <raven@themaw.net>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/xfs/xfs_super.c

index 4b570ba3456ae93c9aaf4707f684987fc3e7848b..62dfc678c415bab82e80bc3f11a8338a23456b0f 100644 (file)
@@ -1560,8 +1560,7 @@ xfs_destroy_percpu_counters(
 }
 
 static struct xfs_mount *
-xfs_mount_alloc(
-       struct super_block      *sb)
+xfs_mount_alloc(void)
 {
        struct xfs_mount        *mp;
 
@@ -1569,7 +1568,6 @@ xfs_mount_alloc(
        if (!mp)
                return NULL;
 
-       mp->m_super = sb;
        spin_lock_init(&mp->m_sb_lock);
        spin_lock_init(&mp->m_agirotor_lock);
        INIT_RADIX_TREE(&mp->m_perag_tree, GFP_ATOMIC);
@@ -1605,9 +1603,10 @@ xfs_fs_fill_super(
         * allocate mp and do all low-level struct initializations before we
         * attach it to the super
         */
-       mp = xfs_mount_alloc(sb);
+       mp = xfs_mount_alloc();
        if (!mp)
                goto out;
+       mp->m_super = sb;
        sb->s_fs_info = mp;
 
        error = xfs_parseargs(mp, (char *)data);