bind9/lib/isc
Witold Kręcicki 23bd04d2f1 Make isc_task_pause/isc_task_unpause thread safe.
isc_task_pause/unpause were inherently thread-unsafe - a task
could be paused only once by one thread, if the task was running
while we paused it it led to races. Fix it by making sure that
the task will pause if requested to, and by using a 'pause reference
counter' to count task pause requests - a task will be unpaused
iff all threads unpause it.

Don't remove from queue when pausing task - we lock the queue lock
(expensive), while it's unlikely that the task will be running -
and we'll remove it anyway in dispatcher
2020-02-18 09:22:04 +00:00
..
include Added atomic_compare_exchange_strong_acq_rel macro 2020-02-16 18:09:19 +01:00
netmgr Reformat using the new rules 2020-02-14 09:31:05 +01:00
pthreads Reformat using the new rules 2020-02-14 09:31:05 +01:00
tests Reformat using the new rules 2020-02-14 09:31:05 +01:00
unix adjust the clang-format penalties to reduce string breaking 2020-02-17 14:23:58 -08:00
win32 adjust the clang-format penalties to reduce string breaking 2020-02-17 14:23:58 -08:00
.gitignore [master] update gitignore files; use rev-parse to get srcid 2014-06-17 13:49:30 -07:00
aes.c apply the modified style 2020-02-13 15:05:06 -08:00
api prep 9.15.8 2020-01-16 08:01:20 +00:00
app.c Replace non-loop usage of atomic_compare_exchange_weak with strong variant 2020-02-16 18:09:19 +01:00
assertions.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
astack.c apply the modified style 2020-02-13 15:05:06 -08:00
backtrace-emptytbl.c apply the modified style 2020-02-13 15:05:06 -08:00
backtrace.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
base32.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
base64.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
bind9.c Use coccinelle to remove explicit '#include <config.h>' from the source files 2019-03-08 15:15:05 +01:00
buffer.c apply the modified style 2020-02-13 15:05:06 -08:00
bufferlist.c apply the modified style 2020-02-13 15:05:06 -08:00
commandline.c apply the modified style 2020-02-13 15:05:06 -08:00
counter.c apply the modified style 2020-02-13 15:05:06 -08:00
crc64.c apply the modified style 2020-02-13 15:05:06 -08:00
entropy.c apply the modified style 2020-02-13 15:05:06 -08:00
entropy_private.h Replace custom isc_u?intNN_t types with C99 u?intNN_t types 2018-08-08 09:37:28 +02:00
error.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
event.c apply the modified style 2020-02-13 15:05:06 -08:00
fsaccess.c apply the modified style 2020-02-13 15:05:06 -08:00
hash.c apply the modified style 2020-02-13 15:05:06 -08:00
heap.c apply the modified style 2020-02-13 15:05:06 -08:00
hex.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
hmac.c apply the modified style 2020-02-13 15:05:06 -08:00
hp.c apply the modified style 2020-02-13 15:05:06 -08:00
ht.c apply the modified style 2020-02-13 15:05:06 -08:00
httpd.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
iterated_hash.c apply the modified style 2020-02-13 15:05:06 -08:00
Kyuafile regen master 2017-12-29 01:44:18 +00:00
lex.c apply the modified style 2020-02-13 15:05:06 -08:00
lfsr.c apply the modified style 2020-02-13 15:05:06 -08:00
lib.c apply the modified style 2020-02-13 15:05:06 -08:00
log.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
Makefile.in Add isc_uv_export()/isc_uv_import() functions to libuv compatibility layer. 2020-01-13 10:52:07 -08:00
md.c apply the modified style 2020-02-13 15:05:06 -08:00
mem.c adjust the clang-format penalties to reduce string breaking 2020-02-17 14:23:58 -08:00
mem_p.h retain a minimal "methods" struct in the mctx 2018-10-18 09:19:12 +00:00
mutexblock.c apply the modified style 2020-02-13 15:05:06 -08:00
netaddr.c apply the modified style 2020-02-13 15:05:06 -08:00
netscope.c apply the modified style 2020-02-13 15:05:06 -08:00
nonce.c apply the modified style 2020-02-13 15:05:06 -08:00
openssl_shim.c apply the modified style 2020-02-13 15:05:06 -08:00
openssl_shim.h Use clang-tidy to add curly braces around one-line statements 2020-02-13 22:07:21 +01:00
parseint.c apply the modified style 2020-02-13 15:05:06 -08:00
pk11.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
pk11_result.c apply the modified style 2020-02-13 15:05:06 -08:00
pool.c apply the modified style 2020-02-13 15:05:06 -08:00
portset.c apply the modified style 2020-02-13 15:05:06 -08:00
queue.c apply the modified style 2020-02-13 15:05:06 -08:00
quota.c apply the modified style 2020-02-13 15:05:06 -08:00
radix.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
random.c apply the modified style 2020-02-13 15:05:06 -08:00
ratelimiter.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
regex.c apply the modified style 2020-02-13 15:05:06 -08:00
region.c apply the modified style 2020-02-13 15:05:06 -08:00
result.c apply the modified style 2020-02-13 15:05:06 -08:00
rwlock.c Replace non-loop usage of atomic_compare_exchange_weak with strong variant 2020-02-16 18:09:19 +01:00
serial.c apply the modified style 2020-02-13 15:05:06 -08:00
siphash.c apply the modified style 2020-02-13 15:05:06 -08:00
sockaddr.c apply the modified style 2020-02-13 15:05:06 -08:00
stats.c apply the modified style 2020-02-13 15:05:06 -08:00
string.c apply the modified style 2020-02-13 15:05:06 -08:00
symtab.c apply the modified style 2020-02-13 15:05:06 -08:00
task.c Make isc_task_pause/isc_task_unpause thread safe. 2020-02-18 09:22:04 +00:00
task_p.h Use clang-format to reformat the source files 2020-02-12 15:04:17 +01:00
taskpool.c apply the modified style 2020-02-13 15:05:06 -08:00
timer.c Reformat using the new rules 2020-02-14 09:31:05 +01:00
timer_p.h Update license headers to not include years in copyright in all applicable files 2018-02-23 10:12:02 +01:00
tm.c apply the modified style 2020-02-13 15:05:06 -08:00
version.c Use clang-format to reformat the source files 2020-02-12 15:04:17 +01:00
xoshiro128starstar.c apply the modified style 2020-02-13 15:05:06 -08:00