[PATCH 0/3] remove dependence of inode_congested()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux