[PATCH 00/11] IO-less dirty throttling v12

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

 



Hi,

This is the minimal IO-less balance_dirty_pages() changes that are expected to
be regression free (well, except for NFS).

        git://github.com/fengguang/linux.git dirty-throttling-v12

Tests results will be posted in a separate email.

Changes since v11:

- improve bdi reserve area parameters (based on test results)
- drop bdi underrun flag
- drop aux bdi control line
- make bdi->dirty_ratelimit more stable

Changes since v10:

- complete the renames
- add protections for IO queue underrun
  - pause time reduction
  - bdi reserve area
  - bdi underrun flag
- more accurate task dirty accounting for
  - sub-page writes
  - FS re-dirties
  - short lived tasks

Changes since v9:

- a lot of renames and comment/changelog rework, again
- seperate out the dirty_ratelimit update policy (as patch 04)
- add think time compensation
- add 3 trace events

Changes since v8:

- a lot of renames and comment/changelog rework
- use 3rd order polynomial as the global control line (Peter)
- stabilize dirty_ratelimit by decreasing update step size on small errors
- limit per-CPU dirtied pages to avoid dirty pages run away on 1k+ tasks (Peter)

Thanks a lot to Peter, Vivek, Andrea and Jan for the careful reviews!

shortlog:

Wu Fengguang (11):
      writeback: account per-bdi accumulated dirtied pages
      writeback: dirty position control
      writeback: add bg_threshold parameter to __bdi_update_bandwidth()
      writeback: dirty rate control
      writeback: stabilize bdi->dirty_ratelimit
      writeback: per task dirty rate limit
      writeback: IO-less balance_dirty_pages()
      writeback: limit max dirty pause time
      writeback: control dirty pause time
      writeback: dirty position control - bdi reserve area
      writeback: per-bdi background threshold

diffstat:

 fs/fs-writeback.c                |   19 +-
 include/linux/backing-dev.h      |   11 +
 include/linux/sched.h            |    7 +
 include/linux/writeback.h        |    1 +
 include/trace/events/writeback.h |   24 --
 kernel/fork.c                    |    3 +
 mm/backing-dev.c                 |    4 +
 mm/page-writeback.c              |  678 +++++++++++++++++++++++++++++---------
 8 files changed, 566 insertions(+), 181 deletions(-)

Thanks,
Fengguang

--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux