Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Aug 1997 15:00:11 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        ache@nagual.pp.ru (=?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?=)
Cc:        terry@lambert.org, sos@sos.freebsd.dk, current@FreeBSD.ORG
Subject:   Re: siginterrupt (was Re: Error in sleep !)
Message-ID:  <199708122200.PAA07903@phaeton.artisoft.com>
In-Reply-To: <Pine.BSF.3.96.970813014952.331A-100000@lsd.relcom.eu.net> from "=?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?=" at Aug 13, 97 01:54:52 am

next in thread | previous in thread | raw e-mail | index | archive | help
> > By default, in traditional BSD, after a signal, the call was
> > restarted.
> > 
> > This man page is incorrect about the default for FreeBSD; so
> > is the signal man page.
> 
> As I check, man page says that it will be restarted for FreeBSD too.
> What is incorrect here? I just check signal.c and see that SA_RESTART
> is set unless expicitly disabled by siginterrupt(3)...

The claim is that FreeBSD defaults have been brought into concordance
with POSIX.  And the man pages have not been updated.

To the original poster:

The system call restart of a sleep(3) does *not* guarantee that the
elapsed time is subtracted from the argument when the restart is
initiated (ie: if you sleep for 2 of 3 seconds, get a signal, and
restart, the restart will likely be for another 3 seconds -- not
the remaining 1).  So depending on this behaviour is probably an
error, in any case.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



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