|
Message-ID: <20141208150031.GD4574@brightrain.aerifal.cx> Date: Mon, 8 Dec 2014 10:00:31 -0500 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: Re: [RFC] EINTR and PC loser-ing library design On Mon, Dec 08, 2014 at 03:45:33PM +0100, Laurent Bercot wrote: > On 08/12/2014 15:32, Rich Felker wrote: > > >The system call restarts (or, formally, it's as if it were never > >interrupted; EINTR only applies to signal _handlers_). > > Could you please provide a pointer to the specification that > guarantees this ? I've never been able to find a normative text that > ensures you will never get EINTR unless you explicitly install a > signal handler without SA_RESTART. I've had a hard time pinning it down too, but that's what all modern (e.g. modern enough to have a working sigaction) implementations do, and it's the obviously correct behavior. I would consider making a request for clarification here, but after what happened with the C locale issue, I'd kinda fear some trolls would appear and insist that EINTR be allowed to happen for no good reason. :( > >> And that happens all the time in asynchronous event loops where you > >>handle signals with a self-pipe. ;) > > > >Only if you have installed interrupting signal handlers. > > Which basically means any signal except SIGCHLD. No. Interrupting means "installed without SA_RESTART". It has nothing to do with which signal it is, but rather how you installed the handler. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.