Hi Al,

On Thu, Sep 30, 2010 at 07:58, Al Viro <[email protected]> wrote:
>        I've been trying to sort out what's going on with TIF_DELAYED_TRACE,
> but unfortunately neither User's Manual for 68040 nor Programmer's Reference
> Manual for 68k family cover tracing exceptions in enough details ;-/
>
>        a) regs.SR.T1 is cleared if you have created a sigframe; in
> addition, SIGTRAP is sent to yourself.
>        b) if you leave a syscall and see TIF_DELAYED_TRACE set, you
> do the same thing, signals or no signals.
>        c) if you leave an exception *and* no signal handlers are triggered,
> you leave T1 alone.
>        d) if you step into a tracing exception, you get SIGTRAP again,
> with si_code set to TRAP_TRACE (instead of SI_KERNEL); si_addr is set
> (unlike the previous cases).
>        e) TIF_DELAYED_TRACE is set when you ask for singlestepping;
> the same thing sets SR.T1.
>        f) PTRACE_POKEUSR can't change tracing bits in SR; neither can
> sigreturn.
>        g) if UM is clear on anything, it's that for TRAP the tracing
> exception is handled before entering the trap itself.
>
> So what's that SIGTRAP on exit from syscall in single-stepping mode for?
> I can understand doing that when we've set a signal handler up, but...
>
> There'd been some changes of behaviour in cset with rather uninformative
> commit message
>    [PATCH] M68k update (part 42)
>    M68k task and thread updates
> and AFAICS until that point we had the same "send SIGTRAP and clear T1" on
> ret_from_exception, no matter what had led there.  Was that a bugfix or
> just an unintended change?
>
> BTW, there's a bunch of signal races in m68k, mostly parallel to similar
> crap I'd been fixing lately on other targets; I have fixes, but I'd rather
> understand what's going on with tracing in there before touching the
> more subtle ones...

Sorry, I don't know. I try to stay away from the signal code as much
as possible.

Perhaps Andreas knows?

Anyway, thanks for looking into this!

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to