Re: [PATCH] cgroups: fix lockdep subclasses overflow

From: Li Zefan
Date: Wed Feb 04 2009 - 04:16:52 EST


Li Zefan wrote:
> I enabled all cgroup subsystems when compiling kernel, and then:
> # mount -t cgroup -o net_cls xxx /mnt
> # mkdir /mnt/0
>
> This showed up immediately:
> BUG: MAX_LOCKDEP_SUBCLASSES too low!
> turning off the locking correctness validator.
>
> It's caused by the cgroup hierarchy lock:
> for (i = 0; i < CGROUP_SUBSYS_COUNT; i++) {
> struct cgroup_subsys *ss = subsys[i];
> if (ss->root == root)
> mutex_lock_nested(&ss->hierarchy_mutex, i);
> }
>
> Now we have 9 cgroup subsystems, and the above 'i' for net_cls is 9, but

sorry, a typo here: the above 'i' for net_cls is 8.

> MAX_LOCKDEP_SUBCLASSES is 8.
>
> This patch uses different lockdep keys for different subsystems.
>
> Signed-off-by: Li Zefan <lizf@xxxxxxxxxxxxxx>
> ---
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/