From: Alan Stern This patch disables Hardware breakpoints before doing a 'kexec' on the machine. [K.Prasad: Split-out from the bigger patch and minor changes following re-basing] Signed-off-by: K.Prasad Signed-off-by: Alan Stern --- arch/x86/kernel/machine_kexec_32.c | 2 ++ arch/x86/kernel/machine_kexec_64.c | 2 ++ 2 files changed, 4 insertions(+) Index: linux-2.6-tip/arch/x86/kernel/machine_kexec_32.c =================================================================== --- linux-2.6-tip.orig/arch/x86/kernel/machine_kexec_32.c +++ linux-2.6-tip/arch/x86/kernel/machine_kexec_32.c @@ -25,6 +25,7 @@ #include #include #include +#include static void set_idt(void *newidt, __u16 limit) { @@ -202,6 +203,7 @@ void machine_kexec(struct kimage *image) /* Interrupts aren't acceptable while we reboot */ local_irq_disable(); + disable_debug_registers(); if (image->preserve_context) { #ifdef CONFIG_X86_IO_APIC Index: linux-2.6-tip/arch/x86/kernel/machine_kexec_64.c =================================================================== --- linux-2.6-tip.orig/arch/x86/kernel/machine_kexec_64.c +++ linux-2.6-tip/arch/x86/kernel/machine_kexec_64.c @@ -17,6 +17,7 @@ #include #include #include +#include static void init_level2_page(pmd_t *level2p, unsigned long addr) { @@ -234,6 +235,7 @@ void machine_kexec(struct kimage *image) /* Interrupts aren't acceptable while we reboot */ local_irq_disable(); + disable_debug_registers(); control_page = page_address(image->control_code_page) + PAGE_SIZE; memcpy(control_page, relocate_kernel, PAGE_SIZE); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/