From: Albert Cahalan <albert@users.sf.net>
To: Ingo Oeser <ioe-lkml@rameria.de>
Cc: bruce@perens.com, Linus Torvalds <torvalds@osdl.org>,
linux-kernel mailing list <linux-kernel@vger.kernel.org>
Subject: Re: Never mind. Re: Signal left blocked after signal handler.
Date: 27 Nov 2003 10:45:39 -0500 [thread overview]
Message-ID: <1069947938.722.437.camel@cube> (raw)
In-Reply-To: <200311271012.07893.ioe-lkml@rameria.de>
On Thu, 2003-11-27 at 04:11, Ingo Oeser wrote:
> On Wednesday 26 November 2003 22:53, Albert Cahalan wrote:
> [2.4 vs. 2.6 wrt. thread synchronous signals]
> > How about making the process sleep in a killable state?
> >
> > This is as if the blocking was obeyed, but doesn't
> > burn CPU time. Only a debugger should be able to
> > tell the difference.
>
> This has 2 problems:
>
> 1) Servers and PID files or servers and simple monitoring software.
> 2) Processes spawned from init, which will not respawn.
It has benefits:
1. Continuous respawning is no good.
2. If the processes sleeps, you can attach a debugger.
The obviously correct behavior is to go back into
user space, likely to take the signal again. The only
thing wrong with this is that it eats CPU time.
So _pretend_ to do that. Have the process sleep,
ideally with an "R" state as seen in /proc, and maybe
even go back to the crazy loop if someone attaches a
debugger.
The crazy loop is most correct though. It's what the
user asked for. It perfectly handles the case of a
repeating SIGFPE (blocked) followed by some other
thread unmapping a page of instructions or data that
turns the SIGFPE into a SIGSEGV.
next prev parent reply other threads:[~2003-11-27 16:01 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-11-26 21:53 Never mind. Re: Signal left blocked after signal handler Albert Cahalan
2003-11-27 9:11 ` Ingo Oeser
2003-11-27 15:45 ` Albert Cahalan [this message]
2003-11-27 17:26 ` Jörn Engel
-- strict thread matches above, loose matches on Subject: below --
2003-11-26 17:39 Bruce Perens
2003-11-26 17:55 ` Linus Torvalds
[not found] ` <3FC4ED5F.4090901@perens.com>
[not found] ` <3FC4EF24.9040307@perens.com>
[not found] ` <3FC4F248.8060307@perens.com>
2003-11-26 18:45 ` Never mind. " Linus Torvalds
2003-11-26 19:04 ` Bruce Perens
2003-11-26 19:14 ` Linus Torvalds
2003-11-26 19:52 ` Jamie Lokier
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=1069947938.722.437.camel@cube \
--to=albert@users.sf.net \
--cc=bruce@perens.com \
--cc=ioe-lkml@rameria.de \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.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