writeback: avoid touching dirtied_when on blocked inodes
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest7 patches 14 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/7 | writeback: introduce queue b_more_io_waitfs/ include/ mm/ | +29 | 1 reply | |
| 2/7 | writeback: avoid redirtying when ->write_inode failed to clear I_DIRTYfs/ | +11 | 1 reply | |
| 3/7 | writeback: update wb->last_active on written pages/inodesfs/ | +7 | 0 replies | |
| 4/7 | writeback: Retry kupdate work early if we need to retry some inode writebackfs/ | +13 | 0 replies | |
| 5/7 | writeback: requeue_io_wait() on pages_skipped inodefs/ | +1 | 1 reply | |
| 6/7 | writeback: requeue_io_wait() on blocked inodefs/ | +1 | 1 reply | |
| 7/7 | writeback: requeue_io_wait() when failed to grab superblockfs/ | +1 | 1 reply |
Reviews trailers per patch
5 of 7 patches have a Reviewed-by or Acked-by.
| Patch | Jan Kara |
|---|---|
| 1/7 | A-b |
| 2/7 | A-b |
| 3/7 | |
| 4/7 | |
| 5/7 | A-b |
| 6/7 | A-b |
| 7/7 | A-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH 0/7] writeback: avoid touching dirtied_when on blocked inodes
Hi,
This tries to keep dirtied_when for blocked inodes by converting some redirty_tail() calls to requeue_io_wait(). The possibly blocked inodes will be moved to b_more_io_wait. The b_more_io_wait inodes will now be retried as dillegent as b_more_io inodes, except when the latter goes empty, b_more_io_wait will be retried by the kupdate work on increasing intervals until exceeding dirty_writeback_interval.
Christoph Hellwig (1):
writeback: avoid redirtying when ->write_inode failed to clear I_DIRTY
Jan Kara (2):
writeback: update wb->last_active on written pages/inodes
writeback: Retry kupdate work early if we need to retry some inode writeback
Wu Fengguang (4):
writeback: introduce queue b_more_io_wait
writeback: requeue_io_wait() on pages_skipped inode
writeback: requeue_io_wait() on blocked inode
writeback: requeue_io_wait() when failed to grab superblock
fs/fs-writeback.c | 62 ++++++++++++++++++++++++++++++++++--------- include/linux/backing-dev.h | 8 +++-- mm/backing-dev.c | 10 +++++- 3 files changed, 62 insertions(+), 18 deletions(-)
Thanks,
Fengguang