From nobody Mon Mar 13 11:55:35 2023 X-Original-To: dev-commits-src-main@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 4PZw8g1Qncz3xc0x; Mon, 13 Mar 2023 11:55:47 +0000 (UTC) (envelope-from melifaro@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PZw8g0csrz3khB; Mon, 13 Mar 2023 11:55:47 +0000 (UTC) (envelope-from melifaro@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1678708547; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VllnY4WoJ0grWMt7VyALKuOgFsRznlf9yFjZH47x/Ok=; b=dcaCQN8nouP49+M3lYLRlvFmgkm/Q0ry2eurazE1dDzf2OSwIfi0HvF7S+KQ2GMI33Go4l DSLc1LHb1SiWWmQfQ9iwkaKVZaBQXFx//GqkJsmdBM1AViiCVia2AgRv3xLIWONz93uy/a EMfDmaNSwqGRpg/BDsgDwWWrI3lXb1BQEd0tfijjblbRjygdPAqU6ho3TKPQAt+OLyn5n5 h/Cmo7UE8BKirWJMw8gP3oCWsMrdRPgrFUSZvbkZuJpIFzsxCow2DV3DykqAevZCrWsHQ3 fPLgabv3Sww9XLLi4hor2o74QNAOASq6NBOVHUsiOL2ux2aG1fm1pqK8yyMgUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1678708547; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VllnY4WoJ0grWMt7VyALKuOgFsRznlf9yFjZH47x/Ok=; b=uvjm8a27cnAhk/LkGJnFFojN1hca4QBvl/1DN8E9fwRQyloF1+5XZQ6XKszkUbloEn3HPt TyiFdNbH/PAsbSJT4arl60JWSBZ0PO96zd2MU8Pc6NWHyLYhiWGcnGsNUjfVZ6xYbPeOnP o0cm7N5bru894qWD84WkCh534/UU3QebRIope9TxJ9IGIb/iykj7AQ6GSvO3hPO68b8AAp LGc0LYg4N0qbefJy51sCL9k0HYg9QEMWikHc0EGrjn2JN5CgHRb2IPgnmMXDAY+NEkPM0Q VSM4R7bqS6bZa03SVPT/ua+YUwKIa06n2FjDWXQ8x6h5BW43t5LpqcQbCHs1AQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1678708547; a=rsa-sha256; cv=none; b=Wxnvee/3L2hJIfcH5ma9mFc60GsIFKheAnPqU7d7C2KgQHYIKFveQ2l2zkSlISIwAwdpry IJjAJJcwV9ADLVpynmhLTatWjIXicqWqEvsr6qNOr3KRBVWE23MHR3iqIzTltjL6hNnAO1 xj4wUPzvTwcj84qi1c87KSMgmQnYrnPlNP2Q+hozp1SOkb4w8nbCxQC2mvwbag//qIyyyj AkhNtYkh5CuhDgQ36dINuvJUJBmzeNsyHZtDLnm3/4VZO8u3WqYyL07lIXu5jJUy9JllzV becCgoGp4jdIv1+cIBEDtE5j5WVfHrgSgZanUb3mqS5cxD9qWNXhVdLqyFKCJw== Received: from smtpclient.apple (unknown [IPv6:2a02:8084:d6bb:510:fd30:dfc2:e56b:5278]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: melifaro/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4PZw8f3134z1Lcl; Mon, 13 Mar 2023 11:55:46 +0000 (UTC) (envelope-from melifaro@freebsd.org) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.400.51.1.1\)) Subject: Re: git: e80699a809a0 - main - netlink: add NETLINK to GENERIC. From: Alexander Chernikov In-Reply-To: <9C7C790F-68BD-4913-B554-6C72BE9174D5@freebsd.org> Date: Mon, 13 Mar 2023 11:55:35 +0000 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: References: <202301311425.30VEPYhj039848@gitrepo.freebsd.org> <9C7C790F-68BD-4913-B554-6C72BE9174D5@freebsd.org> To: Jessica Clarke X-Mailer: Apple Mail (2.3731.400.51.1.1) X-ThisMailContainsUnwantedMimeParts: N Hi Jessica, I=E2=80=99d like to apologise for the belated reply. > On 31 Jan 2023, at 15:05, Jessica Clarke wrote: >=20 > On 31 Jan 2023, at 14:25, Alexander V. Chernikov = wrote: >>=20 >> The branch main has been updated by melifaro: >>=20 >> URL: = https://cgit.FreeBSD.org/src/commit/?id=3De80699a809a079c4e673940544d6ddd9= 44e8d08e >>=20 >> commit e80699a809a079c4e673940544d6ddd944e8d08e >> Author: Alexander V. Chernikov >> AuthorDate: 2023-01-31 14:22:11 +0000 >> Commit: Alexander V. Chernikov >> CommitDate: 2023-01-31 14:22:11 +0000 >>=20 >> netlink: add NETLINK to GENERIC. >>=20 >> This is a followup of 692e19cf5195 (add netlink to GENERIC@amd64). >>=20 >> 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. >>=20 >> 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 >>=20 >> 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. >>=20 >> 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. >>=20 >> MFC after: 1 week >> Differential Revision: https://reviews.freebsd.org/D37783 >> --- >> sys/arm/conf/std.armv7 | 1 + >> sys/arm64/conf/std.arm64 | 1 + >> sys/i386/conf/GENERIC | 1 + >> sys/powerpc/conf/GENERIC64 | 1 + >> sys/riscv/conf/GENERIC | 1 + >> 5 files changed, 5 insertions(+) >=20 > Why not 32-bit powerpc? And if this is to make it generally available The goal at the time was to get wider testing & feedback, joined with = having code suitable for merging to 13.2. > as a standard FreeBSD component, what about all the various = non-GENERIC > kernels (that don=E2=80=99t inherit from one of the ones you=E2=80=99ve = touched)? > Especially if base is going to start using it. You=E2=80=99re absolutely right, I=E2=80=99ve raised = https://reviews.freebsd.org/D39047 to make Netlink a standard kernel = component. >=20 > Jess >=20 >> diff --git a/sys/arm/conf/std.armv7 b/sys/arm/conf/std.armv7 >> index 8ace5c01eeab..03cc0ae5a2b8 100644 >> --- a/sys/arm/conf/std.armv7 >> +++ b/sys/arm/conf/std.armv7 >> @@ -11,6 +11,7 @@ options CC_CUBIC # include CUBIC congestion control >> 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/std.arm64 b/sys/arm64/conf/std.arm64 >> index 6480ca6530e4..1e664a3ba90c 100644 >> --- a/sys/arm64/conf/std.arm64 >> +++ b/sys/arm64/conf/std.arm64 >> @@ -13,6 +13,7 @@ options INET # InterNETworking >> options INET6 # IPv6 communications protocols >> options CC_CUBIC # include CUBIC congestion control >> 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 235713851016..5d30f2877c1c 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 bfd0cf342d95..37a78446f07a 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 2e35a49825d4..69c36511da80 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 >=20