linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Davda, Bhavesh P \(Bhavesh\)" <bhavesh@avaya.com>
To: "Daniel Jacobowitz" <dan@debian.org>
Cc: <linux-kernel@vger.kernel.org>
Subject: RE: [RFC PATCH] New SA_NOPRNOTIF sigaction flag
Date: Tue, 27 Sep 2005 08:45:07 -0600	[thread overview]
Message-ID: <21FFE0795C0F654FAD783094A9AE1DFC086EFADA@cof110avexu4.global.avaya.com> (raw)

> -----Original Message-----
> From: Daniel Jacobowitz [mailto:dan@debian.org] 
> Sent: Tuesday, September 27, 2005 7:07 AM
> To: Davda, Bhavesh P (Bhavesh)
> Cc: linux-kernel@vger.kernel.org
> Subject: Re: [RFC PATCH] New SA_NOPRNOTIF sigaction flag
> 
> On Mon, Sep 26, 2005 at 11:39:40AM -0600, Bhavesh P. Davda wrote:
> > 
> > Sometimes when a task is being ptraced (e.g. by a 
> debugger), one would
> > like to handle a certain signal (e.g. SIGSEGV) within the 
> task without
> > having to notify the ptracing task.
> > 
> > An example of this is if one would like to detect the rate 
> at which pages
> > are being modified, and therefore mprotect() the pages. The SIGSEGV
> > handler just keeps track of how many writes are happening 
> on each of the
> > mprotect()ed pages, but you don't want to bother the 
> debugger with these
> > SIGSEGVs.
> > 
> > I'm proposing the addition of a new SA_NOPRNOTIF flag to 
> struct sigaction
> > { sa_flags }, which makes the kernel skip notifying the 
> ptracing parent if
> > the flag is set for a sighandler for a particular signal.
> > 
> > This trivial patch achieves just that.
> > 
> > Comments?
> 
> No way!  It needs to work the other way: allow the debugger to
> short-circuit a signal for performance reasons if it wants to.  Ptrace
> is supposed to report all signals and debuggers expect it to do so.
> It'd be pretty confusing if, say, you were trying to debug the SIGSEGV
> handler in an application which did this.
> 
> -- 
> Daniel Jacobowitz
> CodeSourcery, LLC
> 


Then propose an alternative way where a real-time (SCHED_FIFO/SCHED_RR)
CPU bound application getting lots of SEGVs for normal operation doesn't
cause a priority inversion with the debugger getting SIGCHLDs for every
SEGV and deciding to ignore it?

This way avoids the unnecessary context switch to the debugger, and is
intended for use only by someone who knows darn sure that s/he will
handle the signal safely, and don't mind if the debugger is not notified
(in fact would love it if that's the case) on specific signals.

IMHO this is a perfectly safe capability...

- Bhavesh

Bhavesh P. Davda | Distinguished Member of Technical Staff | Avaya |
1300 West 120th Avenue | B3-B03 | Westminster, CO 80234 | U.S.A. |
Voice/Fax: 303.538.4438 | bhavesh@avaya.com 

             reply	other threads:[~2005-09-27 14:45 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-27 14:45 Davda, Bhavesh P (Bhavesh) [this message]
2005-09-27 15:55 ` [RFC PATCH] New SA_NOPRNOTIF sigaction flag Daniel Jacobowitz
2005-09-27 23:26 ` Valdis.Kletnieks
  -- strict thread matches above, loose matches on Subject: below --
2005-10-03 15:21 Davda, Bhavesh P (Bhavesh)
2005-10-03 16:12 ` Daniel Jacobowitz
2005-09-28 19:11 Davda, Bhavesh P (Bhavesh)
2005-10-03  0:27 ` Daniel Jacobowitz
2005-09-28 18:06 Davda, Bhavesh P (Bhavesh)
2005-09-28 18:33 ` Daniel Jacobowitz
2005-09-27 21:55 Davda, Bhavesh P (Bhavesh)
2005-09-28 14:10 ` Daniel Jacobowitz
2005-09-27 16:24 Davda, Bhavesh P (Bhavesh)
2005-09-27 20:39 ` Daniel Jacobowitz
2005-09-26 17:39 Bhavesh P. Davda
2005-09-27 13:06 ` Daniel Jacobowitz

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=21FFE0795C0F654FAD783094A9AE1DFC086EFADA@cof110avexu4.global.avaya.com \
    --to=bhavesh@avaya.com \
    --cc=dan@debian.org \
    --cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).