Date: Wed, 13 Aug 1997 03:07:28 +0400 (MSD) From: =?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?= <ache@nagual.pp.ru> To: Terry Lambert <terry@lambert.org> Cc: sos@sos.freebsd.dk, current@FreeBSD.ORG Subject: Re: siginterrupt (was Re: Error in sleep !) Message-ID: <Pine.BSF.3.96.970813025103.1477A-100000@lsd.relcom.eu.net> In-Reply-To: <199708122240.PAA08551@phaeton.artisoft.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 12 Aug 1997, Terry Lambert wrote: > POSIX says that system calls will not be restarted by default (the > historical System V behaviour for signals). Could you please send exact quote just about this particular thing? Many times POSIX is very unclear or can be misinterpreted. > If FreeBSD has been updated to exhibit POSIX behaviour (the original > poster was claiming it had been), then the signal and siginterrupt > man pages, which claim historical BSD behaviour, are wrong. They > should claim POSIX behaviour instead. Currently siginterrupt and signal man pages says nothing about POSIX conformance, so manpages are right independently of how we interpretate POSIX. > > I still not understand why you decide to connect restartable syscalls with > > sleep(3) implementation. Both old and new sleep(3) variants not depends on > > restartable syscalls. > > The problem is that if I send a normally ignored signal to sleep(1) > after it goes to sleep but before the interval is expired, the > sleep doesn't keep going. POSIX says exactly that _any_ non-blocked and non-ignored signal should terminate sleep(3)/sleep(1) including default no-op signals like ^T, etc. Ignored or blocked signals not affects sleep(3)/sleep(1) doing in both old and new implementations since blocked mask passed to sigpause/signanosleep. -- Andrey A. Chernov <ache@null.net> http://www.nagual.pp.ru/~ache/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.970813025103.1477A-100000>