[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[dm-devel] Re: [PATCH 20/25] io-controller: map async requests to appropriate cgroup
- From: Vivek Goyal <vgoyal redhat com>
- To: Gui Jianfeng <guijianfeng cn fujitsu com>
- Cc: dhaval linux vnet ibm com, snitzer redhat com, peterz infradead org, dm-devel redhat com, dpshah google com, jens axboe oracle com, agk redhat com, balbir linux vnet ibm com, paolo valente unimore it, fernando oss ntt co jp, mikew google com, jmoyer redhat com, nauman google com, m-ikeda ds jp nec com, lizf cn fujitsu com, fchecconi gmail com, akpm linux-foundation org, jbaron redhat com, linux-kernel vger kernel org, s-uchida ap jp nec com, righi andrea gmail com, containers lists linux-foundation org
- Subject: [dm-devel] Re: [PATCH 20/25] io-controller: map async requests to appropriate cgroup
- Date: Mon, 3 Aug 2009 21:25:55 -0400
On Mon, Aug 03, 2009 at 10:13:46AM +0800, Gui Jianfeng wrote:
> Vivek Goyal wrote:
> ...
> > +
> > +struct io_group *io_get_io_group_bio(struct request_queue *q, struct bio *bio,
> > + int create)
> > +{
> > + struct page *page = NULL;
> > +
> > + /*
> > + * Determine the group from task context. Even calls from
> > + * blk_get_request() which don't have any bio info will be mapped
> > + * to the task's group
> > + */
> > + if (!bio)
> > + goto sync;
> > +
> > + if (bio_barrier(bio)) {
> > + /*
> > + * Map barrier requests to root group. May be more special
> > + * bio cases should come here
> > + */
> > + return q->elevator->efqd.root_group;
> > + }
> > +
> > + /* Map the sync bio to the right group using task context */
> > + if (elv_bio_sync(bio))
> > + goto sync;
> > +
> > +#ifdef CONFIG_TRACK_ASYNC_CONTEXT
> > + /* Determine the group from info stored in page */
> > + page = bio_iovec_idx(bio, 0)->bv_page;
> > + return io_get_io_group(q, page, create);
> > +#endif
> > +
> > +sync:
> > + return io_get_io_group(q, NULL, create);
>
> Fix build warning.
>
> block/elevator-fq.c: In function ‘io_get_io_group_bio’:
> block/elevator-fq.c:2075: warning: unused variable ‘page’
>
Thanks Gui. Will apply in next posting.
Vivek
> ---
> diff --git a/block/elevator-fq.c b/block/elevator-fq.c
> index 66b10eb..d304f79 100644
> --- a/block/elevator-fq.c
> +++ b/block/elevator-fq.c
> @@ -2102,7 +2102,7 @@ struct io_group *io_get_io_group_bio(struct request_queue *q, struct bio *bio,
> #endif
>
> sync:
> - return io_get_io_group(q, NULL, create);
> + return io_get_io_group(q, page, create);
> }
> EXPORT_SYMBOL(io_get_io_group_bio);
>
>
> > +}
> > +EXPORT_SYMBOL(io_get_io_group_bio);
> > +
>
>
> --
> Regards
> Gui Jianfeng
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]