diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/fs-writeback.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index 1b43cc9d9ebb..30d9383c87c3 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c | |||
@@ -308,7 +308,14 @@ __writeback_single_inode(struct inode *inode, struct writeback_control *wbc) | |||
308 | struct address_space *mapping = inode->i_mapping; | 308 | struct address_space *mapping = inode->i_mapping; |
309 | int ret; | 309 | int ret; |
310 | 310 | ||
311 | redirty_tail(inode); | 311 | /* |
312 | * We're skipping this inode because it's locked, and we're not | ||
313 | * doing writeback-for-data-integrity. Move it to the head of | ||
314 | * s_dirty so that writeback can proceed with the other inodes | ||
315 | * on s_io. We'll have another go at writing back this inode | ||
316 | * when the s_dirty iodes get moved back onto s_io. | ||
317 | */ | ||
318 | redirty_head(inode); | ||
312 | 319 | ||
313 | /* | 320 | /* |
314 | * Even if we don't actually write the inode itself here, | 321 | * Even if we don't actually write the inode itself here, |