On 05/15/2014 01:07 PM, Stephen Warren wrote: > On 05/09/2014 03:13 PM, Tejun Heo wrote: >> Currently cgroup implements refcnting separately using atomic_t >> cgroup->refcnt. The destruction paths of cgroup and css are rather >> complex and bear a lot of similiarities including the use of RCU and >> bouncing to a work item. >> >> This patch makes cgroup use the refcnt of self css for refcnting >> instead of using its own. This makes cgroup refcnting use css's >> percpu refcnt and share the destruction mechanism. >> ... > > In next-20150515, this patch causes silent boot failures on NVIDIA Tegra > ARM systems. There isn't even any earlyprintk. Reverting this one patch > solves this. > > I was a bit surprised that cgroups would cause such an issue, but > looking at a normal kernel boot, I guess cgroup does get initialized > very early: > > Uncompressing Linux... done, booting the kernel. > [ 0.000000] Booting Linux on physical CPU 0x0 > [ 0.000000] Initializing cgroup subsys cpu > [ 0.000000] Initializing cgroup subsys cpuacct > > Anyway, I'll try to track down what the problem is, but if someone > familiar with this patch could give it a look, that'd be very useful, > since I'm not at all familiar with this code or feature. It looks like this has something to do with the new code using percpu_ functions from within cgroup_init_early, yet that function being called before init/main.c calls setup_per_cpu_areas() etc.? Unfortunately I have to run to some meetings now, so won't look at this until tomorrow. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html