diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-25 11:39:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-25 11:39:07 -0400 |
commit | 871eae4891a844e1fd065467b940f98dbf7aad1c (patch) | |
tree | 30c0ea313fc55a3091a40893b77600b8f3daf63f /fs/xfs/xfs_log.c | |
parent | 502adf5778f4151dcba3f64dd6ed322151f3712c (diff) | |
parent | b5420f235953448eeae615b3361584dc5e414f34 (diff) |
Merge branch '2.6.36-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev
* '2.6.36-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev:
xfs: do not discard page cache data on EAGAIN
xfs: don't do memory allocation under the CIL context lock
xfs: Reduce log force overhead for delayed logging
xfs: dummy transactions should not dirty VFS state
xfs: ensure f_ffree returned by statfs() is non-negative
xfs: handle negative wbc->nr_to_write during sync writeback
writeback: write_cache_pages doesn't terminate at nr_to_write <= 0
xfs: fix untrusted inode number lookup
xfs: ensure we mark all inodes in a freed cluster XFS_ISTALE
xfs: unlock items before allowing the CIL to commit
Diffstat (limited to 'fs/xfs/xfs_log.c')
-rw-r--r-- | fs/xfs/xfs_log.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c index 925d572bf0f4..33f718f92a48 100644 --- a/fs/xfs/xfs_log.c +++ b/fs/xfs/xfs_log.c | |||
@@ -3015,7 +3015,8 @@ _xfs_log_force( | |||
3015 | 3015 | ||
3016 | XFS_STATS_INC(xs_log_force); | 3016 | XFS_STATS_INC(xs_log_force); |
3017 | 3017 | ||
3018 | xlog_cil_push(log, 1); | 3018 | if (log->l_cilp) |
3019 | xlog_cil_force(log); | ||
3019 | 3020 | ||
3020 | spin_lock(&log->l_icloglock); | 3021 | spin_lock(&log->l_icloglock); |
3021 | 3022 | ||
@@ -3167,7 +3168,7 @@ _xfs_log_force_lsn( | |||
3167 | XFS_STATS_INC(xs_log_force); | 3168 | XFS_STATS_INC(xs_log_force); |
3168 | 3169 | ||
3169 | if (log->l_cilp) { | 3170 | if (log->l_cilp) { |
3170 | lsn = xlog_cil_push_lsn(log, lsn); | 3171 | lsn = xlog_cil_force_lsn(log, lsn); |
3171 | if (lsn == NULLCOMMITLSN) | 3172 | if (lsn == NULLCOMMITLSN) |
3172 | return 0; | 3173 | return 0; |
3173 | } | 3174 | } |
@@ -3724,7 +3725,7 @@ xfs_log_force_umount( | |||
3724 | * call below. | 3725 | * call below. |
3725 | */ | 3726 | */ |
3726 | if (!logerror && (mp->m_flags & XFS_MOUNT_DELAYLOG)) | 3727 | if (!logerror && (mp->m_flags & XFS_MOUNT_DELAYLOG)) |
3727 | xlog_cil_push(log, 1); | 3728 | xlog_cil_force(log); |
3728 | 3729 | ||
3729 | /* | 3730 | /* |
3730 | * We must hold both the GRANT lock and the LOG lock, | 3731 | * We must hold both the GRANT lock and the LOG lock, |