From nobody Thu Feb 9 16:11:27 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PCMLR3VLHz3plRQ; Thu, 9 Feb 2023 16:11:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PCMLR2gxhz4JYb; Thu, 9 Feb 2023 16:11:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675959087; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j+kpf4CG3IRc6meOmA0QA2L63lJ66cMELu31Ko4O6ek=; b=v67a34W7fTa2N1M0oW4fo5KlU6vkty9wnsnjrh9p0jlsvRMHRZfTuYiTbK6dBNpGUAJ/nO qcCdR1UhNyxP3vK3CduM81qKZSZRLx4BdF8m2xRWXe5/aPpGZ+y2yCDLwArODLXqzz9eaL jczb1F/G9ikAcqt8z8fmW6oiS/JmrjUsj/Wm3QHgEI50XNoKroGC+7A93YflVrWxKRiBFz 7Xa4uW6h2bTB6sD/2M8GP6QJczo9zHHHgJbn9wfuVycd1dMNV4G7pHb4qm8salpQOxZ+jK WvoL8TqeL1xPeBBvUpqA4Dcu7jGAfXyHUo6LKX6z24BPrNp5dZB42GWegF13qQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675959087; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j+kpf4CG3IRc6meOmA0QA2L63lJ66cMELu31Ko4O6ek=; b=MnYJohpp6PINDEN5bPl4T3bvnJF6LxtWPhBTDiUGVTE4rBbA11/kjUii+I629rXLnFc0zS V/WHfHnCAnJTYcYK9LAo+gDj5QmPRizoEC6HmHgFc4yb5ZZujjpVz2y8i8s1QpX/WCIlEW 356ndE24c1rb6VmLaQxrnPX7i40Aie5PGzmJdXumFq/g+mmR701Zb20GASaB93zl17e/1s XLJN167y0sDh0ZnxBA1gaYXLsDq9oEikrivqB2DaWgpZbHTSCvLQ7DKL4QFTZ+3KEIwBzG V97zGdGJAaQBCMFwk48k21pGyy7nYd4Sg2/OVscDzvDgBSbmCWBLApUX25xHeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1675959087; a=rsa-sha256; cv=none; b=X1/yX2NCLzaL1SplCRsG0Ei4SjytDW2fwmksIOwIS/SEhFZzi3PZlpBQn1L+IgSja4/zo4 D1CSMFeVi0bspX+WamzLpeAN5S3g5PP4zZkHVYmQAZ0YoEN8lWxK+5Q1A2euUyGsOz3fff Ngc6FsI+yJDPC9k1E1iors0iPR9XyKgEwsS+ionT6vd1+TB6ohnyFipFcTH5NpWUnIdHNQ 43EkGj4m5r1mJGlbbroAj8em6gUzPxL4tdGITkD14xW4Em+lVVAOIcxLxuRX0uVS3T38GT J2qSTZfMr8DFJB9RRVE6VrS8xybrr4tNGPdxIjJsohUZ9ZBDlfF5MxYvz2MNBw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PCMLR1hGNzjlg; Thu, 9 Feb 2023 16:11:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 319GBRhJ005513; Thu, 9 Feb 2023 16:11:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 319GBRev005512; Thu, 9 Feb 2023 16:11:27 GMT (envelope-from git) Date: Thu, 9 Feb 2023 16:11:27 GMT Message-Id: <202302091611.319GBRev005512@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 6058f6cc48f5 - stable/13 - netlink: add NETLINK to GENERIC. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6058f6cc48f5ec02476bf46693673bd71291a5c0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=6058f6cc48f5ec02476bf46693673bd71291a5c0 commit 6058f6cc48f5ec02476bf46693673bd71291a5c0 Author: Alexander V. Chernikov AuthorDate: 2023-01-31 14:22:11 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-02-09 15:52:09 +0000 netlink: add NETLINK to GENERIC. This is a followup of 692e19cf5195 (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. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D37783 (cherry picked from commit e80699a809a079c4e673940544d6ddd944e8d08e) --- sys/arm/conf/std.armv7 | 1 + sys/arm64/conf/GENERIC | 1 + sys/i386/conf/GENERIC | 1 + sys/powerpc/conf/GENERIC64 | 1 + sys/riscv/conf/GENERIC | 1 + 5 files changed, 5 insertions(+) diff --git a/sys/arm/conf/std.armv7 b/sys/arm/conf/std.armv7 index dbe863d9da92..7cc4adb5bef2 100644 --- a/sys/arm/conf/std.armv7 +++ b/sys/arm/conf/std.armv7 @@ -11,6 +11,7 @@ options INET6 # IPv6 communications protocols options TCP_HHOOK # hhook(9) framework for TCP device crypto # core crypto support options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 +options NETLINK # netlink(4) support options SCTP_SUPPORT # Allow kldload of SCTP options FFS # Berkeley Fast Filesystem options SOFTUPDATES # Enable FFS soft updates support diff --git a/sys/arm64/conf/GENERIC b/sys/arm64/conf/GENERIC index f8842d672c0e..9f7a67e2079a 100644 --- a/sys/arm64/conf/GENERIC +++ b/sys/arm64/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 diff --git a/sys/i386/conf/GENERIC b/sys/i386/conf/GENERIC index 0bac5ba4c846..921b099ecf17 100644 --- a/sys/i386/conf/GENERIC +++ b/sys/i386/conf/GENERIC @@ -32,6 +32,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 TCP_HHOOK # hhook(9) framework for TCP options TCP_OFFLOAD # TCP offload diff --git a/sys/powerpc/conf/GENERIC64 b/sys/powerpc/conf/GENERIC64 index 1e7fd9759874..73d6ce5d4576 100644 --- a/sys/powerpc/conf/GENERIC64 +++ b/sys/powerpc/conf/GENERIC64 @@ -42,6 +42,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 TCP_OFFLOAD # TCP offload options TCP_BLACKBOX # Enhanced TCP event logging diff --git a/sys/riscv/conf/GENERIC b/sys/riscv/conf/GENERIC index 7d158269cde0..9c97e40f1db2 100644 --- a/sys/riscv/conf/GENERIC +++ b/sys/riscv/conf/GENERIC @@ -31,6 +31,7 @@ options INET # InterNETworking options INET6 # IPv6 communications protocols options TCP_HHOOK # hhook(9) framework for TCP options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 +options NETLINK # netlink(4) support options ROUTE_MPATH # Multipath routing support options TCP_OFFLOAD # TCP offload options TCP_BLACKBOX # Enhanced TCP event logging