Re: [PATCH 11/11] writeback: add comments to bdi_work structure

From: Jan Kara
Date: Wed Sep 16 2009 - 09:15:39 EST


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@xxxxxxxxxx>
Acked-by: Jan Kara <jack@xxxxxxx>

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@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/