From: Tejun Heo Date: Thu, 26 May 2016 19:42:13 +0000 (-0400) Subject: cgroup: set css->id to -1 during init X-Git-Tag: firefly_0821_release~176^2~4^2~36^2~34 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=75d6026fd7d605a668ef532193c2bae707a4316c;p=firefly-linux-kernel-4.4.55.git cgroup: set css->id to -1 during init commit 8fa3b8d689a54d6d04ff7803c724fb7aca6ce98e upstream. If percpu_ref initialization fails during css_create(), the free path can end up trying to free css->id of zero. As ID 0 is unused, it doesn't cause a critical breakage but it does trigger a warning message. Fix it by setting css->id to -1 from init_and_link_css(). Signed-off-by: Tejun Heo Cc: Wenwei Tao Fixes: 01e586598b22 ("cgroup: release css->id after css_free") Signed-off-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman --- diff --git a/kernel/cgroup.c b/kernel/cgroup.c index 1c9d701f7a72..a3424f28aaf4 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -4793,6 +4793,7 @@ static void init_and_link_css(struct cgroup_subsys_state *css, memset(css, 0, sizeof(*css)); css->cgroup = cgrp; css->ss = ss; + css->id = -1; INIT_LIST_HEAD(&css->sibling); INIT_LIST_HEAD(&css->children); css->serial_nr = css_serial_nr_next++;