An up() is called in kernel/stop_machine.c on failure, and also in
the caller unconditionally. I have reported, but now it is still here.
Signed-off-by: Zhou Yingchao <[email protected]>
___
--- kernel/stop_machine.c.orig 2006-08-23 14:53:36.000000000 +0800
+++ kernel/stop_machine.c 2006-08-23 14:53:55.000000000 +0800
@@ -111,7 +111,6 @@ static int stop_machine(void)
/* If some failed, kill them all. */
if (ret < 0) {
stopmachine_set_state(STOPMACHINE_EXIT);
- up(&stopmachine_mutex);
return ret;
}