SLAB: Fix lockdep annotation breakage
Commit ce79ddc8e2
("SLAB: Fix lockdep annotations
for CPU hotplug") broke init_node_lock_keys() off-slab logic which causes
lockdep false positives.
Fix that up by reverting the logic back to original while keeping CPU hotplug
fixes intact.
Reported-and-tested-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Reported-and-tested-by: Andi Kleen <andi@firstfloor.org>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
This commit is contained in:
parent
6b7b284958
commit
00afa75806
1 changed files with 2 additions and 2 deletions
|
@ -654,7 +654,7 @@ static void init_node_lock_keys(int q)
|
||||||
|
|
||||||
l3 = s->cs_cachep->nodelists[q];
|
l3 = s->cs_cachep->nodelists[q];
|
||||||
if (!l3 || OFF_SLAB(s->cs_cachep))
|
if (!l3 || OFF_SLAB(s->cs_cachep))
|
||||||
return;
|
continue;
|
||||||
lockdep_set_class(&l3->list_lock, &on_slab_l3_key);
|
lockdep_set_class(&l3->list_lock, &on_slab_l3_key);
|
||||||
alc = l3->alien;
|
alc = l3->alien;
|
||||||
/*
|
/*
|
||||||
|
@ -665,7 +665,7 @@ static void init_node_lock_keys(int q)
|
||||||
* for alloc_alien_cache,
|
* for alloc_alien_cache,
|
||||||
*/
|
*/
|
||||||
if (!alc || (unsigned long)alc == BAD_ALIEN_MAGIC)
|
if (!alc || (unsigned long)alc == BAD_ALIEN_MAGIC)
|
||||||
return;
|
continue;
|
||||||
for_each_node(r) {
|
for_each_node(r) {
|
||||||
if (alc[r])
|
if (alc[r])
|
||||||
lockdep_set_class(&alc[r]->lock,
|
lockdep_set_class(&alc[r]->lock,
|
||||||
|
|
Loading…
Add table
Reference in a new issue