[PATCH 01/10] blkcg: __blkg_lookup_create() doesn't need radix preload
Vivek Goyal
vgoyal at redhat.com
Mon Jun 4 18:57:02 UTC 2012
On Mon, Jun 04, 2012 at 12:08:08AM -0700, Tejun Heo wrote:
> There's no point in calling radix_tree_preload() if preloading doesn't
> use more permissible GFP mask. Drop preloading from
> __blkg_lookup_create().
>
> While at it, drop sparse locking annotation which no longer applies.
>
> v2: Vivek pointed out the odd preload usage. Instead of updating,
> just drop it.
>
> Signed-off-by: Tejun Heo <tj at kernel.org>
> Cc: Vivek Goyal <vgoyal at redhat.com>
Looks good to me.
Acked-by: Vivek Goyal <vgoyal at redhat.com>
Vivek
> ---
> block/blk-cgroup.c | 10 +---------
> 1 files changed, 1 insertions(+), 9 deletions(-)
>
> diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
> index 4ab7420..af61db0 100644
> --- a/block/blk-cgroup.c
> +++ b/block/blk-cgroup.c
> @@ -177,7 +177,6 @@ EXPORT_SYMBOL_GPL(blkg_lookup);
>
> static struct blkcg_gq *__blkg_lookup_create(struct blkcg *blkcg,
> struct request_queue *q)
> - __releases(q->queue_lock) __acquires(q->queue_lock)
> {
> struct blkcg_gq *blkg;
> int ret;
> @@ -203,10 +202,6 @@ static struct blkcg_gq *__blkg_lookup_create(struct blkcg *blkcg,
> goto err_put;
>
> /* insert */
> - ret = radix_tree_preload(GFP_ATOMIC);
> - if (ret)
> - goto err_free;
> -
> spin_lock(&blkcg->lock);
> ret = radix_tree_insert(&blkcg->blkg_tree, q->id, blkg);
> if (likely(!ret)) {
> @@ -215,14 +210,11 @@ static struct blkcg_gq *__blkg_lookup_create(struct blkcg *blkcg,
> }
> spin_unlock(&blkcg->lock);
>
> - radix_tree_preload_end();
> -
> if (!ret)
> return blkg;
> -err_free:
> - blkg_free(blkg);
> err_put:
> css_put(&blkcg->css);
> + blkg_free(blkg);
> return ERR_PTR(ret);
> }
>
> --
> 1.7.7.3
More information about the Containers
mailing list