kgdb: Always process the whole breakpoint list on activate or deactivate
authorJason Wessel <jason.wessel@windriver.com>
Fri, 11 Dec 2009 14:43:20 +0000 (08:43 -0600)
committerJason Wessel <jason.wessel@windriver.com>
Fri, 11 Dec 2009 14:43:20 +0000 (08:43 -0600)
commit7f8b7ed6f825c729332b8190aca55c6bf95b158e
tree29496e5c24361945a38a240263c04d9ba5b3bd2b
parentd625e9c0d706eb43afbf52634d5cecacae1d57cc
kgdb: Always process the whole breakpoint list on activate or deactivate

This patch fixes 2 edge cases in using kgdb in conjunction with gdb.

1) kgdb_deactivate_sw_breakpoints() should process the entire array of
   breakpoints.  The failure to do so results in breakpoints that you
   cannot remove, because a break point can only be removed if its
   state flag is set to BP_SET.

   The easy way to duplicate this problem is to plant a break point in
   a kernel module and then unload the kernel module.

2) kgdb_activate_sw_breakpoints() should process the entire array of
   breakpoints.  The failure to do so results in missed breakpoints
   when a breakpoint cannot be activated.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
kernel/kgdb.c