--- 2617-rc1/kernel/kexec.c.orig 2006-04-05 13:27:53.000000000 -0700 +++ 2617-rc1/kernel/kexec.c 2006-04-05 13:27:43.000000000 -0700 @@ -903,7 +903,7 @@ static int kimage_load_segment(struct ki * that to happen you need to do that yourself. */ struct kimage *kexec_image = NULL; -static struct kimage *kexec_crash_image = NULL; +struct kimage *kexec_crash_image = NULL; /* * A home grown binary mutex. * Nothing can wait so this mutex is safe to use @@ -1042,7 +1042,6 @@ asmlinkage long compat_sys_kexec_load(un void crash_kexec(struct pt_regs *regs) { - struct kimage *image; int locked; @@ -1056,12 +1055,11 @@ void crash_kexec(struct pt_regs *regs) */ locked = xchg(&kexec_lock, 1); if (!locked) { - image = xchg(&kexec_crash_image, NULL); - if (image) { + if (kexec_crash_image) { struct pt_regs fixed_regs; crash_setup_regs(&fixed_regs, regs); machine_crash_shutdown(&fixed_regs); - machine_kexec(image); + machine_kexec(kexec_crash_image); } xchg(&kexec_lock, 0); }