diff options
Diffstat (limited to 'fs/xfs/xfs_inode.c')
-rw-r--r-- | fs/xfs/xfs_inode.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c index 4eb629f0513e..2951ffd83066 100644 --- a/fs/xfs/xfs_inode.c +++ b/fs/xfs/xfs_inode.c | |||
@@ -2214,9 +2214,9 @@ xfs_ifree_cluster( | |||
2214 | iip = (xfs_inode_log_item_t *)lip; | 2214 | iip = (xfs_inode_log_item_t *)lip; |
2215 | ASSERT(iip->ili_logged == 1); | 2215 | ASSERT(iip->ili_logged == 1); |
2216 | lip->li_cb = (void(*)(xfs_buf_t*,xfs_log_item_t*)) xfs_istale_done; | 2216 | lip->li_cb = (void(*)(xfs_buf_t*,xfs_log_item_t*)) xfs_istale_done; |
2217 | spin_lock(&mp->m_ail_lock); | 2217 | xfs_trans_ail_copy_lsn(mp->m_ail, |
2218 | iip->ili_flush_lsn = iip->ili_item.li_lsn; | 2218 | &iip->ili_flush_lsn, |
2219 | spin_unlock(&mp->m_ail_lock); | 2219 | &iip->ili_item.li_lsn); |
2220 | xfs_iflags_set(iip->ili_inode, XFS_ISTALE); | 2220 | xfs_iflags_set(iip->ili_inode, XFS_ISTALE); |
2221 | pre_flushed++; | 2221 | pre_flushed++; |
2222 | } | 2222 | } |
@@ -2237,9 +2237,8 @@ xfs_ifree_cluster( | |||
2237 | iip->ili_last_fields = iip->ili_format.ilf_fields; | 2237 | iip->ili_last_fields = iip->ili_format.ilf_fields; |
2238 | iip->ili_format.ilf_fields = 0; | 2238 | iip->ili_format.ilf_fields = 0; |
2239 | iip->ili_logged = 1; | 2239 | iip->ili_logged = 1; |
2240 | spin_lock(&mp->m_ail_lock); | 2240 | xfs_trans_ail_copy_lsn(mp->m_ail, &iip->ili_flush_lsn, |
2241 | iip->ili_flush_lsn = iip->ili_item.li_lsn; | 2241 | &iip->ili_item.li_lsn); |
2242 | spin_unlock(&mp->m_ail_lock); | ||
2243 | 2242 | ||
2244 | xfs_buf_attach_iodone(bp, | 2243 | xfs_buf_attach_iodone(bp, |
2245 | (void(*)(xfs_buf_t*,xfs_log_item_t*)) | 2244 | (void(*)(xfs_buf_t*,xfs_log_item_t*)) |
@@ -3476,10 +3475,8 @@ xfs_iflush_int( | |||
3476 | iip->ili_format.ilf_fields = 0; | 3475 | iip->ili_format.ilf_fields = 0; |
3477 | iip->ili_logged = 1; | 3476 | iip->ili_logged = 1; |
3478 | 3477 | ||
3479 | ASSERT(sizeof(xfs_lsn_t) == 8); /* don't lock if it shrinks */ | 3478 | xfs_trans_ail_copy_lsn(mp->m_ail, &iip->ili_flush_lsn, |
3480 | spin_lock(&mp->m_ail_lock); | 3479 | &iip->ili_item.li_lsn); |
3481 | iip->ili_flush_lsn = iip->ili_item.li_lsn; | ||
3482 | spin_unlock(&mp->m_ail_lock); | ||
3483 | 3480 | ||
3484 | /* | 3481 | /* |
3485 | * Attach the function xfs_iflush_done to the inode's | 3482 | * Attach the function xfs_iflush_done to the inode's |