-
Type: Bug
-
Status: Accepted
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 27 : 13 Dec
-
Labels:
You can speed test with up to 168 threads with no problem. But once I hit 169 threads, ldns will give an assertion.
ods-hsmspeed -r softHSM1 -i 10 -s 1024 -t 169
...
Signer thread #168 started...
ods-hsmspeed: rdata.c:26: ldns_rdf_size: Assertion `rd != ((void *)0)' failed.
Stack trace
#0 0xb7fdb410 in __kernel_vsyscall ()
#1 0xb7e89085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb7e8aa01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb7e8210e in __assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4 0xb7e2ff8b in ldns_rdf_size (rd=0x0) at rdata.c:26
#5 0xb7e415b8 in ldns_rdf2buffer_wire (buffer=0x1f726ea0, rdf=0x0) at host2wire.c:38
#6 0xb7e417c6 in ldns_rr_rdata2buffer_wire (buffer=0x1f726ea0, rr=0x1ef60fa0) at host2wire.c:220
#7 0xb7e45ace in ldns_calc_keytag (key=0x1ef60fa0) at dnssec.c:286
#8 0x08048ea2 in sign (arg=0xbfd07efc) at ../../../libhsm/src/hsmspeed.c:97
#9 0xb7fb74fb in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#10 0xb7f34e5e in clone () from /lib/tls/i686/cmov/libc.so.6
The problem is down in the ldns_rr_rdata2buffer_wire. It do get a DNSKEY RR, but it looks like it cannot loop through the rdata.