]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
f2fs: fix to be aware discard/preflush/dio command in is_idle()
authorChao Yu <yuchao0@huawei.com>
Sun, 11 Nov 2018 16:55:44 +0000 (00:55 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Mon, 26 Nov 2018 23:53:56 +0000 (15:53 -0800)
This patch adds missing in-flight discard/preflush/dio command count
check in is_idle().

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/f2fs.h

index bebf26c67061516b1c3c03b169e3d99a971bc9ae..df10394bd8065de4f59a611c3c0d1385eaf4e3ce 100644 (file)
@@ -2158,7 +2158,11 @@ static inline bool is_idle(struct f2fs_sb_info *sbi, int type)
 {
        if (get_pages(sbi, F2FS_RD_DATA) || get_pages(sbi, F2FS_RD_NODE) ||
                get_pages(sbi, F2FS_RD_META) || get_pages(sbi, F2FS_WB_DATA) ||
-               get_pages(sbi, F2FS_WB_CP_DATA))
+               get_pages(sbi, F2FS_WB_CP_DATA) ||
+               get_pages(sbi, F2FS_DIO_READ) ||
+               get_pages(sbi, F2FS_DIO_WRITE) ||
+               atomic_read(&SM_I(sbi)->dcc_info->issing_discard) ||
+               atomic_read(&SM_I(sbi)->fcc_info->issing_flush))
                return false;
        return f2fs_time_over(sbi, type);
 }