From nobody Mon Oct 13 00:30:04 2025 X-Original-To: dev-commits-src-branches@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 4clJCJ4pTWz6BVy7; Mon, 13 Oct 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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCJ49XCz48tT; Mon, 13 Oct 2025 00:30:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315404; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sLf3lkTgoS14cJzT2JY786Mmp7+R+gnx6cKmV7p6g1s=; b=MOa47Aixx45VcvVYJfF+MRvfPDor+o3SVX0Tg42u0c/ooxghWJ6QDD2bXvtC9j1WVXI8ye W4v7yqgtVaV2BVuC+vSTJsozks7630bzSU7MgAPqxUaSeIgjEX4zmsDgs2GA0SFMMpF5Gi 45UoDhuty77YSpmnHttveeYF7N9Q+fs2vo+HFpDFZ5Vswy1nxt7HP+96T7oKYFTNqrbZVd U0AQw687juUjhGBK7MB+fW62oved3ekZHngQ+1tSF/R1vGfhiMN2FvK1M3APQoi+TCd3u9 9JjNWfQPe6k2CMfRGps/dhJtnRkIAOyiEO5prCTMniGTJWaW20i287dxPjUWlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315404; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sLf3lkTgoS14cJzT2JY786Mmp7+R+gnx6cKmV7p6g1s=; b=rwNZQCiuTRvnZJCV9Hb7zPIyJ5MI4VDBDHQ7mosIEScvBZ3Gk0AwhqhN9iE7gQEzh/qPZ/ 66tM8C5JuFrB70KTjLM55C7IhrgZoGU/M6tghNFrbyNoD2g/YFklz5ndtppszW3L/HDwlT lZvU4VD1ABr7cgR2uBBrZIXqnC5pGm0UTPEXbsHY6Avrl8DjCl7Wd3bJFn7pEXR1vIhP6u sWv2leth3PeCgYEZHTTyywAQF3buU3ztDmuNGYXEi0e6SqYL98xxyxWR6XJX1UScg7HiwH aRhhzIumIRJ+GiGa/PrQWZCX3WNz7sSlBhqWEwdoQ4eEtYqG/rRjbZHH6UyP2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315404; a=rsa-sha256; cv=none; b=q1F0qmMUByn/1AdopB1O10OaHapUl9sxZFp2LcIq+K1lcjXzGN5UCtxx3XDQsVo78NZ3nv FXv2KDr9TD6J4n4c6hkE5sNp+bIDrVKaOY8bKLxfphl6MwpCsOAH3Aa52K8n29t7/gg4H1 gM202e+yLGY9RBYgh9TzauoleIJ9op+KZyp3nSM4u++i8HNmUsTMoFxeb1T8X9ERcHJ8Am Sn3iERXpWK/Yn/5reAhBRM2fkv/+a1gNZYia5RWF/ywgVEdzuU6jlMawaCo3Hp/2bcQesK RqKcgByQnNifTeX5d97oAO5WCADPVhGzNT8erLicyc5oLcCwWfPBnQaSXTAw7A== 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 4clJCJ3Ykyzk74; Mon, 13 Oct 2025 00:30: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 59D0U4Ww042364; Mon, 13 Oct 2025 00:30:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U4Wt042359; Mon, 13 Oct 2025 00:30:04 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:04 GMT Message-Id: <202510130030.59D0U4Wt042359@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: f0f57fde342d - stable/14 - kern_exit.c: do not leak reaper bitmap busy bits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: f0f57fde342d79aec17ef56406aa08bb1eaa1f79 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f0f57fde342d79aec17ef56406aa08bb1eaa1f79 commit f0f57fde342d79aec17ef56406aa08bb1eaa1f79 Author: Konstantin Belousov AuthorDate: 2025-10-01 03:17:31 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:42 +0000 kern_exit.c: do not leak reaper bitmap busy bits PR: 289917 (cherry picked from commit f19ef352ec63f9fcc10076a263b8ce402ba31379) --- sys/kern/kern_exit.c | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index 0c3070f2e360..6f772b488b79 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -129,6 +129,27 @@ proc_realparent(struct proc *child) return (parent); } +static void +reaper_clear(struct proc *p, struct proc *rp) +{ + struct proc *p1; + bool clear; + + sx_assert(&proctree_lock, SX_XLOCKED); + LIST_REMOVE(p, p_reapsibling); + if (p->p_reapsubtree == 1) + return; + clear = true; + LIST_FOREACH(p1, &rp->p_reaplist, p_reapsibling) { + if (p1->p_reapsubtree == p->p_reapsubtree) { + clear = false; + break; + } + } + if (clear) + proc_id_clear(PROC_ID_REAP, p->p_reapsubtree); +} + void reaper_abandon_children(struct proc *p, bool exiting) { @@ -140,7 +161,7 @@ reaper_abandon_children(struct proc *p, bool exiting) return; p1 = p->p_reaper; LIST_FOREACH_SAFE(p2, &p->p_reaplist, p_reapsibling, ptmp) { - LIST_REMOVE(p2, p_reapsibling); + reaper_clear(p2, p); p2->p_reaper = p1; p2->p_reapsubtree = p->p_reapsubtree; LIST_INSERT_HEAD(&p1->p_reaplist, p2, p_reapsibling); @@ -154,27 +175,6 @@ reaper_abandon_children(struct proc *p, bool exiting) p->p_treeflag &= ~P_TREE_REAPER; } -static void -reaper_clear(struct proc *p) -{ - struct proc *p1; - bool clear; - - sx_assert(&proctree_lock, SX_LOCKED); - LIST_REMOVE(p, p_reapsibling); - if (p->p_reapsubtree == 1) - return; - clear = true; - LIST_FOREACH(p1, &p->p_reaper->p_reaplist, p_reapsibling) { - if (p1->p_reapsubtree == p->p_reapsubtree) { - clear = false; - break; - } - } - if (clear) - proc_id_clear(PROC_ID_REAP, p->p_reapsubtree); -} - void proc_clear_orphan(struct proc *p) { @@ -974,7 +974,7 @@ proc_reap(struct thread *td, struct proc *p, int *status, int options) sx_xunlock(PIDHASHLOCK(p->p_pid)); LIST_REMOVE(p, p_sibling); reaper_abandon_children(p, true); - reaper_clear(p); + reaper_clear(p, p->p_reaper); PROC_LOCK(p); proc_clear_orphan(p); PROC_UNLOCK(p); From nobody Mon Oct 13 00:30:05 2025 X-Original-To: dev-commits-src-branches@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 4clJCK5DLGz6BWrY; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCK4Cjbz48rc; Mon, 13 Oct 2025 00:30:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olbNBnJ+MKvQmoIasWinNn8zv7USh67F9Kcm4LqgvAA=; b=E86xcWS6vmrfwP54E4aKQzjEP0WWps46iC2u9p10cFOU4qjFZ3p9zxUBcbrV5KCtoPbbrW zwgHe/USk4NjJX+jPW0eCr/d6qJZKkUi4P4gJrx+Qq/eujPO10jt9gxU28Ss1vq3W6LEO2 tfXrsvgJJrC3L4+h5s4G+OGfb9MXR2qq7xv8HlzNA2ls+MjiSLoQILltpW3czfBDQVge68 Pu73KBvIVXYP4BYghvVud9tU670cImMM1015o0tQL/WeeajAcgwYlg962LtR7agZDYls9f YH4ZXHF1EBZVYjqiXc1ypo+8YW/n1KjtdnvKa+LlPdOYOYhizyVLiembGoqgHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olbNBnJ+MKvQmoIasWinNn8zv7USh67F9Kcm4LqgvAA=; b=eHO+0pqmQjJ9v2VfeZFuvN9vq1oj61oLZfFgdUExa2+Epq8wRAHERFW/O3V83utFUkK5AD B99Eb8EJR+6xs8f5y3V9Egsd6OrWJp5NWIvRG5mBgGg96fyRXjmxnpStab5ZDa2AIdMFPl kV/5pUZBRMLhPumy68DGYlJfUpXuO+IE+FKZKMbAsLgPT5WgR1q6aHJeZt6Z2hqvbspAfL STNoOiCw8B2cU6/zDEGeyFzchiyVarS4J1GBz9QOgPCfteTeaJY6HH5a3POF0o031WtMml eYHRVBP4V7wJzF94MgvahcEkn/ErW+JEAsAScmY9LdJsEu06wFWHRDObH2paXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315405; a=rsa-sha256; cv=none; b=Hb7dE8Kq6AFA/Ae9+hTayhFK+fWsnPbHp1SsTIK1Sh5CFAa9F3q98CQhXCOn1RqqLAkdwF ul3YJq02ntijMrBbsGV9VhUw8R7LV96ADzhEGm4gzGgTU+gRXxtreiaSx8n30i61eqFe7D ZJXm0QF+Kju8vlZUb4Q207b+oNLgySsrvHQMM0enQv1wOxQvNr2wuKsm7ozONy6Zr8jubI lVYYfSW37eVMpmaj7+VSEDAqM5WI2qvn9xIiAFpRCLk9v4/zYLWE25VxV9M8YVj081QD3E P0mRHjDWiJkX2vDXoUa31sz0JQc8pi6j11ESBoU298aw1VRehP2w/sreiOwyTQ== 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 4clJCK3knZzkFH; Mon, 13 Oct 2025 00:30: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 59D0U5nK042627; Mon, 13 Oct 2025 00:30:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U5cg042622; Mon, 13 Oct 2025 00:30:05 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:05 GMT Message-Id: <202510130030.59D0U5cg042622@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 3bd1780213bf - stable/14 - kern: replace several EBADF with EINVAL List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 3bd1780213bf53f6229ea2f00b1b975b18652836 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3bd1780213bf53f6229ea2f00b1b975b18652836 commit 3bd1780213bf53f6229ea2f00b1b975b18652836 Author: Konstantin Belousov AuthorDate: 2025-09-07 10:59:45 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:43 +0000 kern: replace several EBADF with EINVAL (cherry picked from commit fd9e09cb2ab07993e8dc783c802f273329e70bb8) --- sys/kern/kern_event.c | 2 +- sys/kern/sys_procdesc.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index 50d04e1fe253..d1145c37e128 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -1771,7 +1771,7 @@ kqueue_acquire(struct file *fp, struct kqueue **kqp) kq = fp->f_data; if (fp->f_type != DTYPE_KQUEUE || kq == NULL) - return (EBADF); + return (EINVAL); *kqp = kq; KQ_LOCK(kq); if ((kq->kq_state & KQ_CLOSING) == KQ_CLOSING) { diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c index 3221885c9277..ef8c397a05b6 100644 --- a/sys/kern/sys_procdesc.c +++ b/sys/kern/sys_procdesc.c @@ -132,7 +132,7 @@ procdesc_find(struct thread *td, int fd, const cap_rights_t *rightsp, if (error) return (error); if (fp->f_type != DTYPE_PROCDESC) { - error = EBADF; + error = EINVAL; goto out; } pd = fp->f_data; @@ -178,7 +178,7 @@ kern_pdgetpid(struct thread *td, int fd, const cap_rights_t *rightsp, if (error) return (error); if (fp->f_type != DTYPE_PROCDESC) { - error = EBADF; + error = EINVAL; goto out; } *pidp = procdesc_pid(fp); From nobody Mon Oct 13 00:30:06 2025 X-Original-To: dev-commits-src-branches@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 4clJCL6FJqz6BWts; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCL4pvtz48yX; Mon, 13 Oct 2025 00:30:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nn1YvCykMmoq8BcrdjKJQoEamO/DfgaBj8xq8+CBN6M=; b=WSUZyufEY+Qqjofi+StNlKOs26+QEwImooIn8j9lWXy3xX7kqPpa3m+MbR0neaqj4gyQc6 jqJsWW38nn4z3+9bY3/2QA7OQ9DGvOs+8uFZY87Cm4JAN/kAfq1mF+OZ5UdA0bke97omT/ ppbqT8gNOVervY8q3MktNIFMs7AZ2S46UesbXo94dSHGlo49tPNFwq5UrAqjmThC+mUBTJ wArlRhuIZiX1wT2Y6ZAq91TMTCYbaAidR2njtZNqTfMEPhr4fz/2EZ3K4YbuZANqZpnh8G QYku/BODi02H9hHUCgH8Ud4MYATw4YHIIVGEcNjxw3Q1XZZw5BV+nZ9xjXGQlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nn1YvCykMmoq8BcrdjKJQoEamO/DfgaBj8xq8+CBN6M=; b=J9Vaii/W2yt94YyqOguCbJV6Ns+AWqkE3MWq+w6sUY7uxUohNoiiicx6u3g6PHQc2oaYAn lbcxBVN4lTmMNfczo5n+PXai3zAIvKemQWcIPRVWTQdsxcchcwZp27BgFCIbqe1VQm2RX6 wpYmUDFDvAhBjQvKdJzjE0Ebcov+e5JGVScXR4hx29SH4Cc9Fm/iiTGmInclP3fNiRN4OF UjsOPYyvtdWokpXpOs86TKPfVig0OurnSLhbK/aKILLQdEFIBjp6tf1nVdaGCAxTzhK9m4 OJU/q4Laaykg7i6QSXZzIB1zfqIlKO+pjYabn4/TuHfKM1If5b61unz3QGv7Vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315406; a=rsa-sha256; cv=none; b=h3aNIi1TJ0qePuSKSLwTY8b0PFaQ+JBetV03+jcyWqUF9d3ZqPDGLDYuBY4WdjRLvjvRbF OLEMmKB3LW6bxB4g2naa7Vjn4AP0JEHHX6E07jiy3GRkcsBW6ZiZMdmvPrLp2v00S6C1TL 2d4/G2iEL+IhMj2cj3r6obkLXeqUDVuFJ6aqPHLF2Ky67McaFRG52fja/BqRz9eDy+cuKh ApqQWqsrnrFTPNrpgwhi36vt1hz/P0QQh6pBeMKJQN6lAZhdoIxm5khLBHAuOyJ2M9/DeP xtEqNUIAJWNQYPq+2i4nWUgMkzLrSwVFZOXdTNkWR9elofKKgzk3lury7yHzjQ== 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 4clJCL4DdNzkNs; Mon, 13 Oct 2025 00:30: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 59D0U6MN042890; Mon, 13 Oct 2025 00:30:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U6Ud042885; Mon, 13 Oct 2025 00:30:06 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:06 GMT Message-Id: <202510130030.59D0U6Ud042885@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 84b512720455 - stable/14 - pdgetpid(2): switch back returning EBADF for non-procdesc fd List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 84b51272045564ef63787423105334176aa6014e Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=84b51272045564ef63787423105334176aa6014e commit 84b51272045564ef63787423105334176aa6014e Author: Konstantin Belousov AuthorDate: 2025-09-13 19:23:27 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:43 +0000 pdgetpid(2): switch back returning EBADF for non-procdesc fd (cherry picked from commit a85525a5c8b28f1516d49e5d6ae5842873c24643) --- sys/kern/sys_procdesc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c index ef8c397a05b6..b2b638b6f99f 100644 --- a/sys/kern/sys_procdesc.c +++ b/sys/kern/sys_procdesc.c @@ -178,7 +178,7 @@ kern_pdgetpid(struct thread *td, int fd, const cap_rights_t *rightsp, if (error) return (error); if (fp->f_type != DTYPE_PROCDESC) { - error = EINVAL; + error = EBADF; goto out; } *pidp = procdesc_pid(fp); From nobody Mon Oct 13 00:30:07 2025 X-Original-To: dev-commits-src-branches@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 4clJCN3J4Fz6BWcf; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCM5gGZz48lY; Mon, 13 Oct 2025 00:30:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WqPF7DTi6KePXw8c9tu2gkIrdnIk26REXkvdfuNks+k=; b=ggYZBnxvaRJ0n5nc9XGgwhnbxF5tG2/IZk0B0dR02nvqp2z0nf0u9eoZEsqurkXx7rTNZd zXUKAJEMyfP//v3icAO01goRx+ichsSzykklfpZsLTNTXM3vhR1BjFIqD8q0qsD5jg/sU1 D9KVmzYNQ5hpYXmrB2gS+P6diFq3Y68NPwKIdMMoEGqRWw8VMOlYEK8GwMYaSXE0sPx3KP 96Xc1VZm0b/fnHIqhn6YE5u+Q4CWgIs9sm+lg5s1dxY5zkV6KodxnEfLYXhMc+EkwyjnPz SLQy916NR+A7hgPI+4awK9bIjBT9bfmDgQ+QjPbDHuUhUYxGz9bMennRb2goqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WqPF7DTi6KePXw8c9tu2gkIrdnIk26REXkvdfuNks+k=; b=pu+XJF/77NNgnu/Pl18GNX7jQsk7hVoEUM/zVyuL9J3t7a3WH8rjTUOHEz6Shv1hpUoV1N obzvuOh4C7e+vZCQwCbPDk30uPJqFCQSDSzrP3rsE6tZWQJAnjjZh/YbBsSAqHRs44fSSa LkmQ7mV1gkZp60aH9DYQxEa8RKQzhYKucAm39EN272Jzt7GvtWl18YSb6hHyGkfScRA3xm thkdPZZ5oLWBxLke17IbHbhTvs7mUkNq+vAYu3D1ExM/KRCHMS2HWpCoEEoIuuHw4kVJ40 pKLnx3AJ5u4P8isaNJ1580J89DTCLL/zu15q50gZM4BpXDZPJAxpA64sbmaWgg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315407; a=rsa-sha256; cv=none; b=QRId4w3WsFLYQk2tkShADp/3zI+zSmlW/PmVO2iDgsBKsBkniPwAgk+HeWnq+QNLKjLbvy TYxOQuwSCIq/jZPKyYh/e/2BodN0zosNSz1frjGtf2hBKyS+hU89MF2bJXj4MxhdcKSl1W vWp28QlvDEAsroYf3T0LJjBXQZQ6FRWa7pSGnF7Lo6FOVGc3ABUgvzJJasBXuzXczUh0ZO ScPRC2Dm7PYIYl1pvJApRVc3we4mOvXZf8ck9SAggITgHHNlRApeOSjoPUk+HlkDb2Mvj8 jgPh7K+RhT0bruZHVbybP8adZAg9kF+Sjn7zKPff8GFtycElS4UNR3XQnKormQ== 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 4clJCM5Fqfzk9S; Mon, 13 Oct 2025 00:30: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 59D0U7rE043151; Mon, 13 Oct 2025 00:30:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U7Ow043146; Mon, 13 Oct 2025 00:30:07 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:07 GMT Message-Id: <202510130030.59D0U7Ow043146@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 5f4168fa9f29 - stable/14 - vm/vm_fault.c: cleanup includes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 5f4168fa9f29a2985a16c34a5571c20c6775f622 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5f4168fa9f29a2985a16c34a5571c20c6775f622 commit 5f4168fa9f29a2985a16c34a5571c20c6775f622 Author: Konstantin Belousov AuthorDate: 2025-08-06 21:53:23 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:43 +0000 vm/vm_fault.c: cleanup includes (cherry picked from commit 0854b4f569e1e68032e431b1efb45b9fd9849194) --- sys/vm/vm_fault.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 3e4fe7bdae36..5eb19d4e287b 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -73,11 +73,9 @@ * Page fault handling module. */ -#include #include "opt_ktrace.h" #include "opt_vm.h" -#include #include #include #include From nobody Mon Oct 13 00:30:08 2025 X-Original-To: dev-commits-src-branches@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 4clJCP1JSpz6BX1G; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCN6PzNz48lN; Mon, 13 Oct 2025 00:30:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315408; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WAFa/SYI8PzP7GHqvuITgTmG4+Oh5j4jnTnprK1gKtk=; b=vZ5SHKOeKc/dGDAF5W+RHtFk0lNkjWl7lSeLFlSrR/frXgcooXn2GjeDIRr2nlrBgxZb5E WJiObG9J7RXZZQNXY+5F9LWVDMO0yqPHjIwYcC9vE506nG3b4QKouiNcmIOG7wQAOdnWl+ fa7vPjEPQaZkJJY5hLh1O9uRHTfscaUeJy8wvDmUbnzTvLG3Zn7noIdLzoABiTvl5jx0QT 84O5CoOtYZ3qEB/R17fpgeG1SjuveGqKf3NFaoYvqJa3y8Sr/GAwFUdOqv/EKAgki04/oW XMMXAfpUZivRlPgiaL/EVKob+v0xpPKmZ1EEyyWom/8DDLEeQf7SoKZsNqpNUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315408; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WAFa/SYI8PzP7GHqvuITgTmG4+Oh5j4jnTnprK1gKtk=; b=ql9AUT+vgvGNEObTDdV4Mt+wmvGNVzXQHUi8YN/1W0Cc2hmmPqZKLZv0AJ5oJXOezdXdvH NeJcL//LJSuHLyjlqjAmbdd+KN3BG3mg2L9zkGL2dTmZa+pkLpWXAB0g1C9ACF8v9ginbl 4u5QX95LkaUVekE7KZZzopki4MEHZEeiUY1d0S5OlHUqL/1VrpadC7RVRzwxCGmTjzFwxI tktsOzMq4uhexT4qV6PXU+BLUjPw1iLJ7MPIxzR6z6iGDYzUV0LV54lCMyKo/WfQZ4N4fA jvE8nbDmfbfSOQLSjfQl8pnpFfjZVWFdH9VNfPZQIUJ4Zp5qM/QvUdadUWcz9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315408; a=rsa-sha256; cv=none; b=DyKHpFR81PXygyHqaRLm1zrwM1nnj90CvUKO3JTPGQYPP+yVS1mnT7G3VvrqLh+bQ39sVl nHS8yu45Dy8BftVuAqgoN0YHueS8//fmBcPWrP4dJn7H7vZcGOI/4LfFfZUr0MbvaMReL4 QSxqJq+6jSpAyyqT1+GrAubkLog7Z9cCBfcvGx976OGAIBwwtjHYs/qNJZbp5JVbZsZFaJ Ux6ADbrTNv5iL1j4WDy8bVZTtMB+i8oCyK2p8QoUfOX31JQuPI4e1/atmDFeP7kABlh6Hs IBdfmcwf4X7SV0P2rcfhOj/WjCRrRVtaTVQWPtkLr51iWvyncJFyVewBEr6zyA== 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 4clJCN5Z1qzkFJ; Mon, 13 Oct 2025 00:30: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 59D0U8Rt043414; Mon, 13 Oct 2025 00:30:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U8Dj043409; Mon, 13 Oct 2025 00:30:08 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:08 GMT Message-Id: <202510130030.59D0U8Dj043409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 3126c57163fb - stable/14 - vm_fault: drop never-true busy_sleep test List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 3126c57163fbbeb0d013d9c04d87a44a458b3f07 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3126c57163fbbeb0d013d9c04d87a44a458b3f07 commit 3126c57163fbbeb0d013d9c04d87a44a458b3f07 Author: Doug Moore AuthorDate: 2025-07-06 20:46:00 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:44 +0000 vm_fault: drop never-true busy_sleep test (cherry picked from commit 2d6185cf87e815d4951a9ddcf5c535ebd07a8815) --- sys/vm/vm_fault.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 5eb19d4e287b..32c3d698b085 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1423,8 +1423,7 @@ vm_fault_busy_sleep(struct faultstate *fs) } vm_object_pip_wakeup(fs->object); vm_fault_unlock_map(fs); - if (fs->m != vm_page_lookup(fs->object, fs->pindex) || - !vm_page_busy_sleep(fs->m, "vmpfw", 0)) + if (!vm_page_busy_sleep(fs->m, "vmpfw", 0)) VM_OBJECT_UNLOCK(fs->object); VM_CNT_INC(v_intrans); vm_object_deallocate(fs->first_object); From nobody Mon Oct 13 00:30:10 2025 X-Original-To: dev-commits-src-branches@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 4clJCR3xRFz6BWrp; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCR0bq0z495J; Mon, 13 Oct 2025 00:30:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XCRiAn9nabcD0dJPTWBquWgH96qiKnce6lmJ9JWBGl4=; b=hm8hd+oZAAX4zfZayMz4tk7IIAskf8b+1HsnAYUu3Z1vdFhAtSr/rx41gdIDaRKVFg8ueJ PY4J1beaD5RBNZ1KxlAMdmmc1kUryPl9wAMhkwn4VPRU6TO5OWtoaiX5r2VcZHxbVPiOfZ C1rJGetEGEZTQ/L/WIJnf1os1CDtqBg3Snd3sRqwR8WHGj+kOYKIE/dF1w8XdQyKlX5uWF yPi2SpYvR9/pkDLf9R6yiFeUv1KhBz+/EdTW8hmyTMaZk6hYSyzbEy9IgzH18dg2OSD4Kg jIcWdSZZsxJ28Nou2ZRxurDa5OlzB6DVlOwz7MOxugttYaMwE4l4qffpRVoaFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XCRiAn9nabcD0dJPTWBquWgH96qiKnce6lmJ9JWBGl4=; b=cDq5ASrgtOOM7+akyuxBsNiGHo4q8lJW32IP63oT2o3DOLLElRs6Sv/zyDpk0s2asdsnWD pw7dy+FG4Kzc/3qml+DM9QJY/lYa70hTvSHJI4ILxTvn8Cb7GR6AFoXSP5lhun/f2DmK77 6T7vygZeHNVZoAFAoJbKobN9HcC5m2sid/UhaM8gBfjaYRFVV5G9b0QaNJw1C6kx3rUZev vGC7p9BQztBnT3xAvnh1I2yW2O8QSH8vosrTwffuTOFxcPR09IgOerDS+9ebmlpNdvwpyE Fh4hRQCXJ6tidbKTXdi4CMmlTbAdjuzHDPdPa5qBQtGBKZUK61wKDRrsdBNZew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315411; a=rsa-sha256; cv=none; b=bzN8WqdF31uQ8EMHD7W8q2k6slyokSVd8j0AZxiEphbrDLTNPlgBCUt5nC5C3zFqUi3SDW pHnP3A/WdsXngOW44aHmRCGNWIEiXU1SbmHMPwMC8BeFFfVx9FeMIX3GGugPIvnPtnTD74 f0ZTyjNyuWK2Py2IdnGHrbfci/Dv1Y8DzVReScKKV9DtqdY7QST93/O0rGwKG8JrXG1PSy Z+q72dyNjH48xQW2EJkjyMNgdZlnsUaQ/bnjJvmjqMp/xsyX9zeVFH4YyqniRJ6UN+VNUe OwTdRC5A//XZIRTm5bvwBKpMWZdon4KgyO0jOpNOrCJnh+K6z6/hKuRi82L7gg== 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 4clJCQ72kBzkFK; Mon, 13 Oct 2025 00:30: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 59D0UAm2044612; Mon, 13 Oct 2025 00:30:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0UA48044606; Mon, 13 Oct 2025 00:30:10 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:10 GMT Message-Id: <202510130030.59D0UA48044606@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: e7422f7dfd0e - stable/14 - vm_fault: add vm_fault_might_be_cow() helper List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: e7422f7dfd0e4c1f0db5560f171260d78bad9383 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e7422f7dfd0e4c1f0db5560f171260d78bad9383 commit e7422f7dfd0e4c1f0db5560f171260d78bad9383 Author: Konstantin Belousov AuthorDate: 2025-08-14 03:39:05 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:45 +0000 vm_fault: add vm_fault_might_be_cow() helper (cherry picked from commit 5bd4c04a4e7f7bda657e6027e64675d0caf50715) --- sys/vm/vm_fault.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 89acbb0095e9..796b4c44b3f9 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -259,6 +259,12 @@ vm_fault_unlock_vp(struct faultstate *fs) } } +static bool +vm_fault_might_be_cow(struct faultstate *fs) +{ + return (fs->object != fs->first_object); +} + static void vm_fault_deallocate(struct faultstate *fs) { @@ -266,7 +272,7 @@ vm_fault_deallocate(struct faultstate *fs) vm_fault_page_release(&fs->m_cow); vm_fault_page_release(&fs->m); vm_object_pip_wakeup(fs->object); - if (fs->object != fs->first_object) { + if (vm_fault_might_be_cow(fs)) { VM_OBJECT_WLOCK(fs->first_object); vm_fault_page_free(&fs->first_m); VM_OBJECT_WUNLOCK(fs->first_object); @@ -990,7 +996,7 @@ vm_fault_cow(struct faultstate *fs) { bool is_first_object_locked; - KASSERT(fs->object != fs->first_object, + KASSERT(vm_fault_might_be_cow(fs), ("source and target COW objects are identical")); /* @@ -1154,7 +1160,7 @@ vm_fault_zerofill(struct faultstate *fs) * If there's no object left, fill the page in the top * object with zeros. */ - if (fs->object != fs->first_object) { + if (vm_fault_might_be_cow(fs)) { vm_object_pip_wakeup(fs->object); fs->object = fs->first_object; fs->pindex = fs->first_pindex; @@ -1417,7 +1423,7 @@ vm_fault_busy_sleep(struct faultstate *fs, int allocflags) * likely to reclaim it. */ vm_page_aflag_set(fs->m, PGA_REFERENCED); - if (fs->object != fs->first_object) { + if (vm_fault_might_be_cow(fs)) { vm_fault_page_release(&fs->first_m); vm_object_pip_wakeup(fs->first_object); } @@ -1711,7 +1717,7 @@ found: * top-level object, we have to copy it into a new page owned by the * top-level object. */ - if (fs.object != fs.first_object) { + if (vm_fault_might_be_cow(&fs)) { /* * We only really need to copy if we want to write it. */ From nobody Mon Oct 13 00:30:09 2025 X-Original-To: dev-commits-src-branches@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 4clJCQ3z7hz6BVyK; Mon, 13 Oct 2025 00:30:10 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCQ1KK5z48td; Mon, 13 Oct 2025 00:30:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315410; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QxPCMkwHwdWf7emq72ke/mU8KXo7gaC9ADtWazc/+z8=; b=Slytu+f51HH1rgmHQqmewWPyZsnX7p1YbE5XhhvmNsVGcO48JgADm4RtL4rP3LOh1XcGQi EZsbSE8oFlBa5dkW4ADkxc5fuIrOuktLbFqOQP7jZapsLSyY7qsOxMRHu8WLER2zGJJ0dz udiJ+3JXuFkBrSpbNfKWuyXF7UpXtd9av2bxBVpXeiC4VQsEL42GcuoostuvH98hiFMVTE /kSnT/j4vojmrr5di2I6B+RzksxzIscYbmHn3puS4OpNI14B+A0nSasP9daUVAGxjYxW9h +crOLZ6tW1hAadEFdwvLUbsb/KQo0UCOsxSCNGeWVtt0OJuvXAxM6iqzM8BcLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315410; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QxPCMkwHwdWf7emq72ke/mU8KXo7gaC9ADtWazc/+z8=; b=o1uO0SN9C03QgoRS8tdgH3AYLf6B5N7U07P0DPdGTkXGk+7EaojPshw5mp2Grh9lvot3Pq 239+b+8mPrUL+hq7ulMhAt6hNpy6E2tQ6CquApk+TQoe6byo4RT1VMZKEApA+Q6tEe/W8M BRn23C4+AzidviNuAXoAtJMrHpk73Kt+sRjb7iGK1+/k3HwYp/3Y2/z1L8vQaCeniRkGDf oc0+xOJwKz4aawyUhcqtMLgPLKqMPff2oQ7YUNnzJzHIkrQZHiqMLJgtcgBDLMzBmQPaM1 x+GBla8FKgC7ZRmQupYjeJ8Otaro8+85mYOauJeP8kNoBcCWNEBNkQJtzDdE4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315410; a=rsa-sha256; cv=none; b=jA4nsX45gr/LVjD8VxuxKqy6QVv7wUplFBh12tqvHSWb2PRTfHW2BD+jzZFNNcMHvCcttS t+TkAx2gN23pYtuiBJzAge1gFjGt+/GJUOiYV5UiPemvRjBOKxBlQoGCnu3Gtag+x21g+p W0Wr4exG83SY1OoT76OUxoDd0UwB9zlzJKKl+gEo+1LUoUS+ZfhbZro+62A1KneL63Nc1T sayleu1sm4fgzM/bLdDz3Zdipde6M5FBB+K276IBDeuWFNMRs9ygPFEGUJcchJuD4ys8/h S3qNHV33049inD7NpTTsHE8tgttq1a5/Mb33Rv2/ft/SronyUNZqiYMmbzJGFw== 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 4clJCQ0BHMzkcB; Mon, 13 Oct 2025 00:30: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 59D0U9l9043934; Mon, 13 Oct 2025 00:30:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0U9eK043929; Mon, 13 Oct 2025 00:30:09 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:09 GMT Message-Id: <202510130030.59D0U9eK043929@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 4b938ed09069 - stable/14 - vm_fault_busy_sleep(): pass explicit allocflags for vm_page_busy_sleep() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 4b938ed09069e24e6c2714b62b4b5559081da67b Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=4b938ed09069e24e6c2714b62b4b5559081da67b commit 4b938ed09069e24e6c2714b62b4b5559081da67b Author: Konstantin Belousov AuthorDate: 2025-08-06 21:49:10 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:44 +0000 vm_fault_busy_sleep(): pass explicit allocflags for vm_page_busy_sleep() (cherry picked from commit c6b79f587f27649f90e00bc131d37bafa50ffc62) --- sys/vm/vm_fault.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 32c3d698b085..89acbb0095e9 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1409,7 +1409,7 @@ vm_fault_getpages(struct faultstate *fs, int *behindp, int *aheadp) * page except, perhaps, to pmap it. */ static void -vm_fault_busy_sleep(struct faultstate *fs) +vm_fault_busy_sleep(struct faultstate *fs, int allocflags) { /* * Reference the page before unlocking and @@ -1423,7 +1423,7 @@ vm_fault_busy_sleep(struct faultstate *fs) } vm_object_pip_wakeup(fs->object); vm_fault_unlock_map(fs); - if (!vm_page_busy_sleep(fs->m, "vmpfw", 0)) + if (!vm_page_busy_sleep(fs->m, "vmpfw", allocflags)) VM_OBJECT_UNLOCK(fs->object); VM_CNT_INC(v_intrans); vm_object_deallocate(fs->first_object); @@ -1468,7 +1468,7 @@ vm_fault_object(struct faultstate *fs, int *behindp, int *aheadp) fs->m = vm_page_lookup(fs->object, fs->pindex); if (fs->m != NULL) { if (!vm_page_tryxbusy(fs->m)) { - vm_fault_busy_sleep(fs); + vm_fault_busy_sleep(fs, 0); return (FAULT_RESTART); } From nobody Mon Oct 13 00:30:11 2025 X-Original-To: dev-commits-src-branches@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 4clJCS4vHhz6BWfx; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCS18d4z49Dv; Mon, 13 Oct 2025 00:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315412; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H3xSv2VAVvKoZ8rEAg4jeH+LP6+g5Fu5O95dEOYZHDw=; b=Z+Ggk46/9nerdhlH3zNFrk2+iSfD3/U3cjcULSjt5uQHXZEU0yIT1KPAtXvjC5K0G57lVd 827sWg+El5dGE8+km/1r4xspM6VmI+agaIJ0tLJJjIM3TtOQ8vTOXHqwM9SdtJMAlEg1Hy hrqGsNvlZZ22fq23kp7E/ODkvgOtp+QrsRvJDtqopnSMkmtk7yPwfketiP/Fgn7uLiI3sB R67sjutRWbPmwmhIXFqKUkqfynKdqS7JTitedsXGuZ0cgx5WzuLkbDn4EujxRD554QuDSE w8YDHB7emUbZ3cJlZvCBotFY9Eiut43dLUo1S2594X8LG3S4KNb5+SNQoVvPhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315412; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H3xSv2VAVvKoZ8rEAg4jeH+LP6+g5Fu5O95dEOYZHDw=; b=Pnxn1Ag8hewCoIS56UGMNFnlEBmvBQ/iTuKWuo29nINGcbjjiZiirAplaJWpi2elQor31K oj5JmzD8lzay6k0VW5Kiu2lmDIXJ9Mx6EZ6d+sGxOcswQBCqzfynUu5wGvJNvSggMWOvf7 w9Z2S51uCgR1lJt4hGgYDfj7+SHjIHd0qWFA8Aa5WgaSe4oisD+VFk+tPNIrEyb06A7+I6 ilL5Q8Ua2pTzcZySqZeIytnKf+dKB6pFe+qkps68fEYvyBXzSxef0D8tPY+gBCBP+nJHCI 25QS96lootalq8EXAE3sjvJ792WL5EyxCQoYsi6rial2SZWr0zFkWukracYbcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315412; a=rsa-sha256; cv=none; b=APDq3dscdxs8euRmP9QphJH/U0sFsWA6jGlUca8cRx0T3lXaP+ViAQfRz2Oj0JP54N5j+e tAArSP7KkizbOtdX/FldUaSeAJRhFtubfj9Yf7OSO17tytWasHfwgKUrRMO9keIQnvSH39 k6ugkzbZjoCEpSXDEwO3rZUhNEPHTOKRe1ix5FHZclpu5kfUTjfAaN+/iogkSvSxRZ6siY V6TnxY+hp8RhpGwSLZ3prLz1GVX7tqXv8KwBfLfFnKz51bzrmiLBTeUl2mHm9ZCkIiEMsQ TSWr+ZoAjndsiGaDm9JnXz/OLTqdNAmuaCGrhZhENvcAJl65k8cbkW+jpySFeA== 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 4clJCS0VRbzkcC; Mon, 13 Oct 2025 00:30: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 59D0UBkj045241; Mon, 13 Oct 2025 00:30:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0UBxl045236; Mon, 13 Oct 2025 00:30:11 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:11 GMT Message-Id: <202510130030.59D0UBxl045236@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: f4d5c6d65168 - stable/14 - vm_fault: add helper vm_fault_can_cow_rename() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: f4d5c6d65168d3d9b99a2332d854c14b231188e6 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f4d5c6d65168d3d9b99a2332d854c14b231188e6 commit f4d5c6d65168d3d9b99a2332d854c14b231188e6 Author: Konstantin Belousov AuthorDate: 2025-07-24 10:47:52 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:45 +0000 vm_fault: add helper vm_fault_can_cow_rename() (cherry picked from commit 3f05bbdbd80f2eefb647e595dc73e80d6186d6a5) --- sys/vm/vm_fault.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 796b4c44b3f9..9ba96ab888d6 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -991,6 +991,16 @@ vm_fault_relookup(struct faultstate *fs) return (KERN_SUCCESS); } +static bool +vm_fault_can_cow_rename(struct faultstate *fs) +{ + return ( + /* Only one shadow object and no other refs. */ + fs->object->shadow_count == 1 && fs->object->ref_count == 1 && + /* No other ways to look the object up. */ + fs->object->handle == NULL && (fs->object->flags & OBJ_ANON) != 0); +} + static void vm_fault_cow(struct faultstate *fs) { @@ -1008,15 +1018,7 @@ vm_fault_cow(struct faultstate *fs) * object so that it will go out to swap when needed. */ is_first_object_locked = false; - if ( - /* - * Only one shadow object and no other refs. - */ - fs->object->shadow_count == 1 && fs->object->ref_count == 1 && - /* - * No other ways to look the object up - */ - fs->object->handle == NULL && (fs->object->flags & OBJ_ANON) != 0 && + if (vm_fault_can_cow_rename(fs) && /* * We don't chase down the shadow chain and we can acquire locks. */ From nobody Mon Oct 13 00:30:13 2025 X-Original-To: dev-commits-src-branches@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 4clJCT6PNnz6BWg0; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCT1TtVz49Bf; Mon, 13 Oct 2025 00:30:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315413; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vISPoWGQOuOFpF5JnLp+NqhGqj8hrAUoihUqt+YGi+E=; b=MAc/HClJes9ydeDkIP6GjYoGLrhLtSZzPC4Y8NAmfSQhVS9mR0Auc0WqekBWacLVz8gZw+ 0fN+/uDrC/bfRgmJzk9/jsiooDKg55L1/4RdHZe+hMYV/taYpNrsiKFfTrhJ4dgRwGUKu2 UdCu/OjN84eQbHahI1ksJDktpVdj3M/aqGwRmQ7R2qnx3fbEGyLpVRu9IGnwoEZmUEhK/c hUT7fqgNv8s5rtj8pM80HmXsm3i6aoGb+RjjHKxUUJKb+jhK4mFbNUkSKTSIQuohB8uV5m jUMYvV7rEFR0+lPZ4hpnJAo1foNH7sW+U7LO55LcaxrHQc8jimozlrEItFBeaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315413; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vISPoWGQOuOFpF5JnLp+NqhGqj8hrAUoihUqt+YGi+E=; b=CuI2QzZKjhNxJx9JWJTIG5NgRusNEpuPpb9OistmKdfE0Y1slf0b2irB6zyi8vmv6V/ypo ImNgPAwTMSeBeKqdqPzkDVc0Gu+IwlEtbuTpzNC5ZhmmS261QMAWvewVl91uyrl9leWbpZ v7GnslvC617wA22WcsAk60nwhfWaDZ8U5mX6LVI25TP2dcG7pCkW23+9EJHEuzEG9cg829 mnYnXwAxdeULA0HECudH40u1AhlGyTSlUjUq2hUyKcotPoDsKzjMGRuYWF8MHWIixz5b52 RFSQ+Y2yrWqCw0BUhRHjFNhLWYGkTeTkbW8rolyBe66yrTo8Y5lw2evjRDhc3Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315413; a=rsa-sha256; cv=none; b=f798y45SJvHy/hRfPRtVJ9f2quZzWJQ/dzOjyzkcGGX3Wh22D2LGV2dVuHWHTUFzTjAW7h LMynVSNJECyoLulMMxrhLhIrFrlbQTL7mcDUdTHKlbmvDx4KBwqA/s0LACjR7qt+eat+FJ TLbem92+N6Y/vOy9D7Op3PufvANZuPZY3/ee/iZahgdmS01tDgiTRXNyNWtdDnmHFzDZ1h p3/Dxjo6wuuDJ3LVliaq/ntm60s3XVY2aSmSLFSk2ya8V1T5Y/wb30LZZXiRE0RpTEbg4N avGvH3RWOwoJ21i50bTfcYgMnouPZfVmrT9udgqC1Ly8+7n8krZBpB3gPD0s3w== 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 4clJCT0yRhzjsS; Mon, 13 Oct 2025 00:30: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 59D0UDkC045882; Mon, 13 Oct 2025 00:30:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0UDVd045875; Mon, 13 Oct 2025 00:30:13 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:13 GMT Message-Id: <202510130030.59D0UDVd045875@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 94ea60483bcc - stable/14 - vm_fault: try to only share-busy page for soft faults List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 94ea60483bcc0681e351901d1e466547a275a6da Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=94ea60483bcc0681e351901d1e466547a275a6da commit 94ea60483bcc0681e351901d1e466547a275a6da Author: Konstantin Belousov AuthorDate: 2025-07-23 10:44:29 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:45 +0000 vm_fault: try to only share-busy page for soft faults (cherry picked from commit 149674bbac5842ac883414a6c1e75d829c70d42b) --- sys/vm/vm_fault.c | 108 ++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 93 insertions(+), 15 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 9ba96ab888d6..f6e75629864e 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -203,7 +203,10 @@ vm_fault_page_release(vm_page_t *mp) * pageout while optimizing fault restarts. */ vm_page_deactivate(m); - vm_page_xunbusy(m); + if (vm_page_xbusied(m)) + vm_page_xunbusy(m); + else + vm_page_sunbusy(m); *mp = NULL; } } @@ -334,6 +337,13 @@ vm_fault_dirty(struct faultstate *fs, vm_page_t m) } +static bool +vm_fault_is_read(const struct faultstate *fs) +{ + return ((fs->prot & VM_PROT_WRITE) == 0 && + (fs->fault_type & (VM_PROT_COPY | VM_PROT_WRITE)) == 0); +} + /* * Unlocks fs.first_object and fs.map on success. */ @@ -1004,7 +1014,7 @@ vm_fault_can_cow_rename(struct faultstate *fs) static void vm_fault_cow(struct faultstate *fs) { - bool is_first_object_locked; + bool is_first_object_locked, rename_cow; KASSERT(vm_fault_might_be_cow(fs), ("source and target COW objects are identical")); @@ -1018,13 +1028,29 @@ vm_fault_cow(struct faultstate *fs) * object so that it will go out to swap when needed. */ is_first_object_locked = false; - if (vm_fault_can_cow_rename(fs) && - /* - * We don't chase down the shadow chain and we can acquire locks. - */ - (is_first_object_locked = VM_OBJECT_TRYWLOCK(fs->first_object)) && - fs->object == fs->first_object->backing_object && - VM_OBJECT_TRYWLOCK(fs->object)) { + rename_cow = false; + + if (vm_fault_can_cow_rename(fs) && vm_page_xbusied(fs->m)) { + /* + * Check that we don't chase down the shadow chain and + * we can acquire locks. Recheck the conditions for + * rename after the shadow chain is stable after the + * object locking. + */ + is_first_object_locked = VM_OBJECT_TRYWLOCK(fs->first_object); + if (is_first_object_locked && + fs->object == fs->first_object->backing_object) { + if (VM_OBJECT_TRYWLOCK(fs->object)) { + rename_cow = vm_fault_can_cow_rename(fs); + if (!rename_cow) + VM_OBJECT_WUNLOCK(fs->object); + } + } + } + + if (rename_cow) { + vm_page_assert_xbusied(fs->m); + /* * Remove but keep xbusy for replace. fs->m is moved into * fs->first_object and left busy while fs->first_m is @@ -1081,8 +1107,12 @@ vm_fault_cow(struct faultstate *fs) * address space. If OBJ_ONEMAPPING is set after the check, * removing mappings will at worse trigger some unnecessary page * faults. + * + * In the fs->m shared busy case, the xbusy state of + * fs->first_m prevents new mappings of fs->m from + * being created because a parallel fault on this + * shadow chain should wait for xbusy on fs->first_m. */ - vm_page_assert_xbusied(fs->m_cow); if ((fs->first_object->flags & OBJ_ONEMAPPING) == 0) pmap_remove_all(fs->m_cow); } @@ -1475,6 +1505,51 @@ vm_fault_object(struct faultstate *fs, int *behindp, int *aheadp) */ fs->m = vm_page_lookup(fs->object, fs->pindex); if (fs->m != NULL) { + /* + * If the found page is valid, will be either shadowed + * or mapped read-only, and will not be renamed for + * COW, then busy it in shared mode. This allows + * other faults needing this page to proceed in + * parallel. + * + * Unlocked check for validity, rechecked after busy + * is obtained. + */ + if (vm_page_all_valid(fs->m) && + /* + * No write permissions for the new fs->m mapping, + * or the first object has only one mapping, so + * other writeable COW mappings of fs->m cannot + * appear under us. + */ + (vm_fault_is_read(fs) || vm_fault_might_be_cow(fs)) && + /* + * fs->m cannot be renamed from object to + * first_object. These conditions will be + * re-checked with proper synchronization in + * vm_fault_cow(). + */ + (!vm_fault_can_cow_rename(fs) || + fs->object != fs->first_object->backing_object)) { + if (!vm_page_trysbusy(fs->m)) { + vm_fault_busy_sleep(fs, VM_ALLOC_SBUSY); + return (FAULT_RESTART); + } + + /* + * Now make sure that racily checked + * conditions are still valid. + */ + if (__predict_true(vm_page_all_valid(fs->m) && + (vm_fault_is_read(fs) || + vm_fault_might_be_cow(fs)))) { + VM_OBJECT_UNLOCK(fs->object); + return (FAULT_SOFT); + } + + vm_page_sunbusy(fs->m); + } + if (!vm_page_tryxbusy(fs->m)) { vm_fault_busy_sleep(fs, 0); return (FAULT_RESTART); @@ -1708,10 +1783,10 @@ RetryFault: found: /* - * A valid page has been found and exclusively busied. The - * object lock must no longer be held. + * A valid page has been found and busied. The object lock + * must no longer be held if the page was busied. */ - vm_page_assert_xbusied(fs.m); + vm_page_assert_busied(fs.m); VM_OBJECT_ASSERT_UNLOCKED(fs.object); /* @@ -1780,7 +1855,7 @@ found: * Page must be completely valid or it is not fit to * map into user space. vm_pager_get_pages() ensures this. */ - vm_page_assert_xbusied(fs.m); + vm_page_assert_busied(fs.m); KASSERT(vm_page_all_valid(fs.m), ("vm_fault: page %p partially invalid", fs.m)); @@ -1812,7 +1887,10 @@ found: (*fs.m_hold) = fs.m; vm_page_wire(fs.m); } - vm_page_xunbusy(fs.m); + if (vm_page_xbusied(fs.m)) + vm_page_xunbusy(fs.m); + else + vm_page_sunbusy(fs.m); fs.m = NULL; /* From nobody Mon Oct 13 00:30:14 2025 X-Original-To: dev-commits-src-branches@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 4clJCV5Cvlz6BWg1; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCV1ykRz49H8; Mon, 13 Oct 2025 00:30:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xGzxVSN5LSnkuOtQxUJxPZIt5c7qpbw7CgYJcAD3mDE=; b=CpnyqXJMmGKtoNksZW6rukBRpidfRmm41C2HrsdGx4HQXntpR+QFj6FuWPmrWly4MQlS2B gbw3uIVbCeMhgHDk73p7VTKh9cvkCMYiNjuCpDK7WMp7t4s64jxtv5tgNY9dO5NS0MzOpm HOglSTjbUUiLDgRzutFTXE8LZeg8V7p/OGEj4jml9QorAtYsjpY6MDF5mZeoYd913oUVFJ DyUBKc8LSp0WB4ZNW7O/hZ1VZFoJjuNPBRUHkzjC735cFYTZwX2NhBmjY3b2LJRBt2GTLK pTmmmXBu5xaY8njFkwDNGiws0WxsL9wZoyuEYM5bvo4EPByONhmLfRMbWX9yJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xGzxVSN5LSnkuOtQxUJxPZIt5c7qpbw7CgYJcAD3mDE=; b=qyuj3jHAsYSYfDLE2aAZ/+PgRgMkvhREuLZfY7sHQ7tfGrD4jstA3N7a6Fnl4/c1V1S24u IYIlUL50YLGUitzigfXtimQHnXbLj8BCVbhSNZDfVNI3TxKctPN4nszJbyqYIQJRDJTjDB JArxCst+tsEvNfeGrkJ+R7oY+86YQQMmnm0blWCLhUlgCmGKRixdX3ddXLSZssPQIyJW9K 4EqDY4YrDr1iNNKUHS0jRxV9GTKqd0+bW15n1IzWmAAk3JR3dZLBUOGmS3CzROPqy0H+90 SQ8qwIkOKq8vOFkL7A4gfHOVyYBq28AF7ki72Bp6Xa5tDqgMynIEywH9ZtdpJw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315414; a=rsa-sha256; cv=none; b=noGNk304hzZlzTxmXidIpJXYqZy/zH6aQsETqFS4o4dcTFF3cuMSmDZrBpPuJ8dI404/wQ 0miC5YqZf6EeB3dKPi00sZiTSIkzXJWGjhi+uQFEenpjQypxaDZoqKvL2enZDlw/7815wz n0rQKKj2YBkjXub7W9C1R+GszAYISolXyOEzEbz/AhP7O5EDWjJw6LtlRa3Um3bLpPYD57 Z9ZbZpQXwuhRfSfA7hfZADw9MJkmhh0M5VexbFOnGESPOvMrmAxDRCditZvJhWAlLNRMw0 pSwABQk5AvTq4euZuNZHHiA6GURA+P7kldGDNvsigIKGHbwFgkDD2ibP1KXb2g== 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 4clJCV1Sr8zkNt; Mon, 13 Oct 2025 00:30: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 59D0UEbl046552; Mon, 13 Oct 2025 00:30:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0UEcH046545; Mon, 13 Oct 2025 00:30:14 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:14 GMT Message-Id: <202510130030.59D0UEcH046545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: d1cdb4a087e6 - stable/14 - vm_fault: assert that first_m is xbusy List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: d1cdb4a087e69e1515a855a928ced8a18f9b75f9 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d1cdb4a087e69e1515a855a928ced8a18f9b75f9 commit d1cdb4a087e69e1515a855a928ced8a18f9b75f9 Author: Konstantin Belousov AuthorDate: 2025-08-05 15:46:56 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:46 +0000 vm_fault: assert that first_m is xbusy (cherry picked from commit a38483fa2b3a26414d3409b12dd35ac406c44cea) --- sys/vm/vm_fault.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index f6e75629864e..aad112a652ed 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1785,6 +1785,11 @@ found: /* * A valid page has been found and busied. The object lock * must no longer be held if the page was busied. + * + * Regardless of the busy state of fs.m, fs.first_m is always + * exclusively busied after the first iteration of the loop + * calling vm_fault_object(). This is an ordering point for + * the parallel faults occuring in on the same page. */ vm_page_assert_busied(fs.m); VM_OBJECT_ASSERT_UNLOCKED(fs.object); @@ -1887,6 +1892,9 @@ found: (*fs.m_hold) = fs.m; vm_page_wire(fs.m); } + + KASSERT(fs.first_object == fs.object || vm_page_xbusied(fs.first_m), + ("first_m must be xbusy")); if (vm_page_xbusied(fs.m)) vm_page_xunbusy(fs.m); else From nobody Mon Oct 13 00:30:15 2025 X-Original-To: dev-commits-src-branches@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 4clJCW3tf8z6BX2s; Mon, 13 Oct 2025 00:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJCW2Pxcz49Kj; Mon, 13 Oct 2025 00:30:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315415; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6lPH01/exVEKha5/248S7SCCnQn4IhoLFcDPFGo9ukE=; b=mfpgX3bJMgl6jykmW8yxR6QFP07mvK87VnAHyPQzMSoIA9r7ak2H7ntdjPaUBsORgES5FB Gja2N1b178iUi5xzjcGZp0Vm7G2mRyHBK4eZkOLfSaoDueIxYg46f2StLEe0tP2Ne71jhf FGEa1UjxsQ47hUmYRrEp+PwVQZ4FVVwZKWVf0cn67OMo+RoRBo0rllvgLh3GthKimvBHZX W6UeOfhqfq7JgAcZaGV3qorIsulATMAoJ58xeP3/BCCVNpDMLRLBs+omNGvZ15Uo81/gUX PL5Z46CKR2LM1biBYduzSlseoAj6pT9HS/W1EpYTO8o6Q3rBYSynqxSabh6DPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315415; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6lPH01/exVEKha5/248S7SCCnQn4IhoLFcDPFGo9ukE=; b=ROXZ9IAMy0UF4z/6pdoSCYCLi6HdKxnr/w6uLlcNBJcmra+pKv9rmiM3DJT2Z46NCTMIHJ 8jcVRtc36Gry72W20xVpfEW06YiwRqjA+w8Itv7aqBnFVflJsgUFq5aUabWyrFxTbyDTSd mS6BO4RTt57cc9WESi4z+7N8I0oWB4TLs8Xm7g0Yu6xAYHD9rQ140Dz2rYrtQNHlCAPkOX cf5J3TG5duQPfJURNIEVLJvaLEFHyCQfdompTwyBkEJRoce0QL/9+LlYkwVA3PrT7wwyrW BTMrcT1SxqAIiRuSi+X+yrdqO0JxNiInQmOdngmX7l/CsFVceETP7fYn9OKPlg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315415; a=rsa-sha256; cv=none; b=OG+E3swu0ljwxxQqK5SASKaCF1W8H19y5EbuEUfKOZPWkMjgJeyQNMKwt0e95fjFVkMdoB rE2KyErtoOEBaPjkMwdcptS2pVAzDgX5k3y/taBr9Ch/oOjHHS3V62ouluvZ/UWqqxtqoB m5cuWUITt8+yZzkRRBljD3sm0L7HmRgPabCcVOgvgtEdn2o6X04Q7Fb9IasFHLliRMDHka RYzhLzrH++mYw5RmeQjrQxPyzkM3ZTJ9gtWhMFUDvZgthb0fQhfhmhHnwUH2WjDYi0S1pe PT/NuDESEus+3rFmru2jDvdr14oUZqrgZ8Uv7/xGQRaZkBbqc6+f9+Ap8FSnTg== 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 4clJCW1zSjzjvr; Mon, 13 Oct 2025 00:30: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 59D0UFoE047234; Mon, 13 Oct 2025 00:30:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0UFtZ047223; Mon, 13 Oct 2025 00:30:15 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:30:15 GMT Message-Id: <202510130030.59D0UFtZ047223@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 0c7c1c27ea9e - stable/14 - vm_fault_busy_sleep(): update comment after addition of allocflags arg List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 0c7c1c27ea9eed8aefa236daa13eabb5bd050cfc Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0c7c1c27ea9eed8aefa236daa13eabb5bd050cfc commit 0c7c1c27ea9eed8aefa236daa13eabb5bd050cfc Author: Konstantin Belousov AuthorDate: 2025-09-15 00:52:47 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-13 00:23:46 +0000 vm_fault_busy_sleep(): update comment after addition of allocflags arg (cherry picked from commit f1b656f14464c2e3ec4ab2eeade3b00dce4bd459) --- sys/vm/vm_fault.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index aad112a652ed..9f7176eebabb 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1440,11 +1440,10 @@ vm_fault_getpages(struct faultstate *fs, int *behindp, int *aheadp) * and we could end up trying to pagein and pageout the same page * simultaneously. * - * We can theoretically allow the busy case on a read fault if the page - * is marked valid, but since such pages are typically already pmap'd, - * putting that special case in might be more effort then it is worth. - * We cannot under any circumstances mess around with a shared busied - * page except, perhaps, to pmap it. + * We allow the busy case on a read fault if the page is valid. We + * cannot under any circumstances mess around with a shared busied + * page except, perhaps, to pmap it. This is controlled by the + * VM_ALLOC_SBUSY bit in the allocflags argument. */ static void vm_fault_busy_sleep(struct faultstate *fs, int allocflags) From nobody Mon Oct 13 00:32:26 2025 X-Original-To: dev-commits-src-branches@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 4clJG24xNvz6BX4H; Mon, 13 Oct 2025 00:32: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clJG23pnyz3DNN; Mon, 13 Oct 2025 00:32:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315546; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ur9SWKqZnmWkzHN3h+mBvAvFzOk2d5ZNriGzwZCWkg0=; b=P2Yfh1AU9pKeIvKR6W7Zuk3vOV+Uz2OLIsNBVw9YI0JGVfG6hHhjt+jPjwsAQBVivyXS2y nABKt1ZetAhgLCTFVDKWpfFSHypiW8KHCOeC/u8ad3aI/r4mSQpBMg4CdjkJl0FZpxE4XS rS4XCnbTN1B+TtOC3mPOVFcXUWl34iwCTtwyCd0jQDfRoRh9SGcB0TeNMh/I96KxP3rOxR sqJRgmoCsH4yhBJKsf/gt4iee66Q4p+OCequ+UWvt6M1b1arqvp12u0hno27hiOHk8QX2P 67KrI8TDY2Zzh1WJgP0j1txTg0RtR1uuLEJw84taM5oA7d3C3Q8dsSxSygQhSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760315546; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ur9SWKqZnmWkzHN3h+mBvAvFzOk2d5ZNriGzwZCWkg0=; b=ObiwOiAhC3WrNYEsSgz3djimTmHRfFPTXw7mFc3pgVYAjeyuvPkfVoShxEQJyZRXZGcera S7QtGyYfyfLb4UjlAvltsPfH3+/vRIZbcLLu/29cV9x//QTTN4+i9rn7C44ZOZ4wNPYeip RW0Zd6kmrlrkMRQ9VzrPLMZqtUINBfAgJkSH+WZId8hPwFzuXcyODrA7Ppwj8GOo0ydaK+ VnCx/yjoYQRF//+21IM4o8qinS7RZNVWNFnkFy8p2ymQ85QaNnhctClaJgukM+LBl1yM65 UoaPWKaL7RuXqQzAVyl71ocEn5e+t2ouYoT6DXvAhwcpY+8GWLkEOZDtyOvwXA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760315546; a=rsa-sha256; cv=none; b=saHw5P2BRVxSZD/Udl+cjVJM+9u6PMy/oIf5e4JKUTUMjXJ32x37GIdgu0rLwRJQqwBW8O aJ5cRUXkL2h7S744Zkw1Vf6Fu+B2/FDEX8GnB3XdhSB/liF6mm408OsdSuBYpScesMDg39 9L2pbyjproSsgMJC8T9CITXGlOfxOMi/G/z3KYdn3+ow5QE+VoIRZ1j7Oxa6DjZ6ebvpTU IFaS3r2jI+3r6x+49cs7vyqVaLPVi4Ul1aoANXd4XxaJeuQRQ9OicE0semBqKwqOqilkCS h2PO5BkK92N2hCsERUrtnVkqW4Iakh1dzjbzz8zrMwGu0yFDsqJbCQC3BI1RYA== 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 4clJG23DXMzkmN; Mon, 13 Oct 2025 00:32: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 59D0WQFE056293; Mon, 13 Oct 2025 00:32:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D0WQTg056290; Mon, 13 Oct 2025 00:32:26 GMT (envelope-from git) Date: Mon, 13 Oct 2025 00:32:26 GMT Message-Id: <202510130032.59D0WQTg056290@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: a7fc4e326c8d - stable/15 - rpc.tlsservd.c: Pin max threads at 1 for now List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: a7fc4e326c8db7b5429b616e0446aac1a041d239 Auto-Submitted: auto-generated The branch stable/15 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=a7fc4e326c8db7b5429b616e0446aac1a041d239 commit a7fc4e326c8db7b5429b616e0446aac1a041d239 Author: Rick Macklem AuthorDate: 2025-10-10 23:29:25 +0000 Commit: Rick Macklem CommitDate: 2025-10-13 00:29:26 +0000 rpc.tlsservd.c: Pin max threads at 1 for now PR#289734 reports a crash in tcp_use_close() when the rpc.tlsservd daemon is being used. Although I have no, as yet, had time to track down/fix the race, it turns out setting rpctls_maxthreads to 1 avoids the problem. This patch pins rpctls_maxthreads to 1 to avoid the problem, until there is a proper fix. PR: 289734 (cherry picked from commit 7a289fe3cd5c6de7ddbe394b7700b20b0bafdb3e) --- usr.sbin/rpc.tlsservd/rpc.tlsservd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/usr.sbin/rpc.tlsservd/rpc.tlsservd.c b/usr.sbin/rpc.tlsservd/rpc.tlsservd.c index f07385a2baa7..fb0501b2db4c 100644 --- a/usr.sbin/rpc.tlsservd/rpc.tlsservd.c +++ b/usr.sbin/rpc.tlsservd/rpc.tlsservd.c @@ -168,7 +168,12 @@ main(int argc, char **argv) rpctls_verbose = false; ncpu = (u_int)sysconf(_SC_NPROCESSORS_ONLN); +#ifdef notnow rpctls_maxthreads = ncpu > 1 ? ncpu / 2 : 1; +#else + /* XXX For now, until fixed properly!! */ + rpctls_maxthreads = 1; +#endif while ((ch = getopt_long(argc, argv, "2C:D:dhl:N:n:mp:r:uvWw", longopts, NULL)) != -1) { @@ -199,6 +204,8 @@ main(int argc, char **argv) if (rpctls_maxthreads < 1 || rpctls_maxthreads > ncpu) errx(1, "maximum threads must be between 1 and " "number of CPUs (%d)", ncpu); + /* XXX For now, until fixed properly!! */ + rpctls_maxthreads = 1; break; case 'n': hostname[0] = '@'; From nobody Mon Oct 13 01:26:06 2025 X-Original-To: dev-commits-src-branches@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 4clKRy6NmQz6Bbmv; Mon, 13 Oct 2025 01:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clKRy5WfLz3JqD; Mon, 13 Oct 2025 01:26:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760318766; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YvR1R6ODUTNn+Ap4DjwQBMz8fJtpoALck6mnA+4A3j0=; b=pppBBnunr9CpZio9bEF79Ecr+m7ZIPoTedZ3MTRBBAKIopcddtIKgwYg+UVk9/B2cyoX0O DxONwxLD6eUJvf5+1RuFlaKM7f/HIOYaCxWQ1taFJ6pWwqM83903vy4g0XpiGhOwDeWlKS krMdFfcfNY9CrHlQCBmTQGoal5uF/wqpV4S6XBF/De5Xti9KERGvhDotxcT0oPBbTj8waC WYKOXVN2qiPnGZrRBy+UCnxHbbbztkmTCPvua5tfPNnQ3UAf4IZLkXctfXXRVCaxs+bOB1 F3WdbdtXFi5DnsB9Mo3NeHyzMur3KugKwpq4xdI6hU0Ycl9OyNU/fTrT2YfEpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760318766; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YvR1R6ODUTNn+Ap4DjwQBMz8fJtpoALck6mnA+4A3j0=; b=mR+NCqTg2xnZ+3vxO6EYAWoQD5efL/ywHX8rd9kZjr8EFNmt3xBF9zIl8hH/i4YxHBzWbu Yr1plgiY4SqqNlB6TG6WSNGCNXGs/OjVEkGpds3wg1Yupsa33wiorQeLEUBQP4mGstXCe4 05zFyg+X67/es/ORBNGZNFkE++hSTFHiato4n0M3DUFIXCWj5aSrJirV4ngsCbBKyNk6yZ NMg8izHWTGFeUFOGQ2wltYLjGlvhGnDaNpiM5wXJRDypyIIvGDhsVvOyZdgHb9ZkIHVX+X yNQ2IB74eaTZY6WeLkLHnOLIE5womc3BuE/piZnArr9pN74g7pSzfp4P+tY+MA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760318766; a=rsa-sha256; cv=none; b=y2Hg3bYT64Cn12CVYuyT5BAZfqmcFy6WKvBlxaHtH0ZwEb06Fmo6I2Gqdg6Lx8jHCT7pIt PP95nehtIbrNI/uk9b2FZW5h8jpqGKOk05ksXijS9rIXCcoisOEd1V2+D7lRHO/c5EyNDv PpZSPqSvcLW4EHYnlKMUksSmLYoCgUGL7lfzVnv8KKt7vqSC5+06x3h+K3mw3FsQpiuonP YY7dhMgEZDXf162tEqB8qfAuoq8W6OXpGRzaasqZ6BR1q2sxVtoSi9O7T2n58+ZXzNwxjA SbuezRRnOqklB8RdiREa4yO2Ro9TqiOorUrvA0+fIa4OzdmTaf0RxdP07u610Q== 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 4clKRy55jLzm17; Mon, 13 Oct 2025 01:26: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 59D1Q6RZ052337; Mon, 13 Oct 2025 01:26:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D1Q6Q1052335; Mon, 13 Oct 2025 01:26:06 GMT (envelope-from git) Date: Mon, 13 Oct 2025 01:26:06 GMT Message-Id: <202510130126.59D1Q6Q1052335@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: c904188d3515 - releng/15.0 - rpc.tlsservd.c: Pin max threads at 1 for now List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: c904188d35154b291c837603ed332eab694d3bb6 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=c904188d35154b291c837603ed332eab694d3bb6 commit c904188d35154b291c837603ed332eab694d3bb6 Author: Rick Macklem AuthorDate: 2025-10-10 23:29:25 +0000 Commit: Colin Percival CommitDate: 2025-10-13 01:25:42 +0000 rpc.tlsservd.c: Pin max threads at 1 for now PR#289734 reports a crash in tcp_use_close() when the rpc.tlsservd daemon is being used. Although I have no, as yet, had time to track down/fix the race, it turns out setting rpctls_maxthreads to 1 avoids the problem. This patch pins rpctls_maxthreads to 1 to avoid the problem, until there is a proper fix. Approved by: re (cperciva) PR: 289734 (cherry picked from commit 7a289fe3cd5c6de7ddbe394b7700b20b0bafdb3e) (cherry picked from commit a7fc4e326c8db7b5429b616e0446aac1a041d239) --- usr.sbin/rpc.tlsservd/rpc.tlsservd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/usr.sbin/rpc.tlsservd/rpc.tlsservd.c b/usr.sbin/rpc.tlsservd/rpc.tlsservd.c index f07385a2baa7..fb0501b2db4c 100644 --- a/usr.sbin/rpc.tlsservd/rpc.tlsservd.c +++ b/usr.sbin/rpc.tlsservd/rpc.tlsservd.c @@ -168,7 +168,12 @@ main(int argc, char **argv) rpctls_verbose = false; ncpu = (u_int)sysconf(_SC_NPROCESSORS_ONLN); +#ifdef notnow rpctls_maxthreads = ncpu > 1 ? ncpu / 2 : 1; +#else + /* XXX For now, until fixed properly!! */ + rpctls_maxthreads = 1; +#endif while ((ch = getopt_long(argc, argv, "2C:D:dhl:N:n:mp:r:uvWw", longopts, NULL)) != -1) { @@ -199,6 +204,8 @@ main(int argc, char **argv) if (rpctls_maxthreads < 1 || rpctls_maxthreads > ncpu) errx(1, "maximum threads must be between 1 and " "number of CPUs (%d)", ncpu); + /* XXX For now, until fixed properly!! */ + rpctls_maxthreads = 1; break; case 'n': hostname[0] = '@'; From nobody Mon Oct 13 06:08:45 2025 X-Original-To: dev-commits-src-branches@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 4clRk533d8z6C03p; Mon, 13 Oct 2025 06:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clRk52XmGz3lcg; Mon, 13 Oct 2025 06:08:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760335725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DJ/XgdXMnz/1y9OMkqTM+qvyelkNmckEg3zRjY8dpdg=; b=IP+1z28B32zwA+lA7IZMAePRLmnfkdrnedIn6A0nIOz+z10ZF/ynvckn57/DV8HUgCYePW pEROFoxAqaJiW6DP5SMImLgiKCcB9GK5mkmJnPC7f3GwG+NxAeW1XgzMoD7OSUoRuznM59 dQ2mdZIAmqxsesYmapGTSQW1aV8E/FFi0d+SFQuRb6SiGc55zORd00nCu3106Bh9jPGpSH kyN63DnxMx+p/SkNfmYBdt/EXrCkXuuOO7fogJAaiwmAFBoultNQE57iCqQGuhUfAmjCmx o3gnPBabO8Vv7e523GNvTFS21YIzxxWVPugJLbabdgD/wqKsDcnDS7g3yULjOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760335725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DJ/XgdXMnz/1y9OMkqTM+qvyelkNmckEg3zRjY8dpdg=; b=huJzX9PNhivsz9l7ovmFUJtJOdIP32AE+G3JhdIAsxqzcsli0dm83RC0MVX1EtZ2kdCWQx 6GD7IcN9RxcqBbjfzFY+gbB0XgbFSZFIPXgNWfjHPa8BIfUWXOdSp98rZKP0c5gD/ffVfj 5OmliGpUq8Yaza0DzYDjNy5E3jmfdS7StNISPDEQPY/Jw585Jy7GlDxooVwIwAjYZtLMjN uLgWh3W79T2OEiWZHDD2ihcinVzBoglZzcTaO3ZPTjaFTtKdK0ALOUrhFYYJ7tLWZBs95t IZBvzrR2vIjnAq3GHOIZj6T4AIKax54jYTBZizG/j0DNFTAwiBQ/5Pltne4I5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760335725; a=rsa-sha256; cv=none; b=GTVrCoftNp8NOpKQiNb9A3JPQV8q+TW48le4csA1suA7O6V3FT4CPEiGZZYlyvB7YRzPE1 bYarbLtd2+gP92oWSc7S71AL5/ezUCleoEVcRlbVhRdlc2OlVrP/v4pMJCDXgmk6uctJTV 18jPuvbYaV3G+++s55cTpKoCbK1XyobTzFO4aNvwxhn0eMx81Sf61h7xgtyiNaWTJ4Tba3 FdhVyXpBsnX7Wgqc/IyO4EpfL6zUFoh6R682T255cuXmZRzIFivzvtAFeR0JYMz0QBQZGk SVY6cVbEWKwRKdb43be5bbwThVTrVjXosNB+YVqQfFFet4htUrG1UrBCktWRQA== 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 4clRk51gwtzvPW; Mon, 13 Oct 2025 06:08: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 59D68j6c080441; Mon, 13 Oct 2025 06:08:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D68j8C080438; Mon, 13 Oct 2025 06:08:45 GMT (envelope-from git) Date: Mon, 13 Oct 2025 06:08:45 GMT Message-Id: <202510130608.59D68j8C080438@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Xin LI Subject: git: f139a644d3ee - stable/15 - MFC: libbz2: add pkg-config file (bzip2.pc) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f139a644d3ee01667480ff6d698757d3e3689794 Auto-Submitted: auto-generated The branch stable/15 has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=f139a644d3ee01667480ff6d698757d3e3689794 commit f139a644d3ee01667480ff6d698757d3e3689794 Author: Xin LI AuthorDate: 2025-10-10 05:35:54 +0000 Commit: Xin LI CommitDate: 2025-10-13 06:08:29 +0000 MFC: libbz2: add pkg-config file (bzip2.pc) Add generation of a bzip2.pc file for use with pkg-config and create a basic template as bzip2.pc.in. This allows other software to easily locate and link against libbz2 using standard pkg-config mechanisms instead of manual compiler and linker flags. The version number is extracted automatically from bzlib.h to keep it consistent with the library sources. Tested: pkg-config --exists --print-errors "bzip2 >= 1.0.9" (fail, expected) pkg-config --exists --print-errors "bzip2 >= 1.0" (succeeded) pkg-config --libs bzip2 (-lbz2) pkg-config --cflags bzip2 () (cherry picked from commit 586319793368cbc664b48187bda60d27e171753a) --- lib/libbz2/Makefile | 13 +++++++++++++ lib/libbz2/bzip2.pc.in | 11 +++++++++++ 2 files changed, 24 insertions(+) diff --git a/lib/libbz2/Makefile b/lib/libbz2/Makefile index d773f202dd67..2aedbaed4328 100644 --- a/lib/libbz2/Makefile +++ b/lib/libbz2/Makefile @@ -13,4 +13,17 @@ CFLAGS+= -I${BZ2DIR} WARNS?= 3 +BZIP2_VERSION!= sed -n '/bzip2\/libbzip2 version /{s/.*version //;s/ of.*//p;q;}' ${BZ2DIR}/bzlib.h + +bzip2.pc: bzip2.pc.in + sed -e 's,@prefix@,/usr,g ; \ + s,@exec_prefix@,$${prefix},g ; \ + s,@libdir@,${LIBDIR},g ; \ + s,@sharedlibdir@,${SHLIBDIR},g ; \ + s,@includedir@,${INCLUDEDIR},g ; \ + s,@VERSION@,${BZIP2_VERSION},g ;' \ + ${.ALLSRC} > ${.TARGET} + +PCFILES= bzip2.pc + .include diff --git a/lib/libbz2/bzip2.pc.in b/lib/libbz2/bzip2.pc.in new file mode 100644 index 000000000000..d91c9931a58a --- /dev/null +++ b/lib/libbz2/bzip2.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +sharedlibdir=@sharedlibdir@ +includedir=@includedir@ + +Name: bzip2 +Description: bzip2 compression library +Version: @VERSION@ +Libs: -L${libdir} -lbz2 +Cflags: -I${includedir} From nobody Mon Oct 13 06:09:11 2025 X-Original-To: dev-commits-src-branches@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 4clRkb4kdDz6Bymx; Mon, 13 Oct 2025 06:09: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clRkb4Df5z3ln8; Mon, 13 Oct 2025 06:09:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760335751; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QdBompqpZuHbOD8diIZemCNUFz9je2UF+Q/s6FnZbA=; b=AtZGHEVuc9Kaiotnc6yN6e/3ETtagKZ7XKJIsOZGPeIwPYwwKtIGEQ3uM0OznsYjPWutfH TboJ16aLWNysDSfD5SIFON9aF3wZ0ZX7D7byG/DjEtOVKjNGYHEBFPpg+BZBPr/MYtRvaO 57GGGNdWXbMxRrzvjMVfbrQrG3M1jQ93IO6X+67A2+xMTtbIRcHIscFtX4e4RRq3i+NJqT wlt6oMJCNSOam7VRFQvIoCz94WYJqTFStrSYyWG7QV9E3oGXwl/hhg0PdHWRDGgM+xH7HZ BaMs5lga2Au0HQKLQhITdmQyKvfPrFiFkegq3xaW+d9S8E0KygJLvHgAjRhG7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760335751; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QdBompqpZuHbOD8diIZemCNUFz9je2UF+Q/s6FnZbA=; b=r1aJRQ/dQlC/4I8L+ZEo3RDsMFLEpSXyjYcNoX6NhoN5LFLGCMD5nMfrFJ7AvRbiJ+3eR1 3MkM+ire+5OYCk0sptflvRQnev2rzzUMIkLWDxFOSnTIbARqtKxSpzLexfoMmAOJ+S7RtL nQWrfUw/1rRJV4MajfR+6f0mbJS8uKwXiW6nPj0myaWKdVV0nOsjiVPBny2WzI6d+jHAy+ UkfGqASuctH+cJdDClZ9LI87QKFu4HpAO+O9SGKvocYt9S7gisDxFOuzhhwu3Je1DjXc8L T4bw71sxaEpQS8B7mFuDJ7G3RHNZGkJ25RUgRI+GW3KHl7cZ0hLBQp3vXny9Gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760335751; a=rsa-sha256; cv=none; b=MBJh0q8UyDMIOQqDVo4foy7QBw23QmTz+cr2WKHadjw1pfIRtOO+zd+Ts2gA4u469/qoI0 ybhEFdOsYP6ZtwoIrpfkZDhOBzisaNQ29Bf41yRyS2kewxzKiJ3UQhZYxzppXsqbmNQn9C zpWRPU46QVSItjU7hVPV1IxDvboCq8/3FVpDQHIpSCOZhsURWr5qY7rc1aZ+UpW6LJBK2p 4nrJxRxXNU0LUaKHC07owNwYxqLUEPTDVMOYBaq0tMgOhjxP30jPkZNwHeT0s7PwNGA65x zeKJISqFIENB9KYMg0sKwE0uRL0dilas4FVWCQ6+yiSvOiFEVUbkfGQQYERLzQ== 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 4clRkb3r15zvBy; Mon, 13 Oct 2025 06:09: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 59D69B55080712; Mon, 13 Oct 2025 06:09:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D69Bif080709; Mon, 13 Oct 2025 06:09:11 GMT (envelope-from git) Date: Mon, 13 Oct 2025 06:09:11 GMT Message-Id: <202510130609.59D69Bif080709@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Xin LI Subject: git: e1ea6b7b70cf - stable/14 - MFC: libbz2: add pkg-config file (bzip2.pc) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e1ea6b7b70cf5204979f6c6112ad54c0036a9f7e Auto-Submitted: auto-generated The branch stable/14 has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=e1ea6b7b70cf5204979f6c6112ad54c0036a9f7e commit e1ea6b7b70cf5204979f6c6112ad54c0036a9f7e Author: Xin LI AuthorDate: 2025-10-10 05:35:54 +0000 Commit: Xin LI CommitDate: 2025-10-13 06:09:06 +0000 MFC: libbz2: add pkg-config file (bzip2.pc) Add generation of a bzip2.pc file for use with pkg-config and create a basic template as bzip2.pc.in. This allows other software to easily locate and link against libbz2 using standard pkg-config mechanisms instead of manual compiler and linker flags. The version number is extracted automatically from bzlib.h to keep it consistent with the library sources. Tested: pkg-config --exists --print-errors "bzip2 >= 1.0.9" (fail, expected) pkg-config --exists --print-errors "bzip2 >= 1.0" (succeeded) pkg-config --libs bzip2 (-lbz2) pkg-config --cflags bzip2 () (cherry picked from commit 586319793368cbc664b48187bda60d27e171753a) --- lib/libbz2/Makefile | 13 +++++++++++++ lib/libbz2/bzip2.pc.in | 11 +++++++++++ 2 files changed, 24 insertions(+) diff --git a/lib/libbz2/Makefile b/lib/libbz2/Makefile index 832ec15487b8..3f52b3df6f92 100644 --- a/lib/libbz2/Makefile +++ b/lib/libbz2/Makefile @@ -12,4 +12,17 @@ CFLAGS+= -I${BZ2DIR} WARNS?= 3 +BZIP2_VERSION!= sed -n '/bzip2\/libbzip2 version /{s/.*version //;s/ of.*//p;q;}' ${BZ2DIR}/bzlib.h + +bzip2.pc: bzip2.pc.in + sed -e 's,@prefix@,/usr,g ; \ + s,@exec_prefix@,$${prefix},g ; \ + s,@libdir@,${LIBDIR},g ; \ + s,@sharedlibdir@,${SHLIBDIR},g ; \ + s,@includedir@,${INCLUDEDIR},g ; \ + s,@VERSION@,${BZIP2_VERSION},g ;' \ + ${.ALLSRC} > ${.TARGET} + +PCFILES= bzip2.pc + .include diff --git a/lib/libbz2/bzip2.pc.in b/lib/libbz2/bzip2.pc.in new file mode 100644 index 000000000000..d91c9931a58a --- /dev/null +++ b/lib/libbz2/bzip2.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +sharedlibdir=@sharedlibdir@ +includedir=@includedir@ + +Name: bzip2 +Description: bzip2 compression library +Version: @VERSION@ +Libs: -L${libdir} -lbz2 +Cflags: -I${includedir} From nobody Mon Oct 13 06:50:34 2025 X-Original-To: dev-commits-src-branches@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 4clSfL2kdQz6C3gC; Mon, 13 Oct 2025 06:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clSfL26Vxz3LrB; Mon, 13 Oct 2025 06:50:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5mKXkcVlIYAbdspUtjrv3wie6MGI9y2zstz3WIPHpLA=; b=klCUBwVORhQ0PwzAW8p0k+fz2G0/eKBduDRchaX0Eim102k8UDPCqr3EmkhEltka+jWxyO cLau77ApIQn8iJOZABT2fcHeJozmTqcpV0nGxccaJxSGr5wVQVMwHGfeVisVLLWD91iXkG 1LfI5EmG4aII0nMXUrcOD+nSiV1UQOBnCsCGu8nHgjjOWeLzbMxWFBL/sFxrJhQUFIN5Ag P4OOAWAbTfFtChBp2Izy8Ot2w2ddTKXRt/B2q2SVrvpe9ydDnQtY2EdLNks23bPPdob1XI mQNbsGaZYjPaUMb/5DjvIXvr75z1BCz1vFSjVVu9YGFuBPwYN2CdN6JySxFzEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5mKXkcVlIYAbdspUtjrv3wie6MGI9y2zstz3WIPHpLA=; b=CjQg65vdHHHV/ibfQ5P1nEtxCwiJXDhqCiXgEDI6RoDJww8sPCpSj8yrWFrVMr1g4k39DK X2l/ts/xd0uTQt1k9/x77PcorLYEVi8U1FG41Nev7OjUbif/oVe8SojZmBDwLy/5m91i8a 9k+ZbXE7M+ZuB2RhtEgmMW8lsFbE1vP/ORdfz24OwCPhCaZJt/rOxskYwG4/fu65Ethi6C JgH7R5UX2Fkz2/6MHkRueK9U/O+6sylUQFKC9Gf8KBBiya7FAuCZ59oXPecj0dCCKgZADL w3borBydonAALwBWp+SYRKCaM68SQNCIyZ9sSwGQtIZTvqoaBrgyxbmTwUyXWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760338234; a=rsa-sha256; cv=none; b=ajVaVnN7U7Mx/ouRI+OJYHKKrsJH5pbkjJFbUh2B/XCB/uJSsiMfQdzuYdHrkwE17aMNGw HyPLMoV2LHS0o1PCJ8s2znJSGWQIikS4Q1mEeuedQc/+4sOI/dENOdzsc79sUrsg6kilC8 /XVnM+mN6ovlH4u8EbowLTH1vvDkvBfRqmZ20Ia7iETugffhENyGCXV+Hts8YaN1vIXcfv xi/ookAnILX+xjpl4pjpCjGDZGlFSAlwGZ24lGusdKW8tbkvi2vSdI/Kdns7pTEmtx7UIk A0L3MYqHaMtf5s9154+dE7rNkLaUB7DGFaGcVLmzOp+mUGPlJ+v11Q+IDp3ruA== 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 4clSfL1cp6zwGR; Mon, 13 Oct 2025 06:50: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 59D6oYsK078901; Mon, 13 Oct 2025 06:50:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D6oYug078898; Mon, 13 Oct 2025 06:50:34 GMT (envelope-from git) Date: Mon, 13 Oct 2025 06:50:34 GMT Message-Id: <202510130650.59D6oYug078898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: dced18c7703d - stable/15 - libbluetooth: Move to the bluetooth-lib package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: dced18c7703d256a9975bb7143d107f0f07dfd17 Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=dced18c7703d256a9975bb7143d107f0f07dfd17 commit dced18c7703d256a9975bb7143d107f0f07dfd17 Author: Lexi Winter AuthorDate: 2025-10-12 15:28:20 +0000 Commit: Lexi Winter CommitDate: 2025-10-13 06:32:57 +0000 libbluetooth: Move to the bluetooth-lib package Move the library, but not any of the runtime. This allows executables to link against libbluetooth without having to pull in the entire BT stack. MFC after: 3 days Reviewed by: dch, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53016 (cherry picked from commit 426891e0f8f1cfae0263ba81ea55f46c547d7762) --- lib/libbluetooth/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/libbluetooth/Makefile b/lib/libbluetooth/Makefile index a6ac291a0bf8..b935bdf3fc78 100644 --- a/lib/libbluetooth/Makefile +++ b/lib/libbluetooth/Makefile @@ -1,6 +1,8 @@ # $Id: Makefile,v 1.5 2003/07/22 18:38:04 max Exp $ PACKAGE= bluetooth +LIB_PACKAGE= + CONFS= hosts protocols CONFSDIR= /etc/bluetooth CONFSMODE_protocols= 444 From nobody Mon Oct 13 06:50:35 2025 X-Original-To: dev-commits-src-branches@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 4clSfM4gc9z6C468; Mon, 13 Oct 2025 06:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clSfM382fz3Lfq; Mon, 13 Oct 2025 06:50:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hP/VWUi76Gda6WgaWgTg+RMWFMgOSif84vI3wYR/zO4=; b=QUmiTq7ac8ih8I56rLTvgHCSX7ZHLFJ5hETQiZwOczGKaAJ6QM9m82WmWseFcdpUTqmCTj emAEKhvTixpIW32Vo8J9TqAnX2LJh325DvnJtq+YfxCAyW9j4ITffyLsX3Au5Yu9fdVgAq B9vtgWuvx/QqWh/FICsfZM6r181TKjuDlfrdwczFiHzIHX1Xa2CPlzbe4HuimWfUh3DG7t Vv378QJP5N/WmDuZ9SYzUseTkmTjwwl35PoIW/T0kn2DIuJRp+gDaha0EwB+Bn5gangNUT 4tV2U9P8q5jMzEn4e0Kj5D8gZ4Tff+EPHxusZq/4NvGxtePq2NZQSL7athbQEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hP/VWUi76Gda6WgaWgTg+RMWFMgOSif84vI3wYR/zO4=; b=iJRoHXFibvFeyUPVJT4Qifm8obSnVJdq5Hcu9AklfEx3M1CCMzA+BOA7TJVyKuDWNgmSD+ fvdVrP1LNW86lLaQD45U+cxDLRu+drUzCgQlErbvPw39qmNTputd8GZk12y27Q+fneUe+I YwS4ODwmB9d79yY9QPLPlcBpzDxDi3qoTluV3XKi5uMqpbf0iio9AKMLSl4o1vgAQVGZE0 m10LNYYi4YJNT/z9zIF2yuVVeyPoATNwWIIQK1LOsHqGqDmfxFgk7H3g+LzOkx3Xc/MGAi aDPvSQX3Z+RPtxm94ha2eS27MaRRHdRmcg0bbfh84loE9KMrgg6l4Fh+cL/qKw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760338235; a=rsa-sha256; cv=none; b=n4SfHTY0iWgL3rei28VHhHTVy7muVMSQlEq9+H6RLWoPXnbiWd8HQF73RAck7rS2Mmjavy +B+jIoanK3lcbMH9aSZGQbpjoNJf28jSzpoCNd3wVQ5sF7yJUBLizT4sS238o0J5G+jOXb ERWDMhH4QfQuZ0bzrmLRYvtUSWTulPa62ua8cyVhX/3Z6m5CszYqrza1Lxno4xBf4ZoF3z 8qO+9juPI/E5PuAvWhyfbVCUudcuiuCaf9mWm5dMh33u7MLaRJMYtaKovDxG/NFvyNt0vN sbosWesi58c/Qn9xv8UatGT+KdWCpwBM201awXF81YL2y4Fg/ckDqYAHZwv8Qw== 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 4clSfM2Tv0zwC1; Mon, 13 Oct 2025 06:50: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 59D6oZ3J078935; Mon, 13 Oct 2025 06:50:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D6oZhi078932; Mon, 13 Oct 2025 06:50:35 GMT (envelope-from git) Date: Mon, 13 Oct 2025 06:50:35 GMT Message-Id: <202510130650.59D6oZhi078932@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: 861225fbe31b - stable/15 - virtual_oss: Move plugins to the sound package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 861225fbe31b86922d7f9fcfa1d280bde50f862e Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=861225fbe31b86922d7f9fcfa1d280bde50f862e commit 861225fbe31b86922d7f9fcfa1d280bde50f862e Author: Lexi Winter AuthorDate: 2025-10-12 15:29:17 +0000 Commit: Lexi Winter CommitDate: 2025-10-13 06:33:56 +0000 virtual_oss: Move plugins to the sound package This is the correct place for them, and also issues an incorrect dependency from utilities to sound. Fixes: 1b806e607f52 ("packages: Add a sound package") MFC after: 3 days Reviewed by: christos, dch Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53015 (cherry picked from commit 419dcdc2c981306b0ded44580977d2e053719b14) --- lib/virtual_oss/Makefile.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/virtual_oss/Makefile.inc b/lib/virtual_oss/Makefile.inc index 45c8e0b1fdfc..877465a5c548 100644 --- a/lib/virtual_oss/Makefile.inc +++ b/lib/virtual_oss/Makefile.inc @@ -1,3 +1,5 @@ +PACKAGE= sound + .include "../Makefile.inc" LDFLAGS+= -L${.OBJDIR:H:H}/libsamplerate From nobody Mon Oct 13 06:50:36 2025 X-Original-To: dev-commits-src-branches@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 4clSfN6xFnz6C46F; Mon, 13 Oct 2025 06:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clSfN3yNrz3Lj4; Mon, 13 Oct 2025 06:50:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2iys0lpsdYBkeJ8VZpS9GARZJu6JRx8DDI6COikuOzc=; b=v3ncUryhIOmhvzB+GHiZQVCzo2dOXKsLXRwnLEuGvSHxGFOt0eD4yhvWoqp/Vl+0+ZJGvh sgp7OihU9Sx02vWD2GklI6QJPG+AOhaiSmM+ysWKmnjOktsUIW/NBjCdXmv9HxhZBS9mUX 40CKQ2RLgYCeNoTnc55pTbK4rp7CAcBM/UF++CmWStM+1W2/AAPtCmn4nm7jig9fAm8vLP k2J3/X8S37B1dOapHiqwRGwEkuVzrvYzEkN8P7YAF/ffNi0+Fyg3BUkyUD7CLsQAZcawYy MvwnAp2wvLvOjIw5AANUplH1hUAwFOycrf48NPS/LLQAu2nMlCZf5QxZ949ynw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760338236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2iys0lpsdYBkeJ8VZpS9GARZJu6JRx8DDI6COikuOzc=; b=AzeOgSTGJv79eqdSsMlA1eMDynvvp+ZQpHpIE71pF5cRwbyhBxrgKS5ShqpMKJ9/ZavwhV tnyz+XdrlSI0erwT3Y5kYGwP//fyvW/cvra5YmcWjQjovB10yIk9PZG1mHiv90pH0y9SS4 rHpC8PVJf1mmGLIsjL1lcWHVMrnumjabMn36nMvRdRlhpuibtAI2mxV77t3rdCJ1Zr9lum 66EoC73UmGknf8jn6oLiNwSj6gvnK/bL0yC0g+BuY/pTfdK0Z0X/kA4wHOk2tZreJCHD35 7lcXITiok9OOx5EYzIgWR+hZUxYIwmRxekKC0mqLXHnHdx8k60u+OPVAjZEgAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760338236; a=rsa-sha256; cv=none; b=akS0ZM4Eh/LTYsZM3iMGu2nwRzo3uDSexk+rMHxhRlKrQTVdhEQSvCfinZesf9T8rqw0FQ aE/LITnpm1mCDig4qMf6ODJT4fGzTQYf7KlrBhW0tG3n4be+t6v1w0A9f+8yTUhAXJZyB2 wEhTrge0d1qRgLaQCwwSjduHp3oRSNkMJZcnPgpxST+YpZDhr8pNp8alyj1O1FCfijAIwt K9Pz1eBKnHkobSpEG5NyUVRJ1tCcnUE8Bvh8o2h0kWp/oorj0vqFYiXRslrk/icMgvlZ0F pnikxX4H9EkT7IOsnM06da10Oza42655pv3VI7SM3MLS4IbNPxPTgOrhAQurMw== 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 4clSfN3Qx9zvy2; Mon, 13 Oct 2025 06:50:36 +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 59D6oalh078972; Mon, 13 Oct 2025 06:50:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D6oam9078969; Mon, 13 Oct 2025 06:50:36 GMT (envelope-from git) Date: Mon, 13 Oct 2025 06:50:36 GMT Message-Id: <202510130650.59D6oam9078969@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: 663a53d8e795 - stable/15 - release/packages/ucl: Fix typos List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 663a53d8e795ff8502908da0be4c4df3cee41c33 Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=663a53d8e795ff8502908da0be4c4df3cee41c33 commit 663a53d8e795ff8502908da0be4c4df3cee41c33 Author: Lexi Winter AuthorDate: 2025-10-12 15:53:43 +0000 Commit: Lexi Winter CommitDate: 2025-10-13 06:34:08 +0000 release/packages/ucl: Fix typos MFC after: 3 days Sponsored by: https://www.patreon.com/bsdivy (cherry picked from commit 039eba16f969a3ebc6c169fa61880a33d2a95090) --- release/packages/ucl/acpi-all.ucl | 2 +- release/packages/ucl/audit-all.ucl | 2 +- release/packages/ucl/libbegemot-all.ucl | 4 ++-- release/packages/ucl/libbsdstat-all.ucl | 2 +- release/packages/ucl/mandoc-all.ucl | 2 +- release/packages/ucl/yp-all.ucl | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/release/packages/ucl/acpi-all.ucl b/release/packages/ucl/acpi-all.ucl index 9e75822a8a04..9b63b825bd60 100644 --- a/release/packages/ucl/acpi-all.ucl +++ b/release/packages/ucl/acpi-all.ucl @@ -23,7 +23,7 @@ ACPI is a hardware standard allowing the operating system to monitor various hardware devices and system state. For example, ACPI can report whether the system is on AC or battery power. -This packages provides several utilities that can be used to interact with the +This package provides several utilities that can be used to interact with the ACPI implementation in the kernel: * The /etc/rc.d/power_profile service can be used to change system performance diff --git a/release/packages/ucl/audit-all.ucl b/release/packages/ucl/audit-all.ucl index 3324795d8d9c..0ff79f7c6b73 100644 --- a/release/packages/ucl/audit-all.ucl +++ b/release/packages/ucl/audit-all.ucl @@ -39,7 +39,7 @@ The audit facility implements the de facto industry standard BSM API, file formats, and command line interface, first found in the Solaris operating system. -This packages provides the auditing daemon auditd(8) and various utilities +This package provides the auditing daemon auditd(8) and various utilities used to manage the auditing system and work with audit data. EOD diff --git a/release/packages/ucl/libbegemot-all.ucl b/release/packages/ucl/libbegemot-all.ucl index 812e94f72eaf..5bead26f69f8 100644 --- a/release/packages/ucl/libbegemot-all.ucl +++ b/release/packages/ucl/libbegemot-all.ucl @@ -41,8 +41,8 @@ calls are however clumsy to use and the usage of one of these calls is probably not portable to other systems - not all systems support both calls. The rpoll(3) family of functions is designed to overcome these restrictions. -They support the well known and understood technique of event driven programing -and, in addition to select(2) and poll(2) also support timers. +They support the well known and understood technique of event driven +programming and, in addition to select(2) and poll(2) also support timers. EOD annotations { diff --git a/release/packages/ucl/libbsdstat-all.ucl b/release/packages/ucl/libbsdstat-all.ucl index 144d4200fed9..56efee79a334 100644 --- a/release/packages/ucl/libbsdstat-all.ucl +++ b/release/packages/ucl/libbsdstat-all.ucl @@ -19,7 +19,7 @@ comment = "Periodic statistics library" desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: 53fcc7f9b0de - stable/15 - bridge.4: Fix the synopsis for -ifuntagged List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 53fcc7f9b0de48449ff3c80140448dd620f44214 Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=53fcc7f9b0de48449ff3c80140448dd620f44214 commit 53fcc7f9b0de48449ff3c80140448dd620f44214 Author: Lexi Winter AuthorDate: 2025-10-13 05:57:57 +0000 Commit: Lexi Winter CommitDate: 2025-10-13 06:34:24 +0000 bridge.4: Fix the synopsis for -ifuntagged This command doesn't accept a vlan-id. PR: 290141 MFC after: 3 days Reported by: Paul Procacci Reviewed by: ziaee (manpages) Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53049 (cherry picked from commit dc978c5cb55b75d292c7ef32564f5c376685234b) --- sbin/ifconfig/ifconfig.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index c4184ba61ee4..bf9a032d8c58 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 12, 2025 +.Dd October 12, 2025 .Dt IFCONFIG 8 .Os .Sh NAME @@ -2769,7 +2769,7 @@ Set the untagged VLAN identifier for an interface. Frames received on this interface without an 802.1Q tag will be assigned to this VLAN instead of the default VLAN 0, and outgoing frames on this VLAN will have their 802.1Q tag removed. -.It Cm -ifuntagged Ar interface Ar vlan-id +.It Cm -ifuntagged Ar interface Clear the untagged VLAN identifier for an interface. .It Cm defuntagged Ar vlan-id Enable the From nobody Mon Oct 13 07:07:16 2025 X-Original-To: dev-commits-src-branches@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 4clT1c3Ydyz6C5HN; Mon, 13 Oct 2025 07:07: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clT1c2n0Mz3Qc6; Mon, 13 Oct 2025 07:07:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vdwawFqwdo91pp4oxY/bH6RDcxRFNQ6soEEcz0s6TLY=; b=Lgl9/T8PpG2YmuJBYglJ/Qmb5TmCZ5XXxxuwsVb+RRplZKxJrPG6eFBFi2STEl40YPhU5v ACRiRpDIiX1du1uOyKJRXFWcMzrVe80jMjoKsmWZOFpb1zGDQCSpDBaHjXwjbfBWY388vC CCwasB1nv95GBNbBWZsJZxlkf8JM28Lnn2gCZocC3O2uRUTPGKsivEEy5J2NgnfDt27VW6 fXtq07t6o5kAPG9eKZKrzETSm91cAGjh8WPTYAVc8IK0pS/V6xWXfDIVaSG0iMVZztPB76 aAP3TVy91idkQ9NRNEh1esv6tXHhcNTBXI4UEJGj+Fl6tBfQkTLm7lS6fu/cZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vdwawFqwdo91pp4oxY/bH6RDcxRFNQ6soEEcz0s6TLY=; b=lkp8+W3VzQgjQpQqU3WoBVGha/fOChEpEOvIGM53q8/zY3gNkJeW/SIIV1GwavcE8ycF/B nwjoGkpO3/0wLMukkQKNJk9/cRkCIj8FBShdg/SYOGtlGrn6w+pF4y2M+/pI4MikE0gvE1 a/JONFn/y3k7SjWqltjTWs2TQAAFZvpuZggdst+v8uxDdaFjYI+Pp+O8wERtkBckDwVJh3 9hffxFWToiAIUBY/EHeW5d2RcoKUZ2PsHw2Kmp/nVT9fXjciRrOJ330Esxjq7u3z0Pkwf1 CeuLXbcSOkzYBg5Af/RshmA7nuhtVcc3p2QkzbZRD7TRdnd/3rASZDUF6Jk0fg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760339236; a=rsa-sha256; cv=none; b=T8zPAtQXfNByh1behNYQSe9x3FULsRIqAr3PTpr5CNWEddZ2V4RCJAS4tz8ELqVZw5uJai bdy0GzTekFJ75T8Qp+7KMD93TR88m8gfBULFiOya/G0qV8anogCjrPs24rluf8iSNhM9Wl MTZGZ/KTVQdy0rHZXJJtWnVeDgTZ8e/Att/HgrBBCbzmMUZwjDoVyg3BaidTvs1zGaGe8h 8/Uj7CmppF6tg431YArqRnyjPGIwBECm9YZ+2NExY2SnlXCxJFgqCbwDEOxbdAP0tBCZa7 M88b2rUYPtEktyTtoFD7oAQdEH3RxVqXVmdl0uMRyVsmhJZV8YTT/tXftrzy1w== 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 4clT1c2M3mzx3K; Mon, 13 Oct 2025 07:07: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 59D77Ggq008057; Mon, 13 Oct 2025 07:07:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D77GIF008054; Mon, 13 Oct 2025 07:07:16 GMT (envelope-from git) Date: Mon, 13 Oct 2025 07:07:16 GMT Message-Id: <202510130707.59D77GIF008054@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: 0fa9385d10c5 - releng/15.0 - bridge.4: Fix the synopsis for -ifuntagged List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 0fa9385d10c530cccb36aef602840a7c0a094513 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0fa9385d10c530cccb36aef602840a7c0a094513 commit 0fa9385d10c530cccb36aef602840a7c0a094513 Author: Lexi Winter AuthorDate: 2025-10-13 05:57:57 +0000 Commit: Colin Percival CommitDate: 2025-10-13 07:06:21 +0000 bridge.4: Fix the synopsis for -ifuntagged This command doesn't accept a vlan-id. Approved by: re (cperciva) PR: 290141 MFC after: 3 days Reported by: Paul Procacci Reviewed by: ziaee (manpages) Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53049 (cherry picked from commit dc978c5cb55b75d292c7ef32564f5c376685234b) (cherry picked from commit 53fcc7f9b0de48449ff3c80140448dd620f44214) --- sbin/ifconfig/ifconfig.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index c4184ba61ee4..bf9a032d8c58 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 12, 2025 +.Dd October 12, 2025 .Dt IFCONFIG 8 .Os .Sh NAME @@ -2769,7 +2769,7 @@ Set the untagged VLAN identifier for an interface. Frames received on this interface without an 802.1Q tag will be assigned to this VLAN instead of the default VLAN 0, and outgoing frames on this VLAN will have their 802.1Q tag removed. -.It Cm -ifuntagged Ar interface Ar vlan-id +.It Cm -ifuntagged Ar interface Clear the untagged VLAN identifier for an interface. .It Cm defuntagged Ar vlan-id Enable the From nobody Mon Oct 13 07:07:17 2025 X-Original-To: dev-commits-src-branches@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 4clT1d61wJz6C59J; Mon, 13 Oct 2025 07:07: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clT1d3jZYz3Qw9; Mon, 13 Oct 2025 07:07:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hg/4+zixhSv5QpateL/Teyq2nEalKPDoyQj6fa0jK5I=; b=vlvKDruOWw18QxiYnILW5qTU7LZWwgmUnEGyY731L9Vj7ujA5qVi0zCwWtT5smEXZHDW80 0SeWPKhYDcM10Qo+dw7F9mkuwHDEy1XMRUPBXxUg9I/amY6eOXJbY8hDxiFEjRDNICU3WG 6zUVpA0wW4fBefZEJKMez751kVU0UXqX1bRrDAYPclJrUNejMITOnd//tuLGKvZ5vPPb8m vMiu1HhRvZqq5f1tsfpUodRYaXyn2BrmSnBThxAmwUNENE3So6JDxnmlKiIybyKjnCqEJO 12Rkd2yiW8G+8i7wO354lGUSMXYmg5iAiblpkUu4Hlytop5FAa/hSl0A/JZ1Jw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hg/4+zixhSv5QpateL/Teyq2nEalKPDoyQj6fa0jK5I=; b=qK9iOhhU8vhB46Q49inzKoHfhsYgj0fhydOIGHGah/ggmrNFOewpG9YQDLO8+pD3numLh1 9FX+EzP8Tf+FYnpX0kT77HdlMD28XwOMRcBTBhzJ3wyYS6aoqJTKx4R5wwDV4cEU2znYMD VGOhLGxU0p+ocxw3NmHV8U3SXY86nWLJZYpdKlZk/ZVB9gAGS+/jamIU3mQaVJgK//zFCy xbatSDDMI/5ptDHXi+gsrIklt+ZoLHTIgMn2jzjRGS++zFM/x87URC64srTwhYJm2Upi95 oQMCDC0htKloj6LBMOHdO04NzyU3XszJSuIdvQOjCajac4p08PoZgTpaRX8J4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760339237; a=rsa-sha256; cv=none; b=Y6O3B7uLfv0zH9IrneB/BOtLhE7m1yCcaCHV95CSAl6CDF8I2lpfNH8kTK3CEc4FR27THF ag0mQRuxFlYdOYVs5gAPf9C/jrjUEnjr8QpZXdgMP9pwIQQ6otYayll9NNEF7R6wmFPsA6 rwAL3+dcmAM7hTS7QF1COFgU+39uTgzbFZ+0RpY8mXxSUeEhynCABKstfpAYLpUoJr53lx FO0WSYFIoRJPj0nkZKrJwMDD1KuXP+onXOcqdV8rT76fVK5BYm7q2nFRhnG3Hm2XRXRfa9 AkpGQTnOCUgNX0Z7UMBYYxTJQmqV3wT2rmfxk2FYXuumzq+ZYAygWusU7YAddw== 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 4clT1d3GZfzwm4; Mon, 13 Oct 2025 07:07: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 59D77He2008089; Mon, 13 Oct 2025 07:07:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D77H4q008086; Mon, 13 Oct 2025 07:07:17 GMT (envelope-from git) Date: Mon, 13 Oct 2025 07:07:17 GMT Message-Id: <202510130707.59D77H4q008086@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: fde09c830088 - releng/15.0 - release/packages/ucl: Fix typos List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: fde09c830088ba4fabdb5f05f608e04e60d83f11 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=fde09c830088ba4fabdb5f05f608e04e60d83f11 commit fde09c830088ba4fabdb5f05f608e04e60d83f11 Author: Lexi Winter AuthorDate: 2025-10-12 15:53:43 +0000 Commit: Colin Percival CommitDate: 2025-10-13 07:06:29 +0000 release/packages/ucl: Fix typos Approved by: re (cperciva) MFC after: 3 days Sponsored by: https://www.patreon.com/bsdivy (cherry picked from commit 039eba16f969a3ebc6c169fa61880a33d2a95090) (cherry picked from commit 663a53d8e795ff8502908da0be4c4df3cee41c33) --- release/packages/ucl/acpi-all.ucl | 2 +- release/packages/ucl/audit-all.ucl | 2 +- release/packages/ucl/libbegemot-all.ucl | 4 ++-- release/packages/ucl/libbsdstat-all.ucl | 2 +- release/packages/ucl/mandoc-all.ucl | 2 +- release/packages/ucl/yp-all.ucl | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/release/packages/ucl/acpi-all.ucl b/release/packages/ucl/acpi-all.ucl index 9e75822a8a04..9b63b825bd60 100644 --- a/release/packages/ucl/acpi-all.ucl +++ b/release/packages/ucl/acpi-all.ucl @@ -23,7 +23,7 @@ ACPI is a hardware standard allowing the operating system to monitor various hardware devices and system state. For example, ACPI can report whether the system is on AC or battery power. -This packages provides several utilities that can be used to interact with the +This package provides several utilities that can be used to interact with the ACPI implementation in the kernel: * The /etc/rc.d/power_profile service can be used to change system performance diff --git a/release/packages/ucl/audit-all.ucl b/release/packages/ucl/audit-all.ucl index 3324795d8d9c..0ff79f7c6b73 100644 --- a/release/packages/ucl/audit-all.ucl +++ b/release/packages/ucl/audit-all.ucl @@ -39,7 +39,7 @@ The audit facility implements the de facto industry standard BSM API, file formats, and command line interface, first found in the Solaris operating system. -This packages provides the auditing daemon auditd(8) and various utilities +This package provides the auditing daemon auditd(8) and various utilities used to manage the auditing system and work with audit data. EOD diff --git a/release/packages/ucl/libbegemot-all.ucl b/release/packages/ucl/libbegemot-all.ucl index 812e94f72eaf..5bead26f69f8 100644 --- a/release/packages/ucl/libbegemot-all.ucl +++ b/release/packages/ucl/libbegemot-all.ucl @@ -41,8 +41,8 @@ calls are however clumsy to use and the usage of one of these calls is probably not portable to other systems - not all systems support both calls. The rpoll(3) family of functions is designed to overcome these restrictions. -They support the well known and understood technique of event driven programing -and, in addition to select(2) and poll(2) also support timers. +They support the well known and understood technique of event driven +programming and, in addition to select(2) and poll(2) also support timers. EOD annotations { diff --git a/release/packages/ucl/libbsdstat-all.ucl b/release/packages/ucl/libbsdstat-all.ucl index 144d4200fed9..56efee79a334 100644 --- a/release/packages/ucl/libbsdstat-all.ucl +++ b/release/packages/ucl/libbsdstat-all.ucl @@ -19,7 +19,7 @@ comment = "Periodic statistics library" desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: e74f3a9494cb - releng/15.0 - virtual_oss: Move plugins to the sound package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: e74f3a9494cb54f3a5c80e439af72c76cb14b94c Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=e74f3a9494cb54f3a5c80e439af72c76cb14b94c commit e74f3a9494cb54f3a5c80e439af72c76cb14b94c Author: Lexi Winter AuthorDate: 2025-10-12 15:29:17 +0000 Commit: Colin Percival CommitDate: 2025-10-13 07:06:44 +0000 virtual_oss: Move plugins to the sound package This is the correct place for them, and also issues an incorrect dependency from utilities to sound. Approved by: re (cperciva) Fixes: 1b806e607f52 ("packages: Add a sound package") MFC after: 3 days Reviewed by: christos, dch Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53015 (cherry picked from commit 419dcdc2c981306b0ded44580977d2e053719b14) (cherry picked from commit 861225fbe31b86922d7f9fcfa1d280bde50f862e) --- lib/virtual_oss/Makefile.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/virtual_oss/Makefile.inc b/lib/virtual_oss/Makefile.inc index 45c8e0b1fdfc..877465a5c548 100644 --- a/lib/virtual_oss/Makefile.inc +++ b/lib/virtual_oss/Makefile.inc @@ -1,3 +1,5 @@ +PACKAGE= sound + .include "../Makefile.inc" LDFLAGS+= -L${.OBJDIR:H:H}/libsamplerate From nobody Mon Oct 13 07:07:19 2025 X-Original-To: dev-commits-src-branches@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 4clT1h5nF6z6C5LF; Mon, 13 Oct 2025 07:07: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clT1g58V5z3QfM; Mon, 13 Oct 2025 07:07:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MZBlag4JGu4Z7yabI0J/jUhS0vTgA3FuvjewtM2ap34=; b=oEfTrmnG1JlszdI2U0o8se0IK5V/hF8dtfnKFhsyWj4QsoCjMoA8QbQ+rGjxwjb2CmyVH0 s7pP875BqXUhJe/wSr7WFK28RxO0khKqPe6PsEpAgg3vybn64cN6Wh3Dv2xUQ6FTWblpfG LAa7Ly2wBsl60ldTk/md/AefnrTG0Y8GMb60hoZOFddFXlXT+fwv+rhicZsGnKa4jF8mG+ bjKPWJopPAJNrOjpa7ZOaVu6oTLSL7VOM1ZoGlK7JToalyoIJ7Jifdc32uKClAduJXYV3i zTGrtTbZrVK0/GryWKL0TwifhE1qJUdS6ejwVeXumLLnZJPnPMH+nJfnR/A6Aw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760339239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MZBlag4JGu4Z7yabI0J/jUhS0vTgA3FuvjewtM2ap34=; b=Z2wui6h/SNsE5tEvLv1TDT+kXIu2bsc3phEL+sKi6s/fFJGa/v7KWUpPANTZjy9BKtebSh kWYi3/uL+oNL6Ea0UohBZf7sxUzAOgf7RCFd917+tIAMR6JTzh8uDG0IBRax92ATirY0po BemE8/rFs05ZFifSGZ9ZRLSZn+dT8ZHql9G9geEWU6YR/7FvW399rSYgPwdG0/q/GGWE6u F1h/+eAH4gAVpOkEk/hReJgbLzO4f8eRy2sZhGI3aX4ZsqJKp1wZsFyQDfRZflfW2iFYGT fsSQx954tu0xYkfXeFtzgzh1SMV/1wfHl9D774hpBCZ32gLeb1LN4J/idab7Pw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760339239; a=rsa-sha256; cv=none; b=xAjxUH2HALfiAGDII3GWY192UIA4yc9rJ4nl9BcdF1q6zWzXDYnN6Qwm99fYW2jwj/GczN AuXZ4XZSzcNGI4NmID9WzZmts+lfE6MNbg02uV+soW53VghHwLd52Au8nkkJMOEwrLsr8W udcBpxf4V/vZFZU1dBjw362Bq5vud2uc1nN+1yk4kKwWgYd5WXzvWs987dxTn03f2Ow9hu tIi4HNUG63tmVCu1KKkiVWX1WX8JSNz0UlX6GNsRZVnqcdQiq0JhRMi9U4coEGIevblAfF /e5xuW/2r2OdMoU8pAjrvM6p57HUjGiVxP9kGssixHUnEmIuyo3fWqQo0NFFQA== 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 4clT1g4dQ1zwHb; Mon, 13 Oct 2025 07:07: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 59D77JkC008156; Mon, 13 Oct 2025 07:07:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59D77JPq008153; Mon, 13 Oct 2025 07:07:19 GMT (envelope-from git) Date: Mon, 13 Oct 2025 07:07:19 GMT Message-Id: <202510130707.59D77JPq008153@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: ab0d79d53721 - releng/15.0 - libbluetooth: Move to the bluetooth-lib package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: ab0d79d5372194a1563b033cbc81dac4aba5ae09 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=ab0d79d5372194a1563b033cbc81dac4aba5ae09 commit ab0d79d5372194a1563b033cbc81dac4aba5ae09 Author: Lexi Winter AuthorDate: 2025-10-12 15:28:20 +0000 Commit: Colin Percival CommitDate: 2025-10-13 07:06:47 +0000 libbluetooth: Move to the bluetooth-lib package Move the library, but not any of the runtime. This allows executables to link against libbluetooth without having to pull in the entire BT stack. Approved by: re (cperciva) MFC after: 3 days Reviewed by: dch, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53016 (cherry picked from commit 426891e0f8f1cfae0263ba81ea55f46c547d7762) (cherry picked from commit dced18c7703d256a9975bb7143d107f0f07dfd17) --- lib/libbluetooth/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/libbluetooth/Makefile b/lib/libbluetooth/Makefile index a6ac291a0bf8..b935bdf3fc78 100644 --- a/lib/libbluetooth/Makefile +++ b/lib/libbluetooth/Makefile @@ -1,6 +1,8 @@ # $Id: Makefile,v 1.5 2003/07/22 18:38:04 max Exp $ PACKAGE= bluetooth +LIB_PACKAGE= + CONFS= hosts protocols CONFSDIR= /etc/bluetooth CONFSMODE_protocols= 444 From nobody Mon Oct 13 15:28:54 2025 X-Original-To: dev-commits-src-branches@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 4clh8Q3xkWz6Bwvx; Mon, 13 Oct 2025 15:28: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clh8Q2vjzz3pZT; Mon, 13 Oct 2025 15:28:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760369334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c08zRSFQ0sdRnq3AxGHzxE7VKpNNOMZULBA9VcsrIa8=; b=ffnk331u1jtIksxSvDsmarItr25PxF/zW72qs4+Gvc4ADHhNMp0Rxzti74fAyZBC7aT6Dv nDpyzHxZ+m0NfNwqpGWhFOZJyK0SN2kje4m6KH/ce4jeQ+xAgopfsdkldQmM7Pne+/+F4v 5xOYXC02gDajfETEqkB4i+964MxFSkg8Y6VBcVPD1u5Ki+dpwfYKRYTD+LjSjH8ubteMpC 90SQDUX7vQ/cUpcmSH0rN89zsKPP1EO8/Y+TSzBF5JLIDkBKtIACN1Y1DKPwTRW2OM/Z14 PgulE5ffrs37o4q/Dfw1VI9OquiUxZIBIYSSFoTn4V/LQ40CtSf6ggmJiRDk2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760369334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c08zRSFQ0sdRnq3AxGHzxE7VKpNNOMZULBA9VcsrIa8=; b=hK8YT09EJdqSH8c04DzJpo7mg+Af0BKwx8RLsoP3RZ4aIoNBtfcinR7VkseF8LOojRiGXc hjVjnQL3G+yT+MmVsmxOMSP/giA1J4+yqeX+utQyAuOCL1ggcC5lR4AcC/TWCpzeT32qoy ly4yWKHNb8ntfUFyWIUgqYOaNyCiqg60BPp0d0xqRJ/qEmGwPjgmjJ+AyvEsn/j7BaGCs0 HiXVWpZ14JLfQ7DCYQ2LDWBKdPUc9ARWevf0Ik99Soo2H0Eokctey7YUP0jl08pytDrhZs NAiiwAF1d6vT5uHu0gi4VkARplxzEUhNwLNA5Ao7rODlFDp5wZoLBinPNWi0eA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760369334; a=rsa-sha256; cv=none; b=W98VqQ8fxb17M3SsyMeVAvRMAKzSRsoQl5KDkUD8pPahCrgvt958nm2hZQuTBDSeqbN72l TkMr8vFw4NGjl8p1NXs4CDF18ONANgYxkgbpbLUvfgDZhXFfwKpoLh/ercPLryBCpzigaL xat7sTCxhGS9g89nhTcMICJj01sE3Gw++r9/48kVpGrujfshM13m815iILDNrJGUxmnKwt l+gIEcJ3+44oz5AoHn7ky4vBTnu2Zkjw09Dt1ZwvfvUpE2yCwGUTE34s29wjK7C33e1UAK 273zA8gLAhtXLTabIlOPHYFjCGRLaxw+LqSPyXuYm5uM+chV/BnEKQGfDV1WIw== 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 4clh8Q2MWxz1BlJ; Mon, 13 Oct 2025 15:28:54 +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 59DFSs9Z050725; Mon, 13 Oct 2025 15:28:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59DFSs8F050722; Mon, 13 Oct 2025 15:28:54 GMT (envelope-from git) Date: Mon, 13 Oct 2025 15:28:54 GMT Message-Id: <202510131528.59DFSs8F050722@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: 573cb59c35de - releng/15.0 - MFC: libbz2: add pkg-config file (bzip2.pc) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 573cb59c35deb4e9dd720c736d7984773fd1068d Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=573cb59c35deb4e9dd720c736d7984773fd1068d commit 573cb59c35deb4e9dd720c736d7984773fd1068d Author: Xin LI AuthorDate: 2025-10-10 05:35:54 +0000 Commit: Colin Percival CommitDate: 2025-10-13 15:28:24 +0000 MFC: libbz2: add pkg-config file (bzip2.pc) Add generation of a bzip2.pc file for use with pkg-config and create a basic template as bzip2.pc.in. This allows other software to easily locate and link against libbz2 using standard pkg-config mechanisms instead of manual compiler and linker flags. The version number is extracted automatically from bzlib.h to keep it consistent with the library sources. Approved by: re (cperciva) Tested: pkg-config --exists --print-errors "bzip2 >= 1.0.9" (fail, expected) pkg-config --exists --print-errors "bzip2 >= 1.0" (succeeded) pkg-config --libs bzip2 (-lbz2) pkg-config --cflags bzip2 () (cherry picked from commit 586319793368cbc664b48187bda60d27e171753a) (cherry picked from commit f139a644d3ee01667480ff6d698757d3e3689794) --- lib/libbz2/Makefile | 13 +++++++++++++ lib/libbz2/bzip2.pc.in | 11 +++++++++++ 2 files changed, 24 insertions(+) diff --git a/lib/libbz2/Makefile b/lib/libbz2/Makefile index d773f202dd67..2aedbaed4328 100644 --- a/lib/libbz2/Makefile +++ b/lib/libbz2/Makefile @@ -13,4 +13,17 @@ CFLAGS+= -I${BZ2DIR} WARNS?= 3 +BZIP2_VERSION!= sed -n '/bzip2\/libbzip2 version /{s/.*version //;s/ of.*//p;q;}' ${BZ2DIR}/bzlib.h + +bzip2.pc: bzip2.pc.in + sed -e 's,@prefix@,/usr,g ; \ + s,@exec_prefix@,$${prefix},g ; \ + s,@libdir@,${LIBDIR},g ; \ + s,@sharedlibdir@,${SHLIBDIR},g ; \ + s,@includedir@,${INCLUDEDIR},g ; \ + s,@VERSION@,${BZIP2_VERSION},g ;' \ + ${.ALLSRC} > ${.TARGET} + +PCFILES= bzip2.pc + .include diff --git a/lib/libbz2/bzip2.pc.in b/lib/libbz2/bzip2.pc.in new file mode 100644 index 000000000000..d91c9931a58a --- /dev/null +++ b/lib/libbz2/bzip2.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +sharedlibdir=@sharedlibdir@ +includedir=@includedir@ + +Name: bzip2 +Description: bzip2 compression library +Version: @VERSION@ +Libs: -L${libdir} -lbz2 +Cflags: -I${includedir} From nobody Mon Oct 13 18:32:18 2025 X-Original-To: dev-commits-src-branches@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 4clmD23sT1z6CB0t; Mon, 13 Oct 2025 18:32: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clmD233x5z3DHJ; Mon, 13 Oct 2025 18:32:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760380338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rUvflG+cCRv2AfzLI9R/E/K6xwN6ROwmDmzoh3OnSD8=; b=V42ESnpn+x9jxFSqjG6nwM6uto0neCs8l3UD7NxN/ICGAO8zXN3LE78uvTUz9FjfVv873O VCZ+0sFRHYwmvsN4rrO799LQpVrw6LZIrcrCjaCuL/pnDdY451rbrbdx2kPPamEtUw66Wg JGeWSeXOdq+TGoUgTGrig8kzSEoUcfm8edP8zETyX9z38kD+xP6gVeHJhCa8bALVbfUxIB nhVugKyaMcPgeOGOqqqyiPsHvfyfRZM1ta/WqPLWNAGzRxqksezzIGAdQw/+IuZJySc3vQ IbsVtx+1QCZCHd1ETpi5ZvWyfqzyliZcM/1BGDMjFtjh7wu9S4xMg3ZqisZ59Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760380338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rUvflG+cCRv2AfzLI9R/E/K6xwN6ROwmDmzoh3OnSD8=; b=H7qTZyMAXr79GJ7V/ZnRnAxGPx5g1iqvgXDl0XB+pqPCmmFlZ3+glOenO2+rQbtVpVoIDH NaNuOFYkImr/bsmxVtl/KIfOmsZe7ywwMXkZ7tdrigMB5TSqvMsgLUlUulfMlWT6yQQ/Zz jISGsszfB9CryMYeGX8dnnCxwCqUuCx3/QusiwABp15Hc4EZehXxdBqKDB+aBBM9pJbPwl qOfBTk7n8f63haJHpzdf1BJI5QOfGVasnnr7OPvqsBEC7nhzSXFAQCWIFmlaFeMz3s2kYB /sCjdmpqqUVx7d4NX1nCldmbD8MYzyM5w+QS3dq8fQJNK4j8IIFAaJE26nwGHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760380338; a=rsa-sha256; cv=none; b=Kn/ZOojmFj5LHuRmlrB7BGXRx0e+dt25YopXGa+RBfwhjN98/rbT4iKsju5SCLmTSf4BYK o1xajaALmBNms77kKcFftnbmoh5Z4eJWQwVxXb3DyUg43VmTYTVaaA1Gd8Kr2gJIw8jXr0 8pfcj76swlitQX/uYRcwWmQOZUD59kMW03RcqpEQNidqPVL0q+aRQJFCdjoqgE46tdg34+ 30SyYYAOwnmP0tXcdw9Rphx+suDBrD8VgGJXz03869lJIBbWWUSu12HMbpXI2XOMVRPnL4 b++0MW8IijyFxP1RwHyoSKbvBqzTNNp+GwCZbnxktsC9lmQFtSOIZgpQRDD/Qg== 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 4clmD22gZFz3Zj; Mon, 13 Oct 2025 18:32: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 59DIWIpO005413; Mon, 13 Oct 2025 18:32:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59DIWIEo005410; Mon, 13 Oct 2025 18:32:18 GMT (envelope-from git) Date: Mon, 13 Oct 2025 18:32:18 GMT Message-Id: <202510131832.59DIWIEo005410@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: 3b5ec539beef - stable/15 - Makefile.inc1: Build source packages before sets List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 3b5ec539beefb82dd3210f51c0e2e0759b20dad8 Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=3b5ec539beefb82dd3210f51c0e2e0759b20dad8 commit 3b5ec539beefb82dd3210f51c0e2e0759b20dad8 Author: Lexi Winter AuthorDate: 2025-10-13 18:30:31 +0000 Commit: Lexi Winter CommitDate: 2025-10-13 18:32:06 +0000 Makefile.inc1: Build source packages before sets To build set-src, we first need to build the source packages. Add a .ORDER to ensure this happens. Otherwise, in a parallel build, sets might be built before the src-* packages have finished building, and set-src will be mysteriously missing. MFC after: 3 seconds Reported by: cperciva Actually diagnosed by: jrtc27 One-line fix by: ivy Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D53076 (cherry picked from commit ea5685ba79fc9309698ef72cf48bc1f0c91ad3dd) --- Makefile.inc1 | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.inc1 b/Makefile.inc1 index cd3e3f007c3b..d530ca4e9584 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2107,6 +2107,7 @@ create-packages-world: _pkgbootstrap _repodir .PHONY .ORDER: create-packages-world create-packages-sets .ORDER: create-packages-kernel create-packages-sets +.ORDER: create-packages-source create-packages-sets create-packages-sets: _pkgbootstrap _repodir .PHONY ${_+_}@cd ${.CURDIR}; \ ${MAKE} -f Makefile.inc1 \ From nobody Tue Oct 14 00:57:31 2025 X-Original-To: dev-commits-src-branches@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 4clwmW3jfJz6CfJf; Tue, 14 Oct 2025 00:57:31 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmW3VC8z3vT0; Tue, 14 Oct 2025 00:57:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403451; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MwRGuIQjEYM0ZEHdAmB5jeaCuwWI+P+bo/gdPbYHBMQ=; b=hABVOkZQpAlEdqpFlyeQ1/5QZKc58hKjpxIaZVlcTQ+Rua9MLuMVS8F+zXRcU/q9kKN9yV A67xNSiTS2jcJOyFX45s6+p3Ua52qpaWXIO0T69kHInOLji8btWs2kBloMQmDJxKLj3709 8C9MVExUnrodUt+3yArTFU0hbUwEcDZGAMUV1IRYEZaNJZi8+RNse3D4IhIhtX0t48eg8y Ed3f4iYq1liu5jX+6Phq0rhUjOzOF6w8nlQQaDPSeTQ5ImuUv2r9ZRtiS5TseNEIyfdtXL 8lXo6Wo5OEvyDNLfk+tvIp0lRiLdPwxV+4EbTeQMn8aJ1X5LYYl2kUuWodvUMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403451; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MwRGuIQjEYM0ZEHdAmB5jeaCuwWI+P+bo/gdPbYHBMQ=; b=ZGvZpVKLLA7R/pu9KPAKhLHITeBU5wMi191ZV1TBvXtxQJwVQxKeA/9v96HuOfMb93snhC /ZqplgWD2Vtxo7B8U47zZ2Q+sq0z36XxSWFqpvkTglu9dO8IDwpT5/BLKmjVM1Int0faUO J8rS2dzhvUcWwJ5lL5kOjn15w8eTgHhi0LLU8K1DvZUoXp43tjJ94cDEez4ZYd+uqq5nZS 2bGY/ljmfb6vi0J1BI3pFJdkW6h9/fN30AJcI0KtY8WRz6qxzKpz0Nm+zSaILwBdJvqsDf Qg+OXDbZ5fEB74XgY318Hp9MFVMa/itla+5bNq5jIANpAClFVJt6XK7ZAWOl5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403451; a=rsa-sha256; cv=none; b=mTtOibC6iQ/oDHukM5CKzf8qgNIZ3q7w7bUEYxfgmU5i60XwjOePBmuhd4gwf/ilKu1VAL wdhlP6ID4CS4pkhjmb80bEwgmaG/mGxYPT0Upu8HbOCOi+TaTtBoYXcj8l9b7gwu0E2lBp yGgoDLlMCNWyAqmS7EC8JtXSBGCtCvd6lPk/EKpVA4nrmN06OYIMtNNoOMAKU9KWQv3ynF esCGu9arxN/3H7U7h6SgMKrSaoUy+LMCvKsEVmiey9fnrAxcG5upVKKUO+lAuPQoutvn9I xcBJ1v3h0zhobEWl9BluFqGVatUerSu0EuimDiLALpldPXaHtacsTh19iiFE5A== 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 4clwmW2tfxzVVM; Tue, 14 Oct 2025 00:57:31 +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 59E0vVUd021525; Tue, 14 Oct 2025 00:57:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vVkr021522; Tue, 14 Oct 2025 00:57:31 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:31 GMT Message-Id: <202510140057.59E0vVkr021522@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 1a08326c6f50 - stable/15 - MFV: Import blocklist 2025-04-28 (8aa81bf) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 1a08326c6f503db5f0fb9201cdf55379bbe576e8 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=1a08326c6f503db5f0fb9201cdf55379bbe576e8 commit 1a08326c6f503db5f0fb9201cdf55379bbe576e8 Author: Jose Luis Duran AuthorDate: 2025-10-12 17:01:03 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:51:43 +0000 MFV: Import blocklist 2025-04-28 (8aa81bf) Merge commit '70f30afd4e9af5a51ee324d97e4d8c5f2124ec15' Breaking changes: - Upstream commit 24932b6 ("blocklistd: log the conf file line number with bad protocol errors") breaks backward database compatibility. An error will be displayed: Key size mismatch 296 != 288 A new and compatible database, with the new name, will be created when the service starts (committed separately). - Upstream commit ddf6d71 ("implement BLOCKLIST_BAD_USER as a "one-count" failure") introduced BLOCKLIST_BAD_USER with a one-count failure mechanism. BLOCKLIST_AUTH_FAIL was implemented with a two-count failure mechanism. Since we utilize BLOCKLIST_AUTH_FAIL, the number of failed attempts now doubles towards the maximum limit (nfails). This commit will be reverted separately. Changes: https://github.com/zoulasc/blocklist/compare/7093cd9...8aa81bf Approved by: emaste (mentor) MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D52869 (cherry picked from commit 48e64ca13d4f36795ac718911b805e3e9a726f1b) --- contrib/blocklist/Makefile | 2 +- contrib/blocklist/Makefile.inc | 7 +- contrib/blocklist/README | 52 ++-- contrib/blocklist/TODO | 49 +++- contrib/blocklist/bin/Makefile | 12 +- .../bin/{blacklistctl.8 => blocklistctl.8} | 69 +++++- .../bin/{blacklistctl.c => blocklistctl.c} | 9 +- .../blocklist/bin/{blacklistd.8 => blocklistd.8} | 75 +++--- .../blocklist/bin/{blacklistd.c => blocklistd.c} | 48 ++-- .../bin/{blacklistd.conf.5 => blocklistd.conf.5} | 82 ++++--- contrib/blocklist/bin/conf.c | 200 ++++++++++++--- contrib/blocklist/bin/conf.h | 3 +- contrib/blocklist/bin/internal.c | 8 +- contrib/blocklist/bin/internal.h | 8 +- contrib/blocklist/bin/run.c | 9 +- contrib/blocklist/bin/run.h | 2 +- contrib/blocklist/bin/state.c | 6 +- contrib/blocklist/bin/state.h | 2 +- contrib/blocklist/bin/support.c | 11 +- contrib/blocklist/bin/support.h | 7 +- contrib/blocklist/diff/ftpd.diff | 12 +- contrib/blocklist/diff/named.diff | 12 +- contrib/blocklist/diff/postfix.diff | 98 ++++++++ contrib/blocklist/diff/proftpd.diff | 20 +- contrib/blocklist/diff/ssh.diff | 14 +- contrib/blocklist/etc/Makefile | 10 +- .../etc/{blacklistd.conf => blocklistd.conf} | 7 +- contrib/blocklist/etc/ipf.conf | 45 ++++ contrib/blocklist/etc/npf.conf | 4 +- contrib/blocklist/etc/rc.d/Makefile | 4 +- .../blocklist/etc/rc.d/{blacklistd => blocklistd} | 20 +- contrib/blocklist/include/Makefile | 4 +- contrib/blocklist/include/bl.h | 11 +- .../blocklist/include/{blacklist.h => blocklist.h} | 44 ++-- contrib/blocklist/lib/Makefile | 20 +- contrib/blocklist/lib/bl.c | 112 +++++---- contrib/blocklist/lib/{blacklist.c => blocklist.c} | 49 ++-- .../lib/{libblacklist.3 => libblocklist.3} | 124 +++++----- contrib/blocklist/lib/shlib_version | 2 +- contrib/blocklist/libexec/Makefile | 4 +- contrib/blocklist/libexec/blacklistd-helper | 134 ---------- contrib/blocklist/libexec/blocklistd-helper | 272 +++++++++++++++++++++ contrib/blocklist/port/Makefile.am | 42 ++-- contrib/blocklist/port/_strtoi.h | 2 +- contrib/blocklist/port/configure.ac | 12 +- contrib/blocklist/port/fgetln.c | 2 +- contrib/blocklist/port/fparseln.c | 6 +- contrib/blocklist/port/pidfile.c | 6 +- contrib/blocklist/port/popenve.c | 6 +- contrib/blocklist/port/port.h | 32 ++- contrib/blocklist/port/sockaddr_snprintf.c | 6 +- contrib/blocklist/port/strlcat.c | 7 +- contrib/blocklist/port/strlcpy.c | 7 +- contrib/blocklist/port/strtoi.c | 6 +- contrib/blocklist/port/vsyslog_r.c | 13 + contrib/blocklist/test/Makefile | 2 +- contrib/blocklist/test/cltest.c | 6 +- contrib/blocklist/test/srvtest.c | 42 +++- 58 files changed, 1293 insertions(+), 587 deletions(-) diff --git a/contrib/blocklist/Makefile b/contrib/blocklist/Makefile index da4411d0ca75..899746d01431 100644 --- a/contrib/blocklist/Makefile +++ b/contrib/blocklist/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.2 2015/01/22 17:49:41 christos Exp $ +# $NetBSD: Makefile,v 1.1.1.1 2020/06/15 01:52:52 christos Exp $ SUBDIR = lib .WAIT include bin etc libexec diff --git a/contrib/blocklist/Makefile.inc b/contrib/blocklist/Makefile.inc index 85c82783cd35..b22d4a801240 100644 --- a/contrib/blocklist/Makefile.inc +++ b/contrib/blocklist/Makefile.inc @@ -1,10 +1,11 @@ -# $NetBSD: Makefile.inc,v 1.3 2015/01/23 03:57:22 christos Exp $ +# $NetBSD: Makefile.inc,v 1.3 2025/02/11 17:48:30 christos Exp $ WARNS=6 .if !defined(LIB) -LDADD+= -lblacklist -DPADD+= ${LIBBLACKLIST} +LDADD+= -lblocklist +DPADD+= ${LIBBLOCKLIST} .endif CPPFLAGS+= -I${.CURDIR}/../include CPPFLAGS+=-DHAVE_STRUCT_SOCKADDR_SA_LEN -DHAVE_UTIL_H -DHAVE_DB_H +CPPFLAGS+=-DHAVE_SYS_CDEFS_H diff --git a/contrib/blocklist/README b/contrib/blocklist/README index 7da3317a77fe..4b34138e01ec 100644 --- a/contrib/blocklist/README +++ b/contrib/blocklist/README @@ -1,21 +1,21 @@ -# $NetBSD: README,v 1.8 2017/04/13 17:59:34 christos Exp $ +# $NetBSD: README,v 1.3 2024/02/09 00:53:30 wiz Exp $ This package contains library that can be used by network daemons to communicate with a packet filter via a daemon to enforce opening and closing ports dynamically based on policy. -The interface to the packet filter is in libexec/blacklistd-helper +The interface to the packet filter is in libexec/blocklistd-helper (this is currently designed for npf) and the configuration file -(inspired from inetd.conf) is in etc/blacklistd.conf. +(inspired from inetd.conf) is in etc/blocklistd.conf. -On NetBSD you can find an example npf.conf and blacklistd.conf in -/usr/share/examples/blacklistd; you need to adjust the interface +On NetBSD you can find an example npf.conf and blocklistd.conf in +/usr/share/examples/blocklistd; you need to adjust the interface in npf.conf and copy both files to /etc; then you just enable -blacklistd=YES in /etc/rc.conf, start it up, and you are all set. +blocklistd=YES in /etc/rc.conf, start it up, and you are all set. -There is also a startup file in etc/rc.d/blacklistd +There is also a startup file in etc/rc.d/blocklistd -Patches to various daemons to add blacklisting capabilitiers are in the +Patches to various daemons to add blocklisting capabilities are in the "diff" directory: - OpenSSH: diff/ssh.diff [tcp socket example] - Bind: diff/named.diff [both tcp and udp] @@ -23,21 +23,21 @@ Patches to various daemons to add blacklisting capabilitiers are in the These patches have been applied to NetBSD-current. -The network daemon (for example sshd) communicates to blacklistd, via -a unix socket like syslog. The library calls are simple and everything +The network daemon (for example sshd) communicates to blocklistd, via +a Unix socket like syslog. The library calls are simple and everything is handled by the library. In the simplest form the only thing the daemon needs to do is to call: - blacklist(action, acceptedfd, message); + blocklist(action, acceptedfd, message); Where: - action = 0 -> successful login clear blacklist state + action = 0 -> successful login clear blocklist state 1 -> failed login, add to the failed count acceptedfd -> the file descriptor where the server is connected to the remote client. It is used to determine the listening socket, and the remote address. This allows any program to - contact the blacklist daemon, since the verification + contact the blocklist daemon, since the verification if the program has access to the listening socket is done by virtue that the port number is retrieved from the kernel. @@ -46,13 +46,13 @@ Where: Unfortunately there is no way to get information about the "peer" from a udp socket, because there is no connection and that information is kept with the server. In that case the daemon can provide the -peer information to blacklistd via: +peer information to blocklistd via: - blacklist_sa(action, acceptedfd, sockaddr, sockaddr_len, message); + blocklist_sa(action, acceptedfd, sockaddr, sockaddr_len, message); The configuration file contains entries of the form: -# Blacklist rule +# Blocklist rule # host/Port type protocol owner name nfail disable 192.168.1.1:ssh stream tcp * -int 10 1m 8.8.8.8:ssh stream tcp * -ext 6 60m @@ -60,18 +60,18 @@ ssh stream tcp6 * * 6 60m http stream tcp * * 6 60m Here note that owner is * because the connection is done from the -child ssh socket which runs with user privs. We treat ipv4 connections +child ssh socket which runs with user privs. We treat IPv4 connections differently by maintaining two different rules one for the external interface and one from the internal We also register for both tcp and tcp6 since those are different listening sockets and addresses; -we don't bother with ipv6 and separate rules. We use nfail = 6, +we don't bother with IPv6 and separate rules. We use nfail = 6, because ssh allows 3 password attempts per connection, and this will let us have 2 connections before blocking. Finally we block for an hour; we could block forever too by specifying * in the duration column. -blacklistd and the library use syslog(3) to report errors. The -blacklist filter state is persisted automatically in /var/db/blacklistd.db +blocklistd and the library use syslog(3) to report errors. The +blocklist filter state is persisted automatically in /var/db/blocklistd.db so that if the daemon is restarted, it remembers what connections is currently handling. To start from a fresh state (if you restart npf too for example), you can use -f. To watch the daemon at work, @@ -80,27 +80,27 @@ you can use -d. The current control file is designed for npf, and it uses the dynamic rule feature. You need to create a dynamic rule in your /etc/npf.conf on the group referring to the interface you want to block -called blacklistd as follows: +called blocklistd as follows: ext_if=bge0 int_if=sk0 group "external" on $ext_if { ... - ruleset "blacklistd-ext" - ruleset "blacklistd" + ruleset "blocklistd-ext" + ruleset "blocklistd" ... } group "internal" on $int_if { ... - ruleset "blacklistd-int" + ruleset "blocklistd-int" ... } -You can use 'blacklistctl dump -a' to list all the current entries +You can use 'blocklistctl dump -a' to list all the current entries in the database; the ones that have nfail / where urrent ->= otal, should have an id assosiated with them; this means that +>= otal, should have an id associated with them; this means that there is a packet filter rule added for that entry. For npf, you can examine the packet filter dynamic rule entries using 'npfctl rule list'. The number of current entries can exceed diff --git a/contrib/blocklist/TODO b/contrib/blocklist/TODO index 9925020d54bb..d67111bd5139 100644 --- a/contrib/blocklist/TODO +++ b/contrib/blocklist/TODO @@ -1,4 +1,4 @@ -# $NetBSD: TODO,v 1.7 2015/01/23 21:34:01 christos Exp $ +# $NetBSD: TODO,v 1.3 2025/02/05 20:22:26 christos Exp $ - don't poll periodically, find the next timeout - use the socket also for commands? Or separate socket? @@ -17,5 +17,48 @@ -n block unblock -- do we need an api in blacklistctl to perform maintenance -- fix the blacklistctl output to be more user friendly +- do we need an api in blocklistctl to perform maintenance +- fix the blocklistctl output to be more user friendly + +- figure out some way to do distributed operation securely (perhaps with + a helper daemon that authenticates local sockets and then communicates + local DB changes to the central server over a secure channel -- + perhaps blocklistd-helper can have a back-end that can send updates to + a central server) + +- add "blocklistd -l" to enable filter logging on all rules by default + +- add some new options in the config file + + "/all" - block both TCP and UDP (on the proto field?) + + "/log" - enable filter logging (if not the default) (on the name field?) + "/nolog"- disable filter logging (if not the default) (on the name field?) + + The latter two probably require a new parameter for blocklistd-helper. + +- "blocklistd -f" should (also?) be a blocklistctl function!?!?! + +- if blocklistd was started with '-r' then a SIGHUP should also do a + "control flush $rulename" and then re-add all the filter rules? + +- should/could /etc/rc.conf.d/ipfilter be created with the following? + + reload_postcmd=blocklistd_reload + start_postcmd=blocklistd_start + stop_precmd=blocklistd_stop + blocklistd_reload () + { + /etc/rc.d/blocklistd reload # IFF SIGHUP does flush/re-add + # /etc/rc.d/blocklistd restart + } + blocklistd_stop () + { + /etc/rc.d/blocklistd stop + } + blocklistd_start () + { + /etc/rc.d/blocklistd start + } + + or is there a better way? diff --git a/contrib/blocklist/bin/Makefile b/contrib/blocklist/bin/Makefile index 280c72fd3af1..1856e2524f3c 100644 --- a/contrib/blocklist/bin/Makefile +++ b/contrib/blocklist/bin/Makefile @@ -1,12 +1,12 @@ -# $NetBSD: Makefile,v 1.11 2015/01/27 19:40:36 christos Exp $ +# $NetBSD: Makefile,v 1.1.1.1 2020/06/15 01:52:52 christos Exp $ BINDIR=/sbin -PROGS=blacklistd blacklistctl -MAN.blacklistd=blacklistd.8 blacklistd.conf.5 -MAN.blacklistctl=blacklistctl.8 -SRCS.blacklistd = blacklistd.c conf.c run.c state.c support.c internal.c -SRCS.blacklistctl = blacklistctl.c conf.c state.c support.c internal.c +PROGS=blocklistd blocklistctl +MAN.blocklistd=blocklistd.8 blocklistd.conf.5 +MAN.blocklistctl=blocklistctl.8 +SRCS.blocklistd = blocklistd.c conf.c run.c state.c support.c internal.c +SRCS.blocklistctl = blocklistctl.c conf.c state.c support.c internal.c DBG=-g LDADD+=-lutil diff --git a/contrib/blocklist/bin/blacklistctl.8 b/contrib/blocklist/bin/blocklistctl.8 similarity index 59% rename from contrib/blocklist/bin/blacklistctl.8 rename to contrib/blocklist/bin/blocklistctl.8 index 7c6521117745..a98c16374f19 100644 --- a/contrib/blocklist/bin/blacklistctl.8 +++ b/contrib/blocklist/bin/blocklistctl.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: blacklistctl.8,v 1.9 2016/06/08 12:48:37 wiz Exp $ +.\" $NetBSD: blocklistctl.8,v 1.4 2025/02/07 01:35:38 kre Exp $ .\" .\" Copyright (c) 2015 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,27 +27,43 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd June 7, 2016 -.Dt BLACKLISTCTL 8 +.Dd January 27, 2025 +.Dt BLOCKLISTCTL 8 .Os .Sh NAME -.Nm blacklistctl -.Nd display and change the state of blacklistd +.Nm blocklistctl +.Nd display and change the state of the blocklistd database .Sh SYNOPSIS .Nm .Cm dump .Op Fl abdnrw +.Op Fl D Ar dbname .Sh DESCRIPTION .Nm -is a program used to display the state of -.Xr blacklistd 8 +is a program used to display and change the state of the +.Xr blocklistd 8 +database. +The following sub-commands are supported: +.Ss dump .Pp -The following options are available: +The following options are available for the +.Cm dump +sub-command: .Bl -tag -width indent .It Fl a -Show all database entries, by default it shows only the embryonic ones. +Show all database entries, by default it shows only the active ones. +Inactive entries will be shown with a last-access (or, with +.Fl r , +the remaining) time of +.Ql never . .It Fl b Show only the blocked entries. +.It Fl D Ar dbname +Specify the location of the +.Ic blocklistd +database file to use. +The default is +.Pa /var/db/blocklistd.db . .It Fl d Increase debugging level. .It Fl n @@ -59,18 +75,47 @@ Normally the width of addresses is good for IPv4, the .Fl w flag, makes the display wide enough for IPv6 addresses. .El +.Pp +The output of the +.Cm dump +sub-command consists of a header (unless +.Fl n +was given) and one line for each record in the database, where each line +has the following columns: +.Bl -tag -width indent +.It Ql address/ma:port +The remote address, mask, and local port number of the client connection +associated with the database entry. +.It Ql id +column will show the identifier for the packet filter rule associated +with the database entry, though this may only be the word +.Ql OK +for packet filters which do not creat a unique identifier for each rule. +.It Ql nfail +The number of +.Em failures +reported for the client on the noted port, as well as the number of +failures allowed before blocking (or, with +.Fl a , +an asterisk +.Aq * ) +.It So last access Sc | So remaining time Sc +The last time a the client was reported as attempting access, or, with +.Fl r , +the time remaining before the rule blocking the client will be removed. +.El .Sh SEE ALSO -.Xr blacklistd 8 +.Xr blocklistd 8 .Sh NOTES Sometimes the reported number of failed attempts can exceed the number of attempts that -.Xr blacklistd 8 +.Xr blocklistd 8 is configured to block. This can happen either because the rule has been removed manually, or because there were more attempts in flight while the rule block was being added. This condition is normal; in that case -.Xr blacklistd 8 +.Xr blocklistd 8 will first attempt to remove the existing rule, and then it will re-add it to make sure that there is only one rule active. .Sh HISTORY diff --git a/contrib/blocklist/bin/blacklistctl.c b/contrib/blocklist/bin/blocklistctl.c similarity index 94% rename from contrib/blocklist/bin/blacklistctl.c rename to contrib/blocklist/bin/blocklistctl.c index 89b72921caf5..8c75e0430c61 100644 --- a/contrib/blocklist/bin/blacklistctl.c +++ b/contrib/blocklist/bin/blocklistctl.c @@ -1,4 +1,4 @@ -/* $NetBSD: blacklistctl.c,v 1.23 2018/05/24 19:21:01 christos Exp $ */ +/* $NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $ */ /*- * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -32,8 +32,10 @@ #include "config.h" #endif +#ifdef HAVE_SYS_CDEFS_H #include -__RCSID("$NetBSD: blacklistctl.c,v 1.23 2018/05/24 19:21:01 christos Exp $"); +#endif +__RCSID("$NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $"); #include #include @@ -63,7 +65,8 @@ usage(int c) warnx("Missing/unknown command"); else if (c != '?') warnx("Unknown option `%c'", (char)c); - fprintf(stderr, "Usage: %s dump [-abdnrw]\n", getprogname()); + fprintf(stderr, + "Usage: %s dump [-abdnrw] [-D dbname]\n", getprogname()); exit(EXIT_FAILURE); } diff --git a/contrib/blocklist/bin/blacklistd.8 b/contrib/blocklist/bin/blocklistd.8 similarity index 85% rename from contrib/blocklist/bin/blacklistd.8 rename to contrib/blocklist/bin/blocklistd.8 index 82e1f15f61c9..e0b9fb482cbd 100644 --- a/contrib/blocklist/bin/blacklistd.8 +++ b/contrib/blocklist/bin/blocklistd.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: blacklistd.8,v 1.23 2020/04/21 13:57:12 christos Exp $ +.\" $NetBSD: blocklistd.8,v 1.8 2025/02/25 22:13:34 christos Exp $ .\" .\" Copyright (c) 2015 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,11 +27,11 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 21, 2020 -.Dt BLACKLISTD 8 +.Dd February 25, 2025 +.Dt BLOCKLISTD 8 .Os .Sh NAME -.Nm blacklistd +.Nm blocklistd .Nd block and release ports on demand to avoid DoS abuse .Sh SYNOPSIS .Nm @@ -53,22 +53,35 @@ for notifications from other daemons about successful or failed connection attempts. If no such file is specified, then it only listens to the socket path specified by -.Ar sockspath +.Ar sockpath or if that is not specified to -.Pa /var/run/blacklistd.sock . +.Pa /var/run/blocklistd.sock . Each notification contains an (action, port, protocol, address, owner) tuple that identifies the remote connection and the action. -This tuple is consulted against entries in -.Ar configfile -with syntax specified in -.Xr blacklistd.conf 5 . +This tuple is consulted against entries from the +.Ar configfile , +with the syntax specified in +.Xr blocklistd.conf 5 . If an entry is matched, a state entry is created for that tuple. Each entry contains a number of tries limit and a duration. .Pp +If +.Ar configfile +is a directory, or a directory exists with the same name as +.Ar configfile +with +.Qq .d +appended to it, each file in the directory will be read as configuration file. +If +.Ar configfile +exists as a file it will be processed before the contents of the +.Ar configfile Ns .d +directory if that also exists. +.Pp The way .Nm does configuration entry matching is by having the client side pass the -file descriptor associated with the connection the client wants to blacklist +file descriptor associated with the connection the client wants to blocklist as well as passing socket credentials. .Pp The file descriptor is used to retrieve information (address and port) @@ -116,7 +129,7 @@ specified by the arguments. The .Ar rulename argument can be set from the command line (default -.Dv blacklistd ) . +.Dv blocklistd ) . The script could print a numerical id to stdout as a handle for the rule that can be used later to remove that connection, but that is not required as all information to remove the rule is @@ -152,8 +165,8 @@ The following options are available: .It Fl C Ar controlprog Use .Ar controlprog -to communicate with the packet filter, usually -.Pa /usr/libexec/blacklistd-helper . +to communicate with the packet filter, instead of the default, which is +.Pa /usr/libexec/blocklistd-helper . The following arguments are passed to the control program: .Bl -tag -width protocol .It action @@ -161,7 +174,7 @@ The action to perform: .Dv add , .Dv rem , or -.Dv flush +.Dv flush ; to add, remove or flush a firewall rule. .It name The rule name. @@ -183,13 +196,17 @@ identifier of the rule to be removed. The add command is expected to return the rule identifier string to stdout. .El .It Fl c Ar configuration -The name of the configuration file to read, usually -.Pa /etc/blacklistd.conf . +The name of the configuration file to read. +The default when +.Fl c +is not given is +.Pa /etc/blocklistd.conf . .It Fl D Ar dbfile The Berkeley DB file where .Nm -stores its state, usually -.Pa /var/db/blacklistd.db . +stores its state. +It defaults to +.Pa /var/db/blocklistd.db . .It Fl d Normally, .Nm @@ -203,14 +220,14 @@ are deleted by invoking the control script as: .Bd -literal -offset indent control flush .Ed -.It Fl P Ar sockspathsfile +.It Fl P Ar sockpathsfile A file containing a list of pathnames, one per line that .Nm will create sockets to listen to. This is useful for chrooted environments. .It Fl R Ar rulename Specify the default rule name for the packet filter rules, usually -.Dv blacklistd . +.Dv blocklistd . .It Fl r Re-read the firewall rules from the internal database, then remove and re-add them. @@ -256,19 +273,21 @@ This signal tells to decrease the internal debugging level by 1. .El .Sh FILES -.Bl -tag -width /usr/libexec/blacklistd-helper -compact -.It Pa /usr/libexec/blacklistd-helper +.Bl -tag -width /usr/libexec/blocklistd-helper -compact +.It Pa /usr/libexec/blocklistd-helper Shell script invoked to interface with the packet filter. -.It Pa /etc/blacklistd.conf +.It Pa /etc/blocklistd.conf Configuration file. -.It Pa /var/db/blacklistd.db +.It Pa /var/db/blocklistd.db Database of current connection entries. -.It Pa /var/run/blacklistd.sock +.It Pa /var/run/blocklistd.sock Socket to receive connection notifications. .El .Sh SEE ALSO -.Xr blacklistd.conf 5 , -.Xr blacklistctl 8 , +.Xr blocklistd.conf 5 , +.Xr blocklistctl 8 , +.Xr ipf 8 , +.Xr ipfw 8 , .Xr pfctl 8 , .Xr syslogd 8 .Sh HISTORY diff --git a/contrib/blocklist/bin/blacklistd.c b/contrib/blocklist/bin/blocklistd.c similarity index 91% rename from contrib/blocklist/bin/blacklistd.c rename to contrib/blocklist/bin/blocklistd.c index 714abcbcaf0e..4846b507c8d1 100644 --- a/contrib/blocklist/bin/blacklistd.c +++ b/contrib/blocklist/bin/blocklistd.c @@ -1,4 +1,4 @@ -/* $NetBSD: blacklistd.c,v 1.38 2019/02/27 02:20:18 christos Exp $ */ +/* $NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $ */ /*- * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -31,8 +31,11 @@ #ifdef HAVE_CONFIG_H #include "config.h" #endif + +#ifdef HAVE_SYS_CDEFS_H #include -__RCSID("$NetBSD: blacklistd.c,v 1.38 2019/02/27 02:20:18 christos Exp $"); +#endif +__RCSID("$NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $"); #include #include @@ -175,6 +178,8 @@ process(bl_t bl) struct dbinfo dbi; struct timespec ts; + memset(&dbi, 0, sizeof(dbi)); + memset(&c, 0, sizeof(c)); if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); return; @@ -188,10 +193,11 @@ process(bl_t bl) if (getremoteaddress(bi, &rss, &rsl) == -1) goto out; - if (debug) { + if (debug || bi->bi_msg[0]) { sockaddr_snprintf(rbuf, sizeof(rbuf), "%a:%p", (void *)&rss); - (*lfun)(LOG_DEBUG, "processing type=%d fd=%d remote=%s msg=%s" - " uid=%lu gid=%lu", bi->bi_type, bi->bi_fd, rbuf, + (*lfun)(bi->bi_msg[0] ? LOG_INFO : LOG_DEBUG, + "processing type=%d fd=%d remote=%s msg=%s uid=%lu gid=%lu", + bi->bi_type, bi->bi_fd, rbuf, bi->bi_msg, (unsigned long)bi->bi_uid, (unsigned long)bi->bi_gid); } @@ -216,16 +222,19 @@ process(bl_t bl) switch (bi->bi_type) { case BL_ABUSE: /* - * If the application has signaled abusive behavior, - * set the number of fails to be one less than the - * configured limit. Fallthrough to the normal BL_ADD - * processing, which will increment the failure count - * to the threshhold, and block the abusive address. + * If the application has signaled abusive behavior, set the + * number of fails to be two less than the configured limit. + * Fall through to the normal BL_ADD and BL_BADUSER processing, + * which will increment the failure count to the threshhold, and + * block the abusive address. */ if (c.c_nfail != -1) - dbi.count = c.c_nfail - 1; + dbi.count = c.c_nfail - 2; /*FALLTHROUGH*/ case BL_ADD: + dbi.count++; /* will become += 2 */ + /*FALLTHROUGH*/ + case BL_BADUSER: dbi.count++; dbi.last = ts.tv_sec; if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { @@ -254,9 +263,6 @@ process(bl_t bl) dbi.count = 0; dbi.last = 0; break; - case BL_BADUSER: - /* ignore for now */ - break; default: (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); } @@ -334,7 +340,7 @@ static void addfd(struct pollfd **pfdp, bl_t **blp, size_t *nfd, size_t *maxfd, const char *path) { - bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog); + bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog_r); if (bl == NULL || !bl_isconnected(bl)) exit(EXIT_FAILURE); if (*nfd >= *maxfd) { @@ -395,15 +401,25 @@ rules_flush(void) static void rules_restore(void) { + DB *db; struct conf c; struct dbinfo dbi; unsigned int f; - for (f = 1; state_iterate(state, &c, &dbi, f) == 1; f = 0) { + db = state_open(dbfile, O_RDONLY, 0); + if (db == NULL) { + (*lfun)(LOG_ERR, "Can't open `%s' to restore state (%m)", + dbfile); + return; + } + for (f = 1; state_iterate(db, &c, &dbi, f) == 1; f = 0) { if (dbi.id[0] == '\0') continue; (void)run_change("add", &c, dbi.id, sizeof(dbi.id)); + state_put(state, &c, &dbi); } + state_close(db); + state_sync(state); } int diff --git a/contrib/blocklist/bin/blacklistd.conf.5 b/contrib/blocklist/bin/blocklistd.conf.5 similarity index 83% rename from contrib/blocklist/bin/blacklistd.conf.5 rename to contrib/blocklist/bin/blocklistd.conf.5 index 70036441eb4b..3a7dbfc07f58 100644 --- a/contrib/blocklist/bin/blacklistd.conf.5 +++ b/contrib/blocklist/bin/blocklistd.conf.5 @@ -1,6 +1,6 @@ -.\" $NetBSD: blacklistd.conf.5,v 1.9 2019/11/06 20:33:30 para Exp $ +.\" $NetBSD: blocklistd.conf.5,v 1.7 2025/02/11 17:47:05 christos Exp $ .\" -.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" Copyright (c) 2015, 2025 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation @@ -27,17 +27,17 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 18, 2020 -.Dt BLACKLISTD.CONF 5 +.Dd February 5, 2025 +.Dt BLOCKLISTD.CONF 5 .Os .Sh NAME -.Nm blacklistd.conf -.Nd configuration file format for blacklistd +.Nm blocklistd.conf +.Nd configuration file format for blocklistd .Sh DESCRIPTION The .Nm file contains configuration entries for -.Xr blacklistd 8 +.Xr blocklistd 8 in a fashion similar to .Xr inetd.conf 5 . Only one entry per line is permitted. @@ -48,34 +48,34 @@ Comments are denoted by a at the beginning of a line. .Pp There are two kinds of configuration lines, -.Va local +.Va [local] and -.Va remote . +.Va [remote] . By default, configuration lines are -.Va local , +.Va [local] , i.e. the address specified refers to the addresses on the local machine. To switch to between -.Va local +.Va [local] and -.Va remote +.Va [remote] configuration lines you can specify the stanzas: .Dq [local] and .Dq [remote] . .Pp On -.Va local +.Va [local] and -.Va remote +.Va [remote] lines .Dq * means use the default, or wildcard match. In addition, for -.Va remote +.Va [remote] lines .Dq = means use the values from the matched -.Va local +.Va [local] configuration line. .Pp The first four fields, @@ -85,9 +85,9 @@ The first four fields, and .Va owner are used to match the -.Va local +.Va [local] or -.Va remote +.Va [remote] addresses, whereas the last 3 fields .Va name , .Va nfail , @@ -110,8 +110,8 @@ The can be an IPv4 address in numeric format, an IPv6 address in numeric format and enclosed by square brackets, or an interface name. Mask modifiers are not allowed on interfaces because interfaces -can have multiple addresses in different protocols where the mask has a different -size. +can have multiple addresses in different protocols where the mask has a +different size. .Pp The .Dv mask @@ -143,8 +143,8 @@ The field, is the name of the packet filter rule to be used. If the .Va name -starts with a -.Dq - , +starts with a hyphen +.Pq Dq - , then the default rulename is prepended to the given name. If the .Dv name @@ -160,13 +160,13 @@ field contains the number of failed attempts before access is blocked, defaulting to .Dq * meaning never, and the last field -.Va disable +.Va duration specifies the amount of time since the last access that the blocking rule should be active, defaulting to .Dq * meaning forever. The default unit for -.Va disable +.Va duration is seconds, but one can specify suffixes for different units, such as .Dq m for minutes @@ -176,28 +176,34 @@ for hours and for days. .Pp Matching is done first by checking the -.Va local +.Va [local] rules individually, in the order of the most specific to the least specific. -If a match is found, then the -.Va remote +If a match is found, then the matching +.Va [remote] rules are applied. The .Va name , .Va nfail , and -.Va disable +.Va duration fields can be altered by the -.Va remote +.Va [remote] rule that matched. .Pp The -.Va remote +.Va [remote] rules can be used for allowing specific addresses, changing the mask -size, the rule that the packet filter uses, the number of failed attempts, -or the block duration. +size (via +.Va name ) , +the rule that the packet filter uses (also via +.Va name ) , +the number of failed attempts (via +.Va nfail ) , +or the duration to block (via +.Va duration ) . .Sh FILES -.Bl -tag -width /etc/blacklistd.conf -compact -.It Pa /etc/blacklistd.conf +.Bl -tag -width /etc/blocklistd.conf -compact +.It Pa /etc/blocklistd.conf Configuration file. .El .Sh EXAMPLES @@ -209,13 +215,15 @@ bnx0:ssh * * * * 3 6h [remote] # Never block 1.2.3.4 1.2.3.4:ssh * * * * * * -# For addresses coming from 8.8.0.0/16 block whole /24 networks instead of +# Never block the example IPv6 subnet either +[2001:db8::]/32:ssh * * * * * * +# For addresses coming from 8.8.0.0/16 block whole /24 networks instead # individual hosts, but keep the rest of the blocking parameters the same. 8.8.0.0/16:ssh * * * /24 = = .Ed .Sh SEE ALSO -.Xr blacklistctl 8 , -.Xr blacklistd 8 +.Xr blocklistctl 8 , +.Xr blocklistd 8 .Sh HISTORY .Nm first appeared in *** 2790 LINES SKIPPED *** From nobody Tue Oct 14 00:57:32 2025 X-Original-To: dev-commits-src-branches@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 4clwmX65P0z6Cf7k; Tue, 14 Oct 2025 00:57:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmX4TW0z3vLH; Tue, 14 Oct 2025 00:57:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403452; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=avv082mq+TMVcgd90z4b7ULaO4CHaccqui1zyKSKpBY=; b=E8wguCGYDeMwdiq6Q7X3B4YG4aDKh3K3K+V3Q2KzZMKYbAtD0Ot/89ie2x+BuXpA3jgluX sJ8BZ9XOuMfXob2mLq2kETIFsovN8nCXNdLOgbdJIURgE58iaYoEGhFpN2gVDNmqL/Do8C gLNdWnSYirpZgLbPf1XoHdHnCMA3cKEKItWrlQXWRGNIzu5GnidEi53qVyXbLAfJjJlEy5 BMu73Wzkl4Jz7F99lLgoapmBqqQ1yM/1bu+4PrESOzGl7Q7PAUfm8TIXHdogjzx8zXqOsM e8EtbKzFkH7lD8PBKyEa5AKK5MY5NNJXMe5J2ymuhckUM8fzdT7Mo2qctvuWVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403452; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=avv082mq+TMVcgd90z4b7ULaO4CHaccqui1zyKSKpBY=; b=g9Az4Rt+fx5We1S+0HFd/+yFOURQBB4AnLwbSQ9BO9hHMvwNiODer/wHMLEdCEQUv54j+P Zy9VLIhkkfmj21UeG+0UnSxR6mM6QJSuQV71KPo/Bamr1+0FVMZdJpolnCgLrjcITQnGf0 QPW8gMG5ZdSu0ynpjIDCI9KeVvK9RJ7j3lXZF+hziB9xVPA9uC0Y3qccAg8bh4TOmopSmU qT14a+gLsnFfHmAfShWGCHdtuKBCM5zqL41dL3fesCnvnmhbx5syrXC09h7fkHnKgD22tl DcDnf7WOEmT80I5cVswoMe4b7/fd54Axq8PhhZl8UrE0Y4J+25UuE5hzLXE8WA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403452; a=rsa-sha256; cv=none; b=vrh+M7JjnQ8hpWyUamOoo9+LT8MkKbeL7LQFF6XxOvZq0Mk3Z0ME9/FnxpOwXMXq251CoY GKqkZXM1drQhiwVyJepknmOGdB3u1YnSGPV8mSG8+Tg+Gl7hfuMsUEdWs1h5NGLGOe5GcN sLv2FcvQ3ydhOBhl/bLLaywYB0RScYXSaitQxeSlrI0urZ7XDM3W565LdvC8bBb0ZeDzPd /g5nSz5qHuxyutWmARwNC8gEl4QWcbIwBvwkkyxCY0fon+pFJ/iqnAk2EfODPNiXGBItAX 2AXpGyDTVwVdupb6jdSkpPr9k7iLzbRonBqV1Q63fyXH23KRVPHNNbiEGa9pXA== 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 4clwmX3r19zVVB; Tue, 14 Oct 2025 00:57: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 59E0vW5a021562; Tue, 14 Oct 2025 00:57:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vWb1021559; Tue, 14 Oct 2025 00:57:32 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:32 GMT Message-Id: <202510140057.59E0vWb1021559@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: a719ef67e8ed - stable/15 - blocklist: Revert upstream commit ddf6d71 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a719ef67e8ed2cbae5f397d2a4680a02495b79ab Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=a719ef67e8ed2cbae5f397d2a4680a02495b79ab commit a719ef67e8ed2cbae5f397d2a4680a02495b79ab Author: Jose Luis Duran AuthorDate: 2025-10-11 14:15:03 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:52:47 +0000 blocklist: Revert upstream commit ddf6d71 Upstream commit ddf6d71 ("implement BLOCKLIST_BAD_USER as a "one-count" failure") introduced BLOCKLIST_BAD_USER with a one-count failure mechanism. BLOCKLIST_AUTH_FAIL was implemented with a two-count failure mechanism. Since we have been utilizing BLOCKLIST_AUTH_FAIL, the number of failed attempts now doubles towards the maximum limit (nfails), giving system administrators the impression that the number of failed authentication attempts is inaccurate. Revert this commit until a consensus has been reached. We do not want to introduce yet another breaking change with the renaming of the library. Approved by: emaste (mentor) MFC after: 2 days (cherry picked from commit 4d56eb007b18881becb2107f87bd2a7edca3e6bf) --- contrib/blocklist/bin/blocklistd.c | 18 +++++++++--------- contrib/blocklist/lib/libblocklist.3 | 32 +++++++++++++++++++------------- 2 files changed, 28 insertions(+), 22 deletions(-) diff --git a/contrib/blocklist/bin/blocklistd.c b/contrib/blocklist/bin/blocklistd.c index 4846b507c8d1..03a1dbbf056c 100644 --- a/contrib/blocklist/bin/blocklistd.c +++ b/contrib/blocklist/bin/blocklistd.c @@ -222,19 +222,16 @@ process(bl_t bl) switch (bi->bi_type) { case BL_ABUSE: /* - * If the application has signaled abusive behavior, set the - * number of fails to be two less than the configured limit. - * Fall through to the normal BL_ADD and BL_BADUSER processing, - * which will increment the failure count to the threshhold, and - * block the abusive address. + * If the application has signaled abusive behavior, + * set the number of fails to be one less than the + * configured limit. Fallthrough to the normal BL_ADD + * processing, which will increment the failure count + * to the threshhold, and block the abusive address. */ if (c.c_nfail != -1) - dbi.count = c.c_nfail - 2; + dbi.count = c.c_nfail - 1; /*FALLTHROUGH*/ case BL_ADD: - dbi.count++; /* will become += 2 */ - /*FALLTHROUGH*/ - case BL_BADUSER: dbi.count++; dbi.last = ts.tv_sec; if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { @@ -263,6 +260,9 @@ process(bl_t bl) dbi.count = 0; dbi.last = 0; break; + case BL_BADUSER: + /* ignore for now */ + break; default: (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); } diff --git a/contrib/blocklist/lib/libblocklist.3 b/contrib/blocklist/lib/libblocklist.3 index 7a016625a047..fd6eb93eb756 100644 --- a/contrib/blocklist/lib/libblocklist.3 +++ b/contrib/blocklist/lib/libblocklist.3 @@ -106,20 +106,26 @@ The .Ar action parameter can take these values: .Bl -tag -width ".Dv BLOCKLIST_ABUSIVE_BEHAVIOR" -.It Va BLOCKLIST_BAD_USER -The sending daemon has determined the username presented for -authentication is invalid. -This is considered as one failure count. -.It Va BLOCKLIST_AUTH_FAIL +.It Dv BLOCKLIST_AUTH_FAIL There was an unsuccessful authentication attempt. -This is considered as two failure counts together. -.It Va BLOCKLIST_ABUSIVE_BEHAVIOR -The sending daemon has detected abusive behavior from the remote system. -This is considered as a total immediate failure. -The remote address will be blocked as soon as possible. -.It Va BLOCKLIST_AUTH_OK -A valid user successfully authenticated. -Any entry for the remote address will be removed as soon as possible. +.It Dv BLOCKLIST_AUTH_OK +A user successfully authenticated. +.It Dv BLOCKLIST_ABUSIVE_BEHAVIOR +The sending daemon has detected abusive behavior +from the remote system. +The remote address should +be blocked as soon as possible. +.It Dv BLOCKLIST_BAD_USER +The sending daemon has determined the username +presented for authentication is invalid. +The +.Xr blocklistd 8 +daemon compares the username to a configured list of forbidden +usernames and +blocks the address immediately if a forbidden username matches. +(The +.Dv BLOCKLIST_BAD_USER +support is not currently available.) .El .Pp The From nobody Tue Oct 14 00:57:33 2025 X-Original-To: dev-commits-src-branches@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 4clwmZ1Nnhz6Cf7n; Tue, 14 Oct 2025 00:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmY6D0Lz3vTK; Tue, 14 Oct 2025 00:57:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SYEoRmB2eWwW72rV0Iik5942KuAMfyB1h4Xv+4O2Tsk=; b=pwahNlHZ1jLkaH+EdmYnd5Y6230iE/OehJlejOIxa+0OmVsy7B1v35TVYz6hFHaK1yawb4 Qih6Q29IUTHr/urEH2Bj40Evm0Yue8F7E8PJxkusGE+BrHLepxGCBcatipUjPh9VOwr0eU aj87srMcW+8yEIQCQLNlwWwvy9qkUXGfmpBNr1zR62c3hR7hpBX9TSRmD4+ypsca/mpara pMnYOhtwOwQwTdQGEp0yE/S8HmplHWLirPfzRU/JiImlzcqQGsabfzOBfss1YKuc2ED2Q/ bUp6NJLCf0IUet7WobQYPemh6BmlIO4BJtibC/Ak/+sUzL3WUIw/+0c4rfUJ8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SYEoRmB2eWwW72rV0Iik5942KuAMfyB1h4Xv+4O2Tsk=; b=trw0r0RTt6iTRbM/1DgedEK+opvF67NeiSKMjpSWSueBBZiJ+QF2XS2+Sy8Jc9enBvxFHe EG0u/ud6+L3d4OlI1/AVFQQGbbU4dZBGtJVtHqI47jsIs7KDsGyPK0l5aOnLmbnO0kdgF/ Khg748BqOkx7m40u7f5ODqnLoGNzwYR8hq8wyGtmoxj7Li6Lqkr26XRz7BvUnVRIopSIFd Mp13wdOwDKEYHOmRAAI+k4Smt0ThEhaKY7HzBDDAw+Wc+P6EAvv4gFX4zpgfg9NSFfzDKS UqZBXLWWMZopW7LDT5+dRX8JaT+GbddXdc+EeK6oaypmlyW2onoFk6+Ibrcj1g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403453; a=rsa-sha256; cv=none; b=jlv5iaRc+vTDut9oO5qtTlCgDJHUxBtpNmsLmTBWbGDhdltC12HUG4ZOMIOgDH2E7dn+5X hdvLYPf3h/nBiyB7UEEle0GWHrQvRlvnoJsZRXHJUwC6Z9v/tXkPFjlmIZTAYje7W/WOd6 FtM8VNYnDUU4054e1BD2M/uwgIZZ5XyPXa4uMsvVVurLU7Qh8go6eLwmmFQuTEyEHD3uuG rsnSD4RPr8sbageQ+Rrxvse5VHz6e/RD7PfnT3BTNH0S76T4G+Us2j5iZY1fSeocdES9v5 wQLtz+omZxQJaoKMW31Y+B2zhVbblbwdjWS3eHOmCR2hpX7XUYvOjmgI8haqHw== 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 4clwmY4qKvzVC1; Tue, 14 Oct 2025 00:57: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 59E0vXdQ021599; Tue, 14 Oct 2025 00:57:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vXQf021596; Tue, 14 Oct 2025 00:57:33 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:33 GMT Message-Id: <202510140057.59E0vXQf021596@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 7f6f2139eef9 - stable/15 - blocklist: Rename blacklist to blocklist List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7f6f2139eef9f9fc263977c847c6dbf235a1b1b7 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=7f6f2139eef9f9fc263977c847c6dbf235a1b1b7 commit 7f6f2139eef9f9fc263977c847c6dbf235a1b1b7 Author: Jose Luis Duran AuthorDate: 2025-10-12 17:14:27 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:53:16 +0000 blocklist: Rename blacklist to blocklist Follow up upstream rename from blacklist to blocklist. - Old names and rc scripts are still valid, but emitting an ugly warning - Old firewall rules and anchor names should work, but emitting an ugly warning - Old MK_BLACKLIST* knobs are wired to the new ones Although care has been taken not to break current configurations, this is a large patch containing mostly duplicated code. If issues arise, it will be swiftly reverted. Reviewed by: ivy (pkgbase) Approved by: emaste (mentor) MFC after: 2 days Relnotes: yes (cherry picked from commit 7238317403b95a8e35cf0bc7cd66fbd78ecbe521) --- contrib/blocklist/bin/blacklistctl.c | 170 ++++++ contrib/blocklist/bin/blacklistd.c | 592 +++++++++++++++++++++ contrib/blocklist/bin/old_internal.c | 50 ++ contrib/blocklist/bin/old_internal.h | 58 ++ contrib/blocklist/include/blacklist.h | 65 +++ contrib/blocklist/include/old_bl.h | 80 +++ contrib/blocklist/lib/blacklist.c | 117 ++++ contrib/blocklist/lib/old_bl.c | 554 +++++++++++++++++++ crypto/openssh/auth-pam.c | 4 +- crypto/openssh/auth.c | 8 +- crypto/openssh/{blacklist.c => blocklist.c} | 16 +- .../{blacklist_client.h => blocklist_client.h} | 30 +- crypto/openssh/monitor.c | 8 +- crypto/openssh/servconf.c | 18 +- crypto/openssh/servconf.h | 2 +- crypto/openssh/sshd-session.c | 10 +- crypto/openssh/sshd_config | 2 +- crypto/openssh/sshd_config.5 | 14 +- lib/Makefile | 1 + lib/libblacklist/Makefile | 24 +- lib/libblocklist/Makefile | 30 ++ lib/libblocklist/Makefile.depend | 16 + lib/libsysdecode/Makefile.depend | 2 +- libexec/Makefile | 6 +- libexec/blacklistd-helper/Makefile | 7 - libexec/blocklistd-helper/Makefile | 10 + .../Makefile.depend | 0 libexec/blocklistd-helper/blacklistd-helper | 293 ++++++++++ libexec/fingerd/Makefile | 8 +- libexec/fingerd/Makefile.depend.options | 2 +- libexec/fingerd/fingerd.c | 16 +- libexec/rc/rc.conf | 6 +- libexec/rc/rc.d/Makefile | 5 +- libexec/rc/rc.d/blacklistd | 10 +- libexec/rc/rc.d/blocklistd | 46 ++ release/packages/ucl/blocklist-all.ucl | 8 +- secure/libexec/sshd-auth/Makefile | 10 +- secure/libexec/sshd-session/Makefile | 10 +- secure/usr.sbin/sshd/Makefile.depend.options | 2 +- share/man/man5/periodic.conf.5 | 2 +- share/man/man5/src.conf.5 | 43 +- share/mk/bsd.libnames.mk | 1 + share/mk/local.dirdeps-options.mk | 1 + share/mk/src.libnames.mk | 10 +- share/mk/src.opts.mk | 10 + targets/pseudo/userland/Makefile.depend | 6 + targets/pseudo/userland/lib/Makefile.depend | 4 + targets/pseudo/userland/libexec/Makefile.depend | 4 +- tools/build/mk/OptionalObsoleteFiles.inc | 21 +- tools/build/options/WITHOUT_BLACKLIST | 6 +- tools/build/options/WITHOUT_BLACKLIST_SUPPORT | 8 +- tools/build/options/WITHOUT_BLOCKLIST | 4 + tools/build/options/WITHOUT_BLOCKLIST_SUPPORT | 6 + usr.sbin/Makefile | 2 + usr.sbin/blacklistctl/Makefile | 10 +- usr.sbin/blacklistd/Makefile | 13 +- usr.sbin/blacklistd/blacklistd.conf | 10 +- usr.sbin/blocklistctl/Makefile | 22 + usr.sbin/blocklistctl/Makefile.depend | 18 + usr.sbin/blocklistd/Makefile | 23 + usr.sbin/blocklistd/Makefile.depend | 18 + usr.sbin/blocklistd/blocklistd.conf | 16 + usr.sbin/periodic/etc/security/520.pfdenied | 2 +- 63 files changed, 2426 insertions(+), 144 deletions(-) diff --git a/contrib/blocklist/bin/blacklistctl.c b/contrib/blocklist/bin/blacklistctl.c new file mode 100644 index 000000000000..6298a08b10b4 --- /dev/null +++ b/contrib/blocklist/bin/blacklistctl.c @@ -0,0 +1,170 @@ +/* $NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $"); + +#include +#include +#ifdef HAVE_LIBUTIL_H +#include +#endif +#ifdef HAVE_UTIL_H +#include +#endif +#include +#include +#include +#include +#include +#include +#include + +#include "conf.h" +#include "state.h" +#include "old_internal.h" +#include "support.h" + +static __dead void +usage(int c) +{ + if (c == 0) + warnx("Missing/unknown command"); + else if (c != '?') + warnx("Unknown option `%c'", (char)c); + fprintf(stderr, + "Usage: %s dump [-abdnrw] [-D dbname]\n", getprogname()); + exit(EXIT_FAILURE); +} + +static const char * +star(char *buf, size_t len, int val) +{ + if (val == -1) + return "*"; + snprintf(buf, len, "%d", val); + return buf; +} + +int +main(int argc, char *argv[]) +{ + const char *dbname = _PATH_BLSTATE; + DB *db; + struct conf c; + struct dbinfo dbi; + unsigned int i; + struct timespec ts; + int all, blocked, remain, wide, noheader; + int o; + + noheader = wide = blocked = all = remain = 0; + lfun = dlog; + + if (argc == 1 || strcmp(argv[1], "dump") != 0) + usage(0); + + argc--; + argv++; + + while ((o = getopt(argc, argv, "abD:dnrw")) != -1) + switch (o) { + case 'a': + all = 1; + blocked = 0; + break; + case 'b': + blocked = 1; + break; + case 'D': + dbname = optarg; + break; + case 'd': + debug++; + break; + case 'n': + noheader = 1; + break; + case 'r': + remain = 1; + break; + case 'w': + wide = 1; + break; + default: + usage(o); + } + + db = state_open(dbname, O_RDONLY, 0); + if (db == NULL) + err(EXIT_FAILURE, "Can't open `%s'", dbname); + + clock_gettime(CLOCK_REALTIME, &ts); + wide = wide ? 8 * 4 + 7 : 4 * 3 + 3; + if (!noheader) + printf("%*.*s/ma:port\tid\tnfail\t%s\n", wide, wide, + "address", remain ? "remaining time" : "last access"); + for (i = 1; state_iterate(db, &c, &dbi, i) != 0; i = 0) { + char buf[BUFSIZ]; + char mbuf[64], pbuf[64]; + if (!all) { + if (blocked) { + if (c.c_nfail == -1 || dbi.count < c.c_nfail) + continue; + } else { + if (dbi.count >= c.c_nfail) + continue; + } + } + sockaddr_snprintf(buf, sizeof(buf), "%a", (void *)&c.c_ss); + printf("%*.*s/%s:%s\t", wide, wide, buf, + star(mbuf, sizeof(mbuf), c.c_lmask), + star(pbuf, sizeof(pbuf), c.c_port)); + if (c.c_duration == -1) { + strlcpy(buf, "never", sizeof(buf)); + } else { + if (remain) + fmtydhms(buf, sizeof(buf), + c.c_duration - (ts.tv_sec - dbi.last)); + else + fmttime(buf, sizeof(buf), dbi.last); + } + printf("%s\t%d/%s\t%-s\n", dbi.id, dbi.count, + star(mbuf, sizeof(mbuf), c.c_nfail), buf); + } + state_close(db); + return EXIT_SUCCESS; +} diff --git a/contrib/blocklist/bin/blacklistd.c b/contrib/blocklist/bin/blacklistd.c new file mode 100644 index 000000000000..ded3075ed707 --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.c @@ -0,0 +1,592 @@ +/* $NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $"); + +#include +#include +#include + +#ifdef HAVE_LIBUTIL_H +#include +#endif +#ifdef HAVE_UTIL_H +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "old_bl.h" +#include "old_internal.h" +#include "conf.h" +#include "run.h" +#include "state.h" +#include "support.h" + +static const char *configfile = _PATH_BLCONF; +static DB *state; +static const char *dbfile = _PATH_BLSTATE; +static sig_atomic_t readconf; +static sig_atomic_t done; +static int vflag; + +static void +sigusr1(int n __unused) +{ + debug++; +} + +static void +sigusr2(int n __unused) +{ + debug--; +} + +static void +sighup(int n __unused) +{ + readconf++; +} + +static void +sigdone(int n __unused) +{ + done++; +} + +static __dead void +usage(int c) +{ + if (c != '?') + warnx("Unknown option `%c'", (char)c); + fprintf(stderr, "Usage: %s [-vdfr] [-c ] [-R ] " + "[-P ] [-C ] [-D ] " + "[-s ] [-t ]\n", getprogname()); + exit(EXIT_FAILURE); +} + +static int +getremoteaddress(bl_info_t *bi, struct sockaddr_storage *rss, socklen_t *rsl) +{ + *rsl = sizeof(*rss); + memset(rss, 0, *rsl); + + if (getpeername(bi->bi_fd, (void *)rss, rsl) != -1) + return 0; + + if (errno != ENOTCONN) { + (*lfun)(LOG_ERR, "getpeername failed (%m)"); + return -1; + } + + if (bi->bi_slen == 0) { + (*lfun)(LOG_ERR, "unconnected socket with no peer in message"); + return -1; + } + + switch (bi->bi_ss.ss_family) { + case AF_INET: + *rsl = sizeof(struct sockaddr_in); + break; + case AF_INET6: + *rsl = sizeof(struct sockaddr_in6); + break; + default: + (*lfun)(LOG_ERR, "bad client passed socket family %u", + (unsigned)bi->bi_ss.ss_family); + return -1; + } + + if (*rsl != bi->bi_slen) { + (*lfun)(LOG_ERR, "bad client passed socket length %u != %u", + (unsigned)*rsl, (unsigned)bi->bi_slen); + return -1; + } + + memcpy(rss, &bi->bi_ss, *rsl); + +#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN + if (*rsl != rss->ss_len) { + (*lfun)(LOG_ERR, + "bad client passed socket internal length %u != %u", + (unsigned)*rsl, (unsigned)rss->ss_len); + return -1; + } +#endif + return 0; +} + +static void +process(bl_t bl) +{ + struct sockaddr_storage rss; + socklen_t rsl; + char rbuf[BUFSIZ]; + bl_info_t *bi; + struct conf c; + struct dbinfo dbi; + struct timespec ts; + + memset(&dbi, 0, sizeof(dbi)); + memset(&c, 0, sizeof(c)); + if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { + (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); + return; + } + + if ((bi = bl_recv(bl)) == NULL) { + (*lfun)(LOG_ERR, "no message (%m)"); + return; + } + + if (getremoteaddress(bi, &rss, &rsl) == -1) + goto out; + + if (debug || bi->bi_msg[0]) { + sockaddr_snprintf(rbuf, sizeof(rbuf), "%a:%p", (void *)&rss); + (*lfun)(bi->bi_msg[0] ? LOG_INFO : LOG_DEBUG, + "processing type=%d fd=%d remote=%s msg=%s uid=%lu gid=%lu", + bi->bi_type, bi->bi_fd, rbuf, + bi->bi_msg, (unsigned long)bi->bi_uid, + (unsigned long)bi->bi_gid); + } + + if (conf_find(bi->bi_fd, bi->bi_uid, &rss, &c) == NULL) { + (*lfun)(LOG_DEBUG, "no rule matched"); + goto out; + } + + + if (state_get(state, &c, &dbi) == -1) + goto out; + + if (debug) { + char b1[128], b2[128]; + (*lfun)(LOG_DEBUG, "%s: initial db state for %s: count=%d/%d " + "last=%s now=%s", __func__, rbuf, dbi.count, c.c_nfail, + fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } + + switch (bi->bi_type) { + case BL_ABUSE: + /* + * If the application has signaled abusive behavior, + * set the number of fails to be one less than the + * configured limit. Fallthrough to the normal BL_ADD + * processing, which will increment the failure count + * to the threshhold, and block the abusive address. + */ + if (c.c_nfail != -1) + dbi.count = c.c_nfail - 1; + /*FALLTHROUGH*/ + case BL_ADD: + dbi.count++; + dbi.last = ts.tv_sec; + if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { + /* + * No point in re-adding the rule. + * It might exist already due to latency in processing + * and removing the rule is the wrong thing to do as + * it allows a window to attack again. + */ + if (dbi.id[0] == '\0') { + int res = run_change("add", &c, + dbi.id, sizeof(dbi.id)); + if (res == -1) + goto out; + } + sockaddr_snprintf(rbuf, sizeof(rbuf), "%a", + (void *)&rss); + (*lfun)(LOG_INFO, + "blocked %s/%d:%d for %d seconds", + rbuf, c.c_lmask, c.c_port, c.c_duration); + } + break; + case BL_DELETE: + if (dbi.last == 0) + goto out; + dbi.count = 0; + dbi.last = 0; + break; + case BL_BADUSER: + /* ignore for now */ + break; + default: + (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); + } + state_put(state, &c, &dbi); + +out: + close(bi->bi_fd); + + if (debug) { + char b1[128], b2[128]; + (*lfun)(LOG_DEBUG, "%s: final db state for %s: count=%d/%d " + "last=%s now=%s", __func__, rbuf, dbi.count, c.c_nfail, + fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } +} + +static void +update_interfaces(void) +{ + struct ifaddrs *oifas, *nifas; + + if (getifaddrs(&nifas) == -1) + return; + + oifas = ifas; + ifas = nifas; + + if (oifas) + freeifaddrs(oifas); +} + +static void +update(void) +{ + struct timespec ts; + struct conf c; + struct dbinfo dbi; + unsigned int f, n; + char buf[128]; + void *ss = &c.c_ss; + + if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { + (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); + return; + } + +again: + for (n = 0, f = 1; state_iterate(state, &c, &dbi, f) == 1; + f = 0, n++) + { + time_t when = c.c_duration + dbi.last; + if (debug > 1) { + char b1[64], b2[64]; + sockaddr_snprintf(buf, sizeof(buf), "%a:%p", ss); + (*lfun)(LOG_DEBUG, "%s:[%u] %s count=%d duration=%d " + "last=%s " "now=%s", __func__, n, buf, dbi.count, + c.c_duration, fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } + if (c.c_duration == -1 || when >= ts.tv_sec) + continue; + if (dbi.id[0]) { + run_change("rem", &c, dbi.id, 0); + sockaddr_snprintf(buf, sizeof(buf), "%a", ss); + (*lfun)(LOG_INFO, "released %s/%d:%d after %d seconds", + buf, c.c_lmask, c.c_port, c.c_duration); + } + state_del(state, &c); + goto again; + } +} + +static void +addfd(struct pollfd **pfdp, bl_t **blp, size_t *nfd, size_t *maxfd, + const char *path) +{ + bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog_r); + if (bl == NULL || !bl_isconnected(bl)) + exit(EXIT_FAILURE); + if (*nfd >= *maxfd) { + *maxfd += 10; + *blp = realloc(*blp, sizeof(**blp) * *maxfd); + if (*blp == NULL) + err(EXIT_FAILURE, "malloc"); + *pfdp = realloc(*pfdp, sizeof(**pfdp) * *maxfd); + if (*pfdp == NULL) + err(EXIT_FAILURE, "malloc"); + } + + (*pfdp)[*nfd].fd = bl_getfd(bl); + (*pfdp)[*nfd].events = POLLIN; + (*blp)[*nfd] = bl; + *nfd += 1; +} + +static void +uniqueadd(struct conf ***listp, size_t *nlist, size_t *mlist, struct conf *c) +{ + struct conf **list = *listp; + + if (c->c_name[0] == '\0') + return; + for (size_t i = 0; i < *nlist; i++) { + if (strcmp(list[i]->c_name, c->c_name) == 0) + return; + } + if (*nlist == *mlist) { + *mlist += 10; + void *p = realloc(*listp, *mlist * sizeof(*list)); + if (p == NULL) + err(EXIT_FAILURE, "Can't allocate for rule list"); + list = *listp = p; + } + list[(*nlist)++] = c; +} + +static void +rules_flush(void) +{ + struct conf **list; + size_t nlist, mlist; + + list = NULL; + mlist = nlist = 0; + for (size_t i = 0; i < rconf.cs_n; i++) + uniqueadd(&list, &nlist, &mlist, &rconf.cs_c[i]); + for (size_t i = 0; i < lconf.cs_n; i++) + uniqueadd(&list, &nlist, &mlist, &lconf.cs_c[i]); + + for (size_t i = 0; i < nlist; i++) + run_flush(list[i]); + free(list); +} + +static void +rules_restore(void) +{ + DB *db; + struct conf c; + struct dbinfo dbi; + unsigned int f; + + db = state_open(dbfile, O_RDONLY, 0); + if (db == NULL) { + (*lfun)(LOG_ERR, "Can't open `%s' to restore state (%m)", + dbfile); + return; + } + for (f = 1; state_iterate(db, &c, &dbi, f) == 1; f = 0) { + if (dbi.id[0] == '\0') + continue; + (void)run_change("add", &c, dbi.id, sizeof(dbi.id)); + state_put(state, &c, &dbi); + } + state_close(db); + state_sync(state); +} + +int +main(int argc, char *argv[]) +{ + int c, tout, flags, flush, restore, ret; + const char *spath, **blsock; + size_t nblsock, maxblsock; + + setprogname(argv[0]); + + spath = NULL; + blsock = NULL; + maxblsock = nblsock = 0; + flush = 0; + restore = 0; + tout = 0; + flags = O_RDWR|O_EXCL|O_CLOEXEC; + while ((c = getopt(argc, argv, "C:c:D:dfP:rR:s:t:v")) != -1) { + switch (c) { + case 'C': + controlprog = optarg; + break; + case 'c': + configfile = optarg; + break; + case 'D': + dbfile = optarg; + break; + case 'd': + debug++; + break; + case 'f': + flush++; + break; + case 'P': + spath = optarg; + break; + case 'R': + rulename = optarg; + break; + case 'r': + restore++; + break; + case 's': + if (nblsock >= maxblsock) { + maxblsock += 10; + void *p = realloc(blsock, + sizeof(*blsock) * maxblsock); + if (p == NULL) + err(EXIT_FAILURE, + "Can't allocate memory for %zu sockets", + maxblsock); + blsock = p; + } + blsock[nblsock++] = optarg; + break; + case 't': + tout = atoi(optarg) * 1000; + break; + case 'v': + vflag++; + break; + default: + usage(c); + } + } + + argc -= optind; + if (argc) + usage('?'); + + signal(SIGHUP, sighup); + signal(SIGINT, sigdone); + signal(SIGQUIT, sigdone); + signal(SIGTERM, sigdone); + signal(SIGUSR1, sigusr1); + signal(SIGUSR2, sigusr2); + + openlog(getprogname(), LOG_PID, LOG_DAEMON); + + if (debug) { + lfun = dlog; + if (tout == 0) + tout = 5000; + } else { + if (tout == 0) + tout = 15000; + } + + update_interfaces(); + conf_parse(configfile); + if (flush) { + rules_flush(); + if (!restore) + flags |= O_TRUNC; + } + + struct pollfd *pfd = NULL; + bl_t *bl = NULL; + size_t nfd = 0; + size_t maxfd = 0; + + for (size_t i = 0; i < nblsock; i++) + addfd(&pfd, &bl, &nfd, &maxfd, blsock[i]); + free(blsock); + + if (spath) { + FILE *fp = fopen(spath, "r"); + char *line; + if (fp == NULL) + err(EXIT_FAILURE, "Can't open `%s'", spath); + for (; (line = fparseln(fp, NULL, NULL, NULL, 0)) != NULL; + free(line)) + addfd(&pfd, &bl, &nfd, &maxfd, line); + fclose(fp); + } + if (nfd == 0) + addfd(&pfd, &bl, &nfd, &maxfd, _PATH_BLSOCK); + + state = state_open(dbfile, flags, 0600); + if (state == NULL) + state = state_open(dbfile, flags | O_CREAT, 0600); + if (state == NULL) + return EXIT_FAILURE; + + if (restore) { + if (!flush) + rules_flush(); + rules_restore(); + } + + if (!debug) { + if (daemon(0, 0) == -1) + err(EXIT_FAILURE, "daemon failed"); + if (pidfile(NULL) == -1) + err(EXIT_FAILURE, "Can't create pidfile"); + } + + for (size_t t = 0; !done; t++) { + if (readconf) { + readconf = 0; + conf_parse(configfile); + } + ret = poll(pfd, (nfds_t)nfd, tout); + if (debug) + (*lfun)(LOG_DEBUG, "received %d from poll()", ret); + switch (ret) { + case -1: + if (errno == EINTR) + continue; + (*lfun)(LOG_ERR, "poll (%m)"); + return EXIT_FAILURE; + case 0: + state_sync(state); + break; + default: + for (size_t i = 0; i < nfd; i++) + if (pfd[i].revents & POLLIN) + process(bl[i]); + } + if (t % 100 == 0) + state_sync(state); + if (t % 10000 == 0) + update_interfaces(); + update(); + } + state_close(state); + return 0; +} diff --git a/contrib/blocklist/bin/old_internal.c b/contrib/blocklist/bin/old_internal.c new file mode 100644 index 000000000000..79093cc8b8ab --- /dev/null +++ b/contrib/blocklist/bin/old_internal.c @@ -0,0 +1,50 @@ +/* $NetBSD: internal.c,v 1.2 2025/02/11 17:48:30 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: internal.c,v 1.2 2025/02/11 17:48:30 christos Exp $"); + +#include +#include +#include "conf.h" +#include "old_internal.h" + +int debug; +const char *rulename = "blacklistd"; +const char *controlprog = _PATH_BLCONTROL; +struct confset lconf, rconf; +struct ifaddrs *ifas; +void (*lfun)(int, const char *, ...) = syslog; diff --git a/contrib/blocklist/bin/old_internal.h b/contrib/blocklist/bin/old_internal.h new file mode 100644 index 000000000000..becee563e81d --- /dev/null +++ b/contrib/blocklist/bin/old_internal.h @@ -0,0 +1,58 @@ +/* $NetBSD: internal.h,v 1.1.1.1 2020/06/15 01:52:53 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifndef _OLD_INTERNAL_H +#define _OLD_INTERNAL_H + +#ifndef _PATH_BLCONF +#define _PATH_BLCONF "/etc/blacklistd.conf" +#endif +#ifndef _PATH_BLCONTROL +#define _PATH_BLCONTROL "/usr/libexec/blacklistd-helper" +#endif +#ifndef _PATH_BLSTATE +/* We want the new name, the old one would be incompatible after 24932b6 */ +#define _PATH_BLSTATE "/var/db/blocklistd.db" +#endif + +extern struct confset rconf, lconf; +extern int debug; +extern const char *rulename; +extern const char *controlprog; +extern struct ifaddrs *ifas; + +#if !defined(__syslog_attribute__) && !defined(__syslog__) +#define __syslog__ __printf__ +#endif + +extern void (*lfun)(int, const char *, ...) *** 2509 LINES SKIPPED *** From nobody Tue Oct 14 00:57:34 2025 X-Original-To: dev-commits-src-branches@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 4clwmb0tgrz6CfGG; Tue, 14 Oct 2025 00:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmZ5TtYz3vJM; Tue, 14 Oct 2025 00:57:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AHKJ6NZA8VqJr78fJCror4iH+a3OPObm16K3Lb/u/MA=; b=XiaTspaZqZS7cN89tM91S9uskN4L0X8jAEEocCFRJcvWAeSDjPBc7r2N9ExSe1MsJ/C/2X w/si675qhyNbvmUH2UGnnvoFc5GrPaHe4JpA+oSeejhsPpGb94akaaTdkyTyXyX0UHxIVK t7UA6vVR+t4ydH9tNV4mbb5+j/OQQMOqqcaMBwD8+ueMAaWhTEqtWuf3lAfIr04Wcloeer Wzjvkq68ZYByvCMIZY+rZ4bPSkf3iXmBYCl84OPX5J6bg76EPxPHm9jpo1K//e0PQP9m3S cVPHHYkWRUuu9PopnpKyr7ZB/xL2BiMCCcfEroemVlV4pJDxhjasl65rBAueNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AHKJ6NZA8VqJr78fJCror4iH+a3OPObm16K3Lb/u/MA=; b=dfQRR8Jer9tu57ZxMckAYoDaimDBkwIWI5Z8CKRdazz5rfcVDlBAamPKw5ohfzW/9rCSst f6FKOHN44yQsUV9AOMoITqrUCV4QasfRVjnWZjRDLhnJWpkeevc9Udu2/s/eJ6i/6+5B9n KefvIngnNDRWIvnRRA107YRcDbC5eMAX/ViD46zKTIhv44sxt932H1x2bh/UY1fkvlU313 yw8s0tENiD6vMnzQLwDKx9Z2Clhf6aHbSNghH4ygqDA/ATWiuUk2/QjFBSa5nAjspIo/35 T/+uEz/7iAEh/3jnFzrZiW+FL/JOUm2Hg42l6VrUw4ehweY7JwymZkcWhJUGTw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403454; a=rsa-sha256; cv=none; b=UrQ8pEOqrJbOHTI9TdI+3dq7yWRsTBErkFyQbutOC+JOyZhvyoG5rfzdcq2M4BZUOCzB/7 If0ZACYVGXfU1N95lALmNFicZoqHkKV66C7zmFXxuYpkKIe/Dm44uJTxPPCrTWjqVhnLjG 2tnvSSTjZPVcyk+vJnqw5rj981/CCNogVKmVQWAyrPDh+aI6BHzL/GDpDWqeHW18dwzxfO 4Cnj7SjIWD4eov10kUB9g3ZUzODsM9o6QELf0elvrEs5RB2xDnLsQ/aHjNsYK89TpaWcPD aTlxDE50Ca0sUJiskbAjDmPODJMn0Ma6TX16nO3SD8U2fd5LjwOui1i3VfWGPw== 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 4clwmZ55TWzTvS; Tue, 14 Oct 2025 00:57: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 59E0vYdR021640; Tue, 14 Oct 2025 00:57:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vYNV021637; Tue, 14 Oct 2025 00:57:34 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:34 GMT Message-Id: <202510140057.59E0vYNV021637@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: ba5768504bee - stable/15 - blocklist-helper: Silence a bogus pf warning List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: ba5768504bee39191754fc1aece3927c8936f27c Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=ba5768504bee39191754fc1aece3927c8936f27c commit ba5768504bee39191754fc1aece3927c8936f27c Author: Jose Luis Duran AuthorDate: 2025-10-12 17:16:12 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:53:40 +0000 blocklist-helper: Silence a bogus pf warning Silence a bogus warning about (an ethernet) anchor not being found. It has been reported as PR 280516. In the meantime, just sweep under the carpet. Approved by: emaste (mentor) MFC after: 2 days (cherry picked from commit 2347ca21d657121670e6e7246c6ac32efc996cac) --- contrib/blocklist/libexec/blocklistd-helper | 2 +- libexec/blocklistd-helper/blacklistd-helper | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/blocklist/libexec/blocklistd-helper b/contrib/blocklist/libexec/blocklistd-helper index f27cde4ed4ea..14a192ee35ce 100755 --- a/contrib/blocklist/libexec/blocklistd-helper +++ b/contrib/blocklist/libexec/blocklistd-helper @@ -258,7 +258,7 @@ flush) pf) # dynamically determine which anchors exist for anchor in $(/sbin/pfctl -a "$2" -s Anchors 2> /dev/null); do - /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush + /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush 2> /dev/null /sbin/pfctl -a "$anchor" -F rules done echo OK diff --git a/libexec/blocklistd-helper/blacklistd-helper b/libexec/blocklistd-helper/blacklistd-helper index 4195f070e8ee..92f768e86cdf 100644 --- a/libexec/blocklistd-helper/blacklistd-helper +++ b/libexec/blocklistd-helper/blacklistd-helper @@ -279,7 +279,7 @@ flush) pf) # dynamically determine which anchors exist for anchor in $(/sbin/pfctl -a "$2" -s Anchors 2> /dev/null); do - /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush + /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush 2> /dev/null /sbin/pfctl -a "$anchor" -F rules done echo OK From nobody Tue Oct 14 00:57:35 2025 X-Original-To: dev-commits-src-branches@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 4clwmc2GC0z6Cf7s; Tue, 14 Oct 2025 00:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmb6chXz3vNw; Tue, 14 Oct 2025 00:57:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CaOQbPDJsEm6Ufb8MTac9QM4v0XUeH7ZSH9Bd1M7fUo=; b=R1uEX57CgNWzWlScHLFHZAUiZL8ojE17KgT5QvPkUXb90MqaF3zZL+EOpdcDMgtoMw5tas U0i3/PbN3xvMkSDi/v6A87/0NVirHPrn4QLWgspxJk9nJjVR9QcHJ/k0yn3CkjMo9Vdohd PvQAhGi0rauZNkBFz15fVVbwECLluMMLOSxDWj8+icR2LoDqP9/1fhixuCMRUqqvUG9AoS +dPoaJBie/zI8899mEHJHPvZAs3WI2TJGHtJcRpvssOBSExCZS4MqRAwj2OtzDdXeb7mhG pjEdwhkcIPHY+VKBL3GvNBILrholPKjEFEc72swYJb7Q0Gw+7gfO6nGBqHUpZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CaOQbPDJsEm6Ufb8MTac9QM4v0XUeH7ZSH9Bd1M7fUo=; b=RPMyw62szzI2nYS+x8GZdddSfBR3FPYohicVJ+F48lb9pOdnNcwpD99ZWusyT4SJcYTL+B LSeUhLHNTShLb8ExzexRx+JQrnjE0vKn6tCtiiB1TjD284qU//J+pn/o0iKQZz1vnfzE44 4LA6w4gQmXm9AFvI7nEV065PzOjLjZRbHp3yFY5r2FfMWgE/ub9m0GvMB7Rrr5mDlXRI16 3/i8bR9PC2bzCNj1lNmhghhX84cdMly1U/zBTXG6wm/3T8Z4O9Drj0dPI/nOvz5CNpupoj 11c0OaFsvAVZwM0DLwl6xCXyVZDNJyV8I16/fR2qyndyyPUcVSJWa8l3DU2r8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403456; a=rsa-sha256; cv=none; b=qOuFLs/MZMKWGbdO57Rw9+hVAqBJcoYCaYRVE1N13A/xX3eIJcBymMS7eMTIJ8mmpNGURj +MTaMd82vB6+CK7ReK7YBZXX1ZMm216VxCTuO9VdvLuA+ie7KoS+aOR8RL0D4Y2KfJZpHu wp8SPH/CT4kOym8jSDIwx9qjA/i4Cv+F3TtGeyTVYhGf2mF1LCXIp0ubZG+fetolrRQE8i mfWeSSKRLn9DefLJmBugFbYBPpMyBqtaK2+XOJF1tGR9A1nlqltEB6/bdcL177Lb93vw7+ jrVt3j3UPO4vwtc1Dz1EeNaZxOXeElvSNMRzLt1vZUvsaCSLRLbaHnJWsdacfQ== 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 4clwmb68bbzTvT; Tue, 14 Oct 2025 00:57: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 59E0vZSb021680; Tue, 14 Oct 2025 00:57:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vZeR021677; Tue, 14 Oct 2025 00:57:35 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:35 GMT Message-Id: <202510140057.59E0vZeR021677@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: f935c0f66f75 - stable/15 - blacklist: Avoid duplicate manual pages in METALOG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f935c0f66f75e882185ed8bc46f39054f2ced4e1 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=f935c0f66f75e882185ed8bc46f39054f2ced4e1 commit f935c0f66f75e882185ed8bc46f39054f2ced4e1 Author: Jose Luis Duran AuthorDate: 2025-10-13 00:53:50 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:54:07 +0000 blacklist: Avoid duplicate manual pages in METALOG Previously, blacklist man pages were just a symlink to their blocklist counterpart, this in turn installed blocklist man pages twice, and resulted in a duplicate error when running metalog_reader.lua -c. Take advantage of the duplication to document nuances in blacklist, such as the fact that it uses the new database and socket name (blocklist). Also, note that it has been renamed to blocklist. In the future, it will help to document its deprecation. Approved by: emaste (mentor) Fixes: 7238317403b9 ("blocklist: Rename blacklist to blocklist") MFC after: 2 days (cherry picked from commit c6240045536548c22ce40d9ef36c1dc52abcfc9c) --- contrib/blocklist/bin/blacklistctl.8 | 136 ++++++++++++++ contrib/blocklist/bin/blacklistd.8 | 308 ++++++++++++++++++++++++++++++++ contrib/blocklist/bin/blacklistd.conf.5 | 242 +++++++++++++++++++++++++ contrib/blocklist/lib/libblacklist.3 | 188 +++++++++++++++++++ lib/libblacklist/Makefile | 17 +- usr.sbin/blacklistctl/Makefile | 3 +- usr.sbin/blacklistd/Makefile | 4 +- 7 files changed, 884 insertions(+), 14 deletions(-) diff --git a/contrib/blocklist/bin/blacklistctl.8 b/contrib/blocklist/bin/blacklistctl.8 new file mode 100644 index 000000000000..4d557c0c979d --- /dev/null +++ b/contrib/blocklist/bin/blacklistctl.8 @@ -0,0 +1,136 @@ +.\" $NetBSD: blocklistctl.8,v 1.4 2025/02/07 01:35:38 kre Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 January 27, 2025 +.Dt BLACKLISTCTL 8 +.Os +.Sh NAME +.Nm blacklistctl +.Nd display and change the state of the blacklistd database +.Sh SYNOPSIS +.Nm +.Cm dump +.Op Fl abdnrw +.Op Fl D Ar dbname +.Sh DESCRIPTION +.Nm +is a program used to display and change the state of the +.Xr blacklistd 8 +database. +The following sub-commands are supported: +.Ss dump +.Pp +The following options are available for the +.Cm dump +sub-command: +.Bl -tag -width indent +.It Fl a +Show all database entries, by default it shows only the active ones. +Inactive entries will be shown with a last-access (or, with +.Fl r , +the remaining) time of +.Ql never . +.It Fl b +Show only the blocked entries. +.It Fl D Ar dbname +Specify the location of the +.Ic blacklistd +database file to use. +The default is +.Pa /var/db/blocklistd.db . +.It Fl d +Increase debugging level. +.It Fl n +Don't display a header. +.It Fl r +Show the remaining blocked time instead of the last activity time. +.It Fl w +Normally the width of addresses is good for IPv4, the +.Fl w +flag, makes the display wide enough for IPv6 addresses. +.El +.Pp +The output of the +.Cm dump +sub-command consists of a header (unless +.Fl n +was given) and one line for each record in the database, where each line +has the following columns: +.Bl -tag -width indent +.It Ql address/ma:port +The remote address, mask, and local port number of the client connection +associated with the database entry. +.It Ql id +column will show the identifier for the packet filter rule associated +with the database entry, though this may only be the word +.Ql OK +for packet filters which do not creat a unique identifier for each rule. +.It Ql nfail +The number of +.Em failures +reported for the client on the noted port, as well as the number of +failures allowed before blocking (or, with +.Fl a , +an asterisk +.Aq * ) +.It So last access Sc | So remaining time Sc +The last time a the client was reported as attempting access, or, with +.Fl r , +the time remaining before the rule blocking the client will be removed. +.El +.Sh SEE ALSO +.Xr blacklistd 8 +.Sh NOTES +The +.Nm +program has been renamed to +.Xr blocklistctl 8 . +.Pp +Sometimes the reported number of failed attempts can exceed the number +of attempts that +.Xr blacklistd 8 +is configured to block. +This can happen either because the rule has been removed manually, or +because there were more attempts in flight while the rule block was being +added. +This condition is normal; in that case +.Xr blacklistd 8 +will first attempt to remove the existing rule, and then it will re-add +it to make sure that there is only one rule active. +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/bin/blacklistd.8 b/contrib/blocklist/bin/blacklistd.8 new file mode 100644 index 000000000000..9ca886e9c4d3 --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.8 @@ -0,0 +1,308 @@ +.\" $NetBSD: blocklistd.8,v 1.8 2025/02/25 22:13:34 christos Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 25, 2025 +.Dt BLACKLISTD 8 +.Os +.Sh NAME +.Nm blacklistd +.Nd block and release ports on demand to avoid DoS abuse +.Sh SYNOPSIS +.Nm +.Op Fl dfrv +.Op Fl C Ar controlprog +.Op Fl c Ar configfile +.Op Fl D Ar dbfile +.Op Fl P Ar sockpathsfile +.Op Fl R Ar rulename +.Op Fl s Ar sockpath +.Op Fl t Ar timeout +.Sh DESCRIPTION +.Nm +is a daemon similar to +.Xr syslogd 8 +that listens to sockets at paths specified in the +.Ar sockpathsfile +for notifications from other daemons about successful or failed connection +attempts. +If no such file is specified, then it only listens to the socket path +specified by +.Ar sockpath +or if that is not specified to +.Pa /var/run/blocklistd.sock . +Each notification contains an (action, port, protocol, address, owner) tuple +that identifies the remote connection and the action. +This tuple is consulted against entries from the +.Ar configfile , +with the syntax specified in +.Xr blacklistd.conf 5 . +If an entry is matched, a state entry is created for that tuple. +Each entry contains a number of tries limit and a duration. +.Pp +If +.Ar configfile +is a directory, or a directory exists with the same name as +.Ar configfile +with +.Qq .d +appended to it, each file in the directory will be read as configuration file. +If +.Ar configfile +exists as a file it will be processed before the contents of the +.Ar configfile Ns .d +directory if that also exists. +.Pp +The way +.Nm +does configuration entry matching is by having the client side pass the +file descriptor associated with the connection the client wants to blacklist +as well as passing socket credentials. +.Pp +The file descriptor is used to retrieve information (address and port) +about the remote side with +.Xr getpeername 2 +and the local side with +.Xr getsockname 2 . +.Pp +By examining the port of the local side, +.Nm +can determine if the client program +.Dq owns +the port. +By examining the optional address portion on the local side, it can match +interfaces. +By examining the remote address, it can match specific allow or deny rules. +.Pp +Finally +.Nm +can examine the socket credentials to match the user in the configuration file. +.Pp +While this works well for TCP sockets, it cannot be relied on for unbound +UDP sockets. +It is also less meaningful when it comes to connections using non-privileged +ports. +On the other hand, if we receive a request that has a local endpoint indicating +a UDP privileged port, we can presume that the client was privileged to be +able to acquire that port. +.Pp +Once an entry is matched +.Nm +can perform various actions. +If the action is +.Dq add +and the number of tries limit is reached, then a +control script +.Ar controlprog +is invoked with arguments: +.Bd -literal -offset indent +control add
+.Ed +.Pp +and should invoke a packet filter command to block the connection +specified by the arguments. +The +.Ar rulename +argument can be set from the command line (default +.Dv blacklistd ) . +The script could print a numerical id to stdout as a handle for +the rule that can be used later to remove that connection, but +that is not required as all information to remove the rule is +kept. +.Pp +If the action is +.Dq rem +Then the same control script is invoked as: +.Bd -literal -offset indent +control rem
+.Ed +.Pp +where +.Ar id +is the number returned from the +.Dq add +action. +.Pp +.Nm +maintains a database of known connections in +.Ar dbfile . +On startup it reads entries from that file, and updates its internal state. +.Pp +.Nm +checks the list of active entries every +.Ar timeout +seconds (default +.Dv 15 ) +and removes entries and block rules using the control program as necessary. +.Pp +The following options are available: +.Bl -tag -width indent +.It Fl C Ar controlprog +Use +.Ar controlprog +to communicate with the packet filter, instead of the default, which is +.Pa /usr/libexec/blacklistd-helper . +The following arguments are passed to the control program: +.Bl -tag -width protocol +.It action +The action to perform: +.Dv add , +.Dv rem , +or +.Dv flush ; +to add, remove or flush a firewall rule. +.It name +The rule name. +.It protocol +The optional protocol name (can be empty): +.Dv tcp , +.Dv tcp6 , +.Dv udp , +.Dv udp6 . +.It address +The IPv4 or IPv6 numeric address to be blocked or released. +.It mask +The numeric mask to be applied to the blocked or released address +.It port +The optional numeric port to be blocked (can be empty). +.It id +For packet filters that support removal of rules by rule identifier, the +identifier of the rule to be removed. +The add command is expected to return the rule identifier string to stdout. +.El +.It Fl c Ar configuration +The name of the configuration file to read. +The default when +.Fl c +is not given is +.Pa /etc/blacklistd.conf . +.It Fl D Ar dbfile +The Berkeley DB file where +.Nm +stores its state. +It defaults to +.Pa /var/db/blocklistd.db . +.It Fl d +Normally, +.Nm +disassociates itself from the terminal unless the +.Fl d +flag is specified, in which case it stays in the foreground. +.It Fl f +Truncate the state database and flush all the rules named +.Ar rulename +are deleted by invoking the control script as: +.Bd -literal -offset indent +control flush +.Ed +.It Fl P Ar sockpathsfile +A file containing a list of pathnames, one per line that +.Nm +will create sockets to listen to. +This is useful for chrooted environments. +.It Fl R Ar rulename +Specify the default rule name for the packet filter rules, usually +.Dv blacklistd . +.It Fl r +Re-read the firewall rules from the internal database, then +remove and re-add them. +This helps for packet filters that do not retain state across reboots. +.It Fl s Ar sockpath +Add +.Ar sockpath +to the list of Unix sockets +.Nm +listens to. +.It Fl t Ar timeout +The interval in seconds +.Nm +polls the state file to update the rules. +.It Fl v +Cause +.Nm +to print +diagnostic messages to +.Dv stdout +instead of +.Xr syslogd 8 . +.El +.Sh SIGNAL HANDLING +.Nm +deals with the following signals: +.Bl -tag -width "USR2" +.It Dv HUP +Receipt of this signal causes +.Nm +to re-read the configuration file. +.It Dv INT , Dv TERM & Dv QUIT +These signals tell +.Nm +to exit in an orderly fashion. +.It Dv USR1 +This signal tells +.Nm +to increase the internal debugging level by 1. +.It Dv USR2 +This signal tells +.Nm +to decrease the internal debugging level by 1. +.El +.Sh FILES +.Bl -tag -width /usr/libexec/blacklistd-helper -compact +.It Pa /usr/libexec/blacklistd-helper +Shell script invoked to interface with the packet filter. +.It Pa /etc/blacklistd.conf +Configuration file. +.It Pa /var/db/blocklistd.db +Database of current connection entries. +.It Pa /var/run/blocklistd.sock +Socket to receive connection notifications. +.El +.Sh SEE ALSO +.Xr blacklistd.conf 5 , +.Xr blacklistctl 8 , +.Xr ipf 8 , +.Xr ipfw 8 , +.Xr pfctl 8 , +.Xr syslogd 8 +.Sh NOTES +The +.Nm +daemon has been renamed to +.Xr blocklistd 8 . +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/bin/blacklistd.conf.5 b/contrib/blocklist/bin/blacklistd.conf.5 new file mode 100644 index 000000000000..e775d30e7e8e --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.conf.5 @@ -0,0 +1,242 @@ +.\" $NetBSD: blocklistd.conf.5,v 1.7 2025/02/11 17:47:05 christos Exp $ +.\" +.\" Copyright (c) 2015, 2025 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 5, 2025 +.Dt BLACKLISTD.CONF 5 +.Os +.Sh NAME +.Nm blacklistd.conf +.Nd configuration file format for blacklistd +.Sh DESCRIPTION +The +.Nm +file contains configuration entries for +.Xr blacklistd 8 +in a fashion similar to +.Xr inetd.conf 5 . +Only one entry per line is permitted. +Every entry must have all fields populated. +Each field can be separated by a tab or a space. +Comments are denoted by a +.Dq # +at the beginning of a line. +.Pp +There are two kinds of configuration lines, +.Va [local] +and +.Va [remote] . +By default, configuration lines are +.Va [local] , +i.e. the address specified refers to the addresses on the local machine. +To switch to between +.Va [local] +and +.Va [remote] +configuration lines you can specify the stanzas: +.Dq [local] +and +.Dq [remote] . +.Pp +On +.Va [local] +and +.Va [remote] +lines +.Dq * +means use the default, or wildcard match. +In addition, for +.Va [remote] +lines +.Dq = +means use the values from the matched +.Va [local] +configuration line. +.Pp +The first four fields, +.Va location , +.Va type , +.Va proto , +and +.Va owner +are used to match the +.Va [local] +or +.Va [remote] +addresses, whereas the last 3 fields +.Va name , +.Va nfail , +and +.Va disable +are used to modify the filtering action. +.Pp +The first field denotes the +.Va location +as an address, mask, and port. +The syntax for the +.Va location +is: +.Bd -literal -offset indent + [
|][/][:] +.Ed +.Pp +The +.Dv address +can be an IPv4 address in numeric format, an IPv6 address +in numeric format and enclosed by square brackets, or an interface name. +Mask modifiers are not allowed on interfaces because interfaces +can have multiple addresses in different protocols where the mask has a +different size. +.Pp +The +.Dv mask +is always numeric, but the +.Dv port +can be either numeric or symbolic. +.Pp +The second field is the socket +.Va type : +.Dv stream , +.Dv dgram , +or numeric. +The third field is the +.Va protocol : +.Dv tcp , +.Dv udp , +.Dv tcp6 , +.Dv udp6 , +or numeric. +The fourth field is the effective user +.Va ( owner ) +of the daemon process reporting the event, +either as a username or a userid. +.Pp +The rest of the fields control the behavior of the filter. +.Pp +The +.Va name +field, is the name of the packet filter rule to be used. +If the +.Va name +starts with a hyphen +.Pq Dq - , +then the default rulename is prepended to the given name. +If the +.Dv name +contains a +.Dq / , +the remaining portion of the name is interpreted as the mask to be +applied to the address specified in the rule, causing a single rule violation to +block the entire subnet for the configured prefix. +.Pp +The +.Va nfail +field contains the number of failed attempts before access is blocked, +defaulting to +.Dq * +meaning never, and the last field +.Va duration +specifies the amount of time since the last access that the blocking +rule should be active, defaulting to +.Dq * +meaning forever. +The default unit for +.Va duration +is seconds, but one can specify suffixes for different units, such as +.Dq m +for minutes +.Dq h +for hours and +.Dq d +for days. +.Pp +Matching is done first by checking the +.Va [local] +rules individually, in the order of the most specific to the least specific. +If a match is found, then the matching +.Va [remote] +rules are applied. +The +.Va name , +.Va nfail , +and +.Va duration +fields can be altered by the +.Va [remote] +rule that matched. +.Pp +The +.Va [remote] +rules can be used for allowing specific addresses, changing the mask +size (via +.Va name ) , +the rule that the packet filter uses (also via +.Va name ) , +the number of failed attempts (via +.Va nfail ) , +or the duration to block (via +.Va duration ) . +.Sh FILES +.Bl -tag -width /etc/blacklistd.conf -compact +.It Pa /etc/blacklistd.conf +Configuration file. +.El +.Sh EXAMPLES +.Bd -literal -offset 8n +# Block ssh, after 3 attempts for 6 hours on the bnx0 interface +[local] +# location type proto owner name nfail duration +bnx0:ssh * * * * 3 6h +[remote] +# Never block 1.2.3.4 +1.2.3.4:ssh * * * * * * +# Never block the example IPv6 subnet either +[2001:db8::]/32:ssh * * * * * * +# For addresses coming from 8.8.0.0/16 block whole /24 networks instead +# individual hosts, but keep the rest of the blocking parameters the same. +8.8.0.0/16:ssh * * * /24 = = +.Ed +.Sh SEE ALSO +.Xr blacklistctl 8 , +.Xr blacklistd 8 +.Sh NOTES +The +.Nm +file has been renamed to +.Xr blocklistd.conf 8 . +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/lib/libblacklist.3 b/contrib/blocklist/lib/libblacklist.3 new file mode 100644 index 000000000000..5bc093c38f79 --- /dev/null +++ b/contrib/blocklist/lib/libblacklist.3 @@ -0,0 +1,188 @@ +.\" $NetBSD: libblocklist.3,v 1.7 2025/02/05 20:14:30 christos Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 5, 2025 +.Dt LIBBLACKLIST 3 +.Os +.Sh NAME +.Nm blacklist_open , +.Nm blacklist_open2 , +.Nm blacklist_close , +.Nm blacklist_r , +.Nm blacklist , +.Nm blacklist_sa , +.Nm blacklist_sa_r +.Nd Blacklistd notification library +.Sh LIBRARY +.Lb libblacklist +.Sh SYNOPSIS +.In blacklist.h +.Ft struct blacklist * +.Fn blacklist_open "void" +.Ft struct blacklist * +.Fn blacklist_open2 "void (*logger)(int, struct syslog_data *, va_list)" +.Ft void +.Fn blacklist_close "struct blacklist *cookie" +.Ft int +.Fn blacklist "int action" "int fd" "const char *msg" +.Ft int +.Fn blacklist_r "struct blacklist *cookie" "int action" "int fd" "const char *msg" +.Ft int +.Fn blacklist_sa "int action" "int fd" "const struct sockaddr *sa" "socklen_t salen" "const char *msg" +.Ft int +.Fn blacklist_sa_r "struct blacklist *cookie" "int action" "int fd" "const struct sockaddr *sa" "socklen_t salen" "const char *msg" +.Sh DESCRIPTION +These functions can be used by daemons to notify +.Xr blacklistd 8 +about successful and failed remote connections so that blacklistd can +block or release port access to prevent Denial of Service attacks. +.Pp +The function +.Fn blacklist_open +creates the necessary state to communicate with +.Xr blacklistd 8 +and returns a pointer to it, or +.Dv NULL +on failure. +.Pp +The function +.Fn blacklist_open2 +is similar to +.Fn blacklist_open +but allows a +.Fa logger +to be specified. +If the +.Fa logger +is +.Dv NULL , +then no logging is performed. +.Pp +The +.Fn blacklist_close +function frees all memory and resources used. +.Pp +The +.Fn blacklist +function sends a message to +.Xr blacklistd 8 , +with an integer +.Ar action +argument specifying the type of notification, +a file descriptor +.Ar fd +specifying the accepted file descriptor connected to the client, +and an optional message in the +.Ar msg +argument. +.Pp +The +.Ar action +parameter can take these values: +.Bl -tag -width ".Dv BLACKLIST_ABUSIVE_BEHAVIOR" +.It Dv BLACKLIST_AUTH_FAIL +There was an unsuccessful authentication attempt. +.It Dv BLACKLIST_AUTH_OK +A user successfully authenticated. +.It Dv BLACKLIST_ABUSIVE_BEHAVIOR +The sending daemon has detected abusive behavior +from the remote system. +The remote address should +be blocked as soon as possible. +.It Dv BLACKLIST_BAD_USER +The sending daemon has determined the username +presented for authentication is invalid. +The +.Xr blacklistd 8 +daemon compares the username to a configured list of forbidden +usernames and +blocks the address immediately if a forbidden username matches. +(The +.Dv BLACKLIST_BAD_USER +support is not currently available.) +.El +.Pp +The +.Fn blacklist_r +function is more efficient because it keeps the blacklist state around. +.Pp +The +.Fn blacklist_sa +and +.Fn blacklist_sa_r +functions can be used with unconnected sockets, where +.Xr getpeername 2 +will not work, the server will pass the peer name in the message. +.Pp +In all cases the file descriptor passed in the +.Fa fd +argument must be pointing to a valid socket so that +.Xr blacklistd 8 +can establish ownership of the local endpoint +using +.Xr getsockname 2 . +.Pp +By default, +.Xr syslogd 8 +is used for message logging. +The internal +.Fn bl_create +function can be used to create the required internal +state and specify a custom logging function. +.Sh RETURN VALUES +The function +.Fn blacklist_open +returns a cookie on success and +.Dv NULL +on failure setting +.Dv errno +to an appropriate value. +.Pp +The functions +.Fn blacklist , +.Fn blacklist_sa , +and +.Fn blacklist_sa_r +return +.Dv 0 +on success and +.Dv \-1 +on failure setting +.Dv errno +to an appropriate value. +.Sh NOTES +The +.Lb libblacklist +has been renamed to +.Xr libblocklist 3 . +.Sh SEE ALSO +.Xr blacklistd.conf 5 , +.Xr blacklistd 8 +.Sh AUTHORS +.An Christos Zoulas diff --git a/lib/libblacklist/Makefile b/lib/libblacklist/Makefile index 07c770883eab..cac023d69bb7 100644 --- a/lib/libblacklist/Makefile +++ b/lib/libblacklist/Makefile @@ -18,14 +18,13 @@ CFLAGS+=-I${BLOCKLIST_DIR}/include -I${BLOCKLIST_DIR}/port \ SRCS= old_bl.c blacklist.c vsyslog_r.c INCS= blacklist.h -MAN= libblocklist.3 - -MLINKS+=libblocklist.3 libblacklist.3 \ - libblocklist.3 blacklist_open.3 \ - libblocklist.3 blacklist_close.3 \ - libblocklist.3 blacklist.3 \ - libblocklist.3 blacklist_r.3 \ - libblocklist.3 blacklist_sa.3 \ - libblocklist.3 blacklist_sa_r.3 +MAN= libblacklist.3 + +MLINKS= libblacklist.3 blacklist_open.3 \ + libblacklist.3 blacklist_close.3 \ + libblacklist.3 blacklist.3 \ + libblacklist.3 blacklist_r.3 \ + libblacklist.3 blacklist_sa.3 \ + libblacklist.3 blacklist_sa_r.3 .include diff --git a/usr.sbin/blacklistctl/Makefile b/usr.sbin/blacklistctl/Makefile index 8a01f52926a7..41c5f44b072b 100644 --- a/usr.sbin/blacklistctl/Makefile +++ b/usr.sbin/blacklistctl/Makefile @@ -6,8 +6,7 @@ PACKAGE= blocklist PROG= blacklistctl SRCS= blacklistctl.c conf.c state.c support.c old_internal.c \ sockaddr_snprintf.c pidfile.c strtoi.c popenve.c -MAN= blocklistctl.8 -MLINKS= blocklistctl.8 blacklistctl.8 +MAN= blacklistctl.8 LDFLAGS+=-L${LIBBLACKLISTDIR} LIBADD+= blocklist util diff --git a/usr.sbin/blacklistd/Makefile b/usr.sbin/blacklistd/Makefile index b4ba4ca2f9ad..490b12d46968 100644 --- a/usr.sbin/blacklistd/Makefile +++ b/usr.sbin/blacklistd/Makefile @@ -7,9 +7,7 @@ CONFS= blacklistd.conf PROG= blacklistd SRCS= blacklistd.c conf.c run.c state.c support.c old_internal.c \ sockaddr_snprintf.c pidfile.c strtoi.c popenve.c vsyslog_r.c -MAN= blocklistd.8 blocklistd.conf.5 -MLINKS= blocklistd.8 blacklistd.8 \ - blocklistd.conf.5 blacklistd.conf.5 *** 4 LINES SKIPPED *** From nobody Tue Oct 14 00:57:36 2025 X-Original-To: dev-commits-src-branches@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 4clwmd1smFz6CfDm; Tue, 14 Oct 2025 00:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmd0DKgz3vZG; Tue, 14 Oct 2025 00:57:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P5DDcIRhGQ2Ly9XBqud0zqvWY2nYfEeAtC2XwcDa1nI=; b=VTNfPVflNRAce7XVDPp7MIOVNYi6zMEyBWcBUFtGLeo1YzIOFlTzINaChxqhg3Tr0FH1cJ wYJ3Jk+hLCxLHvoeAyiGCbmtgjxe9Olxlo0UtHdEsl/7iPJC3sHzhVtXgCrVuog5tiuSJU J76lKTkg+9AxlF6UrXciOiAwwhFd7UyA/WJkLMfDOWL9nx0qxIZsM0pHCuNdfP768B3V1w zUdrt9FeMuOrCIUKspX8ZE78J5rS0MsEh6wcQW0vOgvasaZvTLCtz3W7xkHQt+igb3Fq1g gvbxfnfcmynKJIcelr4SSb38LnaMGg4w/VTUISqxWEsvc56gCHtyI6Ugj01iBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P5DDcIRhGQ2Ly9XBqud0zqvWY2nYfEeAtC2XwcDa1nI=; b=QiWhJ5ixgZELi5dyuv26Tuo3Z+r3g8yG5/PsMtr8glOaf7DZAL38KYTN6Q1ApfzIbKqvBd fSuSerpJV+twC1nIxHVqVsgv3Z4zSFpSVrMFgnP2IR+9tZXjjhERHZfNt67WYdf3aKn6m1 bfTuHI54UCWH8BRYe+TxY9TThc4eMYDRf69PgNrHIZi1BzvWXq1Bdz8OQdkqN5ns0Kl26c KsoR+hObSLJCcaPEvMXcZ3RGDaw43znjVYOv5cNdq42FLZ1kozOtZBb1DLo1ds1y9rrDLf 3SfTVU4xgNcmneSwmxFNmtWrYI2daSytCajOpDPGpAoxszUPzGqOt+qReaqXNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403457; a=rsa-sha256; cv=none; b=Y7xw8NCahc85o4n5ysptsxeZxsJMj5u1JuPdq4tMOVGFoVwNyW+vGCi0Znt/IXuM8cqoLb guk+QIntNOC40B/AbeYI5ETjhtGhqQ/DTxeg0AvcXTxwAQbixwLPFlvtRpg7pN9hRF/ZPm b6yBLuc7+QONh/7QSOOEuWOkTlTf5Q4gvyiOidkWcpTkXkCDVCCkiy14+asFMjPAuV3T1A 0KHZ8Xb4DajRxqi/SKAYt/hPzYuRm389y+Epnjyy4mm+1MSIAm6RYYcZQrPG018umxVSz4 /0sPKEnkfj6WYZYHK/mgXeeoH4fnO192/fZ8iy7SOrXvsWz37KYwXM+AnM99yg== 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 4clwmc6mM2zVC2; Tue, 14 Oct 2025 00:57:36 +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 59E0vaw5021720; Tue, 14 Oct 2025 00:57:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vaGm021717; Tue, 14 Oct 2025 00:57:36 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:36 GMT Message-Id: <202510140057.59E0vaGm021717@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: f22ca25404e7 - stable/15 - blocklist: Add an UPDATING entry List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f22ca25404e795aa08efc35d8cdbb5b44304650f Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=f22ca25404e795aa08efc35d8cdbb5b44304650f commit f22ca25404e795aa08efc35d8cdbb5b44304650f Author: Jose Luis Duran AuthorDate: 2025-10-13 14:35:12 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:54:25 +0000 blocklist: Add an UPDATING entry Add an UPDATING entry about the renaming of blocklist. Approved by: emaste (mentor) Fixes: 7238317403b9 ("blocklist: Rename blacklist to blocklist") MFC after: 1 day (cherry picked from commit ffa8165009365ff93050626d880f2d1d6aacc31a) --- UPDATING | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/UPDATING b/UPDATING index 6e893f07df61..4b14159ceb4a 100644 --- a/UPDATING +++ b/UPDATING @@ -17,6 +17,12 @@ and/or ports. can install the ftp/freebsd-ftpd port. pkgbase users should remove the orphaned FreeBSD-ftpd package. +20251012: + Blacklist has been renamed upstream to Blocklist. If you have it + configured, rename all configuration files, firewall anchors or + sentinel files to reflect the new nomenclature. Old setups will + continue to work emitting a warning. + 20251002: Audio-related utilities including mixer(8) and virtual_oss(8) have moved to the new FreeBSD-sound package. If you have set-optional or From nobody Tue Oct 14 00:57:38 2025 X-Original-To: dev-commits-src-branches@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 4clwmf43Rhz6Cf9k; Tue, 14 Oct 2025 00:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwmf2VnYz3vRb; Tue, 14 Oct 2025 00:57:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JGEQoKkB73RdaKSDJTd+9ErgoCQzaw7U4uLp8BVxsHU=; b=oTkl3fWD6+/8o3Wo0IOOgnCRRoQzCBqHJ2m3Gz4kGApMpYHAi78J43d4KvHWZX2Boi2nGL loJ9Z/6MH4hUeTdij3sZb0xyGuoexuTMLSz3uvZAL4y1BWuwhgMxbyw6GdqmU+lSxkrM3y kTjsZhrE9mpTzFeZ6wtL8vZ00ZnVGtftS5vk/K73NFx6NlUptGzFvoxTTgqARqNOeFM7To DC8vSgY8wvBN4Mv+63DlFBwEJSX4FupnWkbv8UcG+WetLPzpClzWrs/v3UBUd7FS6ubbKk rODTxShdfEuEo/oGGz0QZQklh4B1EPUCl724mN7plOnK2PkHO8a5/lZEzIBRnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JGEQoKkB73RdaKSDJTd+9ErgoCQzaw7U4uLp8BVxsHU=; b=w+fv3uKs483t7+85aPqXF0b+J6bBbAzSdt03hVKexKm9XgXO8A5XEZZ8LJBpAyUMq/TV2W fM3crkY1XfBZUCjEwaYvk/7/m0UBfkvarbsx8HHdhGdJFsBmkRdFHrjRx3gbPXzk7uaqVr +KHM5bIPBNNYNNBhEbr5ZBCDCVRtwtieDTAhl1Oxxq0/YCb5PEnZDXVV6IAgph4M5lT+Ow atogiTuFr7gPtMas/DjFx4Bq7HpjPtpXjkeWsjY9bQVWM4M1ZKAesOJKWhRlDbI4XwfYDj tTjpNtIZQil7mOR2az5SmyNhMDADPpkfQaPFCxN4mImePp4uueR+VZxI2Nhi9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403458; a=rsa-sha256; cv=none; b=ReYyDnM3YzBG5g18R/TLNWSZAAD6iK9qcBNQ1XY3KTjYxTM9Xy2U7wChiOBWJy/SNUmSjE quSr0gUZxyMnb0HnEqJoN5gEkGrrCvsE+xb2aIDWzW2MzGiRBYzJuoTfuW97BJBBVhdqgY ebu8WuJjxdIX162frjUY3808Fa8Oek0/4HfAKNRB3gVVTv1CxO3hCTPFajaHdBTcSIB9EU 6PAF+caZNU7qtibVSZsX4yYcMeafdmkGMYGDAytft07kKqGVakX9P19DxyEAuz1efGqNT2 RZXALnBIgjuc/VJNUghypi9Xxnh0dC6YiNboVlzFAPIzSXcAFG04ApRaZFlFIg== 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 4clwmf0zhrzVC3; Tue, 14 Oct 2025 00:57: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 59E0vcBb021757; Tue, 14 Oct 2025 00:57:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0vcPC021754; Tue, 14 Oct 2025 00:57:38 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:57:38 GMT Message-Id: <202510140057.59E0vcPC021754@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 06889e177e7e - stable/15 - UPDATING: Fix typo objump should be objdump List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 06889e177e7e218a18a475e4747bc046078ef3c1 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=06889e177e7e218a18a475e4747bc046078ef3c1 commit 06889e177e7e218a18a475e4747bc046078ef3c1 Author: Jose Luis Duran AuthorDate: 2025-10-13 14:50:30 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:54:38 +0000 UPDATING: Fix typo objump should be objdump Approved by: emaste (mentor) Fixes: 86edb11e7491 ("Always install llvm-objdump as objdump") MFC after: 1 day (cherry picked from commit 376508ef2f794a57606a791166f1ce7f20d3ccaf) --- UPDATING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index 4b14159ceb4a..26c2355de1ac 100644 --- a/UPDATING +++ b/UPDATING @@ -690,7 +690,7 @@ and/or ports. Bump _FreeBSD_version to 1400078 to be able to detect this change. 20221212: - llvm-objump is now always installed as objdump. Previously there was + llvm-objdump is now always installed as objdump. Previously there was no /usr/bin/objdump unless the WITH_LLVM_BINUTILS knob was used. Some LLVM objdump options have a different output format compared to From nobody Tue Oct 14 00:58:02 2025 X-Original-To: dev-commits-src-branches@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 4clwn70DZNz6Cf5r; Tue, 14 Oct 2025 00:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clwn65m6gz3wSk; Tue, 14 Oct 2025 00:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k1ylPWkUjhgxD7CVq38lt2jMm8v8XdQYU9cQ0MVt2k0=; b=HXoh608hBTmNTVXqqjF9MP4jOUIvbr+tUJeAR1drKbX38MnOj8bqj10UY+pHG916WdaiU6 qzTtZ1//cH0Xog7T3rMd27jCdFdoXGxc59EbUhRZ6JDIMM0ubEqx9PGLfxAWJzNHlCNSMU lQVoAcNCwaV/R/Ng+tJC2ztF7+gYQNoqwOdKEq7zimhWGYOri2bGbGNJ1h9STm9suBKbPV DW28IJue3vpfT53t3GVuKnrwjL57540LksKcTnhRC1KDc1F8Dy/5/OQaQ8yP9pJj1dKh4Z 9hLv1NFyaPnrjsh1K9oBxWe4GgI5GawgKyWIAKia9sCu8vCbp+YhMF8qOojVhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760403482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k1ylPWkUjhgxD7CVq38lt2jMm8v8XdQYU9cQ0MVt2k0=; b=C68BKXwTqS4aP/SRGGnhF4u7pbMpwvFrL95MrZ3UEnDhjdLUZi4yv2hgP0Lux6AlqiR1Or 2xP8Z7bPZbbyZjgvjcmQSH0pAAICRdQD2MRlUUH+ocpSYrCBKphTvfMIT8LpyOC8DA5RWc /PR01N7vuzSCutcWM9cqA0Jrqlqgw4uF5S2vb8QdcjnKaciYl2tFcxgzmo7pcxGXnuUfVg Hp+y4DhMPTyXyMhxVrsSr6Cww/Jqk4BfQOdd2Hifi4dq8hXw/tYve1WJY7/tjre8deP01u y9/SRBCbusMe5CSM0oDliqPt5EKJaJcHzt1a1zxz9yOCPO8+kmOdDrPq5I4iCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760403482; a=rsa-sha256; cv=none; b=XDfrTsZxzgNex27aDpgyk8ylL2EhqhaUiOFJ0onDYtQNC4LJ6YG97I6xU7NCJi/blMGQx7 cyQnlSrdo2xHhnUI3gXWemxRbLGcYWj6uB+dOC/+ovqfwVdYXcTKGqjHngj0IRJ8+njw+m wTxFM2IfY7beeGYwedvCjyxr9vUQb1zNYzuhlBGQUzt421EVhfreDYN1FhHIRo3oJ8IHmh PLk0yhAjbsPsHfEyzdmkngozB5IucB4i9CUJjhUGjsi/4kDUTDPMFD3dvMe0e0aFw+fybm dm4aQoYCXGJEpXkL4OjmVTer1GMyFnR2vCB7Urd/XRIO+nliSheANc4+rUDUfw== 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 4clwn65FsWzVVN; Tue, 14 Oct 2025 00:58: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 59E0w2bk022044; Tue, 14 Oct 2025 00:58:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E0w2be022041; Tue, 14 Oct 2025 00:58:02 GMT (envelope-from git) Date: Tue, 14 Oct 2025 00:58:02 GMT Message-Id: <202510140058.59E0w2be022041@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 83a1049fcfb6 - stable/14 - UPDATING: Fix typo objump should be objdump List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 83a1049fcfb6cb5a1fd6cbeb4a193c41cd59ae54 Auto-Submitted: auto-generated The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=83a1049fcfb6cb5a1fd6cbeb4a193c41cd59ae54 commit 83a1049fcfb6cb5a1fd6cbeb4a193c41cd59ae54 Author: Jose Luis Duran AuthorDate: 2025-10-13 14:50:30 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-14 00:55:49 +0000 UPDATING: Fix typo objump should be objdump Approved by: emaste (mentor) Fixes: 86edb11e7491 ("Always install llvm-objdump as objdump") MFC after: 1 day (cherry picked from commit 376508ef2f794a57606a791166f1ce7f20d3ccaf) --- UPDATING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index 644e17fc55be..5396fa8204c1 100644 --- a/UPDATING +++ b/UPDATING @@ -291,7 +291,7 @@ and/or ports. Bump _FreeBSD_version to 1400078 to be able to detect this change. 20221212: - llvm-objump is now always installed as objdump. Previously there was + llvm-objdump is now always installed as objdump. Previously there was no /usr/bin/objdump unless the WITH_LLVM_BINUTILS knob was used. Some LLVM objdump options have a different output format compared to From nobody Tue Oct 14 02:47:53 2025 X-Original-To: dev-commits-src-branches@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 4clzCt0JGTz6CnW7; Tue, 14 Oct 2025 02:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clzCs5ByRz3CNJ; Tue, 14 Oct 2025 02:47:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fPCt5xbRRvSNhNfWeQqYn1pmJaVhPKkKaDkzSqXfsa4=; b=VfFxHdWnttUfRfp2mL4ozGxBcUQ2cSzNSBynWR0Zqf9hR6+i/yKGTogvP9paSTvqMjme3p 9PRsGHlK4X11x+vajGb6A310rxXBcTbB2icKwLLNv6cAlAhJkU9m1ES5pz6hLaupZSSals sWBBL0ya75YhIxCm/YtvXnM6onkC4ef8Z14xlRkoYZuv13JIA/KyLagLhLy5DZl2UBpCbN syuxGaYboDiA3lO85gAc3i53rcjB8jmC51XwrwrWZqkpX4+noyvSqBCjRxiY3TEE2sBUeY /+pXdypM/6DZ2XKtoTYynviTAwW7jQT+O8W1IHFl32S3YsHZxKxd6sR98j+FuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fPCt5xbRRvSNhNfWeQqYn1pmJaVhPKkKaDkzSqXfsa4=; b=YyDdKijs9zTygxgPpXXGGYrimeGYpHL+LZPdLQqSiCkJJ4dAqOLljwK2GAxS948H/QHe2s 19pB3zQlfPvJhEuxz6UuKCy0DevSK4nkg/ELjG03LRTM2rr/Pc71/Bdda9uG/rnV6J7c1H nYO0y9IrBszT8qnwesKk9uLSx4RInfxUL5UMkh0r9XatAqy8GdDPxSGjS5oVWQ3cDKb89s fSu3Nn+RWFhg3ikmeRleaW0ZfS5oP6+if6sTw06CjghwuCZTFhvF4g2QcvwdjFahJkEsqV pLBR7FzqO2/NYFFKxA4CzUqDJYTczdt3P5xQvVzs8LLPSiesLvUO08xffr0ZMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760410073; a=rsa-sha256; cv=none; b=OLPhKjU8LkitWSuozUtbeU8luQ/wJZVj6jUXaKRhbS8kepU3CrxpG3/iXuCsDh3WvQxQ4u cL928s76lHuxmmSZKpxG8rFzJNBvMI9ObdIVTuzLH6Iwch5xDddoRpQjtUUBu2HstP1tLk r2zW7qb2hF0ZoAMWE4U+vLRjVTEkpIV/Qytc4k8/i0NUCdTldDd3SL1q98iOnvi1NR2y1C 6ozVxESt+31w4lCPx1DCzIjzyj0X5iltvtL0gycr/9aKicJWzjcqUXsUxfs8z6kzw2x2bJ zGitKn1XdysnNrRrZ1lpUE+h0E2AGLT86DCyiq1k5j/tIPBCcaxTPOLfvqwHUg== 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 4clzCs4JN4zb2p; Tue, 14 Oct 2025 02:47: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 59E2lr2k029485; Tue, 14 Oct 2025 02:47:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E2lr3j029482; Tue, 14 Oct 2025 02:47:53 GMT (envelope-from git) Date: Tue, 14 Oct 2025 02:47:53 GMT Message-Id: <202510140247.59E2lr3j029482@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: e01a58798f58 - releng/15.0 - mit-krb5.pc: Add missing -lkrb5profile List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: e01a58798f586c955b28db5dfe7bbddcb849f2bf Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=e01a58798f586c955b28db5dfe7bbddcb849f2bf commit e01a58798f586c955b28db5dfe7bbddcb849f2bf Author: Igor Ostapenko AuthorDate: 2025-10-11 10:20:44 +0000 Commit: Colin Percival CommitDate: 2025-10-14 02:47:32 +0000 mit-krb5.pc: Add missing -lkrb5profile Fixes the ports that prefer static linking: https://reviews.freebsd.org/D49277 Approved by: re (cperciva) Reviewed by: ivy, dch, cy Sponsored by: SkunkWerks, GmbH Differential Revision: https://reviews.freebsd.org/D52910 (cherry picked from commit 2d9fd2c573c318754e3f36d2549e0e57ce199d60) (cherry picked from commit 771ee17c88106fb07b5035a2f36c36ccafe94edd) --- crypto/krb5/src/build-tools/mit-krb5.pc.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crypto/krb5/src/build-tools/mit-krb5.pc.in b/crypto/krb5/src/build-tools/mit-krb5.pc.in index fdc557785ad4..dca1654c8c9d 100644 --- a/crypto/krb5/src/build-tools/mit-krb5.pc.in +++ b/crypto/krb5/src/build-tools/mit-krb5.pc.in @@ -12,4 +12,4 @@ Description: An implementation of Kerberos network authentication Version: @KRB5_VERSION@ Cflags: -I${includedir} Libs: -L${libdir} -lkrb5 -lk5crypto @COM_ERR_LIB@ -Libs.private: -lkrb5support +Libs.private: -lkrb5support -lkrb5profile From nobody Tue Oct 14 02:47:54 2025 X-Original-To: dev-commits-src-branches@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 4clzCt60Hwz6CnTM; Tue, 14 Oct 2025 02:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clzCt51FJz3CKj; Tue, 14 Oct 2025 02:47:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zl9KeYjSt6h5gkqcL/lHib5iDsR3UTvXurn/m4BBKHI=; b=n/NUt+jamFr5fZBt8EZkERKITVHUaycpEjnfDs2BNkznaYsu6Y1UI6pgDXvjQbJSbv9WRs n76kwDlNQoSH51ZSF43C//i2Lx3q1apreTc1uoKzp7yvHmccJDg28FIaF204ohBy3G5dnK FgA14fOrpqNjIy6bHavd1N3DmwAt/JHxZMKmOrdf7tQtH7GSmErVD3LXdpnOf+uJYoe0N6 R3BueD4T/By/B60FPbU5fk1tK0jg5Emary6Qd+CeNypnZgGSKVIobYU4FuX+3+3lHH+B0t nt9pgJCogSMVQHE4U6bAAQrlUpHSuLb9Q3mRmUJYZmQOSQxZahcRHD49+9EwrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zl9KeYjSt6h5gkqcL/lHib5iDsR3UTvXurn/m4BBKHI=; b=eM1V39+t/CcTMODR2wsVHx6AKsgTn51vD1QsOCbhKr0dzA4YPshZ37n1S+2hCnxfAv2PF3 GDBJMStv3nmgMrtHwdfNE1QCeZhppnvgseIcZlpjN2rukQmu0QDnMNEib71Z0YogmiDteZ ICXio0cqvw2tjc47IP7po0PNGKIOQ0RRs/9uOtW2xA8O2e8ZyI4FyZ7vHiGI2/fQDe0gEa BIMAHf+9dmlpHigslAAO8zJhof3dCGulL1YcTCXoXCEi3PGVpIZWTdAyhWzrzeAG28/Wql ZwKLgPfwzxZ4sWhwa0Ua7q20Upz6h6TNx8hbvFkhUjvRcWqeF9MgscoravI4rQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760410074; a=rsa-sha256; cv=none; b=w4Pq5IqtFgTjtP7pWajgjZEaxwR+pdM4V/CPGsBiYSO7YHdN4ltGSUr0bM4pa/diaSnvlS v38BL77oJLRY/Id6/ddE3l4bWNLhpR4Ux9oLknMIOR0oZuT3onUaUcf+tW+KS+CnoCjx+F g/ek/gAMrEVsBCBoPZhLrJoFH8vGVp4JlBtPMl/NdkxeOkiZwVMzM7PkocJG1hn7IMuDUS plQUW4erdoNHnNiD0dVVlDrKTBMFtrzS1R/ik9Klc8xJW3MJKOiDam6T9fBzzyb4FKjPrR Hts9ibpck8ncfLxWs7oRNqxjfnVPBN+cjb7t2c7DjRRy9XAOyZ+CDTaWrsQTUQ== 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 4clzCt4d5VzZgF; Tue, 14 Oct 2025 02:47:54 +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 59E2lsY3029520; Tue, 14 Oct 2025 02:47:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E2lsEe029517; Tue, 14 Oct 2025 02:47:54 GMT (envelope-from git) Date: Tue, 14 Oct 2025 02:47:54 GMT Message-Id: <202510140247.59E2lsEe029517@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: f01adba1e2ac - releng/15.0 - Makefile.inc1: Build source packages before sets List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: f01adba1e2acb05798238e11971b4b1535231fdb Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f01adba1e2acb05798238e11971b4b1535231fdb commit f01adba1e2acb05798238e11971b4b1535231fdb Author: Lexi Winter AuthorDate: 2025-10-13 18:30:31 +0000 Commit: Colin Percival CommitDate: 2025-10-14 02:47:36 +0000 Makefile.inc1: Build source packages before sets To build set-src, we first need to build the source packages. Add a .ORDER to ensure this happens. Otherwise, in a parallel build, sets might be built before the src-* packages have finished building, and set-src will be mysteriously missing. Approved by: re (cperciva) MFC after: 3 seconds Reported by: cperciva Actually diagnosed by: jrtc27 One-line fix by: ivy Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D53076 (cherry picked from commit ea5685ba79fc9309698ef72cf48bc1f0c91ad3dd) (cherry picked from commit 3b5ec539beefb82dd3210f51c0e2e0759b20dad8) --- Makefile.inc1 | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.inc1 b/Makefile.inc1 index cd3e3f007c3b..d530ca4e9584 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2107,6 +2107,7 @@ create-packages-world: _pkgbootstrap _repodir .PHONY .ORDER: create-packages-world create-packages-sets .ORDER: create-packages-kernel create-packages-sets +.ORDER: create-packages-source create-packages-sets create-packages-sets: _pkgbootstrap _repodir .PHONY ${_+_}@cd ${.CURDIR}; \ ${MAKE} -f Makefile.inc1 \ From nobody Tue Oct 14 02:54:13 2025 X-Original-To: dev-commits-src-branches@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 4clzM93Bb7z6Cp4N; Tue, 14 Oct 2025 02:54: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clzM92bnwz3FDY; Tue, 14 Oct 2025 02:54:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7mq4e/xCUM1pu8TYX+ABqblyPJpY1Wfcw9XrvwR2FjY=; b=aAOkL0sLVG97uYD5t7jlNBVuGpebz/5MoChRKw5dshQzWJ+l1AKMsUDqVtoi+QS0MWZ6Ru oClGM4ZTAEYuouaG36alS2v2lgeNSbEUQS6u6HTed6nYTvKD2/vMKw9M35VpZsIYlQZhHZ qUMfK0vWPF6osKy74h8i02Qh0FPuI/sd8tnfHqttKzJg/ZTcAs28yBaYEiYS/eIQkUysS5 Ay9oodqYl0a31R9TRSOwUD/I4QXwCri8Qta3o2yr+LAudBzwsBxeTNSIS7cOsSIdW4IZwB hdt6tSo5+OIK80gVl76Tdtz1IvwLKADxFqBXWmsDPvYXZVJr9hSOdXL7X/FeqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7mq4e/xCUM1pu8TYX+ABqblyPJpY1Wfcw9XrvwR2FjY=; b=Jw0vOUoVW/qmEYFYgM195KZDeVLR1/Ip5wJ+n0weSntSkm11BhsKnRZ7k8lS4Ndbs2vCQo fcQoyAXKzJ86U2D0KVgEMWZNR9oyVdw37CEmgzJnAzMX0XAp26Fwr/GFEZDleu/LScu2XL /BBK0iY+xdKSvcTX+pYCfQxlQ6hbYTs/92u/8jH6DdfhUq5qRnF/xaHcB9t06b+eWdA5zi TjU3mY9amFJadkWYPUZ8jLTYNxOmN64Q1bGpp+0scGXn7HxtEr+s/QR1zvbIipKM2e1ME1 gcYRIWDL+ejSeziWKaqeVcYZx7E8thGhd0O082IQRePavJrC1079CmL0N36jOQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760410453; a=rsa-sha256; cv=none; b=FJLsGxr7BKiFWM/BbJE8xKbG15a2VUc7yg7ntgYJTG7noImDJZZADWdv3JpMEr0+SjDKMA 8jsXRfst6zANn8r8r/ZcIQnHjmQycRYjWU8AB3fuxAFKXRJSVqI7GKPUy/10JQIoq3/II9 RDJ84NmPxjNJuc953NOFl5sy0IhPCyE6LawnGt02eQ9nZwiXpKUEIFvAhg59OesLVvEDA4 8vqL4++IcUwP5akAihsKdjMl+afzEqxXD6jWbB4PNS4pCyrzhUJ9khvby64z0qFrMJ+eDT Mt5GXkCOKaJMCdV3/JIpOm9YTfjar42EZQld5x6J2uU4hgtQw8c/XnmMkcpr4g== 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 4clzM929jrzbNQ; Tue, 14 Oct 2025 02:54: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 59E2sDmS046918; Tue, 14 Oct 2025 02:54:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E2sD15046915; Tue, 14 Oct 2025 02:54:13 GMT (envelope-from git) Date: Tue, 14 Oct 2025 02:54:13 GMT Message-Id: <202510140254.59E2sD15046915@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: e9010214e9be - stable/15 - EC2: Fix additional files on small+builder AMIs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: e9010214e9bebbe6155c9f720551008a785b692c Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=e9010214e9bebbe6155c9f720551008a785b692c commit e9010214e9bebbe6155c9f720551008a785b692c Author: Colin Percival AuthorDate: 2025-10-11 17:35:51 +0000 Commit: Colin Percival CommitDate: 2025-10-14 02:54:01 +0000 EC2: Fix additional files on small+builder AMIs The file /usr/local/etc/ssl/cert.pem is not present on "small" and "builder" AMIs, so we don't need to add it to METALOG. Fixes: 2b0ffc0ee48c ("EC2: metalog_add missing files from packages") MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva (cherry picked from commit 8a7ac88aa3991e8c2c19007ac0c36a92fc94bc2d) --- release/tools/ec2-builder.conf | 1 - release/tools/ec2-small.conf | 1 - 2 files changed, 2 deletions(-) diff --git a/release/tools/ec2-builder.conf b/release/tools/ec2-builder.conf index bcea69331be5..3b0344f9eb9a 100644 --- a/release/tools/ec2-builder.conf +++ b/release/tools/ec2-builder.conf @@ -68,7 +68,6 @@ vm_extra_pre_umount() { # Add files from packages which weren't recorded in metalog metalog_add_data ./usr/local/etc/dhclient.conf - metalog_add_data ./usr/local/etc/ssl/cert.pem return 0 } diff --git a/release/tools/ec2-small.conf b/release/tools/ec2-small.conf index f12afec75a4f..6564a59c2cf6 100644 --- a/release/tools/ec2-small.conf +++ b/release/tools/ec2-small.conf @@ -51,7 +51,6 @@ vm_extra_pre_umount() { # Add files from packages which weren't recorded in metalog metalog_add_data ./usr/local/etc/dhclient.conf - metalog_add_data ./usr/local/etc/ssl/cert.pem return 0 } From nobody Tue Oct 14 02:55:18 2025 X-Original-To: dev-commits-src-branches@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 4clzNQ27yjz6Cp8F; Tue, 14 Oct 2025 02:55: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4clzNQ1Rkcz3FSh; Tue, 14 Oct 2025 02:55:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TpneU0DiTnKrGdTtRHK7/OyEMcdn0h/XshPsxncBmRE=; b=alKmCGgoeQDyfSnBbYphYCZyfWPKrfD7u4GDPJFwKieatOSM/COh15QolL3JF2UBUrppyZ ofaOg9DsuBfUxQB/s28qdBEY8rbTKZSCeZqnpA45Qpv9rUhxEYhXl5rBM0rEvLM7a5W9zp pDmQGlfgYZrO0IBhUKEYDSI+n7raSeOHXu7PSuipXzwVgldrXZShS1mamn13Mh8cnMf/yC cPPyyD2rFMwtAee26o4iJ9EQBNgmc9AYDoXnaMnvHmGHFWEJkhSLu8dG8CFtobP+BwOmTR A/zR5e51PuId1dGVK0RfSg26fRWBJ2QFL/vJFx9cPdZyuEF9oo6/+YDJLc+vmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760410518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TpneU0DiTnKrGdTtRHK7/OyEMcdn0h/XshPsxncBmRE=; b=GyEkpngndYTPNuqaFJdzjbZvr4dvHV5LuYM5zypl/gGvvIhS9ECL77qcJzjwzn1KsqdRFW yPWL+FhUYzbpEs0ZNXPSXyvvpltRs41dT0oafCXh5ExLjLG2NgeXzwqX1eDoNnTFB9CqJ1 8xkRiDiH5UETsayIDaktOR4zmVmaDQFdTh4GSH3OWROS7Ex5G1+DbS4DIcVs8Mr4f5HwkG 6NUTSEBnokqIr40I/CpWSetNYOJTiyET7B7U9hD4o8q/+doMxWOKhT1aaj+UoiemgNTiSd fhkij8tQJnkPAZ1DXSE4KPosKJz3Nkfbss3/LWqjzVQIx6qmwMjqJ2GaRD9z2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760410518; a=rsa-sha256; cv=none; b=R1ZtRucDVnFS/UiYSld0aQqjqjBY9AZH0Ejgb2FuPl7iqSQwByWGVklimuuWO98NA9N4ec /Jnmijrq0nKm/Ft9xTg4eNZ4vFCbHbE5W5PvtGm5rtLenXcV32grmrz8q3lLtd3UxnmMLl 6niip2l4kl3J/o8UV+jw9vtDSQ5fByvcTxal4fDtZc8YqtXr9xfRyXcycEahvC9YD7Az4Y jgriKHDVN5eZutkroUuGRYX3+KnZYzB4RHfCo5torosKlsPPe2nRc9sVQjHYzwN6L/DQCm 1jmdBcrTPpmpYjV0GAJw3JXsdQiBbNJFjcv+Hl7DaMaIlmgoHR/0OotTN52fzg== 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 4clzNQ0z32zb5q; Tue, 14 Oct 2025 02:55: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 59E2tIwi047368; Tue, 14 Oct 2025 02:55:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E2tIJB047365; Tue, 14 Oct 2025 02:55:18 GMT (envelope-from git) Date: Tue, 14 Oct 2025 02:55:18 GMT Message-Id: <202510140255.59E2tIJB047365@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: 6908a3580702 - releng/15.0 - EC2: Fix additional files on small+builder AMIs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 6908a3580702a446d8420bb93ed95530a98c936b Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=6908a3580702a446d8420bb93ed95530a98c936b commit 6908a3580702a446d8420bb93ed95530a98c936b Author: Colin Percival AuthorDate: 2025-10-11 17:35:51 +0000 Commit: Colin Percival CommitDate: 2025-10-14 02:54:24 +0000 EC2: Fix additional files on small+builder AMIs The file /usr/local/etc/ssl/cert.pem is not present on "small" and "builder" AMIs, so we don't need to add it to METALOG. Approved by: re (cperciva) Fixes: 2b0ffc0ee48c ("EC2: metalog_add missing files from packages") MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva (cherry picked from commit 8a7ac88aa3991e8c2c19007ac0c36a92fc94bc2d) (cherry picked from commit e9010214e9bebbe6155c9f720551008a785b692c) --- release/tools/ec2-builder.conf | 1 - release/tools/ec2-small.conf | 1 - 2 files changed, 2 deletions(-) diff --git a/release/tools/ec2-builder.conf b/release/tools/ec2-builder.conf index bcea69331be5..3b0344f9eb9a 100644 --- a/release/tools/ec2-builder.conf +++ b/release/tools/ec2-builder.conf @@ -68,7 +68,6 @@ vm_extra_pre_umount() { # Add files from packages which weren't recorded in metalog metalog_add_data ./usr/local/etc/dhclient.conf - metalog_add_data ./usr/local/etc/ssl/cert.pem return 0 } diff --git a/release/tools/ec2-small.conf b/release/tools/ec2-small.conf index f12afec75a4f..6564a59c2cf6 100644 --- a/release/tools/ec2-small.conf +++ b/release/tools/ec2-small.conf @@ -51,7 +51,6 @@ vm_extra_pre_umount() { # Add files from packages which weren't recorded in metalog metalog_add_data ./usr/local/etc/dhclient.conf - metalog_add_data ./usr/local/etc/ssl/cert.pem return 0 } From nobody Tue Oct 14 04:36:55 2025 X-Original-To: dev-commits-src-branches@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 4cm1dh0sXBz6BhXR; Tue, 14 Oct 2025 04:36: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dh096pz3Prt; Tue, 14 Oct 2025 04:36:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416616; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2NejBrp/i+0KQCe833rd7eesn6RvAlIkz1mUahdu4Us=; b=IyedO3wWBxmd++0ieCYYU/uhD/W840JM0ZFaYe0c2zSvNiynHwi+qnVb1YncIvI5znMhQ5 bgoquCF2VQcY6BE2hLu8R0dgTRirWSRLMAsL1rNMvYOwTb5n6NoR0nuNFiHMh6YYTgWh92 oFTERu1IsNZbOmOXjRua0XAo0cla3qdX1UFhge8d+D+IfBIFMXdADVWR6cSJ9kp444ybrJ l3BYnMJ4DYxhmfkpDSJ4BuBaHgD9Ca/zN9GMGbORX14nFrQCrvr8f3kwvfsuuU7ocFBnf+ Dexn7J8o5u9Hy1LeL9aILkz7Xxtyaf8lmwVhv492M5FrqaoJ85EOBE0AOO9k1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416616; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2NejBrp/i+0KQCe833rd7eesn6RvAlIkz1mUahdu4Us=; b=qwilgZSLtf5kqZZt57Z3zRwM0OlV1osoQ1HPTavD1ND6k/QiYFSPKP3WiBMOAewpz2e8AF Mb5WuvDrg/kSPsud4gGJ68hCU61dGdlsINAVM1Aa7nI7iZFzcu30rx59yn0qIpOi1oaxu2 Q80blBYqG0MvY3XfsNpWtlYJTK93Xso/pK6S5Kn0J30PyTlxOZgCYnCX2Qn3CR6dpcN1eX oCgo3kbvNWLiJuGJUrMytuMqqPbfqZkVwC4wiSoCtsazBISJDOsOOHtr8LdYMZsJLoyrzl JjJ7dpZv4WYp3l7+ww5Kbetx4Vo4mbPIBQPx853WXk9kKSB7klX8dBnbO5HQvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416616; a=rsa-sha256; cv=none; b=lrhB5s/Fji7b19tIVkOhwNQcCmtGYrck2JeyavmCuSGyqBmNXGU4mC7cVMujsBOp/mDfl/ X9libIzeUGD0/1KSSPMhY8i3tEeEESWoswEUjC8sSivWMURBSIZmKCHIEjDvr6/+BSvwHJ rsh4SzDW0xZPZcuzVllBGlptq7R2LJz8K05WHTnY58a+L7wI656czTryv6ZfLcOwzidvtl jNXKsH+LPn2u3X73dJ8qnrRWKXRdX6pUBN5jWG/YBP2TK+GRSbqQRL0I8vUr+I5IUcPsp2 54GinPN5Nl4FOuau3cj0WBCSOmrw/ml6Oig90LpmT2Smr4iwpuJhIg1wtF+kGw== 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 4cm1dg6F3LzdcZ; Tue, 14 Oct 2025 04:36: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 59E4atkU038055; Tue, 14 Oct 2025 04:36:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4atsV038052; Tue, 14 Oct 2025 04:36:55 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:36:55 GMT Message-Id: <202510140436.59E4atsV038052@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: e2dcc9fc4d2e - releng/15.0 - MFV: Import blocklist 2025-04-28 (8aa81bf) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: e2dcc9fc4d2e6722190cf15bc5bf5dc2e9132ab5 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=e2dcc9fc4d2e6722190cf15bc5bf5dc2e9132ab5 commit e2dcc9fc4d2e6722190cf15bc5bf5dc2e9132ab5 Author: Jose Luis Duran AuthorDate: 2025-10-12 17:01:03 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:12 +0000 MFV: Import blocklist 2025-04-28 (8aa81bf) Merge commit '70f30afd4e9af5a51ee324d97e4d8c5f2124ec15' Breaking changes: - Upstream commit 24932b6 ("blocklistd: log the conf file line number with bad protocol errors") breaks backward database compatibility. An error will be displayed: Key size mismatch 296 != 288 A new and compatible database, with the new name, will be created when the service starts (committed separately). - Upstream commit ddf6d71 ("implement BLOCKLIST_BAD_USER as a "one-count" failure") introduced BLOCKLIST_BAD_USER with a one-count failure mechanism. BLOCKLIST_AUTH_FAIL was implemented with a two-count failure mechanism. Since we utilize BLOCKLIST_AUTH_FAIL, the number of failed attempts now doubles towards the maximum limit (nfails). This commit will be reverted separately. Changes: https://github.com/zoulasc/blocklist/compare/7093cd9...8aa81bf Approved by: re (cperciva) Approved by: emaste (mentor) MFC after: 2 days Differential Revision: https://reviews.freebsd.org/D52869 (cherry picked from commit 48e64ca13d4f36795ac718911b805e3e9a726f1b) (cherry picked from commit 1a08326c6f503db5f0fb9201cdf55379bbe576e8) --- contrib/blocklist/Makefile | 2 +- contrib/blocklist/Makefile.inc | 7 +- contrib/blocklist/README | 52 ++-- contrib/blocklist/TODO | 49 +++- contrib/blocklist/bin/Makefile | 12 +- .../bin/{blacklistctl.8 => blocklistctl.8} | 69 +++++- .../bin/{blacklistctl.c => blocklistctl.c} | 9 +- .../blocklist/bin/{blacklistd.8 => blocklistd.8} | 75 +++--- .../blocklist/bin/{blacklistd.c => blocklistd.c} | 48 ++-- .../bin/{blacklistd.conf.5 => blocklistd.conf.5} | 82 ++++--- contrib/blocklist/bin/conf.c | 200 ++++++++++++--- contrib/blocklist/bin/conf.h | 3 +- contrib/blocklist/bin/internal.c | 8 +- contrib/blocklist/bin/internal.h | 8 +- contrib/blocklist/bin/run.c | 9 +- contrib/blocklist/bin/run.h | 2 +- contrib/blocklist/bin/state.c | 6 +- contrib/blocklist/bin/state.h | 2 +- contrib/blocklist/bin/support.c | 11 +- contrib/blocklist/bin/support.h | 7 +- contrib/blocklist/diff/ftpd.diff | 12 +- contrib/blocklist/diff/named.diff | 12 +- contrib/blocklist/diff/postfix.diff | 98 ++++++++ contrib/blocklist/diff/proftpd.diff | 20 +- contrib/blocklist/diff/ssh.diff | 14 +- contrib/blocklist/etc/Makefile | 10 +- .../etc/{blacklistd.conf => blocklistd.conf} | 7 +- contrib/blocklist/etc/ipf.conf | 45 ++++ contrib/blocklist/etc/npf.conf | 4 +- contrib/blocklist/etc/rc.d/Makefile | 4 +- .../blocklist/etc/rc.d/{blacklistd => blocklistd} | 20 +- contrib/blocklist/include/Makefile | 4 +- contrib/blocklist/include/bl.h | 11 +- .../blocklist/include/{blacklist.h => blocklist.h} | 44 ++-- contrib/blocklist/lib/Makefile | 20 +- contrib/blocklist/lib/bl.c | 112 +++++---- contrib/blocklist/lib/{blacklist.c => blocklist.c} | 49 ++-- .../lib/{libblacklist.3 => libblocklist.3} | 124 +++++----- contrib/blocklist/lib/shlib_version | 2 +- contrib/blocklist/libexec/Makefile | 4 +- contrib/blocklist/libexec/blacklistd-helper | 134 ---------- contrib/blocklist/libexec/blocklistd-helper | 272 +++++++++++++++++++++ contrib/blocklist/port/Makefile.am | 42 ++-- contrib/blocklist/port/_strtoi.h | 2 +- contrib/blocklist/port/configure.ac | 12 +- contrib/blocklist/port/fgetln.c | 2 +- contrib/blocklist/port/fparseln.c | 6 +- contrib/blocklist/port/pidfile.c | 6 +- contrib/blocklist/port/popenve.c | 6 +- contrib/blocklist/port/port.h | 32 ++- contrib/blocklist/port/sockaddr_snprintf.c | 6 +- contrib/blocklist/port/strlcat.c | 7 +- contrib/blocklist/port/strlcpy.c | 7 +- contrib/blocklist/port/strtoi.c | 6 +- contrib/blocklist/port/vsyslog_r.c | 13 + contrib/blocklist/test/Makefile | 2 +- contrib/blocklist/test/cltest.c | 6 +- contrib/blocklist/test/srvtest.c | 42 +++- 58 files changed, 1293 insertions(+), 587 deletions(-) diff --git a/contrib/blocklist/Makefile b/contrib/blocklist/Makefile index da4411d0ca75..899746d01431 100644 --- a/contrib/blocklist/Makefile +++ b/contrib/blocklist/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.2 2015/01/22 17:49:41 christos Exp $ +# $NetBSD: Makefile,v 1.1.1.1 2020/06/15 01:52:52 christos Exp $ SUBDIR = lib .WAIT include bin etc libexec diff --git a/contrib/blocklist/Makefile.inc b/contrib/blocklist/Makefile.inc index 85c82783cd35..b22d4a801240 100644 --- a/contrib/blocklist/Makefile.inc +++ b/contrib/blocklist/Makefile.inc @@ -1,10 +1,11 @@ -# $NetBSD: Makefile.inc,v 1.3 2015/01/23 03:57:22 christos Exp $ +# $NetBSD: Makefile.inc,v 1.3 2025/02/11 17:48:30 christos Exp $ WARNS=6 .if !defined(LIB) -LDADD+= -lblacklist -DPADD+= ${LIBBLACKLIST} +LDADD+= -lblocklist +DPADD+= ${LIBBLOCKLIST} .endif CPPFLAGS+= -I${.CURDIR}/../include CPPFLAGS+=-DHAVE_STRUCT_SOCKADDR_SA_LEN -DHAVE_UTIL_H -DHAVE_DB_H +CPPFLAGS+=-DHAVE_SYS_CDEFS_H diff --git a/contrib/blocklist/README b/contrib/blocklist/README index 7da3317a77fe..4b34138e01ec 100644 --- a/contrib/blocklist/README +++ b/contrib/blocklist/README @@ -1,21 +1,21 @@ -# $NetBSD: README,v 1.8 2017/04/13 17:59:34 christos Exp $ +# $NetBSD: README,v 1.3 2024/02/09 00:53:30 wiz Exp $ This package contains library that can be used by network daemons to communicate with a packet filter via a daemon to enforce opening and closing ports dynamically based on policy. -The interface to the packet filter is in libexec/blacklistd-helper +The interface to the packet filter is in libexec/blocklistd-helper (this is currently designed for npf) and the configuration file -(inspired from inetd.conf) is in etc/blacklistd.conf. +(inspired from inetd.conf) is in etc/blocklistd.conf. -On NetBSD you can find an example npf.conf and blacklistd.conf in -/usr/share/examples/blacklistd; you need to adjust the interface +On NetBSD you can find an example npf.conf and blocklistd.conf in +/usr/share/examples/blocklistd; you need to adjust the interface in npf.conf and copy both files to /etc; then you just enable -blacklistd=YES in /etc/rc.conf, start it up, and you are all set. +blocklistd=YES in /etc/rc.conf, start it up, and you are all set. -There is also a startup file in etc/rc.d/blacklistd +There is also a startup file in etc/rc.d/blocklistd -Patches to various daemons to add blacklisting capabilitiers are in the +Patches to various daemons to add blocklisting capabilities are in the "diff" directory: - OpenSSH: diff/ssh.diff [tcp socket example] - Bind: diff/named.diff [both tcp and udp] @@ -23,21 +23,21 @@ Patches to various daemons to add blacklisting capabilitiers are in the These patches have been applied to NetBSD-current. -The network daemon (for example sshd) communicates to blacklistd, via -a unix socket like syslog. The library calls are simple and everything +The network daemon (for example sshd) communicates to blocklistd, via +a Unix socket like syslog. The library calls are simple and everything is handled by the library. In the simplest form the only thing the daemon needs to do is to call: - blacklist(action, acceptedfd, message); + blocklist(action, acceptedfd, message); Where: - action = 0 -> successful login clear blacklist state + action = 0 -> successful login clear blocklist state 1 -> failed login, add to the failed count acceptedfd -> the file descriptor where the server is connected to the remote client. It is used to determine the listening socket, and the remote address. This allows any program to - contact the blacklist daemon, since the verification + contact the blocklist daemon, since the verification if the program has access to the listening socket is done by virtue that the port number is retrieved from the kernel. @@ -46,13 +46,13 @@ Where: Unfortunately there is no way to get information about the "peer" from a udp socket, because there is no connection and that information is kept with the server. In that case the daemon can provide the -peer information to blacklistd via: +peer information to blocklistd via: - blacklist_sa(action, acceptedfd, sockaddr, sockaddr_len, message); + blocklist_sa(action, acceptedfd, sockaddr, sockaddr_len, message); The configuration file contains entries of the form: -# Blacklist rule +# Blocklist rule # host/Port type protocol owner name nfail disable 192.168.1.1:ssh stream tcp * -int 10 1m 8.8.8.8:ssh stream tcp * -ext 6 60m @@ -60,18 +60,18 @@ ssh stream tcp6 * * 6 60m http stream tcp * * 6 60m Here note that owner is * because the connection is done from the -child ssh socket which runs with user privs. We treat ipv4 connections +child ssh socket which runs with user privs. We treat IPv4 connections differently by maintaining two different rules one for the external interface and one from the internal We also register for both tcp and tcp6 since those are different listening sockets and addresses; -we don't bother with ipv6 and separate rules. We use nfail = 6, +we don't bother with IPv6 and separate rules. We use nfail = 6, because ssh allows 3 password attempts per connection, and this will let us have 2 connections before blocking. Finally we block for an hour; we could block forever too by specifying * in the duration column. -blacklistd and the library use syslog(3) to report errors. The -blacklist filter state is persisted automatically in /var/db/blacklistd.db +blocklistd and the library use syslog(3) to report errors. The +blocklist filter state is persisted automatically in /var/db/blocklistd.db so that if the daemon is restarted, it remembers what connections is currently handling. To start from a fresh state (if you restart npf too for example), you can use -f. To watch the daemon at work, @@ -80,27 +80,27 @@ you can use -d. The current control file is designed for npf, and it uses the dynamic rule feature. You need to create a dynamic rule in your /etc/npf.conf on the group referring to the interface you want to block -called blacklistd as follows: +called blocklistd as follows: ext_if=bge0 int_if=sk0 group "external" on $ext_if { ... - ruleset "blacklistd-ext" - ruleset "blacklistd" + ruleset "blocklistd-ext" + ruleset "blocklistd" ... } group "internal" on $int_if { ... - ruleset "blacklistd-int" + ruleset "blocklistd-int" ... } -You can use 'blacklistctl dump -a' to list all the current entries +You can use 'blocklistctl dump -a' to list all the current entries in the database; the ones that have nfail / where urrent ->= otal, should have an id assosiated with them; this means that +>= otal, should have an id associated with them; this means that there is a packet filter rule added for that entry. For npf, you can examine the packet filter dynamic rule entries using 'npfctl rule list'. The number of current entries can exceed diff --git a/contrib/blocklist/TODO b/contrib/blocklist/TODO index 9925020d54bb..d67111bd5139 100644 --- a/contrib/blocklist/TODO +++ b/contrib/blocklist/TODO @@ -1,4 +1,4 @@ -# $NetBSD: TODO,v 1.7 2015/01/23 21:34:01 christos Exp $ +# $NetBSD: TODO,v 1.3 2025/02/05 20:22:26 christos Exp $ - don't poll periodically, find the next timeout - use the socket also for commands? Or separate socket? @@ -17,5 +17,48 @@ -n block unblock -- do we need an api in blacklistctl to perform maintenance -- fix the blacklistctl output to be more user friendly +- do we need an api in blocklistctl to perform maintenance +- fix the blocklistctl output to be more user friendly + +- figure out some way to do distributed operation securely (perhaps with + a helper daemon that authenticates local sockets and then communicates + local DB changes to the central server over a secure channel -- + perhaps blocklistd-helper can have a back-end that can send updates to + a central server) + +- add "blocklistd -l" to enable filter logging on all rules by default + +- add some new options in the config file + + "/all" - block both TCP and UDP (on the proto field?) + + "/log" - enable filter logging (if not the default) (on the name field?) + "/nolog"- disable filter logging (if not the default) (on the name field?) + + The latter two probably require a new parameter for blocklistd-helper. + +- "blocklistd -f" should (also?) be a blocklistctl function!?!?! + +- if blocklistd was started with '-r' then a SIGHUP should also do a + "control flush $rulename" and then re-add all the filter rules? + +- should/could /etc/rc.conf.d/ipfilter be created with the following? + + reload_postcmd=blocklistd_reload + start_postcmd=blocklistd_start + stop_precmd=blocklistd_stop + blocklistd_reload () + { + /etc/rc.d/blocklistd reload # IFF SIGHUP does flush/re-add + # /etc/rc.d/blocklistd restart + } + blocklistd_stop () + { + /etc/rc.d/blocklistd stop + } + blocklistd_start () + { + /etc/rc.d/blocklistd start + } + + or is there a better way? diff --git a/contrib/blocklist/bin/Makefile b/contrib/blocklist/bin/Makefile index 280c72fd3af1..1856e2524f3c 100644 --- a/contrib/blocklist/bin/Makefile +++ b/contrib/blocklist/bin/Makefile @@ -1,12 +1,12 @@ -# $NetBSD: Makefile,v 1.11 2015/01/27 19:40:36 christos Exp $ +# $NetBSD: Makefile,v 1.1.1.1 2020/06/15 01:52:52 christos Exp $ BINDIR=/sbin -PROGS=blacklistd blacklistctl -MAN.blacklistd=blacklistd.8 blacklistd.conf.5 -MAN.blacklistctl=blacklistctl.8 -SRCS.blacklistd = blacklistd.c conf.c run.c state.c support.c internal.c -SRCS.blacklistctl = blacklistctl.c conf.c state.c support.c internal.c +PROGS=blocklistd blocklistctl +MAN.blocklistd=blocklistd.8 blocklistd.conf.5 +MAN.blocklistctl=blocklistctl.8 +SRCS.blocklistd = blocklistd.c conf.c run.c state.c support.c internal.c +SRCS.blocklistctl = blocklistctl.c conf.c state.c support.c internal.c DBG=-g LDADD+=-lutil diff --git a/contrib/blocklist/bin/blacklistctl.8 b/contrib/blocklist/bin/blocklistctl.8 similarity index 59% rename from contrib/blocklist/bin/blacklistctl.8 rename to contrib/blocklist/bin/blocklistctl.8 index 7c6521117745..a98c16374f19 100644 --- a/contrib/blocklist/bin/blacklistctl.8 +++ b/contrib/blocklist/bin/blocklistctl.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: blacklistctl.8,v 1.9 2016/06/08 12:48:37 wiz Exp $ +.\" $NetBSD: blocklistctl.8,v 1.4 2025/02/07 01:35:38 kre Exp $ .\" .\" Copyright (c) 2015 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,27 +27,43 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd June 7, 2016 -.Dt BLACKLISTCTL 8 +.Dd January 27, 2025 +.Dt BLOCKLISTCTL 8 .Os .Sh NAME -.Nm blacklistctl -.Nd display and change the state of blacklistd +.Nm blocklistctl +.Nd display and change the state of the blocklistd database .Sh SYNOPSIS .Nm .Cm dump .Op Fl abdnrw +.Op Fl D Ar dbname .Sh DESCRIPTION .Nm -is a program used to display the state of -.Xr blacklistd 8 +is a program used to display and change the state of the +.Xr blocklistd 8 +database. +The following sub-commands are supported: +.Ss dump .Pp -The following options are available: +The following options are available for the +.Cm dump +sub-command: .Bl -tag -width indent .It Fl a -Show all database entries, by default it shows only the embryonic ones. +Show all database entries, by default it shows only the active ones. +Inactive entries will be shown with a last-access (or, with +.Fl r , +the remaining) time of +.Ql never . .It Fl b Show only the blocked entries. +.It Fl D Ar dbname +Specify the location of the +.Ic blocklistd +database file to use. +The default is +.Pa /var/db/blocklistd.db . .It Fl d Increase debugging level. .It Fl n @@ -59,18 +75,47 @@ Normally the width of addresses is good for IPv4, the .Fl w flag, makes the display wide enough for IPv6 addresses. .El +.Pp +The output of the +.Cm dump +sub-command consists of a header (unless +.Fl n +was given) and one line for each record in the database, where each line +has the following columns: +.Bl -tag -width indent +.It Ql address/ma:port +The remote address, mask, and local port number of the client connection +associated with the database entry. +.It Ql id +column will show the identifier for the packet filter rule associated +with the database entry, though this may only be the word +.Ql OK +for packet filters which do not creat a unique identifier for each rule. +.It Ql nfail +The number of +.Em failures +reported for the client on the noted port, as well as the number of +failures allowed before blocking (or, with +.Fl a , +an asterisk +.Aq * ) +.It So last access Sc | So remaining time Sc +The last time a the client was reported as attempting access, or, with +.Fl r , +the time remaining before the rule blocking the client will be removed. +.El .Sh SEE ALSO -.Xr blacklistd 8 +.Xr blocklistd 8 .Sh NOTES Sometimes the reported number of failed attempts can exceed the number of attempts that -.Xr blacklistd 8 +.Xr blocklistd 8 is configured to block. This can happen either because the rule has been removed manually, or because there were more attempts in flight while the rule block was being added. This condition is normal; in that case -.Xr blacklistd 8 +.Xr blocklistd 8 will first attempt to remove the existing rule, and then it will re-add it to make sure that there is only one rule active. .Sh HISTORY diff --git a/contrib/blocklist/bin/blacklistctl.c b/contrib/blocklist/bin/blocklistctl.c similarity index 94% rename from contrib/blocklist/bin/blacklistctl.c rename to contrib/blocklist/bin/blocklistctl.c index 89b72921caf5..8c75e0430c61 100644 --- a/contrib/blocklist/bin/blacklistctl.c +++ b/contrib/blocklist/bin/blocklistctl.c @@ -1,4 +1,4 @@ -/* $NetBSD: blacklistctl.c,v 1.23 2018/05/24 19:21:01 christos Exp $ */ +/* $NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $ */ /*- * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -32,8 +32,10 @@ #include "config.h" #endif +#ifdef HAVE_SYS_CDEFS_H #include -__RCSID("$NetBSD: blacklistctl.c,v 1.23 2018/05/24 19:21:01 christos Exp $"); +#endif +__RCSID("$NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $"); #include #include @@ -63,7 +65,8 @@ usage(int c) warnx("Missing/unknown command"); else if (c != '?') warnx("Unknown option `%c'", (char)c); - fprintf(stderr, "Usage: %s dump [-abdnrw]\n", getprogname()); + fprintf(stderr, + "Usage: %s dump [-abdnrw] [-D dbname]\n", getprogname()); exit(EXIT_FAILURE); } diff --git a/contrib/blocklist/bin/blacklistd.8 b/contrib/blocklist/bin/blocklistd.8 similarity index 85% rename from contrib/blocklist/bin/blacklistd.8 rename to contrib/blocklist/bin/blocklistd.8 index 82e1f15f61c9..e0b9fb482cbd 100644 --- a/contrib/blocklist/bin/blacklistd.8 +++ b/contrib/blocklist/bin/blocklistd.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: blacklistd.8,v 1.23 2020/04/21 13:57:12 christos Exp $ +.\" $NetBSD: blocklistd.8,v 1.8 2025/02/25 22:13:34 christos Exp $ .\" .\" Copyright (c) 2015 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,11 +27,11 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 21, 2020 -.Dt BLACKLISTD 8 +.Dd February 25, 2025 +.Dt BLOCKLISTD 8 .Os .Sh NAME -.Nm blacklistd +.Nm blocklistd .Nd block and release ports on demand to avoid DoS abuse .Sh SYNOPSIS .Nm @@ -53,22 +53,35 @@ for notifications from other daemons about successful or failed connection attempts. If no such file is specified, then it only listens to the socket path specified by -.Ar sockspath +.Ar sockpath or if that is not specified to -.Pa /var/run/blacklistd.sock . +.Pa /var/run/blocklistd.sock . Each notification contains an (action, port, protocol, address, owner) tuple that identifies the remote connection and the action. -This tuple is consulted against entries in -.Ar configfile -with syntax specified in -.Xr blacklistd.conf 5 . +This tuple is consulted against entries from the +.Ar configfile , +with the syntax specified in +.Xr blocklistd.conf 5 . If an entry is matched, a state entry is created for that tuple. Each entry contains a number of tries limit and a duration. .Pp +If +.Ar configfile +is a directory, or a directory exists with the same name as +.Ar configfile +with +.Qq .d +appended to it, each file in the directory will be read as configuration file. +If +.Ar configfile +exists as a file it will be processed before the contents of the +.Ar configfile Ns .d +directory if that also exists. +.Pp The way .Nm does configuration entry matching is by having the client side pass the -file descriptor associated with the connection the client wants to blacklist +file descriptor associated with the connection the client wants to blocklist as well as passing socket credentials. .Pp The file descriptor is used to retrieve information (address and port) @@ -116,7 +129,7 @@ specified by the arguments. The .Ar rulename argument can be set from the command line (default -.Dv blacklistd ) . +.Dv blocklistd ) . The script could print a numerical id to stdout as a handle for the rule that can be used later to remove that connection, but that is not required as all information to remove the rule is @@ -152,8 +165,8 @@ The following options are available: .It Fl C Ar controlprog Use .Ar controlprog -to communicate with the packet filter, usually -.Pa /usr/libexec/blacklistd-helper . +to communicate with the packet filter, instead of the default, which is +.Pa /usr/libexec/blocklistd-helper . The following arguments are passed to the control program: .Bl -tag -width protocol .It action @@ -161,7 +174,7 @@ The action to perform: .Dv add , .Dv rem , or -.Dv flush +.Dv flush ; to add, remove or flush a firewall rule. .It name The rule name. @@ -183,13 +196,17 @@ identifier of the rule to be removed. The add command is expected to return the rule identifier string to stdout. .El .It Fl c Ar configuration -The name of the configuration file to read, usually -.Pa /etc/blacklistd.conf . +The name of the configuration file to read. +The default when +.Fl c +is not given is +.Pa /etc/blocklistd.conf . .It Fl D Ar dbfile The Berkeley DB file where .Nm -stores its state, usually -.Pa /var/db/blacklistd.db . +stores its state. +It defaults to +.Pa /var/db/blocklistd.db . .It Fl d Normally, .Nm @@ -203,14 +220,14 @@ are deleted by invoking the control script as: .Bd -literal -offset indent control flush .Ed -.It Fl P Ar sockspathsfile +.It Fl P Ar sockpathsfile A file containing a list of pathnames, one per line that .Nm will create sockets to listen to. This is useful for chrooted environments. .It Fl R Ar rulename Specify the default rule name for the packet filter rules, usually -.Dv blacklistd . +.Dv blocklistd . .It Fl r Re-read the firewall rules from the internal database, then remove and re-add them. @@ -256,19 +273,21 @@ This signal tells to decrease the internal debugging level by 1. .El .Sh FILES -.Bl -tag -width /usr/libexec/blacklistd-helper -compact -.It Pa /usr/libexec/blacklistd-helper +.Bl -tag -width /usr/libexec/blocklistd-helper -compact +.It Pa /usr/libexec/blocklistd-helper Shell script invoked to interface with the packet filter. -.It Pa /etc/blacklistd.conf +.It Pa /etc/blocklistd.conf Configuration file. -.It Pa /var/db/blacklistd.db +.It Pa /var/db/blocklistd.db Database of current connection entries. -.It Pa /var/run/blacklistd.sock +.It Pa /var/run/blocklistd.sock Socket to receive connection notifications. .El .Sh SEE ALSO -.Xr blacklistd.conf 5 , -.Xr blacklistctl 8 , +.Xr blocklistd.conf 5 , +.Xr blocklistctl 8 , +.Xr ipf 8 , +.Xr ipfw 8 , .Xr pfctl 8 , .Xr syslogd 8 .Sh HISTORY diff --git a/contrib/blocklist/bin/blacklistd.c b/contrib/blocklist/bin/blocklistd.c similarity index 91% rename from contrib/blocklist/bin/blacklistd.c rename to contrib/blocklist/bin/blocklistd.c index 714abcbcaf0e..4846b507c8d1 100644 --- a/contrib/blocklist/bin/blacklistd.c +++ b/contrib/blocklist/bin/blocklistd.c @@ -1,4 +1,4 @@ -/* $NetBSD: blacklistd.c,v 1.38 2019/02/27 02:20:18 christos Exp $ */ +/* $NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $ */ /*- * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -31,8 +31,11 @@ #ifdef HAVE_CONFIG_H #include "config.h" #endif + +#ifdef HAVE_SYS_CDEFS_H #include -__RCSID("$NetBSD: blacklistd.c,v 1.38 2019/02/27 02:20:18 christos Exp $"); +#endif +__RCSID("$NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $"); #include #include @@ -175,6 +178,8 @@ process(bl_t bl) struct dbinfo dbi; struct timespec ts; + memset(&dbi, 0, sizeof(dbi)); + memset(&c, 0, sizeof(c)); if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); return; @@ -188,10 +193,11 @@ process(bl_t bl) if (getremoteaddress(bi, &rss, &rsl) == -1) goto out; - if (debug) { + if (debug || bi->bi_msg[0]) { sockaddr_snprintf(rbuf, sizeof(rbuf), "%a:%p", (void *)&rss); - (*lfun)(LOG_DEBUG, "processing type=%d fd=%d remote=%s msg=%s" - " uid=%lu gid=%lu", bi->bi_type, bi->bi_fd, rbuf, + (*lfun)(bi->bi_msg[0] ? LOG_INFO : LOG_DEBUG, + "processing type=%d fd=%d remote=%s msg=%s uid=%lu gid=%lu", + bi->bi_type, bi->bi_fd, rbuf, bi->bi_msg, (unsigned long)bi->bi_uid, (unsigned long)bi->bi_gid); } @@ -216,16 +222,19 @@ process(bl_t bl) switch (bi->bi_type) { case BL_ABUSE: /* - * If the application has signaled abusive behavior, - * set the number of fails to be one less than the - * configured limit. Fallthrough to the normal BL_ADD - * processing, which will increment the failure count - * to the threshhold, and block the abusive address. + * If the application has signaled abusive behavior, set the + * number of fails to be two less than the configured limit. + * Fall through to the normal BL_ADD and BL_BADUSER processing, + * which will increment the failure count to the threshhold, and + * block the abusive address. */ if (c.c_nfail != -1) - dbi.count = c.c_nfail - 1; + dbi.count = c.c_nfail - 2; /*FALLTHROUGH*/ case BL_ADD: + dbi.count++; /* will become += 2 */ + /*FALLTHROUGH*/ + case BL_BADUSER: dbi.count++; dbi.last = ts.tv_sec; if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { @@ -254,9 +263,6 @@ process(bl_t bl) dbi.count = 0; dbi.last = 0; break; - case BL_BADUSER: - /* ignore for now */ - break; default: (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); } @@ -334,7 +340,7 @@ static void addfd(struct pollfd **pfdp, bl_t **blp, size_t *nfd, size_t *maxfd, const char *path) { - bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog); + bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog_r); if (bl == NULL || !bl_isconnected(bl)) exit(EXIT_FAILURE); if (*nfd >= *maxfd) { @@ -395,15 +401,25 @@ rules_flush(void) static void rules_restore(void) { + DB *db; struct conf c; struct dbinfo dbi; unsigned int f; - for (f = 1; state_iterate(state, &c, &dbi, f) == 1; f = 0) { + db = state_open(dbfile, O_RDONLY, 0); + if (db == NULL) { + (*lfun)(LOG_ERR, "Can't open `%s' to restore state (%m)", + dbfile); + return; + } + for (f = 1; state_iterate(db, &c, &dbi, f) == 1; f = 0) { if (dbi.id[0] == '\0') continue; (void)run_change("add", &c, dbi.id, sizeof(dbi.id)); + state_put(state, &c, &dbi); } + state_close(db); + state_sync(state); } int diff --git a/contrib/blocklist/bin/blacklistd.conf.5 b/contrib/blocklist/bin/blocklistd.conf.5 similarity index 83% rename from contrib/blocklist/bin/blacklistd.conf.5 rename to contrib/blocklist/bin/blocklistd.conf.5 index 70036441eb4b..3a7dbfc07f58 100644 --- a/contrib/blocklist/bin/blacklistd.conf.5 +++ b/contrib/blocklist/bin/blocklistd.conf.5 @@ -1,6 +1,6 @@ -.\" $NetBSD: blacklistd.conf.5,v 1.9 2019/11/06 20:33:30 para Exp $ +.\" $NetBSD: blocklistd.conf.5,v 1.7 2025/02/11 17:47:05 christos Exp $ .\" -.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" Copyright (c) 2015, 2025 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation @@ -27,17 +27,17 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 18, 2020 -.Dt BLACKLISTD.CONF 5 +.Dd February 5, 2025 +.Dt BLOCKLISTD.CONF 5 .Os .Sh NAME -.Nm blacklistd.conf -.Nd configuration file format for blacklistd +.Nm blocklistd.conf +.Nd configuration file format for blocklistd .Sh DESCRIPTION The .Nm file contains configuration entries for -.Xr blacklistd 8 +.Xr blocklistd 8 in a fashion similar to .Xr inetd.conf 5 . Only one entry per line is permitted. @@ -48,34 +48,34 @@ Comments are denoted by a at the beginning of a line. .Pp There are two kinds of configuration lines, -.Va local +.Va [local] and -.Va remote . +.Va [remote] . By default, configuration lines are -.Va local , +.Va [local] , i.e. the address specified refers to the addresses on the local machine. To switch to between -.Va local +.Va [local] and -.Va remote +.Va [remote] configuration lines you can specify the stanzas: .Dq [local] and .Dq [remote] . .Pp On -.Va local +.Va [local] and -.Va remote +.Va [remote] lines .Dq * means use the default, or wildcard match. In addition, for -.Va remote +.Va [remote] lines .Dq = means use the values from the matched -.Va local +.Va [local] configuration line. .Pp The first four fields, @@ -85,9 +85,9 @@ The first four fields, and .Va owner are used to match the -.Va local +.Va [local] or -.Va remote +.Va [remote] addresses, whereas the last 3 fields .Va name , .Va nfail , @@ -110,8 +110,8 @@ The can be an IPv4 address in numeric format, an IPv6 address in numeric format and enclosed by square brackets, or an interface name. Mask modifiers are not allowed on interfaces because interfaces -can have multiple addresses in different protocols where the mask has a different -size. +can have multiple addresses in different protocols where the mask has a +different size. .Pp The .Dv mask @@ -143,8 +143,8 @@ The field, is the name of the packet filter rule to be used. If the .Va name -starts with a -.Dq - , +starts with a hyphen +.Pq Dq - , then the default rulename is prepended to the given name. If the .Dv name @@ -160,13 +160,13 @@ field contains the number of failed attempts before access is blocked, defaulting to .Dq * meaning never, and the last field -.Va disable +.Va duration specifies the amount of time since the last access that the blocking rule should be active, defaulting to .Dq * meaning forever. The default unit for -.Va disable +.Va duration is seconds, but one can specify suffixes for different units, such as .Dq m for minutes @@ -176,28 +176,34 @@ for hours and for days. .Pp Matching is done first by checking the -.Va local +.Va [local] rules individually, in the order of the most specific to the least specific. -If a match is found, then the -.Va remote +If a match is found, then the matching +.Va [remote] rules are applied. The .Va name , .Va nfail , and -.Va disable +.Va duration fields can be altered by the -.Va remote +.Va [remote] rule that matched. .Pp The -.Va remote +.Va [remote] rules can be used for allowing specific addresses, changing the mask -size, the rule that the packet filter uses, the number of failed attempts, -or the block duration. +size (via +.Va name ) , +the rule that the packet filter uses (also via +.Va name ) , +the number of failed attempts (via +.Va nfail ) , +or the duration to block (via +.Va duration ) . .Sh FILES -.Bl -tag -width /etc/blacklistd.conf -compact -.It Pa /etc/blacklistd.conf +.Bl -tag -width /etc/blocklistd.conf -compact +.It Pa /etc/blocklistd.conf Configuration file. .El .Sh EXAMPLES @@ -209,13 +215,15 @@ bnx0:ssh * * * * 3 6h [remote] # Never block 1.2.3.4 1.2.3.4:ssh * * * * * * -# For addresses coming from 8.8.0.0/16 block whole /24 networks instead of +# Never block the example IPv6 subnet either +[2001:db8::]/32:ssh * * * * * * +# For addresses coming from 8.8.0.0/16 block whole /24 networks instead # individual hosts, but keep the rest of the blocking parameters the same. 8.8.0.0/16:ssh * * * /24 = = .Ed .Sh SEE ALSO -.Xr blacklistctl 8 , -.Xr blacklistd 8 +.Xr blocklistctl 8 , +.Xr blocklistd 8 .Sh HISTORY *** 2792 LINES SKIPPED *** From nobody Tue Oct 14 04:36:56 2025 X-Original-To: dev-commits-src-branches@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 4cm1dj2zSRz6BhVQ; Tue, 14 Oct 2025 04:36: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dj0TtRz3PxW; Tue, 14 Oct 2025 04:36:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416617; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=73j5Fa3jd/Ip57tBiagQ8Eh/KX0mzHVs3MCFaYg+/Vg=; b=FjEPtFLnQG1emTE1oAlv2EILVurK6I1QvF2MYRN6wJo0SsNxopGHCkOhhV2C283JMWYHVA OLbXnkD6oNHLp6p69IKuWLMNXVfgH5HnblyX9z4ake94ovJxwQZm9IiOQaNiDottZGkIDB hKXuMmgmLl22+WTISKhpjZ99OoPXbHM1zV5CtgO3T26L01tw7HiY/RLk+SL3XbNF6/8ySr SVN5tWSxaWCRIsmAEjHwwEPgLHttcoDVGf1TxoZI+8MmekXH1m5ildihlIuU90F4fqEGE0 5wBGANZlq2aqfNafMPMSXMZtL9nJpihV+Ei+M9ik2edEqFGKHfIZTwsNsWcI0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416617; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=73j5Fa3jd/Ip57tBiagQ8Eh/KX0mzHVs3MCFaYg+/Vg=; b=dyOKMEwdgIWQVTC1Gx5bWyXkGDtffOHm7/P8fl5GOoc9HQVMtbBge1eb50EgvyJTgN7JfB cWJ5LwfUfScMAAmTeHHxO7RVE01b9o+mgd07xPpntcqNCFcR6RWALY2ENt76STKnipe17I 0r9cg3EBTC4iaZjkDNX4Sfi8m+K267jaoMmOSiIFNlIyutKUNwbkjNKmq0PGUxpPk5YgbC 78/eDKZJtn3JlivFussmcXovjOP9acuinPpeGPqU05FR0wDUHaiQrlMBrlvno52D8/BbDf KGoLyTUDf7tzb9IC7RgsCgJtjayiJKVkm/2nMP8Qk1E/KQ0lpYaNvphloDmzJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416617; a=rsa-sha256; cv=none; b=AA3KdmWrLchzOmyjwxV6z2Fi/65s5I1IdFI0nfin3YUAAAGdi5SraxNJtDFlyzzlamKGNA uko8/wj0bkRsgPsAyFd/8GtwcrZ22IbAsopCQQDRkC61sSIgobiBg3zfeit9zuW8+QiSIF O8/MQrHv3szztyCQLIxkO2BiSZFy796TSOQB9Dc0e203zx2YxWetPPxt2+BrH6xa+QSF53 7G8cqmnqWshburEOW1gAdTOHGfi/V+XyHisjN4GCAMIyI0bE/r8Nhr4HUn7YVz3Okyryra FhSlOc6+4vetsm5qbaFIxWeu2u+lOLnenBSDN8lJORS5Cm9TX9BNVHiqCxzO/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 4cm1dj05CpzdXY; Tue, 14 Oct 2025 04:36: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 59E4auJ9038090; Tue, 14 Oct 2025 04:36:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4auCd038087; Tue, 14 Oct 2025 04:36:56 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:36:56 GMT Message-Id: <202510140436.59E4auCd038087@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: 803c373304ff - releng/15.0 - blocklist: Revert upstream commit ddf6d71 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 803c373304ff607b84a17c8b020dccf3f558bead Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=803c373304ff607b84a17c8b020dccf3f558bead commit 803c373304ff607b84a17c8b020dccf3f558bead Author: Jose Luis Duran AuthorDate: 2025-10-11 14:15:03 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:31 +0000 blocklist: Revert upstream commit ddf6d71 Upstream commit ddf6d71 ("implement BLOCKLIST_BAD_USER as a "one-count" failure") introduced BLOCKLIST_BAD_USER with a one-count failure mechanism. BLOCKLIST_AUTH_FAIL was implemented with a two-count failure mechanism. Since we have been utilizing BLOCKLIST_AUTH_FAIL, the number of failed attempts now doubles towards the maximum limit (nfails), giving system administrators the impression that the number of failed authentication attempts is inaccurate. Revert this commit until a consensus has been reached. We do not want to introduce yet another breaking change with the renaming of the library. Approved by: re (cperciva) Approved by: emaste (mentor) MFC after: 2 days (cherry picked from commit 4d56eb007b18881becb2107f87bd2a7edca3e6bf) (cherry picked from commit a719ef67e8ed2cbae5f397d2a4680a02495b79ab) --- contrib/blocklist/bin/blocklistd.c | 18 +++++++++--------- contrib/blocklist/lib/libblocklist.3 | 32 +++++++++++++++++++------------- 2 files changed, 28 insertions(+), 22 deletions(-) diff --git a/contrib/blocklist/bin/blocklistd.c b/contrib/blocklist/bin/blocklistd.c index 4846b507c8d1..03a1dbbf056c 100644 --- a/contrib/blocklist/bin/blocklistd.c +++ b/contrib/blocklist/bin/blocklistd.c @@ -222,19 +222,16 @@ process(bl_t bl) switch (bi->bi_type) { case BL_ABUSE: /* - * If the application has signaled abusive behavior, set the - * number of fails to be two less than the configured limit. - * Fall through to the normal BL_ADD and BL_BADUSER processing, - * which will increment the failure count to the threshhold, and - * block the abusive address. + * If the application has signaled abusive behavior, + * set the number of fails to be one less than the + * configured limit. Fallthrough to the normal BL_ADD + * processing, which will increment the failure count + * to the threshhold, and block the abusive address. */ if (c.c_nfail != -1) - dbi.count = c.c_nfail - 2; + dbi.count = c.c_nfail - 1; /*FALLTHROUGH*/ case BL_ADD: - dbi.count++; /* will become += 2 */ - /*FALLTHROUGH*/ - case BL_BADUSER: dbi.count++; dbi.last = ts.tv_sec; if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { @@ -263,6 +260,9 @@ process(bl_t bl) dbi.count = 0; dbi.last = 0; break; + case BL_BADUSER: + /* ignore for now */ + break; default: (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); } diff --git a/contrib/blocklist/lib/libblocklist.3 b/contrib/blocklist/lib/libblocklist.3 index 7a016625a047..fd6eb93eb756 100644 --- a/contrib/blocklist/lib/libblocklist.3 +++ b/contrib/blocklist/lib/libblocklist.3 @@ -106,20 +106,26 @@ The .Ar action parameter can take these values: .Bl -tag -width ".Dv BLOCKLIST_ABUSIVE_BEHAVIOR" -.It Va BLOCKLIST_BAD_USER -The sending daemon has determined the username presented for -authentication is invalid. -This is considered as one failure count. -.It Va BLOCKLIST_AUTH_FAIL +.It Dv BLOCKLIST_AUTH_FAIL There was an unsuccessful authentication attempt. -This is considered as two failure counts together. -.It Va BLOCKLIST_ABUSIVE_BEHAVIOR -The sending daemon has detected abusive behavior from the remote system. -This is considered as a total immediate failure. -The remote address will be blocked as soon as possible. -.It Va BLOCKLIST_AUTH_OK -A valid user successfully authenticated. -Any entry for the remote address will be removed as soon as possible. +.It Dv BLOCKLIST_AUTH_OK +A user successfully authenticated. +.It Dv BLOCKLIST_ABUSIVE_BEHAVIOR +The sending daemon has detected abusive behavior +from the remote system. +The remote address should +be blocked as soon as possible. +.It Dv BLOCKLIST_BAD_USER +The sending daemon has determined the username +presented for authentication is invalid. +The +.Xr blocklistd 8 +daemon compares the username to a configured list of forbidden +usernames and +blocks the address immediately if a forbidden username matches. +(The +.Dv BLOCKLIST_BAD_USER +support is not currently available.) .El .Pp The From nobody Tue Oct 14 04:36:58 2025 X-Original-To: dev-commits-src-branches@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 4cm1dl1rPdz6BhVT; Tue, 14 Oct 2025 04:36: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dk5bfJz3Q3Z; Tue, 14 Oct 2025 04:36:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MoiKLxOnYN5RNwhM+65M0PQ4ZqYe94prHma8JwtztMo=; b=sbcls/19/A1cLSJZSAa0Kg6nC40LSyGQ8TmuUxAzzZo+2kFatiOqDU9c1DYEKaVa7N6P/n jAA1kCgMN4qRhJt4H4cm2f1svxWs+Ldn4IPbhKhjb74UYLOhb+QtjSLMKmtygl5y36KQKb Pg/mZCWhOLcK9ltkbGPgLzh1qOyNiDSNJV9LyobGKRXyGZl+08vlZ/MaAKYIPmTq/wH4Pt 4boL5yQfpXw+8d6kyTyfKUFkSTDAIDXa1FM4ImPUOOTBSmKJkCtXw7M0nlBzS7fiiEuGIN jUOM9ySgLpl8fGemTyfitzXy9jhJd+5yr9J+moTGNxU+iEFWcuGgVIANHFlOpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MoiKLxOnYN5RNwhM+65M0PQ4ZqYe94prHma8JwtztMo=; b=L7kvXKrh8Gr91gzfr/haEBny2CcopotihiAPwnIpWvXxpMSXLaxZWztt81rCVhQznvRrEC BorZiRdNm/TxRjhLxIRdGIasG9mde0cNPWrASZiYIkMvEP/MHZLieeGqai5wt6ww3Rgg2H Surghn3UT9e8VNFgX7SnoJuIFTJBfHS1x9qKPjhJYTeSu58MmEz5Bs25NjdB8Ud+f1hC1K vVx/FmxwPkWQqm55ua9qbHXYczlJ0C5BRP6U1HTHEWS2hLEQ2D6LYKpoUZSIK8snyLEdhD VtKY1cmUzws0ZZl3m4sfL5cyDh+6qYjJcCV7Uuu9J07GpfGteywh59IgWNfn1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416618; a=rsa-sha256; cv=none; b=sgk0QN9UK0k2plK/XI+N2JkMLUtNDrtwU9+GfldxcjMmKRCZzeP9Hl/ZctDKjNjty4NYPP bw4hGGGWD7LH7B5+1mDQWLPnGJpXmKkS0CtoHIU/OIEGX2NxhdjRkeAaelbSQjAju9r9Aw gx4wYJm0dNml5xICZXg+Am8hcwqAvr80KrxrU7RJXy8XPMrs2Lt+w+/pNGszNt+HrCR6nJ j2+7FGs7VTIK2FTSvmBR+nmiih6M8qs/r2mrCAbk1DwQPIfOFb2xKgmE6POlt/lhPCeW46 53o4j27QUzqJ2SiaYcxV8Ir3AGYet7KoP9ol+wBa8Oh6xAI9YDrwcZgFklsAjQ== 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 4cm1dk1MJxzdcb; Tue, 14 Oct 2025 04:36: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 59E4awbw038124; Tue, 14 Oct 2025 04:36:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4awON038121; Tue, 14 Oct 2025 04:36:58 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:36:58 GMT Message-Id: <202510140436.59E4awON038121@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: 2b6eb6561253 - releng/15.0 - blocklist: Rename blacklist to blocklist List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 2b6eb65612539f7a9ee94899b310d18e3ae894a3 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=2b6eb65612539f7a9ee94899b310d18e3ae894a3 commit 2b6eb65612539f7a9ee94899b310d18e3ae894a3 Author: Jose Luis Duran AuthorDate: 2025-10-12 17:14:27 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:35 +0000 blocklist: Rename blacklist to blocklist Follow up upstream rename from blacklist to blocklist. - Old names and rc scripts are still valid, but emitting an ugly warning - Old firewall rules and anchor names should work, but emitting an ugly warning - Old MK_BLACKLIST* knobs are wired to the new ones Although care has been taken not to break current configurations, this is a large patch containing mostly duplicated code. If issues arise, it will be swiftly reverted. Approved by: re (cperciva) Reviewed by: ivy (pkgbase) Approved by: emaste (mentor) MFC after: 2 days Relnotes: yes (cherry picked from commit 7238317403b95a8e35cf0bc7cd66fbd78ecbe521) (cherry picked from commit 7f6f2139eef9f9fc263977c847c6dbf235a1b1b7) --- contrib/blocklist/bin/blacklistctl.c | 170 ++++++ contrib/blocklist/bin/blacklistd.c | 592 +++++++++++++++++++++ contrib/blocklist/bin/old_internal.c | 50 ++ contrib/blocklist/bin/old_internal.h | 58 ++ contrib/blocklist/include/blacklist.h | 65 +++ contrib/blocklist/include/old_bl.h | 80 +++ contrib/blocklist/lib/blacklist.c | 117 ++++ contrib/blocklist/lib/old_bl.c | 554 +++++++++++++++++++ crypto/openssh/auth-pam.c | 4 +- crypto/openssh/auth.c | 8 +- crypto/openssh/{blacklist.c => blocklist.c} | 16 +- .../{blacklist_client.h => blocklist_client.h} | 30 +- crypto/openssh/monitor.c | 8 +- crypto/openssh/servconf.c | 18 +- crypto/openssh/servconf.h | 2 +- crypto/openssh/sshd-session.c | 10 +- crypto/openssh/sshd_config | 2 +- crypto/openssh/sshd_config.5 | 14 +- lib/Makefile | 1 + lib/libblacklist/Makefile | 24 +- lib/libblocklist/Makefile | 30 ++ lib/libblocklist/Makefile.depend | 16 + lib/libsysdecode/Makefile.depend | 2 +- libexec/Makefile | 6 +- libexec/blacklistd-helper/Makefile | 7 - libexec/blocklistd-helper/Makefile | 10 + .../Makefile.depend | 0 libexec/blocklistd-helper/blacklistd-helper | 293 ++++++++++ libexec/fingerd/Makefile | 8 +- libexec/fingerd/Makefile.depend.options | 2 +- libexec/fingerd/fingerd.c | 16 +- libexec/rc/rc.conf | 6 +- libexec/rc/rc.d/Makefile | 5 +- libexec/rc/rc.d/blacklistd | 10 +- libexec/rc/rc.d/blocklistd | 46 ++ release/packages/ucl/blocklist-all.ucl | 8 +- secure/libexec/sshd-auth/Makefile | 10 +- secure/libexec/sshd-session/Makefile | 10 +- secure/usr.sbin/sshd/Makefile.depend.options | 2 +- share/man/man5/periodic.conf.5 | 2 +- share/man/man5/src.conf.5 | 43 +- share/mk/bsd.libnames.mk | 1 + share/mk/local.dirdeps-options.mk | 1 + share/mk/src.libnames.mk | 10 +- share/mk/src.opts.mk | 10 + targets/pseudo/userland/Makefile.depend | 6 + targets/pseudo/userland/lib/Makefile.depend | 4 + targets/pseudo/userland/libexec/Makefile.depend | 4 +- tools/build/mk/OptionalObsoleteFiles.inc | 21 +- tools/build/options/WITHOUT_BLACKLIST | 6 +- tools/build/options/WITHOUT_BLACKLIST_SUPPORT | 8 +- tools/build/options/WITHOUT_BLOCKLIST | 4 + tools/build/options/WITHOUT_BLOCKLIST_SUPPORT | 6 + usr.sbin/Makefile | 2 + usr.sbin/blacklistctl/Makefile | 10 +- usr.sbin/blacklistd/Makefile | 13 +- usr.sbin/blacklistd/blacklistd.conf | 10 +- usr.sbin/blocklistctl/Makefile | 22 + usr.sbin/blocklistctl/Makefile.depend | 18 + usr.sbin/blocklistd/Makefile | 23 + usr.sbin/blocklistd/Makefile.depend | 18 + usr.sbin/blocklistd/blocklistd.conf | 16 + usr.sbin/periodic/etc/security/520.pfdenied | 2 +- 63 files changed, 2426 insertions(+), 144 deletions(-) diff --git a/contrib/blocklist/bin/blacklistctl.c b/contrib/blocklist/bin/blacklistctl.c new file mode 100644 index 000000000000..6298a08b10b4 --- /dev/null +++ b/contrib/blocklist/bin/blacklistctl.c @@ -0,0 +1,170 @@ +/* $NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: blocklistctl.c,v 1.4 2025/02/11 17:48:30 christos Exp $"); + +#include +#include +#ifdef HAVE_LIBUTIL_H +#include +#endif +#ifdef HAVE_UTIL_H +#include +#endif +#include +#include +#include +#include +#include +#include +#include + +#include "conf.h" +#include "state.h" +#include "old_internal.h" +#include "support.h" + +static __dead void +usage(int c) +{ + if (c == 0) + warnx("Missing/unknown command"); + else if (c != '?') + warnx("Unknown option `%c'", (char)c); + fprintf(stderr, + "Usage: %s dump [-abdnrw] [-D dbname]\n", getprogname()); + exit(EXIT_FAILURE); +} + +static const char * +star(char *buf, size_t len, int val) +{ + if (val == -1) + return "*"; + snprintf(buf, len, "%d", val); + return buf; +} + +int +main(int argc, char *argv[]) +{ + const char *dbname = _PATH_BLSTATE; + DB *db; + struct conf c; + struct dbinfo dbi; + unsigned int i; + struct timespec ts; + int all, blocked, remain, wide, noheader; + int o; + + noheader = wide = blocked = all = remain = 0; + lfun = dlog; + + if (argc == 1 || strcmp(argv[1], "dump") != 0) + usage(0); + + argc--; + argv++; + + while ((o = getopt(argc, argv, "abD:dnrw")) != -1) + switch (o) { + case 'a': + all = 1; + blocked = 0; + break; + case 'b': + blocked = 1; + break; + case 'D': + dbname = optarg; + break; + case 'd': + debug++; + break; + case 'n': + noheader = 1; + break; + case 'r': + remain = 1; + break; + case 'w': + wide = 1; + break; + default: + usage(o); + } + + db = state_open(dbname, O_RDONLY, 0); + if (db == NULL) + err(EXIT_FAILURE, "Can't open `%s'", dbname); + + clock_gettime(CLOCK_REALTIME, &ts); + wide = wide ? 8 * 4 + 7 : 4 * 3 + 3; + if (!noheader) + printf("%*.*s/ma:port\tid\tnfail\t%s\n", wide, wide, + "address", remain ? "remaining time" : "last access"); + for (i = 1; state_iterate(db, &c, &dbi, i) != 0; i = 0) { + char buf[BUFSIZ]; + char mbuf[64], pbuf[64]; + if (!all) { + if (blocked) { + if (c.c_nfail == -1 || dbi.count < c.c_nfail) + continue; + } else { + if (dbi.count >= c.c_nfail) + continue; + } + } + sockaddr_snprintf(buf, sizeof(buf), "%a", (void *)&c.c_ss); + printf("%*.*s/%s:%s\t", wide, wide, buf, + star(mbuf, sizeof(mbuf), c.c_lmask), + star(pbuf, sizeof(pbuf), c.c_port)); + if (c.c_duration == -1) { + strlcpy(buf, "never", sizeof(buf)); + } else { + if (remain) + fmtydhms(buf, sizeof(buf), + c.c_duration - (ts.tv_sec - dbi.last)); + else + fmttime(buf, sizeof(buf), dbi.last); + } + printf("%s\t%d/%s\t%-s\n", dbi.id, dbi.count, + star(mbuf, sizeof(mbuf), c.c_nfail), buf); + } + state_close(db); + return EXIT_SUCCESS; +} diff --git a/contrib/blocklist/bin/blacklistd.c b/contrib/blocklist/bin/blacklistd.c new file mode 100644 index 000000000000..ded3075ed707 --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.c @@ -0,0 +1,592 @@ +/* $NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: blocklistd.c,v 1.10 2025/03/26 17:09:35 christos Exp $"); + +#include +#include +#include + +#ifdef HAVE_LIBUTIL_H +#include +#endif +#ifdef HAVE_UTIL_H +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "old_bl.h" +#include "old_internal.h" +#include "conf.h" +#include "run.h" +#include "state.h" +#include "support.h" + +static const char *configfile = _PATH_BLCONF; +static DB *state; +static const char *dbfile = _PATH_BLSTATE; +static sig_atomic_t readconf; +static sig_atomic_t done; +static int vflag; + +static void +sigusr1(int n __unused) +{ + debug++; +} + +static void +sigusr2(int n __unused) +{ + debug--; +} + +static void +sighup(int n __unused) +{ + readconf++; +} + +static void +sigdone(int n __unused) +{ + done++; +} + +static __dead void +usage(int c) +{ + if (c != '?') + warnx("Unknown option `%c'", (char)c); + fprintf(stderr, "Usage: %s [-vdfr] [-c ] [-R ] " + "[-P ] [-C ] [-D ] " + "[-s ] [-t ]\n", getprogname()); + exit(EXIT_FAILURE); +} + +static int +getremoteaddress(bl_info_t *bi, struct sockaddr_storage *rss, socklen_t *rsl) +{ + *rsl = sizeof(*rss); + memset(rss, 0, *rsl); + + if (getpeername(bi->bi_fd, (void *)rss, rsl) != -1) + return 0; + + if (errno != ENOTCONN) { + (*lfun)(LOG_ERR, "getpeername failed (%m)"); + return -1; + } + + if (bi->bi_slen == 0) { + (*lfun)(LOG_ERR, "unconnected socket with no peer in message"); + return -1; + } + + switch (bi->bi_ss.ss_family) { + case AF_INET: + *rsl = sizeof(struct sockaddr_in); + break; + case AF_INET6: + *rsl = sizeof(struct sockaddr_in6); + break; + default: + (*lfun)(LOG_ERR, "bad client passed socket family %u", + (unsigned)bi->bi_ss.ss_family); + return -1; + } + + if (*rsl != bi->bi_slen) { + (*lfun)(LOG_ERR, "bad client passed socket length %u != %u", + (unsigned)*rsl, (unsigned)bi->bi_slen); + return -1; + } + + memcpy(rss, &bi->bi_ss, *rsl); + +#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN + if (*rsl != rss->ss_len) { + (*lfun)(LOG_ERR, + "bad client passed socket internal length %u != %u", + (unsigned)*rsl, (unsigned)rss->ss_len); + return -1; + } +#endif + return 0; +} + +static void +process(bl_t bl) +{ + struct sockaddr_storage rss; + socklen_t rsl; + char rbuf[BUFSIZ]; + bl_info_t *bi; + struct conf c; + struct dbinfo dbi; + struct timespec ts; + + memset(&dbi, 0, sizeof(dbi)); + memset(&c, 0, sizeof(c)); + if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { + (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); + return; + } + + if ((bi = bl_recv(bl)) == NULL) { + (*lfun)(LOG_ERR, "no message (%m)"); + return; + } + + if (getremoteaddress(bi, &rss, &rsl) == -1) + goto out; + + if (debug || bi->bi_msg[0]) { + sockaddr_snprintf(rbuf, sizeof(rbuf), "%a:%p", (void *)&rss); + (*lfun)(bi->bi_msg[0] ? LOG_INFO : LOG_DEBUG, + "processing type=%d fd=%d remote=%s msg=%s uid=%lu gid=%lu", + bi->bi_type, bi->bi_fd, rbuf, + bi->bi_msg, (unsigned long)bi->bi_uid, + (unsigned long)bi->bi_gid); + } + + if (conf_find(bi->bi_fd, bi->bi_uid, &rss, &c) == NULL) { + (*lfun)(LOG_DEBUG, "no rule matched"); + goto out; + } + + + if (state_get(state, &c, &dbi) == -1) + goto out; + + if (debug) { + char b1[128], b2[128]; + (*lfun)(LOG_DEBUG, "%s: initial db state for %s: count=%d/%d " + "last=%s now=%s", __func__, rbuf, dbi.count, c.c_nfail, + fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } + + switch (bi->bi_type) { + case BL_ABUSE: + /* + * If the application has signaled abusive behavior, + * set the number of fails to be one less than the + * configured limit. Fallthrough to the normal BL_ADD + * processing, which will increment the failure count + * to the threshhold, and block the abusive address. + */ + if (c.c_nfail != -1) + dbi.count = c.c_nfail - 1; + /*FALLTHROUGH*/ + case BL_ADD: + dbi.count++; + dbi.last = ts.tv_sec; + if (c.c_nfail != -1 && dbi.count >= c.c_nfail) { + /* + * No point in re-adding the rule. + * It might exist already due to latency in processing + * and removing the rule is the wrong thing to do as + * it allows a window to attack again. + */ + if (dbi.id[0] == '\0') { + int res = run_change("add", &c, + dbi.id, sizeof(dbi.id)); + if (res == -1) + goto out; + } + sockaddr_snprintf(rbuf, sizeof(rbuf), "%a", + (void *)&rss); + (*lfun)(LOG_INFO, + "blocked %s/%d:%d for %d seconds", + rbuf, c.c_lmask, c.c_port, c.c_duration); + } + break; + case BL_DELETE: + if (dbi.last == 0) + goto out; + dbi.count = 0; + dbi.last = 0; + break; + case BL_BADUSER: + /* ignore for now */ + break; + default: + (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); + } + state_put(state, &c, &dbi); + +out: + close(bi->bi_fd); + + if (debug) { + char b1[128], b2[128]; + (*lfun)(LOG_DEBUG, "%s: final db state for %s: count=%d/%d " + "last=%s now=%s", __func__, rbuf, dbi.count, c.c_nfail, + fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } +} + +static void +update_interfaces(void) +{ + struct ifaddrs *oifas, *nifas; + + if (getifaddrs(&nifas) == -1) + return; + + oifas = ifas; + ifas = nifas; + + if (oifas) + freeifaddrs(oifas); +} + +static void +update(void) +{ + struct timespec ts; + struct conf c; + struct dbinfo dbi; + unsigned int f, n; + char buf[128]; + void *ss = &c.c_ss; + + if (clock_gettime(CLOCK_REALTIME, &ts) == -1) { + (*lfun)(LOG_ERR, "clock_gettime failed (%m)"); + return; + } + +again: + for (n = 0, f = 1; state_iterate(state, &c, &dbi, f) == 1; + f = 0, n++) + { + time_t when = c.c_duration + dbi.last; + if (debug > 1) { + char b1[64], b2[64]; + sockaddr_snprintf(buf, sizeof(buf), "%a:%p", ss); + (*lfun)(LOG_DEBUG, "%s:[%u] %s count=%d duration=%d " + "last=%s " "now=%s", __func__, n, buf, dbi.count, + c.c_duration, fmttime(b1, sizeof(b1), dbi.last), + fmttime(b2, sizeof(b2), ts.tv_sec)); + } + if (c.c_duration == -1 || when >= ts.tv_sec) + continue; + if (dbi.id[0]) { + run_change("rem", &c, dbi.id, 0); + sockaddr_snprintf(buf, sizeof(buf), "%a", ss); + (*lfun)(LOG_INFO, "released %s/%d:%d after %d seconds", + buf, c.c_lmask, c.c_port, c.c_duration); + } + state_del(state, &c); + goto again; + } +} + +static void +addfd(struct pollfd **pfdp, bl_t **blp, size_t *nfd, size_t *maxfd, + const char *path) +{ + bl_t bl = bl_create(true, path, vflag ? vdlog : vsyslog_r); + if (bl == NULL || !bl_isconnected(bl)) + exit(EXIT_FAILURE); + if (*nfd >= *maxfd) { + *maxfd += 10; + *blp = realloc(*blp, sizeof(**blp) * *maxfd); + if (*blp == NULL) + err(EXIT_FAILURE, "malloc"); + *pfdp = realloc(*pfdp, sizeof(**pfdp) * *maxfd); + if (*pfdp == NULL) + err(EXIT_FAILURE, "malloc"); + } + + (*pfdp)[*nfd].fd = bl_getfd(bl); + (*pfdp)[*nfd].events = POLLIN; + (*blp)[*nfd] = bl; + *nfd += 1; +} + +static void +uniqueadd(struct conf ***listp, size_t *nlist, size_t *mlist, struct conf *c) +{ + struct conf **list = *listp; + + if (c->c_name[0] == '\0') + return; + for (size_t i = 0; i < *nlist; i++) { + if (strcmp(list[i]->c_name, c->c_name) == 0) + return; + } + if (*nlist == *mlist) { + *mlist += 10; + void *p = realloc(*listp, *mlist * sizeof(*list)); + if (p == NULL) + err(EXIT_FAILURE, "Can't allocate for rule list"); + list = *listp = p; + } + list[(*nlist)++] = c; +} + +static void +rules_flush(void) +{ + struct conf **list; + size_t nlist, mlist; + + list = NULL; + mlist = nlist = 0; + for (size_t i = 0; i < rconf.cs_n; i++) + uniqueadd(&list, &nlist, &mlist, &rconf.cs_c[i]); + for (size_t i = 0; i < lconf.cs_n; i++) + uniqueadd(&list, &nlist, &mlist, &lconf.cs_c[i]); + + for (size_t i = 0; i < nlist; i++) + run_flush(list[i]); + free(list); +} + +static void +rules_restore(void) +{ + DB *db; + struct conf c; + struct dbinfo dbi; + unsigned int f; + + db = state_open(dbfile, O_RDONLY, 0); + if (db == NULL) { + (*lfun)(LOG_ERR, "Can't open `%s' to restore state (%m)", + dbfile); + return; + } + for (f = 1; state_iterate(db, &c, &dbi, f) == 1; f = 0) { + if (dbi.id[0] == '\0') + continue; + (void)run_change("add", &c, dbi.id, sizeof(dbi.id)); + state_put(state, &c, &dbi); + } + state_close(db); + state_sync(state); +} + +int +main(int argc, char *argv[]) +{ + int c, tout, flags, flush, restore, ret; + const char *spath, **blsock; + size_t nblsock, maxblsock; + + setprogname(argv[0]); + + spath = NULL; + blsock = NULL; + maxblsock = nblsock = 0; + flush = 0; + restore = 0; + tout = 0; + flags = O_RDWR|O_EXCL|O_CLOEXEC; + while ((c = getopt(argc, argv, "C:c:D:dfP:rR:s:t:v")) != -1) { + switch (c) { + case 'C': + controlprog = optarg; + break; + case 'c': + configfile = optarg; + break; + case 'D': + dbfile = optarg; + break; + case 'd': + debug++; + break; + case 'f': + flush++; + break; + case 'P': + spath = optarg; + break; + case 'R': + rulename = optarg; + break; + case 'r': + restore++; + break; + case 's': + if (nblsock >= maxblsock) { + maxblsock += 10; + void *p = realloc(blsock, + sizeof(*blsock) * maxblsock); + if (p == NULL) + err(EXIT_FAILURE, + "Can't allocate memory for %zu sockets", + maxblsock); + blsock = p; + } + blsock[nblsock++] = optarg; + break; + case 't': + tout = atoi(optarg) * 1000; + break; + case 'v': + vflag++; + break; + default: + usage(c); + } + } + + argc -= optind; + if (argc) + usage('?'); + + signal(SIGHUP, sighup); + signal(SIGINT, sigdone); + signal(SIGQUIT, sigdone); + signal(SIGTERM, sigdone); + signal(SIGUSR1, sigusr1); + signal(SIGUSR2, sigusr2); + + openlog(getprogname(), LOG_PID, LOG_DAEMON); + + if (debug) { + lfun = dlog; + if (tout == 0) + tout = 5000; + } else { + if (tout == 0) + tout = 15000; + } + + update_interfaces(); + conf_parse(configfile); + if (flush) { + rules_flush(); + if (!restore) + flags |= O_TRUNC; + } + + struct pollfd *pfd = NULL; + bl_t *bl = NULL; + size_t nfd = 0; + size_t maxfd = 0; + + for (size_t i = 0; i < nblsock; i++) + addfd(&pfd, &bl, &nfd, &maxfd, blsock[i]); + free(blsock); + + if (spath) { + FILE *fp = fopen(spath, "r"); + char *line; + if (fp == NULL) + err(EXIT_FAILURE, "Can't open `%s'", spath); + for (; (line = fparseln(fp, NULL, NULL, NULL, 0)) != NULL; + free(line)) + addfd(&pfd, &bl, &nfd, &maxfd, line); + fclose(fp); + } + if (nfd == 0) + addfd(&pfd, &bl, &nfd, &maxfd, _PATH_BLSOCK); + + state = state_open(dbfile, flags, 0600); + if (state == NULL) + state = state_open(dbfile, flags | O_CREAT, 0600); + if (state == NULL) + return EXIT_FAILURE; + + if (restore) { + if (!flush) + rules_flush(); + rules_restore(); + } + + if (!debug) { + if (daemon(0, 0) == -1) + err(EXIT_FAILURE, "daemon failed"); + if (pidfile(NULL) == -1) + err(EXIT_FAILURE, "Can't create pidfile"); + } + + for (size_t t = 0; !done; t++) { + if (readconf) { + readconf = 0; + conf_parse(configfile); + } + ret = poll(pfd, (nfds_t)nfd, tout); + if (debug) + (*lfun)(LOG_DEBUG, "received %d from poll()", ret); + switch (ret) { + case -1: + if (errno == EINTR) + continue; + (*lfun)(LOG_ERR, "poll (%m)"); + return EXIT_FAILURE; + case 0: + state_sync(state); + break; + default: + for (size_t i = 0; i < nfd; i++) + if (pfd[i].revents & POLLIN) + process(bl[i]); + } + if (t % 100 == 0) + state_sync(state); + if (t % 10000 == 0) + update_interfaces(); + update(); + } + state_close(state); + return 0; +} diff --git a/contrib/blocklist/bin/old_internal.c b/contrib/blocklist/bin/old_internal.c new file mode 100644 index 000000000000..79093cc8b8ab --- /dev/null +++ b/contrib/blocklist/bin/old_internal.c @@ -0,0 +1,50 @@ +/* $NetBSD: internal.c,v 1.2 2025/02/11 17:48:30 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef HAVE_SYS_CDEFS_H +#include +#endif +__RCSID("$NetBSD: internal.c,v 1.2 2025/02/11 17:48:30 christos Exp $"); + +#include +#include +#include "conf.h" +#include "old_internal.h" + +int debug; +const char *rulename = "blacklistd"; +const char *controlprog = _PATH_BLCONTROL; +struct confset lconf, rconf; +struct ifaddrs *ifas; +void (*lfun)(int, const char *, ...) = syslog; diff --git a/contrib/blocklist/bin/old_internal.h b/contrib/blocklist/bin/old_internal.h new file mode 100644 index 000000000000..becee563e81d --- /dev/null +++ b/contrib/blocklist/bin/old_internal.h @@ -0,0 +1,58 @@ +/* $NetBSD: internal.h,v 1.1.1.1 2020/06/15 01:52:53 christos Exp $ */ + +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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. + */ +#ifndef _OLD_INTERNAL_H +#define _OLD_INTERNAL_H + +#ifndef _PATH_BLCONF +#define _PATH_BLCONF "/etc/blacklistd.conf" +#endif +#ifndef _PATH_BLCONTROL +#define _PATH_BLCONTROL "/usr/libexec/blacklistd-helper" +#endif +#ifndef _PATH_BLSTATE +/* We want the new name, the old one would be incompatible after 24932b6 */ +#define _PATH_BLSTATE "/var/db/blocklistd.db" +#endif + +extern struct confset rconf, lconf; +extern int debug; +extern const char *rulename; +extern const char *controlprog; +extern struct ifaddrs *ifas; + +#if !defined(__syslog_attribute__) && !defined(__syslog__) +#define __syslog__ __printf__ +#endif *** 2511 LINES SKIPPED *** From nobody Tue Oct 14 04:36:59 2025 X-Original-To: dev-commits-src-branches@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 4cm1dl5Ctlz6BhZv; Tue, 14 Oct 2025 04:36: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dl3yTCz3QF2; Tue, 14 Oct 2025 04:36:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FeO8/eMlsecJ8Quboo9ZcNgFaqQCUs13zFRxUr6bCxU=; b=hi7+ux+hgFNvTuxPWV86sTHbBFblpRYYQR8BzMvdNL+vd0x+QM961EZtR37q50yW31zkdB eYLJASTmOWgcf5JpJoMPUqT3Zel5SgGhj5hLB8GkeXK53gsBePuOYEbcRSKd0QZRWk4Ord j2w83LhDthgCtDcZiu/EB3JBu+c5Xk2O3o8vwtPD2CCYOt2Mr5ZT0cmngeTdzm0N3Of6eB JIV0R5uxtG+3HYO7WjbqaQj2Hg24HwnbKb8ZCzxFNxIBkUmCIG1UKdid4+ttX5BIvEN4LV VHO8xermM3Ekf7tqkpGUYEA4xhfFuoKiPgASfVIq2yFcvJyDh1AM2x78v4KTwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FeO8/eMlsecJ8Quboo9ZcNgFaqQCUs13zFRxUr6bCxU=; b=dZhtTXym7jJtvoxpU+PlbD6YSOZl3gnneRDAnclV/U/42yfTqRzwRc/pjH5nD+b6gFseWq ys1V/Hc1D64D4vioYRW7yorWNkHRPyeswYaEAgU0l1iYNAxoVjSjgGTwFFa7cVLWrO75K8 qd4knyRnHpw7jRSxpDK/mpbmYB3iandmnV4EV8S3EJ1S4wsGK2PInm/yVTokUmt/RDWVRd oCHqCAo1hSrs/8G7w21fb/f0Sd6P/O2gOdyyhjCESQ4OvuVzBfnYvg/+msHQs9HMTZdK57 bw2aXwdsSMW9zfELu9hlGeO2X88lRYgPDlMxFr79CfmSzZgWGhsqjlhW0DwiQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416619; a=rsa-sha256; cv=none; b=lvRzpSVFw5rbY9QkvYN9uzdCesJi9NfgsMlpcJ+vJ0zmOWgYayGeHSuRU6TbgAXWe2JPq9 oHRbmd79VUSqJO8/mPGFNypQdRkw8weyRZ8fvjnlsHTk0EwyVx5FRHS8mg1Ri9VBDSNEhu aEDk/j6+fFmBG8eaDUemO/kpIjvAAROsQo6Q+wfYKm94zh5mFnklRc8nwI+lfrpWZD17vr DkBP7YizKLH2agjQ9SaVzpoyJrCo1Qr4FQQPOS1WdNz/JkHJbW8zTt0O4lAE5E0XYjYoEm ncQBUb2lW/tNytTSV0erVrtnrwli1Z+bEtEj6aNepfMUYO6dJDYrjNQtBC46LQ== 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 4cm1dl2N8NzdZM; Tue, 14 Oct 2025 04:36: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 59E4axZ9038159; Tue, 14 Oct 2025 04:36:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4axqx038156; Tue, 14 Oct 2025 04:36:59 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:36:59 GMT Message-Id: <202510140436.59E4axqx038156@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: f315a3512c70 - releng/15.0 - blocklist-helper: Silence a bogus pf warning List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: f315a3512c709afc2a59584791f29ebd7e9e047d Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f315a3512c709afc2a59584791f29ebd7e9e047d commit f315a3512c709afc2a59584791f29ebd7e9e047d Author: Jose Luis Duran AuthorDate: 2025-10-12 17:16:12 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:39 +0000 blocklist-helper: Silence a bogus pf warning Silence a bogus warning about (an ethernet) anchor not being found. It has been reported as PR 280516. In the meantime, just sweep under the carpet. Approved by: re (cperciva) Approved by: emaste (mentor) MFC after: 2 days (cherry picked from commit 2347ca21d657121670e6e7246c6ac32efc996cac) (cherry picked from commit ba5768504bee39191754fc1aece3927c8936f27c) --- contrib/blocklist/libexec/blocklistd-helper | 2 +- libexec/blocklistd-helper/blacklistd-helper | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/blocklist/libexec/blocklistd-helper b/contrib/blocklist/libexec/blocklistd-helper index f27cde4ed4ea..14a192ee35ce 100755 --- a/contrib/blocklist/libexec/blocklistd-helper +++ b/contrib/blocklist/libexec/blocklistd-helper @@ -258,7 +258,7 @@ flush) pf) # dynamically determine which anchors exist for anchor in $(/sbin/pfctl -a "$2" -s Anchors 2> /dev/null); do - /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush + /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush 2> /dev/null /sbin/pfctl -a "$anchor" -F rules done echo OK diff --git a/libexec/blocklistd-helper/blacklistd-helper b/libexec/blocklistd-helper/blacklistd-helper index 4195f070e8ee..92f768e86cdf 100644 --- a/libexec/blocklistd-helper/blacklistd-helper +++ b/libexec/blocklistd-helper/blacklistd-helper @@ -279,7 +279,7 @@ flush) pf) # dynamically determine which anchors exist for anchor in $(/sbin/pfctl -a "$2" -s Anchors 2> /dev/null); do - /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush + /sbin/pfctl -a "$anchor" -t "port${anchor##*/}" -T flush 2> /dev/null /sbin/pfctl -a "$anchor" -F rules done echo OK From nobody Tue Oct 14 04:37:00 2025 X-Original-To: dev-commits-src-branches@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 4cm1dm431Fz6BhBM; Tue, 14 Oct 2025 04:37: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dm3TP7z3Q3t; Tue, 14 Oct 2025 04:37:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o4afukLQ9RkRazTWfuBPQKJpacRSAlkx29x3CwLA8jA=; b=p8ZuC7gbUxpXAof2SPeLVPBfak9Fb8C1ma0mq84ir7jJVSX0CXon8kihVEwgAjlUeLqyze Ddc9KJh3gm39xvMfAtasdJAQ4l8/2QFIXcsg/nvjGG5JCv+zi6hmB83NmpizZxxpxpta3F 2O+LZZHLYwo7RLwpIapjFeMQpyBIqIA5mR6DZjTVQfpTO2RNserHM4mehnwLR5WpwGxOs4 IKxvCAL0TWa+rnafGoBL/RIh7sWwqMIdBrlg/HskkLYxObL9g36YSvStiophvXDhhSSRHL lcHpoyS6ZRQpDHHPO9RaVbXKRNYR83pCq8xoSQ4IhHwb/UpTY0OzDeUeKplwbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o4afukLQ9RkRazTWfuBPQKJpacRSAlkx29x3CwLA8jA=; b=nrIdmiMObCIh04/O2PJRXIhKGS2wQ+RESZgkMryj9qNfqNl4Bk/02RgbczrsGSC831R103 /XMo3dtlnI4BQ/uLN8AzKyWPmS9aNKMzif4Z/qP6vNOj6NN5YDZSywWjzvIPlt/2pOBKfy xCPbOhACEPrPLh+wd1ZeEJcXK4KktNrzbmqYD0GANGYkLCi/5/r2XQPryve02QFMaEEilj dCztmk45M3n26HDSWPqXPJGVA80qmbF3DsKJbSkCzCNgFmFSnPdqGZ1as5Je00pwUkzq2k doQMC3wyMVVfqJTanlceQfStPT8ybA0oa5fGh2dAOJDHqzv7OKelluDlZFD4Yw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416620; a=rsa-sha256; cv=none; b=TsPtVxQ1+CGx91E5QWGMjt9L+b5rrqLPsVpsdspmAT40PjFasd5khN2EPcqoN7CroiEWc1 jGwkbHj3l1j1chUCLw9kI0DrqQEEGH8CB7DyNwqC8FxztHgUVebgmB/54GVAsFmFl/QkUT 9W1092/qZyTHs4/cBTPQFzjF7Z65JWqlvWA+Zv8m5r5p8dOjsriYEcz8v+aLLPTCsioWxy 0gAi1nX+XgnToYl3pGAUYNf59uki/ikO7JZVacbfj2dt6eI4nKNx8c57qYgv6uw1SC0cOv j9toYyzmK2O/zmNA49M6u+pIJ53u8ZKgD/JHY0hL1+Ari9XG9UBn7H0J51QwPQ== 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 4cm1dm349CzdXZ; Tue, 14 Oct 2025 04:37: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 59E4b0rC038201; Tue, 14 Oct 2025 04:37:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4b05u038198; Tue, 14 Oct 2025 04:37:00 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:37:00 GMT Message-Id: <202510140437.59E4b05u038198@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: 621d4b1d01d5 - releng/15.0 - blacklist: Avoid duplicate manual pages in METALOG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 621d4b1d01d55567de08ccec98120be5be7d257b Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=621d4b1d01d55567de08ccec98120be5be7d257b commit 621d4b1d01d55567de08ccec98120be5be7d257b Author: Jose Luis Duran AuthorDate: 2025-10-13 00:53:50 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:42 +0000 blacklist: Avoid duplicate manual pages in METALOG Previously, blacklist man pages were just a symlink to their blocklist counterpart, this in turn installed blocklist man pages twice, and resulted in a duplicate error when running metalog_reader.lua -c. Take advantage of the duplication to document nuances in blacklist, such as the fact that it uses the new database and socket name (blocklist). Also, note that it has been renamed to blocklist. In the future, it will help to document its deprecation. Approved by: re (cperciva) Approved by: emaste (mentor) Fixes: 7238317403b9 ("blocklist: Rename blacklist to blocklist") MFC after: 2 days (cherry picked from commit c6240045536548c22ce40d9ef36c1dc52abcfc9c) (cherry picked from commit f935c0f66f75e882185ed8bc46f39054f2ced4e1) --- contrib/blocklist/bin/blacklistctl.8 | 136 ++++++++++++++ contrib/blocklist/bin/blacklistd.8 | 308 ++++++++++++++++++++++++++++++++ contrib/blocklist/bin/blacklistd.conf.5 | 242 +++++++++++++++++++++++++ contrib/blocklist/lib/libblacklist.3 | 188 +++++++++++++++++++ lib/libblacklist/Makefile | 17 +- usr.sbin/blacklistctl/Makefile | 3 +- usr.sbin/blacklistd/Makefile | 4 +- 7 files changed, 884 insertions(+), 14 deletions(-) diff --git a/contrib/blocklist/bin/blacklistctl.8 b/contrib/blocklist/bin/blacklistctl.8 new file mode 100644 index 000000000000..4d557c0c979d --- /dev/null +++ b/contrib/blocklist/bin/blacklistctl.8 @@ -0,0 +1,136 @@ +.\" $NetBSD: blocklistctl.8,v 1.4 2025/02/07 01:35:38 kre Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 January 27, 2025 +.Dt BLACKLISTCTL 8 +.Os +.Sh NAME +.Nm blacklistctl +.Nd display and change the state of the blacklistd database +.Sh SYNOPSIS +.Nm +.Cm dump +.Op Fl abdnrw +.Op Fl D Ar dbname +.Sh DESCRIPTION +.Nm +is a program used to display and change the state of the +.Xr blacklistd 8 +database. +The following sub-commands are supported: +.Ss dump +.Pp +The following options are available for the +.Cm dump +sub-command: +.Bl -tag -width indent +.It Fl a +Show all database entries, by default it shows only the active ones. +Inactive entries will be shown with a last-access (or, with +.Fl r , +the remaining) time of +.Ql never . +.It Fl b +Show only the blocked entries. +.It Fl D Ar dbname +Specify the location of the +.Ic blacklistd +database file to use. +The default is +.Pa /var/db/blocklistd.db . +.It Fl d +Increase debugging level. +.It Fl n +Don't display a header. +.It Fl r +Show the remaining blocked time instead of the last activity time. +.It Fl w +Normally the width of addresses is good for IPv4, the +.Fl w +flag, makes the display wide enough for IPv6 addresses. +.El +.Pp +The output of the +.Cm dump +sub-command consists of a header (unless +.Fl n +was given) and one line for each record in the database, where each line +has the following columns: +.Bl -tag -width indent +.It Ql address/ma:port +The remote address, mask, and local port number of the client connection +associated with the database entry. +.It Ql id +column will show the identifier for the packet filter rule associated +with the database entry, though this may only be the word +.Ql OK +for packet filters which do not creat a unique identifier for each rule. +.It Ql nfail +The number of +.Em failures +reported for the client on the noted port, as well as the number of +failures allowed before blocking (or, with +.Fl a , +an asterisk +.Aq * ) +.It So last access Sc | So remaining time Sc +The last time a the client was reported as attempting access, or, with +.Fl r , +the time remaining before the rule blocking the client will be removed. +.El +.Sh SEE ALSO +.Xr blacklistd 8 +.Sh NOTES +The +.Nm +program has been renamed to +.Xr blocklistctl 8 . +.Pp +Sometimes the reported number of failed attempts can exceed the number +of attempts that +.Xr blacklistd 8 +is configured to block. +This can happen either because the rule has been removed manually, or +because there were more attempts in flight while the rule block was being +added. +This condition is normal; in that case +.Xr blacklistd 8 +will first attempt to remove the existing rule, and then it will re-add +it to make sure that there is only one rule active. +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/bin/blacklistd.8 b/contrib/blocklist/bin/blacklistd.8 new file mode 100644 index 000000000000..9ca886e9c4d3 --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.8 @@ -0,0 +1,308 @@ +.\" $NetBSD: blocklistd.8,v 1.8 2025/02/25 22:13:34 christos Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 25, 2025 +.Dt BLACKLISTD 8 +.Os +.Sh NAME +.Nm blacklistd +.Nd block and release ports on demand to avoid DoS abuse +.Sh SYNOPSIS +.Nm +.Op Fl dfrv +.Op Fl C Ar controlprog +.Op Fl c Ar configfile +.Op Fl D Ar dbfile +.Op Fl P Ar sockpathsfile +.Op Fl R Ar rulename +.Op Fl s Ar sockpath +.Op Fl t Ar timeout +.Sh DESCRIPTION +.Nm +is a daemon similar to +.Xr syslogd 8 +that listens to sockets at paths specified in the +.Ar sockpathsfile +for notifications from other daemons about successful or failed connection +attempts. +If no such file is specified, then it only listens to the socket path +specified by +.Ar sockpath +or if that is not specified to +.Pa /var/run/blocklistd.sock . +Each notification contains an (action, port, protocol, address, owner) tuple +that identifies the remote connection and the action. +This tuple is consulted against entries from the +.Ar configfile , +with the syntax specified in +.Xr blacklistd.conf 5 . +If an entry is matched, a state entry is created for that tuple. +Each entry contains a number of tries limit and a duration. +.Pp +If +.Ar configfile +is a directory, or a directory exists with the same name as +.Ar configfile +with +.Qq .d +appended to it, each file in the directory will be read as configuration file. +If +.Ar configfile +exists as a file it will be processed before the contents of the +.Ar configfile Ns .d +directory if that also exists. +.Pp +The way +.Nm +does configuration entry matching is by having the client side pass the +file descriptor associated with the connection the client wants to blacklist +as well as passing socket credentials. +.Pp +The file descriptor is used to retrieve information (address and port) +about the remote side with +.Xr getpeername 2 +and the local side with +.Xr getsockname 2 . +.Pp +By examining the port of the local side, +.Nm +can determine if the client program +.Dq owns +the port. +By examining the optional address portion on the local side, it can match +interfaces. +By examining the remote address, it can match specific allow or deny rules. +.Pp +Finally +.Nm +can examine the socket credentials to match the user in the configuration file. +.Pp +While this works well for TCP sockets, it cannot be relied on for unbound +UDP sockets. +It is also less meaningful when it comes to connections using non-privileged +ports. +On the other hand, if we receive a request that has a local endpoint indicating +a UDP privileged port, we can presume that the client was privileged to be +able to acquire that port. +.Pp +Once an entry is matched +.Nm +can perform various actions. +If the action is +.Dq add +and the number of tries limit is reached, then a +control script +.Ar controlprog +is invoked with arguments: +.Bd -literal -offset indent +control add
+.Ed +.Pp +and should invoke a packet filter command to block the connection +specified by the arguments. +The +.Ar rulename +argument can be set from the command line (default +.Dv blacklistd ) . +The script could print a numerical id to stdout as a handle for +the rule that can be used later to remove that connection, but +that is not required as all information to remove the rule is +kept. +.Pp +If the action is +.Dq rem +Then the same control script is invoked as: +.Bd -literal -offset indent +control rem
+.Ed +.Pp +where +.Ar id +is the number returned from the +.Dq add +action. +.Pp +.Nm +maintains a database of known connections in +.Ar dbfile . +On startup it reads entries from that file, and updates its internal state. +.Pp +.Nm +checks the list of active entries every +.Ar timeout +seconds (default +.Dv 15 ) +and removes entries and block rules using the control program as necessary. +.Pp +The following options are available: +.Bl -tag -width indent +.It Fl C Ar controlprog +Use +.Ar controlprog +to communicate with the packet filter, instead of the default, which is +.Pa /usr/libexec/blacklistd-helper . +The following arguments are passed to the control program: +.Bl -tag -width protocol +.It action +The action to perform: +.Dv add , +.Dv rem , +or +.Dv flush ; +to add, remove or flush a firewall rule. +.It name +The rule name. +.It protocol +The optional protocol name (can be empty): +.Dv tcp , +.Dv tcp6 , +.Dv udp , +.Dv udp6 . +.It address +The IPv4 or IPv6 numeric address to be blocked or released. +.It mask +The numeric mask to be applied to the blocked or released address +.It port +The optional numeric port to be blocked (can be empty). +.It id +For packet filters that support removal of rules by rule identifier, the +identifier of the rule to be removed. +The add command is expected to return the rule identifier string to stdout. +.El +.It Fl c Ar configuration +The name of the configuration file to read. +The default when +.Fl c +is not given is +.Pa /etc/blacklistd.conf . +.It Fl D Ar dbfile +The Berkeley DB file where +.Nm +stores its state. +It defaults to +.Pa /var/db/blocklistd.db . +.It Fl d +Normally, +.Nm +disassociates itself from the terminal unless the +.Fl d +flag is specified, in which case it stays in the foreground. +.It Fl f +Truncate the state database and flush all the rules named +.Ar rulename +are deleted by invoking the control script as: +.Bd -literal -offset indent +control flush +.Ed +.It Fl P Ar sockpathsfile +A file containing a list of pathnames, one per line that +.Nm +will create sockets to listen to. +This is useful for chrooted environments. +.It Fl R Ar rulename +Specify the default rule name for the packet filter rules, usually +.Dv blacklistd . +.It Fl r +Re-read the firewall rules from the internal database, then +remove and re-add them. +This helps for packet filters that do not retain state across reboots. +.It Fl s Ar sockpath +Add +.Ar sockpath +to the list of Unix sockets +.Nm +listens to. +.It Fl t Ar timeout +The interval in seconds +.Nm +polls the state file to update the rules. +.It Fl v +Cause +.Nm +to print +diagnostic messages to +.Dv stdout +instead of +.Xr syslogd 8 . +.El +.Sh SIGNAL HANDLING +.Nm +deals with the following signals: +.Bl -tag -width "USR2" +.It Dv HUP +Receipt of this signal causes +.Nm +to re-read the configuration file. +.It Dv INT , Dv TERM & Dv QUIT +These signals tell +.Nm +to exit in an orderly fashion. +.It Dv USR1 +This signal tells +.Nm +to increase the internal debugging level by 1. +.It Dv USR2 +This signal tells +.Nm +to decrease the internal debugging level by 1. +.El +.Sh FILES +.Bl -tag -width /usr/libexec/blacklistd-helper -compact +.It Pa /usr/libexec/blacklistd-helper +Shell script invoked to interface with the packet filter. +.It Pa /etc/blacklistd.conf +Configuration file. +.It Pa /var/db/blocklistd.db +Database of current connection entries. +.It Pa /var/run/blocklistd.sock +Socket to receive connection notifications. +.El +.Sh SEE ALSO +.Xr blacklistd.conf 5 , +.Xr blacklistctl 8 , +.Xr ipf 8 , +.Xr ipfw 8 , +.Xr pfctl 8 , +.Xr syslogd 8 +.Sh NOTES +The +.Nm +daemon has been renamed to +.Xr blocklistd 8 . +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/bin/blacklistd.conf.5 b/contrib/blocklist/bin/blacklistd.conf.5 new file mode 100644 index 000000000000..e775d30e7e8e --- /dev/null +++ b/contrib/blocklist/bin/blacklistd.conf.5 @@ -0,0 +1,242 @@ +.\" $NetBSD: blocklistd.conf.5,v 1.7 2025/02/11 17:47:05 christos Exp $ +.\" +.\" Copyright (c) 2015, 2025 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 5, 2025 +.Dt BLACKLISTD.CONF 5 +.Os +.Sh NAME +.Nm blacklistd.conf +.Nd configuration file format for blacklistd +.Sh DESCRIPTION +The +.Nm +file contains configuration entries for +.Xr blacklistd 8 +in a fashion similar to +.Xr inetd.conf 5 . +Only one entry per line is permitted. +Every entry must have all fields populated. +Each field can be separated by a tab or a space. +Comments are denoted by a +.Dq # +at the beginning of a line. +.Pp +There are two kinds of configuration lines, +.Va [local] +and +.Va [remote] . +By default, configuration lines are +.Va [local] , +i.e. the address specified refers to the addresses on the local machine. +To switch to between +.Va [local] +and +.Va [remote] +configuration lines you can specify the stanzas: +.Dq [local] +and +.Dq [remote] . +.Pp +On +.Va [local] +and +.Va [remote] +lines +.Dq * +means use the default, or wildcard match. +In addition, for +.Va [remote] +lines +.Dq = +means use the values from the matched +.Va [local] +configuration line. +.Pp +The first four fields, +.Va location , +.Va type , +.Va proto , +and +.Va owner +are used to match the +.Va [local] +or +.Va [remote] +addresses, whereas the last 3 fields +.Va name , +.Va nfail , +and +.Va disable +are used to modify the filtering action. +.Pp +The first field denotes the +.Va location +as an address, mask, and port. +The syntax for the +.Va location +is: +.Bd -literal -offset indent + [
|][/][:] +.Ed +.Pp +The +.Dv address +can be an IPv4 address in numeric format, an IPv6 address +in numeric format and enclosed by square brackets, or an interface name. +Mask modifiers are not allowed on interfaces because interfaces +can have multiple addresses in different protocols where the mask has a +different size. +.Pp +The +.Dv mask +is always numeric, but the +.Dv port +can be either numeric or symbolic. +.Pp +The second field is the socket +.Va type : +.Dv stream , +.Dv dgram , +or numeric. +The third field is the +.Va protocol : +.Dv tcp , +.Dv udp , +.Dv tcp6 , +.Dv udp6 , +or numeric. +The fourth field is the effective user +.Va ( owner ) +of the daemon process reporting the event, +either as a username or a userid. +.Pp +The rest of the fields control the behavior of the filter. +.Pp +The +.Va name +field, is the name of the packet filter rule to be used. +If the +.Va name +starts with a hyphen +.Pq Dq - , +then the default rulename is prepended to the given name. +If the +.Dv name +contains a +.Dq / , +the remaining portion of the name is interpreted as the mask to be +applied to the address specified in the rule, causing a single rule violation to +block the entire subnet for the configured prefix. +.Pp +The +.Va nfail +field contains the number of failed attempts before access is blocked, +defaulting to +.Dq * +meaning never, and the last field +.Va duration +specifies the amount of time since the last access that the blocking +rule should be active, defaulting to +.Dq * +meaning forever. +The default unit for +.Va duration +is seconds, but one can specify suffixes for different units, such as +.Dq m +for minutes +.Dq h +for hours and +.Dq d +for days. +.Pp +Matching is done first by checking the +.Va [local] +rules individually, in the order of the most specific to the least specific. +If a match is found, then the matching +.Va [remote] +rules are applied. +The +.Va name , +.Va nfail , +and +.Va duration +fields can be altered by the +.Va [remote] +rule that matched. +.Pp +The +.Va [remote] +rules can be used for allowing specific addresses, changing the mask +size (via +.Va name ) , +the rule that the packet filter uses (also via +.Va name ) , +the number of failed attempts (via +.Va nfail ) , +or the duration to block (via +.Va duration ) . +.Sh FILES +.Bl -tag -width /etc/blacklistd.conf -compact +.It Pa /etc/blacklistd.conf +Configuration file. +.El +.Sh EXAMPLES +.Bd -literal -offset 8n +# Block ssh, after 3 attempts for 6 hours on the bnx0 interface +[local] +# location type proto owner name nfail duration +bnx0:ssh * * * * 3 6h +[remote] +# Never block 1.2.3.4 +1.2.3.4:ssh * * * * * * +# Never block the example IPv6 subnet either +[2001:db8::]/32:ssh * * * * * * +# For addresses coming from 8.8.0.0/16 block whole /24 networks instead +# individual hosts, but keep the rest of the blocking parameters the same. +8.8.0.0/16:ssh * * * /24 = = +.Ed +.Sh SEE ALSO +.Xr blacklistctl 8 , +.Xr blacklistd 8 +.Sh NOTES +The +.Nm +file has been renamed to +.Xr blocklistd.conf 8 . +.Sh HISTORY +.Nm +first appeared in +.Nx 7 . +.Fx +support for +.Nm +was implemented in +.Fx 11 . +.Sh AUTHORS +.An Christos Zoulas diff --git a/contrib/blocklist/lib/libblacklist.3 b/contrib/blocklist/lib/libblacklist.3 new file mode 100644 index 000000000000..5bc093c38f79 --- /dev/null +++ b/contrib/blocklist/lib/libblacklist.3 @@ -0,0 +1,188 @@ +.\" $NetBSD: libblocklist.3,v 1.7 2025/02/05 20:14:30 christos Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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 February 5, 2025 +.Dt LIBBLACKLIST 3 +.Os +.Sh NAME +.Nm blacklist_open , +.Nm blacklist_open2 , +.Nm blacklist_close , +.Nm blacklist_r , +.Nm blacklist , +.Nm blacklist_sa , +.Nm blacklist_sa_r +.Nd Blacklistd notification library +.Sh LIBRARY +.Lb libblacklist +.Sh SYNOPSIS +.In blacklist.h +.Ft struct blacklist * +.Fn blacklist_open "void" +.Ft struct blacklist * +.Fn blacklist_open2 "void (*logger)(int, struct syslog_data *, va_list)" +.Ft void +.Fn blacklist_close "struct blacklist *cookie" +.Ft int +.Fn blacklist "int action" "int fd" "const char *msg" +.Ft int +.Fn blacklist_r "struct blacklist *cookie" "int action" "int fd" "const char *msg" +.Ft int +.Fn blacklist_sa "int action" "int fd" "const struct sockaddr *sa" "socklen_t salen" "const char *msg" +.Ft int +.Fn blacklist_sa_r "struct blacklist *cookie" "int action" "int fd" "const struct sockaddr *sa" "socklen_t salen" "const char *msg" +.Sh DESCRIPTION +These functions can be used by daemons to notify +.Xr blacklistd 8 +about successful and failed remote connections so that blacklistd can +block or release port access to prevent Denial of Service attacks. +.Pp +The function +.Fn blacklist_open +creates the necessary state to communicate with +.Xr blacklistd 8 +and returns a pointer to it, or +.Dv NULL +on failure. +.Pp +The function +.Fn blacklist_open2 +is similar to +.Fn blacklist_open +but allows a +.Fa logger +to be specified. +If the +.Fa logger +is +.Dv NULL , +then no logging is performed. +.Pp +The +.Fn blacklist_close +function frees all memory and resources used. +.Pp +The +.Fn blacklist +function sends a message to +.Xr blacklistd 8 , +with an integer +.Ar action +argument specifying the type of notification, +a file descriptor +.Ar fd +specifying the accepted file descriptor connected to the client, +and an optional message in the +.Ar msg +argument. +.Pp +The +.Ar action +parameter can take these values: +.Bl -tag -width ".Dv BLACKLIST_ABUSIVE_BEHAVIOR" +.It Dv BLACKLIST_AUTH_FAIL +There was an unsuccessful authentication attempt. +.It Dv BLACKLIST_AUTH_OK +A user successfully authenticated. +.It Dv BLACKLIST_ABUSIVE_BEHAVIOR +The sending daemon has detected abusive behavior +from the remote system. +The remote address should +be blocked as soon as possible. +.It Dv BLACKLIST_BAD_USER +The sending daemon has determined the username +presented for authentication is invalid. +The +.Xr blacklistd 8 +daemon compares the username to a configured list of forbidden +usernames and +blocks the address immediately if a forbidden username matches. +(The +.Dv BLACKLIST_BAD_USER +support is not currently available.) +.El +.Pp +The +.Fn blacklist_r +function is more efficient because it keeps the blacklist state around. +.Pp +The +.Fn blacklist_sa +and +.Fn blacklist_sa_r +functions can be used with unconnected sockets, where +.Xr getpeername 2 +will not work, the server will pass the peer name in the message. +.Pp +In all cases the file descriptor passed in the +.Fa fd +argument must be pointing to a valid socket so that +.Xr blacklistd 8 +can establish ownership of the local endpoint +using +.Xr getsockname 2 . +.Pp +By default, +.Xr syslogd 8 +is used for message logging. +The internal +.Fn bl_create +function can be used to create the required internal +state and specify a custom logging function. +.Sh RETURN VALUES +The function +.Fn blacklist_open +returns a cookie on success and +.Dv NULL +on failure setting +.Dv errno +to an appropriate value. +.Pp +The functions +.Fn blacklist , +.Fn blacklist_sa , +and +.Fn blacklist_sa_r +return +.Dv 0 +on success and +.Dv \-1 +on failure setting +.Dv errno +to an appropriate value. +.Sh NOTES +The +.Lb libblacklist +has been renamed to +.Xr libblocklist 3 . +.Sh SEE ALSO +.Xr blacklistd.conf 5 , +.Xr blacklistd 8 +.Sh AUTHORS +.An Christos Zoulas diff --git a/lib/libblacklist/Makefile b/lib/libblacklist/Makefile index 07c770883eab..cac023d69bb7 100644 --- a/lib/libblacklist/Makefile +++ b/lib/libblacklist/Makefile @@ -18,14 +18,13 @@ CFLAGS+=-I${BLOCKLIST_DIR}/include -I${BLOCKLIST_DIR}/port \ SRCS= old_bl.c blacklist.c vsyslog_r.c INCS= blacklist.h -MAN= libblocklist.3 - -MLINKS+=libblocklist.3 libblacklist.3 \ - libblocklist.3 blacklist_open.3 \ - libblocklist.3 blacklist_close.3 \ - libblocklist.3 blacklist.3 \ - libblocklist.3 blacklist_r.3 \ - libblocklist.3 blacklist_sa.3 \ - libblocklist.3 blacklist_sa_r.3 +MAN= libblacklist.3 + +MLINKS= libblacklist.3 blacklist_open.3 \ + libblacklist.3 blacklist_close.3 \ + libblacklist.3 blacklist.3 \ + libblacklist.3 blacklist_r.3 \ + libblacklist.3 blacklist_sa.3 \ + libblacklist.3 blacklist_sa_r.3 .include diff --git a/usr.sbin/blacklistctl/Makefile b/usr.sbin/blacklistctl/Makefile index 8a01f52926a7..41c5f44b072b 100644 --- a/usr.sbin/blacklistctl/Makefile +++ b/usr.sbin/blacklistctl/Makefile @@ -6,8 +6,7 @@ PACKAGE= blocklist PROG= blacklistctl SRCS= blacklistctl.c conf.c state.c support.c old_internal.c \ sockaddr_snprintf.c pidfile.c strtoi.c popenve.c -MAN= blocklistctl.8 -MLINKS= blocklistctl.8 blacklistctl.8 +MAN= blacklistctl.8 LDFLAGS+=-L${LIBBLACKLISTDIR} LIBADD+= blocklist util diff --git a/usr.sbin/blacklistd/Makefile b/usr.sbin/blacklistd/Makefile index b4ba4ca2f9ad..490b12d46968 100644 --- a/usr.sbin/blacklistd/Makefile +++ b/usr.sbin/blacklistd/Makefile @@ -7,9 +7,7 @@ CONFS= blacklistd.conf PROG= blacklistd SRCS= blacklistd.c conf.c run.c state.c support.c old_internal.c \ sockaddr_snprintf.c pidfile.c strtoi.c popenve.c vsyslog_r.c -MAN= blocklistd.8 blocklistd.conf.5 *** 6 LINES SKIPPED *** From nobody Tue Oct 14 04:37:01 2025 X-Original-To: dev-commits-src-branches@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 4cm1dn6P0rz6Bh5c; Tue, 14 Oct 2025 04:37: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cm1dn5Szgz3Q48; Tue, 14 Oct 2025 04:37:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yZxOHH4WQR1iGARKexi9NcyWwfnH0UVilW6S+XO09+Q=; b=rGm5d4V7HLUG1ZXF7Wi+OzWe6YLSGs/wrecT8PVw3KDp3b8s9V96aU7IwjUElVIIJpEVk+ 7ET8Bkpm/6ZMT/r4dJEs5DIyXNJJERp3dgj9jKvkcTgmaZogtjVZawQt4cugC8kjbwHmaB knCNCCR/l0KTVOVQ8LbyceWv3dsL8OAM2XpaI39HAgNDjZd5A2y6du2aJK9OCTsFTT7i8/ JE2hO2KRiuDhsq8CRYa7RNeMW4/98yi5JUY8G6Et0CgJ/kpXj2y0XYRkwCl3i/C+ruUCyg iHa5EzRJkoOsvelTEh2yR0qKWU+fA9G9l9sdP/6BzGL48s5WZBmKwBOQCOjVkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760416621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yZxOHH4WQR1iGARKexi9NcyWwfnH0UVilW6S+XO09+Q=; b=NsZc64ZRY2bUXsMQPFpBTLAeQci7nfq88tog8dY88oPvfUvESpI6qwqFTLKjEcnvTWqq6+ /fjOBpD8Y+U6zYITgMVRrf8jqw8htHToYgwLMu+gvx6MXngYo5ra7YgdD0I/Vw2lrxzNFj 80Q9ZDMEJN6OxInmKp0B5WDBA4Yoqmnpjt/2OAI3ISYqU5oeX0UgyYas2GacoVahUtA323 BZnjNNjUH6Z7nPaYkNB4Yk+bBlxn8R9XpcqxTS2U5rzAo7SIkULYQHRwgbccoT70/fxHyZ 53xdvdbzoNmeosiD4ueiWzPkJeqYWK7KwKJ6c1AdAnyhur3wNonJhTzU7OnEQw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760416621; a=rsa-sha256; cv=none; b=BIeN19Em6pjqStfAjXNotW/cQ7zWUpcx4LTy+0TkvgRTyNBnpicqSN8zE/N/SXFDvvkCqd bfjC1ZeTdFJ9DcszQEX/+9tr+CjWtOvbDf/H9eXoDjk0BEvcoRqfShqpZEZY5w2YfRRYKh KkMYl0bvzAuUDUohWvkK8eCH4ZZHrV7Gsd6AL9PA1rt3cFAlvAxxmrhYsPlLb/ELs9t+cb GGcbS3hMA5OwVArD1xuU6as3qhDkE3+TOgydAeTjpjBe7aS/CczwA8uWiGjGzy0hw4aB5s npzJMYhKZFBmi52B+mSfFI/LqjP0ibB7Oo7Z/62NITR84S0M9TZ8Z96cZUxF2A== 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 4cm1dn3gvrzdZN; Tue, 14 Oct 2025 04:37: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 59E4b1l1038239; Tue, 14 Oct 2025 04:37:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59E4b1pQ038236; Tue, 14 Oct 2025 04:37:01 GMT (envelope-from git) Date: Tue, 14 Oct 2025 04:37:01 GMT Message-Id: <202510140437.59E4b1pQ038236@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: bf591ddc87aa - releng/15.0 - blocklist: Add an UPDATING entry List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: bf591ddc87aa0fdc0fff279fbef3d3570ea56666 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=bf591ddc87aa0fdc0fff279fbef3d3570ea56666 commit bf591ddc87aa0fdc0fff279fbef3d3570ea56666 Author: Jose Luis Duran AuthorDate: 2025-10-13 14:35:12 +0000 Commit: Colin Percival CommitDate: 2025-10-14 04:36:45 +0000 blocklist: Add an UPDATING entry Add an UPDATING entry about the renaming of blocklist. Approved by: re (cperciva) Approved by: emaste (mentor) Fixes: 7238317403b9 ("blocklist: Rename blacklist to blocklist") MFC after: 1 day (cherry picked from commit ffa8165009365ff93050626d880f2d1d6aacc31a) (cherry picked from commit f22ca25404e795aa08efc35d8cdbb5b44304650f) --- UPDATING | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/UPDATING b/UPDATING index 6e893f07df61..4b14159ceb4a 100644 --- a/UPDATING +++ b/UPDATING @@ -17,6 +17,12 @@ and/or ports. can install the ftp/freebsd-ftpd port. pkgbase users should remove the orphaned FreeBSD-ftpd package. +20251012: + Blacklist has been renamed upstream to Blocklist. If you have it + configured, rename all configuration files, firewall anchors or + sentinel files to reflect the new nomenclature. Old setups will + continue to work emitting a warning. + 20251002: Audio-related utilities including mixer(8) and virtual_oss(8) have moved to the new FreeBSD-sound package. If you have set-optional or From nobody Tue Oct 14 14:16:16 2025 X-Original-To: dev-commits-src-branches@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 4cmGV83N1Zz6CWF0; Tue, 14 Oct 2025 14:16: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmGV82tz9z3XQn; Tue, 14 Oct 2025 14:16:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NWSx4KCArHqAvBT+5ZA/NJOX+hR4d1WPGSZv0fzn+pc=; b=MAEkpYKPzre31rFw/qvH9NJOOjrcsx+5LSnAF5aBqShY/icWFQI0HW9D4jhb7FRCQ6xx/K iMvOMyL535rbJ/tzAB6bbZ2IMQNvCV3BqL0Kvd/yCna9VdszB9OAjOrf1Eu2xarvoax477 HVX71IsNm5Yo6sH8tD3zoMBaIrakMzo7xNl3OAv0mdafWMIG7NLI1M8BaNd+Ew7TIW9DmY y7MCo64E2LdrgDC2a+mDK38PqKiSzdc+mqnxgNN2rTgXminI5bJSJQMwED+XeaNG4ciXol 4Rl+GLtzk9oOJ/l+ufSK8y5/JG+u9rIAy3VIFNiu9xkTYSJntLvRouN/hIORHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NWSx4KCArHqAvBT+5ZA/NJOX+hR4d1WPGSZv0fzn+pc=; b=KPhQnVRRzzBXZiion/WafvYTDy1xGvL5KPCXbtck7/tiKESUhK261+l6/X9lcE0xtWu+XO 2SDyQf6CY7GwsO2dl2eiLse3bP5D7/pdcg08WSdMVD82MPmgC+SqXVFmcFbUit6DRh25hy 2axBM90ZsZZDJrcFpNJ9/zqCnWi5NcEVb8iBV6XNrQ+YOYNqK+M7I4OHpjtXzZXpxKMvXj 9SjABMlYKHOWOiPzpkeTePjyvZu66+wBi2Oom/MMpvEZ4TG97QbFbgXJfAiDmO2D6XkSrc mBaxMkBNsayLzQZY1AGSHdcWQvU0WD4lFhEPbCsq6EJ3q/pEHOGYmMSBe4vhbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760451376; a=rsa-sha256; cv=none; b=cmJmQghVfTzBB/Qgth+nr1BS1B393U/bpliXmFtNwFirEDx5nfZD0W1qxaUGBjD2J0UKDl TTH7I5pDcfDlCcD6+GB6wpFOkh5WEiUMkwcBhLg1j0PNIuNdZDsj408uSOYZFyv/mg8+g2 2HcU5GXJ4M5borBF46/9DUiXkJPVwCTmW5UFdgrWhTX1k1CTtxOHCrONKnPgGmUcAGE1uz ll5xo7Hdi1MKhsyaQXTbNlvdc6BvbypLq77ZTGMZOO/smFeVOtR6M70unhaLUra8lPjSIz OunEWcqVIIomE9bjSYuqUn44Tlt9u5Dzb5C58tXqp00hH9A/SOqMGcAyQ4xYQQ== 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 4cmGV82VDjzwDs; Tue, 14 Oct 2025 14:16: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 59EEGGP3028160; Tue, 14 Oct 2025 14:16:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EEGGs5028157; Tue, 14 Oct 2025 14:16:16 GMT (envelope-from git) Date: Tue, 14 Oct 2025 14:16:16 GMT Message-Id: <202510141416.59EEGGs5028157@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ahmad Khalifa Subject: git: d06e31d4a762 - stable/13 - libm: remainder: make sure x is zero List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d06e31d4a7622b535d903a1b84ce59e211ca2b18 Auto-Submitted: auto-generated The branch stable/13 has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=d06e31d4a7622b535d903a1b84ce59e211ca2b18 commit d06e31d4a7622b535d903a1b84ce59e211ca2b18 Author: Ahmad Khalifa AuthorDate: 2025-10-10 09:30:52 +0000 Commit: Ahmad Khalifa CommitDate: 2025-10-14 14:01:59 +0000 libm: remainder: make sure x is zero Make sure the entirety of x is zero before flipping the sign bit. Otherwise the sign would be wrong for small values of x when x is negative and |n*y| > |x| Reported by: alfredo PR: 251091 Reviewed by: kargl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53023 (cherry picked from commit 25cca51ed294890d20a3c0290814cd26875db686) --- lib/msun/src/e_remainder.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/msun/src/e_remainder.c b/lib/msun/src/e_remainder.c index bd1ce8950619..5b71088911a2 100644 --- a/lib/msun/src/e_remainder.c +++ b/lib/msun/src/e_remainder.c @@ -66,8 +66,8 @@ remainder(double x, double p) if(x>=p_half) x -= p; } } - GET_HIGH_WORD(hx,x); - if ((hx&0x7fffffff)==0) hx = 0; + EXTRACT_WORDS(hx, lx, x); + if (((hx&0x7fffffff)|lx) == 0) hx = 0; SET_HIGH_WORD(x,hx^sx); return x; } From nobody Tue Oct 14 14:16:17 2025 X-Original-To: dev-commits-src-branches@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 4cmGV966QZz6CWMk; Tue, 14 Oct 2025 14:16: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmGV948Mlz3XJS; Tue, 14 Oct 2025 14:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451377; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LzBN+bB7wuIvKpx0Lh608KUykJ1SrMu5dCTowGe4uuM=; b=owVpP5J6kknGHBgZL6aIyGflprkYGkf/I86q9ejZMAtyvS7L/Tj5QenODDJHlH5ukwuAh0 ot8DCY20K9V4LBMde+53ZzyG+RkQZpY35ot7a3DQon9cQb1YiuqdCmk+TfSogurygq6DAB Xfq32zRCf0AWtAstD6wxWgT5hVhoYIWFyrULniQagaVM/0kjEtyZvIjsOJ6y+wak4mOtQt dWMvZbfWpnaRcNBqhmkYY4s/2rPEVfKAokZk6UoCX23NJdOziSBlJMZyao9zm6bI6lyp54 7thqqzpSUf/+nWSCOTcjOKDPcCHp45a4pny8ddog2WDqIbg/mAx3hPRCycnoEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451377; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LzBN+bB7wuIvKpx0Lh608KUykJ1SrMu5dCTowGe4uuM=; b=T5ddj37b6agtC76kRdV716jEyRz6IVs+umKZ/4s6FXiiygO5we9xHsapFrSa2Mu+7PJDaW BqMoorOHzpaEbGUZ8yRl4ZZh/fAOei5Beg4NpR1xQcKU4vWdVC+LuyxIYma38Z3HyXvQbv eqKS42nahFZd06w8BbiLxvllC1e5QpVp2Joy0/Wij8uFqQtGP1ZxiDmchMK90lp0p8egsa IG7ADc6qAr6BxT742sm028DCaUXV3tVW9T1rH+ryCKfqxK+BXIUzO046d1wlfHw9t5fjuK TVfZUjhZni2Kj1//1jXiBPSjzNGqycfodRV6E7iUdzn0zHeDuClMS5TdIa7U1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760451377; a=rsa-sha256; cv=none; b=tycmvqaJjjS1+S3cPp+s+JR7BHnvhfCZndDdncwAYE3P6mXeLLkP3dAHGGOwo4qXaVylrA i0AAjRMgw00A2B1484C0ouMFQQbEy73nEyM2Kb76RiRhCUyFisy9mb13s+lhhtgADul3t1 vZ/v2fo818sN4qNFk00WHiLwIfgO62Oe5QC60S4ahAr7s1jfd15FopH2SBfzQsjcd7bxpV X+KGb5qBy2RX9bNUnrXkU9FGhNufWVvsPiqHHMrAMXn7dIiitw/DF3+duct/Cb5m0oIDc3 7l/Aa5/hKG/j4RTlRTCFdHaEu1D7wx4VfqW8FqKafJCdtlQVld4NC/Xn9gSZ8Q== 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 4cmGV93Yy2zvtK; Tue, 14 Oct 2025 14:16: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 59EEGHm4028210; Tue, 14 Oct 2025 14:16:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EEGHJW028207; Tue, 14 Oct 2025 14:16:17 GMT (envelope-from git) Date: Tue, 14 Oct 2025 14:16:17 GMT Message-Id: <202510141416.59EEGHJW028207@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ahmad Khalifa Subject: git: 439909c48b0e - stable/14 - libm: remainder: make sure x is zero List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 439909c48b0e8b0e8dda03b9a359b73dcabb546e Auto-Submitted: auto-generated The branch stable/14 has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=439909c48b0e8b0e8dda03b9a359b73dcabb546e commit 439909c48b0e8b0e8dda03b9a359b73dcabb546e Author: Ahmad Khalifa AuthorDate: 2025-10-10 09:30:52 +0000 Commit: Ahmad Khalifa CommitDate: 2025-10-14 14:00:19 +0000 libm: remainder: make sure x is zero Make sure the entirety of x is zero before flipping the sign bit. Otherwise the sign would be wrong for small values of x when x is negative and |n*y| > |x| Reported by: alfredo PR: 251091 Reviewed by: kargl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53023 (cherry picked from commit 25cca51ed294890d20a3c0290814cd26875db686) --- lib/msun/src/e_remainder.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/msun/src/e_remainder.c b/lib/msun/src/e_remainder.c index 406f12c14c2f..057da0e3d990 100644 --- a/lib/msun/src/e_remainder.c +++ b/lib/msun/src/e_remainder.c @@ -65,8 +65,8 @@ remainder(double x, double p) if(x>=p_half) x -= p; } } - GET_HIGH_WORD(hx,x); - if ((hx&0x7fffffff)==0) hx = 0; + EXTRACT_WORDS(hx, lx, x); + if (((hx&0x7fffffff)|lx) == 0) hx = 0; SET_HIGH_WORD(x,hx^sx); return x; } From nobody Tue Oct 14 14:16:18 2025 X-Original-To: dev-commits-src-branches@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 4cmGVC0Vqrz6CWKk; Tue, 14 Oct 2025 14:16: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmGVB516xz3XGL; Tue, 14 Oct 2025 14:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ld+KEh5dOk95GHS0IwWB6Ix76Yofh4XUoIAIr1KFVw=; b=qz70R6YEfRAi5vNfprIj3GoLGYcl45S/Rq41WMgOqYGJSiF0MY12XKHfD25dfKR8pL2RsC hGwd0RubZ4eWkxthV4bBB/bMf9igoQux8RK6webpsuYe1R4QSENIVSibh1rdohf8tcSFll DQCHFrtI1AkCZ8OC2chFchuOqjQ5gRga4HIkn1URRh+QpiN5atv6zk2mvxwFCgDnIIdkEd SFDaGRtI508PbK+tgmS5iF9gELh9+a+cGTv8DVGZicKl6Rs3DQJ6APC7+Fi7YKjeLXiSn+ 5xztUIoRjG8gdjr+rmCLUg88erBcds8vEMmwxjTTm7I/9ZafAOM0mV6wuFq05g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760451378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ld+KEh5dOk95GHS0IwWB6Ix76Yofh4XUoIAIr1KFVw=; b=Uc7QW9/VibuNJiAZwfZISFiZ4g4vXWOfe7AZZ/LkXJDlpYsSofjTOCSuo2TsabqhhAKgqM vBxra6hMPvJY4qQQWyg2KNDeEvEeYMfs34nZVq0MFc9cv/km2eZvDTky73kgb+rZfuwBMq XmWNwZHAfy55/UA3ObLWUCLhekxLHG14VHMyFLnifZHX/92Kpsjrp9Mo4kMPbHTNYqAne7 pQCYCwW4GTX9yYz6JOjiJJyPFrYo+1ciTYPzYT8w9tXvIN6Gl1wK5xzAE9hbnt5uXINmrt U/j6yNnS3FeGl3QVAke5obpEGQhL2SKjXuAuhocfueNMuFZJ9xu8s5RsTmaS8g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760451378; a=rsa-sha256; cv=none; b=v8tPxJ9b+Wgr7nWvm4aYWxG/unv0qrwYfYnEFe5T29c+akVbeSd9P+u3XPnUxYPqNl+2qd rEtpf3umYZGoxPO4vsdh/SlMNoY8Ik29Yqx7ZLSuaTbdV3dDsBH+Xk4St3TM+txntYNkpc esVH6kFVKK8UfzagEOhPkPSVBhAr8yoxsXVkBK+h7i0beDqavdvmFOoTmACx2Oh/S6zP5c bpByO2vxUIuILJhlHqF3eRr6bGsItUeD6ejTkiUNN5htcTFQypJ2EwEEChYVZl3Oqbosn7 f+haRBOefS3Om/ybeG/xh/d8X4s6FzsKHrXP0fn/mjTgNHnSUWHEaGnNVxtOcw== 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 4cmGVB4cPGzwPM; Tue, 14 Oct 2025 14:16: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 59EEGIrw028256; Tue, 14 Oct 2025 14:16:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EEGIYX028253; Tue, 14 Oct 2025 14:16:18 GMT (envelope-from git) Date: Tue, 14 Oct 2025 14:16:18 GMT Message-Id: <202510141416.59EEGIYX028253@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org, dev-commits-src-branches@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ahmad Khalifa Subject: git: 583e976d6d09 - stable/15 - libm: remainder: make sure x is zero List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 583e976d6d09770a6299a19603d4f0dbaa562cac Auto-Submitted: auto-generated The branch stable/15 has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=583e976d6d09770a6299a19603d4f0dbaa562cac commit 583e976d6d09770a6299a19603d4f0dbaa562cac Author: Ahmad Khalifa AuthorDate: 2025-10-10 09:30:52 +0000 Commit: Ahmad Khalifa CommitDate: 2025-10-14 13:42:31 +0000 libm: remainder: make sure x is zero Make sure the entirety of x is zero before flipping the sign bit. Otherwise the sign would be wrong for small values of x when x is negative and |n*y| > |x| Reported by: alfredo PR: 251091 Reviewed by: kargl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53023 (cherry picked from commit 25cca51ed294890d20a3c0290814cd26875db686) --- lib/msun/src/e_remainder.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/msun/src/e_remainder.c b/lib/msun/src/e_remainder.c index a5fb7141d01a..cc6cd320073e 100644 --- a/lib/msun/src/e_remainder.c +++ b/lib/msun/src/e_remainder.c @@ -64,8 +64,8 @@ remainder(double x, double p) if(x>=p_half) x -= p; } } - GET_HIGH_WORD(hx,x); - if ((hx&0x7fffffff)==0) hx = 0; + EXTRACT_WORDS(hx, lx, x); + if (((hx&0x7fffffff)|lx) == 0) hx = 0; SET_HIGH_WORD(x,hx^sx); return x; } From nobody Tue Oct 14 15:01:06 2025 X-Original-To: dev-commits-src-branches@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 4cmHTt3HSnz6CZH4; Tue, 14 Oct 2025 15:01: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmHTt2LLbz3g28; Tue, 14 Oct 2025 15:01:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760454066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYB0lHDlxDnRVYnjFGLn2tYoFNeBhfzFtjwpyXw6Njg=; b=b8eszHHBtDGPEPH6bnJ9Z2qf9Uu+k/K9WfGox5YoQDIVxbQaR3EYjR+HrfKC4yQFViFJh0 RFvi2Xk8dLoN4ky7WqTH5RchGLBg9o+BPGqrcQUo1XJNaD3ut/s0XojSGADgyT1rGB3rG1 f7S78qVV4Iuj4/sIWnL3O3S+V1/1fqBVqtI2rChmQUeRV3NeZNko8DYWZFThQNrW7plXtr UM+WXhmhprtaC+I306kQOn9aB5waSiMfTvZZo12vEEcu1TrPgXmioZ6idT3HJ1WHDZLK7t L8WkyJu5LvXoY56EFBIwPw5a21QfjkjLoquyXVWiKYVIHqNsrpF9UlANYWTTmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760454066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYB0lHDlxDnRVYnjFGLn2tYoFNeBhfzFtjwpyXw6Njg=; b=J7xWoaw1/67AU5/Mf+dIsZ4j1iUvJzwDAumTnMM+bPijEaUlIUMIk/UaQ4VcPaa2zXOh+s spICTTr3AOdQ9MvIh8ZsMa0jsImFCLG+dguCnxT+zELcpALEYPci/nnBYqSTQtYR/lYB9I bbGefXe8JszgKdB7rwKj/mZ3Z8BT0WjE66xlBWS8TMeSJr7g0B+TpixRyWpLwLTbzor7SE bumpmHkcYCXIWs5dlJuXouBz/7V/gu0GnY1lUHSylfKxfboDRpbjA//tvwJdY+/gYjNS+N P2XQDuZqZmIWRz7xRzYbOav63iRgJnnagmuppH+nlNDKMxxBjjQQxG2oLX4RWg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760454066; a=rsa-sha256; cv=none; b=Nefd12kbJZHf1e802s6Wx4jxlUCBkzdvtPmKIp2VDgr3fXnclmTl3025/FNibKjziOxVB/ ZUO21Vq7Qhv/iCpQaEw6I2JxmvMM4IHLbYBj7FiIpDrsmWG5IZQ52G2nXqc39FeOQ39Cv0 EXqPtON9Z/aMq3R3R/AjblyIwN9R01w0ZbpP6X6dcuU31pc3aRY/8bft66OC05pQouAMlI qybhW5rnWrD6IGppRDe8fWSPgcnoWcncoYbgLDJCQUUzd1dfQN8gNyGA4zNnAp6309R91w +zAiOjcTdx1FzLJKMLGRMgybrvblLyGyDGVm1P/yam1iK8GkEZ30GOoeDuNzog== 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 4cmHTt1gKvzxN2; Tue, 14 Oct 2025 15:01: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 59EF16O7019252; Tue, 14 Oct 2025 15:01:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EF16of019249; Tue, 14 Oct 2025 15:01:06 GMT (envelope-from git) Date: Tue, 14 Oct 2025 15:01:06 GMT Message-Id: <202510141501.59EF16of019249@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: dbd1e3229643 - stable/15 - bsdinstall: Tweak pkgbase/dist set labels List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: dbd1e32296437c9b2e3fb73400e59fda4adc3e64 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=dbd1e32296437c9b2e3fb73400e59fda4adc3e64 commit dbd1e32296437c9b2e3fb73400e59fda4adc3e64 Author: Ed Maste AuthorDate: 2025-10-09 17:01:36 +0000 Commit: Ed Maste CommitDate: 2025-10-14 15:00:58 +0000 bsdinstall: Tweak pkgbase/dist set labels Have the button labels refer to the artifact type directly (distribution sets / packages), and use "Tech Preview" as packaged base is no longer experimental. Reviewed by: ivy, cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52999 (cherry picked from commit abd9424590ba37ac10e92723ad6428f0448024c1) --- usr.sbin/bsdinstall/scripts/auto | 4 ++-- usr.sbin/bsdinstall/scripts/jail | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto index 61d52065af2a..8058b1a41dbf 100755 --- a/usr.sbin/bsdinstall/scripts/auto +++ b/usr.sbin/bsdinstall/scripts/auto @@ -209,9 +209,9 @@ if [ ! -f $BSDINSTALL_DISTDIR/MANIFEST ]; then PKGBASE=yes else bsddialog --backtitle "$OSNAME Installer" --title "Select Installation Type" \ - --yes-label "Traditional" --no-label "Packages (Experimental)" --yesno \ + --yes-label "Distribution Sets" --no-label "Packages (Tech Preview)" --yesno \ $PKGBASE_DEFAULT_BUTTON \ - "Would you like to install the base system using traditional distribution sets or packages (experimental)?" 0 0 + "Would you like to install the base system using traditional distribution sets or packages (technology preview)?" 0 0 if [ $? -eq 1 ]; then PKGBASE=yes fi diff --git a/usr.sbin/bsdinstall/scripts/jail b/usr.sbin/bsdinstall/scripts/jail index f2c7ef2b37de..3b1b2ee98fff 100755 --- a/usr.sbin/bsdinstall/scripts/jail +++ b/usr.sbin/bsdinstall/scripts/jail @@ -175,8 +175,8 @@ fi if [ ! "$nonInteractive" == "YES" ]; then bsddialog --backtitle "$OSNAME Installer" --title "Select Installation Type" \ - --yes-label "Traditional" --no-label "Packages (Experimental)" --yesno \ - "Would you like to install the base system using traditional distribution sets or packages (experimental)?" 0 0 + --yes-label "Distribution Sets" --no-label "Packages (Tech Preview)" --yesno \ + "Would you like to install the base system using traditional distribution sets or packages (technology preview)?" 0 0 if [ $? -eq 1 ]; then PKGBASE=yes fi From nobody Tue Oct 14 15:01:24 2025 X-Original-To: dev-commits-src-branches@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 4cmHVF2KFsz6CZYw; Tue, 14 Oct 2025 15:01: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmHVD6VLFz3gDw; Tue, 14 Oct 2025 15:01:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760454084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pyrcdkjaMIFpR3GLcfjyUHtxypd7/pkWlfUaF3iH+40=; b=pdmFIYtm1XUwfpoDanftneYFWdhqOa9iu1joTB0ZnbJBEuBqFp104x3icHe3h4xTbko0To WWyWg35UJIvwvDj4rkwx6wuvF/iHlaob2ym4X4ohcUnMnbKfZRIyLmWthDvuo49mUuEHrr wuvS8tLKELzqLDhnrNCej4c5hIEm6HjMAZrijLZZhwkF9Z9BDnzxRj3ro/R4T6+xeP5ZrL A0UY07tmW9+02m/TiLRh8HC47rr+nFHxrf/iu4AIkXstS6o2mDQgjau9kIOZFsrHFeG03M jcvGb3a878bIW5BKKfcs+vSHIFcjFqkGc52gvzQOmf3hWqaraZ2xiSD0BHQWNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760454084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pyrcdkjaMIFpR3GLcfjyUHtxypd7/pkWlfUaF3iH+40=; b=gv98A+iC5RJ/uechnOyfBqKslVHml56pZcdqeLDliXw/aAu+OYTkllzD7+EmsykCIuQig0 qOHZIzOo8ARzaCjLuGyY9Dw6lTjfVF7QENSBbOsia5QP7/ClST4WzhVLQeNC3psXtrj/Vc ko0EIqEjw+anx0/ewOtGQA+7L9dQ3dcWgN6dGl8e8dtPuHBJUb5rDsnwCe3Ow+wpDVjl+Q QJA9WCAsQc6IYh5v/By7m7OUz79mktpAjzIQZmv/TZP/9X0O37cF5+59X4o1CvRv7Ua+b0 xBTQcuykpksgDirKDuub8w1Z2BBegIO8Nf2ZQNlkAvcoebSmw1eIG0i3gjEocg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760454084; a=rsa-sha256; cv=none; b=HzF5UwOPYDB5TG+t1360ZThyD1N+cvGmIDqvkCobAqJH6fjoeSZJXg8vFRbTT9DzR/mqTu DO1WmhED/6jX5AT4coK9hyL3C+jhSwxBsKAyTddF9pHwnlVjn3kkR3R2wBf/0JTNbd4XJr vcsW24tFQrwY6uSgn32l9WuLVG4kJYb2D7+mp1off6u0ynoGm8gGjW0zsGORttu+AaaSpK /JWrng9VuhCFoImpZNTsAWeM4JifCI+8JcPBKP/CJCtOs2Pvrvc6Jr9hmylbiL+RlxkeOl Bjpui7oV0pibPxqnv1ULOmXrRCI8Zda540np6IvwOJJM9+iK8X0Izq5FhMB2DQ== 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 4cmHVD62rvzxPq; Tue, 14 Oct 2025 15:01: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 59EF1OUU020314; Tue, 14 Oct 2025 15:01:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EF1OO4020311; Tue, 14 Oct 2025 15:01:24 GMT (envelope-from git) Date: Tue, 14 Oct 2025 15:01:24 GMT Message-Id: <202510141501.59EF1OO4020311@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: eb895ad4c47e - stable/15 - Revert ".cirrus.yml: Reenable CI with pre-commit CI scripts" List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: eb895ad4c47e0f3ee77dff638159e21dee1c501a Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=eb895ad4c47e0f3ee77dff638159e21dee1c501a commit eb895ad4c47e0f3ee77dff638159e21dee1c501a Author: Ed Maste AuthorDate: 2025-09-19 14:09:48 +0000 Commit: Ed Maste CommitDate: 2025-10-14 15:00:58 +0000 Revert ".cirrus.yml: Reenable CI with pre-commit CI scripts" This reverts commit 676d64ee8327851063d92d0dd6a4ceee6b3a25e6. These tests take a combined 3h to run and are consuming our montly Cirrus-CI credits in short order, before failing. In the PR markj reports that the failure appeared somewhere between: good: da64f6e047b5f6cd9b9e8450d19072cb0b6e44d0 bad: b197d2abcb6895d78bc9df8404e374397aa44748 Unfortunately, even after we find the offending commit and have a fix we still do not have sufficient monthly compute credit. Disable these tests for now, pending a solution to both issues. PR: 289696 Reviewed by: ngie Differential Revision: https://reviews.freebsd.org/D52618 (cherry picked from commit 2b8bfdcad1f46076eaf40938634538fbcb13cb1c) --- .cirrus.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.cirrus.yml b/.cirrus.yml index 9ed08d750e2f..84efa04f1ccb 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -194,11 +194,13 @@ precommit_task: matrix: - name: amd64 smoke test using internal ci systems only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*' + trigger_type: manual env: TARGET: amd64 TARGET_ARCH: amd64 - name: aarch64 smoke test using internal ci systems only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*' + trigger_type: manual env: TARGET: arm64 TARGET_ARCH: aarch64 From nobody Tue Oct 14 20:46:46 2025 X-Original-To: dev-commits-src-branches@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 4cmR8k2nQtz6C2rF; Tue, 14 Oct 2025 20:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmR8k1wJVz3HvY; Tue, 14 Oct 2025 20:46:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760474806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QEXPacIufgb7xM/jHWW57ZSYUNIXUbzLqXlDVvleKA=; b=s5Lnu3+b9xpUCvdIM5h2B5ftOlJCpvK57JETdO/up/VRfmiobwn+WuNCVLFhaHq46j3UT7 npkIgnSPIy2AvrOeWyLOKE0uo+PTluRGfnQd4jSsquaAc8Q6Mt7r3SbP87Y7R4Ts2Tdrw9 KSEftWn/2OB2r5Frgu4+mDOzAADRCeCzgWXaMzG0xDJCfUvQ7EM+DGRVJ0rekseNU+xCpd 1mdlFrRQdxZU++chEq40e3B1gbgT7MedtVEehthhmeoYmoFXtwbj1vJzSyUYIW67p7dmWA AUlLOV/0sekL5IwIj1NP3vmctGgObrAo+zT0P+h9W06WqVr0UlcpMZJ4IaJJvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760474806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QEXPacIufgb7xM/jHWW57ZSYUNIXUbzLqXlDVvleKA=; b=gA5H+zq+XO0puM9eHMTEXPIG59uwem/UKB5j3sHPtqV3RmRbCUF2OQtZLVaga+tdeLDDoM lDX1mDA1RHAoiCfgP/3qBddOb16OvQzZPqK/Muz1fuZ744uHJ+j+dqy7LYX2GLoEk8p9aa Kmvx8qRnFeiirfQPjaqSlxozoNH95DSw8C2W2Ay3st1XwISf9OBSwHRcs4p+WOQmMXyJJJ s2ZskCqpMIAtO24eSzqlsehM9nTYff9QWZAGgcRcIL5+qxQziBP8bhcJqHv6W6tmG2I77Y lVmgKpQvbVwLqHJS3aehK5EcPNohaBfmOkBrBza/+94lPoV/fIZWYP+ymjafYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760474806; a=rsa-sha256; cv=none; b=mw5lRxP/mJax9gKhQsBve9rEV+xU5FuC1obMzdVtmatuLjwafKStQNOS6bvtGpSQM5WHc4 qxEkS8zmW8ELVo7hsI9KM5+/1rgoz9YV5sIOOfl3Jwpfb4+fkokIb18LmAgP/GqSDwY3Gc fJnl2trq17iXkCTmMoQi7b9rlZEQs4s589L1slq9aCzBijzqAIXswAvtQtiHBiEG5e9zQH osxhS2dfK5fNWZbWgzZrf0cAFqQs4HU+Ykd9++fpmDLvXb+TJ0NuO9Lm5t/0zWgvVvMDvd ipt3NTzCrMC2ycg4R5WKr/28+Mfr1JCW6QFCLLGP+edQjCAKctPkblUaxbqmPg== 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 4cmR8k1JqRz17BS; Tue, 14 Oct 2025 20:46: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 59EKkkuM066228; Tue, 14 Oct 2025 20:46:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EKkkEW066225; Tue, 14 Oct 2025 20:46:46 GMT (envelope-from git) Date: Tue, 14 Oct 2025 20:46:46 GMT Message-Id: <202510142046.59EKkkEW066225@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 3dac4b92ec99 - stable/15 - sockstat: improve indentation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 3dac4b92ec992fc85d148bf7d2d2deb1dbc5c827 Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=3dac4b92ec992fc85d148bf7d2d2deb1dbc5c827 commit 3dac4b92ec992fc85d148bf7d2d2deb1dbc5c827 Author: Michael Tuexen AuthorDate: 2025-10-07 02:04:35 +0000 Commit: Michael Tuexen CommitDate: 2025-10-14 06:51:32 +0000 sockstat: improve indentation No functional changes intended. Sponsored by: Netflix, Inc. (cherry picked from commit ab837a2eed6d7562d538ac5f90b3b2776a9f0f5f) --- usr.bin/sockstat/main.c | 123 ++++++++++++++++++++++++------------------------ 1 file changed, 62 insertions(+), 61 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index 3b989c4283e4..a917672120d5 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1230,40 +1230,40 @@ calculate_sock_column_widths(struct col_widths *cw, struct sock *s) { .socket = s->splice_socket }); if (sp != NULL) { len = formataddr(&sp->laddr->address, - NULL, 0); + NULL, 0); cw->splice_address = MAX( - cw->splice_address, len); + cw->splice_address, len); } } } if (opt_i) { - if (s->proto == IPPROTO_TCP || s->proto == IPPROTO_UDP) - { + if (s->proto == IPPROTO_TCP || + s->proto == IPPROTO_UDP) { len = snprintf(NULL, 0, - "%" PRIu64, s->inp_gencnt); + "%" PRIu64, s->inp_gencnt); cw->inp_gencnt = MAX(cw->inp_gencnt, len); } } if (opt_U) { if (faddr != NULL && - ((s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) || - (s->proto == IPPROTO_TCP && - s->state != TCPS_CLOSED && - s->state != TCPS_LISTEN))) { + ((s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) || + (s->proto == IPPROTO_TCP && + s->state != TCPS_CLOSED && + s->state != TCPS_LISTEN))) { len = snprintf(NULL, 0, "%u", - ntohs(faddr->encaps_port)); + ntohs(faddr->encaps_port)); cw->encaps = MAX(cw->encaps, len); } } if (opt_s) { if (faddr != NULL && - s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) { + s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) { len = strlen(sctp_path_state(faddr->state)); cw->path_state = MAX(cw->path_state, len); } @@ -1271,21 +1271,22 @@ calculate_sock_column_widths(struct col_widths *cw, struct sock *s) if (first) { if (opt_s) { if (s->proto == IPPROTO_SCTP || - s->proto == IPPROTO_TCP) { + s->proto == IPPROTO_TCP) { switch (s->proto) { case IPPROTO_SCTP: len = strlen( sctp_conn_state(s->state)); cw->conn_state = MAX( - cw->conn_state, len); + cw->conn_state, len); break; case IPPROTO_TCP: if (s->state >= 0 && s->state < TCP_NSTATES) { - len = strlen( - tcpstates[s->state]); - cw->conn_state = MAX( - cw->conn_state, len); + len = strlen( + tcpstates[s->state]); + cw->conn_state = MAX( + cw->conn_state, + len); } break; } @@ -1462,8 +1463,8 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) cw->splice_address, buf); } if (opt_i) { - if (s->proto == IPPROTO_TCP || s->proto == IPPROTO_UDP) - { + if (s->proto == IPPROTO_TCP || + s->proto == IPPROTO_UDP) { snprintf(buf, bufsize, "%" PRIu64, s->inp_gencnt); xo_emit(" {:id/%*s}", cw->inp_gencnt, buf); @@ -1472,29 +1473,29 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) } if (opt_U) { if (faddr != NULL && - ((s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) || - (s->proto == IPPROTO_TCP && - s->state != TCPS_CLOSED && - s->state != TCPS_LISTEN))) { + ((s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) || + (s->proto == IPPROTO_TCP && + s->state != TCPS_CLOSED && + s->state != TCPS_LISTEN))) { xo_emit(" {:encaps/%*u}", cw->encaps, - ntohs(faddr->encaps_port)); + ntohs(faddr->encaps_port)); } else if (!is_xo_style_encoding) xo_emit(" {:encaps/%*s}", cw->encaps, "??"); } if (opt_s) { if (faddr != NULL && - s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) { + s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) { xo_emit(" {:path-state/%-*s}", cw->path_state, - sctp_path_state(faddr->state)); + sctp_path_state(faddr->state)); } else if (!is_xo_style_encoding) xo_emit(" {:path-state/%-*s}", cw->path_state, - "??"); + "??"); } if (first) { if (opt_s) { @@ -1503,40 +1504,40 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) switch (s->proto) { case IPPROTO_SCTP: xo_emit(" {:conn-state/%-*s}", - cw->conn_state, - sctp_conn_state(s->state)); + cw->conn_state, + sctp_conn_state(s->state)); break; case IPPROTO_TCP: if (s->state >= 0 && - s->state < TCP_NSTATES) + s->state < TCP_NSTATES) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, - tcpstates[s->state]); + cw->conn_state, + tcpstates[s->state]); else if (!is_xo_style_encoding) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, "??"); + cw->conn_state, "??"); break; } } else if (!is_xo_style_encoding) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, "??"); + cw->conn_state, "??"); } if (opt_b) { if (s->proto == IPPROTO_TCP) xo_emit(" {:bblog-state/%-*s}", - cw->bblog_state, - bblog_state(s->bblog_state)); + cw->bblog_state, + bblog_state(s->bblog_state)); else if (!is_xo_style_encoding) xo_emit(" {:bblog-state/%-*s}", - cw->bblog_state, "??"); + cw->bblog_state, "??"); } if (opt_S) { if (s->proto == IPPROTO_TCP) xo_emit(" {:stack/%-*s}", - cw->stack, s->stack); + cw->stack, s->stack); else if (!is_xo_style_encoding) xo_emit(" {:stack/%-*s}", - cw->stack, "??"); + cw->stack, "??"); } if (opt_C) { if (s->proto == IPPROTO_TCP) @@ -1551,8 +1552,8 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) faddr = faddr->next; if (!is_xo_style_encoding && (laddr != NULL || faddr != NULL)) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw->user, "??", cw->command, "??", - cw->pid, "??", cw->fd, "??"); + " {:fd/%*s}", cw->user, "??", cw->command, "??", + cw->pid, "??", cw->fd, "??"); first = false; } xo_emit("\n"); @@ -1613,7 +1614,7 @@ display(void) xo_emit(" {T:/%*s}", cw.fib, "FIB"); if (opt_I) xo_emit(" {T:/%-*s}", cw.splice_address, - "SPLICE ADDRESS"); + "SPLICE ADDRESS"); if (opt_i) xo_emit(" {T:/%*s}", cw.inp_gencnt, "ID"); if (opt_U) @@ -1644,15 +1645,15 @@ display(void) if (opt_n || (pwd = cap_getpwuid(cappwd, xf->xf_uid)) == NULL) xo_emit("{:user/%-*lu}", cw.user, - (u_long)xf->xf_uid); + (u_long)xf->xf_uid); else xo_emit("{:user/%-*s}", cw.user, pwd->pw_name); if (!is_xo_style_encoding) xo_emit(" {:command/%-*.10s}", cw.command, - getprocname(xf->xf_pid)); + getprocname(xf->xf_pid)); else xo_emit(" {:command/%-*s}", cw.command, - getprocname(xf->xf_pid)); + getprocname(xf->xf_pid)); xo_emit(" {:pid/%*lu}", cw.pid, (u_long)xf->xf_pid); xo_emit(" {:fd/%*d}", cw.fd, xf->xf_fd); display_sock(s, &cw, buf, bufsize); @@ -1667,8 +1668,8 @@ display(void) xo_open_instance("socket"); if (!is_xo_style_encoding) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw.user, "??", cw.command, "??", - cw.pid, "??", cw.fd, "??"); + " {:fd/%*s}", cw.user, "??", cw.command, "??", + cw.pid, "??", cw.fd, "??"); display_sock(s, &cw, buf, bufsize); xo_close_instance("socket"); } @@ -1680,8 +1681,8 @@ display(void) xo_open_instance("socket"); if (!is_xo_style_encoding) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw.user, "??", cw.command, "??", - cw.pid, "??", cw.fd, "??"); + " {:fd/%*s}", cw.user, "??", cw.command, "??", + cw.pid, "??", cw.fd, "??"); display_sock(s, &cw, buf, bufsize); xo_close_instance("socket"); } From nobody Tue Oct 14 20:47:52 2025 X-Original-To: dev-commits-src-branches@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 4cmRB02TCWz6C2rQ; Tue, 14 Oct 2025 20:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmRB01yfdz3JWR; Tue, 14 Oct 2025 20:47:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760474872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cX2LWYkgiws+/nn2FmzsIs8vMZpY8ucvNA1AJRdNIsI=; b=YaN6A1MSq4g2njFOEPw5bqjU3HiVMTPnIbmoRmPH4Tvenhif6+4cy239CyyBnlSWbavKeX YXG7BFUSKZhOtMoYn9E4i5MrvNLUaBJGEwdofMB8f8Fo8YL9YRuH7cIPUgbtUgYPd49XbZ W+PUAJm/TvUHnwc3YjPwUv51+LKqQFq91fTCz8J93ipo2O/8uFnIkB2ib4XIW9poTeadSV 24i79CmbOh5a0xGQv+lMi209/oYd652fx3yvEAlqYk8tvZLSbe1Bhx128R1IMVlOX6f7Tx fE1CdRJKjQ7OM804fi1MOuVmj3bBn3RxW5XIAWAK/qOayYBYStd73UpNAomJ5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760474872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cX2LWYkgiws+/nn2FmzsIs8vMZpY8ucvNA1AJRdNIsI=; b=kBUNtnaydrB6dL4Bnm2YhpAcTaKJsLizGQbMlQgxNOY4x1fbTfqUkrP4SwjYQjGE+9Ept7 y5Vg23hu66xvX4yyGMjyC8CyW6PxRkbJV+lKtQtA3anMVgNWXLPuiLVpiL6yKIH2A0maT/ mhZDiMLDUb/gufFOSPMqIZ3wmf4RKBL4fDnA/LxsXDvx3LPa/6/DqfQG31pc3zS4ZfkABw 7uq5CnSxQpwkoDCSBEGdY89m0Ryg9qylC+a7k6fLVtNjzbuuZZl2ScCkM9dQ2szjzu+Uq7 OMxhlCHE83QJhI66BCzmvthAy94CTzkptyxPdp9VcQ13sz2uu1mP6VgfSYXGNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760474872; a=rsa-sha256; cv=none; b=b0qxc7OC+3pfe0iXvtytbOIv7XXQ2zcjpSy2mORMgDyptIRqRAUbRx9KXeKth6Z3yBl8Xe MfvnFL3FkK4btyaBm1Vk3wnFv+P/7Gsob9nULhIOzUjM0yY06nMFRHgO62JgFnqJeEw8na tK4tz3dt5R4eFzFw+jzkhUHmNczCv0qXRsh4KJLJn4Iot0gdlyhmtGbXP+/YG3A/0gaRSG tQkSV8O3KPUbETE7wFQlUIm6qOigLy97driYNOggp9H89jLmRwPhDGJVnPhe9RNxtV2L4a 4sYaLBCa3plKiGTdzGBH5W225Mq4rvy17m3ufo+PygnCcfpFZTjx5I55ex1Vug== 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 4cmRB01Qmkz17Q2; Tue, 14 Oct 2025 20:47: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 59EKlqN3066670; Tue, 14 Oct 2025 20:47:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59EKlq3w066667; Tue, 14 Oct 2025 20:47:52 GMT (envelope-from git) Date: Tue, 14 Oct 2025 20:47:52 GMT Message-Id: <202510142047.59EKlq3w066667@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 7e567f51ff59 - stable/15 - sockstat: improve output formatting List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7e567f51ff59d169b5fd0bc350d0c7dfc9fc2609 Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=7e567f51ff59d169b5fd0bc350d0c7dfc9fc2609 commit 7e567f51ff59d169b5fd0bc350d0c7dfc9fc2609 Author: Michael Tuexen AuthorDate: 2025-10-09 19:10:53 +0000 Commit: Michael Tuexen CommitDate: 2025-10-14 06:52:38 +0000 sockstat: improve output formatting Fix the format when the output for a socket spans multiple lines. Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52984 (cherry picked from commit 98b2a2265f5ee47bd932347699e6117df2f41488) --- usr.bin/sockstat/main.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index a917672120d5..f0eb83eb3e9f 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1545,18 +1545,30 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) else if (!is_xo_style_encoding) xo_emit(" {:cc/%-*s}", cw->cc, "??"); } + } else if (!is_xo_style_encoding) { + if (opt_s) + xo_emit(" {:conn-state/%-*s}", cw->conn_state, + "??"); + if (opt_b) + xo_emit(" {:bblog-state/%-*s}", cw->bblog_state, + "??"); + if (opt_S) + xo_emit(" {:stack/%-*s}", cw->stack, "??"); + if (opt_C) + xo_emit(" {:cc/%-*s}", cw->cc, "??"); } if (laddr != NULL) laddr = laddr->next; if (faddr != NULL) faddr = faddr->next; + xo_emit("\n"); if (!is_xo_style_encoding && (laddr != NULL || faddr != NULL)) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw->user, "??", cw->command, "??", - cw->pid, "??", cw->fd, "??"); + " {:fd/%*s} {:proto/%-*s}", cw->user, "??", + cw->command, "??", cw->pid, "??", cw->fd, "??", + cw->proto, "??"); first = false; } - xo_emit("\n"); } static void From nobody Wed Oct 15 00:48:31 2025 X-Original-To: dev-commits-src-branches@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 4cmXWh0d1jz6CNnF; Wed, 15 Oct 2025 00:48:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmXWg6GhJz3lZJ; Wed, 15 Oct 2025 00:48:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eBoDdTr/Hn9TDXutsz1MhK3ztwcpSpPW8P1qKpeJwM8=; b=hFaU7PXRhYlx44vVckK9cDcfHk+OvTfQemitKjZRtBxpm9ATjFjC0MinmM5yJ3ePpxZO9t GGMST5/1wbU8aYiQnBaVlzKe2sQ9Rjykn9hDJdCyOYSTJ0wKt5o5yAIbljb0L8dDy1SFU7 4Z4W9zior/L0atQBL3ZR+1pA3V5jvN2JaSx/YViU1/+ILxAE2uslpq6R4RkKHIr53QC7dY OsWo6FgT7ie/6mLKvClBENH91+61iEJJh5/6AvfpOQdvmi7f6Ks1A67Tnur7G5En2kWKty sWu5+hcWLyD4+0Rr54x6HwMckazgjBX1unFShgqa+2tRhcaGle1Y/oztwFsMsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eBoDdTr/Hn9TDXutsz1MhK3ztwcpSpPW8P1qKpeJwM8=; b=PwASzGgAxeOCV7Xk2wTKe75dsFrvTuCcqmOvVrDO6nJQqGp8CwzqyELtFwyfGgR/Y7a76Q eOUL3yJbsP4Q9K68SfdHtMc0xJu74yNEuJOKB33Z2II7DPMZybkRtcpn+Gj4TFqKy0dzQx haUtyG8A6AZAopQTWCGWgCgG8RGDjRqzNY1DV5YxCWArJ4/ixlptObhbVMCgO59Ce2LrZJ DnDm5buXAhzDAPH8pDaqGzoBbYz9jmCK/a5DAWH//gskijCYL0n3mrdC2LX5ywaW832T27 ZC2YI68uv1+X0IorbHUVOkJbYmhX18m6aDkqts8mfHO903uJjzPg8joHE+4Vnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760489311; a=rsa-sha256; cv=none; b=sj7XY9O2+M1YXtTcqGp+gHII8K9ONwT+v3AKOKp0ivZDs2RZgvVITsTu/T9SyYdAa9WPh2 5IqK8aSBT6Ne1M1Ase8oFC4864FEwJ4aQM9M+foeW4E7w3QGS488IxAAKvG/AKsJM7GA+4 MPexDdqrHOY4GkiIbpnCCq7qQK2cIV2TkkNqyOv+sH74v7ec3VWTESrs6Mz85P+/fIPbBQ cPYI7TS4JyDT5+kVlnKPLE0fV+k4LWhZ90yHh0chGVAJdRfmcosljwOyeRF78Lk+e1an/N O5p92vAmjyfdx98FP8dknNlisj9cM/yNaZe57Kpl/lbLhwbiu7Wyd75lZj2nDA== 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 4cmXWg5sN4z1Qk; Wed, 15 Oct 2025 00:48:31 +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 59F0mVT5017403; Wed, 15 Oct 2025 00:48:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F0mVD4017399; Wed, 15 Oct 2025 00:48:31 GMT (envelope-from git) Date: Wed, 15 Oct 2025 00:48:31 GMT Message-Id: <202510150048.59F0mVD4017399@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: 2ef79b0524b5 - stable/15 - Cirrus-CI: Build packages in parallel List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 2ef79b0524b516792f1ebb1c623999ef2ec06408 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=2ef79b0524b516792f1ebb1c623999ef2ec06408 commit 2ef79b0524b516792f1ebb1c623999ef2ec06408 Author: Ed Maste AuthorDate: 2025-10-02 14:39:11 +0000 Commit: Ed Maste CommitDate: 2025-10-15 00:47:10 +0000 Cirrus-CI: Build packages in parallel Reviewed by: ivy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52857 (cherry picked from commit e2796f0359afad522113c25d720fa30677a044ab) --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 5aaf7ac897d2..d99449e44a4f 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -160,7 +160,7 @@ task: - su user -c "make -j$(nproc) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" package_script: - - su user -c "make CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" + - su user -c "make -j$(nproc) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" package_check_script: - su user -c "/usr/libexec/flua tools/pkgbase/metalog_reader.lua -c /usr/obj/$(pwd -P)/${TARGET}.${TARGET_ARCH}/worldstage/METALOG" From nobody Wed Oct 15 00:48:29 2025 X-Original-To: dev-commits-src-branches@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 4cmXWf0YTYz6CNnB; Wed, 15 Oct 2025 00:48: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmXWd63p4z3lc6; Wed, 15 Oct 2025 00:48:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489309; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4Skf7mUBfuY09gFM/GYV3Pp48UyyPXkYGbRXSxWZKug=; b=D7VFpY85UMYQ6+ks0lwbAYIs7GhLXrzC7ASJiU3yzgTHojeAFmzpUzqTn9WHvVRASbZ4/I lBotDww0lOVHfjXGGU99/fmHOQKPNv6+vvWmrGSXv/xcb8eGE6iFgVNLNtjbFkQ+zC6jyu 6d+Rke8PYPA5iFC60gbTS4+zKG7jwHM9Fv3VLjgNOv3e0OaL7JkbEcetJabioUIEHJ4J5p IAG0m3i9Hb3RhMa2CfPq0ntDlN661I00lQtFoDz8N6GyOIH3Dp7LSIWayWkafdmf4zI6p0 tnWTIEbDCAAs2Zj9pN1QVQP1uuw0qxv1vdn6O8EH922ZCuwOF/dC3dPlHA79UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489309; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4Skf7mUBfuY09gFM/GYV3Pp48UyyPXkYGbRXSxWZKug=; b=CN4RjpRSo0n7ins2ajM2fVnHOe9W8NF6qGimc3AgAmur8l9Ryq8dm0NcAF9GLYYcjd/ILS 6xdm0MWXDBa9yrUQErwoWnmum1nvpv21fKE+puTKBdsKkOuemrKrJyGUzarHoviAoVWggd GOZ56euW9ick3OXC9I2y/I+Puah6U/bWKcA4XfuTXmD4ext3H9Yn7Lgnrzu4XWddg9FYDR xaxKzbPmkZpix5nq8Ecq0n43G12wpwcaz0BpiZkW8Njcl60CioV+i3khFezPLCglce1Tl4 +/I11sUpook6s3KT9oFxkr6R+5bdQUYqse0d9Wv5LWDI+MO+o0CnlbXZyZxw6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760489309; a=rsa-sha256; cv=none; b=DjUSId0a/PtezI/7Wsdojup/flC/e0/PtKE+IHUlyRzsvwqmVMe72wa6XHVvW87lg6MXA7 oGHJZypaxaHSXJI2t+GM9PcrPH+oQlKSB1pBv76w8JBGeACrvMGpW5mwv7i4ZCNQJ9kQjm 2yV+YFpwOfWzlCBeJnngkTIWdgFbNwSGkYWQ1VRft8rIH4XsoYCX7z776Zz4tuL6aNRWwb ZEEtJEB/m6le2Q7G9xc31r4tV5FzBNAykUOKdKIQPE7cVrcof1LCD8R5RZAD69N1tzxgiF cOD98w+fLCerv0JylnJDEsjJX7DOwnwSQJiv5dc0mFIAwIP1Aqm4x1Ve0Yl4ig== 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 4cmXWd5Ksnz1Zb; Wed, 15 Oct 2025 00:48: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 59F0mTvp017327; Wed, 15 Oct 2025 00:48:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F0mTVE017324; Wed, 15 Oct 2025 00:48:29 GMT (envelope-from git) Date: Wed, 15 Oct 2025 00:48:29 GMT Message-Id: <202510150048.59F0mTVE017324@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: 608043e6d029 - stable/15 - Cirrus-CI: Bump to FreeBSD 14.3 image List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 608043e6d029a00170a0a80d52fa9afdf209c692 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=608043e6d029a00170a0a80d52fa9afdf209c692 commit 608043e6d029a00170a0a80d52fa9afdf209c692 Author: Ed Maste AuthorDate: 2025-10-04 13:10:09 +0000 Commit: Ed Maste CommitDate: 2025-10-15 00:47:10 +0000 Cirrus-CI: Bump to FreeBSD 14.3 image Sponsored by: The FreeBSD Foundation (cherry picked from commit cca9295dd6adc4245fbeeefbe05c13c52d089bd7) --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 84efa04f1ccb..d48946ac8505 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -4,7 +4,7 @@ compute_engine_instance: # gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images platform: freebsd image_project: freebsd-org-cloud-dev - image: freebsd-14-2-release-amd64-ufs + image: freebsd-14-3-release-amd64-ufs cpu: 8 memory: 8G disk: 40 From nobody Wed Oct 15 00:48:30 2025 X-Original-To: dev-commits-src-branches@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 4cmXWf6XP2z6CNq4; Wed, 15 Oct 2025 00:48: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmXWf50Mnz3llT; Wed, 15 Oct 2025 00:48:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489310; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=35sr2CWRW5OQ6lXZWpYrjT6vw3ujlucSbBLQ5wO35SE=; b=uV/sIQ1RBXeIxUmQLFF5TzMoonYgMUnfxMcHJ/1n/6JYl9e4zIPV+3m77U0G30QSVF+YDW hdX9OlBNqBhK1DARavtodTFkn1LbOgrRLYMyZriIroUMUrR5yOsMCUffBjm4WQp0bkdaMk yz3pD5NKiH/adGuhm/+qj9XW+k49J9LLVyyAmEizvV8mppIWWOU8XsMygEDsEiQs2xznGj VwH0XRTUaqFqrFsTlaKR+RrFn5WoL+ePO8ZW0tLFrnVdA6UqNBlRLvWhHzAVqYVWNCCe72 8WzRUcFglbaXcaL5T6MbbjgT8shqDGrPEN0nzWUbnQWO8lHiCRQBWCxlKRPyTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489310; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=35sr2CWRW5OQ6lXZWpYrjT6vw3ujlucSbBLQ5wO35SE=; b=DQwrcHcUXlJgRvbLrHMzEH0Uml9uwBg2FLfaWya8EoaSmvg9KBJjqwqWT3gYg6FqwQMZHr grcvh47MC4g2WMXltbfAsIGqFLdmdlZicNSaLuyRsPp575p03VRu8w08UYGq2FRYXW+UXX gRD48XFRANN+a6SycVWy510gYelekuJJYW5uvCC0ElTXUMUswNsQcJQlw2yorIqYN3V8YC TO99uAGcLawpG3+wYceFaYYnF6aDMinFqlltNmOtBptH/ydjZ6LWOdT1jpWtZS8ioXRWKU mZmuUk7L4A2WNOcH+elJi4pBPRaJDBFsvftFgtynXUGQ8pbhv0cV5F2CI9k2eA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760489310; a=rsa-sha256; cv=none; b=r9gtgpjNS3NnnbDT4YHRSZBrLmlhN2uiknnbqQN2/xr7J4fGxBi/bfarCUW8sPb1f2IdpL o7EFbgRhFi+a4QqNWCNo9IIejs15Y41aKJqUAeOKA4bHwGjLVfA3T1NG+hzV/w57p57q3G dRppFieTk8HF9q3xftdZLDk0M8T29dl4vckEQRlnwPSD1KipqJ+5Wugdn2HO9M9zuut2aA y9SGRsju8h8JR8rMaZlR4gLubnb6p0sSYei6tqHH3d9qmj/UHtHX4tJSvJqTpZIdkM4NlS p/equLC81B75oJ3wm/9hnpM2Vm8kgzAzTpWk9DH1Eu/4t3lmJleQSA5hY4cmLQ== 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 4cmXWf4cCmz1p3; Wed, 15 Oct 2025 00:48: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 59F0mUZn017366; Wed, 15 Oct 2025 00:48:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F0mU1J017363; Wed, 15 Oct 2025 00:48:30 GMT (envelope-from git) Date: Wed, 15 Oct 2025 00:48:30 GMT Message-Id: <202510150048.59F0mU1J017363@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: f283515a1015 - stable/15 - Cirrus-CI: Use nproc instead of sysctl -n hw.ncpu List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: f283515a1015b5e02dee2b3f4504e7a5ca1a5cfe Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f283515a1015b5e02dee2b3f4504e7a5ca1a5cfe commit f283515a1015b5e02dee2b3f4504e7a5ca1a5cfe Author: Ed Maste AuthorDate: 2025-10-02 14:37:19 +0000 Commit: Ed Maste CommitDate: 2025-10-15 00:47:10 +0000 Cirrus-CI: Use nproc instead of sysctl -n hw.ncpu It is available on all supproted FreeBSD versions. Sponsored by: The FreeBSD Foundation (cherry picked from commit 5bba547a678beb280bf4080375f45b04ceb44fc5) --- .cirrus.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index d48946ac8505..5aaf7ac897d2 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -154,10 +154,10 @@ task: - su user -c "git config --global --add safe.directory $(pwd -P)" build_world_script: - - su user -c "make -j$(sysctl -n hw.ncpu) ${EXTRA_MAKE_FLAGS} CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld" + - su user -c "make -j$(nproc) ${EXTRA_MAKE_FLAGS} CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld" build_kernel_script: - - su user -c "make -j$(sysctl -n hw.ncpu) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" + - su user -c "make -j$(nproc) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" package_script: - su user -c "make CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" From nobody Wed Oct 15 00:48:32 2025 X-Original-To: dev-commits-src-branches@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 4cmXWj3Cdkz6CNdq; Wed, 15 Oct 2025 00:48: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmXWh6g98z3lRj; Wed, 15 Oct 2025 00:48:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489313; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EVPO916foto9hV6iFqfDVG3xO8F0gk9JyytxL1NoJV4=; b=ejiidfcbXjy9mY58oQdMrfaMBPkGppR26Dbf9PQhKAzuU6N5ORnIFjxIZTzndEmRkEKCZD XPfiVryl3i1FTU4OGOBEISpYfJSv7OdU9EYvgP9U3rWBi+OkeikbWQPM/FH+h4vSv7NkBj 6MD3BkjVKdl+itX+9Yi9DxpUeUSMd2w/opxhNS2vMVUULMoIu7Euec+ElpFCAXFzKeStbi 6x2IWUMSbRG+oCsyjFKrt6+HA3ffAO0q77VgzwROrVDHSJgnEuVD7ufM2FGjIo3h+zt0lZ UOET/Hv41r6phic1GoKkzqsPgrjhQJRacUo95PboLR2V9HFzqIYgXydVtCPBlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760489312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EVPO916foto9hV6iFqfDVG3xO8F0gk9JyytxL1NoJV4=; b=hxSxK7hMNCc3XxJKyxjWinY+g+IZcRTHXa8nI/bxo5CykHFU0nZaC/EZgTeLen9o8LgRde 1t7MRpKiFDyuDewbeFCkkt70F8wRwx20k8wTIv46d+qO8yz3Wqk8ESm06Fjsq9VQvWpMhb WZd3+loZ63grDSjA36T0Fx/jKGH5gkVWvzaJh0meFCIqHBsZWMYlfADuYLoUL9OFE9WJyQ aOoV6+3sZFMpm7V91Bp3P7nZkq2PzRaPgAbZBnM/RNGzCJYZg6BjyvsbK1f9mkAccwXgS8 ubVEO0o+E0n/7f4jOvtm3FF+Zi4VQuRBIgvRQOVCp37+EDQtmhxqjX/vwH5LDA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760489313; a=rsa-sha256; cv=none; b=ZD2OgM/vFik3B2F5BFIzxtraOxwIi7Wspjm/1Y8YhFxuw3P3yJYEqs4LGHjxV2aUYxbvqY j3vorY7w4/e0YkT4yBQVyw0nvWOC68ZMjrhvnfVH6Sum2AVpeDdsMJd3DyDg8DSsAaBal/ gGNiyi1kLAKSsZaWaNqZxklal4DvfBcm2kQntOlvGMDPpISyjSUWyu2R4V9z5euDHvzzLk QDMwgUuYETstCrbDCR2yE2ZX9xfww8pW3O7s2KKts2cELBvWcAzPWh/xgvFyfEDhSQA1Ca VvKvAFPWdqCPvjw6WgNoYpsnNQBTDKCAjveLvQdkWX5clXGLuqV32bu1+03PXg== 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 4cmXWh6GWdz1v0; Wed, 15 Oct 2025 00:48: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 59F0mWDn017438; Wed, 15 Oct 2025 00:48:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F0mWZw017435; Wed, 15 Oct 2025 00:48:32 GMT (envelope-from git) Date: Wed, 15 Oct 2025 00:48:32 GMT Message-Id: <202510150048.59F0mWZw017435@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: ba89a061d0ba - stable/15 - Cirrus-CI: Switch back to tzst packages, but use level 1 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: ba89a061d0bae42c4367bc5408b8c51fd63a2715 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ba89a061d0bae42c4367bc5408b8c51fd63a2715 commit ba89a061d0bae42c4367bc5408b8c51fd63a2715 Author: Ed Maste AuthorDate: 2025-10-02 14:39:43 +0000 Commit: Ed Maste CommitDate: 2025-10-15 00:47:10 +0000 Cirrus-CI: Switch back to tzst packages, but use level 1 We previously used `PKG_FORMAT: tar` to avoid spending a lot of time in zstd compression. Instead just set PKG_LEVEL to compression level 1, which still produces packages that are much smaller than uncompressed tarballs with only a small penalty in build time. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52858 (cherry picked from commit ae5914c0e4478fd35ef9db3f32665b60e04d5a6f) --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index d99449e44a4f..b5c96820c192 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -10,7 +10,7 @@ compute_engine_instance: disk: 40 env: - PKG_FORMAT: tar + PKG_LEVEL: 1 task: matrix: From nobody Wed Oct 15 01:11:09 2025 X-Original-To: dev-commits-src-branches@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 4cmY1p1RQdz6CPnv; Wed, 15 Oct 2025 01:11:10 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmY1p0nw8z3nVg; Wed, 15 Oct 2025 01:11:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760490670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=efUWEbmGaV+6I7ZhwVaVIEc0dZ3Ew7AMAxIOlQoVDCA=; b=tKRiFMhSZ0s5AfUXnk6pGNOfaLhnPRmwczyEr/X7VMzB9qOT3odaaa8fcXQW9q7K1Jt3YB 2zOrTMK4RRFUu8fP9YD+jyWwVN3vIxdLQbz7frOocMbXYJiq9S6UA0vocpgHjjTp+zHYAO PrhK3s1DgJ58qAo9Zd433StuPDpDyFwZoyu9ceYRQjty5/a/ZHtwEZdIk0jwsM4x2IkOZU dwMfegGopcC8ZzUW60m3BfpJCOA/nTa0PDolZSQIq95pyrfi7AcSN01rYel+HXNbo5uCpD COGgc3A+Zc4A7Qou8k3hhaUi/vLVXGenjLv9xxZGSVZyTL3GoYdoIUE9CsQruw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760490670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=efUWEbmGaV+6I7ZhwVaVIEc0dZ3Ew7AMAxIOlQoVDCA=; b=Ezj21Eh3a7YZ1DUiN20kmndLsIBV97JkN8ieXWeAPBLDVFV2wmnYnL7V9g0s9S9rYwBAE5 +ahKfT8VrHSnOoZ1mpVPxQv3UUQgDQUDPpfpRLYilpLM2RxQPjP6PwV8t9CI4GvZ9O3Zei OTVWpQHaYIPNNtjY4Nm/O9scUarBApGhOmg9lC8X/j/iZEfW7fhCfNaBrfgYyquqBkvHFg f0nHbGuxJOmEC678Z3vaMbP0ggq7/ZFdDIPlAjpkXaml3dttcwUO8l+oergxz4rPyGmqzT UT/MkbXt0lTZkM8kCboqXCTI2imOO6/0QVeFFo/UQFaQgdwJY/Z3BgKmRzCm/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760490670; a=rsa-sha256; cv=none; b=j3JNcynJtr8wVqFEzypV5GKhmzeNhI2Qr6+3iYrGTxi2stKKzy4+DNqgtrrno9laR2gxmZ T6fVQesOza3Hg5R7osMwEwTKqnMGbIPE36qg0muHxAtFefDTl9dP3Fjft5mQV/58DtPebW dnY6ZnCE6Uw6DX0lgx+aTNdagIwA81XjVTTdz55+7ybGgvqEKFyy1baIjcPmlGwbrB9Hw+ aA4N71brG8vFUAAqIthah3E7mAGGXSZbrS/BeGX//BTA4hKi+kjbDbIpEhyJFJ82DKBxS1 3d5Xa9jya+ngPQYCdq4zmV/O/Yp9ATmD3fzL42SeoQOaGjRgIsE4q8Dkq5e8Tw== 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 4cmY1p0PSbz2Lx; Wed, 15 Oct 2025 01:11: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 59F1B9dh065878; Wed, 15 Oct 2025 01:11:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F1B9ks065875; Wed, 15 Oct 2025 01:11:09 GMT (envelope-from git) Date: Wed, 15 Oct 2025 01:11:09 GMT Message-Id: <202510150111.59F1B9ks065875@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: ac19e85c60ac - stable/14 - Cirrus-CI: Use nproc instead of sysctl -n hw.ncpu List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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: ac19e85c60accb4673b5bae93840346c08a2b635 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ac19e85c60accb4673b5bae93840346c08a2b635 commit ac19e85c60accb4673b5bae93840346c08a2b635 Author: Ed Maste AuthorDate: 2025-10-02 14:37:19 +0000 Commit: Ed Maste CommitDate: 2025-10-15 01:10:57 +0000 Cirrus-CI: Use nproc instead of sysctl -n hw.ncpu It is available on all supproted FreeBSD versions. Sponsored by: The FreeBSD Foundation (cherry picked from commit 5bba547a678beb280bf4080375f45b04ceb44fc5) (cherry picked from commit f283515a1015b5e02dee2b3f4504e7a5ca1a5cfe) --- .cirrus.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index f8f2fdde9a9a..80a4ae57b696 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -154,10 +154,10 @@ task: - su user -c "git config --global --add safe.directory $(pwd -P)" build_world_script: - - su user -c "make -j$(sysctl -n hw.ncpu) ${EXTRA_MAKE_FLAGS} CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld" + - su user -c "make -j$(nproc) ${EXTRA_MAKE_FLAGS} CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld" build_kernel_script: - - su user -c "make -j$(sysctl -n hw.ncpu) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" + - su user -c "make -j$(nproc) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" package_script: - su user -c "make CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" From nobody Wed Oct 15 02:12:18 2025 X-Original-To: dev-commits-src-branches@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 4cmZNL5MdJz6CTpk; Wed, 15 Oct 2025 02:12: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmZNL4qZhz3tSf; Wed, 15 Oct 2025 02:12:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760494338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=si1c9Mn8rXn0VlxaSwrfI8g1Gn9tzn5keckfSVEjFiU=; b=WbyhCvbMouXUaM2dpz319izAkwvsG4lAvsEP+wLBcVfCFikhItQdu3+CyfJUKq8whaXMqw xkuzo07fWJv7sbYEoMShnNwgQ7mi3rMVzbbUw+Uba8JlnD3O6WULM6ausBECqAkVksfT7R +xpewInWDHCEdX3QaAhi1C2Jq1+OFFZSYAsLqWsJ0xaRD99RX8PpZKpRH9NmeyXU1e8Zzm KXrOgGB5tnao5d2cX+B0NH/iNwciR8SkymfiZkLdpMIdTEms8XDDw691gLrdI6cGZz9krC QQnYCymVRqIUWBcQNptXiCqNIi8gYjxrjrt8UQbOwAlDmQCCPn05DWvatGBlJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760494338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=si1c9Mn8rXn0VlxaSwrfI8g1Gn9tzn5keckfSVEjFiU=; b=yZNBL0PTEmjacKKhWLP1iAV3eRJ/dovXsA6VLgSvtyd/PIQGma1pSh8y1t8Y3Yej+or4yf oH37GyvfrLT9+2kQfE8j2fD4EDjZ3tguqbwgWvb6WZvVnCx8TCxzJqI8F/lh2xKO0oZn95 vtOPr7gzwa5anOtFmDTitGYUTGO/ARN6Pl+/V1S8NTzu+94TIbojyB30dPwDdPoKWIaWR6 aZrVWABb0DYZkMhdloeZJrcxv5IYoqfymxaufbYFzeGDieyMbsZwqFsB7vN81q7DvX+dh/ TSN8WbQMsJI2gmQMrjrjv4JG5cZn1bX206LXHnAhbfyVubFOtrXrzV04bCHCCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760494338; a=rsa-sha256; cv=none; b=hryXnEM6pCqaMie3I453QI11dFCEiYUduGoDTzHpSYVDZN4W0vTksEbx+aqGO0iurgydeS r/4msoL7kkl434HuC2GRnr76zxzLDXlotg5/y0g1WgWyM7q0YELLVtxsBP1Bwq+k5hnF4Q 50Opkw+pHE5CYXmejJSPlA4fuxK7hd8s9/cyFVgKVDI1TbIchAQ5KppZYlcH4GObBR2wsh /EmZK9Mz8ETNgp0bdOljF8r8AzrywGBHfxCyUSItcnnYqr7IUwywa3eHfTkw15USKEPNkp c5DecPLI8524L8Y4UY/ojxUYW18Dop/KilMdHRCg/bT9Xl+r6kb3j7OQzUlpjg== 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 4cmZNL4P5tz44W; Wed, 15 Oct 2025 02:12: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 59F2CIKs083493; Wed, 15 Oct 2025 02:12:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F2CIOG083490; Wed, 15 Oct 2025 02:12:18 GMT (envelope-from git) Date: Wed, 15 Oct 2025 02:12:18 GMT Message-Id: <202510150212.59F2CIOG083490@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: f43e19db6cea - stable/15 - vfs offset: fix assertion failure in face of racing ffofset and setfl locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f43e19db6cea0a7dd7bf51f3fe2227d466ea5a80 Auto-Submitted: auto-generated The branch stable/15 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=f43e19db6cea0a7dd7bf51f3fe2227d466ea5a80 commit f43e19db6cea0a7dd7bf51f3fe2227d466ea5a80 Author: Mateusz Guzik AuthorDate: 2025-10-05 17:03:54 +0000 Commit: Mateusz Guzik CommitDate: 2025-10-15 02:12:05 +0000 vfs offset: fix assertion failure in face of racing ffofset and setfl locking Both use the same 16 bit var to store their locked and waiters bits, then this in file_v_unlock: state = atomic_load_16(flagsp); if ((state & lock_wait_bit) == 0 && atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) return; can fail if for example foffset is being unlocked while setfl is getting locked. Afterwards the code assumes there are blocked waiters on foffset. Reviewed by: kib, markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D52915 --- sys/kern/vfs_vnops.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index f81c2033d95e..e27692ccb1a3 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -806,9 +806,12 @@ file_v_lock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_bit) == 0 && - atomic_cmpset_acq_16(flagsp, state, state | lock_bit)) - return; + for (;;) { + if ((state & lock_bit) != 0) + break; + if (atomic_fcmpset_acq_16(flagsp, &state, state | lock_bit)) + return; + } sleepq_lock(flagsp); state = atomic_load_16(flagsp); @@ -842,9 +845,12 @@ file_v_unlock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_wait_bit) == 0 && - atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) - return; + for (;;) { + if ((state & lock_wait_bit) != 0) + break; + if (atomic_fcmpset_rel_16(flagsp, &state, state & ~lock_bit)) + return; + } sleepq_lock(flagsp); MPASS((*flagsp & lock_bit) != 0); From nobody Wed Oct 15 02:12:46 2025 X-Original-To: dev-commits-src-branches@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 4cmZNv0DsFz6CTs2; Wed, 15 Oct 2025 02:12: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmZNt6ktDz3tr9; Wed, 15 Oct 2025 02:12:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760494367; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R3U3XWIe939EjcVTRNK4gPNQB2CHgO30rVr9MwfS8Jg=; b=hflXKoXSKkv8RMBrBWZsZM8Uguclv3wmCb/dNXdxRLSRJLhEWv3CIuulalTqzgwmwMw1Sp 9gMoqKI2TGwau/tqFC2mr/QPt3E4N35bDphOP8XLxh8MMWp2NRBS0nZg9PNg+TcZb2SgFu c7w3hQbkzk9+voBNymVJj012RO9ncBNrMgzAeWQC+1DPoULcOYjqcT+0GS372ALns5Ilks imBS6cSg3mUijE4jhp35aaXSZSfniOZTgNQmjvQZnkqYArotjcGAh+sGUONLTb78vPyo9W dc1Wf7Aw4FDltIsM+CO4kdEBEg75UNv+gOjacZZdjcwnoIhk08P+3S9ryrw7Yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760494367; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R3U3XWIe939EjcVTRNK4gPNQB2CHgO30rVr9MwfS8Jg=; b=mulcFVoS3AVn6XT72KuyeYtboOvulLNLOXHZPA0BzBALBBg2ckuCUf4/pOnhT/hnI7iJNr ACnrGPxt6HuawZ5+Glf1UFuWsA3gBGy2V95opDszylZILk57eEmIzfMffuo1MG3Y9r4Lv7 VNPW4uPZ2LbH1OriTeuk0y1CtNR04DOBZgdqBTLl5SFRVElIinByRIi7WpSscic6/qNFcN ayqxYzIidzkqU5JQk5t4Lk0d+Bf3wuNx2P191a+jCII4tl8B00ij7W8C/NVPM1LtWdkjRs 6MASvaTnmMPFhHU0y4EKqHd04FbITbLwZsIsUcBp+IiQRSwca+OHMzqXbh2Jnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760494367; a=rsa-sha256; cv=none; b=T8lAxbEPfF6xng8VkQuIQt0GYj6pLyNQaqGXt/5t+ahDdQNlPv8hGES3jZl7ZEet967OCX urkejEybgKiwcf9KGP7hP7Njc7I4a93gDZGCKmP8ozZFOLU8P9CjcXYzV5MaOa7+uR0F6/ +OPRjflVg7mnL59pSqljY1XC3eRXWRKk3tMU46xvMNOIwLGg4nmRoDainlq2OadeIGiIlj DGnfxPKFrOHMDx7Lj0aT57Z4IMhf3Npf2nfb3ZGcQW9Z4gLOmcuiXpHNaZW0t7kj/WysCq ieI57jcEvI7njK5HM0pwWgu+TAWsfVxoI8VJpTAvIYn4yZ4Kb2sXefNDRol6VA== 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 4cmZNt6GDzz3GS; Wed, 15 Oct 2025 02:12: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 59F2Ckcx085988; Wed, 15 Oct 2025 02:12:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F2Cko1085985; Wed, 15 Oct 2025 02:12:46 GMT (envelope-from git) Date: Wed, 15 Oct 2025 02:12:46 GMT Message-Id: <202510150212.59F2Cko1085985@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 57bf745be964 - stable/14 - vfs offset: fix assertion failure in face of racing ffofset and setfl locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 57bf745be96462355350fa18ec1dadfa9f04a10d Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=57bf745be96462355350fa18ec1dadfa9f04a10d commit 57bf745be96462355350fa18ec1dadfa9f04a10d Author: Mateusz Guzik AuthorDate: 2025-10-05 17:03:54 +0000 Commit: Mateusz Guzik CommitDate: 2025-10-15 02:12:32 +0000 vfs offset: fix assertion failure in face of racing ffofset and setfl locking Both use the same 16 bit var to store their locked and waiters bits, then this in file_v_unlock: state = atomic_load_16(flagsp); if ((state & lock_wait_bit) == 0 && atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) return; can fail if for example foffset is being unlocked while setfl is getting locked. Afterwards the code assumes there are blocked waiters on foffset. Reviewed by: kib, markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D52915 --- sys/kern/vfs_vnops.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 5b25e2680ee4..4d1df41cf588 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -767,9 +767,12 @@ file_v_lock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_bit) == 0 && - atomic_cmpset_acq_16(flagsp, state, state | lock_bit)) - return; + for (;;) { + if ((state & lock_bit) != 0) + break; + if (atomic_fcmpset_acq_16(flagsp, &state, state | lock_bit)) + return; + } sleepq_lock(flagsp); state = atomic_load_16(flagsp); @@ -803,9 +806,12 @@ file_v_unlock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_wait_bit) == 0 && - atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) - return; + for (;;) { + if ((state & lock_wait_bit) != 0) + break; + if (atomic_fcmpset_rel_16(flagsp, &state, state & ~lock_bit)) + return; + } sleepq_lock(flagsp); MPASS((*flagsp & lock_bit) != 0); From nobody Wed Oct 15 05:57:29 2025 X-Original-To: dev-commits-src-branches@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 4cmgNB1wkcz6Cm92; Wed, 15 Oct 2025 05:57: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmgNB1MYFz3HbG; Wed, 15 Oct 2025 05:57:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760507850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lN5UcdLhcu8EkuOWN0CntqomebNa787JLConSA+BiGg=; b=J4Eyzrj3G/+v3H1tvC+mjmQJYEcOQUJdCVAm6uJzgnYLsMZr7njBqGMyqK3Mqta3FrwW8a I30v1jKls9m9avdQ3vPDseFFoyP/5VzGVcDyDzvGij2DewPDyRYCHT/wue/9SVTPeHwRpX A4xJqDCkYdEAV9vvA872/JlhVn/h4IB8aAero54VnjK4CvGdAAP10w0x+MpHas2XEhIoRU iOzrcwM8ZLEvCQcbbuCKpIQrTwaiSNtmRGzUpyrXLlvWlkpdWlM7r1brH5lkRfivb6QbJ2 78XbtxYeb2FjTYWqRjIJ8TBSYE3a8Nbet0uKp8/lnlxBn4jFQlvCtyNU/EF+sQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760507850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lN5UcdLhcu8EkuOWN0CntqomebNa787JLConSA+BiGg=; b=BNBo9iceQlWmnQFRc1bZpJkWPLEumjQ5zoGV7awEOtDZVMqZTCGFpYD9nVo1bZsgGlw/Bd Ey1UVFptodd4S+MfeYjLf3l5XeFktNBzGTrbOkS9G3/G4XoQuSzoDVDe9bb3nK/hsSJzzV Axq16T+ltuQFYhHlJdGQZd+dEJ5rDfJ4SEgVg/G5+GtokVKwicPcLPy1LvEbFXEybXvKKL 8eb2J6UCG6vI8l8hCPmCeJxjzV33P7oYZXrDgViyeeCOeNOS0DG5kT/qhID7psELnqISjU G/Y0e/wlSqenDBkYyrO3Q9a56gBneYJig323D6ihCORMdEJ6fq1Xud0XLzx+4Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760507850; a=rsa-sha256; cv=none; b=b6yfW48HEHSMT9ioN1s9tIk4EPNW7+bipNFFA/0ILt86pp1Y68z2MdN5GGf1hls5IsLhKv Gsfhd4yZ25E02d52J0CJvmLSF6SnCoTCsLsOgfjCYQhpfC8WwlK/LijkXTNEtO6p6aPzLR up3wO5ivjEv1go5yQ0VWljy4aSqyM7qckuGN2YRcARgJbeQ4i6Y6ARsStY/JOlIW+tXqYR BJ4bMFEDnSjjxPzbGEqEE0HXLtJ5q2vPLjS+Z/6gXYnUyGyZ7J844FE+/negKVhWGinmcf o/66LvvOb+nm3Y9JQCBGvzIHmyXV8vlsqND09+yMfXj5/Nggy+6ODIcsz2RxMA== 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 4cmgNB0wNnz9Wl; Wed, 15 Oct 2025 05:57: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 59F5vTUk002800; Wed, 15 Oct 2025 05: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 59F5vT4N002797; Wed, 15 Oct 2025 05:57:29 GMT (envelope-from git) Date: Wed, 15 Oct 2025 05:57:29 GMT Message-Id: <202510150557.59F5vT4N002797@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: ad2ca1c5c179 - stable/15 - vmimage.subr: Sort METALOG before running makefs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: ad2ca1c5c17935d8601b3ee48f705e1e5ede57bc Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=ad2ca1c5c17935d8601b3ee48f705e1e5ede57bc commit ad2ca1c5c17935d8601b3ee48f705e1e5ede57bc Author: Colin Percival AuthorDate: 2025-10-12 04:32:29 +0000 Commit: Colin Percival CommitDate: 2025-10-15 05:57:20 +0000 vmimage.subr: Sort METALOG before running makefs When creating VM images from pkgbase, the METALOG may not be in order; in particular, files may be listed before the directories which contain them. This causes makefs to create directories with 000 permissions. Interestingly, such VM images boot just fine, since root ignores those permissions; the first sign of trouble was sshd refusing logins with an error message which said absolutely nothing about /etc/ having incorrect permissions or being unable to read files inside it. Immediately prior to running makefs, sort the METALOG file. While we're here, uniquify as well; this does not guarantee that we do not have duplicate paths, but if there are duplicate paths with different settings something else has gone wrong and we don't really have any good way of solving the problem anyway. Reviewed by: ivy Hint from: imp MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53046 (cherry picked from commit 0cc81b375ea43c7e853b109d00c72c8c3b3df993) --- release/tools/vmimage.subr | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 15c4dd53e70b..c3c917dcd642 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -290,6 +290,11 @@ buildfs() { cat ${DESTDIR}/METALOG.pkg >> ${DESTDIR}/METALOG fi + # Sort METALOG file; makefs produces directories with 000 permissions + # if their contents are seen before the directories themselves. + env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted + mv ${DESTDIR}/METALOG.sorted ${DESTDIR}/METALOG + case "${VMFS}" in ufs) cd ${DESTDIR} && ${MAKEFS} ${MAKEFSARGS} -o label=rootfs -o version=2 -o softupdates=1 \ From nobody Wed Oct 15 06:08:51 2025 X-Original-To: dev-commits-src-branches@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 4cmgdH3HpFz6Cmwp; Wed, 15 Oct 2025 06:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmgdH2YVDz3Jdn; Wed, 15 Oct 2025 06:08:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508531; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+aQWRQe9vcJ68I6/T1c4s9VnWKPzyczSOTljbt18Ewg=; b=yYKa2qiGDiRLX1bdjGGXexNqD0b7DzU5flaKEYKTnhxcVP+grsZvPDvfTOZhN6irlrLl2x 1OLWGipQNqkv+dW6nsqu3qK0jv7Sqxov6WOaF0aDwt9iVohuYTIPmMrjtCavesX+efo8jt POZ9aq+5YJhcRQp6QWnhSiYyKSNsItZxNzEciBY0KJoNBxaNeM13BzM/ZLth/SfpX5Wvqq egYWRI2HoZMSQawgd+MApyagdYUfjKS/6YA82KNzIonmtItjUrBvrkGD1ksvHSdSTHVGg2 spvgcKYKVBdvGzoFL0+/EfjCmuBWlMmanV9WUfKVuteq0A3fQXvBC0Cf5GMpRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508531; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+aQWRQe9vcJ68I6/T1c4s9VnWKPzyczSOTljbt18Ewg=; b=Jb4XECc4cVjLR3+b716HaRSw025K9gNJRukafzfBXrK4+jMHJ5OlbmahYQ6i0srJh+0h34 J0gUsxBQsSaumHpX3tVy/ywfeh/aUQsecnhrWvsSlwhNJmZbkkCa4u9ez6mBY9Z44PDZFB Q9xvMYbYfOujLEXkLIoDyQU+h/mqXAoM8/+ICrMVRJNuc0z5WEGSJP2LNm+GxfjDevsTIu jceHju13oe0hmydqeQLc7cYx05Gx7W8pt33tGzSIqPxfS77pemvcggCizhm5DpqY2KNoXl un83sOF+RLptztzGuo91snyAC7wryB//5xK6a+v4a2OMUp7wTheQxLss/n44OA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760508531; a=rsa-sha256; cv=none; b=Fw3eFPpSmjzHbaw1H0tDldVwpUJdjxunu+5AYoODhdCqsN/bDKHqH/wKgE5clr75iby9dz 18B8rh98QP3Stpv6gJNN9ahltGnLTG2Ezce7vZQrmsc2h+N1c4UWlj96YU6Oe3Z73DaX3Q Kh3DxX3ZPdiESGtSaF43eML5fNwf8TIAKTCWpDoad0waEtk0IlMwYhcSj9czdZwNky62Fo aJna9YlyGXIYMUlxs9cW9TpkGbEymH+RNHVXrD+2kvwjeMDcC7sD5ybV9dbCbq6glmB9DH IhliE4QEfmqIRAGkrHq5vVlltv9aJdWIQkiUP46jetj+DEQJlAPV2t434qRdvQ== 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 4cmgdH26qhz9mD; Wed, 15 Oct 2025 06:08: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 59F68p0b023188; Wed, 15 Oct 2025 06:08:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F68pAb023185; Wed, 15 Oct 2025 06:08:51 GMT (envelope-from git) Date: Wed, 15 Oct 2025 06:08:51 GMT Message-Id: <202510150608.59F68pAb023185@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: 9bea2657c453 - releng/15.0 - vfs offset: fix assertion failure in face of racing ffofset and setfl locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 9bea2657c4538f234709a97010f05e2b776c87a6 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=9bea2657c4538f234709a97010f05e2b776c87a6 commit 9bea2657c4538f234709a97010f05e2b776c87a6 Author: Mateusz Guzik AuthorDate: 2025-10-05 17:03:54 +0000 Commit: Colin Percival CommitDate: 2025-10-15 06:08:01 +0000 vfs offset: fix assertion failure in face of racing ffofset and setfl locking Both use the same 16 bit var to store their locked and waiters bits, then this in file_v_unlock: state = atomic_load_16(flagsp); if ((state & lock_wait_bit) == 0 && atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) return; can fail if for example foffset is being unlocked while setfl is getting locked. Afterwards the code assumes there are blocked waiters on foffset. Approved by: re (cperciva) Reviewed by: kib, markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D52915 (cherry picked from commit f43e19db6cea0a7dd7bf51f3fe2227d466ea5a80) --- sys/kern/vfs_vnops.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index f81c2033d95e..e27692ccb1a3 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -806,9 +806,12 @@ file_v_lock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_bit) == 0 && - atomic_cmpset_acq_16(flagsp, state, state | lock_bit)) - return; + for (;;) { + if ((state & lock_bit) != 0) + break; + if (atomic_fcmpset_acq_16(flagsp, &state, state | lock_bit)) + return; + } sleepq_lock(flagsp); state = atomic_load_16(flagsp); @@ -842,9 +845,12 @@ file_v_unlock(struct file *fp, short lock_bit, short lock_wait_bit) flagsp = &fp->f_vflags; state = atomic_load_16(flagsp); - if ((state & lock_wait_bit) == 0 && - atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit)) - return; + for (;;) { + if ((state & lock_wait_bit) != 0) + break; + if (atomic_fcmpset_rel_16(flagsp, &state, state & ~lock_bit)) + return; + } sleepq_lock(flagsp); MPASS((*flagsp & lock_bit) != 0); From nobody Wed Oct 15 06:08:52 2025 X-Original-To: dev-commits-src-branches@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 4cmgdJ4pqzz6CmnV; Wed, 15 Oct 2025 06:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmgdJ3FBZz3JgT; Wed, 15 Oct 2025 06:08:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4t9aqHXXQDTMdB1gM/6q9s2241yC0sQ5dJb/KbvNP7k=; b=mv5PHawUcBOP4wRx82edXsIPiYdngOcu8V4CG0otaxvgBcly8vcjBI/tcuWLv+zDSm177+ 9dr62TfAtUPiCllsdzNI+qxMZ6m/Vz4bZX1CuDV8Sp2vPHrG4FIlAQ3QMNjXxIS0NBxFrj a4xkIkZ2VXhNHgitmd08+kM4xP2VZpQeUun8AX3bkvyChddH4b5fgac6uP2wCAoMRJg2+C EFUf2Oupe3hGU4NAtWoltPSiWOd8vQml+X0r6rCGdi5Fv/muvGr8ZULv26GWlU4AkcbtfR 5xQwIdOLCjO6b25yIVGB3gdCgUgGQYzPo3ObVbDBYbd3s00p82cKjvbt3ZTOHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4t9aqHXXQDTMdB1gM/6q9s2241yC0sQ5dJb/KbvNP7k=; b=YveVyOCoHXZHRcnwUAmR5S9+115ATrsKYeSWLADI2yOozFcz2rHJbmX84nAHYlcZ+McWe/ Y4ZliDnfxFN0l1kkRa0m3L82y1+U/fGvne30XuoNv9cgpDdOMIkS1Xl7IUemHxuV8LTVCA M9xVj5/jpRn1w32EQ3Pl7YWiLOmRNWQ0+xuSmqKSD9bF2aLQI0mzLvZiqKPRjxl9psUd6c kGb3SJfvQARc8UT8RhHnnblLzWHQh11lBfPXiOQkVMbF+MOoMG1ZGwnH1abHBwzq85QvJi baLWRzxxQiyKJiFy4Mj+CHJMUF2dyvV+DdfHxdD23/5+Hk9gSQTyx0a/TElVNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760508532; a=rsa-sha256; cv=none; b=tPpUeHen17EDKVZaIgHOphVati5gSmshXFY15b8NFKNG+jVUEqg4w9JE2TVp4il7uAnFMr 7aOaF8cLDps9nJRN0oMRM4uCcB6QXf7LePbufQqcrv108HZfZO1wY/qOkGzqT7aNH23sFe 95V4NmuIJSYCT0vDXNodLQcFYB93bmJZSS0XRORoRswwv6X6sf35AJGLGAFuzL9HZLHyuq yZhbXNS0lrlnTMXOjJ8tNdwW8lo0jAg+mX7XlZHuGWBS/+iSZJNCdtalmVi5SMWh0lAPOd eBaE+Tl4DgvN13col3ZH+3DQdifJIDxICNMxc24sAVGkAvopJ9yj4rN4xY4JUA== 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 4cmgdJ2mQzzB7d; Wed, 15 Oct 2025 06:08: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 59F68qJl023228; Wed, 15 Oct 2025 06:08:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F68qK5023225; Wed, 15 Oct 2025 06:08:52 GMT (envelope-from git) Date: Wed, 15 Oct 2025 06:08:52 GMT Message-Id: <202510150608.59F68qK5023225@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: 72e948cff17b - releng/15.0 - sockstat: improve indentation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 72e948cff17b5063cf89025c1cb30dcd2e3929d9 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=72e948cff17b5063cf89025c1cb30dcd2e3929d9 commit 72e948cff17b5063cf89025c1cb30dcd2e3929d9 Author: Michael Tuexen AuthorDate: 2025-10-07 02:04:35 +0000 Commit: Colin Percival CommitDate: 2025-10-15 06:08:05 +0000 sockstat: improve indentation No functional changes intended. Approved by: re (cperciva) Sponsored by: Netflix, Inc. (cherry picked from commit ab837a2eed6d7562d538ac5f90b3b2776a9f0f5f) (cherry picked from commit 3dac4b92ec992fc85d148bf7d2d2deb1dbc5c827) --- usr.bin/sockstat/main.c | 123 ++++++++++++++++++++++++------------------------ 1 file changed, 62 insertions(+), 61 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index 3b989c4283e4..a917672120d5 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1230,40 +1230,40 @@ calculate_sock_column_widths(struct col_widths *cw, struct sock *s) { .socket = s->splice_socket }); if (sp != NULL) { len = formataddr(&sp->laddr->address, - NULL, 0); + NULL, 0); cw->splice_address = MAX( - cw->splice_address, len); + cw->splice_address, len); } } } if (opt_i) { - if (s->proto == IPPROTO_TCP || s->proto == IPPROTO_UDP) - { + if (s->proto == IPPROTO_TCP || + s->proto == IPPROTO_UDP) { len = snprintf(NULL, 0, - "%" PRIu64, s->inp_gencnt); + "%" PRIu64, s->inp_gencnt); cw->inp_gencnt = MAX(cw->inp_gencnt, len); } } if (opt_U) { if (faddr != NULL && - ((s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) || - (s->proto == IPPROTO_TCP && - s->state != TCPS_CLOSED && - s->state != TCPS_LISTEN))) { + ((s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) || + (s->proto == IPPROTO_TCP && + s->state != TCPS_CLOSED && + s->state != TCPS_LISTEN))) { len = snprintf(NULL, 0, "%u", - ntohs(faddr->encaps_port)); + ntohs(faddr->encaps_port)); cw->encaps = MAX(cw->encaps, len); } } if (opt_s) { if (faddr != NULL && - s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) { + s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) { len = strlen(sctp_path_state(faddr->state)); cw->path_state = MAX(cw->path_state, len); } @@ -1271,21 +1271,22 @@ calculate_sock_column_widths(struct col_widths *cw, struct sock *s) if (first) { if (opt_s) { if (s->proto == IPPROTO_SCTP || - s->proto == IPPROTO_TCP) { + s->proto == IPPROTO_TCP) { switch (s->proto) { case IPPROTO_SCTP: len = strlen( sctp_conn_state(s->state)); cw->conn_state = MAX( - cw->conn_state, len); + cw->conn_state, len); break; case IPPROTO_TCP: if (s->state >= 0 && s->state < TCP_NSTATES) { - len = strlen( - tcpstates[s->state]); - cw->conn_state = MAX( - cw->conn_state, len); + len = strlen( + tcpstates[s->state]); + cw->conn_state = MAX( + cw->conn_state, + len); } break; } @@ -1462,8 +1463,8 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) cw->splice_address, buf); } if (opt_i) { - if (s->proto == IPPROTO_TCP || s->proto == IPPROTO_UDP) - { + if (s->proto == IPPROTO_TCP || + s->proto == IPPROTO_UDP) { snprintf(buf, bufsize, "%" PRIu64, s->inp_gencnt); xo_emit(" {:id/%*s}", cw->inp_gencnt, buf); @@ -1472,29 +1473,29 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) } if (opt_U) { if (faddr != NULL && - ((s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) || - (s->proto == IPPROTO_TCP && - s->state != TCPS_CLOSED && - s->state != TCPS_LISTEN))) { + ((s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) || + (s->proto == IPPROTO_TCP && + s->state != TCPS_CLOSED && + s->state != TCPS_LISTEN))) { xo_emit(" {:encaps/%*u}", cw->encaps, - ntohs(faddr->encaps_port)); + ntohs(faddr->encaps_port)); } else if (!is_xo_style_encoding) xo_emit(" {:encaps/%*s}", cw->encaps, "??"); } if (opt_s) { if (faddr != NULL && - s->proto == IPPROTO_SCTP && - s->state != SCTP_CLOSED && - s->state != SCTP_BOUND && - s->state != SCTP_LISTEN) { + s->proto == IPPROTO_SCTP && + s->state != SCTP_CLOSED && + s->state != SCTP_BOUND && + s->state != SCTP_LISTEN) { xo_emit(" {:path-state/%-*s}", cw->path_state, - sctp_path_state(faddr->state)); + sctp_path_state(faddr->state)); } else if (!is_xo_style_encoding) xo_emit(" {:path-state/%-*s}", cw->path_state, - "??"); + "??"); } if (first) { if (opt_s) { @@ -1503,40 +1504,40 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) switch (s->proto) { case IPPROTO_SCTP: xo_emit(" {:conn-state/%-*s}", - cw->conn_state, - sctp_conn_state(s->state)); + cw->conn_state, + sctp_conn_state(s->state)); break; case IPPROTO_TCP: if (s->state >= 0 && - s->state < TCP_NSTATES) + s->state < TCP_NSTATES) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, - tcpstates[s->state]); + cw->conn_state, + tcpstates[s->state]); else if (!is_xo_style_encoding) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, "??"); + cw->conn_state, "??"); break; } } else if (!is_xo_style_encoding) xo_emit(" {:conn-state/%-*s}", - cw->conn_state, "??"); + cw->conn_state, "??"); } if (opt_b) { if (s->proto == IPPROTO_TCP) xo_emit(" {:bblog-state/%-*s}", - cw->bblog_state, - bblog_state(s->bblog_state)); + cw->bblog_state, + bblog_state(s->bblog_state)); else if (!is_xo_style_encoding) xo_emit(" {:bblog-state/%-*s}", - cw->bblog_state, "??"); + cw->bblog_state, "??"); } if (opt_S) { if (s->proto == IPPROTO_TCP) xo_emit(" {:stack/%-*s}", - cw->stack, s->stack); + cw->stack, s->stack); else if (!is_xo_style_encoding) xo_emit(" {:stack/%-*s}", - cw->stack, "??"); + cw->stack, "??"); } if (opt_C) { if (s->proto == IPPROTO_TCP) @@ -1551,8 +1552,8 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) faddr = faddr->next; if (!is_xo_style_encoding && (laddr != NULL || faddr != NULL)) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw->user, "??", cw->command, "??", - cw->pid, "??", cw->fd, "??"); + " {:fd/%*s}", cw->user, "??", cw->command, "??", + cw->pid, "??", cw->fd, "??"); first = false; } xo_emit("\n"); @@ -1613,7 +1614,7 @@ display(void) xo_emit(" {T:/%*s}", cw.fib, "FIB"); if (opt_I) xo_emit(" {T:/%-*s}", cw.splice_address, - "SPLICE ADDRESS"); + "SPLICE ADDRESS"); if (opt_i) xo_emit(" {T:/%*s}", cw.inp_gencnt, "ID"); if (opt_U) @@ -1644,15 +1645,15 @@ display(void) if (opt_n || (pwd = cap_getpwuid(cappwd, xf->xf_uid)) == NULL) xo_emit("{:user/%-*lu}", cw.user, - (u_long)xf->xf_uid); + (u_long)xf->xf_uid); else xo_emit("{:user/%-*s}", cw.user, pwd->pw_name); if (!is_xo_style_encoding) xo_emit(" {:command/%-*.10s}", cw.command, - getprocname(xf->xf_pid)); + getprocname(xf->xf_pid)); else xo_emit(" {:command/%-*s}", cw.command, - getprocname(xf->xf_pid)); + getprocname(xf->xf_pid)); xo_emit(" {:pid/%*lu}", cw.pid, (u_long)xf->xf_pid); xo_emit(" {:fd/%*d}", cw.fd, xf->xf_fd); display_sock(s, &cw, buf, bufsize); @@ -1667,8 +1668,8 @@ display(void) xo_open_instance("socket"); if (!is_xo_style_encoding) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw.user, "??", cw.command, "??", - cw.pid, "??", cw.fd, "??"); + " {:fd/%*s}", cw.user, "??", cw.command, "??", + cw.pid, "??", cw.fd, "??"); display_sock(s, &cw, buf, bufsize); xo_close_instance("socket"); } @@ -1680,8 +1681,8 @@ display(void) xo_open_instance("socket"); if (!is_xo_style_encoding) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw.user, "??", cw.command, "??", - cw.pid, "??", cw.fd, "??"); + " {:fd/%*s}", cw.user, "??", cw.command, "??", + cw.pid, "??", cw.fd, "??"); display_sock(s, &cw, buf, bufsize); xo_close_instance("socket"); } From nobody Wed Oct 15 06:08:53 2025 X-Original-To: dev-commits-src-branches@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 4cmgdL3Nt7z6Cn7C; Wed, 15 Oct 2025 06:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmgdK4KJ8z3JvM; Wed, 15 Oct 2025 06:08:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508533; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gaSgPrJFuDhRmkpo13g4gHlp6Cw9znM/RsRJBUS6Qac=; b=BBKPJWrCdo4W3w2kOMk8FNYtKV1w8doNXWAMsyqFS/GVKoqtNGr9bkSG3TY8BCoYwop7SX B3nZ+BqpBtKDAFmfaUlbEklJ7Ney0DcxBaPGlYuiaS3K9dQQsdSTfCCHwI4TDiD8WqUaRi u+vcl61+swX42q6Km1JBIG0Riso1Q9PxHAynmK19iGX5lR5ohnpkWYMFhiWlhDVvKNiqPC rZCkqCnk+TbigjoM63v4FTCnWnKNw4YJFNMTDIiAbO8fNuiv4VGY1YsPH7HidmopwZPy59 HLUyiotPhSs8AK/ZSxVmop/jIUPsVd+pYBVRitZJvj37Z/AMo+vPUkrpwkAekw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508533; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gaSgPrJFuDhRmkpo13g4gHlp6Cw9znM/RsRJBUS6Qac=; b=C/oWsCXbThLNWPP+GxAZlIHCJPI4TDqUd/tjNDsmpeq3m9yajaVuyLgy7Iwzr0tSqToaen 2Es0/PkL6FhYYbWlP4++a5zk6xvGfLsb5s5uTXGmU+Bwix6B/cMajOkoebIuZviW+n6yuT dF7jzQR4akGmoMC6QpJ6Bwz+xySv59+TLKRNqWcc+tC4GQo96FmntP4Zp3w33YTW5ZLVLY jQdGqdPeK9U9CVcwJjyHeB8cHd0DrBxyorr7FYNh7AJutDJITrhLVb4BmhTeYzbCKtbByk C2HLMcuvjqupM6n5Hsvfp7CIqtGFU1+yzFB/z4Wg2jul8crrp2oD8IqGckn+9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760508533; a=rsa-sha256; cv=none; b=lNyyCKUxX4T3GPyAExKsgdwFvTp/LJM6VFSm2D7y8wsid684zRkepssLU/cUhvmqbPD2+J 42LViWtdZpjAT9nkpf62BX61O5mYOxILziR8ZHZ7gT8stg3vON/9Re17GfNKHU/HtTxXoC Phf9J64kjnq2Vp1keZhyfOdRtMTg76aZQF00HilCI/yjUB6bpBnpFHeWsd+YbYKszhT44C KLL8rQl/QWQ3n5PB4hQbBJwayTWZmunPZrrcpR4eiD19BivF/KMgMUP2U/EsOtAxC9zd52 b1DAnP8NSSA8jApG9HQW+XU6Uvtgg1jRsJwT+nDDPh2uvXIwFs/jBygljNy1bw== 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 4cmgdK3jsKz9ZK; Wed, 15 Oct 2025 06:08: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 59F68rck023263; Wed, 15 Oct 2025 06:08:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F68riK023260; Wed, 15 Oct 2025 06:08:53 GMT (envelope-from git) Date: Wed, 15 Oct 2025 06:08:53 GMT Message-Id: <202510150608.59F68riK023260@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: a9ffe497c864 - releng/15.0 - sockstat: improve output formatting List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: a9ffe497c864775e4979a7190ad3feb7884aec66 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a9ffe497c864775e4979a7190ad3feb7884aec66 commit a9ffe497c864775e4979a7190ad3feb7884aec66 Author: Michael Tuexen AuthorDate: 2025-10-09 19:10:53 +0000 Commit: Colin Percival CommitDate: 2025-10-15 06:08:09 +0000 sockstat: improve output formatting Fix the format when the output for a socket spans multiple lines. Approved by: re (cperciva) Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52984 (cherry picked from commit 98b2a2265f5ee47bd932347699e6117df2f41488) (cherry picked from commit 7e567f51ff59d169b5fd0bc350d0c7dfc9fc2609) --- usr.bin/sockstat/main.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index a917672120d5..f0eb83eb3e9f 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1545,18 +1545,30 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) else if (!is_xo_style_encoding) xo_emit(" {:cc/%-*s}", cw->cc, "??"); } + } else if (!is_xo_style_encoding) { + if (opt_s) + xo_emit(" {:conn-state/%-*s}", cw->conn_state, + "??"); + if (opt_b) + xo_emit(" {:bblog-state/%-*s}", cw->bblog_state, + "??"); + if (opt_S) + xo_emit(" {:stack/%-*s}", cw->stack, "??"); + if (opt_C) + xo_emit(" {:cc/%-*s}", cw->cc, "??"); } if (laddr != NULL) laddr = laddr->next; if (faddr != NULL) faddr = faddr->next; + xo_emit("\n"); if (!is_xo_style_encoding && (laddr != NULL || faddr != NULL)) xo_emit("{:user/%-*s} {:command/%-*s} {:pid/%*s}" - " {:fd/%*s}", cw->user, "??", cw->command, "??", - cw->pid, "??", cw->fd, "??"); + " {:fd/%*s} {:proto/%-*s}", cw->user, "??", + cw->command, "??", cw->pid, "??", cw->fd, "??", + cw->proto, "??"); first = false; } - xo_emit("\n"); } static void From nobody Wed Oct 15 06:08:54 2025 X-Original-To: dev-commits-src-branches@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 4cmgdM29rYz6CmnY; Wed, 15 Oct 2025 06:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmgdL5lWZz3JfM; Wed, 15 Oct 2025 06:08:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1iUv6qihaZHCJO4uoJ6/K7szpVxNHg6/cM0iCnbTu6Q=; b=CbQX4FXy/xyyQIBAUwVXi1MaO4nChc6RkKlMF3Y91VhUtTPLJ0a2KEmW7FqBzG1DMPZEvk WiL+XSZHk3cBLlsRBrSIXhsXbsQ6eo7BgpTh4bUymUSBoiPGXQCGnIS7bHhtiOauin1Iye 1E0HP7RShPuy0NpQVvFJSEJOpmRlvmbCJbDmHOm4Q/6Iu8deS0z+Oy1ny+HYRaMr69iAQ4 5dzpqbX1nW2LLsXDSHNWfMdLfpM8AuKhbce//Kz67OVlo9Qs7m+L3/ds3Pqj+Fe0Npbfhs 9uVac3i4/2p3D8NPE5PMm2/F+OWud1OZteO+bbcDwJ98nHnZuRTWQlct9zS/CQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760508534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1iUv6qihaZHCJO4uoJ6/K7szpVxNHg6/cM0iCnbTu6Q=; b=RkNvAhrjx1xg6DznVy2Uddm5mwXeyWX4uYsmun33UG6Z4CmcJllV9uKidaEABLxE5l0XrI to7fEYA8fxEiJpVxhDoaK9t6uYYFWI4SkCyOfGruQ3PXZ5m2VkmUvOt6AXb/c7yA5Q0QDr YUnL48gqbFJ2cmjVnkb77gXUS8rMRcBJdcs6n4LD68rTdgScUqKXXE7LMV53RVsyuzi95y ngc1cH4UcFSNmS34I1sym+BLlQdDmOFq684HpbB9EIRNi9FHmhFmiTUBSzJbguH8OZKcDK Xk2k+jl2bdsCgEDw5rChb+kqSjktynRZE9Q0v7m4hKXI2vHTmemaHwxmpgE4Zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760508534; a=rsa-sha256; cv=none; b=qooQXX6kdFVPQT6lEGaeqeY75vpg1WFbAblQJt/uz0gYY9EcnqnYtXtw/Bh8w+O+29MD8f TY+PYkRMyctZykU9tuWUqWzANyT2F4L2fQCD/kFPDkyzTIM1CmgW20FLJVa12t7wUPeGH0 7TNjlf+LBa04V2YpqRwlZtD1P5wF/OZx+g9ewWELdYs8A9Qh8vP/4KX730u2sdI7nngyY7 Ok3a3d9ElvrBOL1iBdqP4JkjgNwrvlPOupqji8Aw/UjraDNEgOr7+Ri/u3oDlkvpxxYdp3 Z1zztckd94N2MKLCPEJDSJBF4iGQoyhuBoA6kTi00uL8sEds6VKV9E6LDg8MIQ== 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 4cmgdL4fwLzBJq; Wed, 15 Oct 2025 06:08:54 +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 59F68sPf023298; Wed, 15 Oct 2025 06:08:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59F68sNU023295; Wed, 15 Oct 2025 06:08:54 GMT (envelope-from git) Date: Wed, 15 Oct 2025 06:08:54 GMT Message-Id: <202510150608.59F68sNU023295@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: f6751f1fc5a9 - releng/15.0 - vmimage.subr: Sort METALOG before running makefs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: f6751f1fc5a941a787503d6faf63a8bbd4403653 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f6751f1fc5a941a787503d6faf63a8bbd4403653 commit f6751f1fc5a941a787503d6faf63a8bbd4403653 Author: Colin Percival AuthorDate: 2025-10-12 04:32:29 +0000 Commit: Colin Percival CommitDate: 2025-10-15 06:08:12 +0000 vmimage.subr: Sort METALOG before running makefs When creating VM images from pkgbase, the METALOG may not be in order; in particular, files may be listed before the directories which contain them. This causes makefs to create directories with 000 permissions. Interestingly, such VM images boot just fine, since root ignores those permissions; the first sign of trouble was sshd refusing logins with an error message which said absolutely nothing about /etc/ having incorrect permissions or being unable to read files inside it. Immediately prior to running makefs, sort the METALOG file. While we're here, uniquify as well; this does not guarantee that we do not have duplicate paths, but if there are duplicate paths with different settings something else has gone wrong and we don't really have any good way of solving the problem anyway. Approved by: re (cperciva) Reviewed by: ivy Hint from: imp MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53046 (cherry picked from commit 0cc81b375ea43c7e853b109d00c72c8c3b3df993) (cherry picked from commit ad2ca1c5c17935d8601b3ee48f705e1e5ede57bc) --- release/tools/vmimage.subr | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 15c4dd53e70b..c3c917dcd642 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -290,6 +290,11 @@ buildfs() { cat ${DESTDIR}/METALOG.pkg >> ${DESTDIR}/METALOG fi + # Sort METALOG file; makefs produces directories with 000 permissions + # if their contents are seen before the directories themselves. + env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted + mv ${DESTDIR}/METALOG.sorted ${DESTDIR}/METALOG + case "${VMFS}" in ufs) cd ${DESTDIR} && ${MAKEFS} ${MAKEFSARGS} -o label=rootfs -o version=2 -o softupdates=1 \ From nobody Wed Oct 15 12:59:02 2025 X-Original-To: dev-commits-src-branches@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 4cmrkZ3jYvz6CLll; Wed, 15 Oct 2025 12:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmrkZ32m1z3CKt; Wed, 15 Oct 2025 12:59:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760533142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yHDs7fPSkNImwmvlnqO8PKrPhLpBZ8vvChhboUWH3Ew=; b=oL71lUiQajwlTZ7+WUIZ/7FDDOmtfYE//FzBlaE5At5x1XtwwexOil6th+YUYWxxA1Mruw 4fRnv/Hp88k3FK8FOfr7r0+kADO8iDXl+9s1oM8XB6p31tP2es3Dme1zc04juREIdvj+Ac ULmzLsudR9ytD9ZFCYmHXKA5Xk81YJIjLFnzmqF/y2Pxs+NRax2+IcNcQjQOzHBzRegVpx C7KMs8OD7ZazLTRf0QllRuxr+UU18W/Tp77bSwPz2X2mUHTfbZeFBQK8/vpTadlyl17goP d6YW3PtLpBWDeHLHw5ZXMI58FvRTG4OBA2r/oaBGcnRFCXe7pXjw0kUN9v6m7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760533142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yHDs7fPSkNImwmvlnqO8PKrPhLpBZ8vvChhboUWH3Ew=; b=FP+kBDmajhqEVsER5ZNqvgHV2uDjdEHhOdciz9k9auvy5VhNCXH5cFYx1l0k9uk8F6RHpm 7eTAX6Z3OuC7oloFQWDUMJksFZVJoc/z/ZIqXF80ZuxEjrX85rahIwL4p2jZe0I6/QYYKv b9Y7N+9WFPlFJ2EHiXyP+xCeMw410BDshEIvRktDSij97+c3s9FsrwMLIry/Jgt4lMnCFm R+XyfRGs5dqJNuzxM/OTz7SjnpFjZmyVyPkzHEmeEemsM74BXSORz/dXxaAeb90i21+LvV SYLWdZ+Tc0veRKP/38ZXp48WsLL+6t+R3NhOPzG5mbCQ2oqjIoGZSLc/AiggZw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760533142; a=rsa-sha256; cv=none; b=yIrBvyUZMuEoQRTGX7sMXoqQM8/LiZ2uzxnY4mdRQEvcCkZCInN0UjrfwxYpsJfkF1nQOx Des9ZDtyNfJ1/jICyByfnTbluFuZVFC3Sz95DkHdBcD4LBreHuSLlSruRzL3T8wOv7gg39 R4g4Ey/x8qF+n++eaqZybZ+dIclk8FcmLpToBZoIf050zRY0VlCb9cZ6AaYErCl7WAsTjl JGBv9G+EvFbcUMbbCg57uKcIqtL9P/wK/F5/l8lVh43whGePFzR7RHmx70+SnfwZAclynU +hcmRDMVXwI6ZU94LfkFDYlS7PTOWezPlLRicrYM0fXLEeEPd39rbbOIHjFELQ== 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 4cmrkZ2YK5zgKj; Wed, 15 Oct 2025 12:59: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 59FCx2ig094716; Wed, 15 Oct 2025 12:59:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FCx2jv094713; Wed, 15 Oct 2025 12:59:02 GMT (envelope-from git) Date: Wed, 15 Oct 2025 12:59:02 GMT Message-Id: <202510151259.59FCx2jv094713@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: f1b0e00d56a8 - stable/15 - packages: Rename unbound to local-unbound List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: f1b0e00d56a8b01be86ff41a05cb6916727cee8a Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=f1b0e00d56a8b01be86ff41a05cb6916727cee8a commit f1b0e00d56a8b01be86ff41a05cb6916727cee8a Author: Lexi Winter AuthorDate: 2025-10-15 11:00:35 +0000 Commit: Lexi Winter CommitDate: 2025-10-15 12:55:50 +0000 packages: Rename unbound to local-unbound This more accurately reflects its purpose, and its contents, since everything in the package is prefixed with "local-". While here, add a message on upgrade about regenerating the config. MFC after: 3 seconds Requested by: des Reviewed by: des Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53056 (cherry picked from commit bf84861460f9287fe9cf66b2cd22fefe8e242a28) --- UPDATING | 8 +++++++ etc/Makefile | 2 +- etc/mtree/BSD.var.dist | 4 ++-- lib/libunbound/Makefile | 6 ++--- libexec/rc/rc.d/Makefile | 2 +- .../ucl/{unbound-all.ucl => local-unbound-all.ucl} | 0 release/packages/ucl/local-unbound.ucl | 27 ++++++++++++++++++++++ usr.sbin/unbound/Makefile.inc | 2 +- 8 files changed, 43 insertions(+), 8 deletions(-) diff --git a/UPDATING b/UPDATING index 26c2355de1ac..6310ef5828c1 100644 --- a/UPDATING +++ b/UPDATING @@ -12,6 +12,14 @@ Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before updating system packages and/or ports. +20251015: + The "FreeBSD-unbound" package is renamed to "FreeBSD-local-unbound". + If you have set-optional or set-base installed, the new package will + be installed automatically, otherwise you should manually install the + new package and remove the old one. + + This change only affects pkgbase users. + 20251001: The deprecated ftpd(8) has been removed. Users who still need ftpd can install the ftp/freebsd-ftpd port. pkgbase users should remove diff --git a/etc/Makefile b/etc/Makefile index 93d4b489ec7d..bda70b8af391 100644 --- a/etc/Makefile +++ b/etc/Makefile @@ -68,7 +68,7 @@ distribution: # install the /etc/unbound symlink, otherwise, don't overwrite the user's # existing symlink. if [ "${NO_ROOT:Dtrue}" = true -o ! -e ${DESTDIR}/etc/unbound ]; then \ - ${INSTALL_SYMLINK} -Tpackage=unbound ../var/unbound \ + ${INSTALL_SYMLINK} -Tpackage=local-unbound ../var/unbound \ ${DESTDIR}/etc/unbound; \ fi .endif diff --git a/etc/mtree/BSD.var.dist b/etc/mtree/BSD.var.dist index b3372196f5f9..b55c0150848e 100644 --- a/etc/mtree/BSD.var.dist +++ b/etc/mtree/BSD.var.dist @@ -104,8 +104,8 @@ vi.recover mode=01777 .. .. - unbound uname=unbound gname=unbound mode=0755 tags=package=unbound - conf.d uname=unbound gname=unbound mode=0755 tags=package=unbound + unbound uname=unbound gname=unbound mode=0755 tags=package=local-unbound + conf.d uname=unbound gname=unbound mode=0755 tags=package=local-unbound .. .. yp diff --git a/lib/libunbound/Makefile b/lib/libunbound/Makefile index e2cd25ea8b34..1a31e50e6416 100644 --- a/lib/libunbound/Makefile +++ b/lib/libunbound/Makefile @@ -1,4 +1,3 @@ -PACKAGE=lib${LIB} # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound @@ -6,9 +5,10 @@ UNBOUNDDIR= ${SRCTOP}/contrib/unbound # Hold my beer and watch this .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/cachedb ${UNBOUNDDIR}/dns64 ${UNBOUNDDIR}/iterator ${UNBOUNDDIR}/sldns ${UNBOUNDDIR}/libunbound ${UNBOUNDDIR}/services ${UNBOUNDDIR}/services/cache ${UNBOUNDDIR}/util ${UNBOUNDDIR}/util/data ${UNBOUNDDIR}/respip ${UNBOUNDDIR}/util/storage ${UNBOUNDDIR}/validator -LIB= unbound +PACKAGE= local-unbound + +LIB= unbound PRIVATELIB= -PACKAGE= unbound CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR} -I${.CURDIR} CFLAGS+= -DOPENSSL_API_COMPAT=0x10100000L diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 093da31ed787..3b7f45e8f101 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -294,7 +294,7 @@ SSHPACKAGE= ssh SSH= sshd CONFGROUPS.${MK_UNBOUND}+= UNBOUND -UNBOUNDPACKAGE= unbound +UNBOUNDPACKAGE= local-unbound UNBOUND= local_unbound CONFGROUPS.${MK_VI}+= VI diff --git a/release/packages/ucl/unbound-all.ucl b/release/packages/ucl/local-unbound-all.ucl similarity index 100% rename from release/packages/ucl/unbound-all.ucl rename to release/packages/ucl/local-unbound-all.ucl diff --git a/release/packages/ucl/local-unbound.ucl b/release/packages/ucl/local-unbound.ucl new file mode 100644 index 000000000000..0f1c77a0d0ee --- /dev/null +++ b/release/packages/ucl/local-unbound.ucl @@ -0,0 +1,27 @@ +/* + * SPDX-License-Identifier: ISC + * + * Copyright (c) 2025 Lexi Winter + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +messages = [ + { + type: upgrade + message: < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Lexi Winter Subject: git: 9dab0e61a921 - stable/15 - ncurses: Add an ncurses-lib package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 9dab0e61a921b5f3c4db2e0e2b440aeb6a803e42 Auto-Submitted: auto-generated The branch stable/15 has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=9dab0e61a921b5f3c4db2e0e2b440aeb6a803e42 commit 9dab0e61a921b5f3c4db2e0e2b440aeb6a803e42 Author: Lexi Winter AuthorDate: 2025-10-15 12:28:43 +0000 Commit: Lexi Winter CommitDate: 2025-10-15 12:56:08 +0000 ncurses: Add an ncurses-lib package Set LIB_PACKAGE= in lib/ncurses/Makefile.inc so the ncurses libraries go into the ncurses-lib subpackage rather than the base package. This means applications that depend on ncurses can be installed without needing to install the various utilities and manpages. This removes a dependency from runtime to ncurses (it now depends on ncurses-lib instead). MFC after: 3 seconds Reviewed by: kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53060 (cherry picked from commit bde703e8b6ab3acc73bbb20f1ebe26221f33e9f1) --- lib/ncurses/Makefile.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/ncurses/Makefile.inc b/lib/ncurses/Makefile.inc index eea49908474c..e14867696834 100644 --- a/lib/ncurses/Makefile.inc +++ b/lib/ncurses/Makefile.inc @@ -1,6 +1,7 @@ # This is to include src/lib/Makefile.inc PACKAGE?= ncurses +LIB_PACKAGE= WARNS?= 3 .include "../Makefile.inc" From nobody Wed Oct 15 13:26:08 2025 X-Original-To: dev-commits-src-branches@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 4cmsKr4Svbz6CNqY; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsKr3tkVz3K6m; Wed, 15 Oct 2025 13:26:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534768; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V0p1uheLuj0MO5xqLpu9Q0/10xQF2AJHGv/2iTjfplE=; b=mPTXgxJ4gZ0vzg+Ba29a4GH6WSHnB2vVU+QBD7e7MvOV0v5UPzZOCvn7mEafRY+Sf5zW6N kz9CuUYB/Yx6PfqZniKDy8Cl50x5ykkM/coR4uZ41KRAEoWY5duFPwC/kPNBv0AazO0HEq /KHrBpg+l34ke1xhPDI5l5ErI7jWatMXZLByeVwsi8yrXeC/BB3i9+yLeY/j90aY05esnK 8BLE8HEoPSPgJPeG+rO3gMN9TiSF+H50X7gVqeehRRCHtdMHtA4a+9VR+GahAeruUiEE1i ljmDiNLgxttKZcxMFc4xIYNxHROuBiLHm6RH/TasPp0hpQEIrvcdlvtwh6SjYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534768; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V0p1uheLuj0MO5xqLpu9Q0/10xQF2AJHGv/2iTjfplE=; b=DZJAMxGgPszJ3kxCgdU7MAmezeZt+wCBwJCyaFc5kcki5B8lt5yF5XUIpQHKJlCiLhd5ah Nje5X2KpZFILA0xSJ+AZ3avyBmCuWBBWZnEjQRho2lqxKopp2JDHrtk6URxrYXM9GSHo7Q qAudW24U8a3LcrLicoGFjJfMNarDesTCYZIefy5YWzeMBJceO4cmNubPMid3GgWtE4DeR5 RowFKMVSczJcKOHk0Cs86cictibRDocmHTm3N91ExiVRM/zTcKTJuPNxaWqIvcoYgW2GH8 U2lm1WsmHHkkXaISLdBscy3UYp2M3YvqL7wXmwOBrsfIZWggYXbO6BW/tAs/jw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534768; a=rsa-sha256; cv=none; b=GPhDnqPCHRF+/PxdkBLUO9uOOwBDQhLnV/J4B8C53XAAzaqguEX99Q1SPlyE3w2UWinIcY sdYSNTWTItZWjRmV8EOnP4tbPOzbmSDN7xxpCUconQnJY8bFESlQOS5G+fdx3Rvyq4YbHy T9NOCqlfzWgkYmlgz+VSVW7wlaH5uU2ETYc0AJzGONiBjsL1s2QwerGgSPD6+oz0cpbgAo 8o1k3+wuOCd7ESASYDV+9sU0Bem4qC9qJr63DZQ1bzGyblS+p/H8KUqdaAqdbSKd0bYIWu /WONpA9Tx3VOwz9g5twwg2FNSRkrhVU6CYPtsmn0gRRhQjEvFT3fyXBQqAfD+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 4cmsKr3147zgk8; Wed, 15 Oct 2025 13:26: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 59FDQ8mJ050691; Wed, 15 Oct 2025 13:26:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQ8t7050688; Wed, 15 Oct 2025 13:26:08 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:08 GMT Message-Id: <202510151326.59FDQ8t7050688@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: c3005b65b2c1 - stable/14 - pw: pw_mkdb(3) does not set errno List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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: c3005b65b2c14ed082bf2d558990c7346bc82b5a Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c3005b65b2c14ed082bf2d558990c7346bc82b5a commit c3005b65b2c14ed082bf2d558990c7346bc82b5a Author: Mark Johnston AuthorDate: 2025-10-08 12:47:15 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:24:45 +0000 pw: pw_mkdb(3) does not set errno MFC after: 1 week Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. (cherry picked from commit b464c7a75e30e6149906458075b7eaf0841c7222) --- usr.sbin/pw/pwupd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/pw/pwupd.c b/usr.sbin/pw/pwupd.c index 89c1553c8c92..845a607ab1cb 100644 --- a/usr.sbin/pw/pwupd.c +++ b/usr.sbin/pw/pwupd.c @@ -119,7 +119,7 @@ pw_update(struct passwd * pwd, char const * user) */ if (pw_mkdb(pw != NULL ? pw->pw_name : NULL) == -1) { pw_fini(); - err(1, "pw_mkdb()"); + errx(1, "pw_mkdb()"); } free(pw); pw_fini(); From nobody Wed Oct 15 13:26:09 2025 X-Original-To: dev-commits-src-branches@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 4cmsKs4Q13z6CNyf; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsKs3tgMz3KCd; Wed, 15 Oct 2025 13:26:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2Qgalozvp/ctmhiFXNtG1wvCMwTMzVb/KA0+EsFraAI=; b=uQzCkJSTaF/e1eUN7PKKVRpQ26BXRU2/1Klv8Ew00FCVlZRUeh5mhJqiufMi4/lLROu/rY +F3q7DySTQhwxGE6rjXeeb9lyK4qs5yUBE9kDzXdM5TkWzssPEl/DIMrMtresFqy4Jxurq /G91Yrz89QSfRmt4YvVBcMbL8qzBaAosK+S3E5uMB322lY1L027toZcstg/kaizrk/EbYU JWU0I4rxg56EVttBHLNbLay2O6S7momDjVfIs1HVddfM64kqTrCfh6M3VzI2WPRYJE+nSA dx7lpQcneIr2J82UhQdxmnjequCscx/19l1kkIM6Yx8anLxZ5osERI0gmRKm6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2Qgalozvp/ctmhiFXNtG1wvCMwTMzVb/KA0+EsFraAI=; b=IxacvaqsY9AUkKOp36hpeZID5YTe3B9+l7WjlASBI6ve2myRRWPe6YO3hBIn7TCPUeW7mW JFZ9Ca63Nrfzec/MdDctrNPMISE8SUtfVqGoQLJosmxbViVZySSqS5ZlxKh3r2xSc2GOdU UGRGOwlOwNqmE/WIEH9qR+uJetSff6lUpvKfH8GipUSeq/hc68xSwld3X+TFohSa4NYGlg CC9gpzNcyBhdWbb+mAdvSQW1XKMlxgWhgq7fROGwk5Qo7HSBobcOLKb2ANMzm6JBtIfxpd MfamcKKoAYMRpRMqRk2ycuVd5Ad/OD01g/VgRZyNoGrLxWAfcKQt16umt2JuCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534769; a=rsa-sha256; cv=none; b=fvPB1CXvNiwvnzruqTXa7JrHqgD0wtH2dEIanR24LtJPD2TIhpoyJhAvIK8goj2oZ6Fmp/ 6xGKy4G0E+CsySpS0svmB04OFTykooeZOrcZmx93yZeYTdFsp0kJuG+pBWCqJhTxwLvoXx iW0mTe6jviKz41jM3Vv14m25WsF7Bw//D65e7HoGVE18CY8Dk5P/Mr+VRx7968FVipKGjY wXob6Dd+awmJ+bs/k2YQh1j/0roIZEYYu4Luwsd5srzCxEtX3TOeLCdEWK+taLkakjcLBK QvP4DSEY49spENDIybMQiBy+I2UL7AjJoH1PwzVps1sppHQgQlS+8AdOC01DzA== 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 4cmsKs3R79zgdc; Wed, 15 Oct 2025 13:26: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 59FDQ9Sn050723; Wed, 15 Oct 2025 13:26:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQ91h050720; Wed, 15 Oct 2025 13:26:09 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:09 GMT Message-Id: <202510151326.59FDQ91h050720@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: af51f41346ad - stable/14 - qat: enable qat driver for 402xx device List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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: af51f41346ad885e1ffe0d14b325c88cc65ac0cc Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=af51f41346ad885e1ffe0d14b325c88cc65ac0cc commit af51f41346ad885e1ffe0d14b325c88cc65ac0cc Author: Hareshx Sankar Raj AuthorDate: 2025-09-04 18:21:36 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:25:11 +0000 qat: enable qat driver for 402xx device Enabled qat driver support for 402xx device with ID 0x4944/0x4945. This is an additional device supported under the existing qat_4xxx driver. Firmwares specific to the 402xx device are added. Signed-off-by: Hareshx Sankar Raj Relnotes: yes Sponsored by: Intel Corporation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D52488 (cherry picked from commit 7fbd362c091b2b384d14c3ed5af9234bb2eff9c2) --- sys/contrib/dev/qat/qat_402xx.bin | Bin 0 -> 665360 bytes sys/contrib/dev/qat/qat_402xx_mmp.bin | Bin 0 -> 150084 bytes sys/dev/qat/include/common/adf_accel_devices.h | 4 ++ sys/dev/qat/qat_api/include/icp_sal_versions.h | 2 +- sys/dev/qat/qat_common/qat_uclo.c | 1 + sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c | 58 +++++++++++++++++++------ sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h | 6 +++ sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c | 15 ++++--- sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c | 15 ++++--- sys/modules/qatfw/qat_4xxx/Makefile | 5 ++- 10 files changed, 78 insertions(+), 28 deletions(-) diff --git a/sys/contrib/dev/qat/qat_402xx.bin b/sys/contrib/dev/qat/qat_402xx.bin new file mode 100644 index 000000000000..74151547edce Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx.bin differ diff --git a/sys/contrib/dev/qat/qat_402xx_mmp.bin b/sys/contrib/dev/qat/qat_402xx_mmp.bin new file mode 100644 index 000000000000..6404eb009d2f Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx_mmp.bin differ diff --git a/sys/dev/qat/include/common/adf_accel_devices.h b/sys/dev/qat/include/common/adf_accel_devices.h index c09aee8ea4bd..eeffc6a9132c 100644 --- a/sys/dev/qat/include/common/adf_accel_devices.h +++ b/sys/dev/qat/include/common/adf_accel_devices.h @@ -39,12 +39,16 @@ #define ADF_4XXXIOV_PCI_DEVICE_ID 0x4941 #define ADF_401XX_PCI_DEVICE_ID 0x4942 #define ADF_401XXIOV_PCI_DEVICE_ID 0x4943 +#define ADF_402XX_PCI_DEVICE_ID 0x4944 +#define ADF_402XXIOV_PCI_DEVICE_ID 0x4945 #define IS_QAT_GEN3(ID) ({ (ID == ADF_C4XXX_PCI_DEVICE_ID); }) static inline bool IS_QAT_GEN4(const unsigned int id) { return (id == ADF_4XXX_PCI_DEVICE_ID || id == ADF_401XX_PCI_DEVICE_ID || + id == ADF_402XX_PCI_DEVICE_ID || + id == ADF_402XXIOV_PCI_DEVICE_ID || id == ADF_4XXXIOV_PCI_DEVICE_ID || id == ADF_401XXIOV_PCI_DEVICE_ID); } diff --git a/sys/dev/qat/qat_api/include/icp_sal_versions.h b/sys/dev/qat/qat_api/include/icp_sal_versions.h index 03bcef4fcbbb..0eb227ade09c 100644 --- a/sys/dev/qat/qat_api/include/icp_sal_versions.h +++ b/sys/dev/qat/qat_api/include/icp_sal_versions.h @@ -26,7 +26,7 @@ /* Part name and number of the accelerator device */ #define SAL_INFO2_DRIVER_SW_VERSION_MAJ_NUMBER 3 -#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 15 +#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 16 #define SAL_INFO2_DRIVER_SW_VERSION_PATCH_NUMBER 0 /** diff --git a/sys/dev/qat/qat_common/qat_uclo.c b/sys/dev/qat/qat_common/qat_uclo.c index 54e8e8eb7421..b17020286d24 100644 --- a/sys/dev/qat/qat_common/qat_uclo.c +++ b/sys/dev/qat/qat_common/qat_uclo.c @@ -892,6 +892,7 @@ qat_uclo_get_dev_type(struct icp_qat_fw_loader_handle *handle) return ICP_QAT_AC_C4XXX_DEV_TYPE; case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: return ICP_QAT_AC_4XXX_A_DEV_TYPE; default: pr_err("QAT: unsupported device 0x%x\n", diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c index d730efd5952b..49e1e1859e78 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c @@ -536,8 +536,8 @@ adf_exit_accel_units(struct adf_accel_dev *accel_dev) } static const char * -get_obj_name(struct adf_accel_dev *accel_dev, - enum adf_accel_unit_services service) +get_obj_name_4xxx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) { switch (service) { case ADF_ACCEL_ASYM: @@ -553,6 +553,24 @@ get_obj_name(struct adf_accel_dev *accel_dev, } } +static const char * +get_obj_name_402xx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) +{ + switch (service) { + case ADF_ACCEL_ASYM: + return ADF_402XX_ASYM_OBJ; + case ADF_ACCEL_CRYPTO: + return ADF_402XX_SYM_OBJ; + case ADF_ACCEL_COMPRESSION: + return ADF_402XX_DC_OBJ; + case ADF_ACCEL_ADMIN: + return ADF_402XX_ADMIN_OBJ; + default: + return NULL; + } +} + static uint32_t get_objs_num(struct adf_accel_dev *accel_dev) { @@ -982,8 +1000,23 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->clock_frequency = ADF_4XXX_AE_FREQ; hw_data->get_sku = get_sku; hw_data->heartbeat_ctr_num = ADF_NUM_HB_CNT_PER_AE; - hw_data->fw_name = ADF_4XXX_FW; - hw_data->fw_mmp_name = ADF_4XXX_MMP; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_402XX_FW; + hw_data->fw_mmp_name = ADF_402XX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + break; + case ADF_401XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; + break; + + default: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + } hw_data->init_admin_comms = adf_init_admin_comms; hw_data->exit_admin_comms = adf_exit_admin_comms; hw_data->send_admin_init = adf_4xxx_send_admin_init; @@ -1002,7 +1035,13 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->get_ring_svc_map_data = get_ring_svc_map_data; hw_data->admin_ae_mask = ADF_4XXX_ADMIN_AE_MASK; hw_data->get_objs_num = get_objs_num; - hw_data->get_obj_name = get_obj_name; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->get_obj_name = get_obj_name_402xx; + break; + default: + hw_data->get_obj_name = get_obj_name_4xxx; + } hw_data->get_obj_cfg_ae_mask = get_obj_cfg_ae_mask; hw_data->get_service_type = adf_4xxx_get_service_type; hw_data->set_msix_rttable = set_msix_default_rttable; @@ -1022,15 +1061,6 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->query_storage_cap = 1; hw_data->ring_pair_reset = adf_gen4_ring_pair_reset; - switch (id) { - case ADF_401XX_PCI_DEVICE_ID: - hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; - break; - case ADF_4XXX_PCI_DEVICE_ID: - default: - hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; - } - adf_gen4_init_hw_csr_info(&hw_data->csr_info); adf_gen4_init_pf_pfvf_ops(&hw_data->csr_info.pfvf_ops); } diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h index c35ebbcadcd7..fa7249dca596 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h @@ -87,6 +87,12 @@ #define ADF_4XXX_SYM_OBJ "qat_4xxx_sym.bin" #define ADF_4XXX_ASYM_OBJ "qat_4xxx_asym.bin" #define ADF_4XXX_ADMIN_OBJ "qat_4xxx_admin.bin" +#define ADF_402XX_FW "qat_402xx_fw" +#define ADF_402XX_MMP "qat_402xx_mmp_fw" +#define ADF_402XX_DC_OBJ "qat_402xx_dc.bin" +#define ADF_402XX_SYM_OBJ "qat_402xx_sym.bin" +#define ADF_402XX_ASYM_OBJ "qat_402xx_asym.bin" +#define ADF_402XX_ADMIN_OBJ "qat_402xx_admin.bin" /* Only 3 types of images can be loaded including the admin image */ #define ADF_4XXX_MAX_OBJ 3 diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c index cb534dd03b86..f9ad39fa45f0 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXX, "qat_4xxx", "qat_4xxx"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XX_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -135,6 +137,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: adf_clean_hw_data_4xxx(accel_dev->hw_device); break; default: diff --git a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c index 2bbccb4d6b17..dbe40835ccbf 100644 --- a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXXVF, "qat_4xxxvf", "qat_4xxxvf"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XXIOV_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -76,6 +78,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXXIOV_PCI_DEVICE_ID: case ADF_401XXIOV_PCI_DEVICE_ID: + case ADF_402XXIOV_PCI_DEVICE_ID: adf_clean_hw_data_4xxxiov(accel_dev->hw_device); break; default: diff --git a/sys/modules/qatfw/qat_4xxx/Makefile b/sys/modules/qatfw/qat_4xxx/Makefile index fb7171bcaf45..f6f19d6cbe32 100644 --- a/sys/modules/qatfw/qat_4xxx/Makefile +++ b/sys/modules/qatfw/qat_4xxx/Makefile @@ -4,6 +4,9 @@ KMOD= qat_4xxx_fw -FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 +FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 \ + qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 \ + qat_402xx.bin:qat_402xx_fw:111 \ + qat_402xx_mmp.bin:qat_402xx_mmp_fw:111 .include From nobody Wed Oct 15 13:26:10 2025 X-Original-To: dev-commits-src-branches@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 4cmsKv0N0Lz6CNwN; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsKt5Vqhz3K9g; Wed, 15 Oct 2025 13:26:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3WlZ/3hghYAZ1TRK/+yOKEu9RySNNV/kyEwUAicytNg=; b=XVnQSrPzBLX42Ij10PCsOSRAEjjelY1EF7D4xgj6hooK+Dud9yph0Oo9b2aLgjGmldb57x 8gmo2UfQQbIhImrDgVdgRoh7gFOCfcUidwk7T8VK64j+AV5RwhVsMhaBenFNHO8sFPV7pE xYV6kfrPqHfw6/0oTPT5WPK2Qg7XUinoPxzgd7kq3lhv07N4saWOOca2rSPayNAYZVL0ru VxgSVV3YL7Df0Hkqe7p2Rv2mvNUlCti/y0T1HuBeobw+4S7oIBN0cHPHzMKUl2CoLMW5x9 Sry/drYibiCs22xzlwFLQrWoIHhzYR6H01BgCSClxQllPXQry1PqxV3dGUHB0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3WlZ/3hghYAZ1TRK/+yOKEu9RySNNV/kyEwUAicytNg=; b=mQCdOYKMjk8KPSUrZYu+vnCNekQoMIdP4GMp6pwzEgD9SyWNfKrlxsu/A7MATlUXXkgfvr T3FhagMK0s9oS6Je4bJggrcq5n3/3CsppjfJv8FpXstSc9IFFugkwKyMY42PdoaoTJkI2b gBstU6KHilKGH4GNEyJTF9p7Kq1aRUKAMNof0heyoc2fL/CZc7WYffaG+SG5GUJ/jPr3va ho1C7FFKuDcI9vTxZzOqgSdUmyHsC+GAe+bCVJxVQ+DXFLsfstJ5UelI9Byx1mGQCeU8qy lP7luaJwzvMK/BTBJ7cDdrLfPlG3iuOnKw40BIDCSooeSlvumjERv8mh24Y2WQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534770; a=rsa-sha256; cv=none; b=ykvUj1UMoAL+hGFCh0qeu6vbLeFbmqN0X6olJHHf9T3uL9WpQiFB9jApttN6xylSYZ9Bop Zvn8GTUbalQgY0nCpczGn83J7dMGF+zsNMkdmsg4gSzi6FlSUp9Ver7g2Fjg2SkGY8MvyE lB20bNvRhXWFR4GVYz0NeqdRvW3Hoznt82hQgbglveKdXN5ekAOFotc4Dhs3R5GlO7VEfS 2VRCg/Y2P/8dqBFR7MWNNFeOljN0MsBLcGCJ/XxtCu69QL3SNaGCBWu1wwww3jUS989Add anATCE5kxA+hvRmLb0jRM2dsY3hOGMzpPuo6OiS8G6rG3362R7oNPqR64dr+WQ== 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 4cmsKt4l4jzgdd; Wed, 15 Oct 2025 13:26: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 59FDQAgE050755; Wed, 15 Oct 2025 13:26:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQA8V050752; Wed, 15 Oct 2025 13:26:10 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:10 GMT Message-Id: <202510151326.59FDQA8V050752@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: d2d987b67919 - stable/14 - cryptocheck: Be friendlier when testing software crypto backends List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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: d2d987b67919044955d851a5072d1b74131bf39f Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d2d987b67919044955d851a5072d1b74131bf39f commit d2d987b67919044955d851a5072d1b74131bf39f Author: Mark Johnston AuthorDate: 2025-10-08 15:24:12 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:25:18 +0000 cryptocheck: Be friendlier when testing software crypto backends - Fail loudly if we can't change the kern.crypto.allow_soft sysctl. - Add more drivers to the list. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52490 (cherry picked from commit e63bf6aa523eb9a865b7ce34d01e75a13818b367) --- tools/tools/crypto/cryptocheck.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/tools/crypto/cryptocheck.c b/tools/tools/crypto/cryptocheck.c index 6506671455ac..46a364b0453c 100644 --- a/tools/tools/crypto/cryptocheck.c +++ b/tools/tools/crypto/cryptocheck.c @@ -362,9 +362,11 @@ enable_user_soft(void) size_t cursize = sizeof(curstate); if (sysctlbyname(CRYPT_SOFT_ALLOW, &curstate, &cursize, - &on, sizeof(on)) == 0) { + &on, sizeof(on)) == 0) { if (curstate == 0) atexit(reset_user_soft); + } else { + err(1, "sysctl(%s)", CRYPT_SOFT_ALLOW); } } @@ -373,7 +375,10 @@ crlookup(const char *devname) { struct crypt_find_op find; - if (strncmp(devname, "soft", 4) == 0) { + if (strncmp(devname, "soft", 4) == 0 || + strncmp(devname, "ossl", 4) == 0 || + strncmp(devname, "aesni", 5) == 0 || + strncmp(devname, "armv8crypto", 11) == 0) { enable_user_soft(); return CRYPTO_FLAG_SOFTWARE; } From nobody Wed Oct 15 13:26:37 2025 X-Original-To: dev-commits-src-branches@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 4cmsLP39mJz6CNlQ; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLP2WjMz3KmS; Wed, 15 Oct 2025 13:26:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SmgigluXds5tc67JJ9/2IWQc+CPHejpO/NmgEFvr0rQ=; b=nsJuxQB/EXSTeo9ThYF3cDOxyyfymUxEecDUmTFsTaKvxsUlFUI+R3uBpiQEtWQp8VGSRJ 990MK6XHXCpQDlHF34KiWL5sEAGQcz8wu21ACMgs9LgEs9qvJcSNeYD0S6L4LIbKBwhAb0 m4kn2wtVy6Y5HsgII9XUGpAIsF2hiCeTVbgrS4cRJ0dyRjkJ6ErweDMncsnAgd9sl66wtz pVKV5g6N7bwjXCrBa5JbOiJCi6PdjzFyMXIw3Ix4uo6S8G3BZ+AhPYP+eHdKff50R5x1jA GUsGV1CmOdYTAMXRYUiGqrAlieRiqffZ4MG8/AeFr6BfWB3SlpOC7/XNB4nidQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SmgigluXds5tc67JJ9/2IWQc+CPHejpO/NmgEFvr0rQ=; b=spdQS4Vutq9Sibk+ToWj7tJ+vgaMtr8xL6KzVTv8GOtqyY8I7Sfhl35ebi1k9fhkUhNWZm rbLsmQF43gV1q3KOguYCWL26qi4/QbIFH/oDOI05h6+NUsD/GKrGHqT4qrTeRDr75EFtf6 B+T6oM8azcBQUwVg4qZFZdixUspqc0cKH7BQTD/HcsDNQDiotT0znGWsf0C5mnkzwPrxCn wpcB4/HlhagrcQmUiLQLDZCckyBSs0WwpxZYK/PHd+HXu67MlktDyjjCWP5mXCeQ0Nlc9Z zQLZUIh8q/kNJEyZqhRZD7cEm42Uyt2bMJta8nt7EzgA7VhQbkxJJiY/L+kuXA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534797; a=rsa-sha256; cv=none; b=j5qc8zJ5R2QZww987XUrcBEoVxoXrfQ13oTS88I865YI4siJZ5YU83iBpKkhXSX9aGWge7 hKNDaZfCzNhWmfQMV23p5mPYo0N7Cqfl055xkaNeq6jfdrZ1YTPFy/HoeQd//HeSulObQA 7KOnNvJ4Ox9CtHFgrOY2+Bs3t9CCdVEIcB2Mvr+hKd9669ZuT3c4/zvXWdhWQdK2G6uKnJ CjunHIUJTul3w7oN7nfKrlTkwu9+7dakg4F3eKuqVi9d7Uk81E2Vh18odbZmci6E17A3vB NAsctqiWei3Mlx77GvBaI6G8P08+5llB7+5awNNzxJq3yGMOiormNoFS5Ve/mg== 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 4cmsLP1z9Kzh8m; Wed, 15 Oct 2025 13:26: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 59FDQbVA051017; Wed, 15 Oct 2025 13:26:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQbws051014; Wed, 15 Oct 2025 13:26:37 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:37 GMT Message-Id: <202510151326.59FDQbws051014@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: 8e957b78e684 - stable/15 - rc: Update dependencies for zpool scripts List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 8e957b78e6846c57e70d9c302c027fa02f13bb14 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=8e957b78e6846c57e70d9c302c027fa02f13bb14 commit 8e957b78e6846c57e70d9c302c027fa02f13bb14 Author: Mark Johnston AuthorDate: 2025-10-08 12:50:54 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:03 +0000 rc: Update dependencies for zpool scripts After commit 900bc0206348, zpool depends on mountcritlocal. zpoolreguid and zpoolupgrade depend on zpool and want to run before mountcritcycle, so we have a pair of cycles. Update zpoolreguid and zpoolupgrade to avoid this. Reviewed by: des MFC after: 3 days Fixes: 900bc0206348 ("rc.d/zpool: change mountcritlocal dep from BEFORE to REQUIRE") Differential Revision: https://reviews.freebsd.org/D52953 (cherry picked from commit ae6db60ff56de5b93de9f6fee6116cbc2d4b498e) --- libexec/rc/rc.d/zpoolreguid | 2 +- libexec/rc/rc.d/zpoolupgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/zpoolreguid b/libexec/rc/rc.d/zpoolreguid index f94630d9283f..c19f52d3d702 100755 --- a/libexec/rc/rc.d/zpoolreguid +++ b/libexec/rc/rc.d/zpoolreguid @@ -2,7 +2,7 @@ # PROVIDE: zpoolreguid # REQUIRE: zpool -# BEFORE: mountcritlocal +# BEFORE: FILESYSTEMS # KEYWORD: firstboot nojail . /etc/rc.subr diff --git a/libexec/rc/rc.d/zpoolupgrade b/libexec/rc/rc.d/zpoolupgrade index 1435cba7199c..5e623a9c2bf0 100755 --- a/libexec/rc/rc.d/zpoolupgrade +++ b/libexec/rc/rc.d/zpoolupgrade @@ -2,7 +2,7 @@ # PROVIDE: zpoolupgrade # REQUIRE: zpool -# BEFORE: mountcritlocal +# BEFORE: FILESYSTEMS # KEYWORD: firstboot nojail . /etc/rc.subr From nobody Wed Oct 15 13:26:38 2025 X-Original-To: dev-commits-src-branches@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 4cmsLQ5klcz6CP2y; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLQ3H9Nz3Kts; Wed, 15 Oct 2025 13:26:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CLd7LXPB4R/80CycyhsHbJ7YUSfp6FKm6M5m21Y/elY=; b=ky5H4a9tAvSOfqDi1DLwGXHXVreV+bioK3bumIC8T9phqoXoFPSZsjjwQ6IqO0KxMWdnd8 x2L5g4xdFNbTPyU42yp9dZiJkzTBgO9vqpjV+jwrgWBk+yxicrCgGPR5SJaOgitdJ0WiZp sFONBwkYApBQTxw47emCZlr7PEaHXN8MLnbNTZRZwWF4lg2RMHQ9aqEXjTjZqU52CahqGz wxPoS89LX6Fw0XGN25E7f6/uZmsKxGWhOly+BZkUoZqBK0l3IBd/scjjhTrqmpXZ/1Kv7b hioAlnLk5b0vYVb1LVVeKmq9Ws4OiXnhTLCL5R0l/fwC70L9j5tF00vCnYCHww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CLd7LXPB4R/80CycyhsHbJ7YUSfp6FKm6M5m21Y/elY=; b=Es+hhjagWKUJ5fOXZkKDJM4owaaTQAUs8ZWZ+hXoo9FNm6ZjR8XNBXU097HkDAqmkziTN8 LuS0GnbxCbUiKl80Rrr5e/megic1aATIp7j1FVbeTHtEj03VJxcldf1OnDUWWpeavlU7/r M0ZvRt80bswXGo416hxEanHDkm4m5FEqAX2B7L9TosPOfXEK2CyDPTLulIRQ3lse/6I4QC aJv3p5fYMccs3jxeOaY/0G9aZecppdQONsxjKHMI1MgXpMjNyFltfBYJe2liflGk9BGD9U wKq13vmlQM6wWsWSF/PnG1RDzxNk/fAmm7/Vj4zEnH6oqqb3XsXnbQW53FEqWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534798; a=rsa-sha256; cv=none; b=Xfq65D/flgz0NCPMpvMTBgJKpQIWQpavsfyv1z29ZJIBIYyAqfgLKn+M/E9Rg1NT1rcz+N ywFyjgJtZ+CWGEAHBP6+nCzNQu0jgeBc1w8m2hvy6Yl3eYvzFxcIwRW2rDXBeJb/LrjI36 mmvC0s9lQi/7456LaWrqbcyluHR+fwsodkbZGS2opkRHBA/uvFdvLBO5Oma1qckLTOBswl 3fFIGisUZAQeI1O1NeW79cbEle3Vg7QNTOJXA1OSOH11waw3bAQajUoGg0gw/DbJJ7z98M 50POozsz0JlTWcU9ov9CoSLVmm0GaPvDf4F+MvPFxqZNkHlRZx4fNUC3zPcdqw== 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 4cmsLQ2jlbzg6L; Wed, 15 Oct 2025 13:26: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 59FDQccK051055; Wed, 15 Oct 2025 13:26:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQcLI051051; Wed, 15 Oct 2025 13:26:38 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:38 GMT Message-Id: <202510151326.59FDQcLI051051@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: ead69828206e - stable/15 - ossl: Add GCM support on powerpc64/powerpc64le (POWER8+) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: ead69828206e01ee0cc8f9436def1ea76327377e Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=ead69828206e01ee0cc8f9436def1ea76327377e commit ead69828206e01ee0cc8f9436def1ea76327377e Author: Timothy Pearson AuthorDate: 2025-09-10 16:54:24 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:03 +0000 ossl: Add GCM support on powerpc64/powerpc64le (POWER8+) Separate ossl's existing AES-NI GCM implementation into a common ossl_aes_gcm.c and add conditionals to switch between OpenSSL's AES-NI and POWER8 GCM routines depending on the architecture. Since the existing AVX-512 implementation is less agnostic, move it into a separate ossl_aes_gcm_avx512.c. Reviewed by: markj MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D44274 (cherry picked from commit 5daf8ed625af70ebb7e4740ab98a6054e9e52329) --- sys/conf/files.amd64 | 3 +- sys/conf/files.arm | 2 +- sys/conf/files.powerpc | 3 + sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c | 232 ++++++++++++ .../arm/{ossl_aes_gcm.c => ossl_aes_gcm_neon.c} | 0 sys/crypto/openssl/{amd64 => }/ossl_aes_gcm.c | 397 ++++++++------------- sys/crypto/openssl/ossl_ppc.c | 9 +- sys/crypto/openssl/ossl_x86.c | 6 +- sys/modules/ossl/Makefile | 7 +- 9 files changed, 410 insertions(+), 249 deletions(-) diff --git a/sys/conf/files.amd64 b/sys/conf/files.amd64 index c12ab9db030a..a342242ac66e 100644 --- a/sys/conf/files.amd64 +++ b/sys/conf/files.amd64 @@ -107,7 +107,8 @@ crypto/openssl/amd64/poly1305-x86_64.S optional ossl crypto/openssl/amd64/sha1-x86_64.S optional ossl crypto/openssl/amd64/sha256-x86_64.S optional ossl crypto/openssl/amd64/sha512-x86_64.S optional ossl -crypto/openssl/amd64/ossl_aes_gcm.c optional ossl +crypto/openssl/amd64/ossl_aes_gcm_avx512.c optional ossl +crypto/openssl/ossl_aes_gcm.c optional ossl dev/amdgpio/amdgpio.c optional amdgpio dev/axgbe/if_axgbe_pci.c optional axp dev/axgbe/xgbe-desc.c optional axp diff --git a/sys/conf/files.arm b/sys/conf/files.arm index 91b01845519e..880e804b6c95 100644 --- a/sys/conf/files.arm +++ b/sys/conf/files.arm @@ -132,7 +132,7 @@ libkern/udivdi3.c standard libkern/umoddi3.c standard crypto/openssl/ossl_arm.c optional ossl -crypto/openssl/arm/ossl_aes_gcm.c optional ossl +crypto/openssl/arm/ossl_aes_gcm_neon.c optional ossl crypto/openssl/arm/aes-armv4.S optional ossl \ compile-with "${NORMAL_C} -I${SRCTOP}/sys/crypto/openssl" crypto/openssl/arm/bsaes-armv7.S optional ossl \ diff --git a/sys/conf/files.powerpc b/sys/conf/files.powerpc index d2c3aa260cd9..0deada385f31 100644 --- a/sys/conf/files.powerpc +++ b/sys/conf/files.powerpc @@ -31,9 +31,11 @@ zfs-sha512-ppc.o optional zfs \ # openssl ppc common files crypto/openssl/ossl_ppc.c optional ossl powerpc64 | ossl powerpc64le +crypto/openssl/ossl_aes_gcm.c optional ossl powerpc64 | ossl powerpc64le # openssl assembly files (powerpc64le) crypto/openssl/powerpc64le/aes-ppc.S optional ossl powerpc64le +crypto/openssl/powerpc64le/aes-gcm-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/aesp8-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/chacha-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/ecp_nistz256-ppc64.S optional ossl powerpc64le @@ -54,6 +56,7 @@ crypto/openssl/powerpc64le/x25519-ppc64.S optional ossl powerpc64le # openssl assembly files (powerpc64) crypto/openssl/powerpc64/aes-ppc.S optional ossl powerpc64 +crypto/openssl/powerpc64/aes-gcm-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/aesp8-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/chacha-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/ecp_nistz256-ppc64.S optional ossl powerpc64 diff --git a/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c b/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c new file mode 100644 index 000000000000..694ed4fc8b32 --- /dev/null +++ b/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c @@ -0,0 +1,232 @@ +/* + * Copyright 2010-2022 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2021, Intel Corporation. All Rights Reserved. + * + * Licensed under the Apache License 2.0 (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* + * This file contains an AES-GCM wrapper implementation from OpenSSL, using + * VAES extensions. It was ported from cipher_aes_gcm_hw_vaes_avx512.inc. + */ + +#include +#include + +#include +#include +#include + +#include + +_Static_assert( + sizeof(struct ossl_gcm_context) <= sizeof(struct ossl_cipher_context), + "ossl_gcm_context too large"); + +void aesni_set_encrypt_key(const void *key, int bits, void *ctx); + +static void +gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +{ + KASSERT(keylen == 128 || keylen == 192 || keylen == 256, + ("%s: invalid key length %zu", __func__, keylen)); + + memset(&ctx->gcm, 0, sizeof(ctx->gcm)); + memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); + aesni_set_encrypt_key(key, keylen, &ctx->aes_ks); + ctx->ops->init(ctx, key, keylen); +} + +static void +gcm_tag(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) +{ + (void)ctx->ops->finish(ctx, NULL, 0); + memcpy(tag, ctx->gcm.Xi.c, len); +} + +void ossl_gcm_gmult_avx512(uint64_t Xi[2], void *gcm128ctx); +void ossl_aes_gcm_init_avx512(const void *ks, void *gcm128ctx); +void ossl_aes_gcm_setiv_avx512(const void *ks, void *gcm128ctx, + const unsigned char *iv, size_t ivlen); +void ossl_aes_gcm_update_aad_avx512(void *gcm128ctx, const unsigned char *aad, + size_t len); +void ossl_aes_gcm_encrypt_avx512(const void *ks, void *gcm128ctx, + unsigned int *pblocklen, const unsigned char *in, size_t len, + unsigned char *out); +void ossl_aes_gcm_decrypt_avx512(const void *ks, void *gcm128ctx, + unsigned int *pblocklen, const unsigned char *in, size_t len, + unsigned char *out); +void ossl_aes_gcm_finalize_avx512(void *gcm128ctx, unsigned int pblocklen); + +static void +gcm_init_avx512(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +{ + ossl_aes_gcm_init_avx512(&ctx->aes_ks, &ctx->gcm); +} + +static void +gcm_setiv_avx512(struct ossl_gcm_context *ctx, const unsigned char *iv, + size_t len) +{ + KASSERT(len == AES_GCM_IV_LEN, + ("%s: invalid IV length %zu", __func__, len)); + + ctx->gcm.Yi.u[0] = 0; /* Current counter */ + ctx->gcm.Yi.u[1] = 0; + ctx->gcm.Xi.u[0] = 0; /* AAD hash */ + ctx->gcm.Xi.u[1] = 0; + ctx->gcm.len.u[0] = 0; /* AAD length */ + ctx->gcm.len.u[1] = 0; /* Message length */ + ctx->gcm.ares = 0; + ctx->gcm.mres = 0; + + ossl_aes_gcm_setiv_avx512(&ctx->aes_ks, ctx, iv, len); +} + +static int +gcm_aad_avx512(struct ossl_gcm_context *ctx, const unsigned char *aad, + size_t len) +{ + uint64_t alen = ctx->gcm.len.u[0]; + size_t lenblks; + unsigned int ares; + + /* Bad sequence: call of AAD update after message processing */ + if (ctx->gcm.len.u[1]) + return -2; + + alen += len; + /* AAD is limited by 2^64 bits, thus 2^61 bytes */ + if (alen > (1ull << 61) || (sizeof(len) == 8 && alen < len)) + return -1; + ctx->gcm.len.u[0] = alen; + + ares = ctx->gcm.ares; + /* Partial AAD block left from previous AAD update calls */ + if (ares > 0) { + /* + * Fill partial block buffer till full block + * (note, the hash is stored reflected) + */ + while (ares > 0 && len > 0) { + ctx->gcm.Xi.c[15 - ares] ^= *(aad++); + --len; + ares = (ares + 1) % AES_BLOCK_LEN; + } + /* Full block gathered */ + if (ares == 0) { + ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); + } else { /* no more AAD */ + ctx->gcm.ares = ares; + return 0; + } + } + + /* Bulk AAD processing */ + lenblks = len & ((size_t)(-AES_BLOCK_LEN)); + if (lenblks > 0) { + ossl_aes_gcm_update_aad_avx512(ctx, aad, lenblks); + aad += lenblks; + len -= lenblks; + } + + /* Add remaining AAD to the hash (note, the hash is stored reflected) */ + if (len > 0) { + ares = (unsigned int)len; + for (size_t i = 0; i < len; ++i) + ctx->gcm.Xi.c[15 - i] ^= aad[i]; + } + + ctx->gcm.ares = ares; + + return 0; +} + +static int +_gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len, bool encrypt) +{ + uint64_t mlen = ctx->gcm.len.u[1]; + + mlen += len; + if (mlen > ((1ull << 36) - 32) || (sizeof(len) == 8 && mlen < len)) + return -1; + + ctx->gcm.len.u[1] = mlen; + + /* Finalize GHASH(AAD) if AAD partial blocks left unprocessed */ + if (ctx->gcm.ares > 0) { + ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); + ctx->gcm.ares = 0; + } + + if (encrypt) { + ossl_aes_gcm_encrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, + in, len, out); + } else { + ossl_aes_gcm_decrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, + in, len, out); + } + + return 0; +} + +static int +gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len) +{ + return _gcm_encrypt_avx512(ctx, in, out, len, true); +} + +static int +gcm_decrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len) +{ + return _gcm_encrypt_avx512(ctx, in, out, len, false); +} + +static int +gcm_finish_avx512(struct ossl_gcm_context *ctx, const unsigned char *tag, + size_t len) +{ + unsigned int *res = &ctx->gcm.mres; + + /* Finalize AAD processing */ + if (ctx->gcm.ares > 0) + res = &ctx->gcm.ares; + + ossl_aes_gcm_finalize_avx512(ctx, *res); + + ctx->gcm.ares = ctx->gcm.mres = 0; + + if (tag != NULL) + return timingsafe_bcmp(ctx->gcm.Xi.c, tag, len); + return 0; +} + +static const struct ossl_aes_gcm_ops gcm_ops_avx512 = { + .init = gcm_init_avx512, + .setiv = gcm_setiv_avx512, + .aad = gcm_aad_avx512, + .encrypt = gcm_encrypt_avx512, + .decrypt = gcm_decrypt_avx512, + .finish = gcm_finish_avx512, + .tag = gcm_tag, +}; + +int ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, void *_ctx); + +int +ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, + void *_ctx) +{ + struct ossl_gcm_context *ctx; + + ctx = _ctx; + ctx->ops = &gcm_ops_avx512; + gcm_init(ctx, key, klen); + return (0); +} diff --git a/sys/crypto/openssl/arm/ossl_aes_gcm.c b/sys/crypto/openssl/arm/ossl_aes_gcm_neon.c similarity index 100% rename from sys/crypto/openssl/arm/ossl_aes_gcm.c rename to sys/crypto/openssl/arm/ossl_aes_gcm_neon.c diff --git a/sys/crypto/openssl/amd64/ossl_aes_gcm.c b/sys/crypto/openssl/ossl_aes_gcm.c similarity index 52% rename from sys/crypto/openssl/amd64/ossl_aes_gcm.c rename to sys/crypto/openssl/ossl_aes_gcm.c index d08b2ac8a759..e1cdc710c3aa 100644 --- a/sys/crypto/openssl/amd64/ossl_aes_gcm.c +++ b/sys/crypto/openssl/ossl_aes_gcm.c @@ -1,6 +1,7 @@ /* * Copyright 2010-2022 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2021, Intel Corporation. All Rights Reserved. + * Copyright (c) 2023, Raptor Engineering, LLC. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,11 +10,10 @@ */ /* - * This file contains 2 AES-GCM wrapper implementations from OpenSSL, using - * AES-NI and VAES extensions respectively. These were ported from - * cipher_aes_gcm_hw_aesni.inc and cipher_aes_gcm_hw_vaes_avx512.inc. The - * AES-NI implementation makes use of a generic C implementation for partial - * blocks, ported from gcm128.c with OPENSSL_SMALL_FOOTPRINT defined. + * This file contains an AES-GCM wrapper implementation from OpenSSL, using + * AES-NI (x86) or POWER8 Crypto Extensions (ppc). It was ported from + * cipher_aes_gcm_hw_aesni.inc and it makes use of a generic C implementation + * for partial blocks, ported from gcm128.c with OPENSSL_SMALL_FOOTPRINT defined. */ #include @@ -29,225 +29,152 @@ _Static_assert( sizeof(struct ossl_gcm_context) <= sizeof(struct ossl_cipher_context), "ossl_gcm_context too large"); -void aesni_set_encrypt_key(const void *key, int bits, void *ctx); - -static void -gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) -{ - KASSERT(keylen == 128 || keylen == 192 || keylen == 256, - ("%s: invalid key length %zu", __func__, keylen)); - - memset(&ctx->gcm, 0, sizeof(ctx->gcm)); - memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); - aesni_set_encrypt_key(key, keylen, &ctx->aes_ks); - ctx->ops->init(ctx, key, keylen); -} - -static void -gcm_tag(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) -{ - (void)ctx->ops->finish(ctx, NULL, 0); - memcpy(tag, ctx->gcm.Xi.c, len); -} +#if defined(__amd64__) || defined(__i386__) +#define AES_set_encrypt_key aesni_set_encrypt_key +#define AES_gcm_encrypt aesni_gcm_encrypt +#define AES_gcm_decrypt aesni_gcm_decrypt +#define AES_encrypt aesni_encrypt +#define AES_ctr32_encrypt_blocks aesni_ctr32_encrypt_blocks +#define GCM_init gcm_init_avx +#define GCM_gmult gcm_gmult_avx +#define GCM_ghash gcm_ghash_avx + +void AES_set_encrypt_key(const void *key, int bits, void *ctx); +size_t AES_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +size_t AES_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +void AES_encrypt(const unsigned char *in, unsigned char *out, void *ks); +void AES_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, + size_t blocks, void *ks, const unsigned char *iv); -void ossl_gcm_gmult_avx512(uint64_t Xi[2], void *gcm128ctx); -void ossl_aes_gcm_init_avx512(const void *ks, void *gcm128ctx); -void ossl_aes_gcm_setiv_avx512(const void *ks, void *gcm128ctx, - const unsigned char *iv, size_t ivlen); -void ossl_aes_gcm_update_aad_avx512(void *gcm128ctx, const unsigned char *aad, +void GCM_init(__uint128_t Htable[16], uint64_t Xi[2]); +void GCM_gmult(uint64_t Xi[2], const __uint128_t Htable[16]); +void GCM_ghash(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, size_t len); -void ossl_aes_gcm_encrypt_avx512(const void *ks, void *gcm128ctx, - unsigned int *pblocklen, const unsigned char *in, size_t len, - unsigned char *out); -void ossl_aes_gcm_decrypt_avx512(const void *ks, void *gcm128ctx, - unsigned int *pblocklen, const unsigned char *in, size_t len, - unsigned char *out); -void ossl_aes_gcm_finalize_avx512(void *gcm128ctx, unsigned int pblocklen); - -static void -gcm_init_avx512(struct ossl_gcm_context *ctx, const void *key, size_t keylen) -{ - ossl_aes_gcm_init_avx512(&ctx->aes_ks, &ctx->gcm); -} -static void -gcm_setiv_avx512(struct ossl_gcm_context *ctx, const unsigned char *iv, - size_t len) -{ - KASSERT(len == AES_GCM_IV_LEN, - ("%s: invalid IV length %zu", __func__, len)); +#elif defined(__powerpc64__) +#define AES_set_encrypt_key aes_p8_set_encrypt_key +#define AES_gcm_encrypt(i,o,l,k,v,x) ppc_aes_gcm_crypt(i,o,l,k,v,x,1) +#define AES_gcm_decrypt(i,o,l,k,v,x) ppc_aes_gcm_crypt(i,o,l,k,v,x,0) +#define AES_encrypt aes_p8_encrypt +#define AES_ctr32_encrypt_blocks aes_p8_ctr32_encrypt_blocks +#define GCM_init gcm_init_p8 +#define GCM_gmult gcm_gmult_p8 +#define GCM_ghash gcm_ghash_p8 + +size_t ppc_aes_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +size_t ppc_aes_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); - ctx->gcm.Yi.u[0] = 0; /* Current counter */ - ctx->gcm.Yi.u[1] = 0; - ctx->gcm.Xi.u[0] = 0; /* AAD hash */ - ctx->gcm.Xi.u[1] = 0; - ctx->gcm.len.u[0] = 0; /* AAD length */ - ctx->gcm.len.u[1] = 0; /* Message length */ - ctx->gcm.ares = 0; - ctx->gcm.mres = 0; +void AES_set_encrypt_key(const void *key, int bits, void *ctx); +void AES_encrypt(const unsigned char *in, unsigned char *out, void *ks); +void AES_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, + size_t blocks, void *ks, const unsigned char *iv); - ossl_aes_gcm_setiv_avx512(&ctx->aes_ks, ctx, iv, len); -} +void GCM_init(__uint128_t Htable[16], uint64_t Xi[2]); +void GCM_gmult(uint64_t Xi[2], const __uint128_t Htable[16]); +void GCM_ghash(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, + size_t len); -static int -gcm_aad_avx512(struct ossl_gcm_context *ctx, const unsigned char *aad, - size_t len) +static size_t +ppc_aes_gcm_crypt(const unsigned char *in, unsigned char *out, + size_t len, const void *key, unsigned char ivec_[16], uint64_t *Xi, + int encrypt) { - uint64_t alen = ctx->gcm.len.u[0]; - size_t lenblks; - unsigned int ares; - - /* Bad sequence: call of AAD update after message processing */ - if (ctx->gcm.len.u[1]) - return -2; - - alen += len; - /* AAD is limited by 2^64 bits, thus 2^61 bytes */ - if (alen > (1ull << 61) || (sizeof(len) == 8 && alen < len)) - return -1; - ctx->gcm.len.u[0] = alen; + union { + uint32_t d[4]; + uint8_t c[16]; + } *ivec = (void *)ivec_; + int s = 0; + int ndone = 0; + int ctr_reset = 0; + uint32_t ivec_val; + uint64_t blocks_unused; + uint64_t nb = len / 16; + uint64_t next_ctr = 0; + unsigned char ctr_saved[12]; + + memcpy(ctr_saved, ivec, 12); + + while (nb) { + ivec_val = ivec->d[3]; +#if BYTE_ORDER == LITTLE_ENDIAN + ivec_val = bswap32(ivec_val); +#endif - ares = ctx->gcm.ares; - /* Partial AAD block left from previous AAD update calls */ - if (ares > 0) { - /* - * Fill partial block buffer till full block - * (note, the hash is stored reflected) - */ - while (ares > 0 && len > 0) { - ctx->gcm.Xi.c[15 - ares] ^= *(aad++); - --len; - ares = (ares + 1) % AES_BLOCK_LEN; - } - /* Full block gathered */ - if (ares == 0) { - ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); - } else { /* no more AAD */ - ctx->gcm.ares = ares; - return 0; + blocks_unused = (uint64_t)0xffffffffU + 1 - (uint64_t)ivec_val; + if (nb > blocks_unused) { + len = blocks_unused * 16; + nb -= blocks_unused; + next_ctr = blocks_unused; + ctr_reset = 1; + } else { + len = nb * 16; + next_ctr = nb; + nb = 0; } - } - /* Bulk AAD processing */ - lenblks = len & ((size_t)(-AES_BLOCK_LEN)); - if (lenblks > 0) { - ossl_aes_gcm_update_aad_avx512(ctx, aad, lenblks); - aad += lenblks; - len -= lenblks; - } + s = encrypt ? ppc_aes_gcm_encrypt(in, out, len, key, ivec->c, Xi) : + ppc_aes_gcm_decrypt(in, out, len, key, ivec->c, Xi); - /* Add remaining AAD to the hash (note, the hash is stored reflected) */ - if (len > 0) { - ares = (unsigned int)len; - for (size_t i = 0; i < len; ++i) - ctx->gcm.Xi.c[15 - i] ^= aad[i]; + /* add counter to ivec */ +#if BYTE_ORDER == LITTLE_ENDIAN + ivec->d[3] = bswap32(ivec_val + next_ctr); +#else + ivec->d[3] += next_ctr; +#endif + if (ctr_reset) { + ctr_reset = 0; + in += len; + out += len; + } + memcpy(ivec, ctr_saved, 12); + ndone += s; } - ctx->gcm.ares = ares; - - return 0; + return ndone; } -static int -_gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len, bool encrypt) -{ - uint64_t mlen = ctx->gcm.len.u[1]; - - mlen += len; - if (mlen > ((1ull << 36) - 32) || (sizeof(len) == 8 && mlen < len)) - return -1; - - ctx->gcm.len.u[1] = mlen; - - /* Finalize GHASH(AAD) if AAD partial blocks left unprocessed */ - if (ctx->gcm.ares > 0) { - ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); - ctx->gcm.ares = 0; - } - - if (encrypt) { - ossl_aes_gcm_encrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, - in, len, out); - } else { - ossl_aes_gcm_decrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, - in, len, out); - } - - return 0; -} +#else +#error "Unsupported architecture!" +#endif -static int -gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len) +static void +gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) { - return _gcm_encrypt_avx512(ctx, in, out, len, true); -} + KASSERT(keylen == 128 || keylen == 192 || keylen == 256, + ("%s: invalid key length %zu", __func__, keylen)); -static int -gcm_decrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len) -{ - return _gcm_encrypt_avx512(ctx, in, out, len, false); + memset(&ctx->gcm, 0, sizeof(ctx->gcm)); + memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); + AES_set_encrypt_key(key, keylen, &ctx->aes_ks); + ctx->ops->init(ctx, key, keylen); } -static int -gcm_finish_avx512(struct ossl_gcm_context *ctx, const unsigned char *tag, - size_t len) +static void +gcm_tag_op(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) { - unsigned int *res = &ctx->gcm.mres; - - /* Finalize AAD processing */ - if (ctx->gcm.ares > 0) - res = &ctx->gcm.ares; - - ossl_aes_gcm_finalize_avx512(ctx, *res); - - ctx->gcm.ares = ctx->gcm.mres = 0; - - if (tag != NULL) - return timingsafe_bcmp(ctx->gcm.Xi.c, tag, len); - return 0; + (void)ctx->ops->finish(ctx, NULL, 0); + memcpy(tag, ctx->gcm.Xi.c, len); } -static const struct ossl_aes_gcm_ops gcm_ops_avx512 = { - .init = gcm_init_avx512, - .setiv = gcm_setiv_avx512, - .aad = gcm_aad_avx512, - .encrypt = gcm_encrypt_avx512, - .decrypt = gcm_decrypt_avx512, - .finish = gcm_finish_avx512, - .tag = gcm_tag, -}; - -size_t aesni_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, - const void *key, unsigned char ivec[16], uint64_t *Xi); -size_t aesni_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, - const void *key, unsigned char ivec[16], uint64_t *Xi); -void aesni_encrypt(const unsigned char *in, unsigned char *out, void *ks); -void aesni_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, - size_t blocks, void *ks, const unsigned char *iv); - -void gcm_init_avx(__uint128_t Htable[16], uint64_t Xi[2]); -void gcm_gmult_avx(uint64_t Xi[2], const __uint128_t Htable[16]); -void gcm_ghash_avx(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, - size_t len); - static void -gcm_init_aesni(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +gcm_init_op(struct ossl_gcm_context *ctx, const void *key, size_t keylen) { - aesni_encrypt(ctx->gcm.H.c, ctx->gcm.H.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.H.c, ctx->gcm.H.c, &ctx->aes_ks); #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.H.u[0] = bswap64(ctx->gcm.H.u[0]); ctx->gcm.H.u[1] = bswap64(ctx->gcm.H.u[1]); #endif - gcm_init_avx(ctx->gcm.Htable, ctx->gcm.H.u); + GCM_init(ctx->gcm.Htable, ctx->gcm.H.u); } static void -gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, +gcm_setiv_op(struct ossl_gcm_context *ctx, const unsigned char *iv, size_t len) { uint32_t ctr; @@ -269,7 +196,7 @@ gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, ctx->gcm.Xi.u[0] = 0; ctx->gcm.Xi.u[1] = 0; - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EK0.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EK0.c, &ctx->aes_ks); ctr++; #if BYTE_ORDER == LITTLE_ENDIAN @@ -280,7 +207,7 @@ gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, } static int -gcm_aad_aesni(struct ossl_gcm_context *ctx, const unsigned char *aad, +gcm_aad_op(struct ossl_gcm_context *ctx, const unsigned char *aad, size_t len) { size_t i; @@ -303,14 +230,14 @@ gcm_aad_aesni(struct ossl_gcm_context *ctx, const unsigned char *aad, n = (n + 1) % 16; } if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); else { ctx->gcm.ares = n; return 0; } } if ((i = (len & (size_t)-AES_BLOCK_LEN))) { - gcm_ghash_avx(ctx->gcm.Xi.u, ctx->gcm.Htable, aad, i); + GCM_ghash(ctx->gcm.Xi.u, ctx->gcm.Htable, aad, i); aad += i; len -= i; } @@ -341,7 +268,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -354,7 +281,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, n = mres % 16; for (i = 0; i < len; ++i) { if (n == 0) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN @@ -366,7 +293,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, ctx->gcm.Xi.c[n] ^= out[i] = in[i] ^ ctx->gcm.EKi.c[n]; mres = n = (n + 1) % 16; if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); } ctx->gcm.mres = mres; @@ -390,7 +317,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -408,7 +335,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, n = (n + 1) % 16; } if (n == 0) { - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); mres = 0; } else { ctx->gcm.mres = n; @@ -418,7 +345,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if ((i = (len & (size_t)-16))) { size_t j = i / 16; - aesni_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); + AES_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); ctr += (unsigned int)j; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -430,12 +357,12 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, while (j--) { for (i = 0; i < 16; ++i) ctx->gcm.Xi.c[i] ^= out[i]; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); out += 16; } } if (len) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -453,7 +380,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_encrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, +gcm_encrypt_op(struct ossl_gcm_context *ctx, const unsigned char *in, unsigned char *out, size_t len) { size_t bulk = 0, res; @@ -463,7 +390,7 @@ gcm_encrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, if ((error = gcm_encrypt(ctx, in, out, res)) != 0) return error; - bulk = aesni_gcm_encrypt(in + res, out + res, len - res, + bulk = AES_gcm_encrypt(in + res, out + res, len - res, &ctx->aes_ks, ctx->gcm.Yi.c, ctx->gcm.Xi.u); ctx->gcm.len.u[1] += bulk; bulk += res; @@ -492,7 +419,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -506,7 +433,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, for (i = 0; i < len; ++i) { uint8_t c; if (n == 0) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN @@ -520,7 +447,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, ctx->gcm.Xi.c[n] ^= c; mres = n = (n + 1) % 16; if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); } ctx->gcm.mres = mres; @@ -544,7 +471,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to decrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -564,7 +491,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, n = (n + 1) % 16; } if (n == 0) { - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); mres = 0; } else { ctx->gcm.mres = n; @@ -578,12 +505,12 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, size_t k; for (k = 0; k < 16; ++k) ctx->gcm.Xi.c[k] ^= in[k]; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); in += 16; } j = i / 16; in -= i; - aesni_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); + AES_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); ctr += (unsigned int)j; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -595,7 +522,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, len -= i; } if (len) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -615,7 +542,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, +gcm_decrypt_op(struct ossl_gcm_context *ctx, const unsigned char *in, unsigned char *out, size_t len) { size_t bulk = 0, res; @@ -625,7 +552,7 @@ gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, if ((error = gcm_decrypt(ctx, in, out, res)) != 0) return error; - bulk = aesni_gcm_decrypt(in + res, out + res, len - res, &ctx->aes_ks, + bulk = AES_gcm_decrypt(in + res, out + res, len - res, &ctx->aes_ks, ctx->gcm.Yi.c, ctx->gcm.Xi.u); ctx->gcm.len.u[1] += bulk; bulk += res; @@ -637,14 +564,14 @@ gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, +gcm_finish_op(struct ossl_gcm_context *ctx, const unsigned char *tag, size_t len) { uint64_t alen = ctx->gcm.len.u[0] << 3; uint64_t clen = ctx->gcm.len.u[1] << 3; if (ctx->gcm.mres || ctx->gcm.ares) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); #if BYTE_ORDER == LITTLE_ENDIAN alen = bswap64(alen); @@ -653,7 +580,7 @@ gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, ctx->gcm.Xi.u[0] ^= alen; ctx->gcm.Xi.u[1] ^= clen; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.Xi.u[0] ^= ctx->gcm.EK0.u[0]; ctx->gcm.Xi.u[1] ^= ctx->gcm.EK0.u[1]; @@ -663,40 +590,26 @@ gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, return 0; } -static const struct ossl_aes_gcm_ops gcm_ops_aesni = { - .init = gcm_init_aesni, - .setiv = gcm_setiv_aesni, - .aad = gcm_aad_aesni, - .encrypt = gcm_encrypt_aesni, - .decrypt = gcm_decrypt_aesni, - .finish = gcm_finish_aesni, - .tag = gcm_tag, +static const struct ossl_aes_gcm_ops gcm_ops = { + .init = gcm_init_op, + .setiv = gcm_setiv_op, + .aad = gcm_aad_op, + .encrypt = gcm_encrypt_op, + .decrypt = gcm_decrypt_op, + .finish = gcm_finish_op, + .tag = gcm_tag_op, }; -int ossl_aes_gcm_setkey_aesni(const unsigned char *key, int klen, void *_ctx); - -int -ossl_aes_gcm_setkey_aesni(const unsigned char *key, int klen, - void *_ctx) -{ - struct ossl_gcm_context *ctx; - - ctx = _ctx; - ctx->ops = &gcm_ops_aesni; - gcm_init(ctx, key, klen); - return (0); -} - -int ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, void *_ctx); +int ossl_aes_gcm_setkey(const unsigned char *key, int klen, void *_ctx); int -ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, +ossl_aes_gcm_setkey(const unsigned char *key, int klen, void *_ctx) { struct ossl_gcm_context *ctx; ctx = _ctx; - ctx->ops = &gcm_ops_avx512; + ctx->ops = &gcm_ops; gcm_init(ctx, key, klen); return (0); } diff --git a/sys/crypto/openssl/ossl_ppc.c b/sys/crypto/openssl/ossl_ppc.c index 0951745c4b43..980211f46a76 100644 *** 91 LINES SKIPPED *** From nobody Wed Oct 15 13:26:39 2025 X-Original-To: dev-commits-src-branches@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 4cmsLR54Rqz6CP32; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLR3qGBz3Kdb; Wed, 15 Oct 2025 13:26:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A1PA3RtMht0GIvHef760to9Fm4eoNkDFxcbuodxuvm0=; b=sDSn4dMc7WJpiSWR5PXS3ViyrgTIZf9Jxc7yKMXTw2LGYE+o/v8iV+kag3u5FxngVx2n5j 05TVBhsfHEVW0EJq5fXL3MVMdpheJS3zHPZZrh9mujqhsBWlMzdX6YfGwGqaC310WGjcSY BU4oZBdBzEFyuas0oq3BcfQP9fLLU6fCAt5C7NqhaEdJvQ6ShczQK3KaXUNzFxJfcC0iFs UFyNRMbfVzefa0M4nKONi+pdNbXWIcAUTMDA/1ipttGDZMnjU11n5orzC4zosZbHaCL/gs Fg5Kpf8v8Ax1yHJwSdvPhd5xwCfeNltOr0aq+YOGP4FrG2keBUoaxtUCohkDjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A1PA3RtMht0GIvHef760to9Fm4eoNkDFxcbuodxuvm0=; b=LK1m/BPIf4f7E6BjBhnaOTXXxwCdVw/EFHLqZhQRBEMUWlgkYXReOx0JNEPiuUNDeDA6OZ xvS1JKZzEQV8PAqa7udkRokz9HrXD5xIaBsWmY99MMjDRakndhzp0IyJAw0MKEqwTf5a5r lJ/s0kbWzyMK7jZrjlamzXP6zVjR6ItNUk7vwDhIG0LPbm6KX35ucmcncJtAwO/aELzt2u MDXLE4yiVcz+9qF63f5iN+rbc6m7IhmFV86DfjyL+E7VxL7tq4F/7nI8h9yUT1K6tmdyCa fHycftboEexWcJ0UxV0DVkPRIOKe0mlzt5caTCHGXWJ/U1ekjISGnJz+BSkAvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534799; a=rsa-sha256; cv=none; b=B4XW7SAN72HH5iej5pG/Bl+Mv2h8gHTC0AZxN8Iw2/b7/R4t2ro2gRavkS3MGHMbGh3J7O 9ba1qc+ieEpvei+3CUl09l8ymnri+OtTUvTwOhWeZaar9rNRd8UY04pkJFnx0GSIduEu4/ 4ow6F+LolJE9NI6PChwagtjxjWuOjZXUPNduoznwj9tS6QAqPNZzU9qBJ+sNwnkt6L/I6A FWrkEfWe3CV6Zi29GAsANMXeyrO7yk7CK+GVEvmAm2P/TargWbtYsKEV/6Vx+c29KiQdh5 7PUuFOO9/J0ruoJmhPpfJwXKV7LKVe7+rr+wp4bY2qNMmK+By4RTMVgnIn4XEw== 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 4cmsLR3QTczh8n; Wed, 15 Oct 2025 13:26: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 59FDQdW9051095; Wed, 15 Oct 2025 13:26:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQdDf051091; Wed, 15 Oct 2025 13:26:39 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:39 GMT Message-Id: <202510151326.59FDQdDf051091@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: 9bed273477dc - stable/15 - tests/mac_portacl: restore sysctls after modification List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 9bed273477dc8aee1e8bd8da2ae718c9210e7e86 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=9bed273477dc8aee1e8bd8da2ae718c9210e7e86 commit 9bed273477dc8aee1e8bd8da2ae718c9210e7e86 Author: Siva Mahadevan AuthorDate: 2025-07-15 16:45:24 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:03 +0000 tests/mac_portacl: restore sysctls after modification While here, use 'required_kmods' instead of ad-hoc checks. Signed-off-by: Siva Mahadevan Reviewed by: markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Pull Request: https://github.com/freebsd/freebsd-src/pull/1855 (cherry picked from commit 170aac93479467334062813c1175a80200400b79) --- tests/sys/mac/portacl/Makefile | 1 + tests/sys/mac/portacl/misc.sh | 12 ++---------- tests/sys/mac/portacl/nobody_test.sh | 1 + tests/sys/mac/portacl/root_test.sh | 1 + 4 files changed, 5 insertions(+), 10 deletions(-) diff --git a/tests/sys/mac/portacl/Makefile b/tests/sys/mac/portacl/Makefile index 856a85d331d5..28c3a5cd71ce 100644 --- a/tests/sys/mac/portacl/Makefile +++ b/tests/sys/mac/portacl/Makefile @@ -8,6 +8,7 @@ TAP_TESTS_SH+= nobody_test TAP_TESTS_SH+= root_test .for t in ${TAP_TESTS_SH} +TEST_METADATA.$t+= required_kmods="mac_portacl" TEST_METADATA.$t+= required_user="root" TEST_METADATA.$t+= timeout="450" TEST_METADATA.$t+= is_exclusive="true" diff --git a/tests/sys/mac/portacl/misc.sh b/tests/sys/mac/portacl/misc.sh index a1b729c87777..4d3f18fce1c1 100644 --- a/tests/sys/mac/portacl/misc.sh +++ b/tests/sys/mac/portacl/misc.sh @@ -1,15 +1,5 @@ #!/bin/sh -sysctl security.mac.portacl >/dev/null 2>&1 -if [ $? -ne 0 ]; then - echo "1..0 # SKIP MAC_PORTACL is unavailable." - exit 0 -fi -if [ $(id -u) -ne 0 ]; then - echo "1..0 # SKIP testcases must be run as root" - exit 0 -fi - ntest=1 check_bind() { @@ -95,6 +85,7 @@ bind_test() { sysctl security.mac.portacl.rules= >/dev/null } +portacl_enabled=$(sysctl -n security.mac.portacl.enabled) reserved_high=$(sysctl -n net.inet.ip.portrange.reservedhigh) suser_exempt=$(sysctl -n security.mac.portacl.suser_exempt) port_high=$(sysctl -n security.mac.portacl.port_high) @@ -103,4 +94,5 @@ restore_settings() { sysctl -n net.inet.ip.portrange.reservedhigh=${reserved_high} >/dev/null sysctl -n security.mac.portacl.suser_exempt=${suser_exempt} >/dev/null sysctl -n security.mac.portacl.port_high=${port_high} >/dev/null + sysctl -n security.mac.portacl.enabled=${portacl_enabled} >/dev/null } diff --git a/tests/sys/mac/portacl/nobody_test.sh b/tests/sys/mac/portacl/nobody_test.sh index 7e64f68113ea..a3f2168dc81d 100644 --- a/tests/sys/mac/portacl/nobody_test.sh +++ b/tests/sys/mac/portacl/nobody_test.sh @@ -13,6 +13,7 @@ trap restore_settings EXIT INT TERM sysctl security.mac.portacl.suser_exempt=1 >/dev/null sysctl net.inet.ip.portrange.reservedhigh=78 >/dev/null +sysctl security.mac.portacl.enabled=1 >/dev/null bind_test fl fl uid nobody tcp 77 bind_test ok ok uid nobody tcp 7777 diff --git a/tests/sys/mac/portacl/root_test.sh b/tests/sys/mac/portacl/root_test.sh index daa5b147b4fa..d8898ff4f80e 100644 --- a/tests/sys/mac/portacl/root_test.sh +++ b/tests/sys/mac/portacl/root_test.sh @@ -10,6 +10,7 @@ echo "1..48" trap restore_settings EXIT INT TERM sysctl security.mac.portacl.suser_exempt=1 >/dev/null +sysctl security.mac.portacl.enabled=1 >/dev/null bind_test ok ok uid root tcp 77 bind_test ok ok uid root tcp 7777 From nobody Wed Oct 15 13:26:40 2025 X-Original-To: dev-commits-src-branches@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 4cmsLS6rFYz6CNyx; Wed, 15 Oct 2025 13: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLS4crCz3Kdq; Wed, 15 Oct 2025 13: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=1760534800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=atD6l0N6jr6mOGIFu1AvWf8tsEt4dldeLR6Wth/+Uog=; b=qlya6dH+L3B3U1WHQyiMhZ9Nd6qkQlGpwsmm6RFpZJ/UOTdP4u/K7dMz4JPaMiT1erikg7 nNsvW6RBg9LIq7P3boBrBt0KiHzdyN4lJMf+2CQgU7obCjgZzA4+d0sv1VDcXTXfDkLmCo ua1qUAx/fjoPPg/3iqnjoukxlW2tATAF2UHHDbf6Kc63zRvZThNqyJkezW3SDZe/9TF27T f8MxWd99GZuSbGnynTpCDBa/s5phMLvuqvZJIwa97caPhWGoVQMJXCLf0iC9Twdw653Nvq J+HVDT/QTGjwqhPWBMCioW1hn5BVIryu3Cvjp4jDZIRUrWx0okunHjflj8Ek1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=atD6l0N6jr6mOGIFu1AvWf8tsEt4dldeLR6Wth/+Uog=; b=xolKp57gPXIVABrdwT/RGhWMy+IJtrnMIyas2ihOCTOs2Fer0JoaEDAQ4p1EdHv54Yi18G TLjWajKodOzf/Rjks7rAaWA/q8wK/ZnKwyO9Zav6VPj2gAj2a3w9CL1BlKBjB7DXmMpUqD kVu2QHPYf2g/rcwTP6ARrnaWpMAOwylhO13ksXZv0S+qaCvg9yvrdYLKqD8A+eXzMuXWli 3gB7lGvWOBNmM2woVu3rx8RufpIJ21DVMFl9WA+2eOPzHEVr8CjKLIja6rlm4EP4/i0ar2 VGQHrXA0QTo46QNLs/Tk0c2gnIhJPTK5TqHbTwuBvTbCLQTN5WX9XtfoljiLbA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534800; a=rsa-sha256; cv=none; b=Eq5veS4jYh9Gii0tyXM3+r44ZVNv2/pws3N1JigFHHXsCkwOBU2lywWOQ54N2Hx04L8opZ nSLPR5jzfd7i3DBeHDEFTby4ruhg4IfPsWMR7GFh2tnOokWemyNcxWtxU9oqfPwY9QIrEO E1Vd8r5Zqa4bld9vwjGNcHseSGJBjTrYjlk7zFdPaB4iHJ/zN61kjyXYTnfPn+PLtgJRM7 aLw3VWPnrrloTJublddIySU1nB3zAL0rck4oPjSynVqmotimEhWpL5Db1TVEkIExAgAnrk +wINhPbSEYXlVAZeDYhcy7RkWES1iYv7TAAyydbEJhOkdMUOjE/s8suSexTCyg== 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 4cmsLS3gD4zgvl; Wed, 15 Oct 2025 13: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 59FDQeR3051130; Wed, 15 Oct 2025 13: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 59FDQewZ051125; Wed, 15 Oct 2025 13:26:40 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:40 GMT Message-Id: <202510151326.59FDQewZ051125@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: df64ca1bfcd3 - stable/15 - tests/mac_ipacl: restore sysctls after modification List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: df64ca1bfcd32b19196c8b99b2b8e78520ef7f7c Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=df64ca1bfcd32b19196c8b99b2b8e78520ef7f7c commit df64ca1bfcd32b19196c8b99b2b8e78520ef7f7c Author: Siva Mahadevan AuthorDate: 2025-07-15 16:45:24 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:03 +0000 tests/mac_ipacl: restore sysctls after modification While here, use 'required_kmods' instead of ad-hoc checks. Signed-off-by: Siva Mahadevan Reviewed by: markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Pull request: https://github.com/freebsd/freebsd-src/pull/1856 (cherry picked from commit 79042fd7ed4187d2a74e37618f6fd77f448ca353) --- tests/sys/mac/ipacl/Makefile | 5 +++++ tests/sys/mac/ipacl/ipacl_test.sh | 16 ++++++++++++---- tests/sys/mac/ipacl/utils.subr | 4 ---- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/tests/sys/mac/ipacl/Makefile b/tests/sys/mac/ipacl/Makefile index e083f6c1a69c..93b29e250ea5 100644 --- a/tests/sys/mac/ipacl/Makefile +++ b/tests/sys/mac/ipacl/Makefile @@ -6,4 +6,9 @@ ATF_TESTS_SH+= ipacl_test ${PACKAGE}FILES+= utils.subr +.for t in ${ATF_TESTS_SH} +TEST_METADATA.$t+= required_kmods="mac_ipacl" +TEST_METADATA.$t+= is_exclusive="true" +.endfor + .include diff --git a/tests/sys/mac/ipacl/ipacl_test.sh b/tests/sys/mac/ipacl/ipacl_test.sh index 0de1b414857b..892f4c154b66 100644 --- a/tests/sys/mac/ipacl/ipacl_test.sh +++ b/tests/sys/mac/ipacl/ipacl_test.sh @@ -40,6 +40,9 @@ ipacl_v4_body() { ipacl_test_init + prev_ipacl_ipv4="$(sysctl -n security.mac.ipacl.ipv4)" + prev_ipacl_rules="$(sysctl -n security.mac.ipacl.rules)" + epairA=$(vnet_mkepair) epairB=$(vnet_mkepair) epairC=$(vnet_mkepair) @@ -130,8 +133,9 @@ ipacl_v4_body() atf_check -s not-exit:0 -e ignore \ jexec A ifconfig ${epairA}b 203.0.113.1/24 up - # Reset rules OID. - sysctl security.mac.ipacl.rules= + # Reset sysctls. + sysctl security.mac.ipacl.rules="${prev_ipacl_rules}" + sysctl security.mac.ipacl.ipv4="${prev_ipacl_ipv4}" } ipacl_v4_cleanup() @@ -151,6 +155,9 @@ ipacl_v6_body() { ipacl_test_init + prev_ipacl_ipv6="$(sysctl -n security.mac.ipacl.ipv6)" + prev_ipacl_rules="$(sysctl -n security.mac.ipacl.rules)" + epairA=$(vnet_mkepair) epairB=$(vnet_mkepair) epairC=$(vnet_mkepair) @@ -265,8 +272,9 @@ ipacl_v6_body() atf_check -s not-exit:0 -e ignore jexec A ifconfig \ ${epairA}b inet6 2001:db8::abcd/32 up - # Reset rules OID. - sysctl security.mac.ipacl.rules= + # Reset sysctls. + sysctl security.mac.ipacl.rules="${prev_ipacl_rules}" + sysctl security.mac.ipacl.ipv6="${prev_ipacl_ipv6}" } ipacl_v6_cleanup() diff --git a/tests/sys/mac/ipacl/utils.subr b/tests/sys/mac/ipacl/utils.subr index 1d80414bafea..2fff8b1862da 100644 --- a/tests/sys/mac/ipacl/utils.subr +++ b/tests/sys/mac/ipacl/utils.subr @@ -5,10 +5,6 @@ ipacl_test_init() { vnet_init - - if ! kldstat -q -m mac_ipacl; then - atf_skip "mac_ipacl is not loaded" - fi } ipacl_test_cleanup() From nobody Wed Oct 15 13:26:41 2025 X-Original-To: dev-commits-src-branches@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 4cmsLV12J3z6CNlb; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLT5Cnzz3Kq2; Wed, 15 Oct 2025 13:26:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hrypCXQkBQMhJEYXJ1tNIDFEQyeHU0HZ3TK713Ts9Ys=; b=h8onljl3h2emQVl0O/C47DvPuIacdSuzkm1wnyFFrDXJRvAa+CxkqJYpKNbCCfNVTq/BQm JL5hNZrk8neq0nsigAviDCO+AmXxarq+IKw91fEUFkUpTu9NOURuGvSyLuCqmNUK5pRsOc XAs69BBV8cYa7HwLvErKWMqmte17qtb9GAYyE2KZqvYZuJGzXXHE8I8Ndd3aOzbiD1821A A/98ZisjXiaEjGvZ2mzpHNBPmQM7UP4raX6tninnqeKBilTy2vgkCUkeYhfrbIStOT9NcJ lQiqTu4GOyygeoh6Q6POhq46B0/xga4gNtRtOobTuT0z8vUsqVCHzLi+2csvgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hrypCXQkBQMhJEYXJ1tNIDFEQyeHU0HZ3TK713Ts9Ys=; b=cf3hEpfE1Rn0/MVjowO4S/bsEyp2PnAxFlf2qWBOmpLjyoXQCE+H2kZT4ugrgr8gt+faS+ 41aQnIcN5ejyHD6EoQK3E0s9V0aiHJrn1iJjNVRjla5NGCy1LRhpgEvaWHe0X2bWRti7ov 7Oz5NPJLwK42AhLLtR76swY0V8ptGjUxQ37lxWM5igAMwU2ybg/6ZAWQkAOZbRw+P7JoCQ 88RmWQWNb33Htu571AGgE7o422UEKMk2ZI1GyYZQEadiKZwcQwHg8UE07zuc71sceZDOL5 9cvim9UtUkar3AjBRYvwXJ4y6yHpBW79Li8JxFMQ4nKW5u2hOpK0F7EjIaHhTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534801; a=rsa-sha256; cv=none; b=a0knY1YMLMJN5axu2jllo8yFCR2o5KCUOZIuaAmGoKyrIRxakPs8lB5//54NTTCXHOS0yc JHOD1ZHGvBU6MNEJtP09+HMocA4LlpgrNLYujWdHzUUNt0Wf5CXH5yWH8x5GTKDdzcqLaa mo97x3RDhi5ijWXsyKKyHybmDSFEsNHQ5R+GlTV0wfi2P/vpXWpug7w2RCsWL2eWcWJ1SC BB4927HkXxSd2I1wc41nDR3rbRU10KBlu59vYXqCHWstIAO/6bWHT8mMSsM0nW9J8kFtWi WadhX2pXMDOpxMF9JZRKC6VKCkvo3CgyF/eMq+EVWvU5Utp5M+waarU7C/9sog== 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 4cmsLT4kp0zgdf; Wed, 15 Oct 2025 13:26: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 59FDQfH9051164; Wed, 15 Oct 2025 13:26:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQfgw051161; Wed, 15 Oct 2025 13:26:41 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:41 GMT Message-Id: <202510151326.59FDQfgw051161@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: 88c0ce38bc18 - stable/15 - qat: enable qat driver for 402xx device List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 88c0ce38bc18acaf50188eda402384a0cb93890d Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=88c0ce38bc18acaf50188eda402384a0cb93890d commit 88c0ce38bc18acaf50188eda402384a0cb93890d Author: Hareshx Sankar Raj AuthorDate: 2025-09-04 18:21:36 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:05 +0000 qat: enable qat driver for 402xx device Enabled qat driver support for 402xx device with ID 0x4944/0x4945. This is an additional device supported under the existing qat_4xxx driver. Firmwares specific to the 402xx device are added. Signed-off-by: Hareshx Sankar Raj Relnotes: yes Sponsored by: Intel Corporation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D52488 (cherry picked from commit 7fbd362c091b2b384d14c3ed5af9234bb2eff9c2) --- sys/contrib/dev/qat/qat_402xx.bin | Bin 0 -> 665360 bytes sys/contrib/dev/qat/qat_402xx_mmp.bin | Bin 0 -> 150084 bytes sys/dev/qat/include/common/adf_accel_devices.h | 4 ++ sys/dev/qat/qat_api/include/icp_sal_versions.h | 2 +- sys/dev/qat/qat_common/qat_uclo.c | 1 + sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c | 58 +++++++++++++++++++------ sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h | 6 +++ sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c | 15 ++++--- sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c | 15 ++++--- sys/modules/qatfw/qat_4xxx/Makefile | 5 ++- 10 files changed, 78 insertions(+), 28 deletions(-) diff --git a/sys/contrib/dev/qat/qat_402xx.bin b/sys/contrib/dev/qat/qat_402xx.bin new file mode 100644 index 000000000000..74151547edce Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx.bin differ diff --git a/sys/contrib/dev/qat/qat_402xx_mmp.bin b/sys/contrib/dev/qat/qat_402xx_mmp.bin new file mode 100644 index 000000000000..6404eb009d2f Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx_mmp.bin differ diff --git a/sys/dev/qat/include/common/adf_accel_devices.h b/sys/dev/qat/include/common/adf_accel_devices.h index c09aee8ea4bd..eeffc6a9132c 100644 --- a/sys/dev/qat/include/common/adf_accel_devices.h +++ b/sys/dev/qat/include/common/adf_accel_devices.h @@ -39,12 +39,16 @@ #define ADF_4XXXIOV_PCI_DEVICE_ID 0x4941 #define ADF_401XX_PCI_DEVICE_ID 0x4942 #define ADF_401XXIOV_PCI_DEVICE_ID 0x4943 +#define ADF_402XX_PCI_DEVICE_ID 0x4944 +#define ADF_402XXIOV_PCI_DEVICE_ID 0x4945 #define IS_QAT_GEN3(ID) ({ (ID == ADF_C4XXX_PCI_DEVICE_ID); }) static inline bool IS_QAT_GEN4(const unsigned int id) { return (id == ADF_4XXX_PCI_DEVICE_ID || id == ADF_401XX_PCI_DEVICE_ID || + id == ADF_402XX_PCI_DEVICE_ID || + id == ADF_402XXIOV_PCI_DEVICE_ID || id == ADF_4XXXIOV_PCI_DEVICE_ID || id == ADF_401XXIOV_PCI_DEVICE_ID); } diff --git a/sys/dev/qat/qat_api/include/icp_sal_versions.h b/sys/dev/qat/qat_api/include/icp_sal_versions.h index 03bcef4fcbbb..0eb227ade09c 100644 --- a/sys/dev/qat/qat_api/include/icp_sal_versions.h +++ b/sys/dev/qat/qat_api/include/icp_sal_versions.h @@ -26,7 +26,7 @@ /* Part name and number of the accelerator device */ #define SAL_INFO2_DRIVER_SW_VERSION_MAJ_NUMBER 3 -#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 15 +#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 16 #define SAL_INFO2_DRIVER_SW_VERSION_PATCH_NUMBER 0 /** diff --git a/sys/dev/qat/qat_common/qat_uclo.c b/sys/dev/qat/qat_common/qat_uclo.c index 54e8e8eb7421..b17020286d24 100644 --- a/sys/dev/qat/qat_common/qat_uclo.c +++ b/sys/dev/qat/qat_common/qat_uclo.c @@ -892,6 +892,7 @@ qat_uclo_get_dev_type(struct icp_qat_fw_loader_handle *handle) return ICP_QAT_AC_C4XXX_DEV_TYPE; case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: return ICP_QAT_AC_4XXX_A_DEV_TYPE; default: pr_err("QAT: unsupported device 0x%x\n", diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c index d730efd5952b..49e1e1859e78 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c @@ -536,8 +536,8 @@ adf_exit_accel_units(struct adf_accel_dev *accel_dev) } static const char * -get_obj_name(struct adf_accel_dev *accel_dev, - enum adf_accel_unit_services service) +get_obj_name_4xxx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) { switch (service) { case ADF_ACCEL_ASYM: @@ -553,6 +553,24 @@ get_obj_name(struct adf_accel_dev *accel_dev, } } +static const char * +get_obj_name_402xx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) +{ + switch (service) { + case ADF_ACCEL_ASYM: + return ADF_402XX_ASYM_OBJ; + case ADF_ACCEL_CRYPTO: + return ADF_402XX_SYM_OBJ; + case ADF_ACCEL_COMPRESSION: + return ADF_402XX_DC_OBJ; + case ADF_ACCEL_ADMIN: + return ADF_402XX_ADMIN_OBJ; + default: + return NULL; + } +} + static uint32_t get_objs_num(struct adf_accel_dev *accel_dev) { @@ -982,8 +1000,23 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->clock_frequency = ADF_4XXX_AE_FREQ; hw_data->get_sku = get_sku; hw_data->heartbeat_ctr_num = ADF_NUM_HB_CNT_PER_AE; - hw_data->fw_name = ADF_4XXX_FW; - hw_data->fw_mmp_name = ADF_4XXX_MMP; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_402XX_FW; + hw_data->fw_mmp_name = ADF_402XX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + break; + case ADF_401XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; + break; + + default: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + } hw_data->init_admin_comms = adf_init_admin_comms; hw_data->exit_admin_comms = adf_exit_admin_comms; hw_data->send_admin_init = adf_4xxx_send_admin_init; @@ -1002,7 +1035,13 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->get_ring_svc_map_data = get_ring_svc_map_data; hw_data->admin_ae_mask = ADF_4XXX_ADMIN_AE_MASK; hw_data->get_objs_num = get_objs_num; - hw_data->get_obj_name = get_obj_name; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->get_obj_name = get_obj_name_402xx; + break; + default: + hw_data->get_obj_name = get_obj_name_4xxx; + } hw_data->get_obj_cfg_ae_mask = get_obj_cfg_ae_mask; hw_data->get_service_type = adf_4xxx_get_service_type; hw_data->set_msix_rttable = set_msix_default_rttable; @@ -1022,15 +1061,6 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->query_storage_cap = 1; hw_data->ring_pair_reset = adf_gen4_ring_pair_reset; - switch (id) { - case ADF_401XX_PCI_DEVICE_ID: - hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; - break; - case ADF_4XXX_PCI_DEVICE_ID: - default: - hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; - } - adf_gen4_init_hw_csr_info(&hw_data->csr_info); adf_gen4_init_pf_pfvf_ops(&hw_data->csr_info.pfvf_ops); } diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h index c35ebbcadcd7..fa7249dca596 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h @@ -87,6 +87,12 @@ #define ADF_4XXX_SYM_OBJ "qat_4xxx_sym.bin" #define ADF_4XXX_ASYM_OBJ "qat_4xxx_asym.bin" #define ADF_4XXX_ADMIN_OBJ "qat_4xxx_admin.bin" +#define ADF_402XX_FW "qat_402xx_fw" +#define ADF_402XX_MMP "qat_402xx_mmp_fw" +#define ADF_402XX_DC_OBJ "qat_402xx_dc.bin" +#define ADF_402XX_SYM_OBJ "qat_402xx_sym.bin" +#define ADF_402XX_ASYM_OBJ "qat_402xx_asym.bin" +#define ADF_402XX_ADMIN_OBJ "qat_402xx_admin.bin" /* Only 3 types of images can be loaded including the admin image */ #define ADF_4XXX_MAX_OBJ 3 diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c index cb534dd03b86..f9ad39fa45f0 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXX, "qat_4xxx", "qat_4xxx"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XX_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -135,6 +137,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: adf_clean_hw_data_4xxx(accel_dev->hw_device); break; default: diff --git a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c index 2bbccb4d6b17..dbe40835ccbf 100644 --- a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXXVF, "qat_4xxxvf", "qat_4xxxvf"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XXIOV_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -76,6 +78,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXXIOV_PCI_DEVICE_ID: case ADF_401XXIOV_PCI_DEVICE_ID: + case ADF_402XXIOV_PCI_DEVICE_ID: adf_clean_hw_data_4xxxiov(accel_dev->hw_device); break; default: diff --git a/sys/modules/qatfw/qat_4xxx/Makefile b/sys/modules/qatfw/qat_4xxx/Makefile index fb7171bcaf45..f6f19d6cbe32 100644 --- a/sys/modules/qatfw/qat_4xxx/Makefile +++ b/sys/modules/qatfw/qat_4xxx/Makefile @@ -4,6 +4,9 @@ KMOD= qat_4xxx_fw -FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 +FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 \ + qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 \ + qat_402xx.bin:qat_402xx_fw:111 \ + qat_402xx_mmp.bin:qat_402xx_mmp_fw:111 .include From nobody Wed Oct 15 13:26:42 2025 X-Original-To: dev-commits-src-branches@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 4cmsLW3RVlz6CNld; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLV5yTDz3KnM; Wed, 15 Oct 2025 13:26:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DpHes4Qi8wTSbP2PV3BRC93lfyYcJXPOz0EmH0TadtU=; b=xoVcSg7UrSerLUd4UcJ51GBk3wVhVEDXSzlgVihH9+nLnuP8X+m47SS3Rv4A+5li99bH04 ZfCv07Ho7QeVrXOZg647W6Ow64SWk1jEi2Eox7PsR9qhvqG7vnYNYar7Iby1IDSOnaEsLn J5YqDq8M+az3QO3M7jpgwOhTitVdx4f+x2dvG/nTYOPZYc3xHmrEhnYBefv0c+pBMKHMem jM61YtEQry+YSXWacfyHMkitRbBbAcc+fbN2/p4MCQrtMdEQMvo6sKC3CdcwEL9zNH5oQt rDxhyapzuNVOSgvikQOGsDWumQsZpaYPe4OQpW61sAmeYCyfibqOKBHzeTzSHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DpHes4Qi8wTSbP2PV3BRC93lfyYcJXPOz0EmH0TadtU=; b=CrboL7MJqRQZG7SSWjyndKOVYTg2yeFcpEJpSLGW0LjDA9HTJE5xA8OsxfQDaE74nuvlm6 KdMhIlq8qIOer5QTKsY9i3ZpT502IRomT/QkVC1osbO+2qRVNzSxbJP27FyHXAyKdmMfaz T9fovVkylILWrGMKpKyEhF39EozbHsc8caHGJaEftBo5uifSn/4PkrnllqldmcZFYmHfS/ s/r7TY8bSdg+GrsqMoLuFUtKfjzZQx+2vxoPRgL08TYUn5XR0mPDhYz0Vtqz1Nvleg4DJ+ xGE1SEBNQQ8lXoWQpbqmVn05hcEKgshpP9lXDSJpZjdOQ8whlE0yN/qRf2Flrg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534802; a=rsa-sha256; cv=none; b=pq1rwNthpQ+N8Oq4Wr3zC7sUjPI1J0UN4uVetjGhElAO1ir8grCIfh38uDB1mpmmDBoC+8 4UnYFBm6dyg8KjEZjQNA/+a6yRiYNdn0pWkytJWnvI7AS4mwWqF6iR1CVcm5Htc4faSy8b 9MnjqRS9Uk22swzven3ZxNOflQxn54zFhB1ZXLylNHW9mbt0TT5JTbrWT9yfgPPi7pGznH hLgwNrtBxRg4DaHFgG1gMihzG4HuRu7kcbSPLnLdSXmfMZ3gSL65yC8sHUn7yJgsMUjPXQ MtQpRH8eVeRs0Qnu4UKE/2XS006QsckJKI5matMJx5L5xYD5qno63HGiYwBM0A== 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 4cmsLV5Gb5zgvm; Wed, 15 Oct 2025 13:26: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 59FDQgiq051197; Wed, 15 Oct 2025 13:26:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQgw7051194; Wed, 15 Oct 2025 13:26:42 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:42 GMT Message-Id: <202510151326.59FDQgw7051194@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: 6d44212c641b - stable/15 - pw: pw_mkdb(3) does not set errno List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 6d44212c641b9f30e5b9dd6e261659d20f916081 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6d44212c641b9f30e5b9dd6e261659d20f916081 commit 6d44212c641b9f30e5b9dd6e261659d20f916081 Author: Mark Johnston AuthorDate: 2025-10-08 12:47:15 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:13 +0000 pw: pw_mkdb(3) does not set errno MFC after: 1 week Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. (cherry picked from commit b464c7a75e30e6149906458075b7eaf0841c7222) --- usr.sbin/pw/pwupd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/pw/pwupd.c b/usr.sbin/pw/pwupd.c index 89c1553c8c92..845a607ab1cb 100644 --- a/usr.sbin/pw/pwupd.c +++ b/usr.sbin/pw/pwupd.c @@ -119,7 +119,7 @@ pw_update(struct passwd * pwd, char const * user) */ if (pw_mkdb(pw != NULL ? pw->pw_name : NULL) == -1) { pw_fini(); - err(1, "pw_mkdb()"); + errx(1, "pw_mkdb()"); } free(pw); pw_fini(); From nobody Wed Oct 15 13:26:43 2025 X-Original-To: dev-commits-src-branches@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 4cmsLX1Kwcz6CNtF; Wed, 15 Oct 2025 13:26: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmsLW6CqJz3Ksx; Wed, 15 Oct 2025 13:26:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YQYWTw/cAqEp36BH3ptySD/m7Du2GDOn/rAkOm69XA8=; b=CTRLMdvSN7E7utaF7ilhSeZXfo0Lxmwtya1xLM8TyczyvObnQAmzQ5udMY+yWGph41v1Zx PE2b1L+MpDgf0sP6oGl72say4/zFySqNfbkofK2LKugzuop4UA5Bj6kvASPd3i0pHEIlnN uoWHvCFEWqxlzNvRqku4/TgZTsMUgduJaPhPIeTYRAafuUxLGGwiK1phuYGESTytyKXlFG hd+pM6hz848VIz7cME2kIYK6TLTR5PSkiOT4W6jqCescx9pIYSzp8bocHuWAUh21Bg/t1K I3WTVKt+n/D6JZ6dbB0Jp6dVpIRROqKYvAigY2ZaihA09tQNyqmV3EBnXdCOSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760534803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YQYWTw/cAqEp36BH3ptySD/m7Du2GDOn/rAkOm69XA8=; b=FypPltp/ZT5yj+cCqr70orPG8TcJ3ZK3tsHmrUS/ESExsq6xA/HRhmRhqWKN6jUV/L6Y8K LGl9GpWcNbR/ZKIB6Dn5PS8vePxpAEZInO3iEsziEYI00ZSRDcXaxP94mH3juMDq6TZ8aS iQBC8prSnTywTdDC9TcXmvVdPT6phZVpAj/ZPjeR6JZWvl2/d1t12sXV/Y0Cg8WxcjPxaf BRSiiB3vhQQAvkB0kZCivpFbmqaKORb/94oPuvAgBSs4bKujW2EAhD4iSoBI8bvbJALA2X i0MAVYVVrOoVHr/h6q2BXybnJPtaqnBwWnoWrLv/6kyE4yEqZKXrYTyILpI4aA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760534803; a=rsa-sha256; cv=none; b=XnfOGxwNLs72VP/dVAzgrLGVXy9aAQ4TsvfJGEJjThSmZalSWk3uU2a6YICW7zlXH0vCI6 gfaNWIqooD8IoqIAvxR5/YNBup2MIWeTMR2408WFCdRJJIuJtrDI+nIYOf9g4AeiqtsRI4 KfpZCGJ/gQPLSfpOHJOCr1fA1HwekjOg9qapenuFro8V/BaBJjnFYbV1rbpUkT7BrXO7X+ dbCfvqpqeDAHVf2KCdjJZAk2HyZD9/FuCqqyIWcee5GQwdxRaTRrNPo3xfLyKSQsiarbKa Ixv47at6Te6QftlxXArUXf19NX7f13B8vgHhrYB5AWA23j5ux2tAY/apLdnf/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 4cmsLW5qNrzgm6; Wed, 15 Oct 2025 13:26: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 59FDQhsL051230; Wed, 15 Oct 2025 13:26:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FDQhk1051227; Wed, 15 Oct 2025 13:26:43 GMT (envelope-from git) Date: Wed, 15 Oct 2025 13:26:43 GMT Message-Id: <202510151326.59FDQhk1051227@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: 3a382afe367a - stable/15 - cryptocheck: Be friendlier when testing software crypto backends List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 3a382afe367a5ecd849ca0e3ba92781f24ce1be4 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3a382afe367a5ecd849ca0e3ba92781f24ce1be4 commit 3a382afe367a5ecd849ca0e3ba92781f24ce1be4 Author: Mark Johnston AuthorDate: 2025-10-08 15:24:12 +0000 Commit: Mark Johnston CommitDate: 2025-10-15 13:23:24 +0000 cryptocheck: Be friendlier when testing software crypto backends - Fail loudly if we can't change the kern.crypto.allow_soft sysctl. - Add more drivers to the list. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52490 (cherry picked from commit e63bf6aa523eb9a865b7ce34d01e75a13818b367) --- tools/tools/crypto/cryptocheck.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/tools/crypto/cryptocheck.c b/tools/tools/crypto/cryptocheck.c index 6506671455ac..46a364b0453c 100644 --- a/tools/tools/crypto/cryptocheck.c +++ b/tools/tools/crypto/cryptocheck.c @@ -362,9 +362,11 @@ enable_user_soft(void) size_t cursize = sizeof(curstate); if (sysctlbyname(CRYPT_SOFT_ALLOW, &curstate, &cursize, - &on, sizeof(on)) == 0) { + &on, sizeof(on)) == 0) { if (curstate == 0) atexit(reset_user_soft); + } else { + err(1, "sysctl(%s)", CRYPT_SOFT_ALLOW); } } @@ -373,7 +375,10 @@ crlookup(const char *devname) { struct crypt_find_op find; - if (strncmp(devname, "soft", 4) == 0) { + if (strncmp(devname, "soft", 4) == 0 || + strncmp(devname, "ossl", 4) == 0 || + strncmp(devname, "aesni", 5) == 0 || + strncmp(devname, "armv8crypto", 11) == 0) { enable_user_soft(); return CRYPTO_FLAG_SOFTWARE; } From nobody Wed Oct 15 14:05:59 2025 X-Original-To: dev-commits-src-branches@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 4cmtCq4kLwz6CRWn; Wed, 15 Oct 2025 14:05: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmtCq3w7Kz3WPk; Wed, 15 Oct 2025 14:05:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760537159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/3GQZ68a9rDum6qXft0lsbNF6CdHxBtnNXyajjAfuwk=; b=g/0Hj7iBlH3N30dA0UAgfBjsspW7QHRGF9ysRAPUnTbDUoZCGfLtHGr1VilzMDbXGsAl+y BDRQoGlJBbgvFas177pNcxbebCJYt4+VaGqn+HXeJwRWar9w/EItZ9Pc+qYXK/G19ASlv0 RMwFH6pWBRByhTCGEwVKR2VnjMw7Sie+g+KDm2k8DnaOsyXe7M7z27OoeCeSRmL1i9dqav CyaO1N+1M548Vj/KPZculTIPxSZw4oBsqpCQDGazs7MR/IJ1TrGeCDYh2HyAG2MYkPqL8x xHZV9BN6Joxfr0MA44kmxul46zoYL6jXvAid8PQnE9BY0c6pSj2nqa9l4z2+rw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760537159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/3GQZ68a9rDum6qXft0lsbNF6CdHxBtnNXyajjAfuwk=; b=ICrwWvTZm4geT1OhXbwhmyTvAu5CqT/bvEhs0njFo39zZT2NCpPj9z3NnZxwudy51NryiJ iDfwgnAxzMIvvrBH14AzO3Iv6RDxzdJ2qqNDQeyDoF/GBZA4qRFBiPdTGyQ7FcyaXeeW0b BwmvIhYZDFxTqWJuRZcmbw6div9RN2Sksi75vi8pAo8gNskY5WE3pbmBn1ZVRSKakbewU1 lidO1QpCfnMhKxerOtp6G4Urv9KbXaG5uO5NCFYjjmA35kuIfXWcqqqpUv5soLsrkcbg14 1Br2U7qX2QY9oOoJbfyyRW0ar0I+pXDZFw+AR0D67DsPjPf6uiCNZr54VXahIw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760537159; a=rsa-sha256; cv=none; b=bzCMfuRkQNto9e/X5R+joRxbuXTgm48o1GnX09Ka0oA0Q+PJy0ZTgRu5V0qsMpUbEJVO6u lCzN6CETscnOnc98mHGA3Ih5jg2LI5JTzNQ4hXvoNdxkIWz1He+xqC03dkMdU7bU8ld0AN nAdToQdvbn3adgHvekeqeLrO1ZzchHs1sqsMofB+XCb6uOaPceblY1dGocltlxbQhiKGYc 8aYV/43bhA/jUSa8hex+ZByr8BVlG5jWWK34V3W2oafiWAKz0t4TbIXLm+jihMfAxEROf2 XQP3Vn0NV5PU7P89I3meoTjUBwUGdYJ6dfemianFbpeeLKcfvmf+yYkN1/gKGQ== 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 4cmtCq31HTzhsJ; Wed, 15 Oct 2025 14:05: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 59FE5xBv026976; Wed, 15 Oct 2025 14:05:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FE5xup026973; Wed, 15 Oct 2025 14:05:59 GMT (envelope-from git) Date: Wed, 15 Oct 2025 14:05:59 GMT Message-Id: <202510151405.59FE5xup026973@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 25c6697b0b98 - stable/15 - ipv6: don't complain when deleting an address with prefix length of 128 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 25c6697b0b985228639cdeb5212a5f705731f69a Auto-Submitted: auto-generated The branch stable/15 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=25c6697b0b985228639cdeb5212a5f705731f69a commit 25c6697b0b985228639cdeb5212a5f705731f69a Author: Andrey V. Elsukov AuthorDate: 2025-10-07 13:08:15 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-10-15 14:05:07 +0000 ipv6: don't complain when deleting an address with prefix length of 128 Save prefix length in unused field in6_ifaddr->ia_plen, then on remove check if an address has 128 prefix length, and if so, we don't need to complain that there is none of related prefixes. Reviewed by: kp Obtained from: Yandex LLC Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D52952 (cherry picked from commit c4cce0a3e94e3b22f874508d1a9cd81442648238) --- sys/netinet6/in6.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index 4f756a75fac7..b98703bdfbfe 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -1295,8 +1295,8 @@ in6_addifaddr(struct ifnet *ifp, struct in6_aliasreq *ifra, struct in6_ifaddr *i */ bzero(&pr0, sizeof(pr0)); pr0.ndpr_ifp = ifp; - pr0.ndpr_plen = in6_mask2len(&ifra->ifra_prefixmask.sin6_addr, - NULL); + pr0.ndpr_plen = ia->ia_plen = + in6_mask2len(&ifra->ifra_prefixmask.sin6_addr, NULL); if (pr0.ndpr_plen == 128) { /* we don't need to install a host route. */ goto aifaddr_out; @@ -1490,16 +1490,16 @@ in6_unlink_ifa(struct in6_ifaddr *ia, struct ifnet *ifp) * positive reference. */ remove_lle = 0; - if (ia->ia6_ndpr == NULL) { - nd6log((LOG_NOTICE, - "in6_unlink_ifa: autoconf'ed address " - "%s has no prefix\n", ip6_sprintf(ip6buf, IA6_IN6(ia)))); - } else { + if (ia->ia6_ndpr != NULL) { ia->ia6_ndpr->ndpr_addrcnt--; /* Do not delete lles within prefix if refcont != 0 */ if (ia->ia6_ndpr->ndpr_addrcnt == 0) remove_lle = 1; ia->ia6_ndpr = NULL; + } else if (ia->ia_plen < 128) { + nd6log((LOG_NOTICE, + "in6_unlink_ifa: autoconf'ed address " + "%s has no prefix\n", ip6_sprintf(ip6buf, IA6_IN6(ia)))); } nd6_rem_ifa_lle(ia, remove_lle); From nobody Wed Oct 15 14:07:13 2025 X-Original-To: dev-commits-src-branches@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 4cmtFG0fYWz6CS0L; Wed, 15 Oct 2025 14:07: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmtFG08Zvz3Wl3; Wed, 15 Oct 2025 14:07:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760537234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a6kUeZjB9tApHPJRNu8oUNy/leEeYc1Hy9s21YA/Y74=; b=seZHwDvsDV4DO98i6G855hbv/86E4ItnOWaJgmYzjiuLti8167RdnmCeNyB9290lvi1MLV 6P41+NXap1/aoTj1khtCfnqqMyu73eaIiHGLAoxxWKz2D/SYW6cy+LLpAY/Jioh5gIJUb0 lE021FH/4PL6NRP60AVw/+8ogb0HGQbsPRDOorwdyHPTo24E8U4jXd5LVYPJw0uoEtM1nD GmWFzvYhCYgudKNAIhssbLJUmPsFn7qrpgcqrdG21Md7OChHYEizG7iYp69i/vkudpbl3Z dnsWfviOH9w9gegtMDM75l6d+thVPyTQtdv4AGd31mNaXzuUhR5M+Dyu2z51rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760537234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a6kUeZjB9tApHPJRNu8oUNy/leEeYc1Hy9s21YA/Y74=; b=c4EFQ7ag3gP3SXyIAibGYqaqRSKFhAzsVbZTu9zXEjD88ss0IFE/Y+RRXV+Hf8u/mjuiet nwcACrRtlFeBZeVUShRS1w1qQsW6rPHlsCbsnsXZXMe43Nkhw2+Bo/gVbAqxDGE6CskZNh fHrc/isYZqEFgD7+l6w+Lw8WJ8H9ybF7xPZClH4xHXRiBYVW2usiiF1wmuqx57X2vWW2JL CTMUVydPuD3syh4d3AmYDaA7kezJAVy0MTawxGmPyZTxDRi9rJI6mHcu9pn+M2sETT+sVi URM3IXF/K5h5ZrFnIBQy7DalAkeYgpSuJsVGT9aOchxxNJxXwPC78FqXNGC+xw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760537234; a=rsa-sha256; cv=none; b=Qio5XT/3UhABZKZFMVgb9oHd0xkzFxdB1PPAII1YXI1Jg5DGld2ycQ40aYjMTgWdbA4z9z B0tO+baOVkZ1f1ToTu8y7CCt6l3LgsdKyq7eRWX1a0ThQhXq4ypgK2er5EL7L1WNTECY59 e9PlbvZAnf/rMTQyfFZ0yHlNTdRfB0QMAgkPN0ImpwnLHL36YllJc71OMj95Zd/SD82A56 9AH3ld/S01I/+HXDl2Zcr9aBSAtu8U22qGSWJrTvbbw11ZWQGTaLiOH/CwhsgsJUvhzmNM Yw1D+JVqdMQyCfTMPuf5ajBMIfhf1guJvbcZkykF+sVGxLKD4MjwCeCOMFRjiA== 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 4cmtFF6qwdzhQm; Wed, 15 Oct 2025 14:07: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 59FE7Dv3027450; Wed, 15 Oct 2025 14:07:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FE7DEM027447; Wed, 15 Oct 2025 14:07:13 GMT (envelope-from git) Date: Wed, 15 Oct 2025 14:07:13 GMT Message-Id: <202510151407.59FE7DEM027447@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 613eb8ee9cb2 - stable/14 - ipv6: don't complain when deleting an address with prefix length of 128 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 613eb8ee9cb269205cdf168e02b4b093ae1c9a62 Auto-Submitted: auto-generated The branch stable/14 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=613eb8ee9cb269205cdf168e02b4b093ae1c9a62 commit 613eb8ee9cb269205cdf168e02b4b093ae1c9a62 Author: Andrey V. Elsukov AuthorDate: 2025-10-07 13:08:15 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-10-15 14:06:43 +0000 ipv6: don't complain when deleting an address with prefix length of 128 Save prefix length in unused field in6_ifaddr->ia_plen, then on remove check if an address has 128 prefix length, and if so, we don't need to complain that there is none of related prefixes. Reviewed by: kp Obtained from: Yandex LLC Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D52952 (cherry picked from commit c4cce0a3e94e3b22f874508d1a9cd81442648238) --- sys/netinet6/in6.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index 8d43ae18969a..b2b3c64d0a77 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -1288,8 +1288,8 @@ in6_addifaddr(struct ifnet *ifp, struct in6_aliasreq *ifra, struct in6_ifaddr *i */ bzero(&pr0, sizeof(pr0)); pr0.ndpr_ifp = ifp; - pr0.ndpr_plen = in6_mask2len(&ifra->ifra_prefixmask.sin6_addr, - NULL); + pr0.ndpr_plen = ia->ia_plen = + in6_mask2len(&ifra->ifra_prefixmask.sin6_addr, NULL); if (pr0.ndpr_plen == 128) { /* we don't need to install a host route. */ goto aifaddr_out; @@ -1483,16 +1483,16 @@ in6_unlink_ifa(struct in6_ifaddr *ia, struct ifnet *ifp) * positive reference. */ remove_lle = 0; - if (ia->ia6_ndpr == NULL) { - nd6log((LOG_NOTICE, - "in6_unlink_ifa: autoconf'ed address " - "%s has no prefix\n", ip6_sprintf(ip6buf, IA6_IN6(ia)))); - } else { + if (ia->ia6_ndpr != NULL) { ia->ia6_ndpr->ndpr_addrcnt--; /* Do not delete lles within prefix if refcont != 0 */ if (ia->ia6_ndpr->ndpr_addrcnt == 0) remove_lle = 1; ia->ia6_ndpr = NULL; + } else if (ia->ia_plen < 128) { + nd6log((LOG_NOTICE, + "in6_unlink_ifa: autoconf'ed address " + "%s has no prefix\n", ip6_sprintf(ip6buf, IA6_IN6(ia)))); } nd6_rem_ifa_lle(ia, remove_lle); From nobody Wed Oct 15 15:35:31 2025 X-Original-To: dev-commits-src-branches@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 4cmwC80cHKz6CYWc; Wed, 15 Oct 2025 15:35:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmwC80Bvnz3l8c; Wed, 15 Oct 2025 15:35:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760542532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ctIqqvPtSmtWa/4pd3wN+1gN+yoh6gUwgljLVAB7UG8=; b=jDJgVQplYQ4HAjVW0IM94E/BIcGIizTPYKcnF8l+ld7JbOfYt4Y4oF32oYk5mPvm9pdVQT OGeN1N0wGjcpAQWy5TT9MsKARgO4JHFb9tZk7iLb0PjNKnYzyalacNANu/Jeg/cphTNb9n Tx4CgA4aOrKGCUVluDQCMQZJbT1glb9qx99fT5rsd0xmlLDey4Yx7gIVnGz8R8Hu7jjHCb afAtje50tJ8TXq0ZnLaju+GIJVO8YzD74TvUVVYGIW6hwCqPbdujJJE03JO+2WUl1n6fkl x6DH24kk030cEIpAVQwQCkNFvpS8GAnRDfBG2fWFKjUgAH5DChpHNk3TT76OVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760542532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ctIqqvPtSmtWa/4pd3wN+1gN+yoh6gUwgljLVAB7UG8=; b=Zv6NdMguhuYV5nNLxUzXq1Y7RBFWpRF3SoOgAN4PXjvaqFtZOG5P8jJtBUubLv8y08FfMP 52txjxVRG02qxXzNmUa74wwwuQXp69I8hd6U+1q68/QBFDvOQNWkaNq04O/buS7jishKko W3CxlgURQuHrZ7fDRk/U6mZ6Dzrzcp8Aeo1qmYZVcRwFAl9AdmOmQT0q85JO4VR4mJ/rBE 0FcWrRwc4+2K6r/AW1jPCgHHxkTa0x85Rww7HQwlH7jvGXoZUbZzLld1GjxMrt3pJwbLf6 cARu8+YDzZajGlKFoKMQls4TYD947bzQbK1EdPn3jmJX63ipA+SWB/Wu1vsTzw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760542532; a=rsa-sha256; cv=none; b=Qb/jVTOh90+BWrszilWJWxtaREtc20EIKMqK0ByXIRJMR+beZlK+Aif181Xg8rdFgQYs8P sLs4/QNFz0/VlHYZ8g73YU5tnun1OgBKuBNprfADWS4l2HQ1bgPfIXZkSeKD0tH597ez10 nuhk0rnQsY1RZiUGrjnFGYJMvju6eorGn5+bdlhARzubFmy3/pKgwHKEFzB8/4hLpzOgfO OpONTR3qD7Bo6/3cqNKrCZXhdqCtECXTyeAx54W7sdcKcqkfcKg84Gt3wTWGIfa/IGT0yw iAbEeKcbIys72cR03BRn0f93zQIwzApucJD7XD8lGhGldOafQeovMX66VClo7Q== 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 4cmwC76c28zl4g; Wed, 15 Oct 2025 15:35:31 +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 59FFZV5R095681; Wed, 15 Oct 2025 15:35:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FFZVXF095678; Wed, 15 Oct 2025 15:35:31 GMT (envelope-from git) Date: Wed, 15 Oct 2025 15:35:31 GMT Message-Id: <202510151535.59FFZVXF095678@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Krzysztof Galazka Subject: git: a728b96686e6 - stable/14 - ix/ixv: Add support for new Intel Ethernet E610 family devices List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: a728b96686e69cc3237f94b07f3bced44eeed8e9 Auto-Submitted: auto-generated The branch stable/14 has been updated by kgalazka: URL: https://cgit.FreeBSD.org/src/commit/?id=a728b96686e69cc3237f94b07f3bced44eeed8e9 commit a728b96686e69cc3237f94b07f3bced44eeed8e9 Author: Bhosale, Yogeshnull AuthorDate: 2025-08-19 14:19:07 +0000 Commit: Krzysztof Galazka CommitDate: 2025-10-15 15:26:26 +0000 ix/ixv: Add support for new Intel Ethernet E610 family devices This is part 1 of the support for the new Intel Ethernet E610 family of devices. Introduce new PCI device IDs: • 57AE: Intel(R) E610 (Backplane) • 57AF: Intel(R) E610 (SFP) • 57B0: Intel(R) E610 (10 GbE) • 57B1: Intel(R) E610 (2.5 GbE) • 57B2: Intel(R) E610 (SGMII) Key updates for E610 family: • Firmware manages Link and PHY • Implement new CSR-based Admin Command Interface (ACI) for SW-FW interaction • Tested exclusively for x64 operating systems on E610-XT2/XT4 (10G) and E610-IT4 (2.5G) • Enable link speeds above 1G: 2.5G, 5G and 10G • NVM Recovery Mode and Rollback support Signed-off-by: Yogesh Bhosale yogesh.bhosale@intel.com Co-developed-by: Krzysztof Galazka krzysztof.galazka@intel.com Approved by: kbowling (mentor), erj (mentor) Tested by: gowtham.kumar.ks_intel.com Sponsored by: Intel Corporation MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D50067 (cherry picked from commit dea5f973d0c8d29a79b433283d0a2de8f4615957) --- sys/conf/files | 2 + sys/dev/ixgbe/if_ix.c | 231 +- sys/dev/ixgbe/if_ixv.c | 6 + sys/dev/ixgbe/ixgbe.h | 11 + sys/dev/ixgbe/ixgbe_api.c | 16 + sys/dev/ixgbe/ixgbe_api.h | 1 + sys/dev/ixgbe/ixgbe_common.c | 25 +- sys/dev/ixgbe/ixgbe_e610.c | 5567 +++++++++++++++++++++++++++++++++++++++ sys/dev/ixgbe/ixgbe_e610.h | 224 ++ sys/dev/ixgbe/ixgbe_osdep.c | 26 + sys/dev/ixgbe/ixgbe_osdep.h | 31 + sys/dev/ixgbe/ixgbe_type.h | 69 +- sys/dev/ixgbe/ixgbe_type_e610.h | 2278 ++++++++++++++++ sys/dev/ixgbe/ixgbe_vf.c | 3 +- sys/modules/ix/Makefile | 2 +- sys/modules/ixv/Makefile | 2 +- 16 files changed, 8458 insertions(+), 36 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index 12ddadf62154..427f6fdebf57 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2282,6 +2282,8 @@ dev/ixgbe/ixgbe_x540.c optional ix inet | ixv inet \ compile-with "${NORMAL_C} -I$S/dev/ixgbe" dev/ixgbe/ixgbe_x550.c optional ix inet | ixv inet \ compile-with "${NORMAL_C} -I$S/dev/ixgbe" +dev/ixgbe/ixgbe_e610.c optional ix inet | ixv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixgbe" dev/ixgbe/ixgbe_dcb.c optional ix inet | ixv inet \ compile-with "${NORMAL_C} -I$S/dev/ixgbe" dev/ixgbe/ixgbe_dcb_82598.c optional ix inet | ixv inet \ diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 5adda9642868..5c4ca585c323 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -45,7 +45,7 @@ /************************************************************************ * Driver version ************************************************************************/ -static const char ixgbe_driver_version[] = "4.0.1-k"; +static const char ixgbe_driver_version[] = "5.0.1-k"; /************************************************************************ * PCI Device ID Table @@ -144,6 +144,16 @@ static const pci_vendor_info_t ixgbe_vendor_info_array[] = "Intel(R) X540-T2 (Bypass)"), PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_82599_BYPASS, "Intel(R) X520 82599 (Bypass)"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_BACKPLANE, + "Intel(R) E610 (Backplane)"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_SFP, + "Intel(R) E610 (SFP)"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_2_5G_T, + "Intel(R) E610 (2.5 GbE)"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_10G_T, + "Intel(R) E610 (10 GbE)"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_SGMII, + "Intel(R) E610 (SGMII)"), /* required last entry */ PVID_END }; @@ -254,6 +264,10 @@ static int ixgbe_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS); static void ixgbe_handle_msf(void *); static void ixgbe_handle_mod(void *); static void ixgbe_handle_phy(void *); +static void ixgbe_handle_fw_event(void *); + +static int ixgbe_enable_lse(struct ixgbe_softc *sc); +static int ixgbe_disable_lse(struct ixgbe_softc *sc); /************************************************************************ * FreeBSD Device Interface Entry Points @@ -622,6 +636,7 @@ ixgbe_initialize_rss_mapping(struct ixgbe_softc *sc) case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: + case ixgbe_mac_E610: table_size = 512; break; default: @@ -903,6 +918,32 @@ ixgbe_initialize_transmit_units(if_ctx_t ctx) } /* ixgbe_initialize_transmit_units */ +static int +ixgbe_check_fw_api_version(struct ixgbe_softc *sc) +{ + struct ixgbe_hw *hw = &sc->hw; + if (hw->api_maj_ver > IXGBE_FW_API_VER_MAJOR) { + device_printf(sc->dev, + "The driver for the device stopped because the NVM " + "image is newer than expected. You must install the " + "most recent version of the network driver.\n"); + return (EOPNOTSUPP); + } else if (hw->api_maj_ver == IXGBE_FW_API_VER_MAJOR && + hw->api_min_ver > (IXGBE_FW_API_VER_MINOR + 2)) { + device_printf(sc->dev, + "The driver for the device detected a newer version of " + "the NVM image than expected. Please install the most " + "recent version of the network driver.\n"); + } else if (hw->api_maj_ver < IXGBE_FW_API_VER_MAJOR || + hw->api_min_ver < IXGBE_FW_API_VER_MINOR - 2) { + device_printf(sc->dev, + "The driver for the device detected an older version " + "of the NVM image than expected. " + "Please update the NVM image.\n"); + } + return (0); +} + /************************************************************************ * ixgbe_register ************************************************************************/ @@ -971,6 +1012,9 @@ ixgbe_if_attach_pre(if_ctx_t ctx) goto err_pci; } + if (hw->mac.type == ixgbe_mac_E610) + ixgbe_init_aci(hw); + if (hw->mac.ops.fw_recovery_mode && hw->mac.ops.fw_recovery_mode(hw)) { device_printf(dev, @@ -1059,6 +1103,12 @@ ixgbe_if_attach_pre(if_ctx_t ctx) break; } + /* Check the FW API version */ + if (hw->mac.type == ixgbe_mac_E610 && ixgbe_check_fw_api_version(sc)) { + error = EIO; + goto err_pci; + } + /* Most of the iflib initialization... */ iflib_set_mac(ctx, hw->mac.addr); @@ -1112,6 +1162,9 @@ err_pci: IXGBE_WRITE_REG(&sc->hw, IXGBE_CTRL_EXT, ctrl_ext); ixgbe_free_pci_resources(ctx); + if (hw->mac.type == ixgbe_mac_E610) + ixgbe_shutdown_aci(hw); + return (error); } /* ixgbe_if_attach_pre */ @@ -1359,6 +1412,10 @@ ixgbe_add_media_types(if_ctx_t ctx) /* Media types with matching FreeBSD media defines */ if (layer & IXGBE_PHYSICAL_LAYER_10GBASE_T) ifmedia_add(sc->media, IFM_ETHER | IFM_10G_T, 0, NULL); + if (layer & IXGBE_PHYSICAL_LAYER_5000BASE_T) + ifmedia_add(sc->media, IFM_ETHER | IFM_5000_T, 0, NULL); + if (layer & IXGBE_PHYSICAL_LAYER_2500BASE_T) + ifmedia_add(sc->media, IFM_ETHER | IFM_2500_T, 0, NULL); if (layer & IXGBE_PHYSICAL_LAYER_1000BASE_T) ifmedia_add(sc->media, IFM_ETHER | IFM_1000_T, 0, NULL); if (layer & IXGBE_PHYSICAL_LAYER_100BASE_TX) @@ -1460,6 +1517,7 @@ ixgbe_is_sfp(struct ixgbe_hw *hw) } case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: + case ixgbe_mac_E610: if (hw->mac.ops.get_media_type(hw) == ixgbe_media_type_fiber) return (true); return (false); @@ -1526,6 +1584,15 @@ ixgbe_config_link(if_ctx_t ctx) IXGBE_LINK_SPEED_5GB_FULL); } + if (hw->mac.type == ixgbe_mac_E610) { + hw->phy.ops.init(hw); + err = ixgbe_enable_lse(sc); + if (err) + device_printf(sc->dev, + "Failed to enable Link Status Event, " + "error: %d", err); + } + if (hw->mac.ops.setup_link) err = hw->mac.ops.setup_link(hw, autoneg, sc->link_up); @@ -2159,14 +2226,15 @@ get_parent_info: ixgbe_set_pci_config_data_generic(hw, link); display: - device_printf(dev, "PCI Express Bus: Speed %s %s\n", - ((hw->bus.speed == ixgbe_bus_speed_8000) ? "8.0GT/s" : + device_printf(dev, "PCI Express Bus: Speed %s Width %s\n", + ((hw->bus.speed == ixgbe_bus_speed_16000) ? "16.0GT/s" : + (hw->bus.speed == ixgbe_bus_speed_8000) ? "8.0GT/s" : (hw->bus.speed == ixgbe_bus_speed_5000) ? "5.0GT/s" : (hw->bus.speed == ixgbe_bus_speed_2500) ? "2.5GT/s" : "Unknown"), - ((hw->bus.width == ixgbe_bus_width_pcie_x8) ? "Width x8" : - (hw->bus.width == ixgbe_bus_width_pcie_x4) ? "Width x4" : - (hw->bus.width == ixgbe_bus_width_pcie_x1) ? "Width x1" : + ((hw->bus.width == ixgbe_bus_width_pcie_x8) ? "x8" : + (hw->bus.width == ixgbe_bus_width_pcie_x4) ? "x4" : + (hw->bus.width == ixgbe_bus_width_pcie_x1) ? "x1" : "Unknown")); if (bus_info_valid) { @@ -2373,14 +2441,17 @@ ixgbe_if_media_status(if_ctx_t ctx, struct ifmediareq * ifmr) ifmr->ifm_status |= IFM_ACTIVE; layer = sc->phy_layer; - if (layer & IXGBE_PHYSICAL_LAYER_10GBASE_T || - layer & IXGBE_PHYSICAL_LAYER_1000BASE_T || - layer & IXGBE_PHYSICAL_LAYER_100BASE_TX || - layer & IXGBE_PHYSICAL_LAYER_10BASE_T) + if (layer & IXGBE_PHYSICAL_LAYERS_BASE_T_ALL) switch (sc->link_speed) { case IXGBE_LINK_SPEED_10GB_FULL: ifmr->ifm_active |= IFM_10G_T | IFM_FDX; break; + case IXGBE_LINK_SPEED_5GB_FULL: + ifmr->ifm_active |= IFM_5000_T | IFM_FDX; + break; + case IXGBE_LINK_SPEED_2_5GB_FULL: + ifmr->ifm_active |= IFM_2500_T | IFM_FDX; + break; case IXGBE_LINK_SPEED_1GB_FULL: ifmr->ifm_active |= IFM_1000_T | IFM_FDX; break; @@ -2391,15 +2462,6 @@ ixgbe_if_media_status(if_ctx_t ctx, struct ifmediareq * ifmr) ifmr->ifm_active |= IFM_10_T | IFM_FDX; break; } - if (hw->mac.type == ixgbe_mac_X550) - switch (sc->link_speed) { - case IXGBE_LINK_SPEED_5GB_FULL: - ifmr->ifm_active |= IFM_5000_T | IFM_FDX; - break; - case IXGBE_LINK_SPEED_2_5GB_FULL: - ifmr->ifm_active |= IFM_2500_T | IFM_FDX; - break; - } if (layer & IXGBE_PHYSICAL_LAYER_SFP_PLUS_CU || layer & IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA) switch (sc->link_speed) { @@ -2677,6 +2739,11 @@ ixgbe_msix_link(void *arg) sc->task_requests |= IXGBE_REQUEST_TASK_LSC; } + if (eicr & IXGBE_EICR_FW_EVENT) { + IXGBE_WRITE_REG(hw, IXGBE_EIMC, IXGBE_EICR_FW_EVENT); + sc->task_requests |= IXGBE_REQUEST_TASK_FWEVENT; + } + if (sc->hw.mac.type != ixgbe_mac_82598EB) { if ((sc->feat_en & IXGBE_FEATURE_FDIR) && (eicr & IXGBE_EICR_FLOW_DIR)) { @@ -2735,11 +2802,16 @@ ixgbe_msix_link(void *arg) /* Check for VF message */ if ((sc->feat_en & IXGBE_FEATURE_SRIOV) && - (eicr & IXGBE_EICR_MAILBOX)) + (eicr & IXGBE_EICR_MAILBOX)) { sc->task_requests |= IXGBE_REQUEST_TASK_MBX; + } } - if (ixgbe_is_sfp(hw)) { + /* + * On E610, the firmware handles PHY configuration, so + * there is no need to perform any SFP-specific tasks. + */ + if (hw->mac.type != ixgbe_mac_E610 && ixgbe_is_sfp(hw)) { /* Pluggable optics-related interrupt */ if (hw->mac.type >= ixgbe_mac_X540) eicr_mask = IXGBE_EICR_GPI_SDP0_X540; @@ -2986,7 +3058,13 @@ ixgbe_if_detach(if_ctx_t ctx) callout_drain(&sc->fw_mode_timer); + if (sc->hw.mac.type == ixgbe_mac_E610) { + ixgbe_disable_lse(sc); + ixgbe_shutdown_aci(&sc->hw); + } + ixgbe_free_pci_resources(ctx); + free(sc->mta, M_IXGBE); return (0); @@ -3405,6 +3483,7 @@ ixgbe_set_ivar(struct ixgbe_softc *sc, u8 entry, u8 vector, s8 type) case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: + case ixgbe_mac_E610: if (type == -1) { /* MISC IVAR */ index = (entry & 1) * 8; ivar = IXGBE_READ_REG(hw, IXGBE_IVAR_MISC); @@ -3826,6 +3905,96 @@ ixgbe_handle_phy(void *context) "Error handling LASI interrupt: %d\n", error); } /* ixgbe_handle_phy */ +/************************************************************************ + * ixgbe_enable_lse - enable link status events + * + * Sets mask and enables link status events + ************************************************************************/ +s32 ixgbe_enable_lse(struct ixgbe_softc *sc) +{ + s32 error; + + u16 mask = ~((u16)(IXGBE_ACI_LINK_EVENT_UPDOWN | + IXGBE_ACI_LINK_EVENT_MEDIA_NA | + IXGBE_ACI_LINK_EVENT_MODULE_QUAL_FAIL | + IXGBE_ACI_LINK_EVENT_PHY_FW_LOAD_FAIL)); + + error = ixgbe_configure_lse(&sc->hw, TRUE, mask); + if (error) + return (error); + + sc->lse_mask = mask; + return (IXGBE_SUCCESS); +} /* ixgbe_enable_lse */ + +/************************************************************************ + * ixgbe_disable_lse - disable link status events + ************************************************************************/ +s32 ixgbe_disable_lse(struct ixgbe_softc *sc) +{ + s32 error; + + error = ixgbe_configure_lse(&sc->hw, false, sc->lse_mask); + if (error) + return (error); + + sc->lse_mask = 0; + return (IXGBE_SUCCESS); +} /* ixgbe_disable_lse */ + +/************************************************************************ + * ixgbe_handle_fw_event - Tasklet for MSI-X Link Status Event interrupts + ************************************************************************/ +static void +ixgbe_handle_fw_event(void *context) +{ + if_ctx_t ctx = context; + struct ixgbe_softc *sc = iflib_get_softc(ctx); + struct ixgbe_hw *hw = &sc->hw; + struct ixgbe_aci_event event; + bool pending = false; + s32 error; + + event.buf_len = IXGBE_ACI_MAX_BUFFER_SIZE; + event.msg_buf = malloc(event.buf_len, M_IXGBE, M_ZERO | M_NOWAIT); + if (!event.msg_buf) { + device_printf(sc->dev, "Can not allocate buffer for " + "event message\n"); + return; + } + + do { + error = ixgbe_aci_get_event(hw, &event, &pending); + if (error) { + device_printf(sc->dev, "Error getting event from " + "FW:%d\n", error); + break; + } + + switch (le16toh(event.desc.opcode)) { + case ixgbe_aci_opc_get_link_status: + sc->task_requests |= IXGBE_REQUEST_TASK_LSC; + break; + + case ixgbe_aci_opc_temp_tca_event: + if (hw->adapter_stopped == FALSE) + ixgbe_if_stop(ctx); + device_printf(sc->dev, + "CRITICAL: OVER TEMP!! PHY IS SHUT DOWN!!\n"); + device_printf(sc->dev, "System shutdown required!\n"); + break; + + default: + device_printf(sc->dev, + "Unknown FW event captured, opcode=0x%04X\n", + le16toh(event.desc.opcode)); + break; + } + } while (pending); + + free(event.msg_buf, M_IXGBE); +} /* ixgbe_handle_fw_event */ + /************************************************************************ * ixgbe_if_stop - Stop the hardware * @@ -3927,6 +4096,8 @@ ixgbe_if_update_admin_status(if_ctx_t ctx) } /* Handle task requests from msix_link() */ + if (sc->task_requests & IXGBE_REQUEST_TASK_FWEVENT) + ixgbe_handle_fw_event(ctx); if (sc->task_requests & IXGBE_REQUEST_TASK_MOD) ixgbe_handle_mod(ctx); if (sc->task_requests & IXGBE_REQUEST_TASK_MSF) @@ -4014,6 +4185,9 @@ ixgbe_if_enable_intr(if_ctx_t ctx) mask |= IXGBE_EICR_GPI_SDP0_X540; mask |= IXGBE_EIMS_ECC; break; + case ixgbe_mac_E610: + mask |= IXGBE_EIMS_FW_EVENT; + break; default: break; } @@ -4036,6 +4210,7 @@ ixgbe_if_enable_intr(if_ctx_t ctx) /* Don't autoclear Link */ mask &= ~IXGBE_EIMS_OTHER; mask &= ~IXGBE_EIMS_LSC; + mask &= ~IXGBE_EIMS_FW_EVENT; if (sc->feat_cap & IXGBE_FEATURE_SRIOV) mask &= ~IXGBE_EIMS_MAILBOX; IXGBE_WRITE_REG(hw, IXGBE_EIAC, mask); @@ -4054,7 +4229,7 @@ ixgbe_if_enable_intr(if_ctx_t ctx) } /* ixgbe_if_enable_intr */ /************************************************************************ - * ixgbe_disable_intr + * ixgbe_if_disable_intr ************************************************************************/ static void ixgbe_if_disable_intr(if_ctx_t ctx) @@ -4204,8 +4379,9 @@ ixgbe_intr(void *arg) /* External PHY interrupt */ if ((hw->phy.type == ixgbe_phy_x550em_ext_t) && - (eicr & IXGBE_EICR_GPI_SDP0_X540)) + (eicr & IXGBE_EICR_GPI_SDP0_X540)) { sc->task_requests |= IXGBE_REQUEST_TASK_PHY; + } return (FILTER_SCHEDULE_THREAD); } /* ixgbe_intr */ @@ -4247,7 +4423,7 @@ ixgbe_sysctl_flowcntl(SYSCTL_HANDLER_ARGS) int error, fc; sc = (struct ixgbe_softc *)arg1; - fc = sc->hw.fc.current_mode; + fc = sc->hw.fc.requested_mode; error = sysctl_handle_int(oidp, &fc, 0, req); if ((error) || (req->newptr == NULL)) @@ -4276,12 +4452,10 @@ ixgbe_set_flowcntl(struct ixgbe_softc *sc, int fc) case ixgbe_fc_rx_pause: case ixgbe_fc_tx_pause: case ixgbe_fc_full: - sc->hw.fc.requested_mode = fc; if (sc->num_rx_queues > 1) ixgbe_disable_rx_drop(sc); break; case ixgbe_fc_none: - sc->hw.fc.requested_mode = ixgbe_fc_none; if (sc->num_rx_queues > 1) ixgbe_enable_rx_drop(sc); break; @@ -4289,6 +4463,8 @@ ixgbe_set_flowcntl(struct ixgbe_softc *sc, int fc) return (EINVAL); } + sc->hw.fc.requested_mode = fc; + /* Don't autoneg if forcing a value */ sc->hw.fc.disable_fc_autoneg = true; ixgbe_fc_enable(&sc->hw); @@ -5006,6 +5182,9 @@ ixgbe_init_device_features(struct ixgbe_softc *sc) if (sc->hw.device_id == IXGBE_DEV_ID_82599_QSFP_SF_QP) sc->feat_cap &= ~IXGBE_FEATURE_LEGACY_IRQ; break; + case ixgbe_mac_E610: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; + break; default: break; } diff --git a/sys/dev/ixgbe/if_ixv.c b/sys/dev/ixgbe/if_ixv.c index 54b2c8c1dd68..8a1c1aae041d 100644 --- a/sys/dev/ixgbe/if_ixv.c +++ b/sys/dev/ixgbe/if_ixv.c @@ -68,6 +68,8 @@ static const pci_vendor_info_t ixv_vendor_info_array[] = "Intel(R) X552 Virtual Function"), PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_X550EM_A_VF, "Intel(R) X553 Virtual Function"), + PVID(IXGBE_INTEL_VENDOR_ID, IXGBE_DEV_ID_E610_VF, + "Intel(R) E610 Virtual Function"), /* required last entry */ PVID_END }; @@ -1020,6 +1022,9 @@ ixv_identify_hardware(if_ctx_t ctx) case IXGBE_DEV_ID_X550EM_A_VF: hw->mac.type = ixgbe_mac_X550EM_a_vf; break; + case IXGBE_DEV_ID_E610_VF: + hw->mac.type = ixgbe_mac_E610_vf; + break; default: device_printf(dev, "unknown mac type\n"); hw->mac.type = ixgbe_mac_unknown; @@ -1955,6 +1960,7 @@ ixv_init_device_features(struct ixgbe_softc *sc) case ixgbe_mac_X550_vf: case ixgbe_mac_X550EM_x_vf: case ixgbe_mac_X550EM_a_vf: + case ixgbe_mac_E610_vf: sc->feat_cap |= IXGBE_FEATURE_NEEDS_CTXD; sc->feat_cap |= IXGBE_FEATURE_RSS; break; diff --git a/sys/dev/ixgbe/ixgbe.h b/sys/dev/ixgbe/ixgbe.h index 341d4ebfcebc..844064bf8543 100644 --- a/sys/dev/ixgbe/ixgbe.h +++ b/sys/dev/ixgbe/ixgbe.h @@ -86,6 +86,7 @@ #include "ixgbe_phy.h" #include "ixgbe_vf.h" #include "ixgbe_features.h" +#include "ixgbe_e610.h" /* Tunables */ @@ -195,6 +196,15 @@ CSUM_IP_UDP|CSUM_IP_TCP|CSUM_IP_SCTP| \ CSUM_IP6_UDP|CSUM_IP6_TCP|CSUM_IP6_SCTP) +/* All BASE-T Physical layers */ +#define IXGBE_PHYSICAL_LAYERS_BASE_T_ALL \ + (IXGBE_PHYSICAL_LAYER_10GBASE_T |\ + IXGBE_PHYSICAL_LAYER_5000BASE_T |\ + IXGBE_PHYSICAL_LAYER_2500BASE_T |\ + IXGBE_PHYSICAL_LAYER_1000BASE_T |\ + IXGBE_PHYSICAL_LAYER_100BASE_TX |\ + IXGBE_PHYSICAL_LAYER_10BASE_T) + #define IXGBE_CAPS (IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6 | IFCAP_TSO | \ IFCAP_LRO | IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWTSO | \ IFCAP_VLAN_HWCSUM | IFCAP_JUMBO_MTU | IFCAP_VLAN_MTU | \ @@ -464,6 +474,7 @@ struct ixgbe_softc { /* Feature capable/enabled flags. See ixgbe_features.h */ u32 feat_cap; u32 feat_en; + u16 lse_mask; }; /* Precision Time Sync (IEEE 1588) defines */ diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index 4c50f10ed92e..f11f52a646e4 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -112,11 +112,15 @@ s32 ixgbe_init_shared_code(struct ixgbe_hw *hw) case ixgbe_mac_X550EM_a: status = ixgbe_init_ops_X550EM_a(hw); break; + case ixgbe_mac_E610: + status = ixgbe_init_ops_E610(hw); + break; case ixgbe_mac_82599_vf: case ixgbe_mac_X540_vf: case ixgbe_mac_X550_vf: case ixgbe_mac_X550EM_x_vf: case ixgbe_mac_X550EM_a_vf: + case ixgbe_mac_E610_vf: status = ixgbe_init_ops_vf(hw); break; default: @@ -240,6 +244,18 @@ s32 ixgbe_set_mac_type(struct ixgbe_hw *hw) hw->mac.type = ixgbe_mac_X550EM_a_vf; hw->mvals = ixgbe_mvals_X550EM_a; break; + case IXGBE_DEV_ID_E610_BACKPLANE: + case IXGBE_DEV_ID_E610_SFP: + case IXGBE_DEV_ID_E610_10G_T: + case IXGBE_DEV_ID_E610_2_5G_T: + case IXGBE_DEV_ID_E610_SGMII: + hw->mac.type = ixgbe_mac_E610; + hw->mvals = ixgbe_mvals_X550EM_a; + break; + case IXGBE_DEV_ID_E610_VF: + hw->mac.type = ixgbe_mac_E610_vf; + hw->mvals = ixgbe_mvals_X550EM_a; + break; default: ret_val = IXGBE_ERR_DEVICE_NOT_SUPPORTED; ERROR_REPORT2(IXGBE_ERROR_UNSUPPORTED, diff --git a/sys/dev/ixgbe/ixgbe_api.h b/sys/dev/ixgbe/ixgbe_api.h index b81510dacb95..2b4cec8d110e 100644 --- a/sys/dev/ixgbe/ixgbe_api.h +++ b/sys/dev/ixgbe/ixgbe_api.h @@ -48,6 +48,7 @@ extern s32 ixgbe_init_ops_X550(struct ixgbe_hw *hw); extern s32 ixgbe_init_ops_X550EM(struct ixgbe_hw *hw); extern s32 ixgbe_init_ops_X550EM_x(struct ixgbe_hw *hw); extern s32 ixgbe_init_ops_X550EM_a(struct ixgbe_hw *hw); +extern s32 ixgbe_init_ops_E610(struct ixgbe_hw *hw); extern s32 ixgbe_init_ops_vf(struct ixgbe_hw *hw); s32 ixgbe_set_mac_type(struct ixgbe_hw *hw); diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index df7ab90e72ab..bff022585a03 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -178,6 +178,7 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) case IXGBE_DEV_ID_X550EM_A_SFP_N: case IXGBE_DEV_ID_X550EM_A_QSFP: case IXGBE_DEV_ID_X550EM_A_QSFP_N: + case IXGBE_DEV_ID_E610_SFP: supported = false; break; default: @@ -210,6 +211,8 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) case IXGBE_DEV_ID_X550EM_A_10G_T: case IXGBE_DEV_ID_X550EM_A_1G_T: case IXGBE_DEV_ID_X550EM_A_1G_T_L: + case IXGBE_DEV_ID_E610_10G_T: + case IXGBE_DEV_ID_E610_2_5G_T: supported = true; break; default: @@ -616,7 +619,8 @@ s32 ixgbe_clear_hw_cntrs_generic(struct ixgbe_hw *hw) } } - if (hw->mac.type == ixgbe_mac_X550 || hw->mac.type == ixgbe_mac_X540) { + if (hw->mac.type == ixgbe_mac_X540 || + hw->mac.type == ixgbe_mac_X550) { if (hw->phy.id == 0) ixgbe_identify_phy(hw); hw->phy.ops.read_reg(hw, IXGBE_PCRC8ECL, @@ -1037,6 +1041,9 @@ void ixgbe_set_pci_config_data_generic(struct ixgbe_hw *hw, u16 link_status) case IXGBE_PCI_LINK_SPEED_8000: hw->bus.speed = ixgbe_bus_speed_8000; break; + case IXGBE_PCI_LINK_SPEED_16000: + hw->bus.speed = ixgbe_bus_speed_16000; + break; default: hw->bus.speed = ixgbe_bus_speed_unknown; break; @@ -1059,7 +1066,9 @@ s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_get_bus_info_generic"); /* Get the negotiated link width and speed from PCI config space */ - link_status = IXGBE_READ_PCIE_WORD(hw, IXGBE_PCI_LINK_STATUS); + link_status = IXGBE_READ_PCIE_WORD(hw, hw->mac.type == ixgbe_mac_E610 ? + IXGBE_PCI_LINK_STATUS_E610 : + IXGBE_PCI_LINK_STATUS); ixgbe_set_pci_config_data_generic(hw, link_status); @@ -1878,7 +1887,6 @@ static s32 ixgbe_get_eeprom_semaphore(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_get_eeprom_semaphore"); - /* Get SMBI software semaphore between device drivers first */ for (i = 0; i < timeout; i++) { /* @@ -3363,7 +3371,6 @@ s32 ixgbe_disable_sec_rx_path_generic(struct ixgbe_hw *hw) DEBUGFUNC("ixgbe_disable_sec_rx_path_generic"); - secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL); secrxreg |= IXGBE_SECRXCTRL_RX_DIS; IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg); @@ -3692,6 +3699,10 @@ u16 ixgbe_get_pcie_msix_count_generic(struct ixgbe_hw *hw) pcie_offset = IXGBE_PCIE_MSIX_82599_CAPS; max_msix_count = IXGBE_MAX_MSIX_VECTORS_82599; break; + case ixgbe_mac_E610: + pcie_offset = IXGBE_PCIE_MSIX_E610_CAPS; + max_msix_count = IXGBE_MAX_MSIX_VECTORS_82599; + break; default: return msix_count; } @@ -4139,7 +4150,6 @@ s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) return IXGBE_SUCCESS; } - /** * ixgbe_toggle_txdctl_generic - Toggle VF's queues * @hw: pointer to hardware structure @@ -4323,7 +4333,8 @@ s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, break; case IXGBE_LINKS_SPEED_100_82599: *speed = IXGBE_LINK_SPEED_100_FULL; - if (hw->mac.type == ixgbe_mac_X550) { + if (hw->mac.type == ixgbe_mac_X550 || + hw->mac.type == ixgbe_mac_E610) { if (links_reg & IXGBE_LINKS_SPEED_NON_STD) *speed = IXGBE_LINK_SPEED_5GB_FULL; } @@ -5494,6 +5505,7 @@ void ixgbe_get_nvm_version(struct ixgbe_hw *hw, case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: + case ixgbe_mac_E610: /* version of eeprom section */ if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_X540, &word)) word = NVM_VER_INVALID; @@ -5512,6 +5524,7 @@ void ixgbe_get_nvm_version(struct ixgbe_hw *hw, case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: + case ixgbe_mac_E610: /* intel phy firmware version */ if (ixgbe_read_eeprom(hw, NVM_EEP_PHY_OFF_X540, &word)) word = NVM_VER_INVALID; diff --git a/sys/dev/ixgbe/ixgbe_e610.c b/sys/dev/ixgbe/ixgbe_e610.c new file mode 100644 index 000000000000..95c6dca416c6 --- /dev/null +++ b/sys/dev/ixgbe/ixgbe_e610.c @@ -0,0 +1,5567 @@ +/****************************************************************************** + SPDX-License-Identifier: BSD-3-Clause + + Copyright (c) 2025, Intel Corporation + All rights reserved. + + 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. + + 3. Neither the name of the Intel Corporation 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 "ixgbe_type.h" +#include "ixgbe_e610.h" +#include "ixgbe_x550.h" +#include "ixgbe_common.h" +#include "ixgbe_phy.h" +#include "ixgbe_api.h" + +/** + * ixgbe_init_aci - initialization routine for Admin Command Interface + * @hw: pointer to the hardware structure + * + * Initialize the ACI lock. + */ +void ixgbe_init_aci(struct ixgbe_hw *hw) +{ + ixgbe_init_lock(&hw->aci.lock); +} + +/** + * ixgbe_shutdown_aci - shutdown routine for Admin Command Interface + * @hw: pointer to the hardware structure + * + * Destroy the ACI lock. + */ +void ixgbe_shutdown_aci(struct ixgbe_hw *hw) +{ + ixgbe_destroy_lock(&hw->aci.lock); +} + +/** + * ixgbe_should_retry_aci_send_cmd_execute - decide if ACI command should + * be resent + * @opcode: ACI opcode + * + * Check if ACI command should be sent again depending on the provided opcode. + * + * Return: true if the sending command routine should be repeated, + * otherwise false. + */ +static bool ixgbe_should_retry_aci_send_cmd_execute(u16 opcode) +{ + switch (opcode) { + case ixgbe_aci_opc_disable_rxen: + case ixgbe_aci_opc_get_phy_caps: + case ixgbe_aci_opc_get_link_status: + case ixgbe_aci_opc_get_link_topo: + return true; + } + + return false; +} + +/** + * ixgbe_aci_send_cmd_execute - execute sending FW Admin Command to FW Admin + * Command Interface + * @hw: pointer to the HW struct + * @desc: descriptor describing the command + * @buf: buffer to use for indirect commands (NULL for direct commands) + * @buf_size: size of buffer for indirect commands (0 for direct commands) + * + * Admin Command is sent using CSR by setting descriptor and buffer in specific + * registers. + * + * Return: the exit code of the operation. + * * - IXGBE_SUCCESS - success. + * * - IXGBE_ERR_ACI_DISABLED - CSR mechanism is not enabled. + * * - IXGBE_ERR_ACI_BUSY - CSR mechanism is busy. + * * - IXGBE_ERR_PARAM - buf_size is too big or + * invalid argument buf or buf_size. + * * - IXGBE_ERR_ACI_TIMEOUT - Admin Command X command timeout. + * * - IXGBE_ERR_ACI_ERROR - Admin Command X invalid state of HICR register or + * Admin Command failed because of bad opcode was returned or + * Admin Command failed with error Y. + */ +static s32 +ixgbe_aci_send_cmd_execute(struct ixgbe_hw *hw, struct ixgbe_aci_desc *desc, + void *buf, u16 buf_size) +{ + u32 hicr = 0, tmp_buf_size = 0, i = 0; + u32 *raw_desc = (u32 *)desc; + s32 status = IXGBE_SUCCESS; + bool valid_buf = false; + u32 *tmp_buf = NULL; + u16 opcode = 0; + + do { + hw->aci.last_status = IXGBE_ACI_RC_OK; + + /* It's necessary to check if mechanism is enabled */ + hicr = IXGBE_READ_REG(hw, PF_HICR); + if (!(hicr & PF_HICR_EN)) { + status = IXGBE_ERR_ACI_DISABLED; + break; + } + if (hicr & PF_HICR_C) { + hw->aci.last_status = IXGBE_ACI_RC_EBUSY; + status = IXGBE_ERR_ACI_BUSY; + break; + } + opcode = desc->opcode; + + if (buf_size > IXGBE_ACI_MAX_BUFFER_SIZE) { + status = IXGBE_ERR_PARAM; + break; + } + + if (buf) + desc->flags |= IXGBE_CPU_TO_LE16(IXGBE_ACI_FLAG_BUF); + + /* Check if buf and buf_size are proper params */ + if (desc->flags & IXGBE_CPU_TO_LE16(IXGBE_ACI_FLAG_BUF)) { + if ((buf && buf_size == 0) || + (buf == NULL && buf_size)) { + status = IXGBE_ERR_PARAM; + break; + } + if (buf && buf_size) + valid_buf = true; + } + + if (valid_buf == true) { + if (buf_size % 4 == 0) + tmp_buf_size = buf_size; + else + tmp_buf_size = (buf_size & (u16)(~0x03)) + 4; + + tmp_buf = (u32*)ixgbe_malloc(hw, tmp_buf_size); + if (!tmp_buf) + return IXGBE_ERR_OUT_OF_MEM; + + /* tmp_buf will be firstly filled with 0xFF and after + * that the content of buf will be written into it. + * This approach lets us use valid buf_size and + * prevents us from reading past buf area + * when buf_size mod 4 not equal to 0. + */ + memset(tmp_buf, 0xFF, tmp_buf_size); + memcpy(tmp_buf, buf, buf_size); + + if (tmp_buf_size > IXGBE_ACI_LG_BUF) + desc->flags |= + IXGBE_CPU_TO_LE16(IXGBE_ACI_FLAG_LB); + + desc->datalen = IXGBE_CPU_TO_LE16(buf_size); + + if (desc->flags & IXGBE_CPU_TO_LE16(IXGBE_ACI_FLAG_RD)) { + for (i = 0; i < tmp_buf_size / 4; i++) { + IXGBE_WRITE_REG(hw, PF_HIBA(i), + IXGBE_LE32_TO_CPU(tmp_buf[i])); + } + } + } + + /* Descriptor is written to specific registers */ + for (i = 0; i < IXGBE_ACI_DESC_SIZE_IN_DWORDS; i++) + IXGBE_WRITE_REG(hw, PF_HIDA(i), + IXGBE_LE32_TO_CPU(raw_desc[i])); + + /* SW has to set PF_HICR.C bit and clear PF_HICR.SV and + * PF_HICR_EV + */ + hicr = IXGBE_READ_REG(hw, PF_HICR); + hicr = (hicr | PF_HICR_C) & ~(PF_HICR_SV | PF_HICR_EV); + IXGBE_WRITE_REG(hw, PF_HICR, hicr); + + /* Wait for sync Admin Command response */ + for (i = 0; i < IXGBE_ACI_SYNC_RESPONSE_TIMEOUT; i += 1) { + hicr = IXGBE_READ_REG(hw, PF_HICR); + if ((hicr & PF_HICR_SV) || !(hicr & PF_HICR_C)) + break; + + msec_delay(1); + } + + /* Wait for async Admin Command response */ + if ((hicr & PF_HICR_SV) && (hicr & PF_HICR_C)) { + for (i = 0; i < IXGBE_ACI_ASYNC_RESPONSE_TIMEOUT; + i += 1) { + hicr = IXGBE_READ_REG(hw, PF_HICR); + if ((hicr & PF_HICR_EV) || !(hicr & PF_HICR_C)) + break; + + msec_delay(1); + } + } + + /* Read sync Admin Command response */ + if ((hicr & PF_HICR_SV)) { + for (i = 0; i < IXGBE_ACI_DESC_SIZE_IN_DWORDS; i++) { + raw_desc[i] = IXGBE_READ_REG(hw, PF_HIDA(i)); + raw_desc[i] = IXGBE_CPU_TO_LE32(raw_desc[i]); + } + } + + /* Read async Admin Command response */ + if ((hicr & PF_HICR_EV) && !(hicr & PF_HICR_C)) { + for (i = 0; i < IXGBE_ACI_DESC_SIZE_IN_DWORDS; i++) { + raw_desc[i] = IXGBE_READ_REG(hw, PF_HIDA_2(i)); *** 8203 LINES SKIPPED *** From nobody Wed Oct 15 17:29:56 2025 X-Original-To: dev-commits-src-branches@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 4cmyl83cbZz6CjRJ; Wed, 15 Oct 2025 17:29: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cmyl83556z41Fq; Wed, 15 Oct 2025 17:29:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760549396; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=biI63e6DHHPPEPB9orJyIIVwFwewKX6QVrdRjGgnO0E=; b=GpUxhGuzGLQGfM3E1T2Vr14qc69RV16KqToxShsOofFqK87a5PHC6ZEqYsv9Bdq3Cscgzf +sO1w0ocJ02sZiBW067/Hvw9wPO7OCmMM5J1Xnw9s2F1wvsENI4VRKcuzHNETth+F03wMD IwTNDz7xRjHvR5xLOhMog7F/OAZ01Rnc+5WbMnZaaWT0iTdoLKvMr9FrJyRkMYUfc/7ZPh +2jxh4T3yCgdrn8igOn0bH7dWefr1gYZmmZm4TbRKHZypZbjK2kAaMVwjPZP2nTFl/jjPb 31OEiPdoeozlhy4i9ea2dwASsmvKVvT5iZb1IOl/QXtuF+ri9WayF3+Tz2V7dA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760549396; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=biI63e6DHHPPEPB9orJyIIVwFwewKX6QVrdRjGgnO0E=; b=xQ1bynjGcaVRoSEhsu9NBrj2ActCGxLiOjvfEm9j0Bs/XVSkhtSyvzsnj1937b6Zntzzl5 CENWL5XZJVC1P54KbvnMIvl2KERzvGspYEDrkQkZqYKpnOxAo0q7P4k9ZA0CAgwQ2MsjYS xXigHMuD7088wHwY5lIlIvaoYG/cNnv8muvo29sb7F1cgEswMgooi/2eG9m8MgURC3Iy9M eR+JExWY/AH7r+YVxoiESYvCzJfJn2UxjoNNWs1ka0Y3981A3PqPqihntU8Tsa/Tz9UpE3 IS90MVmAL8kJziyuoENUMcQrd5c8au62hOpgjeS+Ptxe9ULLzhtY4BV9Iko0hQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760549396; a=rsa-sha256; cv=none; b=wPltp3UmwPXT20T7Y2rX+DXjZ4bt5eMXTAEZcEirvOQXSu6AMILCz6ZPekjZidSQCQwplV Gu8kFF49CBM5CdOvoyfGJAH7smmP5/pHzGqahRf0XgsCVslkje6FAXLnQFlUe80RC40co7 QuYSUlM48FN9JUMfgnbw8ThmGnSJcQEaGtrSsMyDGLVmyxqwr9Bf3doQNnUg1g8xU6C6UD riRZyrfnpzUxLuZqNo/+Ik9fd3UWjQDuQYy5x2dNdUWkYtWewlO2oYRkQFWJwzyAOMhGRP mNHD+l4L1TpJgNu++ZCmFe9MC9OfCtRZAEZXJobTLe3w+5wbHiWxpLPm+Z6ZBw== 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 4cmyl82fHWznRs; Wed, 15 Oct 2025 17:29: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 59FHTuKS005610; Wed, 15 Oct 2025 17:29:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FHTuGC005607; Wed, 15 Oct 2025 17:29:56 GMT (envelope-from git) Date: Wed, 15 Oct 2025 17:29:56 GMT Message-Id: <202510151729.59FHTuGC005607@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: 4574a86c526c - stable/15 - man: Conditionally install ar.5 in toolchain package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 4574a86c526c94d049e156fdf7f1c820b0f359be Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=4574a86c526c94d049e156fdf7f1c820b0f359be commit 4574a86c526c94d049e156fdf7f1c820b0f359be Author: Ed Maste AuthorDate: 2025-10-03 16:02:20 +0000 Commit: Ed Maste CommitDate: 2025-10-15 17:27:36 +0000 man: Conditionally install ar.5 in toolchain package Previously if WITHOUT_TOOLCHAIN was set we'd create a FreeBSD-clang package that contained only ar.5. As ar.5 describes the ar format and doesn't come from Clang/LLVM move it to the FreeBSD-toolchain package and make it conditional on MK_TOOLCHAIN. Reviewed by: ivy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52886 (cherry picked from commit a8d774d9708c100a52f231065d9d5f1b4c3aceb7) --- share/man/man5/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile index 0f6559b236c6..c13a8b7afde2 100644 --- a/share/man/man5/Makefile +++ b/share/man/man5/Makefile @@ -73,9 +73,11 @@ MANGROUPS+= BOOTLOADER BOOTLOADER= device.hints.5 BOOTLOADERPACKAGE=bootloader -MANGROUPS+= CLANG -CLANG= ar.5 -CLANGPACKAGE= clang +.if ${MK_TOOLCHAIN} != "no" +MANGROUPS+= TOOLCHAIN +TOOLCHAIN= ar.5 +TOOLCHAINPACKAGE=toolchain +.endif MANGROUPS+= LP LP= hosts.lpd.5 From nobody Wed Oct 15 18:59:26 2025 X-Original-To: dev-commits-src-branches@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 4cn0kQ1p1Sz6CqjV; Wed, 15 Oct 2025 18:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn0kQ1D5tz4GW9; Wed, 15 Oct 2025 18:59:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554766; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejf5ncxBN7IejVBYWPza2CAgjkzRxe1r9rOqrDQoaCs=; b=eQ7XdxeffjS0cFMcY8bhUNktn534m8K0i40ZKyIq+FwSGcndVmOptaL5Ac90vyQ3vvx/8a T0rAtVHOEuaDnwZvUcUbWocG8gXc+M3q4o4qphUNrRncexbZVDw+wpkATilj5OiDMePBfu n7FqZZB/cy7mapccke/FQIuehFTn9CBq3BGZrRCcLkzXg5fuLuDA4ZQ/8pTN7wENVVybhT gb5T3wDErV2bfvKs37R2n9DSGrj/VFzlSj3FHKSeegq056fL3+sIW3y1H9KI45IKLGiAFK zWh74E9dYcK68hYvGq1FfVy4QgqhBEn7P/cLTiZnNarLJBolryDQVlVWJ/rbdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554766; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejf5ncxBN7IejVBYWPza2CAgjkzRxe1r9rOqrDQoaCs=; b=BmwrEKpPEQPrhxggB99CVeH5oeovZIyqudDwOa+UEtGsrW4S95YVudvIIZtDzv6Jr2uZ8E +VV6yQ52MDDIMHZdXLkBMp0UFumYufov5Yfsef1VFdxZuC+8+NtbIKnJ9oDf5mo3k1+1QK AaY/p2MG+/G0okm0WPg0HjT75oAPTvp5U0Q28ki0i0VoU637fhFapA6XhcV74d1eRtA9et S63tKkiReSYu9/bwBL/D816Yg1xcO2npoPx67t6BIc+4kzJRvzCTDcc0cLLibqhnKDdAng 8g16NO6QhD9TNXLzQUiEF6TgITv+FsL36uk38Nwu09UQ0okDFUFmPVvATjxbZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760554766; a=rsa-sha256; cv=none; b=c+QKnK/IxiaA3qYa/21zTXMnEVZrJpJ/9bdj7VFcP8n+MBXivkSnQQY2C+tHca8yvjG16W 0gKxkhi9zs3njOMZl2DqWaZna6uQ6yoDDZhcZ3Szfc+7Fkd4B+2slQfE/LuTebFYhqdIWg IyplgojIrVB7nsoTG9XkSBrX6fQOz9iffldaVa38Fk70aJa9UiNa2c7oBcgq3fuXj/Juti 84Y6kWIuDvwJ5wP41LsziBd3wfTGwhQhLF0zHIMWt/4gEGQFj6LgKhVsHtThFrsCGZIkpg rmrq8zCPfZbOqLc7bY0X2Vqs5mzYNDA4R8kIH+mt7uH/eizr2jiPLXDUnn4k3g== 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 4cn0kQ0mDtzrT1; Wed, 15 Oct 2025 18:59: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 59FIxQ95074286; Wed, 15 Oct 2025 18:59:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FIxQ5U074283; Wed, 15 Oct 2025 18:59:26 GMT (envelope-from git) Date: Wed, 15 Oct 2025 18:59:26 GMT Message-Id: <202510151859.59FIxQ5U074283@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: 794299ac6876 - stable/15 - netlink: in snl_init_writer() don't overwrite error in case of failure List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 794299ac6876ecdf62e503d3fb05bd388f5c8be7 Auto-Submitted: auto-generated The branch stable/15 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=794299ac6876ecdf62e503d3fb05bd388f5c8be7 commit 794299ac6876ecdf62e503d3fb05bd388f5c8be7 Author: Bruno Silvestre AuthorDate: 2025-10-07 05:48:28 +0000 Commit: Gleb Smirnoff CommitDate: 2025-10-15 18:57:46 +0000 netlink: in snl_init_writer() don't overwrite error in case of failure PR: 290050 (cherry picked from commit 488718ff42346888243496c00cbeb42ba004171e) --- sys/netlink/netlink_snl.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/netlink/netlink_snl.h b/sys/netlink/netlink_snl.h index 586716776bc5..ca1169d24b91 100644 --- a/sys/netlink/netlink_snl.h +++ b/sys/netlink/netlink_snl.h @@ -1057,14 +1057,14 @@ snl_init_writer(struct snl_state *ss, struct snl_writer *nw) { nw->size = SNL_WRITER_BUFFER_SIZE; nw->base = (char *)snl_allocz(ss, nw->size); - if (nw->base == NULL) { + if (__predict_false(nw->base == NULL)) { nw->error = true; nw->size = 0; - } + } else + nw->error = false; nw->offset = 0; nw->hdr = NULL; - nw->error = false; nw->ss = ss; } From nobody Wed Oct 15 18:59:27 2025 X-Original-To: dev-commits-src-branches@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 4cn0kR2M2Bz6CqgQ; Wed, 15 Oct 2025 18:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn0kR1pn6z4GdQ; Wed, 15 Oct 2025 18:59:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554767; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1JL9GHWWR7Afp7XoNwxsRiP5MRwVeWdgJKpgqzS/Bi0=; b=OSc63KLdfmpZSfx1aZiKMUY7FH1cXC1B04NoPaaNP/U7CrLvU3tnxvoKbmZ2BL9SvhRgzg 45qd8a/C62yRJjuRH/wzacVEm1VaKm8pdTOnZt3RodY9UTdoHDjJ1x53YFfXPo+DYc9/pW HBItZFbyv+LZw2pqdmqUKo/LAfFaIu3LMLNSk320nZbm4i+2ZrivoVzjOq3/xuR2YJl6sg X8+btRMpdiLeK9qdLStolxDllv53gvtlip5Zr6MAvgBuabAJhOTUyY2Wwq1aHiu71tdcm4 qIZS3hOc+lG2tFauQYL5NlOzsKhDk8iw2Y/JrgCuvB0+Fx9HYZ3QVOjsVUOCqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554767; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1JL9GHWWR7Afp7XoNwxsRiP5MRwVeWdgJKpgqzS/Bi0=; b=otHsf0a/RuFqwNHFZYRcYCkOikR9h2yZwMbHXxvG05CgKsUcSkZW0W5Yrs/xi0wHF9+sCx XPOjTQPv14ZhfVVl/y5oXII+7NjJaTN1+Lkma4OWSRmfIa5t2xqUpwjGBERCA0shMRyip+ j/IThMi/7Ypy/lpSJw4hkYF4bG+NKXCMugsD7yh4o5hNxXgLdgZni0EnvzIvi68Zhn8Z02 GtigqZqcNif+rGAct/m5+X0XaNBRUCwZKjDvqCm3INOgeFyIKLEYgmaUvA6xIqochwdBbR fcNp87jlnInimDLi5U4yFs9sI9ML+/BsoS20fPIEmCTYrrpU9nmZ3t9YQDlaAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760554767; a=rsa-sha256; cv=none; b=UQHeAcSHSTsCy0Yl9pUbcT6ziJ+ydJKmt70TCHE4Gagd7J9jDPbCCgnUBFvzC5zGzhoVoM 50TVmTnufMn5FBRtiuzZUzZErvmH6KFDUUktqhGxYM0xxffc/QjlCHD4vvcQ5G5iTJ1HHJ GJbG19hnR9ITdyhuwmc7Bg/m2sfD8cp877FmGAYmG94lJZl2S6DPl1E4ScMoHVca4x30xw FmnV9zI/1av2/C2hj9RAztbTu4OAvx4DwxUHQTC6RpgRjj7Tv2SeUQbWNH9OTwdvxhaBGX hQILdZ7s2C/fLryp2friueq/ApoOYqZcdo/rlknC9lFztg5Ay1RpVdvSLpx+Vg== 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 4cn0kR1NmmzrRm; Wed, 15 Oct 2025 18:59: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 59FIxR3l074322; Wed, 15 Oct 2025 18:59:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FIxRUI074319; Wed, 15 Oct 2025 18:59:27 GMT (envelope-from git) Date: Wed, 15 Oct 2025 18:59:27 GMT Message-Id: <202510151859.59FIxRUI074319@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: a091d6919c31 - stable/15 - socket(2): refactor the manual page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a091d6919c3175f2385719e7b1c6fbd8576134f9 Auto-Submitted: auto-generated The branch stable/15 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=a091d6919c3175f2385719e7b1c6fbd8576134f9 commit a091d6919c3175f2385719e7b1c6fbd8576134f9 Author: Gleb Smirnoff AuthorDate: 2025-10-14 18:41:25 +0000 Commit: Gleb Smirnoff CommitDate: 2025-10-15 18:58:54 +0000 socket(2): refactor the manual page Create a chapter on every important socket type: stream, datagram, seqpacket. Always list what protocol families do support what kinds of sockets. Improve some statements possessing language from the specification [1]. Reduce some statements that are mostly specific to TCP. Provide more external links and references to various important syscalls that can be used on sockets. Add a paragrph on non-blocking mode. The big factual change is documentation of SOCK_SEQPACKET. In FreeBSD 15 this socket now fully follows the specification and is a stream socket with record boundaries. [1] https://pubs.opengroup.org/onlinepubs/9799919799/functions/V2_chap02.html#tag_16_10_06 Differential Revision: https://reviews.freebsd.org/D52771 (cherry picked from commit 86d17239233ea4f5766bee68ba6355804525cefa) (cherry picked from commit ad13fd5a8fa1607805d11ced3428e86dbd94778e) --- lib/libsys/socket.2 | 300 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 213 insertions(+), 87 deletions(-) diff --git a/lib/libsys/socket.2 b/lib/libsys/socket.2 index b211611c6354..16317fcd3aa5 100644 --- a/lib/libsys/socket.2 +++ b/lib/libsys/socket.2 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 17, 2025 +.Dd September 28, 2025 .Dt SOCKET 2 .Os .Sh NAME @@ -89,32 +89,6 @@ SOCK_RAW Raw-protocol interface, SOCK_SEQPACKET Sequenced packet stream .Ed .Pp -A -.Dv SOCK_STREAM -type provides sequenced, reliable, -two-way connection based byte streams. -An out-of-band data transmission mechanism may be supported. -A -.Dv SOCK_DGRAM -socket supports -datagrams (connectionless, unreliable messages of -a fixed (typically small) maximum length). -A -.Dv SOCK_SEQPACKET -socket may provide a sequenced, reliable, -two-way connection-based data transmission path for datagrams -of fixed maximum length; a consumer may be required to read -an entire packet with each read system call. -This facility may have protocol-specific properties. -.Dv SOCK_RAW -sockets provide access to internal network protocols and interfaces. -The -.Dv SOCK_RAW -type is available only to the super-user and is described in -.Xr ip 4 -and -.Xr ip6 4 . -.Pp Additionally, the following flags are allowed in the .Fa type argument: @@ -140,32 +114,23 @@ particular to the in which communication is to take place; see .Xr protocols 5 . -.Pp The .Fa protocol argument may be set to zero (0) to request the default implementation of a socket type for the protocol, if any. -.Pp -Sockets of type +.Sh STREAM SOCKET TYPE +The +.Dv SOCK_STREAM +socket type provides reliable, sequenced, full-duplex octet streams between +the socket and a peer to which the socket is connected. +A socket of type .Dv SOCK_STREAM -are full-duplex byte streams, similar -to pipes. -A stream socket must be in a +needs to be in a .Em connected -state before any data may be sent or received -on it. +state before any data can be sent or received. A connection to another socket is created with a .Xr connect 2 system call. -Once connected, data may be transferred using -.Xr read 2 -and -.Xr write 2 -calls or some variant of the -.Xr send 2 -and -.Xr recv 2 -functions. (Some protocol families, such as the Internet family, support the notion of an .Dq implied connect , @@ -173,62 +138,210 @@ which permits data to be sent piggybacked onto a connect operation by using the .Xr sendto 2 system call.) -When a session has been completed a -.Xr close 2 -may be performed. -Out-of-band data may also be transmitted as described in +Once connected, data may be sent using +.Xr send 2 , +.Xr sendto 2 , +.Xr sendmsg 2 +and +.Xr write 2 +system calls. +Data may be received using +.Xr recv 2 , +.Xr recvfrom 2 , +.Xr recvmsg 2 , +and +.Xr read 2 +system calls. +Record boundaries are not maintained; data sent on a stream socket using output +operations of one size can be received using input operations of smaller or +larger sizes without loss of data. +Data may be buffered; successful return from an output function does not imply +that the data has been delivered to the peer or even transmitted from the local +system. +For certain protocols out-of-band data may also be transmitted as described in .Xr send 2 and received as described in .Xr recv 2 . .Pp -The communications protocols used to implement a -.Dv SOCK_STREAM -ensure that data -is not lost or duplicated. -If a piece of data for which the -peer protocol has buffer space cannot be successfully transmitted -within a reasonable length of time, then -the connection is considered broken and calls -will indicate an error with --1 returns and with -.Er ETIMEDOUT -as the specific code -in the global variable -.Va errno . -The protocols optionally keep sockets -.Dq warm -by forcing transmissions -roughly every minute in the absence of other activity. -An error is then indicated if no response can be -elicited on an otherwise -idle connection for an extended period (e.g.\& 5 minutes). -By default, a +If data cannot be successfully transmitted within a given time then the +connection is considered broken, and subsequent operations shall fail with +a protocol specific error code. +A .Dv SIGPIPE -signal is raised if a process sends -on a broken stream, but this behavior may be inhibited via +signal is raised if a thread attempts to send data on a broken stream (one that +is no longer connected). +The signal can be suppressed by the +.Dv MSG_NOSIGNAL +flag with distinct +.Xr send 2 , +.Xr sendto 2 , +and +.Xr sendmsg 2 +system calls or by the +.Dv SO_NOSIGPIPE +socket option set on the socket with .Xr setsockopt 2 . .Pp -.Dv SOCK_SEQPACKET -sockets employ the same system calls -as +The .Dv SOCK_STREAM -sockets. -The only difference -is that -.Xr read 2 -calls will return only the amount of data requested, -and any remaining in the arriving packet will be discarded. +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +.Dv PF_UNIX , +.Dv PF_BLUETOOTH , +.Dv PF_HYPERV , +and +.Dv PF_INET_SDP . +Out-of-band data transmission mechanism is supported for stream sockets of +.Dv PF_INET +and +.Dv PF_INET6 +protocol families. +.Sh DATAGRAM SOCKET TYPE +The +.Dv SOCK_DGRAM +socket type supports connectionless data transfer which is not necessarily +acknowledged or reliable. +Datagrams can be sent to the address specified (possibly multicast or +broadcast) in each output operation, and incoming datagrams can be received +from multiple sources. +The source address of each datagram is available when receiving the datagram +with +.Xr recvfrom 2 +or +.Xr recvmsg 2 . +An application can also pre-specify a peer address with +.Xr sendto 2 +or +.Xr sendmsg 2 , +in which case calls to output functions that do not specify a peer address +shall send to the pre-specified peer. +If a peer has been specified, only datagrams from that peer shall be received. +A datagram shall be sent in a single output operation, and needs to be received +in a single input operation. +The maximum size of a datagram is protocol-specific. +Output datagrams may be buffered within the system; thus, a successful return +from an output function does not guarantee that a datagram is actually sent or +received. .Pp +The .Dv SOCK_DGRAM +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +.Dv PF_UNIX , +.Dv PF_NETGRAPH , and -.Dv SOCK_RAW -sockets allow sending of datagrams to correspondents -named in +.Dv PF_NETLINK . +.Sh SEQUENCED PACKET SOCKET TYPE +The +.Dv SOCK_SEQPACKET +socket type is similar to the +.Dv SOCK_STREAM +type, and is also connection-oriented. +The only difference between these types is that record boundaries are +maintained using the +.Dv SOCK_SEQPACKET +type. +A record can be sent using one or more output operations and received using one +or more input operations, but a single operation never transfers parts of more +than one record. +Record boundaries are set by the sender with the +.Dv MSG_EOR +flag of .Xr send 2 -calls. -Datagrams are generally received with +or +.Xr sendmsg 2 +functions. +There is no possibility to set a record boundary with +.Xr write 2 . +Record boundaries are visible to the receiver via the +.Dv MSG_EOR +flag in the received message flags returned by the +.Xr recvmsg 2 +function. +It is protocol-specific whether a maximum record size is imposed. +.Pp +The +.Dv SOCK_SEQPACKET +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +and +.Dv PF_UNIX . +.Pp +.Sh RAW SOCKET TYPE +The +.Dv SOCK_RAW +socket type provides access to internal network protocols and interfaces. +It is a datagram socket in its nature, thus has the same semantics of +read and write operations. +The +.Dv SOCK_RAW +type is available only to the super-user and is described in +.Xr ip 4 +and +.Xr ip6 4 . +.Sh NON-BLOCKING MODE +A socket can be created in +.Em non-blocking mode +with the help of +.Dv SOCK_NONBLOCK +flag. +Alternatively, the non-blocking mode on a socket can be turned on and off with +the help of the +.Dv O_NONBLOCK +flag of the +.Xr fcntl 2 +system call. +.Pp +When a non-blocking socket has not enough data in its receive buffer to fulfill +the application supplied buffer, then data receiving system calls like +.Xr recv 2 , .Xr recvfrom 2 , -which returns the next datagram with its return address. +.Xr recvmsg 2 +and +.Xr read 2 +will not block waiting for the data but immediately return. +Return value will indicate amount of bytes read into the supplied buffer. +The +.Va errno +will be set to +.Dv EAGAIN +.Po +has same value as +.Dv EWOULDBLOCK +.Pc . +.Pp +If application tries to send more data on a non-blocking socket than the socket +send buffer can accomodate with +.Xr send 2 , +.Xr sendto 2 , +.Xr sendmsg 2 +or +.Xr write 2 +system calls partial data will be sent. +Return value will indicate amount of bytes sent. +The +.Va errno +will be set to +.Dv EAGAIN . +Note that sockets of +.Dv SOCK_DGRAM +type are unreliable, thus for these sockets sending operations will never fail +with +.Dv EAGAIN +in non-blocking mode neither will block in blocking mode. +.Sh OTHER OPERATIONS ON SOCKETS +Since socket descriptors are file descriptors, many generic file operations +performed by +.Xr fcntl 2 , +apply. +Socket descriptors can be used with all event engines, such as +.Xr kevent 2 , +.Xr select 2 +and +.Xr poll 2 . .Pp An .Xr fcntl 2 @@ -250,6 +363,12 @@ The and .Xr getsockopt 2 system calls are used to set and get options, respectively. +.Pp +Connection associated with a socket can be terminated by +.Xr close 2 +system call. +One direction of communication can be disabled with +.Xr shutdown 2 . .Sh RETURN VALUES A -1 is returned if an error occurs, otherwise the return value is a descriptor referencing the socket. @@ -282,16 +401,23 @@ The socket type is not supported by the protocol. .Sh SEE ALSO .Xr accept 2 , .Xr bind 2 , +.Xr close 2 , .Xr connect 2 , +.Xr fcntl 2 , .Xr getpeername 2 , .Xr getsockname 2 , .Xr getsockopt 2 , .Xr ioctl 2 , +.Xr kevent 2 , .Xr listen 2 , +.Xr poll 2 , .Xr read 2 , .Xr recv 2 , .Xr select 2 , .Xr send 2 , +.Xr sendmsg 2 , +.Xr sendto 2 , +.Xr signal 3 , .Xr shutdown 2 , .Xr socketpair 2 , .Xr write 2 , From nobody Wed Oct 15 18:59:28 2025 X-Original-To: dev-commits-src-branches@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 4cn0kT0m9wz6CqpK; Wed, 15 Oct 2025 18:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn0kS3F6fz4GZx; Wed, 15 Oct 2025 18:59:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554768; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=349ON6NuhCtjthH90G9JFcHc5jjF56+7aepClhODufU=; b=UdiH4EABN+N/ZlB3mFwYCTIsWNjnYVDMVMTc/2aovcvWrzB+gRv+WUfCJ1n/UBmg+2q9aG fYZg/kmyq1CccSFAwYaLfNqiO+49YX2mZ+Anp1au7VoS+aC97pqrPN6VIVy18xMpi46Qs1 uCSBC74jkHQpBaxpTvmgPL5rrPovmMoK5OhQ/aj9g7mRRwKhz9Y0Is0d1wXLwkIjVApYVq K8NT6BlFSctoGkQgPcHFTUeTD9NvjWbrrO3cUdXMkEgRPquRJU7hhGc/cIYWooG5nFGZPv CABN7QEB5vyfV+TzhqQk8qaomP5Mc81Hu+gzlMZod2jsP5ebvFQL9IoHq4Iv+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760554768; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=349ON6NuhCtjthH90G9JFcHc5jjF56+7aepClhODufU=; b=kjqyXgRHRmvq4uL/URUXaOkGohm+b1lgrenB/vIddko3PthJuUnUFAV+NlNGDaQ3F0814K cUA7exG5R7mFe5HnRKynXNouDGC1IMNVnYVE/txDC5aykW2UWfzyspspFr65IoesISTmkg P8Mh1iQqVX+n6zu+G0qDiuYjnUJYdnmlO8gIIqzY8vNbi3iQZlrH/1uMLmLSP+l7e1vuY9 WPIDA4ZW8UqlZMKJZl8iX5uMCOHsmYBGi2WHp6twnpMv2wrNSZLonQUdEZj9uQPrtCeV9H Pg2oUQM0KdexegmiFFGR+b9HuMQb2BjA3SFXWuU1n6xDfqZbUaW/SErMRAgdIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760554768; a=rsa-sha256; cv=none; b=mjIjVvFPo4a8ypYK37VubZ6GBQocE2rnGeduXNlaArCk1R91LXxUOyPcboHgg3kbfQ1gSG SXhvarPsXCKLTXWMxf+7n9bIUYLe3zH9wd0DmJqw0LTVDlg7DOZaEh/7Xah5gJQ8DvGCGM 0lDMthpCYpb21X0EZVETHwBY9yJjIRGQecfAj4VyZTFGxJa9HgAsFdydHeedhXCkum7o7c ugkGkvwtppce7jWKwcgM5Coam+f00zQ9161REo2qo8pBLy44T/A1K8DhAaSzbG9oyF1LhG Y1mwjsbKXIKHzGLql5Votvk1h4a0IFcceEP/xeQMcXbFlxSrDyZgMwxtsqhYkw== 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 4cn0kS2fhzzqN3; Wed, 15 Oct 2025 18:59: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 59FIxSs2074355; Wed, 15 Oct 2025 18:59:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FIxSOO074352; Wed, 15 Oct 2025 18:59:28 GMT (envelope-from git) Date: Wed, 15 Oct 2025 18:59:28 GMT Message-Id: <202510151859.59FIxSOO074352@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: bbfaff26bf36 - stable/15 - unix/stream: repair SO_SNDTIMEO List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: bbfaff26bf365126cb4d38fda99a2100a256d9bd Auto-Submitted: auto-generated The branch stable/15 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=bbfaff26bf365126cb4d38fda99a2100a256d9bd commit bbfaff26bf365126cb4d38fda99a2100a256d9bd Author: Gleb Smirnoff AuthorDate: 2025-10-15 00:29:31 +0000 Commit: Gleb Smirnoff CommitDate: 2025-10-15 18:59:02 +0000 unix/stream: repair SO_SNDTIMEO The send operations are waiting on the peer's socket buffer, but we shall use our timeout value. Provide a test for that. Reported by: phk Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D53081 Fixes: d15792780760ef94647af9b377b5f0a80e1826bc (cherry picked from commit ead721935251ab5640ea736d4269814b7f9d2f64) --- sys/kern/uipc_usrreq.c | 20 ++++++++++++++++++-- tests/sys/kern/unix_stream.c | 27 +++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index 340d84666459..c5fc1e84ce3f 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -1069,6 +1069,21 @@ uipc_stream_sbspace(struct sockbuf *sb) return (min(space, mbspace)); } +/* + * UNIX version of generic sbwait() for writes. We wait on peer's receive + * buffer, using our timeout. + */ +static int +uipc_stream_sbwait(struct socket *so, sbintime_t timeo) +{ + struct sockbuf *sb = &so->so_rcv; + + SOCK_RECVBUF_LOCK_ASSERT(so); + sb->sb_flags |= SB_WAIT; + return (msleep_sbt(&sb->sb_acc, SOCK_RECVBUF_MTX(so), PSOCK | PCATCH, + "sbwait", timeo, 0, 0)); +} + static int uipc_sosend_stream_or_seqpacket(struct socket *so, struct sockaddr *addr, struct uio *uio0, struct mbuf *m, struct mbuf *c, int flags, @@ -1203,7 +1218,8 @@ restart: error = EWOULDBLOCK; goto out4; } - if ((error = sbwait(so2, SO_RCV)) != 0) { + if ((error = uipc_stream_sbwait(so2, + so->so_snd.sb_timeo)) != 0) { SOCK_RECVBUF_UNLOCK(so2); goto out4; } else @@ -2397,7 +2413,7 @@ uipc_sendfile_wait(struct socket *so, off_t need, int *space) } if (!sockref) soref(so2); - error = sbwait(so2, SO_RCV); + error = uipc_stream_sbwait(so2, so->so_snd.sb_timeo); if (error == 0 && __predict_false(sb->sb_state & SBS_CANTRCVMORE)) error = EPIPE; diff --git a/tests/sys/kern/unix_stream.c b/tests/sys/kern/unix_stream.c index 49d621dc5b0a..442b766ac885 100644 --- a/tests/sys/kern/unix_stream.c +++ b/tests/sys/kern/unix_stream.c @@ -1,6 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * + * Copyright (c) 2025 Gleb Smirnoff * Copyright (c) 2018 Alan Somers * * Redistribution and use in source and binary forms, with or without @@ -30,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -490,6 +492,30 @@ ATF_TC_BODY(ourshutdown_kevent, tc) close(sv[1]); } +ATF_TC_WITHOUT_HEAD(SO_SNDTIMEO); +ATF_TC_BODY(SO_SNDTIMEO, tc) +{ + struct timespec tp1, tp2, rtp, sleep = { .tv_nsec = 100000000 }; + int sv[2]; + char buf[10]; + + full_socketpair(sv); + ATF_REQUIRE_EQ(0, setsockopt(sv[0], SOL_SOCKET, SO_SNDTIMEO, + &(struct timeval){ .tv_usec = sleep.tv_nsec / 1000 }, + sizeof(struct timeval))); + ATF_REQUIRE_EQ(0, clock_gettime(CLOCK_MONOTONIC_PRECISE, &tp1)); + ATF_REQUIRE_EQ(-1, send(sv[0], buf, sizeof(buf), 0)); + ATF_REQUIRE(errno == EAGAIN); + ATF_REQUIRE_EQ(0, clock_gettime(CLOCK_MONOTONIC_PRECISE, &tp2)); + timespecsub(&tp2, &tp1, &rtp); + ATF_REQUIRE(timespeccmp(&rtp, &sleep, >=)); + ATF_REQUIRE_EQ(sizeof(buf), recv(sv[1], buf, sizeof(buf), 0)); + ATF_REQUIRE_EQ(sizeof(buf), send(sv[0], buf, sizeof(buf), 0)); + + close(sv[0]); + close(sv[1]); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, getpeereid); @@ -506,6 +532,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, peershutdown_wakeup_poll); ATF_TP_ADD_TC(tp, peershutdown_wakeup_kevent); ATF_TP_ADD_TC(tp, ourshutdown_kevent); + ATF_TP_ADD_TC(tp, SO_SNDTIMEO); return atf_no_error(); } From nobody Wed Oct 15 19:49:05 2025 X-Original-To: dev-commits-src-branches@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 4cn1qj5hx5z6CtyJ; Wed, 15 Oct 2025 19:49: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn1qj506Rz4N8X; Wed, 15 Oct 2025 19:49:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557745; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bCoRsK4S+EhHWJOGGrKUjMDm0SqmeiGVWQuO/nU7KsQ=; b=oxKC2IHit1DOuk1dPlWIuVxJv1VoknBSAUC1Klk8zKAWEGO7NiMQteqdoOUnzRs0/adO/d O19yWZzw9P2uATlYzD1GEVtGC2Oi69adQ/uFPfCb8H1ts6xxR9jiZHdLTt5lAHLlghnemH lc+9B+oGWZ8CxN/xY9XUhidnvT34Et0yBNroVDlzZDX3Noj998PzoQKysnnRvfRN/qPmTC 1+fAuX/7OgFyNMDtHe9NXOckmF7+Fxbl1haGmwCX2gE15yJGtkcSZ3DzZjuCWPeiw35ZB+ Ew6PD200ffWfd0viPuh4U5TOgupK9Skh0/XDAbPElgel2PPcmLV3pZUbt8HG4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557745; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bCoRsK4S+EhHWJOGGrKUjMDm0SqmeiGVWQuO/nU7KsQ=; b=cTOxzzfORyfjni60Xi8jw7159SqZqNvuZFqcfX39EIcm7s7n6hK5NKFWocr7jJu44EICRE KjNnCuLIsQtjsh+SQpBl9Cszfn8a5Xf4n8bvIKF5fs/8I3bm547ppEm3ScSb8sAOa9pPFW 6zeHAnwLqgnqSWhSH8LACN/HTB7jovzz/ak0BsQkOAQMZU6oYjv9vfHjnMirAqMl1Yy2AK OY6SV+7Ddl48aoWcekUmfYRG/8sTjLhiP/K0/ttXYsDtHLPKQ2TFEQU8ZiLi7OJmMxmmep KaJQnq+i3065hQTsIr4cQ5xLo+OTLOEdQXSjkpDhSxfiFK4BFwjNOf4wb6783Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760557745; a=rsa-sha256; cv=none; b=mRK7K0UwdibyR13oNMEDkFFid0Hy1O8gFeLZzQmZuH9uAoRA3qHoI1KH7L6ic4fO6tJLc/ IWTL+CJpvZSth7iTJ2iXK6uiLOV0dEwOC+SRspuA5u24GAJN8XK8IeEPqAr97vJDjjHmfN J26GOdhqwTJr7PG3eVOKpGXnDizwq7BdEBfUKpmldypXaGtq3hthuYJGQz66Hb/auKhyjB aeEI76EnTkywvf+x3mNF9jQ7EHPg5iE3FcfxJlTIIydSqUk8jTHaRVGyVr0SwLZ7+PBlP5 ygIYOrtI1BVX2qL3ck77vGdeZPmJrOHGgaUjh1O8Y+eQfl/Ri2w07p3MHBuqbw== 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 4cn1qj4W5tzsYX; Wed, 15 Oct 2025 19:49: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 59FJn5uC069452; Wed, 15 Oct 2025 19:49:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FJn5Pq069449; Wed, 15 Oct 2025 19:49:05 GMT (envelope-from git) Date: Wed, 15 Oct 2025 19:49:05 GMT Message-Id: <202510151949.59FJn5Pq069449@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: c307343246b9 - releng/15.0 - bsdinstall: Tweak pkgbase/dist set labels List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: c307343246b98dc6cb3b4b8fdf4ee19100176372 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=c307343246b98dc6cb3b4b8fdf4ee19100176372 commit c307343246b98dc6cb3b4b8fdf4ee19100176372 Author: Ed Maste AuthorDate: 2025-10-09 17:01:36 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:19 +0000 bsdinstall: Tweak pkgbase/dist set labels Have the button labels refer to the artifact type directly (distribution sets / packages), and use "Tech Preview" as packaged base is no longer experimental. Approved by: re (cperciva) Reviewed by: ivy, cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52999 (cherry picked from commit abd9424590ba37ac10e92723ad6428f0448024c1) (cherry picked from commit dbd1e32296437c9b2e3fb73400e59fda4adc3e64) --- usr.sbin/bsdinstall/scripts/auto | 4 ++-- usr.sbin/bsdinstall/scripts/jail | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto index 61d52065af2a..8058b1a41dbf 100755 --- a/usr.sbin/bsdinstall/scripts/auto +++ b/usr.sbin/bsdinstall/scripts/auto @@ -209,9 +209,9 @@ if [ ! -f $BSDINSTALL_DISTDIR/MANIFEST ]; then PKGBASE=yes else bsddialog --backtitle "$OSNAME Installer" --title "Select Installation Type" \ - --yes-label "Traditional" --no-label "Packages (Experimental)" --yesno \ + --yes-label "Distribution Sets" --no-label "Packages (Tech Preview)" --yesno \ $PKGBASE_DEFAULT_BUTTON \ - "Would you like to install the base system using traditional distribution sets or packages (experimental)?" 0 0 + "Would you like to install the base system using traditional distribution sets or packages (technology preview)?" 0 0 if [ $? -eq 1 ]; then PKGBASE=yes fi diff --git a/usr.sbin/bsdinstall/scripts/jail b/usr.sbin/bsdinstall/scripts/jail index f2c7ef2b37de..3b1b2ee98fff 100755 --- a/usr.sbin/bsdinstall/scripts/jail +++ b/usr.sbin/bsdinstall/scripts/jail @@ -175,8 +175,8 @@ fi if [ ! "$nonInteractive" == "YES" ]; then bsddialog --backtitle "$OSNAME Installer" --title "Select Installation Type" \ - --yes-label "Traditional" --no-label "Packages (Experimental)" --yesno \ - "Would you like to install the base system using traditional distribution sets or packages (experimental)?" 0 0 + --yes-label "Distribution Sets" --no-label "Packages (Tech Preview)" --yesno \ + "Would you like to install the base system using traditional distribution sets or packages (technology preview)?" 0 0 if [ $? -eq 1 ]; then PKGBASE=yes fi From nobody Wed Oct 15 19:49:06 2025 X-Original-To: dev-commits-src-branches@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 4cn1qk75V1z6Ctht; Wed, 15 Oct 2025 19:49: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn1qk5z6Fz4N8Y; Wed, 15 Oct 2025 19:49:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557746; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hokx6ajiSuNnymlcBmjtu06uhyyeCCTKtvRNLNdm+f8=; b=g85vDBFDrCYLfUYzp/t/PIomWRJJV/5VlHeSZqKtllf32GDEcdSd7k4px0/GWV+ygMhga9 WJoXlBx8escCA4Ddlp5Thcd4Z1zuvu5nkAy+PTZFz79abAXW3hmutbjG4x0OPmGn7W3QRN YpFksY1ULdfqz/+6yaqYGbMtxGP7Ta0lAi5lEO75EGumwofRvvYKy9IXIaG2laYZVisueC YcHZYtxI+7PiTIBm3QrCCTBom1p4G/p9BlNfKorIAjc9qUBCUXlA0AdyDKcTcnDvVYjBpW +thv8JIAEev2CUi95W+HXVj+f7wgrkHtKiaeI71CAdAeiJG5k7ITz96m/1ui+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557746; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hokx6ajiSuNnymlcBmjtu06uhyyeCCTKtvRNLNdm+f8=; b=k9T3mrIjRJV3E6LarCdScbv7Da+ctcB+vfRgH4PMJLWp1ij2p9PHAFyx739Lc9+FCm3jw4 SvNr4CQLNW3poGAk+6gcG46OXuOfRhJaUVOSLk7cXtDga8kwxFDKCerAmQSlZ2zq0dSJpN IjugSG63cFPIfo4OiQvCXx2ApFQwIyvy5sVajCFd5GPzK6LDb/49A7n3sQEhdO2EjHiqbd OrhQRPo1+jO0Deyxmpj4qeeQ43Mue1w2FbT767WavpEAHvZnlU1GBGmeWFEdeGQ3tMOzx8 LNvSb1gG8LYN5rUuyXRjmUMVsMLZg5bxVP1oyLvp1Yyw86AyNN+ZP3M502SuyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760557746; a=rsa-sha256; cv=none; b=faWAEIppTT33O+MMw0HSn3BZqI5vQYljJ/VDrqCM3NVK6olxSUpXeysiL2ftMAVzcPzY3c j4mL/SYh1MKfMBppAQ3Yw6Dgawg/LkGvsMaunyorEkZMMDGjuBvXf18LREd7rFBPKz6MZn xv+1jXgCqOkyNS+p3BUPmiJyeM/Nm/naHYwc4KZpVNWl7CJqLK8RFwsXPGbwPYGyMRbebt GnKlr3FAin7dz7Umq+drkgOTwY2gsrMe14MCl5ceAIoGEK8qC87K8ZAWLwzDL3jShajJCk 74cCKrlQUbjrlqh48uM5KSzma1N/hasws4PfJ2usEc2KjJfqk+nAapNm8JEEDw== 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 4cn1qk5Slyzslh; Wed, 15 Oct 2025 19:49: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 59FJn6Lu069485; Wed, 15 Oct 2025 19:49:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FJn654069482; Wed, 15 Oct 2025 19:49:06 GMT (envelope-from git) Date: Wed, 15 Oct 2025 19:49:06 GMT Message-Id: <202510151949.59FJn654069482@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: 7ae8ea82d769 - releng/15.0 - Cirrus-CI: Bump to FreeBSD 14.3 image List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 7ae8ea82d76984e880759900f0de68be1d90b506 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=7ae8ea82d76984e880759900f0de68be1d90b506 commit 7ae8ea82d76984e880759900f0de68be1d90b506 Author: Ed Maste AuthorDate: 2025-10-04 13:10:09 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:29 +0000 Cirrus-CI: Bump to FreeBSD 14.3 image Approved by: re (cperciva) Sponsored by: The FreeBSD Foundation (cherry picked from commit cca9295dd6adc4245fbeeefbe05c13c52d089bd7) (cherry picked from commit 608043e6d029a00170a0a80d52fa9afdf209c692) --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 9ed08d750e2f..082d2d98dc7f 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -4,7 +4,7 @@ compute_engine_instance: # gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images platform: freebsd image_project: freebsd-org-cloud-dev - image: freebsd-14-2-release-amd64-ufs + image: freebsd-14-3-release-amd64-ufs cpu: 8 memory: 8G disk: 40 From nobody Wed Oct 15 19:49:07 2025 X-Original-To: dev-commits-src-branches@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 4cn1qm5jTgz6Ctq8; Wed, 15 Oct 2025 19:49: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn1qm010mz4N2V; Wed, 15 Oct 2025 19:49:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557748; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=He2HLKaXW6lhZAN6dpqXLPtY7qiOe3td/GL1ELy1wAM=; b=shMSvDSr7lqwaNi7hHuNpEa+XgvR2JjXFJokxAOdw4u1SYG/xJWgg7md9GnUYBojnnntqi AFEmKCngb2HhiVJGSsHWJv24X0MyfReConaDDVQFNyNvRjs4iQ0kfRwteQtuS/MEWt38TP FV9FOLdtCG6iW4JFdHROgOkU/oFORsPWExhrlsYm1W7FAY+6y/C73mWQrRBD/3dVKYgV2h VyO0NFbbznGPfbe28LQFnIgvCOuJBLpdZ17FGmHcdYvSLbujAD1GVVfP8CM2j8Czaja2UO V9yjiMX8/86se/PbeScDKwI5rlRMQMAP0mMv49VYavBfeaNm10YXJyo/tKKAAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557748; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=He2HLKaXW6lhZAN6dpqXLPtY7qiOe3td/GL1ELy1wAM=; b=Mzjq4jRn7anKlrsbvFHf0a3DDfBn00kCm80ySGO/5Ifp8U46jl7kldHV23VXrY+HFMWBFd m/4KbwiCLaJNu9v4kQgo82kQfk+Es6+BY8UPLUFUlUvzf5oe/BWpPfBN/wE6N07/ykRtr5 R4ubR3jSauGfME5YBOfxaccuMJ36612fC7YvU+C2zd3IyeFpz0uRRSKtW5us4DLqOAM9Gs coW1zoXqNxNmlyWjsj7ooHTjq9M14drrpFJhj8L+AWO42xpjW5qK57UAzMg8euXcYSmQv4 yERdUa+lxRnm+EPqIDRjFnEbUatAjyDMKNuEhIEZVnzpQ9S//su8odQ3V1egDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760557748; a=rsa-sha256; cv=none; b=Ldya1eX5og+vCvH7J3HAzBJrOR66Bb5GV/dtPrlc55RaWIaAeD/fKrcgWoxbRcrYaxlPax OmKD6dVHVjamHb6YBpNgv33CR9t0X6JLN5cPbG7Eq9IvRU10cHvf9Wufhandjuav4Lm6qU 7wKbC6wReHJn0VI0c0393xn/fhZyGZc30ihJ3RInhKUTfVTWs1jBXn+YTAsikP8tROdnXE jeWWX7XHbGBsB2EbGm+zTwWkAEuXrmJK+lAsGmvPEA+TDPklCwPrXIEWAem4lstIUenZoD R/bOL6z9OMYvr7EOy7pl8iS+lCv6SO8+S+3QoDOBO7PNEIxysFFLra2Bfk+qXw== 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 4cn1ql6jbkzsYY; Wed, 15 Oct 2025 19:49: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 59FJn7Vj069518; Wed, 15 Oct 2025 19:49:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FJn72Q069515; Wed, 15 Oct 2025 19:49:07 GMT (envelope-from git) Date: Wed, 15 Oct 2025 19:49:07 GMT Message-Id: <202510151949.59FJn72Q069515@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: 14d97bd64a4a - releng/15.0 - ncurses: Add an ncurses-lib package List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 14d97bd64a4a240d5a12337d22431bba525bc0df Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=14d97bd64a4a240d5a12337d22431bba525bc0df commit 14d97bd64a4a240d5a12337d22431bba525bc0df Author: Lexi Winter AuthorDate: 2025-10-15 12:28:43 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:32 +0000 ncurses: Add an ncurses-lib package Set LIB_PACKAGE= in lib/ncurses/Makefile.inc so the ncurses libraries go into the ncurses-lib subpackage rather than the base package. This means applications that depend on ncurses can be installed without needing to install the various utilities and manpages. This removes a dependency from runtime to ncurses (it now depends on ncurses-lib instead). Approved by: re (cperciva) MFC after: 3 seconds Reviewed by: kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53060 (cherry picked from commit bde703e8b6ab3acc73bbb20f1ebe26221f33e9f1) (cherry picked from commit 9dab0e61a921b5f3c4db2e0e2b440aeb6a803e42) --- lib/ncurses/Makefile.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/ncurses/Makefile.inc b/lib/ncurses/Makefile.inc index eea49908474c..e14867696834 100644 --- a/lib/ncurses/Makefile.inc +++ b/lib/ncurses/Makefile.inc @@ -1,6 +1,7 @@ # This is to include src/lib/Makefile.inc PACKAGE?= ncurses +LIB_PACKAGE= WARNS?= 3 .include "../Makefile.inc" From nobody Wed Oct 15 19:49:08 2025 X-Original-To: dev-commits-src-branches@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 4cn1qp0n11z6CtnD; Wed, 15 Oct 2025 19:49:10 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn1qn13Pmz4N2s; Wed, 15 Oct 2025 19:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557749; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jvnqp1VT0uH7dgGUXqHlE3QcgMaqX4dszyoecM7CBJM=; b=gslhCcH5P/5k9mtLUrG/PbIBlYvUGoqNr5SX7GzQXdw/NspilRrrgVCcQGDdl6ubvPElWk n9T6olnkInbFM7A3Z7dgL7Dlfl8/W6TDOWPCzeQG3+qr+xAZWc8a5KI0MSu884VhkSu4Lb gqHm0iXV+RCsMW1D9wXh5tMIMt/dTWa9g7YQg/2XgQTLzpCIhwDrTukWcNoQhy8Z0jaUHT 0bkiehuL99gYk8l7Zrvqnd4sZK9HUCY/pCdjHjo/VhWM13oOI9Gc+sQ27ncpuZKJ0mEPjn e0UZ3gQkR5U9ILTkbWCSvtwwBXIyFO1datQeWKfJO5sH+sfMQxm9yZM2opKzVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557749; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jvnqp1VT0uH7dgGUXqHlE3QcgMaqX4dszyoecM7CBJM=; b=uuiCMhzYyTuYufVhEBSvPWCMM4G7wDWMUlfHhxByA0qoP5v9Zb76/aUcX/xodqT7jfBlHs cT3qOrAGnpwlLX3ZVpCo+un6d6eyA8y38246TCrohww+1jyWssiyI/B53AyCppfZ96ZyL4 ub0aDEkkG8ft1PHX49I4JjPSLoYB2GAS3Z4k+lZRvk6UUHwNneywHMnxoGi1/8/hy8uO99 Nm6EJ4HRn+fijOjPpYfrxeMpAZItnI8CymULoQvXeLUqFIPTX10eLCFXudhO15fUYIP7+U 08hsltBoMI0UwTWsrSjhhbEnxgkmUK0PvoKwhM7q2yV7G3/wiXOMhOrtW9NCow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760557749; a=rsa-sha256; cv=none; b=NJpkZjM1L2NRau7Et4Hx4E7/zEmaTpBt9/q2GSGjDBNNaKVGWNxNd4wRMrM3tXOdy8wxJ5 h/ulmvo7QmHCQfDpXS7hAMcM4BZStnWJwodz8wx/l3sgDB6zesfeWNIb286l4k8QZ4xBBk UyLuM5E3qoUIcnp2raJ0kfguDjJrwW4xSmcvr+2yxTbXMTaQPL7B0mfWqVcVFpDyS4f+ge GKLE6sF7ozD681V1GrPHx9Xf6dWrBD5380YzOlZhCUKdUciNVBX4rezCbiik5ukDdLnrzU DUydsXN44vR8vlBwh+uDBElPGv1pW+EFWNILr8APhFrjX7pV+eG7Yylr6Ajbig== 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 4cn1qn0fWdzsKy; Wed, 15 Oct 2025 19:49: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 59FJn8GU069553; Wed, 15 Oct 2025 19:49:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FJn87c069549; Wed, 15 Oct 2025 19:49:08 GMT (envelope-from git) Date: Wed, 15 Oct 2025 19:49:08 GMT Message-Id: <202510151949.59FJn87c069549@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: d8897097edc5 - releng/15.0 - packages: Rename unbound to local-unbound List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: d8897097edc5e3d2d76a3066e49e422f0eab0c9f Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=d8897097edc5e3d2d76a3066e49e422f0eab0c9f commit d8897097edc5e3d2d76a3066e49e422f0eab0c9f Author: Lexi Winter AuthorDate: 2025-10-15 11:00:35 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:36 +0000 packages: Rename unbound to local-unbound This more accurately reflects its purpose, and its contents, since everything in the package is prefixed with "local-". While here, add a message on upgrade about regenerating the config. Approved by: re (cperciva) MFC after: 3 seconds Requested by: des Reviewed by: des Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53056 (cherry picked from commit bf84861460f9287fe9cf66b2cd22fefe8e242a28) (cherry picked from commit f1b0e00d56a8b01be86ff41a05cb6916727cee8a) --- UPDATING | 8 +++++++ etc/Makefile | 2 +- etc/mtree/BSD.var.dist | 4 ++-- lib/libunbound/Makefile | 6 ++--- libexec/rc/rc.d/Makefile | 2 +- .../ucl/{unbound-all.ucl => local-unbound-all.ucl} | 0 release/packages/ucl/local-unbound.ucl | 27 ++++++++++++++++++++++ usr.sbin/unbound/Makefile.inc | 2 +- 8 files changed, 43 insertions(+), 8 deletions(-) diff --git a/UPDATING b/UPDATING index 4b14159ceb4a..d18aaeb2fd46 100644 --- a/UPDATING +++ b/UPDATING @@ -12,6 +12,14 @@ Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before updating system packages and/or ports. +20251015: + The "FreeBSD-unbound" package is renamed to "FreeBSD-local-unbound". + If you have set-optional or set-base installed, the new package will + be installed automatically, otherwise you should manually install the + new package and remove the old one. + + This change only affects pkgbase users. + 20251001: The deprecated ftpd(8) has been removed. Users who still need ftpd can install the ftp/freebsd-ftpd port. pkgbase users should remove diff --git a/etc/Makefile b/etc/Makefile index 93d4b489ec7d..bda70b8af391 100644 --- a/etc/Makefile +++ b/etc/Makefile @@ -68,7 +68,7 @@ distribution: # install the /etc/unbound symlink, otherwise, don't overwrite the user's # existing symlink. if [ "${NO_ROOT:Dtrue}" = true -o ! -e ${DESTDIR}/etc/unbound ]; then \ - ${INSTALL_SYMLINK} -Tpackage=unbound ../var/unbound \ + ${INSTALL_SYMLINK} -Tpackage=local-unbound ../var/unbound \ ${DESTDIR}/etc/unbound; \ fi .endif diff --git a/etc/mtree/BSD.var.dist b/etc/mtree/BSD.var.dist index b3372196f5f9..b55c0150848e 100644 --- a/etc/mtree/BSD.var.dist +++ b/etc/mtree/BSD.var.dist @@ -104,8 +104,8 @@ vi.recover mode=01777 .. .. - unbound uname=unbound gname=unbound mode=0755 tags=package=unbound - conf.d uname=unbound gname=unbound mode=0755 tags=package=unbound + unbound uname=unbound gname=unbound mode=0755 tags=package=local-unbound + conf.d uname=unbound gname=unbound mode=0755 tags=package=local-unbound .. .. yp diff --git a/lib/libunbound/Makefile b/lib/libunbound/Makefile index e2cd25ea8b34..1a31e50e6416 100644 --- a/lib/libunbound/Makefile +++ b/lib/libunbound/Makefile @@ -1,4 +1,3 @@ -PACKAGE=lib${LIB} # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound @@ -6,9 +5,10 @@ UNBOUNDDIR= ${SRCTOP}/contrib/unbound # Hold my beer and watch this .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/cachedb ${UNBOUNDDIR}/dns64 ${UNBOUNDDIR}/iterator ${UNBOUNDDIR}/sldns ${UNBOUNDDIR}/libunbound ${UNBOUNDDIR}/services ${UNBOUNDDIR}/services/cache ${UNBOUNDDIR}/util ${UNBOUNDDIR}/util/data ${UNBOUNDDIR}/respip ${UNBOUNDDIR}/util/storage ${UNBOUNDDIR}/validator -LIB= unbound +PACKAGE= local-unbound + +LIB= unbound PRIVATELIB= -PACKAGE= unbound CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR} -I${.CURDIR} CFLAGS+= -DOPENSSL_API_COMPAT=0x10100000L diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 093da31ed787..3b7f45e8f101 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -294,7 +294,7 @@ SSHPACKAGE= ssh SSH= sshd CONFGROUPS.${MK_UNBOUND}+= UNBOUND -UNBOUNDPACKAGE= unbound +UNBOUNDPACKAGE= local-unbound UNBOUND= local_unbound CONFGROUPS.${MK_VI}+= VI diff --git a/release/packages/ucl/unbound-all.ucl b/release/packages/ucl/local-unbound-all.ucl similarity index 100% rename from release/packages/ucl/unbound-all.ucl rename to release/packages/ucl/local-unbound-all.ucl diff --git a/release/packages/ucl/local-unbound.ucl b/release/packages/ucl/local-unbound.ucl new file mode 100644 index 000000000000..0f1c77a0d0ee --- /dev/null +++ b/release/packages/ucl/local-unbound.ucl @@ -0,0 +1,27 @@ +/* + * SPDX-License-Identifier: ISC + * + * Copyright (c) 2025 Lexi Winter + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +messages = [ + { + type: upgrade + message: < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 138e36514fe8 - releng/15.0 - qat: enable qat driver for 402xx device List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 138e36514fe8bd78e56c249e080a9499bc3fddef Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=138e36514fe8bd78e56c249e080a9499bc3fddef commit 138e36514fe8bd78e56c249e080a9499bc3fddef Author: Hareshx Sankar Raj AuthorDate: 2025-09-04 18:21:36 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:40 +0000 qat: enable qat driver for 402xx device Enabled qat driver support for 402xx device with ID 0x4944/0x4945. This is an additional device supported under the existing qat_4xxx driver. Firmwares specific to the 402xx device are added. Signed-off-by: Hareshx Sankar Raj Approved by: re (cperciva) Relnotes: yes Sponsored by: Intel Corporation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D52488 (cherry picked from commit 7fbd362c091b2b384d14c3ed5af9234bb2eff9c2) (cherry picked from commit 88c0ce38bc18acaf50188eda402384a0cb93890d) --- sys/contrib/dev/qat/qat_402xx.bin | Bin 0 -> 665360 bytes sys/contrib/dev/qat/qat_402xx_mmp.bin | Bin 0 -> 150084 bytes sys/dev/qat/include/common/adf_accel_devices.h | 4 ++ sys/dev/qat/qat_api/include/icp_sal_versions.h | 2 +- sys/dev/qat/qat_common/qat_uclo.c | 1 + sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c | 58 +++++++++++++++++++------ sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h | 6 +++ sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c | 15 ++++--- sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c | 15 ++++--- sys/modules/qatfw/qat_4xxx/Makefile | 5 ++- 10 files changed, 78 insertions(+), 28 deletions(-) diff --git a/sys/contrib/dev/qat/qat_402xx.bin b/sys/contrib/dev/qat/qat_402xx.bin new file mode 100644 index 000000000000..74151547edce Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx.bin differ diff --git a/sys/contrib/dev/qat/qat_402xx_mmp.bin b/sys/contrib/dev/qat/qat_402xx_mmp.bin new file mode 100644 index 000000000000..6404eb009d2f Binary files /dev/null and b/sys/contrib/dev/qat/qat_402xx_mmp.bin differ diff --git a/sys/dev/qat/include/common/adf_accel_devices.h b/sys/dev/qat/include/common/adf_accel_devices.h index c09aee8ea4bd..eeffc6a9132c 100644 --- a/sys/dev/qat/include/common/adf_accel_devices.h +++ b/sys/dev/qat/include/common/adf_accel_devices.h @@ -39,12 +39,16 @@ #define ADF_4XXXIOV_PCI_DEVICE_ID 0x4941 #define ADF_401XX_PCI_DEVICE_ID 0x4942 #define ADF_401XXIOV_PCI_DEVICE_ID 0x4943 +#define ADF_402XX_PCI_DEVICE_ID 0x4944 +#define ADF_402XXIOV_PCI_DEVICE_ID 0x4945 #define IS_QAT_GEN3(ID) ({ (ID == ADF_C4XXX_PCI_DEVICE_ID); }) static inline bool IS_QAT_GEN4(const unsigned int id) { return (id == ADF_4XXX_PCI_DEVICE_ID || id == ADF_401XX_PCI_DEVICE_ID || + id == ADF_402XX_PCI_DEVICE_ID || + id == ADF_402XXIOV_PCI_DEVICE_ID || id == ADF_4XXXIOV_PCI_DEVICE_ID || id == ADF_401XXIOV_PCI_DEVICE_ID); } diff --git a/sys/dev/qat/qat_api/include/icp_sal_versions.h b/sys/dev/qat/qat_api/include/icp_sal_versions.h index 03bcef4fcbbb..0eb227ade09c 100644 --- a/sys/dev/qat/qat_api/include/icp_sal_versions.h +++ b/sys/dev/qat/qat_api/include/icp_sal_versions.h @@ -26,7 +26,7 @@ /* Part name and number of the accelerator device */ #define SAL_INFO2_DRIVER_SW_VERSION_MAJ_NUMBER 3 -#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 15 +#define SAL_INFO2_DRIVER_SW_VERSION_MIN_NUMBER 16 #define SAL_INFO2_DRIVER_SW_VERSION_PATCH_NUMBER 0 /** diff --git a/sys/dev/qat/qat_common/qat_uclo.c b/sys/dev/qat/qat_common/qat_uclo.c index 54e8e8eb7421..b17020286d24 100644 --- a/sys/dev/qat/qat_common/qat_uclo.c +++ b/sys/dev/qat/qat_common/qat_uclo.c @@ -892,6 +892,7 @@ qat_uclo_get_dev_type(struct icp_qat_fw_loader_handle *handle) return ICP_QAT_AC_C4XXX_DEV_TYPE; case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: return ICP_QAT_AC_4XXX_A_DEV_TYPE; default: pr_err("QAT: unsupported device 0x%x\n", diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c index d730efd5952b..49e1e1859e78 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.c @@ -536,8 +536,8 @@ adf_exit_accel_units(struct adf_accel_dev *accel_dev) } static const char * -get_obj_name(struct adf_accel_dev *accel_dev, - enum adf_accel_unit_services service) +get_obj_name_4xxx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) { switch (service) { case ADF_ACCEL_ASYM: @@ -553,6 +553,24 @@ get_obj_name(struct adf_accel_dev *accel_dev, } } +static const char * +get_obj_name_402xx(struct adf_accel_dev *accel_dev, + enum adf_accel_unit_services service) +{ + switch (service) { + case ADF_ACCEL_ASYM: + return ADF_402XX_ASYM_OBJ; + case ADF_ACCEL_CRYPTO: + return ADF_402XX_SYM_OBJ; + case ADF_ACCEL_COMPRESSION: + return ADF_402XX_DC_OBJ; + case ADF_ACCEL_ADMIN: + return ADF_402XX_ADMIN_OBJ; + default: + return NULL; + } +} + static uint32_t get_objs_num(struct adf_accel_dev *accel_dev) { @@ -982,8 +1000,23 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->clock_frequency = ADF_4XXX_AE_FREQ; hw_data->get_sku = get_sku; hw_data->heartbeat_ctr_num = ADF_NUM_HB_CNT_PER_AE; - hw_data->fw_name = ADF_4XXX_FW; - hw_data->fw_mmp_name = ADF_4XXX_MMP; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_402XX_FW; + hw_data->fw_mmp_name = ADF_402XX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + break; + case ADF_401XX_PCI_DEVICE_ID: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; + break; + + default: + hw_data->fw_name = ADF_4XXX_FW; + hw_data->fw_mmp_name = ADF_4XXX_MMP; + hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; + } hw_data->init_admin_comms = adf_init_admin_comms; hw_data->exit_admin_comms = adf_exit_admin_comms; hw_data->send_admin_init = adf_4xxx_send_admin_init; @@ -1002,7 +1035,13 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->get_ring_svc_map_data = get_ring_svc_map_data; hw_data->admin_ae_mask = ADF_4XXX_ADMIN_AE_MASK; hw_data->get_objs_num = get_objs_num; - hw_data->get_obj_name = get_obj_name; + switch (id) { + case ADF_402XX_PCI_DEVICE_ID: + hw_data->get_obj_name = get_obj_name_402xx; + break; + default: + hw_data->get_obj_name = get_obj_name_4xxx; + } hw_data->get_obj_cfg_ae_mask = get_obj_cfg_ae_mask; hw_data->get_service_type = adf_4xxx_get_service_type; hw_data->set_msix_rttable = set_msix_default_rttable; @@ -1022,15 +1061,6 @@ adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data, u32 id) hw_data->query_storage_cap = 1; hw_data->ring_pair_reset = adf_gen4_ring_pair_reset; - switch (id) { - case ADF_401XX_PCI_DEVICE_ID: - hw_data->asym_ae_active_thd_mask = DEFAULT_401XX_ASYM_AE_MASK; - break; - case ADF_4XXX_PCI_DEVICE_ID: - default: - hw_data->asym_ae_active_thd_mask = DEFAULT_4XXX_ASYM_AE_MASK; - } - adf_gen4_init_hw_csr_info(&hw_data->csr_info); adf_gen4_init_pf_pfvf_ops(&hw_data->csr_info.pfvf_ops); } diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h index c35ebbcadcd7..fa7249dca596 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_4xxx_hw_data.h @@ -87,6 +87,12 @@ #define ADF_4XXX_SYM_OBJ "qat_4xxx_sym.bin" #define ADF_4XXX_ASYM_OBJ "qat_4xxx_asym.bin" #define ADF_4XXX_ADMIN_OBJ "qat_4xxx_admin.bin" +#define ADF_402XX_FW "qat_402xx_fw" +#define ADF_402XX_MMP "qat_402xx_mmp_fw" +#define ADF_402XX_DC_OBJ "qat_402xx_dc.bin" +#define ADF_402XX_SYM_OBJ "qat_402xx_sym.bin" +#define ADF_402XX_ASYM_OBJ "qat_402xx_asym.bin" +#define ADF_402XX_ADMIN_OBJ "qat_402xx_admin.bin" /* Only 3 types of images can be loaded including the admin image */ #define ADF_4XXX_MAX_OBJ 3 diff --git a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c index cb534dd03b86..f9ad39fa45f0 100644 --- a/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXX, "qat_4xxx", "qat_4xxx"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XX_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XX_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -135,6 +137,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXX_PCI_DEVICE_ID: case ADF_401XX_PCI_DEVICE_ID: + case ADF_402XX_PCI_DEVICE_ID: adf_clean_hw_data_4xxx(accel_dev->hw_device); break; default: diff --git a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c index 2bbccb4d6b17..dbe40835ccbf 100644 --- a/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c +++ b/sys/dev/qat/qat_hw/qat_4xxxvf/adf_drv.c @@ -22,12 +22,14 @@ static MALLOC_DEFINE(M_QAT_4XXXVF, "qat_4xxxvf", "qat_4xxxvf"); PCI_VENDOR_ID_INTEL, device_id \ } -static const struct pci_device_id adf_pci_tbl[] = - { ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), - ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), - { - 0, - } }; +static const struct pci_device_id adf_pci_tbl[] = { + ADF_SYSTEM_DEVICE(ADF_4XXXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_401XXIOV_PCI_DEVICE_ID), + ADF_SYSTEM_DEVICE(ADF_402XXIOV_PCI_DEVICE_ID), + { + 0, + } +}; static int adf_probe(device_t dev) @@ -76,6 +78,7 @@ adf_cleanup_accel(struct adf_accel_dev *accel_dev) switch (pci_get_device(accel_pci_dev->pci_dev)) { case ADF_4XXXIOV_PCI_DEVICE_ID: case ADF_401XXIOV_PCI_DEVICE_ID: + case ADF_402XXIOV_PCI_DEVICE_ID: adf_clean_hw_data_4xxxiov(accel_dev->hw_device); break; default: diff --git a/sys/modules/qatfw/qat_4xxx/Makefile b/sys/modules/qatfw/qat_4xxx/Makefile index fb7171bcaf45..f6f19d6cbe32 100644 --- a/sys/modules/qatfw/qat_4xxx/Makefile +++ b/sys/modules/qatfw/qat_4xxx/Makefile @@ -4,6 +4,9 @@ KMOD= qat_4xxx_fw -FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 +FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 \ + qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 \ + qat_402xx.bin:qat_402xx_fw:111 \ + qat_402xx_mmp.bin:qat_402xx_mmp_fw:111 .include From nobody Wed Oct 15 19:49:11 2025 X-Original-To: dev-commits-src-branches@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 4cn1qq5ZsQz6CtYM; Wed, 15 Oct 2025 19:49: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn1qq33cfz4NLs; Wed, 15 Oct 2025 19:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557751; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0iq/0lfyFR/jXF+FUvLSv+W34MexRHrBC0n6cFRM7ak=; b=ntkZsExV47NCNwB/I8OVL0kG/41QS9k7J5AbzckgPXZ5g95/PY+O1d0JXNf607k645C0QR Pu6vkSz/f75CYtWd3DIX3uPphJk1nNF2HtArB1dqMawNqP0wBePHuSKR3JrRHxvnEo+a4Q S3QL+RFl8PTQjHBKFQ6gYG4Nsp3SQ/6d1x8F/NmOVrThxyY8PbIsbPz5T9UTY3Iae32e+n pFcXHMiQRBx15kMgQIDzEDTBfXFPqJV7dp2c37AlMppyh4GWY48bzEPQek2xNsWpU1Tg89 3sJWL+3arFpybgmu+HU8Lsr7Xqq0KCaXcxkjwzblVqxYezPd5UTPJ/lX0F8ZlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760557751; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0iq/0lfyFR/jXF+FUvLSv+W34MexRHrBC0n6cFRM7ak=; b=cckAJYh/0f0sb7yQSpUzfS5nzGp5q5qI8/jQ6+cLj21Xt5hUtxgvYgfv+3VK3nMdRPLyNL KfITlMNzm4/ITnrJSEh3a9SUbtZTEJRQhVnNB2mmjgZuq2NcAAhIrFRV4jb+w7zSCEV5CM yfqGQQpZhhDk7zf5J9C6ItRD3+G/5VX2bdFUrWSojilKd/kDXUUkGLyEYSuihn1iRXFCBq y5pjSo73OXlDkajjoVUgjPVxXeY4XFDDds8cG6wx1fAuxIfIE0amIZa+RkciAHzJd7ugqp bOpZAKESWEFgNQbwjlW3oL9Bk5hYt8aT7HGtJActkgA5c6ctgu3dDEg7zr34fA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760557751; a=rsa-sha256; cv=none; b=bhkpimQoBTcQVpHZlAcNDYfBN37ejkpWsqzE9rQxAPeUwfgt7I/evW//P+N3pltNB/rWSy +kq0+NeEf0L/VbI3oPyweHmyILBJjP6AsHBkVc0QiSqBzy+Kn9SeP7mxNCB98qpwMRJarT 7cQr7zNI+djf6ivAYbHL1BglDqRJNQ2xYXXX8KFp82u+NaDqxA6ag1UgX+zz02uyouJWqF dsMqs8ovzNNPZP4zVThPkN/s4JXANnY885itGEb0Z1jFCwm7GRC/QoveTMkYs/H1nOXPSU l2DYVSZXd4YT1XL8dUA8n69gyU+2sszMGg4avCEfjfBjfLVAnAyrkEosEvSTAA== 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 4cn1qq2D26zsVw; Wed, 15 Oct 2025 19:49: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 59FJnBtX069624; Wed, 15 Oct 2025 19:49:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59FJnBrJ069621; Wed, 15 Oct 2025 19:49:11 GMT (envelope-from git) Date: Wed, 15 Oct 2025 19:49:11 GMT Message-Id: <202510151949.59FJnBrJ069621@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: 24546cb506a0 - releng/15.0 - rc: Update dependencies for zpool scripts List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 24546cb506a0b54b548dd2cf1dfe1e7e029ec146 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=24546cb506a0b54b548dd2cf1dfe1e7e029ec146 commit 24546cb506a0b54b548dd2cf1dfe1e7e029ec146 Author: Mark Johnston AuthorDate: 2025-10-08 12:50:54 +0000 Commit: Colin Percival CommitDate: 2025-10-15 19:23:44 +0000 rc: Update dependencies for zpool scripts After commit 900bc0206348, zpool depends on mountcritlocal. zpoolreguid and zpoolupgrade depend on zpool and want to run before mountcritcycle, so we have a pair of cycles. Update zpoolreguid and zpoolupgrade to avoid this. Approved by: re (cperciva) Reviewed by: des MFC after: 3 days Fixes: 900bc0206348 ("rc.d/zpool: change mountcritlocal dep from BEFORE to REQUIRE") Differential Revision: https://reviews.freebsd.org/D52953 (cherry picked from commit ae6db60ff56de5b93de9f6fee6116cbc2d4b498e) (cherry picked from commit 8e957b78e6846c57e70d9c302c027fa02f13bb14) --- libexec/rc/rc.d/zpoolreguid | 2 +- libexec/rc/rc.d/zpoolupgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/zpoolreguid b/libexec/rc/rc.d/zpoolreguid index f94630d9283f..c19f52d3d702 100755 --- a/libexec/rc/rc.d/zpoolreguid +++ b/libexec/rc/rc.d/zpoolreguid @@ -2,7 +2,7 @@ # PROVIDE: zpoolreguid # REQUIRE: zpool -# BEFORE: mountcritlocal +# BEFORE: FILESYSTEMS # KEYWORD: firstboot nojail . /etc/rc.subr diff --git a/libexec/rc/rc.d/zpoolupgrade b/libexec/rc/rc.d/zpoolupgrade index 1435cba7199c..5e623a9c2bf0 100755 --- a/libexec/rc/rc.d/zpoolupgrade +++ b/libexec/rc/rc.d/zpoolupgrade @@ -2,7 +2,7 @@ # PROVIDE: zpoolupgrade # REQUIRE: zpool -# BEFORE: mountcritlocal +# BEFORE: FILESYSTEMS # KEYWORD: firstboot nojail . /etc/rc.subr From nobody Thu Oct 16 00:35:04 2025 X-Original-To: dev-commits-src-branches@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 4cn89h3nXkz6C3R5; Thu, 16 Oct 2025 00:35: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cn89h3093z3dmB; Thu, 16 Oct 2025 00:35:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760574904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9cORiDZr8erHhm9ir3cbz2HFhZhKItgkRcWdcVX+qDk=; b=nbuysDJDYKZHfcXb1qu39cR4u15TLDI4YwDpmHxAhLTsrPoOs85bxXQSQBDxLJAcQ5CKrz 0G3KFrhwEkmBdS1Qf0ulBU+0pmf9T1f/KhBgpSI6YA24Ir7ZSnjnzPnf7a+hT19i6+rEJi 1licXYzAH4iFcCPuZiY9YTTlTYEB7HIgwx3kas4sfOKSOiH6fr0fqjX+0bGkqgElNK0Qy8 MRJso8y/o9fI06az4Zk6bGkdIMPAJeRACTW4qSaRVeVZCk+eIP2NAkW+/GP6t1UrRhqY6j P7u14wYJI+bhpf1M1GNz5HWyKH86gBeg5B9pPdt+KyCYVZbkpP88bTzzceegtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760574904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9cORiDZr8erHhm9ir3cbz2HFhZhKItgkRcWdcVX+qDk=; b=ioP1c4Dhk5hfY003tHIqk9XbiAIRhU8SxyqA0URUhxUkRTRayGH9PPFrwFw9IYgqvq17cy p41/gYTivXfhnvsp7Y8QBZP6SKAtuF88I06OpgzAXAVmja33l+31AqhntMrwQQXtzdTcuc mXAaHphtF9cTGJ7LMA79b/rH8ayqZaUhNOUQ1tJATyHluSjjrJ2Lwovsv7Nvly9X9Pu4xq hb2AHB77cnI6OU1lNVna6d9pK73qGS7J/JI8ZLJyzQByzpHhs/KfdGsrRGT/00Tzkhd9nE cfXxnbjTqqa/bokocAjhbgXwo8P4OlJcmqwEbIhEovueGDYOUa+OovqjuTi92Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760574904; a=rsa-sha256; cv=none; b=nbatxN+GR8FXLXe5hEk9a8ZXYGCnlr7A1G2NB06sp0vpXnBURa/EcLYujvlFrWELtOg/MJ YNsPjImAxHNLwP9vPqaJNG24oOgLxRKd3RdZAP5B/BGpo1Q3jqJK1NvDIZ3kBJwzuDHOXp +rXRvCYacnWj1hBS9cXLe35Nd2u9cEDtIj2iEcQCW5r8n681Xvzk9beS5Q3bOtv28Pgrif a0tZ4RESgKvz4enKcrn+bRcc2bfgR+e+Gl4+N2dBL9frOs2+KM72c4U7lfZM8HdgjjH7uE 98gye9vc0DOWpZM3UW5bPyVcge58ZSP/t756onE1ExVHEowMpm6Ad/9Xe+gpKw== 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 4cn89h2Xcwz11qt; Thu, 16 Oct 2025 00:35: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 59G0Z4d3011653; Thu, 16 Oct 2025 00:35:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G0Z4tX011650; Thu, 16 Oct 2025 00:35:04 GMT (envelope-from git) Date: Thu, 16 Oct 2025 00:35:04 GMT Message-Id: <202510160035.59G0Z4tX011650@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 7161c525abff - stable/15 - openssh: blocklist: Remove non async-signal safe probe List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7161c525abffe6cdb19ac01223d058fcbabf49c5 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=7161c525abffe6cdb19ac01223d058fcbabf49c5 commit 7161c525abffe6cdb19ac01223d058fcbabf49c5 Author: Jose Luis Duran AuthorDate: 2025-10-15 13:29:30 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 00:30:07 +0000 openssh: blocklist: Remove non async-signal safe probe BLOCKLIST_NOTIFY() is called within a signal handler for the alarm after the grace period has expired that may only take async-signal safe actions. Reviewed by: emaste Fixes: e02003bce726 ("openssh: blocklist: Use NetBSD probes") MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D53109 (cherry picked from commit 9c82c17c2a3ac61a69cb5337cb6f92ae88bc0b08) --- crypto/openssh/sshd-session.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/crypto/openssh/sshd-session.c b/crypto/openssh/sshd-session.c index e8299c254567..ca35790149ac 100644 --- a/crypto/openssh/sshd-session.c +++ b/crypto/openssh/sshd-session.c @@ -217,8 +217,6 @@ mm_is_monitor(void) static void grace_alarm_handler(int sig) { - BLOCKLIST_NOTIFY(the_active_state, BLOCKLIST_AUTH_FAIL, - "Grace period expired"); /* * Try to kill any processes that we have spawned, E.g. authorized * keys command helpers or privsep children. From nobody Thu Oct 16 02:22:28 2025 X-Original-To: dev-commits-src-branches@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 4cnBYd0q8Cz6CFxm; Thu, 16 Oct 2025 02: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnBYd0DYZz3t3m; Thu, 16 Oct 2025 02: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=1760581349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aGGlaBbpzDtCldiz1pK8AJgFRPnuqmHkgdJkOILNQjg=; b=t6wbDgMta720GEZf0bDZ0iY/H1XXZ6Fy1EtE+1Xe0oTcdk9q0p57bSnYEecxzvmAYjpafC Y9Lt808kwOJyXhymCHCQn5FWnG0lNdHWVuRNT7OabJIuxHZNwpAQFbcaG4I8gR02uWdhnT pCCtLu6HEoQhdDZTgOx/7ObCb7AAJSJO/M8qtWxB/nnFetc5jLn4RHqNV9g3/yZd4sjf6V +WZh8EfHfDl+YeK/k/s7BscreNBxcDsBzezjYeQ9sk55XwtHYWK32FnoMLSY/yzXMyp9b8 acIkGydpUxZ25YAM89SJFwrfzfxb6ZWDgl5M+w0ZigrX53qsN1BhVOF3NiZaKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760581349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aGGlaBbpzDtCldiz1pK8AJgFRPnuqmHkgdJkOILNQjg=; b=hpwV9Zz+18F78l9ECnRj6YjoKTZUn9iq1tfEUo+3U9zmM+uzLaGbblz7XB73XLSKR/4Xeh 6C5uv9sCpYk+Bx59N/aunm2psquJ6q5J6ZQQFredG4H7Q5eoA4Lcs3LBuJMMk06JtMzcE+ aIV0RzAuEVI3TBalTqGdZkYJMUSf04ceDfKt0YliVgm7b0tDk8/kYLxiWIrGZV8/Wb0GX0 6j+XWXj7KQAoOSLs2DPm/BxEIZthh7CuZMBltptRfqjVDS9QWz4WdWwwjlOvN+vO29Gapu bKcz6y3SCeAXdyeri1iBwC9wJwuLgJ/afx2tReHY80CRMtDkCAoo31L1iGazCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760581349; a=rsa-sha256; cv=none; b=M3I96LjXQFID66JZOII5pDUjdOJfZQXDVX4i2zwSE51IuiQP1aT1XahkoElRiY/ahp5V3g tnviefjlu61ClH7EOl0tpOBZjZJeRb8FAsFOBy7oy7ECEA891OweYWmO4J0F2tNVRG8xSH GJ8oFgfPZNvvgzdlZSZRFe6zvOntp9s0PnEUfqzWT7vwayv/BdSSdh1973Rjo982iTr2kf B9Wlp5eiy2qY5lXKJUlN+SexOfdFA1NZkTgLRSsUXeiVT30bm+d46otxcG1uLGeitf1a5B JzCV3dXqjWFgk/0LXd7Ru9DL/VwOGM0KRyHzptG04hy7twLc/SFLj7hBSDsG0A== 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 4cnBYc6y4Jz14HF; Thu, 16 Oct 2025 02:22: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 59G2MSx2017880; Thu, 16 Oct 2025 02:22:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G2MSNr017877; Thu, 16 Oct 2025 02:22:28 GMT (envelope-from git) Date: Thu, 16 Oct 2025 02:22:28 GMT Message-Id: <202510160222.59G2MSNr017877@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 5a0a2d269f37 - stable/15 - nullfs: add a helper for testing if vnode belongs to a nullfs mount List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 5a0a2d269f37fa79ee879e54856c94272b7e3c33 Auto-Submitted: auto-generated The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5a0a2d269f37fa79ee879e54856c94272b7e3c33 commit 5a0a2d269f37fa79ee879e54856c94272b7e3c33 Author: Konstantin Belousov AuthorDate: 2025-10-08 15:42:27 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-16 02:22:20 +0000 nullfs: add a helper for testing if vnode belongs to a nullfs mount (cherry picked from commit 419f2fe6b70b1a409bf7eca7020d7c745558690f) --- sys/fs/nullfs/null.h | 10 ++++++++++ sys/fs/nullfs/null_vfsops.c | 4 ++-- sys/fs/nullfs/null_vnops.c | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/sys/fs/nullfs/null.h b/sys/fs/nullfs/null.h index 0a93878c859f..abd652c4ac1c 100644 --- a/sys/fs/nullfs/null.h +++ b/sys/fs/nullfs/null.h @@ -78,6 +78,16 @@ struct vnode *null_checkvp(struct vnode *vp, char *fil, int lno); #endif extern struct vop_vector null_vnodeops; +extern struct vop_vector null_vnodeops_no_unp_bypass; + +static inline bool +null_is_nullfs_vnode(struct vnode *vp) +{ + const struct vop_vector *op; + + op = vp->v_op; + return (op == &null_vnodeops); +} #ifdef MALLOC_DECLARE MALLOC_DECLARE(M_NULLFSNODE); diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 4cddf24a5745..e2dabd8e33cc 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -116,7 +116,7 @@ nullfs_mount(struct mount *mp) /* * Unlock lower node to avoid possible deadlock. */ - if (mp->mnt_vnodecovered->v_op == &null_vnodeops && + if (null_is_nullfs_vnode(mp->mnt_vnodecovered) && VOP_ISLOCKED(mp->mnt_vnodecovered) == LK_EXCLUSIVE) { VOP_UNLOCK(mp->mnt_vnodecovered); isvnunlocked = true; @@ -150,7 +150,7 @@ nullfs_mount(struct mount *mp) /* * Check multi null mount to avoid `lock against myself' panic. */ - if (mp->mnt_vnodecovered->v_op == &null_vnodeops) { + if (null_is_nullfs_vnode(mp->mnt_vnodecovered)) { nn = VTONULL(mp->mnt_vnodecovered); if (nn == NULL || lowerrootvp == nn->null_lowervp) { NULLFSDEBUG("nullfs_mount: multi null mount?\n"); diff --git a/sys/fs/nullfs/null_vnops.c b/sys/fs/nullfs/null_vnops.c index 74c1a8f3acb6..ebb765b0a1c5 100644 --- a/sys/fs/nullfs/null_vnops.c +++ b/sys/fs/nullfs/null_vnops.c @@ -274,7 +274,7 @@ null_bypass(struct vop_generic_args *ap) * that aren't. (We must always map first vp or vclean fails.) */ if (i != 0 && (*this_vp_p == NULLVP || - (*this_vp_p)->v_op != &null_vnodeops)) { + !null_is_nullfs_vnode(*this_vp_p))) { old_vps[i] = NULLVP; } else { old_vps[i] = *this_vp_p; From nobody Thu Oct 16 02:22:30 2025 X-Original-To: dev-commits-src-branches@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 4cnBYf2gTTz6CFgP; Thu, 16 Oct 2025 02:22: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnBYf0w2Wz3t1S; Thu, 16 Oct 2025 02:22:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760581350; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=29mPZ/qD3icruHUIw2AdjowCpL2/GGQKGggK0zAsy4M=; b=gRertx/sfLNtnBjy9BuyN3eDPHn82spqx7J82vN38EIzCK0IegsiffKMQTbZWLlQds1DtD vFJ5jS+MB3Fn2kpl5MHWkfR/9xa9V+EuXCVM745Al4JMmyHpgzf8XnC8lPgQEchSw2Hj1h KqTqo4Ug3LNtohi/ED5QpgSzf4tvjp73DCBO0TVM3+NDhfuqMDj/is7UjGGvX59p3jVZuh xVLKqBrU3yYgoR9fm/ZC9vD13Kir6IQeAIBOqwdA6P1X4U7MxYxk21PMV1OnZYlyf1tpIR S/EPcvzQ1qps2GMiQAt9WHS2DCTFlWHYk7v61e0Bx+hvynCod7N9NPFRQ1g9RA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760581350; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=29mPZ/qD3icruHUIw2AdjowCpL2/GGQKGggK0zAsy4M=; b=wDVb+PY6B/6LCqsCLqgq58lkGwWSvmVXV7xzrVlQ00UqlejcddPC2d2Wk47wnLk8Lythxn hRIL133IgX3X6JO8QmmPeYb62KIBiUN2kRThwNw8f35Sqi0mzHMO4CFceOr5rtKDz76rJZ 16yiphQvhRn9+/2uUaLMC8jX/iBqXE2nSkaSKbHofY2VjkDlrC0HqXNy2WGhCBjZ1M5YEU h9hzNzOI5f3XsosWEgJHRd8RgN4bRxedjriSNbUlvJ1BAaX+XH8rWloqJBzb0XLod4pXRQ 3Ewx1IhNHVBwmXTcNhZV+hYBWiFeShc5ICBSSo3eban5N+Ekc64om+NrRCdRDw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760581350; a=rsa-sha256; cv=none; b=EXG5cfR3xwjWvXngQFqj9UKK+EYTgbB6RI7fmiH23aaQ4pdzq/E1M2WNtJbqrfq139rP3v Zdf9tYa8SAaIaXFX7kKfNnU3uuNXlOd5FXGYYlXRBnit928eDKJEcWoaxbY34897TAD0fM +JOICFpeO9n2Bx5rwtmA2A+cwLgqLnT+GxShHBXuRfB/Ito0kIKmiYRB/6cVHKYnk32q9U Se8ejpNNANx/IYii+akrsB8DrFAOzksypJC+5VuijAJty9hlmuAakQxLJACJiHHeFRfN7Q y1zcTh4GwsqcXixvxjP16W3dtrQIAX7+fSVv5xGZAZXLHVDoeC+Bq+9oQGar+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 4cnBYf0VlXz14Mn; Thu, 16 Oct 2025 02:22: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 59G2MU8c017913; Thu, 16 Oct 2025 02:22:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G2MUbl017910; Thu, 16 Oct 2025 02:22:30 GMT (envelope-from git) Date: Thu, 16 Oct 2025 02:22:30 GMT Message-Id: <202510160222.59G2MUbl017910@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: e9a48e988e2d - stable/15 - nullfs_mount: use symbols instead of string literals for cache mount options List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: e9a48e988e2d65827d4278e3b3bf437aea400827 Auto-Submitted: auto-generated The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e9a48e988e2d65827d4278e3b3bf437aea400827 commit e9a48e988e2d65827d4278e3b3bf437aea400827 Author: Konstantin Belousov AuthorDate: 2025-10-08 15:44:59 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-16 02:22:20 +0000 nullfs_mount: use symbols instead of string literals for cache mount options (cherry picked from commit 8e6f6a5fbde78bd8d19445ee6ebaf00b8f4f5aa9) --- sys/fs/nullfs/null_vfsops.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index e2dabd8e33cc..483d4182e65e 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -85,6 +85,8 @@ nullfs_mount(struct mount *mp) char *target; int error, len; bool isvnunlocked; + static const char cache_opt_name[] = "cache"; + static const char nocache_opt_name[] = "nocache"; NULLFSDEBUG("nullfs_mount(mp = %p)\n", (void *)mp); @@ -205,9 +207,10 @@ nullfs_mount(struct mount *mp) MNT_IUNLOCK(mp); } - if (vfs_getopt(mp->mnt_optnew, "cache", NULL, NULL) == 0) { + if (vfs_getopt(mp->mnt_optnew, cache_opt_name, NULL, NULL) == 0) { xmp->nullm_flags |= NULLM_CACHE; - } else if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0) { + } else if (vfs_getopt(mp->mnt_optnew, nocache_opt_name, NULL, + NULL) == 0) { ; } else if (null_cache_vnodes && (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) == 0) { From nobody Thu Oct 16 02:22:32 2025 X-Original-To: dev-commits-src-branches@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 4cnBYh52nMz6CG5p; Thu, 16 Oct 2025 02:22:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnBYh2VPNz3t6W; Thu, 16 Oct 2025 02:22:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760581352; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yp6Li9wx/QsH3FfJ6D5Vft+keFBeyrCf4obzluM8Lr4=; b=l1/ek0BZF0YF9oYDRRDxqehT0oZ/bT0aiXt15oHczcHnFWWuZdedeljpJxiluJnqlqKyZ+ ZSt+Kc4s2rg/YVYnG7THYysOkgKZT4vAHMTqLgvDfhB1uuqbUFEdiHcwW8pSYvbQW42oXh Yv+OWdeQjgsCq6dzz5NPvtlQDAf0pdQgFjWou27/td5rvJVybSKCjBUQEdnfxNjOLHCb9j QvOPr0ARC839ymEY220ZoqpOAWRI9sIg/56ruzAbzsmayQGJjiRpWoPrYGo/pSAYdpuS5r pH9J8HVEcTv3ZVlw+zBiIrt2TzTNOvgxylr44Z3ubDG6dr3fA6+ZBex6PRoO2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760581352; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yp6Li9wx/QsH3FfJ6D5Vft+keFBeyrCf4obzluM8Lr4=; b=QihIy/EeQqkrLGA/lAsKAcHxnGQUCP/YiSIwNtei/npleIMlB/9oGA582vq2JAgTjkBggr 9W61z3mqTGWUI10V6i0LCUzpYjgOR04a6maD+bo4XGlZKsSurJ7tilqJEylyDuzjWvcFlM 5kXYNNBCUIlmuZ94CxUTIQtS2lnRQ6LeE1DBDQpsQ+TQfujZaeZLPSBpLh9BD54+XJzkdW Okofcyq5/Cj8bsNRZ5FS66Mxbj9UoDoXO7dADB9yI1PdYefkou5T1hhmZ+P5SiaCfr12gs 6Tp4sh2M8NCIL1qqSF8on3XgQUYMpBOVK6u0PtTrq1NSD+bvbO9snG6su9QxTw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760581352; a=rsa-sha256; cv=none; b=dtla25w6usds/kw7MSPyfaEwjtt4yn5TaOD7L1IDolYlfymqkVofWUIzFehrFjeyih2lSh 5WU2kdxAQY/ANZeDGVp1YdbwWgppCOIWQY4AAeg4RvVnstwy7Iu2EU8A5I+2FpcRe5lXaj 4QMbVAasIp32Qtu29N/msPA8rJJayZ4NrAWM3amB7jlYz/aJ5Y/2AocHqUQhVjQWl+nbsG 14pWhAgAncDcD1o1Lrqw3SOl+Fvhxy0FrSyzkYuhUnIAyuNFTKGLClVgHYCi6oGTiSX6L9 Uv6bs6mK7v/paagbxFEMFRZtz3JUtgD9DJJvE8jsjidsoGL5ltq1A0+cVQjpPQ== 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 4cnBYh269lz14BV; Thu, 16 Oct 2025 02:22: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 59G2MWGe017988; Thu, 16 Oct 2025 02:22:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G2MWOs017984; Thu, 16 Oct 2025 02:22:32 GMT (envelope-from git) Date: Thu, 16 Oct 2025 02:22:32 GMT Message-Id: <202510160222.59G2MWOs017984@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 24f4ec797e9b - stable/15 - mount_nullfs.8: document unixbypass and nounixbypass List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 24f4ec797e9b19abd4488554c78e7ecc27313428 Auto-Submitted: auto-generated The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=24f4ec797e9b19abd4488554c78e7ecc27313428 commit 24f4ec797e9b19abd4488554c78e7ecc27313428 Author: Konstantin Belousov AuthorDate: 2025-10-09 20:55:01 +0000 Commit: Konstantin Belousov CommitDate: 2025-10-16 02:22:20 +0000 mount_nullfs.8: document unixbypass and nounixbypass (cherry picked from commit 033587a985a46e9d45fc3fb48a78754d81f0d50d) --- sbin/mount_nullfs/mount_nullfs.8 | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index 17b1f45f5e42..b3cf57fd9dea 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -90,7 +90,7 @@ See the .Xr mount 8 man page for possible options and their meanings. Additionally the following option is supported: -.Bl -tag -width nocache +.Bl -tag -width nounixbypass .It Cm nocache Disable metadata caching in the null layer. Some lower-layer file systems may force this option. @@ -98,6 +98,32 @@ Depending on the access pattern, this may result in increased lock contention. .It Cm cache Force enable metadata caching. +.It Cm nounixbypass +Disable bypassing +.Xr unix 4 +socket files used for +.Xr bind 2 +and +.Xr connect 2 , +to the lower (mounted-from) filesystem layer. +.Pp +The effect is that lower and upper (bypassed) unix sockets +are separate. +.It Cm unixbypass +Enable the bypass of unix socket file to lower filesystem layer. +This is default. +.Pp +The effect is that +.Xr bind 2 +and +.Xr connect 2 +operations on a unix socket done from either the upper (nullfs) or lower +layer path are performed on same unix socket. +For instance, if a server +.Xr bind 2 +is done on a socket in the lower layer, then +.Xr connect 2 +on the socket file accessed via the nullfs mount, connects to the server. .El .El .Pp From nobody Thu Oct 16 03:47:51 2025 X-Original-To: dev-commits-src-branches@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 4cnDS74bP9z6CNs7; Thu, 16 Oct 2025 03:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnDS73yBDz42YQ; Thu, 16 Oct 2025 03:47:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760586471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uuer8RSq7v1ojywrvbFzzvHHzwBzzVSDBSb/ggeXuVY=; b=nLa66kVnbXDJZ5TNH1G8bFRQQUSg/vsSicj0VaokbrFnYGO90Cg+cbVzoQZrqo/qSjctGr yG8tDPzPqjRwshNxMPFaKGM+nLPMrSFEJ3PxxI96pubq4VCjWcQy/Dm6oXCpnO8iOir0aO BgFq273JxYo3c2iYPsEzcROMPubEPBSMTl6Ke6wTELDFgh1rHOLihD6P19UENQyvC/13Ol mGZaNJ2xfwGWvSXqWwUJWO6Oql/w+FivhAN0LzawBlWwPvOJU5TI5X6T0+wPfxUgnCDm0O 06tdOPeYQx7bDeIjjzWF3ZipqBQH/SRnYprmJaRDJY1sK0aVGVnbE4nxMrOOAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760586471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uuer8RSq7v1ojywrvbFzzvHHzwBzzVSDBSb/ggeXuVY=; b=RuEC98GD+rK9eamwh5zDwGRN/5qTCvbczPP+ZhHzfY39A+TBvZDv1HU4CEEZ/7de/cBVOH 62NorQVICMVQZrW514SyEOpTtArmHrfLhmWC+muobwHnUTRkN29RQ1n/wPESKqUsgw4rGP GFa5GlmvpvXg8GuJAyL9w1DerPhVnEHLuGiAzS6N2ZL2Q5DMB3jUO7tOLExBwq9GwDZu4D ebl6Dtjhtmf/oD/ursT7qqmaQdpIgbYgFN46Na7NMLn5zBL9R17WVJ8twxWM6BWM4mqazO gn2obcTyjStzPm3fkrAQ98epSTq9gUTrO9B3q1QBGPrmrnK7MIDKMoVKI8PEUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760586471; a=rsa-sha256; cv=none; b=NGKoE+JRxDuuy9JRRLtDDC+jmDt+EuDwDmyQUn8ILFXggjBVRu19wRaXmYzfdvM8yAFPYX xK6kZpB4dwcwbuygazd6ZXC+1t86rYeP8DNnh3xxe2+Y2zo1iokghDZNu7gnEERKmphl5M 2fAHB6RSFceT1WQD8C9N7KccJiwyWvp/xff2RD2MUe4oddw6Sm/SRzz1lDiJ11GMTpbx6C kMkFwHXR/P7XBNBj9e7rH9a8a1KMQsk5zXuT7ildUtdjW+VC5F6958qb2jls1yh05T7PNK K/BrywApCEpvL+7I0HjSTWkIvCI2/VVQ+hSNLbeXJSNSiT7fQgwrxyOGfemGMg== 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 4cnDS73Tnzz16yL; Thu, 16 Oct 2025 03:47: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 59G3lp3V070874; Thu, 16 Oct 2025 03:47:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G3lpUd070871; Thu, 16 Oct 2025 03:47:51 GMT (envelope-from git) Date: Thu, 16 Oct 2025 03:47:51 GMT Message-Id: <202510160347.59G3lpUd070871@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: 2b4d38a47503 - releng/15.0 - openssh: blocklist: Remove non async-signal safe probe List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 2b4d38a475032e1cf92a4aec5cad660e939df84d Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=2b4d38a475032e1cf92a4aec5cad660e939df84d commit 2b4d38a475032e1cf92a4aec5cad660e939df84d Author: Jose Luis Duran AuthorDate: 2025-10-15 13:29:30 +0000 Commit: Colin Percival CommitDate: 2025-10-16 03:47:33 +0000 openssh: blocklist: Remove non async-signal safe probe BLOCKLIST_NOTIFY() is called within a signal handler for the alarm after the grace period has expired that may only take async-signal safe actions. Approved by: re (cperciva) Reviewed by: emaste Fixes: e02003bce726 ("openssh: blocklist: Use NetBSD probes") MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D53109 (cherry picked from commit 9c82c17c2a3ac61a69cb5337cb6f92ae88bc0b08) (cherry picked from commit 7161c525abffe6cdb19ac01223d058fcbabf49c5) --- crypto/openssh/sshd-session.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/crypto/openssh/sshd-session.c b/crypto/openssh/sshd-session.c index e8299c254567..ca35790149ac 100644 --- a/crypto/openssh/sshd-session.c +++ b/crypto/openssh/sshd-session.c @@ -217,8 +217,6 @@ mm_is_monitor(void) static void grace_alarm_handler(int sig) { - BLOCKLIST_NOTIFY(the_active_state, BLOCKLIST_AUTH_FAIL, - "Grace period expired"); /* * Try to kill any processes that we have spawned, E.g. authorized * keys command helpers or privsep children. From nobody Thu Oct 16 07:09:23 2025 X-Original-To: dev-commits-src-branches@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 4cnJwh2hSdz6Cg0M; Thu, 16 Oct 2025 07:09: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnJwh1vZ0z3JmY; Thu, 16 Oct 2025 07:09:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598564; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z+mZvJGlRlj6czK2jlrsM3CwP2Mz3fCHRy3xmBX+Tng=; b=d25cJblIQAZqcPFxqPCVDZTOQYRBASIua0aW8uWQLAWtlm+2CFUvKoGhrKgIkZVp+uOcBX lSiyj2qE4hklW7Unssbv+tVLOcd1Ki6LDtIhEuyB0js2wQu/z8/XIRI2hCKD+xlDJA4FML Y2mBDr2OR2ZdAebMCoq4hXWmoYime7PybNdhowJoBH5ocS7EnQ7mO+g8FznMQ7vmU31zyq PfDNmQ+sSWQ1LinP8/SWBo04xnY62qPavCpm6jJin9oBGHoXfZ5qdtitk8yCfis2ghRkJx hGrJ/HNAkypLmXqzaOHVBPds4MMW7HXBPHZvsjit5pbcKwelvXAYvNI8BcYkDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598564; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z+mZvJGlRlj6czK2jlrsM3CwP2Mz3fCHRy3xmBX+Tng=; b=OWT138A1gQm37SZ0BaLya3YDAhr9s2VucgPAasOI3y54MbXCgUP10ZHqJ3ZnPcES9VC08c x+KQKniqkS6CV4riVxh5o08rnLw5Sz2Nh2OeFbqXrBbc3nT9HArG08loTOYoYuAqxedMQZ expwSV0myuobXmCpSMArVgwWWuZzMw1QcswNlZK+auiUPX5m4qvKr65WqgZbvVyvCPzNvc Mr+Gd6yRR0AYZnnOjiejuo2q+4w14WkR2hJElrb7PRPYQITpjTF+cYw4CTOHYcW8MGdpJW j/Z2RDRjM8awbeRhoBs3qYGY0szkgn7mow4txTgju6WiXFZeOqR9Zd1SXN2qOg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760598564; a=rsa-sha256; cv=none; b=IRctq2Kbkd4MOhmIsDXIBtPOKux9pnycFttttFebDgd7IYIHWIuhpQaUUOVzca8rzPPbx6 XdkzVysv4sbxGjNW8TyMimh1BkzZqA+W/YXO02uRlDldkm8lLjPILwqt2MCXCs4YTnCRl/ a9YUULtbSvoF6bTwuDc37ABN8WK25aIpjD06Lrqa8Pw/48hcA8SUmCMVywSJAhrk4Mq1gZ owlpOak+y9Pfsww1ytU8TQukhCYe4Dntz4vqjh7wKXGhVsWU369edAc/Jf8Yy1kIj987xZ M331sydtPpX3pe7FIWQBwi6TPfRQVtaRWnBpHh5cZRRwOtfmOgoYb2cb2Llomw== 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 4cnJwh0x44z1CYT; Thu, 16 Oct 2025 07:09: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 59G79NZ0046921; Thu, 16 Oct 2025 07:09:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G79NXR046917; Thu, 16 Oct 2025 07:09:23 GMT (envelope-from git) Date: Thu, 16 Oct 2025 07:09:23 GMT Message-Id: <202510160709.59G79NXR046917@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 520abb95e116 - stable/14 - usr.sbin: Remove repeated words List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 520abb95e1168cea585aebd4af9cc78addd44c61 Auto-Submitted: auto-generated The branch stable/14 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=520abb95e1168cea585aebd4af9cc78addd44c61 commit 520abb95e1168cea585aebd4af9cc78addd44c61 Author: Elyes Haouas AuthorDate: 2024-04-11 17:46:59 +0000 Commit: Eugene Grosbein CommitDate: 2025-10-16 07:08:40 +0000 usr.sbin: Remove repeated words Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/887 (cherry picked from commit ec8a394d9c676b3c4fd2cd721cf554e073736fc1) --- usr.sbin/arp/arp.c | 2 +- usr.sbin/bhyve/amd64/spinup_ap.c | 2 +- usr.sbin/bhyve/pci_emul.c | 2 +- usr.sbin/bhyve/virtio.h | 2 +- usr.sbin/crunch/crunchgen/crunchgen.c | 2 +- usr.sbin/fstyp/hammer2_disk.h | 2 +- usr.sbin/kldxref/kldxref.c | 2 +- usr.sbin/newsyslog/newsyslog.c | 2 +- usr.sbin/nscd/config.h | 2 +- usr.sbin/nscd/parser.c | 2 +- usr.sbin/nscd/query.c | 2 +- usr.sbin/pmcstat/pmcpl_callgraph.c | 2 +- usr.sbin/ppp/arp.c | 2 +- usr.sbin/sesutil/eltsub.h | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/usr.sbin/arp/arp.c b/usr.sbin/arp/arp.c index 9a19d792f788..fa2c595379d5 100644 --- a/usr.sbin/arp/arp.c +++ b/usr.sbin/arp/arp.c @@ -831,7 +831,7 @@ doit: /* * get_ether_addr - get the hardware address of an interface on the - * the same subnet as ipaddr. + * same subnet as ipaddr. */ static int get_ether_addr(in_addr_t ipaddr, struct ether_addr *hwaddr) diff --git a/usr.sbin/bhyve/amd64/spinup_ap.c b/usr.sbin/bhyve/amd64/spinup_ap.c index f874efcd374b..9cfd9a4542c5 100644 --- a/usr.sbin/bhyve/amd64/spinup_ap.c +++ b/usr.sbin/bhyve/amd64/spinup_ap.c @@ -52,7 +52,7 @@ spinup_ap_realmode(struct vcpu *newcpu, uint64_t rip) /* * Update the %cs and %rip of the guest so that it starts - * executing real mode code at at 'vector << 12'. + * executing real mode code at 'vector << 12'. */ error = vm_set_register(newcpu, VM_REG_GUEST_RIP, 0); assert(error == 0); diff --git a/usr.sbin/bhyve/pci_emul.c b/usr.sbin/bhyve/pci_emul.c index e91b4d0a1e20..238c4780088e 100644 --- a/usr.sbin/bhyve/pci_emul.c +++ b/usr.sbin/bhyve/pci_emul.c @@ -2255,7 +2255,7 @@ pci_cfgrw(int in, int bus, int slot, int func, int coff, int bytes, /* * Just return if there is no device at this slot:func or if the - * the guest is doing an un-aligned access. + * guest is doing an un-aligned access. */ if (pi == NULL || (bytes != 1 && bytes != 2 && bytes != 4) || (coff & (bytes - 1)) != 0) { diff --git a/usr.sbin/bhyve/virtio.h b/usr.sbin/bhyve/virtio.h index 4c6c8004b2d1..8ee59ce2716e 100644 --- a/usr.sbin/bhyve/virtio.h +++ b/usr.sbin/bhyve/virtio.h @@ -97,7 +97,7 @@ * begin with a 16-bit field and 16-bit index , then * have 16-bit values, followed by one final 16-bit * field . The entries are simply indices - * indices into the descriptor ring (and thus must meet the same + * into the descriptor ring (and thus must meet the same * constraints as each value). However, is counted * up from 0 (initially) and simply wraps around after 65535; it * is taken mod to find the next available entry. diff --git a/usr.sbin/crunch/crunchgen/crunchgen.c b/usr.sbin/crunch/crunchgen/crunchgen.c index 996db29dee8e..1b7350f834fc 100644 --- a/usr.sbin/crunch/crunchgen/crunchgen.c +++ b/usr.sbin/crunch/crunchgen/crunchgen.c @@ -657,7 +657,7 @@ fillin_program(prog_t *p) } /* Unless the option to make object files was specified the - * the objects will be built in the source directory unless + * objects will be built in the source directory unless * an object directory already exists. */ if (!makeobj && !p->objdir && p->srcdir) { diff --git a/usr.sbin/fstyp/hammer2_disk.h b/usr.sbin/fstyp/hammer2_disk.h index eae40b618966..6efefe9a2495 100644 --- a/usr.sbin/fstyp/hammer2_disk.h +++ b/usr.sbin/fstyp/hammer2_disk.h @@ -619,7 +619,7 @@ typedef struct hammer2_dirent_head hammer2_dirent_head_t; * * Simple check codes are not sufficient for unverified dedup. Even with * a maximally-sized check code unverified dedup should only be used in - * in subdirectory trees where you do not need 100% data integrity. + * subdirectory trees where you do not need 100% data integrity. * * Unverified dedup is deduping based on meta-data only without verifying * that the data blocks are actually identical. Verified dedup guarantees diff --git a/usr.sbin/kldxref/kldxref.c b/usr.sbin/kldxref/kldxref.c index 38f4e87f6ed9..0ef4ed72dbd7 100644 --- a/usr.sbin/kldxref/kldxref.c +++ b/usr.sbin/kldxref/kldxref.c @@ -230,7 +230,7 @@ typedef TAILQ_HEAD(pnp_head, pnp_elt) pnp_list; /* * this function finds the data from the pnp table, as described by the - * the description and creates a new output (new_desc). This output table + * description and creates a new output (new_desc). This output table * is a form that's easier for the agent that's automatically loading the * modules. * diff --git a/usr.sbin/newsyslog/newsyslog.c b/usr.sbin/newsyslog/newsyslog.c index 6b21c8e8f855..5444790e25e4 100644 --- a/usr.sbin/newsyslog/newsyslog.c +++ b/usr.sbin/newsyslog/newsyslog.c @@ -2295,7 +2295,7 @@ set_swpid(struct sigwork_entry *swork, const struct conf_entry *ent) /* * Warn if the PID file is empty, but do not consider * it an error. Most likely it means the process has - * has terminated, so it should be safe to rotate any + * terminated, so it should be safe to rotate any * log files that the process would have been using. */ if (feof(f) && enforcepid == 0) { diff --git a/usr.sbin/nscd/config.h b/usr.sbin/nscd/config.h index 243c18582df6..f7baf46fff90 100644 --- a/usr.sbin/nscd/config.h +++ b/usr.sbin/nscd/config.h @@ -68,7 +68,7 @@ struct configuration_entry { /* * configuration_entry holds pointers for all actual cache_entries, * which are used for it. There is one for positive caching, one for - * for negative caching, and several (one per each euid/egid) for + * negative caching, and several (one per each euid/egid) for * multipart caching. */ cache_entry positive_cache_entry; diff --git a/usr.sbin/nscd/parser.c b/usr.sbin/nscd/parser.c index 6427f179707b..dc8ad809e8a8 100644 --- a/usr.sbin/nscd/parser.c +++ b/usr.sbin/nscd/parser.c @@ -362,7 +362,7 @@ set_threads_num(struct configuration *config, int value) /* * The main configuration routine. Its implementation is hugely inspired by the - * the same routine implementation in Solaris NSCD. + * same routine implementation in Solaris NSCD. */ int parse_config_file(struct configuration *config, diff --git a/usr.sbin/nscd/query.c b/usr.sbin/nscd/query.c index 652be2357003..a84e9fd84ae2 100644 --- a/usr.sbin/nscd/query.c +++ b/usr.sbin/nscd/query.c @@ -79,7 +79,7 @@ static int on_write_response_write1(struct query_state *); /* * Clears the specified configuration entry (clears the cache for positive and - * and negative entries) and also for all multipart entries. + * negative entries) and also for all multipart entries. */ static void clear_config_entry(struct configuration_entry *config_entry) diff --git a/usr.sbin/pmcstat/pmcpl_callgraph.c b/usr.sbin/pmcstat/pmcpl_callgraph.c index 2ba6dfc0f8d5..fa8114e57466 100644 --- a/usr.sbin/pmcstat/pmcpl_callgraph.c +++ b/usr.sbin/pmcstat/pmcpl_callgraph.c @@ -359,7 +359,7 @@ pmcpl_cg_process(struct pmcstat_process *pp, struct pmcstat_pmcrecord *pmcr, * For each return address in the call chain record, subject * to the maximum depth desired. * - Find the image associated with the sample. Stop if there - * there is no valid image at that address. + * is no valid image at that address. * - Find the function that overlaps the return address. * - If found: use the start address of the function. * If not found (say an object's symbol table is not present or diff --git a/usr.sbin/ppp/arp.c b/usr.sbin/ppp/arp.c index 3502d714a561..5613b345c116 100644 --- a/usr.sbin/ppp/arp.c +++ b/usr.sbin/ppp/arp.c @@ -221,7 +221,7 @@ arp_ClearProxy(struct bundle *bundle, struct in_addr addr, int s) /* * arp_EtherAddr - get the hardware address of an interface on the - * the same subnet as ipaddr. + * same subnet as ipaddr. */ int diff --git a/usr.sbin/sesutil/eltsub.h b/usr.sbin/sesutil/eltsub.h index 3be59d31cb7c..d7feb461368e 100644 --- a/usr.sbin/sesutil/eltsub.h +++ b/usr.sbin/sesutil/eltsub.h @@ -12,7 +12,7 @@ * derived from this software without specific prior written permission. * * Alternatively, this software may be distributed under the terms of the - * the GNU Public License ("GPL"). + * GNU Public License ("GPL"). * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE From nobody Thu Oct 16 07:10:43 2025 X-Original-To: dev-commits-src-branches@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 4cnJyC6shsz6CgN8; Thu, 16 Oct 2025 07:10: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnJyC6FXWz3K3w; Thu, 16 Oct 2025 07:10:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598643; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I/nheNPW+jTs5SIWOhEuw3e6MCm9R+KprI1SIrgOvFI=; b=eq9QW+V3MiIB3ooX6jjqydeQv1tN+LesY3MUx0m/izJvB7AuCkXb9alx3l0SR5EJfP2Qbi /SyFM3R+1ouoo4da+ho408FecfIFLXLbbBakv9J7eLrmImzP5TDMKYFgELHfoPIUmf5fnx 2wflY+jaCxh7ghi72jKQXL7Pim40mwQWGqMgM4xEt3m3netgHP7oHmBVxBPZCaxVJGyFuO DADdtb+E/vh7kCKTqyOQ96JV/xnaTLtVx7obgoi5o+dE95WGan4EqG7wTn3Q5ldk6U7el+ S0vjFPO+FoDnkEd8XaBrJISZOzLCXz8wx6sO5qSrG0U34Ex4ajqAGvW2IwI03g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598643; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I/nheNPW+jTs5SIWOhEuw3e6MCm9R+KprI1SIrgOvFI=; b=xNS9LcEIug3BXyWki/QKT14urgMQIZ2pne1ZYyHcobpalTVQ6fDtxv72B41jNYl/7U7HHg TMXiynY5+q2mopGQ+kqNs8rXA2R+ftPZ35ZDouT3hqYvxQpx1gLnFIr0oWx8+lVUfm6eiz PJORYRg9i7aNFIa3oskec4eEu+GOAwn89u4eQrGjli6FBgWik+we+YTEFF7XzJXWdgnCOb GTEvPksRogZbtr3zI60eVromfxjYfenKi3iCJfsYabfnR/C3Qlj6GvhIGm8I8/gQ6zOAoQ MXEUfpV3zJF0JQKQpISSUYXEiGO7pDArjSXijwA/z0FydDQdqmBNmmMvEmofuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760598643; a=rsa-sha256; cv=none; b=tujHmxc+ceDZ2W4sfqIlYSG+omtUVoa5EjE/HlYsDv2EMx6v+LRc/FPQX+ALTeX97TfqOE tjNZ1OoWCBxy37LRD0SBRZPxB3V3P0a4CaQ3WYTsyb8kYhS4/2M33RSMruSvmXu52gCR2F V/YqiJlUNQfte2F6lWXXbMzviEyy6QTw+UdHZB+VHdrs5BgJ08WTAlHsXOFOPK4xs59Vl2 eRt9SBHeyIXYAl17Bwvu9reZvbFyFV2+wJOCC8fdnI7u15mCuBR9YOCg5CoPT5ePHDH6Qc Phv1KEEp6FQbdm9ETu6yUVOhB8mIREY3iCfG8tO7GN+SqQ/ra15dOhxmq6Naag== 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 4cnJyC5nwnz1Cn4; Thu, 16 Oct 2025 07:10: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 59G7Ah3K056197; Thu, 16 Oct 2025 07:10:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G7Ahjh056194; Thu, 16 Oct 2025 07:10:43 GMT (envelope-from git) Date: Thu, 16 Oct 2025 07:10:43 GMT Message-Id: <202510160710.59G7Ahjh056194@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: cf650aba2ddf - stable/14 - arp(8): fix a typo in error message for -s/-S List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cf650aba2ddfb8bfeedae9df5e7a2083f4af6aea Auto-Submitted: auto-generated The branch stable/14 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=cf650aba2ddfb8bfeedae9df5e7a2083f4af6aea commit cf650aba2ddfb8bfeedae9df5e7a2083f4af6aea Author: Lexi Winter AuthorDate: 2024-05-04 15:02:39 +0000 Commit: Eugene Grosbein CommitDate: 2025-10-16 07:10:29 +0000 arp(8): fix a typo in error message for -s/-S Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1214 (cherry picked from commit 0ad9b235e1eaef36e07247c8c7635a8eac98f4b1) --- usr.sbin/arp/arp_netlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/arp/arp_netlink.c b/usr.sbin/arp/arp_netlink.c index 8644f3722aed..24e01126044b 100644 --- a/usr.sbin/arp/arp_netlink.c +++ b/usr.sbin/arp/arp_netlink.c @@ -385,7 +385,7 @@ set_nl(uint32_t ifindex, struct sockaddr_in *dst, struct sockaddr_dl *sdl, char ifindex = fix_ifindex(&ss, ifindex, dst->sin_addr); if (ifindex == 0) { - xo_warnx("delete: cannot locate %s", host); + xo_warnx("set: cannot locate %s", host); snl_free(&ss); return (0); } From nobody Thu Oct 16 07:11:49 2025 X-Original-To: dev-commits-src-branches@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 4cnJzT63M8z6Cg9y; Thu, 16 Oct 2025 07:11: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnJzT5S78z3KJ4; Thu, 16 Oct 2025 07:11:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598709; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s9euSAKHtVhv1O89GxtIb4baCl7Zb7vGQKJYBRLnGCY=; b=QGdeHp7HHdqXJnnFa03R6yZaFQ8M2+kzXuMMdSaysc5O1pY4ev0Ay5xuU1AogMOwK/2blG ETtLaxjxoS9VWmC3cB5Eqy8s6/klurOds2Nh5EggX1tDl78TAsGWqi8qxem6+XefxjnaQm ez5u3lOs+Dqr+QqYLj+fFvGkQKoc6UgMgvtW9XAlBUhXCs2npTIjbTdZBKLJYtZq+mDdBE u6U7dhCM8Bqnvx32fEjp6iFWyiBmBZYKOIHkHS4ZqJNW4sCSihtJHqdxchyIZAHFv2wvYp mIsi9j5/nqyGz4bYL1KMoQ0KFJROa07Bv30YCdhq6KewXIT7d0M+mM5ObQQMug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598709; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s9euSAKHtVhv1O89GxtIb4baCl7Zb7vGQKJYBRLnGCY=; b=UwGR32Wbf9auolJQnGOGtcboNRAs0o4TyhbeMPhvRBxNqmkkwu0kE7g3MJ5eAOjWrvIpUc s72GsBhof2pr4a/vfN1usgudpQKYSf1vZM10NPHslc5I1Ym022QhuAATvq7oQ4oo2S2pgr dV9WSFWjIj8Ll6ARKIzf6rB6H9vPGcWmeLYP7fTP4UXSIdOsXkGijXamFZ0ai5tvbQ7S3x maxpVoYKEv1ICDRy1z9kJMJuwppZ8wwMt1Oy32J0VMbgI9ITpnRc5Vdvv+drQLhGm2+R8n oULKMITfMt7FeZiXlt/JSBNMXoLGA35jqtH2mO+4ics+fLGaqJ/zi3RR4Vl5wg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760598709; a=rsa-sha256; cv=none; b=QOHi7fWZQDkAIblA3CR4EeqwWqTFJRFQiWIE4ommP/M0T9IYSAQ9ma4OZIaLJR3gS0j2WT iogSY8qGdVng/LHBLuGWGcINs+W/OdygGRd0QSqspbNCdQ9RzXuzZ2MCEEF6ueWoCNe+ZN Z951s4v/FJkzSkhillHYoERcAvq9dZxcxVwlghzrtHkUMeTozT0Jj28ItB75v3llgoQcfs 45dN31J5terauB9J78IQIxBDuOS+K2i8aRmKWlDo+KCSXVczbrQi2tHsrpZarEezKLreGK Uthgm25Tnz5ai5bV77OWT3bFdtnWo9LCi1253LbZKlqwm+9Mm0WBrDNF8h/ewA== 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 4cnJzT535Dz1Chw; Thu, 16 Oct 2025 07:11: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 59G7BnT3061461; Thu, 16 Oct 2025 07:11:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G7Bnqf061459; Thu, 16 Oct 2025 07:11:49 GMT (envelope-from git) Date: Thu, 16 Oct 2025 07:11:49 GMT Message-Id: <202510160711.59G7Bnqf061459@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 3bcb5b7adc77 - stable/14 - arp.8: don't document a syntax that doesn't exist List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3bcb5b7adc77085580817b2543d3e6a4cdffb94b Auto-Submitted: auto-generated The branch stable/14 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=3bcb5b7adc77085580817b2543d3e6a4cdffb94b commit 3bcb5b7adc77085580817b2543d3e6a4cdffb94b Author: Lexi Winter AuthorDate: 2024-05-09 23:26:41 +0000 Commit: Eugene Grosbein CommitDate: 2025-10-16 07:11:33 +0000 arp.8: don't document a syntax that doesn't exist The arp.8 manpage documents 'arp -d pub', but the 'pub' flag is not accepted by the arp command. Remove this incorrect documentation. Reviewed by: imp, gleb, mp Pull Request: https://github.com/freebsd/freebsd-src/pull/1215 (cherry picked from commit cd917a17bc39991bb1ee11b90716bcabfcd42791) --- usr.sbin/arp/arp.8 | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/usr.sbin/arp/arp.8 b/usr.sbin/arp/arp.8 index 3f61c0cd9ecc..ad03a554f527 100644 --- a/usr.sbin/arp/arp.8 +++ b/usr.sbin/arp/arp.8 @@ -46,7 +46,6 @@ .Fl a .Nm .Fl d Ar hostname -.Op Cm pub .Nm .Fl d .Op Fl i Ar interface @@ -97,15 +96,8 @@ A super-user may delete an entry for the host called with the .Fl d flag. -If the -.Cm pub -keyword is specified, only the -.Dq published -.Tn ARP -entry -for this host will be deleted. .Pp -Alternatively, the +The .Fl d flag may be combined with the .Fl a From nobody Thu Oct 16 07:13:28 2025 X-Original-To: dev-commits-src-branches@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 4cnK1P0Y2zz6CgB9; Thu, 16 Oct 2025 07:13: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnK1N70CKz3Kpt; Thu, 16 Oct 2025 07:13:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uIpUGa7TF3S7uZ0HNim6IdGjEpqacv+icl3KwCEl/3o=; b=bZZ0PIIj7DKkmO49S7z/uJYQPAAI9KY/OG+97+DP3wF1ZFAny0sfE+pgr3OImXmC4Gbawz 5MhDaUmTKjwc1swPtSKeDm8lRpQBok/+KUG8cldvfNgZm7ielRSjO+r/E+KupHh/qQwnip 0GX6ftYUMetQlOvfENxKK3dcc4irjMwf71T/bcM9LUqstzLef7K7MQvg4FOTKnYsAIzser wD0X45yj+WN02UZYwlB8hqFGjY4AiZ9bCP+1rLChIkazqpgnJ6rDlE3EC0anuooYcS1yVq mHdM4f+yBN0LWMAEeV5HijcxNU0PDVsQMm1NLM0FHYFcRAGelom0h5U5i/p7Aw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uIpUGa7TF3S7uZ0HNim6IdGjEpqacv+icl3KwCEl/3o=; b=TQ28wWbS/k/JeWisbHHGh/P45KvMQb3BIFeq4KM8Gpluzr9ZBFNpOgt/O+Vy0aRL0XEZMQ 5/jFFI4C5S0jsC7ARPSpRodRMZQSFAzUxrqpO5QrOpmXtyvUme94nEHjtiLHJAMQ7TDpTc czbMiDsr2MuK6/fCBA6omWVe5VbAytrf2lZwR/4fr8UYOnnP7C5Wp7WgKq8SdzQNGJnyfy oGqvGiA0aroj2WYYoOQ01Yerc8P1F1krNSpwFrAXjeJtom0TSAtu7BVlf4BMOR51iXcyzm YFlSmLq8FHXwPRtJgMBJzaOy1lFa140zNwRMzXUFpIEfZ4JNVGOi6WDVXUBc4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760598809; a=rsa-sha256; cv=none; b=a1YvI3oJrGMEg9hTvaZFIIY5ckdZzsasn5r9qdBGiAQNvayw6W90fKj6AZM3Qpj3yOEtLC 3HYycpF1xvJBQPncjLldcBcLzm7oD7DIRIBRqD2NN4xUNktBfIAr3hwf64UJreHo+FQe51 dl+WdS95XvwOQJNaADdF3tegtz8Je0HDQHdVhCZjmK1IJoMiFNE5M1r972//KXRDNCI2zi /hfQ7b3iXMDykiIjHCY1jM0vmK8XDKHmqcB3v0jgaL+kdcF2whX7huvVJt0RpD133hfN6j +VB4Aq023ZMnCpy2B0Y0+aNE3Jwh2QlYoi/YtoALNV0kM+GyJcfA0/Pf1Yj+6w== 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 4cnK1N6Yk7z1Cs1; Thu, 16 Oct 2025 07:13: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 59G7DSKx064272; Thu, 16 Oct 2025 07:13:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G7DSPL064269; Thu, 16 Oct 2025 07:13:28 GMT (envelope-from git) Date: Thu, 16 Oct 2025 07:13:28 GMT Message-Id: <202510160713.59G7DSPL064269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 057bc783c67e - stable/14 - arp(8): allow -i with -s List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 057bc783c67e8196d0b8c8c60a7eee6f7dc05805 Auto-Submitted: auto-generated The branch stable/14 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=057bc783c67e8196d0b8c8c60a7eee6f7dc05805 commit 057bc783c67e8196d0b8c8c60a7eee6f7dc05805 Author: Lexi Winter AuthorDate: 2024-05-05 18:21:06 +0000 Commit: Eugene Grosbein CommitDate: 2025-10-16 07:12:22 +0000 arp(8): allow -i with -s arp(8) usually disallows adding a static ARP entry for an IP address which is not configured on a local interface. Change this to allow such ARP entries to be added if '-i' is provided to specify the interface the ARP entry relates to. Due to limitations in the kernel lltable, this still requires that a host route exists for the target address, but allows static ARP entries to be configured to proxy ARP for, e.g., local jails which use an IPv4 address with a /32 route. Reviewed by: imp, zlei Pull Request: https://github.com/freebsd/freebsd-src/pull/1220 (cherry picked from commit 2356b60be7024b10ddc4361fc22f96205b55fbbb) --- usr.sbin/arp/arp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.sbin/arp/arp.c b/usr.sbin/arp/arp.c index fa2c595379d5..200912736137 100644 --- a/usr.sbin/arp/arp.c +++ b/usr.sbin/arp/arp.c @@ -156,7 +156,7 @@ main(int argc, char *argv[]) if (!func) func = F_GET; if (opts.rifname) { - if (func != F_GET && !(func == F_DELETE && opts.aflag)) + if (func != F_GET && func != F_SET && !(func == F_DELETE && opts.aflag)) xo_errx(1, "-i not applicable to this operation"); if ((opts.rifindex = if_nametoindex(opts.rifname)) == 0) { if (errno == ENXIO) @@ -387,7 +387,7 @@ set(int argc, char **argv) } } #ifndef WITHOUT_NETLINK - return (set_nl(0, dst, &sdl_m, host)); + return (set_nl(opts.rifindex, dst, &sdl_m, host)); #else return (set_rtsock(dst, &sdl_m, host)); #endif From nobody Thu Oct 16 07:15:19 2025 X-Original-To: dev-commits-src-branches@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 4cnK3W3sB7z6Ch0g; Thu, 16 Oct 2025 07:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnK3W2c7Nz3L04; Thu, 16 Oct 2025 07:15:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+Lsi4svnGszffw5MJfURORKRhk8mdBwKK6FvFa+206M=; b=FSNHK+k3el5zLMIR/VFhaDuJ6dLN2hXXUyjieSoLKZIx8EPpWpYdFYCI75Iin+XPWYf/B2 bWJJNmpNYkd03JZToLTVJVooCkSQxIJAGkj7JRYRSMIbIFtA7yNrnpba5lZWPJsRaPZPvM CtBYBs4HpFA3I4w4GEMUmzpKwQ+RHR6fSyiva8+T8byq7L/zGTuUDxr268RUi6Ug6+tZ9R SU0qOwsCZGzBbW3WL5idYheq2CsmLc1sGNozY03S7sgHaTClrmWKj5ew0K+H8Du1K0MKl2 D1HUGDHGqnLD5sw5Z3sh3F2o4n/3FuqvTmeTTwWZrnx04rbiaMat8KGwsuofEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760598919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+Lsi4svnGszffw5MJfURORKRhk8mdBwKK6FvFa+206M=; b=v1Y5jBRO98ITjL6bZGQdZxDBU7oxfSbRwdjFlI0sDMUj7GfUsUGhB1I2NxA0vyJu86omJR XPiOpJYOcdg1fZk6D5g2iiYt0jT7gyBY7di+hof13jNbnjqsQud5upVLvffx7G+5y6Mydw ROCkgKIwHMypz3yToTeTy5R+Ljt4nNuwjT56yeCIcttLhvg2ojSCqjVlvHhkZi4qov4+9o kbwtKDV0IeEH5BbQlbZL0CtuoZ/0A0yOzXIpZ9yAFO/Lu7jAo6SXUSzEGHxWk3VXvFbzHK hkvbcrgzylOyXn9L4pKuPn4l+vhmg2fQ/EjCilOWolp4R7pqm3+Pn4tfVhL4/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760598919; a=rsa-sha256; cv=none; b=qihtCITAWPkMb8/0G+RJyU0I66aFDG74LUHxsMM9ico1EN4kI05inyMAnnc4k+LiW157VF qMK5uWwKG4FwTkD+TMAcaCocgICtV29nwxGVgmUquTK8jOkBFOV58Ry22TkTZuRTvkhNX7 egrpOscy/frPzjrqOEPRhlu30kc05LBET6c55uokTJ6Yu0vdy1St0QKrHQWUpB4xLflspR iXciVx5L/vF8tUA5FnJRjBbf+bRnLXpctTBEp0XVKCLqv8hB/FjQc07K5ib38RYz09GcvS U5B8zx05Upgp0Fd4PB/Q52KxDPKpGQXaweK+pG3UNhmhKLmZfquzFoY/VET/eg== 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 4cnK3W21JMz1Cs2; Thu, 16 Oct 2025 07:15: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 59G7FJrs064913; Thu, 16 Oct 2025 07:15:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G7FJIa064910; Thu, 16 Oct 2025 07:15:19 GMT (envelope-from git) Date: Thu, 16 Oct 2025 07:15:19 GMT Message-Id: <202510160715.59G7FJIa064910@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 9d53ea06b320 - stable/14 - arp(8): Complete libxo transition List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9d53ea06b32097a648fedbaf4abbe8ee54951225 Auto-Submitted: auto-generated The branch stable/14 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=9d53ea06b32097a648fedbaf4abbe8ee54951225 commit 9d53ea06b32097a648fedbaf4abbe8ee54951225 Author: Yan-Hao Wang AuthorDate: 2024-10-12 14:38:45 +0000 Commit: Eugene Grosbein CommitDate: 2025-10-16 07:15:04 +0000 arp(8): Complete libxo transition Reviewed by: des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D41408 (cherry picked from commit 417842f908619336dd4c739a92c326ade2c35770) --- usr.sbin/arp/arp.c | 11 ++++++----- usr.sbin/arp/arp_netlink.c | 5 ++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/usr.sbin/arp/arp.c b/usr.sbin/arp/arp.c index 200912736137..fba6bdd57ed5 100644 --- a/usr.sbin/arp/arp.c +++ b/usr.sbin/arp/arp.c @@ -67,7 +67,6 @@ static char const sccsid[] = "@(#)from: arp.c 8.2 (Berkeley) 1/2/94"; #include #include -#include #include #include #include @@ -181,7 +180,8 @@ main(int argc, char *argv[]) xo_close_list("arp-cache"); xo_close_container("arp"); - xo_finish(); + if (xo_finish() < 0) + xo_err(1, "stdout"); } else { if (argc != 1) usage(); @@ -218,7 +218,7 @@ main(int argc, char *argv[]) if (ifnameindex != NULL) if_freenameindex(ifnameindex); - return (rtn); + exit(rtn); } /* @@ -458,7 +458,8 @@ get(char *host) xo_close_list("arp-cache"); xo_close_container("arp"); - xo_finish(); + if (xo_finish() < 0) + xo_err(1, "stdout"); return (found == 0); } @@ -735,7 +736,7 @@ nuke_entries(uint32_t ifindex, struct in_addr addr) static void usage(void) { - fprintf(stderr, "%s\n%s\n%s\n%s\n%s\n%s\n%s\n", + xo_error("%s\n%s\n%s\n%s\n%s\n%s\n%s\n", "usage: arp [-n] [-i interface] hostname", " arp [-n] [-i interface] -a", " arp -d hostname [pub]", diff --git a/usr.sbin/arp/arp_netlink.c b/usr.sbin/arp/arp_netlink.c index 24e01126044b..db1ef775dea2 100644 --- a/usr.sbin/arp/arp_netlink.c +++ b/usr.sbin/arp/arp_netlink.c @@ -2,7 +2,6 @@ #include #include #include -#include #include #include @@ -43,12 +42,12 @@ nl_init_socket(struct snl_state *ss) if (modfind("netlink") == -1 && errno == ENOENT) { /* Try to load */ if (kldload("netlink") == -1) - err(1, "netlink is not loaded and load attempt failed"); + xo_err(1, "netlink is not loaded and load attempt failed"); if (snl_init(ss, NETLINK_ROUTE)) return; } - err(1, "unable to open netlink socket"); + xo_err(1, "unable to open netlink socket"); } static bool From nobody Thu Oct 16 09:58:32 2025 X-Original-To: dev-commits-src-branches@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 4cnNgr32qJz6C98W; Thu, 16 Oct 2025 09:58:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnNgr2S70z3cC5; Thu, 16 Oct 2025 09:58:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760608712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHNT8DaUoPkRG2Jbu7wZpAbfYI0+gskkhnjyNrVPa0s=; b=YwCCXgv8jRojN4dA3sh+tL5tjJw4juHejpImeoWOspApxqy+kjqvYZSZ+AKnnPpEna0HTJ d683avnGQ2l1/sCkA8lXgdif2EvF4NUtinlrdvqmneYgZeH0MMfHvczYN1OGx3dbttr5XY iu9D23g79v798VbWQnZvB7Y95y4usUnao0R1t5x9bsi7heRiM35e3VoBJJgxIGDk9NCiN5 Y36UKvt069cCw6kxSAB1N2y5VCwkrP5raXaMhJyhRxrN4uAihQ4qhffIPqEtZd5f2xHyuV yjBjhetdJhvV2bi8Xgq/cYL44oRA3cC2ZoVJmrU1gBJDjg1xEExw4zfk5dz45A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760608712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHNT8DaUoPkRG2Jbu7wZpAbfYI0+gskkhnjyNrVPa0s=; b=VnJrpP5Wsz9hr89zbSRMt+iCL31wQXPtA+M5z/7ydjd4Z5+c63ruq1LkhZT/5q5Pgseqcc 2pGUYlEF1sTinxtoeOVhDJic2X/BlEgXOi0LL9Z76LLHJk4U2B+I7lTDu+Tfe7dKgMMt7m 6rN/XMU+eEDYNbQaNVZwRhjilutJ5qCORaty0oZME0d6c4z5YlB4Q5uS3b99RCMtlMrdHL H5UBMDe/TCSvXowCpp1bL9krf24xv/6dRDC3Qpe2Jwrqq3Lz6cRMn9rmKoLhMIHIHPMNy4 MqEyoSE2v+d6lvDexBRaK/UxbYYOdClC2viTBJkgRwiOGfDbtIe5A+YL1qU0eQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760608712; a=rsa-sha256; cv=none; b=m0ISUH76TnXcOwe1LSGWy8EB051TsysPQjW/5Ivsf7M4k4Ixk2itwtGAcP1PpkEus+rELb Kw4YZ/2agM1PfPLz1y8JiuHSyDtxbjSwpKW/srHTHptjYMP+D8DRLFXjq8/VslSP/e56vF TaeaH/CBM+kPzYmWpg+gY4kKxHduKlFxFR8PLuA3lAO04f+VE39B5ZcnT5yNjttP6mQHFp khq1nGmfR+T8042PC/+iy+Vt2oV8J8eFsCIfd4lht4jUMsO5tpTdCV8Nbf87A1cYgCvdLf /29dcspchhcG5xlrWJ3pjODya/x9fFR2tXKSOi1hekfJIY27wcRZjkYrlv0OyA== 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 4cnNgr23Cmz1HpB; Thu, 16 Oct 2025 09:58: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 59G9wWVr066135; Thu, 16 Oct 2025 09:58:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59G9wWQC066132; Thu, 16 Oct 2025 09:58:32 GMT (envelope-from git) Date: Thu, 16 Oct 2025 09:58:32 GMT Message-Id: <202510160958.59G9wWQC066132@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 258cde4b2e48 - stable/14 - tcp lro: use the flowid only when it has hash properties List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 258cde4b2e4832bfaa49c800754aec8800a388c7 Auto-Submitted: auto-generated The branch stable/14 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=258cde4b2e4832bfaa49c800754aec8800a388c7 commit 258cde4b2e4832bfaa49c800754aec8800a388c7 Author: Michael Tuexen AuthorDate: 2025-10-09 12:37:11 +0000 Commit: Michael Tuexen CommitDate: 2025-10-16 09:57:10 +0000 tcp lro: use the flowid only when it has hash properties When a packet is provided to LRO using tcp_lro_queue_mbuf(), a sequence number is computed based on the m_pkthdr.flowid provided by he driver. The implicit assumption is that the m_pkthdr.flowid has hash properties. The recent use of tcp_lro_queue_mbuf() in iflib exposed a bug in at least one driver (igc) , which * reports always that is uses M_HASHTYPE_OPAQUE. * sets in some cases m_pkthdr.flowid not consistently for packets belonging to the same TCP connection. This results in severe performance problems for the base TCP stack, since it handles the packets in the wrong sequence, although they were received in the correct sequence. To protect against such misbehaving drivers, just take the m_pkthdr.flowid only into account, if it has hash properties. The performance problems were observed by gallatin@ and analyzed together with rrs@. Reviewed by: gallatin Tested by: gallatin Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52989 (cherry picked from commit 73f56fa542ecf6ea6819c9e17fc60962eeb726d8) --- sys/netinet/tcp_lro.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/netinet/tcp_lro.c b/sys/netinet/tcp_lro.c index 2a5839440d69..045412f6856a 100644 --- a/sys/netinet/tcp_lro.c +++ b/sys/netinet/tcp_lro.c @@ -1475,10 +1475,11 @@ tcp_lro_queue_mbuf(struct lro_ctrl *lc, struct mbuf *mb) } /* create sequence number */ - lc->lro_mbuf_data[lc->lro_mbuf_count].seq = - (((uint64_t)M_HASHTYPE_GET(mb)) << 56) | - (((uint64_t)mb->m_pkthdr.flowid) << 24) | - ((uint64_t)lc->lro_mbuf_count); + lc->lro_mbuf_data[lc->lro_mbuf_count].seq = lc->lro_mbuf_count; + if (M_HASHTYPE_ISHASH(mb)) + lc->lro_mbuf_data[lc->lro_mbuf_count].seq |= + (((uint64_t)M_HASHTYPE_GET(mb)) << 56) | + (((uint64_t)mb->m_pkthdr.flowid) << 24); /* enter mbuf */ lc->lro_mbuf_data[lc->lro_mbuf_count].mb = mb; From nobody Thu Oct 16 16:58:19 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0C2mnVz6CnQr; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0C25dwz3k2J; Thu, 16 Oct 2025 16:58:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rTrLvoAErp31NzliMloosw6m294NQxreRSGFC2zj2uA=; b=tEYK7hK1eEVB+Oxd82wJ+sAG1oaMO9vpqY+QOnrv2QPWSUQITb1imphiD+Q/fT0xlzHuun s8osHRi7q7hM6s2lzDY2bx4nIawMl0VWnx+sYS3ve4JxZwqQ2WiBp32+ryMtDv5aHLw0QA ffFVqCI+mBeQs7UAcQkHTnHVIn38GPRLfaUMQ9pCBZtNP6hCjRqXDNxsxp8B7M2AQNvqzu VpFJ4hRdfGlsQPGxaPkEiU3MCgtzbFTdVYAjYU/+IhqJQGhudvXBkxYEOERecgLSHsNFnG 4Ca8mlOTaLH4336IENiGuSpsAs062yVuhkIr/MygFGmIH52kfR3xb8qtMPct0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rTrLvoAErp31NzliMloosw6m294NQxreRSGFC2zj2uA=; b=PxuBJauQjAXIpF2CmRqaa+Rdghdiw26GEpBt4C5cAeoxhlNx6QfbZyYDErDVcNfJ4WhlrJ BRQWzcFGevH1Ia93qZMrK0rFlS0mvLA7OUf5jKkVrgDbuTI4gj51hvrycT9QqzvJIhAys8 hZJj8A3Rr+6oGp0xqBbJ87LMYRv2nApmLKL4RnPm9Bw9ELdJw8eTu1yZGvAg7pKRDu553Z jjBK4tHVIFjklpD8JAozAh3C7Q3YtYEMOFM5Gt0LD0PPpf1FfR+3aE8u9R3dbBojacG3Sr cf7d6d8RBF7lJgtSI46YmYi4gGhEDr1s3zfYNoAe/oSJWKFLK2fXmVXt6RpLsg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633899; a=rsa-sha256; cv=none; b=Li7HxdCpLZ/ZzWbrWAm+LRT31iylNCo0Ciym+TLNYS5hsh2pHygSZiBhKO3TRCyitd9Vne A0RMv0y6B96sNHKjb0ey1nxJ57u/6YAog5RSrmcDu2TVD6ueubeak6F6KKOUjIua2XxNWk 8v6m5Mzydac33zmmHn863FOE3t8b5ZHT0d49w6mYhdnv41f1ChO8MlRbEjXExpIsChMf71 UK1bQGGHyOUoaB3z/ep5N5AsfsnjF7MsPdz7CDszfy4yTZHPg92EaSMxJDfEHIQk2pU4i/ JETtsnVg4O4w/4izkeE+moC7/LESdMOePiaOHSVmXkJ1QFqrK/7pT+d17DvkUg== 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 4cnZ0C1b1Hz2Gc; Thu, 16 Oct 2025 16:58: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 59GGwJnL055705; Thu, 16 Oct 2025 16:58:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwJF0055701; Thu, 16 Oct 2025 16:58:19 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:19 GMT Message-Id: <202510161658.59GGwJF0055701@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: 5e482104ecfa - stable/15 - sys/rpc: UNIX auth: Rename 'ngroups' => 'supp_ngroups' for clarity List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 5e482104ecfa57b6debc3c495f2dcb2d2ea50ea2 Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=5e482104ecfa57b6debc3c495f2dcb2d2ea50ea2 commit 5e482104ecfa57b6debc3c495f2dcb2d2ea50ea2 Author: Olivier Certner AuthorDate: 2025-10-07 10:03:07 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:39 +0000 sys/rpc: UNIX auth: Rename 'ngroups' => 'supp_ngroups' for clarity MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit bda3b61512b2597d4c77d2b9c9074b844dec0405) --- sys/rpc/authunix_prot.c | 16 ++++++++-------- sys/rpc/svc_auth_unix.c | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index b107d5541c50..f63a6d3f9dc6 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -60,7 +60,7 @@ bool_t xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) { uint32_t namelen; - uint32_t ngroups, i; + uint32_t supp_ngroups, i; uint32_t junk; char hostbuf[MAXHOSTNAMELEN]; @@ -102,14 +102,14 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) * historical layout of preserving the egid in cr_ngroups and * cr_groups[0] == egid. */ - ngroups = cred->cr_ngroups - 1; - if (ngroups > NGRPS) - ngroups = NGRPS; + supp_ngroups = cred->cr_ngroups - 1; + if (supp_ngroups > NGRPS) + supp_ngroups = NGRPS; } - if (!xdr_uint32_t(xdrs, &ngroups)) + if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); - for (i = 0; i < ngroups; i++) { + for (i = 0; i < supp_ngroups; i++) { if (i < ngroups_max) { if (!xdr_uint32_t(xdrs, &cred->cr_groups[i + 1])) return (FALSE); @@ -120,10 +120,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) } if (xdrs->x_op == XDR_DECODE) { - if (ngroups > ngroups_max) + if (supp_ngroups > ngroups_max) cred->cr_ngroups = ngroups_max + 1; else - cred->cr_ngroups = ngroups + 1; + cred->cr_ngroups = supp_ngroups + 1; } return (TRUE); diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 963f4f272964..aad4e7610795 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -65,7 +65,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) uint32_t time; struct xucred *xcr; u_int auth_len; - size_t str_len, gid_len; + size_t str_len, supp_ngroups; u_int i; xcr = rqst->rq_clntcred; @@ -84,12 +84,12 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); - gid_len = (size_t)IXDR_GET_UINT32(buf); - if (gid_len > NGRPS) { + supp_ngroups = (size_t)IXDR_GET_UINT32(buf); + if (supp_ngroups > NGRPS) { stat = AUTH_BADCRED; goto done; } - for (i = 0; i < gid_len; i++) { + for (i = 0; i < supp_ngroups; i++) { /* * Note that this is a `struct xucred`, which maintains * its historical layout of preserving the egid in @@ -100,18 +100,18 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) else buf++; } - if (gid_len + 1 > XU_NGROUPS) + if (supp_ngroups + 1 > XU_NGROUPS) xcr->cr_ngroups = XU_NGROUPS; else - xcr->cr_ngroups = gid_len + 1; + xcr->cr_ngroups = supp_ngroups + 1; /* * five is the smallest unix credentials structure - * timestamp, hostname len (0), uid, gid, and gids len (0). */ - if ((5 + gid_len) * BYTES_PER_XDR_UNIT + str_len > auth_len) { + if ((5 + supp_ngroups) * BYTES_PER_XDR_UNIT + str_len > auth_len) { (void) printf("bad auth_len gid %ld str %ld auth %u\n", - (long)gid_len, (long)str_len, auth_len); + (long)supp_ngroups, (long)str_len, auth_len); stat = AUTH_BADCRED; goto done; } From nobody Thu Oct 16 16:58:20 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0D3N0Gz6Cnj4; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0D2Vrzz3js4; Thu, 16 Oct 2025 16:58:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633900; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+3/V49JVRpfThJoujR6KqodNfAv9ISWZaSqmqQXNlZo=; b=NyfBd5B9Pmz1MIPnMD1rwYrxSsg0dLmuFgNeNOf67o1K2WpdjIyHsef+xfKnqDff3bpwSh 7lY3H0BXmeDUM/nOFb0C0TQSihdBgeijIAmIWKT0iFCpITXnLPseJa7t07myWKEGJ0HGB6 DoND7jUHibozwgjgO0r4naY516CIxOwyDzX/x/FuyVW+oNM3QrdoJxdocdJg+Oamcx4cLA GSetu4aBYky6eqeIV+ZFOqGK90QPLtcbXS03H0N03PwxulNZfZM2A4HxfLzPL2Bqc22iLa 3o21WIdyTp/WKHiKdeYrZYzt318oKwUa7XFgASGBmzK9qH7H1R7/GKSN2rUncQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633900; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+3/V49JVRpfThJoujR6KqodNfAv9ISWZaSqmqQXNlZo=; b=ejkPPOC/ysPIYR2WNd3XF1vm0vBWYYRRc7CANTO25tTZFQdax/eFwcALu9Ynd3jvUpp18j 9HoFsKpzFC7U0ADX8TZaH8Z0NYvR/ZpAYmNqAY0MLR7itefcpFvrxtsiSdUCKM0eFjc96b Xd3S55GGFJbSM6PD+QcJPPMgNtyLt+mgsTM48478yGNAwYW/qXAlqDVIr6AvGsLxydbZW7 mXGgIOrWL0WWg8IIjNvjH+QHvk6J0P8F7oXny8frce8qFmEyu2ROW7gXtFTo44BYfd6y8F 5+OfNASMCIMNdhD2x/6tdI9k9hS1hwhexxfypKzh5SrDErYSKeMsm+GeYZy7Sg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633900; a=rsa-sha256; cv=none; b=k87qPYH5uAorv7Dy316yw8ZPlPOcaQtoSKxRnDim8v/cpv58dY6/tNXoWb2PegPQlfFQZM fYHlepgR54pMZTsVgkDUyhPL0vhWMtNETHAbxV8yDxXm33OOXyQfoA65x5ijPDOKuihZkz Pv3xYyz2s+ew1YR5DFNF5ltdZbpkeYX/Pg0HEbCVjU2fmRSIc/9jjOTzG3hY/pT1jtTZU2 nKe4bCsXeTfPqEGPbphE7RT9dYxNojSXz2V2yENwXMQDbw6rcvpLHU6DObOnux2Y344dfd BLq5tKmTnx6Zl5PONrX5dJMZIhduhULgVoZnYDil6KYZSJmpgnqyym7Y3IQ8fg== 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 4cnZ0D22JFz25P; Thu, 16 Oct 2025 16:58: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 59GGwKw9055739; Thu, 16 Oct 2025 16:58:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwKsd055736; Thu, 16 Oct 2025 16:58:20 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:20 GMT Message-Id: <202510161658.59GGwKsd055736@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: 9492a1e27fb1 - stable/15 - sys/rpc: UNIX auth: Fix OOB accesses, notably writes on decode List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 9492a1e27fb18fcd6122bbd9ddcd853ee7693417 Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=9492a1e27fb18fcd6122bbd9ddcd853ee7693417 commit 9492a1e27fb18fcd6122bbd9ddcd853ee7693417 Author: Olivier Certner AuthorDate: 2025-10-07 10:02:23 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:45 +0000 sys/rpc: UNIX auth: Fix OOB accesses, notably writes on decode When the received authentication message had more than XU_NGROUPS, we would write group IDs beyond the end of cr_groups[] in the 'struct xucred' being filled (as 'ngroups_max' is always greater than XU_NGROUPS). For robustness, prevent various OOB accesses that would result from a change of value of XU_NGROUPS or a 'struct xucred' with an invalid 'cr_ngroups' field, even if these cases are unlikely. Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52960 (cherry picked from commit 47e9c81d4f1324674c624df02a51ad3a72aa7444) --- sys/rpc/authunix_prot.c | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index f63a6d3f9dc6..89f0ab3ed44e 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -75,7 +75,6 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) } else { namelen = 0; } - junk = 0; if (!xdr_uint32_t(xdrs, time) || !xdr_uint32_t(xdrs, &namelen)) @@ -93,15 +92,25 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_uint32_t(xdrs, &cred->cr_uid)) return (FALSE); + + /* + * Safety check: The protocol needs at least one group (access to + * 'cr_gid', decrementation of 'cr_ngroups' below). + */ + if (xdrs->x_op == XDR_ENCODE && cred->cr_ngroups == 0) + return (FALSE); if (!xdr_uint32_t(xdrs, &cred->cr_gid)) return (FALSE); if (xdrs->x_op == XDR_ENCODE) { /* - * Note that this is a `struct xucred`, which maintains its - * historical layout of preserving the egid in cr_ngroups and - * cr_groups[0] == egid. + * Note that this is a 'struct xucred', which still has the + * historical layout where the effective GID is in cr_groups[0] + * and is accounted in 'cr_ngroups'. We substract 1 to obtain + * the number of "supplementary" groups, passed in the AUTH_SYS + * credentials variable-length array called gids[] in RFC 5531. */ + MPASS(cred->cr_ngroups <= XU_NGROUPS); supp_ngroups = cred->cr_ngroups - 1; if (supp_ngroups > NGRPS) supp_ngroups = NGRPS; @@ -109,22 +118,15 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); - for (i = 0; i < supp_ngroups; i++) { - if (i < ngroups_max) { - if (!xdr_uint32_t(xdrs, &cred->cr_groups[i + 1])) - return (FALSE); - } else { - if (!xdr_uint32_t(xdrs, &junk)) - return (FALSE); - } - } - if (xdrs->x_op == XDR_DECODE) { - if (supp_ngroups > ngroups_max) - cred->cr_ngroups = ngroups_max + 1; - else - cred->cr_ngroups = supp_ngroups + 1; - } + junk = 0; + for (i = 0; i < supp_ngroups; ++i) + if (!xdr_uint32_t(xdrs, i < XU_NGROUPS - 1 ? + &cred->cr_sgroups[i] : &junk)) + return (FALSE); + + if (xdrs->x_op != XDR_ENCODE) + cred->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); return (TRUE); } From nobody Thu Oct 16 16:58:22 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0H3fw6z6Cnj6; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0G4v2xz3k7R; Thu, 16 Oct 2025 16:58:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EHdhCOHiIzx7zVdzE2qzqEzrVWDeLYb59xtDpAZ1DXI=; b=W+g9cvuDwQ+ksjdiqETiezxDlYGw54qb+o4G+iKaNRyIo+iXl729vgbr/0Kjja84lsrxvp EJif+CsbCUv9BoxB7qPUBjTgnJ1R2V0ezL9sFNmA852kDX8kgkJAGwkSb1NHBkTpGQvsnF +8/TShpsp133Oi0BSVp3Isbo4EOTgN8HjlVbbjK+mNmMPii3MAcE3QL20hyN4FbgpmKe5I LPuSAniCkgN+csW3q85J34Wdx4fz0zn/cZzoYPdt12nEUe10X9bKqYRB5VIV4UaR/I+JLo K3wj6lncjJndqY/Qs837TtYMKiFcfKWnTwxtS976WcDp9+sZktyg2CE3bja81w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EHdhCOHiIzx7zVdzE2qzqEzrVWDeLYb59xtDpAZ1DXI=; b=XdBPJxVxY3Ew6AcuuLw+de2oT70gbSGalmoCaOj/plwLThBYG/7Sg96HlRTySVknpK3uVP mLenPUGUGwRqKwsneNNJ9CwnoPzPPpISb1YyXyacTFegKpM7/dUmEq9r2hbXkHgshpLHSk 5GydTti/tu9jlwi/6sUNngtqanYUz+x8dBjTCN4gsgT3C5JD8rQxifg3uaC5e0lCSS89LQ gYLrTdJq1aBencG7HcP2RoOYOYMdHfccMQZVfr0lscVFE8XMBX+1ikgNUUPYuZh+WkAguQ dsxy+X3E2z4tUXMkl4DfMAYVYhLQpEcq51T3gOOq4V9kALnbpLybHifSFrmysA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633902; a=rsa-sha256; cv=none; b=u/JU3P/M4AhwogSRr4RiY3P7GGGHI8PhlcLD3oBnqB0Jh925KM0Pwftm447vh3kHJ2B9or 5693cdPKaMrmlrsKfQoA8/jppUWeJZK1DmgsSiW2JwXs+aGs1NYvziQ0kZfEeZ2EAwvXCg AosBn5OqvREuh/1atxKwm173O3n85lBhFR3uuowa+bg8bHuN+acOX95qygeK00wPEcc5yk SqAEb9J81bRoZfQmcVeJJsdBnGwJJgJDr4oIt244jItdNvzNCx/ySNdNCgBmQ9YQIuOrUQ hthUte1KjorUIp3UQ1U5IhO3T6bZeE8uhqaBAB1f1xD50FFBoJriNvVHGONXYw== 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 4cnZ0G3nhLz2Cd; Thu, 16 Oct 2025 16:58: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 59GGwMXc055806; Thu, 16 Oct 2025 16:58:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwMPh055803; Thu, 16 Oct 2025 16:58:22 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:22 GMT Message-Id: <202510161658.59GGwMPh055803@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: 34fc20503f04 - stable/15 - sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (1/2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 34fc20503f04e3c035844f4bfa8eb72964ccbf68 Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=34fc20503f04e3c035844f4bfa8eb72964ccbf68 commit 34fc20503f04e3c035844f4bfa8eb72964ccbf68 Author: Olivier Certner AuthorDate: 2025-10-07 08:46:56 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:45 +0000 sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (1/2) Consistently with the XDR_INLINE() variant of xdr_authunix_parms() (_svcauth_unix() in 'svc_auth_unix.c'), reject messages with credentials having a machine name length in excess of AUTH_SYS_MAX_HOSTNAME or more than AUTH_SYS_MAX_GROUPS supplementary groups, which do not conform to RFC 5531. This is done mainly because we cannot store excess groups anyway, even if at odds with the robustness principle ("be liberal in what you accept"). While here, make sure the current code is immune to AUTH_SYS_MAX_GROUPS changing value (in future RFCs?) even if that seems improbable. Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52962 (cherry picked from commit b119ef0f6a81eb32b0e1cd0075cec499543e7ddd) --- sys/rpc/authunix_prot.c | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index 89f0ab3ed44e..c1a9f90bbe28 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -50,9 +50,6 @@ #include -/* gids compose part of a credential; there may not be more than 16 of them */ -#define NGRPS 16 - /* * XDR for unix authentication parameters. */ @@ -65,13 +62,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) char hostbuf[MAXHOSTNAMELEN]; if (xdrs->x_op == XDR_ENCODE) { - /* - * Restrict name length to 255 according to RFC 1057. - */ getcredhostname(NULL, hostbuf, sizeof(hostbuf)); namelen = strlen(hostbuf); - if (namelen > 255) - namelen = 255; + if (namelen > AUTH_SYS_MAX_HOSTNAME) + namelen = AUTH_SYS_MAX_HOSTNAME; } else { namelen = 0; } @@ -87,6 +81,8 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_opaque(xdrs, hostbuf, namelen)) return (FALSE); } else { + if (namelen > AUTH_SYS_MAX_HOSTNAME) + return (FALSE); xdr_setpos(xdrs, xdr_getpos(xdrs) + RNDUP(namelen)); } @@ -112,13 +108,30 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) */ MPASS(cred->cr_ngroups <= XU_NGROUPS); supp_ngroups = cred->cr_ngroups - 1; - if (supp_ngroups > NGRPS) - supp_ngroups = NGRPS; + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) + /* With current values, this should never execute. */ + supp_ngroups = AUTH_SYS_MAX_GROUPS; } if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); + /* + * Because we cannot store more than XU_NGROUPS in total (16 at time of + * this writing), for now we choose to be strict with respect to RFC + * 5531's maximum number of supplementary groups (AUTH_SYS_MAX_GROUPS). + * That would also be an accidental DoS prevention measure if the + * request handling code didn't try to reassemble it in full without any + * size limits. Although AUTH_SYS_MAX_GROUPS and XU_NGROUPS are equal, + * since the latter includes the "effective" GID, we cannot store the + * last group of a message with exactly AUTH_SYS_MAX_GROUPS + * supplementary groups. We accept such messages so as not to violate + * the protocol, silently dropping the last group on the floor. + */ + + if (xdrs->x_op != XDR_ENCODE && supp_ngroups > AUTH_SYS_MAX_GROUPS) + return (FALSE); + junk = 0; for (i = 0; i < supp_ngroups; ++i) if (!xdr_uint32_t(xdrs, i < XU_NGROUPS - 1 ? From nobody Thu Oct 16 16:58:21 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0F6GwQz6CntC; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0F3L79z3k2K; Thu, 16 Oct 2025 16:58:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IBjD641ZAn7xKm/wHCVeCLmV5POqy/6L7IeMiPR//Rg=; b=wVLdKuB32QpdpJaNKWWDgo+lqac0oKzi5n3pAGun04/yFr0pfsShnz3JqeaEMCIg+V9VVU IXnrphUxF0IEhSmGCjQsYQ0CXTjh+HfdviS/+DjNx5oMOATGl6ICzZ6peZMa3ZkdA7ES7N LpACbDcWvtyYZBsBmKlr+GtNE8vCNjNdr2hmZKkiDEAL1phklu1OrQh1E6E7r+n5EgCD4M 0Epe6oZTHJ2l/PXmmCSNo6bnD8PpfJPJ5N99hGOde9FhDy2ER41MX+CCAs0A+bxikwevt+ Ki08i0Ygb41ECkTrLTzoKXTgOVcQM3z9TYr5wKA6+CgAjou+Ktx8fHiDiBH34Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IBjD641ZAn7xKm/wHCVeCLmV5POqy/6L7IeMiPR//Rg=; b=n7z0MsNhue2jV3ozUIEQXMKObu43hdxy1ko/WlsDK9JcmjGCPx4dJm0pJZTVTgqjmr9LqN g9KJobnBo1ctNMa2RMLLlo6mfKQSxP58qDxJZFBAfakWDyxRPcmw8Iq4Y5MKpd6BH2I9TL FQ8djsX1hzj5mztBLsDLyJCLQT4ogPwpJQGuBe2JKwD6s8YTRSXmvnKYraMBH18Xk0Qw1Q 6P2ySBh0LTP/HfoEf88wOGamtd5P1v73UDPCcDNX+3UgKdLocCDq/d0PxPFvmw4k5UwnaX sqtJoXYhdI1bWp5NbIkYzHY9bo46VIjWfwd6fvHemni9YErW5YPLWVAxbSdGdA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633901; a=rsa-sha256; cv=none; b=CSJAxTz4gTflh/P4M1G3eRi+8vgJiRnP1e6m23BXPpZDaSAsXyGK11Wgp4DSuUi9L4tEEp qtceD2pSgqb0YtOxYPZUP3uSr1KFIGNIwQ8sHD+JUFg7csWYuxcgbaD0JjtPfS72gpCW+n 5Udrl5WHyGGDXMMOpsfX+DS4AEhB1/Cgra5o4me8bFryDIiGDq9tXB9++F+CL2HaWKrK7F YrwqHZWzm+9kBuGmGw8ElrXZlrGVANlDPnLxgwMnGoTH2vDfZJfOJxy8/MwDtZqh8DgXMk 3Tbw+0/0pDJBVXWT7XMTyBN1b6jPHvyV/YPA3q3oayMGHjZFNiEMvQ11H4j2QA== 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 4cnZ0F2pX4z2Rk; Thu, 16 Oct 2025 16:58: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 59GGwLtf055772; Thu, 16 Oct 2025 16:58:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwLXD055769; Thu, 16 Oct 2025 16:58:21 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:21 GMT Message-Id: <202510161658.59GGwLXD055769@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: 37aeac44647d - stable/15 - sys/rpc: Define AUTH_SYS_MAX_{GROUPS,HOSTNAME} List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 37aeac44647dbf2c194c70a56a3fd52aef365aba Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=37aeac44647dbf2c194c70a56a3fd52aef365aba commit 37aeac44647dbf2c194c70a56a3fd52aef365aba Author: Olivier Certner AuthorDate: 2025-10-07 07:51:23 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:45 +0000 sys/rpc: Define AUTH_SYS_MAX_{GROUPS,HOSTNAME} As, respectively, the maximum number of "supplementary" groups and the maximum hostname size allowed in the credentials structure for AUTH_SYS (aka, AUTH_UNIX). Will be used in subsequent commits. Reviewed by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52961 (cherry picked from commit f7c4f800cc0b4fac1c99cda8e22d46b67592f9fa) --- sys/rpc/auth.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/rpc/auth.h b/sys/rpc/auth.h index 33c33ffd594d..648fb99a3a27 100644 --- a/sys/rpc/auth.h +++ b/sys/rpc/auth.h @@ -354,6 +354,10 @@ __END_DECLS #define RPCSEC_GSS 6 /* RPCSEC_GSS */ #define AUTH_TLS 7 /* Initiate RPC-over-TLS */ +/* RFC 5531's prescribed limits for variable-lenth arrays. */ +#define AUTH_SYS_MAX_HOSTNAME 255 +#define AUTH_SYS_MAX_GROUPS 16 /* Supplementary groups. */ + /* * Pseudo auth flavors for RPCSEC_GSS. */ From nobody Thu Oct 16 16:58:24 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0K3p3Tz6CnjB; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0J6DNcz3jtj; Thu, 16 Oct 2025 16:58:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Piog4mNq/r8CHwX9m3uywnIWfYAjGwUMXxk9dhcHZjM=; b=plfGmtUSq/bYPJmEUs8wO2JzZgKPK6r3L1Lj8+3Akgh57HMJR5bD6NSDUResa0D+zihsz1 H/qmwqt7PQ6KlgavCHrii0MqvvH+mQl5cHYoh3IPRxMX99ZExBF6mQP1g0vPUlzpT9AyEg 8c3w7aObqjEV10ojGA7fbiNZ31pxwiq93LV3bJkehidRB/Qp9LUamwdyW3CCYN1Iw2umXd RvxrfemujCPG337kIZEDaYJ+ixBrVmLprAy71aZc+uXoTkPkyxzfQNcBRO5L1EmEzGnbBf dZx1jpNQkWguoKtH4uWnaAKDns7LxGOksBB8crzuIlbsFruoFJeE6QEkMfbMYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Piog4mNq/r8CHwX9m3uywnIWfYAjGwUMXxk9dhcHZjM=; b=hUBA7t4OTDUF59tYXWeU0RGfsRbfN7WuWJBMxkbKp1xo3Xs3eTgQvgfCiZmAo8yvzTvGPv Y5sXlhpxKfqDw74CovEYLONbU2sUTL+efwZpHPLhV9Bc2pZx2BXbYY/61aYlJMRVj+YEqV LGXjg9fS6RQHROfrr/FQRqs2WjaJJHZxpNnXmWNFfoQdX3J0idsI3LkiPtJQ8QmPWZkZMY qcu7gTPWZ2+ZbcCaVgz3C4JIopkAKfghw0nVHsK9ySwWT1rK4pT76EQuWVb1TcV3O34I0y k1XEkfbSYEjabHGn400rJAiGDVwmQClest3x6DM+aFrur1nvETmR2wHZlGdw2g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633904; a=rsa-sha256; cv=none; b=dwzPRzUlkGgWQMYDAOYo7bDfvWk4zFj9nseEGbnZR5ykS1vX/a8lk1D3lYH0FfHyPaSzjA uU0uyrm4TnApq/d0Nqt2ua7FbHfCS6cNXH/NvyrFMqyHRGHCgbyjiI447iUHVQCCfZ0cNR iTDmOG7/y4x6byy1kK9x7TNpJHm/ugV4RIyoK0Yo5xkJK6L8rm1rrQIHF3Q5mf+YgbnPDq fVJF5pKSecdcWSIVMoufZbacOBrgaplDgidqThpTjnlzSQ3Imc6LsMz4vv32IRHKOWcBK0 DpzjRPYvEAe50GG5LnuaPUbJN7JAUuTGhfgwyLxSfbh+UmouIwvB9/nqAUk3lA== 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 4cnZ0J5n39z2V5; Thu, 16 Oct 2025 16:58: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 59GGwOHN055877; Thu, 16 Oct 2025 16:58:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwOLH055874; Thu, 16 Oct 2025 16:58:24 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:24 GMT Message-Id: <202510161658.59GGwOLH055874@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: 45e671c9cd3b - stable/15 - sys/rpc: UNIX auth: Fix OOB reads on too short message List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 45e671c9cd3b92ad20addf340f96399d0055df7a Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=45e671c9cd3b92ad20addf340f96399d0055df7a commit 45e671c9cd3b92ad20addf340f96399d0055df7a Author: Olivier Certner AuthorDate: 2025-10-07 15:51:16 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:46 +0000 sys/rpc: UNIX auth: Fix OOB reads on too short message In the inline version (_svcauth_unix()), fix multiple possible OOB reads when the credentials part of a request is too short to contain mandatory fields or with respect to the hostname length or number of groups it advertises. The previously existing check was arriving too late and relied on possibly wrong data coming from earlier OOB reads. While here, use 'uint32_t' as the length/size type, as it is more than enough and removes the need for conversions, explicit or implicit. While here, factor out setting 'stat' to AUTH_BADCRED and then jumping to 'done' on error, through the new 'badcred' label. While here, through comments, refer to what the non-inline version is doing (xdr_authunix_parms() in 'authunix_prot.c') and the reasons. Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52964 (cherry picked from commit d4cc791f3b2e1b6926420649a481eacaf3bf268e) --- sys/rpc/svc_auth_unix.c | 99 ++++++++++++++++++++++++++++++------------------- 1 file changed, 60 insertions(+), 39 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index b3389bc79511..4d5535a4fee2 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -59,11 +59,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) enum auth_stat stat; XDR xdrs; int32_t *buf; - uint32_t time; struct xucred *xcr; - u_int auth_len; - size_t str_len, supp_ngroups; - u_int i; + uint32_t auth_len, time; xcr = rqst->rq_clntcred; auth_len = (u_int)msg->rm_call.cb_cred.oa_length; @@ -71,51 +68,71 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) XDR_DECODE); buf = XDR_INLINE(&xdrs, auth_len); if (buf != NULL) { - time = IXDR_GET_UINT32(buf); - str_len = (size_t)IXDR_GET_UINT32(buf); - if (str_len > AUTH_SYS_MAX_HOSTNAME) { - stat = AUTH_BADCRED; - goto done; + /* 'time', 'str_len', UID, GID and 'supp_ngroups'. */ + const uint32_t min_len = 5 * BYTES_PER_XDR_UNIT; + uint32_t str_len, supp_ngroups; + + if (auth_len < min_len) { + (void)printf("AUTH_SYS: Too short credentials (%u)\n", + auth_len); + goto badcred; } + time = IXDR_GET_UINT32(buf); + str_len = IXDR_GET_UINT32(buf); + if (str_len > AUTH_SYS_MAX_HOSTNAME) + goto badcred; str_len = RNDUP(str_len); + /* + * Recheck message length now that we know the value of + * 'str_len' (and that it won't cause an overflow in additions + * below) to protect access to the credentials part. + */ + if (auth_len < min_len + str_len) { + (void)printf("AUTH_SYS: Inconsistent credentials and " + "host name lengths (%u, %u)\n", + auth_len, str_len); + goto badcred; + } buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); - supp_ngroups = (size_t)IXDR_GET_UINT32(buf); - if (supp_ngroups > AUTH_SYS_MAX_GROUPS) { - stat = AUTH_BADCRED; - goto done; - } - for (i = 0; i < supp_ngroups; i++) { - /* - * Note that this is a `struct xucred`, which maintains - * its historical layout of preserving the egid in - * cr_ngroups and cr_groups[0] == egid. - */ - if (i + 1 < XU_NGROUPS) - xcr->cr_groups[i + 1] = IXDR_GET_INT32(buf); - else - buf++; + supp_ngroups = IXDR_GET_UINT32(buf); + /* + * See the herald comment before a similar test at the end of + * xdr_authunix_parms() for why we strictly respect RFC 5531 and + * why we may have to drop the last supplementary group when + * there are AUTH_SYS_MAX_GROUPS of them. + */ + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) + goto badcred; + /* + * Final message length check, as we now know how much we will + * read in total. + */ + if (auth_len < min_len + str_len + + supp_ngroups * BYTES_PER_XDR_UNIT) { + (void)printf("AUTH_SYS: Inconsistent lengths " + "(credentials %u, machine name %u, " + "supplementary groups %u)\n", + auth_len, str_len, + supp_ngroups * BYTES_PER_XDR_UNIT); + goto badcred; } - if (supp_ngroups + 1 > XU_NGROUPS) - xcr->cr_ngroups = XU_NGROUPS; - else - xcr->cr_ngroups = supp_ngroups + 1; /* - * five is the smallest unix credentials structure - - * timestamp, hostname len (0), uid, gid, and gids len (0). + * Note that 'xcr' is a 'struct xucred', which still has the + * historical layout where the effective GID is in cr_groups[0] + * and is accounted in 'cr_ngroups'. */ - if ((5 + supp_ngroups) * BYTES_PER_XDR_UNIT + str_len > auth_len) { - (void) printf("bad auth_len gid %ld str %ld auth %u\n", - (long)supp_ngroups, (long)str_len, auth_len); - stat = AUTH_BADCRED; - goto done; + for (uint32_t i = 0; i < supp_ngroups; ++i) { + if (i < XU_NGROUPS - 1) + xcr->cr_sgroups[i] = IXDR_GET_INT32(buf); + else + buf++; } - } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) { - stat = AUTH_BADCRED; - goto done; - } + xcr->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); + } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) + goto badcred; rqst->rq_verf = _null_auth; stat = AUTH_OK; @@ -123,6 +140,10 @@ done: XDR_DESTROY(&xdrs); return (stat); + +badcred: + stat = AUTH_BADCRED; + goto done; } From nobody Thu Oct 16 16:58:26 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0M2zyyz6CnfZ; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0M0dL5z3jxZ; Thu, 16 Oct 2025 16:58:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rNxIfaOGBrLQV4+KUUKEhneLT98fl4D5stj0yvNSiqk=; b=Y0DTk0w9nWfyuXxuPKzDQjMNdd2ZqNTSC6Yv4PUoAtM42ld2xyJDhIdWBPZZ6o6ht99XZ5 X08QOMeoPGDKMq3qbvKB4YyrmY7WzIwT2vxfQSzMxe9T6dMVdmF/Wvcp4k4m0nAKfKnDeZ Mg0F1Si7jNgYA29jeJ4Ar7b+hOWnSK4c5E3QrM2lVO13Zyx9lrtN/kWNvwk9Zx0ilIeDTy PtgbruirlS5ujK/yrOXl3W3a+z5bnC5yOEvTVHgCcO4d3uFyOYdU3ytNU7bDYKRWnxfDP3 Z2mVKSZ9h5Rpec1ow8fh9f2dDKWQkJUdWbQF9TpKXbdcUvsDNgX0m+iN6w74jQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rNxIfaOGBrLQV4+KUUKEhneLT98fl4D5stj0yvNSiqk=; b=i79nWqr98ds6ODdK/NOIFlb05vd2HmfeXeXqbc6hXu20QUiyGNmSfplHBMqbfqGlRqPHIc yOJn5RexAW91cfh7ZMnLZphCdAXzl9ktclikRbPzhOpmfIMEKocmVVMAmZoIiiiaLHoreX F31aO1GMNH0R4YXssrMarE8IUBuLjPegtjU8OXEdkemV8RdyCNvJPLRcLVjBBKfNESDlfW PTGxJBPZZVFaFrfLv3+zcbzICoAM17gRgDf8KITzO1bEXARxTIml8/n/L++Ia76yRAX9t6 pLXpFLBIA2orhaIW6kCzswzSL/S/Pbg0HxejH7ZkQMmbmOqzimzwT2IPVUxgKA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633907; a=rsa-sha256; cv=none; b=wy4ZYxH6VL5KEQxY44CungUoTZ6fJL1OeGaR93VwWKJ93bMDU242oz8D7t3XqsVhMshxXv fP+FJBOwgZmw7vobtl7IivtVySHyuOAYCs8VQQPpvVqwwkRrLZGaAs/Y/HmbhUiUlo+9Q2 6WAqsCoz+nwss7gZt09e8ioxefhkAIwnZ44kCIBXCmJRVsiaekhIY4EiervLIFqZ5we6J8 L3z9tmUshlJWzHNKEBhsvNsmL3BreofPX5AbN7TJXwowmcjvMDrbQkchgzZvyYFr3AQjrA 4rItRxor7T8VyxlodM6TPfyVB2rVPjfuPtaQCDciJu6GMjngZ80z5R4PMOPgsA== 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 4cnZ0M0C0Jz25Q; Thu, 16 Oct 2025 16:58: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 59GGwQPV055948; Thu, 16 Oct 2025 16:58:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwQgQ055945; Thu, 16 Oct 2025 16:58:26 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:26 GMT Message-Id: <202510161658.59GGwQgQ055945@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: d06658b8066d - stable/15 - sys/rpc: UNIX auth: Style: Remove unnecessary headers, minor changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: d06658b8066d1c3af400db33896a493be2ebdfab Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d06658b8066d1c3af400db33896a493be2ebdfab commit d06658b8066d1c3af400db33896a493be2ebdfab Author: Olivier Certner AuthorDate: 2025-10-07 17:10:12 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:46 +0000 sys/rpc: UNIX auth: Style: Remove unnecessary headers, minor changes MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit a4105a5d4e179aa1ef661ee45d6008e83fefd2a7) --- sys/rpc/authunix_prot.c | 10 +++------- sys/rpc/svc_auth_unix.c | 4 +--- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index 0274a713ff2b..ff4c12c3f52e 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -30,7 +30,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include /* * authunix_prot.c * XDR for UNIX style authentication parameters for RPC @@ -40,8 +39,7 @@ #include #include -#include -#include +#include #include #include @@ -70,12 +68,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) namelen = strlen(hostbuf); if (namelen > AUTH_SYS_MAX_HOSTNAME) namelen = AUTH_SYS_MAX_HOSTNAME; - } else { + } else namelen = 0; - } - if (!xdr_uint32_t(xdrs, time) - || !xdr_uint32_t(xdrs, &namelen)) + if (!xdr_uint32_t(xdrs, time) || !xdr_uint32_t(xdrs, &namelen)) return (FALSE); /* diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 4d5535a4fee2..9e4b0b8483b5 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -41,8 +41,6 @@ */ #include -#include -#include #include #include @@ -131,7 +129,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) buf++; } xcr->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); - } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) + } else if (!xdr_authunix_parms(&xdrs, &time, xcr)) goto badcred; rqst->rq_verf = _null_auth; From nobody Thu Oct 16 16:58:23 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0K1J7Tz6Cnm4; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0J06lyz3k7r; Thu, 16 Oct 2025 16:58:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AxwCYJbEllXuDGZKmQ9FrEvVj3omrW4zKIRREYOQ+/s=; b=PKuJZH1rKOffWdBOVkjjdL6UatVa94rifs8vrv0ckREGC5BTXyulz+3L9DRWEEBIOYw6RF Z8SEoLEt2MaWSekxm6BOghPU6WUd9kB/zv2/E2ffUkXcW9nHi51Vrgg9G/cyWCHmbsHIZb rRdvbuzHk5UDU3E4SKFe04oNX5mSREVPOeKDjq1fH7L3QDjdcdN55IhpBkENKmnw46oJDB H2vu8m7rdmkLiBZh3ZTzAtSp0/t2MRf8j/4zrs5IxAtHx2JVPC7PycIiFiAIn5sRpmjSkh QFX5SUfwB+3f5GpLbOiyGoJYRteX3ddNu+gVvU5abnDsolasL8Gc/OWkNAmbeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AxwCYJbEllXuDGZKmQ9FrEvVj3omrW4zKIRREYOQ+/s=; b=TxSku8tcwl6XmQm38fR8CSd5J1MrPxSxqcIFBXgRWScElwb0Sa8hZvLrcU6ZphI3nxJp8A zNIKa5khnu2lq5HMEJjFaj1uKU/MFxjDvFwvDWxsDklHZABDGkMwiSzCrtu5new0tF/yxf kMcPov3pLWtEEzhAUzuzYwXTJn6FTbkfccoLPIi9VirAYM8pFusmWwTs/pB0pp+kuZtNx9 zae0Pynt0/84Pgbkv4oiTONpYT6Mu00/6vHdthZ/MqQjYV49X1ASd+Sd9D025um7kBOMme CtrrZlyGdjaQPy8v/wKCPQEJycWDN+lblSmLIAW1cWRpdSSARJSoAjjq5J4NAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633904; a=rsa-sha256; cv=none; b=S8gYz3JmmDuJpLfmUL9/WCYpqrjDGXn0frAFWbgTWpAFA66W6oyX0dkcJ7AqWdG2doGf5s DJ+gWH2wbkaWNLNOENcEJ3Zuh6vomD/3+S9RFTv+InGUKBokceQRec/vlbc8ockEgw0nca 7ty5pJcj6X+Hvfeluqevek+LPqDTr/CDAl43SNvKGcVUawoOcq6WF5fS6TDpjjHONvnfeN VQhMnDl7GjclUq6iUriPWFzClF62r0GecfmvEYlCI9aMUhezcnrRSpoN+2YVVHkb0TEDAS Ke1nH7vs5PkH2xE0h1ORQKnpEkL16PLxhxs+GOSrpIZ0bYfz9QBJMfV7fVoMQA== 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 4cnZ0H59gyz2Rl; Thu, 16 Oct 2025 16:58: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 59GGwNSK055840; Thu, 16 Oct 2025 16:58:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwNLB055837; Thu, 16 Oct 2025 16:58:23 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:23 GMT Message-Id: <202510161658.59GGwNLB055837@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: 9763e76cccf0 - stable/15 - sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (2/2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 9763e76cccf05d405e0fd9c9c351808993e93b14 Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=9763e76cccf05d405e0fd9c9c351808993e93b14 commit 9763e76cccf05d405e0fd9c9c351808993e93b14 Author: Olivier Certner AuthorDate: 2025-10-07 13:33:53 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:45 +0000 sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (2/2) Remove local defines from 'svc_auth_unix.c' and use the new limit macros instead. Reviewed by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52963 (cherry picked from commit e665c0f6f7a611d25d9d7e7f64d98c84b3a92820) --- sys/rpc/svc_auth_unix.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index aad4e7610795..b3389bc79511 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -50,9 +50,6 @@ #include -#define MAX_MACHINE_NAME 255 -#define NGRPS 16 - /* * Unix longhand authenticator */ @@ -76,7 +73,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) if (buf != NULL) { time = IXDR_GET_UINT32(buf); str_len = (size_t)IXDR_GET_UINT32(buf); - if (str_len > MAX_MACHINE_NAME) { + if (str_len > AUTH_SYS_MAX_HOSTNAME) { stat = AUTH_BADCRED; goto done; } @@ -85,7 +82,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); supp_ngroups = (size_t)IXDR_GET_UINT32(buf); - if (supp_ngroups > NGRPS) { + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) { stat = AUTH_BADCRED; goto done; } From nobody Thu Oct 16 16:58:25 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0L23kkz6CntG; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0L0Nm5z3k8R; Thu, 16 Oct 2025 16:58:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vkqZlNVVJ7UGw3eGK0d5x/yPe3/JmN9NSwhJ70cll1A=; b=vKBLOCSE4SlE5IEot3yfJKed11L+Ur7/QfGL2mSLWwCUvCUPv+qmxWsrnIc307ybQSHfYX 05zGdA5BoeELvP3MaqPIEO0cukbG8p1aJLMpe9EiL6a+p9It6xEUZAhBjHruMG+tT8MTGv n68zKhJ4HL1M0MBqmvk/7tkarmwUSg21CIX5xCwHWy+9SX8FZTQHjIRsfui07X9zXM+xPn ZmeNYf4ws0oaQGa8Y8EKM+BNjNkcVmEkRpyTQjFdFtYag23TzpOGEEmR7aDcOc/riGy1yq /liMSYDPETbvkYzmXzmJz2/bduig3gh7tecdVGv1sc3ZkU0k+lgBduO4zd2JiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vkqZlNVVJ7UGw3eGK0d5x/yPe3/JmN9NSwhJ70cll1A=; b=f2Js+9Af/ZSMbX2RBOTZyD2YuOx1xsFVBnNRwwDiuQ0RiflfUNVzlE1QNd42zR5XKXEPRL INWOSZ8ERNf+oCUTIwkRho/Up7MBJnlzNyaH3vhi8yMA+BVkCebe5FjasGJZ66b1R5DbHv 67eATR1HXRiwbNbnIUTOgSpkrOmF3CA+kHCu96Ca6DBuUj3JqcFEMoAtDt2wvVJfFRCs9K oxsbnV8+hivT1egbCdnRVFkS92v8IaTaQKxlJ+4g3CAYtMGYsa319PkbPIlhjZir8vzh/Y Sha1OYJP6JAQmSiF5WSa/R1LRn3AnuWE15A7i5gTs+urxi84AaWPYPmW1vfzSg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633906; a=rsa-sha256; cv=none; b=b82PeS5LGEgA6ctHoBteEV+vSVy4ncMgrJcuEQHJksBDzFIRE5hqfs/XLFYAE7Eb9mGVi5 XsNnEVkoJgQ8+STQYeOW2P2vbA2QX3gIPPDYQ4a22ZYe3BNFHzHsAg0jQBWhO5ubUvHSBG D4Wy6dTeKUESe8umhIEpWlK5NBwQZumwWNovaBQ80yddpSuYOLCLAwB7SpUSDFg/OIYUep 2TlzranLExL5BBBBqphXSbdSoUEzfS/9L8JYvxLuKThN3qBfs7YBlewVyxdS9jBKYP3R+U jppGhD4xrMBJfMJV+pK95h1Ui6VeEDICNq1Q8LOoA5sSe532AeimeTg1AZODIA== 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 4cnZ0K6NpNz2Gd; Thu, 16 Oct 2025 16:58: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 59GGwPcr055914; Thu, 16 Oct 2025 16:58:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwPB6055911; Thu, 16 Oct 2025 16:58:25 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:25 GMT Message-Id: <202510161658.59GGwPB6055911@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: b27688a8b5dc - stable/15 - sys/rpc: UNIX auth: Support XDR_FREE List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: b27688a8b5dc92c87e74c40f3702484f5e2e329c Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=b27688a8b5dc92c87e74c40f3702484f5e2e329c commit b27688a8b5dc92c87e74c40f3702484f5e2e329c Author: Olivier Certner AuthorDate: 2025-10-13 15:13:09 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:46 +0000 sys/rpc: UNIX auth: Support XDR_FREE xdr_authunix_parms() does not allocate any auxiliary memory, so we can simply support XDR_FREE by just returning TRUE. Although there are currently no callers passing XDR_FREE, this makes us immune to such a change in a way that doesn't cost more but is more constructive than a mere KASSERT(). Suggested by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 4ae70c3ea498e06676040ee99254d261e29ae82e) --- sys/rpc/authunix_prot.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index c1a9f90bbe28..0274a713ff2b 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -61,6 +61,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) uint32_t junk; char hostbuf[MAXHOSTNAMELEN]; + if (xdrs->x_op == XDR_FREE) + /* This function does not allocate auxiliary memory. */ + return (TRUE); + if (xdrs->x_op == XDR_ENCODE) { getcredhostname(NULL, hostbuf, sizeof(hostbuf)); namelen = strlen(hostbuf); From nobody Thu Oct 16 16:58:28 2025 X-Original-To: dev-commits-src-branches@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 4cnZ0P256dz6CntM; Thu, 16 Oct 2025 16:58: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ0N2FKWz3k12; Thu, 16 Oct 2025 16:58:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zGneb186piDI1FwN1XS7rHh2KHppfg+SoHrlU7ya7Kk=; b=DJ1G17Zsp+81jQ0b5sT4Ft3SqYpegxQegYqjhTvj19fHpCAGZ1RVqVQm6t+zOxiG5FeHgk R4DmhXJWqtNjRToj02GXWyuKH9wKqnxLwsxhWPmth9lXJw0zr6mp0USAtr1+1aAdCwCn3y IKdZ3uH21ofy1TgW9ND52tq2nBbDBCtkRkv3rGp5skQydqX65ZjTuSvwLzppoo7m7klRPB G94gmZn4WgP0CDZ8+ISem73GkTIDkV6RpsOzSm2LlhXKDb8KF47sjsRrNH158FRCgjcmhb jYRorZlCY4AqHF9wpqE7n8mA92pk/cqeifvjTIHrKNSWz/xDKWACwj0mu7hndQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zGneb186piDI1FwN1XS7rHh2KHppfg+SoHrlU7ya7Kk=; b=VeCpKk9mhwbeGP3XN9K6Fx4SO2Wk4FNiu22862XXRJLd63PlxqxiA0fZe3haoGUtJHsRFH qU6zcOovsdn6FepJDUOfkQDTKhxNvZpgbj2/T71BGeZP4F32f8b++7OERtUTXjq1OY2eEv OeORLsrLEolyiMTpj4TOnSWbvFZAKPfGXUSKS8L1qc9RTJYqP2J7tU9Gu/TKON/lemR/iW GkvgYyCjQmadcx493ylCbaX6aqda1dML+URZBgcBNOBx0DjfZOkVDNDg53Qlz4WSDKRRyK OXuzAbjKHt//hI1Z2JCc290Sjnb1JUWXXIropZ0NdZOMALq2Iz0slonXqCYTFA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633908; a=rsa-sha256; cv=none; b=w7fk/QmSWWqL5oGkkt8jJ216opCz+RNmoHIlxaiqb6FNZYymHLLefEwGGabJe/XfVPlcwY PiqYLANFuPFZxzicHpEd0YnKxwVYDkOnS0IW/ZnmuEZuz2PCuyQafM2OvpXIIghIuAD4ZQ pcN+PqIpDiE38PIpqonKl4e0J/GQLOxSmmvY4WLnAaBalgr3THWBHJSz3jbFYHYFCtbtoo FpcYRS80ABC3j2oeASW5k4rEelJYg/jXu27QlaSwJS/KhawYpZ9aowpRl8gtUe78OrTcIl qJjDLn3fhYx0VhOEZ/HSVK+lBW0TydhxdASa/LKBis3L8Am/6Ppnbf6ZnW56OQ== 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 4cnZ0N1FKvz2Cf; Thu, 16 Oct 2025 16:58: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 59GGwS85055981; Thu, 16 Oct 2025 16:58:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGwSwr055978; Thu, 16 Oct 2025 16:58:28 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:58:28 GMT Message-Id: <202510161658.59GGwSwr055978@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: fb8a978ebfeb - stable/15 - sys/rpc: UNIX auth: Do not log on bogus AUTH_SYS messages List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: fb8a978ebfeb5522123e3afcbcd5dc36591dce31 Auto-Submitted: auto-generated The branch stable/15 has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=fb8a978ebfeb5522123e3afcbcd5dc36591dce31 commit fb8a978ebfeb5522123e3afcbcd5dc36591dce31 Author: Olivier Certner AuthorDate: 2025-10-14 12:54:55 +0000 Commit: Olivier Certner CommitDate: 2025-10-16 16:57:46 +0000 sys/rpc: UNIX auth: Do not log on bogus AUTH_SYS messages Remove the printf() stances added in commit d4cc791f3b2e ("sys/rpc: UNIX auth: Fix OOB reads on too short message"). Even if it can be helpful to know why an authentication message is rejected, printing explanatory messages on each request attempt is a remote log filler that could be triggered by accident, and the generic RPC code generally does not do that. These printf() calls should be restored only after some limiting or configuration mechanism is devised. MFC with: d4cc791f3b2e ("sys/rpc: UNIX auth: Fix OOB reads on too short message") Sponsored by: The FreeBSD Foundation (cherry picked from commit 2110ae0ef9d6ca8cf52b29fcaf926c4343f56826) --- sys/rpc/svc_auth_unix.c | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 9e4b0b8483b5..aa0fc585865f 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -41,7 +41,6 @@ */ #include -#include #include #include @@ -70,11 +69,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) const uint32_t min_len = 5 * BYTES_PER_XDR_UNIT; uint32_t str_len, supp_ngroups; - if (auth_len < min_len) { - (void)printf("AUTH_SYS: Too short credentials (%u)\n", - auth_len); + if (auth_len < min_len) goto badcred; - } time = IXDR_GET_UINT32(buf); str_len = IXDR_GET_UINT32(buf); if (str_len > AUTH_SYS_MAX_HOSTNAME) @@ -85,12 +81,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) * 'str_len' (and that it won't cause an overflow in additions * below) to protect access to the credentials part. */ - if (auth_len < min_len + str_len) { - (void)printf("AUTH_SYS: Inconsistent credentials and " - "host name lengths (%u, %u)\n", - auth_len, str_len); + if (auth_len < min_len + str_len) goto badcred; - } buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); @@ -108,14 +100,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) * read in total. */ if (auth_len < min_len + str_len + - supp_ngroups * BYTES_PER_XDR_UNIT) { - (void)printf("AUTH_SYS: Inconsistent lengths " - "(credentials %u, machine name %u, " - "supplementary groups %u)\n", - auth_len, str_len, - supp_ngroups * BYTES_PER_XDR_UNIT); + supp_ngroups * BYTES_PER_XDR_UNIT) goto badcred; - } /* * Note that 'xcr' is a 'struct xucred', which still has the From nobody Thu Oct 16 16:59:43 2025 X-Original-To: dev-commits-src-branches@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 4cnZ1q750zz6Cngk; Thu, 16 Oct 2025 16:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZ1q6LtQz3n2G; Thu, 16 Oct 2025 16:59:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SXE3FcAVmGAAG95/8upPL1gg3+zsFDw3MVtQ2AWHaHo=; b=V88qs8ForuCTminfKFtMgmaWaK0hI9REn0R08d0BB+JJFFoTnQSLwVufE0oHwYSHCgbg+B LxwAxUxmDQ+WkATz+jpzzNsikX4hoqp4O+WvcWI4P8Jy3FutfcqrtwsvexiTrdZJaTCXJI xgKq0lJSQAyiVoQai22jbRL/B51yjdPqqgblhQfE6O6VV1mn4ewcyooQU4E2vLBzxq0qrR qCSB02YvpoY2+H5i7hzK3qXC4wJseek+ymadAM1uAfKpDR0HWt98ucxtZOu8bLhgIAGlj2 rJAH7icZp4Hq08VYkboI9x2GrF/jCy1/fM7dbzw67rkPNZA0xbX7oZrlCPUz7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760633983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SXE3FcAVmGAAG95/8upPL1gg3+zsFDw3MVtQ2AWHaHo=; b=HfoFC7sm2a2JCoWpRA42f0gZS26lwuOZSuks0PcSr4I6xxAokHRINyJdQzFXPaMNmUD21D B+dju1IjhmFzQwnmBmx7P8h04hru5Dm8Zus4Uh88lgDvzzlYYqGiSOT3xddpSEOX6YPhSB eqMo6cgBEgU9odNb4z++6+TbG3AuexHO6u5HY70BoMm5myaBlyx+LNAYNnjtfjoMfdwiIT SDBEt0bvj/2woSTxfRa9g8bekW9MMJ2+NQvz8jglyDLoMCZ9frkYrd9xD/zJRq3usTz/VM D6i61rdcfz5hn0N9CANE+qJKsfO/xaMN/ZKjUGulHOWJYY+a0swL1CJ2htGGfA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760633983; a=rsa-sha256; cv=none; b=IAORO1QHPA4E0Pq3A+q/gxIVxB3aGE3rg2ZKMZ9j/ckm9oQSm/7FBuI5GuDiB3Bm1PQqeJ bmcFIWoCephv3gQD0KR71mZDClhmfXV0ILt8i9dBE3wxQygKKUXa5IRmkGQP6D0XLuxV0X XgZLygb3vMrmAh4zt1dUHnGqAQnTJuJaYAYyDIGBQHdL0dxvXzQjgJam4j+I2fwcS075N9 o/AEuSau19+HF4r9alPJzd2weJcPl8ABdGp1zdT1JzFh0MoaolXG67292nLq0vlBTmjcbi tEDPqfnlEyczjpp8Kttu8TmIU5bxooiUYi8OZ/k9JJBZGhoIYGWdkRFqWSC9og== 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 4cnZ1q5xx1z2Rm; Thu, 16 Oct 2025 16:59: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 59GGxhS8056516; Thu, 16 Oct 2025 16:59:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GGxhUH056513; Thu, 16 Oct 2025 16:59:43 GMT (envelope-from git) Date: Thu, 16 Oct 2025 16:59:43 GMT Message-Id: <202510161659.59GGxhUH056513@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: f0033878b92e - stable/15 - zfs: Emit warning upon use of legacy sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: f0033878b92e1a00120fec4edf590715f7c4ecbc Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f0033878b92e1a00120fec4edf590715f7c4ecbc commit f0033878b92e1a00120fec4edf590715f7c4ecbc Author: Ed Maste AuthorDate: 2025-10-09 15:57:14 +0000 Commit: Ed Maste CommitDate: 2025-10-16 16:59:33 +0000 zfs: Emit warning upon use of legacy sysctls The introduction of OpenZFS moved some sysctls, and legacy compat shims were added. For example: Old (legacy) name: vfs.zfs.min_auto_ashift New name: vfs.zfs.vdev.min_auto_ashift Upstream OpenZFS removed these, but we've temporarily restored them in FreeBSD. Note that l2arc sysctls use generic sysctl functions (e.g. SYSCTL_UQUAD) and thus cannot trivially have warnings added, so they are not handled. PR: 266374 Reviewed by: jlduran Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53033 (cherry picked from commit 654a3aa9a1de176648eec00b3c201c33b10bd325) --- .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 41 +++++++++++++++++----- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c index ace2360c032d..ebc2c0eeb6d2 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c @@ -163,6 +163,13 @@ param_set_arc_int(SYSCTL_HANDLER_ARGS) return (0); } +static void +warn_deprecated_sysctl(const char *old, const char *new) +{ + printf("WARNING: sysctl vfs.zfs.%s is deprecated. Use vfs.zfs.%s instead.\n", + old, new); +} + int param_set_arc_max(SYSCTL_HANDLER_ARGS) { @@ -185,12 +192,15 @@ param_set_arc_max(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_max = arc_c_max; + if (arg2 != 0) + warn_deprecated_sysctl("arc_max", "arc.max"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_max, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_max, "LU", + NULL, 1, param_set_arc_max, "LU", "Maximum ARC size in bytes (LEGACY)"); int @@ -214,12 +224,15 @@ param_set_arc_min(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_min = arc_c_min; + if (arg2 != 0) + warn_deprecated_sysctl("arc_min", "arc.min"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_min, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_min, "LU", + NULL, 1, param_set_arc_min, "LU", "Minimum ARC size in bytes (LEGACY)"); extern uint_t zfs_arc_free_target; @@ -242,6 +255,9 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) zfs_arc_free_target = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_free_target", "arc.free_target"); + return (0); } @@ -251,7 +267,7 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) */ SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_free_target, CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_free_target, "IU", + NULL, 1, param_set_arc_free_target, "IU", "Desired number of free pages below which ARC triggers reclaim" " (LEGACY)"); @@ -270,12 +286,15 @@ param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS) arc_no_grow_shift = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_no_grow_shift", "arc.no_grow_shift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_no_grow_shift, CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_no_grow_shift, "I", + NULL, 1, param_set_arc_no_grow_shift, "I", "log2(fraction of ARC which must be free to allow growing) (LEGACY)"); extern uint64_t l2arc_write_max; @@ -746,12 +765,15 @@ param_set_min_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_min_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("min_auto_ashift", + "vdev.min_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, min_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_min_auto_ashift, sizeof (zfs_vdev_min_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_min_auto_ashift, "IU", "Min ashift used when creating new top-level vdev. (LEGACY)"); @@ -771,12 +793,15 @@ param_set_max_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_max_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("max_auto_ashift", + "vdev.max_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, max_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_max_auto_ashift, sizeof (zfs_vdev_max_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_max_auto_ashift, "IU", "Max ashift used when optimizing for logical -> physical sector size on" " new top-level vdevs. (LEGACY)"); From nobody Thu Oct 16 17:38:42 2025 X-Original-To: dev-commits-src-branches@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 4cnZtq1m8Kz6CrRS; Thu, 16 Oct 2025 17:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnZtq18Gdz3whC; Thu, 16 Oct 2025 17:38:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760636323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wFUkpa6APG8xD7yohulAUEdJD9SY4YPgvr0l6OIkY6w=; b=jqChZunktPVWK2oMxWE7IeqXU2ALUa2CZ2WPKvO20xfGYy70xevC2NCBSVjlgJrgur3PWg YNH7Cge5UMBMgmZGd0muERokA21budyMP8IKOo2/kxemO0TuWlZ3b8yKwnWvIuR4Ad86nv vnPo4eVSe3xzsgnYpXOlsQFXB+Pp2pESb6lRJ6701YqKD1v8C9ofKsE8+0EEwPshmXQjfP kg69MchkaRu7U3p/pITQf5QHRFwSBeaTBOwzoiXj3bi3mkLNpGHs8V8wSDgN0MfMJEinUo Jz38DSFMRFIFQLuCWh3O2ZejI7WFnSZlKYkMsCwMVvjNvusDrgb/uP8UOw1xSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760636323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wFUkpa6APG8xD7yohulAUEdJD9SY4YPgvr0l6OIkY6w=; b=DNbNldljUBKy7aLJoWbLU0WI0UFNdHXVOH2qxgFTYslUCTLrNOGvPc11G/eKH9YkkrxtLo eEngaVvxKaIFw0m4jtYSsQp2+hzojGwUCWlgoz9xsXgFat3UdvADVu5bsfVpBIWN1812B8 zTk4s+cq7TNOHNTsFZKOiHV6xh++xr8H143kdg9Wuu7NvB6OLzUKSteFFiSQqiL14rYLQD ftkd7gNU0JvB1A4yl+m79C/+O5NhG/K7UoXj34sp7JiT1d2iWzfyGaUBdNrWPUrtN+bWG7 Omtlbx2aVtqDR9FVPQjvVf5+5pPDQifTLGGxl4IhuTpPq7CjEy6hzEMW9hKo0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760636323; a=rsa-sha256; cv=none; b=N7KpTdpu9+TbmyOwerCBo4SpsPRooWNcNQjRPB0xeD2bU/Spxh1fCjQf/+baIvF85391PV GUZB3352Jlvyt1d39LoLVk+VOsCKvtQeU2nX4itFwPMgsQYPb1bXp4Po5RokGsLY9Cju52 MSag6zjGlzTyrVBbDoAkB+SobaXo4BuzKzi0zuNF7qNK7VIQlJEpyZX+1+ThXihsBQFIOp rGw1/WvpFDyg5aBtXTJiuPVMt44lZ7gsydA+5/MqI12BFBb6DFWC+A/OXPo9DvjWtOspNm AnPMgKRMMHySZ8GNZNw2tlim61uQR7M+GemSUIVGxQjBI5DnnqBMVeyZNs3RDg== 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 4cnZtq0bcfz2ys; Thu, 16 Oct 2025 17:38: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 59GHcgeE032328; Thu, 16 Oct 2025 17:38:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GHcgUC032325; Thu, 16 Oct 2025 17:38:42 GMT (envelope-from git) Date: Thu, 16 Oct 2025 17:38:42 GMT Message-Id: <202510161738.59GHcgUC032325@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: 4c87cff1c8c5 - releng/15.0 - libm: remainder: make sure x is zero List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 4c87cff1c8c53f06d8d25813fa32f1cc35657897 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=4c87cff1c8c53f06d8d25813fa32f1cc35657897 commit 4c87cff1c8c53f06d8d25813fa32f1cc35657897 Author: Ahmad Khalifa AuthorDate: 2025-10-10 09:30:52 +0000 Commit: Colin Percival CommitDate: 2025-10-16 17:37:22 +0000 libm: remainder: make sure x is zero Make sure the entirety of x is zero before flipping the sign bit. Otherwise the sign would be wrong for small values of x when x is negative and |n*y| > |x| Approved by: re (cperciva) Reported by: alfredo PR: 251091 Reviewed by: kargl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53023 (cherry picked from commit 25cca51ed294890d20a3c0290814cd26875db686) (cherry picked from commit 583e976d6d09770a6299a19603d4f0dbaa562cac) --- lib/msun/src/e_remainder.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/msun/src/e_remainder.c b/lib/msun/src/e_remainder.c index a5fb7141d01a..cc6cd320073e 100644 --- a/lib/msun/src/e_remainder.c +++ b/lib/msun/src/e_remainder.c @@ -64,8 +64,8 @@ remainder(double x, double p) if(x>=p_half) x -= p; } } - GET_HIGH_WORD(hx,x); - if ((hx&0x7fffffff)==0) hx = 0; + EXTRACT_WORDS(hx, lx, x); + if (((hx&0x7fffffff)|lx) == 0) hx = 0; SET_HIGH_WORD(x,hx^sx); return x; } From nobody Thu Oct 16 18:18:33 2025 X-Original-To: dev-commits-src-branches@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 4cnbmn2xXSz6CvZx; Thu, 16 Oct 2025 18:18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnbmn2CfMz45xt; Thu, 16 Oct 2025 18:18:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760638713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ysST6FkaPWLCA2xWiKSnrghU+SC5iY6w34xePZQ878U=; b=vRLi0j3kLGmf55BiB4vGZZBcPYm3/WUJWTOqCs4Ejwc6yKfT9/vQxsdgDNHznyGDJ4dOtp uhb/I3BIVtmAmFlBMIHuEBXgZkQ8Z+kVFOdFZBsfd5kxJ0AYnlKlNObmMMIcKhE6jq4ti6 2DmPLY93VBYfsbes0NxV4ocgxSbDuy8wp0nzYpKjxrwsUd7FDgdf24uXTK6qNMHSGPjpKk Txk4JyhpGm57m2byW/Nkxidnp/w+7GCS4l4lgxY5t2Xh6M2hQs9wp9dwP3cifBHe2CM2h4 ajGKYd66Xzgzfnm0CTfHS9haSUBeKMgDdTpqhcbo0B9acyGmpytwS4fjESBb8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760638713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ysST6FkaPWLCA2xWiKSnrghU+SC5iY6w34xePZQ878U=; b=dXac842f1xn4+8TFaGAPaRVMUawZVrnhnGz1OR4+RmjyvvPL2hBihYKAoiJgtngnB5YKZI /a3esBgOOGKFRszolD6jAIz853kXK716cxoYaivVaQFFUS4Q2V7DF5OCC2PH8xHm+88OKv xLTREt6UHeI2CzDFwD7HrENyTPWSNJdPUKbJBhQVE7XjVfICwCEGoQBSJas0yFkHxfc6e7 lCbsA0bFPkXBKegJomrY5+U78fpsmaqHpiqQzJIV1+NfckMIIXNg9MkKy0IPS39ctVosA4 cUEEHELVT825/aq0Aezvm+YI8pS977wPvRGiSgYHYVq/JfzJLc+VVJH+6Q1JPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760638713; a=rsa-sha256; cv=none; b=KyJ8cejOHbLvQWqsY7DZcyMda5h4fnUfQUDgOs0N60PmJ8/MV/roDaJChfOkMCxWnGFx+O aTlQWUeb3H+M3BRTAwhbKGAVYSQc2/onqwVy3UA2l3wK4oDtkfZZMRC+Li5NloyK/I34+i 0Lhw0x8rgRnEXVCm0QVmLE/Bi8sB7ECqwrQfhn1kk/MXmHCHSEA4dv32/QH5HtwNWhLEDi bIib4LWoevqAuWFDE0FQXUfcLqwzzUOGUo5D3xaCQZ97HqxY+CUN0UCsUCm7cJPHCZ8jP6 mRZWKasKFiMQWq31YRLfGmAH1qwXCTLSfY2VuIu60VHcg69cxOBmb75Eq3WIRA== 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 4cnbmn1MjRz4Qv; Thu, 16 Oct 2025 18:18: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 59GIIXXh008407; Thu, 16 Oct 2025 18:18:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIIXtT008404; Thu, 16 Oct 2025 18:18:33 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:18:33 GMT Message-Id: <202510161818.59GIIXtT008404@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: 53eda63d6de6 - releng/15.0 - zfs: Emit warning upon use of legacy sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 53eda63d6de675b8a89bc036bc4a0a64b3c5e0c5 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=53eda63d6de675b8a89bc036bc4a0a64b3c5e0c5 commit 53eda63d6de675b8a89bc036bc4a0a64b3c5e0c5 Author: Ed Maste AuthorDate: 2025-10-09 15:57:14 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:15:49 +0000 zfs: Emit warning upon use of legacy sysctls The introduction of OpenZFS moved some sysctls, and legacy compat shims were added. For example: Old (legacy) name: vfs.zfs.min_auto_ashift New name: vfs.zfs.vdev.min_auto_ashift Upstream OpenZFS removed these, but we've temporarily restored them in FreeBSD. Note that l2arc sysctls use generic sysctl functions (e.g. SYSCTL_UQUAD) and thus cannot trivially have warnings added, so they are not handled. Approved by: re (cperciva) PR: 266374 Reviewed by: jlduran Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53033 (cherry picked from commit 654a3aa9a1de176648eec00b3c201c33b10bd325) (cherry picked from commit f0033878b92e1a00120fec4edf590715f7c4ecbc) --- .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 41 +++++++++++++++++----- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c index ace2360c032d..ebc2c0eeb6d2 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c @@ -163,6 +163,13 @@ param_set_arc_int(SYSCTL_HANDLER_ARGS) return (0); } +static void +warn_deprecated_sysctl(const char *old, const char *new) +{ + printf("WARNING: sysctl vfs.zfs.%s is deprecated. Use vfs.zfs.%s instead.\n", + old, new); +} + int param_set_arc_max(SYSCTL_HANDLER_ARGS) { @@ -185,12 +192,15 @@ param_set_arc_max(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_max = arc_c_max; + if (arg2 != 0) + warn_deprecated_sysctl("arc_max", "arc.max"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_max, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_max, "LU", + NULL, 1, param_set_arc_max, "LU", "Maximum ARC size in bytes (LEGACY)"); int @@ -214,12 +224,15 @@ param_set_arc_min(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_min = arc_c_min; + if (arg2 != 0) + warn_deprecated_sysctl("arc_min", "arc.min"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_min, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_min, "LU", + NULL, 1, param_set_arc_min, "LU", "Minimum ARC size in bytes (LEGACY)"); extern uint_t zfs_arc_free_target; @@ -242,6 +255,9 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) zfs_arc_free_target = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_free_target", "arc.free_target"); + return (0); } @@ -251,7 +267,7 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) */ SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_free_target, CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_free_target, "IU", + NULL, 1, param_set_arc_free_target, "IU", "Desired number of free pages below which ARC triggers reclaim" " (LEGACY)"); @@ -270,12 +286,15 @@ param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS) arc_no_grow_shift = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_no_grow_shift", "arc.no_grow_shift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_no_grow_shift, CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_no_grow_shift, "I", + NULL, 1, param_set_arc_no_grow_shift, "I", "log2(fraction of ARC which must be free to allow growing) (LEGACY)"); extern uint64_t l2arc_write_max; @@ -746,12 +765,15 @@ param_set_min_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_min_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("min_auto_ashift", + "vdev.min_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, min_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_min_auto_ashift, sizeof (zfs_vdev_min_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_min_auto_ashift, "IU", "Min ashift used when creating new top-level vdev. (LEGACY)"); @@ -771,12 +793,15 @@ param_set_max_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_max_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("max_auto_ashift", + "vdev.max_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, max_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_max_auto_ashift, sizeof (zfs_vdev_max_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_max_auto_ashift, "IU", "Max ashift used when optimizing for logical -> physical sector size on" " new top-level vdevs. (LEGACY)"); From nobody Thu Oct 16 18:46:01 2025 X-Original-To: dev-commits-src-branches@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 4cncNV2zM0z6CxmF; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncNV1BCRz3DN0; Thu, 16 Oct 2025 18:46:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hc2FfqcLmd3UYyRqR0kWThhMvO0kj0uF2u+CiGgK8zY=; b=RQWlqF1lpV1iztx+A1TGhieiV1CXNeMhVi1RDOi+J8w6rOGHOBGG8caeUIyWkB6aMMWCKg 7FpJIM9BUQpP8CoZyON+XTDzxsy3T7LMPh7gQhvSvUuJJWxSdJu76VGItN6oodpu02z2vB Y9icK4gPY63Aq+TgsMxD4FY28Sy36M2hZwqO7G2HAnpk/9zFtDBjIRiBEsLYsgHC0QYZbj xbvw0yTzSr6sTcPhd6+qItBcLi+s57UmPxatlU76u0JsW7WEg/kA66FIRrtP0ebijEDKiY Sh7UKRbL+bDfe3610gIJN9L5x/DgX6C8SJceT1QvvMbLrwMmkCyUzqrDFLfs1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hc2FfqcLmd3UYyRqR0kWThhMvO0kj0uF2u+CiGgK8zY=; b=k2UcjoCwAWihejRNS06Xj6Bhyc1CYEr4WswIMx8TJpJd3H9jHnNx7EnVp2q3Gm1nT9NSbt uKLYO/EHgmC1nNWt04O8E+mYVZ1Z7yuLZhp/8PlUmJndhXA7E5QD2u/p/V/zYrj9wS4NZK HRngHbUk81oQ42WDCssCQ3NvSHYphEZG4v3j9jYwu6cy+56TAzEG5Ya+yRvHMrDA6XIshj HalX8tL6OokfGKGSQwNtSvEnGFzX9sfR3d9DgMXN8HbQCeBp5sL7f8nmXsMmeTyaIEOu+L DaFys5K30okcLBFrvU4LXkkClmsGAFduGrdQ3rJhVIqdOqQeddC7NUWfQFjJyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640362; a=rsa-sha256; cv=none; b=SmvOTdsZfrhqZUWm/UP4uTieB2g94MLUVXYMxjz25NAGEIjWUpCQWQODc37KjDrXcV7zNt mBDCd77zeJV1sP3z157Rpd8+w6pqtPD9qVhSEJ37XUDNUbbMgqK175LTEFE7LaWcnqTmHO wOl1Kpz+QWmzUwUV3baALfkbq5uLZWLnXfL+QiuqUGvKwn5tiL0ihemUoizVH0D/j/IcqJ 7zgIyRrHn2BUBs+WlE04wdVW97xz3LyPe87kKW37z+dvkPWPblRJIWXRDgX+GrR8OdlkXs Qw5iBLGtZ4sy+rRiKHyLgleCtlZn5ZSo4JrJMM4DE6NLmWWYBnahI+5dzotT5g== 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 4cncNV0TgRz5Rd; Thu, 16 Oct 2025 18:46: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 59GIk1QG064623; Thu, 16 Oct 2025 18:46:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIk1un064620; Thu, 16 Oct 2025 18:46:01 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:01 GMT Message-Id: <202510161846.59GIk1un064620@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: dd9f56faa9a6 - stable/15 - nanobsd: rescue: Update legacy sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: dd9f56faa9a6f9eb2b77d069453ef65d1e6af948 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=dd9f56faa9a6f9eb2b77d069453ef65d1e6af948 commit dd9f56faa9a6f9eb2b77d069453ef65d1e6af948 Author: Jose Luis Duran AuthorDate: 2025-10-16 17:13:49 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:43:36 +0000 nanobsd: rescue: Update legacy sysctls Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 93ee9bb424619f0189b3454380588c955222b89b) --- tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt index 1f475c957c0c..ece050bfab55 100644 --- a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt +++ b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt @@ -25,10 +25,10 @@ zfs_load="YES" vfs.root.mountfrom="zfs:boot/ROOT/root" #ZFS optional vm.kmem_size="8G" -vfs.zfs.arc_min="1G" -vfs.zfs.arc_max="2G" -vfs.zfs.prefetch_disable="1" -vfs.zfs.zil_disable=1 +vfs.zfs.arc.min="1G" +vfs.zfs.arc.max="2G" +vfs.zfs.prefetch.disable="1" +vfs.zfs.zil.replay_disable=1 vfs.zfs.zio.use_uma=0 #Power savings hw.pci.do_power_nodriver=3 From nobody Thu Oct 16 18:46:03 2025 X-Original-To: dev-commits-src-branches@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 4cncNW2HrGz6CxgT; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncNW1bhqz3DH3; Thu, 16 Oct 2025 18:46:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640363; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YW08mhtr9lC2YUMfUv+U4R+7dohp8f7jhwI2LcWbmiw=; b=s7SKzY6yIH+WFye2oqK+7x3ODLGO2+XeqEZ6gNshZv31XXJMLzH9ar1yZjGh6EfPojZn2V HTetv59LFtIKTx5NFeNBi8zzsvsMhH6Ms5D58YZffxecdj7HEoPcf0PXjurRgRWRzzBWM2 3j6UxMUN5jfvMAlhRxUiDHM8zjsF8hBxyc2LT3+jQneli6WgMAYeqoSm1IjSLVJlgjit54 J264pLlGJCv6LwFX7o4vazsFHj0czGr9HTauAhPmXbXd6TQMjDwxse5uTrKdMCnIFDmcPP S7uf+y2jJiWu4mn0F1XLkV+uTVFhC+k8o6IhOKJZY3xjQM6noPMlUfc3wjhN6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640363; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YW08mhtr9lC2YUMfUv+U4R+7dohp8f7jhwI2LcWbmiw=; b=AHvQbVRZnfTR61nS/M4cjaC29l3rVX49JMHzsXAyUsQXlpIJPCb6zvjqBNFr8gBXWSFI2t zf65iYz30gOeZy13wpINcqtd1okxarGJgCCd1Zs2TqDgbwMF8/b8vnSPqxf6n1Wqztu4ox vJbsjcXO6EwIupKrAkfBtGk+ccbksmL6tLrGA7DEUX09C7hNtDvAS06k+cWyASJ9gdYhfN Vsh/z+0rmHyT97xg9FEKP1evOu8tlUe9a73rYH1G4aC3tVNV+BI9PbaRXPv+T39des5YGD Zqbwu8Q6KvX+5lbLtEradceQjA/jLuF2HDk9lETPfpc6qhIrj1qcTB27C0UifA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640363; a=rsa-sha256; cv=none; b=P72pgCKn2SlFrOgVbu/jYgc1gW++YXKCV3weO+G5ILO/Y3j6JYxC/49jdvPOJYg2DX7YEm 7Ekdtl1wzdjQtFJgAltNxAY5O6Xd/0xwcq06yEbLLDjofLaDZn34jZml4vxOJb7Oc74krd vf/wra7EFFZFy8Q2MqNudqIWKuxnEmrco46u7ENrqdguc9G4+mXgeyU3qsZ+y+wDLoELDX BX0nGhtssPt+u3rTWKkyunMW5XM6jTv9kjpFu0+949RFGUcRaMs/EbrP2rAtP3JtNcE6o9 ssu7Pg/A5U8kN6hObgso///Qk/gbvQ+B8s4iXkKt0X3AI1OC9ZYWPzFVg5ZY0w== 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 4cncNW0x5cz5N1; Thu, 16 Oct 2025 18:46: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 59GIk3b6064664; Thu, 16 Oct 2025 18:46:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIk35F064660; Thu, 16 Oct 2025 18:46:03 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:03 GMT Message-Id: <202510161846.59GIk35F064660@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 68e136b5d684 - stable/15 - tools: Update sysctl to its new name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 68e136b5d684f9aa8cf6a39c09c1a2fd6e2ac780 Auto-Submitted: auto-generated The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=68e136b5d684f9aa8cf6a39c09c1a2fd6e2ac780 commit 68e136b5d684f9aa8cf6a39c09c1a2fd6e2ac780 Author: Jose Luis Duran AuthorDate: 2025-10-16 17:18:51 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:43:58 +0000 tools: Update sysctl to its new name The kern.ipc.somaxconn sysctl has been replaced with kern.ipc.soacceptqueue since FreeBSD 10.0. Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 84333aada464296c1e28126b5c91ae2fb3f79eef) --- tools/tools/netrate/tcpp/README | 2 +- tools/tools/sysdoc/tunables.mdoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/netrate/tcpp/README b/tools/tools/netrate/tcpp/README index 6817bdf8ca25..ec0313a62eb8 100644 --- a/tools/tools/netrate/tcpp/README +++ b/tools/tools/netrate/tcpp/README @@ -84,7 +84,7 @@ In my testing, I use loader.conf entries of: kern.ipc.maxsockets=1000000 net.inet.tcp.maxtcptw=3000000 -kern.ipc.somaxconn=49152 +kern.ipc.soacceptqueue=49152 kern.ipc.nmbjumbo16=262144 kern.ipc.nmbjumbo9=262144 kern.ipc.nmbjumbop=262144 diff --git a/tools/tools/sysdoc/tunables.mdoc b/tools/tools/sysdoc/tunables.mdoc index 20b59f450cf2..397fe632322d 100644 --- a/tools/tools/sysdoc/tunables.mdoc +++ b/tools/tools/sysdoc/tunables.mdoc @@ -806,7 +806,7 @@ kern.ipc.nsfbufs kern.ipc.numopensockets --- -kern.ipc.somaxconn +kern.ipc.soacceptqueue int The maximum pending socket connection queue size. From nobody Thu Oct 16 18:46:18 2025 X-Original-To: dev-commits-src-branches@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 4cncNp4BSMz6CxSW; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncNp2SGrz3Dp6; Thu, 16 Oct 2025 18:46:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xWzN12W7Ldi0fsyvHGjpySjCTtEqBDEgJ98sDn2sg8g=; b=xyS3QbW8BoGtgvZ+9y7NdE77JwbxG9zkS+llx3faN6RFWjprYwtwnZuGyddUnGBwqz2SJw V6jSerSyKOUdNhpeu65B+4fiTVVoO8hq8bRy5OCph4EKLSv6sGtYepmMJQFkypeOs9s1OP t0Dv5GPtXMSc0kAdrssku8aBsfxdE9IoG+7XiG2PSsOlf3EbdlV/V0Hek0rwyq6X5PZfDi xYhFgtjz/m3WbaB9pGzF3u/Of3MpYrmA893/hHIJBcsxA+FA2zxuRO0QVTjnBhF5onqApi CQ153/5p99oo6/kJd5lGmDx6w6fjmeN6PrzXFYd5Pvy1YbHWpWHh+o7NFJ3Pzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xWzN12W7Ldi0fsyvHGjpySjCTtEqBDEgJ98sDn2sg8g=; b=ZGhnf0L2qMR75/swEReRefOkx3SMzr2clL58TqKesxONGtVbUJ4+UDPJVWVjr+BNWQOT9/ I1kNU2FJizzxSmYxItcCbSklm31tLjFVaV+zTxDkYnaGgl9t0L7qvKMxvvIdQI3OZCh5Zc H0xFbewnerFe5jCJQun6HduA9bz5c89hyvCYbcfNbBpJk1VIoSfTA1fFNazdkRm0mVOit8 RtVl6rZUcEhLm6hnZfZ2G62UKaA09m3MsgvwF/P7Jatd9mlKkDQvGvunKOXGa4z6u20ebh 6Aube1YHzEa4JMAm8Yxf5VDZur8KpmnoufBuoNaM4phWZcSg9oXdfiBW/B3sVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640378; a=rsa-sha256; cv=none; b=h4GwTiDa/cLA8uq2W9GLrkQLMayq1/mNnWNnMWut9iTROQUSrNyC2UMf0J3BqwhWb0lBiz Qd5dUk5XzhGpoet2wawWt+NVL/KUT55YL0KOyQkhfxECcg2erMn2FGzRq7wMn7/lZ4wrVr s0VIgR8MHVPdytlreYfhzzlQC1Mz9Hqxjh/5fcUr77lrfbmqPCSbHjWhrXGf3CCLC1QGrI 3TRMZ+BcFwNncNyjnU0cYGuOLUKA8UGF8B+dggiMF9A8+w//yYum8znzlL1dSCDTxrQcn0 lVCMMZ/lWDMXUjaxvIP1958tvXfAH3VFtrYJ57itlFpCux0Zbgs/cnGxxzHHzA== 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 4cncNp1x1pz4nQ; Thu, 16 Oct 2025 18:46: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 59GIkI9t064852; Thu, 16 Oct 2025 18:46:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIkIoR064848; Thu, 16 Oct 2025 18:46:18 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:18 GMT Message-Id: <202510161846.59GIkIoR064848@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 20103d288e80 - stable/14 - nanobsd: rescue: Update legacy sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 20103d288e80e299a76c5d3e5f5c8b3eee4e4b47 Auto-Submitted: auto-generated The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=20103d288e80e299a76c5d3e5f5c8b3eee4e4b47 commit 20103d288e80e299a76c5d3e5f5c8b3eee4e4b47 Author: Jose Luis Duran AuthorDate: 2025-10-16 17:13:49 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:44:41 +0000 nanobsd: rescue: Update legacy sysctls Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 93ee9bb424619f0189b3454380588c955222b89b) --- tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt index 1f475c957c0c..ece050bfab55 100644 --- a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt +++ b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt @@ -25,10 +25,10 @@ zfs_load="YES" vfs.root.mountfrom="zfs:boot/ROOT/root" #ZFS optional vm.kmem_size="8G" -vfs.zfs.arc_min="1G" -vfs.zfs.arc_max="2G" -vfs.zfs.prefetch_disable="1" -vfs.zfs.zil_disable=1 +vfs.zfs.arc.min="1G" +vfs.zfs.arc.max="2G" +vfs.zfs.prefetch.disable="1" +vfs.zfs.zil.replay_disable=1 vfs.zfs.zio.use_uma=0 #Power savings hw.pci.do_power_nodriver=3 From nobody Thu Oct 16 18:46:19 2025 X-Original-To: dev-commits-src-branches@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 4cncNq4WZ8z6CxmJ; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncNq35hSz3F0v; Thu, 16 Oct 2025 18:46:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZRmFdgyJh9qHVFg6BZrHWEbcFKNTqM/9dEBMBQPdkrU=; b=sv13fyOUjXXOV3XMMB12xJ0Yt1YKFUqfv35eguJs13W1bNdYj1387iktuEXL/3u+E6z7m5 wu8RSLlKkrn6H2Df1idENQFZFfx+wO88O8jiR8oLZ7wKJ1G3rFUJiPJpobKN5JQAgibq/1 DWX8o5TUDOSr6psDLS+vmqmTB7T5ry3pBtJwxEYCdJ17yNhoHvzK77qtugI38jX5uJaFeW zhg4gLAhIKef3iNnyVgENJtnTrPtllmaZj4Z0f1gkWIFQx5RLuKHdpvlggaNYvUA7y+pEG grviNVGwfm+dBdbuWcjRsyTffXQtpOOBiKEtpkPokzT1KvSZXc99tzj8f3olXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZRmFdgyJh9qHVFg6BZrHWEbcFKNTqM/9dEBMBQPdkrU=; b=YrsQIZu5o1qIkXI2kidyfk5Efuc1m15M8+GoBfCUkeKPizMqv2FKy263RTNnm/ODy1Kh2l 6H5SMONUisRMwfS3ttSCFhV7nt/paVYYJs2q+L5zHWHEf3q9Ofw5hFt7KgCJeuIPvFcwWG Wb87Vgg6oTxVlh8gZDqpBMSby6lo2o7pkr+58ifxfDYhHcmbhSfcr4VyKQvUHAuRQjob3o Q73QbUSS25XimSPhF7u4UjZp7EKITtX/Zb+Fmt2Jv5K20y4I3jN0fc2LdknWuqEevEdLy0 KhgvJ3uin5CLGTZiGvjy/XSoazNy3Ka3X3ggn1ka6pwvpgEWIzElgMKOWhq/Xg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640379; a=rsa-sha256; cv=none; b=FUxYk6rPWQ5IqhNFgYdbbPAT+WhtpGFUzeGsANN5MsKJYrswoDs2f278XZRwU+BJ9xGe4h xOZYB8KfT+oP/+fPAvu2VVrfV3WVWD5VHUzyusoZJtKXMbO4MryIJQIaGgmHHHRs4SAUvT oclXGGml/tQr/aXRWUma+hyB8OpB2BFq/rM6s50jF/7FSdKbekLMQ7JjsSHF3p6tfRJHMu MwJHHlAE2CscQILCquCqxz25jcWnHTDYaMnrbxqzg4c8hOVnE4L0iL0XU0uoDDr0doiHnl sOV3L8XMVhl4VjfhNTVCCn2eCFVbLZvZ0ahcbmPM1Wta13et6jv/IL6/bQObkg== 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 4cncNq2jTvz4sR; Thu, 16 Oct 2025 18:46: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 59GIkJfo064889; Thu, 16 Oct 2025 18:46:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIkJ3v064886; Thu, 16 Oct 2025 18:46:19 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:19 GMT Message-Id: <202510161846.59GIkJ3v064886@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: d2c80ed5c420 - stable/14 - tools: Update sysctl to its new name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d2c80ed5c42066bd74132d9fcd390cd2c884fcb9 Auto-Submitted: auto-generated The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=d2c80ed5c42066bd74132d9fcd390cd2c884fcb9 commit d2c80ed5c42066bd74132d9fcd390cd2c884fcb9 Author: Jose Luis Duran AuthorDate: 2025-10-16 17:18:51 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:44:51 +0000 tools: Update sysctl to its new name The kern.ipc.somaxconn sysctl has been replaced with kern.ipc.soacceptqueue since FreeBSD 10.0. Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 84333aada464296c1e28126b5c91ae2fb3f79eef) --- tools/tools/netrate/tcpp/README | 2 +- tools/tools/sysdoc/tunables.mdoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/netrate/tcpp/README b/tools/tools/netrate/tcpp/README index 6817bdf8ca25..ec0313a62eb8 100644 --- a/tools/tools/netrate/tcpp/README +++ b/tools/tools/netrate/tcpp/README @@ -84,7 +84,7 @@ In my testing, I use loader.conf entries of: kern.ipc.maxsockets=1000000 net.inet.tcp.maxtcptw=3000000 -kern.ipc.somaxconn=49152 +kern.ipc.soacceptqueue=49152 kern.ipc.nmbjumbo16=262144 kern.ipc.nmbjumbo9=262144 kern.ipc.nmbjumbop=262144 diff --git a/tools/tools/sysdoc/tunables.mdoc b/tools/tools/sysdoc/tunables.mdoc index 20b59f450cf2..397fe632322d 100644 --- a/tools/tools/sysdoc/tunables.mdoc +++ b/tools/tools/sysdoc/tunables.mdoc @@ -806,7 +806,7 @@ kern.ipc.nsfbufs kern.ipc.numopensockets --- -kern.ipc.somaxconn +kern.ipc.soacceptqueue int The maximum pending socket connection queue size. From nobody Thu Oct 16 18:46:38 2025 X-Original-To: dev-commits-src-branches@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 4cncPB6mRMz6CxpZ; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncPB698hz3FWL; Thu, 16 Oct 2025 18:46:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640398; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XFJ2pEmbVC7Sios19BCsyI5PWNRFx6mzdG3Qey5/dYk=; b=DCb90NIMbPL8PBI7GJ5eaN/lJlhmSclFYAVOOo/7BbmhZp/09JpKybMBil8Oh/BJT4K95V EUTPiuAnvhvQlpech/hJ1vZ19bD+hqtxY4gK1vV4tdyIYW4qJxleOgk8G08Ncgy1c8CTzE ECw7GD1L/Su0BLK8/gdKIoKzENLSS1HvJzjKpRAu+dK36fvncAFJzE41aRZplz5A8mPe07 Whxq+RfWZm6kNxyWDdojugX9bMWhUDn519oRIaj8UGUUXXNarGLoodBiPbv6yGF29ybVeO AZwIzvvP//aDQXLOF3HyNAtVqCVyBa9LjPVx/t/hkzTxAfz+JBSsCm+gdVjBjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640398; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XFJ2pEmbVC7Sios19BCsyI5PWNRFx6mzdG3Qey5/dYk=; b=UdzkJf6vBu7d0R3I3HfwYCXVaBPNING5pn9h7ooB/7aajcc+t+DFclapKChE9LLXxTPNG0 AXH8uLjEs4ZBxn1/dIfu2RxWKIlgs14o0tyA8UxUAEiK3l9XQGb42GU/r25GJcZOQk4IjN aY4NUMImWdjfWVy1v6OPZ1MCXmZR6vXOkHu2z+xUQ8Q1efnJ9n2PXZV6378sq2SILH25p8 efByYD3c73xLiQqN4G2bMQ/42NCHsP3FXtOXaGJkO18fC1gcD7aGYHVYP2bQaZ/cOuVlzj GVvyt+CucEALTTS2tmKfz7KCmEvgi0Cw2lf6XUeoe1rBpG0vEDPpZBM792JHnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640398; a=rsa-sha256; cv=none; b=MhJCLVkwMMQLlKaQJB79JY4qsLZhQ+818RDG52nDtmbnR6B7l+2dkKxKHfe00l345hzK6B WlJsEyikUbGNl6zfU/vPFeDNotH1EjlJg1+WvY7UP4AMse6bjqbeLGXm0QyW4j2ytxtHuh T0/rAZUDpEOSB4slY/mn5Euj28p373gEhMh/ulJwW+AByidEM5cdCBv2bJBEBuNkWBzJxO VEXnQsmx1RW3hnMHaAn+cZyOwh4Apj6z++auiBjJiKtbZb2o9Nibct1qLwa1NgohvjZX1w ZdiQ0zKi5ItcS0asXKRQ9aNfmUT3/7mR7ZIdYOuNg6ddLfGYX2zOs+FpyiSsBg== 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 4cncPB5YQGz5P8; Thu, 16 Oct 2025 18:46: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 59GIkcOm065113; Thu, 16 Oct 2025 18:46:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIkckY065110; Thu, 16 Oct 2025 18:46:38 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:38 GMT Message-Id: <202510161846.59GIkckY065110@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 14e02220e415 - stable/13 - nanobsd: rescue: Update legacy sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 14e02220e4159f197c148c60cfd8ccaa62076dce Auto-Submitted: auto-generated The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=14e02220e4159f197c148c60cfd8ccaa62076dce commit 14e02220e4159f197c148c60cfd8ccaa62076dce Author: Jose Luis Duran AuthorDate: 2025-10-16 17:13:49 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:45:23 +0000 nanobsd: rescue: Update legacy sysctls Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 93ee9bb424619f0189b3454380588c955222b89b) --- tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt index 1f475c957c0c..ece050bfab55 100644 --- a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt +++ b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt @@ -25,10 +25,10 @@ zfs_load="YES" vfs.root.mountfrom="zfs:boot/ROOT/root" #ZFS optional vm.kmem_size="8G" -vfs.zfs.arc_min="1G" -vfs.zfs.arc_max="2G" -vfs.zfs.prefetch_disable="1" -vfs.zfs.zil_disable=1 +vfs.zfs.arc.min="1G" +vfs.zfs.arc.max="2G" +vfs.zfs.prefetch.disable="1" +vfs.zfs.zil.replay_disable=1 vfs.zfs.zio.use_uma=0 #Power savings hw.pci.do_power_nodriver=3 From nobody Thu Oct 16 18:46:39 2025 X-Original-To: dev-commits-src-branches@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 4cncPD0KTKz6Cxjy; Thu, 16 Oct 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncPC6hsTz3FMF; Thu, 16 Oct 2025 18:46:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640399; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pe8tWAWr25a7iPhJ/srWMc2QHoqLIUF642DBoSNOfWo=; b=doWQGVcXNPxbEJMjS4MTZhpMG9G6XjzgNiRgFj7hhiPRG4+LkIAY8GHfvmdOmJ5q1wacsq HZ9q018C/xVxutfwdTnoKGHMfMG12FetedkG0/potVNOMKfra/oUlfnlWfNwOZwnaI+//z o7nLfnAOm+Z/lFNDrLikfjE4Cy5Y1mZkcsa015damclagBxtHg51ktbq0g5GdN5Ref4Hp9 9kx1cMDFLStuaSF2+p7hsnS30bndM1zWXVkgyirztUrVt9qbBKPiV85pp0Zdcquu2uW4KB Gsubkv3dk3E5d0QuWd91oVhX9XXEUaq/LA/H8Ctfdd4Y0/vdT3lLD3vGl9aduw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640399; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pe8tWAWr25a7iPhJ/srWMc2QHoqLIUF642DBoSNOfWo=; b=CovUEWYUwAzIi2F8jHIaECyok7sNkSrGdSSy6KhHrrO8IR7leab4Wh7986aNVIkJkngIvh Z2HsYu14wZn4Pxexij8uzx6SHCWeg5nzlJozol77x1pG671LTQRDxOFA8sH6wiAulA0wAb 4TKPSNDvB8QrDjnez2lwidu/tp1FebgQ9zi5aEaLrz6kRYtmBo9mq+yvOaZA8GThhRjBlo kdDdNzz6fkmh8HszpNeT7GusRjDb6pjt5ZufgZ2wJM63q9d2FC/+x3TEtaOoJswIAa4zB1 X+gJS2T4USdcVsQiaQfy+4sUQ3d8kZxZs9SVAknp6NZ/hGhSHzVoWukyDaSslA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640399; a=rsa-sha256; cv=none; b=SLKjoxq5ptE1SbfiDXk/dtRJ8u4SgIjpxQgFpDRURSrc93eQZbjcVtoZIF05+2kLBzaIso tf3JI+haG+FkBzWZ/bk04qGTxHgcqNu3k9OeJ1IQ3KHvU0kA1dHLoc0e2nsstaZ5G1iWvS HCfWkRBjI6BVljj1QPRuGTqGcK15N6x9kpjnn/eKrwpvSu1ueZ0ScRo9NgnMHbWfoaX2OM TefiyjaHx0g8QsG0FiI2Yxp4nXV+1qJXLAMFhXCqVWQ+z3YIcGkcM1kUCYHdsHD6Lu52IU WGMX7RYdaD1a8kovFoC1WagYOoH66nsRqaTPrj37aauDIHQvjiw8swPyNaVqGw== 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 4cncPC6DLlz4nR; Thu, 16 Oct 2025 18:46: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 59GIkdJO065150; Thu, 16 Oct 2025 18:46:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIkdge065147; Thu, 16 Oct 2025 18:46:39 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:46:39 GMT Message-Id: <202510161846.59GIkdge065147@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 07a3c93bc51e - stable/13 - tools: Update sysctl to its new name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 07a3c93bc51eab1ca51846a941b90a7161df52d7 Auto-Submitted: auto-generated The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=07a3c93bc51eab1ca51846a941b90a7161df52d7 commit 07a3c93bc51eab1ca51846a941b90a7161df52d7 Author: Jose Luis Duran AuthorDate: 2025-10-16 17:18:51 +0000 Commit: Jose Luis Duran CommitDate: 2025-10-16 18:45:33 +0000 tools: Update sysctl to its new name The kern.ipc.somaxconn sysctl has been replaced with kern.ipc.soacceptqueue since FreeBSD 10.0. Reviewed by: emaste MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D34598 (cherry picked from commit 84333aada464296c1e28126b5c91ae2fb3f79eef) --- tools/tools/netrate/tcpp/README | 2 +- tools/tools/sysdoc/tunables.mdoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/netrate/tcpp/README b/tools/tools/netrate/tcpp/README index 6817bdf8ca25..ec0313a62eb8 100644 --- a/tools/tools/netrate/tcpp/README +++ b/tools/tools/netrate/tcpp/README @@ -84,7 +84,7 @@ In my testing, I use loader.conf entries of: kern.ipc.maxsockets=1000000 net.inet.tcp.maxtcptw=3000000 -kern.ipc.somaxconn=49152 +kern.ipc.soacceptqueue=49152 kern.ipc.nmbjumbo16=262144 kern.ipc.nmbjumbo9=262144 kern.ipc.nmbjumbop=262144 diff --git a/tools/tools/sysdoc/tunables.mdoc b/tools/tools/sysdoc/tunables.mdoc index 6d9d807dd7dc..09a5ed8e7cfd 100644 --- a/tools/tools/sysdoc/tunables.mdoc +++ b/tools/tools/sysdoc/tunables.mdoc @@ -806,7 +806,7 @@ kern.ipc.nsfbufs kern.ipc.numopensockets --- -kern.ipc.somaxconn +kern.ipc.soacceptqueue int The maximum pending socket connection queue size. From nobody Thu Oct 16 18:50:18 2025 X-Original-To: dev-commits-src-branches@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 4cncTQ4vv5z6Cxt6; Thu, 16 Oct 2025 18:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTQ4J4wz3G2t; Thu, 16 Oct 2025 18: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=1760640618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ERv9SZhtUQ0kBQMeneup6pRCATfudM0A2yylgbShrRs=; b=DmYiHqYvrgmZIqRJ8EO73L42jq7Vlescytk9UpfgcsBFGSGv9e8h7idiVe6896P6/2g9GI BakL0BuLhpqmVuA+OCbBTMQnsj48Fk1WlRM3SSunkNgBNLlCvGtb06uDayj0+PuuLqr8Hs ANS37lc3L33Al6zjlBIYmmzinojlGZz7cMTEtcDJPFXY1b6TNM1F36uDKyiWCqH+y7dBFf 9BIWEP03nEiU6gUQcOhq4y0CMfaKA0CE73E2ztxdmzMH6Bz6JggyMuVQsXxgbbZa1VvZEQ eoO/69vZ4gCBGCE2B9/RUXJ5+n3bEHaG2H524M/6H3MBEWcvpfsR3Q6LsMR9bg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ERv9SZhtUQ0kBQMeneup6pRCATfudM0A2yylgbShrRs=; b=A157hP4UDj/B6HnX95vpNzvwDOCGEdLF+2VsZYrp1J+P1I0aCDXfhQc75dOs6R5Xgq2Rpj KJdxlEi+lOyyeM/9szYmQor8NyzXO/xpkNJoGFSv5kiDovzwQqbeeRG4h1wERK9ZhKXPFv yX4dQVO8TW5OlhvYjca6Sui7FlChhK6Bm07iY7kvy5w+rB3CIUjMQGxYe/j/S3qPwJpoiP E2aQhhjOGWE/mk381jBQMAGsIzgeQdBKHf+zkaLNk142EnaJGJhoOvQ6FIJ8DsyXGCR+eI 1dIFDLGU+sOI4iuEBI80G7x/0dVGZRZU7DaK6IaveuflOldq7Tth2th0Mo0CUw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640618; a=rsa-sha256; cv=none; b=yTzM/DvQDEHtS17Tbj85f5XcSNDI0T5CfeYpifyLtv/ykoKAP70RutJ/OAg745A7Grxf9D e6q7xhu752NGYrZgK94CzvERZCfCPc7ZeF5ZeW7fGkW7pDvkDZqcafUUofQmAX8YDpSTFD 3KaAsyFLIEZ9rPq0mIXMZnHI4+p8Pu/8HiPpKdn0Y+SFobgEo8nw+QYUPvSnbPC90yc8/m 9Y0KOYEe2dS5CtHz2ao4wQ3LpZSZBoXnvFdUDivDOcqnOJ81ItjbzNI/2QgL2vlaFNYCYu u3UyAX+XcMfAzouhgQe4Gxqv6RB6TGT9mD5FzT+HLTADF6PemymmYV4RNk8h3Q== 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 4cncTQ3rDtz5V5; Thu, 16 Oct 2025 18: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 59GIoIfv075063; Thu, 16 Oct 2025 18: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 59GIoITW075060; Thu, 16 Oct 2025 18:50:18 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:18 GMT Message-Id: <202510161850.59GIoITW075060@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: 330b91854917 - releng/15.0 - sys/rpc: UNIX auth: Rename 'ngroups' => 'supp_ngroups' for clarity List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 330b91854917ce416700ecb8a2a1d781f9abe45f Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=330b91854917ce416700ecb8a2a1d781f9abe45f commit 330b91854917ce416700ecb8a2a1d781f9abe45f Author: Olivier Certner AuthorDate: 2025-10-07 10:03:07 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:47:57 +0000 sys/rpc: UNIX auth: Rename 'ngroups' => 'supp_ngroups' for clarity Approved by: re (cperciva) MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit bda3b61512b2597d4c77d2b9c9074b844dec0405) (cherry picked from commit 5e482104ecfa57b6debc3c495f2dcb2d2ea50ea2) --- sys/rpc/authunix_prot.c | 16 ++++++++-------- sys/rpc/svc_auth_unix.c | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index b107d5541c50..f63a6d3f9dc6 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -60,7 +60,7 @@ bool_t xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) { uint32_t namelen; - uint32_t ngroups, i; + uint32_t supp_ngroups, i; uint32_t junk; char hostbuf[MAXHOSTNAMELEN]; @@ -102,14 +102,14 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) * historical layout of preserving the egid in cr_ngroups and * cr_groups[0] == egid. */ - ngroups = cred->cr_ngroups - 1; - if (ngroups > NGRPS) - ngroups = NGRPS; + supp_ngroups = cred->cr_ngroups - 1; + if (supp_ngroups > NGRPS) + supp_ngroups = NGRPS; } - if (!xdr_uint32_t(xdrs, &ngroups)) + if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); - for (i = 0; i < ngroups; i++) { + for (i = 0; i < supp_ngroups; i++) { if (i < ngroups_max) { if (!xdr_uint32_t(xdrs, &cred->cr_groups[i + 1])) return (FALSE); @@ -120,10 +120,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) } if (xdrs->x_op == XDR_DECODE) { - if (ngroups > ngroups_max) + if (supp_ngroups > ngroups_max) cred->cr_ngroups = ngroups_max + 1; else - cred->cr_ngroups = ngroups + 1; + cred->cr_ngroups = supp_ngroups + 1; } return (TRUE); diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 963f4f272964..aad4e7610795 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -65,7 +65,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) uint32_t time; struct xucred *xcr; u_int auth_len; - size_t str_len, gid_len; + size_t str_len, supp_ngroups; u_int i; xcr = rqst->rq_clntcred; @@ -84,12 +84,12 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); - gid_len = (size_t)IXDR_GET_UINT32(buf); - if (gid_len > NGRPS) { + supp_ngroups = (size_t)IXDR_GET_UINT32(buf); + if (supp_ngroups > NGRPS) { stat = AUTH_BADCRED; goto done; } - for (i = 0; i < gid_len; i++) { + for (i = 0; i < supp_ngroups; i++) { /* * Note that this is a `struct xucred`, which maintains * its historical layout of preserving the egid in @@ -100,18 +100,18 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) else buf++; } - if (gid_len + 1 > XU_NGROUPS) + if (supp_ngroups + 1 > XU_NGROUPS) xcr->cr_ngroups = XU_NGROUPS; else - xcr->cr_ngroups = gid_len + 1; + xcr->cr_ngroups = supp_ngroups + 1; /* * five is the smallest unix credentials structure - * timestamp, hostname len (0), uid, gid, and gids len (0). */ - if ((5 + gid_len) * BYTES_PER_XDR_UNIT + str_len > auth_len) { + if ((5 + supp_ngroups) * BYTES_PER_XDR_UNIT + str_len > auth_len) { (void) printf("bad auth_len gid %ld str %ld auth %u\n", - (long)gid_len, (long)str_len, auth_len); + (long)supp_ngroups, (long)str_len, auth_len); stat = AUTH_BADCRED; goto done; } From nobody Thu Oct 16 18:50:19 2025 X-Original-To: dev-commits-src-branches@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 4cncTR5mSFz6Cxwh; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTR4qdsz3G4j; Thu, 16 Oct 2025 18:50:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KWV7wjHtnbioqmoZTuZEhFKevpfoA6x44Jlhn6Hc/iA=; b=LtERT7VKPU5hLnvtkE9zYvVZ1qBANRd+pZrNY2JqHeiOIGs9/hKtulau8fHogKgdg5GHxM msyjaNc5/mJsHrJmH+juaXTrlJwIIhrV6YCwiWglnKO/o5WKJKcbjTVWjH7wsPcIXnKXNE e2Ki09TdXskU1qIPrWEARD75fkh9I4g1LhV2/J2/vUa38oQloxYm4OrKoYPm31tUR4DEXe u6fHp6o4DAkjubSEvczVxZnuugRsn94MDC4r5O0Gxo5KUDK5ebHN0k7zQLWJ6bbJZP2Fjd 7k0Y9MjLhOiWxFcpvlqgovVZ56ysrbvLkX3afeV1kdHlikfYUVP2JI8ll5ghOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KWV7wjHtnbioqmoZTuZEhFKevpfoA6x44Jlhn6Hc/iA=; b=KI7YP7rlhyNyurY7mRKd5/haN8nfCdZSPkMiLB8taIyIMi3tcA+xvzSRnWT5p1kovScp2s fxu9F2YLMjD5pAcE2iPv2NdUrJr/qXcpfQwMT2uVFf7fMo0ss6GCqmltmdPZaLlHU5gtPM qhOXNdq7wRUlvtLw0D7jPtK/hVimF9XcyTh3G0TUOET0usippD2GVk1uqLmhZgUhunwcrV HMgVYHts6h8c7W82/ma6VPCUY9K/TZoerI7h9jVegC1lkxtP7acY3kxJ+m1S08b3+ZIf7f 8mj5RNYaaU9uZAsHjKDQMevoWToKPS81oTMXpYRUp3hCCa0g7C8R1NecePvIqQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640619; a=rsa-sha256; cv=none; b=jsl6ZRA6IbfJFDP1Qa5lC7FF9ZuAP8TGu71t4pwQQ3PHnfNLrBU5oxZQZvWWoJQV8gpJBb Td6iZMDJ2P90IOQbFd+TuUeeXQLtzCf7eQ+Hd9uaQy+MPHpzRPx2Op3meMc/ApIb2a5ejO VyT15fNvDClLGh63NfiUOO98IdxKRqE6GsxDsamfMy6tdi7RYJxxD8QuOVL+7imR9OVJkJ ln+4wnRitHSmuSkS1a0RjzfYMxQ6cwTkc/VK8j0jNDPnRFmRffOFjqvJosk88Bpjcfokqd 5tX0EfHuF8j03XkZLcnJNqiNTSqO8WIxoGvl6XdQomc0J1qL3sQ/Kec0cGGU+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 4cncTR4Rjvz54w; Thu, 16 Oct 2025 18:50: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 59GIoJqK075095; Thu, 16 Oct 2025 18: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 59GIoJeH075092; Thu, 16 Oct 2025 18:50:19 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:19 GMT Message-Id: <202510161850.59GIoJeH075092@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: f647564f3ff6 - releng/15.0 - sys/rpc: UNIX auth: Fix OOB accesses, notably writes on decode List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: f647564f3ff637699d7e13ef6adf3659e254cbf7 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f647564f3ff637699d7e13ef6adf3659e254cbf7 commit f647564f3ff637699d7e13ef6adf3659e254cbf7 Author: Olivier Certner AuthorDate: 2025-10-07 10:02:23 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:00 +0000 sys/rpc: UNIX auth: Fix OOB accesses, notably writes on decode When the received authentication message had more than XU_NGROUPS, we would write group IDs beyond the end of cr_groups[] in the 'struct xucred' being filled (as 'ngroups_max' is always greater than XU_NGROUPS). For robustness, prevent various OOB accesses that would result from a change of value of XU_NGROUPS or a 'struct xucred' with an invalid 'cr_ngroups' field, even if these cases are unlikely. Approved by: re (cperciva) Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52960 (cherry picked from commit 47e9c81d4f1324674c624df02a51ad3a72aa7444) (cherry picked from commit 9492a1e27fb18fcd6122bbd9ddcd853ee7693417) --- sys/rpc/authunix_prot.c | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index f63a6d3f9dc6..89f0ab3ed44e 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -75,7 +75,6 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) } else { namelen = 0; } - junk = 0; if (!xdr_uint32_t(xdrs, time) || !xdr_uint32_t(xdrs, &namelen)) @@ -93,15 +92,25 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_uint32_t(xdrs, &cred->cr_uid)) return (FALSE); + + /* + * Safety check: The protocol needs at least one group (access to + * 'cr_gid', decrementation of 'cr_ngroups' below). + */ + if (xdrs->x_op == XDR_ENCODE && cred->cr_ngroups == 0) + return (FALSE); if (!xdr_uint32_t(xdrs, &cred->cr_gid)) return (FALSE); if (xdrs->x_op == XDR_ENCODE) { /* - * Note that this is a `struct xucred`, which maintains its - * historical layout of preserving the egid in cr_ngroups and - * cr_groups[0] == egid. + * Note that this is a 'struct xucred', which still has the + * historical layout where the effective GID is in cr_groups[0] + * and is accounted in 'cr_ngroups'. We substract 1 to obtain + * the number of "supplementary" groups, passed in the AUTH_SYS + * credentials variable-length array called gids[] in RFC 5531. */ + MPASS(cred->cr_ngroups <= XU_NGROUPS); supp_ngroups = cred->cr_ngroups - 1; if (supp_ngroups > NGRPS) supp_ngroups = NGRPS; @@ -109,22 +118,15 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); - for (i = 0; i < supp_ngroups; i++) { - if (i < ngroups_max) { - if (!xdr_uint32_t(xdrs, &cred->cr_groups[i + 1])) - return (FALSE); - } else { - if (!xdr_uint32_t(xdrs, &junk)) - return (FALSE); - } - } - if (xdrs->x_op == XDR_DECODE) { - if (supp_ngroups > ngroups_max) - cred->cr_ngroups = ngroups_max + 1; - else - cred->cr_ngroups = supp_ngroups + 1; - } + junk = 0; + for (i = 0; i < supp_ngroups; ++i) + if (!xdr_uint32_t(xdrs, i < XU_NGROUPS - 1 ? + &cred->cr_sgroups[i] : &junk)) + return (FALSE); + + if (xdrs->x_op != XDR_ENCODE) + cred->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); return (TRUE); } From nobody Thu Oct 16 18:50:20 2025 X-Original-To: dev-commits-src-branches@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 4cncTT19w9z6Cy6K; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTS5sqbz3Fqr; Thu, 16 Oct 2025 18: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=1760640620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LJSgK0rJNLoRAVcE2j8R6mknd98PUIRncM/4Rr6h5tc=; b=f5s182gD3YWUFcKpvp+xRNCSyAymOa31QskLPC9SLADXybap138XDzB2ZI3jSqlilMynRm 1NAf5Oi+Uunbci1zap8US+ctjZeKSyCA540Ywdmw7G4ydfu/X3ODpMqv4mwz3X3cTkqpP7 2fkOoLP+EpXH11ySZuJJ7bcnWt7V7xwBaq+VfcrOv8C7qWUnSt82qunr+1ctSA8b3TCxf2 Y3+XWWXOkahOacMOzxsQ3fpTDoZTGYmvehPbzUwL6kJAZ9D8bk588r5GVUAx4fKNmw8aWg YxEWYEOMjKhPGBKJhgasmPfYjxf9ojeWGjX6E/+hENEzwV0ZvX9mDn2PKYt68g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LJSgK0rJNLoRAVcE2j8R6mknd98PUIRncM/4Rr6h5tc=; b=o2okT7M3bKWxgMEm4BHlr/MHui0gMB+9bwm1XfvCfE5ykWihh14XSH+F2LN/yxl38z4B1o 7GVZBh2jXBlbJ2BG9qxMYGslLKa1VA/3FukAq8cxN9G4c/fVMWYkB8K8SdI6csAkkkC71Z f/1SEN3QMLwuaD65+g572EpAWCbklZS0iE6/offS7R3O9dlg6LUfdqp240tkjAYmtbGx3a GjkNOpGmi8oU8f+0G6ye78q1i/2+JhmI1WZZWie94yhWr/D+AxXdNF9ixm9WzMlMNLkGty Rr6CbjrbE6Aj95Gqh5QHdO2W9DSNPBKvYLjDbM3VKWYlvaDggf8yBiLyyWHFuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640620; a=rsa-sha256; cv=none; b=Y0D76kyu2sczzu4vQUp/3rqLx5eWyxd+wud6llRvXxkSSnbSTpTMu4iI71L6+iaQjZ/oXd MgrcQ/XtMQRNUpj1ixeXKkod6YdG0++usrCDtP7slcnsuU3X9vjh8uvJ8JDNqteEBIuDCX GpLl7lIeD3XzbAC1KcXAMszs1HJEvHSuLxBaz/jSa891nJWq+n9A9xjXpublEZFPWoGHRS 9CngiOT6nRaQkaAQwZDeV9y15q4D8mI4te3Gh4I3GprzTIdd7CfmevCXnG0JEut90JbGRe c4lHXWg9O3eXUW970QtyNGI/DfefKll9fCxTM/LXSLS9d/tNuTOvvbOmfpOREQ== 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 4cncTS5PSVz4sW; Thu, 16 Oct 2025 18: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 59GIoKvq075128; Thu, 16 Oct 2025 18:50:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GIoKkA075125; Thu, 16 Oct 2025 18:50:20 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:20 GMT Message-Id: <202510161850.59GIoKkA075125@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: ed62b31e3000 - releng/15.0 - sys/rpc: Define AUTH_SYS_MAX_{GROUPS,HOSTNAME} List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: ed62b31e300065e51237f0063e0dff3cf76503b7 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=ed62b31e300065e51237f0063e0dff3cf76503b7 commit ed62b31e300065e51237f0063e0dff3cf76503b7 Author: Olivier Certner AuthorDate: 2025-10-07 07:51:23 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:04 +0000 sys/rpc: Define AUTH_SYS_MAX_{GROUPS,HOSTNAME} As, respectively, the maximum number of "supplementary" groups and the maximum hostname size allowed in the credentials structure for AUTH_SYS (aka, AUTH_UNIX). Will be used in subsequent commits. Approved by: re (cperciva) Reviewed by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52961 (cherry picked from commit f7c4f800cc0b4fac1c99cda8e22d46b67592f9fa) (cherry picked from commit 37aeac44647dbf2c194c70a56a3fd52aef365aba) --- sys/rpc/auth.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/rpc/auth.h b/sys/rpc/auth.h index 33c33ffd594d..648fb99a3a27 100644 --- a/sys/rpc/auth.h +++ b/sys/rpc/auth.h @@ -354,6 +354,10 @@ __END_DECLS #define RPCSEC_GSS 6 /* RPCSEC_GSS */ #define AUTH_TLS 7 /* Initiate RPC-over-TLS */ +/* RFC 5531's prescribed limits for variable-lenth arrays. */ +#define AUTH_SYS_MAX_HOSTNAME 255 +#define AUTH_SYS_MAX_GROUPS 16 /* Supplementary groups. */ + /* * Pseudo auth flavors for RPCSEC_GSS. */ From nobody Thu Oct 16 18:50:21 2025 X-Original-To: dev-commits-src-branches@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 4cncTV0rH3z6Cy3p; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTT6rRGz3G37; Thu, 16 Oct 2025 18: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=1760640622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yHwReUBKrOtrQ7EnYzTZuP7TOFWM46tBn8ZGMs+1uAw=; b=lXEP6o8xm/Vyib4dIrL+ZtzgFXBa92SFRfdRR15Sg9g5g0ur1lrQWTzrItrsqAgq0dfEWG hfZBx87f6S3oh+kNVi12JW5SjacdN8gPdgCHrKFy1QFqVC+H2w+PsR14BWqWUeLGwGsBOZ rrDlq3MDZ+pm/GBhtvLMyGW35+mvXGv1VOGvGxXG0kk8GJ93fx2tAAq3ORRHr9JxdIxoMM a8IFb4xtVoQOBhRaByVJ6Tr4Wrmz48ljVzaYgjuTfVOQkJfUBA4dao1UPXVJuUyB3+Yqt0 yx/ghdVrbthIaYCXXzVDNDK67lGPM7E0U/OBLFFQyLu6hTvV9+AZsWPT7ENDiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yHwReUBKrOtrQ7EnYzTZuP7TOFWM46tBn8ZGMs+1uAw=; b=ZtbxyC6U+fbA/LyVW/qtrqOGdVicBziNFXoYDjQucEtjs3SuYzCT89Ke5OgIjaWtIf5pl1 Vt+PZ8Q7l4Yr1ir514/sXhimPGrssFmhaPcaF16AqH45utI8PNPnsKGpeQme9chmL9XBHV v8fvN3WvmbrLZ1sFt6Yj00Ypb1jLnWGOurmoeALbzyYUtPlOXLOhVHxBt2WYn4Kjtonjcp xH48oqzeSOauP8xzAe27MHs2XjcYPpzM1lRb1nnquqnGGwkuzMdUvSrHWAd4l0FOCUC8uw fQBM7mASIRTgvPgxu6G1bBcaw6sRR9TrYpL4BpWPP1Da9g5SOUKCFniuJWVm1A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640622; a=rsa-sha256; cv=none; b=pzsaOrCvVkiQLUznohfGKoPtDA/VZuxwFSmGBLPWjTa4ueGG44JTN1TMwuJsYUOUqvkupt FikMLck3FeEpl7sRupe4v5FZ7arDkekFZGYMptJvY0R2iNmvN1QVNrRhyXRgnIJT5pugJB qgtBKaCRGluCWdgCOud5mlKKSD2+a0JbuSydZ6NOZdQtyK66asTt+foMrhwJY2VRN7gr+E 0hxLgKTUdUA2PLCcQbCFNOmzkZ3MDN4VrU/krtenWY9GMM/uZRnbKYV1/5mCeqUCsO/mGk o0pLDmJ/yzV8j/kjll226khtpsaY/Ek6ts+ZxtChr7LBQuKg+0aH/9R4HLqDOg== 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 4cncTT6Q13z4nS; Thu, 16 Oct 2025 18: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 59GIoLHH075164; Thu, 16 Oct 2025 18: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 59GIoLga075161; Thu, 16 Oct 2025 18:50:21 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:21 GMT Message-Id: <202510161850.59GIoLga075161@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: fc3b621afdb5 - releng/15.0 - sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (1/2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: fc3b621afdb551dc17ebe41134cfdb3799658792 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=fc3b621afdb551dc17ebe41134cfdb3799658792 commit fc3b621afdb551dc17ebe41134cfdb3799658792 Author: Olivier Certner AuthorDate: 2025-10-07 08:46:56 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:07 +0000 sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (1/2) Consistently with the XDR_INLINE() variant of xdr_authunix_parms() (_svcauth_unix() in 'svc_auth_unix.c'), reject messages with credentials having a machine name length in excess of AUTH_SYS_MAX_HOSTNAME or more than AUTH_SYS_MAX_GROUPS supplementary groups, which do not conform to RFC 5531. This is done mainly because we cannot store excess groups anyway, even if at odds with the robustness principle ("be liberal in what you accept"). While here, make sure the current code is immune to AUTH_SYS_MAX_GROUPS changing value (in future RFCs?) even if that seems improbable. Approved by: re (cperciva) Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52962 (cherry picked from commit b119ef0f6a81eb32b0e1cd0075cec499543e7ddd) (cherry picked from commit 34fc20503f04e3c035844f4bfa8eb72964ccbf68) --- sys/rpc/authunix_prot.c | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index 89f0ab3ed44e..c1a9f90bbe28 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -50,9 +50,6 @@ #include -/* gids compose part of a credential; there may not be more than 16 of them */ -#define NGRPS 16 - /* * XDR for unix authentication parameters. */ @@ -65,13 +62,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) char hostbuf[MAXHOSTNAMELEN]; if (xdrs->x_op == XDR_ENCODE) { - /* - * Restrict name length to 255 according to RFC 1057. - */ getcredhostname(NULL, hostbuf, sizeof(hostbuf)); namelen = strlen(hostbuf); - if (namelen > 255) - namelen = 255; + if (namelen > AUTH_SYS_MAX_HOSTNAME) + namelen = AUTH_SYS_MAX_HOSTNAME; } else { namelen = 0; } @@ -87,6 +81,8 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) if (!xdr_opaque(xdrs, hostbuf, namelen)) return (FALSE); } else { + if (namelen > AUTH_SYS_MAX_HOSTNAME) + return (FALSE); xdr_setpos(xdrs, xdr_getpos(xdrs) + RNDUP(namelen)); } @@ -112,13 +108,30 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) */ MPASS(cred->cr_ngroups <= XU_NGROUPS); supp_ngroups = cred->cr_ngroups - 1; - if (supp_ngroups > NGRPS) - supp_ngroups = NGRPS; + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) + /* With current values, this should never execute. */ + supp_ngroups = AUTH_SYS_MAX_GROUPS; } if (!xdr_uint32_t(xdrs, &supp_ngroups)) return (FALSE); + /* + * Because we cannot store more than XU_NGROUPS in total (16 at time of + * this writing), for now we choose to be strict with respect to RFC + * 5531's maximum number of supplementary groups (AUTH_SYS_MAX_GROUPS). + * That would also be an accidental DoS prevention measure if the + * request handling code didn't try to reassemble it in full without any + * size limits. Although AUTH_SYS_MAX_GROUPS and XU_NGROUPS are equal, + * since the latter includes the "effective" GID, we cannot store the + * last group of a message with exactly AUTH_SYS_MAX_GROUPS + * supplementary groups. We accept such messages so as not to violate + * the protocol, silently dropping the last group on the floor. + */ + + if (xdrs->x_op != XDR_ENCODE && supp_ngroups > AUTH_SYS_MAX_GROUPS) + return (FALSE); + junk = 0; for (i = 0; i < supp_ngroups; ++i) if (!xdr_uint32_t(xdrs, i < XU_NGROUPS - 1 ? From nobody Thu Oct 16 18:50:22 2025 X-Original-To: dev-commits-src-branches@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 4cncTW4zN5z6Cxt9; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTW0WpZz3G5N; Thu, 16 Oct 2025 18: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=1760640623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VzT6hrk6O2GGl9tp9Ei1KK3wiZnJSbyTdkgejbBBBVc=; b=DQ3Z2/lIV9w1/2+D18tzSk5BY0BEKs7zOzAUGqmyjJeHBaG85wCkS5DJjO8Bxlx/+lDBBu 1T1Q/P3XWxnsRSVtkqu8ba/n8Y8nmOL7AtqIqLPOO914HbN289+P/GDi61PEpwMJaP85Z3 qIHIU0uxoE1kCCWo5hJNsdRI0lggdbYzIAwuJOQdyNSKT8wABU5hin0Y0smXC1pmBpD1Un GGDCp/d0Jx4pKFmNt7Jt2xDpFtllI8gJsl96GcjFSrdpEwX3/9fHrocTgNx5ra64kS6pd2 XTKpZaRX1l+etMq3jETyUsqiJdTbf/T5ZBUaZ9xenoYfTt7MX49qcGUoNaIXQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VzT6hrk6O2GGl9tp9Ei1KK3wiZnJSbyTdkgejbBBBVc=; b=lSk1xSDzFBIbbC1sJ3pts0fi19rE+xK/w72WsgvPHuNHQHETv4LWoVt377aW3IRjSL+S2K l1gUj4cDBxZg9hxkzXLcx6sfCMGEJPSZFpSi7T4ABdmuC+CxRu4U+WnUPtVig3gK47zlHh vcjnAUCluDjejlrdHadqa/EVETkpzgVaWEFV1SPel5US0tqRN25ie50L4mYDK39OE5fOpM A5hD2iXkR2MR9Bl6co85BYiMSrzByxe+HNE+HwqOT+xrs3xkT9p/d5EajEMnbKjlMrrtgc 8KysKdmPQbYBSAj89Y7x0QlusT94dqtYnPZfZl4SXg0AHOyvn7ccPfWMEPl0pA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640623; a=rsa-sha256; cv=none; b=H3fEPv27jN1mAcVs7b6uXDUOouPMsPUOaK/wRzZo8ghimk71O7WMHK32stWJPjViJQG/nd remgkwtxktY0Bb0tqUYuj7/3l3YwgDU+OjU3HWzwYfHCBR0lvuWZJ1pzN6qZYeDzfkoV+h RsZKKx9LkzyqyBu0A0CK1hIuWXUElLf17kePcwLfJ5SgFIB9u+ktW0usELX5a81zsNbCwn zvpcmRs5R9F/TcdQKAyLqZwiuT+dQPwUnAZBr0lfVlRfXJFiKJDNIuI5JxxB8i4nAH3/aj Fik+VL+9c16xUAvu99BU3+JJ8MFcOppKRZY98ZFPB6o3jq8PAso56kmJlqxnNQ== 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 4cncTV70hlz4nT; Thu, 16 Oct 2025 18: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 59GIoMnj075197; Thu, 16 Oct 2025 18: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 59GIoMb1075194; Thu, 16 Oct 2025 18:50:22 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:22 GMT Message-Id: <202510161850.59GIoMb1075194@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: d14f6f170453 - releng/15.0 - sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (2/2) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: d14f6f17045395572b605b4f00b2d9b40fff98a8 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=d14f6f17045395572b605b4f00b2d9b40fff98a8 commit d14f6f17045395572b605b4f00b2d9b40fff98a8 Author: Olivier Certner AuthorDate: 2025-10-07 13:33:53 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:11 +0000 sys/rpc: UNIX auth: Use AUTH_SYS_MAX_{GROUPS,HOSTNAME} as limits (2/2) Remove local defines from 'svc_auth_unix.c' and use the new limit macros instead. Approved by: re (cperciva) Reviewed by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52963 (cherry picked from commit e665c0f6f7a611d25d9d7e7f64d98c84b3a92820) (cherry picked from commit 9763e76cccf05d405e0fd9c9c351808993e93b14) --- sys/rpc/svc_auth_unix.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index aad4e7610795..b3389bc79511 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -50,9 +50,6 @@ #include -#define MAX_MACHINE_NAME 255 -#define NGRPS 16 - /* * Unix longhand authenticator */ @@ -76,7 +73,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) if (buf != NULL) { time = IXDR_GET_UINT32(buf); str_len = (size_t)IXDR_GET_UINT32(buf); - if (str_len > MAX_MACHINE_NAME) { + if (str_len > AUTH_SYS_MAX_HOSTNAME) { stat = AUTH_BADCRED; goto done; } @@ -85,7 +82,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); supp_ngroups = (size_t)IXDR_GET_UINT32(buf); - if (supp_ngroups > NGRPS) { + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) { stat = AUTH_BADCRED; goto done; } From nobody Thu Oct 16 18:50:23 2025 X-Original-To: dev-commits-src-branches@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 4cncTX4FKgz6Cy3r; Thu, 16 Oct 2025 18:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTX18S9z3GCq; Thu, 16 Oct 2025 18: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=1760640624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZjXXO9b4gtrhzfbvRNhfbX4e3nL29YtE3VPrNI3zajY=; b=lThBaX0E7tmJzg7RTZO4oogfSMHm1V1jEmsF40zBURCVJOg6C6nO0UHeawD+fXoR/lfsW6 QyU1JKuIhEA6cmPMOer/CivGCpcTfzuDftz559ePUYM6Mgds5myObInVjQuoTFnreWGm24 AX55//ePLkVKJJx6QQI8fXyzcz8IBGJcvbScjRRtcziZC0ey8e2bHRxu5+G+XheQiqozZs re/cJQXAbYT9tTtAA5icZcSXmnxPYw2MhWqmSgqFR53lzqREMRoCGB3ZJSKghE9LzRoms1 mzxKQxhfrAHflNnkCYh6gu6F8WQT/juqujRLYaTR/EYUgT50VbFEyx0RNqRb9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZjXXO9b4gtrhzfbvRNhfbX4e3nL29YtE3VPrNI3zajY=; b=g3rpRaED9h5GnioRI1fXcYsukkYY6zpcFbOJb8hkiwqiMUdk4cyGpUo/rc5ES53m4iiVfO YlGjwfuk+NpVZYx13YIJUB2hWx9aAGgRgp4m1PWyTD+HIRcITg+d9hXNQOUtnKq4dToTOI Zaa76yO74ofeAkbEe/S6nBP5bZnqLPL48CVzWsmor5WQ3o+hq9F6WHSj8sdLxGdccin/X+ DVWsowHorYtVxSiSKD1X20Z4xKof/wC10ZJgTDy9UdEnIF5gCKc6cX0HgKacdBRFV5KWnx /AI9Wc1IH+mqxVQbTHbj5/5BuiN1JTJTqMFG2FSflToxqhpnOIvHiDXenkpGZg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640624; a=rsa-sha256; cv=none; b=f3GAJu/IE7Z5AuVAhtVMMAQf6uN5Hwk/W+EVenU4Vj/cdW9V3AuDw7IBop9Aueq+BTl9BY +r2pklZJ6Q7SAWquABCIlGxO4TV94G26P95FOca+bM0G2XCJQBkr4ME4hlbDv1io8KszzL BpulEqiJ7DrBNrpshbczjDvjVt5zVOJ0A5sy1nabHdfosHqef+XDR/4Zh7L86b/8CIqjUA GnjxwhVDpKOd0xcd07pgl/sZpXKrRUnKiv+gtNE+99uYYrAdELWkXhTgr0OUvAvd9MixLZ RpLUVhevphHQ6Yp1MqPqD+OxJLK2UyfsDJZ1xNPT5SKolUzyPftoeVFzvvh+zw== 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 4cncTX0SmBz4sX; Thu, 16 Oct 2025 18: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 59GIoNW2075235; Thu, 16 Oct 2025 18: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 59GIoNkA075232; Thu, 16 Oct 2025 18:50:23 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:23 GMT Message-Id: <202510161850.59GIoNkA075232@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: f96df7ef179f - releng/15.0 - sys/rpc: UNIX auth: Fix OOB reads on too short message List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: f96df7ef179ff54f8fe5f3ba1dcc780e9868615d Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f96df7ef179ff54f8fe5f3ba1dcc780e9868615d commit f96df7ef179ff54f8fe5f3ba1dcc780e9868615d Author: Olivier Certner AuthorDate: 2025-10-07 15:51:16 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:14 +0000 sys/rpc: UNIX auth: Fix OOB reads on too short message In the inline version (_svcauth_unix()), fix multiple possible OOB reads when the credentials part of a request is too short to contain mandatory fields or with respect to the hostname length or number of groups it advertises. The previously existing check was arriving too late and relied on possibly wrong data coming from earlier OOB reads. While here, use 'uint32_t' as the length/size type, as it is more than enough and removes the need for conversions, explicit or implicit. While here, factor out setting 'stat' to AUTH_BADCRED and then jumping to 'done' on error, through the new 'badcred' label. While here, through comments, refer to what the non-inline version is doing (xdr_authunix_parms() in 'authunix_prot.c') and the reasons. Approved by: re (cperciva) Reviewed by: rmacklem Fixes: dfdcada31e79 ("Add the new kernel-mode NFS Lock Manager.") MFC after: 2 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52964 (cherry picked from commit d4cc791f3b2e1b6926420649a481eacaf3bf268e) (cherry picked from commit 45e671c9cd3b92ad20addf340f96399d0055df7a) --- sys/rpc/svc_auth_unix.c | 99 ++++++++++++++++++++++++++++++------------------- 1 file changed, 60 insertions(+), 39 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index b3389bc79511..4d5535a4fee2 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -59,11 +59,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) enum auth_stat stat; XDR xdrs; int32_t *buf; - uint32_t time; struct xucred *xcr; - u_int auth_len; - size_t str_len, supp_ngroups; - u_int i; + uint32_t auth_len, time; xcr = rqst->rq_clntcred; auth_len = (u_int)msg->rm_call.cb_cred.oa_length; @@ -71,51 +68,71 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) XDR_DECODE); buf = XDR_INLINE(&xdrs, auth_len); if (buf != NULL) { - time = IXDR_GET_UINT32(buf); - str_len = (size_t)IXDR_GET_UINT32(buf); - if (str_len > AUTH_SYS_MAX_HOSTNAME) { - stat = AUTH_BADCRED; - goto done; + /* 'time', 'str_len', UID, GID and 'supp_ngroups'. */ + const uint32_t min_len = 5 * BYTES_PER_XDR_UNIT; + uint32_t str_len, supp_ngroups; + + if (auth_len < min_len) { + (void)printf("AUTH_SYS: Too short credentials (%u)\n", + auth_len); + goto badcred; } + time = IXDR_GET_UINT32(buf); + str_len = IXDR_GET_UINT32(buf); + if (str_len > AUTH_SYS_MAX_HOSTNAME) + goto badcred; str_len = RNDUP(str_len); + /* + * Recheck message length now that we know the value of + * 'str_len' (and that it won't cause an overflow in additions + * below) to protect access to the credentials part. + */ + if (auth_len < min_len + str_len) { + (void)printf("AUTH_SYS: Inconsistent credentials and " + "host name lengths (%u, %u)\n", + auth_len, str_len); + goto badcred; + } buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); - supp_ngroups = (size_t)IXDR_GET_UINT32(buf); - if (supp_ngroups > AUTH_SYS_MAX_GROUPS) { - stat = AUTH_BADCRED; - goto done; - } - for (i = 0; i < supp_ngroups; i++) { - /* - * Note that this is a `struct xucred`, which maintains - * its historical layout of preserving the egid in - * cr_ngroups and cr_groups[0] == egid. - */ - if (i + 1 < XU_NGROUPS) - xcr->cr_groups[i + 1] = IXDR_GET_INT32(buf); - else - buf++; + supp_ngroups = IXDR_GET_UINT32(buf); + /* + * See the herald comment before a similar test at the end of + * xdr_authunix_parms() for why we strictly respect RFC 5531 and + * why we may have to drop the last supplementary group when + * there are AUTH_SYS_MAX_GROUPS of them. + */ + if (supp_ngroups > AUTH_SYS_MAX_GROUPS) + goto badcred; + /* + * Final message length check, as we now know how much we will + * read in total. + */ + if (auth_len < min_len + str_len + + supp_ngroups * BYTES_PER_XDR_UNIT) { + (void)printf("AUTH_SYS: Inconsistent lengths " + "(credentials %u, machine name %u, " + "supplementary groups %u)\n", + auth_len, str_len, + supp_ngroups * BYTES_PER_XDR_UNIT); + goto badcred; } - if (supp_ngroups + 1 > XU_NGROUPS) - xcr->cr_ngroups = XU_NGROUPS; - else - xcr->cr_ngroups = supp_ngroups + 1; /* - * five is the smallest unix credentials structure - - * timestamp, hostname len (0), uid, gid, and gids len (0). + * Note that 'xcr' is a 'struct xucred', which still has the + * historical layout where the effective GID is in cr_groups[0] + * and is accounted in 'cr_ngroups'. */ - if ((5 + supp_ngroups) * BYTES_PER_XDR_UNIT + str_len > auth_len) { - (void) printf("bad auth_len gid %ld str %ld auth %u\n", - (long)supp_ngroups, (long)str_len, auth_len); - stat = AUTH_BADCRED; - goto done; + for (uint32_t i = 0; i < supp_ngroups; ++i) { + if (i < XU_NGROUPS - 1) + xcr->cr_sgroups[i] = IXDR_GET_INT32(buf); + else + buf++; } - } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) { - stat = AUTH_BADCRED; - goto done; - } + xcr->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); + } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) + goto badcred; rqst->rq_verf = _null_auth; stat = AUTH_OK; @@ -123,6 +140,10 @@ done: XDR_DESTROY(&xdrs); return (stat); + +badcred: + stat = AUTH_BADCRED; + goto done; } From nobody Thu Oct 16 18:50:25 2025 X-Original-To: dev-commits-src-branches@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 4cncTY5Q7kz6CxtB; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTY25yZz3G5s; Thu, 16 Oct 2025 18: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=1760640625; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=THqlkSXcAbywfjWVgIEjaef85Uhr5EJII7RrQ6oM5Hc=; b=QcgX4dO1p/dgXM9m5sF6/VEbtCagnPC/WgrJlAHzmdDwD6FKsY6TIK9u5/WDpe9nl6Gpn6 CoTXNcrTYh4h8Yn09DwgMEH1QlnaVNczCDvQ1RUtZMdksRaG3DtN2R76MYFtR2kC3GtQsb 8ME8cWYQCXtb7wlo8EITtMK+7r3PoZlRw5E8vLKFAvObHm6Xdj4vM3MxxBumMGdH/JM0u1 EtNe2rKBHZCu5xGlaMhw9jSOTwINuQVV8G4XNDD++gmiKgW9Kedu4bF6Y9edgGr3oa7w65 SRC//O4jBotWCELyPl9+62b5MbHTqb+7ZiEEK8fvNGGvAbPxP5UKKOHB8r3wxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640625; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=THqlkSXcAbywfjWVgIEjaef85Uhr5EJII7RrQ6oM5Hc=; b=IYQAC1lBmxjP/27yvRH7hYgHYPIsczFsdKVPQIk+hEsEfztfk6P6sm8Lefeq0OiFWvg5FU bXc84fKQXIMh2PdYOQcUV7dIcXVZYVdkFJ7Gjzd1V+EAyaRigMgIV1f6h4xjzY7uU1p0U/ lppbHTpUr47kukEQSYPUvu1yULpw2Xaj/uvkZ5AFwI+C/rrUJoC/6+FasVUq2ny5VhpuY+ abX3azTp/tpU7TG6sLYUcn/Rb7sLnob3H5y6hC3YAW5ikpCAAdnF8gatnlJN4ZmE5G2Alz VDd9reIHhJXJBzuI7rvY207NMTDs/8LLieXC7ID+plA9FlEBg4M0X4VipVD7dA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640625; a=rsa-sha256; cv=none; b=By+oBAJemybthw4dlXSl46BXCYC1K94epAzfkCuhuvVfRifqQdqx9Phgqp/d3H2yO14a3J lhmOzBCLD+2UAvcv378ejXY8EpzLVfsY+j3uwm7zk7qEjtEW5M4hX9X2lIv6cefWcTjnfh mN72cKyqk6HDSL1d1xWipYFZqGEuqXT2Wl7IsIG5MErPoKzeoOoPbUaI1YoPVEG5we60ab t4tzxj/yi7v/0R9J01LGOrnCuHaKyRkb2yqBeYzW6xLnDPnpA+7052gKEM6+NBR7YIB8kO JHsmTletyUlja3PyEuM13GMRhMyyZMxXMpYEgXdesNPEOHhv6JpDmeTi5gWFRA== 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 4cncTY10wzz5Rf; Thu, 16 Oct 2025 18: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 59GIoPC7075270; Thu, 16 Oct 2025 18: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 59GIoPmQ075267; Thu, 16 Oct 2025 18:50:25 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:25 GMT Message-Id: <202510161850.59GIoPmQ075267@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: 082e48e81bd1 - releng/15.0 - sys/rpc: UNIX auth: Support XDR_FREE List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 082e48e81bd10237e534c9ba88d270abb9351a36 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=082e48e81bd10237e534c9ba88d270abb9351a36 commit 082e48e81bd10237e534c9ba88d270abb9351a36 Author: Olivier Certner AuthorDate: 2025-10-13 15:13:09 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:17 +0000 sys/rpc: UNIX auth: Support XDR_FREE xdr_authunix_parms() does not allocate any auxiliary memory, so we can simply support XDR_FREE by just returning TRUE. Although there are currently no callers passing XDR_FREE, this makes us immune to such a change in a way that doesn't cost more but is more constructive than a mere KASSERT(). Approved by: re (cperciva) Suggested by: rmacklem MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 4ae70c3ea498e06676040ee99254d261e29ae82e) (cherry picked from commit b27688a8b5dc92c87e74c40f3702484f5e2e329c) --- sys/rpc/authunix_prot.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index c1a9f90bbe28..0274a713ff2b 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -61,6 +61,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) uint32_t junk; char hostbuf[MAXHOSTNAMELEN]; + if (xdrs->x_op == XDR_FREE) + /* This function does not allocate auxiliary memory. */ + return (TRUE); + if (xdrs->x_op == XDR_ENCODE) { getcredhostname(NULL, hostbuf, sizeof(hostbuf)); namelen = strlen(hostbuf); From nobody Thu Oct 16 18:50:26 2025 X-Original-To: dev-commits-src-branches@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 4cncTZ5b3nz6Cy3x; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTZ2MsMz3GBM; Thu, 16 Oct 2025 18: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=1760640626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v7rvp2ohH4BIWkCfE4PKpO/963/ruuDow5WfmsLEF80=; b=H470vTPu3thAZp+J4BONpAuTWMyFZ7b5RZhZd4TpWAFm35qqAsTQlhGddJ8IrVjT0KRLKz JGXsHDroN+d40Va/YWqPJyn1xwq2eYiW3r7wMc69mwjQWOIZUfZx/1e/X6QHDC0d/7oVVA RXdh32udr/mNe8r3EUSnF2x8LoM91bHlCVJ4AMFydy+vyVYoJDmzUPdQ9rRdOjbMEs0Hp7 r01nPGF0wNe/R4YAx54CCea7lCt4p4YkYOYtsjnngH39j3wPCgSriI/99F9f5jzMjSVuXN yGd3VBIW3JRGVr0EPPfOARG+pbWbpxBJTIff9LERTcy/EI9p8+CykLbDwerFLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v7rvp2ohH4BIWkCfE4PKpO/963/ruuDow5WfmsLEF80=; b=pOaiv7w3f+wj4leDwGJNZqScFE3W06BOMX+J+qNFNOEyVNvsPeceEB+sE4eebmahB2nvRF HSPEkvu7/qvz5t0uuLJ7hcSUF//+q93JQGRF1/n21x5i63mw5RRofvt8UFYL77w9pPFBua ZMVHbIdHAyse123IcGmAvFW3HbZKXkf0PC6RJ/MieIMoNxsxGhqsH4yKq63d0HOrMuO2AK 7fe+uqXPaTobZgPTFgMP/C8ZJxSq69/WYpPd+xqdvgisxh2Hzb5ogG2qkbxNUNiVm3GtQp 06WNMb916bTt8Z5K5njwRmFFb7OnP7nrCliUuj7ctWpudtcjwnFDMgP+wtAWpA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640626; a=rsa-sha256; cv=none; b=ftStZLBHR4XmmvzCi9bUZiageR6BEBpxy0Sq55Cj/LKPWQ3UdJVuR5HjECuZ3KzDTfZ4k8 Qd/3FUb/H2uMZ1c+uEvhd7YBY44r4i1mpf3+A4Lroeo5hh/UwRltEQ6lS1q79Fp9rflx30 7q1TW7M+N0FvfK4n4dviFWOO4JOQ+UpSSLRD/VUa/6FVIPZDat0QIG6zEOHNb0HxX0S4Ed 1Ycq6ju7GA7nlIQcgFie2fKUCNz3QiiIBzo2KX6P31zBCFX8yYicopnoqmePSxAAlQZaAv lCpjTljOTw7DfFPmIGK/zVqruUG43DGlr157F/vZoxHFUte7mIyfwdHAhTOu3Q== 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 4cncTZ1wqpz5P9; Thu, 16 Oct 2025 18: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 59GIoQFU075306; Thu, 16 Oct 2025 18: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 59GIoQVU075303; Thu, 16 Oct 2025 18:50:26 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:26 GMT Message-Id: <202510161850.59GIoQVU075303@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: 2dda215652e3 - releng/15.0 - sys/rpc: UNIX auth: Style: Remove unnecessary headers, minor changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 2dda215652e315f12e2db2dd1b1d04af5899c1fb Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=2dda215652e315f12e2db2dd1b1d04af5899c1fb commit 2dda215652e315f12e2db2dd1b1d04af5899c1fb Author: Olivier Certner AuthorDate: 2025-10-07 17:10:12 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:21 +0000 sys/rpc: UNIX auth: Style: Remove unnecessary headers, minor changes Approved by: re (cperciva) MFC after: 2 days Sponsored by: The FreeBSD Foundation (cherry picked from commit a4105a5d4e179aa1ef661ee45d6008e83fefd2a7) (cherry picked from commit d06658b8066d1c3af400db33896a493be2ebdfab) --- sys/rpc/authunix_prot.c | 10 +++------- sys/rpc/svc_auth_unix.c | 4 +--- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c index 0274a713ff2b..ff4c12c3f52e 100644 --- a/sys/rpc/authunix_prot.c +++ b/sys/rpc/authunix_prot.c @@ -30,7 +30,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include /* * authunix_prot.c * XDR for UNIX style authentication parameters for RPC @@ -40,8 +39,7 @@ #include #include -#include -#include +#include #include #include @@ -70,12 +68,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred *cred) namelen = strlen(hostbuf); if (namelen > AUTH_SYS_MAX_HOSTNAME) namelen = AUTH_SYS_MAX_HOSTNAME; - } else { + } else namelen = 0; - } - if (!xdr_uint32_t(xdrs, time) - || !xdr_uint32_t(xdrs, &namelen)) + if (!xdr_uint32_t(xdrs, time) || !xdr_uint32_t(xdrs, &namelen)) return (FALSE); /* diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 4d5535a4fee2..9e4b0b8483b5 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -41,8 +41,6 @@ */ #include -#include -#include #include #include @@ -131,7 +129,7 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) buf++; } xcr->cr_ngroups = MIN(supp_ngroups + 1, XU_NGROUPS); - } else if (! xdr_authunix_parms(&xdrs, &time, xcr)) + } else if (!xdr_authunix_parms(&xdrs, &time, xcr)) goto badcred; rqst->rq_verf = _null_auth; From nobody Thu Oct 16 18:50:27 2025 X-Original-To: dev-commits-src-branches@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 4cncTb5FQZz6Cxp6; Thu, 16 Oct 2025 18: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cncTb3LhNz3GMm; Thu, 16 Oct 2025 18:50:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1/uEZhFi6Eyo5iHs5EzyH1a+8Vi+77Wk944WlXgC57U=; b=he1HmkW6Gi2qsRSetFd8RUz6kSc9UZsqSOjhXO0RTjTaYyzrK54+gFNUVk8C7Dj6dmt8wb qRDTgscxOFenn/ZlpeML2Se7LXLySVa9lZYj9tDZgQ2AOttpdC4YIVJf2Cvd0CyUMH+dPH tUzWH7XFc4G4wjkWuHf5kAaFEX661ZSCKHtkhMAbkppgvENFlnniHHNZrUcHG8Uij/Xcc2 q4bEMg/KU6JV2UwgBTsXKttsmSi45JXq5ktjKvsK7h9QSefK3/57ZRNnnou8W2WI/N7vgQ SQ/QcCm9VmYnvBOcpeqgeJSnH9fKsA7bwCUMMlGfSr4XEupb5oT7maDo7K4ZZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760640627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1/uEZhFi6Eyo5iHs5EzyH1a+8Vi+77Wk944WlXgC57U=; b=TQosKrTP6U8deWMe9r69fw0Mxc/qB3NjdLCavi2yv9IqymJWZ0m1CzN6x+TZEH/27bdfZg HmmMLlZ6mc3QtBtVCGnKIbzGX8+/UyNJdIIOJWug2uAaHP0NWawghkmdaLuoppvsd0Qmf/ qIQOXVVOdldM4MZO+7X6Xy9JcYI00deYDH1LHQnV5gKFh6Q6wPuU2b7j0e5Ol+F1xb7tqO w5vMzLfG+HMmHzSL+G0Yuy9kU/e+DEdK7Wb3XL70NaVlPqAyvI7GiXKwZGGvDLNQNfUO/k a5UCh2hRSREY7v9KDawMnsiG/AES9soKYpM6XQ+2b1vk0xwN/bhRG+8WsPvQSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760640627; a=rsa-sha256; cv=none; b=Lfi796Rh/9H0dwEBQP5cIkmOwBaRIUxMz79sWOeM0oPseQKpJ9CaumNgmXljiG6eak4lzf PG7iWDhnKcVjSst0iXcY+lwPXo44V0Tav4ZcwSsw0fq+Tbq7Dvl+6I7VrRH3Pz/64sAqYI SpHlvAVftSeD/lDdEIg/0nCgfPbBluAW2dW5sPPOwbBrDy7qMl7+JNLzk4gJRrixvaNna3 /dH71vLzWDAIDyE722Q8qgLxu/+gYAhz3JtESdX7FwZ5cr97xEn/eCeWotnWWPVdS+TVxO SfW+l/xUXhyB9Zp0gIJoO/E80ES0R0/1MQnmqUdoF2fpW9kbR+WYvf+6g/uEyg== 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 4cncTb2v3lz5Rg; Thu, 16 Oct 2025 18: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 59GIoR9Q075339; Thu, 16 Oct 2025 18: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 59GIoRpL075336; Thu, 16 Oct 2025 18:50:27 GMT (envelope-from git) Date: Thu, 16 Oct 2025 18:50:27 GMT Message-Id: <202510161850.59GIoRpL075336@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: 77a00e86d64c - releng/15.0 - sys/rpc: UNIX auth: Do not log on bogus AUTH_SYS messages List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 77a00e86d64ce6af066099345cd2f00f9bc2ca82 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=77a00e86d64ce6af066099345cd2f00f9bc2ca82 commit 77a00e86d64ce6af066099345cd2f00f9bc2ca82 Author: Olivier Certner AuthorDate: 2025-10-14 12:54:55 +0000 Commit: Colin Percival CommitDate: 2025-10-16 18:48:24 +0000 sys/rpc: UNIX auth: Do not log on bogus AUTH_SYS messages Remove the printf() stances added in commit d4cc791f3b2e ("sys/rpc: UNIX auth: Fix OOB reads on too short message"). Even if it can be helpful to know why an authentication message is rejected, printing explanatory messages on each request attempt is a remote log filler that could be triggered by accident, and the generic RPC code generally does not do that. These printf() calls should be restored only after some limiting or configuration mechanism is devised. Approved by: re (cperciva) MFC with: d4cc791f3b2e ("sys/rpc: UNIX auth: Fix OOB reads on too short message") Sponsored by: The FreeBSD Foundation (cherry picked from commit 2110ae0ef9d6ca8cf52b29fcaf926c4343f56826) (cherry picked from commit fb8a978ebfeb5522123e3afcbcd5dc36591dce31) --- sys/rpc/svc_auth_unix.c | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index 9e4b0b8483b5..aa0fc585865f 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -41,7 +41,6 @@ */ #include -#include #include #include @@ -70,11 +69,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) const uint32_t min_len = 5 * BYTES_PER_XDR_UNIT; uint32_t str_len, supp_ngroups; - if (auth_len < min_len) { - (void)printf("AUTH_SYS: Too short credentials (%u)\n", - auth_len); + if (auth_len < min_len) goto badcred; - } time = IXDR_GET_UINT32(buf); str_len = IXDR_GET_UINT32(buf); if (str_len > AUTH_SYS_MAX_HOSTNAME) @@ -85,12 +81,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) * 'str_len' (and that it won't cause an overflow in additions * below) to protect access to the credentials part. */ - if (auth_len < min_len + str_len) { - (void)printf("AUTH_SYS: Inconsistent credentials and " - "host name lengths (%u, %u)\n", - auth_len, str_len); + if (auth_len < min_len + str_len) goto badcred; - } buf += str_len / sizeof (int32_t); xcr->cr_uid = IXDR_GET_UINT32(buf); xcr->cr_gid = IXDR_GET_UINT32(buf); @@ -108,14 +100,8 @@ _svcauth_unix(struct svc_req *rqst, struct rpc_msg *msg) * read in total. */ if (auth_len < min_len + str_len + - supp_ngroups * BYTES_PER_XDR_UNIT) { - (void)printf("AUTH_SYS: Inconsistent lengths " - "(credentials %u, machine name %u, " - "supplementary groups %u)\n", - auth_len, str_len, - supp_ngroups * BYTES_PER_XDR_UNIT); + supp_ngroups * BYTES_PER_XDR_UNIT) goto badcred; - } /* * Note that 'xcr' is a 'struct xucred', which still has the From nobody Thu Oct 16 20:03:17 2025 X-Original-To: dev-commits-src-branches@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 4cnf5d2MfJz6D4BV; Thu, 16 Oct 2025 20:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnf5d1sHZz3TWs; Thu, 16 Oct 2025 20:03:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760644997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eMdC43xPX+7W44bsAhIgE+dFYhAALK0T+qT26215vRE=; b=qCEIYnMMQgehqrBjr0DTNFfF+NvLceICKSTSv0h4kuyuyVokByNv0IWqGtBeYccqL/t6SP 5VJaA++KvF4Lrdq7fzsOtHmfdc0NFRh+mhQ1yB53Q6gY5qwzQoqqz6GIXKPXOeZ+OYqE9l +iLL9fV1m8HVG8whWRBn7rDMp1Fuu5+ZM+GDaDjn+3tCGzgAl5CbrhDrKa9fGrhtP2n9Yc 9CjwPylSkKXRFa9XknM4qr8UhJmrwa09ta6w88HeXH+804i6GaIrIy+AStqgiQorY5SCUa ZsXavwNf45m6BqTAl96txCZZMHqltXLDC+fmjf97YruK44eLjhoHbnOHdKXw3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760644997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eMdC43xPX+7W44bsAhIgE+dFYhAALK0T+qT26215vRE=; b=mY4HSjLNRlDbl8Pe4eP+Bdc/6yruX6JXq+iuI7PYCNlUIBAiN+Xl55hCT/qrGmdiFJx8rK OxG3el99juk3fNZUeijf7k0N4Su3uFDHuIiH4VBami4K6tjXh4Lw8xMa+if2I2hN2WAbnm 7zOrHj4y43WVjC7OLsU5t5sILlEmuRWfqOZ5kRZA5rBICtpbGmnOehUORmzp9fLGmSRMA1 2JMBl5nLAlzGBtZs07QyBOm3LEA++9BBWiFIv0HxH3HftYIomm76iVnom4wjNs34xM+h3x 8HwcWzXyILPg/bFghECc7anQM5Qh3UGUOyj+ql6w8RyZN0jtDa0wG5+0HaVtJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760644997; a=rsa-sha256; cv=none; b=Il7aBXBEArqPr9yJl/umGgEeyFOi2m7gSl5C2nKmGzPGkVq3HyQh9USvrz0SRtFwHAFQtr Zxlu9xPF+8EiVJOTiNgZ4qbs03ZdPZaSdXciembb95QJnYvlK1XNmCGifyof77+oZPO45a 3yOWpy7Lbeb9CpGVFMIDyNirbOfMhOebqnHSymVm/39ddHh6TSK//70FiKelAAWB9e6RIq EyBVAAkGX08zNYBHTHTWgZCot6pGQzfIlXmKK04r6/9l1UPfMZs7NETH2RINIrj4rGts/6 x+WoScsXHH3h5Zl0FYXCasCV1a/SgAmrxatSgUhPHNej86HXn1wBkDecQ373vQ== 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 4cnf5d1ScMz77l; Thu, 16 Oct 2025 20:03: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 59GK3HDO016708; Thu, 16 Oct 2025 20:03:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GK3HD5016705; Thu, 16 Oct 2025 20:03:17 GMT (envelope-from git) Date: Thu, 16 Oct 2025 20:03:17 GMT Message-Id: <202510162003.59GK3HD5016705@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: 3d8ec3273dbb - stable/15 - packages: Compress in parallel List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 3d8ec3273dbb9edf9080ded97e071edff59dd708 Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=3d8ec3273dbb9edf9080ded97e071edff59dd708 commit 3d8ec3273dbb9edf9080ded97e071edff59dd708 Author: Colin Percival AuthorDate: 2025-10-12 21:44:14 +0000 Commit: Colin Percival CommitDate: 2025-10-16 20:02:56 +0000 packages: Compress in parallel The FreeBSD-base pkg repository is currrently dominated by a handful of large packages: Out of a compressed repository size of ~960 MB, about 160 MB is taken up by the FreeBSD-src package, 128 MB (on amd64) is used by the FreeBSD-kernel-generic-dbg package, and 91 MB is used by the FreeBSD-src-sys package. Consequently, running 'make packages -jN' provides less benefit than one might hope, as most of the packages finish building quickly, ultimately leaving the FreeBSD-src package building by itself for a couple minutes while all the other CPUs are idle. Pass -T${PKG_CTHREADS} to the 'pkg create' commands (with a default of -T0) in order to instruct pkg's zstd compression to use multiple threads. Testing on an EC2 r7i.48xlarge instance with -j192, this reduces the time taken by 'make packages' from 6m17s to 1m39s; package creation time itself (excluding the initial process of installing into world and kernel staging directories) dropped from 5m37s to 59s. Reviewed by: ivy MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53053 (cherry picked from commit 16155cccc4bf42a5a76806128e7ef637f9ae61fe) --- Makefile.inc1 | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index d530ca4e9584..21adf215c0aa 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1977,6 +1977,7 @@ REPODIR?= ${OBJROOT}repo PKG_FORMAT?= tzst PKG_LEVEL?= -1 PKG_CLEVEL?= ${"${PKG_FORMAT:Mtar}" != "":?:-l ${PKG_LEVEL}} +PKG_CTHREADS?= 0 PKG_REPO_SIGNING_KEY?= # empty PKG_OUTPUT_DIR?= ${PKG_VERSION} PKG_ABI_FILE?= ${WSTAGEDIR}/usr/bin/uname @@ -2157,7 +2158,7 @@ create-source-src-package: _pkgbootstrap .PHONY ${SSTAGEDIR}/src.ucl ${PKG_CMD} -o ABI=${PKG_ABI} \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${SSTAGEDIR}/src.ucl \ -p ${SSTAGEDIR}/src.plist \ -r ${SRCDIR} \ @@ -2183,7 +2184,7 @@ create-source-src-sys-package: _pkgbootstrap .PHONY ${SSTAGEDIR}/src-sys.ucl ${PKG_CMD} -o ABI=${PKG_ABI} \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${SSTAGEDIR}/src-sys.ucl \ -p ${SSTAGEDIR}/src-sys.plist \ -r ${SRCDIR} \ @@ -2226,7 +2227,7 @@ create-world-package-${pkgname}: .PHONY fi ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${WSTAGEDIR}/${pkgname}.ucl \ -p ${WSTAGEDIR}/${pkgname}.plist \ -r ${WSTAGEDIR} \ @@ -2245,7 +2246,7 @@ create-sets-packages: .PHONY @for manifest in ${WSTAGEDIR}/set-*.ucl; do \ echo "--> Processing manifest: $$manifest"; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M $$manifest \ -o "${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}" \ || exit 1; \ @@ -2275,7 +2276,7 @@ create-dtb-package: .PHONY ${KSTAGEDIR}/${DISTDIR}/dtb.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/${DISTDIR}/dtb.ucl \ -p ${KSTAGEDIR}/${DISTDIR}/dtb.plist \ -r ${KSTAGEDIR}/${DISTDIR} \ @@ -2312,7 +2313,7 @@ create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}: _pkgbootstrap ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl \ -p ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.plist \ -r ${KSTAGEDIR}/${DISTDIR} \ @@ -2352,7 +2353,7 @@ create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kerne ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl \ -p ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.plist \ -r ${KSTAGEDIR}/kernel.${_kernel} \ From nobody Thu Oct 16 20:03:18 2025 X-Original-To: dev-commits-src-branches@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 4cnf5f4cJpz6D3yV; Thu, 16 Oct 2025 20:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnf5f3LCgz3T9N; Thu, 16 Oct 2025 20:03:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760644998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMdOg3VCVdJG50vT9l6W0SBovUSzyng30GB2lEZAs8U=; b=YMHUD7lrbiVLuuFA1Nox/k1OtlSjDJ7BfQAD0ZDAdniv+3/7YeIa2xd8x2fa/MgvNTJ/VM aLELo5wbZQmmqG5dce+nFKd7lcaA9hq/1UZ4XXRPZ/DcJYB9WJf7Ia8LEkLZQp5L9SXP+o rwbfvc71HkBTzR3eG0zUbfu4RCcPR7X+wC5ZLPC42qkxrpfmvA2HFIQYwIPDHeRzUbGrnI py8e5mMMxR4ScDGAclMqH7ReKAQi0ObRj2INrgbGeTQTvHidnCGcyAUPEbgnnaiCixqdFW P69BkjrzEEO5tfBUo6rvF1zpJ9xIzVbe+Fx34Yzm8rKe0tEgUwR5L3Gm0C0/ew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760644998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMdOg3VCVdJG50vT9l6W0SBovUSzyng30GB2lEZAs8U=; b=IYGMg2HP/LswD+9PygKA4OZ8QzVWnbM0vf3srqmzFlNcyxvLILT6Me9maELg3QkI+HdFbh iGOeBi/DLn8Vk4h5S8pbliaOo2ukJTZt3VwJkWjDGpvUyObBPtGDTpuvr+kYEbDGSCbJr2 wP7ULG960c3JTMP+RZtADltbzhJTBMlW4YOYdHDNAzvEN+hp59lgdLGo+GikBpyC2NytLt c6eBB3CdR9sRrPdGt/kzsRjJENlAXvmjV9NobU2LhKIGPqBfoa4iZwYR2Vi/JUSpxfrKu1 1xW9W/1EO4kNyMGUPyKIJqsUL5I9lQRJZu5oQWVUCulykVv0DdQ0Soba+G2FVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760644998; a=rsa-sha256; cv=none; b=uD0WT6Ukn2SmGn5B7jh4oMSmvqTYrKm+sytUkfIjVab2hs5mBkoMblsENollFwE4Dmt69G D7zvIn+2n00T/MT6P3Gu5AJVlAknuAKGQRB/z6IykLLYsZZkwU18TGjcWtFoQAXcPUrgnc 4kJXreaptMegNcmYYf0iR8ZRoR3BEycLIO5xka30FAgGGUUQ4q2XZoZtgomAI6EMNuIqTa ZXH7oEUEkho5SqBMy+sfjFhlyTARR2S6W5fpt0E277cHBRclXM4mn931fcvt37EOIZDmYj mFuHK9qXPeJZeq3xkMkwGPy3Oqqf7QUiuWzD93Os0z8i03M0x6hwa6wuExhM6A== 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 4cnf5f2jjTz77m; Thu, 16 Oct 2025 20:03: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 59GK3INU016741; Thu, 16 Oct 2025 20:03:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GK3If0016738; Thu, 16 Oct 2025 20:03:18 GMT (envelope-from git) Date: Thu, 16 Oct 2025 20:03:18 GMT Message-Id: <202510162003.59GK3If0016738@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: a7c1d6b72a3e - stable/15 - Ping: Make build reproducible List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: a7c1d6b72a3e3b979d38ad1ad706cc0d9be927ae Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a7c1d6b72a3e3b979d38ad1ad706cc0d9be927ae commit a7c1d6b72a3e3b979d38ad1ad706cc0d9be927ae Author: Colin Percival AuthorDate: 2025-10-13 15:58:10 +0000 Commit: Colin Percival CommitDate: 2025-10-16 20:03:04 +0000 Ping: Make build reproducible As recently fixed in sockstat (9934558460e4), having tests/Makefile include files from the parent directory with SRCS= ../foo.c results in a race condition as the parent build and the tests build try to produce the same object file but contain different paths. Use .PATH to tell make to find sockstat.c in the parent directory but place the object file in the current object directory. Reviewed by: emaste, jrtc27, kevans MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53075 (cherry picked from commit 3c9a2f383fc25cdffa80c1348cb5388290e0f283) --- sbin/ping/tests/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbin/ping/tests/Makefile b/sbin/ping/tests/Makefile index 0520b1d634cf..7d3ab02b9a86 100644 --- a/sbin/ping/tests/Makefile +++ b/sbin/ping/tests/Makefile @@ -1,5 +1,6 @@ ATF_TESTS_C+= in_cksum_test -SRCS.in_cksum_test= in_cksum_test.c ../utils.c +.PATH: ${.CURDIR:H} +SRCS.in_cksum_test= in_cksum_test.c utils.c PACKAGE= tests From nobody Thu Oct 16 20:08:18 2025 X-Original-To: dev-commits-src-branches@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 4cnfCQ5Mkyz6D4hL; Thu, 16 Oct 2025 20: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnfCQ4rTWz3V3x; Thu, 16 Oct 2025 20: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=1760645298; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nf/rB1nYCF6Qmv7O6VaazoRcxH+Pb4JBRQaLL1FAM4U=; b=m/OGXEa7hPjnMso1mwmP2/g/3SJGb+8vKN2GeyKBNqe8wES5eMpwn5LMbUi6jp+NVaR5j7 ThX5lAGxGXoF3iIj2A0wzhi3tB7t0JnmKrkmCR6jgBqdwc1bieNGqZlMKPO410zAfO8SJF bgcYtHcb+Z0bnn22csw7GHJEdT64v1X9EaG0Wta5ZEUjobcXltiVCS+pM5Yza+ObVNw7vl uCKFRgr/fIiYeKj8dZYH0z/FSLvxhdEl9fjzVBhGfpgLSY1Zsi2t3cs8hKbbCNDqLtsr3E dL3NlXcCZUV/0VqNqXJxeS0TCLWcFW6GsXT7wkUme2IEkAWJOoJaiLaOWSE7bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760645298; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nf/rB1nYCF6Qmv7O6VaazoRcxH+Pb4JBRQaLL1FAM4U=; b=P5uRnsTqydV+qmcpJ3WStqQJZeNl5k1UMs1HTKOJNp2p3NYZtR15Y2Mj70Y/SbsI12ppbN Qrwma9M0vSL0A9XadmvhnKSiGQPv/LZKwQVcnFRmwzdhj6LtqhbM40kfMPKQinnL/a5GxN bp7TgwCZeJXGjh1O8raEh5KSFbfzX7CCuH251KnpoXa0emYbGsIDQQ4npaKQ/odjfvLYy5 dMHa2V2r9w+diqJpnxCeRyIm4hidzJ/li9cfA72ebo4GVNoQuDkCTFz4KdRHx3wPGeP+oe oE4wc7q98woeHD6vbe4jf3HYNx0S6bvW+24DoeXjWDkYXJKufWQvrNIBIqfrVA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760645298; a=rsa-sha256; cv=none; b=SRIsdaiHRtaxuvNHWiEgfS8NmB5jFlRutMTm9mvBfszg2s8z0SUy8Jt2saddAt57OWdDKo XaJHaBdbTbSaIb/m1OccIFvqM6LA0z6TOj58Y/Tv01j4aC/fs4LMC513lr6PPqMjyzIa5a uOd2/mxyP1hirPTw0AvXsBDPiqW8ssHvXY39TY27RORhcYVu0q27/c8kFnyfraCCCXpD2N fddMftsikfRs2QasLKYpxUuEHyyYtj96hUlwGW7qE0N/6WM+rxpschUR5N7ZUCzTGF0Q5B 4QiPl+EtfqpVBt8+M2c6CzJsdU3nds9BlaNM/oYMWcjJ8FnuT6NY93314DzDew== 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 4cnfCQ4Gv8z71G; Thu, 16 Oct 2025 20:08: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 59GK8IoU018308; Thu, 16 Oct 2025 20:08:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GK8IdF018305; Thu, 16 Oct 2025 20:08:18 GMT (envelope-from git) Date: Thu, 16 Oct 2025 20:08:18 GMT Message-Id: <202510162008.59GK8IdF018305@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: 8f5eb720e2e6 - releng/15.0 - packages: Compress in parallel List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 8f5eb720e2e67446fc9c10ab61d0069c356cd73b Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=8f5eb720e2e67446fc9c10ab61d0069c356cd73b commit 8f5eb720e2e67446fc9c10ab61d0069c356cd73b Author: Colin Percival AuthorDate: 2025-10-12 21:44:14 +0000 Commit: Colin Percival CommitDate: 2025-10-16 20:08:05 +0000 packages: Compress in parallel The FreeBSD-base pkg repository is currrently dominated by a handful of large packages: Out of a compressed repository size of ~960 MB, about 160 MB is taken up by the FreeBSD-src package, 128 MB (on amd64) is used by the FreeBSD-kernel-generic-dbg package, and 91 MB is used by the FreeBSD-src-sys package. Consequently, running 'make packages -jN' provides less benefit than one might hope, as most of the packages finish building quickly, ultimately leaving the FreeBSD-src package building by itself for a couple minutes while all the other CPUs are idle. Pass -T${PKG_CTHREADS} to the 'pkg create' commands (with a default of -T0) in order to instruct pkg's zstd compression to use multiple threads. Testing on an EC2 r7i.48xlarge instance with -j192, this reduces the time taken by 'make packages' from 6m17s to 1m39s; package creation time itself (excluding the initial process of installing into world and kernel staging directories) dropped from 5m37s to 59s. Approved by: re (cperciva) Reviewed by: ivy MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53053 (cherry picked from commit 16155cccc4bf42a5a76806128e7ef637f9ae61fe) (cherry picked from commit 3d8ec3273dbb9edf9080ded97e071edff59dd708) --- Makefile.inc1 | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index d530ca4e9584..21adf215c0aa 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1977,6 +1977,7 @@ REPODIR?= ${OBJROOT}repo PKG_FORMAT?= tzst PKG_LEVEL?= -1 PKG_CLEVEL?= ${"${PKG_FORMAT:Mtar}" != "":?:-l ${PKG_LEVEL}} +PKG_CTHREADS?= 0 PKG_REPO_SIGNING_KEY?= # empty PKG_OUTPUT_DIR?= ${PKG_VERSION} PKG_ABI_FILE?= ${WSTAGEDIR}/usr/bin/uname @@ -2157,7 +2158,7 @@ create-source-src-package: _pkgbootstrap .PHONY ${SSTAGEDIR}/src.ucl ${PKG_CMD} -o ABI=${PKG_ABI} \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${SSTAGEDIR}/src.ucl \ -p ${SSTAGEDIR}/src.plist \ -r ${SRCDIR} \ @@ -2183,7 +2184,7 @@ create-source-src-sys-package: _pkgbootstrap .PHONY ${SSTAGEDIR}/src-sys.ucl ${PKG_CMD} -o ABI=${PKG_ABI} \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${SSTAGEDIR}/src-sys.ucl \ -p ${SSTAGEDIR}/src-sys.plist \ -r ${SRCDIR} \ @@ -2226,7 +2227,7 @@ create-world-package-${pkgname}: .PHONY fi ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${WSTAGEDIR}/${pkgname}.ucl \ -p ${WSTAGEDIR}/${pkgname}.plist \ -r ${WSTAGEDIR} \ @@ -2245,7 +2246,7 @@ create-sets-packages: .PHONY @for manifest in ${WSTAGEDIR}/set-*.ucl; do \ echo "--> Processing manifest: $$manifest"; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M $$manifest \ -o "${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}" \ || exit 1; \ @@ -2275,7 +2276,7 @@ create-dtb-package: .PHONY ${KSTAGEDIR}/${DISTDIR}/dtb.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/${DISTDIR}/dtb.ucl \ -p ${KSTAGEDIR}/${DISTDIR}/dtb.plist \ -r ${KSTAGEDIR}/${DISTDIR} \ @@ -2312,7 +2313,7 @@ create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}: _pkgbootstrap ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl \ -p ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.plist \ -r ${KSTAGEDIR}/${DISTDIR} \ @@ -2352,7 +2353,7 @@ create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kerne ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl ; \ ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ -o OSVERSION="${SRCRELDATE}" \ - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ -M ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl \ -p ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.plist \ -r ${KSTAGEDIR}/kernel.${_kernel} \ From nobody Thu Oct 16 20:08:19 2025 X-Original-To: dev-commits-src-branches@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 4cnfCR6snMz6D4YF; Thu, 16 Oct 2025 20:08: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnfCR6JKRz3TvJ; Thu, 16 Oct 2025 20:08:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760645299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HeYy4wp8jc3XgxGDN9uj5QBbbnivsNTqtZRIhJejUNk=; b=oZcE0rAElLaw/qVgxhY1irK8frnE2hhnLi4cLQYARXKIPUgDzoVb6Bl3DBVqXjlfGFoRnb Kw/+m6Fv1yUH7tgPZCqP/OBamnAQs21sLoauaLI6pzxiD1SjAy4cKrOuip9NGvkwnmM4ei eebKNlbgQo4J2b5aKHk+xg5Oz3JLA5tNxwuY8Gd4yMdS/dEPRWCeVpv7ckGzYHaAZPi0gY 2N8me6iNcxt0CQVFVlntFkUHGNoIBrKuPbI2nZGKndUWXMteIUfRCgsVKOU6tN/Sd8mkYb 1EcTkRl6RdCJF8J7CD3OJNGjU4pU5HdxSGj2S3P3P/hG7D27AYQq5iT1sZNpjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760645299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HeYy4wp8jc3XgxGDN9uj5QBbbnivsNTqtZRIhJejUNk=; b=yHzAxd7c99etZqJmEV/otcZhAP+Pmfic7GLhDKEXVTugoR0DLmjjj/PlP8t24YyhF4CKQR aBZnk8R6aN0If5vndxkrRDdxdgQkKNf/xIYQP3zbnflynKT1RIDDW7H9dRmw8FAwr7AJGB vJo9dKAVJSAp2u5zL1q8W3ebfxcKWjNVCk4uR0NRqBQnj051YzlWn67fJ8AnoNIXyD25OX qfl7wT4VW6DrDXTo2CmY15TpiatfRt+U3A81Ehhz1veDhuFlbdRUxELdIbDiXLoV2bXyXQ rHjbmEJDWew0rEhX8YHmV2rHiySvyZOnRqsoHe4QcBfFxcHzEYBr5fWaDqPAXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760645299; a=rsa-sha256; cv=none; b=q2oBsTO635NF5E+v7fVLu+1RpBYRTyWUSuiOIbuPgACDetVwyctdBNOSPBXwivqmu9q5Iy XGdXQMFM5mthKjCv6zBb+9Br6ZnC7Ynp3dTmsB8e4274JSzQSKiNOGDZEdc0m+urG+Fddd kWqniUtgPxs5NmLOALRBTa8AXdnXGAGC7/T8uuPOeePdneeS1I97C8O08xggiGY1BKQRzo sIw6EB5xGgX8sg5cxbVTc1giUlUBzBlcwRGQ81/T7TUKhSu1RidvDjX/MP1ALNPekNF0JF LjqpWZVwC8xDkJJkXKzejXYNZDXG/Mw2lIRmMo6mG4iLJbrtm1S0CRSthju/qA== 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 4cnfCR597Mz77p; Thu, 16 Oct 2025 20:08: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 59GK8JJH018340; Thu, 16 Oct 2025 20:08:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59GK8JEt018337; Thu, 16 Oct 2025 20:08:19 GMT (envelope-from git) Date: Thu, 16 Oct 2025 20:08:19 GMT Message-Id: <202510162008.59GK8JEt018337@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: 6fc227a68bbd - releng/15.0 - Ping: Make build reproducible List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 6fc227a68bbd12e070ed92985057dc933f4801b3 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=6fc227a68bbd12e070ed92985057dc933f4801b3 commit 6fc227a68bbd12e070ed92985057dc933f4801b3 Author: Colin Percival AuthorDate: 2025-10-13 15:58:10 +0000 Commit: Colin Percival CommitDate: 2025-10-16 20:08:09 +0000 Ping: Make build reproducible As recently fixed in sockstat (9934558460e4), having tests/Makefile include files from the parent directory with SRCS= ../foo.c results in a race condition as the parent build and the tests build try to produce the same object file but contain different paths. Use .PATH to tell make to find sockstat.c in the parent directory but place the object file in the current object directory. Approved by: re (cperciva) Reviewed by: emaste, jrtc27, kevans MFC after: 3 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53075 (cherry picked from commit 3c9a2f383fc25cdffa80c1348cb5388290e0f283) (cherry picked from commit a7c1d6b72a3e3b979d38ad1ad706cc0d9be927ae) --- sbin/ping/tests/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbin/ping/tests/Makefile b/sbin/ping/tests/Makefile index 0520b1d634cf..7d3ab02b9a86 100644 --- a/sbin/ping/tests/Makefile +++ b/sbin/ping/tests/Makefile @@ -1,5 +1,6 @@ ATF_TESTS_C+= in_cksum_test -SRCS.in_cksum_test= in_cksum_test.c ../utils.c +.PATH: ${.CURDIR:H} +SRCS.in_cksum_test= in_cksum_test.c utils.c PACKAGE= tests From nobody Fri Oct 17 01:17:35 2025 X-Original-To: dev-commits-src-branches@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 4cnn4J0TTsz6CFGl; Fri, 17 Oct 2025 01:17: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnn4H6rLHz4BG4; Fri, 17 Oct 2025 01:17:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760663856; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V2q6xh1Gw09nu0rpLpAJwDNbVzLg8pzF6Vmg4EgGoLE=; b=MlEyQntzfh3YUvdjQeq1sAk14n7vmfQVX0NcXEAvHynnCTzcmqS0yJswUrNOC5zYemSsVR UmsJQzGhllZXuaWzLHDHvV769efRIni/16tbm4gvEA6qIX8Ik7npoHHuqRGyFebj+xR6SQ JybPx/+TXeOQR3LgpQmV0SYr3ZpSk4qKEtwfC19IjoFXBGbRAmqIb96oVQWIIgqogjQS1y EK6PDP/sHHvoJJwp0sd+u8f6tZxCk7tueASRAtSXHyByy163/rZb991sDdb+AHY1PiLKuA jWakahl8o6+ZpGQC2EwShMjHw5fwtdauS+EtibFNwJQ8yP9Kfl7h1L4JvUUEaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760663856; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V2q6xh1Gw09nu0rpLpAJwDNbVzLg8pzF6Vmg4EgGoLE=; b=ZkFuYooz6q4HoqSYsJnkA5ZGoh01lxI7By/aRFMGflwJ2gvzjjHSc6RTb87VaHVnWcIMxj PEmMrZlHjN0vFkSC79NKRrmpl8pqInloPYqsmW3F1dW8sgkI6NJwTAXF0rbvoYFWzFUUGc Bc4vO//3ypz1pdL8MihPu0YXT/uMWh543Ku+rZrhtEAbXaDXnmdKamwQ2fqtG2xpZT1gWW f6p+qiSDVquEuvtYEslfopqoFrpb9jj/UWI7IaFfXHINA/39f4F1e8j3EfRzU1fz/N5NBV 76sp4lNu9ziUO326JWh1pYMJtM2eBTMuQ4QRkwcjBZ1Xr8mQtZ3V+03mp3wJgw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760663856; a=rsa-sha256; cv=none; b=gBjdRXWEMi+i7vhniroUZYQeAdssQhwiwgQ2pZ5AZVDlNXFiUiNzAdTqMBMZWPc9H1i7P/ 1Wbw4lFd1Kwiee5TR32i8y/x5lETXdk8su5+IQiJopaJvva7IV4NgDhbsY0qhRol0j8BXm Ejqn13VjQfCSEntB6eKSTObF+PNjeJfus8bT3+UVpOHHG38rgasADJhOlJkhLX+UWs/ZCd dSPWveQxpfa0AqnylpLlrMY+862u8tXSwebtpG3CHamdDEdn4GTR2VHgFxZLwGwtMbtbBa E8RPdUlayRakaJN92jxDBmw9uyjoNjlf90dWocXsnZI76x5CN9YGI5KQEOAKEA== 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 4cnn4H61dkzYqF; Fri, 17 Oct 2025 01:17: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 59H1HZIP000695; Fri, 17 Oct 2025 01:17:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59H1HZqR000692; Fri, 17 Oct 2025 01:17:35 GMT (envelope-from git) Date: Fri, 17 Oct 2025 01:17:35 GMT Message-Id: <202510170117.59H1HZqR000692@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: dc5aae134a44 - releng/15.0 - release: Switch back to latest packages for now List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: dc5aae134a44d18921e179355e9b93a7eff534ed Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=dc5aae134a44d18921e179355e9b93a7eff534ed commit dc5aae134a44d18921e179355e9b93a7eff534ed Author: Colin Percival AuthorDate: 2025-10-17 01:15:15 +0000 Commit: Colin Percival CommitDate: 2025-10-17 01:15:15 +0000 release: Switch back to latest packages for now Normally in BETAs the DVD images get packages from the latest quarterly package build; but aarch64 does not yet have a quarterly package set built for 15.x, and this made the BETA1 aarch64 builds fail. Switch back to using packages from the "latest" package set. Direct commit to releng/15.0; will be reverted before the release. Approved by: re (cperciva) Sponsored by: https://www.patreon.com/cperciva --- release/pkg_repos/release-dvd.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/pkg_repos/release-dvd.conf b/release/pkg_repos/release-dvd.conf index 600c309d5979..c2e64c43a56f 100644 --- a/release/pkg_repos/release-dvd.conf +++ b/release/pkg_repos/release-dvd.conf @@ -1,5 +1,5 @@ release: { - url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly", + url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest", mirror_type: "srv", signature_type: "fingerprints", fingerprints: "/usr/share/keys/pkg", From nobody Fri Oct 17 01:32:19 2025 X-Original-To: dev-commits-src-branches@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 4cnnPH4RZ5z6CGFM; Fri, 17 Oct 2025 01:32: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnnPH3z8Mz4FPm; Fri, 17 Oct 2025 01:32:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760664739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aJYLk+Xw4zjWdV+mwXhihdgsLmsDvP3P8vger/WTLtY=; b=O6ucoCAezdOUlx9sbvqBDkrK8heQcpYYlCv6N4U5FwcEz8nieEhRCj2Sxu/zTBRwOTx2od U3dme8RjdwtvPGOjTWnq5VqtvcDB+0aR2Bj4q3GLh2BPXYKD8WakmmiTdP7Zl7wtY5K+13 PBQLZnOiIURSoSw2rT+6VphX4doDrvitLFlaUCoe452WBcfZQ3HjHdXqJsf9P/LVVd6445 a3+ziA3ixZTj9cTtkl1ys0we/adZvzaTgW7N4SJgAI2061J6hBuN/KaWBrAy/s2EgTvbIO NM6dM2ZUZW23rcppd2/yu/q5uYrHujP6APBsGTrxVvz5D+A0y19ZhMf715jz8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760664739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aJYLk+Xw4zjWdV+mwXhihdgsLmsDvP3P8vger/WTLtY=; b=y0G51whgXgo9rl4fzZUXn2D9lTOUBP1BiHNIGyrzmRwhibXNppTbfDTVlLOyuaAZ5cI7mX TcYtDfJj1jr+xRsRTB+imqF7jNKf8xhCNGkYYFnYv/rIqdPNxIvitfdW7K/YTk6+OIEVPy h68bekWAugmUpoWxAsZjTAX6M/BYzTKGEXTvdrbEdLwKF6dgTnfohE1cWIJOGzeY8+BOEW HOVe4RiMCfazcjRFJpU8B1PLcplv8tLP3Kg8OEEvm3nnUTJ8vTEK1HyIu/fbOx87ANLcSl Q5zhnrT9YIsHY8I6s6ney0dIaj4ti3MTK30+2liU1/T44hsPXtkC0F+AeFfmIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760664739; a=rsa-sha256; cv=none; b=DqC6j2SGtCfOPoOIvn2fneVXoUPpwa0mrhqCh4v2uemvH4JfPtLMfS4jasR+gczrIlE6P0 q2i78NQHd1W0h92lq46xXl2v6xGcYxCdvO5nTcfVSygzrJAVJlPKli/EjfohHpssd62ZJy FUkEIlV+N6hqrYL86K2pfYV07/sMyuO4sdyQoblUi4xFxkgRjEDxZ18bW+kdC3T/gJWmBO JvmaFoeh38V8gL1XLxOkQ67WSsa1WPxVCJw+CT77Mk96qptt5VVtLmqSeDrgp06FQfScv+ Nu7y/lQ43pMV8LylMLESP/+hq9jAlLdR9kISLOdNPQ2D4Wbz4gby2B16j3MqdQ== 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 4cnnPH3R7YzZf8; Fri, 17 Oct 2025 01:32: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 59H1WJB5036699; Fri, 17 Oct 2025 01:32:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59H1WJBj036696; Fri, 17 Oct 2025 01:32:19 GMT (envelope-from git) Date: Fri, 17 Oct 2025 01:32:19 GMT Message-Id: <202510170132.59H1WJBj036696@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: ecd943a5af7d - stable/15 - pkg-stage: Correct /packages permissions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: ecd943a5af7d8cb09f9418a8a4d337a72c06fe22 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ecd943a5af7d8cb09f9418a8a4d337a72c06fe22 commit ecd943a5af7d8cb09f9418a8a4d337a72c06fe22 Author: Ed Maste AuthorDate: 2025-10-15 13:04:58 +0000 Commit: Ed Maste CommitDate: 2025-10-17 01:31:29 +0000 pkg-stage: Correct /packages permissions Include /packages in the METALOG used to create dvd1.iso. Previously we used an expression ^./packages/ (with a trailing /) which did not match /packages itself, and then with no METALOG entry /packages on dvd1.iso ended up with mode d---------. PR: 290222 Reviewed by: cperciva MFC after: 1 minute Sponsored by: The FreeBSD Foundation (cherry picked from commit 2db11dda840c4889aeb719761cdafa62730083a2) --- release/scripts/pkg-stage.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index f9216b52b088..6d460a83e1da 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -110,7 +110,7 @@ ${PKGCMD} repo ${PKG_REPODIR} if [ $NO_ROOT ]; then mtree -c -p $ROOTDIR | mtree -C -k type,mode,link,size | \ - grep '^./packages/' >> $ROOTDIR/METALOG + grep '^./packages[/ ]' >> $ROOTDIR/METALOG fi # Always exit '0', even if pkg(8) complains about conflicts. From nobody Fri Oct 17 01:33:28 2025 X-Original-To: dev-commits-src-branches@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 4cnnQc6b6sz6CGCv; Fri, 17 Oct 2025 01:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnnQc4CzWz4FpN; Fri, 17 Oct 2025 01:33:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760664808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3cITFbziyP1gsbsjltySPOZpRg15ZB0Tiq1LkM//mZE=; b=d+wApNudBZXz+Az/O99YohS3wNW3eoFY+yx+ZZSt83cGYEjhiu7kYQrcr7ddlJ+F1cqFbI e1o+UYAGUYdyuBCnNS8SQeVxph/TN6D0t2E6cyZFwifDUfqc3g1WO1utz+DImdDCkWdQGm npfyKzDPPUp9CZnGk5+qqne3FiIdhtC58SaqisAFnbXeXaIhGcvXEB50l8QuCHn00Nj34H YXxgjJe8EahO5HRWQMaYlBJG6qFW4sBmnv6DhdAQ8SxtUeo3r+2i0/Vuam57EhFqWU8e/Z GXMMHG2Tk8j3zOmGGiACU8DoUDQyVgUh5zYQk4WatnCZ7cGRXNZ3WFZZP8jbEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760664808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3cITFbziyP1gsbsjltySPOZpRg15ZB0Tiq1LkM//mZE=; b=iCCSsyheRY5kOKYpsebkhTs/1WqYW8G2lF2Yjo8x9MedSvz/nBuDxQmZohc7YtEYDc7CeL fGh2qSJ9PLoAk+pHEYLW0N2J4ZGel8BTYMwHAWg4CsEi1uj20+I9bUTdvRWZ1mHM2QslHG jWra3IXqFL0dvxqhjZfekuUQhBPVzz6583ybLxG25SOu+B3AtZFCnj5h8x/ZY+FMT7+pWA ZraeqCjrwKEr31yosItP0y1CAyd4/Grrc62X/Edkj2dOtinM4UFC/UL91pgs5JhOWVBPSO z+JqPgpPmvsQ/OFrUSmmASQtgBGofNkZ9Dp+1/O1CNd08Nqa11J5FRF/raRjRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760664808; a=rsa-sha256; cv=none; b=f6FdBZ7ziizKTU+JZm9Gsf6wlqKkAWEeashpH+DVfOjvpIyGvSqOVBOW6wfbhSGz8FYz1C CTGrcka+ccdataHPC9s9jvSeGSrA5udGNt6BWy6q4CJzDj7sWkvvYc0AGruz9F7pVYwfsB 94eR5wngcfgusJwFe00efWJCnjgsvjuV4cTM7B1QTxe05VfIjrQ79qb/9Q1+Q7LD9xWyNP kF6baxIM9pTZxB/3FObdMW+62gKtfrlYOKJ5szkmrXa5VaS+09L8MRK36yWiGehQghrztx 6Sr0Z0by8yKBGdacmRXT6CyhIjYAOvhQwfq8NlviLmzZyFqXOvISodKkGPwHfw== 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 4cnnQc3gH3zZS9; Fri, 17 Oct 2025 01:33: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 59H1XS73037206; Fri, 17 Oct 2025 01:33:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59H1XSuJ037203; Fri, 17 Oct 2025 01:33:28 GMT (envelope-from git) Date: Fri, 17 Oct 2025 01:33:28 GMT Message-Id: <202510170133.59H1XSuJ037203@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: b5d5181d74f0 - releng/15.0 - pkg-stage: Correct /packages permissions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: b5d5181d74f0b78530df8b94a7248a409c3ea72c Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=b5d5181d74f0b78530df8b94a7248a409c3ea72c commit b5d5181d74f0b78530df8b94a7248a409c3ea72c Author: Ed Maste AuthorDate: 2025-10-15 13:04:58 +0000 Commit: Colin Percival CommitDate: 2025-10-17 01:33:12 +0000 pkg-stage: Correct /packages permissions Include /packages in the METALOG used to create dvd1.iso. Previously we used an expression ^./packages/ (with a trailing /) which did not match /packages itself, and then with no METALOG entry /packages on dvd1.iso ended up with mode d---------. Approved by: re (cperciva) PR: 290222 Reviewed by: cperciva MFC after: 1 minute Sponsored by: The FreeBSD Foundation (cherry picked from commit 2db11dda840c4889aeb719761cdafa62730083a2) (cherry picked from commit ecd943a5af7d8cb09f9418a8a4d337a72c06fe22) --- release/scripts/pkg-stage.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index f9216b52b088..6d460a83e1da 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -110,7 +110,7 @@ ${PKGCMD} repo ${PKG_REPODIR} if [ $NO_ROOT ]; then mtree -c -p $ROOTDIR | mtree -C -k type,mode,link,size | \ - grep '^./packages/' >> $ROOTDIR/METALOG + grep '^./packages[/ ]' >> $ROOTDIR/METALOG fi # Always exit '0', even if pkg(8) complains about conflicts. From nobody Fri Oct 17 05:27:09 2025 X-Original-To: dev-commits-src-branches@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 4cntcZ2BvRz6CdFh for ; Fri, 17 Oct 2025 05:27:26 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic313-21.consmr.mail.gq1.yahoo.com (sonic313-21.consmr.mail.gq1.yahoo.com [98.137.65.84]) (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) by mx1.freebsd.org (Postfix) with ESMTPS id 4cntcX38QNz3NsG for ; Fri, 17 Oct 2025 05:27:24 +0000 (UTC) (envelope-from marklmi@yahoo.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.com header.s=s2048 header.b=hlLX7oF7; dmarc=pass (policy=reject) header.from=yahoo.com; spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.65.84 as permitted sender) smtp.mailfrom=marklmi@yahoo.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1760678842; bh=AOVmxfYcUJBG3ZFUtz0i6X1hADXHgoNdFA99YwugJOs=; h=From:Subject:Date:To:References:From:Subject:Reply-To; b=hlLX7oF7pEXe3TKRKqV/Bywcjv9Ue36VmGdMRaoqv0YQA2NM7u9d+tpZ6Lv1pC35fmqA1d6NX8wYGFGmpMIGy+0FEsLJsujEid9+ICWbCOEEznvcdd0QkWWbJrSklFVz2RkkV4Syc7B3V539qcO7klgetabI1kGIxlF6xgxUUAyh/VVIJEtRYWZQRwffKN+XbtZmwuKVLJv6s8VORfkgJf5Z1afZ9lCXS26/Gig9z8WRVY1QKXPT5V/aL8sRtGf6vvnyxb/GMUCMpasvSaHLn2hk8Bv36hOKkcHwiANFwuWNY8jfmTvRBLDQ/zRMcTeOYyLUY1LN4MU7lJZUw7hRGQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1760678842; bh=IvqbLMnwmv4wsvIsF72dJDjtsTrOpxRJzyYPalHjCmn=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=euuV080SP2T1fNZ0sbRHol0eaadiUM2SUf3A5dG6dNPACbxWnoDAkpaAh8XjP2gY+aUdujxK1Seyk3LnKBQmL+Qf32TAJNcTAuJgKOeYRI0XebRgF/cTjWGs0ZoGMKBg/GN1HK8f3zEsNKRMGMr+3lRZcp4No4tGI5KuUjOjKAvQ5dtGn/8Uktx2/d+jRc8w+anzR+x9JvbU8CjSglmcc16AQpAQylPDahEuoHRiQpqWPtg97nffta1mTfw82v7wk3Dr0hfi3DDrtoFWO2A+JC8SGGx4j/VqL3IC8EUkS1yEfeW9aQH5e+2sdeCgenqWKkcivSdDBNiotkn2VJpm0w== X-YMail-OSG: JU.TXBgVM1kw72qYd5yzvZuaV5cA1fxLyxAyQZaTjEgixg6x3YyS.4BlG6Pym_Z kvSZGhjPfXNeftwJerMFriEuPfJBMuwu37gK5q24nyGVRLBDcgD55FMOaK8pMS3_DfS5LCMelh7w kb8FRJO4IGZmZNeXQJaRyyHkLU0jiYfpx_j_GL1jn03.vq6UdoVC.GTlupM9B8NXzWA1k2Cut7EH bacsK6zWB_aP2i.pNn2j4rOt9Ni0uvrYUFxZS871oSLruonv7DrA0OV8KjxYD7FRI2i_38yEGvC0 fKqLwKC7GU7zL.skOUusXIq4Afaj8xbbbnRf.PzG8GenCP2CTxGdcd14eBvV7DbT5Qw0BkS50tkd M6dWLLFhUjODJz4OICSHE.humZ5MM7VVbQpLm8ZZboHxpJgr3EnU1OGO5MB7koS95SE05jSh0QPl hPGGDQiquKBi4qcMk5ef7JvX.kKMn2D7h81vlaPaZFEbBtdC6WxikijeY9TkYkE_laLEAM5AmQkt Ip49qimkONehWG3MviDyUxpwLh2p3WMtR6Dmf7Zh55ghiOCFQ25MqPjuuxZ2_hJWVXrS9MBhNVbM hXQ6U6JkLcs66PPk3jtW80oGba4FdbQm2pHvze3k_4b.gVa7.zMetA5yEbCpjCknj0bQ7oWk.l4n Bumw_w9CoNgufne9g3EMSb0WVLHWgBHPeBNkKQTSQL9bALUctvDzNjdNtOV3EXbEqxjGuYGDjtev pGb70hwvR2XSOk2UH_MYBiBfVr6JV2BrfFUsCJgcn2lDR6oACwJdmPny.xR9xhCCNFB89bueNk3e .sAaYOH.5pTHnv6E.N.ljh.26HZWxQFxKIR34aNGWMSJCjoRhFaVVDnK2I2i8tCjtk0TruIFxd55 kA3zFQJkIpyo2gSpSJSpwKqTI5oczAFAzYye.CeHhZfOpzPqUP5QJ5nQumqLZ7UtwkP6LXZ.xSKs fJKQ48vlqh7tUr8Mx0uKX.k7nzKmQH4kFbIyvdwWVsZXQ3pA31njPwdB1yJpU0dQR_izWrvvD1Ov M9l4WNP9KLAtX5jkquVD_El_PUTCWEPJo9lxvWoQgRjsfcVPCY3mo_yPIAccKZ3OpLt1WOcLRgVt a9_so34RYJ6oE7v0C7D7MCw2iW9dqYVAw5gSjpN.sAQbwHKy6Huuq0bnAElNx6wug_1SfKGQn1Vz 6nKzb6uIvdMMRDO6hKtw2ZP5NNjDYMoW4i0aTgy0cNdMaho8anmrVZ2t35bnTiZtzgNJaqHOAm8j _5H2UE9GcCGqJu4fEZRbHliiBBHPOR7_bRQTgi3TZ3KUjpgGwE0bOZqJ6xp3yNRImOAV6KMxCEj. sZ2LpxbIyRStuGQIG_4RfvgU3AFdW9n5dwYm6X3Apjjhoy5jJNwQKPR_q4vs2uh0uPTJtQhs1Jf8 DYlOHuXEl5_XKQZhxtrl9OO1AtGqY0PU3gveZD69XPGI4METjBPY.8W7JIutaT3WgtGP3RFVbLzX pA2mscA9vGF0YfaXCYjKCVBfzuvyVebeyn4LZ5WKeT1h7uk6tj65RAL3W5z.TkGtVQLgDy82ij1Z afjue49CrTcMm8ucSeyAGOA4H9ItNB.GnB7SAJyfNthjfdVY1IK2rvDrotzBVrERTMu0wb55HOuQ 7ydfy9ZNPHsccmjZ4n4YejOjc7llWGQdZuIexMhUiQAa2ooTQACLAGCE7pTsemjtb8e6fII2.yGq ebe_RRU0l2N2oV33uawqWnPm61J72rjMxiuZkLhOcTW9ld58egdX5kDDwPhfs4CCJ6NcaHDduBrK giKWxpW.pB4ovMKvdXSmGLgy.zbdMarbCSKi5cHor02w3Qn6Avd.9w8Ht89f5TGRLceuo_1YpUEp MGwWUzC6vPEYW5MIFZAX9gmkf5mEm4HI9eqtxPSBSfH3ygWx7IrpRgoUZfJw60gyqferDEXiOT.G DryWAX9q.jy2W31QQGIJtSrs_hhvbYiVMPJVcI0kUHWTUGjXHCbrXFXykA52yzpAiNVnyaK_1j7U KuOS0O3W5wtzV9nGWa_Z4VUmbyi9l5vQHyIGixGJISbZMjRqhUHDRTaixkJTbp3YHGWcbKvrfSGF tkHYxIkXm5m3pM4cJx7o5itDpECZixMKXogmqn065j1fs5hUPYD2xaFGGPhULSowWloVdKOL4Eo2 SAYEnJdCv8K1pAembK5n27RrL4mPRGwJibTdYIdJvUtqYuv9uo7cu9tKPn03IdDawz2Ac6UAN6q9 I0aJGJ.BX3obQb16nD8WA3OC60BGBL94vzlEZ365d7j7Ac6bA1fSwZajHHXEnpaMhHcxiZHLieH5 a4e7SiRHoud_9jpXWGMiNaA-- X-Sonic-MF: X-Sonic-ID: 87f3e3df-f065-42e6-9ef2-5508257a0eaa Received: from sonic.gate.mail.ne1.yahoo.com by sonic313.consmr.mail.gq1.yahoo.com with HTTP; Fri, 17 Oct 2025 05:27:22 +0000 Received: by hermes--production-gq1-6b8576c5cf-w2ttr (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 1917ed19cb84c36c4898a1e304e11f35; Fri, 17 Oct 2025 05:27:20 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: RE: git: dc5aae134a44 - releng/15.0 - release: Switch back to latest packages for now Message-Id: <82012980-8891-43E9-BD4B-FA32A0682CAF@yahoo.com> Date: Thu, 16 Oct 2025 22:27:09 -0700 To: Colin Percival , dev-commits-src-branches@freebsd.org X-Mailer: Apple Mail (2.3826.700.81) References: <82012980-8891-43E9-BD4B-FA32A0682CAF.ref@yahoo.com> X-Spamd-Bar: --- X-Spamd-Result: default: False [-4.00 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; RCPT_COUNT_TWO(0.00)[2]; FREEMAIL_FROM(0.00)[yahoo.com]; TO_DN_SOME(0.00)[]; DKIM_TRACE(0.00)[yahoo.com:+]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; MLMMJ_DEST(0.00)[dev-commits-src-branches@freebsd.org]; APPLE_MAILER_COMMON(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.65.84:from]; RCVD_IN_DNSWL_NONE(0.00)[98.137.65.84:from] X-Rspamd-Queue-Id: 4cntcX38QNz3NsG Colin Percival wrote on Date: Fri, 17 Oct 2025 01:17:35 UTC : > The branch releng/15.0 has been updated by cperciva: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3Ddc5aae134a44d18921e179355e9b93a7= eff534ed >=20 > commit dc5aae134a44d18921e179355e9b93a7eff534ed > Author: Colin Percival > AuthorDate: 2025-10-17 01:15:15 +0000 > Commit: Colin Percival > CommitDate: 2025-10-17 01:15:15 +0000 >=20 > release: Switch back to latest packages for now >=20 > Normally in BETAs the DVD images get packages from the latest > quarterly package build; but aarch64 does not yet have a quarterly > package set built for 15.x, and this made the BETA1 aarch64 builds > fail. Switch back to using packages from the "latest" package set. I'll note that https://pkg.freebsd.org/FreeBSD:15:aarch64/latest/ dates back to 2025-Oct-04 17:03 or so, before releng/15.0 was branched. > Direct commit to releng/15.0; will be reverted before the release. >=20 > Approved by: re (cperciva) > Sponsored by: https://www.patreon.com/cperciva . . . =3D=3D=3D Mark Millard marklmi at yahoo.com From nobody Fri Oct 17 05:36:10 2025 X-Original-To: dev-commits-src-branches@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 4cntph6T47z6Cf78 for ; Fri, 17 Oct 2025 05:36:12 +0000 (UTC) (envelope-from cperciva@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cntph5gbrz3Q6S; Fri, 17 Oct 2025 05:36:12 +0000 (UTC) (envelope-from cperciva@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760679372; h=from:from:reply-to:subject: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:autocrypt:autocrypt; bh=bCYROXc7pWz3MzoX42+wpbyg6B5kRCtfnBgsOeJ0rCg=; b=StqGntOC2/PWM3ndOvguPnZgs46B0OqNZD9WT2Te0S/++/eWtAi6SUBIvvwnPhb4TBPx6J CtfMqsKoutTAYxMUA0AbvsaQ8QBDtz/AZNCazNaPJ4/Zge0Xq7OhouIRhJD0JhoH4vO07L BeHxmsNSbJz90dFhzTiRjwhOTF3UsWejxhN/3RLoeo9JzXOenK+A2mBuBnRQ3L2KGGapqH U1nIfvaOLXzTY1pu1Wr2mc5uQ2dtGLCHP9Fw4l3ZjdjcE+xFGZDcL3z8NommNuvpMALVkx C3JRVnQRJPq63E8OKzMxb/nKhegCH9Ok3aOkfW/076Tn1d7wLfqMCk8VJvU+OA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760679372; h=from:from:reply-to:subject: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:autocrypt:autocrypt; bh=bCYROXc7pWz3MzoX42+wpbyg6B5kRCtfnBgsOeJ0rCg=; b=Z2uJw3PedT6Mrsw5cyqfIlIrj6yOfyFIHYW+cllPk04zbllwX+66BihvAzv/gkrGhIs/Es gJiCtadZD35PJdT1FScOTYgQHWYshc/BTp9OpdXiYlHy2Y47SHGO0NF07rECISrndfMu9U iE4lw3A23aTKD5Bb+BbTUFwMoNUlNvW9J3lygNxrbFD5RkgjfAZi2gh6uTPn6PzO9kh9ek or4plZcmRqzsQgwmxZ5Zk9HZbBWstxPCtVKBZ8lY+v3LEPgIkYEi0in+eEpWVF4Mv1f7dw 9zdFgCdCKKIi2pmXgUX2M4tt4G+keeh8TPUOzEUDL8a1kRW+UdoiQrKOnpvU0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760679372; a=rsa-sha256; cv=none; b=Lo9g6t/X3Cl8B9EMeknLFoZT1KkefADXFEIc3iFn+k6loLeEpg87OI6BceVOnDN7QUDj20 3rcRgYo36POcEiHSyufJYqf8MP07WYC1poY557veLqEC1MYHx9IMFNnHhjlK47iKsqU86x DSgQ0TBEAJSY/iYDVtEjkfiQoMpel35jxC8JJTgL/oKbPdwD4kT192WBFc0RtI2PUkwu2r ykTCc2zygugfDqNwmRfh6ANTVcXRJp87QlWc1H47n+QhW+BlyH5xex/2NgOooJVXKcJZxV grm92Ohn7QGGFviz/6Cjf/Yz3PLN2ECEyFj2I712eNmarZTul/eCEaL+oaC13g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [192.168.6.36] (S0106684a76304d01.vf.shawcable.net [70.69.240.84]) (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: cperciva/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cntph37JBz41Z; Fri, 17 Oct 2025 05:36:12 +0000 (UTC) (envelope-from cperciva@freebsd.org) Message-ID: <6ac23fe7-f471-4980-b169-9e79567f3c0c@freebsd.org> Date: Thu, 16 Oct 2025 22:36:10 -0700 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: dc5aae134a44 - releng/15.0 - release: Switch back to latest packages for now To: Mark Millard , dev-commits-src-branches@freebsd.org References: <82012980-8891-43E9-BD4B-FA32A0682CAF.ref@yahoo.com> <82012980-8891-43E9-BD4B-FA32A0682CAF@yahoo.com> Content-Language: en-US From: Colin Percival Autocrypt: addr=cperciva@freebsd.org; keydata= xsFNBGWMSrYBEACdWRqDn3B3SKO7IG0/fGHYtfs26f3Q5QeAcasy1fQLniwGQWn5rlILhbCD K/jdNoDm5Zxq20eqyffoDNObCjnHgg4tGANdi+RmDy+7CDpE789H8dss9y7Pt5DlGGAXQQnt hxush3EYS/Ctprd9UUL/lzOOLOU1aNtzB84tNrJBtcJmL7OYHfyTSNFxvedqJrrasejIQOLI t/DQ89BPzz+vsKHz7FJPXh3fsVkzLA00DJYcfkgxyABfJNA7U6yMwd4DVSdx/SsvfIDMVXnu UXCXswo106WPZbYGlZPpq0wW6iibtTerJix+8AeuwXvl9O1p8yESK4ErkIxCnmghTSz+pdzj z/6xBRkdDM9VdZ0r+CzsaNXMpDOzFuKyjaiYBdgCLljbDnXIHFcqXenrZ7Xwkm09g/M4uVSh pIUG2RYa6tsHSQoGCp3f2RZv1znfViKQFbbL83QjtPA20AhseZSYbHp1FPhXyy9J0wkGL16L e99g6gdGeIRE82BZjBjKGDkoyDPq+oDRSFl8NtzmIKy+cfz00nViqcTF4bREXEawFGhlpO0X O9q8mijI9iFB6zaPBiSdJGBL5ML5qLTNCl8Zlf4m1TBvmRTqF/lzMHVXHidDoUhpSh/y3AFZ 1KrYc27ztJQywDJPJPWPbtY8YhFLFs377gfP8WldsZjzp8nvoQARAQABzSVDb2xpbiBQZXJj aXZhbCA8Y3BlcmNpdmFARnJlZUJTRC5vcmc+wsGRBBMBCAA7FiEEglY7hNBiDtwN+4ZBOJfy 4i5lrT8FAmWMSrYCGwMICwkNCAwHCwMFFQoJCAsFFgMCAQACHgUCF4AACgkQOJfy4i5lrT++ ig/9GZKdN2fHSyrANKZX38ivd7IX2wAYouqH9DrQM94W8IciaDLmarN4Pl9mY+aucMwQUSyp uNtKOJwKqhVVaalF9Zw0sRMH4CJuvT7vKCtZ3q1Okb7soRvFte4d+vXhvPxCvBFDA5JzU7Lg DR5eqqcvF1dN1OuCq16pl0zCOSH/Jr5ToE3LM3Av1KBGcZD7ZSzHRWsFjV5AOUJKySuA3GwJ e/jASQcQ0YfCnru8ntLmYg/2SKvZFlfthZiCBnAppMt4n4BUAw3TDvf10HIDtdneejawcbLS gofLCvGqumwbZYAMKWrFzT4+7KQvr0pOw8QD7EbxnB4f9hQ7UiVF8qWsyKU3iv6b5JLhbS59 ooKRccyOvdMLcVJ0ZdpqoxrNv061ZUqLL5RiWjBlc1qjBnDxeg5oyM0rT8WLftdgvyH6RQt0 KWngumBAT5AT2DUYL8Uz1490cqfO9K4yEGZAJB9XRVX1g2IWTOjae+0g9ZII+h91UngFz+Rz aKDeseKBbCGDOFXx1TqKiHl2g255ZnUxKYTlucFtguv4gDGBgEk4G9JaEWBw1IWblcKhxH7L 2vWsUhvwghjIxHdO/RkeIeHvSp4YZxCJ7a3TaJLYAlwYopfTKVzNhcDY5h5syEuoHjyJCxXK SyoJYAVu8Yl2KUhvOtOmL1VZ6xyHnpdMRWKJZ5jOwU0EZYxKtgEQANYfgbtUMVnhjxDHhWLp g5kLHK3YW0TfJKzpXqDB7NiqxHofn4OcbZnVC3MKggcbs9o1/UtsjnlsG8550PfiYkDXvPiO RJwgbGs6MGIDK797C6cnBLQ8xwBa9SL4cl5iQFnhWmt6vwnJ+an/cm5JpYves3wL7jV09qU9 57hkHXEUcl38r4FssZzVcLKPUVTa3Un+QGRTGDGe/f4ctjMaqv0ZCM+l2ixPhf/vqESrfSLv V/+T3dmtUfXjazO3SABvsHwxgGuTTYOlKoPCaebr+BRdqm0xeIShoIlhvTI8y4clchqx/Uxg UG5X2kvU13k3DS3Q8uLE4Et9x1CcZT6WGgBZSR6R0WfD0SDnzufNnRWJ0dEPA2MtJHE7+85R Vi9j/IgZV+y5Ur+bnPkjDG1s2SVciX5v9HQ0oilcBhvx0j5lGE9hhurD9F+fCvkr4KdbCknE 6Y8ce8pCNBUoB/DqibJivOzTk9K9MGB5x0De5TerIrFiaw3/mQC9nGeO9dtE7wvDJetWeoTq 4BEaCzpufNqbkpOaTQILr4V6Gp7M6v97g83TVAwZntz/q8ptwuKQPZ2JaSFLZn7oWUpYXA5s +SIODFHLn6iMoYpBQskHQjnj4lEPJadl4qj+ZKA89iDAKsniyoFXsbJe2CPbMS1yzBxKZq6K D/jpt7BOnuHr/JrXABEBAAHCwXYEGAEIACAWIQSCVjuE0GIO3A37hkE4l/LiLmWtPwUCZYxK tgIbDAAKCRA4l/LiLmWtP3jmEACQrh9gWe8F1Tkw3m6VoHKwLc5he4tX3WpQa//soPO6iGG3 S3WPruQ46NrAaAojoOcKI9UONDO5rxG0ZTX53S+lu2EO47jbcLwOCjaEpjKpDRt9ZXBQE8Xl mtBE9Bp3W9gpjB1nE3KNM1mJYgsK0QdRpwwfh4pVgGpOj8j23I6MCK+v99zEBnpgCn2GX8W/ kctRXHqWwndHysOJtRP/zrl7dDaABF1f9efUl0LL3TD3GJ9VDz+DNOin/uK2a1hiJo8QzTRk PpfUQ2ebzDsrd1i/pOWkMSkdH+rEu4AGrXWtaBwrMyrGkL6Icb6yO+P9/z0W2wlgBf3P1YRt JPgQt/Dj3yvA/UnaV/QmuVQPjl13o24UnJGsZM8XGnNdfWBKkC1Q6VXC4QT+dyBHYH9MuE9d 6oGl8pFM1+cTfEfbM62/rRoPkF1yHMsI/903VxEvuUIKfhEZAVLFyHldooNxuchntHQP9y8J 8Ou9bWYQP7MnEn+kwSwrZkjurfPkan+xQvp6dDYnj3V0GwA5pprBMaB928VIDVOv+1PNQI3t Cvk5VPv/skq+TJRMHW7bFSt8PRa91cUf1FOLIz9APDiJOzXkwxUEHGV3zPSaUhs1JYjyBeGT wDAvtLUdjOnRhEUOwlnIrztmvyciutjJoVzKEEjj5WXnHk9L9kQ1bpAjkjTONw== In-Reply-To: <82012980-8891-43E9-BD4B-FA32A0682CAF@yahoo.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 10/16/25 22:27, Mark Millard wrote: > Colin Percival wrote on > Date: Fri, 17 Oct 2025 01:17:35 UTC : > >> The branch releng/15.0 has been updated by cperciva: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=dc5aae134a44d18921e179355e9b93a7eff534ed >> >> commit dc5aae134a44d18921e179355e9b93a7eff534ed >> Author: Colin Percival >> AuthorDate: 2025-10-17 01:15:15 +0000 >> Commit: Colin Percival >> CommitDate: 2025-10-17 01:15:15 +0000 >> >> release: Switch back to latest packages for now >> >> Normally in BETAs the DVD images get packages from the latest >> quarterly package build; but aarch64 does not yet have a quarterly >> package set built for 15.x, and this made the BETA1 aarch64 builds >> fail. Switch back to using packages from the "latest" package set. > > I'll note that https://pkg.freebsd.org/FreeBSD:15:aarch64/latest/ > dates back to 2025-Oct-04 17:03 or so, before releng/15.0 was > branched. Yup. I don't actually expect these packages to be useful; the point is just to have *something* so that the build doesn't fail. Having dvd images with useless packages is far better than not having any aarch64 images at all. -- Colin Percival FreeBSD Release Engineering Lead & EC2 platform maintainer Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid From nobody Fri Oct 17 05:47:35 2025 X-Original-To: dev-commits-src-branches@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 4cnv3r1hfXz6Cfrm; Fri, 17 Oct 2025 05:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnv3r10nKz3SYh; Fri, 17 Oct 2025 05:47:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760680056; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gJeN9jxm5OPEl7+a3cSa0ojqJfC2+thZVk+WmMOM4v4=; b=UOOfbUOvHLj8/kVvDGkDiNrCcL8Apib67gXCfR0bSNinhI1Psumn8zd7KVp0YekX2+0E4V YkzlF60ktfhJvraARR8QlgH2Un/JvgM0cJz1Kqa36GoJ2jLuBovFxXMiFvUCI00s2W+9ta thHfPK5/7keL8i7rjjohZV+y+EtOPv23UQfFZ+hbaq1s9Kgi29bB7OWBwPZh7/4YYijQeT GBX9DGh8xNag68J6CFW0eMD2Uz9DRbLYNj8BVS3b2/YBlFagwbpyGOZV28ZH3lMIzieruY jSlhcKeVkslcqArIov2D2FqS237ojud95PhKgnwPLXVORkUIIZ33ScEB6PbHPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760680056; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gJeN9jxm5OPEl7+a3cSa0ojqJfC2+thZVk+WmMOM4v4=; b=JzwVxN+ulB3DOsmSlzMwS78CwXPxp3q7e8HsTe/yngcJxySp3XK/nPxuECoPbLEy7xlP5S d+hXY+0HP1pb7XMvXl6/OqefASlZ4XOhkdAJPmuWYyFNoUP5lce8IQtiqZHsvOxX4ajV2t pKxhonexeSXY64L0T0htoOkBazW0EVo6ikPfojPpE5JZzWmeDPoTGXQHuC0Ter+PZKT+zl Xpkw1Ae+7tSNobDuzZHYboJqID2HIYTdq6bLJ/7gbrxBOJVIsO0HuETnqrw0/k68G1L2bW WbXXOl9hu5oKrJVqP6QniqTtb+EsfwilFN/FZTOZPxodKfdqeM4l4/x+XLAwKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760680056; a=rsa-sha256; cv=none; b=rF4uJ4UIJ3ijtz+/TTLmdyCk6uanfBylVNCOJdyoQ46QRaiQ5Uj3t4pw7YDnOo8nIwaJyg QsU1Bfko9LQiNCGKiAhIdT4hBMIHhkGaz/SsCeJ33vz6eqj4c6oCj6F3n4ti39zJNUscvi KVNS9E28RLigYzlJtJkJE5xPzbEW1wHbr6Ruz+eyJdCROumo2ohu0u1Ctt56Gcq4Qchhex 1vBrA9QCbp0Xx90OuOeHLw+uMK3LNNO5so7FdZUhgCN8OhrzduMrL5L7jD6GHtqecGKUMy 6+bercl9QIxhyuzU445j3PizyXZHygPhyo9irZRh5ZGfMooCVW4kFtOxNYjeyQ== 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 4cnv3r0VGmzhb8; Fri, 17 Oct 2025 05:47:36 +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 59H5lZHl010279; Fri, 17 Oct 2025 05:47:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59H5lZwQ010277; Fri, 17 Oct 2025 05:47:35 GMT (envelope-from git) Date: Fri, 17 Oct 2025 05:47:35 GMT Message-Id: <202510170547.59H5lZwQ010277@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 9a0a114b7f10 - stable/15 - sockstat: show path state column only when useful List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 9a0a114b7f10c9510f6e2d4e5d1c5e40218f383b Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=9a0a114b7f10c9510f6e2d4e5d1c5e40218f383b commit 9a0a114b7f10c9510f6e2d4e5d1c5e40218f383b Author: Michael Tuexen AuthorDate: 2025-10-09 19:16:38 +0000 Commit: Michael Tuexen CommitDate: 2025-10-17 05:46:23 +0000 sockstat: show path state column only when useful Showing the path state column is only useful, if there is at least one SCTP endpoint shown, which is not in the state CLOSED or LISTEN. Don't show it when it is not useful. Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52986 (cherry picked from commit 746eadecaa7dc8913721cbaa9be4e603bd36ea49) --- usr.bin/sockstat/main.c | 8 ++++++-- usr.bin/sockstat/sockstat.1 | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index f0eb83eb3e9f..7fedfd5b8724 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -103,6 +103,7 @@ static bool opt_u; /* Show Unix domain sockets */ static u_int opt_v; /* Verbose mode */ static bool opt_w; /* Automatically size the columns */ static bool is_xo_style_encoding; +static bool show_path_state = false; /* * Default protocols to use if no -P was defined. @@ -584,6 +585,7 @@ gather_sctp(void) !(local_all_loopback || foreign_all_loopback))) { RB_INSERT(socks_t, &socks, sock); + show_path_state = true; } else { free_socket(sock); } @@ -1485,7 +1487,7 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) } else if (!is_xo_style_encoding) xo_emit(" {:encaps/%*s}", cw->encaps, "??"); } - if (opt_s) { + if (opt_s && show_path_state) { if (faddr != NULL && s->proto == IPPROTO_SCTP && s->state != SCTP_CLOSED && @@ -1632,7 +1634,9 @@ display(void) if (opt_U) xo_emit(" {T:/%*s}", cw.encaps, "ENCAPS"); if (opt_s) { - xo_emit(" {T:/%-*s}", cw.path_state, "PATH STATE"); + if (show_path_state) + xo_emit(" {T:/%-*s}", cw.path_state, + "PATH STATE"); xo_emit(" {T:/%-*s}", cw.conn_state, "CONN STATE"); } if (opt_b) diff --git a/usr.bin/sockstat/sockstat.1 b/usr.bin/sockstat/sockstat.1 index dabb3042bfd4..d14eb967ad0f 100644 --- a/usr.bin/sockstat/sockstat.1 +++ b/usr.bin/sockstat/sockstat.1 @@ -25,7 +25,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 October 7, 2025 +.Dd October 9, 2025 .Dt SOCKSTAT 1 .Os .Sh NAME @@ -205,6 +205,7 @@ is specified (only for SCTP or TCP). The path state if .Fl s is specified (only for SCTP). +This column is only shown when there is at least one path state shown. .It Li CONN STATE The connection state if .Fl s From nobody Fri Oct 17 05:47:37 2025 X-Original-To: dev-commits-src-branches@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 4cnv3s3rsQz6CfyQ; Fri, 17 Oct 2025 05:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cnv3s1X3Pz3SkY; Fri, 17 Oct 2025 05:47:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760680057; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dT8CADMyLa9uZZPaTHyhSp7Up+az5L7bNBhvFCY3O+I=; b=MPc3Kx1YOB9pgs/OZ2KiSDrAQo5p7k4NFihWQ8L7EiMon80GARyQsDYqwtaXABAIBmidOh zJ3JDUubG9WUHJX+URk1irfudDlCGX99SViCzWv2kUFmwyUngn8VcnSAFVeL/pW2z1Kqut wVdiz79tOwetvLgC1KxibP1kBmEfi9KOFJWrf+UTygGEdjb3m43fTOUiGo8bDo79CZSzhS YBtRzOv9LGYJt/ejlmEwLWcAFqiynd+QK5Qk1+cqKcpJ15GUDAegzyTxjxKWJjw7YjxSHQ 9U9geiH2Bw4M8I2Wab5kpCHhhLTMuLpwTkXTUi0cw0ZMcW5liZ7HRg1YcMqczQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760680057; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dT8CADMyLa9uZZPaTHyhSp7Up+az5L7bNBhvFCY3O+I=; b=oTR0LLnSWXmgaa5NCBtQWyCwPwyM5xWupUM1et2ttp8OuXdEmHejiHp4waIeWxLk62avQu rMo52iKuePofBjzNGwHd0ZEPKQYWrXGaz66pXKtXFKUQumf/Smy+utRlxonaMZep/mWx/1 U7JeNn9cWlyLvXlOVY3Em5wozRkNInjfF8l4wW8qySW4yNoGrdmstmaeQhwCJFosc74TBR iIw/U3FEIq45PpsZXa9xBz7aW+sD+c0dc0xFp3uaZgk26G7UBvA69Zdbk/3W2RmZFClkvh Mc/jGO+XDT68GoG3sF8dMJ16Rv0UlRzSbfp+qMvMIoCOLFP5RmatldFjEVgobg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760680057; a=rsa-sha256; cv=none; b=P4wdKlUh599sVDdD5oGYp8atMBA1Js/Ydv+MpOxPVHL2k/8r3g6p9xVYyaKHy79tF6szke 7ouGRDYDdULYCu99I8EFGLbqjPCT+xcBloYI4vqXg1T+smL4y5x3c2mVIxhB19qB5lEOAF QqyRp1tNNetDKc913PomlA39/bw7yYdSra0WkeyRpPx3/QFu0cMYYmWm+35xDw7CuJv2xW 0HupsztgxBYIJB6XAk3DpkCbZPzsXp5/klxGnelGiFPMQRxGYjOSCIlRxhpWip3IRfu/4e 3Kwn2OGVn98T1YwjzgcGaLJPzIAbIRRB0gpvU4xj866vM3llFImX/bY3lhvmLw== 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 4cnv3s17RDzjGq; Fri, 17 Oct 2025 05:47: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 59H5lbJI010313; Fri, 17 Oct 2025 05:47:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59H5lb6n010310; Fri, 17 Oct 2025 05:47:37 GMT (envelope-from git) Date: Fri, 17 Oct 2025 05:47:37 GMT Message-Id: <202510170547.59H5lb6n010310@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: f6923c0a68a6 - stable/15 - sockstat: improve handling of path state List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f6923c0a68a67d69762e188273f0e87f231ec964 Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=f6923c0a68a67d69762e188273f0e87f231ec964 commit f6923c0a68a67d69762e188273f0e87f231ec964 Author: Michael Tuexen AuthorDate: 2025-10-14 06:39:37 +0000 Commit: Michael Tuexen CommitDate: 2025-10-17 05:46:53 +0000 sockstat: improve handling of path state Only suppress the path state column when producing traditional text output. When generating html output, always include the column. Please note that when generating json or xml output, optional fields like the path state are only generated if they is applicable. This has not been changed. The changes in this patch were suggested by asomers. Reviewed by: asomers Fixes: 746eadecaa7d ("sockstat: show path state column only when useful") Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D53005 (cherry picked from commit 97e858f5b335ae8f98619f9cee8ab9a0501cd06d) --- usr.bin/sockstat/main.c | 8 +++++--- usr.bin/sockstat/sockstat.1 | 5 +++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index 7fedfd5b8724..d1ea6b1bc958 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1789,9 +1789,11 @@ main(int argc, char *argv[]) argc = xo_parse_args(argc, argv); if (argc < 0) exit(1); - if (xo_get_style(NULL) != XO_STYLE_TEXT && - xo_get_style(NULL) != XO_STYLE_HTML) - is_xo_style_encoding = true; + if (xo_get_style(NULL) != XO_STYLE_TEXT) { + show_path_state = true; + if (xo_get_style(NULL) != XO_STYLE_HTML) + is_xo_style_encoding = true; + } opt_j = -1; while ((o = getopt(argc, argv, "46AbCcfIij:Llnp:P:qSsUuvw")) != -1) switch (o) { diff --git a/usr.bin/sockstat/sockstat.1 b/usr.bin/sockstat/sockstat.1 index d14eb967ad0f..1498fb1d88f7 100644 --- a/usr.bin/sockstat/sockstat.1 +++ b/usr.bin/sockstat/sockstat.1 @@ -25,7 +25,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 October 9, 2025 +.Dd October 14, 2025 .Dt SOCKSTAT 1 .Os .Sh NAME @@ -205,7 +205,8 @@ is specified (only for SCTP or TCP). The path state if .Fl s is specified (only for SCTP). -This column is only shown when there is at least one path state shown. +When using traditional text output, this column is only shown when there is at +least one path state to show. .It Li CONN STATE The connection state if .Fl s From nobody Fri Oct 17 14:13:56 2025 X-Original-To: dev-commits-src-branches@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 4cp6J51J7Xz6DLd3; Fri, 17 Oct 2025 14:13: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6J50MxKz3sFq; Fri, 17 Oct 2025 14:13:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OGyuWdpCoG1rBzLl4Ho8J3cFZHyXQeqFdGniYVXkR7c=; b=qnesI44yXb8HoujZ9/6iwKrUGQj40KaWIguANp6VC5ZTWAwxdf0L4rzhM3PylGV4zhI+MG fOcgXTtSdHKH2qce32YbqcjdsV+Gest3yHt4ikXxIu7cdaoRdNJDAkkkjrAM8bWigSL7d2 O1VVsnL0nYz+UgY/SxwteOuA84F4wCzR4BvzhEAxwRELGDQTglEbyMnfYHoByy2d4bPJHG xH6+0c6ro69Zij67glwGh2QN++80/IbqKXwt+Jp589t7tuE1Z2pnvvmg0keFDhzbMXkod+ Hd7+qOP7f8/3BUeMYaHf+wtSZUM0404O05v2m2vHyBvRL7On2ym6li7f10RFqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OGyuWdpCoG1rBzLl4Ho8J3cFZHyXQeqFdGniYVXkR7c=; b=Zcyq6LpYkRoMSKPWhNJFv5hee3dKNuZsDRtP7t8aj7UnqEBT1e2ohy9gmUv/O1T6N6gMvF rt+M1HWghrbZu5tdLj3MzkajOiPXZWuTR5BcSOx9+P/OzxmiueeZTvvk57+Q8FFTLFEtIZ jgjCgnQKbKVFExh1SnAG69f7iOIdIbNpmRESkRH99780KdEk1XPf82RrR6iGbGoX6JjhGD IS8rJbi9p7F3vStRdxJ7CwJlwpXg6r3Fc6ntfMIuX6zJ437XcPGddxDX1Hi4LmYoFMrGXU an5p0G4+J4raysj8gFsuz6gfICsjtuYrH0juOTSswOGa8szOpUe6JfyHd4yyDg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710437; a=rsa-sha256; cv=none; b=KpUYKss7zyhGpWYOcesI5D3SavwrWmC2ykAqpJ7QD/7qQ9ODtYg5JVJEj+2C6NPskP+0Uf 9ONdODG4rxKhVH3EDcimRDA1cjrzUJGNOSexf0Subxx/DDQISdijEDbgn0BRzDRszz9Fau ufI/RHOQ2iPMZmbv4L5X4oZ0dLswIfiq8EGw6btjMdelLNbhVSqSCnYdKbVSRq6fMM7e84 BA8KEqoD0TlKaAak2xlBS+rmegf2uFYu1CXFB0br91Nbkt38+FI1FuP1or5omMiEdVkKsK OSt0GukAXo/Es2V59gXlH+f6/fG8WbAxrmFpPiD/qwNe3Dw9nsgLHDCsZabANA== 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 4cp6J46rVKzyDQ; Fri, 17 Oct 2025 14:13: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 59HEDu9D069062; Fri, 17 Oct 2025 14:13:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEDuZu069059; Fri, 17 Oct 2025 14:13:56 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:13:56 GMT Message-Id: <202510171413.59HEDuZu069059@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: 1de06221ccec - stable/15 - certctl.8: Update documentation of BUNDLE List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 1de06221ccec1deb338b57c235009e2cd94676c8 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1de06221ccec1deb338b57c235009e2cd94676c8 commit 1de06221ccec1deb338b57c235009e2cd94676c8 Author: Mark Johnston AuthorDate: 2025-10-14 13:32:46 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:41:29 +0000 certctl.8: Update documentation of BUNDLE - Fix a typo. - Provide the default path. Reviewed by: des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53001 (cherry picked from commit ec8e07e8fa94767dceb409c4c7c1840bba39172b) --- usr.sbin/certctl/certctl.8 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/usr.sbin/certctl/certctl.8 b/usr.sbin/certctl/certctl.8 index edf993e1361a..e58da8e7ff84 100644 --- a/usr.sbin/certctl/certctl.8 +++ b/usr.sbin/certctl/certctl.8 @@ -24,7 +24,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd August 18, 2025 +.Dd October 9, 2025 .Dt CERTCTL 8 .Os .Sh NAME @@ -110,7 +110,7 @@ A copy of each trusted certificate is placed in and each untrusted certificate in .Ev UNTRUSTDESTDIR . In addition, a bundle containing the trusted certificates is placed in -.Ev BUNDLEFILE . +.Ev BUNDLE . .It Ic untrust Add the specified file to the untrusted list. .It Ic trust @@ -151,6 +151,8 @@ Default: .Pa ${DESTDIR}${DISTBASE}/etc/ssl/untrusted .It Ev BUNDLE File name of bundle to produce. +Default: +.Pa ${DESTDIR}${DISTBASE}/etc/ssl/cert.pem .El .Sh SEE ALSO .Xr openssl 1 From nobody Fri Oct 17 14:13:57 2025 X-Original-To: dev-commits-src-branches@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 4cp6J62Bgyz6DLhy; Fri, 17 Oct 2025 14:13: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6J60XR0z3shx; Fri, 17 Oct 2025 14:13:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710438; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iLle8AA00s/+UnepSZ15ojvdppJ9bNvnZvfdntL9IGs=; b=FB+KctOmFTgLORYgzHZYHsE57BCG6JpkME2Bgd5gqzIKyMIod2BqDmYtR6/MT+cAeoY/Po U/yOpDVim39sFTcVzK4F6uy+f51/nSbEOYcM22OJzrK0zjVf+TKmQASkNj2/OFHtL5fLW2 zHrT/eGLmII042DFVQi+IfypsZCJSksqnicB5JP7TMASDMzSg7zPSg8studsry6wp1AyW1 GOmBl/GpkuBpSkjYyyfHrE2ODBWqT2UpN82QATZ1t14izVW5xIWN0270fBCz1ydxh+zRzZ wVWUR8kRsfgBzRF7VYC3wp2rdJVkGzOmM3kwuireXewLEPkt1+X52lbkQllijg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710438; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iLle8AA00s/+UnepSZ15ojvdppJ9bNvnZvfdntL9IGs=; b=PVGNo9kVI4TQlTVmLI60QATjBT9rpC8tlWHSboSfp4fGYvnt7V1OMX3w/RX18c7mpHVkWC sXnPqTakLgsJfsyY/I834pyXDOL/yxRhvb7nBu9XsTDbRZXrR67W/SMBF8e0NyqAe0GeS5 kx56K8CQzA3vywBvWOKFwRFzfWSa3pPvvy57AcUaTdlXNR7YV3nK8qTZllge74XxbBYSDD 4Ihb5sozhX7iwofiE7Ha+3FbNVe3rLv6BO8+ZXa9O5vpTVfIiB6+6NfgmwEmMwfUwtkwYE vdnGnlqgl6E4WJ+ijFV0q/hrsdFUlKwdEybO52YChI/m4St0jcU6eT1rFxgeqw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710438; a=rsa-sha256; cv=none; b=V3huyiId0ZM0BQPCCfkP6XlDbvuuhD4k+6bANascic7GdHZ6lHT32sXAxfMiBUl8acZdeF vQpityaE5eFJG+L1uwtE1ONkJQ0C7RXWiQGfq8by/BXKHwOGJr6nplIvO2pugEbHDyJVxi Dr9tVRQ74xQdfO6rGJLWRZW+18YwzotZQvXUxAQgMqF34mf1GaIk3HoJOct8a9HaDT2vXW ymo9DdDmjszDBq1BeTph31hgxdtdTNZZfQpuOL9epoEjkr6aDBKL59ckROjIpvtgv+iA0o omxCMTdj5liHuFOVoNAILBvjAwSjYjkxBFRiaMZxhyi6MgCnXi3jTevWeSo+ng== 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 4cp6J603M9zxZr; Fri, 17 Oct 2025 14:13: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 59HEDvSV069100; Fri, 17 Oct 2025 14:13:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEDvfP069097; Fri, 17 Oct 2025 14:13:57 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:13:57 GMT Message-Id: <202510171413.59HEDvfP069097@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: 838c8027f9d8 - stable/15 - libexec/kgdb: Add new modules and install them together with debug info List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 838c8027f9d83abc7644f0cc44daebb8b80a7417 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=838c8027f9d83abc7644f0cc44daebb8b80a7417 commit 838c8027f9d83abc7644f0cc44daebb8b80a7417 Author: Mark Johnston AuthorDate: 2025-10-03 14:25:53 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:41:58 +0000 libexec/kgdb: Add new modules and install them together with debug info This change simplifies integration of gdb python scripts with our kernel debugging infrastructure. Rather than putting debugging scripts in /usr/libexec/kgdb, move them to /gdb, and add a kernel-gdb.py which automatically loads modules from that directory. kernel-gdb.py will be automatically executed by kgdb when loading kernel debug symbols (assuming a default configuration), so one no longer needs to do anything to use these modules. The change also adds a couple of new modules, vnet.py and pcpu.py, for conveniently accessing VNET symbols and PCPU/DPCPU fields, respectively. Note that these require a change to the kernel linker when accessing symbols from a loadable kernel module. sys/tools/gdb/README.txt describes the scheme in more detail and provides some rudiementary documentation for the commands and functions added by these modules. It should be updated when adding new features. sys/tools/gdb/selftest.py can be used to do some primitive testing of the modules. All it does is execute a number of gdb commands making use of commands and functions added by these modules. The developer is expected to verify that the commands complete without errors and that the output looks sane. Discussed with: kp, avg, jhb, glebius MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D50825 (cherry picked from commit ea675a43f09ba569adf1dd17b4f1ced970e48de4) --- ObsoleteFiles.inc | 7 ++ etc/mtree/BSD.usr.dist | 2 - libexec/Makefile | 1 - libexec/kgdb/Makefile | 5 -- sys/conf/kern.post.mk | 15 +++++ sys/tools/gdb/README.txt | 21 ++++++ {libexec/kgdb => sys/tools/gdb}/acttrace.py | 41 ++++-------- sys/tools/gdb/freebsd.py | 75 +++++++++++++++++++++ sys/tools/gdb/pcpu.py | 77 +++++++++++++++++++++ sys/tools/gdb/selftest.py | 31 +++++++++ sys/tools/gdb/selftest.sh | 23 +++++++ sys/tools/gdb/vnet.py | 100 ++++++++++++++++++++++++++++ sys/tools/kernel-gdb.py | 15 +++++ usr.sbin/crashinfo/crashinfo.sh | 3 - 14 files changed, 377 insertions(+), 39 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 32b3a2607150..34b72c9c88ed 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -54,6 +54,13 @@ # 20251006: Remove libnss_tacplus.a (it never should have been installed) OLD_FILES+=usr/lib/libnss_tacplus.a +# 20251003: kgdb python scripts moved +OLD_FILES+=usr/libexec/kgdb/acttrace.py +OLD_DIRS+=usr/libexec/kgdb + +# 20251001: test helper sendto-IP_MULTICAST_IF renamed +OLD_FILES+=usr/tests/sys/netinet/sendto-IP_MULTICAST_IF + # 20250930: Rename wlanstats to wlanstat OLD_FILES+=usr/sbin/wlanstats OLD_FILES+=usr/share/man/man8/wlanstats.8.gz diff --git a/etc/mtree/BSD.usr.dist b/etc/mtree/BSD.usr.dist index 7d5b8620e5c4..6a8c155e5e73 100644 --- a/etc/mtree/BSD.usr.dist +++ b/etc/mtree/BSD.usr.dist @@ -181,8 +181,6 @@ .. hyperv .. - kgdb - .. lpr ru .. diff --git a/libexec/Makefile b/libexec/Makefile index c4a5bc198ab0..180dd10b5d29 100644 --- a/libexec/Makefile +++ b/libexec/Makefile @@ -10,7 +10,6 @@ SUBDIR= ${_atf} \ flua \ getty \ ${_hyperv} \ - kgdb \ ${_mail.local} \ ${_makewhatis.local} \ ${_mknetid} \ diff --git a/libexec/kgdb/Makefile b/libexec/kgdb/Makefile deleted file mode 100644 index f6b255ab4f60..000000000000 --- a/libexec/kgdb/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -FILESDIR?= /usr/libexec/kgdb - -FILES= acttrace.py - -.include diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk index bb3c7af82a4d..7cdfd17778db 100644 --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -398,6 +398,14 @@ CFLAGS+= -fdebug-prefix-map=./${_link}=${PREFIX_SYSDIR}/${_link}/include .endif .endfor +# Install GDB plugins that are useful for kernel debugging. See the +# README in sys/tools/gdb for more information. +GDB_FILES= acttrace.py \ + freebsd.py \ + pcpu.py \ + selftest.py \ + vnet.py + ${_ILINKS}: @case ${.TARGET} in \ machine) \ @@ -447,6 +455,13 @@ kernel-install: .PHONY .if defined(DEBUG) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" mkdir -p ${DESTDIR}${KERN_DEBUGDIR}${KODIR} ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/ + ${INSTALL} -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} \ + $S/tools/kernel-gdb.py ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/${KERNEL_KO}-gdb.py + mkdir -p ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/gdb +.for file in ${GDB_FILES} + ${INSTALL} -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} \ + $S/tools/gdb/${file} ${DESTDIR}${KERN_DEBUGDIR}${KODIR}/gdb/${file} +.endfor .endif .if defined(KERNEL_EXTRA_INSTALL) ${INSTALL} -p -m ${KMODMODE} -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_EXTRA_INSTALL} ${DESTDIR}${KODIR}/ diff --git a/sys/tools/gdb/README.txt b/sys/tools/gdb/README.txt new file mode 100644 index 000000000000..8c31565ddc42 --- /dev/null +++ b/sys/tools/gdb/README.txt @@ -0,0 +1,21 @@ +This directory contains Python scripts that can be loaded by GDB to help debug +FreeBSD kernel crashes. + +Add new commands and functions in their own files. Functions with general +utility should be added to freebsd.py. sys/tools/kernel-gdb.py is installed +into the kernel debug directory (typically /usr/lib/debug/boot/kernel). It will +be automatically loaded by kgdb when opening a vmcore, so if you add new GDB +commands or functions, that script should be updated to import them, and you +should document them here. + +To provide some rudimentary testing, selftest.py tries to exercise all of the +commands and functions defined here. To use it, run selftest.sh to panic the +system. Then, create a kernel dump or attach to the panicked kernel, and invoke +the script with "python import selftest" in (k)gdb. + +Commands: +acttrace Display a backtrace for all on-CPU threads + +Functions: +$PCPU([, ]) Display the value of a PCPU/DPCPU field +$V([, ]) Display the value of a VNET variable diff --git a/libexec/kgdb/acttrace.py b/sys/tools/gdb/acttrace.py similarity index 62% rename from libexec/kgdb/acttrace.py rename to sys/tools/gdb/acttrace.py index 3229ff708de1..147effbbddf1 100644 --- a/libexec/kgdb/acttrace.py +++ b/sys/tools/gdb/acttrace.py @@ -1,38 +1,23 @@ -#- +# # Copyright (c) 2022 The FreeBSD Foundation # # This software was developed by Mark Johnston under sponsorship from the # FreeBSD Foundation. # +# SPDX-License-Identifier: BSD-2-Clause +# import gdb - - -def symval(name): - return gdb.lookup_global_symbol(name).value() - - -def tid_to_gdb_thread(tid): - for thread in gdb.inferiors()[0].threads(): - if thread.ptid[2] == tid: - return thread - else: - return None - - -def all_pcpus(): - mp_maxid = symval("mp_maxid") - cpuid_to_pcpu = symval("cpuid_to_pcpu") - - cpu = 0 - while cpu <= mp_maxid: - pcpu = cpuid_to_pcpu[cpu] - if pcpu: - yield pcpu - cpu = cpu + 1 - +from freebsd import * +from pcpu import * class acttrace(gdb.Command): + """ + Register an acttrace command with gdb. + + When run, acttrace prints the stack trace of all threads that were on-CPU + at the time of the panic. + """ def __init__(self): super(acttrace, self).__init__("acttrace", gdb.COMMAND_USER) @@ -40,13 +25,13 @@ class acttrace(gdb.Command): # Save the current thread so that we can switch back after. curthread = gdb.selected_thread() - for pcpu in all_pcpus(): + for pcpu in pcpu_foreach(): td = pcpu['pc_curthread'] tid = td['td_tid'] gdb_thread = tid_to_gdb_thread(tid) if gdb_thread is None: - print("failed to find GDB thread with TID {}".format(tid)) + raise gdb.error(f"failed to find GDB thread with TID {tid}") else: gdb_thread.switch() diff --git a/sys/tools/gdb/freebsd.py b/sys/tools/gdb/freebsd.py new file mode 100644 index 000000000000..81ea60373348 --- /dev/null +++ b/sys/tools/gdb/freebsd.py @@ -0,0 +1,75 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +import gdb + +def symval(name): + sym = gdb.lookup_global_symbol(name) + if sym is None: + sym = gdb.lookup_static_symbol(name) + if sym is None: + raise gdb.GdbError(f"Symbol '{name}' not found") + return sym.value() + + +def _queue_foreach(head, field, headf, nextf): + elm = head[headf] + while elm != 0: + yield elm + elm = elm[field][nextf] + + +def list_foreach(head, field): + """sys/queue.h-style iterator.""" + return _queue_foreach(head, field, "lh_first", "le_next") + + +def tailq_foreach(head, field): + """sys/queue.h-style iterator.""" + return _queue_foreach(head, field, "tqh_first", "tqe_next") + + +def linker_file_foreach(): + """Iterate over loaded linker files.""" + return tailq_foreach(symval("linker_files"), "link") + + +def pcpu_foreach(): + mp_maxid = symval("mp_maxid") + cpuid_to_pcpu = symval("cpuid_to_pcpu") + + cpu = 0 + while cpu <= mp_maxid: + pcpu = cpuid_to_pcpu[cpu] + if pcpu: + yield pcpu + cpu = cpu + 1 + + +def tid_to_gdb_thread(tid): + """Convert a FreeBSD kernel thread ID to a gdb inferior thread.""" + for thread in gdb.inferiors()[0].threads(): + if thread.ptid[2] == tid: + return thread + else: + return None + + +def tdfind(tid, pid=-1): + """Convert a FreeBSD kernel thread ID to a struct thread pointer.""" + td = tdfind.cached_threads.get(int(tid)) + if td: + return td + + for p in list_foreach(symval("allproc"), "p_list"): + if pid != -1 and pid != p['p_pid']: + continue + for td in tailq_foreach(p['p_threads'], "td_plist"): + ntid = td['td_tid'] + tdfind.cached_threads[int(ntid)] = td + if ntid == tid: + return td +tdfind.cached_threads = dict() diff --git a/sys/tools/gdb/pcpu.py b/sys/tools/gdb/pcpu.py new file mode 100644 index 000000000000..aadc4b2d42df --- /dev/null +++ b/sys/tools/gdb/pcpu.py @@ -0,0 +1,77 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +import gdb +from freebsd import * + +class pcpu(gdb.Function): + """ + Register a function to lookup PCPU and DPCPU variables by name. + + To look up the value of the PCPU field foo on CPU n, use + $PCPU("foo", n). This works for DPCPU fields too. If the CPU ID is + omitted, and the currently selected thread is on-CPU, that CPU is + used, otherwise an error is raised. + """ + def __init__(self): + super(pcpu, self).__init__("PCPU") + + def invoke(self, field, cpuid=-1): + if cpuid == -1: + cpuid = tdfind(gdb.selected_thread().ptid[2])['td_oncpu'] + if cpuid == -1: + raise gdb.error("Currently selected thread is off-CPU") + if cpuid < 0 or cpuid > symval("mp_maxid"): + raise gdb.error(f"Currently selected on invalid CPU {cpuid}") + pcpu = symval("cpuid_to_pcpu")[cpuid] + + # Are we dealing with a PCPU or DPCPU field? + field = field.string() + for f in gdb.lookup_type("struct pcpu").fields(): + if f.name == "pc_" + field: + return pcpu["pc_" + field] + + def uintptr_t(val): + return val.cast(gdb.lookup_type("uintptr_t")) + + # We're dealing with a DPCPU field. This is handled similarly + # to VNET symbols, see vnet.py for comments. + pcpu_base = pcpu['pc_dynamic'] + pcpu_entry = symval("pcpu_entry_" + field) + pcpu_entry_addr = uintptr_t(pcpu_entry.address) + + for lf in linker_file_foreach(): + block = gdb.block_for_pc(lf['ops']['cls']['methods'][0]['func']) + elf_file_t = gdb.lookup_type("elf_file_t", block).target() + ef = lf.cast(elf_file_t) + + file_type = lf['ops']['cls']['name'].string() + if file_type == "elf64": + start = uintptr_t(ef['pcpu_start']) + if start == 0: + continue + end = uintptr_t(ef['pcpu_stop']) + base = uintptr_t(ef['pcpu_base']) + elif file_type == "elf64_obj": + for i in range(ef['nprogtab']): + pe = ef['progtab'][i] + if pe['name'].string() == "set_pcpu": + start = uintptr_t(pe['origaddr']) + end = start + uintptr_t(pe['size']) + base = uintptr_t(pe['addr']) + break + else: + continue + else: + path = lf['pathname'].string() + raise gdb.error(f"{path} has unexpected linker file type {file_type}") + + if pcpu_entry_addr >= start and pcpu_entry_addr < end: + obj = gdb.Value(pcpu_base + pcpu_entry_addr - start + base) + return obj.cast(pcpu_entry.type.pointer()).dereference() + +# Register with gdb. +pcpu() diff --git a/sys/tools/gdb/selftest.py b/sys/tools/gdb/selftest.py new file mode 100644 index 000000000000..41e9211c4bb3 --- /dev/null +++ b/sys/tools/gdb/selftest.py @@ -0,0 +1,31 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +import gdb + +cmds = ["acttrace", + "p $V(\"tcbinfo\")", + "p $V(\"tcbinfo\", vnet0)", + "p $V(\"pf_status\")", + "p $V(\"pf_status\", \"gdbselftest\")", + "p $PCPU(\"curthread\")", + "p $PCPU(\"curthread\", 0)", + "p/x $PCPU(\"hardclocktime\", 1)", + "p $PCPU(\"pqbatch\")[0][0]", + "p $PCPU(\"ss\", 1)", + ] + +for cmd in cmds: + try: + print(f"Running command: '{cmd}'") + gdb.execute(cmd) + except gdb.error as e: + print(f"Command '{cmd}' failed: {e}") + break + +# We didn't hit any unexpected errors. This isn't as good as actually +# verifying the output, but it's better than nothing. +print("Everything seems OK") diff --git a/sys/tools/gdb/selftest.sh b/sys/tools/gdb/selftest.sh new file mode 100644 index 000000000000..252fae14af17 --- /dev/null +++ b/sys/tools/gdb/selftest.sh @@ -0,0 +1,23 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +set -e + +n=$(sysctl -n hw.ncpu) +if [ $n -lt 2 ]; then + echo "This test requires at least 2 CPUs" + exit 1 +fi + +# Set up some things expected by selftest.py. +kldload -n pf siftr +pfctl -e || true +jail -c name=gdbselftest vnet persist + +echo "I'm about to panic your system, ctrl-C now if that's not what you want." +sleep 10 +sysctl debug.debugger_on_panic=0 +sysctl debug.kdb.panic=1 diff --git a/sys/tools/gdb/vnet.py b/sys/tools/gdb/vnet.py new file mode 100644 index 000000000000..36b4d512a3eb --- /dev/null +++ b/sys/tools/gdb/vnet.py @@ -0,0 +1,100 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +import gdb +import traceback +from freebsd import * + +class vnet(gdb.Function): + """ + Register a function to look up VNET variables by name. + + To look at the value of a VNET variable V_foo, print $V("foo"). The + currently selected thread's VNET is used by default, but can be optionally + specified as a second parameter, e.g., $V("foo", ), where is a + pointer to a struct vnet (e.g., vnet0 or allprison.tqh_first->pr_vnet) or a + string naming a jail. + """ + def __init__(self): + super(vnet, self).__init__("V") + + def invoke(self, sym, vnet=None): + sym = sym.string() + if sym.startswith("V_"): + sym = sym[len("V_"):] + if gdb.lookup_symbol("sysctl___kern_features_vimage")[0] is None: + return symval(sym) + + # Look up the VNET's base address. + if vnet is None: + vnet = tdfind(gdb.selected_thread().ptid[2])['td_vnet'] + if not vnet: + # If curthread->td_vnet == NULL, vnet0 is the current vnet. + vnet = symval("vnet0") + elif vnet.type.is_string_like: + vnet = vnet.string() + for prison in tailq_foreach(symval("allprison"), "pr_list"): + if prison['pr_name'].string() == vnet: + vnet = prison['pr_vnet'] + break + else: + raise gdb.error(f"No prison named {vnet}") + + def uintptr_t(val): + return val.cast(gdb.lookup_type("uintptr_t")) + + # Now the tricky part: compute the address of the symbol relative + # to the selected VNET. In the compiled kernel this is done at + # load time by applying a magic transformation to relocations + # against symbols in the vnet linker set. Here we have to apply + # the transformation manually. + vnet_data_base = vnet['vnet_data_base'] + vnet_entry = symval("vnet_entry_" + sym) + vnet_entry_addr = uintptr_t(vnet_entry.address) + + # First, which kernel module does the symbol belong to? + for lf in linker_file_foreach(): + # Find the bounds of this linker file's VNET linker set. The + # struct containing the bounds depends on the type of the linker + # file, and unfortunately both are called elf_file_t. So we use a + # PC value from the compilation unit (either link_elf.c or + # link_elf_obj.c) to disambiguate. + block = gdb.block_for_pc(lf['ops']['cls']['methods'][0]['func']) + elf_file_t = gdb.lookup_type("elf_file_t", block).target() + ef = lf.cast(elf_file_t) + + file_type = lf['ops']['cls']['name'].string() + if file_type == "elf64": + start = uintptr_t(ef['vnet_start']) + if start == 0: + # This linker file doesn't have a VNET linker set. + continue + end = uintptr_t(ef['vnet_stop']) + base = uintptr_t(ef['vnet_base']) + elif file_type == "elf64_obj": + for i in range(ef['nprogtab']): + pe = ef['progtab'][i] + if pe['name'].string() == "set_vnet": + start = uintptr_t(pe['origaddr']) + end = start + uintptr_t(pe['size']) + base = uintptr_t(pe['addr']) + break + else: + # This linker file doesn't have a VNET linker set. + continue + else: + path = lf['pathname'].string() + raise gdb.error(f"{path} has unexpected linker file type {file_type}") + + if vnet_entry_addr >= start and vnet_entry_addr < end: + # The symbol belongs to this linker file, so compute the final + # address. + obj = gdb.Value(vnet_data_base + vnet_entry_addr - start + base) + return obj.cast(vnet_entry.type.pointer()).dereference() + + +# Register with gdb. +vnet() diff --git a/sys/tools/kernel-gdb.py b/sys/tools/kernel-gdb.py new file mode 100644 index 000000000000..8a41ef6efab1 --- /dev/null +++ b/sys/tools/kernel-gdb.py @@ -0,0 +1,15 @@ +# +# Copyright (c) 2025 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +import os +import sys + +sys.path.append(os.path.join(os.path.dirname(__file__), "gdb")) + +# Import FreeBSD kernel debugging commands and modules below. +import acttrace +import pcpu +import vnet diff --git a/usr.sbin/crashinfo/crashinfo.sh b/usr.sbin/crashinfo/crashinfo.sh index 3bb1e1456462..68115f09f9d4 100755 --- a/usr.sbin/crashinfo/crashinfo.sh +++ b/usr.sbin/crashinfo/crashinfo.sh @@ -217,10 +217,7 @@ echo file=`mktemp /tmp/crashinfo.XXXXXX` if [ $? -eq 0 ]; then - scriptdir=/usr/libexec/kgdb - echo "bt -full" >> $file - echo "source ${scriptdir}/acttrace.py" >> $file echo "acttrace" >> $file echo "quit" >> $file ${GDB%gdb}kgdb -q $KERNEL $VMCORE < $file From nobody Fri Oct 17 14:13:59 2025 X-Original-To: dev-commits-src-branches@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 4cp6J73Zjgz6DLfx; Fri, 17 Oct 2025 14:13: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6J71CnTz3sfj; Fri, 17 Oct 2025 14:13:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gj9bYz6/g6rAGI6Dmp5EaQqCYnRS82eE9iX2ud0tyaw=; b=S75LajhvktjkZ4I2HwzJ0eqsFdD2z8bKVoxTitURaMb/WrVTcTbGtZR6rrKV6Vj7hKuUgd +Y8Vx1rnu8ifTf/sJvsq18TSgSYztyj0PnhuI/xDHrgjAScPbtX0c8scyuscG7OM7GVWKl bDL2BsM/yAtxsDxJxwdBGfgczs3e2tmi5M+Dxlf8bRCkk5T5VlYcc+hbTsqRAEK2v/WvXX FGjOuG91hQh2TMTbZdcfxOw4M/+NMPi+RdgEsIIbiEYnbnrfQecRa/2E/skuamcy4qEjCc uWEO6qy9cAw2355tSsGiyDuGmQaqmigjUxLyGK7pBu78EJupuuQtxz6oj7eFkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gj9bYz6/g6rAGI6Dmp5EaQqCYnRS82eE9iX2ud0tyaw=; b=TwyrDZm3FNrxMFjJWR31E6EAXOqtCogLySH3T4uCr7zH0gSMZ+7vlRbHYZ51W4C6eqrPjx /O6nxec4abR0Ix21owdZ5HoIJnzyrxyFsW5LG/gubFHEtfAkN7uuemZIBYugFNpWqhQGGv 0XZkJKIBAfRsdlTWnDESr10VcY71diX+byN4//BUjwv73XXDCK2JI6+PSNnXgaY4C9PDlr 1H0KwQVP+EFim5q1C8+UY+R3JNhtCPCDPl9eQ5Y7C6GkIzAhpQBIqgLQWXLiH6Ws7WeWHh pFrenNZE6+UklRyV0HxO2jZbv0nstb4Um06lfbnS7qURN+tb49PbFYBkoOeXNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710439; a=rsa-sha256; cv=none; b=prp28mB4MXsOoyBiyqy6WFIFw8ozT5E7ESu1dhuP2G8283PkSx0Q61L8P6Z525YnMdr+zp i2uyn2OiU+ldif2Cfp3VL+edECx/vLpcOvm7Ssu1ac5KhPz8V0PCn4Bu02XYHkq2vHZ/re 9+jbE3qZpkHkkr3ruDO9sQxBFtzP1c2PgjH9ipSjUF4L7x2lnaAV4w/gwT4blgEBZPxGJR aujh/cse4Idz3Ngfzcr4NoB4mld2QHpHcKa/OCzz6Ku6byxTQQ5ceFweHVHLOI+JDJadG9 HX21NOF6G/Pkr+M/HDgwgWsEYawMR4eMQL9y3/H5JPB20rBV3x0RMGGCHbTZyg== 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 4cp6J70pHxzy4D; Fri, 17 Oct 2025 14:13: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 59HEDx4A069134; Fri, 17 Oct 2025 14:13:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEDxTi069131; Fri, 17 Oct 2025 14:13:59 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:13:59 GMT Message-Id: <202510171413.59HEDxTi069131@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: 55ad7c573e5b - stable/15 - vm_object: Reset kvo_path on each iteration in vm_object_list_handler() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 55ad7c573e5b7b8fa25dd368ccad1d1774c77824 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=55ad7c573e5b7b8fa25dd368ccad1d1774c77824 commit 55ad7c573e5b7b8fa25dd368ccad1d1774c77824 Author: Mark Johnston AuthorDate: 2025-10-10 13:26:29 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:42:44 +0000 vm_object: Reset kvo_path on each iteration in vm_object_list_handler() Otherwise we print a bogus path for anonymous objects. Reviewed by: kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52997 (cherry picked from commit 13d866b314f87df901c0a1cbbbc56d56ee0d7b7c) --- sys/vm/vm_object.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 6d9ea8bf9d93..fe84523b7a8f 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2522,15 +2522,13 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) continue; } mtx_unlock(&vm_object_list_mtx); + + memset(kvo, 0, sizeof(*kvo)); kvo->kvo_size = ptoa(obj->size); kvo->kvo_resident = obj->resident_page_count; kvo->kvo_ref_count = obj->ref_count; kvo->kvo_shadow_count = atomic_load_int(&obj->shadow_count); kvo->kvo_memattr = obj->memattr; - kvo->kvo_active = 0; - kvo->kvo_inactive = 0; - kvo->kvo_laundry = 0; - kvo->kvo_flags = 0; if (!swap_only) { vm_page_iter_init(&pages, obj); VM_RADIX_FOREACH(m, &pages) { @@ -2552,9 +2550,6 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) } } - kvo->kvo_vn_fileid = 0; - kvo->kvo_vn_fsid = 0; - kvo->kvo_vn_fsid_freebsd11 = 0; freepath = NULL; fullpath = ""; vp = NULL; From nobody Fri Oct 17 14:14:00 2025 X-Original-To: dev-commits-src-branches@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 4cp6J860Btz6DLRN; Fri, 17 Oct 2025 14:14: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6J82596z3scD; Fri, 17 Oct 2025 14:14:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710440; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Flz33UQGyrUvCUXRmAhfl6l6L2aO69I1tR1DY+ozKk=; b=x7ak/uSMd4JgdAuhIukhpftVmkiPq807sisO++af+bn3on/cvQiWudXtK5qpkzydozBgem 0cm+NU6ls03g1UnT7lZnQ6NMOflgCHSkhDxcCCNl3C7hLZZgwsL5JsYuLVzCzAstTm4De0 xLF9wvFDcxCoYDOIiR7YTxIdZdHgfD1k8PqfC38ZtRfrCyEEd0EW3BPH3bEeLfbqRIZ0iR mG/bAmf/e98EEbeG9hviVi8y0A71DCOt0dcX0jT7B4OM2PbCqsZ1WwzfGHKxHiEQmX/Fb9 ++iVbWefOe6hxB94AopdVyENiWfbSynjN4idWgXq7D1f3514koWzzapxf/72mw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710440; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Flz33UQGyrUvCUXRmAhfl6l6L2aO69I1tR1DY+ozKk=; b=n1tOsB0K5SvB7/QWWvRNSfYpxkwbIIpPJL+Z1zqZ7tyQhCQnByy/55aqGSZDn6tI3YlmgN PlH/DT6X7go2cgeJSOQQaSLWvizeiAWMkTRnKWtY+6ltRCgrjeMHd2WJ2pck5z7AgG36K2 yk2NsA//Fc57WhTXM6EZXK811237+NGv/izt6IepLw2GlDJaJsqksGQg7CusNYHkcQ7ME5 0SlqizUchcy3NQWWJZHcTuvDqK5tq9UOWpTF5URFXPlOWKVXpz0QtpJ7owvKfFoOu0nXEg YUrg6cXfSGDoxY4kdlWC+Rlj+6l59o50CUgw3ea70waLoXts7aKgRKbNzUlPRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710440; a=rsa-sha256; cv=none; b=yY4oKzh0zf8C0B2ygUIXs3+VDyMukoaHiRoPwuuR/rxHmInm6neXnN0Dl6VT/ldDZdPx42 mfdIsMwQNvec/8VuQU4TMz+8/LYf5wXe05g7LP2MeNLCuWR0YvSnI/wLaUX1Jo7FJzctLZ 74wGOnUnKx/s2XvRJmpiQGCIssUqp7RIbK4Wc0iyaGdykS8dMGfNGPjc0BB4k+l8BD/VUw R7DcHkGZrwRlKWmcRPPVa41O38d/IuKytartYbygx6Nb6mxkJMAi0aIGySYVCWfA928oRU G1eJsxVumZ4XhCIb6v6ku8ZhMtCP92+d+JDzZ91S16BtPSKG9jz6ThaR3CMjMw== 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 4cp6J81SldzyDV; Fri, 17 Oct 2025 14:14: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 59HEE0Bw069175; Fri, 17 Oct 2025 14:14:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEE0Ee069172; Fri, 17 Oct 2025 14:14:00 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:14:00 GMT Message-Id: <202510171414.59HEE0Ee069172@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: 2eaee0dbc28c - stable/15 - vm_object: Export the number of wired pages in vm_object_list_handler() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 2eaee0dbc28c6f8f61b37f93026ef1623dc4047d Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2eaee0dbc28c6f8f61b37f93026ef1623dc4047d commit 2eaee0dbc28c6f8f61b37f93026ef1623dc4047d Author: Mark Johnston AuthorDate: 2025-10-10 13:26:50 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:42:56 +0000 vm_object: Export the number of wired pages in vm_object_list_handler() Reviewed by: alc, kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53008 (cherry picked from commit ffca0c44ffe84352f6fdd24862c070d348d783d4) --- sys/sys/user.h | 3 ++- sys/vm/vm_object.c | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/sys/user.h b/sys/sys/user.h index 3183f0792256..1704bc089d85 100644 --- a/sys/sys/user.h +++ b/sys/sys/user.h @@ -617,7 +617,8 @@ struct kinfo_vmobject { } kvo_type_spec; /* Type-specific union */ uint64_t kvo_me; /* Uniq handle for anon obj */ uint64_t kvo_laundry; /* Number of laundry pages. */ - uint64_t _kvo_qspare[5]; + uint64_t kvo_wired; /* Number of wired pages. */ + uint64_t _kvo_qspare[4]; uint32_t kvo_swapped; /* Number of swapped pages */ uint32_t kvo_flags; uint32_t _kvo_ispare[6]; diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index fe84523b7a8f..5b4517d2bf0c 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2547,6 +2547,9 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) kvo->kvo_inactive++; else if (vm_page_in_laundry(m)) kvo->kvo_laundry++; + + if (vm_page_wired(m)) + kvo->kvo_wired++; } } From nobody Fri Oct 17 14:14:01 2025 X-Original-To: dev-commits-src-branches@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 4cp6J96vlFz6DLj4; Fri, 17 Oct 2025 14:14: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6J93wWQz3sg9; Fri, 17 Oct 2025 14:14:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710441; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xBiAoOrMTeySslkYe0QcrCcfR2Ot7mzQuvGEn1lmGcI=; b=qUm+Ch1ydEOe+vVmiqaqpecfYpciGxfC19lyWRBEX0T6Rt0yFjMaqXcCzkcE/E/v+mmjbt ykTTfbRqwFazxbuqEVaiMciZpiTuu2kX3mcWNpC3r0ZML+CDf0DuPhMqt/QLOPqLVHVu93 yN2oosyhYzBHoneM6ki0FbQS0nfJejnDrwcnx07Gx21x6vDLz+JRAd1b9mQ4s2Ai/EOzuD 37QJb3/0HSB4V9jmeczzsYfgIQfxfdLnGu690L1TjsfE8CH0xzUb/Di0wtFhwos+rTAT0I RxRiB99EZ8iLWobd2XjlnUGLEBruX3GpV0xM8/RXPJOuP4r05vM5GFI9kI821Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710441; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xBiAoOrMTeySslkYe0QcrCcfR2Ot7mzQuvGEn1lmGcI=; b=Gaq4nOD6XcqWcSjfjrTUF2Rq37FEz0LXA/w2AMlf50QoB1CV3lg6mJG08ElM/DzwBeK3p0 yt76aFps+KmAwtTGmKI9r/CDM5bZODpDHMJTB0VoyxPNm8neatW0ZXZF5QgRcSgJ+REkmy C/5CAkoxtKyAx+Sgx7U7z5PLiJFwxfbFDRjtqdyxmzK9NRy4BwhEcgycRJuR0wiqSfJ9HG uRfvQM7cqh1T4pz42BiLVCs4FjinifcAzTD/BZUCqINvWNOYavo6TmpRksNmhnbVot+/uN lkoAry/AM5mk4AyDJpU7UjRnQFrxkqHv9W3lQ8bihRVs+yHDmtxMLAIlsLsp2g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710441; a=rsa-sha256; cv=none; b=XFVCEkvnkByo7EEddw+1MSjyuNQTLocYCcR51cDeoaZODZngZOqXl0QH3FzGj4cWT3cUbp THYjzPjelohW3oNdSI2qhRDq2HghND4rN1Bd2pgDQypemb2HLRKfpwHHVwC5AulP/Pj7uu 85oeSsYPEq4xNDcP8fj4qrKzdK5r8244SJ5Lfa8Vx1VzENkuZJsTiMpPWKjpSeSfkovEOV 8zDLv6EkByBV8jt0SSnG3x9al+4DCkbg0PtwZTh1QUZhjv5gr5YylE+ZPSZiIWbUgxqlkU lFjC+TEat2keWw6nQQ90BSuOR0JEnLi3sCZuuVpcVkWgrsIcmAvGdT4IsH46kg== 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 4cp6J92m2TzxKs; Fri, 17 Oct 2025 14:14: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 59HEE10B069209; Fri, 17 Oct 2025 14:14:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEE1Rw069206; Fri, 17 Oct 2025 14:14:01 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:14:01 GMT Message-Id: <202510171414.59HEE1Rw069206@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: 5bc5ce6e61e6 - stable/15 - vmstat: Print the number of wired pages in each object List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 5bc5ce6e61e6ccf5a9386aa15936f4a9a51055b3 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=5bc5ce6e61e6ccf5a9386aa15936f4a9a51055b3 commit 5bc5ce6e61e6ccf5a9386aa15936f4a9a51055b3 Author: Mark Johnston AuthorDate: 2025-10-10 13:28:01 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:43:08 +0000 vmstat: Print the number of wired pages in each object Reviewed by: alc, kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53008 (cherry picked from commit f66bb825f5895eed98c959cd2b612453b4d1aa6c) --- usr.bin/vmstat/vmstat.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/usr.bin/vmstat/vmstat.c b/usr.bin/vmstat/vmstat.c index 7a7c83fe1ac8..9b4d3a25ee07 100644 --- a/usr.bin/vmstat/vmstat.c +++ b/usr.bin/vmstat/vmstat.c @@ -1465,6 +1465,7 @@ display_object(struct kinfo_vmobject *kvo) xo_emit("{:active/%5ju} ", (uintmax_t)kvo->kvo_active); xo_emit("{:inactive/%5ju} ", (uintmax_t)kvo->kvo_inactive); xo_emit("{:laundry/%5ju} ", (uintmax_t)kvo->kvo_laundry); + xo_emit("{:wired/%5ju} ", (uintmax_t)kvo->kvo_wired); xo_emit("{:refcount/%3d} ", kvo->kvo_ref_count); xo_emit("{:shadowcount/%3d} ", kvo->kvo_shadow_count); @@ -1568,7 +1569,8 @@ doobjstat(void) return; } xo_emit("{T:RES/%5s} {T:ACT/%5s} {T:INACT/%5s} {T:LAUND/%5s} " - "{T:REF/%3s} {T:SHD/%3s} {T:CM/%2s} {T:TP/%3s} {T:PATH/%s}\n"); + "{T:WIRED/%5s} {T:REF/%3s} {T:SHD/%3s} {T:CM/%2s} {T:TP/%3s} " + "{T:PATH/%s}\n"); xo_open_list("object"); for (i = 0; i < cnt; i++) display_object(&kvo[i]); From nobody Fri Oct 17 14:14:02 2025 X-Original-To: dev-commits-src-branches@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 4cp6JC1gVWz6DLRP; Fri, 17 Oct 2025 14:14: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp6JB48tnz3sZZ; Fri, 17 Oct 2025 14:14:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710442; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V6O5VlMwUWfa8T98sritD+v4gKukS6l+0k4g5LjUPuI=; b=fFFf0N/P2GI31BvAqDx+Wn3W2xenTyEIgpclVesSbZQ4+7xCx29fdO1juCR8XnthgDtHyT sjUZf2pfL5KOGiolGDexMKFF4jeOK1kkVGFNXtFqFseaWppBuXe0b9wkxpMzW9Pc7Uzvy0 VyiBLu6OCxoLmC2zKweUmg+nVFNnZ2JPVNCZYSvo2W2DjDChJr5bcRZUqWpWe/7z4QNpo3 x4sdt0SEsxCz+pXG8rTY3gMKmLXL3kQt46k5VKIDanriEGdBBBGMA+Bi58O9jjyuc/Mn4Q dQWnOBGCeadwH0dO0WlHR/sDkP4d3Wyc3mQVlrhiVtrC/dFhSKXoqLAoV2j75Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760710442; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V6O5VlMwUWfa8T98sritD+v4gKukS6l+0k4g5LjUPuI=; b=fDxbOAL6M0O8nOMBhj/cz3wAiAYboRQQqoHs8Z0X+jnVgtgYMusGpzTKv07FSFT/1VPe9+ /7qF2OA+jhlT2OeQPi4rIs+XLL/7qchREQT3Rgai7t/6HfvoCU652/HoxPAi0q+xp/71Hi b4Bkc2cSO9l0HQ6ENiCYi37EMqM4Ze/gHp6KCafGtqycXOU7Uh8tz5KpZHB0DiJEVzuL1c 908cofMudyO5346EsURzJIwgdECH6bgHD1ZkWiRvYBvBq+aJ9JbE/TWW5KYuoxGTYfLTt+ QfS7a4dgexK6gbjbdmSCq8ze38NPWonQc4jRDPX17bprMKB8kYvRJi67dLCRvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760710442; a=rsa-sha256; cv=none; b=o8sVPNucHgAiTzjpGfTtAWFOnfZh/3zXPtV7pI2C8LGhO7McON1AAhd1NwwqQ9TRSXAKVt CZ9BTzXLbIaihlIgXDTCBazSxJw1A/9N0aChzOBLQCx/3OGFu8NkddDJnTukE2hIGZTMLf vXx0+eObQH8yUEAaa89r4HZqQty2FqZyjqxWuIB61ois2XQjy68wgmH0a5bevRwC3Z++Dw 1U/iRhd26oQkBFp5Ib+QDIIid+dEaq4/5MOv/LzldVptsdv+quCDKn75hdTyHhqI0AMFDM CzmgWsYovIDdiF8/vFec35fj5T3VFs7KU3x5yJ4bNkpflInZB/ku38SVyu0itQ== 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 4cp6JB3kg4zy2F; Fri, 17 Oct 2025 14:14: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 59HEE2DB069243; Fri, 17 Oct 2025 14:14:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HEE2Gg069240; Fri, 17 Oct 2025 14:14:02 GMT (envelope-from git) Date: Fri, 17 Oct 2025 14:14:02 GMT Message-Id: <202510171414.59HEE2Gg069240@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: 5a926b3cd53b - stable/15 - linker: Make it easier to find the VNET section layout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 5a926b3cd53b6c4516ad59c4693d7a999549c34c Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=5a926b3cd53b6c4516ad59c4693d7a999549c34c commit 5a926b3cd53b6c4516ad59c4693d7a999549c34c Author: Mark Johnston AuthorDate: 2025-10-03 14:25:38 +0000 Commit: Mark Johnston CommitDate: 2025-10-17 12:43:16 +0000 linker: Make it easier to find the VNET section layout When trying to find the address of a VNET variable from a debugger, it helps to have the original address of the VNET section. In particular, given the address of a vnet_entry_foo symbol, one wants to easily find the linker file that the symbol belongs to. In link_elf_obj.c, the section address for VNET and DPCPU sections is overwritten in link_elf_link_preload() and link_elf_load_file(). Add an "origaddr" field to store the original absolute address of the section base. In link_elf.c the elf_file_t already has the fields we want, but they were not getting filled out for the kernel itself. Fix that too, since that simplifies things for debuggers and improves consistency. Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D52730 (cherry picked from commit 07747afd516e710814fdc65afb0e5000d046f28f) --- sys/kern/link_elf.c | 6 ++++++ sys/kern/link_elf_obj.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/sys/kern/link_elf.c b/sys/kern/link_elf.c index bbebadc4c395..ebd203858b66 100644 --- a/sys/kern/link_elf.c +++ b/sys/kern/link_elf.c @@ -518,9 +518,15 @@ link_elf_init(void* arg) (void)link_elf_link_common_finish(linker_kernel_file); linker_kernel_file->flags |= LINKER_FILE_LINKED; TAILQ_INIT(&set_pcpu_list); + ef->pcpu_start = DPCPU_START; + ef->pcpu_stop = DPCPU_STOP; + ef->pcpu_base = DPCPU_START; #ifdef VIMAGE TAILQ_INIT(&set_vnet_list); vnet_save_init((void *)VNET_START, VNET_STOP - VNET_START); + ef->vnet_start = VNET_START; + ef->vnet_stop = VNET_STOP; + ef->vnet_base = VNET_START; #endif } diff --git a/sys/kern/link_elf_obj.c b/sys/kern/link_elf_obj.c index 151aab96f9be..a3a53a39bfd6 100644 --- a/sys/kern/link_elf_obj.c +++ b/sys/kern/link_elf_obj.c @@ -70,6 +70,7 @@ typedef struct { void *addr; + void *origaddr; /* Used by debuggers. */ Elf_Off size; int flags; /* Section flags. */ int sec; /* Original section number. */ @@ -492,7 +493,8 @@ link_elf_link_preload(linker_class_t cls, const char *filename, case SHT_FINI_ARRAY: if (shdr[i].sh_addr == 0) break; - ef->progtab[pb].addr = (void *)shdr[i].sh_addr; + ef->progtab[pb].addr = ef->progtab[pb].origaddr = + (void *)shdr[i].sh_addr; if (shdr[i].sh_type == SHT_PROGBITS) ef->progtab[pb].name = "<>"; #ifdef __amd64__ @@ -1088,6 +1090,8 @@ link_elf_load_file(linker_class_t cls, const char *filename, ef->progtab[pb].name = "<>"; if (ef->progtab[pb].name != NULL && !strcmp(ef->progtab[pb].name, DPCPU_SETNAME)) { + ef->progtab[pb].origaddr = + (void *)(uintptr_t)mapbase; ef->progtab[pb].addr = dpcpu_alloc(shdr[i].sh_size); if (ef->progtab[pb].addr == NULL) { @@ -1101,6 +1105,8 @@ link_elf_load_file(linker_class_t cls, const char *filename, #ifdef VIMAGE else if (ef->progtab[pb].name != NULL && !strcmp(ef->progtab[pb].name, VNET_SETNAME)) { + ef->progtab[pb].origaddr = + (void *)(uintptr_t)mapbase; ef->progtab[pb].addr = vnet_data_alloc(shdr[i].sh_size); if (ef->progtab[pb].addr == NULL) { From nobody Fri Oct 17 16:53:20 2025 X-Original-To: dev-commits-src-branches@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 4cp9r02qZbz6CLBh; Fri, 17 Oct 2025 16:53: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp9r02HmJz3Npk; Fri, 17 Oct 2025 16:53:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760720000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EdH77Z/bcJ7/EH/xTf3EKX7EvypO/2pbvThR26e/x2M=; b=Z6IXeXQeHNZmUe5WvShnH5s0wwG7eo0eBkb2at01DYBG+rtYOOQMqFp6VTashL+2reptIl 42JIMeblU9gkabLBTdkXEWos5niCdEZM8/UYtj4SZXZdJxB0yeirg9WTygE8Hp6UHW3isx VJZK20dBOB+TIZVpdhGM62HRlxtJ1oVtp4TT7B5Rvj/RfESqkKa+yQeLzGDAA93AXAp/ke 8J7Z4yryET1EtVntropJgY1vl3gWEcmVbFNpflYTrKiCQlsJo4F9sSc+byWOyGogsA/sK5 gHFouPZK6YNjU6lV533+UbzmcxFFjxFl/xajuKw1MVc8CCfzJmC+gSPZNSRrVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760720000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EdH77Z/bcJ7/EH/xTf3EKX7EvypO/2pbvThR26e/x2M=; b=XQ9C3XJX3GohGVajU/poD1ztY5UwR8WVcNHCCO+1mn2oYn4Hu3Xb04BU7aQe2z2kB8xSJF GDHjvZKDBUioePJ5HTD5FoTCwpdA14RVnKUT3lEz5f5bTxccZmvKGJWRb13uPp3Sk5bS2M rftLCCJkYpZ/bWMZiQwP3TRfrRZSLu0EUejbn6Reyj1GQYm0rZ+LMgMEF0sOWdwZ+e2XbY 1ORejeiFO2JK5nj8HMWsIVWk0+EiDDJqXqbYqteWgmkUN/VtEwl+OXlmsXpT1gu9OAjCZV sMboGQrpX7BUhBh3AnjbVHiHw9aBQ0kENSZPQN9x4tGVpdcjAPO2bdKmxeXkcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760720000; a=rsa-sha256; cv=none; b=i9lpuPQ751xhKeFvU7DM2C2OfaextNYe2JqnKLcdgA64AskhrLY77KEzPTi1N139SFR6sl qo4h6U84Z4GEpLdZ8le60DNYtCDikab3IPHn2rNAXO3nPzWu9LFjP4QDWR1g41xDWzoVKV itMk8gcMMFlUSazJ33u2Zlsm8JcrxwUX60Iubh6ZEGHB37BpSU62jfr3PaJOPNSEXzh8uE GRPzECWQiTvaii/E6/Eim772+xlDWbQaupb4A2WL7VYbZBQ1oaQDF+8o3Zpqa0cbjoaezp Y1VhPrkeYdaEHy6z0tnMPQz/W8q083lIH+FMVhgg6y+rQQqhW/RK7iCZgXgVxA== 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 4cp9r01kqxz13Sh; Fri, 17 Oct 2025 16:53: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 59HGrKak070579; Fri, 17 Oct 2025 16:53:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HGrKeY070576; Fri, 17 Oct 2025 16:53:20 GMT (envelope-from git) Date: Fri, 17 Oct 2025 16:53:20 GMT Message-Id: <202510171653.59HGrKeY070576@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: 7ce5d908fd6b - stable/15 - vmimage.subr: Add missing directories to METALOG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 7ce5d908fd6b51dc89d9b89f4c009e44cb932b55 Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=7ce5d908fd6b51dc89d9b89f4c009e44cb932b55 commit 7ce5d908fd6b51dc89d9b89f4c009e44cb932b55 Author: Colin Percival AuthorDate: 2025-10-17 07:01:33 +0000 Commit: Colin Percival CommitDate: 2025-10-17 16:53:11 +0000 vmimage.subr: Add missing directories to METALOG Theoretically METALOG should include everything which needs to go into disk images; unfortunately there are still a few bugs which are resulting in directories not being listed -- and if METALOG has files in unrecorded directories, the directories end up being created with 000 permissions. Oddly enough, systems where / has 000 permissions are not very usable. As a temporary hack, compare the staging tree against METALOG and add entries for any unrecorded directories. This will hopefully be reverted before 15.0-RELEASE. Reviewed by: bapt, emaste, ivy Sponsored by: https://www.patreon.com/cperciva MFC after: 5 minutes Differential Revision: https://reviews.freebsd.org/D53153 (cherry picked from commit 71b2f9853529b1d1a160eaaa202e93a14f91eed1) --- release/tools/vmimage.subr | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index c3c917dcd642..842a808c623e 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -290,6 +290,24 @@ buildfs() { cat ${DESTDIR}/METALOG.pkg >> ${DESTDIR}/METALOG fi + # Check for any directories in the staging tree which weren't + # recorded in METALOG, and record them now. This is a quick hack + # to avoid creating unusable VM images and should go away once + # the bugs which produce such unlogged directories are gone. + grep type=dir ${DESTDIR}/METALOG | + cut -f 1 -d ' ' | + sort -u > ${DESTDIR}/METALOG.dirs + ( cd ${DESTDIR} && find . -type d ) | + sort | + comm -23 - ${DESTDIR}/METALOG.dirs > ${DESTDIR}/METALOG.missingdirs + if [ -s ${DESTDIR}/METALOG.missingdirs ]; then + echo "WARNING: Directories exist but were not in METALOG" + cat ${DESTDIR}/METALOG.missingdirs + fi + while read DIR; do + metalog_add_data ${DIR} + done < ${DESTDIR}/METALOG.missingdirs + # Sort METALOG file; makefs produces directories with 000 permissions # if their contents are seen before the directories themselves. env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted From nobody Fri Oct 17 16:53:51 2025 X-Original-To: dev-commits-src-branches@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 4cp9rb5qnHz6CLBK; Fri, 17 Oct 2025 16:53: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cp9rb5GcTz3PNL; Fri, 17 Oct 2025 16:53:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760720031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wTWntImuvBShn/dG812K38SaEmW2mqdnzVVjxBjU4DY=; b=hRcyTsIi9U1oJk3ozlszmIoQSRG0nA4xMnd0gH2pIRErXdXSQzp0Ll5obCfNgbu5PCNs7B B6a7027UbYjnXi2r/Nec/URfgXFIfldMPFO78gJSeAD5qgkEyxhnN24lnL3ZuQCEn/JzI5 hvrVRQVS4fcB43IhWvzJhTdyryev7ul5LMbIWCCd8RNl/n0oaZldxq3X0QPBWU3HMS2tdZ n8SEsOReE1I4himSktKfXIcF9qfB015Ym6S7g59zSm0xDhzGPtdlx5ldyOVa+bb6yh9Wcu jiMaua5uoPjmufGBH8xmis6JnvaRrWafawyCcuxTNUOqXHTEmsCvaj7Tvr5Avw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760720031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wTWntImuvBShn/dG812K38SaEmW2mqdnzVVjxBjU4DY=; b=roqJQh7EWqZc+AhF3aIRNreS7saBXfp+m3OHg6wAVJ3f9IuKZCLBxoCXA0+lsGT0bNZ+CK 4CNKr6gGpDE9rOGDBCP4tdeCrCxqO72c6xu4rMyZZyZuTiQ064ocycYTxzQbYjoHl7lDJt WkZ5QSUOSxwZhZ7Z8BbpVsEEhDQzTC0ODaLL69xo6k0oVT2aKeOlF2vWakHpBwXc33vurI H31CEGLTda0c6Iuyuyzp43OJCwok7ZZ4bwAx1Jt+qnnwRFFnf7DLmrb9rFmpcvjel5JM4m u7DJx2beyruVFOBGzPsaEP/Bu2cu5HLC928nN+XsLMwhLrt0XY+OrX73dK0agw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760720031; a=rsa-sha256; cv=none; b=eQ/Is/O+55FN7jPYLLAr8HDugBlupZ0I9KtVWeN6xtVNIuM/udWqS+LdBXAmA7gbqbzMNy EAvrtPaYpT/pTbadz3kvzkOddj21qGoSwi2pkDGy9R8umirrt8IvOYozNxrwMB2Nj8jQiN F/MQ05QYnl3xzKlv/bLPPXFBNPJWBjxMv9LiBmVdnf9pcG4dcZLlR+1HdnKb/yq7qGJkOw SkTs9FYlQtK8e2gBPZSz8/M7XI7T/LFsboIEylkYRKhRqV2V+lDlaen+yqhj8iaknyBL5Z bZOXqn2omxWaJ4ObyaC9++aoTJgInB3AWKYGYYNtXyYApHa/EXFUo80jNkxRJg== 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 4cp9rb4VCgz13QF; Fri, 17 Oct 2025 16:53: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 59HGrpai070979; Fri, 17 Oct 2025 16:53:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HGrpHk070976; Fri, 17 Oct 2025 16:53:51 GMT (envelope-from git) Date: Fri, 17 Oct 2025 16:53:51 GMT Message-Id: <202510171653.59HGrpHk070976@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: 8d2dcf925d33 - releng/15.0 - vmimage.subr: Add missing directories to METALOG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 8d2dcf925d335e29dcc1699e08a33bbd8102a833 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=8d2dcf925d335e29dcc1699e08a33bbd8102a833 commit 8d2dcf925d335e29dcc1699e08a33bbd8102a833 Author: Colin Percival AuthorDate: 2025-10-17 07:01:33 +0000 Commit: Colin Percival CommitDate: 2025-10-17 16:53:40 +0000 vmimage.subr: Add missing directories to METALOG Theoretically METALOG should include everything which needs to go into disk images; unfortunately there are still a few bugs which are resulting in directories not being listed -- and if METALOG has files in unrecorded directories, the directories end up being created with 000 permissions. Oddly enough, systems where / has 000 permissions are not very usable. As a temporary hack, compare the staging tree against METALOG and add entries for any unrecorded directories. This will hopefully be reverted before 15.0-RELEASE. Approved by: re (cperciva) Reviewed by: bapt, emaste, ivy Sponsored by: https://www.patreon.com/cperciva MFC after: 5 minutes Differential Revision: https://reviews.freebsd.org/D53153 (cherry picked from commit 71b2f9853529b1d1a160eaaa202e93a14f91eed1) (cherry picked from commit 7ce5d908fd6b51dc89d9b89f4c009e44cb932b55) --- release/tools/vmimage.subr | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index c3c917dcd642..842a808c623e 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -290,6 +290,24 @@ buildfs() { cat ${DESTDIR}/METALOG.pkg >> ${DESTDIR}/METALOG fi + # Check for any directories in the staging tree which weren't + # recorded in METALOG, and record them now. This is a quick hack + # to avoid creating unusable VM images and should go away once + # the bugs which produce such unlogged directories are gone. + grep type=dir ${DESTDIR}/METALOG | + cut -f 1 -d ' ' | + sort -u > ${DESTDIR}/METALOG.dirs + ( cd ${DESTDIR} && find . -type d ) | + sort | + comm -23 - ${DESTDIR}/METALOG.dirs > ${DESTDIR}/METALOG.missingdirs + if [ -s ${DESTDIR}/METALOG.missingdirs ]; then + echo "WARNING: Directories exist but were not in METALOG" + cat ${DESTDIR}/METALOG.missingdirs + fi + while read DIR; do + metalog_add_data ${DIR} + done < ${DESTDIR}/METALOG.missingdirs + # Sort METALOG file; makefs produces directories with 000 permissions # if their contents are seen before the directories themselves. env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted From nobody Fri Oct 17 17:46:13 2025 X-Original-To: dev-commits-src-branches@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 4cpC115FhTz6CQlf; Fri, 17 Oct 2025 17:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpC114RTKz3V8L; Fri, 17 Oct 2025 17:46:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tti6VmEm2b36P0WAmEL1TBEWwcu8XUgsyRSBN4VXU4I=; b=DhrJuZ2gbUaUstlOd8utZsIvyx0Sr0FHG6wIpzORpBY5bGRTQq5XTbbau1HlkwW7Q/q7rf RuE2MQHIHtPm6kzDroBVyp1Ec9bWoty9XX9xU5LCjlszHzkdX1mCR6lU8MuONSkXY9+sT+ oF1HBK6oEBmifmZbHVmsNGyjsuLi2E2TCbUvVvw0jdzH9e86KWV6qUUVoigM8iuIAFKPnB 2UawD3yYewonTj2yC/zAfxtfEDzDaupdbUOE/fbXc68718HvR279WH18olvAXJt+e/EauH T2n3O3zfMnuzn4FVw+qHzidbva6GBDZ+xNGsOvCMGbuPk2WCayz6ZqHmQemPPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tti6VmEm2b36P0WAmEL1TBEWwcu8XUgsyRSBN4VXU4I=; b=bvi1bIHW4TqyKBO9vIrvB+TpcZ9oSUyQjVFAlqodC7KCIanhir77GOaOCQqHAp+l6zMOfj NFs5P6ku+mTTsl+4bur2bZy11sjyRMCerHqZok+6YbZm8tx5nitZRxj+vh0JhaYBN+2Gwh yQ4jbCTNiQ10DnOjYHErQV6rw1UtlUO756LQS4+YBZ6NoTgTMXEXUHbbfEutAmuC0qK8gw LrBchcjrPkuB+tdNsOd0MlN5PYeVx+w03RE9XOc4mfiymfhXv9mGrWPcjhoLyyosz8Sy3Y IiPFb8a9iEp/Eq21oYMEiHbzdFgsNvk+h9N1daYY6bIOiWtY6g/jWQDqNHIQCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723173; a=rsa-sha256; cv=none; b=sRO8FWMuWiXsjf4Vw0fvYtfOU7wMVttj78ro7ClVGTIEaB6rg4LZKxabzV5DuL6PgR5ixe xOeL+DCPJjpnFH/eRQ9yip26KC8623Fe0l04tju7lYAMe8oZ6jL02xs/AGX60HHW3wTsJ4 pPtJzY8UGXM4UiDS94vg7hU+djCX7czQisib1ukTON6J0yJs6fOurZm8FzGFRm4LiDbHn4 aDifmy/orRVfYoY59R4zg04aSkvqbBQy0X7RMpDgzzbsyxpG+6f5DqS/Uwld8L1ZO6iEWX nn7mJL4YBHkhcdI3XsDvpx7YelozrNm2jOp/uT+p2Qs8Gw59FzGLk++dBqULbQ== 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 4cpC113brHz14fP; Fri, 17 Oct 2025 17:46: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 59HHkDXv066582; Fri, 17 Oct 2025 17:46:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHkDmf066579; Fri, 17 Oct 2025 17:46:13 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:46:13 GMT Message-Id: <202510171746.59HHkDmf066579@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: bf65752dcec9 - stable/15 - usbhid.4: Note where debug messages go List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: bf65752dcec9f246eaf4fad6160ec9e7954d5f19 Auto-Submitted: auto-generated The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=bf65752dcec9f246eaf4fad6160ec9e7954d5f19 commit bf65752dcec9f246eaf4fad6160ec9e7954d5f19 Author: Ed Maste AuthorDate: 2025-10-02 16:50:15 +0000 Commit: Ed Maste CommitDate: 2025-10-17 17:46:03 +0000 usbhid.4: Note where debug messages go PR: 280377 Sponsored by: The FreeBSD Foundation (cherry picked from commit 44f3e9f7f6c9afed33d2967c1ed48361bb6b404b) --- share/man/man4/usbhid.4 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/man/man4/usbhid.4 b/share/man/man4/usbhid.4 index 4c7f254bdace..0b2e7230e3f4 100644 --- a/share/man/man4/usbhid.4 +++ b/share/man/man4/usbhid.4 @@ -67,6 +67,8 @@ Default is 1. Debug output level, where 0 is debugging disabled and larger values increase debug message verbosity. Default is 0. +Debug messages are printed on the system console and can be viewed using +.Xr dmesg 8 . .El .Sh SEE ALSO .Xr ehci 4 , From nobody Fri Oct 17 17:59:31 2025 X-Original-To: dev-commits-src-branches@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 4cpCJM73VQz6CRVB; Fri, 17 Oct 2025 17:59:31 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJM6Wdjz3WSL; Fri, 17 Oct 2025 17:59:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ofYXSFmvrmGJxl0W3UAWTwflyROBoIPe2aFxDgsGvYY=; b=EI/ZUeIg4H6OBPxJPZ71R1iNpEVdcP3qq8q4FPDkN1oyD+7pQO01aEgv3luxp3IXYU3FCd H2Ipj6r5aHYGqFzEv8/PzUaZmr53wFjn9ciPIhWINeRC958kzGn+67HeausVRntI1w2+aD T68yBc95MgsfkWRxhGi/zaFnG+MJ3AUOixg07HJIeXF/uRSYiWhUp25oPw1j6MFD7L4MvY ulvY7cxLZiEz7+zg4tnQ9Wcs7Xdg7TczsDtD/FwNUTR+ftxCtnT+auzzsF4nmwOpFH88He K3vDl0pUgpYbCk7J1o0abuNEhSy5izgxoiVU2Zhgdl8kyKT366aaWu8uAy2wtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ofYXSFmvrmGJxl0W3UAWTwflyROBoIPe2aFxDgsGvYY=; b=FWrSLFjhfDBAYKquFQnDb8L3E1Prk/sLb29AemgF4C0qatjSaFoADPBUR4RfW7vB62sRQ9 UEg9bnlcopxI5TD/e1NbALzrle21280iu7aJ52bF4WPQKMyRJgVxCjzOOlW++zRjOcBwUV xEzArOTc6p5jsdm1pqyqqQJKunchyAI5c17M0Iq44B1z3WKnKzSHDivNOI7Zp2c9EllIyS B6L8nKVnABkt/d82X8aeTKYN44ubigRhIwFDVtOV8R1YEgq5sGGakhM54yeq/jGDtE8phk LGEJhrasEejxb/nANiJTtuJO3z313IfTG4jfIYgxNaFYsOLv8kBAMJ8LBjOyEw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723971; a=rsa-sha256; cv=none; b=wjzVbcaltv17nzftt/BzPvA75EDNh3PbbyV/cKIo2SdrnegjmX7anCRfguuboEhx7NCMqn jOHLXlVM7W95r6BGsiXvGwBSPgd0+J4IU1JQ6nWnAHCGdGI8gEcXJzqLHUKsxPvl7+g35K 97H7HdgVmmt8c9BE0DX5G7rM/WVGSnO/UN1yEtPifCWpRiZ9hmQkxZqHU80DyRZimBc386 ANE01Se274GCoK32KHRNobU1Y2gtlZJM2aRmlZIltv1aPLCtEfO5knOhjgDrLgv/Ix5qDu fKYXFQU7yxpDjJDjj2XXoSgSjfSoI2ZGHWLy5uwwXS3BAa+moKPcBMudwF0VYw== 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 4cpCJM5sytz14Gw; Fri, 17 Oct 2025 17:59:31 +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 59HHxVDv086068; Fri, 17 Oct 2025 17:59:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxVOl086065; Fri, 17 Oct 2025 17:59:31 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:31 GMT Message-Id: <202510171759.59HHxVOl086065@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: b05f153cd220 - releng/15.0 - unix/stream: repair SO_SNDTIMEO List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: b05f153cd22081bbcbcf41439219ffea6750ba46 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=b05f153cd22081bbcbcf41439219ffea6750ba46 commit b05f153cd22081bbcbcf41439219ffea6750ba46 Author: Gleb Smirnoff AuthorDate: 2025-10-15 00:29:31 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:58:38 +0000 unix/stream: repair SO_SNDTIMEO The send operations are waiting on the peer's socket buffer, but we shall use our timeout value. Provide a test for that. Approved by: re (cperciva) Reported by: phk Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D53081 Fixes: d15792780760ef94647af9b377b5f0a80e1826bc (cherry picked from commit ead721935251ab5640ea736d4269814b7f9d2f64) (cherry picked from commit bbfaff26bf365126cb4d38fda99a2100a256d9bd) --- sys/kern/uipc_usrreq.c | 20 ++++++++++++++++++-- tests/sys/kern/unix_stream.c | 27 +++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index 340d84666459..c5fc1e84ce3f 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -1069,6 +1069,21 @@ uipc_stream_sbspace(struct sockbuf *sb) return (min(space, mbspace)); } +/* + * UNIX version of generic sbwait() for writes. We wait on peer's receive + * buffer, using our timeout. + */ +static int +uipc_stream_sbwait(struct socket *so, sbintime_t timeo) +{ + struct sockbuf *sb = &so->so_rcv; + + SOCK_RECVBUF_LOCK_ASSERT(so); + sb->sb_flags |= SB_WAIT; + return (msleep_sbt(&sb->sb_acc, SOCK_RECVBUF_MTX(so), PSOCK | PCATCH, + "sbwait", timeo, 0, 0)); +} + static int uipc_sosend_stream_or_seqpacket(struct socket *so, struct sockaddr *addr, struct uio *uio0, struct mbuf *m, struct mbuf *c, int flags, @@ -1203,7 +1218,8 @@ restart: error = EWOULDBLOCK; goto out4; } - if ((error = sbwait(so2, SO_RCV)) != 0) { + if ((error = uipc_stream_sbwait(so2, + so->so_snd.sb_timeo)) != 0) { SOCK_RECVBUF_UNLOCK(so2); goto out4; } else @@ -2397,7 +2413,7 @@ uipc_sendfile_wait(struct socket *so, off_t need, int *space) } if (!sockref) soref(so2); - error = sbwait(so2, SO_RCV); + error = uipc_stream_sbwait(so2, so->so_snd.sb_timeo); if (error == 0 && __predict_false(sb->sb_state & SBS_CANTRCVMORE)) error = EPIPE; diff --git a/tests/sys/kern/unix_stream.c b/tests/sys/kern/unix_stream.c index 49d621dc5b0a..442b766ac885 100644 --- a/tests/sys/kern/unix_stream.c +++ b/tests/sys/kern/unix_stream.c @@ -1,6 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * + * Copyright (c) 2025 Gleb Smirnoff * Copyright (c) 2018 Alan Somers * * Redistribution and use in source and binary forms, with or without @@ -30,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -490,6 +492,30 @@ ATF_TC_BODY(ourshutdown_kevent, tc) close(sv[1]); } +ATF_TC_WITHOUT_HEAD(SO_SNDTIMEO); +ATF_TC_BODY(SO_SNDTIMEO, tc) +{ + struct timespec tp1, tp2, rtp, sleep = { .tv_nsec = 100000000 }; + int sv[2]; + char buf[10]; + + full_socketpair(sv); + ATF_REQUIRE_EQ(0, setsockopt(sv[0], SOL_SOCKET, SO_SNDTIMEO, + &(struct timeval){ .tv_usec = sleep.tv_nsec / 1000 }, + sizeof(struct timeval))); + ATF_REQUIRE_EQ(0, clock_gettime(CLOCK_MONOTONIC_PRECISE, &tp1)); + ATF_REQUIRE_EQ(-1, send(sv[0], buf, sizeof(buf), 0)); + ATF_REQUIRE(errno == EAGAIN); + ATF_REQUIRE_EQ(0, clock_gettime(CLOCK_MONOTONIC_PRECISE, &tp2)); + timespecsub(&tp2, &tp1, &rtp); + ATF_REQUIRE(timespeccmp(&rtp, &sleep, >=)); + ATF_REQUIRE_EQ(sizeof(buf), recv(sv[1], buf, sizeof(buf), 0)); + ATF_REQUIRE_EQ(sizeof(buf), send(sv[0], buf, sizeof(buf), 0)); + + close(sv[0]); + close(sv[1]); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, getpeereid); @@ -506,6 +532,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, peershutdown_wakeup_poll); ATF_TP_ADD_TC(tp, peershutdown_wakeup_kevent); ATF_TP_ADD_TC(tp, ourshutdown_kevent); + ATF_TP_ADD_TC(tp, SO_SNDTIMEO); return atf_no_error(); } From nobody Fri Oct 17 17:59:32 2025 X-Original-To: dev-commits-src-branches@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 4cpCJP1Hz4z6CR7C; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJP0bvzz3WLF; Fri, 17 Oct 2025 17:59:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723973; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RV51E55qgizmTEbONuHG6wPmSQ29Un/QLdBQ+lwez28=; b=dhQHO42CqbRuYe8gqTNj+nt9GWnL787U0e59VARNcit8HURRn/hea8g9EDflfbTEXvo6SZ xYPCak2hHLVofwn5gpLjxFSb4CvCax/l1ZvJxFXIlusFIfheEb6Cbog8phiwpRoUjsMMfe LQnj4lkB1Mhe7ui4OAbzOeivfdqLqQxU2Lwo8QZB827q4z0XTfJ/eNxb8C61C0AGfXWStR PjI8LhlK5hyPyWq/KN58MCrt4Kg4zbTmz+wVVxsy2Ycymsog+1HkOpLJThV6JikuaxLhE3 90zTHuNKY5oiYM1GYXUuWTA4DdT91HQp9282uJ7x5PBfdxIjGn0GzOMGN9GzyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723973; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RV51E55qgizmTEbONuHG6wPmSQ29Un/QLdBQ+lwez28=; b=hKIe6+uL+bDpAnBhvah+hRtHucb3RY/jJ2d0dTWaujzy0po36+Uid8LiXqQNs2q3PzWgSW KE4SzS1tZVYvfa2+7CbwomwO2qXz+JV7MuMgV6r8lDj3aDNxhs1Fma0wuwIDr5G4EGL1Iw Rm4Q3aNmRpPK4ir54TYYqlXjarWr0iE3o9XZI2E9qk4IfJG0io/Khmy94272ZVQmUdhhwK Fdubho5Nsnm/Qj6U560uOhpNecoesYkcLCwZjDYgZXONpn0s3Xb6IRUoYGH0WYlDruEiGm Mbc3rBlAa/9mWF3YmuKAamUN9BH3xe9UrfX7NkB6UeTKRF+hHD579LDat9MuhQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723973; a=rsa-sha256; cv=none; b=Bybr8+FrZrterVFvK91g69IFrd8sIl6C+ckumQWeawipJuZN/j0p6jpbN/6puG9m+ZF+gC tsx81IWQFBzDLAftleHEgLTI2WobIsyfbxXljCLU6cXuubYQ/p/W7kqUfAyDGjQpRiFwvp gYCZifZE2lfbGA4OZrLLwt7VfBs5bm3csizxffzYAYXTUFRe22MQfwzodHzVD6ZZDeKrwD kb2kLw8Y+wBLVoK3Wn+8HPT/DTDsGYnXpZqU/YeFt7oz7PslmIwtBrWOWXxaRSEP5XCskY 4tZFPRInqKrC4PCf9Tfbq+KMYANMTIbmPHKf4WaUgor85rT+HiLbaTfzDkvUvQ== 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 4cpCJP00hvz150D; Fri, 17 Oct 2025 17:59: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 59HHxWBi086102; Fri, 17 Oct 2025 17:59:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxWV1086099; Fri, 17 Oct 2025 17:59:32 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:32 GMT Message-Id: <202510171759.59HHxWV1086099@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: 4940dc8c3526 - releng/15.0 - socket(2): refactor the manual page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 4940dc8c352679a516ddc4463fb28e97ec9faddf Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=4940dc8c352679a516ddc4463fb28e97ec9faddf commit 4940dc8c352679a516ddc4463fb28e97ec9faddf Author: Gleb Smirnoff AuthorDate: 2025-10-14 18:41:25 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:58:47 +0000 socket(2): refactor the manual page Create a chapter on every important socket type: stream, datagram, seqpacket. Always list what protocol families do support what kinds of sockets. Improve some statements possessing language from the specification [1]. Reduce some statements that are mostly specific to TCP. Provide more external links and references to various important syscalls that can be used on sockets. Add a paragrph on non-blocking mode. The big factual change is documentation of SOCK_SEQPACKET. In FreeBSD 15 this socket now fully follows the specification and is a stream socket with record boundaries. [1] https://pubs.opengroup.org/onlinepubs/9799919799/functions/V2_chap02.html#tag_16_10_06 Approved by: re (cperciva) Differential Revision: https://reviews.freebsd.org/D52771 (cherry picked from commit 86d17239233ea4f5766bee68ba6355804525cefa) (cherry picked from commit ad13fd5a8fa1607805d11ced3428e86dbd94778e) (cherry picked from commit a091d6919c3175f2385719e7b1c6fbd8576134f9) --- lib/libsys/socket.2 | 300 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 213 insertions(+), 87 deletions(-) diff --git a/lib/libsys/socket.2 b/lib/libsys/socket.2 index b211611c6354..16317fcd3aa5 100644 --- a/lib/libsys/socket.2 +++ b/lib/libsys/socket.2 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 17, 2025 +.Dd September 28, 2025 .Dt SOCKET 2 .Os .Sh NAME @@ -89,32 +89,6 @@ SOCK_RAW Raw-protocol interface, SOCK_SEQPACKET Sequenced packet stream .Ed .Pp -A -.Dv SOCK_STREAM -type provides sequenced, reliable, -two-way connection based byte streams. -An out-of-band data transmission mechanism may be supported. -A -.Dv SOCK_DGRAM -socket supports -datagrams (connectionless, unreliable messages of -a fixed (typically small) maximum length). -A -.Dv SOCK_SEQPACKET -socket may provide a sequenced, reliable, -two-way connection-based data transmission path for datagrams -of fixed maximum length; a consumer may be required to read -an entire packet with each read system call. -This facility may have protocol-specific properties. -.Dv SOCK_RAW -sockets provide access to internal network protocols and interfaces. -The -.Dv SOCK_RAW -type is available only to the super-user and is described in -.Xr ip 4 -and -.Xr ip6 4 . -.Pp Additionally, the following flags are allowed in the .Fa type argument: @@ -140,32 +114,23 @@ particular to the in which communication is to take place; see .Xr protocols 5 . -.Pp The .Fa protocol argument may be set to zero (0) to request the default implementation of a socket type for the protocol, if any. -.Pp -Sockets of type +.Sh STREAM SOCKET TYPE +The +.Dv SOCK_STREAM +socket type provides reliable, sequenced, full-duplex octet streams between +the socket and a peer to which the socket is connected. +A socket of type .Dv SOCK_STREAM -are full-duplex byte streams, similar -to pipes. -A stream socket must be in a +needs to be in a .Em connected -state before any data may be sent or received -on it. +state before any data can be sent or received. A connection to another socket is created with a .Xr connect 2 system call. -Once connected, data may be transferred using -.Xr read 2 -and -.Xr write 2 -calls or some variant of the -.Xr send 2 -and -.Xr recv 2 -functions. (Some protocol families, such as the Internet family, support the notion of an .Dq implied connect , @@ -173,62 +138,210 @@ which permits data to be sent piggybacked onto a connect operation by using the .Xr sendto 2 system call.) -When a session has been completed a -.Xr close 2 -may be performed. -Out-of-band data may also be transmitted as described in +Once connected, data may be sent using +.Xr send 2 , +.Xr sendto 2 , +.Xr sendmsg 2 +and +.Xr write 2 +system calls. +Data may be received using +.Xr recv 2 , +.Xr recvfrom 2 , +.Xr recvmsg 2 , +and +.Xr read 2 +system calls. +Record boundaries are not maintained; data sent on a stream socket using output +operations of one size can be received using input operations of smaller or +larger sizes without loss of data. +Data may be buffered; successful return from an output function does not imply +that the data has been delivered to the peer or even transmitted from the local +system. +For certain protocols out-of-band data may also be transmitted as described in .Xr send 2 and received as described in .Xr recv 2 . .Pp -The communications protocols used to implement a -.Dv SOCK_STREAM -ensure that data -is not lost or duplicated. -If a piece of data for which the -peer protocol has buffer space cannot be successfully transmitted -within a reasonable length of time, then -the connection is considered broken and calls -will indicate an error with --1 returns and with -.Er ETIMEDOUT -as the specific code -in the global variable -.Va errno . -The protocols optionally keep sockets -.Dq warm -by forcing transmissions -roughly every minute in the absence of other activity. -An error is then indicated if no response can be -elicited on an otherwise -idle connection for an extended period (e.g.\& 5 minutes). -By default, a +If data cannot be successfully transmitted within a given time then the +connection is considered broken, and subsequent operations shall fail with +a protocol specific error code. +A .Dv SIGPIPE -signal is raised if a process sends -on a broken stream, but this behavior may be inhibited via +signal is raised if a thread attempts to send data on a broken stream (one that +is no longer connected). +The signal can be suppressed by the +.Dv MSG_NOSIGNAL +flag with distinct +.Xr send 2 , +.Xr sendto 2 , +and +.Xr sendmsg 2 +system calls or by the +.Dv SO_NOSIGPIPE +socket option set on the socket with .Xr setsockopt 2 . .Pp -.Dv SOCK_SEQPACKET -sockets employ the same system calls -as +The .Dv SOCK_STREAM -sockets. -The only difference -is that -.Xr read 2 -calls will return only the amount of data requested, -and any remaining in the arriving packet will be discarded. +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +.Dv PF_UNIX , +.Dv PF_BLUETOOTH , +.Dv PF_HYPERV , +and +.Dv PF_INET_SDP . +Out-of-band data transmission mechanism is supported for stream sockets of +.Dv PF_INET +and +.Dv PF_INET6 +protocol families. +.Sh DATAGRAM SOCKET TYPE +The +.Dv SOCK_DGRAM +socket type supports connectionless data transfer which is not necessarily +acknowledged or reliable. +Datagrams can be sent to the address specified (possibly multicast or +broadcast) in each output operation, and incoming datagrams can be received +from multiple sources. +The source address of each datagram is available when receiving the datagram +with +.Xr recvfrom 2 +or +.Xr recvmsg 2 . +An application can also pre-specify a peer address with +.Xr sendto 2 +or +.Xr sendmsg 2 , +in which case calls to output functions that do not specify a peer address +shall send to the pre-specified peer. +If a peer has been specified, only datagrams from that peer shall be received. +A datagram shall be sent in a single output operation, and needs to be received +in a single input operation. +The maximum size of a datagram is protocol-specific. +Output datagrams may be buffered within the system; thus, a successful return +from an output function does not guarantee that a datagram is actually sent or +received. .Pp +The .Dv SOCK_DGRAM +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +.Dv PF_UNIX , +.Dv PF_NETGRAPH , and -.Dv SOCK_RAW -sockets allow sending of datagrams to correspondents -named in +.Dv PF_NETLINK . +.Sh SEQUENCED PACKET SOCKET TYPE +The +.Dv SOCK_SEQPACKET +socket type is similar to the +.Dv SOCK_STREAM +type, and is also connection-oriented. +The only difference between these types is that record boundaries are +maintained using the +.Dv SOCK_SEQPACKET +type. +A record can be sent using one or more output operations and received using one +or more input operations, but a single operation never transfers parts of more +than one record. +Record boundaries are set by the sender with the +.Dv MSG_EOR +flag of .Xr send 2 -calls. -Datagrams are generally received with +or +.Xr sendmsg 2 +functions. +There is no possibility to set a record boundary with +.Xr write 2 . +Record boundaries are visible to the receiver via the +.Dv MSG_EOR +flag in the received message flags returned by the +.Xr recvmsg 2 +function. +It is protocol-specific whether a maximum record size is imposed. +.Pp +The +.Dv SOCK_SEQPACKET +socket is supported by the following protocol families: +.Dv PF_INET , +.Dv PF_INET6 , +and +.Dv PF_UNIX . +.Pp +.Sh RAW SOCKET TYPE +The +.Dv SOCK_RAW +socket type provides access to internal network protocols and interfaces. +It is a datagram socket in its nature, thus has the same semantics of +read and write operations. +The +.Dv SOCK_RAW +type is available only to the super-user and is described in +.Xr ip 4 +and +.Xr ip6 4 . +.Sh NON-BLOCKING MODE +A socket can be created in +.Em non-blocking mode +with the help of +.Dv SOCK_NONBLOCK +flag. +Alternatively, the non-blocking mode on a socket can be turned on and off with +the help of the +.Dv O_NONBLOCK +flag of the +.Xr fcntl 2 +system call. +.Pp +When a non-blocking socket has not enough data in its receive buffer to fulfill +the application supplied buffer, then data receiving system calls like +.Xr recv 2 , .Xr recvfrom 2 , -which returns the next datagram with its return address. +.Xr recvmsg 2 +and +.Xr read 2 +will not block waiting for the data but immediately return. +Return value will indicate amount of bytes read into the supplied buffer. +The +.Va errno +will be set to +.Dv EAGAIN +.Po +has same value as +.Dv EWOULDBLOCK +.Pc . +.Pp +If application tries to send more data on a non-blocking socket than the socket +send buffer can accomodate with +.Xr send 2 , +.Xr sendto 2 , +.Xr sendmsg 2 +or +.Xr write 2 +system calls partial data will be sent. +Return value will indicate amount of bytes sent. +The +.Va errno +will be set to +.Dv EAGAIN . +Note that sockets of +.Dv SOCK_DGRAM +type are unreliable, thus for these sockets sending operations will never fail +with +.Dv EAGAIN +in non-blocking mode neither will block in blocking mode. +.Sh OTHER OPERATIONS ON SOCKETS +Since socket descriptors are file descriptors, many generic file operations +performed by +.Xr fcntl 2 , +apply. +Socket descriptors can be used with all event engines, such as +.Xr kevent 2 , +.Xr select 2 +and +.Xr poll 2 . .Pp An .Xr fcntl 2 @@ -250,6 +363,12 @@ The and .Xr getsockopt 2 system calls are used to set and get options, respectively. +.Pp +Connection associated with a socket can be terminated by +.Xr close 2 +system call. +One direction of communication can be disabled with +.Xr shutdown 2 . .Sh RETURN VALUES A -1 is returned if an error occurs, otherwise the return value is a descriptor referencing the socket. @@ -282,16 +401,23 @@ The socket type is not supported by the protocol. .Sh SEE ALSO .Xr accept 2 , .Xr bind 2 , +.Xr close 2 , .Xr connect 2 , +.Xr fcntl 2 , .Xr getpeername 2 , .Xr getsockname 2 , .Xr getsockopt 2 , .Xr ioctl 2 , +.Xr kevent 2 , .Xr listen 2 , +.Xr poll 2 , .Xr read 2 , .Xr recv 2 , .Xr select 2 , .Xr send 2 , +.Xr sendmsg 2 , +.Xr sendto 2 , +.Xr signal 3 , .Xr shutdown 2 , .Xr socketpair 2 , .Xr write 2 , From nobody Fri Oct 17 17:59:33 2025 X-Original-To: dev-commits-src-branches@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 4cpCJQ3MBKz6CRd3; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJQ1H6Rz3WN4; Fri, 17 Oct 2025 17:59:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zakjfN5Vnj7TupeEa5hgyNtXtm1cXzwFEIPRiAk4rTQ=; b=FpF9z10q2HtinyCcRDqy0pWQZ478vLZMvM7ed1S+WxiaIJ0zZOd88l+BkjeJRtT6hCPRX2 JH2bARUPVoIjOfEHN2RCSQ4lsMDyAombVdJzbRrp5BudW9Gzi9BUQfVEdSy0F1aXJU04Ur Gv3EvwYu0SrcfnzDgCRDW0hxXCQL6RBlS+wmIGRoIcKNIfzO3EDdGjxhDk5rqovkMJ1GsA R3Fv8VKr2sAEtDLzG/BsFGeVBrpPAEM/Ceyf1bNDw7im4yX2+MeoIchzEDZP+OpNRZcO28 ElRgSmjy1+X8/3dXMD/ASiNO0cN279rTtFku2Ol9BuSWA55lYNAkl64QNjLnvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zakjfN5Vnj7TupeEa5hgyNtXtm1cXzwFEIPRiAk4rTQ=; b=oPN+HX7EC6/HZwQWJi+0GdmAZVi8+zHtbL8eWeG+lTAWG5pTdbXbPjOKn1ciHHTFt5rxr6 p2/nritFuLHM+GFz+YY+j5u+RLrEf5YVWG0t+sCgRaHGodo5iIswdYbC7qDmhm8RASgDMu sHMaNzXKAevcHLySq4n2/b8H683GFyYe9rdRUfsr7vS+1A1SvC1QD8T+MKcEWFEM+th+Ni l518+hCvpt+9a28NyI/+F0I9cQrGZOpjhcTpsGDwomDhgIj4gqDH5+wMg4egbfq9DOOU2+ 7RFnbFKz1E/4RP51L537AlbFgaEETZkOlQJWBHyd/Il7PUeKEp2a87NUgspXWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723974; a=rsa-sha256; cv=none; b=x2kMxM5ekjp2DgFXWGEqc6KPRNlDu8cMAqI1vlQ+jNVTP0awFzpV7PPcxUPm+HS1e/d/Mj yJqpaeeNUnAQmUUN9ICnjMBsrAj7yURDegKSd680s5unHxSyjSA/9FcCcauk7SL/NFkhNh Q2MMYN+i4dynViLXrOZHQMHHNbISj2l084O38I8OR8jVPhFMzzGjlTWot0W8DIv5KDXQSA NlK9+txMEkJfoNg0ZEEXIyJgUaZQSejMs7SQGXAnXY14MhMtoE0DWZxt5pWwlvjAscd8M5 8aXQeNtuDp5HA9Z4NUsq/3vDvkbl8WifXrB3JZ9u0hTFwAW26/qTmyuwGB7sfw== 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 4cpCJQ0kCgz150F; Fri, 17 Oct 2025 17:59: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 59HHxX8x086136; Fri, 17 Oct 2025 17:59:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxXrm086133; Fri, 17 Oct 2025 17:59:33 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:33 GMT Message-Id: <202510171759.59HHxXrm086133@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: 46d39e9f09a4 - releng/15.0 - sockstat: show path state column only when useful List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 46d39e9f09a4e7e97984933466228c3fc11600a6 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=46d39e9f09a4e7e97984933466228c3fc11600a6 commit 46d39e9f09a4e7e97984933466228c3fc11600a6 Author: Michael Tuexen AuthorDate: 2025-10-09 19:16:38 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:58:52 +0000 sockstat: show path state column only when useful Showing the path state column is only useful, if there is at least one SCTP endpoint shown, which is not in the state CLOSED or LISTEN. Don't show it when it is not useful. Approved by: re (cperciva) Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52986 (cherry picked from commit 746eadecaa7dc8913721cbaa9be4e603bd36ea49) (cherry picked from commit 9a0a114b7f10c9510f6e2d4e5d1c5e40218f383b) --- usr.bin/sockstat/main.c | 8 ++++++-- usr.bin/sockstat/sockstat.1 | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index f0eb83eb3e9f..7fedfd5b8724 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -103,6 +103,7 @@ static bool opt_u; /* Show Unix domain sockets */ static u_int opt_v; /* Verbose mode */ static bool opt_w; /* Automatically size the columns */ static bool is_xo_style_encoding; +static bool show_path_state = false; /* * Default protocols to use if no -P was defined. @@ -584,6 +585,7 @@ gather_sctp(void) !(local_all_loopback || foreign_all_loopback))) { RB_INSERT(socks_t, &socks, sock); + show_path_state = true; } else { free_socket(sock); } @@ -1485,7 +1487,7 @@ display_sock(struct sock *s, struct col_widths *cw, char *buf, size_t bufsize) } else if (!is_xo_style_encoding) xo_emit(" {:encaps/%*s}", cw->encaps, "??"); } - if (opt_s) { + if (opt_s && show_path_state) { if (faddr != NULL && s->proto == IPPROTO_SCTP && s->state != SCTP_CLOSED && @@ -1632,7 +1634,9 @@ display(void) if (opt_U) xo_emit(" {T:/%*s}", cw.encaps, "ENCAPS"); if (opt_s) { - xo_emit(" {T:/%-*s}", cw.path_state, "PATH STATE"); + if (show_path_state) + xo_emit(" {T:/%-*s}", cw.path_state, + "PATH STATE"); xo_emit(" {T:/%-*s}", cw.conn_state, "CONN STATE"); } if (opt_b) diff --git a/usr.bin/sockstat/sockstat.1 b/usr.bin/sockstat/sockstat.1 index dabb3042bfd4..d14eb967ad0f 100644 --- a/usr.bin/sockstat/sockstat.1 +++ b/usr.bin/sockstat/sockstat.1 @@ -25,7 +25,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 October 7, 2025 +.Dd October 9, 2025 .Dt SOCKSTAT 1 .Os .Sh NAME @@ -205,6 +205,7 @@ is specified (only for SCTP or TCP). The path state if .Fl s is specified (only for SCTP). +This column is only shown when there is at least one path state shown. .It Li CONN STATE The connection state if .Fl s From nobody Fri Oct 17 17:59:35 2025 X-Original-To: dev-commits-src-branches@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 4cpCJR3NHBz6CR9p; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJR2Fwkz3WXq; Fri, 17 Oct 2025 17:59:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z9SAMeYJ97Y6h+rQLYxe5QeP4kaLYvZfzMyHUpcSkag=; b=Z6n9MvKEXZgM0+fPkdsMrS3OkxvJkNZnT+bi5J1zgpI49Ypp9koTu75F4eYPNS7zolni46 eYF1r3fYMZxj8uPyo8Z4hbYhiogTOcDOBkdZOEjLTzW//wOvk4SWB37eaIPlwVpWBzRl2a kfUQQEsYqJJLHTPMNN0e81LPDw5DMxSoZ2wXprGEeAvNtI/MnYru5oTZ11xhKy9dmYz1pm kdf7XMDcQRhg6zLYaoDjZkR9wpcQrT2FKdSG8ryTslkd15guIabAOJEnToQotuqAHf+uVq tQgEizdVGjlUIBRty/lg1aOOUbl0rJ4NBtnSxobAb3hoxJ0PPe140mAyQ5gpGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z9SAMeYJ97Y6h+rQLYxe5QeP4kaLYvZfzMyHUpcSkag=; b=jtx2TmAekTQAaTWeSKunt0/L2eoqQTgoGgneiB5gs9/qfFRaemtpd/beSzFABaotC5o37N o+PtW48jjyLZEIXnMH3KLnESPoSDd0eZVPjJRLmoGBTM/PsTIwyVX0fA9rbZvzJOo/kopn qPLvgRGEiGoP79h5Cd+qjGWkCXjjueuLNyQLrYYbVN9FSYISqr5/M0RJpsURv5ypRejh8y Q0xBh6RnGNMpxkhBGxasy7Tom7kdGl2xtzovSskJVtftpmt0A98MKP0A/M9pzfblNFnKKS TP/th/xdnnzQjD8kA7RunCMDTP+kV8KDuAadI/j7zlSHOFpO5T6dzmqVOgLFwQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723975; a=rsa-sha256; cv=none; b=BO5vtAfMDxQpEKPi5hfnwyGLp/xw46tsZnq5YxrfYUpfr+RTJBjK6/Ujfgp89XCcR3UE/9 THLYJdBPtgyfsgdceCOR6p27gnWc4j3b3UGyHC5KjXRzfLetWhJsZkWcPGcsLoFLzAeQzv KOeeyRIh3i9y84x/pKi9XE4LVgKNoaBzRV8bSr2B2asl+stKckOzdZvnKKBrEfqDGlTPwC JBBnmA/Sh6BKERBF2JR+1lJW7VLUmmtkrpOB6Pwtwh8ojvnLQvxi1IvfuzGsW4OXZKO2mN te0Px5xdGnxZ/qLT4xODuGqUkR5msf8vff3hN8DmzFxRtKzt5gri4jMz8Rip2w== 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 4cpCJR1fNxz14Gx; Fri, 17 Oct 2025 17:59: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 59HHxZB1086170; Fri, 17 Oct 2025 17:59:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxZTj086167; Fri, 17 Oct 2025 17:59:35 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:35 GMT Message-Id: <202510171759.59HHxZTj086167@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: 25d7786e3290 - releng/15.0 - sockstat: improve handling of path state List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 25d7786e32907f27929ae7a3af6a19f341cfe8be Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=25d7786e32907f27929ae7a3af6a19f341cfe8be commit 25d7786e32907f27929ae7a3af6a19f341cfe8be Author: Michael Tuexen AuthorDate: 2025-10-14 06:39:37 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:58:57 +0000 sockstat: improve handling of path state Only suppress the path state column when producing traditional text output. When generating html output, always include the column. Please note that when generating json or xml output, optional fields like the path state are only generated if they is applicable. This has not been changed. The changes in this patch were suggested by asomers. Approved by: re (cperciva) Reviewed by: asomers Fixes: 746eadecaa7d ("sockstat: show path state column only when useful") Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D53005 (cherry picked from commit 97e858f5b335ae8f98619f9cee8ab9a0501cd06d) (cherry picked from commit f6923c0a68a67d69762e188273f0e87f231ec964) --- usr.bin/sockstat/main.c | 8 +++++--- usr.bin/sockstat/sockstat.1 | 5 +++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index 7fedfd5b8724..d1ea6b1bc958 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1789,9 +1789,11 @@ main(int argc, char *argv[]) argc = xo_parse_args(argc, argv); if (argc < 0) exit(1); - if (xo_get_style(NULL) != XO_STYLE_TEXT && - xo_get_style(NULL) != XO_STYLE_HTML) - is_xo_style_encoding = true; + if (xo_get_style(NULL) != XO_STYLE_TEXT) { + show_path_state = true; + if (xo_get_style(NULL) != XO_STYLE_HTML) + is_xo_style_encoding = true; + } opt_j = -1; while ((o = getopt(argc, argv, "46AbCcfIij:Llnp:P:qSsUuvw")) != -1) switch (o) { diff --git a/usr.bin/sockstat/sockstat.1 b/usr.bin/sockstat/sockstat.1 index d14eb967ad0f..1498fb1d88f7 100644 --- a/usr.bin/sockstat/sockstat.1 +++ b/usr.bin/sockstat/sockstat.1 @@ -25,7 +25,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 October 9, 2025 +.Dd October 14, 2025 .Dt SOCKSTAT 1 .Os .Sh NAME @@ -205,7 +205,8 @@ is specified (only for SCTP or TCP). The path state if .Fl s is specified (only for SCTP). -This column is only shown when there is at least one path state shown. +When using traditional text output, this column is only shown when there is at +least one path state to show. .It Li CONN STATE The connection state if .Fl s From nobody Fri Oct 17 17:59:36 2025 X-Original-To: dev-commits-src-branches@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 4cpCJS5dNjz6CRRy; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJS2pdRz3WNV; Fri, 17 Oct 2025 17:59:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IDcYpiaTMDCYs3nJXyDvUjScRbq/BxAj4IA3pu+Eh+4=; b=qNJB9YhODu8jZ0FWUGhGQRThbnNWHu++FTpXi+mftRavZvWPpAn2WYcwJvmLhhQPvG0rTf ytq0H5ZLo438cbIrbVatf2scoQO+FDAYPkwZLrin+/fOoCK4QGmoU7A9tw6NljwKR47/tQ zHgFugDsGMKX40X1leWHpbpgsZJkYiznPJc6qsQPVzq1zZ9Ovm0JflZBOjvTMaMbjFEyd1 1G47EwXlLmF3gCd1EHGNxaLQk/vHbsA6i9vTKVAHIIikrQAmnONgyAcPYmCob1xoqWU5yQ WWRWCktxMgUcnGnxevO51uzwtTJ/THAUWYTDgnvpf+r47/HoGUBDIwAlVqW7BA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IDcYpiaTMDCYs3nJXyDvUjScRbq/BxAj4IA3pu+Eh+4=; b=pcIOBjjrrsS1kfqM6fpLYSxN5v7IEMRODNdORgQgG01eHRSBXFi1TStvbVpygzHtkSF/X3 Bcxkeryr3zbxG3A4HyLFTcv8Mfz7QI2UxdJJ5XJZ9h8UPg2PMSE/0VQrLb6WJ+p59qTJGZ tOkiOjzDaGAno9r0C7wiij3huzdEJfvvSiRzWFA5Y+qmZ1J6NR1xc4Qus17Yre+2cHvE7t uJ7ZOlLaNq4hIxAVVi58x9aB4aq8LBN0AlyCkj1zl9AXpkFWwWa3FWZqB108aGCSLjAJDA bjGM3ouh6rehTqegcKIePkIDUHKcr0Zr+wUL6ebJ56nPidhowdPhSEtKOpElcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723976; a=rsa-sha256; cv=none; b=iU9pODmsAsuqXTy9MpR4GndUJCT1MTC2eU2C/KNhpyGZLnZUF6vSLdc+GQKIxn3agzzZl1 pF1KNNNUOPYbqdxQaUtDbkgF8waAvLvEA2yrPmpDxWXtBCDsI/tGlT/qViiQdzY4vAT2yI nGKVZNtFzVk/jxAM4thVL3HT6m1KXg+qqW2eMsELm4VnjitYTFGxij5dmfkKQMe3VuTgRe DrUTupn8MA/S0fM3+a8uS6/pfD7psuMEcXTITCF24hoOisS3mM+0+2Uu6otZ+ePYmAsYlC lIppEGI7v4nSUwLaV4TFm6kYV7LnxxN/RtKHhXtP3XBY8r9Q663u4hj8Xp/N8A== 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 4cpCJS2Mxfz14Gy; Fri, 17 Oct 2025 17:59:36 +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 59HHxa49086207; Fri, 17 Oct 2025 17:59:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxaGX086204; Fri, 17 Oct 2025 17:59:36 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:36 GMT Message-Id: <202510171759.59HHxaGX086204@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: 7060c79d2403 - releng/15.0 - vm_object: Reset kvo_path on each iteration in vm_object_list_handler() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 7060c79d2403431940e9cc79c71959f8c0f7f6f1 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=7060c79d2403431940e9cc79c71959f8c0f7f6f1 commit 7060c79d2403431940e9cc79c71959f8c0f7f6f1 Author: Mark Johnston AuthorDate: 2025-10-10 13:26:29 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:59:00 +0000 vm_object: Reset kvo_path on each iteration in vm_object_list_handler() Otherwise we print a bogus path for anonymous objects. Approved by: re (cperciva) Reviewed by: kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52997 (cherry picked from commit 13d866b314f87df901c0a1cbbbc56d56ee0d7b7c) (cherry picked from commit 55ad7c573e5b7b8fa25dd368ccad1d1774c77824) --- sys/vm/vm_object.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 6d9ea8bf9d93..fe84523b7a8f 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2522,15 +2522,13 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) continue; } mtx_unlock(&vm_object_list_mtx); + + memset(kvo, 0, sizeof(*kvo)); kvo->kvo_size = ptoa(obj->size); kvo->kvo_resident = obj->resident_page_count; kvo->kvo_ref_count = obj->ref_count; kvo->kvo_shadow_count = atomic_load_int(&obj->shadow_count); kvo->kvo_memattr = obj->memattr; - kvo->kvo_active = 0; - kvo->kvo_inactive = 0; - kvo->kvo_laundry = 0; - kvo->kvo_flags = 0; if (!swap_only) { vm_page_iter_init(&pages, obj); VM_RADIX_FOREACH(m, &pages) { @@ -2552,9 +2550,6 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) } } - kvo->kvo_vn_fileid = 0; - kvo->kvo_vn_fsid = 0; - kvo->kvo_vn_fsid_freebsd11 = 0; freepath = NULL; fullpath = ""; vp = NULL; From nobody Fri Oct 17 17:59:37 2025 X-Original-To: dev-commits-src-branches@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 4cpCJV156Mz6CRZW; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJT3zDFz3WNj; Fri, 17 Oct 2025 17:59:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qDB69c6i6q55VWKtTR4+zFnPVSwQ5fbSpVBL4LFe+VQ=; b=nPup0TQCHGHjlhCX+ahZQBmnJuu1dgNa3wENS9qJQcWK06h33BYlQOZKi8BciXyRNDRLZF crz22m4RBMVm3u53sx6mJcrBKRw9zGxNU7KIp5RlaPuBrXv6o/T1ZwcY+F4yxoPyU5RKXp xmdufWnmxajQltfF1hxFzmqIgf8zibvRQajvnHngcjLupnJbMzjgJzwGQqwEaIcDnc8aR5 HhrXzsAgYu4FIV4KtqPJ3cJAIZDyiqk+fEIbbL2fnR7y91qGWln/5OcSTZVBR7GCg6mGzs xTosxCFXvpQMGdg/skBYP6ET3vyMXJtm7G39oJWxO3tD37sSoNk673/VNVW39Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qDB69c6i6q55VWKtTR4+zFnPVSwQ5fbSpVBL4LFe+VQ=; b=xBVblgLe12VoZJghaFgBRmXvqHaEClauKa2RNrFtKgPOHaogIVyRwwGkuSKjiyQhqiGNmK jhzxeYwIvc686RO8XZRoY7iv+xEMuUrisaOoA0yNyVuCajQQC6ONHNXi2sAlPfxRbL17WI wF7Q+EmfzkLYvi7nZwtr69ktr6xsZNKeEioMupqvsRolViXTMUFmxzK+ZHUaWcamxhkzSt tDf8Sj3UjRLlkPQxhZxb3ds2kJjjUCg37ovIXYohQIM0ywsazwXfOF7f+ttUvaEfCvCGZo n+Xe+/scOQ7E4noWDDr4kT82uHNmHnM/qGl3qTO/5dyurajvJCvWXanx67Lakw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723977; a=rsa-sha256; cv=none; b=E0j55HurXGLaxmoUW1DWF/wG4gAYtajF8z2mYtN6ut2NvBVLXbsG5BXwc7kNbi+EMvx+KU z0JSjGBoerp2/hIj+EXwoJLpV+hKIJQCdCdXcusDpgmGG0PBsaX1Z3iAQv/kTy1DxDBns2 IozUD5J4b5s0CCrZfIeLQdxo/e2d27HK4/8fhD44BRpta+mD48vrRhTsKoXsOtQrpGdrmm nSWNyP/GDpRYUNLM8TyikckUveverlwuZIYHnbVU5nCrgOu94WYvvDa0Pg4b87xglBnAeL 6om8vMehzCq4xbBGnnLwse2uAY+f8rgphHYiClHIwfWKqAbtBivT7yRw93FFBg== 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 4cpCJT3Kxtz149x; Fri, 17 Oct 2025 17:59: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 59HHxb04086244; Fri, 17 Oct 2025 17:59:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxbTM086241; Fri, 17 Oct 2025 17:59:37 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:37 GMT Message-Id: <202510171759.59HHxbTM086241@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: cb752719c7df - releng/15.0 - vm_object: Export the number of wired pages in vm_object_list_handler() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: cb752719c7dfe73d218e95c893424d6b21bada45 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=cb752719c7dfe73d218e95c893424d6b21bada45 commit cb752719c7dfe73d218e95c893424d6b21bada45 Author: Mark Johnston AuthorDate: 2025-10-10 13:26:50 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:59:04 +0000 vm_object: Export the number of wired pages in vm_object_list_handler() Approved by: re (cperciva) Reviewed by: alc, kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53008 (cherry picked from commit ffca0c44ffe84352f6fdd24862c070d348d783d4) (cherry picked from commit 2eaee0dbc28c6f8f61b37f93026ef1623dc4047d) --- sys/sys/user.h | 3 ++- sys/vm/vm_object.c | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/sys/user.h b/sys/sys/user.h index 3183f0792256..1704bc089d85 100644 --- a/sys/sys/user.h +++ b/sys/sys/user.h @@ -617,7 +617,8 @@ struct kinfo_vmobject { } kvo_type_spec; /* Type-specific union */ uint64_t kvo_me; /* Uniq handle for anon obj */ uint64_t kvo_laundry; /* Number of laundry pages. */ - uint64_t _kvo_qspare[5]; + uint64_t kvo_wired; /* Number of wired pages. */ + uint64_t _kvo_qspare[4]; uint32_t kvo_swapped; /* Number of swapped pages */ uint32_t kvo_flags; uint32_t _kvo_ispare[6]; diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index fe84523b7a8f..5b4517d2bf0c 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2547,6 +2547,9 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) kvo->kvo_inactive++; else if (vm_page_in_laundry(m)) kvo->kvo_laundry++; + + if (vm_page_wired(m)) + kvo->kvo_wired++; } } From nobody Fri Oct 17 17:59:38 2025 X-Original-To: dev-commits-src-branches@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 4cpCJV5ydgz6CRd6; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJV3xnQz3WhV; Fri, 17 Oct 2025 17:59:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LxQ2HFStQq8Fq7Vo2GO5VXglQTwZuMadkX6D3KMs9Fo=; b=y4VkfS7ULaKAzdS3dappu6F5myfhJfeNWKiu0TZDlrykh3tGLlNE22UV/RX5bI0MCP6spx m2+MR9aJqlss9ZJd72TcGZWP/aKb+ldEf08LPZUQyAmKxcX0HGKbf+uNY9FFYq0A2ZJxUE uzcNEyIlLw88xKZzpGtISovbcC28LZBH3LwE0LJQDqSiR41KL9yoOL2LmDiJgqKYm5KDCB 2OpNx4X4g7lqu81Ig0AWx5TDFTIenfuTgn8AnLQ3vL/JTYBhG1UDKEevMgJGwdIPtb5sDT rjDqBctg/EuPHZ5kRHZofDAsxQKuehvNg37C54CayIwW7bwvsTjpH3za47ZdRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LxQ2HFStQq8Fq7Vo2GO5VXglQTwZuMadkX6D3KMs9Fo=; b=P+qBssMfKmc8ye7svyUiV1sKV0ze0ztXMypROtTXvU+AROtEqxPCvoVsGHplCI4rpMk/aT 2PeXg1DfDgSoroln/9fcLUm2k2EyYmNHPMBVB7RuOqjhH+NyRyg9nqH7a+Ny+HNhrMjOcg lk3kxfcqxyCEyWF2+wTxX3aLWj5CGONcHJ3+CUzOQKD5uuiAZCXBT2zcoqpCSkTDttRiq1 2Yz6AjEDyTHcAii/vToss7ewbi7hQ8TELUWA7gbrm4n/M9WIMbqyvOQj6KaMB/R+4NJcbL CGYHBvwGwzOIv0YYP3vFvpdT9nMDt68g4U3USzTEVXQhVlsvZ+fZRzriFV/Dig== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723978; a=rsa-sha256; cv=none; b=hyBsLj0LD8GJanKn0COMZt0P4ftOEXv/vD6o+hHyUmd1MNQz7q+coMGLY+s74eIBPohVTH nBQGiH9NJ+5REO9n9jx/xE15HkBUNfKGEdzXy6YjUxPB08+OiejOYOJhsWREA24U0cWQFT V1raeotlTMq/zh1DPrmPUlwHvRyroEk41vW7vHhdzi+eUfY183xEkl2+2OWThTl1e8Dugy e5Xii0Fw2JU03LL7NIseagS6XhZljdJOCuQ76VYYIoEwPGfVbrDN4sX9z9m0NfoXTEXgO5 AZH6QyE/9dx0/zCbd58RzT4l/Sf6QL3aRYnZij/LNKzh6c0PySYxZ89cbceYuQ== 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 4cpCJV3WyDz14WW; Fri, 17 Oct 2025 17:59: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 59HHxcA3086283; Fri, 17 Oct 2025 17:59:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxcRN086279; Fri, 17 Oct 2025 17:59:38 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:38 GMT Message-Id: <202510171759.59HHxcRN086279@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: ecce77b7c975 - releng/15.0 - vmstat: Print the number of wired pages in each object List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: ecce77b7c97588814d86d83ae2d9293ee26db7a0 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=ecce77b7c97588814d86d83ae2d9293ee26db7a0 commit ecce77b7c97588814d86d83ae2d9293ee26db7a0 Author: Mark Johnston AuthorDate: 2025-10-10 13:28:01 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:59:08 +0000 vmstat: Print the number of wired pages in each object Approved by: re (cperciva) Reviewed by: alc, kib MFC after: 1 week Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53008 (cherry picked from commit f66bb825f5895eed98c959cd2b612453b4d1aa6c) (cherry picked from commit 5bc5ce6e61e6ccf5a9386aa15936f4a9a51055b3) --- usr.bin/vmstat/vmstat.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/usr.bin/vmstat/vmstat.c b/usr.bin/vmstat/vmstat.c index 7a7c83fe1ac8..9b4d3a25ee07 100644 --- a/usr.bin/vmstat/vmstat.c +++ b/usr.bin/vmstat/vmstat.c @@ -1465,6 +1465,7 @@ display_object(struct kinfo_vmobject *kvo) xo_emit("{:active/%5ju} ", (uintmax_t)kvo->kvo_active); xo_emit("{:inactive/%5ju} ", (uintmax_t)kvo->kvo_inactive); xo_emit("{:laundry/%5ju} ", (uintmax_t)kvo->kvo_laundry); + xo_emit("{:wired/%5ju} ", (uintmax_t)kvo->kvo_wired); xo_emit("{:refcount/%3d} ", kvo->kvo_ref_count); xo_emit("{:shadowcount/%3d} ", kvo->kvo_shadow_count); @@ -1568,7 +1569,8 @@ doobjstat(void) return; } xo_emit("{T:RES/%5s} {T:ACT/%5s} {T:INACT/%5s} {T:LAUND/%5s} " - "{T:REF/%3s} {T:SHD/%3s} {T:CM/%2s} {T:TP/%3s} {T:PATH/%s}\n"); + "{T:WIRED/%5s} {T:REF/%3s} {T:SHD/%3s} {T:CM/%2s} {T:TP/%3s} " + "{T:PATH/%s}\n"); xo_open_list("object"); for (i = 0; i < cnt; i++) display_object(&kvo[i]); From nobody Fri Oct 17 17:59:39 2025 X-Original-To: dev-commits-src-branches@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 4cpCJX3D09z6CRgj; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJW4zfSz3Whq; Fri, 17 Oct 2025 17:59:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D97v9D4673jqfMDVPnq1a0hMno3XBUfo37RLuqNA+ao=; b=JNYUN1JYzIrMSa+JWW5DWTsc7Y3QlB4X6BUkUO33WVHOboWER7sC7jzeDhG9J3r+jy47x7 HaoXOdHBKmI+PL+ydZVleXJA/1JYhKwbS4rZjldXWlfKEokNdU27N+cdhniclcqMX1Eyg3 4thvamzZBrkaIHc3RKqDdqZHbeLlcJb29VBiSRhlI9suF+KPKw9ghUo9JI//JVX3ACMF6/ WmTqoB6SAIlxU7tg0i4KqgYNtAxRQRxXdzi877CB3XzxZZ3SZb/hWODFa6X+a/OjoTHOEn 3SXyyVqKaNihQWnsEh8k9A0WRnwATS4HkghjVH2l4+JKVwpg0mASSPSdwmGm5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D97v9D4673jqfMDVPnq1a0hMno3XBUfo37RLuqNA+ao=; b=R7jAEp3c6pu0koal3YGbY3uya6iJBYPfebrxjndOhtsDPl/UcFjHYgCKdLdyv9WaUJMI3w BYpcEO7khi2ads/brRTLIRthG1ydlw1qUZAtn78ej21Rycw/CjTU+csnQ2ST7FgFg3vDTS qwLozpIuqy/3muLug3Q5MKzPmOpYFOWQ6KlJJ+MH36FlkS4mD4N+CwFP1O2vDln4MmR0Gb S7uHmmH2lVVfVetQs38MIcYpTvPCrQYVpTIKAyLNJjRtDas4N0zrCcbJ91dbW0WTkgjuVy NUS7VLz2D8Ie70UNOsyh1zdbPjQbHoOboyT50wVn4aNk5b626WdiROTpcM8+dg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723979; a=rsa-sha256; cv=none; b=ISFmq0psX2JkHXzC/Bc8L6JWD7QsdTVU2iT1NM5Cx6yepF6sIsYXhpJ0r/Bzy74GaYRpR4 NmZsZTzvok63Ox+f1v0ScZdVWnc05HIDgI2VtV1XqWtPFoJMA7e0CafwKeEyB0h5HfZ2hW D10xSMfLvyfOlNNzs67Ec4PPy26/9HQhuKx+sFack3D4OOm7DzCQh4t/1k2Sm/Qnz6NPk4 xMckIJPlb7V9eiKFEFqZg3HBRrPJcQUtX2YxCNqrfNFtMuxqq5ZsonrTCV5PaXtwjujKrq TX4iri/I4ZpXv+N+iQ9FmadHHGlZmqs+08UsdFJuGxAJNZXYihNKxfXDd9/1Cg== 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 4cpCJW4THxz14H1; Fri, 17 Oct 2025 17:59: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 59HHxdwB086320; Fri, 17 Oct 2025 17:59:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxdoN086317; Fri, 17 Oct 2025 17:59:39 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:39 GMT Message-Id: <202510171759.59HHxdoN086317@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: bdb41ce6077a - releng/15.0 - certctl.8: Update documentation of BUNDLE List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: bdb41ce6077a122e21e8ca1555f214fc9dc4131f Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=bdb41ce6077a122e21e8ca1555f214fc9dc4131f commit bdb41ce6077a122e21e8ca1555f214fc9dc4131f Author: Mark Johnston AuthorDate: 2025-10-14 13:32:46 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:59:12 +0000 certctl.8: Update documentation of BUNDLE - Fix a typo. - Provide the default path. Approved by: re (cperciva) Reviewed by: des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53001 (cherry picked from commit ec8e07e8fa94767dceb409c4c7c1840bba39172b) (cherry picked from commit 1de06221ccec1deb338b57c235009e2cd94676c8) --- usr.sbin/certctl/certctl.8 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/usr.sbin/certctl/certctl.8 b/usr.sbin/certctl/certctl.8 index edf993e1361a..e58da8e7ff84 100644 --- a/usr.sbin/certctl/certctl.8 +++ b/usr.sbin/certctl/certctl.8 @@ -24,7 +24,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd August 18, 2025 +.Dd October 9, 2025 .Dt CERTCTL 8 .Os .Sh NAME @@ -110,7 +110,7 @@ A copy of each trusted certificate is placed in and each untrusted certificate in .Ev UNTRUSTDESTDIR . In addition, a bundle containing the trusted certificates is placed in -.Ev BUNDLEFILE . +.Ev BUNDLE . .It Ic untrust Add the specified file to the untrusted list. .It Ic trust @@ -151,6 +151,8 @@ Default: .Pa ${DESTDIR}${DISTBASE}/etc/ssl/untrusted .It Ev BUNDLE File name of bundle to produce. +Default: +.Pa ${DESTDIR}${DISTBASE}/etc/ssl/cert.pem .El .Sh SEE ALSO .Xr openssl 1 From nobody Fri Oct 17 17:59:40 2025 X-Original-To: dev-commits-src-branches@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 4cpCJY39dqz6CRVM; Fri, 17 Oct 2025 17:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpCJX69hcz3WnK; Fri, 17 Oct 2025 17:59:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WnjX90eWIPJbeSIkDAgunYidDltkJmV56ux5uKJlEFg=; b=PfVp5MbfXFs++OQZw4mudwWs/rYxnV940CvgBdJgknO6sMjkHOZnTQwka5jVb6/6GG6+c7 Kq3Cry299F+/eFkeM9WR+beYMbNkMGMMO3bilIgNY4r9uP4uQUyJCS5Vuw3O1XjNpN03lk 5YY5zS1WAK2SUeZxBf2njAC+FORBJfceGUbgiwFpN3F+ZR/EqB7IUbI/nKmuj5U8vLuP0H EI43bvWy8FMWoXoPpNqfMu8tZL16PVY+SnlE+RN95l01/Xw/fBMvS7j4Y6pJu54kWwx1a8 IrekoWMPpZki2z1ymqyC6bb/9XjnQYxVtmkwpRzBtIDGxkCZkCWGtBhmO+Oqkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760723980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WnjX90eWIPJbeSIkDAgunYidDltkJmV56ux5uKJlEFg=; b=kUBB5JapFy50Vt04tZfQBa2rCICA3X5UwgbOSc/NvZ70cJPghzoO9Rzw50tsXGHRcAqreI nxZujSt0Gah0ovd2gSWQwERpPIr8ViqbPNskLqgIe29XYwBeZ4sPlldU6F/NNDiwvWZk0x e09FKVqlYbv+fAjcDWfxY00c/3e5K3iwZ/bqlCn+H+dHYYKSa5giOfcVWoa8f5vjNil5pZ eXRZBC5XsTF8CPJF0jHHhyIDVpNfpFG6sYGBTDOrAgirvvd4pzNXIt4dC1MABdutquIU1L n9CSKDpuqTnuve9hnISvqlUwWVk/UQaWKzjgos0ETHQPuPeYWhB12Eto9FnSsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760723980; a=rsa-sha256; cv=none; b=fS5TbTxHXOpTrFIMdpDX215FH/+MUcespsYUKV6HEXkcFxYUDAKh81E2ch3pactCHPLE8S Ucsz/lfReAtRqvOiPoJRxWRvxAZEl1fWKoyaepDOxZrPIbIYajUdtjfHFFha96S+ke8EQu knOYi2RutcimLvQNSTplHTNDf+iGd74vb1Ql25n4Nez62EkwpZECL26LeaBrQTPme/utz3 330lUBjsGIKTnm3rMt5O/yZfkoLrBaz9JHLs5PXKaK3K+Ib1Bsgpr55vcwhWgmJwqfb5WO 6wFpNz/LxuXjWCsS8bfSjxtMIiJkyQWb3v0AUr8qbc81BHQ97FS7NYxurI8rZg== 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 4cpCJX5Gpkz149y; Fri, 17 Oct 2025 17:59: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 59HHxe7c086354; Fri, 17 Oct 2025 17:59:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HHxeLn086351; Fri, 17 Oct 2025 17:59:40 GMT (envelope-from git) Date: Fri, 17 Oct 2025 17:59:40 GMT Message-Id: <202510171759.59HHxeLn086351@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: 1ae34f2dd8c0 - releng/15.0 - linker: Make it easier to find the VNET section layout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 1ae34f2dd8c0d407f6764822671f9409620ffad9 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=1ae34f2dd8c0d407f6764822671f9409620ffad9 commit 1ae34f2dd8c0d407f6764822671f9409620ffad9 Author: Mark Johnston AuthorDate: 2025-10-03 14:25:38 +0000 Commit: Colin Percival CommitDate: 2025-10-17 17:59:15 +0000 linker: Make it easier to find the VNET section layout When trying to find the address of a VNET variable from a debugger, it helps to have the original address of the VNET section. In particular, given the address of a vnet_entry_foo symbol, one wants to easily find the linker file that the symbol belongs to. In link_elf_obj.c, the section address for VNET and DPCPU sections is overwritten in link_elf_link_preload() and link_elf_load_file(). Add an "origaddr" field to store the original absolute address of the section base. In link_elf.c the elf_file_t already has the fields we want, but they were not getting filled out for the kernel itself. Fix that too, since that simplifies things for debuggers and improves consistency. Approved by: re (cperciva) Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D52730 (cherry picked from commit 07747afd516e710814fdc65afb0e5000d046f28f) (cherry picked from commit 5a926b3cd53b6c4516ad59c4693d7a999549c34c) --- sys/kern/link_elf.c | 6 ++++++ sys/kern/link_elf_obj.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/sys/kern/link_elf.c b/sys/kern/link_elf.c index bbebadc4c395..ebd203858b66 100644 --- a/sys/kern/link_elf.c +++ b/sys/kern/link_elf.c @@ -518,9 +518,15 @@ link_elf_init(void* arg) (void)link_elf_link_common_finish(linker_kernel_file); linker_kernel_file->flags |= LINKER_FILE_LINKED; TAILQ_INIT(&set_pcpu_list); + ef->pcpu_start = DPCPU_START; + ef->pcpu_stop = DPCPU_STOP; + ef->pcpu_base = DPCPU_START; #ifdef VIMAGE TAILQ_INIT(&set_vnet_list); vnet_save_init((void *)VNET_START, VNET_STOP - VNET_START); + ef->vnet_start = VNET_START; + ef->vnet_stop = VNET_STOP; + ef->vnet_base = VNET_START; #endif } diff --git a/sys/kern/link_elf_obj.c b/sys/kern/link_elf_obj.c index 151aab96f9be..a3a53a39bfd6 100644 --- a/sys/kern/link_elf_obj.c +++ b/sys/kern/link_elf_obj.c @@ -70,6 +70,7 @@ typedef struct { void *addr; + void *origaddr; /* Used by debuggers. */ Elf_Off size; int flags; /* Section flags. */ int sec; /* Original section number. */ @@ -492,7 +493,8 @@ link_elf_link_preload(linker_class_t cls, const char *filename, case SHT_FINI_ARRAY: if (shdr[i].sh_addr == 0) break; - ef->progtab[pb].addr = (void *)shdr[i].sh_addr; + ef->progtab[pb].addr = ef->progtab[pb].origaddr = + (void *)shdr[i].sh_addr; if (shdr[i].sh_type == SHT_PROGBITS) ef->progtab[pb].name = "<>"; #ifdef __amd64__ @@ -1088,6 +1090,8 @@ link_elf_load_file(linker_class_t cls, const char *filename, ef->progtab[pb].name = "<>"; if (ef->progtab[pb].name != NULL && !strcmp(ef->progtab[pb].name, DPCPU_SETNAME)) { + ef->progtab[pb].origaddr = + (void *)(uintptr_t)mapbase; ef->progtab[pb].addr = dpcpu_alloc(shdr[i].sh_size); if (ef->progtab[pb].addr == NULL) { @@ -1101,6 +1105,8 @@ link_elf_load_file(linker_class_t cls, const char *filename, #ifdef VIMAGE else if (ef->progtab[pb].name != NULL && !strcmp(ef->progtab[pb].name, VNET_SETNAME)) { + ef->progtab[pb].origaddr = + (void *)(uintptr_t)mapbase; ef->progtab[pb].addr = vnet_data_alloc(shdr[i].sh_size); if (ef->progtab[pb].addr == NULL) { From nobody Fri Oct 17 18:16:58 2025 X-Original-To: dev-commits-src-branches@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 4cpChV5DYZz6CSbZ; Fri, 17 Oct 2025 18:16: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpChV4XSfz3bBW; Fri, 17 Oct 2025 18:16:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760725018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9gHG9BX/J5jGRLhghSV7ZgnZkDtZNOZC+PkuCdYLrOQ=; b=cCPVmdH7jBAP/IuSTt3/pKgjFgZdcDr0/PIsat/n/FyAmGJHfOQm6RxXMSKl0C5WcjZkXS FFYx0EASq+yhYr19VV3/IzJNVoi0ScNHH46vwDYkOfW4yygl5eCqocQ6TylLT1j2d3TlxZ 1DnVHiES6Jn5eokiAPvQaJoYUpa/IcTctKqRC/KaYwPUgjjg0XVji/yuqkoRRpX724pAVN fycACaHAPM67+C9u4/AfTmHNOwyoHQcDFOaqrJxmeV9hmP1NvUJFYfsse/3cQXqjEUdxx7 CU8JP7TWDToOBiAiwenCuXgV9PeBaaOcBIUFGUJNBT566+lgTmlyj12H1rd11g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760725018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9gHG9BX/J5jGRLhghSV7ZgnZkDtZNOZC+PkuCdYLrOQ=; b=hr6bX3+Lzl22P5txkwOZJFZH8c5MOuHB6KNYXxhXQtv7Pfxb1OgTps8nLPilYYE6FRBR0z E3KiBtfIvSrWPsUgdq5yWQ+TQ151uT1cbZ5SebX12lE633bmUr5Colol/bhRrGP13wb/SU wSiAgRbLBpFgRREn6OjgNVdAvnmvS7yOvx6q0bLDM+eCvxG5xFFHcM5FLBajTyty6Srefp 1MNW57wL/1/JUjftQMUc3QJizVdPeP0IWXYHu2plkBH6Ok9fs4TmyBbWhLdXxtDZ9eunz9 zw+3+8Cfz/+kK15Z0I22Bs10QIibAb4AgtrqEZH07vTYqjrTAwS13CJwWO4VYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760725018; a=rsa-sha256; cv=none; b=vfwChMoq7lUGAPMiIhRw9G979eYMQFBv6XYSuW6YgSaOGHlxfCt/FswONnD6O8l8OYTE2G GyeQk7P3G6Ed4eSDkhmu2wthFBUQyMmBjgpeDKqldPt4FOfA4H5IxX4jk0+kGwae6SJP0W Sxm4ElIV+wU214PSzNjpVmTgIyiJRCfOKsQmohfbrGMQdUHtmkWCB4LKe3FA6yQ88d66nB b0fbfYM7vn0G2/fBo2BreGjZefc1Jho0VAdGKuQn6vhQO19nZx3PBOKGvNjOP2XPSZCuZh pSV2cGdWB3QZnF2WYf0EQ3HyVmRN5UNl7Z1a/Y+RKEpNva8nYY/KLjusnACpYQ== 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 4cpChV40hrz15NQ; Fri, 17 Oct 2025 18:16: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 59HIGwPB023737; Fri, 17 Oct 2025 18:16:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59HIGwjF023734; Fri, 17 Oct 2025 18:16:58 GMT (envelope-from git) Date: Fri, 17 Oct 2025 18:16:58 GMT Message-Id: <202510171816.59HIGwjF023734@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: 3edefa72bc4e - releng/15.0 - 15.0: Update to BETA2 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 3edefa72bc4e3f85681aeccaf73981ab38530a53 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=3edefa72bc4e3f85681aeccaf73981ab38530a53 commit 3edefa72bc4e3f85681aeccaf73981ab38530a53 Author: Colin Percival AuthorDate: 2025-10-17 18:16:15 +0000 Commit: Colin Percival CommitDate: 2025-10-17 18:16:15 +0000 15.0: Update to BETA2 Approved by: re (implicit) Sponsored by: https://www.patreon.com/cperciva --- 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 d933d23c1639..746b799a908d 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -51,7 +51,7 @@ TYPE="FreeBSD" REVISION="15.0" -BRANCH="BETA1" +BRANCH="BETA2" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi From nobody Sat Oct 18 12:02:10 2025 X-Original-To: dev-commits-src-branches@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 4cpgKZ3WdTz6D2hJ; Sat, 18 Oct 2025 12:02:10 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpgKZ3J3gz4B8N; Sat, 18 Oct 2025 12:02:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760788930; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0z0VwAv1VcNbmgFeDimOQZmWiq6QduiRmkoryIXtvEk=; b=R19yrZraOa69pw+X121WYr3dcW73mIBeH8iZFGUrs2L550IMCTdfe4Vky2PcZB1YVQW8VF ifi7A8yNsH2gmnkGS+s/sOZczpupy+p5bmqKS2zc0Xnd/ajdBggR/oXR6rW4KZVG5P+IrB 4zyAXoZrieJn6DqovG/xRigMygolIz4xtkAZujVujzT1qtmXLFsZXdXK6+oE1AqZAX9T6j BW6qGs8+BYUSOXUlkDF4E9eNfNGjkz1r3lShSIl9abz7qNi/rMev4nFzoutEwuLbQCOHr5 DqWXJ5qNRonlyQ7EUWRr9VBQH6tC6xZY2yBYjT3rFwTxOG0DA3pH99KOxTuLfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760788930; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0z0VwAv1VcNbmgFeDimOQZmWiq6QduiRmkoryIXtvEk=; b=YDgQR0c6bUGQyJFaKnCRKAFQwQaeVlN3ljhNx/9/7yZXOWx0NzJ6vyRlyuFpSIT4pGWe86 cUM4YkiPSRlI9Frf+mY4aJe1oItgHLlTZohkrEeVrZni3G/EfimytoTPTS6rOXkp7aX+Dq pdvqBb5mwvNXHJkBgrUYI9aw0SfKYxkgNKLtZjyGGyrac4lpuCtL5bFKAt0AlxR9aqxkc+ ob1S+re6yHZOBSWn8gVd00eDoBuWQyGORtsIDeFrb+JWb55r0ZaYjm83Jaih5v9T9U4KUA XP1+EWbsKDITiW1SqCBtrNwdS3gCvaE9Y9Af8iTD1G+V8l98LtxE2x44Le1Sbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760788930; a=rsa-sha256; cv=none; b=H/smmRWfIUOuSaF9a6h81VQsQyWtDlFWG/fVJKV3M/cqTeGMBpZiDuJ2MxDrdspzfKzq+n VrWaLTDaDDeiOpTehPa2jv9lcpVte2Ifsh5s2ogGTMa+SCaU2Fy3vp8Tz4B5RsEy0QYKPF H9An+g5bg5PWPbFwEtCKL5PUwAZUJA609RbNJzPuy2o170PasFTq9CYxZjZtcdVXzUnnYX DdZO43J4m0Pvq4hz46f0z8tpwmgBfbxyaIMqxNs37CfAiieMNuHd8gGBiP/q6kk74MR9hN 1SQ8mNF0bs7zQd/TgqC1pYZ65Oxpe8UYbYGJmYYrSXsfuPcKlhJHnQoooOHBtg== 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 4cpgKZ2qp3zh6v; Sat, 18 Oct 2025 12:02: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 59IC2ALe028471; Sat, 18 Oct 2025 12:02:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59IC2Af6028468; Sat, 18 Oct 2025 12:02:10 GMT (envelope-from git) Date: Sat, 18 Oct 2025 12:02:10 GMT Message-Id: <202510181202.59IC2Af6028468@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 2efda1b8c0f9 - stable/15 - carp6: revise the generation of ND6 NA List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 2efda1b8c0f9583f01273ee21902a08dda9cb8bb Auto-Submitted: auto-generated The branch stable/15 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=2efda1b8c0f9583f01273ee21902a08dda9cb8bb commit 2efda1b8c0f9583f01273ee21902a08dda9cb8bb Author: Andrey V. Elsukov AuthorDate: 2025-10-03 07:57:44 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-10-18 12:01:21 +0000 carp6: revise the generation of ND6 NA * use ND_NA_FLAG_ROUTER flag in carp_send_na() when we work as router. * use in6addr_any as destination address for nd6_na_output(), then it will use ipv6-all-nodes multicast address. * add in6_selectsrc_nbr() function that accepts additional argument ip6_moptions. Use this function from ND6 code to avoid cases when nd6_na_output/nd6_ns_output can not find source address for multicast destinations. * add some comments from RFC2461 for better understanding. * use tlladdr argument as flags and use ND6_NA_OPT_LLA when we need to add target link-layer address option, and ND6_NA_CARP_MASTER when we know that target address is CARP master. Then we can prepare correct CARP's mac address if target address is CARP master. * move blocks of code where multicast options is initialized and use it when destination address is multicast. Reviewed by: kp Obtained from: Yandex LLC Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D52825 (cherry picked from commit 716acd9367df49d44f29eeb783706025f3a04c65) --- sys/netinet/ip_carp.c | 27 ++++++++--- sys/netinet6/in6_src.c | 54 ++++++++++++++++------ sys/netinet6/ip6_var.h | 2 + sys/netinet6/nd6.h | 4 ++ sys/netinet6/nd6_nbr.c | 121 ++++++++++++++++++++++--------------------------- 5 files changed, 119 insertions(+), 89 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index d3d7957cf087..4f553b9aac5e 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -1640,18 +1640,31 @@ carp_iamatch(struct ifaddr *ifa, uint8_t **enaddr) static void carp_send_na(struct carp_softc *sc) { - static struct in6_addr mcast = IN6ADDR_LINKLOCAL_ALLNODES_INIT; struct ifaddr *ifa; - struct in6_addr *in6; + int flags; + /* + * Sending Unsolicited Neighbor Advertisements + * + * If the node is a router, we MUST set the Router flag to one. + * We set Override flag to one and send link-layer address option, + * thus neighboring nodes will install the new link-layer address. + */ + flags = ND_NA_FLAG_OVERRIDE; + if (V_ip6_forwarding) + flags |= ND_NA_FLAG_ROUTER; CARP_FOREACH_IFA(sc, ifa) { if (ifa->ifa_addr->sa_family != AF_INET6) continue; - - in6 = IFA_IN6(ifa); - nd6_na_output(sc->sc_carpdev, &mcast, in6, - ND_NA_FLAG_OVERRIDE, 1, NULL); - DELAY(1000); /* XXX */ + /* + * We use unspecified address as destination here to avoid + * scope initialization for each call. + * nd6_na_output() will use all nodes multicast address if + * destinaion address is unspecified. + */ + nd6_na_output(sc->sc_carpdev, &in6addr_any, IFA_IN6(ifa), + flags, ND6_NA_OPT_LLA | ND6_NA_CARP_MASTER, NULL); + DELAY(1000); /* RetransTimer */ } } diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c index dd6864482b3c..3e55c6e5fc05 100644 --- a/sys/netinet6/in6_src.c +++ b/sys/netinet6/in6_src.c @@ -132,8 +132,8 @@ static int in6_selectif(struct sockaddr_in6 *, struct ip6_pktopts *, struct ip6_moptions *, struct ifnet **, struct ifnet *, u_int); static int in6_selectsrc(uint32_t, struct sockaddr_in6 *, - struct ip6_pktopts *, struct inpcb *, struct ucred *, - struct ifnet **, struct in6_addr *); + struct ip6_pktopts *, struct ip6_moptions *, struct inpcb *, + struct ucred *, struct ifnet **, struct in6_addr *); static struct in6_addrpolicy *lookup_addrsel_policy(struct sockaddr_in6 *); @@ -173,8 +173,8 @@ static struct in6_addrpolicy *match_addrsel_policy(struct sockaddr_in6 *); static int in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, - struct ip6_pktopts *opts, struct inpcb *inp, struct ucred *cred, - struct ifnet **ifpp, struct in6_addr *srcp) + struct ip6_pktopts *opts, struct ip6_moptions *mopts, struct inpcb *inp, + struct ucred *cred, struct ifnet **ifpp, struct in6_addr *srcp) { struct rm_priotracker in6_ifa_tracker; struct in6_addr dst, tmp; @@ -186,7 +186,6 @@ in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, u_int32_t odstzone; int prefer_tempaddr; int error; - struct ip6_moptions *mopts; NET_EPOCH_ASSERT(); KASSERT(srcp != NULL, ("%s: srcp is NULL", __func__)); @@ -205,13 +204,6 @@ in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, *ifpp = NULL; } - if (inp != NULL) { - INP_LOCK_ASSERT(inp); - mopts = inp->in6p_moptions; - } else { - mopts = NULL; - } - /* * If the source address is explicitly specified by the caller, * check if the requested source address is indeed a unicast address @@ -552,10 +544,13 @@ in6_selectsrc_socket(struct sockaddr_in6 *dstsock, struct ip6_pktopts *opts, uint32_t fibnum; int error; + INP_LOCK_ASSERT(inp); + fibnum = inp->inp_inc.inc_fibnum; retifp = NULL; - error = in6_selectsrc(fibnum, dstsock, opts, inp, cred, &retifp, srcp); + error = in6_selectsrc(fibnum, dstsock, opts, inp->in6p_moptions, + inp, cred, &retifp, srcp); if (error != 0) return (error); @@ -583,7 +578,7 @@ in6_selectsrc_socket(struct sockaddr_in6 *dstsock, struct ip6_pktopts *opts, * Stores selected address to @srcp. * Returns 0 on success. * - * Used by non-socket based consumers (ND code mostly) + * Used by non-socket based consumers */ int in6_selectsrc_addr(uint32_t fibnum, const struct in6_addr *dst, @@ -602,13 +597,42 @@ in6_selectsrc_addr(uint32_t fibnum, const struct in6_addr *dst, dst_sa.sin6_scope_id = scopeid; sa6_embedscope(&dst_sa, 0); - error = in6_selectsrc(fibnum, &dst_sa, NULL, NULL, NULL, &retifp, srcp); + error = in6_selectsrc(fibnum, &dst_sa, NULL, NULL, + NULL, NULL, &retifp, srcp); if (hlim != NULL) *hlim = in6_selecthlim(NULL, retifp); return (error); } +/* + * Select source address based on @fibnum, @dst and @mopts. + * Stores selected address to @srcp. + * Returns 0 on success. + * + * Used by non-socket based consumers (ND code mostly) + */ +int +in6_selectsrc_nbr(uint32_t fibnum, const struct in6_addr *dst, + struct ip6_moptions *mopts, struct ifnet *ifp, struct in6_addr *srcp) +{ + struct sockaddr_in6 dst_sa; + struct ifnet *retifp; + int error; + + retifp = ifp; + bzero(&dst_sa, sizeof(dst_sa)); + dst_sa.sin6_family = AF_INET6; + dst_sa.sin6_len = sizeof(dst_sa); + dst_sa.sin6_addr = *dst; + dst_sa.sin6_scope_id = ntohs(in6_getscope(dst)); + sa6_embedscope(&dst_sa, 0); + + error = in6_selectsrc(fibnum, &dst_sa, NULL, mopts, + NULL, NULL, &retifp, srcp); + return (error); +} + static struct nhop_object * cache_route(uint32_t fibnum, const struct sockaddr_in6 *dst, struct route_in6 *ro, uint32_t flowid) diff --git a/sys/netinet6/ip6_var.h b/sys/netinet6/ip6_var.h index 12b00d4f9934..cc6f9efbe4b4 100644 --- a/sys/netinet6/ip6_var.h +++ b/sys/netinet6/ip6_var.h @@ -428,6 +428,8 @@ int in6_selectsrc_socket(struct sockaddr_in6 *, struct ip6_pktopts *, struct inpcb *, struct ucred *, int, struct in6_addr *, int *); int in6_selectsrc_addr(uint32_t, const struct in6_addr *, uint32_t, struct ifnet *, struct in6_addr *, int *); +int in6_selectsrc_nbr(uint32_t, const struct in6_addr *, + struct ip6_moptions *, struct ifnet *, struct in6_addr *); int in6_selectroute(struct sockaddr_in6 *, struct ip6_pktopts *, struct ip6_moptions *, struct route_in6 *, struct ifnet **, struct nhop_object **, u_int, uint32_t); diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h index 9cb2571da58b..ae1de36f73e0 100644 --- a/sys/netinet6/nd6.h +++ b/sys/netinet6/nd6.h @@ -170,6 +170,10 @@ struct in6_ndifreq { #define NDPRF_ONLINK 0x1 #define NDPRF_DETACHED 0x2 +/* ND6 NA output flags */ +#define ND6_NA_OPT_LLA 0x01 +#define ND6_NA_CARP_MASTER 0x02 + /* protocol constants */ #define MAX_RTR_SOLICITATION_DELAY 1 /* 1sec */ #define RTR_SOLICITATION_INTERVAL 4 /* 4sec */ diff --git a/sys/netinet6/nd6_nbr.c b/sys/netinet6/nd6_nbr.c index 640348a1d198..45ab5841b291 100644 --- a/sys/netinet6/nd6_nbr.c +++ b/sys/netinet6/nd6_nbr.c @@ -244,10 +244,9 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) * In implementation, we add target link-layer address by default. * We do not add one in MUST NOT cases. */ - if (!IN6_IS_ADDR_MULTICAST(&daddr6)) - tlladdr = 0; - else - tlladdr = 1; + tlladdr = 0; + if (IN6_IS_ADDR_MULTICAST(&daddr6)) + tlladdr |= ND6_NA_OPT_LLA; /* * Target address (taddr6) must be either: @@ -256,9 +255,11 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) * (3) "tentative" address on which DAD is being performed. */ /* (1) and (3) check. */ - if (ifp->if_carp) + if (ifp->if_carp) { ifa = (*carp_iamatch6_p)(ifp, &taddr6); - else + if (ifa != NULL) + tlladdr |= ND6_NA_CARP_MASTER; + } else ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &taddr6); /* (2) check. */ @@ -321,33 +322,29 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) goto freeit; } + /* + * If the Target Address is either an anycast address or a unicast + * address for which the node is providing proxy service, or the Target + * Link-Layer Address option is not included, the Override flag SHOULD + * be set to zero. Otherwise, the Override flag SHOULD be set to one. + */ + if (anycast == 0 && proxy == 0 && (tlladdr & ND6_NA_OPT_LLA) != 0) + rflag |= ND_NA_FLAG_OVERRIDE; /* * If the source address is unspecified address, entries must not * be created or updated. - * It looks that sender is performing DAD. Output NA toward - * all-node multicast address, to tell the sender that I'm using - * the address. + * It looks that sender is performing DAD. nd6_na_output() will + * send NA toward all-node multicast address, to tell the sender + * that I'm using the address. * S bit ("solicited") must be zero. */ - if (IN6_IS_ADDR_UNSPECIFIED(&saddr6)) { - struct in6_addr in6_all; - - in6_all = in6addr_linklocal_allnodes; - if (in6_setscope(&in6_all, ifp, NULL) != 0) - goto bad; - nd6_na_output_fib(ifp, &in6_all, &taddr6, - ((anycast || proxy || !tlladdr) ? 0 : ND_NA_FLAG_OVERRIDE) | - rflag, tlladdr, proxy ? (struct sockaddr *)&proxydl : NULL, - M_GETFIB(m)); - goto freeit; + if (!IN6_IS_ADDR_UNSPECIFIED(&saddr6)) { + nd6_cache_lladdr(ifp, &saddr6, lladdr, lladdrlen, + ND_NEIGHBOR_SOLICIT, 0); + rflag |= ND_NA_FLAG_SOLICITED; } - nd6_cache_lladdr(ifp, &saddr6, lladdr, lladdrlen, - ND_NEIGHBOR_SOLICIT, 0); - - nd6_na_output_fib(ifp, &saddr6, &taddr6, - ((anycast || proxy || !tlladdr) ? 0 : ND_NA_FLAG_OVERRIDE) | - rflag | ND_NA_FLAG_SOLICITED, tlladdr, + nd6_na_output_fib(ifp, &saddr6, &taddr6, rflag, tlladdr, proxy ? (struct sockaddr *)&proxydl : NULL, M_GETFIB(m)); freeit: if (ifa != NULL) @@ -439,13 +436,6 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, return; M_SETFIB(m, fibnum); - if (daddr6 == NULL || IN6_IS_ADDR_MULTICAST(daddr6)) { - m->m_flags |= M_MCAST; - im6o.im6o_multicast_ifp = ifp; - im6o.im6o_multicast_hlim = 255; - im6o.im6o_multicast_loop = 0; - } - icmp6len = sizeof(*nd_ns); m->m_pkthdr.len = m->m_len = sizeof(*ip6) + icmp6len; m->m_data += max_linkhdr; /* or M_ALIGN() equivalent? */ @@ -470,6 +460,12 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, if (in6_setscope(&ip6->ip6_dst, ifp, NULL) != 0) goto bad; } + if (IN6_IS_ADDR_MULTICAST(&ip6->ip6_dst)) { + m->m_flags |= M_MCAST; + im6o.im6o_multicast_ifp = ifp; + im6o.im6o_multicast_hlim = 255; + im6o.im6o_multicast_loop = 0; + } if (nonce == NULL) { char ip6buf[INET6_ADDRSTRLEN]; struct ifaddr *ifa = NULL; @@ -491,20 +487,16 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, saddr6); if (ifa == NULL) { int error; - struct in6_addr dst6, src6; - uint32_t scopeid; - in6_splitscope(&ip6->ip6_dst, &dst6, &scopeid); - error = in6_selectsrc_addr(fibnum, &dst6, - scopeid, ifp, &src6, NULL); + error = in6_selectsrc_nbr(fibnum, &ip6->ip6_dst, &im6o, + ifp, &ip6->ip6_src); if (error) { nd6log((LOG_DEBUG, "%s: source can't be " "determined: dst=%s, error=%d\n", __func__, - ip6_sprintf(ip6buf, &dst6), + ip6_sprintf(ip6buf, &ip6->ip6_dst), error)); goto bad; } - ip6->ip6_src = src6; } else ip6->ip6_src = *saddr6; @@ -967,7 +959,9 @@ nd6_na_input(struct mbuf *m, int off, int icmp6len) * - proxy advertisement delay rule (RFC2461 7.2.8, last paragraph, SHOULD) * - anycast advertisement delay rule (RFC2461 7.2.7, SHOULD) * - * tlladdr - 1 if include target link-layer address + * tlladdr: + * - 0x01 if include target link-layer address + * - 0x02 if target address is CARP MASTER * sdl0 - sockaddr_dl (= proxy NA) or NULL */ static void @@ -980,8 +974,7 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, struct ip6_hdr *ip6; struct nd_neighbor_advert *nd_na; struct ip6_moptions im6o; - struct in6_addr daddr6, dst6, src6; - uint32_t scopeid; + struct in6_addr daddr6; NET_EPOCH_ASSERT(); @@ -1005,13 +998,6 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, return; M_SETFIB(m, fibnum); - if (IN6_IS_ADDR_MULTICAST(&daddr6)) { - m->m_flags |= M_MCAST; - im6o.im6o_multicast_ifp = ifp; - im6o.im6o_multicast_hlim = 255; - im6o.im6o_multicast_loop = 0; - } - icmp6len = sizeof(*nd_na); m->m_pkthdr.len = m->m_len = sizeof(struct ip6_hdr) + icmp6len; m->m_data += max_linkhdr; /* or M_ALIGN() equivalent? */ @@ -1023,26 +1009,24 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, ip6->ip6_vfc |= IPV6_VERSION; ip6->ip6_nxt = IPPROTO_ICMPV6; ip6->ip6_hlim = 255; + if (IN6_IS_ADDR_UNSPECIFIED(&daddr6)) { /* reply to DAD */ - daddr6.s6_addr16[0] = IPV6_ADDR_INT16_MLL; - daddr6.s6_addr16[1] = 0; - daddr6.s6_addr32[1] = 0; - daddr6.s6_addr32[2] = 0; - daddr6.s6_addr32[3] = IPV6_ADDR_INT32_ONE; + daddr6 = in6addr_linklocal_allnodes; if (in6_setscope(&daddr6, ifp, NULL)) goto bad; flags &= ~ND_NA_FLAG_SOLICITED; } - ip6->ip6_dst = daddr6; + if (IN6_IS_ADDR_MULTICAST(&daddr6)) { + m->m_flags |= M_MCAST; + im6o.im6o_multicast_ifp = ifp; + im6o.im6o_multicast_hlim = 255; + im6o.im6o_multicast_loop = 0; + } - /* - * Select a source whose scope is the same as that of the dest. - */ - in6_splitscope(&daddr6, &dst6, &scopeid); - error = in6_selectsrc_addr(fibnum, &dst6, - scopeid, ifp, &src6, NULL); + ip6->ip6_dst = daddr6; + error = in6_selectsrc_nbr(fibnum, &daddr6, &im6o, ifp, &ip6->ip6_src); if (error) { char ip6buf[INET6_ADDRSTRLEN]; nd6log((LOG_DEBUG, "nd6_na_output: source can't be " @@ -1050,28 +1034,31 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, ip6_sprintf(ip6buf, &daddr6), error)); goto bad; } - ip6->ip6_src = src6; nd_na = (struct nd_neighbor_advert *)(ip6 + 1); nd_na->nd_na_type = ND_NEIGHBOR_ADVERT; nd_na->nd_na_code = 0; nd_na->nd_na_target = *taddr6; in6_clearscope(&nd_na->nd_na_target); /* XXX */ + /* + * If we respond from CARP address, we need to prepare mac address + * for carp_output(). + */ + if (ifp->if_carp && (tlladdr & ND6_NA_CARP_MASTER)) + mac = (*carp_macmatch6_p)(ifp, m, taddr6); /* * "tlladdr" indicates NS's condition for adding tlladdr or not. * see nd6_ns_input() for details. * Basically, if NS packet is sent to unicast/anycast addr, * target lladdr option SHOULD NOT be included. */ - if (tlladdr) { + if (tlladdr & ND6_NA_OPT_LLA) { /* * sdl0 != NULL indicates proxy NA. If we do proxy, use * lladdr in sdl0. If we are not proxying (sending NA for * my address) use lladdr configured for the interface. */ if (sdl0 == NULL) { - if (ifp->if_carp) - mac = (*carp_macmatch6_p)(ifp, m, taddr6); if (mac == NULL) mac = nd6_ifptomac(ifp); } else if (sdl0->sa_family == AF_LINK) { @@ -1081,7 +1068,7 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, mac = LLADDR(sdl); } } - if (tlladdr && mac) { + if ((tlladdr & ND6_NA_OPT_LLA) && mac != NULL) { int optlen = sizeof(struct nd_opt_hdr) + ifp->if_addrlen; struct nd_opt_hdr *nd_opt = (struct nd_opt_hdr *)(nd_na + 1); From nobody Sat Oct 18 12:03:32 2025 X-Original-To: dev-commits-src-branches@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 4cpgM85qwkz6D34V; Sat, 18 Oct 2025 12:03:32 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpgM85c47z3C3N; Sat, 18 Oct 2025 12:03:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760789012; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HE+fnS3r6azAwq3Ivc5O0xLKvXqoYepuGH+ZqxNNfUY=; b=B4w6L9BRlxvgedmasjYWaxG9BYoPLiRmvnKpBgGfiDN/R1fS0wXST3xxCMO4rvz8fvlzHC qGlF+EYJikj34U1IBOlmshvwpAfHKJ52gVaNfSTuCrfjfsGtq5htC9r1TWb8EJDAkeeGlz MbrEV4ECXHv1xNJc4MBPBQef5ct9wkxFUahAq2J4to83rsmjZc9cVWnCg0hM9BrVfiIrto UsPw2C825hCzXk8oOxl2DHttuQexreVj0gfna2FXtdV9394MPJEDND3XqZW6TadtaCz+os jWnUrFf5cjcBs0mcjzRmOKaQ1LFzTshM8SsXJ5fNqD3SeSaGDWFRfegyPB/7gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760789012; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HE+fnS3r6azAwq3Ivc5O0xLKvXqoYepuGH+ZqxNNfUY=; b=Cr2+sFJK4o9xK0z+ndRbzHjHdmFK00RQUab0PxGFJZcJaZKI363owKJjCwiAkeuog/q/ym rrUj0OQpbOuUvGZghBmUC0VxH+VxYPLb23yQEz2SzAYQZHROcKkXqog4k+qUxCOF80crxL wuhnO9mWlu4SH0UR9BOubxZC4mnnArVbnYoWjiQAOsCH3g2xIkE3NWen82mUdPYI34oDxE 7bQdzoqz7Qq7hPCHwbqmNgbLrcc46cgaPAEmvCsjZW45ENC/e5WLbVUcEGAbbmgao7Pqgw I5Klmf9PzRXfF14ZMFuctHmTwA1GIzz54fZiaMmZbVqxUst7AJPkgq7r0TX6rQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760789012; a=rsa-sha256; cv=none; b=V+dbJ1iMU9ovA7rUwzbUS0Cim82iWtJN9v0DGBaw9vmHCvQCApYO2AECBtP6vQssQvC93w LHDLjH+VJuGm8+L2d24delZBDpXm84An+M5jXxB8RD/hMTnjui5/k9MSnTuImxpZ1DjBrN uYJlzSWSe4P5JOsX9t6XZwejJJWoZpnfoOQ80ObaI5bw1ao9o50GIvgUG8dgoHpyBKMhS6 IeKq75OemUAfCgn6+m/GURY02vhTiKKlUMhXh8r7nmGr/Fyi/0heBCR1UGtylnCh/NxjA2 S2xXmzX8KzslhtsqQTnktGkVONlIW8NOs0pIa6eOb+/AKHnRLC2fFd7/tIOzTQ== 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 4cpgM84x6Vzh8r; Sat, 18 Oct 2025 12:03: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 59IC3W3Q032257; Sat, 18 Oct 2025 12:03:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59IC3W9m032254; Sat, 18 Oct 2025 12:03:32 GMT (envelope-from git) Date: Sat, 18 Oct 2025 12:03:32 GMT Message-Id: <202510181203.59IC3W9m032254@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 7a2a874a0b46 - stable/14 - carp6: revise the generation of ND6 NA List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7a2a874a0b46db3c3829151b207f738852bd77c0 Auto-Submitted: auto-generated The branch stable/14 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=7a2a874a0b46db3c3829151b207f738852bd77c0 commit 7a2a874a0b46db3c3829151b207f738852bd77c0 Author: Andrey V. Elsukov AuthorDate: 2025-10-03 07:57:44 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-10-18 12:02:49 +0000 carp6: revise the generation of ND6 NA * use ND_NA_FLAG_ROUTER flag in carp_send_na() when we work as router. * use in6addr_any as destination address for nd6_na_output(), then it will use ipv6-all-nodes multicast address. * add in6_selectsrc_nbr() function that accepts additional argument ip6_moptions. Use this function from ND6 code to avoid cases when nd6_na_output/nd6_ns_output can not find source address for multicast destinations. * add some comments from RFC2461 for better understanding. * use tlladdr argument as flags and use ND6_NA_OPT_LLA when we need to add target link-layer address option, and ND6_NA_CARP_MASTER when we know that target address is CARP master. Then we can prepare correct CARP's mac address if target address is CARP master. * move blocks of code where multicast options is initialized and use it when destination address is multicast. Reviewed by: kp Obtained from: Yandex LLC Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D52825 (cherry picked from commit 716acd9367df49d44f29eeb783706025f3a04c65) --- sys/netinet/ip_carp.c | 27 ++++++++--- sys/netinet6/in6_src.c | 54 ++++++++++++++++------ sys/netinet6/ip6_var.h | 2 + sys/netinet6/nd6.h | 4 ++ sys/netinet6/nd6_nbr.c | 121 ++++++++++++++++++++++--------------------------- 5 files changed, 119 insertions(+), 89 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 97815ea089b5..cf8ebd8d4bfc 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -1200,18 +1200,31 @@ carp_iamatch(struct ifaddr *ifa, uint8_t **enaddr) static void carp_send_na(struct carp_softc *sc) { - static struct in6_addr mcast = IN6ADDR_LINKLOCAL_ALLNODES_INIT; struct ifaddr *ifa; - struct in6_addr *in6; + int flags; + /* + * Sending Unsolicited Neighbor Advertisements + * + * If the node is a router, we MUST set the Router flag to one. + * We set Override flag to one and send link-layer address option, + * thus neighboring nodes will install the new link-layer address. + */ + flags = ND_NA_FLAG_OVERRIDE; + if (V_ip6_forwarding) + flags |= ND_NA_FLAG_ROUTER; CARP_FOREACH_IFA(sc, ifa) { if (ifa->ifa_addr->sa_family != AF_INET6) continue; - - in6 = IFA_IN6(ifa); - nd6_na_output(sc->sc_carpdev, &mcast, in6, - ND_NA_FLAG_OVERRIDE, 1, NULL); - DELAY(1000); /* XXX */ + /* + * We use unspecified address as destination here to avoid + * scope initialization for each call. + * nd6_na_output() will use all nodes multicast address if + * destinaion address is unspecified. + */ + nd6_na_output(sc->sc_carpdev, &in6addr_any, IFA_IN6(ifa), + flags, ND6_NA_OPT_LLA | ND6_NA_CARP_MASTER, NULL); + DELAY(1000); /* RetransTimer */ } } diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c index 52fe78a1a83b..91e75b1925b5 100644 --- a/sys/netinet6/in6_src.c +++ b/sys/netinet6/in6_src.c @@ -134,8 +134,8 @@ static int in6_selectif(struct sockaddr_in6 *, struct ip6_pktopts *, struct ip6_moptions *, struct ifnet **, struct ifnet *, u_int); static int in6_selectsrc(uint32_t, struct sockaddr_in6 *, - struct ip6_pktopts *, struct inpcb *, struct ucred *, - struct ifnet **, struct in6_addr *); + struct ip6_pktopts *, struct ip6_moptions *, struct inpcb *, + struct ucred *, struct ifnet **, struct in6_addr *); static struct in6_addrpolicy *lookup_addrsel_policy(struct sockaddr_in6 *); @@ -175,8 +175,8 @@ static struct in6_addrpolicy *match_addrsel_policy(struct sockaddr_in6 *); static int in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, - struct ip6_pktopts *opts, struct inpcb *inp, struct ucred *cred, - struct ifnet **ifpp, struct in6_addr *srcp) + struct ip6_pktopts *opts, struct ip6_moptions *mopts, struct inpcb *inp, + struct ucred *cred, struct ifnet **ifpp, struct in6_addr *srcp) { struct rm_priotracker in6_ifa_tracker; struct in6_addr dst, tmp; @@ -188,7 +188,6 @@ in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, u_int32_t odstzone; int prefer_tempaddr; int error; - struct ip6_moptions *mopts; NET_EPOCH_ASSERT(); KASSERT(srcp != NULL, ("%s: srcp is NULL", __func__)); @@ -207,13 +206,6 @@ in6_selectsrc(uint32_t fibnum, struct sockaddr_in6 *dstsock, *ifpp = NULL; } - if (inp != NULL) { - INP_LOCK_ASSERT(inp); - mopts = inp->in6p_moptions; - } else { - mopts = NULL; - } - /* * If the source address is explicitly specified by the caller, * check if the requested source address is indeed a unicast address @@ -554,10 +546,13 @@ in6_selectsrc_socket(struct sockaddr_in6 *dstsock, struct ip6_pktopts *opts, uint32_t fibnum; int error; + INP_LOCK_ASSERT(inp); + fibnum = inp->inp_inc.inc_fibnum; retifp = NULL; - error = in6_selectsrc(fibnum, dstsock, opts, inp, cred, &retifp, srcp); + error = in6_selectsrc(fibnum, dstsock, opts, inp->in6p_moptions, + inp, cred, &retifp, srcp); if (error != 0) return (error); @@ -585,7 +580,7 @@ in6_selectsrc_socket(struct sockaddr_in6 *dstsock, struct ip6_pktopts *opts, * Stores selected address to @srcp. * Returns 0 on success. * - * Used by non-socket based consumers (ND code mostly) + * Used by non-socket based consumers */ int in6_selectsrc_addr(uint32_t fibnum, const struct in6_addr *dst, @@ -604,13 +599,42 @@ in6_selectsrc_addr(uint32_t fibnum, const struct in6_addr *dst, dst_sa.sin6_scope_id = scopeid; sa6_embedscope(&dst_sa, 0); - error = in6_selectsrc(fibnum, &dst_sa, NULL, NULL, NULL, &retifp, srcp); + error = in6_selectsrc(fibnum, &dst_sa, NULL, NULL, + NULL, NULL, &retifp, srcp); if (hlim != NULL) *hlim = in6_selecthlim(NULL, retifp); return (error); } +/* + * Select source address based on @fibnum, @dst and @mopts. + * Stores selected address to @srcp. + * Returns 0 on success. + * + * Used by non-socket based consumers (ND code mostly) + */ +int +in6_selectsrc_nbr(uint32_t fibnum, const struct in6_addr *dst, + struct ip6_moptions *mopts, struct ifnet *ifp, struct in6_addr *srcp) +{ + struct sockaddr_in6 dst_sa; + struct ifnet *retifp; + int error; + + retifp = ifp; + bzero(&dst_sa, sizeof(dst_sa)); + dst_sa.sin6_family = AF_INET6; + dst_sa.sin6_len = sizeof(dst_sa); + dst_sa.sin6_addr = *dst; + dst_sa.sin6_scope_id = ntohs(in6_getscope(dst)); + sa6_embedscope(&dst_sa, 0); + + error = in6_selectsrc(fibnum, &dst_sa, NULL, mopts, + NULL, NULL, &retifp, srcp); + return (error); +} + static struct nhop_object * cache_route(uint32_t fibnum, const struct sockaddr_in6 *dst, struct route_in6 *ro, uint32_t flowid) diff --git a/sys/netinet6/ip6_var.h b/sys/netinet6/ip6_var.h index 464b74c4fd88..a365c6bb6268 100644 --- a/sys/netinet6/ip6_var.h +++ b/sys/netinet6/ip6_var.h @@ -403,6 +403,8 @@ int in6_selectsrc_socket(struct sockaddr_in6 *, struct ip6_pktopts *, struct inpcb *, struct ucred *, int, struct in6_addr *, int *); int in6_selectsrc_addr(uint32_t, const struct in6_addr *, uint32_t, struct ifnet *, struct in6_addr *, int *); +int in6_selectsrc_nbr(uint32_t, const struct in6_addr *, + struct ip6_moptions *, struct ifnet *, struct in6_addr *); int in6_selectroute(struct sockaddr_in6 *, struct ip6_pktopts *, struct ip6_moptions *, struct route_in6 *, struct ifnet **, struct nhop_object **, u_int, uint32_t); diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h index 1db1b666c60b..6d717a321027 100644 --- a/sys/netinet6/nd6.h +++ b/sys/netinet6/nd6.h @@ -170,6 +170,10 @@ struct in6_ndifreq { #define NDPRF_ONLINK 0x1 #define NDPRF_DETACHED 0x2 +/* ND6 NA output flags */ +#define ND6_NA_OPT_LLA 0x01 +#define ND6_NA_CARP_MASTER 0x02 + /* protocol constants */ #define MAX_RTR_SOLICITATION_DELAY 1 /* 1sec */ #define RTR_SOLICITATION_INTERVAL 4 /* 4sec */ diff --git a/sys/netinet6/nd6_nbr.c b/sys/netinet6/nd6_nbr.c index 353db66c2323..db0894df4923 100644 --- a/sys/netinet6/nd6_nbr.c +++ b/sys/netinet6/nd6_nbr.c @@ -244,10 +244,9 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) * In implementation, we add target link-layer address by default. * We do not add one in MUST NOT cases. */ - if (!IN6_IS_ADDR_MULTICAST(&daddr6)) - tlladdr = 0; - else - tlladdr = 1; + tlladdr = 0; + if (IN6_IS_ADDR_MULTICAST(&daddr6)) + tlladdr |= ND6_NA_OPT_LLA; /* * Target address (taddr6) must be either: @@ -256,9 +255,11 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) * (3) "tentative" address on which DAD is being performed. */ /* (1) and (3) check. */ - if (ifp->if_carp) + if (ifp->if_carp) { ifa = (*carp_iamatch6_p)(ifp, &taddr6); - else + if (ifa != NULL) + tlladdr |= ND6_NA_CARP_MASTER; + } else ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &taddr6); /* (2) check. */ @@ -321,33 +322,29 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len) goto freeit; } + /* + * If the Target Address is either an anycast address or a unicast + * address for which the node is providing proxy service, or the Target + * Link-Layer Address option is not included, the Override flag SHOULD + * be set to zero. Otherwise, the Override flag SHOULD be set to one. + */ + if (anycast == 0 && proxy == 0 && (tlladdr & ND6_NA_OPT_LLA) != 0) + rflag |= ND_NA_FLAG_OVERRIDE; /* * If the source address is unspecified address, entries must not * be created or updated. - * It looks that sender is performing DAD. Output NA toward - * all-node multicast address, to tell the sender that I'm using - * the address. + * It looks that sender is performing DAD. nd6_na_output() will + * send NA toward all-node multicast address, to tell the sender + * that I'm using the address. * S bit ("solicited") must be zero. */ - if (IN6_IS_ADDR_UNSPECIFIED(&saddr6)) { - struct in6_addr in6_all; - - in6_all = in6addr_linklocal_allnodes; - if (in6_setscope(&in6_all, ifp, NULL) != 0) - goto bad; - nd6_na_output_fib(ifp, &in6_all, &taddr6, - ((anycast || proxy || !tlladdr) ? 0 : ND_NA_FLAG_OVERRIDE) | - rflag, tlladdr, proxy ? (struct sockaddr *)&proxydl : NULL, - M_GETFIB(m)); - goto freeit; + if (!IN6_IS_ADDR_UNSPECIFIED(&saddr6)) { + nd6_cache_lladdr(ifp, &saddr6, lladdr, lladdrlen, + ND_NEIGHBOR_SOLICIT, 0); + rflag |= ND_NA_FLAG_SOLICITED; } - nd6_cache_lladdr(ifp, &saddr6, lladdr, lladdrlen, - ND_NEIGHBOR_SOLICIT, 0); - - nd6_na_output_fib(ifp, &saddr6, &taddr6, - ((anycast || proxy || !tlladdr) ? 0 : ND_NA_FLAG_OVERRIDE) | - rflag | ND_NA_FLAG_SOLICITED, tlladdr, + nd6_na_output_fib(ifp, &saddr6, &taddr6, rflag, tlladdr, proxy ? (struct sockaddr *)&proxydl : NULL, M_GETFIB(m)); freeit: if (ifa != NULL) @@ -439,13 +436,6 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, return; M_SETFIB(m, fibnum); - if (daddr6 == NULL || IN6_IS_ADDR_MULTICAST(daddr6)) { - m->m_flags |= M_MCAST; - im6o.im6o_multicast_ifp = ifp; - im6o.im6o_multicast_hlim = 255; - im6o.im6o_multicast_loop = 0; - } - icmp6len = sizeof(*nd_ns); m->m_pkthdr.len = m->m_len = sizeof(*ip6) + icmp6len; m->m_data += max_linkhdr; /* or M_ALIGN() equivalent? */ @@ -470,6 +460,12 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, if (in6_setscope(&ip6->ip6_dst, ifp, NULL) != 0) goto bad; } + if (IN6_IS_ADDR_MULTICAST(&ip6->ip6_dst)) { + m->m_flags |= M_MCAST; + im6o.im6o_multicast_ifp = ifp; + im6o.im6o_multicast_hlim = 255; + im6o.im6o_multicast_loop = 0; + } if (nonce == NULL) { char ip6buf[INET6_ADDRSTRLEN]; struct ifaddr *ifa = NULL; @@ -491,20 +487,16 @@ nd6_ns_output_fib(struct ifnet *ifp, const struct in6_addr *saddr6, ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, saddr6); if (ifa == NULL) { int error; - struct in6_addr dst6, src6; - uint32_t scopeid; - in6_splitscope(&ip6->ip6_dst, &dst6, &scopeid); - error = in6_selectsrc_addr(fibnum, &dst6, - scopeid, ifp, &src6, NULL); + error = in6_selectsrc_nbr(fibnum, &ip6->ip6_dst, &im6o, + ifp, &ip6->ip6_src); if (error) { nd6log((LOG_DEBUG, "%s: source can't be " "determined: dst=%s, error=%d\n", __func__, - ip6_sprintf(ip6buf, &dst6), + ip6_sprintf(ip6buf, &ip6->ip6_dst), error)); goto bad; } - ip6->ip6_src = src6; } else ip6->ip6_src = *saddr6; @@ -967,7 +959,9 @@ nd6_na_input(struct mbuf *m, int off, int icmp6len) * - proxy advertisement delay rule (RFC2461 7.2.8, last paragraph, SHOULD) * - anycast advertisement delay rule (RFC2461 7.2.7, SHOULD) * - * tlladdr - 1 if include target link-layer address + * tlladdr: + * - 0x01 if include target link-layer address + * - 0x02 if target address is CARP MASTER * sdl0 - sockaddr_dl (= proxy NA) or NULL */ static void @@ -980,8 +974,7 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, struct ip6_hdr *ip6; struct nd_neighbor_advert *nd_na; struct ip6_moptions im6o; - struct in6_addr daddr6, dst6, src6; - uint32_t scopeid; + struct in6_addr daddr6; NET_EPOCH_ASSERT(); @@ -1005,13 +998,6 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, return; M_SETFIB(m, fibnum); - if (IN6_IS_ADDR_MULTICAST(&daddr6)) { - m->m_flags |= M_MCAST; - im6o.im6o_multicast_ifp = ifp; - im6o.im6o_multicast_hlim = 255; - im6o.im6o_multicast_loop = 0; - } - icmp6len = sizeof(*nd_na); m->m_pkthdr.len = m->m_len = sizeof(struct ip6_hdr) + icmp6len; m->m_data += max_linkhdr; /* or M_ALIGN() equivalent? */ @@ -1023,26 +1009,24 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, ip6->ip6_vfc |= IPV6_VERSION; ip6->ip6_nxt = IPPROTO_ICMPV6; ip6->ip6_hlim = 255; + if (IN6_IS_ADDR_UNSPECIFIED(&daddr6)) { /* reply to DAD */ - daddr6.s6_addr16[0] = IPV6_ADDR_INT16_MLL; - daddr6.s6_addr16[1] = 0; - daddr6.s6_addr32[1] = 0; - daddr6.s6_addr32[2] = 0; - daddr6.s6_addr32[3] = IPV6_ADDR_INT32_ONE; + daddr6 = in6addr_linklocal_allnodes; if (in6_setscope(&daddr6, ifp, NULL)) goto bad; flags &= ~ND_NA_FLAG_SOLICITED; } - ip6->ip6_dst = daddr6; + if (IN6_IS_ADDR_MULTICAST(&daddr6)) { + m->m_flags |= M_MCAST; + im6o.im6o_multicast_ifp = ifp; + im6o.im6o_multicast_hlim = 255; + im6o.im6o_multicast_loop = 0; + } - /* - * Select a source whose scope is the same as that of the dest. - */ - in6_splitscope(&daddr6, &dst6, &scopeid); - error = in6_selectsrc_addr(fibnum, &dst6, - scopeid, ifp, &src6, NULL); + ip6->ip6_dst = daddr6; + error = in6_selectsrc_nbr(fibnum, &daddr6, &im6o, ifp, &ip6->ip6_src); if (error) { char ip6buf[INET6_ADDRSTRLEN]; nd6log((LOG_DEBUG, "nd6_na_output: source can't be " @@ -1050,28 +1034,31 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, ip6_sprintf(ip6buf, &daddr6), error)); goto bad; } - ip6->ip6_src = src6; nd_na = (struct nd_neighbor_advert *)(ip6 + 1); nd_na->nd_na_type = ND_NEIGHBOR_ADVERT; nd_na->nd_na_code = 0; nd_na->nd_na_target = *taddr6; in6_clearscope(&nd_na->nd_na_target); /* XXX */ + /* + * If we respond from CARP address, we need to prepare mac address + * for carp_output(). + */ + if (ifp->if_carp && (tlladdr & ND6_NA_CARP_MASTER)) + mac = (*carp_macmatch6_p)(ifp, m, taddr6); /* * "tlladdr" indicates NS's condition for adding tlladdr or not. * see nd6_ns_input() for details. * Basically, if NS packet is sent to unicast/anycast addr, * target lladdr option SHOULD NOT be included. */ - if (tlladdr) { + if (tlladdr & ND6_NA_OPT_LLA) { /* * sdl0 != NULL indicates proxy NA. If we do proxy, use * lladdr in sdl0. If we are not proxying (sending NA for * my address) use lladdr configured for the interface. */ if (sdl0 == NULL) { - if (ifp->if_carp) - mac = (*carp_macmatch6_p)(ifp, m, taddr6); if (mac == NULL) mac = nd6_ifptomac(ifp); } else if (sdl0->sa_family == AF_LINK) { @@ -1081,7 +1068,7 @@ nd6_na_output_fib(struct ifnet *ifp, const struct in6_addr *daddr6_0, mac = LLADDR(sdl); } } - if (tlladdr && mac) { + if ((tlladdr & ND6_NA_OPT_LLA) && mac != NULL) { int optlen = sizeof(struct nd_opt_hdr) + ifp->if_addrlen; struct nd_opt_hdr *nd_opt = (struct nd_opt_hdr *)(nd_na + 1); From nobody Sat Oct 18 12:05:33 2025 X-Original-To: dev-commits-src-branches@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 4cpgPT4Cp4z6D390; Sat, 18 Oct 2025 12:05: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cpgPT3WlFz3CZc; Sat, 18 Oct 2025 12:05:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760789133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DHjZsCHBHIqiY2+w14F7jTK+0OTjS7hBfw/wPI+v58g=; b=ROunG9pWDK13u6uvM9eUdWoQA+5bOyciiVFRX523OMAN78aX72ppeY3QowniS7jLpB33sp AtBYO8bo8vtB6ynClRtdavf5TqDVp+M6++LQAGSv9QLbUE9nZ1J61QGgnEzlV9i39Fhl2z Lq/wTPIeTFDhjF0CsDzgvPhUKYrtzOaDefPgRemXVsk/JAlFrA7I/erlo17Lwfb/ETyUDa gVsJ7lE51754Z1u5CRjc92B5Ate6Cdux7lNb4Bve2bb9dIP140xBy8msUzenUcuuu+neKb 4QjOqg7vfKvrED/XhtZKieMdWXEsYfLPIpoz/+GQcB6J5B1wEdieeg2u2kHi9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760789133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DHjZsCHBHIqiY2+w14F7jTK+0OTjS7hBfw/wPI+v58g=; b=brxXIS1iDsu6tt60dR7cGounKYwMc3aN66BXGnb5zOeBQKoIt/ipP7314WlWlNeoqI+ueq n9+drnpfFwWX00eO1fnUYtOA+69XxpPmklt4wIJe8Bpko6GLIJaC2vqmca/jrC4BdEQLA+ IVzr+Rf/R2x5ZE0YcrgmiwfcuLrOU3QVZ+KYMzw1HQ9Tgu5tey5k+leTF+OeXK5PH/nzHC Ov5nBqbbTXHQS/XkKrFaoZ8YdBFphX/4eMo3C1ihYlIsEb+yEhgXQ4CdBuoAZ9kEt8Ine4 XK2GKsa263kbID2jrMGZivzcfEos1T2d4Yj6cEwskuM/Ras5LGCGSitoHlggMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760789133; a=rsa-sha256; cv=none; b=lHLHiGyjGwaRLU1DL8KUGHQKM5XP8KmwP/xcGHXSSoG3uDGRq86aezClaLMoWRNpOapZ7q fy4WxmrxL5iOf/CrYqYq8ODTsLyvaOmENCWqWktIdkkHsgVj8pG14i/Y8tkGdyMjrlBysU iSiI7A9wQhfza0bfCSl/eQp1KV0O+OhnZDMvb5zkNQFFml+oGZ5+wA9t5m/60LooTJxGcm Behq0DY+g728D+At14JnmsUv4kE7YkKlyO5kucGd6om2Sdab5G4oL0zf+VZIS0HejC+oLH Ovbs/zrAeowWO4BvgM4ff/FQE+7f10yr6bf8WCLddgOdg6/beU0+6/JNA4HpyQ== 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 4cpgPT2c3zzgwR; Sat, 18 Oct 2025 12:05: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 59IC5XGl032986; Sat, 18 Oct 2025 12:05:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59IC5X4q032983; Sat, 18 Oct 2025 12:05:33 GMT (envelope-from git) Date: Sat, 18 Oct 2025 12:05:33 GMT Message-Id: <202510181205.59IC5X4q032983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Andrey V. Elsukov" Subject: git: 317a5dd0288e - stable/15 - ipfw: do not use errno value for error reporting List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ae X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 317a5dd0288e0382fc94ab44cc7b0a7918e7fe62 Auto-Submitted: auto-generated The branch stable/15 has been updated by ae: URL: https://cgit.FreeBSD.org/src/commit/?id=317a5dd0288e0382fc94ab44cc7b0a7918e7fe62 commit 317a5dd0288e0382fc94ab44cc7b0a7918e7fe62 Author: Boris Lytochkin AuthorDate: 2025-10-14 08:02:20 +0000 Commit: Andrey V. Elsukov CommitDate: 2025-10-18 12:04:42 +0000 ipfw: do not use errno value for error reporting table_do_modify_record() already uses errno value on error. Also this fixes problem when `ipfw table add` returns ENOTTY that is unrelated to operation. Tested by: dhw Fixes: 09025a714708 Differential Revision: https://reviews.freebsd.org/D53050 (cherry picked from commit dfd822b1f0846bdaa9a14457346f7431a86d3a64) --- sbin/ipfw/tables.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sbin/ipfw/tables.c b/sbin/ipfw/tables.c index 7c3b1bb35a01..245c0c9e0399 100644 --- a/sbin/ipfw/tables.c +++ b/sbin/ipfw/tables.c @@ -1037,9 +1037,6 @@ table_modify_record(ipfw_obj_header *oh, int ac, char *av[], int add, } } - /* Get real OS error */ - error = errno; - /* Report results back */ ptent = tent_buf; for (i = 0; i < count; ptent++, i++) { From nobody Sun Oct 19 00:38:43 2025 X-Original-To: dev-commits-src-branches@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 4cq06W3yh3z6D4HG; Sun, 19 Oct 2025 00:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq06W34Wcz47Lf; Sun, 19 Oct 2025 00:38:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n0ZZdvrhKVuD3UONT3LobI7XmedtMbe6qMWfAvW9bhg=; b=VUjui4yl5qARy1Kixp2r6xUseqXripSpH18xLjR095AgIa2iuX/SOmVrgL6ma5teUI7PFq MgYyQzLcuOJEFAYRrZoYdGlU+NOKVw4IJ1PTtO6c57/GhA+ZMSBeDQ7Fn3I1fo95vRUgtU Ff0OPelh8N1Q/VZ7jUJbDN5fT8OlvGBl0lPgUs0kWbtj/BOBtCq66PKoaLu1GoyFov+MCe dcmtwEiLbREZlKjoHoyDTqarKa7ZkvWVB0t3DG/pDj/pTWgP6LesvAHnF6nH1wCBFGBBNA 65AX7EmaoPwgZeO/WUMFVGqJqJCAoNugmFmmeLuJoKKqRIMghjsb9sHf/VTwJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n0ZZdvrhKVuD3UONT3LobI7XmedtMbe6qMWfAvW9bhg=; b=E0z7NwC0Gup7JVehvXcADIUSM7rw1C02E1U7XFhg3CDJX6s7MG2MuA7sTvVvvVqqNawDwg teJnoOs5cY28TdZw2tWlKRmiXz+waqdmX+IY3t/o+DIciNxrfkSdMSa9eMn1bkUcbuMx6E HdQxT3jVsNeA0PdPigbYICCBqIzQVQXpC9s/occpALt1uo8vF+gagM7RgAwgud7w4x1bdo HMB1JK5AtXuPCaBxxIH5fJNi/xK9KnAGNyw4dMkJJ6yqDxBM1fvA1xn/t3q8OL98tC7X8z eEHRztfc3WyiVgvCDGbsmm9YvsYqnCV1ZEqpZVxDxASS2l1JeSt4hJiQ803RuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760834323; a=rsa-sha256; cv=none; b=fA89DLde8i7cSm1mxZtQ6Ahh6Mo83YYJAqBVyea20xeWshKeRHxdLL1o2YRFq+0XEnPyTA ye5sgLLxzDpQDocS4wGk7sRLIZIEYLVuEKXGsw2yy72nLnDPR7TDsmizDDFRBvUGDxQsDA ubz1hlNTmU4jfDtokKLbux/Lp2m+jUXAal5DLB6USWWYzfqREMqqm+UFhaLEOK9puBxKB6 rXeZht3D9L4yYBZLqQWsQi1spiBpHQ0jbnEMtHaMRZcZvtaqiRVlo+IRjmSDm1GV54SiYr jXXVx95e0Ju7UibzMRUeLNNINqCKC13/UH4dLKtTsOfMqEBd9RacFdfkIHc73g== 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 4cq06W2Blqz145G; Sun, 19 Oct 2025 00:38: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 59J0chIY057025; Sun, 19 Oct 2025 00:38:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59J0chck057023; Sun, 19 Oct 2025 00:38:43 GMT (envelope-from git) Date: Sun, 19 Oct 2025 00:38:43 GMT Message-Id: <202510190038.59J0chck057023@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: 795f4eef2c56 - stable/15 - nvd.4: Add a HARDWARE section for HW Relnotes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 795f4eef2c56e8f6609f008d4af35f45232602e8 Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=795f4eef2c56e8f6609f008d4af35f45232602e8 commit 795f4eef2c56e8f6609f008d4af35f45232602e8 Author: Alexander Ziaee AuthorDate: 2025-10-16 17:16:23 +0000 Commit: Colin Percival CommitDate: 2025-10-19 00:36:35 +0000 nvd.4: Add a HARDWARE section for HW Relnotes MFC after: 3 days Reviewed by: dab Differential Revision: https://reviews.freebsd.org/D52867 (cherry picked from commit 7f5267a99895a797ea135b67aa58d561ee52b279) --- share/man/man4/nvd.4 | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/share/man/man4/nvd.4 b/share/man/man4/nvd.4 index d5145939e409..1861fabc91d0 100644 --- a/share/man/man4/nvd.4 +++ b/share/man/man4/nvd.4 @@ -31,7 +31,7 @@ .\" .\" Author: Jim Harris .\" -.Dd May 18, 2019 +.Dd October 2, 2025 .Dt NVD 4 .Os .Sh NAME @@ -72,6 +72,10 @@ Note that device nodes from the driver are not .Xr GEOM 4 disks and cannot be partitioned. +.Sh HARDWARE +The +.Nm +driver supports NVMe storage devices using NVMe namespaces. .Sh CONFIGURATION The .Nm From nobody Sun Oct 19 00:38:44 2025 X-Original-To: dev-commits-src-branches@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 4cq06X63y7z6D4N1; Sun, 19 Oct 2025 00:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq06X2b55z46tq; Sun, 19 Oct 2025 00:38:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834324; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L5tY61h2cvFsJ37sQrtW0aiGJorbT0o0F0uC7jqDqx0=; b=fcoy9pyqzc5U3t5H9uvET+ZOay2VEiDJKXEqp/DrKZ1TvHwSzVgK1F922LcB3Sub1aW5Sg 8v85qxXktK8lP092QKl/r45gWMpUBEn2sYHJyigobxCB59mL9hEs5SWUmPKpRtNdOXVBJP XPCBj2xQHybE/2YJlr/qbIIIJGDwIpjDFgl5iaMHVnT682yPC/+8N+mOv1ozVmUkIeaLpz O6wCbMIew19BJ6ZmV4EebuxSnGmE+T2wm5xNDDGQNUS92F/Kn0ps6lX46D+ZfDPpW3guhC V8Un/bs5UN8K6fx9TTIvuPR9e8r4FKl59vOlgh5wjEHhnswEe52qix0iUiLvjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834324; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L5tY61h2cvFsJ37sQrtW0aiGJorbT0o0F0uC7jqDqx0=; b=V/Jf/LwEdFqVGRsSKDvImLmHZVRu3NAWUQo4LuAvszE0VqNQKpAZs4tDXfPtoF2JcFTYec Rrxhd3MYeX6/gQx4OQpaDnqt7E9rK4BbcrhszkA0AJcc464G7QznWL0prjzVx4oXrwJFSA v5Za1ziL0GrG4xSk/9I612CQWfsrseOzwasGsxeauuC45+/ASPmUwgr9ZOCKMUBjH+KWVJ X48IK8lTYd51D73uSKtbr9WBy6bCT/3MVWuOooDtR2HCKaVxZu4XmuCz5SEW1as/lIq/bO 8jReV3BwYdJHRBOKJcS2jooPHLdMUbT09e4Js5kXw2VNgLO3NGmkVwwpekPt4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760834324; a=rsa-sha256; cv=none; b=qQNWlTVlzR+IxZ6lgxNJ88xDjJmY7FhQ5hvjrhR7YgWymUZWWYPzgEs4Jriumpui/gHRNd hFQByDFlIM5KDlchoNjHXcjsBokVSwLKBrG4929yxDT/IH5UZ+ktjnC3v+AZP9saNce0Ap L5QKcVZC4qODQlRRVPsjI+1gMm9qLax4Xqa9Yqo+RSm2M+td71CUoO4f2dFHa4OwQe0IDa DP63mf7ogR5DqQbjHZ0MiSNqTnDGdWZW9Atot4ulnGGMWz+dzdaL9wBs4D1iOczK7uwS7P Mf4T4DbG00r1fEqKR3nO5J1N9tiGktNU52+1/5JQkcspv6qn1ERtmDgiXT02yQ== 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 4cq06X2Bdbz14CF; Sun, 19 Oct 2025 00:38: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 59J0ciss057058; Sun, 19 Oct 2025 00:38:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59J0ciSo057055; Sun, 19 Oct 2025 00:38:44 GMT (envelope-from git) Date: Sun, 19 Oct 2025 00:38:44 GMT Message-Id: <202510190038.59J0ciSo057055@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: be9b7d8dd037 - stable/15 - release.7: Update RPI example + CHROOTDIR + SPDX List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: be9b7d8dd037bb7b5d9d7bea5470732aec3314cf Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=be9b7d8dd037bb7b5d9d7bea5470732aec3314cf commit be9b7d8dd037bb7b5d9d7bea5470732aec3314cf Author: Alexander Ziaee AuthorDate: 2025-10-16 17:16:48 +0000 Commit: Colin Percival CommitDate: 2025-10-19 00:36:45 +0000 release.7: Update RPI example + CHROOTDIR + SPDX + arm/RPI-B.conf no longer exists, adjust for arm64/RPI.conf + document default CHROOTDIR, also add to FILES list + tag SPDX MFC after: 3 days Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D53078 (cherry picked from commit 8a9f1a2286689c447e8528dc79ee6c4a47423fdc) --- share/man/man7/release.7 | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/share/man/man7/release.7 b/share/man/man7/release.7 index 05f80374926f..2493a34721bc 100644 --- a/share/man/man7/release.7 +++ b/share/man/man7/release.7 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2002 Murray Stokely .\" All rights reserved. .\" @@ -22,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 11, 2025 +.Dd October 13, 2025 .Dt RELEASE 7 .Os .Sh NAME @@ -136,6 +139,8 @@ configuration file supports the following variables: .Bl -tag -width Ev .It Va CHROOTDIR The directory within which the release will be built. +Defaults to +.Pa /scratch . .It Va CHROOT_MAKEENV Additional .Xr make 1 @@ -636,6 +641,7 @@ Typically, one only needs to set .El .Sh FILES .Bl -tag -compact -width Pa +.It Pa /scratch .It Pa /usr/doc/Makefile .It Pa /usr/doc/share/mk/doc.project.mk .It Pa /usr/ports/Mk/bsd.port.mk @@ -688,16 +694,10 @@ the Raspberry Pi, exist in the directory corresponding to the .Va TARGET .Xr make 1 variable. -For example, to build an image for the Raspberry Pi: -.Bd -literal -offset indent -cd /usr/src/release -sh release.sh -c arm/RPI-B.conf -.Ed -.Pp -To build an image for the Raspberry Pi 3: +For example, to build an image for 64-bit Raspberry Pis: .Bd -literal -offset indent cd /usr/src/release -sh release.sh -c arm64/RPI3.conf +sh release.sh -c arm64/RPI.conf .Ed .Pp After running these commands, all prepared release files are available in the From nobody Sun Oct 19 00:40:38 2025 X-Original-To: dev-commits-src-branches@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 4cq08k2YZSz6D45t; Sun, 19 Oct 2025 00: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq08k1yFKz47rL; Sun, 19 Oct 2025 00: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=1760834438; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pvcnpp7ikIcXcvHbdcbOiPEtBUUyfglqRmzJAk3Mcg8=; b=PoHTZ5j6SUHhjsmpWvsLpfPRf1PVeX70qVN+IYrSis8oV7diOHRx0A+xUnAA/O6yYEjb64 ItrMvpgLarrxeMIygyiTj5wjxVD5MrpYqn/zWGTTnog6x0MODwPKPWwcfMi0bpL/RXN6Su 9o9w/9xv0g05PAEdvg7TVnEe7XOXkLY7l9VwtEyhujt+SnfUWB+3Rn7Hrun8vsIHlI9TJN xZ7GnyXH6UW9yrM1C6UcX3msCc7wSZ6vpjiyzMHs/asIHvgPu2+hbbPzYSxZ6RrKm+9PUY Y9VByi2j2hnQKOgUHpY6+gdWVp3spI+AqhkggxmWMlk7Mi1+Aayx/IFtQ1J9Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834438; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pvcnpp7ikIcXcvHbdcbOiPEtBUUyfglqRmzJAk3Mcg8=; b=vW80DE/fsPFmTFNKfZsqSV3IA/wJTcR49XRPTE0jBu9GXGsiI1869088UIUpJL+XJCvAZu +wFpXK9wFOf6m5ssYPOXQA95ki5wrdNnQoE27682qEBKNRkXbBvqQP/AIIkCVXCxpZsc/J zEtgLSGoDVGJ/o0artLbwEg8z4pWHwVeVAzIVRDQzUzbQKm2nPSbO5U0yYkdmyqbG+WcjU CC6tBaGVhEAD1Cs6HbJw6HzI12O64ZS+oUyMEO7dby4fuaZsXnrCpIvqjoixTHVuC8UpIg MsZbbMOeEljrQwh/8TeZANJjn5BvtlGrglOwRpozbykZTOcZLx4FRlCFeO9XFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760834438; a=rsa-sha256; cv=none; b=sP+gYo4Voct4nEw99x7y3vNidmd5ZqtbXPNjVs/VQPALjQ3zenxJ/EFDKmhJTIyEaCYnCa noFA+LxSJRkbn7OaJxMhC+3Jkkk9hQX12XU6ManPKQ87vqjkCdGLCPRwJ4yEEywMWuaIEJ zpbqPlGgdhTADfAc1aK+H2g1Fu4wh4a3vt74v3nJqG7GgTiWJc3eBidixp3rFdCwiD+tof 3IjXAdCAl2OdenJ2+9q/03EqQoGKEZzkGs4+65kxaS3GyN5XjkY85Edc9q31CRZNdw9Pgd o9Cpu+sJHXHXlbvcWWCNbGFDgtCRtAHe7kJQGWLhSXuN6mfkWUtIRMkSFi6Tfw== 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 4cq08k1NcPz13tm; Sun, 19 Oct 2025 00: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 59J0ecg7066485; Sun, 19 Oct 2025 00: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 59J0ecRn066482; Sun, 19 Oct 2025 00:40:38 GMT (envelope-from git) Date: Sun, 19 Oct 2025 00:40:38 GMT Message-Id: <202510190040.59J0ecRn066482@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: a441f8ef1674 - releng/15.0 - release.7: Update RPI example + CHROOTDIR + SPDX List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: a441f8ef1674711cbac5017751300e223b3299ed Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a441f8ef1674711cbac5017751300e223b3299ed commit a441f8ef1674711cbac5017751300e223b3299ed Author: Alexander Ziaee AuthorDate: 2025-10-16 17:16:48 +0000 Commit: Colin Percival CommitDate: 2025-10-19 00:40:22 +0000 release.7: Update RPI example + CHROOTDIR + SPDX + arm/RPI-B.conf no longer exists, adjust for arm64/RPI.conf + document default CHROOTDIR, also add to FILES list + tag SPDX Approved by: re (cperciva) MFC after: 3 days Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D53078 (cherry picked from commit 8a9f1a2286689c447e8528dc79ee6c4a47423fdc) (cherry picked from commit be9b7d8dd037bb7b5d9d7bea5470732aec3314cf) --- share/man/man7/release.7 | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/share/man/man7/release.7 b/share/man/man7/release.7 index 05f80374926f..2493a34721bc 100644 --- a/share/man/man7/release.7 +++ b/share/man/man7/release.7 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2002 Murray Stokely .\" All rights reserved. .\" @@ -22,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 11, 2025 +.Dd October 13, 2025 .Dt RELEASE 7 .Os .Sh NAME @@ -136,6 +139,8 @@ configuration file supports the following variables: .Bl -tag -width Ev .It Va CHROOTDIR The directory within which the release will be built. +Defaults to +.Pa /scratch . .It Va CHROOT_MAKEENV Additional .Xr make 1 @@ -636,6 +641,7 @@ Typically, one only needs to set .El .Sh FILES .Bl -tag -compact -width Pa +.It Pa /scratch .It Pa /usr/doc/Makefile .It Pa /usr/doc/share/mk/doc.project.mk .It Pa /usr/ports/Mk/bsd.port.mk @@ -688,16 +694,10 @@ the Raspberry Pi, exist in the directory corresponding to the .Va TARGET .Xr make 1 variable. -For example, to build an image for the Raspberry Pi: -.Bd -literal -offset indent -cd /usr/src/release -sh release.sh -c arm/RPI-B.conf -.Ed -.Pp -To build an image for the Raspberry Pi 3: +For example, to build an image for 64-bit Raspberry Pis: .Bd -literal -offset indent cd /usr/src/release -sh release.sh -c arm64/RPI3.conf +sh release.sh -c arm64/RPI.conf .Ed .Pp After running these commands, all prepared release files are available in the From nobody Sun Oct 19 00:40:39 2025 X-Original-To: dev-commits-src-branches@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 4cq08l443Kz6D48Q; Sun, 19 Oct 2025 00: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq08l2QWnz47dR; Sun, 19 Oct 2025 00: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=1760834439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqDV+6CSKfqkUjAmo9tGO2eL/8OnH6qp/bKsIxl6OSk=; b=THjfb4Xs9RrtWfUTN0MOaqhcJ2ONcKg7VVaZipB7fNbym8lCzwq0yt81VZjmVQkMggwFSE pXJVdSIbvn7qTlj5vZMRM7pljomfWAJS4Nh1HOvqi/Bq0VuwYNPqAxa62kRpPWLWa+MAxv eTCWmWN013J9zBhXvQKWTneGoKtRfigyZ/AUk2zprqkGnBydQl4AtMS/z2yvAAzSlAEHaU WMkJwsvvbbKXpy8ufJNxwkHAwHHKdiypWhij8ntiYQcnsaPeyUmLc02wkYpallqklDZAIF PZSUnQmsnNXm16miXBSRnxqXoqOcxHCCyjgOmUQBszsByAKgtmV2ywh9BEBKwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760834439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqDV+6CSKfqkUjAmo9tGO2eL/8OnH6qp/bKsIxl6OSk=; b=d3Di6ggrIi4KDPal9ojfDg42IkbbOJIw8ACkarEoc5U8GcynRs5LCNs8FixFMotlv0eNTO cWZbHNjj38U1JskPrZmM+1VflPT7MpNSKjbQnL5F7ULsmjENrdxuCkCTMeGFEjC5TRzvQH xflCSWNIiGEb/5Pa19jGyKjSEBIN+2y6BC1Gd7FgmVqX2KeO6KMoRKg0jRROwo/b1+4TOR ye8BeqHKm2BJ39zIkpXCEOfZGLTo9bhmnvN0aaGkRIp+Nm26yryNlw3wK9Af+ElzCaZyXG e1OFldhtZRBZrZnGaSoR8fHqDwwJJ76S95+Fa4YW+9bC3/Eyk7egO+MN6ilC5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760834439; a=rsa-sha256; cv=none; b=QJZTci52Xxzg5qxe/0PbVzkyDgZoGbbNHGJDRZ/HEwFIQBtyZpjYS+P7apZ+w2me304h/o tGE8Fsvyy2bQMc/9LqRYJFWb/T62XFDdjpKvXxFktsggXAMgXaxTX0ZwRFGuAsMJeTK7vC U7g31sxpraLTJQWQVK+YEDqhSYyPfoKJiQkM82rIiS0dyj0Ieym0pMhW4ASew1tjt9kIuS nPgW+nEdF7ZJO/TNUeAdrn9lQNApOf79MVX9rwK0z6qH43A0PSYlwKrrsv+DUpvYEbegYm 44Bu6HSm2isb7iShYQATNxaxLkjMUzlz8M5+L7Ylo/otbmDbZCWRFl2Kox5JQA== 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 4cq08l21lkz13tp; Sun, 19 Oct 2025 00: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 59J0edeo066523; Sun, 19 Oct 2025 00: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 59J0edA7066520; Sun, 19 Oct 2025 00:40:39 GMT (envelope-from git) Date: Sun, 19 Oct 2025 00:40:39 GMT Message-Id: <202510190040.59J0edA7066520@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: 0798de75ab5f - releng/15.0 - nvd.4: Add a HARDWARE section for HW Relnotes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 0798de75ab5f79c8cc082a08dc79cb8b318b02dd Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0798de75ab5f79c8cc082a08dc79cb8b318b02dd commit 0798de75ab5f79c8cc082a08dc79cb8b318b02dd Author: Alexander Ziaee AuthorDate: 2025-10-16 17:16:23 +0000 Commit: Colin Percival CommitDate: 2025-10-19 00:40:28 +0000 nvd.4: Add a HARDWARE section for HW Relnotes Approved by: re (cperciva) MFC after: 3 days Reviewed by: dab Differential Revision: https://reviews.freebsd.org/D52867 (cherry picked from commit 7f5267a99895a797ea135b67aa58d561ee52b279) (cherry picked from commit 795f4eef2c56e8f6609f008d4af35f45232602e8) --- share/man/man4/nvd.4 | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/share/man/man4/nvd.4 b/share/man/man4/nvd.4 index d5145939e409..1861fabc91d0 100644 --- a/share/man/man4/nvd.4 +++ b/share/man/man4/nvd.4 @@ -31,7 +31,7 @@ .\" .\" Author: Jim Harris .\" -.Dd May 18, 2019 +.Dd October 2, 2025 .Dt NVD 4 .Os .Sh NAME @@ -72,6 +72,10 @@ Note that device nodes from the driver are not .Xr GEOM 4 disks and cannot be partitioned. +.Sh HARDWARE +The +.Nm +driver supports NVMe storage devices using NVMe namespaces. .Sh CONFIGURATION The .Nm From nobody Sun Oct 19 07:37:30 2025 X-Original-To: dev-commits-src-branches@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 4cq9Pk2hVjz6ChhC; Sun, 19 Oct 2025 07:37: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq9Pk23dkz3gwC; Sun, 19 Oct 2025 07:37:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859450; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WAe1+IGa47DP3iTaj6gQfwLgk8WPu7/bZbGhR6Lxlt0=; b=d56YftbrYUq1nEj81hDMznDO2os5uHfJkNo36Ya5+jTtLz6CKXQ4r4JzFLR+TPZbTHyQSh D3oHubA3ehr4YHq/AJ74JVympm2NEvbZu6862IItBJJuzLKQHrfvyeLl+XnMJ0GbWy25KE IGK/bginU8VPsQ8M3V4XNFfje8t8eNRD5RIh3bo14kJjmHRURkrMlJupKQJf8/L6b2Mwws 53lzsy6DgPpx/Wb3dO11lWhc/LAY2BAl5geg4HOEJr0CzC+VPD1bl7ipSynfwpv0kWannY nZRPdHROktXpwF798ITUGxgAw003Fi9/IOX0IOvDSxuvDN8aFRpfnpofq9DEtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859450; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WAe1+IGa47DP3iTaj6gQfwLgk8WPu7/bZbGhR6Lxlt0=; b=FH9qvGu7WVXPemM187wJ8K5PloUuGUQ8mn8n4URKeNQV8VZaFmoNnoLq74sp4dHHf6ES/8 ++hc84TfBMmAy4i3Br3KMg7c4K9/NDd0p1e3da3b8329cpTFulqAkfGM4dWYMZJLf1UlLt n1DJhpg90ofS2pjXw7tw5JIDM0Kbw/3vqZdXozStD0FtmC/5lGpUp6CSHXxbdxcY6l8Rsd GN1+eIC3W7bdUf2K/tgAB80DV9P/RfGfs67U3TylGnM10TSb1upKMpiGFL2yJ9gsmkYGv5 LSYFgwKKv9tMDOfpPKtXEBIB/fZqDpxoN1SSC9AySYmM8iomgjDc4flIENt08g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760859450; a=rsa-sha256; cv=none; b=EZ5VjjBD77+8b/INheMcsvazUkDreBwSddhPyQCmJy8Qs3hWRXgafDVq+nYlpUlEgdCW4k GWU0CXC6eNSKgsY8B4RtW3q8GhzVWSNQdkEywushHIfiOd2YLBDOLAuVg0Am8EuQsFqtyx DR7G4rwUbfb6pWpkeo/HbdK8Vp44Bi/0jBePokmsUV1Viy7GalYObT/JWjNyNbK8Z7BMog HDiStf0YlNjIeS72BTCxK5uOjj6sQoOUNjRe8SM7KDVKJohA22fRF8zP8A+5g6kV25bxAx uMx8N7Z9FctMucAMAutdZnOnWICVNNvEqZYkTS+rxi6E988JHO8fdSAmfP9MDw== 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 4cq9Pk1gHdz3PF; Sun, 19 Oct 2025 07:37: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 59J7bUaQ046515; Sun, 19 Oct 2025 07:37:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59J7bUtO046512; Sun, 19 Oct 2025 07:37:30 GMT (envelope-from git) Date: Sun, 19 Oct 2025 07:37:30 GMT Message-Id: <202510190737.59J7bUtO046512@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 7d29554b36eb - stable/15 - tcp: bump max snd buffer size for autoscaling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7d29554b36ebdedf24e4605e5681b95abed5acd6 Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=7d29554b36ebdedf24e4605e5681b95abed5acd6 commit 7d29554b36ebdedf24e4605e5681b95abed5acd6 Author: Michael Tuexen AuthorDate: 2025-10-15 20:19:14 +0000 Commit: Michael Tuexen CommitDate: 2025-10-19 07:33:58 +0000 tcp: bump max snd buffer size for autoscaling This allows in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Reviewed by: rscheff, cc, glebius, Nick Banks, Peter Lei, jtl, thj, rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52872 (cherry picked from commit 9dd4742ee51ae80639b087a60ce7d15811c2b1e6) --- sys/netinet/tcp_output.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 2dfb7faf56e3..208f72c4661c 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -123,7 +123,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_inc, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_inc), 0, "Incrementor step size of automatic send buffer"); -VNET_DEFINE(int, tcp_autosndbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autosndbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_max), 0, "Max size of automatic send buffer"); From nobody Sun Oct 19 07:37:31 2025 X-Original-To: dev-commits-src-branches@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 4cq9Pl47Bcz6ChmD; Sun, 19 Oct 2025 07:37:31 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq9Pl2ygtz3gym; Sun, 19 Oct 2025 07:37:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859451; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cSPywKAkC4upbSdoDDbqYY8Nt3kP8eVbZqvCXt1MyPY=; b=VGwAnkFjDwEHWnjNPvpCbwu7XFte2kzDlYznqKlFR863vIrgeI9PnACOYG4WmxP6nMwjFR PXtePXo83vI89YL7ZoO96RI8yjR4LDNGHTpmaarFIITsmTLHjgEP/ZQhPxX91d9UfFpe2J JA9YLAk6Z+rjICePMR536T7iZHnnHbhwVrlG/CFP2C8Hxt1mgbb+RccGctHY23jOnY284n lsVlNKzaT73u14caT79WNEBvfYWlqnT1xOJMokYyS3WBul3doelEhSqE+E6vfe6IJgekS5 J7kMpxKwdFlns+gL6YVf9YhqpmdlnYWl0I86ar7fN9gelDQy+1oSfOM/g04jSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859451; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cSPywKAkC4upbSdoDDbqYY8Nt3kP8eVbZqvCXt1MyPY=; b=d30EKruN79jNsf42V/TZrUBgz/1fwEbHcTigFvX3i2fIKDlKa35ejog+DXISNOYhOONRTD 2N+2q7TvvFSJTGZXe4HI8f9hlC4g/3zb6ZulWuScSSAe3+Lb4IwUFW+oi2b01MksM0LmZ8 cXO1psr72j4JPyh3NTPOYFGXww5kD+Wex1mnL0rD2MpI0/TwClLvyVz9l1DcrIwMrWLHvf nCx+CAgpiJrSpniCdH1EeN6OOHKPuHTg8pMG7g9TdM07Jw+8x2DW0dmqPKiHcwMXuTXyQ3 zcs8gf/jWGfFYywOA2eIwhCtmjSlRyXtvsrILjW1+LzSJQPhamvBwKEAcSCf6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760859451; a=rsa-sha256; cv=none; b=wwmONV1Z1hug1dzn60g58rIHgJ8JI+icy1sqL2EW5l+Dxgc5dtxfJWjYauzM3cQBxl47s2 39p83UFwX4XFM7K9P713e7fKRkyS+umwH2RDnDc5ETjxiZJDNVWDab1ZiNEm0JPioQtIaq 45fi4/koO+fawU9OA/lTrBolptJtohh5APv653e6pE0FpfLuxsgFrxdNXOQts4DOSoyFK9 s9BaBimgAxF0OfzWlqf2EImUwK9HYTwb+u3lw6DcNevPSPikmTR9viJlcdFOqxHwVikuR0 pk3LEWjv0RU5/42+JnfcsVmvSwM3xn39zPwg/USsXhsLPxrFDgjGH+N1xzAP0w== 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 4cq9Pl2G1vz3KT; Sun, 19 Oct 2025 07:37:31 +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 59J7bVi1046548; Sun, 19 Oct 2025 07:37:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59J7bVRs046545; Sun, 19 Oct 2025 07:37:31 GMT (envelope-from git) Date: Sun, 19 Oct 2025 07:37:31 GMT Message-Id: <202510190737.59J7bVRs046545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: c3cc8223dd82 - stable/15 - tcp: bump max rcv buffer size for autoscaling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c3cc8223dd825a1f81cef6be14f8bbba74dc3d2a Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=c3cc8223dd825a1f81cef6be14f8bbba74dc3d2a commit c3cc8223dd825a1f81cef6be14f8bbba74dc3d2a Author: Michael Tuexen AuthorDate: 2025-10-15 20:24:51 +0000 Commit: Michael Tuexen CommitDate: 2025-10-19 07:34:46 +0000 tcp: bump max rcv buffer size for autoscaling This allows in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Reviewed by: rscheff, Peter Lei, jtl, thj Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52871 (cherry picked from commit baeff75122e5cdb669c920414e054224270383d7) --- sys/netinet/tcp_input.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index dd27ec77c1af..2146b0cac48f 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -219,7 +219,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_auto, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_do_autorcvbuf), 0, "Enable automatic receive buffer sizing"); -VNET_DEFINE(int, tcp_autorcvbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autorcvbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autorcvbuf_max), 0, "Max size of automatic receive buffer"); From nobody Sun Oct 19 07:37:32 2025 X-Original-To: dev-commits-src-branches@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 4cq9Pn2gBRz6ChYL; Sun, 19 Oct 2025 07:37: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cq9Pm3bcHz3gt2; Sun, 19 Oct 2025 07:37:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859452; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vNPwwPYW/S4ZUUmZQHc7mIVC3PMJL5YSG+GS0BoY2do=; b=fP/Z0Y1icAFNIT2cGpBxkJLbPaNli3gDEHs8eFSLK/a4ASrYw2Y83K2q0dvWDnydju605J wXybdnAQCxXcZrVtsFSZaQDAND5D5DkA0zcpCMsFOr5a+RTyMbR4n9vPe5/3edMQJjNDqz MOKQZh9tSAadJt7cVfU7IHZw+d+cBJ9c5PLW7HnZgr4XKaBxlqwyktJBOjD1TgKh4zQeKP og8jsja6wsn2r3oJbqTY7dNFmr8oiAY9QbjLDnBcaknWWLhhEaLZu6PgAt+LrFi/nl0gTl 2Ss9s7Lyq1jmyGtSrkLaWMCjmo3SrA6542nOPSVUMVrsST2Ahz1o2H4FCdwVyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760859452; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vNPwwPYW/S4ZUUmZQHc7mIVC3PMJL5YSG+GS0BoY2do=; b=PLSQPAMOwUQsx92z3sMbn3wJDMMpSCIn6NnzUuP8diQ+5GdsDELKKZO8P1tklLkHfpPGk3 AGNMJwu2a47y2g5LA8PYf0iNU65/6qrBon+g4uOEx3Naj0lo9G44RvUpZ1uPUo/2SNUW2Q fI/OKgCLNVQ/mtbhIUwFjpTB897z0/D+fFmHrCCzbVJrz7bzlk2Hx+RYGlteb0SRLnu6Q5 8AjeVSDWN+0A9gND/q+1yrVcaUVJN2bM/Tz2Gi6zWiBpJghy/K2/oOraCDw1+TfoGkUbXz Oegl26kHcadDLXG2GmfkAnuSJ8YrdwLA4dmmM2JS6QEtzvtjqdwuWLf+UIt+kw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760859452; a=rsa-sha256; cv=none; b=ofimFnMZrsfRgNgiGmF/5458mnlwT8zYqLkT2faQOcLo0ra2CyvpnfzapjCxsqrdhB8lUs PrKMLhRvvWr9zGNLM0FH1JJU7fVyAtg/en4aBWgISqtytcnWuhKFyAu9AwoJnGii10r9bQ lI78REeWZVK8lMoJO/Y6ns4GLWWQCBu8yTx9bz6cIu+ZXONtbCcJhXFvsRfBQXWvMMt3w8 RlfLuXbrrRMeVVvznfXLw5KiUKT74FhyMIwtuvB+fwIqnTeWQNu8Od36y7eWU8gLYp47Kl psPNRAuWFSSsGoUUZyNpib6PLrwG0utDBFh+CrPS7lJ9qQoHAzfDYS344KLjzg== 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 4cq9Pm3BkHz2y6; Sun, 19 Oct 2025 07:37: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 59J7bWr9046582; Sun, 19 Oct 2025 07:37:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59J7bWZ7046579; Sun, 19 Oct 2025 07:37:32 GMT (envelope-from git) Date: Sun, 19 Oct 2025 07:37:32 GMT Message-Id: <202510190737.59J7bWZ7046579@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 167b9fac60a7 - stable/15 - socket: bump socket buffer limit to 8MB List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 167b9fac60a7d191349b9d841f2aa7d5d0f3eb94 Auto-Submitted: auto-generated The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=167b9fac60a7d191349b9d841f2aa7d5d0f3eb94 commit 167b9fac60a7d191349b9d841f2aa7d5d0f3eb94 Author: Michael Tuexen AuthorDate: 2025-10-15 20:04:00 +0000 Commit: Michael Tuexen CommitDate: 2025-10-19 07:35:12 +0000 socket: bump socket buffer limit to 8MB Bump the socket buffer limit from 2 MB to 8MB. In particular, this allows to use larger values for TCP sockets, which may result in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Reviewed by: rscheff, Peter Lei, jtl, thj Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52873 (cherry picked from commit 1fe6497b48d6954ac07870d920b2e5d6d206be5e) --- sys/sys/sockbuf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/sockbuf.h b/sys/sys/sockbuf.h index b4593f38f592..739723754b7d 100644 --- a/sys/sys/sockbuf.h +++ b/sys/sys/sockbuf.h @@ -62,7 +62,7 @@ #include #include -#define SB_MAX (2*1024*1024) /* default for max chars in sockbuf */ +#define SB_MAX (8*1024*1024) /* default for max chars in sockbuf */ struct ktls_session; struct mbuf; From nobody Sun Oct 19 13:55:32 2025 X-Original-To: dev-commits-src-branches@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 4cqKnx1dwPz6DDV2; Sun, 19 Oct 2025 13:55: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqKnx11d4z3T00; Sun, 19 Oct 2025 13:55:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760882133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HBqfdVldY4tBBRoOfmzaBwd7r28qf+UXJGHDj+IcHhw=; b=Ba9Jp2ZHd5A6cr/73BxE4z2FmSshGtcp++Gemmtwp8HYARHQIzq1BnJQst3DKDfhJ/F45M 7AoDiqsgYup8gIX71dTi/up3iRSn/KdvWfD47wgs04g8wTMx8hnPBvlRdiBKxB97mBiIvQ CyKINneqmBCeDEw2tYWaANu+q3Kg3GM3awSsBdfLJmwrNTuhg1aGBKZIrHzmxB20RP+Xsa YxWd9w2BI2Y0DZjBf6wbaY5X5qTPsBiBSc7o35HluGmSUHwfkTJWm6esGdvyy20MVczism Hdu3ui7IdFQ/rWo8zWJlmX7ZV/qzCTHWvnSfjGkpZvYzjthhGNqo6grRCUAIOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760882133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HBqfdVldY4tBBRoOfmzaBwd7r28qf+UXJGHDj+IcHhw=; b=Py2/d8sVUxqo49cKIcd26NcBQLAKR9uA3emkPaMDn4K0NFG7/bNmqOPTnhl4IDuXRiecSF UJ8a+ixabL/7Tp0C6x2MqV3PJ7Bk4/zDNXpbVPrWDpZKxBz1dUDWzfe0QVQh25+MWv5+fB H0N1PHwEbA+96n/BtoyPzYIMPLcamf8FelKwtmqucw25vbZ6sc6qUR7mHJKDlujACR5zxM dNxqQ/2kDBqVuhbnj9hPVlDvTt8ILavQp3R0TWMC81q68o+G7AflV7RFoMX9A1x6cbX205 fq1Z+qgC0w0RUj3O5lJeVPyiDGu3zCbeMD8UUFaF9x6TdQvv4OJTum2MZFtbzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760882133; a=rsa-sha256; cv=none; b=ImQCrNUI+yO0FT2zQJ4Hk8B1J4TYPaY1ijkIrgtDcF5a6CjGufUJKi53x4IJQN3TaINbBz 7UREKC/oSApgNBX9FZuMu8579vIP/46KePR6DnYvYlkrRTz8eZ9R/GZyn0Vjc91L+6REwo 0Nreu9iK23N/qgdbUUrWol2I5UdyCzwyZs0tLoJjrRcor1mOmPC1aFMjocKAkUxdqmCWEO ge7jps9JLfgGogjoEp4AiUSy8b3Xqaxyeo8/Vo2TC2Qrrb3xQb+v3TNcK9JobKtZoTFqrj VPLelAqgd5jNIqHPzDMrZChogb9XwKBuwUnFSoHh+CqJ8LuCEOjKJ33GToP69g== 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 4cqKnx0TPWzTyv; Sun, 19 Oct 2025 13:55: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 59JDtWlD061022; Sun, 19 Oct 2025 13:55:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59JDtWBj061019; Sun, 19 Oct 2025 13:55:32 GMT (envelope-from git) Date: Sun, 19 Oct 2025 13:55:32 GMT Message-Id: <202510191355.59JDtWBj061019@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: 6c5540eebcf2 - stable/15 - vmrun.sh: Don't require firmware on amd64 unless -E was specified List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 6c5540eebcf25e3f81c3ec9bfa762390d2a86885 Auto-Submitted: auto-generated The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6c5540eebcf25e3f81c3ec9bfa762390d2a86885 commit 6c5540eebcf25e3f81c3ec9bfa762390d2a86885 Author: Mark Johnston AuthorDate: 2025-10-16 14:48:39 +0000 Commit: Mark Johnston CommitDate: 2025-10-19 13:55:06 +0000 vmrun.sh: Don't require firmware on amd64 unless -E was specified PR: 290232 Reported by: David Marker Fixes: aa34b1d20e44 ("vmrun.sh: Add arm64 support") MFC after: 3 days (cherry picked from commit f19f17b3af675fbbc1244b66bbd8fb4a9836cb02) --- share/examples/bhyve/vmrun.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/share/examples/bhyve/vmrun.sh b/share/examples/bhyve/vmrun.sh index 52935363023a..e0052e781dc0 100755 --- a/share/examples/bhyve/vmrun.sh +++ b/share/examples/bhyve/vmrun.sh @@ -268,8 +268,10 @@ fi if [ -z "$firmware" ]; then case ${platform} in amd64) - firmware="${efi_firmware}" - firmware_pkg="edk2-bhyve" + if [ ${efi_mode} -ne 0 ]; then + firmware="${efi_firmware}" + firmware_pkg="edk2-bhyve" + fi ;; arm64) firmware="${uboot_firmware}" From nobody Sun Oct 19 18:03:22 2025 X-Original-To: dev-commits-src-branches@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 4cqRHt6dZSz6DXHc; Sun, 19 Oct 2025 18:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqRHt5yqXz3xhT; Sun, 19 Oct 2025 18:03:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760897002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YipzNnghlO0GvZ3eKlra13BEmLV5BkIDwTOn5jKGQuk=; b=pDfhAHsk2HX/aoaCBbZFcy8cpEMsc5BQKOJwWd7hy2baiNVs/29Dxm/o8PjmzkSJUAiGZv Eu/YQAEnJ9IkQJ7c9OG2Z+sxxp2SlTFlXbbUyKj9a2B+CTj5IxmLlBHuSCfauVFiQo2SF7 jRkhfVW8hKKPc+0MgySd/S/ipBA/DQtgDOd3HuUpwV7hC69W7wiKYbDtKppCKULe/Y/kSZ suhP6cCA5LYyuTN1SGKSIB+zlF3B3AHcc9Puzz2lfVIg07nt2OOxAAHoMgZzLLTfFHjxTP ukMVkAD0pbzxCclgBX0QoqLyPPF32Nrs3DQaUuGEPJ8m8N+9m9cGHrG0GIIlEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760897002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YipzNnghlO0GvZ3eKlra13BEmLV5BkIDwTOn5jKGQuk=; b=a2mMy3Eo3512VUuCkzI73p5+OTkibil/JU+GUR0UCEL2sfIgQffV1RnEuTJCFwDdPm2wZY O/fj+sN5VfkabByIiyn6n8o3aO8KAjWQP16say6dFkdZM+RqKdSd4ApjCSIflqxG2APiu1 z5Ld2te3d9T3Mppjnn7RuNvF356M457dKJNI8+mJSkyZzqFWdhaJ5vKujc0KVL24ZdhbGh NOlpZ0VqCuUT7WOL9RwplGgoYlpwDPtffcCNlxjGZNBwygr7AduDf62xtFeMpSQO0yjs1X oJe5dggY/cIzz7mslg++o4zjcPMnqBF6blF02ieVmBvFyqo+XLUdGAMK7fgRSw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760897002; a=rsa-sha256; cv=none; b=d+XyPlHgZXr/6+ivY9vPJFBGfW/iCa7F92DdDXaQP+EfXK9c2DwS1CPOfID6jS6d0J+/IL MeRywxMvUuN5O84l8cZwo/69zlCSkn1Z+kpMbMIyUxTGetOpN0wrnzPoA+AzEMtl+0dHna IQVoUG9xqM1QVHrFYAwP8M2rWthWnbxBg1UkDzj6JrUXIGDUJAGPFaPurQU6NxFsdr+OcD YjyP5JDGo8k+OKCBYlgH9WvBrQOnlirhVTAbxUyTfGYZ5Lf6no06Wp8DdFgJordPpqqQ83 OLXWDR3dSCTqMq3u8jEDBDs8Gkuy+NSSEeZJEX2ut/gHasNyb5AQvFNqO/JM/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 4cqRHt5P7Xzdb8; Sun, 19 Oct 2025 18:03: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 59JI3Mua034266; Sun, 19 Oct 2025 18:03:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59JI3Mvg034263; Sun, 19 Oct 2025 18:03:22 GMT (envelope-from git) Date: Sun, 19 Oct 2025 18:03:22 GMT Message-Id: <202510191803.59JI3Mvg034263@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: 4b1e094b5e0b - stable/15 - devd/snd.conf: Note that any command can be used for the action List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 4b1e094b5e0b3781efd3fdff074fb1f160c17d16 Auto-Submitted: auto-generated The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=4b1e094b5e0b3781efd3fdff074fb1f160c17d16 commit 4b1e094b5e0b3781efd3fdff074fb1f160c17d16 Author: Christos Margiolis AuthorDate: 2025-10-18 13:17:38 +0000 Commit: Christos Margiolis CommitDate: 2025-10-19 18:02:47 +0000 devd/snd.conf: Note that any command can be used for the action Sponsored by: The FreeBSD Foundation MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D53175 (cherry picked from commit 56eee778325b2c839cfbc86a7fec4a355c51ba58) --- sbin/devd/snd.conf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sbin/devd/snd.conf b/sbin/devd/snd.conf index cf9cd9e94191..a45f427f6c79 100644 --- a/sbin/devd/snd.conf +++ b/sbin/devd/snd.conf @@ -5,6 +5,9 @@ notify 0 { match "type" "IN"; match "cdev" "dsp[0-9]+"; + # Other audio servers or device switching commands can be used here + # instead of virtual_oss(8). + # # FIXME: We are hardcoding /dev/vdsp.ctl here, simply because it is a # common virtual_oss control device name. Until we find a proper way to # define control devices here, /dev/vdsp.ctl can be changed to the @@ -18,6 +21,6 @@ notify 0 { match "type" "OUT"; match "cdev" "dsp[0-9]+"; - # FIXME: See comment above. + # See comment above. action "/usr/sbin/virtual_oss_cmd /dev/vdsp.ctl -P /dev/$cdev"; }; From nobody Sun Oct 19 18:03:23 2025 X-Original-To: dev-commits-src-branches@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 4cqRHw1vmHz6DXCW; Sun, 19 Oct 2025 18:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqRHw0NQHz3xkp; Sun, 19 Oct 2025 18:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760897004; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cN1nT7zWFRPCohLBpmWdlcmGqEaniP0RU1H3c9vjHuw=; b=PC/myJa389vz3HNASKevxR29F0OErdgGFeffYlRt365H7RTncYt2XirQnMl2MqMrTiKfF8 /a88nz4Rnybv444NzlVUWGQlwO0+QKMnm2M1TfHqTgSOZDvRh9tmSMka2eIC+AJHmd6mqB WZHEVZuptqYbcpOv85DESn1e7cNNvWdU4JJVaeyA8PhKjriJZayICAad+Q0yyp7ar952hv +M9dDXKnvBBYdsUC9JDj6cA65o1I7gBAGBOMPGGKaAGVxNx0wPyBJJdU529blJcpf03r1k Y0Xf1Coong0cX/qGvKRJvPxOkPeZymZUGYrZT2g+2a2v/+V1NOtRF0mQi8W+gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760897004; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cN1nT7zWFRPCohLBpmWdlcmGqEaniP0RU1H3c9vjHuw=; b=lcgi5vXxoo2d4YuxskUCifkbLs96d1j6OWjekSPcepZqlmO5UF/X/Pib/mhOi2tlz9KmjA RFaIGFu0+Dpo89A1rTFUr/5l42kQIJGt3pKUBfbqGBQ4tqf9KXzk1G9yKlbutyIA5+uV0g pipS0HUhlSg2F/E0e82aNtJxZ1eH20kNbvZ9sXO3vkLWOZ1ZDnvy0rEf+hdoz77oK3Srim ADY3gVfilWY2ul3tLB9S1iM2JT8uJ+UOjKsA5GWcuueC24zGZFhT3Ag+TWva1QYuaBKrLa b1A9Rr6k+akGiy9O5fWfezli+8Iaq64onEQnLEttVOW7evbEn89wcucY2maaZw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760897004; a=rsa-sha256; cv=none; b=x/pFhdR2Q6wQ5dn9/u+GnYkCuWNhsVs+MAiW60I5wI7n2Dt6KznvyZ2Xs1SX1iA1AzMhM6 xMaF8HJKQm/o+yeU3DwQCHATXXeDD1p4VyGSOAR5+u505LIW1RD9aIeJE0m/I94ym23O43 Ji7wGzdj5uLisXByQmFtaraxkBFrlsDmFtSUr63ZP5GjfiY6fu0Us/MANi9+7Tsn5ofT14 FSoDMkwXj1zy/j9Sl+sVai+SPVG7MRUBYvcutmXwAOdAzi79fuPD970e61vVeHtnEMOePY AbRTdrbfxRaGtt6JR/PRjuihUBB1Tj/PiU/c4tmS/5/EPtlHgyPZNmNBAVZYjg== 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 4cqRHv6hmBzfRF; Sun, 19 Oct 2025 18:03: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 59JI3NAZ034305; Sun, 19 Oct 2025 18:03:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59JI3NXv034302; Sun, 19 Oct 2025 18:03:23 GMT (envelope-from git) Date: Sun, 19 Oct 2025 18:03:23 GMT Message-Id: <202510191803.59JI3NXv034302@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: 01a653205313 - stable/15 - virtual_oss(8): Retire unused utils.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 01a6532053130ecb6f40919717c2187e06a6f0d4 Auto-Submitted: auto-generated The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=01a6532053130ecb6f40919717c2187e06a6f0d4 commit 01a6532053130ecb6f40919717c2187e06a6f0d4 Author: Christos Margiolis AuthorDate: 2025-10-18 13:17:43 +0000 Commit: Christos Margiolis CommitDate: 2025-10-19 18:02:47 +0000 virtual_oss(8): Retire unused utils.h Sponsored by: The FreeBSD Foundation MFC after: 1 day Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D53174 (cherry picked from commit 30a873ee3739dfd44b233907534ec1c33c21b78a) --- .../virtual_oss/virtual_bt_speaker/bt_speaker.c | 1 - usr.sbin/virtual_oss/virtual_oss/int.h | 3 --- usr.sbin/virtual_oss/virtual_oss/main.c | 1 - usr.sbin/virtual_oss/virtual_oss/utils.h | 31 ---------------------- 4 files changed, 36 deletions(-) diff --git a/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c b/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c index c61eaf1c338d..0e406cccca21 100644 --- a/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c +++ b/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c @@ -47,7 +47,6 @@ #include "avdtp_signal.h" #include "bt.h" -#include "utils.h" static int (*bt_receive_f)(struct bt_config *, void *, int, int); static int (*avdtpACPHandlePacket_f)(struct bt_config *cfg); diff --git a/usr.sbin/virtual_oss/virtual_oss/int.h b/usr.sbin/virtual_oss/virtual_oss/int.h index b3cc573ba8a9..69a943832074 100644 --- a/usr.sbin/virtual_oss/virtual_oss/int.h +++ b/usr.sbin/virtual_oss/virtual_oss/int.h @@ -318,9 +318,6 @@ extern void vclient_rx_equalizer(struct virtual_client *, int64_t *, size_t); extern int vclient_eq_alloc(struct virtual_client *); extern void vclient_eq_free(struct virtual_client *); -/* Internal utilities */ -extern int bt_speaker_main(int argc, char **argv); - /* Internal compressor */ extern void voss_compressor(int64_t *, double *, const struct virtual_compressor *, const unsigned, const unsigned, const int64_t); diff --git a/usr.sbin/virtual_oss/virtual_oss/main.c b/usr.sbin/virtual_oss/virtual_oss/main.c index 3f7fb84ce4c6..afa4ad0727ca 100644 --- a/usr.sbin/virtual_oss/virtual_oss/main.c +++ b/usr.sbin/virtual_oss/virtual_oss/main.c @@ -48,7 +48,6 @@ #include "backend.h" #include "int.h" -#include "utils.h" #include "virtual_oss.h" pthread_mutex_t atomic_mtx; diff --git a/usr.sbin/virtual_oss/virtual_oss/utils.h b/usr.sbin/virtual_oss/virtual_oss/utils.h deleted file mode 100644 index f0998dc75dae..000000000000 --- a/usr.sbin/virtual_oss/virtual_oss/utils.h +++ /dev/null @@ -1,31 +0,0 @@ -/*- - * Copyright (c) 2019 Hans Petter Selasky - * - * 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. - */ - -#ifndef _VIRTUAL_UTILS_H_ -#define _VIRTUAL_UTILS_H_ - -int bt_speaker_main(int argc, char **argv); - -#endif /* _VIRTUAL_UTILS_H_ */ From nobody Sun Oct 19 23:51:00 2025 X-Original-To: dev-commits-src-branches@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 4cqb112MBkz6Cmrd; Sun, 19 Oct 2025 23: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqb110dMFz3lDf; Sun, 19 Oct 2025 23: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=1760917861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l54J/vMRbrAIjfm0TxMvnDQI6rhy6FCG5x+O1DzXwV0=; b=k3l3yoQdZLZ7rY6QUavwhLhqaZw02DJzw8iRgmQSP1akEqKLvujy2dcJjEWzVJvGjEMjMR dsE43Cyp8jAZAqyjIapiM9fReNl7mTIafpgB6i1W8/fHawPprsZaI9S83V00wVibqHOEG5 a40Dvir0fp7emnMgekVEgppFhB/pgz/KPzJV5ce57S3h1FehizB/cg7VE+cVFBnXNWnuo6 ldLNs3utAexXe9CQmikf4LK4BhufA37cAEdsjJLJTIQjuA0zjX85Qt+BiOBD9KDOevNC57 a2imBEodVdvKNDjEJmhH9SBpHZMkFntEk6AMA0HM04QCU5/hLAuy/B5tp9vuyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760917861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=l54J/vMRbrAIjfm0TxMvnDQI6rhy6FCG5x+O1DzXwV0=; b=qkhnVm8OYiyaB0C4w8Rb1e8lar3ezfb0iH8G55MR5mqGy7Lw1Eke7b2OSD2a4qC9D9dvFa fP0GRhwaMkdLCLtJGbChXeH7FI0A8t/HqZ5d0iYPU1ABooTeMvwyzZuysVUfHWq2pmQwPk 1qeZQbfX9ytSqqmB3YhGddRkPbKA/XTQKDKSsF7u+HAALWj5kcP1BS6K6Pfr2aayqyc8lN UozBnbaq07BD10YnSVdyPHkr/tbFDvbQM0ztADtehh+QznBK/yCPhaa4G5KCT5lgfU+iBl ruut+DrLB97yd6xKnAK6+NkshUOHaLEK2YoBLR+nn+U7RYR0/vkcoyOUzSdsxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760917861; a=rsa-sha256; cv=none; b=mYW5edWnCzR2bBjWI23XU4iL5Fc7hDkhNOohDtR5QT/Bque8/NYZXzS9SXAP8P1mSs3Dk5 9tR+erXoEKaL7iOQr3Fj9//Au3FOn2Dq4dOQeoV3QNfFdmGotcIJRxMuoN3Yl38rasX8y7 PAcuw00iVeNLrh5K5zD5R65ft72++abxIIfCbPl7HLNngn1ekovueB5E8k+9JSYpPDISzm C5HlhQqhUrhkW3huiJQ2raArNQ0fwvku6U9xUxn2b8TCAjD30TdaEovNlwKJ3Nayjq5EJV Sb+vRY69KFIUioCbdJMIXTqNnsSgkVzfRbEmPh2Tkq3INp1EuTB/8VBH+yVFjA== 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 4cqb1104N4zpxM; Sun, 19 Oct 2025 23: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 59JNp0Ex084414; Sun, 19 Oct 2025 23: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 59JNp0QV084411; Sun, 19 Oct 2025 23:51:00 GMT (envelope-from git) Date: Sun, 19 Oct 2025 23:51:00 GMT Message-Id: <202510192351.59JNp0QV084411@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: a4198ef49677 - releng/15.0 - tcp: bump max snd buffer size for autoscaling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: a4198ef496779a12f183e1fb110ab31e76cfee4d Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a4198ef496779a12f183e1fb110ab31e76cfee4d commit a4198ef496779a12f183e1fb110ab31e76cfee4d Author: Michael Tuexen AuthorDate: 2025-10-15 20:19:14 +0000 Commit: Colin Percival CommitDate: 2025-10-19 23:50:30 +0000 tcp: bump max snd buffer size for autoscaling This allows in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Approved by: re (cperciva) Reviewed by: rscheff, cc, glebius, Nick Banks, Peter Lei, jtl, thj, rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52872 (cherry picked from commit 9dd4742ee51ae80639b087a60ce7d15811c2b1e6) (cherry picked from commit 7d29554b36ebdedf24e4605e5681b95abed5acd6) --- sys/netinet/tcp_output.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 2dfb7faf56e3..208f72c4661c 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -123,7 +123,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_inc, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_inc), 0, "Incrementor step size of automatic send buffer"); -VNET_DEFINE(int, tcp_autosndbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autosndbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_max), 0, "Max size of automatic send buffer"); From nobody Sun Oct 19 23:51:02 2025 X-Original-To: dev-commits-src-branches@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 4cqb123jDqz6Cmp9; Sun, 19 Oct 2025 23:51: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqb1210Kzz3l8Q; Sun, 19 Oct 2025 23: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=1760917862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QCi56fDkZ6PjTG9JiCyR7xMMj31YsktwitOTkv8Qsk=; b=Yc7Y/l9BhX6jJjrnunaUP3lJlLJx9xYvkfJ1kB6zA/91TaI7vPQo613MMmsifbuZTW+btC f7Q/AxmwHeIIL96b6uav56FsemP3UD9OpOLylvAcM4jCkEQ17/3jTvqB2FP9lLn6o8V4zm 3CTG893Nybi0u+utV2tjIH0GtDFC2A6J3Aln6//SnSnJna7+p8gTzjdLg67ThRjErXogOU +Htu7thwLhzudMujGQkUV9xQqTi+t4a7jvTLRRxg3I0sIhXtKVBtDqme3j1OJuMkWU5zY3 LoqIPYZJDqou266k4IO8z+YjY1yOn4b12G1suG32e/T/2JRTxXpuy75UFszuSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760917862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0QCi56fDkZ6PjTG9JiCyR7xMMj31YsktwitOTkv8Qsk=; b=r+2HSexhXs1JX9s6Tl9oXc60q5axy8shAiA3aAjtbcSAcBv0mSLin0kjWC2I2/wsFwAH/p tsLVj/VPXa4sX4YrOMQaMBoYAflWuz+kE6wOZ16LHP4v7mAel70fvZKd3U3f5HaukgAyXz oC/4Zz5EWkdYNQPCrb9z+4UWCz0SxnYdrr4UdZPIJOBfbCQ/E8eQTHw1J78Gldsh+5xVYJ dHPIaBYdNz+PnpJmUgmy+ti1tj4sChjNpeorixqcRVy+ibt6TImJuK45arb1r5jOboTrDg EuN/bwTEjIy6k/wqqBTPT9cIKtlZX4UQdxH8ye+8O6MTRfx9vnGXMAeuvpOxGQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760917862; a=rsa-sha256; cv=none; b=P8r+gW3OY10fsHnBH8cY6UG06KGIW+gotatqZEJcN3o4uLdzeGZbNlQKIhv7nTBXe2rQOC JobNAhx4p5dZ47fCB6obZ7b2eRvE1AyFcdRznDIuzyGpWC0V4BKB9ZUFwvjA6TDMRH5m6h xzILU9duQEH4KOY5wvZ4OczPGMVyO6iiljjg1QxFzdurTNi8nxHITGZ89Y353coCUS+Zhd DrV7HUKDPWj7iuvi2OC0j9hWC0QObyo6Pobpi/mROjCHHXvIFduGrAYIqUbaFxB6ErRnNo kBkSmmk2+hwJt5uxYbvHTUKWhTu9NQTc2ELWW7JDi7bWuKLE2AEdL98nVkUoRw== 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 4cqb120c6yzpXL; Sun, 19 Oct 2025 23: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 59JNp2xs084452; Sun, 19 Oct 2025 23: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 59JNp2sE084448; Sun, 19 Oct 2025 23:51:02 GMT (envelope-from git) Date: Sun, 19 Oct 2025 23:51:02 GMT Message-Id: <202510192351.59JNp2sE084448@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: a95febd39325 - releng/15.0 - tcp: bump max rcv buffer size for autoscaling List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: a95febd39325ad758e91531bd307f2cc4875b924 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a95febd39325ad758e91531bd307f2cc4875b924 commit a95febd39325ad758e91531bd307f2cc4875b924 Author: Michael Tuexen AuthorDate: 2025-10-15 20:24:51 +0000 Commit: Colin Percival CommitDate: 2025-10-19 23:50:38 +0000 tcp: bump max rcv buffer size for autoscaling This allows in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Approved by: re (cperciva) Reviewed by: rscheff, Peter Lei, jtl, thj Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52871 (cherry picked from commit baeff75122e5cdb669c920414e054224270383d7) (cherry picked from commit c3cc8223dd825a1f81cef6be14f8bbba74dc3d2a) --- sys/netinet/tcp_input.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index dd27ec77c1af..2146b0cac48f 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -219,7 +219,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_auto, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_do_autorcvbuf), 0, "Enable automatic receive buffer sizing"); -VNET_DEFINE(int, tcp_autorcvbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autorcvbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autorcvbuf_max), 0, "Max size of automatic receive buffer"); From nobody Sun Oct 19 23:51:03 2025 X-Original-To: dev-commits-src-branches@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 4cqb133WFHz6Cmrj; Sun, 19 Oct 2025 23: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqb131p53z3lPd; Sun, 19 Oct 2025 23: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=1760917863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S0UBiRsPuGaH68DCn5TM5cBP76IxXUdaG2u6JElpqro=; b=uMPQCzevCPsbinWycEK3xsqNWyP5CCflKoAWW0J6F2kzh9KcQHRcuFj0SAi5DQOUhIz9eJ Lz2KJgnA2HIDYTMztzijr1zDhw6urRSQFKuQHsk0rgoIK6CVJe7zh99aEmSyPKzWyuRHLU YaztfNGrmCAIkf+5I6L5/XaeHSkdD/wIA7U/S+K3VFmxXBIipSVY6k5aWhcILQhCIT5cn5 T+YHvozZYImGMiz0rH9mXIcn4/7DiLUgeJW59YDjW/PCWrYlOgAg4LietmTWSHjrfBaT7R ioC3TwPd0prqql2Tnn6ah9/BvelIvdhr3FAd7ua8fY2VG9bp72RYeqI3Jz3bIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760917863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S0UBiRsPuGaH68DCn5TM5cBP76IxXUdaG2u6JElpqro=; b=XmfEyZtw6CE+HNMbdAmLjfS+4caE9CPiMwZwoW0VFIf5fFdtHXMW4HKETI3lP2WG26Z8Ao NIr61kskoqcNAoV3bqIB7zCNxBZRVHoVmGl9LLIKEvPIW5OfIYyupSjXzDNbzoKCQkLwd5 VXo7ZDOP5JpQUndN8oM0V/+UiRdn+5m951QKucEWAqLKU4MX/8ah8bfjQSgg8VGXhF0m5Z RAq2tnM5uOPYc3zYvR+K3foxZn1gLHhDovne3wZ/r0hxC/Z8d5Ol99/eIsbkbUkve7HWP7 2AqY27O7hnBKrgUHY2gi+cwQzVhK2WAnhlh/XwtDHvzJeVSdpOopc7dpiPGxvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760917863; a=rsa-sha256; cv=none; b=bdHtiDsBw0ZYYOgx/h1Oo8EDRk6z1EJQYlW0iAQVXv8WZosaQhYgrHnsNtViI+wqXhnGdG vLGQ9QNuwJ7dPVDCLSGCvEYjHZRle4zEP83DHhJjTImq5JGBinH7ozEuLnzYdBpe2Yhwxf iAc0L5UgN+Ywvw/9qZ/xweV4Os43k/I1ByIqJj8EhexKJn3Pkgu3HFuw+EfqBpW2UVXCfk PYNdW/WN0LetLUFrBc88LHle4tW9iyErlDM7NqepVT7iNSNCAec3+/lOYXxrojGPFQ+PI6 YeZfQUd0hCxOnapvhpkTk80FbfTdBKEc0PqiKjlBvd/u8WvRreBc30cyeM0yBg== 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 4cqb131MGvzpxP; Sun, 19 Oct 2025 23: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 59JNp3IO084491; Sun, 19 Oct 2025 23: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 59JNp348084488; Sun, 19 Oct 2025 23:51:03 GMT (envelope-from git) Date: Sun, 19 Oct 2025 23:51:03 GMT Message-Id: <202510192351.59JNp348084488@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: aa2f726e9ff1 - releng/15.0 - socket: bump socket buffer limit to 8MB List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: aa2f726e9ff1518f822a30b295daa383e5557219 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=aa2f726e9ff1518f822a30b295daa383e5557219 commit aa2f726e9ff1518f822a30b295daa383e5557219 Author: Michael Tuexen AuthorDate: 2025-10-15 20:04:00 +0000 Commit: Colin Percival CommitDate: 2025-10-19 23:50:41 +0000 socket: bump socket buffer limit to 8MB Bump the socket buffer limit from 2 MB to 8MB. In particular, this allows to use larger values for TCP sockets, which may result in higher throughput values with default settings. In the review I was proposing using 16 MB, but in the transport call today we settled on a more conservative value of 8. Bumping it further will be done in combination with mitigations for mbuf exhaustion attacks. Approved by: re (cperciva) Reviewed by: rscheff, Peter Lei, jtl, thj Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D52873 (cherry picked from commit 1fe6497b48d6954ac07870d920b2e5d6d206be5e) (cherry picked from commit 167b9fac60a7d191349b9d841f2aa7d5d0f3eb94) --- sys/sys/sockbuf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/sockbuf.h b/sys/sys/sockbuf.h index b4593f38f592..739723754b7d 100644 --- a/sys/sys/sockbuf.h +++ b/sys/sys/sockbuf.h @@ -62,7 +62,7 @@ #include #include -#define SB_MAX (2*1024*1024) /* default for max chars in sockbuf */ +#define SB_MAX (8*1024*1024) /* default for max chars in sockbuf */ struct ktls_session; struct mbuf; From nobody Sun Oct 19 23:51:04 2025 X-Original-To: dev-commits-src-branches@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 4cqb144rPpz6Cmgr; Sun, 19 Oct 2025 23: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cqb143VNdz3lMM; Sun, 19 Oct 2025 23:51:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760917864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XGbsXWB705leVHAWfgNQixpVuLDhQhQWiccrubhAxvs=; b=VpAYi2/MuJoupMuuWt6bCY2B+erC35+JC7sgToSNRuR3wJ66I8uTFAXfWcs5kDy+9Ber9m cJ7RRGSTgKFqLJTaAHnEBTay60ojIjL51JA1TMxCJc0OkPFOW58sihmvTikg5t5kT/1upF oGLIo8V5+PJp9FXubs7lS7V9gNCyN1mYINJ6kiIK/cxp0BblNaaTDWbGCND+RwkdNhrQJz LeQToc0mN1J/73RO9IX2IcRqZNOQNU7k5izJ0E6sg4pMQCPrUVyek7QnKqO54cz3oJ5qYK NJ93vi4p+Obc3tXY6ac4eTfHFi+NPBiTNpdrqp5ep3f/C49jJ9CroxQtHqOVkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760917864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XGbsXWB705leVHAWfgNQixpVuLDhQhQWiccrubhAxvs=; b=g2pf5HKWcbANZUVSv6rJe7UJYWRcaEcMRGr2YQG3FMRZRut80v5xiPAadTPva6SJJh1eIb yBZ+YQoobXgPmDawhMg30JbgDl2jeY5Z1YS04pN975HrPRT92tI4iIKs2oe4j1GCVcesG0 HTsoKeyu8YkNNkO36y4SLxsJuif/ZQdKo16moBPdCfG8AM5mPa/EM6A8W92y9aVkIozpL0 Yw09dcZs7Cn1MuT6uf9ZKkeNNL3FLXJ8iKeJPQg9ZdMXMYlgsabIMJtj5Sr/N9iwSg4joh wpg7MfZf9+MCi2JSAL1lJNRoLCp3erxN1rgbQMvG0RQuqBm+pfoP/H0KP8wTNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760917864; a=rsa-sha256; cv=none; b=LBHOuwoaH3mLxSBt64jaAMloU2Dck3qqATWhrwFSRyNvIHgQ74NZnCxVvsDUuIfawTqW4K VNl3QBfzFo0D1beiPEQdYk5d4CZY0NzbQEMkcWWSXdu7z+VfRrtjerW1MSbatIzk4LMldO LUqkE7VYwvUN0ibOYrADVKguTKtPQmelBGBre167LfEW6/eZ23DrgH5idS4qlIDuSyJ9Hf B6D8DMhzAXFlILfXFGNd4550dlyQU5tWQ0UaexS1RzGuW9dvfWNJXL+Q4t2k/vZj2P2zUe +RFUt8+YWg/LaJLPQ8TyFh037HpPQWn3YYEjUL18VN8WwsbLZBPYwo0u/+04hA== 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 4cqb142BRgzpXN; Sun, 19 Oct 2025 23:51: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 59JNp4Nx084530; Sun, 19 Oct 2025 23:51:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59JNp4cv084527; Sun, 19 Oct 2025 23:51:04 GMT (envelope-from git) Date: Sun, 19 Oct 2025 23:51:04 GMT Message-Id: <202510192351.59JNp4cv084527@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: 7cd9d3fe838c - releng/15.0 - vmrun.sh: Don't require firmware on amd64 unless -E was specified List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15.0 X-Git-Reftype: branch X-Git-Commit: 7cd9d3fe838c0ff77e4de9c1570856f261d96f18 Auto-Submitted: auto-generated The branch releng/15.0 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=7cd9d3fe838c0ff77e4de9c1570856f261d96f18 commit 7cd9d3fe838c0ff77e4de9c1570856f261d96f18 Author: Mark Johnston AuthorDate: 2025-10-16 14:48:39 +0000 Commit: Colin Percival CommitDate: 2025-10-19 23:50:44 +0000 vmrun.sh: Don't require firmware on amd64 unless -E was specified Approved by: re (cperciva) PR: 290232 Reported by: David Marker Fixes: aa34b1d20e44 ("vmrun.sh: Add arm64 support") MFC after: 3 days (cherry picked from commit f19f17b3af675fbbc1244b66bbd8fb4a9836cb02) (cherry picked from commit 6c5540eebcf25e3f81c3ec9bfa762390d2a86885) --- share/examples/bhyve/vmrun.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/share/examples/bhyve/vmrun.sh b/share/examples/bhyve/vmrun.sh index 52935363023a..e0052e781dc0 100755 --- a/share/examples/bhyve/vmrun.sh +++ b/share/examples/bhyve/vmrun.sh @@ -268,8 +268,10 @@ fi if [ -z "$firmware" ]; then case ${platform} in amd64) - firmware="${efi_firmware}" - firmware_pkg="edk2-bhyve" + if [ ${efi_mode} -ne 0 ]; then + firmware="${efi_firmware}" + firmware_pkg="edk2-bhyve" + fi ;; arm64) firmware="${uboot_firmware}"