diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_super.c')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_super.c | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c index 08fd3102128c..ab31ce5aeaf9 100644 --- a/fs/xfs/linux-2.6/xfs_super.c +++ b/fs/xfs/linux-2.6/xfs_super.c | |||
@@ -44,7 +44,6 @@ | |||
44 | #include "xfs_buf_item.h" | 44 | #include "xfs_buf_item.h" |
45 | #include "xfs_utils.h" | 45 | #include "xfs_utils.h" |
46 | #include "xfs_vnodeops.h" | 46 | #include "xfs_vnodeops.h" |
47 | #include "xfs_version.h" | ||
48 | #include "xfs_log_priv.h" | 47 | #include "xfs_log_priv.h" |
49 | #include "xfs_trans_priv.h" | 48 | #include "xfs_trans_priv.h" |
50 | #include "xfs_filestream.h" | 49 | #include "xfs_filestream.h" |
@@ -645,7 +644,7 @@ xfs_barrier_test( | |||
645 | XFS_BUF_ORDERED(sbp); | 644 | XFS_BUF_ORDERED(sbp); |
646 | 645 | ||
647 | xfsbdstrat(mp, sbp); | 646 | xfsbdstrat(mp, sbp); |
648 | error = xfs_iowait(sbp); | 647 | error = xfs_buf_iowait(sbp); |
649 | 648 | ||
650 | /* | 649 | /* |
651 | * Clear all the flags we set and possible error state in the | 650 | * Clear all the flags we set and possible error state in the |
@@ -757,18 +756,20 @@ xfs_open_devices( | |||
757 | * Setup xfs_mount buffer target pointers | 756 | * Setup xfs_mount buffer target pointers |
758 | */ | 757 | */ |
759 | error = ENOMEM; | 758 | error = ENOMEM; |
760 | mp->m_ddev_targp = xfs_alloc_buftarg(ddev, 0, mp->m_fsname); | 759 | mp->m_ddev_targp = xfs_alloc_buftarg(mp, ddev, 0, mp->m_fsname); |
761 | if (!mp->m_ddev_targp) | 760 | if (!mp->m_ddev_targp) |
762 | goto out_close_rtdev; | 761 | goto out_close_rtdev; |
763 | 762 | ||
764 | if (rtdev) { | 763 | if (rtdev) { |
765 | mp->m_rtdev_targp = xfs_alloc_buftarg(rtdev, 1, mp->m_fsname); | 764 | mp->m_rtdev_targp = xfs_alloc_buftarg(mp, rtdev, 1, |
765 | mp->m_fsname); | ||
766 | if (!mp->m_rtdev_targp) | 766 | if (!mp->m_rtdev_targp) |
767 | goto out_free_ddev_targ; | 767 | goto out_free_ddev_targ; |
768 | } | 768 | } |
769 | 769 | ||
770 | if (logdev && logdev != ddev) { | 770 | if (logdev && logdev != ddev) { |
771 | mp->m_logdev_targp = xfs_alloc_buftarg(logdev, 1, mp->m_fsname); | 771 | mp->m_logdev_targp = xfs_alloc_buftarg(mp, logdev, 1, |
772 | mp->m_fsname); | ||
772 | if (!mp->m_logdev_targp) | 773 | if (!mp->m_logdev_targp) |
773 | goto out_free_rtdev_targ; | 774 | goto out_free_rtdev_targ; |
774 | } else { | 775 | } else { |
@@ -971,12 +972,7 @@ xfs_fs_inode_init_once( | |||
971 | 972 | ||
972 | /* | 973 | /* |
973 | * Dirty the XFS inode when mark_inode_dirty_sync() is called so that | 974 | * Dirty the XFS inode when mark_inode_dirty_sync() is called so that |
974 | * we catch unlogged VFS level updates to the inode. Care must be taken | 975 | * we catch unlogged VFS level updates to the inode. |
975 | * here - the transaction code calls mark_inode_dirty_sync() to mark the | ||
976 | * VFS inode dirty in a transaction and clears the i_update_core field; | ||
977 | * it must clear the field after calling mark_inode_dirty_sync() to | ||
978 | * correctly indicate that the dirty state has been propagated into the | ||
979 | * inode log item. | ||
980 | * | 976 | * |
981 | * We need the barrier() to maintain correct ordering between unlogged | 977 | * We need the barrier() to maintain correct ordering between unlogged |
982 | * updates and the transaction commit code that clears the i_update_core | 978 | * updates and the transaction commit code that clears the i_update_core |
@@ -1520,8 +1516,9 @@ xfs_fs_fill_super( | |||
1520 | if (error) | 1516 | if (error) |
1521 | goto out_free_fsname; | 1517 | goto out_free_fsname; |
1522 | 1518 | ||
1523 | if (xfs_icsb_init_counters(mp)) | 1519 | error = xfs_icsb_init_counters(mp); |
1524 | mp->m_flags |= XFS_MOUNT_NO_PERCPU_SB; | 1520 | if (error) |
1521 | goto out_close_devices; | ||
1525 | 1522 | ||
1526 | error = xfs_readsb(mp, flags); | 1523 | error = xfs_readsb(mp, flags); |
1527 | if (error) | 1524 | if (error) |
@@ -1582,6 +1579,7 @@ xfs_fs_fill_super( | |||
1582 | xfs_freesb(mp); | 1579 | xfs_freesb(mp); |
1583 | out_destroy_counters: | 1580 | out_destroy_counters: |
1584 | xfs_icsb_destroy_counters(mp); | 1581 | xfs_icsb_destroy_counters(mp); |
1582 | out_close_devices: | ||
1585 | xfs_close_devices(mp); | 1583 | xfs_close_devices(mp); |
1586 | out_free_fsname: | 1584 | out_free_fsname: |
1587 | xfs_free_fsname(mp); | 1585 | xfs_free_fsname(mp); |