From nobody Tue Jan 31 15:05:00 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 4P5pJ02ZwQz3cklq for ; Tue, 31 Jan 2023 15:05:04 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4P5pJ00hN0z3t1B for ; Tue, 31 Jan 2023 15:05:03 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f52.google.com with SMTP id c4-20020a1c3504000000b003d9e2f72093so12676498wma.1 for ; Tue, 31 Jan 2023 07:05:03 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=H/ok1jXU5v3QXJKertTTQ+zHFioVYnzNzChuuOan8Kk=; b=KDT12z3bbJ4QJ0gFCNy0kCN7ZlMpFGDlsMv/yKnubK+sTjqcpEsk8AYkrec6elUMsU 4exwy/EuA9miGI1clVdSwLPSTaWPEbuijSBhNo/wcprmQRlA4op6MMFqrZcf0XMRAY58 xorrhVDnwZ9IEAuEd/1xxX6TLxzIrBo9lAvfBR/hlQcUjmewRKqNAvhz/US/dDrBf9oc 6z/uXzGWJbYux6SAVoCUq840d7fIloybuCxAFIkVp9wMHvxfWIXtB0OS3yBYp5vEHr0R XsGPxn1ZbYTNfldgJJdRXI6aoSPDX4B0k35rqpxljE+dsMHhjfkMzyw9WDTzkhaL4NDN KfGw== X-Gm-Message-State: AO0yUKXycv+ROjtOki04wk4uwuwATrtpdq/tvRYGxLSWBGVDsROGL116 DMmUURiklDVW1EruoFjhJr5hHA== X-Google-Smtp-Source: AK7set/sijiapvSi3thskWjVPONh7SAYLykQ3sVh7dX3zY7OG/pePy2mqIR0RHKi4djHTAfwz87J8w== X-Received: by 2002:a05:600c:4f06:b0:3dc:5321:8457 with SMTP id l6-20020a05600c4f0600b003dc53218457mr4035811wmq.5.1675177501546; Tue, 31 Jan 2023 07:05:01 -0800 (PST) Received: from smtpclient.apple (global-5-143.n-2.net.cam.ac.uk. [131.111.5.143]) by smtp.gmail.com with ESMTPSA id y3-20020adff143000000b002be546f947asm15099836wro.61.2023.01.31.07.05.00 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 31 Jan 2023 07:05:00 -0800 (PST) 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 \(3696.120.41.1.1\)) Subject: Re: git: e80699a809a0 - main - netlink: add NETLINK to GENERIC. From: Jessica Clarke In-Reply-To: <202301311425.30VEPYhj039848@gitrepo.freebsd.org> Date: Tue, 31 Jan 2023 15:05:00 +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: <9C7C790F-68BD-4913-B554-6C72BE9174D5@freebsd.org> References: <202301311425.30VEPYhj039848@gitrepo.freebsd.org> To: "Alexander V. Chernikov" X-Mailer: Apple Mail (2.3696.120.41.1.1) X-Rspamd-Queue-Id: 4P5pJ00hN0z3t1B X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N 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(+) Why not 32-bit powerpc? And if this is to make it generally available 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. Jess > 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