diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2022-04-07 18:38:16 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:09:30 -0400 |
commit | 8058ea64c31c8700eaab48c38a143d1c3817f1de (patch) | |
tree | 9cd4359800fa0c095c44e7f8f577e7ac5b6f7cd7 /fs/bcachefs/sysfs.c | |
parent | 48620e5177ae7cd91722f5c504c5138160b90df4 (diff) | |
download | linux-8058ea64c31c8700eaab48c38a143d1c3817f1de.tar.gz linux-8058ea64c31c8700eaab48c38a143d1c3817f1de.tar.bz2 linux-8058ea64c31c8700eaab48c38a143d1c3817f1de.zip |
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 <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/sysfs.c')
-rw-r--r-- | fs/bcachefs/sysfs.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/bcachefs/sysfs.c b/fs/bcachefs/sysfs.c index e995b84b6172..872d7bed7b6b 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); @@ -505,6 +506,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; @@ -573,6 +577,7 @@ struct attribute *bch2_fs_internal_files[] = { &sysfs_io_timers_write, &sysfs_trigger_gc, + &sysfs_trigger_discards, &sysfs_prune_cache, &sysfs_read_realloc_races, |