[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120413152122.GC26383@redhat.com>
Date: Fri, 13 Apr 2012 11:21:23 -0400
From: Vivek Goyal <vgoyal@...hat.com>
To: Tejun Heo <tj@...nel.org>
Cc: axboe@...nel.dk, ctalbott@...gle.com, rni@...gle.com,
linux-kernel@...r.kernel.org, cgroups@...r.kernel.org,
containers@...ts.linux-foundation.org
Subject: Re: [PATCH 7/8] blkcg: implement per-queue policy activation
On Thu, Apr 12, 2012 at 04:29:39PM -0700, Tejun Heo wrote:
[..]
> @@ -111,12 +122,11 @@ static struct blkio_group *blkg_alloc(struct blkio_cgroup *blkcg,
> struct blkio_policy_type *pol = blkio_policy[i];
> struct blkg_policy_data *pd;
>
> - if (!pol)
> + if (!blkcg_policy_enabled(q, pol))
> continue;
>
> /* alloc per-policy data and attach it to blkg */
> - pd = kzalloc_node(sizeof(*pd) + pol->pdata_size, GFP_ATOMIC,
> - q->node);
> + pd = kzalloc_node(blkg_pd_size(pol), GFP_ATOMIC, q->node);
> if (!pd) {
> blkg_free(blkg);
> return NULL;
> @@ -130,7 +140,7 @@ static struct blkio_group *blkg_alloc(struct blkio_cgroup *blkcg,
> for (i = 0; i < BLKCG_MAX_POLS; i++) {
> struct blkio_policy_type *pol = blkio_policy[i];
>
> - if (pol)
> + if (blkcg_policy_enabled(blkg->q, pol))
> pol->ops.blkio_init_group_fn(blkg);
> }
May be pol->ops.blkio_init_group_fn() can be called in the loop above
where you are allocating the group. So you don't end up looping through
policies twice and don't have to call blkcg_policy_enabled() twice.
Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists