sleep(3) sometimes too sleepy on FreeBSD 8.0?

John Marshall john.marshall at riverwillow.com.au
Thu Feb 25 11:14:16 UTC 2010


On Wed, 24 Feb 2010, 18:38 +0200, Kostik Belousov wrote:
> I would be interested if you tried latest RELENG_8 kernel, in regard
> the sigsuspend(2) returning with EINTR without a signal delivered.

I have just finished building RELENG_8 from a fresh csup on one of the
three servers: I plan to isntall it in the morning (bed time now).

Another thing I did was to patch the sendmail build config on another
one of the servers, and rebuild, so that sendmail's sleep() would simply
call FreeBSD's nanosleep(2).  I have asked on comp.mail.sendmail if
anyone knows why the sendmail build only enbles use of nanosleep on
Solaris.

SLEEPING (HAPPY) QUEUE RUNNER - 8.14.4 Build on FreeBSD 8.0
(gdb) bt
#0  0x2833f6eb in sigsuspend () from /lib/libc.so.7
#1  0x2833e050 in sigpause () from /lib/libc.so.7
#2  0x28334fae in pause () from /lib/libc.so.7
#3  0x080cc975 in sleep ()
#4  0x08099d96 in run_work_group ()
#5  0x0809a016 in runqueue ()
#6  0x08055379 in main ()

SLEEPING (HAPPY) QUEUE RUNNER - 8.14.4 Hacked Build on FreeBSD 8.0
(gdb) bt
#0  0x283c43f7 in nanosleep () from /lib/libc.so.7
#1  0x080cbf7a in sleep ()
#2  0x08099c81 in run_work_group ()
#3  0x08099eef in runqueue ()
#4  0x080553bd in main ()

After the RELENG_8 upgrade in the morning I expect to have:

SERVER 1
 - FreeBSD 8.0-RELEASE-p2
 - Sendmail 8.14.4 (modified so that sleep() uses nanosleep(2))

SERVER 2
 - FreeBSD 8.0-RELEASE-p2
 - Sendmail 8.14.4

SERVER 3
 - FreeBSD 8-STABLE
 - Sendmail 8.14.4

...and then watch sendmail on all three.

-- 
John Marshall
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20100225/0cb2f0a7/attachment.pgp


More information about the freebsd-stable mailing list