0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-11-10 05:08:42 +00:00
bird/lib
Maria Matejka 427177edb7 Logging now doesn't lock with each message
The original logging routines were locking a common mutex. This led to
massive underperformance and unwanted serialization when heavily logging
due to lock contention. Now the logging is lockless, though still
serializing on write() syscalls to the same filedescriptor.

This change also brings in a persistent logging channel structures and
thus avoids writing into active configuration data structures during
regular run.
2023-09-24 20:43:04 +02:00
..
a-path_test.c Removed config reparsing from unrelated tests 2023-01-19 11:00:38 +01:00
a-path.c Merge commit '2e5bfeb73ac25e236a24b6c1a88d0f2221ca303f' into thread-next 2022-07-13 14:14:37 +02:00
a-set_test.c Removed config reparsing from unrelated tests 2023-01-19 11:00:38 +01:00
a-set.c Merge commit '2e5bfeb73ac25e236a24b6c1a88d0f2221ca303f' into thread-next 2022-07-13 14:14:37 +02:00
alloca.h Several minor fixes 2017-02-20 02:26:45 +01:00
attrs.h Merge commit '8478de88' into thread-next 2022-11-07 10:18:19 +01:00
birdlib.h Logging: Abolished stdio in favor of write() to make the logging faster. 2023-09-24 20:40:06 +02:00
bitmap_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
bitmap.c Nest: Use bitmaps to keep track of exported routes 2019-11-26 18:39:25 +01:00
bitmap.h Nest: Use bitmaps to keep track of exported routes 2019-11-26 18:39:25 +01:00
bitops_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
bitops.c Initial commit on integrated BIRD 2015-11-05 12:48:52 +01:00
bitops.h Slab: head now uses bitmask for used/free nodes info instead of lists 2021-03-25 16:47:48 +01:00
blake2-impl.h Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2-kat.h Lib: Add tests for blake2s and blake2b 2021-06-06 16:28:09 +02:00
blake2.h Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2b.c Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2s.c Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
buffer_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
buffer.h Filter: Recursive filter iteration code 2021-02-07 19:21:42 +01:00
checksum_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
checksum.c unsigned [int] -> uint 2015-06-08 02:24:08 +02:00
checksum.h unsigned [int] -> uint 2015-06-08 02:24:08 +02:00
Doc Doc: Rename code documentation files back to Doc 2018-12-14 02:03:42 +01:00
event_test.c Fixed main birdloop init in unit tests 2022-08-01 15:17:41 +02:00
event.c Resource dumps also write out block addresses 2023-04-04 17:00:59 +02:00
event.h Decoupling loops from threads to allow fixed thread count 2023-01-19 11:13:50 +01:00
fib.h FIB is a data structure generic enough to be in lib 2022-05-04 15:37:41 +02:00
fletcher16_test.c Fletcher16 test fixed to work at bigendian architectures. 2020-04-05 01:15:26 +02:00
fletcher16.h OSPF: Redesign LSA checksumming 2015-05-01 14:40:56 +02:00
flowspec_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
flowspec.c Flowspec: Documentation update 2021-05-18 20:41:01 +02:00
flowspec.h Flowspec: Fix values for true/false operators 2021-05-14 18:44:52 +02:00
hash_test.c Resource pools are now bound with domains. 2023-04-24 10:33:28 +02:00
hash.h Hash: iterable now per partes by an iterator 2022-07-11 16:07:09 +02:00
heap_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
heap.h BFD work in progress. 2013-09-16 23:57:40 +02:00
idm.c ID Maps are checking whether their pool is locked 2023-05-11 11:41:01 +02:00
idm.h ID Maps are checking whether their pool is locked 2023-05-11 11:41:01 +02:00
io-loop.h Resource pools are now bound with domains. 2023-04-24 10:33:28 +02:00
ip_test.c Trie: Simplify network matching code 2021-11-13 21:11:18 +01:00
ip.c Lib: Allow use of 240.0.0.0/4 as a private range 2022-03-16 20:01:18 +01:00
ip.h Moved hostentry to eattr 2022-05-26 14:53:09 +02:00
lists_test.c Lists: Replaced replace_node() by update_node() which is the only use of that function. 2020-05-01 15:19:12 +02:00
lists.c Merge commit '0bb04d5390f21b0c96fc4894ba5d5510c541f0ef' into HEAD 2023-02-07 14:27:23 +01:00
lists.h Merge commit '94eb0858' into thread-next 2022-07-18 12:33:00 +02:00
locking.h Logging now doesn't lock with each message 2023-09-24 20:43:04 +02:00
mac_test.c Lib: Add tests for blake2s and blake2b 2021-06-06 16:28:09 +02:00
mac.c Nest: Allow MAC algorithms to specify min/max key length 2021-06-06 16:28:18 +02:00
mac.h Nest: Allow MAC algorithms to specify min/max key length 2021-06-06 16:28:18 +02:00
macro.h Macro: stringify 2023-02-02 15:57:21 +01:00
Makefile Typed lists: added add_after() and unit tests 2023-04-22 20:48:42 +02:00
md5.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
md5.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
mempool.c Linpool state save and restore refactoring 2023-05-06 10:50:31 +02:00
net.c Net: Replace runtime checks with STATIC_ASSERT() 2023-03-06 11:57:40 +01:00
net.h Net: Replace runtime checks with STATIC_ASSERT() 2023-03-06 11:57:40 +01:00
patmatch_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
patmatch.c Some consts for function arguments 2015-11-24 13:52:26 +01:00
printf_test.c Printf test suite fails on systems with musl libc because tests for "%m" 2023-03-06 11:33:27 +01:00
printf.c Printf variant with a result allocated inside a pool / linpool 2022-03-15 11:21:46 +01:00
rcu.c Refactoring of domains connected to pools 2023-04-25 09:52:28 +02:00
rcu.h Decoupling loops from threads to allow fixed thread count 2023-01-19 11:13:50 +01:00
resource.c Allocation from linpools and slabs requires the appropriate lock to be taken 2023-05-03 21:30:29 +02:00
resource.h Linpool state save and restore refactoring 2023-05-06 10:50:31 +02:00
resource.sgml Fixes for the programmer's manual. 2000-06-08 12:37:21 +00:00
route.h Propagated const through route feed routines 2023-04-04 17:00:58 +02:00
settle.h Fixed various build problems on FreeBSD and/or CLang 2023-01-20 18:31:57 +01:00
sha1.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha1.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha256.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha256.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha512.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha512.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
slab_test.c Slab allocator can free the blocks without knowing the parent structure 2022-04-06 18:14:08 +02:00
slab.c Allocation from linpools and slabs requires the appropriate lock to be taken 2023-05-03 21:30:29 +02:00
slist_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
slists.c Unit Testing for BIRD 2016-11-09 16:36:34 +01:00
slists.h Temporary integrated OSPF commit. 2014-06-26 11:58:57 +02:00
socket.h Socket closing has its dedicated function 2023-04-22 20:48:42 +02:00
string.h Printf variant with a result allocated inside a pool / linpool 2022-03-15 11:21:46 +01:00
strtoul.c Nest: Allow specifying security keys as hex bytes as well as strings 2021-06-06 16:28:18 +02:00
tbf.c Timers: Fix TBF and some last remains 2017-12-07 13:53:42 +01:00
timer.c Logging: Abolished stdio in favor of write() to make the logging faster. 2023-09-24 20:40:06 +02:00
timer.h Protocol shutdown/restart from limits is respecting the loops 2023-02-07 14:28:25 +01:00
tlists_test.c Typed lists: added add_after() and unit tests 2023-04-22 20:48:42 +02:00
tlists.h Typed lists: added add_after() and unit tests 2023-04-22 20:48:42 +02:00
type_test.c Moved route source attribute (RTS_*) to eattrs 2022-05-04 15:39:53 +02:00
type.h Route destination field merged with nexthop attribute; splitting flowspec validation result out. 2022-05-30 14:39:09 +02:00
unaligned.h The MRT protocol 2018-11-20 17:45:35 +01:00
xmalloc.c unsigned [int] -> uint 2015-06-08 02:24:08 +02:00