On 11/15/2010 01:48 PM, Sergei Shtylyov wrote: > Hello. > > Jason Wessel wrote: > >> Thanks for the bug report Frederic. > >> The attached patch hopefully addresses the problem. > > You forgot to attach it. :-) > >> Many thanks, >> Jason. > > WBR, Sergei
I suspect it is the case that the mailing list consumed the post. Frederic already responded back confirming that the test results are good. Here is the patch in a form that the list will not eat it. --- From: Jason Wessel <[email protected]> Subject: [PATCH] kgdb,x86: fix regression in detach handling Date: Mon Nov 15 08:07:35 CST 2010 The fix from ba773f7c510c0b252145933926c636c439889207 (x86,kgdb: Fix hw breakpoint regression) was not entirely complete. The kgdb_remove_all_hw_break() function also needs to call the hw_break_release_slot() or else a breakpoint can get activated again after the debugger has detached. The kgdb test suite exposes the behavior in the form of either a hang or repetitive failure. The kernel config that exposes the problem contains all of the following: CONFIG_DEBUG_RODATA=y CONFIG_KGDB_TESTS=y CONFIG_KGDB_TESTS_ON_BOOT=y CONFIG_KGDB_TESTS_BOOT_STRING="V1F100" Reported-by: Frederic Weisbecker <[email protected]> Tested-by: Frederic Weisbecker <[email protected]> Signed-off-by: Jason Wessel <[email protected]> --- arch/x86/kernel/kgdb.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) --- a/arch/x86/kernel/kgdb.c +++ b/arch/x86/kernel/kgdb.c @@ -315,14 +315,19 @@ static void kgdb_remove_all_hw_break(voi if (!breakinfo[i].enabled) continue; bp = *per_cpu_ptr(breakinfo[i].pev, cpu); - if (bp->attr.disabled == 1) + if (!bp->attr.disabled) { + arch_uninstall_hw_breakpoint(bp); + bp->attr.disabled = 1; continue; + } if (dbg_is_early) early_dr7 &= ~encode_dr7(i, breakinfo[i].len, breakinfo[i].type); else - arch_uninstall_hw_breakpoint(bp); - bp->attr.disabled = 1; + if (hw_break_release_slot(i)) + printk(KERN_ERR "KGDB: hw bpt failed %lx\n", + breakinfo[i].addr); + breakinfo[i].enabled = 0; } } ------------------------------------------------------------------------------ Centralized Desktop Delivery: Dell and VMware Reference Architecture Simplifying enterprise desktop deployment and management using Dell EqualLogic storage and VMware View: A highly scalable, end-to-end client virtualization framework. Read more! http://p.sf.net/sfu/dell-eql-dev2dev _______________________________________________ Kgdb-bugreport mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport
