From 0f1748d6aaabbe6bf0b5f801cc17d387bc69529e Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Thu, 7 Apr 2022 18:38:16 -0400 Subject: bcachefs: Add a sysfs attr for triggering discards We're currently debugging an issue with discards not getting run; this patch adds a manual trigger so we can then watch the tracepoint while it runs. Signed-off-by: Kent Overstreet --- fs/bcachefs/sysfs.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fs/bcachefs/sysfs.c b/fs/bcachefs/sysfs.c index ff34578f9124..fb5e930e86d8 100644 --- a/fs/bcachefs/sysfs.c +++ b/fs/bcachefs/sysfs.c @@ -150,6 +150,7 @@ do { \ } while (0) write_attribute(trigger_gc); +write_attribute(trigger_discards); write_attribute(prune_cache); rw_attribute(btree_gc_periodic); rw_attribute(gc_gens_pos); @@ -501,6 +502,9 @@ STORE(bch2_fs) #endif } + if (attr == &sysfs_trigger_discards) + bch2_do_discards(c); + #ifdef CONFIG_BCACHEFS_TESTS if (attr == &sysfs_perf_test) { char *tmp = kstrdup(buf, GFP_KERNEL), *p = tmp; @@ -568,6 +572,7 @@ struct attribute *bch2_fs_internal_files[] = { &sysfs_io_timers_write, &sysfs_trigger_gc, + &sysfs_trigger_discards, &sysfs_prune_cache, &sysfs_read_realloc_races, -- cgit v1.2.3