Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-05-30 | Merge commit 'f15f2fcee7eeb5a100bd204a0e67018e25953420' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '1c30b689ddd032ef8000fb7836348a48ba3184ff' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '702c04fbef222e802ca4dfac645dc75ede522db6' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '337c04c45e1472d6d9b531a3c55f1f2d30ebf308' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '17f91f9e6e70f7e3f29502e854823c0d48571eaa' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit 'cf07d8ad79273a3bbf0617c17e438602e4b64ece' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit 'f2f3163f6c3fba7f9ef03640d7b2f6323873d2cc' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit 'ef6a903e6f44b467f9606018446095521ad01ef1' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '0d0f6554a5c233bf2bf830ae319191c4b1808d49' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '80272d4b64a38ee6f04a1c4e8566cac3a2293176' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '652be92a21f5575e5f74f6abe98eb4200b86776c' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '4a23ede2b056a41456790cc20a0c3d92a7137693' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit 'ebd807c0b8eb0b7a3dc3371cd4c87ae886c00885' into haugesund | Maria Matejka | |
2022-05-30 | Merge commit '692055e3df6cc9f0d428d3b0dd8cdd8e825eb6f4' into haugesund-to-2.0 | Maria Matejka | |
2022-05-26 | Moved nexthop from struct rta to extended attribute. | Maria Matejka | |
This doesn't do anything more than to put the whole structure inside adata. The overall performance is certainly going downhill; we'll optimize this later. Anyway, this is one of the latest items inside rta and in several commits we may drop rta completely and move to eattrs-only routes. | |||
2022-05-04 | Moved route source attribute (RTS_*) to eattrs | Maria Matejka | |
2022-05-04 | Removing the route scope attribute. Use custom attributes instead. | Maria Matejka | |
The route scope attribute was used for simple user route marking. As there is a better tool for this (custom attributes), the old and limited way can be dropped. | |||
2022-05-04 | Moved route preference to eattrs | Maria Matejka | |
2022-05-04 | Conf: Allowing keyword redefinition | Maria Matejka | |
Some tokens are both keywords and symbols. For now, we allow only specific keywords to be redefined; in future, more of the keywords may be added to this category. The redefinable keywords must be specified in any .Y file as follows: toksym: THE_KEYWORD ; See proto/bgp/config.Y for an example. Also dropped a lot of unused terminals. | |||
2022-05-04 | Explicit definition structures of route attributes | Maria Matejka | |
Changes in internal API: * Every route attribute must be defined as struct ea_class somewhere. * Registration of route attributes known at startup must be done by ea_register_init() from protocol build functions. * Every attribute has now its symbol registered in a global symbol table defined as SYM_ATTRIBUTE * All attribute ID's are dynamically allocated. * Attribute value custom formatting hook is defined in the ea_class. * Attribute names are the same for display and filters, always prefixed by protocol name. Also added some unit testing code for filters with route attributes. | |||
2022-05-04 | Replaced boilerplate eattr allocation by ea_set_attr() | Maria Matejka | |
2022-05-04 | Filters always allocate from tmp_linpool | Maria Matejka | |
2022-05-04 | Splitting route data structures out to lib | Maria Matejka | |
2022-05-04 | Unified attribute and filter types | Maria Matejka | |
This commit removes the EAF_TYPE_* namespace completely and also for route attributes, filter-based types T_* are used. This simplifies fetching and setting route attributes from filters. Also, there is now union bval which serves as an universal value holder instead of private unions held separately by eattr and filter code. | |||
2022-05-04 | Filter: Bitfield eattrs reading / writing moved to filter code | Maria Matejka | |
Before this change, fetch-update-write and bitmasking was hardcoded in attribute access code cased by the attribute type. Several filter instructions are used to do it instead. As this is certainly going to be a little bit slower than before, the switch block in attribute access code should be completely removed in near future, helping with both performance and code cleanliness. The user interface should have stayed intact. | |||
2022-04-06 | Protocols have their own explicit init routines | Maria Matejka | |
2022-03-16 | Netlink: Remove superfluous sysdep/linux/netlink.c.orig | Ondrej Zajicek (work) | |
Thanks to Vincent Bernat for notice. | |||
2022-03-09 | Merge commit 'f81702b7' into haugesund | Maria Matejka | |
2022-03-09 | Merge commit '0767a0c2' into haugesund | Maria Matejka | |
Conflicts: nest/rt-table.c | |||
2022-03-09 | Fixed a static assert in page allocator | Maria Matejka | |
2022-03-09 | Fixed a static assert in page allocator | Maria Matejka | |
2022-03-09 | Merge commit '1b9189d5' into haugesund | Maria Matejka | |
2022-03-09 | Merge commit '60880b539b8886f76961125d89a265c6e1112b7a' into haugesund | Maria Matejka | |
2022-03-09 | Merge commit 'e42eedb9' into haugesund | Maria Matejka | |
2022-03-09 | Merge commit '5cff1d5f' into haugesund | Maria Matejka | |
Conflicts: proto/bgp/attrs.c proto/pipe/pipe.c | |||
2022-03-09 | Merge commit 'd5a32563' into haugesund | Maria Matejka | |
2022-03-09 | Fixed resource initialization in unit tests | Maria Matejka | |
2022-03-09 | Merge commit '0c59f7ff' into haugesund | Maria Matejka | |
2022-03-09 | Revert "Bound allocated pages to resource pools with page caches to avoid ↵ | Maria Matejka | |
unnecessary syscalls" This reverts commit 7f0e59820899c30a243c18556ce2e3fb72d6d221. | |||
2022-03-09 | Revert "Multipage allocation" | Maria Matejka | |
This reverts commit 6cd37713781a3092f8166b2178fae35cbfec1e28. | |||
2022-03-09 | Single-threaded version of sark-branch memory page management | Maria Matejka | |
2022-03-02 | Introducing an universal temporary linpool flushed after every task | Maria Matejka | |
2022-03-02 | Merge commit '2c13759136951ef0e70a3e3c2b2d3c9a387f7ed9' into haugesund | Maria Matejka | |
2022-02-09 | NEWS and version update | Ondrej Zajicek (work) | |
2022-02-08 | Alloc: Use posix_memalign() instead of aligned_alloc() | Ondrej Zajicek (work) | |
For compatibility with older systems use posix_memalign(). We can switch to aligned_alloc() when we commit to C11 for multithreading. | |||
2022-02-08 | Netlink: Minor cleanup | Ondrej Zajicek (work) | |
2022-01-17 | Netlink: Add option to specify netlink socket receive buffer size | Ondrej Zajicek (work) | |
Add option 'netlink rx buffer' to specify netlink socket receive buffer size. Uses SO_RCVBUFFORCE, so it can override rmem_max limit. Thanks to Trisha Biswas and Michal for the original patches. | |||
2022-01-15 | Netlink: Add another workaround for older kernel headers | Ondrej Zajicek (work) | |
Unfortunately, SOL_NETLINK is both recently added and arch-dependent, so we cannot just define it. | |||
2022-01-14 | Netlink: Add workaround for older kernel headers | Ondrej Zajicek (work) | |
2022-01-14 | Netlink: Enable strict checking for KRT dumps | Ondrej Zajicek (work) | |
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: https://patchwork.ozlabs.org/project/netdev/patch/8d3b68cd37fb5fddc470904cdd6793fcf480c6c1.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. |