Date: Thu, 17 Mar 2011 09:54:07 +0800 From: David Xu <davidxu@freebsd.org> To: Yuri <yuri@rawbw.com> Cc: Garrett Cooper <yanegomi@gmail.com>, freebsd-hackers@freebsd.org, standards@freebsd.org Subject: Re: Is pthread_cond_signal(3) man page correct? Message-ID: <4D8169BF.6090503@freebsd.org> In-Reply-To: <4D80D5E0.5080302@rawbw.com> References: <4D6ABA14.80208@rawbw.com> <4D6AC17A.7020505@rawbw.com> <4D6B01DB.9090909@freebsd.org> <4D80D5E0.5080302@rawbw.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2011/03/16 23:23, Yuri wrote: > On 02/27/2011 18:00, David Xu wrote: >> I think in normal case, pthread_cond_signal will wake up one thread, >> but other events for example, UNIX signal and fork() may interrupt >> a thread sleeping in kernel, and cause pthread_cond_wait to return >> to userland, this is called spurious wakeup, and other events, I >> can not think of yet, but I believe they exist. >> > > Does this mean that pthread_cond_signal can also return EINTR? This > isn't in pthread_cond_signal(3) either. > No, it will return zero, returning EINTR is not allowed. > Is this the case that all system calls should be assumed to be able to > return EINTR or only those that have EINTR in their man pages? > > Yuri >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D8169BF.6090503>