Signed-off-by: Peter Teoh
--- kernel/stop_machine.c.orig 2008-03-07 13:20:00.000000000 +0800
+++ kernel/stop_machine.c 2008-03-07 16:45:30.000000000 +0800
@@ -9,6 +9,7 @@
#include
#include
#include
+#include
#include
#include
@@ -92,6 +93,7 @@ static void stopmachine_set_state(enum s
static int stop_machine(void)
{
int i, ret = 0;
+ struct task_struct *task;
atomic_set(&stopmachine_thread_ack, 0);
stopmachine_num_threads = 0;
@@ -100,7 +102,8 @@ static int stop_machine(void)
for_each_online_cpu(i) {
if (i == raw_smp_processor_id())
continue;
- ret = kernel_thread(stopmachine, (void *)(long)i,CLONE_KERNEL);
+ task = kthread_create(stopmachine, (void *)(long)i,"stopmachine");
+ ret = PTR_ERR(task);
if (ret < 0)
break;
stopmachine_num_threads++;