OSDN Git Service

f2fs: show flush list status in sysfs
authorChao Yu <yuchao0@huawei.com>
Thu, 14 Sep 2017 02:18:01 +0000 (10:18 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 16 Nov 2017 05:48:45 +0000 (21:48 -0800)
This patch adds to show flush list status in sysfs.

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

index 87f4498..00c1d4a 100644 (file)
@@ -61,6 +61,8 @@ static void update_general_status(struct f2fs_sb_info *sbi)
                        atomic_read(&SM_I(sbi)->fcc_info->issued_flush);
                si->nr_flushing =
                        atomic_read(&SM_I(sbi)->fcc_info->issing_flush);
+               si->flush_list_empty =
+                       llist_empty(&SM_I(sbi)->fcc_info->issue_list);
        }
        if (SM_I(sbi) && SM_I(sbi)->dcc_info) {
                si->nr_discarded =
@@ -349,10 +351,11 @@ static int stat_show(struct seq_file *s, void *v)
                seq_printf(s, "  - Inner Struct Count: tree: %d(%d), node: %d\n",
                                si->ext_tree, si->zombie_tree, si->ext_node);
                seq_puts(s, "\nBalancing F2FS Async:\n");
-               seq_printf(s, "  - IO (CP: %4d, Data: %4d, Flush: (%4d %4d), "
+               seq_printf(s, "  - IO (CP: %4d, Data: %4d, Flush: (%4d %4d %4d), "
                        "Discard: (%4d %4d)) cmd: %4d undiscard:%4u\n",
                           si->nr_wb_cp_data, si->nr_wb_data,
                           si->nr_flushing, si->nr_flushed,
+                          si->flush_list_empty,
                           si->nr_discarding, si->nr_discarded,
                           si->nr_discard_cmd, si->undiscard_blks);
                seq_printf(s, "  - inmem: %4d, atomic IO: %4d (Max. %4d), "
index dd840f6..7ed6e4a 100644 (file)
@@ -2755,7 +2755,8 @@ struct f2fs_stat_info {
        int free_nids, avail_nids, alloc_nids;
        int total_count, utilization;
        int bg_gc, nr_wb_cp_data, nr_wb_data;
-       int nr_flushing, nr_flushed, nr_discarding, nr_discarded;
+       int nr_flushing, nr_flushed, flush_list_empty;
+       int nr_discarding, nr_discarded;
        int nr_discard_cmd;
        unsigned int undiscard_blks;
        int inline_xattr, inline_inode, inline_dir, append, update, orphans;