diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_super.c')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_super.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c index 3ce9426f57d8..a1e3f3ea334b 100644 --- a/fs/xfs/linux-2.6/xfs_super.c +++ b/fs/xfs/linux-2.6/xfs_super.c | |||
@@ -511,7 +511,7 @@ xfs_flush_device_work( | |||
511 | void *arg) | 511 | void *arg) |
512 | { | 512 | { |
513 | struct inode *inode = arg; | 513 | struct inode *inode = arg; |
514 | sync_blockdev(mp->m_vfsp->vfs_super->s_bdev); | 514 | sync_blockdev(mp->m_super->s_bdev); |
515 | iput(inode); | 515 | iput(inode); |
516 | } | 516 | } |
517 | 517 | ||
@@ -593,7 +593,6 @@ STATIC void | |||
593 | xfs_fs_put_super( | 593 | xfs_fs_put_super( |
594 | struct super_block *sb) | 594 | struct super_block *sb) |
595 | { | 595 | { |
596 | bhv_vfs_t *vfsp = vfs_from_sb(sb); | ||
597 | struct xfs_mount *mp = XFS_M(sb); | 596 | struct xfs_mount *mp = XFS_M(sb); |
598 | int error; | 597 | int error; |
599 | 598 | ||
@@ -601,12 +600,8 @@ xfs_fs_put_super( | |||
601 | 600 | ||
602 | xfs_sync(mp, SYNC_ATTR | SYNC_DELWRI); | 601 | xfs_sync(mp, SYNC_ATTR | SYNC_DELWRI); |
603 | error = xfs_unmount(mp, 0, NULL); | 602 | error = xfs_unmount(mp, 0, NULL); |
604 | if (error) { | 603 | if (error) |
605 | printk("XFS: unmount got error=%d\n", error); | 604 | printk("XFS: unmount got error=%d\n", error); |
606 | printk("%s: vfs=0x%p left dangling!\n", __FUNCTION__, vfsp); | ||
607 | } else { | ||
608 | vfs_deallocate(vfsp); | ||
609 | } | ||
610 | } | 605 | } |
611 | 606 | ||
612 | STATIC void | 607 | STATIC void |
@@ -764,7 +759,6 @@ xfs_fs_fill_super( | |||
764 | int silent) | 759 | int silent) |
765 | { | 760 | { |
766 | struct inode *rootvp; | 761 | struct inode *rootvp; |
767 | struct bhv_vfs *vfsp = vfs_allocate(sb); | ||
768 | struct xfs_mount *mp = NULL; | 762 | struct xfs_mount *mp = NULL; |
769 | struct xfs_mount_args *args = xfs_args_allocate(sb, silent); | 763 | struct xfs_mount_args *args = xfs_args_allocate(sb, silent); |
770 | struct kstatfs statvfs; | 764 | struct kstatfs statvfs; |
@@ -776,8 +770,8 @@ xfs_fs_fill_super( | |||
776 | spin_lock_init(&mp->m_sync_lock); | 770 | spin_lock_init(&mp->m_sync_lock); |
777 | init_waitqueue_head(&mp->m_wait_single_sync_task); | 771 | init_waitqueue_head(&mp->m_wait_single_sync_task); |
778 | 772 | ||
779 | mp->m_vfsp = vfsp; | 773 | mp->m_super = sb; |
780 | vfsp->vfs_mount = mp; | 774 | sb->s_fs_info = mp; |
781 | 775 | ||
782 | if (sb->s_flags & MS_RDONLY) | 776 | if (sb->s_flags & MS_RDONLY) |
783 | mp->m_flags |= XFS_MOUNT_RDONLY; | 777 | mp->m_flags |= XFS_MOUNT_RDONLY; |
@@ -847,7 +841,6 @@ fail_unmount: | |||
847 | xfs_unmount(mp, 0, NULL); | 841 | xfs_unmount(mp, 0, NULL); |
848 | 842 | ||
849 | fail_vfsop: | 843 | fail_vfsop: |
850 | vfs_deallocate(vfsp); | ||
851 | kmem_free(args, sizeof(*args)); | 844 | kmem_free(args, sizeof(*args)); |
852 | return -error; | 845 | return -error; |
853 | } | 846 | } |