All of lore.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@ZenIV.linux.org.uk>
To: Andreas Schwab <schwab@linux-m68k.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
	Linux/m68k <linux-m68k@vger.kernel.org>
Subject: Re: m68k, signals and single-stepping
Date: Thu, 30 Sep 2010 17:50:41 +0100	[thread overview]
Message-ID: <20100930165041.GN19804@ZenIV.linux.org.uk> (raw)
In-Reply-To: <m3lj6j4dh8.fsf@hase.home>

On Thu, Sep 30, 2010 at 02:34:11PM +0200, Andreas Schwab wrote:

> > Um...  What's wrong with doing that from trap_c()?
> 
> IIRC that was the only way to make gdb work correctly wrt. single
> stepping over system calls and into signal handlers.  If anyone wants to
> test it with today's kernel on real hardware, please go ahead.

Ouch...  Resurrecting that 840av box will be interesting - most likely
a dead battery, but... ;-/  And yes, I certainly understand why qemu
testing is not sufficient for that kind of stuff - subtle enough to
make the odds of stepping on qemu bugs...

Oh, well.  Anyway, the obvious ones I've got are:
	* setup_frame/setup_rt_frame should report failure, so that
handle_signal() wouldn't block signals in that case (losing the original
mask, since it's not stored anywhere in that case)
	* notify_resume isn't handled at all
	* sigsuspend would be better off with ERESTARTNOHAND scheme.

FWIW, I wonder if it would be better to have handle_signal() call
send_sig() and clear regs.SR.T1 and forget about checking return
value of do_signal(); do_delayed_trace is still needed, since currently
there are two places that can reach it, but it'd make the code around
calling do_signal() simpler while preserving the current behaviour...

  reply	other threads:[~2010-09-30 16:50 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20100930055823.GK19804@ZenIV.linux.org.uk>
2010-09-30  6:07 ` m68k, signals and single-stepping Geert Uytterhoeven
2010-09-30  8:21   ` Andreas Schwab
2010-09-30 12:05     ` Al Viro
2010-09-30 12:34       ` Andreas Schwab
2010-09-30 16:50         ` Al Viro [this message]
2010-10-02  3:44           ` Finn Thain
2010-10-02 11:23             ` Andreas Schwab
2010-10-02 11:57               ` Finn Thain
2010-10-02 12:27                 ` Andreas Schwab
2010-09-30  8:25   ` Andreas Schwab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100930165041.GN19804@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=geert@linux-m68k.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=schwab@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.