ptrace single-stepping change breaks Wine

Daniel Jacobowitz dan at
Sat Jan 1 17:20:22 CST 2005

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.

Daniel Jacobowitz

More information about the wine-devel mailing list