--- /dev/null
+From 4047727e5ae33f9b8d2b7766d1994ea6e5ec2991 Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@suse.de>
+Date: Thu, 13 Dec 2007 13:20:32 +0800
+Subject: Revert "Fix SMP poweroff hangs"
+
+From: Greg Kroah-Hartman <gregkh@suse.de>
+
+This reverts the following changeset in 2.6.22.10 that caused a lot of
+reported problems.
+
+ From: Mark Lord <lkml@rtr.ca>
+
+ commit 4047727e5ae33f9b8d2b7766d1994ea6e5ec2991 from upstream
+
+ We need to disable all CPUs other than the boot CPU (usually 0) before
+ attempting to power-off modern SMP machines. This fixes the
+ hang-on-poweroff issue on my MythTV SMP box, and also on Thomas Gleixner's
+ new toybox.
+
+ Signed-off-by: Mark Lord <mlord@pobox.com>
+ Acked-by: Thomas Gleixner <tglx@linutronix.de>
+ Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
+ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+There still is a remaining shutdown problem in 2.6.22 with old APM based
+systems, but this fix is not the correct one
+
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ kernel/sys.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+--- a/kernel/sys.c
++++ b/kernel/sys.c
+@@ -31,7 +31,6 @@
+ #include <linux/cn_proc.h>
+ #include <linux/getcpu.h>
+ #include <linux/task_io_accounting_ops.h>
+-#include <linux/cpu.h>
+
+ #include <linux/compat.h>
+ #include <linux/syscalls.h>
+@@ -866,7 +865,6 @@ EXPORT_SYMBOL_GPL(kernel_halt);
+ void kernel_power_off(void)
+ {
+ kernel_shutdown_prepare(SYSTEM_POWER_OFF);
+- disable_nonboot_cpus();
+ printk(KERN_EMERG "Power down.\n");
+ machine_power_off();
+ }