2022-02-01 15:22:00

by NeilBrown

[permalink] [raw]
Subject: [PATCH 0/3] remove dependence of inode_congested()

Miklos pointed out that the filesystems which set the bdi congestion
flags do gain some value from that, and simply removing the code is not
appropriate.

Specifically, readahead and/or writeback are skipped when the congestion
flags are set.

We can mostly move this skipping into the filesystem.
->readahead can do nothing if reads are congested.
->writepage and ->wrtepages can do nothing for WB_SYNC_NONE if writes
are congested.

Currently only *some* WB_SYNC_NONE writes are skipped due to congestion.
Those from sync_file_range() and those used for page migration are not.
Also, shrink_page_list() will now cause PageActive to be set if
->writepage skips due to congestion.

I don't expect these changes to be a problem, but I have no experience
to base that on.

Review/comments most welcome,

Thanks,
NeilBrown



---

NeilBrown (3):
fuse: remove reliance on bdi congestion
nfs: remove reliance on bdi congestion
ceph: remove reliance on bdi congestion


fs/ceph/addr.c | 22 +++++++++++++---------
fs/ceph/super.c | 1 +
fs/ceph/super.h | 1 +
fs/nfs/write.c | 12 ++++++++++--
include/linux/nfs_fs_sb.h | 1 +
5 files changed, 26 insertions(+), 11 deletions(-)

--
Signature