Date: Tue, 20 Jun 2000 17:40:22 +0000 (GMT) From: Terry Lambert <tlambert@primenet.com> To: jasone@canonware.com (Jason Evans) Cc: arch@freebsd.org Subject: Re: kernel thread support Message-ID: <200006201740.KAA20126@usr01.primenet.com> In-Reply-To: <20000616144259.Q47268@blitz.canonware.com> from "Jason Evans" at Jun 16, 2000 02:42:59 PM
next in thread | previous in thread | raw e-mail | index | archive | help
I don't know if this has been reported yet. The send-pr system hates my machine because it uses unpublished DNS information. This is posted to arch, since an architectural decision on what the correct behaviour of signal(3) should be: no matter which way the decision goes, it appears to me that libc and libc_r should behave the same way. --- FYI, after I helped someone track down a hanging problem in OpenLDAP, it was pointed out that the libc_r "signal" symbol is omitted in the list of weak exports, and so even if you link with libc_r, you get the libc version. The libc and libc_r versions differ, in that the libc_r version does not restart system calls, while the libc version does. This is apparently a BSD legacy issue with using the non-POSIX signals interface, and getting variant behaviour. It is probably more correct to explicitly use the POSIX interface, and call the sigaction() call directly, with sa_flags = 0, but OpenLDAP and other code is unliekly to change in this regard. Using siginterrupt() didn't help; it is apparently not threads-aware, or there is an order of operations bug in its libc_r implementation. For OpenLDAP, the libc_r version is correct; it permits users to send SIGTERM to the LDAP server to shut it down. This can be fixed by adding "signal.o" to the "HIDDEN_SYSCALLS" variable in the libc_r Makefile. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200006201740.KAA20126>