f2fs: fix flushing node pages when checkpoint is disabled
This patch fixes skipping node page writes when checkpoint is disabled. In this period, we can't rely on checkpoint to flush node pages. Fixes:fd8c8caf7e
("f2fs: let checkpoint flush dnode page of regular") Fixes:4354994f09
("f2fs: checkpoint disabling") Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
Родитель
00e09c0bcc
Коммит
100c06554e
|
@ -1524,7 +1524,8 @@ static int __write_node_page(struct page *page, bool atomic, bool *submitted,
|
|||
if (unlikely(is_sbi_flag_set(sbi, SBI_POR_DOING)))
|
||||
goto redirty_out;
|
||||
|
||||
if (wbc->sync_mode == WB_SYNC_NONE &&
|
||||
if (!is_sbi_flag_set(sbi, SBI_CP_DISABLED) &&
|
||||
wbc->sync_mode == WB_SYNC_NONE &&
|
||||
IS_DNODE(page) && is_cold_node(page))
|
||||
goto redirty_out;
|
||||
|
||||
|
@ -1909,7 +1910,8 @@ continue_unlock:
|
|||
}
|
||||
|
||||
if (step < 2) {
|
||||
if (wbc->sync_mode == WB_SYNC_NONE && step == 1)
|
||||
if (!is_sbi_flag_set(sbi, SBI_CP_DISABLED) &&
|
||||
wbc->sync_mode == WB_SYNC_NONE && step == 1)
|
||||
goto out;
|
||||
step++;
|
||||
goto next_step;
|
||||
|
|
Загрузка…
Ссылка в новой задаче