Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756026AbZCGFIt (ORCPT ); Sat, 7 Mar 2009 00:08:49 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755305AbZCGFHf (ORCPT ); Sat, 7 Mar 2009 00:07:35 -0500 Received: from e23smtp06.au.ibm.com ([202.81.31.148]:59868 "EHLO e23smtp06.au.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754960AbZCGFHd (ORCPT ); Sat, 7 Mar 2009 00:07:33 -0500 Date: Sat, 7 Mar 2009 10:37:23 +0530 From: prasad@linux.vnet.ibm.com To: mingo@elte.hu Cc: Andrew Morton , Linux Kernel Mailing List , Alan Stern , Roland McGrath , "K.Prasad" Subject: [Patch 09/11] Cleanup HW Breakpoint registers before kexec Message-ID: <20090307050723.GJ23959@in.ibm.com> References: <20090307045120.039324630@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename=9 User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2064 Lines: 60 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/