mirror of
https://github.com/versity/scoutfs.git
synced 2026-04-21 05:50:28 +00:00
scoutfs: don't dirty btree buffers
The btree sets some buffer head flags before it writes them to satisfy submit_bh() requirements. It was setting dirty which wasn't required. Nothing every cleared dirty so those buffers sat around and were never freed. Each btree block we wrote sat around forever. Eventually the vm gets clogged up and the world backs up trying to allocate pages to write and we see massive stalls. With this fix we no longer see the 'buffers' vm stat continously grow and IO rates are consistent over time. Signed-off-by: Zach Brown <zab@versity.com>
This commit is contained in:
@@ -1844,7 +1844,6 @@ int scoutfs_btree_write_dirty(struct super_block *sb)
|
||||
|
||||
for_each_dirty_bh(bti, bh, tmp) {
|
||||
lock_buffer(bh);
|
||||
set_buffer_dirty(bh);
|
||||
set_buffer_mapped(bh);
|
||||
bh->b_end_io = end_buffer_write_sync;
|
||||
get_bh(bh);
|
||||
|
||||
Reference in New Issue
Block a user