Re: named crashes on assertion in rbtdb.c on sparc64/SMP

From: KOT MATPOCKuH <matpockuh_at_gmail.com>
Date: Fri, 8 Jul 2011 23:17:20 +0400
2011/7/8 Marius Strobl <marius_at_alchemy.franken.de>:

> Please try the following:
> a) Instead of the base BIND use the dns/bind96 port. The native build
>   of the latter defaults to not using the ISC atomic implementation
>   on sparc64 (and arm) and should properly enable the alternative. I
>   can at least start named from bind96-9.6.3.1.ESV.R4.3 with the default
>   configuration on -CURRENT without problems.
dns/bind96? Why not bind98?
As I see dns/bind98 configures without atomic swap operations.
I will try to use dns/bind98 at first :)

> b) Revert the above patch and try the base bind with the following
>   (third) patch:
>   http://people.freebsd.org/~marius/sparc64_isc_atomic.h.diff2
>   That one adds the memory barriers required for reference counting
>   albeit in a sledgehammer-like fashion as the ISC atomic API doesn't
>   allow to distinguish between acquire and release semantics.

Hmmm... With this patch build fails:
root_at_sunrise:/usr/src/lib/bind/dns# make
cc -O2 -pipe  -DVERSION='"9.6.-ESV-R4-P3"' -DHAVE_CONFIG_H
-D_REENTRANT -D_THREAD_SAFE -DLIBINTERFACE=59 -DLIBREVISION=5
-DLIBAGE=1 -DOPENSSL -DUSE_MD5 -DWORDS_BIGENDIAN
-DNS_LOCALSTATEDIR='"/var"' -DNS_SYSCONFDIR='"/etc/namedb"'
-DNAMED_CONFFILE='"/etc/namedb/named.conf"'
-DRNDC_CONFFILE='"/etc/namedb/rndc.conf"'
-DRNDC_KEYFILE='"/etc/namedb/rndc.key"' -I/usr/src/lib/bind/dns/..
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/bind9/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns/include/dst
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns/include
-I/usr/src/lib/bind/dns/../dns
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isccc/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isccfg/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isc/unix/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isc/pthreads/include
 -I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isc/include
-I/usr/src/lib/bind/dns/../isc
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/lwres/unix/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/lwres/include
-I/usr/src/lib/bind/dns/../lwres
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns/include/dst
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns/include
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns
-I/usr/src/lib/bind/dns
-I/usr/src/lib/bind/dns/../../../contrib/bind9/lib/isc/sparc64/include
-std=gnu99  -c /usr/src/lib/bind/dns/../../../contrib/bind9/lib/dns/acache.c
{standard input}: Assembler messages:
{standard input}:13: Error: Illegal operands: invalid membar mask name
{standard input}:2180: Error: Illegal operands: invalid membar mask name
*** Error code 1

> Unlikely, the crash caused by the assertion in _malloc_thread_cleanup()
> was solved with r223369.
Thanks you anyway!

-- 
MATPOCKuH
Received on Fri Jul 08 2011 - 17:17:21 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:15 UTC