The branch main has been updated by melifaro:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=692e19cf519578176d51d4c1001b01b1f355c1de

commit 692e19cf519578176d51d4c1001b01b1f355c1de
Author:     Alexander V. Chernikov <melif...@freebsd.org>
AuthorDate: 2023-01-13 10:11:26 +0000
Commit:     Alexander V. Chernikov <melif...@freebsd.org>
CommitDate: 2023-01-13 10:22:40 +0000

    netlink: add netlink to GENERIC@amd64
    
    Netlink is a communication protocol defined in RFC 3549. It is async,
    TLV-based protocol, providing 1-1 and 1-many communications between kernel
    and userland. Netlink is currently used in Linux kernel to modify, read and
    subscribe for nearly all networking states. Interface state, addresses, 
routes,
    firewall, rules, fibs, etc, are controlled via Netlink.
    
    Netlink support was added in D36002. It has got a number of improvements and
    first customers since then:
    * net/bird2 got netlink support, enabling route multipath in FreeBSD
    * netlink-based devd notifications are being worked on ( D37574 ).
    * linux(4) fully supports and depends on Netlink
    
    Enabling Netlink in GENERIC targets two goals.
    The first one is to provide stability for the third-party userland 
applications,
    so they can rely on the fact that netlink always exists since 14.0 and 
potentially 13.2.
    Loadable module makes life of the app delepers harder. For example, 
`net/bird2` can be
    either build with netlink or rtsock support, but not both.
    
    The second goal is to enable gradual conversion of the base userland tools
    to use netlink(4) interfaces. Converting tools like netstat (D36529), route,
    ifconfig one-by-one simplifies testing and addressing the feedback.
    Othewise, switching all base to use netlink at once may be too big of a 
leap.
    
    This change targets amd64, the other architectures will follow soon.
    
    Differential Revision: https://reviews.freebsd.org/D37783
---
 sys/amd64/conf/GENERIC | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC
index 9178abba36cc..56b881d80a52 100644
--- a/sys/amd64/conf/GENERIC
+++ b/sys/amd64/conf/GENERIC
@@ -31,6 +31,7 @@ options       VIMAGE                  # Subsystem 
virtualization, e.g. VNET
 options        INET                    # InterNETworking
 options        INET6                   # IPv6 communications protocols
 options        IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
+options                NETLINK                 # netlink(4) support
 options                ROUTE_MPATH             # Multipath routing support
 options                FIB_ALGO                # Modular fib lookups
 options        TCP_OFFLOAD             # TCP offload

Reply via email to