From: Jan Kara <jack@suse.cz>
To: Jens Axboe <jens.axboe@oracle.com>
Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
chris.mason@oracle.com, hch@infradead.org, tytso@mit.edu,
akpm@linux-foundation.org, jack@suse.cz,
trond.myklebust@fys.uio.no
Subject: Re: [PATCH 11/11] writeback: add comments to bdi_work structure
Date: Wed, 16 Sep 2009 15:15:31 +0200 [thread overview]
Message-ID: <20090916131531.GH26030@duck.suse.cz> (raw)
In-Reply-To: <1253038617-30204-12-git-send-email-jens.axboe@oracle.com>
On Tue 15-09-09 20:16:57, Jens Axboe wrote:
> And document its retriever, get_next_work_item().
>
> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Acked-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/fs-writeback.c | 18 +++++++++++-------
> 1 files changed, 11 insertions(+), 7 deletions(-)
>
> diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
> index 3de93a9..6e199ef 100644
> --- a/fs/fs-writeback.c
> +++ b/fs/fs-writeback.c
> @@ -49,15 +49,15 @@ struct wb_writeback_args {
> * Work items for the bdi_writeback threads
> */
> struct bdi_work {
> - struct list_head list;
> - struct rcu_head rcu_head;
> + struct list_head list; /* pending work list */
> + struct rcu_head rcu_head; /* for RCU free/clear of work */
>
> - unsigned long seen;
> - atomic_t pending;
> + unsigned long seen; /* threads that have seen this work */
> + atomic_t pending; /* number of threads still to do work */
>
> - struct wb_writeback_args args;
> + struct wb_writeback_args args; /* writeback arguments */
>
> - unsigned long state;
> + unsigned long state; /* flag bits, see WS_* */
> };
>
> enum {
> @@ -758,7 +758,11 @@ static long wb_writeback(struct bdi_writeback *wb,
>
> /*
> * Return the next bdi_work struct that hasn't been processed by this
> - * wb thread yet
> + * wb thread yet. ->seen is initially set for each thread that exists
> + * for this device, when a thread first notices a piece of work it
> + * clears its bit. Depending on writeback type, the thread will notify
> + * completion on either receiving the work (WB_SYNC_NONE) or after
> + * it is done (WB_SYNC_ALL).
> */
> static struct bdi_work *get_next_work_item(struct backing_dev_info *bdi,
> struct bdi_writeback *wb)
> --
> 1.6.4.1.207.g68ea
>
--
Jan Kara <jack@suse.cz>
SUSE Labs, CR
prev parent reply other threads:[~2009-09-16 13:15 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-15 18:16 [PATCH 0/11] Post merge per-bdi writeback patches v3 Jens Axboe
2009-09-15 18:16 ` [PATCH 01/11] fs: remove bdev->bd_inode_backing_dev_info Jens Axboe
2009-09-16 12:06 ` Jan Kara
2009-09-15 18:16 ` [PATCH 02/11] writeback: get rid of wbc->for_writepages Jens Axboe
2009-09-16 12:07 ` Jan Kara
2009-09-15 18:16 ` [PATCH 03/11] writeback: merely wakeup flusher thread if work allocation fails for WB_SYNC_NONE Jens Axboe
2009-09-16 12:08 ` Jan Kara
2009-09-15 18:16 ` [PATCH 04/11] writeback: make wb_writeback() take an argument structure Jens Axboe
2009-09-16 12:53 ` Jan Kara
2009-09-16 13:06 ` Jens Axboe
2009-09-15 18:16 ` [PATCH 05/11] Assign bdi in super_block Jens Axboe
2009-09-16 12:16 ` Jan Kara
2009-09-16 13:00 ` Jens Axboe
2009-09-15 18:16 ` [PATCH 06/11] writeback: only use bdi_writeback_all() for WB_SYNC_NONE writeout Jens Axboe
2009-09-15 18:16 ` [PATCH 07/11] writeback: use RCU to protect bdi_list Jens Axboe
2009-09-15 18:16 ` [PATCH 08/11] writeback: inline allocation failure handling in bdi_alloc_queue_work() Jens Axboe
2009-09-15 18:16 ` [PATCH 09/11] writeback: separate starting of sync vs opportunistic writeback Jens Axboe
2009-09-16 13:05 ` Jan Kara
2009-09-16 13:07 ` Jens Axboe
2009-09-15 18:16 ` [PATCH 10/11] writeback: splice dirty inode entries to default bdi on bdi_destroy() Jens Axboe
2009-09-16 13:12 ` Jan Kara
2009-09-16 13:21 ` Jens Axboe
2009-09-16 13:29 ` Jan Kara
2009-09-16 18:31 ` Jens Axboe
2009-09-17 9:33 ` Jan Kara
2009-09-15 18:16 ` [PATCH 11/11] writeback: add comments to bdi_work structure Jens Axboe
2009-09-16 13:15 ` Jan Kara [this message]
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=20090916131531.GH26030@duck.suse.cz \
--to=jack@suse.cz \
--cc=akpm@linux-foundation.org \
--cc=chris.mason@oracle.com \
--cc=hch@infradead.org \
--cc=jens.axboe@oracle.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=trond.myklebust@fys.uio.no \
--cc=tytso@mit.edu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.