diff options
-rw-r--r-- | arch/powerpc/kernel/machine_kexec.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/arch/powerpc/kernel/machine_kexec.c b/arch/powerpc/kernel/machine_kexec.c index 037ade74a99e..4f797c0b7148 100644 --- a/arch/powerpc/kernel/machine_kexec.c +++ b/arch/powerpc/kernel/machine_kexec.c | |||
@@ -22,6 +22,8 @@ void machine_crash_shutdown(struct pt_regs *regs) | |||
22 | { | 22 | { |
23 | if (ppc_md.machine_crash_shutdown) | 23 | if (ppc_md.machine_crash_shutdown) |
24 | ppc_md.machine_crash_shutdown(regs); | 24 | ppc_md.machine_crash_shutdown(regs); |
25 | else | ||
26 | default_machine_crash_shutdown(regs); | ||
25 | } | 27 | } |
26 | 28 | ||
27 | /* | 29 | /* |
@@ -33,11 +35,8 @@ int machine_kexec_prepare(struct kimage *image) | |||
33 | { | 35 | { |
34 | if (ppc_md.machine_kexec_prepare) | 36 | if (ppc_md.machine_kexec_prepare) |
35 | return ppc_md.machine_kexec_prepare(image); | 37 | return ppc_md.machine_kexec_prepare(image); |
36 | /* | 38 | else |
37 | * Fail if platform doesn't provide its own machine_kexec_prepare | 39 | return default_machine_kexec_prepare(image); |
38 | * implementation. | ||
39 | */ | ||
40 | return -ENOSYS; | ||
41 | } | 40 | } |
42 | 41 | ||
43 | void machine_kexec_cleanup(struct kimage *image) | 42 | void machine_kexec_cleanup(struct kimage *image) |
@@ -54,13 +53,11 @@ void machine_kexec(struct kimage *image) | |||
54 | { | 53 | { |
55 | if (ppc_md.machine_kexec) | 54 | if (ppc_md.machine_kexec) |
56 | ppc_md.machine_kexec(image); | 55 | ppc_md.machine_kexec(image); |
57 | else { | 56 | else |
58 | /* | 57 | default_machine_kexec(image); |
59 | * Fall back to normal restart if platform doesn't provide | 58 | |
60 | * its own kexec function, and user insist to kexec... | 59 | /* Fall back to normal restart if we're still alive. */ |
61 | */ | 60 | machine_restart(NULL); |
62 | machine_restart(NULL); | ||
63 | } | ||
64 | for(;;); | 61 | for(;;); |
65 | } | 62 | } |
66 | 63 | ||