Unconditional isc_atomic_xadd() in bin/named/client.c in 9.11.6-P1
Summary
In 9.11.6-P1 isc_atomic_xadd() was introduced in bin/named/client.c without conditional flags:
0 client.c mark_tcp_active 405 isc_atomic_xadd(&client->interface->ntcpactive, 1);
1 client.c mark_tcp_active 409 isc_atomic_xadd(&client->interface->ntcpactive, -1);
2 client.c exit_check 557 isc_atomic_xadd(&client->interface->ntcpaccepting, 0) == 0)
3 client.c client_newconn 3349 old = isc_atomic_xadd(&client->interface->ntcpaccepting, -1);
4 client.c client_accept 3481 exit = (isc_atomic_xadd(&client->interface->ntcpactive, 0) >
5 client.c client_accept 3540 isc_atomic_xadd(&client->interface->ntcpaccepting, 1);
BIND version used
9.11.6-P1
Steps to reproduce
Build on BS2000/s390
What is the current bug behavior?
% Undefined symbol(s):
% isc_atomic_xadd
% CBD9924[FATAL]: c89ld: symbol referencing error, no output written to named
Symbol Referenced in
U isc_atomic_xadd client.o
What is the expected correct behavior?
Compilation succeeds like in 9.11.6
Relevant logs and/or screenshots
Configure excerpt:
checking for usable stdatomic.h... no
checking architecture type for atomic operations... noatomic