BACKPORT: f2fs: do not skip updating inode when retrying to flush node page
Let's try to flush dirty inode again to improve subtle i_blocks mismatch. Bug: 228919347 Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> (cherry picked from commit cfa6149d4738ad06b30f0ff6285869c8d945ac6f) Change-Id: Icb2d0643ae64c0b6963acb975a3e39ede2e9dcb6
This commit is contained in:
@@ -1949,7 +1949,6 @@ next_step:
|
||||
for (i = 0; i < nr_pages; i++) {
|
||||
struct page *page = pvec.pages[i];
|
||||
bool submitted = false;
|
||||
bool may_dirty = true;
|
||||
|
||||
/* give a priority to WB_SYNC threads */
|
||||
if (atomic_read(&sbi->wb_sync_req[NODE]) &&
|
||||
@@ -2002,11 +2001,8 @@ continue_unlock:
|
||||
}
|
||||
|
||||
/* flush dirty inode */
|
||||
if (IS_INODE(page) && may_dirty) {
|
||||
may_dirty = false;
|
||||
if (flush_dirty_inode(page))
|
||||
goto lock_node;
|
||||
}
|
||||
if (IS_INODE(page) && flush_dirty_inode(page))
|
||||
goto lock_node;
|
||||
write_node:
|
||||
f2fs_wait_on_page_writeback(page, NODE, true, true);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user