diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-15 11:43:29 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-15 11:48:52 -0500 |
commit | 01226ed90cc4526d02b4eb27810c80e0996e4a97 (patch) | |
tree | 24bdd298717a0392ba345276bdc2af90025d53cd | |
parent | dc8aadbf5948ee936dd5e332961f153f6aea6f67 (diff) |
bcachefs: make writeback throttling limit configurable
-rw-r--r-- | fs/bcachefs/sysfs.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/bcachefs/sysfs.c b/fs/bcachefs/sysfs.c index 597e1f02bd6a..2e958a8ef381 100644 --- a/fs/bcachefs/sysfs.c +++ b/fs/bcachefs/sysfs.c @@ -164,6 +164,8 @@ read_attribute(extent_migrate_raced); rw_attribute(journal_write_delay_ms); rw_attribute(journal_reclaim_delay_ms); +rw_attribute(writeback_pages_max); + rw_attribute(discard); rw_attribute(cache_replacement_policy); @@ -310,6 +312,8 @@ SHOW(bch2_fs) sysfs_print(journal_write_delay_ms, c->journal.write_delay_ms); sysfs_print(journal_reclaim_delay_ms, c->journal.reclaim_delay_ms); + sysfs_print(writeback_pages_max, c->writeback_pages_max); + sysfs_print(block_size, block_bytes(c)); sysfs_print(btree_node_size, btree_bytes(c)); sysfs_hprint(btree_cache_size, bch2_btree_cache_size(c)); @@ -370,6 +374,9 @@ STORE(__bch2_fs) sysfs_strtoul(journal_write_delay_ms, c->journal.write_delay_ms); sysfs_strtoul(journal_reclaim_delay_ms, c->journal.reclaim_delay_ms); + if (attr == &sysfs_writeback_pages_max) + c->writeback_pages_max = strtoul_restrict_or_return(buf, 1, UINT_MAX); + if (attr == &sysfs_btree_gc_periodic) { ssize_t ret = strtoul_safe(buf, c->btree_gc_periodic) ?: (ssize_t) size; @@ -459,6 +466,8 @@ struct attribute *bch2_fs_files[] = { &sysfs_journal_write_delay_ms, &sysfs_journal_reclaim_delay_ms, + &sysfs_writeback_pages_max, + &sysfs_tiering_percent, &sysfs_compression_stats, |