- Dec 19, 2024
-
-
Maria Matejka authored
There was a missing check for a NULL return value. Also fixed an indenting error. Thanks to Radu Anghel for reporting it: https://bird.network.cz/pipermail/bird-users/2024-December/017977.html
-
- Dec 17, 2024
-
- Dec 16, 2024
-
-
Jakub Ružička authored
This mirrors Debian bird2 change, gcrypt flavor is deprecated. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1074257
-
Katerina Kubecova authored
-
Maria Matejka authored
The show-memory command wasn't showing the consumed memory properly because it ignored the journal size. Now it does.
-
Maria Matejka authored
Some systems do have malloc.h but don't have mallopt.
-
Maria Matejka authored
The original values were way too low but what was set later was too high and caused memory buildup upon startup.
-
- Dec 15, 2024
-
-
Maria Matejka authored
When many changes are done during reconfiguration, the table may start pruning old routes before everything is settled down, slowing down not only the reconfiguration, but also the shutdown process.
-
Maria Matejka authored
In our usecase, these are impossibly greedy because we often free memory in a different thread than where we allocate, forcing the default allocator to scatter the used memory all over the place.
-
- Dec 14, 2024
-
-
Maria Matejka authored
-
Maria Matejka authored
-
- Dec 13, 2024
-
-
Katerina Kubecova authored
There was a suspicion that maybe the BIRD 3 version of ROA gets the digesting wrong. This test covers the nastiest cornercases we could think about, so now we can expect it to be right.
-
Maria Matejka authored
-
Maria Matejka authored
v2.16
-
Katerina Kubecova authored
We have quite large critical sections and we need to allocate inside them. This is something to revise properly later on, yet for now, instead of slowly but surely growing the virtual memory address space, it's better to optimize the cold page cache pickup and count situations where this happened inside the critical section.
-
Maria Matejka authored
-
Maria Matejka authored
-
Maria Matejka authored
-
Maria Matejka authored
The resource dumping routines needed to be updated in v3 to use the new API introduced in v2. Conflicts: filter/f-util.c filter/filter.c lib/birdlib.h lib/event.c lib/mempool.c lib/resource.c lib/resource.h lib/slab.c lib/timer.c nest/config.Y nest/iface.c nest/iface.h nest/locks.c nest/neighbor.c nest/proto.c nest/route.h nest/rt-attr.c nest/rt-table.c proto/bfd/bfd.c proto/bmp/bmp.c sysdep/unix/io.c sysdep/unix/krt.c sysdep/unix/main.c sysdep/unix/unix.h
-
- Dec 12, 2024
-
-
Maria Matejka authored
-
Katerina Kubecova authored
The EAttr ID space is dense so we can just walk once, sweep the whole input and go home. There is a little bit of memory inefficiency in allocating always the largest possible block, yet it isn't too bad. There are also unit tests for this.
-
Maria Matejka authored
When socket dropped before finished, it failed to cleanup.
-
- Dec 11, 2024
-
-
Maria Matejka authored
Not having this led to bus errors on unaligned atomic u64 access on architectures with 4B pointers.
-
Maria Matejka authored
-
- Dec 10, 2024
-
-
Maria Matejka authored
-
Maria Matejka authored
-
Maria Matejka authored
-
Maria Matejka authored
-
Maria Matejka authored
Protocol state propagation collision, shutdown collision.
-
Maria Matejka authored
Dropped hopefully last remnants of BMP directly accessing BGP structures.
-
Maria Matejka authored
-
Katerina Kubecova authored
The function lfjour_cleanup_hook() was scheduled each time any of the journal recipients reached end of a block of journal items or read all of journal items. Because lfjour_cleanup_hook() can clean only journal items every recipient has processed, it was often called uselessly. This commit restricts most of the unuseful scheduling. Only some recipients are given a token alowing them to try to schedule the cleanup hook. When a recipient wants to schedule the cleanup hook, it checks whether it has a token. If yes, it decrements number of tokens the journal has given (issued_tokens) and discards its own token. If issued_tokens reaches zero, the recipient is allowed to schedule the cleanup hook. There is a maximum number of tokens a journal can give to its recipients (max_tokens). A new recipient is given a token in its init, unless the maximum number of tokens is reached. The rest of tokens is given to customers in lfjour_cleanup_hook(). In the cleanup hook, the issued_tokens number is increased in order to avoid calling the hook before it finishes. Then, tokens are given to the slowest recipients (but never to more than max_token recipients). Before leaving lfjour_cleanup_hook(), the issued_tokens number is decreased back. If no other tokens are given, we have to make sure the lfjour_cleanup_hook will be called again. If every item in journal was read by every recipient, tokens are given to random recipients. If all recipients with tokens managed to finish until now, we give the token to the first unfinished customer we find, or we just call the hook again.
-
Maria Matejka authored
There was a leaking stack pointer to the global memory. Fixed by making that temporary structure thread local static.
-
- Dec 06, 2024
-
-
Jakub Ružička authored
I: bird3: spelling-error-in-binary "an other" "another" [usr/sbin/bird] I: bird3: spelling-error-in-binary Reseting Resetting [usr/sbin/bird] I: bird3: spelling-error-in-binary authenication authentication [usr/sbin/bird] I was unable to fix the following: I: bird3: spelling-error-in-binary upto up to [usr/sbin/bird]
-
Jakub Ružička authored
Lintian proclaims this is an essential package.
-
Jakub Ružička authored
-
Jakub Ružička authored
This should reportedly fix test issues on ARM.
-
Jakub Ružička authored
-
Jakub Ružička authored
Also reformat using wrap-and-sort -bast
-
- Dec 05, 2024
-
-
Maria Matejka authored
-