From nobody Mon May 12 00:40:27 2025 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 4ZwgkN0gGvz5wf1Y; Mon, 12 May 2025 00:40:28 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwgkM6RVHz3wvq; Mon, 12 May 2025 00:40:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747010427; 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=7l3fwI4J4bL6+74gX9zJk7j3B5HRpC7VSrz3A6zlouk=; b=BhMwceAz6xN2WkhvlxZoNi+WQuOy5UL4asoKzIQasn1OpMqH1YqKCxFLAMjtN7+i+H9i7s T9rThQq4OiF2pG7MscWLGE8x2o1WGWHzxiHumr1hTHm1d8uOe+GD8jh61Oe08gNR9HfANF HMHUw8Q7ShCRvhJbOX2gh3MFLXUtFyXa6IOiW4VtUmGt50sv+VKlhQR1bTxo+w/d1LsGSx BvZOWjLZyK4peCGv4clQkuMSaR9Bl91GGV7bGPuwPhEG0iRipwv/C4L/s52dGfS7gDLScT eakBLIorxlmrw/0zBGwiq+bxHoI579cRkcAXo9Ub5/Nhi32jkKGJ+svN0gAa+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747010427; 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=7l3fwI4J4bL6+74gX9zJk7j3B5HRpC7VSrz3A6zlouk=; b=k9P+OaLH5yazX5TGBksjo3HyjVlVMQkspcM2RybgEYh1OgI/gCYfB2eF4HwrVtjUQMij7Q GghWbJ6Mz0OlmjEwQPGXFNR5PX+/dn6dSQOQJUjO70MypceALedj56YujdlcYRWT/KYhzj RWHP7FyX6bmWTkBCppKgM+4zjN5TFrB1OhzSdKcddTGLuwKiER6vuDkiPqhsTKLuE5tFXR caSNYG/mvYzd9QvVHesrgpGuN5e2WDNCblYcE5O0xoZCu88z+UXm3KNrK4QcswvQA0hDa3 PlJVjs7Vgu48wknElT0iVaUf06RFd6j54cSrSPs/1xNkvrSI8D/+dysce1rUmg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747010427; a=rsa-sha256; cv=none; b=mVRP+8cj9T8RXnCe9nUWkZAFF1Ca7jCv++2pJVD6g4jL0B+KOADk/wWC80GVwAdBmKmlH2 RWgIFF/6s9+cbA40sTwv3FpkCTVQSmdGthu5KvcscUqSvi2mTM5BB1C/mcabwHNgTtvdy2 tUKx8faZm9z3qpFqQRKbraNS8gCsUyIURPvwLDRGVYwSmjm/MeeglkRmMxJrnAhGgVHj4s ADMqYiKjWcy4954ssZHyFC0zlXYme3NmgSenw4VInzp8AMaRSDWe8j2aOVrp8jMZGWiR2U A5yCXDiwlB9/egnJ2XKShOpT1VPqKKV4I0bk6gCM5drUo/uGZnLfeTNV5wahgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwgkM5WVRzvKV; Mon, 12 May 2025 00:40:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54C0eREH017586; Mon, 12 May 2025 00:40:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54C0eR0r017583; Mon, 12 May 2025 00:40:27 GMT (envelope-from git) Date: Mon, 12 May 2025 00:40:27 GMT Message-Id: <202505120040.54C0eR0r017583@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 79e70e12f5c9 - main - release: Pass -N to pkg-stage if NO_ROOT set 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 79e70e12f5c9679139427b3c366e592b585b0ee2 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=79e70e12f5c9679139427b3c366e592b585b0ee2 commit 79e70e12f5c9679139427b3c366e592b585b0ee2 Author: Ed Maste AuthorDate: 2025-05-06 17:59:06 +0000 Commit: Ed Maste CommitDate: 2025-05-12 00:40:08 +0000 release: Pass -N to pkg-stage if NO_ROOT set PR: 283387 Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50268 --- release/Makefile | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/release/Makefile b/release/Makefile index 1489ec8dc881..913fc8f2b876 100644 --- a/release/Makefile +++ b/release/Makefile @@ -321,13 +321,9 @@ packagesystem: ${DISTRIBUTIONS} touch ${.TARGET} pkg-stage: dvd -# TODO: Support for -DNO_ROOT .if !defined(NOPKG) || empty(NOPKG) -.if defined(NO_ROOT) -.warning pkg-stage does not yet support NO_ROOT. -.endif env PORTSDIR=${PORTSDIR} REPOS_DIR=${.CURDIR}/pkg_repos/ \ - sh ${.CURDIR}/scripts/pkg-stage.sh + sh ${.CURDIR}/scripts/pkg-stage.sh ${NO_ROOT:D-N} mkdir -p ${.OBJDIR}/dvd/packages/repos/ cp ${.CURDIR}/scripts/FreeBSD_install_cdrom.conf \ ${.OBJDIR}/dvd/packages/repos/ From nobody Mon May 12 06:43:49 2025 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 4Zwqnw2LRPz5vZMD; Mon, 12 May 2025 06:44:04 +0000 (UTC) (envelope-from herbert@gojira.at) Received: from mail.bsd4all.net (mail.bsd4all.net [IPv6:2a01:4f8:13b:240c::25]) (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 ECDSA (secp384r1) client-digest SHA384) (Client CN "mail.bsd4all.net", Issuer "E6" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwqnt6kqwz3vpb; Mon, 12 May 2025 06:44:02 +0000 (UTC) (envelope-from herbert@gojira.at) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gojira.at header.s=mail202005 header.b=Ba14h8G0; spf=pass (mx1.freebsd.org: domain of herbert@gojira.at designates 2a01:4f8:13b:240c::25 as permitted sender) smtp.mailfrom=herbert@gojira.at; dmarc=none Date: Mon, 12 May 2025 08:43:49 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=gojira.at; s=mail202005; t=1747032233; bh=GZPG5hebvy+OxlwNB6rWIz5KeqD866SKJBw5gqAPO2c=; h=Date:Message-ID:From:To:Cc:Subject:MIME-Version:Content-Type; b=Ba14h8G0hVi2KdYYkoWIftDM0L5EQUpqdi3eStNGk0/kMmgEZdB5cDVNzNPeXHce7 R2BIxzJLdao52pZywvAYU4s6q8eM3DniCNGwB0kiqsBA20yhLpq8zwWzC2u5mBXRJ7 nhzhyMcTf/XqZD5WQI0Zw4SWmOrYKHg/YhCYkVied8Fi2PGkOWIYEndHItB8PKn3bg BoBsTIxY1XK262HpoX47fRmoK7Ui7t5UAzJ1M4RuDnKgFiIUTlL+hst7l63F1TJfF8 QYy+t/sYx7UTbbjdEHnk/g5LGODtuGc56zTlEJg4CNE9bMbrb4hRBn+maAvBsW0vk+ MHX6+BsKE+cYA== Message-ID: <87msbipbve.wl-herbert@gojira.at> From: "Herbert J. Skuhra" To: Warner Losh Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-branches@freebsd.org Subject: Re: git: 80b069913d49 - stable/14 - mpi3mr: Divert large WriteSame IOs to firmware if unmap and ndob bits are set In-Reply-To: References: <202504301721.53UHLjlw095104@gitrepo.freebsd.org> <878qn8r3t6.wl-herbert@gojira.at> User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/30.1 Mule/6.0 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 4Zwqnt6kqwz3vpb X-Spamd-Bar: / X-Spamd-Result: default: False [-0.34 / 15.00]; MID_CONTAINS_FROM(1.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.959]; NEURAL_SPAM_MEDIUM(0.93)[0.928]; NEURAL_HAM_LONG(-0.81)[-0.813]; R_DKIM_ALLOW(-0.20)[gojira.at:s=mail202005]; R_SPF_ALLOW(-0.20)[+ip6:2a01:4f8:13b:240c::25]; MIME_GOOD(-0.10)[text/plain]; TO_DN_SOME(0.00)[]; ASN(0.00)[asn:24940, ipnet:2a01:4f8::/32, country:DE]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-branches@freebsd.org]; RCPT_COUNT_FIVE(0.00)[5]; FROM_HAS_DN(0.00)[]; RCVD_COUNT_ZERO(0.00)[0]; FROM_EQ_ENVFROM(0.00)[]; DMARC_NA(0.00)[gojira.at]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[gojira.at:+] Yes, thanks. Merge to releng/14.3?=20 On Thu, 08 May 2025 17:44:59 +0200, Warner Losh wrote: >=20 > I think that I've fixed this. >=20 > Warner >=20 > On Wed, May 7, 2025 at 6:41=E2=80=AFAM Herbert J. Skuhra wrote: > > > > On Wed, 30 Apr 2025 19:21:45 +0200, Warner Losh wrote: > > > > > > The branch stable/14 has been updated by imp: > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D80b069913d496bd73b0ea8= e515b6bf3706530ea1 > > > > > > commit 80b069913d496bd73b0ea8e515b6bf3706530ea1 > > > Author: Chandrakanth patil > > > AuthorDate: 2024-06-06 08:38:52 +0000 > > > Commit: Warner Losh > > > CommitDate: 2025-04-30 17:05:52 +0000 > > > > > > mpi3mr: Divert large WriteSame IOs to firmware if unmap and ndob = bits are set > > > > > > Firmware advertises the transfer lenght for writesame commands to= driver during init. > > > So for any writesame IOs with ndob and unmap bit set and transfer= lengh is greater > > > than the max write same length specified by the firmware, then di= rect those commands > > > to firmware instead of hardware otherwise hardware will break. > > > > > > Reviewed by: imp > > > Approved by: imp > > > Differential revision: https://reviews.freebsd.org/D44452 > > > > > > (cherry picked from commit 3f3a15543a6721100dda0e4219eb48ecbe3573= 1a) > > > --- > > > sys/dev/mpi3mr/mpi3mr.c | 16 ++++++++++++++++ > > > sys/dev/mpi3mr/mpi3mr.h | 2 ++ > > > sys/dev/mpi3mr/mpi3mr_cam.c | 35 +++++++++++++++++++++++++++++++++++ > > > sys/dev/mpi3mr/mpi3mr_cam.h | 1 + > > > sys/modules/mpi3mr/Makefile | 3 +++ > > > 5 files changed, 57 insertions(+) > > > > > > diff --git a/sys/dev/mpi3mr/mpi3mr.c b/sys/dev/mpi3mr/mpi3mr.c > > > index 03fea4bdfcc7..a7bc459c1db8 100644 > > > --- a/sys/dev/mpi3mr/mpi3mr.c > > > +++ b/sys/dev/mpi3mr/mpi3mr.c > > > @@ -2177,6 +2177,8 @@ static int mpi3mr_issue_iocinit(struct mpi3mr_s= oftc *sc) > > > time_in_msec =3D (now.tv_sec * 1000 + now.tv_usec/1000); > > > iocinit_req.TimeStamp =3D htole64(time_in_msec); > > > > > > + iocinit_req.MsgFlags |=3D MPI3_IOCINIT_MSGFLAGS_WRITESAMEDIVERT= _SUPPORTED; > > > + > > > init_completion(&sc->init_cmds.completion); > > > retval =3D mpi3mr_submit_admin_cmd(sc, &iocinit_req, > > > sizeof(iocinit_req)); > > > @@ -3340,6 +3342,19 @@ void mpi3mr_update_device(struct mpi3mr_softc = *sc, > > > break; > > > } > > > > > > + switch (flags & MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_MASK) { > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_256_LB: > > > + tgtdev->ws_len =3D 256; > > > + break; > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_2048_LB: > > > + tgtdev->ws_len =3D 2048; > > > + break; > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_NO_LIMIT: > > > + default: > > > + tgtdev->ws_len =3D 0; > > > + break; > > > + } > > > + > > > switch (tgtdev->dev_type) { > > > case MPI3_DEVICE_DEVFORM_SAS_SATA: > > > { > > > @@ -5649,6 +5664,7 @@ static void mpi3mr_invalidate_devhandles(struct= mpi3mr_softc *sc) > > > target->io_throttle_enabled =3D 0; > > > target->io_divert =3D 0; > > > target->throttle_group =3D NULL; > > > + target->ws_len =3D 0; > > > } > > > } > > > mtx_unlock_spin(&sc->target_lock); > > > diff --git a/sys/dev/mpi3mr/mpi3mr.h b/sys/dev/mpi3mr/mpi3mr.h > > > index 2f91b0b702dd..fa50ed035fc2 100644 > > > --- a/sys/dev/mpi3mr/mpi3mr.h > > > +++ b/sys/dev/mpi3mr/mpi3mr.h > > > @@ -232,6 +232,8 @@ extern char fmt_os_ver[16]; > > > > > > #define MPI3MR_PERIODIC_DELAY 1 /* 1 second heartbeat/w= atchdog check */ > > > > > > +#define WRITE_SAME_32 0x0d > > > + > > > struct completion { > > > unsigned int done; > > > struct mtx lock; > > > diff --git a/sys/dev/mpi3mr/mpi3mr_cam.c b/sys/dev/mpi3mr/mpi3mr_cam.c > > > index d4cb7e9265dd..dca194a5c8cd 100644 > > > --- a/sys/dev/mpi3mr/mpi3mr_cam.c > > > +++ b/sys/dev/mpi3mr/mpi3mr_cam.c > > > @@ -83,6 +83,7 @@ > > > #include "mpi3mr.h" > > > #include /* XXX for pcpu.h */ > > > #include /* XXX for PCPU_GET */ > > > +#include > > > > > > #define smp_processor_id() PCPU_GET(cpuid) > > > > > > @@ -102,6 +103,37 @@ extern void mpi3mr_add_sg_single(void *paddr, U8= flags, U32 length, > > > > > > static U32 event_count; > > > > > > +static > > > +inline void mpi3mr_divert_ws(Mpi3SCSIIORequest_t *req, > > > + struct ccb_scsiio *csio, > > > + U16 ws_len) > > > +{ > > > + U8 unmap =3D 0, ndob =3D 0; > > > + U32 num_blocks =3D 0; > > > + U8 opcode =3D scsiio_cdb_ptr(csio)[0]; > > > + U16 service_action =3D ((scsiio_cdb_ptr(csio)[8] << 8) | scsiio= _cdb_ptr(csio)[9]); > > > + > > > + > > > + if (opcode =3D=3D WRITE_SAME_16 || > > > + (opcode =3D=3D VARIABLE_LEN_CDB && > > > + service_action =3D=3D WRITE_SAME_32)) { > > > + > > > + int unmap_ndob_index =3D (opcode =3D=3D WRITE_SAME_16) = ? 1 : 10; > > > + > > > + unmap =3D scsiio_cdb_ptr(csio)[unmap_ndob_index] & 0x08; > > > + ndob =3D scsiio_cdb_ptr(csio)[unmap_ndob_index] & 0x01; > > > + num_blocks =3D get_unaligned_be32(scsiio_cdb_ptr(csio) + > > > + ((opcode =3D=3D WRITE_S= AME_16) ? 10 : 28)); > > > + > > > + /* Check conditions for diversion to firmware */ > > > + if (unmap && ndob && num_blocks > ws_len) { > > > + req->MsgFlags |=3D MPI3_SCSIIO_MSGFLAGS_DIVERT_= TO_FIRMWARE; > > > + req->Flags =3D htole32(le32toh(req->Flags) | > > > + MPI3_SCSIIO_FLAGS_DIVERT_R= EASON_WRITE_SAME_TOO_LARGE); > > > + } > > > + } > > > +} > > > + > > > static void mpi3mr_prepare_sgls(void *arg, > > > bus_dma_segment_t *segs, int nsegs, int error) > > > { > > > @@ -1080,6 +1112,9 @@ mpi3mr_action_scsiio(struct mpi3mr_cam_softc *c= am_sc, union ccb *ccb) > > > break; > > > } > > > > > > + if (targ->ws_len) > > > + mpi3mr_divert_ws(req, csio, targ->ws_len); > > > + > > > req->Flags =3D htole32(mpi_control); > > > > > > if (csio->ccb_h.flags & CAM_CDB_POINTER) > > > diff --git a/sys/dev/mpi3mr/mpi3mr_cam.h b/sys/dev/mpi3mr/mpi3mr_cam.h > > > index 3a0526217f86..115ce0c4b8d7 100644 > > > --- a/sys/dev/mpi3mr/mpi3mr_cam.h > > > +++ b/sys/dev/mpi3mr/mpi3mr_cam.h > > > @@ -121,6 +121,7 @@ struct mpi3mr_target { > > > struct mpi3mr_throttle_group_info *throttle_group; > > > uint64_t q_depth; > > > enum mpi3mr_target_state state; > > > + uint16_t ws_len; > > > }; > > > > > > struct mpi3mr_cam_softc { > > > diff --git a/sys/modules/mpi3mr/Makefile b/sys/modules/mpi3mr/Makefile > > > index 3f1f63a94ac3..39aa2e3f0ddd 100644 > > > --- a/sys/modules/mpi3mr/Makefile > > > +++ b/sys/modules/mpi3mr/Makefile > > > @@ -6,6 +6,9 @@ SRCS=3D mpi3mr_pci.c mpi3mr.c mpi3mr_cam.c mpi3mr_app= .c > > > SRCS+=3D opt_cam.h > > > SRCS+=3D device_if.h bus_if.h pci_if.h > > > > > > +CFLAGS+=3D -I${SRCTOP}/sys/compat/linuxkpi/common/include > > > +DEBUG_FLAGS=3D -g > > ^^^^^^^^^^^^^^^^ > > > + > > > .include > > > > > > CWARNFLAGS.mpi3mr_sas.c=3D ${NO_WUNNEEDED_INTERNAL_DECL} > > > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D249068#c2 > > > > -- > > Herbert From nobody Mon May 12 08:59:58 2025 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 4Zwtpk63J6z5vkpM; Mon, 12 May 2025 08:59:58 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwtpk4n4Nz3XSj; Mon, 12 May 2025 08:59:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747040398; 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=mMqUYLfOy6fJzorsQo1Aa7sU24axxivttMQzMEOOZas=; b=Oq2P+bTplUbeqOpGn2ZwZqdo2zOVSBixHF/nbg5P9fmkwN8nwjAky7v6AiE6UTsK+o/49p yVpRlbKMXNWpUn+cfKNtM3Yzq+LpWQ2QXpG0PlTrNJwUc4OPS+6MRRg71XmGu05IO5VwU7 jOJBeJk2G++5F75rCuPJRoJBORP9IWIQzy984qNLfK3d4byVwAq9oJ5RG2+MJsyGhWvMyZ nTrflFetK9v7hHRjP29KHJ8thhpFXQiPt0RMKNjvozCvDDfVYftp47JN4L6XIa6fLPh0cq ddZTzE7YqId48KLI34oRh/CuVNbkL28VxUl5YBF8pZ18cR+nsG6+C3/k7j2PhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747040398; 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=mMqUYLfOy6fJzorsQo1Aa7sU24axxivttMQzMEOOZas=; b=ypP09aIavxnjJszOUFP0qQ8XA0V01KBSgOzcEBFkyfQUL1epFljscUJgSgDcsPPPwTDOxV ojSV1Ywi8bFrE9TWEtdWZCBZwSbzQ/BvBlmA+3Puic5nQu/FPIq2Q9Db9RJVn/YbcLsArN 4LiEsm1yd2LwFCabszO3Bzo33wXtUood02Ety+pI+kkPwCJIgz0CtvzI7Oi0sIQ+msNuww faZe4MPctvx5n/ZF+Fo51fGQMOB54zTQjJ7yLo35xnH3KzFAOc7Q06MoYaNhSZpAmpBqGf jGO9qWsw6uTU2oRd2sNgVZHeWOzEgxFYWonds3PLn/V9CDdpw9qpfv8JQFyaVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747040398; a=rsa-sha256; cv=none; b=szL8sDXigYrQWQMvF1dhro9fvssT0/VU0Hal3oVcgNxSIJIqd0H5IoAWjytAS98xzyS7Hj bHQOfuQg8YPXuzlQDQQvJg4c8pi3OqAaRC6wxbqpuakmv7hWqmbdYeITqb/VVrxUtafuke sj11Y5WfoACSfiMSvXrYnsF8c8IHaukuwmK/wpQDjuOM/4apNO1wC3tusZtwVZcKMZOmIs o+DBiQ0F9snAXNIFnaU1Bfkfjd4/LvuILybXikgB+2Asm5l5+ZW48hHlZvtUChq/tBnvaX ZAKOia8i3OH0X/JVAjSAgNBIWoIBN9U8Vau6RS5T0+69WJ0NNtimFKMT8KDy/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwtpk4K3Gz182R; Mon, 12 May 2025 08:59:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54C8xw40042553; Mon, 12 May 2025 08:59:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54C8xwRv042550; Mon, 12 May 2025 08:59:58 GMT (envelope-from git) Date: Mon, 12 May 2025 08:59:58 GMT Message-Id: <202505120859.54C8xwRv042550@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: f6e826891760 - main - stress2: exlock2.sh: Fix impact of previous '-U' removal 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6e826891760a34ef69e1122da0ee378f7caf454 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=f6e826891760a34ef69e1122da0ee378f7caf454 commit f6e826891760a34ef69e1122da0ee378f7caf454 Author: Olivier Certner AuthorDate: 2025-05-12 08:34:05 +0000 Commit: Olivier Certner CommitDate: 2025-05-12 08:59:07 +0000 stress2: exlock2.sh: Fix impact of previous '-U' removal In commit "stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change" (1265d3b07eaa), I forgot that '-U' also has the side-effect of implying '-x' by default. Now that '-U' has been removed, make '-x' explicit. Fixes: 1265d3b07eaa ("stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change") MFC after: 1 hour Sponsored by: The FreeBSD Foundation --- tools/test/stress2/misc/exlock2.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/test/stress2/misc/exlock2.sh b/tools/test/stress2/misc/exlock2.sh index 85f606aec2b3..811fd96f502c 100755 --- a/tools/test/stress2/misc/exlock2.sh +++ b/tools/test/stress2/misc/exlock2.sh @@ -150,7 +150,7 @@ out: usleep(100); } if (debug != 0 && e != 0) - system("ps | grep -v grep | grep /tmp/exlock2 | "\ + system("ps -x | grep -v grep | grep /tmp/exlock2 | "\ "awk '{print $1}' | xargs procstat -f"); share[SYNC] = 0; From nobody Mon May 12 08:59:59 2025 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 4Zwtpm0R9Mz5vkgL; Mon, 12 May 2025 09:00:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwtpl5fFkz3Xbt; Mon, 12 May 2025 08:59:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747040399; 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=QrJ7S4TOnh1Ggh2uXVACwWQc9F6za/LdRG9a2n4m7fw=; b=MfPtT+8qw5PwGfg1bBPCZK+hYb7k0Wa8q7kj/X6L5PgpTuEEilPb/hvwrwMz3E2cmJPAit eSFDa2ZFUlG21kNDuPI9Qr47HBUJi9DEXW8HhVrBCgTeDPw1lu5mItkdhAo3enPHEWLAzH dSJ6ATk79il7sj7Yw2Ognt28qw/7iD7+HpEnPmRqAfxHS18D1Ai9obMWdteyyDC7lnL4JX 0hyw6svC4CuHj4eDrqEMmklZZyLh9Ad/3zNnMksY55REW3PoAp5tJOXyskVvytyiMb/M2i cQCsDeAn3Tywv/z/ZABLZnnBUapYK1HoA4BaOoVxeKi6PSJOWmPxQdyPav9X8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747040399; 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=QrJ7S4TOnh1Ggh2uXVACwWQc9F6za/LdRG9a2n4m7fw=; b=QEnQb6hYl6SO+eM6EIvYv+kJ2bF7DLxrLVy6bwyX2IHvd/91x7VbkaP4fokQDhqrGUOIf9 gtC4diucJlCW0ooMxcl9OzD1w8jL1FnUgfRJ3XqnYrN4Kcone5lSQjBUXHSQioZfbG9YA6 iu/tzTkEMBQHlt5xrZUfShRVyV3T5uVAZWw3crJGZTk77QAdcmf0R0KzELsMim4N7cO5xl kFaRgKcSevlB0k+bAnLH2B3PVd7aTynpcCWplKR9XJXIGeSHJTgByShk2ESEsSttoPfIpy /fDCULfsyBEZ/SjyiuwgVSLNCfotyxYZBbb2uHZDfk2/fE9P0T9luNp4kee2TQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747040399; a=rsa-sha256; cv=none; b=sDA+2t7XXJ/BHSFcbYgH6mSp/voRM7gC+LlctoUkPmBxZypbxHPkFn5VWnAMCM5J29rFRA iSVGZd/vXubFZrA5cAEpO87xJ0YBV6u5NlAPIQHXSeggShYFyhV2PqjYDZSNoEVAaAe03i FFiXU9a2Fy5/Tq9XO4gvPYyi5qfwUacsS7+iUTGNrREqOM/Wj6FbpaqHxSa+b1TRpAnxh/ zdMYz+VY9awza3zG5szPc91HcwjYhyrOp+8Cl+KSGeia+XpZMUnBtzMDegu8Yx+C9vM2p3 9/JQctA+lieDczFyOZvW4KGr9vONqeAYHtdBZtTjlpD6Mi0q8TOrC7dn1MqCEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwtpl5F68z18hj; Mon, 12 May 2025 08:59:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54C8xxgh042588; Mon, 12 May 2025 08:59:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54C8xxlX042585; Mon, 12 May 2025 08:59:59 GMT (envelope-from git) Date: Mon, 12 May 2025 08:59:59 GMT Message-Id: <202505120859.54C8xxlX042585@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 129a6cf886e1 - main - sysctl.9: Constant integer example: Do not promote 'debug.sizeof' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 129a6cf886e108b67f637a271f003519c99b9abd Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=129a6cf886e108b67f637a271f003519c99b9abd commit 129a6cf886e108b67f637a271f003519c99b9abd Author: Olivier Certner AuthorDate: 2025-05-09 14:38:32 +0000 Commit: Olivier Certner CommitDate: 2025-05-12 08:59:33 +0000 sysctl.9: Constant integer example: Do not promote 'debug.sizeof' Replace it with another one, selected from current in-tree uses. MFC after: 1 day Sponsored by: The FreeBSD Foundation --- share/man/man9/sysctl.9 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9 index 8c4ee71c96c6..92c8532c8ed2 100644 --- a/share/man/man9/sysctl.9 +++ b/share/man/man9/sysctl.9 @@ -931,8 +931,8 @@ Examples of integer, opaque, string, and procedure sysctls follow: * flags are CTLFLAG_RD, the variable pointer is SYSCTL_NULL_INT_PTR, * and the value is declared. */ -SYSCTL_INT(_debug_sizeof, OID_AUTO, bio, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, - sizeof(struct bio), "sizeof(struct bio)"); +SYSCTL_INT(_kern, OID_AUTO, hz_max, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, HZ_MAXIMUM, + "Maximum hz value supported"); /* * Example of a variable integer value. Notice that the control From nobody Mon May 12 10:07:20 2025 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 4ZwwJT04Gsz5vpB8; Mon, 12 May 2025 10:07:21 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwwJS6wglz3fVH; Mon, 12 May 2025 10:07:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747044440; 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=H957jApk5BMbEHWq8jkj+ldekEgeleOaDd+zqXqbuQ0=; b=TOMfHBujbEbjzuhmdGCY7Dqc1gA2sQzI0+bTOWux/GVVCM7GOmVCMeX5mL3RyLq/JTbeLc MMgogKSUu7xxEFZelGfPqTGCayW1it6gWrVADmYCQA0OGeDZVpX7mPnTStKn55tL00OZuh isGdQxZWrvvoqjcjfKcEVIhfWkiY8kuHI4RQ7TYaTaElZMhJ7DjU2jSq8r+DRNBp+SpwL8 z614f8Y536W0+0Vlhq9Hw6/tCRjtTZYcFrp9IZxEM07dn5OHmxh6B67da7dil99dI1biuI FCv2EG45stS2wIpXwvu7F3j+5YIJzzSJGIWFAoUEywQy3Xe85er0vT78vVkHzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747044440; 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=H957jApk5BMbEHWq8jkj+ldekEgeleOaDd+zqXqbuQ0=; b=F+sAsaRuRn9MkGUiYcdqIYsNEMx//snzRixgllay2y/OdT1CStnnwNlBT+3wfxtDOzuWLa uu/SYMOkIgCrEwdcErxfRfZmLI7VYjsVSX37QiJ92NEnafotFH7RxJ5Xc3czqWrg16bUrC M3itSQ4H99De8fuZn63TCqiMQYVS0KG9MQfnkqqtaci0Ah+HjkKWqlIFG3REm/65qgX09A X2QH6JR5I+RXY2cdQH0JWdvb8I70JzHFFx9ZU7og5hkLzP9zHqJx4a/k9mYIz6f4iiWW7+ V8eIQU8qcDFLY2j4RGkwj9xUWYO4qtfk297dqO63gYMH3oY6z2r6rpppipfDGQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747044440; a=rsa-sha256; cv=none; b=nFwGuPRBsRMHceCQxYaZ3PlRPTphBdfFoctiLyWcIDHJw+qq0Q2FuhX0H2d8UQ3SjjU4wW AKVswqNB4Iio2dZcnIHCtvlNL3LSXV+0A3isoEXAwbSUlpFv8MQbt7eysDCckwkKQlaFtu vfgAnezpAkw8ZQcyPZq4yfCb+Ms1YzMK5/3mzqoOp+iqKeTl+6o/kyQj3/AUMjBV82S+Pg igiePQOTH9ACuitLu+9omLCuPX52Ti+Xip8LRzJhMdiHM1V2qJIWofnF4kcaQUi0xH9ap6 bhAywF3LxrjdWTkUzUKFlSgvgRAO9Q7KyJzXefcJcL5kb7+4prdAG9+jhEuKAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwwJS6WlCz1BRH; Mon, 12 May 2025 10:07:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CA7KjQ073298; Mon, 12 May 2025 10:07:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CA7Kkg073295; Mon, 12 May 2025 10:07:20 GMT (envelope-from git) Date: Mon, 12 May 2025 10:07:20 GMT Message-Id: <202505121007.54CA7Kkg073295@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Holm Subject: git: abe84e611076 - main - stress2: Added syzkaller reproducers 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pho X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: abe84e61107639cdb5b7854ff74f9a5a91984e3d Auto-Submitted: auto-generated The branch main has been updated by pho: URL: https://cgit.FreeBSD.org/src/commit/?id=abe84e61107639cdb5b7854ff74f9a5a91984e3d commit abe84e61107639cdb5b7854ff74f9a5a91984e3d Author: Peter Holm AuthorDate: 2025-05-12 10:06:37 +0000 Commit: Peter Holm CommitDate: 2025-05-12 10:06:37 +0000 stress2: Added syzkaller reproducers --- tools/test/stress2/misc/syzkaller76.sh | 235 ++++++++++++++++++++++++++ tools/test/stress2/misc/syzkaller77.sh | 290 +++++++++++++++++++++++++++++++++ tools/test/stress2/misc/syzkaller78.sh | 282 ++++++++++++++++++++++++++++++++ tools/test/stress2/misc/syzkaller79.sh | 82 ++++++++++ 4 files changed, 889 insertions(+) diff --git a/tools/test/stress2/misc/syzkaller76.sh b/tools/test/stress2/misc/syzkaller76.sh new file mode 100755 index 000000000000..67a566cbfa00 --- /dev/null +++ b/tools/test/stress2/misc/syzkaller76.sh @@ -0,0 +1,235 @@ +#!/bin/sh + +# panic: aio_process_rw: opcode 70 +# cpuid = 7 +# time = 1746175480 +# KDB: stack backtrace: +# db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe010844ccb0 +# vpanic() at vpanic+0x136/frame 0xfffffe010844cde0 +# panic() at panic+0x43/frame 0xfffffe010844ce40 +# aio_process_rw() at aio_process_rw+0x28e/frame 0xfffffe010844cea0 +# aio_daemon() at aio_daemon+0x286/frame 0xfffffe010844cef0 +# fork_exit() at fork_exit+0x82/frame 0xfffffe010844cf30 +# fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe010844cf30 +# --- trap 0xc, rip = 0x2020f02a472a, rsp = 0x2020ec9bb8d8, rbp = 0x2020ec9bb9d0 --- +# KDB: enter: panic +# [ thread pid 71553 tid 100216 ] +# Stopped at kdb_enter+0x33: movq $0,0x122f9c2(%rip) +# db> x/s version +# version: FreeBSD 15.0-CURRENT #0 main-n276945-2735c20d114f-dirty: Fri May 2 07:17:00 CEST 2025 +# pho@mercat1.netperf.freebsd.org:/usr/src/sys/amd64/compile/PHO +# db> + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg +set -u +prog=$(basename "$0" .sh) +cat > /tmp/$prog.c < +#include +#include +#include +#include +#include +#include +#include +#include +#include + +uint64_t r[1] = {0xffffffffffffffff}; + +int main(void) +{ + syscall(SYS_mmap, /*addr=*/0x200000000000ul, /*len=*/0x1000000ul, + /*prot=PROT_WRITE|PROT_READ|PROT_EXEC*/ 7ul, + /*flags=MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE*/ 0x1012ul, + /*fd=*/(intptr_t)-1, /*offset=*/0ul); + const char* reason; + (void)reason; + intptr_t res = 0; + if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { + } + res = syscall(SYS_freebsd10_pipe, /*pipefd=*/0x2000000005c0ul); + if (res != -1) + r[0] = *(uint32_t*)0x2000000005c4; + syscall(SYS_close, /*fd=*/r[0]); + memcpy((void*)0x200000000080, ".\000", 2); + syscall(SYS_open, /*file=*/0x200000000080ul, /*flags=*/0ul, /*mode=*/0ul); + *(uint32_t*)0x200000000080 = 0; + *(uint32_t*)0x200000000084 = 0; + *(uint32_t*)0x200000000088 = 4; + *(uint64_t*)0x200000000090 = 0; + *(uint64_t*)0x200000000098 = 0; + *(uint32_t*)0x2000000000a0 = 0; + *(uint32_t*)0x2000000000a4 = 8; + *(uint64_t*)0x2000000000a8 = 0x7fffffffffffffff; + *(uint32_t*)0x2000000000b0 = 0; + *(uint32_t*)0x2000000000b4 = 0x100; + *(uint64_t*)0x2000000000b8 = 0; + *(uint32_t*)0x2000000000c0 = 0; + *(uint32_t*)0x2000000000c4 = 0; + *(uint32_t*)0x2000000000c8 = 0; + *(uint32_t*)0x2000000000cc = 3; + *(uint32_t*)0x2000000000d0 = 0; + *(uint32_t*)0x2000000000d4 = 0; + *(uint32_t*)0x2000000000d8 = 0x400008; + *(uint32_t*)0x2000000000dc = 0x8e; + *(uint32_t*)0x2000000000e0 = 0xfffffffd; + *(uint32_t*)0x2000000000e4 = 0xf; + *(uint32_t*)0x2000000000e8 = 0xfffffffc; + *(uint32_t*)0x2000000000ec = 0; + *(uint32_t*)0x2000000000f0 = 0; + *(uint32_t*)0x2000000000f4 = 0; + *(uint32_t*)0x2000000000f8 = 0xff; + *(uint32_t*)0x2000000000fc = 0; + *(uint32_t*)0x200000000100 = 0; + *(uint32_t*)0x200000000104 = 2; + *(uint32_t*)0x200000000108 = 0; + *(uint32_t*)0x20000000010c = 2; + *(uint32_t*)0x200000000110 = 2; + *(uint32_t*)0x200000000114 = 0x5bee; + *(uint32_t*)0x200000000118 = 0; + *(uint32_t*)0x20000000011c = 0xc; + *(uint32_t*)0x200000000120 = 3; + *(uint32_t*)0x200000000124 = 2; + *(uint32_t*)0x200000000128 = 0; + *(uint32_t*)0x20000000012c = 0x10000000; + *(uint32_t*)0x200000000130 = 0; + *(uint32_t*)0x200000000134 = 1; + *(uint32_t*)0x200000000138 = 0; + *(uint32_t*)0x20000000013c = 0x83; + *(uint32_t*)0x200000000140 = 0; + *(uint32_t*)0x200000000144 = 0; + *(uint32_t*)0x200000000148 = 0; + *(uint32_t*)0x20000000014c = 0; + *(uint32_t*)0x200000000150 = 0; + *(uint32_t*)0x200000000154 = 0xfff; + *(uint32_t*)0x200000000158 = 1; + *(uint32_t*)0x20000000015c = 0x4c; + *(uint32_t*)0x200000000160 = 0x1fffffc; + *(uint32_t*)0x200000000164 = 4; + *(uint32_t*)0x200000000168 = 0x40000001; + *(uint32_t*)0x20000000016c = 0; + *(uint32_t*)0x200000000170 = 8; + *(uint32_t*)0x200000000174 = 0; + *(uint32_t*)0x200000000178 = 0; + *(uint32_t*)0x20000000017c = 0x100001; + *(uint32_t*)0x200000000180 = 0; + *(uint32_t*)0x200000000184 = 0x1ff; + *(uint32_t*)0x200000000188 = 0xe; + *(uint32_t*)0x20000000018c = 8; + *(uint32_t*)0x200000000190 = 0; + *(uint32_t*)0x200000000194 = 0; + *(uint32_t*)0x200000000198 = 0; + *(uint32_t*)0x20000000019c = 0xc; + *(uint32_t*)0x2000000001a0 = 9; + *(uint32_t*)0x2000000001a4 = 2; + *(uint32_t*)0x2000000001a8 = 0x10000002; + *(uint32_t*)0x2000000001ac = 0x100000; + *(uint32_t*)0x2000000001b0 = 0x46; + *(uint32_t*)0x2000000001b4 = 6; + *(uint32_t*)0x2000000001b8 = 0x3ff; + *(uint32_t*)0x2000000001bc = 2; + *(uint32_t*)0x2000000001c0 = 0; + *(uint32_t*)0x2000000001c4 = 0xfffffffa; + *(uint32_t*)0x2000000001c8 = 0x200; + *(uint32_t*)0x2000000001cc = 0; + *(uint32_t*)0x2000000001d0 = 1; + *(uint32_t*)0x2000000001d4 = 3; + *(uint32_t*)0x2000000001d8 = 0; + *(uint32_t*)0x2000000001dc = 0x100; + *(uint32_t*)0x2000000001e0 = 0; + *(uint32_t*)0x2000000001e4 = 8; + *(uint32_t*)0x2000000001e8 = 0x108c6b2; + *(uint32_t*)0x2000000001ec = 0xfffffffa; + *(uint32_t*)0x2000000001f0 = 0; + *(uint32_t*)0x2000000001f4 = 5; + *(uint32_t*)0x2000000001f8 = 0; + *(uint32_t*)0x2000000001fc = 0; + *(uint32_t*)0x200000000200 = 0; + *(uint32_t*)0x200000000204 = 0; + *(uint32_t*)0x200000000208 = 0; + *(uint32_t*)0x20000000020c = 0x80; + *(uint32_t*)0x200000000210 = 0; + *(uint32_t*)0x200000000214 = 1; + *(uint32_t*)0x200000000218 = 0; + *(uint32_t*)0x20000000021c = 6; + *(uint32_t*)0x200000000220 = 0; + *(uint32_t*)0x200000000224 = 0; + *(uint32_t*)0x200000000228 = 0; + *(uint32_t*)0x20000000022c = 6; + *(uint32_t*)0x200000000230 = 0; + *(uint32_t*)0x200000000234 = 0; + *(uint32_t*)0x200000000238 = 0; + *(uint32_t*)0x20000000023c = 0xa9f; + syscall(SYS_ioctl, /*fd=*/(intptr_t)-1, /*cmd=*/0xc1c06d02ul, + /*arg=*/0x200000000080ul); + *(uint32_t*)0x200000000580 = -1; + *(uint64_t*)0x200000000588 = 0; + *(uint64_t*)0x200000000590 = 0x200000000180; + *(uint64_t*)0x200000000598 = 0; + *(uint32_t*)0x2000000005a0 = 0xfffff000; + *(uint32_t*)0x2000000005a4 = 3; + *(uint64_t*)0x2000000005a8 = 0; + *(uint32_t*)0x2000000005b0 = 0; + *(uint32_t*)0x2000000005b4 = 0; + *(uint64_t*)0x2000000005b8 = 0; + *(uint64_t*)0x2000000005c0 = 0; + *(uint64_t*)0x2000000005c8 = 0; + *(uint32_t*)0x2000000005d0 = 0; + *(uint32_t*)0x2000000005d4 = 0; + *(uint64_t*)0x2000000005d8 = 0; + *(uint16_t*)0x2000000005e0 = 0x4043; + *(uint32_t*)0x200000000620 = -1; + *(uint64_t*)0x200000000628 = 0; + *(uint64_t*)0x200000000630 = 0; + *(uint64_t*)0x200000000638 = 0; + *(uint32_t*)0x200000000640 = 0x10; + *(uint32_t*)0x200000000644 = 0; + *(uint64_t*)0x200000000648 = 0; + *(uint32_t*)0x200000000650 = 0; + *(uint32_t*)0x200000000654 = 0; + *(uint64_t*)0x200000000658 = 8; + *(uint64_t*)0x200000000660 = 0x3ff; + *(uint64_t*)0x200000000668 = 0; + *(uint32_t*)0x200000000670 = 1; + *(uint32_t*)0x200000000674 = 0; + *(uint32_t*)0x200000000678 = 3; + *(uint16_t*)0x200000000680 = 0; + *(uint32_t*)0x2000000006c0 = -1; + *(uint64_t*)0x2000000006c8 = 0; + *(uint64_t*)0x2000000006d0 = 0; + *(uint64_t*)0x2000000006d8 = 0; + *(uint32_t*)0x2000000006e0 = 0; + *(uint32_t*)0x2000000006e4 = 0; + *(uint64_t*)0x2000000006e8 = 2; + *(uint32_t*)0x2000000006f0 = 0; + *(uint32_t*)0x2000000006f4 = 0; + *(uint64_t*)0x2000000006f8 = 0x101; + *(uint64_t*)0x200000000700 = 0xb3; + *(uint64_t*)0x200000000708 = 0; + *(uint32_t*)0x200000000710 = 0; + *(uint32_t*)0x200000000714 = 0xa; + *(uint64_t*)0x200000000718 = 3; + *(uint32_t*)0x200000000720 = 0; + syscall(SYS_lio_listio, /*mode=*/0ul, /*list=*/0x200000000580ul, /*nent=*/3ul, + /*sig=*/0ul); + return 0; +} +EOF +mycc -o /tmp/$prog -Wall -Wextra -O0 /tmp/$prog.c -lpthread || exit 1 +work=/tmp/$prog.dir +rm -rf $work +mkdir $work +cd /tmp/$prog.dir +timeout 3m /tmp/$prog > /dev/null 2>&1 + +rm -rf /tmp/$prog /tmp/$prog.c /tmp/$prog.core /tmp/$prog.?????? $work +exit 0 diff --git a/tools/test/stress2/misc/syzkaller77.sh b/tools/test/stress2/misc/syzkaller77.sh new file mode 100755 index 000000000000..c77a3fd2dd22 --- /dev/null +++ b/tools/test/stress2/misc/syzkaller77.sh @@ -0,0 +1,290 @@ +#!/bin/sh + +# panic: sofree:1883 curvnet is NULL, so=0xfffff8017ca59000 +# cpuid = 8 +# time = 1746559098 +# KDB: stack backtrace: +# db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe0182b5c8d0 +# vpanic() at vpanic+0x136/frame 0xfffffe0182b5ca00 +# panic() at panic+0x43/frame 0xfffffe0182b5ca60 +# sorele_locked() at sorele_locked+0x25f/frame 0xfffffe0182b5ca90 +# uipc_sendfile_wait() at uipc_sendfile_wait+0x1df/frame 0xfffffe0182b5caf0 +# vn_sendfile() at vn_sendfile+0x59b/frame 0xfffffe0182b5cd70 +# sendfile() at sendfile+0x129/frame 0xfffffe0182b5ce00 +# amd64_syscall() at amd64_syscall+0x15a/frame 0xfffffe0182b5cf30 +# fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe0182b5cf30 +# --- syscall (0, FreeBSD ELF64, syscall), rip = 0x8223fb72a, rsp = 0x824baaf58, rbp = 0x824baaf90 --- +# KDB: enter: panic +# [ thread pid 6382 tid 103296 ] +# Stopped at kdb_enter+0x33: movq $0,0x122f202(%rip) +# db> x/s version +# version: FreeBSD 15.0-CURRENT #0 main-n277057-794e792121ba-dirty: Tue May 6 18:34:20 CEST 2025 +# pho@mercat1.netperf.freebsd.org:/usr/src/sys/amd64/compile/PHO +# db> + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg +set -u +prog=$(basename "$0" .sh) +cat > /tmp/$prog.c < +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static void sleep_ms(uint64_t ms) +{ + usleep(ms * 1000); +} + +static uint64_t current_time_ms(void) +{ + struct timespec ts; + if (clock_gettime(CLOCK_MONOTONIC, &ts)) + exit(1); + return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; +} + +static void thread_start(void* (*fn)(void*), void* arg) +{ + pthread_t th; + pthread_attr_t attr; + pthread_attr_init(&attr); + pthread_attr_setstacksize(&attr, 128 << 10); + int i = 0; + for (; i < 100; i++) { + if (pthread_create(&th, &attr, fn, arg) == 0) { + pthread_attr_destroy(&attr); + return; + } + if (errno == EAGAIN) { + usleep(50); + continue; + } + break; + } + exit(1); +} + +typedef struct { + pthread_mutex_t mu; + pthread_cond_t cv; + int state; +} event_t; + +static void event_init(event_t* ev) +{ + if (pthread_mutex_init(&ev->mu, 0)) + exit(1); + if (pthread_cond_init(&ev->cv, 0)) + exit(1); + ev->state = 0; +} + +static void event_reset(event_t* ev) +{ + ev->state = 0; +} + +static void event_set(event_t* ev) +{ + pthread_mutex_lock(&ev->mu); + if (ev->state) + exit(1); + ev->state = 1; + pthread_mutex_unlock(&ev->mu); + pthread_cond_broadcast(&ev->cv); +} + +static void event_wait(event_t* ev) +{ + pthread_mutex_lock(&ev->mu); + while (!ev->state) + pthread_cond_wait(&ev->cv, &ev->mu); + pthread_mutex_unlock(&ev->mu); +} + +static int event_isset(event_t* ev) +{ + pthread_mutex_lock(&ev->mu); + int res = ev->state; + pthread_mutex_unlock(&ev->mu); + return res; +} + +static int event_timedwait(event_t* ev, uint64_t timeout) +{ + uint64_t start = current_time_ms(); + uint64_t now = start; + pthread_mutex_lock(&ev->mu); + for (;;) { + if (ev->state) + break; + uint64_t remain = timeout - (now - start); + struct timespec ts; + ts.tv_sec = remain / 1000; + ts.tv_nsec = (remain % 1000) * 1000 * 1000; + pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); + now = current_time_ms(); + if (now - start > timeout) + break; + } + int res = ev->state; + pthread_mutex_unlock(&ev->mu); + return res; +} + +struct thread_t { + int created, call; + event_t ready, done; +}; + +static struct thread_t threads[16]; +static void execute_call(int call); +static int running; + +static void* thr(void* arg) +{ + struct thread_t* th = (struct thread_t*)arg; + for (;;) { + event_wait(&th->ready); + event_reset(&th->ready); + execute_call(th->call); + __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); + event_set(&th->done); + } + return 0; +} + +static void loop(void) +{ + if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { + } + int i, call, thread; + for (call = 0; call < 8; call++) { + for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); + thread++) { + struct thread_t* th = &threads[thread]; + if (!th->created) { + th->created = 1; + event_init(&th->ready); + event_init(&th->done); + event_set(&th->done); + thread_start(thr, th); + } + if (!event_isset(&th->done)) + continue; + event_reset(&th->done); + th->call = call; + __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); + event_set(&th->ready); + event_timedwait(&th->done, 50); + break; + } + } + for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) + sleep_ms(1); +} + +uint64_t r[5] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, + 0xffffffffffffffff, 0xffffffffffffffff}; + +void execute_call(int call) +{ + intptr_t res = 0; + switch (call) { + case 0: + memcpy((void*)0x200000000480, "./file0\000", 8); + res = syscall( + SYS_open, /*file=*/0x200000000480ul, + /*flags=O_NONBLOCK|O_CREAT|O_RDWR|0x80000000000000*/ 0x80000000000206ul, + /*mode=*/0ul); + if (res != -1) + r[0] = res; + break; + case 1: + syscall(SYS_ftruncate, /*fd=*/r[0], /*len=*/0x3862ul); + break; + case 2: + res = syscall(SYS_socket, /*domain=*/2ul, /*type=*/2ul, /*proto=*/0x88); + if (res != -1) + r[1] = res; + break; + case 3: + res = syscall(SYS_socketpair, /*domain=*/1ul, /*type=SOCK_STREAM*/ 1ul, + /*proto=*/0, /*fds=*/0x200000000180ul); + if (res != -1) { + r[2] = *(uint32_t*)0x200000000180; + r[3] = *(uint32_t*)0x200000000184; + } + break; + case 4: + syscall(SYS_dup2, /*oldfd=*/r[2], /*newfd=*/r[1]); + break; + case 5: + memcpy((void*)0x200000000140, "./file0\000", 8); + res = syscall(SYS_open, /*file=*/0x200000000140ul, /*flags=*/0ul, + /*mode=*/0ul); + if (res != -1) + r[4] = res; + break; + case 6: + syscall(SYS_sendfile, /*fd=*/r[4], /*s=*/r[1], /*offset=*/0ul, + /*nbytes=*/0ul, /*hdtr=*/0ul, /*sbytes=*/0ul, + /*flags=SF_SYNC|SF_NOCACHE*/ 0x14ul); + break; + case 7: + syscall(SYS_dup2, /*oldfd=*/r[4], /*newfd=*/r[3]); + break; + } +} +int main(void) +{ + syscall(SYS_mmap, /*addr=*/0x200000000000ul, /*len=*/0x1000000ul, + /*prot=PROT_WRITE|PROT_READ|PROT_EXEC*/ 7ul, + /*flags=MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE*/ 0x1012ul, + /*fd=*/(intptr_t)-1, /*offset=*/0ul); + const char* reason; + (void)reason; + loop(); + return 0; +} +EOF +mycc -o /tmp/$prog -Wall -Wextra -O0 /tmp/$prog.c -lpthread || exit 1 + +(cd ../testcases/swap; ./swap -t 3m -i 30 -l 100 > /dev/null 2>&1) & +sleep 5 + +work=/tmp/$prog.dir +rm -rf $work +mkdir $work +cd /tmp/$prog.dir +for i in `jot 30`; do + ( + mkdir d$i + cd d$i + timeout 3m /tmp/$prog > /dev/null 2>&1 & + ) +done +while pgrep -q $prog; do sleep 2; done +while pkill swap; do :; done +wait + +rm -rf /tmp/$prog /tmp/$prog.c /tmp/$prog.core /tmp/$prog.?????? $work +exit 0 diff --git a/tools/test/stress2/misc/syzkaller78.sh b/tools/test/stress2/misc/syzkaller78.sh new file mode 100755 index 000000000000..1858129d4c81 --- /dev/null +++ b/tools/test/stress2/misc/syzkaller78.sh @@ -0,0 +1,282 @@ +#!/bin/sh + +# Fatal trap 12: page fault while in kernel mode +# cpuid = 10; apic id = 07 +# fault virtual address = 0x0 +# fault code = supervisor read data, page not present +# instruction pointer = 0x20:0xffffffff80c3c276 +# stack pointer = 0x28:0xfffffe017273eb00 +# frame pointer = 0x28:0xfffffe017273eb30 +# code segment = base 0x0, limit 0xfffff, type 0x1b +# = DPL 0, pres 1, long 1, def32 0, gran 1 +# processor eflags = interrupt enabled, resume, IOPL = 0 +# current process = 43905 (syzkaller78) +# rdi: fffff8005b5d55e0 rsi: 0000000000000008 rdx: ffffffff81249e88 +# rcx: fffff8001b9aed00 r8: 0000000000000000 r9: fffff80003396000 +# rax: 0000000000000000 rbx: fffff8005b5d5400 rbp: fffffe017273eb30 +# r10: 0000000000000000 r11: fffff804d84e9c60 r12: fffff8005b5d55f8 +# r13: 0000000000000000 r14: fffff80497171700 r15: fffff8005b5d55c0 +# trap number = 12 +# panic: page fault +# cpuid = 7 +# time = 1746555157 +# KDB: stack backtrace: +# db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe017273e830 +# vpanic() at vpanic+0x136/frame 0xfffffe017273e960 +# panic() at panic+0x43/frame 0xfffffe017273e9c0 +# trap_pfault() at trap_pfault+0x48d/frame 0xfffffe017273ea30 +# calltrap() at calltrap+0x8/frame 0xfffffe017273ea30 +# --- trap 0xc, rip = 0xffffffff80c3c276, rsp = 0xfffffe017273eb00, rbp = 0xfffffe017273eb30 --- +# unp_dispose() at unp_dispose+0x3b6/frame 0xfffffe017273eb30 +# uipc_detach() at uipc_detach+0x35/frame 0xfffffe017273eb80 +# sorele_locked() at sorele_locked+0x107/frame 0xfffffe017273ebb0 +# soclose() at soclose+0x17d/frame 0xfffffe017273ec10 +# _fdrop() at _fdrop+0x1b/frame 0xfffffe017273ec30 +# closef() at closef+0x1e3/frame 0xfffffe017273ecc0 +# fdescfree() at fdescfree+0x41e/frame 0xfffffe017273ed80 +# exit1() at exit1+0x4a4/frame 0xfffffe017273edf0 +# sys_exit() at sys_exit+0xd/frameamd64_syscall() at amd64_syscall+0x15a/frame 0xfffffe017273ef30 +# fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe017273ef30 +# --- syscall (1, FreeBSD ELF64, exit), rip = 0x823ab472a, rsp = 0x8208e3ea8, rbp = 0x8208e3ec0 --- +# KDB: enter: panic +# [ thread pid 43905 tid 103344 ] +# Stopped at kdb_enter+0x33: movq $0,0x122f202(%rip) +# db> + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg +set -u +prog=$(basename "$0" .sh) +cat > /tmp/$prog.c < + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static unsigned long long procid; + +static void kill_and_wait(int pid, int* status) +{ + kill(pid, SIGKILL); + while (waitpid(-1, status, 0) != pid) { + } +} + +static void sleep_ms(uint64_t ms) +{ + usleep(ms * 1000); +} + +static uint64_t current_time_ms(void) +{ + struct timespec ts; + if (clock_gettime(CLOCK_MONOTONIC, &ts)) + exit(1); + return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; +} + +static void use_temporary_dir(void) +{ + char tmpdir_template[] = "./syzkaller.XXXXXX"; + char* tmpdir = mkdtemp(tmpdir_template); + if (!tmpdir) + exit(1); + if (chmod(tmpdir, 0777)) + exit(1); + if (chdir(tmpdir)) + exit(1); +} + +static void reset_flags(const char* filename) +{ + struct stat st; + if (lstat(filename, &st)) + exit(1); + st.st_flags &= ~(SF_NOUNLINK | UF_NOUNLINK | SF_IMMUTABLE | UF_IMMUTABLE | + SF_APPEND | UF_APPEND); + if (lchflags(filename, st.st_flags)) + exit(1); +} +static void __attribute__((noinline)) remove_dir(const char* dir) +{ + DIR* dp = opendir(dir); + if (dp == NULL) { + if (errno == EACCES) { + if (rmdir(dir)) + exit(1); + return; + } + exit(1); + } + struct dirent* ep = 0; + while ((ep = readdir(dp))) { + if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) + continue; + char filename[FILENAME_MAX]; + snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); + struct stat st; + if (lstat(filename, &st)) + exit(1); + if (S_ISDIR(st.st_mode)) { + remove_dir(filename); + continue; + } + if (unlink(filename)) { + if (errno == EPERM) { + reset_flags(filename); + reset_flags(dir); + if (unlink(filename) == 0) + continue; + } + exit(1); + } + } + closedir(dp); + while (rmdir(dir)) { + if (errno == EPERM) { + reset_flags(dir); + if (rmdir(dir) == 0) + break; + } + exit(1); + } +} + +static void execute_one(void); + +#define WAIT_FLAGS 0 + +static void loop(void) +{ + int iter = 0; + for (;; iter++) { + char cwdbuf[32]; + sprintf(cwdbuf, "./%d", iter); + if (mkdir(cwdbuf, 0777)) + exit(1); + int pid = fork(); + if (pid < 0) + exit(1); + if (pid == 0) { + if (chdir(cwdbuf)) + exit(1); + execute_one(); + exit(0); + } + int status = 0; + uint64_t start = current_time_ms(); + for (;;) { + sleep_ms(10); + if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) + break; + if (current_time_ms() - start < 5000) + continue; + kill_and_wait(pid, &status); + break; + } + remove_dir(cwdbuf); + } +} + +uint64_t r[5] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, + 0xffffffffffffffff, 0xffffffffffffffff}; + +void execute_one(void) +{ + intptr_t res = 0; + if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { + } + memcpy((void*)0x200000000480, "./file0\000", 8); + res = syscall( + SYS_open, /*file=*/0x200000000480ul, + /*flags=O_NONBLOCK|O_CREAT|O_RDWR|0x80000000000000*/ 0x80000000000206ul, + /*mode=*/0ul); + if (res != -1) + r[0] = res; + syscall(SYS_ftruncate, /*fd=*/r[0], /*len=*/0x3862ul); + memcpy((void*)0x200000000100, "./file0\000", 8); + res = syscall(SYS_open, /*file=*/0x200000000100ul, + /*flags=O_DIRECT*/ 0x10000ul, /*mode=*/0ul); + if (res != -1) + r[1] = res; + *(uint64_t*)0x2000000000c0 = 0x200000000340; + *(uint64_t*)0x2000000000c8 = 0x41; + syscall(SYS_readv, /*fd=*/r[1], /*vec=*/0x2000000000c0ul, /*vlen=*/1ul); + res = syscall(SYS_socket, /*domain=*/2ul, /*type=*/2ul, /*proto=*/0x88); + if (res != -1) + r[2] = res; + res = syscall(SYS_socketpair, /*domain=*/1ul, /*type=SOCK_STREAM*/ 1ul, + /*proto=*/0, /*fds=*/0x200000000180ul); + if (res != -1) + r[3] = *(uint32_t*)0x200000000180; + syscall(SYS_dup2, /*oldfd=*/r[3], /*newfd=*/r[2]); + memcpy((void*)0x200000000140, "./file0\000", 8); + res = + syscall(SYS_open, /*file=*/0x200000000140ul, /*flags=*/0ul, /*mode=*/0ul); + if (res != -1) + r[4] = res; + syscall(SYS_sendfile, /*fd=*/r[4], /*s=*/r[2], /*offset=*/0xcbul, + /*nbytes=*/0x2000ul, /*hdtr=*/0ul, /*sbytes=*/0ul, + /*flags=SF_USER_READAHEAD|SF_NODISKIO|0x2*/ 0xbul); +} +int main(void) +{ + syscall(SYS_mmap, /*addr=*/0x200000000000ul, /*len=*/0x1000000ul, + /*prot=PROT_WRITE|PROT_READ|PROT_EXEC*/ 7ul, + /*flags=MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE*/ 0x1012ul, + /*fd=*/(intptr_t)-1, /*offset=*/0ul); + const char* reason; + (void)reason; + for (procid = 0; procid < 4; procid++) { + if (fork() == 0) { + use_temporary_dir(); + loop(); + } + } + sleep(1000000); + return 0; +} +EOF +mycc -o /tmp/$prog -Wall -Wextra -O0 /tmp/$prog.c -lpthread || exit 1 + +(cd ../testcases/swap; ./swap -t 3m -i 30 -l 100 > /dev/null 2>&1) & +sleep 5 + +work=/tmp/$prog.dir +rm -rf $work +mkdir $work +cd /tmp/$prog.dir +for i in `jot 30`; do + ( + mkdir d$i + cd d$i + timeout 3m /tmp/$prog > /dev/null 2>&1 & + ) +done +while pgrep -q $prog; do sleep 2; done +while pkill swap; do :; done +wait + +rm -rf /tmp/$prog /tmp/$prog.c /tmp/$prog.core /tmp/$prog.?????? $work +exit 0 diff --git a/tools/test/stress2/misc/syzkaller79.sh b/tools/test/stress2/misc/syzkaller79.sh new file mode 100755 index 000000000000..7413a2034a3d --- /dev/null +++ b/tools/test/stress2/misc/syzkaller79.sh @@ -0,0 +1,82 @@ +#!/bin/sh + +# panic: mutex so_rcv not owned at ../../../kern/uipc_usrreq.c:1750 +# cpuid = 5 +# time = 1746938647 +# KDB: stack backtrace: +# db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe01e75c5b40 +# vpanic() at vpanic+0x136/frame 0xfffffe01e75c5c70 +# panic() at panic+0x43/frame 0xfffffe01e75c5cd0 +# __mtx_assert() at __mtx_assert+0xa9/frame 0xfffffe01e75c5ce0 +# knote() at knote+0x45/frame 0xfffffe01e75c5d30 +# sowwakeup_locked() at sowwakeup_locked+0xc8/frame 0xfffffe01e75c5d50 +# socantsendmore() at socantsendmore+0x4f/frame 0xfffffe01e75c5d70 +# uipc_shutdown() at uipc_shutdown+0x113/frame 0xfffffe01e75c5db0 +# soshutdown() at soshutdown+0x3e/frame 0xfffffe01e75c5dd0 +# kern_shutdown() at kern_shutdown+0x5e/frame 0xfffffe01e75c5e00 +# amd64_syscall() at amd64_syscall+0x15a/frame 0xfffffe01e75c5f30 +# fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe01e75c5f30 +# --- syscall (0, FreeBSD ELF64, syscall), rip = 0x82281772a, rsp = 0x82092efd8, rbp = 0x82092f000 --- +# KDB: enter: panic +# [ thread pid 54792 tid 1014483 ] +# Stopped at kdb_enter+0x33: movq $0,0x122f192(%rip) +# db> x/s version +# version: FreeBSD 15.0-CURRENT #0 main-n277201-48578dcb6b7e-dirty: Sat May 10 13:10:42 CEST 2025 +# pho@mercat1.netperf.freebsd.org:/usr/src/sys/amd64/compile/PHO +# db> + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg +set -u +prog=$(basename "$0" .sh) +cat > /tmp/$prog.c < +#include +#include +#include +#include +#include +#include +#include +#include +#include + +uint64_t r[1] = {0xffffffffffffffff}; + +int main(void) +{ + syscall(SYS_mmap, /*addr=*/0x200000000000ul, /*len=*/0x1000000ul, + /*prot=PROT_WRITE|PROT_READ|PROT_EXEC*/ 7ul, + /*flags=MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE*/ 0x1012ul, + /*fd=*/(intptr_t)-1, /*offset=*/0ul); + const char* reason; + (void)reason; + intptr_t res = 0; + if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { + } + res = syscall(SYS_socketpair, /*domain=*/1ul, /*type=SOCK_SEQPACKET*/ 5ul, + /*proto=*/0, /*fds=*/0x200000000040ul); + if (res != -1) + r[0] = *(uint32_t*)0x200000000044; + syscall(SYS_fcntl, /*fd=*/r[0], /*cmd=*/4ul, /*flags=FASYNC*/ 0x40ul); + syscall(SYS_shutdown, /*fd=*/r[0], /*how=*/2ul); + return 0; +} +EOF +mycc -o /tmp/$prog -Wall -Wextra -O0 /tmp/$prog.c -lpthread || exit 1 + +work=/tmp/$prog.dir +rm -rf $work +mkdir $work +cd /tmp/$prog.dir +timeout 3m /tmp/$prog > /dev/null 2>&1 + +rm -rf /tmp/$prog /tmp/$prog.c /tmp/$prog.core /tmp/$prog.?????? $work +exit 0 From nobody Mon May 12 12:50:18 2025 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 4ZwzwW0Lz9z5w0Sj; Mon, 12 May 2025 12:50:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwzwV6vSFz3rNL; Mon, 12 May 2025 12:50:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054219; 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=g0ZjNwuwDG0EC5Jyo1Z12h8r50SJSXpNvKYXzPV9UKI=; b=DiPp3QxuEsGhPyEgsRhpqCy9rbYDueCIZjCqvVCbLTVV/qSfQO7y2lDyNp/Fo07oN/hpgL on3C1wI8GH2mQ5/wgvoYgTCK6wIPQM88amFwjoGdtoBuIj5D+d49sY24KMshfAGwXaandh AFsJIJ6dMBHpJP5thtMANUtl5ZE9Ds7VTFRpDiGYFOSWBljnPeF5AOGd0KUdPix299qb+t yMfBgJGtD2UlwanIQWsPnj4Yvke8e7ymt24CfhHVBs8vAlDiyGHKapPhPE+yBvndukbL5L UzeSU+jagycN07CXRlFqqPzP7YwqfrqSeaVm/y90GHARFWk0BjmVyp49cUmLUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054219; 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=g0ZjNwuwDG0EC5Jyo1Z12h8r50SJSXpNvKYXzPV9UKI=; b=DrLy1vBrLhWB5TmhcvaIGN3eMKtLBudNxecm/fhaLYTaH4bcXVPu0SWfQYrUWjm7WYBQiL u6JXlYji62/AiwCJLlvq0KB7hks3V+z9HsElJhgQyTwjHGWdmw7uP0rl0TLu3FBOugIFXU ssWPRkhEogRbRI5oc6IIlXYklrOcTaYlpRR15RW0SH8GIZ02qDoNIlht8HOFb7sTpirQdo VfGMnuvq0xEZIV6jpFqTNFA4cflgqXKZr/V7U6Dp6drlfcv62Kp4p43UTnMUlE+VyP8H63 PmLzwBOYFD4tMXkYJkVqkVUlKdnoQPe9XDZ2A2p4eO3Uu3fKGVqaEOenaK0rNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054219; a=rsa-sha256; cv=none; b=LOw9Sj495RXhziLYpTmqQLu/mH0KQ6XpgBqc29lnj/WZrqHNYN5+yXafMhtRxjaMPekd5f pRt4eqN1IvSCwZvh1IOBHJcSboq18NdXnmn2FN/Q+cUfG6pG6DMhLaxvPImBxdz+nwYVgl JW3teXj7slKauLX2t1e89+wGgWzrOpuxfyO0W74Ot0rmAgYgF33qIa0WGkdst8AaK2jD7D M5ZLxXZUnLSsERqzA9rrhA0h+h4b8J1kzDW1o6qH+ucyAjNjKmoNxRG6vGSZz/T1aRWTmw HGxrA9WJfoRzkPoNZb6G5dL5kXsiJDkbarLZlFmEkqcV9K+U9ib3wDNNKAdy5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwzwV6VvYz1G4H; Mon, 12 May 2025 12:50:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoIHo082790; Mon, 12 May 2025 12:50:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoIhW082787; Mon, 12 May 2025 12:50:18 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:18 GMT Message-Id: <202505121250.54CCoIhW082787@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 8bfb456eafd3 - main - arm64: Raise a SIGILL if we fail reading an insn 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8bfb456eafd34e2de89d2fb77af7a1d34474ca0d Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=8bfb456eafd34e2de89d2fb77af7a1d34474ca0d commit 8bfb456eafd34e2de89d2fb77af7a1d34474ca0d Author: Andrew Turner AuthorDate: 2025-05-12 11:04:05 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:04:05 +0000 arm64: Raise a SIGILL if we fail reading an insn When reading an instruction we may fail if another thread is unmapping a page while the current thread is executing from it. In this case raise a SIGILL rather than panicing the kernel. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50203 --- sys/arm64/arm64/undefined.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/arm64/arm64/undefined.c b/sys/arm64/arm64/undefined.c index c307281ea523..cdd2a083ec17 100644 --- a/sys/arm64/arm64/undefined.c +++ b/sys/arm64/arm64/undefined.c @@ -322,8 +322,9 @@ undef_insn(u_int el, struct trapframe *frame) if (el == 0) { ret = fueword32((uint32_t *)frame->tf_elr, &insn); + /* Raise a SIGILL if we are unable to read the instruction */ if (ret != 0) - panic("Unable to read userspace faulting instruction"); + return (0); } else { insn = *(uint32_t *)frame->tf_elr; } From nobody Mon May 12 12:50:19 2025 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 4ZwzwX1sflz5w0hG; Mon, 12 May 2025 12:50:20 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwzwX0n6Pz3rFF; Mon, 12 May 2025 12:50:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054220; 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=9zBQB2tRKadF2Epyz4o/z5soY5O1H5clVKR4J9ac3no=; b=coAJhyvdMFJBAHJLBcYZ4rSX4hFMUDIFzfyueC6I6mxCYp/kqZmJ4j3xclQto6aEhQbDnO Wk/osPByAQAIYRlX/RsrvTrNM4cTAbdJRe9Pjn2J0ZPC7ufLXpwfzwAftDtsQ4l9ttk7UT rH+Ujo9+RY7PH0iVkZOQ7uP8Gvj3Mteil4WcDqPqwV9Ru3yfpFHDnDGCfw1b2cvo6bpdnK UYUwbEJPApJMBOSZt+6FJ/77U5DrwF61IIDSW+U1Hnyv4FVO2fR7c/2PTZ+saPhpmsMw72 DntD7Oaro3If8U7cuiXyl3oEWyzUd0mPLRzkP05jSA7qqvM5Pjl7UBCnUIEmmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054220; 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=9zBQB2tRKadF2Epyz4o/z5soY5O1H5clVKR4J9ac3no=; b=IZKrubJk0eJyRjpX8mmvRvDdjRhKJ1VnRp/dJqT0Nc13TBDPaTrGwWMwdOjN2bh0r4bDR3 /a8+lpSu+PGSwAkvj4iN0LEh8nxKZgDdHENPm/lzmA6dfD+WCRJiBwd4LSmngrrrVNCign 38lE0FMfazXvvXywu3TR++iZ7qX1N/hFJWTTLJPJ2GaB5pBmCPsIv0hqHOKO93Wlx8hQVx Rs+2grSDgcXS/cPsjfps6syJ061FQ81/+e+WLh9blqlN3sETXJdAlCm6awWEmavsnpyJ46 +HGPA2dZNQXhOp+RQu77cvEdPb8wUdY2deom1M6LIMh8Sdz1fBvkB2k/D4ePCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054220; a=rsa-sha256; cv=none; b=EVCDmXyfzpdEXwITHwcu4mtygL1v2Nput9qTMrqLXwbUxEiGAcqJKWY1yrFcfEr3SGxWxX qGc6Lf3s6pNaVX8G4tIRA/oZZl8W1TcERLhk6E2n+IwTDQYrLsZmP6AiqSXoaHg9ZwX6Sq YJ7arhcf+uPplOVO4RP0Q4z4qEecYHWw+mNmO3jTbbDy7QvitFMci8fonTzviWHXNLKRPt +G4CuzsOtGtp09ORS9CYL3L9utDipoiOSsxJtEg7O7r6d0jwLgWdtWeAAHIUKFRLVW87to /YB78A6nMkZEHPqcRqh3WogxtnIbNEmP+L+MXV3ecZSXB4FccWcXgYRNHUtr7A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwzwX0JvCz1Gdb; Mon, 12 May 2025 12:50:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoJrI082823; Mon, 12 May 2025 12:50:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoJxU082820; Mon, 12 May 2025 12:50:19 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:19 GMT Message-Id: <202505121250.54CCoJxU082820@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 10a93c92c40a - main - arm64: Remove an old workaround 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 10a93c92c40aab0fd3f24bf17005318b165b9ef4 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=10a93c92c40aab0fd3f24bf17005318b165b9ef4 commit 10a93c92c40aab0fd3f24bf17005318b165b9ef4 Author: Andrew Turner AuthorDate: 2025-05-12 11:05:58 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:05:58 +0000 arm64: Remove an old workaround This is an old workaround for an instruction that wasn't emulated correctly in some places. As we now read more ID registers that should also hit this bug trapping this register, and not the others we can assume nobody hits this anymore. Reviewed by: harry.moulton_arm.com, imp, emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50204 --- sys/arm64/arm64/undefined.c | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/sys/arm64/arm64/undefined.c b/sys/arm64/arm64/undefined.c index cdd2a083ec17..1f44114af544 100644 --- a/sys/arm64/arm64/undefined.c +++ b/sys/arm64/arm64/undefined.c @@ -88,36 +88,6 @@ struct undef_handler { */ LIST_HEAD(, undef_handler) undef_handlers[2]; -/* - * Work around a bug in QEMU prior to 2.5.1 where reading unknown ID - * registers would raise an exception when they should return 0. - */ -static int -id_aa64mmfr2_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, - uint32_t esr) -{ - int reg; - -#define MRS_ID_AA64MMFR2_EL0_MASK (MRS_MASK | 0x000fffe0) -#define MRS_ID_AA64MMFR2_EL0_VALUE (MRS_VALUE | 0x00080740) - - /* mrs xn, id_aa64mfr2_el1 */ - if ((insn & MRS_ID_AA64MMFR2_EL0_MASK) == MRS_ID_AA64MMFR2_EL0_VALUE) { - reg = MRS_REGISTER(insn); - - frame->tf_elr += INSN_SIZE; - if (reg < nitems(frame->tf_x)) { - frame->tf_x[reg] = 0; - } else if (reg == 30) { - frame->tf_lr = 0; - } - /* If reg is 32 then write to xzr, i.e. do nothing */ - - return (1); - } - return (0); -} - static bool arm_cond_match(uint32_t insn, struct trapframe *frame) { @@ -282,7 +252,6 @@ undef_init(void) LIST_INIT(&undef_handlers[0]); LIST_INIT(&undef_handlers[1]); - install_undef_handler(false, id_aa64mmfr2_handler); #ifdef COMPAT_FREEBSD32 install_undef_handler(true, gdb_trapper); install_undef_handler(true, swp_emulate); From nobody Mon May 12 12:50:21 2025 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 4ZwzwY49h3z5w0bS; Mon, 12 May 2025 12:50:21 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwzwY26bFz3r4j; Mon, 12 May 2025 12:50:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054221; 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=pG0Gq74V2VyTIEAUVIwU6l/0atRp62NTISoeUNaLPFo=; b=PE9oTvApuPMlg/xXKmuKkbl2gRwVgt9ErBMJFPXaswX+4GK0t7KCs0CaY5+c89LfW6jomd /EwT/7U8SU3AIgb9OAznc4i9bCR8iO93p6bE/dZMK1ZAitrHFk61CEOunN/Ot5kMajqynl CrwPQQ2gWka0/Lldt8NWRheW7J76QHmvv0hJ8XW2TZmGgKh7EH48XiyouLmE9Y70zTlu/k c41aIrJURuXjO0f06y+7caSK8g7bLNqdHszk3mWTpEiHOhHnSyEvKqjJwCxfhyWgQTVrk2 PV6udp9Y8wBB3L2Bwy8WIW48cbuuuNRMs38zP3pcuwbb95cdQ8TsjqsyLG21KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054221; 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=pG0Gq74V2VyTIEAUVIwU6l/0atRp62NTISoeUNaLPFo=; b=shiOJsQA9ZiaW50h0wZPkN/bYwu6BLjzuYkdQVnV0o0sS5sCU2W2Idpo0AIAEhs5UiYLDN 1yazKf520LYhqsUJ5A+Ai2LoP+ljD2u9t1rYZzybQA2QypzX0RnV0dFQyNiTLAXoZeX02D ZojJ6U+9qNVQjEAvdCVA78rn0u5B4xFnUq/B74ckQbZAswM2IiM478xbxIGkwta5FFd0G8 Rtv8k6ea6Wr1fx1tQqHPQDDrlSEknt93I8P8htdteegmTuecj4ww1JlerG0VnPfJT8dCc4 KNddZlJ0+wTCTfPwmLHXB9+Bs5xbEXNRc885OysaUA2pEYZg7uiKAINBL6F/hA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054221; a=rsa-sha256; cv=none; b=paXCJ9K8k+8EvQULxk4Y0FuZDcMDTgCh/3IlfqPfjmgIU0tNryf6oq/Gt2NbwXQtYc5Aq5 2u72jE1DThreDwWtk5SpTuUxiMol+CLpwMdiKgUDf6+JPvy/daiWH/zLzwNBqFgCDcBiIz hxw5R3ZreyfSvydSV95fsCCi2sqZPtZMjvudT60QnkK/MK1UuhY6uWAV/kOv8Q0R4QmKDs x9PyNHCJzPgMWInTnKTmA9izMH7MXgss4UrfuGucwitsNEY09rsW6UXWAiL0p/2zOvXS8V ooGK7Wc01Dp5BB2KPnf5mer/fHZ24ZiUfwW7dRdOPtnu44nsmjzUM2Y93pqjCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwzwY1HTgz1Fyt; Mon, 12 May 2025 12:50:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoLon082856; Mon, 12 May 2025 12:50:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoLqi082853; Mon, 12 May 2025 12:50:21 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:21 GMT Message-Id: <202505121250.54CCoLqi082853@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: f68ca1421a1d - main - arm64: Remove kernel undef instruction support 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f68ca1421a1d54b29b2d2059b77459e00e86bba0 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=f68ca1421a1d54b29b2d2059b77459e00e86bba0 commit f68ca1421a1d54b29b2d2059b77459e00e86bba0 Author: Andrew Turner AuthorDate: 2025-05-12 11:06:08 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:06:08 +0000 arm64: Remove kernel undef instruction support Now we don't handle any undefined instructions in the kernel remove the support to handle them. The kernel should only ever execute valid instructions. The only case it needed to handle was an old emulator that is now well out of support, and the handler for this has been removed. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50205 --- sys/arm/arm/generic_timer.c | 2 +- sys/arm64/arm64/identcpu.c | 4 ++-- sys/arm64/arm64/trap.c | 6 ++---- sys/arm64/arm64/undefined.c | 37 ++++++++++++++----------------------- sys/arm64/include/undefined.h | 4 ++-- 5 files changed, 21 insertions(+), 32 deletions(-) diff --git a/sys/arm/arm/generic_timer.c b/sys/arm/arm/generic_timer.c index 685398117396..a82f8756b806 100644 --- a/sys/arm/arm/generic_timer.c +++ b/sys/arm/arm/generic_timer.c @@ -332,7 +332,7 @@ tmr_setup_user_access(void *arg __unused) #ifdef __aarch64__ if (TUNABLE_INT_FETCH("hw.emulate_phys_counter", &emulate) && emulate != 0) { - install_undef_handler(true, cntpct_handler); + install_undef_handler(cntpct_handler); } #endif } diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 654a1b63d165..663c1a335114 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -2792,8 +2792,8 @@ identify_cpu_sysinit(void *dummy __unused) panic("CPU does not support LSE atomic instructions"); #endif - install_undef_handler(true, user_ctr_handler); - install_undef_handler(true, user_mrs_handler); + install_undef_handler(user_ctr_handler); + install_undef_handler(user_mrs_handler); } SYSINIT(identify_cpu, SI_SUB_CPU, SI_ORDER_MIDDLE, identify_cpu_sysinit, NULL); diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index fdcc38cd9a31..bed58095201a 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -578,8 +578,6 @@ do_el1h_sync(struct thread *td, struct trapframe *frame) panic("FPAC kernel exception"); break; case EXCP_UNKNOWN: - if (undef_insn(1, frame)) - break; print_registers(frame); print_gp_register("far", far); panic("Undefined instruction: %08x", @@ -676,7 +674,7 @@ do_el0_sync(struct thread *td, struct trapframe *frame) } break; case EXCP_UNKNOWN: - if (!undef_insn(0, frame)) + if (!undef_insn(frame)) call_trapsignal(td, SIGILL, ILL_ILLTRP, (void *)far, exception); userret(td, frame); @@ -716,7 +714,7 @@ do_el0_sync(struct thread *td, struct trapframe *frame) * instruction to access a special register userspace doesn't * have access to. */ - if (!undef_insn(0, frame)) + if (!undef_insn(frame)) call_trapsignal(td, SIGILL, ILL_PRVOPC, (void *)frame->tf_elr, exception); userret(td, frame); diff --git a/sys/arm64/arm64/undefined.c b/sys/arm64/arm64/undefined.c index 1f44114af544..71c9b689aa78 100644 --- a/sys/arm64/arm64/undefined.c +++ b/sys/arm64/arm64/undefined.c @@ -83,10 +83,11 @@ struct undef_handler { }; /* - * Create two undefined instruction handler lists, one for userspace, one for - * the kernel. This allows us to handle instructions that will trap + * Create the undefined instruction handler lists. + * This allows us to handle instructions that will trap. */ -LIST_HEAD(, undef_handler) undef_handlers[2]; +LIST_HEAD(, undef_handler) undef_handlers = + LIST_HEAD_INITIALIZER(undef_handlers); static bool arm_cond_match(uint32_t insn, struct trapframe *frame) @@ -248,24 +249,20 @@ fault: void undef_init(void) { - - LIST_INIT(&undef_handlers[0]); - LIST_INIT(&undef_handlers[1]); - #ifdef COMPAT_FREEBSD32 - install_undef_handler(true, gdb_trapper); - install_undef_handler(true, swp_emulate); + install_undef_handler(gdb_trapper); + install_undef_handler(swp_emulate); #endif } void * -install_undef_handler(bool user, undef_handler_t func) +install_undef_handler(undef_handler_t func) { struct undef_handler *uh; uh = malloc(sizeof(*uh), M_UNDEF, M_WAITOK); uh->uh_handler = func; - LIST_INSERT_HEAD(&undef_handlers[user ? 0 : 1], uh, uh_link); + LIST_INSERT_HEAD(&undef_handlers, uh, uh_link); return (uh); } @@ -281,24 +278,18 @@ remove_undef_handler(void *handle) } int -undef_insn(u_int el, struct trapframe *frame) +undef_insn(struct trapframe *frame) { struct undef_handler *uh; uint32_t insn; int ret; - KASSERT(el < 2, ("Invalid exception level %u", el)); - - if (el == 0) { - ret = fueword32((uint32_t *)frame->tf_elr, &insn); - /* Raise a SIGILL if we are unable to read the instruction */ - if (ret != 0) - return (0); - } else { - insn = *(uint32_t *)frame->tf_elr; - } + ret = fueword32((uint32_t *)frame->tf_elr, &insn); + /* Raise a SIGILL if we are unable to read the instruction */ + if (ret != 0) + return (0); - LIST_FOREACH(uh, &undef_handlers[el], uh_link) { + LIST_FOREACH(uh, &undef_handlers, uh_link) { ret = uh->uh_handler(frame->tf_elr, insn, frame, frame->tf_esr); if (ret) return (1); diff --git a/sys/arm64/include/undefined.h b/sys/arm64/include/undefined.h index db5d0523e711..1370a648b17c 100644 --- a/sys/arm64/include/undefined.h +++ b/sys/arm64/include/undefined.h @@ -57,9 +57,9 @@ MRS_GET(CRm) MRS_GET(Op2) void undef_init(void); -void *install_undef_handler(bool, undef_handler_t); +void *install_undef_handler(undef_handler_t); void remove_undef_handler(void *); -int undef_insn(u_int, struct trapframe *); +int undef_insn(struct trapframe *); #endif /* _KERNEL */ From nobody Mon May 12 12:50:22 2025 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 4ZwzwZ6BBFz5w0hP; Mon, 12 May 2025 12:50:22 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZwzwZ2qh9z3rR4; Mon, 12 May 2025 12:50:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054222; 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=Erom3bSmmHqsm1u0vWMknQtBGO66NhaHX0iMXOltf8Y=; b=g9DffO59VhZ+KJHTaYnWSLFkdyQkRFO2rkOd62Vjon1lbty+ggiC9A49a0DHzkJBf5M6i4 9f9tc3RfuujwntwEG49eQXdoy8U6GyI3ghofrn9JHKwE4yE4ukVyghntR8TNaKGTNJ8EXp +Z8vXCsZf+qkGy7soI7gMSPI/wDhOzUGnS1Rithgn9HSwbPppg77fUKTpOhfrasirMJgDT WomG/DibV4Q0EbwEKmZJ0DYRNPHgtRVZyb3TxWPO5JkCA5E5p3caOrfoMiDFSX+jvphYaD Xs1OGpHtHUtixmJ0+nk0QeJskX6GAC5JNNhvmsJgMELUa3o6YKDdbs4EKRFxsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054222; 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=Erom3bSmmHqsm1u0vWMknQtBGO66NhaHX0iMXOltf8Y=; b=ctab8KevaMYQadKeqry3t1wNKUBrhOp+9JTmILW+GMa4n+l26KHNqmDi+vebGjWyRfXs9E VnUN39155pQBfbWPNfZTE80lXeqOA8jE53NY+GS7CoF16UIqbYpZfWfuuvc6rD66DzgAB9 hHRbzUCFBR3UJ4Pj3VmblDtDMMqkJ4gnKuJ5b+MNoo7D2yqnv/Jn5yeRoamqTs4n4igXK4 MuoPRwc6SW6lq4PzvQh6uCXqBA+CdnoQt0Y2gt0ATV0b/XTZUBeSaJUsk41YFtvZ643dNS 9L/kuhd55NOI312ExlDH68dAOnqDI5qqCvP7OQxy+xPyLgN/2ffDdJCty004Mw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054222; a=rsa-sha256; cv=none; b=F0fNsX1d68MkV1umLVZobM67H9Q2iKBEwR92QTgF0JjOWQH9F92mWQJU1kQQ6Xt8w4hL17 UF3vWwCBya3D6LQ2OblBjvvjx/qGzi1FZXHJgs21fvdjQMS9HAAU8IpTuguxZoxys5EsLq T1GYuLtgrHhlGAnpwzRXt7CqNpmIpo47GKV91NjbFHXMrkJqEvhDjNVsmUJR5WYRsKeWPw FUm85PWxPJU9QqnAb9Nmj9tom7d+JYoE6hoYetTztGifz7ZcJ0c3ptfxYs73jkLzykNheF upJ3T0LI23Bah37N8ILN42uIHPKqKrTMAU0fDxhxHzQOOTiaAGj+xNo+KECJLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZwzwZ2JNRz1GNQ; Mon, 12 May 2025 12:50:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoMdU082893; Mon, 12 May 2025 12:50:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoMSc082890; Mon, 12 May 2025 12:50:22 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:22 GMT Message-Id: <202505121250.54CCoMSc082890@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 4b6308416e3e - main - arm64: Allow building the MSR ISS from raw values 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4b6308416e3e710448a636a9702c27e3a3f70c6e Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=4b6308416e3e710448a636a9702c27e3a3f70c6e commit 4b6308416e3e710448a636a9702c27e3a3f70c6e Author: Andrew Turner AuthorDate: 2025-05-12 11:06:17 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:06:17 +0000 arm64: Allow building the MSR ISS from raw values This will be used in improved MSR/MRS instruction handling from userspace. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50206 --- sys/arm64/include/armreg.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index a72e1ea99793..0e89ad57440f 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -604,12 +604,14 @@ #define ISS_MSR_REG_MASK \ (ISS_MSR_OP0_MASK | ISS_MSR_OP2_MASK | ISS_MSR_OP1_MASK | \ ISS_MSR_CRn_MASK | ISS_MSR_CRm_MASK) +#define __ISS_MSR_REG(op0, op1, crn, crm, op2) \ + (((op0) << ISS_MSR_OP0_SHIFT) | \ + ((op1) << ISS_MSR_OP1_SHIFT) | \ + ((crn) << ISS_MSR_CRn_SHIFT) | \ + ((crm) << ISS_MSR_CRm_SHIFT) | \ + ((op2) << ISS_MSR_OP2_SHIFT)) #define ISS_MSR_REG(reg) \ - (((reg ## _op0) << ISS_MSR_OP0_SHIFT) | \ - ((reg ## _op1) << ISS_MSR_OP1_SHIFT) | \ - ((reg ## _CRn) << ISS_MSR_CRn_SHIFT) | \ - ((reg ## _CRm) << ISS_MSR_CRm_SHIFT) | \ - ((reg ## _op2) << ISS_MSR_OP2_SHIFT)) + __ISS_MSR_REG(reg##_op0, reg##_op1, reg##_CRn, reg##_CRm, reg##_op2) #define ISS_DATA_ISV_SHIFT 24 #define ISS_DATA_ISV (0x01 << ISS_DATA_ISV_SHIFT) From nobody Mon May 12 12:50:23 2025 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 4Zwzwb66sYz5w0ks; Mon, 12 May 2025 12:50:23 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwb3n22z3rFp; Mon, 12 May 2025 12:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054223; 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=GmKZD624l8jCdxxK0+0wE6k1vlwot6CNVDbgldemuY4=; b=H7W7nLxvxUFX2CBVO2GLkeK8OT5CrG4kf2QWfpgFdK6cDTQGPH6ShZJqIAa47XC/bL7WA4 gFkKVz7tccec6LTtpuIUT4QJcHUpUovt7cla3IXkbCWaG1LLNaQwcDddfonRdonPqT8GmB L05IrFZgWt5qibypRqc2eeU2z2r1SJFh78vzV3n3LDHAr+aHH/sam534PS4uRquSDhKjkh X2ePIwjab6JutX3AwL+fP3hI8MlrfsW+2NA/NHCSvMXw8vuNr9KwN0rYT8aoYIQpnnJpPW 9SKmixmlzO7iqEmk4YjhWIqZDeUSJ1e0g4ELS+DHDdv1gy4RVoXn8pb9onKwRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054223; 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=GmKZD624l8jCdxxK0+0wE6k1vlwot6CNVDbgldemuY4=; b=dw+H3jZIj6NM2rHZ5Wcx65m6gmqAeFrG1kconchG5oakFz+dK+6wl6CI/uDnCWQ99MiDk3 UVlPHPopShYFKB5ni6pbUF8atO3yzOIP8UcyTbhCqLKZ78vk+VBUL7ReiIvC165p0R3Coi ygDcC0UurFCMbudLx/vh/PjDVnnalIG0N5pguNy+rq0kKq0kAu4BD9ELE8BGqFyJp+9TEU r8pqdan0Hj/gtOZrEMuVtFqO8T7DsoLIO+BUeNlUYr9qaZR7eDauyE3AcxuxWys1azsOsh L9P1U2Sc22H7CQu269tIx5Ny1yqVseL2NaCoJB47NwUmu70CgoWPbp2gvqsjeQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054223; a=rsa-sha256; cv=none; b=bjbl6ierYFIaCdB8IsCzNxkofwVe+LEOnL6KUVAQihbAoIYrtanTSBo1mKbu0W8SAjGSBx iRa4zLvkKw3PdoTQeLOCzzn4QjZ59hVg/yo9ybwxv2Z7zgk0BCe+JaBrba4md73wNk6ruc u15ijBHO82NChd9d1wV0wkiUpiQpSPew1S+mmHjvMFJRMQV4ber5C5pGqfyIw7nU1PzpPR S+oWxpj20LrWTYstYtXCijl70H7obvIzx1JUhhIAv89RU721ySNUPZCaQXYb8cTyR3fzNK 4TLwRXJh7TTEAtHj7Gy1qEY8jFmlAtSJnFe1kztn3aRehJ10ZmEoQvCpR4Pc5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwb3C6Cz1Fyv; Mon, 12 May 2025 12:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoN0D082932; Mon, 12 May 2025 12:50:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoNYU082928; Mon, 12 May 2025 12:50:23 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:23 GMT Message-Id: <202505121250.54CCoNYU082928@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 71ca0252dc6d - main - arm64: Split out the 32-bit undef handling 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 71ca0252dc6d75b1f945b32a53ae5cbdb405ce24 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=71ca0252dc6d75b1f945b32a53ae5cbdb405ce24 commit 71ca0252dc6d75b1f945b32a53ae5cbdb405ce24 Author: Andrew Turner AuthorDate: 2025-05-12 11:06:37 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:06:37 +0000 arm64: Split out the 32-bit undef handling Rather than checking in the handler if we are in a 32 or 64 bit process have two lists to iterate over. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50207 --- sys/arm64/arm64/undefined.c | 40 ++++++++++++++++++++++++++++++++++------ sys/arm64/include/undefined.h | 3 +++ 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/sys/arm64/arm64/undefined.c b/sys/arm64/arm64/undefined.c index 71c9b689aa78..74b9de49a7ef 100644 --- a/sys/arm64/arm64/undefined.c +++ b/sys/arm64/arm64/undefined.c @@ -88,6 +88,10 @@ struct undef_handler { */ LIST_HEAD(, undef_handler) undef_handlers = LIST_HEAD_INITIALIZER(undef_handlers); +#ifdef COMPAT_FREEBSD32 +LIST_HEAD(, undef_handler) undef32_handlers = + LIST_HEAD_INITIALIZER(undef32_handlers); +#endif static bool arm_cond_match(uint32_t insn, struct trapframe *frame) @@ -150,8 +154,7 @@ gdb_trapper(vm_offset_t va, uint32_t insn, struct trapframe *frame, struct thread *td = curthread; if (insn == GDB_BREAKPOINT || insn == GDB5_BREAKPOINT) { - if (SV_PROC_FLAG(td->td_proc, SV_ILP32) && - va < VM_MAXUSER_ADDRESS) { + if (va < VM_MAXUSER_ADDRESS) { ksiginfo_t ksi; ksiginfo_init_trap(&ksi); @@ -183,8 +186,7 @@ swp_emulate(vm_offset_t va, uint32_t insn, struct trapframe *frame, * swp, swpb only; there are no Thumb swp/swpb instructions so we can * safely bail out if we're in Thumb mode. */ - if (!compat32_emul_swp || !SV_PROC_FLAG(td->td_proc, SV_ILP32) || - (frame->tf_spsr & PSR_T) != 0) + if (!compat32_emul_swp || (frame->tf_spsr & PSR_T) != 0) return (0); else if ((insn & 0x0fb00ff0) != 0x01000090) return (0); @@ -250,8 +252,8 @@ void undef_init(void) { #ifdef COMPAT_FREEBSD32 - install_undef_handler(gdb_trapper); - install_undef_handler(swp_emulate); + install_undef32_handler(gdb_trapper); + install_undef32_handler(swp_emulate); #endif } @@ -267,6 +269,20 @@ install_undef_handler(undef_handler_t func) return (uh); } +#ifdef COMPAT_FREEBSD32 +void * +install_undef32_handler(undef_handler_t func) +{ + struct undef_handler *uh; + + uh = malloc(sizeof(*uh), M_UNDEF, M_WAITOK); + uh->uh_handler = func; + LIST_INSERT_HEAD(&undef32_handlers, uh, uh_link); + + return (uh); +} +#endif + void remove_undef_handler(void *handle) { @@ -289,6 +305,18 @@ undef_insn(struct trapframe *frame) if (ret != 0) return (0); +#ifdef COMPAT_FREEBSD32 + if (SV_PROC_FLAG(curthread->td_proc, SV_ILP32)) { + LIST_FOREACH(uh, &undef32_handlers, uh_link) { + ret = uh->uh_handler(frame->tf_elr, insn, frame, + frame->tf_esr); + if (ret) + return (1); + } + return (0); + } +#endif + LIST_FOREACH(uh, &undef_handlers, uh_link) { ret = uh->uh_handler(frame->tf_elr, insn, frame, frame->tf_esr); if (ret) diff --git a/sys/arm64/include/undefined.h b/sys/arm64/include/undefined.h index 1370a648b17c..104d6e9a8e67 100644 --- a/sys/arm64/include/undefined.h +++ b/sys/arm64/include/undefined.h @@ -58,6 +58,9 @@ MRS_GET(Op2) void undef_init(void); void *install_undef_handler(undef_handler_t); +#ifdef COMPAT_FREEBSD32 +void *install_undef32_handler(undef_handler_t); +#endif void remove_undef_handler(void *); int undef_insn(struct trapframe *); From nobody Mon May 12 12:50:24 2025 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 4Zwzwd0CmRz5w0mt; Mon, 12 May 2025 12:50:25 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwc47g9z3rWq; Mon, 12 May 2025 12:50:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054224; 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=/NW5FkqV/4OPSM/7mUgF1h90npO3UdYH5G+0JrDqhgs=; b=t8sxOW7KlQWxtmVn61JvKnXDu7QgETCsxA+rh5hgCgc8wIdEErpvSkdXa9AXfeIsRvwFwS 2Iay81YoywtiA+LWVeNskx+Ju7M7s+ARcY909on4q2R7JtD86fpua7pw3rb4AiJOP2AHwH GIjD75Hhq2IEWLjjeKcy/6YN4z+jc9pxOoX0McD7G+i6jdqgUFWxfQpoIm8yo3+Wi+Cfzy KAmm9qy0Ql14AFAb04qP49i1UDW7/b1FLOo+7X4AhN3iThC3V+lcg2wBvgZiSJWv2JmD1h GHolgKIJZR8OSTs2CRsCnZY6dTUi910wyRd0knj9Hr/SYmXxJ1j34K2O3JgNIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054224; 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=/NW5FkqV/4OPSM/7mUgF1h90npO3UdYH5G+0JrDqhgs=; b=B2TZGn4xh2NpLVTImBcRvfzBe6ZfhjeWueMKH8YhquzEGpPf1L3ugUIYcfAUlGLSvGqcGZ 94M4iUGBIPdJWFWtdh9eTGGKdRs5EKytVCXod5q3thfZ8jI4/epVp6ipxgsx8dJ5Ho1SKO /AOpCH9O7woL6q7tHRolD0jtHG3qQCkWt8UGBw4NJisd7bygpsqCXI0VonWibkQq5mCwS7 rdEE1YWSQVc2yFUEcbrK7at+adWCLl2b7dIpxgGKo36vTtjfYDdWAazu66VNY5+aWPiY7j jxfnZALR0WlAGv6OH8JwE40LLDsp49+Q7eNAMv61+w44E4AHl/DhCVKBFn5AUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054224; a=rsa-sha256; cv=none; b=C6QN9ReSZjJcbxkO1f5bBCGe8v6Fjwzb+o1ErDSkUIprAdnopx/SJu69OOyAO9gfgAQugW d8lnkAh8WlZFj9OkB5/jI4y9ygENU8IR6zPybQmVpZSpBro+Ni8Rf2m202K+PqjcSLHyDH d7BScosN0PS2jthtjEYErVQtAKmzUp97TH6gjwphcfVmtyhW3frnR7F4ieT8MUg14vMYsh CpVd2GrglC7ZsT2EWQdhWcwub5Ay7IoZlXoBkexSD1IvyUTD81ISPqosvoZ2It8lTtgAQb NEj+KPTbYcJOC5uBfsdWgHYpQSs/hv48ZQyVm9NdjSx+nRS2an2qMzavEZ40qA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwc3lPsz1Gdc; Mon, 12 May 2025 12:50:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoO9B082967; Mon, 12 May 2025 12:50:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoOn2082964; Mon, 12 May 2025 12:50:24 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:24 GMT Message-Id: <202505121250.54CCoOn2082964@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 5673ea5ca9ec - main - arm64: Start splitting out undef sys insn handling 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5673ea5ca9ec54bc53035d07fbe2ebb1be63a313 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=5673ea5ca9ec54bc53035d07fbe2ebb1be63a313 commit 5673ea5ca9ec54bc53035d07fbe2ebb1be63a313 Author: Andrew Turner AuthorDate: 2025-05-12 11:06:45 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:06:45 +0000 arm64: Start splitting out undef sys insn handling We shouldn't need to decode the instruction when handling an unknown SYS, MSR, or MRS instruction that raises an EXCP_MSR exception. The exception syndrome (esr) contains all the information we need and is safer to use than reading the instruction. Add a new set of callbacks for these instructions that we can pass in either the esr from hardware, or a generated version when we have to fall back to instruction decoding. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50208 --- sys/arm64/arm64/undefined.c | 76 +++++++++++++++++++++++++++++++++++++++++++ sys/arm64/include/armreg.h | 2 ++ sys/arm64/include/undefined.h | 3 ++ 3 files changed, 81 insertions(+) diff --git a/sys/arm64/arm64/undefined.c b/sys/arm64/arm64/undefined.c index 74b9de49a7ef..a88d47c182cf 100644 --- a/sys/arm64/arm64/undefined.c +++ b/sys/arm64/arm64/undefined.c @@ -82,10 +82,17 @@ struct undef_handler { undef_handler_t uh_handler; }; +/* System instruction handlers, e.g. msr, mrs, sys */ +struct sys_handler { + LIST_ENTRY(sys_handler) sys_link; + undef_sys_handler_t sys_handler; +}; + /* * Create the undefined instruction handler lists. * This allows us to handle instructions that will trap. */ +LIST_HEAD(, sys_handler) sys_handlers = LIST_HEAD_INITIALIZER(sys_handler); LIST_HEAD(, undef_handler) undef_handlers = LIST_HEAD_INITIALIZER(undef_handlers); #ifdef COMPAT_FREEBSD32 @@ -293,6 +300,72 @@ remove_undef_handler(void *handle) free(handle, M_UNDEF); } +void +install_sys_handler(undef_sys_handler_t func) +{ + struct sys_handler *sysh; + + sysh = malloc(sizeof(*sysh), M_UNDEF, M_WAITOK); + sysh->sys_handler = func; + LIST_INSERT_HEAD(&sys_handlers, sysh, sys_link); +} + +bool +undef_sys(uint64_t esr, struct trapframe *frame) +{ + struct sys_handler *sysh; + + LIST_FOREACH(sysh, &sys_handlers, sys_link) { + if (sysh->sys_handler(esr, frame)) + return (true); + } + + return (false); +} + +static bool +undef_sys_insn(struct trapframe *frame, uint32_t insn) +{ + uint64_t esr; + int op0; + bool read; + + read = false; + switch (insn & MRS_MASK) { + case MRS_VALUE: + read = true; + /* FALLTHROUGH */ + case MSR_REG_VALUE: + op0 = mrs_Op0(insn); + break; + case MSR_IMM_VALUE: + /* + * MSR (immediate) needs special handling. The + * source register is always 31 (xzr), CRn is 4, + * and op0 is hard coded as 0. + */ + if (MRS_REGISTER(insn) != 31) + return (false); + if (mrs_CRn(insn) != 4) + return (false); + op0 = 0; + break; + default: + return (false); + } + + /* Create a fake EXCP_MSR esr value */ + esr = EXCP_MSR << ESR_ELx_EC_SHIFT; + esr |= ESR_ELx_IL; + esr |= __ISS_MSR_REG(op0, mrs_Op1(insn), mrs_CRn(insn), mrs_CRm(insn), + mrs_Op2(insn)); + esr |= MRS_REGISTER(insn) << ISS_MSR_Rt_SHIFT; + if (read) + esr |= ISS_MSR_DIR; + + return (undef_sys(esr, frame)); +} + int undef_insn(struct trapframe *frame) { @@ -317,6 +390,9 @@ undef_insn(struct trapframe *frame) } #endif + if (undef_sys_insn(frame, insn)) + return (1); + LIST_FOREACH(uh, &undef_handlers, uh_link) { ret = uh->uh_handler(frame->tf_elr, insn, frame, frame->tf_esr); if (ret) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 0e89ad57440f..aff33055a51d 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -38,6 +38,8 @@ #define MRS_MASK 0xfff00000 #define MRS_VALUE 0xd5300000 +#define MSR_REG_VALUE 0xd5100000 +#define MSR_IMM_VALUE 0xd5000000 #define MRS_SPECIAL(insn) ((insn) & 0x000fffe0) #define MRS_REGISTER(insn) ((insn) & 0x0000001f) #define MRS_Op0_SHIFT 19 diff --git a/sys/arm64/include/undefined.h b/sys/arm64/include/undefined.h index 104d6e9a8e67..c23b020e960f 100644 --- a/sys/arm64/include/undefined.h +++ b/sys/arm64/include/undefined.h @@ -35,6 +35,7 @@ typedef int (*undef_handler_t)(vm_offset_t, uint32_t, struct trapframe *, uint32_t); +typedef bool (*undef_sys_handler_t)(uint64_t, struct trapframe *); static inline int mrs_Op0(uint32_t insn) @@ -57,11 +58,13 @@ MRS_GET(CRm) MRS_GET(Op2) void undef_init(void); +void install_sys_handler(undef_sys_handler_t); void *install_undef_handler(undef_handler_t); #ifdef COMPAT_FREEBSD32 void *install_undef32_handler(undef_handler_t); #endif void remove_undef_handler(void *); +bool undef_sys(uint64_t, struct trapframe *); int undef_insn(struct trapframe *); #endif /* _KERNEL */ From nobody Mon May 12 12:50:25 2025 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 4Zwzwf0jTHz5w0f2; Mon, 12 May 2025 12:50:26 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwd57MFz3rLy; Mon, 12 May 2025 12:50:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054225; 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=KDNF1l/x1seQzfZ9Jrct/00E8zc0aA/ECIOzC+PBGf4=; b=xKgpgqALi/FDJK/cXRohnIq43MDfFdNp5VSQsQ7sblNWG6R2i5NX/e4GMQb/8V4M5dVEke sGYZ2xalI1wY4Du1T7woMoVnTo+pZC530W0ksbwnl6Jfvy6pdVnUC8DsuV7ra40WFQlPnq C6LwJVk+ntJAFPA+jFAAE2d22VuywfjcRESiS1d12dwmufSY6botV2rOWuw5wae6ylzP1w qeEfEyGhwPo/pq+L//FYVn69jxaogagDRmHWPfKk+4obaLtvintBKBMJcdvH/IWXVlwYPL nHC01R4KtH/BaKqbsVe4h2bt/0KlvRTjUdMoQUmmOTOnMs8tvz3GjzxlEigijw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054225; 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=KDNF1l/x1seQzfZ9Jrct/00E8zc0aA/ECIOzC+PBGf4=; b=DoVCerM/nlWALQkrpu0n4D1+B29Os9VqMhCT9epEUD5Rcrc2JzMM8IxIMyiNW0giUHyKyW x3852qeNumUt/bIl0/LJMyEuZTywBtmOy5Ek+KRXvfNw4qG8lDERv+g7mTOtiwkxSuAge/ mbs1s+F1OV4FWItLwo/P6eAeLGQIYzSI7LX5i2CFlKVq4i+oKaJ54MboEEHxgTiMZf7hQ3 buI3CpnxoDXL6G1+s9kj30cEikyWjlxpAxLK/Ghf0Wii4S5x+vJ+VURVsWGPb2RVFCeLDm FmwiDVtaDLlOSNhJ/pJdsjAbSIYtnsbiBw4441WWC9FQfW/4ODXDRur+sXJrPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054225; a=rsa-sha256; cv=none; b=lHFPUPePFu+19PpZFDBeKbVQRiGyE0gb53vRdSUu+NwO15PCw0Jybf623yxUzNvYsTlh9L bc0zJN6EuwiY+MVT+MUxmZobC8NE3xIShOj7nyk7BM4MtayGqxlA+jJ9eU8Eg+iGd6dOBv jaF4SSmEPX2l9Wa6KT9TtYIqx2F5pgP8FczwQc7mlo3NkxWQ9xt1yQ3COE8DvddEwKAKod 3aEleKuDw04y78RFCvU68cGcib0Ja6aUTsTU1KilY0Ft2zZ/SvsvoSezOEk2cqI/iMIFAa PaIh4vyFHtsWgsntSnBJrwPPksduIj9vpzQ0KsCpFe30+2ZNVgWGy5LxHML1hw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwd4l2xz1Gdd; Mon, 12 May 2025 12:50:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoP4q083000; Mon, 12 May 2025 12:50:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoPJ0082997; Mon, 12 May 2025 12:50:25 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:25 GMT Message-Id: <202505121250.54CCoPJ0082997@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 0b521e322c32 - main - arm: Switch the timer to the new sys handler 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0b521e322c32a16e1ae91d88d9e5ea32775af110 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=0b521e322c32a16e1ae91d88d9e5ea32775af110 commit 0b521e322c32a16e1ae91d88d9e5ea32775af110 Author: Andrew Turner AuthorDate: 2025-05-12 11:06:53 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:06:53 +0000 arm: Switch the timer to the new sys handler Use the new sys handling to implement the trapped cntpct_el0 support. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50209 --- sys/arm/arm/generic_timer.c | 22 ++++++++++++---------- sys/arm64/include/armreg.h | 1 + 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/sys/arm/arm/generic_timer.c b/sys/arm/arm/generic_timer.c index a82f8756b806..a8c779dcba6d 100644 --- a/sys/arm/arm/generic_timer.c +++ b/sys/arm/arm/generic_timer.c @@ -289,20 +289,22 @@ setup_user_access(void *arg __unused) } #ifdef __aarch64__ -static int -cntpct_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, - uint32_t esr) +static bool +cntpct_handler(uint64_t esr, struct trapframe *frame) { uint64_t val; int reg; - if ((insn & MRS_MASK) != MRS_VALUE) - return (0); + if (ESR_ELx_EXCEPTION(esr) != EXCP_MSR) + return (false); - if (MRS_SPECIAL(insn) != MRS_SPECIAL(CNTPCT_EL0)) - return (0); + if ((esr & ISS_MSR_DIR) == 0) + return (false); + + if ((esr & ISS_MSR_REG_MASK) != CNTPCT_EL0_ISS) + return (false); - reg = MRS_REGISTER(insn); + reg = ISS_MSR_Rt(esr); val = READ_SPECIALREG(cntvct_el0); if (reg < nitems(frame->tf_x)) { frame->tf_x[reg] = val; @@ -316,7 +318,7 @@ cntpct_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, */ frame->tf_elr += INSN_SIZE; - return (1); + return (true); } #endif @@ -332,7 +334,7 @@ tmr_setup_user_access(void *arg __unused) #ifdef __aarch64__ if (TUNABLE_INT_FETCH("hw.emulate_phys_counter", &emulate) && emulate != 0) { - install_undef_handler(cntpct_handler); + install_sys_handler(cntpct_handler); } #endif } diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index aff33055a51d..8691e4b89649 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -278,6 +278,7 @@ /* CNTPCT_EL0 - Counter-timer Physical Count register */ #define CNTPCT_EL0 MRS_REG(CNTPCT_EL0) +#define CNTPCT_EL0_ISS ISS_MSR_REG(CNTPCT_EL0) #define CNTPCT_EL0_op0 3 #define CNTPCT_EL0_op1 3 #define CNTPCT_EL0_CRn 14 From nobody Mon May 12 12:50:26 2025 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 4Zwzwg37qVz5w0Sw; Mon, 12 May 2025 12:50: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwf61pmz3rGL; Mon, 12 May 2025 12:50:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054226; 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=FrSajnEU5PcaZK67XCcx3bv1w/rUEg0wnSYvpFtyW7E=; b=aS7HibxSw4V0asPlU96eJ71FaZCORtW+Mt29frf8TUyKNsTpIHV0rzXOeZmMroDqWT1lhH +y8oc/olSdjPfiO4DwL9conPZD6rjdpox0HwdRQOSMPWX4zdKdjn1J4a4JzmWQnuDKmk2V yB2+Pfp4c2vZe8FnkiDzC9N7ms9Cmw07s+dILvVpGi6CIsXxYMrQ888xaiaUtydaPFwwfr HoTo1OYjqLsUB0vQkqctqNswCy1F+pMg4K8lAzJafV4wqBlRM5V28/dCWxi8vDDGJLlZzk GHol/Pau6j3717y67/aa0z04BVOIZxPunGSOeP34U9vgKvD1oleq7tMJtg8hEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054226; 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=FrSajnEU5PcaZK67XCcx3bv1w/rUEg0wnSYvpFtyW7E=; b=IvB29nsZZOCPu2QFFDNFZoukPYvhIv/pSYFTX5r3H3owyh+s9ZNd1C4nF42hCWYot2bB42 D3+Mbn9e52Jhuoc1+XM/6tdFcysAHCCBaZ8JSoKlEEn0zy0l16BJLNsGAu1Fmx9Mln+uTI P2/aPrYc7XcqVw/EbrXezzsYgwyALSb0NQ/5m+8vJVMgLXQXHzD1aNdgyrGXkWXISaGzDg PDhuVHy9Vzbv8NYCNFAOF7KjfH9JSMAdqwgjOUbn3czSnBSKoMDQLlmaGDMrqm3lC2Us7Q yMuYUgKL4LAHT65TSWj50Hgvcz7rJXCdtB3ZeJQvwVLWVIu71iBEMLSgwuPPTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054226; a=rsa-sha256; cv=none; b=W/c6Uk5t/reZoATa9km4V19jZ5lY3pp4Vk9yIVQDufK5DJL+wnvx0WoT7GICmTFhWkwaFV YAHyM51EZyETysTftdht3jZxkITMkLnXeXpXzL4ALlI+7V/BkPj3r1s1fdHSUpmePaqtsx qlL06jafuoIAokOzlm7XgFKlrxM2kiAL4gh1tpi5gvI64wM0+l6wCRkYO/aRlyK4XwwuHV 6DLA8W4mblxkXncbjq/LILAv0aZNLMP8VDldHKL1lKNN3BTSO7KxfV1ObTAYwy90SPipRR idzZPRiGn0pTu7dOLPFsDUFWlrFmZFoRkcdcIuiO9x/UCiL4sg8Ee1PLlYdJtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwf5Tj7z1G4J; Mon, 12 May 2025 12:50:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoQeU083035; Mon, 12 May 2025 12:50:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoQtV083032; Mon, 12 May 2025 12:50:26 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:26 GMT Message-Id: <202505121250.54CCoQtV083032@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: e4619b088dd0 - main - arm64: Add the ESR ISS value to struct mrs_user_reg 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e4619b088dd0853a3cf0841235d9576179b94d5b Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=e4619b088dd0853a3cf0841235d9576179b94d5b commit e4619b088dd0853a3cf0841235d9576179b94d5b Author: Andrew Turner AuthorDate: 2025-05-12 11:07:03 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:07:03 +0000 arm64: Add the ESR ISS value to struct mrs_user_reg This will be used to compare against the ISS value from MSR/MRS exceptions. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50210 --- sys/arm64/arm64/identcpu.c | 2 ++ sys/arm64/include/armreg.h | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 663c1a335114..c4eaaaafc279 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -2193,6 +2193,7 @@ static const struct mrs_field mvfr1_fields[] = { struct mrs_user_reg { u_int reg; + u_int iss; u_int CRm; u_int Op2; bool is64bit; @@ -2203,6 +2204,7 @@ struct mrs_user_reg { #define USER_REG(name, field_name, _is64bit) \ { \ .reg = name, \ + .iss = name##_ISS, \ .CRm = name##_CRm, \ .Op2 = name##_op2, \ .offset = __offsetof(struct cpu_desc, field_name), \ diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 8691e4b89649..a7950092048d 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -368,6 +368,7 @@ /* CTR_EL0 - Cache Type Register */ #define CTR_EL0 MRS_REG(CTR_EL0) #define CTR_EL0_REG MRS_REG_ALT_NAME(CTR_EL0) +#define CTR_EL0_ISS ISS_MSR_REG(CTR_EL0) #define CTR_EL0_op0 3 #define CTR_EL0_op1 3 #define CTR_EL0_CRn 0 @@ -768,6 +769,7 @@ /* ID_AA64AFR0_EL1 */ #define ID_AA64AFR0_EL1 MRS_REG(ID_AA64AFR0_EL1) #define ID_AA64AFR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64AFR0_EL1) +#define ID_AA64AFR0_EL1_ISS ISS_MSR_REG(ID_AA64AFR0_EL1) #define ID_AA64AFR0_EL1_op0 3 #define ID_AA64AFR0_EL1_op1 0 #define ID_AA64AFR0_EL1_CRn 0 @@ -777,6 +779,7 @@ /* ID_AA64AFR1_EL1 */ #define ID_AA64AFR1_EL1 MRS_REG(ID_AA64AFR1_EL1) #define ID_AA64AFR1_EL1_REG MRS_REG_ALT_NAME(ID_AA64AFR1_EL1) +#define ID_AA64AFR1_EL1_ISS ISS_MSR_REG(ID_AA64AFR1_EL1) #define ID_AA64AFR1_EL1_op0 3 #define ID_AA64AFR1_EL1_op1 0 #define ID_AA64AFR1_EL1_CRn 0 @@ -786,6 +789,7 @@ /* ID_AA64DFR0_EL1 */ #define ID_AA64DFR0_EL1 MRS_REG(ID_AA64DFR0_EL1) #define ID_AA64DFR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64DFR0_EL1) +#define ID_AA64DFR0_EL1_ISS ISS_MSR_REG(ID_AA64DFR0_EL1) #define ID_AA64DFR0_EL1_op0 3 #define ID_AA64DFR0_EL1_op1 0 #define ID_AA64DFR0_EL1_CRn 0 @@ -893,6 +897,7 @@ /* ID_AA64DFR1_EL1 */ #define ID_AA64DFR1_EL1 MRS_REG(ID_AA64DFR1_EL1) #define ID_AA64DFR1_EL1_REG MRS_REG_ALT_NAME(ID_AA64DFR1_EL1) +#define ID_AA64DFR1_EL1_ISS ISS_MSR_REG(ID_AA64DFR1_EL1) #define ID_AA64DFR1_EL1_op0 3 #define ID_AA64DFR1_EL1_op1 0 #define ID_AA64DFR1_EL1_CRn 0 @@ -920,6 +925,7 @@ /* ID_AA64ISAR0_EL1 */ #define ID_AA64ISAR0_EL1 MRS_REG(ID_AA64ISAR0_EL1) #define ID_AA64ISAR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64ISAR0_EL1) +#define ID_AA64ISAR0_EL1_ISS ISS_MSR_REG(ID_AA64ISAR0_EL1) #define ID_AA64ISAR0_EL1_op0 3 #define ID_AA64ISAR0_EL1_op1 0 #define ID_AA64ISAR0_EL1_CRn 0 @@ -1022,6 +1028,7 @@ /* ID_AA64ISAR1_EL1 */ #define ID_AA64ISAR1_EL1 MRS_REG(ID_AA64ISAR1_EL1) #define ID_AA64ISAR1_EL1_REG MRS_REG_ALT_NAME(ID_AA64ISAR1_EL1) +#define ID_AA64ISAR1_EL1_ISS ISS_MSR_REG(ID_AA64ISAR1_EL1) #define ID_AA64ISAR1_EL1_op0 3 #define ID_AA64ISAR1_EL1_op1 0 #define ID_AA64ISAR1_EL1_CRn 0 @@ -1141,6 +1148,7 @@ /* ID_AA64ISAR2_EL1 */ #define ID_AA64ISAR2_EL1 MRS_REG(ID_AA64ISAR2_EL1) #define ID_AA64ISAR2_EL1_REG MRS_REG_ALT_NAME(ID_AA64ISAR2_EL1) +#define ID_AA64ISAR2_EL1_ISS ISS_MSR_REG(ID_AA64ISAR2_EL1) #define ID_AA64ISAR2_EL1_op0 3 #define ID_AA64ISAR2_EL1_op1 0 #define ID_AA64ISAR2_EL1_CRn 0 @@ -1226,6 +1234,7 @@ /* ID_AA64MMFR0_EL1 */ #define ID_AA64MMFR0_EL1 MRS_REG(ID_AA64MMFR0_EL1) #define ID_AA64MMFR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64MMFR0_EL1) +#define ID_AA64MMFR0_EL1_ISS ISS_MSR_REG(ID_AA64MMFR0_EL1) #define ID_AA64MMFR0_EL1_op0 3 #define ID_AA64MMFR0_EL1_op1 0 #define ID_AA64MMFR0_EL1_CRn 0 @@ -1333,6 +1342,7 @@ /* ID_AA64MMFR1_EL1 */ #define ID_AA64MMFR1_EL1 MRS_REG(ID_AA64MMFR1_EL1) #define ID_AA64MMFR1_EL1_REG MRS_REG_ALT_NAME(ID_AA64MMFR1_EL1) +#define ID_AA64MMFR1_EL1_ISS ISS_MSR_REG(ID_AA64MMFR1_EL1) #define ID_AA64MMFR1_EL1_op0 3 #define ID_AA64MMFR1_EL1_op1 0 #define ID_AA64MMFR1_EL1_CRn 0 @@ -1443,6 +1453,7 @@ /* ID_AA64MMFR2_EL1 */ #define ID_AA64MMFR2_EL1 MRS_REG(ID_AA64MMFR2_EL1) #define ID_AA64MMFR2_EL1_REG MRS_REG_ALT_NAME(ID_AA64MMFR2_EL1) +#define ID_AA64MMFR2_EL1_ISS ISS_MSR_REG(ID_AA64MMFR2_EL1) #define ID_AA64MMFR2_EL1_op0 3 #define ID_AA64MMFR2_EL1_op1 0 #define ID_AA64MMFR2_EL1_CRn 0 @@ -1545,6 +1556,7 @@ /* ID_AA64MMFR3_EL1 */ #define ID_AA64MMFR3_EL1 MRS_REG(ID_AA64MMFR3_EL1) #define ID_AA64MMFR3_EL1_REG MRS_REG_ALT_NAME(ID_AA64MMFR3_EL1) +#define ID_AA64MMFR3_EL1_ISS ISS_MSR_REG(ID_AA64MMFR3_EL1) #define ID_AA64MMFR3_EL1_op0 3 #define ID_AA64MMFR3_EL1_op1 0 #define ID_AA64MMFR3_EL1_CRn 0 @@ -1632,6 +1644,7 @@ /* ID_AA64MMFR4_EL1 */ #define ID_AA64MMFR4_EL1 MRS_REG(ID_AA64MMFR4_EL1) #define ID_AA64MMFR4_EL1_REG MRS_REG_ALT_NAME(ID_AA64MMFR4_EL1) +#define ID_AA64MMFR4_EL1_ISS ISS_MSR_REG(ID_AA64MMFR4_EL1) #define ID_AA64MMFR4_EL1_op0 3 #define ID_AA64MMFR4_EL1_op1 0 #define ID_AA64MMFR4_EL1_CRn 0 @@ -1641,6 +1654,7 @@ /* ID_AA64PFR0_EL1 */ #define ID_AA64PFR0_EL1 MRS_REG(ID_AA64PFR0_EL1) #define ID_AA64PFR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64PFR0_EL1) +#define ID_AA64PFR0_EL1_ISS ISS_MSR_REG(ID_AA64PFR0_EL1) #define ID_AA64PFR0_EL1_op0 3 #define ID_AA64PFR0_EL1_op1 0 #define ID_AA64PFR0_EL1_CRn 0 @@ -1757,6 +1771,7 @@ /* ID_AA64PFR1_EL1 */ #define ID_AA64PFR1_EL1 MRS_REG(ID_AA64PFR1_EL1) #define ID_AA64PFR1_EL1_REG MRS_REG_ALT_NAME(ID_AA64PFR1_EL1) +#define ID_AA64PFR1_EL1_ISS ISS_MSR_REG(ID_AA64PFR1_EL1) #define ID_AA64PFR1_EL1_op0 3 #define ID_AA64PFR1_EL1_op1 0 #define ID_AA64PFR1_EL1_CRn 0 @@ -1855,6 +1870,7 @@ /* ID_AA64PFR2_EL1 */ #define ID_AA64PFR2_EL1 MRS_REG(ID_AA64PFR2_EL1) #define ID_AA64PFR2_EL1_REG MRS_REG_ALT_NAME(ID_AA64PFR2_EL1) +#define ID_AA64PFR2_EL1_ISS ISS_MSR_REG(ID_AA64PFR2_EL1) #define ID_AA64PFR2_EL1_op0 3 #define ID_AA64PFR2_EL1_op1 0 #define ID_AA64PFR2_EL1_CRn 0 @@ -1864,6 +1880,7 @@ /* ID_AA64ZFR0_EL1 */ #define ID_AA64ZFR0_EL1 MRS_REG(ID_AA64ZFR0_EL1) #define ID_AA64ZFR0_EL1_REG MRS_REG_ALT_NAME(ID_AA64ZFR0_EL1) +#define ID_AA64ZFR0_EL1_ISS ISS_MSR_REG(ID_AA64ZFR0_EL1) #define ID_AA64ZFR0_EL1_op0 3 #define ID_AA64ZFR0_EL1_op1 0 #define ID_AA64ZFR0_EL1_CRn 0 @@ -1929,6 +1946,7 @@ /* ID_ISAR5_EL1 */ #define ID_ISAR5_EL1 MRS_REG(ID_ISAR5_EL1) +#define ID_ISAR5_EL1_ISS ISS_MSR_REG(ID_ISAR5_EL1) #define ID_ISAR5_EL1_op0 0x3 #define ID_ISAR5_EL1_op1 0x0 #define ID_ISAR5_EL1_CRn 0x0 @@ -2065,6 +2083,7 @@ /* MVFR0_EL1 */ #define MVFR0_EL1 MRS_REG(MVFR0_EL1) +#define MVFR0_EL1_ISS ISS_MSR_REG(MVFR0_EL1) #define MVFR0_EL1_op0 0x3 #define MVFR0_EL1_op1 0x0 #define MVFR0_EL1_CRn 0x0 @@ -2124,6 +2143,7 @@ /* MVFR1_EL1 */ #define MVFR1_EL1 MRS_REG(MVFR1_EL1) +#define MVFR1_EL1_ISS ISS_MSR_REG(MVFR1_EL1) #define MVFR1_EL1_op0 0x3 #define MVFR1_EL1_op1 0x0 #define MVFR1_EL1_CRn 0x0 From nobody Mon May 12 12:50:27 2025 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 4Zwzwh5cZvz5w0n1; Mon, 12 May 2025 12:50:28 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwh1zfWz3rKB; Mon, 12 May 2025 12:50:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054228; 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=M0+gNM2OHZMIM3PWitbBNjAgNQjud2jXv/D18keJiQY=; b=tQMd2sG7T9JcgXE1aJqOFm1jA1ACitUen2aWTRtjjGLMzPQjopooJF4KROvZOr1dXwPwHH I6iZxwZ4DNSkhRChBmUXe6IqfbGrCo7PT37FnWd1F5wFIsRAo07njK94R5YkDpXYbViJEf vDnjwsSbqMSpdKV+6UiZu9xZU9zFOZbD+8CBrSVM2XwilCNBCDIuqZkyy6B5x8UeFU8JgX j1Piu2JxMowOkdNtCGtuDINqo1GnrmBehzvE/E6D0p/WBlTjcb0AVVj3WUk8HiBzpf8AMW emh/uEEhKT3kqjrSPOSanw9+VtNFMLd5Et29C88Nza44XZU53m3qZL8JfJIpUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054228; 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=M0+gNM2OHZMIM3PWitbBNjAgNQjud2jXv/D18keJiQY=; b=wsndGD41aJdot0dEMg36ezCL0KEPYVUp/E0yEwiEWsV2jgTojVsO0G5j/QX4Our8nAdM7U /oL8PqhMY/FF9K0Q6rxw8pyKaeeDgv4azBDMzTat9Y29+Yd2kolFpx0KEoi7iY1Gi0PZ2R CGrPC1bH9Q0uWk6ZlREINiKGY1x+OBUG2rGkLbtz2s2gwHFKtAZ/z5bcUwhTJrdY4S4Zve fp8z88rPZMqamKh/Cafg51cBXtjSAN29Xs2ugF2sBLHdJWCCBjBaWmyBPcyJ/w6VBHvvbI iNw4vMTiSQNkrIMrwylESr78qo4mMKMqtW7CeO2DmG6z3eMJzLH9ca+Yev4oxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054228; a=rsa-sha256; cv=none; b=wlZIb1hIMwYgsN+11+JWl00UZp7hAlSTF36vnJSQ5QT49SaE4UOh9SgubetDgxzsPoaFwd 9lgzkhIEZsduDXmGXP/NE+1x4GVX6ZTwIkeq9y+0Vh09cCgn4ct1XZ3eNwwBv1Q6quYk31 Pbh4KFMKb4brekWqzkuaNSrPyFHm5b84MWHbI2XpTrGFvgfJXk92bAsWvgycIYTVYslXfN GnFowFZsDukfaXVc5/nvuJHKFND0ylCdTSARYLr/XkRk6g0F59FO9i0y1kr846zMKekweI tLK1XRo3/VmXXt5F4kcLsuSvgY4WyKt1oX/Z6NMttP80ZSTuF8+fHuj/LnhGwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwg6Wg4z1Fyw; Mon, 12 May 2025 12:50:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoRRo083068; Mon, 12 May 2025 12:50:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoR3r083065; Mon, 12 May 2025 12:50:27 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:27 GMT Message-Id: <202505121250.54CCoR3r083065@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 5bcd16cced3b - main - arm64: Use the new sys handler for ID regs 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5bcd16cced3b57d16e5c0973641c31acba4e1f64 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=5bcd16cced3b57d16e5c0973641c31acba4e1f64 commit 5bcd16cced3b57d16e5c0973641c31acba4e1f64 Author: Andrew Turner AuthorDate: 2025-05-12 11:07:09 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:07:09 +0000 arm64: Use the new sys handler for ID regs Switch to the new sys instruction handling for the ID registers. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50211 --- sys/arm64/arm64/identcpu.c | 75 ++++++++++++++++++++++++---------------------- 1 file changed, 39 insertions(+), 36 deletions(-) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index c4eaaaafc279..508ea0d472d3 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -2384,48 +2384,49 @@ user_ctr_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, return (1); } -static int -user_mrs_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, - uint32_t esr) +static bool +user_idreg_handler(uint64_t esr, struct trapframe *frame) { uint64_t value; - int CRm, Op2, i, reg; + int reg; - if ((insn & MRS_MASK) != MRS_VALUE) - return (0); + if (ESR_ELx_EXCEPTION(esr) != EXCP_MSR) + return (false); + + /* Only support reading from ID registers */ + if ((esr & ISS_MSR_DIR) == 0) + return (false); /* - * We only emulate Op0 == 3, Op1 == 0, CRn == 0, CRm == {0, 4-7}. - * These are in the EL1 CPU identification space. - * CRm == 0 holds MIDR_EL1, MPIDR_EL1, and REVID_EL1. - * CRm == {4-7} holds the ID_AA64 registers. + * This only handles the ID register space and a few registers that + * are safe to pass through to userspace. * - * For full details see the ARMv8 ARM (ARM DDI 0487C.a) - * Table D9-2 System instruction encodings for non-Debug System - * register accesses. + * These registers are all in the space op0 == 3, op1 == 0, + * CRn == 0. We support the following CRm: + * - CRm == 0: midr_el1, mpidr_el1, and revidr_el1. + * - CRm in {4-7}: sanitized ID registers. + * + * Registers in the ID register space (CRm in {4-7}) are all + * read-only and have either defined fields, or are read as + * zero (RAZ). For these we return 0 for any unknown register. */ - if (mrs_Op0(insn) != 3 || mrs_Op1(insn) != 0 || mrs_CRn(insn) != 0) - return (0); - - CRm = mrs_CRm(insn); - if (CRm > 7 || (CRm < 4 && CRm != 0)) - return (0); + if (ISS_MSR_OP0(esr) != 3 || ISS_MSR_OP1(esr) != 0 || + ISS_MSR_CRn(esr) != 0) + return (false); - Op2 = mrs_Op2(insn); value = 0; - - for (i = 0; i < nitems(user_regs); i++) { - if (user_regs[i].CRm == CRm && user_regs[i].Op2 == Op2) { - if (SV_CURPROC_ABI() == SV_ABI_FREEBSD) - value = CPU_DESC_FIELD(user_cpu_desc, i); - else - value = CPU_DESC_FIELD(l_user_cpu_desc, i); - break; + if (ISS_MSR_CRm(esr) >= 4 && ISS_MSR_CRm(esr) <= 7) { + for (int i = 0; i < nitems(user_regs); i++) { + if (user_regs[i].iss == (esr & ISS_MSR_REG_MASK)) { + if (SV_CURPROC_ABI() == SV_ABI_FREEBSD) + value = CPU_DESC_FIELD(user_cpu_desc, i); + else + value = CPU_DESC_FIELD(l_user_cpu_desc, i); + break; + } } - } - - if (CRm == 0) { - switch (Op2) { + } else if (ISS_MSR_CRm(esr) == 0) { + switch (ISS_MSR_OP2(esr)) { case 0: value = READ_SPECIALREG(midr_el1); break; @@ -2436,8 +2437,10 @@ user_mrs_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, value = READ_SPECIALREG(revidr_el1); break; default: - return (0); + return (false); } + } else { + return (false); } /* @@ -2446,7 +2449,7 @@ user_mrs_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, */ frame->tf_elr += INSN_SIZE; - reg = MRS_REGISTER(insn); + reg = ISS_MSR_Rt(esr); /* If reg is 31 then write to xzr, i.e. do nothing */ if (reg == 31) return (1); @@ -2456,7 +2459,7 @@ user_mrs_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, else if (reg == 30) frame->tf_lr = value; - return (1); + return (true); } /* @@ -2795,7 +2798,7 @@ identify_cpu_sysinit(void *dummy __unused) #endif install_undef_handler(user_ctr_handler); - install_undef_handler(user_mrs_handler); + install_sys_handler(user_idreg_handler); } SYSINIT(identify_cpu, SI_SUB_CPU, SI_ORDER_MIDDLE, identify_cpu_sysinit, NULL); From nobody Mon May 12 12:50:28 2025 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 4Zwzwj3gWdz5w0f5; Mon, 12 May 2025 12:50:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwj0wCGz3rZn; Mon, 12 May 2025 12:50:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054229; 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=BFtz0dgRj6qJe0GBuBYuTByrGouAjoyk94nC1bLVVo4=; b=xKlo8jCYQi8kqX3WEbgS9khoHwOAKAW/V8TGuot1TpS9fcyAotfPMduj5h7BDUyN3CrkKS Pxf4JcuWVeWRSX73/O+kH/SsaLTh3ZX9gSbfDPlgJS/EHMXnS3HnOn8rsk1pVblNfqgJqw HQl1wxZ9JLYNc5XI3X29QLmIV+UCdFGJaEmfdcgkkTEFCQ3bPhiPVO6KzPmsORDGfJoJVM Lp9KWc7uZiRX2pKbpVj4iceaqDB5GTE6U+2T8xalypQ1t3M3pESaHumtFZaEPOV6BtBFUk SqsBGOMj4CwsmfdW72U8NxFETqwLTifKuH7+49B6gsBJ9NzH6vcaqULOTHmzSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054229; 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=BFtz0dgRj6qJe0GBuBYuTByrGouAjoyk94nC1bLVVo4=; b=pPaKzJnepV3eczIkGuGgEGYNs84gjO3SD/dV39+CgU+9Zb/EzwW73fBgiAHAYkZpWt4z71 3wd/bEs4fAvIG8mWArJr1NbKyyCNy2odohZcTEKSMFfVgCjXgmGBl9XGdf9DPXmRfY0XfN n6QopXbmqeLbp3efhM8/joyfWcCgjKLg7gfq2MDt0H3/zntstN5yLBolQfzu0jwmkjGRCf 4DuxN+a5IvrDzO0F5ObDnlLp2IJjv/gRUIXhnvqKCWl0JjDgMPz6/YMkn1WyPprYVgLp6+ jwXZOBhIqVYlb1CTnKmE0+euoU4gsBeYb+GYLX5P/T+L2481UZTsDLXntx1pOg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054229; a=rsa-sha256; cv=none; b=hr/xJn7vv/RB1gKnBr6LW0G+iVeD1YTnS6P9u1xjNAd4UtnJnfiqjkY4b/lt/JD57xGmRi N2mBx0F6VB7uhgWb5L+Z8i92TnA3FbyBrtFQ72ESF/Qf/yptbHu2LXoJGcATT87f2AuVNN HV06B1LGNp9ZWPhBKKF8T6eMU6T0E1s7flHqXZMaf+O9+TSbDVukLdkiZgS5r1ZIn1wLxK Ddq/gADAcX+jNkfdVEagtGjfkoOagO+XZzOce8DbJ6V6CLqZq/rczG+OHfPPxKLucRCCoP b18BSFcldM2LoqwA+KiZU/zxMESbzkLnkDpRjwyjpRTFrieSnhiMRedTVzGa1A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwj0KHgz1Gdf; Mon, 12 May 2025 12:50:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoSeP083107; Mon, 12 May 2025 12:50:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoSNP083104; Mon, 12 May 2025 12:50:28 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:28 GMT Message-Id: <202505121250.54CCoSNP083104@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 00832dc0cecf - main - arm64: Remove unneeded fields from mrs_user_reg 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 00832dc0cecf4fa571909696e424d982adf1b22e Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=00832dc0cecf4fa571909696e424d982adf1b22e commit 00832dc0cecf4fa571909696e424d982adf1b22e Author: Andrew Turner AuthorDate: 2025-05-12 11:07:22 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:07:22 +0000 arm64: Remove unneeded fields from mrs_user_reg These are no longer needed, we can remove them. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50212 --- sys/arm64/arm64/identcpu.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 508ea0d472d3..ee40a33c1da2 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -2194,8 +2194,6 @@ static const struct mrs_field mvfr1_fields[] = { struct mrs_user_reg { u_int reg; u_int iss; - u_int CRm; - u_int Op2; bool is64bit; size_t offset; const struct mrs_field *fields; @@ -2205,8 +2203,6 @@ struct mrs_user_reg { { \ .reg = name, \ .iss = name##_ISS, \ - .CRm = name##_CRm, \ - .Op2 = name##_op2, \ .offset = __offsetof(struct cpu_desc, field_name), \ .fields = field_name##_fields, \ .is64bit = _is64bit, \ From nobody Mon May 12 12:50:30 2025 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 4Zwzwk3v4Sz5w0fB; Mon, 12 May 2025 12:50:30 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zwzwk1fn7z3rjg; Mon, 12 May 2025 12:50:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054230; 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=CkPdxYQRAFTfd833l+kq38ZOM56Qu0QCY5mivDpdo2A=; b=oWmwTLhjsSnDamxQJVXYn7sLi60+OjOcQs0lawvs57DRXxq6uT405jzkQ6jWdWp5A8dtIR nSCIEqw/lUnHLnVNMAGsZ5D072OtwAobDm5sIWoEq7O0CcjBYQ7zWgBP8nEpv3WBYltzNW apZeCdSjIIJ4vzq1Gf+tlQ39TlnoIABOptp23pmnT8VUDeKO7Z/a9C7IL2mTu3tSaX8sQs glJ0Mhfj0ENj6ddhKMiW/UYczljrWvfbkwrXUOtG+pOhpuGAFCdPw0Zta779uS8/I9+9DT /dNy61fk+kGEEdj4McCToE0Gw8XfyXMY9gvXmMds3e/eh6CQIlE6YZNhdEaEKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747054230; 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=CkPdxYQRAFTfd833l+kq38ZOM56Qu0QCY5mivDpdo2A=; b=Fw2+FnYHLYAbXaI54tqrgx25RLBBj/P1eyBohCEZUOiGZYrLf/sIwYL4OXt/VbpjraIjgC rBjZjljVYlCwyLhUGg214l1LGymKZTpI4M+QryVbIgCvCQy7j1dx4TuCixEH8iNy5vynRO +z67QVYS7rF9HTbR6aD2qb/XdAhMzC060GvX1N7Y+R88wgi8c4mWw/p4dyxsfM3MEuis2q +op53MmspfMLbdg87pXQRrs/whgIQoQHH6rzqv8D2mqIvuMd0UDwXjqSI5dERfClg/ZAVF e/oVwJHA0Z/OjwjgDv2ICFHQlS8D6yizWJGj+Kqg99akoalplw9cYd4Rg3tGlg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747054230; a=rsa-sha256; cv=none; b=Thn+0ZZcA3rePjkQvN2RtgSTrgnEhLUQ5cEO4OUtKes+3AWSgMbmrk22kiekCJHfmlrVuX SU9PZMhqMBubbkoJZ4Df/4E8yWdhkhol7E1FPYgzJxlsZZBl4NCMCApuysfP+bPnPMK2pz 5Sn0gN9/PskmZ8a/CfIz0KQ02kw3Xr2FtcbhETJLRW1iZvwZ/ETmW3e2K5StvXI/QniDpM v2mXrj7oJTikAOj0Hk8Uf0rIfXRH5yvefp5R4sP8oXu/8k/JV5wYRzu8/twD8psc5CoCxj bZCB93zRM9a9TXCfToBkACrubrUBJ6pZdW1hVFmEOmZ4yvg+JinzNJvjW7qEIA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zwzwk18fZz1Fyx; Mon, 12 May 2025 12:50:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CCoU4a083140; Mon, 12 May 2025 12:50:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CCoUWI083137; Mon, 12 May 2025 12:50:30 GMT (envelope-from git) Date: Mon, 12 May 2025 12:50:30 GMT Message-Id: <202505121250.54CCoUWI083137@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 4bc53dc71c57 - main - arm64: Use a sys handler for CTR_EL0 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4bc53dc71c57c1e0dfb9ae48d7f63ab218aa50f3 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=4bc53dc71c57c1e0dfb9ae48d7f63ab218aa50f3 commit 4bc53dc71c57c1e0dfb9ae48d7f63ab218aa50f3 Author: Andrew Turner AuthorDate: 2025-05-12 11:08:06 +0000 Commit: Andrew Turner CommitDate: 2025-05-12 11:08:06 +0000 arm64: Use a sys handler for CTR_EL0 When we trap CTR_EL0 we use the undefined instruction handler. As this is accessed with a mrs instruction use the new infrastructure to use that to handle it. Reviewed by: harry.moulton_arm.com Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50213 --- sys/arm64/arm64/identcpu.c | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index ee40a33c1da2..16af88dd3c97 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -2341,21 +2341,22 @@ static struct cpu_feat user_ctr = { }; DATA_SET(cpu_feat_set, user_ctr); -static int -user_ctr_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, - uint32_t esr) +static bool +user_ctr_handler(uint64_t esr, struct trapframe *frame) { uint64_t value; int reg; - if ((insn & MRS_MASK) != MRS_VALUE) - return (0); + if (ESR_ELx_EXCEPTION(esr) != EXCP_MSR) + return (false); + + /* Only support reading from ctr_el0 */ + if ((esr & ISS_MSR_DIR) == 0) + return (false); /* Check if this is the ctr_el0 register */ - /* TODO: Add macros to armreg.h */ - if (mrs_Op0(insn) != 3 || mrs_Op1(insn) != 3 || mrs_CRn(insn) != 0 || - mrs_CRm(insn) != 0 || mrs_Op2(insn) != 1) - return (0); + if ((esr & ISS_MSR_REG_MASK) != CTR_EL0_ISS) + return (false); if (SV_CURPROC_ABI() == SV_ABI_FREEBSD) value = user_cpu_desc.ctr; @@ -2367,17 +2368,17 @@ user_ctr_handler(vm_offset_t va, uint32_t insn, struct trapframe *frame, */ frame->tf_elr += INSN_SIZE; - reg = MRS_REGISTER(insn); + reg = ISS_MSR_Rt(esr); /* If reg is 31 then write to xzr, i.e. do nothing */ if (reg == 31) - return (1); + return (true); if (reg < nitems(frame->tf_x)) frame->tf_x[reg] = value; else if (reg == 30) frame->tf_lr = value; - return (1); + return (true); } static bool @@ -2793,7 +2794,7 @@ identify_cpu_sysinit(void *dummy __unused) panic("CPU does not support LSE atomic instructions"); #endif - install_undef_handler(user_ctr_handler); + install_sys_handler(user_ctr_handler); install_sys_handler(user_idreg_handler); } SYSINIT(identify_cpu, SI_SUB_CPU, SI_ORDER_MIDDLE, identify_cpu_sysinit, NULL); From nobody Mon May 12 13:40:40 2025 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 4Zx12c5GZ2z5w3Hc; Mon, 12 May 2025 13:40:40 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx12c4jpWz41Cy; Mon, 12 May 2025 13:40:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747057240; 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=fixcEbJd9v4DOREtb+sa0xg2ZxQj50Y5T3nz5ABLk7s=; b=lpJBUZ7Pl+wrceOy5UxDKe64j7CAR+SlloBAraK9nk1DdfOXPVpeGl+lKhXHQxliLFnf+K 8LiNZckzG14yzvOJJKKlV4hWnn0AvIy0xUgeMuAstHENmQLxCvKie0VYE5p497Q/fFAeh3 1UW606UQ40RcwzBGwpA5Bd1KkOLu6ThKg0VxkKqhWdhBdfGDjSee2lBHHd3ct5CG4jndmZ tIsTR8U9WXKkrlWkGvV5uUxfAM95ixN/6ManWY5NF9+QW5XYVPju3SM7Wj+Plha8pEmsXO G8dZPICr55seQkf1ma+cNIg01TR9G6DiIM2+pK24td2QdcHb7TkTEsclwbAIqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747057240; 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=fixcEbJd9v4DOREtb+sa0xg2ZxQj50Y5T3nz5ABLk7s=; b=Qq64XXszSdGtkdItwIVbnNThCCvG5k1PO/aGDjJ1Vt14Bg3Oytdmnlw3DTERB92Xy2kGSh 02F8dzVQRuy8tiwgKWm6P4jpiVzvhTVwvDxNCxHOQnRsyw+0QFvOCI4gmd73jMU530iGpc P2hYL/9B0Sv+fIziHEMlgFlvzsZV6K37gVHU7jpJQkfBX+V87g5JhbS+Uor22IqdSS/QP7 Bm1puTpY+D1eWGWPu9Ls5+FhZ28ZKv0eLrOlYCG1yh+rbsOMYbZh1rZRNA084zj/f5+EtD 5Tkzp87Cd+0Anj8g1lXh/iawLIc98bT9h0xFc/mXII69QSsZM2m1UTmqPYj41w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747057240; a=rsa-sha256; cv=none; b=jKUQvyn9NDRXP82c2X8LVb7AqaZ4FoPw0pv12eNX0umblndaHHjW8hmcPNPsy94sgCZFu8 qiYk2lqKRvTReHAxQRngmDRlBbsoFWcCkFzsz7mq0TQCiuQIAyDfHF/JMon9rrHSzJxs+d 535YN+xhX78X0pAYzsc6+qVqwWFr+p7KM0u2rTOFVZ8J1ZOqzUJOLG00hySUDUVXxAeUR9 Y+h+urMEj2n/0BwaI4saH2D99XxrGrmR3K/V+7DBuUtaWimknIUhdqk5iEFGUGiST/C1D6 ik9vz+LupodUPOm+NY1clRx2MC/frjwTZheubUHeoeGyoWVrNUBKe+RkL8XPLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx12c46dSz1HwB; Mon, 12 May 2025 13:40:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CDeevF076879; Mon, 12 May 2025 13:40:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CDeeUg076876; Mon, 12 May 2025 13:40:40 GMT (envelope-from git) Date: Mon, 12 May 2025 13:40:40 GMT Message-Id: <202505121340.54CDeeUg076876@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 909aa6781340 - main - flua: add posix.unistd.dup2() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 909aa6781340f8c0b4ae01c6366bf1556ee2d1be Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=909aa6781340f8c0b4ae01c6366bf1556ee2d1be commit 909aa6781340f8c0b4ae01c6366bf1556ee2d1be Author: Isaac Freund AuthorDate: 2025-05-05 09:03:37 +0000 Commit: Ed Maste CommitDate: 2025-05-12 13:40:09 +0000 flua: add posix.unistd.dup2() Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50176 --- libexec/flua/modules/lposix.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/libexec/flua/modules/lposix.c b/libexec/flua/modules/lposix.c index d69f1aa546c1..a706adf2c353 100644 --- a/libexec/flua/modules/lposix.c +++ b/libexec/flua/modules/lposix.c @@ -165,6 +165,39 @@ err: } +static int +lua_dup2(lua_State *L) +{ + int error, oldd, newd; + + enforce_max_args(L, 2); + + oldd = luaL_checkinteger(L, 1); + if (oldd < 0) { + error = EBADF; + goto err; + } + + newd = luaL_checkinteger(L, 2); + if (newd < 0) { + error = EBADF; + goto err; + } + + error = dup2(oldd, newd); + if (error >= 0) { + lua_pushinteger(L, error); + return (1); + } + + error = errno; +err: + lua_pushnil(L); + lua_pushstring(L, strerror(error)); + lua_pushinteger(L, error); + return (3); +} + static int lua_fnmatch(lua_State *L) { @@ -479,6 +512,7 @@ static const struct luaL_Reg unistdlib[] = { REG_SIMPLE(_exit), REG_SIMPLE(chown), REG_DEF(close, lua_pclose), + REG_SIMPLE(dup2), REG_SIMPLE(fork), REG_SIMPLE(getpid), REG_SIMPLE(pipe), From nobody Mon May 12 14:08:47 2025 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 4Zx1g41Qcyz5w5SY; Mon, 12 May 2025 14:08:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx1g40vLqz43Mf; Mon, 12 May 2025 14:08:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747058928; 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=x4ZhrqmeZaKV48u/WQf4Z79P792WYy4qMrIXmdNqLVY=; b=OSFL1OBg84RjnBH8NqSXM1oCgSRV9AOeh78V15cQjn6s6fB18ja2ikSqF2ByxGiGySj216 aijFvwXYaVGUQxqkD8+bN3uJF9SUXGQeWp2Nk6qsYh+phjrMJ4xxOkIlsXTCW0xknzBNSU soyFD8RxL5rMTOi21ST/tmBhLF9GKi38tta/YuFx2QqJBHDxNYYDnx29f7nUFlz/bKnK9J veFJsKnT3RrM/D9qyofW23F/amo9p5tOuKVQNqsj2mAXQtwYXHYV39g9sOXIlXu5EdSYF5 PYQQ/B/EqHmlraJhk2Sr+t/UVUDwF0t4gtlGkZh2Oc0jmGKtvqEoYx/DXBss0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747058928; 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=x4ZhrqmeZaKV48u/WQf4Z79P792WYy4qMrIXmdNqLVY=; b=NaObbeo3jW8z6pNLUfcwO8SUijN6mSvRYUtyCVXkI3MjTmPvDJvqcYOdC9Cc+i70ro4/z2 Bt9yTbe9yqJ4UCJmMWYbgIauG1Gqs3igkfD0GdTaez+HSbhs5k2L/AQPXUJ4JUXKv+MpeO HgWv2IGjW+SdSJLgUiFq1sMKFxjeSige2D1kk0xj4F1XVobpPyugQSCTvvm1tFoOGJvUDX 6y/IICh4Q6vVToHHKVkynOzXgViTmFwEKlF8VIea6RIFry7lYrTKR9+6oMK9TlrdEP186x Ra4KH2jvnyHvsnNT2JyUH1gez0Jx0Asz9hIIfe7SGTlLQNkVQ9/aBhOt2NLh5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747058928; a=rsa-sha256; cv=none; b=D368AOr+/uv3imUzDCrgEinh+8pkywDxt1alDT4OweUUlb347M2po2epsaKt4DCi8q826/ OaEo+OJOyqQjAy76Ukl2B1ZAE1mPr2OTvIMDP1qjw/IIgZkToSQoq9mkr4gQ/XcrTJ+XG2 T/QqxKP+Kh7CISXl7ULVcXsVvC9FHFJgFEZzzz3IWdNlZYOY6lVeOZT2mPeZxQVEzpOj// /LnwlYP9FUEZ1RZfXF9l9BAuXJgWU4ySCRyQ7DTXM+ozFHr42CUC9DOJkiSXUXiYU8qZn0 6DJepdftmdZRDiMH+Xwx2F+I+LdlrcaRcACoOkkB1pewgYaNlXqHkBl9k7Tt1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx1g40BW3z1Jf8; Mon, 12 May 2025 14:08:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CE8lu9024495; Mon, 12 May 2025 14:08:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CE8l8o024492; Mon, 12 May 2025 14:08:47 GMT (envelope-from git) Date: Mon, 12 May 2025 14:08:47 GMT Message-Id: <202505121408.54CE8l8o024492@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: eed3be47967f - main - linuxkpi: Fix up jiffies handling 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eed3be47967f0ac8268d1655f57bc302c123e991 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=eed3be47967f0ac8268d1655f57bc302c123e991 commit eed3be47967f0ac8268d1655f57bc302c123e991 Author: Mark Johnston AuthorDate: 2025-05-12 13:39:27 +0000 Commit: Mark Johnston CommitDate: 2025-05-12 14:08:39 +0000 linuxkpi: Fix up jiffies handling A few issues found by code inspection while hunting for bugzilla PR 286512: - The "expires" field in struct delayed_work should be unsigned. - In linux_timer_jiffies_until(), clamp the return value to INT_MAX: this return value is used as a ticks count, not a jiffies count, so we should avoid returning too large a value, lest it get truncated. It's unlikely we are dealing with values that large, but we should be careful anyway. - In linux_add_to_sleepqueue(), truncate the timeout to INT_MAX, as this value is passed to sleepq_set_timeout() as a ticks value. Typically it's multiplied by ticks_sbt to get an sbintime, and we should make sure the multiplication doesn't overflow. In drm-kmod, there is at least one call mod_delayed_work(... MAX_SCHEDULE_TIMEOUT). Fixes: 325aa4dbd10d ("linuxkpi: Introduce a properly typed jiffies") Reviewed by: olce, bz, dumbbell, kib Tested by: dumbbell, bz Differential Revision: https://reviews.freebsd.org/D50192 --- sys/compat/linuxkpi/common/include/linux/jiffies.h | 11 ----- .../linuxkpi/common/include/linux/workqueue.h | 2 +- sys/compat/linuxkpi/common/src/linux_compat.c | 16 +++++++ sys/compat/linuxkpi/common/src/linux_schedule.c | 51 +++++++++++----------- sys/compat/linuxkpi/common/src/linux_work.c | 7 +++ 5 files changed, 49 insertions(+), 38 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/jiffies.h b/sys/compat/linuxkpi/common/include/linux/jiffies.h index df6ca129b37c..c2409726e874 100644 --- a/sys/compat/linuxkpi/common/include/linux/jiffies.h +++ b/sys/compat/linuxkpi/common/include/linux/jiffies.h @@ -140,15 +140,4 @@ get_jiffies_64(void) return ((uint64_t)jiffies); } -static inline unsigned long -linux_timer_jiffies_until(unsigned long expires) -{ - unsigned long delta = expires - jiffies; - - /* guard against already expired values */ - if ((long)delta < 1) - delta = 1; - return (delta); -} - #endif /* _LINUXKPI_LINUX_JIFFIES_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/workqueue.h b/sys/compat/linuxkpi/common/include/linux/workqueue.h index 25ee861d3015..66d3981d4229 100644 --- a/sys/compat/linuxkpi/common/include/linux/workqueue.h +++ b/sys/compat/linuxkpi/common/include/linux/workqueue.h @@ -90,7 +90,7 @@ struct delayed_work { struct { struct callout callout; struct mtx mtx; - long expires; + unsigned long expires; } timer; }; diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index 019e08f59d44..ae15fc553ecd 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -2071,6 +2071,22 @@ linux_timer_callback_wrapper(void *context) timer->function(timer->data); } +static int +linux_timer_jiffies_until(unsigned long expires) +{ + unsigned long delta = expires - jiffies; + + /* + * Guard against already expired values and make sure that the value can + * be used as a tick count, rather than a jiffies count. + */ + if ((long)delta < 1) + delta = 1; + else if (delta > INT_MAX) + delta = INT_MAX; + return ((int)delta); +} + int mod_timer(struct timer_list *timer, unsigned long expires) { diff --git a/sys/compat/linuxkpi/common/src/linux_schedule.c b/sys/compat/linuxkpi/common/src/linux_schedule.c index 507d6fc417d0..3f3605096d62 100644 --- a/sys/compat/linuxkpi/common/src/linux_schedule.c +++ b/sys/compat/linuxkpi/common/src/linux_schedule.c @@ -38,29 +38,47 @@ #include #include +/* + * Convert a relative time in jiffies to a tick count, suitable for use with + * native FreeBSD interfaces (callouts, sleepqueues, etc.). + */ +static int +linux_jiffies_timeout_to_ticks(long timeout) +{ + if (timeout < 1) + return (1); + else if (timeout == MAX_SCHEDULE_TIMEOUT) + return (0); + else if (timeout > INT_MAX) + return (INT_MAX); + else + return (timeout); +} + static int linux_add_to_sleepqueue(void *wchan, struct task_struct *task, const char *wmesg, long timeout, int state) { - int flags, ret; + int flags, ret, stimeout; MPASS((state & ~(TASK_PARKED | TASK_NORMAL)) == 0); flags = SLEEPQ_SLEEP | ((state & TASK_INTERRUPTIBLE) != 0 ? SLEEPQ_INTERRUPTIBLE : 0); + stimeout = linux_jiffies_timeout_to_ticks(timeout); sleepq_add(wchan, NULL, wmesg, flags, 0); - if (timeout != 0) - sleepq_set_timeout(wchan, timeout); + if (stimeout != 0) + sleepq_set_timeout(wchan, stimeout); DROP_GIANT(); if ((state & TASK_INTERRUPTIBLE) != 0) { - if (timeout == 0) + if (stimeout == 0) ret = -sleepq_wait_sig(wchan, 0); else ret = -sleepq_timedwait_sig(wchan, 0); } else { - if (timeout == 0) { + if (stimeout == 0) { sleepq_wait(wchan, 0); ret = 0; } else @@ -258,12 +276,6 @@ linux_wait_event_common(wait_queue_head_t *wqh, wait_queue_t *wq, long timeout, if (lock != NULL) spin_unlock_irq(lock); - /* range check timeout */ - if (timeout < 1) - timeout = 1; - else if (timeout == MAX_SCHEDULE_TIMEOUT) - timeout = 0; - task = current; sleepq_lock(task); @@ -285,17 +297,10 @@ linux_schedule_timeout(long timeout) { struct task_struct *task; long remainder; - int ret; - int state; + int ret, state; task = current; - /* range check timeout */ - if (timeout < 1) - timeout = 1; - else if (timeout == MAX_SCHEDULE_TIMEOUT) - timeout = 0; - remainder = jiffies + timeout; sleepq_lock(task); @@ -309,7 +314,7 @@ linux_schedule_timeout(long timeout) } set_task_state(task, TASK_RUNNING); - if (timeout == 0) + if (timeout == MAX_SCHEDULE_TIMEOUT) return (MAX_SCHEDULE_TIMEOUT); /* range check return value */ @@ -350,12 +355,6 @@ linux_wait_on_bit_timeout(unsigned long *word, int bit, unsigned int state, void *wchan; int ret; - /* range check timeout */ - if (timeout < 1) - timeout = 1; - else if (timeout == MAX_SCHEDULE_TIMEOUT) - timeout = 0; - task = current; wchan = bit_to_wchan(word, bit); for (;;) { diff --git a/sys/compat/linuxkpi/common/src/linux_work.c b/sys/compat/linuxkpi/common/src/linux_work.c index cf15d1a9c41b..b1975d16025e 100644 --- a/sys/compat/linuxkpi/common/src/linux_work.c +++ b/sys/compat/linuxkpi/common/src/linux_work.c @@ -226,6 +226,13 @@ linux_queue_delayed_work_on(int cpu, struct workqueue_struct *wq, if (atomic_read(&wq->draining) != 0) return (!work_pending(&dwork->work)); + /* + * Clamp the delay to a valid ticks value, some consumers pass + * MAX_SCHEDULE_TIMEOUT. + */ + if (delay > INT_MAX) + delay = INT_MAX; + mtx_lock(&dwork->timer.mtx); switch (linux_update_state(&dwork->work.state, states)) { case WORK_ST_EXEC: From nobody Mon May 12 14:09:07 2025 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 4Zx1gR3c4Jz5w5QW; Mon, 12 May 2025 14:09:07 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx1gR3BwDz43S3; Mon, 12 May 2025 14:09:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747058947; 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=3dYRoLbQ0pN49aEI1v4gIeuAJzpaUZb1kVEFkw9LRdw=; b=OQoWQCUHnF+8+GTm6SltVa3qXGsgV8T1x08MitlNLkafqrqHUpN/+T+8QSoQz8tvJzIG2t zbDykYlxLzyJU/lwndzwU+zncQqVr274S42aECpiTnRNcfyJ9ihPQONrtjrvSYWgA/0H+B OsudpO2/iDxZgKx7F8wjb4V9xJ+X3ylDdYD7suzaDE1DktbNugSuiabqSYs+1uhyoZ03Km PqeQ8Th8BX28ERuHiihvwcrsuPh0PEfGFphA4jAEQ6+PIwfAZYnvegKrHTYpHD2q6j7mmj nhMq6GHjYdfwOo7e438Vg5UGIXyp2Ngi5S5j2GtAOfsoIgR2djR9voyjk4PJAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747058947; 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=3dYRoLbQ0pN49aEI1v4gIeuAJzpaUZb1kVEFkw9LRdw=; b=JFpp6z7xQuOIrLSLscOW4YWLmzIHxmhqdsHxQIzXPK75wcuvruRwCk9OPCEc+K6k2sXnoM ntfowA9SFnytp4Xmi9SiHVanoOFdz6MElxlgoY3/Iieqoo/y7085eQ27ZsBF7CYSSlidA9 MieZtF5l9Qmu+1ktyrDu+suZoB9t9MsUd7F03ajJZA2JmLDCGGZG6xIjvrziHNZGWgG2K2 P/tsyOJ1dJ4JGZQNDfql+Ke5HcqR4kFHYYVe3k+RF97XXi4A8yGcybOkJ4lHHpyfi1Nb+r jraIpETlafYXVHKC8EMBXUDy753WY6q8pbDwpJdQJgNbomSY75Qe5x4abLsioQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747058947; a=rsa-sha256; cv=none; b=JFWqViywC3njAf/meU2bKZuIp/YWBAVdqXiqY9VybNsGs/suNVYJCDO16VcTEdbysRfnSG cNC9FggJBL+GZuFWHUWBvgzaxwvUPBD8/mdTqDu9wuvFUvxc+v1lxOmZiMnGnVEI5Y/Qsk 3DqoE73Eg7ky9FxOibWsLYpyp4y8FfBpfjZIOt0U6QLfH/uqLyI3IvtFW77NswbmzxJfZb 7dkEkRw64VSiftRiyycogh1sUDU3dYfVcH+drTob3y3Yxo/uYBQio1zLfhZfAeskGO+fdp dZOyCqT6+LcsMO7ZJh2Nz7O03gLQBI8h1REkcn/9Df7uaBPKqsCmnZIxbjtpCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx1gR2cTpz1Jf9; Mon, 12 May 2025 14:09:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CE972O024723; Mon, 12 May 2025 14:09:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CE97gZ024720; Mon, 12 May 2025 14:09:07 GMT (envelope-from git) Date: Mon, 12 May 2025 14:09:07 GMT Message-Id: <202505121409.54CE97gZ024720@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 00988d12bc37 - stable/14 - sndctl(8): Initial revision 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 00988d12bc37b76197c774ef54a318f58999de2a Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=00988d12bc37b76197c774ef54a318f58999de2a commit 00988d12bc37b76197c774ef54a318f58999de2a Author: Christos Margiolis AuthorDate: 2025-05-05 11:38:59 +0000 Commit: Christos Margiolis CommitDate: 2025-05-12 14:08:34 +0000 sndctl(8): Initial revision sndctl(8) is a new program that lists and modifies audio device properties, using a control-driven interface, in similar fashion to mixer(8). Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D46227 Differential Revision: https://reviews.freebsd.org/D50167 (cherry picked from commit 44e5a01508353cfa52e185a531cfb5a6b39b28f6) (cherry picked from commit 9a37f1024cebfb89dcfa15c23bb287a5d09a9ae7) --- usr.sbin/Makefile | 1 + usr.sbin/sndctl/Makefile | 8 + usr.sbin/sndctl/sndctl.8 | 187 +++++++++ usr.sbin/sndctl/sndctl.c | 987 +++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 1183 insertions(+) diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile index b836bd412077..31d583e7aab5 100644 --- a/usr.sbin/Makefile +++ b/usr.sbin/Makefile @@ -84,6 +84,7 @@ SUBDIR= adduser \ setpmac \ smbmsg \ snapinfo \ + sndctl \ spi \ spray \ syslogd \ diff --git a/usr.sbin/sndctl/Makefile b/usr.sbin/sndctl/Makefile new file mode 100644 index 000000000000..c1830413f931 --- /dev/null +++ b/usr.sbin/sndctl/Makefile @@ -0,0 +1,8 @@ +.include + +PROG= sndctl +SRCS= ${PROG}.c +MAN= ${PROG}.8 +LDFLAGS+= -lnv -lmixer + +.include diff --git a/usr.sbin/sndctl/sndctl.8 b/usr.sbin/sndctl/sndctl.8 new file mode 100644 index 000000000000..4c3810f3c16b --- /dev/null +++ b/usr.sbin/sndctl/sndctl.8 @@ -0,0 +1,187 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024-2025 The FreeBSD Foundation +.\" +.\" Portions of this software were developed by Christos Margiolis +.\" under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 5, 2025 +.Dt SNDCTL 8 +.Os +.Sh NAME +.Nm sndctl +.Nd list and modify soundcard properties +.Sh SYNOPSIS +.Nm +.Op Fl f Ar device +.Op Fl hov +.Op Ar control Ns Oo = Ns Ar value Oc Ar ... +.Sh DESCRIPTION +The +.Nm +utility is used to set and display sound card properties, using a +control-driven interface, in order to filter and/or set specific properties. +.Pp +The options are as follows: +.Bl -tag -width "-f device" +.It Fl f Ar device +Choose a specific audio device +.Pq see Sx FILES . +Userland devices (e.g those registered by +.Xr virtual_oss 8 +can also be selected. +.It Fl h +Print a help message. +.It Fl o +Print values in a format suitable for use inside scripts. +.It Fl v +Run in verbose mode. +This option will print all of the device's channel properties. +.El +.Pp +The device controls are as follows: +.Bl -column xxxxxxxxxxxxxxx xxxxx xxxxxxxx xxxxxxxxxxxxxxxxxxx -offset indent +.It Sy Name Ta Sy Type Ta Sy Read/Write Ta Sy Action +.It name Ta String Ta Read Ta Device name +.It desc Ta String Ta Read Ta Device description +.It status Ta String Ta Read Ta Device status +.It devnode Ta String Ta Read Ta Device node +.It from_user Ta Boolean Ta Read Ta Userland device +.It unit Ta Number Ta Read Ta Device unit +.It caps Ta String Ta Read Ta Device OSS capabitilies +.It bitperfect Ta Boolean Ta Read/Write Ta Bit-perfect mode enabled +.It autoconv Ta Boolean Ta Read/Write Ta Auto-conversions enabled +.It realtime Ta Boolean Ta Read/Write Ta Real-time mode enabled +.It play Ta Group Ta Read Ta Playback properties +.It play.format Ta String Ta Read/Write Ta Playback format +.It play.rate Ta Number Ta Read/Write Ta Playback sample rate +.It play.vchans Ta Boolean Ta Read/Write Ta Playback VCHANs (virtual channels) enabled +.It play.min_rate Ta Number Ta Read Ta Minimum playback sample rate +.It play.max_rate Ta Number Ta Read Ta Maximum playback sample rate +.It play.min_chans Ta Number Ta Read Ta Natively supported minimum playback sample channels +.It play.max_chans Ta Number Ta Read Ta Natively supported maximum playback sample channels +.It play.formats Ta String Ta Read Ta Natively supported playback formats +.It rec Ta Group Ta Read Ta Recording properties +.It rec.format Ta String Ta Read/Write Ta Recording format +.It rec.rate Ta Number Ta Read/Write Ta Recording sample rate +.It rec.vchans Ta Boolean Ta Read/Write Ta Recording VCHANs (virtual channels) enabled +.It rec.min_rate Ta Number Ta Read Ta Minimum recording sample rate +.It rec.max_rate Ta Number Ta Read Ta Maximum recording sample rate +.It rec.min_chans Ta Number Ta Read Ta Natively supported minimum recording sample channels +.It rec.max_chans Ta Number Ta Read Ta Natively supported maximum recording sample channels +.It rec.formats Ta String Ta Read Ta Natively supported recording formats +.El +.Pp +The +.Pa play.format , +.Pa play.rate , +.Pa rec.format and +.Pa rec.rate +controls will be read-only if VCHANs are disabled. +.Pp +The device channel controls are as follows: +.Bl -column xxxxxxxxxxxxxxx xxxxx xxxxxxxx xxxxxxxxxxxxxxxxxxx -offset indent +.It Sy Name Ta Sy Type Ta Sy Read/Write Ta Sy Action +.It name Ta String Ta Read Ta Channel name +.It parentchan Ta String Ta Read Ta Parent (primary) channel name +.It unit Ta Number Ta Read Ta Channel unit +.It caps Ta String Ta Read Ta Channel OSS capabilities +.It latency Ta Number Ta Read Ta Channel latency +.It format Ta String Ta Read Ta Channel format +.It rate Ta Number Ta Read Ta Channel sample rate +.It pid Ta Number Ta Read Ta PID of process consuming channel +.It proc Ta String Ta Read Ta Name of process consuming channel +.It interrupts Ta Number Ta Read Ta Number of interrupts since channel was opened +.It xruns Ta Number Ta Read Ta Number of playback underruns/recoring overruns +.It feedcount Ta Number Ta Read Ta Number of bytes fed to channel +.It volume Ta Volume Ta Read Ta Channel left-right volume in normalized form (0.00 to 1.00). +.It hwbuf Ta Group Ta Read Ta Hardware buffer properties +.It hwbuf.format Ta String Ta Read Ta Hardware buffer format +.It hwbuf.rate Ta String Ta Read Ta Hardware buffer sample rate +.It hwbuf.size_bytes Ta Number Ta Read Ta Hardware buffer size in bytes +.It hwbuf.size_frames Ta Number Ta Read Ta Hardware buffer size in frames +.It hwbuf.blksz Ta Number Ta Read Ta Hardware buffer block size +.It hwbuf.blkcnt Ta Number Ta Read Ta Hardware buffer block count +.It hwbuf.free Ta Number Ta Read Ta Hardware buffer free space in bytes +.It hwbuf.ready Ta Number Ta Read Ta Hardware buffer ready space in bytes +.It swbuf Ta Group Ta Read Ta Software buffer properties +.It swbuf.format Ta String Ta Read Ta Software buffer format +.It swbuf.rate Ta String Ta Read Ta Software buffer sample rate +.It swbuf.size_bytes Ta Number Ta Read Ta Software buffer size in bytes +.It swbuf.size_frames Ta Number Ta Read Ta Software buffer size in frames +.It swbuf.blksz Ta Number Ta Read Ta Software buffer block size +.It swbuf.blkcnt Ta Number Ta Read Ta Software buffer block count +.It swbuf.free Ta Number Ta Read Ta Software buffer free space in bytes +.It swbuf.ready Ta Number Ta Read Ta Software buffer ready space in bytes +.It feederchain Ta String Ta Read Ta Channel feeder chain +.El +.Sh FILES +.Bl -tag -width /dev/dspX -compact +.It Pa /dev/dsp +The default audio device. +.It Pa /dev/dspX +The audio device file, where X is the unit of the device, for example +.Ar /dev/dsp0 . +.El +.Sh EXAMPLES +Disable auto-conversions and enable realtime mode to get as low latencies as +possible: +.Bd -literal -offset indent +$ sndctl autoconv=0 realtime=1 +.Ed +.Pp +Set the playback sample format to 2-channel signed 24-bit low endian, and sample +rate to 48000 Hz: +.Bd -literal -offset indent +$ sndctl play.format=s24le:2.0 play.rate=48000 +.Ed +.Pp +List the PIDs and process names of all channels for +.Pa /dev/dsp1 : +.Bd -literal -offset indent +$ sndctl -f /dev/dsp1 pid proc +.Ed +.Pp +Dump +.Pa /dev/dsp0 +information to a file and retrieve back later: +.Bd -literal -offset indent +$ sndctl -f /dev/dsp0 -o > info +\&... +$ sndctl -f /dev/dsp0 `cat info` +.Ed +.Sh SEE ALSO +.Xr sndstat 4 , +.Xr sound 4 , +.Xr mixer 8 , +.Xr sysctl 8 +.Sh AUTHORS +The +.Nm +utility was implemented by +.An Christos Margiolis Aq Mt christos@FreeBSD.org +under sponsorship from the +.Fx +Foundation. diff --git a/usr.sbin/sndctl/sndctl.c b/usr.sbin/sndctl/sndctl.c new file mode 100644 index 000000000000..f362ce840cf7 --- /dev/null +++ b/usr.sbin/sndctl/sndctl.c @@ -0,0 +1,987 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024-2025 The FreeBSD Foundation + * + * This software was developed by Christos Margiolis + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* Taken from sys/dev/sound/pcm/ */ +#define STATUS_LEN 64 +#define FMTSTR_LEN 16 + +struct snd_chan { + char name[NAME_MAX]; + char parentchan[NAME_MAX]; + int unit; +#define INPUT 0 +#define OUTPUT 1 + int direction; + char caps[BUFSIZ]; + int latency; + int rate; + char format[FMTSTR_LEN]; + int pid; + char proc[NAME_MAX]; + int interrupts; + int xruns; + int feedcount; + int volume; + struct { + char format[FMTSTR_LEN]; + int rate; + int size_bytes; + int size_frames; + int blksz; + int blkcnt; + int free; + int ready; + } hwbuf, swbuf; + char feederchain[BUFSIZ]; + struct snd_dev *dev; + TAILQ_ENTRY(snd_chan) next; +}; + +struct snd_dev { + char name[NAME_MAX]; + char desc[NAME_MAX]; + char status[BUFSIZ]; + char devnode[NAME_MAX]; + int from_user; + int unit; + char caps[BUFSIZ]; + int bitperfect; + int realtime; + int autoconv; + struct { + char format[FMTSTR_LEN]; + int rate; + int pchans; + int vchans; + int min_rate; + int max_rate; + int min_chans; + int max_chans; + char formats[BUFSIZ]; + } play, rec; + TAILQ_HEAD(, snd_chan) chans; +}; + +struct snd_ctl { + const char *name; + size_t off; +#define STR 0 +#define NUM 1 +#define VOL 2 +#define GRP 3 + int type; + int (*mod)(struct snd_dev *, void *); +}; + +struct map { + int val; + const char *str; +}; + +static int mod_bitperfect(struct snd_dev *, void *); +static int mod_autoconv(struct snd_dev *, void *); +static int mod_realtime(struct snd_dev *, void *); +static int mod_play_vchans(struct snd_dev *, void *); +static int mod_play_rate(struct snd_dev *, void *); +static int mod_play_format(struct snd_dev *, void *); +static int mod_rec_vchans(struct snd_dev *, void *); +static int mod_rec_rate(struct snd_dev *, void *); +static int mod_rec_format(struct snd_dev *, void *); + +static struct snd_ctl dev_ctls[] = { +#define F(member) offsetof(struct snd_dev, member) + { "name", F(name), STR, NULL }, + { "desc", F(desc), STR, NULL }, + { "status", F(status), STR, NULL }, + { "devnode", F(devnode), STR, NULL }, + { "from_user", F(from_user), NUM, NULL }, + { "unit", F(unit), NUM, NULL }, + { "caps", F(caps), STR, NULL }, + { "bitperfect", F(bitperfect), NUM, mod_bitperfect }, + { "autoconv", F(autoconv), NUM, mod_autoconv }, + { "realtime", F(realtime), NUM, mod_realtime }, + { "play", F(play), GRP, NULL }, + { "play.format", F(play.format), STR, mod_play_format }, + { "play.rate", F(play.rate), NUM, mod_play_rate }, + /*{ "play.pchans", F(play.pchans), NUM, NULL },*/ + { "play.vchans", F(play.vchans), NUM, mod_play_vchans }, + { "play.min_rate", F(play.min_rate), NUM, NULL }, + { "play.max_rate", F(play.max_rate), NUM, NULL }, + { "play.min_chans", F(play.min_chans), NUM, NULL }, + { "play.max_chans", F(play.max_chans), NUM, NULL }, + { "play.formats", F(play.formats), STR, NULL }, + { "rec", F(rec), GRP, NULL }, + { "rec.rate", F(rec.rate), NUM, mod_rec_rate }, + { "rec.format", F(rec.format), STR, mod_rec_format }, + /*{ "rec.pchans", F(rec.pchans), NUM, NULL },*/ + { "rec.vchans", F(rec.vchans), NUM, mod_rec_vchans }, + { "rec.min_rate", F(rec.min_rate), NUM, NULL }, + { "rec.max_rate", F(rec.max_rate), NUM, NULL }, + { "rec.min_chans", F(rec.min_chans), NUM, NULL }, + { "rec.max_chans", F(rec.max_chans), NUM, NULL }, + { "rec.formats", F(rec.formats), STR, NULL }, + { NULL, 0, 0, NULL } +#undef F +}; + +static struct snd_ctl chan_ctls[] = { +#define F(member) offsetof(struct snd_chan, member) + /*{ "name", F(name), STR, NULL },*/ + { "parentchan", F(parentchan), STR, NULL }, + { "unit", F(unit), NUM, NULL }, + { "caps", F(caps), STR, NULL }, + { "latency", F(latency), NUM, NULL }, + { "rate", F(rate), NUM, NULL }, + { "format", F(format), STR, NULL }, + { "pid", F(pid), NUM, NULL }, + { "proc", F(proc), STR, NULL }, + { "interrupts", F(interrupts), NUM, NULL }, + { "xruns", F(xruns), NUM, NULL }, + { "feedcount", F(feedcount), NUM, NULL }, + { "volume", F(volume), VOL, NULL }, + { "hwbuf", F(hwbuf), GRP, NULL }, + { "hwbuf.format", F(hwbuf.format), STR, NULL }, + { "hwbuf.rate", F(hwbuf.rate), NUM, NULL }, + { "hwbuf.size_bytes", F(hwbuf.size_bytes), NUM, NULL }, + { "hwbuf.size_frames", F(hwbuf.size_frames), NUM, NULL }, + { "hwbuf.blksz", F(hwbuf.blksz), NUM, NULL }, + { "hwbuf.blkcnt", F(hwbuf.blkcnt), NUM, NULL }, + { "hwbuf.free", F(hwbuf.free), NUM, NULL }, + { "hwbuf.ready", F(hwbuf.ready), NUM, NULL }, + { "swbuf", F(swbuf), GRP, NULL }, + { "swbuf.format", F(swbuf.format), STR, NULL }, + { "swbuf.rate", F(swbuf.rate), NUM, NULL }, + { "swbuf.size_bytes", F(swbuf.size_bytes), NUM, NULL }, + { "swbuf.size_frames", F(swbuf.size_frames), NUM, NULL }, + { "swbuf.blksz", F(swbuf.blksz), NUM, NULL }, + { "swbuf.blkcnt", F(swbuf.blkcnt), NUM, NULL }, + { "swbuf.free", F(swbuf.free), NUM, NULL }, + { "swbuf.ready", F(swbuf.ready), NUM, NULL }, + { "feederchain", F(feederchain), STR, NULL }, + { NULL, 0, 0, NULL } +#undef F +}; + +/* + * Taken from the OSSv4 manual. Not all of them are supported on FreeBSD + * however, and some of them are obsolete. + */ +static struct map capmap[] = { + { PCM_CAP_ANALOGIN, "ANALOGIN" }, + { PCM_CAP_ANALOGOUT, "ANALOGOUT" }, + { PCM_CAP_BATCH, "BATCH" }, + { PCM_CAP_BIND, "BIND" }, + { PCM_CAP_COPROC, "COPROC" }, + { PCM_CAP_DEFAULT, "DEFAULT" }, + { PCM_CAP_DIGITALIN, "DIGITALIN" }, + { PCM_CAP_DIGITALOUT, "DIGITALOUT" }, + { PCM_CAP_DUPLEX, "DUPLEX" }, + { PCM_CAP_FREERATE, "FREERATE" }, + { PCM_CAP_HIDDEN, "HIDDEN" }, + { PCM_CAP_INPUT, "INPUT" }, + { PCM_CAP_MMAP, "MMAP" }, + { PCM_CAP_MODEM, "MODEM" }, + { PCM_CAP_MULTI, "MULTI" }, + { PCM_CAP_OUTPUT, "OUTPUT" }, + { PCM_CAP_REALTIME, "REALTIME" }, + { PCM_CAP_REVISION, "REVISION" }, + { PCM_CAP_SHADOW, "SHADOW" }, + { PCM_CAP_SPECIAL, "SPECIAL" }, + { PCM_CAP_TRIGGER, "TRIGGER" }, + { PCM_CAP_VIRTUAL, "VIRTUAL" }, + { 0, NULL } +}; + +static struct map fmtmap[] = { + { AFMT_A_LAW, "alaw" }, + { AFMT_MU_LAW, "mulaw" }, + { AFMT_S8, "s8" }, + { AFMT_U8, "u8" }, + { AFMT_AC3, "ac3" }, + { AFMT_S16_LE, "s16le" }, + { AFMT_S16_BE, "s16be" }, + { AFMT_U16_LE, "u16le" }, + { AFMT_U16_BE, "u16be" }, + { AFMT_S24_LE, "s24le" }, + { AFMT_S24_BE, "s24be" }, + { AFMT_U24_LE, "u24le" }, + { AFMT_U24_BE, "u24be" }, + { AFMT_S32_LE, "s32le" }, + { AFMT_S32_BE, "s32be" }, + { AFMT_U32_LE, "u32le" }, + { AFMT_U32_BE, "u32be" }, + { AFMT_F32_LE, "f32le" }, + { AFMT_F32_BE, "f32be" }, + { 0, NULL } +}; + +static bool oflag = false; +static bool vflag = false; + +static void +cap2str(char *buf, size_t size, int caps) +{ + struct map *p; + + for (p = capmap; p->str != NULL; p++) { + if ((p->val & caps) == 0) + continue; + strlcat(buf, p->str, size); + strlcat(buf, ",", size); + } + if (*buf == '\0') + strlcpy(buf, "UNKNOWN", size); + else + buf[strlen(buf) - 1] = '\0'; +} + +static void +fmt2str(char *buf, size_t size, int fmt) +{ + struct map *p; + int enc, ch, ext; + + enc = fmt & 0xf00fffff; + ch = (fmt & 0x07f00000) >> 20; + ext = (fmt & 0x08000000) >> 27; + + for (p = fmtmap; p->str != NULL; p++) { + if ((p->val & enc) == 0) + continue; + strlcat(buf, p->str, size); + if (ch) { + snprintf(buf + strlen(buf), size, + ":%d.%d", ch - ext, ext); + } + strlcat(buf, ",", size); + } + if (*buf == '\0') + strlcpy(buf, "UNKNOWN", size); + else + buf[strlen(buf) - 1] = '\0'; +} + +static int +bytes2frames(int bytes, int fmt) +{ + int enc, ch, samplesz; + + enc = fmt & 0xf00fffff; + ch = (fmt & 0x07f00000) >> 20; + /* Add the channel extension if present (e.g 2.1). */ + ch += (fmt & 0x08000000) >> 27; + + if (enc & (AFMT_S8 | AFMT_U8 | AFMT_MU_LAW | AFMT_A_LAW)) + samplesz = 1; + else if (enc & (AFMT_S16_NE | AFMT_U16_NE)) + samplesz = 2; + else if (enc & (AFMT_S24_NE | AFMT_U24_NE)) + samplesz = 3; + else if (enc & (AFMT_S32_NE | AFMT_U32_NE | AFMT_F32_NE)) + samplesz = 4; + else + samplesz = 0; + + if (!samplesz || !ch) + return (-1); + + return (bytes / (samplesz * ch)); +} + +static struct snd_dev * +read_dev(char *path) +{ + nvlist_t *nvl; + const nvlist_t * const *di; + const nvlist_t * const *cdi; + struct sndstioc_nv_arg arg; + struct snd_dev *dp = NULL; + struct snd_chan *ch; + size_t nitems, nchans, i, j; + int fd, caps, unit; + + if ((fd = open("/dev/sndstat", O_RDONLY)) < 0) + err(1, "open(/dev/sndstat)"); + + if (ioctl(fd, SNDSTIOC_REFRESH_DEVS, NULL) < 0) + err(1, "ioctl(SNDSTIOC_REFRESH_DEVS)"); + + arg.nbytes = 0; + arg.buf = NULL; + if (ioctl(fd, SNDSTIOC_GET_DEVS, &arg) < 0) + err(1, "ioctl(SNDSTIOC_GET_DEVS#1)"); + + if ((arg.buf = malloc(arg.nbytes)) == NULL) + err(1, "malloc"); + + if (ioctl(fd, SNDSTIOC_GET_DEVS, &arg) < 0) + err(1, "ioctl(SNDSTIOC_GET_DEVS#2)"); + + if ((nvl = nvlist_unpack(arg.buf, arg.nbytes, 0)) == NULL) + err(1, "nvlist_unpack"); + + if (nvlist_empty(nvl) || !nvlist_exists(nvl, SNDST_DSPS)) + errx(1, "no soundcards attached"); + + if (path == NULL || (path != NULL && strcmp(basename(path), "dsp") == 0)) + unit = mixer_get_dunit(); + else + unit = -1; + + /* Find whether the requested device exists */ + di = nvlist_get_nvlist_array(nvl, SNDST_DSPS, &nitems); + for (i = 0; i < nitems; i++) { + if (unit == -1 && strcmp(basename(path), + nvlist_get_string(di[i], SNDST_DSPS_DEVNODE)) == 0) + break; + else if (nvlist_exists(di[i], SNDST_DSPS_PROVIDER_INFO) && + (int)nvlist_get_number(nvlist_get_nvlist(di[i], + SNDST_DSPS_PROVIDER_INFO), SNDST_DSPS_SOUND4_UNIT) == unit) + break;; + } + if (i == nitems) + errx(1, "device not found"); + +#define NV(type, item) \ + nvlist_get_ ## type (di[i], SNDST_DSPS_ ## item) + if ((dp = calloc(1, sizeof(struct snd_dev))) == NULL) + err(1, "calloc"); + + dp->unit = -1; + strlcpy(dp->name, NV(string, NAMEUNIT), sizeof(dp->name)); + strlcpy(dp->desc, NV(string, DESC), sizeof(dp->desc)); + strlcpy(dp->devnode, NV(string, DEVNODE), sizeof(dp->devnode)); + dp->from_user = NV(bool, FROM_USER); + dp->play.pchans = NV(number, PCHAN); + dp->rec.pchans = NV(number, RCHAN); +#undef NV + + if (dp->play.pchans && !nvlist_exists(di[i], SNDST_DSPS_INFO_PLAY)) + errx(1, "%s: playback channel list empty", dp->name); + if (dp->rec.pchans && !nvlist_exists(di[i], SNDST_DSPS_INFO_REC)) + errx(1, "%s: recording channel list empty", dp->name); + +#define NV(type, mode, item) \ + nvlist_get_ ## type (nvlist_get_nvlist(di[i], \ + SNDST_DSPS_INFO_ ## mode), SNDST_DSPS_INFO_ ## item) + if (dp->play.pchans) { + dp->play.min_rate = NV(number, PLAY, MIN_RATE); + dp->play.max_rate = NV(number, PLAY, MAX_RATE); + dp->play.min_chans = NV(number, PLAY, MIN_CHN); + dp->play.max_chans = NV(number, PLAY, MAX_CHN); + fmt2str(dp->play.formats, sizeof(dp->play.formats), + NV(number, PLAY, FORMATS)); + } + if (dp->rec.pchans) { + dp->rec.min_rate = NV(number, REC, MIN_RATE); + dp->rec.max_rate = NV(number, REC, MAX_RATE); + dp->rec.min_chans = NV(number, REC, MIN_CHN); + dp->rec.max_chans = NV(number, REC, MAX_CHN); + fmt2str(dp->rec.formats, sizeof(dp->rec.formats), + NV(number, REC, FORMATS)); + } +#undef NV + + /* + * Skip further parsing if the provider is not sound(4), as the + * following code is sound(4)-specific. + */ + if (strcmp(nvlist_get_string(di[i], SNDST_DSPS_PROVIDER), + SNDST_DSPS_SOUND4_PROVIDER) != 0) + goto done; + + if (!nvlist_exists(di[i], SNDST_DSPS_PROVIDER_INFO)) + errx(1, "%s: provider_info list empty", dp->name); + +#define NV(type, item) \ + nvlist_get_ ## type (nvlist_get_nvlist(di[i], \ + SNDST_DSPS_PROVIDER_INFO), SNDST_DSPS_SOUND4_ ## item) + strlcpy(dp->status, NV(string, STATUS), sizeof(dp->status)); + dp->unit = NV(number, UNIT); + dp->bitperfect = NV(bool, BITPERFECT); + dp->play.vchans = NV(bool, PVCHAN); + dp->play.rate = NV(number, PVCHANRATE); + fmt2str(dp->play.format, sizeof(dp->play.format), + NV(number, PVCHANFORMAT)); + dp->rec.vchans = NV(bool, RVCHAN); + dp->rec.rate = NV(number, RVCHANRATE); + fmt2str(dp->rec.format, sizeof(dp->rec.format), + NV(number, RVCHANFORMAT)); +#undef NV + + dp->autoconv = (dp->play.vchans || dp->rec.vchans) && !dp->bitperfect; + + if (!nvlist_exists(nvlist_get_nvlist(di[i], + SNDST_DSPS_PROVIDER_INFO), SNDST_DSPS_SOUND4_CHAN_INFO)) + errx(1, "%s: channel info list empty", dp->name); + + cdi = nvlist_get_nvlist_array( + nvlist_get_nvlist(di[i], SNDST_DSPS_PROVIDER_INFO), + SNDST_DSPS_SOUND4_CHAN_INFO, &nchans); + + TAILQ_INIT(&dp->chans); + caps = 0; + for (j = 0; j < nchans; j++) { +#define NV(type, item) \ + nvlist_get_ ## type (cdi[j], SNDST_DSPS_SOUND4_CHAN_ ## item) + if ((ch = calloc(1, sizeof(struct snd_chan))) == NULL) + err(1, "calloc"); + + strlcpy(ch->name, NV(string, NAME), sizeof(ch->name)); + strlcpy(ch->parentchan, NV(string, PARENTCHAN), + sizeof(ch->parentchan)); + ch->unit = NV(number, UNIT); + ch->direction = (NV(number, CAPS) & PCM_CAP_INPUT) ? + INPUT : OUTPUT; + cap2str(ch->caps, sizeof(ch->caps), NV(number, CAPS)); + ch->latency = NV(number, LATENCY); + ch->rate = NV(number, RATE); + fmt2str(ch->format, sizeof(ch->format), NV(number, FORMAT)); + ch->pid = NV(number, PID); + strlcpy(ch->proc, NV(string, COMM), sizeof(ch->proc)); + ch->interrupts = NV(number, INTR); + ch->xruns = NV(number, XRUNS); + ch->feedcount = NV(number, FEEDCNT); + ch->volume = NV(number, LEFTVOL) | + NV(number, RIGHTVOL) << 8; + fmt2str(ch->hwbuf.format, sizeof(ch->hwbuf.format), + NV(number, HWBUF_FORMAT)); + ch->hwbuf.rate = NV(number, HWBUF_RATE); + ch->hwbuf.size_bytes = NV(number, HWBUF_SIZE); + ch->hwbuf.size_frames = + bytes2frames(ch->hwbuf.size_bytes, NV(number, HWBUF_FORMAT)); + ch->hwbuf.blksz = NV(number, HWBUF_BLKSZ); + ch->hwbuf.blkcnt = NV(number, HWBUF_BLKCNT); + ch->hwbuf.free = NV(number, HWBUF_FREE); + ch->hwbuf.ready = NV(number, HWBUF_READY); + fmt2str(ch->swbuf.format, sizeof(ch->swbuf.format), + NV(number, SWBUF_FORMAT)); + ch->swbuf.rate = NV(number, SWBUF_RATE); + ch->swbuf.size_bytes = NV(number, SWBUF_SIZE); + ch->swbuf.size_frames = + bytes2frames(ch->swbuf.size_bytes, NV(number, SWBUF_FORMAT)); + ch->swbuf.blksz = NV(number, SWBUF_BLKSZ); + ch->swbuf.blkcnt = NV(number, SWBUF_BLKCNT); + ch->swbuf.free = NV(number, SWBUF_FREE); + ch->swbuf.ready = NV(number, SWBUF_READY); + strlcpy(ch->feederchain, NV(string, FEEDERCHAIN), + sizeof(ch->feederchain)); + ch->dev = dp; + + caps |= NV(number, CAPS); + TAILQ_INSERT_TAIL(&dp->chans, ch, next); + + if (!dp->rec.vchans && ch->direction == INPUT) { + strlcpy(dp->rec.format, ch->hwbuf.format, + sizeof(dp->rec.format)); + dp->rec.rate = ch->hwbuf.rate; + } else if (!dp->play.vchans && ch->direction == OUTPUT) { + strlcpy(dp->play.format, ch->hwbuf.format, + sizeof(dp->play.format)); + dp->play.rate = ch->hwbuf.rate; + } +#undef NV + } + cap2str(dp->caps, sizeof(dp->caps), caps); + +done: + free(arg.buf); + nvlist_destroy(nvl); + close(fd); + + return (dp); +} + +static void +free_dev(struct snd_dev *dp) +{ + struct snd_chan *ch; + + while (!TAILQ_EMPTY(&dp->chans)) { + ch = TAILQ_FIRST(&dp->chans); + TAILQ_REMOVE(&dp->chans, ch, next); + free(ch); + } + free(dp); +} + +static void +print_dev_ctl(struct snd_dev *dp, struct snd_ctl *ctl, bool simple, + bool showgrp) +{ + struct snd_ctl *cp; + size_t len; + + if (ctl->type != GRP) { + if (simple) + printf("%s=", ctl->name); + else + printf(" %-20s= ", ctl->name); + } + + switch (ctl->type) { + case STR: + printf("%s\n", (char *)dp + ctl->off); + break; + case NUM: + printf("%d\n", *(int *)((intptr_t)dp + ctl->off)); + break; + case VOL: + break; + case GRP: + if (!simple || !showgrp) + break; + for (cp = dev_ctls; cp->name != NULL; cp++) { + len = strlen(ctl->name); + if (strncmp(ctl->name, cp->name, len) == 0 && + cp->name[len] == '.' && cp->type != GRP) + print_dev_ctl(dp, cp, simple, showgrp); + } + break; + } +} + +static void +print_chan_ctl(struct snd_chan *ch, struct snd_ctl *ctl, bool simple, + bool showgrp) +{ + struct snd_ctl *cp; + size_t len; + int v; + + if (ctl->type != GRP) { + if (simple) + printf("%s.%s=", ch->name, ctl->name); + else + printf(" %-20s= ", ctl->name); + } + + switch (ctl->type) { + case STR: + printf("%s\n", (char *)ch + ctl->off); + break; + case NUM: + printf("%d\n", *(int *)((intptr_t)ch + ctl->off)); + break; + case VOL: + v = *(int *)((intptr_t)ch + ctl->off); + printf("%.2f:%.2f\n", + MIX_VOLNORM(v & 0x00ff), MIX_VOLNORM((v >> 8) & 0x00ff)); + break; + case GRP: + if (!simple || !showgrp) + break; + for (cp = chan_ctls; cp->name != NULL; cp++) { + len = strlen(ctl->name); + if (strncmp(ctl->name, cp->name, len) == 0 && + cp->name[len] == '.' && cp->type != GRP) + print_chan_ctl(ch, cp, simple, showgrp); + } + break; + } +} + +static void +print_dev(struct snd_dev *dp) +{ + struct snd_chan *ch; + struct snd_ctl *ctl; + + if (!oflag) { + printf("%s: <%s> %s", dp->name, dp->desc, dp->status); + + printf(" ("); + if (dp->play.pchans) + printf("play"); + if (dp->play.pchans && dp->rec.pchans) + printf("/"); + if (dp->rec.pchans) + printf("rec"); + printf(")\n"); + } + + for (ctl = dev_ctls; ctl->name != NULL; ctl++) + print_dev_ctl(dp, ctl, oflag, false); + + if (vflag) { + TAILQ_FOREACH(ch, &dp->chans, next) { + if (!oflag) + printf(" %s\n", ch->name); + for (ctl = chan_ctls; ctl->name != NULL; ctl++) + print_chan_ctl(ch, ctl, oflag, false); + } + } +} + +static int +sysctl_int(const char *buf, const char *arg, int *var) +{ + size_t size; + const char *val = arg; + int n, prev; + + n = strtol(val, NULL, 10); + if (errno == EINVAL || errno == ERANGE) { + warn("strtol(%s)", val); + return (-1); + } + + size = sizeof(int); + /* Read current value. */ + if (sysctlbyname(buf, &prev, &size, NULL, 0) < 0) { + warn("sysctlbyname(%s)", buf); + return (-1); + } + /* Apply new value. */ + if (sysctlbyname(buf, NULL, 0, &n, size) < 0) { + warn("sysctlbyname(%s, %d)", buf, n); + return (-1); + } + /* Read back applied value for good measure. */ + if (sysctlbyname(buf, &n, &size, NULL, 0) < 0) { + warn("sysctlbyname(%s)", buf); + return (-1); + } + + printf("%s: %d -> %d\n", buf, prev, n); + if (var != NULL) + *var = n; + + return (0); +} + +static int +sysctl_str(const char *buf, const char *arg, char *var, size_t varsz) +{ + size_t size; + const char *val = arg; + char prev[BUFSIZ]; + char *tmp; + + /* Read current value. */ + size = sizeof(prev); + if (sysctlbyname(buf, prev, &size, NULL, 0) < 0) { + warn("sysctlbyname(%s)", buf); + return (-1); + } + + size = strlen(val); + /* Apply new value. */ + if (sysctlbyname(buf, NULL, 0, val, size) < 0) { + warn("sysctlbyname(%s, %s)", buf, val); + return (-1); + } + /* Get size of new string. */ + if (sysctlbyname(buf, NULL, &size, NULL, 0) < 0) { + warn("sysctlbyname(%s)", buf); + return (-1); + } + if ((tmp = calloc(1, size)) == NULL) + err(1, "calloc"); + /* Read back applied value for good measure. */ + if (sysctlbyname(buf, tmp, &size, NULL, 0) < 0) { + warn("sysctlbyname(%s)", buf); + free(tmp); + return (-1); + } *** 256 LINES SKIPPED *** From nobody Mon May 12 16:14:50 2025 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 4Zx4SV45bcz5wDPF; Mon, 12 May 2025 16:14:50 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx4SV3KNzz4J62; Mon, 12 May 2025 16:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747066490; 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=FdMFwI5YVJO4Wnsnhb/YTTKnSmzBs2FPCvM9G/jB4fw=; b=Rnjdu9ZyIpcLiF8wcN8xhIbLKesU21+miz/ybG2587NNuTzzhNKSHHFY4CdcWet3M2wH0Y N7vwbm+rJFuTyyP51eOYmwQCVz2awe5aIN9hB+OXq4oQzOXie2J6U749ykPLCfV/gILL4z 0vUzxAHScnViHWjewsTqUJgQPhaZHPH6XnXP373iNvsDUt/1OPKSxc5PFFiBP1xF57ml0U SoA/XvWFDGBaCCNkzVAXCk9DPtUsdS8X4PcCXvBGAFFklbupv/UtI8BpB8SKxqlkMzSPXV iozP2zNmczue8F0weNlwqTwc4Aisx7jp6HmTsx/rgBB1ix3aQV/PBfOPDb5ETA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747066490; 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=FdMFwI5YVJO4Wnsnhb/YTTKnSmzBs2FPCvM9G/jB4fw=; b=PlJNL569G9O+OpZUf7rAMxxyY+lS2S23r0p/8cqCW45VCstuz3uMHhqISEclBpj9o5cuB0 4hVuKHt4EhoKCO2SQMijPpvsv1VsGLE4+UgFsjyA9NLR1fK0Rin41tnxu9WmV17wshc9Bu kwkwgfBw2byIrXDU2ERM1FWsFhvkzMw2KANFrWc23EjEml3qHwnbOsqUvP6I6cSt/dn/3i lbJN42cAeJyo5bwjcIGXs9ICE1v2cbtp8XykPyNDJWF0EzX0bq7Xd5PlzHkeSUddTF+/zb NSyuJdaqrktXjGnxc1LxLHFlUtyswFKrEQHS15dxKa0b0cpaRTjpgLfvBMLdtA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747066490; a=rsa-sha256; cv=none; b=KS5+Ln51I4k88B7EUIuXdtnOzagNOeZyvZEvH1ajitThpbkycoB4Tmj/oocbEb407mx3R8 CAAF0qrmMkC4r5rRmBJZn18Y1OemZ9gDBi0LdZ+14L9CqGFyLr0o4Pzv8HPv8Emn5ruj/z vfdsIWjilUto8UlEZ1FaSxBQD93pDTq1Q4yJezcoPayqX/nbh3BG1xp60RxW9pS7VwgzuN I3ylBcjeA1IFBbVVC6iNyi0Ea3VM5mNSG7azMxb0dhf0ciLxCNqiVT8ZRwPEOzgcK0Suup WwmyubSRg7yhUpS4jGhCvmdwYZQ7ukVT3kAhAMVw/al8F3AvwhSmWsjYR2WUoA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx4SV2qRYz1Md3; Mon, 12 May 2025 16:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CGEoQH065886; Mon, 12 May 2025 16:14:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CGEoxb065883; Mon, 12 May 2025 16:14:50 GMT (envelope-from git) Date: Mon, 12 May 2025 16:14:50 GMT Message-Id: <202505121614.54CGEoxb065883@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: 6da793a8caa1 - main - e6000sw.4: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6da793a8caa15ee2cbb984ea39ac87c6cd2fdf63 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=6da793a8caa15ee2cbb984ea39ac87c6cd2fdf63 commit 6da793a8caa15ee2cbb984ea39ac87c6cd2fdf63 Author: Alexander Ziaee AuthorDate: 2025-05-12 00:52:19 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-12 16:12:53 +0000 e6000sw.4: Initial manual page For inclusion in the HW relnotes. MFC after: 3 days, but remove entries which didn't mfc Reviewed by: adrian, ivy, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50293 --- share/man/man4/Makefile | 1 + share/man/man4/e6000sw.4 | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 71d32dd12f05..2b042455a357 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -151,6 +151,7 @@ MAN= aac.4 \ eventtimers.4 \ exca.4 \ ext2fs.4 \ + e6000sw.4 \ e6060sw.4 \ fd.4 \ fdc.4 \ diff --git a/share/man/man4/e6000sw.4 b/share/man/man4/e6000sw.4 new file mode 100644 index 000000000000..cbec33e459f8 --- /dev/null +++ b/share/man/man4/e6000sw.4 @@ -0,0 +1,41 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt E6000SW 4 +.Sh NAME +.Nm e6000sw +.Nd Marvell 88E6000 series Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd e6000sw +.Sh DESCRIPTION +The +.Nm +driver supports Marvell Gigabit Ethernet switch controllers. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6190X +.It +Marvell 88E6190 +.It +Marvell 88E6176 +.It +Marvell 88E6172 +.It +Marvell 88E6341 +.It +Marvell 88E6141 +.El +.Sh SEE ALSO +.Xr e6060sw 4 , +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 From nobody Mon May 12 16:23:46 2025 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 4Zx4fp6lVgz5wDm7; Mon, 12 May 2025 16:23:46 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx4fp6BWdz4KJM; Mon, 12 May 2025 16:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747067026; 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=Ks1Ko8t4PdaqUneOwCf1NYrNDueiVkJeLF7uRLAeeBU=; b=SaBGYpUUHy9yULT+Y3nrQkPeMUkmmmp7Wh3fnqGENRwqwxCZEay+Od0nhas6cYQ1rSg/yA aacmqMP5LGOUkaZVOkVzxsfoDSCHy7kvA9MIxd1RvnhaQ/I6sb3Vhm2YseBIcellQv1TDZ ozu96awNWaNXWP5tPLxdZAnfWQiSOfGfZm7yOVZGAPMcwImhq7x3atWM/rDmltktBhXh9z /hKBWX5jA4ZWba2IVIVMx1R5DST3ummYAca/v4IZAHwF4Yi4xSXcs3zu9gNu/XrJKUcSZW N0S8i81rZB2TD9GIR3/NL4hUV2vmu0fH2DIbjfu8snHKSWEWho+mz2PrT9jRQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747067026; 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=Ks1Ko8t4PdaqUneOwCf1NYrNDueiVkJeLF7uRLAeeBU=; b=Wld2sQox1k7fmLmxurDsHpe/+h1KXs24yY55VXR9Rgj162cdN887tvfwKh6MIhtyaSwg3z Y4zMMvfmErim6nBAOE+N1AFfLzn3RlBMjTlrtAFF7L13ePILXSdhf9RZsHdk7itMr7InQ8 2XKp3OeyUywXpeOw9fqILiP3AadlG9MTdOBvh+tpenEmuBuDqJ8zo2DeNIUl5LR1XU5WNQ mrqqxUe3n7YGM+KUKnCVOMAr+iELuMFnCcJn/vSYquOJ9a5SGaaVsrmPw92HV1ZeOHTGIB WiHoFFf4RA6BRpFMY4W/y4USkTq4qiJS21Rq7w+7UGk9eyl5XdF/mtsBQQQF+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747067026; a=rsa-sha256; cv=none; b=cJbqqwg4nPpohD4g762ONjjbGnVdyJ+NAhyHi+r4aBTTh+URZBrfIu+bq8Y54FEQIhUuX1 7rthG1P5qJ/j1OFP7hHzkYUkw1CvQtB7Mm7ewRxc1WzbMxWkGKbopM2T7uoIdF9Z84hzMN LaqlwlW1LuLPxYptkrojUzL8E0oLpf6TGCCmsQJHIk3qUFAQvqiQU2Nc8TCJzvn8ZwBGmI rY/ZAOpIDNc5NuCseoiQdEsvgIjSaY5gzHlIWrZJeq9DPrbpIOLznGwK9v/k7HPXOMLVUR ojVGE8b8jpofpALIQXaQVdTb8QXtfOntPelEQKMDx3RWjmUyAo2cTxM77iORKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx4fp5jWWz1MVB; Mon, 12 May 2025 16:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CGNkvl084789; Mon, 12 May 2025 16:23:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CGNkjE084786; Mon, 12 May 2025 16:23:46 GMT (envelope-from git) Date: Mon, 12 May 2025 16:23:46 GMT Message-Id: <202505121623.54CGNkjE084786@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: ecdb0b79bf93 - main - cdboot.8: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ecdb0b79bf93a2b8392694bd266c5930ca42bab5 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=ecdb0b79bf93a2b8392694bd266c5930ca42bab5 commit ecdb0b79bf93a2b8392694bd266c5930ca42bab5 Author: Alexander Ziaee AuthorDate: 2025-05-09 17:38:25 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-12 16:23:04 +0000 cdboot.8: Initial manual page Add cdboot to the reference manual, fixing an undocumented bug where it is undocumented. There's almost nothing here, but that's better than "only imp and jhb know what this is". MFC after: 3 days Reported by: jhb, imp Reviewed by: mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50274 --- stand/i386/cdboot/Makefile | 1 + stand/i386/cdboot/cdboot.8 | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/stand/i386/cdboot/Makefile b/stand/i386/cdboot/Makefile index c66ff68105c1..15b73856c086 100644 --- a/stand/i386/cdboot/Makefile +++ b/stand/i386/cdboot/Makefile @@ -3,6 +3,7 @@ PROG= cdboot STRIP= BINMODE=${NOBINMODE} +MAN= cdboot.8 SRCS= ${PROG}.S CFLAGS+=-I${BOOTSRC}/i386/common diff --git a/stand/i386/cdboot/cdboot.8 b/stand/i386/cdboot/cdboot.8 new file mode 100644 index 000000000000..6163bd7b4a7a --- /dev/null +++ b/stand/i386/cdboot/cdboot.8 @@ -0,0 +1,21 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 9 2025 +.Dt CDBOOT 8 i386 +.Os +.Sh NAME +.Nm cdboot +.Nd find a bootloader on ISO-9660 +.Sh DESCRIPTION +.Nm +is a small boot block which finds +.Xr loader 8 +on a +.Xr cd9660 4 +file system. +.Sh SEE ALSO +.Xr cd9660 4 , +.Xr loader 8 From nobody Mon May 12 16:27:19 2025 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 4Zx4kv6s6Gz5wDvH; Mon, 12 May 2025 16:27:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx4kv622Jz4Lcw; Mon, 12 May 2025 16:27:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747067239; 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=LMJ5hCqQGxiaisXzTnu7HdNGuaLhHMpcfe2l7T1vouY=; b=VJKG5EgY1RR7CBjeL+gydAw47KGmsWc83FSXSerNAPWqUI8lRfCuhggy6dFfQXIg8wx2Dr 9qdlq3/7Kazk68hcHBJ+qM5/Kg/u/kmQr5w+yJVkEvFEDilJhp9KPCtQNfVcinuM4HcXxn a4dYNXRxShbBsXrKs3gaEN+XkUW5XWLKSTjV8dl9D0H+4SdiDwXhv/1QyfSKF7z//72TzX xTl16Co7XOG0Gbri5cIxKpDY6m/Sm5kpxzjcFr0f4I/mFJThUi9XBX0BTSBvNiGUh8FI25 PkKj6YhD0RXxDO0Ykmf4tyBG7IqWOslqFRdDTuMsAmrlE40oWzuVwLcmas0Q2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747067239; 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=LMJ5hCqQGxiaisXzTnu7HdNGuaLhHMpcfe2l7T1vouY=; b=HXmPmHZc3h3QEDYvGVjN+YCXeOLQpTqTRe2iskIeGM3KxwOvevDa3bVrOgsXGj01QoaDiL uIDii6k1FLsIfXH3q8VnRCHJfEOuDJwoiJKUJzwhRonBELtK7GMTmXCF15wLKLl2Wx09V6 1RqNFPMajIPm4kxcSU7RyjuVICDW0xfcKMQcqnhQpWLtkUny4pBbC9gL27jTv8RlnJH6Yt nYpApHzjEwiGtIiQLfpSRZWbTWa6SpRqNEmI3N6t+fcmN1ttD2ocJiJ2iOYv/u5IMw+JtR 0tR8TcnOHrOkOKnyxwme57ElOkT/IOh+Q5zEplyAAh1IuAD4DbK1FyZC+B4jpw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747067239; a=rsa-sha256; cv=none; b=h/9ZMpJFesfstn6k/5/E588HTX75P3wEvTozcI1NJJVXBxII3YLvJRn5K5YjeCttRQkk+m R/ksCG2vG8ZA+Pn8jeaOe6kvPrDVHn2mfJz58jkbhlqVeT1EFEWNUDGeDvwNyKrWgcpHcx 61V9rJvS2msGHfIOpDYHE8yHw/MxymFABu9NIdZRg8VeEYP8iloLLurCQuzeKqsfKZZ7eC 8qfNIgLMctQSG5xaMF8B3w55KUTpHoDkKpH8CDFC1r8v/GOLtDMgVbdtsQC12hUU8HwxdO GyWDAo8WoOF35HMbKwoUOnNqInG29gYeytI0YeY73B/z3OUF6tcZhJ4aBGPOfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx4kv5NX9z1N2p; Mon, 12 May 2025 16:27:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CGRJP0085909; Mon, 12 May 2025 16:27:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CGRJ8i085906; Mon, 12 May 2025 16:27:19 GMT (envelope-from git) Date: Mon, 12 May 2025 16:27:19 GMT Message-Id: <202505121627.54CGRJ8i085906@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: ac747d47f748 - main - umb.4: add "cellular modem driver" to title 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ac747d47f748b8a59f02da518d1ed7d524061896 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=ac747d47f748b8a59f02da518d1ed7d524061896 commit ac747d47f748b8a59f02da518d1ed7d524061896 Author: Alexander Ziaee AuthorDate: 2025-05-12 16:25:46 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-12 16:25:54 +0000 umb.4: add "cellular modem driver" to title For discoverability and consistency with other drivers. MFC after: umb does not mfc Reviewed by: adrian, khorben, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50301 --- share/man/man4/umb.4 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man4/umb.4 b/share/man/man4/umb.4 index b0d517095933..7ecc9a39c1ca 100644 --- a/share/man/man4/umb.4 +++ b/share/man/man4/umb.4 @@ -17,12 +17,12 @@ .\" .\" $NetBSD: umb.4,v 1.4 2019/08/30 09:22:17 wiz Exp $ .\" -.Dd August 24, 2019 +.Dd May 11, 2025 .Dt UMB 4 .Os .Sh NAME .Nm umb -.Nd USB Mobile Broadband Interface Model (MBIM) +.Nd USB Mobile Broadband Interface Model (MBIM) cellular modem driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your From nobody Mon May 12 17:46:47 2025 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 4Zx6Vb4dM6z5wKPl; Mon, 12 May 2025 17:46:47 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vb43wWz3gRx; Mon, 12 May 2025 17:46:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072007; 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=Ic4f4tFFo5a8RWKkX2q+Bs7ywKFb9oXNCV3LWS1bPaM=; b=DAi/AZkvIyAp4kgVgjiM5vpuCfXB27l+CO1ceVcZaNRgVcWeC91nyjOgH89WoSmwOEYxbM W9Ys0I6kbaHe/vPC7jOxzaNaSC+GOB6YTYkxYyfjDYQ0PpgSbsQCBqTgHUSqPws7JzH+br gkNoIzgdjwwpn8LhrjUzO7c4fukBY97r3tPiG/zB0QC/6IJLo6vVHSTFixEKBEhnumiadC 9nWz+WJ4YlnRI6dDWu4E9kALlUjnDjaA4PPgONF78058rS5tjk7Gl/jVRScci52wqz7Br+ 4QIU7FyrxK4YeaaHvNhzHvX48EdkcplzP1ovuRW1NpTcJN6QQDI+ripeR9H5JQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072007; 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=Ic4f4tFFo5a8RWKkX2q+Bs7ywKFb9oXNCV3LWS1bPaM=; b=AiXmND/kniVjoJoDvOmo9yBwcsFJ/fNPYgKogeGb8NGLQsIrjvxzlAzW2vuoER8lb8BgZ0 960WVDAjmilqkMn9owZ2l/QLJmzkaHrqmYVrE5ZrO41l+MMCACiXmTAmcUzyQZzGAElx+A CUoogVAwToQEwxTgC91zWVywsIrNMlko0Lvs1lVyGKaWhMWkPrTxGwGlUFBGc7k8yDn32F DooN7BdSNMpad5+hYHTJu9/tCNDWsXApjloEZhH9d8cnDXhyfedsk3jUXZ82ed3K2xfOPs 8q5wcTHPUxS5o41Myc6CPyyIO/P5KxBKJrVkbaeDIwrK0pFDPdHOVP/KamBhVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072007; a=rsa-sha256; cv=none; b=NPOwW7CB9NRkrsxAC/KBm5RXg18CVSiFt6hlSP5D972YEb3KXb7ieUGnGfTQkb8xGJfvfJ G5H+V5eWSgtCLjZnTcl1L3HL79AEB6Sdz65CX1ZlNX8G1+74lwe+6lSt2bKomHOBhhPSLE yh/OhpMgrubZtcD3kuIRwd0NdOpz+wlbHdSCk+2C5KCVGiqYH8oD4btcAEw/qod8ek10OQ lipqAlHl0qU0K7XIPOIY4ZV084UHJF+4+yexj73hf4+2Jc/1lQXY4wVkqy4QRH9TfFTovm qwjALwQ+WleSOYhXF+pVjxfrd1/xyiRCKyDHtzg8GHtJqYtymWceBR2yERlMew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vb3K8cz1QCj; Mon, 12 May 2025 17:46:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHklfT035202; Mon, 12 May 2025 17:46:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHklNh035199; Mon, 12 May 2025 17:46:47 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:47 GMT Message-Id: <202505121746.54CHklNh035199@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 6d720cdfe735 - main - linuxkpi: Add `woken_wake_function()` and `wait_woken()` 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6d720cdfe7350d1eed620f1456bbe76ead708c30 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=6d720cdfe7350d1eed620f1456bbe76ead708c30 commit 6d720cdfe7350d1eed620f1456bbe76ead708c30 Author: Jean-Sébastien Pédron AuthorDate: 2024-12-27 21:43:59 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:02 +0000 linuxkpi: Add `woken_wake_function()` and `wait_woken()` They are used by the i915 DRM driver starting with Linux 6.7. `(struct wait_queue)->flags` is no longer always zero. I wonder if some code relied on this... Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48755 --- sys/compat/linuxkpi/common/include/linux/wait.h | 14 ++++-- sys/compat/linuxkpi/common/src/linux_schedule.c | 59 +++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/wait.h b/sys/compat/linuxkpi/common/include/linux/wait.h index bd496793e27e..03ddce2c06f5 100644 --- a/sys/compat/linuxkpi/common/include/linux/wait.h +++ b/sys/compat/linuxkpi/common/include/linux/wait.h @@ -61,12 +61,14 @@ typedef struct wait_queue_head wait_queue_head_t; typedef int wait_queue_func_t(wait_queue_t *, unsigned int, int, void *); +#define WQ_FLAG_WOKEN 0x02 + /* * Many API consumers directly reference these fields and those of * wait_queue_head. */ struct wait_queue { - unsigned int flags; /* always 0 */ + unsigned int flags; void *private; wait_queue_func_t *func; union { @@ -87,8 +89,14 @@ struct wait_queue_head { * This function is referenced by at least one DRM driver, so it may not be * renamed and furthermore must be the default wait queue callback. */ -extern wait_queue_func_t autoremove_wake_function; -extern wait_queue_func_t default_wake_function; +wait_queue_func_t autoremove_wake_function; +wait_queue_func_t default_wake_function; +wait_queue_func_t woken_wake_function; + +long linux_wait_woken(wait_queue_t *wq, unsigned state, long timeout); + +#define wait_woken(wq, state, timeout) \ + linux_wait_woken((wq), (state), (timeout)) #define DEFINE_WAIT_FUNC(name, function) \ wait_queue_t name = { \ diff --git a/sys/compat/linuxkpi/common/src/linux_schedule.c b/sys/compat/linuxkpi/common/src/linux_schedule.c index 3f3605096d62..c6b7a2ebbd66 100644 --- a/sys/compat/linuxkpi/common/src/linux_schedule.c +++ b/sys/compat/linuxkpi/common/src/linux_schedule.c @@ -200,6 +200,65 @@ default_wake_function(wait_queue_t *wq, unsigned int state, int flags, return (wake_up_task(wq->private, state)); } +long +linux_wait_woken(wait_queue_t *wq, unsigned state, long timeout) +{ + void *wchan; + struct task_struct *task; + int ret; + int remainder; + + task = current; + wchan = wq->private; + + remainder = jiffies + timeout; + + set_task_state(task, state); + + sleepq_lock(wchan); + if (!(wq->flags & WQ_FLAG_WOKEN)) { + ret = linux_add_to_sleepqueue(wchan, task, "woken", + timeout, state); + } else { + sleepq_release(wchan); + ret = 0; + } + + set_task_state(task, TASK_RUNNING); + wq->flags &= ~WQ_FLAG_WOKEN; + + if (timeout == MAX_SCHEDULE_TIMEOUT) + return (MAX_SCHEDULE_TIMEOUT); + + /* range check return value */ + remainder -= jiffies; + + /* range check return value */ + if (ret == -ERESTARTSYS && remainder < 1) + remainder = 1; + else if (remainder < 0) + remainder = 0; + else if (remainder > timeout) + remainder = timeout; + return (remainder); +} + +int +woken_wake_function(wait_queue_t *wq, unsigned int state, + int flags __unused, void *key __unused) +{ + void *wchan; + + wchan = wq->private; + + sleepq_lock(wchan); + wq->flags |= WQ_FLAG_WOKEN; + sleepq_signal(wchan, SLEEPQ_SLEEP, 0, 0); + sleepq_release(wchan); + + return (1); +} + void linux_init_wait_entry(wait_queue_t *wq, int flags) { From nobody Mon May 12 17:46:48 2025 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 4Zx6Vc5Ppkz5wKR5; Mon, 12 May 2025 17:46:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vc43Lcz3gPJ; Mon, 12 May 2025 17:46:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072008; 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=C8A/roErcMAVU6Qgp+EvxVVnd3x5CB3cpLdvOH6jP+k=; b=xFgSZCHU6f5eucu9U4A8wGxltHW1qWe2Ni+eAsz0vPGn5oROop+3w2dCoRjaTfLUJOtDp9 GmH6D1O1yiiBXeFbHUFHXEerwDR5qTA1RNAxI9Hm2HacAyXlwWTrCDqBWh9tli0HWUPyNj VBipuw0gr7C/XEYym6koc6gX0kSwnSAPAf9IebRzaFpTaW/sCynVS72hwVE+VwnSnG7We7 2sPE7/4f3e/6cH5HbiMGGnuYMcEU2CBZgqTZlZ6SAplkkN9b16eBkuRUENxQ/BJspcSX4N nA4zlcrjukgepEMAKTgyRZ2jN1cPurI5kEqmt90vBP+lF2pS7tiX3RqULUHD9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072008; 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=C8A/roErcMAVU6Qgp+EvxVVnd3x5CB3cpLdvOH6jP+k=; b=q9S7100wd5hFUTg5d3kiQUCLqv53stejGN9K+J4566fisHHxJq4MnTs4kdg04r+hWdctQM kWtzbgUTEYet8lK8he9xN7fDYVRv7ZegHOGulivBVQQ9Cc1RPD4L3WDpUltKfGiWjmQ11a aWGhKflenbIzU0HvQzPQFcvr5L3ITcKuYzQLKZnceRfZQp0tZTCExgVuYxmla1bMkxNgbl iTYul1KPgWPV7HqQCwDBOXQbwQMsJ5M3ZXSpDQqycdPCxIpLLEBaFYdAusGylvoISV9ExW MmE/z+ZjLvBTQVOJaGoWbkAkfw/F6HeuSgrNwu5FxXVQOEsTu6di+Lo6f2n4MQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072008; a=rsa-sha256; cv=none; b=XKB0Gy2gCymtMpBK5qDXBOxVnQqeUGb9EQ3NqgHMIVvR7Y6X8cgt9mY0ZSJo18M280j8rE qVFm5VaaxmTAmxBQppvGpjjY3A4LRyHcWZtN16v60yLRKimJRBNh6iEeBnu9JHrU9Q0k5f y3If/VCTeJDW2PzqOG9A5SD93GM7RxmXzMHp/LK8Hd0+c3ITWoB2+O6F7Ofwr4yM1rnKK3 sN07htEmJBoxraa+A7hr4KQWvSGmiNw83tEDvU34VqdH0sVz0E1GHOB5F+9x0wCECo6+Q0 gimiI21Qr07ZDGHw0AhVaR4NLCA3Vgd4zsqRfT36E1Q06ikzdvSC71NlPw0BLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vc3Wl8z1QBG; Mon, 12 May 2025 17:46:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHkmN9035248; Mon, 12 May 2025 17:46:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHkmTm035245; Mon, 12 May 2025 17:46:48 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:48 GMT Message-Id: <202505121746.54CHkmTm035245@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: e51729f608da - main - linuxkpi: Move `release_pages()` to linux_page.c 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e51729f608dae341b82543d33a11d4ba1f36d46a Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=e51729f608dae341b82543d33a11d4ba1f36d46a commit e51729f608dae341b82543d33a11d4ba1f36d46a Author: Jean-Sébastien Pédron AuthorDate: 2025-04-13 10:58:27 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:02 +0000 linuxkpi: Move `release_pages()` to linux_page.c We want to avoid putting code managing memory in inline functions in the future. Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49810 --- sys/compat/linuxkpi/common/include/linux/mm.h | 3 +++ sys/compat/linuxkpi/common/include/linux/pagemap.h | 9 --------- sys/compat/linuxkpi/common/src/linux_page.c | 9 +++++++++ 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index b4c8bf3c1c30..17b7a4137b7a 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -275,6 +275,9 @@ get_page(struct page *page) vm_page_wire(page); } +void linux_release_pages(struct page **pages, int nr); +#define release_pages(pages, nr) linux_release_pages((pages), (nr)) + extern long lkpi_get_user_pages(unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **); diff --git a/sys/compat/linuxkpi/common/include/linux/pagemap.h b/sys/compat/linuxkpi/common/include/linux/pagemap.h index 7244b61257dc..92159f7a2eb8 100644 --- a/sys/compat/linuxkpi/common/include/linux/pagemap.h +++ b/sys/compat/linuxkpi/common/include/linux/pagemap.h @@ -39,15 +39,6 @@ unsigned long linux_invalidate_mapping_pages(vm_object_t obj, pgoff_t start, pgoff_t end); -static inline void -release_pages(struct page **pages, int nr) -{ - int i; - - for (i = 0; i < nr; i++) - put_page(pages[i]); -} - static inline void mapping_clear_unevictable(vm_object_t mapping) { diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 93aaea01f0df..5114dc708a9e 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -177,6 +177,15 @@ linux_free_pages(struct page *page, unsigned int order) } } +void +linux_release_pages(struct page **pages, int nr) +{ + int i; + + for (i = 0; i < nr; i++) + put_page(pages[i]); +} + vm_offset_t linux_alloc_kmem(gfp_t flags, unsigned int order) { From nobody Mon May 12 17:46:49 2025 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 4Zx6Vf0Zzkz5wKWQ; Mon, 12 May 2025 17:46:50 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vd52n5z3gS4; Mon, 12 May 2025 17:46:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072009; 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=49H3u7IY78qI9KVf9aU3qVmP/K5GYOQwtpwdjtdX3lk=; b=AOMs1KUHxuStYlFFm/HX+0WPMD8fGQeIPN1Ys+lu06BXG1c2O8LokoJ95YGjB+Vb3WwXIK bxWP7VqH+QgpD8frJPlLkMC8dIf2C06uXxXEqewGKa5sNIjayErqN4qHt7zV3BZeaPUW/L yzfsd0kN7yLbu9nLR/ABTqmmCz6adnSm0ACQuPcf5LCfm1bik3DVkSzWkuYMfiqSKsfCaR jeQR8vZm1SWkRbdhD7vdjx81AzyHwLW7sAVvt2j0yDq2eL9mMN6HJ88PQ9HOan8ioZaFsk XkFt+oGq1pk9jy15S73346GtbZBZm53MZjAXwf3BFjm2I6/y4UuEi+x2OdtMTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072009; 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=49H3u7IY78qI9KVf9aU3qVmP/K5GYOQwtpwdjtdX3lk=; b=l/6Gn0n453qigH0jp0X2JfKWzqLRnqlFQuQWwuULH1hKT912aBobt51TkSQhzr0syvqGZN Wnyk8XccesOawSBTMTSGbCNqUN6TeZTiK6syuXfXMqOA7TMNR0G/uG/zsRILRbO46902qL SktVq6I4IO9IXgQccg8gK3lo6moieiMpw9dexHd4VLlyDfchcgcEmuKIdJHIjnz3oVcPXz 3Axgd1jKECMlzhTBinHJ8WLgj9LokXC7Eq9aVEU6Tk2X0QIwU7FjhI/rwUe7PyC/UuYzES NTT/uWWYrlUWd7aOdV8jxhg1AbfqEda8IjM81hSBZcYpVOiamdR70O01HEllfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072009; a=rsa-sha256; cv=none; b=w1orDWscYsZD2j84gOzvskLX0E4ZEG9NgUJleeVZ811VVCGwkfken4r5WL9lAKVXFvKtMk CjEOUp2DYB+844ssPmG0bj/j8W0nqHFhNGWKq+SEzvBvuDnkHfKa2DpsqTdi0NMmescVhE gGUSTnECXQX/7daKkAs8rQlm3AHXzg3dvuDR9VuGdbMRdIXBUbkr4kgJu5QY4Hl7RMWyOr RWrs177/SwQQMA/hZZj39AzJBPeUd3k3TFscW9paDqeLSRyRCXZjr1ck1MJoXjW9xLmYNw ObGA4yUletP9gDtKs4HiI9JjWbElz5LQNSeIPHzlDwmvnIxd37wisdjocb50PQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vd4SqNz1Pyn; Mon, 12 May 2025 17:46:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHknrg035291; Mon, 12 May 2025 17:46:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHknxQ035288; Mon, 12 May 2025 17:46:49 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:49 GMT Message-Id: <202505121746.54CHknxQ035288@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: fe5ce9eb024b - main - linuxkpi: Move `put_page()` closer to `get_page()` 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fe5ce9eb024b46702d2c75df16699b7f35f616ae Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=fe5ce9eb024b46702d2c75df16699b7f35f616ae commit fe5ce9eb024b46702d2c75df16699b7f35f616ae Author: Jean-Sébastien Pédron AuthorDate: 2025-04-13 11:04:05 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:02 +0000 linuxkpi: Move `put_page()` closer to `get_page()` This is to prepare a future change to the implementation and make it easier to review. Reviewed by: emaste, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49811 --- sys/compat/linuxkpi/common/include/linux/mm.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 17b7a4137b7a..194baae1d2a4 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -275,6 +275,12 @@ get_page(struct page *page) vm_page_wire(page); } +static inline void +put_page(struct page *page) +{ + vm_page_unwire(page, PQ_ACTIVE); +} + void linux_release_pages(struct page **pages, int nr); #define release_pages(pages, nr) linux_release_pages((pages), (nr)) @@ -334,12 +340,6 @@ pin_user_pages_remote(struct task_struct *task, struct mm_struct *mm, task, mm, start, nr_pages, gup_flags, pages, vmas); } -static inline void -put_page(struct page *page) -{ - vm_page_unwire(page, PQ_ACTIVE); -} - #define unpin_user_page(page) put_page(page) #define unpin_user_pages(pages, npages) release_pages(pages, npages) From nobody Mon May 12 17:46:50 2025 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 4Zx6Vg0Gr5z5wKR8; Mon, 12 May 2025 17:46:51 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vf5W0hz3gk2; Mon, 12 May 2025 17:46:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072010; 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=epbCLajdM7txF85LkzQmFpKLWikeC83EfyW3+RJIVFY=; b=eca67ALmjHHbMlkSuC/Ys18a6+LOtfoEMxq88rasHf2eCvjtlakd1DXIJZmtxdlXOldx68 wyovmAyQma46iQqGAFnsojqHrR3YWKBy3e+UOZdkdawHV6h+b2YSYba3xjp9dsd7q2gfye 6ZEbUYvqc5/8WdvavClGshwaceFkdnVkhh6aW7OI+j3xfYqdojnhjFu8k81MTLLPzD4eb0 wX6WCKbeAXGQYPELp4/QWe4T3K1rrWLwH2Bd5EcR9kW9SlTJJElTVLIDAEhWqJZ2Ae0kUn fODH42fM+AqMkGFXznFvlPWHPhlz5PrfUNCAzCRm2UFBmB199JLZO6GMxB5i4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072010; 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=epbCLajdM7txF85LkzQmFpKLWikeC83EfyW3+RJIVFY=; b=pobMZU98PfT3pMFDwn8swaMBYw9tTre0+68SId8wqZQi7530utt2c4JPTLe+vXSC+UF4lR 45gpMK4ABzaFoPSf3ukxXlRp9n6oaodtSj71P/PcNG62FmMtpT7zjSoytnda7ibJxgQan9 AKaq2RDR9/ke568UtWmO7x0apQV+vCHsLENT9vMIeBMwJ6hw62ZyEV5bgoXht5nukXVHae 9eArabm5X3BhWpD3XxYKZICk43WOJkHR0ujvCaGVlFl7bPAojRgDNFKVq/9bwWX77mTzsn WPgP1mc0ehxNXtNk1kDkCUoyxmMCXSNeAsci4aGgCMYwcCRzMIgFIURsM7kRMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072010; a=rsa-sha256; cv=none; b=mmhQDaI/ft2ZNZtr4EirBUALfHj8nxz9jXy3qckOXPy0M7zry2GyDyNma5bzQJQ/TN9jwz loMF2SLVJh9WdNgfux2PtQOErXcVOXL34N2T0W+6PkEnsiKuMH4haeCB7J0lRg4m2P0rMd rq/5Zw+VYHlhni1gb7hWc7BbsNtJM1Jo8ve89V+O5+aFEAYba8vh8CYs/zsABcZpsQLwrP BT8baxf/pnzU9QplBAT9zaP5dUdK6AE/ACkekSHcPZX7e7qr4NuZKqowDfyfaiIlYAkFGJ 3x4eyzNuIH+5WrMhPIAhf/i+6rYBmF2V1+uDHZfFC58/2mQdi2/ctmoxbBe9cg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vf540Yz1Pyp; Mon, 12 May 2025 17:46:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHkowA035334; Mon, 12 May 2025 17:46:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHko4C035331; Mon, 12 May 2025 17:46:50 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:50 GMT Message-Id: <202505121746.54CHko4C035331@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 5a263e8458ad - main - linuxkpi: Constify `struct page` arg to `linux_page_address()` 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5a263e8458ade85005fdf71eb44b3fda06e41fef Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=5a263e8458ade85005fdf71eb44b3fda06e41fef commit 5a263e8458ade85005fdf71eb44b3fda06e41fef Author: Jean-Sébastien Pédron AuthorDate: 2025-04-13 11:07:27 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:02 +0000 linuxkpi: Constify `struct page` arg to `linux_page_address()` Reviewed by: emaste, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49812 --- sys/compat/linuxkpi/common/include/linux/mm.h | 2 +- sys/compat/linuxkpi/common/src/linux_page.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 194baae1d2a4..f523395cc71c 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -184,7 +184,7 @@ get_order(unsigned long size) * * NOTE: This function only works for pages allocated by the kernel. */ -void *linux_page_address(struct page *); +void *linux_page_address(const struct page *); #define page_address(page) linux_page_address(page) static inline void * diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 5114dc708a9e..c299457f042a 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -83,7 +83,7 @@ si_meminfo(struct sysinfo *si) } void * -linux_page_address(struct page *page) +linux_page_address(const struct page *page) { if (page->object != kernel_object) { From nobody Mon May 12 17:46:51 2025 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 4Zx6Vh1PPhz5wKTG; Mon, 12 May 2025 17:46:52 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vg6kxQz3gly; Mon, 12 May 2025 17:46:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072011; 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=eqlUmrwnAvQyFD3FXT0bTG+52khm/VZ5dk8gUTgGmZM=; b=YIB0cnNMtcFUdu4XMjp6oQbsVzLCT9D1j/tdWTc67FSY05f1UEgtm3YsYtWCHG8NpSg8ma y8zEYj+cXepQMRJPeIPg99uU/z7bjLysz5+X9+8h5QzPsEC1qjAp+4vpsUoeUFQ4XjKyNS acVwzNo9k/faEMYGp6e1qn/j4AJgGUtDEFbzsJfz/qhzWYpZqxdlH7COaP31RH3M8hG63+ epyLXtPj1NVspYdltyfcaREdFib0P2RDe0C1IvBbh0tPdWzTwLf+g+tIKv2+XFfoAOslVp +y4f/IaHJAIgBrXXIoUOT61x56+U4QYNanJcgR6GmxaVR5f7mV0ua2f7YGm6cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072011; 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=eqlUmrwnAvQyFD3FXT0bTG+52khm/VZ5dk8gUTgGmZM=; b=huUZvuoEVvF/XHsxm+f0gwmiHMT9OGS6sfp/qBWfshJ0d6X/SQGpOi1f2cCdHx7ruC73MZ gE4mYE5vPuibpxC0gBEyy6krVTkP2vmzB/OewEcP7lrEcfCXZpvhfc93hcV9OuM049yjAj YEZIzU4lYVoSx8mZJTb/+pRN2QCs2OTNt1rGs2W0h5BFhc0TIbinWMdcrn1+RF8QTBgnUf d5XWUsWQINxLmcRd75n18TeiR0ro7Tql0EDjPWbHOxlIZTPZxiw10oDFrUPRN518B1I8eT MI237wf5FYDqDpdm4An9uBBVPoWB2ZV+MOnAaLBVEHv3hEXSOXhvyJ0HwLt/5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072011; a=rsa-sha256; cv=none; b=bQb9/OrUMH3T1FfdhW1JaAxpk4x4RqCOgn1oFvFClPRcY8jDbkNuRlrUBfQqrv/c/5CWWF OuJR03R+ZEYxXIl18nwtjwuNBJHhJtTri0tbUHkKFPWq6U0LvmdsPb/qwEbTxKcubRRuxR QJNL6IsRr6Ex+o3rQGp/b1hNGCNo+hfoN3yF3stJcMASphfY11Q9jLgBvn1war9c2zCRFH DEUW0iqAZ7vKpeJjiqPEV9p5SNKpCAMljPSl+Bx26TCq7nyqpvGaP2ouWBHTy3h2EDXuj9 gtIujuuMROV8N+mwl5Hwu2x6kf52+MI5rcHi4plgIeG6qkHRWbYdkRMi1ccV8Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vg5l6sz1QCk; Mon, 12 May 2025 17:46:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHkpmu035375; Mon, 12 May 2025 17:46:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHkpwR035372; Mon, 12 May 2025 17:46:51 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:51 GMT Message-Id: <202505121746.54CHkpwR035372@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: c8089810a940 - main - linuxkpi: Make "free page" code paths closer to Linux 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c8089810a94027b7f937b9e63d2d8d31a02aaac5 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=c8089810a94027b7f937b9e63d2d8d31a02aaac5 commit c8089810a94027b7f937b9e63d2d8d31a02aaac5 Author: Jean-Sébastien Pédron AuthorDate: 2025-04-13 11:13:17 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:02 +0000 linuxkpi: Make "free page" code paths closer to Linux There is basically one code path to free pages on Linux. In particular, `free_pages()` is used for other pages than those returned by `alloc_pages()`. Also on Linux, `release_pages()` takes either `struct page` or `struct folio`. `struct folio` support will be added in a followup commit. Regardless, because pages come from several sources, `linux_free_pages()` need to accept managed and unmanaged pages. Reviewed by: bz, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49813 --- sys/compat/linuxkpi/common/include/linux/mm.h | 3 ++- sys/compat/linuxkpi/common/src/linux_page.c | 22 +++++++++++++++++++--- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index f523395cc71c..569e2a8b70f1 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -278,7 +278,8 @@ get_page(struct page *page) static inline void put_page(struct page *page) { - vm_page_unwire(page, PQ_ACTIVE); + /* `__free_page()` takes care of the refcounting (unwire). */ + __free_page(page); } void linux_release_pages(struct page **pages, int nr); diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index c299457f042a..7ce52cbf95eb 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -165,8 +165,24 @@ linux_free_pages(struct page *page, unsigned int order) for (x = 0; x != npages; x++) { vm_page_t pgo = page + x; - if (vm_page_unwire_noq(pgo)) - vm_page_free(pgo); + /* + * The "free page" function is used in several + * contexts. + * + * Some pages are allocated by `linux_alloc_pages()` + * above, but not all of them are. For instance in the + * DRM drivers, some pages come from + * `shmem_read_mapping_page_gfp()`. + * + * That's why we need to check if the page is managed + * or not here. + */ + if ((pgo->oflags & VPO_UNMANAGED) == 0) { + vm_page_unwire(pgo, PQ_ACTIVE); + } else { + if (vm_page_unwire_noq(pgo)) + vm_page_free(pgo); + } } } else { vm_offset_t vaddr; @@ -183,7 +199,7 @@ linux_release_pages(struct page **pages, int nr) int i; for (i = 0; i < nr; i++) - put_page(pages[i]); + __free_page(pages[i]); } vm_offset_t From nobody Mon May 12 17:46:52 2025 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 4Zx6Vj29Qtz5wKR9; Mon, 12 May 2025 17:46:53 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx6Vj06h4z3gkM; Mon, 12 May 2025 17:46:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072013; 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=SrO5RB1g4JZDiZA649ucwQEFbwqfONz1EvP35FLqzWo=; b=aWB97aNm/4DcsN1zt4TvbcmX/PXr2UocZvGJKzFGwL2DGsQNxphBNzNUTlYssxs6SpwFls aKzQXt/l5Z+LzOSQktKIZFXyDTmf5dJhuLT5JL3Ht0Xli5J97WSsV/27OPVwsWgBOgiNmA FpHUFnE+uBYOmprmwsHBkeYPOUGXWrnJOhDbpgE/Bj9btSonuQKhwzLyWdDgkWQG/1dcgc h+fvtCJiwacrg/sKulGYYsKWpHMPI/UMJe6dBhVrosBS79hAwU7pseomFZI3k7On5PtqVe L9VH/c+b7+/lphYV1tmU2ycyd6d4WqkPSYWUsAd45GjsCSRldBz1xZOFynZgIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747072013; 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=SrO5RB1g4JZDiZA649ucwQEFbwqfONz1EvP35FLqzWo=; b=UsasspmPx94IBqhSv/JowHaParsJGGT0KYlJv8y6kCjjPLRPT0Q/Z0kUAtBTXAJ0xDaF+k CP/nOAWJYgfO+ns59ox1Fobc5YER3hl8+58Scr5ZuJNsGXn1bfezMzIR/eBGSLFGhkIXXY d9rbMoYWK6XZg4SON1hGxTabpcH+66ZDd83akX8wTcSUfOKvhcA4/Xg1JOQADc4NMqh1v9 FTnek3hyyscSux3Wvenc6PCoFa8AVi2jwL0YCpEBJ5NDL//zjVh1vVQf5/FNE3SgaBPsRi ea0Mrk1R4BefHcHWyRZkLmWCOruVPX3NpoYFT4fpQMktP5qAtu66biFVrDXtbA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747072013; a=rsa-sha256; cv=none; b=xUMxmvC7VNGDWY+0L/uK2+vTsmro0abEC7wdPacUNbeq8tfZcdqZuuEUBYfebyxTMKJUrM aOSMgRMMhjwqP8HWxCsz7rQ+tD9J1N6kdwb37t5UUOc2Ua9Aa+K2619S3Nd9yIHfyG29Dt N4bpfn+6gAIJHnm4uI6bofoA46iTDadsYyJO0FlOT5nLRYAK7/ogECRrbneBHm9ZiQaJTr YTGqORH83XOG9N/hnTnEi1/9ea79/cETHWcI7ZXsSmxRrSgb4YCfWUm3TgwM7DFuX1wtJC a/5VrdgLKmjc6qJ9keNLDCxk9gPICgyva69lAgvOn4lD4R7MqFVGKS7ZYuup5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx6Vh6jftz1Q25; Mon, 12 May 2025 17:46:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CHkqaw035416; Mon, 12 May 2025 17:46:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CHkqK7035413; Mon, 12 May 2025 17:46:52 GMT (envelope-from git) Date: Mon, 12 May 2025 17:46:52 GMT Message-Id: <202505121746.54CHkqK7035413@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: e3b16f53a645 - main - linuxkpi: Add `folio` and `folio_batch` APIs 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e3b16f53a6455903a7e814045584fe203d4fff64 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=e3b16f53a6455903a7e814045584fe203d4fff64 commit e3b16f53a6455903a7e814045584fe203d4fff64 Author: Jean-Sébastien Pédron AuthorDate: 2025-04-13 11:23:01 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-05-12 17:08:03 +0000 linuxkpi: Add `folio` and `folio_batch` APIs They are used by the i915 DRM driver in Linux 6.6 (although this change was only backported with Linux 6.7 DRM drivers). `struct folio` simply wraps `struct page` for now. `struct folio_batch` is the same as `struct pagevec` but it works with `struct folio` instead of `struct page` directly. Reviewed by: bz, kib, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48743 --- sys/compat/linuxkpi/common/include/linux/gfp.h | 2 + sys/compat/linuxkpi/common/include/linux/mm.h | 64 +++++++++++++++++++- .../linuxkpi/common/include/linux/mm_types.h | 11 ++++ .../linuxkpi/common/include/linux/page-flags.h | 7 +++ sys/compat/linuxkpi/common/include/linux/pagemap.h | 2 + sys/compat/linuxkpi/common/include/linux/pagevec.h | 68 ++++++++++++++++++++++ .../linuxkpi/common/include/linux/scatterlist.h | 7 +++ .../linuxkpi/common/include/linux/shmem_fs.h | 10 ++++ sys/compat/linuxkpi/common/include/linux/swap.h | 14 +++++ sys/compat/linuxkpi/common/src/linux_folio.c | 58 ++++++++++++++++++ sys/compat/linuxkpi/common/src/linux_page.c | 6 +- sys/conf/files | 2 + sys/modules/linuxkpi/Makefile | 1 + 13 files changed, 248 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/gfp.h b/sys/compat/linuxkpi/common/include/linux/gfp.h index 35dbe3e2a436..4c4caa621789 100644 --- a/sys/compat/linuxkpi/common/include/linux/gfp.h +++ b/sys/compat/linuxkpi/common/include/linux/gfp.h @@ -134,6 +134,8 @@ dev_alloc_pages(unsigned int order) return (linux_alloc_pages(GFP_ATOMIC, order)); } +struct folio *folio_alloc(gfp_t gfp, unsigned int order); + /* * Page management for mapped pages: */ diff --git a/sys/compat/linuxkpi/common/include/linux/mm.h b/sys/compat/linuxkpi/common/include/linux/mm.h index 569e2a8b70f1..068dbb627c82 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm.h +++ b/sys/compat/linuxkpi/common/include/linux/mm.h @@ -161,6 +161,14 @@ virt_to_head_page(const void *p) return (virt_to_page(p)); } +static inline struct folio * +virt_to_folio(const void *p) +{ + struct page *page = virt_to_page(p); + + return (page_folio(page)); +} + /* * Compute log2 of the power of two rounded up count of pages * needed for size bytes. @@ -282,8 +290,30 @@ put_page(struct page *page) __free_page(page); } -void linux_release_pages(struct page **pages, int nr); -#define release_pages(pages, nr) linux_release_pages((pages), (nr)) +static inline void +folio_get(struct folio *folio) +{ + get_page(&folio->page); +} + +static inline void +folio_put(struct folio *folio) +{ + put_page(&folio->page); +} + +/* + * Linux uses the following "transparent" union so that `release_pages()` + * accepts both a list of `struct page` or a list of `struct folio`. This + * relies on the fact that a `struct folio` can be cast to a `struct page`. + */ +typedef union { + struct page **pages; + struct folio **folios; +} release_pages_arg __attribute__ ((__transparent_union__)); + +void linux_release_pages(release_pages_arg arg, int nr); +#define release_pages(arg, nr) linux_release_pages((arg), (nr)) extern long lkpi_get_user_pages(unsigned long start, unsigned long nr_pages, @@ -416,4 +446,34 @@ want_init_on_free(void) return (false); } +static inline unsigned long +folio_pfn(struct folio *folio) +{ + return (page_to_pfn(&folio->page)); +} + +static inline long +folio_nr_pages(struct folio *folio) +{ + return (1); +} + +static inline size_t +folio_size(struct folio *folio) +{ + return (PAGE_SIZE); +} + +static inline void +folio_mark_dirty(struct folio *folio) +{ + set_page_dirty(&folio->page); +} + +static inline void * +folio_address(const struct folio *folio) +{ + return (page_address(&folio->page)); +} + #endif /* _LINUXKPI_LINUX_MM_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/mm_types.h b/sys/compat/linuxkpi/common/include/linux/mm_types.h index c08e2511725b..3ea68e97004c 100644 --- a/sys/compat/linuxkpi/common/include/linux/mm_types.h +++ b/sys/compat/linuxkpi/common/include/linux/mm_types.h @@ -79,4 +79,15 @@ mmgrab(struct mm_struct *mm) extern struct mm_struct *linux_get_task_mm(struct task_struct *); #define get_task_mm(task) linux_get_task_mm(task) +struct folio { + /* + * The page member must be at the beginning because `page_folio(p)` + * casts from a `struct page` to a `struct folio`. + * + * `release_pages()` also relies on this to be able to accept either a + * list of `struct page` or a list of `struct folio`. + */ + struct page page; +}; + #endif /* _LINUXKPI_LINUX_MM_TYPES_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/page-flags.h b/sys/compat/linuxkpi/common/include/linux/page-flags.h index 9dd49c8492a5..a22b3a24c330 100644 --- a/sys/compat/linuxkpi/common/include/linux/page-flags.h +++ b/sys/compat/linuxkpi/common/include/linux/page-flags.h @@ -29,6 +29,13 @@ #ifndef _LINUXKPI_LINUX_PAGEFLAGS_H_ #define _LINUXKPI_LINUX_PAGEFLAGS_H_ +#include + #define PageHighMem(p) (0) +#define page_folio(p) \ + (_Generic((p), \ + const struct page *: (const struct folio *)(p), \ + struct page *: (struct folio *)(p))) + #endif /* _LINUXKPI_LINUX_PAGEFLAGS_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/pagemap.h b/sys/compat/linuxkpi/common/include/linux/pagemap.h index 92159f7a2eb8..cb6a1820ea8b 100644 --- a/sys/compat/linuxkpi/common/include/linux/pagemap.h +++ b/sys/compat/linuxkpi/common/include/linux/pagemap.h @@ -33,6 +33,8 @@ #include #include +struct folio_batch; + #define invalidate_mapping_pages(...) \ linux_invalidate_mapping_pages(__VA_ARGS__) diff --git a/sys/compat/linuxkpi/common/include/linux/pagevec.h b/sys/compat/linuxkpi/common/include/linux/pagevec.h index 9ba8ff8effa0..0a952e965b5a 100644 --- a/sys/compat/linuxkpi/common/include/linux/pagevec.h +++ b/sys/compat/linuxkpi/common/include/linux/pagevec.h @@ -66,4 +66,72 @@ check_move_unevictable_pages(struct pagevec *pvec) { } +/* + * struct folio + * + * On Linux, `struct folio` replaces `struct page`. To manage a list of folios, + * there is `struct folio_batch` on top of this, which replaces `struct + * pagevec` above. + * + * Here is the original description when `struct folio` was added to the Linux + * kernel: + * "A struct folio is a new abstraction to replace the venerable struct page. + * A function which takes a struct folio argument declares that it will + * operate on the entire (possibly compound) page, not just PAGE_SIZE bytes. + * In return, the caller guarantees that the pointer it is passing does not + * point to a tail page. No change to generated code." + */ + +struct folio; + +struct folio_batch { + uint8_t nr; + struct folio *folios[PAGEVEC_SIZE]; +}; + +static inline void +folio_batch_init(struct folio_batch *fbatch) +{ + fbatch->nr = 0; +} + +static inline void +folio_batch_reinit(struct folio_batch *fbatch) +{ + fbatch->nr = 0; +} + +static inline unsigned int +folio_batch_count(struct folio_batch *fbatch) +{ + return (fbatch->nr); +} + +static inline unsigned int +folio_batch_space(struct folio_batch *fbatch) +{ + return (PAGEVEC_SIZE - fbatch->nr); +} + +static inline unsigned int +folio_batch_add(struct folio_batch *fbatch, struct folio *folio) +{ + KASSERT( + fbatch->nr < PAGEVEC_SIZE, + ("struct folio_batch %p is full", fbatch)); + + fbatch->folios[fbatch->nr++] = folio; + + return (folio_batch_space(fbatch)); +} + +void __folio_batch_release(struct folio_batch *fbatch); + +static inline void +folio_batch_release(struct folio_batch *fbatch) +{ + if (folio_batch_count(fbatch)) + __folio_batch_release(fbatch); +} + #endif /* _LINUXKPI_LINUX_PAGEVEC_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/scatterlist.h b/sys/compat/linuxkpi/common/include/linux/scatterlist.h index 51ced19e6b5b..537f5bebc5aa 100644 --- a/sys/compat/linuxkpi/common/include/linux/scatterlist.h +++ b/sys/compat/linuxkpi/common/include/linux/scatterlist.h @@ -674,4 +674,11 @@ sg_pcopy_to_buffer(struct scatterlist *sgl, unsigned int nents, return (total); } +static inline void +sg_set_folio(struct scatterlist *sg, struct folio *folio, size_t len, + size_t offset) +{ + sg_set_page(sg, &folio->page, len, offset); +} + #endif /* _LINUXKPI_LINUX_SCATTERLIST_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/shmem_fs.h b/sys/compat/linuxkpi/common/include/linux/shmem_fs.h index efa2c855fe7d..5e91725d4a1c 100644 --- a/sys/compat/linuxkpi/common/include/linux/shmem_fs.h +++ b/sys/compat/linuxkpi/common/include/linux/shmem_fs.h @@ -54,4 +54,14 @@ void linux_shmem_truncate_range(vm_object_t obj, loff_t lstart, #define shmem_truncate_range(...) \ linux_shmem_truncate_range(__VA_ARGS__) +static inline struct folio * +shmem_read_folio_gfp(vm_object_t obj, int pindex, gfp_t gfp) +{ + struct page *page; + + page = shmem_read_mapping_page_gfp(obj, pindex, gfp); + + return (page_folio(page)); +} + #endif /* _LINUXKPI_LINUX_SHMEM_FS_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/swap.h b/sys/compat/linuxkpi/common/include/linux/swap.h index a353d353cd33..5828db7ae392 100644 --- a/sys/compat/linuxkpi/common/include/linux/swap.h +++ b/sys/compat/linuxkpi/common/include/linux/swap.h @@ -37,6 +37,9 @@ #include #include +#include +#include + static inline long get_nr_swap_pages(void) { @@ -54,4 +57,15 @@ current_is_kswapd(void) return (curproc == pageproc); } +static inline void +folio_mark_accessed(struct folio *folio) +{ + mark_page_accessed(&folio->page); +} + +static inline void +check_move_unevictable_folios(struct folio_batch *fbatch) +{ +} + #endif diff --git a/sys/compat/linuxkpi/common/src/linux_folio.c b/sys/compat/linuxkpi/common/src/linux_folio.c new file mode 100644 index 000000000000..c2af7792be04 --- /dev/null +++ b/sys/compat/linuxkpi/common/src/linux_folio.c @@ -0,0 +1,58 @@ +/*- + * Copyright (c) 2024-2025 The FreeBSD Foundation + * Copyright (c) 2024-2025 Jean-Sébastien Pédron + * + * This software was developed by Jean-Sébastien Pédron under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include + +struct folio * +folio_alloc(gfp_t gfp, unsigned int order) +{ + struct page *page; + struct folio *folio; + + /* + * Allocated pages are wired already. There is no need to increase a + * refcount here. + */ + page = alloc_pages(gfp | __GFP_COMP, order); + folio = (struct folio *)page; + + return (folio); +} + +void +__folio_batch_release(struct folio_batch *fbatch) +{ + release_pages(fbatch->folios, folio_batch_count(fbatch)); + + folio_batch_reinit(fbatch); +} diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 7ce52cbf95eb..ebb92eacbf9a 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -194,12 +194,14 @@ linux_free_pages(struct page *page, unsigned int order) } void -linux_release_pages(struct page **pages, int nr) +linux_release_pages(release_pages_arg arg, int nr) { int i; + CTASSERT(offsetof(struct folio, page) == 0); + for (i = 0; i < nr; i++) - __free_page(pages[i]); + __free_page(arg.pages[i]); } vm_offset_t diff --git a/sys/conf/files b/sys/conf/files index 66d96acedfc6..6ad3ea21b14e 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4595,6 +4595,8 @@ compat/linuxkpi/common/src/linux_domain.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_firmware.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_folio.c optional compat_linuxkpi \ + compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_fpu.c optional compat_linuxkpi \ compile-with "${LINUXKPI_C}" compat/linuxkpi/common/src/linux_hrtimer.c optional compat_linuxkpi \ diff --git a/sys/modules/linuxkpi/Makefile b/sys/modules/linuxkpi/Makefile index 692f69c1f4e1..a662f5dffbb6 100644 --- a/sys/modules/linuxkpi/Makefile +++ b/sys/modules/linuxkpi/Makefile @@ -7,6 +7,7 @@ SRCS= linux_compat.c \ linux_dmi.c \ linux_domain.c \ linux_firmware.c \ + linux_folio.c \ linux_fpu.c \ linux_hrtimer.c \ linux_idr.c \ From nobody Mon May 12 18:28:13 2025 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 4Zx7QP3hj9z5vdQb; Mon, 12 May 2025 18:28:13 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx7QP2vdxz4725; Mon, 12 May 2025 18:28:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747074493; 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=zD/rGkS6pKVtrmdUY1UU9WV2SCEWDc4IB6kB95jQLqM=; b=q/HjwbDMyAalW4Suhdg9tBZFjHYFMzOcJhVhVZOMUFXGR441vkQao0D4IGgBGjkQxdLDxt uJmLRBplRhPMwMCWOKG8oPwg8hnadu+at+cjtHdfFM/8Mcndlr9nzPhvIeEDzWJ4drl1mL KGkGbS6oPsVnFg6uDgkbdmv6htcMReibvLVf5jcYsGpr9YM/bptsAu+V4nAaZagIzH+kIi 64Ntsq7m/0EFFVSvaTtb4O7CLXGMOC6XjwoDtcWt+pE6bO+/rUEudfu+qzlAMjqWnaYJh6 imMxQ4uuOX610fJHnHOQib3K2V8egzSEXSCI0Nv82KTHt6lAbJJL57+jlxlbww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747074493; 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=zD/rGkS6pKVtrmdUY1UU9WV2SCEWDc4IB6kB95jQLqM=; b=E3Zz99GGlm/FESs0YDBaWMV3HykA+Oe9QH/xOzktTYmdckk240P/xidq4tLLYET1wksUV0 DtVZzdVqD65+eroVA3oifZ1zR4k9XzdIV8welS5YCUyPvswAIv5w2U0kSVHiKWyJsb62Tf d3lK3ozBYMvDW57AAF0xG9uzdCwGrNhE4UbulzcI2TRC/k09bBtTC073MRWrw85kFAknZS 0LZH5RaZPdgMKsORrTtJ99GTCviwP+WQaiQSU4QUHD6wWxtNx2yiKckFxrfbgJC+F7Lpve a7GScLjTlW14wfKaPWvgY++qaZD0SnY/fKmuh0wn9NawXbUtMKYe0p8TBHJVew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747074493; a=rsa-sha256; cv=none; b=vuK82TKVeCEDqrwzJ1r+0KW/jas0Z5Wo+rSzGW5IZB0AWSoGz1zW3pJp9ujaY7LbUWteRv PgZUBNswecLhJghJO0cDovtZyu+ncLIFDOuX8vdcOX1cQcH1epVpTOOCpC7DEn/LkYXz3/ dR4DMRejdBwnldjDeBlJuJYisuIjVzul+WaACPXYFZpaFTsx8ij9EN6L5J0q34BxV1As9/ ac4PK0x/jBfujnUEGa0gcYn4AiZNUFdUo1Cu19Pn8Ik+xw1JCoyHiRONBMSyGYEdtPofpz roUf2GYfPPg56sOGyB+EbLWYlJACE9C6K2Nt7NEGtAVm2S3NRWKGd6lwyleOJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx7QP2SPwz1R1B; Mon, 12 May 2025 18:28:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CISDHe011097; Mon, 12 May 2025 18:28:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CISD4u011094; Mon, 12 May 2025 18:28:13 GMT (envelope-from git) Date: Mon, 12 May 2025 18:28:13 GMT Message-Id: <202505121828.54CISD4u011094@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 7080a0c170da - main - flua: add posix.unistd.execp 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7080a0c170daf8e4b3f331ec33003b2f8893dc23 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=7080a0c170daf8e4b3f331ec33003b2f8893dc23 commit 7080a0c170daf8e4b3f331ec33003b2f8893dc23 Author: Isaac Freund AuthorDate: 2025-05-05 09:57:13 +0000 Commit: Ed Maste CommitDate: 2025-05-12 18:27:57 +0000 flua: add posix.unistd.execp This matches the interface of lposix, although I do wonder why they went with execp rather than execvp for the function name here. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50177 --- libexec/flua/modules/lposix.c | 57 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/libexec/flua/modules/lposix.c b/libexec/flua/modules/lposix.c index a706adf2c353..816d4bc688d2 100644 --- a/libexec/flua/modules/lposix.c +++ b/libexec/flua/modules/lposix.c @@ -198,6 +198,62 @@ err: return (3); } +static int +lua_execp(lua_State *L) +{ + int argc, error; + const char *file; + const char **argv; + + enforce_max_args(L, 2); + + file = luaL_checkstring(L, 1); + luaL_checktype(L, 2, LUA_TTABLE); + + lua_len(L, 2); + argc = lua_tointeger(L, -1); + + /* + * Use lua_newuserdatauv() to allocate a scratch buffer that is tracked + * and freed by lua's GC. This avoid any chance of a leak if a lua error + * is raised later in this function (e.g. by luaL_argerror()). + * The (argc + 2) size gives enough space in the buffer for argv[0] and + * the terminating NULL. + */ + argv = lua_newuserdatauv(L, (argc + 2) * sizeof(char *), 0); + + /* + * Sequential tables in lua start at index 1 by convention. + * If there happens to be a string at index 0, use that to + * override the default argv[0]. This matches the lposix API. + */ + lua_pushinteger(L, 0); + lua_gettable(L, 2); + argv[0] = lua_tostring(L, -1); + if (argv[0] == NULL) { + argv[0] = file; + } + + for (int i = 1; i <= argc; i++) { + lua_pushinteger(L, i); + lua_gettable(L, 2); + argv[i] = lua_tostring(L, -1); + if (argv[i] == NULL) { + luaL_argerror(L, 2, + "argv table must contain only strings"); + } + } + argv[argc + 1] = NULL; + + execvp(file, (char **)argv); + error = errno; + + lua_pushnil(L); + lua_pushstring(L, strerror(error)); + lua_pushinteger(L, error); + return (3); +} + static int lua_fnmatch(lua_State *L) { @@ -513,6 +569,7 @@ static const struct luaL_Reg unistdlib[] = { REG_SIMPLE(chown), REG_DEF(close, lua_pclose), REG_SIMPLE(dup2), + REG_SIMPLE(execp), REG_SIMPLE(fork), REG_SIMPLE(getpid), REG_SIMPLE(pipe), From nobody Mon May 12 19:16:11 2025 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 4Zx8Tm0prQz5vj7Y; Mon, 12 May 2025 19:16:12 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx8Tl6mhYz3cdB; Mon, 12 May 2025 19:16:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747077372; 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=z9eXLpCxU//tbw0R3qFvQZyGrUn9UBFq0a9FjpqXMos=; b=FR82/9e6Q/vj+JpeN6HJ4ksJZ7bhxKv14JHqIrI7IeAJERDBM4Rr8/f58cdVOkl1GO6EEC smRRps4pGnCyzaTqsXEsOydxqe/XdnbUl4vcpv0Fo+NemyugqZJvL1bbGWblbrsMgZIDio 9HiBBBLs++xRg+pAwuIoFu0ffTMU7qMG7B0TjSRhv3fpfeBGXX5/TckhA+sdDVUKAvxg/7 AvN1SbFoeiOpbOvqvEsisjTC0qgaYUXGTr5vEn5VsS6pVgfoA4iTjtAvLu87IkwjhHSNVe qPsvT4tDExX/BmTAH937Z/GfF7e/laC97QuF66a7L1vXr2p9aMm2i8zx5nuHyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747077372; 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=z9eXLpCxU//tbw0R3qFvQZyGrUn9UBFq0a9FjpqXMos=; b=GkAhOTl6n+kcxdzvsQkB02XKeSVdWRQdQ0VyQLvy7dRNOWPJ5iCl3VG7gEKlx/5/QaH0H9 /iuVQg5D6m4FlNQdp/aQ6/Xl3pHzDYWl1FNqNnSig3fXPVvUN3rMVU/UGW7bg0exzj5Oyk eS2SoVyYO7q2a/EocsoPXPGHQas4KUjimPnPD064/XDZXtAq3SYfoycA6cC3MhusxYRJMU TN43JTzgUFNYHODROibgctKzEczEfkkhncnFOktEl0amA0IUV+DJtobW1xNmq0U3drOhui Wa3ojJDyRFoNyM4dMRYZ7w0crTZuu7ccfS1oew5rGnoVC198CHBGBSWQWM8v1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747077372; a=rsa-sha256; cv=none; b=xxLpGx2Ntaen8sSf8AsFBY1vS4EfaRgjj/l6SRur6gVD2X5lCGgP4DI94oRTGQBmfSLdA2 ZUpAMybhyWIw8jnGwDrzWZHm/uIL5SlQwuoHCd3tEKVQiKBSqcbUHzVWExu2rm7t9yN3lW zWV0YzKZqephrZZNUgbE/uGmNYnRDJToq7QJYy7315XmYcSUmE4JDREBzgxLAz7fUrbHn+ OHZkjZFzDrqosj4Bn5feWl9t5uUzZotVlKIt5bzXgapNJm1/VFhwd14QSkpmXrdT0U5DOE z4x9mTj9ufNw1+KudGDebKVsCPK7kbMWhMjYHk76OmBjcjsomT88yThoxwN5Tg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx8Tl61XGz1SMr; Mon, 12 May 2025 19:16:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CJGBdf004292; Mon, 12 May 2025 19:16:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CJGBGN004289; Mon, 12 May 2025 19:16:11 GMT (envelope-from git) Date: Mon, 12 May 2025 19:16:11 GMT Message-Id: <202505121916.54CJGBGN004289@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 16d987fe7817 - main - LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 16d987fe781780100a31df30b9edd79ebb54f957 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=16d987fe781780100a31df30b9edd79ebb54f957 commit 16d987fe781780100a31df30b9edd79ebb54f957 Author: Bjoern A. Zeeb AuthorDate: 2025-05-12 15:12:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-12 19:15:13 +0000 LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed iwlwifi keeps logging 'Invalid TXQ id' even after previous changes to catch the BSS changed. The reason for this is that we do not error in the SCAN -> AUTH path as otherwise we would not have the state machine get us back to SCAN to clear up firmware state before auth/assoc to the new BSS. If we are not in synch as net80211 just swapped the iv_bss from under us, disable the TX queue for the (old) lsta to prevent the AUTH frame sent from sta_newstate() reaching the driver. After all we are not trying to authenticate to that node (sta) anymore. Sponsored by: The FreeBSD Foundation PR: 274382 MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_80211.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 357f451a3f1a..4540c1aaf1c1 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2021,6 +2021,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int struct ieee80211_prep_tx_info prep_tx_info; uint32_t changed; int error; + bool synched; /* * In here we use vap->iv_bss until lvif->lvif_bss is set. @@ -2211,14 +2212,6 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int __func__, ni, ni->ni_drv_data)); lsta = ni->ni_drv_data; - /* - * Make sure in case the sta did not change and we re-add it, - * that we can tx again. - */ - LKPI_80211_LSTA_TXQ_LOCK(lsta); - lsta->txq_ready = true; - LKPI_80211_LSTA_TXQ_UNLOCK(lsta); - /* Insert the [l]sta into the list of known stations. */ list_add_tail(&lsta->lsta_list, &lvif->lsta_list); @@ -2292,10 +2285,10 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ieee80211_ref_node(lsta->ni); lvif->lvif_bss = lsta; if (lsta->ni == vap->iv_bss) { - lvif->lvif_bss_synched = true; + lvif->lvif_bss_synched = synched = true; } else { /* Set to un-synched no matter what. */ - lvif->lvif_bss_synched = false; + lvif->lvif_bss_synched = synched = false; /* * We do not error as someone has to take us down. * If we are followed by a 2nd, new net80211::join1() going to @@ -2305,9 +2298,20 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int * to net80211 as we never used the node beyond alloc()/free() * and we do not hold an extra reference for that anymore given * ni : lsta == 1:1. + * Problem is if we do not error a MGMT/AUTH frame will be + * sent from net80211::sta_newstate(); disable lsta queue below. */ } LKPI_80211_LVIF_UNLOCK(lvif); + /* + * Make sure in case the sta did not change and we re-added it, + * that we can tx again but only if the vif/iv_bss are in sync. + * Otherwise this should prevent the MGMT/AUTH frame from being + * sent triggering a warning in iwlwifi. + */ + LKPI_80211_LSTA_TXQ_LOCK(lsta); + lsta->txq_ready = synched; + LKPI_80211_LSTA_TXQ_UNLOCK(lsta); goto out_relocked; out: From nobody Mon May 12 20:02:00 2025 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 4Zx9Vc2YJCz5vmD3; Mon, 12 May 2025 20:02:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zx9Vc1Tkdz49mp; Mon, 12 May 2025 20:02:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747080120; 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=1Q2C3tpk3ck122gToOFCcngHfmxWHbOiFgLqHGLWjx0=; b=fG5hfTNOq3sbJEgb8ldRtPHqjqNSwf97Pj+Xui0Gb5LMTTrJRHcs/s+c8yUzv2sH0/KSMy Y9ZCm4CcAEiSxM3EJfi7alIweLMl8AILhBHL/QVhIypX2JDBzW7H3o1Cp8MyslWNp+8trH 4lmG2YXW430W4JPC8ZdfQr7z6nAGNSZNZdXN+mKg6qLpe57wXoHJyNgWy74q4KSfI8kI0i Ido86FMy0vCP5XdQultKOzdJKHIVp8D029UoReh4RBdX+3kgsuH1K6r1gHFVsMZiiM7PlE SI6tRgHVDcET9wz1m1fDawC4Yrn4bTUtR/bP4R8/BsWFCvJPze5RX2Rlu0DCHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747080120; 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=1Q2C3tpk3ck122gToOFCcngHfmxWHbOiFgLqHGLWjx0=; b=vGQLUVLTHo+DJKjXhsaHoh3hAkARZRk4m526rEOTWXg8vDTlkep1Im3bPj9g/tzxLcpD3c HYDnoJ0k9H9GdtlDYDVn3Xwem2fe6INSFfKko17gOtJgHRsojSkiS1MEPdJeRoLGuQ1yFo B2qhOJ8h+X3cDA3KRS6gm4U6HLFhPC6BbvQhcNlsme4poZQYPm0uYWvg/zhRPotXgLPuqL zljypiKaGMx4KPDB18n1Q9c9W+/BRg46wDwScDgBpyod0Nv4QcgcQO2zQ1WE5Cwly92DQi KIDVYqDIJza07yKFAIxUXee8d3SA/6Fcy7DqoDzWPKSQ9ZN7+b+UPwJLDtlSew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747080120; a=rsa-sha256; cv=none; b=AGb0aRFDMqta9l5PORrcf+pCKjbsBDodtdkj6meLMwyVI2ZsVeqD/UlBXI6ekk4Uu8bTbW U4WpxeBJqwfKzDL7uvWoOjfDjhZpXTJfFZI7ytq9i41wHQDB8MgFoyTRrkRNZsnNDwOX8T qYsqXSb/o4/PiNac+hu1e6T8GbDVIvPLbQhwvNq7UmjpRD4+3RXHqlp8xQxO6jN0L3I0qo k1y+snx5DGzn+ERdPRSk7HMg215Ezk6pgcMgK27Mv3nDwKkI3bdDoFzwPFx6KoEUxtZGQH pm/uNYYeXywtb8gnE4hoBU2w2Mh71T9gOSQ9qw9DjdWIaqCPhW5hXN3VPFA/yQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zx9Vc148RzwL; Mon, 12 May 2025 20:02:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CK20WK095281; Mon, 12 May 2025 20:02:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CK2006095278; Mon, 12 May 2025 20:02:00 GMT (envelope-from git) Date: Mon, 12 May 2025 20:02:00 GMT Message-Id: <202505122002.54CK2006095278@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: d23b3bbdd44f - main - vm_page: alphabetize declarations 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d23b3bbdd44fc9d30f7dc5140178958055b178c9 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=d23b3bbdd44fc9d30f7dc5140178958055b178c9 commit d23b3bbdd44fc9d30f7dc5140178958055b178c9 Author: Doug Moore AuthorDate: 2025-05-12 19:59:41 +0000 Commit: Doug Moore CommitDate: 2025-05-12 19:59:41 +0000 vm_page: alphabetize declarations Alphabetize a section of the header file that includes only function declarations. Add names to the previously-unnamed parameters in some of those declarations. Reviewed by: alc, kib Differential Revision: https://reviews.freebsd.org/D50249 --- sys/vm/vm_page.h | 39 +++++++++++++++++++-------------------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h index 6c1826bc68e6..4bcd8d9f8236 100644 --- a/sys/vm/vm_page.h +++ b/sys/vm/vm_page.h @@ -591,22 +591,9 @@ malloc2vm_flags(int malloc_flags) #define PS_ALL_VALID 0x2 #define PS_NONE_BUSY 0x4 -bool vm_page_busy_acquire(vm_page_t m, int allocflags); -void vm_page_busy_downgrade(vm_page_t m); -int vm_page_busy_tryupgrade(vm_page_t m); -bool vm_page_busy_sleep(vm_page_t m, const char *msg, int allocflags); -void vm_page_busy_sleep_unlocked(vm_object_t obj, vm_page_t m, - vm_pindex_t pindex, const char *wmesg, int allocflags); -void vm_page_free(vm_page_t m); -void vm_page_free_zero(vm_page_t m); - void vm_page_activate (vm_page_t); void vm_page_advise(vm_page_t m, int advice); vm_page_t vm_page_alloc(vm_object_t, vm_pindex_t, int); -vm_page_t vm_page_alloc_iter(vm_object_t, vm_pindex_t, int, - struct pctrie_iter *); -vm_page_t vm_page_alloc_domain_iter(vm_object_t, vm_pindex_t, int, int, - struct pctrie_iter *); vm_page_t vm_page_alloc_contig(vm_object_t object, vm_pindex_t pindex, int req, u_long npages, vm_paddr_t low, vm_paddr_t high, u_long alignment, vm_paddr_t boundary, vm_memattr_t memattr); @@ -614,6 +601,10 @@ vm_page_t vm_page_alloc_contig_domain(vm_object_t object, vm_pindex_t pindex, int domain, int req, u_long npages, vm_paddr_t low, vm_paddr_t high, u_long alignment, vm_paddr_t boundary, vm_memattr_t memattr); +vm_page_t vm_page_alloc_domain_iter(vm_object_t object, vm_pindex_t pindex, + int domain, int req, struct pctrie_iter *pages); +vm_page_t vm_page_alloc_iter(vm_object_t object, vm_pindex_t pindex, int req, + struct pctrie_iter *pages); vm_page_t vm_page_alloc_noobj(int); vm_page_t vm_page_alloc_noobj_domain(int, int); vm_page_t vm_page_alloc_noobj_contig(int req, u_long npages, vm_paddr_t low, @@ -624,6 +615,21 @@ vm_page_t vm_page_alloc_noobj_contig_domain(int domain, int req, u_long npages, vm_memattr_t memattr); void vm_page_bits_set(vm_page_t m, vm_page_bits_t *bits, vm_page_bits_t set); bool vm_page_blacklist_add(vm_paddr_t pa, bool verbose); +bool vm_page_busy_acquire(vm_page_t m, int allocflags); +void vm_page_busy_downgrade(vm_page_t m); +int vm_page_busy_tryupgrade(vm_page_t m); +bool vm_page_busy_sleep(vm_page_t m, const char *msg, int allocflags); +void vm_page_busy_sleep_unlocked(vm_object_t obj, vm_page_t m, + vm_pindex_t pindex, const char *wmesg, int allocflags); +void vm_page_deactivate(vm_page_t m); +void vm_page_deactivate_noreuse(vm_page_t m); +void vm_page_dequeue(vm_page_t m); +void vm_page_dequeue_deferred(vm_page_t m); +void vm_page_free(vm_page_t m); +void vm_page_free_invalid(vm_page_t m); +int vm_page_free_pages_toq(struct spglist *free, bool update_wire_count); +void vm_page_free_zero(vm_page_t m); +vm_page_t vm_page_getfake(vm_paddr_t paddr, vm_memattr_t memattr); int vm_page_grab_zero_partial(vm_object_t object, vm_pindex_t pindex, int base, int end); vm_page_t vm_page_grab(vm_object_t, vm_pindex_t, int); @@ -640,12 +646,6 @@ int vm_page_grab_valid_iter(vm_page_t *mp, vm_object_t object, vm_pindex_t pindex, int allocflags, struct pctrie_iter *pages); int vm_page_grab_valid_unlocked(vm_page_t *mp, vm_object_t object, vm_pindex_t pindex, int allocflags); -void vm_page_deactivate(vm_page_t); -void vm_page_deactivate_noreuse(vm_page_t); -void vm_page_dequeue(vm_page_t m); -void vm_page_dequeue_deferred(vm_page_t m); -void vm_page_free_invalid(vm_page_t); -vm_page_t vm_page_getfake(vm_paddr_t paddr, vm_memattr_t memattr); void vm_page_initfake(vm_page_t m, vm_paddr_t paddr, vm_memattr_t memattr); void vm_page_init_marker(vm_page_t marker, int queue, uint16_t aflags); void vm_page_init_page(vm_page_t m, vm_paddr_t pa, int segind, int pool); @@ -712,7 +712,6 @@ int vm_page_is_valid(vm_page_t, int, int); void vm_page_test_dirty(vm_page_t); vm_page_bits_t vm_page_bits(int base, int size); void vm_page_zero_invalid(vm_page_t m, boolean_t setvalid); -int vm_page_free_pages_toq(struct spglist *free, bool update_wire_count); void vm_page_dirty_KBI(vm_page_t m); void vm_page_lock_KBI(vm_page_t m, const char *file, int line); From nobody Mon May 12 21:01:57 2025 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 4ZxBqn3nK7z5vqLr; Mon, 12 May 2025 21:01:57 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxBqn3DcBz42b5; Mon, 12 May 2025 21:01:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747083717; 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=LTaeJdQmiXDVjWWR2AEGvQrp4IBGxBrwUncWlx7elto=; b=bPfkOpI458dYltkJgcUgDYnbEDI8A0jTdotTKv3f4DHl6OVBpAWEwT4dbWulbpRgnnYeJe KU+Qq/UtVphexnkaIHZpcpYGUpeazhqa59Wg1RP/nVxJj9NonfKNg6BoMckUz96P+VaOlJ CfUjMNPNiViUXt7afnqpfsRjm/HxUa8borjig+IaU/L4dH63AXFsdaY+qZhvJHRNBRNh2m 0JWhkp6SfpcrJrClv2QBekftu5YEm1gJUFM33pgdFTvPsEHtRXlTnhafS6OsAqhr+vxSD3 MI19jLZ7gulGdMnevb2gWWpWoPqLZwf3cvAwOm9JY2Vxg1YMZ4U3eZBFx8g93Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747083717; 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=LTaeJdQmiXDVjWWR2AEGvQrp4IBGxBrwUncWlx7elto=; b=Mr7XTYTICvHuAhdLvJLtza5tVrfyM7v6zB9//NGasUMMv1tV2iVo3koOUH81XAu7+JDad6 vQmxFdEIxMysQpZ920sX/VaooRX/5ehbV8o8fuIlsEM7Lkj80H8gkPAZvNdcbgluwpM5T1 94VKcs4l8yCuo96QzxxABEJcKmidzkKEbD6WFLI88vGmk9P4UTAuzgDgDSnim+OhSdQvoU 75yK/NhktYdEEVzWyvjZj7FDNm2vdIOnObyP0CYsmpg/qBtwvWLWYwZ0OvFWW8VY9UdtJ3 o+P+turoXAHwDe83mxFzqrVx9OGOIAeKd+lqNNvOFJOBrY2borADtY2aBY+EUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747083717; a=rsa-sha256; cv=none; b=kn9Mg+LVmK8CWlHeiBY6pXgn8RFtEixjk7T6euEMZeipQ1RhOgn4AR/b/Ao7ohe9teGrna UL64gN/wLNsAezo3aMeeODMxhCTPtYFnNHtyCsueN9ys1ePDumToFYtX/e8eDO8UrjucyI XZIsT+MSBMYromTjL9k82qZWDPTB2FLum3cL1x+oFeW8L4saUNAogukF9MVlf7fRJievqL Prat+ixOi05kBfSJow3cyaEaM9T11XiJVY/dsy8X9YXsh8EmoXYLuiSngfGFsJsHUiqsLj sRO1MrvPdlCaa5GxnXtd16w875ysD7JdyX6Y0vnR+sjJymR7MXSvI/Av4XybaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxBqn2Z1Pz2Vx; Mon, 12 May 2025 21:01:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CL1vIk009325; Mon, 12 May 2025 21:01:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CL1v0d009322; Mon, 12 May 2025 21:01:57 GMT (envelope-from git) Date: Mon, 12 May 2025 21:01:57 GMT Message-Id: <202505122101.54CL1v0d009322@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: 5d59c1b4f14e - main - stand/lua manuals: Describe better 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5d59c1b4f14e2fa6388b1d75ee3243085f1c69f2 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=5d59c1b4f14e2fa6388b1d75ee3243085f1c69f2 commit 5d59c1b4f14e2fa6388b1d75ee3243085f1c69f2 Author: Alexander Ziaee AuthorDate: 2025-03-29 05:14:19 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-12 20:58:40 +0000 stand/lua manuals: Describe better The lua boot loader module manuals were getting pulled into search results for FreeBSD, but not for "boot" or "loader". Reword them to increase clarity for boot or loader searches, as well as the FreeBSD search term which we've been scoping to system topic overview manuals. MFC after: 3 days Reviewed by: imp, mhorne Approved by: mhorne (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pulls/1628 --- stand/lua/cli.lua.8 | 4 ++-- stand/lua/color.lua.8 | 4 ++-- stand/lua/config.lua.8 | 4 ++-- stand/lua/core.lua.8 | 4 ++-- stand/lua/drawer.lua.8 | 4 ++-- stand/lua/gfx.lua.8 | 4 ++-- stand/lua/hook.lua.8 | 4 ++-- stand/lua/loader.conf.lua.5 | 2 +- stand/lua/loader.lua.8 | 4 ++-- stand/lua/menu.lua.8 | 4 ++-- stand/lua/password.lua.8 | 4 ++-- stand/lua/screen.lua.8 | 4 ++-- 12 files changed, 23 insertions(+), 23 deletions(-) diff --git a/stand/lua/cli.lua.8 b/stand/lua/cli.lua.8 index 4077ca6b0b56..aee1d3d53579 100644 --- a/stand/lua/cli.lua.8 +++ b/stand/lua/cli.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 24, 2021 +.Dd March 29, 2025 .Dt CLI.LUA 8 .Os .Sh NAME .Nm cli.lua -.Nd FreeBSD Lua CLI module +.Nd bootloader command line interpreter module .Sh DESCRIPTION .Nm contains the main functionality required to add new CLI commands, which can be diff --git a/stand/lua/color.lua.8 b/stand/lua/color.lua.8 index 8a31d2034a48..9a3b9b1b9385 100644 --- a/stand/lua/color.lua.8 +++ b/stand/lua/color.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt COLOR.LUA 8 .Os .Sh NAME .Nm color.lua -.Nd FreeBSD color module +.Nd bootloader color module .Sh DESCRIPTION .Nm contains functionality for working with colors. diff --git a/stand/lua/config.lua.8 b/stand/lua/config.lua.8 index b2b1122285eb..7e8863203446 100644 --- a/stand/lua/config.lua.8 +++ b/stand/lua/config.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 17, 2020 +.Dd March 29, 2025 .Dt CONFIG.LUA 8 .Os .Sh NAME .Nm config.lua -.Nd FreeBSD config module +.Nd bootloader configuration module .Sh DESCRIPTION .Nm contains configuration and module loading functionality. diff --git a/stand/lua/core.lua.8 b/stand/lua/core.lua.8 index 0bdf88c1a364..de43d3e2b220 100644 --- a/stand/lua/core.lua.8 +++ b/stand/lua/core.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 8, 2023 +.Dd March 29, 2025 .Dt CORE.LUA 8 .Os .Sh NAME .Nm core.lua -.Nd FreeBSD core module +.Nd bootloader core module .Sh DESCRIPTION .Nm contains core functionality that does not have a more fitting module. diff --git a/stand/lua/drawer.lua.8 b/stand/lua/drawer.lua.8 index a3a4865d3efe..91738f4b2434 100644 --- a/stand/lua/drawer.lua.8 +++ b/stand/lua/drawer.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt DRAWER.LUA 8 .Os .Sh NAME .Nm drawer.lua -.Nd FreeBSD menu/screen drawer module +.Nd bootloader menu/screen drawer module .Sh DESCRIPTION .Nm contains functionality for drawing and manipulating the menu, logo, and brand diff --git a/stand/lua/gfx.lua.8 b/stand/lua/gfx.lua.8 index 82d3f90f4af7..75f258026804 100644 --- a/stand/lua/gfx.lua.8 +++ b/stand/lua/gfx.lua.8 @@ -3,12 +3,12 @@ .\" .\" SPDX-License-Identifier: BSD-2-Clause .\" -.Dd February 6, 2024 +.Dd March 29, 2025 .Dt GFX.LUA 8 .Os .Sh NAME .Nm gfx.lua -.Nd Fx Lua gfx module +.Nd bootloader graphics module .Sh DESCRIPTION The built-in graphics related Lua bindings for the .Fx diff --git a/stand/lua/hook.lua.8 b/stand/lua/hook.lua.8 index f0e20153a924..91d5f76b6e1c 100644 --- a/stand/lua/hook.lua.8 +++ b/stand/lua/hook.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 28, 2020 +.Dd March 29, 2025 .Dt HOOK.LUA 8 .Os .Sh NAME .Nm hook.lua -.Nd FreeBSD hook module +.Nd bootloader hook module .Sh DESCRIPTION .Nm contains functionality for defining hook types and attaching hooks. diff --git a/stand/lua/loader.conf.lua.5 b/stand/lua/loader.conf.lua.5 index 7fad7d2f78dd..509944ab6598 100644 --- a/stand/lua/loader.conf.lua.5 +++ b/stand/lua/loader.conf.lua.5 @@ -29,7 +29,7 @@ .Os .Sh NAME .Nm loader.conf.lua -.Nd Lua-based system bootstrap configuration file +.Nd system bootstrap Lua configuration information .Sh DESCRIPTION When the lua-based .Xr loader 8 diff --git a/stand/lua/loader.lua.8 b/stand/lua/loader.lua.8 index e5aee7e8602d..ffee46526c9f 100644 --- a/stand/lua/loader.lua.8 +++ b/stand/lua/loader.lua.8 @@ -3,12 +3,12 @@ .\" .\" SPDX-License-Identifier: BSD-2-Clause .\" -.Dd February 6, 2024 +.Dd March 29, 2025 .Dt LOADER.LUA 8 .Os .Sh NAME .Nm loader.lua -.Nd Fx Lua loader module +.Nd bootloader Lua binding module .Sh DESCRIPTION The built-in Lua bindings for the .Fx diff --git a/stand/lua/menu.lua.8 b/stand/lua/menu.lua.8 index e2a0ff09ffd9..e2e32efdf3b4 100644 --- a/stand/lua/menu.lua.8 +++ b/stand/lua/menu.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 31, 2021 +.Dd March 29, 2025 .Dt MENU.LUA 8 .Os .Sh NAME .Nm menu.lua -.Nd FreeBSD dynamic menu boot module +.Nd bootloader dynamic menu module .Sh DESCRIPTION .Nm contains the main functionality required to build a dynamic menu system. diff --git a/stand/lua/password.lua.8 b/stand/lua/password.lua.8 index 1fbe395ab0db..34623c001206 100644 --- a/stand/lua/password.lua.8 +++ b/stand/lua/password.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt PASSWORD.LUA 8 .Os .Sh NAME .Nm password.lua -.Nd FreeBSD password module +.Nd bootloader password module .Sh DESCRIPTION .Nm contains functionality for prompting for and checking passwords. diff --git a/stand/lua/screen.lua.8 b/stand/lua/screen.lua.8 index 691af5bf0758..a41ce6faf08b 100644 --- a/stand/lua/screen.lua.8 +++ b/stand/lua/screen.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt SCREEN.LUA 8 .Os .Sh NAME .Nm screen.lua -.Nd FreeBSD screen manipulation module +.Nd bootloader screen manipulation module .Sh DESCRIPTION .Nm contains functionality for manipulating the screen. From nobody Mon May 12 22:14:51 2025 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 4ZxDS84sD4z5vvC0 for ; Mon, 12 May 2025 22:15:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x1032.google.com (mail-pj1-x1032.google.com [IPv6:2607:f8b0:4864:20::1032]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxDS80LfLz45LR for ; Mon, 12 May 2025 22:15:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x1032.google.com with SMTP id 98e67ed59e1d1-30c35ac35dfso3855667a91.1 for ; Mon, 12 May 2025 15:15:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1747088103; x=1747692903; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=WUYxasLzKDAWIej65egP2T8M1v/9m8L1CysFfFLKOO8=; b=lOSY9s8bIbf0yitECg5Gx6rNSggc4dqAl1xxpko36rjc9uAE+bA/TqLt42hBTxHu7C FSC7yeZIzOE6lw2M3AnuTcHPb7uDDkwh7vt9iY2hjj/DPfYUdILtNqjH/m4swnSG0/jG 9K88RghT8t0uMHacfGQwKwwdfsv/G0BEtaXMtEBEaM0g6n3Rd2wmQQdYn549NNP6gia0 mVvAN0jbp0cQYpDQt6AoGKMKlECNtCkA4hS37yT4Ae9b/4G3A08wgKT3nM4siWdQkLKo GpVNCTLAU00ZC5YiIa75bcDUubJutSRE0hkjjvHhGh2HL2EAvYq4kUd5RsUecOGqRKj8 JLpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747088103; x=1747692903; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WUYxasLzKDAWIej65egP2T8M1v/9m8L1CysFfFLKOO8=; b=IKhdewPXUWfabOOb0quiXSvjnBiBo9ymFSOy+yWorZRrAEfu2jRujDSQ/sGJtvmL5T YS1bLqm6I2umNDCjOGg2Ol3J5UUvjFLsJ9JU7DjOJdod+EQSpcX+CB0lTqBgLjkeNu44 dEfGLGD+ZzlI0s+4KeGK2vv/959ljble49gBRSCs5O/bN3A8BA4h2Sw9gfySS91Us2WA Dh1TenRAcy5x60HF1TtbUl/7pIlUY3b0iOP/LPa3BSkpVMk6cZwJAbV7DjWHjH2p5+dP 8ahFxYSwxBnMKbh8qfWgBKIy/OopSDco3zRmciIdDxqLoR7rqoOYjwtLb8qDVAeaUtkv RINw== X-Forwarded-Encrypted: i=1; AJvYcCVcZbU0w6m+W15ED81w4MPh0WUVd1kmtpQnVCtv8QPysmmtmNMME6ETTQFTCKzFiUsnXCJgHaoF8wnbGlFiCDQhci7N@freebsd.org X-Gm-Message-State: AOJu0Yw4eUunkp4wFtgKWvqWmi4vo8WXFpBxvn4Gt+4Bwydu1OaTA36h FlNvxjE8rzAyRATMd4aTkfH5QQbQgIDry5B6/B3QRsoy9jAdYl1mxWjcyoegdoHvcRWuo6Dhaen 3hLd5snChsX03RZgeXy/mfbQ80XLC2tpJGUu2Dg== X-Gm-Gg: ASbGncvH/S9jtTpMcVC+/sPFq5ffjvlBE7QCGmSoC91U76XVByCD2BH6xS1nXTVGiZ7 2/NA8lyz3pfP+Y5MujWWE+9TA9LcJc8h7R4DxIHmWJWTY+SDg2Q0fKY2A8ZVMBW/G7OEGS8K6NJ 6/wukPaAlseXOWwCZIfjc/2XVQn0E37pSaAx90D9TRKiU+WbBdREA2Gf74ryqcv+nlehsu4pFcF w== X-Google-Smtp-Source: AGHT+IGEtShE4hXV+tBbKyoT+LMmP1XyK4hNNIYgvXh5/rRhpqnnpPpHsh3askSL4ErSrUECQCNWhgWXzHSCm/MqoNI= X-Received: by 2002:a17:90b:3908:b0:2fe:99cf:f566 with SMTP id 98e67ed59e1d1-30c3cefe5cfmr23037107a91.13.1747088102496; Mon, 12 May 2025 15:15:02 -0700 (PDT) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <202504301721.53UHLjlw095104@gitrepo.freebsd.org> <878qn8r3t6.wl-herbert@gojira.at> <87msbipbve.wl-herbert@gojira.at> In-Reply-To: <87msbipbve.wl-herbert@gojira.at> From: Warner Losh Date: Mon, 12 May 2025 16:14:51 -0600 X-Gm-Features: AX0GCFsAjrzk1BGs0JHOh9oJDBVa-FcnXGGORIRPoZ6SLPWMNbppQme4O2hXUoM Message-ID: Subject: Re: git: 80b069913d49 - stable/14 - mpi3mr: Divert large WriteSame IOs to firmware if unmap and ndob bits are set To: "Herbert J. Skuhra" Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-branches@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 4ZxDS80LfLz45LR X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Spamd-Bar: ---- I'll try. Warner On Mon, May 12, 2025 at 12:43=E2=80=AFAM Herbert J. Skuhra wrote: > > Yes, thanks. Merge to releng/14.3? > > On Thu, 08 May 2025 17:44:59 +0200, Warner Losh wrote: > > > > I think that I've fixed this. > > > > Warner > > > > On Wed, May 7, 2025 at 6:41=E2=80=AFAM Herbert J. Skuhra wrote: > > > > > > On Wed, 30 Apr 2025 19:21:45 +0200, Warner Losh wro= te: > > > > > > > > The branch stable/14 has been updated by imp: > > > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D80b069913d496bd73b0e= a8e515b6bf3706530ea1 > > > > > > > > commit 80b069913d496bd73b0ea8e515b6bf3706530ea1 > > > > Author: Chandrakanth patil > > > > AuthorDate: 2024-06-06 08:38:52 +0000 > > > > Commit: Warner Losh > > > > CommitDate: 2025-04-30 17:05:52 +0000 > > > > > > > > mpi3mr: Divert large WriteSame IOs to firmware if unmap and ndo= b bits are set > > > > > > > > Firmware advertises the transfer lenght for writesame commands = to driver during init. > > > > So for any writesame IOs with ndob and unmap bit set and transf= er lengh is greater > > > > than the max write same length specified by the firmware, then = direct those commands > > > > to firmware instead of hardware otherwise hardware will break. > > > > > > > > Reviewed by: imp > > > > Approved by: imp > > > > Differential revision: https://reviews.freebsd.org/D44452 > > > > > > > > (cherry picked from commit 3f3a15543a6721100dda0e4219eb48ecbe35= 731a) > > > > --- > > > > sys/dev/mpi3mr/mpi3mr.c | 16 ++++++++++++++++ > > > > sys/dev/mpi3mr/mpi3mr.h | 2 ++ > > > > sys/dev/mpi3mr/mpi3mr_cam.c | 35 +++++++++++++++++++++++++++++++++= ++ > > > > sys/dev/mpi3mr/mpi3mr_cam.h | 1 + > > > > sys/modules/mpi3mr/Makefile | 3 +++ > > > > 5 files changed, 57 insertions(+) > > > > > > > > diff --git a/sys/dev/mpi3mr/mpi3mr.c b/sys/dev/mpi3mr/mpi3mr.c > > > > index 03fea4bdfcc7..a7bc459c1db8 100644 > > > > --- a/sys/dev/mpi3mr/mpi3mr.c > > > > +++ b/sys/dev/mpi3mr/mpi3mr.c > > > > @@ -2177,6 +2177,8 @@ static int mpi3mr_issue_iocinit(struct mpi3mr= _softc *sc) > > > > time_in_msec =3D (now.tv_sec * 1000 + now.tv_usec/1000); > > > > iocinit_req.TimeStamp =3D htole64(time_in_msec); > > > > > > > > + iocinit_req.MsgFlags |=3D MPI3_IOCINIT_MSGFLAGS_WRITESAMEDIVE= RT_SUPPORTED; > > > > + > > > > init_completion(&sc->init_cmds.completion); > > > > retval =3D mpi3mr_submit_admin_cmd(sc, &iocinit_req, > > > > sizeof(iocinit_req)); > > > > @@ -3340,6 +3342,19 @@ void mpi3mr_update_device(struct mpi3mr_soft= c *sc, > > > > break; > > > > } > > > > > > > > + switch (flags & MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_MASK) { > > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_256_LB: > > > > + tgtdev->ws_len =3D 256; > > > > + break; > > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_2048_LB: > > > > + tgtdev->ws_len =3D 2048; > > > > + break; > > > > + case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_NO_LIMIT: > > > > + default: > > > > + tgtdev->ws_len =3D 0; > > > > + break; > > > > + } > > > > + > > > > switch (tgtdev->dev_type) { > > > > case MPI3_DEVICE_DEVFORM_SAS_SATA: > > > > { > > > > @@ -5649,6 +5664,7 @@ static void mpi3mr_invalidate_devhandles(stru= ct mpi3mr_softc *sc) > > > > target->io_throttle_enabled =3D 0; > > > > target->io_divert =3D 0; > > > > target->throttle_group =3D NULL; > > > > + target->ws_len =3D 0; > > > > } > > > > } > > > > mtx_unlock_spin(&sc->target_lock); > > > > diff --git a/sys/dev/mpi3mr/mpi3mr.h b/sys/dev/mpi3mr/mpi3mr.h > > > > index 2f91b0b702dd..fa50ed035fc2 100644 > > > > --- a/sys/dev/mpi3mr/mpi3mr.h > > > > +++ b/sys/dev/mpi3mr/mpi3mr.h > > > > @@ -232,6 +232,8 @@ extern char fmt_os_ver[16]; > > > > > > > > #define MPI3MR_PERIODIC_DELAY 1 /* 1 second heartbeat= /watchdog check */ > > > > > > > > +#define WRITE_SAME_32 0x0d > > > > + > > > > struct completion { > > > > unsigned int done; > > > > struct mtx lock; > > > > diff --git a/sys/dev/mpi3mr/mpi3mr_cam.c b/sys/dev/mpi3mr/mpi3mr_ca= m.c > > > > index d4cb7e9265dd..dca194a5c8cd 100644 > > > > --- a/sys/dev/mpi3mr/mpi3mr_cam.c > > > > +++ b/sys/dev/mpi3mr/mpi3mr_cam.c > > > > @@ -83,6 +83,7 @@ > > > > #include "mpi3mr.h" > > > > #include /* XXX for pcpu.h */ > > > > #include /* XXX for PCPU_GET *= / > > > > +#include > > > > > > > > #define smp_processor_id() PCPU_GET(cpuid) > > > > > > > > @@ -102,6 +103,37 @@ extern void mpi3mr_add_sg_single(void *paddr, = U8 flags, U32 length, > > > > > > > > static U32 event_count; > > > > > > > > +static > > > > +inline void mpi3mr_divert_ws(Mpi3SCSIIORequest_t *req, > > > > + struct ccb_scsiio *csio, > > > > + U16 ws_len) > > > > +{ > > > > + U8 unmap =3D 0, ndob =3D 0; > > > > + U32 num_blocks =3D 0; > > > > + U8 opcode =3D scsiio_cdb_ptr(csio)[0]; > > > > + U16 service_action =3D ((scsiio_cdb_ptr(csio)[8] << 8) | scsi= io_cdb_ptr(csio)[9]); > > > > + > > > > + > > > > + if (opcode =3D=3D WRITE_SAME_16 || > > > > + (opcode =3D=3D VARIABLE_LEN_CDB && > > > > + service_action =3D=3D WRITE_SAME_32)) { > > > > + > > > > + int unmap_ndob_index =3D (opcode =3D=3D WRITE_SAME_16= ) ? 1 : 10; > > > > + > > > > + unmap =3D scsiio_cdb_ptr(csio)[unmap_ndob_index] & 0x= 08; > > > > + ndob =3D scsiio_cdb_ptr(csio)[unmap_ndob_index] & 0x0= 1; > > > > + num_blocks =3D get_unaligned_be32(scsiio_cdb_ptr(csio= ) + > > > > + ((opcode =3D=3D WRITE= _SAME_16) ? 10 : 28)); > > > > + > > > > + /* Check conditions for diversion to firmware */ > > > > + if (unmap && ndob && num_blocks > ws_len) { > > > > + req->MsgFlags |=3D MPI3_SCSIIO_MSGFLAGS_DIVER= T_TO_FIRMWARE; > > > > + req->Flags =3D htole32(le32toh(req->Flags) | > > > > + MPI3_SCSIIO_FLAGS_DIVERT= _REASON_WRITE_SAME_TOO_LARGE); > > > > + } > > > > + } > > > > +} > > > > + > > > > static void mpi3mr_prepare_sgls(void *arg, > > > > bus_dma_segment_t *segs, int nsegs, int error) > > > > { > > > > @@ -1080,6 +1112,9 @@ mpi3mr_action_scsiio(struct mpi3mr_cam_softc = *cam_sc, union ccb *ccb) > > > > break; > > > > } > > > > > > > > + if (targ->ws_len) > > > > + mpi3mr_divert_ws(req, csio, targ->ws_len); > > > > + > > > > req->Flags =3D htole32(mpi_control); > > > > > > > > if (csio->ccb_h.flags & CAM_CDB_POINTER) > > > > diff --git a/sys/dev/mpi3mr/mpi3mr_cam.h b/sys/dev/mpi3mr/mpi3mr_ca= m.h > > > > index 3a0526217f86..115ce0c4b8d7 100644 > > > > --- a/sys/dev/mpi3mr/mpi3mr_cam.h > > > > +++ b/sys/dev/mpi3mr/mpi3mr_cam.h > > > > @@ -121,6 +121,7 @@ struct mpi3mr_target { > > > > struct mpi3mr_throttle_group_info *throttle_group; > > > > uint64_t q_depth; > > > > enum mpi3mr_target_state state; > > > > + uint16_t ws_len; > > > > }; > > > > > > > > struct mpi3mr_cam_softc { > > > > diff --git a/sys/modules/mpi3mr/Makefile b/sys/modules/mpi3mr/Makef= ile > > > > index 3f1f63a94ac3..39aa2e3f0ddd 100644 > > > > --- a/sys/modules/mpi3mr/Makefile > > > > +++ b/sys/modules/mpi3mr/Makefile > > > > @@ -6,6 +6,9 @@ SRCS=3D mpi3mr_pci.c mpi3mr.c mpi3mr_cam.c mpi3mr_a= pp.c > > > > SRCS+=3D opt_cam.h > > > > SRCS+=3D device_if.h bus_if.h pci_if.h > > > > > > > > +CFLAGS+=3D -I${SRCTOP}/sys/compat/linuxkpi/common/include > > > > +DEBUG_FLAGS=3D -g > > > ^^^^^^^^^^^^^^^^ > > > > + > > > > .include > > > > > > > > CWARNFLAGS.mpi3mr_sas.c=3D ${NO_WUNNEEDED_INTERNAL_DEC= L} > > > > > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D249068#c2 > > > > > > -- > > > Herbert From nobody Mon May 12 22:27:18 2025 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 4ZxDkH0sNpz5vwZc; Mon, 12 May 2025 22:27:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxDkG6f7jz4FtH; Mon, 12 May 2025 22:27:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747088838; 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=AnJh6NzSqNKMehQh+Ja0mJumL3eV3IwnKdHtH0Jom9I=; b=uUGvTWypNPRRtQYwdmV0G7vzUEyNUst7tTfZ4vS2ZQaOeQEIAjacy8gELoxgH1UpSdLNxh zqBuIE68EhZ/kXvqj5imZEuiNUYQFfkLtbrPEhvxJpa/1u/pWMA136233Ig2Oic3K7dcCG 8lyYCKt0aBK6RkltLMCMlB922sRdA+nTSEYm+ODjaQpzFqxTqZKACpbOySExTEp9mUyndt If31PooPy6OjrqiN9sHm2uWcBK5IJC3SvLxOyMlGuNbHwYNST6QAyCBXtnhbRsy1nkeotX QoJHTc1Puhf1VM5dogceal0JjXQeUY7Mt0n3ghWoS14jXUABn0dCLfUId6vxGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747088838; 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=AnJh6NzSqNKMehQh+Ja0mJumL3eV3IwnKdHtH0Jom9I=; b=xJ7IS8NLMoFrvBRtgYUVOQXdz3/KvFzJsWU2u5M2IXQfY1gJ89eLRNindRy0TqXKKAgnDH oVu9sf/5d00Fm6DUSvXWBHtYWT5AObV1oJfK+p2eLUn8Ksu1mxRz9sIevS3Z5Grt6QKEF7 LnZKGw+uwy1wBh/DLxk4skScmaxEADWMHtkB3HaCcxpOgSSRtoFIZzm4CDmnhDGu8E6SXB dWG+wTC0QfvvA+e2HxcokPhJMJyRzsOxEw1zPdVRJNcUIL3B8khiy+oMvf8UR5aTBhlw+q CnWL4gN8UbGHKo75t695gQcZO9gujAhWZ0TuA/30H+fvj6TM/n/GzG5Rn66i5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747088838; a=rsa-sha256; cv=none; b=FIn5Vl79gsXvcFq+UWsyh1Wcv1DQrLJR/ZeqQzJkoxxK6AzTi05zJX4X3upcIaa7fAw4sM 5d+Nr8vW0ZUe5Kv9SNnpxa5MMNNBqozCmnELT/cP69cmJhVXD75xCG2ZpEjAl7x/Bl9BBN W9/Eo87OP2d19/k1SNVYmk+vVVvTKZMfx9h1Hxb4lKhJReblILFcO0h+UKH/3jP5F3UVxf OiVZTABc6fnmAG06pYYZmjjBusL5PO1Tr+MQLutKZpLUX69VEmmLzcIQs7/X+ZqeoPl6mw jLKo1ZiNrKuvAot8Dslq99Q+KHapudM8L04O7TzXSiui4wT7O8h7I1a5o/sTCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxDkG5xrnz4rx; Mon, 12 May 2025 22:27:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CMRIlp060989; Mon, 12 May 2025 22:27:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CMRIRd060986; Mon, 12 May 2025 22:27:18 GMT (envelope-from git) Date: Mon, 12 May 2025 22:27:18 GMT Message-Id: <202505122227.54CMRIRd060986@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 3a53fe2cc4b7 - main - jail: add allow.routing jail permission 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3a53fe2cc4b7076003163376a7db65e432f6283e Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=3a53fe2cc4b7076003163376a7db65e432f6283e commit 3a53fe2cc4b7076003163376a7db65e432f6283e Author: Lexi Winter AuthorDate: 2025-05-11 02:01:25 +0000 Commit: Lexi Winter CommitDate: 2025-05-12 22:13:18 +0000 jail: add allow.routing jail permission if allow.routing is set, the jail can modify the system routing table even if it's not a VNET jail. Reviewed by: kevans, des, adrian Approved by: kevans (mentor), des (mentor) Differential Revision: https://reviews.freebsd.org/D49843 --- sys/kern/kern_jail.c | 13 +++++++++++++ sys/netlink/route/rt.c | 2 ++ sys/sys/jail.h | 3 ++- usr.sbin/jail/jail.8 | 5 ++++- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index b0b0fa50e648..d4529e096929 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -231,6 +231,7 @@ static struct bool_flags pr_flag_allow[NBBY * NBPW] = { {"allow.extattr", "allow.noextattr", PR_ALLOW_EXTATTR}, {"allow.adjtime", "allow.noadjtime", PR_ALLOW_ADJTIME}, {"allow.settime", "allow.nosettime", PR_ALLOW_SETTIME}, + {"allow.routing", "allow.norouting", PR_ALLOW_ROUTING}, }; static unsigned pr_allow_all = PR_ALLOW_ALL_STATIC; const size_t pr_flag_allow_size = sizeof(pr_flag_allow); @@ -4224,6 +4225,16 @@ prison_priv_check(struct ucred *cred, int priv) else return (EPERM); + /* + * Conditionally allow privileged process in the jail to modify + * the routing table. + */ + case PRIV_NET_ROUTE: + if (cred->cr_prison->pr_allow & PR_ALLOW_ROUTING) + return (0); + else + return (EPERM); + default: /* * In all remaining cases, deny the privilege request. This @@ -4692,6 +4703,8 @@ SYSCTL_JAIL_PARAM(_allow, adjtime, CTLTYPE_INT | CTLFLAG_RW, "B", "Jail may adjust system time"); SYSCTL_JAIL_PARAM(_allow, settime, CTLTYPE_INT | CTLFLAG_RW, "B", "Jail may set system time"); +SYSCTL_JAIL_PARAM(_allow, routing, CTLTYPE_INT | CTLFLAG_RW, + "B", "Jail may modify routing table"); SYSCTL_JAIL_PARAM_SUBNODE(allow, mount, "Jail mount/unmount permission flags"); SYSCTL_JAIL_PARAM(_allow_mount, , CTLTYPE_INT | CTLFLAG_RW, diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index 30dab2b0d8cf..dcd19b43105c 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -1118,12 +1118,14 @@ static const struct rtnl_cmd_handler cmd_handlers[] = { .name = "RTM_DELROUTE", .cb = &rtnl_handle_delroute, .priv = PRIV_NET_ROUTE, + .flags = RTNL_F_ALLOW_NONVNET_JAIL, }, { .cmd = NL_RTM_NEWROUTE, .name = "RTM_NEWROUTE", .cb = &rtnl_handle_newroute, .priv = PRIV_NET_ROUTE, + .flags = RTNL_F_ALLOW_NONVNET_JAIL, } }; diff --git a/sys/sys/jail.h b/sys/sys/jail.h index 90fcf8cd5a47..08caa9f49270 100644 --- a/sys/sys/jail.h +++ b/sys/sys/jail.h @@ -259,7 +259,8 @@ struct prison_racct { #define PR_ALLOW_EXTATTR 0x00040000 #define PR_ALLOW_ADJTIME 0x00080000 #define PR_ALLOW_SETTIME 0x00100000 -#define PR_ALLOW_ALL_STATIC 0x001f87ff +#define PR_ALLOW_ROUTING 0x00200000 +#define PR_ALLOW_ALL_STATIC 0x003f87ff /* * PR_ALLOW_DIFFERENCES determines which flags are able to be diff --git a/usr.sbin/jail/jail.8 b/usr.sbin/jail/jail.8 index 3426f4f0d600..8d7bc25a8694 100644 --- a/usr.sbin/jail/jail.8 +++ b/usr.sbin/jail/jail.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 19, 2024 +.Dd May 11, 2025 .Dt JAIL 8 .Os .Sh NAME @@ -710,6 +710,9 @@ For example through utilities like .Xr date 1 . This permission includes also .Va allow.adjtime . +.It Va allow.routing +Allow privileged process in the non-VNET jail to modify the system routing +table. .El .El .Pp From nobody Mon May 12 22:27:19 2025 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 4ZxDkJ1kqyz5vwZg; Mon, 12 May 2025 22:27:20 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxDkJ0F3Cz4GD3; Mon, 12 May 2025 22:27:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747088840; 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=NxQLZxXlfALtfDHbMOQ+ajTZg1Y3krXJj1l9z3wCMsg=; b=PxANhAR/eCnPCDYaQ/4SlbwYD+7yseobi67y/zqFazBuOc2iHLv40toL3hFy8Kv02QeSwk s9LeD4GHABmC2Jrrm5ELRZQoN4OfuCSV3MGRkjL3/RuymMbMLTFL8UPJVU7llNft74NIza MEQJjyP1DrJESmXYLGW2b5rYiXH0ywr3uNXg661G3xaOd+0Q13Wb/+9JJ0R7GwjCScbedP nDyAL3JtKEQDZ1a701B0Ub0bEKHCRVIpu9rsRizzNesyCeUIqn3m8hKuQGSQxo9yUnhGpd axwwTZC5Nz0xjitGNOS1AOM9GeKc3t9P1CrkFLo6hwTVaSsqD87i2meuqK5Jcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747088840; 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=NxQLZxXlfALtfDHbMOQ+ajTZg1Y3krXJj1l9z3wCMsg=; b=uLguKHdFLOB7PnArHM6k/vJvapE7OVrZHqpY6nY9VcIx/aX4BaZoDA3r8+l5vYbX7eemxt yr4UM5wGJshj8byXWKasV7OFk3wOX+sB8mh0HF4hPsFwn+DBMmS/knhRdia4fTItBpWEkk 53pLUfS8159hp5T1k7DTKI39PHhCWXCBfU7OvyIO6RZN3JDHmzTroh1YPh8UME6utcNqht hNRYXBuEZiw8T/wPsY7ke6cFedHXoFKbngc5Lxb3yJeUB//BDjJtUOn9fKZaigXzKe+hn+ gklthK5CnbDD/LOCyRC493s98YyQsQQNz/bb8Hra5rccopuzRVCiiKissC8aWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747088840; a=rsa-sha256; cv=none; b=D5MD953fat5po331i2Fhj3q30q5EQmil7o2Z+6ldMcAZ5z8D382Mu74uJTctPZWsylIAxM 9bT+8pP/SomTmS5yV3TAJ+WieYBS5JEPhg6v5iNPoCQxmS6d8cv3yM8oh7A2CU9+wMTNPn pOKaf9tFTS+88dQMSIJDBRAMozsM9TfOgv6YTFi/V8ilQXbArtXj2ZBqyvvLxnrEXJMpCX qBhoOumF18O5H7APQ2WDck5KEMWhAORj9DTPzflbFgUBEL+kIpQyhg0GeK37N3m0bkoamK 9533eWSGRc/jmQg9dv5xKsVfv+mvIU1EiR480JVwVdOvXc2lJ46cZk9qkUR0Lw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxDkH6tKYz4ry; Mon, 12 May 2025 22:27:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CMRJbO061022; Mon, 12 May 2025 22:27:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CMRJIr061019; Mon, 12 May 2025 22:27:19 GMT (envelope-from git) Date: Mon, 12 May 2025 22:27:19 GMT Message-Id: <202505122227.54CMRJIr061019@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 0268d03ba195 - main - svcj: add "routing" option 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0268d03ba1955c5cc3cbef9a86691718e516a77c Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=0268d03ba1955c5cc3cbef9a86691718e516a77c commit 0268d03ba1955c5cc3cbef9a86691718e516a77c Author: Lexi Winter AuthorDate: 2025-05-11 02:01:10 +0000 Commit: Lexi Winter CommitDate: 2025-05-12 22:25:45 +0000 svcj: add "routing" option "routing" enables the jail allow.routing permission, which allows the jail to modify the system routing table. this can be used to run routing daemons (e.g., BIRD) in a service jail. Reviewed by: jamie, des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D49844 --- libexec/rc/rc.subr | 3 +++ share/man/man5/rc.conf.5 | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr index c74cbcef9d62..2261ab0461e1 100644 --- a/libexec/rc/rc.subr +++ b/libexec/rc/rc.subr @@ -1259,6 +1259,9 @@ run_rc_command() nfsd) _svcj_cmd_options="allow.nfsd enforce_statfs=1 ${_svcj_cmd_options}" ;; + routing) + _svcj_cmd_options="allow.routing ${_svcj_cmd_options}" + ;; settime) _svcj_cmd_options="allow.settime ${_svcj_cmd_options}" ;; diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5 index 7dbea16d51f9..4b15db07a129 100644 --- a/share/man/man5/rc.conf.5 +++ b/share/man/man5/rc.conf.5 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 6, 2025 +.Dd May 11, 2025 .Dt RC.CONF 5 .Os .Sh NAME @@ -5019,6 +5019,8 @@ allows to open raw sockets, and allows to open sockets of protocol stacks that have not had jail functionality added to them. .It nfsd Allows to run nfsd and affiliated daemons. +.It routing +Allows to modify the system routing table. .It settime Allows to set and slew the system time. .It sysvipc From nobody Mon May 12 22:46:00 2025 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 4ZxF7s0lLmz5vxNv; Mon, 12 May 2025 22:46:01 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxF7r6tzNz4Q2G; Mon, 12 May 2025 22:46:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747089961; 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=/JPuFrjXxZULiA3FY34bv0D4Y7dL6XmME8yemQZvK9s=; b=pT2gvY9RopIBfv+whO+8zwM6mp39R3nJi2MZaDGv4WZVb8BVL+vMy5f5TPGs/PcKsKOErw iN6K4oAADZM7UTAMcMW2qziBj54+jKXQtHCZAaoBBZGIMVkkNV115fnb67J5cKjXFHyDsw z6GIRNQxCqDa6NOtk0ynjIUm9dMUd6G6bIjRXOTkcuhcOOA+4R3Qc/7ArEsvKwsXshy81g JGLCg5JrZw4RiH0m19PCGVzo7EOaMIE68ZDyz9L65KTrcH8Pf6ZRiEVLQfSaSVVvHnwv8n BPcjmHGQ2dCh8koQY+h06HEuYYj2Dmntn3nsV4nQRR0b/1d7a2/dOS6yINoL6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747089961; 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=/JPuFrjXxZULiA3FY34bv0D4Y7dL6XmME8yemQZvK9s=; b=X1X0eWjTGuoMJw5bWvQP3cQm7biO0Y8i2as5GTQKbmQ1U3/x7BxpUqidfdXAWZCpIDAcUz +BHSx4VPU0ykaomXFo49MbFhiEYVg+k+QHBpOIH0luZHiM9dj5o5GdFkaTancHYhTIgfzI JLIk0sxiz96jkOozotyc5AkPdj5yHc6jvyiJ7pT8rgKcnSjMFVPiBpKVDXLCJDaR96V/WD 0GcsWT73UAtU+hLm9bTGlVqd/+IDQfaUZF5SOeeRhLePhUuBwuWGZl+ociCZJJ2R8bbTy0 kBLwSN5ow7WzCr2v+4lCXP7sQLnqyWYNUHYkQeriHZAZBQOblBhJOgX5f8UmJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747089961; a=rsa-sha256; cv=none; b=DQOLD3VoycriGQsXuWozPHks1gLuYME20cegnyn3l0tMdCu9tUDr554nBDT693oE1phmNf vNwpnnE7hh7+ErtJXNeZPsC22WxPXVGVuiczDQIWD90UrbKUNBay7R17nLRrd+pca7ddch ceDT1t9EZ1aeHy7ups7e0mKE8KTPh5L9gXNKBZKSf3VZ9s9bIhmmbCoxXCdoRkwq3PybeS K7UvSYAjaj7A8gEaYTVC0uBez9yjdv5b1hlu4sjvBo7N+jCO3Z5NSaq4FU1gKFcw8Rhtzf dKe+EvyIobQ3TK91gRikYuVKSmE8feKohQWSXjnyiitHVWwm5HsISL4Ikoj0MQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxF7r6N2hz5PT; Mon, 12 May 2025 22:46:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54CMk0bi098570; Mon, 12 May 2025 22:46:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54CMk0i1098567; Mon, 12 May 2025 22:46:00 GMT (envelope-from git) Date: Mon, 12 May 2025 22:46:00 GMT Message-Id: <202505122246.54CMk0i1098567@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: e79a3515c241 - releng/14.3 - mpi3mr: Remove -g 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: e79a3515c241b84dfa1c73f41a25c4cc992d616d Auto-Submitted: auto-generated The branch releng/14.3 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e79a3515c241b84dfa1c73f41a25c4cc992d616d commit e79a3515c241b84dfa1c73f41a25c4cc992d616d Author: Warner Losh AuthorDate: 2025-05-08 02:09:45 +0000 Commit: Warner Losh CommitDate: 2025-05-12 22:45:35 +0000 mpi3mr: Remove -g This -g was introduce when I didn't review all the cahnges to mpi3mr I was MFCing. Remove it. This is a direct commit. PR: 249068 Fixes: 80b069913d496 Sponsored by: Netflix Approved by: re (cperciva) (cherry picked from commit 22ebbdea3f33fdeae5ee83077ea9c25979705f2f) --- sys/modules/mpi3mr/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/modules/mpi3mr/Makefile b/sys/modules/mpi3mr/Makefile index 39aa2e3f0ddd..81d2e86afc7f 100644 --- a/sys/modules/mpi3mr/Makefile +++ b/sys/modules/mpi3mr/Makefile @@ -1,4 +1,3 @@ - .PATH: ${SRCTOP}/sys/dev/mpi3mr KMOD= mpi3mr @@ -7,7 +6,6 @@ SRCS+= opt_cam.h SRCS+= device_if.h bus_if.h pci_if.h CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include -DEBUG_FLAGS= -g .include From nobody Tue May 13 00:05:47 2025 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 4ZxGvw2MyTz5w2p0; Tue, 13 May 2025 00:05:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxGvv5XTTz3Dxf; Tue, 13 May 2025 00:05:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747094747; 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=QFvjVYM1I4yFAo6aFd5TnTBF0kKsygP01abPqA9XFRc=; b=lSrqwQWIQak8f4Z9eQYoozDsjYvN4qlUj2YuVGXolGiAwNLDL7w9Ws4SZaUniaVlVJKhBU eA5rnYrWWAmQH+O2Rm0mJJfIHQl2taNGznNWH1xZYf9gH0/w092JYpd+tvOxGu7CuE8UCP gIUTW4Je+BtgATCXfwZFRfoUbv/xoV1fmm2GfR639uVs/mD8F2IzTFmdmSf6dU4609ks8b LPMKcskBRyCLY5zHVfcapADQVhCUO7PwgChuFWUDuaVCRClm4fhT6JgW6jyUpdI+RP8xd3 7p04Prb6tvtPbpoXbKDzOZKeUGHj+gILnAGDUjB+b4ns/YSbRv2wkowZNKt82w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747094747; 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=QFvjVYM1I4yFAo6aFd5TnTBF0kKsygP01abPqA9XFRc=; b=AVjq2l8n/3E6BfMw6JvzLYxKZKifHmYQ0yZVz7wrOhxVdi91MvvJF5zG+gq7gbkuPrn2hH +pOR4BX180ejII6ybBIlUQTcQqxbTFaFE8quMk7re+Qgd9wWyd8JPbgqyvFm2yY9LANoBS ZRRLiuD9yMDJ6VpaQebWfBDfJabOjxWoPB4g+E4fbp9k2pjOdthdrp99OnT1ZjCQ04pTC8 qzXitOYx3YhIoAQbj3s85dFMmPM0lb7XtTU6JpmOXi7nIEF3e7mrvGsyE03pFhMyGzIIZV RR/i/GOoMUtGTwoQ3tkn00tPjCYf1v2QGkAXRLYo7fdnp4N73HgueMuK7mtv9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747094747; a=rsa-sha256; cv=none; b=h3kmB9JVkMNQJeW7Si+aarwfg3bch2e9Z+MmCKUu0gRMAMjzjn+40FdE3SjjU6C3kqwrUl yujm35Rua5AUWqdylY8tEBY7zhkEqFNI3a6ha8V5e7zMV4iB/UO498DVmhAxkrH7qdXxrd uptuBS2+v3Uc+kP/9mIFFW4n9z0VWsoHKnWy/lqWHWfWY1ZJq0jJuCPwWwntKvHmcVoXrf yJ+Kl1wutk1QOWuUSX4eT3Fw5cZ0y8Ortyq8zxxWHtHEtY1PCWZcEVtIDPTxLW9suQxRx7 JGJtPruBXIjVvaf9JapYwA2l18ARS9wGniD10j78tswgNDyXTNzfKIw1W+s7iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxGvv4Vrjz7Kx; Tue, 13 May 2025 00:05:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D05lvk048650; Tue, 13 May 2025 00:05:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D05lqj048647; Tue, 13 May 2025 00:05:47 GMT (envelope-from git) Date: Tue, 13 May 2025 00:05:47 GMT Message-Id: <202505130005.54D05lqj048647@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: fc40f4ca62ba - main - iwlwifi: update script to extract firmware/chipset generations/flavors/.. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fc40f4ca62ba91bef40f4a8712443617052b2cec Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=fc40f4ca62ba91bef40f4a8712443617052b2cec commit fc40f4ca62ba91bef40f4a8712443617052b2cec Author: Bjoern A. Zeeb AuthorDate: 2025-05-13 00:02:40 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-13 00:04:46 +0000 iwlwifi: update script to extract firmware/chipset generations/flavors/.. Adjust the logic for using the sysctl vs. providing an input file (previously generated from the sysctl). Adjust template generation for iwlwififw.4 to also list the flavour for each chipset (if known) to help people manually building packages to figure out which port flavor they need. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh b/sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh index 6b6798aae49e..afbd52b9fa40 100644 --- a/sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh +++ b/sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh @@ -2,7 +2,7 @@ #- # SPDX-License-Identifier: BSD-2-Clause # -# Copyright (c) 2024 The FreeBSD Foundation +# Copyright (c) 2024-2025 The FreeBSD Foundation # # This software was developed by Björn Zeeb # under sponsorship from the FreeBSD Foundation. @@ -48,18 +48,19 @@ if test ! -d ${LFWDIR} -o ! -e ${LFWDIR}/WHENCE; then exit 1 fi -kldstat -n if_iwlwifi.ko > /dev/null 2>&1 -rc=$? -case ${rc} in -0) ;; -*) printf "ERROR: please pre-load if_iwlwifi.ko (you do not need a device)\n" >&2 - exit 1 - ;; -esac - if test -r ${D_PCI_IDS_FILE}; then printf "NOTICE: using proovided ${D_PCI_IDS_FILE}\n" >&2 else + + kldstat -n if_iwlwifi.ko > /dev/null 2>&1 + rc=$? + case ${rc} in + 0) ;; + *) printf "ERROR: please pre-load if_iwlwifi.ko (you do not need a device)\n" >&2 + exit 1 + ;; + esac + sysctl -N compat.linuxkpi.iwlwifi_pci_ids_name > /dev/null 2>&1 rc=$? case ${rc} in @@ -327,11 +328,11 @@ awk ' # Sourt out duplicate lines. if (dup[$0]++) { next; } - # my ($ids, $name, $fw) = split /\t/; split($0, a, "\t"); ids=a[1]; name=a[2]; fw=a[3]; + flavor=a[5]; #my ($v, $d, $sv, $sd) = split("/", $ids); split(ids, i, "/"); @@ -342,9 +343,11 @@ awk ' if (name == "") { name="(unknown)"; } if (fw == "") { fw="(unknown)"; } + if (flavor == "") { flavor="iwlwifi"; } + if (flavor == "undefined") { flavor="iwlwifi"; } # iwlwififw.4 - printf ".It \"\"\n.It %s\n.It %s Ta %s Ta %s Ta %s Ta %s\n", name, i[1], i[2], i[3], i[4], fw; + printf ".It \"\"\n.It %s\n.It %s Ta %s Ta %s Ta %s Ta %s Ta %s\n", name, i[1], i[2], i[3], i[4], flavor, fw; # wiki # XXX TODO possibly quote some in `` to avoid automatic linking? From nobody Tue May 13 02:28:59 2025 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 4ZxL580pTHz5wBRq; Tue, 13 May 2025 02:29:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxL576ZQDz4FRT; Tue, 13 May 2025 02:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747103339; 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=fziKr5E6zt/F1fjqdIpuWzzEf05KZQzlQfrykulk+tg=; b=HrrrGes+P71hQb1PWTmDaZUHBOtbGtaKi//RWuHYgXsubRppdkeQbKOjR8swnxxgw3zGom 3GuWfddigm1S5G/stxSo/4lQ9UPIuhRTo+5gqSs+kHBs4IjdstffMR9ZxbHApoO5jvQzRY rtI3GDornp8OZcOZfVGnhuOkW1YrFqYMsO2KFQIeFt0yHta7AZK5wpPxB1K+w6bc3fi44s VVDxN7bftdrOtaMgQPn0ycSg5yc2d3+3l4a48niksbrVdtAGdU7Hy9CTInThEC/Xnwcit4 lGfvHmUWsp+DUUrC2iMxJFRK0wNeOCrpn119TT3X0987HjCnTYge1xDM5jDk8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747103339; 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=fziKr5E6zt/F1fjqdIpuWzzEf05KZQzlQfrykulk+tg=; b=U1klrzHivmnMtrfmv7bOvuC2MgIJ0evtRn+jvSWoj6T0X4l1CpdLlr9QYt3u0zPeNenMOg ihCh/JPA6sF9VnIk3mv7hCeoVqPUSYQabISQSG+JLgAHTwjqlDXcgy8MKDYsJPbrZaFRMW W+fUL8I2hcVVa7WqM0iSkZkZVQUuhzEVQQMx/lDStIkrvX4T9yJ0YklxoppD9mUvHols7D VA8uZnF9aRfdQcY2s2DnaIy3SGW4bm5DCKdZ1DcgnClVyPD1GFlLpQtSPS4MhlB/PYoj8y vo2uak/fiOvHX0PkFVRvKvG5G1hfmAT5Z5ztkAe7LToAUR6cjOkIl0H2m3TvNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747103339; a=rsa-sha256; cv=none; b=WDHTQM7SiPnMph6j9Dv/ZiNR0Xbznud26Z13oeuJSRmgWpi+cTm8I/bjEeeaeb0l3L1WYS 53t+7/vHC1qySZN4rq4xXlROk0S/l55BPzXaoKIX+x/LmU9G7b4hiWMLSxmnVpJJ2A9hVs RYwQnyp6tnu+Up4HzkbTcYP4zEuw2pxV7Z+pu6AyhBeSQ5ieaZ3yykYBQmEIwUx6NLsFZ9 W/9v+qO6+0LNlVTa/qFfLZl4dSegpBS1sXamJoFufaFk8raFzG6YyzAZOMansfcvptJYXM 9YCqfzoMj68Qv8SBQcrG/elmzH3KUTmxMc8X+0xreVodTU7gYl01J1LFolmorg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxL5767rHzBj1; Tue, 13 May 2025 02:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D2Sx3U009538; Tue, 13 May 2025 02:28:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D2Sxfb009535; Tue, 13 May 2025 02:28:59 GMT (envelope-from git) Date: Tue, 13 May 2025 02:28:59 GMT Message-Id: <202505130228.54D2Sxfb009535@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: c4921a0faaf1 - main - powerpc: Always use BE tag in nexus_map_resource 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c4921a0faaf1683f39347dd066000d929c39c8b9 Auto-Submitted: auto-generated The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=c4921a0faaf1683f39347dd066000d929c39c8b9 commit c4921a0faaf1683f39347dd066000d929c39c8b9 Author: Justin Hibbits AuthorDate: 2025-05-13 01:35:14 +0000 Commit: Justin Hibbits CommitDate: 2025-05-13 01:35:14 +0000 powerpc: Always use BE tag in nexus_map_resource 7b5a5e4e replaced nexus_activate_resource() with the bus generic equivalent, which uses bus_map_resource(). However, though not intended to have a functional change, nexus_map_resource() uses the bus tag of the build (BE vs LE), while nexus_activate_resource() always explicitly set a big-endian tag, leading to failures on powerpc64le now. Using BE unless otherwise explicitly specified with the RF_LITTLEENDIAN fixes LE on bare metal, and doesn't hurt in a VM, which nexus_map_resource() was added for. Reported by: pkubaj Tested by: pkubaj Fixes: 7b5a5e4e("powerpc nexus: Use bus_generic_rman_*") MFC after: 1 day --- sys/powerpc/powerpc/nexus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 18b8fc57114f..029b6ef8a479 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -288,7 +288,7 @@ nexus_map_resource(device_t bus, device_t child, struct resource *r, if ((rman_get_flags(r) & RF_LITTLEENDIAN) != 0) map->r_bustag = &bs_le_tag; else - map->r_bustag = nexus_get_bus_tag(NULL, NULL); + map->r_bustag = &bs_be_tag; map->r_size = length; map->r_bushandle = (bus_space_handle_t)map->r_vaddr; break; From nobody Tue May 13 02:40:05 2025 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 4ZxLLK5rjFz5wC4T; Tue, 13 May 2025 02:40:25 +0000 (UTC) (envelope-from chmeee@has.gonegalt.net) Received: from mail.gonegalt.net (mail.gonegalt.net [208.167.253.104]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4ZxLLK23tGz4Mvy; Tue, 13 May 2025 02:40:25 +0000 (UTC) (envelope-from chmeee@has.gonegalt.net) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gonegalt.net; s=dkim; t=1747104016; 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=U2hVJpsSEymSnHWaR/5yAJCFkiYSEawooOf3vjLJO7g=; b=PGpwHf18M1J2PgA8XyUeusSh3PHe7gmug0+qiYUIT0t/w1exL16U+6lyjLQc9OwuSvVGYD teVP54EJGHqr/WGSKgat5/HOb54wEf6dHiV0GBg9kvMsNQFBsWQ/CweHFSNA29zw1qf5gi T2H1EToHcVWJ7nu5JGsiJm7iSZLhMd4= Received: by localhost (OpenSMTPD) with ESMTP id 37d20230; Mon, 12 May 2025 22:40:15 -0400 (EDT) Received: from smtpclient.apple ([192.168.1.18]) by mail.gonegalt.net with ESMTPSA id fl95NA+xImhAdwAA0J78UA (envelope-from ); Mon, 12 May 2025 22:40:15 -0400 Content-Type: text/plain; charset=us-ascii 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: git: c4921a0faaf1 - main - powerpc: Always use BE tag in nexus_map_resource From: Justin Hibbits In-Reply-To: <202505130228.54D2Sxfb009535@gitrepo.freebsd.org> Date: Mon, 12 May 2025 22:40:05 -0400 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <6408B2A6-43EA-4F43-B33D-537631D081A0@has.gonegalt.net> References: <202505130228.54D2Sxfb009535@gitrepo.freebsd.org> To: Justin Hibbits X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Rspamd-Queue-Id: 4ZxLLK23tGz4Mvy X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:20473, ipnet:208.167.224.0/19, country:US] X-Spamd-Bar: ---- > On May 12, 2025, at 22:28, Justin Hibbits = wrote: >=20 > The branch main has been updated by jhibbits: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3Dc4921a0faaf1683f39347dd066000d92= 9c39c8b9 >=20 > commit c4921a0faaf1683f39347dd066000d929c39c8b9 > Author: Justin Hibbits > AuthorDate: 2025-05-13 01:35:14 +0000 > Commit: Justin Hibbits > CommitDate: 2025-05-13 01:35:14 +0000 >=20 > powerpc: Always use BE tag in nexus_map_resource >=20 > 7b5a5e4e replaced nexus_activate_resource() with the bus generic > equivalent, which uses bus_map_resource(). However, though not = intended > to have a functional change, nexus_map_resource() uses the bus tag = of > the build (BE vs LE), while nexus_activate_resource() always = explicitly > set a big-endian tag, leading to failures on powerpc64le now. = Using BE > unless otherwise explicitly specified with the RF_LITTLEENDIAN = fixes LE > on bare metal, and doesn't hurt in a VM, which nexus_map_resource() = was > added for. >=20 > Reported by: pkubaj > Tested by: pkubaj > Fixes: 7b5a5e4e("powerpc nexus: Use bus_generic_rman_*") > MFC after: 1 day Short MFC window so it can get into 14.3. - Justin= From nobody Tue May 13 03:34:41 2025 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 4ZxMXy1bN3z5wG89; Tue, 13 May 2025 03:34:42 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxMXy10Svz3mnr; Tue, 13 May 2025 03:34:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747107282; 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=V6gupBRlmnFQVyPt1bpdLEcYk64gAdUuoXL5iKq79fs=; b=cIHa88TO0JynAbHlBSTwnfhkgNb+8llYRCiuk7KI3fOMNfbAlnexZN7ba+aMH1etONk+lY 5+EHdNjTkV/ed0Tzhk/8NQrjbYGMkYzNB8QdNvztmvnaye2AsTyO0B1dMHMjfpBA1ckSBm j33Jm33oBM3Ps5h9a3k+UJ2AjXyaG9NOdECG3CDUzAAjgOo4ZdKN9RnVwk0pe9f1f5DrLc sShbLRhT2f4BpbusN60cKhzDPJHZP/gLEhIKt8aclv6ZeGg/fUvzsW+LUC6Spii/EjnGv0 OQOJ08Vij1gkLE/pqRb6x/9MAOhK6I9ueNAy7GlPn0pexYzYucwJ1BmlTHuuag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747107282; 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=V6gupBRlmnFQVyPt1bpdLEcYk64gAdUuoXL5iKq79fs=; b=EjyvtSgCBTWgL28hEyX4tch45HSLsfEPWnigzKlBMQK849ZIM4T/zFjTDb+DA5iJo3cPXV H49SlNdQQeJQNHCWV2XX4bMqw7oH93eqC04L5NBTuUP5DHXIdi3jMZbNtVB7GMvT9Bmcvn Fo7Hw4yQKvNAAZIn+/bN1cikwiTxrPFzymmXKmaZYCBTMo6SVq8jco1E84hrQCQwCUXqGo JHsdkid6Ce7EqwwNsZnhJa2qtKV/hg0CgOtS6Rq1ormwSsOqx2sirYTkgR7HXk/17qQDvg leXludUWcHdvMZn3lrvWGYtsIAsRa6SQv30oxaFIdz/sDx+TUx6GG/GDsvR1LQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747107282; a=rsa-sha256; cv=none; b=yI0QrDqXt1qIqJRXkpxheqJ9CMPJkaKipZmT5k9ikIzTZpLxz7zVtPLxaqUQ0AFfKWS/QD gvi/Ylw4/XFDNUNfdA3fri6lSXOCrhhTsRrc35dfZbHQ071OMaEIFxZMNRZfi770MOZ24G SFX47X76stWvqbtZwevZ2eqvcQsu49g9WLSvXrHjmPxiuUyqF77rRODrKCMB+OIt3584/Y I+xeIn1vNotPj+vTrvwUu+gDP6kQS0LGVhdauE4Ogvz0zw0nELPj6oxMM8QkMKDPQAJU58 M7OcOV0tg7t+4QVmm9CYWCvnTcFWcg5ErLgjFl6Cb/r76NFDJKNbmVSEthHznw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxMXy0GyXzTVc; Tue, 13 May 2025 03:34:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D3YfnS041073; Tue, 13 May 2025 03:34:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D3YfMP041070; Tue, 13 May 2025 03:34:41 GMT (envelope-from git) Date: Tue, 13 May 2025 03:34:41 GMT Message-Id: <202505130334.54D3YfMP041070@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: a3fcd76e8076 - main - net80211: document ieee80211_free_mbuf() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3fcd76e807648e4069e73e0a607687c26fadc3d Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=a3fcd76e807648e4069e73e0a607687c26fadc3d commit a3fcd76e807648e4069e73e0a607687c26fadc3d Author: Adrian Chadd AuthorDate: 2025-05-13 03:32:17 +0000 Commit: Adrian Chadd CommitDate: 2025-05-13 03:32:17 +0000 net80211: document ieee80211_free_mbuf() Document what ieee80211_free_mbuf() does. In particular, it handles freeing a list of mbufs, as an 802.11 "frame" passed to drivers may be a chain of 802.11 encapsulated fragmented frames. Reviewed by: bz --- sys/net80211/ieee80211_output.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/net80211/ieee80211_output.c b/sys/net80211/ieee80211_output.c index da7719b16dba..506c90991800 100644 --- a/sys/net80211/ieee80211_output.c +++ b/sys/net80211/ieee80211_output.c @@ -1945,6 +1945,15 @@ bad: #undef MC01 } +/** + * @brief Free an 802.11 frame mbuf. + * + * Note that since a "frame" may consist of an mbuf packet + * list containing the 802.11 fragments that make up said + * frame, it will free everything in the mbuf packet list. + * + * @param m mbuf packet list to free + */ void ieee80211_free_mbuf(struct mbuf *m) { From nobody Tue May 13 03:34:42 2025 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 4ZxMXz2jN0z5wG8B; Tue, 13 May 2025 03:34:43 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxMXz0tNlz3mlL; Tue, 13 May 2025 03:34:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747107283; 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=+eGYuYkfhMrh29mPv3O6bAuutB28egnVstDq9dM1frg=; b=da8bNpkedIY1KDoEVlmvsf/AAbKfcZeAbqyFj0mWbZhVigcWOMAgJmAhT2GJio2nSWUwJe k8hsIAd2Of7gTy0oGpc4TXkMX0/jRMmCddt7FBGq7t7vKuEFOHsFxU5ODSS37JcjBf5AxM 7r6dXLlweRaf3UvACHnkGu2zOptRD/kZcwxWxFjQXeWL8A8ydv3U1KyRFsG8tXrHmgQ8zI /ExgPiX2bNNvwN5PaYF72cbdJKte8SmsJeMsnQUb0T7tiPnkNaYWSu1v8H0hxI2msYRKd7 AciB596kPCoRuLCAV/3bTQEEK1hzYnFXDKh10vutWmdFZhh7SOZAvuLVQ2t5Tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747107283; 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=+eGYuYkfhMrh29mPv3O6bAuutB28egnVstDq9dM1frg=; b=UgpO/1adMI1hs/qvNje54iO67137Q8AsVO1cySX9UghFQs+pYUyB2uvHFa5ndMBsmQX2U0 C2Z0Iw3lFjRuurOWQRUrbPoQNMGZqfMAHZ4JoGj0APRYk2ju5LGEacZ8bcL/3g84n6nhFo sNY1xDAkKRB3etNvEpod2sB9NqSUS/Oq67mro4r3RUmjXuUIjvbyGJsDMFtfZZkL9kNGxD 00lYUzOn21Avuo5tIoQICbjKAx8B/Y/K+5VWQLR/90MJk2x8TP6yBiFEg4jjr7U3iRrt3D Neg4XbQ/UMndrGSLNDSN+TMfT0rlrIY+067OkRyqmxm8vKNt7FuMUW5O8yRDpA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747107283; a=rsa-sha256; cv=none; b=pvddusPX3GK2m9b4J/8fQLbvQeiJtgB/Ubm2yGN+Mfjkl9uyzix4TB8krp3UnaHvBZCIB3 OhP4LH4EDjdWOy3RcijgHFrcAHcTjbocXAyNPQcicAPLbeGq87JEV39Ptqz9fsWKraYgfc Y1yM7Wv/eKx4x5FlGqh11ktpLgrLfhgyjK9XzLsE5yiXcteKKL3G/eLfFruiFOBtfYww1m Aak01EHwq1KR8m+NeACK1Krc2yvoa6gJ7oME+COUkhwUrx2OHR9+cGkeKSV8FEc6h6nqTC OW+/3tye98zIPIu79wcAepWb1ooOMTg04jY6Qksbs+8xMDt1wipZsiQToaWixw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxMXz0JtNzTtq; Tue, 13 May 2025 03:34:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D3YgIo041106; Tue, 13 May 2025 03:34:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D3YgU4041103; Tue, 13 May 2025 03:34:42 GMT (envelope-from git) Date: Tue, 13 May 2025 03:34:42 GMT Message-Id: <202505130334.54D3YgU4041103@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: afb0eadf97b2 - main - net80211: clean up the documentation for ieee80211_fragment() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: afb0eadf97b22844dda6d9761782cb1526f83091 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=afb0eadf97b22844dda6d9761782cb1526f83091 commit afb0eadf97b22844dda6d9761782cb1526f83091 Author: Adrian Chadd AuthorDate: 2025-05-13 03:34:05 +0000 Commit: Adrian Chadd CommitDate: 2025-05-13 03:34:05 +0000 net80211: clean up the documentation for ieee80211_fragment() In particular, frame it with @brief and move the summary description where it belongs. Reviewed by: bz --- sys/net80211/ieee80211_output.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/sys/net80211/ieee80211_output.c b/sys/net80211/ieee80211_output.c index 506c90991800..1ebf7fa8723f 100644 --- a/sys/net80211/ieee80211_output.c +++ b/sys/net80211/ieee80211_output.c @@ -1969,7 +1969,12 @@ ieee80211_free_mbuf(struct mbuf *m) } while ((m = next) != NULL); } -/* +/** + * @brief Fragment the frame according to the specified mtu. + * + * This implements the fragmentation part of 802.11-2016 10.2.7 + * (Fragmentation/defragmentation overview.) + * * Fragment the frame according to the specified mtu. * The size of the 802.11 header (w/o padding) is provided * so we don't need to recalculate it. We create a new @@ -1995,10 +2000,6 @@ ieee80211_free_mbuf(struct mbuf *m) * @param hdrsize header size to reserver * @param ciphdrsize crypto cipher header size to reserve * @param mtu maximum fragment size - * - * This implements the fragmentation part of 802.11-2016 10.2.7 - * (Fragmentation/defragmentation overview.) - * * @retval 1 if successful, with the mbuf pointed at by m0 * turned into an mbuf list of fragments (with the original * mbuf being truncated.) From nobody Tue May 13 07:46:43 2025 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 4ZxT7m1CGRz5wVrY; Tue, 13 May 2025 07:46:44 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxT7l6vyCz40nR; Tue, 13 May 2025 07:46:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747122404; 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=FivBQmJfUEvX1FJkaQ0rW5pUcfz2/Tl3ODH16n0rVT8=; b=Fd+XUwxOKWORv8fddVOWMmIzwDUMpGa+zv6nyM270Tr+GnlnqHQbnzzpSh6Lzd4IApVMkb EQtiQh0cfXoami1BGbcJsPpfAKWaJ7acw7imwkTOj58Z2HrGyfsMYhMPyvyqeZDdavS/nC UBKbOtylCcZrbQmPla8y8cXBUQ5BacbypYQFjOoGltnlrmAOzxHjkVoFmWgzBCj1li/Zc9 Tqn7SACmAnAfuJQfoXxrjfaHa+CTFc7fkqbhoKt3UzmUjeIQscAfssVC2n4Un3dhsRIuDS 09Xj9YND3l7XGtbs7c71iUtN2goU9z4aDjxwcQzD3XyOI0hvH0U+D5nCH4u4nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747122404; 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=FivBQmJfUEvX1FJkaQ0rW5pUcfz2/Tl3ODH16n0rVT8=; b=EyzOnErAbveXnKzvN0Nno2d9BQTTuncWQqvjkV2mq6qYMJeEElw6vWcCw9B3EWUrP1k7gn 68NXClGJpyt04JZFtIUCWRNGrmhTQ1nWxEDGzFlBojPLTWPimL9kLYGSMSIvjIjl6p0wbp GaIdtFwXH2LmjFTByeThQtmoX/LF/gWdZlZQcGjZEpN1mEWjAcpiWzsNgtTLtCiBflHhJJ ScPZpqanhi4jDmuS2zMwGCBfAApYMEOVoKjrXqzaVbkcpEPTezrxJhynpBXxeQ0NuLwV0L w+EzlMFNEpf+Nf0XzPPjbgBQe0I6WE4b3qtCTUDATS5LXzLgscurjQCcgBdy9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747122404; a=rsa-sha256; cv=none; b=kbwdXWmGsB16fTJNVu39Ur4PQBxGySjLYT0fFPW6wbhWhPg+iNj6Z5lxnjgzZMZg3T+Don 3n+obvddcRCtXUGZbs+w/irj5p6nBVY96Lgz10Gei9s9ng7WrYr2Li1EWC4Mqa9EahaY6z 7seGysLEozDbXlykh0ee1gB/Mswa98kruTuOlcUeTA7X4ecFdOOFMjZXnnxgqPffcbjSON 8qCE8QSwW4fNxthfZeNRUt326huzPF6Uqrxs7Tyzlko+R9z5N1lLHnVK8yp+28Z+v+P621 otDQUz5hWYM7YtBgR/k3owWYLVHhP9O+Y8ZYOTKN878anhygzKEGGClNbz5isA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxT7l6C3czd5l; Tue, 13 May 2025 07:46:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D7khCU010141; Tue, 13 May 2025 07:46:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D7khTN010139; Tue, 13 May 2025 07:46:43 GMT (envelope-from git) Date: Tue, 13 May 2025 07:46:43 GMT Message-Id: <202505130746.54D7khTN010139@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Toomas Soome Subject: git: 3bcf8e6db8e9 - main - loader: loader can pick too large font (check if one side is larger) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tsoome X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3bcf8e6db8e9b30af0a1d445e6e413a332066434 Auto-Submitted: auto-generated The branch main has been updated by tsoome: URL: https://cgit.FreeBSD.org/src/commit/?id=3bcf8e6db8e9b30af0a1d445e6e413a332066434 commit 3bcf8e6db8e9b30af0a1d445e6e413a332066434 Author: Toomas Soome AuthorDate: 2025-05-13 07:40:39 +0000 Commit: Toomas Soome CommitDate: 2025-05-13 07:44:35 +0000 loader: loader can pick too large font (check if one side is larger) The 5e25f7b09977 still allows one side to be too large, fix it. --- stand/common/gfx_fb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/common/gfx_fb.c b/stand/common/gfx_fb.c index ad38a657e233..af72ab1a4c99 100644 --- a/stand/common/gfx_fb.c +++ b/stand/common/gfx_fb.c @@ -2082,7 +2082,7 @@ gfx_get_font(teken_unit_t rows, teken_unit_t cols, teken_unit_t height, * Skip too large fonts. */ font = fl->font_data; - if (height / font->vfbd_height < rows && + if (height / font->vfbd_height < rows || width / font->vfbd_width < cols) continue; From nobody Tue May 13 09:27:03 2025 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 4ZxWMX1bNFz5wbQ1; Tue, 13 May 2025 09:27:04 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxWMW4qzXz3l3y; Tue, 13 May 2025 09:27:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747128423; 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=DhC7nENNFGC5poDLm86xVDkTEAXr7XPvZSrXydMomi8=; b=eohQeNGCu7/k2pBndZRhVl9EqDzK0q9BtUmovokSOn7O2WMIQkmV9zLj36Y/rPhaPVBRD7 rtuzg1XYXBldX+Q7zAmFI2+x6CXbjMS0FpezTTKOUEqhCatbSBYjuJY1xCEfBXLYcn7wZl G3EmCFJJ3k5T5/9cjXN4VqAZLj0IxpwnVM0Iz6ZkXxKFEV6GGD3dMJ1ZFyinZ1E7D5tbzm G/FpbaA861LyaR87deshEFDqK0+4D3Uahc5xw74CXPA+DkTvP4RI/exNh2vpuzd52ZqaGA vlBsiNCp8llWkii+N3n3DQ9TJhI0gmZBzyste9bAXeewSKoBJOf4zrXVbh2lVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747128423; 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=DhC7nENNFGC5poDLm86xVDkTEAXr7XPvZSrXydMomi8=; b=OB+uR6ZLDoRTdEo8LCMUa39nGgsp7oK5bZa0MP8OIxcqH6m5gMHML8fnw4HYOf+gwmab9z orCAc0D/UhqZ87iBiF+jtoRx0P4+urXGG1dxGu9PyWSQdYpr3sJxK0kZfOoPAzni2ejUXd pFIxRPLPxB4D1xy8wSmIElce5dQTueaJjntojQI7z5ZhI0FR7G4e9KLgLWSabxvIOLXH/Y RHUFuzQKutFHN27p4nScF6ZDSaWM17j8rfJvm8yn2rJZ7Y/qvTCM465PZ8ONuSa/P7cI9U Gzai7XXMqtsqLhoM1QRhlaaB2D7tQnBs47l+Z6Ta9AZPlyZr99C/aS/QjmNlFA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747128423; a=rsa-sha256; cv=none; b=bOeqYyFXv3VI9CrJXodQ12L9Lryvuqcg2sjwg2fjUerIsNeGQ+TChu6LzJdi0V2Mfy+cOK efUcrIb8WIAGNrIAUVViYTSMs3ncs0DTDOwUGQot281mA/tMmuYWqxDDvuFpqm9lBytm0Z 4IIvzXf3p18kJORTFQVBv7/2Qv1VlPSgcmeSMwlr/IDFY2t4QBbXrkPY94xZxPL+4bdjws GswfPecug9MsfxC93LXCZ9yqG0tvMRmScqPPAsKQBOr/bUdvO2e2ROACpGpWOBvmvW/sbX ANle11QUNYsJBjRZuYehV8KgpP8cjxPwXA55vEPt9Y5syi1goHuIfPWlpao0dg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxWMW4LtTzhCn; Tue, 13 May 2025 09:27:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D9R3id097915; Tue, 13 May 2025 09:27:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D9R3ab097912; Tue, 13 May 2025 09:27:03 GMT (envelope-from git) Date: Tue, 13 May 2025 09:27:03 GMT Message-Id: <202505130927.54D9R3ab097912@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: 11716164c1fe - stable/14 - queue(3): Add a test for STAILQ_REVERSE() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 11716164c1fef0dd00522e64cc6b578e61bb620f Auto-Submitted: auto-generated The branch stable/14 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=11716164c1fef0dd00522e64cc6b578e61bb620f commit 11716164c1fef0dd00522e64cc6b578e61bb620f Author: Olivier Certner AuthorDate: 2025-05-05 09:50:28 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 09:26:47 +0000 queue(3): Add a test for STAILQ_REVERSE() Reviewed by: kib, markj MFC after: 1 week MFC with: e8286eb29516 ("sys/queue.h: add STAILQ_REVERSE") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50165 (cherry picked from commit 0285c2428780cdb94bfb7d2dc1806a4bd129324e) --- tests/sys/sys/queue_test.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/tests/sys/sys/queue_test.c b/tests/sys/sys/queue_test.c index 75974ad8d792..7f8738751b85 100644 --- a/tests/sys/sys/queue_test.c +++ b/tests/sys/sys/queue_test.c @@ -165,6 +165,34 @@ ATF_TC_BODY(type ## _split_after_and_concat, tc) \ type ## _destroy(type); \ } +#define QUEUE_TESTS_CHECK_REVERSED(type, TYPE) \ +/* \ + * Checks that some tailq/list is reversed. \ + */ \ +static void \ +type ## _check_reversed(const struct type ## _ids *const type, \ + const u_int nb, const u_int id_shift) \ +{ \ + struct type ## _id_elem *e; \ + u_int i = 0; \ + \ + TYPE ## _FOREACH(e, type, ie_entry) { \ + const u_int expected_id = nb - 1 - i + id_shift; \ + \ + ATF_REQUIRE_MSG(i < nb, \ + #type " %p has more than %u elements", \ + type, nb); \ + ATF_REQUIRE_MSG(e->ie_id == expected_id, \ + #type " %p element %p, idx %u: Found ID %u, " \ + "expected %u", \ + type, e, i, e->ie_id, expected_id); \ + ++i; \ + } \ + ATF_REQUIRE_MSG(i == nb, \ + #type " %p has only %u elements, expected %u", \ + type, i, nb); \ +} + /* * Paper over the *_CONCAT() signature differences. */ @@ -216,11 +244,40 @@ ATF_TC_BODY(type ## _split_after_and_concat, tc) \ * Meat. */ +/* Common tests. */ QUEUE_TESTS_COMMON(tailq, TAILQ); QUEUE_TESTS_COMMON(list, LIST); QUEUE_TESTS_COMMON(stailq, STAILQ); QUEUE_TESTS_COMMON(slist, SLIST); +/* STAILQ_REVERSE(). */ +QUEUE_TESTS_CHECK_REVERSED(stailq, STAILQ); +ATF_TC(stailq_reverse); +ATF_TC_HEAD(stailq_reverse, tc) +{ + atf_tc_set_md_var(tc, "descr", "Test STAILQ_REVERSE"); +} +ATF_TC_BODY(stailq_reverse, tc) +{ + const u_int size = 100; + struct stailq_ids *const stailq = stailq_create(size, 0); + struct stailq_ids *const empty_stailq = stailq_create(0, 0); + const struct stailq_id_elem *last; + + stailq_check(stailq, size, 0); + STAILQ_REVERSE(stailq, stailq_id_elem, ie_entry); + stailq_check_reversed(stailq, size, 0); + last = STAILQ_LAST(stailq, stailq_id_elem, ie_entry); + ATF_REQUIRE_MSG(last->ie_id == 0, + "Last element of stailq %p has id %u, expected 0", + stailq, last->ie_id); + stailq_destroy(stailq); + + STAILQ_REVERSE(empty_stailq, stailq_id_elem, ie_entry); + stailq_check(empty_stailq, 0, 0); + stailq_destroy(empty_stailq); +} + /* * Main. */ @@ -230,6 +287,7 @@ ATF_TP_ADD_TCS(tp) QUEUE_TESTS_REGISTRATION(tp, list); QUEUE_TESTS_REGISTRATION(tp, stailq); QUEUE_TESTS_REGISTRATION(tp, slist); + ATF_TP_ADD_TC(tp, stailq_reverse); return (atf_no_error()); } From nobody Tue May 13 09:27:05 2025 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 4ZxWMZ2DFXz5wbNX; Tue, 13 May 2025 09:27:06 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxWMY6Vybz3l1Y; Tue, 13 May 2025 09:27:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747128425; 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=oXFTIbkKaGHFC+41YnwVfbASbRG0GcBCMwl0z4dbzDE=; b=be3mMsg2ljAqLRjocZjVw03puvIVEjMTiLIlERDPpof3ZSx7NvknyRTXSovk2eDrmp09iz y1OLLFmuAU9UTukUP48PpTKT3r6v4BA/6dD8Mb3YMdJU2m5G9PbEn9xOs6U7Zi9PDvEFdd hBc6memNbakmxp2lzOUx3zYzMICcviM7vRXraghSZH4WoEyRnGtDLfU24rVI2dmmN9SQsd qVkfN1qHud6nuij/ES09XTnB91HFieNnEtfDYNdpMyouQRfhM/xuN8ZwCJeDOWlY7JYJ/X 0NszKjTle0f1Sqj5yLK6gGBcIlNFLq2saksARAtMarEVwi0PwZEHYjW+XAjjNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747128425; 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=oXFTIbkKaGHFC+41YnwVfbASbRG0GcBCMwl0z4dbzDE=; b=NuPm7/tzrejBM3bUS07r1txFdDYICdg3vodYYsQt/PMb249sbJNGIqWVMSrYfIncmjIXGt psp1JwXBXvc3s5RVA3+1LHq24F5rxjkDGnESvD4Tqnnd+Jr1Uclx498wSw8d099A1xN6EN 8pwgZAV30Q3N5eX2ZuGitTzmf6apAgk09gniufPaV9cvfKtfhLRgEFatE+Uz4ce8RkHt2G 4uqzl+ttEeRcz/WFV6psFLNrHRXF4MlT14/rcDIGrm/87HPL/xQZLa6gBQHLxi8bO8n+y2 59WgZvYfr0wvFIrWaK5Co2NESAIJaFgjHRiUWaelDiaIOrYjSv6OC00fjr+Hvg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747128425; a=rsa-sha256; cv=none; b=ONEl3RUZevyTtHBGSeHOty4/lEucWzbCHbNSywQIcmeB2OO4wSMYpNy1+PBOSg3GCQNjU8 n+rG9xc+s1Rsqgoaz2nRAZRqucxl3c1bDZfkM++uZzdVuRU8m92snBssQBQV3aiP47Ppto 0TSah6vfza0uQ47IqQ8HaVoeOqsWzLERqJ9VCfYb7zeGYPLGnl7122Blyw8Qpy5VaXi9TF FjrIVlnxtzdWXvJlxQb8Hq/uvU3fByah/SViOo3goHYYV3b6DnBBCu6NBzd/fmJLAjGbo0 tlHBAakybfw4G9n01HV4IUVSJXLsS/ilGn51T6Vj6QlE1GuJmN0lh68zxtt0Qg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxWMY5tT7zhbK; Tue, 13 May 2025 09:27:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54D9R5Mr097986; Tue, 13 May 2025 09:27:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54D9R5vF097983; Tue, 13 May 2025 09:27:05 GMT (envelope-from git) Date: Tue, 13 May 2025 09:27:05 GMT Message-Id: <202505130927.54D9R5vF097983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: 1ca993dd4544 - stable/14 - sysctl.9: Constant integer example: Do not promote 'debug.sizeof' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1ca993dd454445ad766f8b8b39103e09c1dccce9 Auto-Submitted: auto-generated The branch stable/14 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1ca993dd454445ad766f8b8b39103e09c1dccce9 commit 1ca993dd454445ad766f8b8b39103e09c1dccce9 Author: Olivier Certner AuthorDate: 2025-05-09 14:38:32 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 09:26:52 +0000 sysctl.9: Constant integer example: Do not promote 'debug.sizeof' Replace it with another one, selected from current in-tree uses. MFC after: 1 day Sponsored by: The FreeBSD Foundation (cherry picked from commit 129a6cf886e108b67f637a271f003519c99b9abd) --- share/man/man9/sysctl.9 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9 index 83f526b349a1..44f042b1d789 100644 --- a/share/man/man9/sysctl.9 +++ b/share/man/man9/sysctl.9 @@ -931,8 +931,8 @@ Examples of integer, opaque, string, and procedure sysctls follow: * flags are CTLFLAG_RD, the variable pointer is SYSCTL_NULL_INT_PTR, * and the value is declared. */ -SYSCTL_INT(_debug_sizeof, OID_AUTO, bio, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, - sizeof(struct bio), "sizeof(struct bio)"); +SYSCTL_INT(_kern, OID_AUTO, hz_max, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, HZ_MAXIMUM, + "Maximum hz value supported"); /* * Example of a variable integer value. Notice that the control From nobody Tue May 13 10:41:57 2025 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 4ZxY1x2MNcz5wg9X; Tue, 13 May 2025 10:41:57 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxY1x1P1Bz3Z6X; Tue, 13 May 2025 10:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747132917; 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=GEj/nC5DTcebvqWYtQqD6fjI2M48JgbP6yVfgAaRaLo=; b=b8aoFjjLEwACs0/Kz86HKlFAlnhi+miX8QVvDoTl6WW86Qwox+hewdgl6vsTNgWPSMEvvK vG+zrIu9H6saECrnsECGiOvlDPbePRev1yHmVy1GEh0UxuNyK3IBjtN2Be3/6Mhx9+bjGw Qxxi91wmxf1BNEoLCOyDIDpNMG+CBcBxcJhpf5KkCDIfTj7vrbPm8meuhbmx6I07Sc6uEO uFOWl2yDmoOH5UEN7BRfKhtCfuKNP5uNsbBylOgzUdNVT0bSF7AOng/X0wgxz3dyW91gJU lQxiwzFnxlERYQoNc0eme9ojVu8gOB6iTpZJboLJOqoT4VEa6z073aknCnrYGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747132917; 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=GEj/nC5DTcebvqWYtQqD6fjI2M48JgbP6yVfgAaRaLo=; b=CsIlNKh7WlUxSBWyit12VHF9840wI2tTBVoZOqAiYwMicW1NxwEIPiGsZY0kSO5V9Fk6Kq Guc9/MAEPdN7bDtYWLUv+YHpnp6Ej6Eo7RN/bfCb04lIoMU89moKp8TpN8I8JQgfzyPriB eiGzpSlXBUTrM2LX6oiIbXjtYRtYNcZtXrJizaj9Ha94Rl/F/NKk9CLXY0ofAE6KRuHCny hgqapMd2uEdOnXcHXbVI6TihXv9w6mKb15Mq3AHc3fWQOi0Z8eKosoQzvK/+ZU328iR8v9 oKuNE7f1MHBec8A1bT8R48P5JBVB0o8utTz3XY1fUwqerg3scoUMmEQveTqu5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747132917; a=rsa-sha256; cv=none; b=uAjYCYse+cSC9qxiftsFOMGa3ML2vlBYPc8lsKo1Dc/8s+blegSMTUTP2Zrm/5IIrhwXbn bpZ+iIBLJOizOy71W1pQ9otjZazTq3D2QP/KhIYwblxKCfXFi55ip1YxqK7lGGmxdnLXip M/ArkUmG+vZSMIsoYpgL/23BK5ilo9MOpLZEZ7Bx4M1d6iysO3py0Um+EGL9TELnJbp4Ng b5dzbHA8/U3sh+jVhyCund7+RHzPW+TjMPGlPknHuB1SjRtYwF9S21VsukFUS8IbSl5NE5 /D9lWoHvxCD1JaM5loSVPNPUIR17CbRYi5G4y2KOMMrR0EVBTs1iwtHAQBA2pQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxY1x0yGbzk4R; Tue, 13 May 2025 10:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DAfv4h044148; Tue, 13 May 2025 10:41:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DAfv0Y044145; Tue, 13 May 2025 10:41:57 GMT (envelope-from git) Date: Tue, 13 May 2025 10:41:57 GMT Message-Id: <202505131041.54DAfv0Y044145@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 313713b24c6d - main - column(1): add -l flag 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 313713b24c6d2a3061972c4f431515c4f1b01c77 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=313713b24c6d2a3061972c4f431515c4f1b01c77 commit 313713b24c6d2a3061972c4f431515c4f1b01c77 Author: Lexi Winter AuthorDate: 2025-05-13 10:28:59 +0000 Commit: Lexi Winter CommitDate: 2025-05-13 10:33:08 +0000 column(1): add -l flag the '-l ' flag limits the number of columns that column(1) will produce in -t mode. this is syntax-compatible with the same option in util-linux's column(1), but due to existing differences between the two implementations, it's not semantically compatible. as a side-effect, fix a pre-existing bug where empty fields could cause incorrect output: % echo ':' | column -ts: (null) while here, also fix a couple of minor existing issues. Reviewed by: des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50290 --- usr.bin/column/column.1 | 11 ++++++++++- usr.bin/column/column.c | 45 ++++++++++++++++++++++++++++++++---------- usr.bin/column/tests/column.sh | 30 ++++++++++++++++++++++++++++ 3 files changed, 75 insertions(+), 11 deletions(-) diff --git a/usr.bin/column/column.1 b/usr.bin/column/column.1 index 4481fccf2c3d..1baf8a916e55 100644 --- a/usr.bin/column/column.1 +++ b/usr.bin/column/column.1 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 29, 2004 +.Dd May 13, 2025 .Dt COLUMN 1 .Os .Sh NAME @@ -35,6 +35,7 @@ .Nm .Op Fl tx .Op Fl c Ar columns +.Op Fl l Ar tblcols .Op Fl s Ar sep .Op Ar .Sh DESCRIPTION @@ -53,6 +54,14 @@ The options are as follows: Output is formatted for a display .Ar columns wide. +.It Fl l +When used with +.Fl t , +limit the table to +.Ar tblcols +columns in width. +The last column will contain the rest of the line, +including any delimiters. .It Fl s Specify a set of characters to be used to delimit columns for the .Fl t diff --git a/usr.bin/column/column.c b/usr.bin/column/column.c index d1322312f8fa..aa9e38d560e4 100644 --- a/usr.bin/column/column.c +++ b/usr.bin/column/column.c @@ -54,6 +54,7 @@ static void usage(void); static int width(const wchar_t *); static int termwidth = 80; /* default terminal width */ +static int tblcols; /* number of table columns for -t */ static int entries; /* number of records */ static int eval; /* exit value */ @@ -68,7 +69,7 @@ main(int argc, char **argv) FILE *fp; int ch, tflag, xflag; char *p; - const char *src; + const char *errstr, *src; wchar_t *newsep; size_t seplen; @@ -81,17 +82,26 @@ main(int argc, char **argv) termwidth = win.ws_col; tflag = xflag = 0; - while ((ch = getopt(argc, argv, "c:s:tx")) != -1) + while ((ch = getopt(argc, argv, "c:l:s:tx")) != -1) switch(ch) { case 'c': - termwidth = atoi(optarg); + termwidth = strtonum(optarg, 0, INT_MAX, &errstr); + if (errstr != NULL) + errx(1, "invalid terminal width \"%s\": %s", + optarg, errstr); + break; + case 'l': + tblcols = strtonum(optarg, 0, INT_MAX, &errstr); + if (errstr != NULL) + errx(1, "invalid max width \"%s\": %s", + optarg, errstr); break; case 's': src = optarg; seplen = mbsrtowcs(NULL, &src, 0, NULL); if (seplen == (size_t)-1) err(1, "bad separator"); - newsep = malloc((seplen + 1) * sizeof(wchar_t)); + newsep = calloc(seplen + 1, sizeof(wchar_t)); if (newsep == NULL) err(1, NULL); mbsrtowcs(newsep, &src, seplen + 1, NULL); @@ -110,6 +120,9 @@ main(int argc, char **argv) argc -= optind; argv += optind; + if (tblcols && !tflag) + errx(1, "the -l flag cannot be used without the -t flag"); + if (!*argv) input(stdin); else for (; *argv; ++argv) @@ -217,7 +230,7 @@ maketbl(void) int *lens, maxcols; TBL *tbl; wchar_t **cols; - wchar_t *last; + wchar_t *s; if ((t = tbl = calloc(entries, sizeof(TBL))) == NULL) err(1, NULL); @@ -226,9 +239,11 @@ maketbl(void) if ((lens = calloc(maxcols, sizeof(int))) == NULL) err(1, NULL); for (cnt = 0, lp = list; cnt < entries; ++cnt, ++lp, ++t) { - for (coloff = 0, p = *lp; - (cols[coloff] = wcstok(p, separator, &last)); - p = NULL) + for (p = *lp; wcschr(separator, *p); ++p) + /* nothing */ ; + for (coloff = 0; *p;) { + cols[coloff] = p; + if (++coloff == maxcols) { if (!(cols = realloc(cols, ((u_int)maxcols + DEFCOLS) * sizeof(wchar_t *))) || @@ -239,6 +254,16 @@ maketbl(void) 0, DEFCOLS * sizeof(int)); maxcols += DEFCOLS; } + + if ((!tblcols || coloff < tblcols) && + (s = wcspbrk(p, separator))) { + *s++ = L'\0'; + while (*s && wcschr(separator, *s)) + ++s; + p = s; + } else + break; + } if ((t->list = calloc(coloff, sizeof(*t->list))) == NULL) err(1, NULL); if ((t->len = calloc(coloff, sizeof(int))) == NULL) @@ -319,8 +344,8 @@ width(const wchar_t *wcs) static void usage(void) { - (void)fprintf(stderr, - "usage: column [-tx] [-c columns] [-s sep] [file ...]\n"); + "usage: column [-tx] [-c columns] [-l tblcols]" + " [-s sep] [file ...]\n"); exit(1); } diff --git a/usr.bin/column/tests/column.sh b/usr.bin/column/tests/column.sh index c7c6502098d4..283dc88bff1a 100644 --- a/usr.bin/column/tests/column.sh +++ b/usr.bin/column/tests/column.sh @@ -144,6 +144,7 @@ seven.:eight.:nine ::zwei drei.. vier: +: END @@ -161,10 +162,39 @@ END atf_check diff expected output } +atf_test_case "ncols" +ncols_head() +{ + atf_set descr "column(1) with -t (table) and -s and -l options" +} + +ncols_body() +{ + cat >input <expected < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: eed005b57895 - releng/14.3 - RELNOTES: ps(1): Document change in behavior for '-a'/'-A' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: eed005b578954025bd2e4bab47d3c37f8d6c1e9c Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=eed005b578954025bd2e4bab47d3c37f8d6c1e9c commit eed005b578954025bd2e4bab47d3c37f8d6c1e9c Author: Olivier Certner AuthorDate: 2025-05-06 13:42:33 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:26 +0000 RELNOTES: ps(1): Document change in behavior for '-a'/'-A' Document the practical consequence of change "ps(1): Make '-a' and '-A' always show all processes" (93a94ce731a8) that specifying '-a'/'-A' leads to printing all processes regardless of the presence of other process selection options (except for '-x'/'-X', which command a filter). While here, mention a possible practical issue with '-J', as reported by dch@. This option was introduced by commit "Add -J to filter by matching jail IDs and names." (13767130c7147ae7182a, r265229), which unfortunately talked about '-J' being a filter while actually implementing it as a regular selection option which adds to the processes to display. Reviewed by: dch MFC after: 1 day Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50193 (cherry picked from commit 428200d2f0689aa801f5cab15d3066e2c77825f5) Commit hash edited on MFC. (cherry picked from commit f18a49a747f7641e93c24d50207d54e7e612f97d) Approved by: re (cperciva) --- RELNOTES | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/RELNOTES b/RELNOTES index 82c0aacd97ee..838833f8db89 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,23 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +1ee62f354ab0: + ps(1)'s options '-a' and '-A', when combined with any other one + affecting the selection of processes except for '-X' and '-x', would + have no effect, in contradiction with the rule that one process is + listed as soon as any of the specified options selects it (inclusive + OR), which is both mandated by POSIX and arguably a natural expectation. + This bug has been fixed. + + As a practical consequence, specifying '-a'/'-A' now causes all + processes to be listed regardless of other selection options (except for + '-X' and '-x', which still apply). In particular, to list only + processes from specific jails, one must not use '-a' with '-J'. Option + '-J', contrary to its apparent initial intent, never worked as a filter + in practice (except by accident with '-a' due to the bug), but instead + as any other selection options (e.g., '-U', '-p', '-G', etc.) subject to + the "inclusive OR" rule. + a2132d91739d: ps(1)'s '-U' option has been changed to select processes by their real user IDs instead of their effective one, in accordance with POSIX and From nobody Tue May 13 12:42:40 2025 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 4ZxbjF324xz5wnkb; Tue, 13 May 2025 12:42:41 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjF0G2fz3sxP; Tue, 13 May 2025 12:42:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140161; 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=BwCCmwcjuThGaEMfl+Gwd5esy/3YrLu7fTsbE9o0j2U=; b=MH32VNJCHyyML/FxdSPUZpzN13pfgzpps0gY8sHXralKwm4mIpTZ5w7MoKkP5+QFxSAsYi QSAvLsdJkLDVI3JplQhEz6PLeSvARHny/CBhDi1GKtYPDGPw98mACh/r6X5bcFfQ9sSxSM BfdimcIz7npd+AD+1EWBZCuCnVt6lSQKfH6rPhW3lHKhIsusJz82ATy6A3fqPWiAsuNr+P lNhE9ffWuwezaE8Uv7d7IzyUBNZ1B792tjp3cXr01UjI5sdKAcTsmw4CO8v0wWmOZNt0Ud EmsiSxloiPhJgz1xDb6OU0uM80AaIFAJ6XUtDJoVovnzT4gvfdOLzznTK6y4xQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140161; 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=BwCCmwcjuThGaEMfl+Gwd5esy/3YrLu7fTsbE9o0j2U=; b=sX4t3484HmgRctHlcriPsCo9Uy8AGqkvTxazRjswRP+mWdjZyL1thMFbTrYw1aKxLNABGe MmhEi5zc6z+4VS2vtbhawAEPIH23vqwNGHDBmEHNBV8VRMlHF3Bm9JV/B5EJmrP0ooaJH0 SngULjoYQSLoEU87uNTZSu7Pd6M7ia7+kzbJO5lrZ7NG0O8wICMrlPUXOwIm1cxd3i8mBu UQbEUhl7h1gIhEUxRkXyQPuHAzwMKoX2SrMxXU1NUTcRQYPQlr1i5bVfGiNBLFiosrmnUX C54/bKSkG9YeQwd/tZQdom0bEaMIkZiDBCz95O0seyTIlbQID8GzU4bgwGmErA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140161; a=rsa-sha256; cv=none; b=YYE7EvjOWHZEL9VsCNccacfIOiB0qPHeR73Rw2sIFUNZmYFEOytOysjBI+C8qVefalVvuN G2gymCCgfpQjOpm2ltatYMKM4BXFL4ZnkAiAqXXQL81eg91x/ONeSfzSbZ/qpivqlCQKfC 09JN/sEZH7o+o9atGjvWghx8Zx35D8xfHeid/QVWolhQLoNXL7srPo7lFoeIgmmKE1WKrg kAuC2PszJ/smO8Y5/uDmTrw9Agz4mzxuWxUesiwlZb546S6c4nveQ5P6VxrB2DmtdSrC6q rejV/gxvd8Rv8IysDkyIf1wJP9SkhcG9NjMjJ2FPn/okU7J6df/SfY7Fea25Zg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjD6zfxznBn; Tue, 13 May 2025 12:42:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCgeGe072629; Tue, 13 May 2025 12:42:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgeYF072626; Tue, 13 May 2025 12:42:40 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:40 GMT Message-Id: <202505131242.54DCgeYF072626@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: d5fff1aad54c - releng/14.3 - ps.1: Remove ambiguity in description of option '-J' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: d5fff1aad54c2e5a79d00d5781c9919ad11adcf3 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d5fff1aad54c2e5a79d00d5781c9919ad11adcf3 commit d5fff1aad54c2e5a79d00d5781c9919ad11adcf3 Author: Olivier Certner AuthorDate: 2025-05-06 13:47:18 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:32 +0000 ps.1: Remove ambiguity in description of option '-J' As stated in the previous commit, option '-J' was introduced by commit "Add -J to filter by matching jail IDs and names." (13767130c7147ae7182a, r265229), which unfortunately talked about '-J' being a filter while actually implementing it as a regular selection option which adds to the processes to display. The manual page's formulation hinted more at '-J' being a filter, which it is not, or could be just considered ambiguous, because of the presence of the "only" word. Consequently, remove it and reformulate. Reviewed by: ziaee, dch MFC after: 1 day Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50194 (cherry picked from commit cbda1aea6532697247bcca6e59d45775857c35e2) (cherry picked from commit 1586fd84fbdab2e2ec205ca717c69946805f2ba0) Approved by: re (cperciva) --- bin/ps/ps.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/ps/ps.1 b/bin/ps/ps.1 index c1c2bcea5813..1267b1013f69 100644 --- a/bin/ps/ps.1 +++ b/bin/ps/ps.1 @@ -35,7 +35,7 @@ .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 .\" -.Dd April 28, 2025 +.Dd May 06, 2025 .Dt PS 1 .Os .Sh NAME @@ -285,7 +285,7 @@ of the jail. Use .Fl J .Sy 0 -to display only host processes. +to request display of host processes. Implies .Fl x by default. From nobody Tue May 13 12:42:42 2025 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 4ZxbjG3RJKz5wnkc; Tue, 13 May 2025 12:42:42 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjG140Vz3sbG; Tue, 13 May 2025 12:42:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140162; 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=Q89/Gqo/3bETsWUJEiU1jPZ85/tzqGC7VL6zCJbbZBI=; b=FcmPatW80t1GAM33xAnHyDA3E58craAZRI5XAQjHyrslAMjzORVXoSsRKvjre8SwRAG2yv yCzcNMDdyR334QgSjTZ1Ekp3a+79cG7BgJlMwB+AV8mFOKLMX5DICez8yCjf7gb5YNZQ1L fQlx9l2wYb2tv/3/trQSQajA3/VYBz0cbK2I/el1PbrZenNdFg7BzHj492YP3kw+t0FdUz FPjgnhBsgcHiWJHIAgD/JdxqjDV3NAZ//7WFjOFdnlSHnJ+Abpt9XxQne4Y8z9sY/jj7G6 SQpI1tRjIayKDobpO5JWABx7JzJByY0iTN0syLRFlyaQSQ2Gvx+qREhldTDDqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140162; 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=Q89/Gqo/3bETsWUJEiU1jPZ85/tzqGC7VL6zCJbbZBI=; b=ftgLkxKqHInZDcIXTTRt6X22DenAHWo9L/6780kPsw/jj5pZEbILgLw4h1xG3xKkEnhHZC 2oijCSzfpl7H4wp1PTzN7Ieyeb4HIzClGAg7LOcoKarNCJqQDw9m5XHrZdIheMgnF0qLVi M1fCWv6wAbbJPE/ffa9BV/PnOJ983A94u8MNLX3Qbsw9fEXO/JsLSWjpPiv3Qllh9OfefF 8Ku3c4zZGyy+WThOj5mlAc/46TrPW1wIDPB9BghLTcfCoCx8fYPKjzoEQzkvIrD22DEw3c EpygQOxxuWpLIxvMnJ3d7jYLMcE2aFRWS0U8dooz+3RKHm3oxx2juirmcAYDKQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140162; a=rsa-sha256; cv=none; b=sxSgn1eVbq4nDuxkApLEK0aelFSQx00F7d68OWZZauhgzZyTbXJQEjn/usZt7ZGpCJak/B L0yu0T4DpRtxUyHKKLa7FjanaZb0hJTFKc0C7WpN9NbaYtqtOqVMUiVtT33kGSq2QZ0N9p DuKbYc/68y/bsdZURBqv0YV5TahwvDA6La7fUVyVCtjYFGyM3lfz/ypM5hdFw+H6zQ87Ak xuJXMop8lZrylW+XKd39MwioLMYYcAEQ0vOTLCJEHpgBCWrxgZySh8vydqLDkp+o3ed3Tf 4SJb2P/CCDdXDS+3g/119JgtnXCAN7g2PFIe34unXrdJCd7JGWa9nj6YWvszxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjG0Zv6znMj; Tue, 13 May 2025 12:42:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCgg9v072663; Tue, 13 May 2025 12:42:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCggGB072660; Tue, 13 May 2025 12:42:42 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:42 GMT Message-Id: <202505131242.54DCggGB072660@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: 2d5e13c86a6a - releng/14.3 - rc/tests: Fix process flags checks using ps(1) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 2d5e13c86a6ad3216ef091ec7c45456a7bafb308 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=2d5e13c86a6ad3216ef091ec7c45456a7bafb308 commit 2d5e13c86a6ad3216ef091ec7c45456a7bafb308 Author: Olivier Certner AuthorDate: 2025-05-06 13:52:39 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:32 +0000 rc/tests: Fix process flags checks using ps(1) These checks use ps(1) with both the '-p' and '-a' flags, which worked so far as ps(1)'s '-a' option was buggy. Since the fix in commit "ps(1): Make '-a' and '-A' always show all processes" (93a94ce731a89b56), such a command-line always selects all processes, making the specified '-p' useless and the test wrong. Remove the useless '-a'. While here, remove the redundant '-x', as '-p' implies '-x' by default. MFC after: 1 day Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50201 (cherry picked from commit 646375408742dd5ed9abb174a621a3f8f65a56ef) (cherry picked from commit a69fe62604021f120206e4064ca7463195aeb3a0) Approved by: re (cperciva) --- libexec/rc/tests/rc_subr_test.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/tests/rc_subr_test.sh b/libexec/rc/tests/rc_subr_test.sh index f004354fe52e..60f77c2c2de3 100644 --- a/libexec/rc/tests/rc_subr_test.sh +++ b/libexec/rc/tests/rc_subr_test.sh @@ -59,9 +59,9 @@ oomprotect_all_body() atf_check -s exit:0 -o inline:"Starting ${__name}.\n" -e empty \ /bin/sh "$__script" "$__name" "$__pidfile" "$__childpidfile" onestart atf_check -s exit:0 -o match:'^..1..... .......1$' -e empty \ - ps -p "$(cat "$__pidfile")" -ax -o flags,flags2 + ps -p "$(cat "$__pidfile")" -o flags,flags2 atf_check -s exit:0 -o match:'^..1..... .......1$' -e empty \ - ps -p "$(cat "$__childpidfile")" -ax -o flags,flags2 + ps -p "$(cat "$__childpidfile")" -o flags,flags2 atf_check -s exit:0 -o ignore -e empty \ /bin/sh "$__script" "$__name" "$__pidfile" "$__childpidfile" onestop } From nobody Tue May 13 12:42:43 2025 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 4ZxbjH3Xc9z5wnSX; Tue, 13 May 2025 12:42:43 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjH2PWLz3sxY; Tue, 13 May 2025 12:42:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140163; 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=9MtxDBBCp8s478lwnpgNKh2V+U47zEDi7haNHoPFaz4=; b=D/rZ7fxVzNUTbKXpyELNMli72S8Y4bjqT77LoRkEU+yRUYsuIwOzsdKX0d6Qy5LdYNh32G 92t7XFr9lHTq9SUecKr+rUL9tz5hh7z+Gdc1S+XkYhTIiQLQsiRwcQN/hN2MHr/tmnkn63 ukLrmHaTjI0bjvCmIkWMJdF1eMekh+LQFNRQ/vwwf6JCdja5n6SAHyXgaPbVeYtri+w8iO CJD36cLKZF8UP7W9/6F57fDQZVgsavCN59S+k5l3G7nmZTQy0B4HMN3SOTDFdWM7dduVzi 14IdlyYxHjPF3WuYRZ+uqr3Pddp9CpGr4cnxm5/jb01E0X3ua1+wLZWhkAJxaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140163; 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=9MtxDBBCp8s478lwnpgNKh2V+U47zEDi7haNHoPFaz4=; b=biZwNch2ZK5z+B577dAagvQKj+cLDsDOWSOdl+M3NhOvmqvnv+L7+zfnjhxsxx6W/eFno9 zsVjfZBa7l7WZnMenvQA1SAtqrvs8nq5CH2ZBuVxAc7zS3GQ0J5iODhFVTSAO+7H0/R9SM l/+Hz0FR+ziNMA1xY1yDX9Q48RGcoQSn3M1qaDe18zaIpN2vXjP+RekzbTxPsrtKCvqm64 g8w6UxWCTZMpb7RboX5lUn0la3V1UgiSivyRtusphSwPvLkkZx81IgJjguC3DoxHeccq+/ dhlRReqQZjXza88oMAPXFYC1EXwCra0bsmFEY6W1L9WxOnZr6qvcN/++S0+RUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140163; a=rsa-sha256; cv=none; b=hBonad/jWnYLMU9TRvGZbpJhvVl80ErZHKOBz1Z0Q7xSh1edvwyrRfclUd6U8PKoPDImHB MmYZszN75md9rqob12vBW7Dkw4HftIUw+kiSPfpyrVspffGpjUpUxyWonY3D4ubpHCaKfJ 9KFhu0HBe9zNoZacOyRKzo6skxevuer3lr2emT6ZeImQuvwgCXGBqBwpL0jqlrWfxGVoHU LH2BOj1CNQZe6A5YnRJ44R6kO5tvot9GGAc1G1tvpd2AbFi+BwDAkNVqyyDfJpngrPRdXX ou4F/PsO8FfZO4trbiHRTE8RgmzQWFo/gaBjS3AorYdaIEaf4BEPibmcCSQ4zQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjH1pzpzmrt; Tue, 13 May 2025 12:42:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCghr3072696; Tue, 13 May 2025 12:42:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgh30072693; Tue, 13 May 2025 12:42:43 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:43 GMT Message-Id: <202505131242.54DCgh30072693@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: 10e6bac460af - releng/14.3 - stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 10e6bac460af8482361ffafaada5776d39645675 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=10e6bac460af8482361ffafaada5776d39645675 commit 10e6bac460af8482361ffafaada5776d39645675 Author: Olivier Certner AuthorDate: 2025-05-06 14:43:33 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:32 +0000 stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change Remove '-Uroot', as now '-U' selects processes based on their real user IDs, and since the program using them was launched as 'root', the equivalent now is just to remove it, as now ps(1) by default selects processes based on its effective UID (root) and their effective UIDs. It seems that matching on effective or real UID does not really matter in this test, but at least this change simplifies the command-line. MFC after: 1 day Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50200 (cherry picked from commit 1265d3b07eaa418e9c60800db93f3482ddbb6ae2) (cherry picked from commit 5af18707c155dca74071aa3bfb61160814f03bc3) Approved by: re (cperciva) --- tools/test/stress2/misc/exlock2.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/test/stress2/misc/exlock2.sh b/tools/test/stress2/misc/exlock2.sh index 58a49919d86a..292e60e8d9f6 100755 --- a/tools/test/stress2/misc/exlock2.sh +++ b/tools/test/stress2/misc/exlock2.sh @@ -153,7 +153,7 @@ out: } #if defined(DEBUG) if (e != 0) { - system("ps -Uroot | grep -v grep | grep /tmp/exlock2 | "\ + system("ps | grep -v grep | grep /tmp/exlock2 | "\ "awk '{print $1}' | xargs procstat -f"); } #endif From nobody Tue May 13 12:42:44 2025 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 4ZxbjJ5wBBz5wnQV; Tue, 13 May 2025 12:42:44 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjJ34wkz3sqy; Tue, 13 May 2025 12:42:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140164; 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=12Rqsug7iR2E/vefdFxOavWmuYRWX6SYjuPE6Cu6tcA=; b=cdGwvoslY/mxXEoaGLGH98+yZYudafxPS3kRtfJdXnEpe0+69Hqx4VPjeWh3GD7As71Mjt /9eB1JqC3qJl32JnbZ9huDynh1Go1fKXcVyFdteDtcUMdzDvSJELBLWD45jUZo46jHz/1r mt8MpZiZNpv0txG2JVy3pOnFB9t6L6cOKCyt/DI2YiHqCvKetzxLq9TAg9Ci9TPQ2+UDsv 4eiYeGFuUWTqYC6OHkKBjCYtrqg2MJU4PzopfIpC2ZWcNHn0HdCfiOiadXSGAxegZ0GJor NHbWIEb/nqTjuMSOXT6/yKZOqO/8Vi8zIhpcZ5qiLELPOC1xR0x9HtOGh0xVdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140164; 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=12Rqsug7iR2E/vefdFxOavWmuYRWX6SYjuPE6Cu6tcA=; b=f0Wmd94BE2hI37V/KjmLuaBYGMzrEq3E0NXTn1o3XCwgT+kAc+ZedF3AzYlBb2iY/nZd29 lVJipQLXve9cuVI+NQbfAriWwd+j3+HJzW3S1KPa2LqD1uD3HciuQnkLvlDtwkvS6RNGRa gRy6AQtDKfVy7ARG/UvSVB5Rlm9H9pAer9hxgULgMtlD0YF4JSNKMeywmB5DjsymcGT/H2 74JfaZDe2jMxJC3KoGe1RSaA7jKG70Tr/YTLA+YHQM9Xwq9m96XlOrqkysq6K2EQY76Ey2 KVk6k9fHw9Ja5y5BeXxuf1/1KtvQFer8aLyeMzM8m9PenU9gWAfPFG59+00xrQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140164; a=rsa-sha256; cv=none; b=oZrXRR137hGbAfrEo4jgIIX9rLOiqig8sklVdJCs5hj6O0mBPah141D7P2gLqoG09Y3L1/ 2OrkZwE0Xnu41hhWI74gT0Xxep/IiBV81UGEMLSc4BjKhbwHiDGVSpFnxm1LrNn5lSYttw 004seVWY+CQuIjQC0MxRBMGmb8RDcd2AVq8mqJ+ET4grkhif5ktHx7HkeU2eEZcktC8ND1 jJyhrFrk+c8cLWTL8D7PuobyAOx/somGYu7AQI596RFpyME/91kND50v/naXepDREnpIXX ZpcuXrpLwfC5z2D/oGph/Ue0ce70MM7xOnjN0yepfocERGLEJgdN5M39WQn9VQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjJ2dwBzn6d; Tue, 13 May 2025 12:42:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCgiHO072729; Tue, 13 May 2025 12:42:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgiZu072726; Tue, 13 May 2025 12:42:44 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:44 GMT Message-Id: <202505131242.54DCgiZu072726@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: f7fa53cead2e - releng/14.3 - stress2: exlock2.sh: Fix impact of previous '-U' removal 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: f7fa53cead2ee93a4f688537375e0f794533db36 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=f7fa53cead2ee93a4f688537375e0f794533db36 commit f7fa53cead2ee93a4f688537375e0f794533db36 Author: Olivier Certner AuthorDate: 2025-05-12 08:34:05 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:33 +0000 stress2: exlock2.sh: Fix impact of previous '-U' removal In commit "stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change" (1265d3b07eaa), I forgot that '-U' also has the side-effect of implying '-x' by default. Now that '-U' has been removed, make '-x' explicit. Fixes: 1265d3b07eaa ("stress2: exlock2.sh: Preserve behavior after ps(1)'s '-U' change") MFC after: 1 hour Sponsored by: The FreeBSD Foundation (cherry picked from commit f6e826891760a34ef69e1122da0ee378f7caf454) (cherry picked from commit da6b04cd404341d494e2c89e3058ccaea5ca8a79) Approved by: re (implicit) --- tools/test/stress2/misc/exlock2.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/test/stress2/misc/exlock2.sh b/tools/test/stress2/misc/exlock2.sh index 292e60e8d9f6..a9cd886755f4 100755 --- a/tools/test/stress2/misc/exlock2.sh +++ b/tools/test/stress2/misc/exlock2.sh @@ -153,7 +153,7 @@ out: } #if defined(DEBUG) if (e != 0) { - system("ps | grep -v grep | grep /tmp/exlock2 | "\ + system("ps -x | grep -v grep | grep /tmp/exlock2 | "\ "awk '{print $1}' | xargs procstat -f"); } #endif From nobody Tue May 13 12:42:45 2025 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 4ZxbjL2VSqz5wnVD; Tue, 13 May 2025 12:42:46 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjK3ycgz3sd5; Tue, 13 May 2025 12:42:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140165; 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=4erBud+QQJXrq4mZXKmKnATtEyhQObwGIeSacadwzcs=; b=SZo+L8TcycaCW6mRwlgkB8RJIiwk4IFEQm1OAFInrUwHJjiLwOqt05C+eZT93k7VULAVUM fB3Y/c78+eHlYPC1mMPjhNhM/JS3BtN+9AnACyJChVoIbc2Jzw8OiNQtOAvBMt0cW4K/2l 84Rp41REoO55XNSamITvOxd5dFCwc284jaI/FN+7D7NKLB94AxbK21sp/tt34wQujeTNUz NEmXUELhyyct7Ye91f/IGSuQ/iHMnkqRuMk+X2faiqVB6FOhy2bbW7JUGyyzzGYNhJEKkh d6BD5c0/AAx0J3D6QmgOE5P7MPFFqB39gpP4wgpKrMzGWdl6s84Yv8/RjgZYHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140165; 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=4erBud+QQJXrq4mZXKmKnATtEyhQObwGIeSacadwzcs=; b=Fd1iPa1HrLkIM+Bl4ghxus2oaSzRRypDTVNSzdzFLcLFY1lUwjMdwfibpcso9ZzyxJzSJN ODwLnMM6miUPyEnrM2BhR35gniwWDHub/dG7fChGgQJX331/cwAF9l/2m6HBegnSHqpb7n TZJp4TDKEEpwZgT9t2rN2BNiAc/0+xTdmSZRY4Tgd2bTevLuKh4xJpRWAXBWkoxnTi5GxG nAUJrKE5S7x0Xr1679v3WNoQC+/fnGx2lD46g99LuxdWvZ1Iqbvm2DaxI8DFy2fnHoGTua Bau5LbKMsT+LjfSPEIs3rTOpi/Mfh0nPl6NpDN883J+3VT0BUaWrolUkSZ6fUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140165; a=rsa-sha256; cv=none; b=W4PVGNmWObiYbauV069TcjYdBoClucG3ku/UmNgYSNQCQrawXTsOs9KVtP2lGufu2MlkO8 7159y9fANOUoRsq5XtJD8iqhBIuQIxel8oVcu/9gi5XHPZtlv3ZPymNk89/PMAmU6uAoIX kc3OlUA68YK4UINL1JvpiQybURtqLt+iKCeMW6DzX/854Dq98qu40iYpkk/oopVe6liQsV bIseKh1BR00mJCfjY1GAVlbUigVa2Aq7a3LD3mMgfYs8fLR8btXelkz9gWHUMV0V5PZw3q lWwQ8ydEehLARXC80BSDBpE0gPlgRhUqwruY0ryp6nwWTYC1fSRZcMlqPp+7tA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjK3WGdzmrv; Tue, 13 May 2025 12:42:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCgjGM072764; Tue, 13 May 2025 12:42:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgjkM072761; Tue, 13 May 2025 12:42:45 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:45 GMT Message-Id: <202505131242.54DCgjkM072761@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: de6a4418eec9 - releng/14.3 - sysctl(9): Ease exporting struct sizes; Discourage doing that 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: de6a4418eec91dc8802defce0159c126a2c7b6d2 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=de6a4418eec91dc8802defce0159c126a2c7b6d2 commit de6a4418eec91dc8802defce0159c126a2c7b6d2 Author: Olivier Certner AuthorDate: 2025-05-01 16:02:44 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:33 +0000 sysctl(9): Ease exporting struct sizes; Discourage doing that Introduce two helpers, the more general SYSCTL_SIZEOF() and a struct-specific one SYSCTL_SIZEOF_STRUCT() which prepends 'struct' in the description and in the use of sizeof() but uses the raw structure name as the knob's name. The size of the object/structure is exported under 'debug.sizeof'. Existing knobs under 'debug.sizeof' were all converted to use the helpers. Add a note before the helpers discouraging the introduction of new leaves for ad-hoc reasons. List alternative means for developers to obtain the size of arbitrary kernel structures easily (thanks to markj@ for providing these). No functional change (intended). Reviewed by: kib, markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50121 (cherry picked from commit 713abc9880aabe0ff924ff644bceb6ff404ed3cd) (cherry picked from commit efce9f8a510b60736994e50288b78fc7b32b5d90) Approved by: re (cperciva) --- .../openzfs/module/os/freebsd/zfs/zfs_znode_os.c | 4 ++++ sys/fs/devfs/devfs_devs.c | 7 ++----- sys/geom/geom_kern.c | 15 +++++---------- sys/kern/kern_mib.c | 18 ++++++------------ sys/kern/subr_devstat.c | 3 +-- sys/kern/vfs_cache.c | 3 +-- sys/sys/sysctl.h | 21 +++++++++++++++++++++ 7 files changed, 40 insertions(+), 31 deletions(-) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_znode_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_znode_os.c index fea34273baef..61a59be9f78b 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_znode_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_znode_os.c @@ -66,8 +66,12 @@ #include "zfs_comutil.h" /* Used by fstat(1). */ +#ifdef SYSCTL_SIZEOF +SYSCTL_SIZEOF(znode, znode_t); +#else SYSCTL_INT(_debug_sizeof, OID_AUTO, znode, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, sizeof (znode_t), "sizeof(znode_t)"); +#endif /* * Define ZNODE_STATS to turn on statistic gathering. By default, it is only diff --git a/sys/fs/devfs/devfs_devs.c b/sys/fs/devfs/devfs_devs.c index c6dcd4fc7646..124f9f0449af 100644 --- a/sys/fs/devfs/devfs_devs.c +++ b/sys/fs/devfs/devfs_devs.c @@ -121,11 +121,8 @@ SYSCTL_PROC(_kern, OID_AUTO, devname, CTLTYPE_OPAQUE|CTLFLAG_RW|CTLFLAG_ANYBODY|CTLFLAG_MPSAFE, NULL, 0, sysctl_devname, "", "devname(3) handler"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, cdev, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct cdev), "sizeof(struct cdev)"); - -SYSCTL_INT(_debug_sizeof, OID_AUTO, cdev_priv, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct cdev_priv), "sizeof(struct cdev_priv)"); +SYSCTL_SIZEOF_STRUCT(cdev); +SYSCTL_SIZEOF_STRUCT(cdev_priv); struct cdev * devfs_alloc(int flags) diff --git a/sys/geom/geom_kern.c b/sys/geom/geom_kern.c index 14707403215d..f8f99087ad9c 100644 --- a/sys/geom/geom_kern.c +++ b/sys/geom/geom_kern.c @@ -230,13 +230,8 @@ SYSCTL_INT(_kern_geom, OID_AUTO, collectstats, CTLFLAG_RW, &g_collectstats, 0, "Control statistics collection on GEOM providers and consumers"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, g_class, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct g_class), "sizeof(struct g_class)"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, g_geom, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct g_geom), "sizeof(struct g_geom)"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, g_provider, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct g_provider), "sizeof(struct g_provider)"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, g_consumer, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct g_consumer), "sizeof(struct g_consumer)"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, g_bioq, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct g_bioq), "sizeof(struct g_bioq)"); +SYSCTL_SIZEOF_STRUCT(g_class); +SYSCTL_SIZEOF_STRUCT(g_geom); +SYSCTL_SIZEOF_STRUCT(g_provider); +SYSCTL_SIZEOF_STRUCT(g_consumer); +SYSCTL_SIZEOF_STRUCT(g_bioq); diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c index d60c72a00f63..f69275fc3d1d 100644 --- a/sys/kern/kern_mib.c +++ b/sys/kern/kern_mib.c @@ -722,11 +722,9 @@ SYSCTL_STRING(_user, USER_LOCALBASE, localbase, CTLFLAG_RWTUN, localbase, sizeof(localbase), "Prefix used to install and locate add-on packages"); #include -SYSCTL_INT(_debug_sizeof, OID_AUTO, vnode, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct vnode), "sizeof(struct vnode)"); +SYSCTL_SIZEOF_STRUCT(vnode); -SYSCTL_INT(_debug_sizeof, OID_AUTO, proc, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct proc), "sizeof(struct proc)"); +SYSCTL_SIZEOF_STRUCT(proc); static int sysctl_kern_pid_max(SYSCTL_HANDLER_ARGS) @@ -758,19 +756,15 @@ SYSCTL_PROC(_kern, OID_AUTO, pid_max, CTLTYPE_INT | #include #include -SYSCTL_INT(_debug_sizeof, OID_AUTO, bio, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct bio), "sizeof(struct bio)"); -SYSCTL_INT(_debug_sizeof, OID_AUTO, buf, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct buf), "sizeof(struct buf)"); +SYSCTL_SIZEOF_STRUCT(bio); +SYSCTL_SIZEOF_STRUCT(buf); #include -SYSCTL_INT(_debug_sizeof, OID_AUTO, kinfo_proc, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct kinfo_proc), "sizeof(struct kinfo_proc)"); +SYSCTL_SIZEOF_STRUCT(kinfo_proc); /* Used by kernel debuggers. */ const int pcb_size = sizeof(struct pcb); -SYSCTL_INT(_debug_sizeof, OID_AUTO, pcb, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct pcb), "sizeof(struct pcb)"); +SYSCTL_SIZEOF_STRUCT(pcb); /* XXX compatibility, remove for 6.0 */ #include diff --git a/sys/kern/subr_devstat.c b/sys/kern/subr_devstat.c index 6c0977d1cc35..3a107ac30390 100644 --- a/sys/kern/subr_devstat.c +++ b/sys/kern/subr_devstat.c @@ -600,5 +600,4 @@ devstat_free(struct devstat *dsp) } } -SYSCTL_INT(_debug_sizeof, OID_AUTO, devstat, CTLFLAG_RD, - SYSCTL_NULL_INT_PTR, sizeof(struct devstat), "sizeof(struct devstat)"); +SYSCTL_SIZEOF_STRUCT(devstat); diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index ab28540be8a8..92e9d77eb891 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -511,8 +511,7 @@ SYSCTL_INT(_debug, OID_AUTO, vfscache, CTLFLAG_RW, &doingcache, 0, #endif /* Export size information to userland */ -SYSCTL_INT(_debug_sizeof, OID_AUTO, namecache, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, - sizeof(struct namecache), "sizeof(struct namecache)"); +SYSCTL_SIZEOF_STRUCT(namecache); /* * The new name cache statistics diff --git a/sys/sys/sysctl.h b/sys/sys/sysctl.h index 5fce4b8e1713..f08080d4e4fa 100644 --- a/sys/sys/sysctl.h +++ b/sys/sys/sysctl.h @@ -38,6 +38,7 @@ #define _SYS_SYSCTL_H_ #ifdef _KERNEL +#include #include #include #endif @@ -934,6 +935,26 @@ TAILQ_HEAD(sysctl_ctx_list, sysctl_ctx_entry); CTLFLAG_RD | CTLFLAG_CAPRD | CTLTYPE_INT | CTLFLAG_MPSAFE, \ NULL, 1, sysctl_handle_int, "I", desc, "feature"); +/* + * Adding new leaves to the 'debug.sizeof' MIB tree for ad-hoc reasons is + * discouraged, and in particular for reporting to developers the size of some + * kernel structures, which can be obtained by the following alternative means: + * 1. In GDB, load a full kernel image and use 'print(sizeof(struct XXX))'. + * Alternatively, use 'ptype/o struct XXX' to additionally get the offsets + * and size of all structure's fields. + * 2. If the structure is allocated from UMA, then 'vmstat -z' reports its size + * (the mapping between structure types and zones is usually + * straightforward). + */ +/* Generates a read-only sysctl reporting the size of an object/structure. */ +#define SYSCTL_SIZEOF(name, expr) \ + SYSCTL_INT(_debug_sizeof, OID_AUTO, name, CTLFLAG_RD, \ + SYSCTL_NULL_INT_PTR, sizeof(expr), \ + "sizeof(" __STRING(expr) ")"); +/* Same, specialized for structures. */ +#define SYSCTL_SIZEOF_STRUCT(struct_name) \ + SYSCTL_SIZEOF(struct_name, struct struct_name) + #endif /* _KERNEL */ /* From nobody Tue May 13 12:42:46 2025 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 4ZxbjM6NXjz5wnb9; Tue, 13 May 2025 12:42:47 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjL53D0z3t3Z; Tue, 13 May 2025 12:42:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140166; 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=UiAXNFsbkFFHkI8ur1oiMdeI+NZ4NoIrxrNnYUwPnqA=; b=PXGil6LKpsO2zhnq6qy7hosKPDAtUSzFt5q9p29TEAlHANHvrP2bPkpxVxy9gIYFeNRdlO M0wPCjmWGJIETGuDu3KPPE2/s8J7zzX0DJI38AENKUAxYmT/tkG8MQb6nUMMGVmXWkvUbn Zfclie/l0PHBdPjZ4dpSTfibNFoP8Ag6eF2OZ++0sveqeDSx+wMWj/ZBGViQ5hCxwS9bO3 1U7klbAZYO3N5AbxC+zU6O9CWBYx3XLGMBxmrqZWOi1lRCL1pzbZwchB2rUk7BUOfs1hvv FvjReYCOEnP4jxkjqVzk6hY6tpTLELRhyYKgpOYlSR3juB0X7fUjQsffgNu1yQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140166; 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=UiAXNFsbkFFHkI8ur1oiMdeI+NZ4NoIrxrNnYUwPnqA=; b=iA9sz7xlJUMguJhJpHqJdX95wd66ev9LfdmI+FuqNUYZr0hOrOJkO4098l9ksaJAj8x8zz vtVI3Dsus+CzcEay8OV1hkCiREa93wsGK57J83d+aZspvigYDswMI5BOAXPY+Vp/wlY+fE 95BbtBjHdlhXg7o18TF9JbWSMBUeNUFmuaTjweweQCHkTxUf6UWnRDEz5TIX+0KDBtERPJ UWf/2DOB5Po8PQhU0iDlY1gu4UZl8tILZM4v1B/7qiXJDcFvnq6Z2ZBJ9DZquhC0WGQGX0 5zd281Flm0C4vkaWDfH6MLsBciR3CWNMXG78biIxxIYipL12UDKIFFNSFMQwlw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140166; a=rsa-sha256; cv=none; b=G4WiiFkNbcWpeex+fNTveudxnuB8fFPUtYjGarKy3K/YE+PkErRhVfGHijC0/htRk5GX24 mcP14nIZMMpHVAsUWHWARrcaWDdwP/bEnHROFWiHUYFGs5VfT2FCmcdlapZasMY/dvL6IR /90/1XGg380MBBvHVy3GwMueWqTqpTQ6T05j2mViiqIC7zW5xO11KJG3CkekNCS9cX7Wha 0MiU8EGIeM1slM5zxFIBNfrbjI9NuijzKt12tk1gitfje9wkdeqJvi3wcv3OAsPQd039Fm /HAVR+rzrJqtUvZcofLXN21fsSfyYPAf+u4Bv9IBed1VoPjSmfWOGk6KCbQKTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjL4X1hzn6f; Tue, 13 May 2025 12:42:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCgkNh072802; Tue, 13 May 2025 12:42:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgkZm072799; Tue, 13 May 2025 12:42:46 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:46 GMT Message-Id: <202505131242.54DCgkZm072799@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: d156cabc0f37 - releng/14.3 - sysctl.9: Constant integer example: Do not promote 'debug.sizeof' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: d156cabc0f3774a4f53c419488f6c4f331861d51 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d156cabc0f3774a4f53c419488f6c4f331861d51 commit d156cabc0f3774a4f53c419488f6c4f331861d51 Author: Olivier Certner AuthorDate: 2025-05-09 14:38:32 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:33 +0000 sysctl.9: Constant integer example: Do not promote 'debug.sizeof' Replace it with another one, selected from current in-tree uses. MFC after: 1 day Sponsored by: The FreeBSD Foundation (cherry picked from commit 129a6cf886e108b67f637a271f003519c99b9abd) (cherry picked from commit 1ca993dd454445ad766f8b8b39103e09c1dccce9) Approved by: re (implicit) --- share/man/man9/sysctl.9 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9 index 83f526b349a1..44f042b1d789 100644 --- a/share/man/man9/sysctl.9 +++ b/share/man/man9/sysctl.9 @@ -931,8 +931,8 @@ Examples of integer, opaque, string, and procedure sysctls follow: * flags are CTLFLAG_RD, the variable pointer is SYSCTL_NULL_INT_PTR, * and the value is declared. */ -SYSCTL_INT(_debug_sizeof, OID_AUTO, bio, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, - sizeof(struct bio), "sizeof(struct bio)"); +SYSCTL_INT(_kern, OID_AUTO, hz_max, CTLFLAG_RD, SYSCTL_NULL_INT_PTR, HZ_MAXIMUM, + "Maximum hz value supported"); /* * Example of a variable integer value. Notice that the control From nobody Tue May 13 12:42:47 2025 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 4ZxbjP0pXPz5wnMR; Tue, 13 May 2025 12:42:49 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxbjM601Gz3swd; Tue, 13 May 2025 12:42:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140167; 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=/Bio6cNtJ662IRDanEION08PEdJ31AGTff67aLWTSlc=; b=sDrWs20AiGPD9yVVicN7c8ap8ACPypmR79huFmQb7fW2xnVREeK3Q9joD8NHXVajPBCgKI K+znvCtdko+ex7jj+hvni5lx8giGBARORVdPWolHXcM3rkH322w/EumzckVDbYgTyqC6KH y1FF8IGOsu2qPzkTJIQNVYbm5d1Ji/xZVGdbPyYX4R20DIa4mGoXjxwZU4umE/D/4ugcgN m/Y96H3GN+CohQtFkI8hcXqTauDYSyZ4osm7+GM8iU+p35PqAugCjlYNFL1ItvBO+us99V CNkDvo0cfJ0NsBtVw5EBvRrqQ4A/EchU5JEUcrfkXdYwbi5ym4+/EPzWihQB+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140167; 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=/Bio6cNtJ662IRDanEION08PEdJ31AGTff67aLWTSlc=; b=ADJukZ6Oxdlzt0dvvrlOXjJQf89rYmJWsuApfxOPe5KOKAvpJjRpKNvM3xMbmNzSXA5RUH gZXa+NZo61oe6b7NJ7hd7/BphpY5hwFxkoneGiknQfyLgXoj02LxIXSj3rBowtek50w9Oi jBKVPfvOFx1miGzVg/A3hmDdqqHYJiOZpYEvQvF4mLdVun7xoRvRKMjDyBRvtum8zxkpoE nac9sz0/YpOxK8Zp9SaciGsfvKntmvo05BBsKmWkCcXwUxC9fORlo8h29HOZQjixRaHQf6 WVmFLKF2paOVveOgYQTMoXVlVKiPwNil0STr5b7mq0EtN7qdgWomVcMfJnE+Vg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140167; a=rsa-sha256; cv=none; b=DKfi+oOuSHxQc4mjfvk9nThAV7/Ii8olqOXXN1trs9TwqPheD5BwBz7AXbb5PHY5rtX3/W ML78ONTFExvZ6dyFnr8fUCim8Db+c3EVIg4kb0cZKrT/UEcBXWgwkrYRjJPJ18amVLVt2x y7/CAFI79OnB5ID2mcyE5eHKaCx9fAjOIoSS41TPzuyRYudqOVlhdn1SR+10KrvMIkSQvL SnaS3wDQtLdL7dX8m3ef8e/Ou1OTSB0dyYUGFt7SqRa3f5ZbtivTbMJv9RMhXhhX8G8FZ9 TxUSxxSMmvC0kjoU9qiK4h7FOqMkwrC1cTmBerTaF7nS/mLYih0Bk9KRQYAVCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxbjM5XbzznjJ; Tue, 13 May 2025 12:42:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCglcj072838; Tue, 13 May 2025 12:42:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCgl4r072835; Tue, 13 May 2025 12:42:47 GMT (envelope-from git) Date: Tue, 13 May 2025 12:42:47 GMT Message-Id: <202505131242.54DCgl4r072835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Olivier Certner Subject: git: 10944406beb4 - releng/14.3 - queue(3): Install *_SPLIT_AFTER() links to the main manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 10944406beb48f2da722b1f4ee798d2b07b499fc Auto-Submitted: auto-generated The branch releng/14.3 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=10944406beb48f2da722b1f4ee798d2b07b499fc commit 10944406beb48f2da722b1f4ee798d2b07b499fc Author: Olivier Certner AuthorDate: 2025-05-05 10:04:12 +0000 Commit: Olivier Certner CommitDate: 2025-05-13 12:41:33 +0000 queue(3): Install *_SPLIT_AFTER() links to the main manual page Completes commit "queue(3): New *_SPLIT_AFTER(), *_ASSERT_EMPTY(), *_ASSERT_NONEMPTY()" (c02880233949b01f). MFC after: 1 day Sponsored by: The FreeBSD Foundation (cherry picked from commit c071616b06aa0f51ac4314f989c472d0268c2ddb) (cherry picked from commit eca0ce8afb15ef9f01703c4d15273eaf66eb63f5) Approved by: re (cperciva) --- share/man/man3/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile index 75f209ab4e0d..9f0c796e445c 100644 --- a/share/man/man3/Makefile +++ b/share/man/man3/Makefile @@ -217,6 +217,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 LIST_PREV.3 \ queue.3 LIST_REMOVE.3 \ queue.3 LIST_REPLACE.3 \ + queue.3 LIST_SPLIT_AFTER.3 \ queue.3 LIST_SWAP.3 \ queue.3 SLIST_CLASS_ENTRY.3 \ queue.3 SLIST_CLASS_HEAD.3 \ @@ -237,6 +238,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 SLIST_REMOVE_AFTER.3 \ queue.3 SLIST_REMOVE_HEAD.3 \ queue.3 SLIST_REMOVE_PREVPTR.3 \ + queue.3 SLIST_SPLIT_AFTER.3 \ queue.3 SLIST_SWAP.3 \ queue.3 STAILQ_CLASS_ENTRY.3 \ queue.3 STAILQ_CLASS_HEAD.3 \ @@ -259,6 +261,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 STAILQ_REMOVE.3 \ queue.3 STAILQ_REMOVE_AFTER.3 \ queue.3 STAILQ_REMOVE_HEAD.3 \ + queue.3 STAILQ_SPLIT_AFTER.3 \ queue.3 STAILQ_SWAP.3 \ queue.3 TAILQ_CLASS_ENTRY.3 \ queue.3 TAILQ_CLASS_HEAD.3 \ @@ -286,6 +289,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 TAILQ_PREV.3 \ queue.3 TAILQ_REMOVE.3 \ queue.3 TAILQ_REPLACE.3 \ + queue.3 TAILQ_SPLIT_AFTER.3 \ queue.3 TAILQ_SWAP.3 MLINKS+= stats.3 stats_tpl_alloc.3 \ stats.3 stats_tpl_fetch_allocid.3 \ From nobody Tue May 13 12:50:59 2025 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 4Zxbtr0dzSz5wnsx; Tue, 13 May 2025 12:51:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxbtr008mz40vD; Tue, 13 May 2025 12:51:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140660; 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=szwd5H/9iwvOBA/is4h/APSel5pk9Ukf/U0fquA2NMs=; b=eMUPexmT8YTi154JZRrMRQXh23wyxDmutdKn/FRqH3yc61DyKRgl6w7o6ZfnvNdi25nAjX BdiE/UtH5E4h6FFLG+FezFZy8qacR2cgcKxSAn2Axioo70Le+Lk0hyJtduTqEKYk03wWek 9aM1tUkaEhepEKCFoWHmJdv/pIdcUIKEov2H42Yc172aNHAFWO3YTsq0TDcf4cK+LbF8sr +aZVMu2gkiPJ1eTzeOICVsOsCQHSptV1ZCUku4x/+kbkxGxs726IawDErvvkOlR97uJa2r jN9gIZDY9oiGVB5mqy2aN0e8RpXQf8Do27wB2am45mu3Lo0F/dXuwF23hujn8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140660; 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=szwd5H/9iwvOBA/is4h/APSel5pk9Ukf/U0fquA2NMs=; b=U+jaXKPIqRGriWibOxkNEOasoF1ChWMqubUgTA0V+XjPps8fQGnktzJif0NhSP01rGKyaA AUSJI0aMayXFBCUqqtPX+WRElBBZIrifJ2pgNOgk5rNZHIsWusMp2svv9hznkvG+7RfCiA a+HQVRlh6fYVo9X5Xd3k3nSvQp6OUFPb6+vcOOZe/JEOvXz1eQr98RleZ8jUWDHYcLnbA6 anoInk/gzpdqTVvSOYMdnINjGsDmDrLCopLc9Ra8Uiog6VvGSKow9VsMf0H64df4voqM+h LgSejvTzO/5f1371TEryyTgOzd4VZF6XpdRZjTP5rbGfRTRm9XYg+T6Qm5vEQw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140660; a=rsa-sha256; cv=none; b=WB7JfGuiEXELihMEVnHbgeh3BOrh7hgxRc/jESK4tV9KRumduTbwMXuSu8DoIHWcvTPn3k 1rXUKp9KBhNSmWc9C/UJjX2KGGTes7LGEXQByzuTDN5m8o2h49vtrrCfoVnjLjOGI87r9a 0arTOKxA8LPVYrSs0lFBkFLMIYPxSoo5rfxf5GbnMVJ0uwZ8aUbYupfUg5JQoNGRG0xVoA 3mjfZ+qPb+NRhbLx0u13osW5xVHpz/lSEHjs5Oq3pSVvEelAno6ZTbkdDkiTqxlPubjqj3 rfSzgHeQQrJWSKCcdNSAnI3whGiAiNidn226XoUNGkjrRIeLi7UHo/ieVhVFOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxbtq6fqWznBv; Tue, 13 May 2025 12:50:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCoxuk085960; Tue, 13 May 2025 12:50:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCoxWa085957; Tue, 13 May 2025 12:50:59 GMT (envelope-from git) Date: Tue, 13 May 2025 12:50:59 GMT Message-Id: <202505131250.54DCoxWa085957@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 33475cb18e9e - stable/14 - racct: Fix a typo in a comment 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 33475cb18e9eb5568c6704c2b2b9a63a46ddd2ed Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=33475cb18e9eb5568c6704c2b2b9a63a46ddd2ed commit 33475cb18e9eb5568c6704c2b2b9a63a46ddd2ed Author: Mark Johnston AuthorDate: 2025-05-01 14:00:05 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 12:50:51 +0000 racct: Fix a typo in a comment Reported by: kib MFC after: 1 week (cherry picked from commit 5d1fba01ca07030a013815746c2c056b5c4a8a49) --- sys/kern/kern_racct.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/kern_racct.c b/sys/kern/kern_racct.c index 43c3da0c2320..b121e24b9354 100644 --- a/sys/kern/kern_racct.c +++ b/sys/kern/kern_racct.c @@ -311,7 +311,7 @@ fixpt_t ccpu_exp[] = { /* * This function is analogical to the getpcpu() function in the ps(1) command. * They should both calculate in the same way so that the racct %cpu - * calculations are consistent with the values showed by the ps(1) tool. + * calculations are consistent with the values shown by the ps(1) tool. * The calculations are more complex in the 4BSD scheduler because of the value * of the ccpu variable. In ULE it is defined to be zero which saves us some * work. From nobody Tue May 13 12:51:00 2025 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 4Zxbts1PGDz5wnmH; Tue, 13 May 2025 12:51:01 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxbts0XFbz40sf; Tue, 13 May 2025 12:51:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140661; 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=SnbfZxzRRI2hQaTidfJNc8QzprDAK8PFNuirWkrWFOE=; b=Pgq3+28iXXIv3d/A9IEbS9eg9dU1UbEi8KqPM//s3hLGeN2L+npQ3bsWYa2XAAs96BL80g k1NziPNKHIWN8r72g/Sl20u85hwLqNhMgh9USgNsEOwgPFSkKw/Qap85WwhRO54vQmfokM 2I/elsruvqHLJUee0SKZeT7SOOQ+uRHLi5xQSstry1EH/J2lmcFF5Hv9f1hllbIsJLkuWY XgX8idzbkiTgV4AzY5sUmsFloKnLLdFa3yE122fVd4HyEeDkm0g84hir+vAP4r3Q/IRhkA YMZvkmJxVOMvijzkzSWC88x/oyBQG5IP24r5Lu0dg3AaOdTwJlA2QfJ9q0YYtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140661; 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=SnbfZxzRRI2hQaTidfJNc8QzprDAK8PFNuirWkrWFOE=; b=WhQ/V6yIYy5YLLwq7sASEWEm0Qd4irkAs8cOrKalFQeD0fhH2Ial/L11QRqALdZvJ3D2Qh BEnFqi3wNOBf700ztW9DKkdAbBOlSo8XJNRbB9UdQ2uKbIFbFePAhnVd0OkRYdL5cma27Q kH/2e7DWaOPRBgentjighvwmey8HI5/MQD8rTdvei33vC+d1eTS2UbieydXXurgwY8cUO5 hKlrQ7FC8jZ5UXza4hdwiYjrEm0L8edRc0xRerAOBRnS16a74FZg4fnRq64RRTG2MxCsu2 /r2YTrDYLesY28sRu/Az8r5+1wfY9Ij3M+GKIpvPBeJrgtfniB5qEyuY0OyL9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140661; a=rsa-sha256; cv=none; b=h3YW/rFcPdKtS1aCsxiPdL4YRvbcKeMWP7Rd3oGG33QVBODV1ulqq+HI9WxGtgiLr+n8et n/eMspyk4pq22IvGSEOCUEKUv9P1GfdgoCbwyHCg89GWggDLM4qzbY9VQMOH2S0Rg53d81 SLBOHx6Fg5i/DYPDFHNLHYh2V92IDDqI0hNnE3YMyuvMbsiTfV0mB2QwcB7JdQ7A2ETUqX 8LR+CSccOUCwDJgxQzPokhT6jAyzAObnGP0gFJhaare7coPb868uxr+Y8Pxi6RgXZqgkCt eg2YhreqYH2qcaTtf6EL2AwiTKGUTmm5hFoBFezmvPFTlMbe//lv4kW3Unp/Tg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxbts0310zn6x; Tue, 13 May 2025 12:51:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCp0gi086935; Tue, 13 May 2025 12:51:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCp0h4086923; Tue, 13 May 2025 12:51:00 GMT (envelope-from git) Date: Tue, 13 May 2025 12:51:00 GMT Message-Id: <202505131251.54DCp0h4086923@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: df4d9abbcc04 - stable/14 - aio: Fix opcode handling in aio_process_rw() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: df4d9abbcc04db5a195b98d5291ba15949fc03c5 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=df4d9abbcc04db5a195b98d5291ba15949fc03c5 commit df4d9abbcc04db5a195b98d5291ba15949fc03c5 Author: Mark Johnston AuthorDate: 2025-05-02 21:37:39 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 12:50:51 +0000 aio: Fix opcode handling in aio_process_rw() LIO_FOFFSET needs to be masked off, as it is in aio_aqueue(). Reported by: syzbot+b6e15476c91852bb2264@syzkaller.appspotmail.com Reviewed by: kib, asomers MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D50118 (cherry picked from commit ab01a5f5628eb0d334f491ff06462cff214d5f49) --- sys/kern/vfs_aio.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c index c5b0c7896a17..291ac46babef 100644 --- a/sys/kern/vfs_aio.c +++ b/sys/kern/vfs_aio.c @@ -764,10 +764,9 @@ aio_process_rw(struct kaiocb *job) long inblock_st, inblock_end; int error, opcode; - KASSERT(job->uaiocb.aio_lio_opcode == LIO_READ || - job->uaiocb.aio_lio_opcode == LIO_READV || - job->uaiocb.aio_lio_opcode == LIO_WRITE || - job->uaiocb.aio_lio_opcode == LIO_WRITEV, + opcode = job->uaiocb.aio_lio_opcode & ~LIO_FOFFSET; + KASSERT(opcode == LIO_READ || opcode == LIO_READV || + opcode == LIO_WRITE || opcode == LIO_WRITEV, ("%s: opcode %d", __func__, job->uaiocb.aio_lio_opcode)); aio_switch_vmspace(job); @@ -777,7 +776,6 @@ aio_process_rw(struct kaiocb *job) job->uiop->uio_td = td; fp = job->fd_file; - opcode = job->uaiocb.aio_lio_opcode; cnt = job->uiop->uio_resid; msgrcv_st = td->td_ru.ru_msgrcv; From nobody Tue May 13 12:51:02 2025 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 4Zxbtv15Fjz5wnyR; Tue, 13 May 2025 12:51:03 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxbtt4Nf5z40qV; Tue, 13 May 2025 12:51:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140662; 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=vbvl3piWErlcCDJ2yiEC6q1OpoTTlUlVI8e8lTrdUzg=; b=YfXGA4Xfe5C49a3RIF2OTF6I/iIdmljSR5knkamRYjxySPUHpGmbndQ6r+0H+OkhCw0ZFI ey+rF1Gcc2OoE3MUtWAarg6dzRpbeyrae+j7FFA5J5LCAuLfjw6UJxKjIGaCpKV79kfglx jw4okOS2vu+dKuZ5oiXCWpmbnsCM83VUClY9dPpmSGReUn3EWhNBo5QMlIQ+34zZ5ceYhw hWiVleiUGY+vzkLSTRTOOo6293Dto45+vWx+8f6a+pPwms7j9q+5vbtjXFueygRY33lNRv XCZxR3WwgcNTbSh/idjthn3NuKkxdrgJXXzK21fREX1DCRtFqvzlqMNz7agNjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140662; 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=vbvl3piWErlcCDJ2yiEC6q1OpoTTlUlVI8e8lTrdUzg=; b=FgnoawUcIczp7Aasr1irPvwtTJqV1DOFAge4vzfrUFwvmyr97BLVXlnNIul5zVBJvyP/d1 qs5SFnppcTZPZHY1H/BRQ5RDver+cnYtbcW8Ttsi6rZ3ZTECJ1/AcGg1tJ0jmR/BPXtkR8 5/gyaeuhXhFF5kzqnQ6Gsc2Y3TMulITmZsmWdSRZWCNBraW20KIbZYM+l+T5MoxZiIVeAc nCXq3xcHsx4PtFlBPl0eF9knB2a7mJvfbd/TEA0J9iYoYD1r1b5ca4/WWcdQ4OEapcKo1y 7301ELh8j3X2CRl9tDXufrlI97UqfqTabgITpye0GMf5D4mjHRGqEFND8NDmzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140662; a=rsa-sha256; cv=none; b=eOUDEeZiCNQnZJHQUp7aQvxYYVwcXbZmSiYuvvz9QufwT5MDR1LHak6VpngoAPStkDs4Cb FdZcasXCJp2UCTalmClwXMHA39VSaLLak44UlDPS9c20nt8aTQQEhMuW/Pa1SQsNn/ACwv 2pytBwJRBRfAevXHw8Uu1TfHIgEf30pDcvy3x5f12KmAiFy6wTuV/S7kzIpphf6NBca8+g h+/BwxGBGt1hZJjzNOxpOa12ZAIovDfcTpedbVhxj3baOL7Siyi0j5oHmkFX9GWnPgUhfr ++iHE0G7jKucdcbCaU5metp6xCDBTeAZipdNgGCDO+DfOv/c1oQGzeJckaeWFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxbtt11qmzms0; Tue, 13 May 2025 12:51:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCp2lL087091; Tue, 13 May 2025 12:51:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCp2EF087088; Tue, 13 May 2025 12:51:02 GMT (envelope-from git) Date: Tue, 13 May 2025 12:51:02 GMT Message-Id: <202505131251.54DCp2EF087088@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 6180a8eaba89 - stable/14 - tests: Serialize kern_descrip_test 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6180a8eaba89e7dcb609aa89419b9629108a6b87 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6180a8eaba89e7dcb609aa89419b9629108a6b87 commit 6180a8eaba89e7dcb609aa89419b9629108a6b87 Author: Mark Johnston AuthorDate: 2025-05-02 23:59:55 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 12:50:51 +0000 tests: Serialize kern_descrip_test It can trigger failures in unrelated tests when it modifies the maxfiles limit. MFC after: 1 week (cherry picked from commit 46adaf3642cff045b9ac87bd2e8b32124bd66ba2) --- tests/sys/kern/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index b6333c9f04f3..46977bedef98 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -16,6 +16,8 @@ ATF_TESTS_C+= kcov .endif ATF_TESTS_C+= kern_copyin ATF_TESTS_C+= kern_descrip_test +# One test modifies the maxfiles limit, which can cause spurious test failures. +TEST_METADATA.kern_descrip_test+= is_exclusive="true" ATF_TESTS_C+= fdgrowtable_test ATF_TESTS_C+= kill_zombie .if ${MK_OPENSSL} != "no" From nobody Tue May 13 12:51:03 2025 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 4Zxbtw0Chbz5wp4s; Tue, 13 May 2025 12:51:04 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxbtv2glJz40nK; Tue, 13 May 2025 12:51:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140663; 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=4qgPHxbnU0SshZGnbdk98SzrlGTrgxNSYW1N+5b2Ias=; b=iXUhcZZN3B/iuITFj5YbynFUTHVwSp9Kg+MELKz+Kuytv+fuDPMJ3WIZ5B7q3K7sSuqb/K kXnKW1kBSCO3+aR1XGGKLcWrb2NrqnVWoLODcWgv1sC+0RYoa+Ti8iYgrnAWZFQpeUbnUF vu46veExpHGTm9Bow2krpmUEv6fkmOGirsxS7wQdfsWolNtm9eM0k6SQOBVbgWFPjwGeCY 9JOLQIG69nkebhD6NWh1lCwAyMiSi/pBc6qdoodelF2So6h7MG/xwVKdOOrWG+QIRm13Kk T7RFn68m5KhgJJRuMg6FI2RWKXFv6r/1ZwA1a6UGU45TG2JqUh5E5oGfJxZt3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747140663; 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=4qgPHxbnU0SshZGnbdk98SzrlGTrgxNSYW1N+5b2Ias=; b=FE0p3KYrVjGI79i/shbTxHmopbbpo5FNxyu53GTL0ef8ArPt5ETxyD/dj7edzXdT0bLjUc 5G1fBRwmiQPlUy559Dl/E9lPUpIi/1ifxTPfUuDV7imi9N/4b7/bVMEZR9A1Xx3zNQJDBZ VC7p04oXEtj/Vy6/zMMADSa+kCAj+QQzb0F9D6wmEIJ3ja3Rhl34TKUZPlNQQrd8sTwxi4 7MOb/0fPZ9D7Bgxm8nRMQjY2t+2hKl9TCQe04xFi6WIby2sp89S0W89svEjv/fygdr1iL1 iXefzQHCWSWGqgMiFNFtUZ0+4CC0r4rwIKg6uYpNFmxq1o6tG0kvhQrSCSVwXA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747140663; a=rsa-sha256; cv=none; b=gzZRdek53ghaAnlk5dlL3A4IegZL2RWtdcSGa2Ogy9Bs5LVn0ftMJ72DzbC2lFpf8xYrLX Y14qB38LkLI6tmUk16epnaFIl5RyF0Tqbb+gfBxm4rtC7ZCQKNBWqpXbPhmJGGwN9JgNCn K/A/HiYpSFRk1EyhtR0SDCzFQ43h163/d2LJehPc7PiR5P0mgb7RsrpsxvOOt9Py7SP3it SUB3BlyF9P69bVFLVaZav93QXk3NlKIoOBOfS5mQMD+uu9Q54l58LZZ69d71kUaYPXWQU2 ElaWaleCJr1I8ynk59x8tM5toKAfHoPw20CXT/NUKt4Q47BPavOkw9ZPDR+xMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxbtv1xPRznBx; Tue, 13 May 2025 12:51:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DCp3ku087125; Tue, 13 May 2025 12:51:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DCp37v087122; Tue, 13 May 2025 12:51:03 GMT (envelope-from git) Date: Tue, 13 May 2025 12:51:03 GMT Message-Id: <202505131251.54DCp37v087122@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: bd20de7d16c7 - stable/14 - vm_fault: Defer marking COW pages valid 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bd20de7d16c768f00419602a0eb2ed93b942bf0e Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=bd20de7d16c768f00419602a0eb2ed93b942bf0e commit bd20de7d16c768f00419602a0eb2ed93b942bf0e Author: Mark Johnston AuthorDate: 2025-04-13 16:09:31 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 12:50:51 +0000 vm_fault: Defer marking COW pages valid Suppose an object O has two shadow objects S1, S2 mapped into processes P1, P2. Suppose a page resident in O is mapped read-only into P1. Now suppose that P1 writes to the page, triggering a COW fault: it allocates a new page in S1 and copies the page, then marks it valid. If the page in O was busy when initially looked up, P1 would have to release the map lock and sleep first. Then, after handling COW, P1 must re-check the map lookup because locks were dropped. Suppose the map indeed changed, so P1 has to retry the fault. At this point, the mapped page in O is shadowed by a valid page in S1. If P2 exits, S2 will be deallocated, resulting in a collapse of O into S1. In this case, because the mapped page is shadowed, P2 will free it, but that is illegal; this triggers a "freeing mapped page" assertion in invariants kernels. Fix the problem by deferring the vm_page_valid() call which marks the COW copy valid: only mark it once we know that the fault handler will succeed. It's okay to leave an invalid page in the top-level object; it will be freed when the fault is retried, and vm_object_collapse_scan() will similarly free invalid pages in the shadow object. Reviewed by: kib MFC after: 1 month Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D49758 (cherry picked from commit c98367641991019bac0e8cd55b70682171820534) --- sys/vm/vm_fault.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index dd044d27f00f..9d7c5d452a0b 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1050,14 +1050,14 @@ vm_fault_cow(struct faultstate *fs) * Oh, well, lets copy it. */ pmap_copy_page(fs->m, fs->first_m); - vm_page_valid(fs->first_m); if (fs->wired && (fs->fault_flags & VM_FAULT_WIRE) == 0) { vm_page_wire(fs->first_m); vm_page_unwire(fs->m, PQ_INACTIVE); } /* - * Save the cow page to be released after - * pmap_enter is complete. + * Save the COW page to be released after pmap_enter is + * complete. The new copy will be marked valid when we're ready + * to map it. */ fs->m_cow = fs->m; fs->m = NULL; @@ -1740,6 +1740,19 @@ found: if (hardfault) fs.entry->next_read = vaddr + ptoa(ahead) + PAGE_SIZE; + /* + * If the page to be mapped was copied from a backing object, we defer + * marking it valid until here, where the fault handler is guaranteed to + * succeed. Otherwise we can end up with a shadowed, mapped page in the + * backing object, which violates an invariant of vm_object_collapse() + * that shadowed pages are not mapped. + */ + if (fs.m_cow != NULL) { + KASSERT(vm_page_none_valid(fs.m), + ("vm_fault: page %p is already valid", fs.m_cow)); + vm_page_valid(fs.m); + } + /* * Page must be completely valid or it is not fit to * map into user space. vm_pager_get_pages() ensures this. From nobody Tue May 13 14:11:48 2025 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 4Zxdh430WTz5vPhf; Tue, 13 May 2025 14:11:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxdh42XG2z3RL7; Tue, 13 May 2025 14:11:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747145508; 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=X6ViER4UIu2gbvVHkKTKLsgRNOzIzqhVUL/HgMFYGRs=; b=I6R2IUNdL5KTeADcPko4achgkNNVzYxNHpHz/4zaY+7uRlFAaPoKQRuFcvN/karU0H2+jB VvynOF8OFFK5PYcZov+wHrTfhKZpxVSOZI0291rBrYzLidc/Mg8h0ROdV498VeSoU+YCk/ tn7qWY6AoAkt7U5EBl2EqjDL6cYNWmTAqbNr1aKXtrSCn0l4fAsADCoxA4N+T9+VW1AkH0 8b5oip+BQyLvBqsJFlpTb6p51qEn1QMwjsv2HpSNIk4r2HrmJV8EcIF7Lk9536AfQ60qCu kkjJ8wlvcy2eOLzxflFT3wm2VlQxnDNTbrr1/ZXa66VMG7Bl4WHIkQIDcMGijw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747145508; 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=X6ViER4UIu2gbvVHkKTKLsgRNOzIzqhVUL/HgMFYGRs=; b=nuXxU+Td3g1iHxWeff3sIuCZGoiE/W2hGpO7GncFZXSPX3e0ZHEaQSoSxblPnwtuO0QkK3 TZj5uSeNARCzFw9YFTS9NNgWwliAIkAJsbTarRJcVHXjzOVdyP4PmOAq29OjyGSeOXO/un 5D7DfiYFXU+2mLcX7bRwWZOk4fnaZrjEsy8neW9EzAhqcizHQCcxhnIeuLUw3QiiE4Q5EC eTgd6jXePfJIAqY+FrIcUAStgc7Yh3w8rf2R0WDJ77q38TUT1vY9wCMTKhbPhLb1Cbct9A 1PVnrPTTdGXxHsErJ5+PxtmskbV19XmXEiDLDPW6uti0LPpkzUtCz++wm9iF1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747145508; a=rsa-sha256; cv=none; b=V/oKsS5Oe3CDnIjT3BmlUeNzM0H24SrnQ6w1jhLZdWXORdhutX5N2TZkdfda+WYICgFk+u uVvkOKmA7S2f2r+tQMvshdf1ZnPKqEvANPmanyhx1mhrgsuaKaKt8B6SN5c3uvjJUTPz9p eNOzHZJSYzPG+2LrP56DwwMSFH515i4iD9wCFVVlNZub68ToltDiI5gKo53Ae6V+0t2NPS /Y9SZMKNG5R7DNfTYXXRDGuqlgfDgHRsB5CdsAfPPdNO0t3REbiFpEIObDc/QpAgXVmn7z MXy2wR6kou7g9vo+TAkcLCoMNm5DWcy6ZLlGD0hWzl+mpuC9Dr/85wy6cQaWKw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxdh424zPzqGj; Tue, 13 May 2025 14:11:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DEBmCj040833; Tue, 13 May 2025 14:11:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DEBmk3040830; Tue, 13 May 2025 14:11:48 GMT (envelope-from git) Date: Tue, 13 May 2025 14:11:48 GMT Message-Id: <202505131411.54DEBmk3040830@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 2befd0658832 - main - cxgbe nic TLS: Fix requests with 8 bytes of immediate data padding 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2befd06588325c541d400fcc4915a1adfd1c7d17 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=2befd06588325c541d400fcc4915a1adfd1c7d17 commit 2befd06588325c541d400fcc4915a1adfd1c7d17 Author: John Baldwin AuthorDate: 2025-05-13 13:57:18 +0000 Commit: John Baldwin CommitDate: 2025-05-13 14:05:09 +0000 cxgbe nic TLS: Fix requests with 8 bytes of immediate data padding Requests whose immediate data do not end on a 16-byte boundary are padded with zeroes before the next WR command. Since ULP commands are 8 byte aligned, if there are more than 8 bytes of padding, the immediate data is padded with zeroes up to an 8 byte boundary and the last 8 bytes contain a ULP NOOP command. In the case of exactly 8 bytes of padding, the result should be that no zeroes are inserted, only the ULP NOOP. However, the code was actually inserting 8 bytes of zero padding followed by the ULP NOOP causing the following real command to be misaligned. Fix this by skipping the zero padding if there exactly 8 padding bytes. Reported by: Sony Arpita Das @ Chelsio Sponsored by: Chelsio Communications --- sys/dev/cxgbe/crypto/t6_kern_tls.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/dev/cxgbe/crypto/t6_kern_tls.c b/sys/dev/cxgbe/crypto/t6_kern_tls.c index 167eb77da942..897773d2d867 100644 --- a/sys/dev/cxgbe/crypto/t6_kern_tls.c +++ b/sys/dev/cxgbe/crypto/t6_kern_tls.c @@ -1793,9 +1793,11 @@ ktls_write_tls_wr(struct tlspcb *tlsp, struct sge_txq *txq, void *dst, } if (imm_len % 16 != 0) { - /* Zero pad to an 8-byte boundary. */ - memset(out, 0, 8 - (imm_len % 8)); - out += 8 - (imm_len % 8); + if (imm_len % 8 != 0) { + /* Zero pad to an 8-byte boundary. */ + memset(out, 0, 8 - (imm_len % 8)); + out += 8 - (imm_len % 8); + } /* * Insert a ULP_TX_SC_NOOP if needed so the SGL is From nobody Tue May 13 15:55:52 2025 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 4Zxh091WfTz5vYC2; Tue, 13 May 2025 15:55:53 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxh083V32z3JN5; Tue, 13 May 2025 15:55:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747151752; 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=ifn+1yhAe4eZcVHonyk2ncT4iXrxESDMZqukxgiyzuI=; b=AjIzh3XXuQPImno3UK49yXW5wGdViimlS5PQqhnsKMarryCh+xg1ICkMllipz80F2JQRUz 9Lkw3kVIvaRTfcSzjagUHBCrPxFI2TN6tu7z/Gqu3DcFpZRFlNNzFnlZlRmUi6TgJok2EW dX8Ecm4Ne1QWOMFz5relRCaQsVFzdhWoofhcIRBcusXvJW4ZVVzjqC4VBpeKJu+o1CX4I+ eJhDQOyom2J+B9R6xezufG2QddFFBe/OH7TXDA+PwQ7Vm/nCwsVn54L4PMuC9goe7KZYfM xVK7niKjoHTlUr6UGimrsUbF9ZtfzFMHvD3rS0mFHlDdU6M0L3iKn1TBhgMS5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747151752; 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=ifn+1yhAe4eZcVHonyk2ncT4iXrxESDMZqukxgiyzuI=; b=eI7GoqOiVDkEG6WZqcV6uWJU8V5zj/gdS22l4m3iAr9nyQ41RPprTkvGU7c+OqOcjbPBeJ W1qyzoHIgeTdTb/vNZaRBMfbj6WEcSlFpWnMtBTb52mFjP+7UJDZXliHxk/uSl3s/ZlRbO f6M70gHLVKYqdecA3qbLOxRcqyGouiiVoQ8f7ntr1pX1ovaRw2CIxPMWMIEq5Rc3TJduEb /O6tlAxdYjhVGhpZAFNNLYiW+qbuwZnCPJOqthvLhjBey5Sd/HmVRYkFY2nC6c8ABjAf9l +J+0kYKq1oG8QNbQ+6PqM/bM3xNhDDUoWhASp/d/6ttAqvGo6/h2ZKZ921/DBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747151752; a=rsa-sha256; cv=none; b=l5yRFrd6eMWIbJElqDCyspztsc4IbASH281hkV174wI+pLW/RWDfXGSRb15ljIcAunjSrw KClYFrR11ZoKJvG7XIGSsRGKluDegtJRplUo/kdCp/ZhC+7i1OicxHwS3lVr8W+pNBXr2V gMaL2zbOKxiTTNYpQn4fonBsE11hOTMzDbYNbdEx38vMcjciB2iubcGiHNFaHuQxhRK5TJ AFPPew1b2KA7ySdmVh7DYEJoHaTTWaeceOdNWe2JX2CIjmBdgVanyH0AWMDqW/BsDR8axK aNvC5y9D4pkvWZ+9GTuVL9qEzKpi9DhwCTr3MDIna4q+c1NIdYxgQM8mb54vRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxh0830qMztN8; Tue, 13 May 2025 15:55:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DFtqsh030464; Tue, 13 May 2025 15:55:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DFtqxQ030461; Tue, 13 May 2025 15:55:52 GMT (envelope-from git) Date: Tue, 13 May 2025 15:55:52 GMT Message-Id: <202505131555.54DFtqxQ030461@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ravi Pokala Subject: git: f0d1e0026891 - stable/14 - amdsmn(4), amdtemp(4): Add support for AMD Family 1Ah (Zen5) CPUs 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rpokala X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f0d1e002689130a8b34c91c80002cc1fce4dd8ae Auto-Submitted: auto-generated The branch stable/14 has been updated by rpokala: URL: https://cgit.FreeBSD.org/src/commit/?id=f0d1e002689130a8b34c91c80002cc1fce4dd8ae commit f0d1e002689130a8b34c91c80002cc1fce4dd8ae Author: Ravi Pokala AuthorDate: 2025-05-10 06:26:42 +0000 Commit: Ravi Pokala CommitDate: 2025-05-13 15:53:44 +0000 amdsmn(4), amdtemp(4): Add support for AMD Family 1Ah (Zen5) CPUs I found the '1AH_MxxH_ROOT' PCI device IDs in the Linux "AMD K8 Northbridge" driver [1][5]. Since Family 19h (Zen3, Zen4) uses the same registers as Family 17h (Zen1, Zen2), I tried using those same registers for Family 1Ah (Zen5) as well, and they worked. I pulled the 1Ah model ranges from Linux as well [2][3][4][6]. Added some additional logging under 'bootverbose', and used a local variable and macro for the stepping, rather than repeatedly using the mask directly. Consistently report the CPUID (family, model, stepping) using two, zero-padded, un-prefixed, uppercase nybbles, with an 'h' suffix. This is the format used in documentation and in Linux. My own testing with various models of Zen4 EPYC 9xx4 ("Genoa") shows that their CPUID models are in the range 0x10 .. 0x1f. Similar testing with various models of Zen5 EPYC 9xx5 ("Turin") shows that their CPUID models are in the range 0x00 ... 0x2f. [1] 2023-08-10: https://github.com/torvalds/linux/commit/c640166 [2] 2024-01-23: https://github.com/torvalds/linux/commit/3e4147f [3] 2024-01-25: https://github.com/torvalds/linux/commit/b9328fd [4] 2024-04-24: https://github.com/torvalds/linux/commit/2718a7f [5] 2024-07-28: https://github.com/torvalds/linux/commit/59c3400 [6] 2024-07-30: https://github.com/torvalds/linux/commit/bf5641e Sponsored by: Vdura MFC after: 3 days Reviewed by: delphij Differential Revision: https://reviews.freebsd.org/D50278 (cherry picked from commit 2a042fab4f91a525daa6255b69892fb434c62831) --- sys/dev/amdsmn/amdsmn.c | 26 +++++++++++++++++++++++-- sys/dev/amdtemp/amdtemp.c | 49 +++++++++++++++++++++++++++++++++-------------- 2 files changed, 59 insertions(+), 16 deletions(-) diff --git a/sys/dev/amdsmn/amdsmn.c b/sys/dev/amdsmn/amdsmn.c index 262adcc4bff3..b4cdd8c96549 100644 --- a/sys/dev/amdsmn/amdsmn.c +++ b/sys/dev/amdsmn/amdsmn.c @@ -25,7 +25,7 @@ */ /* - * Driver for the AMD Family 15h and 17h CPU System Management Network. + * Driver for the AMD Family 15h, 17h, 19h, 1Ah CPU System Management Network. */ #include @@ -63,6 +63,10 @@ #define PCI_DEVICE_ID_AMD_19H_M40H_ROOT 0x14b5 #define PCI_DEVICE_ID_AMD_19H_M60H_ROOT 0x14d8 /* Also F1AH M40H */ #define PCI_DEVICE_ID_AMD_19H_M70H_ROOT 0x14e8 +#define PCI_DEVICE_ID_AMD_1AH_M00H_ROOT 0x153a +#define PCI_DEVICE_ID_AMD_1AH_M20H_ROOT 0x1507 +#define PCI_DEVICE_ID_AMD_1AH_M60H_ROOT 0x1122 + struct pciid; struct amdsmn_softc { @@ -130,6 +134,24 @@ static const struct pciid { .amdsmn_addr_reg = F17H_SMN_ADDR_REG, .amdsmn_data_reg = F17H_SMN_DATA_REG, }, + { + .amdsmn_vendorid = CPU_VENDOR_AMD, + .amdsmn_deviceid = PCI_DEVICE_ID_AMD_1AH_M00H_ROOT, + .amdsmn_addr_reg = F17H_SMN_ADDR_REG, + .amdsmn_data_reg = F17H_SMN_DATA_REG, + }, + { + .amdsmn_vendorid = CPU_VENDOR_AMD, + .amdsmn_deviceid = PCI_DEVICE_ID_AMD_1AH_M20H_ROOT, + .amdsmn_addr_reg = F17H_SMN_ADDR_REG, + .amdsmn_data_reg = F17H_SMN_DATA_REG, + }, + { + .amdsmn_vendorid = CPU_VENDOR_AMD, + .amdsmn_deviceid = PCI_DEVICE_ID_AMD_1AH_M60H_ROOT, + .amdsmn_addr_reg = F17H_SMN_ADDR_REG, + .amdsmn_data_reg = F17H_SMN_DATA_REG, + }, }; /* @@ -217,7 +239,7 @@ amdsmn_probe(device_t dev) default: return (ENXIO); } - device_set_descf(dev, "AMD Family %xh System Management Network", + device_set_descf(dev, "AMD Family %02Xh System Management Network", family); return (BUS_PROBE_GENERIC); diff --git a/sys/dev/amdtemp/amdtemp.c b/sys/dev/amdtemp/amdtemp.c index cad16c80ee17..1305337112b6 100644 --- a/sys/dev/amdtemp/amdtemp.c +++ b/sys/dev/amdtemp/amdtemp.c @@ -118,6 +118,9 @@ struct amdtemp_softc { #define DEVICEID_AMD_HOSTB19H_M40H_ROOT 0x14b5 #define DEVICEID_AMD_HOSTB19H_M60H_ROOT 0x14d8 /* Also F1AH M40H */ #define DEVICEID_AMD_HOSTB19H_M70H_ROOT 0x14e8 +#define DEVICEID_AMD_HOSTB1AH_M00H_ROOT 0x153a +#define DEVICEID_AMD_HOSTB1AH_M20H_ROOT 0x1507 +#define DEVICEID_AMD_HOSTB1AH_M60H_ROOT 0x1122 static const struct amdtemp_product { uint16_t amdtemp_vendorid; @@ -146,6 +149,9 @@ static const struct amdtemp_product { { VENDORID_AMD, DEVICEID_AMD_HOSTB19H_M40H_ROOT, false }, { VENDORID_AMD, DEVICEID_AMD_HOSTB19H_M60H_ROOT, false }, { VENDORID_AMD, DEVICEID_AMD_HOSTB19H_M70H_ROOT, false }, + { VENDORID_AMD, DEVICEID_AMD_HOSTB1AH_M00H_ROOT, false }, + { VENDORID_AMD, DEVICEID_AMD_HOSTB1AH_M20H_ROOT, false }, + { VENDORID_AMD, DEVICEID_AMD_HOSTB1AH_M60H_ROOT, false }, }; /* @@ -167,7 +173,7 @@ static const struct amdtemp_product { #define AMDTEMP_15H_M60H_REPTMP_CTRL 0xd8200ca4 /* - * Reported Temperature, Family 17h + * Reported Temperature, Family 17h - 1Ah * * According to AMD OSRR for 17H, section 4.2.1, bits 31-21 of this register * provide the current temp. bit 19, when clear, means the temp is reported in @@ -295,21 +301,33 @@ amdtemp_identify(driver_t *driver, device_t parent) static int amdtemp_probe(device_t dev) { - uint32_t family, model; + uint32_t family, model, stepping; - if (resource_disabled("amdtemp", 0)) + if (resource_disabled("amdtemp", 0)) { + if (bootverbose) + device_printf(dev, "Resource disabled\n"); return (ENXIO); - if (!amdtemp_match(device_get_parent(dev), NULL)) + } + if (!amdtemp_match(device_get_parent(dev), NULL)) { + if (bootverbose) + device_printf(dev, "amdtemp_match() failed\n"); return (ENXIO); + } family = CPUID_TO_FAMILY(cpu_id); model = CPUID_TO_MODEL(cpu_id); + stepping = CPUID_TO_STEPPING(cpu_id); switch (family) { case 0x0f: - if ((model == 0x04 && (cpu_id & CPUID_STEPPING) == 0) || - (model == 0x05 && (cpu_id & CPUID_STEPPING) <= 1)) + if ((model == 0x04 && stepping == 0) || + (model == 0x05 && stepping <= 1)) { + if (bootverbose) + device_printf(dev, + "Unsupported (Family=%02Xh, Model=%02Xh, Stepping=%02Xh)\n", + family, model, stepping); return (ENXIO); + } break; case 0x10: case 0x11: @@ -324,7 +342,8 @@ amdtemp_probe(device_t dev) default: return (ENXIO); } - device_set_desc(dev, "AMD CPU On-Die Thermal Sensors"); + device_set_descf(dev, "AMD Family %02Xh CPU On-Die Thermal Sensors", + family); return (BUS_PROBE_GENERIC); } @@ -485,7 +504,7 @@ amdtemp_attach(device_t dev) needsmn = true; break; default: - device_printf(dev, "Bogus family 0x%x\n", family); + device_printf(dev, "Bogus family %02Xh\n", family); return (ENXIO); } @@ -494,7 +513,7 @@ amdtemp_attach(device_t dev) device_get_parent(dev), "amdsmn", -1); if (sc->sc_smn == NULL) { if (bootverbose) - device_printf(dev, "No SMN device found\n"); + device_printf(dev, "No amdsmn(4) device found\n"); return (ENXIO); } } @@ -510,7 +529,7 @@ amdtemp_attach(device_t dev) device_printf(dev, "Erratum 319: temperature measurement may be inaccurate\n"); if (bootverbose) - device_printf(dev, "Found %d cores and %d sensors.\n", + device_printf(dev, "Found %d cores and %d sensors\n", sc->sc_ncores, sc->sc_ntemps > 1 ? sc->sc_ntemps * sc->sc_ncores : 1); @@ -858,7 +877,7 @@ amdtemp_probe_ccd_sensors17h(device_t dev, uint32_t model) break; default: device_printf(dev, - "Unrecognized Family 17h Model: %02xh\n", model); + "Unrecognized Family 17h Model: %02Xh\n", model); return; } @@ -878,7 +897,7 @@ amdtemp_probe_ccd_sensors19h(device_t dev, uint32_t model) maxreg = 8; _Static_assert((int)NUM_CCDS >= 8, ""); break; - case 0x10 ... 0x1f: + case 0x10 ... 0x1f: /* Zen4 EPYC "Genoa" */ sc->sc_temp_base = AMDTEMP_ZEN4_10H_CCD_TMP_BASE; maxreg = 12; _Static_assert((int)NUM_CCDS >= 12, ""); @@ -892,7 +911,7 @@ amdtemp_probe_ccd_sensors19h(device_t dev, uint32_t model) break; default: device_printf(dev, - "Unrecognized Family 19h Model: %02xh\n", model); + "Unrecognized Family 19h Model: %02Xh\n", model); return; } @@ -906,14 +925,16 @@ amdtemp_probe_ccd_sensors1ah(device_t dev, uint32_t model) uint32_t maxreg; switch (model) { + case 0x00 ... 0x2f: /* Zen5 EPYC "Turin" */ case 0x40 ... 0x4f: /* Zen5 Ryzen "Granite Ridge" */ + case 0x60 ... 0x7f: /* ??? */ sc->sc_temp_base = AMDTEMP_ZEN4_CCD_TMP_BASE; maxreg = 8; _Static_assert((int)NUM_CCDS >= 8, ""); break; default: device_printf(dev, - "Unrecognized Family 1ah Model: %02xh\n", model); + "Unrecognized Family 1Ah Model: %02Xh\n", model); return; } From nobody Tue May 13 17:01:38 2025 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 4ZxjS22pFjz5vdGC; Tue, 13 May 2025 17:01:38 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxjS21ByMz3pyx; Tue, 13 May 2025 17:01:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747155698; 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=CiRt8QCaXjaFox+2fmjr5zJLDyX/qnL3N3T32Y2ouaI=; b=oQ42SleGn2X3TTcgdeaB0Hgmc+T9QwcDt3LFoRs5EQSGIoDqXGszhx4sTIeJd0/pJ0T0y7 zDhjbWyESYbBkPGkJiYWM3KxQtlP3YzIElIu/aNPN1AIsnSme1q2a0aUQEywR+TOXqYw0C wsrZ5qzhbyZ5DW9OTp3OH4IiiDhyvFYSNSNjkcgyguWCXlsXLyBQuLbuxFcBWsL6NUEzBP pRWt158JIUUc0gDlYRJSc3ex4/qofNs6U8GZdAMCW4CZ28leqgWSS3BpFi5MhJSB8c37TO jwtXA0sIC9VrY4U4/l/nGIGw0eC41Rrll52oCfdB60c1Qrk6bEun49YGeXoMNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747155698; 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=CiRt8QCaXjaFox+2fmjr5zJLDyX/qnL3N3T32Y2ouaI=; b=M/0zy0JLpqmqpQckcwAIGs7JyVdtDi/wpuDTuW33wkJWy4Wqr/uau4iFf5tZlgcGj9p/on 4th4hWerdiJR/s4/ECQVfrhCWrWVJFzJ42ynAXXZTq5Tj3npf5DQWSVzxYJb6YVuk4nY0X e/1uw5JsnSFhKVLBbxrwteoRdEBV45ZnKhyuqzB5mKJWC/7H/HRTbRqTqDQa55nqiqwWFT AbOmylyepPe2LKW/spC7QauivkPaocZSB8MtdNGFvFN4z3ojeUyHGQ6spA9t2FKmofQFau Vm+KgZtk/SsB2dmpicIO/MMS8lAHyEsW8WYym4/MOf1DDFeJdkyTvux2ZgYVAA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747155698; a=rsa-sha256; cv=none; b=iPqy6D5Ea/fx3axHwfYyX67XaiXxtcWri3xuVzjKRs1cKp9fR3Es+L7gN77Ee3yWsMjoCd xJnN8VrZhkqVc5Ib0MzC1ymNmUJdeMoiyxzYANtJC4L0NeerluJp6vIFBD4E956Bwbbkej dtmi50VfSErLiVtiw8m7lFvR7Ejy1auoNsAuLikIxRBWOUZEeznz1eMd1d+6d3i6fSV5++ yy8mWdjUGRRs/AwiqmE9oHljtGjproFdGboZiI7K0MCGersahtyN5yhp4fXWvmByZysZv+ sbMdBKRSvR/v6Z1vQUBxfvQndINn58U45On7ePcrk3VBDMjJUpxIBQ9ckjKifw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxjS20nQlzvPy; Tue, 13 May 2025 17:01:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DH1cFF059177; Tue, 13 May 2025 17:01:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DH1cre059174; Tue, 13 May 2025 17:01:38 GMT (envelope-from git) Date: Tue, 13 May 2025 17:01:38 GMT Message-Id: <202505131701.54DH1cre059174@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 21040b3cfa02 - main - release: Exclude release/obj from the src tarball 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 21040b3cfa02bf09ae2307a11ddc6b18e6a83c49 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=21040b3cfa02bf09ae2307a11ddc6b18e6a83c49 commit 21040b3cfa02bf09ae2307a11ddc6b18e6a83c49 Author: Ed Maste AuthorDate: 2025-05-09 00:46:53 +0000 Commit: Ed Maste CommitDate: 2025-05-13 16:39:12 +0000 release: Exclude release/obj from the src tarball A user may run `make objlink` in release/ in order to have easy access to built release artifacts. We don't want this to appear in src.txz. Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50262 --- release/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/release/Makefile b/release/Makefile index 913fc8f2b876..8ca006e75f6a 100644 --- a/release/Makefile +++ b/release/Makefile @@ -157,7 +157,8 @@ src.txz: mkdir -p ${DISTDIR}/usr ln -fs ${WORLDDIR} ${DISTDIR}/usr/src ( cd ${DISTDIR} && ${TAR_CMD} cLvf - --exclude .svn --exclude .zfs \ - --exclude .git --exclude @ --exclude usr/src/release/dist usr/src | \ + --exclude .git --exclude @ --exclude usr/src/release/dist \ + --exclude usr/src/release/obj usr/src | \ ${XZ_CMD} > ${.OBJDIR}/src.txz ) ports.txz: From nobody Tue May 13 17:01:39 2025 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 4ZxjS34PK1z5vd7F; Tue, 13 May 2025 17:01:39 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxjS32HHXz3pwR; Tue, 13 May 2025 17:01:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747155699; 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=MUEac+2POf4Ol5rRJDxww0HAQSEUxLR2gMXefmYqMpg=; b=hKxzu2vURUu/NIXVSxJ1000JPUXPJS58JaFTvkc0AhuL3uA5aCVEYfUtiPHvhiB+xP0nge 97jUXmGX1hL6wmJmQ7QBdeB4E1pzDPtjLotVrYIxdWv8hwWSptwz0M5ZbtuQaDP8SNidqk voqk1Klrg3GSP4o2eatiWEB4a4+4v3dT0fWqfvR7TXBg2hQPofgx/pNOpwXqVvXuzNf3H0 BIgRUA292WEMl9T0StYoIfDzoQzmW0jcqHAd9gn094xUR23RKZPth6X0pbPazEcA++hwZZ m4I3yxxWq/B2LpiV/3hWN2NAwAx7i2dHviij66ddI8cFeiLPaU5nCGt4v1D+qA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747155699; 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=MUEac+2POf4Ol5rRJDxww0HAQSEUxLR2gMXefmYqMpg=; b=u/c3gGET3KdixYiuiWTC6EVO2/wIzN8Ldn3gNAODdnNjX99giNrWgdw9qi6i2KsryNl1Af JGsPRswfiuoOfQHZw/H+CfFWZPsFzuaVAdu0h84OvXArlvyZ4wlL3J8WQiRqm3QH6BLXqS dCJflPjfHhp9fgvNG6lvTn99/ej/QRBXlvdLUBq7bZNzlYIKjOCgsjUyKpPzbrQF2gQlyY l+WIpCz3Mwegvg2ZdXoDRqQdrLtRX1uXdTST+aJpBv8/TaVoD3zlz3dbyTz5LXBWeZsOOY 99R7KRcaVRFhRrr2YGccyROIIbBb/UXOEfCNEF6Y1eLo3Lbi4dwDwhruP6evEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747155699; a=rsa-sha256; cv=none; b=LhZ1+yA3fBCV3648ycIZrvHSabZTSOJko6LGo3OnysHhm3heFVz9Ne79wI7MLCBatmVV8w /CWedU8sxKsXd3E1x3YkLupNC9M9oTRiB4UzWp0uCOsbDipAj09j4LqwHazdqOxYNfVsEE Afj7kRasZy+nZfFm02yzyuuwWjO7iXXwSIP/5lPd1XAyTZX4+hvAbAEpkuaDDDSWrIRZkb VX1at5ru3FsiSqzXPWDmsgC/2mtTANgPBvXbN3J/mj+x4eiCFPl6GBfcF1nmp8/AuB9Y04 FyYFdSJC0BmnLB5SOqOqamk+0mCgeqsrzWqPXJ+Nkwx6LpsWRTm1+TOQBD9HLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxjS31k5Rzvhk; Tue, 13 May 2025 17:01:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DH1daq059213; Tue, 13 May 2025 17:01:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DH1dll059210; Tue, 13 May 2025 17:01:39 GMT (envelope-from git) Date: Tue, 13 May 2025 17:01:39 GMT Message-Id: <202505131701.54DH1dll059210@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 9a354a41be9a - main - release: Use "debug info" in dist set descriptions 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9a354a41be9a40c3c0a16cc20f4009d3b31679cc Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=9a354a41be9a40c3c0a16cc20f4009d3b31679cc commit 9a354a41be9a40c3c0a16cc20f4009d3b31679cc Author: Ed Maste AuthorDate: 2025-05-08 17:39:41 +0000 Commit: Ed Maste CommitDate: 2025-05-13 16:59:21 +0000 release: Use "debug info" in dist set descriptions "Kernel (Debugging)" could suggest that this is a debugging kernel -- an alternative to a "Kernel (Standard)". These dist sets contain the standalone debug info files for the kernel, base system, and other components. Change the MANIFEST descriptions (used by bsdinstall's dist selection menu) to use "debug info". Reviewed by: brooks Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50254 --- release/scripts/make-manifest.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/release/scripts/make-manifest.sh b/release/scripts/make-manifest.sh index 8105d0023d40..738aa215f409 100755 --- a/release/scripts/make-manifest.sh +++ b/release/scripts/make-manifest.sh @@ -16,11 +16,11 @@ lib32="32-bit compatibility libraries" tests="Test suite" desc_base="${base} (MANDATORY)" -desc_base_dbg="${base} (Debugging)" +desc_base_dbg="${base} debug info" desc_kernel="${kernel} (MANDATORY)" -desc_kernel_dbg="${kernel} (Debugging)" +desc_kernel_dbg="${kernel} debug info" desc_kernel_alt="Alternate ${kernel}" -desc_kernel_alt_dbg="Alternate ${kernel} (Debugging)" +desc_kernel_alt_dbg="Alternate ${kernel} debug info" desc_lib32="${lib32}" desc_lib32_dbg="${lib32} (Debugging)" desc_ports="${ports}" From nobody Tue May 13 17:16:14 2025 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 4Zxjmt3Rtlz5vfpY; Tue, 13 May 2025 17:16:14 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxjmt2kXVz3vlf; Tue, 13 May 2025 17:16:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747156574; 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=ZO+AHgcp23jWsmSFHUTV7//yzUfxXsfkqi/S1yxNQNs=; b=a+XenligANXM1zC84yHg4mi9rlYOcHmkTZD03ivABaSAXLbDnJ4fNNvXEHc1QO6flRVJ3a vnveYnVy5LLHei01tbdLwF7uo4upTp4OSq/OFec+DpL6Uwk7LFsIq3f9J18djtNFDMhw67 GKqu+CwVeaM/itE/kzvAvYNLrOUjTdF0262XK7AquGzFVDcKyhqx7sPT/XFS3d87sK64rn GJhTQqnausLXODWykB8hiWj8Lpi045lvvGnbnky0OpCNq2KWEoNnVXY5J7JpuZ6CYf0bnr U5eE8YZQr3S02VJAbYCrhdOFudGbV+/ijCEoe0BFy0bBOBbuBpmCbuzKPhWBuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747156574; 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=ZO+AHgcp23jWsmSFHUTV7//yzUfxXsfkqi/S1yxNQNs=; b=ZjFW5hfePrzYaEZgi/pV1TrpUbHiaveKKPunUc2RfnG5f3pc1Wna8gYtjV5TF2hhsjdki7 Prw2pFPeUXLMfd+4y4asWGU2tptG/uBl4F48vF0Y4jUAAfM4jd82dKVRxSAqwPMxIixpAB fQai1Eup7Ooatgn4ECQI4E9Bkq1lY+L5oaocyWUWanC6/aDwo/lfO+U5qzRrVbBjLtNJQh Dwhce+wt1sWBwB34cDgIwfpiC4sZHaNTjhO2ANr4e9ZTEGmfZ3Wr08TMA5wm4aMiby83I1 Aw+GVC17RXbh+X6++lMgE+K3yslps0ciAKMau+VF18HVHcNZdgB2vyoUmiK/EQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747156574; a=rsa-sha256; cv=none; b=Lz/g5oM4PbAJYuLJCn79qOh6m5XYE2k2Np4d9dJKkUmkF9N9jGu+M6ENXIRZWFcPpBuq8n 4vNa72WNCDN9stzB7+o6B9LHp2Gun2WAKOXwsk6nWY31twqhFfQOucmUN4Eno2niH6nCty cwXCjTvzEKA56lRy2iW+TJ3xxjA94d1SIxqtiJEvlCsqK7vh5POe6FthAtShJwiV2N2FIt cIM3vRcTiauFcNttOIgsiHt2R9POQ/m9iSKYmNWAFqWvwaZDsE4ZLku7N+gyuX7DqHkdGp fpMulEvWQDylOEHdHQD671kTjKLJ6B+5nwWNn/awtB60H7wff6KzbKJtfKas0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxjmt2KSvzwQC; Tue, 13 May 2025 17:16:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DHGE5k081600; Tue, 13 May 2025 17:16:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DHGE3C081597; Tue, 13 May 2025 17:16:14 GMT (envelope-from git) Date: Tue, 13 May 2025 17:16:14 GMT Message-Id: <202505131716.54DHGE3C081597@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 89cf4b85db40 - main - release: Use NO_ROOT mode for dvd1.iso 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 89cf4b85db4000ba23bbff73be5dfdc0abb9cf28 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=89cf4b85db4000ba23bbff73be5dfdc0abb9cf28 commit 89cf4b85db4000ba23bbff73be5dfdc0abb9cf28 Author: Ed Maste AuthorDate: 2024-12-31 14:47:33 +0000 Commit: Ed Maste CommitDate: 2025-05-13 17:01:53 +0000 release: Use NO_ROOT mode for dvd1.iso All ISO/memstick images are now built without requiring root. Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50269 --- release/Makefile | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/release/Makefile b/release/Makefile index 8ca006e75f6a..4f4d0f483444 100644 --- a/release/Makefile +++ b/release/Makefile @@ -72,9 +72,7 @@ VOLUME_LABEL= ${REVISION:C/[.-]/_/g}_${BRANCH:C/[.-]/_/g}_${TARGET_ARCH} .if ${.MAKE.OS} == "FreeBSD" # For installing packages into the release media. -.if defined(NO_ROOT) PKG_ENV+= INSTALL_AS_USER=yes -.endif PKG_ENV+= ASSUME_ALWAYS_YES=yes PKG_ARGS+= -o METALOG=METALOG PKG_ARGS+= -r ${.TARGET} -o REPOS_DIR=${.CURDIR}/pkg_repos @@ -261,12 +259,10 @@ dvd: packagesystem for dist in MANIFEST $$(ls *.txz | grep -v container); \ do cp $${dist} ${.TARGET}/usr/freebsd-dist; \ done -.if defined(NO_ROOT) echo "./usr/freebsd-dist type=dir uname=root gname=wheel mode=0755" >> ${.TARGET}/METALOG for dist in MANIFEST $$(ls *.txz | grep -v container); \ do echo "./usr/freebsd-dist/$${dist} type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG; \ done -.endif .if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG)) # Install packages onto release media. ${PKG_INSTALL} pkg || true @@ -282,13 +278,11 @@ dvd: packagesystem echo kernels_autodetect=\"NO\" >> ${.TARGET}/boot/loader.conf echo loader_menu_multi_user_prompt=\"Installer\" >> ${.TARGET}/boot/loader.conf cp ${.CURDIR}/rc.local ${.TARGET}/etc -.if defined(NO_ROOT) echo "./etc/resolv.conf type=link uname=root gname=wheel mode=0644 link=/tmp/bsdinstall_etc/resolv.conf" >> ${.TARGET}/METALOG echo "./etc/rc.conf type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG echo "./etc/sysctl.conf type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG echo "./boot/loader.conf type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG echo "./etc/rc.local type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG -.endif touch ${.TARGET} disc1-disc1 disc1-memstick: disc1 @@ -304,7 +298,7 @@ disc1.iso: disc1-disc1 cd disc1-disc1 && sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_CD ../${.TARGET} ./METALOG ${XTRADIR} dvd1.iso: dvd pkg-stage - cd dvd && sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_DVD ../${.TARGET} .${NO_ROOT:D/METALOG} ${XTRADIR} + cd dvd && sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_DVD ../${.TARGET} ./METALOG ${XTRADIR} bootonly.iso: bootonly-bootonly cd bootonly-bootonly && sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_BO ../${.TARGET} ./METALOG ${XTRADIR} @@ -324,7 +318,7 @@ packagesystem: ${DISTRIBUTIONS} pkg-stage: dvd .if !defined(NOPKG) || empty(NOPKG) env PORTSDIR=${PORTSDIR} REPOS_DIR=${.CURDIR}/pkg_repos/ \ - sh ${.CURDIR}/scripts/pkg-stage.sh ${NO_ROOT:D-N} + sh ${.CURDIR}/scripts/pkg-stage.sh -N mkdir -p ${.OBJDIR}/dvd/packages/repos/ cp ${.CURDIR}/scripts/FreeBSD_install_cdrom.conf \ ${.OBJDIR}/dvd/packages/repos/ From nobody Tue May 13 17:21:14 2025 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 4Zxjtg2H4Bz5vgLm; Tue, 13 May 2025 17:21:15 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxjtg0VKQz40Qc; Tue, 13 May 2025 17:21:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747156875; 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=lM9z+6pEXqLxsi/d5MHkTxdqOAeyD+KFCda2oYTCkAg=; b=jYAZ52fQORK9g7SpFAjVMdlHqwNCEBrxEaiz8BL1id5iILWdrw7AghvpZeHWJXAMxogbNd Ax1bmA6KM9zUq+8g8+p0c2fJyJ94XLX15oVQ84Cmy5jNq82mWgcoXaLPmW++sIIOvNxN+s pWKZM5IUfAMnCUrNNsnMI5kOf/ZHzxEuFvdEj6AArNcYITtM9ef/pYOQFlhzSViYWNYLaA BZwXplvFdhqCx9hqKbfIjNMInzxLuFOQUrJbCebmC4lWi6EPuUkYgfw9Wga35O4nOrNTfQ yu0M2braIq5NkbvqEMpo5FfQRdNDRV9hIpfsgf8qIH+MaiRNZXe4lbZcaudC+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747156875; 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=lM9z+6pEXqLxsi/d5MHkTxdqOAeyD+KFCda2oYTCkAg=; b=GraCd/M+mKQ2NM17tTslmWz9RhQhAr4JELVp7F+KJOvWmaKF8tDpuPLNu3edT/1L/tOxKu XwSPlexZYoSuEG1VuuyfOpWkCVFW5OxvDPp9mrhqnQoOSic+wyvssRqPEyJh4yxFOEDvyf yZzek8OD6ngaktkiYjNMIyGfxSs7IS29rJcz8fB5HS2VHNYyeWKS1TrV9dCiH0Tb6QEeOV XMJhkWH3KNFyn/wLMmpqTG0BtuEIyQ+TuAhb4qw2ek6cuq62nFveIF1bslll2F0MIfXWDK tFYrDOgQM3mrx4dOTXZh2uYRbu+BNrELKIP0JDBjMl1dMrYLlr/fuNZk5/WDsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747156875; a=rsa-sha256; cv=none; b=bdhEO0KhKhREoETGMo5+FHC/uQf8mCEhez99QMQPWFqXGaFHMh+JUF9L9PFL89W5gTEXk/ nUP0/j7L/k4fnecU6FvzhdyRDJUef6oPqTPx48xLoixo85HukR2nMv1P0L+soCarFzjNkJ bxqq+4xxxpg2FFbn7VHjm+L8F/HjXPNrV6Uhe+cJo0udPXm2+e4c89P7PAQe++sPwyWB9p f+t4FE5AyBsm83tXsPVM+fLcvUNIGQ/ZjECkhHu1D+z7wWdVNAlKRdW626oCEpRPIq5wLs ULKP/p8qd+dv5YYJcHoy2oEJVAmrhN5oSrsI5FRd06jdvR/ppR2o4ZxX/8J6yg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxjtg03rKzwQM; Tue, 13 May 2025 17:21:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DHLEtr091982; Tue, 13 May 2025 17:21:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DHLEj6091979; Tue, 13 May 2025 17:21:14 GMT (envelope-from git) Date: Tue, 13 May 2025 17:21:14 GMT Message-Id: <202505131721.54DHLEj6091979@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: 9692d5e15e9b - main - arswitch.4: Improve title and add HARDWARE 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9692d5e15e9bd7e628b06d655522477ce8c5b6fe Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=9692d5e15e9bd7e628b06d655522477ce8c5b6fe commit 9692d5e15e9bd7e628b06d655522477ce8c5b6fe Author: Alexander Ziaee AuthorDate: 2025-05-12 01:37:17 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-13 17:20:37 +0000 arswitch.4: Improve title and add HARDWARE For visibility in apropos and inclusion in the hardware release notes. MFC after: 3 days Reviewed by: adrian (previous), mhorne Approved by: mhorne --- share/man/man4/arswitch.4 | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/share/man/man4/arswitch.4 b/share/man/man4/arswitch.4 index 3ec7316ae6e7..5bcd6c6810ee 100644 --- a/share/man/man4/arswitch.4 +++ b/share/man/man4/arswitch.4 @@ -22,12 +22,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 8, 2023 +.Dd May 11, 2025 .Dt ARSWITCH 4 .Os .Sh NAME .Nm arswitch -.Nd driver for Atheros Fast Ethernet switch +.Nd Atheros AR8000 series Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -35,18 +35,8 @@ .Sh DESCRIPTION The .Nm -device driver provides a management interface to multiple Atheros -fast ethernet switch chips: -.Bl -tag -compact -width "AR8216" -.It AR8216 -Fast Ethernet Switch -.It AR8226 -.It AR8316 -Six-port Gigabit Ethernet Switch -.It AR8327 -Seven-port Gigabit Ethernet Switch -.El -.Pp +driver provides a management interface to Atheros AR8000 series Ethernet +switch controllers. The driver uses an .Xr mdio 4 or @@ -70,6 +60,23 @@ and are mutually exclusive. .Pp Setting the switch MAC address is not supported. +.Sh HARDWARE +The +.Nm +driver supports the following Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Atheros AR8327 Seven-port Gigabit Ethernet Switch +.It +Atheros AR8316 Six-port Gigabit Ethernet Switch +.It +Atheros AR8236 Six-port Fast Ethernet Switch +.It +Atheros AR8226 Six-port Fast Ethernet Switch +.It +Atheros AR8216 Six-port Fast Ethernet Switch +.El .Sh SEE ALSO .Xr etherswitch 4 , .Xr etherswitchcfg 8 From nobody Tue May 13 17:26:47 2025 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 4Zxk144M6Tz5vgNb; Tue, 13 May 2025 17:26:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxk135HZjz42rJ; Tue, 13 May 2025 17:26:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747157207; 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=FQV72XxbcdjPwG9fmQ3TzT7K61SoIGEEQH33OhXq9QI=; b=d55bVmF1W/2mK3g28vI+sI4HksGeoU5eP+h+e0eBsdAPStSiHf9yTA/ochJ8/Z3siE8IXg dsC6G8C7Pj3nsRtjnTimYEkQhybF2SkooBdQAfMDL/LVUKsGcTO2k1nn3CZFfwu2ez7yMZ VNl7MNV7ynd0x2QZwQjmDbK3AhKj9g31PeP8NwYzuMs4L1dR/hQFtESFJtSaa4KO8ir3db aWLS7jhloj8YkvCU2A+6VpJqugjY0r8CF/zULuRFt3vdvNwzrGYsagbIWXitN1aVzpRDMd jP/sMq8StWqFyPI3naz3g/dhPDHb3f38q7aB5661ONYbr5R3qC2hGO08Joz1Ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747157207; 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=FQV72XxbcdjPwG9fmQ3TzT7K61SoIGEEQH33OhXq9QI=; b=ErWgOt+33RWm4ne2VyxqPZfl+9mheDzyMd7WdFb4ofkgQFww3Abym8R4sKCA6lMmAdFmpm /v5UHiSFQYja3A9fH6uWGRN3lRIuljydyxF490EEKjf06WtzzK9Tnfw/34wVBbyK5vqHno ZJL/4BVu8HzFFZVLiAcRQbF1yuJi9NBXtoSVMONBtyqjj250fJl4OK6c9S6/u0jbIfB+uh e/bjcaUOptE+NtT/nvIFblqwMO/XPcKjltm8g5j2cxfLojZjn8lfCtHFAwQsteDKyV9wuZ ep5prLh03WyVSBY0a4H1r24p89eEzU18gMVA2cBrN0ysO9GP/xfC8SJSZSdNIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747157207; a=rsa-sha256; cv=none; b=mYE2amfJ4s4VaD7rC3nBzy7qwdMk6sM8qpc21L45bLWagq/ageMjMBqF8mDG5+p+rlAgYp ipYhPgivXiqT/3c4ziGsq/CnzrBA61g44cSXQ2cbrNNAUy/NhHiuoceZ6OmjD6FvU/5o7u NmAbbXeBSMkLutCC5upDTcFYYuXSHNuxm7HHmU1XuQUSTW6sia2nGMDSoYukv48I7YkE3j hYU8+KcGYmNDMpsLGJjUK6Z7XcXyyBP1NzJ6O7QnlA9tcmaz1FLcs5Wn9LyHfJQIRtC9Q1 /z7hbthn4zrORRNLLv+LIlYOVHo6pxKVDKW4/8Qq0Jd6DKnqMczbjr8jz7Jvtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxk134rYQzwSw; Tue, 13 May 2025 17:26:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DHQlg8000188; Tue, 13 May 2025 17:26:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DHQlCC000185; Tue, 13 May 2025 17:26:47 GMT (envelope-from git) Date: Tue, 13 May 2025 17:26:47 GMT Message-Id: <202505131726.54DHQlCC000185@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: d3f15bc2a51d - main - release: Pass -DNO_ROOT to dvd1 installworld/installkernel 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d3f15bc2a51d1822795135d9ad4627dc1c7f2b18 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=d3f15bc2a51d1822795135d9ad4627dc1c7f2b18 commit d3f15bc2a51d1822795135d9ad4627dc1c7f2b18 Author: Ed Maste AuthorDate: 2025-05-13 17:24:55 +0000 Commit: Ed Maste CommitDate: 2025-05-13 17:26:35 +0000 release: Pass -DNO_ROOT to dvd1 installworld/installkernel Accidentally lost during a rebase. Fixes: 89cf4b85db40 ("release: Use NO_ROOT mode for dvd1.iso") Sponsored by: The FreeBSD Foundation --- release/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/Makefile b/release/Makefile index 4f4d0f483444..72df23bfa52b 100644 --- a/release/Makefile +++ b/release/Makefile @@ -253,7 +253,7 @@ dvd: packagesystem ( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \ DESTDIR=${.OBJDIR}/${.TARGET} MK_RESCUE=no MK_KERNEL_SYMBOLS=no \ MK_TESTS=no MK_DEBUG_FILES=no \ - -DDB_FROM_SRC ) + -DDB_FROM_SRC -DNO_ROOT) # Copy distfiles mkdir -p ${.TARGET}/usr/freebsd-dist for dist in MANIFEST $$(ls *.txz | grep -v container); \ From nobody Tue May 13 18:49:26 2025 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 4ZxlrQ6PwWz5vnWZ; Tue, 13 May 2025 18:49:26 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxlrQ5mgnz3qC4; Tue, 13 May 2025 18:49:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747162166; 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=yJ8XaPu7f8Q2wcYbekIb5SPVKRBFP3RXzALOiMMnh88=; b=cOffqwxE5B1fjxklDNLuHFupEGMCoeScK9b6xXq4QTxRNn7+ZFpRXxvVCKwmfB4tC82Ebf VDdh0cMZb9xIXosz02/EUISflEJYU4D/shcwTktoZ/Vy2El8xQw5eoKsLZRO+LmCVebVvF CFp5miFTUuqlbbkFA3D/cJDFya3hS/Ke9vIFtwvLBliguR9h35i9Tuki0OtuLIL8RL28hE guyKhLuW5IuNXC+TqaoZwe3LNIfgcraAKFay/eoWEBjl/4SWUhuECQYApu/Bn+0ifSgrBo 3B1VCtZRfs9cBuWzG8JTrkv7OeEVlh8WQfp7sUpsj6rUtqpmoNIONZ+869mwtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747162166; 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=yJ8XaPu7f8Q2wcYbekIb5SPVKRBFP3RXzALOiMMnh88=; b=EnRUJie/k9M5r3ndKC9SiA934eeakY+Hd1Vn2C7pda9zn4HwjHyKeUVLV/CrtYvnwuAcgU 2g9STZXnz68abHKvzKZjEPMDNPEe/A0jqYswOCp3Zo/nEiUrWsJSS4yKjKoJ0TjKiYQ6Wx 17B+D5zgqAOvpKqWDMJfLDHkaqCYV2QD3PGv2Y4Cmh4jGiujqXPB3hPVZEduXpJaCKZTy9 eidTpOzNezCsf2Dx5mt8KFkc1AfkiL/a+RfGOKDNEecDGhEbEK2UDzkHBRm0L3qQnbyNBl 38DuIy1NpDY67Ibz8RShM7eKJ+TjSpk9PFL1J4T1k/v1BRUVOC05Rmk2ORyGSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747162166; a=rsa-sha256; cv=none; b=RkXXDLpSm3Thp4cG/1pRA3tZM29NN1BW0IsdTFVtab0RyLfCk91GbAkBbC56gk53y5/DTe 9pSDT8u9y0DXVXWWbCUQtpAQlfr37i2OfY7A3SUkpAPHTOij4/CKzs1eMp+ZYkAG2kP/Ie cHiUON5NAD7rjQnl6Ec9FJ6NbGKyIFlSkjkj4wgeTpAXE7nmALCMnqx6heLNRh3DYJ2UxO xFpaN00zer10pisv+GScX2svAmVe5zgT7W9q4r9RVUnZkOYJUDkYa24Bd/GpLRoxHXS9mI 1MQ6T4VbjffISaxJVEfoz1ir72BbAMB4MSr3V6KcNaRZvnWKHi6WZgR01DsA/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxlrQ5KT9zyGY; Tue, 13 May 2025 18:49:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DInQpc052433; Tue, 13 May 2025 18:49:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DInQ4q052430; Tue, 13 May 2025 18:49:26 GMT (envelope-from git) Date: Tue, 13 May 2025 18:49:26 GMT Message-Id: <202505131849.54DInQ4q052430@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: 91c9751c3913 - main - ar40xx.4: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 91c9751c3913497db2fbad1fcf7491557bbd2a75 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=91c9751c3913497db2fbad1fcf7491557bbd2a75 commit 91c9751c3913497db2fbad1fcf7491557bbd2a75 Author: Alexander Ziaee AuthorDate: 2025-05-12 02:22:59 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-13 18:48:19 +0000 ar40xx.4: Initial manual page For inclusion in apropos and the hardware release notes. While here, add xrefs to this page and the previous e6000sw in etherswitch.4. MFC after: 3 days Reported by: adrian Reviewed by: adrian, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50324 --- share/man/man4/etherswitch.4 | 2 ++ share/man/man4/man4.arm/Makefile | 1 + share/man/man4/man4.arm/ar40xx.4 | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+) diff --git a/share/man/man4/etherswitch.4 b/share/man/man4/etherswitch.4 index 4813d7cce1e5..ba8e32c00750 100644 --- a/share/man/man4/etherswitch.4 +++ b/share/man/man4/etherswitch.4 @@ -49,7 +49,9 @@ device nodes .El .Sh SEE ALSO .Xr adm6996fc 4 , +.Xr ar40xx 4 , .Xr arswitch 4 , +.Xr e6000sw 4 , .Xr e6060sw 4 , .Xr iicbus 4 , .Xr ksz8995ma 4 , diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile index b5d49d0dffb9..6b046a1002a2 100644 --- a/share/man/man4/man4.arm/Makefile +++ b/share/man/man4/man4.arm/Makefile @@ -1,4 +1,5 @@ MAN= \ + ar40xx.4 \ aw_gpio.4 \ aw_mmc.4 \ aw_rtc.4 \ diff --git a/share/man/man4/man4.arm/ar40xx.4 b/share/man/man4/man4.arm/ar40xx.4 new file mode 100644 index 000000000000..e314d30dd4c6 --- /dev/null +++ b/share/man/man4/man4.arm/ar40xx.4 @@ -0,0 +1,35 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt AR40XX 4 arm +.Sh NAME +.Nm ar40xx_switch +.Nd Qualcomm IPQ4018/IPQ4019 Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd ar40xx_switch +.Sh DESCRIPTION +The +.Nm +driver supports the Gigabit Ethernet switch inside the +Qualcomm IPQ4018/IPQ4019 SoC. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Qualcomm IPQ 4019 Five-port Gigabit Ethernet Switch +.It +Qualcomm IPQ 4018 Five-port Gigabit Ethernet Switch +.El +.Sh SEE ALSO +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh CAVEATS +This driver currently only supports L2 port/VLAN mapping modes. From nobody Tue May 13 19:37:17 2025 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 4Zxmvd5g7yz5vrTt; Tue, 13 May 2025 19:37:17 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxmvd3H7Lz3Gpd; Tue, 13 May 2025 19:37:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747165037; 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=FTB+IKGTzm6OiyJhjkoVOPTkSS/ZLqtPyjua2qILviY=; b=sG7B+ZtKnJJ9SQoR0kg5rwDctjbs/qmwReEhNmZfgvwbsS99vZjTKfKWEEQPtfkFZbk5Be XZw3T7h0daHdbYj0BhaTEGfeE2TgwmxG3ivz18abmVvbmqRJeP8er3TQqpFYZ91HF8i9Xv 2Bpf5euZpKNB8/YZTCRCPDQvRTKnKlE+PQX/n5Gu3C5paBF41jJLal2jGQ/CpFVvhQM1E2 LfDy/DJimOdXM7a+/x2PJV64wTGG+lv2GiilE/w75AfV3MUBRq5k2WGAn0kuQ1by/5DjdS VZliyWg/gjCHyP6RUD96gKW0p8qL2bY8YB63seYvxA5BEK6iTgmKfFysu1LNWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747165037; 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=FTB+IKGTzm6OiyJhjkoVOPTkSS/ZLqtPyjua2qILviY=; b=CmCp/tMxOaUEBxDw81ax2n0zj0GRjCIiXu/m63u8E9l1zsTKH0MRyM2/qAPsMFF9eBule/ vJgUypO34cW28uaWOe5rrVNhlCMP9NiDlXU1Vkyhuw7VrcVSqs+/0BASxbywtWvtf1P2M7 CxSEyViIuerjNjP93d2i/2DCbNQisdneNFTROsB7SNfaD32gWWMfVc34PO+mHxoRoCypbS DB97xnvvEQtfIYP8iw6Prtemb9tRLoVUxlXPfkfCiwY1echjU+f3unW8PFgsXeUTGGHdeo A8g2k1FQ5LC69TkxEGGKKlnQeszDN/dujcepbTqr21ad8wgxydefkgcWRokWnQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747165037; a=rsa-sha256; cv=none; b=kUXGc2+uj8Km7up3d3O5o8RK9hIv+mWgPyeRpT1bRnAoF7qoJl81MUAmHZtMeoqjbWI2sB lxJb6p15XFQ/zzaRmumY5CEbBSFMf3NxlI9rrd0kDy69MsYXb0TNIxUfrh7hFZrn62iD53 hlMKAGYZ6c3fudBJCNQxlyNpENHbUzHhL5fDRjGkhEhLvCXpNguyZCzmZgoPLTPfY29Zz/ ESnOHLRgv0TsyrYCBL8fH3dsgD7tOJN4IfwlEgKZAJxx06o5MpUuhbmdNCx7eER3SXxqZ0 pJO4dtZiTDjtY67wugfHtJjchMU5iTDD5Ob7dz1UTxe/uqx08qlviJ/01t4enw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxmvd2hcVz118Z; Tue, 13 May 2025 19:37:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DJbHve045992; Tue, 13 May 2025 19:37:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DJbHWK045989; Tue, 13 May 2025 19:37:17 GMT (envelope-from git) Date: Tue, 13 May 2025 19:37:17 GMT Message-Id: <202505131937.54DJbHWK045989@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 15143ba61a3b - main - sdt: Fix a typo in arm's sdt_tracepoint_valid() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 15143ba61a3b154023095afa333b25592af4b904 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=15143ba61a3b154023095afa333b25592af4b904 commit 15143ba61a3b154023095afa333b25592af4b904 Author: Mark Johnston AuthorDate: 2025-05-13 19:36:24 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 19:36:24 +0000 sdt: Fix a typo in arm's sdt_tracepoint_valid() Reported by: Mark Millard Fixes: ddf0ed09bd8f ("sdt: Implement SDT probes using hot-patching") --- sys/arm/arm/sdt_machdep.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm/arm/sdt_machdep.c b/sys/arm/arm/sdt_machdep.c index 02361497ee8d..12119ae6db37 100644 --- a/sys/arm/arm/sdt_machdep.c +++ b/sys/arm/arm/sdt_machdep.c @@ -24,7 +24,7 @@ sdt_tracepoint_valid(uintptr_t patchpoint, uintptr_t target) patchpoint + 2 * INSN_SIZE < patchpoint) return (false); offset = target - (patchpoint + 2 * INSN_SIZE); - if (offset < -(1 << 24) || offset > (1 >> 24)) + if (offset < -(1 << 24) || offset > (1 << 24)) return (false); return (true); } From nobody Tue May 13 21:21:42 2025 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 4ZxqD72w10z5w030; Tue, 13 May 2025 21:21:43 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxqD66kxdz3NrJ; Tue, 13 May 2025 21:21:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747171303; 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=HiRSnFZQvyMFNql6I/AtzzdegbIUVvOhs4aVvjaSblw=; b=M7wYWL0fVGlJzOuRkspPj0Vnxn35JSU08Owky7d5xQe3timKPCC5B9ko3ptWyvrRfUjAdR +RxBEMY6jYOoffTgcm0DHJD2c89ClJg+RwwZzTQtHiEB/wKncmOInxawOxp+L6/GT9RjU7 b0f4WVJWgIAhSke65keo+rF49KtZ4LlJY9C5NBhpGjlRt44572DQQfRI+s5y7qmRtgbY4h MgX/TCtsf1g4Vz2jvnzI4NOQuTeo62jbosCXSEGbyZvb79LzIB9UWtn+WxUntSUB/CdoBH fHJ0HRI9XpUcqOr3hE4tKumFWMdkqx80Ylt5GpanJHsxsAf1e6R5/zbcc1gt0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747171303; 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=HiRSnFZQvyMFNql6I/AtzzdegbIUVvOhs4aVvjaSblw=; b=iJzg3eO5C8fiqybZswqR/DdhpIcf0WDQNZFY3KF00a/t0VidOuHK9CWAJ8/8MVtwNfys2q zX6S9A4wJCcEep++tW4vok/SszHH+Tq2VzikTDfVo/QYZ23CuL9HAia+ThBjWMCE3n5ABM JEOfX1p5zDgnFN/RcfTXQi+doYVfAxAFt6ySR8N7dXHYapLwyT48XZqYt2BmzPrZikZSCP ulyx41sD3EkkDAck8rNCVUWBli+SCupYR9AUSCdcfghNjHWoPlvZ0Svx+W5/kTRDUxiyXi qBW730MxM6C+T/BaRPfZ0BrAhAcgLu8Yf9rH+uBEAGGNsjUI9Et/qyXZN0/aXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747171303; a=rsa-sha256; cv=none; b=pUAfPO+7txysoysfINh6QZ5V66R2TImkw3gtpq8dSUP1tY4h/VyXdX3NQ4AHLZOsKscacl c5zBCrTM5JJk8ze/px2HVDyq/o1qUS2E74f543pjHutj7eYZGX9vq5QPVQiImTRK+idT6y AfeuRhUdCilIUYq7Ag1aYuDlEIr4ME0xfkUhnWZQjtipQPhF2/e4K1mKmbPjgIS+LxgoQc x5iTgwXnyYNObCB9oLC1g1bByZgTow2xUQX3zCrT+9uHQZdZZvrpCsYlfEv5FhyjxuUD4b Kbz8UaRk1gZNB0L4JCNr0VqNkelYdl7XMgUIAjiOsgcrKbYoNSVfnt6qaAzglA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxqD66HGrz13p6; Tue, 13 May 2025 21:21:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DLLgTE048165; Tue, 13 May 2025 21:21:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DLLgb2048162; Tue, 13 May 2025 21:21:42 GMT (envelope-from git) Date: Tue, 13 May 2025 21:21:42 GMT Message-Id: <202505132121.54DLLgb2048162@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: bef89c155e77 - main - e6060sw.4: Improve title and add HARDWARE 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bef89c155e77dd471af596a43f3914b754cc5155 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=bef89c155e77dd471af596a43f3914b754cc5155 commit bef89c155e77dd471af596a43f3914b754cc5155 Author: Alexander Ziaee AuthorDate: 2025-05-12 01:08:10 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-13 21:16:16 +0000 e6060sw.4: Improve title and add HARDWARE For visibility in apropos and inclusion in the hardware release notes. MFC after: 3 days Reviewed by: adrian, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50321 --- share/man/man4/e6060sw.4 | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/share/man/man4/e6060sw.4 b/share/man/man4/e6060sw.4 index 407138abe378..74736f65fe80 100644 --- a/share/man/man4/e6060sw.4 +++ b/share/man/man4/e6060sw.4 @@ -23,12 +23,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 5, 2017 +.Dd May 10, 2025 .Dt E6060SW 4 .Os .Sh NAME .Nm e6060sw -.Nd driver for Marvell 88E6060 and 88E6065 fast ethernet switch chip +.Nd Marvell 88E6060/88E6063/88E6065 Fast Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -44,6 +44,19 @@ This driver use smi interface by ethernet interface. 88E6060 support is only port vlan. 88E6065 support is port and dot1q vlan. dot1q support group base tag/untag. +.Sh HARDWARE +The +.Nm +driver supports the following Fast Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6060 +.It +Marvell 88E6063 +.It +Marvell 88E6065 +.El .Sh EXAMPLES Configure dot1q vlan on 88E6065 by etherswitchcfg command. .Pp From nobody Tue May 13 22:02:53 2025 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 4Zxr7d23bjz5w3Xc; Tue, 13 May 2025 22:02:53 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxr7d19B7z3vps; Tue, 13 May 2025 22:02:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747173773; 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=1JxibNK1gD7os1mlwaHdYOaKbvow4iPynBwEIm5Rdwk=; b=eWe8cLd1y5kvAT/90TlV0TVDV+19h9jkkSvOmSo/QtuGgo42WYC/RZglqkA03IJYMR7mtp +0tGXhSh24l8GCxpS94PI1YRG6B3Wk0dLYpJeKhiZZV4WwX5KO/Ww1jqJNEkz/ZnIcoTNo LrhreVU4vppd/f/vxLohwNLwjOlg6sWp4yWVT4Rb1qf+QolR66pfZaYNW529JOj8MDbNR6 +Jl4WbhMLdCxwZSSjfePCPsVrz/4VJYMuYDQqqZ6+atCemL5Ojl4R1uqw8QW/YdVaYLTgA 0EYVAmlI/v88ce0qVTtGeGYAJZHzMy9Pzh64zdq0LXqepxQv57kSxJbfLwbqcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747173773; 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=1JxibNK1gD7os1mlwaHdYOaKbvow4iPynBwEIm5Rdwk=; b=F5KueuQD23Z36FmZETgXVJ09a9n5HYqUI2b75pVmt+tFa1/S7BH8Q4du2CBxJ6fDlvk+RG J4yjUR7aA3VTe2sCTJnwTtKGie42KqA0yVbWvMDazRhYx5D+ndItsTZwJ8P1WZ/4BSbxLC XppisstImlXHDeSfGS7RA86Q+AoIP+b3bF7UVt/Rfpzo3dfDxvsCOYB+mkFdDLJre22wMG 1BKjJY+0dcMzSUqyqBIL8u4yZcAciheIINoHNHNl69PMHIBkZ8g91oP+uxNXQht9x6EuKg yaWr3n/tuIqd3IL8lfIrZ0BYRFdEMPDzMo4bJg42bNYjseUHvarzHkbTISBXDg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747173773; a=rsa-sha256; cv=none; b=pLo6tMHN1xbILBzsFSAC1m9pZdEwlC57Y8XiSKw/PL+9Ye3+oPvX4FOWEcSdSaCI6xf0Hl IBptJ62rjcrinO8IO9bjeV4SILyUKBWzPmA3N4AnjL6SQYIwZK/GbpOYo95UDX2MvsJHPg TOtOztLpZmOsIdC1Y/9SUL1krh01PvGgzSxrUSTQdznpJXKxfkQ2BgXBFW4uyaENxAz/72 HazmuCsBK7W0ZI9jzghJStUvAWNdG+LEScPXL1Z+/+rtm5bDE6BQWXZQIppu3lf2mIewdI KBmwLFMeLjv2hTY2IgtxlW6alFO1Bw52RIyI3T1K4lpR8BsHkfzMpcxGt+EA/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxr7d0mJwz14BK; Tue, 13 May 2025 22:02:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DM2reX026115; Tue, 13 May 2025 22:02:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DM2rdV026112; Tue, 13 May 2025 22:02:53 GMT (envelope-from git) Date: Tue, 13 May 2025 22:02:53 GMT Message-Id: <202505132202.54DM2rdV026112@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: dbfe79bbe5d5 - main - sound: Call PCM_RELEASE() if pcm_addchan() fails 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dbfe79bbe5d5ebe296fbff2d101e0994d7881d0d Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=dbfe79bbe5d5ebe296fbff2d101e0994d7881d0d commit dbfe79bbe5d5ebe296fbff2d101e0994d7881d0d Author: Christos Margiolis AuthorDate: 2025-05-13 22:02:41 +0000 Commit: Christos Margiolis CommitDate: 2025-05-13 22:02:41 +0000 sound: Call PCM_RELEASE() if pcm_addchan() fails Fixes: fd906e47b18f ("sound: Simplify locking during device creation") Sponsored by: The FreeBSD Foundation MFC after: 1 day Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50337 --- sys/dev/sound/pcm/sound.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index f6c35769e7f3..e690b53c411d 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -139,6 +139,7 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) { struct snddev_info *d = device_get_softc(dev); struct pcm_channel *ch; + int err = 0; PCM_LOCK(d); PCM_WAIT(d); @@ -147,13 +148,12 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) if (!ch) { device_printf(d->dev, "chn_init(%s, %d, %p) failed\n", cls->name, dir, devinfo); - PCM_UNLOCK(d); - return (ENODEV); + err = ENODEV; } PCM_RELEASE(d); PCM_UNLOCK(d); - return (0); + return (err); } static void From nobody Tue May 13 22:46:28 2025 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 4Zxs5x1NWnz5w6Ph; Tue, 13 May 2025 22:46:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxs5x0gQ0z3cL5; Tue, 13 May 2025 22:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747176389; 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=Lfhp97mDg1xYcUuMK5LAn9A4H1AB1jg2/8Z5t/V2hBY=; b=l6TY3oGWrBKQ5AJXw0c1VG2LQeaO/H9vP4aelLyv/K8DDfr0s35BZsiiDQfR6nKTmHpPxm TGqXNFfMnq2biYIDE/T8XV5tfgY2O+GwL3BgGsQv3lxknBkcb8rq0HynGF+99eI22eG6cl t4Q0Bt46f6/v/lyvuFh9m3NFxT3pfbkcvk1z/IqLljEXaOlQeT2EHRDHieRvveXA8o/2bJ Twd0KQQeN1EieyaL9Pb2/2z5uzY3OK9OycvUpa5Cdz2XIBQbaUfce8egoHmKHXA4TLqOwh jv+ffWFfwKgHWLNKmJ7Gei5Bx+vgr0+05R3TSgKB4T9MBi1Sis43NLq7DGtywA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747176389; 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=Lfhp97mDg1xYcUuMK5LAn9A4H1AB1jg2/8Z5t/V2hBY=; b=HNhMdWaSHuu9TjVp0x52ZJIvir7Dep6Oz4uqdoG3QGkmWp9qvAqlFUWOaD0ogEVYH3L7NA +RW0gvlEwU5dfIwr/DYRsceRlb4yurUiqc0Y65Yvx5T/HTw+foK9djRRY/RF0TZCBv2VPj BSx3NxwEbAsYsEDJcgUrMD5PJNJ5puC+pQRaD4nuIeNjdmmEXyu90QJT8cM7+p8uH2kwHO aqTxMel1NtHXDdoMuJXae7y0qJgwTXtNJMAEHYrwBdXgUhwHUA5vOCubSQhqW+iUGElkbB odQASKsj3YTvdlrjfmRb2EdEvvqJzDzuPJJ6Ic7ZA3Xr8S9qRn9RdGH9GtSf8g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747176389; a=rsa-sha256; cv=none; b=xWu6OSC4J6g8vmhahpbchnyA70mE6XsnKoH0AV6egvYfzi7CihtlHm4q3UsbdsHUVvfLFG IkerV2ANIcn7dAWpxsej42tnTV1TfkgyCxMnUdWzVNnfJB2Aj8k7+3kI58uPqMQOoVKQU4 mcGjNZwLsSe9jLPhwDXUctRPU2tqxBQRLIkw9PunbKnJNVMt1jXqDwpocemGHM3ph76NoA 1URvkrashWMNpjidFXCbPgKFxVcxn9xrz/qRObh6pOyX3EozcMF7fw6T9T4Z7pXREqTzJ3 DsMhRDomg5i4YREagfiSnApA3UMm4WeCyCF6zW8tJPqpxig0uJWm53eNmWUbPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxs5w6yN3z15K9; Tue, 13 May 2025 22:46:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DMkSDn001605; Tue, 13 May 2025 22:46:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DMkSkM001602; Tue, 13 May 2025 22:46:28 GMT (envelope-from git) Date: Tue, 13 May 2025 22:46:28 GMT Message-Id: <202505132246.54DMkSkM001602@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 86d20eaadfd1 - main - powernv: Add RF_BIGENDIAN resource flag 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 86d20eaadfd1a03e19d8bc8333c689b820299d52 Auto-Submitted: auto-generated The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=86d20eaadfd1a03e19d8bc8333c689b820299d52 commit 86d20eaadfd1a03e19d8bc8333c689b820299d52 Author: Justin Hibbits AuthorDate: 2025-05-13 22:39:37 +0000 Commit: Justin Hibbits CommitDate: 2025-05-13 22:44:09 +0000 powernv: Add RF_BIGENDIAN resource flag The big-endian analogue to the RF_LITTLEENDIAN flag, if this flag is set on a memory resource it's always mapped big endian. This is needed by the PowerNV OPAL resources (XIVE and PCI), as these top-level peripherals are always big-endian. Tested by: pkubaj Fixes: c4921a0f("powerpc: Always use BE tag in nexus_map_resource") MFC after: 1 day X-MFC-with: c4921a0f --- sys/powerpc/include/resource.h | 1 + sys/powerpc/powernv/opal_pci.c | 2 +- sys/powerpc/powernv/xive.c | 2 +- sys/powerpc/powerpc/nexus.c | 4 +++- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sys/powerpc/include/resource.h b/sys/powerpc/include/resource.h index e7e9493569cc..6726104403d0 100644 --- a/sys/powerpc/include/resource.h +++ b/sys/powerpc/include/resource.h @@ -47,5 +47,6 @@ */ #define RF_LITTLEENDIAN RF_SPARE1 +#define RF_BIGENDIAN RF_SPARE2 #endif /* !_MACHINE_RESOURCE_H_ */ diff --git a/sys/powerpc/powernv/opal_pci.c b/sys/powerpc/powernv/opal_pci.c index 8dee2c45c089..622c8c2cc09b 100644 --- a/sys/powerpc/powernv/opal_pci.c +++ b/sys/powerpc/powernv/opal_pci.c @@ -270,7 +270,7 @@ opalpci_attach(device_t dev) rid = 0; sc->r_reg = bus_alloc_resource_any(dev, SYS_RES_MEMORY, - &rid, RF_ACTIVE | RF_SHAREABLE); + &rid, RF_ACTIVE | RF_SHAREABLE | RF_BIGENDIAN); if (sc->r_reg == NULL) { device_printf(dev, "Failed to allocate PHB[%jd] registers\n", (uintmax_t)sc->phb_id); diff --git a/sys/powerpc/powernv/xive.c b/sys/powerpc/powernv/xive.c index 384ff4ef20d2..aaf4953ba8a5 100644 --- a/sys/powerpc/powernv/xive.c +++ b/sys/powerpc/powernv/xive.c @@ -327,7 +327,7 @@ xive_attach(device_t dev) rid = 1; /* Get the Hypervisor-level register set. */ sc->sc_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, - &rid, RF_ACTIVE); + &rid, RF_ACTIVE | RF_BIGENDIAN); sc->sc_offset = XIVE_TM_QW3_HV; mtx_init(&sc->sc_mtx, "XIVE", NULL, MTX_DEF); diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 029b6ef8a479..1dac56a84cf9 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -287,8 +287,10 @@ nexus_map_resource(device_t bus, device_t child, struct resource *r, map->r_vaddr = pmap_mapdev_attr(start, length, args.memattr); if ((rman_get_flags(r) & RF_LITTLEENDIAN) != 0) map->r_bustag = &bs_le_tag; - else + else if ((rman_get_flags(r) & RF_BIGENDIAN) != 0) map->r_bustag = &bs_be_tag; + else + map->r_bustag = nexus_get_bus_tag(NULL, NULL); map->r_size = length; map->r_bushandle = (bus_space_handle_t)map->r_vaddr; break; From nobody Tue May 13 23:33:41 2025 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 4Zxt8P4rXNz5w99n; Tue, 13 May 2025 23:33:41 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxt8P3fNSz3JFb; Tue, 13 May 2025 23:33:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179221; 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=ANMSHrvzJxkcbhrHsQ1bROMJ2dLecbDXzv2kVDyFmlQ=; b=KRMA6/tzbGhVLvLmjuAmfg7j6kUoIegpFdFBAmYVWdcggMnjUxAf595wPHJuawUoOfENU+ HcgxFV9YW1s8oDOhhsJt/CBKYsNsrNoh8ZJy48Kp3EmdKFMC0l5GevThkVA973pX7XHngj Qaj9ryplJNKFfFgmxojjDR2TdZwv+vAzrBjYRsF+Myh8wa5tDEfPxLfas3URI9z2XwTHGH lPhnPFpYsAbDkfwcygYJvNI5XB45bhlZKVKxrwxGuFcXA9tGk4SadoASqJcxOrsmW/Vc4E 4U+9hkakrq7QWAMtU0kisEDBgP9AIQYfOMbj6PFRedet/NXna5NDmehOc/Kpug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179221; 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=ANMSHrvzJxkcbhrHsQ1bROMJ2dLecbDXzv2kVDyFmlQ=; b=j4/pyTBWEc7zyid+YfocIN5uZE8YzeGw1yDia7MsvDnlunDWjW1taSz0Vx/naJgQD3fyHm G3/1IzmGxK66ScHE0m0kaA1Ovl4X8O7m6jGDjKwPUPjYp44Uur3mbR6GxmTMCh/c0w+/Ur mYaJj1hSv8/87L8WmLZcb+etafqCtf3yc9sg/QcLOVWt0EfKRURBFzuDSH4gta1tvOeadu KhcC9ZKiYxmHnZuqzrYgCagEbk7bd1dD6X3sSRlfblUglT1B7sLm+nvawnGRDhqktM2hn/ tMCeqBOmBhkEdTgzkLpjigLTqBXqz9UA1lngDTZyQKlv6rJ6L/g6quUKPcW6fw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747179221; a=rsa-sha256; cv=none; b=O3CsKlV1Bb0v2vapVCi5JDFcPlVcy+iVmXOmaiTV8GbuYzvkFJyoZEE5oe2n09qS8x2wF8 jQKVdBYIpvIXUrhdz/gyLZ/LhLDLkPkyXdLlX2kUq07MAx0xEg/cCX/0i/swm/S3vlugSv h45FfZhWO65wSKNCOies6klA/ETHgQtcP0U4lAxbD8/lmRetFhjCoIl6afYy77iLQyQ9xP QfC19nurqG82ZpArNJjHfq0eSL64PzMlLU2HptXppR+ICaMBh81/pMFjlrht+rYfSDulG+ ppyr8LwP+crzsFozUAJ7u6FuYGL1ETgPW0BWoCm0o8E2uQfT16AvUjtG53V3lw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxt8P3648z170Z; Tue, 13 May 2025 23:33:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DNXfLO095076; Tue, 13 May 2025 23:33:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DNXfJZ095073; Tue, 13 May 2025 23:33:41 GMT (envelope-from git) Date: Tue, 13 May 2025 23:33:41 GMT Message-Id: <202505132333.54DNXfJZ095073@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: aee6c83e06a8 - main - vfs: Sort includes in vfs_vnops.c 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: aee6c83e06a807caf1ebb48d3ddb8df68a5f2bfe Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=aee6c83e06a807caf1ebb48d3ddb8df68a5f2bfe commit aee6c83e06a807caf1ebb48d3ddb8df68a5f2bfe Author: Mark Johnston AuthorDate: 2025-05-13 23:26:14 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 23:27:13 +0000 vfs: Sort includes in vfs_vnops.c Remove some that are not needed. No functional change intended. Reviewed by: olce, kib MFC after: 1 week Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50316 --- sys/kern/vfs_vnops.c | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index eaa1d298bdc6..78888ec22e9a 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -40,43 +40,34 @@ * SUCH DAMAGE. */ -#include #include "opt_hwpmc_hooks.h" #include #include +#include #include +#include #include #include #include -#include +#include #include -#include -#include -#include +#include #include #include #include #include #include #include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include +#include #include +#include #include -#include -#include -#include #include #include -#include +#include #include #include From nobody Tue May 13 23:33:42 2025 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 4Zxt8Q6TWRz5w99p; Tue, 13 May 2025 23:33:42 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxt8Q4WRkz3JH1; Tue, 13 May 2025 23:33:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179222; 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=7bTzN2P61j9EcqrIASh1tmwqz9NRjIbKo4Tfo1FfiFQ=; b=QVrRvpDcypAR5YCsaRr90UwnpuX3K1VT13ARV2ke/YV3O1BLIuJRBt7de7VpOMm5yxPol6 O3QULm/u8XInFfn9Zpr2xCV+3KjWb02lQ06fVBAb3lgLevl/SuWYcQsyB42Gh9mi1UcZgI BlgYlwlWp3K9oxY5iKERxPEA+GHc2xCgGHIeZJdZFahU4A+6tasfqX72GtW/SuTrEKEoYT /+tPJHvql93p0IIeO2uAB8kqjYcM3BTKNE74qPb5NyyMqqpVLU2IUud9oqaZzEcgwAMnix ERf7BMr8Lz2lgjFb9JH518Vi8Bwg3Vp4XbnMK+HN2NRqB1OT/oCPMFdKZvIPXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179222; 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=7bTzN2P61j9EcqrIASh1tmwqz9NRjIbKo4Tfo1FfiFQ=; b=Yn6J6TbB06dozj6o8s+NmH0TAGY9Q8Qfaqv2wskDScCAtBnrWNPG54qCDaooJSlQUBBSyt loQZbsObBo75/lKxDyHF89IPfQTv852zRzZrDr2QMvPwPdXYw2Pymk849YficGo/KlbLKS HoQwVUh9iRJpwyiX/mDcsiUaxSODNhfUgnJn1oRgvs55tkA5KqAJqVIoOStjOQ8+BMDof/ CwjfWF01qay0SHxeU88Uz9ZuVK3ui7VETfhfttWc+nwl/pNEZ66cCCbyBqGpWgA7AX4Bxo KLKbXtAsb3kVG7Mddsm0g88z9wDtPriMKOM7KYOXaFGzORebaFKSbCxn5k1ncA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747179222; a=rsa-sha256; cv=none; b=OQ2+O0dwO2xkTp6oqyGkOlnFWFAd+HC3W//VoNmOFQbn46P02j5VglrVug1Jz+mgbsjK/o 5dRR/3K4ktQBzRD9oW1ExLlD1UwXjF3rT0wuqnAeH/SkXSlVhky+yYH99g6y83y2bcdomg pY/0xuj9nKP/LBv7QgNs9hp3S5/sM8eHmjOG4qzkoVShwNI4wYdTpj9vqBHF4OE6Sj2Pct 1uJZj/EqVHtfiSfyAG/QMvl2WhWjdQcpzAK+jmvn5ggMZWKsG8rFEtqB92AxYXgaSo+vjw lVfW4jsgENTX585juV1tGtgMTw3/Bj/ejJP5Gd6QLJpTWhkCky50pb1WoBPV5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxt8Q40Q0z16nD; Tue, 13 May 2025 23:33:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DNXgPC095116; Tue, 13 May 2025 23:33:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DNXgUo095113; Tue, 13 May 2025 23:33:42 GMT (envelope-from git) Date: Tue, 13 May 2025 23:33:42 GMT Message-Id: <202505132333.54DNXgUo095113@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: c5a769781c1f - main - vfs: Sort includes in vfs_syscalls.c 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c5a769781c1f6846e1e2cb4cd6aba199a2717105 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c5a769781c1f6846e1e2cb4cd6aba199a2717105 commit c5a769781c1f6846e1e2cb4cd6aba199a2717105 Author: Mark Johnston AuthorDate: 2025-05-13 23:26:28 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 23:27:17 +0000 vfs: Sort includes in vfs_syscalls.c Remove some that are not needed. No functional change intended. Reviewed by: olce, kib MFC after: 1 week Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50317 --- sys/kern/vfs_syscalls.c | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 3f1462d354fd..f992eccf567f 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -34,11 +34,9 @@ * SUCH DAMAGE. */ -#include #include "opt_capsicum.h" #include "opt_ktrace.h" -#include #include #ifdef COMPAT_FREEBSD11 #include @@ -47,33 +45,33 @@ #include #include #include -#include -#include -#include -#include -#include -#include -#include +#include #include #include +#include #include +#include +#include +#ifdef KTRACE +#include +#endif #include #include +#include +#include +#include +#include +#include +#include #include #include #include #include -#include -#include -#include -#include -#include -#include #include #include -#ifdef KTRACE -#include -#endif +#include +#include +#include #include From nobody Tue May 13 23:33:43 2025 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 4Zxt8S1K4Nz5w99q; Tue, 13 May 2025 23:33:44 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zxt8R6KrGz3JKc; Tue, 13 May 2025 23:33:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179223; 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=lqyTEj/K/VIJhqwjS3C+6Si/uAoWB0cEub9ryRDsKVo=; b=CgjfT6vaBIV0qBHMZDSntKk57bNtfwDan1DHJeWZxLtrSjjaIThnr7qkpa3JV49wT3Onma qMAQ6nfWm5j7w0hEKEPX98UZytYXK0/oa0MB7VDpAZfAmPd4OrfKuZn7QQgjs5o30LthdH 68/PmZpn+FYkaD3TNtiHb/phy3SFVh2pvszm3PVkiLdTBmSH8x2kWiFwU+Z2KY6NkIFvP3 fdlN/D56LK4YR8JYOeyJFEQHpgM97locDOMdCMtWO2yckiU9Lp+BRWEkNK00H7WB5r8L9J pSDoSoSDXRohGWDjZWkIerhopn2CBIFnYKA8nVsf0CJEgHVMyKDvdYYBTZivkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747179223; 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=lqyTEj/K/VIJhqwjS3C+6Si/uAoWB0cEub9ryRDsKVo=; b=wrXvPobSM+cZT3jXktWiodcvBwKpHiAqv4ERcR6Ic5SZ11tOBzPKioTLyo3T7cSs/K7HsV +JKZzwn3vz7pjg+TZO88xAl+lOXRN79/hUl+8pi/00I+ygF5hKDYz7dSsufMLJmbQLa0Bs YFnNXOtBgmfq0JnEYaTBrfuKPQ0QmsPhbK75vB9tFb1hSd+I2fzIXZNouakFP3dOlyc5uq cHS6aBmAJuvz7YAbBfusFVAWgSWdxkNMn9JSh8aCYhT4a9+Z1tIlfeBPtTBwCQUzeD03AK 5ORbiSXHEQNVJDaQOo88cNowK2un/svq6cAoKJxTOFmJWsmh54dSDqPqsfQfKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747179223; a=rsa-sha256; cv=none; b=NPI38IXuIvdI85Ib6+jSvKBAi7bssoGqnIUPWBydvd/y70nkqW8YbYcR05BbY7Yt0gFpuE nhu/sURtuDYUJqz17P7HOYBtFLEMsJL64FKqPusYaVV/mJU4zmrwV1pB4Nv7SqGBb+RJfB 3Z7ZZdkRSikX23AmjjDE73z6+3h4PDJkNR2iiJJVWJ3Jczmk8gADdJBUkQw7QYUjmXOmBO 2GQ+eFPbMj1XhNEKra64vL6i5sOyplaXmiad6lie0Xgqu5zUwPSka5GUqS9rj/KxB+vyY+ ichfc07gkj0FIbhbKPTsXqVFLPbnXVtlccGpyuXNdsFSmXCu8rb3XzljUA7C+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zxt8R4tzYz17B4; Tue, 13 May 2025 23:33:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54DNXhM6095153; Tue, 13 May 2025 23:33:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54DNXhDL095150; Tue, 13 May 2025 23:33:43 GMT (envelope-from git) Date: Tue, 13 May 2025 23:33:43 GMT Message-Id: <202505132333.54DNXhDL095150@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: a2e22ed3420d - main - file: Simplify an INVARIANTS check in _fdrop() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a2e22ed3420d92d9d98a1e9681b5c9b1fbe40fca Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=a2e22ed3420d92d9d98a1e9681b5c9b1fbe40fca commit a2e22ed3420d92d9d98a1e9681b5c9b1fbe40fca Author: Mark Johnston AuthorDate: 2025-05-13 23:26:49 +0000 Commit: Mark Johnston CommitDate: 2025-05-13 23:27:19 +0000 file: Simplify an INVARIANTS check in _fdrop() No functional change intended. MFC after: 1 week Sponsored by: Klara, Inc. --- sys/kern/kern_descrip.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index f007b22f90ec..cbffe592554d 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -3699,13 +3699,10 @@ int __noinline _fdrop(struct file *fp, struct thread *td) { int error; -#ifdef INVARIANTS - int count; - count = refcount_load(&fp->f_count); - if (count != 0) - panic("fdrop: fp %p count %d", fp, count); -#endif + KASSERT(refcount_load(&fp->f_count) == 0, + ("fdrop: fp %p count %d", fp, refcount_load(&fp->f_count))); + error = fo_close(fp, td); atomic_subtract_int(&openfiles, 1); crfree(fp->f_cred); From nobody Wed May 14 00:51:45 2025 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 4ZxvtT487bz5wGJ7; Wed, 14 May 2025 00:51:45 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxvtT3XwNz4PMp; Wed, 14 May 2025 00:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747183905; 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=1JeL4STdQoPmndALagXpKHjp/VfRG1meGsPZhc09+Fc=; b=HEUoM0dkLLQujgFr1aP+GlkULVjJhb15aaZ+IgSD9TH2T7rSIcUZLfBrBnlZiJS90mg/Ag +BRJNqXCQCFZ/KGdvAdJKv9fHNKsRPaER6FDZj0BpOYt/OQ2XZB3vhiq5Ru1637KuPK59x hlL1b6czPifYOFVohiPvfQNNu7w7W+878RFrueBBvtStvz6g0i/k+Cn+GFXSqV474aBY+D 0gyIm+fYb9PeGokhp2bhrFRwUXAHeW2SySNui9jNQMRKPZuRuO7/0G16ZzjYj5prcH+/zl XcOATVd2bvaYu/APhM9yRQkk1ondtRSx9s1/xPZ+fWKLKpKnKMZo+JljcZrTaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747183905; 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=1JeL4STdQoPmndALagXpKHjp/VfRG1meGsPZhc09+Fc=; b=iv7ePrpXyYHiK+dwtxXtyhYVvffj0PSKkY+7nQCRFDwn7QFn7z87ndzUdvMTPQICRvq5aP QJH0qE8Mp0/RLIfgjg22EybIrIjsi+zFX9He8wRwOnDQ+rTS0MrkxEUM0ujufhahs4PhEq hLxXb696po68k5ZsMwdINFPi8WA/OGPGz6AbzvstsamdNN3QCh7T+Hs8UqVShKIenASSCT tdJZUIAZFvdduWIVtx/Jgd/0fjCRzZC6FYpp9yOhLmxezj7KI6bGm8rYX/5LIjwVr0EZrk sTz4pPYLIyJ/uP8kdiVuxLYqmUcwJeCLmIsV9ib+8hTxbquH+ETy0qTNr16oTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747183905; a=rsa-sha256; cv=none; b=wZ5Pg39C93Y2/IS9GH6vR45v304F+Nxb4MlpjBjRwtsezBhuTq4SP0DrNubOC4rzLl5ocG PBW1LCLb/7XH/kQnfrsgkSMCNJsuvz+r6smCV4FS8WcFaJI2tJ38/oB8lPffsRuTJEIiD4 gdldkCoR42OxozdhP6tTw8p6Vj8V5mV6IhsEftcSuHB/fV3HbJXV74ixe3oK6KquhFMFwe Cj9JbgNeUxuLbsf0N9uOBDlYg3la6k0Xbhxr7zoCJxU7+Abddfh3P3dHdz5aWdOQHf6tM2 Y1GDiA3p05LkmQbb9HBoPR2kviG2aAo6OoulHIXyXT91s+gTXTQYrlRGQZWEcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxvtT2NLpz199m; Wed, 14 May 2025 00:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54E0pj6X041412; Wed, 14 May 2025 00:51:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54E0pjvA041409; Wed, 14 May 2025 00:51:45 GMT (envelope-from git) Date: Wed, 14 May 2025 00:51:45 GMT Message-Id: <202505140051.54E0pjvA041409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 735138131408 - main - vfs: Restore a require include 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 73513813140871969fff1af3525aec6f314652aa Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=73513813140871969fff1af3525aec6f314652aa commit 73513813140871969fff1af3525aec6f314652aa Author: Mark Johnston AuthorDate: 2025-05-14 00:43:42 +0000 Commit: Mark Johnston CommitDate: 2025-05-14 00:49:09 +0000 vfs: Restore a require include BO_LOCK etc. require rwlock.h. For some reason this only manifested as a build failure for 32-bit powerpc. Reported by: Jenkins Fixes: aee6c83e06a8 ("vfs: Sort includes in vfs_vnops.c") --- sys/kern/vfs_vnops.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 78888ec22e9a..696f5c11c8fc 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -62,6 +62,7 @@ #include #include #include +#include #include #include #include From nobody Wed May 14 01:11:33 2025 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 4ZxwKK3y1fz5wHtK; Wed, 14 May 2025 01:11:33 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxwKK3QlVz3P4S; Wed, 14 May 2025 01:11:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747185093; 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=gi8bd72ywWjbC5h7Ws8lbFAe7GYVmSZS5IR7egJafaI=; b=xzjXhMKABbEFw57ByqjShLyjZqbh8MI8oEq38uL6Qcs+vAUsu1axbBaD20cb+KtmBco2k1 gl2ysEoXuqkQHxZ9Knax1Zgc84OvW3/eu2hzGJKWFySkBJJVg6IcTr0tNPCW3qx2TqlrvR JNAPPxDcBUIs2c8AGaOXfO9XB+Bum9TkVfu7KBxctkBdwdeIm5Wc5w0XD2xuHF/Iw9OI5u s5hCzHN0vtbFruHI3uqgFpanToT74DWx6936NJ3JVGVmitIGlBNTrg7ovZOoP3MmeKujcr xhxrMZUM67TaRjbeAn6ceCxpHbh5yfbhGoQpxoIbxQJBM5k33pBdv8AWsy5BoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747185093; 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=gi8bd72ywWjbC5h7Ws8lbFAe7GYVmSZS5IR7egJafaI=; b=Eu/7LIxVr5VxGWJzqNWlrroPcnvWTXYdXb2j1Yv2ah5MnprXcVhSAiHbJbNlPObLguRWW9 WhnNlYKj5/Iu67IX0+t4NXeaaRIXejcgyUOMBisqTjIwOw0m8oDq8wj9b1QyYjLVIoFpWT kBq1NvAOOaeheMfqcK3VM/CCQa/JsPoBE7EwWy/sn+wPJlHUde+N8uIv1+zcl4TvKOF/ul L3/NOzvrJHWRT80npHFctwJnegsbFU4OBijo95RLtJi5AF0YgZcfH3quhFEVvqu1vo8ztu 2P1iQCspDhgm1Za6kZSohhT6TSiCzoFcLbE9Rg6fRvxoy+lLecX5nUbFTjBVJg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747185093; a=rsa-sha256; cv=none; b=DHT+1suo9hgZPEdbE411RFP/xyz4u2rOWvrp2Bd5axwbCb59uc9xyzSk9iMdsNgCPsaoPj Ylf0pSW5x/VIWPtu0e0cIVa8dBYLq1klZAAcmEG95TylBvzmstqlPwD3Rai2N2iLlEG0lr Eo6/BNSwZsLGCdKxDiFzebbvJ8HTkoFTXLBLJ164sahaOAXks7e3jkfrwwn/EqKZ2fuW5E wdPSkcBwkpV3RwYJCQ4pJh/+Tsy4hWFmiq56gPNW24cqVbXaZDVDQB5pN+Oid83WkOBuge EPH2TFO9ljTOGhmGTphHwdP36LqSlJPjWX82XDAei2t9mkF1JHfkFYWjQz3rYw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxwKK2zPMz19C9; Wed, 14 May 2025 01:11:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54E1BX5H076605; Wed, 14 May 2025 01:11:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54E1BXp6076602; Wed, 14 May 2025 01:11:33 GMT (envelope-from git) Date: Wed, 14 May 2025 01:11:33 GMT Message-Id: <202505140111.54E1BXp6076602@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: b87a926098b2 - main - rtlbtfw(8): Add support for firmware file format V2 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b87a926098b291e2baf45ffc13c076ba0b0f0d74 Auto-Submitted: auto-generated The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=b87a926098b291e2baf45ffc13c076ba0b0f0d74 commit b87a926098b291e2baf45ffc13c076ba0b0f0d74 Author: Vladimir Kondratyev AuthorDate: 2025-05-14 01:09:40 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-14 01:09:40 +0000 rtlbtfw(8): Add support for firmware file format V2 As Realtek changed format of the firmware files for recent adaptors. Sponsored by: Future Crew, LLC MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D50082 --- usr.sbin/bluetooth/rtlbtfw/main.c | 19 +++- usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c | 195 ++++++++++++++++++++++++++++++++-- usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h | 53 ++++++++- usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c | 35 ++++++ usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.h | 13 +++ 5 files changed, 302 insertions(+), 13 deletions(-) diff --git a/usr.sbin/bluetooth/rtlbtfw/main.c b/usr.sbin/bluetooth/rtlbtfw/main.c index e0445726c3a2..700b9b43bafa 100644 --- a/usr.sbin/bluetooth/rtlbtfw/main.c +++ b/usr.sbin/bluetooth/rtlbtfw/main.c @@ -76,7 +76,6 @@ static struct rtlbt_devid rtlbt_list[] = { { .vendor_id = 0x04ca, .product_id = 0x4006 }, { .vendor_id = 0x0cb8, .product_id = 0xc549 }, -#ifdef RTLBTFW_SUPPORTS_FW_V2 /* Realtek 8852CE Bluetooth devices */ { .vendor_id = 0x04ca, .product_id = 0x4007 }, { .vendor_id = 0x04c5, .product_id = 0x1675 }, @@ -84,7 +83,6 @@ static struct rtlbt_devid rtlbt_list[] = { { .vendor_id = 0x13d3, .product_id = 0x3587 }, { .vendor_id = 0x13d3, .product_id = 0x3586 }, { .vendor_id = 0x13d3, .product_id = 0x3592 }, -#endif /* Realtek 8852BE Bluetooth devices */ { .vendor_id = 0x0cb8, .product_id = 0xc559 }, @@ -312,6 +310,7 @@ main(int argc, char *argv[]) char *firmware_dir = NULL; char *firmware_path = NULL; char *config_path = NULL; + const char *fw_suffix; int retcode = 1; const struct rtlbt_id_table *ic; uint8_t rom_version; @@ -410,7 +409,8 @@ main(int argc, char *argv[]) if (firmware_dir == NULL) firmware_dir = strdup(_DEFAULT_RTLBT_FIRMWARE_PATH); - firmware_path = rtlbt_get_fwname(ic->fw_name, firmware_dir, "_fw.bin"); + fw_suffix = ic->fw_suffix == NULL ? "_fw.bin" : ic->fw_suffix; + firmware_path = rtlbt_get_fwname(ic->fw_name, firmware_dir, fw_suffix); if (firmware_path == NULL) goto shutdown; @@ -449,7 +449,18 @@ main(int argc, char *argv[]) rtlbt_debug("rom_version = %d", rom_version); /* Load in the firmware */ - r = rtlbt_parse_fwfile_v1(&fw, rom_version); + if (fw_type == RTLBT_FW_TYPE_V2) { + uint8_t key_id, reg_val[2]; + r = rtlbt_read_reg16(hdl, RTLBT_SEC_PROJ, reg_val); + if (r < 0) { + rtlbt_err("rtlbt_read_reg16() failed code %d", r); + goto shutdown; + } + key_id = reg_val[0]; + rtlbt_debug("key_id = %d", key_id); + r = rtlbt_parse_fwfile_v2(&fw, rom_version, key_id); + } else + r = rtlbt_parse_fwfile_v1(&fw, rom_version); if (r < 0) { rtlbt_err("Parseing firmware file failed"); goto shutdown; diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c index bb3d20d79527..c58a8feb41a4 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c @@ -105,20 +105,19 @@ static const struct rtlbt_id_table rtlbt_ic_id_table[] = { .hci_version = 0xb, .flags = RTLBT_IC_FLAG_MSFT, .fw_name = "rtl8852bu", -#ifdef RTLBTFW_SUPPORTS_FW_V2 }, { /* 8852C */ .lmp_subversion = RTLBT_ROM_LMP_8852A, .hci_revision = 0xc, .hci_version = 0xc, .flags = RTLBT_IC_FLAG_MSFT, .fw_name = "rtl8852cu", + .fw_suffix = "_fw_v2.bin", }, { /* 8851B */ .lmp_subversion = RTLBT_ROM_LMP_8851B, .hci_revision = 0xb, .hci_version = 0xc, .flags = RTLBT_IC_FLAG_MSFT, .fw_name = "rtl8851bu", -#endif }, }; @@ -144,10 +143,8 @@ static const uint16_t project_ids[] = { /* Signatures */ static const uint8_t fw_header_sig_v1[8] = {0x52, 0x65, 0x61, 0x6C, 0x74, 0x65, 0x63, 0x68}; /* Realtech */ -#ifdef RTLBTFW_SUPPORTS_FW_V2 static const uint8_t fw_header_sig_v2[8] = {0x52, 0x54, 0x42, 0x54, 0x43, 0x6F, 0x72, 0x65}; /* RTBTCore */ -#endif static const uint8_t fw_ext_sig[4] = {0x51, 0x04, 0xFD, 0x77}; int @@ -260,12 +257,10 @@ rtlbt_get_fw_type(struct rtlbt_firmware *fw, uint16_t *fw_lmp_subversion) fw_type = RTLBT_FW_TYPE_V1; fw_header_len = sizeof(struct rtlbt_fw_header_v1); } else -#ifdef RTLBTFW_SUPPORTS_FW_V2 if (memcmp(fw->buf, fw_header_sig_v2, sizeof(fw_header_sig_v2)) == 0) { fw_type = RTLBT_FW_TYPE_V2; fw_header_len = sizeof(struct rtlbt_fw_header_v2); } else -#endif return (RTLBT_FW_TYPE_UNKNOWN); if (fw->len < fw_header_len + sizeof(fw_ext_sig) + 4) { @@ -367,6 +362,194 @@ rtlbt_parse_fwfile_v1(struct rtlbt_firmware *fw, uint8_t rom_version) return (0); } +static void * +rtlbt_iov_fetch(struct rtlbt_iov *iov, uint32_t len) +{ + void *data = NULL; + + if (iov->len >= len) { + data = iov->data; + iov->data += len; + iov->len -= len; + } + + return (data); +} + +static int +rtlbt_patch_entry_cmp(struct rtlbt_patch_entry *a, struct rtlbt_patch_entry *b, + void *thunk __unused) +{ + return ((a->prio > b->prio) - (a->prio < b->prio)); +} + +static int +rtlbt_parse_section(struct rtlbt_patch_list *patch_list, uint32_t opcode, + uint8_t *data, uint32_t len, uint8_t rom_version, uint8_t key_id) +{ + struct rtlbt_sec_hdr *hdr; + struct rtlbt_patch_entry *entry; + struct rtlbt_subsec_hdr *subsec_hdr; + struct rtlbt_subsec_security_hdr *subsec_security_hdr; + uint16_t num_subsecs; + uint8_t *subsec_data; + uint32_t subsec_len; + int i, sec_len = 0; + struct rtlbt_iov iov = { + .data = data, + .len = len, + }; + + hdr = rtlbt_iov_fetch(&iov, sizeof(*hdr)); + if (hdr == NULL) { + errno = EINVAL; + return (-1); + } + num_subsecs = le16toh(hdr->num); + + for (i = 0; i < num_subsecs; i++) { + subsec_hdr = rtlbt_iov_fetch(&iov, sizeof(*subsec_hdr)); + if (subsec_hdr == NULL) + break; + subsec_len = le32toh(subsec_hdr->len); + + rtlbt_debug("subsection, eco 0x%02x, prio 0x%02x, len 0x%x", + subsec_hdr->eco, subsec_hdr->prio, subsec_len); + + subsec_data = rtlbt_iov_fetch(&iov, subsec_len); + if (subsec_data == NULL) + break; + + if (subsec_hdr->eco == rom_version + 1) { + if (opcode == RTLBT_PATCH_SECURITY_HEADER) { + subsec_security_hdr = (void *)subsec_hdr; + if (subsec_security_hdr->key_id == key_id) + break; + continue; + } + + entry = calloc(1, sizeof(*entry)); + if (entry == NULL) { + errno = ENOMEM; + return (-1); + } + *entry = (struct rtlbt_patch_entry) { + .opcode = opcode, + .len = subsec_len, + .prio = subsec_hdr->prio, + .data = subsec_data, + }; + SLIST_INSERT_HEAD(patch_list, entry, next); + sec_len += subsec_len; + } + } + + return (sec_len); +} + +int +rtlbt_parse_fwfile_v2(struct rtlbt_firmware *fw, uint8_t rom_version, + uint8_t key_id) +{ + struct rtlbt_fw_header_v2 *hdr; + struct rtlbt_section *section; + struct rtlbt_patch_entry *entry; + uint32_t num_sections; + uint32_t section_len; + uint32_t opcode; + int seclen, len = 0, patch_len = 0; + uint32_t i; + uint8_t *section_data, *patch_buf; + struct rtlbt_patch_list patch_list = + SLIST_HEAD_INITIALIZER(patch_list); + struct rtlbt_iov iov = { + .data = fw->buf, + .len = fw->len - 7, + }; + + hdr = rtlbt_iov_fetch(&iov, sizeof(*hdr)); + if (hdr == NULL) { + errno = EINVAL; + return (-1); + } + num_sections = le32toh(hdr->num_sections); + + rtlbt_debug("FW version %02x%02x%02x%02x-%02x%02x%02x%02x", + hdr->fw_version[0], hdr->fw_version[1], + hdr->fw_version[2], hdr->fw_version[3], + hdr->fw_version[4], hdr->fw_version[5], + hdr->fw_version[6], hdr->fw_version[7]); + + for (i = 0; i < num_sections; i++) { + section = rtlbt_iov_fetch(&iov, sizeof(*section)); + if (section == NULL) + break; + section_len = le32toh(section->len); + opcode = le32toh(section->opcode); + + rtlbt_debug("section, opcode 0x%08x", section->opcode); + + section_data = rtlbt_iov_fetch(&iov, section_len); + if (section_data == NULL) + break; + + seclen = 0; + switch (opcode) { + case RTLBT_PATCH_SECURITY_HEADER: + if (key_id == 0) + break; + /* FALLTHROUGH */ + case RTLBT_PATCH_SNIPPETS: + case RTLBT_PATCH_DUMMY_HEADER: + seclen = rtlbt_parse_section(&patch_list, opcode, + section_data, section_len, rom_version, key_id); + break; + default: + break; + } + if (seclen < 0) { + rtlbt_err("Section parse (0x%08x) failed. err %d", + opcode, errno); + return (-1); + } + len += seclen; + } + + if (len == 0) { + errno = ENOMSG; + return (-1); + } + + patch_buf = calloc(1, len); + if (patch_buf == NULL) { + errno = ENOMEM; + return (-1); + } + + SLIST_MERGESORT(&patch_list, NULL, + rtlbt_patch_entry_cmp, rtlbt_patch_entry, next); + while (!SLIST_EMPTY(&patch_list)) { + entry = SLIST_FIRST(&patch_list); + rtlbt_debug("opcode 0x%08x, addr 0x%p, len 0x%x", + entry->opcode, entry->data, entry->len); + memcpy(patch_buf + patch_len, entry->data, entry->len); + patch_len += entry->len; + SLIST_REMOVE_HEAD(&patch_list, next); + free(entry); + } + + if (patch_len == 0) { + errno = EPERM; + return (-1); + } + + free(fw->buf); + fw->buf = patch_buf; + fw->len = patch_len; + + return (0); +} + int rtlbt_append_fwfile(struct rtlbt_firmware *fw, struct rtlbt_firmware *opt) { diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h index 340abacba759..48b30cb2289b 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h @@ -30,7 +30,8 @@ #ifndef __RTLBT_FW_H__ #define __RTLBT_FW_H__ -#include +#include +#include #define RTLBT_ROM_LMP_8703B 0x8703 #define RTLBT_ROM_LMP_8723A 0x1200 @@ -41,12 +42,14 @@ #define RTLBT_ROM_LMP_8852A 0x8852 #define RTLBT_ROM_LMP_8851B 0x8851 +#define RTLBT_PATCH_SNIPPETS 0x01 +#define RTLBT_PATCH_DUMMY_HEADER 0x02 +#define RTLBT_PATCH_SECURITY_HEADER 0x03 + enum rtlbt_fw_type { RTLBT_FW_TYPE_UNKNOWN, RTLBT_FW_TYPE_V1, -#ifdef RTLBTFW_SUPPORTS_FW_V2 RTLBT_FW_TYPE_V2, -#endif }; struct rtlbt_id_table { @@ -58,6 +61,7 @@ struct rtlbt_id_table { #define RTLBT_IC_FLAG_CONFIG (1 << 1) #define RTLBT_IC_FLAG_MSFT (2 << 1) const char *fw_name; + const char *fw_suffix; }; struct rtlbt_firmware { @@ -66,6 +70,21 @@ struct rtlbt_firmware { unsigned char *buf; }; +SLIST_HEAD(rtlbt_patch_list, rtlbt_patch_entry); + +struct rtlbt_patch_entry { + SLIST_ENTRY(rtlbt_patch_entry) next; + uint32_t opcode; + uint32_t len; + uint8_t prio; + uint8_t *data; +}; + +struct rtlbt_iov { + uint8_t *data; + uint32_t len; +}; + struct rtlbt_fw_header_v1 { uint8_t signature[8]; uint32_t fw_version; @@ -78,6 +97,32 @@ struct rtlbt_fw_header_v2 { uint32_t num_sections; } __attribute__ ((packed)); +struct rtlbt_section { + uint32_t opcode; + uint32_t len; + uint8_t data[]; +} __attribute__ ((packed)); + +struct rtlbt_sec_hdr { + uint16_t num; + uint16_t reserved; +} __attribute__ ((packed)); + +struct rtlbt_subsec_hdr { + uint8_t eco; + uint8_t prio; + uint8_t cb[2]; + uint32_t len; +} __attribute__ ((packed)); + +struct rtlbt_subsec_security_hdr { + uint8_t eco; + uint8_t prio; + uint8_t key_id; + uint8_t reserved; + uint32_t len; +} __attribute__ ((packed)); + int rtlbt_fw_read(struct rtlbt_firmware *fw, const char *fwname); void rtlbt_fw_free(struct rtlbt_firmware *fw); char *rtlbt_get_fwname(const char *fw_name, const char *prefix, @@ -87,6 +132,8 @@ const struct rtlbt_id_table *rtlbt_get_ic(uint16_t lmp_subversion, enum rtlbt_fw_type rtlbt_get_fw_type(struct rtlbt_firmware *fw, uint16_t *fw_lmp_subversion); int rtlbt_parse_fwfile_v1(struct rtlbt_firmware *fw, uint8_t rom_version); +int rtlbt_parse_fwfile_v2(struct rtlbt_firmware *fw, uint8_t rom_version, + uint8_t reg_id); int rtlbt_append_fwfile(struct rtlbt_firmware *fw, struct rtlbt_firmware *opt); #endif diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c index 21f2c3e2804f..82e22d406ea9 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c @@ -178,6 +178,41 @@ rtlbt_read_rom_ver(struct libusb_device_handle *hdl, uint8_t *ver) return (0); } +int +rtlbt_read_reg16(struct libusb_device_handle *hdl, + struct rtlbt_vendor_cmd *vcmd, uint8_t *resp) +{ + int ret, transferred; + struct rtlbt_hci_event_cmd_compl *event; + uint8_t cmd_buf[offsetof(struct rtlbt_hci_cmd, data) + sizeof(*vcmd)]; + struct rtlbt_hci_cmd *cmd = (struct rtlbt_hci_cmd *)cmd_buf; + cmd->opcode = htole16(0xfc61); + cmd->length = sizeof(struct rtlbt_vendor_cmd); + memcpy(cmd->data, vcmd, sizeof(struct rtlbt_vendor_cmd)); + uint8_t buf[RTLBT_HCI_EVT_COMPL_SIZE(struct rtlbt_vendor_rp)]; + + memset(buf, 0, sizeof(buf)); + + ret = rtlbt_hci_command(hdl, + cmd, + buf, + sizeof(buf), + &transferred, + RTLBT_HCI_CMD_TIMEOUT); + + if (ret < 0 || transferred != sizeof(buf)) { + rtlbt_debug("Can't read reg16: code=%d, size=%d", + ret, + transferred); + return (-1); + } + + event = (struct rtlbt_hci_event_cmd_compl *)buf; + memcpy(resp, &(((struct rtlbt_vendor_rp *)event->data)->data), 2); + + return (0); +} + int rtlbt_load_fwfile(struct libusb_device_handle *hdl, const struct rtlbt_firmware *fw) diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.h b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.h index bc7c9fee3f57..a7200a440272 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.h +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.h @@ -95,9 +95,22 @@ struct rtlbt_hci_dl_rp { uint8_t index; } __attribute__ ((packed)); +/* Vendor USB request payload */ +struct rtlbt_vendor_cmd { + uint8_t data[5]; +} __attribute__ ((packed)); +#define RTLBT_SEC_PROJ (&(struct rtlbt_vendor_cmd) {{0x10, 0xA4, 0x0D, 0x00, 0xb0}}) + +struct rtlbt_vendor_rp { + uint8_t status; + uint8_t data[2]; +}; + int rtlbt_read_local_ver(struct libusb_device_handle *hdl, ng_hci_read_local_ver_rp *ver); int rtlbt_read_rom_ver(struct libusb_device_handle *hdl, uint8_t *ver); +int rtlbt_read_reg16(struct libusb_device_handle *hdl, + struct rtlbt_vendor_cmd *cmd, uint8_t *resp); int rtlbt_load_fwfile(struct libusb_device_handle *hdl, const struct rtlbt_firmware *fw); From nobody Wed May 14 01:11:34 2025 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 4ZxwKM0cdYz5wHtL; Wed, 14 May 2025 01:11:35 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZxwKL3wBPz3PBq; Wed, 14 May 2025 01:11:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747185094; 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=kNNUUdP05HJvHfH6/Yn2/OcB+hY2UU85wQl+5zryceo=; b=ipFM0R2PLG2fLI7t5M9PMpoSfUvDhPX+F9XLrnl6UMr/FF26a00I0BsGZMkVCGTaSrC3RM 5Y39gQacAhNNhRpf1HwPbsUKej/b6Iwa+pVs3wh49Qo8eUcywIuxjmD+Rw7T88wALjR+eY ioaazMLIV8VB2EwvVOkxiEK7etupS9BCI6zsVUie6t5KCXjXr8zofZG2oCfDvFQG1TKn9I VHp6Toc3d7yehz0xASeREu8K/fLQ+jHZMwwQF4X6ZJanqJiaA369yd3u7gNwZuI9mi6v6E S9HkNmh66T7hB0zUUrGtKqHZUP75sMijmk03C8z0i6z548ban+x+1sUrPv3QRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747185094; 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=kNNUUdP05HJvHfH6/Yn2/OcB+hY2UU85wQl+5zryceo=; b=vk4SimW3MWzoV5/EhgVTzzNqLfp5OAMQNB+y3YAyCilguHLAQhR1y4pNK7V1bIyr9KwwbO 75vh2/F3HpQzD88tjOO94FxzEYL+tKqxIhrUwB/t9GMGtGZQrb+T+uhPQeZt6ZlOnnuhBJ QB2i2+XH+3bV8dBS1FuNO54HDrug+cLBT84y0DzUZppi05VreyhHtK4eNpaDEwQjgncoQX dp6m89tlzw4SytGGyrw62YeQ6tSFt7AIzqNh8jIr+ClfaLH4QMqT+NgcgkANJOiHTcWtxW F6noeJuqFdaVMyY5ShBmpb1QUB4Jk549Foh75ZVRJsc42gSvuw+Idoq01lPjQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747185094; a=rsa-sha256; cv=none; b=UTkgKbuz965WBd2pg23DwvdgfQu8CpBwCJ3BL/CsNpO6/dB5cYjAUOTiTy1t5j/pY1K4cS MCsPTWsOvrF6UvkPY0jEiTY9gJ9mskVMvxLFpyVzTHnwRuKfeH6E1yr8NwOnbXeOeEeOUz mgrF5wQhjJzM2k/MqhDCCVMhmz4wNOql3N2IY+vwRRq1eFvECjFUcQnmHeoDF2zzei7jyQ 1K8QZdLMxQmp/pMaibz+Qj2W1JNmFAAQ1Do2ED00NC5y4JW0BZIGMZ8upavy/HBabrGzMj SwFYkG9hfXNmrEfposo5ykAIoJTsyh2SebSyj0W9nj/AFhHdcoXfhEjX79iJHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZxwKL3R0hz19CC; Wed, 14 May 2025 01:11:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54E1BYgf076641; Wed, 14 May 2025 01:11:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54E1BYCj076638; Wed, 14 May 2025 01:11:34 GMT (envelope-from git) Date: Wed, 14 May 2025 01:11:34 GMT Message-Id: <202505140111.54E1BYCj076638@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: d4147ad1a2b9 - main - Added identifiers for additional PS4 DualShock controller variants 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d4147ad1a2b9d6e7a862a63894da604c61721786 Auto-Submitted: auto-generated The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=d4147ad1a2b9d6e7a862a63894da604c61721786 commit d4147ad1a2b9d6e7a862a63894da604c61721786 Author: Kevin Reinholz AuthorDate: 2025-05-14 01:09:41 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-14 01:09:41 +0000 Added identifiers for additional PS4 DualShock controller variants PR: 285215 MFC after: 1 week --- sys/dev/hid/ps4dshock.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/dev/hid/ps4dshock.c b/sys/dev/hid/ps4dshock.c index 537f70cadec0..d3c6b3eeadf9 100644 --- a/sys/dev/hid/ps4dshock.c +++ b/sys/dev/hid/ps4dshock.c @@ -771,18 +771,34 @@ static const struct hidmap_item ps4dsmtp_map[] = { static const struct hid_device_id ps4dshock_devs[] = { { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x9cc), HID_TLC(HUP_GENERIC_DESKTOP, HUG_GAME_PAD) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x5c4), + HID_TLC(HUP_GENERIC_DESKTOP, HUG_GAME_PAD) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0xba0), + HID_TLC(HUP_GENERIC_DESKTOP, HUG_GAME_PAD) }, }; static const struct hid_device_id ps4dsacc_devs[] = { { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x9cc), HID_TLC(HUP_GENERIC_DESKTOP, HUG_MULTIAXIS_CNTROLLER) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x5c4), + HID_TLC(HUP_GENERIC_DESKTOP, HUG_MULTIAXIS_CNTROLLER) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0xba0), + HID_TLC(HUP_GENERIC_DESKTOP, HUG_MULTIAXIS_CNTROLLER) }, }; static const struct hid_device_id ps4dshead_devs[] = { { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x9cc), HID_TLC(HUP_CONSUMER, HUC_HEADPHONE) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x5c4), + HID_TLC(HUP_CONSUMER, HUC_HEADPHONE) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0xba0), + HID_TLC(HUP_CONSUMER, HUC_HEADPHONE) }, }; static const struct hid_device_id ps4dsmtp_devs[] = { { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x9cc), HID_TLC(HUP_DIGITIZERS, HUD_TOUCHPAD) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0x5c4), + HID_TLC(HUP_DIGITIZERS, HUD_TOUCHPAD) }, + { HID_BVP(BUS_USB, USB_VENDOR_SONY, 0xba0), + HID_TLC(HUP_DIGITIZERS, HUD_TOUCHPAD) }, }; static int From nobody Wed May 14 09:09:17 2025 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 4Zy6wZ2TMNz5wPCq; Wed, 14 May 2025 09:09:18 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zy6wZ1cv3z3S37; Wed, 14 May 2025 09:09:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747213758; 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=o/d1HVvaPDL7PKrm2hFeZEju5iIBLKtjkBNilsZoIQE=; b=LT7WGBeidfTGEIFe/5W6Ix8FWI7Efpp821BlMQ3e/bKAXKgtxXuKQwKAnFsp9DlN1zrc/i zcQ/FpvWz1qHtlOEwMGfXTQLP5auwL/TZm3JhRiG/7TvnNAEWnLJ6rfIKgRN6PhKa8e17m tpPcM2M3Ifn2CMNlHsGh+mrgJa64aojpBMtvxcwyzOWrqy46N70p1G7lxLJBZhYm9u3ag3 /Hmk+0PqPFv4vlp0y/PW7d+ji/1tj3VLFvsD/FJ9pg3okDMc7yjPSNmp0ZTniuk8m1iuLV 9Pmh65PDGdHTMpX1GvqhZ15zkMcrWXNy7HzCcfy28PpNomRD1lcOy4gRyu4JIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747213758; 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=o/d1HVvaPDL7PKrm2hFeZEju5iIBLKtjkBNilsZoIQE=; b=ol7lOybB+H2iJrDGbEYSSX0FMBIIgRo7nxk+o1eFXtsc72deOH+VkiRC+gnUefek7sGYKF JCSrEtP3puvX9S7uJTvtrZwtfTBlbA6GER9903hUNRO53EPIRzW3JCM+MNPakGi7zSZJuF JiohaIoIrs25pcR55BwPayIqHhJpTJ655oIkST5tSa2wfnr73llQbKNmEaia450KpqGV6R DGx+ZXw3sWJThqeP8srlLgPoiJjrFg5iSlEKwfo3FrSTlQucZEZ5IXdlkvt+o6ftqX8t09 uifQzz6lOQ8eMNXExf8sVrS6i1HxcX4M9a7GvE9KRs9Arx5/oQAiAC9aUrsZ6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747213758; a=rsa-sha256; cv=none; b=q8XFfby6GOlDbYDNzxNChaYLNKuIfLQRdeXbqPF+WaaWIY1CGn+sVjXv/E9SFqUp4kFS8n /JdCS2hBzJ7Pgg9QgCoL8UrJKpPi2u3alYdrEriKp29HIkBE+cr/Jd+sISAWKJyZ5WEC+q Yrv6RDjqWLyIr33mUZsZbaUtRIr0GsqPMJRuYuK2l8uaZWOKIXywTSKvMrYDlgNl2bx9hK 8fDImqZVuKSrnF4C2LiUSnWZsizrufnbmbj5YBIuzfoZ51HKyWARctdXm+TqYWIK9e1nCj UmINb1m/jq2iJYwf6GFH+CvPsokmCVmR71jDd4yK9tqPebEX+rga3QrwcnSMYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zy6wZ0JhRz9w2; Wed, 14 May 2025 09:09:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54E99HQD062843; Wed, 14 May 2025 09:09:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54E99HGa062840; Wed, 14 May 2025 09:09:17 GMT (envelope-from git) Date: Wed, 14 May 2025 09:09:17 GMT Message-Id: <202505140909.54E99HGa062840@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: cbc3efab49aa - stable/14 - mbuf: Allow clusters to fill an entire jumbo page. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cbc3efab49aaa69acd3ac1701bc11095a4373d0a Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=cbc3efab49aaa69acd3ac1701bc11095a4373d0a commit cbc3efab49aaa69acd3ac1701bc11095a4373d0a Author: Dag-Erling Smørgrav AuthorDate: 2025-05-07 18:58:48 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-14 09:08:41 +0000 mbuf: Allow clusters to fill an entire jumbo page. The assumption that MCLBYTES == MJUMPAGESIZE can only happen if pages are small is incorrect: it can also happen if MCLSHIFT is adjusted to increase the size of clusters. Restore the ability to have clusters fill a jumbo page, while still disallowing them from exceeding them. MFC after: 1 week Fixes: 840327e5ddf3, 9c3ad5ba932b Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Reviewed by: siderop1_netapp.com, kevans, brooks Differential Revision: https://reviews.freebsd.org/D50242 (cherry picked from commit 271128b0698653294acf0ed3457d5871af5b3ef1) --- sys/conf/NOTES | 3 ++- sys/dev/cxgbe/adapter.h | 4 ++++ sys/dev/cxgbe/t4_sge.c | 8 ++++++++ sys/kern/kern_mbuf.c | 4 ++-- sys/sys/mbuf.h | 6 ++++++ 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/sys/conf/NOTES b/sys/conf/NOTES index 6de8eab73027..55c1798bbffc 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -2047,7 +2047,8 @@ device rtwnfw # mismatch between the mbuf size assumed by the kernel and the mbuf size # assumed by a module. The only driver that currently has the ability to # detect a mismatch is ti(4). -options MCLSHIFT=11 # mbuf cluster shift in bits, 11 == 2KB +options MCLSHIFT=12 # mbuf cluster shift in bits, 12 == 4 kB + # default is 11 == 2 kB options MSIZE=256 # mbuf size in bytes # diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h index 3bf4f666ce7d..d3820245837a 100644 --- a/sys/dev/cxgbe/adapter.h +++ b/sys/dev/cxgbe/adapter.h @@ -107,7 +107,11 @@ enum { CTRL_EQ_QSIZE = 1024, TX_EQ_QSIZE = 1024, +#if MJUMPAGESIZE != MCLBYTES SW_ZONE_SIZES = 4, /* cluster, jumbop, jumbo9k, jumbo16k */ +#else + SW_ZONE_SIZES = 3, /* cluster, jumbo9k, jumbo16k */ +#endif CL_METADATA_SIZE = CACHE_LINE_SIZE, SGE_MAX_WR_NDESC = SGE_MAX_WR_LEN / EQ_ESIZE, /* max WR size in desc */ diff --git a/sys/dev/cxgbe/t4_sge.c b/sys/dev/cxgbe/t4_sge.c index cc927f27d318..7591db6cd833 100644 --- a/sys/dev/cxgbe/t4_sge.c +++ b/sys/dev/cxgbe/t4_sge.c @@ -570,7 +570,9 @@ t4_sge_modload(void) } if (largest_rx_cluster != MCLBYTES && +#if MJUMPAGESIZE != MCLBYTES largest_rx_cluster != MJUMPAGESIZE && +#endif largest_rx_cluster != MJUM9BYTES && largest_rx_cluster != MJUM16BYTES) { printf("Invalid hw.cxgbe.largest_rx_cluster value (%d)," @@ -579,7 +581,9 @@ t4_sge_modload(void) } if (safest_rx_cluster != MCLBYTES && +#if MJUMPAGESIZE != MCLBYTES safest_rx_cluster != MJUMPAGESIZE && +#endif safest_rx_cluster != MJUM9BYTES && safest_rx_cluster != MJUM16BYTES) { printf("Invalid hw.cxgbe.safest_rx_cluster value (%d)," @@ -718,7 +722,9 @@ t4_tweak_chip_settings(struct adapter *sc) uint16_t indsz = min(RX_COPY_THRESHOLD - 1, M_INDICATESIZE); static int sw_buf_sizes[] = { MCLBYTES, +#if MJUMPAGESIZE != MCLBYTES MJUMPAGESIZE, +#endif MJUM9BYTES, MJUM16BYTES }; @@ -855,7 +861,9 @@ t4_init_rx_buf_info(struct adapter *sc) int i, j, n; static int sw_buf_sizes[] = { /* Sorted by size */ MCLBYTES, +#if MJUMPAGESIZE != MCLBYTES MJUMPAGESIZE, +#endif MJUM9BYTES, MJUM16BYTES }; diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index a740c31789a1..69d82086c7a5 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -61,8 +61,8 @@ #include #include -_Static_assert(MJUMPAGESIZE > MCLBYTES, - "Cluster must be smaller than a jumbo page"); +_Static_assert(MCLBYTES <= MJUMPAGESIZE, + "Cluster must not be larger than a jumbo page"); /* * In FreeBSD, Mbufs and Mbuf Clusters are allocated from UMA diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index c17fc9dec9a4..65a328cb52a1 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -886,9 +886,11 @@ m_gettype(int size) case MCLBYTES: type = EXT_CLUSTER; break; +#if MJUMPAGESIZE != MCLBYTES case MJUMPAGESIZE: type = EXT_JUMBOP; break; +#endif case MJUM9BYTES: type = EXT_JUMBO9; break; @@ -934,9 +936,11 @@ m_getzone(int size) case MCLBYTES: zone = zone_clust; break; +#if MJUMPAGESIZE != MCLBYTES case MJUMPAGESIZE: zone = zone_jumbop; break; +#endif case MJUM9BYTES: zone = zone_jumbo9; break; @@ -1056,9 +1060,11 @@ m_cljset(struct mbuf *m, void *cl, int type) case EXT_CLUSTER: size = MCLBYTES; break; +#if MJUMPAGESIZE != MCLBYTES case EXT_JUMBOP: size = MJUMPAGESIZE; break; +#endif case EXT_JUMBO9: size = MJUM9BYTES; break; From nobody Wed May 14 09:09:18 2025 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 4Zy6wb2MgJz5wPCr; Wed, 14 May 2025 09:09:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zy6wb16LDz3S4l; Wed, 14 May 2025 09:09:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747213759; 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=qxUX1OyufeH1v/eBjawoFGLwfGJMArmzv2m5SBM7dLc=; b=pnVu8a39KGtF3IZh644uRjjZSlUbm/4W1XJ7TDn7PrbIEmLN76gn547qDHUrf2mumKSWfR 9aiAM6ZYcRu2zQ4CsNbudo/lKP02myJu5q5qAufsW2Kaiev31YowELiuk032qCKALKvMtP PcDCksX+pw/QrAFE06sXKJ9Z2QpB9y1XHllXtmo5SKtlzGwHwrLflwP1KIP+K2EXJfsaQy RNSxwCD/isldDzAF+vN76Jq8272ukZtja57VgvZo0Ewvj9B2xpCwE+rqgwWML5X3om0mOZ fPqzUHG2Zn71FXiBpk8cCs4MyUlwAb+QQQ/ngGv2oSZA/3dvxPsC1AGiTesDGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747213759; 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=qxUX1OyufeH1v/eBjawoFGLwfGJMArmzv2m5SBM7dLc=; b=TuDQCwpgjGkOukJBPq3TTttjSlDVyQrSyyNXncrSalZBWyvnsyCan7c1XMl5xbsQBkx8pn 4aXhmA2Li6H33av8qBRWK9z6NT0OjHfX7Y+vGEdHoB99WUcoTb4EKaP/TCIzeAhET7lVs5 vDl5b/3eYlSg54anX/LxmdJG736vQXZ/e37B/aQtuUl5TSCk5lhsl1bM21LuvP5ju3Aj2M 46cpHo1LBUFMH5nWutZhIaZ21qd4t4IPtI1d6ho3YJDen/ZD7T7vim3yE+hO/ZCZBmHn2i emgXJ/MaoGh18kV5H6C2PfXeyj+HxBDgxDUNKPsTQpJaPVoCmr4ecnW/jqIJew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747213759; a=rsa-sha256; cv=none; b=dcdGgB+6m+k+4PSNanTc+vkqOt8vBcWWxHYlzrCQgB0q0NUMVbvH9li9OI9HczSzSuBPeG Pq4YpjsUffZ8FeovxLa+pZiwNgH8m+T+xiQsBuE02pA1M0uMGwq3Lnf9VArPKMkNdquVqd 3udZZMMf2Ke5cU45UFgH5vR+oZXW/+uP6jHLkONAaQkALavzBYfez64B1ds8l72CZvxcoF mJq+2Zkeze8ldQLecShmXZYyr6YJMnBQ6U5AIz+HceuPRcsn2RTxosJfaR3PnbmvXWj6YF iXT+KHrdYWz0PlcEBP7JSbNKShcIExKpgd1zKmf2Xg8lac+hZ+QgxwuWxj3hMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zy6wb0jv4z9rg; Wed, 14 May 2025 09:09:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54E99JOk062879; Wed, 14 May 2025 09:09:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54E99Idu062876; Wed, 14 May 2025 09:09:18 GMT (envelope-from git) Date: Wed, 14 May 2025 09:09:18 GMT Message-Id: <202505140909.54E99Idu062876@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 242b52ba3c38 - stable/14 - bsdinstall: Use a login shell for final configuration. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 242b52ba3c38108f2c2af4194a031ed495b95dbc Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=242b52ba3c38108f2c2af4194a031ed495b95dbc commit 242b52ba3c38108f2c2af4194a031ed495b95dbc Author: Dag-Erling Smørgrav AuthorDate: 2025-05-11 21:00:35 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-14 09:08:42 +0000 bsdinstall: Use a login shell for final configuration. If the user accepts our offer of a shell to perform final configuration tasks before rebooting, start a login shell. This ensures it will have the correct PATH and be able to install packages without issues. PR: 286722 MFC after: 3 days Reviewed by: jrtc27, allanjude, emaste Differential Revision: https://reviews.freebsd.org/D50297 (cherry picked from commit 5870d6a1ef4ec5d6fc91d0f1635bca59e09a040d) --- usr.sbin/bsdinstall/scripts/auto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto index 6a89b3dfdd81..abd445282316 100755 --- a/usr.sbin/bsdinstall/scripts/auto +++ b/usr.sbin/bsdinstall/scripts/auto @@ -443,7 +443,7 @@ if [ -z "$BSDINSTALL_SKIP_MANUAL" ]; then clear echo This shell is operating in a chroot in the new system. \ When finished making configuration changes, type \"exit\". - chroot "$BSDINSTALL_CHROOT" /bin/sh 2>&1 + chroot "$BSDINSTALL_CHROOT" /bin/sh -l 2>&1 fi fi From nobody Wed May 14 11:44:15 2025 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 4ZyBMM2dMqz5wZVr; Wed, 14 May 2025 11:44:15 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyBMM25XMz3h9C; Wed, 14 May 2025 11:44:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747223055; 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=XDqYDcRteLJL3Ny5YvJyAJmbd+2//3LyfKi8XNOpLwg=; b=Z1ULtRj6++JVw/oFngyydw4JNM1mAMHsUjYfEFlphbA6ivuqCDc76BOZaD+NyFKmloSc08 ivCYU+y4Lkd+VTPhCKyGhc0PWhjFcC7WRDeAhBmDOPob2fztOJS0zOuc5XVv76E5Hx9Vgq L8QtjxbsT8qQY6OtWKk8r9NdZ6A66EMnWblTXTYZF9pClDjhedoEPokHH8YHDX+eBziJyA UQosHht/EmgthDm5A5pvsuu4RteUHh4sma99tIYX75k2sBGDqLbrn6CfsFtZrtTVdWTV0Z nOlo+yc0OZrxFhL1MzQlwmSCGREX+hFnYkvbtM5ZmADw6miIh69jTt2AF6sXOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747223055; 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=XDqYDcRteLJL3Ny5YvJyAJmbd+2//3LyfKi8XNOpLwg=; b=usZVR+weg3nAezV94BBMwE1i7oRt/x2XwHVBKKlQZe1YUdUmSr1PNMfUWd0FtIN1WrPp12 2IQGgmsbRPUph+mFg0uN+NSW4C9D0yifdIe8s6qbLQXqvEkZXqAYpNVJSnfmG6G48/08TO AMqwrEhPWv1+7PB0hAgGxZz7j2whHV6J46dGtCdP5AHrkpvXZc5G4+2m7QWhTJhUIq5tra eYt3wZPyfemaLlG9g+yeMgzVyrTe9A8fChnE0Gp+qI1db54O33Rd/2ECatavKBhu1+q243 jTeHlPHvytCgUSFTgtfF9gWtzNCbrcmj3HQwyEOalCnS3YRCGoo+Av3lvhzZhQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747223055; a=rsa-sha256; cv=none; b=vi+rYJ3eXY9Uy2O9EJOKj5Zk5byelmkixCAQ0pbU3y9AXXY708T+U0FBpouKLQbGsTTfTn bzRuZH+voyDDQK5B1LoclKvD0u79YuMaS459pa2kMGtxViP1Ss3J+dGp3q12gxQdIfJ6T/ 25wrBMCZM0rzXTsrQKIuWzgRX8vIXTqdcwnRXBagiAv3NxEomWFAuyZlEkP0Csp6Htl2xo cErU0ZT0MeVahgQtEpdV0NfaoqQ7qK6F64M6S8XAx+OxdG99Bb13kdq8nEToSbJiEUaiUW yWrCA4GPsQDh3S5Kvv+yRUUl+vn+X9d5MS6Zz+u0JBIS+x4F6MABZckc1U8BIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyBMM1ZH1zWwm; Wed, 14 May 2025 11:44:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EBiFVq060208; Wed, 14 May 2025 11:44:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EBiFKI060205; Wed, 14 May 2025 11:44:15 GMT (envelope-from git) Date: Wed, 14 May 2025 11:44:15 GMT Message-Id: <202505141144.54EBiFKI060205@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 3de66f369c1e - stable/14 - sound: Call PCM_RELEASE() if pcm_addchan() fails 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3de66f369c1e8db46ae938d446a72f6ff3493356 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=3de66f369c1e8db46ae938d446a72f6ff3493356 commit 3de66f369c1e8db46ae938d446a72f6ff3493356 Author: Christos Margiolis AuthorDate: 2025-05-13 22:02:41 +0000 Commit: Christos Margiolis CommitDate: 2025-05-14 11:42:05 +0000 sound: Call PCM_RELEASE() if pcm_addchan() fails Fixes: fd906e47b18f ("sound: Simplify locking during device creation") Sponsored by: The FreeBSD Foundation MFC after: 1 day Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50337 (cherry picked from commit dbfe79bbe5d5ebe296fbff2d101e0994d7881d0d) --- sys/dev/sound/pcm/sound.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 794e1586b511..cfac8f73990d 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -139,6 +139,7 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) { struct snddev_info *d = device_get_softc(dev); struct pcm_channel *ch; + int err = 0; PCM_LOCK(d); PCM_WAIT(d); @@ -147,13 +148,12 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) if (!ch) { device_printf(d->dev, "chn_init(%s, %d, %p) failed\n", cls->name, dir, devinfo); - PCM_UNLOCK(d); - return (ENODEV); + err = ENODEV; } PCM_RELEASE(d); PCM_UNLOCK(d); - return (0); + return (err); } static void From nobody Wed May 14 12:54:37 2025 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 4ZyCwY3RKrz5wfl4; Wed, 14 May 2025 12:54:37 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyCwY2Dwsz3n3w; Wed, 14 May 2025 12:54:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747227277; 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=xrWzMoSBazMOmkTZuLFOrxeCWR7WC2npHWBj29EG8Pk=; b=Fp6BRLVHIFit1Zmbv+4YHyVd0kOsShz3BgbePQJoI/Z9Mmu6uiwIubEaunlkPaMkWrTrqv aqXcTz0UN+SORvkpadCstwz4Jeh26DkMApCnI4hA618w7RPTPPUEHGl0BPRGGUMZODZF+q wLV57dL7ODOlq0yuLeXzElOs+BYSWYUdzPhazGtGYSOmnPYsHm8oMvgLUwwGARHczKBxVi n4YIGRXaO/HXYpFGiYjAyxFpY3MhL5K3AecmB4pBBOGJvLgPmXLhl1aa7V6zqwWj764u+V sMTRjENf1HQUfe8rqCcGXSMCy4+0XwxS+as7OYiqy10DkvD6NFytvK/r0HJQGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747227277; 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=xrWzMoSBazMOmkTZuLFOrxeCWR7WC2npHWBj29EG8Pk=; b=wv7zbjrYLO7BFiSED5hQPMKw3WH5h+bo2fL9vf7zoqMFrvCVVHmC4WnX4baYeLYRt17t88 abv9fLdNOQGQLtlFhiGgFoBTy7CUrNkl0Zs7QQz900BdVz18eTuvfd55ywbRNJMXHJ3Qjh sP+aH/X4j+YG1ZAkuoNA1NAPCJ6w4Cd5LKysSLoafzLUKtIWQs9kVjeMGyRLZxy2q3VdvM iPAslG2zVDOpQWzzLjH1p0qyJMRWnbVCFTcnsAuE4e7/HeblTlws4hE4Z7eN6B+svKkdNd o+lNBPRkX65ezeYjM46iO/CklgdazATXrx/wuVakkRbt/hpjnigcQAz51lFJVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747227277; a=rsa-sha256; cv=none; b=uWudlCDwD9X1qxTgYR1LVbwJX1bUefRlM3juZt0ZFv1pVHe+l5NSaKAtehC6XyB+W48n5u 1nLaTWV+ftRQUWkn7EMG/tZI0d41PSZFV3kcDj8VYfGfCthUXkkliCZkMPNZKxuUd8i1ea OhRixbdBZabCI1VL0HeQWFTGt+IDJJKmEgpLqp238SrKV9BgCb4T5T1htGAumY4We2asCZ teOGGgbPJIJ76GrNmyR/+VhmNReDtY1ngdpTwstnuS64SU96PxJjRqYmp5YhKWG0pNyPOo AzhDzrqlaTTWxKJmwK+35Ik358L908z1AA33kFES4CsfF0A/EZPrfZcF4WZTQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyCwY1hlqzZS9; Wed, 14 May 2025 12:54:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ECsbdc091082; Wed, 14 May 2025 12:54:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ECsb0N091079; Wed, 14 May 2025 12:54:37 GMT (envelope-from git) Date: Wed, 14 May 2025 12:54:37 GMT Message-Id: <202505141254.54ECsb0N091079@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 1203e7b1f05b - main - release: Use pkg install -f 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1203e7b1f05b49d95bf44801ddc1ab7e6a9eeb97 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=1203e7b1f05b49d95bf44801ddc1ab7e6a9eeb97 commit 1203e7b1f05b49d95bf44801ddc1ab7e6a9eeb97 Author: Isaac Freund AuthorDate: 2025-05-11 02:48:46 +0000 Commit: Ed Maste CommitDate: 2025-05-14 12:24:45 +0000 release: Use pkg install -f Without -f, pkg will not write to the METALOG file if the packages are already installed from a previous build, causing the packages to not be included in the final install media. Official builds start with a clean target directory and won't encounter an issue, but this change supports iteration in development of the release targets. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50344 --- release/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/release/Makefile b/release/Makefile index 72df23bfa52b..1a64c51d3400 100644 --- a/release/Makefile +++ b/release/Makefile @@ -76,7 +76,9 @@ PKG_ENV+= INSTALL_AS_USER=yes PKG_ENV+= ASSUME_ALWAYS_YES=yes PKG_ARGS+= -o METALOG=METALOG PKG_ARGS+= -r ${.TARGET} -o REPOS_DIR=${.CURDIR}/pkg_repos -PKG_INSTALL= env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} install +# Pass -f to make sure pkg writes to the METALOG even if the package +# is already installed from a previous build +PKG_INSTALL= env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} install -f PKG_CLEAN= env ${PKG_ENV} ${PKG_CMD} ${PKG_ARGS} clean -a .endif From nobody Wed May 14 13:50:12 2025 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 4ZyF8h5CDTz5wk8H; Wed, 14 May 2025 13:50:12 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyF8h4HFMz3s01; Wed, 14 May 2025 13:50:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747230612; 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=5DQRIUEUL74z5GKYzNGi1OGy3G01Hzzbla43rjZGG1g=; b=ZGZ7FeNZo9wTBvAVcl2CY9B37StQcJvhMp2uhKx6cNRixjnKUNuJHTNEQL573y4sOcj1Tf wMnC9WUGq2FS4z4acqxrv3yNo9pthWDq9nU1OtHtohZxNe7sI6h0QU1j2gdlTOgW60lfg0 AMiTX1MN2qe1i0dayL79nKBrl/Z/xWj47niyevR/jZR8MA4aNy/kSPDM2ASjNYqgGRS/45 tWv0Z/QhTKAQk7bP5FPGvncXzzZoaDNOpZm9R2GsKrhIi2VB4pMt7mbv35bJtzIgP+qzwV bpsUKSCVd6tA/cWAhuQm+A7d6ErLGJ9RypNLQbnCJVD1f5XmhXAoYLnNa2gS/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747230612; 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=5DQRIUEUL74z5GKYzNGi1OGy3G01Hzzbla43rjZGG1g=; b=Q2hcMwkHR/Px0Kk26ERnjPMdwEKPC7UWrUyQpdSv+l5iaLjJPA3/29z2z8tAG0xXU7ZGx1 eNvJecfcXnhUQMV4VWP8fNPhvI+EACgxhlciV9oYE4WfzenEhCHg7SGw+cLcPe2XW3n/tI 22KgIU8YpVfvarGF9L6fwtZ8t2F0Zebs3XWO/6o/PYwcrMTXBLCJ3HqQTN2v/qlamWYr+q fmdFDx/sr+6da4PuiFPHdF7IRFo9qQ3bxNqmyDynGI6UwFuGTRUE647pg0KnO7jVlb5NUe aooT3kSIygRpj12F1utHMmIyqhx1T5MiJiO/cr/h3UTnG85Uend/mU13VDasrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747230612; a=rsa-sha256; cv=none; b=cP1B6jq1a0jC81015ZfQZQEe9csRQGCc6xyfFuog5YoFaTms5IYceSg3aAwzS9lN/0tAeT /6ukowHF7Vd5OXl3q8ZVJjWVwYKKfdxuYxGXW6SckGZGZmedTEOdgHxtH/I7bRKVjrwWkz FueiQjmdAf5ZPfxpv67XqxNCa0WqhDvlTsXIIeCTWUDYyJL7NpGtYGwzpT7XpB1CzSWjsY G6RwT3izE5JCdfvlpn/lkSTtz0kuMGgH6GDbi1p7S6WOynBPRDmSHYhSdsrwT+uVkquO5E n8YRAmybArY6y2oStQ1Z6vCK/6hbrGk2Weh40zRxz6A7jGtBWaXFTpaUXkDypw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyF8h3ppkzbCs; Wed, 14 May 2025 13:50:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EDoCIw092203; Wed, 14 May 2025 13:50:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EDoCfX092192; Wed, 14 May 2025 13:50:12 GMT (envelope-from git) Date: Wed, 14 May 2025 13:50:12 GMT Message-Id: <202505141350.54EDoCfX092192@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: bf2166bd72ad - main - Revert "powernv: Add RF_BIGENDIAN resource flag" 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bf2166bd72ad691765ff5e081f00cbba6b12da61 Auto-Submitted: auto-generated The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=bf2166bd72ad691765ff5e081f00cbba6b12da61 commit bf2166bd72ad691765ff5e081f00cbba6b12da61 Author: Justin Hibbits AuthorDate: 2025-05-14 13:48:07 +0000 Commit: Justin Hibbits CommitDate: 2025-05-14 13:50:12 +0000 Revert "powernv: Add RF_BIGENDIAN resource flag" After further thinking, the nexus bus mappings are for the immediate peripherals, not downstream. Given this, and that historically PowerPC platforms have been big-endian by default, it makes sense to default mappings to BE always. If this changes in the future, the platform devices can explicitly mark their mappings with the RF_LITTLEENDIAN flag instead. This reverts commit 86d20eaadfd1a03e19d8bc8333c689b820299d52. --- sys/powerpc/include/resource.h | 1 - sys/powerpc/powernv/opal_pci.c | 2 +- sys/powerpc/powernv/xive.c | 2 +- sys/powerpc/powerpc/nexus.c | 4 +--- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/powerpc/include/resource.h b/sys/powerpc/include/resource.h index 6726104403d0..e7e9493569cc 100644 --- a/sys/powerpc/include/resource.h +++ b/sys/powerpc/include/resource.h @@ -47,6 +47,5 @@ */ #define RF_LITTLEENDIAN RF_SPARE1 -#define RF_BIGENDIAN RF_SPARE2 #endif /* !_MACHINE_RESOURCE_H_ */ diff --git a/sys/powerpc/powernv/opal_pci.c b/sys/powerpc/powernv/opal_pci.c index 622c8c2cc09b..8dee2c45c089 100644 --- a/sys/powerpc/powernv/opal_pci.c +++ b/sys/powerpc/powernv/opal_pci.c @@ -270,7 +270,7 @@ opalpci_attach(device_t dev) rid = 0; sc->r_reg = bus_alloc_resource_any(dev, SYS_RES_MEMORY, - &rid, RF_ACTIVE | RF_SHAREABLE | RF_BIGENDIAN); + &rid, RF_ACTIVE | RF_SHAREABLE); if (sc->r_reg == NULL) { device_printf(dev, "Failed to allocate PHB[%jd] registers\n", (uintmax_t)sc->phb_id); diff --git a/sys/powerpc/powernv/xive.c b/sys/powerpc/powernv/xive.c index aaf4953ba8a5..384ff4ef20d2 100644 --- a/sys/powerpc/powernv/xive.c +++ b/sys/powerpc/powernv/xive.c @@ -327,7 +327,7 @@ xive_attach(device_t dev) rid = 1; /* Get the Hypervisor-level register set. */ sc->sc_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, - &rid, RF_ACTIVE | RF_BIGENDIAN); + &rid, RF_ACTIVE); sc->sc_offset = XIVE_TM_QW3_HV; mtx_init(&sc->sc_mtx, "XIVE", NULL, MTX_DEF); diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 1dac56a84cf9..029b6ef8a479 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -287,10 +287,8 @@ nexus_map_resource(device_t bus, device_t child, struct resource *r, map->r_vaddr = pmap_mapdev_attr(start, length, args.memattr); if ((rman_get_flags(r) & RF_LITTLEENDIAN) != 0) map->r_bustag = &bs_le_tag; - else if ((rman_get_flags(r) & RF_BIGENDIAN) != 0) - map->r_bustag = &bs_be_tag; else - map->r_bustag = nexus_get_bus_tag(NULL, NULL); + map->r_bustag = &bs_be_tag; map->r_size = length; map->r_bushandle = (bus_space_handle_t)map->r_vaddr; break; From nobody Wed May 14 14:24:07 2025 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 4ZyFvr01D5z5wmGK; Wed, 14 May 2025 14:24:08 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyFvq6bnJz3vhS; Wed, 14 May 2025 14:24:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232647; 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=86u0D1xHQXA4xBrYVO29gxrJ6AYXOWy31731Ajo9Qp8=; b=nxs3MXKdSYu0QNN+xAUDLkFXnTgItbkb/VqRq2FTke1j30tRVUz9EhemKhDvdcDUYSjMHR F6GbRE5uXZrk1y+hXf49pudvI0WuzArLIISVmBKy/rgHsJsJfjHd8/1O/feGorA9glPULx JkWtJu2mvUEdDg0e/us8yYMSbDf8ecNc13346lil7enAZYHx/PU5jn80cng5nAoiWc+x4m YSDC2T4eU7//YB+PKZgQ+azulQZxaeTtT6Zvr1tflIlZ3A7aD3DAZmRRg9v3cPVoRr1qnH CUajXh49sKVdECoZ+WxxTG0Uo2trPqflAnsbFs0+lGyKu5rh5wll6bSJ29E1kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232647; 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=86u0D1xHQXA4xBrYVO29gxrJ6AYXOWy31731Ajo9Qp8=; b=wJglFSyu1ctF3zPK6A7MSZe7bSMna/8yqaoktUTXmWdJ1foiWXY2wpFu8mj45LJwZSKq1z 0tfOTru/Sxpqe1ZnNgs9+ace7ax+z6TWjUDzNuxn2AXR/ewJSc87KSFmRNRdqtKGiIqlTg 2PpSu37wu8EN1u8oBrvMk+Gnqo8jcOf8LDiCOM8kUPflcX+5blkgDpdx320nBEn9mRjfox kk/0MuFtDmgnvbV7m8pCIv7Rh6GBoa5O4ziQrzOndJSj0CRBmRlGfSBlsUXXwltxFFBOUy m9w5XcbguRcmrTnblYMV90w6S1C2G3ZBpKJTrWq/JHIndsyV6UUL+31RubGCyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747232647; a=rsa-sha256; cv=none; b=x4n9g2U2uVEouHUx49cM8fdBBPVriaqJPfWnBSHccnBt/AhJJExWjwdam6B4t3GkhmL9xW yBwhG4vVE/TGdl9ZdjRoreyolYjzvWmUMvE/ARxuiaJN99koAgmByYde4CSVHz5LoqyXUr RPIq8oXT0VkxkioTS3eG1Dn09dcGWfUtzZ4bRklp0B52i1X4TbPULcc+dvlsL0QVD1uFel 8zVnNhUKBpvwEu4SSHAMi3rLp/PrG1HXh6PlflbO6bKiZ8QkF0ewo5RoWZcW9Q4m7Wx6je uB3MuEpyKgxJwmrh5Unc+oCaTJi7yCwiU5hr6s11a2GKaGtbMbjrmGvT/11xUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyFvq686MzcFn; Wed, 14 May 2025 14:24:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EEO7ad060376; Wed, 14 May 2025 14:24:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EEO7w7060372; Wed, 14 May 2025 14:24:07 GMT (envelope-from git) Date: Wed, 14 May 2025 14:24:07 GMT Message-Id: <202505141424.54EEO7w7060372@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: aff92a9f3c6c - releng/14.3 - sound: Call PCM_RELEASE() if pcm_addchan() fails 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: aff92a9f3c6c4c363188b667ae046d4789a5a63b Auto-Submitted: auto-generated The branch releng/14.3 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=aff92a9f3c6c4c363188b667ae046d4789a5a63b commit aff92a9f3c6c4c363188b667ae046d4789a5a63b Author: Christos Margiolis AuthorDate: 2025-05-13 22:02:41 +0000 Commit: Christos Margiolis CommitDate: 2025-05-14 14:23:53 +0000 sound: Call PCM_RELEASE() if pcm_addchan() fails Fixes: fd906e47b18f ("sound: Simplify locking during device creation") Sponsored by: The FreeBSD Foundation MFC after: 1 day Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50337 (cherry picked from commit dbfe79bbe5d5ebe296fbff2d101e0994d7881d0d) (cherry picked from commit 3de66f369c1e8db46ae938d446a72f6ff3493356) Approved by: re (cperciva) --- sys/dev/sound/pcm/sound.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 794e1586b511..cfac8f73990d 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -139,6 +139,7 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) { struct snddev_info *d = device_get_softc(dev); struct pcm_channel *ch; + int err = 0; PCM_LOCK(d); PCM_WAIT(d); @@ -147,13 +148,12 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) if (!ch) { device_printf(d->dev, "chn_init(%s, %d, %p) failed\n", cls->name, dir, devinfo); - PCM_UNLOCK(d); - return (ENODEV); + err = ENODEV; } PCM_RELEASE(d); PCM_UNLOCK(d); - return (0); + return (err); } static void From nobody Wed May 14 14:24:12 2025 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 4ZyFvw2lZCz5wmCP; Wed, 14 May 2025 14:24:12 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyFvw27qxz3w11; Wed, 14 May 2025 14:24:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232652; 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=lwhk2L2AGWvtRBZNWDGGsc2o64zjrdKbojm5QAtiC3A=; b=rF6kPLqUnlIZj8nh6T9tmWilLGbwPIjyvCPJp5uyzW+g7nV2Ga5DH47BMga07rlYtDg+/q TTGGuab/T0lOYRlBXVfTYHSaaE4tCLYyht8V0xbXPlkiq4NV+UsMWEXJgmdNxRTfHF3QOP mZyb0bLpM3wTTkvrW7X0Tvk/lGx5c+bat9EYc1f10OKef/6prJiqJ/+zknLj8nLdan9unC qUmeth3SP1Eo5QMhU2LqEDd+g5AC0nIOQ1pmLZAs7+uUByUPOeJF0n2WF7YXi0MgRLE03L Ga9nXVoISU8P6BhdQplUkhFnkJgdd0bMzE9zeGezCXzwpj+o7TmgwhN0izFlVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232652; 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=lwhk2L2AGWvtRBZNWDGGsc2o64zjrdKbojm5QAtiC3A=; b=BsYqrjCV9GNnQqlPLmNEXWIUB6UTpGvv0kooX6ZqHAA5XbOee+2WEKbPmDFxuPPHFJnh9t 1NAhTEeZNR6vq1b7a4efRvwBo7RRU+4z7WbDV9bm7Z2svb0jfNv5E6nWhWy0jBs5PYENmn zKOaceVS7ijiGQ/KyJNIzHB3YtNFUIzs0x/dchvC9NAkhlJ0N0L84WIqMLF0u7O6mszx1X KMhnY/oDBIhrjEWXjT/HyGmoBy+jYHtlEh/ibxE9YPjsoA5uowHqKOMXZ2e0w78oTYpvIY xwUgUP2KHM/u/jrtbsXRlvebC/2tYXzn2ggI55ltwZnSb0IzID02vC2wFKfAFg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747232652; a=rsa-sha256; cv=none; b=fG86X0Qk0i64qlyJuxyfU22OdARwYn1bzQ2RxWDnOk8m8NQpIFBdwKm6ospUtny2P89Cdb 2FkEfAuuSbP/9JPfn4Fmor4/n5Ea1Yrm5br+w7SrnwWdsD7L6vxJDZyjI4EHQ34dcl/I0z 3fT008XwnWwOLCHnO0ua6mR7tA++Bt1u92doTjhSyQXn0JzbUB5Vp6z0MGInoO7/NaphKN s8zaqSjz+fG9hlkDLHIqx5s23S8HQ17+yd8oKbHHVpr4TG7vudpgJSVyufans8ieJU3Hjb 0XmeTRQHjG6HgL1xf8me/zDdMYQLsOJhcP2yBiUm2E2zNUSmLR/B27qgEJ+NuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyFvw1LvZzc8s; Wed, 14 May 2025 14:24:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EEOCRo060509; Wed, 14 May 2025 14:24:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EEOCau060506; Wed, 14 May 2025 14:24:12 GMT (envelope-from git) Date: Wed, 14 May 2025 14:24:12 GMT Message-Id: <202505141424.54EEOCau060506@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 641bb44d8538 - stable/14 - libusb: Emit event after deregistering hotplug handler 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 641bb44d8538c66446aea556baa22bbf5bd14255 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=641bb44d8538c66446aea556baa22bbf5bd14255 commit 641bb44d8538c66446aea556baa22bbf5bd14255 Author: SHENGYI HUNG AuthorDate: 2025-05-05 17:52:45 +0000 Commit: Ed Maste CommitDate: 2025-05-14 14:23:38 +0000 libusb: Emit event after deregistering hotplug handler The original implementation did not emit an event when a hotplug handler was deregistered. This omission causes issues for programs that follow the best practices recommended by libusb—particularly those that use `libusb_hotplug_register_callback()` or similar functions in a loop while managing hotplug handlers dynamically. Without emitting an event after deregistration, these programs can become stuck waiting indefinitely for an event that will never come, as the condition to break out of the wait loop is never satisfied. See: https://github.com/libusb/libusb/blob/6c0ae1ab456da49e7805115e77ce0428ace4ea41/libusb/hotplug.c#L459 Reviewed by: bapt Sponsored By: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50170 (cherry picked from commit d2852659180307475a8376ce86aa587cccbb10bf) --- lib/libusb/libusb10_hotplug.c | 1 + lib/libusb/libusb10_io.c | 1 + 2 files changed, 2 insertions(+) diff --git a/lib/libusb/libusb10_hotplug.c b/lib/libusb/libusb10_hotplug.c index 98903686f76b..87490d3a76c7 100644 --- a/lib/libusb/libusb10_hotplug.c +++ b/lib/libusb/libusb10_hotplug.c @@ -246,6 +246,7 @@ void libusb_hotplug_deregister_callback(libusb_context *ctx, HOTPLUG_LOCK(ctx); TAILQ_REMOVE(&ctx->hotplug_cbh, handle, entry); + libusb_interrupt_event_handler(ctx); HOTPLUG_UNLOCK(ctx); free(handle); diff --git a/lib/libusb/libusb10_io.c b/lib/libusb/libusb10_io.c index 59bac60c4672..2790142486ba 100644 --- a/lib/libusb/libusb10_io.c +++ b/lib/libusb/libusb10_io.c @@ -231,6 +231,7 @@ do_done: /* Wakeup other waiters */ pthread_cond_broadcast(&ctx->ctx_cond); + DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "libusb10_handle_events_sub complete"); return (err); } From nobody Wed May 14 14:26:40 2025 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 4ZyFym5vP9z5wm09; Wed, 14 May 2025 14:26:40 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyFym5N9rz3wSr; Wed, 14 May 2025 14:26:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232800; 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=Q7ITo0vXwUulEEln4U4fq96+Xh3heTKv4s1IDnWfHPM=; b=sG6JD3WJ6OWiXiJjZcqmV8cRyKr7p2TuIjzMeL5TZrtm2Kme3GkCXRAhw8goByJDAXD5pc fV6f96f70UQUp5Dwl3R17STMulNMi8cq47wOq/jG7HxIzzm9UmN/87HhST+WfmGBUvkLJv Gw6uysXgC7LfvEKoMcsuw1GzNjiBwOF0EdHkfgdianXpUWLUoy/rc8qvoBhdB1jnr2XIYg UvF2vUPzsuCFayxaveXdD09WbawwV/eQ1dc9eaO7Y1zfzKnnjL4gS4s9oJY5EeqdUT6v2R DhyrYGpX/9dQb3MCYXpdkLgsExiq1iarShOGsIqPCNhjvocQ86qcyu319uKVGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747232800; 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=Q7ITo0vXwUulEEln4U4fq96+Xh3heTKv4s1IDnWfHPM=; b=CyDuF5kNBpTE6I+78BU4WjncEpEmE42boIpDu53gAJvsve3RViQv/N75JeRzF7q50i3xkB 2uvk9sq4BQ/7BgOr/PDKjSTiBlwVlecDHOqR4HsKLHiZ2+MBfqRZOuLLSlzfBqBz/N+Sdn 8106Uxi/BnkE05VyGbPxHZ2pRcIqiWBIGzjORxdJcwvLwUqX3PcVVkWR72udDoMbTX/R4l lGvlv7rXPZdN12ISFYD9T+f+PZBpf56A42bGr9qABeKd1ZXQbAMxr9XtvgfCaqXKUBb2Oa 3N8OGAfYlSsMjsoS7agTZ0iXhqHdU3Ot8cPnPkGQ4+bhWoG8Gs6JtvJlwfzsNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747232800; a=rsa-sha256; cv=none; b=rQIcGbw26ffjh3tIbDyQ8Ay+ocQt/bjgJfpdrInzXf1FVBkdmaEiqRL7C/hFCEOlMg2v1K 5/HoZiaMBIspLkxkLMBeiNOxSYc5rUg3vaHxh+W99luRIBLMNiVPw6YeILqsBR4104SeUo nT02Rhkn9BV12kRXnq0lh5tTVgfcYkPrjhCc2tWyXEWwcpp3cYLE9M3ZtnmRM/cPqhXxLk /natsSB9HxW0ldHL23HWHuf8uR4Q6l2uYJKANYyswviO1Aj4F4Gx8hSEeldcavZE7N/P8S VAAL3cWtreEOEe+0MvmZj8/VG/ChXjX38siP4fRkel7REv7zI5eo7xmBS4Hy5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyFym4rWszcFp; Wed, 14 May 2025 14:26:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EEQeY9061369; Wed, 14 May 2025 14:26:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EEQeTu061366; Wed, 14 May 2025 14:26:40 GMT (envelope-from git) Date: Wed, 14 May 2025 14:26:40 GMT Message-Id: <202505141426.54EEQeTu061366@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 09dcc8a75697 - stable/14 - random(9): bump removal to FreeBSD 16.0 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 09dcc8a75697233a683f1d8c105a4caa2b74e59c Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=09dcc8a75697233a683f1d8c105a4caa2b74e59c commit 09dcc8a75697233a683f1d8c105a4caa2b74e59c Author: Ed Maste AuthorDate: 2025-05-11 13:08:16 +0000 Commit: Ed Maste CommitDate: 2025-05-14 14:26:22 +0000 random(9): bump removal to FreeBSD 16.0 It has not yet been removed, and still has some in-tree consumers. PR: 277655 Sponsored by: The FreeBSD Foundation (cherry picked from commit 3a58c266e2e6201a3aebbb52311f38ccf3323e3b) --- share/man/man9/random.9 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man9/random.9 b/share/man/man9/random.9 index 7fc721564897..f1833c63a2ff 100644 --- a/share/man/man9/random.9 +++ b/share/man/man9/random.9 @@ -24,7 +24,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" " -.Dd March 18, 2024 +.Dd May 11, 2025 .Dt RANDOM 9 .Os .Sh NAME @@ -133,7 +133,7 @@ The deprecated .Fn random function will return a 31-bit value. It is obsolete and scheduled to be removed in -.Fx 15.0 . +.Fx 16.0 . Consider .Xr prng 9 instead and see From nobody Wed May 14 14:38:54 2025 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 4ZyGDv2Gkxz5wmrW; Wed, 14 May 2025 14:38:55 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyGDv0tYYz3yfY; Wed, 14 May 2025 14:38:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747233535; 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=DI+8HiTc7H7+o99T5czyGkO5kKEmpUvYfBdkjric3lI=; b=DZg3jkswP9VJY5qL9kSfaHilGzjXjYR/ce/IPJowoNTgE/zsWYXYNxpqfJoN0ojuExzBwn tvFbLXj3lSaUUhdU6L+w7TYaN1blaE9k5IZAuggmF2q16qvkPa0DL7EWS6ZmZoScq3fcUF C//4weZSh7XNLnEaupEWCIKCLEAazR6aJESthGssxRXYPi0de9BeLFDPh+pW5fByhfK3bc Ueo1+cYQJ2LEg51R0yZ7ctnZabDnS440L+ft8Cwnql68W8224duo6yceiiV/FS4/M+VsQH clcCQY5YofRq9pfmrJLH296wnyRG5aDnRELq9gcWEI/rlyayxuPEhPj54LQ1+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747233535; 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=DI+8HiTc7H7+o99T5czyGkO5kKEmpUvYfBdkjric3lI=; b=Ys47mvuaFOhzYop8NeHQfv8Gaa0a/q376NkcqB+x869wEOwDiHFLoyxpXBWhQfiTWYMUKZ ycVgDIctzhqpekY/eeNeiCma6NyicpzDOx/h+hkl/3dbrrFxenP/RDymMy6B7S1mOn7Z5x zDsADiWUjIOR4bz1Gmw2RefbtSJ6XcKlDEssSEGToRrENlVxh+S4llkAGJPEKxewik2Joe bLf9FUjIklCEfS8mjqAacR7Rd9hSo1SPEn1wX/VgbR9ulWKFf2YRuip91BBbMTExu5DtLD OScFpsyAh0gw/IKUnNRjA2MfH2CvvXHruQW1OuNjpQsfo0pCDbym94WEbXHWfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747233535; a=rsa-sha256; cv=none; b=JEWOampOsDHud8Yti8+QNx+kMl9SsCIh+P5vPFFR501oDaHFUiZpxM6lXjjv/OA++Gv6rd SqO/VuyW+JEql0KGqYZ4SLDaPuZ0YNQTs6SHcm8bVajRWQUgfDA1GcXMpfOQmBJG4gsJ/0 sF0Q0GwyNTemwOHogkj0pgACM/wh5LRv2JREPy/8GYy/hTiW7XPJ625cN3Og+Vc9HAJSCN 6Thag/enC4tm8bvx5X7cMdblrXyovgi0lgq0s4pBGy0vtnZNVF01PDQeBSwOcGXTUoHA4U hvfZ7EkzHqj7SDHl2ZVZkBexypQU73e8N6ERwNjkCf3Px0M8JBc06AwLl+Oi4Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyGDv0DKMzcvq; Wed, 14 May 2025 14:38:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EEcsEx080562; Wed, 14 May 2025 14:38:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EEcsJt080559; Wed, 14 May 2025 14:38:54 GMT (envelope-from git) Date: Wed, 14 May 2025 14:38:54 GMT Message-Id: <202505141438.54EEcsJt080559@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: 3e72d0b40040 - main - rtlbtfw(8): Sync device VID/PID list with Linux 6.15-rc4 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3e72d0b40040f94c4b99ab9dfa0a0e1b62dff397 Auto-Submitted: auto-generated The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=3e72d0b40040f94c4b99ab9dfa0a0e1b62dff397 commit 3e72d0b40040f94c4b99ab9dfa0a0e1b62dff397 Author: Vladimir Kondratyev AuthorDate: 2025-05-14 14:38:10 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-14 14:38:10 +0000 rtlbtfw(8): Sync device VID/PID list with Linux 6.15-rc4 Sponsored by: Future Crew, LLC MFC after: 1 month --- sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c | 20 ++++++++ usr.sbin/bluetooth/rtlbtfw/main.c | 20 ++++++++ usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c | 14 ++++++ usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h | 1 + usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf | 66 ++++++++++++++++++++++++- 5 files changed, 119 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c index c3fb98b46e6a..0181a67ac604 100644 --- a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c +++ b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c @@ -84,6 +84,9 @@ const STRUCT_USB_HOST_ID ubt_rtl_devs[] = /* Realtek 8822CU Bluetooth devices */ { USB_VPI(0x13d3, 0x3549, 0) }, + /* Realtek 8851BE Bluetooth devices */ + { USB_VPI(0x13d3, 0x3600, 0) }, + /* Realtek 8852AE Bluetooth devices */ { USB_VPI(0x0bda, 0x2852, 0) }, { USB_VPI(0x0bda, 0xc852, 0) }, @@ -100,11 +103,28 @@ const STRUCT_USB_HOST_ID ubt_rtl_devs[] = { USB_VPI(0x13d3, 0x3587, 0) }, { USB_VPI(0x13d3, 0x3586, 0) }, { USB_VPI(0x13d3, 0x3592, 0) }, + { USB_VPI(0x0489, 0xe122, 0) }, /* Realtek 8852BE Bluetooth devices */ { USB_VPI(0x0cb8, 0xc559, 0) }, + { USB_VPI(0x0bda, 0x4853, 0) }, { USB_VPI(0x0bda, 0x887b, 0) }, + { USB_VPI(0x0bda, 0xb85b, 0) }, + { USB_VPI(0x13d3, 0x3570, 0) }, { USB_VPI(0x13d3, 0x3571, 0) }, + { USB_VPI(0x13d3, 0x3572, 0) }, + { USB_VPI(0x13d3, 0x3591, 0) }, + { USB_VPI(0x0489, 0xe123, 0) }, + { USB_VPI(0x0489, 0xe125, 0) }, + + /* Realtek 8852BT/8852BE-VT Bluetooth devices */ + { USB_VPI(0x0bda, 0x8520, 0) }, + + /* Realtek 8922AE Bluetooth devices */ + { USB_VPI(0x0bda, 0x8922, 0) }, + { USB_VPI(0x13d3, 0x3617, 0) }, + { USB_VPI(0x13d3, 0x3616, 0) }, + { USB_VPI(0x0489, 0xe130, 0) }, /* Realtek 8723AE Bluetooth devices */ { USB_VPI(0x0930, 0x021d, 0) }, diff --git a/usr.sbin/bluetooth/rtlbtfw/main.c b/usr.sbin/bluetooth/rtlbtfw/main.c index 700b9b43bafa..e87a98036265 100644 --- a/usr.sbin/bluetooth/rtlbtfw/main.c +++ b/usr.sbin/bluetooth/rtlbtfw/main.c @@ -67,6 +67,9 @@ static struct rtlbt_devid rtlbt_list[] = { /* Realtek 8822CU Bluetooth devices */ { .vendor_id = 0x13d3, .product_id = 0x3549 }, + /* Realtek 8851BE Bluetooth devices */ + { .vendor_id = 0x13d3, .product_id = 0x3600 }, + /* Realtek 8852AE Bluetooth devices */ { .vendor_id = 0x0bda, .product_id = 0x2852 }, { .vendor_id = 0x0bda, .product_id = 0xc852 }, @@ -83,11 +86,28 @@ static struct rtlbt_devid rtlbt_list[] = { { .vendor_id = 0x13d3, .product_id = 0x3587 }, { .vendor_id = 0x13d3, .product_id = 0x3586 }, { .vendor_id = 0x13d3, .product_id = 0x3592 }, + { .vendor_id = 0x0489, .product_id = 0xe122 }, /* Realtek 8852BE Bluetooth devices */ { .vendor_id = 0x0cb8, .product_id = 0xc559 }, + { .vendor_id = 0x0bda, .product_id = 0x4853 }, { .vendor_id = 0x0bda, .product_id = 0x887b }, + { .vendor_id = 0x0bda, .product_id = 0xb85b }, + { .vendor_id = 0x13d3, .product_id = 0x3570 }, { .vendor_id = 0x13d3, .product_id = 0x3571 }, + { .vendor_id = 0x13d3, .product_id = 0x3572 }, + { .vendor_id = 0x13d3, .product_id = 0x3591 }, + { .vendor_id = 0x0489, .product_id = 0xe123 }, + { .vendor_id = 0x0489, .product_id = 0xe125 }, + + /* Realtek 8852BT/8852BE-VT Bluetooth devices */ + { .vendor_id = 0x0bda, .product_id = 0x8520 }, + + /* Realtek 8922AE Bluetooth devices */ + { .vendor_id = 0x0bda, .product_id = 0x8922 }, + { .vendor_id = 0x13d3, .product_id = 0x3617 }, + { .vendor_id = 0x13d3, .product_id = 0x3616 }, + { .vendor_id = 0x0489, .product_id = 0xe130 }, /* Realtek 8723AE Bluetooth devices */ { .vendor_id = 0x0930, .product_id = 0x021d }, diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c index c58a8feb41a4..d7e9f2f939c6 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.c @@ -118,6 +118,18 @@ static const struct rtlbt_id_table rtlbt_ic_id_table[] = { .hci_version = 0xc, .flags = RTLBT_IC_FLAG_MSFT, .fw_name = "rtl8851bu", + }, { /* 8922A */ + .lmp_subversion = RTLBT_ROM_LMP_8922A, + .hci_revision = 0xa, + .hci_version = 0xc, + .flags = RTLBT_IC_FLAG_MSFT, + .fw_name = "rtl8922au", + }, { /* 8852BT/8852BE-VT */ + .lmp_subversion = RTLBT_ROM_LMP_8852A, + .hci_revision = 0x87, + .hci_version = 0xc, + .flags = RTLBT_IC_FLAG_MSFT, + .fw_name = "rtl8852btu", }, }; @@ -138,6 +150,8 @@ static const uint16_t project_ids[] = { [ 25 ] = RTLBT_ROM_LMP_8852A, /* 8852CU */ [ 33 ] = RTLBT_ROM_LMP_8822B, /* 8822EU */ [ 36 ] = RTLBT_ROM_LMP_8851B, /* 8851BU */ + [ 44 ] = RTLBT_ROM_LMP_8922A, /* 8922A */ + [ 47 ] = RTLBT_ROM_LMP_8852A, /* 8852BT */ }; /* Signatures */ diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h index 48b30cb2289b..e9af6c93950e 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_fw.h @@ -41,6 +41,7 @@ #define RTLBT_ROM_LMP_8822B 0x8822 #define RTLBT_ROM_LMP_8852A 0x8852 #define RTLBT_ROM_LMP_8851B 0x8851 +#define RTLBT_ROM_LMP_8922A 0x8922 #define RTLBT_PATCH_SNIPPETS 0x01 #define RTLBT_PATCH_DUMMY_HEADER 0x02 diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf index d45ba0bd92c4..61ae53db8f39 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf @@ -46,6 +46,16 @@ notify 100 { action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; }; +# Realtek 8851BE Bluetooth devices +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x13d3"; + match "product" "0x3600"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; + # Realtek 8852AE Bluetooth devices notify 100 { match "system" "USB"; @@ -113,6 +123,14 @@ notify 100 { match "product" "(0x3587|0x3586|0x3592)"; action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; }; +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x0489"; + match "product" "0xe122"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; # Realtek 8852BE Bluetooth devices notify 100 { @@ -128,7 +146,43 @@ notify 100 { match "subsystem" "DEVICE"; match "type" "ATTACH"; match "vendor" "0x0bda"; - match "product" "0x887b"; + match "product" "(0x4853|0x887b|0xb85b)"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x13d3"; + match "product" "(0x3570|0x3571|0x3572|0x3591)"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x0489"; + match "product" "(0xe123|0xe125)"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; + +# Realtek 8852BT/8852BE-VT Bluetooth devices +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x0bda"; + match "product" "0x8520"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; + +# Realtek 8922AE Bluetooth devices +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x0bda"; + match "product" "0x8922"; action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; }; notify 100 { @@ -136,7 +190,15 @@ notify 100 { match "subsystem" "DEVICE"; match "type" "ATTACH"; match "vendor" "0x13d3"; - match "product" "0x3571"; + match "product" "(0x3617|0x3616)"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x0489"; + match "product" "0xe130"; action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; }; From nobody Wed May 14 14:42:28 2025 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 4ZyGK05b5Bz5wnM7; Wed, 14 May 2025 14:42:28 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyGK053knz40nK; Wed, 14 May 2025 14:42:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747233748; 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=MRru5jj9PiqAaN9MsS3Zs0yi3+c6wh02JuLqb+5Ldz4=; b=a0KAdtjJcR2QatTLSqi6qQhQjY/6HHzKps0SvVCnaybVdMspbTUH4diuBkcb9CaFaoIJEs Z0RvtDUp7s6tG31xCx8xbJGpCT2dZUDjd2jDIiw/ug2R2JF3im1eEKxIAwL4WjpRLdY1Qs WJUsND8HjOgmjgQpiro1tjsx2TwsjbbcUrgxUKa/urqgnZw/Ij08KP71hb0eycnebjtGED DNV/2s8ipFz/AN1deB8q5FxGuXtqb8FvsFsU7M155rvNG/rGsVoHNKrzaFWuis5BA1p/0l rfSTMYy86pD9bV8VNqXzatNpFX/YFU/LrOPCQkAYWJP/zquTZ49TDbMoYYle8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747233748; 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=MRru5jj9PiqAaN9MsS3Zs0yi3+c6wh02JuLqb+5Ldz4=; b=bocvymVQ7Pjdy5nOTBbVt+lakEYqgMxwZgnwhmmTUCzKhRU3Q98mkE+bva6NfOn7+BXqp0 Bg+q6bPEmZCexEwyA1pIrErnr8b68gKUwdn29RXiHQvXU/BqFgivWNRC0gvOKfKOEmnJgm s6DIM80wMM5OECvc5JdbG00QLn9roSgXmpb1gbBm0Mw9QJVy38wlf2beAMX+HJfYq9SGud vqFZjrGqKcsO6wc8ib59C9FOwXmIEn31vyz7ABZrbuEuEAS4BMRSYBctz9uCSYkKg+/Mea +cPznxD7pdPWHFQx2IboUa4vLFy4fiHqMF3ymnwqvvu2w5fuuDAFkTmWx2lXFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747233748; a=rsa-sha256; cv=none; b=xh/VG+oP+u3d/EDymFhz7yqlbiuRxDHxaDVRFE2k3TAuc2B8T5cq7C8qQ+KjNgpjTR6QM8 o3D7X8ThZzloIya5JcmL33JIDTEaCRby+iy9CXmlWXcgS96I2WypQF4uqJQ5O8bch+2M3J fojXS8QD0ICtC+nf16vYIZHG+Eek/kspb+g7C8msOuaIDA4cWmFgtHfAjwO6gcoNinO8sL 9RsOD3/V3YGPTOhpWjiqru/DhMTzj7w9wA0z3Uz+u77yBJeyhTgBTzOxUnLJSbnIV2Gz/e DR7nCKxXcb3GnM0EKrshPabhdZ0cTNAQ4yHdbaC9LkgcFuCE52ZptF8E3SakYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyGK04ZsPzd7F; Wed, 14 May 2025 14:42:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EEgS66097842; Wed, 14 May 2025 14:42:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EEgSrl097839; Wed, 14 May 2025 14:42:28 GMT (envelope-from git) Date: Wed, 14 May 2025 14:42:28 GMT Message-Id: <202505141442.54EEgSrl097839@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: f7cd5c230849 - stable/14 - libusb(3): Fix link in comment 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f7cd5c230849730dd03f942d7bf8f2e770643e7a Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f7cd5c230849730dd03f942d7bf8f2e770643e7a commit f7cd5c230849730dd03f942d7bf8f2e770643e7a Author: Ting-Hsuan Huang AuthorDate: 2024-01-12 11:55:00 +0000 Commit: Ed Maste CommitDate: 2025-05-14 14:42:13 +0000 libusb(3): Fix link in comment Event: Advanced UNIX Programming Course (Fall’23) at NTHU. Pull Request: https://github.com/freebsd/freebsd-src/pull/1042 (cherry picked from commit 2a3a8eb9fac66183e5af4852bbcb40824629f182) --- lib/libusb/libusb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libusb/libusb.h b/lib/libusb/libusb.h index 022b5562a819..732fc9dca1e0 100644 --- a/lib/libusb/libusb.h +++ b/lib/libusb/libusb.h @@ -245,7 +245,7 @@ enum libusb_log_level { /* XXX */ /* libusb_set_debug should take parameters from libusb_log_level * above according to - * http://libusb.sourceforge.net/api-1.0/group__lib.html + * https://libusb.sourceforge.io/api-1.0/group__libusb__lib.html */ enum libusb_debug_level { LIBUSB_DEBUG_NO=0, From nobody Wed May 14 15:50:41 2025 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 4ZyHqj6MfWz5wrxM; Wed, 14 May 2025 15:50:41 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyHqj5kmlz45ZV; Wed, 14 May 2025 15:50:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747237841; 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=q53FNF/o/KvoLCBPeZO2oGlmPrUyVjqH8r2WiULqTKs=; b=BPrRn4T4ZLNQQGa9Hu83V9JrhJpsmFQCBkrioWS8FvW9Ua9IWiwy18vRJ+teQtTcC2YWLn zr8+I/duz5JY/bc3mc1bJJmwveSM3ew5BPZsz2T7JI35DNBFMSUNQ7M+CHIcbBjdWTJX+z 4H5oEU6vl2FlG3P9jYlq5ZLM3fpeXN2cDu10X2v11EfoNjJ3K3pVC9p/pHwSlapKw2q3Gx T0WCcEXfXLE7ljQuIlkfamr11VKPfIVE796UXnoib7zjdh/LcY7qO/F1WvThC2B4d1kN7l 8cCrk7ddKQLjHbc9ubvQQWC2fZX97U5YDqTbDKGlmNMQHO7aUYPFRceFbk8RaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747237841; 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=q53FNF/o/KvoLCBPeZO2oGlmPrUyVjqH8r2WiULqTKs=; b=Rbu3KogCub0kMvVYB4gWaC78oJ+E2Rzo4J3cKmcjhtpBOG/tc7RxVKQ/z8I4LvewlwPUsh XpdPgPuxOjA+dke3FVyd//3/25d5xqXvQQnSkNJmAbDy13fAkmEmk9cKkO6tsT1uHKDjnv PF1v0HnnrzdhhTXtrxbgop1lAtKoMP1j/uQPhWwxg3ql7MqEz6hT2ImfyBi+HDDSPTmJ5h FBLgfDVDTayPp9Sfj7I3MjVvRh+G9/lOM0SLVb6K0zSUL4TXqjB+JdoHJyc1f2khbQqfcB PHjgAUbHvasVV27/Q33cAFsEZkCACoz0eOYJRiuQiK5+cagLi143Jvzw7UaWRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747237841; a=rsa-sha256; cv=none; b=cJ95q3xrPXAyJ9JrU+WIWZxzdKSy1/NeX4LtnVOK4Uvhbn5Uzu9Eocom5G9DvdhcQHjMgF FsvkDuPkU/uLmdZkhPGrDpf7rqOlHrHD93AF7yoE5vz1XbeS/9lnPmzN3MIdOSMzHlOHfA zryjYzlCztvmcZCKHEyivEqxlmJ4GXLxfGmm13w291EihnXxiAotZS9HYwj9Rx/ONAmdxa QDd4Ge9prDC08cB373iLJ2xRNPWGN0Qi/Y3SKi7hkcvh8sEJVuyHIuu2k1AAzgEEn1Z0/B 76aYe4zcaYRabKPPI9qRNfHncmlFUQT/HngBxxku9JN4dE4j0kJyRveUHFTIzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyHqj5L4RzfVK; Wed, 14 May 2025 15:50:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EFofIO021421; Wed, 14 May 2025 15:50:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EFofaJ021404; Wed, 14 May 2025 15:50:41 GMT (envelope-from git) Date: Wed, 14 May 2025 15:50:41 GMT Message-Id: <202505141550.54EFofaJ021404@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: dd3d1a769458 - main - build.7: Document pkgbase PKG_FORMAT variable 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dd3d1a7694583362f5915ff5f1d9cdee64e2fe3e Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=dd3d1a7694583362f5915ff5f1d9cdee64e2fe3e commit dd3d1a7694583362f5915ff5f1d9cdee64e2fe3e Author: Alexander Ziaee AuthorDate: 2025-05-12 20:54:14 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-14 15:49:35 +0000 build.7: Document pkgbase PKG_FORMAT variable MFC after: 3 days Reported by: emaste Reviewed by: emaste, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50318 --- share/man/man7/build.7 | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/share/man/man7/build.7 b/share/man/man7/build.7 index 2195d1147820..d66df90365e7 100644 --- a/share/man/man7/build.7 +++ b/share/man/man7/build.7 @@ -642,6 +642,20 @@ If set, this variable supplies a list of additional directories relative to the root of the source tree to build as part of the .Cm cross-tools target. +.It Va PKG_FORMAT +Specify a package compression format when building +.Pa src +into +.Cm packages . +Default: +.Ql tzst . +Consider using +.Ql tar +to disable compression. +Accepted options are documented in the +.Fl f +description of +.Xr pkg-create 8 . .It Va PORTS_MODULES A list of ports with kernel modules that should be built and installed as part of the From nobody Wed May 14 18:08:17 2025 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 4ZyLtV13LZz5x1pd; Wed, 14 May 2025 18:08:18 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyLtV0JN2z3bT3; Wed, 14 May 2025 18:08:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747246098; 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=2cX7smlxZY3Z8S5lI/1/iqtL0geZcFKxdxLC+jYSlrE=; b=KATaHEmZ00cPQVAw7Ph8OCnH8jYe4NH0s4RaQD2Q82GJNnd4K4TiwQJk0NoIpsNbblKetU QHQ3pEzd5LcscqP1P1CqjlF0mxQU8c3O0HmxawXWtSUSjYFIDO/XsEsLXs0jMxX9+4lhVO sZGuzS+8GQFYx+Kz7Gty40gQqlh/32nzkKp0IoAV8bhDx8g+gmgoMSO8ERxw8jwXAo7u1v RS9K4SDR+jU/yIEy5J1/UyE+jt/nERhRp88kRJ+XmuTDOZ9KykCUp9fmfZhTgIcVL2C0cF M+kaWgegQGLfEx3S35814tkC4pACahKxo/RYGByGS1GzJ66HyYMmCluznVXNuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747246098; 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=2cX7smlxZY3Z8S5lI/1/iqtL0geZcFKxdxLC+jYSlrE=; b=VcCsFQWBrC3XtTXtIiTH87UKAhkCYrvliS8ilEvgLmpJ/8TuGa6U2qnCQkAcLsRTsrFsG4 aedjaI8r3T1sWUCyAi7OiwbrD4yzWsTWlAslghJoASJZMtF1CgDUELOZ+/wwQl8rNSuoh/ /82A+Y/R/0sl7XTXnu92EX4ScDleXa1sYKDEphkAPfxqlr1G/6Xq2YhVUdwLEulr5C3HVY tTjBg+E0QBxcTZBiLxAeteY/KksX7mPClnvsUfIz56uhATvudX0gKt1yHpiIhawTN1wFjS uE+lvXXnHDglTR/J4mGuGCdKbSN6QKbk6v2xeGaBpIRPBquCuPfW0pq3M3DvJw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747246098; a=rsa-sha256; cv=none; b=ay5yBySsHI+xNSvm4c1rvU2pw3znBduC2MgyJa/pIm+4zNHLp4YOg2HkABKrX81JXsYM6I 4RtPQ88NbK4IST8ak78vssrr4yT+SZvCNVGI9vO/h1GOASvIfZs419T44PikVlwM0mb/7+ wB/K1+KHJSTi7LhvjqAt0iWIFNSw/L6D0tl1ByIkHWinQ2/XxngM0a5oYMoFyKt9xPEiIu SFuQywUFLoKsi07/vj65LUUU3FA/JITRwF0qGMvqTt2+7EoBJIlrmazTxGz2NjUNSUxkYj 84jcdUcI/0KMKotZb5fDsDgYOWcTM4Rj9G2rYKudSFHMUQr9N/c+vQ5gSy4GbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyLtT716Wzjtx; Wed, 14 May 2025 18:08:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EI8H9p073983; Wed, 14 May 2025 18:08:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EI8HHB073980; Wed, 14 May 2025 18:08:17 GMT (envelope-from git) Date: Wed, 14 May 2025 18:08:17 GMT Message-Id: <202505141808.54EI8HHB073980@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 95223d920aea - releng/14.3 - bsdinstall: Use a login shell for final configuration. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 95223d920aea7dd3711040304b013f96b568cdb3 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=95223d920aea7dd3711040304b013f96b568cdb3 commit 95223d920aea7dd3711040304b013f96b568cdb3 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-11 21:00:35 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-14 18:08:15 +0000 bsdinstall: Use a login shell for final configuration. If the user accepts our offer of a shell to perform final configuration tasks before rebooting, start a login shell. This ensures it will have the correct PATH and be able to install packages without issues. Approved by: re (cperciva) PR: 286722 MFC after: 3 days Reviewed by: jrtc27, allanjude, emaste Differential Revision: https://reviews.freebsd.org/D50297 (cherry picked from commit 5870d6a1ef4ec5d6fc91d0f1635bca59e09a040d) (cherry picked from commit 242b52ba3c38108f2c2af4194a031ed495b95dbc) --- usr.sbin/bsdinstall/scripts/auto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto index 6a89b3dfdd81..abd445282316 100755 --- a/usr.sbin/bsdinstall/scripts/auto +++ b/usr.sbin/bsdinstall/scripts/auto @@ -443,7 +443,7 @@ if [ -z "$BSDINSTALL_SKIP_MANUAL" ]; then clear echo This shell is operating in a chroot in the new system. \ When finished making configuration changes, type \"exit\". - chroot "$BSDINSTALL_CHROOT" /bin/sh 2>&1 + chroot "$BSDINSTALL_CHROOT" /bin/sh -l 2>&1 fi fi From nobody Wed May 14 19:20:47 2025 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 4ZyNV81xY8z5vcmf; Wed, 14 May 2025 19:20:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyNV76Fqfz3N8Z; Wed, 14 May 2025 19:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747250447; 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=Tn6Jz+GyE8JR+XvsypX+Wwv0wWOP712LhTS+JMPOqts=; b=BevE1Y0K8pl/vzBT3udsjZWB77YfVo3CUPjDV4zmkjkvpGwAkh0X1a9bVxzQstrblz3yde QM28aIR0yRGls76++Ct/C/ie0mjgf0ytbSpMOYzNrAJ4cHrCJ1BFdM/kRRw6KcME9K/lJz qTingHyLSATJ+xQoVq8QMTpg418SPLKU64n8ZGcVfn3aLiSXuhrbyIUVHbr6ZsTEdvMhmv lIW1GXn68aiRjdbhwwfacXrizpHdyPZyEnDHrhWcpzocNw2DOQ5xWNWDNHCpU9QG4h6nWI C9sS+44pV7qryogbu14ssACunhIlZwJGfKg8nfczZ1Q3B9l5dFCU5mkUFnU0xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747250447; 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=Tn6Jz+GyE8JR+XvsypX+Wwv0wWOP712LhTS+JMPOqts=; b=o0nEaaMOw7QFZkxVNTk2Kxda2O7ar+6zvTtDtQZkwYkGWYer3TMTphM5/fAQbuzEf7tzPU 9y2AsmPbhDVphKsxzUNn69uA9fHo6SAD4fK8fzES40eAHm+hj5kuDecdW5B596QpNbQZ39 ilj52/s1rZTxSAzNWxjsgg65YQr8xFL8GZZEBlCgaRt9lUwyFFq6WHRW4TDAjb+42Xe9kM FjKwtH9VE7ndqA2Z+gba8KPJHoVFA+QKYvH+fyt/WLCHd3260p91v2/7CjvSflpDYcz/1i MMNGPmPXntWGpz+YfRc9hzwCySeAJv18QBRxzLVu2ahMGv115iChtvJ+lV2XCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747250447; a=rsa-sha256; cv=none; b=dI87GrDGPEoIWJ5iAdS+4PsU7TRd2dj0ADQREGEwhm0JpbolUFwq7BqXzI1omJ7Yi+Lr0K k943Mukf662vSiYNGhRmMvPhOut7uRH0UJeaRv8nEhpNsjQ34WP/sdfbDiELs1LupLZZJC B8KWK3/whGqXAGf4zMu54Tfzu8cPpU85/8GkUBMEtTzcxCLdGGhTmYLNkG8RVdkpAgcBRn gerEIEsl3CM0ps6UqSn/wW/Ak51AhNW0VgqPKJaIstLPoe9iGlUyD8VQKR4YMUY80WSdqJ anbwbX+wq7DATh9bXbLLBFXO8yi3PavZZlq7FpLabsa9eWhQuKAB3ZyGf7ORGQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyNV75kNQzlHT; Wed, 14 May 2025 19:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EJKlYi015156; Wed, 14 May 2025 19:20:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EJKlRD015153; Wed, 14 May 2025 19:20:47 GMT (envelope-from git) Date: Wed, 14 May 2025 19:20:47 GMT Message-Id: <202505141920.54EJKlRD015153@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: df16cbdcf192 - main - mail: remove the SIGHUP handler from lex.c 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: df16cbdcf1927200eb910c1874faee6f3d8b9a97 Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=df16cbdcf1927200eb910c1874faee6f3d8b9a97 commit df16cbdcf1927200eb910c1874faee6f3d8b9a97 Author: Kyle Evans AuthorDate: 2025-05-14 19:20:16 +0000 Commit: Kyle Evans CommitDate: 2025-05-14 19:20:34 +0000 mail: remove the SIGHUP handler from lex.c If the command is simply going to exit without doing any cleanup, then an immediate exit(3) does not add any value and in-fact obscures that the program was terminated by a signal. This is motivated by POSIX conformance requirements, but it's also a little bit of a tidy-up. Some investigation into the history of mail(1) shows that, at one point, hangup() would attempt to save messages into mbox before exiting. It was later transformed into a simple exit() and likely could have been GC'd at that point. Reviewed by: des, emaste, ivy Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50247 --- usr.bin/mail/extern.h | 1 - usr.bin/mail/lex.c | 13 ------------- 2 files changed, 14 deletions(-) diff --git a/usr.bin/mail/extern.h b/usr.bin/mail/extern.h index efcba2141512..6eea9c1f1f88 100644 --- a/usr.bin/mail/extern.h +++ b/usr.bin/mail/extern.h @@ -131,7 +131,6 @@ int getrawlist(char *, char **, int); uid_t getuserid(char *); int grabh(struct header *, int); int group(void *); -void hangup(int); int hash(const char *); void hdrstop(int); int headers(void *); diff --git a/usr.bin/mail/lex.c b/usr.bin/mail/lex.c index 1043dd2d4706..2d86a17c13e9 100644 --- a/usr.bin/mail/lex.c +++ b/usr.bin/mail/lex.c @@ -199,8 +199,6 @@ commands(void) if (!sourcing) { if (signal(SIGINT, SIG_IGN) != SIG_IGN) (void)signal(SIGINT, intr); - if (signal(SIGHUP, SIG_IGN) != SIG_IGN) - (void)signal(SIGHUP, hangup); (void)signal(SIGTSTP, stop); (void)signal(SIGTTOU, stop); (void)signal(SIGTTIN, stop); @@ -567,17 +565,6 @@ stop(int s) } } -/* - * Branch here on hangup signal and simulate "exit". - */ -void -hangup(int s __unused) -{ - - /* nothing to do? */ - exit(1); -} - /* * Announce the presence of the current Mail version, * give the message count, and print a header listing. From nobody Wed May 14 19:20:48 2025 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 4ZyNV91QYfz5vd7s; Wed, 14 May 2025 19:20:49 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyNV90Hq5z3N8k; Wed, 14 May 2025 19:20:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747250449; 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=gqJUcMBPayffIe+l6G77QTJXzBVBfp7Af1UNJAGF7CE=; b=tL27EAGyqJqUVn10DZTAda23A75gdT+11tdb93NbLxGIuQGWRE18NFhaNylw1qItgjaQog srBgBmi4TDas4NcnnSbyjTwaTwlSTb5N1mW+DTTdlWrf88oQ0Yi6Knkyof0d/cvRUkjtVc onaHBmLyhgcI30ubUjZSNMh56ibYIrC4VO7pf7Ei/7VRmo1wZ/2WJ4Ul/HzJr/J6G3+n+T A1ZvTYf+aiN2xrgZtt6Bgk//M8lVKiI52F0U4hwNQ26g3KGmr4xdQyOa2gbQ0i3Vf0MW73 J0Ruxel+07EQ/nrAK+H2oN05qrr/dhCxAkKTuTwMZMglcMlJmr2C6c0i3EMV7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747250449; 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=gqJUcMBPayffIe+l6G77QTJXzBVBfp7Af1UNJAGF7CE=; b=eM7VFB3nj11jUbEmkG36Z6xOsUOR45HtQ7dZPK2T9ctMtMce1XU7sGbneLMEqC3dGeAHJc jdF1Sz8PJy0wKYfm80sQrYpCTAOCMrDjziD0y0JCu6iWYDGx5EQFSVTw4Jj7SeZSUhQRxx wMroD2UoVrjrMCRAsCDonF8waNYqqR48C6dhEiNDAICycmtZeg4gfXHq0CoFp7kzgRTzRv alMm/ESQaQxjstfSn59k+68BS2VPBL6ehYGVI5JCL6RXQfrbz228U6baY/KgjDycKUrGRx cWuPr4Fzot/NbOTzv9WshUC57MwO/cLlNAKt+JSP8im8lWtcnzJ/6czDSUZhQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747250449; a=rsa-sha256; cv=none; b=VolT/Qx9OztNhDx9yiyu5Di5Wh97+blvCGYrZUA0NCaioahgJpTmSb/3I1ejKBMUHAG351 uKnNBILr7BHkQlgyVLop3r7N5QPdzffXMrAyWX5B5tMypDRF+owdkh+gWOuhhRfsja8Yps uZhddyUlkviAjgek8r3DatXG+ImzfzL9HT7kztxar0sIr3b222eiXiEnr3+w6j42fQbrru GskExy/IdpZXfSCksSz1pflxGaNCFwjSfDke9B/rrsBzjC2Nti9M3YUgLEQaaG0CqV2vY9 Os6UCdYVJuJgkNMVYnoDqywM9Wr/cxCM72HUm2opmj3kHBUzwcTlb+oh2i2LDw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyNV86xFfzlTR; Wed, 14 May 2025 19:20:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EJKmBF015189; Wed, 14 May 2025 19:20:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EJKmnl015186; Wed, 14 May 2025 19:20:48 GMT (envelope-from git) Date: Wed, 14 May 2025 19:20:48 GMT Message-Id: <202505141920.54EJKmnl015186@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: 964557fe9807 - main - mail: exit with the correct exit status on SIGHUP in send mode 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 964557fe9807d473ad11182a332b0d1da4f54ef0 Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=964557fe9807d473ad11182a332b0d1da4f54ef0 commit 964557fe9807d473ad11182a332b0d1da4f54ef0 Author: Kyle Evans AuthorDate: 2025-05-14 19:20:16 +0000 Commit: Kyle Evans CommitDate: 2025-05-14 19:20:35 +0000 mail: exit with the correct exit status on SIGHUP in send mode Motivated by POSIX conformance requirements: mailx(1) is expected to take the default action for every signal except SIGINT in interactive mode. We still handle other signals that we shouldn't based on the spec (e.g., SIGTSTP), but conforming there is not as straightforward as we do more than just cleanup in response. Note that when the spec says that we must take the default action, it does not mean so strictly. Namely, we *can* do some sensible cleanup if we'd like, but we enter into nonconformant territory if we don't reflect the termination via signal in our exit status. That is why this change doesn't actually remove the handler; we're still conformant as long as the end result is the same as if we took the default action. Reviewed by: des Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50251 --- usr.bin/mail/collect.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/usr.bin/mail/collect.c b/usr.bin/mail/collect.c index 2423bcf7b262..97c4d499ea3a 100644 --- a/usr.bin/mail/collect.c +++ b/usr.bin/mail/collect.c @@ -698,7 +698,7 @@ collint(int s __unused) /*ARGSUSED*/ void -collhup(int s __unused) +collhup(int signo) { rewind(collf); savedeadletter(collf); @@ -706,7 +706,8 @@ collhup(int s __unused) * Let's pretend nobody else wants to clean up, * a true statement at this time. */ - exit(1); + signal(signo, SIG_DFL); + raise(signo); } void From nobody Wed May 14 19:32:11 2025 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 4ZyNlJ1sy1z5vdkk; Wed, 14 May 2025 19:32:12 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyNlH6CH7z3VP7; Wed, 14 May 2025 19:32:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747251131; 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=cFVNoL2l+YXVj6gszJaIm+wKjn2w3UUBD7B2UIfl7kg=; b=llCNd10eUrGl5masXH/KQtVXOnbcewmFQdPwt9ifRUILjJLO6mLddsOxjFsscoI+DGm3km N4olPCxe+bEnwPIv9QQX4tyx0x/JAFJN8s+sNavvnY7L2B7CibYNC645OvAOlgWZMqR1G9 fqArKm0IpErW+Sj9PG4ain57BTHG8owSypIRqDXBLyD16H3KLITQdvqA/oSbpNOYz8dL8c rh21P/l/ytljIYBBsrIGFLLTBEfI9MnJNjR+0tJdyL04aiI3DQ0YYAg+N5yua+Zb5oO69+ TBWCjgfNDY3Ixfy6D88eXxCpJ2ihApXtEE8ZmUcI+ypfi3Su2kLWimawPPIQew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747251131; 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=cFVNoL2l+YXVj6gszJaIm+wKjn2w3UUBD7B2UIfl7kg=; b=ZMGQtVLup58LIAHH8bSpvYyuRXFdYfOZ1uN+/GCqoOM79OqsZZDFXe4qnk3UsVA8rDUAr7 DDv4Ey5KvY29QiSs0ilWQEaRht/33KqhJi+w4FiulWJavUbo8teqYZD3AtaL7uPusR4dKG rfFJpg8vcYJqBTFE+r2fHuVWf08FgH8OXYSdvYHkn7zPEJqr0wSp1klweYVmMw/JK7CN6t T5/jVkXmRbMtibcZAT2s6mCbTJSUCmqCBh6YHzxAuZTHzx8SPX7mvajDcXgim063keCf3g wY0dTMd+q8Fgb1gI6uurnrmj0uOqdw1GRLe8fzxTQlefmpdbNa9wAGcwWacSbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747251131; a=rsa-sha256; cv=none; b=fGCfhq6K8woNzYLTCvCoFJY8f5uj+Y6THdAplXEF4GbUiMTiQQzzDPzi5xTlBWgXti7Umc O98qpOsBUfDNWiRIoiCJ1NopbHzW3hWhS6FZPvEG4xK1tNBbfcmmP6HNeD/Yc2a8d8uMGk YIcIdn4KihZo1kvvLlVlNhpmOJTXIHIKt3Q8SQBzcThchf8RRUG/Mra6X8GxHLxvvxhz7V FUdIr0iX+uhiGefY9kdqnt6tv0n+U7XniGJ+j94gnD93Z6mDNWmv0Q+vCJuPGbGw05Kwkr 3HJMpQIs5CB4muMbe+h+ONogLkBFetDZIyma6eBnp7F3AWxyN2ptFPfMzeaF2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyNlH5bGmzmR6; Wed, 14 May 2025 19:32:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54EJWBsj038884; Wed, 14 May 2025 19:32:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54EJWBfc038881; Wed, 14 May 2025 19:32:11 GMT (envelope-from git) Date: Wed, 14 May 2025 19:32:11 GMT Message-Id: <202505141932.54EJWBfc038881@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: a6bac0a9efa1 - main - mail: Add test cases for SIGHUP. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a6bac0a9efa15275ada0f0b0ef784837929fb5c6 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=a6bac0a9efa15275ada0f0b0ef784837929fb5c6 commit a6bac0a9efa15275ada0f0b0ef784837929fb5c6 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-14 19:31:47 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-14 19:31:47 +0000 mail: Add test cases for SIGHUP. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D50296 --- ObsoleteFiles.inc | 3 ++ usr.bin/mail/tests/Makefile | 2 +- .../{mail_sigint_test.c => mailx_signal_test.c} | 58 ++++++++++++++++------ 3 files changed, 47 insertions(+), 16 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 1793eb4ba582..589c9ce41ab7 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20250511: mailx test renamed +OLD_FILES+=usr/tests/usr.bin/mail/mail_sigint_test + # 20250505: Remove audio(8) files after rename to sndctl(8) OLD_FILES+=usr/sbin/audio OLD_FILES+=usr/share/man/man8/audio.8.gz diff --git a/usr.bin/mail/tests/Makefile b/usr.bin/mail/tests/Makefile index cb194b3da1f1..d7c1776f87fc 100644 --- a/usr.bin/mail/tests/Makefile +++ b/usr.bin/mail/tests/Makefile @@ -1,4 +1,4 @@ PACKAGE= tests -ATF_TESTS_C+= mail_sigint_test +ATF_TESTS_C+= mailx_signal_test .include diff --git a/usr.bin/mail/tests/mail_sigint_test.c b/usr.bin/mail/tests/mailx_signal_test.c similarity index 69% rename from usr.bin/mail/tests/mail_sigint_test.c rename to usr.bin/mail/tests/mailx_signal_test.c index ace5f714c459..d4ce1e536935 100644 --- a/usr.bin/mail/tests/mail_sigint_test.c +++ b/usr.bin/mail/tests/mailx_signal_test.c @@ -25,9 +25,11 @@ * then exit cleanly on receipt of a second. * * When not interactive, mailx(1) should terminate on receipt of SIGINT. + * + * In either case, mailx(1) should terminate on receipt of SIGHUP. */ static void -mailx_sigint(bool interactive) +mailx_signal_test(int signo, bool interactive) { char obuf[1024] = ""; char ebuf[1024] = ""; @@ -80,8 +82,8 @@ mailx_sigint(bool interactive) ATF_REQUIRE_INTEQ(BODYLEN, write(ipd[1], BODY, BODYLEN)); /* give it a chance to process */ poll(NULL, 0, 2000); - /* send first SIGINT */ - ATF_CHECK_INTEQ(0, kill(pid, SIGINT)); + /* send first signal */ + ATF_CHECK_INTEQ(0, kill(pid, signo)); kc = 1; /* receive output until child terminates */ fds[0].fd = opd[0]; @@ -103,7 +105,7 @@ mailx_sigint(bool interactive) } time(&now); if (now - start > 1 && elen > 0 && kc == 1) { - ATF_CHECK_INTEQ(0, kill(pid, SIGINT)); + ATF_CHECK_INTEQ(0, kill(pid, signo)); kc++; } if (now - start > 15 && kc > 0) { @@ -117,41 +119,67 @@ mailx_sigint(bool interactive) close(opd[0]); close(epd[0]); close(spd[0]); - if (interactive) { + /* + * In interactive mode, SIGINT results in a prompt, and a second + * SIGINT results in exit(1). In all other cases, we should see + * the signal terminate the process. + */ + if (interactive && signo == SIGINT) { ATF_CHECK(WIFEXITED(status)); if (WIFEXITED(status)) ATF_CHECK_INTEQ(1, WEXITSTATUS(status)); ATF_CHECK_INTEQ(2, kc); ATF_CHECK_STREQ("", obuf); ATF_CHECK_MATCH("Interrupt -- one more to kill letter", ebuf); - atf_utils_compare_file("dead.letter", BODY); } else { ATF_CHECK(WIFSIGNALED(status)); if (WIFSIGNALED(status)) - ATF_CHECK_INTEQ(SIGINT, WTERMSIG(status)); + ATF_CHECK_INTEQ(signo, WTERMSIG(status)); ATF_CHECK_INTEQ(1, kc); ATF_CHECK_STREQ("", obuf); ATF_CHECK_STREQ("", ebuf); + } + /* + * In interactive mode, and only in interactive mode, mailx should + * save whatever was typed before termination in ~/dead.letter. + * This is why we set HOME to "." in the child. + */ + if (interactive) { + atf_utils_compare_file("dead.letter", BODY); + } else { ATF_CHECK_INTEQ(-1, access("dead.letter", F_OK)); } } +ATF_TC_WITHOUT_HEAD(mailx_sighup_interactive); +ATF_TC_BODY(mailx_sighup_interactive, tc) +{ + mailx_signal_test(SIGHUP, true); +} + +ATF_TC_WITHOUT_HEAD(mailx_sighup_noninteractive); +ATF_TC_BODY(mailx_sighup_noninteractive, tc) +{ + mailx_signal_test(SIGHUP, false); +} -ATF_TC_WITHOUT_HEAD(mail_sigint_interactive); -ATF_TC_BODY(mail_sigint_interactive, tc) +ATF_TC_WITHOUT_HEAD(mailx_sigint_interactive); +ATF_TC_BODY(mailx_sigint_interactive, tc) { - mailx_sigint(true); + mailx_signal_test(SIGINT, true); } -ATF_TC_WITHOUT_HEAD(mail_sigint_noninteractive); -ATF_TC_BODY(mail_sigint_noninteractive, tc) +ATF_TC_WITHOUT_HEAD(mailx_sigint_noninteractive); +ATF_TC_BODY(mailx_sigint_noninteractive, tc) { - mailx_sigint(false); + mailx_signal_test(SIGINT, false); } ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tp, mail_sigint_interactive); - ATF_TP_ADD_TC(tp, mail_sigint_noninteractive); + ATF_TP_ADD_TC(tp, mailx_sighup_interactive); + ATF_TP_ADD_TC(tp, mailx_sighup_noninteractive); + ATF_TP_ADD_TC(tp, mailx_sigint_interactive); + ATF_TP_ADD_TC(tp, mailx_sigint_noninteractive); return (atf_no_error()); } From nobody Wed May 14 23:40:37 2025 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 4ZyVFx5yL2z5w0RV; Wed, 14 May 2025 23:40:37 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVFx3zGTz3XwP; Wed, 14 May 2025 23:40:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266037; 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=wWlp+lnuYsgJYkodxlxoxKSUdnG54NwIuAKeFN+3GWY=; b=Np66vNn46cDuqHhh9WwELSmCybwtjdsEt+Bp6pr4lBwnsc9B3Yv484xwzl5RT1F6jfKFLg p86lXLXNEcS1PwhUXTClYM9TRgn4Ku/UI2Af+QTUQ0z6CHLzspCwjH+b86QohoqzmrKlmi 3h0VAoFgnBgtzlNDx/PyOJhdv0V18ChgdG9LjpSqXLXubTUrGKc3sPFF6vs+EarO5w5EuC iCOywHXapyqnRlZOc+WWFhmP97GsMWUooYpB7VkXyY02nJg4IkFGgQ7cx20x5aK3vwfwaZ mTIDfD86Fsa2jXxxuX5DiaYNJxA6uaSrxLEVtPRrfW3siFax2oGeKg9PV7CZXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266037; 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=wWlp+lnuYsgJYkodxlxoxKSUdnG54NwIuAKeFN+3GWY=; b=kfkI/eUqQL97yXhnSMJHZAvpSp1SPQbdhTAGwzmBkcq/abBj+8vboxOj6WzF/kzq3UZLim FWckHEwluvURkK8A5qyDFB8jjuu2AuLW13LkBKxG/PWv3Z9z8+2GuMfZYweC4p4RwcbPFP 1F/KVs7mZWGLfo6UjHrA8WzXskP1bnjew6j5giRen8BfCJodFtiC6aDGwz2L3nRfwPvi42 rH8nWhEOq2GUMDcORIOnJwR5j+J5twtWUmmo4ATc4YfcpiwPfJ9/8blqFynvgNhWKlONMF TLD91LZLunnakVbvMuvF1J7E3qFp9O5ny3OH/6QQYjhFGvOqYKUA4vgLT8PMOg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747266037; a=rsa-sha256; cv=none; b=xjFY+grmHoQoagKXlvBrMYPKGWt1k4laP2dA38ooMjfxIhwkq6nRGDSGV1IVI5Th+5KoMi wQqeJGu6zZwOQ3/B2gQHVTXgZ9VbPjh+9axhY502/f5fQuPE//EuQEGCK29YHH4oaFSqow jrwOLiNaxkmFBth9FZMEeYQiiXtCS/zcgB7DVhiaaVnzhKGhf5HhBd4qHYGx+aaOvxvsUm PA8jbRTAhmzNugJnhwNAtivKtUxMksxpnSktWJm62MIjqybzABzCYMdE0ou3KKjrxqxu8f lITt+bX4tFAH3iqWN/fwnfW3OH7kMPmy8tvKqwmIPLwdGbcymc32tie2VjgMYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVFx3Vg6ztMt; Wed, 14 May 2025 23:40:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENebRE000131; Wed, 14 May 2025 23:40:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENebDb000127; Wed, 14 May 2025 23:40:37 GMT (envelope-from git) Date: Wed, 14 May 2025 23:40:37 GMT Message-Id: <202505142340.54ENebDb000127@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Clausecker Subject: git: 181a04415a8b - main - lib/libmd: replace SHA-1 implementation with Go's implementation 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 181a04415a8b3a3fe8be4b986dce550f09cbb415 Auto-Submitted: auto-generated The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=181a04415a8b3a3fe8be4b986dce550f09cbb415 commit 181a04415a8b3a3fe8be4b986dce550f09cbb415 Author: Robert Clausecker AuthorDate: 2024-05-28 14:17:42 +0000 Commit: Robert Clausecker CommitDate: 2025-05-14 23:39:58 +0000 lib/libmd: replace SHA-1 implementation with Go's implementation This lays the foundation for importing Go's excellent assembly implementations of the SHA-1 block function. No performance changes observed on amd64. Reviewed by: getz Differential Revision: https://reviews.freebsd.org/D45444 --- lib/libmd/Makefile | 6 +- lib/libmd/i386/sha.S | 1951 -------------------------------------------------- lib/libmd/sha1c.c | 654 ++++++----------- 3 files changed, 214 insertions(+), 2397 deletions(-) diff --git a/lib/libmd/Makefile b/lib/libmd/Makefile index d8c32063d6ce..427da5b9d68f 100644 --- a/lib/libmd/Makefile +++ b/lib/libmd/Makefile @@ -117,8 +117,8 @@ USE_ASM_SOURCES:=0 .endif .if ${USE_ASM_SOURCES} != 0 -.if exists(${MACHINE_ARCH}/sha.S) -SRCS+= sha.S +.if exists(${MACHINE_ARCH}/sha1block.S) +SRCS+= sha1block.S CFLAGS+= -DSHA1_ASM .endif .if exists(${MACHINE_ARCH}/rmd160.S) @@ -135,7 +135,7 @@ CFLAGS+= -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace w # the assembly vs C versions, and skein_block needs to be rebuilt if it changes. skein_block.o skein_block.pico: Makefile .endif -.if exists(${MACHINE_ARCH}/sha.S) || exists(${MACHINE_ARCH}/rmd160.S) || exists(${MACHINE_ARCH}/skein_block_asm.S) +.if exists(${MACHINE_ARCH}/rmd160.S) || exists(${MACHINE_ARCH}/skein_block_asm.S) ACFLAGS+= -DELF -Wa,--noexecstack .endif .if ${MACHINE_CPUARCH} == "aarch64" diff --git a/lib/libmd/i386/sha.S b/lib/libmd/i386/sha.S deleted file mode 100644 index 3bb54aa9b251..000000000000 --- a/lib/libmd/i386/sha.S +++ /dev/null @@ -1,1951 +0,0 @@ -/* -*- Fundamental -*- Emacs' assembler mode hoses this file */ -#ifndef PIC -/* Run the C pre-processor over this file with one of the following defined - * ELF - elf object files, - * OUT - a.out object files, - * BSDI - BSDI style a.out object files - * SOL - Solaris style elf - */ - -#define TYPE(a,b) .type a,b -#define SIZE(a,b) .size a,b - -#if defined(OUT) || defined(BSDI) -#define sha1_block_x86 _sha1_block_x86 - -#endif - -#ifdef OUT -#define OK 1 -#define ALIGN 4 -#endif - -#ifdef BSDI -#define OK 1 -#define ALIGN 4 -#undef SIZE -#undef TYPE -#define SIZE(a,b) -#define TYPE(a,b) -#endif - -#if defined(ELF) || defined(SOL) -#define OK 1 -#define ALIGN 4 -#endif - -#ifndef OK -You need to define one of -ELF - elf systems - linux-elf, NetBSD and DG-UX -OUT - a.out systems - linux-a.out and FreeBSD -SOL - solaris systems, which are elf with strange comment lines -BSDI - a.out with a very primative version of as. -#endif - -/* Let the Assembler begin :-) */ - /* Don't even think of reading this code */ - /* It was automatically generated by sha1-586.pl */ - /* Which is a perl program used to generate the x86 assember for */ - /* any of elf, a.out, BSDI,Win32, or Solaris */ - /* eric */ - - .file "sha1-586.s" - .version "01.01" -gcc2_compiled.: -.text - .p2align ALIGN -.globl sha1_block_x86 - TYPE(sha1_block_x86,@function) -sha1_block_x86: - pushl %esi - pushl %ebp - movl 20(%esp), %eax - movl 16(%esp), %esi - addl %esi, %eax - movl 12(%esp), %ebp - pushl %ebx - subl $64, %eax - pushl %edi - movl 4(%ebp), %ebx - subl $72, %esp - movl 12(%ebp), %edx - movl 16(%ebp), %edi - movl 8(%ebp), %ecx - movl %eax, 68(%esp) - /* First we need to setup the X array */ - movl (%esi), %eax -.L000start: - /* First, load the words onto the stack in network byte order */ -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, (%esp) - movl 4(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 4(%esp) - movl 8(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 8(%esp) - movl 12(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 12(%esp) - movl 16(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 16(%esp) - movl 20(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 20(%esp) - movl 24(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 24(%esp) - movl 28(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 28(%esp) - movl 32(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 32(%esp) - movl 36(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 36(%esp) - movl 40(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 40(%esp) - movl 44(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 44(%esp) - movl 48(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 48(%esp) - movl 52(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 52(%esp) - movl 56(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 56(%esp) - movl 60(%esi), %eax -.byte 15 -.byte 200 /* bswapl %eax */ - movl %eax, 60(%esp) - /* We now have the X array on the stack */ - /* starting at sp-4 */ - movl %esi, 64(%esp) - - /* Start processing */ - movl (%ebp), %eax - /* 00_15 0 */ - movl %ecx, %esi - movl %eax, %ebp - xorl %edx, %esi - roll $5, %ebp - andl %ebx, %esi - addl %edi, %ebp -.byte 209 -.byte 203 /* rorl $1 %ebx */ - movl (%esp), %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - xorl %edx, %esi - leal 1518500249(%ebp,%edi,1),%ebp - movl %ebx, %edi - addl %ebp, %esi - xorl %ecx, %edi - movl %esi, %ebp - andl %eax, %edi - roll $5, %ebp - addl %edx, %ebp - movl 4(%esp), %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - xorl %ecx, %edi -.byte 209 -.byte 200 /* rorl $1 %eax */ - leal 1518500249(%ebp,%edx,1),%ebp - addl %ebp, %edi - /* 00_15 2 */ - movl %eax, %edx - movl %edi, %ebp - xorl %ebx, %edx - roll $5, %ebp - andl %esi, %edx - addl %ecx, %ebp -.byte 209 -.byte 206 /* rorl $1 %esi */ - movl 8(%esp), %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - xorl %ebx, %edx - leal 1518500249(%ebp,%ecx,1),%ebp - movl %esi, %ecx - addl %ebp, %edx - xorl %eax, %ecx - movl %edx, %ebp - andl %edi, %ecx - roll $5, %ebp - addl %ebx, %ebp - movl 12(%esp), %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - xorl %eax, %ecx -.byte 209 -.byte 207 /* rorl $1 %edi */ - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ebp, %ecx - /* 00_15 4 */ - movl %edi, %ebx - movl %ecx, %ebp - xorl %esi, %ebx - roll $5, %ebp - andl %edx, %ebx - addl %eax, %ebp -.byte 209 -.byte 202 /* rorl $1 %edx */ - movl 16(%esp), %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - xorl %esi, %ebx - leal 1518500249(%ebp,%eax,1),%ebp - movl %edx, %eax - addl %ebp, %ebx - xorl %edi, %eax - movl %ebx, %ebp - andl %ecx, %eax - roll $5, %ebp - addl %esi, %ebp - movl 20(%esp), %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - xorl %edi, %eax -.byte 209 -.byte 201 /* rorl $1 %ecx */ - leal 1518500249(%ebp,%esi,1),%ebp - addl %ebp, %eax - /* 00_15 6 */ - movl %ecx, %esi - movl %eax, %ebp - xorl %edx, %esi - roll $5, %ebp - andl %ebx, %esi - addl %edi, %ebp -.byte 209 -.byte 203 /* rorl $1 %ebx */ - movl 24(%esp), %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - xorl %edx, %esi - leal 1518500249(%ebp,%edi,1),%ebp - movl %ebx, %edi - addl %ebp, %esi - xorl %ecx, %edi - movl %esi, %ebp - andl %eax, %edi - roll $5, %ebp - addl %edx, %ebp - movl 28(%esp), %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - xorl %ecx, %edi -.byte 209 -.byte 200 /* rorl $1 %eax */ - leal 1518500249(%ebp,%edx,1),%ebp - addl %ebp, %edi - /* 00_15 8 */ - movl %eax, %edx - movl %edi, %ebp - xorl %ebx, %edx - roll $5, %ebp - andl %esi, %edx - addl %ecx, %ebp -.byte 209 -.byte 206 /* rorl $1 %esi */ - movl 32(%esp), %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - xorl %ebx, %edx - leal 1518500249(%ebp,%ecx,1),%ebp - movl %esi, %ecx - addl %ebp, %edx - xorl %eax, %ecx - movl %edx, %ebp - andl %edi, %ecx - roll $5, %ebp - addl %ebx, %ebp - movl 36(%esp), %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - xorl %eax, %ecx -.byte 209 -.byte 207 /* rorl $1 %edi */ - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ebp, %ecx - /* 00_15 10 */ - movl %edi, %ebx - movl %ecx, %ebp - xorl %esi, %ebx - roll $5, %ebp - andl %edx, %ebx - addl %eax, %ebp -.byte 209 -.byte 202 /* rorl $1 %edx */ - movl 40(%esp), %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - xorl %esi, %ebx - leal 1518500249(%ebp,%eax,1),%ebp - movl %edx, %eax - addl %ebp, %ebx - xorl %edi, %eax - movl %ebx, %ebp - andl %ecx, %eax - roll $5, %ebp - addl %esi, %ebp - movl 44(%esp), %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - xorl %edi, %eax -.byte 209 -.byte 201 /* rorl $1 %ecx */ - leal 1518500249(%ebp,%esi,1),%ebp - addl %ebp, %eax - /* 00_15 12 */ - movl %ecx, %esi - movl %eax, %ebp - xorl %edx, %esi - roll $5, %ebp - andl %ebx, %esi - addl %edi, %ebp -.byte 209 -.byte 203 /* rorl $1 %ebx */ - movl 48(%esp), %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - xorl %edx, %esi - leal 1518500249(%ebp,%edi,1),%ebp - movl %ebx, %edi - addl %ebp, %esi - xorl %ecx, %edi - movl %esi, %ebp - andl %eax, %edi - roll $5, %ebp - addl %edx, %ebp - movl 52(%esp), %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - xorl %ecx, %edi -.byte 209 -.byte 200 /* rorl $1 %eax */ - leal 1518500249(%ebp,%edx,1),%ebp - addl %ebp, %edi - /* 00_15 14 */ - movl %eax, %edx - movl %edi, %ebp - xorl %ebx, %edx - roll $5, %ebp - andl %esi, %edx - addl %ecx, %ebp -.byte 209 -.byte 206 /* rorl $1 %esi */ - movl 56(%esp), %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - xorl %ebx, %edx - leal 1518500249(%ebp,%ecx,1),%ebp - movl %esi, %ecx - addl %ebp, %edx - xorl %eax, %ecx - movl %edx, %ebp - andl %edi, %ecx - roll $5, %ebp - addl %ebx, %ebp - movl 60(%esp), %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - xorl %eax, %ecx -.byte 209 -.byte 207 /* rorl $1 %edi */ - leal 1518500249(%ebp,%ebx,1),%ebp - addl %ebp, %ecx - /* 16_19 16 */ - nop - movl (%esp), %ebp - movl 8(%esp), %ebx - xorl %ebp, %ebx - movl 32(%esp), %ebp - xorl %ebp, %ebx - movl 52(%esp), %ebp - xorl %ebp, %ebx - movl %edi, %ebp -.byte 209 -.byte 195 /* roll $1 %ebx */ - xorl %esi, %ebp - movl %ebx, (%esp) - andl %edx, %ebp - leal 1518500249(%ebx,%eax,1),%ebx - xorl %esi, %ebp - movl %ecx, %eax - addl %ebp, %ebx - roll $5, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %eax, %ebx - movl 4(%esp), %eax - movl 12(%esp), %ebp - xorl %ebp, %eax - movl 36(%esp), %ebp - xorl %ebp, %eax - movl 56(%esp), %ebp -.byte 209 -.byte 202 /* rorl $1 %edx */ - xorl %ebp, %eax -.byte 209 -.byte 192 /* roll $1 %eax */ - movl %edx, %ebp - xorl %edi, %ebp - movl %eax, 4(%esp) - andl %ecx, %ebp - leal 1518500249(%eax,%esi,1),%eax - xorl %edi, %ebp - movl %ebx, %esi - roll $5, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %esi, %eax -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %ebp, %eax - /* 16_19 18 */ - movl 8(%esp), %ebp - movl 16(%esp), %esi - xorl %ebp, %esi - movl 40(%esp), %ebp - xorl %ebp, %esi - movl 60(%esp), %ebp - xorl %ebp, %esi - movl %ecx, %ebp -.byte 209 -.byte 198 /* roll $1 %esi */ - xorl %edx, %ebp - movl %esi, 8(%esp) - andl %ebx, %ebp - leal 1518500249(%esi,%edi,1),%esi - xorl %edx, %ebp - movl %eax, %edi - addl %ebp, %esi - roll $5, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %edi, %esi - movl 12(%esp), %edi - movl 20(%esp), %ebp - xorl %ebp, %edi - movl 44(%esp), %ebp - xorl %ebp, %edi - movl (%esp), %ebp -.byte 209 -.byte 203 /* rorl $1 %ebx */ - xorl %ebp, %edi -.byte 209 -.byte 199 /* roll $1 %edi */ - movl %ebx, %ebp - xorl %ecx, %ebp - movl %edi, 12(%esp) - andl %eax, %ebp - leal 1518500249(%edi,%edx,1),%edi - xorl %ecx, %ebp - movl %esi, %edx - roll $5, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %edx, %edi -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %ebp, %edi - /* 20_39 20 */ - movl 16(%esp), %edx - movl 24(%esp), %ebp - xorl %ebp, %edx - movl 48(%esp), %ebp - xorl %ebp, %edx - movl 4(%esp), %ebp - xorl %ebp, %edx - movl %esi, %ebp -.byte 209 -.byte 194 /* roll $1 %edx */ - xorl %eax, %ebp - movl %edx, 16(%esp) - xorl %ebx, %ebp - leal 1859775393(%edx,%ecx,1),%edx - movl %edi, %ecx - roll $5, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ebp, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ecx, %edx - /* 20_39 21 */ - movl 20(%esp), %ecx - movl 28(%esp), %ebp - xorl %ebp, %ecx - movl 52(%esp), %ebp - xorl %ebp, %ecx - movl 8(%esp), %ebp - xorl %ebp, %ecx - movl %edi, %ebp -.byte 209 -.byte 193 /* roll $1 %ecx */ - xorl %esi, %ebp - movl %ecx, 20(%esp) - xorl %eax, %ebp - leal 1859775393(%ecx,%ebx,1),%ecx - movl %edx, %ebx - roll $5, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebp, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebx, %ecx - /* 20_39 22 */ - movl 24(%esp), %ebx - movl 32(%esp), %ebp - xorl %ebp, %ebx - movl 56(%esp), %ebp - xorl %ebp, %ebx - movl 12(%esp), %ebp - xorl %ebp, %ebx - movl %edx, %ebp -.byte 209 -.byte 195 /* roll $1 %ebx */ - xorl %edi, %ebp - movl %ebx, 24(%esp) - xorl %esi, %ebp - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx, %eax - roll $5, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %ebp, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %eax, %ebx - /* 20_39 23 */ - movl 28(%esp), %eax - movl 36(%esp), %ebp - xorl %ebp, %eax - movl 60(%esp), %ebp - xorl %ebp, %eax - movl 16(%esp), %ebp - xorl %ebp, %eax - movl %ecx, %ebp -.byte 209 -.byte 192 /* roll $1 %eax */ - xorl %edx, %ebp - movl %eax, 28(%esp) - xorl %edi, %ebp - leal 1859775393(%eax,%esi,1),%eax - movl %ebx, %esi - roll $5, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %ebp, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %esi, %eax - /* 20_39 24 */ - movl 32(%esp), %esi - movl 40(%esp), %ebp - xorl %ebp, %esi - movl (%esp), %ebp - xorl %ebp, %esi - movl 20(%esp), %ebp - xorl %ebp, %esi - movl %ebx, %ebp -.byte 209 -.byte 198 /* roll $1 %esi */ - xorl %ecx, %ebp - movl %esi, 32(%esp) - xorl %edx, %ebp - leal 1859775393(%esi,%edi,1),%esi - movl %eax, %edi - roll $5, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %ebp, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %edi, %esi - /* 20_39 25 */ - movl 36(%esp), %edi - movl 44(%esp), %ebp - xorl %ebp, %edi - movl 4(%esp), %ebp - xorl %ebp, %edi - movl 24(%esp), %ebp - xorl %ebp, %edi - movl %eax, %ebp -.byte 209 -.byte 199 /* roll $1 %edi */ - xorl %ebx, %ebp - movl %edi, 36(%esp) - xorl %ecx, %ebp - leal 1859775393(%edi,%edx,1),%edi - movl %esi, %edx - roll $5, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %ebp, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %edx, %edi - /* 20_39 26 */ - movl 40(%esp), %edx - movl 48(%esp), %ebp - xorl %ebp, %edx - movl 8(%esp), %ebp - xorl %ebp, %edx - movl 28(%esp), %ebp - xorl %ebp, %edx - movl %esi, %ebp -.byte 209 -.byte 194 /* roll $1 %edx */ - xorl %eax, %ebp - movl %edx, 40(%esp) - xorl %ebx, %ebp - leal 1859775393(%edx,%ecx,1),%edx - movl %edi, %ecx - roll $5, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ebp, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ecx, %edx - /* 20_39 27 */ - movl 44(%esp), %ecx - movl 52(%esp), %ebp - xorl %ebp, %ecx - movl 12(%esp), %ebp - xorl %ebp, %ecx - movl 32(%esp), %ebp - xorl %ebp, %ecx - movl %edi, %ebp -.byte 209 -.byte 193 /* roll $1 %ecx */ - xorl %esi, %ebp - movl %ecx, 44(%esp) - xorl %eax, %ebp - leal 1859775393(%ecx,%ebx,1),%ecx - movl %edx, %ebx - roll $5, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebp, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebx, %ecx - /* 20_39 28 */ - movl 48(%esp), %ebx - movl 56(%esp), %ebp - xorl %ebp, %ebx - movl 16(%esp), %ebp - xorl %ebp, %ebx - movl 36(%esp), %ebp - xorl %ebp, %ebx - movl %edx, %ebp -.byte 209 -.byte 195 /* roll $1 %ebx */ - xorl %edi, %ebp - movl %ebx, 48(%esp) - xorl %esi, %ebp - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx, %eax - roll $5, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %ebp, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %eax, %ebx - /* 20_39 29 */ - movl 52(%esp), %eax - movl 60(%esp), %ebp - xorl %ebp, %eax - movl 20(%esp), %ebp - xorl %ebp, %eax - movl 40(%esp), %ebp - xorl %ebp, %eax - movl %ecx, %ebp -.byte 209 -.byte 192 /* roll $1 %eax */ - xorl %edx, %ebp - movl %eax, 52(%esp) - xorl %edi, %ebp - leal 1859775393(%eax,%esi,1),%eax - movl %ebx, %esi - roll $5, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %ebp, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %esi, %eax - /* 20_39 30 */ - movl 56(%esp), %esi - movl (%esp), %ebp - xorl %ebp, %esi - movl 24(%esp), %ebp - xorl %ebp, %esi - movl 44(%esp), %ebp - xorl %ebp, %esi - movl %ebx, %ebp -.byte 209 -.byte 198 /* roll $1 %esi */ - xorl %ecx, %ebp - movl %esi, 56(%esp) - xorl %edx, %ebp - leal 1859775393(%esi,%edi,1),%esi - movl %eax, %edi - roll $5, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %ebp, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %edi, %esi - /* 20_39 31 */ - movl 60(%esp), %edi - movl 4(%esp), %ebp - xorl %ebp, %edi - movl 28(%esp), %ebp - xorl %ebp, %edi - movl 48(%esp), %ebp - xorl %ebp, %edi - movl %eax, %ebp -.byte 209 -.byte 199 /* roll $1 %edi */ - xorl %ebx, %ebp - movl %edi, 60(%esp) - xorl %ecx, %ebp - leal 1859775393(%edi,%edx,1),%edi - movl %esi, %edx - roll $5, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %ebp, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %edx, %edi - /* 20_39 32 */ - movl (%esp), %edx - movl 8(%esp), %ebp - xorl %ebp, %edx - movl 32(%esp), %ebp - xorl %ebp, %edx - movl 52(%esp), %ebp - xorl %ebp, %edx - movl %esi, %ebp -.byte 209 -.byte 194 /* roll $1 %edx */ - xorl %eax, %ebp - movl %edx, (%esp) - xorl %ebx, %ebp - leal 1859775393(%edx,%ecx,1),%edx - movl %edi, %ecx - roll $5, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ebp, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ecx, %edx - /* 20_39 33 */ - movl 4(%esp), %ecx - movl 12(%esp), %ebp - xorl %ebp, %ecx - movl 36(%esp), %ebp - xorl %ebp, %ecx - movl 56(%esp), %ebp - xorl %ebp, %ecx - movl %edi, %ebp -.byte 209 -.byte 193 /* roll $1 %ecx */ - xorl %esi, %ebp - movl %ecx, 4(%esp) - xorl %eax, %ebp - leal 1859775393(%ecx,%ebx,1),%ecx - movl %edx, %ebx - roll $5, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebp, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebx, %ecx - /* 20_39 34 */ - movl 8(%esp), %ebx - movl 16(%esp), %ebp - xorl %ebp, %ebx - movl 40(%esp), %ebp - xorl %ebp, %ebx - movl 60(%esp), %ebp - xorl %ebp, %ebx - movl %edx, %ebp -.byte 209 -.byte 195 /* roll $1 %ebx */ - xorl %edi, %ebp - movl %ebx, 8(%esp) - xorl %esi, %ebp - leal 1859775393(%ebx,%eax,1),%ebx - movl %ecx, %eax - roll $5, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %ebp, %eax -.byte 209 -.byte 202 /* rorl $1 %edx */ - addl %eax, %ebx - /* 20_39 35 */ - movl 12(%esp), %eax - movl 20(%esp), %ebp - xorl %ebp, %eax - movl 44(%esp), %ebp - xorl %ebp, %eax - movl (%esp), %ebp - xorl %ebp, %eax - movl %ecx, %ebp -.byte 209 -.byte 192 /* roll $1 %eax */ - xorl %edx, %ebp - movl %eax, 12(%esp) - xorl %edi, %ebp - leal 1859775393(%eax,%esi,1),%eax - movl %ebx, %esi - roll $5, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %ebp, %esi -.byte 209 -.byte 201 /* rorl $1 %ecx */ - addl %esi, %eax - /* 20_39 36 */ - movl 16(%esp), %esi - movl 24(%esp), %ebp - xorl %ebp, %esi - movl 48(%esp), %ebp - xorl %ebp, %esi - movl 4(%esp), %ebp - xorl %ebp, %esi - movl %ebx, %ebp -.byte 209 -.byte 198 /* roll $1 %esi */ - xorl %ecx, %ebp - movl %esi, 16(%esp) - xorl %edx, %ebp - leal 1859775393(%esi,%edi,1),%esi - movl %eax, %edi - roll $5, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %ebp, %edi -.byte 209 -.byte 203 /* rorl $1 %ebx */ - addl %edi, %esi - /* 20_39 37 */ - movl 20(%esp), %edi - movl 28(%esp), %ebp - xorl %ebp, %edi - movl 52(%esp), %ebp - xorl %ebp, %edi - movl 8(%esp), %ebp - xorl %ebp, %edi - movl %eax, %ebp -.byte 209 -.byte 199 /* roll $1 %edi */ - xorl %ebx, %ebp - movl %edi, 20(%esp) - xorl %ecx, %ebp - leal 1859775393(%edi,%edx,1),%edi - movl %esi, %edx - roll $5, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %ebp, %edx -.byte 209 -.byte 200 /* rorl $1 %eax */ - addl %edx, %edi - /* 20_39 38 */ - movl 24(%esp), %edx - movl 32(%esp), %ebp - xorl %ebp, %edx - movl 56(%esp), %ebp - xorl %ebp, %edx - movl 12(%esp), %ebp - xorl %ebp, %edx - movl %esi, %ebp -.byte 209 -.byte 194 /* roll $1 %edx */ - xorl %eax, %ebp - movl %edx, 24(%esp) - xorl %ebx, %ebp - leal 1859775393(%edx,%ecx,1),%edx - movl %edi, %ecx - roll $5, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ebp, %ecx -.byte 209 -.byte 206 /* rorl $1 %esi */ - addl %ecx, %edx - /* 20_39 39 */ - movl 28(%esp), %ecx - movl 36(%esp), %ebp - xorl %ebp, %ecx - movl 60(%esp), %ebp - xorl %ebp, %ecx - movl 16(%esp), %ebp - xorl %ebp, %ecx - movl %edi, %ebp -.byte 209 -.byte 193 /* roll $1 %ecx */ - xorl %esi, %ebp - movl %ecx, 28(%esp) - xorl %eax, %ebp - leal 1859775393(%ecx,%ebx,1),%ecx - movl %edx, %ebx - roll $5, %ebx -.byte 209 -.byte 207 /* rorl $1 %edi */ - addl %ebp, %ebx *** 1712 LINES SKIPPED *** From nobody Wed May 14 23:40:38 2025 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 4ZyVFy56J6z5w0Xh; Wed, 14 May 2025 23:40:38 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVFy4JbHz3Xr3; Wed, 14 May 2025 23:40:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266038; 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=eCgYAYZLodsbJLx7j9w1PGED63KksHwHUn3tegjxjcs=; b=hh1DXMUYOHJ5L+KZnUIs/fnUM6OuuPY2nmW17TY3KkxY46FB9YtS0x2xzgiKuOT1sl8abH JIfhxTfNHxfh9uw3xhOKpL/3RXnmTPSu6t5Wh8N+fYBl0Xc3EQTgdQ6Tampg5nI3HeWKzq 05mURMpQmusOF736/Lw7eEPif4Joc4tP3rqBvUBbZXeMC4txpIHUx2cSW8XF1I2eJ06DTf q0mSNfxLmWBQdiuuK/ma1dOOQng09GyYZ/LS50mpGxSVjyEfpEDZd9lG4OXwGNfcRrf1ZZ LB2zY0pBqFpxzqABGs+hd02LGJU/xv3hpU9wn9/6/IFId4+Dxwd/tXb0N9oiWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266038; 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=eCgYAYZLodsbJLx7j9w1PGED63KksHwHUn3tegjxjcs=; b=fFf73cTjuAnFAyVPC+Y0bhX/TKAWqsGdSBNtHiYsZMdiVUHqqsAzH8kZTylfYepcpQdOKE tMSmhweDaQBpLFF3TgPGlQOur9nrBTyyt3BTPtn8AWg1mI1JkJqYxdvH/o2lNS2Y3mivfE Uh3bmkdFpMO/X8wIoT4CnYInwz2dce2z5CimUAu2BXwB46qe9XFFqzoHSe5MArvwjsBYP5 vDyN67NfuuG9l+OJdvFdOClSG34ed5xYsxwFleOX3tCRFeEaA5tFZZAez4ia3Gt+qGIMTB gbfJncUQ+jlfAkGfaVcPhxja4tlzCiXiWfvbX6us72JCqleTeU1Q/fTUNhw1bw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747266038; a=rsa-sha256; cv=none; b=uYFtw3DYuf2y7dDrACDUOz0r8Bg2lxWSbR0ScaNKj04UAdTdgs6vodYkfSpSZ3mhjfX+Ob ELDqsLEGB5caNjbwWwFvic9S4JkNXlzWOugo/EU1trk6ml7vmNBYgV5kfaSOavwxoaE1+V 7qr71aMjvEG5PaAKNcq4Xb5t+8blToY7cwKU2f/YRFDMvq1+KqiewIzEFKXoVTUSxgjY4N o6SckFydTY4rlEcGlPtB0xnZcTn/cphvB+XKERL2v6iXbDhEerv1jRY4eHBVdox6a1xV5t I54NBNq2W8knGKLziN9UuCDat7dXlBw2AdW6QEo3Gm1OqfUV/utw4dKC9ej8rA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVFy3sl2ztD9; Wed, 14 May 2025 23:40:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENec9e000169; Wed, 14 May 2025 23:40:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENecbI000166; Wed, 14 May 2025 23:40:38 GMT (envelope-from git) Date: Wed, 14 May 2025 23:40:38 GMT Message-Id: <202505142340.54ENecbI000166@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Clausecker Subject: git: 8b4684afcde3 - main - lib/libmd: add optimised SHA1 implementations for amd64 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8b4684afcde3930eb49490f0b8431c4cb2ad9a46 Auto-Submitted: auto-generated The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=8b4684afcde3930eb49490f0b8431c4cb2ad9a46 commit 8b4684afcde3930eb49490f0b8431c4cb2ad9a46 Author: Robert Clausecker AuthorDate: 2024-05-28 15:20:41 +0000 Commit: Robert Clausecker CommitDate: 2025-05-14 23:39:58 +0000 lib/libmd: add optimised SHA1 implementations for amd64 Three implementations are provided: one using just scalar instructions, one using AVX2, and one using the SHA instructions (SHANI). The AVX2 version uses a complicated multi-block carry scheme described in an Intel whitepaper; the code was carefully transcribed from the implementatio shipped with the Go runtime. The performance is quite good. From my Tiger Lake based NUC: old: 16.7s ( 613 MB/s) scalar: 14.5s ( 706 MB/s) avx2: 10.5s ( 975 MB/s) shani: 5.6s (1829 MB/s) Reviewed by: getz Obtained from: https://github.com/golang/go/blob/b0dfcb74651b82123746273bbf6bb9988cd96e18/src/crypto/sha1/sha1block_amd64.s Differential Revision: https://reviews.freebsd.org/D45444 --- lib/libmd/Makefile | 3 + lib/libmd/amd64/sha1block.S | 1851 ++++++++++++++++++++++++++++++++++++++++ lib/libmd/amd64/sha1dispatch.c | 77 ++ 3 files changed, 1931 insertions(+) diff --git a/lib/libmd/Makefile b/lib/libmd/Makefile index 427da5b9d68f..547a134fc440 100644 --- a/lib/libmd/Makefile +++ b/lib/libmd/Makefile @@ -120,6 +120,9 @@ USE_ASM_SOURCES:=0 .if exists(${MACHINE_ARCH}/sha1block.S) SRCS+= sha1block.S CFLAGS+= -DSHA1_ASM +.if exists(${MACHINE_ARCH}/sha1dispatch.c) +SRCS+= sha1dispatch.c +.endif .endif .if exists(${MACHINE_ARCH}/rmd160.S) SRCS+= rmd160.S diff --git a/lib/libmd/amd64/sha1block.S b/lib/libmd/amd64/sha1block.S new file mode 100644 index 000000000000..0307dcdece32 --- /dev/null +++ b/lib/libmd/amd64/sha1block.S @@ -0,0 +1,1851 @@ +/*- + * Copyright (c) 2013 The Go Authors. All rights reserved. + * Copyright (c) 2024 Robert Clausecker + * + * Adapted from Go's crypto/sha1/sha1block_amd64.s. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +/* + * SHA-1 block routine. See sha1c.c for C equivalent. + * + * There are 80 rounds of 4 types: + * - rounds 0-15 are type 1 and load data (round1 macro). + * - rounds 16-19 are type 1 and do not load data (round1x macro). + * - rounds 20-39 are type 2 and do not load data (round2 macro). + * - rounds 40-59 are type 3 and do not load data (round3 macro). + * - rounds 60-79 are type 4 and do not load data (round4 macro). + * + * Each round loads or shuffles the data, then computes a per-round + * function of b, c, d, and then mixes the result into and rotates the + * five registers a, b, c, d, e holding the intermediate results. + * + * The register rotation is implemented by rotating the arguments to + * the round macros instead of by explicit move instructions. + */ +.macro load index + mov (\index)*4(%rsi), %r10d + bswap %r10d + mov %r10d, (\index)*4(%rsp) +.endm + +.macro shuffle index + mov ((\index )&0xf)*4(%rsp), %r10d + xor ((\index- 3)&0xf)*4(%rsp), %r10d + xor ((\index- 8)&0xf)*4(%rsp), %r10d + xor ((\index-14)&0xf)*4(%rsp), %r10d + rol $1, %r10d + mov %r10d, ((\index)&0xf)*4(%rsp) +.endm + +.macro func1 a, b, c, d, e + mov \d, %r9d + xor \c, %r9d + and \b, %r9d + xor \d, %r9d +.endm + +.macro func2 a, b, c, d, e + mov \b, %r9d + xor \c, %r9d + xor \d, %r9d +.endm + +.macro func3 a, b, c, d, e + mov \b, %r8d + or \c, %r8d + and \d, %r8d + mov \b, %r9d + and \c, %r9d + or %r8d, %r9d +.endm + +.macro func4 a, b, c, d, e + func2 \a, \b, \c, \d, \e +.endm + +.macro mix a, b, c, d, e, const + rol $30, \b + add %r9d, \e + mov \a, %r8d + rol $5, %r8d + lea \const(\e, %r10d, 1), \e + add %r8d, \e +.endm + +.macro round1 a, b, c, d, e, index + load \index + func1 \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, 0x5a827999 +.endm + +.macro round1x a, b, c, d, e, index + shuffle \index + func1 \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, 0x5a827999 +.endm + +.macro round2 a, b, c, d, e, index + shuffle \index + func2 \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, 0x6ed9eba1 +.endm + +.macro round3 a, b, c, d, e, index + shuffle \index + func3 \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, 0x8f1bbcdc +.endm + +.macro round4 a, b, c, d, e, index + shuffle \index + func4 \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, 0xca62c1d6 +.endm + + // sha1block(SHA1_CTX, buf, len) +ENTRY(_libmd_sha1block_scalar) + push %rbp + push %rbx + push %r12 + push %r13 + push %r14 + push %r15 + push %rdi // rdi: SHA1_CTX + sub $64+8, %rsp // 64 bytes for round keys + // plus alignment + + mov %rdi, %rbp + // rsi: buf + and $~63, %rdx // rdx: length in blocks + lea (%rsi, %rdx, 1), %rdi // rdi: end pointer + mov (%rbp), %eax // c->h0 + mov 4(%rbp), %ebx // c->h1 + mov 8(%rbp), %ecx // c->h2 + mov 12(%rbp), %edx // c->h3 + mov 16(%rbp), %ebp // c->h4 + + cmp %rsi, %rdi // any data to process? + je .Lend + +.Lloop: mov %eax, %r11d + mov %ebx, %r12d + mov %ecx, %r13d + mov %edx, %r14d + mov %ebp, %r15d + + round1 %eax, %ebx, %ecx, %edx, %ebp, 0 + round1 %ebp, %eax, %ebx, %ecx, %edx, 1 + round1 %edx, %ebp, %eax, %ebx, %ecx, 2 + round1 %ecx, %edx, %ebp, %eax, %ebx, 3 + round1 %ebx, %ecx, %edx, %ebp, %eax, 4 + + round1 %eax, %ebx, %ecx, %edx, %ebp, 5 + round1 %ebp, %eax, %ebx, %ecx, %edx, 6 + round1 %edx, %ebp, %eax, %ebx, %ecx, 7 + round1 %ecx, %edx, %ebp, %eax, %ebx, 8 + round1 %ebx, %ecx, %edx, %ebp, %eax, 9 + + round1 %eax, %ebx, %ecx, %edx, %ebp, 10 + round1 %ebp, %eax, %ebx, %ecx, %edx, 11 + round1 %edx, %ebp, %eax, %ebx, %ecx, 12 + round1 %ecx, %edx, %ebp, %eax, %ebx, 13 + round1 %ebx, %ecx, %edx, %ebp, %eax, 14 + + round1 %eax, %ebx, %ecx, %edx, %ebp, 15 + round1x %ebp, %eax, %ebx, %ecx, %edx, 16 + round1x %edx, %ebp, %eax, %ebx, %ecx, 17 + round1x %ecx, %edx, %ebp, %eax, %ebx, 18 + round1x %ebx, %ecx, %edx, %ebp, %eax, 19 + + round2 %eax, %ebx, %ecx, %edx, %ebp, 20 + round2 %ebp, %eax, %ebx, %ecx, %edx, 21 + round2 %edx, %ebp, %eax, %ebx, %ecx, 22 + round2 %ecx, %edx, %ebp, %eax, %ebx, 23 + round2 %ebx, %ecx, %edx, %ebp, %eax, 24 + + round2 %eax, %ebx, %ecx, %edx, %ebp, 25 + round2 %ebp, %eax, %ebx, %ecx, %edx, 26 + round2 %edx, %ebp, %eax, %ebx, %ecx, 27 + round2 %ecx, %edx, %ebp, %eax, %ebx, 28 + round2 %ebx, %ecx, %edx, %ebp, %eax, 29 + + round2 %eax, %ebx, %ecx, %edx, %ebp, 30 + round2 %ebp, %eax, %ebx, %ecx, %edx, 31 + round2 %edx, %ebp, %eax, %ebx, %ecx, 32 + round2 %ecx, %edx, %ebp, %eax, %ebx, 33 + round2 %ebx, %ecx, %edx, %ebp, %eax, 34 + + round2 %eax, %ebx, %ecx, %edx, %ebp, 35 + round2 %ebp, %eax, %ebx, %ecx, %edx, 36 + round2 %edx, %ebp, %eax, %ebx, %ecx, 37 + round2 %ecx, %edx, %ebp, %eax, %ebx, 38 + round2 %ebx, %ecx, %edx, %ebp, %eax, 39 + + round3 %eax, %ebx, %ecx, %edx, %ebp, 40 + round3 %ebp, %eax, %ebx, %ecx, %edx, 41 + round3 %edx, %ebp, %eax, %ebx, %ecx, 42 + round3 %ecx, %edx, %ebp, %eax, %ebx, 43 + round3 %ebx, %ecx, %edx, %ebp, %eax, 44 + + round3 %eax, %ebx, %ecx, %edx, %ebp, 45 + round3 %ebp, %eax, %ebx, %ecx, %edx, 46 + round3 %edx, %ebp, %eax, %ebx, %ecx, 47 + round3 %ecx, %edx, %ebp, %eax, %ebx, 48 + round3 %ebx, %ecx, %edx, %ebp, %eax, 49 + + round3 %eax, %ebx, %ecx, %edx, %ebp, 50 + round3 %ebp, %eax, %ebx, %ecx, %edx, 51 + round3 %edx, %ebp, %eax, %ebx, %ecx, 52 + round3 %ecx, %edx, %ebp, %eax, %ebx, 53 + round3 %ebx, %ecx, %edx, %ebp, %eax, 54 + + round3 %eax, %ebx, %ecx, %edx, %ebp, 55 + round3 %ebp, %eax, %ebx, %ecx, %edx, 56 + round3 %edx, %ebp, %eax, %ebx, %ecx, 57 + round3 %ecx, %edx, %ebp, %eax, %ebx, 58 + round3 %ebx, %ecx, %edx, %ebp, %eax, 59 + + round4 %eax, %ebx, %ecx, %edx, %ebp, 60 + round4 %ebp, %eax, %ebx, %ecx, %edx, 61 + round4 %edx, %ebp, %eax, %ebx, %ecx, 62 + round4 %ecx, %edx, %ebp, %eax, %ebx, 63 + round4 %ebx, %ecx, %edx, %ebp, %eax, 64 + + round4 %eax, %ebx, %ecx, %edx, %ebp, 65 + round4 %ebp, %eax, %ebx, %ecx, %edx, 66 + round4 %edx, %ebp, %eax, %ebx, %ecx, 67 + round4 %ecx, %edx, %ebp, %eax, %ebx, 68 + round4 %ebx, %ecx, %edx, %ebp, %eax, 69 + + round4 %eax, %ebx, %ecx, %edx, %ebp, 70 + round4 %ebp, %eax, %ebx, %ecx, %edx, 71 + round4 %edx, %ebp, %eax, %ebx, %ecx, 72 + round4 %ecx, %edx, %ebp, %eax, %ebx, 73 + round4 %ebx, %ecx, %edx, %ebp, %eax, 74 + + round4 %eax, %ebx, %ecx, %edx, %ebp, 75 + round4 %ebp, %eax, %ebx, %ecx, %edx, 76 + round4 %edx, %ebp, %eax, %ebx, %ecx, 77 + round4 %ecx, %edx, %ebp, %eax, %ebx, 78 + round4 %ebx, %ecx, %edx, %ebp, %eax, 79 + + add %r11d, %eax + add %r12d, %ebx + add %r13d, %ecx + add %r14d, %edx + add %r15d, %ebp + + add $64, %rsi + cmp %rdi, %rsi + jb .Lloop + +.Lend: add $64+8, %rsp + pop %rdi // SHA1_CTX + mov %eax, (%rdi) + mov %ebx, 4(%rdi) + mov %ecx, 8(%rdi) + mov %edx, 12(%rdi) + mov %ebp, 16(%rdi) + + pop %r15 + pop %r14 + pop %r13 + pop %r12 + pop %rbx + pop %rbp + ret +END(_libmd_sha1block_scalar) + +/* + * This is the implementation using AVX2, BMI1 and BMI2. It is based on: + * "SHA-1 implementation with Intel(R) AVX2 instruction set extensions" + * From http://software.intel.com/en-us/articles + * (look for improving-the-performance-of-the-secure-hash-algorithm-1) + * This implementation is 2x unrolled, and interleaves vector instructions, + * used to precompute W, with scalar computation of current round + * for optimal scheduling. + */ + + /* trivial helper macros */ +.macro update_hash a, tb, c, d, e + add (%r9), \a + mov \a, (%r9) + add 4(%r9), \tb + mov \tb, 4(%r9) + add 8(%r9), \c + mov \c, 8(%r9) + add 12(%r9), \d + mov \d, 12(%r9) + add 16(%r9), \e + mov \e, 16(%r9) +.endm + + /* help macros for recalc, which does precomputations */ +.macro precalc0 offset + vmovdqu \offset(%r10), %xmm0 +.endm + +.macro precalc1 offset + vinserti128 $1, \offset(%r13), %ymm0, %ymm0 +.endm + +.macro precalc2 yreg + vpshufb %ymm10, %ymm0, \yreg +.endm + +.macro precalc4 yreg, k_offset + vpaddd \k_offset(%r8), \yreg, %ymm0 +.endm + +.macro precalc7 offset + vmovdqu %ymm0, (\offset)*2(%r14) +.endm + +/* + * Message scheduling pre-compute for rounds 0-15 + * r13 is a pointer to the even 64-byte block + * r10 is a pointer to the odd 64-byte block + * r14 is a pointer to the temp buffer + * xmm0 is used as a temp register + * yreg is clobbered as part of the computation + * offset chooses a 16 byte chunk within a block + * r8 is a pointer to the constants block + * k_offset chooses K constants relevant to this round + * xmm10 holds the swap mask + */ +.macro precalc00_15 offset, yreg + precalc0 \offset + precalc1 \offset + precalc2 \yreg + precalc4 \yreg, 0 + precalc7 \offset +.endm + + /* helper macros for precalc16_31 */ +.macro precalc16 reg_sub16, reg_sub12, reg_sub4, reg + vpalignr $8, \reg_sub16, \reg_sub12, \reg // w[i - 14] + vpsrldq $4, \reg_sub4, %ymm0 // w[i - 3] +.endm + +.macro precalc17 reg_sub16, reg_sub8, reg + vpxor \reg_sub8, \reg, \reg + vpxor \reg_sub16, %ymm0, %ymm0 +.endm + +.macro precalc18 reg + vpxor %ymm0, \reg, \reg + vpslldq $12, \reg, %ymm9 +.endm + +.macro precalc19 reg + vpslld $1, \reg, %ymm0 + vpsrld $31, \reg, \reg + .endm + +.macro precalc20 reg + vpor \reg, %ymm0, %ymm0 + vpslld $2, %ymm9, \reg +.endm + +.macro precalc21 reg + vpsrld $30, %ymm9, %ymm9 + vpxor \reg, %ymm0, %ymm0 +.endm + +.macro precalc23 reg, k_offset, offset + vpxor %ymm9, %ymm0, \reg + vpaddd \k_offset(%r8), \reg, %ymm0 + vmovdqu %ymm0, (\offset)(%r14) +.endm + +/* + * Message scheduling pre-compute for rounds 16-31 + * calculating last 32 w[i] values in 8 XMM registers + * pre-calculate K+w[i] values and store to mem + * for later load by ALU add instruction. + * "brute force" vectorization for rounds 16-31 only + * due to w[i]->w[i-3] dependency. + + clobbers 5 input ymm registers REG_SUB* + * uses xmm0 and xmm9 as temp registers + * As always, r8 is a pointer to constants block + * and r14 is a pointer to temp buffer + */ +.macro precalc16_31 reg, reg_sub4, reg_sub8, reg_sub12, reg_sub16, k_offset, offset + precalc16 \reg_sub16, \reg_sub12, \reg_sub4, \reg + precalc17 \reg_sub16, \reg_sub8, \reg + precalc18 \reg + precalc19 \reg + precalc20 \reg + precalc21 \reg + precalc23 \reg, \k_offset, \offset +.endm + + /* helper macros for precalc_32_79 */ +.macro precalc32 reg_sub8, reg_sub4 + vpalignr $8, \reg_sub8, \reg_sub4, %ymm0 +.endm + +.macro precalc33 reg_sub28, reg + vpxor \reg_sub28, \reg, \reg +.endm + +.macro precalc34 reg_sub16 + vpxor \reg_sub16, %ymm0, %ymm0 +.endm + +.macro precalc35 reg + vpxor %ymm0, \reg, \reg +.endm + +.macro precalc36 reg + vpslld $2, \reg, %ymm0 +.endm + +.macro precalc37 reg + vpsrld $30, \reg, \reg + vpor \reg, %ymm0, \reg +.endm + +.macro precalc39 reg, k_offset, offset + vpaddd \k_offset(%r8), \reg, %ymm0 + vmovdqu %ymm0, \offset(%r14) +.endm + +.macro precalc32_79 reg, reg_sub4, reg_sub8, reg_sub16, reg_sub28, k_offset, offset + precalc32 \reg_sub8, \reg_sub4 + precalc33 \reg_sub28, \reg + precalc34 \reg_sub16 + precalc35 \reg + precalc36 \reg + precalc37 \reg + precalc39 \reg, \k_offset, \offset +.endm + +.macro precalc + precalc00_15 0x00, %ymm15 + precalc00_15 0x10, %ymm14 + precalc00_15 0x20, %ymm13 + precalc00_15 0x30, %ymm12 + precalc16_31 %ymm8, %ymm12, %ymm13, %ymm14, %ymm15, 0x00, 0x080 + precalc16_31 %ymm7, %ymm8, %ymm12, %ymm13, %ymm14, 0x20, 0x0a0 + precalc16_31 %ymm5, %ymm7, %ymm8, %ymm12, %ymm13, 0x20, 0x0c0 + precalc16_31 %ymm3, %ymm5, %ymm7, %ymm8, %ymm12, 0x20, 0x0e0 + precalc32_79 %ymm15, %ymm3, %ymm5, %ymm8, %ymm14, 0x20, 0x100 + precalc32_79 %ymm14, %ymm15, %ymm3, %ymm7, %ymm13, 0x20, 0x120 + precalc32_79 %ymm13, %ymm14, %ymm15, %ymm5, %ymm12, 0x40, 0x140 + precalc32_79 %ymm12, %ymm13, %ymm14, %ymm3, %ymm8, 0x40, 0x160 + precalc32_79 %ymm8, %ymm12, %ymm13, %ymm15, %ymm7, 0x40, 0x180 + precalc32_79 %ymm7, %ymm8, %ymm12, %ymm14, %ymm5, 0x40, 0x1a0 + precalc32_79 %ymm5, %ymm7, %ymm8, %ymm13, %ymm3, 0x40, 0x1c0 + precalc32_79 %ymm3, %ymm5, %ymm7, %ymm12, %ymm15, 0x60, 0x1e0 + precalc32_79 %ymm15, %ymm3, %ymm5, %ymm8, %ymm14, 0x60, 0x200 + precalc32_79 %ymm14, %ymm15, %ymm3, %ymm7, %ymm13, 0x60, 0x220 + precalc32_79 %ymm13, %ymm14, %ymm15, %ymm5, %ymm12, 0x60, 0x240 + precalc32_79 %ymm12, %ymm13, %ymm14, %ymm3, %ymm8, 0x60, 0x260 +.endm + +/* + * Macros calculating individual rounds have general form + * calc_round_pre + precalc_round + calc_round_post + * calc_round_{pre,post} macros follow + */ +.macro calc_f1_pre offset, reg_a, reg_b, reg_c, reg_e + add \offset(%r15), \reg_e + andn \reg_c, \reg_a, %ebp + add \reg_b, \reg_e // add F from the previous round + rorx $0x1b, \reg_a, %r12d + rorx $2, \reg_a, \reg_b // for the next round +.endm + +/* + * Calculate F for the next round + */ +.macro calc_f1_post reg_a, reg_b, reg_e + and \reg_b, \reg_a // b & c + xor %ebp, \reg_a // F1 = (b&c) ^ (~b&d) + add %r12d, \reg_e +.endm + +/* + * Registers are cyclically rotated: + * edx -> eax -> edi -> esi -> ebx -> ecx + */ +.macro calc0 + mov %esi, %ebx // precalculate first round + rorx $2, %esi, %esi + andn %eax, %ebx, %ebp + and %edi, %ebx + xor %ebp, %ebx + calc_f1_pre 0x0, %ecx, %ebx, %edi, %edx + precalc0 0x80 + calc_f1_post %ecx, %esi, %edx +.endm + +.macro calc1 + calc_f1_pre 0x4, %edx, %ecx, %esi, %eax + precalc1 0x80 + calc_f1_post %edx, %ebx, %eax +.endm + +.macro calc2 + calc_f1_pre 0x8, %eax, %edx, %ebx, %edi + precalc2 %ymm15 + calc_f1_post %eax, %ecx, %edi +.endm + +.macro calc3 + calc_f1_pre 0xc, %edi, %eax, %ecx, %esi + calc_f1_post %edi, %edx, %esi +.endm + +.macro calc4 + calc_f1_pre 0x20, %esi, %edi, %edx, %ebx + precalc4 %ymm15, 0x0 + calc_f1_post %esi, %eax, %ebx +.endm + +.macro calc5 + calc_f1_pre 0x24, %ebx, %esi, %eax, %ecx + calc_f1_post %ebx, %edi, %ecx +.endm + +.macro calc6 + calc_f1_pre 0x28, %ecx, %ebx, %edi, %edx + calc_f1_post %ecx, %esi, %edx +.endm + +.macro calc7 + calc_f1_pre 0x2c, %edx, %ecx, %esi, %eax + precalc7 0x0 + calc_f1_post %edx, %ebx, %eax +.endm + +.macro calc8 + calc_f1_pre 0x40, %eax, %edx, %ebx, %edi + precalc0 0x90 + calc_f1_post %eax, %ecx, %edi +.endm + +.macro calc9 + calc_f1_pre 0x44, %edi, %eax, %ecx, %esi + precalc1 0x90 + calc_f1_post %edi, %edx, %esi +.endm + +.macro calc10 + calc_f1_pre 0x48, %esi, %edi, %edx, %ebx + precalc2 %ymm14 + calc_f1_post %esi, %eax, %ebx +.endm + +.macro calc11 + calc_f1_pre 0x4c, %ebx, %esi, %eax, %ecx + calc_f1_post %ebx, %edi, %ecx +.endm + +.macro calc12 + calc_f1_pre 0x60, %ecx, %ebx, %edi, %edx + precalc4 %ymm14, 0 + calc_f1_post %ecx, %esi, %edx +.endm + +.macro calc13 + calc_f1_pre 0x64, %edx, %ecx, %esi, %eax + calc_f1_post %edx, %ebx, %eax +.endm + +.macro calc14 + calc_f1_pre 0x68, %eax, %edx, %ebx, %edi + calc_f1_post %eax, %ecx, %edi +.endm + +.macro calc15 + calc_f1_pre 0x6c, %edi, %eax, %ecx, %esi + precalc7 0x10 + calc_f1_post %edi, %edx, %esi +.endm + +.macro calc16 + calc_f1_pre 0x80, %esi, %edi, %edx, %ebx + precalc0 0xa0 + calc_f1_post %esi, %eax, %ebx +.endm + +.macro calc17 + calc_f1_pre 0x84, %ebx, %esi, %eax, %ecx + precalc1 0xa0 + calc_f1_post %ebx, %edi, %ecx +.endm + +.macro calc18 + calc_f1_pre 0x88, %ecx, %ebx, %edi, %edx + precalc2 %ymm13 + calc_f1_post %ecx, %esi, %edx +.endm + +.macro calc_f2_pre offset, reg_a, reg_b, reg_e + add \offset(%r15), \reg_e + add \reg_b, \reg_e // add F from the previous round + rorx $0x1b, \reg_a, %r12d + rorx $2, \reg_a, \reg_b // for next round +.endm + +.macro calc_f2_post reg_a, reg_b, reg_c, reg_e + xor \reg_b, \reg_a + add %r12d, \reg_e + xor \reg_c, \reg_a +.endm + +.macro calc19 + calc_f2_pre 0x8c, %edx, %ecx, %eax + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc20 + calc_f2_pre 0xa0, %eax, %edx, %edi + precalc4 %ymm13, 0x0 + calc_f2_post %eax, %ecx, %ebx, %edi +.endm + +.macro calc21 + calc_f2_pre 0xa4, %edi, %eax, %esi + calc_f2_post %edi, %edx, %ecx, %esi +.endm + +.macro calc22 + calc_f2_pre 0xa8, %esi, %edi, %ebx + calc_f2_post %esi, %eax, %edx, %ebx +.endm + +.macro calc23 + calc_f2_pre 0xac, %ebx, %esi, %ecx + precalc7 0x20 + calc_f2_post %ebx, %edi, %eax, %ecx +.endm + +.macro calc24 + calc_f2_pre 0xc0, %ecx, %ebx, %edx + precalc0 0xb0 + calc_f2_post %ecx, %esi, %edi, %edx +.endm + +.macro calc25 + calc_f2_pre 0xc4, %edx, %ecx, %eax + precalc1 0xb0 + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc26 + calc_f2_pre 0xc8, %eax, %edx, %edi + precalc2 %ymm12 + calc_f2_post %eax, %ecx, %ebx, %edi +.endm + +.macro calc27 + calc_f2_pre 0xcc, %edi, %eax, %esi + calc_f2_post %edi, %edx, %ecx, %esi +.endm + +.macro calc28 + calc_f2_pre 0xe0, %esi, %edi, %ebx + precalc4 %ymm12, 0x0 + calc_f2_post %esi, %eax, %edx, %ebx +.endm + +.macro calc29 + calc_f2_pre 0xe4, %ebx, %esi, %ecx + calc_f2_post %ebx, %edi, %eax, %ecx +.endm + +.macro calc30 + calc_f2_pre 0xe8, %ecx, %ebx, %edx + calc_f2_post %ecx, %esi, %edi, %edx +.endm + +.macro calc31 + calc_f2_pre 0xec, %edx, %ecx, %eax + precalc7 0x30 + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc32 + calc_f2_pre 0x100, %eax, %edx, %edi + precalc16 %ymm15, %ymm14, %ymm12, %ymm8 + calc_f2_post %eax, %ecx, %ebx, %edi +.endm + +.macro calc33 + calc_f2_pre 0x104, %edi, %eax, %esi + precalc17 %ymm15, %ymm13, %ymm8 + calc_f2_post %edi, %edx, %ecx, %esi +.endm + +.macro calc34 + calc_f2_pre 0x108, %esi, %edi, %ebx + precalc18 %ymm8 + calc_f2_post %esi, %eax, %edx, %ebx +.endm + +.macro calc35 + calc_f2_pre 0x10c, %ebx, %esi, %ecx + precalc19 %ymm8 + calc_f2_post %ebx, %edi, %eax, %ecx +.endm + +.macro calc36 + calc_f2_pre 0x120, %ecx, %ebx, %edx + precalc20 %ymm8 + calc_f2_post %ecx, %esi, %edi, %edx +.endm + +.macro calc37 + calc_f2_pre 0x124, %edx, %ecx, %eax + precalc21 %ymm8 + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc38 + calc_f2_pre 0x128, %eax, %edx, %edi + calc_f2_post %eax, %ecx, %ebx, %edi +.endm + +.macro calc_f3_pre offset, reg_e + add \offset(%r15), \reg_e +.endm + +.macro calc_f3_post reg_a, reg_b, reg_c, reg_e, reg_tb + add \reg_tb, \reg_e // add F from the previous round + mov \reg_b, %ebp + or \reg_a, %ebp + rorx $0x1b, \reg_a, %r12d + rorx $2, \reg_a, \reg_tb + and \reg_c, %ebp // calculate F for the next round + and \reg_b, \reg_a + or %ebp, \reg_a + add %r12d, \reg_e +.endm + +.macro calc39 + calc_f3_pre 0x12c, %esi + precalc23 %ymm8, 0x0, 0x80 + calc_f3_post %edi, %edx, %ecx, %esi, %eax +.endm + +.macro calc40 + calc_f3_pre 0x140, %ebx + precalc16 %ymm14, %ymm13, %ymm8, %ymm7 + calc_f3_post %esi, %eax, %edx, %ebx, %edi +.endm + +.macro calc41 + calc_f3_pre 0x144, %ecx + precalc17 %ymm14, %ymm12, %ymm7 + calc_f3_post %ebx, %edi, %eax, %ecx, %esi +.endm + +.macro calc42 + calc_f3_pre 0x148, %edx + precalc18 %ymm7 + calc_f3_post %ecx, %esi, %edi, %edx, %ebx +.endm + +.macro calc43 + calc_f3_pre 0x14c, %eax + precalc19 %ymm7 + calc_f3_post %edx, %ebx, %esi, %eax, %ecx +.endm + +.macro calc44 + calc_f3_pre 0x160, %edi + precalc20 %ymm7 + calc_f3_post %eax, %ecx, %ebx, %edi, %edx +.endm + +.macro calc45 + calc_f3_pre 0x164, %esi + precalc21 %ymm7 + calc_f3_post %edi, %edx, %ecx, %esi, %eax +.endm + +.macro calc46 + calc_f3_pre 0x168, %ebx + calc_f3_post %esi, %eax, %edx, %ebx, %edi +.endm + +.macro calc47 + calc_f3_pre 0x16c, %ecx + vpxor %ymm9, %ymm0, %ymm7 + vpaddd 0x20(%r8), %ymm7, %ymm0 + vmovdqu %ymm0, 0xa0(%r14) + calc_f3_post %ebx, %edi, %eax, %ecx, %esi +.endm + +.macro calc48 + calc_f3_pre 0x180, %edx + precalc16 %ymm13, %ymm12, %ymm7, %ymm5 + calc_f3_post %ecx, %esi, %edi, %edx, %ebx +.endm + +.macro calc49 + calc_f3_pre 0x184, %eax + precalc17 %ymm13, %ymm8, %ymm5 + calc_f3_post %edx, %ebx, %esi, %eax, %ecx +.endm + +.macro calc50 + calc_f3_pre 0x188, %edi + precalc18 %ymm5 + calc_f3_post %eax, %ecx, %ebx, %edi, %edx +.endm + +.macro calc51 + calc_f3_pre 0x18c, %esi + precalc19 %ymm5 + calc_f3_post %edi, %edx, %ecx, %esi, %eax +.endm + +.macro calc52 + calc_f3_pre 0x1a0, %ebx + precalc20 %ymm5 + calc_f3_post %esi, %eax, %edx, %ebx, %edi +.endm + +.macro calc53 + calc_f3_pre 0x1a4, %ecx + precalc21 %ymm5 + calc_f3_post %ebx, %edi, %eax, %ecx, %esi +.endm + +.macro calc54 + calc_f3_pre 0x1a8, %edx + calc_f3_post %ecx, %esi, %edi, %edx, %ebx +.endm + +.macro calc55 + calc_f3_pre 0x1ac, %eax + precalc23 %ymm5, 0x20, 0xc0 + calc_f3_post %edx, %ebx, %esi, %eax, %ecx +.endm + +.macro calc56 + calc_f3_pre 0x1c0, %edi + precalc16 %ymm12, %ymm8, %ymm5, %ymm3 + calc_f3_post %eax, %ecx, %ebx, %edi, %edx +.endm + +.macro calc57 + calc_f3_pre 0x1c4, %esi + precalc17 %ymm12, %ymm7, %ymm3 + calc_f3_post %edi, %edx, %ecx, %esi, %eax +.endm + +.macro calc58 + calc_f3_pre 0x1c8, %ebx + precalc18 %ymm3 + calc_f3_post %esi, %eax, %edx, %ebx, %edi +.endm + +.macro calc59 + calc_f2_pre 0x1cc, %ebx, %esi, %ecx + precalc19 %ymm3 + calc_f2_post %ebx, %edi, %eax, %ecx +.endm + +.macro calc60 + calc_f2_pre 0x1e0, %ecx, %ebx, %edx + precalc20 %ymm3 + calc_f2_post %ecx, %esi, %edi, %edx +.endm + +.macro calc61 + calc_f2_pre 0x1e4, %edx, %ecx, %eax + precalc21 %ymm3 + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc62 + calc_f2_pre 0x1e8, %eax, %edx, %edi + calc_f2_post %eax, %ecx, %ebx, %edi +.endm + +.macro calc63 + calc_f2_pre 0x1ec, %edi, %eax, %esi + precalc23 %ymm3, 0x20, 0xe0 + calc_f2_post %edi, %edx, %ecx, %esi +.endm + +.macro calc64 + calc_f2_pre 0x200, %esi, %edi, %ebx + precalc32 %ymm5, %ymm3 + calc_f2_post %esi, %eax, %edx, %ebx +.endm + +.macro calc65 + calc_f2_pre 0x204, %ebx, %esi, %ecx + precalc33 %ymm14, %ymm15 + calc_f2_post %ebx, %edi, %eax, %ecx +.endm + +.macro calc66 + calc_f2_pre 0x208, %ecx, %ebx, %edx + precalc34 %ymm8 + calc_f2_post %ecx, %esi, %edi, %edx +.endm + +.macro calc67 + calc_f2_pre 0x20c, %edx, %ecx, %eax + precalc35 %ymm15 + calc_f2_post %edx, %ebx, %esi, %eax +.endm + +.macro calc68 + calc_f2_pre 0x220, %eax, %edx, %edi + precalc36 %ymm15 + calc_f2_post %eax, %ecx, %ebx, %edi *** 1002 LINES SKIPPED *** From nobody Wed May 14 23:40:39 2025 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 4ZyVFz65b0z5w0NR; Wed, 14 May 2025 23:40:39 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVFz4pb7z3XlQ; Wed, 14 May 2025 23:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266039; 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=y7TrtBzvsaamWu0HLcVgzNYYy+1Pj7qpc7MK7bgnbFU=; b=r5pYYR7v5KADtKe7eXQVVRL+2l13MpE7ZEk+bQgaPDG/SwZ79IFfjKgw3jv2ePZW9uqQV+ WhbZ3SDZ21T3oO5oLjInQpuzbcaCa1r/1N/Cv3psuEDVx3sFR/k2PmIQonbMqMBc/aoxTN oIixGhLqqorBuvDJj5TacjkcSslNJBrLzLBiN/KLNarbHVjuqdrnIQONX2eNqCUEV5lPrF GbkBEQDkYXcbv6LOyn4B8B0wMkkxFGNkM1JVZ4xwfEimK8xZqj7Ls+1i2w4iNkS9z027SF cEW90PCG8jYSqW0RLWXTJGnKF2FegLMP+tzP/Lgq7nlmOiCgbhg1LsHPou7dlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266039; 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=y7TrtBzvsaamWu0HLcVgzNYYy+1Pj7qpc7MK7bgnbFU=; b=XlM2vNCUQSgV58N/OgOqAhkad4GtXbc5fC2l6AxyOSNMSvyL1nxbc/STdwXSH1uxcT3Cll +o6NiYK9gfj1YN6+wu/pUZPAIuS+9hE8CNGY6P6SLphUcqTVABJz7bSXSScZ/4h/uNNHJ/ 1SYLjbl7h08iNWoLfc2McwLaEW6RScxiKHtAiy2ad+w7UfgBq7zecpiTcjN7eiXF0WwQcJ w59E/wkJXQ5zVlGP31QKtpInSLNiSDCtztH6JBQOoFt0z/Nw2jDX1iyVDDjJl7Gip1RDqC 8KwsiVYYNF/vT+VXgy6BL4B1hyFiQWuoLdNrJz6aecZT/yir41Y2oU9nTZ6KJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747266039; a=rsa-sha256; cv=none; b=LKii6kSLbMQHi0pSF/Pp460YTdL5vbwh9iZFUi/DtbTsoBbWDyjJKh9hZMm1bz2HqmXsab OoeQV5xNivYpDWheSEfUJsz6MIU86E+UK1CmRjbGxpgXmg/Tqj6yCMaif+vA9q9lKxE/oD 0ouzExfGjtpxmqACi6YGfW4cBrQTnb4wf9HKZV71pvpO628NAzudVsPQjFCXK0+x+0kOsn Um2qcdPakToN3gyAZ6gHXeLNjMpu3RSKb4gP+vvKSEvrXZB2SDFxutImPWorSQKJtMCrCc kXjo3tV3BQLbD6Sh4Ddbzjyj/V+Cd3IfWOkS7udb3jeSFgDm4dtowsADD7kn6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVFz4K7YztDC; Wed, 14 May 2025 23:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENedQR000203; Wed, 14 May 2025 23:40:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENedfA000200; Wed, 14 May 2025 23:40:39 GMT (envelope-from git) Date: Wed, 14 May 2025 23:40:39 GMT Message-Id: <202505142340.54ENedfA000200@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Clausecker Subject: git: f6210541f9e3 - main - lib/libmd: add optimised SHA1 implementations for aarch64 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6210541f9e3c6cfda321e0ad98f277fb98a625b Auto-Submitted: auto-generated The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=f6210541f9e3c6cfda321e0ad98f277fb98a625b commit f6210541f9e3c6cfda321e0ad98f277fb98a625b Author: Robert Clausecker AuthorDate: 2025-05-14 19:18:12 +0000 Commit: Robert Clausecker CommitDate: 2025-05-14 23:39:58 +0000 lib/libmd: add optimised SHA1 implementations for aarch64 This provides a scalar implementation and one using the SHA1 instruction set extensions. For the scalar implementation, the w array is kept in registers, speeding up the whole operations. For a 10 GiB file on my Windows 2023 Dev Kit (ARM Cortex A78C / ARM Cortex X1C): Performance core: pre 43.1s (238 MB/s) generic 41.3s (247 MB/s) scalar 35.0s (293 MB/s) sha1 12.8s (800 MB/s) Efficiency core: pre 54.2s (189 MB/s) generic 55.9s (183 MB/s) scalar 43.0s (238 MB/s) sha1 16.2s (632 MB/s) Reviewed by: getz Differential Revision: https://reviews.freebsd.org/D45444 --- lib/libmd/aarch64/sha1block.S | 490 +++++++++++++++++++++++++++++++++++++++ lib/libmd/aarch64/sha1dispatch.c | 24 ++ 2 files changed, 514 insertions(+) diff --git a/lib/libmd/aarch64/sha1block.S b/lib/libmd/aarch64/sha1block.S new file mode 100644 index 000000000000..56a0297efadd --- /dev/null +++ b/lib/libmd/aarch64/sha1block.S @@ -0,0 +1,490 @@ +/*- + * Copyright (c) 2024 Robert Clausecker + * + * SPDX-License-Identifier: BSD-2-Clause + * + * sha1block_sha1 implementation based on sha1-arm.c, + * written and placed in public domain by Jeffrey Walton + * based on code from ARM, and by Johannes Schneiders, Skip + * Hovsmith and Barry O'Rourke for the mbedTLS project. + */ + +#include + +/* + * Scalar SHA1 implementation. + * + * Due to the ample register file available on AArch64, the w array is + * kept entirely in registers. The saved a-e variables are instead kept + * in memory as we don't have that much memory. + */ + + // sha1block(SHA1_CTX, buf, len) +ENTRY(_libmd_sha1block_scalar) +ctx .req x0 +buf .req x1 +len .req x2 +w .req sp +a .req w3 +b .req w4 +c .req w5 +d .req w6 +e .req w7 +k .req w8 +f .req w9 +tmp .req w10 +w_0 .req w11 +w_1 .req w12 +w_2 .req w13 +w_3 .req w14 +w_4 .req w15 +w_5 .req w16 +w_6 .req w17 +// w18 is the platform register +w_7 .req w19 +w_8 .req w20 +w_9 .req w21 +w_10 .req w22 +w_11 .req w23 +w_12 .req w24 +w_13 .req w25 +w_14 .req w26 +w_15 .req w27 + +.macro shuffle w_i, w_i3, w_i8, w_i14 + eor \w_i, \w_i, \w_i3 + eor tmp, \w_i8, \w_i14 + eor \w_i, \w_i, tmp // w[i-16] ^ w[i-14] ^ w[i-8] ^ w[i-3] + ror \w_i, \w_i, #31 // w[i] = ... ror #31 +.endm + +.macro func1 a, b, c, d, e + and f, \c, \b + bic tmp, \d, \b + orr f, f, tmp +.endm + +.macro func2 a, b, c, d, e + eor f, \b, \c + eor f, f, \d +.endm + +.macro func3 a, b, c, d, e + eor tmp, \b, \c + and f, \b, \c + and tmp, tmp, \d + orr f, f, tmp +.endm + +.macro func4 a, b, c, d, e + func2 \a, \b, \c, \d, \e +.endm + +.macro mix a, b, c, d, e, w_i + ror \b, \b, #2 + ror tmp, \a, #27 + add \e, \e, \w_i + add tmp, tmp, k + add \e, \e, f + add \e, \e, tmp // (a ror 27) + e + f + k + w[i] +.endm + +.macro round1 a, b, c, d, e, w_i + func1 \a, \b, \c, \d, \e + rev \w_i, \w_i + mix \a, \b, \c, \d, \e, \w_i +.endm + +.macro round func, a, b, c, d, e, w_i, w_i3, w_i8, w_i14 + shuffle \w_i, \w_i3, \w_i8, \w_i14 + \func \a, \b, \c, \d, \e + mix \a, \b, \c, \d, \e, \w_i +.endm + +.macro round1x a, b, c, d, e, w_i, w_i3, w_i8, w_i14 + round func1, \a, \b, \c, \d, \e, \w_i, \w_i3, \w_i8, \w_i14 +.endm + +.macro round2 a, b, c, d, e, w_i, w_i3, w_i8, w_i14 + round func2, \a, \b, \c, \d, \e, \w_i, \w_i3, \w_i8, \w_i14 +.endm + +.macro round3 a, b, c, d, e, w_i, w_i3, w_i8, w_i14 + round func3, \a, \b, \c, \d, \e, \w_i, \w_i3, \w_i8, \w_i14 +.endm + +.macro round4 a, b, c, d, e, w_i, w_i3, w_i8, w_i14 + round func4, \a, \b, \c, \d, \e, \w_i, \w_i3, \w_i8, \w_i14 +.endm + + ands len, len, #~63 // take length in multiples of block length + beq 1f // bail out if input empty + + sub sp, sp, #24+9*8 // allocate stack space + str x19, [sp, #24+0*8] + stp x20, x21, [sp, #24+1*8] + stp x22, x23, [sp, #24+3*8] + stp x24, x25, [sp, #24+5*8] + stp x26, x27, [sp, #24+7*8] + + ldp a, b, [ctx, #0] // load SHA1 state from context + ldp c, d, [ctx, #8] + ldr e, [ctx, #16] + +0: stp a, b, [sp, #0] // save old SHA1 state + stp c, d, [sp, #8] + str e, [sp, #16] + + movz k, #0x7999 // round constant 1 + movk k, #0x5a82, lsl #16 + + ldp w_0, w_1, [buf, #0*4] + round1 a, b, c, d, e, w_0 + round1 e, a, b, c, d, w_1 + + ldp w_2, w_3, [buf, #2*4] + round1 d, e, a, b, c, w_2 + round1 c, d, e, a, b, w_3 + + ldp w_4, w_5, [buf, #4*4] + round1 b, c, d, e, a, w_4 + round1 a, b, c, d, e, w_5 + + ldp w_6, w_7, [buf, #6*4] + round1 e, a, b, c, d, w_6 + round1 d, e, a, b, c, w_7 + + ldp w_8, w_9, [buf, #8*4] + round1 c, d, e, a, b, w_8 + round1 b, c, d, e, a, w_9 + + ldp w_10, w_11, [buf, #10*4] + round1 a, b, c, d, e, w_10 + round1 e, a, b, c, d, w_11 + + ldp w_12, w_13, [buf, #12*4] + round1 d, e, a, b, c, w_12 + round1 c, d, e, a, b, w_13 + + ldp w_14, w_15, [buf, #14*4] + round1 b, c, d, e, a, w_14 + round1 a, b, c, d, e, w_15 + + round1x e, a, b, c, d, w_0, w_13, w_8, w_2 + round1x d, e, a, b, c, w_1, w_14, w_9, w_3 + round1x c, d, e, a, b, w_2, w_15, w_10, w_4 + round1x b, c, d, e, a, w_3, w_0, w_11, w_5 + + movz k, #0xeba1 // round constant 2 + movk k, #0x6ed9, lsl #16 + + round2 a, b, c, d, e, w_4, w_1, w_12, w_6 + round2 e, a, b, c, d, w_5, w_2, w_13, w_7 + round2 d, e, a, b, c, w_6, w_3, w_14, w_8 + round2 c, d, e, a, b, w_7, w_4, w_15, w_9 + round2 b, c, d, e, a, w_8, w_5, w_0, w_10 + + round2 a, b, c, d, e, w_9, w_6, w_1, w_11 + round2 e, a, b, c, d, w_10, w_7, w_2, w_12 + round2 d, e, a, b, c, w_11, w_8, w_3, w_13 + round2 c, d, e, a, b, w_12, w_9, w_4, w_14 + round2 b, c, d, e, a, w_13, w_10, w_5, w_15 + + round2 a, b, c, d, e, w_14, w_11, w_6, w_0 + round2 e, a, b, c, d, w_15, w_12, w_7, w_1 + round2 d, e, a, b, c, w_0, w_13, w_8, w_2 + round2 c, d, e, a, b, w_1, w_14, w_9, w_3 + round2 b, c, d, e, a, w_2, w_15, w_10, w_4 + + round2 a, b, c, d, e, w_3, w_0, w_11, w_5 + round2 e, a, b, c, d, w_4, w_1, w_12, w_6 + round2 d, e, a, b, c, w_5, w_2, w_13, w_7 + round2 c, d, e, a, b, w_6, w_3, w_14, w_8 + round2 b, c, d, e, a, w_7, w_4, w_15, w_9 + + movz k, #0xbcdc // round constant 3 + movk k, #0x8f1b, lsl #16 + + round3 a, b, c, d, e, w_8, w_5, w_0, w_10 + round3 e, a, b, c, d, w_9, w_6, w_1, w_11 + round3 d, e, a, b, c, w_10, w_7, w_2, w_12 + round3 c, d, e, a, b, w_11, w_8, w_3, w_13 + round3 b, c, d, e, a, w_12, w_9, w_4, w_14 + + round3 a, b, c, d, e, w_13, w_10, w_5, w_15 + round3 e, a, b, c, d, w_14, w_11, w_6, w_0 + round3 d, e, a, b, c, w_15, w_12, w_7, w_1 + round3 c, d, e, a, b, w_0, w_13, w_8, w_2 + round3 b, c, d, e, a, w_1, w_14, w_9, w_3 + + round3 a, b, c, d, e, w_2, w_15, w_10, w_4 + round3 e, a, b, c, d, w_3, w_0, w_11, w_5 + round3 d, e, a, b, c, w_4, w_1, w_12, w_6 + round3 c, d, e, a, b, w_5, w_2, w_13, w_7 + round3 b, c, d, e, a, w_6, w_3, w_14, w_8 + + round3 a, b, c, d, e, w_7, w_4, w_15, w_9 + round3 e, a, b, c, d, w_8, w_5, w_0, w_10 + round3 d, e, a, b, c, w_9, w_6, w_1, w_11 + round3 c, d, e, a, b, w_10, w_7, w_2, w_12 + round3 b, c, d, e, a, w_11, w_8, w_3, w_13 + + movz k, #0xc1d6 // round constant 4 + movk k, #0xca62, lsl #16 + + round4 a, b, c, d, e, w_12, w_9, w_4, w_14 + round4 e, a, b, c, d, w_13, w_10, w_5, w_15 + round4 d, e, a, b, c, w_14, w_11, w_6, w_0 + round4 c, d, e, a, b, w_15, w_12, w_7, w_1 + round4 b, c, d, e, a, w_0, w_13, w_8, w_2 + + round4 a, b, c, d, e, w_1, w_14, w_9, w_3 + round4 e, a, b, c, d, w_2, w_15, w_10, w_4 + round4 d, e, a, b, c, w_3, w_0, w_11, w_5 + round4 c, d, e, a, b, w_4, w_1, w_12, w_6 + round4 b, c, d, e, a, w_5, w_2, w_13, w_7 + + round4 a, b, c, d, e, w_6, w_3, w_14, w_8 + round4 e, a, b, c, d, w_7, w_4, w_15, w_9 + round4 d, e, a, b, c, w_8, w_5, w_0, w_10 + round4 c, d, e, a, b, w_9, w_6, w_1, w_11 + round4 b, c, d, e, a, w_10, w_7, w_2, w_12 + + round4 a, b, c, d, e, w_11, w_8, w_3, w_13 + round4 e, a, b, c, d, w_12, w_9, w_4, w_14 + round4 d, e, a, b, c, w_13, w_10, w_5, w_15 + round4 c, d, e, a, b, w_14, w_11, w_6, w_0 + round4 b, c, d, e, a, w_15, w_12, w_7, w_1 + + ldp w_0, w_1, [sp, #0] // reload saved SHA1 state + ldp w_2, w_3, [sp, #8] + ldr w_4, [sp, #16] + + add a, a, w_0 + add b, b, w_1 + add c, c, w_2 + add d, d, w_3 + add e, e, w_4 + + add buf, buf, #64 + subs len, len, #64 + bhi 0b + + stp a, b, [ctx, #0] // write updated SHA1 state + stp c, d, [ctx, #8] + str e, [ctx, #16] + + ldr x19, [sp, #24+0*8] + ldp x20, x21, [sp, #24+1*8] + ldp x22, x23, [sp, #24+3*8] + ldp x24, x25, [sp, #24+5*8] + ldp x26, x27, [sp, #24+7*8] + add sp, sp, #24+9*8 + +1: ret +END(_libmd_sha1block_scalar) + +/* + * SHA1 implementation using the SHA1 instruction set extension. + */ + + .arch_extension sha2 + + // sha1block(SHA1_CTX, buf, len) +ENTRY(_libmd_sha1block_sha1) + /* ctx, buf, len: same as for sha1block_scalar */ +kaddr .req x3 +abcd .req v0 +abcd_q .req q0 // alias for use with scalar instructions +abcd_s .req s0 +e0 .req s1 +e0_v .req v1 +e1 .req s2 +abcd_saved .req v3 +e0_saved .req v4 +tmp0 .req v5 +tmp1 .req v6 +msg0 .req v16 +msg1 .req v17 +msg2 .req v18 +msg3 .req v19 +k0 .req v20 +k1 .req v21 +k2 .req v22 +k3 .req v23 + + ands len, len, #~63 // take length in multiples of block length + beq 1f // bail out if input empty + + ldr abcd_q, [ctx, #0] + ldr e0, [ctx, #16] + + adrp kaddr, k1234 + add kaddr, kaddr, #:lo12:k1234 + ld4r {k0.4s, k1.4s, k2.4s, k3.4s}, [kaddr] + +0: mov abcd_saved.16b, abcd.16b + mov e0_saved.16b, e0_v.16b + + ld1 {msg0.4s, msg1.4s, msg2.4s, msg3.4s}, [buf], #64 + rev32 msg0.16b, msg0.16b + rev32 msg1.16b, msg1.16b + rev32 msg2.16b, msg2.16b + rev32 msg3.16b, msg3.16b + + add tmp0.4s, msg0.4s, k0.4s + add tmp1.4s, msg1.4s, k0.4s + + /* rounds 0--3 */ + sha1h e1, abcd_s + sha1c abcd_q, e0, tmp0.4s + add tmp0.4s, msg2.4s, k0.4s + sha1su0 msg0.4s, msg1.4s, msg2.4s + + /* rounds 4--7 */ + sha1h e0, abcd_s + sha1c abcd_q, e1, tmp1.4s + add tmp1.4s, msg3.4s, k0.4s + sha1su1 msg0.4s, msg3.4s + sha1su0 msg1.4s, msg2.4s, msg3.4s + + /* rounds 8--11 */ + sha1h e1, abcd_s + sha1c abcd_q, e0, tmp0.4s + add tmp0.4s, msg0.4s, k0.4s + sha1su1 msg1.4s, msg0.4s + sha1su0 msg2.4s, msg3.4s, msg0.4s + + /* rounds 12--15 */ + sha1h e0, abcd_s + sha1c abcd_q, e1, tmp1.4s + add tmp1.4s, msg1.4s, k1.4s + sha1su1 msg2.4s, msg1.4s + sha1su0 msg3.4s, msg0.4s, msg1.4s + + /* rounds 16--19 */ + sha1h e1, abcd_s + sha1c abcd_q, e0, tmp0.4s + add tmp0.4s, msg2.4s, k1.4s + sha1su1 msg3.4s, msg2.4s + sha1su0 msg0.4s, msg1.4s, msg2.4s + + /* rounds 20--23 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + add tmp1.4s, msg3.4s, k1.4s + sha1su1 msg0.4s, msg3.4s + sha1su0 msg1.4s, msg2.4s, msg3.4s + + /* rounds 24--27 */ + sha1h e1, abcd_s + sha1p abcd_q, e0, tmp0.4s + add tmp0.4s, msg0.4s, k1.4s + sha1su1 msg1.4s, msg0.4s + sha1su0 msg2.4s, msg3.4s, msg0.4s + + /* rounds 28--31 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + add tmp1.4s, msg1.4s, k1.4s + sha1su1 msg2.4s, msg1.4s + sha1su0 msg3.4s, msg0.4s, msg1.4s + + /* rounds 32--35 */ + sha1h e1, abcd_s + sha1p abcd_q, e0, tmp0.4s + add tmp0.4s, msg2.4s, k2.4s + sha1su1 msg3.4s, msg2.4s + sha1su0 msg0.4s, msg1.4s, msg2.4s + + /* rounds 36--39 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + add tmp1.4s, msg3.4s, k2.4s + sha1su1 msg0.4s, msg3.4s + sha1su0 msg1.4s, msg2.4s, msg3.4s + + /* rounds 40--43 */ + sha1h e1, abcd_s + sha1m abcd_q, e0, tmp0.4s + add tmp0.4s, msg0.4s, k2.4s + sha1su1 msg1.4s, msg0.4s + sha1su0 msg2.4s, msg3.4s, msg0.4s + + /* rounds 44--47 */ + sha1h e0, abcd_s + sha1m abcd_q, e1, tmp1.4s + add tmp1.4s, msg1.4s, k2.4s + sha1su1 msg2.4s, msg1.4s + sha1su0 msg3.4s, msg0.4s, msg1.4s + + /* rounds 48--51 */ + sha1h e1, abcd_s + sha1m abcd_q, e0, tmp0.4s + add tmp0.4s, msg2.4s, k2.4s + sha1su1 msg3.4s, msg2.4s + sha1su0 msg0.4s, msg1.4s, msg2.4s + + /* rounds 52--55 */ + sha1h e0, abcd_s + sha1m abcd_q, e1, tmp1.4s + add tmp1.4s, msg3.4s, k3.4s + sha1su1 msg0.4s, msg3.4s + sha1su0 msg1.4s, msg2.4s, msg3.4s + + /* rounds 56--59 */ + sha1h e1, abcd_s + sha1m abcd_q, e0, tmp0.4s + add tmp0.4s, msg0.4s, k3.4s + sha1su1 msg1.4s, msg0.4s + sha1su0 msg2.4s, msg3.4s, msg0.4s + + /* rounds 60--63 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + add tmp1.4s, msg1.4s, k3.4s + sha1su1 msg2.4s, msg1.4s + sha1su0 msg3.4s, msg0.4s, msg1.4s + + /* rounds 64--67 */ + sha1h e1, abcd_s + sha1p abcd_q, e0, tmp0.4s + add tmp0.4s, msg2.4s, k3.4s + sha1su1 msg3.4s, msg2.4s + sha1su0 msg0.4s, msg1.4s, msg2.4s + + /* rounds 68--71 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + add tmp1.4s, msg3.4s, k3.4s + sha1su1 msg0.4s, msg3.4s + + /* rounds 72--75 */ + sha1h e1, abcd_s + sha1p abcd_q, e0, tmp0.4s + + /* rounds 76--79 */ + sha1h e0, abcd_s + sha1p abcd_q, e1, tmp1.4s + + add e0_v.4s, e0_v.4s, e0_saved.4s + add abcd.4s, abcd.4s, abcd_saved.4s + + subs len, len, #64 + bhi 0b + + str abcd_q, [ctx, #0] + str e0, [ctx, #16] + +1: ret +END(_libmd_sha1block_sha1) + + .section .rodata + .balign 16 +k1234: .4byte 0x5a827999 + .4byte 0x6ed9eba1 + .4byte 0x8f1bbcdc + .4byte 0xca62c1d6 + .size k1234, .-k1234 + + .section .note.GNU-stack,"",%progbits diff --git a/lib/libmd/aarch64/sha1dispatch.c b/lib/libmd/aarch64/sha1dispatch.c new file mode 100644 index 000000000000..e34bf0a1a344 --- /dev/null +++ b/lib/libmd/aarch64/sha1dispatch.c @@ -0,0 +1,24 @@ +/*- + * Copyright (c) 2024 Robert Clausecker + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include +#include +#include + +extern void _libmd_sha1block_scalar(SHA1_CTX *, const void *, size_t); +extern void _libmd_sha1block_sha1(SHA1_CTX *, const void *, size_t); + +DEFINE_IFUNC(, void, sha1_block, (SHA1_CTX *, const void *, size_t)) +{ + unsigned long hwcap = 0; + + elf_aux_info(AT_HWCAP, &hwcap, sizeof(hwcap)); + + if (hwcap & HWCAP_SHA1) + return (_libmd_sha1block_sha1); + else + return (_libmd_sha1block_scalar); +} From nobody Wed May 14 23:54:14 2025 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 4ZyVYf4FFbz5w1WK; Wed, 14 May 2025 23:54:14 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVYf3Cxqz3kNc; Wed, 14 May 2025 23:54:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266854; 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=8zm+JIW9/5txA8xUcMNTYXohusc/pC0TkJvG7pdS5ak=; b=NbVQi04aBJQYM09HtxpJowF6gicBBMDIPgR03nxlwNG1gMP8+/PNzOwPq/BA+60Iy/1v+F Jm3GZzdxqzTJVuhU4kOlmqXgVpRgYQi+1evCrJ8tBni5ypv6Z8j7zy8u2TSOw4qQlw3uBN kSq41yHilx6p6pWvNFjWKt6kyosu9gtWhaWXbxZkcNziTAcjirSYfVqKjLXOimODdqKNKi /QrOb5OfeuO7Clw4aRAS/zGIWHQxA/BuUFNbwjQh+oGtDvnGQ1s6FGAwVXMrM3TCjdsHyI A5H5fCR+D/f1t5nqul+N8zkE2ASWxGeDy6vYHuI38GalZGJ6cj9Yc8oHewq7Xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266854; 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=8zm+JIW9/5txA8xUcMNTYXohusc/pC0TkJvG7pdS5ak=; b=dbHbt+hrbXrDqNFUVK7yrmi6CTwk2o9cYUYAvRzMqFl12o+Qeqwl5WLue8zZsjrEoBNE2i yv5JQw4Wj15LYFi0kaDdAX1xhu0UxWuqOFR0zf6ofsp0W4mf3VvV+gQ71yNSY7QhtbQI9z CX++5Ot7yyIUEyXOqUxhB0XoXjgYIbqzfswg9XtrQV3+NFW5zeIaRINzjp6Awpp/+7lOwn 5yBOkXJEAVHseyc07BCyjxWim0kZ2G/OrMKQtWmFkPM+VshppRp5UAdvQKEY2Cfiz1ZL1x EUj+PwIskqWuPVJp9/h29S3Lv6vCukSxtcQTEEEYvz9M3aMdxOe6HxlwB0dcAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747266854; a=rsa-sha256; cv=none; b=egd/cdr27nkKO5y9ByIoc3MquBatMHETPPSwrz9jZhzhyZFGlfQlu9jxUxzIIjYbRbMUUG qRrWSUpkSh/r20Nhb2XI61bhfHRTV9u1hSQ+F091tfwmHHQMCD6XC2GMP8DM4Jqxsj/lHQ vFWYGgTrrZgcAvwjj43MUQbs1H/IuBjnI5EYMI0ST6741OrsrTvusGo9H4UKVI2dB3DVJo 7nO+C39MKgGUhMe4re2PfZMqkDXsRdW577aYzNlVDDzzvGEMPRajiTivuvA2wTOMCpHkCR PfdJYfxyczhzWnd6IfHiI/hHV/UQlzmcEd8F9UIUaWofsDlDlibFoX6H/ZasLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVYf2mWPztnf; Wed, 14 May 2025 23:54:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENsEOQ026557; Wed, 14 May 2025 23:54:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENsE7U026554; Wed, 14 May 2025 23:54:14 GMT (envelope-from git) Date: Wed, 14 May 2025 23:54:14 GMT Message-Id: <202505142354.54ENsE7U026554@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: 9a685c09f06a - main - EC2: Remove old broken_txfifo workaround 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9a685c09f06a55b18589d75f9307563d84a17fa9 Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=9a685c09f06a55b18589d75f9307563d84a17fa9 commit 9a685c09f06a55b18589d75f9307563d84a17fa9 Author: Colin Percival AuthorDate: 2025-05-14 23:36:26 +0000 Commit: Colin Percival CommitDate: 2025-05-14 23:54:04 +0000 EC2: Remove old broken_txfifo workaround Early versions of Xen, including those used in the early days of EC2, had a bug in their UART emulation whereby the TX FIFO wouldn't send the expected interrupt when emptying; as a result, FreeBSD would write 16 characters to the serial console and then stop because we thought the FIFO was forever full. In 2013 (1c60b24baa50) I added a loader tunable "hw.broken_txfifo" which spinwaits for the FIFO TX rather than relying on the interrupt, and enabled this in loader.conf in EC2 images. A decade later, this workaround is almost certainly no longer needed in EC2 -- most instances don't run Xen, and the bug was long since fixed in Xen anyway -- but we've been holding on to the workaround "just in case". Unfortunately, the spinwait behaviour is causing latency spikes and triggering warnings from the ena(4) driver. This commit removes the hw.broken_txfifo setting from loader.conf in EC2 images, but leaves the loader tunable and associated code, since it has been necessary in some other environments. (It seems that the TX FIFO missing-interrupts bug has been independently written at least three times!) MFC after: 1 minute Sponsored by: Amazon --- release/tools/ec2.conf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index d6cb85959183..ef7a603efea9 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -65,11 +65,6 @@ ec2_common() { # screenshot") which was introduced in 2016. echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf - # Some older EC2 hardware used a version of Xen with a bug in its - # emulated serial port. It is not clear if EC2 still has any such - # nodes, but apply the workaround just in case. - echo 'hw.broken_txfifo="1"' >> ${DESTDIR}/boot/loader.conf - # Graviton 1 through Graviton 4 have a bug in their ACPI where they # mark the PL061's pins as needing to be configured in PullUp mode # (in fact the PL061 has no pullup/pulldown resistors). Graviton 1 From nobody Wed May 14 23:54:41 2025 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 4ZyVZ94Zv3z5w14R; Wed, 14 May 2025 23:54:41 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVZ91jXvz3ky2; Wed, 14 May 2025 23:54:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266881; 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=orTDashH0xb6akdtvYacY28Tpu8okJCldCQ0qkkx/OY=; b=vtLKZ9DbvzN+3FajZbjASxdhO7N9ADzVO1toznrlWAoWLcu+ju9/ankKvhBSY+F+DumxR4 IGhKWeaB2ugbN/3E4l+2nSob6SobUp2rV0Qi89kQ71ZRwoeJqJTXEp2/YPsjO3VnfRQG6b 5UyRctakZ/ASbfBJlzid6AVZRIdwR1tIaevPDqy+9qYhFy0Oe6ZrWIJ2MI7SDVbO/SGcF7 oN8FNjcbnylsEucvTJoOZ+QQnyCPe/uDNo7hWyg+myX27MybPrNwNp9u2GlWE9RjA5o49R KR0ZMKLyo+5OiGcfSDOdq3JLREsV31nN8c3fHna1hvB/j4BINFwMjumGZ0pnrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747266881; 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=orTDashH0xb6akdtvYacY28Tpu8okJCldCQ0qkkx/OY=; b=UvYRIiDf0iZoh58ZyRLkvsm1CMqGjiIT+6MsSMfJiU7DGv35d7tkwTLPFZWd8bIpYWPshd Nae3bpQSJPbijePFEaEliR0hzPhQnkJIHTDYKdTQkah473pXSxqVS12LsfFF4GGxHxZRz9 SGYRzNByXUagKMGXwE3TkWtAVzOT1P5t5UCRZH4vMkfZJ0CshdQXkk8LYi48vbtvGKRc6e mHYTCcrxMp3iO4OuVjGRxlqSj32A9Q5X1/62jeHXnohYCJLmYhDPBRs3s4S4pBiAE3mkm+ vHrN2iDgEtbIAIHEzhPF2ILwfhUa4M8eibRI2D6oxxqzDyznH6IeqJTPkEAZAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747266881; a=rsa-sha256; cv=none; b=ef+TD4kAnExiDlp/ZgXIll/MmwYxgIGD3Y6J/0lOxFmdD+c41mpvkDErJreqKmU1Hjzl7Y zx0uY+s5sfVJ6D/KAtdZpnF/C0M3lVQGCUrOggYGmTyVasWsOF7md0eYLdz8wsK6PJqZSr G5p6NvqF+3nyOEJSO4PSsvaBM5fCE0zd729tSZnnpvQ6HiiPGUF3eg7lGeiGxtsTVjp3WI qieRGH2AgBSTHxfthCnCAFUPNuIGlAnirttkhZ3vMwysjz1MiIlRYLGj7PJbKE+CGmM1mh hgDhfxxQoFZe5mLORiZ38cqoUvC8Vx50wonkmbDHFrk0oDe8K0XGmrLk4oW86w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVZ91FLLztr4; Wed, 14 May 2025 23:54:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENsf3r026809; Wed, 14 May 2025 23:54:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENsfQ9026806; Wed, 14 May 2025 23:54:41 GMT (envelope-from git) Date: Wed, 14 May 2025 23:54:41 GMT Message-Id: <202505142354.54ENsfQ9026806@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: eadda156a50d - stable/14 - EC2: Remove old broken_txfifo workaround 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: eadda156a50d3487ec1e6fc78f6cfe2df42448fa Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=eadda156a50d3487ec1e6fc78f6cfe2df42448fa commit eadda156a50d3487ec1e6fc78f6cfe2df42448fa Author: Colin Percival AuthorDate: 2025-05-14 23:36:26 +0000 Commit: Colin Percival CommitDate: 2025-05-14 23:54:28 +0000 EC2: Remove old broken_txfifo workaround Early versions of Xen, including those used in the early days of EC2, had a bug in their UART emulation whereby the TX FIFO wouldn't send the expected interrupt when emptying; as a result, FreeBSD would write 16 characters to the serial console and then stop because we thought the FIFO was forever full. In 2013 (1c60b24baa50) I added a loader tunable "hw.broken_txfifo" which spinwaits for the FIFO TX rather than relying on the interrupt, and enabled this in loader.conf in EC2 images. A decade later, this workaround is almost certainly no longer needed in EC2 -- most instances don't run Xen, and the bug was long since fixed in Xen anyway -- but we've been holding on to the workaround "just in case". Unfortunately, the spinwait behaviour is causing latency spikes and triggering warnings from the ena(4) driver. This commit removes the hw.broken_txfifo setting from loader.conf in EC2 images, but leaves the loader tunable and associated code, since it has been necessary in some other environments. (It seems that the TX FIFO missing-interrupts bug has been independently written at least three times!) MFC after: 1 minute Sponsored by: Amazon (cherry picked from commit 9a685c09f06a55b18589d75f9307563d84a17fa9) --- release/tools/ec2.conf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index 1116faed4e9c..bac8bb0d0e67 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -58,11 +58,6 @@ ec2_common() { # screenshot") which was introduced in 2016. echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf - # Some older EC2 hardware used a version of Xen with a bug in its - # emulated serial port. It is not clear if EC2 still has any such - # nodes, but apply the workaround just in case. - echo 'hw.broken_txfifo="1"' >> ${DESTDIR}/boot/loader.conf - # Graviton 1 through Graviton 4 have a bug in their ACPI where they # mark the PL061's pins as needing to be configured in PullUp mode # (in fact the PL061 has no pullup/pulldown resistors). Graviton 1 From nobody Wed May 14 23:57:45 2025 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 4ZyVdj61brz5w1VF; Wed, 14 May 2025 23:57:45 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVdj5V8Tz3mdh; Wed, 14 May 2025 23:57:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267065; 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=ijAbNV0rr2gf43UuyHVzwXJzvFF5G2//VF53/arhTA8=; b=Pee8vuHijGGNyatWTfQV9HOJyYU2tyw+TFaQGsS7JoslN6yzQTMnkRNtAE2DhtPU5Lqn7z Sh9ZI4OdMZXYKRK7u9ml/1iQY3Hferhy79WN1gJLCrH2keKf6fkDS2NP9+XH/VDG0l7AqR IL2KCzEsKDgiQUnjIEuS7XPQaM7tifZvj3qdwjanBBKI+eRauPqX9TaVyJSO6qkoYZ04i5 L/9mjeLpspZDes+Or1QZbe7IkzumJHU1Na/6JchfUtO81CD6DltXnxlLwoWR7GmoLv5brK YEJoqzy2AsNzIq+bdugwLNKgViVVYMu9MaXHJB8rnuRzjmk6Xc1XnK2Bveooig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267065; 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=ijAbNV0rr2gf43UuyHVzwXJzvFF5G2//VF53/arhTA8=; b=q4OeqPeukGPM4ei5Ebr/3Oy5upZ1KbJYaDshFLWYu3D0k9C630gV9q6p2GYr7N8fi3ZeSY YZRZMBAq2BNZNX0OPC1kY+abW7JnmdIhFJ5a8kB6qGqSBZPWN73N6dhj5qh43LYqTdv20H +5V990tNMIEWhaKnItdeOeLNgN2fhocTuolEYCB+MljFjMcAnoDQ21RsJ0NSlsbest+eRl SqfnePr771DGXoZtqWrQpR6pVoWi81gJXSZVoBX3UgTnGLAFYAEZxfMbNXR1DRmvCnm7an 2NG/ZcUv7HA4V4wTxXMsZeKA1/T5U22uM3mVAUN+oeOIJvcou9SqWwRpL7u0GQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267065; a=rsa-sha256; cv=none; b=TZw9vFvrJ7g/0ZUh1VpX0Z36BUq8qEvIbjkN1tkRgUlAbr40n3lUevZxVYLyyeSb3S+zQf 3obhSpYN6wZY804VBMyQcdoAYHq8Va4tpZu8Rp3n9q2HAFfMtWZcLAmatdDxbDSAiMWmmk 7Ov8uvnxbArrmCgG9TgzuqIF39wIwEMSAu5tUi1bOwnS14HAEtvvNgRJsoL3AZSv9EgA3X Xi9Jp2fRcA7BpLKtCToVjz66dZBFfnFF+JeXZV8rRUGsxWGzytabKs1zYyOTcBxBaoAmow dXahe0Xe5GKt/gbsOGfH0hVhyfnzkJcqG08lCl7z95DarvHPHSG8pHh3K6rteg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVdj4YD1ztng; Wed, 14 May 2025 23:57:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ENvj1o027813; Wed, 14 May 2025 23:57:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ENvjcB027810; Wed, 14 May 2025 23:57:45 GMT (envelope-from git) Date: Wed, 14 May 2025 23:57:45 GMT Message-Id: <202505142357.54ENvjcB027810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: cb205f5ed808 - main - pctrie_lookup_range: don't write the null 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cb205f5ed80867be747335e98cffad75873ba60b Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=cb205f5ed80867be747335e98cffad75873ba60b commit cb205f5ed80867be747335e98cffad75873ba60b Author: Doug Moore AuthorDate: 2025-05-14 23:56:34 +0000 Commit: Doug Moore CommitDate: 2025-05-14 23:56:34 +0000 pctrie_lookup_range: don't write the null There's no reason to write the NULL pointer value into the array when pctrie_lookup_range finds an item missing. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D50353 --- sys/kern/subr_pctrie.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/sys/kern/subr_pctrie.c b/sys/kern/subr_pctrie.c index e91966652f80..67566a2d1bfe 100644 --- a/sys/kern/subr_pctrie.c +++ b/sys/kern/subr_pctrie.c @@ -617,16 +617,16 @@ _pctrie_lookup_range(struct pctrie *ptree, struct pctrie_node *node, struct pctrie_node **parent_out, smr_t smr, enum pctrie_access access) { struct pctrie_node *parent; + uint64_t *val; int base, end, i; parent = node; for (i = 0; i < count;) { node = _pctrie_lookup_node(ptree, parent, index + i, &parent, smr, access); - value[i] = pctrie_match_value(node, index + i); - if (value[i] == NULL) + if ((val = pctrie_match_value(node, index + i)) == NULL) break; - ++i; + value[i++] = val; base = (index + i) % PCTRIE_COUNT; if (base == 0 || parent == NULL || parent->pn_clev != 0) continue; @@ -634,10 +634,9 @@ _pctrie_lookup_range(struct pctrie *ptree, struct pctrie_node *node, while (i < end) { node = pctrie_node_load(&parent->pn_child[base++], smr, access); - value[i] = pctrie_toval(node); - if (value[i] == NULL) + if ((val = pctrie_toval(node)) == NULL) break; - ++i; + value[i++] = val; } if (i < end) break; From nobody Thu May 15 00:04:12 2025 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 4ZyVn9238Tz5w1mj; Thu, 15 May 2025 00:04:13 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVn916d4z3qQw; Thu, 15 May 2025 00:04:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267453; 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=/Ag1ApSJsMj3tbYKtR1n/4Cffn4CXtjDQ3b8xvh8gVg=; b=jeq7G+rLWtzK/dHUz2KqJ94TWza12adUblrELh/2sid4JO4VbWpua4tZxz44xhlqzZf0SR X9RHITkZwiTYC1Y2KanZz1q3K4VqgCPkgaQhF94CCRE4bH/PhF1sl62gM0vZF1NBjOWdSa qpCC/u4VDlE78/C8Vb8kxfgsj/Dr8w6jITGj2oRRahZxM4AdGKkGCfWm1h+Cz1cW5n5iOR T7RspVilMkfXasOuH5zpjrbQL+JJxjBLZ69A7+OWcWlSiEyd8hRB5pQDKqaNh+aJdj5AOA rPPBzmoxUpB2GwjPnnSSzBJ6unIwwQkBVm7o2Bj4ly/vxXlVJ6YzIJE+ZLtgsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267453; 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=/Ag1ApSJsMj3tbYKtR1n/4Cffn4CXtjDQ3b8xvh8gVg=; b=vSxlK06wl3szaIps6YwAjzWQTbzFDQGIg+gfLNtud8m7znZennEn0sxTqBArrkZpU7RODT JsM29qFiAhEw0MjqqZsN7f7kUK2Z6H2GcM7J5ciocRjvMWNhaEGBaJarjYv53rAqB+un5n sjM69Zpn8K/ePlfYzxjwvYLi4JXjz70Y0sN570xCoJBKrkahIE+2SGq/XkmawZ23koUuBj 6gJWVLkJqEecEtK0rtaP0n3bcHNOHarnAyWY57AV0hQ/2ok+neRuJfmXPjSHKX3N93NL8G g+o0yPEZUPYwNvleZLujDqZzqGYI4d8oZ4acYBQHyq8csPjhtMNkMLxDVkG4Lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267453; a=rsa-sha256; cv=none; b=mmHG8hHxRtQ6mv+N8ZrVM2PXz2Yp4NZ7RdCgxFw4TWPU0s4cTT8eRLkZ9t7qdF9TrbyZED WiVY5SX5o0CAi8XZwPsv9y5/70obuiHwkbjxBm8DiC4UXpwzMw5Jtl7tfrILgIrLeMQbW4 fLnm7TKjp3ClvvW5KD5jrnE/73Nr+ZThBWlvcwDe2hYDpJPUJ0aI5nZlb7XQmsgtg6wQ4K n4Kw5XZw8s7nepnQdpdF3bEphNExWyF2uZf/5/yhMOYrIzs+mmTg54VDiZpiGfmIUthnCm RllbGHsebXnHflZJ2HCphFj1uB6/jyuOUHaqYztEP4WNIn8Z0MR+AT45qxhxBg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVn90d69zv1T; Thu, 15 May 2025 00:04:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04CRk046829; Thu, 15 May 2025 00:04:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04C7V046826; Thu, 15 May 2025 00:04:12 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:12 GMT Message-Id: <202505150004.54F04C7V046826@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 2b05168eb864 - main - periodic: move some periodic scripts to their packages 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2b05168eb8647262da7ce3506a3599b8be966845 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=2b05168eb8647262da7ce3506a3599b8be966845 commit 2b05168eb8647262da7ce3506a3599b8be966845 Author: Lexi Winter AuthorDate: 2025-05-14 12:14:58 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 periodic: move some periodic scripts to their packages Periodic scripts for rwho, geom, zfs and tcpwrappers are only relevant if those packages are installed, so move them to the appropriate package. Reviewed by: manu, des, emaste Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50341 --- usr.sbin/periodic/etc/daily/Makefile | 32 ++++++++++++++++++++------------ usr.sbin/periodic/etc/security/Makefile | 4 +++- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/usr.sbin/periodic/etc/daily/Makefile b/usr.sbin/periodic/etc/daily/Makefile index d1b000df01e4..c92b4ed8a6ee 100644 --- a/usr.sbin/periodic/etc/daily/Makefile +++ b/usr.sbin/periodic/etc/daily/Makefile @@ -7,17 +7,9 @@ CONFGROUPS= CONFS CONFS= 100.clean-disks \ 110.clean-tmps \ 120.clean-preserve \ - 140.clean-rwho \ 200.backup-passwd \ 210.backup-aliases \ - 221.backup-gpart \ - 222.backup-gmirror \ 400.status-disks \ - 401.status-graid \ - 406.status-gmirror \ - 407.status-graid3 \ - 408.status-gstripe \ - 409.status-gconcat \ 410.status-mfi \ 420.status-network \ 430.status-uptime \ @@ -25,6 +17,20 @@ CONFS= 100.clean-disks \ 510.status-world-kernel \ 999.local +CONFGROUPS+= GEOM +GEOM+= 221.backup-gpart \ + 222.backup-gmirror \ + 401.status-graid \ + 406.status-gmirror \ + 407.status-graid3 \ + 408.status-gstripe \ + 409.status-gconcat +GEOMPACKAGE= geom + +CONFGROUPS+= RCMDS +RCMDS+= 140.clean-rwho +RCMDSPACKAGE= rcmds + # NB: keep these sorted by MK_* knobs .if ${MK_ACCT} != "no" @@ -60,10 +66,12 @@ SENDMAILPACKAGE= sendmail .endif .if ${MK_ZFS} != "no" -CONFS+= 223.backup-zfs \ - 404.status-zfs \ - 800.scrub-zfs \ - 801.trim-zfs +CONFGROUPS+= ZFS +ZFS+= 223.backup-zfs \ + 404.status-zfs \ + 800.scrub-zfs \ + 801.trim-zfs +ZFSPACKAGE= zfs .endif .include diff --git a/usr.sbin/periodic/etc/security/Makefile b/usr.sbin/periodic/etc/security/Makefile index 4c6b39d9062d..c153523d7c39 100644 --- a/usr.sbin/periodic/etc/security/Makefile +++ b/usr.sbin/periodic/etc/security/Makefile @@ -40,7 +40,9 @@ PFPACKAGE= pf .endif .if ${MK_INETD} != "no" && ${MK_TCP_WRAPPERS} != "no" -CONFS+= 900.tcpwrap +CONFGROUPS+= TCPWRAP +TCPWRAP+= 900.tcpwrap +TCPWRAPPACKAGE= tcpd .endif .include From nobody Thu May 15 00:04:14 2025 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 4ZyVnB6r3Jz5w1jK; Thu, 15 May 2025 00:04:14 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnB2BKtz3qWT; Thu, 15 May 2025 00:04:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267454; 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=YNVYhb+a7++9OK9xmFQ1J2XZ8uZ+xFgeosLvWWf41FY=; b=XGwhl6eC1a7ZRKOEWG+NCaGUNRQ5cRE+O5SzFxZGKL3dZ+mb5PFDUKxLD1E/Kpro9tx0bB hHM+riA28665ENG7tnbOuJFRudRPwSj2zpJO2RKVtkh1qjRRDrn54o/f6BGbrhYgudc/rf qTDNdAP0yJb+gPdUckfveWMRftdb5JmfVnNNTxQvDgAhXiZyG6cBmQV+IymfeTz40rvlxv +zCKneV7IR7BKUCETW+Qi2pjfeJ2FSPURQU4x7cXswj3kcrQAum0bZEvDtmvz9s4l6IlPp a7LcAb1bTkn+sfLVMkqpGIJAYw84kSX2pLGbY2kDQFO9ih3Rz69vbdEttCFRXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267454; 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=YNVYhb+a7++9OK9xmFQ1J2XZ8uZ+xFgeosLvWWf41FY=; b=fo7KkJkTHiIPD8LqQ0LmPFow/+BtZbN2G8B1i2u9xOxlg4ksN5ktYRObNEBSsNveq1xhHT Ln2S2yK2xsl1JDNUOAld6jMYm61DX4lAIHcushmOpLBCIxlwxfUI3uU0Jn4R3sgODGD+gO iiOAAo2XWMmgvCPGRejubCJIkg3XH0j+C0YU1uMWCn6yphtUcwM58JV258A141ZUrWSP4o a4I46u7qEZ5v5tWLaI2BCPm4TzQ9DfcIvglRfKleSUDMku0T/DxQalat06WSa08CoQhDQm W/jqFS743LuFD6fq5c9K93sQM3WuMmogVwh15M7dqJ5VU0YtkqCiAG56gjYmiA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267454; a=rsa-sha256; cv=none; b=EAjvragleYWoTjyJaU40oTavUbtgr2GuZL++CvT8/4NUi+9XZdgRjMbIoZDpihmoqO0Gj7 B7f0hhA3Ey19ZBd8Q86gDdMZrZFt0M+Qipx/XUiQTTE445gUZsyF1+1JvUgfD39BJLSKNH 8CQqls2sPr6n8t1NCgwq9DEPg6UX5PAZUaGkIzUGnxKvYFzdXVUhITMqPNhTaq7Dl5dLR0 jQCZdC0bEc0SBb/5+5vYoNkNsKei9yZsDWHAN8sQAWU9XayDfP/Y+bulU135f7Bpa5gWDr 3khsrYqo65FOg0TRZaSzrz4dB1NRGKvYw6V6YYDz3Hy3KHWXw3iAmW6GZvMHPA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnB1l4BzvDm; Thu, 15 May 2025 00:04:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04E9N046863; Thu, 15 May 2025 00:04:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04ETi046860; Thu, 15 May 2025 00:04:14 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:14 GMT Message-Id: <202505150004.54F04ETi046860@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 7a8747f53498 - main - libpam: provide a real /etc/pam.d/ftp 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a8747f53498fe2e3ff0f87ce2a184316b115ae5 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=7a8747f53498fe2e3ff0f87ce2a184316b115ae5 commit 7a8747f53498fe2e3ff0f87ce2a184316b115ae5 Author: Lexi Winter AuthorDate: 2025-05-14 14:15:46 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 libpam: provide a real /etc/pam.d/ftp We provide both /etc/pam.d/ftp and /etc/pam.d/ftpd because FTP servers are inconsistent about which service name they use. Previously ftp was a hard link to ftpd; to avoid hard linking config files, replace ftp with a normal config file that includes the ftpd service. Previously /etc/pam.d/ftpd was in the -ftp package, while /etc/pam.d/ftp was in the -runtime package (by accident, not design). Move both of them to the -runtime package, where the rest of the pam.d services live, since FTP servers from ports use it and people using a ports FTP server might not want to to install the -ftp package as well. This also fixes /etc/pam.d/ftp missing the @config tag. Reviewed by: des, bapt Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50339 --- lib/libpam/pam.d/Makefile | 11 ++++------- lib/libpam/pam.d/ftp | 13 +++++++++++++ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/lib/libpam/pam.d/Makefile b/lib/libpam/pam.d/Makefile index 5dccf590ee4e..a58c37b6c223 100644 --- a/lib/libpam/pam.d/Makefile +++ b/lib/libpam/pam.d/Makefile @@ -22,18 +22,15 @@ CRONPACKAGE= cron .if ${MK_AT} != "no" CONFGROUPS+= AT -AT+= atrun +AT+= atrun ATPACKAGE+= at .endif .if ${MK_FTP} != "no" CONFGROUPS+= FTP -FTP+= ftpd -FTPPACKAGE= ftp - -LINKMODE= ${CONFMODE} -afterinstallconfig: - ${INSTALL_LINK} ${TAG_ARGS} ${DESTDIR}${CONFDIR}/ftpd ${DESTDIR}${CONFDIR}/ftp +FTP+= ftp ftpd +# Do not put these in the ftp package, since ports also use them. +FTPPACKAGE= runtime .endif .include diff --git a/lib/libpam/pam.d/ftp b/lib/libpam/pam.d/ftp new file mode 100644 index 000000000000..1c255441dca6 --- /dev/null +++ b/lib/libpam/pam.d/ftp @@ -0,0 +1,13 @@ +# +# PAM configuration for the "ftp" service. This is not used by the FreeBSD +# ftpd(8), but is provided for compatibility with FTP servers from ports. +# + +# auth +auth include ftpd + +# account +account include ftpd + +# session +session include ftpd From nobody Thu May 15 00:04:15 2025 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 4ZyVnD16QJz5w26X; Thu, 15 May 2025 00:04:16 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnC30Yhz3qft; Thu, 15 May 2025 00:04:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267455; 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=lS6BqHFh/gqWhr+FT/ZbU1yPUlYJzFKCkLfdG3sqZBc=; b=AaDowGf0qynXg7m/ryAFhIhugvMu/+5UhpfTVIxrLmMpAu/tVpxL3mY5fsxS7AofU/pEYw stSB+LMMjMAF0+Zh6b5G8RVCOjv6DCcieEULKUfoKkUwkIQLtuxVRRBBBah5pvaRbel7tW /g+TyIkIOS5qGJwA/hXtW+/AJ3Vc4Au5rDoru6fnzGsBR5fnDQubh92WwA5wpwf7y6trsW aU0UGJRKmA9ywsYpZSQdqVbq2MuZ2aMIMUTOkxYzWBKK4O2awJjEHtrghXazR/IhdzYJiX ViQ7zH7FOOJT5K5CMuPytD35zRsY4lhRVAtKCrjIOj5uYvXanGlqitbVUpCxrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267455; 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=lS6BqHFh/gqWhr+FT/ZbU1yPUlYJzFKCkLfdG3sqZBc=; b=a8WVUg3HsN4CA02vhV7G7/thKaL2dv0q1lhJuaXJszKc5KAleaPL+6MFirh35sXvgJef38 dAwgKbqtlh0NsOs1gQAF64WDxWI9f0S9dUZH294V5+nvAT5Kyhv4zRYAd9V05A8V5tIXLt IAQshepxcFfKoG8AF7wGvcMfIr/Pm6i5/IheVaMo9emablEM+43uoC6e+uQseXcOu0QsuB GP7XTwMndnHobIFUfbQcDxkER3rVGHTakfLvFXYsf3tiFRwLaWcSpIcX5WZPi3EHHU6CmH XFzfPvD1qt02s3wZCvzKqFUbvYcVpilOCXIPqZP+nVYC222h3ONC7uJWDzMY2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267455; a=rsa-sha256; cv=none; b=SbnnlKI129rsVUJ9OfYddUX4a0RWjPeHzobwo2dN2AtExRWtxA3VpK71tUaR7rP6X20IY4 P9WaA4ReSTbqdP/WZ0/t6IFtyZ88OR5Sb5GlRNFsjykdbzBmx8Zcr43IQOHcaa2qZ6veCz Dv6G1H6m4+TlxD/iFUmIPq1BVUx/MVszdFLCQZ6VykMty89jZZBRhK8ngGEzVg9Evt4hLn zXaxLAezOcU0P1wUFd9NTVLvf/YLjpsTb+W5KUxNmteOQGXT4nXd1inf50cAG66/F4Jd93 btT2ZX8HKyV1NKTdQ+UE6gyfWupsb1IbhUtIacZInIXh9KkZjvWe/bZHeAC9yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnC2Y6vzvB6; Thu, 15 May 2025 00:04:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04FI7046900; Thu, 15 May 2025 00:04:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04FhR046897; Thu, 15 May 2025 00:04:15 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:15 GMT Message-Id: <202505150004.54F04FhR046897@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b61850c4e6f6b0f21b36da7238db969d9090309e Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=b61850c4e6f6b0f21b36da7238db969d9090309e commit b61850c4e6f6b0f21b36da7238db969d9090309e Author: Lexi Winter AuthorDate: 2025-05-14 14:26:24 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 bridge(4): default net.link.bridge.member_ifaddrs to false As discussed on arch@, this behaviour is broken and confuses users, so disable it by default. For 15.0-RELEASE, allow it to be re-enabled using a sysctl, but the sysctl will be removed in 16.0R. Relnotes: yes Reviewed by: kp, des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50328 --- UPDATING | 5 +++++ share/man/man4/bridge.4 | 18 ++++++++++++------ sys/net/if_bridge.c | 4 ++-- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/UPDATING b/UPDATING index d46db9e13794..ce2b60ea9353 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250513: + The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0, + meaning that interfaces added to a bridge may not have IP addresses + assigned. Refer to bridge(4) for more information. + 20250507: UMASS quirks and auto-quirk probing has been overhauled. CAM now won't send SYNCHRONIZE CACHE unless MODE PAGE 8 is present and valid. This diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4 index 2c3bfd6aedfa..45dea82325bc 100644 --- a/share/man/man4/bridge.4 +++ b/share/man/man4/bridge.4 @@ -36,7 +36,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 5, 2025 +.Dd May 13, 2025 .Dt IF_BRIDGE 4 .Os .Sh NAME @@ -163,14 +163,20 @@ To allow the host to communicate with bridge members, IP addresses should be assigned to the .Nm interface itself, not to the bridge's member interfaces. -Assigning IP addresses to bridge member interfaces is unsupported, but -for backward compatibility, it is permitted if the +Attempting to assign an IP address to a bridge member interface, or add +a member interface with an assigned IP address to a bridge, will return +an +.Dv EINVAL +.Dq ( "Invalid argument" ) +error. +For compatibility with older releases where this was permitted, setting +the .Xr sysctl 8 variable .Va net.link.bridge.member_ifaddrs -is set to 1, which is the default. -In a future release, this sysctl may be set to 0 by default, or may be -removed entirely. +to 1 will permit this configuration. +This sysctl variable will be removed in +.Fx 16.0. .Sh IPV6 SUPPORT .Nm supports the diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 199418c4aa99..475977adf68a 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -504,10 +504,10 @@ SYSCTL_BOOL(_net_link_bridge, OID_AUTO, log_mac_flap, "Log MAC address port flapping"); /* allow IP addresses on bridge members */ -VNET_DEFINE_STATIC(bool, member_ifaddrs) = true; +VNET_DEFINE_STATIC(bool, member_ifaddrs) = false; #define V_member_ifaddrs VNET(member_ifaddrs) SYSCTL_BOOL(_net_link_bridge, OID_AUTO, member_ifaddrs, - CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), true, + CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), false, "Allow layer 3 addresses on bridge members"); static bool From nobody Thu May 15 00:04:16 2025 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 4ZyVnF5SL3z5w1sm; Thu, 15 May 2025 00:04:17 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnD3tQnz3qgD; Thu, 15 May 2025 00:04:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267456; 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=H5P/W9+X7boMHtKeZy28NpM3Z2ZqOd/PDjMFTzyJxpQ=; b=RVRhKplDRe7Mxvzre/lgAr1NPHk8vHhIaF6U0u6uPWu/mNNukJX+mPFgADwf48oVuiC4lH ZcT2s0XkvdEXA6m8w9181X4tlErtAulr05XKCNXAIKLj2vBwepg7TPr40MBK5N4zc/6tvU htrT5+Eu4o90tZKwYj2JDolaI/L/VmqXtNoRRVC63FWFpbsWG4BU0fbhqDgsSw5tVjVseF yx7ITBKGK1Lc+wVsHwsWBenOw2cd62ubVF3XxWq2jNuOdqP4No3kao2X9Wp0DT0EgGqzdW OvF/KzsOuqldrBQiyjHB2SwXPuje2XnWulr9EaPm+fu7WDzg6hw1tXs+eylP/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267456; 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=H5P/W9+X7boMHtKeZy28NpM3Z2ZqOd/PDjMFTzyJxpQ=; b=GiDTqyEDd5VnVAbffZx465i4kOyWY0oV5L+SDff59cMI2rwI4+GVo0l3nY9a6o3xRifezw oCzPe/vcKFpJBC384BJe1gg185ijQLmaZThU8skGFkuuAkwPHrZgS/2nD/zJujL2M/59M0 DVrvvqDhHmzBBCpFqQco4o1aCcLsBdEQ/ai3wwUhazeNkj88dUUTypO+jOICvm39brKzwI fnCeea5dUceumCvoHDz27vcIKFWwEHEYsgQB5HN13Z/qnXsEXBkwYCOO1niZ1eJ57pnBsx UFrLkPsLLTVK0LNRGsidcERSlHQ/JIti4a1RmvIt5z8i9lw6/81ACpcgBc7Tgg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267456; a=rsa-sha256; cv=none; b=Km9DrylzX5stI5bTt5MAdIBN04uDw5t9NYmzNQMBlVK9tRb1vbURuKTO1PJy+ZA4RaGPKH ZShuf6K9asNt9kiaZHFh+/dkJYEGz9hRpD+OYxGyFON4qNgvIvGI0GAq/wcLiXAep7exK7 6ZHJzSGtN4JKC+QMTYUE4HUJKyVXXXtY6ZT0g1sOWMqcZELfX3mqjx9VmICPk5LEhQNLKh XW8Hwet2Y5zANnO9qFhLWkozS7EILhVgbOBW7FsiKegWDUfIWfea62g2FkkOsP+yaUeHFt Y+CKzRjeKvkajInb4UWojzbnvQM/iaWAqPdDQ7qjijsIlQv3xW2W3a98hw5ILg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnD39mFzv8V; Thu, 15 May 2025 00:04:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04G7l046932; Thu, 15 May 2025 00:04:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04Gc4046929; Thu, 15 May 2025 00:04:16 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:16 GMT Message-Id: <202505150004.54F04Gc4046929@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 8ff7c4d56f21 - main - RELNOTES: document bridge(4) member_ifaddrs change 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8ff7c4d56f21b8690ed10a7913b42445b7584797 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=8ff7c4d56f21b8690ed10a7913b42445b7584797 commit 8ff7c4d56f21b8690ed10a7913b42445b7584797 Author: Lexi Winter AuthorDate: 2025-05-14 14:30:01 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 RELNOTES: document bridge(4) member_ifaddrs change Reviewed by: des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50329 --- RELNOTES | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/RELNOTES b/RELNOTES index 49a4085214aa..19e2c07b1c4b 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,11 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +4d618f6ced86 + The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0, + meaning that interfaces added to a bridge may not have IP addresses + assigned. Refer to bridge(4) for more information. + 44e5a0150835, 9a37f1024ceb: A new utility sndctl(8) has been added to concentrate the various interfaces for viewing and manipulating audio device settings (sysctls, From nobody Thu May 15 00:04:17 2025 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 4ZyVnG41ZDz5w28y; Thu, 15 May 2025 00:04:18 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnF5Q9Bz3qgR; Thu, 15 May 2025 00:04:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267457; 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=GL2LJeR8RkQ4Z33crLhOZJeZjWuy4MhVwEOG3sgZ3KE=; b=bGrhyeyPkxZJxo0DktYCV0Bz/Jh0PvwQBGd9BcL3ue9eP5eBOvizLs4w7LfN8AtXIz1Xzq u9e4oW/fm8niMSwBPYAa811iFJfyadwZtaqrRmZ76q8fGOrnfkhu6I2UVz178fnRMcDOP7 m+1F6uHMPU3PqOQh2p5JZhAOZMiAUxuryho7yz1KPS5omwPOmnB8dOho9NrLRTMc2ChUX3 KjSxwq/ObNTgQpvBzN1GFKVCEZOJ5o0UHm41llC4AJxgCfULct2AAllTY09+UZ9VJZMX5p t45rSSFruJwD/gz64znswllZoc3W2rx40aR7DA377O3BkQRlMdnASBhD9LqnPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267457; 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=GL2LJeR8RkQ4Z33crLhOZJeZjWuy4MhVwEOG3sgZ3KE=; b=B6JR1EwFYV8SqGL5Lm0o5hUAxiu6oNeP8485j9U3eeOswUIw2hhX8GJVG8maujydS73Kax v/A9LHxWTeUZNexN5jO9PdXjnMKEl9SW671WE7s45UtzTdvsCun6V5M+2lJNOubiYqVQG2 zABgwydgLMKTeZgGeNT5QxKqZRspFhanJIJvAvSFtP6HiFfV/UGgxCZh+fOUf0U8ZKI5fC LW2TLQ88mkHLTozAlpoROurnuITQjo1TiaF/7k6jR5qrjmKA59QaLi86mVhzSY+Mc+4JiG JXKxejFuK0rtsxiJF3f9IseVtHGWfgkgHfAdPLGuHM+Zr+76nHuYuLbVWSoOtA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267457; a=rsa-sha256; cv=none; b=ecQhIvS+BcsHaUJ+xrK+zrx1iTCVSdYN6SdHTZ8wb9SnJmFQrwkkJ7Hx5l3FwKehGkHbKN TKEZTKHlhW6dpdpKTC7XSK0M9hcdUOa+TXqdwt2Jgpn9wv+RsCWpC8BOhnBuDHqkX3NR5Y ZL2VnYGUgcdK9eUnAE8QMuzxacwlv6ZJExMWbSegqjPUMJOewvQt3sxWysgmII2aaIGENh flZAQ++WVw9gpzZrVyEhIikw90U9K2Cda/cdQOwvP196mIqGNVkfvx4uP8FpiZzTXV0NxE hTsNWltgo7rBAZUOgalxjw7+qYZWWF1931JpwC0G5+1o34KdsLZ49mcGd5MTLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnF48Znzv1V; Thu, 15 May 2025 00:04:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04H28046964; Thu, 15 May 2025 00:04:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04Hlr046961; Thu, 15 May 2025 00:04:17 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:17 GMT Message-Id: <202505150004.54F04Hlr046961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: f6328f052518 - main - rc.subr: remove the dependency on bsdconfig 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6328f052518d56c01f10e14cd9ef1f2675c01a4 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=f6328f052518d56c01f10e14cd9ef1f2675c01a4 commit f6328f052518d56c01f10e14cd9ef1f2675c01a4 Author: Lexi Winter AuthorDate: 2025-05-14 14:33:36 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 rc.subr: remove the dependency on bsdconfig rc.subr uses sysrc(8) for the 'enable' and 'disable' commands, which means the entire rc(8) stack depends on bsdconfig. Instead, provide a minimal amount of rc.conf-editing functionality in rc.subr and use it to implement these commands. Reviewed by: des, bapt Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50325 --- libexec/rc/rc.subr | 102 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 86 insertions(+), 16 deletions(-) diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr index 2261ab0461e1..e2a30d9fc9bd 100644 --- a/libexec/rc/rc.subr +++ b/libexec/rc/rc.subr @@ -56,6 +56,9 @@ _svcj_generic_params="path=/ mount.nodevfs host=inherit" JID=0 CPUSET="/bin/cpuset" +# Cache the services that we loaded with load_rc_config. +_loaded_services="" + # rc_service provides the path to the service script that we are executing. # This is not being set here in an execution context, necessarily, so it's # really just a reasonable guess, and it will get overwritten later if @@ -1421,28 +1424,17 @@ run_rc_command() ;; enable) - _out=$(/usr/sbin/sysrc -vs "$name" "$rcvar=YES") && - echo "$name enabled in ${_out%%:*}" + _out=$(write_rcvar "$rcvar" "YES") && + echo "$name enabled in $_out" ;; disable) - _out=$(/usr/sbin/sysrc -vs "$name" "$rcvar=NO") && - echo "$name disabled in ${_out%%:*}" + _out=$(write_rcvar "$rcvar" "NO") && + echo "$name disabled in $_out" ;; delete) - _files= - for _file in $(/usr/sbin/sysrc -lEs "$name"); do - _out=$(/usr/sbin/sysrc -Fif $_file "$rcvar") && _files="$_files $_file" - done - /usr/sbin/sysrc -x "$rcvar" && echo "$rcvar deleted in ${_files# }" - # delete file in rc.conf.d if desired and empty. - checkyesno service_delete_empty || _files= - for _file in $_files; do - [ "$_file" = "${_file#*/rc.conf.d/}" ] && continue - [ $(/usr/bin/stat -f%z $_file) -gt 0 ] && continue - /bin/rm "$_file" && echo "Empty file $_file removed" - done + delete_rcvar "$rcvar" ;; status) @@ -1982,6 +1974,7 @@ load_rc_config() # If a service name was specified, attempt to load # service-specific configuration if [ -n "$_name" ] ; then + _loaded_services="${_loaded_services} ${_name}" for _d in /etc ${local_startup}; do _d=${_d%/rc.d} if [ -f ${_d}/rc.conf.d/"$_name" ]; then @@ -2735,6 +2728,83 @@ _echoonce() esac } +# _find_rcvar var +# Find the rc.conf file (other than /etc/defaults/rc.conf) that sets $var. +_find_rcvar() +{ + local _var _dir _files + + [ -n "$1" ] || return 1 + _var="$1"; shift + + _files="/etc/rc.conf" + for _dir in /etc ${local_startup}; do + for _name in $_loaded_services; do + _files="${_dir%/rc.d}/rc.conf.d/${_name} ${_files}" + done + done + + /usr/bin/grep 2>/dev/null -rl "^${_var}=" $_files | /usr/bin/head -1 +} + +# write_rcvar var value +# Add or replace the rc var $var with the value $value. +# Look for a current setting of $var in /etc/rc.conf or /etc/rc.conf.d/$name, +# and if found, modify it there; otherwise, append to /etc/rc.conf. +write_rcvar() +{ + local _var _value _file _dir + + [ -n "$1" ] || return 1 + _var="$1"; shift + [ -n "$1" ] || return 1 + _value="$1"; shift + + _file="$(_find_rcvar "$_var")" + if [ -n "$_file" ]; then + local _=$'\01' + /usr/bin/sed -i '' "s${_}^${_var}=.*${_}${_var}=\"$_value\"${_}" "$_file" + echo $_file + return + fi + + for _dir in /etc ${local_startup}; do + _file="${_dir%/rc.d}/rc.conf.d/${name}" + if [ -f "$_file" ]; then + echo "${_var}=\"${_value}\"" >>"$_file" + echo "$_file" + return + fi + done + + echo "${_var}=\"${_value}\"" >>/etc/rc.conf + echo "/etc/rc.conf" +} + +# delete_rcvar var +# Remove the rc var $var. +# Look for a current setting of $var in /etc/rc.conf or /etc/rc.conf.d/$name, +# and if found, remove it. If service_delete_empty is enabled, and the +# resulting file is empty, also delete the file. +delete_rcvar() +{ + local _var _files + + [ -n "$1" ] || return 1 + _var="$1"; shift + + _file="$(_find_rcvar "$_var")" + if [ -n "$_file" ]; then + /usr/bin/sed -i '' "/^${_var}=/d" "$_file" + echo "$_var deleted in $_file" + + if checkyesno service_delete_empty && [ ! -s "$_file" ]; then + /bin/rm -f "$_file" + echo "Empty file $_file removed" + fi + fi +} + # If the loader env variable rc.debug is set, turn on debugging. rc.conf will # still override this, but /etc/defaults/rc.conf can't unconditionally set this # since it would undo what we've done here. From nobody Thu May 15 00:04:18 2025 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 4ZyVnH1fNxz5w1mk; Thu, 15 May 2025 00:04:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnG6472z3qsr; Thu, 15 May 2025 00:04:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267458; 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=1DLpWs/wRndaM5F6m/p4EsZ6e1jy96rPkFNmYRF+k38=; b=ERKwU3dw3UUX/wYs2RPEEIJLv2HmJ51t5+DFuofhXRUqwf8B0+ek+5YxjVPnwbVbYdoA4+ z4PVDA4+cAexyMrWssD9s8EwPCziDmmFd4OQYVh1Yxru48fjDlB64ywYVOZqesyX96gLYp ZeMafOf0q6+B6U4Wk1TSqrUEx9UGi79xpL7khX8RtdJMt1XdWYHIiUv5WSZyYHv59yAiVa B/MVMKYHeaN+O1TyXEX8YPaoa0ai2SdRaRCYi8VZlt61xATri1ho0zDfin6CJVUUx3Zbhl zHY0bhxqyCQ3YCwLdoGO1C9ObuuLp5Tvt0ip00KliRG55MzUUUlcDUJHtxEcQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267458; 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=1DLpWs/wRndaM5F6m/p4EsZ6e1jy96rPkFNmYRF+k38=; b=RHtfwRY4429bOqN3qNmitBsWh7B8J9WkS7cx2yA2YwIAiE/ZkTkiK/UOl3z9R/UFazfDTm YXc+GKSzo6ZqpCo9k6IBgjbPypOe1l1ckIDzVKzrkszDka4KVM+XM2cTMn45LfJX+S/U1z lWntA64W8lVsf6lBYo3e9MtBbcuVzufh+wJ6n6WsXr2AUIhppHvG5iH3sWLtWu4GNjg6vp Xla7yICTy0/lvMKr3yUOlhqRiw24AlqRaXzldVPMlNRQeRwVytMi6EJgxooNB5TY1RLN5S OFdsD1dJh6D9ar+Mf6FaA4qi6SNQIMg3313iwlQ0W+H8ui/qLB8hIdSsGrgmsA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267458; a=rsa-sha256; cv=none; b=qb9Kgr9cqFy6/S/V/Lg8Jr/tdxFeyILwWwiHMN79swCwPnhA1jzV0sF/TgWHp5NFg4JT6w u9zVF2wUSiRNvRLt1r/MiVe3t47Fav7jrdY5zf56IUbYgfgtR5vWXv1TRXUnirli4llXg5 9CGOriLFuG3xfGfzcfq66buUm6J6VHtO2dl4aB6a0iCXlHCk3OC6N5++eo1+PSNnqdl3ca VZmBsI57QPDv15wR+DXngFOMP9M1battUWALoxE+/bss3/iaX7o+LRPlbwlKGAhqnVCUz+ cZSB7np8HJ/sfZ8rIBikk34yb1smJS6aYdhVu0QrzbvolmYpaZXLQdud3ve7ZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnG5MLnzvDn; Thu, 15 May 2025 00:04:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04Ils046996; Thu, 15 May 2025 00:04:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04IKi046993; Thu, 15 May 2025 00:04:18 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:18 GMT Message-Id: <202505150004.54F04IKi046993@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 0829839fd0cd - main - traceroute.8: improve the documentation of -P 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0829839fd0cd6046fbb5c0b6c6432b5ffe0d91e8 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=0829839fd0cd6046fbb5c0b6c6432b5ffe0d91e8 commit 0829839fd0cd6046fbb5c0b6c6432b5ffe0d91e8 Author: Lexi Winter AuthorDate: 2025-05-14 16:05:02 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 traceroute.8: improve the documentation of -P 1. -P didn't say what the argument is supposed to be; in the case of udplite(4), "-Pudp-lite" is not valid, one must use "-Pudplite". 2. be more explicit about what sort of packets we generate, particularly for -Psctp and -Pgre. Reviewed by: imp, tuexen, des Approved by: des (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pull/1657 --- usr.sbin/traceroute/traceroute.8 | 62 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 57 insertions(+), 5 deletions(-) diff --git a/usr.sbin/traceroute/traceroute.8 b/usr.sbin/traceroute/traceroute.8 index 203b743fb408..a97395944b2a 100644 --- a/usr.sbin/traceroute/traceroute.8 +++ b/usr.sbin/traceroute/traceroute.8 @@ -15,7 +15,7 @@ .\" .\" $Id: traceroute.8,v 1.19 2000/09/21 08:44:19 leres Exp $ .\" -.Dd November 17, 2023 +.Dd May 14, 2025 .Dt TRACEROUTE 8 .Os .Sh NAME @@ -136,10 +136,62 @@ to terminate the route tracing). If something is listening on a port in the default range, this option can be used to pick an unused port range. .It Fl P Ar proto -Send packets of specified IP protocol. -The currently supported protocols -are: UDP, UDP-Lite, TCP, SCTP, GRE and ICMP. -Other protocols may also be specified (either by name or by number), though +Use packets of specified IP protocol when sending probes. +The +.Ar proto +argument may be one of the following: +.Bl -tag -width Ar udplite +.It Ar udp +Use +.Xr udp 4 +packets. +This is the default. +.It Ar icmp +Use +.Xr icmp 4 +.Dq echo request +packets. +.It Ar udplite +Use +.Xr udplite 4 +packets. +.It Ar tcp +Use +.Xr tcp 4 +.Dq SYN +packets. +This will cause a successful traceroute to end with no response (i.e., a +.Dq * +response) since +.Nm +does not know how to detect the RST or SYN+ACK response from the +destination host. +.It Ar sctp +Use +.Xr sctp 4 +packets. +The +.Ar packetlen +argument must be a multiple of 4. +SCTP probes will be constructed as SCTP +.Dq INIT +chunks, unless the packet length is too small, in which case the probes +will be SCTP +.Dq SHUTDOWN-ACK +chunks followed by zero or one +.Dq PAD +chunks. +.It Ar gre +Use +.Xr gre 4 +packets. +The GRE packets will be constructed as if they contain a PPTP +(Point-to-Point Tunneling Protocol) payload. +.El +.Pp +Other protocols may also be specified, either by number or by name (see +.Xr protocols 5 ) , +though .Nm does not implement any special knowledge of their packet formats. This option is useful for determining which router along a path may be blocking From nobody Thu May 15 00:04:19 2025 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 4ZyVnJ2xScz5w1jL; Thu, 15 May 2025 00:04:20 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnJ0SDDz3qqX; Thu, 15 May 2025 00:04:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267460; 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=vKf4l2n90dQah53ukDa/MZngKRAOYLN0tQh/dFqNxwQ=; b=XVyC8NsqHeqF/GK87e6jqQFZgjJu9KUxB41ZOUQ74SkAg1b80plhnsJ8IgrdcLsMtGLU9W cTL8DLp+/johKT27Q/X1GJ252PXZS/JnuxWpd5heBgh8Zlgjm6QRpGmPOxY0MYweeXhyHd PrcJnpdB3mBCl6QBZoGNne/JsNNz2EeFCfreEbJQhZ9r4p4uNmTeZTuJ50OEwPUxZYvRqM qtUYzfGQOkcwAh/qTYZOk+qluE+D7ORxwAcWUr1P9exne1fcldFdJ0cz8PBtMMgcAnKDch g6cztW6xLEwY11Ua4GkVS1A8DHMM7JEUlEzGNP7zkO6EiPsPipv1Wcy0e+EidA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267460; 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=vKf4l2n90dQah53ukDa/MZngKRAOYLN0tQh/dFqNxwQ=; b=euFeUuQNYGI//Vu+tDRW0gZTw+W1ie5MP25QE2J+sZg0UPC8hY/KpsfoaazBbpmYJxIBRs iITYg+6hMGm/hhxJ0Sar6Pj6Upug49/SeOMdjzoEhHlO+bDQQG63bRfJd30UPmHWuEvDZ/ w/waAIunBf2IcI+GSfsbrnYL5i5Yayjg81/FMWOWNUF2mQqK1QLifsRVZ8g5Fxlw5wvcwT t+tRTwJCmVypZB5zw4vvc9Uw5f3oUZt8VsJBGA5I+TM/0S4XyzlZtItmEK2e8i0691DOof iThCCTIcjoYNS/e2iWNNEFAorSWGJyUTMGHYo5Q0Soh/s8byfybfJ6zhKcE3+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267460; a=rsa-sha256; cv=none; b=QD61QwY+Wi+UZ83Djm3xV/5WrE8wZEufc7aLN6WD6NyEgjQUeSS9kHnFCjbsDQRgp0fhbS H0laIj45kz62YBXtXy/4NWzB0h3EglPOA9hlyWmxHSyTH/zE+Ov8orloO2ZACTxKyPH5Lp SBuHS0WOZQKPMBMAVimSxb+4Ucw7//SVy+H+xVee7b6f80u6f9Ac6JGjuXUJ4l+QInZgWP GxZtfF0W164eEJOPq6WAPH6hToLlHSWkHbGhgfSdhojpaJVdAn12B/OYPouKiwBCvISu6i tpD2Xn68P70MG7vWeRK/emj2FMMZrzstiWcDpCdnPK7xundJfBVj6HvCmv497w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnH64BTzvB7; Thu, 15 May 2025 00:04:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04JJM047028; Thu, 15 May 2025 00:04:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04JnQ047025; Thu, 15 May 2025 00:04:19 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:19 GMT Message-Id: <202505150004.54F04JnQ047025@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 2d22d54fc4ab - main - newsyslog.conf.d/opensm.conf: remove leading blank line 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2d22d54fc4abc1b4901cf62ef3888172df6798cd Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=2d22d54fc4abc1b4901cf62ef3888172df6798cd commit 2d22d54fc4abc1b4901cf62ef3888172df6798cd Author: Dan Langille AuthorDate: 2025-02-23 01:42:33 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 newsyslog.conf.d/opensm.conf: remove leading blank line Reviewed by: jlduran, ivy, kevans Approved by: kevans (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pull/1603 --- usr.sbin/newsyslog/newsyslog.conf.d/opensm.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/usr.sbin/newsyslog/newsyslog.conf.d/opensm.conf b/usr.sbin/newsyslog/newsyslog.conf.d/opensm.conf index 5c7d1c74fdbf..1b3570c89619 100644 --- a/usr.sbin/newsyslog/newsyslog.conf.d/opensm.conf +++ b/usr.sbin/newsyslog/newsyslog.conf.d/opensm.conf @@ -1,2 +1 @@ - /var/log/opensm.log 600 7 1000 * J /var/run/opensm.pid 30 From nobody Thu May 15 00:04:20 2025 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 4ZyVnL17M0z5w1mr; Thu, 15 May 2025 00:04:22 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnK1BZkz3qtM; Thu, 15 May 2025 00:04:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267461; 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=eg1Vkk8SdJGSr/VJjQMRf48hT+rzMfjoI717onCYWpA=; b=U5L3dFb6GQMZ/4P62lTVsrGUX/LOJxLk3cc5cdBMXGqwWV2ER3WKHUR/BZGIgib8rxq+TI Moc76dx0eYg7fGJGqLru06dwjx9Qp+34HMx9Y1hQLRmYhoENYFC/QmP6c5L9+M0C2ar0fz 7cNBvj6Mz78ZDHa4C+bfP63Nft5uOeRAomyGjMc8whVKMCgxlWM/My6/AoWQsqEj+r8Ecm dwTYlUEm+D/2Rs6Aob2JwoKowTYTzmpBe3vunc21nnFaC2uAzAVl5nfWMa109ErxTA5V4g K9MpvsgcXYopbUGRx2BIfHo/sMXIDDCJGM1hQ+w8SHP0QSwuUJV13LBMFOcWFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267461; 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=eg1Vkk8SdJGSr/VJjQMRf48hT+rzMfjoI717onCYWpA=; b=gumDjpk/0Ryd20UsTlEGcDoY/dp7VGiQLOOCoywZpj414yQBTjoLWdg2q3M1hNjUjE0JFq eVLgIaiOnL7adPBVCYcBfRKtY8cJio4vofYm6D3MzzuX+CvOdBHDdunIpnWu3rHnC/OqUs lMLjvuaFOhMkmVLVYRMJW6cBDjg0cxHV5Ubgjtq8sDvsEMLqDPdwXbGUaHhqyuNMXo9XHn hAAWISEMH52MBpqVVlJWFoSB5+KBJSqItR5zL0ZVjBRipYgVTG/p3poI/MTCgz8DjhGOIY MJ+5ugY7kpuoxARoCBFaOXmdjHOjS0VAbV0J6Z+vTVekZsI6hj2XjtxRbrerfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267461; a=rsa-sha256; cv=none; b=Ipiam5QtwsrVxTgk88ByoyghafS2E4Hlfe8UX4uz3u90hOlXjuA9eqBPCgv4/l0i877bm6 nyrpCFgiQgdFfXUKc2Mb7B81d8DqZTzE22JgIBHrvCaUPzVrz8SANMGuU9U2SybGM9mo9+ TSlzPcH1wVz/90xnto/c+eNhtLZiUkWELNZkwh9PUKB6sEZ93hj0C32UegNZbCDLjJXZ0z 25WPOEumGfhQni7H14VLjFC2iNSvkGZnfb10oHW8lmnu9B6DCzyY1u/JA8QzxU4NXHUJHf nOq4m3b9t9+jIo14bzTZRdRa+ItEzeI67oRxPCrA1OKN1wxJB/RsNLh5TJyPUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnK0CrqztfN; Thu, 15 May 2025 00:04:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04KQA047067; Thu, 15 May 2025 00:04:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04KxV047064; Thu, 15 May 2025 00:04:20 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:20 GMT Message-Id: <202505150004.54F04KxV047064@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 145162ff1f9f - main - service(8): move to the rc package 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 145162ff1f9f12c43b50d12081ba2828060e4296 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=145162ff1f9f12c43b50d12081ba2828060e4296 commit 145162ff1f9f12c43b50d12081ba2828060e4296 Author: Lexi Winter AuthorDate: 2025-05-14 22:00:57 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 service(8): move to the rc package Since service depends on the rc machinery, there is no point having it installed unless rc is also installed. Move it from runtime to rc. Reviewed by: manu, des, emaste Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50326 --- usr.sbin/service/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/service/Makefile b/usr.sbin/service/Makefile index 66bf0deb760b..4f7aea03ec38 100644 --- a/usr.sbin/service/Makefile +++ b/usr.sbin/service/Makefile @@ -1,4 +1,4 @@ -PACKAGE= runtime +PACKAGE= rc SCRIPTS=service.sh MAN= service.8 From nobody Thu May 15 00:04:22 2025 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 4ZyVnL4Zxhz5w1kf; Thu, 15 May 2025 00:04:22 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnL1YMRz3qcn; Thu, 15 May 2025 00:04:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267462; 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=sZCiCZDe9dWTy8tgufT/53dvgBz7h9z8haxrA+9m0Zc=; b=OljFbz4gPd24ptWmMG2IWygPNVldY6b6MHIqu8kTSFD+e3QwRnG0xlJbtejEnJVZYsBnbf XarFVsJcNAi+6Koju8/Q1ABB7Dn2tA9jYThdMFBO87WkFEtC8qbCyJYwarnr8AFbok/u19 rk/9cqLTkw2SzsxdEFACNakMjYvza4R+ZXbSy0z2xiGLK5J5gt470y4nopWmlSWvbZOSnt e90GbsUhiGz1Q6+oROoonrUxltGP9EHa6YrT6pVPh7slMk2e9dztoK1x3MymlhGlbYoKjO POvFKbOk4tvr/UIm1ossBtCDrZ8NRrVNxU6hA8S0/yJlqZgX2GSBFJ+h2uaaCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267462; 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=sZCiCZDe9dWTy8tgufT/53dvgBz7h9z8haxrA+9m0Zc=; b=mGfs3nrgtbgzWoGeU4qJVYARdZgT6OSdTl1pbhg1k7MuQYrbMuKW6j8Jrrw4sDgCTYIRT5 h+1rFKD+ol4S0IBwToxAYCdcxwV0Jt6Ess29Os7USRlF2cyhQOWsE6FSB+dvweHpgm7INF A7NZ1qB8/IAcxm+Bj5FZfIrhCwMWLqS68de3s0yaDTqL90N6iV3C4nJ6LmjxkZL5d3A8+1 mWxPXK4oU09caXOETyyvX8LrdtAryXUmiPq0o6ykvrP2jxl/LicxFH2CtaSbOiCQTGF0JX gR6sdOup98GquvEQV/AA7FDaNNX70ZvItwXmh+Si2j3gnJtHu/i8FO9o4E8dhw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267462; a=rsa-sha256; cv=none; b=rT2YvFEN31Z8iLkR4KeaUamJpGklicMFflzAbO756pwpPBdH5DpbFcbmwHZM0J5JX3XoOa bOwEmqHR/qI9FcEpbfj0IEoFC8hjtCdu6pLBCOdqneQwbpd4sGwJh4zSSc/aaP/YJDauB4 HTG3j2qswYGd7Mp73wIx/KIBS0PlD6E2nt87ARxs9Nb4o5Dr3diDRG6fbjBVzrwCvsHSeK utSclrHPY9cxpYtJZXDH1KxJG6fHX6NDSTrQXTqJTjhlTXi4CcpU+1+gsjHimPh1OJgFgr KB5rkE95OOEUwHhVHS6fmeJhio2RIDrfFNCWapVRgW5eEM47nVO11q6RNokUxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnL0s4Rzthb; Thu, 15 May 2025 00:04:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04MFD047105; Thu, 15 May 2025 00:04:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04MVg047101; Thu, 15 May 2025 00:04:22 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:22 GMT Message-Id: <202505150004.54F04MVg047101@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: e7bcd658eb30 - main - packages: move floppy utilities into a new package 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e7bcd658eb30d24195581317b4ec3b59b343ec9b Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=e7bcd658eb30d24195581317b4ec3b59b343ec9b commit e7bcd658eb30d24195581317b4ec3b59b343ec9b Author: Lexi Winter AuthorDate: 2025-05-14 22:01:55 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 packages: move floppy utilities into a new package Very few people use floppy disks nowadays. Move the fd utilities into a new package. Reviewed by: imp, des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50291 --- release/packages/Makefile.package | 2 ++ usr.sbin/fdcontrol/Makefile | 1 + usr.sbin/fdformat/Makefile | 1 + usr.sbin/fdread/Makefile | 1 + usr.sbin/fdwrite/Makefile | 1 + 5 files changed, 6 insertions(+) diff --git a/release/packages/Makefile.package b/release/packages/Makefile.package index 4a1e1920b64e..da9d52f45099 100644 --- a/release/packages/Makefile.package +++ b/release/packages/Makefile.package @@ -67,6 +67,8 @@ elftoolchain_COMMENT= ElfToolchain programs and libraries elftoolchain_DESC= ElfToolchain programs and libraries examples_COMMENT= Examples in /usr/share/examples examples_DESC= Examples in /usr/share/examples +fd_COMMENT= Floppy disk support +fd_DESC= Floppy disk support fetch_COMMENT= Fetch Utility fetch_DESC= Fetch Utility firmware-iwm_DESC= iwm(4) firmwares diff --git a/usr.sbin/fdcontrol/Makefile b/usr.sbin/fdcontrol/Makefile index daaae25815aa..65d8b6c3fcb7 100644 --- a/usr.sbin/fdcontrol/Makefile +++ b/usr.sbin/fdcontrol/Makefile @@ -1,5 +1,6 @@ .PATH: ${.CURDIR:H}/fdread +PACKAGE= fd PROG= fdcontrol SRCS= fdcontrol.c fdutil.c CFLAGS+= -I${.CURDIR:H}/fdread diff --git a/usr.sbin/fdformat/Makefile b/usr.sbin/fdformat/Makefile index 2b6891027b22..145cbde6798a 100644 --- a/usr.sbin/fdformat/Makefile +++ b/usr.sbin/fdformat/Makefile @@ -1,5 +1,6 @@ .PATH: ${.CURDIR:H}/fdread +PACKAGE= fd PROG= fdformat MAN= fdformat.8 SRCS= fdformat.c fdutil.c diff --git a/usr.sbin/fdread/Makefile b/usr.sbin/fdread/Makefile index eb205604cde0..c7cfce78cef5 100644 --- a/usr.sbin/fdread/Makefile +++ b/usr.sbin/fdread/Makefile @@ -1,3 +1,4 @@ +PACKAGE= fd PROG= fdread SRCS= fdread.c fdutil.c diff --git a/usr.sbin/fdwrite/Makefile b/usr.sbin/fdwrite/Makefile index 810ae058c7b0..681d3183bb61 100644 --- a/usr.sbin/fdwrite/Makefile +++ b/usr.sbin/fdwrite/Makefile @@ -6,6 +6,7 @@ # ---------------------------------------------------------------------------- # +PACKAGE= fd PROG= fdwrite .include From nobody Thu May 15 00:04:23 2025 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 4ZyVnM3ssMz5w1kg; Thu, 15 May 2025 00:04:23 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyVnM26M4z3qxS; Thu, 15 May 2025 00:04:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267463; 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=Hm7PNGPnGm0xqXKENuj+Tk1vqgXfoIGQLDXb8NgdRX4=; b=WTOOx2Ndv8i6obtHkbgXHMlNTSQFIJlMXyisBaVvEl5LAbyQbWOQyoPU0qar6PKrDEH3hd XBEidU83q3WR+UCOlcKqPPA9cNqb+MIsZBGpE2YQSTw8jItOz2WU8iQWOdTSRa07/waPKJ AJ7ANp0Ock+6sGRiVNXcI4s3gM8iXcky/6RM+asm2qd4QcxfBSNKGMcHRleoEUaECvu4Ks y4+gSShgXUaUauDQK9ksFYJOBQXkmIOGje9ead295QBcteXIX1AZ3mAUDqrEytutzKDmRk OK/Y1XJB7NtbFuT4yghbEm2Y8DMxIoMaR2tEOx6klJ3Q0FzjCuay9dShNV5e1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747267463; 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=Hm7PNGPnGm0xqXKENuj+Tk1vqgXfoIGQLDXb8NgdRX4=; b=UpW+jjiJerE6OZvHM8RPquTZEJLh3cQnySi1bbYJmfsvU0y7dX09mTTWai0bi+IOrcUd3A g5snyWqJvKQcFxYt9HuNHQvYXKPLL2gK7ODwJN4F4MXUxs+OMwNjNBNvOExil+G1VpYaRB QFYBqJ62roRqTX1ePhxh9qc4IcuhzK/FPN7sn5TeF2TmxzWELQyZzuxbICeTJznR/F9vUT 2xu+hFdefbNJOfV7OScUjSCOPf7KRkO4kZzi7TOO2SgyCYeltAPNZiLp2Rzvsw94vUp4sP VZAVn0fCkFPTbdPPGx9CLfIIifrx4G74l2rSSzdbt22JXRTzFdqCblSEI4rJtQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747267463; a=rsa-sha256; cv=none; b=yy5Qsczul3EkPNYKuL1MmDOvjC7TfbQ0KTVoYJKeaQ6gEdKNWR7uFKQO+OjDobDw21YprZ 9jdByOhvxnVZBuvfP6sJTV8i/YwrFANcAiBRJYngY8uVGp8y4hQOtukvYWq/Pa4uWA65yC OV2DdHOpHu1j/RW9u4C2VEn6PW1tM9uCXYh9973TxtcFALTMDFzMzGIUmOKPe9vJKMsai6 +9etJxyz53zgZroYTUYaL/agAwhcfSlkTysycQxqf5E2mlDPuEBGRS26/t8k5RJvZ4zT5f kum/Uj+5XjvPElmc9mwPrvagy9fH4nK0UkDSsbudUIDHRj7KU/SE6b28U8LbHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyVnM1bXdztrp; Thu, 15 May 2025 00:04:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F04NJn047139; Thu, 15 May 2025 00:04:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F04NZw047136; Thu, 15 May 2025 00:04:23 GMT (envelope-from git) Date: Thu, 15 May 2025 00:04:23 GMT Message-Id: <202505150004.54F04NZw047136@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: a1215090416b - main - link_addr: be more strict about address formats 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a1215090416b8afb346fb2ff5b38f25ba0134a3a Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=a1215090416b8afb346fb2ff5b38f25ba0134a3a commit a1215090416b8afb346fb2ff5b38f25ba0134a3a Author: Lexi Winter AuthorDate: 2025-05-14 22:02:59 +0000 Commit: Lexi Winter CommitDate: 2025-05-15 00:02:52 +0000 link_addr: be more strict about address formats instead of accepting any character as a delimiter, only accept ':', '.' and '-', and only permit a single delimiter in an address. this prevents accepting bizarre addresses like: ifconfig epair2a link 10.1.2.200/28 ... which is particularly problematic on an INET6-only system, in which case ifconfig defaults to the 'link' family, meaning that: ifconfig epair2a 10.1.2.200/28 ... changes the Ethernet address of the interface. bump __FreeBSD_version so link_addr() consumers can detect the change. Reviewed by: kp, des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D49936 --- lib/libc/net/linkaddr.3 | 34 +++--- lib/libc/net/linkaddr.c | 198 +++++++++++++++++++++++------------ lib/libc/tests/net/link_addr_test.cc | 152 ++++++++++++++++++++++++++- sbin/ifconfig/af_link.c | 3 +- sys/net/if_dl.h | 2 +- sys/sys/param.h | 2 +- 6 files changed, 307 insertions(+), 84 deletions(-) diff --git a/lib/libc/net/linkaddr.3 b/lib/libc/net/linkaddr.3 index ccfbf4c8d2e1..38ee6a0aedea 100644 --- a/lib/libc/net/linkaddr.3 +++ b/lib/libc/net/linkaddr.3 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 7, 2025 +.Dd May 9, 2025 .Dt LINK_ADDR 3 .Os .Sh NAME @@ -42,7 +42,7 @@ .In sys/types.h .In sys/socket.h .In net/if_dl.h -.Ft void +.Ft int .Fn link_addr "const char *addr" "struct sockaddr_dl *sdl" .Ft char * .Fn link_ntoa "const struct sockaddr_dl *sdl" @@ -51,9 +51,19 @@ .Sh DESCRIPTION The routine .Fn link_addr -interprets character strings representing -link-level addresses, returning binary information suitable -for use in system calls. +parses a character string +.Fa addr +representing a link-level address, +and stores the resulting address in the structure pointed to by +.Fa sdl . +A link-level address consists of an optional interface name, followed by +a colon (which is required in all cases), followed by an address +consisting of either a string of hexadecimal digits, or a series of +hexadecimal octets separated by one of the characters +.Sq "." , +.Sq ":" , +or +.Sq - . .Pp The routine .Fn link_ntoa @@ -133,10 +143,11 @@ was at least one byte in size. .Pp The .Fn link_addr -function -has no return value. -(See -.Sx BUGS . ) +function returns 0 on success. +If the address did not appear to be a valid link-level address, -1 is +returned and +.Va errno +is set to indicate the error. .Sh SEE ALSO .Xr getnameinfo 3 .Sh HISTORY @@ -154,11 +165,6 @@ function appeared in The returned values for link_ntoa reside in a static memory area. .Pp -The function -.Fn link_addr -should diagnose improperly formed input, and there should be an unambiguous -way to recognize this. -.Pp If the .Va sdl_len field of the link socket address diff --git a/lib/libc/net/linkaddr.c b/lib/libc/net/linkaddr.c index 27d444666185..5be4c0a7a43e 100644 --- a/lib/libc/net/linkaddr.c +++ b/lib/libc/net/linkaddr.c @@ -36,87 +36,153 @@ #include #include +#include #include #include -/* States*/ -#define NAMING 0 -#define GOTONE 1 -#define GOTTWO 2 -#define RESET 3 -/* Inputs */ -#define DIGIT (4*0) -#define END (4*1) -#define DELIM (4*2) -#define LETTER (4*3) - -void +int link_addr(const char *addr, struct sockaddr_dl *sdl) { char *cp = sdl->sdl_data; char *cplim = sdl->sdl_len + (char *)sdl; - int byte = 0, state = NAMING, new; + const char *nptr; + size_t newsize; + int error = 0; + char delim = 0; + /* Initialise the sdl to zero, except for sdl_len. */ bzero((char *)&sdl->sdl_family, sdl->sdl_len - 1); sdl->sdl_family = AF_LINK; - do { - state &= ~LETTER; - if ((*addr >= '0') && (*addr <= '9')) { - new = *addr - '0'; - } else if ((*addr >= 'a') && (*addr <= 'f')) { - new = *addr - 'a' + 10; - } else if ((*addr >= 'A') && (*addr <= 'F')) { - new = *addr - 'A' + 10; - } else if (*addr == 0) { - state |= END; - } else if (state == NAMING && - (((*addr >= 'A') && (*addr <= 'Z')) || - ((*addr >= 'a') && (*addr <= 'z')))) - state |= LETTER; - else - state |= DELIM; - addr++; - switch (state /* | INPUT */) { - case NAMING | DIGIT: - case NAMING | LETTER: - *cp++ = addr[-1]; - continue; - case NAMING | DELIM: - state = RESET; - sdl->sdl_nlen = cp - sdl->sdl_data; - continue; - case GOTTWO | DIGIT: - *cp++ = byte; - /* FALLTHROUGH */ - case RESET | DIGIT: - state = GOTONE; - byte = new; - continue; - case GOTONE | DIGIT: - state = GOTTWO; - byte = new + (byte << 4); - continue; - default: /* | DELIM */ - state = RESET; - *cp++ = byte; - byte = 0; - continue; - case GOTONE | END: - case GOTTWO | END: - *cp++ = byte; - /* FALLTHROUGH */ - case RESET | END: + + /* + * Everything up to the first ':' is the interface name. Usually the + * ':' should always be present even if there's no interface name, but + * since this interface was poorly specified in the past, accept a + * missing colon as meaning no interface name. + */ + if ((nptr = strchr(addr, ':')) != NULL) { + size_t namelen = nptr - addr; + + /* Ensure the sdl is large enough to store the name. */ + if (namelen > cplim - cp) { + errno = ENOSPC; + return (-1); + } + + memcpy(cp, addr, namelen); + cp += namelen; + sdl->sdl_nlen = namelen; + /* Skip the interface name and the colon. */ + addr += namelen + 1; + } + + /* + * The remainder of the string should be hex digits representing the + * address, with optional delimiters. Each two hex digits form one + * octet, but octet output can be forced using a delimiter, so we accept + * a long string of hex digits, or a mix of delimited and undelimited + * digits like "1122.3344.5566", or delimited one- or two-digit octets + * like "1.22.3". + * + * If anything fails at this point, exit the loop so we set sdl_alen and + * sdl_len based on whatever we did manage to parse. This preserves + * compatibility with the 4.3BSD version of link_addr, which had no way + * to indicate an error and would just return. + */ +#define DIGIT(c) \ + (((c) >= '0' && (c) <= '9') ? ((c) - '0') \ + : ((c) >= 'a' && (c) <= 'f') ? ((c) - 'a' + 10) \ + : ((c) >= 'A' && (c) <= 'F') ? ((c) - 'A' + 10) \ + : (-1)) +#define ISDELIM(c) (((c) == '.' || (c) == ':' || (c) == '-') && \ + (delim == 0 || delim == (c))) + + for (;;) { + int digit, digit2; + + /* + * Treat any leading delimiters as empty bytes. This supports + * the (somewhat obsolete) form of Ethernet addresses with empty + * octets, e.g. "1::3:4:5:6". + */ + while (ISDELIM(*addr) && cp < cplim) { + delim = *addr++; + *cp++ = 0; + } + + /* Did we reach the end of the string? */ + if (*addr == '\0') + break; + + /* + * If not, the next character must be a digit, so make sure we + * have room for at least one more octet. + */ + + if (cp >= cplim) { + error = ENOSPC; break; } - break; - } while (cp < cplim); + + if ((digit = DIGIT(*addr)) == -1) { + error = EINVAL; + break; + } + + ++addr; + + /* If the next character is another digit, consume it. */ + if ((digit2 = DIGIT(*addr)) != -1) { + digit = (digit << 4) | digit2; + ++addr; + } + + if (ISDELIM(*addr)) { + /* + * If the digit is followed by a delimiter, write it + * and consume the delimiter. + */ + delim = *addr++; + *cp++ = digit; + } else if (DIGIT(*addr) != -1) { + /* + * If two digits are followed by a third digit, treat + * the two digits we have as a single octet and + * continue. + */ + *cp++ = digit; + } else if (*addr == '\0') { + /* If the digit is followed by EOS, we're done. */ + *cp++ = digit; + break; + } else { + /* Otherwise, the input was invalid. */ + error = EINVAL; + break; + } + } +#undef DIGIT +#undef ISDELIM + + /* How many bytes did we write to the address? */ sdl->sdl_alen = cp - LLADDR(sdl); - new = cp - (char *)sdl; - if (new > sizeof(*sdl)) - sdl->sdl_len = new; - return; + + /* + * The user might have given us an sdl which is larger than sizeof(sdl); + * in that case, record the actual size of the new sdl. + */ + newsize = cp - (char *)sdl; + if (newsize > sizeof(*sdl)) + sdl->sdl_len = (u_char)newsize; + + if (error == 0) + return (0); + + errno = error; + return (-1); } + char * link_ntoa(const struct sockaddr_dl *sdl) { diff --git a/lib/libc/tests/net/link_addr_test.cc b/lib/libc/tests/net/link_addr_test.cc index ea8f64c6723b..b973b924dc13 100644 --- a/lib/libc/tests/net/link_addr_test.cc +++ b/lib/libc/tests/net/link_addr_test.cc @@ -71,10 +71,12 @@ sockaddr_dl make_linkaddr(const std::string &addr) { auto sdl = sockaddr_dl{}; + int ret; sdl.sdl_len = sizeof(sdl); - ::link_addr(addr.c_str(), &sdl); + ret = ::link_addr(addr.c_str(), &sdl); + ATF_REQUIRE_EQ(0, ret); ATF_REQUIRE_EQ(AF_LINK, static_cast(sdl.sdl_family)); ATF_REQUIRE_EQ(true, sdl.sdl_len > 0); ATF_REQUIRE_EQ(true, sdl.sdl_nlen >= 0); @@ -176,6 +178,10 @@ std::vector test_addresses{ {"aa:bb:cc:dd:ee:ff"s, "aa.bb.cc.dd.ee.ff", ether_addr{0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff}}, + + // Address with a blank octet; this is an old form of Ethernet address. + {"00:11::33:44:55"s, "0.11.0.33.44.55", + ether_addr{0x00, 0x11, 0x00, 0x33, 0x44, 0x55}}, }; /* @@ -219,6 +225,43 @@ ATF_TEST_CASE_BODY(ifname) } +/* + * Test with some invalid addresses. + */ +ATF_TEST_CASE_WITHOUT_HEAD(invalid) +ATF_TEST_CASE_BODY(invalid) +{ + auto const invalid_addresses = std::vector{ + // Invalid separator + ":1/2/3"s, + "ix0:1/2/3"s, + + // Multiple different separators + ":1.2-3"s, + "ix0:1.2-3"s, + + // An IP address + ":10.1.2.200/28"s, + "ix0:10.1.2.200/28"s, + + // Valid address followed by garbage + ":1.2.3xxx"s, + ":1.2.3.xxx"s, + "ix0:1.2.3xxx"s, + "ix0:1.2.3.xxx"s, + }; + + for (auto const &addr : invalid_addresses) { + int ret; + + auto sdl = sockaddr_dl{}; + sdl.sdl_len = sizeof(sdl); + + ret = link_addr(addr.c_str(), &sdl); + ATF_REQUIRE_EQ(-1, ret); + } +} + /* * Test some non-Ethernet addresses. */ @@ -245,6 +288,111 @@ ATF_TEST_CASE_BODY(nonether) lladdr(sdl))); } +/* + * Test link_addr behaviour with undersized buffers. + */ +ATF_TEST_CASE_WITHOUT_HEAD(smallbuf) +ATF_TEST_CASE_BODY(smallbuf) +{ + static constexpr auto garbage = std::byte{0xcc}; + auto buf = std::vector(); + sockaddr_dl *sdl; + int ret; + + /* + * Make an sdl with an sdl_data member of the appropriate size, and + * place it in buf. Ensure it's followed by a trailing byte of garbage + * so we can test that link_addr doesn't write past the end. + */ + auto mksdl = [&buf](std::size_t datalen) -> sockaddr_dl * { + auto actual_size = datalen + offsetof(sockaddr_dl, sdl_data); + + buf.resize(actual_size + 1); + std::ranges::fill(buf, garbage); + + auto *sdl = new(reinterpret_cast(&buf[0])) + sockaddr_dl; + sdl->sdl_len = actual_size; + return (sdl); + }; + + /* An sdl large enough to store the interface name */ + sdl = mksdl(3); + ret = link_addr("ix0:1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(-1, ret); + ATF_REQUIRE_EQ(ENOSPC, errno); + ATF_REQUIRE_EQ(3, sdl->sdl_nlen); + ATF_REQUIRE_EQ("ix0", ifname(*sdl)); + ATF_REQUIRE_EQ(0, static_cast(sdl->sdl_alen)); + + /* + * For these tests, test both with and without an interface name, since + * that will overflow the buffer in different places. + */ + + /* An empty sdl. Nothing may grow on this cursed ground. */ + + sdl = mksdl(0); + ret = link_addr("ix0:1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(-1, ret); + ATF_REQUIRE_EQ(ENOSPC, errno); + ATF_REQUIRE_EQ(0, sdl->sdl_nlen); + ATF_REQUIRE_EQ(0, static_cast(sdl->sdl_alen)); + + sdl = mksdl(0); + ret = link_addr(":1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(-1, ret); + ATF_REQUIRE_EQ(ENOSPC, errno); + ATF_REQUIRE_EQ(0, sdl->sdl_nlen); + ATF_REQUIRE_EQ(0, static_cast(sdl->sdl_alen)); + + /* + * An sdl large enough to store the interface name and two octets of the + * address. + */ + + sdl = mksdl(5); + ret = link_addr("ix0:1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(-1, ret); + ATF_REQUIRE_EQ(ENOSPC, errno); + ATF_REQUIRE_EQ("ix0", ifname(*sdl)); + ATF_REQUIRE(std::ranges::equal( + std::vector{ 0x01, 0x02 }, lladdr(*sdl))); + + sdl = mksdl(2); + ret = link_addr(":1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(-1, ret); + ATF_REQUIRE_EQ(ENOSPC, errno); + ATF_REQUIRE_EQ("", ifname(*sdl)); + ATF_REQUIRE(std::ranges::equal( + std::vector{ 0x01, 0x02 }, lladdr(*sdl))); + + /* + * An sdl large enough to store the entire address. + */ + + sdl = mksdl(6); + ret = link_addr("ix0:1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(0, ret); + ATF_REQUIRE_EQ("ix0", ifname(*sdl)); + ATF_REQUIRE(std::ranges::equal( + std::vector{ 0x01, 0x02, 0x03 }, lladdr(*sdl))); + + sdl = mksdl(3); + ret = link_addr(":1.2.3", sdl); + ATF_REQUIRE(*rbegin(buf) == garbage); + ATF_REQUIRE_EQ(0, ret); + ATF_REQUIRE_EQ("", ifname(*sdl)); + ATF_REQUIRE(std::ranges::equal( + std::vector{ 0x01, 0x02, 0x03 }, lladdr(*sdl))); +} + /* * Test an extremely long address which would overflow link_ntoa's internal * buffer. It should handle this by truncating the output. @@ -376,6 +524,8 @@ ATF_INIT_TEST_CASES(tcs) { ATF_ADD_TEST_CASE(tcs, basic); ATF_ADD_TEST_CASE(tcs, ifname); + ATF_ADD_TEST_CASE(tcs, smallbuf); + ATF_ADD_TEST_CASE(tcs, invalid); ATF_ADD_TEST_CASE(tcs, nonether); ATF_ADD_TEST_CASE(tcs, overlong); ATF_ADD_TEST_CASE(tcs, link_ntoa_r); diff --git a/sbin/ifconfig/af_link.c b/sbin/ifconfig/af_link.c index ab35d04a8709..55b75d847c16 100644 --- a/sbin/ifconfig/af_link.c +++ b/sbin/ifconfig/af_link.c @@ -210,7 +210,8 @@ link_getaddr(const char *addr, int which) temp[0] = ':'; strcpy(temp + 1, addr); sdl.sdl_len = sizeof(sdl); - link_addr(temp, &sdl); + if (link_addr(temp, &sdl) == -1) + errx(1, "malformed link-level address"); free(temp); } if (sdl.sdl_alen > sizeof(sa->sa_data)) diff --git a/sys/net/if_dl.h b/sys/net/if_dl.h index 74089277291c..93a094d1ff59 100644 --- a/sys/net/if_dl.h +++ b/sys/net/if_dl.h @@ -83,7 +83,7 @@ struct sockaddr_dl *link_init_sdl(struct ifnet *ifp, struct sockaddr *paddr, #include __BEGIN_DECLS -void link_addr(const char *, struct sockaddr_dl *); +int link_addr(const char *, struct sockaddr_dl *); char *link_ntoa(const struct sockaddr_dl *); int link_ntoa_r(const struct sockaddr_dl *, char *, size_t *); __END_DECLS diff --git a/sys/sys/param.h b/sys/sys/param.h index 88edc92e65e7..6ce6903826d3 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -73,7 +73,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1500042 +#define __FreeBSD_version 1500043 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Thu May 15 00:49:34 2025 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 4ZyWnV5kxQz5w51s; Thu, 15 May 2025 00:49:34 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyWnV2PtGz3Fyg; Thu, 15 May 2025 00:49:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270174; 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=QJKOqxsTSsEA302rE+NV13j6z1xqzsK2FanGKKVkag4=; b=jWByWDh+DvH5n1cxjyvlTi0Rf4oX5vGiJZZR/fBDLIVYMhVBtJ8mYYK1UjRODOCSNVdkYq O7Oo3xbTC5JqfVAQVuawDvnIsNATaRk1bjm6N6CAlpJ/isBMm6cgFiigAc9yDdBjto5hzY ohN3qYFteyMvBkfoydbGlwGg6xvQZe3rWwz2eV4S7q4+4pBs/RpcueWWMrECD0eoRvsPPN FHuaL8vxQw4k9hPSQnujbdmeTdnrEmKAAeEWGqgSf3y+GixR83Zal3AXZBh6xXiUx5V6MP wU0IgVz88yUFQgeUC0+G4mSjRcun1imuvE/UocIFBuFlw4BM/L7MEzrdqtZSwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270174; 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=QJKOqxsTSsEA302rE+NV13j6z1xqzsK2FanGKKVkag4=; b=FNAWhFL2+6WOTETf30GB9y94u8G8SO85A7Q0ds8Ul84BDi7qzGYxDkmTQO6ikvQdjRdwLR o2AYiHEQ3wWBPQE8pVhfPPQP0GtnIdtnUZidUYyCWXdmOWnU3bVkcLLzf6f1XWyt6g8W3x pcgD7PaHUW8vKIQv7EG3N9inxqskWnnmeSqm4Bt5rAJ8qovpypTD3jb1l1txkHMP7sbeTr 1m9axUrOO6w4Zd8tG76YDw5F9ijNx4D5019qQTqam/J0gE/rayRvp4CUOJhOLp33betV3h cHQQqfHjMrV1XoF9JqFBoV+TKxhru0K9sx6peVEfkz/vtYEFajWSb0F5UFloSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747270174; a=rsa-sha256; cv=none; b=j68P5HXD4afJe8LhNOsiV5G9jPD4/Ky6P5Z0mfW9QfeGXgzsyi0JpmUVtVLYN3lRPt/gif imvQyI/X1HESepYR8Vxzka0YG79y/a+j7aT5TXOPtFb7BO18r3AL460ZjmnSt/tsR6WEf4 YmxdIW2QPt8n417sHaO0INcxJoFS/5/E78VNhwX4szMKfz1WyMAzWKoH99Bcir8UWXmqFv WITu8aC6D7BWW0DslhGCitaGEgoJp+cpe1D31Dw7rzC9aTk3ITWfEA8JMww3szu2BYxeOH AdPkGsG5BQ4agb7goLihCaPk2Ru+8QmlTFJK6WL7kBCIqKo+xpyayi/zQPXG3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyWnV194Gzw9Q; Thu, 15 May 2025 00:49:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F0nYCS022956; Thu, 15 May 2025 00:49:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F0nYC4022953; Thu, 15 May 2025 00:49:34 GMT (envelope-from git) Date: Thu, 15 May 2025 00:49:34 GMT Message-Id: <202505150049.54F0nYC4022953@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: d659366cc62a - stable/14 - cdboot.8: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d659366cc62a70b4863bddf226f6209d13ab65c0 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=d659366cc62a70b4863bddf226f6209d13ab65c0 commit d659366cc62a70b4863bddf226f6209d13ab65c0 Author: Alexander Ziaee AuthorDate: 2025-05-09 17:38:25 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-15 00:34:16 +0000 cdboot.8: Initial manual page Add cdboot to the reference manual, fixing an undocumented bug where it is undocumented. There's almost nothing here, but that's better than "only imp and jhb know what this is". MFC after: 3 days Reported by: jhb, imp Reviewed by: mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50274 (cherry picked from commit ecdb0b79bf93a2b8392694bd266c5930ca42bab5) --- stand/i386/cdboot/Makefile | 1 + stand/i386/cdboot/cdboot.8 | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/stand/i386/cdboot/Makefile b/stand/i386/cdboot/Makefile index 7923e258fb66..ef6ae3bcb32a 100644 --- a/stand/i386/cdboot/Makefile +++ b/stand/i386/cdboot/Makefile @@ -4,6 +4,7 @@ PROG= cdboot STRIP= BINMODE=${NOBINMODE} +MAN= cdboot.8 SRCS= ${PROG}.S CFLAGS+=-I${BOOTSRC}/i386/common diff --git a/stand/i386/cdboot/cdboot.8 b/stand/i386/cdboot/cdboot.8 new file mode 100644 index 000000000000..6163bd7b4a7a --- /dev/null +++ b/stand/i386/cdboot/cdboot.8 @@ -0,0 +1,21 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 9 2025 +.Dt CDBOOT 8 i386 +.Os +.Sh NAME +.Nm cdboot +.Nd find a bootloader on ISO-9660 +.Sh DESCRIPTION +.Nm +is a small boot block which finds +.Xr loader 8 +on a +.Xr cd9660 4 +file system. +.Sh SEE ALSO +.Xr cd9660 4 , +.Xr loader 8 From nobody Thu May 15 00:49:32 2025 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 4ZyWnT456kz5w4t7; Thu, 15 May 2025 00:49:33 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyWnT0gQCz3FrT; Thu, 15 May 2025 00:49:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270173; 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=U47D7QWR3F1MxHdACU1B9SNZ9UKHdOdH580N8y1OHAw=; b=dE+0NjooIOl1q+/pBRRTPO+McEk/ng64HbY44xnxSvUOONH+XXlR7JSnOM2Xz0ikqYBUH3 8Ar9k186Bp6ubWiCAoNOEnOlhJnq8lxCS/J98QFWq0qBSP53QvvUlJ8vO5XL89RL6sKmiP LKpgo6obR3c43oHnnwi+ifeK/gyIHJdKkAvOIReG6scEBOvmJdq1Nfp+QRK+SgVNuWPAyD rcsQg0DdkPjRY1NSvjCmQjq0BcnfLsnejWodL84nNFOucinbXuO05t4tVmb3T9wJ0YwMPV 9R4OCajMrdTok/VWeTRxjA3rU1q3rFfu/pVHF4DA1hKtS+o5BWOBxTvRzOFCMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270173; 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=U47D7QWR3F1MxHdACU1B9SNZ9UKHdOdH580N8y1OHAw=; b=fkIFO9OIamU2g/Ygs46MZXhTOq83FQnoLwZVB1BAFuSte7kmw64Jtqtnk7VYIG9BiU3R45 Md/kLN8Ro/vxcJmeEcEXOIxCQVBqSZvbY4iGzbGHehFrLJ0gX4x7p+jS68QBKILkil8x4O Gcols0wvXxeqMp4gzeVjovovA/YzApnhnCTOXcspR+FIBJ5+l0Na0DqzjT9m3okEPF1kez CbkQaixj1QmqCKgZYRNzxfuY5u2kHauT4V1RABkFsUHnB5T6ZW3e51sIOmyDTDHbWRLcuq fY0E8OvSzhMgSYjO4h9/U1EDP1zitUcolIPyPvBu9SrxiwfX7NgsfrXERMU25g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747270173; a=rsa-sha256; cv=none; b=qLD/RluWVd2V9zE+7AiMZSUzE1n6LFrAIEhiWnJty5/VaYoqT/UK7wgKE8bFKKx0FI5mRq yFD18ZPf6YcwPe8v6SB+mk4ROpi9OJgrunCOmyDb50V4JeIQ3OLtBa+FlJtJHH36686VYG EmTqwRjCt4akIMFCX2i5ZxcAYwUEZfBOIL/o5vPyvI3/IWwwaVZGGDWUu71Jg/r+Nv9lv2 TR+uuVApCGx7TEMZCgtSZpa+F0gMfUIuj7TnpMGO/q+WSyiMyZFQ+T/hbCoFz06LPi6CIe dvBlV2szTRtbxOTjocb3QbUGjdC67VOiRlVp7P8QFatc47UbE8m5e9jAdxSD8Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyWnS6yt8zw2L; Thu, 15 May 2025 00:49:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F0nW4e022922; Thu, 15 May 2025 00:49:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F0nWbD022919; Thu, 15 May 2025 00:49:32 GMT (envelope-from git) Date: Thu, 15 May 2025 00:49:32 GMT Message-Id: <202505150049.54F0nWbD022919@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 651102873e96 - stable/14 - stand/lua manuals: Describe better 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 651102873e96174e4e799d4e06538e1d841e182a Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=651102873e96174e4e799d4e06538e1d841e182a commit 651102873e96174e4e799d4e06538e1d841e182a Author: Alexander Ziaee AuthorDate: 2025-03-29 05:14:19 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-15 00:33:21 +0000 stand/lua manuals: Describe better The lua boot loader module manuals were getting pulled into search results for FreeBSD, but not for "boot" or "loader". Reword them to increase clarity for boot or loader searches, as well as the FreeBSD search term which we've been scoping to system topic overview manuals. MFC after: 3 days Reviewed by: imp, mhorne Approved by: mhorne (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pulls/1628 (cherry picked from commit 5d59c1b4f14e2fa6388b1d75ee3243085f1c69f2) --- stand/lua/cli.lua.8 | 4 ++-- stand/lua/color.lua.8 | 4 ++-- stand/lua/config.lua.8 | 4 ++-- stand/lua/core.lua.8 | 4 ++-- stand/lua/drawer.lua.8 | 4 ++-- stand/lua/gfx.lua.8 | 4 ++-- stand/lua/hook.lua.8 | 4 ++-- stand/lua/loader.conf.lua.5 | 2 +- stand/lua/loader.lua.8 | 4 ++-- stand/lua/menu.lua.8 | 4 ++-- stand/lua/password.lua.8 | 4 ++-- stand/lua/screen.lua.8 | 4 ++-- 12 files changed, 23 insertions(+), 23 deletions(-) diff --git a/stand/lua/cli.lua.8 b/stand/lua/cli.lua.8 index 4077ca6b0b56..aee1d3d53579 100644 --- a/stand/lua/cli.lua.8 +++ b/stand/lua/cli.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 24, 2021 +.Dd March 29, 2025 .Dt CLI.LUA 8 .Os .Sh NAME .Nm cli.lua -.Nd FreeBSD Lua CLI module +.Nd bootloader command line interpreter module .Sh DESCRIPTION .Nm contains the main functionality required to add new CLI commands, which can be diff --git a/stand/lua/color.lua.8 b/stand/lua/color.lua.8 index 8a31d2034a48..9a3b9b1b9385 100644 --- a/stand/lua/color.lua.8 +++ b/stand/lua/color.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt COLOR.LUA 8 .Os .Sh NAME .Nm color.lua -.Nd FreeBSD color module +.Nd bootloader color module .Sh DESCRIPTION .Nm contains functionality for working with colors. diff --git a/stand/lua/config.lua.8 b/stand/lua/config.lua.8 index b2b1122285eb..7e8863203446 100644 --- a/stand/lua/config.lua.8 +++ b/stand/lua/config.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 17, 2020 +.Dd March 29, 2025 .Dt CONFIG.LUA 8 .Os .Sh NAME .Nm config.lua -.Nd FreeBSD config module +.Nd bootloader configuration module .Sh DESCRIPTION .Nm contains configuration and module loading functionality. diff --git a/stand/lua/core.lua.8 b/stand/lua/core.lua.8 index 208dbf5e12c9..de43d3e2b220 100644 --- a/stand/lua/core.lua.8 +++ b/stand/lua/core.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 28, 2023 +.Dd March 29, 2025 .Dt CORE.LUA 8 .Os .Sh NAME .Nm core.lua -.Nd FreeBSD core module +.Nd bootloader core module .Sh DESCRIPTION .Nm contains core functionality that does not have a more fitting module. diff --git a/stand/lua/drawer.lua.8 b/stand/lua/drawer.lua.8 index a3a4865d3efe..91738f4b2434 100644 --- a/stand/lua/drawer.lua.8 +++ b/stand/lua/drawer.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt DRAWER.LUA 8 .Os .Sh NAME .Nm drawer.lua -.Nd FreeBSD menu/screen drawer module +.Nd bootloader menu/screen drawer module .Sh DESCRIPTION .Nm contains functionality for drawing and manipulating the menu, logo, and brand diff --git a/stand/lua/gfx.lua.8 b/stand/lua/gfx.lua.8 index 82d3f90f4af7..75f258026804 100644 --- a/stand/lua/gfx.lua.8 +++ b/stand/lua/gfx.lua.8 @@ -3,12 +3,12 @@ .\" .\" SPDX-License-Identifier: BSD-2-Clause .\" -.Dd February 6, 2024 +.Dd March 29, 2025 .Dt GFX.LUA 8 .Os .Sh NAME .Nm gfx.lua -.Nd Fx Lua gfx module +.Nd bootloader graphics module .Sh DESCRIPTION The built-in graphics related Lua bindings for the .Fx diff --git a/stand/lua/hook.lua.8 b/stand/lua/hook.lua.8 index f0e20153a924..91d5f76b6e1c 100644 --- a/stand/lua/hook.lua.8 +++ b/stand/lua/hook.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 28, 2020 +.Dd March 29, 2025 .Dt HOOK.LUA 8 .Os .Sh NAME .Nm hook.lua -.Nd FreeBSD hook module +.Nd bootloader hook module .Sh DESCRIPTION .Nm contains functionality for defining hook types and attaching hooks. diff --git a/stand/lua/loader.conf.lua.5 b/stand/lua/loader.conf.lua.5 index 7fad7d2f78dd..509944ab6598 100644 --- a/stand/lua/loader.conf.lua.5 +++ b/stand/lua/loader.conf.lua.5 @@ -29,7 +29,7 @@ .Os .Sh NAME .Nm loader.conf.lua -.Nd Lua-based system bootstrap configuration file +.Nd system bootstrap Lua configuration information .Sh DESCRIPTION When the lua-based .Xr loader 8 diff --git a/stand/lua/loader.lua.8 b/stand/lua/loader.lua.8 index e5aee7e8602d..ffee46526c9f 100644 --- a/stand/lua/loader.lua.8 +++ b/stand/lua/loader.lua.8 @@ -3,12 +3,12 @@ .\" .\" SPDX-License-Identifier: BSD-2-Clause .\" -.Dd February 6, 2024 +.Dd March 29, 2025 .Dt LOADER.LUA 8 .Os .Sh NAME .Nm loader.lua -.Nd Fx Lua loader module +.Nd bootloader Lua binding module .Sh DESCRIPTION The built-in Lua bindings for the .Fx diff --git a/stand/lua/menu.lua.8 b/stand/lua/menu.lua.8 index e2a0ff09ffd9..e2e32efdf3b4 100644 --- a/stand/lua/menu.lua.8 +++ b/stand/lua/menu.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 31, 2021 +.Dd March 29, 2025 .Dt MENU.LUA 8 .Os .Sh NAME .Nm menu.lua -.Nd FreeBSD dynamic menu boot module +.Nd bootloader dynamic menu module .Sh DESCRIPTION .Nm contains the main functionality required to build a dynamic menu system. diff --git a/stand/lua/password.lua.8 b/stand/lua/password.lua.8 index 1fbe395ab0db..34623c001206 100644 --- a/stand/lua/password.lua.8 +++ b/stand/lua/password.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt PASSWORD.LUA 8 .Os .Sh NAME .Nm password.lua -.Nd FreeBSD password module +.Nd bootloader password module .Sh DESCRIPTION .Nm contains functionality for prompting for and checking passwords. diff --git a/stand/lua/screen.lua.8 b/stand/lua/screen.lua.8 index 691af5bf0758..a41ce6faf08b 100644 --- a/stand/lua/screen.lua.8 +++ b/stand/lua/screen.lua.8 @@ -24,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 19, 2018 +.Dd March 29, 2025 .Dt SCREEN.LUA 8 .Os .Sh NAME .Nm screen.lua -.Nd FreeBSD screen manipulation module +.Nd bootloader screen manipulation module .Sh DESCRIPTION .Nm contains functionality for manipulating the screen. From nobody Thu May 15 00:49:35 2025 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 4ZyWnX1pWCz5w4tD; Thu, 15 May 2025 00:49:36 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyWnW4RvYz3G4c; Thu, 15 May 2025 00:49:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270175; 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=kUiLLqku9WBEthaIYZf4zsmmM9cPlQtvYA2+CrVV2z0=; b=RHSieeOzVoHbaskdV6FwYUZ3ozZQjdHceMgSmAGnbyozaI7yEgBat7PdZlbJ8gJ5PUhrIa 7TnxD/ZOIUQvYioWsDVGtNJWJAhZqoUfWqIaUO5VV3F4NyPdbwxmAQZQ3hEbbMJdlTq8HZ NpIR+INO0YQkcHM7UWFSG2WIUwLoT7amwx4C6PSnKOnADKpV1CZVdw4JcVkdKWnDmVu5dr DdWr/gI0I89aZNlBGVMsAzCkRx2tY7f/QPTHHCAJzC3NjURQt/DXx21ozNpb5BwhuCxovM DJNMWOYy79y9Y1CkD1aScBkXhjGjSzGW/DqK28lEfgF7Ct3neRNuEY6n2LXlsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747270175; 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=kUiLLqku9WBEthaIYZf4zsmmM9cPlQtvYA2+CrVV2z0=; b=ktUuMOcBbCFmd0OylJQO0W9++JJKVZVANJL5G08u6Di+X5XcP/L4dcKHO3U2FeZ8oIc6FC QcdpQXN07a0cRcPdES+dujtNPyd0kwraWXZkMMa38ak4172o8te8Oz1eesRHEsuh3sa1lN HJBxS3r52xOygM7MOrP4DEcGLt1iFHzZsvnCwkFS2D4+RhVBrD6uJWgUoa9oCTjyzSyjSr 6xzhLvsWJuAUKJ+nkUgZpJqLXvr5/x/SoT/CnQYjArLOrLJY74Ar4ejADBkMdMs+4rmSb9 c3ljlhtQFB8FmibrCobfdt2urR7WNwp8/+5hO7ZkTZnUlyyoVvUja99YJhUtVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747270175; a=rsa-sha256; cv=none; b=L5d7yfOdRHJl1Y/LSiYY2R4t8EfjyOTb449UVRiTDL7vJquc7BHqRs/24gdPIgl3jVKUUv fFRp26iSE4ui9+frF5SUWzKRoKKec5eXIDH4OyYLPsGE2qZI0U/MiUR8sAC/jZPZY1MkWW siaH+UPjx1csjut6Lh2A7CBiTnvMhu4iuIMS+R/h4YdtPolLa5W/rT9aiU1t6hJ5MxQHQL QEP3NO+FyDW0YTqS5Y1MA4Z0OJ2jpl2B/5UfWpe0Vb12JtOsIiNPY2UwcUJJeaAvi2GxfG +GHzV9WZsR07/IHREF8esPJnE7KhG69KrlXUG1H/imz7oNaxTYdTmZVb/g/s+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyWnW26vszvw7; Thu, 15 May 2025 00:49:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F0nZsR022994; Thu, 15 May 2025 00:49:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F0nZ8h022991; Thu, 15 May 2025 00:49:35 GMT (envelope-from git) Date: Thu, 15 May 2025 00:49:35 GMT Message-Id: <202505150049.54F0nZ8h022991@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: d0e29f92f7a2 - stable/14 - e6000sw.4: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d0e29f92f7a252b382d76c1e6bac33d8424af5fa Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=d0e29f92f7a252b382d76c1e6bac33d8424af5fa commit d0e29f92f7a252b382d76c1e6bac33d8424af5fa Author: Alexander Ziaee AuthorDate: 2025-05-12 00:52:19 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-15 00:45:40 +0000 e6000sw.4: Initial manual page For inclusion in the HW relnotes. MFC after: 3 days, note removed entries which didn't mfc Reviewed by: adrian, ivy, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50293 (cherry picked from commit 6da793a8caa15ee2cbb984ea39ac87c6cd2fdf63) --- share/man/man4/Makefile | 1 + share/man/man4/e6000sw.4 | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 41fd7d36a74d..980fde8d3868 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -148,6 +148,7 @@ MAN= aac.4 \ etherswitch.4 \ eventtimers.4 \ exca.4 \ + e6000sw.4 \ e6060sw.4 \ fd.4 \ fdc.4 \ diff --git a/share/man/man4/e6000sw.4 b/share/man/man4/e6000sw.4 new file mode 100644 index 000000000000..4c10a99b249a --- /dev/null +++ b/share/man/man4/e6000sw.4 @@ -0,0 +1,39 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt E6000SW 4 +.Sh NAME +.Nm e6000sw +.Nd Marvell 88E6000 series Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd e6000sw +.Sh DESCRIPTION +The +.Nm +driver supports Marvell Gigabit Ethernet switch controllers. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6190 +.It +Marvell 88E6176 +.It +Marvell 88E6172 +.It +Marvell 88E6341 +.It +Marvell 88E6141 +.El +.Sh SEE ALSO +.Xr e6060sw 4 , +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 From nobody Thu May 15 01:50:09 2025 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 4ZyY7P6Jj7z5w92W; Thu, 15 May 2025 01:50:09 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyY7P5N0Zz3CSP; Thu, 15 May 2025 01:50:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747273809; 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=0OJ+vdmncnIU9+SoAWycAcHEbkHW7CpsBElir+L/LAI=; b=KPPbYHvOqWNxt+9EMcUFcmjCDm9iXvufF3ThUM0XSHLYLkyts9ys4UK9RKY6xul6wL1VrV ysn7uO8q0uLJ98o+m0ISe9FZeFEVZmjj8nmsSPudAffYoh3ueyAeNpf38GyCmArDuCpWB+ G6+DqHUlrxs1HVTihOvc7ZIMMsVrF8TuD1H9BJjE4k25LX+VMWYOBdqfrINJE8TRAqh01m I47qnGYSqyO70DldK7froGk/lmjIZ8Pc48N4CbpS06F7nbLV0Ik/5PEnK8H7BNXU/q0BOX nWheL6fKXqD9kmwu8/qSd9fbvHo+9DOCn/Y5d95IWV8cQ5cTOJJsb7epg8EYvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747273809; 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=0OJ+vdmncnIU9+SoAWycAcHEbkHW7CpsBElir+L/LAI=; b=oMLLCTPxGOGKQy2KO1KOnxlAWagBx8VBdwIvxx6MW8wV/ft5WbZz9ih4P81xw2bxcThrSL u8OnPFXCs6z9u6YA6lrw3gYXTiIG3q3Qiow85i9Lq/FIdGtVkv4pf8/XGhu3Mu/TPngnSa 8TZbMb7OyotOjgaEJofN92Rukuo5b+jvmBpZbxJxpwP11J4Mt+kGkhNoRYipjOjHKsi1uY 4CNpSIFoB+OTK8UWk6cusX3SyPrzNb1wbNupzuFwFTIxPEh/BDDNlSykgDT27+F+L5CklX +RlnmZ+UW6E2nlGZQNqXu3UUuJS2phhfqwwOcazUaT+yzsK5hvyQs1c6rAXRNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747273809; a=rsa-sha256; cv=none; b=sUCJy/bSxfTIXGo4feDhnyRv1Iv+nxUobhUwMw4WlL3FtGmXglELRjsV0avj6DNuP64CCU ifGWFdY3TIBVAjVIRfsLQmdrycCHBcCy/6z0Ac1+oH72vcgBOfbGwb+emH1Dgzhu5Bot3H GJcnE34NZ+0W8G2EPSP2YMsJvHhGFLlklypm0cW0OFL+dm62D61nh///Df9RAQSOIJ/LWv BVokHNESyrDQS2yfDsV4NAl/oG/T5bBjSGqTPieL4rztrQcpUoMjpNjVgD2qIgFrECNhPW rsqJHjxnbDqxB0Eskyu1FuNUve0LbpoBtAZCIWET447+7eKvlEhTV9XX3HZ4Sw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyY7P4ngGzxkW; Thu, 15 May 2025 01:50:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F1o94q039346; Thu, 15 May 2025 01:50:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F1o93v039341; Thu, 15 May 2025 01:50:09 GMT (envelope-from git) Date: Thu, 15 May 2025 01:50:09 GMT Message-Id: <202505150150.54F1o93v039341@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Justin Hibbits Subject: git: 45d585ab7f22 - stable/14 - powerpc: Always use BE tag in nexus_map_resource 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 45d585ab7f222ca36988c406df528128a17f9884 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=45d585ab7f222ca36988c406df528128a17f9884 commit 45d585ab7f222ca36988c406df528128a17f9884 Author: Justin Hibbits AuthorDate: 2025-05-13 01:35:14 +0000 Commit: Justin Hibbits CommitDate: 2025-05-15 01:38:24 +0000 powerpc: Always use BE tag in nexus_map_resource 7b5a5e4e replaced nexus_activate_resource() with the bus generic equivalent, which uses bus_map_resource(). However, though not intended to have a functional change, nexus_map_resource() uses the bus tag of the build (BE vs LE), while nexus_activate_resource() always explicitly set a big-endian tag, leading to failures on powerpc64le now. Using BE unless otherwise explicitly specified with the RF_LITTLEENDIAN fixes LE on bare metal, and doesn't hurt in a VM, which nexus_map_resource() was added for. Reported by: pkubaj Tested by: pkubaj Fixes: 7b5a5e4e("powerpc nexus: Use bus_generic_rman_*") MFC after: 1 day (cherry picked from commit c4921a0faaf1683f39347dd066000d929c39c8b9) --- sys/powerpc/powerpc/nexus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 826e75daa374..b40bb26fd395 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -289,7 +289,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, if ((rman_get_flags(r) & RF_LITTLEENDIAN) != 0) map->r_bustag = &bs_le_tag; else - map->r_bustag = nexus_get_bus_tag(NULL, NULL); + map->r_bustag = &bs_be_tag; map->r_size = length; map->r_bushandle = (bus_space_handle_t)map->r_vaddr; break; From nobody Thu May 15 03:03:16 2025 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 4ZyZm63X64z5wGVd; Thu, 15 May 2025 03:03:34 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (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 "freefall.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyZm61ctxz44Kh; Thu, 15 May 2025 03:03:34 +0000 (UTC) (envelope-from danfe@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747278214; 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: in-reply-to:in-reply-to:references:references; bh=gTOI1diZZEqjzVsX+m2QGCo4GFNG0ZwxHb1EulcXGSw=; b=VJlbndeNDGaAjFX1VKyvxJOsjTjmsABcBrsmEwnnVl5O4JbGf+8YwFqsmzm3jtvpolPAud QObW8iDEV1Q+uEW3dWxhoDBlKJbDvLr8dU7LvZqtG9XjJl4YHR+aCxGACUl+Cy74NJ/RRQ k5sYscbZlk/Sl5aeLfrQvIXPq7RSiuv20NGliHTkMepM4NSVLM9CS9spgynq6PiY1yjuPS JTiiKjdPlDm0N28PbiSEh88s5yRaZFSsTd+AvS32hx5R+xsXtChSjCX2ULfgAxyT0673eN V/IUg8Nf4o+Dh/LUWdLj7OxKm1vqhpffYHvaE+grvuLwBX315fw3/Z484Nx12g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747278214; 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: in-reply-to:in-reply-to:references:references; bh=gTOI1diZZEqjzVsX+m2QGCo4GFNG0ZwxHb1EulcXGSw=; b=LBrmN/yzhEDStNozsI5BLG5qO+syIia1kmNpAxX99XhbaWTpyUAaEvqLsXvP7Zga3d9aRo qfdB0UQ4OG1tT1MEJkfaKDlNC+HNaIOqtQYkhYBCCDHkNpSNs6gv37smc0DYkOYHEKdrHm oD3je1liAxR5UL9HBjcFsZm22Mc4/01NAkE460XsK6K+x1Pehv1viMDyMXl31l9W2Qi3ZN Z3bVqR2h0IsD1QvBFhvPFYgjT2M4QQBGJ+i416gakPevTspBZJjrTECjg/kLfgYWXI5WQP KavIIbEq5VqIaX3I3QCOrBeKLdVKtZb1UAv3xyr6U/CNAYVlOuxS1eg0RsmqFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747278214; a=rsa-sha256; cv=none; b=XlLcywuzmLGCVZzFlE8/0J4VWs1d9TATHNZQZ249YLv+241zf7H/io65bcgtazx8wBLwNT cjDnU0kFt2/oNSiZbic7jcSNf9eqoQY8lxk1YMoVamo8pj+LaxB60R9V3GHs45CSiPWKpM J8nX2wIhXi5OUqykgCJO5TyF0heo79ihrFSTpQOkQObPwRiNyOEBckpYG+XZZii2g0jNdX brPeqBRlTW3E15rP1Blrl+wPSAuvEujKZ9bYu+2oL5UtkKZT0Fpjn0caJ59HBc9QtGyNw0 lfMBepkyPLXXJJkEVx45/X8z9dBZaE9zUIIBu+be0ieajccbOtB2uQRQCRIHog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: by freefall.freebsd.org (Postfix, from userid 1033) id 1E1B4E087; Thu, 15 May 2025 03:03:16 +0000 (UTC) Date: Thu, 15 May 2025 03:03:16 +0000 From: Alexey Dokuchaev To: Robert Clausecker Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 8b4684afcde3 - main - lib/libmd: add optimised SHA1 implementations for amd64 Message-ID: References: <202505142340.54ENecbI000166@gitrepo.freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202505142340.54ENecbI000166@gitrepo.freebsd.org> On Wed, May 14, 2025 at 11:40:38PM +0000, Robert Clausecker wrote: > commit 8b4684afcde3930eb49490f0b8431c4cb2ad9a46 > > lib/libmd: add optimised SHA1 implementations for amd64 > > Three implementations are provided: one using just scalar > instructions, one using AVX2, and one using the SHA instructions > (SHANI). The AVX2 version uses a complicated multi-block carry > scheme described in an Intel whitepaper Sounds pretty cool! How feasible would be coming up with AVX-only code? My CPU does not support AVX2 but I often need to compute SHA1 sums. ./danfe From nobody Thu May 15 09:12:19 2025 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 4Zykxb6mn2z5w1jP; Thu, 15 May 2025 09:12:19 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zykxb6C9Qz3vQv; Thu, 15 May 2025 09:12:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747300339; 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=YiPpzmehVFWR/NNfydjfdFSkVuGX1+bLyiMY44f6Fg8=; b=qo6jKfTUcM0NCWdtiR/DulLdHDtFu+l2Ftm68jUqGRgHkxJX6xeHCBRcJhRZWqUKpk9JXx G7CVYd3P81L6Ib9m+Up/eMjtvh9EMuRBXJldbM6A99y2hF/nV6ZmSCmb/B0+w+osyVRSEE aDwO+rC2Dh/il9NVnGR5j4cvHGn/WGvQactsK1gcBaQhAX+h33pJS0NBv3Whub5qtubxfU lomzUpmtXgYY3r+TgMSrPEquCzZLHh+hqkRwMa3hV2N/L/Z9HpmodnpjiKVXy0pbKftXBn 1OxQ4VRUe5tONGZyhUnskMhzYwUTBl66lGGpiyqXZeBQP8fmT9Xz1PWnuVXniA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747300339; 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=YiPpzmehVFWR/NNfydjfdFSkVuGX1+bLyiMY44f6Fg8=; b=LKWrgxzXJaNB0X7LetLFoQVi2xD6uropdY7/tb7EMCnVTryvDk4iVFXd7XCQBRYgA8HMOg Sqg07fu4zkuJF/fWuwt+OQg8tsrGn4ZhyupxsI2izqPB3cjwIyjd1HOnGk80FvB7b1LK3R +fJqdxGircWjw8BxQcYDd1xdyGKSEzoHlsKi5RxHg3XyPYhTMiVtJqFCm0qgpGrpAgXxtP OaJ7vcAGTAEMqdticS6MvpeKhqd409s+O8bguOcHHhMpv+xo7bOroqP9CV8uU0RV3Q8bgE nEccFcPEM0a8G9XD3kqfGLq/PkM6UPWfI9qR9E3IH0Fu3Yq0FyB19D/eK2BlQw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747300339; a=rsa-sha256; cv=none; b=Ih2wFS0dZr823SldfsYl7FWp0mrzwl817iVw/n9iWVNk60+0NCmbZOUT5KffqNHSdrX4M7 lcjOK4zwaKA3DgvEG+5Rn4bSe0n4/G8rgdbacbfstjvM0MsVAwz8Zs40aeLXSry2zBqsqG FNY5ROrftjXcXiH3XXDIHDe9/RD3+qgSL54d53Br5jEBpJVZmHdNIpoAAZudMsil4zqHnP gXcjOqo9DVeNKvhaFqVkN764o2RYjffPFGrN0LqOT6HzKGt5YGGMs/HRSB37d76jwf1Mrs so5tdNW4Y5J8giRmarqWxT6lVK2tdyWlUQB0K4tJzXhMWMrrfNzPl7lPoIDrjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zykxb5dKJz1B7q; Thu, 15 May 2025 09:12:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9CJNS076086; Thu, 15 May 2025 09:12:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9CJQ4076083; Thu, 15 May 2025 09:12:19 GMT (envelope-from git) Date: Thu, 15 May 2025 09:12:19 GMT Message-Id: <202505150912.54F9CJQ4076083@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: af907bb62414 - main - nfs server: only cn_pnbuf is initialized in nfsrvd_lookup() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: af907bb624141bd1aa1bd4586ea5b72d80780197 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=af907bb624141bd1aa1bd4586ea5b72d80780197 commit af907bb624141bd1aa1bd4586ea5b72d80780197 Author: Konstantin Belousov AuthorDate: 2025-05-14 23:07:47 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-15 01:07:52 +0000 nfs server: only cn_pnbuf is initialized in nfsrvd_lookup() PR: 286796 Reviewed by: rmacklem Sponsored by: The FreeBSD Foundation --- sys/fs/nfsserver/nfs_nfsdserv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsserver/nfs_nfsdserv.c b/sys/fs/nfsserver/nfs_nfsdserv.c index a855d6548265..b26fc59bcd6d 100644 --- a/sys/fs/nfsserver/nfs_nfsdserv.c +++ b/sys/fs/nfsserver/nfs_nfsdserv.c @@ -628,8 +628,8 @@ nfsrvd_lookup(struct nfsrv_descript *nd, __unused int isdgram, } if (!nd->nd_repstat) { /* Don't set OPENNAMED for Lookupp (".."). */ - if (cnp->cn_namelen == 2 && *cnp->cn_nameptr == '.' && - *(cnp->cn_nameptr + 1) == '.') + if (cnp->cn_namelen == 2 && *cnp->cn_pnbuf == '.' && + *(cnp->cn_pnbuf + 1) == '.') cnp->cn_flags &= ~OPENNAMED; nd->nd_repstat = nfsvno_namei(nd, &named, dp, 0, exp, &dirp); } else { From nobody Thu May 15 09:34:08 2025 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 4ZylQm4GgLz5w38N; Thu, 15 May 2025 09:34:08 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylQm3fBMz43mw; Thu, 15 May 2025 09:34:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747301648; 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=lcwgv2GXBPi+VGL708gdKrZxaCw9nzlP9fu69PxpeN0=; b=KPeoR8cEkqxaqhPTIddNRCcoJz+3ICoKN4dIEDJsYL7Nu/qmTJWKFCvikXYGVBqeBhS97Q CXG0IuVTpW7/XXWzhjAXf4p6leJQ+34cJ3jvNSpmfXW1saMXEHbR24QymY+Nl7KqOjiZkY fblqJ9Y75ArYnrkFMz2Pg0hHL1rZnZbECwDI3JUPlvnHaylRhOrc0/+GW43PpV4lzvIF/m snHTrOv+IZjIzBgdAWwjmZeXlbc5bjT4butoy2kCyTSRPNm7f5NZdbU1hnM6a0jvLmGdnV f9ylG7bxqRmXMNka7ZmFWYnAnLZLnWYGsvAKmiri4qgLHmyyfXaRJ06wRLq3Vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747301648; 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=lcwgv2GXBPi+VGL708gdKrZxaCw9nzlP9fu69PxpeN0=; b=GvLI6JSD3G7v4WTcczs1JhdijKTDIiMyi9oaCX5y1sLDs98aS9x9ettVFcWWDiAoASUdhu yaj53qGDftnVPRwswFbixKvAbO+2+LCad9IRElTXi09btQYdyz9DdHyZ8hSHGbtoxtNwf5 c13J6IAtq3ioJmFOnFGC479IC6rcbLyNwIVzat0WB0AgIMlsEBFbHGpDBhXuxSGOFPcklV GlqtO34P0sBG5uM4JbBmOx/oRcO/3Esd0unRiAy5DrEWcaFOLZ8F2FmzTILwztKxZJSSiO a38hSwvgFDIjGrMnLG8CkzWuyXMfKRBg0Zxgdto44Guh9onb/YkJpHjvyY6cYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747301648; a=rsa-sha256; cv=none; b=rHsP+zHwHMfb6ta9MU86PP21JZN5+OOcShhL6xcjpTZSMMaNwnoWwpGOOhyr5vKyaIUDGc i62gHc9yz9EkNAwk4JAbhQhUADERWJBEom+3Yr3SGYiRtJ1OTmsHJBevvBHCfPdrls0Yrv zVSZY/DvKKDKY5hrBpgl7f+wQU2vu5LqP9El2PULhuuIt1WO0E5MihUMOnGAr2DKu2g7Ac XNpEWNUZBQBOMK0H9eu2z5ZbxICiA9nOaqq0r1fY5gSF/wwfDQ1gkJK0sLa6aD+yQAY5UC LEZw4j8v0tw5lTGMA1il9ltWI/42avP4sFp5ra7MiSKgfmIE3ztUrnM4vcupYw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylQm3FlHz1BVw; Thu, 15 May 2025 09:34:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9Y8QH014256; Thu, 15 May 2025 09:34:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9Y8hn014253; Thu, 15 May 2025 09:34:08 GMT (envelope-from git) Date: Thu, 15 May 2025 09:34:08 GMT Message-Id: <202505150934.54F9Y8hn014253@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d90c9c24e2c3 - main - vfs: vn_alloc(): Stop always calling vn_alloc_hard() and direct reclaiming 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d90c9c24e2c3701949c47061b5ad198eedeebfb9 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d90c9c24e2c3701949c47061b5ad198eedeebfb9 commit d90c9c24e2c3701949c47061b5ad198eedeebfb9 Author: Olivier Certner AuthorDate: 2025-05-13 13:47:42 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 09:33:33 +0000 vfs: vn_alloc(): Stop always calling vn_alloc_hard() and direct reclaiming Commit ab05a1cf321aca0f intended to revert commit 8733bc277a383cf5 ("vfs: don't provoke recycling non-free vnodes without a good reason"), but due to intervening changes in commit 054f45e026d898bd ("vfs: further speed up continuous free vnode recycle"), it also had to revert part of it. In particular, while removing the whole 'if (vn_alloc_cyclecount != 0)' block, it inadvertantly removed the code block resetting 'vn_alloc_cyclecount' to 0 and skipping direct vnode reclamation (done further below through vnlru_free_locked_direct()), which had been outside the 'if' before the intervening commit. Removing this block instead of reinstating it in practice causes 'vn_alloc_cyclecount' to (almost) never be 0, making vn_alloc() always call vn_alloc_hard(), which takes the 'vnode_list_mtx' mutex. In other words, this disables the fast path. [The reverted commit, which introduced the 'if (vn_alloc_cyclecount != 0)' guarding this block, actually never executed it because it also had the bug that 'vn_alloc_cyclecount' would always stay at 0, hiding its usefulness.] Additionally, not skipping direct vnode reclamation even when there are less vnodes than 'kern.maxvnodes' not only causes unnecessary contention but also plain livelocks as vnlru_free_locked_direct() does not itself check whether there are actually "free" (not referenced) vnodes to be deallocated, and will blindly browse all the vnode list until it finds one (which it may not, or only a few ones at the end). As the fast path was disabled, all threads in the system would soon be competing for the vnode list lock, outpacing the vnlru process that could never actually recycle vnodes in a more agressive manner (i.e., even if they have a non-zero hold count). And we could more easily get into this situation, as each vnode allocation was reducing the count of "free" vnodes, even if entirely new vnodes could be allocated instead. This part was mitigated by the vnlru process (before the tipping point described above), which explains why the mechanism would not always livelock. Not skipping direct vnode reclamation was arguably a bug introduced by the intervening commit (054f45e026d898bd), but was mitigated by vn_alloc_hard() not being called in the fast path. The revert commit, by disabling the fast path, made it significantly annoying (to the point of getting a few livelocks a week in some of my workloads). Restore the reset of 'vn_alloc_cyclecount' to 0 and skip direct reclamation when the current number of vnodes is below the 'kern.maxvnodes' limit, indicating we can start allocating a new 'struct vnode' right away. While here, fix the comparison with the limit when 'bumped' is true. Reviewed by: kib (older version), avg Tested by: avg, olce Fixes: ab05a1cf321aca0f (revert of "vfs: don't provoke recycling non-free vnodes without a good reason") Fixes: 054f45e026d898bd ("vfs: further speed up continuous free vnode recycle") MFC after: 5 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50338 --- sys/kern/vfs_subr.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index fb624f751402..5fdd4b6c2474 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1996,11 +1996,24 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) mtx_lock(&vnode_list_mtx); + /* + * Reload 'numvnodes', as since we acquired the lock, it may have + * changed significantly if we waited, and 'rnumvnodes' above was only + * actually passed if 'bumped' is true (else it is 0). + */ + rnumvnodes = atomic_load_long(&numvnodes); + if (rnumvnodes + !bumped < desiredvnodes) { + vn_alloc_cyclecount = 0; + mtx_unlock(&vnode_list_mtx); + goto alloc; + } + rfreevnodes = vnlru_read_freevnodes(); if (vn_alloc_cyclecount++ >= rfreevnodes) { vn_alloc_cyclecount = 0; vstir = true; } + /* * Grow the vnode cache if it will not be above its target max after * growing. Otherwise, if there is at least one free vnode, try to From nobody Thu May 15 09:52:58 2025 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 4ZylrV3W65z5w3xV; Thu, 15 May 2025 09:52:58 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylrV2LFCz49nJ; Thu, 15 May 2025 09:52:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302778; 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=EWjTHPy2ksnO2C+ndbrOWCgwpklzHFculdAqkDFXeFA=; b=o5ZIt/Vu4KcWjCG2ajSWkbggD8E7cgk41Y50FCVjpNxWX3X4tAxmuPucPbCmPcHAGdGO49 Fe4Fz/fj2SwHi818XtcKzucUzDZ5Zjqf5TtPYD87jClT9cfdlorS1VLBjir1g32rOY/Ya+ Wo+5hah8twoWwbp27xMThlLcC4IVfUD3kOGg5x0ly2SftKMzLopPw4Sn0+ImkmU1a5A5Lq WnIz00RV3RJHF3RK4H0kOkKhjXM+u172W5E1qjIsMvfPZsqy0AFofUtn+KB4TtkxrzXR4c U1Osig4iLWRgTU4VTc3ry+zCANfaeXprx5xPiej22tKS+vR2InyJytDKo0IsSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302778; 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=EWjTHPy2ksnO2C+ndbrOWCgwpklzHFculdAqkDFXeFA=; b=TNqTYqvvkDYm/rtqUR2ns9aqUQvWC2gmQ5IvpDd7uABroGY2QwMmc1u1nKGERV+vA6stnt fJYF6DtEGb9y6OnU7rtZfNkw7+joDu1d8WUg5xiU+gyPQRlzcq8lu89ad6sjUZeQGp7TDL VS/WDXvL90toryGxdNTz2rwsSu/eA4j251dbchxeg4EOgOeUYhcCKIqbsX7CzsM0VVt2lk FKZsYQJXpsgeXeu3kyPIR2KZVuef5Dzf/RfKc5m0xOECEZjI7im2W7ZBgLQ9O1BVBIXK6D PHxLs3DOQZl6NHo5AEPRiAwSo9kIOcOEehBfctG9HwzJzH7CKA/Fs8MIxeus1Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302778; a=rsa-sha256; cv=none; b=Dj8dxdsKCel1J8Dp/g5QDeUF7TiauRWv9cPkcV/+tUX/OnTzNAikGswp9s0RBgJdyCDBuQ cE3hL4z9VOqkXFcxhBoJUcw3ENObtCab7RxVROsDHsxRNSanJgHXyDjDLJP1SRxVFGwJHr phqIL2e5rKqlX3taTXXWQ+7wPmmLAtYxHo1KvtmeYMGyieUvmFNUXoJAtzGIYM28+5D+C8 Q8kVcp8MdUwkt+lTzgRJ5Esp6LIELOlEG7Y0XtpzBaCmORQRWAwYeoSh4k6Q8YAPHKRXRz Ex8HuoxDnG8l2Ae1JEuwM0ftGt2iOUGRRNqB3BOomYRGKr135vksBsOBOM9Hxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylrV1mkCz1Bkh; Thu, 15 May 2025 09:52:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9qwdJ050702; Thu, 15 May 2025 09:52:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9qwku050699; Thu, 15 May 2025 09:52:58 GMT (envelope-from git) Date: Thu, 15 May 2025 09:52:58 GMT Message-Id: <202505150952.54F9qwku050699@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1fcc3d6dd5c5 - stable/14 - bnxt: add guards around struct_group macros 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1fcc3d6dd5c559ac6328f57d44ff11211d56088d Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1fcc3d6dd5c559ac6328f57d44ff11211d56088d commit 1fcc3d6dd5c559ac6328f57d44ff11211d56088d Author: Bjoern A. Zeeb AuthorDate: 2025-05-03 20:22:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:55 +0000 bnxt: add guards around struct_group macros The header file might be included after linux/stddef.h or others are included and the macros would be re-defined. Sponsored by: The FreeBSD Foundation Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D50156 (cherry picked from commit 152e6197615570e7a2f5f1c6c2ed00ecee9dd10c) --- sys/dev/bnxt/bnxt_en/bnxt_dcb.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/dev/bnxt/bnxt_en/bnxt_dcb.h b/sys/dev/bnxt/bnxt_en/bnxt_dcb.h index 293f1b85dad5..fa68401583ca 100644 --- a/sys/dev/bnxt/bnxt_en/bnxt_dcb.h +++ b/sys/dev/bnxt/bnxt_en/bnxt_dcb.h @@ -40,13 +40,17 @@ #define BNXT_DCB_CAP_DCBX_VER_IEEE 0x08 #define BNXT_DCB_CAP_DCBX_STATIC 0x10 +#ifndef __struct_group #define __struct_group(TAG, NAME, ATTRS, MEMBERS...) \ union { \ struct { MEMBERS } ATTRS; \ struct TAG { MEMBERS } ATTRS NAME; \ } +#endif +#ifndef struct_group_attr #define struct_group_attr(NAME, ATTRS, MEMBERS...) \ __struct_group(/* no tag */, NAME, ATTRS, MEMBERS) +#endif struct bnxt_cos2bw_cfg { uint8_t pad[3]; From nobody Thu May 15 09:52:59 2025 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 4ZylrW3yWFz5w3s8; Thu, 15 May 2025 09:52:59 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylrW36T4z3C0H; Thu, 15 May 2025 09:52:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302779; 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=TrnDH0YpN/1aJv7r+fZAsQ1V9dI/izQ/z5IZpLVxdjg=; b=VzvgHROmDOYFt+7VfTkfEZXnhkNl9bqKcI65g93G2hG0acZjvU1gMf0LGID5RVJLDel7A1 v7vw6B5QJLTZMZPfYjNBTxt2ARgUeVtZjERtwTFrQKeRbhIE0Uo2XzHlGTy28A53cePmlT egXQoUa6HBquFRmGqDt/a9ariDB2hnabBjnJ7CkN/hs7nUsonvev1Jvyu/lYeyV/9PokPf PN6xMhgp+JmHAnUrGrg+8fgagdJTbfHkU+yUZ0oTU6pu0WPxdbUpLP2himtuXEs2OMhJx5 wKS5GxrHYZgyg9MN+XIzBPUlIJnPqKw6h/0g7faA/KrEYyFbtWMUIQbruso91g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302779; 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=TrnDH0YpN/1aJv7r+fZAsQ1V9dI/izQ/z5IZpLVxdjg=; b=gNHvKFwMc8JQSj0A66SX8cXHjrNxwJlG/QkXb8pFv/lg6v7vki6w8uvsWGTcb3CGaZQ1gG 69TjtPpFXSxxZvNNfDylito8XvupO9cHEAoHS92zEl+ldmwM0OyOIbJHorQU+IgjwPOWHi kyIukd1uSCQWK6pnkATnwWjnIUgGGPRBWxndVrYh04aNa0iQzgbnlYYjVJsMmyvo9qhS5R e1XrZwpjhx7cR1C0pUr3v5aOZXwsL8VGOGInu7pHqC7rWsV7PpqRj9OwehMYqKx+QRjUGl qNSSqvkGyY3FPvJqVjgFNJ4cKoE8ZiDWq+twoRt3cffds2BqSk5YS5LRaMEMLg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302779; a=rsa-sha256; cv=none; b=C8+C3wHuVBYBffZzZlfJAEXuHDimzFVRjhln95iaaZaioHiUGUO17qdiqh8svt2UFbaA4F RVK9ozfnmPdZynWgjQwvjiUx42pBGM4/Yg05uVk1e2XhoXUfWu8z+o2JyuNVhYMtWvX4BC 9wzKegQYWSWUiQcNTJ4JbY9n0P/duuwaoHYZil8ICuFgJK/lajgi3pdblEnNxobWTOIyVQ Kn/hm68UWKueqbnNeRoA3J/KzAqZ4GbJmDyU732KjW1hLxW3/OFJxdjHhihMCh76HNAGGU 6Wm71Dp7q80udjyk+S/hH1rSCJfr5L8iZ7LfwwiWfq/IIxirr+0iESYzshN3QA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylrW2jXvz1BV6; Thu, 15 May 2025 09:52:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9qxIb050740; Thu, 15 May 2025 09:52:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9qxlJ050737; Thu, 15 May 2025 09:52:59 GMT (envelope-from git) Date: Thu, 15 May 2025 09:52:59 GMT Message-Id: <202505150952.54F9qxlJ050737@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 96ee4e56125d - stable/14 - LinuxKPI: pci: deal with kobject_add() being able to fail 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 96ee4e56125de12280457c153f82868a7f2751e7 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=96ee4e56125de12280457c153f82868a7f2751e7 commit 96ee4e56125de12280457c153f82868a7f2751e7 Author: Bjoern A. Zeeb AuthorDate: 2025-05-04 19:58:15 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:55 +0000 LinuxKPI: pci: deal with kobject_add() being able to fail lkpifill_pci_dev() uses a sequene of kobject_init/set_name/add. The problem is that kobject_add could fail. Move the entire logic to the beginning of the function, switch to kobject_init_and_add() and check the return code. Make lkpifill_pci_dev() return the error and deal in the callers with a possible error accordingly. Sponsored by: The FreeBSD Foundation Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D50154 (cherry picked from commit 96e86aa6faa6fde4ff75fd757db55afe9e4be132) --- sys/compat/linuxkpi/common/src/linux_pci.c | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index 36dbac24496b..bee79f0478c8 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -310,9 +310,18 @@ lkpi_pci_dev_release(struct device *dev) spin_lock_destroy(&dev->devres_lock); } -static void +static int lkpifill_pci_dev(device_t dev, struct pci_dev *pdev) { + int error; + + error = kobject_init_and_add(&pdev->dev.kobj, &linux_dev_ktype, + &linux_root_device.kobj, device_get_nameunit(dev)); + if (error != 0) { + printf("%s:%d: kobject_init_and_add returned %d\n", + __func__, __LINE__, error); + return (error); + } pdev->devfn = PCI_DEVFN(pci_get_slot(dev), pci_get_function(dev)); pdev->vendor = pci_get_vendor(dev); @@ -342,12 +351,10 @@ lkpifill_pci_dev(device_t dev, struct pci_dev *pdev) pdev->msi_desc = malloc(pci_msi_count(dev) * sizeof(*pdev->msi_desc), M_DEVBUF, M_WAITOK | M_ZERO); - kobject_init(&pdev->dev.kobj, &linux_dev_ktype); - kobject_set_name(&pdev->dev.kobj, device_get_nameunit(dev)); - kobject_add(&pdev->dev.kobj, &linux_root_device.kobj, - kobject_name(&pdev->dev.kobj)); spin_lock_init(&pdev->dev.devres_lock); INIT_LIST_HEAD(&pdev->dev.devres_head); + + return (0); } static void @@ -375,9 +382,14 @@ struct pci_dev * lkpinew_pci_dev(device_t dev) { struct pci_dev *pdev; + int error; pdev = malloc(sizeof(*pdev), M_DEVBUF, M_WAITOK|M_ZERO); - lkpifill_pci_dev(dev, pdev); + error = lkpifill_pci_dev(dev, pdev); + if (error != 0) { + free(pdev, M_DEVBUF); + return (NULL); + } pdev->dev.release = lkpinew_pci_dev_release; return (pdev); @@ -508,7 +520,10 @@ linux_pci_attach_device(device_t dev, struct pci_driver *pdrv, device_set_ivars(dev, dinfo); } - lkpifill_pci_dev(dev, pdev); + error = lkpifill_pci_dev(dev, pdev); + if (error != 0) + return (error); + if (isdrm) PCI_GET_ID(device_get_parent(parent), parent, PCI_ID_RID, &rid); else From nobody Thu May 15 09:53:00 2025 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 4ZylrY2f9gz5w3tw; Thu, 15 May 2025 09:53:01 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylrX51dsz3C0R; Thu, 15 May 2025 09:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302780; 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=gmjszkNPYDm6TYNXCoDcu3oZw75P1+wH9mtTEQOEerQ=; b=PRhnaKzbyzDE1zapbeMMV6F+T9EQrqsciXZ7fkF4EetTxg1E7BzPR0XS6JXxYIyZ0GceB6 FfwJcCRJGKxfvYiStgVI3yHa7S1t0SM3zK3XbHlx4jDiSfOslRKEyxVZqWf53h+d1KzEH/ qz8PHAECkgwKmrL/5+FEl2SZtUKZIumrF6SDLRQHnYdy07X1l98m43CFNpeezjALLI/dTx 312+dCJDCNrgD1Mz9+R6n8GIKh7U07cIm5O1/aLPq5v07s/7ybsMXwpo24cRwfA2letTQL 5GqRic6pPgdxYuO42Vd2MCBfZd1YyRBrQlAPiEa8CMbUgjrAxig78enp60ieTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302780; 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=gmjszkNPYDm6TYNXCoDcu3oZw75P1+wH9mtTEQOEerQ=; b=E0lHpqqNsD99mAupOvOOPVWQGbx0A+pW0HuzfHoB9/vYKjoisFwMG2k4JDaNcLKKAGYID7 IJD0fFG32uTRkCZuBWnORL6zlfYsZWMlH115WeK+IfqCeWQ2VeyorAqEBtdfycjJAH72yO pKr3mG3raTLF+44BzSq/+L6bfcsUrsb8IPh6QgHVSCRdukSIQj5uoijQSzeO6f37teaA9v 3vcdKgrcDPGF2BFrJERddIxYsIx55R62XxMgs/YNFUq7PW+zDgFepZhpo1o0G/GtlYNkuJ lACM9PsuHDlzg0NtLwU3UUCq+HQzfauxJXFTFuKJnAB7vL2sl2bEDxD7AeyN9Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302780; a=rsa-sha256; cv=none; b=eRW0vyKWvnGCeEWF5GslmBTsiaHQRD+NZgP+vWQXqDlkW1VZbaY/iWY4GTbYtjr5rNSIZu AIhN+Xka+ailKT9LaWe9zi3HB/ZaA/bTT9ZFB40dzB9DMISJc24s7UZbXZTMwb6yyERgFc d1OOmXNd0iR8FdxMfxUJjX2RB77XFEBb0O6OZnrGR4QNmf6FXBuJJPfMUQJumuZxNUzrzE 0Z0Kdzl2igHX/X0L9onD6iSOnAOHZMFuwIMIR71I8gNYzUPrcb5NQossodkzZxaWxX2tcy oYtNyTthTF5Z3/8e1tX1WHAqelF77vIDdx/9g28Ap/3w4shDXyEedbfJI/mO3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylrX3fQVz1BHm; Thu, 15 May 2025 09:53:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9r0Hm050783; Thu, 15 May 2025 09:53:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9r0j6050780; Thu, 15 May 2025 09:53:00 GMT (envelope-from git) Date: Thu, 15 May 2025 09:53:00 GMT Message-Id: <202505150953.54F9r0j6050780@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: c6c953fc43d8 - stable/14 - LinuxKPI: pci: fix two errors in lkpi_pci_get_device() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c6c953fc43d86417bbf18a41a328c60f02a34c69 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c6c953fc43d86417bbf18a41a328c60f02a34c69 commit c6c953fc43d86417bbf18a41a328c60f02a34c69 Author: Bjoern A. Zeeb AuthorDate: 2025-05-04 20:02:07 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:55 +0000 LinuxKPI: pci: fix two errors in lkpi_pci_get_device() On any result we need to acquire a reference. pci_dev_get() deals with a NULL argument so we can simply pass what we "found" at the end. This will avoid reference count problems. If the iteration on the linux list in lkpi_pci_get_device() does not find a match pdev will still be defined at the end of the loop but not pointing to a valid pdev. Store the found entry in a 2nd variable which otherwise will be NULL. This will avoid random panics, usually in sysfs_remove_dir() when the reference gets released. Found during mt76 bringup. Sponsored by: The FreeBSD Foundation Fixes: 8f61992d7cc11 Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D50153 (cherry picked from commit 2c65f965146a7f822302715a439e17996d17453c) --- sys/compat/linuxkpi/common/src/linux_pci.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index bee79f0478c8..2c2f92082a4e 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -288,18 +288,22 @@ linux_pci_find(device_t dev, const struct pci_device_id **idp) struct pci_dev * lkpi_pci_get_device(uint16_t vendor, uint16_t device, struct pci_dev *odev) { - struct pci_dev *pdev; + struct pci_dev *pdev, *found; KASSERT(odev == NULL, ("%s: odev argument not yet supported\n", __func__)); + found = NULL; spin_lock(&pci_lock); list_for_each_entry(pdev, &pci_devices, links) { - if (pdev->vendor == vendor && pdev->device == device) + if (pdev->vendor == vendor && pdev->device == device) { + found = pdev; break; + } } + pci_dev_get(found); spin_unlock(&pci_lock); - return (pdev); + return (found); } static void From nobody Thu May 15 09:53:01 2025 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 4ZylrZ4lc3z5w3ty; Thu, 15 May 2025 09:53:02 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylrY5FJSz3BtD; Thu, 15 May 2025 09:53:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302781; 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=rxo+hWzLqWe0xTpKC07pJncbClJrsEmVFAI5S75hqe0=; b=ogh9T+n2BYs0dDuscZLPJ0XmiwBYeH6ge/2WNYAhHFPdIUXKwaGVxWrqadHkO4RquuyIUT CDsJVWYetl07bnuQa8fO7/zqhMy7463SX+19q2gRowT5TC0ZfygWVoBT+qWCMEJYVLXj0J R9GJ2a1RzKjUzm+LJH8PM6+S00JXSU05xsC07KKbuAOgW+aynzSNMiqVJPArZtCMQskWg+ NyoTcVwUg6Sp8ypXE3tqOitOd49nheNfo+tZ3iym686Oxku/082xCQpZ70klrvo9PkF3iX OfUvWqxWAPTxONvn+HvEpcb2rKD13+lqRfSIet3zczPTht7mpSFACZmxYdsmdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302781; 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=rxo+hWzLqWe0xTpKC07pJncbClJrsEmVFAI5S75hqe0=; b=LsTtL+YYAGSq9uqR5WLEHjrzS7kEjomcmtFQfSL5rGjbaF8nBZd0fOjGpvWC81K92NsvPV 9DKB9BKsURrMbL2807YlrHUoWM7OZthy2R+gPIjyytb0MOZH6obfP6yk1NvF1Wgor8XU0j 9O2EZs6T2KykOUa9xMHBf5VCiyjY3c1n2MUDBLVOsj5vXMSpvxzS1Yrs3xEh/6jjkkRdlX f/LLf0lmqylHBfj1rxacMJQkynEC1VHAt2N4yC4Bt6D70dSo/A69iXYgTtM7AMxyfrrIgi vOH0eXlZdkjq66P+ikmkYk3ujp2SXlmzB0L2BLPplDct+qt6d8JnItwHb37w7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302781; a=rsa-sha256; cv=none; b=Clwm/H6KRZ0bcGDKz2cnYZstLXLpeO16DGX/KA57lOV8/DzoV/V3DzZZhHzgDL9F31YQ7r MU6jr2Apv2yEg04os1jKm1guXBXICGMGzXmjSkfNqJwgICEyKvmEYyjqT5S4hsHGJUrUue xzSn5dlDgmrSoEILyMJwCJMFXqriJTq+pzcLfJsCyYPPD5yKH/6/w2NH9faMSKE7Z+s7Sl HjqgJ17mL0bXxKqMtGvCVJ2w7agPPK2iu/LxkfFqdMwf7kdmAe6Xjat9lpJ5fPM9zz8F3b xfyBjt/SXJTchodIhy65iH11oG2NMeMb5Q0m8l4T2CDnfJ5hL2Cvmq+8HSbbeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylrY4cbwz1BmY; Thu, 15 May 2025 09:53:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9r1fs050822; Thu, 15 May 2025 09:53:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9r1sl050819; Thu, 15 May 2025 09:53:01 GMT (envelope-from git) Date: Thu, 15 May 2025 09:53:01 GMT Message-Id: <202505150953.54F9r1sl050819@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ad937b02ed38 - stable/14 - LinuxKPI: add _devcd_free_sgtable() to devcoredump.h 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ad937b02ed3803525b1fd579c6ddf64be43c9a92 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ad937b02ed3803525b1fd579c6ddf64be43c9a92 commit ad937b02ed3803525b1fd579c6ddf64be43c9a92 Author: Bjoern A. Zeeb AuthorDate: 2025-04-24 11:13:35 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:56 +0000 LinuxKPI: add _devcd_free_sgtable() to devcoredump.h It may be that once we implement freeing of chained tables _devcd_free_sgtable() will become our _lkpi_dev_coredumpsg_free() but further investigations need to happen. For now make an updated iwlwifi driver happy which should not need more. Sponsored by: The FreeBSD Foundation Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D50006 (cherry picked from commit 71576ed24b56143429a3b6774a7862965c2dea88) --- sys/compat/linuxkpi/common/include/linux/devcoredump.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/devcoredump.h b/sys/compat/linuxkpi/common/include/linux/devcoredump.h index b58c490615ad..5fa06c6595a8 100644 --- a/sys/compat/linuxkpi/common/include/linux/devcoredump.h +++ b/sys/compat/linuxkpi/common/include/linux/devcoredump.h @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * - * Copyright (c) 2020 The FreeBSD Foundation + * Copyright (c) 2020-2025 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -71,4 +71,11 @@ dev_coredumpsg(struct device *dev __unused, struct scatterlist *table, _lkpi_dev_coredumpsg_free(table); } +static inline void +_devcd_free_sgtable(struct scatterlist *table) +{ + /* UNIMPLEMENTED */ + _lkpi_dev_coredumpsg_free(table); +} + #endif /* _LINUXKPI_LINUX_DEVCOREDUMP_H */ From nobody Thu May 15 09:53:02 2025 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 4Zylrb2CMgz5w40p; Thu, 15 May 2025 09:53:03 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZylrZ658fz49rX; Thu, 15 May 2025 09:53:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302783; 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=UnsFtN3CcocDJF9Kxq7hJJwttGPaVY+o4xG7c6lQR9c=; b=KMSTo1X2R4ADpMqlrRxkyAtWhAMJ8OgY3SndXOJOgNQ1/gIqnqN4YWw2hNGIA476fg1PDB v2ZgHOTGJXdx5qYyn1TBUdj4wQsJijJIB+ADAjRCoDtjB/YnZcA7Uutahb8rpopHE/m4hQ DlMtAgZi768hJ65NeL0p5t668Ou1JbOinYgucJRutbdf7yIT0VK9Qpzgf/xUWTdghMy84g zi84wyJPRwdaZXPgpCCwt7lsIux5V8G7H3pImmZE/E6PBYbiS4ekf19L5/MtWEuiNut1cz E6tQmubsQKGy2HcApss0mJq9tDXaA0Co1z5WMVtKg3MWwQm7WT9cgnXNJ8zABA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302783; 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=UnsFtN3CcocDJF9Kxq7hJJwttGPaVY+o4xG7c6lQR9c=; b=vNnj5qSTMS2G5vPL650AluWZ6mCCGZm8j09wJr3caPyFq3WTso4MV7mAKa/L1127K/F1nl dOJF5X/TLbBSpaidqfj0A9UJFcazL7T275fxeD2icYGlSmT6NPt3I8JDxbiK/g6tPsBs+y KfK6PZuBK/odiwSY3NGSdfhZaqyy6VZnnBGV1A/TtDUTM2qjRAb6X1j0B24wJE8l4BeaPA 0hjASDR6ogNTydESNmQDSOLP1BRT/2m8SyIO8nHXBE1djDVFAu/N5JSXQrMn/yqN+ji7/J cQZArwIy1HT5tIh/I8XU5UWJupqeNnYvuLA81Y/ewJhQs0POcWr0bKid1HDraA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302783; a=rsa-sha256; cv=none; b=ZBJrZjwq+71tpvxAJ19guV2OV7FsufqFLN0xu0hOXlgmiQSefw9I3IVSWTUflnc8qykIMQ XKSnNBtHeJB+BmxxmxQk+MTEtMvTgCW8aTTMazAX/YOaGMJ868fXrITbQBPajQ9tXhy8g4 p5C97QCSSNnyxqa5CuhzjUwhNGVq7F34Xd1FwpAOKKK71J0cn6dFcetRfN4qHTaLNSRG2T N05JFEiSRwjMqNACmnLPAXG0iwn6RES3dLOmWOE2BiiQKeg6JYqSrgIOFyA9jVoOs1Ti5m 4TeCVd5hqrohscWWuJmLhZDt4NDzIOkeDtKaKyGKoGzJxMe1+RlZVuMaLx0sIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZylrZ5Z7kz1BmZ; Thu, 15 May 2025 09:53:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9r28k050864; Thu, 15 May 2025 09:53:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9r2kC050861; Thu, 15 May 2025 09:53:02 GMT (envelope-from git) Date: Thu, 15 May 2025 09:53:02 GMT Message-Id: <202505150953.54F9r2kC050861@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1d70da6aa294 - stable/14 - LinuxKPI: add ktime_get_boottime_seconds() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1d70da6aa294b9b3c0963e41667a4f74b3125615 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1d70da6aa294b9b3c0963e41667a4f74b3125615 commit 1d70da6aa294b9b3c0963e41667a4f74b3125615 Author: Bjoern A. Zeeb AuthorDate: 2025-04-24 11:12:54 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:56 +0000 LinuxKPI: add ktime_get_boottime_seconds() ktime_get_boottime_seconds() is needed by an updated iwlwifi driver. Sposored by: The FreeBSD Foundation Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D50005 (cherry picked from commit 93b82146c43b8ecad4fd7694ec1daf6d79cca65c) --- sys/compat/linuxkpi/common/include/linux/ktime.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ktime.h b/sys/compat/linuxkpi/common/include/linux/ktime.h index 53c2abd64fc6..6a2f04f3d789 100644 --- a/sys/compat/linuxkpi/common/include/linux/ktime.h +++ b/sys/compat/linuxkpi/common/include/linux/ktime.h @@ -232,6 +232,13 @@ ktime_get_boottime_ns(void) return (ktime_to_ns(ktime_get_boottime())); } +static inline uint64_t +ktime_get_boottime_seconds(void) +{ + + return (ktime_divns(ktime_get_boottime(), NSEC_PER_SEC)); +} + static inline ktime_t ktime_get_real(void) { From nobody Thu May 15 09:53:03 2025 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 4Zylrc2qYZz5w40q; Thu, 15 May 2025 09:53:04 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zylrb6gMHz3C8p; Thu, 15 May 2025 09:53:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302783; 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=VFrB52Oelg6X33k1Z3lfbJHuIs6CrzLFC821lBfjKHI=; b=v8NSB9Z/u+qjHDlcFpbXPXo6hPVNWUE28Sdm1wxqW16rqcBPpOUfDoHxi+b3zCwdQbpOj5 I/zcdocpkILsKLIqo6s5O/hA7ar2HzT+4qTh3wbkLMXuv0H/ntKzjtDs6XJZSZpBjLUcOt 6b7Y6TZpya0u1IAJjfhFhggsL3udrT/97gNs2voTWMPKOkHcWxWzAssAAOYhoP1IfxgSVM aoRx0wEEkihjHTFOUxqRBwEm2zXInkk17hbis3WPaxcR+N/FCnoYTF/wmvFexEoIxZD3Mz hHXAnXxOwPzYOqA0MRGpszBz/5AykLTn3a7mCeD3EnPhfuesDgiNPRqWCASQTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747302783; 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=VFrB52Oelg6X33k1Z3lfbJHuIs6CrzLFC821lBfjKHI=; b=NUkkRhBWOkOfXthU5yigaZO3fyJ2gJ21+iGwlqvb5zjHAXFZAcPU96a4Y7cvnc+XbPWiUN uGN9Mj+u2tLV0BpCUYs7PNeSZ5QaxI0HofLb8djxGa0jXmS48m4LTqLPVgE7X4jLbP5Uzm no5Sj3WmDUN7bkQb1WyQlGqjWOM/FG7nOxLS+pe+d2sIqm3SXMXJKluWsSzuDzWULW3PFJ G1A6ISU7UR4a6G03Bjyb2xJUzU46dU+Z5SshQZy0S+HShlz1eDxcqc6DVQ0oTuymEYkqmH DbeTczRqSnNlOpeNwcpRULMiSOQqAB/pBlcoN/wDcUuETAeyjOXNrGeq6Q/pTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747302784; a=rsa-sha256; cv=none; b=DBttTnzU5FM3N5cNvpJDitpUH+JbMMEeuQeOi/CQkdXPiOJUaKlFCD+EvAIwzrY6ivRKNz FXvxGRwHJb2KkKzKvZ4q22t/x0TSLLGuz4W7NilrbO8/yCTSvXDr4o8yagGvfGWhMqadc/ s5cG0iqp5YM7ajLDmVpFHsHG+NeppYaTxRyO1a45wkD67Tfgdl1J9i9vqAMNRn7YEgWPCe GVNrJ6tp9Iwdlq+jhvo63Z6U5/ZdEvP1jGBf/u3/LsA0JNoQu86r7DeknAlAgDCBqIFFEY /KP4VMBty5Yk4FQ4E/xaCj7HXb+BlT6jmF+epgAxKVMp8S+Ck7D14cixffeCLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zylrb6CGcz1BHn; Thu, 15 May 2025 09:53:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54F9r3kb050904; Thu, 15 May 2025 09:53:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54F9r31S050901; Thu, 15 May 2025 09:53:03 GMT (envelope-from git) Date: Thu, 15 May 2025 09:53:03 GMT Message-Id: <202505150953.54F9r31S050901@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e0692e7bb6e8 - stable/14 - LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e0692e7bb6e8abcc55a2510dceea5f83e823a827 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e0692e7bb6e8abcc55a2510dceea5f83e823a827 commit e0692e7bb6e8abcc55a2510dceea5f83e823a827 Author: Bjoern A. Zeeb AuthorDate: 2025-05-12 15:12:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 09:50:56 +0000 LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed iwlwifi keeps logging 'Invalid TXQ id' even after previous changes to catch the BSS changed. The reason for this is that we do not error in the SCAN -> AUTH path as otherwise we would not have the state machine get us back to SCAN to clear up firmware state before auth/assoc to the new BSS. If we are not in synch as net80211 just swapped the iv_bss from under us, disable the TX queue for the (old) lsta to prevent the AUTH frame sent from sta_newstate() reaching the driver. After all we are not trying to authenticate to that node (sta) anymore. Sponsored by: The FreeBSD Foundation PR: 274382 (cherry picked from commit 16d987fe781780100a31df30b9edd79ebb54f957) --- sys/compat/linuxkpi/common/src/linux_80211.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index fb9a4bc0177b..82eaa64790b4 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2021,6 +2021,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int struct ieee80211_prep_tx_info prep_tx_info; uint32_t changed; int error; + bool synched; /* * In here we use vap->iv_bss until lvif->lvif_bss is set. @@ -2211,14 +2212,6 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int __func__, ni, ni->ni_drv_data)); lsta = ni->ni_drv_data; - /* - * Make sure in case the sta did not change and we re-add it, - * that we can tx again. - */ - LKPI_80211_LSTA_TXQ_LOCK(lsta); - lsta->txq_ready = true; - LKPI_80211_LSTA_TXQ_UNLOCK(lsta); - /* Insert the [l]sta into the list of known stations. */ list_add_tail(&lsta->lsta_list, &lvif->lsta_list); @@ -2292,10 +2285,10 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ieee80211_ref_node(lsta->ni); lvif->lvif_bss = lsta; if (lsta->ni == vap->iv_bss) { - lvif->lvif_bss_synched = true; + lvif->lvif_bss_synched = synched = true; } else { /* Set to un-synched no matter what. */ - lvif->lvif_bss_synched = false; + lvif->lvif_bss_synched = synched = false; /* * We do not error as someone has to take us down. * If we are followed by a 2nd, new net80211::join1() going to @@ -2305,9 +2298,20 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int * to net80211 as we never used the node beyond alloc()/free() * and we do not hold an extra reference for that anymore given * ni : lsta == 1:1. + * Problem is if we do not error a MGMT/AUTH frame will be + * sent from net80211::sta_newstate(); disable lsta queue below. */ } LKPI_80211_LVIF_UNLOCK(lvif); + /* + * Make sure in case the sta did not change and we re-added it, + * that we can tx again but only if the vif/iv_bss are in sync. + * Otherwise this should prevent the MGMT/AUTH frame from being + * sent triggering a warning in iwlwifi. + */ + LKPI_80211_LSTA_TXQ_LOCK(lsta); + lsta->txq_ready = synched; + LKPI_80211_LSTA_TXQ_UNLOCK(lsta); goto out_relocked; out: From nobody Thu May 15 11:54:28 2025 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 4ZypXh4BkKz5wD9M; Thu, 15 May 2025 11:54:28 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZypXh3NVQz494M; Thu, 15 May 2025 11:54:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747310068; 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=XuXvr1AbnAQEKK+nQEj4vFX+Jg2ccgLn6Mu6LZwDkKE=; b=Jz/0uPSR92q2a3nnGhi3zC3hGwYtsGO9aU9yYNGEAmf7248fSlqpWoleQyz09JzlXDD7BJ d6A35NSgi0f+a1o8j7XxvMm1b1kGrSS8CqCbEkevfPeFUcDbdvFrk3xt7ww2xdJTGISPMR sR6kaQeNd4i/9E+rSg15nWhJwsf5IkImAzE5NYh57AHdYAIx/guPMlMVoANPRq/8C202g6 hlFG2MIhPqxvc6pyRvJNofMhVR0LaqDzBI/+2WqCI4qqY7NAgpA4dg0IC44Mf1yC/DhJGh fEF/GDH9MEqNePRFhydLZLgmCQMooXSZY6yETXIrzcnsHIbLExXeqh8lLFibOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747310068; 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=XuXvr1AbnAQEKK+nQEj4vFX+Jg2ccgLn6Mu6LZwDkKE=; b=UOerFZpH62SXFPeaWghjS8Vm6mX39RcKfvtvdAo6K30dK1Xm2AkpGfUhJwfFOs/7xav9cP rbI1eYJMbWWBieZvFQPzj/a2hj460CGG2cNbGBmqiE1I6PXmwe3bbeowP9dov8PzaeM2xm cLBmLuLbd52SYWpForzthAou0/5ws4NP5TnKA+0m6Z31VB5QLk/L4ZHt8GMDRjI/gRsoIE g3psBbyxsTPXzCayXr+9ck0nAadSDKfw06ZpEmv5fcpVTXmB29hyfcfMUWp/G6z8t4gH8R 5G5js4mk3RsVJefkh1r+Y4tyqvKGvjzNlur1JIrC0Yn+XD2822m6jWQiAFvHqQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747310068; a=rsa-sha256; cv=none; b=u2wpepLKJvBFStg+jts5P4+ZxKO7s7vxs1gtyBQtn9rh88x3FNJFNNzmzdsaSU5Jao3o3G 54VbhIpJTSxRctVP+1MNazgxQoiRRr3FfgS6G/qOCsPgmBbUA36uO/BBDB0Bw4s/3iibAu EIPGXfWUWOekSFzkHqasuRnpY84sU5mpQtSXngZn2kz/++0cBMuIbp0bLxHKqDG3yftBwI IEQ5zS9xAHVp5G64C9Mkr+pPGQMACsqFrL3Eip5PbaxA/h48qqVi62ju9/OAHS7dbOmSpE YkfbTfP528YuPrZdSc8UvcJL5y/9OAliauxJfNVK/v4Ik8BCH56EoFpV80TLnA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZypXh2zh6z2Ln; Thu, 15 May 2025 11:54:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FBsSof076330; Thu, 15 May 2025 11:54:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FBsSEQ076327; Thu, 15 May 2025 11:54:28 GMT (envelope-from git) Date: Thu, 15 May 2025 11:54:28 GMT Message-Id: <202505151154.54FBsSEQ076327@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: b3fe9014c321 - main - cp: Avoid prepending ./ in file-to-file case. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b3fe9014c3214926e0347b891705aa2380f70f8c Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=b3fe9014c3214926e0347b891705aa2380f70f8c commit b3fe9014c3214926e0347b891705aa2380f70f8c Author: Dag-Erling Smørgrav AuthorDate: 2025-05-15 11:54:05 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-15 11:54:05 +0000 cp: Avoid prepending ./ in file-to-file case. * Make to.base large enough to hold a trailing separator. * Remove the separator from warning and error messages. * In the FILE_TO_FILE case, leave to.base empty. * In the FILE_TO_DIR and DIR_TO_DNE cases, append a separator to to.base once we've (optionally created and) opened it. * Thus, in the file-to-file case, we print an empty string followed by to.path, while in all other cases, to.base already contains the necessary separator. This fixes failures in tests that used cp and expected a specific error message and were surprised to see "./" pop up. Fixes: 82fc0d09e862 Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50357 --- bin/cp/cp.c | 38 ++++++++++++++++++++++++++++---------- bin/cp/extern.h | 2 +- bin/cp/utils.c | 50 +++++++++++++++++++++++++------------------------- 3 files changed, 54 insertions(+), 36 deletions(-) diff --git a/bin/cp/cp.c b/bin/cp/cp.c index c6b34198f20a..c76654f7df41 100644 --- a/bin/cp/cp.c +++ b/bin/cp/cp.c @@ -183,7 +183,12 @@ main(int argc, char *argv[]) sep--; *sep = '\0'; } - if (strlcpy(to.base, target, sizeof(to.base)) >= sizeof(to.base)) + /* + * Copy target into to.base, leaving room for a possible separator + * which will be appended later in the non-FILE_TO_FILE cases. + */ + if (strlcpy(to.base, target, sizeof(to.base) - 1) >= + sizeof(to.base) - 1) errc(1, ENAMETOOLONG, "%s", target); /* Set end of argument list for fts(3). */ @@ -264,7 +269,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) struct stat created_root_stat, to_stat, *curr_stat; FTS *ftsp; FTSENT *curr; - char *recpath = NULL; + char *recpath = NULL, *sep; int atflags, dne, badcp, len, rval; mode_t mask, mode; bool beneath = Rflag && type != FILE_TO_FILE; @@ -280,11 +285,17 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) if (type == FILE_TO_FILE) { to.dir = AT_FDCWD; to.end = to.path + strlcpy(to.path, to.base, sizeof(to.path)); - strlcpy(to.base, dot, sizeof(to.base)); + to.base[0] = '\0'; } else if (type == FILE_TO_DIR) { to.dir = open(to.base, O_DIRECTORY | O_SEARCH); if (to.dir < 0) err(1, "%s", to.base); + /* + * We have previously made sure there is room for this. + */ + sep = strchr(to.base, '\0'); + sep[0] = '/'; + sep[1] = '\0'; } if ((ftsp = fts_open(argv, fts_options, NULL)) == NULL) @@ -370,13 +381,20 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) umask(~mask); root_stat = &created_root_stat; curr->fts_number = 1; + /* + * We have previously made sure there is + * room for this. + */ + sep = strchr(to.base, '\0'); + sep[0] = '/'; + sep[1] = '\0'; } else { /* entering a directory; append its name to to.path */ len = snprintf(to.end, END(to.path) - to.end, "%s%s", to.end > to.path ? "/" : "", curr->fts_name); if (to.end + len >= END(to.path)) { *to.end = '\0'; - warnc(ENAMETOOLONG, "%s/%s%s%s", to.base, + warnc(ENAMETOOLONG, "%s%s%s%s", to.base, to.path, to.end > to.path ? "/" : "", curr->fts_name); fts_set(ftsp, curr, FTS_SKIP); @@ -448,7 +466,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) const char *path = *to.path ? to.path : dot; mode = curr_stat->st_mode; if (fchmodat(to.dir, path, mode & mask, 0) != 0) { - warn("chmod: %s/%s", to.base, to.path); + warn("chmod: %s%s", to.base, to.path); rval = 1; } } @@ -474,7 +492,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) to.end > to.path ? "/" : "", curr->fts_name); if (to.end + len >= END(to.path)) { *to.end = '\0'; - warnc(ENAMETOOLONG, "%s/%s%s%s", to.base, + warnc(ENAMETOOLONG, "%s%s%s%s", to.base, to.path, to.end > to.path ? "/" : "", curr->fts_name); badcp = rval = 1; @@ -506,7 +524,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) if (!dne && to_stat.st_dev == curr_stat->st_dev && to_stat.st_ino == curr_stat->st_ino) { - warnx("%s/%s and %s are identical (not copied).", + warnx("%s%s and %s are identical (not copied).", to.base, to.path, curr->fts_path); badcp = rval = 1; if (S_ISDIR(curr_stat->st_mode)) @@ -558,7 +576,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) if (~mask & S_IRWXU) umask(~mask & ~S_IRWXU); if (mkdirat(to.dir, to.path, mode) != 0) { - warn("%s/%s", to.base, to.path); + warn("%s%s", to.base, to.path); fts_set(ftsp, curr, FTS_SKIP); badcp = rval = 1; if (~mask & S_IRWXU) @@ -568,7 +586,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) if (~mask & S_IRWXU) umask(~mask); } else if (!S_ISDIR(to_stat.st_mode)) { - warnc(ENOTDIR, "%s/%s", to.base, to.path); + warnc(ENOTDIR, "%s%s", to.base, to.path); fts_set(ftsp, curr, FTS_SKIP); badcp = rval = 1; break; @@ -611,7 +629,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) break; } if (vflag && !badcp) - (void)printf("%s -> %s/%s\n", curr->fts_path, to.base, to.path); + (void)printf("%s -> %s%s\n", curr->fts_path, to.base, to.path); } if (errno) err(1, "fts_read"); diff --git a/bin/cp/extern.h b/bin/cp/extern.h index 5a18f91ef13c..c0c524756980 100644 --- a/bin/cp/extern.h +++ b/bin/cp/extern.h @@ -31,8 +31,8 @@ typedef struct { int dir; /* base directory handle */ + char base[PATH_MAX + 1]; /* base directory path */ char *end; /* pointer to NUL at end of path */ - char base[PATH_MAX]; /* base directory path */ char path[PATH_MAX]; /* target path */ } PATH_T; diff --git a/bin/cp/utils.c b/bin/cp/utils.c index a849899af7ee..3e669b4b513d 100644 --- a/bin/cp/utils.c +++ b/bin/cp/utils.c @@ -143,12 +143,12 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) if (!dne) { if (nflag) { if (vflag) - printf("%s/%s not overwritten\n", + printf("%s%s not overwritten\n", to.base, to.path); rval = 1; goto done; } else if (iflag) { - (void)fprintf(stderr, "overwrite %s/%s? %s", + (void)fprintf(stderr, "overwrite %s%s? %s", to.base, to.path, YESNO); checkch = ch = getchar(); while (ch != '\n' && ch != EOF) @@ -172,7 +172,7 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) if (lflag) { if (linkat(AT_FDCWD, entp->fts_path, to.dir, to.path, 0) != 0) { - warn("%s/%s", to.base, to.path); + warn("%s%s", to.base, to.path); rval = 1; } goto done; @@ -180,7 +180,7 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) if (sflag) { if (symlinkat(entp->fts_path, to.dir, to.path) != 0) { - warn("%s/%s", to.base, to.path); + warn("%s%s", to.base, to.path); rval = 1; } goto done; @@ -198,7 +198,7 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) fs->st_mode & ~(S_ISUID | S_ISGID)); } if (to_fd == -1) { - warn("%s/%s", to.base, to.path); + warn("%s%s", to.base, to.path); rval = 1; goto done; } @@ -220,7 +220,7 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) if (info) { info = 0; (void)fprintf(stderr, - "%s -> %s/%s %3d%%\n", + "%s -> %s%s %3d%%\n", entp->fts_path, to.base, to.path, cp_pct(wtotal, fs->st_size)); } @@ -241,7 +241,7 @@ copy_file(const FTSENT *entp, bool dne, bool beneath) if (pflag && preserve_fd_acls(from_fd, to_fd) != 0) rval = 1; if (close(to_fd)) { - warn("%s/%s", to.base, to.path); + warn("%s%s", to.base, to.path); rval = 1; } @@ -260,7 +260,7 @@ copy_link(const FTSENT *p, bool dne, bool beneath) if (!dne && nflag) { if (vflag) - printf("%s/%s not overwritten\n", to.base, to.path); + printf("%s%s not overwritten\n", to.base, to.path); return (1); } if ((len = readlink(p->fts_path, llink, sizeof(llink) - 1)) == -1) { @@ -269,7 +269,7 @@ copy_link(const FTSENT *p, bool dne, bool beneath) } llink[len] = '\0'; if (!dne && unlinkat(to.dir, to.path, atflags) != 0) { - warn("unlink: %s/%s", to.base, to.path); + warn("unlink: %s%s", to.base, to.path); return (1); } if (symlinkat(llink, to.dir, to.path) != 0) { @@ -286,15 +286,15 @@ copy_fifo(struct stat *from_stat, bool dne, bool beneath) if (!dne && nflag) { if (vflag) - printf("%s/%s not overwritten\n", to.base, to.path); + printf("%s%s not overwritten\n", to.base, to.path); return (1); } if (!dne && unlinkat(to.dir, to.path, atflags) != 0) { - warn("unlink: %s/%s", to.base, to.path); + warn("unlink: %s%s", to.base, to.path); return (1); } if (mkfifoat(to.dir, to.path, from_stat->st_mode) != 0) { - warn("mkfifo: %s/%s", to.base, to.path); + warn("mkfifo: %s%s", to.base, to.path); return (1); } return (pflag ? setfile(from_stat, -1, beneath) : 0); @@ -307,15 +307,15 @@ copy_special(struct stat *from_stat, bool dne, bool beneath) if (!dne && nflag) { if (vflag) - printf("%s/%s not overwritten\n", to.base, to.path); + printf("%s%s not overwritten\n", to.base, to.path); return (1); } if (!dne && unlinkat(to.dir, to.path, atflags) != 0) { - warn("unlink: %s/%s", to.base, to.path); + warn("unlink: %s%s", to.base, to.path); return (1); } if (mknodat(to.dir, to.path, from_stat->st_mode, from_stat->st_rdev) != 0) { - warn("mknod: %s/%s", to.base, to.path); + warn("mknod: %s%s", to.base, to.path); return (1); } return (pflag ? setfile(from_stat, -1, beneath) : 0); @@ -341,7 +341,7 @@ setfile(struct stat *fs, int fd, bool beneath) tspec[1] = fs->st_mtim; if (fdval ? futimens(fd, tspec) : utimensat(to.dir, to.path, tspec, atflags)) { - warn("utimensat: %s/%s", to.base, to.path); + warn("utimensat: %s%s", to.base, to.path); rval = 1; } if (fdval ? fstat(fd, &ts) : @@ -362,7 +362,7 @@ setfile(struct stat *fs, int fd, bool beneath) if (fdval ? fchown(fd, fs->st_uid, fs->st_gid) : fchownat(to.dir, to.path, fs->st_uid, fs->st_gid, atflags)) { if (errno != EPERM) { - warn("chown: %s/%s", to.base, to.path); + warn("chown: %s%s", to.base, to.path); rval = 1; } fs->st_mode &= ~(S_ISUID | S_ISGID); @@ -372,7 +372,7 @@ setfile(struct stat *fs, int fd, bool beneath) if (!gotstat || fs->st_mode != ts.st_mode) { if (fdval ? fchmod(fd, fs->st_mode) : fchmodat(to.dir, to.path, fs->st_mode, atflags)) { - warn("chmod: %s/%s", to.base, to.path); + warn("chmod: %s%s", to.base, to.path); rval = 1; } } @@ -388,7 +388,7 @@ setfile(struct stat *fs, int fd, bool beneath) * that we copied, i.e., that we didn't create.) */ if (errno != EOPNOTSUPP || fs->st_flags != 0) { - warn("chflags: %s/%s", to.base, to.path); + warn("chflags: %s%s", to.base, to.path); rval = 1; } } @@ -409,7 +409,7 @@ preserve_fd_acls(int source_fd, int dest_fd) acl_supported = 1; acl_type = ACL_TYPE_NFS4; } else if (ret < 0 && errno != EINVAL) { - warn("fpathconf(..., _PC_ACL_NFS4) failed for %s/%s", + warn("fpathconf(..., _PC_ACL_NFS4) failed for %s%s", to.base, to.path); return (-1); } @@ -419,7 +419,7 @@ preserve_fd_acls(int source_fd, int dest_fd) acl_supported = 1; acl_type = ACL_TYPE_ACCESS; } else if (ret < 0 && errno != EINVAL) { - warn("fpathconf(..., _PC_ACL_EXTENDED) failed for %s/%s", + warn("fpathconf(..., _PC_ACL_EXTENDED) failed for %s%s", to.base, to.path); return (-1); } @@ -429,12 +429,12 @@ preserve_fd_acls(int source_fd, int dest_fd) acl = acl_get_fd_np(source_fd, acl_type); if (acl == NULL) { - warn("failed to get acl entries while setting %s/%s", + warn("failed to get acl entries while setting %s%s", to.base, to.path); return (-1); } if (acl_is_trivial_np(acl, &trivial)) { - warn("acl_is_trivial() failed for %s/%s", + warn("acl_is_trivial() failed for %s%s", to.base, to.path); acl_free(acl); return (-1); @@ -444,7 +444,7 @@ preserve_fd_acls(int source_fd, int dest_fd) return (0); } if (acl_set_fd_np(dest_fd, acl, acl_type) < 0) { - warn("failed to set acl entries for %s/%s", + warn("failed to set acl entries for %s%s", to.base, to.path); acl_free(acl); return (-1); @@ -465,7 +465,7 @@ preserve_dir_acls(const char *source_dir, const char *dest_dir) dest_fd = (*dest_dir == '\0') ? to.dir : openat(to.dir, dest_dir, O_DIRECTORY, AT_RESOLVE_BENEATH); if (dest_fd < 0) { - warn("%s: failed to copy ACLs to %s/%s", source_dir, + warn("%s: failed to copy ACLs to %s%s", source_dir, to.base, dest_dir); close(source_fd); return (-1); From nobody Thu May 15 12:44:59 2025 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 4Zyqfz5HBYz5wHlB; Thu, 15 May 2025 12:44:59 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyqfz4rXRz3ZN7; Thu, 15 May 2025 12:44:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747313099; 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=+RhVlvt8/fMc7MM3voyGjRtnUrgKsKd+2iaxMKL2j6M=; b=g8dmj3BM4UqmhXIxUSrSq9Oo0A+MxgnjfZNX4MPpUSHBQqkZj1J2VfwUzJpEBuxY3+jEgX ihv8RbvNDJAyJQfzwLVMfhWdNjErTJP5w4spIG7KnK3OKYbf4O2gY736fqNErX2kvwiebz J626UlS1lqJLeOZXCOkeLfk6+9iOU1jQwvUkCkXlk862TpRXt6ftI63C7k0uv2xfZ37mbG UN9Rp7qn2Pe2qnpVnmhMeDePqtu8hNsQQmcGpRUMW4DfPdGM7vqtPRfzYCBSibBqofWIGm PWfxEBQJt5j4euS5qvp6h4YTmBEtUcEReTLWWWuTvsyfw6WIgkiyfIqIfQaT7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747313099; 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=+RhVlvt8/fMc7MM3voyGjRtnUrgKsKd+2iaxMKL2j6M=; b=gbxU5JrtMtofYOUX/Sob85yWFRO8EV0piX4W7GqXeoTCbzVrPFjfI4ITMvSJkSU5oFaXKt HnxeWNjg5kANKxafGjgMA9wWCiVgTGW739EPPjBOAhMocHjM2TRNZMQTLxkH3z5LYjy69N 6vkP1F7Pt3j+8Z3mI6rU7vmO5E9Qj74VqdAL00otMMt60eZND4ROus9ByYLLgANia38i2R jHAo6FxC/aqp2pLOcZMZXNFW31NjVto++khuxsKwFipcxcIzq1r8fmfGJoI/kGesTsgqf0 QZQXfQwGwArRA//OCbz8Uy0PVLUWuTCydKe0+ag6wScGOvOianFGVf3thFMvMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747313099; a=rsa-sha256; cv=none; b=ykbL18+DKIFK/V1EDfOg29RLWlw1djFaiViloPaYeK3rxgnFZDh5M2L6JQXMnReptatJh8 BYGkoL2ykfFZwA2g7+PSSU44oPylhMB8D3BEmUywBgCgcbraQnhAKfcGGnCN8LrHwtdV61 V/+88Z+M1ze/XCmNBz9UDh2mawlXMZptVmFlny7PXRDmN42JMgquQIarlrc2NKCBKhe8qQ O6B+XZkmmB6KTYOQYWcVMWfAqYNojdASJk0DGxeGtOG2zqBwERxqJa4EwlLVfKSFlm7LmF +asVJxjX/Xd2dXFYHZ1tSbd6ABeJd06YX5yiVvD+JRILaDUt3ykago4yXt/Uwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyqfz3ylQz3P6; Thu, 15 May 2025 12:44:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FCixQG070024; Thu, 15 May 2025 12:44:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FCixIh070020; Thu, 15 May 2025 12:44:59 GMT (envelope-from git) Date: Thu, 15 May 2025 12:44:59 GMT Message-Id: <202505151244.54FCixIh070020@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: c808bee35b11 - main - e6000sw.4: Add HISTORY 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c808bee35b1129abd9af137204ebd15559b90b5b Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=c808bee35b1129abd9af137204ebd15559b90b5b commit c808bee35b1129abd9af137204ebd15559b90b5b Author: Alexander Ziaee AuthorDate: 2025-05-15 01:02:25 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-15 12:42:32 +0000 e6000sw.4: Add HISTORY MFC after: 3 days Reviewed by: mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50358 --- share/man/man4/e6000sw.4 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/share/man/man4/e6000sw.4 b/share/man/man4/e6000sw.4 index cbec33e459f8..92a3b5c8ed0b 100644 --- a/share/man/man4/e6000sw.4 +++ b/share/man/man4/e6000sw.4 @@ -39,3 +39,8 @@ Marvell 88E6141 .Xr e6060sw 4 , .Xr etherswitch 4 , .Xr etherswitchcfg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 11.0 . From nobody Thu May 15 13:07:47 2025 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 4Zyr9H3Xwpz5wKQD; Thu, 15 May 2025 13:07:47 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyr9H2r9kz3l85; Thu, 15 May 2025 13:07:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747314467; 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=AaxkLdAuOFgHujv7MSuCF9n9YMiIGsTffuPEOScVvTc=; b=qioVSuqANARkziFfijMBhWeRit9boawfaAV3KUJukLQgOnyCY0YGRhbxFXyFyZ/wMhpmU9 wSGNnEKH8JYZDdjwMuXnfh0nzaBkhMB6ULtpJcc2XcYWO/RkIOldyZ35/W574olDBa1XXc sfgHg48QWwQtchSnelSRXNfzlIuziJArKA9HTlgeBiG0RWt6VqkEaSlQ6jR4h9AvuzlfY1 c7c3YVhMGdjkD0TbqDxZmmcAiJtTkMAr/0OMS6k0gAQeeFvVprxVgP3X1eNzxLO3n8Xtw6 HWBY0YRe6xmwkJkhj5LrvRPst3dphumkp4atx/XGQxV32sztLBeBVWIeSjaQHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747314467; 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=AaxkLdAuOFgHujv7MSuCF9n9YMiIGsTffuPEOScVvTc=; b=F6+NGlCFH4Mz9a0yrmMYjqp/b9Awk1KcMVNQ7KffB/gg0NJy3nnvBzIuPTkux+UbcITCe6 7ZS1/zDZFUE+rqR1u/nzT/Bli+QiZO4zsLZ14pYwaSCjnrVP5TLvOUNf6FBNHyl0ob3hVa Qa6xZa665G5Bl6QF33wLSj8THs1RbK0hZl+bQfVWJxbI/ivIvdz0MY8wtcBu/rR32AmnGD bshXiMwtK4DI9SpDl6ONQSxZhu2H9SvXEAOjgKyYuWGQ1fUCndN5k7W6sQU+Vt5+D4X1/L Uq15hmJ5fzEfOWWuP1NCK9zrrkKtTZRTOz17IsAE9+r4oIO88HgqUNV/GQYhqA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747314467; a=rsa-sha256; cv=none; b=BGJBETpTjpMeGWAE/wBP4ubc0AmxQcv/A6Pd3Sl4kpnhkxUc1CEPHiJhBQ7acW+BpmMQCM uiLq7UBsDl7GmoKfRk2nDl5lqjzV5zKkGyj0DR5ccyIi5OZB0NedQrO+xLfIEqTZ5Gc6Wl ygrdxMQMNSJ/POY7vjU44YZr1EKfN6ilfVYcewzl3DvSQhX4lBBT03zF+eoHNuvdNLa7d4 LJc8EwSaRNNR8yZU/w+FOQn4nwO8QzSK+hc6tK7RVBLT7TlxwtZqb6mscZs82vHoBOnCgl sAHF3pPT1vbYYMV1oyFBRdguH5S0tvG/XsUi6vbXM/Kg+KRUo9Him9yJOfPJyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyr9H2MYMz3bq; Thu, 15 May 2025 13:07:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FD7lPr008980; Thu, 15 May 2025 13:07:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FD7lnq008977; Thu, 15 May 2025 13:07:47 GMT (envelope-from git) Date: Thu, 15 May 2025 13:07:47 GMT Message-Id: <202505151307.54FD7lnq008977@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Justin Hibbits Subject: git: ac1943f97c01 - releng/14.3 - powerpc: Always use BE tag in nexus_map_resource 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: ac1943f97c01b0ef049a9bfd81cf2b4a05d0a9d9 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=ac1943f97c01b0ef049a9bfd81cf2b4a05d0a9d9 commit ac1943f97c01b0ef049a9bfd81cf2b4a05d0a9d9 Author: Justin Hibbits AuthorDate: 2025-05-13 01:35:14 +0000 Commit: Justin Hibbits CommitDate: 2025-05-15 13:06:51 +0000 powerpc: Always use BE tag in nexus_map_resource 7b5a5e4e replaced nexus_activate_resource() with the bus generic equivalent, which uses bus_map_resource(). However, though not intended to have a functional change, nexus_map_resource() uses the bus tag of the build (BE vs LE), while nexus_activate_resource() always explicitly set a big-endian tag, leading to failures on powerpc64le now. Using BE unless otherwise explicitly specified with the RF_LITTLEENDIAN fixes LE on bare metal, and doesn't hurt in a VM, which nexus_map_resource() was added for. Reported by: pkubaj Tested by: pkubaj Fixes: 7b5a5e4e("powerpc nexus: Use bus_generic_rman_*") MFC after: 1 day Approved by: re(cperciva) (cherry picked from commit c4921a0faaf1683f39347dd066000d929c39c8b9) (cherry picked from commit 45d585ab7f222ca36988c406df528128a17f9884) --- sys/powerpc/powerpc/nexus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 826e75daa374..b40bb26fd395 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -289,7 +289,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, if ((rman_get_flags(r) & RF_LITTLEENDIAN) != 0) map->r_bustag = &bs_le_tag; else - map->r_bustag = nexus_get_bus_tag(NULL, NULL); + map->r_bustag = &bs_be_tag; map->r_size = length; map->r_bushandle = (bus_space_handle_t)map->r_vaddr; break; From nobody Thu May 15 13:53:56 2025 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 4ZysBX2p0Sz5wNJd; Thu, 15 May 2025 13:53:56 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZysBX1hwjz3Hxx; Thu, 15 May 2025 13:53:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317236; 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=OwJHGQW6BydlJNFDpT5cDO5xsGz23DlkHmo6pX9th1w=; b=YR3A34NUYi4s2Dt/u7CV9tG/gukUX15IWJiU1d4kgNYMbJreucgePP6UoB0zRrMnFDu1YF INDjhOGmJHoBbsiYMOjLtv7SlE9GIbKvsGE5mwHry0BwosnaqL8UMVxFpW4aNvtxORhlY0 kwXsCCGDgNNFAAt4O0w+TjPR2eU+W1lNXRxf2mrpQQGIcoIZcgufsfQmqRcWFfB8wYizX3 8KW1Ue8QPhprLfR28gOAVX7rUT9jeKKtmU2C4pMePrla4A2nPytbVzO9yLLFYTYjCCztEK TvHylXQ1GdPeb2nUYKrtxFsS9QampC5DP9/B4yxlrDgC6yf6w5IBwiFKtZtNEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317236; 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=OwJHGQW6BydlJNFDpT5cDO5xsGz23DlkHmo6pX9th1w=; b=nWFynkfbFk8mgSWZrxOp1KoLiwX6B+jZ3NOy+XqTMfQgJ8/2Wd+Z+f53vEybwYNN7wRvTm w+Vqcp+O2mwei3HGhfNN10DefPBKhj+6rSwTbUSrzJaRa7MLqKTxKUTGHkVNxyvIHv/aH+ pdGFXCdqS2+tAkIbWnvUt68qaKvDYaYtKK7ZP4eDUM6HrQk8t/kxLIrHvej7e/BdnSWGMA phXbFY9rJVygEfNXkRC5GdOk+v2XyTvkMa53XVs0RU6fjtMRmtW6AhM3F4pP5CRUGlHPzE 6d51Gr3t22wNoNy8Vvo2MKkSaSsDnlujvtibn0PXR1CW3VwAf1roclSB8rSdxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747317236; a=rsa-sha256; cv=none; b=lGyT0rsaqCJBWvt/HERz201JPhpx5XNxW/qqpbnDaca2iLnOdnh1V+f5Vki4duZN8NApPF XbpmQ/Wwx+hmYrju2SmkUTBIha+EkmuCL/zZzg672xlM+Li7eqmCktdCQY7w6iBIQ0Ktxq 9z9hjNqyX6eD3TYugjFlWOwewiIiP7Uqm0uJmzu9sms/9rJsmGndqMoXc6qWQq+QOiAAOJ XnERVKmvyfsa9KKhLkR0lWPjshCrczEy97ROJzDvcXSIP8zLCLfMJeyFPPeZk/tJwOg3AS Jg7jaM7oWFu0eWgQkLk2T41HxSSOQ5xKcBj/MdkjtkLS7xqr/VqctzgMvhSedg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZysBX1FwTz4nK; Thu, 15 May 2025 13:53:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FDruwP000547; Thu, 15 May 2025 13:53:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FDru7I000544; Thu, 15 May 2025 13:53:56 GMT (envelope-from git) Date: Thu, 15 May 2025 13:53:56 GMT Message-Id: <202505151353.54FDru7I000544@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 13e520658ec0 - main - fdt_loader_cmd.c: fix compilation with DEBUG 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 13e520658ec0cce6e450a587aa3a2b560fc86616 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=13e520658ec0cce6e450a587aa3a2b560fc86616 commit 13e520658ec0cce6e450a587aa3a2b560fc86616 Author: Mitchell Horne AuthorDate: 2024-11-12 15:39:28 +0000 Commit: Mitchell Horne CommitDate: 2025-05-15 13:53:31 +0000 fdt_loader_cmd.c: fix compilation with DEBUG It was broken on 64-bit platforms. --- stand/fdt/fdt_loader_cmd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/fdt/fdt_loader_cmd.c b/stand/fdt/fdt_loader_cmd.c index c51e8c5ab583..226812a5d2a6 100644 --- a/stand/fdt/fdt_loader_cmd.c +++ b/stand/fdt/fdt_loader_cmd.c @@ -990,7 +990,7 @@ int fdt_copy(vm_offset_t va) { int err; - debugf("fdt_copy va 0x%08x\n", va); + debugf("fdt_copy va 0x%08jx\n", (uintmax_t)va); if (fdtp == NULL) { err = fdt_setup_fdtp(); if (err) { From nobody Thu May 15 14:01:48 2025 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 4ZysMc3L9rz5wPG5; Thu, 15 May 2025 14:01:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZysMc1krCz3QSY; Thu, 15 May 2025 14:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317708; 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=4hJRwro+XHr5eeFg8tO29ca7Uzu4eE8RWK1iJ6PC+UQ=; b=pEVsh+YBEuPoaKgNI2pakolW2FdbzLnMtFhZ11/pythdo9orqcWxuTxzGv9yDTFjxOSbYb 8ed5+qQs4R5fQgBmaid4Ht4uwHggUMiMgkjohYSTsfwFUqI4/KagsTdPRtOPkMB7MWNf4X I9ntongGMUfb8ociqbDKyYptQYU8X1EYzz43QspiYlmbaf5b6yOrjKi80NeLElnJc8z8qu lCknL7LlvaUwrjzWYK8OYyUXpTG/ho6vnUHxkYlnmpIpFEOTk/bOhcKPEnoE/iCVh6/M1z vrWqovad7b3FwXDKmFqSULAvDO+PX0ZuWNzkShOv6WVe6xLT30QvFxGWg0VSuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317708; 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=4hJRwro+XHr5eeFg8tO29ca7Uzu4eE8RWK1iJ6PC+UQ=; b=Gmy23oJ+v1HRbiE3vBmRSCV+i8OEsMksxarjTeO09YRcxOJ+T45IxsbLLIrH93EuOZ0jnH mKbAWgiTkMsk2C0+ai/9ZJtuFZJFlOO8YP8iXmx7AZohPifK916Qu1PBYyPxW0zpRyAVHi vJWP96VngnSj2RlG+idN8RrBX35snEPTfUPMxgngAANiootkn8++yw6p9NX8eVgXIztiH6 o5X8qXs2Q3Qjm8Pj/wZzaMaFfrNrFH6ci0Gept1+sfkw2Ocg5lfOe6XB5zN02hHyFM2lYv BJbUqvL+1UxyirIn3eD6eJZZFuxhnAtJAKYDciF7WBC4ngZ6SN3YECtZi/nPTw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747317708; a=rsa-sha256; cv=none; b=vBe62zSXRLy/uJYdzmG9Y4RfiVfuHdM0Gtbo5ya5HZSnE9DKyDFl9UKM6PTOBkSEVa8Qtq 3xOFSg0vpyX6F8CJ6tFCROM3hgBQ+L0U+cuLacwbKiTvWPlrlmU4Vg8hDsmgoDeEJuiCkR ArClObiWV7jZstj9PHSBo7QcpUL+PykmZ4ejX43ZpOkWd5OFz0n7u7u5NfERyF5s8IsR5p wyKVvXvouytNW5H1AJiGobP174o9cmnMindFAuEY2TfpFe2QDVW4ztk4lG9WRLv47yUBJq HXqT7EZbKS/dOmwhjbCQQqv2rRJ4NspYnq4mREVB/+ZZvkboddk7Fin7DgvO+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZysMc1LjPz59K; Thu, 15 May 2025 14:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FE1m7U018533; Thu, 15 May 2025 14:01:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FE1mBv018530; Thu, 15 May 2025 14:01:48 GMT (envelope-from git) Date: Thu, 15 May 2025 14:01:48 GMT Message-Id: <202505151401.54FE1mBv018530@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: e8b9d839b1fa - main - bhyve: make code to handle non-backed memory accesses MD 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e8b9d839b1fae2913dc861341b9363d41cd45173 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e8b9d839b1fae2913dc861341b9363d41cd45173 commit e8b9d839b1fae2913dc861341b9363d41cd45173 Author: Konstantin Belousov AuthorDate: 2025-05-01 07:11:00 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-15 14:01:40 +0000 bhyve: make code to handle non-backed memory accesses MD PR: 286467 Reviewed by: markj (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50116 --- usr.sbin/bhyve/aarch64/Makefile.inc | 1 + usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/mem.c | 26 ++++++++++++++++------ usr.sbin/bhyve/mem.h | 2 ++ usr.sbin/bhyve/mem_md.c | 44 +++++++++++++++++++++++++++++++++++++ usr.sbin/bhyve/riscv/Makefile.inc | 3 ++- 6 files changed, 69 insertions(+), 8 deletions(-) diff --git a/usr.sbin/bhyve/aarch64/Makefile.inc b/usr.sbin/bhyve/aarch64/Makefile.inc index af458e719d44..9f187a6e4db7 100644 --- a/usr.sbin/bhyve/aarch64/Makefile.inc +++ b/usr.sbin/bhyve/aarch64/Makefile.inc @@ -1,5 +1,6 @@ SRCS+= \ fdt.c \ + mem_md.c \ rtc_pl031.c \ uart_pl011.c diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 53320a70178b..0a9b13901978 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -7,6 +7,7 @@ SRCS+= \ inout.c \ ioapic.c \ kernemu_dev.c \ + mem_md.c \ mptbl.c \ pci_fbuf.c \ pci_gvt-d.c \ diff --git a/usr.sbin/bhyve/mem.c b/usr.sbin/bhyve/mem.c index b0c09dbf5ddf..2d7d012d084b 100644 --- a/usr.sbin/bhyve/mem.c +++ b/usr.sbin/bhyve/mem.c @@ -33,6 +33,7 @@ */ #include +#define _WANT_KERNEL_ERRNO 1 #include #include #include @@ -167,10 +168,13 @@ static int access_memory(struct vcpu *vcpu, uint64_t paddr, mem_cb_t *cb, void *arg) { struct mmio_rb_range *entry; + struct mem_range *mr; int err, perror, immutable, vcpuid; vcpuid = vcpu_id(vcpu); + mr = NULL; pthread_rwlock_rdlock(&mmio_rwlock); + /* * First check the per-vCPU cache */ @@ -185,14 +189,22 @@ access_memory(struct vcpu *vcpu, uint64_t paddr, mem_cb_t *cb, void *arg) if (mmio_rb_lookup(&mmio_rb_root, paddr, &entry) == 0) { /* Update the per-vCPU cache */ mmio_hint[vcpuid] = entry; - } else if (mmio_rb_lookup(&mmio_rb_fallback, paddr, &entry)) { - perror = pthread_rwlock_unlock(&mmio_rwlock); - assert(perror == 0); - return (ESRCH); + } else if (mmio_rb_lookup(&mmio_rb_fallback, paddr, + &entry) == 0) { + } else { + err = mmio_handle_non_backed_mem(vcpu, paddr, &mr); + if (err != 0) { + perror = pthread_rwlock_unlock(&mmio_rwlock); + assert(perror == 0); + return (err == EJUSTRETURN ? 0 : err); + } } } - assert(entry != NULL); + if (mr == NULL) { + assert(entry != NULL); + mr = &entry->mr_param; + } /* * An 'immutable' memory range is guaranteed to be never removed @@ -205,13 +217,13 @@ access_memory(struct vcpu *vcpu, uint64_t paddr, mem_cb_t *cb, void *arg) * deadlock on 'mmio_rwlock'. However by registering the extended * config space window as 'immutable' the deadlock can be avoided. */ - immutable = (entry->mr_param.flags & MEM_F_IMMUTABLE); + immutable = (mr->flags & MEM_F_IMMUTABLE) != 0; if (immutable) { perror = pthread_rwlock_unlock(&mmio_rwlock); assert(perror == 0); } - err = cb(vcpu, paddr, &entry->mr_param, arg); + err = cb(vcpu, paddr, mr, arg); if (!immutable) { perror = pthread_rwlock_unlock(&mmio_rwlock); diff --git a/usr.sbin/bhyve/mem.h b/usr.sbin/bhyve/mem.h index 90172d1c9124..d7544a6bce30 100644 --- a/usr.sbin/bhyve/mem.h +++ b/usr.sbin/bhyve/mem.h @@ -53,6 +53,8 @@ struct mem_range { void init_mem(int ncpu); int emulate_mem(struct vcpu *vcpu, uint64_t paddr, struct vie *vie, struct vm_guest_paging *paging); +int mmio_handle_non_backed_mem(struct vcpu *vcpu __unused, uint64_t paddr, + struct mem_range **mr_paramp); int read_mem(struct vcpu *vpu, uint64_t gpa, uint64_t *rval, int size); int register_mem(struct mem_range *memp); diff --git a/usr.sbin/bhyve/mem_md.c b/usr.sbin/bhyve/mem_md.c new file mode 100644 index 000000000000..0e29ec0a9de9 --- /dev/null +++ b/usr.sbin/bhyve/mem_md.c @@ -0,0 +1,44 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include + +#include "mem.h" + +int +mmio_handle_non_backed_mem(struct vcpu *vcpu __unused, uint64_t paddr __unused, + struct mem_range **mr_paramp __unused) +{ + return (ESRCH); +} diff --git a/usr.sbin/bhyve/riscv/Makefile.inc b/usr.sbin/bhyve/riscv/Makefile.inc index 2b57201c6259..591bd119d5d1 100644 --- a/usr.sbin/bhyve/riscv/Makefile.inc +++ b/usr.sbin/bhyve/riscv/Makefile.inc @@ -1,5 +1,6 @@ SRCS+= \ - fdt.c + fdt.c \ + mem_md.c .PATH: ${BHYVE_SYSDIR}/sys/riscv/vmm SRCS+= vmm_instruction_emul.c From nobody Thu May 15 14:01:49 2025 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 4ZysMd5L1qz5wNxY; Thu, 15 May 2025 14:01:49 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZysMd2mqgz3QKL; Thu, 15 May 2025 14:01:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317709; 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=+q9YFuBdr5fRgI6JsoKIkeZcdixnyMu0/xlG++dM9DM=; b=M1wPSyiRP7r3fJgDUCSi6lAKczFxmHRlqHomwtyvt1pAbiYTC0tPvVHlbOhJU2foxa5UEL gyD8Yo4RAWOaywBKceaFYIPyc1EAefiiPxT93ALeZ8m8Sp/pF7YI9ctna0sFGd0hLD1S+L +rY+B2HfEQ491FjtPa32nDS6s/AIA0Z3BBIzAAdsgEcxy80q7/yDDc6D3Ue72IAVEHVb6t gyg1eM1lf7v7YcL3O8nBOI8V3b0MDT53ETcbR924xnhVlL7i5ELdzdoXDIBpnT1xz2uKic aNmPHBxXqFbWoy/gJxUmeyezXsv101nSGC86LVFG9PD553nqgEKyU8KBslEnzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317709; 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=+q9YFuBdr5fRgI6JsoKIkeZcdixnyMu0/xlG++dM9DM=; b=LH8ICdeo0n6qmzWX5wZ29w0b+itiLw9CTKJ+FvHfch0+e3SnAnyDfVCNqguV50YnDvkzla j+eFOKujnFEZEil3dR2E7bPg905kMw2VtET4LnHUvhY3cgdNGquwqVH56upj5HLVqQ5Z5/ 1NkzteNr1Z1aGxk4nxWqf4PZKd55OB4uP0Ih96KjlTQlQQSOOcMjxLG4tc39VlVvtjx3IP vHoPvvjBtWon3C7xjZUmenCaO7plNCo/LbWhT0Tec5Yhhq14QaRmWz6D9pEWOMytghe/aQ rehMHPXsaMiy+LQdXfywI0mp2WYCPy3oHEWkWC6X4aFsqAX4Q9Z/ZXRCXmziaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747317709; a=rsa-sha256; cv=none; b=pUwNbXHAXJ0k4jUgnPdnjftq893GKku81nBAjnGp6aNk5BkbhzUM1Ry3SmpO+O1k2KXZZF iaPmgwv7E8K7/zEM4dz4rj/C6NS7bfmc1T1Ku0Wn9PCeVm7ac0kNnvnkzC5+q/5NdKAAf2 zWizQ8X86ttVXYHhgH7yfKCPeDBMScrGKHrI3qqi0lZkNcCgMH/173hTdOESrwBDKst/DC mTdrz3ZCZVb8aNNmrpWzyAHykOtUtUkst8rtQ18CjJVg5vPmYqV0Z3I7LOi3tHE6/aes3j 6Yi/w4sRp3DXly5NkgU25orJJqhNAVlo4kaieorwWzvMBa8JPA9k4TRoPS+sJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZysMd2GDgz4nf; Thu, 15 May 2025 14:01:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FE1n6g018573; Thu, 15 May 2025 14:01:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FE1nTk018570; Thu, 15 May 2025 14:01:49 GMT (envelope-from git) Date: Thu, 15 May 2025 14:01:49 GMT Message-Id: <202505151401.54FE1nTk018570@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: d8c4c2ce68ee - main - bhyve x86: when accessing non-backed gpa, emulate hw 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8c4c2ce68eec8bac4e5cd0d133b8342e7a7f05d Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d8c4c2ce68eec8bac4e5cd0d133b8342e7a7f05d commit d8c4c2ce68eec8bac4e5cd0d133b8342e7a7f05d Author: Konstantin Belousov AuthorDate: 2025-05-04 17:01:20 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-15 14:01:40 +0000 bhyve x86: when accessing non-backed gpa, emulate hw which reads all bits one, and ignores writes. PR: 286467 Reviewed by: markj (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50116 --- usr.sbin/bhyve/amd64/Makefile.inc | 2 +- usr.sbin/bhyve/amd64/mem_x86.c | 82 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+), 1 deletion(-) diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 0a9b13901978..92e53433ff01 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -7,7 +7,7 @@ SRCS+= \ inout.c \ ioapic.c \ kernemu_dev.c \ - mem_md.c \ + mem_x86.c \ mptbl.c \ pci_fbuf.c \ pci_gvt-d.c \ diff --git a/usr.sbin/bhyve/amd64/mem_x86.c b/usr.sbin/bhyve/amd64/mem_x86.c new file mode 100644 index 000000000000..742d827db47f --- /dev/null +++ b/usr.sbin/bhyve/amd64/mem_x86.c @@ -0,0 +1,82 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include +#include + +#include + +#include "debug.h" +#include "mem.h" + +static int +no_mem_handler(struct vcpu *vcpu __unused, int dir, uint64_t addr __unused, + int size, uint64_t *val, void *arg1 __unused, long arg2 __unused) +{ + if (dir == MEM_F_READ) { + switch (size) { + case 1: + *val = 0xff; + break; + case 2: + *val = 0xffff; + break; + case 4: + *val = 0xffffffff; + break; + case 8: + *val = 0xffffffffffffffff; + break; + } + } + return (0); +} + +static struct mem_range fb_entry = { + .handler = no_mem_handler, + .base = 0, + .size = 0xffffffffffffffff, +}; + +/* + * x86 hardware ignores writes without receiver, and returns all 1's + * from reads without response to transaction. + */ +int +mmio_handle_non_backed_mem(struct vcpu *vcpu __unused, uint64_t paddr, + struct mem_range **mr_paramp) +{ + *mr_paramp = &fb_entry; + EPRINTLN("Emulating access to non-existent address to %#lx\n", + paddr); + return (0); +} From nobody Thu May 15 14:01:50 2025 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 4ZysMf65Xkz5wP21; Thu, 15 May 2025 14:01:50 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZysMf3p2Rz3QYq; Thu, 15 May 2025 14:01:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317710; 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=lDGdvCdTxEcJM/Vsd3869t7y+72Js9QbnMJmPWWs7Os=; b=canzHD7Orj29Cfeit3cmd6HPG4El3HAF+85X+QQC11xycR8VmkRL0VxTLifiXiQbe8894J HbdzaYJ4PqhjKlPDX5yyvk5A72mq9RW1cd0xhlEcX7Zxro8DYOTZ66gO++2ZttrkUUiTnh kyNXf81Iv7eWrwGKgsPrM3Y3oNqveOsoPjl7OcXKtjysp52mSH2MfyofIofMy727Y0rf6Z aI+4Fcs9vT5cpjT1uXn92dNhjyl14EYFL3W1oVjbZLpAoZY41uPkv9UDK9DviX5HaC1AEn pGAmS6ahzH6qqvLuaVUL2OhyRYxmU7SCsXGchp1dJmsCqmvdarhQfHoa2hoteA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747317710; 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=lDGdvCdTxEcJM/Vsd3869t7y+72Js9QbnMJmPWWs7Os=; b=JOK89w9pgqyX4n99NP5KhMBj9p3QFDl4XmM5HSx+Z/FVEXSJNPCvfrls71jheYkvOxzxiW N2yUd0MtxextnPNPdJMP7ESJqxmXC7AR9N/1pXYr+FsmglIrjmuZjMp7Vd8FxVVX2hVGHa 6/t1LKqLU7TKxmFJQSGmTk+wQ1CE2KACy515aE3CSavXixMovC+f6XVDWc6dKp/GIQrDHr O+b0hFU5FxhPgLcz/nT5FjeeeKW2UKI9kEqrK2R1Gs5H0IaunHXelPrvMguMUtDpzMBP6T Rgu4wzIi3y5xsMTlvU6eZL5Ff++ASJiJq0xq6ruJRpR/TXUH7yAKr4DJS68Puw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747317710; a=rsa-sha256; cv=none; b=DhrSC07mIlP4ev8yhtWhvTDK0KKw748qeSoGBP4gGNWgHH80ksUt1DKCRRq0cuctXgnUbw LLLRZlAVaeMKh8YFllW/+evO/WgqLCNdN+U3UEO+0/aZ8xtmJ/QEvcigBIveKCmZHHDOdB c3J/MoyUrusfSKWczXCcNWgkCwzzDxgQyrUwV4+I/jCR655alTK+eYQ72nz847/A3lvqPI kW3gOE5YMWZPntws27K8kKFdYtiS2XlIBWYSBNR27V+oqzam4CHuIuJVWGoTi4iBDEjltu 3mlDB+wUele6x9Oj9eSVdPEIUZCIelg1y53/fvMYq+Q2Yno9HYNG2zqK/DdUOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZysMf3BpZz5VZ; Thu, 15 May 2025 14:01:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FE1oqg018607; Thu, 15 May 2025 14:01:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FE1o4t018604; Thu, 15 May 2025 14:01:50 GMT (envelope-from git) Date: Thu, 15 May 2025 14:01:50 GMT Message-Id: <202505151401.54FE1o4t018604@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: e9131d5545d5 - main - bhyve aarch64: generate SError exception when accessing non-backed gpa 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e9131d5545d56c7c9a2922bd745812ae2cd7426f Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e9131d5545d56c7c9a2922bd745812ae2cd7426f commit e9131d5545d56c7c9a2922bd745812ae2cd7426f Author: Konstantin Belousov AuthorDate: 2025-05-09 09:08:46 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-15 14:01:40 +0000 bhyve aarch64: generate SError exception when accessing non-backed gpa Reviewed by: andrew Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50116 --- usr.sbin/bhyve/aarch64/Makefile.inc | 2 +- usr.sbin/bhyve/aarch64/mem_aarch64.c | 58 ++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) diff --git a/usr.sbin/bhyve/aarch64/Makefile.inc b/usr.sbin/bhyve/aarch64/Makefile.inc index 9f187a6e4db7..7c1417ec6956 100644 --- a/usr.sbin/bhyve/aarch64/Makefile.inc +++ b/usr.sbin/bhyve/aarch64/Makefile.inc @@ -1,6 +1,6 @@ SRCS+= \ fdt.c \ - mem_md.c \ + mem_aarch64.c \ rtc_pl031.c \ uart_pl011.c diff --git a/usr.sbin/bhyve/aarch64/mem_aarch64.c b/usr.sbin/bhyve/aarch64/mem_aarch64.c new file mode 100644 index 000000000000..902d16fa7c51 --- /dev/null +++ b/usr.sbin/bhyve/aarch64/mem_aarch64.c @@ -0,0 +1,58 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#define _WANT_KERNEL_ERRNO 1 +#include +#include +#include +#include +#include +#include + +#include "mem.h" + +int +mmio_handle_non_backed_mem(struct vcpu *vcpu, uint64_t paddr, + struct mem_range **mr_paramp __unused) +{ + int err; + uint64_t spsr, esr; + + if (vm_get_register(vcpu, VM_REG_GUEST_CPSR, &spsr) == -1) + return (errno); + if ((spsr & PSR_M_MASK) == PSR_M_EL0t) + esr = EXCP_DATA_ABORT_L << ESR_ELx_EC_SHIFT; + else + esr = EXCP_DATA_ABORT << ESR_ELx_EC_SHIFT; + esr |= ESR_ELx_IL | ISS_DATA_DFSC_EXT; + err = vm_inject_exception(vcpu, esr, paddr); + return (err != 0 ? err : EJUSTRETURN); +} From nobody Thu May 15 14:23:29 2025 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 4Zysrd4jGqz5wQmx; Thu, 15 May 2025 14:23:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zysrd3tHfz3c90; Thu, 15 May 2025 14:23:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319009; 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=7emMQ5pF+I5zqUfmDNLDYxw9A5DL3rNCKUQA/yI1f8s=; b=alSYrNNNbGFnzqbh4qemZV7WM46ZzB7e6nwxaQkSY+a7WA4ZiPh09ElzqFiVGRBTVXojjk ZjXbKjKtRBq7lqrydZ8TiZ/MTPdRylpb4bs4k5Sq8khhmKtt7d+AT5sAa+sIEJBQQPsNxI tv/5oJe3d+h2XuIzv5DyeAoPD9WFJlQgCe4mTr7+YPH5troxoMWaST06gUTvOkCEPAXYaj QOlgGTjlcIKPV22uS1hdkjMkiD/KS36PSKWv3JIVjQvg9xcU74S8Mcsj4B8peRElVR30qi Gi6cLWKZ7buTrUOYrA9OYUNXANQ56V40HvXrSwpxHDZ+u8Bvcq5FQ+MMDN8ftg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319009; 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=7emMQ5pF+I5zqUfmDNLDYxw9A5DL3rNCKUQA/yI1f8s=; b=NJE4ftgGQsSdgeCai6zh8TNDtU+6edU6bW5YZktz5S+r6uXXEMcD96WjSowwt2NOofACo2 CpqutmejOTc7mY0dR6UfyH0gJIzqU3uSYzTs1R9HqG9D1u35OaH46L1OSa0NPJ+P214iBI U49+Nj05/fOHUg3YovZeWOsdliQzAivacSq8W3NhOU8JFlHK1UqwvC4eaPE4m/XSxJDDRP D016VGRkIKebPhWXHxhBamX/sNF21BDprS5n5Qvlf0+IPIvQdXfK/8sMrqJz+qH8tyLhJp Go+/WSTspk4yLui3F/9kIM42bN/kMyy3WI8dvOKK3swf63kYvKoe2A6cfvie0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747319009; a=rsa-sha256; cv=none; b=s7Vg8vaBKpI+43f4v1DYOLSzEeC5crvMixiV2RaRp5d0P53J/98msDxNXUzk4YIbddt0X0 JWr9ISQz+LoIosBfAF+yaa5hl/MoRUsVL63CHid9WNEr3FBCe9zOm7yJcmcWrDNHhHl5n3 45DCEHJH7Xfmd3chm7J2ilr09dGpbd9o73qSEqhQepuibnhnmtVXFthLKA0PTIKD3Blt0S uCR5aP0T9nDQovVXM+4jr7LfTuNQ4kp9FmcC6RY2rEayB+Xavgf51hUnCWVwYK1SFV+SDg yPRBjZVpbsV4p8HtR5hHW/5MjflZYCHv137CXlk3EbihWfef4iu9urr66AJSdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zysrd3RGMz63k; Thu, 15 May 2025 14:23:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FENTJv057688; Thu, 15 May 2025 14:23:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FENTXl057685; Thu, 15 May 2025 14:23:29 GMT (envelope-from git) Date: Thu, 15 May 2025 14:23:29 GMT Message-Id: <202505151423.54FENTXl057685@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 73f9251c0b52 - main - Compute 'maxproc'/'maxfiles' from memory amount; Expand/fix comments 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 73f9251c0b52ac0bfb2f2baff27493d6bae216f6 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=73f9251c0b52ac0bfb2f2baff27493d6bae216f6 commit 73f9251c0b52ac0bfb2f2baff27493d6bae216f6 Author: Olivier Certner AuthorDate: 2025-05-02 12:47:32 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 14:22:53 +0000 Compute 'maxproc'/'maxfiles' from memory amount; Expand/fix comments Change the formulae so that 'maxproc' and 'maxfiles' are computed based on the physical memory amount, and not the corresponding number of pages. Make sure that the practical results are unchanged for all architectures (which is possible since all have 4096 as their PAGE_SIZE). Despite this, we do this change to make it clearer how many units of these values are computed per MB, which is easier on readers. Change the comments accordingly and expand them to indicate which parts of the computations are actually not used by default. In passing, fix the comments about default values and limits for 'maxfiles' (they were off). No functional change (intended). MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50124 --- sys/kern/subr_param.c | 44 +++++++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/sys/kern/subr_param.c b/sys/kern/subr_param.c index f4359efec466..471640c290a7 100644 --- a/sys/kern/subr_param.c +++ b/sys/kern/subr_param.c @@ -69,13 +69,14 @@ # define HZ_VM HZ # endif #endif +/* See the comments in init_param2() for these. */ #define NPROC (20 + 16 * maxusers) -#ifndef NBUF -#define NBUF 0 -#endif #ifndef MAXFILES #define MAXFILES (40 + 32 * maxusers) #endif +#ifndef NBUF +#define NBUF 0 +#endif static int sysctl_kern_vm_guest(SYSCTL_HANDLER_ARGS); @@ -275,13 +276,14 @@ init_param1(void) void init_param2(long physpages) { + long maxproc_clamp, maxfiles_clamp; TSENTER(); /* Base parameters */ maxusers = MAXUSERS; TUNABLE_INT_FETCH("kern.maxusers", &maxusers); if (maxusers == 0) { - maxusers = physpages / (2 * 1024 * 1024 / PAGE_SIZE); + maxusers = pgtok(physpages) / (2 * 1024); if (maxusers < 32) maxusers = 32; #ifdef VM_MAX_AUTOTUNE_MAXUSERS @@ -290,35 +292,43 @@ init_param2(long physpages) #endif /* * Scales down the function in which maxusers grows once - * we hit 384. + * we hit 384 (16MB to get a new "user"). */ if (maxusers > 384) maxusers = 384 + ((maxusers - 384) / 8); } /* - * The following can be overridden after boot via sysctl. Note: - * unless overridden, these macros are ultimately based on maxusers. - * Limit maxproc so that kmap entries cannot be exhausted by - * processes. + * The following can be overridden after boot via sysctl. Note: unless + * overridden, these macros are ultimately based on 'maxusers'. Limit + * maxproc so that kmap entries cannot be exhausted by processes. The + * default for 'maxproc' linearly scales as 16 times 'maxusers' (so, + * linearly with 8 processes per MB up to 768MB, then 1 process per MB; + * overridable by a tunable), and is then clamped at 21 + 1/3 processes + * per MB (which never happens by default as long as physical memory is + * > ~1.5MB). */ maxproc = NPROC; TUNABLE_INT_FETCH("kern.maxproc", &maxproc); - if (maxproc > (physpages / 12)) - maxproc = physpages / 12; + maxproc_clamp = pgtok(physpages) / (3 * 1024 / 64); + if (maxproc > maxproc_clamp) + maxproc = maxproc_clamp; if (maxproc > pid_max) maxproc = pid_max; maxprocperuid = (maxproc * 9) / 10; /* - * The default limit for maxfiles is 1/12 of the number of - * physical page but not less than 16 times maxusers. - * At most it can be 1/6 the number of physical pages. + * 'maxfiles' by default is set to 32 files per MB (overridable by + * a tunable), and is then clamped at 64 files per MB (which thus never + * happens by default). (The default MAXFILES is for all practical + * purposes not used, as it gives a lower value than 32 files per MB as + * soon as there is more than ~2.5MB of memory.) */ - maxfiles = imax(MAXFILES, physpages / 8); + maxfiles = imax(MAXFILES, pgtok(physpages) / (1024 / 32)); TUNABLE_INT_FETCH("kern.maxfiles", &maxfiles); - if (maxfiles > (physpages / 4)) - maxfiles = physpages / 4; + maxfiles_clamp = pgtok(physpages) / (1024 / 64); + if (maxfiles > maxfiles_clamp) + maxfiles = maxfiles_clamp; maxfilesperproc = (maxfiles / 10) * 9; TUNABLE_INT_FETCH("kern.maxfilesperproc", &maxfilesperproc); From nobody Thu May 15 14:23:30 2025 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 4Zysrf5kbBz5wQkb; Thu, 15 May 2025 14:23:30 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zysrf54S9z3c6Y; Thu, 15 May 2025 14:23:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319010; 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=lXo+bBo21C2AQYejxpILhIvdQM1IkvtsArMPJFKC+Zs=; b=KiMm1WIV1yrFvgbzvR9iIq+yxkqXXhbP8rWIxfiFGKtTykXzYLpMEq6JLKA1731iql+nzF kroGWwWp6WRrToK2pI9Ex/Ey8YFAl2qcCknOj7u2m+Dc0SiW906zpmWDKUxvCY8squlefi I+wkLJeWv3gFEgxZVpEH9tPwqWdS7FCKpxSMGWPmBJ7xgMB3D9r7ayNqzcgVYfCwnVD+Lh gsr+gGnqVUs/PfXJ6hs/6wP6wpNzMIgivoIe6c5n8NKRouiroHjrZiBne+CHYikyBiIQ2b E9hhwHUNZ8ZFhOwGl1Nlek4Jp+GQbN89QxFqBKzGGpSlZY7yXJgdwx19XZpqog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319010; 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=lXo+bBo21C2AQYejxpILhIvdQM1IkvtsArMPJFKC+Zs=; b=q6wIX7J4CbAmOnvgvdqFKeT0IV1yHfS8IZ82y/Cce2hoL4dUW9hfKANYkjtblFkyCAlqni /1U25yqw/gQ8dpBDn9AGQxSOoj7fEFs2Mj78rNr5ZkwQvPWAfqbKn4mBzi/TfLkmAHU2dt ZhsKMRcW7+9imMK2fzods2k7sz0Uh4JMmIO3xYRYmk23rSjuTaypT/A2DPweO4QdzjzXkX SvB9buamWAhBiM5iLp5dJtvVPMgSB2Ic7zgailBztyCKCgpBnov3zjpMzPys6alghQasm9 K8N2/5qq5bjdgJ2emSSrHGHUYSY+brhXhUG7WFE/ZU4n8b+rCITMyXEuUbCdLg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747319010; a=rsa-sha256; cv=none; b=xiNtU+cFQv4X5oHzSzTiVxcpv00cBDybOPj+ygQ1QEWoywJbR03ZIDu2ZYj0LWMPuo0sVa X+aGe/LiwEvUngk/pq7qOjM3buJj43X9KyROUz1aq5BefyWbnmi09xS0FaDZ8O6IgMbR3Z q9v/ov1CUqXbRTqHWSQZiPc1OVytrRMVOQAv6YAHGeuMHPPKDx3ggsZpRBudJls8wkoqJC TdwHQ/o9RNIaBq4cPUHsYmS9OYCjnAm1Fk5nzicSX+tPyI6w4rmyD4uM+BbAmzMuiud4TA PiuD8PBEtAE+S7eEIv+o+zerFxZd16UCgnXT0XjHHAgNL3a7P4F0avrdG5TUvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zysrf4gqZz5vT; Thu, 15 May 2025 14:23:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FENUCL057721; Thu, 15 May 2025 14:23:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FENUmx057718; Thu, 15 May 2025 14:23:30 GMT (envelope-from git) Date: Thu, 15 May 2025 14:23:30 GMT Message-Id: <202505151423.54FENUmx057718@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 1935cc945642 - main - vfs: vntblinit(): Rework comments on the computation of 'kern.maxvnodes' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1935cc945642424bb223b570f4be5c4af8e33806 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1935cc945642424bb223b570f4be5c4af8e33806 commit 1935cc945642424bb223b570f4be5c4af8e33806 Author: Olivier Certner AuthorDate: 2025-05-12 11:20:01 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 14:22:58 +0000 vfs: vntblinit(): Rework comments on the computation of 'kern.maxvnodes' Remove the parts that describe what is already in the code formula. Add hints about which of 'physvnodes'/'virtvnodes' takes precedence, and when 'desiredvnodes' becomes smaller than 'maxfiles'. These were both computed analytically and verified experimentally. Reviewed by: kib (older version) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50130 --- sys/kern/vfs_subr.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5fdd4b6c2474..769586ad0d6b 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -757,15 +757,15 @@ vntblinit(void *dummy __unused) int cpu, physvnodes, virtvnodes; /* - * Desiredvnodes is a function of the physical memory size and the - * kernel's heap size. Generally speaking, it scales with the - * physical memory size. The ratio of desiredvnodes to the physical - * memory size is 1:16 until desiredvnodes exceeds 98,304. - * Thereafter, the - * marginal ratio of desiredvnodes to the physical memory size is - * 1:64. However, desiredvnodes is limited by the kernel's heap - * size. The memory required by desiredvnodes vnodes and vm objects - * must not exceed 1/10th of the kernel's heap size. + * 'desiredvnodes' is the minimum of a function of the physical memory + * size and another of the kernel heap size (UMA limit, a portion of the + * KVA). + * + * Currently, on 64-bit platforms, 'desiredvnodes' is set to + * 'virtvnodes' up to a physical memory cutoff of ~1674MB, after which + * 'physvnodes' applies instead. With the current automatic tuning for + * 'maxfiles' (32 files/MB), 'desiredvnodes' becomes smaller than it at + * ~5136MB. */ physvnodes = maxproc + pgtok(vm_cnt.v_page_count) / 64 + 3 * min(98304 * 16, pgtok(vm_cnt.v_page_count)) / 64; From nobody Thu May 15 14:24:53 2025 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 4ZystG033Cz5wQSg; Thu, 15 May 2025 14:24:54 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZystF5Xfgz3clQ; Thu, 15 May 2025 14:24:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319093; 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=gS4MOaY7LRLE1dZwC0mLrHj0JzTRIe3EWubj8gl6iW4=; b=sf2t0aLRicCFi4/fJ9jhHVyx5uXx+4WtgrX4uXj4BMfulIJbdTo0far2p3pyhfJ67ChHhu NxVy+AK8BznKKFjqdcVSTzksldHMZiejuGJjInYtrW6iFLbaRPwZZA95jwapFXgs4sHkO+ hAwLa10Elf01WnsgzFpmR9sQW7nkiqrwuN3nGHef0h8LRC3/HCbxfTp6g3y42Cm03BCnBt xALj9X4uRMCyCp4p6qViPSR/SfMydzdJMiF1ASsslID7x2MIlkY2ocq8HAkXOtCnKdG9Cs IONXdE4qfpLwsB175RM8RM5f8hya0pKpmvqsXgrmFwPOElveTli1IPYih7M2nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319093; 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=gS4MOaY7LRLE1dZwC0mLrHj0JzTRIe3EWubj8gl6iW4=; b=bW90CzPB/9u4OwYKtCr2V5xJUTBep/TzbkQMbyusQj9cZ/z/QYHfyPMeTRyrTo0zVxICMm ShHzjD9ka9OAXgnuzel4Im29K797gQ4JM6ozQgCEMYKRVj2rPdXXxlL9afh8ZZvKttmC1s 2FVUtg4ixe9GZeMZllklKF+rC/qKODq2PCiBSWaOBgNwrlNPQHu0s1vscLVV5jEh7KsU84 fglBZc/LcLyGLAwq/5Y1+ogA6vQ5rVJd4AiZeU8x/tH72DPyfeGy9egQIXfYzktn+kPdvG 0bW3vpvFjccprJGIWXGcd7QAS2Q4UgynnB6kYFSSI69ub2qL1OFO18rpBBUu/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747319093; a=rsa-sha256; cv=none; b=lsd8GQRnRYoJqNOcA9KgzfzKkmkLDE/1SUsXs1LXFftwRG8h8hzGorazjL2FI31EVsaVSM WdJ6NmOigXOd51NEvM6ljtRr9zhGcKyNqPXgtp4OH8hzKGmhc1EVk0ms10jVM4Gsqhq0f8 KjKAp9d9qx+WkfzO6dVfCqgyWkkODz1CGKyl3uMzIMo0dY9rs9BlAj5A/JrJ/0ksXS/414 AvCRLMG+zXnKheb7HVnVmOAvYa/PTZFVoLlWCvgd1ERTwXCLvMNuGQTCQ0F8+Ae4XfHC80 oeDo9oy2QX2a95sZDOwJI9hj4mMQYYOJYu1NoAc/VDtVrr4DcIMwSml4pDGG/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZystF54cqz6Ky; Thu, 15 May 2025 14:24:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FEOrUb058253; Thu, 15 May 2025 14:24:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FEOr7w058250; Thu, 15 May 2025 14:24:53 GMT (envelope-from git) Date: Thu, 15 May 2025 14:24:53 GMT Message-Id: <202505151424.54FEOr7w058250@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: ae28929b7c78 - main - libusb: use eventfd 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ae28929b7c78267815e994e0ad12e3cc7db361bc Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=ae28929b7c78267815e994e0ad12e3cc7db361bc commit ae28929b7c78267815e994e0ad12e3cc7db361bc Author: Baptiste Daroussin AuthorDate: 2025-05-15 13:21:50 +0000 Commit: Baptiste Daroussin CommitDate: 2025-05-15 14:24:46 +0000 libusb: use eventfd Simplify libusb code by replacing pipe(2) inter thread event mecanism with eventfd(2). MFC After: 3 weeks Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D50360 --- lib/libusb/libusb10.c | 20 +++++++------------- lib/libusb/libusb10.h | 2 +- lib/libusb/libusb10_io.c | 5 ++--- 3 files changed, 10 insertions(+), 17 deletions(-) diff --git a/lib/libusb/libusb10.c b/lib/libusb/libusb10.c index afa25eabf459..679f4e64b5f6 100644 --- a/lib/libusb/libusb10.c +++ b/lib/libusb/libusb10.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -118,15 +119,13 @@ libusb_set_nonblocking(int f) void libusb_interrupt_event_handler(libusb_context *ctx) { - uint8_t dummy; int err; if (ctx == NULL) return; - dummy = 0; - err = write(ctx->ctrl_pipe[1], &dummy, sizeof(dummy)); - if (err < (int)sizeof(dummy)) { + err = eventfd_write(ctx->event, 1); + if (err < 0) { /* ignore error, if any */ DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "Waking up event loop failed!"); } @@ -145,7 +144,6 @@ libusb_init_context(libusb_context **context, struct libusb_context *ctx; pthread_condattr_t attr; char *debug, *ep; - int ret; if (num_options < 0) return (LIBUSB_ERROR_INVALID_PARAM); @@ -234,19 +232,16 @@ libusb_init_context(libusb_context **context, ctx->ctx_handler = NO_THREAD; ctx->hotplug_handler = NO_THREAD; - ret = pipe(ctx->ctrl_pipe); - if (ret < 0) { + ctx->event = eventfd(0, EFD_NONBLOCK); + if (ctx->event < 0) { pthread_mutex_destroy(&ctx->ctx_lock); pthread_mutex_destroy(&ctx->hotplug_lock); pthread_cond_destroy(&ctx->ctx_cond); free(ctx); return (LIBUSB_ERROR_OTHER); } - /* set non-blocking mode on the control pipe to avoid deadlock */ - libusb_set_nonblocking(ctx->ctrl_pipe[0]); - libusb_set_nonblocking(ctx->ctrl_pipe[1]); - libusb10_add_pollfd(ctx, &ctx->ctx_poll, NULL, ctx->ctrl_pipe[0], POLLIN); + libusb10_add_pollfd(ctx, &ctx->ctx_poll, NULL, ctx->event, POLLIN); pthread_mutex_lock(&default_context_lock); if (usbi_default_context == NULL) { @@ -296,8 +291,7 @@ libusb_exit(libusb_context *ctx) /* XXX cleanup devices */ libusb10_remove_pollfd(ctx, &ctx->ctx_poll); - close(ctx->ctrl_pipe[0]); - close(ctx->ctrl_pipe[1]); + close(ctx->event); pthread_mutex_destroy(&ctx->ctx_lock); pthread_mutex_destroy(&ctx->hotplug_lock); pthread_cond_destroy(&ctx->ctx_cond); diff --git a/lib/libusb/libusb10.h b/lib/libusb/libusb10.h index 3402e0377c92..f34ea25740d6 100644 --- a/lib/libusb/libusb10.h +++ b/lib/libusb/libusb10.h @@ -106,7 +106,7 @@ typedef enum { struct libusb_context { int debug; int debug_fixed; - int ctrl_pipe[2]; + int event; int tr_done_ref; int tr_done_gen; usb_event_mode_t usb_event_mode; diff --git a/lib/libusb/libusb10_io.c b/lib/libusb/libusb10_io.c index 2790142486ba..f1e31c2a7416 100644 --- a/lib/libusb/libusb10_io.c +++ b/lib/libusb/libusb10_io.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #endif @@ -187,10 +188,8 @@ libusb10_handle_events_sub(struct libusb_context *ctx, struct timeval *tv) CTX_LOCK(ctx); } else { - uint8_t dummy; + eventfd_read(fds[i].fd, &(eventfd_t){0}); - while (read(fds[i].fd, &dummy, 1) == 1) - ; } } From nobody Thu May 15 14:28:04 2025 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 4Zysxx3ZGsz5wQqv; Thu, 15 May 2025 14:28:05 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zysxx0LTZz3fDG; Thu, 15 May 2025 14:28:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319285; 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=se1Y/2bO+dvWwehIubJiA1Cr7vj3B340IG6FkDAap40=; b=lJ0jiQTmr+z+44wGxGAmkPYiMIHSUczKBoBtvu+Bt5ET65pEwVgUS8JjEiuCjA0WGtkcIw rvdpDkqm1UHEh9fiZLpPj2s2FR7yVm3+B2MPiWPH4dPx9zwrwyxMRb/aEFEBD1FNTVzBp0 jRK9KMAjoQX3kf6k0NCxtzm+lv/dnGGoPken27upXBwNHjDs2iFhmRwa033jUBVhzJc36G OnNJdBU7G2GmRWqV2aTOz+ekgKq/DXnQkmb63OHj0toDCwApR0hIGbklvh6FsiC17PAGWG A3VAT13fRITa9dBOAKY1dSn0nRKcw4ZxfesdE5N9V6rIf7z61y8UiPVk622gcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319285; 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=se1Y/2bO+dvWwehIubJiA1Cr7vj3B340IG6FkDAap40=; b=b5Yklpiz5ERxYndMLh/o1HbOAF2+DTA81b+OEcOViHV0vEQ04QXrSb7J4IsFBTvNkXUn6S sg3o7pSgqjmkIlJ3LIDub8Dhht6eeMf6peLbURbSFivx+EMl2lv9e2uTi6ikBXfCrssi4r /jdoT6062kiZ2cXGwJx8QOoZFrdfsBw2vCodMvUwgL0ii0AvUT7NuaAd/hfdRn20pvQ4Uz UTaQO7MVPw1Mg9kRNcWiix9b8opoqV5YH1pJbxulr7ohkVuW8EL2ezz13gDgwbBJ9BEDEW 8k7F9Yjfz9IO0J76Rk7p/7Icp588Hb7vSAxKFnsCe0juYbExnl0BHuk1K0OoLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747319285; a=rsa-sha256; cv=none; b=f2QkGvV014yXOd2j/USqTvqzmnmsiE4GFA/V+meucXqlaX/oxHiJJ4jju6AHcgT0M1deVO 1v+zWUVz8SnAyKrWoO57L/dPnEMDVn2FsxGQP4RAc9jdhlI/nxGedsdkUeUy9P+i63JEGr fUCebom/2Mdcb+/kFcEqqbUA2AA4U1mYgYIhDN5Rt9RyvoXlkI6adlyqaP1ZORAMwQOjbx NjXMqAcXWNXtlRGQq12hGJsKY5huB75dmq8HAKczj41jV4kUWFbp4XzgjMQ8oxCjTnfqqq AC5LJeVCdY4nrXYoLbp5Sp3hAkpenJMNoyD/YAyTl8CDnfrZN7stv1JM3A85Ew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zysxw6h8sz6NM; Thu, 15 May 2025 14:28:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FES4lo059289; Thu, 15 May 2025 14:28:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FES4lx059286; Thu, 15 May 2025 14:28:04 GMT (envelope-from git) Date: Thu, 15 May 2025 14:28:04 GMT Message-Id: <202505151428.54FES4lx059286@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 1fd80186c91d - main - Revert commit 1935cc945642 ("vfs: vntblinit(): Rework comments on...") 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1fd80186c91d847532e8354b81d03f17c9fcf650 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1fd80186c91d847532e8354b81d03f17c9fcf650 commit 1fd80186c91d847532e8354b81d03f17c9fcf650 Author: Olivier Certner AuthorDate: 2025-05-15 14:26:02 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 14:27:23 +0000 Revert commit 1935cc945642 ("vfs: vntblinit(): Rework comments on...") This is because the Differential Revision tag was wrong. Will be recommitted shortly. --- sys/kern/vfs_subr.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 769586ad0d6b..5fdd4b6c2474 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -757,15 +757,15 @@ vntblinit(void *dummy __unused) int cpu, physvnodes, virtvnodes; /* - * 'desiredvnodes' is the minimum of a function of the physical memory - * size and another of the kernel heap size (UMA limit, a portion of the - * KVA). - * - * Currently, on 64-bit platforms, 'desiredvnodes' is set to - * 'virtvnodes' up to a physical memory cutoff of ~1674MB, after which - * 'physvnodes' applies instead. With the current automatic tuning for - * 'maxfiles' (32 files/MB), 'desiredvnodes' becomes smaller than it at - * ~5136MB. + * Desiredvnodes is a function of the physical memory size and the + * kernel's heap size. Generally speaking, it scales with the + * physical memory size. The ratio of desiredvnodes to the physical + * memory size is 1:16 until desiredvnodes exceeds 98,304. + * Thereafter, the + * marginal ratio of desiredvnodes to the physical memory size is + * 1:64. However, desiredvnodes is limited by the kernel's heap + * size. The memory required by desiredvnodes vnodes and vm objects + * must not exceed 1/10th of the kernel's heap size. */ physvnodes = maxproc + pgtok(vm_cnt.v_page_count) / 64 + 3 * min(98304 * 16, pgtok(vm_cnt.v_page_count)) / 64; From nobody Thu May 15 14:28:05 2025 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 4Zysxz1HmGz5wQlW; Thu, 15 May 2025 14:28:07 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zysxy15Zvz3fQy; Thu, 15 May 2025 14:28:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319286; 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=cV3Slr97C1rgs1ZRI4aNTU5iXY9f5jRWQ7N5YI9mOks=; b=xTQUsTQ883N6a7Q5zcZL+kb/5xwPMXdx0sK7by2QCYdd97mfYbK2zXrVJi8/qfR6ZcNF/M 5dbGdmbsa0XsEY9p12iKicx8xgkd5ek2OXEHKPA56D/WrJU7QML4nICaIO9MSfV97LtG76 Gu4+FB5kPO42dOwAiWN0UdcpRUur43ilU53jl2oz3yZDov2xaUWEYgySwnBzkCiLpSNzTO wKwyu1NQChEtdSNoBeUz91Tpf1fkV186XdquuQuIfT+9dYCyn8iRcI/o9O/V/M/5jdR3qs F2G3DMwLPSymrIIlwyxP4an1zQwh3n+LwOZH4eFde4YrxAgaE5bAnUtSG+RQYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747319286; 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=cV3Slr97C1rgs1ZRI4aNTU5iXY9f5jRWQ7N5YI9mOks=; b=xzjY4tkQxItqpYq27VCP6DnhaC+V0DffREhoyD4xaWsfG1mz2vog4qihniUBZKQsuJaG+K Hz4kj6+2G/JaZoOTzTj+pXrOrawwPmrN1Nk89eSdwnlXThIOgfmvbuElN0R1ZIv4COhaIH cCFfS9D2KsA3rHZjMN2L4B9KdTAx8gBm9nsd+w8A5W2Rd+0+4rqjiyT5FpeUIdZPrdCBHP Zk1RoNM0U0uYWrJNkftK0ADKePivqUjM5DRtLJZFQpD1RNvLqeYRx302L3OQTbPDFcr8rI mkh3NQJMaD2H5hYv6ZRLweYqmbtMUBjljPVQ8QJfL3brwHeKAjYvWSdQSPly+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747319286; a=rsa-sha256; cv=none; b=oJ80kG4G8YjwDslOrOLK/5spUYDI46t9Slx54DLxaSitihSh5v3CLt8VC+ktopqMNwd7Wo SyEYZP1fljHNJ1L7OFY5ux2eaTCh/BaUQ8ofmilcnPf4UBMopKY/AX7D10irGOYm4FNClg cj9FdmDcj11o7iMl3Zapba1raSKFf+O9RXZ1N+lOndqxFRmIWWqpL7QHSsfZUT81swCGLZ hEUi8oj139XioXcaXTAz8g/WmIgxfqsfuPflP2YffIWoRD6WxplfwwVWlU8RxLQQTh39b+ wiTqFEU+PjcyciThlJ5C1wkUnU75R3bgZpvgpr4VsZ3gJ0aRix4/zkdt4Jt0/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zysxy0TrLz6D3; Thu, 15 May 2025 14:28:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FES5aU059322; Thu, 15 May 2025 14:28:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FES5ov059319; Thu, 15 May 2025 14:28:05 GMT (envelope-from git) Date: Thu, 15 May 2025 14:28:05 GMT Message-Id: <202505151428.54FES5ov059319@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: bf8890c84bac - main - vfs: vntblinit(): Rework comments on the computation of 'kern.maxvnodes' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bf8890c84bacd8b1acebb2cb9a0944b1bb102b68 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=bf8890c84bacd8b1acebb2cb9a0944b1bb102b68 commit bf8890c84bacd8b1acebb2cb9a0944b1bb102b68 Author: Olivier Certner AuthorDate: 2025-05-12 11:20:01 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 14:27:42 +0000 vfs: vntblinit(): Rework comments on the computation of 'kern.maxvnodes' Remove the parts that describe what is already in the code formula. Add hints about which of 'physvnodes'/'virtvnodes' takes precedence, and when 'desiredvnodes' becomes smaller than 'maxfiles'. These were both computed analytically and verified experimentally. Reviewed by: kib (older version) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50310 --- sys/kern/vfs_subr.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5fdd4b6c2474..769586ad0d6b 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -757,15 +757,15 @@ vntblinit(void *dummy __unused) int cpu, physvnodes, virtvnodes; /* - * Desiredvnodes is a function of the physical memory size and the - * kernel's heap size. Generally speaking, it scales with the - * physical memory size. The ratio of desiredvnodes to the physical - * memory size is 1:16 until desiredvnodes exceeds 98,304. - * Thereafter, the - * marginal ratio of desiredvnodes to the physical memory size is - * 1:64. However, desiredvnodes is limited by the kernel's heap - * size. The memory required by desiredvnodes vnodes and vm objects - * must not exceed 1/10th of the kernel's heap size. + * 'desiredvnodes' is the minimum of a function of the physical memory + * size and another of the kernel heap size (UMA limit, a portion of the + * KVA). + * + * Currently, on 64-bit platforms, 'desiredvnodes' is set to + * 'virtvnodes' up to a physical memory cutoff of ~1674MB, after which + * 'physvnodes' applies instead. With the current automatic tuning for + * 'maxfiles' (32 files/MB), 'desiredvnodes' becomes smaller than it at + * ~5136MB. */ physvnodes = maxproc + pgtok(vm_cnt.v_page_count) / 64 + 3 * min(98304 * 16, pgtok(vm_cnt.v_page_count)) / 64; From nobody Thu May 15 15:11:19 2025 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 4Zytw230MSz5wTc1; Thu, 15 May 2025 15:11:30 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 mx1.freebsd.org (Postfix) with ESMTPS id 4Zytw2040bz41B3; Thu, 15 May 2025 15:11:29 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 54FFBJlP057115; Thu, 15 May 2025 18:11:22 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 54FFBJlP057115 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 54FFBJm0057113; Thu, 15 May 2025 18:11:19 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Thu, 15 May 2025 18:11:19 +0300 From: Konstantin Belousov To: Olivier Certner Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 73f9251c0b52 - main - Compute 'maxproc'/'maxfiles' from memory amount; Expand/fix comments Message-ID: References: <202505151423.54FENTXl057685@gitrepo.freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202505151423.54FENTXl057685@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on tom.home X-Rspamd-Queue-Id: 4Zytw2040bz41B3 X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Spamd-Bar: ---- On Thu, May 15, 2025 at 02:23:29PM +0000, Olivier Certner wrote: > The branch main has been updated by olce: > > URL: https://cgit.FreeBSD.org/src/commit/?id=73f9251c0b52ac0bfb2f2baff27493d6bae216f6 > > commit 73f9251c0b52ac0bfb2f2baff27493d6bae216f6 > Author: Olivier Certner > AuthorDate: 2025-05-02 12:47:32 +0000 > Commit: Olivier Certner > CommitDate: 2025-05-15 14:22:53 +0000 > > Compute 'maxproc'/'maxfiles' from memory amount; Expand/fix comments > > Change the formulae so that 'maxproc' and 'maxfiles' are computed based > on the physical memory amount, and not the corresponding number of > pages. Make sure that the practical results are unchanged for all > architectures (which is possible since all have 4096 as their > PAGE_SIZE). Despite this, we do this change to make it clearer how many > units of these values are computed per MB, which is easier on readers. Not all architectures have PAGE_SIZE of 4K. Not going back to the historic arches, and out of tree patches for x86, I believe that arm64 has in-tree support for 16K pages. VM system is fine with the page sizes from 4K to 32K. > > Change the comments accordingly and expand them to indicate which parts > of the computations are actually not used by default. In passing, fix the > comments about default values and limits for 'maxfiles' (they were off). > > No functional change (intended). > > MFC after: 3 days > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D50124 > --- > sys/kern/subr_param.c | 44 +++++++++++++++++++++++++++----------------- > 1 file changed, 27 insertions(+), 17 deletions(-) > > diff --git a/sys/kern/subr_param.c b/sys/kern/subr_param.c > index f4359efec466..471640c290a7 100644 > --- a/sys/kern/subr_param.c > +++ b/sys/kern/subr_param.c > @@ -69,13 +69,14 @@ > # define HZ_VM HZ > # endif > #endif > +/* See the comments in init_param2() for these. */ > #define NPROC (20 + 16 * maxusers) > -#ifndef NBUF > -#define NBUF 0 > -#endif > #ifndef MAXFILES > #define MAXFILES (40 + 32 * maxusers) > #endif > +#ifndef NBUF > +#define NBUF 0 > +#endif > > static int sysctl_kern_vm_guest(SYSCTL_HANDLER_ARGS); > > @@ -275,13 +276,14 @@ init_param1(void) > void > init_param2(long physpages) > { > + long maxproc_clamp, maxfiles_clamp; > > TSENTER(); > /* Base parameters */ > maxusers = MAXUSERS; > TUNABLE_INT_FETCH("kern.maxusers", &maxusers); > if (maxusers == 0) { > - maxusers = physpages / (2 * 1024 * 1024 / PAGE_SIZE); > + maxusers = pgtok(physpages) / (2 * 1024); > if (maxusers < 32) > maxusers = 32; > #ifdef VM_MAX_AUTOTUNE_MAXUSERS > @@ -290,35 +292,43 @@ init_param2(long physpages) > #endif > /* > * Scales down the function in which maxusers grows once > - * we hit 384. > + * we hit 384 (16MB to get a new "user"). > */ > if (maxusers > 384) > maxusers = 384 + ((maxusers - 384) / 8); > } > > /* > - * The following can be overridden after boot via sysctl. Note: > - * unless overridden, these macros are ultimately based on maxusers. > - * Limit maxproc so that kmap entries cannot be exhausted by > - * processes. > + * The following can be overridden after boot via sysctl. Note: unless > + * overridden, these macros are ultimately based on 'maxusers'. Limit > + * maxproc so that kmap entries cannot be exhausted by processes. The > + * default for 'maxproc' linearly scales as 16 times 'maxusers' (so, > + * linearly with 8 processes per MB up to 768MB, then 1 process per MB; > + * overridable by a tunable), and is then clamped at 21 + 1/3 processes > + * per MB (which never happens by default as long as physical memory is > + * > ~1.5MB). > */ > maxproc = NPROC; > TUNABLE_INT_FETCH("kern.maxproc", &maxproc); > - if (maxproc > (physpages / 12)) > - maxproc = physpages / 12; > + maxproc_clamp = pgtok(physpages) / (3 * 1024 / 64); > + if (maxproc > maxproc_clamp) > + maxproc = maxproc_clamp; > if (maxproc > pid_max) > maxproc = pid_max; > maxprocperuid = (maxproc * 9) / 10; > > /* > - * The default limit for maxfiles is 1/12 of the number of > - * physical page but not less than 16 times maxusers. > - * At most it can be 1/6 the number of physical pages. > + * 'maxfiles' by default is set to 32 files per MB (overridable by > + * a tunable), and is then clamped at 64 files per MB (which thus never > + * happens by default). (The default MAXFILES is for all practical > + * purposes not used, as it gives a lower value than 32 files per MB as > + * soon as there is more than ~2.5MB of memory.) > */ > - maxfiles = imax(MAXFILES, physpages / 8); > + maxfiles = imax(MAXFILES, pgtok(physpages) / (1024 / 32)); > TUNABLE_INT_FETCH("kern.maxfiles", &maxfiles); > - if (maxfiles > (physpages / 4)) > - maxfiles = physpages / 4; > + maxfiles_clamp = pgtok(physpages) / (1024 / 64); > + if (maxfiles > maxfiles_clamp) > + maxfiles = maxfiles_clamp; > maxfilesperproc = (maxfiles / 10) * 9; > TUNABLE_INT_FETCH("kern.maxfilesperproc", &maxfilesperproc); > From nobody Thu May 15 15:27:57 2025 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 4ZyvH21hYSz5wVlC; Thu, 15 May 2025 15:27:58 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyvH213JFz46N3; Thu, 15 May 2025 15:27:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322878; 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=Dk84RJrOs5XBx+AD+HS8Pjgrp7T8JS5SN3r5w8CHJW8=; b=Po9UP4UtcyMjY3B+KsqDZNs48are57sPCKFotuauKqYeGS9PIcT1X1W3x5dO4OyVxx27nx eQKgd9QILq1Or3p7BrVuCw1+WtA7wadbrGXBbZsUOHHDx0lm+1uNc/gadBBs4tg/HMvxQo 4KjUuD3M0CG1PeY2GmITbGCtGWvIbLyK3zKUN7AYzsiUq5O5bBZHz0729v8J142BT/N+RW y8krN/J5ow1QESAaL4DAMu33gFSDirM2sP4lR4Su7sBk7cDmtr2jhB8HWppzQICYCmfxRw yRqIiOH3IN1Hyf4EHZyM0igPZVdZysG5tsg5b6gCanWbEuK34F4EmkMBnVzlMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322878; 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=Dk84RJrOs5XBx+AD+HS8Pjgrp7T8JS5SN3r5w8CHJW8=; b=vzotl/mMTGRWAXl+g2E8ipQ+QC8AJNqzCrfUlPilYB3PW3MUmTqIuB8YrCzQYgrXu0mVXb OsUIFzs8cRIidK/rjI2h9Y/tibrj6Zj/yqO3JiDsmNa3ZrihZ2P85KmBHnxp6/0qoosvQo 52Pv0avd+F68QVYjXCZoQ8FK5OFLOHVG17tG7lW1bd0GZabKX7KXRXR58KFgcEvjY7pB7h tl2jE5wbZJArYXTKmcH7ZJP5GRxCd8XObhKgXLTsfyKxJ7iMYpQRU1N0iy0UFSdmroFDW9 VgyDdvfptc9Hvn+Y+M6rY3upxTIflAnrpAa4M0e/0egR0xrlqX8WCflqVRxjRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747322878; a=rsa-sha256; cv=none; b=l8qHXl1ESrVOBtlL9h92IEdp4FbHwf3QncyIuoDfW8cD/ALWJdo6Y/XWpJnJ44cxzUSlJp l066a6xmgQA+JylnbZDrjnQooUc0CQDiJDggLbu50vAwHKHZvgq6QqmmMDFzX2O9S+9vhk 5P9ur3sL04+WS69WZtM402SDfOipEybjJy2+WaeXA+pYKtLqvenlQohA41clWEezubQMX+ i2cNNRqJGPjBlUxtJDczGWdwC6CdBbSBiEyw7DSac7pjie5939ov9U5DQLkfHnAPaW2IR+ gZZzERzqMamhVwp7lAmtiSoEjobImRfDnoALgFFbTi+SHhVxY8UUXcppjzcItg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyvH2022Gz7Jt; Thu, 15 May 2025 15:27:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FFRv7r071450; Thu, 15 May 2025 15:27:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FFRvU5071447; Thu, 15 May 2025 15:27:57 GMT (envelope-from git) Date: Thu, 15 May 2025 15:27:57 GMT Message-Id: <202505151527.54FFRvU5071447@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 68baf043e48b - main - arm: Make the pmap_kenter signature like arm64 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 68baf043e48bac021389f844516ea74ca2d8e115 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=68baf043e48bac021389f844516ea74ca2d8e115 commit 68baf043e48bac021389f844516ea74ca2d8e115 Author: Andrew Turner AuthorDate: 2025-05-15 14:50:14 +0000 Commit: Andrew Turner CommitDate: 2025-05-15 15:09:46 +0000 arm: Make the pmap_kenter signature like arm64 To support a common pmap_mapdev_attr change pmap_kenter to include the size any memory type in the signature. Reviewed by: mhorne Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50307 --- sys/arm/arm/mem.c | 4 ++-- sys/arm/arm/pmap-v6.c | 43 +++++++++++++++++++++++-------------------- sys/arm/include/pmap.h | 2 +- 3 files changed, 26 insertions(+), 23 deletions(-) diff --git a/sys/arm/arm/mem.c b/sys/arm/arm/mem.c index 7f149892ab9d..cec253f60b51 100644 --- a/sys/arm/arm/mem.c +++ b/sys/arm/arm/mem.c @@ -114,8 +114,8 @@ memrw(struct cdev *dev, struct uio *uio, int flags) if (!address_valid) return (EINVAL); sx_xlock(&tmppt_lock); - pmap_kenter((vm_offset_t)_tmppt, v); - pmap_tlb_flush(kernel_pmap, (vm_offset_t)_tmppt); + pmap_kenter((vm_offset_t)_tmppt, PAGE_SIZE, v, + VM_MEMATTR_DEFAULT); o = (int)uio->uio_offset & PAGE_MASK; c = (u_int)(PAGE_SIZE - ((int)iov->iov_base & PAGE_MASK)); c = min(c, (u_int)(PAGE_SIZE - o)); diff --git a/sys/arm/arm/pmap-v6.c b/sys/arm/arm/pmap-v6.c index fafa8908dcd1..a0e0b007ffaa 100644 --- a/sys/arm/arm/pmap-v6.c +++ b/sys/arm/arm/pmap-v6.c @@ -1150,7 +1150,7 @@ pmap_dump_kextract(vm_offset_t va, pt2_entry_t *pte2p) * After pmap_bootstrap() is called, the following functions for * mappings can be used: * - * void pmap_kenter(vm_offset_t va, vm_paddr_t pa); + * void pmap_kenter(vm_offset_t va, vm_size_t size, vm_paddr_t pa, int mode); * void pmap_kremove(vm_offset_t va); * vm_offset_t pmap_map(vm_offset_t *virt, vm_paddr_t start, vm_paddr_t end, * int prot); @@ -1308,11 +1308,28 @@ pmap_kenter_prot_attr(vm_offset_t va, vm_paddr_t pa, uint32_t prot, pte2_store(pte2p, PTE2_KERN(pa, prot, attr)); } -PMAP_INLINE void -pmap_kenter(vm_offset_t va, vm_paddr_t pa) +static __inline void +pmap_kenter_noflush(vm_offset_t va, vm_size_t size, vm_paddr_t pa, int mode) { + uint32_t l2attr; + + KASSERT((size & PAGE_MASK) == 0, + ("%s: device mapping not page-sized", __func__)); - pmap_kenter_prot_attr(va, pa, PTE2_AP_KRW, PTE2_ATTR_DEFAULT); + l2attr = vm_memattr_to_pte2(mode); + while (size != 0) { + pmap_kenter_prot_attr(va, pa, PTE2_AP_KRW, l2attr); + va += PAGE_SIZE; + pa += PAGE_SIZE; + size -= PAGE_SIZE; + } +} + +PMAP_INLINE void +pmap_kenter(vm_offset_t va, vm_size_t size, vm_paddr_t pa, int mode) +{ + pmap_kenter_noflush(va, size, pa, mode); + tlb_flush_range(va, size); } /* @@ -1453,7 +1470,7 @@ pmap_kenter_temporary(vm_paddr_t pa, int i) /* QQQ: 'i' should be less or equal to MAXDUMPPGS. */ va = (vm_offset_t)crashdumpmap + (i * PAGE_SIZE); - pmap_kenter(va, pa); + pmap_kenter_noflush(va, PAGE_SIZE, pa, VM_MEMATTR_DEFAULT); tlb_flush_local(va); return ((void *)crashdumpmap); } @@ -6253,21 +6270,7 @@ pmap_mincore(pmap_t pmap, vm_offset_t addr, vm_paddr_t *pap) void pmap_kenter_device(vm_offset_t va, vm_size_t size, vm_paddr_t pa) { - vm_offset_t sva; - uint32_t l2attr; - - KASSERT((size & PAGE_MASK) == 0, - ("%s: device mapping not page-sized", __func__)); - - sva = va; - l2attr = vm_memattr_to_pte2(VM_MEMATTR_DEVICE); - while (size != 0) { - pmap_kenter_prot_attr(va, pa, PTE2_AP_KRW, l2attr); - va += PAGE_SIZE; - pa += PAGE_SIZE; - size -= PAGE_SIZE; - } - tlb_flush_range(sva, va - sva); + pmap_kenter(va, size, pa, VM_MEMATTR_DEVICE); } void diff --git a/sys/arm/include/pmap.h b/sys/arm/include/pmap.h index 671e2af52423..dcd4e0a83ab1 100644 --- a/sys/arm/include/pmap.h +++ b/sys/arm/include/pmap.h @@ -135,7 +135,7 @@ extern ttb_entry_t pmap_kern_ttb; /* TTB for kernel pmap */ * vtopte2(). */ void pmap_bootstrap(vm_offset_t); -void pmap_kenter(vm_offset_t, vm_paddr_t); +void pmap_kenter(vm_offset_t, vm_size_t, vm_paddr_t, int); void pmap_kremove(vm_offset_t); bool pmap_page_is_mapped(vm_page_t); bool pmap_ps_enabled(pmap_t pmap); From nobody Thu May 15 15:27:58 2025 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 4ZyvH33jpMz5wVP7; Thu, 15 May 2025 15:27:59 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyvH311p2z46L6; Thu, 15 May 2025 15:27:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322879; 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=dw+fWzcowMbHCQHu4S1dYN4ByKO/Secvv7cwpAWcp9I=; b=W4jlnHTb/NZYUu4GJl4CXVRReaIC1ATpBsybOTj66B1fkKuRahIQ4KuFgZ+QBD7vn8qOG2 v7w56wAtpE+9aaW4LgzAyS1m3pP7aXR7kVF0Vw5hr1VtXQi+QZ/+QrQGg7i6vN5uCiUgCS flBuiWuUP05Q2zaqW53cAZ5O7V8dnADU6tskXI2TXBmdlnw0vptpNZcvMPjmuiFgRo4sXH IXM2a/rocrv+T9JObzcRtJGmO9MOmBOtGCbZRmrS59vxODDCDYZn1wl17/OWx44VbA2DGx Q0musWAARj7t/S1IkkKMaA4OGCivnSRxq8+bQkMfASgvzB0K8FKvnZFwktcKEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322879; 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=dw+fWzcowMbHCQHu4S1dYN4ByKO/Secvv7cwpAWcp9I=; b=lIayGCzXLCU5r1NxQJrs/DaIwKV9UTMREB5BB/uZcNDbwqrWBgYtorz/5IrLh+IMfD9Gz3 46F1r96uICtHqqS0ieLuqA+E8u5YfyzX7ItT+kwmi1zaW4m6S3ZTh1xET+1GgcN91Rxe1M IoVh8Kb+C3fRQYHv7UnQwku+9b6dMTy9iiKGdDXK6DlMq8D/QlqUwZA4jectk8YXSCDowx pQ5ntmtzVGXN4piEWYBga6rANoZTS2po6k4R0Pz25wsScl/7NSL0vgrNq3LiO81y3QBQ9F JguocJe5GD/pc8ld4Klh1kddMtP2MEO7c93P15K9DO5FloksAXGSDtIq1W9TRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747322879; a=rsa-sha256; cv=none; b=OpXh+DrblRqNVYYONcBlwoZUYHTjHtpqpLmqu/Cr+yMdFPuv8SbMJNt+pCywO+qKEBQj2y AfwfauHELYEMPbTHZnzbd8GAkLpiyw1/NzxOQuVJ3Q4EQc8TdPZOKb1AmhvxNdz+aIgFwO iizOGo0+o+V6ole2u77FWb8P8FhccoEbC0DTSKHXL6Pb7DbkGGDWLk9IqobiEA2c2e1lMw /HIzZtkVw3CInB5Utsbxd0wwTCmYblw2KuVNnJr224ln8Al/dUs3fBjRQxEFsIVhoxn9wE +OYypficaBhj7SU//yPCI5siGpEExlrGHZei+c4AD86NNgocANy8nn2RleL0HQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyvH30Pqzz7GB; Thu, 15 May 2025 15:27:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FFRwra071484; Thu, 15 May 2025 15:27:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FFRwDZ071481; Thu, 15 May 2025 15:27:58 GMT (envelope-from git) Date: Thu, 15 May 2025 15:27:58 GMT Message-Id: <202505151527.54FFRwDZ071481@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 66886d9d9608 - main - subr_devmap: Add the function name to KASSERT 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66886d9d960833a8fa6383976e546b3dfde96176 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=66886d9d960833a8fa6383976e546b3dfde96176 commit 66886d9d960833a8fa6383976e546b3dfde96176 Author: Andrew Turner AuthorDate: 2025-05-15 15:06:35 +0000 Commit: Andrew Turner CommitDate: 2025-05-15 15:09:46 +0000 subr_devmap: Add the function name to KASSERT These messages are almost identical, other than one has " 2" appended. Change this to include the function name at the start to make it more obvious which function the KASSERT is from. Reviewed by: mhorne, emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50308 --- sys/kern/subr_devmap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/subr_devmap.c b/sys/kern/subr_devmap.c index 609c9b142312..d9026dd97311 100644 --- a/sys/kern/subr_devmap.c +++ b/sys/kern/subr_devmap.c @@ -267,7 +267,7 @@ pmap_mapdev(vm_paddr_t pa, vm_size_t size) akva_devmap_vaddr = trunc_page(akva_devmap_vaddr - size); va = akva_devmap_vaddr; KASSERT(va >= VM_MAX_KERNEL_ADDRESS - PMAP_MAPDEV_EARLY_SIZE, - ("Too many early devmap mappings")); + ("%s: Too many early devmap mappings", __func__)); } else #endif #ifdef __aarch64__ @@ -306,8 +306,8 @@ pmap_mapdev_attr(vm_paddr_t pa, vm_size_t size, vm_memattr_t ma) if (early_boot) { akva_devmap_vaddr = trunc_page(akva_devmap_vaddr - size); va = akva_devmap_vaddr; - KASSERT(va >= (VM_MAX_KERNEL_ADDRESS - (PMAP_MAPDEV_EARLY_SIZE)), - ("Too many early devmap mappings 2")); + KASSERT(va >= (VM_MAX_KERNEL_ADDRESS - PMAP_MAPDEV_EARLY_SIZE), + ("%s: Too many early devmap mappings", __func__)); } else #ifdef __aarch64__ if (size >= L2_SIZE && (pa & L2_OFFSET) == 0) From nobody Thu May 15 15:28:00 2025 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 4ZyvH436btz5wVPC; Thu, 15 May 2025 15:28:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyvH41nMhz46R8; Thu, 15 May 2025 15:28:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322880; 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=LEB+LpmajUHolxP8UWc8RQO3o8/0D2zdC8g0w5gDlR4=; b=NDC2xEumoxyJ3ipPC0+GAsEruGjbnitpNk20Yg49Ng2mhV8LkL6hizLxRCqT9WqBr1joIM nrXBLWd+VqNy5lW8KDxQcHx6lBVuNwH7shP+wgqCS1a2mghLka+FM1Ol1SO6Oej68LDsOI kSMA4gcuBVB4p6BvpCK0A9yqSuvdaQfXud0SIr8AFPC/sK+14IlLKAbB2b08Yj5llLnMRb Prwlbl2hMnVq1c659fT3uFKb/AAS397zc6DXADq2yCn8sCA2k2O7ZZmvgENYjfRgyA0NAW SRUfp0C1cOXZHG7wHqPckHhBIFec8ilIPy3MKZazGIGhRpgEIvD3OyaKoEoUbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747322880; 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=LEB+LpmajUHolxP8UWc8RQO3o8/0D2zdC8g0w5gDlR4=; b=kaxlm0xkCbQqDvMIJULNpqQZbu3KeV9hE+xIWbHbwZvixstjrpWcgFMvUBBbYHtFTVaNdM UgWVdzXhcyravym/41FFZaPyBbpRqCNo12gCijgqfTekYoAAXN9SLpk+ati9kQLl9k2raS dmfUIfS1IHaWx5tLHKpohhwm7B1jyH1yuXD8Hi//fqV9uPo28SlgF4m56dO1z5pHZwjI+S jA9tf7w4FDO5jXZOfGxUEmjgcXHGRGBvfPmlMaqnFAf/uedGcJlTs6FpqW8Ax/9QvZ2has cUKiJXPXz1X29BTPW1c5uLA8CY/oES9woPtlmO97Vl6yOd7YnHJ4bT8mJds/lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747322880; a=rsa-sha256; cv=none; b=fbuoJgNotSN2tz46GOEB+Mv8rGrBLRhCg0rD4vu9RBVsr1lwHlQhF/Kf7e+z01cCoD1/G2 DbOqrh2dfpks2FplSUSmmde9U2DEUdPaeRrzapQoXMQGBi+9IaIljFepmkLtUb7J0Q41ed hjFO5QMXoffCcCXf5ckT3vuMtm7VMNsHLsD5NF/859U/BroTCnxjV9yELDbcMyGfnZ+IWu qkVuNzqjbJMF9e3T7E8QSA6JtijsWPcsMxnxABSDdPr2Lc4cc8TMkLHSdjWEgp5IGFDQp3 RmVGvffjUmMrm0xOFQ/PNaHM8+weyBI5TfoLdH3luBsX1SEZq9aEmD6T6jORGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyvH41Hx8z7rw; Thu, 15 May 2025 15:28:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FFS0F3071531; Thu, 15 May 2025 15:28:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FFS0ux071528; Thu, 15 May 2025 15:28:00 GMT (envelope-from git) Date: Thu, 15 May 2025 15:28:00 GMT Message-Id: <202505151528.54FFS0ux071528@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: ebeeeae67845 - main - subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ebeeeae678455dcb47846925176d825fc0dbd792 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=ebeeeae678455dcb47846925176d825fc0dbd792 commit ebeeeae678455dcb47846925176d825fc0dbd792 Author: Andrew Turner AuthorDate: 2025-05-15 15:07:09 +0000 Commit: Andrew Turner CommitDate: 2025-05-15 15:09:46 +0000 subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr We can now support pmap_mapdev_attr on arm. Switch to use this to implement pmap_mapdev to reduce duplicate code. Reviewed by: mhorne, mmel Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50309 --- sys/arm/include/pmap.h | 8 +------- sys/kern/subr_devmap.c | 51 ++++++++++++-------------------------------------- 2 files changed, 13 insertions(+), 46 deletions(-) diff --git a/sys/arm/include/pmap.h b/sys/arm/include/pmap.h index dcd4e0a83ab1..87f4065f6ff4 100644 --- a/sys/arm/include/pmap.h +++ b/sys/arm/include/pmap.h @@ -172,15 +172,9 @@ void pmap_page_set_memattr(vm_page_t, vm_memattr_t); #define pmap_map_delete(pmap, sva, eva) pmap_remove(pmap, sva, eva) void *pmap_mapdev(vm_paddr_t, vm_size_t); +void *pmap_mapdev_attr(vm_paddr_t, vm_size_t, vm_memattr_t); void pmap_unmapdev(void *, vm_size_t); -static inline void * -pmap_mapdev_attr(vm_paddr_t addr __unused, vm_size_t size __unused, - int attr __unused) -{ - panic("%s is not implemented yet!\n", __func__); -} - struct pcb; void pmap_set_pcb_pagedir(pmap_t, struct pcb *); diff --git a/sys/kern/subr_devmap.c b/sys/kern/subr_devmap.c index d9026dd97311..2e86d11c7ad3 100644 --- a/sys/kern/subr_devmap.c +++ b/sys/kern/subr_devmap.c @@ -249,44 +249,9 @@ devmap_vtop(void * vpva, vm_size_t size) void * pmap_mapdev(vm_paddr_t pa, vm_size_t size) { - vm_offset_t va, offset; -#ifdef __HAVE_STATIC_DEVMAP - void * rva; - - /* First look in the static mapping table. */ - if ((rva = devmap_ptov(pa, size)) != NULL) - return (rva); -#endif - - offset = pa & PAGE_MASK; - pa = trunc_page(pa); - size = round_page(size + offset); - -#if defined(__aarch64__) || defined(__riscv) - if (early_boot) { - akva_devmap_vaddr = trunc_page(akva_devmap_vaddr - size); - va = akva_devmap_vaddr; - KASSERT(va >= VM_MAX_KERNEL_ADDRESS - PMAP_MAPDEV_EARLY_SIZE, - ("%s: Too many early devmap mappings", __func__)); - } else -#endif -#ifdef __aarch64__ - if (size >= L2_SIZE && (pa & L2_OFFSET) == 0) - va = kva_alloc_aligned(size, L2_SIZE); - else if (size >= L3C_SIZE && (pa & L3C_OFFSET) == 0) - va = kva_alloc_aligned(size, L3C_SIZE); - else -#endif - va = kva_alloc(size); - if (!va) - panic("pmap_mapdev: Couldn't alloc kernel virtual memory"); - - pmap_kenter_device(va, size, pa); - - return ((void *)(va + offset)); + return (pmap_mapdev_attr(pa, size, VM_MEMATTR_DEVICE)); } -#if defined(__aarch64__) || defined(__riscv) void * pmap_mapdev_attr(vm_paddr_t pa, vm_size_t size, vm_memattr_t ma) { @@ -294,21 +259,30 @@ pmap_mapdev_attr(vm_paddr_t pa, vm_size_t size, vm_memattr_t ma) #ifdef __HAVE_STATIC_DEVMAP void * rva; - /* First look in the static mapping table. */ - if ((rva = devmap_ptov(pa, size)) != NULL) + /* + * First look in the static mapping table. These are all mapped + * as device memory, so only use the devmap for VM_MEMATTR_DEVICE. + */ + if ((rva = devmap_ptov(pa, size)) != NULL) { + KASSERT(ma == VM_MEMATTR_DEVICE, + ("%s: Non-device mapping for pa %jx (type %x)", __func__, + (uintmax_t)pa, ma)); return (rva); + } #endif offset = pa & PAGE_MASK; pa = trunc_page(pa); size = round_page(size + offset); +#ifdef PMAP_MAPDEV_EARLY_SIZE if (early_boot) { akva_devmap_vaddr = trunc_page(akva_devmap_vaddr - size); va = akva_devmap_vaddr; KASSERT(va >= (VM_MAX_KERNEL_ADDRESS - PMAP_MAPDEV_EARLY_SIZE), ("%s: Too many early devmap mappings", __func__)); } else +#endif #ifdef __aarch64__ if (size >= L2_SIZE && (pa & L2_OFFSET) == 0) va = kva_alloc_aligned(size, L2_SIZE); @@ -324,7 +298,6 @@ pmap_mapdev_attr(vm_paddr_t pa, vm_size_t size, vm_memattr_t ma) return ((void *)(va + offset)); } -#endif /* * Unmap device memory and free the kva space. From nobody Thu May 15 15:39:29 2025 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 4ZyvXV2Nx6z5wWYH; Thu, 15 May 2025 15:39:38 +0000 (UTC) (envelope-from olce@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyvXV1Mgfz4DCq; Thu, 15 May 2025 15:39:38 +0000 (UTC) (envelope-from olce@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747323578; 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: in-reply-to:in-reply-to:references:references; bh=mJQN+F6zt5NomiiOp+oYe94thNV5957eiwQjZtipjPs=; b=mhN9lyJoxtAEXrvqrYtF/zNxLBQOF9OfdekFv1amY96iVkxMce3zQX5onuDFQTqivpn0hZ +pIXfdrBGHYeUvsfabtYlf/C1RhmjZEp/5vtiC79qqPNZYoGt58HVo9sEBZFwczd7X7s0P hhUuLqjDVJJgDTJCt08eVQvhYiHVqySE78Th2gG039yQ8OOSGH1uL+3lFjyysHh3PjuXm2 0EP/cjjCCS49vycrf3Z1hxYmLjlLwFEitio4V2eX2tcfQl7jlqIr+bEeURnK5e1LWPeHx1 rutblQSkttI0Pvn551Zs8dFSo/D7xVoW/5jlVR9owjChdJQyDW0bm91fnkhHew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747323578; 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: in-reply-to:in-reply-to:references:references; bh=mJQN+F6zt5NomiiOp+oYe94thNV5957eiwQjZtipjPs=; b=vP/Z+yyqmYCFplLrSTOf6nrnEatuifIVhsECJg7r3Zr4PAMjNm4ue+0xNPGcKOey+/PIO7 V1eDpH7FjckbwECdtNGUzziEDN5aKBBSIM+2LEG4STvLJGbncAgahJ4BSLkb9av76hZJQ2 nr51SGrNlfuwXqmQuHv8lVWk89zbhAs1SmDLj/tI0ATTwIEPZhD+ewr3fQYb1fAx8yXHBF slsclW0LJ6/vaOsGjHXnbQ6qVfEUv1cwl/IjGA+1TqAn+ouQt5WC+ELeCgPxGhTlzi+w0c YCiSoUmCSE4GhgHylwnMsvxGRccSO+Rxt2nTNgpfTnuX6kXdMwc9L6d8ya8fxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747323578; a=rsa-sha256; cv=none; b=JOOniTZijdiR2K12V+TVnXjOOPdcrNi87E8Ga24rp6DVOnEZJNizlSD0HrMlpUL3sxqJCI qHDxfVDY3QgzieXF7rl+o7nUDKCdUcdSKkQiLfbDSiHWWtbVqAQOK2FeDIR3YuFGlRfsb4 PNWzVfA/BIdnXjVxCTt+vwNIecClf5EyTbtMdRNvtQV3IDq/HEyHetBQvAJwYONezdODXh 95JB7fN1sp+b6kwytDZedWHLbKuCU+vIeepW9b+oRHN6FlicJ3NoVsIPTZkNuqi1/Vszx7 Bo3ysc3Jv1YvszcDSM3WwjCh5d3dt8nHLUyUOHtE7qmXvUJKvcr8pbxA0xl9Kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from ravel.localnet (aclermont-ferrand-653-1-222-123.w90-14.abo.wanadoo.fr [90.14.66.123]) (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) (Authenticated sender: olce/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZyvXT2tWPz9js; Thu, 15 May 2025 15:39:37 +0000 (UTC) (envelope-from olce@freebsd.org) From: Olivier Certner To: Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 73f9251c0b52 - main - Compute 'maxproc'/'maxfiles' from memory amount; Expand/fix comments Date: Thu, 15 May 2025 17:39:29 +0200 Message-ID: <1892254.Rtz6emdoko@ravel> In-Reply-To: References: <202505151423.54FENTXl057685@gitrepo.freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart3362793.YrVoEOf5kG"; micalg="pgp-sha384"; protocol="application/pgp-signature" --nextPart3362793.YrVoEOf5kG Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="UTF-8"; protected-headers="v1" From: Olivier Certner To: Konstantin Belousov Date: Thu, 15 May 2025 17:39:29 +0200 Message-ID: <1892254.Rtz6emdoko@ravel> In-Reply-To: MIME-Version: 1.0 > Not all architectures have PAGE_SIZE of 4K. Not going back to the historic > arches, and out of tree patches for x86, I believe that arm64 has in-tree > support for 16K pages. imp@ alluded to that in the revision (https://reviews.freebsd.org/D50124) so, back then, I checked in-tree but could not find any hint anywhere (code, kernel configs) that PAGE_SIZE would actually be set to 16k in public configs, hence the commit message (with "unchanged for all architectures", I meant in fact unchanged for the official artifacts we build). I see some support for PAGE_SIZE != PAGE_SIZE_4K. For such experiments, this commit should certainly help. -- Olivier Certner --nextPart3362793.YrVoEOf5kG Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCQAdFiEEmNCxHjkosai0LYIujKEwQJceJicFAmgmCrEACgkQjKEwQJce Jic0CQ//RyJuXps3VD2S/rnoXprQ0foPPag8RAvt18zVg+/MYINbkMoJa0REOCsV MVmFJSFk/59GhpqNwZ846IUxX3OpOjnkFKS53pNfRP0cMzy02HYg2fC0XbeGrJay xUW32czNDQjFxCSkKlhQCUbbs2tueKi2EoapMMpfxdd2xAGVTBNXQfYdrcO/VLjU C+fqfSbJXm9zCRgBeDQ3Dxw8Y+fOOGRmWo3HgFH59lvpHV4dtkbJbUGscauJN6CN G39dMpzzDeIiVGTGNBNKP+YbTaAtVy9GH2hbT9dW5awUKLG34Q2N4GJ9U0+MHNrx qeddTg71KAO9Ynd2PAHlJSq8/FNJna0Vi+Qngffh98+WSId3HFrD9uvLCYf0E1Fk +1Japr5LurNL2JU2V2GZ457yAABbpaPMPubrr+EnD9APX18uJx6UZ2p3hvUU6QpV dV0WYxP9+GjHY+CjctmFpUizFqwM6ypWZ1GoAInBIAbvJabmp0KkW0aMD4gw6XxW qbT0G4DVJ5YdMYoAqequXmdelQIID5apLXbex14cQokcJ0W/8zaWL2Pg/RoM6dPZ 1SPDp0hmcrpOPRmcb4+Qbz8V9OOAEr3wIagj3dqNWLS+TAJzZzV2Yn0B3DQtvTUh da0T14h/gz27UShWYY9dz268ZzgEkoHOmBFiBXWlXfHpUvFkwag= =CMad -----END PGP SIGNATURE----- --nextPart3362793.YrVoEOf5kG-- From nobody Thu May 15 15:57:29 2025 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 4Zyvx53SF2z5wXSC; Thu, 15 May 2025 15:57:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyvx52WhPz4NlB; Thu, 15 May 2025 15:57:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747324649; 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=Z7BOYFQORHdw6Xt6R4FEJFBcE8g47YF39RihnW1YzZY=; b=f7IdgZ6TWlMukCwjFFTCPCKSytr9pK+zhQvLnmEGLwuoJTNfRMYXpx838KzYI5FmZkc5gg HgKJW6vuZj787AMGEUrk6vVlAJkJijIT+6rdZf7h+3vDlSYkb/CC2Kah1kgklUlc7oodL0 YTm6oEG5T3pYynFMr8YrvEJgpt0Qldcekx1WDiLstpSQi0KlQG5oroid9XTIlgtuKk5EnP kltPV2NuCxzEad6BT4X4fvFwsirzIDj0DOfEp/awuaJ3tUrxyy0dsK/p6R/0VvOMId7gXQ JCJ4Dz+Ijn4vqBG0hmQd5JzHHvWulYIpVxYP8um74CXJ1/1A3VguFdXXqGJUuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747324649; 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=Z7BOYFQORHdw6Xt6R4FEJFBcE8g47YF39RihnW1YzZY=; b=qRBWoZZZfcSW5X/s3ruJvM88FE2zB1o0zVfkWK/GP7TUtHjSpXp3QRpdFbc/fnHDzFo+vJ cpeN1ICqf/pRY9aqdu6yt4jKaO9gVAbI1J/BGTHzo0gSocr8vPM9dMv11RToH/No4GnduI yxZ/Ds0sdeqehKV/CoU8ubnIUOYe+vUf0qXekYn5zjd68dgh970vf2tHTDLQJBQY4jUJfj A0mZ3ibadG74nSYdKoopZHfnLZIfz3qpzRFoii8KO4VIE+EJ5c/eCMJEgzoSm8MjXaOmKP OyYuF5pDdSsh4ETjRKnfBDIE1Ozj1TsiIqxg61ZWFzn+YRTwY4qc2XgelSYWrg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747324649; a=rsa-sha256; cv=none; b=yHkOqki5MMT00+JVleybEItMu2aDnYglDrvCKbBBJfH39gWY5WrfFCtady9A6CXfw2fHbP i+ru6Pm2pBjG1sIBwPETTD9odHCrKL1vJ+Xp8jkcynKVenFB17FoX01D10ZxRF4/6/Si1l m/cAkK0D51VRYcnCcBweTUfYaBby5JRuIYsOru1zcaH/Z6z+9mhkXjCjwRfItA4Tdfrt9l gLGHDKb0Hx4z5S2kJlRyBaVPXy0w7zqOZ2ffyvPMfA7mL5D8bQPJFg5ln/z5lEvid+DE2m D872gaM8DLYFHdrN/mSjjHdzdKgwNC+jmB4DN8pICWFxVd3VMJ9PtUd350ltOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyvx51wtkz8f8; Thu, 15 May 2025 15:57:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FFvT4M027766; Thu, 15 May 2025 15:57:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FFvT3t027763; Thu, 15 May 2025 15:57:29 GMT (envelope-from git) Date: Thu, 15 May 2025 15:57:29 GMT Message-Id: <202505151557.54FFvT3t027763@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: e9baf472a6d2 - main - vfs: vntblinit(): Raise default 'kern.maxvnodes' higher than 'kern.maxfiles' 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e9baf472a6d228a16be19a11150d41cff29affe8 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=e9baf472a6d228a16be19a11150d41cff29affe8 commit e9baf472a6d228a16be19a11150d41cff29affe8 Author: Olivier Certner AuthorDate: 2025-05-12 12:19:56 +0000 Commit: Olivier Certner CommitDate: 2025-05-15 15:53:21 +0000 vfs: vntblinit(): Raise default 'kern.maxvnodes' higher than 'kern.maxfiles' Having 'kern.maxvnodes' higher than 'kern.maxfiles' mitigates a scenario where some processes can eat up all vnodes in the system, causing a deadlock, as long as the kernel itself does not create too many vnodes without creating some file descriptor in some process' FD table. A very small percentage (~0.6%) of excess vnodes at infinity, coupled with a large difference near the origin, should cover basic cases more than enough. Note however that this measure can be defeated, e.g., by using nullfs mounts with non-trivial file hierarchies. MFC after: 5 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50314 --- sys/kern/vfs_subr.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 769586ad0d6b..0464df2f5ad9 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -762,13 +762,12 @@ vntblinit(void *dummy __unused) * KVA). * * Currently, on 64-bit platforms, 'desiredvnodes' is set to - * 'virtvnodes' up to a physical memory cutoff of ~1674MB, after which + * 'virtvnodes' up to a physical memory cutoff of ~1722MB, after which * 'physvnodes' applies instead. With the current automatic tuning for - * 'maxfiles' (32 files/MB), 'desiredvnodes' becomes smaller than it at - * ~5136MB. + * 'maxfiles' (32 files/MB), 'desiredvnodes' is always greater than it. */ - physvnodes = maxproc + pgtok(vm_cnt.v_page_count) / 64 + - 3 * min(98304 * 16, pgtok(vm_cnt.v_page_count)) / 64; + physvnodes = maxproc + pgtok(vm_cnt.v_page_count) / 32 + + min(98304 * 16, pgtok(vm_cnt.v_page_count)) / 32; virtvnodes = vm_kmem_size / (10 * (sizeof(struct vm_object) + sizeof(struct vnode) + NC_SZ * ncsizefactor + NFS_NCLNODE_SZ)); desiredvnodes = min(physvnodes, virtvnodes); From nobody Thu May 15 18:17:48 2025 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 4Zyz304FqSz5whhV; Thu, 15 May 2025 18:17:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz302fVqz3FMN; Thu, 15 May 2025 18:17:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333068; 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=M6dsfvNVO8/5TelRxTlclCewgRIKzgARrqrRZX13jdc=; b=VX/s6Mg8UxInFWpSeHRKw/qvXHPpFW37wSIcbzN78O8//Im61bGBM5sTD+wGF8Rvw8CtBu ajFv1b+QiSQcMwgf6tTViipPdXo/pn3+ixHmDLlCPXDl9M4t4dA1cEe1WhESOv/3coLDQy jCAzUqGYhf/sxNpZ2LuKBjPTGqlcALAy/i9nzLzbvkXJnWp82np+NBoL3jvVkJAVworRk3 SyCVhumr7PSSR1lkeaQWXRX8lKeeH5eNtSOCpFCw/5QyEPRZFZ+FOOowT8gc+l5oDl5RPk HWD34FEERHsKHvRE6lJFvCa9zS1sKhCLI+TLcVx63yVlFlkY+2clXzYQVJPxSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333068; 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=M6dsfvNVO8/5TelRxTlclCewgRIKzgARrqrRZX13jdc=; b=tBmn+dDbWFvNxd5f2wx8+sbHU88qekwjdu0LRcW0CDBNMhwQ1HNXvczkyz83RbwIKhlQCO l1RiQwS54iHaeI3qANkvSyA4fpL9llGQpIoU6/9KnxFuCIKDyEij2PQ2kt/sn/44sgUaWv TOdBfbhY2w3P8kPDbZFblUw/SFRfVbkPtR33iiOlPuh6nHgH9BE5By0Bdmjc7TeYKiqv+7 BoTRAHk/MvxX9gIqzrF/LhW3tReFAgbMd4yVN+Quz1vAku65XTy6xUKmNpvwtibrL27uz8 4yzcEXjm6LwtwRXD5HM+uydmnXK0i3JsBrS8gGivP1NW36hfn5nTpdhkLlEoJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333068; a=rsa-sha256; cv=none; b=eN7YvtN1ooRwmvUt6CWmk6MuiRLFHO4dr2EgMu+EyV+ovjf8mMCvl3JnhzZtaHw1knDtu2 F6nOldAMIX16GcmTOdDQ4HfI4Kl/W0FG25wbxbhVNyHbDGmLLbK5P/4EQ/F+suk9ol5Nj+ WipkTAzIDaUecRvHT5HPHWG0p/T873SMr9NOuQgvEOnri9zSjA0VDic6x26CSlM3wAfFrH kfzZYH8FTyPO86BPRRIoyggx20FZ1j3ar7+Y1hCcLAlcle8HGf2MIP6eChaZN67p8HX/Fv NjUT3HUSfodi/5PrEIUlaqRGRdK50b8osqw/3C6VD48reEccM5U5OM1iI7hpBg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz3029KszD0p; Thu, 15 May 2025 18:17:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHmqf090163; Thu, 15 May 2025 18:17:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHm4l090160; Thu, 15 May 2025 18:17:48 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:48 GMT Message-Id: <202505151817.54FIHm4l090160@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: c58c931e2004 - stable/14 - ig4_iic: Allow sleeping if called from iichid interrupt handler. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c58c931e20045a6e254df5901e0321b537337440 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=c58c931e20045a6e254df5901e0321b537337440 commit c58c931e20045a6e254df5901e0321b537337440 Author: Vladimir Kondratyev AuthorDate: 2025-03-07 06:26:51 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:11:55 +0000 ig4_iic: Allow sleeping if called from iichid interrupt handler. This replaces 50 ms busy loop with mtx_sleep for the same duration thus saving CPU time when iichid is driven with interrupts. Sponsored by: Future Crew, LLC MFC after: 2 month Differential Revision: https://reviews.freebsd.org/D48956 (cherry picked from commit c7225a3ede3cf99c538158962f4d65dee435bbcd) --- sys/dev/ichiic/ig4_iic.c | 5 +---- sys/dev/ichiic/ig4_var.h | 1 - sys/dev/iicbus/iichid.c | 3 +++ 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/dev/ichiic/ig4_iic.c b/sys/dev/ichiic/ig4_iic.c index 749a39e25117..31b097fd68bb 100644 --- a/sys/dev/ichiic/ig4_iic.c +++ b/sys/dev/ichiic/ig4_iic.c @@ -72,7 +72,7 @@ #include #include -#define DO_POLL(sc) (cold || kdb_active || SCHEDULER_STOPPED() || sc->poll) +#define DO_POLL(sc) (cold || kdb_active || SCHEDULER_STOPPED()) /* * tLOW, tHIGH periods of the SCL clock and maximal falling time of both @@ -713,14 +713,11 @@ ig4iic_callback(device_t dev, int index, caddr_t data) if ((how & IIC_WAIT) == 0) { if (sx_try_xlock(&sc->call_lock) == 0) error = IIC_EBUSBSY; - else - sc->poll = true; } else sx_xlock(&sc->call_lock); break; case IIC_RELEASE_BUS: - sc->poll = false; sx_unlock(&sc->call_lock); break; diff --git a/sys/dev/ichiic/ig4_var.h b/sys/dev/ichiic/ig4_var.h index 964a610e7408..cb44a1e7cd58 100644 --- a/sys/dev/ichiic/ig4_var.h +++ b/sys/dev/ichiic/ig4_var.h @@ -92,7 +92,6 @@ struct ig4iic_softc { bool platform_attached : 1; bool use_10bit : 1; bool slave_valid : 1; - bool poll: 1; /* * Locking semantics: diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c index e99facdb06bb..fd544e82b2fc 100644 --- a/sys/dev/iicbus/iichid.c +++ b/sys/dev/iicbus/iichid.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -602,7 +603,9 @@ iichid_intr(void *context) * acknowledge interrupts we fetch only length header and discard it. */ maxlen = sc->power_on ? sc->intr_bufsize : 0; + THREAD_SLEEPING_OK(); error = iichid_cmd_read(sc, sc->intr_buf, maxlen, &actual); + THREAD_NO_SLEEPING(); if (error == 0) { if (sc->power_on) { if (actual != 0) From nobody Thu May 15 18:17:49 2025 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 4Zyz316WR8z5wjFk; Thu, 15 May 2025 18:17:49 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz313fDSz3FjF; Thu, 15 May 2025 18:17:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333069; 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=GwllhAEtHldXUmfR8tq2x88v4UnWoM8/nuLZNPXyk+o=; b=aUl1sWRX1ml3vV2yFom9b00VyK3UomouARbqbWf0feRYi6Oz73B7MkpmN2seuR90aBS2Qh MKvinuYf1pc3YJ1KgHZJohfUakoN3acwpZdXBaGYtyUiPpZgMbmdvxkqrzIB2Gkbcw78F9 1GiTNY94B+BnJq8n1ys/mmeQa4xza7p+HLHfkI2ZDKfRJ2jLe4jLeRTOyby2ljANYpS6x8 OewTsre2iTrU2NMpdKGKXEIsMRSzek0LvQ264hy+o2WI1rOOK14vd9izd6Nr33WMhr4pIJ EilTu/ZUVwgsaEyBkQ6fi2qazXFpP60nsVTPO2iLZHd5hHFj6EEerdXIOOyYAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333069; 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=GwllhAEtHldXUmfR8tq2x88v4UnWoM8/nuLZNPXyk+o=; b=heiHqVAUxh5CZK9liE7mn9y4Z4ss5QIyNbbMuU+dixZP53GFBMw6fxS0/MTVGl6cnw/yeB 8lG+fQ1omHN/eq9wEzhcz6Y1R3BiQQMMfy3eJqdnYSdJ3lRWRO2WTPUhOx2G53HKRDBKmV xPK0EUzpmJ/igtMJNpfS7ESRLtpz2/lZ+e/vM4RfApHsywzAATnA7v4NXg6HpLofozGomx 0U1N/za2lTXti10WktI7izgmmh+KrZATQ0mGmHNinNgrQnOb9zaNTD7hOxo2S9QFATgQzH ky6weIZ8UiMpOP8KWjbxUQibPhyMmHD2kDO4bhkPBZXfy1uZSfoN6NPL7FIIcw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333069; a=rsa-sha256; cv=none; b=e3V02r4oO1l64YqSEybqSPdykzu2BynwBx2KfZpPjPEULqxo4nc2ozEZvK10uoTRblElpw /T+uawWQRtzBUWWcN6x2I6JPU/hwQMeM0wwYWCAJFrfIiF3TI7S5TcwNZQFDuLCQxJyu2G Nhfeq/5wAIZwoXfzqcrWaNegISC6bsIv66iO2invnT7YhCwEpFE8mPx/D5YKnKGEiWR3mz HLi71RfUElSYie4hF9j4MDPSFPBgf6Q2InmaIVfNhCo/8JwZflh12O0Fm2RSdmdIHcVD1Q 1kMRKnvzrM5vuheZd/HT16w78ejeI61HBEyUYtokZ7gss5eq4rbgnWu19QKOUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz3135PZzDBl; Thu, 15 May 2025 18:17:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHnra090196; Thu, 15 May 2025 18:17:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHn8h090193; Thu, 15 May 2025 18:17:49 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:49 GMT Message-Id: <202505151817.54FIHn8h090193@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: 3bd684f0aafe - stable/14 - iichid(4): Read wMaxInputLength bytes over I2C even if we discards data 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3bd684f0aafe046d07b241a76bbec7feacff88b5 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=3bd684f0aafe046d07b241a76bbec7feacff88b5 commit 3bd684f0aafe046d07b241a76bbec7feacff88b5 Author: Vladimir Kondratyev AuthorDate: 2025-03-07 06:26:51 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:12:08 +0000 iichid(4): Read wMaxInputLength bytes over I2C even if we discards data For some devices e.g. ITE5570 it is not enough to read HID-over-I2C input length header of RESET command response to acknowledge interrupt. Do a full-size read to avoid interrupt storm. Sponsored by: Future Crew LLC MFC after: 2 month Differential Revision: https://reviews.freebsd.org/D48957 (cherry picked from commit 548d3aa856a97f4483554beceeb57fa9ba0ff913) --- sys/dev/iicbus/iichid.c | 47 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c index fd544e82b2fc..577b0952e107 100644 --- a/sys/dev/iicbus/iichid.c +++ b/sys/dev/iicbus/iichid.c @@ -284,11 +284,25 @@ iichid_cmd_read(struct iichid_softc* sc, void *buf, iichid_size_t maxlen, return (error); actlen = actbuf[0] | actbuf[1] << 8; - if (actlen <= 2 || actlen == 0xFFFF || maxlen == 0) { +#ifdef IICHID_SAMPLING + if ((actlen == 0 && sc->sampling_rate_slow < 0) || + (maxlen == 0 && sc->sampling_rate_slow >= 0)) { +#else + if (actlen == 0) { +#endif + /* Read and discard reset command response. */ + msgs[0] = (struct iic_msg) + { sc->addr, IIC_M_RD | IIC_M_NOSTART, + le16toh(sc->desc.wMaxInputLength) - 2, sc->intr_buf }; + actlen = 0; +#ifdef IICHID_SAMPLING + } else if ((actlen <= 2 || actlen == 0xFFFF) && + sc->sampling_rate_slow >= 0) { /* Read and discard 1 byte to send I2C STOP condition. */ msgs[0] = (struct iic_msg) { sc->addr, IIC_M_RD | IIC_M_NOSTART, 1, actbuf }; actlen = 0; +#endif } else { actlen -= 2; if (actlen > maxlen) { @@ -580,7 +594,7 @@ iichid_intr(void *context) { struct iichid_softc *sc; device_t parent; - iichid_size_t maxlen, actual; + iichid_size_t actual; int error; sc = context; @@ -602,9 +616,8 @@ iichid_intr(void *context) * (to ON) before any other command. As some hardware requires reads to * acknowledge interrupts we fetch only length header and discard it. */ - maxlen = sc->power_on ? sc->intr_bufsize : 0; THREAD_SLEEPING_OK(); - error = iichid_cmd_read(sc, sc->intr_buf, maxlen, &actual); + error = iichid_cmd_read(sc, sc->intr_buf, sc->intr_bufsize, &actual); THREAD_NO_SLEEPING(); if (error == 0) { if (sc->power_on) { @@ -812,6 +825,7 @@ iichid_intr_setup(device_t dev, device_t child __unused, hid_intr_t intr, void *context, struct hid_rdesc_info *rdesc) { struct iichid_softc *sc; + device_t parent; if (intr == NULL) return; @@ -821,33 +835,38 @@ iichid_intr_setup(device_t dev, device_t child __unused, hid_intr_t intr, * Do not rely on wMaxInputLength, as some devices may set it to * a wrong length. Find the longest input report in report descriptor. */ - rdesc->rdsize = rdesc->isize; + rdesc->rdsize = + MAX(rdesc->isize, le16toh(sc->desc.wMaxInputLength) - 2); /* Write and get/set_report sizes are limited by I2C-HID protocol. */ rdesc->grsize = rdesc->srsize = IICHID_SIZE_MAX; rdesc->wrsize = IICHID_SIZE_MAX; + parent = device_get_parent(sc->dev); + iicbus_request_bus(parent, sc->dev, IIC_WAIT); + sc->intr_handler = intr; sc->intr_ctx = context; - sc->intr_buf = malloc(rdesc->rdsize, M_DEVBUF, M_WAITOK | M_ZERO); sc->intr_bufsize = rdesc->rdsize; + sc->intr_buf = realloc(sc->intr_buf, sc->intr_bufsize, + M_DEVBUF, M_WAITOK | M_ZERO); #ifdef IICHID_SAMPLING - sc->dup_buf = malloc(rdesc->rdsize, M_DEVBUF, M_WAITOK | M_ZERO); + sc->dup_buf = realloc(sc->dup_buf, sc->intr_bufsize, + M_DEVBUF, M_WAITOK | M_ZERO); taskqueue_start_threads(&sc->taskqueue, 1, PI_TTY, "%s taskq", device_get_nameunit(sc->dev)); #endif + iicbus_release_bus(parent, sc->dev); } static void iichid_intr_unsetup(device_t dev, device_t child __unused) { +#ifdef IICHID_SAMPLING struct iichid_softc *sc; sc = device_get_softc(dev); -#ifdef IICHID_SAMPLING taskqueue_drain_all(sc->taskqueue); - free(sc->dup_buf, M_DEVBUF); #endif - free(sc->intr_buf, M_DEVBUF); } static int @@ -1132,6 +1151,8 @@ iichid_attach(device_t dev) sc->power_on = true; + sc->intr_bufsize = le16toh(sc->desc.wMaxInputLength) - 2; + sc->intr_buf = malloc(sc->intr_bufsize, M_DEVBUF, M_WAITOK | M_ZERO); TASK_INIT(&sc->suspend_task, 0, iichid_suspend_task, sc); #ifdef IICHID_SAMPLING sc->taskqueue = taskqueue_create_fast("iichid_tq", M_WAITOK | M_ZERO, @@ -1142,6 +1163,7 @@ iichid_attach(device_t dev) sc->sampling_rate_slow = -1; sc->sampling_rate_fast = IICHID_SAMPLING_RATE_FAST; sc->sampling_hysteresis = IICHID_SAMPLING_HYSTERESIS; + sc->dup_buf = malloc(sc->intr_bufsize, M_DEVBUF, M_WAITOK | M_ZERO); #endif sc->irq_rid = 0; @@ -1164,6 +1186,7 @@ iichid_attach(device_t dev) if (sc->irq_res != NULL) bus_release_resource(dev, SYS_RES_IRQ, sc->irq_rid, sc->irq_res); + iichid_detach(dev); error = ENXIO; goto done; #endif @@ -1189,7 +1212,7 @@ iichid_attach(device_t dev) if (sc->sampling_rate_slow >= 0) { pause("iichid", (hz + 999) / 1000); - (void)iichid_cmd_read(sc, NULL, 0, NULL); + (void)iichid_cmd_read(sc, sc->intr_buf, 0, NULL); } #endif /* IICHID_SAMPLING */ @@ -1235,7 +1258,9 @@ iichid_detach(device_t dev) if (sc->taskqueue != NULL) taskqueue_free(sc->taskqueue); sc->taskqueue = NULL; + free(sc->dup_buf, M_DEVBUF); #endif + free(sc->intr_buf, M_DEVBUF); return (0); } From nobody Thu May 15 18:17:50 2025 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 4Zyz331YdFz5wj2N; Thu, 15 May 2025 18:17:51 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz324R88z3Fgr; Thu, 15 May 2025 18:17:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333070; 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=NWEKZYNfTHBpi0PLmenunEqfy6jBNO9WGjfYRKThVeE=; b=Ro6XGyLM97ob28Y152crHdGQLrvtlQqjA/rZ8zrJbHOV4QPmFgdRYutMrutIqKVNWL4pQm P/nkfBjae+7o5qOHuaOZ4ereNwOC+lRSjwWoUdjEj9jwi8kCfygGAhmMXiyr1PEmroTz+o GABjz4TMlxmJR4A0STui0t3ttVOA8GZUcgAKsAu6BYYy7Zj8SwfQZM17etuZFjFFi68AzK NtSL9KK2ui7E63KLm4kj8S06++N1UGXIlCjWpa8iFTnHWEsUPg8LlzaoGjzLs33r8OB++4 pROI9pSGHAyLEvsvg6px3sNzwfLXGYRlM/6kSWUEKUR704MqCPICXa7ccyclTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333070; 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=NWEKZYNfTHBpi0PLmenunEqfy6jBNO9WGjfYRKThVeE=; b=gHtn00s/oIB0DJQf37eGUCR6plQGiBMnTV//AaE4bXsaZCNY8fymheg7yBf2kHxLQra7wR MOlbiME7YG9GuNen8zwHhk/j5TxKfL22PRt0oU+qB5uZX0M7uSPZQGqs0ojGesXDWK4iju 2fdkVf2Y2mX01OsRf2mGavxeKrSocb5Gt4cMxB3r/av5Be7OFbGRJ6ZaKlaTM6gVkJxoaz 561XjYBErugxVJqFiDd6CZr9QzMaAhd9yO8yt6ae+Lmb4ga6kMAiVqee7r1juJsWM+fO7m LFKR/Ea2R/RFWBm0ti/N/sMaEoJsIG+e/xG+7zujeK9FjY9Jfci14YfpWo6lww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333070; a=rsa-sha256; cv=none; b=CdET/z0Rlb3sZEkxNOCdcPL/2UsCQy3rRbz+JCP5znTp1S43gn1cekd5QB/NgjFPf8n0Qj 7yKrxuwKRGssDRX9Dviw1Si9hA3e8N+my/H9gcWYax95wXoJmyFBCq+Q9hTxVABsxjvEWJ d1FucaokbnFbbzRxkbh40QNn7XTBpllpZjGXL9ifwJWMrnP9TnV1AwMcgZQB8EUzHEoBxl hK/35l9NG+fcngzl63a4e7FNwrY72RnhW5j5mhFgONwh4BvEzl2czj7GzEoGqwl8yd65rm rcHzUdk57+2mOxkfxmSc8Za2ELhd5XPQEYu9KOgR8YsMaHJgQHHHhTZL5L2UVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz3242fLzD0q; Thu, 15 May 2025 18:17:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHo5v090230; Thu, 15 May 2025 18:17:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHoWf090227; Thu, 15 May 2025 18:17:50 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:50 GMT Message-Id: <202505151817.54FIHoWf090227@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: 072e0b158004 - stable/14 - iichid(4): Wait for RESET command response while attaching 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 072e0b158004a2cc7870e81ba482805f7f60b7c3 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=072e0b158004a2cc7870e81ba482805f7f60b7c3 commit 072e0b158004a2cc7870e81ba482805f7f60b7c3 Author: Vladimir Kondratyev AuthorDate: 2025-03-07 06:26:51 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:12:19 +0000 iichid(4): Wait for RESET command response while attaching before starting of children initialization to ensure that parent device is fully functional. Sponsored by: Future Crew LLC MFC after: 2 month Differential Revision: https://reviews.freebsd.org/D48958 (cherry picked from commit daa098cc37b9db36281623c00558976aea4fa90e) --- sys/dev/iicbus/iichid.c | 55 ++++++++++++++++++++++++++++++++++++------------- 1 file changed, 41 insertions(+), 14 deletions(-) diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c index 577b0952e107..0e4aa649ff48 100644 --- a/sys/dev/iicbus/iichid.c +++ b/sys/dev/iicbus/iichid.c @@ -98,6 +98,8 @@ enum { #define I2C_HID_POWER_ON 0x0 #define I2C_HID_POWER_OFF 0x1 +#define IICHID_RESET_TIMEOUT 5 /* seconds */ + /* * Since interrupt resource acquisition is not always possible (in case of GPIO * interrupts) iichid now supports a sampling_mode. @@ -156,6 +158,7 @@ enum iichid_powerstate_how { */ struct iichid_softc { device_t dev; + struct mtx mtx; bool probe_done; int probe_result; @@ -190,6 +193,7 @@ struct iichid_softc { bool open; /* iicbus lock */ bool suspend; /* iicbus lock */ bool power_on; /* iicbus lock */ + bool reset_acked; /* iichid mtx */ }; static device_probe_t iichid_probe; @@ -295,6 +299,12 @@ iichid_cmd_read(struct iichid_softc* sc, void *buf, iichid_size_t maxlen, { sc->addr, IIC_M_RD | IIC_M_NOSTART, le16toh(sc->desc.wMaxInputLength) - 2, sc->intr_buf }; actlen = 0; + if (!sc->reset_acked) { + mtx_lock(&sc->mtx); + sc->reset_acked = true; + wakeup(&sc->reset_acked); + mtx_unlock(&sc->mtx); + } #ifdef IICHID_SAMPLING } else if ((actlen <= 2 || actlen == 0xFFFF) && sc->sampling_rate_slow >= 0) { @@ -1136,21 +1146,9 @@ iichid_attach(device_t dev) device_printf(dev, "failed to power on: %d\n", error); return (ENXIO); } - /* - * Windows driver sleeps for 1ms between the SET_POWER and RESET - * commands. So we too as some devices may depend on this. - */ - pause("iichid", (hz + 999) / 1000); - - error = iichid_reset(sc); - if (error) { - device_printf(dev, "failed to reset hardware: %d\n", error); - error = ENXIO; - goto done; - } - sc->power_on = true; + mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); sc->intr_bufsize = le16toh(sc->desc.wMaxInputLength) - 2; sc->intr_buf = malloc(sc->intr_bufsize, M_DEVBUF, M_WAITOK | M_ZERO); TASK_INIT(&sc->suspend_task, 0, iichid_suspend_task, sc); @@ -1209,12 +1207,40 @@ iichid_attach(device_t dev) &sc->sampling_hysteresis, 0, "number of missing samples before enabling of slow mode"); hid_add_dynamic_quirk(&sc->hw, HQ_IICHID_SAMPLING); +#endif /* IICHID_SAMPLING */ + + /* + * Windows driver sleeps for 1ms between the SET_POWER and RESET + * commands. So we too as some devices may depend on this. + */ + pause("iichid", (hz + 999) / 1000); + + error = iichid_reset(sc); + if (error) { + device_printf(dev, "failed to reset hardware: %d\n", error); + iichid_detach(dev); + error = ENXIO; + goto done; + } + /* Wait for RESET response */ +#ifdef IICHID_SAMPLING if (sc->sampling_rate_slow >= 0) { pause("iichid", (hz + 999) / 1000); (void)iichid_cmd_read(sc, sc->intr_buf, 0, NULL); - } + } else #endif /* IICHID_SAMPLING */ + { + mtx_lock(&sc->mtx); + if (!sc->reset_acked && !cold) { + error = mtx_sleep(&sc->reset_acked, &sc->mtx, 0, + "iichid_reset", hz * IICHID_RESET_TIMEOUT); + if (error != 0) + device_printf(sc->dev, + "Reset timeout expired\n"); + } + mtx_unlock(&sc->mtx); + } child = device_add_child(dev, "hidbus", -1); if (child == NULL) { @@ -1261,6 +1287,7 @@ iichid_detach(device_t dev) free(sc->dup_buf, M_DEVBUF); #endif free(sc->intr_buf, M_DEVBUF); + mtx_destroy(&sc->mtx); return (0); } From nobody Thu May 15 18:17:51 2025 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 4Zyz341Vgcz5wj43; Thu, 15 May 2025 18:17:52 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz335rk5z3Fby; Thu, 15 May 2025 18:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333071; 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=EWFexlDfkdbCGQWUxobCzOAaYsEnSCHxamz5RvwNKsc=; b=UmZw4j01joGk8xeYEJ7L65XPyTXLVXIBoyC2VlDrsPpMcXO8zJY6EQWSqd2OhCvj+2SU8J VtbhsHpSzHDbu47v/DwcxshiBMQXOe6zVoD2g7nl46wpROj/xL9DLSwRzHFV69LN8BWiZ4 p/WD9hpkPoBwAwdrCNXoUKlJ+AHxECHiPdOBqSajH8MWkD0C8MwwB7w8V2kYW9TNzyoOSs BaIAcD//ITHaO4EDRhFbgL/A4XGXNR5v8959+5FE0gwzVetdH6oQDTmC7kCnX5yGLQlcCQ B5G9kUk+jPglr63sitxXoTngpJUf6ukHI3JwInd6NB63qafz7CLIVMyZcq/Ctw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333071; 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=EWFexlDfkdbCGQWUxobCzOAaYsEnSCHxamz5RvwNKsc=; b=gCxbpjg/mS3s5R63z8LFd4SFN+PwCujyWsFy3a7leWAlxWe6Nl4N9/2GpPvI7Z0ZtuX2RI Hk8mrQTM6+uh6ludUB5X14TWFeP+zRqCqCLKg5qgrGoPvGw/cxDOqjQaPfmIbq/TwDCfOJ uFrCNiD2tp2CWAAmxkAUWmH2juy+k6/V9I3tzrLplqAaORobCTPtcpTFcSfJfsh80mFEfd TklLHkKxLmIbJ1aqOm/+K5z9C3CP/eKd+Jp7qJx75XtQfTl9mA8d+hL4CNjUHSJQYXS4vi DCgXWiGyrb2wl0XbqKVqkU1V4IvBDvmauiRvOQOiuNws9oy4htAQuythtTS2HQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333071; a=rsa-sha256; cv=none; b=cetBQez5PAjHkW5ByQvqSFAMDqctZPLMlOeiz8QP/BVetFNkDUGj/ZGc/W5I7aV8IszfK0 3a9yVANmCk+dvOIH3Sl8K1cLbMtk4rS2BiETnR81RfieFfa8RrzpFUCSa9GaGh9vGKN1+o c4o+/Lnpy3E3o8xb32kETNyfoCbQ1E3tMzJFtVBm0TYg3KbY1b3kipgexTjRvwZxWSKUn8 rDxfoLuFkQ6q0CdBkyCwpCnjXz+/HNJd3GRXrvCPxTB131LP3JGFIlzlbWgOzPMAoSy1FB gaqrM6pL3G0j9ieyzXbEfBoy1t6qS1BygojltN7EJQ439raGkpSkBMdE8Xajzw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz335LnNzD8d; Thu, 15 May 2025 18:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHpUk090268; Thu, 15 May 2025 18:17:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHpsN090263; Thu, 15 May 2025 18:17:51 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:51 GMT Message-Id: <202505151817.54FIHpsN090263@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: 7798b72a9000 - stable/14 - iichid(4): Do not send packets read in interrupt handler to hidbus 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7798b72a90004cab0e6790060a18c00b87750341 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=7798b72a90004cab0e6790060a18c00b87750341 commit 7798b72a90004cab0e6790060a18c00b87750341 Author: Vladimir Kondratyev AuthorDate: 2025-04-28 21:39:28 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:13:41 +0000 iichid(4): Do not send packets read in interrupt handler to hidbus if no hidbus and hidbus clients were attached and opened by users. iichid(4) enables interrupts before hidbus is attached and sending packets to it at this time leads to panic at boot time. Fixes: daa098cc37b9 ("Wait for RESET command response while attaching") Tested by: dch PR: 286045 MFC with: daa098cc37b9 (cherry picked from commit 2abdb305bd0c105226f6a71a8d3dc89698c9ef6b) --- sys/dev/iicbus/iichid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c index 0e4aa649ff48..fc905ca48b7e 100644 --- a/sys/dev/iicbus/iichid.c +++ b/sys/dev/iicbus/iichid.c @@ -630,7 +630,7 @@ iichid_intr(void *context) error = iichid_cmd_read(sc, sc->intr_buf, sc->intr_bufsize, &actual); THREAD_NO_SLEEPING(); if (error == 0) { - if (sc->power_on) { + if (sc->power_on && sc->open) { if (actual != 0) sc->intr_handler(sc->intr_ctx, sc->intr_buf, actual); From nobody Thu May 15 18:17:52 2025 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 4Zyz360vfPz5wj4L; Thu, 15 May 2025 18:17:54 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz346pGXz3FjX; Thu, 15 May 2025 18:17:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333073; 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=y7WVtsqVvKlO4562k4UeOnhXHsAM7VEN7Yav3VxwesM=; b=CHIEmqA5MbwUTMbhZ9SjWoxczCNl/NV+B1rqkl2BQav7m62SRR2s6/+OwImwyoFD1gA02o NI9Hg9G/zdeaSAQjMs3y8968fL8w4aiGtvEebdb8CaIjkaMdaJD6X0qp3/IDCwfN43HUtF gA3OF3gFYUhoGVOf/XYriyQTc6SBNEuiIxnmd6FXqSAiffPO7BhDMLSpBKX5ffzNmYPbI6 oC6kvpPWS23BRezBQtygtvA29BrvkW7aoycqC4BpOEqTEnytK+tMQyvndQcWfaARA21h1Q orpWc6Q8kBSDskdRIiiNW1a7cbgshVTWwm9pYT0HostIgtuiv2vwEDbxZHGA5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333073; 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=y7WVtsqVvKlO4562k4UeOnhXHsAM7VEN7Yav3VxwesM=; b=Is4S9N5r9U08WZC85qxAdPiLauBnmT7w+uCaRaAdBshVipQVSHs3triFUzrC68/YLJ0exh 38AM7+QFTaMUv58mqbMI07q9GheNHRDforj99/n9hx/1qtoRNqCQDEHDV1T+LhPIAQYuDs 1KmVNNLRzw6nS1hJhQ3EFFecySVvAR/0Ah3uy7MjDUgvsoqHN6yk7/oi4GU9c0KtOlnJy1 uH8vHk3yTiWKA/ullO5LUOECAnwMKELHwh04Y5rF2WW2qmbrFCCQw0E0+LZ40jCGpDjRRG U1avMK0J0fae31lxXfG7oJGvBDprKnn2fxetn4/fvjjYm3fZpzFqCRWGFbyyaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333073; a=rsa-sha256; cv=none; b=b0ybo5kAJzlQMFcqyebj7zjuHHAUOUmX+qstvIQgu9NubZVA9A90lgU6DRN8pAqWTWKW+B zI0COofpcH1KSjYddFyZnD8bIxgf02edLvfwG8QDyrB2QdrTq+Hb6+WA7ybksIA3pmgkSH 1HUVOOvep0D1nkCJtlpXTqQLqK/WXmaqaTTGJjjkb5TKfcsylZVYpbfv3d9x+evzg7Br6L 5l71ILXFqSZ83fWENwKQmIlS78ZXhgEW1DMAjhhUdi1PXMFqAhyCV+BjwtAzWKGpw0tNtj LI6gB58SaZ+uulQWGDPOrnmHdz1tKP7qAsjGWpnDhWwVANIWtpkdybKggNsEAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz3468J2zDBm; Thu, 15 May 2025 18:17:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHqm2090311; Thu, 15 May 2025 18:17:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHqLu090309; Thu, 15 May 2025 18:17:52 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:52 GMT Message-Id: <202505151817.54FIHqLu090309@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: 718273db61a5 - stable/14 - rtlbtfw(8): Add Mercusys MA530 VID/PID for Realtek 8761BUV 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 718273db61a5d1888a266febf7f71718f76b5c51 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=718273db61a5d1888a266febf7f71718f76b5c51 commit 718273db61a5d1888a266febf7f71718f76b5c51 Author: Vladimir Kondratyev AuthorDate: 2025-04-29 20:28:53 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:14:00 +0000 rtlbtfw(8): Add Mercusys MA530 VID/PID for Realtek 8761BUV Tested by: Yusuf Yaman PR: 286369 MFC after: 1 week (cherry picked from commit 7a7ab347fc6535a8c91d458dda76a61019163869) --- sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c | 1 + usr.sbin/bluetooth/rtlbtfw/main.c | 1 + usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf | 8 ++++++++ 3 files changed, 10 insertions(+) diff --git a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c index b9fbc1c12a29..c3fb98b46e6a 100644 --- a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c +++ b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c @@ -127,6 +127,7 @@ const STRUCT_USB_HOST_ID ubt_rtl_devs[] = { USB_VPI(0x2ff8, 0xb011, 0) }, /* Realtek 8761BUV Bluetooth devices */ + { USB_VPI(0x2c4e, 0x0115, 0) }, { USB_VPI(0x2357, 0x0604, 0) }, { USB_VPI(0x0b05, 0x190e, 0) }, { USB_VPI(0x2550, 0x8761, 0) }, diff --git a/usr.sbin/bluetooth/rtlbtfw/main.c b/usr.sbin/bluetooth/rtlbtfw/main.c index 029c04f98b26..e0445726c3a2 100644 --- a/usr.sbin/bluetooth/rtlbtfw/main.c +++ b/usr.sbin/bluetooth/rtlbtfw/main.c @@ -112,6 +112,7 @@ static struct rtlbt_devid rtlbt_list[] = { { .vendor_id = 0x2ff8, .product_id = 0xb011 }, /* Realtek 8761BUV Bluetooth devices */ + { .vendor_id = 0x2c4e, .product_id = 0x0115 }, { .vendor_id = 0x2357, .product_id = 0x0604 }, { .vendor_id = 0x0b05, .product_id = 0x190e }, { .vendor_id = 0x2550, .product_id = 0x8761 }, diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf index d544913aaa12..d45ba0bd92c4 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf @@ -213,6 +213,14 @@ notify 100 { }; # Realtek 8761BUV Bluetooth devices +notify 100 { + match "system" "USB"; + match "subsystem" "DEVICE"; + match "type" "ATTACH"; + match "vendor" "0x2c4e"; + match "product" "0x0115"; + action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; +}; notify 100 { match "system" "USB"; match "subsystem" "DEVICE"; From nobody Thu May 15 18:17:53 2025 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 4Zyz363dDyz5wjGn; Thu, 15 May 2025 18:17:54 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz361551z3Fjc; Thu, 15 May 2025 18:17:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333074; 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=7kn6vU4PyIjQGtNBXOmzFblQ0+y5hA8o2Wl6vm+rmqU=; b=hiDFHEoWnc9Aa/1CIFYnKwM+mLs2ed/nCHESRUsx72wqqDsn7zsBW85VxhPPHSicNGKccY 9pzvbls3sQJwvGfFIJUvV45kYz0Ul1h5F+os71kRvVuSqY0rrgQHJMWmpQYD2dSx1k/E5v /NrkEhr0QduHy+X2J3aAH2QFjxTBoqDc/qNWSuMFuiVxiK3hvhMbNhWTwutLvKv3Xuh4fW EHWe9nELotmwMyuRmLjHEs6beENLVbBfk9leUVnaTc1oChbb8PO0Wqukz+iSGxbuw7o77p FGbW3xKAasl9OvZeFCTei8SXAZpoNO32YwY2w3NFU+RkR4180VS179ss3RPxiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333074; 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=7kn6vU4PyIjQGtNBXOmzFblQ0+y5hA8o2Wl6vm+rmqU=; b=TGxYPN/CE9BD7W1wCT6drFtuqQQV9B7Ak0nxi+EoS49T6bp55M1ZkWc/L5GwnZXFOM6nmv GGKdDTC81vbstsjDoo0IWq8Jj1P3vdzeD8zqplX+mNp1ETfRn8ii/bT8RIKSkXcaeJAR0x vU2yZJUy1B9npZFCACnzLmRe/7uDq4suCltMDUjWudwIQKCbJfWsQXQQF9U6sGPsClO9RG pvTvdYxRIUHtp0pNSAoKP18Fx5crEcttObez5gjNSVI9otW6QFagBsHRd70RW0L9DKrPIP 2cFalEwoRJfs+eTXX7ZLhOCjHL3OJN78n0YRo0ukic+QMqhxJyrbDVURkfpowA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333074; a=rsa-sha256; cv=none; b=nev8AnJOvUbayTnnC6m3DOGp5HfX/9nqSYp2SurSdv7DortPbifxjK99NVbMXOkIEhqW6x MkP9OxkuGx3FTPsInrSk+e4W6dqv3cQj9QSVDX93HsgI8kO0NAc6Tzj3uuGl6Tz7Qbbvry zdbOOlmYalBp9L4f8pZ0Omp5yUahc5OaAlhqx8npkDn9T4EOqQfTqgZzI4agu01LUReUBT UZ2Zp3NVhEnX4gxdkAZfx3mBdSo+QaHfYdiiG/97eUQoDl0z0LAwuLC4gYrDK8T/KHhhNE T64T9sYUMLJ58CSuLlx0p5Q7fA3gerpo2YQvmhj54Nf+I6lonxkmfT/pRDv0Ww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz360dHDzD7H; Thu, 15 May 2025 18:17:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHruC090346; Thu, 15 May 2025 18:17:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHrad090343; Thu, 15 May 2025 18:17:53 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:53 GMT Message-Id: <202505151817.54FIHrad090343@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: d7837cac6f64 - stable/14 - rtlbtfw(8): Fix incorrect chunk index overwrap in rtlbt_load_fwfile() 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d7837cac6f64a7ed3682050f6401a2a7032fc6d9 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=d7837cac6f64a7ed3682050f6401a2a7032fc6d9 commit d7837cac6f64a7ed3682050f6401a2a7032fc6d9 Author: Vladimir Kondratyev AuthorDate: 2025-04-29 20:28:53 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:14:18 +0000 rtlbtfw(8): Fix incorrect chunk index overwrap in rtlbt_load_fwfile() It prevented large (>256 chunks) firmwares from loading. Fixes: 5036d9652a57 ("rtlbtfw: Firmware loader for Realtek 87XX/88XX") Sponsored by: Future Crew, LLC MFC after: 1 week (cherry picked from commit a4fcbac5d891e3909474ffe7ed7064972a1a7577) --- usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c index 493358294c07..21f2c3e2804f 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c @@ -189,19 +189,18 @@ rtlbt_load_fwfile(struct libusb_device_handle *hdl, uint8_t *data = fw->buf; int frag_num = fw->len / RTLBT_MAX_CMD_DATA_LEN + 1; int frag_len = RTLBT_MAX_CMD_DATA_LEN; - int i; + int i, j; int ret, transferred; - for (i = 0; i < frag_num; i++) { + for (i = 0, j = 0; i < frag_num; i++, j++) { rtlbt_debug("download fw (%d/%d)", i + 1, frag_num); memset(cmd_buf, 0, sizeof(cmd_buf)); cmd->opcode = htole16(0xfc20); - if (i > 0x7f) - dl_cmd->index = (i & 0x7f) + 1; - else - dl_cmd->index = i; + if (j > 0x7f) + j = 1; + dl_cmd->index = j; if (i == (frag_num - 1)) { dl_cmd->index |= 0x80; /* data end */ From nobody Thu May 15 18:22:28 2025 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 4Zyz8P5pccz5wjfH; Thu, 15 May 2025 18:22:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz8P10Jtz3Jlp; Thu, 15 May 2025 18:22:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333349; 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=f6Ox1U5EWMgrfGr0b8Z0I3wVrpLo0Z2LMe0IZGFJdSw=; b=aWphAGzcaRB1++xOuxPejp4A8Z5tKvqm3kdZjl9S+CCexbRCe0PilDfBf6V4bJu5Ex/JtL AOorSAiTvOW5M89jAWxMVsdRbeCu8y1Ommdos0S7nbDEoTD0aedGL6/jooWtk80NpuH7FU Lt6l+rSeQ2cIqRBsH2kkbPOc91rzxInJgZ2zAUwyXFps2Ff27nQQVHoK5VzBRdhBQ3a6r5 8sq/5CPpL+QLvp6BMslF7XYlc71UeOSvlvqqrarIE38xYeCPeUTuDBZyRQuTKxFQbo6FZ/ Um4V3XHqtKNleQL+ES3aL77uZxzDswGNHSAiJN+ASGcej1bGkEFfUedoNTrFkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333349; 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=f6Ox1U5EWMgrfGr0b8Z0I3wVrpLo0Z2LMe0IZGFJdSw=; b=o8haK/DDTzwGJY+3MVq6CdKCaKw+g4H14eMRtTxvvUg3FYurKVcgJl+MBcf8Vf1NfkHAzo J39k98hE8bLZJ4pdCp0CdCTiJxb4fbgSz6krDPBNcxSdMshF4Cv8wZTe6Eb11fzLMm/83V nbuIZYo5sEHBKAbO7iYUTg3Cr7JJx4LzeP6C3jOr5MZsvSgAp9TQvsy7/ZCEXKxZYeiWKH tr6ZH2Sm+LTXOBK47FrCvOxllePhv0E3sFKFPAf7h0xrejrOqMN84QhdHQplfC4yc3i8I2 iAF9dNLNc+AuSs6XXWNYFx+MlPZgGI6bC6VgiFV7/XMD2PzTj5xhQehnYUygTA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333349; a=rsa-sha256; cv=none; b=gsfhHJ1+kO9axp9XyYYVT7r0ZQsCtahumIg0OWD89cXvkimYb3qmtssKqFEf5Hfo0wf/ZJ 4b4C+VDp9tl++/ZxPqrzpAR6xcJoC8/mBRJaN9Hoq4CRi/+Jcm37BLidQqChd7iru1EJ0J ibVL13IjluiqP2VlKrs/8Bp8KHeij0lcYA7DrBdh+tZVTDWeNzFwbLncNW4tzrnH/t37JV v/2fQ9sMaSiGcJgEJ1EG1CjP5WoYVnsHWYorD1weoUVF3xheDVXJ+CnOrDayX62KouGual 2Byxuh5VE99zPEnSgE5uGvgDP8hWsWbaf9SkGKUmnnaty35HF4Q7fGUN4Zyr2w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zyz8P0KMMzD9J; Thu, 15 May 2025 18:22:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIMT0X007584; Thu, 15 May 2025 18:22:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIMS0K007581; Thu, 15 May 2025 18:22:28 GMT (envelope-from git) Date: Thu, 15 May 2025 18:22:28 GMT Message-Id: <202505151822.54FIMS0K007581@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a7e183c0c9a5 - main - iwlwifi: update man pages for generations, firmware. and 11n/11ac 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a7e183c0c9a5579cdaa3e2ff9597e5e3d41dbdb4 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a7e183c0c9a5579cdaa3e2ff9597e5e3d41dbdb4 commit a7e183c0c9a5579cdaa3e2ff9597e5e3d41dbdb4 Author: Bjoern A. Zeeb AuthorDate: 2025-05-12 23:43:25 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 18:20:00 +0000 iwlwifi: update man pages for generations, firmware. and 11n/11ac Put Intel's iwlwifi better in context to iwm, iwx and iwn. Document the important tunables so users know where to go. Document the port/package for firmware where firmware is now maintained. Adjust wording and table for the firmware and a flavor column. Update History sections for 11n/11ac support as well as firmware module removal from base. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: ziaee, emaste (comments) Differential Revision: https://reviews.freebsd.org/D50319 --- share/man/man4/iwlwifi.4 | 86 +- share/man/man4/iwlwififw.4 | 2029 ++++++++++++++++++++++---------------------- 2 files changed, 1101 insertions(+), 1014 deletions(-) diff --git a/share/man/man4/iwlwifi.4 b/share/man/man4/iwlwifi.4 index 49d256e835c7..3da4e68ad805 100644 --- a/share/man/man4/iwlwifi.4 +++ b/share/man/man4/iwlwifi.4 @@ -1,7 +1,7 @@ -.\"- +.\" .\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" Copyright (c) 2021-2024 The FreeBSD Foundation +.\" Copyright (c) 2021-2025 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 20, 2025 +.Dd May 12, 2025 .Dt IWLWIFI 4 .Os .Sh NAME @@ -50,6 +50,9 @@ kld_list="${kld_list} if_iwlwifi" The driver should automatically load any .Xr iwlwififw 4 firmware needed for the particular chipset. +See section +.Sx "FILES" +below for how to install the firmware. .Pp It is discouraged to load the driver from .Xr loader 8 . @@ -59,12 +62,25 @@ The driver provides support for Intel Wireless network devices. .Pp .Nm -is derived from Intel's Linux iwlwifi driver, will be a successor to -.Xr iwm 4 , -and may supersede that driver in the future. -It still complements the +is derived from Intel's Linux iwlwifi driver. +The +.Xr iwm 4 +and +.Xr iwx 4 +drivers together are approximately equivalent to Intel's Linux iwlwifi/mvm +driver. +.Pp +In addition +.Nm +already supports Intel's Linux iwlwifi/mld chipsets. +.Pp +.Nm +still complements the .Xr iwn 4 -driver which supports older chipsets. +driver which supports older chipsets and would be equivalent to +Intel's Linux iwlwifi/dvm, which +.Nm +does not support. .Pp The driver uses the .\" No LinuxKPI man pages so no .Xr here. @@ -98,6 +114,15 @@ sub-driver with the following chipset generations: 22000 .It AX210 +.El +.Pp +The +.Nm +driver supports PCIe devices from the +.Sy mld +sub-driver with the following chipset generations: +.Pp +.Bl -bullet -compact .It BZ .It @@ -235,10 +260,53 @@ Intel(R) TBD Sc2 device Intel(R) TBD Sc2f device .\" -------------------------------------------------------------------- .El +.Sh LOADER TUNABLES +The +.Nm +driver supports the following +.Xr loader 8 +tunable and read-only +.Xr sysctl 8 +variables: +.Bl -tag -width "compat.linuxkpi.iwlwifi_disable_11ac" +.It Va compat.linuxkpi.iwlwifi_11n_disable +Turn off 802.11n support in the driver. +Default +.Ql 1 . +.It Va compat.linuxkpi.iwlwifi_disable_11ac +Turn off 802.11ac support in the driver. +Default +.Ql 1 . +.El +.Pp +The names of the tunables are derived from the Linux iwlwifi driver +module parameters and are mapped automatically by +.Sy linuxkpi . +They were not adjusted so that they stay consistent with upstream +Linux, e.g., for documentation available and problem investigations. +This left their names inconsistent between themselves and incosistent to +.Fx +style. +.Pp +The tunables are automatically adjusted by the firmware package for +chipsets which can enable 11n and 11ac. +In case of problems a user may want to override the provided values +in +.Pa /boot/loader.conf.local +with the above defaults. +.Sh FILES +The +.Nm +driver requires firmware from +.Pa ports/net/wifi-firmware-iwlwifi-kmod . +This firmware package will be installed automatically with +.Xr fwget 8 +if the appropriate hardware is detected at installation or runtime. .Sh SEE ALSO .Xr iwlwififw 4 , .Xr iwm 4 , .Xr iwn 4 , +.Xr iwx 4 , .Xr wlan 4 , .Xr networking 7 , .Xr fwget 8 , @@ -249,6 +317,8 @@ The .Nm driver first appeared in .Fx 13.1 . +802.11n and 802.11ac support for the 22000 and later chipsets first appeared in +.Fx 14.3 . .Sh BUGS Certainly. .Pp diff --git a/share/man/man4/iwlwififw.4 b/share/man/man4/iwlwififw.4 index 491a634e70b5..45ee0e757c07 100644 --- a/share/man/man4/iwlwififw.4 +++ b/share/man/man4/iwlwififw.4 @@ -1,5 +1,7 @@ -.\"- -.\" Copyright (c) 2021-2024 The FreeBSD Foundation +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2021-2025 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -25,12 +27,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 12, 2024 -.Dt iwlwififw 4 +.Dd May 12, 2025 +.Dt IWLWIFIFW 4 .Os .Sh NAME .Nm iwlwififw -.Nd Firmware modules for Intel iwlwifi wireless network driver +.Nd Firmware for Intel iwlwifi wireless network driver .Sh SYNOPSIS The .Xr iwlwifi 4 @@ -38,1512 +40,1522 @@ driver should auto-load any firmware needed. It is discouraged to load the driver or firmware manually from .Xr loader 8 . .Sh DESCRIPTION -Multiple modules provide access to firmware for the various chipset -models supported by the +Firmware files are available from +.Xr ports 7 +for the various chipset models supported +by the .Xr iwlwifi 4 driver. +Modern chipsets often require a +.Pa .ucode +and an accompanying +.Pa .pnvm +file. .Pp One can use .Xr fwget 8 to install the correct firmware package. .Pp -.Bl -column -compact "Vendor" "Device" "Subv. " "Subd. " "Firmware-Prefix" +The list is provided as a reference as to with file prefix is needed for +a specific card as far as it can be determined and the port flavor. +.Pp +.Bl -column -compact "Vendor" "Device" "Subv. " "Subd. " "Flavor" "Firmware-Prefix" .It Ar Name -.It Ar Vendor Ta Ar Device Ta Ar Subv. Ta Ar Subd. Ta Ar Firmware-Prefix -.% --------------------------------------------------------------------- -.% This list is manually generated from a sysctl and post-processing -.% by sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh generating the list. -.% Edits will be overwritten on next update. -.% --------------------------------------------------------------------- +.It Ar Vendor Ta Ar Device Ta Ar Subv. Ta Ar Subd. Ta Ar Flavor Ta Ar Firmware-Prefix +.\" --------------------------------------------------------------------- +.\" This list is manually generated from a sysctl and post-processing +.\" by sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh generating the list. +.\" Edits will be overwritten on next update. +.\" --------------------------------------------------------------------- .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160 +.It Intel(R) Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160 +.It Intel(R) Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta *** 1750 LINES SKIPPED *** From nobody Thu May 15 18:31:10 2025 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 4ZyzLR0X2kz5wk80; Thu, 15 May 2025 18:31:11 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZyzLQ6vkDz3NLV; Thu, 15 May 2025 18:31:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333871; 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=lLM0kQ2cj4zpFE9zDwo49setWmI7lKjgFmjcHpDNWHo=; b=AoMBwJwlaFf7LWd4uuUrZgJSC3M5Gf6mrii2XRDWW3/juCQshPOePx365X8MuB4FqEfkXK kEkOUHB/qQi93rJSCk+I8LwpjmMvmAEp7NKfs4EoPbAGU2cU//ZCTdGY6bet4GjVa3ccas aRnZDcE2NffyKHoPFKzrL3bpXvCowBjD5c6waWrp4xUQjArGnptxEilVdTN8VL6C8X7rbl i38BlpK1YOFi2OAF33OhW/SKIQ45n8C284kus9fZiRSZ2ws3GU5mbXtFYPJnonA+/qVDM9 Y7zXn+dgNwXUoZleT1At5deuYA5DgrKRsqB2FwVvIp0n215N8DCf3BXjhqj5uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333871; 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=lLM0kQ2cj4zpFE9zDwo49setWmI7lKjgFmjcHpDNWHo=; b=NV81eiFdiYTVBsbChpJIM4e1MOdE6YfI63CxQtIzHf7df6coeqYjfkJBDPh6CbXOS74cu4 qI99/azwgCHY6Ogr6ni7o68gaub0vmH2wBJnglgOC4qBI/ZBAOs/tbM8TJbk/VrHbPItku XN6tpPjOQ58eVOc2188OCh4dCtM7ezmbYtIZ/X/8rfyMT/GR0ipVFaxRIkUR8fAH7K4PWT 0I9apBe/emEG8ZnSDYwAtB+qCC9F0MSAgmwAQ+mW+v4U2BJf7kzGKGIYfaO7qLGZXZ/y75 55yhBEPq1KZTAzcAhY08YPw4e+raWoBj26lsxeAwQZsS6eeby0fKVOPYYe7rww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333871; a=rsa-sha256; cv=none; b=T+Jt7n8yii6FszGrQonSArkZB/dqRz4+1CpmM3+CeAIRnTmuuyVBAxjRxDoxdcDD8IbQdI VMbJwEZCEjVXXhIvZ1gvFdw9Ka7yzy669b8jMFhOzkBEqjewNrah3tuwMbrgoe5BAfPVFx DKKwEL1ILMbcyNfECdyjZQwQ0mdO6vaajB/XqT0klam3VUomzrqX+pJonZk2EhNMzcds5T v510mYbCGWNNsJg/Npn8qZ2ut126yNoLb4DnGkGwnoSFI5N3U527pXkWfIoMhpT7jzMvDU ot3z/ElqR/EVm7ykJ+XKEKVuMT37YmFTFpxK9vT7dMtJzfY/Z0Fl1Lwz13f6kQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZyzLQ6WMZzDR6; Thu, 15 May 2025 18:31:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIVAfY021740; Thu, 15 May 2025 18:31:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIVA0p021737; Thu, 15 May 2025 18:31:10 GMT (envelope-from git) Date: Thu, 15 May 2025 18:31:10 GMT Message-Id: <202505151831.54FIVA0p021737@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: f938c0a90313 - main - libusb: add SUPER_PLUS in speed enum. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f938c0a90313125a9518307e80ca92d4c71f7745 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=f938c0a90313125a9518307e80ca92d4c71f7745 commit f938c0a90313125a9518307e80ca92d4c71f7745 Author: SHENGYI HUNG AuthorDate: 2025-05-15 10:30:45 +0000 Commit: Baptiste Daroussin CommitDate: 2025-05-15 18:30:32 +0000 libusb: add SUPER_PLUS in speed enum. Summary: Some application(like usbmuxd) start to use LIBUSB_SPEED_SUPER_PLUS now. Though we don't have the corresponding infra in kernel right now, it is harmless to have this enum value in userspace to prevent the compile error Reviewed By: bapt Sponsored By: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50359 --- lib/libusb/libusb.3 | 2 +- lib/libusb/libusb.h | 1 + lib/libusb/libusb01.c | 2 ++ lib/libusb/libusb10.c | 5 +++++ lib/libusb/libusb20.3 | 1 + lib/libusb/libusb20.h | 1 + usr.sbin/usbconfig/dump.c | 2 ++ 7 files changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/libusb/libusb.3 b/lib/libusb/libusb.3 index fe07e86623c8..1ca0e677d96f 100644 --- a/lib/libusb/libusb.3 +++ b/lib/libusb/libusb.3 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 26, 2023 +.Dd May 16, 2025 .Dt LIBUSB 3 .Os .Sh NAME diff --git a/lib/libusb/libusb.h b/lib/libusb/libusb.h index 732fc9dca1e0..cdac94b17c64 100644 --- a/lib/libusb/libusb.h +++ b/lib/libusb/libusb.h @@ -216,6 +216,7 @@ enum libusb_speed { LIBUSB_SPEED_FULL = 2, LIBUSB_SPEED_HIGH = 3, LIBUSB_SPEED_SUPER = 4, + LIBUSB_SPEED_SUPER_PLUS = 5, }; enum libusb_transfer_status { diff --git a/lib/libusb/libusb01.c b/lib/libusb/libusb01.c index 7017016693af..f246e74353a6 100644 --- a/lib/libusb/libusb01.c +++ b/lib/libusb/libusb01.c @@ -130,6 +130,8 @@ usb_get_transfer_by_ep_no(usb_dev_handle * dev, uint8_t ep_no) bufsize = 4096; } else if (speed == LIBUSB20_SPEED_SUPER) { bufsize = 65536; + } else if (speed == LIBUSB20_SPEED_SUPER_PLUS) { + bufsize = 131072; } else { bufsize = 16384; } diff --git a/lib/libusb/libusb10.c b/lib/libusb/libusb10.c index 679f4e64b5f6..b442a1f489a0 100644 --- a/lib/libusb/libusb10.c +++ b/lib/libusb/libusb10.c @@ -445,6 +445,8 @@ libusb_get_device_speed(libusb_device *dev) return (LIBUSB_SPEED_HIGH); case LIBUSB20_SPEED_SUPER: return (LIBUSB_SPEED_SUPER); + case LIBUSB20_SPEED_SUPER_PLUS: + return (LIBUSB_SPEED_SUPER_PLUS); default: break; } @@ -1074,6 +1076,9 @@ libusb10_get_buffsize(struct libusb20_device *pdev, libusb_transfer *xfer) case LIBUSB20_SPEED_SUPER: ret = 65536; break; + case LIBUSB20_SPEED_SUPER_PLUS: + ret = 131072; + break; default: ret = 16384; break; diff --git a/lib/libusb/libusb20.3 b/lib/libusb/libusb20.3 index 1d07db8f32a4..7854b0f8ed7e 100644 --- a/lib/libusb/libusb20.3 +++ b/lib/libusb/libusb20.3 @@ -858,6 +858,7 @@ returns the current speed of the given USB device. .It LIBUSB20_SPEED_HIGH .It LIBUSB20_SPEED_VARIABLE .It LIBUSB20_SPEED_SUPER +.It LIBUSB20_SPEED_SUPER_PLUS .El . .Pp diff --git a/lib/libusb/libusb20.h b/lib/libusb/libusb20.h index 7bca2f7508c7..c132c58a9f69 100644 --- a/lib/libusb/libusb20.h +++ b/lib/libusb/libusb20.h @@ -159,6 +159,7 @@ enum { LIBUSB20_SPEED_HIGH, LIBUSB20_SPEED_VARIABLE, LIBUSB20_SPEED_SUPER, + LIBUSB20_SPEED_SUPER_PLUS, }; /** \ingroup misc diff --git a/usr.sbin/usbconfig/dump.c b/usr.sbin/usbconfig/dump.c index 2a4a5300efeb..10ff2125853e 100644 --- a/usr.sbin/usbconfig/dump.c +++ b/usr.sbin/usbconfig/dump.c @@ -100,6 +100,8 @@ dump_speed(uint8_t value) return ("VARIABLE (52-480Mbps)"); case LIBUSB20_SPEED_SUPER: return ("SUPER (5.0Gbps)"); + case LIBUSB20_SPEED_SUPER_PLUS: + return ("SUPER+(10-20Gbps)"); default: break; } From nobody Thu May 15 18:58:12 2025 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 4Zyzxh33CLz5wlbD; Thu, 15 May 2025 18:58:16 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta003.cacentral1.a.cloudfilter.net (omta001.cacentral1.a.cloudfilter.net [3.97.99.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyzxh0CrNz3dq7; Thu, 15 May 2025 18:58:15 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4002a.ext.cloudfilter.net ([10.228.9.250]) by cmsmtp with ESMTPS id Fcr6uFCmj9JM2FdmZulk4y; Thu, 15 May 2025 18:58:15 +0000 Received: from spqr.komquats.com ([70.66.136.217]) by cmsmtp with ESMTPSA id FdmXubffRl5eGFdmYuiTHq; Thu, 15 May 2025 18:58:15 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=EO6l0EZC c=1 sm=1 tr=0 ts=68263947 a=h7br+8Ma+Xn9xscxy5znUg==:117 a=h7br+8Ma+Xn9xscxy5znUg==:17 a=kj9zAlcOel0A:10 a=dt9VzEwgFbYA:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=YxBL1-UpAAAA:8 a=aAOXd9-Cu5iS0-GmlRQA:9 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id B40E81DE; Thu, 15 May 2025 11:58:12 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id AE47677; Thu, 15 May 2025 11:58:12 -0700 (PDT) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Lexi Winter cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false In-reply-to: <202505150004.54F04FhR046897@gitrepo.freebsd.org> References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> Comments: In-reply-to Lexi Winter message dated "Thu, 15 May 2025 00:04:15 +0000." 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 15 May 2025 11:58:12 -0700 Message-Id: <20250515185812.AE47677@slippy.cwsent.com> X-CMAE-Envelope: MS4xfHXo2kNvjTx4h1ErVe525DjH66PAi3dsp0JkZJ5OPQXZkTRABnJu2KLO6CsBXhvGDcpgGqgJ2X1bML+kmMHLfsqUYgN/+5KWuu2JqN7efhBodsU1aS30 qpgEZmY+GzOXgtSUPBI1ISgahArlxoM2gEtVcb+O777Vg65FrOF/pcgLQs/KJUX5ihKLC41IBKPyw5UHjiiQ8TV2hAyxSIU5pVnzrJ9/wZD+EByudMzKQjd0 xrRxiBkdkPQdQOVUZQIjD+3K75SD+uaIG+jZFbinEU8jb6p9AMRK+Z6x5LNjW1edzU5/4w+IFCJSwJ5ivMasHlyS6AnnyEC6CsLuU2AV7a4= X-Rspamd-Queue-Id: 4Zyzxh0CrNz3dq7 X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Spamd-Bar: ---- In message <202505150004.54F04FhR046897@gitrepo.freebsd.org>, Lexi Winter write s: > The branch main has been updated by ivy: > > URL: https://cgit.FreeBSD.org/src/commit/?id=b61850c4e6f6b0f21b36da7238db969d > 9090309e > > commit b61850c4e6f6b0f21b36da7238db969d9090309e > Author: Lexi Winter > AuthorDate: 2025-05-14 14:26:24 +0000 > Commit: Lexi Winter > CommitDate: 2025-05-15 00:02:52 +0000 > > bridge(4): default net.link.bridge.member_ifaddrs to false > > As discussed on arch@, this behaviour is broken and confuses users, so > disable it by default. For 15.0-RELEASE, allow it to be re-enabled > using a sysctl, but the sysctl will be removed in 16.0R. > > Relnotes: yes > Reviewed by: kp, des > Approved by: des (mentor) > Differential Revision: https://reviews.freebsd.org/D50328 > --- > UPDATING | 5 +++++ > share/man/man4/bridge.4 | 18 ++++++++++++------ > sys/net/if_bridge.c | 4 ++-- > 3 files changed, 19 insertions(+), 8 deletions(-) > > diff --git a/UPDATING b/UPDATING > index d46db9e13794..ce2b60ea9353 100644 > --- a/UPDATING > +++ b/UPDATING > @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: > world, or to merely disable the most expensive debugging functionality > at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) > > +20250513: > + The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0, > + meaning that interfaces added to a bridge may not have IP addresses > + assigned. Refer to bridge(4) for more information. > + > 20250507: > UMASS quirks and auto-quirk probing has been overhauled. CAM now won't > send SYNCHRONIZE CACHE unless MODE PAGE 8 is present and valid. This > diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4 > index 2c3bfd6aedfa..45dea82325bc 100644 > --- a/share/man/man4/bridge.4 > +++ b/share/man/man4/bridge.4 > @@ -36,7 +36,7 @@ > .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF T > HE > .\" POSSIBILITY OF SUCH DAMAGE. > .\" > -.Dd May 5, 2025 > +.Dd May 13, 2025 > .Dt IF_BRIDGE 4 > .Os > .Sh NAME > @@ -163,14 +163,20 @@ To allow the host to communicate with bridge members, I > P addresses > should be assigned to the > .Nm > interface itself, not to the bridge's member interfaces. > -Assigning IP addresses to bridge member interfaces is unsupported, but > -for backward compatibility, it is permitted if the > +Attempting to assign an IP address to a bridge member interface, or add > +a member interface with an assigned IP address to a bridge, will return > +an > +.Dv EINVAL > +.Dq ( "Invalid argument" ) > +error. > +For compatibility with older releases where this was permitted, setting > +the > .Xr sysctl 8 > variable > .Va net.link.bridge.member_ifaddrs > -is set to 1, which is the default. > -In a future release, this sysctl may be set to 0 by default, or may be > -removed entirely. > +to 1 will permit this configuration. > +This sysctl variable will be removed in > +.Fx 16.0. > .Sh IPV6 SUPPORT > .Nm > supports the > diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c > index 199418c4aa99..475977adf68a 100644 > --- a/sys/net/if_bridge.c > +++ b/sys/net/if_bridge.c > @@ -504,10 +504,10 @@ SYSCTL_BOOL(_net_link_bridge, OID_AUTO, log_mac_flap, > "Log MAC address port flapping"); > > /* allow IP addresses on bridge members */ > -VNET_DEFINE_STATIC(bool, member_ifaddrs) = true; > +VNET_DEFINE_STATIC(bool, member_ifaddrs) = false; > #define V_member_ifaddrs VNET(member_ifaddrs) > SYSCTL_BOOL(_net_link_bridge, OID_AUTO, member_ifaddrs, > - CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), true, > + CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), false, > "Allow layer 3 addresses on bridge members"); > > static bool > This patch breaks VNET jails. bob# service jail onestart test2 Starting jails: cannot start jail "test2": epair0a ifconfig: ioctl (SIOCAIFADDR): Invalid argument jail: test2: /sbin/ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 up: failed . bob# ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 ifconfig: ioctl (SIOCAIFADDR): Invalid argument bob# ifconfig epair0a inet up bob# Setting the sysctl to one resolves the issue. -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Thu May 15 19:14:42 2025 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 4Zz0Jf6b2dz5wmfB; Thu, 15 May 2025 19:14:42 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz0Jf604fz3nm1; Thu, 15 May 2025 19:14:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747336482; 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=t3D+ctRixzVZ+OaRy8d9EEkkO2Qe9/xDr8iRqdPoTII=; b=tL1VizoHEc0zvQ3cV+X3K9rS4q+3Lo/m7vY98PuIfD9LKRdFOmst6RP/J2/UpMd/rizgpz Ogt7bSXnpYrUV4pdESC5OKpZG+uRBf5hfaO8kPD1hARiO4iay2Fc4HXCRyVwQ0GBifsrle 7eKCnwPves6PQIzyMKZHoOAcb4Txb1zwsZG48rqFJdePpBvjkb1M0mZF4dYiZXuvrdaBPl sceYFWtJG7yrR5jPXRsvDTvSeBjtDBzZpoCwX0Zci4pQjY9NOCbl6CalBKGKliBjviQDOj rBTBeTaKNJCaU/kKsKaqK26Wmj3xHMtBxD1dnaw1DL+5g38BgM5DD0r5G5yJYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747336482; 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=t3D+ctRixzVZ+OaRy8d9EEkkO2Qe9/xDr8iRqdPoTII=; b=Xk410di99ByCZJDJTwrSaRDLekdDr/oVP4HgpUhv24q8/YK0A3c0bU8easvYDdy3lQJEOm xH676mvD6XP4Mbdfb+Hun+khY1nQIOuvCH/7Rjw7je7j4hJkkuewWXeruMAfk3k1rh5BE6 YikgIJGzg9ELaw+OOoAdnZuybxfGHprmiEoYb8QQFOpFJlnwRTbunKCn2XOgLvveYTYwlD fQKN8uAMeMQ9S27Y1/7okgbijhpV3Vu9quVu5NDcZuigi2Un3v5q3X3t6azZfgvWlTIFsc 3/q1Ns6IDM71tXwrnyxfvwp8l+ak14fPLoHi0ZWVUjwj9Y/Jt2JBmTDEa2zQCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747336482; a=rsa-sha256; cv=none; b=Zs+Ja0pGr9mBOd/7a+0E/BrkuJ6RJAfqJooDAok9XF01Ml5k/HY6h/JK0/5fP4k8mRBfQP oLHOPiIJaJ0X2uADKYkUQDLETUTgxf/hV3yIqws+vnBQWlV7/r6VexbSu57HdWk6p4l/Ab SEihMtPVOXGMoqYneWWoEln/NjlgBAanB50hVR+7sfXZ+B8oMGPXeMJbxYA8mLZN+lrEeK fdmxmN1BjOKVH+PGeaGoRyJdGIshL2VSAELmXXFTEYxC2OYXuwS8dTPvt65gLykTteWx0b NppcgLUqZ8dB5ELXhT7zJlaDjI7nmhCqIwIctf1iHynOna7MZfkNRnPv9nFvKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz0Jf5QHkzWHF; Thu, 15 May 2025 19:14:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FJEgJ4002677; Thu, 15 May 2025 19:14:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FJEg2s002674; Thu, 15 May 2025 19:14:42 GMT (envelope-from git) Date: Thu, 15 May 2025 19:14:42 GMT Message-Id: <202505151914.54FJEg2s002674@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 36174c38f9e3 - releng/14.3 - LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 36174c38f9e3433e7fdb8b2f2923499dff67b2e7 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=36174c38f9e3433e7fdb8b2f2923499dff67b2e7 commit 36174c38f9e3433e7fdb8b2f2923499dff67b2e7 Author: Bjoern A. Zeeb AuthorDate: 2025-05-12 15:12:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-15 19:13:58 +0000 LinuxKPI: 802.11: make sure AUTH frames are not being sent if BSS changed iwlwifi keeps logging 'Invalid TXQ id' even after previous changes to catch the BSS changed. The reason for this is that we do not error in the SCAN -> AUTH path as otherwise we would not have the state machine get us back to SCAN to clear up firmware state before auth/assoc to the new BSS. If we are not in synch as net80211 just swapped the iv_bss from under us, disable the TX queue for the (old) lsta to prevent the AUTH frame sent from sta_newstate() reaching the driver. After all we are not trying to authenticate to that node (sta) anymore. Sponsored by: The FreeBSD Foundation PR: 274382 Approved by: re (cperciva) (cherry picked from commit 16d987fe781780100a31df30b9edd79ebb54f957) (cherry picked from commit e0692e7bb6e8abcc55a2510dceea5f83e823a827) --- sys/compat/linuxkpi/common/src/linux_80211.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index fb9a4bc0177b..82eaa64790b4 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2021,6 +2021,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int struct ieee80211_prep_tx_info prep_tx_info; uint32_t changed; int error; + bool synched; /* * In here we use vap->iv_bss until lvif->lvif_bss is set. @@ -2211,14 +2212,6 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int __func__, ni, ni->ni_drv_data)); lsta = ni->ni_drv_data; - /* - * Make sure in case the sta did not change and we re-add it, - * that we can tx again. - */ - LKPI_80211_LSTA_TXQ_LOCK(lsta); - lsta->txq_ready = true; - LKPI_80211_LSTA_TXQ_UNLOCK(lsta); - /* Insert the [l]sta into the list of known stations. */ list_add_tail(&lsta->lsta_list, &lvif->lsta_list); @@ -2292,10 +2285,10 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ieee80211_ref_node(lsta->ni); lvif->lvif_bss = lsta; if (lsta->ni == vap->iv_bss) { - lvif->lvif_bss_synched = true; + lvif->lvif_bss_synched = synched = true; } else { /* Set to un-synched no matter what. */ - lvif->lvif_bss_synched = false; + lvif->lvif_bss_synched = synched = false; /* * We do not error as someone has to take us down. * If we are followed by a 2nd, new net80211::join1() going to @@ -2305,9 +2298,20 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int * to net80211 as we never used the node beyond alloc()/free() * and we do not hold an extra reference for that anymore given * ni : lsta == 1:1. + * Problem is if we do not error a MGMT/AUTH frame will be + * sent from net80211::sta_newstate(); disable lsta queue below. */ } LKPI_80211_LVIF_UNLOCK(lvif); + /* + * Make sure in case the sta did not change and we re-added it, + * that we can tx again but only if the vif/iv_bss are in sync. + * Otherwise this should prevent the MGMT/AUTH frame from being + * sent triggering a warning in iwlwifi. + */ + LKPI_80211_LSTA_TXQ_LOCK(lsta); + lsta->txq_ready = synched; + LKPI_80211_LSTA_TXQ_UNLOCK(lsta); goto out_relocked; out: From nobody Thu May 15 19:29:23 2025 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 4Zz0dc1pNmz5wnRj; Thu, 15 May 2025 19:29:24 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz0dc19Ggz3ytt; Thu, 15 May 2025 19:29:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747337364; 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=98B3YtB74MgPGGzW/ECbF4PBnplW6HAynIl5QQbv1c8=; b=G1aspfhWoOa7h9gLVVDYOVvYwBcwfem7KoS0FVPiRai0lyHaxufGQd0Yz8c/r3ema/tAT6 0dy1eMk0lAZDQQn+vVC/ocJtlwBY6Mu6fsXkXI1myVDaKUGuFEIkTPOnQaSq5qqs4IawoG lqo3Kf3c1W2V+AjSPvajPR0MnEfBXwBHm0vC6D+frnneAsdHpgVFIuhKJHqH9vN+OA92HN u/k3uJJXujvQM7wtD5ppyD7gwqNvNIn3xsLANJUFSVz5vqEzFsoluo9qzWi9AzhzW0c351 uGJPK5Ht09JG+12XrbJ3h2XQ/G0ZqEscxJVj5oX3C2HnPhDVYKsbYYcxU8e5Gg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747337364; 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=98B3YtB74MgPGGzW/ECbF4PBnplW6HAynIl5QQbv1c8=; b=LeUera3OF2RjZF72rkrHX7Bc37wimpuc3ZpQi9mmkHmobT0nFTV1PRgbW2xgy0PZf1IPi9 3uAoIMR3ulfozIctvqdY8QZsh84Ltg1H4NUVCmq9B/kswl0fq+nbsYgeiavdGMhtmHyDiu EqFZfVboyPjNj+aYpsjWu4XtLJR7Rg1+zcwXEVhLfKoSH2o89ZzyOTLpzzYgOBmv/oFr5u UTg6EegFLeL6FUgQsw2MB9YtosQkz3GsztULf4Vr5xh+lWB4CMIyJh0oN75DsfWnwm7DS4 /iKwYfj5EVPG/vqNA5DkzOykvZdWOl9P2GP3TnRKqvkyMvu6QYqGzQna0p3F5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747337364; a=rsa-sha256; cv=none; b=rK6foDKQHJJ7EuB5GmVJW0LRJ45K48c9t22km6zSFhcfxA0mn8zwgvm7zIqaTcNVkvc1yg zLMhjmso5lVlc0/O9q3vW9fBKEyC0P9kTSp4IxBXJi5FdcYgfMYtgzxXa19gRXNhP8Xhuc twCGil0AfwDK/Ixqfe2vNJOVyyN2JUrmfT0gbD2RU080BbojOykQvgYiMu4BKwhthvS4Np iuGmcFxNOVdLeqCZ3BaSYiJLG6yUHqJ6Doeee1SkyOWHDF6r/IrxXbh29I6exj0RwwOsvU KSfM0sz/ka6Pdc4DQJA+gQl2RE4AOn5guA/vHc99AV+HRsWAAlI8zEXCh+qv3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz0dc0l1lzWtB; Thu, 15 May 2025 19:29:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FJTOF0022580; Thu, 15 May 2025 19:29:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FJTNa4022577; Thu, 15 May 2025 19:29:23 GMT (envelope-from git) Date: Thu, 15 May 2025 19:29:23 GMT Message-Id: <202505151929.54FJTNa4022577@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Krzysztof Galazka Subject: git: ecc352af5987 - main - committers-src: add myself (kgalazka@) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kgalazka X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ecc352af5987a1919fcacaaac43b8e2af600cea6 Auto-Submitted: auto-generated The branch main has been updated by kgalazka: URL: https://cgit.FreeBSD.org/src/commit/?id=ecc352af5987a1919fcacaaac43b8e2af600cea6 commit ecc352af5987a1919fcacaaac43b8e2af600cea6 Author: Krzysztof Galazka AuthorDate: 2025-05-15 19:28:12 +0000 Commit: Krzysztof Galazka CommitDate: 2025-05-15 19:28:12 +0000 committers-src: add myself (kgalazka@) Add kgalazka@ (myself) as new src committer with erj@ and kbowling@ as mentors. Signed-off-by: Krzysztof Galazka Reviewed by: kbowling, erj Approved by: erj (mentor) Differential Revision: https://reviews.freebsd.org/D50332 --- share/misc/committers-src.dot | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot index 3154b124b514..e8719a44fae7 100644 --- a/share/misc/committers-src.dot +++ b/share/misc/committers-src.dot @@ -251,6 +251,7 @@ ken [label="Ken Merry\nken@FreeBSD.org\n1998/09/08"] kensmith [label="Ken Smith\nkensmith@FreeBSD.org\n2004/01/23"] kevans [label="Kyle Evans\nkevans@FreeBSD.org\n2017/06/20"] kevlo [label="Kevin Lo\nkevlo@FreeBSD.org\n2006/07/23"] +kgalazka [label="Krzysztof Galazka\nkgalazka@FreeBSD.org\n2025/04/07"] khng [label="Ka Ho Ng\nkhng@FreeBSD.org\n2021/03/15"] khorben [label="Pierre Pronchery\nkhorben@FreeBSD.org\n2025/05/06"] kib [label="Konstantin Belousov\nkib@FreeBSD.org\n2006/06/03"] @@ -564,6 +565,7 @@ emaste -> scottph emax -> markus erj -> jeb +erj -> kgalazka fjoe -> versus @@ -715,6 +717,8 @@ julian -> mp kan -> kib +kbowling -> kgalazka + ken -> asomers ken -> chuck ken -> ram From nobody Thu May 15 22:23:07 2025 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 4Zz4V365bMz5x1tT; Thu, 15 May 2025 22:23:07 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz4V345q1z3ngQ; Thu, 15 May 2025 22:23:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747347787; 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=5Db6I9U5Qn5EiQ/VLQgPnq1qjA3TcZe3yjtyaC3C368=; b=oseieELhFy0jGe9WpQHtgcGT96cOT5XabX9mRhMF4FZ1Fkv8QsBhyQp75VuiBypeGKhgsk ILjBMKqprhdo3PQjHZ5Z8GdolwRuSocB54TOcmSlDq7gIey9L4A4iSpwYLqEoNsSObORo+ 6sPKDnykm4GDemO9AnaOAtku2R7b2mzwUOukfHpII53vy06T4cELs1zhpAQKWAhJfaMt8y 0FJ7HW35PfKSvRSy4iq5IvSvf6I90+UWZk2wVYSLJVAEOayqYuneqqTJLHX/zXwEFm+0u7 dgOqp/FopQVw1ZWx6ENCqn+2vFX+Av4zCNmtXGZ7N06MSJW0U3Huc9jGnNJlaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747347787; 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=5Db6I9U5Qn5EiQ/VLQgPnq1qjA3TcZe3yjtyaC3C368=; b=PCw/AVhVqx81T2UkkjHxoeuV+fv0sYelTyVwzMt1itCvbCcvkajGtudMHnA7W04WIJ3Qz6 lJQBEZHFSmDF6I3asBQI8lVgjbPXxkQ5/NFb0vBMmIeOnVJjfhqVI3VDcixrorJa69HKR8 WPQycG3pr5VG00wM+HKeB2eci+Ph31BO1UwrIkE1JRdZSp7XvIVF8nxj49hw9cT/AHP303 0A42eX0X9RnMvaCSIz/KKYbqhMFhOPVNvarCxuESGOUWmFrrrOwu5eKfQXw0Y1iil83DzI j+pHWCZ6zVc+KWBBkwZe4VfgsUNvEInzgWDcQuMhPVvugv2C6gV4YN+UWPD67g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747347787; a=rsa-sha256; cv=none; b=uIik293jW/4DPb9apU/B1DUpx/ENxsMRb5thu13GPhv49gWO4uzCCCTVQzrtAKYOjxxIyr GQVmTtrYeBSEvmXico4Y1CLqeBcXBwHc0y7AFP6CPqrk/p5bP+xS/MlGOmLzX17yId5CKs CwbMmQb2UMvV+XxlXje6gJlHpFDF6g9gm3yZeF5q380V+KyG40QjG/ey7FKExH3Lnp3y6n 0dI5/cgT0iPKpYT2rWIXTkGbvp9zzM47sRDmS4n1oB2N0wfzic65/DyaBh+bay6+EaOyPo J0R6SSCEIjz1pcTIcMi1xZmzin6tLNV78T5hjEl/1UbQLavOLeDBExakSxj28A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz4V32vzTzd9G; Thu, 15 May 2025 22:23:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FMN7Bp059492; Thu, 15 May 2025 22:23:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FMN7Zs059488; Thu, 15 May 2025 22:23:07 GMT (envelope-from git) Date: Thu, 15 May 2025 22:23:07 GMT Message-Id: <202505152223.54FMN7Zs059488@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 29d6968fd36d - releng/14.3 - EC2: Remove old broken_txfifo workaround 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 29d6968fd36d27b27f953d5c00f9763491b10734 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=29d6968fd36d27b27f953d5c00f9763491b10734 commit 29d6968fd36d27b27f953d5c00f9763491b10734 Author: Colin Percival AuthorDate: 2025-05-14 23:36:26 +0000 Commit: Colin Percival CommitDate: 2025-05-15 22:22:44 +0000 EC2: Remove old broken_txfifo workaround Early versions of Xen, including those used in the early days of EC2, had a bug in their UART emulation whereby the TX FIFO wouldn't send the expected interrupt when emptying; as a result, FreeBSD would write 16 characters to the serial console and then stop because we thought the FIFO was forever full. In 2013 (1c60b24baa50) I added a loader tunable "hw.broken_txfifo" which spinwaits for the FIFO TX rather than relying on the interrupt, and enabled this in loader.conf in EC2 images. A decade later, this workaround is almost certainly no longer needed in EC2 -- most instances don't run Xen, and the bug was long since fixed in Xen anyway -- but we've been holding on to the workaround "just in case". Unfortunately, the spinwait behaviour is causing latency spikes and triggering warnings from the ena(4) driver. This commit removes the hw.broken_txfifo setting from loader.conf in EC2 images, but leaves the loader tunable and associated code, since it has been necessary in some other environments. (It seems that the TX FIFO missing-interrupts bug has been independently written at least three times!) Approved by: re (cperciva) MFC after: 1 minute Sponsored by: Amazon (cherry picked from commit 9a685c09f06a55b18589d75f9307563d84a17fa9) (cherry picked from commit eadda156a50d3487ec1e6fc78f6cfe2df42448fa) --- release/tools/ec2.conf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index 1116faed4e9c..bac8bb0d0e67 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -58,11 +58,6 @@ ec2_common() { # screenshot") which was introduced in 2016. echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf - # Some older EC2 hardware used a version of Xen with a bug in its - # emulated serial port. It is not clear if EC2 still has any such - # nodes, but apply the workaround just in case. - echo 'hw.broken_txfifo="1"' >> ${DESTDIR}/boot/loader.conf - # Graviton 1 through Graviton 4 have a bug in their ACPI where they # mark the PL061's pins as needing to be configured in PullUp mode # (in fact the PL061 has no pullup/pulldown resistors). Graviton 1 From nobody Fri May 16 00:00:13 2025 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 4Zz6f54wJ1z5vfy8; Fri, 16 May 2025 00:00:13 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz6f513fSz46Bm; Fri, 16 May 2025 00:00:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747353613; 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=V3KZWSAwXdkwJA58IZswkwVgYUdfy5by5Q8nidE3B2Y=; b=EC8Oq9nTfpaEQ2BmbmYxo123vq2AfnsUCM7FdHIcDmrlqPG05E+27VGilIwwrUKMsoCrmx GtGsLJLMALKSwbmtXWzmY7hpPHD8hBn2Q8f4tL+wyJpvMZ4MlLOMwDyMQqsYjY0wKf790k RQC6QGf1v3tMJfPqllUe57QWikWFHhe136QMSPm9UcBY8DWPEXfDRkV63xigRKUU5D6Bsn PAnGikenCNYKPM0aBauqU7PGCgvxKt2cXDx2kGkHu6CD8YgBq03GplFoNcZEdZyvyA5cLt WUKKwCjOyaP/Wo7GNCDm9IK8bqgWwzOdjnqzbho7vP4JIdSMo4tUIWcFJEpuWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747353613; 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=V3KZWSAwXdkwJA58IZswkwVgYUdfy5by5Q8nidE3B2Y=; b=yn3eYVc2WyeT1SBHDmU0XaadcZPidAe9ONShbERUo/J0CLkJer+ehMBzf96k0chL24Kwqo MDkyX53qnxekoV/QK4UYLaFdqxedb+Gxwgh5uGnxtXySaTDnW6pWqTbQv9ehYhQtN5Ejtb XkD8jbfbPeruxgfml/+Fe/QOfzkSTgrbhPN9SM8KpTOVVmMDosIjKnsFewhpNLnNlF6m34 yRG1U3h90NaJ91wDck7mESelhZm6tLxth50gJDptpCqIm03tLdZY7XQfsPEvfviZqoRcsg rWJa0xIMQFhe0ig03aOcXhmpa4TH7RZD9hbkCrZODlZo+nQHodTOtFDi+TOpTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747353613; a=rsa-sha256; cv=none; b=Ka+yNGBQnX9fM4keRxXQOs8yDvUdrDqVX3Z+VJ74xqzNAFKj2XLNCB++OPA3Vzvy88G7/L /ieQMhIvVLAoUD48olPvI29GX3UGHWmhN/Twec4P5lFitgB9x+DPqNVoo+Y6cVqKvBczyv LeqIc5KV6detZSgME7hz8a7dA8iTu7wT/lyE3BQXeCXxw+5F3lY7+1exxy+P0Ev5zhfwh1 /QECduBsh6sbPaM5q9YxGoZvWZkRXhfhEslT2knzfhJF6qmiSHJo7uVYG7fKKj8NnVCqvC keJmzvefoNozkvshitJ9RFAqaPfzFRACd/20WH1ZERN83KUbHqc5/F/lwlI/KA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz6f50bjkzgMX; Fri, 16 May 2025 00:00:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G00Dvw036034; Fri, 16 May 2025 00:00:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G00DmF036030; Fri, 16 May 2025 00:00:13 GMT (envelope-from git) Date: Fri, 16 May 2025 00:00:13 GMT Message-Id: <202505160000.54G00DmF036030@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: a2ebf641da89 - releng/14.3 - 14.3: Update to BETA3 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.3 X-Git-Reftype: branch X-Git-Commit: a2ebf641da897fd916d572aa0ee148b3b1960539 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a2ebf641da897fd916d572aa0ee148b3b1960539 commit a2ebf641da897fd916d572aa0ee148b3b1960539 Author: Colin Percival AuthorDate: 2025-05-16 00:00:00 +0000 Commit: Colin Percival CommitDate: 2025-05-16 00:00:00 +0000 14.3: Update to BETA3 Approved by: re (implicit) Sponsored by: Amazon --- sys/conf/newvers.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 4f6e7e82a1b2..13c927f499dc 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -53,7 +53,7 @@ TYPE="FreeBSD" REVISION="14.3" -BRANCH="BETA2" +BRANCH="BETA3" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi From nobody Fri May 16 00:30:03 2025 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 4Zz7JX0tgjz5vj8j; Fri, 16 May 2025 00:30:04 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz7JW4lZ1z3QmS; Fri, 16 May 2025 00:30:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747355403; 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=jYRcUGdEjG7Tz1mFFT2ubxp069UE9cImweZQyzb8r1M=; b=nMkBIEMD/46d4VXisVdakceB2PePp7eCCZQXZcOMTd55DljArmj7oiOVFiQ5PNRhIC9DnR zS4/ExDP1GQEjfRsSLQ/+FKpfYyF1bovAeSQx/LxpXL5++mPie1Almvy9yWGdNh2ng4Vmm z6bZIa9zq36+/4iohqP71Iuww+aBZ2rY5VHKBFynIX5BZ4QnvrokuwSArLbjlMc9/+wCjW p95ibpTumd2dfg7akI4BytfZLNjGgs8gu+kF56CLbJET/2vOqWRP/do/xvuPsG3GJsb1o1 rt542EjjjNr3e8dqJz0y+2Jyhm2xUHnYd9XLt5ydZCGPPdxLU0QWKGCfd2gUHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747355403; 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=jYRcUGdEjG7Tz1mFFT2ubxp069UE9cImweZQyzb8r1M=; b=Lj0zS3laXfAGzDoyTicrHmV8/8WYQSyPDt44SWb/PD7hlNTpgTz5WEg4+lMk23mWrL0YIT F5xhhKUXtUSD4pRq0b0QC563KUNOMVGHEddl5seYwmmILnsLrLyaOiebcJSwdDQVI22EE3 lwJIvh2GdBBecFbsTU3YZ1ALeqg+t++KGgekPrSO2+FCsPGe25PVJ8UVrn0NVlrS0PR2j5 Va4ilcanDD5O8uM06VRkKxRhmhK767Q/724w0bSsnz1vFLx5Fy9aRObmcBH4vILQBk6yJF CCHhq7dVqqPYjXMAg3Bpr9PdouDr4GwpwJYwwj/pJXBDz4doyrIKmXHjrAau9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747355403; a=rsa-sha256; cv=none; b=XPfwjOBeqSoz6Q1qGm87ofrVqeGVLK5FUKAdSc6fz5lUso6Q4XIXyYlh/ZnHuG5bOpUQXe C7YoB1Nhrv3m4AzUohqFsTgPnwv442tbf/7Bk0z5jRg3HiReo0erRaAghTD9ePl5T9INMj qS94OmNZRRuy5lyKEENvt1Oi3g4v1SlK7iuUxqEmzHynsvpgLpVDidLSrDa8OQswssM/Ye bpVufC4cT9A6gOUVyEmJ5Q3Ot5hbeuc+03LeqD4zektR2xInaQoHALE4WraCSyxKfgd51E VTjFSbzzNiySozQOjejgHKKh4h3c83OSsf55AAqX4xfXnc/Nas13cZDv3omVgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz7JW2c0lzgdg; Fri, 16 May 2025 00:30:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G0U3Ns087243; Fri, 16 May 2025 00:30:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G0U3Jw087233; Fri, 16 May 2025 00:30:03 GMT (envelope-from git) Date: Fri, 16 May 2025 00:30:03 GMT Message-Id: <202505160030.54G0U3Jw087233@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 772258c89f28 - main - nfs_clrpcops.c: Fix acquisition of post-op attributes for link 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 772258c89f28501546844a60616211f44f55f4ce Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=772258c89f28501546844a60616211f44f55f4ce commit 772258c89f28501546844a60616211f44f55f4ce Author: Rick Macklem AuthorDate: 2025-05-16 00:27:14 +0000 Commit: Rick Macklem CommitDate: 2025-05-16 00:27:14 +0000 nfs_clrpcops.c: Fix acquisition of post-op attributes for link Without this patch, the link RPC (done by nfsrpc_link()) did not acquire post link operation attributes for the file object for NFSv4. For some recent Linux NFSv4 servers that support delegations, this would result in the client's cached attribute for st_nlinks not being increased right away, because the delegation would indicate that the now stale cached attributes were still valid. This patch fixes the problem by acquiring post link attributes and updating the client's cached copy in the same manner as the NFSv3 RPC did. Detected at the recent NFSv4 Bakeathon testing event. Applications will only be affected if they examine st_nlinks after a new hard link is created for a file object. MFC after: 2 weeks --- sys/fs/nfs/nfs_commonsubs.c | 2 +- sys/fs/nfsclient/nfs_clrpcops.c | 40 +++++++++++++++++++++++++++------------- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/sys/fs/nfs/nfs_commonsubs.c b/sys/fs/nfs/nfs_commonsubs.c index 39fa6f091eee..eeeb079a6aa7 100644 --- a/sys/fs/nfs/nfs_commonsubs.c +++ b/sys/fs/nfs/nfs_commonsubs.c @@ -254,7 +254,7 @@ static struct { { NFSV4OP_REMOVE, 1, "Remove", 6, }, { NFSV4OP_REMOVE, 1, "Remove", 6, }, { NFSV4OP_SAVEFH, 5, "Rename", 6, }, - { NFSV4OP_SAVEFH, 4, "Link", 4, }, + { NFSV4OP_SAVEFH, 6, "Link", 4, }, { NFSV4OP_READDIR, 2, "Readdir", 7, }, { NFSV4OP_READDIR, 2, "Readdir", 7, }, { NFSV4OP_GETATTR, 1, "Getattr", 7, }, diff --git a/sys/fs/nfsclient/nfs_clrpcops.c b/sys/fs/nfsclient/nfs_clrpcops.c index 0fb08df74a54..c1f94a65e506 100644 --- a/sys/fs/nfsclient/nfs_clrpcops.c +++ b/sys/fs/nfsclient/nfs_clrpcops.c @@ -3113,15 +3113,20 @@ nfsrpc_link(vnode_t dvp, vnode_t vp, char *name, int namelen, (void)nfsm_fhtom(VFSTONFS(dvp->v_mount), nd, VTONFS(dvp)->n_fhp->nfh_fh, VTONFS(dvp)->n_fhp->nfh_len, 0); if (nd->nd_flag & ND_NFSV4) { - NFSM_BUILD(tl, u_int32_t *, NFSX_UNSIGNED); - *tl = txdr_unsigned(NFSV4OP_GETATTR); - NFSWCCATTR_ATTRBIT(&attrbits); - (void) nfsrv_putattrbit(nd, &attrbits); - nd->nd_flag |= ND_V4WCCATTR; NFSM_BUILD(tl, u_int32_t *, NFSX_UNSIGNED); *tl = txdr_unsigned(NFSV4OP_LINK); } (void) nfsm_strtom(nd, name, namelen); + if (nd->nd_flag & ND_NFSV4) { + NFSM_BUILD(tl, uint32_t *, NFSX_UNSIGNED); + *tl = txdr_unsigned(NFSV4OP_GETATTR); + NFSGETATTR_ATTRBIT(&attrbits); + (void)nfsrv_putattrbit(nd, &attrbits); + NFSM_BUILD(tl, uint32_t *, 2 * NFSX_UNSIGNED); + *tl++ = txdr_unsigned(NFSV4OP_RESTOREFH); + *tl = txdr_unsigned(NFSV4OP_GETATTR); + (void)nfsrv_putattrbit(nd, &attrbits); + } error = nfscl_request(nd, vp, p, cred); if (error) return (error); @@ -3130,19 +3135,28 @@ nfsrpc_link(vnode_t dvp, vnode_t vp, char *name, int namelen, if (!error) error = nfscl_wcc_data(nd, dvp, dnap, dattrflagp, NULL, NULL); - } else if ((nd->nd_flag & (ND_NFSV4 | ND_NOMOREDATA)) == ND_NFSV4) { + } else if (nd->nd_repstat == 0 && (nd->nd_flag & ND_NFSV4) != 0) { /* - * First, parse out the PutFH and Getattr result. + * First and parse out the PutFH and Link results. */ - NFSM_DISSECT(tl, u_int32_t *, 2 * NFSX_UNSIGNED); - if (!(*(tl + 1))) - NFSM_DISSECT(tl, u_int32_t *, 2 * NFSX_UNSIGNED); - if (*(tl + 1)) + NFSM_DISSECT(tl, uint32_t *, 5 * NFSX_UNSIGNED + + 2 * NFSX_HYPER); + if (*(tl + 3)) nd->nd_flag |= ND_NOMOREDATA; /* - * Get the pre-op attributes. + * Get the directory post-op attributes. */ - error = nfscl_wcc_data(nd, dvp, dnap, dattrflagp, NULL, NULL); + if ((nd->nd_flag & ND_NOMOREDATA) == 0) + error = nfscl_postop_attr(nd, dnap, dattrflagp); + if (error == 0 && (nd->nd_flag & ND_NOMOREDATA) == 0) { + /* Get rid of the RestoreFH reply. */ + NFSM_DISSECT(tl, uint32_t *, 2 * NFSX_UNSIGNED); + if (*(tl + 1)) + nd->nd_flag |= ND_NOMOREDATA; + } + /* Get the file's post-op attributes. */ + if (error == 0 && (nd->nd_flag & ND_NOMOREDATA) == 0) + error = nfscl_postop_attr(nd, nap, attrflagp); } if (nd->nd_repstat && !error) error = nd->nd_repstat; From nobody Fri May 16 00:35:17 2025 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 4Zz7QY6m1Xz5vjgK; Fri, 16 May 2025 00:35:17 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zz7QY6J7cz3Vyn; Fri, 16 May 2025 00:35:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747355717; 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=QDyOifx0KIhX6D4VTgI5D4EUUxIEJmE0zUWg7v2YTJ0=; b=KCcLFbt/bxckzcatdGgMyX56xoad25W+/5oOUohnVnBQs6wUCBF7QP8+jIIOY9lIQoUMp3 eX98zPEKImICRttRfNG9OgH0oVM1WLJ8NfvyIUrDMRsySgvI+BsKntd56sYFEcobs7T0wF ifwoeeaHIQaWA1alekMRlVoOVg69swSRVviWvxy0pgDcL71k2bBA85ToHqXXZylvXP1ah3 as/r74sDj0bfiyq359TM1qnoYoIsGJiu0tDcnwaogD1x5Y9vicEcJnJGBGNQ9Nu/M+bg+b UBV9n3B9RLPHKaKZrOFMfYYLsI2Qqg+/sDz8cTI4OxF+yB6kMlBR3Wljg/IqlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747355717; 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=QDyOifx0KIhX6D4VTgI5D4EUUxIEJmE0zUWg7v2YTJ0=; b=P86vhIcrOPQBFl+3DrBODWfw/pYwovQeQgJTxV77o+9fk3Mxh6CYnUfkN1rOj0jlQc/ZR0 aK9qd2VcfOWsuxGQ2yirpz6xyBolxIViGzaQWTj3GHtfoYYwB5TgH6cjUvy7x09mCEU0l3 y1b0uslJrPJIvKrrAVZbTUlOIdiT+3kJtNO7PV2nO0qS97EtdsyauQMOBHVU/k2wc5DcCE 3PVqkARIiVH7hwvbbKU1694yf2xj2Hd/fIQPlCpD92fDb0P3zyVVfjKFoJkr457Y63LNxv QkneUn0zEwTbz+UeHeMRdCDfPHIqgEaWCT9Ol3NbJP+aqatgRSR0r7ZCSJeq0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747355717; a=rsa-sha256; cv=none; b=syCWRuMuluVQ+NWym+aczilBPNIAF8hOPL+VCL4InUWQwtqP1skTezbuUx7yxXDs5HeiHW AGEoV42vqRLy6KvrIEYq1p3D6RdvLeK8SBAi83/M0chfwxEgGgFWN2m9LwCUF3D+kPipar Oy4qZHirJqt+5v7dzlmTdc71hWgjHtJLCYxsCEy/cOVrLneo3I2U5ck2rzs/55FjWwfobt gZj7+xxZuIt49o5KouxDJ9205dw+pqOtmfIimHGyBMrzkgkYbRPS6vJcP8cclxGjsTw+MD ZN9C+FvSnfbKiACjvMMK2n71ZhXp6EvGQ1VmMXZV47JpqTrZ4p0cVIZFgZU0zg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zz7QY5g8NzhS4; Fri, 16 May 2025 00:35:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G0ZHA7002890; Fri, 16 May 2025 00:35:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G0ZHvA002887; Fri, 16 May 2025 00:35:17 GMT (envelope-from git) Date: Fri, 16 May 2025 00:35:17 GMT Message-Id: <202505160035.54G0ZHvA002887@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 96af6ac75468 - main - UPDATING: Add an entry for commit 772258c89f28 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 96af6ac75468602b85552714db990449aa6a5d3d Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=96af6ac75468602b85552714db990449aa6a5d3d commit 96af6ac75468602b85552714db990449aa6a5d3d Author: Rick Macklem AuthorDate: 2025-05-16 00:32:18 +0000 Commit: Rick Macklem CommitDate: 2025-05-16 00:32:18 +0000 UPDATING: Add an entry for commit 772258c89f28 --- UPDATING | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/UPDATING b/UPDATING index ce2b60ea9353..b6597c2e11a1 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250515: + Commit 772258c89f28 changed the internal API between the nfscommon + and nfscl modules. Both need to be built from updated sources. + 20250513: The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0, meaning that interfaces added to a bridge may not have IP addresses From nobody Fri May 16 02:34:47 2025 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 4ZzB4S0VfRz5vtDP; Fri, 16 May 2025 02:34:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzB4R4zvfz3xfF; Fri, 16 May 2025 02:34:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747362887; 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=oyIDHLgUhIBix10ggzEKLC3TWpODkr45R9vZQvL2yxM=; b=uSEiqoI2vMQF/dRoZnirwdLr3T3xvmQfcfxj9ipQYipndL8TkesMWHMYSVf2ZahgfAaFAI mGKrGUdZ7F+8ispRYGvlNr7uTWeU4B9nTQ22DAMKwbCoAU1KSi5zXdkCNbxFiWkEaM44GV PUTqUYsylcoMtHSSrm7D3SpIbP/Ib5Sj3gAPeY4Q4m1zrjZX1kWpES4Cwg4+F87iDFB0LP ZOy3H9fGsIqCa4/LP18U6numYgCZB9Iv8F9G22fpNxKRBBrVWXYqTyF4YIhTKNzsQ2zqH2 JdbZyMJ0xp90Q6a30ZoWKp2fpp+L0qujdBsuRotDb2UziULN/tBnKyMxUzMeQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747362887; 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=oyIDHLgUhIBix10ggzEKLC3TWpODkr45R9vZQvL2yxM=; b=WUIA8sxl5jCdR+0vxjM71VEX69/VYbj2CWrI0t6pen3+rDnu/IZ9tmaJa6Kv6Jk6+GZA6H oEcqUodO679wIkGt2qshi/rH8KzsWjkXnAUpAQH+tm07RdwXVpIh4GyKSXEr9S0yIB5XpP mAazLlxqA+JaAdky2HgGRc7xp+gb7gjG/B1HkNVGLBiqADmjT+huEsjhGnvq3dh89R9ZFL i/js7v3+BbhnylFOh/c4gfjieTSgg5oOrD9l0bAdpi5JL8HJudn4luc2A4iqlspDY67DER uI5kn9A3cd3+VTKwSnPpKg37UN/r3UUQGT+YxTEQjcKUB03fXlC7Euly7IJgQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747362887; a=rsa-sha256; cv=none; b=IMlYygd28mgS64pyh7o1ho+6gnIMvm+GtTTdWkpnS8pGi614DBdFOfPyA8KLFrMGEX5m4W 93frpQxVQBBSQk9az+Oct77F2nPeiuZeY4nYyCdgAtL1K1zBSTqdGnvW3iGGogzgCRZaSe efGzB2qmKeVvty/KZfNcncF/WitsnWMm8RmH/H8yFtPc6r7Hmh/o+g+2ATGcrxXa/9s5+8 ITxDu6s4C7qhM7vEhEl2ED2ndUoW3U3GaX0qTQmw3QurVDDijfIGZl3ERjIt4LUyGcePM5 gEEDNGIEf/XyLPgPh8C5jUt9AIF2plaDTtVVPGn2WCD7p6Y8c/wfkP67PMMIgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzB4R4GkTzl2f; Fri, 16 May 2025 02:34:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G2Ylld026275; Fri, 16 May 2025 02:34:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G2YlcP026272; Fri, 16 May 2025 02:34:47 GMT (envelope-from git) Date: Fri, 16 May 2025 02:34:47 GMT Message-Id: <202505160234.54G2YlcP026272@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: aa266fad5829 - main - net80211: refactor sequence number assignment code 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: aa266fad58294763dc07b94b33b15318e134826b Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=aa266fad58294763dc07b94b33b15318e134826b commit aa266fad58294763dc07b94b33b15318e134826b Author: Adrian Chadd AuthorDate: 2025-01-25 22:25:18 +0000 Commit: Adrian Chadd CommitDate: 2025-05-16 02:33:27 +0000 net80211: refactor sequence number assignment code Refactor out the sequence number assignment code for normal frames and beacons. Document the behaviour around fragments and packet lists. Right now this should be a no-op; there's some verification code in here to make sure that the TID selected by the existing code matches the TID populated in the passed in mbuf/frame. Locally tested: * rtwn(4), STA mode Differential Revision: https://reviews.freebsd.org/D49764 Reviewed by: bz --- sys/net80211/ieee80211_output.c | 159 +++++++++++++++++++++++++--------------- sys/net80211/ieee80211_proto.h | 4 + 2 files changed, 103 insertions(+), 60 deletions(-) diff --git a/sys/net80211/ieee80211_output.c b/sys/net80211/ieee80211_output.c index 1ebf7fa8723f..1f726f75b6c6 100644 --- a/sys/net80211/ieee80211_output.c +++ b/sys/net80211/ieee80211_output.c @@ -892,7 +892,6 @@ ieee80211_send_setup( struct ieee80211vap *vap = ni->ni_vap; struct ieee80211_tx_ampdu *tap; struct ieee80211_frame *wh = mtod(m, struct ieee80211_frame *); - ieee80211_seq seqno; IEEE80211_TX_LOCK_ASSERT(ni->ni_ic); @@ -975,25 +974,8 @@ ieee80211_send_setup( /* NB: zero out i_seq field (for s/w encryption etc) */ *(uint16_t *)&wh->i_seq[0] = 0; - } else { - if (IEEE80211_HAS_SEQ(type & IEEE80211_FC0_TYPE_MASK, - type & IEEE80211_FC0_SUBTYPE_MASK)) - /* - * 802.11-2012 9.3.2.10 - QoS multicast frames - * come out of a different seqno space. - */ - if (IEEE80211_IS_MULTICAST(wh->i_addr1)) { - seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; - } else { - seqno = ni->ni_txseqs[tid]++; - } - else - seqno = 0; - - *(uint16_t *)&wh->i_seq[0] = - htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); - M_SEQNO_SET(m, seqno); - } + } else + ieee80211_output_seqno_assign(ni, tid, m); if (IEEE80211_IS_MULTICAST(wh->i_addr1)) m->m_flags |= M_MCAST; @@ -1483,7 +1465,6 @@ ieee80211_encap(struct ieee80211vap *vap, struct ieee80211_node *ni, struct ieee80211_key *key; struct llc *llc; int hdrsize, hdrspace, datalen, addqos, txfrag, is4addr, is_mcast; - ieee80211_seq seqno; int meshhdrsize, meshae; uint8_t *qos; int is_amsdu = 0; @@ -1829,22 +1810,8 @@ ieee80211_encap(struct ieee80211vap *vap, struct ieee80211_node *ni, * and we don't need the TX lock held. */ if ((m->m_flags & M_AMPDU_MPDU) == 0) { - /* - * 802.11-2012 9.3.2.10 - - * - * If this is a multicast frame then we need - * to ensure that the sequence number comes from - * a separate seqno space and not the TID space. - * - * Otherwise multicast frames may actually cause - * holes in the TX blockack window space and - * upset various things. - */ - if (IEEE80211_IS_MULTICAST(wh->i_addr1)) - seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; - else - seqno = ni->ni_txseqs[tid]++; - + ieee80211_output_seqno_assign(ni, tid, m); + } else { /* * NB: don't assign a sequence # to potential * aggregates; we expect this happens at the @@ -1857,24 +1824,11 @@ ieee80211_encap(struct ieee80211vap *vap, struct ieee80211_node *ni, * capability; this may also change when we pull * aggregation up into net80211 */ - *(uint16_t *)wh->i_seq = - htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); - M_SEQNO_SET(m, seqno); - } else { /* NB: zero out i_seq field (for s/w encryption etc) */ *(uint16_t *)wh->i_seq = 0; } } else { - /* - * XXX TODO TX lock is needed for atomic updates of sequence - * numbers. If the driver does it, then don't do it here; - * and we don't need the TX lock held. - */ - seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; - *(uint16_t *)wh->i_seq = - htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); - M_SEQNO_SET(m, seqno); - + ieee80211_output_seqno_assign(ni, IEEE80211_NONQOS_TID, m); /* * XXX TODO: we shouldn't allow EAPOL, etc that would * be forced to be non-QoS traffic to be A-MSDU encapsulated. @@ -1975,7 +1929,6 @@ ieee80211_free_mbuf(struct mbuf *m) * This implements the fragmentation part of 802.11-2016 10.2.7 * (Fragmentation/defragmentation overview.) * - * Fragment the frame according to the specified mtu. * The size of the 802.11 header (w/o padding) is provided * so we don't need to recalculate it. We create a new * mbuf for each fragment and chain it through m_nextpkt; @@ -3827,8 +3780,6 @@ ieee80211_beacon_update(struct ieee80211_node *ni, struct mbuf *m, int mcast) struct ieee80211com *ic = ni->ni_ic; int len_changed = 0; uint16_t capinfo; - struct ieee80211_frame *wh; - ieee80211_seq seqno; IEEE80211_LOCK(ic); /* @@ -3896,8 +3847,6 @@ ieee80211_beacon_update(struct ieee80211_node *ni, struct mbuf *m, int mcast) return 1; /* just assume length changed */ } - wh = mtod(m, struct ieee80211_frame *); - /* * XXX TODO Strictly speaking this should be incremented with the TX * lock held so as to serialise access to the non-qos TID sequence @@ -3906,10 +3855,7 @@ ieee80211_beacon_update(struct ieee80211_node *ni, struct mbuf *m, int mcast) * If the driver identifies it does its own TX seqno management then * we can skip this (and still not do the TX seqno.) */ - seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; - *(uint16_t *)&wh->i_seq[0] = - htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); - M_SEQNO_SET(m, seqno); + ieee80211_output_beacon_seqno_assign(ni, m); /* XXX faster to recalculate entirely or just changes? */ capinfo = ieee80211_getcapinfo(vap, ni->ni_chan); @@ -4241,3 +4187,96 @@ ieee80211_tx_complete(struct ieee80211_node *ni, struct mbuf *m, int status) } m_freem(m); } + +/** + * @brief Assign a sequence number to the given frame. + * + * Check the frame type and TID and assign a suitable sequence number + * from the correct sequence number space. + * + * It assumes the mbuf has been encapsulated, and has the TID assigned + * if it is a QoS frame. + * + * Note this also clears any existing fragment ID in the header, so it + * must be called first before assigning fragment IDs. + * + * For now this implements parts of 802.11-2012; it doesn't do all of + * the needed checks for full compliance (notably QoS-Data NULL frames). + * + * TODO: update to 802.11-2020 10.3.2.14.2 (Transmitter Requirements) + * + * @param ni ieee80211_node this frame will be transmitted to + * @param arg_tid A temporary check, existing callers may set + * this to a TID variable they were using, and this routine + * will verify it against what's in the frame and complain if + * they don't match. For new callers, use -1. + * @param m mbuf to populate the sequence number into + */ +void +ieee80211_output_seqno_assign(struct ieee80211_node *ni, int arg_tid, + struct mbuf *m) +{ + struct ieee80211_frame *wh; + ieee80211_seq seqno; + uint8_t tid, type, subtype; + + wh = mtod(m, struct ieee80211_frame *); + tid = ieee80211_gettid(wh); + type = wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK; + subtype = wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK; + + /* + * Find places where the passed in TID doesn't match gettid() + * and log. I'll have to then go and chase those down. + * + * If the caller knows its already setup the TID in the frame + * correctly then it can pass in -1 and this check will be + * skipped. + */ + if (arg_tid != -1 && tid != arg_tid) + ic_printf(ni->ni_vap->iv_ic, + "%s: called; TID mismatch; tid=%u, arg_tid=%d\n", + __func__, tid, arg_tid); + + if (IEEE80211_HAS_SEQ(type, subtype)) { + /* + * 802.11-2012 9.3.2.10 - QoS multicast frames + * come out of a different seqno space. + */ + if (IEEE80211_IS_MULTICAST(wh->i_addr1)) + seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; + else + seqno = ni->ni_txseqs[tid]++; + } else + seqno = 0; + + /* + * Assign the sequence number, clearing out any existing + * sequence and fragment numbers. + */ + *(uint16_t *)&wh->i_seq[0] = + htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); + M_SEQNO_SET(m, seqno); +} + +/** + * @brief Assign a sequence number to the given beacon frame. + * + * TODO: update to 802.11-2020 10.3.2.14.2 (Transmitter Requirements) + * + * @param ni ieee80211_node this frame will be transmitted to + * @param m mbuf to populate the sequence number into + */ +void +ieee80211_output_beacon_seqno_assign(struct ieee80211_node *ni, struct mbuf *m) +{ + struct ieee80211_frame *wh; + ieee80211_seq seqno; + + wh = mtod(m, struct ieee80211_frame *); + + seqno = ni->ni_txseqs[IEEE80211_NONQOS_TID]++; + *(uint16_t *)&wh->i_seq[0] = + htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); + M_SEQNO_SET(m, seqno); +} diff --git a/sys/net80211/ieee80211_proto.h b/sys/net80211/ieee80211_proto.h index 9ab7e644c89d..32745264b0ab 100644 --- a/sys/net80211/ieee80211_proto.h +++ b/sys/net80211/ieee80211_proto.h @@ -123,6 +123,10 @@ struct mbuf * ieee80211_ff_encap1(struct ieee80211vap *, struct mbuf *, const struct ether_header *); void ieee80211_tx_complete(struct ieee80211_node *, struct mbuf *, int); +void ieee80211_output_seqno_assign(struct ieee80211_node *, + int, struct mbuf *); +void ieee80211_output_beacon_seqno_assign(struct ieee80211_node *, + struct mbuf *); /* * The formation of ProbeResponse frames requires guidance to From nobody Fri May 16 08:20:19 2025 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 4ZzKl80GD5z5wJKl; Fri, 16 May 2025 08:20:20 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzKl74G0gz3j23; Fri, 16 May 2025 08:20:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383619; 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=Jou7N1sPI5vGIUxvzl439miiRnLy3w8XwQGUqH2ELms=; b=sNp17YrrDeESGT8uHRRnfE6Lwbik2zNYoN2rDSh40YDoBDH/06tSt3Xl7LLDGFJ3s9VwhY ma5+lVpeu9Pz3hxyxOZ4cCR6kep3gPMb2GHn5CpY5qrhtO4E2HCS6/5GXoPkh6D5vQWjgA IvDKHv11xY4YxxMHcwBS4SYZsKXzkCVWeHRKMrAPN8zW595YMSrxsKZ+I4Rs2F5PwHy11r YSUK8Q69PQKk9eNGiWD9yxQl+mO4YhJFmpFq/x0MxrSkssVVvSiKGR/ZfYSHor6Fq/MEXq 9+O1hgI6OzLCERMF8ZgQb93ZcLG/sRy8ELkbpk55jYO+3VB6nz+IvmCRicQpFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383619; 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=Jou7N1sPI5vGIUxvzl439miiRnLy3w8XwQGUqH2ELms=; b=oEx6aoQEwkl0WME/6LiKUPgLH/zvbUsGjWODaGyxKDNy+ndRBkbYcatWteGdoD2rRUpgsl PkdK6Um8mO3EyYTfmGO6f6Ij+nNVfwvBvmGKcKTJzQEGAltEUE0qClJvfnVlyb8TtxNr1g m4lMFcWZoX4cWWlnIcPLTPsfzZpWAO/ClAu4Lxk0z3aPLUR4N50g1N7f9Pgmgs1BaCsH2f Qel+el02bsQjOQXN613dnTvzDVZKXhbNqmDbsGWg/ok+6jSiCa+UcdC1pE92ran1SlTM4p T6isEVrzFCyFE8yNsNxAzsY7eZsMTTfdBcDChR6SHRBP5GorkJjbJxfWG3S/Gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747383619; a=rsa-sha256; cv=none; b=dj04L0orre1FKrTRKrCH4RutL6i8rYjh9EWiZfonmqRIoytc1VpWB1sklC8rWE/Q+XohNE 5UWhhTOGWzRU/b2Q7QzSzrvnvGYfzN90VVIICvt8hEJWHXt+Cvd2BvfZLNB8zh4W/sfPg1 8Dz+IU9WTazqq85/KhDGxW9CVWOndMkZ1X2Wm3w4q99zDVbl3DPMY312Lx58ClzPnSRRyQ 1Ez6p30GXJ3ZkqjTc7xVBRHkhY8wQyo9s2QPAhXeu50esALG4zabLYRvgiTpk2PPLbbJrE Ychg9Wg6jdUmQ3xb37fRY/LcMgZ6T1qvWc2ocxfWpTuCzlB4NqU76qquME2dVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzKl73b4pzw1n; Fri, 16 May 2025 08:20:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G8KJA9075322; Fri, 16 May 2025 08:20:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G8KJBH075319; Fri, 16 May 2025 08:20:19 GMT (envelope-from git) Date: Fri, 16 May 2025 08:20:19 GMT Message-Id: <202505160820.54G8KJBH075319@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: ca18e0441029 - main - vm_page: update some iterator-related comments 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ca18e0441029fc94076eb8441581ae07561cace0 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=ca18e0441029fc94076eb8441581ae07561cace0 commit ca18e0441029fc94076eb8441581ae07561cace0 Author: Doug Moore AuthorDate: 2025-05-16 07:42:34 +0000 Commit: Doug Moore CommitDate: 2025-05-16 07:42:34 +0000 vm_page: update some iterator-related comments Update a stale comment about vm_page_alloc_iter(), and add a comment about one of its use cases. Reviewed by: kib, markj, alc Differential Revision: https://reviews.freebsd.org/D50263 --- sys/vm/vm_page.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 681846f8c71a..0fdda1d5fc48 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -1996,10 +1996,8 @@ vm_page_alloc(vm_object_t object, vm_pindex_t pindex, int req) } /* - * Allocate a page in the specified object with the given page index. To - * optimize insertion of the page into the object, the caller must also specify - * the resident page in the object with largest index smaller than the given - * page index, or NULL if no such page exists. + * Allocate a page in the specified object with the given page index. If the + * object lock is dropped and regained, the pages iter is reset. */ vm_page_t vm_page_alloc_iter(vm_object_t object, vm_pindex_t pindex, int req, @@ -5189,6 +5187,7 @@ retrylookup: break; m = vm_page_alloc_iter(object, pindex + i, pflags | VM_ALLOC_COUNT(count - i), &pages); + /* pages was reset if alloc_iter lost the lock. */ if (m == NULL) { if ((allocflags & (VM_ALLOC_NOWAIT | VM_ALLOC_WAITFAIL)) != 0) From nobody Fri May 16 08:20:20 2025 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 4ZzKl91nJBz5wJcq; Fri, 16 May 2025 08:20:21 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzKl84z7gz3jY7; Fri, 16 May 2025 08:20:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383620; 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=rdhi+I5lR9La4DzKA3XIQUahRTuaPchCnOFQZeS2gGA=; b=Lrid5e3gYGw2nM/YPVwVEr9Ah8uGLpspg1DzczP7Ir69Fg9hhbDfdd2d+05qykq0S8nF25 r3mhch5qytpiPAWOhh2Nz9jSSWeLChq5wTeuOPuIxHoYhhXkvrB/nZMG2YdCH6XKFkAI1+ bxm9+haRP4adKW+9JVVk8KN6xhhoceviKBFgeUDRWc+XUBZMkrKHDk/HL2Tw14MrwcC66I 9NDl9RUFZnuCWvEOH/EmN161rj9PWSj76ZVE+untFT1j/iLqYPy26TT11Jc18A9eNG00O5 OKXSNicxsYteEyMvUXi/du4coD3rrGlN1UwYAufQjL8+PUBwWR0j9FD1gum2gg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383620; 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=rdhi+I5lR9La4DzKA3XIQUahRTuaPchCnOFQZeS2gGA=; b=wPwYMGWEtoxTaoKnAI/Cq7q8I6kBtXCx+95GvPevr5vJfWadGZC+2kcizO2lzDnVIy3O7q Rdg+8TkPfVfF9uxDU+KKyD0zaIsjYAB5bV5ILMb+IgNRgWlDCPr0LUeP8xZ93rFn2BMO1l 7OS8VZhtB9XkVyCPq6b7dbWDENrOm4cjrnFd2ixxg0kYHyX8EobFcsY14LLeb7/eiREfjX GGlmrQHWToz7gKYtqNdcCYW0LZbtm7xG3w1EEzefa5EaHhvOSEXV8Sk/SZu68Bcfi5yDHh Z390c4YUbT2ov541j63bO1sVG0pvwxUcOfME4RfqcRu4BzO/fo4Ia46RUykrDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747383620; a=rsa-sha256; cv=none; b=KHNrBtt4eiT6yslyDEmp/HTqdkVMNiI6jhbqLt7nN6+a6+rGyUWBkR+7Oo/RemnPO0rUbd 6+DGGXcNCi9vcmtrwBpY/uXbHMWj6liqTUzN7d7cMcbPjisXuN3jOaMoXcyfmiBdxEwYd0 xsB1llC/c59rPy5rgaCPodX14WIuBPIKDMOrdRGC01j9iN6cYVM9WZ4G9wcnLNreT1Jvdh lCITcy+WebQodagLn7n8CyM13dYK4btvywuapYl8IFe35FPvwlfBq/p/AtEyZn3HU+vhv3 2rOCx7d6b0aCrEQqzWqIywYYr02J7UX4jwxxWa/G3qHy7xxohG4wNTNtVZIFsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzKl84ZZczvdX; Fri, 16 May 2025 08:20:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G8KKdX075356; Fri, 16 May 2025 08:20:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G8KKN4075353; Fri, 16 May 2025 08:20:20 GMT (envelope-from git) Date: Fri, 16 May 2025 08:20:20 GMT Message-Id: <202505160820.54G8KKN4075353@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: efde1e2c8b76 - main - vm_page: remove unneeded use of mpred 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: efde1e2c8b765e8dbd831e6af15c9706d38937a0 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=efde1e2c8b765e8dbd831e6af15c9706d38937a0 commit efde1e2c8b765e8dbd831e6af15c9706d38937a0 Author: Doug Moore AuthorDate: 2025-05-16 07:55:14 +0000 Commit: Doug Moore CommitDate: 2025-05-16 07:55:14 +0000 vm_page: remove unneeded use of mpred Change 4c65b51f44af eliminated the need for some uses of the mpred variable in vm_page_alloc_contig_domain. Remove those uses. Reviewed by: alc, kib, markj Differential Revision: https://reviews.freebsd.org/D50263 --- sys/vm/vm_page.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 0fdda1d5fc48..035b144ccd1e 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2333,9 +2333,6 @@ vm_page_alloc_contig_domain(vm_object_t object, vm_pindex_t pindex, int domain, KASSERT(npages > 0, ("vm_page_alloc_contig: npages is zero")); vm_page_iter_init(&pages, object); - mpred = vm_radix_iter_lookup_lt(&pages, pindex); - KASSERT(mpred == NULL || mpred->pindex != pindex, - ("vm_page_alloc_contig: pindex already allocated")); for (;;) { #if VM_NRESERVLEVEL > 0 /* @@ -2406,7 +2403,6 @@ vm_page_alloc_contig_domain(vm_object_t object, vm_pindex_t pindex, int domain, } return (NULL); } - mpred = m; if (memattr != VM_MEMATTR_DEFAULT) pmap_page_set_memattr(m, memattr); pindex++; From nobody Fri May 16 08:20:22 2025 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 4ZzKlC2Zt1z5wJcr; Fri, 16 May 2025 08:20:23 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzKlC050cz3jcj; Fri, 16 May 2025 08:20:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383623; 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=/trf938kmgl2mkrUGxi718P3e0UqdAe0Xsdc8MZnPmk=; b=f4a2N28f5wNvrzO9EfGXDlGI9tH6ijEM62NFRqjCp/jtaHmYtd6YaUGhAtnZNtPVc8oYO2 76iHdJY/dsxzz/KjondAaI8LwinjmXRqbqBY3fkUOJwCxoC1z0RKuT00ASQqYfphaVpWLt CQmCnpINPv5/nHFiIrL5kwfKAt9Ml21Og9v94TGwTQjtXIcm2a+bAtlw108pOgkjHavOen AdcpAEIBqJizn/KZAEFKqPykJA6D9xRQ9vSXLugwXGwhSxU3JS718CWNgYYKS/yiU8rmsl T+gp2DVq0cE1NxhTUGRnm7Gu7EsBsL98Lgwzw1Y8fJtbmRckWDbMuPkobcbgNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383623; 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=/trf938kmgl2mkrUGxi718P3e0UqdAe0Xsdc8MZnPmk=; b=MEHudB8pMVFLYP4k0nrdT82Zo2oJj65CIT2ILQm0Q9gIu4Zp0qc2LDnUzSlDUkUDvolHHx mEOCpFxCjTl+8CdkrtMMt7+VBh/M6P5V9HZzOlzxEVYxG8X4q1d4WuBhQlr8qme3SQ8FYo sn0NZymBL6FVCBimGVgOCpcS9Ep0q6tFvHLW5ny5jAze7dflRIJoa7bSkPyLmDKsPmTkXK xQJ0B+CcRSGy5OcNHfrrS8g6vMZb9zyZg8FJ+CtX+Y+pjCZWaC8K87jkygeYg/+ZcBiEHg /JlN4KZiuAfjM6cfHcbsLIttBgtE30PvVASOKgRVibOu/aETb1o8WuPGTSN2VA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747383623; a=rsa-sha256; cv=none; b=PQk3slJJ6UugcdHtyHVTh6KCFLO+AjKdBU9KSpWJ6SfoUzabmwL4MBD3mEt+UZBc2NW5YW pFDUTWkZYPsI6gIN/sySTaOJiA2uD6Fz9XabBcsHfxJsvZOeoCx812rmDfJRbtSjcQsBzZ 56950m8x4P/ZCy7T2RizP6BOKZYuyUY4N3+LLvyrnkkHB5ltJ3RT1DOO4xTCp2dFI+dIxp 7iLPbRCharNyDYWPTeelZtqvc6mf5pAW7C0Vi5TiZh0Sml7D7AzkjAfMrVnYMSAgzzL3FG n/gUBiQZnh8DZ/OqWFnYSMF3Nz2yJkYyZkEvR2Gwt9drGM7Lczm94z2rf2CXaw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzKlB67QNzvSf; Fri, 16 May 2025 08:20:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G8KMD5075433; Fri, 16 May 2025 08:20:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G8KMle075430; Fri, 16 May 2025 08:20:22 GMT (envelope-from git) Date: Fri, 16 May 2025 08:20:22 GMT Message-Id: <202505160820.54G8KMle075430@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 349340c8cd5c - main - vm_page: use vm_page_alloc_fail consistently 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 349340c8cd5cedc800eba18400bba0b244e8e866 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=349340c8cd5cedc800eba18400bba0b244e8e866 commit 349340c8cd5cedc800eba18400bba0b244e8e866 Author: Doug Moore AuthorDate: 2025-05-16 08:14:25 +0000 Commit: Doug Moore CommitDate: 2025-05-16 08:14:25 +0000 vm_page: use vm_page_alloc_fail consistently The function vm_page_alloc_fail is used in different ways in different places to achieve the same effect. This purely stylistic change makes the usages consistent. Reviewed by: alc, kib, markj Differential Revision: https://reviews.freebsd.org/D50263 --- sys/vm/vm_page.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index f83df515a03d..f80de4eb151f 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2459,9 +2459,9 @@ again: } } if (m == NULL) { - if (vm_domain_alloc_fail(vmd, NULL, req)) - goto again; - return (NULL); + if (!vm_domain_alloc_fail(vmd, NULL, req)) + return (NULL); + goto again; } found: From nobody Fri May 16 08:20:21 2025 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 4ZzKlB5P7Nz5wJb3; Fri, 16 May 2025 08:20:22 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzKlB0WvWz3jYF; Fri, 16 May 2025 08:20:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383622; 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=s6Pxj9Y31iR3JnWAXtXXYRJpAAyaakkI+s+nwWxXCDA=; b=GG9aFe7byAosKoFJlb3Z8kP6Hj7VAfukEzDlBOzDMbHcfObcOuxWcEFIMhQi4MzNbiY9V/ Qv0cdGgqFnBVLHxuqYfE7+oXZgnRnabB7j/k6X2CBeCd4SZKsOYWDkvpbTPJNMixf6/Fa1 cCm1DACCI97q2squv8Wl/R44wfzh2lCxVBT8rbT6atMT0QkZtXLJ3QCE2NZGYhBWaxqWDl ryhEheHaYJCK7naxY2IX849EntrmOaVghysRAK0d/TBGkZxvYX9gbalT+K5Inscivp/cvx PzoAWzrDAgNvNUUstDr6hdr19l5c5cj4VmObAO/Mx5O8cYNjPJregiJGWMPq4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383622; 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=s6Pxj9Y31iR3JnWAXtXXYRJpAAyaakkI+s+nwWxXCDA=; b=IaC/TQUjsP2scdDR9txoeJ0YTL0NkYoHlKjNqSpCHWneJsFmi/xUxXyJxuSSQA0J4/MDDK mDTLSZpMcQY55izyoKMEFCWSB3V3SrC1sk8aKpxpSeaDfvXXHLDFCeaCtoJFzsqMIdd7A1 C1+2Ftfs+kL5dF9/gkoTq8o0L+5pmDX+djLhfSY3GdKjU7DWOx7eW7qLEamfVoEvn7n3/m ppUQL5YigEf+BM3GSqFPXxnImvQzVyj2v9u17nCNv+SiDElgsJ5HNzx9nzWuAOMjBxznhb oHrc8aFW6cOwN1CSSiZmpg8zgUXbrpje14gGt0zietzo5v2TfzuTkxWPylgyJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747383622; a=rsa-sha256; cv=none; b=PzJnFvchyOjib7jNMUnugbjKu7V8pTfrDJXCfu0InnjtNnCCDPqcK5kMcGCPLTIY4HhYN6 3kAZufsKnDZ/Gjb5HFNBHYr93PwG/L6GKKApavmit7cNhafSpMGtoYDnOBnz27DpPauJLc 6pEdrrzK87PRG/wJ0WLZJb4r7BFkDsHyXi0Tex/vQ5raz8CKHkmTHxGeKlG/hCAe2F2D+R +MvRwMg6E7anDIKxgvnMuqAnfJk/iRc20QJlnBavq7HvoDQnzFRhby1DCi7MyXS9WIikCB 1GUjML2/W1fzzo4JNjlYpE2dE0ZeSYjGzW+aBacM0FhyAuiWC9qF6txMqJUNlQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzKl95Q8bzw4M; Fri, 16 May 2025 08:20:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G8KLdJ075393; Fri, 16 May 2025 08:20:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G8KLtX075390; Fri, 16 May 2025 08:20:21 GMT (envelope-from git) Date: Fri, 16 May 2025 08:20:21 GMT Message-Id: <202505160820.54G8KLtX075390@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 7c9fe7a7925b - main - vm_page: remove obsolete page alloc loops 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7c9fe7a7925b8f60e056628fceaaf5f1a969fff4 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=7c9fe7a7925b8f60e056628fceaaf5f1a969fff4 commit 7c9fe7a7925b8f60e056628fceaaf5f1a969fff4 Author: Doug Moore AuthorDate: 2025-05-16 08:05:40 +0000 Commit: Doug Moore CommitDate: 2025-05-16 08:05:40 +0000 vm_page: remove obsolete page alloc loops When page_alloc_noobj functions were introduced, the need for loops to support cycles of try-alloc, then wait, then retry disppeared from vm_page_alloc_domain and vm_page_alloc_contig_domain functions, but loops remained. Remove them. Reported by: alc Reviewed by: alc, markj, kib Differential Revision: https://reviews.freebsd.org/D50263 --- sys/vm/vm_page.c | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 035b144ccd1e..f83df515a03d 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2140,8 +2140,6 @@ again: * Not allocatable, give up. */ pctrie_iter_reset(pages); - if (vm_domain_alloc_fail(vmd, object, req)) - goto again; return (NULL); } @@ -2333,23 +2331,23 @@ vm_page_alloc_contig_domain(vm_object_t object, vm_pindex_t pindex, int domain, KASSERT(npages > 0, ("vm_page_alloc_contig: npages is zero")); vm_page_iter_init(&pages, object); - for (;;) { + m_ret = NULL; #if VM_NRESERVLEVEL > 0 - /* - * Can we allocate the pages from a reservation? - */ - if (vm_object_reserv(object) && - (m_ret = vm_reserv_alloc_contig(object, pindex, domain, - req, npages, low, high, alignment, boundary, &pages)) != - NULL) { - break; - } + /* + * Can we allocate the pages from a reservation? + */ + if (vm_object_reserv(object)) { + m_ret = vm_reserv_alloc_contig(object, pindex, domain, + req, npages, low, high, alignment, boundary, &pages); + } #endif - if ((m_ret = vm_page_find_contig_domain(domain, req, npages, - low, high, alignment, boundary)) != NULL) - break; - if (!vm_domain_alloc_fail(VM_DOMAIN(domain), object, req)) - return (NULL); + if (m_ret == NULL) { + m_ret = vm_page_find_contig_domain(domain, req, npages, + low, high, alignment, boundary); + } + if (m_ret == NULL) { + (void)vm_domain_alloc_fail(VM_DOMAIN(domain), object, req); + return (NULL); } /* From nobody Fri May 16 08:20:23 2025 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 4ZzKlD5BnKz5wJ6f; Fri, 16 May 2025 08:20:24 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzKlD0gz8z3jyZ; Fri, 16 May 2025 08:20:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383624; 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=Eysie+5uK1YSCHqusV9jNpNM/aP8tyzinTHsxkHgESQ=; b=JBsRLdlDUZmpUAWaKZT27XSsmCI0J+ue+AxDTHfmJtWaeSvyGE651wLRIns3MZXFTNzvL0 5/DejZarrZIAqVdfNlE3jC9mQPyy9HbYzYF7f+5bHaFSHsU5i66Fs97cHk/1P9yWPtSXYd F0Fx8yKyO9pjXREMIQQA9S3yfKVpL5ujxIbWcqKLLHcCxOdPdm9MHHAKOqiZH9CxLZnvcB fxKAZB7Wbkkxtoi84arLtncElmJViyo68Rb/OLqJFMHcTwBKN0XgcvnH5GbF2T0Y+zP6dM rrOX+jnwZSHPggQHm+gSpA3Ru+daOTeToKi3RmgHyOP+/6EHgzG9YYQLMiGB4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747383624; 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=Eysie+5uK1YSCHqusV9jNpNM/aP8tyzinTHsxkHgESQ=; b=r8SdVUkIf0G9yvPe8TnTByhLrzZmoBRy0FyKrcmcy7yFWbzYqrM6xsQjSzD+GUuSTi+jzR Tb9RiUvQlDr6eUQMhy8/GFeBbWHIkobHgANTLo9ifRdPipmsB2Ske/XUmxJj9vGU8IFycx AaIpwduvfbRmKrpT6KeDSRoQp/hZ7f5jln5J/ipsBu0OC59QHN8fD2isSuxNIQqFatRw6v Y8xoqUaKGgTZw5+A3fUgHVGBod07QACTGxPDj4N4s7YGHf9cCkYSWeJsM4AOIZYK4edOWW zyp/PMkQsJoHBc6+eo3zT19WO7ustwsYZa/34lPiOxM+0XXIQbgIpZHsbtpidQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747383624; a=rsa-sha256; cv=none; b=oVGZuGZUCs3uWpa/r1zJYG5aRfSIcvMH/gVCpax/pK+y2gSHGjst8G4H0on99AFciq1ROa 5uaauHYkTZB41OgqAT/FMlo7apDw1AzLByx4RKWJmlVvilQmOOOMBIEcKIZ1uLsvSmI2XL YgXyD+DmFxvkWbgOvdUkYs4VmMo5KRYBf6DxrzE2BsgoB3buT3/PqqDpCobwtTPuKjaqCJ EZWYLpBaEfJq5CBddVRdwKUmJYCNdEhgPXFiACKEvxRHyUxym1hlUOQV5Fn2RqMwvD/YI1 ek06WvR69qZaVeK6+4mcJ2Wsz2mQo7vxdZt9n7t1ojxkwS6loHaHkLpiLQ82Ow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzKlD0FJpzvdY; Fri, 16 May 2025 08:20:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G8KNMW075466; Fri, 16 May 2025 08:20:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G8KNfl075463; Fri, 16 May 2025 08:20:23 GMT (envelope-from git) Date: Fri, 16 May 2025 08:20:23 GMT Message-Id: <202505160820.54G8KNfl075463@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 3fe2f81f665b - main - vm_page: reduce iter_reset calls in alloc_domain_iter 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3fe2f81f665b48534f5ef57b6e341d2e3b470c8a Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=3fe2f81f665b48534f5ef57b6e341d2e3b470c8a commit 3fe2f81f665b48534f5ef57b6e341d2e3b470c8a Author: Doug Moore AuthorDate: 2025-05-16 08:18:02 +0000 Commit: Doug Moore CommitDate: 2025-05-16 08:18:02 +0000 vm_page: reduce iter_reset calls in alloc_domain_iter Where the iterator is reset in all cases now, it actually only needs to be reset when ALLOC_WAITFAIL is set. Reported by: alc Reviewed by: alc, kib, markj Differential Revision: https://reviews.freebsd.org/D50263 --- sys/vm/vm_page.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index f80de4eb151f..e4bede5d3be7 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2139,7 +2139,9 @@ again: /* * Not allocatable, give up. */ - pctrie_iter_reset(pages); + (void)vm_domain_alloc_fail(vmd, object, req); + if ((req & VM_ALLOC_WAITFAIL) != 0) + pctrie_iter_reset(pages); return (NULL); } From nobody Fri May 16 09:08:30 2025 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 4ZzLpk5zxHz5wMJJ; Fri, 16 May 2025 09:08:30 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzLpk2R52z42Qj; Fri, 16 May 2025 09:08:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747386510; 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=zVhLfxOy1e64NAoAELC0I2ct8MrTYe5OR5lJa9XnD84=; b=XWatcfbmH+SWrGqC+VdhMGHMQDmf5wpIMeFe23yfOlxNB0Wna4CZ+C0dAO2p17ysLqm4y+ UmhNCOLTsdzt0eaK9L53tcveEdPbRfrzU8f7EVqFpZbp900xVer7dysrWFWrNITJ9g1+x9 rLaXHsrLE7AWOtF5Ez3V1CRhVMKcxQ7vfbaX5sJpqM8u+Zz5PZH3f/TZuv7JSCsrpcyUOc pPrimwiqLk3ZB5ui36Vosm10jEBs3zlmg0lprDcBf3RO44vvXAIJ46o94SZdxUAtIrd1xE hIEBZElVHtivAb5ZUn2IpmnyZnHDULvXOGDrWWxaSbTJkkU5W3ait3lGgROQRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747386510; 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=zVhLfxOy1e64NAoAELC0I2ct8MrTYe5OR5lJa9XnD84=; b=dzEFx1b+2fxwBTB+1WHrjXe264ObvvOiT8bi4YhnRrYG0DiWrau++7t8eXXMyfD8P7rcBG Dep+0GfYp/x/9Qe6+oyDz1PzGqY55YKRaLJQW0llE5wotIrzCQBg+XjWfOwgzisqnw0V+r mZU81WfNB93bQdg+PfaEtznFEJKZnkutoWhvNthA4fWwa1wmMPxO9kjb7sMSfjf0/HM8mx tmhE2ZOFB2nbdgoIbNZe8jcWtI3NrlO8lSUNFiPUwh7y6RkqiVlEAwWEB8or1i1H5SmS1K vELqTzlfOPM3P7zwlm24aypkmQjMFnf5gjKc8bE/DhSqhXsNUBrGYAbbFLpb0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747386510; a=rsa-sha256; cv=none; b=NcMMq4CSUJHzK3SRLJLdShp/iiBEQbwtIr1LmUk4pw1jVzkMB9hZ1tJxVLwJCjs4HrqUUi DRY77zPrCAViD/j9eAdfSB0BUxNRP4Yh+TLxN5ir8ZLl7/KUwX7PXMO8HyqBWRKxu1Ka+f 4eis4uYY4yF4ksMYQejNzz9u1krXy167lBpNL025hvw1AEhiAz8Um/Mocw0X7FnVBAM8Gz lolg/V3CtmxFANRpysi7bqgixxYaKDEhwfuaBEvF1VVz8zFA7ufNcEP2ytQVRkyPx0yeAu qWW0ZYsrv702Wl95GRbEa3ciR8H3wA2q3FnO+avAKoeWN/7yqS35/TVJeKGp3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzLpk1xzCzww7; Fri, 16 May 2025 09:08:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54G98UaV060076; Fri, 16 May 2025 09:08:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54G98UMj060073; Fri, 16 May 2025 09:08:30 GMT (envelope-from git) Date: Fri, 16 May 2025 09:08:30 GMT Message-Id: <202505160908.54G98UMj060073@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 4179cc8da65d - main - vm_page: conditionally compile label 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4179cc8da65d6fb56ed04a69151ef493cba6b8d5 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=4179cc8da65d6fb56ed04a69151ef493cba6b8d5 commit 4179cc8da65d6fb56ed04a69151ef493cba6b8d5 Author: Doug Moore AuthorDate: 2025-05-16 09:06:13 +0000 Commit: Doug Moore CommitDate: 2025-05-16 09:06:13 +0000 vm_page: conditionally compile label A change that removed a goto left a label the target of no gotos on powerpc. Use the preprocessor to hide that label when it's not a target. Fixes: 7c9fe7a7925b ("vm_page: remove obsolete page alloc loops") --- sys/vm/vm_page.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index e4bede5d3be7..ecf8f5c73a5e 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2095,7 +2095,9 @@ vm_page_alloc_domain_iter(vm_object_t object, vm_pindex_t pindex, int domain, m = NULL; if (!vm_pager_can_alloc_page(object, pindex)) return (NULL); +#if VM_NRESERVLEVEL > 0 again: +#endif if (__predict_false((req & VM_ALLOC_NOFREE) != 0)) { m = vm_page_alloc_nofree_domain(domain, req); if (m != NULL) From nobody Fri May 16 11:07:47 2025 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 4ZzPSN4v4Zz5wVSx; Fri, 16 May 2025 11:07:48 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzPSN0jt8z3WQq; Fri, 16 May 2025 11:07:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747393668; 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=HxViMs7h0YhoMUmDlBHl2Ef07jJSkIchdey4MiaIEII=; b=EDc0339vho6jTZLe7IpBmXFFjQxV2COU51CxjP0zZoBdfPxKpx6brqUqoxF4aHqHtwnat1 RnsB96YA3jk+U8ZDfRniP05lybj6/Z5jCz8qjuUBWpxxejo0Qj/DbGUQfz5um3nyf3F7lZ jDRprPyxhPzBgQoqbwPx1xhETLnhdGu9xkYRWTO30j8oFQqHDFAKooOvm0moE1MrPy4l3D qkrgaQrZUXuXWR7759KwXZkyf9+okEtIPX73J9DTsIcqYBDazPYkihJTvw99c5kdRJcIt0 2bTg7QRWGbIb+PZS3gNvdAwE7ai7e1b8dFbtZyz02EkjcXOSG6KMQuCOpAz81A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747393668; 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=HxViMs7h0YhoMUmDlBHl2Ef07jJSkIchdey4MiaIEII=; b=fWE31XCGaoK4SajCy7BRnoB4IC33hVz2Gi03/M0thEaCjVl2WwAP6bhnV+HzYrz50QFyGm MBq3vaC4+KB05NPnU+9D8c0dvEkQ/00qD5zEXINU2HDkLGaoGebQrHsFRf/EzN40alQWKQ WnY8uQO/cTQzV8ipj3oyJ1Ogn0mtRtxtJgcYkxZey7cvsPJjPc7XWwNo+Faej2wAZMPVwp dYN6sgQxzozPlaHIdIPb4deAjWG25MDqbyIJpPcQqFsSTVwZY4GYNDEgnaU/UUHp4IMuiz jzh98abXIqFMr5iyExKKRGQzVw/my/3mxHg13M1eK/xehuvuX3ed2gmLZYDY0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747393668; a=rsa-sha256; cv=none; b=dhxomVnhaexZGUCMgKr7tDGpB2TbUt1K4aQdYl8+Tk3qBz6eu2JePDUz57GZqrNBROrVz/ cEDAiBU7va29ro5dVavN+WQvynX5lx7iYdZkxjEXkm5SYsZ2uvUZDKkN/yP5/5GgU+th5C OdOf9bMT4JDpxyPOIxJmzjIG+5g2spuYg5Kvy4N8jgEYGiK2qwsDnX6fToJCSaTzjI4tTJ jYilFvYfFMeUOURaEKcg3lztHSjFZFYHGVESwodTDGGidJdC4IZth3rxaSrorDKv+36jr/ /vbZvL9AeyDuQE4vWVGmc8aydxNbe+6tnWBGKbEO8rOgOd7W8zjFt15YB5S5Nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzPSN0K7kz10qH; Fri, 16 May 2025 11:07:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GB7lKK085264; Fri, 16 May 2025 11:07:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GB7l0d085261; Fri, 16 May 2025 11:07:47 GMT (envelope-from git) Date: Fri, 16 May 2025 11:07:47 GMT Message-Id: <202505161107.54GB7l0d085261@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Holm Subject: git: 91ef8c3e1304 - main - stress2: Fix scenario after the changes to ptrace(PT_ATTACH) in commit ecc662c749b1. The traced process now no longer exits immediately at the attach. After a PT_DETACH do not try to wait on a non child process. Style fixes. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pho X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 91ef8c3e13046c0fb9a49512f4efe9ee09bd8099 Auto-Submitted: auto-generated The branch main has been updated by pho: URL: https://cgit.FreeBSD.org/src/commit/?id=91ef8c3e13046c0fb9a49512f4efe9ee09bd8099 commit 91ef8c3e13046c0fb9a49512f4efe9ee09bd8099 Author: Peter Holm AuthorDate: 2025-05-16 11:07:14 +0000 Commit: Peter Holm CommitDate: 2025-05-16 11:07:14 +0000 stress2: Fix scenario after the changes to ptrace(PT_ATTACH) in commit ecc662c749b1. The traced process now no longer exits immediately at the attach. After a PT_DETACH do not try to wait on a non child process. Style fixes. --- tools/test/stress2/misc/vfork.sh | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/tools/test/stress2/misc/vfork.sh b/tools/test/stress2/misc/vfork.sh index 20db95c2b9be..cabc30ebaa6c 100755 --- a/tools/test/stress2/misc/vfork.sh +++ b/tools/test/stress2/misc/vfork.sh @@ -31,6 +31,9 @@ # "panic: failed to set signal flags for ast p ... fl 4" seen. # Fixed in r302999. +# Test scenario updated after commit: +# ecc662c749b1 - main - PT_ATTACH: do not interrupt interruptible sleeps + . ../default.cfg cd /tmp @@ -46,38 +49,32 @@ main(void) fprintf(stderr, "%d\n", getpid()); if ((pid = vfork()) == 0) { -#if 0 - if (ptrace(PT_TRACE_ME, 0, 0, 0) == -1) - err(1, "PT_TRACEME"); -#endif sleep(30); _exit(0); } if (pid == -1) err(1, "vfork"); - - return (0); } EOF -mycc -o vfork1 -Wall -Wextra -g vfork1.c -rm vfork1.c +mycc -o vfork1 -Wall -Wextra -g vfork1.c || exit 1 +rm vfork1.c cat > vfork2.c <<- EOF #include +#include +#include +#include +#include #include #include #include #include #include #include -#include -#include -#include -#include #include int -main(int argc, char **argv) +main(int argc, char *argv[]) { pid_t pid, rpid; struct rusage ru; @@ -86,6 +83,7 @@ main(int argc, char **argv) if (argc != 2) errx(1, "Usage: %s ", argv[0]); pid = atoi(argv[1]); + status = 0; if (pid == -1) err(1, "fork()"); @@ -99,24 +97,17 @@ main(int argc, char **argv) err(0, "OK wait4"); } if (rpid == 0) { -// fprintf(stderr, "No rusage info.\n"); if (ptrace(PT_DETACH, pid, NULL, 0) == -1) err(1, "ptrace(%d) detach", pid); - if (wait(&status) == -1) - err(1, "wait"); } else { fprintf(stderr, "FAIL Got unexpected rusage.\n"); if (ru.ru_utime.tv_sec != 0) fprintf(stderr, "FAIL tv_sec\n"); } - if (status != 0x4000) - fprintf(stderr, "FAIL Child exit status 0x%x\n", status); - - return (0); } EOF -mycc -o vfork2 -Wall -Wextra -g vfork2.c -rm vfork2.c +mycc -o vfork2 -Wall -Wextra -g vfork2.c || exit 1 +rm vfork2.c ./vfork1 & sleep .2 @@ -127,5 +118,6 @@ childpid=`ps -lx | grep -v grep | grep vfork1 | ./vfork2 $childpid s=$? +pkill vfork1 rm -f vfork1 vfork2 exit $s From nobody Fri May 16 11:29:24 2025 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 4ZzPxJ6JCBz5wWHJ; Fri, 16 May 2025 11:29:24 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzPxJ54pjz3kwj; Fri, 16 May 2025 11:29:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747394964; 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=HB4t9HUPSgEGB75Vx4KpC22JuLrCAMQK68g90TJMg20=; b=HkRejhSvNPifHtxrngXUJup4wc+FiTyo65vtFo7MvQp2a4NRo8kY/RO0isO5EVd0cbAX7G 1nGmGoLG8//x1K6o5RUgj52tLsLqoSlI5VIR/FII2fa6nFfsUENxsfZWdB9ANNDywXfeNl 8nfrsBQvsuavVU6mz8GT1V/wIvxQ4cWhA71DCW6tok5U35hy3uhlrp/H1iHmdxR9SjdJap jLpMLxzsNPOuGzHCX7SI+tV5qgZL19u8t6M8JGrTFOOjIfzfScepRzUtCQGhwt8KHs8zQU fuFnXNtlyVIxt2dE5UqybkRreUE5QzPPFcDIprXxD7iO/LQrFYsieakWjmyvfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747394964; 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=HB4t9HUPSgEGB75Vx4KpC22JuLrCAMQK68g90TJMg20=; b=dy4WjyGKpl3/R4v22tJg0p6Jr7crZq/AR+2xHQArcs9OTM5v2CdYP67dzmWgx1qf3MQlti DXpbl9wCuPqPBvrL1eR/oPt2dbsQyBxNwBzFVIYO2acU0JTVVrt7vjOH5MdcaIyD+CbYQl LLCUgR4lKIDbhMP9dz6GGa4hVVagHbeTHlY34Z7p0Cqn0ji00afXrLTAEeKBBzauBgIZcM eIN/sVj0QhX8KAtk91nQ/u2dkXc1bHNWBgJJ8++wEX5gcPOL1S1gWc5eCQc0WMt0lWLUiC XT8lGeOjVobf6od4o8KVODmBOHcetdRHp4yES8gFQxXcogNXdEoomYRdQdzudw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747394964; a=rsa-sha256; cv=none; b=e/lYv6g0Gi8rXxpehGwNOfp8M2Nmd0wbSsMhJs+PWAYsyhEq356pKFRDlhoGJq6kmDRGnk YBIPxciJfcDZ1bUKl6ZyEVGLPD5u2u2ca6Eo2QTcrzImyz6ltYdqa8l2Vx4QwWHrBUDnQc iM7eC71l+q2snwMfHQ6/rebWGUCveG+69Yr8ize9FHVuz9CEqVskL2TWSIa488SWJDTSeR /IcG91Pu5uVqshgKit3HHQYQgQRtUvJwILAZKHaLnuD+djBRHm8FPBulJcJn4hpeiIJ6JD hXLY89rzAYQ8198r0gBb8C+KxKyJVqQvYHh/DVq3Eixh5M1C46M4z7YGMikqjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzPxJ4dPxz11Gp; Fri, 16 May 2025 11:29:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GBTO94022751; Fri, 16 May 2025 11:29:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GBTOHG022748; Fri, 16 May 2025 11:29:24 GMT (envelope-from git) Date: Fri, 16 May 2025 11:29:24 GMT Message-Id: <202505161129.54GBTOHG022748@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Krzysztof Galazka Subject: git: 413197cef9cc - main - ppt: Fix panic when configuring unavailable MSI-X vector 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kgalazka X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 413197cef9ccbf22831eb914c2ef469880468d97 Auto-Submitted: auto-generated The branch main has been updated by kgalazka: URL: https://cgit.FreeBSD.org/src/commit/?id=413197cef9ccbf22831eb914c2ef469880468d97 commit 413197cef9ccbf22831eb914c2ef469880468d97 Author: Krzysztof Galazka AuthorDate: 2025-05-16 11:29:08 +0000 Commit: Krzysztof Galazka CommitDate: 2025-05-16 11:29:08 +0000 ppt: Fix panic when configuring unavailable MSI-X vector In some cases VM may have different idea about number of available MSI-X vectors then PPT driver. Return an error when VM requests setup for more vectors than expected. It was observed while using SR-IOV on an Intel E810 Ethernet adapter. VF driver in a VM sees a correct number of available MSI-X vectors, which depends on num-queues assigned in iovctl.conf, while pci_msix_count in the PPT driver always returns 1. Signed-off-by: Krzysztof Galazka Reviewed By: #bhyve, jhb Approved by: erj (mentor), kbowling (mentor) MFC after: 1 week Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D48812 --- sys/amd64/vmm/io/ppt.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/amd64/vmm/io/ppt.c b/sys/amd64/vmm/io/ppt.c index c3b2b57da988..2cb459fb848f 100644 --- a/sys/amd64/vmm/io/ppt.c +++ b/sys/amd64/vmm/io/ppt.c @@ -750,6 +750,9 @@ ppt_setup_msix(struct vm *vm, int bus, int slot, int func, } } + if (idx >= ppt->msix.num_msgs) + return (EINVAL); + if ((vector_control & PCIM_MSIX_VCTRL_MASK) == 0) { /* Tear down the IRQ if it's already set up */ ppt_teardown_msix_intr(ppt, idx); From nobody Fri May 16 12:17:27 2025 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 4ZzR0r211wz5vbZQ; Fri, 16 May 2025 12:17:32 +0000 (UTC) (envelope-from ivy@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzR0r1LHhz44Dj; Fri, 16 May 2025 12:17:32 +0000 (UTC) (envelope-from ivy@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747397852; 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: in-reply-to:in-reply-to:references:references; bh=E1TLE0jth49prp5vBGoxv/wF5Mgo4TQM9tedylm3/qE=; b=J17V34VgK3ABxC4sSK9CKrnlKNCGc0wYdyCEnqf5OcZLVaH75P76iyt9Axj5Qz6VR0Uscd qVQpZ9vPWaV2tu++YtFifGwwCNQZpboeH+Pd4NjaXWSyIN3AiLnrtakcTObSV4gDdVpSIA CC6VZDTiRxbsQFIgHSXgUvgE4kPK0FJ37m43J1nmSniw3e4BlICd48uHgHFSrFtXBDOIKi 6ELSMdej1h4kK/zRrl8WWN40Py6Sr1vUvAKvzIEV3SAC5H0lTfdBcj5JP906z8TrAGui9s eJM/R9nJ2JOH/jWbD8hZ1AiN0+lI6SU+Rv5QP0lMMx4kBdP9so7rrusHgox4Xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747397852; 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: in-reply-to:in-reply-to:references:references; bh=E1TLE0jth49prp5vBGoxv/wF5Mgo4TQM9tedylm3/qE=; b=oYcWU7vztBi/L8nod+2o74/T8JbFB2vBn3755nSAGmWANx6saq9RSRpDt4KWiM0H+9AzLf fIVS6yHdqwYSGtzUfQ43B3qeF9+SBag89HJeVmD7ErIeugk0s9pIBPJ50upBzZSU0mL2YV loRwLcsPpaVmoRHN+3tf9CVP2FqsSfwk6hyCLojc/Gk9V/Iv6Q1D2zUAoLr8CJ+qyd9pMn e1kemByrp+syJhF6Ze4RhHSANqgq+HcHTVwD8GIpvOKuR66IpiuOFAMYmERZvPozqb/lzt C8IsCA4tZtQWG9W5T3IQUMiJQk9W6eTs2H8RRouxeHhayUcM5SKOV0dt1otefg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747397852; a=rsa-sha256; cv=none; b=Yapc2xqYTmb+fTU8PFgN7U7M1J7tIFKTr+B9Tynlk0Wxe+BoBmJqK07tOvU5QLaY21BW++ XhbnDHcgaTvVXxmb77H75N9n2BHFfjYJkRD+vMzXULgKOJV+dr/UOjJ/98pVWgIX3pqelD X6/SD5QT6c12PqQD3ZID4RrRC7rTkxkrM/9FfXLtb+J/EnfYMJlg1WhKBe1yz6d5X/Tt3o etIJX3tMWp6AJw5Lhjzl0GIw6YADkqHdbuvIVzTLm6pPAItAEvWoz6B2oQSmSELnokOXZJ GxnpbY1maKWkCz+MIiP0/MqQCQ7jAZGE0788/MjZuo4VBROSrpEXHgduyQESIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from ragweed.eden.le-fay.org (ragweed.eden.le-fay.org [IPv6:2001:8b0:aab5:c401:1::1]) (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) (Authenticated sender: ivy/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZzR0q4P9pztMt; Fri, 16 May 2025 12:17:31 +0000 (UTC) (envelope-from ivy@FreeBSD.org) Date: Fri, 16 May 2025 13:17:27 +0100 From: Lexi Winter To: Cy Schubert Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false Message-ID: Mail-Followup-To: Cy Schubert , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> <20250515185812.AE47677@slippy.cwsent.com> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="3ThMZTGcqd0KWVvZ" Content-Disposition: inline In-Reply-To: <20250515185812.AE47677@slippy.cwsent.com> --3ThMZTGcqd0KWVvZ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Cy Schubert: > This patch breaks VNET jails. =20 oops, sorry! however, i can't reproduce this and did test with VNET jails before landing it, so there must be another factor involved. > bob# service jail onestart test2 > Starting jails: cannot start jail "test2":=20 > epair0a > ifconfig: ioctl (SIOCAIFADDR): Invalid argument > jail: test2: /sbin/ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 up:= =20 > failed > . > bob# ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 > ifconfig: ioctl (SIOCAIFADDR): Invalid argument > bob# ifconfig epair0a inet up =20 > bob#=20 is "epair0a" also in a bridge? if so, this is intentional. if not, i am not sure what is going on, but could you please show the full "ifconfig" output at the point this fails? --3ThMZTGcqd0KWVvZ Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQSyjTg96lp3RifySyn1nT63mIK/YAUCaCcs1gAKCRD1nT63mIK/ YOIlAQDrT7C1PBHIJhf9EAPL0NnbuK158EV9Ke0Kv3FHJZ8daQD+L880qfoeNcO2 CJj0uN3qIiH98TnHmdwXcfDz5+R7WwA= =e2Ya -----END PGP SIGNATURE----- --3ThMZTGcqd0KWVvZ-- From nobody Fri May 16 12:49:37 2025 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 4ZzRk61XjHz5vf2B for ; Fri, 16 May 2025 12:49:50 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Received: from mail-qt1-x82d.google.com (mail-qt1-x82d.google.com [IPv6:2607:f8b0:4864:20::82d]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzRk53cVJz3TWn for ; Fri, 16 May 2025 12:49:49 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Authentication-Results: mx1.freebsd.org; dkim=none ("invalid DKIM record") header.d=kev009.com header.s=google header.b=ANzGVRyx; spf=pass (mx1.freebsd.org: domain of kevin.bowling@kev009.com designates 2607:f8b0:4864:20::82d as permitted sender) smtp.mailfrom=kevin.bowling@kev009.com; dmarc=none Received: by mail-qt1-x82d.google.com with SMTP id d75a77b69052e-476b4c9faa2so29519491cf.3 for ; Fri, 16 May 2025 05:49:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kev009.com; s=google; t=1747399788; x=1748004588; darn=freebsd.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=DICBcoSLYFynia9aeBMVkU5Aj2ZVp/BzeZBG+5jkHEI=; b=ANzGVRyxV3uU445uE9mNZxrfMTZfkAFKuEV7sZE0ZxbmNGepx6DXOeLxMuX9lbHDSA gMsc8QZtbwU6vYModqzwxZjEn5tn/OByBrXnsScB3ipF7rQVplgYkEuXFzA3xn9xz4q/ jjgXDOFilNXkVOTRuiwWALN/di/B4OaC+/Lms= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747399788; x=1748004588; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DICBcoSLYFynia9aeBMVkU5Aj2ZVp/BzeZBG+5jkHEI=; b=QFmfhcayv558Gq1afK1QKfqOaW+sv7gI1Ke8kLBO4whzXe135ay9EVeiA52HOt/K0y tRuxnvAj4qlXtfag9HNenEKUAFhXyJhCu1wStoyxzv9ABogMwRWtPFy0mlo8OUpuyC4u XGX1snaqL1oiRbC/ObRQnUFgFqivpTVN0x0YJGVCvwpUQebyGdpZUrCDIMqz1Y75ymV0 Q5AawziBUj/x971dRXrAICjYCvjNEczUv62ZEOiCcj8+CO4ALHctcXuxYBnR86SEmHeM GHPxSGJ63sXFoWpMkGNlUqeAucK73sxRFmtwU2u8V1iWzdokC0D9Lc817nKNcAkrvkbT Ql9w== X-Forwarded-Encrypted: i=1; AJvYcCVy2a/WLZFxu02lmpzPkrMhNVGA60tJ11/11URNgVt06X30Ra1cZAPu5W7DgnCg9V7UUFgPZOJEGOwwaDPsTOe8R7fY@freebsd.org X-Gm-Message-State: AOJu0YxGESB17U/h4/il1Mg1/MPtIX5wUDks2yZLmaWup5bHN1rRUKo/ ZVu+pVz4z6ZVpts5YOgpQRXmf46W6btxuvtTi6tCbsYkEJ547veoAV83D09/pokXbntVB1x2zkd /STQ+nILYAlGZH2WNzEvdvv3mYNnc5T/qKFVpEqJn X-Gm-Gg: ASbGncv0qyoDmPakBHdIYQCinuD8Hg+mXe1VlFz2XyXkmTYR6NIP3pOxUS4rxsYxCdU EnnpdoIczxyHj17Tr7fo0QWRTZBp4sk4ejCWC4LrkIyHJzBSFOwNHi1MLdzFlmyAard4nps0ptJ tZHIi+fzEgBboqc2r8dGuSz2gpJW2Pg71NeA== X-Google-Smtp-Source: AGHT+IFazQx89PYaguZYAGFiw/tEQoRR+AGAfezQlOQ1TY1x75i1vVs08CNCrGTdQ2w/7luLMFwT5w2Vh9bMxmMap24= X-Received: by 2002:a05:622a:17c6:b0:48b:4d30:fced with SMTP id d75a77b69052e-494ae256d5amr57138951cf.0.1747399788452; Fri, 16 May 2025 05:49:48 -0700 (PDT) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> <20250515185812.AE47677@slippy.cwsent.com> In-Reply-To: From: Kevin Bowling Date: Fri, 16 May 2025 05:49:37 -0700 X-Gm-Features: AX0GCFvM3i9nXB5Uthe3wbl9nudVIqYjDX2mENxPe0VR0I9vj9BeXT1CMCmyq2M Message-ID: Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false To: Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 4ZzRk53cVJz3TWn X-Spamd-Bar: / X-Spamd-Result: default: False [0.33 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-0.999]; NEURAL_SPAM_LONG(0.89)[0.889]; NEURAL_SPAM_MEDIUM(0.74)[0.738]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MIME_GOOD(-0.10)[text/plain]; MISSING_XM_UA(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; ARC_NA(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; R_DKIM_PERMFAIL(0.00)[kev009.com:s=google]; MIME_TRACE(0.00)[0:+]; TO_DN_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::82d:from]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; DMARC_NA(0.00)[kev009.com]; DKIM_TRACE(0.00)[kev009.com:~] On Fri, May 16, 2025 at 5:17=E2=80=AFAM Lexi Winter wrote= : > > Cy Schubert: > > This patch breaks VNET jails. > > oops, sorry! however, i can't reproduce this and did test with VNET > jails before landing it, so there must be another factor involved. > > > bob# service jail onestart test2 > > Starting jails: cannot start jail "test2": > > epair0a > > ifconfig: ioctl (SIOCAIFADDR): Invalid argument > > jail: test2: /sbin/ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 u= p: > > failed > > > . > > bob# ifconfig epair0a inet 10.1.1.70 netmask 0xffffff00 > > ifconfig: ioctl (SIOCAIFADDR): Invalid argument > > bob# ifconfig epair0a inet up > > bob# > > is "epair0a" also in a bridge? if so, this is intentional. Hmm, can you clarify what you mean? I think that is a common configuration, it is mentioned in epair(4). From nobody Fri May 16 13:05:42 2025 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 4ZzS4S4ZXtz5vgL5; Fri, 16 May 2025 13:05:44 +0000 (UTC) (envelope-from ivy@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzS4S3sjPz3Z4l; Fri, 16 May 2025 13:05:44 +0000 (UTC) (envelope-from ivy@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747400744; 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: in-reply-to:in-reply-to:references:references; bh=WUbUZ2zD9OmxjUc5G/KJ8wdVbjrboAA6eN1xShYtDdc=; b=em8/h4CNfDp6dxg00C1hYufwPi/m0EMx0fGpC1/nCEf+q0BGZOhz/Dz0qoNMW7iOM9U7KY L8JKmX3W28bALlKb/o7gxxHaQYHRgsrmuUGYjUEJrvBcvUIQEsmtvNQh6tXzwSeRuF5DQV 6uO+0M79FGaPkZ4+cGMqJs+AnOIivxogjxtFeujPxDERmdwpi6rYSpbq83EwfY+wEY8Bkn lpL1rXMYgtxCtgJC1zlPUIMvDMcFa9AH/RnDl/WOaI0EqPRPvhm00gc+RSi3GJrnuc+xVY D1xCueDONJcjEbEmYnYqMSxj4QoEROF5x1Xknab1GaG+zQTOpm9rytqOrGEnkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747400744; 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: in-reply-to:in-reply-to:references:references; bh=WUbUZ2zD9OmxjUc5G/KJ8wdVbjrboAA6eN1xShYtDdc=; b=KHGWUK5pODpQFmBjrdD+sXD3W8QsiSjeEj+AqFGB9rUFFyzqThjqARyGw5y7ED6ci2oNJc nmUOV8bMPRjvSC60Z4CEN0soqQpj+hLGaOYBQrKcu/w2cB683KJe9sVpMNCJ3kBnW323NI 4ZQirkG88XLqHpQo/Zrj6ppYgvNnFr6QZOylIuhuuxD5oKltQ8Quj4DWDvGDN25shkpRX1 diTIB0VCRYBvCQP0C+9Cy+aLY7pK5HPvEDxyRxwkq/3aNM0HPRtkAfvyKNTkguai5mz5Sw O4/Z9FvouqaTZ8qsHeDw/2W1JoMR0cyZ4rgtdywpOUjUnZ+/L59hHWzIbyUhxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747400744; a=rsa-sha256; cv=none; b=VM0SoZRg1/R7ztyB0INOogOl7KOXCS2EKo2aawamG2ycdBi3xPOGQ60aBKK2FSb9Xk9QSM xbhswfeWj0EHqzvJOMc/7t8no2uIsUb3JUJO1AcrHQ5yh85zeNiRodwicQmwr32GPLkbLE dXBFUynqWGxufK8wtnRoIB5nUrRrfOH5+pYevsIjf0rk3959+7BB8BEy+DY2fRbWYHhtqZ yh/N0MUEAeaq6vunrO2ZDGDZAEQD8cATaCVRa80pcToqd9JriLP5oNj+oVZ/2e0CNC1zcb NecMVLMuHB4uEzKk/O/Ma5jIpIPGgwoie8Im6cUR+5tGvkhvEhZcC4yrABMeZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from ragweed.eden.le-fay.org (ragweed.eden.le-fay.org [IPv6:2001:8b0:aab5:c401:1::1]) (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) (Authenticated sender: ivy/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZzS4R6VWHzvB4; Fri, 16 May 2025 13:05:43 +0000 (UTC) (envelope-from ivy@FreeBSD.org) Date: Fri, 16 May 2025 14:05:42 +0100 From: Lexi Winter To: Kevin Bowling Cc: Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false Message-ID: Mail-Followup-To: Kevin Bowling , Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> <20250515185812.AE47677@slippy.cwsent.com> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="8w7JQOuCs6iA9ocd" Content-Disposition: inline In-Reply-To: --8w7JQOuCs6iA9ocd Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Kevin Bowling: > On Fri, May 16, 2025 at 5:17=E2=80=AFAM Lexi Winter wro= te: > > is "epair0a" also in a bridge? if so, this is intentional. > Hmm, can you clarify what you mean? I think that is a common > configuration, it is mentioned in epair(4). basically there are two supported configurations: - epair, with an IP address, not in a bridge (e.g., routed access configuration) - epair, in a bridge, without an IP address (e.g., layer 2 access configuration) both of these configurations are fine and are still supported. there is also a third, secret configuration: - epair, with an IP address, in a bridge. this third configuration has never worked properly for various reasons, so the change in b61850c4e6f6 is to prevent people from doing it and ending up with a subtly broken network. the reason it's a sysctl is that some people are currently using this configuration and may not be able to migrate immediately. this is *not* meant to be a long-term solution and i intend to remove it prior to 16.0-RELEASE. the correct fix here (rather than enabling the sysctl) is to configure the IP addresses on the bridge instead of the epair, which is now documented in bridge(4). (this applies to all types of network interface that can live in bridges, not just epairs.) there's also a thread on current@ about this[0] with some additional discussion; i didn't notice when i replied here since i read my personal email first. [0] https://lists.freebsd.org/archives/freebsd-current/2025-May/007602.html --8w7JQOuCs6iA9ocd Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQSyjTg96lp3RifySyn1nT63mIK/YAUCaCc4JQAKCRD1nT63mIK/ YGg1AP0bVXn6/rAzik760GEVNe7w2O3X3tdWFHjV2vw1m1weogD/XIpZiVGLwhQ7 BIhhIqEA8PB0XLMVH/B0viXkyDdkfws= =rVqJ -----END PGP SIGNATURE----- --8w7JQOuCs6iA9ocd-- From nobody Fri May 16 14:04:33 2025 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 4ZzTNK3nm5z5vmGk; Fri, 16 May 2025 14:04:33 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzTNK2zhmz46Rc; Fri, 16 May 2025 14:04:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747404273; 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=7mLn7vOqXzEA9neY3xPwo9xLo4NvPHoinp+E9PrbymY=; b=LMnwSLvognsE3dEoL5ngO8N/VWqKMbf8SdRsNFF/9HH2ZVYHWs34HfJJ0UfSbhr8IaJz9+ LILRFppV6s/aKaQ2LQrmgXdbudymIzPP+1GP1rPD9t9Dt9KEr1FuwJt1J/UK+0c6sHYgUG z+T12E6IpnbxpWeYEcKysPb/hcpyBHTHVn5OoUDsyjNrCQqUssrPlbhIeLr36HXFXUPm5q 8nBWKUaxEdxJIvyBrK73yIPCaS+HAXYRKWQHVWCUqqQjb3sZ67RIoTmcdKLfgVVlHCjMHE WIjd4FWqNvRI2HweW7QKK9+WvXv0WWKt4LeULJREgD8fqrIFLUPWVg1Gk4zksw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747404273; 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=7mLn7vOqXzEA9neY3xPwo9xLo4NvPHoinp+E9PrbymY=; b=sn/HjtV9Vva+MHA3WT7IveFquh/pOHqVgu5bBVjCqgF1veBVWCNQ1SXUaVbtnM45f93n9P yaZYmoxcHUv14JL+LrSfYBtR9gD+OCzmNJ861qB4wV5aB+B8eIBdYsvQiVPpJAfhjwBeV8 zCh9WY6PH2bz3YgOMc76uMHoDSFzh0JvjW6yqjPImfhi+j2fNFs3Lyt970nGYqLeTCB6r0 bc1XHINcw9Lr7F5FyNrg6e18BN75asvjLBaBkOPu1+NvwJYGBNlLhOx+NnmnP+lGW20h1G /znWkFc3S3gXIHMNIBL+cdma6DrQpFLJ7LrjH68LqbHuGUigjjdCoIw0ZmUYpQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747404273; a=rsa-sha256; cv=none; b=OPfKg3FQO22huktOmuJuEeVMTobE+8iJeBLhJX3oSi+8QdVjWasFV42ZVCbsBXks0I+mhj YuoZwhjXeSkKWd6Ya7YN6G2hpL3Ztn1n2/vnZ4rPlujsvyDDkFDoPxwIENA0FYJm1h6piM n2EYZBRqNP8X/Vfo9Er3BiTxum2ZrXIa8QeNDSnei2yjZeqt2aKOrn9VK+FP/FCkezhfIx px55wPAeETx4agadyoc/BMAepNH0LC59bSmqS+MnQbESGuporuTno4MXrJq46RkPb8RpNF r28kk45JtQsjmzbwZ5/hAsIQjW/siz5KKnZlzk9QcQ6UFqvb5Ak0WPnLICJuVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzTNK2Vf5z15S7; Fri, 16 May 2025 14:04:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GE4XK4021408; Fri, 16 May 2025 14:04:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GE4XSh021405; Fri, 16 May 2025 14:04:33 GMT (envelope-from git) Date: Fri, 16 May 2025 14:04:33 GMT Message-Id: <202505161404.54GE4XSh021405@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Joseph Mingrone Subject: git: 9d29fc2e4bfb - main - sh: Avoid referencing uninitialized memory in alias 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d29fc2e4bfba9fcd3b0944e683458a3f1fa0c47 Auto-Submitted: auto-generated The branch main has been updated by jrm: URL: https://cgit.FreeBSD.org/src/commit/?id=9d29fc2e4bfba9fcd3b0944e683458a3f1fa0c47 commit 9d29fc2e4bfba9fcd3b0944e683458a3f1fa0c47 Author: Joseph Mingrone AuthorDate: 2025-05-15 14:42:14 +0000 Commit: Joseph Mingrone CommitDate: 2025-05-16 14:03:09 +0000 sh: Avoid referencing uninitialized memory in alias If run as alias '' uninitialized memory could be referenced. This is based on a fix from NetBSD. For more information, refer to https://github.com/NetBSD/src/commit/10cfed82c28 . Obtained from: NetBSD (Robert Elz , 10cfed82c28) MFC after: 3 days Reported by: mckusick, Robert Elz Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50364 --- bin/sh/alias.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/bin/sh/alias.c b/bin/sh/alias.c index a02554d66e24..681e82b3e19e 100644 --- a/bin/sh/alias.c +++ b/bin/sh/alias.c @@ -204,6 +204,11 @@ aliascmd(int argc __unused, char **argv __unused) return (0); } while ((n = *argptr++) != NULL) { + if (n[0] == '\0') { + warning("'': not found"); + ret = 1; + continue; + } if ((v = strchr(n+1, '=')) == NULL) /* n+1: funny ksh stuff */ if ((ap = lookupalias(n, 0)) == NULL) { warning("%s: not found", n); From nobody Fri May 16 14:56:38 2025 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 4ZzVXQ58rvz5vrQR; Fri, 16 May 2025 14:56:38 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzVXQ4R3pz3TnZ; Fri, 16 May 2025 14:56:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747407398; 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=rzxoCJhQpuH/UKJsyI5FaT0DzlA9lSa1KmSPGXhwXqI=; b=K9TTac8nTYygXi/w7YGkUFIF+P9pcr2sUBaW+LhUvWqxbWuMisYs3AEKeCQAxKy0Anju7a ft0Ys9Jcmp5oCMuKZstTXOvZdXPmDbuCh3JJQsSRUoTtrL2MqtBYyj2/aQ/KTMlxKVGTL6 LGv/Ga2XIwPPNo5yzes8z98N2/r8bCT9JVw6hK9wjpT9rASSh/nfi0T98pfUFgydL49CFj LRfF5Dag95RrYKYFtkhLKwONmroppupNVxAMkxZzySIqFvITpBpgIhZ08yjD812Xa0Uvy9 YBEkQTYVE9jfLmMLr+jiVm+Nc9OPAWhMXjymBr4+NxLAE6s33P7nGuO/S/6AZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747407398; 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=rzxoCJhQpuH/UKJsyI5FaT0DzlA9lSa1KmSPGXhwXqI=; b=s5o+YoGVhUe0IisRk1jvJqmNIfB4B137pdUqs6+Xv4Tr3Xel9L+ASgnSMVlUT4WlvddHde lzeeDVlaxKIO5nhgCPXhQyLKtEQ4STgIwbf/ctP1I9BhSQIP2lmvMfYGF8SjEptVsZQbC6 A9Gb86Hx3Z9MgsQbJu3NRgvPOIfb4HFv4G0Ky+oqAmeI0vyaOL2/0//ic11ZZ0W6/iUK4H oiFaakyB/Lo1Otu4NWzF36eG0FxSROI1EJz41t2jJr3oApKAynvHFKWINCFUTcsOA+kT6s 8OrCeekULatfRv9rk7n39kia+PTE/Yj8Iz4Iu50IhllHXoz7n66ICV7tWp9JBA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747407398; a=rsa-sha256; cv=none; b=VYj3UHOUXvJsXnb5S8h97FPhuckdOHQKESvKuMorOg+wZH6rr+XPxDLXn3yvPAqIJX4vle NuxPVFITKpOEqssvUu82L6G7ElnBeGNQBa0oBSic6/CzutaToVoFihHCG16BiWcoOwpWDF RmDaVK4yMJmWRODHsdveAF5djA6VMa2U4l1fAxI1+AnECX19fWAFDr705DGv1ovqcwB/PY wsC2+v/PDONJErAbk4CTeWeugZbXAMVZT3nf6jupdSRZGb7uG73CCGvkLw4A0icyxe2nyM eH+1wwoUzXMeszdwXwG9/iZG+S4tNc0RWYzm2KBpHGvv0+dxo+Ppo9ogca1KVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzVXQ41b9z16tC; Fri, 16 May 2025 14:56:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GEucBh015085; Fri, 16 May 2025 14:56:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GEucs8015082; Fri, 16 May 2025 14:56:38 GMT (envelope-from git) Date: Fri, 16 May 2025 14:56:38 GMT Message-Id: <202505161456.54GEucs8015082@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: fbaba7aa4322 - main - man: Exit cleanly on SIGPIPE. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fbaba7aa432257a9b787edc6bfdbfbde94f2e0d5 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=fbaba7aa432257a9b787edc6bfdbfbde94f2e0d5 commit fbaba7aa432257a9b787edc6bfdbfbde94f2e0d5 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-16 14:56:13 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-16 14:56:25 +0000 man: Exit cleanly on SIGPIPE. The first attempt at addressing this simply suppressed SIGPIPE, which resulted in mandoc printing out error messages instead. This was then reverted, but the pipefail was (correctly) left in, so man still returned a nonzero exit code if you quit a page before the end. PR: 223516, 279542 Fixes: 14a5c1068d37, a85d870007e7 MFC after: 1 week Reviewed by: ziaee, kevans Differential Revision: https://reviews.freebsd.org/D50302 --- usr.bin/man/man.sh | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/usr.bin/man/man.sh b/usr.bin/man/man.sh index 68a4b3a40588..ec20fc813bf4 100755 --- a/usr.bin/man/man.sh +++ b/usr.bin/man/man.sh @@ -33,7 +33,10 @@ # it is better to terminate it. ulimit -t 20 -# do not ignore the exit status of roff tools +# Do not ignore the exit codes of roff tools, as they may indicate a +# problem with the page being rendered. Note that this also causes a +# nonzero exit when the user quits reading before reaching the end, so +# we need to look out for and deal with that specific case. set -o pipefail # Usage: add_to_manpath path @@ -1061,6 +1064,16 @@ do_man() { man_find_and_display "$page" done + # The user will very commonly quit reading the page before + # reaching the bottom. Depending on the length of the page + # and the pager's buffer size, this may result in a SIGPIPE. + # This is normal, so convert that exit code to zero. + if [ ${ret:-0} -gt 128 ]; then + if [ "$(kill -l "${ret}")" = "PIPE" ]; then + ret=0 + fi + fi + exit ${ret:-0} } From nobody Fri May 16 15:44:27 2025 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 4ZzWbb3QWHz5vvrS; Fri, 16 May 2025 15:44: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzWbb2f2Fz3bfH; Fri, 16 May 2025 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747410267; 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=4UvFrIn+UlFFigk2TPAmSDhV0uIlWBpkvvqK/JuJkNI=; b=y4VQm/UFK1H0gTb+juUcF/bl3KtsoiWbvYcg+M/4+MOIObMyVgGhnNh1NuELij0etMrkds IUSXFN74QqqkguoZ680C2wdiInv1oAUQ9n5GSeoToswaLg/FmVuyRBNJkasvkU9aIodf1q Vby8KLrGstNxoARgoAWW8mGYQHsKwOQNR8opiBAPo/dFc724dnMgywsqzk2afwRzyOkoOU 7Xb0mFDyivHoM5cdeegWvoEwsgKEE0YFfvHL032VMQaSNwMrdKyfvnE1LDs9LiCbcO4awD Xe9CvasDaG1rzKHfW1JtpSDNZMcRVVXAA5MTciwUS/8Adv2lAxNN5Ym3/sJWzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747410267; 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=4UvFrIn+UlFFigk2TPAmSDhV0uIlWBpkvvqK/JuJkNI=; b=XvSxg0oYAAHg9dCfc3BInAN++Lf8MRgNBEvR4VyZ/8gVXT0RBo6h/IA5p1v9T/OCT63MH4 VL1tIHCUP6LVXYFD68sn7nZKFXEQGpbQTf5ta5go5YLAIoEqCGBPc8XjmVyRzW5sSnkVcr T5ztNUWqrF1xbjD1BZa/og5t6ivVFbvvf0wOoYGJAKdVg9rtqT0wqAkOnizHZ0NLCAEalc rwXzZhLOMSyG0uTEwB5HUyS8V7Au9XN2wf1phdqRiY9ALd0xQSe508wLXxDPdolX5r3pf0 rgPi9BZnBLmzgE7TyGKljhtN5A7pcdl4xim0VGPZACYzUOQWVpD7OuDJ5iJ9Cg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747410267; a=rsa-sha256; cv=none; b=YPnyekoeFSXt9mcvhVJYSLBHUgJG5IeArstd/ugT3CeTyObR270CX/7y9Im8P3H4xbR7V5 APgLNK2qQNBKZgTu7j9pXE8WF3MoqIjiyZ/ZpzdrApD1ho0e4DSx3MtVt4oH/oa8QpzLH4 XUuoFf+Wvf3rlRFWeFgd0wDOEvMtV6s5A0aQxhUMC5E2BuNSFRTNi/gubEjHtG+nyJot3v d2002/Q2qYbIOdQWYz6hRC+Q5Ln5UyUaBTfHI4CyvFssOxiBxKzEm/09SQWkOPqjVioVHg 4Ioe/ILDg5KT3664cJWxBQR0wg3Z9mPpg4BmH37NrHpKpuMCzLnWM2Y6IBrvmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzWbb1S6Fz185r; Fri, 16 May 2025 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GFiRFh008638; Fri, 16 May 2025 15:44:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GFiRct008635; Fri, 16 May 2025 15:44:27 GMT (envelope-from git) Date: Fri, 16 May 2025 15:44:27 GMT Message-Id: <202505161544.54GFiRct008635@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 1518203b892f - main - libc: Improve scanfloat test. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1518203b892f402fa72dd86a458a5d3a0b99dceb Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=1518203b892f402fa72dd86a458a5d3a0b99dceb commit 1518203b892f402fa72dd86a458a5d3a0b99dceb Author: Dag-Erling Smørgrav AuthorDate: 2025-05-16 15:43:20 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-16 15:44:10 +0000 libc: Improve scanfloat test. --- lib/libc/tests/stdio/scanfloat_test.c | 136 +++++++++++++++++----------------- 1 file changed, 68 insertions(+), 68 deletions(-) diff --git a/lib/libc/tests/stdio/scanfloat_test.c b/lib/libc/tests/stdio/scanfloat_test.c index a93238504dd1..635d93d560b3 100644 --- a/lib/libc/tests/stdio/scanfloat_test.c +++ b/lib/libc/tests/stdio/scanfloat_test.c @@ -59,88 +59,88 @@ ATF_TC_BODY(normalized_numbers, tc) buf[0] = '\0'; ATF_REQUIRE(setlocale(LC_NUMERIC, "")); - sscanf("3.141592", "%e", &f); + ATF_REQUIRE_EQ(1, sscanf("3.141592", "%e", &f)); ATF_REQUIRE(eq(FLT, f, 3.141592)); - sscanf("3.141592653589793", "%lf", &d); + ATF_REQUIRE_EQ(1, sscanf("3.141592653589793", "%lf", &d)); ATF_REQUIRE(eq(DBL, d, 3.141592653589793)); - sscanf("1.234568e+06", "%E", &f); + ATF_REQUIRE_EQ(1, sscanf("1.234568e+06", "%E", &f)); ATF_REQUIRE(eq(FLT, f, 1.234568e+06)); - sscanf("-1.234568e6", "%lF", &d); + ATF_REQUIRE_EQ(1, sscanf("-1.234568e6", "%lF", &d)); ATF_REQUIRE(eq(DBL, d, -1.234568e6)); - sscanf("+1.234568e-52", "%LG", &ld); + ATF_REQUIRE_EQ(1, sscanf("+1.234568e-52", "%LG", &ld)); ATF_REQUIRE(eq(LDBL, ld, 1.234568e-52L)); - sscanf("0.1", "%la", &d); + ATF_REQUIRE_EQ(1, sscanf("0.1", "%la", &d)); ATF_REQUIRE(eq(DBL, d, 0.1)); - sscanf("00.2", "%lA", &d); + ATF_REQUIRE_EQ(1, sscanf("00.2", "%lA", &d)); ATF_REQUIRE(eq(DBL, d, 0.2)); - sscanf("123456", "%5le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("123456", "%5le%s", &d, buf)); ATF_REQUIRE(eq(DBL, d, 12345.)); ATF_REQUIRE(strcmp(buf, "6") == 0); - sscanf("1.0Q", "%*5le%s", buf); + ATF_REQUIRE_EQ(1, sscanf("1.0Q", "%*5le%s", buf)); ATF_REQUIRE(strcmp(buf, "Q") == 0); - sscanf("-1.23e", "%e%s", &f, buf); + ATF_REQUIRE_EQ(2, sscanf("-1.23e", "%e%s", &f, buf)); ATF_REQUIRE(eq(FLT, f, -1.23)); ATF_REQUIRE(strcmp(buf, "e") == 0); - sscanf("1.25e+", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("1.25e+", "%le%s", &d, buf)); ATF_REQUIRE(eq(DBL, d, 1.25)); ATF_REQUIRE(strcmp(buf, "e+") == 0); - sscanf("1.23E4E5", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("1.23E4E5", "%le%s", &d, buf)); ATF_REQUIRE(eq(DBL, d, 1.23e4)); ATF_REQUIRE(strcmp(buf, "E5") == 0); - sscanf("12e6", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("12e6", "%le", &d)); ATF_REQUIRE(eq(DBL, d, 12e6)); - sscanf("1.a", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("1.a", "%le%s", &d, buf)); ATF_REQUIRE(eq(DBL, d, 1.0)); ATF_REQUIRE(strcmp(buf, "a") == 0); - sscanf(".0p4", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf(".0p4", "%le%s", &d, buf)); ATF_REQUIRE(eq(DBL, d, 0.0)); ATF_REQUIRE(strcmp(buf, "p4") == 0); d = 0.25; - ATF_REQUIRE(sscanf(".", "%le", &d) == 0); + ATF_REQUIRE_EQ(0, sscanf(".", "%le", &d)); ATF_REQUIRE(d == 0.25); - sscanf("0x08", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x08", "%le", &d)); ATF_REQUIRE(d == 0x8p0); - sscanf("0x90a.bcdefP+09a", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("0x90a.bcdefP+09a", "%le%s", &d, buf)); ATF_REQUIRE(d == 0x90a.bcdefp+09); ATF_REQUIRE(strcmp(buf, "a") == 0); #if (LDBL_MANT_DIG > DBL_MANT_DIG) && !defined(__i386__) - sscanf("3.14159265358979323846", "%Lg", &ld); + ATF_REQUIRE_EQ(1, sscanf("3.14159265358979323846", "%Lg", &ld)); ATF_REQUIRE(eq(LDBL, ld, 3.14159265358979323846L)); - sscanf(" 0X.0123456789abcdefffp-3g", "%Le%s", &ld, buf); + ATF_REQUIRE_EQ(2, sscanf(" 0X.0123456789abcdefffp-3g", "%Le%s", &ld, buf)); ATF_REQUIRE(ld == 0x0.0123456789abcdefffp-3L); ATF_REQUIRE(strcmp(buf, "g") == 0); #endif - sscanf("0xg", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("0xg", "%le%s", &d, buf)); ATF_REQUIRE(d == 0.0); ATF_REQUIRE(strcmp(buf, "xg") == 0); ATF_REQUIRE(setlocale(LC_NUMERIC, "ru_RU.ISO8859-5")); /* decimalpoint==, */ - sscanf("1.23", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("1.23", "%le%s", &d, buf)); ATF_REQUIRE(d == 1.0); ATF_REQUIRE(strcmp(buf, ".23") == 0); - sscanf("1,23", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1,23", "%le", &d)); ATF_REQUIRE(d == 1.23); ATF_REQUIRE(setlocale(LC_NUMERIC, "")); @@ -156,40 +156,40 @@ ATF_TC_BODY(infinities_and_nans, tc) ATF_REQUIRE(setlocale(LC_NUMERIC, "C")); - sscanf("-Inf", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-Inf", "%le", &d)); ATF_REQUIRE(d < 0.0 && isinf(d)); - sscanf("iNfInItY and beyond", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("iNfInItY and beyond", "%le%s", &d, buf)); ATF_REQUIRE(d > 0.0 && isinf(d)); ATF_REQUIRE(strcmp(buf, " and beyond")); - sscanf("NaN", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("NaN", "%le", &d)); ATF_REQUIRE(isnan(d)); - sscanf("NAN(123Y", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("NAN(123Y", "%le%s", &d, buf)); ATF_REQUIRE(isnan(d)); ATF_REQUIRE(strcmp(buf, "(123Y") == 0); - sscanf("nan(f00f)plugh", "%le%s", &d, buf); + ATF_REQUIRE_EQ(2, sscanf("nan(f00f)plugh", "%le%s", &d, buf)); ATF_REQUIRE(isnan(d)); ATF_REQUIRE(strcmp(buf, "plugh") == 0); - sscanf("-nan", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-nan", "%le", &d)); ATF_REQUIRE(isnan(d)); /* Only quiet NaNs should be returned. */ - sscanf("NaN", "%e", &f); - sscanf("nan", "%le", &d); - sscanf("nan", "%Le", &ld); - feclearexcept(FE_ALL_EXCEPT); + ATF_REQUIRE_EQ(1, sscanf("NaN", "%e", &f)); + ATF_REQUIRE_EQ(1, sscanf("nan", "%le", &d)); + ATF_REQUIRE_EQ(1, sscanf("nan", "%Le", &ld)); + ATF_REQUIRE_EQ(0, feclearexcept(FE_ALL_EXCEPT)); ATF_REQUIRE(f != f); ATF_REQUIRE(d != d); ATF_REQUIRE(ld != ld); ATF_REQUIRE(fetestexcept(FE_INVALID) == 0); - sscanf("nan(1234)", "%e", &f); - sscanf("nan(1234)", "%le", &d); - sscanf("nan(1234)", "%Le", &ld); - feclearexcept(FE_ALL_EXCEPT); + ATF_REQUIRE_EQ(1, sscanf("nan(1234)", "%e", &f)); + ATF_REQUIRE_EQ(1, sscanf("nan(1234)", "%le", &d)); + ATF_REQUIRE_EQ(1, sscanf("nan(1234)", "%Le", &ld)); + ATF_REQUIRE_EQ(0, feclearexcept(FE_ALL_EXCEPT)); ATF_REQUIRE(f != f); ATF_REQUIRE(d != d); ATF_REQUIRE(ld != ld); @@ -205,74 +205,74 @@ ATF_TC_BODY(rounding_tests, tc) ATF_REQUIRE(setlocale(LC_NUMERIC, "C")); - fesetround(FE_DOWNWARD); + ATF_REQUIRE_EQ(0, fesetround(FE_DOWNWARD)); - sscanf("1.999999999999999999999999999999999", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.999999999999999999999999999999999", "%le", &d)); ATF_REQUIRE(d < 2.0); - sscanf("0x1.ffffffffffffffp0", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.ffffffffffffffp0", "%le", &d)); ATF_REQUIRE(d < 2.0); - sscanf("1.999999999999999999999999999999999", "%Le", &ld); + ATF_REQUIRE_EQ(1, sscanf("1.999999999999999999999999999999999", "%Le", &ld)); ATF_REQUIRE(ld < 2.0); - sscanf("1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc59p0); - sscanf("-1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == -0x1.0ea3f4af0dc5ap0); - sscanf("1.0571892669084010", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084010", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc5ap0); - sscanf("0x1.23p-5000", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.23p-5000", "%le", &d)); ATF_REQUIRE(d == 0.0); - sscanf("0x1.2345678p-1050", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.2345678p-1050", "%le", &d)); ATF_REQUIRE(d == 0x1.234567p-1050); - fesetround(FE_UPWARD); + ATF_REQUIRE_EQ(0, fesetround(FE_UPWARD)); - sscanf("1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc5ap0); - sscanf("-1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == -0x1.0ea3f4af0dc59p0); - sscanf("1.0571892669084010", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084010", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc5bp0); - sscanf("0x1.23p-5000", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.23p-5000", "%le", &d)); ATF_REQUIRE(d == 0x1p-1074); - sscanf("0x1.2345678p-1050", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.2345678p-1050", "%le", &d)); ATF_REQUIRE(d == 0x1.234568p-1050); - fesetround(FE_TOWARDZERO); + ATF_REQUIRE_EQ(0, fesetround(FE_TOWARDZERO)); - sscanf("1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc59p0); - sscanf("-1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == -0x1.0ea3f4af0dc59p0); - sscanf("1.0571892669084010", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084010", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc5ap0); - sscanf("0x1.23p-5000", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.23p-5000", "%le", &d)); ATF_REQUIRE(d == 0.0); - sscanf("0x1.2345678p-1050", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.2345678p-1050", "%le", &d)); ATF_REQUIRE(d == 0x1.234567p-1050); - fesetround(FE_TONEAREST); + ATF_REQUIRE_EQ(0, fesetround(FE_TONEAREST)); /* 1.0571892669084007 is slightly closer to 0x1.0ea3f4af0dc59p0 */ - sscanf("1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc59p0); - sscanf("-1.0571892669084007", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("-1.0571892669084007", "%le", &d)); ATF_REQUIRE(d == -0x1.0ea3f4af0dc59p0); - sscanf("1.0571892669084010", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("1.0571892669084010", "%le", &d)); ATF_REQUIRE(d == 0x1.0ea3f4af0dc5bp0); /* strtod() should round small numbers to 0. */ - sscanf("0x1.23p-5000", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.23p-5000", "%le", &d)); ATF_REQUIRE(d == 0.0); /* Extra digits in a denormal shouldn't break anything. */ - sscanf("0x1.2345678p-1050", "%le", &d); + ATF_REQUIRE_EQ(1, sscanf("0x1.2345678p-1050", "%le", &d)); ATF_REQUIRE(d == 0x1.234568p-1050); } @@ -287,16 +287,16 @@ ATF_TC_BODY(strtod, tc) ATF_REQUIRE(strcmp("xy", endp) == 0); /* This used to cause an infinite loop and round the wrong way. */ - fesetround(FE_DOWNWARD); + ATF_REQUIRE_EQ(0, fesetround(FE_DOWNWARD)); ATF_REQUIRE(strtof("3.5e38", &endp) == FLT_MAX); ATF_REQUIRE(strtod("2e308", &endp) == DBL_MAX); - fesetround(FE_UPWARD); + ATF_REQUIRE_EQ(0, fesetround(FE_UPWARD)); ATF_REQUIRE(strtof("3.5e38", &endp) == INFINITY); ATF_REQUIRE(strtod("2e308", &endp) == INFINITY); - fesetround(FE_TOWARDZERO); + ATF_REQUIRE_EQ(0, fesetround(FE_TOWARDZERO)); ATF_REQUIRE(strtof("3.5e38", &endp) == FLT_MAX); ATF_REQUIRE(strtod("2e308", &endp) == DBL_MAX); - fesetround(FE_TONEAREST); + ATF_REQUIRE_EQ(0, fesetround(FE_TONEAREST)); ATF_REQUIRE(strtof("3.5e38", &endp) == INFINITY); ATF_REQUIRE(strtod("2e308", &endp) == INFINITY); } From nobody Fri May 16 16:25:41 2025 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 4ZzXWB0N6dz5vyDQ; Fri, 16 May 2025 16:25:42 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzXW96fh2z3gt9; Fri, 16 May 2025 16:25:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747412742; 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=9K6Ztnh5uRHPYOZ02hSPG7LTfY9+MfztwaJMQF+LkRM=; b=RTME4Nsw4+SSOIYshkFn3317eHVuvOY5CxfGHpOoAbrENQfAALqSnCKhtVjSq46xhii7pe e5ykuvsw1NdOIn2jEQL073FqMRqobQnkDcTAWxoKIKqzoG2tVGuzjDdN47D3UF3w9olrqN yskc/UPpPulPpNd29iknm9WZhlXUlmY24CCRiDAKSVAUMrDHf0+591WX1bHOCzGerpDOlo GPdRsoEhH+qyZFcI2D5B5zMLTdDlN//g1LUA2rD5y7qeS3JF4EaB3QFSXvmooUKfTB+pjL mjpFGk7P/lcNOG0Il+0yYz32mZb36LITADu6sCJmGYAY2M1L7qDxOi3UhA4VMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747412742; 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=9K6Ztnh5uRHPYOZ02hSPG7LTfY9+MfztwaJMQF+LkRM=; b=GOkmAm/y4xm6Ovef8ZsK56YJfW4i0sfvaBxX5rfYyJ4YQCG3W6doOzAYhFeK+PsOipPTHA EtTgJGhPgDQqRDvmxx0gOMLszMkuFXpXqzbRmyIsksXWbQQB8amvWOvFQCZCCJBDdyh4n/ z++BsDasL013EUEBm06DXPlBENETMPNR4uFRWXX471Ec+ngcNi/wEuSizY8ng9hLo5BWov cM5rhY3Lb3ZJfF4QDBzHubsWOIlCC2Z/yDQi5vXBkAd4UI3RrAiHRv0CNbjphqdbKD5hi1 3TuVQdRfbOnODha9YHqOj+hzSEWpFe0U05++sm7s2deEga38tGQWJkTGs6AxMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747412742; a=rsa-sha256; cv=none; b=rZtnzgvGtXnGIan5t0ojzL5Ei3VwMAnU0laCGxw6Z+nP0N4qsDDfXMRctRcWgZMoMCFV4G F7LD4gSj7NVf3ZHxvWCeGcMCUmpv2PGbx+PEpyl5QI+bFJ1yH86Qv9aIqLyYrN1KfiwYh3 DnYnquwcT14IGvNd8nCGjWJfCa1nbw9g6C90DbSu+O/0of87ayNjTT7kzAOOLIX7L8YHHt IA3DQyydPqdpCQXh0zL1jn0ZmmF8IJpFkxseO2ZlF4PTqPD5nY/JVI6N8qnPus9E/9h8sx LFnypTMQzM68TjFuD5E85LqUBdNaiTtPxs47kJYb7ld8RBeAKuOTsUwC/98rCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzXW96Dxlz19DK; Fri, 16 May 2025 16:25:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GGPfLU084360; Fri, 16 May 2025 16:25:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GGPfcB084357; Fri, 16 May 2025 16:25:41 GMT (envelope-from git) Date: Fri, 16 May 2025 16:25:41 GMT Message-Id: <202505161625.54GGPfcB084357@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 4dbe268d2e7a - main - traceroute tests: fix the test when SCTP is supported 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4dbe268d2e7ad4f1172a174a3c55f0fdff3aaa99 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=4dbe268d2e7ad4f1172a174a3c55f0fdff3aaa99 commit 4dbe268d2e7ad4f1172a174a3c55f0fdff3aaa99 Author: Lexi Winter AuthorDate: 2025-05-16 15:29:51 +0000 Commit: Lexi Winter CommitDate: 2025-05-16 16:25:14 +0000 traceroute tests: fix the test when SCTP is supported The SCTP test assumes a default system configuration where SCTP is not supported, so the probe packet returns an ICMP error which is displayed as a !P response. If SCTP is supported, then something else is returned instead (depending on exactly what probe we sent, but not an ICMP error) and the test fails. Since we already check the correct probes are sent using tcpdump, remove the match for the second hop entirely. Reported by: Jenkins Reviewed by: des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50336 --- usr.sbin/traceroute/tests/traceroute_test.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/usr.sbin/traceroute/tests/traceroute_test.sh b/usr.sbin/traceroute/tests/traceroute_test.sh index 6243db14bc8e..268e0bd58b5b 100755 --- a/usr.sbin/traceroute/tests/traceroute_test.sh +++ b/usr.sbin/traceroute/tests/traceroute_test.sh @@ -293,8 +293,6 @@ ipv4_sctp_body() atf_check -s exit:0 \ -e match:"^traceroute to ${LINK_TRDST_TRDST}" \ -o match:"^ 1 ${LINK_TRSRC_TRRTR}" \ - -o match:"^ 2 ${LINK_TRDST_TRDST} .* !P" \ - -o not-match:"^ 3" \ jexec trsrc traceroute $TR_FLAGS -Psctp ${LINK_TRDST_TRDST} stop_tcpdump @@ -310,8 +308,6 @@ ipv4_sctp_body() atf_check -s exit:0 \ -e match:"^traceroute to ${LINK_TRDST_TRDST}" \ -o match:"^ 1 ${LINK_TRSRC_TRRTR}" \ - -o match:"^ 2 ${LINK_TRDST_TRDST} .* !P" \ - -o not-match:"^ 3" \ jexec trsrc traceroute $TR_FLAGS -Psctp ${LINK_TRDST_TRDST} 128 stop_tcpdump @@ -327,8 +323,6 @@ ipv4_sctp_body() atf_check -s exit:0 \ -e match:"^traceroute to ${LINK_TRDST_TRDST}" \ -o match:"^ 1 ${LINK_TRSRC_TRRTR}" \ - -o match:"^ 2 ${LINK_TRDST_TRDST} .* !P" \ - -o not-match:"^ 3" \ jexec trsrc traceroute $TR_FLAGS -Psctp -e -p 40000 ${LINK_TRDST_TRDST} stop_tcpdump From nobody Fri May 16 19:38:42 2025 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 4Zzcp75HWBz5wDM3 for ; Fri, 16 May 2025 19:38:55 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzcp65HmYz42CS for ; Fri, 16 May 2025 19:38:54 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Authentication-Results: mx1.freebsd.org; dkim=none ("invalid DKIM record") header.d=kev009.com header.s=google header.b=MKU0gGpa; spf=pass (mx1.freebsd.org: domain of kevin.bowling@kev009.com designates 2607:f8b0:4864:20::72f as permitted sender) smtp.mailfrom=kevin.bowling@kev009.com; dmarc=none Received: by mail-qk1-x72f.google.com with SMTP id af79cd13be357-7caeeef95d4so252350385a.2 for ; Fri, 16 May 2025 12:38:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kev009.com; s=google; t=1747424334; x=1748029134; darn=freebsd.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=1uASX6b/+GNqFcnGARIyNRllVf1emQZnPmNXIj+GdBc=; b=MKU0gGpatt8YCm3FVkQCL1A3sitMjaIqWgti0ZWykUsCRJP7QDmBHiXiKWi2ccExvR UVc9YxWy9Qt5f6iHvF5J/xkmQBA5IOalapNpSf1gffkq5dHPGSkQ+v5u7PxqawjfmokZ b1AG1CS/qoCgF/PNpGHNtXW0XD4wrvQRZBs+o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747424334; x=1748029134; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1uASX6b/+GNqFcnGARIyNRllVf1emQZnPmNXIj+GdBc=; b=QYUm4XOIsKbyl6TxL4lVcAHPWfSU/CWz4sbbhAfhfk+1pgexUQkdJjab/WnL5oLL5o i/dr5tfG1te0+jifuko03Eq9334Y94D7unR2VetUxrdn0RjWc7sAM7hBCogTGyvlJHJD sGk5XM3nyQ/ulYU6VL1ATPyAiw7yZFk4R/NBdbppxSrNnUAhsB2k7too100cS8M4jFyQ bwejIOWpYGkbl9NUJBkfpWHHTJ3cV+mnFsY3osRjiBxL5IOLZxgpV/UPXfTd5JQRRdtZ mFXbjZWXvd23sA3jwZPrWpVLP77FPaIYznBfpsKBsDV9zpImJ3yv8Wf7CGC5xZDhScTP jRdA== X-Forwarded-Encrypted: i=1; AJvYcCV7IV/IrJ7EugylPF/brqAbXqoza+4VbsIJTxkUl6r+mKMUXYukLK1nEgDa5IsJ6e4THKtN3sS3luP9m67fQpn/Kb6T@freebsd.org X-Gm-Message-State: AOJu0YwL/L8HGQ/5SlkBapH8uYCCkh8DdG4KwFqcre/K+I5QWEZL0LCZ jBf1dq2MkOIUEVWkp6UszEYQp+ghqMbXsRTzd4X0Ls48dsBGBtYp/YOgtNQsq+wZvcVJlBWcn99 jAh6e9JztdG9Sol1ybKH1z1vAHssmDbHtPxaA/6K+MOcAKJ8WgFg2vDX4 X-Gm-Gg: ASbGncsL8owNLnUNgAYy0yyPoOcHO+q1GYnCCzsKcw4x3kTsQV4xcVMaDxy22bvevho 6Oo73P4XVsc8OEjMZQMk9LKAOodemg0QZMl5hYZSh2tibmivjoRdpEtZ/O3sWEUcRA/eVdOP97w BUlmbwPuY5304ivgzBYXqieyVQrzSM+wYhGQ== X-Google-Smtp-Source: AGHT+IFWjnWC14aVzP18oIbOqmDyL1W62Fxvu8h99weYMc6YwIYif2b9Zb/mTK1jaDULhRyvbSHlGzBD92fYoz1uOZ4= X-Received: by 2002:a05:622a:1b21:b0:476:b783:c94d with SMTP id d75a77b69052e-494ae42cd7fmr76911661cf.35.1747424333907; Fri, 16 May 2025 12:38:53 -0700 (PDT) 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> <20250515185812.AE47677@slippy.cwsent.com> In-Reply-To: From: Kevin Bowling Date: Fri, 16 May 2025 12:38:42 -0700 X-Gm-Features: AX0GCFt0KerTTjA31dNiWMlln-1suVf8kaVvfYlmFUuIPyGkeovmOI0NAXuDwn0 Message-ID: Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false To: Kevin Bowling , Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 4Zzcp65HmYz42CS X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.41 / 15.00]; NEURAL_HAM_SHORT(-0.93)[-0.929]; NEURAL_HAM_MEDIUM(-0.60)[-0.599]; NEURAL_HAM_LONG(-0.58)[-0.583]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[kev009.com]; RCVD_TLS_LAST(0.00)[]; FROM_HAS_DN(0.00)[]; R_DKIM_PERMFAIL(0.00)[kev009.com:s=google]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; DKIM_TRACE(0.00)[kev009.com:~]; RCVD_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::72f:from]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MISSING_XM_UA(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; RCPT_COUNT_FIVE(0.00)[5] On Fri, May 16, 2025 at 6:05=E2=80=AFAM Lexi Winter wrote= : > > Kevin Bowling: > > On Fri, May 16, 2025 at 5:17=E2=80=AFAM Lexi Winter w= rote: > > > is "epair0a" also in a bridge? if so, this is intentional. > > > Hmm, can you clarify what you mean? I think that is a common > > configuration, it is mentioned in epair(4). > > basically there are two supported configurations: > > - epair, with an IP address, not in a bridge (e.g., routed access > configuration) > - epair, in a bridge, without an IP address (e.g., layer 2 access > configuration) > > both of these configurations are fine and are still supported. > > there is also a third, secret configuration: > > - epair, with an IP address, in a bridge. > > this third configuration has never worked properly for various reasons, > so the change in b61850c4e6f6 is to prevent people from doing it and > ending up with a subtly broken network. the reason it's a sysctl is > that some people are currently using this configuration and may not be > able to migrate immediately. this is *not* meant to be a long-term > solution and i intend to remove it prior to 16.0-RELEASE. > > the correct fix here (rather than enabling the sysctl) is to configure > the IP addresses on the bridge instead of the epair, which is now > documented in bridge(4). > > (this applies to all types of network interface that can live in > bridges, not just epairs.) Thank you. This explanation was very clear. > there's also a thread on current@ about this[0] with some additional > discussion; i didn't notice when i replied here since i read my personal > email first. > > [0] https://lists.freebsd.org/archives/freebsd-current/2025-May/007602.ht= ml From nobody Fri May 16 19:39:12 2025 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 4ZzcpT10qQz5wD99; Fri, 16 May 2025 19:39:13 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzcpS751Gz42Zs; Fri, 16 May 2025 19:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747424353; 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=WYqdw8+RsYc+lzIQl/Nm4SFOrLM6nEg97tMJL/zfmoo=; b=i/9HTZEjwOoTLjngHQeERqxihmcfz0FJV7SxLGifof5WLMdcOFmmb89WJbLv9rgbapEfUJ Lv6/INdOFmDrpkHzM5Q2ODYGlYWXtUyuwicFxT7AZYECO0OTiwv3dEWO/oLMfdxSUhUmyp bv0Si+tp+WJVhRq5o+aHuXqZe6JJp8USFlI4TvvOcjKNaYe/PXHD0BtYYis9xskqP6K/EV ENC7DXWoC7z9tUVH2hA3vdkQSdJY0sDec3j3TAf+SPQDSWkuGrkmiHdDxv8bmRELHnabd0 MVu/zJIzoWMUo4axKzGhTMptbvsBRyGqpOuogAnTh9o/pQ+LkUGBaqTT1Gqjxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747424353; 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=WYqdw8+RsYc+lzIQl/Nm4SFOrLM6nEg97tMJL/zfmoo=; b=bLEqIzzxWJG213hxgbjTU9QAsBUf7QbeHLpDVn37wW9wbap0miL0IK1XZ2lIorUBkr6Ky0 tFzEdiT1OBaetAIY4ixQcIudZ3Ht8ZrRPZbbQ4BZYuBNBEJwGUMYGsP/0hg8HwL8ZM53rd azFzDyezH4ef6kjVQQQdWHO7DLtWk9cT/rtbWPGrVLMinyeavLl7/zSuOHHDg3IsDMOxmI SBa9/2OMbDxTsanNU1ztzegHsG2hXmis6q2khzxGcCd2wg6UiqUyNZ1oCoP+m5mXzFz9ma hNpb4m6/kwgPTv8RnfpcpSNKH2SHgVco/UMQMRhR2u/lenQYUd9Gya/ONhpYzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747424353; a=rsa-sha256; cv=none; b=Lllcnmc0ni+IWkLOmcwadU9V3cMcz3YU+nnexuH3pnB3pATgPBOcxA1ftWDoZp2NU/lyyI S1LaYWgPggcljozRakTsVz1qHjl+JyE7TTYQo3I3IBvbb6m8tG65CfMWQRNfjHwo5Pp4Am WyJH0wNK8CgmgMjnAYmdDssc5CJ4hPZdQA7fvzofm6RZCmZVflUpIpjFoSk3ZyssH25cIK 1E3D96xKmBW5If6IUqyWL36nYeslUtkxWl1X9w2UWXInZVaMAiMuaEf7GdDDHApUAjoFXM YvdU/XZKG/OFA9RI8/a4xIBMGnQ9MZ7y1MvMDTU9Z4cM6iHjkAoefX8DSLpv3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzcpS6NGGz21V; Fri, 16 May 2025 19:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GJdC4I041059; Fri, 16 May 2025 19:39:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GJdCnX041056; Fri, 16 May 2025 19:39:12 GMT (envelope-from git) Date: Fri, 16 May 2025 19:39:12 GMT Message-Id: <202505161939.54GJdCnX041056@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: e647a222a1a7 - main - nfs_clrpcops.c: Fix handling of a CreateLayGet reply 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e647a222a1a74bd3b2bbdd7903fb30e4e30b6b09 Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=e647a222a1a74bd3b2bbdd7903fb30e4e30b6b09 commit e647a222a1a74bd3b2bbdd7903fb30e4e30b6b09 Author: Rick Macklem AuthorDate: 2025-05-16 19:36:39 +0000 Commit: Rick Macklem CommitDate: 2025-05-16 19:36:39 +0000 nfs_clrpcops.c: Fix handling of a CreateLayGet reply Without this patch, the CreateLayGet RPC did not handle a NFSv4.1/4.2 reply for a pNFS server that also issued delegations. This patch fixes the problem. Detected at the recent NFSv4 Bakeathon testing event. This bug would only affect the rare case where the FreeBSD client is mounted to a pNFS server that issues delegations, where the "pnfs" mount option is specified. MFC after: 2 weeks --- sys/fs/nfsclient/nfs_clrpcops.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/fs/nfsclient/nfs_clrpcops.c b/sys/fs/nfsclient/nfs_clrpcops.c index c1f94a65e506..4ff56f75123c 100644 --- a/sys/fs/nfsclient/nfs_clrpcops.c +++ b/sys/fs/nfsclient/nfs_clrpcops.c @@ -8590,6 +8590,13 @@ nfsrpc_createlayout(vnode_t dvp, char *name, int namelen, struct vattr *vap, &ret, &acesize, p); if (error != 0) goto nfsmout; + } else if (deleg == NFSV4OPEN_DELEGATENONEEXT && + NFSHASNFSV4N(nmp)) { + NFSM_DISSECT(tl, uint32_t *, NFSX_UNSIGNED); + deleg = fxdr_unsigned(uint32_t, *tl); + if (deleg == NFSV4OPEN_CONTENTION || + deleg == NFSV4OPEN_RESOURCE) + NFSM_DISSECT(tl, uint32_t *, NFSX_UNSIGNED); } else if (deleg != NFSV4OPEN_DELEGATENONE) { error = NFSERR_BADXDR; goto nfsmout; From nobody Fri May 16 20:33:11 2025 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 4Zzf0l2wXcz5wHjk; Fri, 16 May 2025 20:33:11 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzf0l2CC4z3DGc; Fri, 16 May 2025 20:33:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747427591; 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=Ue/LLd96K/EwY19++diYhux6cEnrtnukrIWSUmSMNGo=; b=KdebsH1RXe0yQqKPJ7B6JMwREiEvvJSurdXwALy5qSB8pBBH4VsVN222V2ke9oiS6gv9kZ Pv8EDCXMNhNu9zlyOjB8ZcuCazuXAD3KnKLGWB98CNhdZds9RPO9vLR5Wkyi5k/1N9br78 W85Sg8ZqW9URnMVd6MSeOHn6qqrC+vsZ/ax1s43QoSdFuULxWxjJroJFoJxhnFBnOx+bl+ mxESr50E4vto+6UfLvoowCjmIb79e7vng78KTFvDDFzMdmsPOAvYFn+uElBqaKZOscgcl9 sjt1jmEvQeqT7R5YADNMFJRu8XKQX08l6KXRBOhpuBwH2B0ydbKaNY+eFisMKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747427591; 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=Ue/LLd96K/EwY19++diYhux6cEnrtnukrIWSUmSMNGo=; b=tUCjH3uxbbA0OF3WVGTnz8ETsl+H7qhAcDUH4+r2lYa+ZWEHa2/T08Xr1Obr8/hHtRPK1A 95LDhx3ZfSNNrZujnjr+yZcXEGq84BbQKvKaXaz072pQU1+NPXOmKtHXZlv4+l8bpb6+2U 8BFflQXjxslGBJTf5pFpcDx4iorh9pxaCjXW7hLdUDFYznk2zvSJbLDQTAJzSLacVbQ8to oqz0VRxBD8rjm8TG44t9u6+a4Fg9qbHOSb/vW2uf1wzMIwN5vEdAn+i82sZSbmLcp3msJk LUdP6f8EbMUKQlALo6FdPVb03uz6vQohH6yz5Rx/PrPAQYg5HHoB5tMwonqyLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747427591; a=rsa-sha256; cv=none; b=EBwwJ9Gx2s4uiXv03Spm89A9kRpXNOCYnghYc9o4+Y8xBU+EGLEGg/8N8yYiIyoJ6S+BZE SL/D68ck6wwdwra320I/Kme/L07L+vujFm9I+B0BrdJnTqPiRCEGXGM9zb7CANx4nIJ7oP iZ+kxNaVv64MIFBpHENgT/OE0tv71qebXfC0uA7Xugp7bge01SzPF1vHxdeJxi1Q4MEnUM ASH/ySOmbnTBxNs7ehj6af+audGOG92nqCq9emzkNASQ6/dGTwDukI59e4ZQP0fJRfFlrK eR28RamA25nBddg/hiN0xGZU6KGqQzJcN3tOs7x7X1CG0NBrpI9e4TYy2X6D4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zzf0l1WK6z3XK; Fri, 16 May 2025 20:33:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GKXBLi051783; Fri, 16 May 2025 20:33:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GKXB6i051780; Fri, 16 May 2025 20:33:11 GMT (envelope-from git) Date: Fri, 16 May 2025 20:33:11 GMT Message-Id: <202505162033.54GKXB6i051780@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 95c414dd27c2 - main - ng_sample: fix style nits 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 95c414dd27c26285cdd6ed4288832b3db0ea6628 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=95c414dd27c26285cdd6ed4288832b3db0ea6628 commit 95c414dd27c26285cdd6ed4288832b3db0ea6628 Author: Seyed Pouria Mousavizadeh Tehrani AuthorDate: 2025-05-16 16:19:56 +0000 Commit: Lexi Winter CommitDate: 2025-05-16 20:29:47 +0000 ng_sample: fix style nits MFC after: 3 days Reviewed by: ivy, kp, des Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D50343 --- sys/netgraph/ng_sample.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/ng_sample.c b/sys/netgraph/ng_sample.c index 6647247fc634..5cbd9bbab41a 100644 --- a/sys/netgraph/ng_sample.c +++ b/sys/netgraph/ng_sample.c @@ -271,7 +271,7 @@ ng_xxx_rcvmsg(node_p node, item_p item, hook_p lasthook) struct ngxxxstat *stats; NG_MKRESPONSE(resp, msg, sizeof(*stats), M_NOWAIT); - if (!resp) { + if (resp == NULL) { error = ENOMEM; break; } @@ -320,7 +320,7 @@ ng_xxx_rcvmsg(node_p node, item_p item, hook_p lasthook) * in the connect() method. */ static int -ng_xxx_rcvdata(hook_p hook, item_p item ) +ng_xxx_rcvdata(hook_p hook, item_p item) { const xxx_p xxxp = NG_NODE_PRIVATE(NG_HOOK_NODE(hook)); int chan = -2; From nobody Fri May 16 22:20:09 2025 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 4ZzhN96Q3Sz5wQf6; Fri, 16 May 2025 22:20:09 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzhN95d9Xz3Sgw; Fri, 16 May 2025 22:20:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747434009; 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=Usbs1TiBX4klk9oM6vEFlVifLbD8VwSt2RLFS3EJo9U=; b=s1STlEoYHx9XnMPNjfD4oO5MyRegOZk+NDqZg6iSLxv/wRYzzVDXRxoKX1WCVefFfkDOC6 N9dEyvvikdpW9W8H6L+o/wiK49aUdPP7Cd5O5tQdaxrP5rOveHM1pGboA+9srPTflbZ4SQ leBpijfo5RJXqCCmXsI/IXT8r5jwhFJtN8lFmALGwIPqiw0IlXcLqoboTna6Ms4EwZ9QG0 dudng/aG8yPzSiloWE0rdbgnjLuwuYOrEw9FC53h35ijaq5phlkG0wt+0aZhHNIq9sjrFJ /UJa8xG7bGWyQ8A23w/mHywBm1b1dSHNwqUcv+75/UaSxGuz7OutcFE8RkZ3Yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747434009; 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=Usbs1TiBX4klk9oM6vEFlVifLbD8VwSt2RLFS3EJo9U=; b=aDDVtbjKOxVGESYTjAmvcshN77qW1OZoD1DS/VnnqWt9Y44LbTr9rDoOoctn4eLXfNr78C T9N+dGJG/153VDd34+lJQZwMruKV8rdGCmkNN76qRrgcASkEa6ImrjVN147/hX8+t5qzeh fFUNOcSW7T/VmjbjPSaRY90VEX5UA0wqWoKR3vC//4wqB6iSLPjGUxm9nNWA9P/xZl8yC+ LPANmB7iDrPs+lGHbMGH73gC20rxQzikht1EHeJWliLJxwbebFuMx4ICIzfUR58xF6xYju Qs1TKgtdPhSUc+gNpOHHGlS8UmcEn5yvrcIuu+PrtotgP+2+8oMTwjb505JZmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747434009; a=rsa-sha256; cv=none; b=LjUEBS8zOqJPa2LMGpXejl7lrPbYvQJOW3q8OxQ7SYhOVfgNOK92k2WSo7TAVIXd1sDRTe O8mXxjmmDx+II9/KZ3agK4dL5EBnDbxJthQnOl1KfPNHU2GNy7DHmYKf2SZtSJe3P2xMp3 lhdAsFvty/Ulj/W9+xuoxaJH+qrbNqsetofF4hjacoXlRF3iD/41dbA2Qo8mshIK9YwthP mJWUHJr3Bs0jOuWUV/h3HlYCETQgyDVLC1psX6qbLNkplyF33whoWgEQtzBGSPrD1ICk1q ItdrZbMWvNo1sPaHIbkt6MYr0eb7N1qm/TfcA38/ia61OS1PDTTPsoo0foxk9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzhN94mXlz6R3; Fri, 16 May 2025 22:20:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GMK9gl045301; Fri, 16 May 2025 22:20:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GMK990045296; Fri, 16 May 2025 22:20:09 GMT (envelope-from git) Date: Fri, 16 May 2025 22:20:09 GMT Message-Id: <202505162220.54GMK990045296@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 496b3c3a1ce8 - main - grantbylabel_syscall check p_textvp != NULL 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 496b3c3a1ce86b72f56bec993b76bdd64723ee46 Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=496b3c3a1ce86b72f56bec993b76bdd64723ee46 commit 496b3c3a1ce86b72f56bec993b76bdd64723ee46 Author: Simon J. Gerraty AuthorDate: 2025-05-16 22:19:06 +0000 Commit: Simon J. Gerraty CommitDate: 2025-05-16 22:19:06 +0000 grantbylabel_syscall check p_textvp != NULL kernel process will not have valid p_textvp Reviewed by: stevek Differential Revision: https://reviews.freebsd.org/D50368 --- sys/security/mac_grantbylabel/mac_grantbylabel.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/security/mac_grantbylabel/mac_grantbylabel.c b/sys/security/mac_grantbylabel/mac_grantbylabel.c index af080e8e34e0..c40885773222 100644 --- a/sys/security/mac_grantbylabel/mac_grantbylabel.c +++ b/sys/security/mac_grantbylabel/mac_grantbylabel.c @@ -409,6 +409,10 @@ cleanup_file: proc = pfind(gbl_args.u.pid); if (proc == NULL) return (EINVAL); + else if (proc->p_textvp == NULL) { + PROC_UNLOCK(proc); + return (EINVAL); + } proc_locked = 1; } gbl_args.gbl = (SLOT(proc->p_textvp->v_label) | From nobody Fri May 16 23:05:30 2025 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 4ZzjNV5cMWz5wTQp; Fri, 16 May 2025 23:05:30 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzjNV4zK4z3Y05; Fri, 16 May 2025 23:05:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747436730; 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=D3jdIsteRTn9gtCI36uqzLu6JhyTH/Zkk1cbHpG1+mI=; b=ShEn20E6z434q61K5RnRMiKe/nsxwLcQ2w8+qGjp6HwuflQMQ+Ox4GOS1aWTpXq4jRRNSh HauK2slqQDr8WrCrTFBBVMuAWGbywiOLLcGpLHWFnilKtG7NE1VtnnTpK0sdqO4tUM9Iga gx6kPyyqxzLt7T0hCf5AyWnEaJ8e7qRHhN0ofcuOfQi17Sbm5JkRUALdcSC02ww3Pu/j6R lkH5pfUJBV5mnxAZIjjcX/p7bSpZlhLz9OsmMbCB7D3LEToaVq4dDAM1ykAvNwkG1DVSA3 +Q29wNKUKFu+HUuekcwEKTxH1w8/lSP/wMR+db5nzLc9IZGD68HP1RIzVJmqRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747436730; 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=D3jdIsteRTn9gtCI36uqzLu6JhyTH/Zkk1cbHpG1+mI=; b=jxe3Xzom7xT7/z55D17nNBxbap9lCCX7kiNmvfxukBWOznnvCkweHDeML8RQmxnD2bCB+i 44kPV6BAVcva7e5n8d0ExbKBfzkcFgi2ciN48nNjhpLd7ARvGtpET+y62xhe4EWdPlZffe fojyPmEokH5fB4CO7fIg9qPniQF/DeUNY1CSmSq4EgOdGvLcSIgowtOlFo1CpkOu+vxYCA byGIwXd4eQYorEw+TAyQQqTxtw2cyXcnupP2VyO5twx5S5ElbCoOhY9y2L+3oREYirfR9F 0wy3IlHFcVgw9biiH5k3iakOAdT3CwYe2wUbAQLfcj5TaYOGmqQHicBg4IuIow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747436730; a=rsa-sha256; cv=none; b=WtKzPeWJAlC2N3PDgFI5BIG5q15gfooK+qir42HFbcvWs6xRejUfbvb8jvsWBWULivqnG4 /iKmKlchnhd90y5rC+nmGvktXdfMcV/FXtDlPINyJeq60u9+9o4CqVvcl65R/2IYyBaZ2j 7Pv661SGjvyTtVvaT7rbGwf/Tl3iHyexhdbAgrb+Ve3y5OW6Q4glNkLA85oDMlRxpzBrAy mZUm4iR/5D+E/YCxBQzDe69jlkpZj0MCtEwL+mUW+yodcdxAnBLZa73NrKxUKaEWOlH6Lj C9cZI2nLUcmlPXUNVG3hx1bctTcEZrkbRcbjRxzE3XJg/Wh47tUjlgsdgfDatg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzjNV4ZG4z6fb; Fri, 16 May 2025 23:05:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54GN5UCG034677; Fri, 16 May 2025 23:05:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54GN5U9D034674; Fri, 16 May 2025 23:05:30 GMT (envelope-from git) Date: Fri, 16 May 2025 23:05:30 GMT Message-Id: <202505162305.54GN5U9D034674@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: c1d9b2c9b03c - main - qat.4: Cleanup 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1d9b2c9b03cade19cb4f94d3e29fba7179ac11a Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=c1d9b2c9b03cade19cb4f94d3e29fba7179ac11a commit c1d9b2c9b03cade19cb4f94d3e29fba7179ac11a Author: Alexander Ziaee AuthorDate: 2025-05-16 17:19:00 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-16 23:03:24 +0000 qat.4: Cleanup + copyright symbols do not belong in Nd's (apropos results) + move hardware to HARDWARE for inclusion in the hw release notes + improve sysctls + lines which say nothing removed + links moved to see also + spacing and markup corrections MFC after: 3 days Reviewed by: markj, mhorne Differential Revision: https://reviews.freebsd.org/D50381 --- share/man/man4/qat.4 | 181 +++++++++++++++++++++++++-------------------------- 1 file changed, 89 insertions(+), 92 deletions(-) diff --git a/share/man/man4/qat.4 b/share/man/man4/qat.4 index 3d8c0cd32664..e7907c7c6331 100644 --- a/share/man/man4/qat.4 +++ b/share/man/man4/qat.4 @@ -1,11 +1,11 @@ .\" SPDX-License-Identifier: BSD-3-Clause .\" Copyright(c) 2007-2022 Intel Corporation -.Dd May 4, 2023 +.Dd May 16, 2025 .Dt QAT 4 .Os .Sh NAME .Nm qat -.Nd Intel (R) QuickAssist Technology (QAT) driver +.Nd Intel QuickAssist Technology driver .Sh SYNOPSIS To load the driver call: .Pp @@ -39,9 +39,20 @@ The driver supports cryptography and compression acceleration of the Intel (R) QuickAssist Technology (QAT) devices. .Pp +A complete API for offloading these operations is exposed in the kernel +and may be used by any other entity directly. +In addition to exposing a complete kernel API for +offloading cryptography and compression operations, the +.Nm +driver also integrates with +.Xr crypto 4 , +allowing offloading supported operations to Intel QuickAssist Technology +devices. +.Sh HARDWARE The .Nm -driver is intended for platforms that contain: +driver supports the following Intel QuickAssist Technology Engines: +.Pp .Bl -bullet -compact .It Intel (R) C62x Chipset @@ -57,78 +68,45 @@ Intel (R) Atom P5300 processor product family .It Intel (R) QAT 4xxx Series .El -.Pp -The -.Nm -driver supports cryptography and compression acceleration. -A complete API for offloading these operations is exposed in the kernel and may -be used by any other entity directly. -For details of usage and supported operations and algorithms refer to the -following documentation available from Intel Download Center -.Lk https://downloadcenter.intel.com : -.Bl -bullet -compact -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology API Programmer's Guide -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Cryptographic API Reference Manual -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Data Compression API Reference Manual -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Performance Optimization Guide -.Re -.El -.Pp -In addition to exposing complete kernel API for offloading cryptography and -compression operations, the -.Nm -driver also integrates with -.Xr crypto 4 , -allowing offloading supported cryptography operations to Intel (R) QuickAssist -Technology (QAT) devices. -For details of usage and supported operations and algorithms refer to the -documentation mentioned above and -.Sx SEE ALSO -section. .Sh SYSCTL_VARIABLES -Following variables may be used to reconfigure the QAT device.\& -For configuration persistence those variables may be set before loading the driver, either via +The following +.Xr sysctl 8 +variables may be used to reconfigure the +.Nm +device. +For configuration persistence those variables may be set before loading +the driver, either via .Xr kenv 1 or .Xr loader.conf 5 . -The device specific configuration options are prefixed with -.Va dev.qat.X\&. -where X is the device number. -The specific device needs to be in "down" state before changing the configuration. +.Pp +The specific device needs to be in the "down" state +before changing the configuration. .Bl -tag -width indent -.It Va state -Show current state of the device. Override the device state. Possible values: "down", "up". - -NOTE: If the symmetric services are used for device the qat_ocf driver needs to be disabled prior the device -reconfiguration. -Following variable may be used to enable/disable the QAT cryptographic framework connectivity -.Va dev.qat_ocf.0.enable\&. +.It Va dev.qat.X.state +Show or set current state of the device. +Possible values: "down", "up". +.Pp +NOTE: If the symmetric services are used for device the +.Sy qat_ocf +driver needs to be disabled prior the device reconfiguration. +.It Va dev.qat_ocf.0.enable +Enable/disable the QAT cryptographic framework connectivity. Enabled by default. -.It Va cfg_services -Override the device services enabled: symmetric, asymmetric, data compression. +.It Va dev.qat.X.cfg_services +Override the device services enabled, may be one of: +symmetric, asymmetric, data compression. Possible values: "sym", "asym", "dc", "sym;dc", "asym;dc", "sym;asym". -Default services configured are "sym;asym" for even and "dc" for odd devices. -.It Va cfg_mode -Override the device mode configuration for kernel space and user space instances. +Default services configured +are "sym;asym" for even and "dc" for odd devices. +.It Va dev.qat.X.cfg_mode +Override the device mode configuration +for kernel space and user space instances. Possible values: "ks", "us", "ks;us". Default value "ks;us". -.It Va num_user_processes -Override the number of uio user space processes that can connect to the QAT device. +.It Va dev.qat.X.num_user_processes +Override the number of uio user space processes +that can connect to the QAT device. Default: 2 .El .Pp @@ -136,48 +114,67 @@ The following .Xr sysctl 8 variables are read-only: .Bl -tag -width indent -.It Va frequency +.It Va dev.qat.X.frequency QAT device frequency value. -.It Va mmp_version +.It Va dev.qat.X.mmp_version QAT MMP Library revision number. -.It Va hw_version +.It Va dev.qat.X.hw_version QAT hardware revision number. -.It Va fw_version +.It Va dev.qat.X.fw_version QAT firmware revision number. -.It Va dev_cfg +.It Va dev.qat.X.dev_cfg Summary of device specific configuration. -.It Va heartbeat -QAT device heartbeat status. Value '1' indicates that the device is operational. -Value '0' means that the device is not responsive. Device requires restart. -.It Va heartbeat_failed +.It Va dev.qat.X.heartbeat +QAT device heartbeat status. +Value '1' indicates that the device is operational. +Value '0' means that the device is not responsive. +Device requires restart. +.It Va dev.qat.X.heartbeat_failed Number of QAT heartbeat failures received. -.It Va heartbeat_sent +.It Va dev.qat.X.heartbeat_sent Number of QAT heartbeat requests sent. .El - -.Sh COMPATIBILITY -The -.Nm -driver replaced previous implementation introduced in -.Fx 13.0 . -Current version, in addition to -.Xr crypto 4 -integration, supports also data compression and exposes a complete API for -offloading data compression and cryptography operations. .Sh SEE ALSO .Xr crypto 4 , .Xr ipsec 4 , .Xr pci 4 , .Xr crypto 7 , .Xr crypto 9 +.Pp +For details of usage and supported operations and algorithms refer to +the following documentation available from Intel Download Center +.Lk https://downloadcenter.intel.com : +.Pp +.Bl -bullet -compact +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology API Programmer's Guide +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Cryptographic API Reference Manual +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Data Compression API Reference Manual +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Performance Optimization Guide +.Re +.El .Sh HISTORY -This +A .Nm -driver was introduced in -.Fx 14.0 . -.Fx 13.0 included a different version of -.Nm -driver. +driver appeared in +.Fx 13.0 . +It was superseded in +.Fx 14.0 +by the upstream driver. .Sh AUTHORS The .Nm From nobody Sat May 17 01:47:16 2025 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 4Zzmz839kMz5wh64; Sat, 17 May 2025 01:47:16 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzmz82KZPz3H0H; Sat, 17 May 2025 01:47:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446436; 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=8mFzMo6ioGZjxVda5XKug40gP/mX8sFBf+g3Lq4bXmE=; b=aQRcI1dHITrdDK581ZBDWH9Z5gjxkteY0ibGozYjEBXMyUCbb/CTMZPOIZRxQ0a/4jlg5I MVVCcSeJ/nuNu8vmUAeKij9yu1Z0nrn1C12exd8F5FpS1NFIpEOrP8XMU6NbMGcEcQSOnx Issp/8C699q5tTyreaWOZhnRcRD6EbQAjvw/zBXvbwJdBb3NhjmIkBOAuA32XmE3DM8KSI fQoVJddqQVWdbjycg1HoW+bCjuEfxpIvacldE+tAKQY6BWWPSUOEsa22zv7sR0NPEWOpv2 En0SbBuMVbN8PoOBsuRvIKr4iMCn0EH2i41vQlq5bgDEpM4mHMOIAwdK70/caw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446436; 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=8mFzMo6ioGZjxVda5XKug40gP/mX8sFBf+g3Lq4bXmE=; b=wzAlPUZ1/O0/dVDppDIg3BSEHWaAN4IE4T3PSaHNLfE3v8I5Wi+eMI3HA4mqqt99QD1FNL Qu5lAp+7acstlb060280y5jr4ndfco9YczfpqrjgHumtMle2xTFPhSrR47pZawOrDDvrZH JRbWq95nllWwS2PX24VBldAju0IbW/D1OFx+2VneEBoGR8yBs+PgQCVghzRtF7/F9+qdGA qor7a+cbuk0uiqrziNysyaPsaqBdJ/8rnvDrMCvl8Qw3p0hUBAZiHPKrRdlCLvrsVA8YqF 3bdlBkYxfWMo/pFI+dc9zWI/75+VgxZUehEN+AQpK6UWhlJ1Ksjp8JCiUfZ54A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446436; a=rsa-sha256; cv=none; b=AE7D5QkJsVITbHbg/fcmMfAj4Woa+8IpCh7H7Hd+cxurJOnHj+9teLxQHPBINpsCJRYHDL UDAUxDKLmeQsf2y6p2wvh0bp1W+gEydRAnirqJNQJgbcA9vCStjJOTwDcJ+zuhq9J1wESt Hkpzm3Vyu5wlFxgcZA2EXyxTHlLJ95JboQZ4Noc2KHA7bph/WeFjg1pWlqB9XtUIkMk3Z3 1LSm5xN5fN//IrzBT7Bcmb+jH8kBUQqshkCfye+XVgtx4dcV0iuzyb3D+SLZnRHv5032dC 8Ud2yvVfpNn22jhOnTQrCnzp6/y4VW44ZKGqkd1SgC0crHzVQN/MgH3uF94B1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zzmz81jVQzCNM; Sat, 17 May 2025 01:47:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lGtt034240; Sat, 17 May 2025 01:47:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lG4b034237; Sat, 17 May 2025 01:47:16 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:16 GMT Message-Id: <202505170147.54H1lG4b034237@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 1343a5b616ec - stable/14 - arswitch.4: Improve title and add HARDWARE 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1343a5b616ec4e11047c5024bb844e7275f84ddd Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=1343a5b616ec4e11047c5024bb844e7275f84ddd commit 1343a5b616ec4e11047c5024bb844e7275f84ddd Author: Alexander Ziaee AuthorDate: 2025-05-12 01:37:17 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:37:18 +0000 arswitch.4: Improve title and add HARDWARE For visibility in apropos and inclusion in the hardware release notes. MFC after: 3 days Reviewed by: adrian (previous), mhorne Approved by: mhorne (cherry picked from commit 9692d5e15e9bd7e628b06d655522477ce8c5b6fe) --- share/man/man4/arswitch.4 | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/share/man/man4/arswitch.4 b/share/man/man4/arswitch.4 index 3ec7316ae6e7..5bcd6c6810ee 100644 --- a/share/man/man4/arswitch.4 +++ b/share/man/man4/arswitch.4 @@ -22,12 +22,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 8, 2023 +.Dd May 11, 2025 .Dt ARSWITCH 4 .Os .Sh NAME .Nm arswitch -.Nd driver for Atheros Fast Ethernet switch +.Nd Atheros AR8000 series Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -35,18 +35,8 @@ .Sh DESCRIPTION The .Nm -device driver provides a management interface to multiple Atheros -fast ethernet switch chips: -.Bl -tag -compact -width "AR8216" -.It AR8216 -Fast Ethernet Switch -.It AR8226 -.It AR8316 -Six-port Gigabit Ethernet Switch -.It AR8327 -Seven-port Gigabit Ethernet Switch -.El -.Pp +driver provides a management interface to Atheros AR8000 series Ethernet +switch controllers. The driver uses an .Xr mdio 4 or @@ -70,6 +60,23 @@ and are mutually exclusive. .Pp Setting the switch MAC address is not supported. +.Sh HARDWARE +The +.Nm +driver supports the following Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Atheros AR8327 Seven-port Gigabit Ethernet Switch +.It +Atheros AR8316 Six-port Gigabit Ethernet Switch +.It +Atheros AR8236 Six-port Fast Ethernet Switch +.It +Atheros AR8226 Six-port Fast Ethernet Switch +.It +Atheros AR8216 Six-port Fast Ethernet Switch +.El .Sh SEE ALSO .Xr etherswitch 4 , .Xr etherswitchcfg 8 From nobody Sat May 17 01:47:17 2025 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 4Zzmz96BN3z5wh1N; Sat, 17 May 2025 01:47:17 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzmz94KLFz3HF7; Sat, 17 May 2025 01:47:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446437; 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=0o0ngu/EIKI+Z4YuHeywzJaP9DEO1eC12PfP9i9V6/4=; b=Y5ann2AAsn4oTTvhYFbacIxpbcJBCcx3HYCq/olgn7nwtqN5GKje3tZWaDOXX1FLSZ3SnK EzOEj9Ex2F9yeI8tzXv1Rnwlr5F2WMETGJ/gnVzvA7B1uCLesZTSbEQstp4Cd8JuhL1qfW 3lHiPY4HvUvZUoRkICXTP1Dl8CeRKZSMFQMPDcAiaNyK5UX5I+mjnIbShHIvi3UCeuu8z+ LuFyNcDRBbEO+mAP0mQ6eskAxgaN9T8Cq5pz99oj3foE/oAVwF49HTbFZgEl9HB+TKwTTk BEadFXKONEFZk9cQzudRieCWPXfU5nJAsFuYaR32ZEB4479OJZJObO+U/AfK1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446437; 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=0o0ngu/EIKI+Z4YuHeywzJaP9DEO1eC12PfP9i9V6/4=; b=iS4lMAe7sR9za4LwaSy6Gso5yuEPhEst8SGZhD8UQfSqzTqsOsve6kqMzd6NGDDD6tStYf Hn7Iye+s1FDPKslnLmXH4LuVe2mZFRk0KyFqDpfc1MMc8DDWv+W99Ak9SSUEZKqVvAv+YV 0zcmdHW9yVOvAWWzTnpDJrMGgU0PPpIk+7+6zi3pWTdPOvfrh23sVcAv9jKPLsK4Pj6JZN ge5XhXc7VuZp9vVtn0ydvLP1iyqtcCh9UguMQAn3y6LpqbnsM8N/KXlAD0nNhQbC08ITNR 2gP5UWD1I12dk7sDfZiiYbuly9z9hkxY4c7W4Dbj8DolqY5A9gbaKLG8Ps+5UQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446437; a=rsa-sha256; cv=none; b=ywCHWKm/NgQvvcvzM2nBVSUTNS8e+58os7zsx3rCuBdwWzaB954BevtN5mPusDOgweuZmj tnGEcqBG8IBPgJtd3sdBq8HMMUVWdGx1tXTCHMu+4x8tnHu/dXF2JaLSsFU6/vJJJ8irye 4tkEEyLb4M7zvgJw2MOiGOiVvI5St2Xjx2AGTpHLSjbRDTS5Tt7KnNV9D8zvDaIwuYM7gM 3eB8yfrFd2XIsTyBxBLUyK52jPmkBF/waT0CvGCIM2zqdoABNbk7qpjSaFAksnvYZxYdAT fRS3ssnYmz5KB0sD9NMGwraoSSsVa51tddLKKI90U8HtvVbB68V5OL7HNxel6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zzmz92fvszCNN; Sat, 17 May 2025 01:47:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lHhv034279; Sat, 17 May 2025 01:47:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lHN4034276; Sat, 17 May 2025 01:47:17 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:17 GMT Message-Id: <202505170147.54H1lHN4034276@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 17e9eb1e0eb7 - stable/14 - ar40xx.4: Initial manual page 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 17e9eb1e0eb721e2400232c71f20bc490c416c60 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=17e9eb1e0eb721e2400232c71f20bc490c416c60 commit 17e9eb1e0eb721e2400232c71f20bc490c416c60 Author: Alexander Ziaee AuthorDate: 2025-05-12 02:22:59 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:41:34 +0000 ar40xx.4: Initial manual page For inclusion in apropos and the hardware release notes. While here, add xrefs to this page and the previous e6000sw in etherswitch.4. MFC after: 3 days (but adjusted for 14.3) Reported by: adrian Reviewed by: adrian, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50324 (cherry picked from commit 91c9751c3913497db2fbad1fcf7491557bbd2a75) --- share/man/man4/etherswitch.4 | 8 ++++---- share/man/man4/man4.arm/Makefile | 1 + share/man/man4/man4.arm/ar40xx.4 | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 4 deletions(-) diff --git a/share/man/man4/etherswitch.4 b/share/man/man4/etherswitch.4 index aeb5e484e7cf..928d5a09e49a 100644 --- a/share/man/man4/etherswitch.4 +++ b/share/man/man4/etherswitch.4 @@ -48,12 +48,12 @@ driver provides a framework for Ethernet switch devices. device nodes .El .Sh SEE ALSO +.Xr adm6996fc 4 , +.Xr ar40xx 4 , .Xr arswitch 4 , -.Xr iicbus 4 , -.Xr ip17x 4 , -.Xr rtl8366rb 4 , +.Xr e6000sw 4 , .Xr e6060sw 4 , -.Xr adm6996fc 4 , +.Xr iicbus 4 , .Xr ksz8995ma 4 , .Xr ukswitch 4 , .Xr etherswitchcfg 8 diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile index e2a41559410b..36540f690c5e 100644 --- a/share/man/man4/man4.arm/Makefile +++ b/share/man/man4/man4.arm/Makefile @@ -1,5 +1,6 @@ MAN= \ + ar40xx.4 \ aw_gpio.4 \ aw_mmc.4 \ aw_rtc.4 \ diff --git a/share/man/man4/man4.arm/ar40xx.4 b/share/man/man4/man4.arm/ar40xx.4 new file mode 100644 index 000000000000..e314d30dd4c6 --- /dev/null +++ b/share/man/man4/man4.arm/ar40xx.4 @@ -0,0 +1,35 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt AR40XX 4 arm +.Sh NAME +.Nm ar40xx_switch +.Nd Qualcomm IPQ4018/IPQ4019 Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd ar40xx_switch +.Sh DESCRIPTION +The +.Nm +driver supports the Gigabit Ethernet switch inside the +Qualcomm IPQ4018/IPQ4019 SoC. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Qualcomm IPQ 4019 Five-port Gigabit Ethernet Switch +.It +Qualcomm IPQ 4018 Five-port Gigabit Ethernet Switch +.El +.Sh SEE ALSO +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh CAVEATS +This driver currently only supports L2 port/VLAN mapping modes. From nobody Sat May 17 01:47:18 2025 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 4ZzmzB5Syhz5whB9; Sat, 17 May 2025 01:47:18 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzmzB3jZ4z3H0P; Sat, 17 May 2025 01:47:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446438; 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=Cp4GsNqRcAeyXjkG2EYuNAAI7ZzGqLMPgDUutU0AiU0=; b=Z3sgaprTN62X2cn4ncgt0pDw44g8K8pzoNLxoJf8oScVkJprDtWqRGo+tKu78XVKTM2AvR soxzHft+jw5mms/Xw9ZjPJaYirIM1F72bSDL8iY3GBY9hh8uJhFUQfEWvsDQRsEalcONSf lkK1tlx4dzbt0Sw1j1G5uWm9UOR81aF76rGw61lmYdRmkLO0VzYlSoUA3LmcaK1JTyR3Oo m3rgE6RpETcDzn1OYsXrdBGgFhF4uoXPGNagJYqYJIoDopO/8GIxbndCycsJBcf0RfVvxR JikBaaSJIDAaNQJ61EN3n9Bot+4CzUeMcCY0vWc39CglgdZImNf2heMbk/Ejyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446438; 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=Cp4GsNqRcAeyXjkG2EYuNAAI7ZzGqLMPgDUutU0AiU0=; b=oYfDqGcwgdVKqVRr1DVT/+Bc8a7ag+DMU1yNzv+8XsiVAuKVKp7UuoPPrWq5NDZQP9oheA /L+3lryzDy75YzW6M+L0edYK3r6rMSW/T8f+VdJsKiXMv7rGeXHk05fDQM8WKtb/0Xb9my UgsKkz7BNjpPQ7Y8ZiQ8B55f6OfCVPfnNwAkHfhh/5ylPJ2dDr/fl/u9T8dClVgpOmYsQF OQg9BFRcMUCAEaYYWYvMW5eCYgbHl26uEdJs3f3aOkCXmvGDh5YL6gv6dweSjARvYsJda6 /PfQ8hPN9+2SR4yTRzG6+t43Cwp/kt04nhpkh02kT+4Ira1o+YPI9/G0Jk25gw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446438; a=rsa-sha256; cv=none; b=fNQNMIUs81+vLAJzrKrfHek0us1nyNWNt9sc5TdY7r8FW2YppZWecFbBUmB2JBppPr7lSS 5LdoVc+dy7GbHy3MHD5jnryVa03vGnhdRDgSTK/BB0x8El0Ju9pNVgjW/oevDOVH1l/qw4 W72JXygtV2bjF/6oJS3qyVE3e2gcknuBMZu5uxs/T2EQnUje8ATSrmkFKocRUVxJEWKVfE uL/TrvriEi9GHCYLET1GY1xCb0b3NYEO5toOHxSC9RzkYuDwegp63cPM+AhC4EgH4HGu2i A8y0ejVMv1ASbH+q5/SS3jkKnH0yG8q4Gl03S6gMNz8di0bdVswE7rtVHwhgVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzmzB3JdtzCNP; Sat, 17 May 2025 01:47:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lITj034312; Sat, 17 May 2025 01:47:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lIdi034309; Sat, 17 May 2025 01:47:18 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:18 GMT Message-Id: <202505170147.54H1lIdi034309@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 5e0e046d95a9 - stable/14 - e6060sw.4: Improve title and add HARDWARE 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5e0e046d95a92aab8bea856fe0008870ee11bfc9 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=5e0e046d95a92aab8bea856fe0008870ee11bfc9 commit 5e0e046d95a92aab8bea856fe0008870ee11bfc9 Author: Alexander Ziaee AuthorDate: 2025-05-12 01:08:10 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:42:36 +0000 e6060sw.4: Improve title and add HARDWARE For visibility in apropos and inclusion in the hardware release notes. MFC after: 3 days Reviewed by: adrian, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50321 (cherry picked from commit bef89c155e77dd471af596a43f3914b754cc5155) --- share/man/man4/e6060sw.4 | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/share/man/man4/e6060sw.4 b/share/man/man4/e6060sw.4 index 407138abe378..74736f65fe80 100644 --- a/share/man/man4/e6060sw.4 +++ b/share/man/man4/e6060sw.4 @@ -23,12 +23,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 5, 2017 +.Dd May 10, 2025 .Dt E6060SW 4 .Os .Sh NAME .Nm e6060sw -.Nd driver for Marvell 88E6060 and 88E6065 fast ethernet switch chip +.Nd Marvell 88E6060/88E6063/88E6065 Fast Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -44,6 +44,19 @@ This driver use smi interface by ethernet interface. 88E6060 support is only port vlan. 88E6065 support is port and dot1q vlan. dot1q support group base tag/untag. +.Sh HARDWARE +The +.Nm +driver supports the following Fast Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6060 +.It +Marvell 88E6063 +.It +Marvell 88E6065 +.El .Sh EXAMPLES Configure dot1q vlan on 88E6065 by etherswitchcfg command. .Pp From nobody Sat May 17 01:47:19 2025 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 4ZzmzD1LGjz5wh7x; Sat, 17 May 2025 01:47:20 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzmzC53nJz3H7l; Sat, 17 May 2025 01:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446439; 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=xGrasUasnMXLw7nC3YMc2M5g2O1E6xk0xF41OyfYXGg=; b=TLDGVL/l5uTaKHuCVwx4wgysfOn+NbPw/JKbrNSvFKwtDrwJIbZ5F8Udzn9t9P+Ab8XH1U X4R8G8nxwdsKvO9P06HD0jCatV36X5rVW8mcWtY3b0oNTYDBGftVwIVqJsUjYQlzAoA1hI 8nlwfp+kM7NWL1fzboNRFMfdmKskyXdSvddHN0lE6k/B8vSRbc9qkx7KGQfT+22gmPMeUc 5iOmhajPhZdgHJ298xrvxje9tUwue/ScHL8GYDmlJuOYi+qVZVKOrThXBiVm6qY+lQ6GeP OEm/TV9A/BNomQMyEdoRAOrbZ3+jut8KVSVaOtHmYtlZQ8vSs+6a6M5Ya6WUwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446439; 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=xGrasUasnMXLw7nC3YMc2M5g2O1E6xk0xF41OyfYXGg=; b=nkwY9HGkxNNcNcyXdp+bG4cux6Sv1E1LeJ7ejdWXGbyNh8q1LCX8YGs6+UuWw7zTvAiJUG MBpn6wYCkGXSo6XrNpYzrYdFtH5HNZjZiwiU0UGwW07U5fwyYsh2V2Av8qzDE31lRIjM8s iX7wkCHfzNOpvK5U8vmiSEV3AgkSVEfJB+zGMpzw42SqHJnEhH3hTCjwaw06jP6mE9laSs cfAdv2Xwk/4I3fxGMhAp7B5b/uk/uoEzCSfLnders3YjQlp1N/R1nwoQTfesSaWwWcXEGx o8ljtNAOdZZk7q11eAZPRAEqYwgVaQ7VEh6ZjIqEae2Cp2YscBb/xPTY+NeaTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446439; a=rsa-sha256; cv=none; b=IR0sOqwMQplxqcJzzqeIshKdW15WwsPhKJIm+tkXHcHetUMjsAqzYHD4Iz2KbvFF3dPZds cj/MQ4EbV2GcTbeKyR1HTQLCX7FbkaGUetQolPanwnQS1rP+PaZqWT5MuniInCZ6S5dFo4 zmRd+sBSaVaMnmv6zYDF+RKSQOIlXfcwVs2iSFTPMx5PdSy1YdZ+0o5DqMyvZE/UAAeKtW CJyHVLjVSHNWV1JPFCdHktGg+zai04zSfn92vN0CEyNoG6tdBD/GvqLaCRejQXlxitHISE 2Llhd3qlwLM15SX22+UHaqk+Ahc/xFuQIBGIOgQnKY9bLy/yocXeyf94vhjrkg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzmzC4W9qzCLD; Sat, 17 May 2025 01:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lJvs034350; Sat, 17 May 2025 01:47:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lJUg034347; Sat, 17 May 2025 01:47:19 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:19 GMT Message-Id: <202505170147.54H1lJUg034347@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: d93d6cccc90e - stable/14 - build.7: Document pkgbase PKG_FORMAT variable 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d93d6cccc90e4dc80c74e1b90a16358be62b0a8e Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=d93d6cccc90e4dc80c74e1b90a16358be62b0a8e commit d93d6cccc90e4dc80c74e1b90a16358be62b0a8e Author: Alexander Ziaee AuthorDate: 2025-05-12 20:54:14 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:43:19 +0000 build.7: Document pkgbase PKG_FORMAT variable MFC after: 3 days Reported by: emaste Reviewed by: emaste, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50318 (cherry picked from commit dd3d1a7694583362f5915ff5f1d9cdee64e2fe3e) --- share/man/man7/build.7 | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/share/man/man7/build.7 b/share/man/man7/build.7 index a1da9dce4bec..9a90a6dffafb 100644 --- a/share/man/man7/build.7 +++ b/share/man/man7/build.7 @@ -633,6 +633,20 @@ If set, this variable supplies a list of additional directories relative to the root of the source tree to build as part of the .Cm cross-tools target. +.It Va PKG_FORMAT +Specify a package compression format when building +.Pa src +into +.Cm packages . +Default: +.Ql tzst . +Consider using +.Ql tar +to disable compression. +Accepted options are documented in the +.Fl f +description of +.Xr pkg-create 8 . .It Va PORTS_MODULES A list of ports with kernel modules that should be built and installed as part of the From nobody Sat May 17 01:47:20 2025 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 4ZzmzF0qBQz5whCy; Sat, 17 May 2025 01:47:21 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzmzD5Yr1z3HFf; Sat, 17 May 2025 01:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446440; 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=+Vesw6Bxcs4tBTpodHoTekfqgG6FOUKWEWbEZAPbXC4=; b=kWLM/uyIXiJp/rHQoFxrkI/09Ma69/wzKXbViqB9KnqGRpZaRd382WeTBSMWYIgG6bAfPj ujLsFXy+7t4s9ngECxv2WLkAPPx1+0GRUzuuHpoARZYiubFOh3FaHWLi6sBfN2iysoVCqE PL+Dv2FOrZ/GGaiFjWyDw9SmfYZ/LsuWeZmbYfMuG5xynxZe7F+MB3UgKjoEc6cGxCQETB oFUnqOSdhYysjVEVQc2R5+azq112RkLzE8P55GYIQefZECXv+bxY/2aM1JjmHFQhgXFVC4 DE4JzT59l30ORkTJWMNMVhAiW602a/Z4nU7wfoG/B7teno1aVjmd8D7PypgbeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446440; 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=+Vesw6Bxcs4tBTpodHoTekfqgG6FOUKWEWbEZAPbXC4=; b=c7OR8X0jjMiYJYc1WeXH1LTWNzGwRrHcR6YIP0mgQtqIrbVDoYe6u6FXRvw+KqvlKvnpEL lBt1JFX9fqNZvycW5ddH0j4X4VFrRLdp0/RD1eMkrYYduc0yUWggbvdSarEZHWR8uQ9G4C 0Y1tWxMrIvROy1o3p9KcSOp61BCVx56gU7493+Zi4dWu1+l0ZHnZd0sBm2+kySh65/D6jy R+SdOwGpYpavh9WY++PYjComxl/SN7H+8ahTxMFei/Ip+/XxI3/H3StJ4hSrAthC96g/cv +IR+8gflyT3jgf8ccpQ/vMLGEBEfWpMUPpspAgsD5Ap39Oz9UjHZa2CIFfctoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446440; a=rsa-sha256; cv=none; b=LXkQE944ADwf0e61o/wigbJwuJjkU1eM8vcwA9QBe3MhbunsveW2BTHvRmVMMKKy2++JtP pbKbB/suT0hkc0OBI7sMY+HPu/6T9mtfmaf4hUuI3Hw0zSscsSYzCs3p1t3t1AS1LBQPct RCFvWGhj8GwzOLKVoOaEyQih/cmONJVBp8ajeGPu8e7dJl9xkNIRbnXMUQgDt0tBhEYgiR mq9B52JYrJc+9LDdcbhf04qVd+ady+wXgzQGUVZXbe18UHtqUMQ/L7lWxQH0JNa4+b4TpF hQ+V66cU61Y3scEwr37tYbhtfgLkDwNPkTGMig30km8BVBx+Id4jDOkbQTtX3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzmzD56K6zCNQ; Sat, 17 May 2025 01:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lKPw034383; Sat, 17 May 2025 01:47:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lKgQ034380; Sat, 17 May 2025 01:47:20 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:20 GMT Message-Id: <202505170147.54H1lKgQ034380@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: f526783367f9 - stable/14 - UPDATING: Strengthen recommendations 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f526783367f9ffe00acf40d8a6ec56662cfbf323 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=f526783367f9ffe00acf40d8a6ec56662cfbf323 commit f526783367f9ffe00acf40d8a6ec56662cfbf323 Author: Alexander Ziaee AuthorDate: 2025-05-03 22:43:10 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:43:59 +0000 UPDATING: Strengthen recommendations Strengthen recommendations for ports_modules by adding a separate note. Use the unused [2] to add a note about creating backups. MFC after: 3 days Reviewed by: brooks, mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50126 (cherry picked from commit ca9131b729757959cb0fd4721603466284cfc6fe) --- UPDATING | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/UPDATING b/UPDATING index 3227b70ac69c..c19d5db50b7c 100644 --- a/UPDATING +++ b/UPDATING @@ -1985,10 +1985,11 @@ COMMON ITEMS: # Note: sometimes if you are running current you gotta do more than # is listed here if you are upgrading from a really old current. - + [2] make buildworld + [1] make buildkernel KERNCONF=YOUR_KERNEL_HERE - make installkernel KERNCONF=YOUR_KERNEL_HERE [1] + make installkernel KERNCONF=YOUR_KERNEL_HERE [3] etcupdate -p [5] make installworld @@ -2022,10 +2023,11 @@ COMMON ITEMS: To upgrade in-place from stable to current ---------------------------------------------- - + [2] make buildworld [9] + [1] make buildkernel KERNCONF=YOUR_KERNEL_HERE [8] - make installkernel KERNCONF=YOUR_KERNEL_HERE [1] + make installkernel KERNCONF=YOUR_KERNEL_HERE [3] etcupdate -p [5] make installworld @@ -2058,6 +2060,11 @@ FOOTNOTES: and effective, eg: PORTS_MODULES+=graphics/drm-kmod graphics/nvidia-drm-kmod + [2] To make complete dumps on zfs(4), use bectl(8), which + creates bootable snapshots of configurable depth that are + selectable via the bootloader. For ufs(4), use dump(8) and + restore(8). + [3] From the bootblocks, boot -s, and then do fsck -p mount -u / From nobody Sat May 17 01:47:22 2025 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 4ZzmzH2PdQz5whD2; Sat, 17 May 2025 01:47:23 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzmzH0sNNz3HXD; Sat, 17 May 2025 01:47:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446443; 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=K/jWKOLPX0Ilu2ah3bRYQxS05yhMtQyT9cx4j7QqUQo=; b=dBvrM+0gGVcsh5ugqxp848A1gdKxXFYPJD4SGf/mXoNxYep6QaPtfopPsicdVk4hYqUUpl M+3199zaCy3ytNdicU/AKYQgjvnH4s8a5zidXYON+E4LqSUmMr2shBD17/mLvDdkHGcyuG epzeLO3ES/dSyc6+aFgTE7oCAsvyx731X+tmRS4E7VsBzHqjnm7Ost3KABmNR964KRVWFC JBis9rZL71gBMjvBDHSY4yLVL/rW07oHf/6BGXsGmL0JaRUHDom3MRCk9R+kvMALK6iz/9 qFpck5h7co2vRVTJ0yJhWVXxNMzTd7Za7Ed4p584AV6p+ejQ0hZEkH+GiU+xNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446443; 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=K/jWKOLPX0Ilu2ah3bRYQxS05yhMtQyT9cx4j7QqUQo=; b=VfNR49GDVGYbWAi7KiOW2bHUIohdJAFBqfn9YqYEQgnon+ygj/E3Cvq2VWPSfQqmzQ4sbS vbZdaXPPpLpO9uY7V0extbky+84ABqS6+CLcS9cjkFpLvHZT/Aofwvv09ggJ7nPeAHs0mO Uwi3+erxZbg8KqDfDNzOfEfNPfaxoRbe565JZ5CxjBAPO2wux0POkoGfeOaHfoDJfiW/ax p3HjohxZoaM+ACHkvx+qleWzd058KWh4a1PurTIeI3XAvSQHR5XvtYGgQlkuLkR3ME6arl cE51Fens3/joh2IbHGUNAKkeAhia1P1WrUDYvmC1n0O3bQ/iT/OsKOaYCfIAjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446443; a=rsa-sha256; cv=none; b=Sw01DosXyqRIZAe4Zx2xK5TolmamxJByft9HdZdjcdAa/5Eu2wGzTpG9P5tJPtVFoXEKeB Z0StDcEuW1OMy14MU2eR8wubbsQU/j+kJNr71IvCt56XFr8vtp4pHZIXcmxYklePNPWOuI z0hAE0tMenU8e3/5BQd8WC/Tr5bDIuU2Wnw/UxLxfuyGZ7alZAGAc5l4Khxu+MuZJPtKmu qHxTzL2rrowbduONeFBkTuXaJfvWpiG9bAijWE+egG6JhxF+P+vqMXvEoxyMMSoIkNVWGe 3wkvk6YV4rgqfGw34kn2B0iye2wSN7OipqDehnHpNzqNz9vyyxRsmG9ytJ7ilA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzmzH0D3pzCLF; Sat, 17 May 2025 01:47:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lMrN034450; Sat, 17 May 2025 01:47:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lMlG034447; Sat, 17 May 2025 01:47:22 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:22 GMT Message-Id: <202505170147.54H1lMlG034447@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 3f5262eb0b22 - stable/14 - seq.1: Reset option list alignment + tag spdx 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3f5262eb0b2230e68314b6a7368800110b6ce9f9 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=3f5262eb0b2230e68314b6a7368800110b6ce9f9 commit 3f5262eb0b2230e68314b6a7368800110b6ce9f9 Author: Alexander Ziaee AuthorDate: 2025-01-27 19:37:43 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:46:48 +0000 seq.1: Reset option list alignment + tag spdx This option list was tabbed over 19 characters. style.mdoc(5) asks that lists are set to the longest item, or if that's too long then to use indent. Resetting it to indent buys us two lines at MANWIDTH 80, and three at 59. MFC after: 3 days Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D48350 (cherry picked from commit 2f893597fcc34456d5adfc3f1633b39c76d0764f) --- usr.bin/seq/seq.1 | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/usr.bin/seq/seq.1 b/usr.bin/seq/seq.1 index 682ef269cba1..d81dc7052a3c 100644 --- a/usr.bin/seq/seq.1 +++ b/usr.bin/seq/seq.1 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" $NetBSD: seq.1,v 1.8 2013/04/07 17:37:45 jdf Exp $ .\" .\" Copyright (c) 2005 The NetBSD Foundation, Inc. @@ -69,7 +72,7 @@ Normally integer values are printed as decimal integers. The .Nm utility accepts the following options: -.Bl -tag -width Ar +.Bl -tag -width indent .It Fl f Ar format , Fl -format Ar format Use a .Xr printf 3 From nobody Sat May 17 01:47:21 2025 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 4ZzmzG2FkYz5wh1S; Sat, 17 May 2025 01:47:22 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzmzF6qCXz3HRD; Sat, 17 May 2025 01:47:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446442; 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=mMgJE5fTxizs1hVf4xrPIx1hQ5L7GONveJ0EGLAB84U=; b=R+/JCClp2UCOhqSIziWYs9JaoUsuOketAs1EWLDbowuMFmkBSC92zPHy37tY1gstgfWsS8 KzNtlevrfZlwQxAgDVudOeej5QRZ3eG2wCtqLw7t0iR0ZlaAI4lzWNqYWESFULALTm2rAv Aa+cjrrusXgQHg6NL3Wdq8VAuUPBhGq89YUMeoTsQ08vMW8TbxdPJJ/+ZxAaoZxFBBbn5k Plq66yuXTDtnTklmd25AUl6xeTRi738MwgUbGJcDKXgHNNkBYaa6sXsJce7mdW5OUuYSMr g6bD+ctduoureq3i8u9OPH1gYn6n2ezcanSZwWBA1gIRnCPNxbvUn1n6MTrJLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747446442; 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=mMgJE5fTxizs1hVf4xrPIx1hQ5L7GONveJ0EGLAB84U=; b=TBwJ0vG7xqY6iFStrIdu+YPKbtzjFahDm2sBXAE2K+HAOxZYmB8VxlIIyUHPG7t8oFR0yo OuMxu7aWrO4Qzg/KNd30oGtMGNz1g8xNEaopsOtVkuHpAm3L5rSjTLsjqA4IX3lzLQqMJ7 NqyvL0XhzLaBv4w/IibkIpfbmElsA8Jlnk1QEIdD0LlOwTmMOsPP9VHluOAROWNtyr/QQd JAqM8NneD+/qE6U4cdtrlMX/EC3F1dyuMgzknv8p/ThbxfNDmf91BXy93WlgfJdO8Xz8UW aVYE3XI1ZbVHZ/vu5J3B/BgiGGms6mluSDTnDIeAFAEBCJ3TfASCUuMWljQ7OQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747446442; a=rsa-sha256; cv=none; b=W2S2xVPanavuefbSDnBQgN2nSi0+j7t4/d3Qyed0545QguunKLbnd4v+QtACGeB3TRPdXk 2r4fkOI2N6bVzwQuzhzC1YkmDMTXSFjRMcSojK6+ux4u04euxXWeetORlYR8iSuVdFzU/X XZYYn1g6+eYzrtQqhLiN+qmorTwp1t9H6KzvFdaX/pnWVbU73scRDywmxOPnn4bECsAmlo UTNtVMbcaNLIWmW+0EgxHWhp0dY21k0J6QcOSS3dmZlsHn2NXgXe7TONhoqp6QKq8EWTD4 fOAnb24bKq0H1TT3ROwjWHZlFrqhdQM7dGlNXKa1N7vn6iiKB0UEOS/LyXqYFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzmzF6Lb1zCcS; Sat, 17 May 2025 01:47:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H1lLir034417; Sat, 17 May 2025 01:47:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H1lLId034414; Sat, 17 May 2025 01:47:21 GMT (envelope-from git) Date: Sat, 17 May 2025 01:47:21 GMT Message-Id: <202505170147.54H1lLId034414@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 64a8c1930b8b - stable/14 - style: Recomend SPDX licenses 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 64a8c1930b8b74d05736bd9c022d5943343efd43 Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=64a8c1930b8b74d05736bd9c022d5943343efd43 commit 64a8c1930b8b74d05736bd9c022d5943343efd43 Author: Alexander Ziaee AuthorDate: 2025-02-25 03:48:12 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-17 01:45:56 +0000 style: Recomend SPDX licenses While here, take this opportunity to update the copyright and clean some mdoc errors. MFC after: 3 days Reviewed by: carlavilla, mhorne, imp Approved by: imp (srcmgr) Approved by: carlavilla, mhorne (mentors) Differential Revision: https://reviews.freebsd.org/D49051 (cherry picked from commit b3de609802104234dca7449fc2b4f4106098d41b) --- share/man/man9/style.9 | 41 ++++++++++++++++------------------------- 1 file changed, 16 insertions(+), 25 deletions(-) diff --git a/share/man/man9/style.9 b/share/man/man9/style.9 index 59f0ff8b5c88..5542a9685c46 100644 --- a/share/man/man9/style.9 +++ b/share/man/man9/style.9 @@ -1,5 +1,5 @@ -.\"- -.\" Copyright (c) 1995-2022 The FreeBSD Project +.\" +.\" Copyright (c) 1995-2025 The FreeBSD Project .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -22,12 +22,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 13, 2024 +.Dd February 18, 2025 .Dt STYLE 9 .Os .Sh NAME .Nm style -.Nd "kernel source file style guide" +.Nd kernel source file style guide .Sh DESCRIPTION This file specifies the preferred style for kernel source files in the .Fx @@ -59,34 +59,24 @@ is silent on an issue. * them so they look like real paragraphs. */ .Ed +.Pp C++ comments may be used in C and C++ code. Single-line comments should be consistently either C or C++ within a file. Multi-line comments should also be consistently either C or C++, but may differ from single-line comments. .Pp -The copyright header should be a multi-line comment, with the first -line of the comment having a dash after the star like so: +The copyright header should be a multi-line comment like so: .Bd -literal -/*- - * SPDX-License-Identifier: BSD-2-Clause - * +/* * Copyright (c) 1984-2025 John Q. Public * - * Long, boring license goes here, but trimmed for brevity + * SPDX-License-Identifier: BSD-2-Clause */ .Ed .Pp -An automatic script collects license information from the tree for -all comments that start in the first column with -.Dq Li "/*-" . -If you desire to flag -.Xr indent 1 -to not reformat a comment that starts in the first column which is not a -license or copyright notice, change the dash to a star for those -comments. Comments starting in columns other than the first are never considered license statements. -Use the appropriate SPDX-License-Identifier line before the copyright. +Write the copyright lines before the appropriate SPDX-License-Identifier. If the copyright assertion contains the phrase .Dq Li "All Rights Reserved" that should be on the same line as the word @@ -132,11 +122,11 @@ Only add in front of foreign VCS IDs if the file is renamed. Add .Dq Li "From: " -and FreeBSD git hash with full path name if the file was derived -from another FreeBSD file and include relevant copyright info -from the original file. -.Bd -literal -.Ed +and the +.Fx +git hash with full path name if the file was derived from another +.Fx +file and include relevant copyright info from the original file. .Pp Leave one blank line before the header files. .Pp @@ -923,7 +913,8 @@ When using branch prediction hints, atypical error conditions should use (document the exceptions). Operations that almost always succeed use .Fn __predict_true . -Only use the annotation for the entire if statement, rather than individual clauses. +Only use the annotation for the entire if statement, +rather than individual clauses. Do not add these annotations without empirical evidence of the likelihood of the branch. .Sh FILES From nobody Sat May 17 03:57:05 2025 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 4Zzqry1QhXz5vs23; Sat, 17 May 2025 03:57:06 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzqry0dLcz3gGQ; Sat, 17 May 2025 03:57:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747454226; 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=MMtSjibhwSvHmlH4Y20BwNr80ECFRwVewJK+bGegq8c=; b=h9pMnTp+I/nzDOVPxurlQDrugP88UIijby7XtVSQXA5fFpc++jgTRmSFVNJEwQLibzNkds i4+PpHvyMrh4hv9RCaBJWbRc6XqcIquUOxTiS3QH0g8bL+oeoPr2JdlGEvqEDccu4qGyO2 cxthmGjcQFEmctXWWWfnzggXFFsCXHh3jb53QS4jl4knPwfZDvtdWpjK9k0pbw7yqX1E6w N4ee6CV9ju/F8t0X8U8GjqdRo4iA0ublM/dGqtbB5a6LNnRt+qD0mESWOn9ts3zmpEerj6 xR3rlSOdBH/oPj+HjXuppTqGbTcV1ResGb7pG2Jy3PQlw8JJaPSC3C2NDV9uLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747454226; 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=MMtSjibhwSvHmlH4Y20BwNr80ECFRwVewJK+bGegq8c=; b=wHldqE3a67BDNJ44MmxrV29N+QjB8uQTHv01YGhWslM4y/hIS4cyhOYZkBpRhs2nCkfGck PcJ1IjKgZpvGtkvOVb/Z9BQltbRpA94aFNPiHy9qdGyT0CFL9V8FPmwTehdUQulgLHwupa PJ8gsg06ayb4EmcXGJAOy2i40iomOORib4cuCid1FnYqQ/MEnsXnW19Rp2WDz1Vw2vRWsq HJN57ahrLGvLdgjoqpQwkRzoVnSNU/Lj3Uh0dE/g8l3I4BAijpNb1hgGJyBVwOq6CDAWQU MMpXtiC7spOap9J44miSZqNmX3xTPfkLwivCrm4FY9b8D60T83ttlc/p5BDhUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747454226; a=rsa-sha256; cv=none; b=PI1zfdyXGTdH65D5F2JdMc6iI4ZtakUCPe05/eJGosqgKriKhP9S+JEAGgwu0MDo23gs/J hi5WXlQUA/5/jF5b0ZRZ15vc2/NfAqphRTiMhZU6IbgICb+s66S1Ili2/7uPXgYLzn82fm c0PFfimZp4XYZkUXbEruW2cokZx05XwAQM0h2PG+QAWczcOmxOjmfifubBBDn8c5FZJjEA CSACsPmDfD9+FjmdvUymAPMWYBHwlHF7hP+mrbLRvzYjt3jrn2/SLJfgVDtPWGu8Wdov5m fdtpZL+95cNQvyEGATAfTKknS464a9/hnbNlxITJtOYSFsFZ2HP/jakan7ja4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zzqrx750CzYvh; Sat, 17 May 2025 03:57:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H3v54L078686; Sat, 17 May 2025 03:57:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H3v5qP078683; Sat, 17 May 2025 03:57:05 GMT (envelope-from git) Date: Sat, 17 May 2025 03:57:05 GMT Message-Id: <202505170357.54H3v5qP078683@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 5239a9fb8662 - main - vm_page: alloc_domain_iter 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5239a9fb8662c1f87dd5a963c044d80b16206a72 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=5239a9fb8662c1f87dd5a963c044d80b16206a72 commit 5239a9fb8662c1f87dd5a963c044d80b16206a72 Author: Doug Moore AuthorDate: 2025-05-17 03:54:33 +0000 Commit: Doug Moore CommitDate: 2025-05-17 03:54:33 +0000 vm_page: alloc_domain_iter A recent change that made a call to pctrie_iter_reset conditional was ill-advised, as it leads to an assertion failure on the graid1_6.sh stress2 test. Make it unconditional again. Reported by: pho Fixes: 3fe2f81f665b ("vm_page: reduce iter_reset calls in alloc_domain_iter") --- sys/vm/vm_page.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index ecf8f5c73a5e..91250060190d 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2142,8 +2142,7 @@ again: * Not allocatable, give up. */ (void)vm_domain_alloc_fail(vmd, object, req); - if ((req & VM_ALLOC_WAITFAIL) != 0) - pctrie_iter_reset(pages); + pctrie_iter_reset(pages); return (NULL); } From nobody Sat May 17 07:43:57 2025 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 4Zzwtj2yBzz5w8n0; Sat, 17 May 2025 07:43:57 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zzwtj28LFz3HQn; Sat, 17 May 2025 07:43:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747467837; 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=XWg8A48i/NQYT1QIhkSE9WrSEYFoooi2j/RnZLTTqyE=; b=qHJjU8Jm4L04PmDHDDyWCCGW2veVmG7SntRqZq2yF5AUD45t+kaI+eUXttPEGoBrd752bO qqEUCFyaXNg2qzmudUXiIhdSlJhIEGGK0nHTKGM44V8GzPWSr+PwM7o/JU6vXMCSBizGGB bWQoPQ6RykXFbC8jrn9FoLXtMe9yU3NPDis0isFNrPrp/Oozt2BIH2rgdyYs49fGUQpCQs 0RnfPxbr1AMTpjT85YRsnV22WAo8GJLQhNwa49znT9eg0bPe87F/jN+FKJ81bzhiNgCr3B sOYR14hbfdgDCeGi6VOd2f874wbSYMIW3tYP1wx2nbDb2+nAe2g6cgo6sJv4+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747467837; 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=XWg8A48i/NQYT1QIhkSE9WrSEYFoooi2j/RnZLTTqyE=; b=lfmd46BvJ1ohKiEXmBZmWTBxJBgcusAwMHZn5L2/vUSrPkX5bQ8mDwRjBxcZStkeRWffdY JCPOqygNuZQoCaZ7txuBWcdB9L8n43oI2gwAVhHHPL8Xpl5iY/dtz9aEBF+wurlgcyvcpK BeB8vUjAOzhlJUKg8D5U+JNqa41izeRC1ahn5Cx4WZ1E3DpRydyh0aMhyHV3RoQ+Ln22rS qFCBx+1/RBFnvWaMmCIJnp6KS4Dt38seA7pyow5GMJUK+/7N+i2QbtycpC5y/acPANe9QN g9KmhH6v2ar2DZmiUqp9vj+GIythfPMWVJbXpahufjznMeqjtx+KgXvj6cOTmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747467837; a=rsa-sha256; cv=none; b=cJNsai//CHHoGxsWC4S7StVtHbPXpv+23MEvKk4ZWS0s6RKHZcU4xbCg3MOz2CQBxrzS1Y 0yOEnzpjsXf7+0p/yGjdx1m0PVmJ+BphcDlWdxebRb2k8qKoSDtXcSCXmbfChlhdaVe56i pjINDTZ26e1UqAiKPuNtXDRFDnS8qvzjNxrgw+DvjfYU5dgySdve/MEygnDPyNeMVgBNq7 T/lpnqvBY5jtc7i5mvHCy5JVBzxtY8j2EKQB8Bq/p1QJPzACfu1Nll+3Rh7Jn8IKG4k3KB ZwAO9zGfJfOQd8j2u+5RQaaWBxoa/WaNKc1U2U5F3d9LdTaL1riuAk2aehPCcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Zzwtj1lgtzfWc; Sat, 17 May 2025 07:43:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H7hvhn010139; Sat, 17 May 2025 07:43:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H7hvCg010136; Sat, 17 May 2025 07:43:57 GMT (envelope-from git) Date: Sat, 17 May 2025 07:43:57 GMT Message-Id: <202505170743.54H7hvCg010136@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: ee84b4e2fdf0 - main - namei: Update documentation. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ee84b4e2fdf09f9a6dfa43e0931d8671cc15ebf9 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ee84b4e2fdf09f9a6dfa43e0931d8671cc15ebf9 commit ee84b4e2fdf09f9a6dfa43e0931d8671cc15ebf9 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-17 07:43:02 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-17 07:43:02 +0000 namei: Update documentation. This should have been done 2+ years ago when the td argument was dropped from NDINIT() and the NDFREE() macro and the SAVENAME and SAVESTART flags were retired. MFC after: 3 days Fixes: 7e1d3eefd410 ("vfs: remove the unused thread argument from NDINIT*") Fixes: 269c564b90d3 ("vfs: retire NDFREE") Sponsored by: NetApp, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50375 --- ObsoleteFiles.inc | 3 +++ share/man/man9/Makefile | 3 ++- share/man/man9/namei.9 | 69 ++++++++++++++++++++++++++++++++----------------- 3 files changed, 50 insertions(+), 25 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 589c9ce41ab7..b90ac11dfc69 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20250516: NDFREE(9) -> NDFREE_PNBUF(9) +OLD_FILES+=usr/share/man/man9/NDFREE.9.gz + # 20250511: mailx test renamed OLD_FILES+=usr/tests/usr.bin/mail/mail_sigint_test diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index a43d2c9fef3f..f7cd206126d6 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1639,7 +1639,8 @@ MLINKS+=mutex.9 mtx_assert.9 \ mutex.9 mtx_unlock_flags.9 \ mutex.9 mtx_unlock_spin.9 \ mutex.9 mtx_unlock_spin_flags.9 -MLINKS+=namei.9 NDFREE.9 \ +MLINKS+=namei.9 NDFREE_PNBUF.9 \ + namei.9 NDINIT_AT.9 \ namei.9 NDINIT.9 MLINKS+=netisr.9 netisr_clearqdrops.9 \ netisr.9 netisr_default_flow2cpu.9 \ diff --git a/share/man/man9/namei.9 b/share/man/man9/namei.9 index 63a6d3b11f6f..1703faaeee99 100644 --- a/share/man/man9/namei.9 +++ b/share/man/man9/namei.9 @@ -31,13 +31,14 @@ .\" If you integrate this manpage in another OS, I'd appreciate a note .\" - eivind@FreeBSD.org .\" -.Dd December 17, 2024 +.Dd May 16, 2025 .Dt NAMEI 9 .Os .Sh NAME .Nm namei , .Nm NDINIT , -.Nm NDFREE +.Nm NDINIT_AT , +.Nm NDFREE_PNBUF .Nd pathname translation and lookup operations .Sh SYNOPSIS .In sys/param.h @@ -47,11 +48,16 @@ .Fn namei "struct nameidata *ndp" .Ft void .Fo NDINIT -.Fa "struct nameidata *ndp" "u_long op" "u_long flags" -.Fa "enum uio_seg segflg" "const char *namep" "struct thread *td" +.Fa "struct nameidata *ndp" "enum nameiop op" "u_int64_t flags" +.Fa "enum uio_seg segflg" "const char *namep" .Fc .Ft void -.Fn NDFREE "struct nameidata *ndp" "const uint flags" +.Fo NDINIT_AT +.Fa "struct nameidata *ndp" "enum nameiop op" "u_int64_t flags" +.Fa "enum uio_seg segflg" "const char *namep" "int dirfd" +.Fc +.Ft void +.Fn NDFREE_PNBUF "struct nameidata *ndp" .Sh DESCRIPTION The .Nm @@ -71,13 +77,13 @@ flag was specified or not. .Pp The .Fn NDINIT -function is used to initialize +macro is used to initialize .Nm components. It takes the following arguments: .Bl -tag -width ".Fa segflg" .It Fa ndp -The +A pointer to the .Vt "struct nameidata" to initialize. .It Fa op @@ -95,7 +101,7 @@ will not result in .Fn VOP_RENAME being called. .It Fa flags -Operation flags. +Operation flags, described in the next section. Several of these can be effective at the same time. .It Fa segflg UIO segment indicator. @@ -106,10 +112,35 @@ or in the kernel address space .It Fa namep Pointer to the component's pathname buffer (the file or directory name that will be looked up). -.It Fa td -The thread context to use for -.Nm -operations and locks. +.El +.Pp +The +.Fn NDINIT_AT +macro is similar to +.Fn NDINIT , +but takes one extra argument: +.Bl -tag -width ".Fa segflg" +.It Fa dirfd +File descriptor referencing a directory, or the special value +.Dv AT_FDCWD +meaning the calling thread's current working directory. +Lookups will be performed relative to this directory. +.El +.Pp +The +.Fn NDFREE_PNBUF +macro is used to free the pathname buffer. +It must be called exactly once for each successful +.Fn namei +call. +It takes the following argument: +.Bl -tag -width ".Fa segflg" +.It Fa ndp +A pointer to a +.Vt "struct nameidata" +that was used in a successful +.Fn namei +call. .El .Sh NAMEI OPERATION FLAGS The @@ -203,17 +234,6 @@ This flag is not looked for by the actual code, which looks for .Dv NOFOLLOW is used to indicate to the source code reader that symlinks are intentionally not followed. -.It Dv SAVENAME -Do not free the pathname buffer at the end of the -.Fn namei -invocation; instead, free it later in -.Fn NDFREE -so that the caller may access the pathname buffer. -See below for details. -.It Dv SAVESTART -Retain an additional reference to the parent directory; do not free -the pathname buffer. -See below for details. .El .Sh ALLOCATED ELEMENTS The @@ -307,7 +327,8 @@ An attempt is made to modify a file or directory on a read-only file system. .Xr VFS 9 , .Xr vnode 9 , .Xr vput 9 , -.Xr vref 9 +.Xr vref 9 , +.Xr vrele 9 .Sh AUTHORS .An -nosplit This manual page was written by From nobody Sat May 17 09:33:00 2025 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 4ZzzJX3lfZz5wJND; Sat, 17 May 2025 09:33:00 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZzzJX18lyz41y4; Sat, 17 May 2025 09:33:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747474380; 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=beQ8JLnLPUUSUFGFN5LHAAZT6S0p/O/QtWVyDQjCuHA=; b=RbwTYsyA5+I0Fd6PrRr1dRoLSu5XxCtwYvVwtymr/W8xQ14e3PhLyDE4gwRhcXJr+kIicT xUVTdZCQpKP0PNDcV6fuHYSEFBb3FbXUhUk+zgq06k7CaBg7XphhbkvDB+C4sGyKEqhQ9w j7troV/reqMcy0XsgHHtIcVrxZxvVXRvFWGWkcUkBHyySb1yxwtUowQGzS8sAHj94mnfFw 5aDt80fVLvmWyZW5TwKssNvkdCbjm7MeTwACtXITIwdpy6/cNrljJsC8D/a/Mmj4yLkX2c o8xWiocplkJ6Fu34XkzoaCHCclGv8TCVgaLCVvGJHw11UyNoXZ41j2+0Ws2WTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747474380; 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=beQ8JLnLPUUSUFGFN5LHAAZT6S0p/O/QtWVyDQjCuHA=; b=oYr+m+b9zBxwE73yjrN/yDWm5gWiHcAjUAwkJ45S5HDTYisSWLrCe5RNi5spZR6p/VW/34 G4Q6xHzaBZUP78wtrXUYuHQ+i3/XYbIDW+nd4J59sAkArdm+f4VrmoIpiQya8LYm9Jt0r0 xcGXH9PvK6CzCoJ/MUgCCpdR6JfMmSqCX71vuOZScjHWZZmGkKnUFQT8sIi93xgS7L6YyD XKRaoxMW7uxXM7emNv/IRpv+yiOjX2XjnF15TOMSszo3cozIo5437GAYtN+kyUNHr+hMsn IbBv7xE0LZ6uQPCD+rhrOrVu5gPKCpl42drBH2Xn4z6O88KzB7Ie025ce0B9Hw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747474380; a=rsa-sha256; cv=none; b=x2tJZFBZmIMSmHTZXCvzfiTtvc9/E/ZYeP8Yf91jsa+GxCAFfO5SUZFwr+5RQ+eT6JDGCL 16OH6Rzmj5nlhByOPpKY8DmMYm22Bgvq80ngNUHxfuQ99rOru70cFsJaTQGi5Pu7IT1o8O w5YdUMMzCbfKxLCgBmbNjjyd/rCgnsBxSQ/ro1aro3j4j5si2esy7tx/RA3+oP6dG+niGS w0GpivyENs2/Jx+FOECbPtgou++L4loc0ybf6iOS0wSCZtR7odwXHb2FSFmi8NxjuIG46c ZaxXUvi1w2Hdf7mDp2/K9vqR3aZHzTL/e2bP+YnD4o8lK6svzGc3DJ9AwbxXqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZzzJX0lgzzjyP; Sat, 17 May 2025 09:33:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54H9X0Of016205; Sat, 17 May 2025 09:33:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54H9X0Oh016202; Sat, 17 May 2025 09:33:00 GMT (envelope-from git) Date: Sat, 17 May 2025 09:33:00 GMT Message-Id: <202505170933.54H9X0Oh016202@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Igor Ostapenko Subject: git: 6b8222793fbb - main - kyua: Add "kyua debug -p" option 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: igoro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6b8222793fbb4c0e162232716bc454dad31b709f Auto-Submitted: auto-generated The branch main has been updated by igoro: URL: https://cgit.FreeBSD.org/src/commit/?id=6b8222793fbb4c0e162232716bc454dad31b709f commit 6b8222793fbb4c0e162232716bc454dad31b709f Author: Igor Ostapenko AuthorDate: 2025-05-17 09:30:55 +0000 Commit: Igor Ostapenko CommitDate: 2025-05-17 09:30:55 +0000 kyua: Add "kyua debug -p" option This allows the test engine to be paused right before the test cleanup routine, simplifying debugging. Reviewed by: ziaee, ngie Differential Revision: https://reviews.freebsd.org/D49463 --- contrib/kyua/cli/cmd_debug.cpp | 70 ++++++++++++++++++++++++++++++++++++ contrib/kyua/doc/kyua-debug.1.in | 21 ++++++++++- contrib/kyua/drivers/debug_test.cpp | 7 +++- contrib/kyua/drivers/debug_test.hpp | 6 +++- contrib/kyua/engine/debugger.hpp | 71 +++++++++++++++++++++++++++++++++++++ contrib/kyua/engine/scheduler.cpp | 8 +++++ contrib/kyua/model/test_case.cpp | 21 +++++++++++ contrib/kyua/model/test_case.hpp | 5 +++ 8 files changed, 206 insertions(+), 3 deletions(-) diff --git a/contrib/kyua/cli/cmd_debug.cpp b/contrib/kyua/cli/cmd_debug.cpp index b7a29b7ab804..c00920c1a3f7 100644 --- a/contrib/kyua/cli/cmd_debug.cpp +++ b/contrib/kyua/cli/cmd_debug.cpp @@ -29,6 +29,7 @@ #include "cli/cmd_debug.hpp" #include +#include #include "cli/common.ipp" #include "drivers/debug_test.hpp" @@ -38,13 +39,76 @@ #include "utils/cmdline/parser.ipp" #include "utils/cmdline/ui.hpp" #include "utils/format/macros.hpp" +#include "utils/process/executor.hpp" namespace cmdline = utils::cmdline; namespace config = utils::config; +namespace executor = utils::process::executor; using cli::cmd_debug; +namespace { + + +const cmdline::bool_option pause_before_cleanup_upon_fail_option( + 'p', + "pause-before-cleanup-upon-fail", + "Pauses right before the test cleanup upon fail"); + + +const cmdline::bool_option pause_before_cleanup_option( + "pause-before-cleanup", + "Pauses right before the test cleanup"); + + +/// The debugger interface implementation. +class dbg : public engine::debugger { + /// Object to interact with the I/O of the program. + cmdline::ui* _ui; + + /// Representation of the command line to the subcommand. + const cmdline::parsed_cmdline& _cmdline; + +public: + /// Constructor. + /// + /// \param ui_ Object to interact with the I/O of the program. + /// \param cmdline Representation of the command line to the subcommand. + dbg(cmdline::ui* ui, const cmdline::parsed_cmdline& cmdline) : + _ui(ui), _cmdline(cmdline) + {} + + void before_cleanup( + const model::test_program_ptr&, + const model::test_case&, + optional< model::test_result >& result, + executor::exit_handle& eh) const + { + if (_cmdline.has_option(pause_before_cleanup_upon_fail_option + .long_name())) { + if (result && !result.get().good()) { + _ui->out("The test failed and paused right before its cleanup " + "routine."); + _ui->out(F("Test work dir: %s") % eh.work_directory().str()); + _ui->out("Press any key to continue..."); + (void) std::cin.get(); + } + } else if (_cmdline.has_option(pause_before_cleanup_option + .long_name())) { + _ui->out("The test paused right before its cleanup routine."); + _ui->out(F("Test work dir: %s") % eh.work_directory().str()); + _ui->out("Press any key to continue..."); + (void) std::cin.get(); + } + }; + +}; + + +} // anonymous namespace + + /// Default constructor for cmd_debug. cmd_debug::cmd_debug(void) : cli_command( "debug", "test_case", 1, 1, @@ -53,6 +117,9 @@ cmd_debug::cmd_debug(void) : cli_command( add_option(build_root_option); add_option(kyuafile_option); + add_option(pause_before_cleanup_upon_fail_option); + add_option(pause_before_cleanup_option); + add_option(cmdline::path_option( "stdout", "Where to direct the standard output of the test case", "path", "/dev/stdout")); @@ -82,7 +149,10 @@ cmd_debug::run(cmdline::ui* ui, const cmdline::parsed_cmdline& cmdline, const engine::test_filter filter = engine::test_filter::parse( test_case_name); + auto debugger = std::shared_ptr< engine::debugger >(new dbg(ui, cmdline)); + const drivers::debug_test::result result = drivers::debug_test::drive( + debugger, kyuafile_path(cmdline), build_root_path(cmdline), filter, user_config, cmdline.get_option< cmdline::path_option >("stdout"), cmdline.get_option< cmdline::path_option >("stderr")); diff --git a/contrib/kyua/doc/kyua-debug.1.in b/contrib/kyua/doc/kyua-debug.1.in index 9e962a465421..263aef3667a7 100644 --- a/contrib/kyua/doc/kyua-debug.1.in +++ b/contrib/kyua/doc/kyua-debug.1.in @@ -25,7 +25,7 @@ .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE .\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 13, 2014 +.Dd March 25, 2025 .Dt KYUA-DEBUG 1 .Os .Sh NAME @@ -35,6 +35,8 @@ .Nm .Op Fl -build-root Ar path .Op Fl -kyuafile Ar file +.Op Fl -pause-before-cleanup-upon-fail +.Op Fl -pause-before-cleanup .Op Fl -stdout Ar path .Op Fl -stderr Ar path .Ar test_case @@ -84,6 +86,23 @@ Specifies the Kyuafile to process. Defaults to .Pa Kyuafile file in the current directory. +.It Fl -pause-before-cleanup-upon-fail , Fl p +Causes Kyua to pause right before the test cleanup routine is invoked if the +test fails. +When paused, Kyua waits for input on stdin, and any key press resumes +execution. +.sp +This can be useful for debugging system or end-to-end tests +which alter the system by creating artifacts such as files, network +interfaces, routing entries, firewall configuration, containers, etc. +This flag makes it possible to preserve such artifacts immediately after a test +failure, simplifying debugging. +Otherwise, these artifacts would be removed by the test cleanup routine or +by Kyua built-in cleanup mechanism. +.It Fl -pause-before-cleanup +The unconditional variant of the previous option. +This can be helpful for reproducing the infrastructure or fixture of a passing +test for further development or additional analysis. .It Fl -stderr Ar path Specifies the file to which to send the standard error of the test program's body. diff --git a/contrib/kyua/drivers/debug_test.cpp b/contrib/kyua/drivers/debug_test.cpp index 0717a9ad9419..6bd3d4dc0731 100644 --- a/contrib/kyua/drivers/debug_test.cpp +++ b/contrib/kyua/drivers/debug_test.cpp @@ -63,7 +63,8 @@ using utils::optional; /// /// \returns A structure with all results computed by this driver. drivers::debug_test::result -drivers::debug_test::drive(const fs::path& kyuafile_path, +drivers::debug_test::drive(engine::debugger_ptr debugger, + const fs::path& kyuafile_path, const optional< fs::path > build_root, const engine::test_filter& filter, const config::tree& user_config, @@ -92,6 +93,10 @@ drivers::debug_test::drive(const fs::path& kyuafile_path, const model::test_program_ptr test_program = match.get().first; const std::string& test_case_name = match.get().second; + const model::test_case test_case = test_program->find(test_case_name); + if (debugger) + test_case.attach_debugger(debugger); + scheduler::result_handle_ptr result_handle = handle.debug_test( test_program, test_case_name, user_config, stdout_path, stderr_path); diff --git a/contrib/kyua/drivers/debug_test.hpp b/contrib/kyua/drivers/debug_test.hpp index cbaa2f6acea0..0b4abce6f2ea 100644 --- a/contrib/kyua/drivers/debug_test.hpp +++ b/contrib/kyua/drivers/debug_test.hpp @@ -36,12 +36,15 @@ #if !defined(DRIVERS_DEBUG_TEST_HPP) #define DRIVERS_DEBUG_TEST_HPP +#include "engine/debugger.hpp" #include "engine/filters.hpp" #include "model/test_result.hpp" #include "utils/config/tree_fwd.hpp" #include "utils/fs/path_fwd.hpp" #include "utils/optional_fwd.hpp" +using engine::debugger; + namespace drivers { namespace debug_test { @@ -68,7 +71,8 @@ public: }; -result drive(const utils::fs::path&, const utils::optional< utils::fs::path >, +result drive(std::shared_ptr< debugger >, + const utils::fs::path&, const utils::optional< utils::fs::path >, const engine::test_filter&, const utils::config::tree&, const utils::fs::path&, const utils::fs::path&); diff --git a/contrib/kyua/engine/debugger.hpp b/contrib/kyua/engine/debugger.hpp new file mode 100644 index 000000000000..3c4d087f8ad0 --- /dev/null +++ b/contrib/kyua/engine/debugger.hpp @@ -0,0 +1,71 @@ +// Copyright 2025 The Kyua Authors. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in the +// documentation and/or other materials provided with the distribution. +// * Neither the name of Google Inc. nor the names of its contributors +// may be used to endorse or promote products derived from this software +// without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +/// \file engine/debugger.hpp +/// The interface between the engine and the users outside. + +#if !defined(ENGINE_DEBUGGER_HPP) +#define ENGINE_DEBUGGER_HPP + +#include "model/test_case_fwd.hpp" +#include "model/test_program_fwd.hpp" +#include "model/test_result_fwd.hpp" +#include "utils/optional_fwd.hpp" +#include "utils/process/executor_fwd.hpp" + +namespace executor = utils::process::executor; + +using utils::optional; + + +namespace engine { + + +/// Abstract debugger interface. +class debugger { +public: + debugger() {} + virtual ~debugger() {} + + /// Called right before test cleanup. + virtual void before_cleanup( + const model::test_program_ptr&, + const model::test_case&, + optional< model::test_result >&, + executor::exit_handle&) const = 0; +}; + + +/// Pointer to a debugger implementation. +typedef std::shared_ptr< debugger > debugger_ptr; + + +} // namespace engine + + +#endif // !defined(ENGINE_DEBUGGER_HPP) diff --git a/contrib/kyua/engine/scheduler.cpp b/contrib/kyua/engine/scheduler.cpp index 5179436073b8..8b2498514f6d 100644 --- a/contrib/kyua/engine/scheduler.cpp +++ b/contrib/kyua/engine/scheduler.cpp @@ -39,6 +39,7 @@ extern "C" { #include #include "engine/config.hpp" +#include "engine/debugger.hpp" #include "engine/exceptions.hpp" #include "engine/execenv/execenv.hpp" #include "engine/requirements.hpp" @@ -1396,8 +1397,15 @@ scheduler::scheduler_handle::wait_any(void) handle.stderr_file()); } + std::shared_ptr< debugger > debugger = test_case.get_debugger(); + if (debugger) { + debugger->before_cleanup(test_data->test_program, test_case, + result, handle); + } + if (test_data->needs_cleanup) { INV(test_case.get_metadata().has_cleanup()); + // The test body has completed and we have processed it. If there // is a cleanup routine, trigger it now and wait for any other test // completion. The caller never knows about cleanup routines. diff --git a/contrib/kyua/model/test_case.cpp b/contrib/kyua/model/test_case.cpp index f5f6a979eed3..faa4f3cebaf2 100644 --- a/contrib/kyua/model/test_case.cpp +++ b/contrib/kyua/model/test_case.cpp @@ -60,6 +60,9 @@ struct model::test_case::impl : utils::noncopyable { /// Fake result to return instead of running the test case. optional< model::test_result > fake_result; + /// Optional pointer to a debugger attached. + engine::debugger_ptr debugger; + /// Constructor. /// /// \param name_ The name of the test case within the test program. @@ -233,6 +236,24 @@ model::test_case::get_raw_metadata(void) const } +/// Attach a debugger to the test case. +void +model::test_case::attach_debugger(engine::debugger_ptr debugger) const +{ + _pimpl->debugger = debugger; +} + + +/// Gets the optional pointer to a debugger. +/// +/// \return An optional pointer to a debugger. +engine::debugger_ptr +model::test_case::get_debugger() const +{ + return _pimpl->debugger; +} + + /// Gets the fake result pre-stored for this test case. /// /// \return A fake result, or none if not defined. diff --git a/contrib/kyua/model/test_case.hpp b/contrib/kyua/model/test_case.hpp index 3c6fe32c8e62..c92ebacff98d 100644 --- a/contrib/kyua/model/test_case.hpp +++ b/contrib/kyua/model/test_case.hpp @@ -38,11 +38,13 @@ #include #include +#include "engine/debugger.hpp" #include "model/metadata_fwd.hpp" #include "model/test_result_fwd.hpp" #include "utils/noncopyable.hpp" #include "utils/optional_fwd.hpp" + namespace model { @@ -71,6 +73,9 @@ public: const metadata& get_raw_metadata(void) const; utils::optional< test_result > fake_result(void) const; + void attach_debugger(engine::debugger_ptr) const; + engine::debugger_ptr get_debugger() const; + bool operator==(const test_case&) const; bool operator!=(const test_case&) const; }; From nobody Sat May 17 21:18:24 2025 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 4b0GyV585cz5wDDZ; Sat, 17 May 2025 21:18:26 +0000 (UTC) (envelope-from mhorne@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0GyV0BMgz3p1V; Sat, 17 May 2025 21:18:26 +0000 (UTC) (envelope-from mhorne@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747516706; 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: in-reply-to:in-reply-to:references:references; bh=ZqBpBG853o52IGf2hWXrlxhCpFxEiMlDHwM2KvGSkx8=; b=RgCkT1WACnGQVoLv49NqLgUaada4COrPBBPIXYCUWB+Hlyc4WVV5En90TtywJ946lm88Zs pD//WpanAdNJgClK5lYfecl7QWGYLDZo+wxEAr1jY6i1ICuCrqd3cti0p5zVArMWkcOgLE wJXuzgE5KSH62ptCazfxW3S5A7yU+E4c5xlkaX0+G4DkiBH3vZf1uC5NhoAeYhNovURnLx PgtbL8ZATfY/uFw+5OSqX6B9u9Xyn/m3/bUoUf4bu5YONJeX8xWRc4z/HTBg3qAv30psqg Q8ewZopYpiQdAjqLJ0wxf2CwAAuKrvBIQWbqmkWuKRdoTr1SdASs9s35mOnafA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747516706; 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: in-reply-to:in-reply-to:references:references; bh=ZqBpBG853o52IGf2hWXrlxhCpFxEiMlDHwM2KvGSkx8=; b=efY9haV7tV42uys86eaxQsOnLuduRm3KocOuMeQuli+ZXDXnbf82SREFw94/LvkiLvqQWX AKRNUlYYUb/Zq3ptDplKx/2dM376sLn3IuXDZTFDWWf66lMWiTOoeEEgljhVO12QLp4AL1 xC1nLY9Q5/rFAjfV/HMDI+y0Z5stDZ8aXYfmuh1uoRlAP2HEows6Vvo3qxUt0FxsIGtiCN BevHUa/rNjD/uY4HxU6hbgP+uiT2kdIgx+3vKtnzqkD18dPDjgUYsjzS8/eb2klRlkb2yS uFq1rmcfiEJAPZtcYrn+9rs+i4mvZK/W163FUXcujOuc+pKOT/wDIW4+euINcw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747516706; a=rsa-sha256; cv=none; b=yxHlaay/ZnU7Vp60kjSYtubBpBSvEBCtqgBIDFJ/Hk3PB8XD9c190MVdhZat79hx+A7mdo HvKuzGIEV2MRC9fjZIi3Q3HZDFt9ClV1mpYv39uTZtTJTpmtxxjjNWg9bA1AOp5GIbVwWu ZhDSGJ7Z/BVgUfhJhWhReOsNdwUuUG5UwvcDbOB9mZwJ/bWrkzjhsxqPKejWoRpoGySyZt XA4kMw+GtGqzHabSkmGAffTcJkDCM7j1kC7DbbnIJPCitDJuucM6i+OMGX3GDdVVHxS7S3 sLJ6pccVAGktxFfk0+qciB/eHxl+OnWf7sb5KMVSHxU//J/4Jj76/4j5erb6iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [192.168.1.151] (hlfxns018gw-134-41-55-251.dhcp-dynamic.fibreop.ns.bellaliant.net [134.41.55.251]) (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 did not present a certificate) (Authenticated sender: mhorne) by smtp.freebsd.org (Postfix) with ESMTPSA id 4b0GyT4zGKzMZh; Sat, 17 May 2025 21:18:25 +0000 (UTC) (envelope-from mhorne@freebsd.org) Message-ID: Date: Sat, 17 May 2025 18:18:24 -0300 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false To: Lexi Winter , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> Content-Language: en-CA From: Mitchell Horne In-Reply-To: <202505150004.54F04FhR046897@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 5/14/25 21:04, Lexi Winter wrote: > The branch main has been updated by ivy: > > URL: https://cgit.FreeBSD.org/src/commit/?id=b61850c4e6f6b0f21b36da7238db969d9090309e > > commit b61850c4e6f6b0f21b36da7238db969d9090309e > Author: Lexi Winter > AuthorDate: 2025-05-14 14:26:24 +0000 > Commit: Lexi Winter > CommitDate: 2025-05-15 00:02:52 +0000 > > bridge(4): default net.link.bridge.member_ifaddrs to false > > As discussed on arch@, this behaviour is broken and confuses users, so > disable it by default. For 15.0-RELEASE, allow it to be re-enabled > using a sysctl, but the sysctl will be removed in 16.0R. > Hi Lexi, I just updated my workstation past this commit. I found that my main ethernet interface didn't receive an IP address, and had to set the sysctl to proceed as before. I have the following network configuration lines in my rc.conf: ifconfig_re0="DHCP" cloned_interfaces="bridge0 tap0" ifconfig_bridge0="addm re0 addm tap0 up" The simple setup is so that I can pass the tap0 device to QEMU/bhyve VMs for networking. What adjustment do I need to make to the above configuration to achieve the intended result "correctly"? I understand it is probably an easy fix, but I have a neanderthal's understanding of ifconfig :) Many thanks, Mitchell > Relnotes: yes > Reviewed by: kp, des > Approved by: des (mentor) > Differential Revision: https://reviews.freebsd.org/D50328 > --- > UPDATING | 5 +++++ > share/man/man4/bridge.4 | 18 ++++++++++++------ > sys/net/if_bridge.c | 4 ++-- > 3 files changed, 19 insertions(+), 8 deletions(-) > > diff --git a/UPDATING b/UPDATING > index d46db9e13794..ce2b60ea9353 100644 > --- a/UPDATING > +++ b/UPDATING > @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: > world, or to merely disable the most expensive debugging functionality > at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) > > +20250513: > + The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0, > + meaning that interfaces added to a bridge may not have IP addresses > + assigned. Refer to bridge(4) for more information. > + > 20250507: > UMASS quirks and auto-quirk probing has been overhauled. CAM now won't > send SYNCHRONIZE CACHE unless MODE PAGE 8 is present and valid. This > diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4 > index 2c3bfd6aedfa..45dea82325bc 100644 > --- a/share/man/man4/bridge.4 > +++ b/share/man/man4/bridge.4 > @@ -36,7 +36,7 @@ > .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE > .\" POSSIBILITY OF SUCH DAMAGE. > .\" > -.Dd May 5, 2025 > +.Dd May 13, 2025 > .Dt IF_BRIDGE 4 > .Os > .Sh NAME > @@ -163,14 +163,20 @@ To allow the host to communicate with bridge members, IP addresses > should be assigned to the > .Nm > interface itself, not to the bridge's member interfaces. > -Assigning IP addresses to bridge member interfaces is unsupported, but > -for backward compatibility, it is permitted if the > +Attempting to assign an IP address to a bridge member interface, or add > +a member interface with an assigned IP address to a bridge, will return > +an > +.Dv EINVAL > +.Dq ( "Invalid argument" ) > +error. > +For compatibility with older releases where this was permitted, setting > +the > .Xr sysctl 8 > variable > .Va net.link.bridge.member_ifaddrs > -is set to 1, which is the default. > -In a future release, this sysctl may be set to 0 by default, or may be > -removed entirely. > +to 1 will permit this configuration. > +This sysctl variable will be removed in > +.Fx 16.0. > .Sh IPV6 SUPPORT > .Nm > supports the > diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c > index 199418c4aa99..475977adf68a 100644 > --- a/sys/net/if_bridge.c > +++ b/sys/net/if_bridge.c > @@ -504,10 +504,10 @@ SYSCTL_BOOL(_net_link_bridge, OID_AUTO, log_mac_flap, > "Log MAC address port flapping"); > > /* allow IP addresses on bridge members */ > -VNET_DEFINE_STATIC(bool, member_ifaddrs) = true; > +VNET_DEFINE_STATIC(bool, member_ifaddrs) = false; > #define V_member_ifaddrs VNET(member_ifaddrs) > SYSCTL_BOOL(_net_link_bridge, OID_AUTO, member_ifaddrs, > - CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), true, > + CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), false, > "Allow layer 3 addresses on bridge members"); > > static bool From nobody Sat May 17 21:57:17 2025 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 4b0HqQ3Z3mz5wGtt; Sat, 17 May 2025 21:57:22 +0000 (UTC) (envelope-from kp@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0HqQ2n7qz4KRm; Sat, 17 May 2025 21:57:22 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747519042; 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: in-reply-to:in-reply-to:references:references; bh=JT5Rx3n1Pz8nUmrMRBXTQ8OdoINuSuVbhr0MV7Ctpto=; b=JUrhmwrPr5/r3eDgJsJq68GsrZyrHq0VByUAVrdmfNybNMw+nVFN+jev8Sc4zoKU9imBPZ /TaQgV1uPjJKkXWahwP9DmSaZVDemWSEzCcVr11RhBmd/ZfL8/piizkrnVLCjsk+u3m4pa /G3i17ss7NEWdcN8sPGpGLjO9btbVEQSZ889RneIfBKMrMxwkVVkHIxcryDf5IdE1b40Fc s8lyZeILqZfx5UCmmEym3LJW+ynZ30+PdYQ1WkTyJMSrOWAD3GjJDckhRVXRBNvXkdH1Tm 4r20wIXt33kLrWNpygg1OjUtI6dIGsK7nL3jyLK9yD9KfO7xwTehH1cbeM4cYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747519042; 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: in-reply-to:in-reply-to:references:references; bh=JT5Rx3n1Pz8nUmrMRBXTQ8OdoINuSuVbhr0MV7Ctpto=; b=YffAWNtYUdYjpNHbe4kYXDVzXJn5c2YszlDafwkHK1JhzHbPXgDCiRb5rB8JB6YsRIqnYT PMwVAQ1EM1wC/jxkqdAKl9ORHV85hbbPljMjno2bjD0urct4YV/jl8USnaSdONxu8WPHg6 d0Tqw8Me0kV65T0CrA6wKHnzMr+BLxmyrVZkxR6XRAQtahYm9/YMNnKm1gMCeHbm2Y2Koh SpXsSjXvKzzcavkZVG4RTB5tUYahhUY89izq4z/ny2aiom5p0nef+0mB5p7QiPAfrh///R hvPfYDHPRERff5+inRYUT+3YivFlW1JXIwsyYUiCYzANBQxcgcR6K9WDXeZ2UA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747519042; a=rsa-sha256; cv=none; b=MkumcHMucnR0mui359MnJrPVmiTHsJVkamwEhdYxyfnNV/TKVSk2hxElx2N0lH1P3OT5sh ET5z1gbHR8uO048mJIJWZUNJHYjCbeQDSrv9yIKbmvcP7UkvnJ8+spf+whShbG4kMiEdOQ 0ZlcA/1heqXZQa84OG1Q61hnJ83mZvSVlnRqXVTy4VqTO+SpFebCr4yanrSaxMLt8/FIlS VGZyqRkDaj521GSx+0nrV0QYfs0q6OQInnya/SlupBAuCXJlgr6sG/CsT3EyVIHYpTo2oq yGS6NzeRz1zJcXoI2UvUwM0/dBL+viUfGbFMZMk9qR0eyDixgCBcBOvFVfgjSA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (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 (2048 bits) client-digest SHA256) (Client CN "mx1.codepro.be", Issuer "R11" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4b0HqQ18bSzNfx; Sat, 17 May 2025 21:57:22 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id CD4FF52041; Sat, 17 May 2025 23:57:18 +0200 (CEST) From: Kristof Provost To: Mitchell Horne Cc: Lexi Winter , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false Date: Sat, 17 May 2025 23:57:17 +0200 X-Mailer: MailMate (2.0r6255) Message-ID: In-Reply-To: References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_MailMate_20E2E8F1-9F1C-4A79-AF23-A5301B2C373E_=" --=_MailMate_20E2E8F1-9F1C-4A79-AF23-A5301B2C373E_= Content-Type: text/plain; charset=UTF-8; format=flowed; markup=markdown Content-Transfer-Encoding: quoted-printable On 17 May 2025, at 23:18, Mitchell Horne wrote: > On 5/14/25 21:04, Lexi Winter wrote: >> The branch main has been updated by ivy: >> >> URL: = >> https://cgit.FreeBSD.org/src/commit/?id=3Db61850c4e6f6b0f21b36da7238db= 969d9090309e >> >> commit b61850c4e6f6b0f21b36da7238db969d9090309e >> Author: Lexi Winter >> AuthorDate: 2025-05-14 14:26:24 +0000 >> Commit: Lexi Winter >> CommitDate: 2025-05-15 00:02:52 +0000 >> >> bridge(4): default net.link.bridge.member_ifaddrs to false >> >> As discussed on arch@, this behaviour is broken and confuses = >> users, so >> disable it by default. For 15.0-RELEASE, allow it to be = >> re-enabled >> using a sysctl, but the sysctl will be removed in 16.0R. >> > > Hi Lexi, > > I just updated my workstation past this commit. I found that my main > ethernet interface didn't receive an IP address, and had to set the > sysctl to proceed as before. > > I have the following network configuration lines in my rc.conf: > > cloned_interfaces=3D"bridge0 tap0" This ought to do the trick: > ifconfig_bridge0=3D"DHCP addm re0 addm tap0=E2=80=9D Ensure the address gets assigned to the bridge, not to a bridge member = interface. =E2=80=94 Kristof --=_MailMate_20E2E8F1-9F1C-4A79-AF23-A5301B2C373E_= Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 17 May 2025, at 23:18, Mitchell Horne wrote:

On 5/14/25 21:04, Lexi Winter wrote:

The branch main has been updated by ivy:

URL: https://cgit.FreeBSD.org/src/co= mmit/?id=3Db61850c4e6f6b0f21b36da7238db969d9090309e

commit b61850c4e6f6b0f21b36da7238db969d9090309e
Author: Lexi Winter ivy@FreeBSD.or= g
AuthorDate: 2025-05-14 14:26:24 +0000
Commit: Lexi Winter ivy@FreeBSD.or= g
CommitDate: 2025-05-15 00:02:52 +0000

br=
idge(4): default net.link.bridge.member_ifaddrs to false

As discussed on arch@, this behaviour is broken and confuses users, so
disable it by default.  For 15.0-RELEASE, allow it to be re-enabled
using a sysctl, but the sysctl will be removed in 16.0R.

Hi Lexi,

I just updated my workstation past this commit. I found t= hat my main
ethernet interface didn't receive an IP address, and had to set the
sysctl to proceed as before.

I have the following network configuration lines in my rc= =2Econf:

cloned_interfaces=3D"bridge0 tap0"

This ought to do the trick:

ifconfig_bridge0=3D"DHCP addm re0 addm tap0=E2=80=9D=

Ensure the address gets assigned to the bridge, not to a = bridge member interface.

=E2=80=94
Kristof

--=_MailMate_20E2E8F1-9F1C-4A79-AF23-A5301B2C373E_=-- From nobody Sun May 18 03:11:58 2025 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 4b0QpQ2TXCz5wgnL; Sun, 18 May 2025 03:11:58 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0QpQ1kWnz3DV3; Sun, 18 May 2025 03:11:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747537918; 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=DVmKleE+BIPwL1rsC56yHTXsQSz5lxV85DNInC1nMQw=; b=i08JxMplzzkjWnqLvqUFki7vvWmO+rDHeQjL/ckKJUa0a5v/NIRbVQMLZE7OQ3OtYglSIX aqMtqGEwQn8z4QX3AoROdZR4VdoemgFKvacIohjmzdvZOviCK/O0NwsBVTaLJS8B0ulgCf AOP5l0ULI1fpzM4YcEvd0/htrx2SqEx2jUTvWBv+wZKWI7G3ekyizFMkMw+jD3m6LOdwc5 YLNf27z2psTms5AGDe17ud+dXc++c2Pc2GEUL5Chx7RU6nJRi6KYxlTh5nb2SpbcZpJZdi qLc722j9IuCa6JzpdQ0sXKb7PZPK2k/uvsu1xEtNa/xYeMnsZrX87O6izRYc1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747537918; 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=DVmKleE+BIPwL1rsC56yHTXsQSz5lxV85DNInC1nMQw=; b=RAAD5B80td5Jsp+RjmsU61IsKaDUZUjXb8U/ZAl3BRpeLqD0JE9ncLeunvWRBHFAe3bjWQ nlqSIDMrFC6hfRiV2AMxHT4RGTR6qDFznde1VNPqbzxTfEVwz4BphftgQs25Qd/z0iYFFt 1d3gMhYB8/qxK08j1AUZByCrT9/OIB3Xr0/qML61SAZiJJxsyWvjiNcYSQHOCZyZ1KWYKZ V8qcattC2VB/dUIqgiL2qyO5LJDKoFpzORA5MJ37M55LVRZ33NLyy2OA3Wt6rCzlb4r/ZV iiZm20arfnRo9ukwT+bMBCAAzovusGxO+H62hBTvz7VkCYSduvFM8+514Z14Yw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747537918; a=rsa-sha256; cv=none; b=E74Shu+PzmNkeXrrnXpGCKARbcAcAZ0If05YxHyMS/VEPcPmj2SLZEq8TN0tHKsn6dIWAo ttBZeV18ddYqx6e5HjjGSugab4e28GjHQp+ChyqKn+59z1pS5JjS/VHpLNf4wYFzQLNLur tw7S4g9856gBgjGsNrsJNq7++NGbLUR7mBU3qFGqyvThj+FlCy+bOd+56VTwHBxEQ4zzxX AOxQl02MfkSFfD1LM2q4EoBMipdWkqZcaafkt2U55yGuUz5HN7hZvyFnvadrlDW0ti5KpP B9VeQzvaqs6zDlbw+PJ+ztCp8OFJkuFDgcEM5NHYtiT2YUbjXggbhaL4va9hMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0QpQ1KmLz1FpJ; Sun, 18 May 2025 03:11:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54I3Bwgt003118; Sun, 18 May 2025 03:11:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54I3BwEg003115; Sun, 18 May 2025 03:11:58 GMT (envelope-from git) Date: Sun, 18 May 2025 03:11:58 GMT Message-Id: <202505180311.54I3BwEg003115@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ka Ho Ng Subject: git: 10d94b403add - stable/14 - sched: mark several kern.sched.* sysctls as CTLFLAG_RWTUN 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: khng X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 10d94b403add1454295fbcf554e3565791ce590d Auto-Submitted: auto-generated The branch stable/14 has been updated by khng: URL: https://cgit.FreeBSD.org/src/commit/?id=10d94b403add1454295fbcf554e3565791ce590d commit 10d94b403add1454295fbcf554e3565791ce590d Author: Ka Ho Ng AuthorDate: 2025-05-11 18:59:10 +0000 Commit: Ka Ho Ng CommitDate: 2025-05-18 03:11:35 +0000 sched: mark several kern.sched.* sysctls as CTLFLAG_RWTUN The following sysctls which are not touched during boot time initialization are marked as CTLFLAG_RWTUN so they can be set by loader tunables as well: - kern.sched.interact - kern.sched.preempt_thresh - kern.sched.static_boost - kern.sched.idlespins - kern.sched.balance - kern.sched.steal_idle - kern.sched.steal_thresh - kern.sched.trysteal_limit - kern.sched.always_steal MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50279 (cherry picked from commit 62f55b34ec42750adb1833414de07e88e5148899) --- sys/kern/sched_ule.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c index 4b99f1c486bf..1aa95e984033 100644 --- a/sys/kern/sched_ule.c +++ b/sys/kern/sched_ule.c @@ -3312,14 +3312,14 @@ SYSCTL_PROC(_kern_sched, OID_AUTO, quantum, "Quantum for timeshare threads in microseconds"); SYSCTL_INT(_kern_sched, OID_AUTO, slice, CTLFLAG_RW, &sched_slice, 0, "Quantum for timeshare threads in stathz ticks"); -SYSCTL_UINT(_kern_sched, OID_AUTO, interact, CTLFLAG_RW, &sched_interact, 0, +SYSCTL_UINT(_kern_sched, OID_AUTO, interact, CTLFLAG_RWTUN, &sched_interact, 0, "Interactivity score threshold"); -SYSCTL_INT(_kern_sched, OID_AUTO, preempt_thresh, CTLFLAG_RW, +SYSCTL_INT(_kern_sched, OID_AUTO, preempt_thresh, CTLFLAG_RWTUN, &preempt_thresh, 0, "Maximal (lowest) priority for preemption"); -SYSCTL_INT(_kern_sched, OID_AUTO, static_boost, CTLFLAG_RW, &static_boost, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, static_boost, CTLFLAG_RWTUN, &static_boost, 0, "Assign static kernel priorities to sleeping threads"); -SYSCTL_INT(_kern_sched, OID_AUTO, idlespins, CTLFLAG_RW, &sched_idlespins, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, idlespins, CTLFLAG_RWTUN, &sched_idlespins, 0, "Number of times idle thread will spin waiting for new work"); SYSCTL_INT(_kern_sched, OID_AUTO, idlespinthresh, CTLFLAG_RW, &sched_idlespinthresh, 0, @@ -3327,18 +3327,19 @@ SYSCTL_INT(_kern_sched, OID_AUTO, idlespinthresh, CTLFLAG_RW, #ifdef SMP SYSCTL_INT(_kern_sched, OID_AUTO, affinity, CTLFLAG_RW, &affinity, 0, "Number of hz ticks to keep thread affinity for"); -SYSCTL_INT(_kern_sched, OID_AUTO, balance, CTLFLAG_RW, &rebalance, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, balance, CTLFLAG_RWTUN, &rebalance, 0, "Enables the long-term load balancer"); SYSCTL_INT(_kern_sched, OID_AUTO, balance_interval, CTLFLAG_RW, &balance_interval, 0, "Average period in stathz ticks to run the long-term balancer"); -SYSCTL_INT(_kern_sched, OID_AUTO, steal_idle, CTLFLAG_RW, &steal_idle, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, steal_idle, CTLFLAG_RWTUN, &steal_idle, 0, "Attempts to steal work from other cores before idling"); -SYSCTL_INT(_kern_sched, OID_AUTO, steal_thresh, CTLFLAG_RW, &steal_thresh, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, steal_thresh, CTLFLAG_RWTUN, &steal_thresh, 0, "Minimum load on remote CPU before we'll steal"); -SYSCTL_INT(_kern_sched, OID_AUTO, trysteal_limit, CTLFLAG_RW, &trysteal_limit, - 0, "Topological distance limit for stealing threads in sched_switch()"); -SYSCTL_INT(_kern_sched, OID_AUTO, always_steal, CTLFLAG_RW, &always_steal, 0, +SYSCTL_INT(_kern_sched, OID_AUTO, trysteal_limit, CTLFLAG_RWTUN, + &trysteal_limit, 0, + "Topological distance limit for stealing threads in sched_switch()"); +SYSCTL_INT(_kern_sched, OID_AUTO, always_steal, CTLFLAG_RWTUN, &always_steal, 0, "Always run the stealer from the idle thread"); SYSCTL_PROC(_kern_sched, OID_AUTO, topology_spec, CTLTYPE_STRING | CTLFLAG_MPSAFE | CTLFLAG_RD, NULL, 0, sysctl_kern_sched_topology_spec, "A", From nobody Sun May 18 03:14:18 2025 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 4b0Qs62Qcqz5wgvx; Sun, 18 May 2025 03:14:18 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0Qs61THCz3Djk; Sun, 18 May 2025 03:14:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747538058; 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=uTQOSnpdrPKm53XyVoZQDBKgYYyFMwdSketccLojIe4=; b=o/4BaC9209JzumvxmmGCLYwJV5C/gTae/GUMntX5VKOy/8fGepqdT5m0sd1crn2Chhj4lk 9aIL0W5slsf+1OdQxx5fUYpzloL6hU8mweBX4XRhDCFRKNqA/dMxyln4TUiY+N1DALxorz 2l0zSvR5ohYPHLqFwsncmv/epCvyHGYLes2Di4c6uikwVHGq0ZY5ATupUXARDdcPUI55hp 4Ew2wnTcPRrSu0DYYcgrhtQmHv+Z1X28dVLcAxTdPuAZ0nfGbPwnDi2JNIjIpgxNm4qw8W ckSHxCEpSLaUC/5QVj0+uQ8Xvg66gytS9+4AXuw54+WklJSSMk74lHQjV2dguA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747538058; 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=uTQOSnpdrPKm53XyVoZQDBKgYYyFMwdSketccLojIe4=; b=mKyBc/nbzZETRWiJuvmmCuy0Y/KC3c4krKvtJU3zlqJKgDuYbCOm6GKk4IXShw74ErfZh2 EMT/H9xFI3Iv2EVzeupUmWHjo4UE2ONv36H9h7+UGOT+ObEpeJfSYCxJ/+sQHne7CRmC22 9KWMR6aDtvC89IOThqmQ+3c0dRZWPrECTUf8UMQZPuBIx6exx1g0TEUB65tj6rVKKHwmTb uuXqBDVz74o6jyQuLJ/Z0CyodOU4btfvlK8tpllrTdelnIr+dpv8Qqn/rvbSF8G/5FQU6Q WUWgYCkR/sM2d03hNzxwvodVt/EgpCsdYHdePE/aytF1j0IOuxhbzDkCVHlqFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747538058; a=rsa-sha256; cv=none; b=Ikp6YnDG3K9dDbA8v58M8C071YiI0nin4MS8XUziJTW2Efp0aeMt6C20aAMgtYs82ozFOu yd3APGD6BTVoe9eOQ2/m9UJNdSawZXKqEznjEy722dr7vBkeaa5xny/JKHBIb+7F7n4RyV Zt4vw3FuQtiBtBs2RNRrxIezdO9Z+EiAD7ASCNL3PZyI1RD5M1Iiq5QqQbCl5YVxM3Gpfa K2ZvuFTGi4YEj/ezAYIBeim4up8Zullgu/PY1g6MPFu7/McWTyENAJrDTgYSkOqCDDnNua 5gY6Rh8ImILnUjuvc/keGGKIRzOlJry2OILsHS1xq9/S3JfRDv3day+aNXb5Nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0Qs60tR7z1Fpg; Sun, 18 May 2025 03:14:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54I3EIKT005213; Sun, 18 May 2025 03:14:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54I3EIDX005210; Sun, 18 May 2025 03:14:18 GMT (envelope-from git) Date: Sun, 18 May 2025 03:14:18 GMT Message-Id: <202505180314.54I3EIDX005210@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 6fd6c29a236c - main - pctrie: use popmap in locked lookup_range 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6fd6c29a236c28c96c717662a2923d4a4674d0d3 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=6fd6c29a236c28c96c717662a2923d4a4674d0d3 commit 6fd6c29a236c28c96c717662a2923d4a4674d0d3 Author: Doug Moore AuthorDate: 2025-05-18 03:12:52 +0000 Commit: Doug Moore CommitDate: 2025-05-18 03:12:52 +0000 pctrie: use popmap in locked lookup_range When lookup_range is invoked with a lock held, the popmap field of a level-0 parent node can be used to find the next null child (if any) of that parent, allowing null checks to be removed from the loop and for the compiler to perform some loop unrolling. Reviewed by: alc, kib Differential Revision: https://reviews.freebsd.org/D50389 --- sys/kern/subr_pctrie.c | 36 ++++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/sys/kern/subr_pctrie.c b/sys/kern/subr_pctrie.c index 67566a2d1bfe..676e3595316a 100644 --- a/sys/kern/subr_pctrie.c +++ b/sys/kern/subr_pctrie.c @@ -630,16 +630,44 @@ _pctrie_lookup_range(struct pctrie *ptree, struct pctrie_node *node, base = (index + i) % PCTRIE_COUNT; if (base == 0 || parent == NULL || parent->pn_clev != 0) continue; - end = MIN(count, i + PCTRIE_COUNT - base); + + /* + * For PCTRIE_SMR, compute an upper bound on the number of + * children of this parent left to examine. For PCTRIE_LOCKED, + * compute the number of non-NULL children from base up to the + * first NULL child, if any, using the fact that pn_popmap has + * bits set for only the non-NULL children. + * + * The pn_popmap field is accessed only when a lock is held. + * To use it for PCTRIE_SMR here would require that we know that + * race conditions cannot occur if the tree is modified while + * accessed here. Guarantees about the visibility of changes to + * child pointers, enforced by memory barriers on the writing of + * pointers, are not present for the pn_popmap field, so that + * the popmap bit for a child page may, for an instant, + * misrepresent the nullness of the child page because an + * operation modifying the pctrie is in progress. + */ + end = (access == PCTRIE_SMR) ? PCTRIE_COUNT - base : + ffs((parent->pn_popmap >> base) + 1) - 1; + end = MIN(count, i + end); while (i < end) { node = pctrie_node_load(&parent->pn_child[base++], smr, access); - if ((val = pctrie_toval(node)) == NULL) + val = pctrie_toval(node); + if (access == PCTRIE_SMR && val == NULL) break; value[i++] = val; + KASSERT(val != NULL, + ("%s: null child written to range", __func__)); + } + if (access == PCTRIE_SMR) { + if (i < end) + break; + } else { + if (base < PCTRIE_COUNT) + break; } - if (i < end) - break; } if (parent_out != NULL) *parent_out = parent; From nobody Sun May 18 09:23:44 2025 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 4b0b3N50ljz5vvFS; Sun, 18 May 2025 09:23:44 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0b3N4J9yz3Vpw; Sun, 18 May 2025 09:23:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747560224; 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=osGEdkfd3tYy/fDaPt+ZtxWfkKMV9SUiyldDDIf3948=; b=uwLz6vLToZfwvhUwxW7nXn5eE/G3QHbnxlni+jWe2ljxPx+DcHj+1WOA5oVh55H+uOW2c/ X7Ph91ij6YBbFWO+lJn6F/qW82Uf2kc5pnJ2bhRfrazSTXy5GJgHhfI+nQZ7yYYAQ9y31q of3QkkLCV0iX2z/R9HFLUwFCtazptxjgM/dRjDXYVINZfI2U8TkwAc5ssbMGFBTmWxQbfB I6N832kEc3NtmrIxTzC8cgVv8NYwaprLpSTET+3wPaGmfKPXY2dvAYXBY1hUjtcSpUCiQf IPVIs5MXBrt9/lsHZ+eWxraMwb8zYGF5rM86gCEpXb258OHlDMJmYaPoLlvGkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747560224; 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=osGEdkfd3tYy/fDaPt+ZtxWfkKMV9SUiyldDDIf3948=; b=JInCAmXpp38Q3QgEOpsB4+itOePDT/UPqKFoRDrhXsaWpL5IUsiYNyz7HOVVRMOtEPy8qB JP6vUcdrLMSUPDMWjDtar+juDmeXhLNsKju7SBJKpVJ8cf3kjnZfXNAixlM9KTg04p/lC8 6NV1Z+bglonw9pBkZGYyLdlroes7p4OUL6HkL4RTATdep73YzrGxif0ffr/gpNHEm8suky R+1QJWpJE7FOP4wcSwRpFDZHW93JjTJiWEhpjGuSEg8NWoZgTvsr0spuKhOT0Ry6BgOqlV FX+YfBa+peQpI9YoLGfK1KmyA2Rxu4C8RtEh+1uxwfC7hWymPi/2HlILG83uCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747560224; a=rsa-sha256; cv=none; b=yFwLYDqLJ33b7/liSjZdvwGPLsa7h1eS3/OFkSkoP4vEnfC/XRnr5zryuVUNKtLxfnXsw6 DuHV6lG0vNyB3LQ4mFH086DFUFL9A9DX1xL9+crIkdSXDhUfJuH+ZzNoy0iuoo85evreZw eaNvt4rSUP0UbTGP7Kz4NsdCB0ESCfk/7eiWcUZxZCUVn4tmT8rhCLFOeTLdPgwl6yEBJS ZCv3PFtbhiCtHnpRSOoFvlkjUn5fYwFtqdPQ4gSkxIZ8Z+5kOwCrBFah5GsK4s0uVEb3Tn N+IPVrosNSPcIVN9KmvStrwP5na+gpB93/7xuViEJEQARp44KVuJtiOZJSMxiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0b3N3kckz1Qkc; Sun, 18 May 2025 09:23:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54I9Niu1010385; Sun, 18 May 2025 09:23:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54I9NicS010382; Sun, 18 May 2025 09:23:44 GMT (envelope-from git) Date: Sun, 18 May 2025 09:23:44 GMT Message-Id: <202505180923.54I9NicS010382@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 89549c234817 - main - nullfs lookup: cn_flags is 64bit 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 89549c2348170921cc4270ac95bfabfd78d42739 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=89549c2348170921cc4270ac95bfabfd78d42739 commit 89549c2348170921cc4270ac95bfabfd78d42739 Author: Konstantin Belousov AuthorDate: 2025-05-17 05:37:48 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-18 09:21:14 +0000 nullfs lookup: cn_flags is 64bit Reviewed by: olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50390 --- sys/fs/nullfs/null_vnops.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/fs/nullfs/null_vnops.c b/sys/fs/nullfs/null_vnops.c index bdf82432a2fb..a6b15c1dfa78 100644 --- a/sys/fs/nullfs/null_vnops.c +++ b/sys/fs/nullfs/null_vnops.c @@ -385,7 +385,7 @@ null_lookup(struct vop_lookup_args *ap) { struct componentname *cnp = ap->a_cnp; struct vnode *dvp = ap->a_dvp; - int flags = cnp->cn_flags; + uint64_t flags = cnp->cn_flags; struct vnode *vp, *ldvp, *lvp; struct mount *mp; int error; @@ -411,8 +411,8 @@ null_lookup(struct vop_lookup_args *ap) */ if ((ldvp->v_vflag & VV_ROOT) != 0 && (flags & ISDOTDOT) != 0) { KASSERT((dvp->v_vflag & VV_ROOT) == 0, - ("ldvp %p fl %#x dvp %p fl %#x flags %#x", - ldvp, ldvp->v_vflag, dvp, dvp->v_vflag, flags)); + ("ldvp %p fl %#x dvp %p fl %#x flags %#jx", + ldvp, ldvp->v_vflag, dvp, dvp->v_vflag, (uintmax_t)flags)); return (ENOENT); } From nobody Sun May 18 13:39:58 2025 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 4b0hl24THPz5wFMX; Sun, 18 May 2025 13:39:58 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0hl21mb0z3d5j; Sun, 18 May 2025 13:39:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747575598; 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=H/dVyd154gSHoOQoS1X0+cEVGI/GsN3ICL0gFp5PToM=; b=vFH1ViedEQRySwoqykeAsgmtUCaWnkNyVFwsI3QQf1UR579OtTF93tNfJqELM1bnWM5lIJ gnf/PtXjlWFfpwj4tuEj2AcredMiSoMSb2KO18rL9TuLDzHEBQVjkdUpHPzdyhgrj5ecd6 jG61xnqqPd4AF6ZjoGUFlCvj1TF1eNHNe3B4oyyfftXOnxT7kqqD/qcCLkHW+vl3mMH4JQ gcD9dphcXx0uSGhiNdQ1jvEtCzWC/eZkJ5QVG6x2UYgn+c28A1yz52GZhjr6wWRGDK6WFM 23iJKFFImkjPRdnKtDwuGjWbWWb8T0gRBLpXj8+Qtt69UADRnqV+MWLu4jDlsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747575598; 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=H/dVyd154gSHoOQoS1X0+cEVGI/GsN3ICL0gFp5PToM=; b=RE+DHf5SB6WifD4G0aQ07Jl7ohYmrjvwJuLEYjeK44qTAKC5ay0kHzsLuAW/vPfzTPxfIF r7erDwp65rbJbEI1IB3dhRuELptqhBKToOy3U+RKBaH8UqMuTE/SGgNx4G5IXdNcDlAYGH B6GnZgxtWmjyJ8LoVp0Xj9rxB8cXI/GAwkf+wg2Eqsz9QVnormQ/Ltsu9Th6GjUD9mmX1H PvdpbFO/SKv//98IzgVqg5BK5TeQTgTkxY7Usu8bC3HKy3sCrxCEZfLZvSaYjnkPiyAcVO MJNYwS/WiXtuyNYgqBv9497KtRZWk4Q6M1D+ijY2cI61dUwmFJoBodhq5vv/SA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747575598; a=rsa-sha256; cv=none; b=xVxH3M7Eio8RTRvDc+CnQOu1+1TBqCfPN+C3vS1jz8w+Bw1cw0xbuY2Cli1MiCQ4hHIK56 XYMfyJ13RZEwDZ/8FhT548T+mebeAorLGFHMnIqvtn89HpXG+ko7HyIMht6cjMMycok0Pp +gQei7nnSIAk1dJT8Eae9sod7BFchCy20uv6kWvBnKzTW+yJHKUGs6xb4Ohwv8WPw3guK2 NNalHAx6f8/dWghyihQOkAAcIGALpE3dM4fmeFQRv4E8ySic94AAIweLUUTRVBxscp5CMN +Q8DBQ05WKQGy7sR8yindhhxZnnoIuI3syzV8u8+h1N8d76At8B5dvuLfPzuQg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0hl21Ld0z5RS; Sun, 18 May 2025 13:39:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54IDdwdn081575; Sun, 18 May 2025 13:39:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54IDdwQ5081573; Sun, 18 May 2025 13:39:58 GMT (envelope-from git) Date: Sun, 18 May 2025 13:39:58 GMT Message-Id: <202505181339.54IDdwQ5081573@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Tijl Coosemans Subject: git: d9900b9ea2b2 - main - snd_hda: Add shutdown method 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tijl X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d9900b9ea2b27f7a0c2eda97841b9499e02e3ea7 Auto-Submitted: auto-generated The branch main has been updated by tijl: URL: https://cgit.FreeBSD.org/src/commit/?id=d9900b9ea2b27f7a0c2eda97841b9499e02e3ea7 commit d9900b9ea2b27f7a0c2eda97841b9499e02e3ea7 Author: Tijl Coosemans AuthorDate: 2025-05-18 13:38:02 +0000 Commit: Tijl Coosemans CommitDate: 2025-05-18 13:38:02 +0000 snd_hda: Add shutdown method Power down the device on shutdown similar to what is done in the case of suspend. The device may fail to attach on next boot without this. PR: 286385 Reviewed by: christos, adrian Differential Revision: https://reviews.freebsd.org/D50306 --- sys/dev/sound/pci/hda/hdac.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 602f5df93648..8714f615f846 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -1638,6 +1638,35 @@ hdac_attach2(void *arg) sizeof(sc->dev), sysctl_hdac_polling, "I", "Enable polling mode"); } +/**************************************************************************** + * int hdac_shutdown(device_t) + * + * Power down HDA bus and codecs. + ****************************************************************************/ +static int +hdac_shutdown(device_t dev) +{ + struct hdac_softc *sc = device_get_softc(dev); + + HDA_BOOTHVERBOSE( + device_printf(dev, "Shutdown...\n"); + ); + callout_drain(&sc->poll_callout); + taskqueue_drain(taskqueue_thread, &sc->unsolq_task); + bus_generic_shutdown(dev); + + hdac_lock(sc); + HDA_BOOTHVERBOSE( + device_printf(dev, "Reset controller...\n"); + ); + hdac_reset(sc, false); + hdac_unlock(sc); + HDA_BOOTHVERBOSE( + device_printf(dev, "Shutdown done\n"); + ); + return (0); +} + /**************************************************************************** * int hdac_suspend(device_t) * @@ -2148,6 +2177,7 @@ static device_method_t hdac_methods[] = { DEVMETHOD(device_probe, hdac_probe), DEVMETHOD(device_attach, hdac_attach), DEVMETHOD(device_detach, hdac_detach), + DEVMETHOD(device_shutdown, hdac_shutdown), DEVMETHOD(device_suspend, hdac_suspend), DEVMETHOD(device_resume, hdac_resume), /* Bus interface */ From nobody Sun May 18 16:37:30 2025 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 4b0mgv6xRdz5wT5v; Sun, 18 May 2025 16:37:31 +0000 (UTC) (envelope-from mhorne@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0mgv6NJwz420g; Sun, 18 May 2025 16:37:31 +0000 (UTC) (envelope-from mhorne@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747586251; 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=LJmGpHli5BGPQ+E0tRmsCal6mUjyNFZUZZtVNT7J9Dc=; b=WrnvAIZyNxrv7RudzdTPPcA7sHVgWwgU556xOPuP4RqFIZWxcd+5qfl7rwdx0O3RTfpGgC Vnv6+Mrhgb9NQpl0abU932Qm1g9cpfTehaFxBsKRnrMkJ71AubYrQ8sL5SPkGF9H5CLSyy uGOLNyuV4o4CLgDjA4AvtQwLDYolUAxewJbNbrhfwjlgZ9Mx8LoGL1fQp+iVquP33U9Yt9 xMJnVisUMNXulu3kqozsYDeqI4Vk/QIiZj98ZF/WiZOMix9D6tVXSj6OTIkF6tiE5EIO1k 3DLailubTw73Gky4l1cVPzgPdDv6bKTYOT43G4luzA/3kzRZZdHWxfdXKn+9Cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747586251; 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=LJmGpHli5BGPQ+E0tRmsCal6mUjyNFZUZZtVNT7J9Dc=; b=HEvkdJWJ/5CfkX3F6slF8G3eLUbnDoZAgLcWm5wk9mfNsh/krjYF2qQimtNkQkx2HL7HYt mi6aixrUn/HMdWoMGt8cK0/WzNJKyRI+6SPc9yqvM4wIeLnw3bJ84YgNmi6DD83VRgQwA1 F3D2n9J/Fra6wuhBxSyCXd/kLSInnvNpdOE/6CX7MQu5HKE3M1gLGK9BiYdP7bw6wINRW8 klWlggPu0fUCb3PYBeoDfW+WWnLxSA6SJkIQJglCjxDdOWDX5S+RwOtLKJ2pRZtMyMSFHE UCrzIFf7Z/nY8DNnsBL0WvIzTx2sSF1kJI2OFYuObvpJdgHCOwY3OT9OQnaMYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747586251; a=rsa-sha256; cv=none; b=LwTa577Hs4i8B7XDd6QMIjjGRIoFDgLvVua9nN28xIIoqDGWwHfpRgAzdB/iDN76LqO3hR UI3Jwo5pQqdF++ZWX2OoFn5vK+qDgkPjloYThrmoltwNBCWsDNgftjet/nK2hcJnXnUVPt CJqse/2qkdUtz+feGNAkCXE0P78XVzdUw+DlseW/pm9A94eZh4Ea+LBoChfRyyJewA9hup SfGViE9NzhqmuuNbRjXZLBeLuZfmaXnZ1JYqDkgWKbJrNi7aynDcYIPQErTcZbHwl69mhX jl6OvHcVUVfW2rySNlR/cqVdiw1sJIXO8O9hnjHMinXXhWxiDDC6OZSLfQWsHw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [192.168.1.216] (hlfxns018gw-134-41-55-251.dhcp-dynamic.fibreop.ns.bellaliant.net [134.41.55.251]) (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 did not present a certificate) (Authenticated sender: mhorne) by smtp.freebsd.org (Postfix) with ESMTPSA id 4b0mgv4NRPz13RD; Sun, 18 May 2025 16:37:31 +0000 (UTC) (envelope-from mhorne@freebsd.org) Message-ID: <94441836-bb03-4c80-b603-aaa2997c4d29@freebsd.org> Date: Sun, 18 May 2025 13:37:30 -0300 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false To: Kristof Provost Cc: Lexi Winter , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> Content-Language: en-CA From: Mitchell Horne In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 5/17/25 18:57, Kristof Provost wrote: > On 17 May 2025, at 23:18, Mitchell Horne wrote: > > On 5/14/25 21:04, Lexi Winter wrote: > > The branch main has been updated by ivy: > > URL: https://cgit.FreeBSD.org/src/commit/? > id=b61850c4e6f6b0f21b36da7238db969d9090309e cgit.FreeBSD.org/src/commit/? > id=b61850c4e6f6b0f21b36da7238db969d9090309e> > > commit b61850c4e6f6b0f21b36da7238db969d9090309e > Author: Lexi Winter ivy@FreeBSD.org > AuthorDate: 2025-05-14 14:26:24 +0000 > Commit: Lexi Winter ivy@FreeBSD.org > CommitDate: 2025-05-15 00:02:52 +0000 > > |bridge(4): default net.link.bridge.member_ifaddrs to false As > discussed on arch@, this behaviour is broken and confuses users, > so disable it by default. For 15.0-RELEASE, allow it to be re- > enabled using a sysctl, but the sysctl will be removed in 16.0R. | > > Hi Lexi, > > I just updated my workstation past this commit. I found that my main > ethernet interface didn't receive an IP address, and had to set the > sysctl to proceed as before. > > I have the following network configuration lines in my rc.conf: > > cloned_interfaces="bridge0 tap0" > > This ought to do the trick: > > ifconfig_bridge0="DHCP addm re0 addm tap0” > > Ensure the address gets assigned to the bridge, not to a bridge member > interface. > Here is what I ended up with: ifconfig_re0="up" cloned_interfaces="bridge0 tap0" ifconfig_bridge0="DHCP addm re0 addm tap0" synchronous_dhclient="YES" The bridge did not receive an address automatically without synchronous_dhclient set. I guess SYNCDHCP would be equivalent. Thanks for your pointer. > — > Kristof > From nobody Sun May 18 18:15:01 2025 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 4b0prQ2MVjz5wbh3; Sun, 18 May 2025 18:15:02 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0prQ0mBDz40bP; Sun, 18 May 2025 18:15:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747592102; 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=zm3dD752bp/aYyHaMfiC9LFYVBBkXravsfYJLqoIaLk=; b=HeV8ddh/sK66dN0s+oxQtTU8B/TZ9ucMuC8qsE4WzlZB4FtLjaZhNV9/y/dfg9ywTLVnIu gv1Qydn5UHNvbt8BEppiKhGR8UuxwtbJ1CPmJxI2UpTDoGoI+s/0c6AKmSy5t8PipWTbNN kQWG2i+fjLNKYS1QamVEaOfoQE2sFiYOQKq2PsosblmbjY6DvXcOiqDLm1vnk0xTZc4fdd AMwkGdFi/ResvyxXFhzpgtoprygCXFRj9A+vkSKaQMi3LwFFmGIj4HDgmuRNyFxXy+vDst jzmh4ie6xe+kbfg6O9w/TUya1eWYefi8MpFQ3MOZ7aDRdzi6jnYHaHTCn4E3dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747592102; 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=zm3dD752bp/aYyHaMfiC9LFYVBBkXravsfYJLqoIaLk=; b=H/kYMlxlV05dyeZ48eWWBPFPSgvJatzKy13TWqw7WPAdGzYRjV4Cw9ridIt4m5PC+JZKyE XbAuP8hjMo+CGu6vLsdzrafJ5YUDORfmk2ynPgFq8uW8HkI0mhbJJMGKCtTagwcFGFychB /c4D13YVuRZgdbEQ8nNxelxcRWbul3zSzeIHAcTsIUI0zNGPx77KhrgoJHqJkzlaLgZn9S 79Ac2rNhD7rQTB8jnNpH+cohmaZZZxUjM5aZoPdsdUAInLv133ydW5du59E6w+FPQnxazM F8Zg8fwoUT4/m2sQHdSiIgu3OKr5Izyc3Y5AUirGeiDQ1f5Hh7FIPSy9oigDZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747592102; a=rsa-sha256; cv=none; b=ZWX+mW3X72WvinxSPvk2oNAt30R/bJjYzZBXhDXBQH8raKg8y2F7dApAN1+anN/rwrHWTk 3IPV0CYCI1u5vyKqUx+sS0A1xHldMW4xMr8Nf8eWPgV2o82zARMC70xm1lsNbs+mO3b0f7 ex0vTPFTOSOt5PN9y4nZiI49UyVZgPXfdlDG1DZ7KrIH71EdTU7xo1pVJSFgD7WwB+P9jf 7EWzIV4VFJZe6TjgaNrFhi2LojxdUqt3q++Xo61Ng3jBJeiNUSMUz890TtvYGfbv3YTkcO 2AOg9W5iw/BTYPh7mqvKpYmiZZTsQSOhZIX902OHS9Q+GEG8Cfp8iYvkLBXoSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0prQ022NzDS1; Sun, 18 May 2025 18:15:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54IIF1iP005712; Sun, 18 May 2025 18:15:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54IIF1jU005710; Sun, 18 May 2025 18:15:01 GMT (envelope-from git) Date: Sun, 18 May 2025 18:15:01 GMT Message-Id: <202505181815.54IIF1jU005710@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 7fa19ee28c90 - main - vm_page: reset iterator after domainset drops lock 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7fa19ee28c90c159fdb98d2339455a5201dc5993 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=7fa19ee28c90c159fdb98d2339455a5201dc5993 commit 7fa19ee28c90c159fdb98d2339455a5201dc5993 Author: Doug Moore AuthorDate: 2025-05-18 18:09:00 +0000 Commit: Doug Moore CommitDate: 2025-05-18 18:09:00 +0000 vm_page: reset iterator after domainset drops lock Restore the WAITFAIL check on resetting the iterator in vm_page_alloc_domain_iter. It was dropped in 5239a9fb8662 ("vm_page: alloc_domain_iter") and blamed for a stress test failure. In fact, the failure was elsewhere, and removing the WAITFAIL check just made it less likely to be discovered, without fixing it. Modify vm_domainset_iter_page_init and vm_domainset_iter_page so that they can take an iterator argument and reset the iterator if vm_domainset_iter_releases and reacquires the object lock. Failure to reset the iterator in this case was the real problem. Reviewed by: alc, markj, kib Tested by: pho Differential Revision: https://reviews.freebsd.org/D50392 --- sys/vm/vm_domainset.c | 16 ++++++++++------ sys/vm/vm_domainset.h | 7 +++++-- sys/vm/vm_glue.c | 4 ++-- sys/vm/vm_page.c | 24 +++++++++++++----------- 4 files changed, 30 insertions(+), 21 deletions(-) diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index f6ac3c984cbf..7b8bf4c77663 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include @@ -199,7 +200,7 @@ vm_domainset_iter_first(struct vm_domainset_iter *di, int *domain) void vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, - vm_pindex_t pindex, int *domain, int *req) + vm_pindex_t pindex, int *domain, int *req, struct pctrie_iter *pages) { struct domainset_ref *dr; @@ -218,12 +219,12 @@ vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, VM_ALLOC_NOWAIT; vm_domainset_iter_first(di, domain); if (vm_page_count_min_domain(*domain)) - vm_domainset_iter_page(di, obj, domain); + vm_domainset_iter_page(di, obj, domain, pages); } int vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, - int *domain) + int *domain, struct pctrie_iter *pages) { if (__predict_false(DOMAINSET_EMPTY(&di->di_valid_mask))) return (ENOMEM); @@ -248,8 +249,11 @@ vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, return (ENOMEM); /* Wait for one of the domains to accumulate some free pages. */ - if (obj != NULL) + if (obj != NULL) { VM_OBJECT_WUNLOCK(obj); + if (pages != NULL) + pctrie_iter_reset(pages); + } vm_wait_doms(&di->di_valid_mask, 0); if (obj != NULL) VM_OBJECT_WLOCK(obj); @@ -339,7 +343,7 @@ vm_domainset_iter_ignore(struct vm_domainset_iter *di, int domain) int vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, - int *domain) + int *domain, struct pctrie_iter *pages) { return (EJUSTRETURN); @@ -347,7 +351,7 @@ vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, void vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, - vm_pindex_t pindex, int *domain, int *flags) + vm_pindex_t pindex, int *domain, int *flags, struct pctrie_iter *pages) { *domain = 0; diff --git a/sys/vm/vm_domainset.h b/sys/vm/vm_domainset.h index d2cfe362ae78..0d325a642f40 100644 --- a/sys/vm/vm_domainset.h +++ b/sys/vm/vm_domainset.h @@ -28,6 +28,8 @@ #ifndef __VM_DOMAINSET_H__ #define __VM_DOMAINSET_H__ +struct pctrie_iter; + struct vm_domainset_iter { struct domainset *di_domain; unsigned int *di_iter; @@ -40,9 +42,10 @@ struct vm_domainset_iter { }; int vm_domainset_iter_page(struct vm_domainset_iter *, struct vm_object *, - int *); + int *, struct pctrie_iter *); void vm_domainset_iter_page_init(struct vm_domainset_iter *, - struct vm_object *, vm_pindex_t, int *, int *); + struct vm_object *, vm_pindex_t, int *, int *, + struct pctrie_iter *); int vm_domainset_iter_policy(struct vm_domainset_iter *, int *); void vm_domainset_iter_policy_init(struct vm_domainset_iter *, struct domainset *, int *, int *); diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index c2a032b24000..94df2c2f9a9e 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -453,7 +453,7 @@ vm_thread_stack_create(struct domainset *ds, int pages) obj = vm_thread_kstack_size_to_obj(pages); if (vm_ndomains > 1) obj->domain.dr_policy = ds; - vm_domainset_iter_page_init(&di, obj, 0, &domain, &req); + vm_domainset_iter_page_init(&di, obj, 0, &domain, &req, NULL); do { /* * Get a kernel virtual address for this thread's kstack. @@ -480,7 +480,7 @@ vm_thread_stack_create(struct domainset *ds, int pages) vm_page_valid(ma[i]); pmap_qenter(ks, ma, pages); return (ks); - } while (vm_domainset_iter_page(&di, obj, &domain) == 0); + } while (vm_domainset_iter_page(&di, obj, &domain, NULL) == 0); return (0); } diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 91250060190d..eec85a5eb6f4 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2007,13 +2007,14 @@ vm_page_alloc_iter(vm_object_t object, vm_pindex_t pindex, int req, vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, object, pindex, &domain, &req); + vm_domainset_iter_page_init(&di, object, pindex, &domain, &req, + pages); do { m = vm_page_alloc_domain_iter(object, pindex, domain, req, pages); if (m != NULL) break; - } while (vm_domainset_iter_page(&di, object, &domain) == 0); + } while (vm_domainset_iter_page(&di, object, &domain, pages) == 0); return (m); } @@ -2142,7 +2143,8 @@ again: * Not allocatable, give up. */ (void)vm_domain_alloc_fail(vmd, object, req); - pctrie_iter_reset(pages); + if ((req & VM_ALLOC_WAITFAIL) != 0) + pctrie_iter_reset(pages); return (NULL); } @@ -2254,7 +2256,7 @@ vm_page_alloc_contig(vm_object_t object, vm_pindex_t pindex, int req, start_segind = -1; - vm_domainset_iter_page_init(&di, object, pindex, &domain, &req); + vm_domainset_iter_page_init(&di, object, pindex, &domain, &req, NULL); do { m = vm_page_alloc_contig_domain(object, pindex, domain, req, npages, low, high, alignment, boundary, memattr); @@ -2266,7 +2268,7 @@ vm_page_alloc_contig(vm_object_t object, vm_pindex_t pindex, int req, npages, low, high) == -1) { vm_domainset_iter_ignore(&di, domain); } - } while (vm_domainset_iter_page(&di, object, &domain) == 0); + } while (vm_domainset_iter_page(&di, object, &domain, NULL) == 0); return (m); } @@ -2576,12 +2578,12 @@ vm_page_alloc_noobj(int req) vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req); + vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); do { m = vm_page_alloc_noobj_domain(domain, req); if (m != NULL) break; - } while (vm_domainset_iter_page(&di, NULL, &domain) == 0); + } while (vm_domainset_iter_page(&di, NULL, &domain, NULL) == 0); return (m); } @@ -2595,13 +2597,13 @@ vm_page_alloc_noobj_contig(int req, u_long npages, vm_paddr_t low, vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req); + vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); do { m = vm_page_alloc_noobj_contig_domain(domain, req, npages, low, high, alignment, boundary, memattr); if (m != NULL) break; - } while (vm_domainset_iter_page(&di, NULL, &domain) == 0); + } while (vm_domainset_iter_page(&di, NULL, &domain, NULL) == 0); return (m); } @@ -3316,7 +3318,7 @@ vm_page_reclaim_contig(int req, u_long npages, vm_paddr_t low, vm_paddr_t high, ret = ERANGE; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req); + vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); do { status = vm_page_reclaim_contig_domain(domain, req, npages, low, high, alignment, boundary); @@ -3329,7 +3331,7 @@ vm_page_reclaim_contig(int req, u_long npages, vm_paddr_t low, vm_paddr_t high, "from vm_page_reclaim_contig_domain()", status)); ret = ENOMEM; } - } while (vm_domainset_iter_page(&di, NULL, &domain) == 0); + } while (vm_domainset_iter_page(&di, NULL, &domain, NULL) == 0); return (ret); } From nobody Sun May 18 18:53:14 2025 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 4b0qhr4V5Fz5wdsL for ; Sun, 18 May 2025 18:53:32 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0qhr3hhBz3Nmx for ; Sun, 18 May 2025 18:53:32 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-3a36e090102so186213f8f.2 for ; Sun, 18 May 2025 11:53:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747594406; x=1748199206; 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=cxNCOaLBDctQmHJe4XBDE13MxnVkI2C56g2bAfdEddU=; b=giZTcS7u/rA0mZaBlnYkUGIptI+fbzjgG125VhJL78D9LZzoiHq5HrLATPPD7T/BaY 4ydsYA8RHq9A1HSWvqIRL1wOF+lRx2QmaXS1u14shchm+w3PTuqQJdKq7+tf2RKITG3W iMG95Xlv+6IwrtHWKUN4vPjOrm9G9JRptY1oRxTrFQ8YGGxC0Q312mRMAzovj8PviLM4 it2cin6VIhXGnwKsHOxTJ9FgUbU+rTez1Wl9HTeK/AGFlthljv2VxPjW1+S9vTQq0k2k HN1TYNfCRx7PbYSotqwycAYf0c2OvmwYiFFT1CD7B5MSP0A11FczYWUGcRrB+QZJ2uYZ Ocxw== X-Forwarded-Encrypted: i=1; AJvYcCUJghf4VGr7RsHu8e8/yazzDmj926+93wh9149gJGZxUbv26jpE9azpRvd8CRZsT5RpfIO7wsXGXV8szgJ6ZO1QvuF7@freebsd.org X-Gm-Message-State: AOJu0YxlLT13KnyUeSI/A6GhW9AY6ub9ap7X6N4Y6AVojMgYavYHpdWT xwCIOOWSOJ5JUm7dfejf961hZNYqlidqakR6nMA/pDEd/wq5T1ekjokqEoPZHzJu+oU= X-Gm-Gg: ASbGnct0O/u8zHfawnT8hyeQ2yKlkdeCI2Gg+g/AkoiRLjnpZJHoAJhUuveS5tpVxym w2oO0+3ohGcomwNjctawTZxJebIV8Sg3F7xmLeszUlEK9B+DAbV9qt+OH0Ij+A054wTKFYAKajl o8+R55gj9b2em61FdfSkO+L8VET+m3n4JPvtt78xn0A4RKJTaVFnrBMsEryV0kL4yqG/9GThGRS 6RS6bTZWni3XB2pQTRgvTjzGtJqMZNyaoUfTqIbMoiEj8Jzqg/YOxlj+HzgUuBvTiWyjCGbssEC TH3z/I/Vv2M805e537t+0Xo80Hw1t6+oSyl1XNdV4cM9PTk9vqHsf75TOSF0OP1JIA== X-Google-Smtp-Source: AGHT+IH9Godj5jPni06aJFjWjOd5QM55p9n9PUIZbYwX/jAym1nRHTbLORqnS/6YrIY1ORgeejknow== X-Received: by 2002:a05:6000:2012:b0:3a3:5b88:fb2a with SMTP id ffacd0b85a97d-3a35c808a9cmr10548261f8f.7.1747594405739; Sun, 18 May 2025 11:53:25 -0700 (PDT) Received: from smtpclient.apple ([131.111.5.201]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a35ca4d263sm9978793f8f.3.2025.05.18.11.53.25 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 18 May 2025 11:53:25 -0700 (PDT) Content-Type: text/plain; charset=utf-8 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false From: Jessica Clarke In-Reply-To: Date: Sun, 18 May 2025 19:53:14 +0100 Cc: Lexi Winter , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> To: Mitchell Horne X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Rspamd-Queue-Id: 4b0qhr3hhBz3Nmx X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated 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-Spamd-Bar: ---- On 17 May 2025, at 22:18, Mitchell Horne wrote: > On 5/14/25 21:04, Lexi Winter wrote: >> The branch main has been updated by ivy: >>=20 >> URL: = https://cgit.FreeBSD.org/src/commit/?id=3Db61850c4e6f6b0f21b36da7238db969d= 9090309e >>=20 >> commit b61850c4e6f6b0f21b36da7238db969d9090309e >> Author: Lexi Winter >> AuthorDate: 2025-05-14 14:26:24 +0000 >> Commit: Lexi Winter >> CommitDate: 2025-05-15 00:02:52 +0000 >>=20 >> bridge(4): default net.link.bridge.member_ifaddrs to false >>=20 >> As discussed on arch@, this behaviour is broken and confuses = users, so >> disable it by default. For 15.0-RELEASE, allow it to be = re-enabled >> using a sysctl, but the sysctl will be removed in 16.0R. >>=20 >=20 > Hi Lexi, >=20 > I just updated my workstation past this commit. I found that my main > ethernet interface didn't receive an IP address, and had to set the > sysctl to proceed as before. >=20 > I have the following network configuration lines in my rc.conf: >=20 > ifconfig_re0=3D"DHCP" > cloned_interfaces=3D"bridge0 tap0" > ifconfig_bridge0=3D"addm re0 addm tap0 up" I also have a setup like this, as I suspect many do. The handbook even gives this configuration in places[1] (though note it=E2=80=99s = inconsistent in whether the interface or bridge should have the address). The lack of interaction with devd to automatically run dhclient as re0 comes and goes is also rather sucky, especially if re0 is wlan0. I appreciate that there may well be good technical reasons why this shouldn=E2=80=99t = be what people do, but (a) it is for specifically this case and I think it=E2=80=99s a bit shortsighted to go and break something we still = document today as correct (b) the UX needs improving specifically for bridging a real interface to one or more tap ones before we enforce this. Jess [1] = https://docs.freebsd.org/en/books/handbook/virtualization/#virtualization-= bhyve-prep > The simple setup is so that I can pass the tap0 device to QEMU/bhyve = VMs > for networking. >=20 > What adjustment do I need to make to the above configuration to = achieve > the intended result "correctly"? I understand it is probably an easy > fix, but I have a neanderthal's understanding of ifconfig :) >=20 > Many thanks, > Mitchell >=20 >> Relnotes: yes >> Reviewed by: kp, des >> Approved by: des (mentor) >> Differential Revision: https://reviews.freebsd.org/D50328 >> --- >> UPDATING | 5 +++++ >> share/man/man4/bridge.4 | 18 ++++++++++++------ >> sys/net/if_bridge.c | 4 ++-- >> 3 files changed, 19 insertions(+), 8 deletions(-) >>=20 >> diff --git a/UPDATING b/UPDATING >> index d46db9e13794..ce2b60ea9353 100644 >> --- a/UPDATING >> +++ b/UPDATING >> @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS = SLOW: >> world, or to merely disable the most expensive debugging = functionality >> at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) >>=20 >> +20250513: >> + The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to = 0, >> + meaning that interfaces added to a bridge may not have IP addresses >> + assigned. Refer to bridge(4) for more information. >> + >> 20250507: >> UMASS quirks and auto-quirk probing has been overhauled. CAM now = won't >> send SYNCHRONIZE CACHE unless MODE PAGE 8 is present and valid. This >> diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4 >> index 2c3bfd6aedfa..45dea82325bc 100644 >> --- a/share/man/man4/bridge.4 >> +++ b/share/man/man4/bridge.4 >> @@ -36,7 +36,7 @@ >> .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF = ADVISED OF THE >> .\" POSSIBILITY OF SUCH DAMAGE. >> .\" >> -.Dd May 5, 2025 >> +.Dd May 13, 2025 >> .Dt IF_BRIDGE 4 >> .Os >> .Sh NAME >> @@ -163,14 +163,20 @@ To allow the host to communicate with bridge = members, IP addresses >> should be assigned to the >> .Nm >> interface itself, not to the bridge's member interfaces. >> -Assigning IP addresses to bridge member interfaces is unsupported, = but >> -for backward compatibility, it is permitted if the >> +Attempting to assign an IP address to a bridge member interface, or = add >> +a member interface with an assigned IP address to a bridge, will = return >> +an >> +.Dv EINVAL >> +.Dq ( "Invalid argument" ) >> +error. >> +For compatibility with older releases where this was permitted, = setting >> +the >> .Xr sysctl 8 >> variable >> .Va net.link.bridge.member_ifaddrs >> -is set to 1, which is the default. >> -In a future release, this sysctl may be set to 0 by default, or may = be >> -removed entirely. >> +to 1 will permit this configuration. >> +This sysctl variable will be removed in >> +.Fx 16.0. >> .Sh IPV6 SUPPORT >> .Nm >> supports the >> diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c >> index 199418c4aa99..475977adf68a 100644 >> --- a/sys/net/if_bridge.c >> +++ b/sys/net/if_bridge.c >> @@ -504,10 +504,10 @@ SYSCTL_BOOL(_net_link_bridge, OID_AUTO, = log_mac_flap, >> "Log MAC address port flapping"); >>=20 >> /* allow IP addresses on bridge members */ >> -VNET_DEFINE_STATIC(bool, member_ifaddrs) =3D true; >> +VNET_DEFINE_STATIC(bool, member_ifaddrs) =3D false; >> #define V_member_ifaddrs VNET(member_ifaddrs) >> SYSCTL_BOOL(_net_link_bridge, OID_AUTO, member_ifaddrs, >> - CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), true, >> + CTLFLAG_RW | CTLFLAG_VNET, &VNET_NAME(member_ifaddrs), false, >> "Allow layer 3 addresses on bridge members"); >>=20 >> static bool From nobody Sun May 18 19:10:37 2025 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 4b0r4Y6qLHz5wfyk; Sun, 18 May 2025 19:10:37 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0r4Y6BTYz3WKK; Sun, 18 May 2025 19:10:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747595437; 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=ue4bnI0lAA4KHCPo3W27CP6dZZA2CUWjK/yi5fYQgLk=; b=RKPQOeg0fJHea9glJjMT/OGRAWSNcd1nOJK3BydgTwNTPgrAwN7PqfqrjH/pFRdw/BH769 K8AtoZ3j5S2fSDnLW3xD975eNT6X0la460nmmeqcfV8e3xnZVoQyfJUy3Wlvvx0gyVgtpe 323FUUOpBe3oytSjSayRo8P9O1YThZ+iNaFCJ7Ko7gmoja7Xug53CCAKSlLE9+OzOtAvtW OAuKEoEo1MZEdpyAKP1m5XEimd12FMi0OMsn6ms4zoio7XF3GsxCEgFhxdwX7Ic3SIa0MJ gHmCsek41DgOXJr8ZZifnF2ESimo7tq0tRBFkIeswnMQuI3bYykMwk8WYFWgIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747595437; 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=ue4bnI0lAA4KHCPo3W27CP6dZZA2CUWjK/yi5fYQgLk=; b=bXGSiklgofEOdxrC5TfuTtDWExqzD8YWx+Q1ebp7CxcQtyvrgf52KpfTmHus4MMp9qVKVY sEYCFUIyvwyjgEIvbkx/7yJqUk7CcCFzxMOVDJjLd1YsJQNZnUdxfufeobVaO2J5o0Znaj kqYp8PZA521VGzu0cJr9286D/Koo6dvLYqSviLGfD4f5TypRV5Id6KBKWe6DLg1Bv5n9/K g+OXh/NCYHy9EolbaaJDrrqNylgkGJtzlTSWphP0N3Y7cFotAQHbwc+P7tapDShWAnDzrz ch/60SEGwNnv+tmUOI2hmFYwc+effV/0Oc1JSey/NUzaWS4Fa3be8HmGZba2Ng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747595437; a=rsa-sha256; cv=none; b=OG5xEF0hiKJTHj65vzijkUflfyCG9Ek5+lEv3xkeIlxrnqu8anLmoWnp78LJIkSELzKMoA sXTCqS1XBw51CiKl9TkMdpjSxhbmThFmKLr8OFSApwUmVbP1Z/igPo9EUJQ6+waULBSL8E Cszrii3ngEd2lKkGQsdncYDYUx6nIeECh0rhrYEJAemGdL4UlMbW17U4rtdA/G3YGUIFcX qCiQe4D42PwOHsC54ZUX+I5b1DjaGY+YwzN+hp5YguI23kAVtsVjn7YNeoaK2IzxeBv6JY IvexRPKv4kl1w9GF08taf05T31gWmS7nHmLizW5KWl+8ULA7thm0N3k41IPAvA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0r4Y5W4qzWgC; Sun, 18 May 2025 19:10:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54IJAbW5011272; Sun, 18 May 2025 19:10:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54IJAbTg011269; Sun, 18 May 2025 19:10:37 GMT (envelope-from git) Date: Sun, 18 May 2025 19:10:37 GMT Message-Id: <202505181910.54IJAbTg011269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: a8aaf8039f2d - main - cp: Avoid closing an invalid file descriptor. 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a8aaf8039f2dd029ddf7fd396e047eb0bd3c8904 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=a8aaf8039f2dd029ddf7fd396e047eb0bd3c8904 commit a8aaf8039f2dd029ddf7fd396e047eb0bd3c8904 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-18 19:09:58 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-18 19:10:08 +0000 cp: Avoid closing an invalid file descriptor. * At the end of copy(), we always close to.dir, even though it can be AT_FDCWD (in the file-to-file case) or even -1 (if we failed to open or create the destination directory). While closing an invalid file descriptor is harmless, it's still bad form. * In the DIR_TO_DNE case, initialize to.dir to -1 to guard against the case where mkdir() fails so we never assign anything to to.dir and end up (harmlessly, luckily) closing stdin on our way to the exit. Coverity ID: 1609954 Fixes: 82fc0d09e862 Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50391 --- bin/cp/cp.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/bin/cp/cp.c b/bin/cp/cp.c index c76654f7df41..03b3a7a7bf41 100644 --- a/bin/cp/cp.c +++ b/bin/cp/cp.c @@ -296,6 +296,11 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) sep = strchr(to.base, '\0'); sep[0] = '/'; sep[1] = '\0'; + } else { + /* + * We will create the destination directory imminently. + */ + to.dir = -1; } if ((ftsp = fts_open(argv, fts_options, NULL)) == NULL) @@ -633,8 +638,9 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) } if (errno) err(1, "fts_read"); - fts_close(ftsp); - close(to.dir); + (void)fts_close(ftsp); + if (to.dir != AT_FDCWD && to.dir >= 0) + (void)close(to.dir); free(recpath); return (rval); } From nobody Sun May 18 19:30:52 2025 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 4b0rWw6Lkbz5whh2; Sun, 18 May 2025 19:30:52 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0rWw2nRnz3jgk; Sun, 18 May 2025 19:30:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747596652; 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=EU9IBcZvV2H9oZjH2Tn3mw3YV7Mpcng/pfPuIqABAdc=; b=CVS4gmNtZZ9bhcpbUqvQM0n+s3kuPUphjsSDMKDVWspabHNNI8EUYN+S3OsjWVO2bzq175 +VwqvH9R/aKOGN858XD6xwNrEKDnNVXJ0Xo+TguKuE/u99bTUIWtwSPtUQbKggMm5QPTmv ry1rQLf/RtiD4AWWSArPr4y9i8ERpJBMvgMRenxtnxsWEhzGrRJ8n31zE+Eqi/31lEDmqh 4uLqsZOdC1+qA40QW+KZjJgNgy2Gw/ddpw5x6olVaXkeM/FtKsgUPc/+QW3SZck9dGujEy Dj2zUxWfkPg0L+HR844n2Ny5S+aT+dMiZQbw+otRvbAZTZTYjYc+gWermWHhtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747596652; 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=EU9IBcZvV2H9oZjH2Tn3mw3YV7Mpcng/pfPuIqABAdc=; b=xoApi12gg62sfs946zmWODCxTLs739jDaS4Pp2KVNQpYqX1M0mn60DTTVaExgC3pyUKwC/ LYvg0j+DCVS9tnZmkJvFxOsmWjUO29UdyJZzxNVSw6xxFTQFmglSvnLCRIwoZqQq38eBqi qGkDfZwLxCln8jPHeQV+D2g0cfYqp8+0SerhnoGFaKzv1d7qkGoD4/ac6bfJUgabjxAkL0 wm04IxJ3ZJ6UPd06/Iyzsl+h8PA2sRWruJC2Vw1s2nIsHBOMk/jPWZe3bRkyJ9/yVclek4 RKYlfWbNI9p65hHXxj9B07OrRHRRzxENDdMTPSloAKQTW+CwcpqJJ5jsoDoWRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747596652; a=rsa-sha256; cv=none; b=QyjWwDmHRDwfRXplXaiNrlNj49RhZaB/hGnPNT+VLbjay2jN1DaTTbdCs5Ny+CYuzqzriZ BNDZ/RRUdQ8w/i8IWgiiKx24WgJTUJhpHaahuoY4kDkJiQsYLHQOGMF2z2nzSL+xNyLgxw 3/AOBDKVx5Outhwl/VUWb4TF7dxonDzq80ygXBjocrzq/sBdHhCJyBkiHMFnXb+aeTMZ8f pPuU3c4W3Ko7mf7fQXcDY2jBt5EAtcAm4wdXMPYZVM1IUnhRGlyLjOieN6zrECQW1tsvI7 GpfNvTR+RNY4+cHciW+hrP3+KLWzJ5+dKn2qSY19R3PtErxibvOANJpueT8ReA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0rWw22v7zY2Q; Sun, 18 May 2025 19:30:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54IJUqV3048867; Sun, 18 May 2025 19:30:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54IJUqDh048864; Sun, 18 May 2025 19:30:52 GMT (envelope-from git) Date: Sun, 18 May 2025 19:30:52 GMT Message-Id: <202505181930.54IJUqDh048864@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Ziaee Subject: git: 6426b0131012 - stable/14 - e6000sw.4: Add HISTORY 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6426b01310122c7563d982ec21c91b98f3f5bd3b Auto-Submitted: auto-generated The branch stable/14 has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=6426b01310122c7563d982ec21c91b98f3f5bd3b commit 6426b01310122c7563d982ec21c91b98f3f5bd3b Author: Alexander Ziaee AuthorDate: 2025-05-15 01:02:25 +0000 Commit: Alexander Ziaee CommitDate: 2025-05-18 19:30:37 +0000 e6000sw.4: Add HISTORY MFC after: 3 days Reviewed by: mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D50358 (cherry picked from commit c808bee35b1129abd9af137204ebd15559b90b5b) --- share/man/man4/e6000sw.4 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/share/man/man4/e6000sw.4 b/share/man/man4/e6000sw.4 index 4c10a99b249a..c1740b899bc9 100644 --- a/share/man/man4/e6000sw.4 +++ b/share/man/man4/e6000sw.4 @@ -37,3 +37,8 @@ Marvell 88E6141 .Xr e6060sw 4 , .Xr etherswitch 4 , .Xr etherswitchcfg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 11.0 . From nobody Sun May 18 20:05:07 2025 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 4b0sHR47YJz5wlbk; Sun, 18 May 2025 20:05:07 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0sHR3VWMz44p6; Sun, 18 May 2025 20:05:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747598707; 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=zWQklP7RSRS/T/YOeY8izuOAvtHG/VksmJRWOrI5lCc=; b=K8GhLZN9Xlo8YipyUposFCkSaUoUslNfUC0LeWTbPbeZ/iU2gUeBHXRedMMihdikTSrU5d My+RDChwkoiO46HUwZdW+lLeHvP8TzQ3R4AXgxbJRhhivvav8AYMcaaWnoCdLr5lCeo+np xKz2RcmV0lgtR0OT3Mh1Tje+QFme0EWDFU1cMmxyRxEdaB26ohNQ+5FXWCkq7LH6d05Ne5 WWnRCgZtho4Y3pzGNjPsbLqAu0BdwVE6NZb39F5JGkRnu3JtbdoVbn72cv6zjY2GgHT/B8 JecxS/2lrxfWd9AtYzwbkzqvHI2gerbDCm8YU8Tw5cICfYo4D2DyYmuv2DH6ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747598707; 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=zWQklP7RSRS/T/YOeY8izuOAvtHG/VksmJRWOrI5lCc=; b=GrqJBJNqCLpmLB4KMFC+VRjc9gjQa8w9uPN2SVDU6873lBBxoU/vZfmv30643TXpDW5/ZD HsWuy17eipJ/IvBnLS4JrVZI/QvRk4B1vuzVTYoxK/4ULPhanfclLS00ZoSGQFkg+ahX0j p8R20HEuFMP0mAFzvlnyi/w6ucMWTrM0nWsUFkLa96hwKx/HuLA6ebcvKHh5RGL5dDV5b2 3kJiWV/qnnjhCgM2dhS3rUia8hAH2NwHbd8fbbsFphzAAdpjvW61ZfNDh42WN6m/Zh7OXn 5s1u6Nn5ShQkTzAxcOg0Hdzyr+FyDtaW8hxnvrGt44gP9CqXIEl50DuiHdjkAA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747598707; a=rsa-sha256; cv=none; b=C9J5+ecLvtbP3STHt61tDR5+dI1CELjAHdSwLB4uA7tEGQIV41XuN2yYATwFKxYi/IBXYR v39Rf0vwa5Yuw+d2quOBaZTqqy/TzVYf2JcMowN9GFWKvxunQKqejKS/lGvwtC8VsGikKr MF8hCZhqHbqgAITupfuTsQo3xpOPR5qYn9lVXHpcj0Z4CoCOiUDuaZlv3JTlZkSNwCSUFZ ewWoAtbWSFUr+NojgN+m2ewrBrLNH2XeJopvQSdfMjdwmqlc1PmXrToJ7yQHVzDrY7YSqL mgQrqFJJgVkvHbo9R1W9WzMsZi/fwyiUZiPQZkmtwxLzZ3lbK7zwOwuQ0y99Sw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0sHR2qGGzZRq; Sun, 18 May 2025 20:05:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54IK578Z012651; Sun, 18 May 2025 20:05:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54IK57eG012648; Sun, 18 May 2025 20:05:07 GMT (envelope-from git) Date: Sun, 18 May 2025 20:05:07 GMT Message-Id: <202505182005.54IK57eG012648@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dimitry Andric Subject: git: c809b0184d0a - main - libc++: fix compiling with -fmodules 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c809b0184d0a6543bc5327d4252fa56a07ce4689 Auto-Submitted: auto-generated The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=c809b0184d0a6543bc5327d4252fa56a07ce4689 commit c809b0184d0a6543bc5327d4252fa56a07ce4689 Author: Jordan Gordeev AuthorDate: 2025-05-18 19:55:05 +0000 Commit: Dimitry Andric CommitDate: 2025-05-18 20:04:42 +0000 libc++: fix compiling with -fmodules In /usr/include/c++/v1/__locale_dir/locale_base_api.h, xlocale.h is included without first including stdio.h and stdlib.h, which causes functions like strtoll_l() or sscanf_l() to not be declared. When compiling with -fmodules, locale_base_api.h is processed separately due to a declaration in /usr/include/c++/v1/module.modulemap, and this will cause errors due to the above undeclared symbols. Meanwhile, upstream has substantially reorganized this part of libc++'s headers, so apply a minimalistic workaround: specifically when compiling with -fmodules, add includes of stdio.h and stdlib.h. PR: 286342 MFC after: 1 week --- .../llvm-project/libcxx/include/__locale_dir/locale_base_api.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/contrib/llvm-project/libcxx/include/__locale_dir/locale_base_api.h b/contrib/llvm-project/libcxx/include/__locale_dir/locale_base_api.h index 8c000c558c52..e43e87375069 100644 --- a/contrib/llvm-project/libcxx/include/__locale_dir/locale_base_api.h +++ b/contrib/llvm-project/libcxx/include/__locale_dir/locale_base_api.h @@ -25,7 +25,13 @@ # include <__locale_dir/locale_base_api/fuchsia.h> #elif defined(__wasi__) || defined(_LIBCPP_HAS_MUSL_LIBC) # include <__locale_dir/locale_base_api/musl.h> -#elif defined(__APPLE__) || defined(__FreeBSD__) +#elif defined(__APPLE__) +# include +#elif defined(__FreeBSD__) +# if __has_feature(modules) +# include +# include +# endif # include #endif From nobody Sun May 18 20:23:03 2025 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 4b0shD2LKpz5wn00; Sun, 18 May 2025 20:23:08 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-qv1-xf2d.google.com (mail-qv1-xf2d.google.com [IPv6:2607:f8b0:4864:20::f2d]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0shC6Cckz4JW4; Sun, 18 May 2025 20:23:07 +0000 (UTC) (envelope-from markjdb@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-qv1-xf2d.google.com with SMTP id 6a1803df08f44-6f8b0fdd5ffso33688356d6.0; Sun, 18 May 2025 13:23:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747599786; x=1748204586; darn=freebsd.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :from:to:cc:subject:date:message-id:reply-to; bh=fMujNrHIfrUFrmE4CNM/PSjTKf9QrHzWOQ8pA+v3swk=; b=cVtg3bIKw6vkLTmK71/nxrPFKe4rF/PsWrkymUH0vbBFlB6BSjBFfRd8UwF3OnyGmC mMSmfp3CdRQLtZ+09dbMl8OTWjDHYW+Dx3TiPqKOE6+u/nm7JOu3MxagcBUEsz/WbCfN rwsInIwht0+LItVgGC+5dm4yQe8InQCGoQVo87q2B5dcE6kTgyZ4dvq1dtunhIQ+JJwI DO1dZxhG/nntikr6ppypS97bpNWaxoKfxlTXGYQUst9UGPCAE9t1X3UF6/oHXot6gt88 lamOGbW/YQK08GP8wZN9vrLku1wKcnv62hBeSbA3++KMhcZymUNSSRijYToDJZXHTB0z +qfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747599786; x=1748204586; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=fMujNrHIfrUFrmE4CNM/PSjTKf9QrHzWOQ8pA+v3swk=; b=c1QUfTTYChEg/+T4np5gy8EoCG0KpcwKhv5QQ/YCiNCulwnxaeBUvZcc0sHTwZs8lF a3FBRZ7c50nTv3nM/EwMHzpHb1l4tqnZxa9IhVILAGHNHmxhRism8DBe1FgJzq65acqd EHd0YQOzCogj6+W8r4v3e+5HofoJedGcKblhZUqvhKaCT4IQ/8X2oPwdrVMprHDMpTLz pk/lPpkFjbXXns7q97nmAJZyvF4aa9KvafsC/eCQ2ZipJwnSm1ZkReFz638fFenHgPfD QqGdiH18Uo25Bz4Zv4rU+5iCs6M0gLXyhPiUbnpeuuWBMkS4iWZfq6bgFVtw+aMuVV8M 4M5A== X-Forwarded-Encrypted: i=1; AJvYcCUMnWK59EChn6uu4Z41c9LkegD5N2XrsqKv8uZjmIFU23vdgpYZtinabjN4c1yRJFsf/CQJegJP2EUt1stPXlc=@freebsd.org, AJvYcCUfMUtxeJFeVxSNBm2HnrNKrOnNyLrwpwkf6neG7P3wrufhiFIZ1eOCsmliXrW2Airi6HL3gmYyUZBVrrMv0wI9+tKS@freebsd.org, AJvYcCV+s4BFYS1jVD2mX8NtA9/X97M+y2MDk4wV2KmTXnb9PMa2nysFTpnPPPgfkaP1Wt23zWgh@freebsd.org, AJvYcCVIJcx+XVhZojumr6n9HmTEuHkTK+vLBib2ze2bTfniuTZugeITMTqVA57LrV/zpCwn8fTWm4IO1V9RwndSZvqFazfF+5A=@freebsd.org X-Gm-Message-State: AOJu0YwmC2smUuunib/2tjtLs2Wxquo8ki6uW7Vc10jJ3DOxIkH0VzZC eQ5lFtFIEyQjy/o8WnkEjy7vZm6Y2T/Tc2M7IwQyTIRnzqTfsFhJJ9FlxD0252I5 X-Gm-Gg: ASbGnctq5+JBFP1E3BnfJeLwJ+tDX+C5dMI964c7oQIlSVxpftZCeTSeoDnpViQ6Q+E JwQ2OcpR4YjIV0GiiCv5/uz7y94KaeB1gfF5YvFZHXpQG0UA/h8sNjqItAJ2DkkEG9C8HWOj3qo OVtTL/OzlzrGmwOpFvrgmJs0uYcqISRVVjEtErFNe2I5nI99zQbyH3T2xK8OscYP02xx43oWR7+ Dbr6MsXdaZ01O7qIwLTxoS1GYG3fUEF2ZaCcPjVYRplbBSBVXvmkUyznUhjOylw7fcK1ANRgkMy agVyTUHBnwqWvs7I3TXi1PuDwnvZTIbV5RG5r4xvgOIWpul5fAJ0W5gv8LKIS/pEjw== X-Google-Smtp-Source: AGHT+IGSebZhZU1ceMGD5a1GDgojv8Xyx6AEoMmtaXjVFnKEAVs+DAu1eAD+5aBK3DVLm39pK871iw== X-Received: by 2002:ad4:5f8e:0:b0:6ef:3de:5ff7 with SMTP id 6a1803df08f44-6f8b0866722mr188771766d6.15.1747599786571; Sun, 18 May 2025 13:23:06 -0700 (PDT) Received: from nuc (192-0-220-237.cpe.teksavvy.com. [192.0.220.237]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6f8b0966098sm45079786d6.82.2025.05.18.13.23.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 May 2025 13:23:06 -0700 (PDT) Date: Sun, 18 May 2025 16:23:03 -0400 From: Mark Johnston To: Jessica Clarke Cc: Mitchell Horne , Lexi Winter , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false Message-ID: References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Queue-Id: 4b0shC6Cckz4JW4 X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Spamd-Bar: ---- On Sun, May 18, 2025 at 07:53:14PM +0100, Jessica Clarke wrote: > On 17 May 2025, at 22:18, Mitchell Horne wrote: > > On 5/14/25 21:04, Lexi Winter wrote: > >> The branch main has been updated by ivy: > >> > >> URL: https://cgit.FreeBSD.org/src/commit/?id=b61850c4e6f6b0f21b36da7238db969d9090309e > >> > >> commit b61850c4e6f6b0f21b36da7238db969d9090309e > >> Author: Lexi Winter > >> AuthorDate: 2025-05-14 14:26:24 +0000 > >> Commit: Lexi Winter > >> CommitDate: 2025-05-15 00:02:52 +0000 > >> > >> bridge(4): default net.link.bridge.member_ifaddrs to false > >> > >> As discussed on arch@, this behaviour is broken and confuses users, so > >> disable it by default. For 15.0-RELEASE, allow it to be re-enabled > >> using a sysctl, but the sysctl will be removed in 16.0R. > >> > > > > Hi Lexi, > > > > I just updated my workstation past this commit. I found that my main > > ethernet interface didn't receive an IP address, and had to set the > > sysctl to proceed as before. > > > > I have the following network configuration lines in my rc.conf: > > > > ifconfig_re0="DHCP" > > cloned_interfaces="bridge0 tap0" > > ifconfig_bridge0="addm re0 addm tap0 up" > > I also have a setup like this, as I suspect many do. I do too. > The handbook even > gives this configuration in places[1] (though note it’s inconsistent in > whether the interface or bridge should have the address). The lack of > interaction with devd to automatically run dhclient as re0 comes and > goes is also rather sucky, especially if re0 is wlan0. I appreciate > that there may well be good technical reasons why this shouldn’t be > what people do, but (a) it is for specifically this case and I think > it’s a bit shortsighted to go and break something we still document > today as correct (b) the UX needs improving specifically for bridging a > real interface to one or more tap ones before we enforce this. I agree. Even if the setup is broken in some way, it works fine for simple cases and this will be a nasty surprise when upgrading. It would be much better IMO to print a warning and let users fix their configuration before flipping the default. That is how we handled interface address configuration without a netmask: commit d8237b955528 added a warning, and some time later it was turned into a fatal error. I really think it would be better to do something similar here. From nobody Sun May 18 20:30:55 2025 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 4b0ssT3lLqz5wnQq for ; Sun, 18 May 2025 20:31:09 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0ssT14PCz4PfZ for ; Sun, 18 May 2025 20:31:09 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-445b11306abso3771245e9.3 for ; Sun, 18 May 2025 13:31:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747600267; x=1748205067; 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=0tdfexrHXCC4tJgqMeIDRqgBuE5cTJCzKVuIaNTAROY=; b=W+7iv9hry9P+6lXshlUi7UzraDqwIUgCu/1Y45ZKITUZpN5Ikz2nfX1pOF+X6Lckni 6Rxyc6/PQho+eF7meVaEajl4NELIPIWidlYEz+vO5kGVun7rYQlLQJN7wJpXERleFG1f NjsRwWH3j+M2cMVzkmEgoeJLmfUqvI1+BJzVDIqKmwHkYGmNJSFqyUBPpuqAQHgUu6J/ 3UvcxAoVccPOlF1Lzv9mE5D+yb6Su2FtLfu1VhjHOZ6tHQPnxcbfccDzg4oTLwppTMHn S1WJaqrvaTroBH3AszWoSCE8UzKqgovjGiOGTdPvT/2IFrDJ0JyJ/WMm8v9q1HEa47eG n9WA== X-Forwarded-Encrypted: i=1; AJvYcCUNEuOV3f2grsKuK3OIFbNEGsnDp4gnU+uaJnbeCSdMMEBIJcNSeQuRzQjDmbNLsF5MxYUpOzhPUCYHhiHGxGMxOrvS@freebsd.org X-Gm-Message-State: AOJu0Yw2dz56IicB1zAb96ZzW6hG3IPSwuVAFPOeoHoE5uVJZjYhFV7g JXCd3Jj6E5AnFdWpS+HWh+oWV4DS5Uiafz2qBT7fp/jwRN6FycvtcWFz63krT97lpdc= X-Gm-Gg: ASbGncsregEg+sRulmuZz/jjMKLrAoBeeRZCG4q6QLoXvwBIm/9mDu4h9iW0IIhUeGC S7bD12NJSlX0d/nGWcEazKigougwCaH9qRGQqBQno6N7YfrPJRBQsi6+ZFSADvWR9A3QxM9XJ3h HPjjbwXtzMx26sZvGqKMyqZM5/ljcdL5GejisfsK/M6coLGmLYvG/Xc6ZLc0rGxKJuDN2/cLbch zn/TasZMNxWjWVMQe95v/4rMdHEVYlo4C+tnzEm7G2/twFIsVdIdm4gAIDZnFXVuK2rir5L9CAb ikCgv4zJbJwW07sHbnpH+fW74ZrjfOhMowXOk8ew0LuxUObJcYjua3jZ4B/yqWC40Q== X-Google-Smtp-Source: AGHT+IG+i7r6o+Sc2/8ZbKLKDrwOBsB2nipqrz6jYDUHvrRHYgIGlPwozYlUleAnG6g1YlWXBREGwQ== X-Received: by 2002:a5d:598f:0:b0:3a2:1f1:c3ad with SMTP id ffacd0b85a97d-3a35fe92b09mr7363774f8f.26.1747600266933; Sun, 18 May 2025 13:31:06 -0700 (PDT) Received: from smtpclient.apple ([131.111.5.201]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a35ca5a03fsm10190013f8f.22.2025.05.18.13.31.06 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 18 May 2025 13:31:06 -0700 (PDT) Content-Type: text/plain; charset=utf-8 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false From: Jessica Clarke In-Reply-To: Date: Sun, 18 May 2025 21:30:55 +0100 Cc: Mitchell Horne , Lexi Winter , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <82C39393-F26D-4E7B-B62A-5CC9C85BAD1A@freebsd.org> References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> To: Mark Johnston X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Rspamd-Queue-Id: 4b0ssT14PCz4PfZ X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated 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-Spamd-Bar: ---- On 18 May 2025, at 21:23, Mark Johnston wrote: > On Sun, May 18, 2025 at 07:53:14PM +0100, Jessica Clarke wrote: >> On 17 May 2025, at 22:18, Mitchell Horne wrote: >>> On 5/14/25 21:04, Lexi Winter wrote: >>>> The branch main has been updated by ivy: >>>>=20 >>>> URL: = https://cgit.FreeBSD.org/src/commit/?id=3Db61850c4e6f6b0f21b36da7238db969d= 9090309e >>>>=20 >>>> commit b61850c4e6f6b0f21b36da7238db969d9090309e >>>> Author: Lexi Winter >>>> AuthorDate: 2025-05-14 14:26:24 +0000 >>>> Commit: Lexi Winter >>>> CommitDate: 2025-05-15 00:02:52 +0000 >>>>=20 >>>> bridge(4): default net.link.bridge.member_ifaddrs to false >>>>=20 >>>> As discussed on arch@, this behaviour is broken and confuses = users, so >>>> disable it by default. For 15.0-RELEASE, allow it to be = re-enabled >>>> using a sysctl, but the sysctl will be removed in 16.0R. >>>>=20 >>>=20 >>> Hi Lexi, >>>=20 >>> I just updated my workstation past this commit. I found that my main >>> ethernet interface didn't receive an IP address, and had to set the >>> sysctl to proceed as before. >>>=20 >>> I have the following network configuration lines in my rc.conf: >>>=20 >>> ifconfig_re0=3D"DHCP" >>> cloned_interfaces=3D"bridge0 tap0" >>> ifconfig_bridge0=3D"addm re0 addm tap0 up" >>=20 >> I also have a setup like this, as I suspect many do. >=20 > I do too. >=20 >> The handbook even >> gives this configuration in places[1] (though note it=E2=80=99s = inconsistent in >> whether the interface or bridge should have the address). The lack of >> interaction with devd to automatically run dhclient as re0 comes and >> goes is also rather sucky, especially if re0 is wlan0. I appreciate >> that there may well be good technical reasons why this shouldn=E2=80=99= t be >> what people do, but (a) it is for specifically this case and I think >> it=E2=80=99s a bit shortsighted to go and break something we still = document >> today as correct (b) the UX needs improving specifically for bridging = a >> real interface to one or more tap ones before we enforce this. >=20 > I agree. Even if the setup is broken in some way, it works fine for > simple cases and this will be a nasty surprise when upgrading. >=20 > It would be much better IMO to print a warning and let users fix their > configuration before flipping the default. That is how we handled > interface address configuration without a netmask: commit d8237b955528 > added a warning, and some time later it was turned into a fatal error. > I really think it would be better to do something similar here. That would go some way to helping, but I really do not want =E2=80=9CI = want a tap interface for a VM=E2=80=9D and =E2=80=9CI want devd+dhclient to = manage DHCP for me automatically=E2=80=9D to be incompatible, which based on the thread = here it sounds like they are. Somebody needs to fix that before we even warn users not to do what they=E2=80=99re doing, let alone make it an error. Especially given that SYNCDHCP is not compatible with WPA, given that just runs wpa_supplicant as a daemon and relies on that later triggering dhclient? Jess From nobody Sun May 18 20:39:52 2025 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 4b0t3b4nXsz5wp0J for ; Sun, 18 May 2025 20:39:55 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: from mail-il1-x12a.google.com (mail-il1-x12a.google.com [IPv6:2607:f8b0:4864:20::12a]) (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 "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0t3b2ff7z3Flg for ; Sun, 18 May 2025 20:39:55 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Authentication-Results: mx1.freebsd.org; none Received: by mail-il1-x12a.google.com with SMTP id e9e14a558f8ab-3d948ce7d9dso11642025ab.2 for ; Sun, 18 May 2025 13:39:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd.org; s=google; t=1747600794; x=1748205594; darn=freebsd.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=bsJSypQoZiyA7sG+7oRZ0NJU5TOR8WUooCK2tncu37g=; b=WT4jeUh5F6SQBjE7j5QYXAee+RJVjF5NITw3oLHCPS59T7ip+KM7E468+OmcAaemPN tV6P9ko8oSPrhBsXEcstlawo8pBKUFRBUt7Z+WBzd980u0wzgxNq8eJ5l2QCcH3x8iCY 4y64PrW1AOQUYXKDzpyEFAR+1P05mwp7DYjMI+0Fg8HK0SgeHMnWHmGb6AEWImvyCqwK P6ZTylR9pzz2dopBHLjYUHhxbHfFtcNX3i2JQd0KO7hZQcg3qJZ4ClU3eDr7HZm/GiTu 5DyLpPxnwCslZt1aiKhUgnfRmE7BwrS0wnRgJMktbKDXJ7j+Eg7ZH8WaVbnuHfg7L42r I1QQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747600794; x=1748205594; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=bsJSypQoZiyA7sG+7oRZ0NJU5TOR8WUooCK2tncu37g=; b=qD4zxlAGSXgvYelrJ2FASfgQRC5fI0B7i3tl9J0T0WTy75l/fKPHLfTlfdAJQfaZOn gfHUHc+A7vOtNXjrI40awToNCzFvbepXbxTV+LG1jrqqexqe0RISAPqiqRA1GMKLu+f3 8787t0MHe9KBl0jUAmNKOBzLfEEWL9Py2nSV00nurVlzVckhGCaCJxReHRFbLiVV5oy0 11+6Un/BNuphA4edPuXfEbC3u7SI94UxoQp9ncxW9mcYfc6eilRaiVl8TS5TYGKgmz+Y v8XVZTPlAp0sJWd0rLB1ryGYYlfs5MnFSQE3f/3N0FU3B3oagMR0GPggBM/jtkcS1lkQ Tm5w== X-Forwarded-Encrypted: i=1; AJvYcCWjajurejN7N+VtcQZe63/1qauN8rtpbGvJnpketu9Rm45kgzaxb/FKfvmdQjk7XeJYuwLn5yB0YwDb0g4b/QaBxr5Z@freebsd.org X-Gm-Message-State: AOJu0YzW/eE6jgkiZ5TBdwalpkt0eP+Gg/7fiBZYPeE1fnPWBgrFq0wb 391rJBR7HiG6Fni5F29pJnUqCA0xyaDrs4zFnuun6gMNXj+btWwhs8aRk6WQvgagkWE= X-Gm-Gg: ASbGnctZykG63ztWmgJxXkSBisZo+nRbINepN9218hIdOfXjHUXQkIDCzm/Pyzzg2yA rB5A8p77tKBJVdjQ3Y6faBMctEYI1Kz6D3p64/sm11GlKlSW4Oqjhz8dsmIgTwY8N7ZLItJgJoM OzHM53UF4LiNlm+S6XR6QG9sqESIXYXiIaYTc3qBerRLRtwbEQagj+n8EHPfewtyLXyLoR/qJSM a7bPi9STxdkvF85XfogUZ2kbNxovfia+sZQ3W3saaYxymDrby8ON5AFRrvh70jZWjd4ZPX/mLTW QnUYHh2++wgKGqHCu7fif5vbiH0MPqRKvgC068lo7OsI X-Google-Smtp-Source: AGHT+IGwosFe4rr5re/1ExSPeuvfU+nMTQcYeYyawEtGfT9l0dsL5tg7Tw1YIxiv/IbOkXigIUGfMQ== X-Received: by 2002:a05:6e02:2409:b0:3da:7cb7:78c with SMTP id e9e14a558f8ab-3db84303117mr97822045ab.11.1747600793852; Sun, 18 May 2025 13:39:53 -0700 (PDT) Received: from mutt-hbsd ([2001:470:4001:1::95]) by smtp.gmail.com with ESMTPSA id 8926c6da1cb9f-4fbcc4b2dd5sm1406072173.110.2025.05.18.13.39.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 May 2025 13:39:53 -0700 (PDT) Date: Sun, 18 May 2025 20:39:52 +0000 From: Shawn Webb To: Mitchell Horne Cc: Kristof Provost , Lexi Winter , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false Message-ID: X-Operating-System: FreeBSD mutt-hbsd 14.2-STABLE-HBSD FreeBSD 14.2-STABLE-HBSD HARDENEDBSD-14-STABLE amd64 X-PGP-Key: https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/blob/master/Shawn_Webb/03A4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc References: <202505150004.54F04FhR046897@gitrepo.freebsd.org> <94441836-bb03-4c80-b603-aaa2997c4d29@freebsd.org> 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="vyhrsnil4f2vwizj" Content-Disposition: inline In-Reply-To: <94441836-bb03-4c80-b603-aaa2997c4d29@freebsd.org> X-Rspamd-Queue-Id: 4b0t3b2ff7z3Flg X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Spamd-Bar: ---- --vyhrsnil4f2vwizj Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Subject: Re: git: b61850c4e6f6 - main - bridge(4): default net.link.bridge.member_ifaddrs to false MIME-Version: 1.0 On Sun, May 18, 2025 at 01:37:30PM -0300, Mitchell Horne wrote: > On 5/17/25 18:57, Kristof Provost wrote: > > On 17 May 2025, at 23:18, Mitchell Horne wrote: > >=20 > > On 5/14/25 21:04, Lexi Winter wrote: > >=20 > > The branch main has been updated by ivy: > >=20 > > URL: https://cgit.FreeBSD.org/src/commit/? > > id=3Db61850c4e6f6b0f21b36da7238db969d9090309e > cgit.FreeBSD.org/src/commit/? > > id=3Db61850c4e6f6b0f21b36da7238db969d9090309e> > >=20 > > commit b61850c4e6f6b0f21b36da7238db969d9090309e > > Author: Lexi Winter ivy@FreeBSD.org > > AuthorDate: 2025-05-14 14:26:24 +0000 > > Commit: Lexi Winter ivy@FreeBSD.org > > CommitDate: 2025-05-15 00:02:52 +0000 > >=20 > > |bridge(4): default net.link.bridge.member_ifaddrs to false As > > discussed on arch@, this behaviour is broken and confuses users, > > so disable it by default. For 15.0-RELEASE, allow it to be re- > > enabled using a sysctl, but the sysctl will be removed in 16.0R= =2E | > >=20 > > Hi Lexi, > >=20 > > I just updated my workstation past this commit. I found that my main > > ethernet interface didn't receive an IP address, and had to set the > > sysctl to proceed as before. > >=20 > > I have the following network configuration lines in my rc.conf: > >=20 > > cloned_interfaces=3D"bridge0 tap0" > >=20 > > This ought to do the trick: > >=20 > > ifconfig_bridge0=3D"DHCP addm re0 addm tap0=E2=80=9D > >=20 > > Ensure the address gets assigned to the bridge, not to a bridge member > > interface. > >=20 >=20 > Here is what I ended up with: >=20 > ifconfig_re0=3D"up" > cloned_interfaces=3D"bridge0 tap0" > ifconfig_bridge0=3D"DHCP addm re0 addm tap0" > synchronous_dhclient=3D"YES" I wonder if there is any security difference between DHCP on the physical interface versus the bridge. Having the bridge grab an IP via DHCP (or IPv6 SLAAC/DHCPv6) means that VMs much be trusted. If a VM is compromised, a threat actor could redirect traffic on the host by running their own DHCP service in the compromised VM. The question I have, though, is: is this an issue when the physical interface is used instead of the bridge for grabbing a dynamic IP? So, I guess I'm asking, is there any security difference between the following two configs: =3D=3D=3D=3D BEGIN CONFIG 1 =3D=3D=3D=3D ifconfig_re0=3D"DHCP" cloned_interfaces=3D"bridge0 tap0" ifconfig_bridge0=3D"addm re0 addm tap0" =3D=3D=3D=3D END CONFIG 1 =3D=3D=3D=3D =3D=3D=3D=3D BEGIN CONFIG 2 =3D=3D=3D=3D ifconfig_re0=3D"up" cloned_interfaces=3D"bridge0 tap0" ifconfig_bridge0=3D"DHCP addm re0 addm tap0" synchronous_dhclient=3D"YES" =3D=3D=3D=3D END CONFIG 2 =3D=3D=3D=3D Thanks, --=20 Shawn Webb Cofounder / Security Engineer HardenedBSD Signal Username: shawn_webb.74 Tor-ified Signal: +1 303-901-1600 / shawn_webb_opsec.50 https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A= 4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc --vyhrsnil4f2vwizj Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAmgqRYkACgkQ/y5nonf4 4foZ8g//ZtZzTpRGuhm6AqTVliV7NWAbnZf5aVGggtWVxGGPQPnfJbYwJirQKLgQ 9JM/NOtKpM7cIcqKFpIntobc4ZqVYYcmQlHGyyBeoemCodske4vWflNbinVbl5SX Xcrqt6MjQt56KUy6FqLbNiHqBOuPz6cONpBulK/7uyXIGUIgEo67pA/WIWiqfPr6 d5KT25d5SY68nZnB4IjZ/zadPeG7FS40gi6aeDSw8DmuUaHvzSRvVzdBsWpEOpEU vhX2+lsL2mYhk2/nKUZYEp23+/0f2VHNSIIqPok+wD3zEQ7mUNY/quBJjZ/kNele zyP1AJBqe2nrqgvpuvtp6Kv5b6kmtbArKo4j+6ZNtqlBnUx4EFgsPgNEXk9IyL+j 2n8Mj7Rr2ekhfg2xpG/2kGX7FlsKGNDplpqzVcGNHrwW7X5U8J5npFhL0BCOSeRv 1XykhxP1F/zEgkO+jjWKASPTlvWLUQ/L8cgu+//C6jGGm2juR1DFoDcFOLP08y1G rFTeF/f6cqBVwE0c90mPKM6zdfC//BsBTqaQI6f5ERmG4SAhAiQsTGpmg/Dg+/gB 5pBVZB+yP4jDN0Vpdt6sYksh3F/bbz7RynizMTvVrZfTodjQTzFa3of7t5NIR90y U0r7+IpH1sQKp18pKNsBlUCUiF2YIveu1MTHofH5oAim/4L2a/I= =dC7m -----END PGP SIGNATURE----- --vyhrsnil4f2vwizj-- From nobody Sun May 18 21:38:27 2025 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 4b0vM83RDMz5vtP3; Sun, 18 May 2025 21:38:28 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0vM816b8z3wcx; Sun, 18 May 2025 21:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747604308; 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=aCBrfKvtiooLFE+URaWg6FIPV+jbZiNK9XJteTatd/w=; b=CRyOyzEskWokeKWSygocnGqHzmbBH2nzEvxkyNMMLgov+W+kJC9qqDCuFyyNjdXOQS3CIr 61zXttIzw+a+mV6H21auGAWtB5T1bdtD74RuxEpsU4Y+HtKE/ymJugZQmGscfhGbWjfQvk 6y40NCindBFfr5ueiXdh/hf6I/B+dKzTMmdi9tgZ7jlkZB+M+fCPfS5zFNsfEt62vesvMM qpuNPDKWH7oXqvWEiMeH/ocIKICQJzHvS/ZUdy4PqY5+SHFU3SlUMN0F0XNyNcTM8Ha5hr KfX2opSSA7Xw6VdXuedmkkh+l5XsIy4I/DG8+zHWIiaWs48RtEzh7e+YZ06mFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747604308; 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=aCBrfKvtiooLFE+URaWg6FIPV+jbZiNK9XJteTatd/w=; b=xVoaPKDk9lNX0WwkxK1VzbuD0wD5ESoEg9u48rzmmjhJgSfoLIXNv8yFTQLluOis7BPQuF 4czQYBa1VUrIE17Aflp0dm9+vXvXt9xG4mjpT4jeKaqkciQ4EvFlvykrNf7csnPgPDTWT4 n4uTFPKK14HE/6YaPiLN7MGT0lu2LMU38stPwYfdmE5POv3iKPNfS4JiQlFfGyqgD7Gjfq 8VY1J0i4sXtni1efYIfvZum2bu8OMlBZfl11z5KC3VQj6u+UgNjZl2NkI9gk/PrS1Xj7B2 TMLSrQssJvPHdSRzGpZqU1wlmqxQzdp9HrDvLGCbZvfTvvQJE75ZySB5bZSTYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747604308; a=rsa-sha256; cv=none; b=j2jxi3QZakIYzrWyvXl+j/Ac5X32p/2FlCTn4r1MC3QWmwPfqS90FM1Jogz+ZWP3qUilSN 6tKIkFNyBjhPe5N4lsrjd+Rag5LZ135MxcCjn5nKdVBxut8fQ0joKOG8BK80V3yyg1uvTv R3XikxPG87uFxn4Q5jQo2h3gkn5W7Solod6aIo6Ejwn4S8FMlefPeadEbK/DcQk3cAJipd ndVkIYe24+1O22rZdBNWjoYj/LzVAzTUFWSsmZ0D0PidZODzaC//wjWc09Q19JgpLPybbK nBu7hFxJyefRblS8i5MSQOarYUbwUDzOit3G8e505KCs59LlexisfhpSar+wuw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0vM80TZlzcM4; Sun, 18 May 2025 21:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ILcRZf081805; Sun, 18 May 2025 21:38:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ILcRds081802; Sun, 18 May 2025 21:38:27 GMT (envelope-from git) Date: Sun, 18 May 2025 21:38:27 GMT Message-Id: <202505182138.54ILcRds081802@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 66024c07cb58 - main - namei(9): document the rest 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66024c07cb586cfa8121b57b7931e0cc24d04aed Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=66024c07cb586cfa8121b57b7931e0cc24d04aed commit 66024c07cb586cfa8121b57b7931e0cc24d04aed Author: Konstantin Belousov AuthorDate: 2025-05-17 17:38:19 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-18 21:37:13 +0000 namei(9): document the rest Reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50401 --- share/man/man9/namei.9 | 187 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 187 insertions(+) diff --git a/share/man/man9/namei.9 b/share/man/man9/namei.9 index 1703faaeee99..fc0826cc7206 100644 --- a/share/man/man9/namei.9 +++ b/share/man/man9/namei.9 @@ -234,6 +234,147 @@ This flag is not looked for by the actual code, which looks for .Dv NOFOLLOW is used to indicate to the source code reader that symlinks are intentionally not followed. +.It Dv NC_KEEPPOSENTRY +Keep the positive-caching entry in cache. +This flag is typically combined with +.Dv NOCACHE +to not cache a new entry, +but keep existing one, or with +.Dv MAKEENTRY . +.It Dv FAILIFEXISTS +Makes the +.Nm +operation fail if the target exists. +It requires that the +.Dv LOCKPARENT +flag is set and +.Dv LOCKLEAF +is not. +.It Dv EMPTYPATH +For +.Nm +call initialized with +.Fn NDINIT_AT , +allow the +.Fa namep +path to be empty. +In this case, the +.Fa dirfd +file descriptor may reference a file of arbitrary type, not +necessary a directory, and lookup returns the vnode for this file. +.It Dv RBENEATH +Requires that +.Nm +did not cross the +.Fa dirfd +directory. +The flag is used to implement +.Dv O_RESOLVE_BENEATH +flag for +.Xr openat 2 . +.El +.Sh PARAMETERS DESCRIPTORS FLAGS +These flags are used for several purposes. +Some of them affects the global +.Nm +operation, some provide information for processing of the specific +path element, for instance, by the +.Dv VOP_LOOKUP +implementation of the involved filesystem. +.Bl -tag -width IGNOREWHITEOUT +.It Dv RDONLY +Specifies that the lookup should act as if the final node is located on +read-only mount. +The flag is typically used by file servers, e.g. NFS, +to handle read-only exports. +.It Dv ISRESTARTED +The +.Nm +was restarted with +.Fn NDRESTART . +This is used internally for double-root lookups used by ABI subsystems, +after the lookup with native root failed. +The components are reset to the original values, and lookup is repeated +with different root, once. +.It Dv IGNOREWHITEOUT +Ignore whiteouts, e.g. when checking if a directory is empty. +.It Dv ISWHITEOUT +The result of lookup is whiteout. +.It Dv DOWHITEOUT +Handle whiteouts, the instruction for the +.Fn VOP_LOOKUP +filesystem methods. +.It Dv WILLBEDIR +The lookup is done for creating a new entry that will be directory. +It allows the trailing slash in the path string. +.It Dv ISOPEN +The caller is the code that opens a file. +This allows to weaken the lock mode of the return vnode, if the +mount point indicates extended shared lock support. +.It Dv NOCROSSMOUNT +Do not cross mount points during lookup. +.Pp +For .. lookups leading to mount roots, returns the root vnode of +the mount instead of the covered vnode of the filesystem where +the mount was placed. +.Pp +For other lookups passing over mount, do not jump into the mounted +filesystem. +This allows to descend into the file hierarchy otherwise shadowed +by the mount point. +.It Dv NOMACCHECK +Do not perform MAC checks during lookup. +.It Dv AUDITVNODE1 +Audit the looked up vnode information, use the first slot for audit information. +.It Dv AUDITVNODE2 +Same as +.Dv AUDITVNODE1 +but use the second slot. +.It Dv NOCAPCHECK +Do not perform capability checks. +If the calling process is in capability mode, lookup is denied outright. +.It Dv OPENREAD +The lookup was for open and file will be opened for read. +.It Dv OPENWRITE +The lookup was for open and file will be opened for write. +.It Dv WANTIOCTLCAPS +Leave ioctl caps for the caller. +See the description of +.Nm +results. +.It Dv OPENNAMED +Opening a named attribute (directory). +.It Dv NOEXECCHECK +Do not perform check for allowed execution on the starting directory. +It is used to implement the POSIX-required semantic for +.Xr openat 2 +lookups that must use the permissions from time the directory was +opened, and not when used for lookup. +.It Dv MAKEENTRY +Looked-up entry is to be added to name cache. +.It Dv ISSYMLINK +Current component is symlink, and it needs the interpretation +according to the +.Dv FOLLOW +or +.Dv NOFOLLOW +flags. +.It Dv ISLASTCN +This is last component of pathname. +It is handled specially, many flags augments its processing. +.It Dv ISDOTDOT +Current component name is .. . +Usually implies a need to specially handle the vnode locking +for instantiation of the target vnode. +The generic +.Fn vn_vget_ino_gen +function and its more specialized variant +.Fn vn_vget_ino +might be useful. +.It Dv TRAILINGSLASH +Path ended in a slash. +.It Dv CREATENAMED +Create a named attribute dir. .El .Sh ALLOCATED ELEMENTS The @@ -282,6 +423,34 @@ It is managed by the .Xr uma 9 zone allocation interface. .El +.Sh RESULTS +The +.Vt struct namei +member +.Dv ni_resflags +returns the following flags giving some details of the succesfull operation: +.Bl -tag -width NIRES_EMPTYPATH +.It Dv NIRES_ABS +The path passed was absolute. +.It Dv NIRES_STRICTREL +Restricted lookup result. +Only relative lookups were done to resolve the path to vnode. +.It Dv NIRES_EMPTYPATH +The +.Dv EMPTYPATH +flag was provided and used. +In particular, the passed path was empty. +.El +.Pp +If the +.Dv WANTIOCTLCAPS +flag was specified, on return the +.Va ni_filecaps +member of the +.Vt struct namei +contains the capabilities of the file descriptor used as +the lookup starting point +.Pq Va dirfd . .Sh RETURN VALUES If successful, .Fn namei @@ -290,6 +459,24 @@ will return 0, otherwise it will return an error. .Bl -tag -width Pa .It Pa src/sys/kern/vfs_lookup.c .El +.Sh EXAMPLES +Assuming the +.Dv path +variable contains a pointer to userspace path string, the following +example looks up the file named by it, and performs required error +and resource handling: +.Bd -literal + char *path; + struct nameidata nd; + int error; + + NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF | AUDITVNODE1, UIO_USERSPACE, + path); + if ((error = namei(&nd)) != 0) + return (error); + NDFREE_PNBUF(&nd); + ... use nd.ni_vp vnode +.Ed .Sh ERRORS Errors which .Fn namei From nobody Sun May 18 21:38:29 2025 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 4b0vM95gfsz5vtVD; Sun, 18 May 2025 21:38:29 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b0vM920g2z3wgL; Sun, 18 May 2025 21:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747604309; 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=lCk6Eqj/0k3MMj+++dayszONEbe431I+IGFVK/vMz04=; b=mgzlMgRUSSOKy4f38eKh0dI9A0VLd+dX9j8pEr5GhVBs8Cl+8l9FyDyGG/uol/DCSVMdR5 TmNjZM1cdNEWkWJ8Tkg0DVMV/WrLqUeiE4/jmwsSSJHz1KH6rye3mgQsPA5S7xCn9fwfo+ MZaC/kkQNdwCI/IkMGHBWCSO+OXrVop49nbwg0B2knU3VShUa8i4EhGRRjjzH9tT7pCasS 0duZH5mO+V3jD8dmeM0Qmk/ZMiHYm0c4PuCF1IKHEyH5N42c59100XNashZh0pN4x2AGJE 6X+3mtxM9B6jQK7/TFy32IcUe9fOpd4OVN0TmhNVH8Me7G3x4OAn3HVsqGcmkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747604309; 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=lCk6Eqj/0k3MMj+++dayszONEbe431I+IGFVK/vMz04=; b=r6oYLXT2F+4s2Iqi8gBXk4sc/2qoMrc1I4bw+mpGhRUMdmpXidaCT+WQjDGFRaSCwh/AvD vFLTo9wlAEDVamzbsS7Wj2N1lfR0fpRvPC+EOuR+6sFFGbAwQrnOKhq8e5LytFLWd7G/Hb zArAS4JqcezexVEa2ed4hQXQxztwb7LOTZI/kP9LPM4XhcVLTMi/EgmptVBMZ3QhXKhYJt M5+GuOjukaET4W6qEKnbJSxCRQU3OQ6Em2k4rZa9BdDs73v6WBpDHGthECJF5PfTeA0rsy tZ1fn+pWRmddgLSXuBP+wy51cOpZGQ2Dsmg3MuIxuYQu65DBQinYVpV5N0O/Vg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747604309; a=rsa-sha256; cv=none; b=Lb1/ZdNYk4Lkz51F6pEjsOvLkvpS6IACpoL1ij7H/oexiJQS84AqH1m189nu+AQeX+75gr pM4R8oLToc43KegPINJ78t9lZ2yzL9vL+QghRoMNt+RQA4DtH6oZf6pfY+BdpmmJxL+VKw kwbXcWV1d2bvyKOighmmpRV2v9TH8hb9rUpd6HQQxbhkDGDGtQVvJ+Y/0okLN0r19J7kgl 9iPxVhtZresQNzZCF0CK758QWG6pUh+oszrHiT+S3l4t7E+5+s+f3Of3UVOAhsM0vTRd9c fx/1kt++bsN8UsJQjuwH6eABOk98m8LW4vd9mHfUvMaceY7EjkhSQt3co7K5aQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4b0vM91QXNzcjJ; Sun, 18 May 2025 21:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54ILcTMH081838; Sun, 18 May 2025 21:38:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54ILcTsB081835; Sun, 18 May 2025 21:38:29 GMT (envelope-from git) Date: Sun, 18 May 2025 21:38:29 GMT Message-Id: <202505182138.54ILcTsB081835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 5673462af533 - main - namei.9: sort operational modifiers in numerical order 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5673462af5330df20733008beae48a24da9cdf63 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5673462af5330df20733008beae48a24da9cdf63 commit 5673462af5330df20733008beae48a24da9cdf63 Author: Konstantin Belousov AuthorDate: 2025-05-18 21:30:55 +0000 Commit: Konstantin Belousov CommitDate: 2025-05-18 21:37:29 +0000 namei.9: sort operational modifiers in numerical order Note that NC_NOMAKEENTRY is an alias of NOCACHE. Suggested by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week --- share/man/man9/namei.9 | 109 ++++++++++++++++++++++++++----------------------- 1 file changed, 59 insertions(+), 50 deletions(-) diff --git a/share/man/man9/namei.9 b/share/man/man9/namei.9 index fc0826cc7206..63e1a5de02ea 100644 --- a/share/man/man9/namei.9 +++ b/share/man/man9/namei.9 @@ -148,7 +148,26 @@ The function takes the following set of .Dq "operation flags" that influence its operation: -.Bl -tag -width ".Dv WANTPARENT" +.Bl -tag -width NC_KEEPPOSENTRY +.It Dv NC_NOMAKEENTRY +An alias for +.Dv NOCACHE . +.It Dv NC_KEEPPOSENTRY +Keep the positive-caching entry in cache. +This flag is typically combined with +.Dv NOCACHE +to not cache a new entry, +but keep existing one, or with +.Dv MAKEENTRY . +.It Dv NOCACHE +Avoid +.Fn namei +creating this entry in the namecache if it is not +already present. +Normally, +.Fn namei +will add entries to the name cache +if they are not already there. .It Dv LOCKLEAF Lock vnode on return with .Dv LK_EXCLUSIVE @@ -181,6 +200,45 @@ or .Xr VOP_UNLOCK 9 and .Xr vrele 9 . +.It Dv WANTPARENT +This flag allows the +.Fn namei +function to return the parent (directory) vnode in an unlocked state. +The parent vnode must be released separately by using +.Xr vrele 9 . +.It Dv WANTPARENT +This flag allows the +.Fn namei +function to return the parent (directory) vnode in an unlocked state. +The parent vnode must be released separately by using +.Xr vrele 9 . +.It Dv FAILIFEXISTS +Makes the +.Nm +operation fail if the target exists. +It requires that the +.Dv LOCKPARENT +flag is set and +.Dv LOCKLEAF +is not. +.It Dv FOLLOW +With this flag, +.Fn namei +will follow the symbolic link if the last part +of the path supplied is a symbolic link (i.e., it will return a vnode +for whatever the link points at, instead for the link itself). +.It Dv EMPTYPATH +For +.Nm +call initialized with +.Fn NDINIT_AT , +allow the +.Fa namep +path to be empty. +In this case, the +.Fa dirfd +file descriptor may reference a file of arbitrary type, not +necessary a directory, and lookup returns the vnode for this file. .It Dv LOCKSHARED Lock vnode on return with .Dv LK_SHARED , @@ -206,27 +264,6 @@ which is equivalent to calling followed by .Xr vrele 9 , all in one). -.It Dv WANTPARENT -This flag allows the -.Fn namei -function to return the parent (directory) vnode in an unlocked state. -The parent vnode must be released separately by using -.Xr vrele 9 . -.It Dv NOCACHE -Avoid -.Fn namei -creating this entry in the namecache if it is not -already present. -Normally, -.Fn namei -will add entries to the name cache -if they are not already there. -.It Dv FOLLOW -With this flag, -.Fn namei -will follow the symbolic link if the last part -of the path supplied is a symbolic link (i.e., it will return a vnode -for whatever the link points at, instead for the link itself). .It Dv NOFOLLOW Do not follow symbolic links (pseudo). This flag is not looked for by the actual code, which looks for @@ -234,34 +271,6 @@ This flag is not looked for by the actual code, which looks for .Dv NOFOLLOW is used to indicate to the source code reader that symlinks are intentionally not followed. -.It Dv NC_KEEPPOSENTRY -Keep the positive-caching entry in cache. -This flag is typically combined with -.Dv NOCACHE -to not cache a new entry, -but keep existing one, or with -.Dv MAKEENTRY . -.It Dv FAILIFEXISTS -Makes the -.Nm -operation fail if the target exists. -It requires that the -.Dv LOCKPARENT -flag is set and -.Dv LOCKLEAF -is not. -.It Dv EMPTYPATH -For -.Nm -call initialized with -.Fn NDINIT_AT , -allow the -.Fa namep -path to be empty. -In this case, the -.Fa dirfd -file descriptor may reference a file of arbitrary type, not -necessary a directory, and lookup returns the vnode for this file. .It Dv RBENEATH Requires that .Nm