linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] Per-bdi writeback flusher threads v18
@ 2009-09-04  7:46 Jens Axboe
  2009-09-04  7:46 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
                   ` (7 more replies)
  0 siblings, 8 replies; 36+ messages in thread
From: Jens Axboe @ 2009-09-04  7:46 UTC (permalink / raw)
  To: linux-kernel, linux-fsdevel; +Cc: chris.mason, david, hch, tytso, akpm, jack

Hi,

This is the 18th release of the writeback patchset. Changes since
v17 include:

- Change the naming of sync_sb_inodes() and sync_sb_inodes_wait(). It's
  now writeback_inodes_sb() to start writeback on dirty sb inodes, and
  sync_inodes_sb() to start and wait on writeback. Suggestion from Jan
  Kara, and I agree it better explains what the code does.
- Fix compile error in pohmelfs.
- Update Ted's MAX_WRITEBACK_PAGES patch to be MB based instead of in
  pages.
- Integrate the suggestions from Christoph:
	- Move wakeup_flusher_threads() into fs/fs-writeback.c, it fits
	  better there and allows us to make bdi_writeback_all() static.
	- Get rid of generic_sync_sb_inodes(). Move the issue and wait
	  into the two callers instead, making the old function now
	  wait_sb_inodes() and only concerned with waiting on already
	  issued IO.
	- wbc->nr_to_write was mistakenly set to LLONG_MAX instead of
	  LONG_MAX.

Please review, thanks!

 b/block/blk-core.c                 |    1 
 b/drivers/block/aoe/aoeblk.c       |    1 
 b/drivers/char/mem.c               |    1 
 b/drivers/staging/pohmelfs/inode.c |    9 
 b/fs/btrfs/disk-io.c               |    1 
 b/fs/buffer.c                      |    2 
 b/fs/char_dev.c                    |    1 
 b/fs/configfs/inode.c              |    1 
 b/fs/fs-writeback.c                | 1042 +++++++++++++++++++++--------
 b/fs/fuse/inode.c                  |    1 
 b/fs/hugetlbfs/inode.c             |    1 
 b/fs/nfs/client.c                  |    1 
 b/fs/ocfs2/dlm/dlmfs.c             |    1 
 b/fs/ramfs/inode.c                 |    1 
 b/fs/super.c                       |    3 
 b/fs/sync.c                        |   20 
 b/fs/sysfs/inode.c                 |    1 
 b/fs/ubifs/budget.c                |   16 
 b/fs/ubifs/super.c                 |    9 
 b/include/linux/backing-dev.h      |   55 +
 b/include/linux/fs.h               |    8 
 b/include/linux/writeback.h        |   24 
 b/kernel/cgroup.c                  |    1 
 b/kernel/sysctl.c                  |    8 
 b/mm/Makefile                      |    2 
 b/mm/backing-dev.c                 |  379 ++++++++++
 b/mm/page-writeback.c              |  183 -----
 b/mm/swap_state.c                  |    1 
 b/mm/vmscan.c                      |    2 
 mm/pdflush.c                       |  269 -------
 30 files changed, 1267 insertions(+), 778 deletions(-)

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 36+ messages in thread
* [PATCH 0/8] Per-bdi writeback flusher threads v19
@ 2009-09-08  9:23 Jens Axboe
  2009-09-08  9:23 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
  0 siblings, 1 reply; 36+ messages in thread
From: Jens Axboe @ 2009-09-08  9:23 UTC (permalink / raw)
  To: linux-kernel, linux-fsdevel, chris.mason, david, hch, akpm, jack

Hi,

This is the 19th release of the writeback patchset. Changes since
v18 include:

- Switch unpin_sb_for_writeback() to using put_super() instead of
  __put_super_and_need_start(). This means making put_super()
  non-static, but we don't have to export it.
- Always check and clean old data.
- Don't copy *wbc twice in wb_do_writeback().
- Tweak 'when to break' logic in wb_writeback().
- Get rid of wb_start_writeback() and bdi_sched_work(), fold them into
  bdi_queue_work().

Thanks to Jan Kara and Christoph Hellwig for their suggestions and
review!

 b/block/blk-core.c                 |    1 
 b/drivers/block/aoe/aoeblk.c       |    1 
 b/drivers/char/mem.c               |    1 
 b/drivers/staging/pohmelfs/inode.c |    9 
 b/fs/btrfs/disk-io.c               |    1 
 b/fs/buffer.c                      |    2 
 b/fs/char_dev.c                    |    1 
 b/fs/configfs/inode.c              |    1 
 b/fs/fs-writeback.c                | 1058 +++++++++++++++++++++--------
 b/fs/fuse/inode.c                  |    1 
 b/fs/hugetlbfs/inode.c             |    1 
 b/fs/nfs/client.c                  |    1 
 b/fs/ocfs2/dlm/dlmfs.c             |    1 
 b/fs/ramfs/inode.c                 |    1 
 b/fs/super.c                       |    5 
 b/fs/sync.c                        |   20 
 b/fs/sysfs/inode.c                 |    1 
 b/fs/ubifs/budget.c                |   16 
 b/fs/ubifs/super.c                 |    9 
 b/include/linux/backing-dev.h      |   55 +
 b/include/linux/fs.h               |    9 
 b/include/linux/writeback.h        |   24 
 b/kernel/cgroup.c                  |    1 
 b/kernel/sysctl.c                  |    8 
 b/mm/Makefile                      |    2 
 b/mm/backing-dev.c                 |  380 ++++++++++
 b/mm/page-writeback.c              |  188 -----
 b/mm/swap_state.c                  |    1 
 b/mm/vmscan.c                      |    2 
 mm/pdflush.c                       |  269 -------
 30 files changed, 1292 insertions(+), 778 deletions(-)

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 36+ messages in thread
* [PATCH 0/8] Per-bdi writeback flusher threads v17
@ 2009-09-02  8:42 Jens Axboe
  2009-09-02  8:42 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
  0 siblings, 1 reply; 36+ messages in thread
From: Jens Axboe @ 2009-09-02  8:42 UTC (permalink / raw)
  To: linux-kernel, linux-fsdevel; +Cc: chris.mason, david, hch, tytso, akpm, jack

Hi,

Continuing the daily releases of this patchset to ensure it's in
solid shape for 2.6.32, here's version 17. Changes since v16:

- Looking at the callers of sb writeback, WB_SYNC_ALL (data integrity)
  writeback already has the super_block pinned and doesn't require
  any further actions. So go back to the down_read_trylock() method
  of pinning the sb and also check for sb->s_root for WB_SYNC_NONE
  writeout. This is all packaged into pin_sb_for_writeback() and
  unpin_sb_for_writeback().
- Get rid of exported generic_sync_sb_inodes() and export sync_inodes_sb()
  for non-integrity writeback and sync_inodes_sb_wait() for integrity
  writeback, as suggested by hch.
- Folded the 'move sb argument to wbc' into the main patch, with the
  addition of the above sync_inodes_sb()/sync_inodes_sb_wait() it
  didn't make sense to keep it separate anymore because wbc isn't
  passed in outside of the code.
- Update the changelog on the main patch, the one switching to per-bdi
  flushing.

Please review, thanks!

 b/block/blk-core.c                 |    1 
 b/drivers/block/aoe/aoeblk.c       |    1 
 b/drivers/char/mem.c               |    1 
 b/drivers/staging/pohmelfs/inode.c |    9 
 b/fs/btrfs/disk-io.c               |    1 
 b/fs/buffer.c                      |    2 
 b/fs/char_dev.c                    |    1 
 b/fs/configfs/inode.c              |    1 
 b/fs/fs-writeback.c                |  998 +++++++++++++++++++++--------
 b/fs/fuse/inode.c                  |    1 
 b/fs/hugetlbfs/inode.c             |    1 
 b/fs/nfs/client.c                  |    1 
 b/fs/ocfs2/dlm/dlmfs.c             |    1 
 b/fs/ramfs/inode.c                 |    1 
 b/fs/super.c                       |    3 
 b/fs/sync.c                        |   10 
 b/fs/sysfs/inode.c                 |    1 
 b/fs/ubifs/budget.c                |   16 
 b/fs/ubifs/super.c                 |    9 
 b/include/linux/backing-dev.h      |   56 +
 b/include/linux/fs.h               |    8 
 b/include/linux/writeback.h        |   23 
 b/kernel/cgroup.c                  |    1 
 b/kernel/sysctl.c                  |    8 
 b/mm/Makefile                      |    2 
 b/mm/backing-dev.c                 |  379 ++++++++++-
 b/mm/page-writeback.c              |  174 +----
 b/mm/swap_state.c                  |    1 
 b/mm/vmscan.c                      |    2 
 mm/pdflush.c                       |  269 -------
 30 files changed, 1238 insertions(+), 744 deletions(-)

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2009-09-08 11:32 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-04  7:46 [PATCH 0/8] Per-bdi writeback flusher threads v18 Jens Axboe
2009-09-04  7:46 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
2009-09-04  8:28   ` Jan Kara
2009-09-04 11:59     ` Jens Axboe
2009-09-04  7:46 ` [PATCH 2/8] writeback: move dirty inodes from super_block to backing_dev_info Jens Axboe
2009-09-04  7:46 ` [PATCH 3/8] writeback: switch to per-bdi threads for flushing data Jens Axboe
2009-09-04 10:54   ` Jan Kara
2009-09-04 11:58     ` Jens Axboe
2009-09-04 12:04       ` [PATCH 3/8] writeback: switch to per-bdi threads for flushing data v2 Jens Axboe
2009-09-04 12:06         ` Jens Axboe
2009-09-07 18:36         ` Jan Kara
2009-09-07 18:45           ` Jens Axboe
2009-09-07 19:45             ` Jan Kara
2009-09-07 19:50               ` Jens Axboe
2009-09-04  7:46 ` [PATCH 4/8] writeback: get rid of pdflush completely Jens Axboe
2009-09-04  7:46 ` [PATCH 5/8] writeback: add some debug inode list counters to bdi stats Jens Axboe
2009-09-04  7:46 ` [PATCH 6/8] writeback: add name to backing_dev_info Jens Axboe
2009-09-04  7:46 ` [PATCH 7/8] writeback: check for registered bdi in flusher add and inode dirty Jens Axboe
2009-09-04  7:46 ` [PATCH 8/8] vm: Add an tuning knob for vm.max_writeback_mb Jens Axboe
2009-09-04 15:28   ` Richard Kennedy
2009-09-05 13:26     ` Jamie Lokier
2009-09-05 16:18       ` Richard Kennedy
2009-09-05 16:46     ` Theodore Tso
2009-09-07 19:09   ` Jan Kara
  -- strict thread matches above, loose matches on Subject: below --
2009-09-08  9:23 [PATCH 0/8] Per-bdi writeback flusher threads v19 Jens Axboe
2009-09-08  9:23 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
2009-09-08 10:27   ` Artem Bityutskiy
2009-09-08 10:41     ` Jens Axboe
2009-09-08 10:52       ` Artem Bityutskiy
2009-09-08 10:57         ` Jens Axboe
2009-09-08 11:01           ` Artem Bityutskiy
2009-09-08 11:05             ` Jens Axboe
2009-09-08 11:31               ` Artem Bityutskiy
2009-09-02  8:42 [PATCH 0/8] Per-bdi writeback flusher threads v17 Jens Axboe
2009-09-02  8:42 ` [PATCH 1/8] writeback: get rid of generic_sync_sb_inodes() export Jens Axboe
2009-09-02 10:13   ` Jan Kara
2009-09-02 10:26     ` Jens Axboe
2009-09-02 14:01       ` Jan Kara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).