Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Jun 2010 09:13:14 -0700
From:      Matthew Jacob <mj@feral.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        svn-src-head@freebsd.org, Ed Schouten <ed@80386.nl>
Subject:   Re: svn commit: r209595 - head/sys/kern
Message-ID:  <4C2B6D1A.2060302@feral.com>
In-Reply-To: <201006301205.14133.jhb@freebsd.org>
References:  <201006292044.o5TKiJd7031766@svn.freebsd.org> <201006300934.47629.jhb@freebsd.org> <4C2B4DC6.1050404@feral.com> <201006301205.14133.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote:
> On Wednesday 30 June 2010 9:59:34 am Matthew Jacob wrote:
>   
>> Excuse my ignorance, but aren't signals supposed to be to processes, not 
>> specific threads?
>>     
>
> Not for synchronous events.  For example, when you get a segfault due to a
> NULL pointer the SIGSEGV is sent to the thread that actually segfaulted, not
> any random thread in the process.  Similarly for floating-point exceptions,
> etc.  POSIX also mandates this for SIGPIPE as you can see from this
> description of 'EPIPE' from write(2) and fflush(3):
>
> [EPIPE]
>     An attempt is made to write to a pipe or FIFO that is not open for
>     reading by any process, or that only has one end open. A SIGPIPE signal
>     shall also be sent to the thread.
>
> (Note thread, not process, in other places the language uses process, but it
> specifically uses thread here.)
>
>   

Thanks!




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C2B6D1A.2060302>