summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorAnay Wadhera <awadhera@berkeley.edu>2021-05-21 15:06:45 -0700
committerMichael Bestas <mkbestas@lineageos.org>2022-04-19 00:51:37 +0300
commit01f9280f931a9eb4808fd302e7ff3debf1fbea04 (patch)
tree0e0cb85a7ec5e74e8d9f7fc8e23ac2b37229dd4a /kernel
parent340293f93556eb2b31f4216ccf5b7ec7d145d6d7 (diff)
cgroup: replace out_idr_free with actual code
Signed-off-by: Chatur27 <jasonbright2709@gmail.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/cgroup.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c
index 11353701f40d..4733c722de51 100644
--- a/kernel/cgroup.c
+++ b/kernel/cgroup.c
@@ -5232,8 +5232,10 @@ static struct cgroup *cgroup_create(struct cgroup *parent)
cgrp->root = root;
cgrp->level = level;
ret = cgroup_bpf_inherit(cgrp);
- if (ret)
- goto out_idr_free;
+ if (ret) {
+ cgroup_idr_remove(&root->cgroup_idr, cgrp->id);
+ goto out_cancel_ref;
+ }
for (tcgrp = cgrp; tcgrp; tcgrp = cgroup_parent(tcgrp))
cgrp->ancestor_ids[tcgrp->level] = tcgrp->id;