0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-11-17 16:48:43 +00:00
bird/sysdep/linux
Ondrej Zajicek (work) e818f16448 Netlink: Enable strict checking for KRT dumps
Add strict checking for netlink KRT dumps to avoid PMTU cache records
from FNHE table dump along with KRT.

Linux Kernel added FNHE table dump to the netlink API in patch:

8d3b68cd37.1561131177.git.sbrivio@redhat.com/

Therefore, since Linux 5.3 these route cache entries are dumped together
with regular routes during periodic KRT scans, which in some cases may be
huge amount of useless data. This can be avoided by using strict checking
for netlink dumps:

https://lore.kernel.org/netdev/20181008031644.15989-1-dsahern@kernel.org/

The patch mitigates the risk of receiving unknown and potentially large
number of FNHE records that would block BIRD I/O in each sync. There is a
known issue caused by the GRE tunnels on Linux that seems to be creating
one FNHE record for each destination IP address that is routed through
the tunnel, even when the PMTU equals to GRE interface MTU.

Thanks to Tomas Hlavacek for the original patch.
2022-01-14 21:53:40 +01:00
..
krt-sys.h Filter refactoring: dropped the recursion from the interpreter 2019-02-20 22:30:54 +01:00
Makefile Unit Testing for BIRD 2016-11-09 16:36:34 +01:00
netlink.c Netlink: Enable strict checking for KRT dumps 2022-01-14 21:53:40 +01:00
netlink.Y Dynamic attributes definition split whether it is bitmask or not. 2019-07-03 00:00:11 +02:00
sysio.h IO: Support nonlocal bind in socket interface 2022-01-08 19:02:31 +01:00
syspriv.h Minor code cleanups 2016-11-08 17:46:29 +01:00