aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorHorms <horms@verge.net.au>2007-02-05 16:49:10 -0500
committerTony Luck <tony.luck@intel.com>2007-02-05 16:49:10 -0500
commitc237508afa5d47282d3047784864013eebdc68ab (patch)
tree8fb1cfe0928995cb81a6d6456366f77fe9a5fc06 /arch
parent9473252f20e8482464415d9030b3957b5593796d (diff)
[IA64] kexec: Move machine_shutdown from machine_kexec.c to process.c
This moves the ia64 implementation of machine_shutdown() from machine_kexec.c to process.c, which is in keeping with the implelmentation on other architectures, and seems like a much more appropriate home for it. Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/ia64/kernel/machine_kexec.c13
-rw-r--r--arch/ia64/kernel/process.c16
2 files changed, 16 insertions, 13 deletions
diff --git a/arch/ia64/kernel/machine_kexec.c b/arch/ia64/kernel/machine_kexec.c
index 655195d483df..e51cd904a23e 100644
--- a/arch/ia64/kernel/machine_kexec.c
+++ b/arch/ia64/kernel/machine_kexec.c
@@ -69,19 +69,6 @@ void machine_kexec_cleanup(struct kimage *image)
69{ 69{
70} 70}
71 71
72void machine_shutdown(void)
73{
74#ifdef CONFIG_HOTPLUG_CPU
75 int cpu;
76
77 for_each_online_cpu(cpu) {
78 if (cpu != smp_processor_id())
79 cpu_down(cpu);
80 }
81#endif
82 kexec_disable_iosapic();
83}
84
85/* 72/*
86 * Do not allocate memory (or fail in any way) in machine_kexec(). 73 * Do not allocate memory (or fail in any way) in machine_kexec().
87 * We are past the point of no return, committed to rebooting now. 74 * We are past the point of no return, committed to rebooting now.
diff --git a/arch/ia64/kernel/process.c b/arch/ia64/kernel/process.c
index 17685abaf496..ae96d4176995 100644
--- a/arch/ia64/kernel/process.c
+++ b/arch/ia64/kernel/process.c
@@ -34,6 +34,7 @@
34#include <asm/ia32.h> 34#include <asm/ia32.h>
35#include <asm/irq.h> 35#include <asm/irq.h>
36#include <asm/kdebug.h> 36#include <asm/kdebug.h>
37#include <asm/kexec.h>
37#include <asm/pgalloc.h> 38#include <asm/pgalloc.h>
38#include <asm/processor.h> 39#include <asm/processor.h>
39#include <asm/sal.h> 40#include <asm/sal.h>
@@ -803,6 +804,21 @@ cpu_halt (void)
803 ia64_pal_halt(min_power_state); 804 ia64_pal_halt(min_power_state);
804} 805}
805 806
807void machine_shutdown(void)
808{
809#ifdef CONFIG_HOTPLUG_CPU
810 int cpu;
811
812 for_each_online_cpu(cpu) {
813 if (cpu != smp_processor_id())
814 cpu_down(cpu);
815 }
816#endif
817#ifdef CONFIG_KEXEC
818 kexec_disable_iosapic();
819#endif
820}
821
806void 822void
807machine_restart (char *restart_cmd) 823machine_restart (char *restart_cmd)
808{ 824{