2008-12-29 03:58:44

by Li Zefan

[permalink] [raw]
Subject: [PATCH 1/3] cls_cgroup: fix an oops when removing a cgroup

When removing a cgroup, an oops was triggered immediately. The cause
is wrong kfree() in cgrp_destroy().

Signed-off-by: Li Zefan <[email protected]>
---
net/sched/cls_cgroup.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/sched/cls_cgroup.c b/net/sched/cls_cgroup.c
index 0d68b19..31d95b1 100644
--- a/net/sched/cls_cgroup.c
+++ b/net/sched/cls_cgroup.c
@@ -46,7 +46,7 @@ static struct cgroup_subsys_state *cgrp_create(struct cgroup_subsys *ss,

static void cgrp_destroy(struct cgroup_subsys *ss, struct cgroup *cgrp)
{
- kfree(ss);
+ kfree(net_cls_state(cgrp));
}

static u64 read_classid(struct cgroup *cgrp, struct cftype *cft)
--
1.5.4.rc3


2009-01-05 16:39:46

by Thomas Graf

[permalink] [raw]
Subject: Re: [PATCH 1/3] cls_cgroup: fix an oops when removing a cgroup

* Li Zefan <[email protected]> 2008-12-29 11:57
> When removing a cgroup, an oops was triggered immediately. The cause
> is wrong kfree() in cgrp_destroy().

Good catch.

Acked-by: Thomas Graf <[email protected]>