mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Michael Rubin" <mrubin@google.com>
To: "Fengguang Wu" <wfg@mail.ustc.edu.cn>
Cc: "Andrew Morton" <akpm@osdl.org>,
	"Peter Zijlstra" <peterz@infradead.org>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 00/13] writeback bug fixes and simplifications take 2
Date: Tue, 15 Jan 2008 10:33:01 -0800	[thread overview]
Message-ID: <532480950801151033w69411f8dk4d9ab14a2ff07d64@mail.gmail.com> (raw)
In-Reply-To: <400401292.24795@ustc.edu.cn>

On Jan 15, 2008 4:36 AM, Fengguang Wu <wfg@mail.ustc.edu.cn> wrote:
> Andrew,
>
> This patchset mainly polishes the writeback queuing policies.

Anyone know which tree is this patched based out of?

> The main goals are:
>
> (1) small files should not be starved by big dirty files
> (2) sync as fast as possible for not-blocked inodes/pages
>     - don't leave them out; no congestion_wait() in between them
> (3) avoid busy iowait for blocked inodes
>     - retry them in the next go of s_io(maybe at the next wakeup of pdflush)
>

Fengguang do you have any specific tests for any of these cases? As I
have posted earlier I am putting together a writeback test suite for
test.kernel.org and if you have one (even if it's an ugly shell
script) that would save me some time.

Also if you want any of mine let me know. :-)

mrubin


> The role of the queues:
>
> s_dirty:   park for dirtied_when expiration
> s_io:      park for io submission
> s_more_io: for big dirty inodes, they will be retried in this run of pdflush
>            (it ensures fairness between small/large files)
> s_more_io_wait: for blocked inodes, they will be picked up in next run of s_io
>
>
> This patchset is in better shape, but still not ready for merge.
> It begins with:
>
>         [PATCH 01/13] writeback: revert 2e6883bdf49abd0e7f0d9b6297fc3be7ebb2250b
>         [PATCH 02/13] writeback: clear PAGECACHE_TAG_DIRTY for truncated page in block_write_full_page()
>
> Introduces more_io/more_io_wait based policies:
>
>         [PATCH 03/13] writeback: introduce writeback_control.more_io
>         [PATCH 04/13] writeback: introduce super_block.s_more_io_wait
>         [PATCH 05/13] writeback: merge duplicate code into writeback_some_pages()
>         [PATCH 06/13] writeback: defer writeback on not-all-pages-written
>         [PATCH 07/13] writeback: defer writeback on locked inode
>         [PATCH 08/13] writeback: defer writeback on locked buffers
>         [PATCH 09/13] writeback: requeue_io() on redirtied inode
>
> And finishes with some code cleanups:
>
>         [PATCH 10/13] writeback: introduce queue_dirty()
>         [PATCH 11/13] writeback: queue_dirty() on memory-backed bdi
>         [PATCH 12/13] writeback: remove redirty_tail()
>         [PATCH 13/13] writeback: cleanup __sync_single_inode()
>
> Diffstat:
>
>  fs/buffer.c         |    2
>  fs/fs-writeback.c   |  121 +++++++++++++++---------------------------
>  fs/super.c          |    1
>  include/linux/fs.h  |    1
>  mm/page-writeback.c |   46 +++++++--------
>  5 files changed, 72 insertions(+), 99 deletions(-)
>
> Regards,
> Fengguang Wu
> --
>

  reply	other threads:[~2008-01-15 18:33 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20080115123637.518924046@mail.ustc.edu.cn>
2008-01-15 12:36 ` Fengguang Wu
2008-01-15 18:33   ` Michael Rubin [this message]
     [not found]     ` <E1JExrc-00014E-FC@localhost.localdomain>
2008-01-16  2:18       ` Fengguang Wu
2008-01-18  7:51   ` Michael Rubin
     [not found]     ` <E1JFmZs-0000wa-3r@localhost.localdomain>
2008-01-18  8:27       ` Fengguang Wu
     [not found] ` <20080115124758.142052041@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 01/13] writeback: revert 2e6883bdf49abd0e7f0d9b6297fc3be7ebb2250b Fengguang Wu
     [not found] ` <20080115124758.559626681@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 02/13] writeback: clear PAGECACHE_TAG_DIRTY for truncated page in block_write_full_page() Fengguang Wu
     [not found] ` <20080115124758.972567524@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 03/13] writeback: introduce writeback_control.more_io Fengguang Wu
     [not found] ` <20080115124759.398587485@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 04/13] writeback: introduce super_block.s_more_io_wait Fengguang Wu
     [not found] ` <20080115124759.770126448@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 05/13] writeback: merge duplicate code into writeback_some_pages() Fengguang Wu
     [not found] ` <20080115124800.190056249@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 06/13] writeback: defer writeback on not-all-pages-written Fengguang Wu
     [not found] ` <20080115124800.602843975@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 07/13] writeback: defer writeback on locked inode Fengguang Wu
     [not found] ` <20080115124801.012754821@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 08/13] writeback: defer writeback on locked buffers Fengguang Wu
     [not found] ` <20080115124801.430525129@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 09/13] writeback: requeue_io() on redirtied inode Fengguang Wu
2008-01-16  8:13   ` David Chinner
     [not found]     ` <E1JFMH1-0001xA-L1@localhost.localdomain>
2008-01-17  4:22       ` Fengguang Wu
     [not found] ` <20080115124801.800688912@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 10/13] writeback: introduce queue_dirty() Fengguang Wu
     [not found] ` <20080115124802.215191468@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 11/13] writeback: queue_dirty() on memory-backed bdi Fengguang Wu
     [not found] ` <20080115124802.624775214@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 12/13] writeback: remove redirty_tail() Fengguang Wu
     [not found] ` <20080115124803.025520828@mail.ustc.edu.cn>
2008-01-15 12:36   ` [PATCH 13/13] writeback: cleanup __sync_single_inode() Fengguang Wu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=532480950801151033w69411f8dk4d9ab14a2ff07d64@mail.gmail.com \
    --to=mrubin@google.com \
    --cc=akpm@osdl.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterz@infradead.org \
    --cc=wfg@mail.ustc.edu.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®