Skip to content

make (named_server_t).reload_status atomic

WARNING: ThreadSanitizer: data race Write of size 4 at 0x000000000001 by thread T1: #0 view_loaded bin/named/server.c:9678:25 #1 call_loaddone lib/dns/zt.c:308:3 #2 doneloading lib/dns/zt.c:582:3 #3 zone_asyncload lib/dns/zone.c:2322:3 #4 (closed) dispatch lib/isc/task.c:1152:7 #5 (closed) run lib/isc/task.c:1344:2

Previous read of size 4 at 0x000000000001 by thread T2:
#0 named_server_status bin/named/server.c:11903:14
#1 named_control_docommand bin/named/control.c:272:12
#2 control_command bin/named/controlconf.c:390:17
#3 dispatch lib/isc/task.c:1152:7
#4 run lib/isc/task.c:1344:2

Location is heap block of size 409 at 0x000000000011 allocated by main thread:
#0 malloc <null>
#1 default_memalloc lib/isc/mem.c:713:8
#2 mem_get lib/isc/mem.c:622:8
#3 mem_allocateunlocked lib/isc/mem.c:1268:8
#4 isc___mem_allocate lib/isc/mem.c:1288:7
#5 isc__mem_allocate lib/isc/mem.c:2453:10
#6 isc___mem_get lib/isc/mem.c:1037:11
#7 isc__mem_get lib/isc/mem.c:2432:10
#8 named_server_create bin/named/server.c:9978:27
#9 setup bin/named/main.c:1256:2
#10 main bin/named/main.c:1523:2

Thread T1 (running) created by main thread at:
#0 pthread_create <null>
#1 isc_thread_create lib/isc/pthreads/thread.c:73:8
#2 isc_taskmgr_create lib/isc/task.c:1434:3
#3 create_managers bin/named/main.c:915:11
#4 setup bin/named/main.c:1223:11
#5 main bin/named/main.c:1523:2

Thread T2 (running) created by main thread at:
#0 pthread_create <null>
#1 isc_thread_create lib/isc/pthreads/thread.c:73:8
#2 isc_taskmgr_create lib/isc/task.c:1434:3
#3 create_managers bin/named/main.c:915:11
#4 setup bin/named/main.c:1223:11
#5 main bin/named/main.c:1523:2

SUMMARY: ThreadSanitizer: data race bin/named/server.c:9678:25 in view_loaded

(cherry picked from commit b00ba7ac)

Closes #2180 (closed)

Merge request reports