diff options
author | David Chinner <dgc@sgi.com> | 2008-04-29 12:53:15 +1000 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-04-29 15:58:27 +1000 |
commit | d349404ff14758dc9a2d3df032073ed795085860 (patch) | |
tree | e4ce7fef82c8f7a30b53a3dc40b35df6428fb1e3 /fs/xfs/xfs_fsops.c | |
parent | fe0754f0e5c0f070bf82b6e7e5e8fa5a188163fc (diff) | |
download | kernel_samsung_tuna-d349404ff14758dc9a2d3df032073ed795085860.zip kernel_samsung_tuna-d349404ff14758dc9a2d3df032073ed795085860.tar.gz kernel_samsung_tuna-d349404ff14758dc9a2d3df032073ed795085860.tar.bz2 |
[XFS] Don't double count reserved block changes on UP.
On uniprocessor machines, the incore superblock is used for all in memory
accounting of free blocks. in this situation, changes to the reserved
block count are accounted twice; once directly and once via
xfs_mod_incore_sb(). Seeing as the modification on SMP is done via
xfs_mod_incore_sb(), make this the only update mechanism that UP uses as
well.
SGI-PV: 980654
SGI-Modid: xfs-linux-melb:xfs-kern:30997a
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_fsops.c')
-rw-r--r-- | fs/xfs/xfs_fsops.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/fs/xfs/xfs_fsops.c b/fs/xfs/xfs_fsops.c index 5d5e9b3..381ebda 100644 --- a/fs/xfs/xfs_fsops.c +++ b/fs/xfs/xfs_fsops.c @@ -552,11 +552,8 @@ retry: mp->m_resblks += free; mp->m_resblks_avail += free; fdblks_delta = -free; - mp->m_sb.sb_fdblocks = XFS_ALLOC_SET_ASIDE(mp); } else { fdblks_delta = -delta; - mp->m_sb.sb_fdblocks = - lcounter + XFS_ALLOC_SET_ASIDE(mp); mp->m_resblks = request; mp->m_resblks_avail += delta; } @@ -587,7 +584,6 @@ out: if (error == ENOSPC) goto retry; } - return 0; } |