> Basically when you reach this chunk of code it is before the hand off > to the source debugger. We cannot continue because there was a > breakpoint in a part of the system kgdb was using while doing its > normal work. The reality is that KGDB is not self contained. It > relies on some external I/O methods, atomic page fault handling and > some other pieces. If you take an exception there, the kgdb integrity > check absolutely needs to fail.
Don't you just need a simple recursion counter for this? I cannot think of a reliable simple way to check for this using the instruction pointer. The only way would be to use explicit annotations for all possible code similar to what kprobes does (__kprobes), but that would be hugely intrusive all over the tree. With the recursion counter the only problem would be someone setting a break point on the early notifier code itself that contains a recursion check, but that would be only a few lines of code so the risk of someone setting a break point exactly there would be low. > This check is absolutely required to help prevent silent death via > dumb breakpoints or stepping around in random places (which is ill > advised anyway). I believe you, but I don't believe that your implementation of this handles all cases. -Andi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/