On Fri, Dec 31, 2004 at 09:19:48AM -0800, Linus Torvalds wrote:
On Fri, 31 Dec 2004, Daniel Jacobowitz wrote:
Lots, I like it. The syscall trap will always be delivered before the single-step trap, right, because signal delivery won't run until we return to userspace?
Yes. Although I've not actually tested it.
Before, it used to show up as one event, and basically the "0x80" marker got lost, so effectively the "system call exit" part would have got lost. Now, it _may_ DTRT, with the caveat that the system call ptrace_notify() thing still has the same problem with restarting-with-a-signal.
That's basically a "don't do that then", and is the status quo, of course, so this is at least not a regression. It's still pretty ugly, but apparently nobody really cares ;)
Yes. At some point, I'd like to make that an error - if you want to restart with a signal, don't do it from the notification points where it doesn't make sense (exit, fork, vfork-done, syscall). Send a signal by hand, and then resume, and if you want to fudge the siginfo you can do that when stopped in the signal delivery path.