Re: ptrace single-stepping change breaks Wine

2004-12-31 Thread Davide Libenzi
On Fri, 31 Dec 2004, Andi Kleen wrote: > > - you couldn't even debug signal handlers, because they were _really_ > >hard to get into unless you knew where they were and put a breakpoint > >on them. > > Ok I see this as being a problem. But I bet it could be fixed > much simpler without

Re: ptrace single-stepping change breaks Wine

2004-12-30 Thread Davide Libenzi
On Wed, 29 Dec 2004, Linus Torvalds wrote: > On Wed, 29 Dec 2004, Davide Libenzi wrote: > > > > I think same. My test simply let the function processing to let thru and > > reach the fake signal sending point. > > No, your test-case doesn't even send a si

Re: ptrace single-stepping change breaks Wine

2004-12-30 Thread Davide Libenzi
On Wed, 29 Dec 2004, Linus Torvalds wrote: > On Wed, 29 Dec 2004, Linus Torvalds wrote: > > > > .. no, I see what's up. System call returns _are_ special for > > single-stepping. I'll think about it.. > > Ok, I think I know what's up. > > It's literally the bogus fake signal that do_syscall_tr

Re: ptrace single-stepping change breaks Wine

2004-12-30 Thread Davide Libenzi
On Wed, 29 Dec 2004, Linus Torvalds wrote: > Will test whether it cleanly handles your test-case. Davide - you also > added the TIF_SINGLESTEP flag to that _TIF_WORK_MASK, can you explain > that? I honestly do not remember, but I think is wrong and can be removed. That's not the problem though

Re: ptrace single-stepping change breaks Wine

2004-12-30 Thread Davide Libenzi
On Wed, 29 Dec 2004, Linus Torvalds wrote: > On Wed, 29 Dec 2004, Davide Libenzi wrote: > > > > I think same. My test simply let the function processing to let thru and > > reach the fake signal sending point. > > No, your test-case doesn't even send a si

Re: ptrace single-stepping change breaks Wine

2004-12-30 Thread Davide Libenzi
erstand why do_syscall_trace() does that > TIF_SINGLESTEP test in the first place, since the ptrace_notify() should > happen as part of the _normal_ TIF_SINGLESTEP handling, afaiks. No > apparent need to do it in syscall tracing, and do_syscall_trace() does > that bogus fake signal sending

Re: ptrace single-stepping change breaks Wine

2004-11-22 Thread Davide Libenzi
On Sun, 21 Nov 2004, Linus Torvalds wrote: > Ok, how about this patch? > > It does basically two things: > > - it makes the x86 version of ptrace be a lot more careful about the TF >bit in eflags, and in particular it never touches it _unless_ the >tracer has explicitly asked for it (

Re: ptrace single-stepping change breaks Wine

2004-11-22 Thread Davide Libenzi
On Fri, Nov 19, 2004 at 01:53:38PM -0800, Linus Torvalds wrote: > > On Fri, 19 Nov 2004, Daniel Jacobowitz wrote: > > > > I'm getting the feeling that the question of whether to step into > > signal handlers is orthogonal to single-stepping; maybe it should be a > > separate ptrace operation. >

Re: ptrace single-stepping change breaks Wine

2004-11-22 Thread Davide Libenzi
On Sun, 21 Nov 2004, Linus Torvalds wrote: > On Mon, 22 Nov 2004, Andreas Schwab wrote: > > > > Linus Torvalds <[EMAIL PROTECTED]> writes: > > > > > Now, try to "strace" it, or debug it with gdb, and see if you can repeat > > > the behaviour. > > > > You'll always have hard time repeating that

Re: ptrace single-stepping change breaks Wine

2004-11-22 Thread Davide Libenzi
On Sun, 21 Nov 2004, Linus Torvalds wrote: > void handler(int signo) > { > extern char smc; > smc++; > } > > asm volatile("\nsmc:\n\t" > ".byte 0xb7\n\t" > ".long function" >