On 12/14/15 13:03, Jeff Merkey wrote: > Please consider the attached patch. > > I have reviewed all the code that touches this patch and have > determined it will function and support all of the software that > depends on this handler properly. I have compiled and tested this > patch with a test harness that tests the robustness of the linux > breakpoint API and handlers in the following ways: > > 1. Setting multiple conditional breakpoints through > arch_install_hw_breakpoint API across four processors to test the rate > at which the interface can handle breakpoint exceptions > > 2. Setting unregistered breakpoints to test the handlers robustness > in dealing with error handling conditions and errant or spurious > hardware conditions and to simulate actual "lazy debug register > switching" (which does not work BTW) with null bp handlers to test the > robustness of the handlers. > > 3. Clearing and setting breakpoints across multiple processors then > triggering concurrent exceptions in both interrupt and process > contexts. > > This patch improves robustness in several ways in the linux kernel: > > 1. Corrects bug in handling unregistered breakpoints. > > 2. Provides hardware check of dr7 to determine source of breakpoint > if OS cannot ascertain the int1 source from its own state and > variables. > > 3. Actually allows "lazy debug register switching" to function, which > until recently has apparently never been actually seen on live > hardware or actually tested. >
This is all fine and good, but you are missing one of the most important parts of a patch: a patch description, describing in detail the problem that it solves and why. This description needs to be comprehensible not just for people already initiated but for someone doing code archaeology a decade from now. Thanks, -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/