diff options
Diffstat (limited to 'fs/xfs/xfs_inode.c')
-rw-r--r-- | fs/xfs/xfs_inode.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c index bbb3bee8e936..d0d1b5a05183 100644 --- a/fs/xfs/xfs_inode.c +++ b/fs/xfs/xfs_inode.c | |||
@@ -2484,8 +2484,11 @@ __xfs_iunpin_wait( | |||
2484 | return; | 2484 | return; |
2485 | 2485 | ||
2486 | /* Give the log a push to start the unpinning I/O */ | 2486 | /* Give the log a push to start the unpinning I/O */ |
2487 | xfs_log_force(ip->i_mount, (iip && iip->ili_last_lsn) ? | 2487 | if (iip && iip->ili_last_lsn) |
2488 | iip->ili_last_lsn : 0, XFS_LOG_FORCE); | 2488 | xfs_log_force_lsn(ip->i_mount, iip->ili_last_lsn, 0); |
2489 | else | ||
2490 | xfs_log_force(ip->i_mount, 0); | ||
2491 | |||
2489 | if (wait) | 2492 | if (wait) |
2490 | wait_event(ip->i_ipin_wait, (atomic_read(&ip->i_pincount) == 0)); | 2493 | wait_event(ip->i_ipin_wait, (atomic_read(&ip->i_pincount) == 0)); |
2491 | } | 2494 | } |
@@ -2970,7 +2973,7 @@ xfs_iflush( | |||
2970 | * get stuck waiting in the write for too long. | 2973 | * get stuck waiting in the write for too long. |
2971 | */ | 2974 | */ |
2972 | if (XFS_BUF_ISPINNED(bp)) | 2975 | if (XFS_BUF_ISPINNED(bp)) |
2973 | xfs_log_force(mp, (xfs_lsn_t)0, XFS_LOG_FORCE); | 2976 | xfs_log_force(mp, 0); |
2974 | 2977 | ||
2975 | /* | 2978 | /* |
2976 | * inode clustering: | 2979 | * inode clustering: |