blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path
authorWaiman Long <longman@redhat.com>
Sat, 5 Nov 2022 00:59:00 +0000 (20:59 -0400)
committerJens Axboe <axboe@kernel.dk>
Wed, 16 Nov 2022 23:58:44 +0000 (16:58 -0700)
For blkcg_css_alloc(), the only error that will be returned is -ENOMEM.
Simplify error handling code by returning this error directly instead
of setting an intermediate "ret" variable.

Signed-off-by: Waiman Long <longman@redhat.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20221105005902.407297-2-longman@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-cgroup.c

index 6a5c849..af8a4d2 100644 (file)
@@ -1139,7 +1139,6 @@ static struct cgroup_subsys_state *
 blkcg_css_alloc(struct cgroup_subsys_state *parent_css)
 {
        struct blkcg *blkcg;
-       struct cgroup_subsys_state *ret;
        int i;
 
        mutex_lock(&blkcg_pol_mutex);
@@ -1148,10 +1147,8 @@ blkcg_css_alloc(struct cgroup_subsys_state *parent_css)
                blkcg = &blkcg_root;
        } else {
                blkcg = kzalloc(sizeof(*blkcg), GFP_KERNEL);
-               if (!blkcg) {
-                       ret = ERR_PTR(-ENOMEM);
+               if (!blkcg)
                        goto unlock;
-               }
        }
 
        for (i = 0; i < BLKCG_MAX_POLS ; i++) {
@@ -1168,10 +1165,9 @@ blkcg_css_alloc(struct cgroup_subsys_state *parent_css)
                        continue;
 
                cpd = pol->cpd_alloc_fn(GFP_KERNEL);
-               if (!cpd) {
-                       ret = ERR_PTR(-ENOMEM);
+               if (!cpd)
                        goto free_pd_blkcg;
-               }
+
                blkcg->cpd[i] = cpd;
                cpd->blkcg = blkcg;
                cpd->plid = i;
@@ -1200,7 +1196,7 @@ free_pd_blkcg:
                kfree(blkcg);
 unlock:
        mutex_unlock(&blkcg_pol_mutex);
-       return ret;
+       return ERR_PTR(-ENOMEM);
 }
 
 static int blkcg_css_online(struct cgroup_subsys_state *css)