[PATCH] Fix the spurious unlock_cpu_hotplug false warnings
Cpu-hotplug locking has a minor race case caused because of setting the variable "recursive" to NULL *after* releasing the cpu_bitmask_lock in the function unlock_cpu_hotplug,instead of doing so before releasing the cpu_bitmask_lock. This was the cause of most of the recent false spurious lock_cpu_unlock warnings. This should fix the problem reported by Martin Lorenz reported in http://lkml.org/lkml/2006/10/29/127. Thanks to Srinivasa DS for pointing it out. Signed-off-by: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
d1ed6a3ea1
commit
4b96b1a10c
@ -58,8 +58,8 @@ void unlock_cpu_hotplug(void)
|
|||||||
recursive_depth--;
|
recursive_depth--;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mutex_unlock(&cpu_bitmask_lock);
|
|
||||||
recursive = NULL;
|
recursive = NULL;
|
||||||
|
mutex_unlock(&cpu_bitmask_lock);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(unlock_cpu_hotplug);
|
EXPORT_SYMBOL_GPL(unlock_cpu_hotplug);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user