unit test `task_test` fails intermittently under TSAN
There are two failure modes of task_test
unit test when running with TSAN.
The first happens in unit:gcc:tsan
:
lib/isc/tests/task_test:main -> broken: Dubious test program: reported all tests as passed but returned exit code 66 [13.181s]
----- lib/isc/tests/task_test:main -----
TAP version 13
1..13
ok 1 - manytasks
ok 2 - all_events
ok 3 - basic
ok 4 - create_task
ok 5 - pause_unpause
ok 6 - post_shutdown
ok 7 - privilege_drop
ok 8 - privileged_events
ok 9 - purge
ok 10 - purgeevent
ok 11 - purgerange
ok 12 - task_shutdown
ok 13 - task_exclusive
# ok - tests
lib/isc/tests/task_test:main -> passed
R:FAIL:status:1
The second happens in unit:clang:tsan
and unit:gcc:asan
:
lib/isc/tests/task_test:main -> broken: Received signal 6 [14.000s]
----- lib/isc/tests/task_test:main -----
1..13
ok 1 - manytasks
ok 2 - all_events
ok 3 - basic
ok 4 - create_task
ok 5 - pause_unpause
ok 6 - post_shutdown
ok 7 - privilege_drop
ok 8 - privileged_events
ok 9 - purge
ok 10 - purgeevent
ok 11 - purgerange
ok 12 - task_shutdown
ok 13 - task_exclusive
# ok - tests
lib/isc/tests/task_test:main -> passed
R:FAIL:status:1