On Fri, Apr 8, 2016 at 10:46 AM, Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote: > > By the way, the debugger can always decide to single-step through the > first iteration of the rseq, and then after it loops, decide to skip > single-stepping until the exit points are reached. A _human_ debugger may decide to do that yes. But the the debugger _program_ may not be that smart. For example, let's say that you - as a human - set a few watchpoints. The debugger will use hardware breakpoints for the first few, but in more complex cases the debugger will actually say "oops, no more hw breakpoints, I'll just start single-stepping instead". The human operator may not even be aware that the debugger has gone into that slower mode. Normally it's just slower. But you'd want it to be _only_ slower, not "oops, the program no longer makes any forward progress at all, because a library that the user didn't even know or care about - and never sees, because the single-stepping is all internal = happened to use a code sequence that doesn't work under single-stepping". Linus -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html