Re: [PATCH] blkcg: stop iteration early if root_rl is the onlyrequest list

From: Vivek Goyal
Date: Mon Oct 22 2012 - 11:31:24 EST


On Mon, Oct 22, 2012 at 10:15:37AM +0900, Jun'ichi Nomura wrote:
> __blk_queue_next_rl() finds next request list based on blkg_list
> while skipping root_blkg in the list.
> OTOH, root_rl is special as it may exist even without root_blkg.
>
> Though the later part of the function handles such a case correctly,
> exiting early is good for readability of the code.
>

Thanks for the patch Junichi. This one looks good to me.

Acked-by: Vivek Goyal <vgoyal@xxxxxxxxxx>

Vivek

> Signed-off-by: Jun'ichi Nomura <j-nomura@xxxxxxxxxxxxx>
> Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
> Cc: Tejun Heo <tj@xxxxxxxxxx>
> Cc: Jens Axboe <axboe@xxxxxxxxx>
> ---
> block/blk-cgroup.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
> index 54f35d1..a31e678 100644
> --- a/block/blk-cgroup.c
> +++ b/block/blk-cgroup.c
> @@ -333,6 +333,9 @@ struct request_list *__blk_queue_next_rl(struct request_list *rl,
> */
> if (rl == &q->root_rl) {
> ent = &q->blkg_list;
> + /* There are no more block groups, hence no request lists */
> + if (list_empty(ent))
> + return NULL;
> } else {
> blkg = container_of(rl, struct blkcg_gq, rl);
> ent = &blkg->q_node;
--
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/