summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2025-02-13 12:46:15 -0500
committerKent Overstreet <kent.overstreet@linux.dev>2025-02-25 20:52:51 -0500
commit49fb733e8c2bc6f8e691d2e0fa531c8d8ed815ed (patch)
tree282958bd22c41d9fb5a241e1de67ec42696af0a6
parent88969fa28d041c0f6fadb3d3460603648b760db0 (diff)
bcachefs: sysfs internal/trigger_btree_updates
Add a debug knob to manually trigger the btree updates worker. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r--fs/bcachefs/sysfs.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/bcachefs/sysfs.c b/fs/bcachefs/sysfs.c
index b3f2c651c1f8..a9953181c29b 100644
--- a/fs/bcachefs/sysfs.c
+++ b/fs/bcachefs/sysfs.c
@@ -146,6 +146,7 @@ write_attribute(trigger_journal_writes);
write_attribute(trigger_btree_cache_shrink);
write_attribute(trigger_btree_key_cache_shrink);
write_attribute(trigger_freelist_wakeup);
+write_attribute(trigger_btree_updates);
read_attribute(gc_gens_pos);
read_attribute(uuid);
@@ -411,6 +412,9 @@ STORE(bch2_fs)
/* Debugging: */
+ if (attr == &sysfs_trigger_btree_updates)
+ queue_work(c->btree_interior_update_worker, &c->btree_interior_update_work);
+
if (!bch2_write_ref_tryget(c, BCH_WRITE_REF_sysfs))
return -EROFS;
@@ -580,6 +584,7 @@ struct attribute *bch2_fs_internal_files[] = {
&sysfs_trigger_btree_cache_shrink,
&sysfs_trigger_btree_key_cache_shrink,
&sysfs_trigger_freelist_wakeup,
+ &sysfs_trigger_btree_updates,
&sysfs_gc_gens_pos,