From nobody Mon Nov 25 08:05:06 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxdXz219mz5fS1s;
	Mon, 25 Nov 2024 08:05:07 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxdXz00qxz4R1V;
	Mon, 25 Nov 2024 08:05:07 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732521907;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=13fJo04AUUVo40RTAV4swYbyfLjuB46B/Gk6X3wuZJI=;
	b=HPjUPZV+qT+05eP4I3hRgSKLjccPhwtkZaldTlDQGgaXrKcv+rUDgBj+w5MJDmsEmqBH4X
	TyN8SRqztIe7Vo6wLItHkno2f55G7SqYECZw7BPqrg/PYoTEifWSRtg/9fGiPbnOBNX1HJ
	ULyREYgJoTszNrWtJBwAks4329i6uq89+EgKrNS+BKoTvfXCmxYiIop7eDnFr1jUOGHKii
	cNM+EXZTdmN8dgq2eR8QgO6staiNnk3Tx9RIURVfu9w8BePu4K5qJTCAdYay5fWHU4/WiW
	/HyLL7cdqTSnVJ6TNmHcY8mzCTtNpOqjl+dLtGKigBNSuGwfioGUNuASHrrhig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732521907;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=13fJo04AUUVo40RTAV4swYbyfLjuB46B/Gk6X3wuZJI=;
	b=xgNXDqU8w6N/kkUbXrViGyBlBkhOCDqCazKaM8+kUeYW/8lBW7Wc0Tw/AOfM/HyAb7s5HK
	EkUJKj+aFz5VvT1oDN6P25hrnT/n6q9gD+WsXPm+e6JC3ca1nkEYfnY1MfImvDQLLGytbZ
	zZyhmXOViBc1KVDkxLBlul7LcPuJSsagYfWaZBxBR6/N+E7DDMcco851JHJk5TJap7rr/S
	RlxnENduqm3XgEsKUzTauzjRaUAPripIAdKmGXiC+V1RYuv3rbaYnqPKFpxFvhKBrEG8XV
	wi6SZXRjoYA4W0w6KDU5AmNwz4eLUvF/wJUocHq0suPsKMz3rlFVIS/OQuRuKw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732521907; a=rsa-sha256; cv=none;
	b=BnNhoEiVCBzn2sO9tCVO21jJc/nlqRDpMYfeF7vPbL/K5zVOw/9FmjzVmjhjfFrqbk9YRr
	WZv3Sodnaet8HjZW0xiQbi0N/ir7vLz4gRIA4Ol+mMwli8i9RENNosN2X3kQD15df8e9GR
	3DFtNcbydzoHz8cqydiebe64Z/lAn+NJFvaUsUhxnOJX4bDBtZvIZHbjN5URgJEhaOO+Bu
	US0W910Q93UOkQdZnHUXuT1R5mYXgwnlzBuI9o4QTlNjkrMZSkyR2roCDeFEE4DDK01IQu
	Ww5oIsQ7UkUE2csdRV13AD9oRKKg+ecNQ/aigNoE0DMnq1WKFFfohY9/VL4fpg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxdXy6kz5zX6c;
	Mon, 25 Nov 2024 08:05: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 4AP856ae051206;
	Mon, 25 Nov 2024 08:05:06 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AP8564t051203;
	Mon, 25 Nov 2024 08:05:06 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 08:05:06 GMT
Message-Id: <202411250805.4AP8564t051203@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Doug Moore <dougm@FreeBSD.org>
Subject: git: ff4c19bb5427 - main - vm_page: pass page to iter_free
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: dougm
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: ff4c19bb5427ca8e90f7354ff5601b985edf3f9e
Auto-Submitted: auto-generated

The branch main has been updated by dougm:

URL: https://cgit.FreeBSD.org/src/commit/?id=ff4c19bb5427ca8e90f7354ff5601b985edf3f9e

commit ff4c19bb5427ca8e90f7354ff5601b985edf3f9e
Author:     Doug Moore <dougm@FreeBSD.org>
AuthorDate: 2024-11-25 08:03:34 +0000
Commit:     Doug Moore <dougm@FreeBSD.org>
CommitDate: 2024-11-25 08:03:34 +0000

    vm_page: pass page to iter_free
    
    Pass the to-be-freed page to vm_page_iter_free as a parameter, rather
    than computing it from the iterator parameter, to improve performance.
    
    Sort declarations of page_iter functions in vm_page.h.
    
    Reviewed by:    alc
    Differential Revision:  https://reviews.freebsd.org/D47727
---
 sys/vm/vm_kern.c   | 2 +-
 sys/vm/vm_object.c | 2 +-
 sys/vm/vm_page.c   | 8 +++-----
 sys/vm/vm_page.h   | 8 ++++----
 4 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/sys/vm/vm_kern.c b/sys/vm/vm_kern.c
index 6343fb66cfa3..a748a6c57d65 100644
--- a/sys/vm/vm_kern.c
+++ b/sys/vm/vm_kern.c
@@ -660,7 +660,7 @@ _kmem_unback(vm_object_t object, vm_offset_t addr, vm_size_t size)
 	    m = vm_page_iter_lookup(&pages, atop(offset))) {
 		vm_page_xbusy_claim(m);
 		vm_page_unwire_noq(m);
-		vm_page_iter_free(&pages);
+		vm_page_iter_free(&pages, m);
 	}
 	VM_OBJECT_WUNLOCK(object);
 
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index 21773318cea0..84981d7cc7cd 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -2060,7 +2060,7 @@ wired:
 		if ((options & OBJPR_NOTMAPPED) == 0 &&
 		    object->ref_count != 0 && !vm_page_try_remove_all(p))
 			goto wired;
-		vm_page_iter_free(&pages);
+		vm_page_iter_free(&pages, p);
 	}
 	vm_object_pip_wakeup(object);
 
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index f82ca5e16c98..a37619c7743e 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -1713,14 +1713,12 @@ vm_page_free_object_prep(vm_page_t m)
 /*
  *	vm_page_iter_free:
  *
- *	Free the current page, as identified by iterator.
+ *	Free the given page, and use the iterator to remove it from the radix
+ *	tree.
  */
 void
-vm_page_iter_free(struct pctrie_iter *pages)
+vm_page_iter_free(struct pctrie_iter *pages, vm_page_t m)
 {
-	vm_page_t m;
-
-	m = vm_radix_iter_page(pages);
 	vm_radix_iter_remove(pages);
 	vm_page_free_object_prep(m);
 	vm_page_xunbusy(m);
diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h
index 613896e77dd9..f641942efb87 100644
--- a/sys/vm/vm_page.h
+++ b/sys/vm/vm_page.h
@@ -602,7 +602,6 @@ bool vm_page_busy_sleep(vm_page_t m, const char *msg, int allocflags);
 void vm_page_busy_sleep_unlocked(vm_object_t obj, vm_page_t m,
     vm_pindex_t pindex, const char *wmesg, int allocflags);
 void vm_page_free(vm_page_t m);
-void vm_page_iter_free(struct pctrie_iter *);
 void vm_page_free_zero(vm_page_t m);
 
 void vm_page_activate (vm_page_t);
@@ -651,11 +650,13 @@ void vm_page_init_marker(vm_page_t marker, int queue, uint16_t aflags);
 void vm_page_init_page(vm_page_t m, vm_paddr_t pa, int segind, int pool);
 int vm_page_insert (vm_page_t, vm_object_t, vm_pindex_t);
 void vm_page_invalid(vm_page_t m);
-void vm_page_launder(vm_page_t m);
-vm_page_t vm_page_lookup(vm_object_t, vm_pindex_t);
+void vm_page_iter_free(struct pctrie_iter *pages, vm_page_t m);
 void vm_page_iter_init(struct pctrie_iter *, vm_object_t);
 void vm_page_iter_limit_init(struct pctrie_iter *, vm_object_t, vm_pindex_t);
 vm_page_t vm_page_iter_lookup(struct pctrie_iter *, vm_pindex_t);
+bool vm_page_iter_remove(struct pctrie_iter *pages);
+void vm_page_launder(vm_page_t m);
+vm_page_t vm_page_lookup(vm_object_t, vm_pindex_t);
 vm_page_t vm_page_lookup_unlocked(vm_object_t, vm_pindex_t);
 vm_page_t vm_page_next(vm_page_t m);
 void vm_page_pqbatch_drain(void);
@@ -680,7 +681,6 @@ void vm_page_release(vm_page_t m, int flags);
 void vm_page_release_locked(vm_page_t m, int flags);
 vm_page_t vm_page_relookup(vm_object_t, vm_pindex_t);
 bool vm_page_remove(vm_page_t);
-bool vm_page_iter_remove(struct pctrie_iter *);
 bool vm_page_remove_xbusy(vm_page_t);
 int vm_page_rename(struct pctrie_iter *, vm_object_t, vm_pindex_t);
 void vm_page_replace(vm_page_t mnew, vm_object_t object,

From nobody Mon Nov 25 09:03:02 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxfqq0rS7z5fWg4;
	Mon, 25 Nov 2024 09:03: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxfqp603Dz4YXk;
	Mon, 25 Nov 2024 09:03:02 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732525382;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ewa2oGCBJA7QMKMhTrZSKznyfMZkWGWPiWDrw28gZ2A=;
	b=gpsF6dp7g0smzWqS6sayZUaahzi03cFhcmYLN34UNd8yNno6NwYqfiwvTrgFNvXbtXrypO
	9HM2bX0ZL3lcUZva2cluadfQpcExQQtYvL2PJXoCcp7AzK6yIZRUl16XNEflFk0lpxO8hg
	kqxUXXeZZh6W26PSPYs1M9Gh1L2pH0g+WrxcoRb1wOqXusFPOGq1thT1N0tj8UMM41O0rE
	WGIQ+j/kOEnUT2BEd9zvmhlVUnFOCoGEFUnI+7X2/XazTPVS9qHqg+enD8CFOW9q8vRKgk
	7Kj2/ATbNsgO0VWPP/p1iAQy7Pm9CFFyuky8LTl1W1H3fDaY+1gUXOHt/n2h/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732525382;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ewa2oGCBJA7QMKMhTrZSKznyfMZkWGWPiWDrw28gZ2A=;
	b=TAkLTXTQ9Zbxm/iaDGo8dDVDfBnrTxdwccLWhvTfAwkcsz4VWIJTEVS+LttN3VoMVfp7CX
	ye1mAvg0nq2uBWy2aVlkUvEulO7cj5Mx+gLkeyHGFGPh8SeEihKQXkFwCIkkUJc7B0UbR5
	EzY0Wu1g2tkqA+IHNotLl8lNHzpPA+8Ih0iUAs5k8aPaPRt5sRM0J/QeVK4/6rl85Wob7J
	lLcmVimkg2yiW1itoo8fHeKDImgzfC2qtPh+ZAvDLwOnzsamTgGlQPloPfux12tqm5coGI
	ayxjf3jEk+qzTe0p5weP5Q4bm17tk1xzAwI3ccJQ6HGcFIsfki4AIpGe8jff+g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732525382; a=rsa-sha256; cv=none;
	b=ZVLQZJ0jE1Qo26T8Hag881Y4S2N12WSoid5GlUaUYdKlnVMQk4ezF4Xkxdy9N5hM3OEoU1
	od1qgWSpk1jZ5li0iFC8APlZcNQEfGqdmdixRoldxyRT/e2asgt1hACyLHh6EVaB/4tggI
	KJfe13VgYty8dbQCuEGgURfVL/dJX5W7iAu1JKFXS1366nzXaYGGnGDlJn9nw68NjDrfoD
	63prE9E35U0pwtJfAI4NArLjYqnMBH+yoytqUKv0j/YHFelUlxQSoKUzOPgNpQhjlYOPno
	IFt7/9rsPtSsSDbs8KG73rV3S27Tz+jV2iOwubIQwl6PME57jojJz8C21YGqGQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxfqp5bnQzYq4;
	Mon, 25 Nov 2024 09:03: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 4AP932q4062321;
	Mon, 25 Nov 2024 09:03:02 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AP932wu062318;
	Mon, 25 Nov 2024 09:03:02 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 09:03:02 GMT
Message-Id: <202411250903.4AP932wu062318@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Wolfram Schneider <wosch@FreeBSD.org>
Subject: git: aebac8498256 - main - manpage: cross link fhreadlink(2)
  <-> readlink(2)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: wosch
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: aebac84982567b9f026174f545f27902ae371027
Auto-Submitted: auto-generated

The branch main has been updated by wosch:

URL: https://cgit.FreeBSD.org/src/commit/?id=aebac84982567b9f026174f545f27902ae371027

commit aebac84982567b9f026174f545f27902ae371027
Author:     Wolfram Schneider <wosch@FreeBSD.org>
AuthorDate: 2024-11-25 09:02:34 +0000
Commit:     Wolfram Schneider <wosch@FreeBSD.org>
CommitDate: 2024-11-25 09:02:34 +0000

    manpage: cross link fhreadlink(2) <-> readlink(2)
---
 lib/libsys/fhreadlink.2 | 3 ++-
 lib/libsys/readlink.2   | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/libsys/fhreadlink.2 b/lib/libsys/fhreadlink.2
index 2d8db95685da..77bd2f6e7870 100644
--- a/lib/libsys/fhreadlink.2
+++ b/lib/libsys/fhreadlink.2
@@ -87,7 +87,8 @@ is no longer valid
 .El
 .Sh SEE ALSO
 .Xr fhlink 2 ,
-.Xr fhstat 2
+.Xr fhstat 2 ,
+.Xr readlink 2
 .Sh HISTORY
 The
 .Fn fhreadlink
diff --git a/lib/libsys/readlink.2 b/lib/libsys/readlink.2
index 479b77d36607..9c3476697388 100644
--- a/lib/libsys/readlink.2
+++ b/lib/libsys/readlink.2
@@ -138,6 +138,7 @@ is neither
 nor a file descriptor associated with a directory.
 .El
 .Sh SEE ALSO
+.Xr fhreadlink 2 ,
 .Xr lstat 2 ,
 .Xr stat 2 ,
 .Xr symlink 2 ,

From nobody Mon Nov 25 12:20:09 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxlCG03bcz5dWN4;
	Mon, 25 Nov 2024 12:20: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxlCF6d7Xz4tvy;
	Mon, 25 Nov 2024 12:20:09 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732537209;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8ktnhbyam2lL7hPpXcjjRqg/0OvOwvEb0KcRW5OdBpg=;
	b=eI4kehfcLgGm51Fdy9aNf7qbugtuMOhKf+okxg3YPvgKGBGDhhyYX86chIz8vUEPJxI3lc
	jzuNfCt2rI+/Txvf/VzJuxe+NZzWjiXAuBrMnuKkDfJKN4rSvSczI60C26FXXM85ls3t5h
	8gu/oPedW5kkBgS2G+GADHB/QWcsxnbQ++O2fR8GotLBob2fiVX/dKX4sWCoDYDBxTQ8hw
	8o26MTTEZcCxvhxQv+Jumm0ZrDMC8DnR7yFn5SAE1tC3W0L0F5Ik1FdawGEgfZo0FOWiM7
	sGAXzoxZhiw8CkgQ1CnSjhAN01a5EAtnlCq1juCidCT6F+DZQspOuOat/MoMhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732537209;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8ktnhbyam2lL7hPpXcjjRqg/0OvOwvEb0KcRW5OdBpg=;
	b=WyLBbCOw4K6KkorNpSJXnEZAvP62GEcpiM51PyAfk0LYBLNWwzo1K09+N+G3e2K3L6Nd93
	akwumRnDTqnIi45As82L3zQKJoMZZ8LqY7UYhd9XZ0PWeOVfm81FwKZ7Z5PeUlukaPb1Kj
	9++b11b0n3BwIDjK34fwN26A/MxqItUbyPoqs34wZlootD/ZcHBnrWJi+ai7XK/r1hzr9E
	jsy0rPR+E8u6U5K9Vh9w5yC2xw4TKGaxTB4mxwIEJqPQvE8HkJQoJstwFTstyPWfCWNyE7
	yMHNHvp+ysAV5kaio+K9lGonmxyYmCX702lZZxr/5Kh6EoIO6C+CuhcKQ3Vf1g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732537209; a=rsa-sha256; cv=none;
	b=fc4TigF28QKVTTdw1Kh0r6H1DJdCeI42DQTVUkmc7Wezf4G/rGttglIKLQ7E6b6FooFo3S
	35vDPukbw7Ufiv9K8txgEi/svHhzneKxHROk/EUGnXYkdOSRWX9U69FA0cYG63Uw70mzlc
	sizJYr2LpXYt7JZRvItSK+LRobI1kJplic7FWHXvmM2GY+ChMEEfEFpRZgqvLfGj5bkD+Y
	xnoByRMAJXXFIEKVkTi1/YcVGywGljrmD47b5IwXKSgKVIWAE1z47lro3sIItIXHrYQmmV
	l3TDmmlNmTc3uQ7XtZ5KZjUsG3UuOcKtCaTjaMVoH20c+s1KHtyV8jvciVWjXA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxlCF5dxPzfr6;
	Mon, 25 Nov 2024 12:20:09 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APCK9PV025146;
	Mon, 25 Nov 2024 12:20:09 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APCK9G7025130;
	Mon, 25 Nov 2024 12:20:09 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 12:20:09 GMT
Message-Id: <202411251220.4APCK9G7025130@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 2d6923790b16 - main - amd64 pmap: assert and explain
  why pmap_qremove() is safe WRT supermappings
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 2d6923790b16785ac691cedb23234067672fe1cc
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=2d6923790b16785ac691cedb23234067672fe1cc

commit 2d6923790b16785ac691cedb23234067672fe1cc
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-23 21:02:25 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-25 12:16:50 +0000

    amd64 pmap: assert and explain why pmap_qremove() is safe WRT supermappings
    
    Based on alc@ comments from https://reviews.freebsd.org/D47678.
    
    Reviewed by:    alc
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47717
---
 sys/amd64/amd64/pmap.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 3b7220369b61..21b8555b5380 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -4082,7 +4082,19 @@ pmap_qremove(vm_offset_t sva, int count)
 
 	va = sva;
 	while (count-- > 0) {
+		/*
+		 * pmap_enter() calls within the kernel virtual
+		 * address space happen on virtual addresses from
+		 * subarenas that import superpage-sized and -aligned
+		 * address ranges.  So, the virtual address that we
+		 * allocate to use with pmap_qenter() can't be close
+		 * enough to one of those pmap_enter() calls for it to
+		 * be caught up in a promotion.
+		 */
 		KASSERT(va >= VM_MIN_KERNEL_ADDRESS, ("usermode va %lx", va));
+		KASSERT((*vtopde(va) & X86_PG_PS) == 0,
+		    ("pmap_qremove on promoted va %#lx", va));
+
 		pmap_kremove(va);
 		va += PAGE_SIZE;
 	}

From nobody Mon Nov 25 12:20:10 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxlCH1Rmpz5dWN5;
	Mon, 25 Nov 2024 12:20: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxlCG6Q3nz4v1x;
	Mon, 25 Nov 2024 12:20:10 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732537210;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mKzSu3gjvYFbTAXdv73m7voZwRa3jBchr92tAZZjr6s=;
	b=Y0/hIg5z7n0jB0x5lzUwXKg/c7sVAJEtT+RKf28D3SntHcDwF/LeSBobg5v2ePsBTVR2hV
	NOSHm96e4MqwSEP0jAkH0T99Z0vaVn+y8gRhVm8T6P/6jXwil3Yl5/GWpDyzLCJofucawh
	lEtIZ95PP8IfEQkRmqGejMdx0l3Zjv4O5P+uETte4Y5FceCvGc7FXkhuRDAeKFnDQltDHt
	G81m/kOo8N193XLRTU/IcwcOcmTKtVOAfXcBhEk1jJXK7YZPItzc2nJnL7hnPON7YRAxLV
	iyJiGiRpCu723agPsn8GWN5seGcwysOnk1DT07IHVyH8QUwJ+IJmzZwapldC1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732537210;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mKzSu3gjvYFbTAXdv73m7voZwRa3jBchr92tAZZjr6s=;
	b=iMuRVLY+BVqiyKDjJCNAKr1wODwYQYse6hd4jTZ1Gy+94WbsCV86cOiw0+F+Y3CgUoOnxo
	Xsgmd+31HPTCcFxj+RXh5/X7Ue7NrP8PD+Z9dt3nNlg4m/JPHQBWQpUvln1mu5h/sfC1dW
	yR0+eZOAwfWv7eGvcCsmBA49OvdyXCAKeJZgK3XchHsTXBkBBn3KwgYlW2Pi1/rDinQP1E
	7HKuTPV++yQ5F9ScTjX8evtQug96jlMGxRsTueShglc0Ibcubxj02G56dHrJmaKzN/tgf1
	a/f3ATc5FmtGwG7aPTBE36B9HLCzT1gxA0W7b7AYIsmd5btzdY6W4veP6OBvfQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732537210; a=rsa-sha256; cv=none;
	b=iNHLygzqu3T6AegKlzRgPSrjZ3KwpSZgyvzdnb9URojvc3LDm1HFURg/Y2zIjAt1Ldo/gZ
	qw5wJ/CFqCu0yrwrEXp3Q2UmYnWSdAJ37+mRLVl1G4YemG0EFBYkxMeonI77BSivcQk+wl
	LZgQG/93dv5MvR5a0xJV3bcLq/7rovaRl01ZLPX/xiTOITu76wZ8jUGaDL+BVlUz1F1Pyf
	HSR3PSz4LqzvshXZU1zLMHNriR5/zDU/LMFf/JO4dZDk6U+c3wSjuOWV2Mbr+Qjr0l+Rsz
	m2tTGI3HM8h95+gX2BrIQwwXclN4WYGmiZsnhzKYPhdUQckSUPPKx+7K2uTgxw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxlCG5vNtzg9f;
	Mon, 25 Nov 2024 12:20: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 4APCKA5h025820;
	Mon, 25 Nov 2024 12:20:10 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APCKABF025806;
	Mon, 25 Nov 2024 12:20:10 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 12:20:10 GMT
Message-Id: <202411251220.4APCKABF025806@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 6ec4ff70885d - main - amd64: switch pmap_map_io_transient()
  to use pmap_kenter_attr()
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6ec4ff70885d8048be8de9b9d690dd371e3d4a3e
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=6ec4ff70885d8048be8de9b9d690dd371e3d4a3e

commit 6ec4ff70885d8048be8de9b9d690dd371e3d4a3e
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-23 21:03:40 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-25 12:16:50 +0000

    amd64: switch pmap_map_io_transient() to use pmap_kenter_attr()
    
    instead of constructing transient pte itself.  This pre-set PG_A and
    PG_M bits, avoiding atomic pte update on access and modification.  Also
    it set the nx bit, the mapping is not supposed to be used for executing.
    
    Reviewed by:    alc
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47717
---
 sys/amd64/amd64/pmap.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 21b8555b5380..82110e61d54a 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -10518,8 +10518,7 @@ pmap_map_io_transient(vm_page_t page[], vm_offset_t vaddr[], int count,
 {
 	vm_paddr_t paddr;
 	bool needs_mapping;
-	pt_entry_t *pte;
-	int cache_bits, error __unused, i;
+	int error __unused, i;
 
 	/*
 	 * Allocate any KVA space that we need, this is done in a separate
@@ -10564,11 +10563,8 @@ pmap_map_io_transient(vm_page_t page[], vm_offset_t vaddr[], int count,
 				 */
 				pmap_qenter(vaddr[i], &page[i], 1);
 			} else {
-				pte = vtopte(vaddr[i]);
-				cache_bits = pmap_cache_bits(kernel_pmap,
-				    page[i]->md.pat_mode, false);
-				pte_store(pte, paddr | X86_PG_RW | X86_PG_V |
-				    cache_bits);
+				pmap_kenter_attr(vaddr[i], paddr,
+				    page[i]->md.pat_mode);
 				pmap_invlpg(kernel_pmap, vaddr[i]);
 			}
 		}

From nobody Mon Nov 25 13:57:46 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxnN05pk0z5dfFm;
	Mon, 25 Nov 2024 13:57:52 +0000 (UTC)
	(envelope-from cy.schubert@cschubert.com)
Received: from omta002.cacentral1.a.cloudfilter.net (omta002.cacentral1.a.cloudfilter.net [3.97.99.33])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "Client", Issuer "CA" (not verified))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxnMz51Lhz55xP;
	Mon, 25 Nov 2024 13:57:51 +0000 (UTC)
	(envelope-from cy.schubert@cschubert.com)
Authentication-Results: mx1.freebsd.org;
	dkim=none;
	spf=pass (mx1.freebsd.org: domain of cy.schubert@cschubert.com designates 3.97.99.33 as permitted sender) smtp.mailfrom=cy.schubert@cschubert.com;
	dmarc=pass (policy=quarantine) header.from=cschubert.com
Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227])
	by cmsmtp with ESMTPS
	id FZIWtzs3LMArNFZb4tS1IT; Mon, 25 Nov 2024 13:57:50 +0000
Received: from spqr.komquats.com ([70.66.152.170])
	by cmsmtp with ESMTPSA
	id FZb2tBXfmKHV8FZb3tG3l5; Mon, 25 Nov 2024 13:57:50 +0000
X-Auth-User: cschuber
X-Authority-Analysis: v=2.4 cv=XeEqz555 c=1 sm=1 tr=0 ts=6744825e
 a=y8EK/9tc/U6QY+pUhnbtgQ==:117 a=y8EK/9tc/U6QY+pUhnbtgQ==:17
 a=kj9zAlcOel0A:10 a=VlfZXiiP6vEA:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8
 a=VxmjJ2MpAAAA:8 a=YxBL1-UpAAAA:8 a=CXeuzdDWRU_JmaD-BM8A:9
 a=7HvbkwkcuuyCew05:21 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22
 a=7gXAzLPJhVmCkEl4_tsf:22 a=Ia-lj3WSrqcvXOmTRaiG:22
Received: from slippy.cwsent.com (slippy [10.1.1.91])
	by spqr.komquats.com (Postfix) with ESMTP id D84F71152;
	Mon, 25 Nov 2024 05:57:46 -0800 (PST)
Received: by slippy.cwsent.com (Postfix, from userid 1000)
	id D16AA24F; Mon, 25 Nov 2024 05:57:46 -0800 (PST)
X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev
Reply-to: Cy Schubert <Cy.Schubert@cschubert.com>
From: Cy Schubert <Cy.Schubert@cschubert.com>
X-os: FreeBSD
X-Sender: cy@cwsent.com
X-URL: http://www.cschubert.com/
To: Martin Matuska <mm@FreeBSD.org>
cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
    dev-commits-src-main@FreeBSD.org
Subject: Re: git: 718519f4efc7 - main - zfs: merge openzfs/zfs@d0a91b9f8
In-reply-to: <20241124142859.D814033D@slippy.cwsent.com>
References: <202411240906.4AO96MWU074339@gitrepo.freebsd.org> 
 <20241124142859.D814033D@slippy.cwsent.com>
Comments: In-reply-to Cy Schubert <Cy.Schubert@cschubert.com>
   message dated "Sun, 24 Nov 2024 06:28:59 -0800."
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Mon, 25 Nov 2024 05:57:46 -0800
Message-Id: <20241125135746.D16AA24F@slippy.cwsent.com>
X-CMAE-Envelope: MS4xfEXpKtAi2slKVRC+tbMV2AuNbwgZZGvCTuINBsYCvVD9mZDs2NhA6GRRqenC9twFKD5RVFuirUd9ZjU7p7VESycJwdV0FBCx6s7t0oOAqWAkiSL8G7rM
 NjS5dg3PkBognknyk8vrt2XKRG2SGOAnKKV4t9VyLoSKbx+yp/tcgaqby72TdfUtZBork0wUioeho+9C6lnAteVMqLtM4IQmKkdcn4PbBUaXk5rX5AjV84LA
 E1kI3xenz7wcLeYp7LkJWfdC3Atm4ShcKZUYVJqTh2msnyN1UXdjnW/y97tpi2UM9XY3dLUWB6TrQyHygoArxlkIh+/39J1kFbs7pxiH+8o=
X-Spamd-Result: default: False [-3.36 / 15.00];
	NEURAL_HAM_MEDIUM(-1.00)[-0.998];
	NEURAL_HAM_LONG(-0.99)[-0.986];
	NEURAL_HAM_SHORT(-0.98)[-0.975];
	MV_CASE(0.50)[];
	DMARC_POLICY_ALLOW(-0.50)[cschubert.com,quarantine];
	R_SPF_ALLOW(-0.20)[+ip4:3.97.99.32/31];
	RCVD_IN_DNSWL_LOW(-0.10)[3.97.99.33:from];
	MIME_GOOD(-0.10)[text/plain];
	RCVD_VIA_SMTP_AUTH(0.00)[];
	ARC_NA(0.00)[];
	TO_DN_SOME(0.00)[];
	ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US];
	MIME_TRACE(0.00)[0:+];
	REPLYTO_EQ_FROM(0.00)[];
	R_DKIM_NA(0.00)[];
	HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com];
	FROM_EQ_ENVFROM(0.00)[];
	FROM_HAS_DN(0.00)[];
	RWL_MAILSPIKE_POSSIBLE(0.00)[3.97.99.33:from];
	TO_MATCH_ENVRCPT_ALL(0.00)[];
	RCVD_COUNT_THREE(0.00)[4];
	RCVD_TLS_LAST(0.00)[];
	MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org,dev-commits-src-all@freebsd.org];
	RCPT_COUNT_THREE(0.00)[4]
X-Rspamd-Queue-Id: 4XxnMz51Lhz55xP
X-Spamd-Bar: ---

In message <20241124142859.D814033D@slippy.cwsent.com>, Cy Schubert writes:
> In message <202411240906.4AO96MWU074339@gitrepo.freebsd.org>, Martin 
> Matuska wr
> ites:
> > The branch main has been updated by mm:
> >
> > URL: https://cgit.FreeBSD.org/src/commit/?id=718519f4efc71096422fc71dab90b2
> a3
> > 369871ff
> >
> > commit 718519f4efc71096422fc71dab90b2a3369871ff
> > Merge: a46c121db4a5 d0a91b9f88a4
> > Author:     Martin Matuska <mm@FreeBSD.org>
> > AuthorDate: 2024-11-24 09:04:11 +0000
> > Commit:     Martin Matuska <mm@FreeBSD.org>
> > CommitDate: 2024-11-24 09:04:51 +0000
> >
> >     zfs: merge openzfs/zfs@d0a91b9f8
> >     
> >     Notable upstream pull request merges:
> >      #16643 -multiple Change rangelock handling in FreeBSD's zfs_getpages()
> >      #16697 46c4f2ce0 dsl_dataset: put IO-inducing frees on the pool deadli
> st
> >      #16740 -multiple BRT: Rework structures and locks to be per-vdev
> >      #16743 a60ed3822 L2ARC: Move different stats updates earlier
> >      #16758 8dc452d90 Fix some nits in zfs_getpages()
> >      #16759 534688948 Remove hash_elements_max accounting from DBUF and ARC
> >      #16766 9a81484e3 ZAP: Reduce leaf array and free chunks fragmentation
> >      #16773 457f8b76e BRT: More optimizations after per-vdev splitting
> >      #16782 0ca82c568 L2ARC: Stop rebuild before setting spa_final_txg
> >      #16785 d76d79fd2 zio: Avoid sleeping in the I/O path
> >      #16791 ae1d11882 BRT: Clear bv_entcount_dirty on destroy
> >      #16796 b3b0ce64d FreeBSD: Lock vnode in zfs_ioctl()
> >      #16797 d0a91b9f8 FreeBSD: Reduce copy_file_range() source lock to shar
> ed
> >     
> >     Obtained from:  OpenZFS
> >     OpenZFS commit: d0a91b9f88a47316158508bf304a61baa8c99c10
> >
> >  sys/contrib/openzfs/.mailmap                       |    2 +
> >  sys/contrib/openzfs/AUTHORS                        |    4 +
> >  sys/contrib/openzfs/META                           |    2 +-
> >  sys/contrib/openzfs/cmd/arc_summary                |    5 +-
> >  sys/contrib/openzfs/cmd/zdb/zdb.c                  |   34 +-
> >  sys/contrib/openzfs/cmd/zed/agents/zfs_retire.c    |    4 +-
> >  .../openzfs/include/os/freebsd/spl/sys/debug.h     |    4 +-
> >  .../openzfs/include/os/freebsd/spl/sys/vnode.h     |    2 -
> >  .../openzfs/include/os/linux/spl/sys/debug.h       |    4 +-
> >  sys/contrib/openzfs/include/sys/arc.h              |    1 +
> >  sys/contrib/openzfs/include/sys/arc_impl.h         |    1 +
> >  sys/contrib/openzfs/include/sys/brt_impl.h         |  106 +-
> >  sys/contrib/openzfs/include/sys/spa.h              |    1 +
> >  sys/contrib/openzfs/include/sys/spa_impl.h         |    6 +-
> >  sys/contrib/openzfs/include/sys/zap.h              |    7 +-
> >  sys/contrib/openzfs/man/man8/zpool-remove.8        |   36 +-
> >  sys/contrib/openzfs/man/man8/zpool.8               |   34 +
> >  .../openzfs/module/os/freebsd/zfs/zfs_vnops_os.c   |   81 +-
> >  .../openzfs/module/os/linux/zfs/zpl_super.c        |   13 +-
> >  sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c  |    2 +-
> >  sys/contrib/openzfs/module/zfs/arc.c               |   66 +-
> >  sys/contrib/openzfs/module/zfs/brt.c               | 1138 ++++++++--------
> --
> > --
> >  sys/contrib/openzfs/module/zfs/dbuf.c              |   19 +-
> >  sys/contrib/openzfs/module/zfs/dsl_dataset.c       |   28 +-
> >  sys/contrib/openzfs/module/zfs/spa.c               |    2 +
> >  sys/contrib/openzfs/module/zfs/spa_misc.c          |   17 +-
> >  sys/contrib/openzfs/module/zfs/zap_leaf.c          |  106 +-
> >  sys/contrib/openzfs/module/zfs/zap_micro.c         |   68 +-
> >  sys/contrib/openzfs/module/zfs/zio.c               |   27 +-
> >  sys/contrib/openzfs/module/zfs/zio_checksum.c      |    6 +
> >  sys/contrib/openzfs/module/zfs/zio_compress.c      |    4 -
> >  sys/contrib/openzfs/rpm/generic/zfs-dkms.spec.in   |    1 +
> >  .../openzfs/tests/zfs-tests/cmd/getversion.c       |    6 +-
> >  .../tests/functional/bclone/bclone_prop_sync.ksh   |    8 +-
> >  .../cli_root/zpool_status/zpool_status_008_pos.ksh |   10 +-
> >  sys/modules/zfs/zfs_config.h                       |    6 +-
> >  sys/modules/zfs/zfs_gitrev.h                       |    2 +-
> >  37 files changed, 956 insertions(+), 907 deletions(-)
> >
>
> This commit results in the following panic.
>
> Fatal trap 12: page fault while in kernel mode^M
> cpuid = 1; apic id = 01^M
> fault virtual address   = 0x8^M
> fault code              = supervisor write data, page not present^M
> instruction pointer     = 0x20:0xffffffff81502f4c^M
> stack pointer           = 0x28:0xfffffe008ea11680^M
> frame pointer           = 0x28:0xfffffe008ea11680^M
> code segment            = base 0x0, limit 0xfffff, type 0x1b^M
>                         = DPL 0, pres 1, long 1, def32 0, gran 1^M
> processor eflags        = interrupt enabled, resume, IOPL = 0^M
> current process         = 65 (zpool)^M
> rdi: fffffe00927d75f8 rsi: fffffe00927e9000 rdx: fffffe00927e9000^M
> rcx: 0000000000000000  r8: 0000000000000010  r9: fffffe000ec6a640^M
> rax: 0000000000000000 rbx: fffffe00927e9000 rbp: fffffe008ea11680^M
> r10: 0000000000000000 r11: 00000000c052d227 r12: fffff8000625ad10^M
> r13: 0000000000000000 r14: 0000000000000000 r15: 0000000000000000^M
> trap number             = 12^M
> panic: page fault^M
> cpuid = 1^M
> time = 1732429270^M
> KDB: stack backtrace:^M
> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
> 0xfffffe008ea11370^M
> vpanic() at vpanic+0x136/frame 0xfffffe008ea114a0^M
> panic() at panic+0x43/frame 0xfffffe008ea11500^M
> trap_fatal() at trap_fatal+0x40b/frame 0xfffffe008ea11560^M
> trap_pfault() at trap_pfault+0x46/frame 0xfffffe008ea115b0^M
> calltrap() at calltrap+0x8/frame 0xfffffe008ea115b0^M
> --- trap 0xc, rip = 0xffffffff81502f4c, rsp = 0xfffffe008ea11680, rbp = 
> 0xfffffe
> 008ea11680 ---^M
> list_insert_head() at list_insert_head+0x1c/frame 0xfffffe008ea11680^M
> vdev_add_child() at vdev_add_child+0xd2/frame 0xfffffe008ea116c0^M
> vdev_alloc() at vdev_alloc+0x9ab/frame 0xfffffe008ea11760^M
> spa_config_parse() at spa_config_parse+0x22/frame 0xfffffe008ea117b0^M
> spa_config_parse() at spa_config_parse+0x9c/frame 0xfffffe008ea11800^M
> spa_config_parse() at spa_config_parse+0x9c/frame 0xfffffe008ea11850^M
> spa_ld_mos_init() at spa_ld_mos_init+0x299/frame 0xfffffe008ea118d0^M
> spa_ld_mos_with_trusted_config() at spa_ld_mos_with_trusted_config+0x18/fram
> e 0x
> fffffe008ea11900^M
> spa_load() at spa_load+0xa7/frame 0xfffffe008ea11a70^M
> spa_tryimport() at spa_tryimport+0x1d9/frame 0xfffffe008ea11af0^M
> zfs_ioc_pool_tryimport() at zfs_ioc_pool_tryimport+0x3a/frame 
> 0xfffffe008ea11b20
> ^M
> zfsdev_ioctl_common() at zfsdev_ioctl_common+0x48d/frame 
> 0xfffffe008ea11bc0^M
> zfsdev_ioctl() at zfsdev_ioctl+0xee/frame 0xfffffe008ea11bf0^M
> devfs_ioctl() at devfs_ioctl+0xcb/frame 0xfffffe008ea11c40^M
> vn_ioctl() at vn_ioctl+0xc8/frame 0xfffffe008ea11cb0^M
> devfs_ioctl_f() at devfs_ioctl_f+0x1e/frame 0xfffffe008ea11cd0^M
> kern_ioctl() at kern_ioctl+0x255/frame 0xfffffe008ea11d40^M
> sys_ioctl() at sys_ioctl+0x101/frame 0xfffffe008ea11e00^M
> amd64_syscall() at amd64_syscall+0x115/frame 0xfffffe008ea11f30^M
> fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe008ea11f30^M
> --- syscall (54, FreeBSD ELF64, ioctl), rip = 0x33b958fe6b6a, rsp = 
> 0x33b94cd0f3
> 48, rbp = 0x33b94cd0f3b0 ---^M
> Uptime: 9s^M
> Dumping 425 out of 8160 MB:..4%..12%..23%..31%..42%..53%..61%..72%..83%..91%
> ^M

This requires a fresh clean build to work around the panic.

Sorry for not posting this earlier. I spent the whole day yesterday moving 
furniture. I didn't have it in me to do anything after that.


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  https://FreeBSD.org
NTP:           <cy@nwtime.org>    Web:  https://nwtime.org

			e^(i*pi)+1=0



From nobody Mon Nov 25 14:25:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxp0563MYz5dgxX;
	Mon, 25 Nov 2024 14:25:41 +0000 (UTC)
	(envelope-from kevans@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxp054Xmrz58Fb;
	Mon, 25 Nov 2024 14:25:41 +0000 (UTC)
	(envelope-from kevans@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732544741;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=bbJ+R42U51QP3Fs+YR+FXmUxeF0Dc81BtTW7tkmYzJw=;
	b=xVPx/YpyhmVwQMKEHh/leL/l86DxTrtyudbfBpbV0Ufkxig12VQhTIvzsah4Q+9Er/xNox
	zSt1byoEIgEkm2XE7gq8jFxSR/XR+N90iFfN5OI9yPNcFr+dgddQ3Q/UiZZhQipEpvlnsC
	MrMXzMYhN10cuNn6QsaYQdCNcRwnM3ptPddKImnFcQGbpkldy5QeGvGtGN+Y7ZkIPf8vyO
	0ykVaNSMhZJWDjVs6Sk8deN9IzKoOxujcHFGs1TIMkQEwJOR/Wek3iN3qCOJwnYFf77708
	N+ZnS/EpnLoNCqdRMPPw6uiKqE6/B9RJ9SinwCP+s+TFCKnvQRGvXGrtoHtKhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732544741;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=bbJ+R42U51QP3Fs+YR+FXmUxeF0Dc81BtTW7tkmYzJw=;
	b=xAp6BIH0peczxOrEjPV7q0EPiqTkK2C8KjxJCWi818tZJMU+A0irOL97SzSTexF30O8xtm
	re/bO+hdaHT8C7JA5ysLs+k1esOeVH7oSxmros0DGrgpqI8WVFARwYp/WA1CWcGsvDywJ8
	Bd6Ret6xY1njwvdQPGGPLFQWk6Sopjd2Jh/ibc004bxKXob40W6yRwImbASdf7SUN1s7+g
	NsU1Pq7PBAjVRwC+Go8PO72Lb1og+q48zAQp/g1WGAAqW4Ft+l77zhhfi2WUl0LeROKySh
	aloB8wnoKbcsFRFMddPEKOK9dA81+UyTNOzKSAYEuvbOuPqgFNdJfYHq8Qq1Fw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732544741; a=rsa-sha256; cv=none;
	b=RRJFOgpXUsCaRTqcMfQeTKmGeMszCRW8q+xAg+kA/XHHE5+PKfa4BO0bCNvxNHK0dUN2r3
	u0iK2lHbVVegbA4qk9iEDFaN35am39BbV9QEogcr0SWNyrkhJBAh6OXyyc+uphpslGBwTd
	O0IwRkhA88BO3o+Qs6PNvUK0dP5HXNbrgQhmsF6Hc+uLFdbLBotuxAqxKDElJmIVokO/C+
	2p97XrD8b44dflorVeDGiSRkqrTBDS6sgPq6F5bnCd7g/VEqVoy1JUH1ye+WSLn3i23DNU
	Ve+NhGjpZinlW9qV/vyNKLPWwt97CSq9FFCtX2YqNcZoxbz+/qGCy8TI0TYU/g==
Received: from [10.9.4.95] (unknown [209.182.120.176])
	(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: kevans/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xxp0517Xzz1S2X;
	Mon, 25 Nov 2024 14:25:41 +0000 (UTC)
	(envelope-from kevans@FreeBSD.org)
Message-ID: <7c698cf4-ed41-4b15-8388-8d826b380ec2@FreeBSD.org>
Date: Mon, 25 Nov 2024 08:25:38 -0600
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: git: 8ea6c1154094 - main - usr.bin/bc: remove OpenBSD derived bc
 and dc commands
To: =?UTF-8?Q?Stefan_E=C3=9Fer?= <se@FreeBSD.org>,
 src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
 dev-commits-src-main@FreeBSD.org
References: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
Content-Language: en-US
From: Kyle Evans <kevans@FreeBSD.org>
In-Reply-To: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 11/24/24 16:08, Stefan Eßer wrote:
> The branch main has been updated by se:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=8ea6c115409450ff58a8c6b5e818319d181c6bff
> 
> commit 8ea6c115409450ff58a8c6b5e818319d181c6bff
> Author:     Stefan Eßer <se@FreeBSD.org>
> AuthorDate: 2024-11-24 21:38:23 +0000
> Commit:     Stefan Eßer <se@FreeBSD.org>
> CommitDate: 2024-11-24 21:38:23 +0000
> 
>      usr.bin/bc: remove OpenBSD derived bc and dc commands
>      
>      In 2020, an improved implementation of the bc and dc commands
>      developed by Gavin D. Howard has been imported into FreeBSD.
>      It has replaced the OpenBSD-derived versions of these commands
>      in all currently supported FreeBSD releases.
>      
>      The OpenBSD versions could still be built using the WITHOUT_GH_BC
>      option. There have been no reports of problems or unexpected
>      deviations from the OpenBSD version for some time, therefore
>      keeping the OpenBSD version is no longer required in FreeBSD.
>      
>      This commit removes the option to build the OpenBSD version and
>      corresponding source files from -CURRENT. No MFC is planned, all
>      currently released FreeBSD versions should retain the build option.
>      
>      The WITHOUT_GH_BC option is no longer accepted and will cause
>      make buildworld to fail.
>      

What does this mean?  It's not clear from the diff; it looks like you 
just removed the option, which generally doesn't mean 'make buildworld' 
will fail if the knob is exercised -- just that the knob doesn't do 
anything.  Was this just supposed to mean that it's no longer accepted 
because it would have caused buildworld to fail?

 > [... snip ...]
 >
> diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
> index 1378d6b6dcfa..5362ba0e5955 100644
> --- a/ObsoleteFiles.inc
> +++ b/ObsoleteFiles.inc
> @@ -51,6 +51,13 @@
>   #   xargs -n1 | sort | uniq -d;
>   # done
>   
> +# 20241124: library and tests of OpenBSD dc
> +OLD_FILES+=usr/share/misc/bc.library
> +OLD_FILES+=usr/tests/usr.bin/dc/Kyuafile
> +OLD_FILES+=usr/tests/usr.bin/dc/bcode
> +OLD_FILES+=usr/tests/usr.bin/dc/inout
> +OLD_DIRS+=usr/tests/usr.bin/dc
> +
>   # 20241119: rewrite mv tests
>   OLD_FILES+=usr/tests/bin/mv/legacy_test
>   

This seems to have missed removing the associated mtree entry in 
^/etc/mtree/BSD.tests.dist.

Thanks,

Kyle Evans


From nobody Mon Nov 25 15:14:44 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxq4h4rHKz5dlMD;
	Mon, 25 Nov 2024 15:14: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxq4h44mxz42nx;
	Mon, 25 Nov 2024 15:14:44 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732547684;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=a3G0akWEOooK5DFw6Qsm9zJ2mpNCZlfTmnjB+i9mkOs=;
	b=oS0zMEJ5TSCvuOqTRv3Nt5j1pdR9e/ig5Qi1PUs0ZJjptN6RZGDjbOB0w9R+0dThPihI5D
	Sm3Bq4IqNWyeVUi6QPbc/1yBfISFmG2wHa5o/HSueW2C/6fV7ChXny1HP+GTi1bsGWKeCe
	2UkaTNAyoMbNhKCQgWi/xVGCHJyX/VhiNFw8kwNL5w3SEZwD5rSPXoIHxEP4o6+TzU2phO
	DQDPgVNN6UhJzr+qrSPxRvXTQHyjZhMGPA79scxjLFptmRYSlV2czpWTEF2TJCr4sjhB4M
	x5YCOl6DdhwL6HOmJoM8Yp8HXRA8BOPkrD4zpjvsH2j3+L9swuMoOmAV3rR08A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732547684;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=a3G0akWEOooK5DFw6Qsm9zJ2mpNCZlfTmnjB+i9mkOs=;
	b=v8siPYhmcw2flaSVV57C8OwXhehQGS9LDu9oVJrgNXhttFGH8iIieaB0SYxSsZAo++X09E
	/ShUVAhHk/hx3ZtZk9dKdN2bp1lAWKFN6aJbwAZwlI/aPbrj8RpSJBJF7+ltevLfEahFS4
	ifH68hwFe2f8NYyZQzD0TC0TYvQF96cLujVL3ro4kwuI+H7qPqwGelpeSUZcCFvzjRPs41
	Ga8EflkHg+bLwjDxZIxGz2NG7zKGmMiSg+elpPy7v3ucc4tB2kN2H3a4/eGo7GObIi9v0S
	+SNnjTQy40zjYzWWH5r6if4VkCxHGnSqNsLK5N4rM9q7xvcAOdnS7HC24HuQQw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732547684; a=rsa-sha256; cv=none;
	b=wJ5bAqqJmX6P5wZuHgYWGlIBJvQ5Os06jiVCaxtN2x/vPKjQhX6wfImxg6gS1CVxNgfOz5
	9Eev2ayqfFxorGbHyJ10do/QxqHGtDzkRaN0FEKPXzqxJ7Dowi9BgBAZ/un27EJ6e3fvNR
	TMceQAS9oEW1jjTtKF5teCnT5ItAIhCwOTwgDrJ2+dhm5uZ4RqjzV3b/uQcyTJgGXQIrnW
	t3bh6Q3tQMJJeiLaTvs8NtNwngsfSTHDytmyVBkPUmdUj4k3jPBYqlAtGlrwzc88WZsQLf
	YSB6+1AYonnA9pWFxqTw26A0jewbPDUfDEp8/WFHMy346Yf9i3Evh/ZApw/K2Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxq4h3bf6zlGm;
	Mon, 25 Nov 2024 15:14: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 4APFEi0V056134;
	Mon, 25 Nov 2024 15:14:44 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APFEih7056131;
	Mon, 25 Nov 2024 15:14:44 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 15:14:44 GMT
Message-Id: <202411251514.4APFEih7056131@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: John Baldwin <jhb@FreeBSD.org>
Subject: git: 73b42eff2596 - main - rc.conf: Update commented
  examples for lo0 to use CIDR
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhb
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 73b42eff2596a2bda45ce3ef7f505720ba0f2df0
Auto-Submitted: auto-generated

The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=73b42eff2596a2bda45ce3ef7f505720ba0f2df0

commit 73b42eff2596a2bda45ce3ef7f505720ba0f2df0
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-11-25 15:14:33 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-25 15:14:33 +0000

    rc.conf: Update commented examples for lo0 to use CIDR
    
    In particular, a bare IP address no longer works.
    
    Reviewed by:    bz, imp, emaste
    Differential Revision:  https://reviews.freebsd.org/D47716
---
 libexec/rc/rc.conf | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libexec/rc/rc.conf b/libexec/rc/rc.conf
index 6689a2ab85dd..62756fece201 100644
--- a/libexec/rc/rc.conf
+++ b/libexec/rc/rc.conf
@@ -263,8 +263,8 @@ icmp_log_redirect="NO"		# Set to YES to log ICMP REDIRECT packets
 network_interfaces="auto"	# List of network interfaces (or "auto").
 cloned_interfaces=""		# List of cloned network interfaces to create.
 #cloned_interfaces="gif0 gif1 gif2 gif3" # Pre-cloning GENERIC config.
-#ifconfig_lo0="inet 127.0.0.1"	# default loopback device configuration.
-#ifconfig_lo0_alias0="inet 127.0.0.254 netmask 0xffffffff" # Sample alias entry.
+#ifconfig_lo0="inet 127.0.0.1/8"	# default loopback device configuration.
+#ifconfig_lo0_alias0="inet 127.0.0.254/32" # Sample alias entry.
 #ifconfig_em0_ipv6="inet6 2001:db8:1::1 prefixlen 64" # Sample IPv6 addr entry
 #ifconfig_em0_alias0="inet6 2001:db8:2::1 prefixlen 64" # Sample IPv6 alias
 #ifconfig_em0_name="net0"	# Change interface name from em0 to net0.

From nobody Mon Nov 25 16:00:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxr5b0534z5dpWt;
	Mon, 25 Nov 2024 16:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxr5Z6dBwz46CR;
	Mon, 25 Nov 2024 16:00:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732550434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3ULf4mRwW/L1CLZuAfMffGhHv31czdo+yIagc2NYVU4=;
	b=GhOB0JwV/T9iYqO1ORvAy8YDkkKAetezh9LGdckmbN/kKmZ30D3iduH5g2dv/uJvCAehW2
	nZWcDU/lj5GcDprkQPHK2FFs6dydHaw0YhGvw56MdhiAwSljNqrMaQI9D9Rk26MYk5YbXW
	Q6Y+pXMgD70y/uaW3GyiiYwSoEB/0SyomowbrxMxncXcRF8UH46zzFnOlTsAe5xPto9SB9
	Rc8zcTmfJesVp+Bqc02BRl+buPLN3jbif/1N8B6/v/IBFbu91kCOWHcNDXS+rGcXhqtnSs
	rojY82LhXqvWbfAi19NzEIOESCqZeWHrja9f+rlqsGJOdlGqHhSi1bhVVRtdrQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732550434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3ULf4mRwW/L1CLZuAfMffGhHv31czdo+yIagc2NYVU4=;
	b=TkVxK6UiRj0RIfzWLO6df+5igyT3ITBXSh76g7LeDgbgQ9EmNpnSr+2KM2uIEPe8Jwvw7K
	jDSqu0aKNMUNjvvsoGBkhA2vKGFes98VVk8nWsMMkUFFnIp4MwcvujmuOV/b4JuZSketGa
	JnMEcxTwXcp+VefGdciRnx9alAeYSNDswJyNhiZCBWH6E946NYPVVYkB2GqAP+qeNqAwdc
	cdc8kg9K6oOH2SAvAgz23swtGaEyWOgr2lPOHmIpZtsAfoWTppUNa0RDLwpqttpcnoCK8F
	KLGgthnmuNSLiErI6GucMwOwWU7cLh8MeWM/05KJ5Uas0s6JSgTkzCKKu96vUA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732550434; a=rsa-sha256; cv=none;
	b=jXcZVxHoADAi9yPPuEOAsBOcvgVWZvfOGiD0gjVQ6+ZV3myt6/Wl+/5sl+hRxdXyo/QG8l
	vcNkp3WYD62k8C+Xo1IuNpzR3OKLvFfS6MO82xJawfHJgFxRl/AdtZaa9IQK3n6qf6+87f
	gSQnPy2kvlx8u0bjtIOfzffrGnYdwJxCnM+Ek9ldPTD+ULicPq8q0yg6glPOK5WoRwSM8A
	tIw330Vz3ddUbc2ivRMldMYJf3xKiOQJmTkKQTerCJkEmHZ2eLjOmNWlSFUfbC3H27WrYO
	a9ATbudcK36tLkYD/A/vL/jQqqlurKDaHm/P0iNazjWakIzeHdhalWA7O6n0XQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxr5Z6DkTzmhC;
	Mon, 25 Nov 2024 16:00: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 4APG0Yj2041821;
	Mon, 25 Nov 2024 16:00:34 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APG0Yx7041818;
	Mon, 25 Nov 2024 16:00:34 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 16:00:34 GMT
Message-Id: <202411251600.4APG0Yx7041818@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Stefan =?utf-8?Q?E=C3=9Fer?= <se@FreeBSD.org>
Subject: git: aa308b49e3a1 - main - mtree/BSD.tests.dist: remove
  entry for OpenBSD dc command
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: se
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: aa308b49e3a14b4ed2bf87c646e498c0f1499f8b
Auto-Submitted: auto-generated

The branch main has been updated by se:

URL: https://cgit.FreeBSD.org/src/commit/?id=aa308b49e3a14b4ed2bf87c646e498c0f1499f8b

commit aa308b49e3a14b4ed2bf87c646e498c0f1499f8b
Author:     Stefan Eßer <se@FreeBSD.org>
AuthorDate: 2024-11-25 15:57:17 +0000
Commit:     Stefan Eßer <se@FreeBSD.org>
CommitDate: 2024-11-25 15:57:17 +0000

    mtree/BSD.tests.dist: remove entry for OpenBSD dc command
    
    The OpenBSD derived dc program has been removed in commit 8ea6c11540,
    but the creation of a directory for tests of this program had not been
    disabled in that commit.
    
    Reported by:    kevans
---
 etc/mtree/BSD.tests.dist | 2 --
 1 file changed, 2 deletions(-)

diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist
index 221e4b32a89b..beae521789c0 100644
--- a/etc/mtree/BSD.tests.dist
+++ b/etc/mtree/BSD.tests.dist
@@ -1089,8 +1089,6 @@
         ..
         cut
         ..
-        dc
-        ..
         diff
         ..
         diff3

From nobody Mon Nov 25 16:03:02 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxr8S0zBxz5dpw4;
	Mon, 25 Nov 2024 16:03:04 +0000 (UTC)
	(envelope-from se@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxr8S0Tk5z47fT;
	Mon, 25 Nov 2024 16:03:04 +0000 (UTC)
	(envelope-from se@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732550584;
	h=from:from:reply-to:subject: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=dk1F2UeQEiVk6yP7jvaxpbjcBpBKpFORYrYDCHSJ9Jw=;
	b=xCe438S9oWl/ZarkltTHZbnofmfJOUxVcGqUxC6TEIYFXM9XmDXerqOLUQwOJXHbxap8PL
	3ojLxsiu5j/ysY9gJybOnt2QiON/PGpApfm9hoprZBgl8B7roqRx/CPs2AKO2vShaWl3B+
	qEWuzHCjl4+mLzW+1GKL0Pientpp9Rdom5zNmLfeN1VUU31IWXJMAf5ulwmkICfCmpy4+m
	UF16k9ESCkskAwi1BdD8Tx04HZvAHtSTPRo/eifKBCX7KCmiegbyh9xAw+C60VsmDGGq3O
	sbHs4qBAbFVItYNOcgx51vxWs7S7uhoX1z9tHk7IRNznlSHMLd9dOc7+ykz73g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732550584;
	h=from:from:reply-to:subject: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=dk1F2UeQEiVk6yP7jvaxpbjcBpBKpFORYrYDCHSJ9Jw=;
	b=Ue1E6BVzN/g4etlpbbbe4R8sekwC3w1h3u2wTQCesytdY7b/LCkJgTUGxqo0vFp/BrBifH
	WoHyTiHsNoLQVshMpzoab6SLDtKaa2WfzZBwtdgYVm1UUjdnanlRgY9wyxK7XTTqjf74gX
	vUhOwV8aLzcNy3kLqoB3xe8mrfvSunj/iz7P8TainIl0sxozQSpIjMM/tCUKEkITaP9yiB
	gWOgqBwwKmJpouLgW5AwvnkhJqa8kJKUEaI2llDATF7r5aJplp8F5CL1qHRbZvI1L6/eAf
	eHVHQ8ugy3zUPnskGd7SpgjvRsd0UEqoxkIVieZflXKm3k8vwCjG3YFDnx3iOg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732550584; a=rsa-sha256; cv=none;
	b=PiIcTFdrz5cl6xG56eoNIWhgqyu1w1Gf9JSLoOnB7FUaomud2/qHrpl/VNcjzvf7TPr7gS
	eGLihCckeEsrmhBCxfIxA0G6zuow5MsU+Gl8bVnVj1sHl20eoJkLdm8l9i1zqhxczZSAEG
	0JLfQdkvV8xEnMHVb0eO6PAHScgsq1mja8ebB6r/42lAKolFZ/0c0yx4GMMGVAFoHvbk5g
	q6d8ITj+Dp60T61gDVMKqLpJPwfbGEbr2tyZbmNzZkPGx3UiW53G9cxLqFo1RTH3nA9+oC
	AP7HVbFR6jV1WdMcK7imZu8xCu39fV1sSF05z7I4QzwYb1ikQusW69ugI+d9nA==
Received: from [192.168.119.155] (p5dc83ef4.dip0.t-ipconnect.de [93.200.62.244])
	(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: se/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xxr8R2j5lzF0D;
	Mon, 25 Nov 2024 16:03:03 +0000 (UTC)
	(envelope-from se@FreeBSD.org)
Message-ID: <0ebd8c52-77f5-418d-8244-d9abaccb7e6c@FreeBSD.org>
Date: Mon, 25 Nov 2024 17:03:02 +0100
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: =?UTF-8?Q?Stefan_E=C3=9Fer?= <se@FreeBSD.org>
Subject: Re: git: 8ea6c1154094 - main - usr.bin/bc: remove OpenBSD derived bc
 and dc commands
To: Kyle Evans <kevans@FreeBSD.org>, src-committers@FreeBSD.org,
 dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
References: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
 <7c698cf4-ed41-4b15-8388-8d826b380ec2@FreeBSD.org>
Content-Language: de-DE
Autocrypt: addr=se@FreeBSD.org; keydata=
 xsBNBFVxiRIBCADOLNOZBsqlplHUQ3tG782FNtVT33rQli9EjNt2fhFERHIo4NxHlWBpHLnU
 b0s4L/eItx7au0i7Gegv01A9LUMwOnAc9EFAm4EW3Wmoa6MYrcP7xDClohg/Y69f7SNpEs3x
 YATBy+L6NzWZbJjZXD4vqPgZSDuMcLU7BEdJf0f+6h1BJPnGuwHpsSdnnMrZeIM8xQ8PPUVQ
 L0GZkVojHgNUngJH6e21qDrud0BkdiBcij0M3TCP4GQrJ/YMdurfc8mhueLpwGR2U1W8TYB7
 4UY+NLw0McThOCLCxXflIeF/Y7jSB0zxzvb/H3LWkodUTkV57yX9IbUAGA5RKRg9zsUtABEB
 AAHNJ1N0ZWZhbiBFw59lciAoRnJlZUJTRCkgPHNlQGZyZWVic2Qub3JnPsLAlAQTAQoAPgIb
 AwULCQgHAwUVCgkICwUWAwIBAAIeAQIXgBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJmvl9B
 BQkTLNNOAAoJEEfrte9a/fVEV1oH/jt+SjRqTHci6d1LiFDfbY0E2rfobZw5BhcQuCqxahS7
 pcE1oLpUaoqWYPHslxhGTl7QSD2twMWcHLonZ1lgTJluMZqgTX9uvqEYDUtiH6G+IF7Qacat
 eUsAvwdycItPOr3p7WBt8U54GbnQdxpSUQ0OpD4twy7KAt/MPNLofVQSEea5DNQOH2dXILrf
 iRsNfFPsfTASOUXOTRyTYwm6Ys76LIdL9GA2iR5qw8G43FB02fiX76WQSjg+yKN9iP9racGg
 Pc8qkSPwHJr0s3OwJC4ndbCuSiaXddDbgOvdrqfSO0XCjo3ylyEBhmMVMpwkj8pLCKVGS73n
 Ncs6OujZXAzOwE0EVXGJEgEIALEj9qCXMZVucjpcd3QxM/TlUr98m5viEd1z4tCnPUyRWcIC
 EVtj2h5xMH+2iB0q1+KWhq+NsWtvScmEmfHnsr7dJ1K677OdpDhKVaJk61eeRulFY1R4yb6C
 1MMxK+WgYB+vvpG0UeyR0M4uBewcPvRsq4yGUHFQKtLAbMdoPTSryJA+ElnmK1vdY+rPcHgi
 OIMBZM7ahsPXC0C9K4e5SP9clGyIoMpbfHXdx9q+Rp3zVtlbhyk3BS/xccu/+9pk9ICXL6GR
 js2sNnJ0wxdU1DsAlC59a5MnSruwiZFwRnkQhr3x6wk97Lg7sLS9jjTnCN7LGlVmSmpOEMy6
 uq1AWfUAEQEAAcLAhgQYAQoAJgIbDBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJmvl9BBQkT
 LNNOABQJEEfrte9a/fVECRBH67XvWv31RCrvCACY7fjahcGj/57peFu0oIb4X9X78H6mgrAZ
 D5HCCCb2vWdNtSDTYQoYnKP2Fz9RUG8ETT9a6CtymYqQc72/dzjJmakRTlbYhliKJDZXGAYU
 g34VirGXCjYgWH7l+0CupOtt55R/ASnrnXX9R/7PLO+akObn9Cz/bNBnIbYnTjLNs7GMMQL4
 uNSyqIByQ3LVsVDaCq3408fYKC0dtlv2VNQQzcXXwOgecwpS2UeqMflrSA7UfPh15WgkpnrN
 AnKCtS66eU1w2kTCsVEjGQEgLI5pP1HMNRHjnHncAFSpOfs1EZn0MfhiyB+4T+lrccGI8EZu
 ay791Tx4QdDKkdZGaV9A
In-Reply-To: <7c698cf4-ed41-4b15-8388-8d826b380ec2@FreeBSD.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Am 25.11.24 um 15:25 schrieb Kyle Evans:
> On 11/24/24 16:08, Stefan Eßer wrote:
>> The branch main has been updated by se:
>>
>> URL: https://cgit.FreeBSD.org/src/commit/? 
>> id=8ea6c115409450ff58a8c6b5e818319d181c6bff
>>
>> commit 8ea6c115409450ff58a8c6b5e818319d181c6bff
>> Author:     Stefan Eßer <se@FreeBSD.org>
>> AuthorDate: 2024-11-24 21:38:23 +0000
>> Commit:     Stefan Eßer <se@FreeBSD.org>
>> CommitDate: 2024-11-24 21:38:23 +0000
>>
>>      usr.bin/bc: remove OpenBSD derived bc and dc commands
>>      In 2020, an improved implementation of the bc and dc commands
>>      developed by Gavin D. Howard has been imported into FreeBSD.
>>      It has replaced the OpenBSD-derived versions of these commands
>>      in all currently supported FreeBSD releases.
>>      The OpenBSD versions could still be built using the WITHOUT_GH_BC
>>      option. There have been no reports of problems or unexpected
>>      deviations from the OpenBSD version for some time, therefore
>>      keeping the OpenBSD version is no longer required in FreeBSD.
>>      This commit removes the option to build the OpenBSD version and
>>      corresponding source files from -CURRENT. No MFC is planned, all
>>      currently released FreeBSD versions should retain the build option.
>>      The WITHOUT_GH_BC option is no longer accepted and will cause
>>      make buildworld to fail.
> 
> What does this mean?  It's not clear from the diff; it looks like you just 
> removed the option, which generally doesn't mean 'make buildworld' will fail if 
> the knob is exercised -- just that the knob doesn't do anything.  Was this just 
> supposed to mean that it's no longer accepted because it would have caused 
> buildworld to fail?

Hi Kyle,

I must have been wrong about WITHOUT_GH_BC now causing build errors. I suspect
there was a problem with this option in /etc/src.conf while I was preparing the
patch, but I don't remember any details.

I wanted to warn that this option was a possible cause of build failures, but
it seems that warning was unfounded.

>  > [... snip ...]
>  >
>> diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
>> index 1378d6b6dcfa..5362ba0e5955 100644
>> --- a/ObsoleteFiles.inc
>> +++ b/ObsoleteFiles.inc
>> @@ -51,6 +51,13 @@
>>   #   xargs -n1 | sort | uniq -d;
>>   # done
>> +# 20241124: library and tests of OpenBSD dc
>> +OLD_FILES+=usr/share/misc/bc.library
>> +OLD_FILES+=usr/tests/usr.bin/dc/Kyuafile
>> +OLD_FILES+=usr/tests/usr.bin/dc/bcode
>> +OLD_FILES+=usr/tests/usr.bin/dc/inout
>> +OLD_DIRS+=usr/tests/usr.bin/dc
>> +
>>   # 20241119: rewrite mv tests
>>   OLD_FILES+=usr/tests/bin/mv/legacy_test
> 
> This seems to have missed removing the associated mtree entry in ^/etc/mtree/ 
> BSD.tests.dist.

Thank you for pointing this out!
I have removed creation of tests/usr.bin/dc in commit aa308b49e3a1.

Best regards, STefan

From nobody Mon Nov 25 16:04:12 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxr9n74m8z5dpbq;
	Mon, 25 Nov 2024 16:04:13 +0000 (UTC)
	(envelope-from des@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxr9n6Mtmz47qC;
	Mon, 25 Nov 2024 16:04:13 +0000 (UTC)
	(envelope-from des@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732550653;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=v69XKPPP1d1oDcuUOO/UC+IDiB07wKl32b3UwyBsG8c=;
	b=jILwCWvMRveyeJmh4dAhy5RMshzqqanCyDPvCNu2digM6CzW1FNp765KMPSM4dhCXH25Ye
	+jogvUSgSvd8ymHaCAGAQtnavjf0qdt/TrRBDQWZ82BY6wlT3Yfwo3/ajAYrbMOv1o0dDy
	MZvmYUGRZs4fOmyBHFO2uGI4QPqlCzxDt1VY2+2PuOedWwkgpEphEJl3bZXPg9aXIt0yIR
	QQKXTH6U1thvxfAj907f89PoZQBa7Bwh/zcPYe22daOTiggA/T4XtySn5YHSidQhaixrxR
	k69tJFiqPHnhuzrOwfogxSGHclnfIctLYYHXSjeXSwC9kNYXY1mpVRAFQD/1gg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732550653;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=v69XKPPP1d1oDcuUOO/UC+IDiB07wKl32b3UwyBsG8c=;
	b=ZQ7t24/7/CBOEb5SQsx4LOYeabSkcLkllfJ6ocuFS5fzQ5q8+9hunC55iYd7D9fWLYiWDM
	q0dqsBeGsR/FhYoeGt7miGEDlD9h8AMjnvwpbsgRfBPMilJvxsqSzbOht6fnW0kUCxdmup
	rwq0RW4bZhGKvSeQqXdyOnluG8bg9N+ozdo96y/V+SGwPHP65q3+icKISexznM3QachVtb
	aDL35QtAegeXf8DM2e4KwXJNwey7fRxy1qHvEnD3CCoUX/TO3NUVqasIqpeTt0ynUZhhLL
	Q809c+b0ZOjBqwHSbq5CZNrCS09l9Go8Mp9GeYlnvNhRC3EmddgUXecFZMeUrw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732550653; a=rsa-sha256; cv=none;
	b=jCq7qUmLsWCOZrXeDbkAuVYYf0YIrlQ9t6Q/oyboaJnPdkNaTTdgwSOYRce7VFbLLjg2su
	iFnxAbARssX4HdlPFcpzCYR6++7H2LxNfCm4fCs113eFrsZ7OsRrOQJg8nxKMKG8EmiH9B
	SPqeeTLUXKszEY/lHmDr5laalMRo6d7O/lsW9fLBkialWJORdCC0OlNYsk/WBofkHt0L2/
	LTDm4IpFq9kWXAAbfNAJyEpTPepebSE4MR+853i/2mstgI3SQJVMvMqTwn0RF0K57Wm2uj
	jlTCMWXc0b5nkap+ytAKA0Ul8biqCObpkT3mXbcCwDYc/CodCkcWNAOZpm0R/w==
Received: from ltc.des.dev (88-177-82-251.subs.proxad.net [88.177.82.251])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	(Authenticated sender: des)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xxr9n5MZMzFWc;
	Mon, 25 Nov 2024 16:04:13 +0000 (UTC)
	(envelope-from des@freebsd.org)
Received: by ltc.des.dev (Postfix, from userid 1001)
	id 1B72860487; Mon, 25 Nov 2024 17:04:12 +0100 (CET)
From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@FreeBSD.org>
To: Stefan =?utf-8?Q?E=C3=9Fer?= <se@FreeBSD.org>
Cc: src-committers@FreeBSD.org,  dev-commits-src-all@FreeBSD.org,
  dev-commits-src-main@FreeBSD.org
Subject: Re: git: 8ea6c1154094 - main - usr.bin/bc: remove OpenBSD derived
 bc and dc commands
In-Reply-To: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org> ("Stefan
	=?utf-8?Q?E=C3=9Fer=22's?= message of "Sun, 24 Nov 2024 22:08:32 GMT")
References: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
User-Agent: Gnus/5.13 (Gnus v5.13)
Date: Mon, 25 Nov 2024 17:04:12 +0100
Message-ID: <86r06zcnb7.fsf@ltc.des.dev>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Stefan E=C3=9Fer <se@FreeBSD.org> writes:
> The branch main has been updated by se:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=3D8ea6c115409450ff58a8c6b5e8=
18319d181c6bff
>
> commit 8ea6c115409450ff58a8c6b5e818319d181c6bff
> Author:     Stefan E=C3=9Fer <se@FreeBSD.org>
> AuthorDate: 2024-11-24 21:38:23 +0000
> Commit:     Stefan E=C3=9Fer <se@FreeBSD.org>
> CommitDate: 2024-11-24 21:38:23 +0000
>
>     usr.bin/bc: remove OpenBSD derived bc and dc commands
>=20=20=20=20=20
>     In 2020, an improved implementation of the bc and dc commands
>     developed by Gavin D. Howard has been imported into FreeBSD.
>     It has replaced the OpenBSD-derived versions of these commands
>     in all currently supported FreeBSD releases.
>=20=20=20=20=20
>     The OpenBSD versions could still be built using the WITHOUT_GH_BC
>     option. There have been no reports of problems or unexpected
>     deviations from the OpenBSD version for some time, therefore
>     keeping the OpenBSD version is no longer required in FreeBSD.
>=20=20=20=20=20
>     This commit removes the option to build the OpenBSD version and
>     corresponding source files from -CURRENT. No MFC is planned, all
>     currently released FreeBSD versions should retain the build option.
>=20=20=20=20=20
>     The WITHOUT_GH_BC option is no longer accepted and will cause
>     make buildworld to fail.
>=20=20=20=20=20
>     Reviewed by:    des, emaste
>     Approved by:    des
>     Relnotes:       yes
>     Differential Revision:  https://reviews.freebsd.org/D46876

I appreciate your efforts but this is incomplete, as was pointed out in
review.

DES
--=20
Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org

From nobody Mon Nov 25 17:17:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxspJ5szNz5dvds;
	Mon, 25 Nov 2024 17:17: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxspJ5MDqz4KV4;
	Mon, 25 Nov 2024 17:17:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732555048;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DwKm20+VFHCA+gEoLBbEu0tQDBnTjjzh91c9Y3PO3qM=;
	b=lE5Hyl/+ChI90P2nFsoxuAbcazTi1HfhA8riEOEj9PTihW6FKZywGOlm3Dh0jFOgxrkMGN
	ThF9LtcKrfP4rKLjN4Y+aknNz8XQUZme9104XhKCWCWrQzPOcYfr8sXgH5bZZEMiVOVg3T
	iRq4w5tOo6z12ezfK1CRdtBHlhNbnCquCxY/R9uXjCTsQ6ebW9DGI5U92PWQFV+1YbcVc7
	H8Di16knVHJH3dvA400RW4JQCwa17jJSiWT8DbbQTrDyQX1MmV342Hp8KHnNo2KYbt07me
	CfJ21Kmut/8/HrE6gSZhmQ7lapPQgImAlleKppCf5y6XRFB0XnOFqQVFA0n5/g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732555048;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DwKm20+VFHCA+gEoLBbEu0tQDBnTjjzh91c9Y3PO3qM=;
	b=qnrRU6RDR+iuShbXTGiJvsF1AdHBV/0OKtSe+LQ/LacwAmJEE1BTT4BEt46nVvS302j6t8
	LknLK7AaTqx+d7mDb+OBEho4LcJUkFXa2vC4rflHWqVlTp8bzGtgxYHZxuxBSW0zh/gVar
	SexMKa23Y0ZQse1zQcKAA4+gyKWfdgCJTK97VnxG/QaTd1pPlpdxY9hcvczX2AtGbpz3XG
	jio6y0FrOBGlTagZiwhoWO9HlpiFUQs+XYqtHoAl/tZmDzFrb7bupCwThYa8sUmQLAgMxe
	XVIuZOdkp9SpolZjuI4n83ekvTMz0Goa/aldLYaAALwbIN12VuLJ4UOuDBsyxA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732555048; a=rsa-sha256; cv=none;
	b=LTNvo5xvN1p3y+sGT7GMAwiwjV1LELBicC4qhZ9vnc+ivAYtrGRyfCSe8qHIDcu94e3w46
	G9e4IzkkRTVTyAFvZ8HjUA2jtH8H0KkGwvlp1Gr0GF9+Lu4XMvKUGKfbgvZz/iGN3NHW85
	57wayXF3rJabnPr/lFnXToolppyTXfmVVVIQB/+Nf1D5kziWVrfs9tf15iZikmXoz4mVEJ
	fH9aECNkm4lqI0xs1tCYu/MeYb5nrk710w3CTSYDCXb/lSVesk7V269M0dzn3DdTs9HRG4
	aQqrDTeU5QxwLOpMJ8ltJqSXHNNJ2Oxj84U4gqHwFF6QTmE3Dkl6w/RC/tEq4Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxspJ4rZ3zpSd;
	Mon, 25 Nov 2024 17:17: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 4APHHSKJ080506;
	Mon, 25 Nov 2024 17:17:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APHHScT080503;
	Mon, 25 Nov 2024 17:17:28 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 17:17:28 GMT
Message-Id: <202411251717.4APHHScT080503@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Cy Schubert <cy@FreeBSD.org>
Subject: git: bef05a753727 - main - rc.d/var_run: Fix typo in comment
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: cy
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: bef05a753727fa28032e1b5a895c94b2ffaedd46
Auto-Submitted: auto-generated

The branch main has been updated by cy:

URL: https://cgit.FreeBSD.org/src/commit/?id=bef05a753727fa28032e1b5a895c94b2ffaedd46

commit bef05a753727fa28032e1b5a895c94b2ffaedd46
Author:     Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2024-11-25 17:10:13 +0000
Commit:     Cy Schubert <cy@FreeBSD.org>
CommitDate: 2024-11-25 17:10:13 +0000

    rc.d/var_run: Fix typo in comment
---
 libexec/rc/rc.d/var_run | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libexec/rc/rc.d/var_run b/libexec/rc/rc.d/var_run
index 0dc37698ee76..b3d3c3c5b22f 100755
--- a/libexec/rc/rc.d/var_run
+++ b/libexec/rc/rc.d/var_run
@@ -17,7 +17,7 @@ stop_cmd="_var_run_stop"
 
 load_rc_config $name
 
-# doesn't make sense to run in a svcj: config setting
+# doesn't make sense to run in a svc: config setting
 var_run_svcj="NO"
 
 _var_run_load() {

From nobody Mon Nov 25 17:17:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxspL1JM5z5dvdt;
	Mon, 25 Nov 2024 17:17: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxspK5w3Tz4KN1;
	Mon, 25 Nov 2024 17:17:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732555049;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=VNDaR2HFBtKVNidzqX6AGOxrkqoTZa4nubDbwUR0h7k=;
	b=y3TouAd43VtDZl99VtU6Iuh1c5k6E4GUxofxsfD6HO2wZsUpPm4GwsfoQcmJlZVWiu7GVQ
	m3QrgQLnfGSln3gwGzIXBcrgFAOkLA5idxM5c9seaPG2xC8xC0IqDInupWaiIIEH0b1kDY
	s6yuA+0kA1+HSVuo3jYL+nnyGoojV9BWzZY2flaTBlvBH7q2CBJ3MbJnlv3FveAbc15e2e
	/v4ORYz8bHEUFaAO2Zj0+iahDpUxKxD7/HCD+tZIZ3rV6ht5KZivVUVs/2DvTPiZLAC5c2
	1zkdPFqYwjk4sw+C+NY8aqs5PRIfgXmUmfGHaP5i6H8Igytll0luLLkF59Soqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732555049;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=VNDaR2HFBtKVNidzqX6AGOxrkqoTZa4nubDbwUR0h7k=;
	b=SltKJ5q2tAVRQz8PWr83zW5xjtBMKzJXo+YAHY7KHA7e6y9s3oe0wIi53AAtd/DeKDw/j3
	HvGEHCW5NU8Ktg5H0YOUyubaI/ZEYZtgeaDYGp+nSARII5hW2GfVzMP+CpfTRg0l05fwt7
	7eINNK71H1JEnM41XIOSXQeDxExuYIClmtNv5PJ+7Sty0JPYx9IvYuUhvd3owzMMGd+NKY
	GSWFB0OQ8Suf+LlnGwKgtrIkGl48RhDv5CnlaQmfMGdBSEDC6qzEcpBXsw9hq4kbUhMdDp
	2DWcGnsLA2Hhf4W4Ol7mn2Z7wn1E14JCBPs+CbQcrA50CPImgpIzDCysjpZ4mQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732555049; a=rsa-sha256; cv=none;
	b=sYl90Tgo2ZzidmmGzCmV9euQGY9zjvF/twEPQ2vFoy6/BIuHIqbpDxDgcBWFvcIuKl3slJ
	yOjzgCvzB/9F7eLCdXB2198BZn0KaB/kKpZ8gQsvX8Eaq0ADYlY89J6VP1wv1zM4fn4M9j
	AaMPtMODPqI2VIx76Xr9f3vDPlqW4ZWkWi0odeWZYd8W8Axj78svFoMYlZmQMt77JjhtY9
	orl7Yu/e/aMjcS3ybZekfZNSxCFunt2bnlyzj+/3YHZVMphpSW1aNxWsyA9/esBSfVP2xl
	+YGRlUfVM/bKvIkTFdpoohntsUdMM0blii9oqn3nzM74+rIJ/8F/oUKmGphmfw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxspK5W55zpj9;
	Mon, 25 Nov 2024 17:17: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 4APHHTHW080560;
	Mon, 25 Nov 2024 17:17:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APHHTBg080557;
	Mon, 25 Nov 2024 17:17:29 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 17:17:29 GMT
Message-Id: <202411251717.4APHHTBg080557@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Cy Schubert <cy@FreeBSD.org>
Subject: git: 4d58cf6ff905 - main - rc.d/var_run: Add missing
  $(dirname)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: cy
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4d58cf6ff905377dbca1ecf004f53133e6b57a46
Auto-Submitted: auto-generated

The branch main has been updated by cy:

URL: https://cgit.FreeBSD.org/src/commit/?id=4d58cf6ff905377dbca1ecf004f53133e6b57a46

commit 4d58cf6ff905377dbca1ecf004f53133e6b57a46
Author:     Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2024-11-25 17:11:47 +0000
Commit:     Cy Schubert <cy@FreeBSD.org>
CommitDate: 2024-11-25 17:16:59 +0000

    rc.d/var_run: Add missing $(dirname)
    
    We intend to create the containing directory here. Fix this typo.
    
    PR:             282939
    MFC after:      3 days
---
 libexec/rc/rc.d/var_run | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libexec/rc/rc.d/var_run b/libexec/rc/rc.d/var_run
index b3d3c3c5b22f..6227890c9f16 100755
--- a/libexec/rc/rc.d/var_run
+++ b/libexec/rc/rc.d/var_run
@@ -27,7 +27,7 @@ _var_run_load() {
 
 _var_run_save() {
 	if [ ! -d $(dirname ${var_run_mtree}) ]; then
-		mkdir -p ${var_run_mtree}
+		mkdir -p $(dirname ${var_run_mtree})
 	fi
 	mtree -dcbj -p /var/run > ${var_run_mtree}
 }

From nobody Mon Nov 25 17:50:54 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxtXt3rL5z5dxRm;
	Mon, 25 Nov 2024 17:50: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxtXt3H2Rz4P5k;
	Mon, 25 Nov 2024 17:50:54 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732557054;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RzKtJD665psmBevxwntojUF0Za9YqHEhPjC+bhml90Q=;
	b=gpd2Z8rRmfuBFAT5V9RdKc0YY7m8GOH3LHpLV/LqM3ts0g48T49evw6v0Go5A1ho+0+4Tv
	GwC66+RTYt8gXi2PWID3Zmj3ogKleudJ3Xxlh+4wDxHuKzrhmHRKj2frYFtRSJRzwhM4+G
	9fnaXIzrpEfsr21xmBKWjFMvs6zkxDpogRvqNtd70DiP9p8NHpjE2d7UT4Ooydj1dk6SXg
	qFGL6fmcf1A8XpdJP1QYbqOHuZ+HLo4yNPSpxUTFBevaEb0N+sjUfxvkbP8fJa0O5fm++E
	npSLLDdPIih4zWUB3lwkyjf4FgTfJnheO6R73uxSt3KH2yWuhcmXKfHUKSRqEA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732557054;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RzKtJD665psmBevxwntojUF0Za9YqHEhPjC+bhml90Q=;
	b=Udmca5BoVUSwPlhOtl5VvMbXhiTJJP23+ny0LtdITOcTiRqq+PlekVcWNqUfB/ANmTwEMj
	og28jNIrZ8OwI0WYYrrzRFtD/CmlrrV+4Qlp0rfckgQSANpTxU4sgmUeyr2/mkz50vftE9
	IKAMHAine1iWksXqFjcSepG+mlS/TGvcyDHFgy+tL89tzoxZWJH+dSr9XpoDW9NuNwWIH6
	TeXsVHHa5imdGVh7aCSUyySUIXLtJV4Jg2fOGMA9vdakF1E15SWNznTAt52UO2scy0VbL9
	7QV7K3QVQ7raOXU88PHoW8fAhoS/uwDT34SUtDCeC+bqnvmolF1Em5UbYEAFGw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732557054; a=rsa-sha256; cv=none;
	b=CelTvC5XjGrsS1pBk5TzPEcVL4Tvc5KU2XejTXr3TgCYIS88FrFQRffA0cwZkvK6QaIvZd
	c2uV2NNexkwSHi1m66NU8EvUvn/FM5pHKYm9dwhj3PV5Z7b6RDKfS11X8lZDfdW4AYZr/f
	b2uxLxm/ftfr97lG6L7EZhxDAMep98zYu02K4o4fr75YCgBoLbxQXSeFqOr+Kg4LJYYOjw
	ERrAhg7y0f8Pcvo8lpL56YQa6ub9g9wrMG/BZpWjib6oLWfFysGjsDZbgUGh1abepLZmz9
	f/WfiuNJXRF81Da6VqCmKIziSVQ5lJaZ3XKwuHiHwe0H81YCdY3m8HtrtWwOBw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxtXt2v6CzqDW;
	Mon, 25 Nov 2024 17:50: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 4APHoseL046936;
	Mon, 25 Nov 2024 17:50:54 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APHosvm046933;
	Mon, 25 Nov 2024 17:50:54 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 17:50:54 GMT
Message-Id: <202411251750.4APHosvm046933@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Andrey V. Elsukov" <ae@FreeBSD.org>
Subject: git: c94d6389e428 - main - ipsec: fix IPv6 over IPv4
  tunneling.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@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/main
X-Git-Reftype: branch
X-Git-Commit: c94d6389e428fac55946bfcdbbc3162c06a9278e
Auto-Submitted: auto-generated

The branch main has been updated by ae:

URL: https://cgit.FreeBSD.org/src/commit/?id=c94d6389e428fac55946bfcdbbc3162c06a9278e

commit c94d6389e428fac55946bfcdbbc3162c06a9278e
Author:     Andrey V. Elsukov <ae@FreeBSD.org>
AuthorDate: 2024-11-25 17:42:00 +0000
Commit:     Andrey V. Elsukov <ae@FreeBSD.org>
CommitDate: 2024-11-25 17:42:00 +0000

    ipsec: fix IPv6 over IPv4 tunneling.
    
    Properly initialize setdf variable in ipsec_encap().
    It is used for AF_INET6 case when IPv6 datagram is going to be
    encapsulated into IPv4 datagram.
    
    PR:             282535
    Fixes:          4046178557e1
    MFC after:      1 week
---
 sys/netipsec/ipsec_output.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/sys/netipsec/ipsec_output.c b/sys/netipsec/ipsec_output.c
index 10f1728f72ac..73a32c71fffc 100644
--- a/sys/netipsec/ipsec_output.c
+++ b/sys/netipsec/ipsec_output.c
@@ -1112,7 +1112,7 @@ ipsec_encap(struct mbuf **mp, struct secasindex *saidx)
 #endif
 	struct ip *ip;
 #ifdef INET
-	int setdf;
+	int setdf = V_ip4_ipsec_dfbit == 1 ? 1: 0;
 #endif
 	uint8_t itos, proto;
 
@@ -1122,17 +1122,11 @@ ipsec_encap(struct mbuf **mp, struct secasindex *saidx)
 	case IPVERSION:
 		proto = IPPROTO_IPIP;
 		/*
-		 * Collect IP_DF state from the inner header
-		 * and honor system-wide control of how to handle it.
+		 * Copy IP_DF flag from the inner header if
+		 * system-wide control variable is greater than 1.
 		 */
-		switch (V_ip4_ipsec_dfbit) {
-		case 0:	/* clear in outer header */
-		case 1:	/* set in outer header */
-			setdf = V_ip4_ipsec_dfbit;
-			break;
-		default:/* propagate to outer header */
+		if (V_ip4_ipsec_dfbit > 1)
 			setdf = (ip->ip_off & htons(IP_DF)) != 0;
-		}
 		itos = ip->ip_tos;
 		break;
 #endif

From nobody Mon Nov 25 18:29:43 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxvPw6LF2z5f1CM;
	Mon, 25 Nov 2024 18:29:56 +0000 (UTC)
	(envelope-from jlduran@gmail.com)
Received: from mail-yw1-f179.google.com (mail-yw1-f179.google.com [209.85.128.179])
	(using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "smtp.gmail.com", Issuer "WR4" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxvPw4WG1z4SbJ;
	Mon, 25 Nov 2024 18:29:56 +0000 (UTC)
	(envelope-from jlduran@gmail.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: by mail-yw1-f179.google.com with SMTP id 00721157ae682-6eed30536acso1874697b3.1;
        Mon, 25 Nov 2024 10:29:56 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1732559395; x=1733164195;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :reply-to:in-reply-to:references:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=FyD9xj2FeCnr7xFAt6lny5V5SghrTxB6Z43Tb8mnjWg=;
        b=JlofMcXxzjZxDZYvJYI4ncEDcJjmRqQpio72qqHKPfrm6cxU9agmYPDpb+yu1o1Vyu
         EAHuRUXOORbLekA3P2gui75xj4vJB6yZwOjWjAw7y3yDlfoGGMBqMOmsYcmtVRWgbjka
         Dfnr+6+TZI2IYBCX0bL/Kjj3FnzHv8hAqIAezhZ1dr0Ued++/P0sY44QGVvfIphT3KdH
         uBUoTKSdR06dB4ZkisZDXo9sQLCmGOALzIODsJQplEGJODHWGW4Su6aw+mqkBFCE2ZbF
         YtF3piBqWyWhJBKpMzH2m1yBkndnedNKYpXFOrYRqHB+ANDe8t6jTfP8xpDfUa+mCzkc
         z9DQ==
X-Forwarded-Encrypted: i=1; AJvYcCUVFZVB8GQZEZTmUGHwLzfDq1IfosO2AKdFnSDe/KcueBuE69oERLuMjnSNg4lJD5Boe2YbkXeD7NiAhgaKNm4yd6vW@freebsd.org, AJvYcCXXI8K3j1/sK8jYItRrBy6uoTQYoOyoX0rkhHREfZe1bI8TfsMknOBltyjteaEnoUMvuXB/26n4tdDBSExApopdW/EMs1I=@freebsd.org
X-Gm-Message-State: AOJu0YzkoxGbRYBZeTAWkv6jnbdkF3DD2gzvoDt6IVfCKEswvvAPRDp9
	5Hw+5SowwRVl4wa2fSScJVpVKwp51Lp9WUOvRZeB2ROhD5aMAqd6gqjFoqDS
X-Gm-Gg: ASbGncsDBYvVxi/UJAIAAioMeYjoHJnVY2w7f294d/g2KYN6wtxNU/9T1Q0r0VCIkAq
	3+xzvHr+BtWyAej9S37SS4VsEi4HCMoYTUHWaAnMzBgvLVcTsHTbpGOYbv6UOoodHblBfRcyCjZ
	Cah5HfAMVbDMGCHNa161SJF02E1N2kwyzKF3VR2WgmJAG9Q+vsoShIZHFQp6fZ9n6GhRnrF+8bf
	odvZcgW1S+GiQDgwBTz2JFjUjlkxX2z0MzZzUmx8I+pbHuWvQSq1JHrnrr7mccjMhWeAPtuHDdU
	Z8AmGqjUopinPSc=
X-Google-Smtp-Source: AGHT+IHvcAPIebEThtVAApRDbjcD6ZRobRMSmEZKEgV4E++1J+kZB1ZHwSwgBH7Sc+FW/5NGC7QUbQ==
X-Received: by 2002:a05:690c:2a8c:b0:6e7:32a5:6566 with SMTP id 00721157ae682-6ef227b2f15mr4103907b3.4.1732559395345;
        Mon, 25 Nov 2024 10:29:55 -0800 (PST)
Received: from mail-yb1-f169.google.com (mail-yb1-f169.google.com. [209.85.219.169])
        by smtp.gmail.com with ESMTPSA id 00721157ae682-6eedfe4851esm18965847b3.67.2024.11.25.10.29.54
        (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
        Mon, 25 Nov 2024 10:29:54 -0800 (PST)
Received: by mail-yb1-f169.google.com with SMTP id 3f1490d57ef6-e38be69d425so491410276.0;
        Mon, 25 Nov 2024 10:29:54 -0800 (PST)
X-Forwarded-Encrypted: i=1; AJvYcCXamrPqgUChG93QqQ7FxIl3wQyJm4HotZ7zi9zlT7fLgOD6upyVNYGSpeNqZBLjRbFcpu7C619kuUxVk7ezNSvO2gNkoR0=@freebsd.org, AJvYcCXsR7NFnXENdE1dKzssCLvO0ggpwcgkFuoDDJwC6D1cAqKO5RGq7RVcA4EWyAYFRtaYztI2T5nOWHE9VikId0v1SiFy@freebsd.org
X-Received: by 2002:a05:6902:240b:b0:e30:d7b9:8a61 with SMTP id
 3f1490d57ef6-e39427674f3mr488775276.6.1732559394626; Mon, 25 Nov 2024
 10:29:54 -0800 (PST)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
References: <202411251717.4APHHScT080503@gitrepo.freebsd.org>
In-Reply-To: <202411251717.4APHHScT080503@gitrepo.freebsd.org>
Reply-To: jlduran@freebsd.org
From: Jose Luis Duran <jlduran@freebsd.org>
Date: Mon, 25 Nov 2024 15:29:43 -0300
X-Gmail-Original-Message-ID: <CAPwQLcd5dJRK2HLSL3-4JNyn9=SW25hkfBEsZ2JoZpa7JWxAsQ@mail.gmail.com>
Message-ID: <CAPwQLcd5dJRK2HLSL3-4JNyn9=SW25hkfBEsZ2JoZpa7JWxAsQ@mail.gmail.com>
Subject: Re: git: bef05a753727 - main - rc.d/var_run: Fix typo in comment
To: Cy Schubert <cy@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, 
	dev-commits-src-main@freebsd.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]
X-Rspamd-Queue-Id: 4XxvPw4WG1z4SbJ
X-Spamd-Bar: ----

On Mon, Nov 25, 2024 at 2:17=E2=80=AFPM Cy Schubert <cy@freebsd.org> wrote:
>
> The branch main has been updated by cy:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=3Dbef05a753727fa28032e1b5a89=
5c94b2ffaedd46
>
> commit bef05a753727fa28032e1b5a895c94b2ffaedd46
> Author:     Cy Schubert <cy@FreeBSD.org>
> AuthorDate: 2024-11-25 17:10:13 +0000
> Commit:     Cy Schubert <cy@FreeBSD.org>
> CommitDate: 2024-11-25 17:10:13 +0000
>
>     rc.d/var_run: Fix typo in comment
> ---
>  libexec/rc/rc.d/var_run | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libexec/rc/rc.d/var_run b/libexec/rc/rc.d/var_run
> index 0dc37698ee76..b3d3c3c5b22f 100755
> --- a/libexec/rc/rc.d/var_run
> +++ b/libexec/rc/rc.d/var_run
> @@ -17,7 +17,7 @@ stop_cmd=3D"_var_run_stop"
>
>  load_rc_config $name
>
> -# doesn't make sense to run in a svcj: config setting
> +# doesn't make sense to run in a svc: config setting

Hello Cy,
I believe the original "svcj" was correct. It stands for "service
jail" (https://www.freebsd.org/status/report-2023-04-2023-06/service-jails/=
).
Perhaps it should have been fully spelled out. Anyhow, a similar line
is present in a number of rc scripts (grep -B1 -r '_svcj=3D"NO"').

>  var_run_svcj=3D"NO"
>
>  _var_run_load() {

--=20
Jose Luis Duran

From nobody Mon Nov 25 18:36:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxvYf28fNz5f1bN;
	Mon, 25 Nov 2024 18:36: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxvYf1R5Tz4TGn;
	Mon, 25 Nov 2024 18:36:38 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732559798;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KojfhBrmHTkNc+WH8otwqtwvMTPXGe9LuVFHoIyxawQ=;
	b=EhAno9rfytSzXFRn56UoVd7pfd+Ssy9D426aZBtydfwWDICc9roc3FQicQ2klFXihCWAYP
	RCpZXTAie1wW0QPJUncO5PwnLE1TkqY5qbs5iTpjM0V3A6YU3vySGwAQyv73vUvPh3h3xV
	GGK+5ykLI5DHfEgAEffk5J8Ae5LM2uRxaDirdyTi3AftGWmkc1xDq39GJ6y6We3gDXSLkc
	z+NrPsMHU2DSbpLDBdsEbOi4dty5IA/OSBXPEizFsHM+inzjj4AryrWPwtYGekrPP1w1Pn
	BnPPezA1DpwOADHug2RVAuznXDbkW0uVlf5YDHf17CgCP+KTSNUbqHVgfPRBtg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732559798;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KojfhBrmHTkNc+WH8otwqtwvMTPXGe9LuVFHoIyxawQ=;
	b=EZQH14cUyvG97LCg0qNCyD3+QNPYH/jazVaGnW9XtOMR2Cv6HHdVYdDfn4g4pHKxzWSMkT
	YRU/BXQ+XB2VOrp31a66cedGYaOVRh9Yy6XNxX4MqyRpDap9G6LCDEU23WdUbnOMNycNVD
	FScwuqWZyekzobQSCCd5hno6ilesMgPJykb93+2yJAbpQJJ++jnY/pidsNB3RZl3cRjlsC
	hTkGLGg5UfYHOy+KEFtdMr8ZwzEDvv7ls7/SwjDgb3QzsB9Xd9WuNpGhHdgoempDAumITd
	xSJwvYNidrcgu6unaUHVfTmlCwx+yaq3ZnjDqa6+yBP2Nbifkr8zTYS6vrK/BQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732559798; a=rsa-sha256; cv=none;
	b=PcOvEg4NsZrFQKjXP7yw53JnLTZSmuzUWfeu7APswlNhKZpI/mWg6E+fqJ9kcKAu96gebh
	0nGNXNycrubMN5B7bRTyCEAgxIwMkIOUmj7bizKu9HFTcyCqlmJQ/Jf6MCQF/omPodXJwr
	2uiiVl9pkr7oKGYo1U9F1VSG4VCCwxlpNxbLsjZ9iwfdRVo6aqnZzL/i69/R/3O1J/Y2Tz
	bd54OOkNXYi8Gba//E50n1TkyTv1qgxv4u4uRk5hFyWB1+iVii4MTfq8YzYh+BEnC/AUdP
	V+x9+ifqKxxxWV7fgZJm9xWZ6r+SRHcQw8kuuOIMRaNYyLU3gfOwm+UvKRN/8g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxvYf12QYzrHx;
	Mon, 25 Nov 2024 18:36: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 4APIacD3029490;
	Mon, 25 Nov 2024 18:36:38 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIacnv029487;
	Mon, 25 Nov 2024 18:36:38 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:36:38 GMT
Message-Id: <202411251836.4APIacnv029487@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kevin Bowling <kbowling@FreeBSD.org>
Subject: git: c1e304c60c46 - main - setsockopt.2: Clarify SO_SPLICE
  action
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kbowling
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: c1e304c60c46a26af57f9638c53417dd6cffa9fe
Auto-Submitted: auto-generated

The branch main has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=c1e304c60c46a26af57f9638c53417dd6cffa9fe

commit c1e304c60c46a26af57f9638c53417dd6cffa9fe
Author:     Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2024-11-25 18:32:35 +0000
Commit:     Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2024-11-25 18:36:00 +0000

    setsockopt.2: Clarify SO_SPLICE action
    
    Reviewed by:    gallatin, markj
    MFC after:      3 days
    Sponsored by:   Netflix
    Differential Revision:  https://reviews.freebsd.org/D47720
    Co-authored-by: Mark Johnston <markj@FreeBSD.org>
---
 lib/libsys/getsockopt.2 | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/lib/libsys/getsockopt.2 b/lib/libsys/getsockopt.2
index ca826528ff2f..15e4b76311d8 100644
--- a/lib/libsys/getsockopt.2
+++ b/lib/libsys/getsockopt.2
@@ -25,7 +25,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd July 8, 2024
+.Dd November 25, 2024
 .Dt GETSOCKOPT 2
 .Os
 .Sh NAME
@@ -568,9 +568,14 @@ struct so_splice {
 .Pp
 Data received on
 .Fa s
-will automatically be transmitted from the socket specified in
+will automatically be transmitted via the socket specified in
 .Fa sp_fd
 without any intervention by userspace.
+That is, the data will be transmitted via
+.Fa sp_fd
+as if userspace had called
+.Xr send 2
+directly.
 Splicing is a one-way operation; a given pair of sockets may be
 spliced in one or both directions.
 Currently only connected

From nobody Mon Nov 25 18:38:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxvbn1CcVz5f28G;
	Mon, 25 Nov 2024 18:38:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxvbn0WDxz4TVD;
	Mon, 25 Nov 2024 18:38:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732559909;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Z3RjK9ziBYylXIh6Ba9KXeiGhGGYMAl7qgy9jgG/tUg=;
	b=P08+dUPZ9yNz5U5tUkVDieP8k3ZclvsDAykd6qtQFZhXrCZf0zAyjUozj+J6l5SugIkyc+
	l39MclMUvrc9Nprym56GN/H+a1mc5tYhpu/Gx7Wib+j0bURKb1+kpOnZKFY3D28XeI+Vnm
	coCZUUpxIp/AFUvdjbos6g4LHB7rRc3TgOCzulOlAwwClLC/5ffKrr08eOb6bkZLsNK/gh
	BgRy7N3gQbHzRpZhBvSk8jWtYzN7GLwClE/N+0XDHJ9oJP1xS4aIUfmF2Rtkr0Q4auAhSM
	d3ZWCZt662Wo8qAz5CnFydkXX5W1Z4DGQb2MjMGWQgGd+TJ65nRJuP9VYX7SUQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732559909;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Z3RjK9ziBYylXIh6Ba9KXeiGhGGYMAl7qgy9jgG/tUg=;
	b=Rv3eKHWR+KDlvqkBWCxfleNDVsgcXZK2255o86vlbKlKWequpxmozzvYnh3pX8gps5xFSp
	2TZSOcomN0MkG7k5J0wfVC9qvAKGrgNyxCxBsuiAdkpisO0LKo9Qs6DJ/HNog1QA/mUuKU
	fMGUeQ7F6HHEISMj/yUtv4hp+BhbYZVLa2TnFBoXCS8aLJbDIRkKsw8PHsWwtzPmf+YzBN
	mNHXgmx1HDIr0xLz6BRILhgES2ADtlj7LkJix8Rtfn5I4kv04ob1fkJNQ5yt3rzxcvQdfN
	ijcMIIKrO0f2oEqwzfMrVNRIN1bztuxbZms9j8Zrz5+bg9q0SXfkL7tbNl3b0g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732559909; a=rsa-sha256; cv=none;
	b=fg0O/MqSDX1/rIopnE0d2vvnjQlpru4Pqnr2zH8g1USrC12D06aV2g2RJf0qO/34vspMxK
	Vvo6ZM0DWx5K2vIGD5I4roGBCRWrLsXK7A7D7bP2l+6QwX5Tj0gQ1h/x8JV7bNw2haAfe2
	cK4Olwvf20dU1gUmTLdNZEozt38Mlwk5ailSeMeM0FfSjeB3J1btWkzPc7ZH5cOecmnlVR
	EODQ2qOwgUuG4+h1WMbJaJU7WJp39o9pALMG38L2CljsncM3hn5AQ3hslJAczanI47wgs3
	yIjP4Tx6/sZ7QFGnY8NjDx71HCYnbDh5G1Q/XqJlH1U2RC58h7NccpEyVDTbsQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxvbn005Lzrm4;
	Mon, 25 Nov 2024 18:38:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APIcSPk030098;
	Mon, 25 Nov 2024 18:38:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIcSAM030095;
	Mon, 25 Nov 2024 18:38:28 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:38:28 GMT
Message-Id: <202411251838.4APIcSAM030095@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Wolfram Schneider <wosch@FreeBSD.org>
Subject: git: fb4cdd51608f - main - fhreadlink.2: fix old typo in
  the manpage
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: wosch
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: fb4cdd51608f3008f035d01f6a499811cda41735
Auto-Submitted: auto-generated

The branch main has been updated by wosch:

URL: https://cgit.FreeBSD.org/src/commit/?id=fb4cdd51608f3008f035d01f6a499811cda41735

commit fb4cdd51608f3008f035d01f6a499811cda41735
Author:     Wolfram Schneider <wosch@FreeBSD.org>
AuthorDate: 2024-11-25 18:35:27 +0000
Commit:     Wolfram Schneider <wosch@FreeBSD.org>
CommitDate: 2024-11-25 18:38:20 +0000

    fhreadlink.2: fix old typo in the manpage
    
    PR: 282967
    Approved by: kib
---
 lib/libsys/fhreadlink.2 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/libsys/fhreadlink.2 b/lib/libsys/fhreadlink.2
index 77bd2f6e7870..4855f4d8ec67 100644
--- a/lib/libsys/fhreadlink.2
+++ b/lib/libsys/fhreadlink.2
@@ -60,7 +60,7 @@ code in the global variable
 .Va errno .
 .Sh ERRORS
 The
-.Fn readlink
+.Fn fhreadlink
 system call
 will fail if:
 .Bl -tag -width Er

From nobody Mon Nov 25 18:44:09 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxvkK6MJqz5f2Zl;
	Mon, 25 Nov 2024 18:44: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxvkK5qzhz4VwT;
	Mon, 25 Nov 2024 18:44:09 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732560249;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=a4pp6xc4b/CPMzJ3jFflNbjtPNc9ms1cKkjj4NjdNAU=;
	b=QMX7Yf2mZAZAnIXu9/yMOEZ2iGN4YHRN4rTkR3CYDTJqD4tPBD4uwf4mlWMUBvcgLCJKA0
	Z2T6jPKuVkPIxnJpOAlqIAFSJvFNrFU6ayrGHLaHmGiH5EbISxcbCVwy0OxQ6eWUknQXZi
	NHifnBJTiVFf6PrcxeTkSd3gc5KLe7CaPVapCixbVjwOcHMa334MoPLzPF0N9NHuK3/egb
	QlQdFb/ilK3aEHSXyo43WnCej7m0wf8GaK9tFjb3d3JXIm+akTeQqQS8n/npSIV6OAmfnI
	fyft55sdp34Vn3KMNMXaGsB7IqJY4VhRVQhghMrL29tEdQdJ/gwG4smUCbknTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732560249;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=a4pp6xc4b/CPMzJ3jFflNbjtPNc9ms1cKkjj4NjdNAU=;
	b=W1AlCIuRvLRat4jcoHZL3XXuH51qxGjGCpoow3x33mZt6FaULAH+lg/PYnC/LCLZjsA6GA
	fFPcgpLgNPznhLz7Md7pSeZJyIuISpvs37Ff+i/jqZ5GX+wac6brs/xjCbvCn/oZYxzsK7
	pUzHV8j639LM8PokPUAqqLJOn8GVJb3isFzwYIscx98eAlENIfzyMYr9P8wc15PcxgoRQC
	oN6Z+lWAunwxDV+CxhXsLoag3xo8873Md7rvQM6cHwU1/I1lyd7khblpzzYosCmvyUll38
	70rU+B0PRbSPItILe0urfvFFVrPmYArpw++Y1UWRMsWkCrn5AVUjlkXuTXKRjw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732560249; a=rsa-sha256; cv=none;
	b=Zn2mfMAdR7eVbBVX3n8gkHhx5IvORk/uP0vkZ55ALpnYUq7WTej7PgEFy8VQbVQ3z4r6ZW
	mE87PqYInve7huRN32EZWDGxsdyP2FTcRPB6K/NzePcGwAVMNUR7+0xbjfGQAv3PjlME7t
	w4vdJNlp7FK9bLFm/NZYxPzwlYQCIJXc8uN/UOT4SacTXYFyBgBlrI0mulGowhi85XdgiP
	biXvvuex1WCY5ocrTc6+C0sbMNAG7ChNX0v3mG4/nzCyFu0nWNTI1ENHWlzF5FXy7fvyf8
	hrDfV7pTRixt9cQaTRXFXyMKmqYDjpR5jqEPWQ24w42fP5TyA7C3uSzhRp64og==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxvkK5CZQzs1s;
	Mon, 25 Nov 2024 18:44: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 4APIi9D9046934;
	Mon, 25 Nov 2024 18:44:09 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIi9Rt046931;
	Mon, 25 Nov 2024 18:44:09 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:44:09 GMT
Message-Id: <202411251844.4APIi9Rt046931@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Cy Schubert <cy@FreeBSD.org>
Subject: git: 858568068204 - main - Revert "rc.d/var_run: Fix typo
  in comment"
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: cy
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 858568068204b962d73c8345455fdac8788bf11e
Auto-Submitted: auto-generated

The branch main has been updated by cy:

URL: https://cgit.FreeBSD.org/src/commit/?id=858568068204b962d73c8345455fdac8788bf11e

commit 858568068204b962d73c8345455fdac8788bf11e
Author:     Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2024-11-25 18:39:46 +0000
Commit:     Cy Schubert <cy@FreeBSD.org>
CommitDate: 2024-11-25 18:43:54 +0000

    Revert "rc.d/var_run: Fix typo in comment"
    
    svcj is not a typo.
    
    Noted by:       jlduran
    MFC after:      3 days
    
    This reverts commit bef05a753727fa28032e1b5a895c94b2ffaedd46.
---
 libexec/rc/rc.d/var_run | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libexec/rc/rc.d/var_run b/libexec/rc/rc.d/var_run
index 6227890c9f16..f76a06ab9f5a 100755
--- a/libexec/rc/rc.d/var_run
+++ b/libexec/rc/rc.d/var_run
@@ -17,7 +17,7 @@ stop_cmd="_var_run_stop"
 
 load_rc_config $name
 
-# doesn't make sense to run in a svc: config setting
+# doesn't make sense to run in a svcj: config setting
 var_run_svcj="NO"
 
 _var_run_load() {

From nobody Mon Nov 25 18:44:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxvkp5f6Sz5f2WQ;
	Mon, 25 Nov 2024 18:44:34 +0000 (UTC)
	(envelope-from cy.schubert@cschubert.com)
Received: from omta002.cacentral1.a.cloudfilter.net (omta002.cacentral1.a.cloudfilter.net [3.97.99.33])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "Client", Issuer "CA" (not verified))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxvkn6h66z4X2C;
	Mon, 25 Nov 2024 18:44:33 +0000 (UTC)
	(envelope-from cy.schubert@cschubert.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227])
	by cmsmtp with ESMTPS
	id FagRtzuOEMArNFe4XtSE0g; Mon, 25 Nov 2024 18:44:33 +0000
Received: from spqr.komquats.com ([70.66.152.170])
	by cmsmtp with ESMTPSA
	id Fe4VtCV80KHV8Fe4WtGJBT; Mon, 25 Nov 2024 18:44:33 +0000
X-Auth-User: cschuber
X-Authority-Analysis: v=2.4 cv=XeEqz555 c=1 sm=1 tr=0 ts=6744c591
 a=y8EK/9tc/U6QY+pUhnbtgQ==:117 a=y8EK/9tc/U6QY+pUhnbtgQ==:17
 a=IkcTkHD0fZMA:10 a=VlfZXiiP6vEA:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8
 a=YxBL1-UpAAAA:8 a=VzE3KOs0TlR_VOm5mZkA:9 a=QEXdDO2ut3YA:10
 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22
Received: from slippy.cwsent.com (slippy [10.1.1.91])
	by spqr.komquats.com (Postfix) with ESMTP id C602912F;
	Mon, 25 Nov 2024 10:44:29 -0800 (PST)
Received: from slippy (localhost [127.0.0.1])
	by slippy.cwsent.com (Postfix) with ESMTP id 72791386;
	Mon, 25 Nov 2024 10:44:29 -0800 (PST)
Date: Mon, 25 Nov 2024 10:44:29 -0800
From: Cy Schubert <Cy.Schubert@cschubert.com>
To: Jose Luis Duran <jlduran@freebsd.org>
Cc: Cy Schubert <cy@freebsd.org>, src-committers@freebsd.org,
 dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject: Re: git: bef05a753727 - main - rc.d/var_run: Fix typo in comment
Message-ID: <20241125104429.74f25672@slippy>
In-Reply-To: <CAPwQLcd5dJRK2HLSL3-4JNyn9=SW25hkfBEsZ2JoZpa7JWxAsQ@mail.gmail.com>
References: <202411251717.4APHHScT080503@gitrepo.freebsd.org>
	<CAPwQLcd5dJRK2HLSL3-4JNyn9=SW25hkfBEsZ2JoZpa7JWxAsQ@mail.gmail.com>
Organization: KOMQUATS
X-Mailer: Claws Mail 3.20.0 (GTK+ 2.24.33; amd64-portbld-freebsd15.0)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-CMAE-Envelope: MS4xfO3b4eCESVmf1aycUkH1gwRPBQkTu3gcnhfaiuglxiBJSZC6duepZw1JXko8bL+uet0y+XSb/LozSt3p2MaId7U6aCMGF2v102TD6+6cl1e1JB7BtsSG
 pwKajCLgwuyzM11DunZObXXdNjwYFuhYaKmFTL3Tk1ziC9c6koDBMZ2oHeifohjFmvN34OrOPA9/+naHlEw4u5BlIctfyGxLEhZtZFLNf7UhYeBGQYIFCKd/
 2fpa1eq//6NG9gADWjBYhKmeOWJwSZoJvmBX7lRAIEFGTdzr2Ja9+UeqOhYc2/UjgwodyOUsCOBWGTGcAOwO4AGpDoJKWc13mmAxneVhp4YV4jmZcYb69754
 +aNT0Sc9
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US]
X-Rspamd-Queue-Id: 4Xxvkn6h66z4X2C
X-Spamd-Bar: ----

On Mon, 25 Nov 2024 15:29:43 -0300
Jose Luis Duran <jlduran@freebsd.org> wrote:

> On Mon, Nov 25, 2024 at 2:17=E2=80=AFPM Cy Schubert <cy@freebsd.org> wrot=
e:
> >
> > The branch main has been updated by cy:
> >
> > URL: https://cgit.FreeBSD.org/src/commit/?id=3Dbef05a753727fa28032e1b5a=
895c94b2ffaedd46
> >
> > commit bef05a753727fa28032e1b5a895c94b2ffaedd46
> > Author:     Cy Schubert <cy@FreeBSD.org>
> > AuthorDate: 2024-11-25 17:10:13 +0000
> > Commit:     Cy Schubert <cy@FreeBSD.org>
> > CommitDate: 2024-11-25 17:10:13 +0000
> >
> >     rc.d/var_run: Fix typo in comment
> > ---
> >  libexec/rc/rc.d/var_run | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/libexec/rc/rc.d/var_run b/libexec/rc/rc.d/var_run
> > index 0dc37698ee76..b3d3c3c5b22f 100755
> > --- a/libexec/rc/rc.d/var_run
> > +++ b/libexec/rc/rc.d/var_run
> > @@ -17,7 +17,7 @@ stop_cmd=3D"_var_run_stop"
> >
> >  load_rc_config $name
> >
> > -# doesn't make sense to run in a svcj: config setting
> > +# doesn't make sense to run in a svc: config setting =20
>=20
> Hello Cy,
> I believe the original "svcj" was correct. It stands for "service
> jail" (https://www.freebsd.org/status/report-2023-04-2023-06/service-jail=
s/).
> Perhaps it should have been fully spelled out. Anyhow, a similar line
> is present in a number of rc scripts (grep -B1 -r '_svcj=3D"NO"').

You are correct.

Rather than spelling it out, let's leave it as is.

>=20
> >  var_run_svcj=3D"NO"
> >
> >  _var_run_load() { =20
>=20



--=20
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  https://FreeBSD.org
NTP:           <cy@nwtime.org>    Web:  https://nwtime.org

			e^(i*pi)+1=3D0

From nobody Mon Nov 25 18:46:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxvn64Jg7z5f2lZ;
	Mon, 25 Nov 2024 18:46: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxvn63JPyz4XfT;
	Mon, 25 Nov 2024 18:46:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732560394;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=atmzDfeBfjWgzv0I+UA8s2eKbozOboDewdCY9HGA4iY=;
	b=AlUsmsPm42SSbu8nj5QiJTO+jK5hspyKxsIe/mUZfqMV/c2Nb6/16Li2TZisGdHWNFtVUR
	6KsRZnCW+j9XSH2t1BctZY4ExmhpHKNEZBuMk5QrzWvLeBaNRqqAH23XzHzQ/7PHK7qI/y
	jWEb/4rspmoapftOtYytfNLKFDjnBNFgUHJ0wrz9PJiLFUALos9G8np9bmHTqLjM4miYvc
	4IOUzF89/RCkOkPPPgu1sWb1W/5MIPC+OKeHrj71dbCL/iI9ionJqBaA2RfSSgEtSWK3xD
	FDc5KIBPsQo3vxEvv2mxwoktI4DeDUrkLSOK7aOy4zUo37hpJ9kcMk4qQa7ewg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732560394;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=atmzDfeBfjWgzv0I+UA8s2eKbozOboDewdCY9HGA4iY=;
	b=t203+zQuQSxU+W1bjZXf2VWM+u+y2nvz5A1u6Qf6+7N+Sk5bKxe35XRKT1Cu61J/FIHGYJ
	65DwRjRttT7ojejau6Fjawh0RCEHYHNaVpjmd3zrc9i9BD0zK64JdoYe13bG9c7IZ4h+n5
	BXgRy/YvOvStf81xhAFc4GLxPz7ePzwM+3qm/CjxdOdyVTOcecMb2jB6SDXRHhG4cfq/Rs
	HblQh/2MYFdit2UCui34G+UStkz3m8Mx/4b/o1kv6mxrneuixgmZYGFM3VJU3+Q5Pfl95g
	foyi36qi3IH6zgCZPLcsGoc9MwCdc32GjggtLg1op2mkHKJjkGWRRt2x9a2sLw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732560394; a=rsa-sha256; cv=none;
	b=sWYW7o8BQjsf8jqP1dr4r9S68MkpBCluPBBXR7VLKXspExFCWs1Kh7sQPXZbxbIIgQFzeg
	6n8JZ9+2atuUUAnuSO40urcy70myCD1itFrsnOfqwYzdsFpuEzDi2p6VICkSgPK7LWkg2t
	8ZlelKUXtsBCH7XULqzNuHC920S817NutvIhJvZBBE9WBjk7xWXHATEvtImK/01WeBbn85
	TVY3woamHhXx7mxvstHl9Nha6Y6IWhg7Ye/2GTq3/CrsKsbqqkdxu0wUbKfcSJ9YazJ0xb
	pU218RPQM2HTvjrEDlv7YrtFnapGLDPl/fGO6EmH0A4REyc6sr5k99QUGOqkHg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxvn62NwQzrV0;
	Mon, 25 Nov 2024 18:46: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 4APIkYXu047824;
	Mon, 25 Nov 2024 18:46:34 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIkYtI047821;
	Mon, 25 Nov 2024 18:46:34 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:46:34 GMT
Message-Id: <202411251846.4APIkYtI047821@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Gleb Smirnoff <glebius@FreeBSD.org>
Subject: git: 67f93079075b - main - mlx5e tls: use non-sleeping
  malloc flag is it was intended
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@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/main
X-Git-Reftype: branch
X-Git-Commit: 67f93079075be4a2f5b7198fb3bda6d10bbd54e7
Auto-Submitted: auto-generated

The branch main has been updated by glebius:

URL: https://cgit.FreeBSD.org/src/commit/?id=67f93079075be4a2f5b7198fb3bda6d10bbd54e7

commit 67f93079075be4a2f5b7198fb3bda6d10bbd54e7
Author:     Gleb Smirnoff <glebius@FreeBSD.org>
AuthorDate: 2024-11-25 18:45:09 +0000
Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
CommitDate: 2024-11-25 18:46:13 +0000

    mlx5e tls: use non-sleeping malloc flag is it was intended
    
    Reviewed by:    gallatin
    Fixes:          81b38bce07940b7a4001dfeb8cd63774229ca950
---
 sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c b/sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c
index dce16f8df96d..0759cd84c307 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls.c
@@ -409,7 +409,7 @@ mlx5e_tls_snd_tag_alloc(if_t ifp, union if_snd_tag_alloc_params *params,
 	if (priv->gone != 0 || priv->tls.init == 0)
 		return (EOPNOTSUPP);
 
-	ptag = uma_zalloc(priv->tls.zone, M_WAITOK);
+	ptag = uma_zalloc(priv->tls.zone, M_NOWAIT);
  	if (ptag == NULL)
  		return (ENOMEM);
 

From nobody Mon Nov 25 18:50:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxvsq105xz5f30F;
	Mon, 25 Nov 2024 18:50: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxvsq0Slkz4YGD;
	Mon, 25 Nov 2024 18:50:39 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732560639;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GA27ZaReeXAE4PFpkvuqV3GI9L9nfKfEESJxzjb+in0=;
	b=bYv2rqCSGOC54fRNPDRqrtAv8VokKCQARqEVLZ3jRgkzBiBInPLh5YcgNwiohIAX7W5gx/
	rVrvxy4kMXREM3e9mKb56G5LKnIsQ6VVUFGhNAjk8ZR3bdwdzx8nBJRhcuSalwOZ1qUS8V
	BTw8LYhb/+LKnnM8tUW4RrF01Fr0XcSbmgWQcGOKv4o6qlpvD2oz7a4VX001KxcMrI4Ikj
	xHxYWrY/XRhGqtqszOOeUzHr+6So1cNOJNy4Nj+bNzqglyhF4JBY+hstdNMEcRI945hQTP
	YXqPaamQvhaQmoWb42bQz0wCMM/z1cSo3y2rWfs5zMhZ/v8E1kCBJ6ZRqFUy8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732560639;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GA27ZaReeXAE4PFpkvuqV3GI9L9nfKfEESJxzjb+in0=;
	b=ehrSWkp1NYrCWx8LuTaGj7Vphv2MEtywMyt1f92pIavf6xzNv7MBqBWjPCEfWbth29eU1h
	PWoYJMXhdCwAuk08pCzp7iSm94m2mue53OSvuNIzG5Z92BgU9MTWbcdvOWQbUlQiKCUVX/
	LTdKwnOXdcpzqRpmWJvtD5BC4eynRH9zY3MKLez2/zhHEktx1swT7nC6CzpSKFdf40Njuj
	QII/iyWK3Lgj+LGG13vV5ZzEyGrVavL8ixqQndzF/ayHvYdHQvJ6tuUfINvgIU52tTTwHZ
	egRO9h89Ae9lCQuclOZ56QtHSpMmbIEJT16vByuntdByNwBfwmSRGtxmNhkK6g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732560639; a=rsa-sha256; cv=none;
	b=qlFY30SVI+SUYaJanKuD8nNZh5MAdcLYQh9Jt+Hn8C7CUVU/xaxlxuZ1qdyQtsK7abpmr2
	LBs6KBo64Nx4BqQbEKTWvwwAap0+88zeeeUinK3MknfbVR5KlCuj/NZxy9ZwYIniw0dzL6
	8oZZ/PjhP1XdTcrDXyoULENXCIeUwEmzNgc4SppbzAcw9zn3wqhEn3mCu+88UdD9wYaHrV
	qhTX6BcLOt6UHBDv3IwWD5pztZiCPTCYkp5TnT0aVaBjfc3lon0wSxL6C2bv9udaMZwNnx
	/5TN91FeCuAAkUUrznkgl7mzI+IJPxbSKIne6ReSY5gMd6NkolUq1XQh4xZWgw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxvsq0412zrYF;
	Mon, 25 Nov 2024 18:50: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 4APIocXS058683;
	Mon, 25 Nov 2024 18:50:38 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIocqT058680;
	Mon, 25 Nov 2024 18:50:38 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:50:38 GMT
Message-Id: <202411251850.4APIocqT058680@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: John Baldwin <jhb@FreeBSD.org>
Subject: git: b2f7c53430c3 - main - ktls: Enable by default
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhb
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: b2f7c53430c39c7ab4ded21427b91e34b3080fba
Auto-Submitted: auto-generated

The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=b2f7c53430c39c7ab4ded21427b91e34b3080fba

commit b2f7c53430c39c7ab4ded21427b91e34b3080fba
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-11-25 18:50:27 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-25 18:50:27 +0000

    ktls: Enable by default
    
    Reviewed by:    gallatin, markj
    Sponsored by:   Chelsio Communications
    Differential Revision:  https://reviews.freebsd.org/D47735
---
 sys/kern/uipc_ktls.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/kern/uipc_ktls.c b/sys/kern/uipc_ktls.c
index bf2ff37e3c3a..881825bf1d9f 100644
--- a/sys/kern/uipc_ktls.c
+++ b/sys/kern/uipc_ktls.c
@@ -136,7 +136,7 @@ SYSCTL_UINT(_kern_ipc_tls, OID_AUTO, ifnet_max_rexmit_pct, CTLFLAG_RWTUN,
     &ktls_ifnet_max_rexmit_pct, 2,
     "Max percent bytes retransmitted before ifnet TLS is disabled");
 
-static bool ktls_offload_enable;
+static bool ktls_offload_enable = true;
 SYSCTL_BOOL(_kern_ipc_tls, OID_AUTO, enable, CTLFLAG_RWTUN,
     &ktls_offload_enable, 0,
     "Enable support for kernel TLS offload");
@@ -273,7 +273,7 @@ SYSCTL_COUNTER_U64(_kern_ipc_tls_ifnet, OID_AUTO, reset_failed, CTLFLAG_RD,
     &ktls_ifnet_reset_failed,
     "TLS sessions that failed to allocate a new ifnet send tag");
 
-static int ktls_ifnet_permitted;
+static int ktls_ifnet_permitted = 1;
 SYSCTL_UINT(_kern_ipc_tls_ifnet, OID_AUTO, permitted, CTLFLAG_RWTUN,
     &ktls_ifnet_permitted, 1,
     "Whether to permit hardware (ifnet) TLS sessions");

From nobody Mon Nov 25 18:54:43 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxvyW6GcNz5f3T2;
	Mon, 25 Nov 2024 18:54: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxvyW54D7z4Ylj;
	Mon, 25 Nov 2024 18:54:43 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732560883;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KUukCOrv6l49lJT/m67OcoINxZFG0JkLzsrTM2AacFE=;
	b=lLRll4/7BQ5WC1zDs2G9QqI1xUw+fBpMIrtcW647RPVwVNbOtlnq1GpsLEtJxb5KJZ8ygh
	+L4tiQsuI3gG+F6qmTZMtedNYx1BPc+x1Pv8ZyxZTEjIY6Sv0IAuoRhbWzCctAjn7r8itJ
	YD+RQYZnNXHFnrTYE9Oq8wWupfhbhvQxOZ1b5zJipHVFeM2rE9DHFmxqtgvyUcnbaz8nba
	04QcOtskhQo5Rh4Qv5yMVm1JXusUvG8okZa8gvcuTqlsRwcLSiixirqBoDwrET/MggFmyP
	MrsOL9XQnt+aVqJkR0ZjQFwK9xa5N4bfNLIlfFGmNUHs+1siTfo1wmzmW4GS8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732560883;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KUukCOrv6l49lJT/m67OcoINxZFG0JkLzsrTM2AacFE=;
	b=pouzJnymytoEfXK01Yr713jzmIuo6ReqlPmtFVVt+95Ee6GTYK5x995ZA6tIXa4ST2nKNW
	7ex6WK5OJxs71F3ZP5xAYdjkKyWm0uhPZ+HYVGYk9EsWqXL6lXnUIAsMMktVRs8mjv2sgp
	/ucKHzCillgqQZyFI/AjUcxvnfXe2ujnt1/FPbYl4FndBXFPWvU4Pc8rRf4Gcl++hlVi/q
	TBNh97pah2RZxOJHMUQXWaslmuGg//8Xq9FdBDuXSLDfKQgNiBENuv6Nx5xbeGA4ypBA/Y
	+5tT/BFjRISrFqfP4vrYedXsl8BOKae6LUpgFJkM2dgQWhNZdNUHgcLlHXyofA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732560883; a=rsa-sha256; cv=none;
	b=st6/6UOn3XN/Jaew0+wAt1mzy6R0yBf9tGQsFcb0XMl8AwApJMjYwrSXqL8ZlnpiJ7DY+C
	Ncy3GwBQzRUMFj1NKTqRRcJNPLpZjhPZqRUMTahJlDqSNNQzUWCgevWG3zoo2jZtC8lAF5
	jXgpsEBVpHguyYtXLug+XYQJldrktCRAIx8D0nwt75tmpYlAIYYbGiFC8S9xC7tSuMvKWX
	D2URgiaAOP2fb9Fyev9Ptocg/76dXCLdXnaERrQLPHoiTWLeQyxgVKqaIVqY2NIdCyh1SJ
	l64BGPJw6oshUrdpnGBCbmCFbtSK6zjv22GDyJifvsBhDfnMhqI4L2ebem4kQA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxvyW4gPlzs2r;
	Mon, 25 Nov 2024 18:54: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 4APIshkJ066406;
	Mon, 25 Nov 2024 18:54:43 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APIshgP066403;
	Mon, 25 Nov 2024 18:54:43 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 18:54:43 GMT
Message-Id: <202411251854.4APIshgP066403@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: John Baldwin <jhb@FreeBSD.org>
Subject: git: af1ef35a0066 - main - RELNOTES: Document that ktls
  is now enabled by default
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhb
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: af1ef35a00668b1461af31c73f0bf48e27b5c8f8
Auto-Submitted: auto-generated

The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=af1ef35a00668b1461af31c73f0bf48e27b5c8f8

commit af1ef35a00668b1461af31c73f0bf48e27b5c8f8
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-11-25 18:54:25 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-25 18:54:25 +0000

    RELNOTES: Document that ktls is now enabled by default
---
 RELNOTES | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/RELNOTES b/RELNOTES
index 6441bffcb358..a4f6e877ae32 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -10,6 +10,11 @@ newline.  Entries should be separated by a newline.
 
 Changes to this file should not be MFCed.
 
+b2f7c53430c3:
+	Kernel TLS is now enabled by default in kernels including KTLS
+	support.  KTLS is included in GENERIC kernels for aarch64,
+	amd64, powerpc64, and powerpc64le.
+
 f57efe95cc25:
 	New mididump(1) utility which dumps MIDI 1.0 events in real time.
 

From nobody Mon Nov 25 19:36:47 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxwv34pbpz5f5Tn;
	Mon, 25 Nov 2024 19:36: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxwv348fhz4d5q;
	Mon, 25 Nov 2024 19:36:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732563407;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=BFCOonRjCISPugFP0SaqG/jE/bcG7ZsFRF94kNO+XxY=;
	b=qn1b0SREZ6gpHFFvp/tGcI0XMLciytLYP6gqP8GmOUhJIdRmdjNqIY82l2124SuTFdu0He
	wju7gy1BE72gOo85CrjwbNxLSnbZYSdjVRiCApD8qbJa2i1hCnK4HyvymMbrLRRAvaGBl/
	VOc6Z6P6BBzqygQTtccclOYC4ktujb79xWJ8NkxaUK1FBSMeKwQsygPXgcRfhSp1SNmEjE
	5KTpFpalNlOVBVWNCWtL+PjOLe5GVXAXCV9vgFJ/YfUTayUoL0qTOs4R6zduepFoQxLPMr
	jJzB7KZ2XKVHjLw1fgDvmYQJaw4E0x/GW+khsV7MpBU1xwNed59mSfLcBpt8Ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732563407;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=BFCOonRjCISPugFP0SaqG/jE/bcG7ZsFRF94kNO+XxY=;
	b=FcNjAvpxOngze589fIQgZipAtdB3C0p8Y/cRSUcX3yJ/pszrqzYevYYas9CD/HFVO3gXMp
	nK/u+ih8ZYy/RbCiy+iAOUmrteF5U2jq/2Jb/ySDY6NiM+E3vGah/fD3jNhRUouVcXlxp7
	Lrv6deg775dXv6Tvkxt4bUn/Jzwj2a5t2tM9HZAldTqgB1D6BZsf3qJbY5Oaz53C9b6wNj
	fXMtr1F22Or8DqUUeeGo6Hshh7bcWg43iTZw3rD4YERasefP97h+57Arih+31YYOHtdLOb
	cPXabIGSdDKqjXr0q8wRiFLfiBAGLpUeNIaUZsiC4rx160oehivnkb8qumgnIA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732563407; a=rsa-sha256; cv=none;
	b=Dk+OguPAS8dfc6TgDzKr4RUIYbsO7f3M5xQ1CASh1eyZ+mkJhG32HiBailCYp8Aro9htV7
	y99lmGUFpDZPAGlo9ulrguL1W0AvEqGXQlq02o4Tcav0F/s3JhmdUYEjfOUxuDTkPN7ytv
	mhQ+zuurC72QzjojPcGDeMl4BC0mMHtiDhlDXcIZ2DtXf4n3wEZd2yTLFx1DcIRx3cSXMw
	CK2Ptvgt2TL/tTTllZRGUtmcJ18bFRqitDbiPbe5ZjVwY5AVQnuWrHkGFA7gfbvWxH65Jl
	VwanL1lEVCkbTepjhXqqBOTHsxklJZLmatDPyN+3tZOFwFk/d0n/k2sLVJiVsg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxwv33lvtzt6T;
	Mon, 25 Nov 2024 19:36:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APJaljC042092;
	Mon, 25 Nov 2024 19:36:47 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APJaldc042089;
	Mon, 25 Nov 2024 19:36:47 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 19:36:47 GMT
Message-Id: <202411251936.4APJaldc042089@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 31784ee1e37d - main - kern___realpathat(): style
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 31784ee1e37dc0337637493721c4c9b98547089b
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=31784ee1e37dc0337637493721c4c9b98547089b

commit 31784ee1e37dc0337637493721c4c9b98547089b
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-25 12:41:17 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-25 19:36:41 +0000

    kern___realpathat(): style
    
    Reviewed by:    markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      3 days
    Differential revision:  https://reviews.freebsd.org/D47739
---
 sys/kern/vfs_cache.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index fa6b23fe3d6f..c4b4d59f3b40 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -3265,6 +3265,8 @@ kern___realpathat(struct thread *td, int fd, const char *path, char *buf,
 
 	if (nd.ni_vp->v_type == VREG && nd.ni_dvp->v_type != VDIR &&
 	    (nd.ni_vp->v_vflag & VV_ROOT) != 0) {
+		struct vnode *covered_vp;
+
 		/*
 		 * This happens if vp is a file mount. The call to
 		 * vn_fullpath_hardlink can panic if path resolution can't be
@@ -3274,7 +3276,6 @@ kern___realpathat(struct thread *td, int fd, const char *path, char *buf,
 		 * this should have a unique global path since we disallow
 		 * mounting on linked files.
 		 */
-		struct vnode *covered_vp;
 		error = vn_lock(nd.ni_vp, LK_SHARED);
 		if (error != 0)
 			goto out;
@@ -3284,8 +3285,9 @@ kern___realpathat(struct thread *td, int fd, const char *path, char *buf,
 		error = vn_fullpath(covered_vp, &retbuf, &freebuf);
 		vrele(covered_vp);
 	} else {
-		error = vn_fullpath_hardlink(nd.ni_vp, nd.ni_dvp, nd.ni_cnd.cn_nameptr,
-		    nd.ni_cnd.cn_namelen, &retbuf, &freebuf, &size);
+		error = vn_fullpath_hardlink(nd.ni_vp, nd.ni_dvp,
+		    nd.ni_cnd.cn_nameptr, nd.ni_cnd.cn_namelen, &retbuf,
+		    &freebuf, &size);
 	}
 	if (error == 0) {
 		error = copyout(retbuf, buf, size);

From nobody Mon Nov 25 19:36:48 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxwv46PDnz5f5cH;
	Mon, 25 Nov 2024 19:36:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxwv45qS2z4cpJ;
	Mon, 25 Nov 2024 19:36:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732563408;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=sMNe5bVWOAonhSobT7yfp0FZgL+tp/gJ/q1SNKgChoU=;
	b=OxN/T8z0Wk2SnWvc+5iCtVYOrSKclGM/VoFicCn8sBJXW5vo9GdNShDreFuqjTcvBvIE8a
	3PHqhrkHQtxrWnI1xE9AVAL+kP+rVqZpG86LzPQkyTgkyJd5nl182L2vpjnU/bMhmwDcaS
	dL0Gt5qlQ4PrUulSAWV8wkSWEd2dPBBS+dQcl7We7Qwp1L3GLQsdVqn+Ne1kxLLuWlVUsP
	gH5w+0lUVBkvcecFRqECBPpX+QsTlcNdNVvuPOK9v1xg8H+hJW4Ajom5jAnCNpSJ3rjteA
	nKBzxstB3vobJS0bB8GoUDfcWu9P6GwwQozhZ/dTbAwYufuQ3FLvfZMkDYa+pg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732563408;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=sMNe5bVWOAonhSobT7yfp0FZgL+tp/gJ/q1SNKgChoU=;
	b=fKgNMLPVxCI2ug+AgShyJkha+wf7s8Laj4/8dM0jQnXL0+rt0tAdYlHGkycjUE7g6QmRuA
	k8O6+g5cS5VGDdMJBU5KHbtKMjfJdf2pBiZQ9hwPSCYU8dFnCsdLhMLhLGvD2Ss5M+dypM
	H0NrlyYtdsgUDNC2Nr45YspMMj2zt7rR6CI40UH+5MBpuWhnGGQ8bkvqm8StjEz5RlQtPo
	sAc2e0V4HzEAQbj6iilpl8vzmY3RIlGyhSB2yri8okIciI8SLtAV/zQXhAWiJoo0qt1829
	XhVZdpMvblwi1Ijc+BDpK41AEikQg6i4qinygH1BhMcnzOYLsIPn4vFtz7KGWA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732563408; a=rsa-sha256; cv=none;
	b=QrYh1HBWKkXGyfXJXlOudJ24Zo8UIVJ7WnJVmjKN8Xhh/PjxW92IjBpB712efZxlC8z3Rb
	L/v6nTVBrqiUi9Lma1cHXaZgMkW3/kEdp78uwU4yTJA7osFcQlhtOHJCXDqRsw+ERgvxwI
	j80xYq60nvKinSmQSKuLQvPbja0oTO8nD9oea4Kq7AvAsp6cR/Dg7c5BVJ7aOvYkguTMo2
	PAPn2fde0wwEX46hxVx9KghKI6O5n3ZEroWwqTAJPL+EKGj1UCSa0Vcl9Ic+P9tV52YRkX
	cDtIlYDzIDqg8hlVOYQ617Yx4NJ1tIe1QBZ+i1hGPvn9Sl1siuEVg28ndySfAA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxwv452hczt1R;
	Mon, 25 Nov 2024 19:36:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APJamuH042144;
	Mon, 25 Nov 2024 19:36:48 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APJamMe042141;
	Mon, 25 Nov 2024 19:36:48 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 19:36:48 GMT
Message-Id: <202411251936.4APJamMe042141@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 67218bcea847 - main - kern___realpathat(): do not
  copyout past end of string
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 67218bcea847c93ccd002335748884b02a3ca807
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=67218bcea847c93ccd002335748884b02a3ca807

commit 67218bcea847c93ccd002335748884b02a3ca807
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-25 12:41:46 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-25 19:36:41 +0000

    kern___realpathat(): do not copyout past end of string
    
    Reported and tested by: pho
    Reviewed by:    markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47739
---
 sys/kern/vfs_cache.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index c4b4d59f3b40..f7178ee006ea 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -3290,7 +3290,7 @@ kern___realpathat(struct thread *td, int fd, const char *path, char *buf,
 		    &freebuf, &size);
 	}
 	if (error == 0) {
-		error = copyout(retbuf, buf, size);
+		error = copyout(retbuf, buf, min(strlen(retbuf) + 1, size));
 		free(freebuf, M_TEMP);
 	}
 out:

From nobody Mon Nov 25 19:36:49 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxwv636B3z5f5rx;
	Mon, 25 Nov 2024 19:36:50 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxwv566m9z4ckW;
	Mon, 25 Nov 2024 19:36:49 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732563409;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JmEm8TghyRrRqUxQ4dxFP/8LoDu1hVMp9Apsgg/U7C0=;
	b=mRssysTz2cg5Bep43ryKZAR5h4BCQseJk21Ao2//BlTpHN03meDVTtDBqWNTwMAXrDbp2l
	o+jAMOQTDjguudVG7xZ2390XjOigiCMCjO+MBAfG1G3eoWlG08VfLJqp2Cf4WEw7QWWwzi
	m28g4arZralfv0ZYiwYkBHQlhaxOrTczXqtbKklrIR+Q+8hWVAvm12gUVT0kqsG+e+oTMP
	RQZORtbNoiIiOgM0Eri8yBxEhYEjGSIROPaFLywNM+ZNLQMO1j6Qn7UOFSHYyrg8cbRz2j
	f5IoGet3XA08uTH6GbkOXskGTtGSzZNdirmv3V8nJI/9DRGCRmnsmidt3lcPUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732563409;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JmEm8TghyRrRqUxQ4dxFP/8LoDu1hVMp9Apsgg/U7C0=;
	b=qGKmqsdBWiswu+Jo7qQPfSYqs6O1ncH7zFnjzlk9vVG3DJFPPtbWMFISCYeRNyYL90cMlg
	qV9QPxphMB7grDgWfQo4kquOhDIIGGFD0cuOu+jgANHWOuXSxfqo6yXTK5jc5tT8F0+uLa
	0J9vQ2EFCZNM/8W9igGiEd7+WkCy5RY6zhcvxu/b06kCc3hyTqT43g0hPu6u1Epn7pcKY5
	OtV0RfYs+MWM+lN3tksw/J+51AfENFSpUeL3hOviwEjPrz2Ya+RPaplXsmskCdxr94jQ3l
	mIRGMwJ1cTXRm4fqu0IfFt6qTWAdNtJ4eSKfou1pwRS/plfUeQmNLykXUOt3mQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732563409; a=rsa-sha256; cv=none;
	b=vxqoIffRaxAAcU//7qkvJ2NyabWZnS+Yw4keK6l0kMpP4ZCWo0FwyIJ16bsIn9YhI35KXa
	p17RJB1gpicMS3JxyoomgcMVd58rcjXCYg/RdxyoNViz41SY4HpcO+HazJ4AM0L1n0ECAZ
	raOjf2cb9vpRFag3Gql8hpKubIPPxi66WSR4hqlvGgSzfTyTB4+dq9ktkBdEvr6CCx0czQ
	jMTxuxJopZ9xHdoMfH9vUERW5gKnCVPqajxgqlm0Y7n7B/Js9LxyZjD3uckazFrwqyV/fB
	/TJlRJc+zgzREOiNt1aiDuc+kdVIFSpKGqTlKxaqc/Nn9hQG5KIFN20WO8tf1Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxwv55N0Czt49;
	Mon, 25 Nov 2024 19:36: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 4APJanvX042184;
	Mon, 25 Nov 2024 19:36:49 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APJanwj042181;
	Mon, 25 Nov 2024 19:36:49 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 19:36:49 GMT
Message-Id: <202411251936.4APJanwj042181@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: bde575b273ee - main - kern___realpathat(): honor
  uio_seg argument
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: bde575b273eeb17abe878e43dd018e8373741298
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=bde575b273eeb17abe878e43dd018e8373741298

commit bde575b273eeb17abe878e43dd018e8373741298
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-25 14:07:15 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-25 19:36:41 +0000

    kern___realpathat(): honor uio_seg argument
    
    Reviewed by:    markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47739
---
 sys/kern/vfs_cache.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index f7178ee006ea..c55e103a1a37 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -3290,7 +3290,15 @@ kern___realpathat(struct thread *td, int fd, const char *path, char *buf,
 		    &freebuf, &size);
 	}
 	if (error == 0) {
-		error = copyout(retbuf, buf, min(strlen(retbuf) + 1, size));
+		size_t len;
+
+		len = strlen(retbuf) + 1;
+		if (size < len)
+			error = ENAMETOOLONG;
+		else if (pathseg == UIO_USERSPACE)
+			error = copyout(retbuf, buf, len);
+		else
+			memcpy(buf, retbuf, len);
 		free(freebuf, M_TEMP);
 	}
 out:

From nobody Mon Nov 25 20:00:16 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxxQ83YPKz5f7K3;
	Mon, 25 Nov 2024 20:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxxQ834j5z4g7f;
	Mon, 25 Nov 2024 20:00:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732564816;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Wv8WD6bGMRLnEKreo+lzg/iqW5CZnK6edtpbFBjrcGs=;
	b=dIC5HvDPW2cxsm+iA159N1qOKGtM8Obh/hbmcktYTCXIWyMbLahKmvDxEXdgFzfkLV1Hzh
	8XSY0mmMlcPjWflPxYbxOTcEiOyZKK2GZnl2cBJVC07zS0ZGjQGV0TDe9cf4CKfFQP0ujD
	gMcyW4wElAaZmSkJnlr11vN64fBopoVRtKNWHKYIGIEcnOdTf6vhXc6igcRNk+ECJMABRa
	ZTN1fzcjiICCukgsIPbNKVrASnpWTYAJRAQHgHo1vyxwZUMX2Vi86oRDqZLCXQeNzdTv3w
	eIGMAfnBNXI35GJ90ZpEgxrg+jOBWKJWVmbCPjhRQI6p7z/AxHN7aPu3fdvaXg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732564816;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Wv8WD6bGMRLnEKreo+lzg/iqW5CZnK6edtpbFBjrcGs=;
	b=A2Tl8wCh4e1GMJVPxLLqVQupV7qzy9iQNyw0Cp1PWLq3tcMGWM4aDnTzgQ6Sx/dPfIma0D
	fh52xcEblk03+AbDi9irj50WQNIm7Fa3aNpicWLu8vvx9ct2AXO7Pv/NLnz+8gG/MbadUb
	2PhZ//EaupHVpptIdJCHbNnX1bTYf0eiJzgErpEtk7sDA1dQ7SS339M3AxwXkfCfy2lUsu
	Vf2MC7juh4QTXegaYs/94STc/XK9Ko9nfouN+g2FMKsbBeXq6lKm7rmzbxi7R7go6zvftU
	42WmkalPIugHfv8ZG40QBoBkRoNhL3hScRrHt4jS11TrTYs+AMV48R6Om77nzw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732564816; a=rsa-sha256; cv=none;
	b=Yevq370VAr7AoYx8Nf4hfYsnckiWEJo2KHrG3QNnyQTU7ac1lJP80R7PLL7su15PAb3MOJ
	0bxgHU1SdOz0V4NPievjDBjeLooDZ5yG6AhdQAOKgnjqqXEw47+3CfcuuvZp+bs2NKwG6T
	7kAuMow3Gw+SHYubvNR/dMKXknuE/kE7BFWfrJtNgAhZ0kizSNLnJr2RJ3wun78bqlFT6M
	qUqpwIzPLX6VDsrJjLvTKAYNIXaHRyoLWzHw8mTatYwoxEJgcAtnpijqzmoXl65+E76PZR
	OZQi55nU8YiVW6A97Jkmfp8EHbESgVPqXozvm6pC39oXH1uoToxgVigNnOTypw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxxQ82gxDztjG;
	Mon, 25 Nov 2024 20:00: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 4APK0GHV088365;
	Mon, 25 Nov 2024 20:00:16 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APK0GTN088360;
	Mon, 25 Nov 2024 20:00:16 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 20:00:16 GMT
Message-Id: <202411252000.4APK0GTN088360@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: John Baldwin <jhb@FreeBSD.org>
Subject: git: 370ad2d36789 - main - ccr(4): Mention geli(4) and
  ktls(4) as other consumers
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhb
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 370ad2d36789dd565b87dcd0bec6964e3d15c71a
Auto-Submitted: auto-generated

The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=370ad2d36789dd565b87dcd0bec6964e3d15c71a

commit 370ad2d36789dd565b87dcd0bec6964e3d15c71a
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-11-25 19:59:36 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-25 19:59:36 +0000

    ccr(4): Mention geli(4) and ktls(4) as other consumers
    
    Cross reference crypto(7) and crypto(9) as well.
    
    Sponsored by:   Chelsio Communications
---
 share/man/man4/ccr.4 | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/share/man/man4/ccr.4 b/share/man/man4/ccr.4
index 11b3a37f384d..2626d3ccdd48 100644
--- a/share/man/man4/ccr.4
+++ b/share/man/man4/ccr.4
@@ -52,7 +52,10 @@ The driver accelerates AES-CBC, AES-CCM, AES-CTR, AES-GCM, AES-XTS,
 SHA1, SHA2-224, SHA2-256, SHA2-384, SHA2-512,
 SHA1-HMAC, SHA2-224-HMAC, SHA2-256-HMAC, SHA2-384-HMAC, and SHA2-512-HMAC
 operations for
-.Xr crypto 4
+.Xr crypto 9
+consumers such as
+.Xr ktls 4 ,
+.Xr geli 4 ,
 and
 .Xr ipsec 4 .
 The driver also supports chaining one of AES-CBC, AES-CTR, or AES-XTS with
@@ -97,7 +100,11 @@ email all the specific information related to the issue to
 .Sh SEE ALSO
 .Xr crypto 4 ,
 .Xr cxgbe 4 ,
-.Xr ipsec 4
+.Xr geli 4 ,
+.Xr ipsec 4 ,
+.Xr ktls 4 ,
+.Xr crypto 7 ,
+.Xr crypto 9
 .Sh HISTORY
 The
 .Nm

From nobody Mon Nov 25 20:16:37 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxxn14Ldhz5f7l6;
	Mon, 25 Nov 2024 20:16: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxxn13sDdz4hR0;
	Mon, 25 Nov 2024 20:16:37 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732565797;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=YfrwTotKX1NOrfteobxjr1DkhjgfJ/lJVYYyr3vgYuM=;
	b=bvk6yb10VaRATEesR+Y3Ev0rx2c0Gq7RMOicKAX2ilIuXGGjNbHY5HHGYeQZyra7v0AFaB
	b4ft2ZtXrCsE3nSNOPZMl65L18zTvQLug8ObwFpaQVA/nD2WWTwqPgYhGYK6HQHesWPvJ6
	Dx+Jj6v735LcuAmxBQhSp2J8GIoZqIzxhENsApLpSW76kROZK4hoSicoPEmEQn+/4e1RtR
	p78rjjHADwSTNfCp3jSfa7W+MG+ZgUDesKpfnmqKU0VLYBwZlpnbjRjOEbb0Vbef1bjMxx
	XRb/0+75qok0Y4QVgifc0ZyiWGmlx8d2gthdW99yRlaGP3FSQ2kN0i2L8IYqUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732565797;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=YfrwTotKX1NOrfteobxjr1DkhjgfJ/lJVYYyr3vgYuM=;
	b=ikqwwKZf2wS784PWUJJkB0s89CkXbFroYQaoSAWu72f3cJeys3hgJ5LZUrwVKYmT5y5aOD
	9E8ltyWq7iDsu6Z/9xEx4eFSs7NbL5msupHKDhCIEnWdYgCUGFUbcyT4keWRhd1VbXk1rn
	9Q2O+Z0C3n88UzI8xASnFK/Gr0YAqTZbaG3jERRiOSEDbqTt9Q1UyPsRqHvPb3wyoMSgYP
	bFJM1bRxwOMuctXaAFpeiC2VfLBCU/K7PK6PV2CJZJ+M231uCwQXQBOQ8hERJFN3gz9CvR
	6L0wO95E0drFMOIcT7Ykss+b3c2iKDDA6HalqqyWAzEy1V/8QqcYIknjbAQl+g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732565797; a=rsa-sha256; cv=none;
	b=YIiWtRVUQx6qlKevOWah3JvVCwhlY8k/sl2rfYUjlR2zZTsgj7cZbw2VSrvGcoXf2vhYa8
	uuBLrdPsjjIN9M2lpnAwGMmf8uJBDhkFW89v+jfGY494DEaucbsnLNdCOfqEdyH6lasz6A
	9m6KUKyShuAT2mO2Uc/mYVI9U/vK1vyEYyndutpP3dHwdymkw5VJ0S09e10LKpPApYsjLA
	fpURlsAnnjqzJWuGs/fEE4xoiZerMOHzetD1M3WNxfeEffjoHbG+RneVmKhzj94jm8BCpJ
	+DQ5i9VykpZGABeAS57IADGBmYOetpL4PbU1akl5TXS1oRjWV5Axetb6HQ/pQg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxxn13KSyztr9;
	Mon, 25 Nov 2024 20:16: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 4APKGboO016837;
	Mon, 25 Nov 2024 20:16:37 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APKGbBA016834;
	Mon, 25 Nov 2024 20:16:37 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 20:16:37 GMT
Message-Id: <202411252016.4APKGbBA016834@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: John Baldwin <jhb@FreeBSD.org>
Subject: git: bf06074106cf - main - ccr(4): Belatedly bump .Dd for
  prior commit
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhb
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: bf06074106cf80564e1137b0f6ad0eb923baca55
Auto-Submitted: auto-generated

The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=bf06074106cf80564e1137b0f6ad0eb923baca55

commit bf06074106cf80564e1137b0f6ad0eb923baca55
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2024-11-25 20:16:09 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-25 20:16:09 +0000

    ccr(4): Belatedly bump .Dd for prior commit
    
    Pointy hat to:  jhb
---
 share/man/man4/ccr.4 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/share/man/man4/ccr.4 b/share/man/man4/ccr.4
index 2626d3ccdd48..de3f3609a285 100644
--- a/share/man/man4/ccr.4
+++ b/share/man/man4/ccr.4
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd June 3, 2019
+.Dd November 25, 2024
 .Dt CCR 4
 .Os
 .Sh NAME

From nobody Mon Nov 25 21:08:45 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxyx936jhz5fCVj;
	Mon, 25 Nov 2024 21: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxyx92fHHz4typ;
	Mon, 25 Nov 2024 21: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=1732568925;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=joFD2TKePZcc5Qlfd1GhPvsonTdu0J5i6yXzENeZCX0=;
	b=HWLJbZvVvQBxty7/eNrg/54jhHcZxhrD1KXenKC6iT4QqkxeL8HaOlrxTlUVvy/EIEaplU
	RUPNOmbczoJRl4a6WTH1bcatyhN9fr2m0v8b0lYyWuYHMnUY/tsTED8wXQ4HeLIJpIH6Lm
	ZFHEvEIQOTmTTlO7u25hPKWzeFMQ3ziLxjuwKDkJrlG8R7jcZyeISG/5Wxp/9gIRyjzc7b
	Rsw8jGWYlL7cQdBBH3pTxuSJqQz0jt9/bICsmzOrNzz39YU04A/A6Enm5jBXfByHUZlMOa
	KYN1fCiSbyZ7LV43YjN187Wx4M+ojsTIDOHZaldldH/wLVtKCSa4vFcXdKvH0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732568925;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=joFD2TKePZcc5Qlfd1GhPvsonTdu0J5i6yXzENeZCX0=;
	b=T1GeK9wUO7qmoo/R426k+Y2ILYX57BVvDMp4YL+d/Y1UvBIAXZneLbvnbelU36PdYUAxpQ
	YhmP3v7qkd6tQzsRfA6hTnP0mYhQ7axcTkkoaxymgE8xQCpXLn7dNnmi/sUyi56OQ+3OMR
	2BR8sFUDX00flw+v8C1KZG4dzSV8KwhaS6jG510jED7Sd/MrPFVP+qlNkNzgw5A1RMMcYT
	D/u4wCYxYW7J2Pqyrxb1RCcwKtLA3qrsBbsV4uZL4NHX/38TgQZQNlm5UcGcabbnFmwSqS
	XK9mzIJGtUM+EanSHknU7I0odyPz0/f+orLYvkO7GiJP2cYFbpirxnsZbHPQPQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732568925; a=rsa-sha256; cv=none;
	b=NzXTD5BC3+DzGau2GCFQegEF9PXGZq/yMOAYo5Eisg3x3xz0ZOf7tcZLAeb6f4grIbNa53
	4vVgl5L6xel5mQeWhqL/HRGNolMHSdSkjbvWZQ0xUkTVyn0N0sYFuPcs9Zl/Rj6eRYk5a2
	EQ/VRLRNwjSjh0l5RCryWt3PEfryz0UdY1L2f3qTNrJOa8zA4yR7Ps/GkDhnjfF8AcxumJ
	v0czH1KzShfZW676hioSq1Y6y2icSLz9MLbMbjdzsi2WFT8srkUP56zR/bmugnOKD1izol
	UIWcJQwguUxBHKx0YndiTxy6H2eYB0oX6ZNukC3lLRyH2oC+qWwdYuuWamM1VQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxyx926wKzwKG;
	Mon, 25 Nov 2024 21: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 4APL8jF9011349;
	Mon, 25 Nov 2024 21: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 4APL8j2T011346;
	Mon, 25 Nov 2024 21:08:45 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:08:45 GMT
Message-Id: <202411252108.4APL8j2T011346@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: 4ab2a84e0924 - main - riscv: dcache flush hooks
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4ab2a84e092467be04d3c85ab2ceebc1e722004c
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=4ab2a84e092467be04d3c85ab2ceebc1e722004c

commit 4ab2a84e092467be04d3c85ab2ceebc1e722004c
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2024-11-21 18:11:30 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-25 21:08:03 +0000

    riscv: dcache flush hooks
    
    Cache management operations were, for a long time, unspecified by the
    RISC-V ISA, and thus these functions have been no-ops. To cope, hardware
    with non-coherent I/O has implemented custom cache flush mechanisms,
    either in the form of custom instructions or special device registers.
    Additionally, the RISC-V CMO extension is ratified and these official
    instructions will start to show up in hardware eventually. Therefore, a
    method is needed to select the dcache management routines at runtime.
    
    Add a simple set of function hooks, as well as a routine to install them
    and specify the minimum dcache line size. The first consumer will be the
    non-standard cache management instructions for T-HEAD CPUs.
    
    The unused I-cache variables and macros are removed.
    
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D47454
---
 sys/conf/files.riscv        |  1 +
 sys/riscv/include/cpufunc.h | 42 +++++++++++++++++++++++++++++------
 sys/riscv/riscv/cache.c     | 53 +++++++++++++++++++++++++++++++++++++++++++++
 sys/riscv/riscv/machdep.c   | 17 ---------------
 sys/riscv/riscv/pmap.c      |  2 +-
 5 files changed, 90 insertions(+), 25 deletions(-)

diff --git a/sys/conf/files.riscv b/sys/conf/files.riscv
index d325502e03ee..915bce34603d 100644
--- a/sys/conf/files.riscv
+++ b/sys/conf/files.riscv
@@ -36,6 +36,7 @@ riscv/riscv/bus_machdep.c	standard
 riscv/riscv/bus_space_asm.S	standard
 riscv/riscv/busdma_bounce.c	standard
 riscv/riscv/busdma_machdep.c	standard
+riscv/riscv/cache.c		standard
 riscv/riscv/clock.c		standard
 riscv/riscv/copyinout.S		standard
 riscv/riscv/cpufunc_asm.S	standard
diff --git a/sys/riscv/include/cpufunc.h b/sys/riscv/include/cpufunc.h
index 4521e1605d8f..8f5b87d24ce3 100644
--- a/sys/riscv/include/cpufunc.h
+++ b/sys/riscv/include/cpufunc.h
@@ -44,6 +44,8 @@ breakpoint(void)
 
 #ifdef _KERNEL
 
+#include <sys/_null.h>
+
 #include <machine/riscvreg.h>
 
 static __inline register_t
@@ -107,16 +109,42 @@ sfence_vma_page(uintptr_t addr)
 #define	rdinstret()			csr_read64(instret)
 #define	rdhpmcounter(n)			csr_read64(hpmcounter##n)
 
+/* Cache hooks. */
+
 extern int64_t dcache_line_size;
-extern int64_t icache_line_size;
 
-#define	cpu_dcache_wbinv_range(a, s)
-#define	cpu_dcache_inv_range(a, s)
-#define	cpu_dcache_wb_range(a, s)
+typedef void (*cache_op_t)(vm_offset_t start, vm_size_t size);
+
+struct riscv_cache_ops {
+	cache_op_t dcache_wbinv_range;
+	cache_op_t dcache_inv_range;
+	cache_op_t dcache_wb_range;
+};
+
+extern struct riscv_cache_ops cache_ops;
+
+static __inline void
+cpu_dcache_wbinv_range(vm_offset_t addr, vm_size_t size)
+{
+	if (cache_ops.dcache_wbinv_range != NULL)
+		cache_ops.dcache_wbinv_range(addr, size);
+}
+
+static __inline void
+cpu_dcache_inv_range(vm_offset_t addr, vm_size_t size)
+{
+	if (cache_ops.dcache_inv_range != NULL)
+		cache_ops.dcache_inv_range(addr, size);
+}
+
+static __inline void
+cpu_dcache_wb_range(vm_offset_t addr, vm_size_t size)
+{
+	if (cache_ops.dcache_wb_range != NULL)
+		cache_ops.dcache_wb_range(addr, size);
+}
 
-#define	cpu_idcache_wbinv_range(a, s)
-#define	cpu_icache_sync_range(a, s)
-#define	cpu_icache_sync_range_checked(a, s)
+void riscv_cache_install_hooks(struct riscv_cache_ops *, u_int);
 
 #define	cpufunc_nullop()		riscv_nullop()
 
diff --git a/sys/riscv/riscv/cache.c b/sys/riscv/riscv/cache.c
new file mode 100644
index 000000000000..edbaebc9abd6
--- /dev/null
+++ b/sys/riscv/riscv/cache.c
@@ -0,0 +1,53 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2024 The FreeBSD Foundation
+ *
+ * This software was developed by Mitchell Horne <mhorne@FreeBSD.org> under
+ * sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/types.h>
+
+#include <machine/cpufunc.h>
+
+struct riscv_cache_ops __read_frequently cache_ops;
+
+int64_t __read_frequently dcache_line_size;	/* The minimum D cache line size */
+
+static bool cache_initialized;
+
+void
+riscv_cache_install_hooks(struct riscv_cache_ops *newops, u_int line_size)
+{
+	if (cache_initialized)
+		panic("cache hooks already installed!");
+
+	bcopy(newops, &cache_ops, sizeof(cache_ops));
+	dcache_line_size = line_size;
+
+	cache_initialized = true;
+}
diff --git a/sys/riscv/riscv/machdep.c b/sys/riscv/riscv/machdep.c
index eda7ebc32bbf..c5da4832dd36 100644
--- a/sys/riscv/riscv/machdep.c
+++ b/sys/riscv/riscv/machdep.c
@@ -113,10 +113,6 @@ int cold = 1;
 
 struct kva_md_info kmi;
 
-int64_t dcache_line_size;	/* The minimum D cache line size */
-int64_t icache_line_size;	/* The minimum I cache line size */
-int64_t idcache_line_size;	/* The minimum cache line size */
-
 #define BOOT_HART_INVALID	0xffffffff
 uint32_t boot_hart = BOOT_HART_INVALID;	/* The hart we booted on. */
 
@@ -329,17 +325,6 @@ try_load_dtb(caddr_t kmdp)
 }
 #endif
 
-static void
-cache_setup(void)
-{
-
-	/* TODO */
-
-	dcache_line_size = 0;
-	icache_line_size = 0;
-	idcache_line_size = 0;
-}
-
 /*
  * Fake up a boot descriptor table.
  */
@@ -550,8 +535,6 @@ initriscv(struct riscv_bootparams *rvbp)
 	/* Do basic tuning, hz etc */
 	init_param1();
 
-	cache_setup();
-
 #ifdef FDT
 	/*
 	 * XXX: Unconditionally exclude the lowest 2MB of physical memory, as
diff --git a/sys/riscv/riscv/pmap.c b/sys/riscv/riscv/pmap.c
index 69eb36c2cd4c..e11adba0d832 100644
--- a/sys/riscv/riscv/pmap.c
+++ b/sys/riscv/riscv/pmap.c
@@ -5013,7 +5013,7 @@ pmap_change_attr_locked(vm_offset_t va, vm_size_t size, int mode)
 	if (anychanged) {
 		pmap_invalidate_range(kernel_pmap, base, tmpva);
 		if (mode == VM_MEMATTR_UNCACHEABLE)
-			cpu_dcache_wbinv_range((void *)base, size);
+			cpu_dcache_wbinv_range(base, size);
 	}
 
 	return (error);

From nobody Mon Nov 25 21:08:46 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxyxB4DPFz5fCQS;
	Mon, 25 Nov 2024 21:08: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxyxB2xY5z4tp6;
	Mon, 25 Nov 2024 21:08:46 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732568926;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dF/lf9tcdIIovirjFc1t3EGP9bZpQ4C4bQeZgpnEiSU=;
	b=e4vyY8d05IRT/0zhbGs2p6HrR4/fg5hXVscfecWvKZ6kZSj+NIvcec0niJgA3wGDRJQ2JH
	Yw2UOue0XkXZIyyXNUVVPlFiHqLrnGPD6UmS3SHAeGL6suqCVdIKz4XSzu+OSeWcLdPKGd
	PBg8eLrklkqDhwVypSbiGGdWPArZHUd40R2wJVqA44WzZ8Z0l8O3Cvw9+LPzh+FrBBDnEQ
	lrS9hGSqrPo5wD62tkDHDSvoXpPkU31522VZefd79ZieRQ6B/gRtuJn90eahS743O1C9tK
	5UahY7evTcYP1MS/Xa2B82eRF5g33almeQ+gBfjliD8pvzBIl36CK1y+KR+S/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732568926;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dF/lf9tcdIIovirjFc1t3EGP9bZpQ4C4bQeZgpnEiSU=;
	b=aqpSdyxhWnDaPQirxvBdfnEDS8tyFJvTUeTtjPZ7QVe7lJlUQJtIT9+X09A9X0dctGhBx8
	zd1iT9TAF6wHx2eA1FNLG9MfcLMxdXcQpTtFxybwrILH8Dj/wWf/ud9CqmIchbxqlA1W6W
	d/ZZJrnsM9UoWt55P65WkXKLprGqRXKaS+G3Z7VaqoTb0XFqV8Bzrhb3jaZ+EQUI1n9V9Q
	xHfspcNohFnGa8N7ZBV7K9HvoTcmx9TZQd/B5limZ434+B6JmjWeFNtXoXy3kQDUzvfsTh
	RkrjMXANHP5Snw4FIXEaQHPxHioMwbmHV8WjXdHifvUosy86w8En8aZXw2RjaA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732568926; a=rsa-sha256; cv=none;
	b=ynawOGiZ7NkYdUZgpch+7TyHGbSY2Yg9hzsLzj0Cma80lvlsb9JgqEK3/b1Wo/ApMlmRBG
	3nVuraySH33CXo48NDx9YmdT/2vU6ggSKUd1SyU8R2XquDL3dMw8VFCJdsUoCTCtmPVeY3
	T8pNthEqwsxLzJzNEch9SCA7zXYtqL7uZkfjkgk7nO336nBnUlnnwLqYc5y1UKI4emKMUI
	259wmjFLxWv32TGKQ79+pRGI3zgTMSresnUt846BNjqZtyPMj6x2b+ntanj41WE10LG4zY
	wjr9vk2UisXDNImRxBZU3k6PuN1Gh8NP7PnleczlsEVyOUwkfvlek3laSMcGcA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxyxB2Xc6zwKH;
	Mon, 25 Nov 2024 21:08: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 4APL8kOE011405;
	Mon, 25 Nov 2024 21:08:46 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APL8kA0011402;
	Mon, 25 Nov 2024 21:08:46 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:08:46 GMT
Message-Id: <202411252108.4APL8kA0011402@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: dfe57951f061 - main - riscv: add custom T-HEAD dcache
  ops
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: dfe57951f0610c6de42190b32c7ed844a97ee593
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=dfe57951f0610c6de42190b32c7ed844a97ee593

commit dfe57951f0610c6de42190b32c7ed844a97ee593
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2024-11-21 18:11:51 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-25 21:08:04 +0000

    riscv: add custom T-HEAD dcache ops
    
    This is the first major quirk we need to support in order to run on
    current T-HEAD/XuanTie CPUs, e.g. the C906 or C910, found in several
    existing RISC-V SBCs. With these custom dcache routines installed,
    busdma can reliably communicate with devices which are not coherent
    w.r.t. the CPU's data caches.
    
    This patch introduces the first quirk/errata handling functions to
    identcpu.c, and thus is forced to make some decisions about how this
    code is structured. It will be amended with the changes that follow in
    the series, yet I feel the final result is (unavoidably) somewhat
    clumsy. I expect the CPU identification code will continue to evolve as
    more CPUs and their quirks are eventually supported.
    
    Discussed with: jrtc27
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D47455
---
 sys/conf/files.riscv       |  2 +
 sys/riscv/include/thead.h  | 35 ++++++++++++++++
 sys/riscv/riscv/identcpu.c | 21 ++++++++++
 sys/riscv/thead/thead.c    | 99 ++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 157 insertions(+)

diff --git a/sys/conf/files.riscv b/sys/conf/files.riscv
index 915bce34603d..6186ae9b3371 100644
--- a/sys/conf/files.riscv
+++ b/sys/conf/files.riscv
@@ -84,5 +84,7 @@ riscv/vmm/vmm_riscv.c				optional	vmm
 riscv/vmm/vmm_sbi.c				optional	vmm
 riscv/vmm/vmm_switch.S				optional	vmm
 
+riscv/thead/thead.c		standard
+
 # Zstd
 contrib/zstd/lib/freebsd/zstd_kfreebsd.c		optional zstdio compile-with ${ZSTD_C}
diff --git a/sys/riscv/include/thead.h b/sys/riscv/include/thead.h
new file mode 100644
index 000000000000..e11d5c37374c
--- /dev/null
+++ b/sys/riscv/include/thead.h
@@ -0,0 +1,35 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2024 The FreeBSD Foundation
+ *
+ * This software was developed by Mitchell Horne <mhorne@FreeBSD.org> under
+ * sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _RISCV_THEAD_H_
+#define	_RISCV_THEAD_H_
+
+void thead_setup_cache(void);
+
+#endif /* _RISCV_THEAD_H_ */
diff --git a/sys/riscv/riscv/identcpu.c b/sys/riscv/riscv/identcpu.c
index 7823830c3136..f85aed88d3b9 100644
--- a/sys/riscv/riscv/identcpu.c
+++ b/sys/riscv/riscv/identcpu.c
@@ -52,6 +52,7 @@
 #include <machine/cpufunc.h>
 #include <machine/elf.h>
 #include <machine/md_var.h>
+#include <machine/thead.h>
 
 #ifdef FDT
 #include <dev/fdt/fdt_common.h>
@@ -463,6 +464,25 @@ identify_cpu_ids(struct cpu_desc *desc)
 	}
 }
 
+static void
+handle_thead_quirks(u_int cpu, struct cpu_desc *desc)
+{
+	if (cpu != 0)
+		return;
+
+	thead_setup_cache();
+}
+
+static void
+handle_cpu_quirks(u_int cpu, struct cpu_desc *desc)
+{
+	switch (mvendorid) {
+	case MVENDORID_THEAD:
+		handle_thead_quirks(cpu, desc);
+		break;
+	}
+}
+
 void
 identify_cpu(u_int cpu)
 {
@@ -472,6 +492,7 @@ identify_cpu(u_int cpu)
 	identify_cpu_features(cpu, desc);
 
 	update_global_capabilities(cpu, desc);
+	handle_cpu_quirks(cpu, desc);
 }
 
 void
diff --git a/sys/riscv/thead/thead.c b/sys/riscv/thead/thead.c
new file mode 100644
index 000000000000..f959d32cfed8
--- /dev/null
+++ b/sys/riscv/thead/thead.c
@@ -0,0 +1,99 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2024 The FreeBSD Foundation
+ *
+ * This software was developed by Mitchell Horne <mhorne@FreeBSD.org> under
+ * sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#include <sys/param.h>
+#include <sys/systm.h>
+
+#include <machine/thead.h>
+
+/* ----------------- dcache ops --------------------- */
+
+
+/* th.dcache.civa: clean & invalidate at VA stored in t0. */
+#define	THEAD_DCACHE_CIVA	".long 0x0272800b\n"
+
+/* th.dcache.iva: invalidate at VA stored in t0. */
+#define	THEAD_DCACHE_IVA	".long 0x0262800b\n"
+
+/* th.dcache.cva: clean at VA stored in t0. */
+#define	THEAD_DCACHE_CVA	".long 0x0252800b\n"
+
+/* th.sync.s: two-way instruction barrier */
+#define	THEAD_SYNC_S		".long 0x0190000b\n"
+
+/* MHTODO: we could parse this information from the device tree. */
+#define	THEAD_DCACHE_SIZE	64
+
+static void
+thead_cpu_dcache_wbinv_range(vm_offset_t va, vm_size_t len)
+{
+	register vm_offset_t t0 __asm("t0") = rounddown(va, dcache_line_size);
+
+	for (; t0 < va + len; t0 += dcache_line_size) {
+		__asm __volatile(THEAD_DCACHE_CIVA
+		                 :: "r" (t0) : "memory");
+	}
+	__asm __volatile(THEAD_SYNC_S ::: "memory");
+}
+
+static void
+thead_cpu_dcache_inv_range(vm_offset_t va, vm_size_t len)
+{
+	register vm_offset_t t0 __asm("t0") = rounddown(va, dcache_line_size);
+
+	for (; t0 < va + len; t0 += dcache_line_size) {
+		__asm __volatile(THEAD_DCACHE_IVA
+				 :: "r" (t0) : "memory");
+	}
+	__asm __volatile(THEAD_SYNC_S ::: "memory");
+}
+
+static void
+thead_cpu_dcache_wb_range(vm_offset_t va, vm_size_t len)
+{
+	register vm_offset_t t0 __asm("t0") = rounddown(va, dcache_line_size);
+
+	for (; t0 < va + len; t0 += dcache_line_size) {
+		__asm __volatile(THEAD_DCACHE_CVA
+				 :: "r" (t0) : "memory");
+	}
+	__asm __volatile(THEAD_SYNC_S ::: "memory");
+}
+
+void
+thead_setup_cache(void)
+{
+	struct riscv_cache_ops thead_ops;
+
+	thead_ops.dcache_wbinv_range = thead_cpu_dcache_wbinv_range;
+	thead_ops.dcache_inv_range = thead_cpu_dcache_inv_range;
+	thead_ops.dcache_wb_range = thead_cpu_dcache_wb_range;
+
+	riscv_cache_install_hooks(&thead_ops, THEAD_DCACHE_SIZE);
+}

From nobody Mon Nov 25 21:08:47 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxyxC6khDz5fCbN;
	Mon, 25 Nov 2024 21:08: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxyxC4GrSz4tlt;
	Mon, 25 Nov 2024 21:08:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732568927;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=psiTXbzLXzE4IVXX2ACvwKlmWTK3kp4KuJkOiBataSo=;
	b=cbF7LMXB5bOb9zjVkHSmB0nIasAVEX10Pb0TYck41adCwlJaiAp+NS50JZOvx31lUHFYQz
	lHiH4OFqbM9mCtbXiK/svEJK+qW91H/fTbZ1ON5DfHSe6rPshKU5SGVJTHylxT3AYJfnhU
	MsWOe/BFoove/rojHJHTm7p/vn3QZa4hWdBefZVvKbW1j+nf7VFdZ6m2sAQdQyZmLF4IoK
	XhOaxMGzDGAVZ4JuOg7zRdE5xFTQUmSb6iHVdj+08ldxjQIGruRZ3qgZAgoATzd3PQWiLN
	000ZA0LiTQgCTowDOLVUUe61qp7EPqvqq8jCLNJwr9uRl8fzczf1qzz/Ast4qg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732568927;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=psiTXbzLXzE4IVXX2ACvwKlmWTK3kp4KuJkOiBataSo=;
	b=mljypU+Je3jUfkHkfdorVTXk0r47sPpW6ospjQ45Gr3uKoiQqBfL8BLpv0Iykc6gsvZbD8
	bsHTxZo4KZC2q1wRtyRDSCf+65OBJ7FzGB+rGOc/KgQmTbDTadIjRVfbYorALIPKwNJbxL
	Os4m6hFAjF4CD7bviA6/rI2Lc69rXq6MZGnCPEBf4ebs0T00nh5Cy4c4K+n0nfB1y5K5q0
	nG2Guc2ro21kUYhCVjvivWBU6kBZuvL5PGm2fqzEhnNOPxo4HPn4P07ULHzpnlL6KE6RWy
	2ENv7w3VTYshkEl+EyzDFfPjXGIHHbgd3dWSI5KL+5/BycP0Ea9R5qp0SAMvVw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732568927; a=rsa-sha256; cv=none;
	b=AJHmkOuTuDK0Pp4AoQqcUkC4xc2UGXs+xN58ksg22zDG4o7cOuDjVK5Lap5cqtl7ZTifC1
	RK33nbz/oMbQ6FHVCISSsZcR0mIJOgD2lcwCd6uCOsYrk/8b1DCF5E0Y3wT6yBYDVwfEij
	8Zuz9IXoeTaDuEpS6NBBrjrRS61xLpTNsjt/jPoYn7848oJQjesjc6bP8IkRjr/9ZEWlmu
	mdP9Kbg23TSVTY8saiOEpLTXq1iOU7Y+w35+ThjPOBO0G5MYU1WtSG6fUcBHGBXzQCGpYb
	XR+jdUShO02nXL1IVyd2cU7G/+9+BKFdgJBCKUkcMtzHOnfoiJzhD0rcX7jWww==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxyxC3sMMzwTk;
	Mon, 25 Nov 2024 21:08:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APL8lk9011447;
	Mon, 25 Nov 2024 21:08:47 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APL8lsh011444;
	Mon, 25 Nov 2024 21:08:47 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:08:47 GMT
Message-Id: <202411252108.4APL8lsh011444@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: ccbe9a9f732e - main - riscv: T-HEAD PBMT support
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: ccbe9a9f732ee2f10f252a5586309a82e6ffd1e7
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=ccbe9a9f732ee2f10f252a5586309a82e6ffd1e7

commit ccbe9a9f732ee2f10f252a5586309a82e6ffd1e7
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2024-11-21 18:12:12 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-25 21:08:04 +0000

    riscv: T-HEAD PBMT support
    
    T-HEAD CPUs provide a spec-violating implementation of page-based memory
    types, using PTE bits [63:59]. Add basic support for this "errata",
    referred to in some places as an "extension".
    
    Note that this change is not enough on its own, but a workaround is
    needed for the bootstrap (locore) page tables as well.
    
    Reviewed by:    jhb
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D45472
---
 sys/riscv/include/pte.h    | 26 ++++++++++++++++++++++++++
 sys/riscv/include/thead.h  |  2 ++
 sys/riscv/riscv/identcpu.c |  1 +
 sys/riscv/riscv/pmap.c     |  6 ++++++
 sys/riscv/thead/thead.c    |  2 ++
 5 files changed, 37 insertions(+)

diff --git a/sys/riscv/include/pte.h b/sys/riscv/include/pte.h
index 34cd2a674627..77a7817fd27e 100644
--- a/sys/riscv/include/pte.h
+++ b/sys/riscv/include/pte.h
@@ -102,6 +102,32 @@ typedef	uint64_t	pn_t;			/* page number */
 #define	PTE_MA_NC		(1ul << PTE_MA_SHIFT)
 #define	PTE_MA_IO		(2ul << PTE_MA_SHIFT)
 
+/*
+ * T-HEAD Custom Memory Attribute (MA) bits [63:59].
+ *
+ * bit 59: Trustable (relating to TEE)
+ * bit 60: Shareable (among CPUs, not configurable)
+ * bit 61: Bufferable (writes to device memory)
+ * bit 62: Cacheable
+ * bit 63: Memory Ordering (1 = strongly ordered (device), 0 = default)
+ *
+ * +------+-------+------------------------------------------------------------+
+ * | Mode | Value | Requested Memory Attributes                                |
+ * +------+-------+------------------------------------------------------------+
+ * | NC   | 00110 | Weakly-ordered, non-cacheable, bufferable, shareable,      |
+ * |      |       | non-trustable                                              |
+ * | PMA  | 01110 | Weakly-ordered, cacheable, bufferable, shareable,          |
+ * |      |       | non-trustable                                              |
+ * | IO   | 10010 | Strongly-ordered, non-cacheable, non-bufferable,           |
+ * |      |       | shareable, non-trustable                                   |
+ * +------+-------+------------------------------------------------------------+
+ */
+#define	PTE_THEAD_MA_SHIFT	59
+#define	PTE_THEAD_MA_MASK	(0x1ful << PTE_THEAD_MA_SHIFT)
+#define	PTE_THEAD_MA_NC		(0x6ul  << PTE_THEAD_MA_SHIFT)
+#define	PTE_THEAD_MA_NONE	(0xeul  << PTE_THEAD_MA_SHIFT)
+#define	PTE_THEAD_MA_IO		(0x12ul << PTE_THEAD_MA_SHIFT)
+
 /* Bits 63 - 54 are reserved for future use. */
 #define PTE_HI_MASK	0xFFC0000000000000ULL
 
diff --git a/sys/riscv/include/thead.h b/sys/riscv/include/thead.h
index e11d5c37374c..7d845f6660e8 100644
--- a/sys/riscv/include/thead.h
+++ b/sys/riscv/include/thead.h
@@ -30,6 +30,8 @@
 #ifndef _RISCV_THEAD_H_
 #define	_RISCV_THEAD_H_
 
+extern bool has_errata_thead_pbmt;
+
 void thead_setup_cache(void);
 
 #endif /* _RISCV_THEAD_H_ */
diff --git a/sys/riscv/riscv/identcpu.c b/sys/riscv/riscv/identcpu.c
index f85aed88d3b9..e02907092b56 100644
--- a/sys/riscv/riscv/identcpu.c
+++ b/sys/riscv/riscv/identcpu.c
@@ -470,6 +470,7 @@ handle_thead_quirks(u_int cpu, struct cpu_desc *desc)
 	if (cpu != 0)
 		return;
 
+	has_errata_thead_pbmt = true;
 	thead_setup_cache();
 }
 
diff --git a/sys/riscv/riscv/pmap.c b/sys/riscv/riscv/pmap.c
index e11adba0d832..c8a69f9674e9 100644
--- a/sys/riscv/riscv/pmap.c
+++ b/sys/riscv/riscv/pmap.c
@@ -156,6 +156,7 @@
 #include <machine/md_var.h>
 #include <machine/pcb.h>
 #include <machine/sbi.h>
+#include <machine/thead.h>
 
 /*
  * Boundary values for the page table page index space:
@@ -867,6 +868,11 @@ pmap_bootstrap(vm_paddr_t kernstart, vm_size_t kernlen)
 		memattr_bits[VM_MEMATTR_UNCACHEABLE] = PTE_MA_NC;
 		memattr_bits[VM_MEMATTR_DEVICE] = PTE_MA_IO;
 		memattr_mask = PTE_MA_MASK;
+	} else if (has_errata_thead_pbmt) {
+		memattr_bits[VM_MEMATTR_PMA] = PTE_THEAD_MA_NONE;
+		memattr_bits[VM_MEMATTR_UNCACHEABLE] = PTE_THEAD_MA_NC;
+		memattr_bits[VM_MEMATTR_DEVICE] = PTE_THEAD_MA_IO;
+		memattr_mask = PTE_THEAD_MA_MASK;
 	}
 
 	/* Create a new set of pagetables to run the kernel in. */
diff --git a/sys/riscv/thead/thead.c b/sys/riscv/thead/thead.c
index f959d32cfed8..c72f4f1312e0 100644
--- a/sys/riscv/thead/thead.c
+++ b/sys/riscv/thead/thead.c
@@ -32,6 +32,8 @@
 
 #include <machine/thead.h>
 
+bool has_errata_thead_pbmt = false;
+
 /* ----------------- dcache ops --------------------- */
 
 

From nobody Mon Nov 25 21:08:48 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxyxD751Fz5fCVq;
	Mon, 25 Nov 2024 21:08:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxyxD4ygCz4v6X;
	Mon, 25 Nov 2024 21:08:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732568928;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=J9UzCvBgD48oIAJMgxhp3KfWY11wFrl6zZ8mXFpPFxU=;
	b=vovIfm60422BDzaEtYjUuYTh+J91Bgs+noJOtULXLQkVgArIyBM/gELO8GZTIKN8jpX9QG
	JHOlNrZ718ouB/Qlh131taGTwlUNKQ1dm+zGZtOMEeFFa7IJQP9msFACsRxTp1GMM67WCz
	1LoytFTN1c13H7kvxQ260F74Xqetx1Xu1NyrgS7ID1YbolPdDQZM1CAuEn70CrUb2uFwo7
	5epbo2Ctb9lelSAL9KBSH26hA0hGnSThTu1bTqVnyqnv+BEeStugutQxU0LF8gzjKrBDs6
	6lrS+r3joa+wuWD81UFF0p5/c3YIACmO2skpa9qZGYJdSHpPWcLTABOmNProgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732568928;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=J9UzCvBgD48oIAJMgxhp3KfWY11wFrl6zZ8mXFpPFxU=;
	b=Nx9oZ1xQmWWv3qsXcxbcGuSGkoE31S8YnCfvhbk97KAlXH4kwELafaaIccPVMKhVIqdqb9
	RpkShYRDIpbgt5lRJGAKFnFloPvwZ4kkcrGg8O1pk9aEXmVmLE7Bnjd8EIiViYDCH/J9w8
	8HkojMKuQxye4xeQ1Qc1eZF/aD1h1U5JhzJIhI5thG9TBJOGL3eEM9vblrHJlNBZVP8/Gt
	z3f+AlMwA24cRZHsYxmzrYcYx6nOssdQMSGa+vVLWxlChPApaeeO3GzIt1nxAoqfNonWPN
	oLiHjL3L5qEZ3zxwN2UewIdPhR5PtX31/VWBJmL8jB9xipCRiwudLvmSpyB1gA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732568928; a=rsa-sha256; cv=none;
	b=Syz+0y9n+MZhw+3rcYvjgYh3JwkF0Eb4XzwBCnw7BlZOo38SG7Q/0KguIxggNNAsqs1dZN
	Sa2ktgCnfFvdVBB+rjCCDAEre7oKe4ceBaTUgY6g/xOEugqcHQ3zRQbBKdRId6lmYvmc6O
	hteI3bFlsE2Yp77X550QXnaPfXj+fumENoyAc2iHz4I89RdDXT8bfEkoocsERbh8G4o6jF
	NNBTi08w0P3OX1+wsKpaxVk+mNcLKpwtRyuQM0wPfNNv8x4lb2+StDvrL6jFWfSf+LGIZH
	Wfj2Vi5yQAX6/6gBa4GXRU+DsyKEqAKh61xW/VKLpytqQJxNchX/FPfzgcTL+w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxyxD4Z6czwbp;
	Mon, 25 Nov 2024 21:08:48 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APL8mqU011509;
	Mon, 25 Nov 2024 21:08:48 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APL8ma0011506;
	Mon, 25 Nov 2024 21:08:48 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:08:48 GMT
Message-Id: <202411252108.4APL8ma0011506@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: c7fa232e9b70 - main - locore.S: stash boot arguments
  in saved registers
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: c7fa232e9b7065e7c02eb31baf3f7cb250b8d1cc
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=c7fa232e9b7065e7c02eb31baf3f7cb250b8d1cc

commit c7fa232e9b7065e7c02eb31baf3f7cb250b8d1cc
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2024-11-21 18:12:23 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-25 21:08:04 +0000

    locore.S: stash boot arguments in saved registers
    
    Switch the boot argument registers to the unused s3 and s4. This ensures
    the values will not be clobbered by SBI or function calls; they are
    consumed late in the assembly routine.
    
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D47457
---
 sys/riscv/riscv/locore.S | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/sys/riscv/riscv/locore.S b/sys/riscv/riscv/locore.S
index f7363fd025a7..5c0ade6e66ca 100644
--- a/sys/riscv/riscv/locore.S
+++ b/sys/riscv/riscv/locore.S
@@ -83,8 +83,12 @@ _alt_start:
 	lla	t0, boot_hart
 	sw	a0, 0(t0)
 
-	/* Load zero as modulep */
-	mv	a0, zero
+	/*
+	 * Stash the DTB pointer in the callee-saved register s4, and zero s3
+	 * to indicate that we have no loader metadata.
+	 */
+	mv	s4, a1
+	mv	s3, zero
 	j	pagetables
 
 /*
@@ -104,10 +108,12 @@ _start:
 .option pop
 
 	/*
-	 * Zero a1 to indicate that we have no DTB pointer. It is already
-	 * included in the loader(8) metadata.
+	 * Stash modulep in the callee-saved register s3, and zero s4 to
+	 * indicate that we have no DTB pointer. It is already included in the
+	 * loader(8) metadata.
 	 */
-	mv	a1, zero
+	mv	s3, a0
+	mv	s4, zero
 
 	/*
 	 * Set up page tables: Our goal is to enable virtual memory, doing the
@@ -128,8 +134,8 @@ _start:
 	 * here and will conditionally enable Sv48 (or higher) later.
 	 *
 	 * We arrive here with:
-	 *  a0 - modulep or zero
-	 *  a1 - zero or dtbp
+	 *  s3 - modulep or zero
+	 *  s4 - zero or dtbp
 	 */
 pagetables:
 	/* Get the kernel's load address (kernstart) in s9 */
@@ -244,8 +250,8 @@ va:
 
 	la	t0, initstack
 	sd	t0, RISCV_BOOTPARAMS_KERN_STACK(sp)
-	sd	a1, RISCV_BOOTPARAMS_DTBP_PHYS(sp)
-	sd	a0, RISCV_BOOTPARAMS_MODULEP(sp)
+	sd	s4, RISCV_BOOTPARAMS_DTBP_PHYS(sp)
+	sd	s3, RISCV_BOOTPARAMS_MODULEP(sp)
 
 	mv	a0, sp
 	call	_C_LABEL(initriscv)	/* Off we go */

From nobody Mon Nov 25 21:08:49 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XxyxG0lxPz5fCQX;
	Mon, 25 Nov 2024 21:08:50 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XxyxF5zzcz4v9M;
	Mon, 25 Nov 2024 21:08:49 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732568929;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=daX2T8nfpeyJWPCvzE6G4xq0giE3JjX2nTFFiS2/2X0=;
	b=ULjFFf5ZLt2PIUhJtYbc6OsPYGirNmwva1U9245A8XvEFy34opEG45ybSv0m0XU5VO/GEF
	ib63x8tR4/HDXTBVa7rN0loP7VQZfW2FA398KWwosfMYPf8mFfYv1nGViQsgsxgI6/fwPi
	KkmfcOpRVSxbbj6SwG2iT/jYH9GS4+oRVH4UkxAoNpmh+BSn0sgxqH4NgrikexiXBcsSKx
	1uZ0WbckQN/xxnXf21HlbiE5G1rcV72d62PUBQmEqJ/Of+HhwZ1GL8xUZGNtDFz16Zo92U
	j8Bi2J/23bMtS3Z6Ttkr/cmqMxqfsDnlQHhyIoydVLflIMPswAT8c0UvVu6Ygg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732568929;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=daX2T8nfpeyJWPCvzE6G4xq0giE3JjX2nTFFiS2/2X0=;
	b=GKP7ik5//yqhlmXc1yk9p7QHx1/3C9phnLqzlQEPzjchR04ep9GRHDSpXcQcmZuXNy3WCD
	27tkLO2fTinJBQqqWt01/sIcEz3UhVZ7YI0VXQG18GFGJan+5spg6SBK5cA3DPYUHDDy8j
	s0uvP/8ztXPq+8ot6ltpSNuqFnnCVY8EXD6r9HkvkZuLfGq9T0BlYOy5AnJdQeprKAx32a
	VYrOoE/SMnqsX4zUDrywoyRI+L5G/AO0DaxSvDe4wT8r+qivtGuXbVoPE0ExDyQFN+AaWY
	Dkh8YXanv6LfV+yNhqDzMPmj7Vhjr9M+kBhcG6sdYDk9dyhU95AJwWQDNj7urQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732568929; a=rsa-sha256; cv=none;
	b=QrrW5y0HAPCm7+UPIYWYi3DpXnKtTV1IBM7DTQDRj+B66kQ2yCCZ1PY5ibzMDFVF5lsvXP
	CeLuloyVhE7SZD9Ly7U6KdfB2GIm00aCOw54l2Bx6BXML+qFpG/6MvqnVqNP4t1wtknZ4/
	jShIadSUBTSXXR0PRtPLwtwRktOI/AW3rxw38m2B882K0XEIJFB8frlm6JZZZ0CANBAqp8
	sZjN3ET8mLGhGue+iudCu8qW92I2lED2rmkKErsIF6W+hg41uYUtifhl+ifHtxjlQgZITX
	MtTAlg3bLL4RXJEoFeehTkX6RB9PjwdKtPBlFe4wZVp+fd+3gOu+I3U4qu/2EA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XxyxF5cCBzw7v;
	Mon, 25 Nov 2024 21:08: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 4APL8nuP011554;
	Mon, 25 Nov 2024 21:08:49 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APL8nTQ011551;
	Mon, 25 Nov 2024 21:08:49 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:08:49 GMT
Message-Id: <202411252108.4APL8nTQ011551@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: e9fa39918022 - main - riscv: T-HEAD early locore
  workaround
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: e9fa39918022746f56bf879d92a990f2836d659a
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=e9fa39918022746f56bf879d92a990f2836d659a

commit e9fa39918022746f56bf879d92a990f2836d659a
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2024-11-21 18:12:30 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-25 21:08:04 +0000

    riscv: T-HEAD early locore workaround
    
    The T-HEAD custom PTE bits are defined in such a way that the
    default/normal memory type is non-zero value. This _unthoughtful_ choice
    means that, unlike the Svpbmt and non-Svpbmt cases, this field cannot be
    left bare in our bootstrap PTEs, or the hardware will fail to proceed
    far enough in boot (cache strangeness). On the other hand, we cannot
    unconditionally apply the PTE_THEAD_MA_NONE attributes, as this is not
    compatible with spec-compliant RISC-V hardware, and will result in a
    fatal exception.
    
    Therefore, in order to handle this errata, we are forced to perform a
    check of the CPU type at the first moment possible. Do so, and fix up
    the PTEs with the correct memory attribute bits in the T-HEAD case.
    
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D47458
---
 sys/riscv/include/asm.h    |  5 +++++
 sys/riscv/include/cpu.h    |  6 +++++-
 sys/riscv/include/sbi.h    |  3 +++
 sys/riscv/riscv/identcpu.c | 12 ++++++++++++
 sys/riscv/riscv/locore.S   | 31 ++++++++++++++++++++++++++++++-
 5 files changed, 55 insertions(+), 2 deletions(-)

diff --git a/sys/riscv/include/asm.h b/sys/riscv/include/asm.h
index 4b7ab0765272..c119e299a0a5 100644
--- a/sys/riscv/include/asm.h
+++ b/sys/riscv/include/asm.h
@@ -69,4 +69,9 @@
 	li	tmp, SSTATUS_SUM;					\
 	csrc	sstatus, tmp
 
+#define	SBI_CALL(ext, func)						\
+	li	a7, ext;						\
+	li	a6, func;						\
+	ecall
+
 #endif /* _MACHINE_ASM_H_ */
diff --git a/sys/riscv/include/cpu.h b/sys/riscv/include/cpu.h
index 0c33adb2abcd..a204b21a4a74 100644
--- a/sys/riscv/include/cpu.h
+++ b/sys/riscv/include/cpu.h
@@ -35,9 +35,11 @@
 #ifndef _MACHINE_CPU_H_
 #define	_MACHINE_CPU_H_
 
+#ifndef LOCORE
 #include <machine/atomic.h>
 #include <machine/cpufunc.h>
 #include <machine/frame.h>
+#endif
 
 #define	TRAPF_PC(tfp)		((tfp)->tf_sepc)
 #define	TRAPF_USERMODE(tfp)	(((tfp)->tf_sstatus & SSTATUS_SPP) == 0)
@@ -88,6 +90,7 @@
 #define	MMU_SV57	0x4	/* 5-level paging */
 
 #ifdef _KERNEL
+#ifndef LOCORE
 
 extern char btext[];
 extern char etext[];
@@ -105,6 +108,7 @@ get_cyclecount(void)
 	return (rdcycle());
 }
 
-#endif
+#endif /* !LOCORE */
+#endif /* _KERNEL */
 
 #endif /* !_MACHINE_CPU_H_ */
diff --git a/sys/riscv/include/sbi.h b/sys/riscv/include/sbi.h
index c8093238e268..7b103b2e0dcf 100644
--- a/sys/riscv/include/sbi.h
+++ b/sys/riscv/include/sbi.h
@@ -123,6 +123,8 @@
 #define	SBI_REMOTE_SFENCE_VMA_ASID	7
 #define	SBI_SHUTDOWN			8
 
+#ifndef LOCORE
+
 #define	SBI_CALL0(e, f)				SBI_CALL5(e, f, 0, 0, 0, 0, 0)
 #define	SBI_CALL1(e, f, p1)			SBI_CALL5(e, f, p1, 0, 0, 0, 0)
 #define	SBI_CALL2(e, f, p1, p2)			SBI_CALL5(e, f, p1, p2, 0, 0, 0)
@@ -242,4 +244,5 @@ sbi_console_getchar(void)
 void sbi_print_version(void);
 void sbi_init(void);
 
+#endif /* !LOCORE */
 #endif /* !_MACHINE_SBI_H_ */
diff --git a/sys/riscv/riscv/identcpu.c b/sys/riscv/riscv/identcpu.c
index e02907092b56..54e008122eab 100644
--- a/sys/riscv/riscv/identcpu.c
+++ b/sys/riscv/riscv/identcpu.c
@@ -470,6 +470,18 @@ handle_thead_quirks(u_int cpu, struct cpu_desc *desc)
 	if (cpu != 0)
 		return;
 
+	/*
+	 * For now, it is assumed that T-HEAD CPUs have both marchid and mimpid
+	 * values of zero (although we leave this unchecked). It is true in
+	 * practice for the early generations of this hardware (C906, C910,
+	 * C920). In the future, the identity checks may need to become more
+	 * granular, but until then all known T-HEAD quirks are applied
+	 * indiscriminantly.
+	 *
+	 * Note: any changes in this function relating to has_errata_thead_pbmt
+	 * may need to be applied to get_pte_fixup_bits (in locore.S) as well.
+	 */
+
 	has_errata_thead_pbmt = true;
 	thead_setup_cache();
 }
diff --git a/sys/riscv/riscv/locore.S b/sys/riscv/riscv/locore.S
index 5c0ade6e66ca..305ed8d79f10 100644
--- a/sys/riscv/riscv/locore.S
+++ b/sys/riscv/riscv/locore.S
@@ -42,9 +42,11 @@
 #include "assym.inc"
 
 #include <machine/asm.h>
+#include <machine/cpu.h>
 #include <machine/param.h>
-#include <machine/riscvreg.h>
 #include <machine/pte.h>
+#include <machine/riscvreg.h>
+#include <machine/sbi.h>
 
 	.globl	kernbase
 	.set	kernbase, KERNBASE
@@ -141,12 +143,16 @@ pagetables:
 	/* Get the kernel's load address (kernstart) in s9 */
 	jal	get_physmem
 
+	/* Get PTE attribute bits in s8 */
+	jal	get_pte_fixup_bits
+
 	/* Construct 1GB Identity Map (1:1 PA->VA) */
 	lla	s1, bootstrap_pt_l1
 
 	srli	s2, s9, L1_SHIFT	/* kernstart >> L1_SHIFT */
 	andi	a5, s2, Ln_ADDR_MASK	/* & Ln_ADDR_MASK */
 	li	t4, (PTE_KERN)
+	or	t4, t4, s8		/* t4 |= pte bits */
 	slli	s2, s2, PTE_PPN2_S	/* (s2 << PTE_PPN2_S) */
 	or	t6, t4, s2
 
@@ -182,6 +188,7 @@ pagetables:
 	li	t2, Ln_ENTRIES		/* Build 512 entries */
 	add	t3, t4, t2
 	li	t0, (PTE_KERN | PTE_X)
+	or	t0, t0, s8		/* t0 |= pte bits */
 1:
 	slli	t2, t4, PTE_PPN1_S	/* << PTE_PPN1_S */
 	or	t5, t0, t2
@@ -273,6 +280,28 @@ get_physmem:
 	sub	s9, t2, t1	/* s9 = physmem base */
 	ret
 
+/*
+ * T-HEAD CPUs implement an alternate scheme for PTE attributes that is
+ * incompatible with the RISC-V PTE specification (see the definitions in
+ * pte.h). Worse, it defines a non-zero value for "main" memory, and this must
+ * be set in order to proceed with our new page tables.
+ *
+ * Therefore, we are forced to check the CPU identity here, which is both
+ * inconvenient and fragile.
+ *
+ * Return the required attribute bits in s8. For sane implementations this is
+ * zero.
+ */
+get_pte_fixup_bits:
+	mv	s8, zero
+	SBI_CALL(SBI_EXT_ID_BASE, SBI_BASE_GET_MVENDORID)
+	li	t0, MVENDORID_THEAD
+	xor	t0, t0, a1
+	bnez	t0, 1f		/* branch if a1 != t0 */
+	li	s8, PTE_THEAD_MA_NONE
+1:
+	ret
+
 	.align  4
 initstack:
 	.space  (PAGE_SIZE * KSTACK_PAGES)

From nobody Mon Nov 25 21:13:00 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxz245kctz5fCch;
	Mon, 25 Nov 2024 21:13: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxz243SFrz3yp6;
	Mon, 25 Nov 2024 21:13:00 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732569180;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=p8UAaZo/CW+Wd0p/brmuq6T+mO+ruXNoNPurmq5hLc8=;
	b=J91gg7X0w/DNXKkms3V6vwacVX7It02ZbAMpqIE+qSX21LPWW6b17Gxqa2p5Ztt8EER6dk
	VyKG6UqDVXOsZpVylZnM+gjLPlMop9wg9jmvW5cGg4r3qq+yKxIvs5TGZ/Sh/MsgfKbxny
	+DUniDSbIGVHGh+ODXnd8Usi2+LozI02C04UCSt0xhNX2435PW6DPNJN8FL+Gbv9KWryms
	lPn8MjwINF+V2ku5l1lcdnxwlP0i5rJ1jFx751XZjDcNkK24FDYuSJVBnRgYpoZ3nximhb
	2MfSCwu0mPAD8tGY8pwD+JMZ6D7j1qxh5Nthz0DpMP3GZE5qEKtfrn1L22COHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732569180;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=p8UAaZo/CW+Wd0p/brmuq6T+mO+ruXNoNPurmq5hLc8=;
	b=uGRHcWpHM1MqZr0WCn47H3jDyA7ewXWbljDCqk8rTIadVQmtRkas8MT9wNcw0fCROiWyqE
	9N3OU8U4Id56PJBKn2AqHaGw5k8hpfWUcsfXcVnq89LGPKfDwsSk54ZGsVqZxzI7ke1KBR
	Q+i5C70AIwy0cqURWyYmTrROG2fzMcrQZk96EymBcc4MMTPT0Vy6yR8JYWScv47taoF8DZ
	WyFNelCf8W7FvxLQLCY4bMvMvni1uGLxvzlUCqIpsqonwOL1R/K5yMMmPIBk11zoHPSJSM
	dlvRXljpBIgdmwZ+rTIw542AKGMiKcSRHw/Tgsb8oAAnEaOAUEG6xdDFsEg9hw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732569180; a=rsa-sha256; cv=none;
	b=KJKh4rF/VIau7xjaWUuyQBWsUhP30jfdzOoMHoJ3yw2+GIETpPEb6c5hJjycoQulzNKyZZ
	gZf9SOHRYnr4OmRPuI17tDPfqB0EAjZ9mjt12tY9Mu03ep7vfPdCeA0GqcLPF2DlDKw3xI
	AHxLejnA9Xneg3o8/R8Iv1dnaEiB4VtjZioBbbj5ykP/kz2n14fOBrp16gcxo+xXUD4SHT
	aHyWwlI9lahWF7DyVoEhKnjE2AYbz4z2w3P/KkWmrd3H+IPfBnMXcYFfgaC7RSMz59V1JQ
	ih0TTGh+TeTPSfSOsy1a32FEQ3bY5wC89OD3C3CK8yTUJsy7UxboQrgATRjbGQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxz2433dxzwpr;
	Mon, 25 Nov 2024 21:13: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 4APLD022028014;
	Mon, 25 Nov 2024 21:13:00 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APLD0Wa028011;
	Mon, 25 Nov 2024 21:13:00 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:13:00 GMT
Message-Id: <202411252113.4APLD0Wa028011@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: 37cef00192ef - main - livedump: Silence KASAN and
  KMSAN when livedumping
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 37cef00192ef1347d27ac64be419267a4ba604ac
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=37cef00192ef1347d27ac64be419267a4ba604ac

commit 37cef00192ef1347d27ac64be419267a4ba604ac
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-25 21:11:37 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-25 21:12:51 +0000

    livedump: Silence KASAN and KMSAN when livedumping
    
    The livedumper triggers reports from both of these sanitizers since it
    necessarily accesses uninitialized or freed memory.  Add a flag to
    silence reports from both sanitizers.
    
    Reviewed by:    mhorne, khng
    MFC after:      2 weeks
    Differential Revision:  https://reviews.freebsd.org/D47714
---
 sys/kern/kern_vnodedumper.c | 2 ++
 sys/kern/subr_asan.c        | 3 +++
 sys/kern/subr_msan.c        | 6 ++++++
 sys/sys/proc.h              | 1 +
 4 files changed, 12 insertions(+)

diff --git a/sys/kern/kern_vnodedumper.c b/sys/kern/kern_vnodedumper.c
index 5a2c255390cc..c89e209cc1a5 100644
--- a/sys/kern/kern_vnodedumper.c
+++ b/sys/kern/kern_vnodedumper.c
@@ -133,8 +133,10 @@ livedump_start_vnode(struct vnode *vp, int flags, uint8_t compression)
 	if (error != 0)
 		goto out;
 
+	curthread->td_pflags2 |= TDP2_SAN_QUIET;
 	dump_savectx();
 	error = minidumpsys(livedi, true);
+	curthread->td_pflags2 &= ~TDP2_SAN_QUIET;
 
 	EVENTHANDLER_INVOKE(livedumper_finish);
 out:
diff --git a/sys/kern/subr_asan.c b/sys/kern/subr_asan.c
index 61466ffbf2ab..9f8a7bfccd40 100644
--- a/sys/kern/subr_asan.c
+++ b/sys/kern/subr_asan.c
@@ -405,6 +405,9 @@ kasan_shadow_check(unsigned long addr, size_t size, bool write,
 
 	if (__predict_false(!kasan_enabled))
 		return;
+	if (__predict_false(curthread != NULL &&
+	    (curthread->td_pflags2 & TDP2_SAN_QUIET) != 0))
+		return;
 	if (__predict_false(size == 0))
 		return;
 	if (__predict_false(kasan_md_unsupported(addr)))
diff --git a/sys/kern/subr_msan.c b/sys/kern/subr_msan.c
index 52ec5ce13bd1..1c18a4a4f8e5 100644
--- a/sys/kern/subr_msan.c
+++ b/sys/kern/subr_msan.c
@@ -179,6 +179,9 @@ kmsan_report_hook(const void *addr, msan_orig_t *orig, size_t size, size_t off,
 
 	if (__predict_false(KERNEL_PANICKED() || kdb_active || kmsan_reporting))
 		return;
+	if (__predict_false(curthread != NULL &&
+	    (curthread->td_pflags2 & TDP2_SAN_QUIET) != 0))
+		return;
 
 	kmsan_reporting = true;
 	__compiler_membar();
@@ -232,6 +235,9 @@ kmsan_report_inline(msan_orig_t orig, unsigned long pc)
 
 	if (__predict_false(KERNEL_PANICKED() || kdb_active || kmsan_reporting))
 		return;
+	if (__predict_false(curthread != NULL &&
+	    (curthread->td_pflags2 & TDP2_SAN_QUIET) != 0))
+		return;
 
 	kmsan_reporting = true;
 	__compiler_membar();
diff --git a/sys/sys/proc.h b/sys/sys/proc.h
index 69b6c7a61da0..c5ef4f849eab 100644
--- a/sys/sys/proc.h
+++ b/sys/sys/proc.h
@@ -567,6 +567,7 @@ enum {
 #define	TDP2_SBPAGES	0x00000001 /* Owns sbusy on some pages */
 #define	TDP2_COMPAT32RB	0x00000002 /* compat32 ABI for robust lists */
 #define	TDP2_ACCT	0x00000004 /* Doing accounting */
+#define	TDP2_SAN_QUIET	0x00000008 /* Disable warnings from K(A|M)SAN */
 
 /*
  * Reasons that the current thread can not be run yet.

From nobody Mon Nov 25 21:13:01 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xxz255lXmz5fD1D;
	Mon, 25 Nov 2024 21:13: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xxz25410Dz3ypV;
	Mon, 25 Nov 2024 21:13:01 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732569181;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=4mbUl/WzNM7xjChJt/4qkXt5Nk1lKo5graM9uH873eQ=;
	b=I/uUaItw/FHhLwcM8k34duie9OKGqaj0GIBoXrS/1IkTkMWzRmztbDeuAJ0T14Kgl1/ZNe
	XOyRuvNttIWUzX99mHbQIXQkT3OKC4EYOyFTqNrW+SnNGk9f2qBqYIhW9iP04STmURKOFN
	yP/Qq8h7E25VW+v0wF3R7koHNR+IA/mEgN7mla1nR4R1pVx035WCu/QfUVvPia4ApDY9iU
	s1EUMBfrGQ4//AvH0gMUnF9rJt/Ci/CwNj162F9caGlsmXJOOjwwPEwQqntU8eInb8ssaU
	49acLlcywU3omJy9M1Flj6JpRrCUT3ENhgxeVtRKGP7GOThZQBdaneajSd0YQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732569181;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=4mbUl/WzNM7xjChJt/4qkXt5Nk1lKo5graM9uH873eQ=;
	b=RfqsCLurkx2KkzeZ73kmrzHErM91QrDvYFVODEo51e00lwpQKD8rxJ428T/akLhpoSwtph
	ir9HsvrqscT4CVAC8bbHlPkk/ZR03AZI7OlazNLwASZbpmbc7ETkafgla4Z1Mb9ao5Kn0J
	1xVHouuOoJBcG0ViU0ktMcdzBoXdlo6Ss9az5xo71g4iVAJwSyHHA0GvgJB+fWtX9qkB8d
	Uh0WhW+j6B3bnPb5HCEBQOWZU8EciRb525HD4bLT8O/CchtIQhx3ALZVm+ek7+di6a5HmO
	xmKQoLb5oYMz8NlOz0uL/ZUzRBqCv2r6z9VGK1fnV7J0SW9eBFBW90QUT60mcQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732569181; a=rsa-sha256; cv=none;
	b=Esaevw4QOjye2YXQMF/WFtCQ6Vx+1Jf4/DisucxjjQ2FgKoQUntPkmOvjYDc321pUoVKBb
	UusMnhGqIpQUheXCpgjx6SHsSVAkmeD4WKDjz3bVhXLmv6na7jpSyDcn6erkpd6NRc1KHC
	rYT1lblEl+6ZFkPeCpPZ5ht6lQNp/LHgGruSSzqz69cBibhl3hPNkvVL4kUm+OBsYQP0Pv
	anckM4IfmYno9sUg2L01FFuiYAiWh6BfZxWbAyhMMKod0KaIippGBYOSEAqT/Du0VnQlAr
	d2D1zjt3ElE74dgDKTjQjlblxDHzwnuo+GOtvhPjJJJAh1TFNLD1mRcZN2IN8w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xxz253cqSzwrn;
	Mon, 25 Nov 2024 21:13: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 4APLD1MV028065;
	Mon, 25 Nov 2024 21:13:01 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APLD1LN028062;
	Mon, 25 Nov 2024 21:13:01 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 21:13:01 GMT
Message-Id: <202411252113.4APLD1LN028062@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: 73465bb47bb3 - main - savecore: Add a livedump
  regression test
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 73465bb47bb37e6efdc61827e260a070dda0a0dc
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=73465bb47bb37e6efdc61827e260a070dda0a0dc

commit 73465bb47bb37e6efdc61827e260a070dda0a0dc
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-25 21:12:12 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-25 21:12:51 +0000

    savecore: Add a livedump regression test
    
    MFC after:      2 weeks
    Differential Revision:  https://reviews.freebsd.org/D47715
---
 etc/mtree/BSD.tests.dist             |  2 ++
 sbin/savecore/Makefile               |  3 ++
 sbin/savecore/tests/Makefile         |  3 ++
 sbin/savecore/tests/livedump_test.sh | 54 ++++++++++++++++++++++++++++++++++++
 4 files changed, 62 insertions(+)

diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist
index beae521789c0..e9ba0f689678 100644
--- a/etc/mtree/BSD.tests.dist
+++ b/etc/mtree/BSD.tests.dist
@@ -505,6 +505,8 @@
         ..
         route
         ..
+        savecore
+        ..
         sysctl
         ..
     ..
diff --git a/sbin/savecore/Makefile b/sbin/savecore/Makefile
index 8d22ab21b6da..7e194a62deb1 100644
--- a/sbin/savecore/Makefile
+++ b/sbin/savecore/Makefile
@@ -18,4 +18,7 @@ CFLAGS+=	-DWITH_CASPER
 LIBADD+=	casper cap_fileargs cap_syslog
 .endif
 
+HAS_TESTS=
+SUBDIR.${MK_TESTS}+= tests
+
 .include <bsd.prog.mk>
diff --git a/sbin/savecore/tests/Makefile b/sbin/savecore/tests/Makefile
new file mode 100644
index 000000000000..b58e79f518ef
--- /dev/null
+++ b/sbin/savecore/tests/Makefile
@@ -0,0 +1,3 @@
+ATF_TESTS_SH=	livedump_test
+
+.include <bsd.test.mk>
diff --git a/sbin/savecore/tests/livedump_test.sh b/sbin/savecore/tests/livedump_test.sh
new file mode 100644
index 000000000000..42c726bfad4e
--- /dev/null
+++ b/sbin/savecore/tests/livedump_test.sh
@@ -0,0 +1,54 @@
+#
+# SPDX-License-Identifier: BSD-2-Clause
+#
+# Copyright (c) 2024 Mark Johnston <markj@FreeBSD.org>
+#
+
+atf_test_case livedump_kldstat
+livedump_kldstat_head()
+{
+	atf_set "descr" "Test livedump integrity"
+	atf_set "require.progs" kgdb
+	atf_set "require.user" root
+}
+livedump_kldstat_body()
+{
+	atf_check savecore -L .
+
+	kernel=$(sysctl -n kern.bootfile)
+
+	if ! [ -f /usr/lib/debug/${kernel}.debug ]; then
+		atf_skip "No debug symbols for the running kernel"
+	fi
+
+	# Implement kldstat using gdb script.
+	cat >./kldstat.gdb <<'__EOF__'
+printf "Id Refs Address                Size Name\n"
+set $_lf = linker_files.tqh_first
+while ($_lf)
+    printf "%2d %4d %p %8x %s\n", $_lf->id, $_lf->refs, $_lf->address, $_lf->size, $_lf->filename
+    set $_lf = $_lf->link.tqe_next
+end
+__EOF__
+
+	# Ignore stderr since kgdb prints some warnings about inaccessible
+	# source files.
+	#
+	# Use a script to source the main gdb script, otherwise kgdb prints
+	# a bunch of line noise that is annoying to filter out.
+	echo "source ./kldstat.gdb" > ./script.gdb
+	atf_check -o save:out -e ignore \
+	    kgdb -q ${kernel} ./livecore.0 < ./script.gdb
+
+	# Get rid of gunk printed by kgdb.
+	sed -i '' -n -e 's/^(kgdb) //' -e '/^Id Refs /,$p' out
+
+	# The output of kgdb should match the output of kldstat.
+	atf_check -o save:kldstat kldstat
+	atf_check diff kldstat out
+}
+
+atf_init_test_cases()
+{
+	atf_add_test_case livedump_kldstat
+}

From nobody Mon Nov 25 22:01:43 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy06H2hxYz5fGvs;
	Mon, 25 Nov 2024 22:01: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy06H2BYNz4Ch7;
	Mon, 25 Nov 2024 22:01:43 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732572103;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=s8693WWZ4GnEQmGzuAE9n6Nd0kLVliKwsMn5q0gzc7s=;
	b=bzAxtufu/i8LqM+gCksIWQ7Rd5OSDqO8gzqQVG54Eyluo1zV4HBr0zRCn3VVszUorXhRa6
	mtR+0zymNiQwLR9NOgjIt/7ChOkEgdlsexExkXjIoUqcF9YV/8d5Fr/vxO14c4GsES4DgS
	2ZGBxhZ5Nj7JEcMrPH1FG0aizktyxuH3QXSNyqtTwee++m+3Mudmy16mBMA4mBdXfgBE14
	nM11ZYrw4nSotvdRxcCqluZc1z8OFKOX4LYGE+L14hR0k6oo3D0REWQ+CTyUqoW69OZi6+
	Uu8gdOtP6NO/zVI+FtrTOhsJ49zlnesVXtFC1aTIOK3h601bDjMK3HvjEVwpzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732572103;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=s8693WWZ4GnEQmGzuAE9n6Nd0kLVliKwsMn5q0gzc7s=;
	b=fMDaCvroDmgx8Jvxw/iOiHAoXsKasBY9v5gvhaXrZdaEdCkXwo7jQ4KqkAAvmq5dHRXjLj
	2DapFxvIkmdRF1vH+LfgM1IW3rqGt3hO9rTtw3mX8xDL+6J2ValLsSbUAR0/nYUxI4OWMR
	dHFVmUQZmLpCA4Pz8Bh9mT8FCVh2etAO+KglboMolm1ETOPx9GP6CbzDXT4OjzUIWBYHsM
	kxTxkIZWuTf2xjjK2JN+aSwRmU08DfstkSSJOK61cQAKA9CFVPaCmBvcbewaYC6TlGlLL8
	SzQqV9MtNcH0MdQ8M/zmKxL/9Z2MUM8SI/0nRdtSZvCE8HNKrXA81/g8fm5K/Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732572103; a=rsa-sha256; cv=none;
	b=Syzk+rRRLmMHRLPR266F/CxwW0KXoEjp+6RwEuB9QEMuGD58PqcHdParVfb5Q4xMSk4X9L
	RGLZBWg51phYvY1in6Ds/FK9Q/40FPyYixz8jk0oYUg7ow8bECp6OYiHiIS9W+TsPCf3dA
	s2W2VBqm5bpKR2gU3SbR9qsWG9VMVBG6A61jfq1Pq8xIuvuKzhyg6PujF9u9QOkg7C9vca
	0F8nHS+WwgebM6n/yb8o/pMNST3zX5noCPUb3rMNEWTYoamfUKKNA4t2I3NdQLEiH0kofr
	OiKNP/cFn3iGV7+jN6/DOaTpU7Cf8j6bEm5wrdy//qNqgV4difDYDkfV0pJSvQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xy06H1pBVzxc2;
	Mon, 25 Nov 2024 22:01: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 4APM1hFZ022408;
	Mon, 25 Nov 2024 22:01:43 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APM1hNw022405;
	Mon, 25 Nov 2024 22:01:43 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 22:01:43 GMT
Message-Id: <202411252201.4APM1hNw022405@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Robert Clausecker <fuz@FreeBSD.org>
Subject: git: 3a212cc66ad1 - main - sbin/{ffsinfo,mount,newfs}:
  reference ffs(4) in man pages
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: fuz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 3a212cc66ad1b5d6c1dc97eb07143e919a123491
Auto-Submitted: auto-generated

The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/src/commit/?id=3a212cc66ad1b5d6c1dc97eb07143e919a123491

commit 3a212cc66ad1b5d6c1dc97eb07143e919a123491
Author:     David Gilbert <dave@daveg.ca>
AuthorDate: 2024-11-25 21:57:20 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2024-11-25 21:57:20 +0000

    sbin/{ffsinfo,mount,newfs}: reference ffs(4) in man pages
    
    PR:             282867
    MFC:            stable/14
    Approved by:    mhorne (via IRC)
---
 sbin/ffsinfo/ffsinfo.8 | 3 ++-
 sbin/mount/mount.8     | 3 ++-
 sbin/newfs/newfs.8     | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/sbin/ffsinfo/ffsinfo.8 b/sbin/ffsinfo/ffsinfo.8
index 4d76acd0ba0a..6daa9a79c9e9 100644
--- a/sbin/ffsinfo/ffsinfo.8
+++ b/sbin/ffsinfo/ffsinfo.8
@@ -36,7 +36,7 @@
 .\"
 .\" $TSHeader: src/sbin/ffsinfo/ffsinfo.8,v 1.3 2000/12/12 19:30:55 tomsoft Exp $
 .\"
-.Dd September 8, 2000
+.Dd November 19, 2024
 .Dt FFSINFO 8
 .Os
 .Sh NAME
@@ -120,6 +120,7 @@ to
 .Pa /var/tmp/ffsinfo
 with all available information.
 .Sh SEE ALSO
+.Xr ffs 4 ,
 .Xr dumpfs 8 ,
 .Xr fsck 8 ,
 .Xr gpart 8 ,
diff --git a/sbin/mount/mount.8 b/sbin/mount/mount.8
index ac04ba409ec6..7bb4eefe03ff 100644
--- a/sbin/mount/mount.8
+++ b/sbin/mount/mount.8
@@ -25,7 +25,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd January 24, 2024
+.Dd November 19, 2024
 .Dt MOUNT 8
 .Os
 .Sh NAME
@@ -568,6 +568,7 @@ support for a particular file system might be provided either on a static
 .Xr cd9660 4 ,
 .Xr devfs 4 ,
 .Xr ext2fs 4 ,
+.Xr ffs 4 ,
 .Xr mac 4 ,
 .Xr procfs 4 ,
 .Xr tarfs 4 ,
diff --git a/sbin/newfs/newfs.8 b/sbin/newfs/newfs.8
index 5be4b5d03f74..daf568fe6a33 100644
--- a/sbin/newfs/newfs.8
+++ b/sbin/newfs/newfs.8
@@ -25,7 +25,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd May 18, 2024
+.Dd November 19, 2024
 .Dt NEWFS 8
 .Os
 .Sh NAME
@@ -350,6 +350,7 @@ than the historical defaults
 This large fragment size may lead to much wasted space
 on file systems that contain many small files.
 .Sh SEE ALSO
+.Xr ffs 4 ,
 .Xr geom 4 ,
 .Xr disktab 5 ,
 .Xr fs 5 ,

From nobody Mon Nov 25 22:22:22 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy0Z84s8Yz5fJ1X;
	Mon, 25 Nov 2024 22:22:24 +0000 (UTC)
	(envelope-from se@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy0Z84PHNz4Jkt;
	Mon, 25 Nov 2024 22:22:24 +0000 (UTC)
	(envelope-from se@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732573344;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=IFQ0BxzEug7tdKG0NOXlZTPMNeVvVVzyHhkhp2T3q88=;
	b=lvSJYg4saLYJnmpp3+6y6RjDUPazH3vG+9Emc5WFvtqz2pVFAu0PpXDlTPgqlbDEcJvSfg
	64lYc29OxFxUOpMtjB+B33rj9POU/ozorbeH6Ji8NHWWK8bvkA5CXbreBaMXXg7DI+Ktbx
	kBvhkf2RS3gF1ZPjdeeJWBLDovxXuhnVkJdWS3TR8fJn6wwSbhcbfy+SSqsbOsWdnWQ9tI
	hiZGIpkC3ENKsx4eKQxgaSSpHItp22ekse9EUbgDY/0qGWps9aHGVZZg9YxvWxBrz01eYQ
	vp4+mgUN2wDa3XwvFevr132YNULSw0MopN6anmfCvxvMoWGxF2g5Ahf5ySLmtQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732573344;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=IFQ0BxzEug7tdKG0NOXlZTPMNeVvVVzyHhkhp2T3q88=;
	b=LFbX0Scvt0CXSuQd4vhtDPFXKppBjAsdVQdxLihv1SlGqpToDn5awZvjmpHVg0eGrRICpn
	84HCSNVEo+3x85rNlT3cARvjf0+ro8qewYLjWXMeX4yAu+nGJUe7GGCvJBm1WO6mtuOY0m
	v2Tfvp8dRKXd64QEBTOLz81eLU3cwkEpkNCPypK3OSBa/Qrj+ZwWOGtn2qiIEcluTAoceP
	e+i0HPQwip/7Uxgp/kt5mC0NRDgyz0+gbZEniWw8pxZP+dwiErxE7lM5QqzL5dDjkMoN0x
	4dCgJqsC1X5g4Kf5wIFLlfZAhyhjH7Pd+RF8jqQbG5C+cGUmw0bNqNWg7gd+vg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732573344; a=rsa-sha256; cv=none;
	b=QoQq5maXAvNjCAHHW91myX/5pV4AOooupbZM8s44HU+1XVGcfUP4ig71In1ioH7NyuLGO0
	bSblyF0FqVvBzAk85p9ykgrR2X34ryx9DUeyZxuC7ld/iYG9dDGsp+66f5aVzisONy20k4
	YNSwM9IBFhLDD8U4f5ObJhYOY8deC6nKVvky4MbNixRgUctvIDoV+OA88Ai00C53IoNU+Y
	H/vb+1SSBFwUVaMovHlE3JDwWkpLYqLNMw9oxbD3bjvCqn6aWYTChJp+eqCT35Wj3SPXcz
	YLDGQVvSYPePIPCzo/n+78s337o9roDe1n2RobJ91Yv1+xHm6Bfd4T2E6gAWaA==
Received: from [192.168.119.155] (p5dc83ef4.dip0.t-ipconnect.de [93.200.62.244])
	(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: se/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xy0Z76hvHzNrG;
	Mon, 25 Nov 2024 22:22:23 +0000 (UTC)
	(envelope-from se@FreeBSD.org)
Message-ID: <4808a71f-a12b-4e70-ad51-a7979f5dff08@FreeBSD.org>
Date: Mon, 25 Nov 2024 23:22:22 +0100
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: =?UTF-8?Q?Stefan_E=C3=9Fer?= <se@FreeBSD.org>
Subject: Re: git: 8ea6c1154094 - main - usr.bin/bc: remove OpenBSD derived bc
 and dc commands
To: =?UTF-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@FreeBSD.org>
Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
 dev-commits-src-main@FreeBSD.org
References: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
 <86r06zcnb7.fsf@ltc.des.dev>
Content-Language: de-DE, en-US
Autocrypt: addr=se@FreeBSD.org; keydata=
 xsBNBFVxiRIBCADOLNOZBsqlplHUQ3tG782FNtVT33rQli9EjNt2fhFERHIo4NxHlWBpHLnU
 b0s4L/eItx7au0i7Gegv01A9LUMwOnAc9EFAm4EW3Wmoa6MYrcP7xDClohg/Y69f7SNpEs3x
 YATBy+L6NzWZbJjZXD4vqPgZSDuMcLU7BEdJf0f+6h1BJPnGuwHpsSdnnMrZeIM8xQ8PPUVQ
 L0GZkVojHgNUngJH6e21qDrud0BkdiBcij0M3TCP4GQrJ/YMdurfc8mhueLpwGR2U1W8TYB7
 4UY+NLw0McThOCLCxXflIeF/Y7jSB0zxzvb/H3LWkodUTkV57yX9IbUAGA5RKRg9zsUtABEB
 AAHNJ1N0ZWZhbiBFw59lciAoRnJlZUJTRCkgPHNlQGZyZWVic2Qub3JnPsLAlAQTAQoAPgIb
 AwULCQgHAwUVCgkICwUWAwIBAAIeAQIXgBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJmvl9B
 BQkTLNNOAAoJEEfrte9a/fVEV1oH/jt+SjRqTHci6d1LiFDfbY0E2rfobZw5BhcQuCqxahS7
 pcE1oLpUaoqWYPHslxhGTl7QSD2twMWcHLonZ1lgTJluMZqgTX9uvqEYDUtiH6G+IF7Qacat
 eUsAvwdycItPOr3p7WBt8U54GbnQdxpSUQ0OpD4twy7KAt/MPNLofVQSEea5DNQOH2dXILrf
 iRsNfFPsfTASOUXOTRyTYwm6Ys76LIdL9GA2iR5qw8G43FB02fiX76WQSjg+yKN9iP9racGg
 Pc8qkSPwHJr0s3OwJC4ndbCuSiaXddDbgOvdrqfSO0XCjo3ylyEBhmMVMpwkj8pLCKVGS73n
 Ncs6OujZXAzOwE0EVXGJEgEIALEj9qCXMZVucjpcd3QxM/TlUr98m5viEd1z4tCnPUyRWcIC
 EVtj2h5xMH+2iB0q1+KWhq+NsWtvScmEmfHnsr7dJ1K677OdpDhKVaJk61eeRulFY1R4yb6C
 1MMxK+WgYB+vvpG0UeyR0M4uBewcPvRsq4yGUHFQKtLAbMdoPTSryJA+ElnmK1vdY+rPcHgi
 OIMBZM7ahsPXC0C9K4e5SP9clGyIoMpbfHXdx9q+Rp3zVtlbhyk3BS/xccu/+9pk9ICXL6GR
 js2sNnJ0wxdU1DsAlC59a5MnSruwiZFwRnkQhr3x6wk97Lg7sLS9jjTnCN7LGlVmSmpOEMy6
 uq1AWfUAEQEAAcLAhgQYAQoAJgIbDBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJmvl9BBQkT
 LNNOABQJEEfrte9a/fVECRBH67XvWv31RCrvCACY7fjahcGj/57peFu0oIb4X9X78H6mgrAZ
 D5HCCCb2vWdNtSDTYQoYnKP2Fz9RUG8ETT9a6CtymYqQc72/dzjJmakRTlbYhliKJDZXGAYU
 g34VirGXCjYgWH7l+0CupOtt55R/ASnrnXX9R/7PLO+akObn9Cz/bNBnIbYnTjLNs7GMMQL4
 uNSyqIByQ3LVsVDaCq3408fYKC0dtlv2VNQQzcXXwOgecwpS2UeqMflrSA7UfPh15WgkpnrN
 AnKCtS66eU1w2kTCsVEjGQEgLI5pP1HMNRHjnHncAFSpOfs1EZn0MfhiyB+4T+lrccGI8EZu
 ay791Tx4QdDKkdZGaV9A
In-Reply-To: <86r06zcnb7.fsf@ltc.des.dev>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Am 25.11.24 um 17:04 schrieb Dag-Erling Smørgrav:
> Stefan Eßer <se@FreeBSD.org> writes:
>> The branch main has been updated by se:
>>
>> URL: https://cgit.FreeBSD.org/src/commit/?id=8ea6c115409450ff58a8c6b5e818319d181c6bff
>>
>> commit 8ea6c115409450ff58a8c6b5e818319d181c6bff
>> Author:     Stefan Eßer <se@FreeBSD.org>
>> AuthorDate: 2024-11-24 21:38:23 +0000
>> Commit:     Stefan Eßer <se@FreeBSD.org>
>> CommitDate: 2024-11-24 21:38:23 +0000
>>
>>      usr.bin/bc: remove OpenBSD derived bc and dc commands
>>      
>>      In 2020, an improved implementation of the bc and dc commands
>>      developed by Gavin D. Howard has been imported into FreeBSD.
>>      It has replaced the OpenBSD-derived versions of these commands
>>      in all currently supported FreeBSD releases.
>>      
>>      The OpenBSD versions could still be built using the WITHOUT_GH_BC
>>      option. There have been no reports of problems or unexpected
>>      deviations from the OpenBSD version for some time, therefore
>>      keeping the OpenBSD version is no longer required in FreeBSD.
>>      
>>      This commit removes the option to build the OpenBSD version and
>>      corresponding source files from -CURRENT. No MFC is planned, all
>>      currently released FreeBSD versions should retain the build option.
>>      
>>      The WITHOUT_GH_BC option is no longer accepted and will cause
>>      make buildworld to fail.
>>      
>>      Reviewed by:    des, emaste
>>      Approved by:    des
>>      Relnotes:       yes
>>      Differential Revision:  https://reviews.freebsd.org/D46876
> 
> I appreciate your efforts but this is incomplete, as was pointed out in
> review.

I was not aware that the review was incomplete (but have learned about the
missing removal of tests/usr.bin/dc, meanwhile). The diffs where not all
with full context, but this did only affect files like ObsoleteFiles.inc,
which had to be regenerated with an updated date for the commit of these
changes, anyway.

Are there any outstanding issues you know about?

Regards, STefan

From nobody Mon Nov 25 22:52:47 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy1FC32gDz5fLPV;
	Mon, 25 Nov 2024 22:52: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy1FC2WcVz4QSj;
	Mon, 25 Nov 2024 22:52:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732575167;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=xCw1bDW9YquRXVbNhYh8u6VAf7JpXZzDmZCZLfPsZao=;
	b=KAHIAMYRUPbkpMfig/XcYBAQ0veSSKmsxosYRKYAumMJeRC6Bcry0uyoo1IboCfAH3iZkb
	iCVc/duRppj+jXw5sKtyQ7z2eAF0clPsbNJqvs0YrNUAwAaVFnOv0b8p048oCvI7SfIU6d
	EktYBdgXoHCQVUL2EDy25RMbECdYT5rRGLxt3XgIdE5OjbxG0NbZ4jD5g7vKMbC6Hw7qCL
	h9ZH7uFPQnrFBsfxHJq9+SFWdIt5fJXb0RCGAH5pIOtVo3jGmwHB/18q8Ci/jXM1zi6Ydo
	Z+Xz5I1bJ5C13ypPnVfnaMY/uRfPznfcZx5p7t8WmN+DK/jDKHIziZDyMoxqTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732575167;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=xCw1bDW9YquRXVbNhYh8u6VAf7JpXZzDmZCZLfPsZao=;
	b=bjLoCu4O0IJJCD3HNlcRnJA9dDNOsoTrdjVhYru7N6ZhYwAs6DnpFHRjwd6u1Ug1S2WnIk
	cl3FPxL7rFywN0XL9LY1qdloSdLPYjTNn3b4a/INwgxLKCSQoY5L/hQmybEvOxniKjVuHG
	cDa+4gfHuuRt0ic7j/gLgiR+cewyb0yAMRpyEyLGPRKvZ+3JUUpk/C1ZyNCPYCgtxkPiMd
	n+JTMl08vMKTw1Yj8tI0H8e+8zu8PyaaOdvx8cwIKWb7gCXTi2JxIDs/docEi0L8NgcD5W
	jGJ1BykgqDoq4uhZq1vrO+uWZY4rgi/RKJcRBTXUxbAH+/r3KLoLMIs99pQqjQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732575167; a=rsa-sha256; cv=none;
	b=UonbjSylAp3RVQ4SMZfxZlCguHHJZ9fFxDBnEkMzd9dSDWQwwr9pIZO6eg5YE9jHvgzdLU
	sX6Q05RQ6kuiWCCua5NNe/hgi1euSyRoiKpywhAL/PtdOZ40KosIAOSYZ9xL75bFX4vy3j
	EC7aMFRrRAc7fZbwNq8w9+IKV/kb8/GVVKXMHuMvdGfAkwP/7goD6NMQQcGWJCzCQ2Ktb1
	j/ImNmhKT1YumXGZbf2Z9AUPV0ruzUH+PIJILLSmw0+ha9vyZUyLy5N/Qze06WjyqTmmrC
	q0Y+6nzphQpNU1NaHvHyuOmC1oWKX1D6QPtx9zknTM3UtW7OPKtaFwk95PYvXA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xy1FC272Bz10Kv;
	Mon, 25 Nov 2024 22:52:47 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4APMqlVV014687;
	Mon, 25 Nov 2024 22:52:47 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4APMqlqJ014684;
	Mon, 25 Nov 2024 22:52:47 GMT
	(envelope-from git)
Date: Mon, 25 Nov 2024 22:52:47 GMT
Message-Id: <202411252252.4APMqlqJ014684@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Cy Schubert <cy@FreeBSD.org>
Subject: git: 501c4801edfc - main - truss: Fix grammar in error
  messages
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: cy
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 501c4801edfcc2943eba8e4f8922436dd0f07dc8
Auto-Submitted: auto-generated

The branch main has been updated by cy:

URL: https://cgit.FreeBSD.org/src/commit/?id=501c4801edfcc2943eba8e4f8922436dd0f07dc8

commit 501c4801edfcc2943eba8e4f8922436dd0f07dc8
Author:     Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2024-11-25 22:51:36 +0000
Commit:     Cy Schubert <cy@FreeBSD.org>
CommitDate: 2024-11-25 22:52:35 +0000

    truss: Fix grammar in error messages
    
    MFC after:      3 days
---
 usr.bin/truss/setup.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/usr.bin/truss/setup.c b/usr.bin/truss/setup.c
index 52f02b6f8700..d5fa1ed50ce1 100644
--- a/usr.bin/truss/setup.c
+++ b/usr.bin/truss/setup.c
@@ -160,7 +160,7 @@ setup_and_wait(struct trussinfo *info, char *command[])
 
 	/* Only in the parent here */
 	if (waitpid(pid, NULL, 0) < 0)
-		err(1, "unexpect stop in waitpid");
+		err(1, "unexpected stop in waitpid");
 
 	new_proc(info, pid, 0);
 }
@@ -179,10 +179,10 @@ start_tracing(struct trussinfo *info, pid_t pid)
 		usleep(200);
 	} while (ret && retry-- > 0);
 	if (ret)
-		err(1, "can not attach to target process");
+		err(1, "Cannot attach to target process");
 
 	if (waitpid(pid, NULL, 0) < 0)
-		err(1, "Unexpect stop in waitpid");
+		err(1, "Unexpected stop in waitpid");
 
 	new_proc(info, pid, 0);
 }

From nobody Tue Nov 26 03:44:13 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy7jV1DCwz5dlfg;
	Tue, 26 Nov 2024 03:44: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy7jV0jlDz49QW;
	Tue, 26 Nov 2024 03:44:14 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732592654;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=wB7sXPbU7VlR+/ASdfqAYh9raeb4NlBdbAgA3GP2MK0=;
	b=lyNSif9bGzBaT7WQRaKaPVGBnlggEEvthryNZZL3NHAobiMN63+kPcnBoc0Iu6aILdsuqr
	3JrhrIrG5f1s7L7TB7OLOnVOuaoSbQkzm3kQC1gz8k92ky91AWeHPHyCGddx+aBUDojgH7
	d5Yu+bDAv581JZ6CQJBz9X3G6KfHTduxSeioft2ctss1tBTWWk1LZuyTHgoz6o555ifhqG
	zjp9TES+ZQjzEwyWh8FMCUFQhEPU8OmZjnZmLj0X3TyVIIGJ1GMLC59y585LhCXfwlZDA6
	DgF59Eq6Nj6Et1dnNW4C8cBwFHnKqI8sWfgYjVXg6RGSzrlX2AU/ah47oUeyXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732592654;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=wB7sXPbU7VlR+/ASdfqAYh9raeb4NlBdbAgA3GP2MK0=;
	b=oCvA/MYAMqVR9RE5nvP9SECUNYEVN3zVyitHZpo0/teuv/ZguV4KNMXIs9t70spJ495/2s
	WfZ9O2SldUzKAv8MDs3KXpKEshxMHVtzBfbp2QS0efG8tGDiSNjSX4gJKh+WJqenpUgvqo
	aS2ACSkdF1vGo80uNqbc8KFnox/lABvJbzBo2QLiZFuHKHbRnOyv8UVsQKFa3DxDJDMF9G
	pfrii2ykgIdaWwcz4sw/aL3ASSm9VLoTqpZRet5Fc0iO8olxVS2CSPrmaXJjNqz2wIy8Bx
	HLC4Yl8sgoLXmUuLejueKRNqxegOOx3oNJ5oYRbIVA4RswucLT2w8xNG8U7A4Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732592654; a=rsa-sha256; cv=none;
	b=g0vkarGX5MT3GwtdEpHdXslS6/lHzOXtaudh7k9hALtHsyuT9QzKxeSsTlQ/hEYE9vkSSy
	FppLSmUwPsj4e9Jejlz7Dy2cA9aJvh8vB6BYL0fYvFvcrGrTLqd+BjSVheV1vKYuFdLebt
	9p9EAZTvn5uSgGeikoktgLDXBQpBVaLURNPHgNlaRgfsJJ6bP4cKy+CCy15PP7hHA3eEwU
	NSeb4lRGF20j0erbWxqroJYyw72XXlQjlO1OugH6dseW+MgP8eVDghAjIGMoZ/45aafuzh
	33os4Ke1EkFDvpAhysWuLtE3WXofJfVz9YNjAsdkqy3li4IhCUBdT363ZGXlrw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xy7jV0Jqkz17gN;
	Tue, 26 Nov 2024 03:44: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 4AQ3iDEK054410;
	Tue, 26 Nov 2024 03:44:13 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQ3iDrd054407;
	Tue, 26 Nov 2024 03:44:13 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 03:44:13 GMT
Message-Id: <202411260344.4AQ3iDrd054407@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Jason A. Harmening" <jah@FreeBSD.org>
Subject: git: 5035db222e8f - main - amdiommu: Fix device table
  segment base register offsets
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jah
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5035db222e8fa77d0b40fcd5a92c073dd1c590c2
Auto-Submitted: auto-generated

The branch main has been updated by jah:

URL: https://cgit.FreeBSD.org/src/commit/?id=5035db222e8fa77d0b40fcd5a92c073dd1c590c2

commit 5035db222e8fa77d0b40fcd5a92c073dd1c590c2
Author:     Jason A. Harmening <jah@FreeBSD.org>
AuthorDate: 2024-11-25 23:24:41 +0000
Commit:     Jason A. Harmening <jah@FreeBSD.org>
CommitDate: 2024-11-26 03:40:45 +0000

    amdiommu: Fix device table segment base register offsets
    
    Segment base registers are at 8-byte intervals, while the register
    write helper takes a byte-aligned offset.  This fixes
    DEV_TAB_HARDWARE_ERROR events and associated peripheral I/O failures
    on an Epyc-based system with 8-segment device tables.
    
    Reviewed by:            kib
    Differential Revision:  https://reviews.freebsd.org/D47752
---
 sys/x86/iommu/amd_drv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/x86/iommu/amd_drv.c b/sys/x86/iommu/amd_drv.c
index d35c6c8dddc8..5820594691f7 100644
--- a/sys/x86/iommu/amd_drv.c
+++ b/sys/x86/iommu/amd_drv.c
@@ -277,7 +277,7 @@ amdiommu_create_dev_tbl(struct amdiommu_unit *sc)
 			pmap_qenter(seg_vaddr, &m, 1);
 		}
 		reg = i == 0 ? AMDIOMMU_DEVTAB_BASE : AMDIOMMU_DEVTAB_S1_BASE +
-		    i - 1;
+		    ((i - 1) << 3);
 		amdiommu_write8(sc, reg, rval);		
 	}
 

From nobody Tue Nov 26 04:05:18 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy89p489dz5dmTW;
	Tue, 26 Nov 2024 04:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy89p3MV8z4DBY;
	Tue, 26 Nov 2024 04:05:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732593918;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Jx6FmPqlFRUAXWjR6HMjHaSKXAhfhnNge3w29+MaYVc=;
	b=jMpIgR4k78NxPG61EeqFyjXQm44nFNmIniOt+jvOVE02Kq2DYOWBPJbEAVRU3MDnlNHWwf
	+uuKMk1rcMEjHEN56G+HNvxLNy7JDmq8PZpGvgV07f+mRu6BGiiHfBB+q3Q9E4M+dGBB1V
	QyaLl5ocYrFgjTj3zwap6h5bKfBlWvaTEMT8rfuz5BC4Z7kTTYdnhQF7ixAA2w55GdAgcY
	IjVcaV0cpoFpDh/Jq5+2d1xA0iEaGhMrCe6MISbBz4ek0qyoCcQ7IRH7KBjNmqzALdFTRs
	yr1D/lbqiLIgC1YeS1BPwaSbyfLZgkBioWgGBRqe2g7jcdk55pLuaOTXssBxHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732593918;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Jx6FmPqlFRUAXWjR6HMjHaSKXAhfhnNge3w29+MaYVc=;
	b=Dj72a+ke50q/Y03E1H0o+9hJxNofUHXDoPy9I3ZtuGYhov7zDcDFf2158OwCbysei3W2va
	hd1jA5QzMzhYmNDIJ+gv8EKO4QZoOSUW8BDczZuPNKtCA4HPAY/Day4SL2ao4BjpZaAThc
	b7a5RbY4djiVVVrOIKgn0LniQv9vvCnGTpQFjxXwdkJUzMsxX1p/OziASvOp+S5AqVQLid
	A2MrPR2s25ijyBSi2hTsZvfsD5SXFuNj39MuKMADLuzummAu9c3QG9Kouwhx1euxk6AxIv
	NlfytSt6PXmPvx1V6vxU2aYqKBQfIwBwUSEhXG5GUwOc8ds/PRbG9b9z6hPTYg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732593918; a=rsa-sha256; cv=none;
	b=mSNblAE0xWYfNBV/OYtFHtBvLzeaWYJXF0bq1PndDDhYj1PcquaKTzgqylBJ6qHcchwf92
	gSpAph/ofink4OKZM0hDQOEaMbAS+eZvaR6p57JFmy37ADyzC8pzTexv1d5kI9SedD8uHh
	5n+OBwnu9YJMZcdyt1XJrb/0hzt1RCXG4XZwKEjoQ6Q9ahFl0jGv48jO0Pkm7W2fjoyAKB
	sgBXd5XcHsXFxeXqeJGcbB4yuNelXhPG0qHl/vc/W5uJaTjMjCJCIeXtP3Z0hb/CmQRXjx
	sk6qPEw8VC8hOU0VPGnzEbg3nOuNroGgv6zYaClLgmGzpnXgOWGj17q+LaMIJQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xy89p2dx7z18PV;
	Tue, 26 Nov 2024 04:05: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 4AQ45I9G093826;
	Tue, 26 Nov 2024 04:05:18 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQ45I4O093823;
	Tue, 26 Nov 2024 04:05:18 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 04:05:18 GMT
Message-Id: <202411260405.4AQ45I4O093823@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kyle Evans <kevans@FreeBSD.org>
Subject: git: cab31f5633c1 - main - kern: add a TDA_PSELECT for
  early restoration of sigmask
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kevans
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: cab31f5633c1ffdd8b24749a3c9dd22c59568503
Auto-Submitted: auto-generated

The branch main has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=cab31f5633c1ffdd8b24749a3c9dd22c59568503

commit cab31f5633c1ffdd8b24749a3c9dd22c59568503
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2024-11-26 04:04:48 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2024-11-26 04:04:48 +0000

    kern: add a TDA_PSELECT for early restoration of sigmask
    
    It may be the case that we want to avoid delivering signals that are
    normally blocked by the thread's signal mask, in which case the syscall
    should schedule this one instead to restore the mask prior to delivery.
    
    This will be used by pselect/ppoll to avoid delivering signals that were
    supposed to be blocked after the timeout has elapsed.  The name was
    chosen as this is the expected behavior of pselect/ppoll, while late
    restoration of the mask is exceptional behavior for these specific
    calls.
    
    __FreeBSD_version bump as later TDA_* values have changed, third-party
    modules that may be using MOD3/MOD4 need to be rebuilt.
    
    Reviewed by:    kib
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Differential Revision:  https://reviews.freebsd.org/D47741
---
 sys/kern/kern_sig.c | 10 ++++++++++
 sys/sys/param.h     |  2 +-
 sys/sys/proc.h      |  1 +
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index cded24450ca1..96dc5e356ae9 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -365,6 +365,16 @@ sigqueue_start(void)
 	SIGFILLSET(fastblock_mask);
 	SIG_CANTMASK(fastblock_mask);
 	ast_register(TDA_SIG, ASTR_UNCOND, 0, ast_sig);
+
+	/*
+	 * TDA_PSELECT is for the case where the signal mask should be restored
+	 * before delivering any signals so that we do not deliver any that are
+	 * blocked by the normal thread mask.  It is mutually exclusive with
+	 * TDA_SIGSUSPEND, which should be used if we *do* want to deliver
+	 * signals that are normally blocked, e.g., if it interrupted our sleep.
+	 */
+	ast_register(TDA_PSELECT, ASTR_ASTF_REQUIRED | ASTR_TDP,
+	    TDP_OLDMASK, ast_sigsuspend);
 	ast_register(TDA_SIGSUSPEND, ASTR_ASTF_REQUIRED | ASTR_TDP,
 	    TDP_OLDMASK, ast_sigsuspend);
 }
diff --git a/sys/sys/param.h b/sys/sys/param.h
index 79ecd58569a3..550ea1fc61f6 100644
--- a/sys/sys/param.h
+++ b/sys/sys/param.h
@@ -73,7 +73,7 @@
  * cannot include sys/param.h and should only be updated here.
  */
 #undef __FreeBSD_version
-#define __FreeBSD_version 1500027
+#define __FreeBSD_version 1500028
 
 /*
  * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD,
diff --git a/sys/sys/proc.h b/sys/sys/proc.h
index c5ef4f849eab..3422f75172f0 100644
--- a/sys/sys/proc.h
+++ b/sys/sys/proc.h
@@ -494,6 +494,7 @@ enum {
 	TDA_RACCT,
 	TDA_MOD1,		/* For third party use, before signals are */
 	TAD_MOD2,		/* processed .. */
+	TDA_PSELECT,		/* For discarding temporary signal mask */
 	TDA_SIG,
 	TDA_KTRACE,
 	TDA_SUSPEND,

From nobody Tue Nov 26 04:05:19 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xy89q4ptvz5dmvc;
	Tue, 26 Nov 2024 04:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xy89q45Kqz4DHP;
	Tue, 26 Nov 2024 04:05:19 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732593919;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dCtB+wyOW27KRN2Qzh1J1nz/rkiyFtu8ZwmNncwTZhU=;
	b=RcRoItNF6psEH/PydGYliTd5Z66nZKrg/KeAWgfO3x2dJVUlj8umUYfMbR1nBC79TVcvP+
	+RP655/jFLP+dP2fh5VjFAqGtXeErZf4A0zfhKVwefF/BaXaoD79ZG2TSTviiSXj6cMqSb
	JnqVxdXGiv+Qwd5w2ZH+RmFef7w+3RJjFKpwmZ7WVO8k1rl/+T75bD4qMkGV3kpfu5QOaV
	mOMwyW3h8ElG9ID9HncRVG2KEBmpfblAqQI4i9Rtqzwi9h41tt0eqBV6wArX8CY9UUupww
	2mX9uvmTOt7dtjYTBXaXPYD9EaQGW1fTWrgqQYEDR4fxUE/ERpvfNckech5xEw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732593919;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dCtB+wyOW27KRN2Qzh1J1nz/rkiyFtu8ZwmNncwTZhU=;
	b=hPRmrf0bj228JUQvpAq0gQUClycwlDmhGb0psHNwDIyBgE8wXTBaLiQ2Iq9L1v3aiuwDx8
	4HCt5GkdR1MGfG/OoF6zyfmsrD0di2v4rmG3qXTwFt0MaM5zWNERdqydVhqF1g3wAaW3y4
	YF4e+DvnjgOHcAbYufmYb8IXiue9BicFWGdUIGGJIrjgfzv4YPc6fzLGcFpDrUVJTZ7rva
	UmntFy9IMe/aMF18ZS6OmenVhoPUbgpTxzmZ80BDJ7E3cSZ37m+3H/UeU2yRfM2YPqaM25
	0OHR4P5Jeaf7lLUgIGkX/+LN5RVYGxtX++AI3c1P/nUsdbMo+x8s5Hsdu67Vug==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732593919; a=rsa-sha256; cv=none;
	b=H7NSx7toKOHaJvhQ6Q+i+9YckXXXSghBV2x2jSmWXUh4vV0A6hckTvsXSlrcJ01VBq5Ib9
	dwc1tpbJGb/OHjT6Hq29UfpWV+nE7USh2/DCgp/gs14vURAWYJuNlfHz04Dei+hTyq0K9A
	2OEuJG9VLYZFNCms0JCN6NsFouMHHtRIe3PfShXvli5UmG3LaEWDSuYB8AtBPVXtKG+JZk
	IbsF5VCKJIp0MMujjit+YGAWEVyTyno94a3KXmouC4fpvFjgIuwctvj+jsXsU5HVqAdNgl
	eN+42T3VZZ1FiRHAbM1tYjGuSR9BDDOyd2jzCL+QyLnvaep+fvzjp2DlpjpX4w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xy89q3gLgz18bt;
	Tue, 26 Nov 2024 04:05: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 4AQ45Jwa093877;
	Tue, 26 Nov 2024 04:05:19 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQ45J3i093874;
	Tue, 26 Nov 2024 04:05:19 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 04:05:19 GMT
Message-Id: <202411260405.4AQ45J3i093874@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kyle Evans <kevans@FreeBSD.org>
Subject: git: ccb973da1f1b - main - kern: restore signal mask before
  ast() for pselect/ppoll
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kevans
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: ccb973da1f1b65879eade8e65cdd2885e125f90e
Auto-Submitted: auto-generated

The branch main has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=ccb973da1f1b65879eade8e65cdd2885e125f90e

commit ccb973da1f1b65879eade8e65cdd2885e125f90e
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2024-11-26 04:04:48 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2024-11-26 04:04:48 +0000

    kern: restore signal mask before ast() for pselect/ppoll
    
    It's possible to take a signal after pselect/ppoll have set their return
    value, but before we actually return to userland.  This results in
    taking a signal without reflecting it in the return value, which weakens
    the guarantees provided by these functions.
    
    Switch both to restore the signal mask before we would deliver signals
    on return to userland.  If a signal was received after the wait was
    over, then we'll just have the signal queued up for the next time it
    comes unblocked.  The modified signal mask is retained if we were
    interrupted so that ast() actually handles the signal, at which point
    the signal mask is restored.
    
    des@ has a test case demonstrating the issue in D47738 which will
    follow.
    
    Note for MFC: TDA_PSELECT is a KBI break, we should just inline
    ast_sigsuspend() in pselect/ppoll for stable branches.  It's not exactly
    the same, but it will be close enough.
    
    Reported by:    des
    Reviewed by:    des (earlier version), kib
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Differential Revision:  https://reviews.freebsd.org/D47741
---
 sys/kern/sys_generic.c | 40 +++++++++++++++++++++++++++++++---------
 1 file changed, 31 insertions(+), 9 deletions(-)

diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c
index 99b018dee26c..6fc7d5d2eefa 100644
--- a/sys/kern/sys_generic.c
+++ b/sys/kern/sys_generic.c
@@ -1049,14 +1049,26 @@ kern_pselect(struct thread *td, int nd, fd_set *in, fd_set *ou, fd_set *ex,
 		if (error != 0)
 			return (error);
 		td->td_pflags |= TDP_OLDMASK;
+	}
+	error = kern_select(td, nd, in, ou, ex, tvp, abi_nfdbits);
+	if (uset != NULL) {
 		/*
 		 * Make sure that ast() is called on return to
 		 * usermode and TDP_OLDMASK is cleared, restoring old
-		 * sigmask.
+		 * sigmask.  If we didn't get interrupted, then the caller is
+		 * likely not expecting a signal to hit that should normally be
+		 * blocked by its signal mask, so we restore the mask before
+		 * any signals could be delivered.
 		 */
-		ast_sched(td, TDA_SIGSUSPEND);
+		if (error == EINTR) {
+			ast_sched(td, TDA_SIGSUSPEND);
+		} else {
+			/* *select(2) should never restart. */
+			MPASS(error != ERESTART);
+			ast_sched(td, TDA_PSELECT);
+		}
 	}
-	error = kern_select(td, nd, in, ou, ex, tvp, abi_nfdbits);
+
 	return (error);
 }
 
@@ -1528,12 +1540,6 @@ kern_poll_kfds(struct thread *td, struct pollfd *kfds, u_int nfds,
 		if (error)
 			return (error);
 		td->td_pflags |= TDP_OLDMASK;
-		/*
-		 * Make sure that ast() is called on return to
-		 * usermode and TDP_OLDMASK is cleared, restoring old
-		 * sigmask.
-		 */
-		ast_sched(td, TDA_SIGSUSPEND);
 	}
 
 	seltdinit(td);
@@ -1556,6 +1562,22 @@ kern_poll_kfds(struct thread *td, struct pollfd *kfds, u_int nfds,
 		error = EINTR;
 	if (error == EWOULDBLOCK)
 		error = 0;
+
+	if (uset != NULL) {
+		/*
+		 * Make sure that ast() is called on return to
+		 * usermode and TDP_OLDMASK is cleared, restoring old
+		 * sigmask.  If we didn't get interrupted, then the caller is
+		 * likely not expecting a signal to hit that should normally be
+		 * blocked by its signal mask, so we restore the mask before
+		 * any signals could be delivered.
+		 */
+		if (error == EINTR)
+			ast_sched(td, TDA_SIGSUSPEND);
+		else
+			ast_sched(td, TDA_PSELECT);
+	}
+
 	return (error);
 }
 

From nobody Tue Nov 26 06:54:58 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyCxc3pwkz5f0lG;
	Tue, 26 Nov 2024 06:55:00 +0000 (UTC)
	(envelope-from des@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyCxc2pByz4TdJ;
	Tue, 26 Nov 2024 06:55:00 +0000 (UTC)
	(envelope-from des@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732604100;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Hugf5n4i5JZk5nRuQGSlfRSXkz3GxaTPyMiy32IlWpk=;
	b=AQBcG3pthfIuzOOB5U5zItcbhw8jtuOIVtCZ3UDHhjGGSOAoLnH/qbM9OvXgpNadi21Wl7
	StvqbzcyBj87YhB/1ISMMaTAdkuNddBIERqBiHNxM6CM36z7yBURnqI3VaF7pOo1nKJx4p
	86HxHh2ERxx3QmI3Ub1SKYrKDv2KmPfMiG9MkqQmX9uw5c6AHg17KodFsw7vZv4lb7pwLM
	6lU4q6fqGNbljHPcd3hxQ+O6aS26utk0CD61Vuap3DZhT+JyEx+50t0NQqs0KF/Phe1lv+
	2a2ohjzpCQMvOWoml5TWxhAGazza3lkycaU4sFncE4bDvnDo7cQRSchQLPnnOA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732604100;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Hugf5n4i5JZk5nRuQGSlfRSXkz3GxaTPyMiy32IlWpk=;
	b=qktxId2742tFaSsjQacnyBelTd5SjMVSgJRT9Qcq0ft207Nvr+8zWim+bkqrLzvYfuTBjK
	FI2KST6wVmbXubq66K6oAkdgfJ74fObn16yYOfpAJm7cuaiQMN+irOZL7jmFKIxFqRjiCP
	K99kHR+a63hR+PGjkHkMFWn05N+MEnReD+3su/FNyGb9n/ZEO/ZUA3aZVENo+2aaD1bSS+
	gkq/DlDeAREyoT5ULG6cpYVNN6NK3NN9KNmMUbDzH2T60v3M+yE8XmzrRKLOUjLThxvwQN
	/IRsZwR15ZIXKu7jXwrbfBGgc/PXJ5JpHxbj3aRzFHJKqYIML0265e+hue+Paw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732604100; a=rsa-sha256; cv=none;
	b=S33hp9FZMhkP8SjZTu/8Oe6vdN9MR7qkPs/nt8/G91ZvO7fb42tfjWSosLSnxCMyaQPOM6
	QJVM6RVq8TR9BnwMeOhfYXaJdxGAR6HH3VBD22AMEPaNn68P1/D2PXdVyPlbftccJHhR1J
	lWTTr+72TiHsrdJ3TC1o1pvbmE8Rx0rwP17koQL8ujiebrx8dOBnADRKXCYSFND4q8brcv
	uQKaYg+0SILgyaFNOv/2fPhWbvOwpt0zOp5a5wO0O5tGNw8rZLyZ/4KfAC/jH7v5uSuG8P
	qGy5SEVHOl2g797EExpuruspsWFZQEkDylz8HKNRYJMZfXe1rNMJgHV/udxwVA==
Received: from ltc.des.dev (88-177-82-251.subs.proxad.net [88.177.82.251])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	(Authenticated sender: des)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XyCxc1j7kzYmW;
	Tue, 26 Nov 2024 06:55:00 +0000 (UTC)
	(envelope-from des@freebsd.org)
Received: by ltc.des.dev (Postfix, from userid 1001)
	id C32BB60686; Tue, 26 Nov 2024 07:54:58 +0100 (CET)
From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@FreeBSD.org>
To: Stefan =?utf-8?Q?E=C3=9Fer?= <se@FreeBSD.org>
Cc: src-committers@FreeBSD.org,  dev-commits-src-all@FreeBSD.org,
  dev-commits-src-main@FreeBSD.org
Subject: Re: git: 8ea6c1154094 - main - usr.bin/bc: remove OpenBSD derived
 bc and dc commands
In-Reply-To: <4808a71f-a12b-4e70-ad51-a7979f5dff08@FreeBSD.org> ("Stefan
	=?utf-8?Q?E=C3=9Fer=22's?= message of "Mon, 25 Nov 2024 23:22:22 +0100")
References: <202411242208.4AOM8WSe033669@gitrepo.freebsd.org>
	<86r06zcnb7.fsf@ltc.des.dev>
	<4808a71f-a12b-4e70-ad51-a7979f5dff08@FreeBSD.org>
User-Agent: Gnus/5.13 (Gnus v5.13)
Date: Tue, 26 Nov 2024 07:54:58 +0100
Message-ID: <867c8qcwn1.fsf@ltc.des.dev>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Stefan E=C3=9Fer <se@FreeBSD.org> writes:
> Dag-Erling Sm=C3=B8rgrav <des@FreeBSD.org> writes:
>> I appreciate your efforts but this is incomplete, as was pointed out
>> in review.
> I was not aware that the review was incomplete

What did you think the red circle next to my name in Phabricator meant?

> Are there any outstanding issues you know about?

Yes.  For instance, `tools/build/options/WITH_GH_BC` is still present.
I pointed this out in Phabricator and marked the review as =E2=80=9Cchanges
requested=E2=80=9D on October 2nd, despite your claim in your commit message
that I had approved it.

DES
--=20
Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org

From nobody Tue Nov 26 10:48:05 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyK6Z09YQz5fH8x;
	Tue, 26 Nov 2024 10:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyK6Y6lfVz4tWH;
	Tue, 26 Nov 2024 10:48:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732618085;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=UgTq4aze76CzVFgigYy1TsfTP1sZBBVvqUz91TOEVxk=;
	b=VsjFKvTj4J0p6upoiTaVOCOTo3m9tmgn1xRo+doROWCXOLrQ3OP3tmhpfSfvEyYqy1nikp
	W8WMEhTa6ln14yjQVdvwiv/Mz/j7x5oeQx3MnDQwjUa0M1ib/xlZGIP/7wU8DufQ6eiTJw
	N2DP1U5ks0C0AAxxpLiFaTfE+QXVd8oiSxRNHFuTuC54qoshocJlQ31OnAcnYy2sealUAX
	PUIwDDO31ZA8U8sGuTApED7VHlTd0JCezti7g0rn3U0PBy1zGu00RGeRCysW4ww++SdDB5
	tmbVWKhPDPNa7KjtJ350rQdzV9VqPpiz9TT/AJTqFTnr0l2AFFnmGim1yiYboQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732618085;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=UgTq4aze76CzVFgigYy1TsfTP1sZBBVvqUz91TOEVxk=;
	b=Dcms4ajQ8vDXvpTdEmtGISvHU/Fn+kCLvJsASA8D3NVoMmqQ7+VWWIWu2bMQEDMnghHP6T
	ulnOllJA8XbAZF90qvXSIGyR918KCFlYU8usevqaid7K7cu2SMInvu1Wss2mLizvug2VEH
	zFtXKLZRHTKBztkvl198VOBIJML5PwAwrpgNNnVIF5Ck/WAedYvBMJr4UXfv9xHiHNpGgA
	s8SkDNoer+2tPOfRSwoelFoD/TOXrnxcmzgSvmtmdZh1bkNHRDG2eF7ErOOUffVuRRgBd/
	WF29AJ/GCqmmZkOhuSURW8AOjC398lMYKNmNzM+8PwmPbFbGze1f8n7+4QiPzw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732618085; a=rsa-sha256; cv=none;
	b=m6UiHorV6JUU0ufWG36Nb8PJGV7/PyJPoQ2XcN7XjhcqlMHgzSQNvEmVYK3UqRHipDvs5e
	BU2hjbhrzJOIX0PkmYEnmdkgqHLw/Nh4GoeRfEVfvLW13noEcAUmgA/m9SCbryxXTrvSeB
	hoCKQaNa3rRzmLe+GROL5Bj8PTpgQ3Xc+Bf84oF3aEedVEzJmyoc5avJZUfd/H3RouipKr
	A7EduIq3PZjDbYb4op2gPb2LMc3BG9OB23pNyhfymMS5Fi1u77EpfEeD4r6fQVwR+fKlHw
	FNj/ODUzPbO4aiGLLdsma4QjYQi7yQxri9sz4Wr/6zw9dm8LREY0LOu6Iid+jw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyK6Y6DDwzLjy;
	Tue, 26 Nov 2024 10:48: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 4AQAm5SR036021;
	Tue, 26 Nov 2024 10:48:05 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQAm5Xs036018;
	Tue, 26 Nov 2024 10:48:05 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 10:48:05 GMT
Message-Id: <202411261048.4AQAm5Xs036018@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Subject: git: c0a5ee953f41 - main - hms(4): improve scroll with
  IICHID_SAMPLING
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: trasz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: c0a5ee953f41905038aadba7b7d0df2af6612e71
Auto-Submitted: auto-generated

The branch main has been updated by trasz:

URL: https://cgit.FreeBSD.org/src/commit/?id=c0a5ee953f41905038aadba7b7d0df2af6612e71

commit c0a5ee953f41905038aadba7b7d0df2af6612e71
Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
AuthorDate: 2024-11-25 15:08:10 +0000
Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
CommitDate: 2024-11-26 10:28:51 +0000

    hms(4): improve scroll with IICHID_SAMPLING
    
    The current quirk is designed to discard duplicated data read from
    the chip.  Problem is, it also discards real events when they happen
    to be identical, which is the case with scroll wheel events;
    differently from X/Y they always move by fixed offset.  This results
    in two-finger scroll that would stop mid-way that could be fixed by
    manually setting dev.hms.0.drift_thresh to 0.
    
    To fix that, don't discard duplicates when there's wheel movement.
    For users with actual duplicates problem this will result in scroll
    suddenly becoming quite inertial, but it will stop moving at any touch,
    so shouldn't be terrible.
    
    PR:             kern/276709
    Reviewed By:    wulf
    Differential Revision:  https://reviews.freebsd.org/D47640
---
 sys/dev/hid/hms.c | 32 ++++++++++++++++++++++++++++++--
 1 file changed, 30 insertions(+), 2 deletions(-)

diff --git a/sys/dev/hid/hms.c b/sys/dev/hid/hms.c
index 0ac1b86c0735..dcb679407cca 100644
--- a/sys/dev/hid/hms.c
+++ b/sys/dev/hid/hms.c
@@ -122,6 +122,7 @@ struct hms_softc {
 	hid_size_t		isize;
 	uint32_t		drift_cnt;
 	uint32_t		drift_thresh;
+	struct hid_location	wheel_loc;
 #endif
 };
 
@@ -131,6 +132,7 @@ hms_intr(void *context, void *buf, hid_size_t len)
 {
 	struct hidmap *hm = context;
 	struct hms_softc *sc = device_get_softc(hm->dev);
+	int32_t wheel;
 
 	if (len > sc->isize)
 		len = sc->isize;
@@ -140,8 +142,18 @@ hms_intr(void *context, void *buf, hid_size_t len)
 	 * to return last report data in sampling mode even after touch has
 	 * been ended.  That results in cursor drift.  Filter out such a
 	 * reports through comparing with previous one.
+	 *
+	 * Except this results in dropping consecutive mouse wheel events,
+	 * because differently from cursor movement they always move by the
+	 * same amount.  So, don't do it when there's mouse wheel movement.
 	 */
-	if (len == sc->last_irsize && memcmp(buf, sc->last_ir, len) == 0) {
+	if (sc->wheel_loc.size != 0)
+		wheel = hid_get_data(buf, len, &sc->wheel_loc);
+	else
+		wheel = 0;
+
+	if (len == sc->last_irsize && memcmp(buf, sc->last_ir, len) == 0 &&
+	    wheel == 0) {
 		sc->drift_cnt++;
 		if (sc->drift_thresh != 0 && sc->drift_cnt >= sc->drift_thresh)
 			return;
@@ -285,9 +297,25 @@ hms_attach(device_t dev)
 	/* Count number of input usages of variable type mapped to buttons */
 	for (hi = sc->hm.hid_items;
 	     hi < sc->hm.hid_items + sc->hm.nhid_items;
-	     hi++)
+	     hi++) {
 		if (hi->type == HIDMAP_TYPE_VARIABLE && hi->evtype == EV_KEY)
 			nbuttons++;
+#ifdef IICHID_SAMPLING
+		/*
+		 * Make note of which part of the report descriptor is the wheel.
+		 */
+		if (hi->type == HIDMAP_TYPE_VARIABLE &&
+		    hi->evtype == EV_REL && hi->code == REL_WHEEL) {
+			sc->wheel_loc = hi->loc;
+			/*
+			 * Account for the leading Report ID byte
+			 * if it is a multi-report device.
+			 */
+			if (hi->id != 0)
+				sc->wheel_loc.pos += 8;
+		}
+#endif
+	}
 
 	/* announce information about the mouse */
 	device_printf(dev, "%d buttons and [%s%s%s%s%s] coordinates ID=%u\n",

From nobody Tue Nov 26 11:20:06 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyKqV6PWTz5fKJg;
	Tue, 26 Nov 2024 11:20: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyKqV5sY6z3xNZ;
	Tue, 26 Nov 2024 11:20:06 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732620006;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=lc8Zsa4DQclvTIyS4T3u+N1ao0IV0QVzKCORUpZ4APg=;
	b=nN4/cRr8cOCR5spuzKPi2RUtYPEPOxz1MjJ4wXIrk4fVkuN8k37OB+aXG+BOUFZGnRX4fY
	Us3X45BEVLX1HBMj1eLw6Ea/bLqjAWOSDRo1kPxc1ZxNWkQM9aZazhFSOVfRM9PApTp/vd
	7DwUIybhtp/t81KMFB0SEaD0w+GcbyT+utv4ZX+i0HlOhvc2G0cdzqeFLS01hCKhvWHqT3
	qV2qAx/CxD1xophdHA058tk69ENyHDsGywRhutA6eYdI/orYFDkAS4MIQ0Sd3IeAOyhSgJ
	MoIrv+M3x6sFWCHlwkVwSXNAKa1DO0EKL/r3pBk6kiwE/kOLwnJTAUr6vC0kEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732620006;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=lc8Zsa4DQclvTIyS4T3u+N1ao0IV0QVzKCORUpZ4APg=;
	b=Lep8SQVsXQ4fZJCmSY3tl4a2ZCT6Bfst0EaD3Zph4sp2EzwUP0f8Xi6vH7gOB2RBzVWPu9
	SjI8gGxgmqb/JmXcrGM5TrjInyzIOYgshMKcWZjk41/xX64yT3jc87mOuLLXUKp2FcaP5H
	NE4oUxSNuu6To9hvYJxDc12+6PZCeUUxgWepajsWZnfw7Y0gpMbccFg9m8roYsKZGdd/Qh
	XgUqFtLYpqt/Ag+bY+kU/7/lb9chTOdZDm7t4V52k1yfGw9QU5QD8WGBfRvsnevqkvmawK
	1iW4N1OqeI2FMgGRq16xPbo/mjZE8LXFggflbbykB1i7Pkmpa4D9wdmGzYgewQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732620006; a=rsa-sha256; cv=none;
	b=IcGJP0MvBtESHPKkhCZQ+r4BOQeoAHd+sCdpQZ6DeO6+gjoObSySpiXl3EPGESQwt5Ntk6
	6kNba63hCHxQUTHtL2xBoNFI2JZKOkDXs+2rLuxuiXTh2l+GIT/QjXjA1p6z1rYyWuYLSv
	PuXlt2GKniI+gYS+eQ6IrACmnBnK37RX0r9LL5ZMeLUQxK0OPQrRGK3vJB2QTWay2u2PyI
	54xXN4tgpbjnKKZq6Akb7JnAnep9qLNT8jaMucLyebHueVuT1kk24zIB7z03qq9OTMmHA8
	QuiDlflBRL5BnNau4Vv9056ird9/7RUAsF+oBalObHWI5LQetFCD/4eqnW0gNg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyKqV5LXBzN5B;
	Tue, 26 Nov 2024 11:20: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 4AQBK6gb095615;
	Tue, 26 Nov 2024 11:20:06 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQBK6EF095610;
	Tue, 26 Nov 2024 11:20:06 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 11:20:06 GMT
Message-Id: <202411261120.4AQBK6EF095610@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Michal Meloun <mmel@FreeBSD.org>
Subject: git: 3abef90c325d - main - arm: Fix VFP state corruption
  during signal delivery
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mmel
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 3abef90c325dc9badc51cc0e195db3fd5548ff53
Auto-Submitted: auto-generated

The branch main has been updated by mmel:

URL: https://cgit.FreeBSD.org/src/commit/?id=3abef90c325dc9badc51cc0e195db3fd5548ff53

commit 3abef90c325dc9badc51cc0e195db3fd5548ff53
Author:     Michal Meloun <mmel@FreeBSD.org>
AuthorDate: 2024-11-26 11:08:21 +0000
Commit:     Michal Meloun <mmel@FreeBSD.org>
CommitDate: 2024-11-26 11:18:30 +0000

    arm: Fix VFP state corruption during signal delivery
    
    D37419 corrupts VFP context store on signal delivery and D38696 corrupts PCB
    because it performs a binary copy between structures with different layouts.
    Revert the problematic parts of these commits to have signals delivery
    working. Unfortunately, there are more problems with these revisions and
    more fixes need to be developed.
    
    Fixes: 6926e2699ae55080f860488895a2a9aa6e6d9b4d
    Fixes: 4d2427f2c4451babe1bad600ae02c8a7c66031fe
    MFC after:      4 weeks
---
 sys/arm/arm/exec_machdep.c | 42 ++++++++++++++++++++++++------------------
 1 file changed, 24 insertions(+), 18 deletions(-)

diff --git a/sys/arm/arm/exec_machdep.c b/sys/arm/arm/exec_machdep.c
index 0b9468c756a9..011085841938 100644
--- a/sys/arm/arm/exec_machdep.c
+++ b/sys/arm/arm/exec_machdep.c
@@ -101,14 +101,19 @@ get_vfpcontext(struct thread *td, mcontext_vfp_t *vfp)
 	    P_SHOULDSTOP(td->td_proc));
 
 	pcb = td->td_pcb;
-	if ((pcb->pcb_fpflags & PCB_FP_STARTED) != 0 && td == curthread) {
+	if (td == curthread) {
 		critical_enter();
 		vfp_store(&pcb->pcb_vfpstate, false);
 		critical_exit();
 	}
 	KASSERT(pcb->pcb_vfpsaved == &pcb->pcb_vfpstate,
 		("Called get_vfpcontext while the kernel is using the VFP"));
-	memcpy(vfp, &pcb->pcb_vfpstate, sizeof(*vfp));
+
+	memset(vfp, 0, sizeof(*vfp));
+	memcpy(vfp->mcv_reg, pcb->pcb_vfpstate.reg,
+	    sizeof(vfp->mcv_reg));
+	vfp->mcv_fpscr = pcb->pcb_vfpstate.fpscr;
+
 }
 
 /*
@@ -127,7 +132,10 @@ set_vfpcontext(struct thread *td, mcontext_vfp_t *vfp)
 	}
 	KASSERT(pcb->pcb_vfpsaved == &pcb->pcb_vfpstate,
 		("Called set_vfpcontext while the kernel is using the VFP"));
-	memcpy(&pcb->pcb_vfpstate, vfp, sizeof(*vfp));
+	memcpy(pcb->pcb_vfpstate.reg, vfp->mcv_reg,
+	    sizeof(pcb->pcb_vfpstate.reg));
+	pcb->pcb_vfpstate.fpscr = vfp->mcv_fpscr;
+
 }
 #endif
 
@@ -163,8 +171,6 @@ get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret)
 {
 	struct trapframe *tf = td->td_frame;
 	__greg_t *gr = mcp->__gregs;
-	mcontext_vfp_t	mcontext_vfp;
-	int rv;
 
 	if (clear_ret & GET_MC_CLEAR_RET) {
 		gr[_REG_R0] = 0;
@@ -189,19 +195,9 @@ get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret)
 	gr[_REG_LR]   = tf->tf_usr_lr;
 	gr[_REG_PC]   = tf->tf_pc;
 
-#ifdef VFP
-	if (mcp->mc_vfp_size != sizeof(mcontext_vfp_t))
-		return (EINVAL);
-	get_vfpcontext(td, &mcontext_vfp);
-#else
-	bzero(&mcontext_vfp, sizeof(mcontext_vfp));
-#endif
-
-	if (mcp->mc_vfp_ptr != NULL) {
-		rv = copyout(&mcontext_vfp, mcp->mc_vfp_ptr,  sizeof(mcontext_vfp));
-		if (rv != 0)
-			return (rv);
-	}
+	mcp->mc_vfp_size = 0;
+	mcp->mc_vfp_ptr = NULL;
+	memset(&mcp->mc_spare, 0, sizeof(mcp->mc_spare));
 
 	return (0);
 }
@@ -315,6 +311,16 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask)
 	/* Populate the siginfo frame. */
 	bzero(&frame, sizeof(frame));
 	get_mcontext(td, &frame.sf_uc.uc_mcontext, 0);
+
+#ifdef VFP
+	get_vfpcontext(td, &frame.sf_vfp);
+	frame.sf_uc.uc_mcontext.mc_vfp_size = sizeof(fp->sf_vfp);
+	frame.sf_uc.uc_mcontext.mc_vfp_ptr = &fp->sf_vfp;
+#else
+	frame.sf_uc.uc_mcontext.mc_vfp_size = 0;
+	frame.sf_uc.uc_mcontext.mc_vfp_ptr = NULL;
+#endif
+
 	frame.sf_si = ksi->ksi_info;
 	frame.sf_uc.uc_sigmask = *mask;
 	frame.sf_uc.uc_stack = td->td_sigstk;

From nobody Tue Nov 26 12:34:51 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyMTl3Cyzz5fPl4;
	Tue, 26 Nov 2024 12:34: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyMTl2hYyz47cM;
	Tue, 26 Nov 2024 12:34:51 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732624491;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=aimjmHGR1bRg/v5BmX0DV5s63uLoW2XA7UtjLBNwLEM=;
	b=TkNu8Y6CIErPpE8o1p9uP6jFBNrdDpcf8SVkq7mjFw96d2KQ1CxSp0lGoseFzUImwKImqM
	MtXNcjVTet70gINB9XIUo7Kj9WqBkGgTtgUGfJFcTK7wtuXLCoMpBLo+D7EV2xFsSSmbmY
	TEHWkAr78jZLsyBeMJShZQ3iq6bLga6yneY7R0Vgp7FemCxh8A7NxYk1myAO0vy8k6iIEX
	FgGkOuhPNNrbK7hRxFQDLm87L4Wew9wC55rAo7frrvv37oN3qKM2YLRo8vJBY63rsXz7zM
	KNmQi0INp0+IHl2lZqsCU8laEI27M2BoDNkfRpHqkZG2YR2aNvcJ3iozRzcKZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732624491;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=aimjmHGR1bRg/v5BmX0DV5s63uLoW2XA7UtjLBNwLEM=;
	b=uI9bcNpsymQus2XuSbrtm444Tq0gdp7iFqE8Ju3jLEc9PmSAzFq9VeWLdxI3q74P47HE6H
	vpnVM+CpY6Brl+CYi9hc9gcEI9nf1empP46vfIvfQxOPZcK0P/pfVlRjwBuZoppji3qDRu
	mjFstXQ4OBmhGCxaLySVHZ0vUtz1lKxPF84JHlZry8SHq/trrAXx1JdHTLIrdjNW6Pglnp
	rVtQ5YI+xNtb3TKvcwh1WHxiJVlj9wFQuX6mnM0AJiCInGJ3IephM3aSPhluL0aRa+houv
	dA8UZ6XOKLePn7j/iQZgp6DTxvvLmzIONduXJsvEvtFa74x7Z+qrgFA3HfUaUw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732624491; a=rsa-sha256; cv=none;
	b=Sgf4yxQMP9lnub6dowdh+dmKO19TrwuzuYrbabZvRPm7qEaYK5ZYsmjR67SkOJ/srFGq/M
	IIaNB4qc1Wm+84D973fIMJspGAPfn9NZeJgQi4YQRMfSUw8b+KnLfddVDpGGgMx/4JgjEC
	/1DBCJLHiwaV2LDc7zeApuH+LQSzjb34VTohWzwFoeFm7v3y4s4veJvJkpg0v0aD5LZ2af
	CsGQTy7tv2Ess4pskUEmeXl9JKOsJolZBMvJudaYM2u3Pv6Ffooosa7BIZ2EkgUReMDhtj
	5cXCsvVUosXKOfXWeYeYLgc/nBEDhLOVW4SHZjmgOa21cIhKixevjOplZYKj+g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyMTl29WDzQ5Z;
	Tue, 26 Nov 2024 12:34: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 4AQCYpBV038913;
	Tue, 26 Nov 2024 12:34:51 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQCYp1k038910;
	Tue, 26 Nov 2024 12:34:51 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 12:34:51 GMT
Message-Id: <202411261234.4AQCYp1k038910@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: cca0dc49e0ca - main - mlx5en: move runtime capabilities
  checks into helper functions
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: cca0dc49e0ca66f7696920266ea6340b05e3e455
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=cca0dc49e0ca66f7696920266ea6340b05e3e455

commit cca0dc49e0ca66f7696920266ea6340b05e3e455
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-21 05:51:18 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 12:34:34 +0000

    mlx5en: move runtime capabilities checks into helper functions
    
    For TLS TX/RX, ratelimit, and IPSEC offload caps.
    
    Reviewed by:    Ariel Ehrenberg <aehrenberg@nvidia.com>
    Sponsored by:   NVidia networking
    MFC after:      1 week
---
 sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 70 ++++++++++++++++++++++++++++---------
 1 file changed, 53 insertions(+), 17 deletions(-)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
index ec35d87af962..e3c075d4dd80 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
@@ -3404,6 +3404,51 @@ mlx5e_set_rx_mode(if_t ifp)
 	queue_work(priv->wq, &priv->set_rx_mode_work);
 }
 
+static bool
+mlx5e_is_ipsec_capable(struct mlx5_core_dev *mdev)
+{
+#ifdef IPSEC_OFFLOAD
+	if ((mlx5_ipsec_device_caps(mdev) & MLX5_IPSEC_CAP_PACKET_OFFLOAD) != 0)
+		return (true);
+#endif
+	return (false);
+}
+
+static bool
+mlx5e_is_ratelimit_capable(struct mlx5_core_dev *mdev)
+{
+#ifdef RATELIMIT
+	if (MLX5_CAP_GEN(mdev, qos) &&
+	    MLX5_CAP_QOS(mdev, packet_pacing))
+		return (true);
+#endif
+	return (false);
+}
+
+static bool
+mlx5e_is_tlstx_capable(struct mlx5_core_dev *mdev)
+{
+#ifdef KERN_TLS
+	if (MLX5_CAP_GEN(mdev, tls_tx) != 0 &&
+	    MLX5_CAP_GEN(mdev, log_max_dek) != 0)
+		return (true);
+#endif
+	return (false);
+}
+
+static bool
+mlx5e_is_tlsrx_capable(struct mlx5_core_dev *mdev)
+{
+#ifdef KERN_TLS
+	if (MLX5_CAP_GEN(mdev, tls_rx) != 0 &&
+	    MLX5_CAP_GEN(mdev, log_max_dek) != 0 &&
+	    MLX5_CAP_FLOWTABLE_NIC_RX(mdev,
+	    ft_field_support.outer_ip_version) != 0)
+		return (true);
+#endif
+	return (false);
+}
+
 static int
 mlx5e_ioctl(if_t ifp, u_long command, caddr_t data)
 {
@@ -4535,29 +4580,20 @@ mlx5e_create_ifp(struct mlx5_core_dev *mdev)
 	if_setcapabilitiesbit(ifp, IFCAP_TSO | IFCAP_VLAN_HWTSO, 0);
 	if_setcapabilitiesbit(ifp, IFCAP_HWSTATS | IFCAP_HWRXTSTMP, 0);
 	if_setcapabilitiesbit(ifp, IFCAP_MEXTPG, 0);
-#ifdef KERN_TLS
-	if (MLX5_CAP_GEN(mdev, tls_tx) != 0 &&
-	    MLX5_CAP_GEN(mdev, log_max_dek) != 0)
+	if (mlx5e_is_tlstx_capable(mdev))
 		if_setcapabilitiesbit(ifp, IFCAP_TXTLS4 | IFCAP_TXTLS6, 0);
-	if (MLX5_CAP_GEN(mdev, tls_rx) != 0 &&
-	    MLX5_CAP_GEN(mdev, log_max_dek) != 0 &&
-	    MLX5_CAP_FLOWTABLE_NIC_RX(mdev,
-	    ft_field_support.outer_ip_version) != 0)
+	if (mlx5e_is_tlsrx_capable(mdev))
 		if_setcapabilities2bit(ifp, IFCAP2_BIT(IFCAP2_RXTLS4) |
 		    IFCAP2_BIT(IFCAP2_RXTLS6), 0);
-#endif
-#ifdef RATELIMIT
-	if (MLX5_CAP_GEN(mdev, qos) &&
-	    MLX5_CAP_QOS(mdev, packet_pacing))
-		if_setcapabilitiesbit(ifp, IFCAP_TXRTLMT | IFCAP_TXTLS_RTLMT,
-		    0);
-#endif
+	if (mlx5e_is_ratelimit_capable(mdev)) {
+		if_setcapabilitiesbit(ifp, IFCAP_TXRTLMT, 0);
+		if (mlx5e_is_tlstx_capable(mdev))
+			if_setcapabilitiesbit(ifp, IFCAP_TXTLS_RTLMT, 0);
+	}
 	if_setcapabilitiesbit(ifp, IFCAP_VXLAN_HWCSUM | IFCAP_VXLAN_HWTSO, 0);
-#ifdef IPSEC_OFFLOAD
-	if (mlx5_ipsec_device_caps(mdev) & MLX5_IPSEC_CAP_PACKET_OFFLOAD)
+	if (mlx5e_is_ipsec_capable(mdev))
 		if_setcapabilities2bit(ifp, IFCAP2_BIT(IFCAP2_IPSEC_OFFLOAD),
 		    0);
-#endif
 
 	if_setsndtagallocfn(ifp, mlx5e_snd_tag_alloc);
 #ifdef RATELIMIT

From nobody Tue Nov 26 12:34:52 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyMTm54Cfz5fPZ5;
	Tue, 26 Nov 2024 12:34: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyMTm2xtvz47Tl;
	Tue, 26 Nov 2024 12:34:52 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732624492;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qTn4laZfUpwPXiJAK35MS0gZr4kvRkzhL+CsdA3bzoc=;
	b=oEAL5uflRTIoy63He7rpKhmAA0tnDArLVsTu9KPdz4jr9pszEoxckGnESuMKKITshAdBOC
	wFCQ2zmD2VZKvZibkk2rfYygSonPZrlaUZDep4ZwBznrbNQVQ+rRS3U+uLJ3l3x2OEfKMw
	K+fNw/Pipowe/mLeabtNA/27qjsqJL9JyRmI1lXPBxV2fOipycdWv+zLnllkz9rChM6Pfs
	ysmFlh97K/WWXg4F1fZmK2M1bVgnymue6EiCC82YZXe3nPE+FMjXgnBTOQQDzAbBeI4wHN
	hkCh11tXw6VZumQm3dJ7DMfHSinuyg272CpPfk7+6jediqVNfVE2lwhCox+hLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732624492;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qTn4laZfUpwPXiJAK35MS0gZr4kvRkzhL+CsdA3bzoc=;
	b=g7ebA29NS8NeJcbS3x/KPyDMy/AN0kdsZWV9kKDcTNOTqvJ4wnHmmUkNJR0gLFVmXR8qQR
	pVqIxkQli/+Vh6z2O5p9LMlSreGCIl+Bt/Xwzc76O30FXklUxUVJYlEgRAycBwNX+D7vlS
	cnbX4PY9o225bA56o+IfhLqU6l/xGKe4GutjiI4QBbSDtjf+ToU+SjuQc/beldn4oOtVjy
	BaYh0UWypXixSsZQZAtjedqSAnPqDg6Seti2ml1xZmwQbafTMagbSAybUCvRlBp1ZlUJH3
	7MNc0VidhjFiFZ5UuFHsfoSVoM8Sz0D5ExXb8Pi1XEpNfCvEJEEw2PJ+gMoZcA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732624492; a=rsa-sha256; cv=none;
	b=oL1ORQVZETl0IWrZ0wJXRKx5IqCqMUCbjolHSi6vhycSDyEi/VO19KKshJxdOob14eZW+c
	J1mjhfTAGaPStZnKFs74aGwVrENinCYnL4rRPF9XUivgF2+nncn7QPEUA40wacCWbfa7wU
	Zg2YG5Mrt4DhA45CrEbuQI0Y/wsVG6+a5EA4wRDJf85WpPyg+BMDJCOSRycIaSmz1dYNaO
	agHR+fRjxkWFCL2eDXoCgRDPODkcED8+LpS76zjCetKwlMiy0GqxLmt1qz1WViAv0XzDMJ
	wlt/HQ22wvSSaftvMw7UmkG7hjMECfh2R30LXZfURughoCtrr92Ky+w6bBL55Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyMTm2YGvzPQx;
	Tue, 26 Nov 2024 12:34: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 4AQCYqQV038973;
	Tue, 26 Nov 2024 12:34:52 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQCYq31038970;
	Tue, 26 Nov 2024 12:34:52 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 12:34:52 GMT
Message-Id: <202411261234.4AQCYq31038970@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 4cc5d081d8c2 - main - mlx5en: only enable to toggle
  offload caps if they are supported
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4cc5d081d8c23020130c5f30ed31f79fa105de74
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=4cc5d081d8c23020130c5f30ed31f79fa105de74

commit 4cc5d081d8c23020130c5f30ed31f79fa105de74
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-21 06:06:01 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 12:34:34 +0000

    mlx5en: only enable to toggle offload caps if they are supported
    
    Reviewed by:    Ariel Ehrenberg <aehrenberg@nvidia.com>
    Sponsored by:   NVidia networking
    MFC after:      1 week
---
 sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
index e3c075d4dd80..3e7df834d080 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
@@ -3552,6 +3552,24 @@ mlx5e_ioctl(if_t ifp, u_long command, caddr_t data)
 		drv_ioctl_data = (struct siocsifcapnv_driver_data *)data;
 		PRIV_LOCK(priv);
 siocsifcap_driver:
+		if (!mlx5e_is_tlstx_capable(priv->mdev)) {
+			drv_ioctl_data->reqcap &= ~(IFCAP_TXTLS4 |
+			    IFCAP_TXTLS6);
+		}
+		if (!mlx5e_is_tlsrx_capable(priv->mdev)) {
+		        drv_ioctl_data->reqcap &= ~(
+			    IFCAP2_BIT(IFCAP2_RXTLS4) |
+			    IFCAP2_BIT(IFCAP2_RXTLS6));
+		}
+		if (!mlx5e_is_ipsec_capable(priv->mdev)) {
+			drv_ioctl_data->reqcap &=
+			    ~IFCAP2_BIT(IFCAP2_IPSEC_OFFLOAD);
+		}
+		if (!mlx5e_is_ratelimit_capable(priv->mdev)) {
+			drv_ioctl_data->reqcap &= ~(IFCAP_TXTLS_RTLMT |
+			    IFCAP_TXRTLMT);
+		}
+
 		mask = drv_ioctl_data->reqcap ^ if_getcapenable(ifp);
 
 		if (mask & IFCAP_TXCSUM) {

From nobody Tue Nov 26 14:07:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyPXk72JWz5fWQn;
	Tue, 26 Nov 2024 14:07: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyPXk6XRKz4Ss9;
	Tue, 26 Nov 2024 14:07:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732630054;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RkhEE/M+KLvnD7K70Kt40areEXe3dANS0QEsenpPtHQ=;
	b=WwLBohOQYbeRgawRhs9TEUDNocw1yZUD3J5iv+ExWT6IdDbksGdNw831acbI9On73EMiSI
	fwYRWbh23aDjrmTGhlGdHBocBVIcbj/3w5amOhEnJrayieSNO/OwsmB+XUi74AEf+bvQkK
	k7fKrr0AE5gCx0JtYUH1LqXIhFkWdole8K8Xs+068pZg13RRkwO+Oux86Zsn+fUH+3f6Sl
	w2NUvQFFpwdJEJN0FvaU0p7GBcFp7jovm6fIzHnKGpetDNzEe3hf2ejyUdowb+xCp8tz6G
	6JnqPMvYcD+WK16zwUaxQxF7sf8uTA8SpwQ4/xVdMJKM/Bk6vvYbqVl6BdMrNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732630054;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RkhEE/M+KLvnD7K70Kt40areEXe3dANS0QEsenpPtHQ=;
	b=Salr0QmVq2ogOZ9681EJjFf65gqYdQaj1u8Z9ZibmkjaINrzKQyKvuHQgLs90KnoeqptKt
	VbV0JL0n+bOQVk6JcfLCxu4k1IlCghctFbOXUy2wEvsqfxNv7nwxOdjNsv007stcDtHYB8
	I0/J+gwUgoCSGxIAQUT1Ul/WJMFyj6Xr/Fjj1K2mi7wxH3I3FtXwAn2p3040/ywaTu1KOy
	J03POO1hpQwVF2wOzwHWr0ea3PeSxrsBgVH3Bx5ft6xpNw9v78fseMmlWI9EswEFKz1H49
	TAuKYjhJb/NHLuCTLN2mkrJ9vreZXWbTQOg9E9t1V/+GVmJNzbjd58G8BREkiw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732630054; a=rsa-sha256; cv=none;
	b=PDOo+vtQHBtWSesPcopaDN1OajmJe5ufKXyylssB9vhAQfY4/yW8Uk2m3Zblw9HmnZYa2q
	dCNBFCOPXo+qe9H/zauvFGlFi5P6gCEK1E6/BilrYvZYCI1Uyb37ypKhiA7va18jty7cpS
	ExqIBiM5tdlp3DYzxkqDXKAEdXSr4FEGeP3F01K9fFmfpySlC6pnRIRrePtGtTZA4lmv4n
	rBq0kirBi0XmhqxIvzWUCSiCA6S5hqh8pu1c4U1r5nbDoX4rSkojwtbf+MNjl1uWE5uYFN
	dGHmXAN3aVkrKS9dbxPgGxF209dy/r3ap4IvPG5KdIc262cqeSxMw0/VtmK9eA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyPXk68SSzSQ3;
	Tue, 26 Nov 2024 14:07: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 4AQE7Yun010248;
	Tue, 26 Nov 2024 14:07:34 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQE7Y6Y010245;
	Tue, 26 Nov 2024 14:07:34 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:07:34 GMT
Message-Id: <202411261407.4AQE7Y6Y010245@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kristof Provost <kp@FreeBSD.org>
Subject: git: 56b7685ae328 - main - pf: handle IPv6 fragmentation
  for route-to
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 56b7685ae3285aa8c29574f116c6bc2c4fe17cc8
Auto-Submitted: auto-generated

The branch main has been updated by kp:

URL: https://cgit.FreeBSD.org/src/commit/?id=56b7685ae3285aa8c29574f116c6bc2c4fe17cc8

commit 56b7685ae3285aa8c29574f116c6bc2c4fe17cc8
Author:     Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2024-11-26 08:45:13 +0000
Commit:     Kristof Provost <kp@FreeBSD.org>
CommitDate: 2024-11-26 14:06:52 +0000

    pf: handle IPv6 fragmentation for route-to
    
    If a fragmented IPv6 packet hits a route-to rule we have to first prevent
    the pf_test(PF_OUT) check in pf_route6() from refragmenting (and calling
    ip6_output()/ip6_forward()). We then have to refragment in pf_route6() and
    transmit the packets on the route-to interface.
    
    Split pf_refragment6() into two parts, the first to perform the refragmentation,
    the second to call ip6_output()/ip6_forward() and call the former from
    pf_route6().
    
    Add a test case for route-to-ing fragmented IPv6 packets to verify this works
    as expected.
    
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
    Differential Revision:  https://reviews.freebsd.org/D47684
---
 sys/net/pfvar.h                            |  5 ++-
 sys/netpfil/pf/pf.c                        | 18 ++++++--
 sys/netpfil/pf/pf_norm.c                   | 34 ++++++++++-----
 tests/sys/netpfil/pf/fragmentation_pass.sh | 70 ++++++++++++++++++++++++++++++
 4 files changed, 112 insertions(+), 15 deletions(-)

diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h
index 0dc5d4363867..e00101ba2b78 100644
--- a/sys/net/pfvar.h
+++ b/sys/net/pfvar.h
@@ -70,6 +70,8 @@
 
 #ifdef _KERNEL
 
+#define        PF_PFIL_NOREFRAGMENT    0x80000000
+
 #if defined(__arm__)
 #define PF_WANT_32_TO_64_COUNTER
 #endif
@@ -2372,7 +2374,8 @@ void	pf_poolmask(struct pf_addr *, struct pf_addr*,
 	    struct pf_addr *, struct pf_addr *, sa_family_t);
 void	pf_addr_inc(struct pf_addr *, sa_family_t);
 int	pf_max_frag_size(struct mbuf *);
-int	pf_refragment6(struct ifnet *, struct mbuf **, struct m_tag *, bool);
+int	pf_refragment6(struct ifnet *, struct mbuf **, struct m_tag *,
+	    struct ifnet *, bool);
 #endif /* INET6 */
 
 int	pf_multihome_scan_init(int, int, struct pf_pdesc *);
diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index 5a0cad132340..fdec1cecb350 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -7927,6 +7927,7 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp,
     struct pf_kstate *s, struct pf_pdesc *pd, struct inpcb *inp)
 {
 	struct mbuf		*m0, *md;
+	struct m_tag		*mtag;
 	struct sockaddr_in6	dst;
 	struct ip6_hdr		*ip6;
 	struct pfi_kkif		*nkif = NULL;
@@ -8053,8 +8054,8 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp,
 	}
 
 	if (pd->dir == PF_IN) {
-		if (pf_test(AF_INET6, PF_OUT, PFIL_FWD, ifp, &m0, inp,
-		    &pd->act) != PF_PASS) {
+		if (pf_test(AF_INET6, PF_OUT, PFIL_FWD | PF_PFIL_NOREFRAGMENT,
+		    ifp, &m0, inp, &pd->act) != PF_PASS) {
 			SDT_PROBE1(pf, ip6, route_to, drop, __LINE__);
 			goto bad;
 		} else if (m0 == NULL) {
@@ -8087,6 +8088,14 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp,
 	 */
 	if (IN6_IS_SCOPE_EMBED(&dst.sin6_addr))
 		dst.sin6_addr.s6_addr16[1] = htons(ifp->if_index);
+	mtag = m_tag_find(m0, PACKET_TAG_PF_REASSEMBLED, NULL);
+	if (mtag != NULL) {
+		int ret;
+		ret = pf_refragment6(ifp, &m0, mtag, ifp, true);
+		SDT_PROBE2(pf, ip6, route_to, output, ifp, ret);
+		goto done;
+	}
+
 	if ((u_long)m0->m_pkthdr.len <= ifp->if_mtu) {
 		md = m0;
 		pf_dummynet_route(pd, s, r, ifp, sintosa(&dst), &md);
@@ -9474,14 +9483,15 @@ eat_pkt:
 	if (s)
 		PF_STATE_UNLOCK(s);
 
+out:
 #ifdef INET6
 	/* If reassembled packet passed, create new fragments. */
 	if (af == AF_INET6 && action == PF_PASS && *m0 && dir == PF_OUT &&
+	    (! (pflags & PF_PFIL_NOREFRAGMENT)) &&
 	    (mtag = m_tag_find(pd.m, PACKET_TAG_PF_REASSEMBLED, NULL)) != NULL)
-		action = pf_refragment6(ifp, m0, mtag, pflags & PFIL_FWD);
+		action = pf_refragment6(ifp, m0, mtag, NULL, pflags & PFIL_FWD);
 #endif
 
-out:
 	pf_sctp_multihome_delayed(&pd, kif, s, action);
 
 	return (action);
diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c
index 8779d599900e..6e19c23d0b73 100644
--- a/sys/netpfil/pf/pf_norm.c
+++ b/sys/netpfil/pf/pf_norm.c
@@ -42,6 +42,7 @@
 #include <sys/socket.h>
 
 #include <net/if.h>
+#include <net/if_var.h>
 #include <net/vnet.h>
 #include <net/pfvar.h>
 #include <net/if_pflog.h>
@@ -49,6 +50,8 @@
 #include <netinet/in.h>
 #include <netinet/ip.h>
 #include <netinet/ip_var.h>
+#include <netinet6/in6_var.h>
+#include <netinet6/nd6.h>
 #include <netinet6/ip6_var.h>
 #include <netinet6/scope6_var.h>
 #include <netinet/tcp.h>
@@ -958,7 +961,7 @@ pf_max_frag_size(struct mbuf *m)
 
 int
 pf_refragment6(struct ifnet *ifp, struct mbuf **m0, struct m_tag *mtag,
-    bool forward)
+    struct ifnet *rt, bool forward)
 {
 	struct mbuf		*m = *m0, *t;
 	struct ip6_hdr		*hdr;
@@ -1029,16 +1032,27 @@ pf_refragment6(struct ifnet *ifp, struct mbuf **m0, struct m_tag *mtag,
 		m->m_flags |= M_SKIP_FIREWALL;
 		memset(&pd, 0, sizeof(pd));
 		pd.pf_mtag = pf_find_mtag(m);
-		if (error == 0)
-			if (forward) {
-				MPASS(m->m_pkthdr.rcvif != NULL);
-				ip6_forward(m, 0);
-			} else {
-				(void)ip6_output(m, NULL, NULL, 0, NULL, NULL,
-				    NULL);
-			}
-		else
+		if (error != 0) {
 			m_freem(m);
+			continue;
+		}
+		if (rt != NULL) {
+			struct sockaddr_in6	dst;
+			hdr = mtod(m, struct ip6_hdr *);
+
+			bzero(&dst, sizeof(dst));
+			dst.sin6_family = AF_INET6;
+			dst.sin6_len = sizeof(dst);
+			dst.sin6_addr = hdr->ip6_dst;
+
+			nd6_output_ifp(rt, rt, m, &dst, NULL);
+		} else if (forward) {
+			MPASS(m->m_pkthdr.rcvif != NULL);
+			ip6_forward(m, 0);
+		} else {
+			(void)ip6_output(m, NULL, NULL, 0, NULL, NULL,
+			    NULL);
+		}
 	}
 
 	return (action);
diff --git a/tests/sys/netpfil/pf/fragmentation_pass.sh b/tests/sys/netpfil/pf/fragmentation_pass.sh
index 2399eb0374bb..68b078d42ddc 100644
--- a/tests/sys/netpfil/pf/fragmentation_pass.sh
+++ b/tests/sys/netpfil/pf/fragmentation_pass.sh
@@ -155,6 +155,75 @@ v6_cleanup()
 	pft_cleanup
 }
 
+atf_test_case "v6_route_to" "cleanup"
+v6_route_to_head()
+{
+	atf_set descr 'Test IPv6 reassembly combined with route-to'
+	atf_set require.user root
+}
+
+v6_route_to_body()
+{
+	pft_init
+}
+
+v6_route_to_cleanup()
+{
+	pft_cleanup
+
+	epair_send=$(vnet_mkepair)
+	epair_link=$(vnet_mkepair)
+
+	vnet_mkjail alcatraz ${epair_send}b ${epair_link}a
+	vnet_mkjail singsing ${epair_link}b
+
+	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 no_dad up
+
+	jexec alcatraz ifconfig ${epair_send}b inet6 2001:db8:42::2/64 no_dad up
+	jexec alcatraz ifconfig ${epair_link}a inet6 2001:db8:43::2/64 no_dad up
+	jexec alcatraz sysctl net.inet6.ip6.forwarding=1
+
+	jexec singsing ifconfig ${epair_link}b inet6 2001:db8:43::3/64 no_dad up
+	jexec singsing route add -6 2001:db8:42::/64 2001:db8:43::2
+	route add -6 2001:db8:43::/64 2001:db8:42::2
+
+	jexec alcatraz ifconfig ${epair_send}b inet6 -ifdisabled
+	jexec alcatraz ifconfig ${epair_link}a inet6 -ifdisabled
+	jexec singsing ifconfig ${epair_link}b inet6 -ifdisabled
+	ifconfig ${epair_send}a inet6 -ifdisabled
+
+	jexec alcatraz pfctl -e
+	pft_set_rules alcatraz \
+		"set reassemble yes" \
+		"pass" \
+		"pass in route-to (${epair_link}a 2001:db8:43::3) inet6 proto icmp6 from any to 2001:db8:43::3 keep state"
+
+	# Forwarding test
+	atf_check -s exit:0 -o ignore \
+		ping -6 -c 1 2001:db8:43::3
+
+	atf_check -s exit:0 -o ignore \
+		ping -6 -c 1 -s 4500 2001:db8:43::3
+
+	atf_check -s exit:0 -o ignore\
+		ping -6 -c 1 -b 70000 -s 65000 2001:db8:43::3
+
+	# Now test this without fragmentation
+	pft_set_rules alcatraz \
+		"set reassemble no" \
+		"pass" \
+		"pass in route-to (${epair_link}a 2001:db8:43::3) inet6 proto icmp6 from any to 2001:db8:43::3 keep state"
+
+	atf_check -s exit:0 -o ignore \
+		ping -6 -c 1 2001:db8:43::3
+
+	atf_check -s exit:0 -o ignore \
+		ping -6 -c 1 -s 4500 2001:db8:43::3
+
+	atf_check -s exit:0 -o ignore\
+		ping -6 -c 1 -b 70000 -s 65000 2001:db8:43::3
+}
+
 atf_test_case "mtu_diff" "cleanup"
 mtu_diff_head()
 {
@@ -544,6 +613,7 @@ atf_init_test_cases()
 {
 	atf_add_test_case "too_many_fragments"
 	atf_add_test_case "v6"
+	atf_add_test_case "v6_route_to"
 	atf_add_test_case "mtu_diff"
 	atf_add_test_case "overreplace"
 	atf_add_test_case "overindex"

From nobody Tue Nov 26 14:48:53 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQSQ0dCmz5fYp3;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQSQ09V7z4WKX;
	Tue, 26 Nov 2024 14:48:54 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632534;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ybMOpP/NCJh9AkLKuc6sY8dAVu3uWrYKYIbYJNltxHY=;
	b=GYavFab0OTRNB06ywXdiJNyG0G5Wkyx6UXzIImlcCFDKFudBo/AiQGpqstuxKy5UocO1fT
	w10AoH+Lf60ieQZz+EfNxxc2bqhL4pNo0AK25ETIcYSpF6UZcDVeDjyQpINvxR/WG/83p7
	0lYTBxm9QQzQyrrWJbLBPpN3uueHvjZWOn+Xom8QCdPZd7qKC8MD/0rsDZqtR43HAtu194
	PeYhuTVkcdA9ERuN/v/UC/6jOBZCCL+ZSm+onVCxmcu7jrYFAicykr+QhX2SwWY3HhzlLa
	WFncYl7Xv5mbvzXe2lPQtLaG1BFW88GpP2iGU5aZoYDa26N88Q6cLFoV/uRxyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632534;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ybMOpP/NCJh9AkLKuc6sY8dAVu3uWrYKYIbYJNltxHY=;
	b=FnbL91gCL21Qc7IKh5NXoPiSbjEDF5NaYCVyTwVQyp0w49PpQ3Dz7mTZGMi418BrPp+RPj
	hqqF2zt6G2IEcxVMEZ2atndrZ5y1gyuPvRCvAcVWK/IcaQz2ppP9DEffMk0JvWzZjDaes3
	zWO/On3Ccy9LlxKjCAbHcA4O4RGmE1oCLn0HFh54ManFTEWs4DhHB80X33mobvVArrTwid
	XBxMz4tN96WV5Dfi5v3totswyFHYAyztLXvHkKxKfmecqFcUAa/SaSmz1DCbm8cdhNhM3j
	LQsJ5wPew+sHDUg+n237z5tIaJCW4AJs7HiBVvjrUzGmtHwq36bN4U82NC1Qdw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632534; a=rsa-sha256; cv=none;
	b=uKaKSbzP6esipP46tFksTZVZwkqIOpGgKFuIKzMBLuI3y0XxKkeJoAcZZabDA5Ei0o3hRQ
	Vr77HdAukdM9yit6iy5qcK2449KMmCnfm19nRsmN1pX7KH7f5OoqtchPEb4E1none1TqGX
	nvDewUGXHYXMVueje0YClUYEuXsGROEu/SIus4H6TGVcgmZR2DbnVvWJZXZcuDRyVLpHRo
	iawlA4HFGBi+Om4+Fq7j3t1vy+VNoVdljb5HMoxeNA3wkyw9PrUhl4BFXWbAHqlDuJRNDX
	EI92FKxVWVnKy8QnnZMYXfsedV3XjZACwLTNHqr8/iiRoBcBBAkhtvpYGgtzqA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQSP6tqmzTrs;
	Tue, 26 Nov 2024 14:48: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 4AQEmr5F084036;
	Tue, 26 Nov 2024 14:48:53 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmrRw084033;
	Tue, 26 Nov 2024 14:48:53 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:53 GMT
Message-Id: <202411261448.4AQEmrRw084033@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 5bd08172b415 - main - snd_dummy: Fix callout(9) races
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5bd08172b4150503c9cf60ffe3c97716c5bf6fa1
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=5bd08172b4150503c9cf60ffe3c97716c5bf6fa1

commit 5bd08172b4150503c9cf60ffe3c97716c5bf6fa1
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:02 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:02 +0000

    snd_dummy: Fix callout(9) races
    
    Use callout_init_mtx(9) to associate the callback with the driver's
    lock. Also make sure the callout is stopped properly during detach.
    
    While here, introduce a dummy_active() function to know when it's
    appropriate to stop or not reschedule the callout.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch, markj
    Differential Revision:  https://reviews.freebsd.org/D47459
---
 sys/dev/sound/dummy.c | 34 ++++++++++++++++++++++++++--------
 1 file changed, 26 insertions(+), 8 deletions(-)

diff --git a/sys/dev/sound/dummy.c b/sys/dev/sound/dummy.c
index 9013fd023a7e..b637171d82e4 100644
--- a/sys/dev/sound/dummy.c
+++ b/sys/dev/sound/dummy.c
@@ -67,6 +67,24 @@ struct dummy_softc {
 	struct mtx *lock;
 };
 
+static bool
+dummy_active(struct dummy_softc *sc)
+{
+	struct dummy_chan *ch;
+	int i;
+
+	snd_mtxassert(sc->lock);
+
+	for (i = 0; i < sc->chnum; i++) {
+		ch = &sc->chans[i];
+		if (ch->run)
+			return (true);
+	}
+
+	/* No channel is running at the moment. */
+	return (false);
+}
+
 static void
 dummy_chan_io(void *arg)
 {
@@ -74,7 +92,9 @@ dummy_chan_io(void *arg)
 	struct dummy_chan *ch;
 	int i = 0;
 
-	snd_mtxlock(sc->lock);
+	/* Do not reschedule if no channel is running. */
+	if (!dummy_active(sc))
+		return;
 
 	for (i = 0; i < sc->chnum; i++) {
 		ch = &sc->chans[i];
@@ -89,8 +109,6 @@ dummy_chan_io(void *arg)
 		snd_mtxlock(sc->lock);
 	}
 	callout_schedule(&sc->callout, 1);
-
-	snd_mtxunlock(sc->lock);
 }
 
 static int
@@ -179,15 +197,15 @@ dummy_chan_trigger(kobj_t obj, void *data, int go)
 
 	switch (go) {
 	case PCMTRIG_START:
-		if (!callout_active(&sc->callout))
-			callout_reset(&sc->callout, 1, dummy_chan_io, sc);
 		ch->ptr = 0;
 		ch->run = 1;
+		callout_reset(&sc->callout, 1, dummy_chan_io, sc);
 		break;
 	case PCMTRIG_STOP:
 	case PCMTRIG_ABORT:
 		ch->run = 0;
-		if (callout_active(&sc->callout))
+		/* If all channels are stopped, stop the callout as well. */
+		if (!dummy_active(sc))
 			callout_stop(&sc->callout);
 	default:
 		break;
@@ -292,6 +310,7 @@ dummy_attach(device_t dev)
 	sc = device_get_softc(dev);
 	sc->dev = dev;
 	sc->lock = snd_mtxcreate(device_get_nameunit(dev), "snd_dummy softc");
+	callout_init_mtx(&sc->callout, sc->lock, 0);
 
 	sc->cap_fmts[0] = SND_FORMAT(AFMT_S32_LE, 2, 0);
 	sc->cap_fmts[1] = SND_FORMAT(AFMT_S24_LE, 2, 0);
@@ -316,7 +335,6 @@ dummy_attach(device_t dev)
 	if (pcm_register(dev, status))
 		return (ENXIO);
 	mixer_init(dev, &dummy_mixer_class, sc);
-	callout_init(&sc->callout, 1);
 
 	return (0);
 }
@@ -327,8 +345,8 @@ dummy_detach(device_t dev)
 	struct dummy_softc *sc = device_get_softc(dev);
 	int err;
 
-	callout_drain(&sc->callout);
 	err = pcm_unregister(dev);
+	callout_drain(&sc->callout);
 	snd_mtxfree(sc->lock);
 
 	return (err);

From nobody Tue Nov 26 14:48:55 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQSR1dS1z5fYZT;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQSR1B2mz4WdB;
	Tue, 26 Nov 2024 14:48:55 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632535;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=R6WAnTGHdEaX6N2kYErAo+hQQwZzmMn5T6sFzBsHW6U=;
	b=spBVQryfArBUKutqORTESFPP7oAd0ew8ctoP2QgfLCtol2qvNV6JXq5w7jK/rEkYfDzo9T
	kDgr0b+LLfJnWzvgVfZn/Gl+/NIdY62W1Nq0G1/Us6b0dCcuZZK3v9V6grMg41+CfCd1z5
	A3M1RYZ1vs/PMiTWioksGz12H2mzR9SDqozUXRpa4eyyb+KP7yalISLfne0/qvtQvuoWAV
	GY9DvPU7XwhB9COlQIEyu/1GvFgTc4hyk5hxtWiShnf7xxlAg3hqbeeQH1HsQPJGimcf2z
	RTs2+1QPQNbNV58WvYnN8dws3Lwlh8cQMvFtb0rOzu3dKU6F4qbrC8GwPwf8XQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632535;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=R6WAnTGHdEaX6N2kYErAo+hQQwZzmMn5T6sFzBsHW6U=;
	b=C28B4KANac27tzLK/NannK4EWcriH32iutwfSDW4dedkxpT28ZnrCL81iWuOwCVVK2mNL3
	8mSPA2FU5bITbqD63feo7IrKmVupULsP3AIIWKBuOBL+w6CbtAH2ukKOG5Df/32tJHHPHh
	g+6UiAH0/xPXPEBY8m7yR6hhNt361/BiA6Ad9wAhQpDVV54u4LbI/yJagsufZZ20bXEPEx
	4GplyagSq4l2rpLs8o7gW/e38RD0SlHodWYngxexv1ZzQ3TgRuxTbfwIo4N7Jr4RIy4ttD
	wTbWOxCc48DkaKkakgd0ORp6C5hEwfumZ9/qKxBBXKS/9fVUIbjxjmdSvxACQw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632535; a=rsa-sha256; cv=none;
	b=krH7WAkBDW+TYYYJ4+fCFiHoY/n0P0POMzrdCh5u7Bt0QrGVP6XPiuDUshbQsudcNlvtye
	r8ILvX5K0oKfjwmRfAIrrb3Lnphs3Q4cCTHTiPVeXcapXBIGlht9SY9Cq00JrZVaHOf7Mh
	QSt1wYwI+11pjIEUir1SSdSciTxANBWDrpw9JbXTSopz6GeAg+sNlAlgRE/By8XBL4k7le
	jg4hluy735iYunxDfhYbRoaSEA7X/FXop45q8+zwh+oIN3gglvFnvQ9IgmErpbJAKaoOgA
	NHKbg3iTWYN/bjuWgWX3lgK9IugQX5DkUeZuQjO5yehQ86vYAnP51BN2UPQJQg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQSR0nCyzSy9;
	Tue, 26 Nov 2024 14:48: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 4AQEmtPc084081;
	Tue, 26 Nov 2024 14:48:55 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmt7m084078;
	Tue, 26 Nov 2024 14:48:55 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:55 GMT
Message-Id: <202411261448.4AQEmt7m084078@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 5ac39263d825 - main - sound: Fix chn_trigger() and
  vchan_trigger() races
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5ac39263d825d7b2f8a89614a63fee90ffc77c07
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=5ac39263d825d7b2f8a89614a63fee90ffc77c07

commit 5ac39263d825d7b2f8a89614a63fee90ffc77c07
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:18 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:18 +0000

    sound: Fix chn_trigger() and vchan_trigger() races
    
    Consider the following scenario:
    
    1. CHN currently has its trigger set to PCMTRIG_STOP.
    2. Thread A locks CHN, calls CHANNEL_TRIGGER(PCMTRIG_START), sets the
       trigger to PCMTRIG_START and unlocks.
    3. Thread B picks up the lock, calls CHANNEL_TRIGGER(PCMTRIG_ABORT) and
       returns a non-zero value, so it returns from chn_trigger() as well.
    4. Thread A picks up the lock and adds CHN to the list, which is
       _wrong_, because the last call to CHANNEL_TRIGGER() was with
       PCMTRIG_ABORT, meaning the channel is stopped, yet we are adding it
       to the list and marking it as started.
    
    Another problematic scenario:
    
    1. Thread A locks CHN, sets the trigger to PCMTRIG_ABORT, and unlocks
       CHN. It then locks PCM and _removes_ CHN from the list.
    2. In the meantime, since thread A unlocked CHN, thread B has locked it,
       set the trigger to PCMTRIG_START, unlocked it, and is now blocking on
       PCM held by thread A.
    3. At the same time, thread C locks CHN, sets the trigger back to
       PCMTRIG_ABORT, unlocks CHN, and is also blocking on PCM. However,
       once thread A unlocks PCM, because thread C is higher-priority than
       thread B, it picks up the PCM lock instead of thread B, and because
       CHN is already removed from the list, and thread B hasn't added it
       back yet, we take a page fault in CHN_REMOVE() by trying to remove a
       non-existent element.
    
    To fix the former scenario, set the channel trigger before the call to
    CHANNEL_TRIGGER() (could also come after, doesn't really matter) and
    check if anything changed one we lock CHN back.
    
    To fix the latter scenario, use the SAFE variants of CHN_INSERT_HEAD()
    and CHN_REMOVE(). A similar scenario can occur in vchan_trigger(), so do
    the trigger setting after we've locked the parent channel.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch
    Differential Revision:  https://reviews.freebsd.org/D47461
---
 sys/dev/sound/pcm/channel.c | 56 +++++++++++++++++++++++----------------------
 sys/dev/sound/pcm/vchan.c   | 11 ++++-----
 2 files changed, 34 insertions(+), 33 deletions(-)

diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c
index eb70e910f51d..59cdb8cd07f5 100644
--- a/sys/dev/sound/pcm/channel.c
+++ b/sys/dev/sound/pcm/channel.c
@@ -2318,44 +2318,46 @@ chn_trigger(struct pcm_channel *c, int go)
 	if (go == c->trigger)
 		return (0);
 
+	if (snd_verbose > 3) {
+		device_printf(c->dev, "%s() %s: calling go=0x%08x , "
+		    "prev=0x%08x\n", __func__, c->name, go, c->trigger);
+	}
+
+	c->trigger = go;
 	ret = CHANNEL_TRIGGER(c->methods, c->devinfo, go);
 	if (ret != 0)
 		return (ret);
 
+	CHN_UNLOCK(c);
+	PCM_LOCK(d);
+	CHN_LOCK(c);
+
+	/*
+	 * Do nothing if another thread set a different trigger while we had
+	 * dropped the mutex.
+	 */
+	if (go != c->trigger) {
+		PCM_UNLOCK(d);
+		return (0);
+	}
+
+	/*
+	 * Use the SAFE variants to prevent inserting/removing an already
+	 * existing/missing element.
+	 */
 	switch (go) {
 	case PCMTRIG_START:
-		if (snd_verbose > 3)
-			device_printf(c->dev,
-			    "%s() %s: calling go=0x%08x , "
-			    "prev=0x%08x\n", __func__, c->name, go,
-			    c->trigger);
-		if (c->trigger != PCMTRIG_START) {
-			c->trigger = go;
-			CHN_UNLOCK(c);
-			PCM_LOCK(d);
-			CHN_INSERT_HEAD(d, c, channels.pcm.busy);
-			PCM_UNLOCK(d);
-			CHN_LOCK(c);
-			chn_syncstate(c);
-		}
+		CHN_INSERT_HEAD_SAFE(d, c, channels.pcm.busy);
+		PCM_UNLOCK(d);
+		chn_syncstate(c);
 		break;
 	case PCMTRIG_STOP:
 	case PCMTRIG_ABORT:
-		if (snd_verbose > 3)
-			device_printf(c->dev,
-			    "%s() %s: calling go=0x%08x , "
-			    "prev=0x%08x\n", __func__, c->name, go,
-			    c->trigger);
-		if (c->trigger == PCMTRIG_START) {
-			c->trigger = go;
-			CHN_UNLOCK(c);
-			PCM_LOCK(d);
-			CHN_REMOVE(d, c, channels.pcm.busy);
-			PCM_UNLOCK(d);
-			CHN_LOCK(c);
-		}
+		CHN_REMOVE_SAFE(d, c, channels.pcm.busy);
+		PCM_UNLOCK(d);
 		break;
 	default:
+		PCM_UNLOCK(d);
 		break;
 	}
 
diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c
index ed13a3c55961..4165d0712b94 100644
--- a/sys/dev/sound/pcm/vchan.c
+++ b/sys/dev/sound/pcm/vchan.c
@@ -146,20 +146,19 @@ vchan_trigger(kobj_t obj, void *data, int go)
 	int ret, otrigger;
 
 	info = data;
-
-	if (!PCMTRIG_COMMON(go) || go == info->trigger)
-		return (0);
-
 	c = info->channel;
 	p = c->parentchannel;
-	otrigger = info->trigger;
-	info->trigger = go;
 
 	CHN_LOCKASSERT(c);
+	if (!PCMTRIG_COMMON(go) || go == info->trigger)
+		return (0);
 
 	CHN_UNLOCK(c);
 	CHN_LOCK(p);
 
+	otrigger = info->trigger;
+	info->trigger = go;
+
 	switch (go) {
 	case PCMTRIG_START:
 		if (otrigger != PCMTRIG_START)

From nobody Tue Nov 26 14:48:56 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQSS2w41z5fYp5;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQSS1j3zz4WW7;
	Tue, 26 Nov 2024 14:48:56 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632536;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=sjlYeEtzAcgvRhCNpQHXqQ4vhjox24UFH+2mkLx9Opc=;
	b=K5tDvPDlKZ0bxSgVstiP+V5Pa+og/1Qmui0X8RYOcLbQt9vsjBY/jwAJ5D1hpxM0bWbs7O
	cS0EhsnRCRRe5F5EWscnRBH+OwZXCa5aBl0CX6lmyato9wr80AEhX4Bfw21VTzJm7QI1F/
	jOzJ5qLwgJd4EkGlvNMEZFDaFzC6g6OXOQqGoEqsaL71juT/loFYmwRqYcnyJnSg84wEz9
	YLuHp2HdNYsb1VhVSx5lCkzXzbrxUSv7zR0Jrmq9xVMc8g5zUamIc1B0PTDOmb+X8MlqGH
	bE89nOTO97BjJDcv5/+tM1DojCGGRK+GKDeVw+z8/F/oaICXWuQDbwXzdI7Tvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632536;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=sjlYeEtzAcgvRhCNpQHXqQ4vhjox24UFH+2mkLx9Opc=;
	b=pRtpDnvd0L6o9GdObJnAVhv90N+ZXKopHg/iOyoe8LMcvIjvgWkomyerRj+vrDqDj8LDR2
	2yML7eNeEQpluWAFPRQCPuJlk5+CS88EGrGmq7ogbZoBpM/nUJ2jz5z7I5dSKxseslP5OQ
	GBmNmsg/lB/l11ZDQKhdcj+oGIqPWAak24EqazDyCHZa+jxa+eyXa4U7MRylEFSXWp1T1I
	3PjW7G6aK+BAdFGXG8YpeG/FxZkCIShmXRM1zBGlSM8EKxziMvrNvGmN5wbRnkaKolKrnu
	RqhB9hdbsazyz7lzJt+VQBzvXU0ZJP/3pVgS0bH6HBHfBAi28aBF49mtjMCEJQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632536; a=rsa-sha256; cv=none;
	b=xzxJlOmPmrcvNsasSPeYX0bfxueiq3NWcMnqBrBAi4fnWymFRuyzvqaLG2ygcs+wFC8tVy
	tKUTXaoY92Ii9LXkupka1v2Z3RKrVkD/YjXkCvEP7PHg1wsVFt66PFwDPIpcRvnacUNae+
	lx+GIYhNTlxqz3Xap+VCFrjlUJqSuDzOYdNlJCc8e83etQV6o2vq43rpSK77cbrDaqHfy2
	HiIgDIiE5aoWwxiPjPZeLrTjIyAVT9KDiJheYPcVt1wRoUu6UEBdTI2DjVhbp6WWNiSOD3
	qzHy6EZcc6PRYW4fzaH+0twDInDFGTbK706ZCM8vza1Yx2usyMl1XX6bnrme2A==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQSS1JJXzTPW;
	Tue, 26 Nov 2024 14:48: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 4AQEmuAM084127;
	Tue, 26 Nov 2024 14:48:56 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmuib084124;
	Tue, 26 Nov 2024 14:48:56 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:56 GMT
Message-Id: <202411261448.4AQEmuib084124@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 2839ad58dd8a - main - sound: Fix hot-unload panics
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 2839ad58dd8a4cf5294180fc599800c437a8d4d8
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=2839ad58dd8a4cf5294180fc599800c437a8d4d8

commit 2839ad58dd8a4cf5294180fc599800c437a8d4d8
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:24 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:24 +0000

    sound: Fix hot-unload panics
    
    This patch fixes multiple different panic scenarios occuring during
    hot-unload:
    
    1. The channel is unlocked in chn_read()/chn_write() for uiomove(9) and
       in the meantime we enter pcm_killchans() and free it. By the time we
       have returned from userland and try to lock it back, the channel will
       have been freed.
    2. The parent channel has been freed in pcm_killchans(), but at the same
       time, some yet-unstopped vchan's chn_read()/chn_write() calls
       chn_start(), which eventually calls vchan_trigger(), which references
       the freed parent.
    3. PCM_WAIT() panics because it references a freed PCM lock.
    
    For scenarios 1 and 2, refactor pcm_killchans() to first make sure all
    channels have been stopped, and then proceed to free them one by one, as
    opposed to freeing the first free channel until all channels have been
    freed. This change makes the code more robust, but might introduce some
    performance overhead when many channels are allocated, since we
    continuously loop through the channel list until all of them are
    stopped, and then we loop one last time to free them.
    
    For scenario 3, restructure the code so that we can use destroy_dev(9)
    instead of destroy_dev_sched(9) in dsp_destroy_dev(). Because
    destroy_dev(9) blocks until all references to the device have went away,
    we ensure that the PCM cv and lock will be freed safely.
    
    While here, move the delete_unrhdr(9) calls to pcm_killchans() and
    re-order some lines.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch
    Differential Revision:  https://reviews.freebsd.org/D47462
---
 sys/dev/sound/pcm/dsp.c   |  2 +-
 sys/dev/sound/pcm/sound.c | 97 ++++++++++++++++++++---------------------------
 2 files changed, 43 insertions(+), 56 deletions(-)

diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c
index 6a59bcfc1ade..0f19f064a227 100644
--- a/sys/dev/sound/pcm/dsp.c
+++ b/sys/dev/sound/pcm/dsp.c
@@ -137,7 +137,7 @@ dsp_destroy_dev(device_t dev)
 	struct snddev_info *d;
 
 	d = device_get_softc(dev);
-	destroy_dev_sched(d->dsp_dev);
+	destroy_dev(d->dsp_dev);
 }
 
 static void
diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c
index fc9d13593b9e..c3e7fee41ab3 100644
--- a/sys/dev/sound/pcm/sound.c
+++ b/sys/dev/sound/pcm/sound.c
@@ -211,40 +211,53 @@ static void
 pcm_killchans(struct snddev_info *d)
 {
 	struct pcm_channel *ch;
-	bool found;
+	bool again;
 
 	PCM_BUSYASSERT(d);
-	do {
-		found = false;
+	KASSERT(!PCM_REGISTERED(d), ("%s(): still registered\n", __func__));
+
+	for (;;) {
+		again = false;
+		/* Make sure all channels are stopped. */
 		CHN_FOREACH(ch, d, channels.pcm) {
 			CHN_LOCK(ch);
-			/*
-			 * Make sure no channel has went to sleep in the
-			 * meantime.
-			 */
-			chn_shutdown(ch);
-			/*
-			 * We have to give a thread sleeping in chn_sleep() a
-			 * chance to observe that the channel is dead.
-			 */
-			if ((ch->flags & CHN_F_SLEEPING) == 0) {
-				found = true;
+			if ((ch->flags & CHN_F_SLEEPING) == 0 &&
+			    CHN_STOPPED(ch) && ch->inprog == 0) {
 				CHN_UNLOCK(ch);
-				break;
+				continue;
 			}
+			chn_shutdown(ch);
+			if (ch->direction == PCMDIR_PLAY)
+				chn_flush(ch);
+			else
+				chn_abort(ch);
 			CHN_UNLOCK(ch);
+			again = true;
 		}
-
 		/*
-		 * All channels are still sleeping. Sleep for a bit and try
-		 * again to see if any of them is awake now.
+		 * Some channels are still active. Sleep for a bit and try
+		 * again.
 		 */
-		if (!found) {
-			pause_sbt("pcmkillchans", SBT_1MS * 5, 0, 0);
-			continue;
-		}
+		if (again)
+			pause_sbt("pcmkillchans", mstosbt(5), 0, 0);
+		else
+			break;
+	}
+
+	/* All channels are finally dead. */
+	while (!CHN_EMPTY(d, channels.pcm)) {
+		ch = CHN_FIRST(d, channels.pcm);
 		chn_kill(ch);
-	} while (!CHN_EMPTY(d, channels.pcm));
+	}
+
+	if (d->p_unr != NULL)
+		delete_unrhdr(d->p_unr);
+	if (d->vp_unr != NULL)
+		delete_unrhdr(d->vp_unr);
+	if (d->r_unr != NULL)
+		delete_unrhdr(d->r_unr);
+	if (d->vr_unr != NULL)
+		delete_unrhdr(d->vr_unr);
 }
 
 static int
@@ -512,7 +525,6 @@ int
 pcm_unregister(device_t dev)
 {
 	struct snddev_info *d;
-	struct pcm_channel *ch;
 
 	d = device_get_softc(dev);
 
@@ -525,28 +537,15 @@ pcm_unregister(device_t dev)
 	PCM_WAIT(d);
 
 	d->flags |= SD_F_DETACHING;
+	d->flags |= SD_F_DYING;
+	d->flags &= ~SD_F_REGISTERED;
 
 	PCM_ACQUIRE(d);
 	PCM_UNLOCK(d);
 
-	CHN_FOREACH(ch, d, channels.pcm) {
-		CHN_LOCK(ch);
-		/*
-		 * Do not wait for the timeout in chn_read()/chn_write(). Wake
-		 * up the sleeping thread and kill the channel.
-		 */
-		chn_shutdown(ch);
-		chn_abort(ch);
-		CHN_UNLOCK(ch);
-	}
+	pcm_killchans(d);
 
-	/* remove /dev/sndstat entry first */
-	sndstat_unregister(dev);
-
-	PCM_LOCK(d);
-	d->flags |= SD_F_DYING;
-	d->flags &= ~SD_F_REGISTERED;
-	PCM_UNLOCK(d);
+	PCM_RELEASE_QUICK(d);
 
 	if (d->play_sysctl_tree != NULL) {
 		sysctl_ctx_free(&d->play_sysctl_ctx);
@@ -557,24 +556,12 @@ pcm_unregister(device_t dev)
 		d->rec_sysctl_tree = NULL;
 	}
 
+	sndstat_unregister(dev);
+	mixer_uninit(dev);
 	dsp_destroy_dev(dev);
-	(void)mixer_uninit(dev);
-
-	pcm_killchans(d);
 
-	PCM_LOCK(d);
-	PCM_RELEASE(d);
 	cv_destroy(&d->cv);
-	PCM_UNLOCK(d);
 	snd_mtxfree(d->lock);
-	if (d->p_unr != NULL)
-		delete_unrhdr(d->p_unr);
-	if (d->vp_unr != NULL)
-		delete_unrhdr(d->vp_unr);
-	if (d->r_unr != NULL)
-		delete_unrhdr(d->r_unr);
-	if (d->vr_unr != NULL)
-		delete_unrhdr(d->vr_unr);
 
 	if (snd_unit == device_get_unit(dev)) {
 		snd_unit = pcm_best_unit(-1);

From nobody Tue Nov 26 14:48:57 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQST56g4z5fYtl;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQST2n1fz4Wdk;
	Tue, 26 Nov 2024 14:48:57 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632537;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GssVo29AwvJ0rl077w8/pmWLdndBRea6FWwQ6GDX/X4=;
	b=oX2FxgsCfCjn+o0psPvGa2/bdWzEzu5lgBXjr1TWCMeUg2KNW5a5eSI7bH0nZ965wQtsKi
	TRN1kYgH45bKErdRLgPmp4thVvgLghVnLXReDgBRzQSRkAlFMsXk0JIlj50qZU0wp54oRg
	ldRngiQuc73vUEgFZg+qIcnhclgROTOj9XDJLOCzb85DotI3U+A1zyYVVmDQ9nzKlzp2SN
	j2hFvIpq4uisI6dXwagNgXJp/nW/17vIrHs6eMtTU0mxtbCi6DD5JHVEynYubHB1Lr3trf
	wNc9xZgYiDnPIQ2u+5RmPI/PDWRKyYs/F2NxoKR5+G9TBzrraclwc1gwmx3qxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632537;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GssVo29AwvJ0rl077w8/pmWLdndBRea6FWwQ6GDX/X4=;
	b=XR00fmm1Y1r9rFQn/fxc+BWI7MHP7bKW9eXBw65HaKp36eHvSfFiRppXHKg4k0/h9mMZfE
	TPMfYRPXSZp7bfuFbjH+pgPOOmrJe+wucpaCyLzCt6QMmnlISdotdf/DlDh5hUtWt49Kbb
	DOfGIUVAlhWOfZYiS/BFpPQzy27K9J4urJ6/RYEcXQjxqr+ndjZkJK3OwzZjiK2TrsLN6e
	ZFHgda8zL2rhEDKNlmVgwjDXzgqn4jDS229EILgFNJmh+GWb3OsXtxIgNYtnvY7nE/ph/7
	BovN8VDLiFURL/6eB0c2V8ScaMdUG0xchufVVeS7e8iAn4cQHRJrXVxWOY3S+A==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632537; a=rsa-sha256; cv=none;
	b=xL35QDNKOw+YJqqbdj6e5HoG5FOS0De24orniaDjBxuYfXaM3gZvk+iJJZ+nOk4nWlT6hQ
	hMeuY3DXqjdSRujtC9s2u2x58gkKYpDTZeWLtHR0LS+l5TLB2Xk+x69xIMFzZHYBSyEsSD
	Uvq0Cc1IAFBkJn10kYOZzIByABopaGGcglIm5FpWC1Ke3SiSpFSNzJPHSYkRZ+o3gyo68V
	wbXfGjKO8+OaY5rT2QaRiwv8hWLHCqskc1HmhLpfnU5FbC7GH41ynfMWEsAaNFZQ+PCWnN
	grw5yqQgfn5fOrg7cXlBiKaeNWmNSaZta7ZZ0GEc1Aqw1ywg7QVoSt/sJ06RhQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQST2LP5zTxL;
	Tue, 26 Nov 2024 14:48: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 4AQEmvux084172;
	Tue, 26 Nov 2024 14:48:57 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmvXE084169;
	Tue, 26 Nov 2024 14:48:57 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:57 GMT
Message-Id: <202411261448.4AQEmvXE084169@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 6d4c59e26189 - main - sound: Remove PCM_DETACHING(),
  SD_F_DETACHING and SD_F_DYING
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6d4c59e26189a8c19fd0832e89f9b089330cbfcb
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=6d4c59e26189a8c19fd0832e89f9b089330cbfcb

commit 6d4c59e26189a8c19fd0832e89f9b089330cbfcb
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:30 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:30 +0000

    sound: Remove PCM_DETACHING(), SD_F_DETACHING and SD_F_DYING
    
    Since SD_F_REGISTERED is cleared at the same time SD_F_DETACHING and
    SD_F_DYING are set, and since PCM_DETACHING() is always used in
    conjuction with PCM_REGISTERED()/DSP_REGISTERED(), it is enough to just
    check SD_F_REGISTERED.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch, markj
    Differential Revision:  https://reviews.freebsd.org/D47463
---
 sys/dev/sound/pcm/dsp.c   | 12 ++++++------
 sys/dev/sound/pcm/mixer.c | 10 +++++-----
 sys/dev/sound/pcm/sound.c |  2 --
 sys/dev/sound/pcm/sound.h | 48 ++++++++++++++++++++---------------------------
 4 files changed, 31 insertions(+), 41 deletions(-)

diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c
index 0f19f064a227..ccf240681a25 100644
--- a/sys/dev/sound/pcm/dsp.c
+++ b/sys/dev/sound/pcm/dsp.c
@@ -177,7 +177,7 @@ dsp_close(void *data)
 
 	d = priv->sc;
 	/* At this point pcm_unregister() will destroy all channels anyway. */
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d))
+	if (!DSP_REGISTERED(d))
 		goto skip;
 
 	PCM_GIANT_ENTER(d);
@@ -264,7 +264,7 @@ dsp_open(struct cdev *i_dev, int flags, int mode, struct thread *td)
 		return (ENODEV);
 
 	d = i_dev->si_drv1;
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d))
+	if (!DSP_REGISTERED(d))
 		return (EBADF);
 
 	priv = malloc(sizeof(*priv), M_DEVBUF, M_WAITOK | M_ZERO);
@@ -445,7 +445,7 @@ dsp_io_ops(struct dsp_cdevpriv *priv, struct uio *buf)
 	    ("%s(): io train wreck!", __func__));
 
 	d = priv->sc;
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d))
+	if (!DSP_REGISTERED(d))
 		return (EBADF);
 
 	PCM_GIANT_ENTER(d);
@@ -664,7 +664,7 @@ dsp_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode,
 		return (err);
 
 	d = priv->sc;
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d))
+	if (!DSP_REGISTERED(d))
 		return (EBADF);
 
 	PCM_GIANT_ENTER(d);
@@ -1783,7 +1783,7 @@ dsp_poll(struct cdev *i_dev, int events, struct thread *td)
 	if ((err = devfs_get_cdevpriv((void **)&priv)) != 0)
 		return (err);
 	d = priv->sc;
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) {
+	if (!DSP_REGISTERED(d)) {
 		/* XXX many clients don't understand POLLNVAL */
 		return (events & (POLLHUP | POLLPRI | POLLIN |
 		    POLLRDNORM | POLLOUT | POLLWRNORM));
@@ -1865,7 +1865,7 @@ dsp_mmap_single(struct cdev *i_dev, vm_ooffset_t *offset,
 	if ((err = devfs_get_cdevpriv((void **)&priv)) != 0)
 		return (err);
 	d = priv->sc;
-	if (!DSP_REGISTERED(d) || PCM_DETACHING(d))
+	if (!DSP_REGISTERED(d))
 		return (EINVAL);
 
 	PCM_GIANT_ENTER(d);
diff --git a/sys/dev/sound/pcm/mixer.c b/sys/dev/sound/pcm/mixer.c
index 6d74fa975f03..b5b5814e667b 100644
--- a/sys/dev/sound/pcm/mixer.c
+++ b/sys/dev/sound/pcm/mixer.c
@@ -146,7 +146,7 @@ mixer_set_softpcmvol(struct snd_mixer *m, struct snddev_info *d,
 	struct pcm_channel *c;
 	int dropmtx, acquiremtx;
 
-	if (!PCM_REGISTERED(d) || PCM_DETACHING(d))
+	if (!PCM_REGISTERED(d))
 		return (EINVAL);
 
 	if (mtx_owned(m->lock))
@@ -199,7 +199,7 @@ mixer_set_eq(struct snd_mixer *m, struct snddev_info *d,
 	else
 		return (EINVAL);
 
-	if (!PCM_REGISTERED(d) || PCM_DETACHING(d))
+	if (!PCM_REGISTERED(d))
 		return (EINVAL);
 
 	if (mtx_owned(m->lock))
@@ -1053,7 +1053,7 @@ mixer_open(struct cdev *i_dev, int flags, int mode, struct thread *td)
 
 	m = i_dev->si_drv1;
 	d = device_get_softc(m->dev);
-	if (!PCM_REGISTERED(d) || PCM_DETACHING(d))
+	if (!PCM_REGISTERED(d))
 		return (EBADF);
 
 	/* XXX Need Giant magic entry ??? */
@@ -1209,7 +1209,7 @@ mixer_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode,
 		return (EBADF);
 
 	d = device_get_softc(((struct snd_mixer *)i_dev->si_drv1)->dev);
-	if (!PCM_REGISTERED(d) || PCM_DETACHING(d))
+	if (!PCM_REGISTERED(d))
 		return (EBADF);
 
 	PCM_GIANT_ENTER(d);
@@ -1447,7 +1447,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi)
 	for (i = 0; pcm_devclass != NULL &&
 	    i < devclass_get_maxunit(pcm_devclass); i++) {
 		d = devclass_get_softc(pcm_devclass, i);
-		if (!PCM_REGISTERED(d) || PCM_DETACHING(d)) {
+		if (!PCM_REGISTERED(d)) {
 			if ((mi->dev == -1 && i == snd_unit) || mi->dev == i) {
 				mixer_oss_mixerinfo_unavail(mi, i);
 				return (0);
diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c
index c3e7fee41ab3..4b7bcc64397f 100644
--- a/sys/dev/sound/pcm/sound.c
+++ b/sys/dev/sound/pcm/sound.c
@@ -536,8 +536,6 @@ pcm_unregister(device_t dev)
 	PCM_LOCK(d);
 	PCM_WAIT(d);
 
-	d->flags |= SD_F_DETACHING;
-	d->flags |= SD_F_DYING;
 	d->flags &= ~SD_F_REGISTERED;
 
 	PCM_ACQUIRE(d);
diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h
index 1d09c48fc06b..f1d435369d36 100644
--- a/sys/dev/sound/pcm/sound.h
+++ b/sys/dev/sound/pcm/sound.h
@@ -104,17 +104,15 @@ struct snd_mixer;
 #define SD_F_SIMPLEX		0x00000001
 #define SD_F_AUTOVCHAN		0x00000002
 #define SD_F_SOFTPCMVOL		0x00000004
-#define SD_F_DYING		0x00000008
-#define SD_F_DETACHING		0x00000010
-#define SD_F_BUSY		0x00000020
-#define SD_F_MPSAFE		0x00000040
-#define SD_F_REGISTERED		0x00000080
-#define SD_F_BITPERFECT		0x00000100
-#define SD_F_VPC		0x00000200	/* volume-per-channel */
-#define SD_F_EQ			0x00000400	/* EQ */
-#define SD_F_EQ_ENABLED		0x00000800	/* EQ enabled */
-#define SD_F_EQ_BYPASSED	0x00001000	/* EQ bypassed */
-#define SD_F_EQ_PC		0x00002000	/* EQ per-channel */
+#define SD_F_BUSY		0x00000008
+#define SD_F_MPSAFE		0x00000010
+#define SD_F_REGISTERED		0x00000020
+#define SD_F_BITPERFECT		0x00000040
+#define SD_F_VPC		0x00000080	/* volume-per-channel */
+#define SD_F_EQ			0x00000100	/* EQ */
+#define SD_F_EQ_ENABLED		0x00000200	/* EQ enabled */
+#define SD_F_EQ_BYPASSED	0x00000400	/* EQ bypassed */
+#define SD_F_EQ_PC		0x00000800	/* EQ per-channel */
 
 #define SD_F_EQ_DEFAULT		(SD_F_EQ | SD_F_EQ_ENABLED)
 #define SD_F_EQ_MASK		(SD_F_EQ | SD_F_EQ_ENABLED |		\
@@ -127,26 +125,20 @@ struct snd_mixer;
 				"\001SIMPLEX"				\
 				"\002AUTOVCHAN"				\
 				"\003SOFTPCMVOL"			\
-				"\004DYING"				\
-				"\005DETACHING"				\
-				"\006BUSY"				\
-				"\007MPSAFE"				\
-				"\010REGISTERED"			\
-				"\011BITPERFECT"			\
-				"\012VPC"				\
-				"\013EQ"				\
-				"\014EQ_ENABLED"			\
-				"\015EQ_BYPASSED"			\
-				"\016EQ_PC"				\
+				"\004BUSY"				\
+				"\005MPSAFE"				\
+				"\006REGISTERED"			\
+				"\007BITPERFECT"			\
+				"\010VPC"				\
+				"\011EQ"				\
+				"\012EQ_ENABLED"			\
+				"\013EQ_BYPASSED"			\
+				"\014EQ_PC"				\
 				"\035PRIO_RD"				\
 				"\036PRIO_WR"
 
-#define PCM_ALIVE(x)		((x) != NULL && (x)->lock != NULL &&	\
-				 !((x)->flags & SD_F_DYING))
-#define PCM_REGISTERED(x)	(PCM_ALIVE(x) &&			\
-				 ((x)->flags & SD_F_REGISTERED))
-
-#define	PCM_DETACHING(x)	((x)->flags & SD_F_DETACHING)
+#define PCM_ALIVE(x)		((x) != NULL && (x)->lock != NULL)
+#define PCM_REGISTERED(x)	(PCM_ALIVE(x) && ((x)->flags & SD_F_REGISTERED))
 
 #define	PCM_CHANCOUNT(d)	\
 	(d->playcount + d->pvchancount + d->reccount + d->rvchancount)

From nobody Tue Nov 26 14:48:58 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQSV6pJZz5fYZX;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQSV3kDbz4WZt;
	Tue, 26 Nov 2024 14:48:58 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632538;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=t9/RrCScWsycGAXYZZvm51s2qDbRNFQgBoqHOe/mX/8=;
	b=lNFkLfzrDGUqE57WFK/RXoWA3zXjmXAsDrtj+1y+esYLJhwnuOtNJ9tVZuaY0qjutXSUNf
	PJXjsVgSpUXbJUTYhzFxI3K+gAlCwrSQMN8UoUfygVALDUoOv2vagCWiPv0GrRJgZFujSE
	xJOKPa9sz/mwxWA9/I8Ug5vG75ZYyjq1xAMMg0nbPQd7jyYbucr1YzmdA8QKrf+m028DHf
	Rm2jXXPBGzjViRLm4Uo5zYf1cCPIFNXPifCQ4Jn4P4kk3bvzu8+kTVt6tKIsW0IZd5mdTC
	ZDhPrhbvITpqwA/gMIXd70vneV6ynOvq+8nKSMzHm2EJg4UEx3yi74E2szj3mA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632538;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=t9/RrCScWsycGAXYZZvm51s2qDbRNFQgBoqHOe/mX/8=;
	b=vTySDUKK9gp77DbIYjoMll2vs/ub2nLmdp57pTkkNnvZCcCUxl3b/ceB+7RaNoRKKa+EQf
	yD+Z12bxhWdOA8oDMXAHJ2kq6N7FoLcXJ244q3/RS+axY1Zlskc7CB1SYCpY+XLl3z3aLz
	I9Nsg3qtBnnFMqceW3GEVtNJ2rbVTO20n7np5N/fk70nZE2Td63RUeCcJ2gSVqVmZoLXye
	jeDuEp7stmJMOb7d17XwkSZLkoBs1VHW5Z7lVIIwopKCTnwJCJHohvqJ3OUWm8UMm9K1CX
	76nNKOf1T81c8j/QG4SwQpAyB+Dl2FGnhNoxiefuTNSuV4JhjLlPz2CdtGeWSw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632538; a=rsa-sha256; cv=none;
	b=Nt+bN+PnbUo+ocsHd9Yym1xl9f9KAHdnteNbGOc09YusRqs0NvSYELYO4MuXzajehOFnN1
	X2g5lr0IiEmRfLEMUUQIhXNtm8Verc6KQsdnzNXfb8Dj2v3FZiThjM9rp7J+hFbVcj3j5O
	hyhdqb41fOiYmuLV5ah4Xt97P9wsL0avjOtPf+MOjAQAmye2+Waj4WJxwZCTlU+bt09+Pa
	jYkUg+LXrf6ZHxxsgN0dKwj0Uzg7houw6aYclV0I2PuoT9HQMniyG2nGZqWvR1MccNQmxS
	GkaLpiA0wPp1z/pdiddtvchLr+xXBV6+JD18s7hFgAsl/SMzN09wmbFeqkCwZg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQSV3LVXzSvT;
	Tue, 26 Nov 2024 14:48: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 4AQEmwA6084211;
	Tue, 26 Nov 2024 14:48:58 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmw7Y084208;
	Tue, 26 Nov 2024 14:48:58 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:58 GMT
Message-Id: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5317480967bfc8bf678e4da3fce81bcb3f5b7836
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=5317480967bfc8bf678e4da3fce81bcb3f5b7836

commit 5317480967bfc8bf678e4da3fce81bcb3f5b7836
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:36 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:36 +0000

    sound: Remove CHN_F_SLEEPING
    
    The KASSERT in chn_sleep() can be triggered if more than one thread
    wants to sleep on a given channel at the same time. While this is not
    really a common scenario, tools such as stress2, which use fork() and
    the child process(es) inherit the parent's FDs as a result, we can end
    up triggering such scenarios.
    
    Fix this by removing CHN_F_SLEEPING altogether, which is not very useful
    in the first place:
    - CHN_BROADCAST() checks cv_waiters already, so there is no need to
      check CHN_F_SLEEPING as well.
    - We can check whether cv_waiters is 0 in pcm_killchans(), instead of
      whether CHN_F_SLEEPING is not set.
    
    Reported by:    dougm, pho (stress2)
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch, markj
    Differential Revision:  https://reviews.freebsd.org/D47559
---
 sys/dev/sound/pcm/channel.c | 13 +------------
 sys/dev/sound/pcm/channel.h |  4 ++--
 sys/dev/sound/pcm/sound.c   |  4 ++--
 3 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c
index 59cdb8cd07f5..f619ddd4bc35 100644
--- a/sys/dev/sound/pcm/channel.c
+++ b/sys/dev/sound/pcm/channel.c
@@ -309,14 +309,7 @@ chn_wakeup(struct pcm_channel *c)
 	if (CHN_EMPTY(c, children.busy)) {
 		if (SEL_WAITING(sndbuf_getsel(bs)) && chn_polltrigger(c))
 			selwakeuppri(sndbuf_getsel(bs), PRIBIO);
-		if (c->flags & CHN_F_SLEEPING) {
-			/*
-			 * Ok, I can just panic it right here since it is
-			 * quite obvious that we never allow multiple waiters
-			 * from userland. I'm too generous...
-			 */
-			CHN_BROADCAST(&c->intr_cv);
-		}
+		CHN_BROADCAST(&c->intr_cv);
 	} else {
 		CHN_FOREACH(ch, c, children.busy) {
 			CHN_LOCK(ch);
@@ -332,15 +325,11 @@ chn_sleep(struct pcm_channel *c, int timeout)
 	int ret;
 
 	CHN_LOCKASSERT(c);
-	KASSERT((c->flags & CHN_F_SLEEPING) == 0,
-	    ("%s(): entered with CHN_F_SLEEPING", __func__));
 
 	if (c->flags & CHN_F_DEAD)
 		return (EINVAL);
 
-	c->flags |= CHN_F_SLEEPING;
 	ret = cv_timedwait_sig(&c->intr_cv, c->lock, timeout);
-	c->flags &= ~CHN_F_SLEEPING;
 
 	return ((c->flags & CHN_F_DEAD) ? EINVAL : ret);
 }
diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h
index 79a8d35b22f7..d226adfba06b 100644
--- a/sys/dev/sound/pcm/channel.h
+++ b/sys/dev/sound/pcm/channel.h
@@ -354,7 +354,7 @@ enum {
 #define CHN_F_RUNNING		0x00000004  /* dma is running */
 #define CHN_F_TRIGGERED		0x00000008
 #define CHN_F_NOTRIGGER		0x00000010
-#define CHN_F_SLEEPING		0x00000020
+/* unused			0x00000020 */
 
 #define CHN_F_NBIO              0x00000040  /* do non-blocking i/o */
 #define CHN_F_MMAP		0x00000080  /* has been mmap()ed */
@@ -381,8 +381,8 @@ enum {
 				"\002ABORTING"				\
 				"\003RUNNING"				\
 				"\004TRIGGERED"				\
+				/* \006 */				\
 				"\005NOTRIGGER"				\
-				"\006SLEEPING"				\
 				"\007NBIO"				\
 				"\010MMAP"				\
 				"\011BUSY"				\
diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c
index 4b7bcc64397f..218147b73db0 100644
--- a/sys/dev/sound/pcm/sound.c
+++ b/sys/dev/sound/pcm/sound.c
@@ -221,8 +221,8 @@ pcm_killchans(struct snddev_info *d)
 		/* Make sure all channels are stopped. */
 		CHN_FOREACH(ch, d, channels.pcm) {
 			CHN_LOCK(ch);
-			if ((ch->flags & CHN_F_SLEEPING) == 0 &&
-			    CHN_STOPPED(ch) && ch->inprog == 0) {
+			if (ch->intr_cv.cv_waiters == 0 && CHN_STOPPED(ch) &&
+			    ch->inprog == 0) {
 				CHN_UNLOCK(ch);
 				continue;
 			}

From nobody Tue Nov 26 14:48:59 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQSW6FnTz5fYtq;
	Tue, 26 Nov 2024 14:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQSW4jNSz4WhQ;
	Tue, 26 Nov 2024 14:48:59 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732632539;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=QID7NSY2yzXbUMndJ+ICFZyQtLgXDtpmQG9XsXw4mMA=;
	b=e57Kw8xmmNlx+d72Lu2ZH7PHtly3Px9Nx2cG+JAv7AykITim14Zi74prrjpB9VXJmu31k0
	773hVBtF3AoDd742Z9UOpEmlkpZwoRMtVcFKT3OYDx7apW8Da10Y699Ci5apqKHBZie2yJ
	f3J5zUNRdA/TeomN8EtITSD7Npdk2nyq/GphCkpxoppbztXgPMTUu3bArG81/3YvOvALLY
	aipaW9Vs7Ur7vsrLDTyeIT+pWQ+AlzJE4ZHwBnWTpR1Pa6MSO5dz0B0PJlRdku5l8jh9UN
	gB3Ml4DA2+Kq/DWR+uhhUKRQiGJHvglk7Ef+Hc2trVc3OiEzJ0ppWDOebbpdVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732632539;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=QID7NSY2yzXbUMndJ+ICFZyQtLgXDtpmQG9XsXw4mMA=;
	b=TkvqJrM6oszYQL+k3F+M/BZMbfGif6Y2MfxUJyua+xsNc+A/s2fRUGgd5vy7OeluDIsDpP
	FyLLybkHQ0J8YhTAfiGfuWHvkOB1GjKwquP251ej1hHKuv+uEi10xMyKJj6dqhxhoc6+EK
	G7YuIdGvHfD2GdmAoTAA7VPSEnhG3GJBnRCB3KNb70ldhh9urDtaF+FpFYfYUy35JlQDRU
	THZdazXbLD8iTZF8rkag/CmFKjVObb4d71/O9zloZrDmAFSw9qfb6y1YbkJGu9Zqy8eY+O
	n5XMSqB1D9AZzTTT+K/Wkgyj8hwjl6xtgAEkAdkJhO6pedBADXrgtTk1chK1wQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732632539; a=rsa-sha256; cv=none;
	b=B6nR4zf2j8r6z7kyqmiSZj8K6mqab9Niu4Fzz3bpHLrpmn+3ReQmBSXGIMqGdMSJbIYM4j
	KMExfzycMBWQNnyx/sfy2PUssHQ9+06U+2n7PGFebs5QcTnm2uJzG0J7w/M7v3nenqRpF0
	LEBMYvNTeJr9LLWnnwikRDy7b8ZJHB0SooZnVuQTGay0coVvEyghEZD71sn6PcfpHZAtkw
	FIHWq4I871bDam4+Xt6MQIewbPxgxYr+alNfmwScywPy4In8SCHanB3+8WJuNodbjXX0B0
	1a0VPbcVn5sB8vTbtgLkqEjgqy9DYA/sLPKAz0tAXfIEPtd1eeCxRSWUtjjRAw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQSW4KxyzSyB;
	Tue, 26 Nov 2024 14:48: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 4AQEmxDJ084252;
	Tue, 26 Nov 2024 14:48:59 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEmxqC084249;
	Tue, 26 Nov 2024 14:48:59 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:48:59 GMT
Message-Id: <202411261448.4AQEmxqC084249@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Christos Margiolis <christos@FreeBSD.org>
Subject: git: 6d77827b963e - main - sound: Remove unused CHN_F_SILENCE
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: christos
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6d77827b963ec1a72de3f46d51fe14ed30ef437e
Auto-Submitted: auto-generated

The branch main has been updated by christos:

URL: https://cgit.FreeBSD.org/src/commit/?id=6d77827b963ec1a72de3f46d51fe14ed30ef437e

commit 6d77827b963ec1a72de3f46d51fe14ed30ef437e
Author:     Christos Margiolis <christos@FreeBSD.org>
AuthorDate: 2024-11-26 14:48:42 +0000
Commit:     Christos Margiolis <christos@FreeBSD.org>
CommitDate: 2024-11-26 14:48:42 +0000

    sound: Remove unused CHN_F_SILENCE
    
    No functional change intended.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 days
    Reviewed by:    dev_submerge.ch, markj, emaste
    Differential Revision:  https://reviews.freebsd.org/D47664
---
 sys/dev/sound/pcm/channel.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h
index d226adfba06b..cef8aa4e86e5 100644
--- a/sys/dev/sound/pcm/channel.h
+++ b/sys/dev/sound/pcm/channel.h
@@ -362,7 +362,7 @@ enum {
 #define CHN_F_BUSY              0x00000100  /* has been opened 	*/
 #define CHN_F_DIRTY		0x00000200  /* need re-config */
 #define CHN_F_DEAD		0x00000400  /* too many errors, dead, mdk */
-#define CHN_F_SILENCE		0x00000800  /* silence, nil, null, yada */
+/* unused			0x00000800 */
 
 #define	CHN_F_HAS_SIZE		0x00001000  /* user set block size */
 #define CHN_F_HAS_VCHAN		0x00002000  /* vchan master */
@@ -388,7 +388,7 @@ enum {
 				"\011BUSY"				\
 				"\012DIRTY"				\
 				"\013DEAD"				\
-				"\014SILENCE"				\
+				/* \014 */				\
 				"\015HAS_SIZE"				\
 				"\016HAS_VCHAN"				\
 				"\017VCHAN_PASSTHROUGH"			\

From nobody Tue Nov 26 14:57:05 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyQds6wQ6z5fZ6Y;
	Tue, 26 Nov 2024 14:57: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyQds600nz4YjJ;
	Tue, 26 Nov 2024 14:57:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732633025;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2qNfEolPu7S6+/IQW4Kvx87A5yUsyjLFb9InWHZ7urQ=;
	b=NJTnEX98xhRkr5fGYDqL4162ThncMz4cILPaunt5RWnZhQLjgLAWZKoO45y61zWuubnSlE
	hlmadIjfA7APIlGnQbHWS3DPMwmJCcFKsmGXYKaHk1REoMeKxYmGb7clLP4BE2VDxvS0PL
	6djq/q2kug++mfovGwDpfGL3Dly/Q+RpRRvBOqkz8/l9Cio4hIWen0ceU87oQ2G07yOUyV
	gOKVQJvNtMnb1PFU60tgOypYzR4XseQx1AsqfrG+9X/ltXKv8pbmKb9xT2tGpb4ybqSz0e
	RPLDCa8U0RPgOpZ/VA8jXJxwcvgqB/z1xxKan7pBGlvYeWEO6sHzxqXRlotbkQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732633025;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2qNfEolPu7S6+/IQW4Kvx87A5yUsyjLFb9InWHZ7urQ=;
	b=gfi4tvqABrz3pwtGptScN8dA+llFLpw/zY/jDu5MyPrMg3rS1py9Ff5VtpZg6amtIeGtib
	xyYCgpvQlBBuT5YU7YpcrM6mGtGIzigRXi0Jz5AWn7ewFjSHAI6P8jyUlGu6EW5OtTgjiM
	+015BmRGUmnqx9XIcLYeGfRL2tJQlIOtU3pXYf3MjdzcUWjdmU8GA2t5rZUX25+SwDJ9xu
	9nb1xqMhtgGoyqung3HMmMS34OoyWDrq6DtlfMktVt21xvcjuR8MphqXxV9Op0G5qLztbX
	Tdv20fQd3vDudKLpxFZ9HAhq7z9CqSblFein8/xb0rjCkq87VHMiw1ATJfFnCw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732633025; a=rsa-sha256; cv=none;
	b=Tf1RCYxbzonYkEKfIewEuHAQxnwxw9ztZGU9b1OAqeiCfP2Lcx2pts43uUoXWS/m51k4QG
	GA0N4E8iE7/ZYPfbZpeHCFwxOwNYrERG9YsPhtLtMVBt3BUuP81jjNiH77WHr25bk0Tr0e
	DmAZ7W85+KiN37Xcr2JsfMvQngPi2P9vIydcDVgXbYba3OwU3TZM5iBgyWZQubmmUrFl/f
	QbOM330PZbTm9chKhQy0oxbEO2P0r5cZzfe8B0j2yghmmTBp/NXI1CQuOzTNonjvOENEG6
	lqFc6hH4PRKqT/uZCUwqMuKyoDMcc0j01DQb8g3lu1nDIQT+SFezYEwcUzvSjQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyQds5YBhzV3W;
	Tue, 26 Nov 2024 14:57:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4AQEv595001737;
	Tue, 26 Nov 2024 14:57:05 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQEv5OQ001734;
	Tue, 26 Nov 2024 14:57:05 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 14:57:05 GMT
Message-Id: <202411261457.4AQEv5OQ001734@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Allan Jude <allanjude@FreeBSD.org>
Subject: git: 9206c7996198 - main - usr.bin/netstat: -n should not
  print symbolic names
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: allanjude
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 9206c79961986c2114a9a2cfccf009ac010ad259
Auto-Submitted: auto-generated

The branch main has been updated by allanjude:

URL: https://cgit.FreeBSD.org/src/commit/?id=9206c79961986c2114a9a2cfccf009ac010ad259

commit 9206c79961986c2114a9a2cfccf009ac010ad259
Author:     Allan Jude <allanjude@FreeBSD.org>
AuthorDate: 2024-11-26 14:54:04 +0000
Commit:     Allan Jude <allanjude@FreeBSD.org>
CommitDate: 2024-11-26 14:56:21 +0000

    usr.bin/netstat: -n should not print symbolic names
    
    In numeric mode, the default route is printed as "default" rather
    than 0.0.0.0/0 or ::/0
    
    From the man page:
    "-n: Show network addresses and ports as numbers.
    Normally netstat attempts to resolve addresses and ports, and display
    them symbolically.  If the -n option is specified, the address is
    printed numerically, according to the address family.
    For more information regarding the Internet IPv4 ``dot format'', refer
    to inet(3).  Unspecified, or `wildcard'', addresses and ports appear
    as `*''."
    
    Reported By:    rgrimes
    Reviewed by:    emaste, ngie, eadler, seanc
    Relnotes:       yes
    Sponsored by:   Klara, Inc.
    Differential Revision:  https://reviews.freebsd.org/D10320
---
 usr.bin/netstat/route.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/usr.bin/netstat/route.c b/usr.bin/netstat/route.c
index 74797e2addb8..c54b1e61aa11 100644
--- a/usr.bin/netstat/route.c
+++ b/usr.bin/netstat/route.c
@@ -578,7 +578,7 @@ netname4(in_addr_t in, in_addr_t mask)
 	struct netent *np = 0;
 	in_addr_t i;
 
-	if (in == INADDR_ANY && mask == 0) {
+	if (!numeric_addr && in == INADDR_ANY && mask == 0) {
 		strlcpy(line, "default", sizeof(line));
 		return (line);
 	}
@@ -673,7 +673,8 @@ netname6(struct sockaddr_in6 *sa6, struct sockaddr_in6 *mask)
 	else
 		masklen = 128;
 
-	if (masklen == 0 && IN6_IS_ADDR_UNSPECIFIED(&sa6->sin6_addr))
+	if (!numeric_addr && masklen == 0 &&
+	    IN6_IS_ADDR_UNSPECIFIED(&sa6->sin6_addr))
 		return("default");
 
 	getnameinfo((struct sockaddr *)sa6, sa6->sin6_len, nline, sizeof(nline),

From nobody Tue Nov 26 15:58:55 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyS1C4n4xz5fdkH;
	Tue, 26 Nov 2024 15:58: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyS1C4Fg0z4m3b;
	Tue, 26 Nov 2024 15:58:55 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732636735;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=vhnyO6nEaK/udaRkGSKboRiL3r5BXNX32LFDUhI3FYM=;
	b=q2eHMwmhocncqHT8YDV9SKdYG93WFkjaMbhedenHwZ7XeWMIPxgT8IfAJuS0CgenJAwD2u
	7a4oRzp3pmUp+mCamUbIj3Fmo9/rGciXcVfq13FoO6uzyqrlPH2Kqv86JLWA2oeNAEx3Vy
	C26k6RkTetAuFgNmf7SWpbWy35IhZsUgW2VNCKAAoR0tylplS1bSfJDXZua9bEquatApEA
	jyffdF/QQNkTD4eqhHXkMeLEhVGotYpvt5VCrvpM9mjAMFod+aqwUezdcAV6WEGU42bHB/
	soQityTzXTxFJr6EbwcillszohP/4M0/ckDZ5T+ntk8E4iV2EHdcnLqjQHrVHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732636735;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=vhnyO6nEaK/udaRkGSKboRiL3r5BXNX32LFDUhI3FYM=;
	b=Iacp2IIlLlBqPWsBSVIf3Pi+mDiqXvoCUDiJ22LQY6RP/3yUgK9s1m6uVOVPar93qCEg37
	gpW7coh6Yrmv8BIYx3ASForqibX/znUbBkvE83YK1YcywKWhvKe3Kx0CkPk1U+vo/oh+MQ
	LLT6LEtKPBUUh5wU5lM9CLxiUq2saVgkUKfK1RscZ5RO00ycubDeNiC8eFg2NN7hHIcCrE
	y7k9U7uyMjUbOqDCO9nu9hatPssL1zIUSALxv0vgzRuZ385qjZr0jMpBpsxHNL7fZByphl
	+8HUDDwFkJF3HeYWCfUw8Yum/PpM0hsDmHjmtqRXJjv+92h7uaYg+57ijzcazg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732636735; a=rsa-sha256; cv=none;
	b=ZnHq1PfQhkzT04+zTo7dRv9XPOLE7hvxsQ4T/E/WFEmuLa3SZ5W7wO1jGp6XTiUG5YtYEU
	ydZJP13e4k/QwvoeICoyetlKvav3BiQItwrWeecnD/8JbiUW9MdJ1mpaHRih+WccpszNjb
	hvmkbUg0upn4TGB1+g9kbnustlFxsJRVkPSmwqUXjCzfu3CsyhQxXpBPk8E+afxOmt9gmW
	qeFxuln8nWtNQjJAVX+MSsGXImtU+mZxQvMeSi31AuHzuKNqygLYP62m6t6Fv2w1O/JsoS
	NIxVAjvd1s2PZMxlsDHoVMIKOPHM2N+KfylxnYUAHBLXhZUbROD8Nuo1fRWt+w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyS1C3kN8zX4d;
	Tue, 26 Nov 2024 15:58: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 4AQFwtcp014022;
	Tue, 26 Nov 2024 15:58:55 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQFwtEX014019;
	Tue, 26 Nov 2024 15:58:55 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 15:58:55 GMT
Message-Id: <202411261558.4AQFwtEX014019@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Zhenlei Huang <zlei@FreeBSD.org>
Subject: git: f2233ac33ab6 - main - ena: Remove \n from sysctl
  description
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: zlei
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: f2233ac33ab64f9bb03370c097af97f26dd0fca1
Auto-Submitted: auto-generated

The branch main has been updated by zlei:

URL: https://cgit.FreeBSD.org/src/commit/?id=f2233ac33ab64f9bb03370c097af97f26dd0fca1

commit f2233ac33ab64f9bb03370c097af97f26dd0fca1
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-11-26 15:52:54 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-11-26 15:52:54 +0000

    ena: Remove \n from sysctl description
    
    sysctl(8) prints a newline after the description, no need for this extra
    newline.
    
    MFC after:      1 week
---
 sys/dev/ena/ena_sysctl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/ena/ena_sysctl.c b/sys/dev/ena/ena_sysctl.c
index c1520a963853..38e52f9066cc 100644
--- a/sys/dev/ena/ena_sysctl.c
+++ b/sys/dev/ena/ena_sysctl.c
@@ -158,7 +158,7 @@ SYSCTL_INT(_hw_ena, OID_AUTO, enable_9k_mbufs, CTLFLAG_RDTUN,
 int ena_force_large_llq_header = ENA_LLQ_HEADER_SIZE_POLICY_DEFAULT;
 SYSCTL_INT(_hw_ena, OID_AUTO, force_large_llq_header, CTLFLAG_RDTUN,
     &ena_force_large_llq_header, 0,
-    "Change default LLQ entry size received from the device\n");
+    "Change default LLQ entry size received from the device");
 
 int ena_rss_table_size = ENA_RX_RSS_TABLE_SIZE;
 

From nobody Tue Nov 26 16:02:40 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyS5n15G0z5ff3y;
	Tue, 26 Nov 2024 16:02:53 +0000 (UTC)
	(envelope-from zlei@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyS5n0FTHz4pK5;
	Tue, 26 Nov 2024 16:02:53 +0000 (UTC)
	(envelope-from zlei@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732636973;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=uacMQ7iwjVsIO5T5X+fPhztzlFptkcvCNxRtCIPrjWs=;
	b=VEybtbAzL2mtB7zXwF7MRWr8b8meGyAAC0xmMZpf7btM+Ojxua07wghprwTqBp7Qn+F5K0
	1V+QQbw8ZmKPuQU++GaAajm+1mBPgMZ22goUFitfM08uv4OVULjLQT29YKkegsPvhWRxFJ
	lPQOvlvmfxFP4DSbmHEUEvOgiqjPLGLDdiND5EXckxmrSEhqMA+i4LGoSvgLlSyoSfc203
	66Ug9RKy77a6RGf0wUC95PPjQdaxO9UpHlUbjpnHPoi6p0dVo+ThKrpmG91vo3qaQymPBL
	6VNsyusRqqysOf3w9X9LD5sa4H4Ggc5tU+T8Kr6RGupvja2E1Bf9+JBkvnRbJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732636973;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=uacMQ7iwjVsIO5T5X+fPhztzlFptkcvCNxRtCIPrjWs=;
	b=HXXSRJT6PgQx9yJ6RSl7120VWOs4XMP7T8wD+y1hvqx6B9Fbn3sadPoikA5HnyEHrwlP8w
	qx818GdyTvwu5aGDrLutX8iD1tBtzlNDAVuPTuSWtJ5I8zZhvEglWIPK9tfILW7yTObd+n
	48WYNHbRfjeu+E71PT5rWeu2T7AFEzwGPer/S9MbklcWboKpNlE/e2QcvQobXsIeMVMUmR
	kyTCUsmQtyCnqoIQzON8KV6SBYOK0tJdLukUhCaiEOCvz+aEzTMSW98rhXSPR9bdH6okj2
	R78YtwTDNziVTmBM2BuFOSpdDZYkFLGUlGI47r2SRZu6JZhP0Pz1L9P9h3GTtA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732636973; a=rsa-sha256; cv=none;
	b=tcBn7CqTyDYTlC9DCOKqtAtEt+M/APhq2KO9sI9buIfzYw/CGTrgGmgCsICCUjlYZLJzs4
	cjtdwZt8hOiQSaGgcOCXqDOjaVaPIdq1SO0ErKalmVI4hJlZDaqtwbMReJ8WwCuthwRZAm
	7WKeLZtG8mcmK7qp9HKuI/1Fh8l9O+1OtaiT19cWAnejjTi1d4QIwaMLMv4hnb29KOP8sm
	x7V4kHAV6NiL3MydlQUsYJU95Drzhwoewi9amb3+69NlizsdfEkDoVMT7ePRTEVS0UzbJK
	4axtFjs4AEf047fazujmnvhUSRxK33k+1/tQKQ9VhOotFIqlLQZ7iUXDwjftuQ==
Received: from smtpclient.apple (unknown [IPv6:2001:19f0:6001:9db:98f0:9fe0:3545:10])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client did not present a certificate)
	(Authenticated sender: zlei/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XyS5l3MFVz10Nr;
	Tue, 26 Nov 2024 16:02:51 +0000 (UTC)
	(envelope-from zlei@FreeBSD.org)
From: Zhenlei Huang <zlei@FreeBSD.org>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.10\))
Subject: Re: git: f2233ac33ab6 - main - ena: Remove \n from sysctl description
Date: Wed, 27 Nov 2024 00:02:40 +0800
References: <202411261558.4AQFwtEX014019@gitrepo.freebsd.org>
To: "src-committers@freebsd.org" <src-committers@FreeBSD.org>,
 "dev-commits-src-all@freebsd.org" <dev-commits-src-all@FreeBSD.org>,
 "dev-commits-src-main@freebsd.org" <dev-commits-src-main@FreeBSD.org>
In-Reply-To: <202411261558.4AQFwtEX014019@gitrepo.freebsd.org>
Message-Id: <877C29EF-BD0D-4947-A4A7-420D0679C91D@FreeBSD.org>
X-Mailer: Apple Mail (2.3696.120.41.1.10)

Enlightened by Ed Maste's work 6b62e00da4ad ("mac_bsdextended: Remove \n =
from sysctl descriptions") .

> On Nov 26, 2024, at 11:58 PM, Zhenlei Huang <zlei@FreeBSD.org> wrote:
>=20
> The branch main has been updated by zlei:
>=20
> URL: =
https://cgit.FreeBSD.org/src/commit/?id=3Df2233ac33ab64f9bb03370c097af97f2=
6dd0fca1
>=20
> commit f2233ac33ab64f9bb03370c097af97f26dd0fca1
> Author:     Zhenlei Huang <zlei@FreeBSD.org>
> AuthorDate: 2024-11-26 15:52:54 +0000
> Commit:     Zhenlei Huang <zlei@FreeBSD.org>
> CommitDate: 2024-11-26 15:52:54 +0000
>=20
>    ena: Remove \n from sysctl description
>=20
>    sysctl(8) prints a newline after the description, no need for this =
extra
>    newline.
>=20
>    MFC after:      1 week
> ---
> sys/dev/ena/ena_sysctl.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/sys/dev/ena/ena_sysctl.c b/sys/dev/ena/ena_sysctl.c
> index c1520a963853..38e52f9066cc 100644
> --- a/sys/dev/ena/ena_sysctl.c
> +++ b/sys/dev/ena/ena_sysctl.c
> @@ -158,7 +158,7 @@ SYSCTL_INT(_hw_ena, OID_AUTO, enable_9k_mbufs, =
CTLFLAG_RDTUN,
> int ena_force_large_llq_header =3D ENA_LLQ_HEADER_SIZE_POLICY_DEFAULT;
> SYSCTL_INT(_hw_ena, OID_AUTO, force_large_llq_header, CTLFLAG_RDTUN,
>     &ena_force_large_llq_header, 0,
> -    "Change default LLQ entry size received from the device\n");
> +    "Change default LLQ entry size received from the device");
>=20
> int ena_rss_table_size =3D ENA_RX_RSS_TABLE_SIZE;
>=20




From nobody Tue Nov 26 18:15:33 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyW2v55qPz5dnvH;
	Tue, 26 Nov 2024 18:15: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyW2v2pfFz54cc;
	Tue, 26 Nov 2024 18:15:35 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732644935;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=oHdHsgOTwQ5Sps0w0ppenC19J2ImeQlFbA55cFtEM+c=;
	b=DXFA/zxjxt9W7mXf8LoxleBZaoqZFko1sOPH38D1jWUznnvv55SawaEn47iIQ0Bsigupqy
	3wzfll68HVf7kybCOtlPXmSL67mP6Tu0F6lMDG5hcdE8xHYputO2TwhgWeMTytRz9gjZb6
	Um6E2IKRYv9a1Zl4qkkKE+lZmdHVH+hcgxb0lkmpalaxksLvoFi0P6AH/PLXDb1sU+QP4+
	6VFcBo57FJ2/AOWjOvQKVwtlGtO6QdZJ4PGtvTrvJjYWDZnsO2GjBgUrB1KH04TKdJZFs7
	ftu+R/KFExrS6+ZDiwec9euBo0l+SONZwFnVu2LSZW+S61HOtBBZ0z1Plxktbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732644935;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=oHdHsgOTwQ5Sps0w0ppenC19J2ImeQlFbA55cFtEM+c=;
	b=LJeOIRJB4OyymMysLrEO9r3Rkfke9Fkt19BHhwEXCsfOS2DRE2uV8n4o41paJN372JG/XJ
	vLAlqGgthRVzEWcIPO78bg1aM6oh4U7vSr5zCGamBVqHqtgrh1T3WIu9EgMK5MOe8n3+LQ
	t2NYekTQJh8PMrNNWbaVgqGb93gTe2GKkdAQonbcc1cSvJxJSeJobs2p7IAEiOKN2Dp2SS
	uV/WxUlVi9Rk4OYQ3wr74X7wOKtr0ZqBGQsHAnrqBaqzmlqzSgVOlp+XRKfsufGbAyGQO7
	fJx2DEP4+qh8w4uE+3L5Z2e15gzulA0VA1+E+ZsnsCzBuBS8HFYCGQNuPsKrpg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732644935; a=rsa-sha256; cv=none;
	b=HFMIbNd6w315/mL8wyQ6n2+8GXxXOi/uykceHSAP8MYXFPadOYcLClgow5j9kMktd6RxrX
	8dediajE9wYXpXeygiZkfIuSL4Lluwhfa6JLOWnJAjJIppGMG6v/VBmXOyThXxiUDhjhol
	t6p9mCIkTgxu8scAmYPN2YGugCms3Rn0Kn+Ep4q50UMzQRvpBlghiebH8p5d6eDQhdVklH
	tXfQyhjx9iJYgUN8XdV8jLHnQeUOfAqsqxGuJ2w19tko65QyrUIepx7Fn3ahArhzbv4obj
	1vznCgPlh2t8snOKU7mjk1vHfg4w1U2XJX3QbBghPA49bjx8cyGsEOZ9bXG7WQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyW2s6Y5QzbVR;
	Tue, 26 Nov 2024 18:15: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 4AQIFXLA074289;
	Tue, 26 Nov 2024 18:15:33 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQIFXLU074286;
	Tue, 26 Nov 2024 18:15:33 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 18:15:33 GMT
Message-Id: <202411261815.4AQIFXLU074286@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Doug Moore <dougm@FreeBSD.org>
Subject: git: 40c1672e886b - main - swap_pager: fix seek_data with
  invalid first page
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: dougm
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 40c1672e886b86f4956c16e9f1161683328504ff
Auto-Submitted: auto-generated

The branch main has been updated by dougm:

URL: https://cgit.FreeBSD.org/src/commit/?id=40c1672e886b86f4956c16e9f1161683328504ff

commit 40c1672e886b86f4956c16e9f1161683328504ff
Author:     Doug Moore <dougm@FreeBSD.org>
AuthorDate: 2024-11-26 18:12:08 +0000
Commit:     Doug Moore <dougm@FreeBSD.org>
CommitDate: 2024-11-26 18:12:08 +0000

    swap_pager: fix seek_data with invalid first page
    
    Correct swap_pager_seek_data so that, when the first lookup finds no
    valid pages, second and subsequent lookups are attempted anyway.
    
    This was broken by db08b0b04deced766c3b5f07bcfb82333666226c.
    
    Reported by:    marklmi@yahoo.com
    Reviewed by:    kib
    Tested by:      marklmi@yahoo.com
    Fixes:  db08b0b04deced76 tmpfs_vnops: move swap work to swap_pager
    Differential Revision:  https://reviews.freebsd.org/D47767
---
 sys/vm/swap_pager.c | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c
index db925f4ae7f6..3d02f365cad9 100644
--- a/sys/vm/swap_pager.c
+++ b/sys/vm/swap_pager.c
@@ -2503,26 +2503,23 @@ swap_pager_seek_data(vm_object_t object, vm_pindex_t pindex)
 	VM_OBJECT_ASSERT_RLOCKED(object);
 	vm_page_iter_init(&pages, object);
 	m = vm_page_iter_lookup_ge(&pages, pindex);
-	if (m != NULL) {
-		if (!vm_page_any_valid(m))
-			m = NULL;
-		else if (pages.index == pindex)
-			return (pages.index);
-	}
+	if (m != NULL && pages.index == pindex && vm_page_any_valid(m))
+		return (pages.index);
 	swblk_iter_init_only(&blks, object);
 	swap_index = swap_pager_iter_find_least(&blks, pindex);
 	if (swap_index == pindex)
 		return (swap_index);
-	if (swap_index == OBJ_MAX_SIZE)
-		swap_index = object->size;
-	if (m == NULL)
-		return (swap_index);
 
-	while ((m = vm_radix_iter_step(&pages)) != NULL &&
-	    pages.index < swap_index) {
+	/*
+	 * Find the first resident page after m, before swap_index.
+	 */
+	while (m != NULL && pages.index < swap_index) {
 		if (vm_page_any_valid(m))
 			return (pages.index);
+		m = vm_radix_iter_step(&pages);
 	}
+	if (swap_index == OBJ_MAX_SIZE)
+		swap_index = object->size;
 	return (swap_index);
 }
 

From nobody Tue Nov 26 18:16:37 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyW452NGcz5dnvM;
	Tue, 26 Nov 2024 18:16: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyW451ljVz556F;
	Tue, 26 Nov 2024 18:16:37 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732644997;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2cM02Rcmc//bHmCKWNVWoYF7480xHPFMaqH5judh228=;
	b=WZrgsY0eiPaoxGSr9POthF0/Gs/oJ+8GKEb/bZkMVNp90Iuuyp+v+wo53PnuJtl7yuK/Ck
	iKSsB6T61/KvG/LBa3Ov3m5+XVKX5zYMD5CsxdrSl3yC/uhtJ1cEppAB6mhhBMn55x4qrN
	rjJpXEXeq4OuaZklAKFx1SksdAS0WzsUmz8xZEjCVJ2mGmdMwRTn46UEMwyePWYNkkaaob
	GrDuSHvrO/4uNQ9bU0PuN7UHMkZ8F7IFM8Ct3w24rWtRvZU/E+iCVTONa+eVc7Bh0JDGnS
	FF7wLql9YmWTil+yUov81tA8BbtqwW9Bamtv9JlRBOWVs4N3pfeEHQtijOK/BQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732644997;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2cM02Rcmc//bHmCKWNVWoYF7480xHPFMaqH5judh228=;
	b=A+iQlQDRe5hPX8LBM9JeFTCu4ljUjUYZc2B1aiJ5MGl72ywi8uFf7BSUfsO6Xa6PjF4lXo
	5663JH4m0cwNkzXZ6gS9QWiyc8a85FY7cDIM4X9g5B2pPT79GTQAAP1WLMKgo6f6kkZser
	Bq1y+wYlLLwTJ+wWJhbjpJv92MEA0g3TJQESNZq5r4hYXbATsNKUIaRPuwxTlneER0ls6Y
	yl1q3lv0EG5Z6n96toHR/5Wccbuu2qYaZcAKnDemizkBFI8+LTEz0qk4hFV9KG1Iec6kIG
	KCrvoA101x69meglNVSEdiY/8LLBXR9v9DpkgOK4Af60h+6OY/c29Qz8nrhX8g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732644997; a=rsa-sha256; cv=none;
	b=T86Zzbh3ag2EZVC7fDGZK3NmXlcdlZJUNEuTfx5H0oOOxCtBdKgzPs2MewHE6GxxjKJkSN
	+/FsYkycLPApDEXW5OV2liMUH2tOoXANfRvii2NfgZgFsvFZRcH9SDbzR3o8ueXnBryXNx
	i2HONsFw6+x6aR3Qfy1zWJI8Ys3jYfCBdwd6zTf64RspYC4EVQQmFJeNv75QkGoGIa7iqF
	QLrn/asU8AbR3T/Q5WH0ycO93wv/8D216AfZI5dMgGFKVxWgCcKN5e1shg2DYnsswK3kzB
	8uQ1078jm8v5/YrUz/rJfr0Fl4JtDEmAFh3RPZCqVRFkl3hihXpr1MsfVqCqkQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyW451MMbzc5M;
	Tue, 26 Nov 2024 18:16: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 4AQIGbHK074746;
	Tue, 26 Nov 2024 18:16:37 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQIGb8w074743;
	Tue, 26 Nov 2024 18:16:37 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 18:16:37 GMT
Message-Id: <202411261816.4AQIGb8w074743@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Bojan =?utf-8?Q?Novkovi=C4=87?= <bnovkov@FreeBSD.org>
Subject: git: b42b18fb24f5 - main - x86: Add definitions for XSAVE
  state component information
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bnovkov
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: b42b18fb24f58d9b3d8b60d6901e582d407521d6
Auto-Submitted: auto-generated

The branch main has been updated by bnovkov:

URL: https://cgit.FreeBSD.org/src/commit/?id=b42b18fb24f58d9b3d8b60d6901e582d407521d6

commit b42b18fb24f58d9b3d8b60d6901e582d407521d6
Author:     Bojan Novković <bnovkov@FreeBSD.org>
AuthorDate: 2024-11-26 17:48:46 +0000
Commit:     Bojan Novković <bnovkov@FreeBSD.org>
CommitDate: 2024-11-26 18:16:05 +0000

    x86: Add definitions for XSAVE state component information
    
    Reviewed by: kib
---
 sys/x86/include/specialreg.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h
index 51c513b6a5ab..9dc30e31e540 100644
--- a/sys/x86/include/specialreg.h
+++ b/sys/x86/include/specialreg.h
@@ -386,6 +386,14 @@
 #define	CPUID_EXTSTATE_XINUSE	0x00000004
 #define	CPUID_EXTSTATE_XSAVES	0x00000008
 
+/*
+ * CPUID instruction 0xd Processor Extended State Enumeration
+ * Sub-leaf > 1 ecx info
+ */
+#define	CPUID_EXTSTATE_SUPERVISOR	0x00000001
+#define	CPUID_EXTSTATE_ALIGNED		0x00000002
+#define	CPUID_EXTSTATE_XFD_SUPPORTED	0x00000004
+
 /*
  * AMD extended function 8000_0007h ebx info
  */

From nobody Tue Nov 26 18:30:04 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyWMc6MG2z5dpyN;
	Tue, 26 Nov 2024 18: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyWMc5n1qz56HQ;
	Tue, 26 Nov 2024 18: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=1732645804;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ncYY3DVrAo0h4ps2fCKcI2K0ag4iXbyWkXwugiDFyd4=;
	b=n9OxJJXW9iec+0v0p6f+i1RH4fgs60YKcEiN4Abwosru9SwSYEfibY/wxBG2xyFCLUT4dk
	2A44IjHBSs/v49sH25jgdobbyhY09BznGYv8CwWVx1EIuDjRWekvrEITPlmMLM8wjVxRHb
	LZrjSNmTljXP1Pea4zBydTWBk6sCCCPRkcEallPeobYpll0xXYQgiHo1sx0S9HGppibZ2n
	UNTXzxzCw5j8UaShZIwDMBGLBh/jEzOocLe66iXJkvfvtpL6SujwlkbLCSsat82/luUrhH
	kRathOF/94TpApTJgfgSyaaciv/vtlDoM5Yy+vu6BMsBBhDS9EXTnrPujTx8jA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732645804;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ncYY3DVrAo0h4ps2fCKcI2K0ag4iXbyWkXwugiDFyd4=;
	b=adLibMNCHOXHgaU+81Xk5T8m0iBW6w2teKk/OKs5LV/3amc2VXjonjhezjUGglb4B4trOZ
	zPdpM1VU7vxL5gbf9WoAJ9YrKnnbhl1zB3uGV8oMxmBiY6WQ3gqmvR2JZxtsENg4/01xbc
	pWS18NOE2Mm6WoM2zSfPIw9A+mBbyrvUw57hF6hpF1eWtnzulXXfzGZYKn1EbmlzVhct2L
	IboyV77hRuOK0rJltIZr3FgGUXU/4v2WxrxLng+M2RmXCkON0rk2LHoCX417YWCuHRujD6
	TRorzCnEazOG0yQl/AQ/PFqkcrMXB1DEBbJNebsKBA5+PyaSYyZnYfD7+Y5zUA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732645804; a=rsa-sha256; cv=none;
	b=G49xqkv5fLo5fKfJnc9R2bl+ruqM6+r52KHweKaUChlMIrKdhYgy1Z34zCAcvItRwvoehO
	9gdovwx2MSolSeR5BJUFoY1MkKo5T5CnC7DGZMFZk6scCw1NlTHnaF9zFRtwHo24EqQNI+
	VIibXwWE6DmWAOjyqT8aVPcQR3uP8RcZK7PRyYXXzco6tLXRZoqyDeoadRcDVKmErcduwT
	Pwdd/zHaLiuVwzGp9KmbSz6h/wOHYzJuC2lquxS7S+gxKZQUG2DbffwF8ltyv8Sd4Ala3m
	DalBlbxd2IulNpfgiz/p8U4GJVIMoLi8MRfxtTLpoAPrbZxST7wUfPZ4AvYs3A==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyWMc5GPszc6B;
	Tue, 26 Nov 2024 18: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 4AQIU4MJ097452;
	Tue, 26 Nov 2024 18: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 4AQIU4mV097447;
	Tue, 26 Nov 2024 18:30:04 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 18:30:04 GMT
Message-Id: <202411261830.4AQIU4mV097447@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mitchell Horne <mhorne@FreeBSD.org>
Subject: git: 10ffe0f957a7 - main - ow_temp.4: improve HARDWARE +
  tag SPDX
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mhorne
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 10ffe0f957a7dbe48f2cee3b00abcf7fabf41c7d
Auto-Submitted: auto-generated

The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=10ffe0f957a7dbe48f2cee3b00abcf7fabf41c7d

commit 10ffe0f957a7dbe48f2cee3b00abcf7fabf41c7d
Author:     Alexander Ziaee <concussious@runbox.com>
AuthorDate: 2024-11-26 17:26:15 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2024-11-26 18:29:46 +0000

    ow_temp.4: improve HARDWARE + tag SPDX
    
    Rewrite the hardware support list to a column list for inclusion in the
    Hardware Release Notes. This makes clean subsections.  Tested in
    MANWIDTH 59 and 80. While here, align sysctl list and tag spdx.
    
    Reviewed by:    mhorne
    MFC after:      3 days
    Differential Revision:  https://reviews.freebsd.org/D47707
---
 share/man/man4/ow_temp.4 | 31 ++++++++++++++-----------------
 1 file changed, 14 insertions(+), 17 deletions(-)

diff --git a/share/man/man4/ow_temp.4 b/share/man/man4/ow_temp.4
index f3fd0f488f43..aa92a12103a8 100644
--- a/share/man/man4/ow_temp.4
+++ b/share/man/man4/ow_temp.4
@@ -1,3 +1,5 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-2-Clause
 .\"
 .\" Copyright (c) 2015 M. Warner Losh <imp@FreeBSD.org>
 .\"
@@ -21,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd July 20, 2015
+.Dd November 22, 2024
 .Dt OW_TEMP 4
 .Os
 .Sh NAME
@@ -38,22 +40,17 @@ The sensor is read periodically and the results returned via a
 .Xr sysctl 3
 as described below.
 .Sh HARDWARE
-These temperature sensors are supported by the
+The
 .Nm
-driver:
-.Bl -tag -width MAX31820 -compact
-.It DS1820
-1-Wire Digital Thermometer
-.It DS18S20
-High-Precision 1-Wire Digital Thermometer
-.It DS18B20
-Programmable Resolution 1-Wire Digital Thermometer
-.It DS1822
-Econo 1-Wire Digital Thermometer
-.It DS1825
-Programmable Resolution 1-Wire Digital Thermometer with 4-bit ID
-.It MAX31820
-1-Wire, Parasite-Power, Ambient Temperature Sensor
+driver supports the following temperature sensors:
+.Pp
+.Bl -column "DS18S20" "Econo 1-Wire Digital Thermometer" -compact
+.It DS1820 Ta 1-Wire Digital Thermometer
+.It DS18S20 Ta High-Precision 1-Wire Digital Thermometer
+.It DS18B20 Ta Programmable Resolution 1-Wire Digital Thermometer
+.It DS1822 Ta Econo 1-Wire Digital Thermometer
+.It DS1825 Ta Programmable Resolution 1-Wire Digital Thermometer with 4-bit ID
+.It MAX31820 Ta 1-Wire, Parasite-Power, Ambient Temperature Sensor
 .El
 .Pp
 The driver supports Family codes 0x10, 0x22, 0x28, and 0x3b.
@@ -65,7 +62,7 @@ driver reports data via
 entries in the device's node in the
 .Xr sysctl 8
 tree:
-.Bl -tag -width xxxxxxxxxx
+.Bl -tag -width "reading_interval"
 .It temperature
 The last temperature read, in milli-Kelvin.
 .It badcrc

From nobody Tue Nov 26 18:32:14 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyWQ82BPyz5dqCV;
	Tue, 26 Nov 2024 18:32:16 +0000 (UTC)
	(envelope-from jhb@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyWQ81ckHz578L;
	Tue, 26 Nov 2024 18:32:16 +0000 (UTC)
	(envelope-from jhb@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732645936;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=U3qKNBXHEf5wZihoYOGOIf2k81J7Ab1asF+/L6WrbLk=;
	b=HhMF5a38309MqeKiakfm0G3/daM8xkvFoURtEx6BXAwLXG9XKZNlUupo4zTzFcmFB+NCNF
	QsCLSsd8XO7gmItYa0kLM2nSzPjDgvSCKoKc9Gw3B7gy6Dsmyg6AaDdPsBh8SHhPWzHOTu
	sbWhGUZxEKUImOQVF9vma8RF39J02B34p07BIImnRw9FjXKOw8lV2CTNu8I76btDWeZOt6
	J8hCYow4LRD6QtgB2neJzF1YZItqRksgIK9FpMsPU35FpZZyO55OkWEx7f19gJxDFIa4Om
	pTL/KIDwlGsNNCaWtIZt6WZdAJ4kbhHd3XXtJq6WOGrfL8bnV3RJ4Lxm6dFn/Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732645936;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=U3qKNBXHEf5wZihoYOGOIf2k81J7Ab1asF+/L6WrbLk=;
	b=T0UmLi9KWfrVzPmvJTqMmfLPDhQOdxMZNvcskE69CEvbqUUJ4Iho6oBjqscryIxVoiN/sW
	oJbfecGsA53xP3D7H4aGb458E9GV4qWjXRLM570sysm2pTUpAE7HDiqFsF0d4oQDkk2hOn
	Ajh+p4eS767Izp36uhN10s+DO7jMzGlz6oLG64tb+C/69e9teox/qWEaP1nw16VkKKKB3M
	La9gAlGFg5MCtMUv3sRLDl2sov+pmjV/mlER3z3OOs9SSRA6bCUJdu1/LzO7Q588wwqQfm
	Zxe56ux16XN3rTKi2AC0sDilGMbMP2kYBPATAIYxMqEFkVyuZ07Ptw2wDpeBiA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732645936; a=rsa-sha256; cv=none;
	b=osGI1/8G49nOmAnxt79mylf33T80gPv0FsI6kMlIa+o7IcY4drK2nSgDGU4mvqAGSGfYFx
	tcNC9PQ5io7dDwyu+4017yQyDAnw8ArTbjwWmuPieGxJGW90pKvJbTNGGE+offPePTXA8m
	MHfU7Twkusc29StKYqx091j95NdgSprwCUpDGPYhkbIwibARkM3FGufpsiMqb1E9GaoI4e
	T0R/GAe0KZ4n06wl2jsOkCCYYDKaillQ5o0vyV9N+xlUTEt1S2BLQf/NVtE42vBgTWIxVf
	/qWrijQaj3ftr5th2ud6/i2yHQi1vIXK+3kpeQMGz7g2e2BbXURDYZ5nzhKU3A==
Received: from [IPV6:2601:5c0:4200:b830:ec27:f42f:d16d:a9fa] (unknown [IPv6:2601:5c0:4200:b830:ec27:f42f:d16d:a9fa])
	(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: jhb)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XyWQ772Tqz12hL;
	Tue, 26 Nov 2024 18:32:15 +0000 (UTC)
	(envelope-from jhb@FreeBSD.org)
Message-ID: <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>
Date: Tue, 26 Nov 2024 13:32:14 -0500
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
Content-Language: en-US
To: Christos Margiolis <christos@FreeBSD.org>, src-committers@FreeBSD.org,
 dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
References: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
From: John Baldwin <jhb@FreeBSD.org>
In-Reply-To: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 11/26/24 06:48, Christos Margiolis wrote:
> The branch main has been updated by christos:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=5317480967bfc8bf678e4da3fce81bcb3f5b7836
> 
> commit 5317480967bfc8bf678e4da3fce81bcb3f5b7836
> Author:     Christos Margiolis <christos@FreeBSD.org>
> AuthorDate: 2024-11-26 14:48:36 +0000
> Commit:     Christos Margiolis <christos@FreeBSD.org>
> CommitDate: 2024-11-26 14:48:36 +0000
> 
>      sound: Remove CHN_F_SLEEPING
>      
>      The KASSERT in chn_sleep() can be triggered if more than one thread
>      wants to sleep on a given channel at the same time. While this is not
>      really a common scenario, tools such as stress2, which use fork() and
>      the child process(es) inherit the parent's FDs as a result, we can end
>      up triggering such scenarios.
>      
>      Fix this by removing CHN_F_SLEEPING altogether, which is not very useful
>      in the first place:
>      - CHN_BROADCAST() checks cv_waiters already, so there is no need to
>        check CHN_F_SLEEPING as well.
>      - We can check whether cv_waiters is 0 in pcm_killchans(), instead of
>        whether CHN_F_SLEEPING is not set.
>      
>      Reported by:    dougm, pho (stress2)
>      Sponsored by:   The FreeBSD Foundation
>      MFC after:      2 days
>      Reviewed by:    dev_submerge.ch, markj
>      Differential Revision:  https://reviews.freebsd.org/D47559
> ---
>   sys/dev/sound/pcm/channel.c | 13 +------------
>   sys/dev/sound/pcm/channel.h |  4 ++--
>   sys/dev/sound/pcm/sound.c   |  4 ++--
>   3 files changed, 5 insertions(+), 16 deletions(-)
> 
> diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h
> index 79a8d35b22f7..d226adfba06b 100644
> --- a/sys/dev/sound/pcm/channel.h
> +++ b/sys/dev/sound/pcm/channel.h
> @@ -354,7 +354,7 @@ enum {
>   #define CHN_F_RUNNING		0x00000004  /* dma is running */
>   #define CHN_F_TRIGGERED		0x00000008
>   #define CHN_F_NOTRIGGER		0x00000010
> -#define CHN_F_SLEEPING		0x00000020
> +/* unused			0x00000020 */
>   
>   #define CHN_F_NBIO              0x00000040  /* do non-blocking i/o */
>   #define CHN_F_MMAP		0x00000080  /* has been mmap()ed */
> @@ -381,8 +381,8 @@ enum {
>   				"\002ABORTING"				\
>   				"\003RUNNING"				\
>   				"\004TRIGGERED"				\
> +				/* \006 */				\
>   				"\005NOTRIGGER"				\
> -				"\006SLEEPING"				\
>   				"\007NBIO"				\

Hmm, new comment is mis-sorted?

>   				"\010MMAP"				\
>   				"\011BUSY"				\
> diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c
> index 4b7bcc64397f..218147b73db0 100644
> --- a/sys/dev/sound/pcm/sound.c
> +++ b/sys/dev/sound/pcm/sound.c
> @@ -221,8 +221,8 @@ pcm_killchans(struct snddev_info *d)
>   		/* Make sure all channels are stopped. */
>   		CHN_FOREACH(ch, d, channels.pcm) {
>   			CHN_LOCK(ch);
> -			if ((ch->flags & CHN_F_SLEEPING) == 0 &&
> -			    CHN_STOPPED(ch) && ch->inprog == 0) {
> +			if (ch->intr_cv.cv_waiters == 0 && CHN_STOPPED(ch) &&
> +			    ch->inprog == 0) {

I'm not super excited about reading cv_waiters directly.  Generally speaking
'struct cv' is opaque to the rest of the kernel.  Maybe add a little inline
routine or macro cv_waiters() that returns this value instead?  Then it can
be documented in condvar.9 along with the caveats about when it is safe to
use.

-- 
John Baldwin


From nobody Tue Nov 26 19:48:33 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyY6B0dNHz5dvcw;
	Tue, 26 Nov 2024 19:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyY6B05fwz40pY;
	Tue, 26 Nov 2024 19:48:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732650514;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=xcSQp7wpcFu0qc9PfLYp6SLEttjUx11bzW9BqcICf8w=;
	b=K/SF8U45UYi7pnXntZMz6ZTXREzyv/s4x6MAIYYdOaGl6+pwAd8c0anDtW0OYxSDAR2vd/
	iXtHQoqxLmF9XQTnidBcWkrKR3zSH4toRsEq6Ro6rHwiS7LcixQgJ4FfQBK48LYVVo9SjU
	wLtDtwUaWTtnQqZvK+A8mp64g2Zb5t0Mc0BAyTppOr0ekBcgEAQC03Cfj2epMd9Uq6h7hj
	6wtiUrZhjaXyCyTZdYR9VByHVU6c2v7QS8lAP3zOEDHpn9AxlrGDR85PpOyG5HsWgDZ5oe
	bAM5Ky55KgxPef/5XVut2C807BMDi8gHIc48shSJhiqdH5DV01Hvh3Zfk+Vx5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732650514;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=xcSQp7wpcFu0qc9PfLYp6SLEttjUx11bzW9BqcICf8w=;
	b=xDxTCnVi8gboxFjSWucF3bJ9+z2GoN+EyU4i5V0vGox/jaeDEk4RZzeO4CJbIAxsNc8AJu
	9rBO8keQ3rU5I7ZQUIRRuIQw2kUhbJc5MxF3rhychJgv5VCboshG2DyD5gBYWEBUYY0xHo
	yIsvpCcn7Pl3DZFgq8p3DnM+ZgYiosCGj9rgkXhLfzU2cvyUbblIwoAJXDBo0VhjvlKqlm
	nYPzzjUmdY6MGaQaJ/+jtaoXWHCyBgzC5Z/+VuLq2qLsfJ2R6NgDr6eKJgB58ADgTJpaQl
	o63N1c1NflBYy62JGEZ14EIwgAURIFm7SDfPsSQSZ72h+ZVTYcb8oMWewceSFg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732650514; a=rsa-sha256; cv=none;
	b=PTKRmD0jeg/OVdkCaFKwrZC8A9gKWLol7o5IHv14leerAQYMgLCOaq7oYLtqsQZ0C9r+45
	KiguG0PB5IOQBce/HgGfHP0sYdPyvLbC9mufd3RRG10d/+ZU77JBtEgfZhSRxXTqp36LRq
	U6t5rQbAvVgRukLs5p73INIYpyVyFL1b7SxsfC5B7wahU3PswGJQHH8LI6VqijyKbe2CFQ
	DG/Csyuie93t5PzR5/5226g3fcbijPpekvdBwCPLIO7okHLRFl3rhy2eYvWEtJYVopWKM5
	luIBSq3JHpw4CgHqKYt7sG83sJhcO4BSBpLNOJkiDIArU0Gc9rfH3RuucCO72w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyY696XgLzfHb;
	Tue, 26 Nov 2024 19:48: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 4AQJmXvx042169;
	Tue, 26 Nov 2024 19:48:33 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQJmXJx042166;
	Tue, 26 Nov 2024 19:48:33 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 19:48:33 GMT
Message-Id: <202411261948.4AQJmXJx042166@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 28fdf718b30b - main - amd64: add machine/pte.h
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 28fdf718b30b43d1f9ecaa1d2de021d7b53f8a67
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=28fdf718b30b43d1f9ecaa1d2de021d7b53f8a67

commit 28fdf718b30b43d1f9ecaa1d2de021d7b53f8a67
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-25 23:10:34 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 19:48:27 +0000

    amd64: add machine/pte.h
    
    Following arm64 and risc-v, move definitions that describe
    hardware-enforced layout of PTEs and #PF error bits, into a dedicated
    header.
    
    Reviewed by:    markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47749
---
 sys/amd64/include/pmap.h |  58 +-------------------------
 sys/amd64/include/pte.h  | 104 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 105 insertions(+), 57 deletions(-)

diff --git a/sys/amd64/include/pmap.h b/sys/amd64/include/pmap.h
index adeb89d08bb5..da32b3b087b7 100644
--- a/sys/amd64/include/pmap.h
+++ b/sys/amd64/include/pmap.h
@@ -47,48 +47,7 @@
 #ifndef _MACHINE_PMAP_H_
 #define	_MACHINE_PMAP_H_
 
-/*
- * Page-directory and page-table entries follow this format, with a few
- * of the fields not present here and there, depending on a lot of things.
- */
-				/* ---- Intel Nomenclature ---- */
-#define	X86_PG_V	0x001	/* P	Valid			*/
-#define	X86_PG_RW	0x002	/* R/W	Read/Write		*/
-#define	X86_PG_U	0x004	/* U/S  User/Supervisor		*/
-#define	X86_PG_NC_PWT	0x008	/* PWT	Write through		*/
-#define	X86_PG_NC_PCD	0x010	/* PCD	Cache disable		*/
-#define	X86_PG_A	0x020	/* A	Accessed		*/
-#define	X86_PG_M	0x040	/* D	Dirty			*/
-#define	X86_PG_PS	0x080	/* PS	Page size (0=4k,1=2M)	*/
-#define	X86_PG_PTE_PAT	0x080	/* PAT	PAT index		*/
-#define	X86_PG_G	0x100	/* G	Global			*/
-#define	X86_PG_AVAIL1	0x200	/*    /	Available for system	*/
-#define	X86_PG_AVAIL2	0x400	/*   <	programmers use		*/
-#define	X86_PG_AVAIL3	0x800	/*    \				*/
-#define	X86_PG_PDE_PAT	0x1000	/* PAT	PAT index		*/
-#define	X86_PG_PKU(idx)	((pt_entry_t)idx << 59)
-#define	X86_PG_NX	(1ul<<63) /* No-execute */
-#define	X86_PG_AVAIL(x)	(1ul << (x))
-
-/* Page level cache control fields used to determine the PAT type */
-#define	X86_PG_PDE_CACHE (X86_PG_PDE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
-#define	X86_PG_PTE_CACHE (X86_PG_PTE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
-
-/* Protection keys indexes */
-#define	PMAP_MAX_PKRU_IDX	0xf
-#define	X86_PG_PKU_MASK		X86_PG_PKU(PMAP_MAX_PKRU_IDX)
-
-/*
- * Intel extended page table (EPT) bit definitions.
- */
-#define	EPT_PG_READ		0x001	/* R	Read		*/
-#define	EPT_PG_WRITE		0x002	/* W	Write		*/
-#define	EPT_PG_EXECUTE		0x004	/* X	Execute		*/
-#define	EPT_PG_IGNORE_PAT	0x040	/* IPAT	Ignore PAT	*/
-#define	EPT_PG_PS		0x080	/* PS	Page size	*/
-#define	EPT_PG_A		0x100	/* A	Accessed	*/
-#define	EPT_PG_M		0x200	/* D	Dirty		*/
-#define	EPT_PG_MEMORY_TYPE(x)	((x) << 3) /* MT Memory Type	*/
+#include <machine/pte.h>
 
 /*
  * Define the PG_xx macros in terms of the bits on x86 PTEs.
@@ -117,9 +76,6 @@
 #define	EPT_PG_EMUL_V	X86_PG_AVAIL(52)
 #define	EPT_PG_EMUL_RW	X86_PG_AVAIL(53)
 #define	PG_PROMOTED	X86_PG_AVAIL(54)	/* PDE only */
-#define	PG_FRAME	(0x000ffffffffff000ul)
-#define	PG_PS_FRAME	(0x000fffffffe00000ul)
-#define	PG_PS_PDP_FRAME	(0x000fffffc0000000ul)
 
 /*
  * Promotion to a 2MB (PDE) page mapping requires that the corresponding 4KB
@@ -128,18 +84,6 @@
 #define	PG_PTE_PROMOTE	(PG_NX | PG_MANAGED | PG_W | PG_G | PG_PTE_CACHE | \
 	    PG_M | PG_U | PG_RW | PG_V | PG_PKU_MASK)
 
-/*
- * Page Protection Exception bits
- */
-
-#define PGEX_P		0x01	/* Protection violation vs. not present */
-#define PGEX_W		0x02	/* during a Write cycle */
-#define PGEX_U		0x04	/* access from User mode (UPL) */
-#define PGEX_RSV	0x08	/* reserved PTE field is non-zero */
-#define PGEX_I		0x10	/* during an instruction fetch */
-#define	PGEX_PK		0x20	/* protection key violation */
-#define	PGEX_SGX	0x8000	/* SGX-related */
-
 /*
  * undef the PG_xx macros that define bits in the regular x86 PTEs that
  * have a different position in nested PTEs. This is done when compiling
diff --git a/sys/amd64/include/pte.h b/sys/amd64/include/pte.h
new file mode 100644
index 000000000000..5195bdc224f8
--- /dev/null
+++ b/sys/amd64/include/pte.h
@@ -0,0 +1,104 @@
+/*-
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ * Copyright (c) 2003 Peter Wemm.
+ * Copyright (c) 1991 Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department and William Jolitz of UUNET Technologies Inc.
+ *
+ * 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 University 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 REGENTS 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 REGENTS 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.
+ *
+ * Derived from hp300 version by Mike Hibler, this version by William
+ * Jolitz uses a recursive map [a pde points to the page directory] to
+ * map the page tables using the pagetables themselves. This is done to
+ * reduce the impact on kernel virtual memory for lots of sparse address
+ * space, and to reduce the cost of memory to each process.
+ */
+
+#ifndef _MACHINE_PTE_H_
+#define	_MACHINE_PTE_H_
+
+/*
+ * Page-directory and page-table entries follow this format, with a few
+ * of the fields not present here and there, depending on a lot of things.
+ */
+				/* ---- Intel Nomenclature ---- */
+#define	X86_PG_V	0x001	/* P	Valid			*/
+#define	X86_PG_RW	0x002	/* R/W	Read/Write		*/
+#define	X86_PG_U	0x004	/* U/S  User/Supervisor		*/
+#define	X86_PG_NC_PWT	0x008	/* PWT	Write through		*/
+#define	X86_PG_NC_PCD	0x010	/* PCD	Cache disable		*/
+#define	X86_PG_A	0x020	/* A	Accessed		*/
+#define	X86_PG_M	0x040	/* D	Dirty			*/
+#define	X86_PG_PS	0x080	/* PS	Page size (0=4k,1=2M)	*/
+#define	X86_PG_PTE_PAT	0x080	/* PAT	PAT index		*/
+#define	X86_PG_G	0x100	/* G	Global			*/
+#define	X86_PG_AVAIL1	0x200	/*    /	Available for system	*/
+#define	X86_PG_AVAIL2	0x400	/*   <	programmers use		*/
+#define	X86_PG_AVAIL3	0x800	/*    \				*/
+#define	X86_PG_PDE_PAT	0x1000	/* PAT	PAT index		*/
+#define	X86_PG_PKU(idx)	((pt_entry_t)idx << 59)
+#define	X86_PG_NX	(1ul<<63) /* No-execute */
+#define	X86_PG_AVAIL(x)	(1ul << (x))
+
+/* Page level cache control fields used to determine the PAT type */
+#define	X86_PG_PDE_CACHE (X86_PG_PDE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
+#define	X86_PG_PTE_CACHE (X86_PG_PTE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
+
+/* Protection keys indexes */
+#define	PMAP_MAX_PKRU_IDX	0xf
+#define	X86_PG_PKU_MASK		X86_PG_PKU(PMAP_MAX_PKRU_IDX)
+
+/*
+ * Intel extended page table (EPT) bit definitions.
+ */
+#define	EPT_PG_READ		0x001	/* R	Read		*/
+#define	EPT_PG_WRITE		0x002	/* W	Write		*/
+#define	EPT_PG_EXECUTE		0x004	/* X	Execute		*/
+#define	EPT_PG_IGNORE_PAT	0x040	/* IPAT	Ignore PAT	*/
+#define	EPT_PG_PS		0x080	/* PS	Page size	*/
+#define	EPT_PG_A		0x100	/* A	Accessed	*/
+#define	EPT_PG_M		0x200	/* D	Dirty		*/
+#define	EPT_PG_MEMORY_TYPE(x)	((x) << 3) /* MT Memory Type	*/
+
+#define	PG_FRAME	(0x000ffffffffff000ul)
+#define	PG_PS_FRAME	(0x000fffffffe00000ul)
+#define	PG_PS_PDP_FRAME	(0x000fffffc0000000ul)
+
+/*
+ * Page Protection Exception bits
+ */
+#define PGEX_P		0x01	/* Protection violation vs. not present */
+#define PGEX_W		0x02	/* during a Write cycle */
+#define PGEX_U		0x04	/* access from User mode (UPL) */
+#define PGEX_RSV	0x08	/* reserved PTE field is non-zero */
+#define PGEX_I		0x10	/* during an instruction fetch */
+#define	PGEX_PK		0x20	/* protection key violation */
+#define	PGEX_SGX	0x8000	/* SGX-related */
+
+#endif

From nobody Tue Nov 26 20:16:02 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyYjt42tdz5dxlJ;
	Tue, 26 Nov 2024 20:16: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyYjt3XL4z43qP;
	Tue, 26 Nov 2024 20:16:02 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732652162;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3o4uCMzYiYWXSH+yNqyAAmtpBkrzP8H/CtzjdY5fSUk=;
	b=feuVEMsud/mdIzMRmmuSggk+OHpgxI8lSWvlBoB5A7GCgd8sNn6f4Rf0OsrBiaxXvgf5eA
	FQ0mHtmU6TQ9WpU1VTioJRZTBEZwayIsUVOKn9E7OtRCP+D6TnOghamjNR+/5gH3yRL+5T
	0c6H3gEHgMXuxYbnkPNKdJUVyR2c4TAUOF3Hy3dF5d/76muQ5sNtJPQg0LfI5RkHIlISdY
	qGjHy9hofDwf4Ob5ig9tAyfmQPGFiazLlb+hWCRHSjs1tKblrbdEhREQmXgB5DZhm4MmZw
	TR0iODoizWVNAaL/h29/2NJZgQxf1QH+2YKiRke5OB/ynIl6o3K3/QNeFuoa1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732652162;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3o4uCMzYiYWXSH+yNqyAAmtpBkrzP8H/CtzjdY5fSUk=;
	b=kmKitJfhFQbRfk4ND/vFNOeFSyvH/Tiz/ro+gHZobFQeZfZYXlsp0Y8eqSncph1EY+zX0Y
	pIEIKMhzgWZAHziaEmcj0tXoVlrFpnbiM7m0XWgBJDfc8kdZQAAousJTsDGr0a4x81/aV9
	SYwIlXId4X6xUOecRvW+84zPU3XFEshiVxPCPsTWsezCCgFk1TcdljpAuacxoK+BlRF1Q+
	w5GqQtrsVY/Wu+EmHm21sI+TtknGhWQQe5V/s/ksajfEMqwoRL25bdBYShfJnjMcMLo9Oy
	r1JOFntGlK0W9JHmSVEMJ3lZyrzE5SXmkh2p/wWioOGgUfpILEGTcy+scDfAzg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732652162; a=rsa-sha256; cv=none;
	b=eUya/er29+j6X39RSHLjase6Pp4fMEe77UOl1jgx7CMzdm6x8uiEKlT+dUl9iB0/h87it+
	nJOh5PDguza9CGQ6CDJ7XOWd6KSbWWLAg1eUbC4QTbZm6sLwJOzh31dRqelP6iJOPjJngF
	rIgs0Lq445VRTjRXBOcqQECgX7v1I3w08WoK7a5aPFI5leIp3K7qRiE1tcBBr5NvDjZfeB
	2lQx8HNIavcLiqG2tR9rsxkDIc1r3NyYRvo+J3QweoraOZAG9ShtfjxqIbydbEJ09FOxAP
	z3sM4Tj45QgQr5z7SIsKX4hk+tU9mlVFjFxOnm7iGWtcMOMSqknAagtqUVRRfg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyYjt37dxzfwt;
	Tue, 26 Nov 2024 20:16: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 4AQKG2HL097899;
	Tue, 26 Nov 2024 20:16:02 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQKG23h097896;
	Tue, 26 Nov 2024 20:16:02 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 20:16:02 GMT
Message-Id: <202411262016.4AQKG23h097896@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Jason A. Harmening" <jah@FreeBSD.org>
Subject: git: 31e796c86de0 - main - amdiommu: use static array for
  device table base register offsets
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jah
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 31e796c86de08f48422a12a2b846876e93391a63
Auto-Submitted: auto-generated

The branch main has been updated by jah:

URL: https://cgit.FreeBSD.org/src/commit/?id=31e796c86de08f48422a12a2b846876e93391a63

commit 31e796c86de08f48422a12a2b846876e93391a63
Author:     Jason A. Harmening <jah@FreeBSD.org>
AuthorDate: 2024-11-26 18:12:55 +0000
Commit:     Jason A. Harmening <jah@FreeBSD.org>
CommitDate: 2024-11-26 20:14:25 +0000

    amdiommu: use static array for device table base register offsets
    
    This is a somewhat cleaner and more future-proof way to get the correct
    device table offsets.
    
    Reviewed by:            kib
    Reported by:            crest_freebsd_rlwinm.de
    Fixes:                  5035db22 "amdiommu: Fix device table segment
                            base register offsets"
    Differential Revision:  https://reviews.freebsd.org/D47769
---
 sys/x86/iommu/amd_drv.c | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/sys/x86/iommu/amd_drv.c b/sys/x86/iommu/amd_drv.c
index 5820594691f7..4d7db52a4acd 100644
--- a/sys/x86/iommu/amd_drv.c
+++ b/sys/x86/iommu/amd_drv.c
@@ -224,10 +224,24 @@ amdiommu_create_dev_tbl(struct amdiommu_unit *sc)
 	u_int devtbl_sz, dom, i, reclaimno, segnum_log, segnum, seg_sz;
 	int error;
 
+	static const int devtab_base_regs[] = {
+		AMDIOMMU_DEVTAB_BASE,
+		AMDIOMMU_DEVTAB_S1_BASE,
+		AMDIOMMU_DEVTAB_S2_BASE,
+		AMDIOMMU_DEVTAB_S3_BASE,
+		AMDIOMMU_DEVTAB_S4_BASE,
+		AMDIOMMU_DEVTAB_S5_BASE,
+		AMDIOMMU_DEVTAB_S6_BASE,
+		AMDIOMMU_DEVTAB_S7_BASE
+	};
+
 	segnum_log = (sc->efr & AMDIOMMU_EFR_DEVTBLSEG_MASK) >>
 	    AMDIOMMU_EFR_DEVTBLSEG_SHIFT;
 	segnum = 1 << segnum_log;
 
+	KASSERT(segnum <= nitems(devtab_base_regs),
+	    ("%s: unsupported devtab segment count %u", __func__, segnum));
+
 	devtbl_sz = amdiommu_devtbl_sz(sc);
 	seg_sz = devtbl_sz / segnum;
 	sc->devtbl_obj = vm_pager_allocate(OBJT_PHYS, NULL, atop(devtbl_sz),
@@ -248,7 +262,6 @@ amdiommu_create_dev_tbl(struct amdiommu_unit *sc)
 	for (i = 0; i < segnum; i++) {
 		vm_page_t m;
 		uint64_t rval;
-		u_int reg;
 
 		for (reclaimno = 0; reclaimno < 3; reclaimno++) {
 			VM_OBJECT_WLOCK(sc->devtbl_obj);
@@ -276,9 +289,7 @@ amdiommu_create_dev_tbl(struct amdiommu_unit *sc)
 			pmap_zero_page(m);
 			pmap_qenter(seg_vaddr, &m, 1);
 		}
-		reg = i == 0 ? AMDIOMMU_DEVTAB_BASE : AMDIOMMU_DEVTAB_S1_BASE +
-		    ((i - 1) << 3);
-		amdiommu_write8(sc, reg, rval);		
+		amdiommu_write8(sc, devtab_base_regs[i], rval);
 	}
 
 	return (0);

From nobody Tue Nov 26 20:17:57 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyYm86mkSz5dxZR;
	Tue, 26 Nov 2024 20:18:00 +0000 (UTC)
	(envelope-from christos@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyYm8600nz445C;
	Tue, 26 Nov 2024 20:18:00 +0000 (UTC)
	(envelope-from christos@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732652280;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=4OKRIl7jdLVGV+r3gm+qUfMRZ1s2Rc4s9M6MD2i+7Qs=;
	b=qyx1ge7yQFKc8DA3PDvmcA2AEfGin/5o7qKdB9x271dnQf8gRTbkU7HayZDDczWopaYxp+
	mySknEQQHbbJebX0jQ0q90+UyBAdnGEkW17L86I5Z9pfllqV1gEcc1ITqdiW6OIyWlFEIJ
	amDP3n16YpVLpSiG21qkd/y7o3InnKzPlJoYc65rBzQ+e31Om9212iR408tak+UelSDA+3
	8eygelrbLhcF9ZutzWTvz2YmfhWIB9dAycbBiVkmTZnSaXNk67YMWh3umEmQgM3PNH8taM
	lr9l0GnLTBD1q8OQ6Qe2OTL29wdSQyUqzPpzFl3XTFwWZ0Nqsy8FlBGqJk1TAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732652280;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:dkim-signature;
	bh=4OKRIl7jdLVGV+r3gm+qUfMRZ1s2Rc4s9M6MD2i+7Qs=;
	b=b/539uF6IQQtT1J4Hzn5pUjDvsEJs557P8x0QkbrBYBu7I1ZdZ7wKH70LPTiIa46qGl3wZ
	cur6CsFEaTni4VJaOGZid3Vm1WR28qaHfgGqmnpvAMaQmBP+Z9kGAFFIPJWY+6W76OBm7p
	/alh+cfQQgLYgNUHrEg4gxg8z9wVwadvsQgkMaUimnMhYkjJlhO71s+fd4SzX0cNOmnSp3
	KSiyyrpxhKNqWjy1/uKaETI/H1oPbQyQoxOzRWAI96HWYVQWNuiJ24sFA4/VJB3iemUR/c
	jXC5XUiTsSDuejNY4fK3M2r6qMOcVhyuBoOUmtnC/+tBsECST0Nq5Idx9X9alw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732652280; a=rsa-sha256; cv=none;
	b=Ij9mfMCc6NsjEZxbgjZhMlEfjCG1Vcu0iB6+JVK/0XID+ieEff8YSYV67U/RdoldsVrJEI
	k5H8fk+PYW6afgaq5WqHL4DCgwPRqz6su73dGWemwFCDznUfsvBnxoeXvNR3whNFl1mG2F
	4xAjPVIkCa/vKGjcMLnQgGR5JLawwYZNgV0Ufuq9a37IRBdqoMpKnsyCppoqfIxpKptnuv
	ce65En9ueAUXasv0cltlgb3xV5Py42uywGG5McPc/9crSGM3QzuVyz5U1AwOmK6abKxRvs
	do4wFkVeYYyDJWHmp+DZHj4lsimVeI9mu7BZT6iNZ+4U2KvcYm9iYcuxMs8j7w==
Received: from margiolis.net (mail.margiolis.net [95.179.159.8])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA512)
	(Client did not present a certificate)
	(Authenticated sender: christos/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XyYm827ybz14s4;
	Tue, 26 Nov 2024 20:18:00 +0000 (UTC)
	(envelope-from christos@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=mail; bh=Q9ztYIab8WlHRun
	3FR6eHRsX/pAkGhH+x8zebLW4K8Q=; h=in-reply-to:references:subject:cc:to:
	from:date; d=margiolis.net; b=JM3LOS1GB/WSxhZDg1j+X3ySVxAgIjTYXovZRMoE
	mcckMpo//zEg3/PHQntcDPy91HKW2nI6JjV1A7I7dDUOt5ajVPNpJuAJWcrsArKLhhb4JT
	Mdfax9kxnFNL2A9Td0AJaSjZqEnzEkZ8jqsKBFKl+twTwSsAWqe0NgSQ+dx/U=
Received: from tpad (ik117.dds.pwr.edu.pl [156.17.229.117])
	by margiolis.net (OpenSMTPD) with ESMTPSA id 4b05d838 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO);
	Tue, 26 Nov 2024 20:17:57 +0000 (UTC)
Date: Tue, 26 Nov 2024 21:17:57 +0100
From: Christos Margiolis <christos@freebsd.org>
To: John Baldwin <jhb@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, 
	dev-commits-src-main@freebsd.org
Subject: Re: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
Message-ID: <vvqbxb25dikutghe4pknggpu2mely3syk44sfbk4zpweymzvuz@pia6d26v6a2t>
References: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
 <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>

John Baldwin wrote:
> On 11/26/24 06:48, Christos Margiolis wrote:
> > The branch main has been updated by christos:
> > 
> > URL: https://cgit.FreeBSD.org/src/commit/?id=5317480967bfc8bf678e4da3fce81bcb3f5b7836
> > [...]
> >   				"\004TRIGGERED"				\
> > +				/* \006 */				\
> >   				"\005NOTRIGGER"				\
> > -				"\006SLEEPING"				\
> >   				"\007NBIO"				\
> 
> Hmm, new comment is mis-sorted?

Yes. Oops.

> > [...]
> > +			if (ch->intr_cv.cv_waiters == 0 && CHN_STOPPED(ch) &&
> > +			    ch->inprog == 0) {
> 
> I'm not super excited about reading cv_waiters directly.  Generally speaking
> 'struct cv' is opaque to the rest of the kernel.  Maybe add a little inline
> routine or macro cv_waiters() that returns this value instead?  Then it can
> be documented in condvar.9 along with the caveats about when it is safe to
> use.

I see we already have cv_wmesg() in sys/sys/condvar.h to access
cv_description. Maybe we could add a cv_waiters() macro in there as
well?

Christos

From nobody Tue Nov 26 20:37:18 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XyZBQ4FmYz5dylR;
	Tue, 26 Nov 2024 20:37: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XyZBQ3R6xz45fH;
	Tue, 26 Nov 2024 20:37:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732653438;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=FMFkqrsf7TuhJIBhqjCzba5jsW2dlkGNIBshzr8vigU=;
	b=JgprldIpS07P5IqpEeOts2+dVrUivy6RMC/mChb0QrqfXOAXFkX7WKT1kzHFA5S2OVoeg+
	hiAHJfZGcyfwLCpokHwiqn+JiUYevNyi3w2uUxyjmP/nGBCmX7pYhjdLGO7zlsoZqH+spO
	Qx66ruW0+TZwXoITcwi7AZZcVxMfOtPBSHe87o+vix1gi/ZVdNx3TddYQs8UDxv+se5iAi
	oYo5doWskKKaZU/RvHwcR0enQL+vLXjPjMvDiqJ444FqGkBPXLOAfag5JLAN7dHlXuYJYt
	zHINQdbnr4aq1L/kTuxrrI2N3vOTcBg+LlGbAjb/KtV7yzgN8XokYTBpb5j5Ow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732653438;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=FMFkqrsf7TuhJIBhqjCzba5jsW2dlkGNIBshzr8vigU=;
	b=YSMFXv145tSzxkX/mivzj9qA1nFeH6gwhFZsSkLZyZPjqY6daZD2FFvF9cqCtcrniCFC0L
	202XfHVYFZBB5/Qy1WGV+EXCdUEICpYs/0w9r/Yz/qKOIOb/QRpM3XdYj0jr6h8IMppqmJ
	ZRe7SzmAF18fl+UvkQv//LWYqeRIe5UkjjrMkH1CiUrEUNaFqMdpKzcT63hkEUHS/DaYPs
	BXX6aPzfeVtwvmal1xn2MP7Ddxic7XyGkZDRoqroWXWJKmfN76hoiFNnRhQN+0QMSx9iou
	dxstwDCC009ObpzXdsWlpSvYPvjaVP0TS/SqJb2a9OB8v8E0vjcNxdVvWa30/Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732653438; a=rsa-sha256; cv=none;
	b=EarZc2NQ1CXYubx4DNLt2oiTmDrlw0S21oZnwIOYIHewi8SGWAsVVK1b2TXZBj0Ab30Y1b
	jzqRYQ4aLB7gnGZaqoXj/OSpgSMluz2a8ecTmL+7g1Wgzfldarv8ZaQwarKT00calj/Aju
	wS4qpBgqNx069eU+yfvFL765occIUuZTtUIY2V6dCuH7BOPmpj1paf/yM8zNeK6/1PY2h8
	eeoo/xIizCe9knMr9gTJ6uRZrGnKejTw5iT6T0iksiP7yiLQESC/EZFqc92YFzsgbhnPP4
	Kphzw18svb8tGZVCh2QAlkLmRzw0Wpi4cCYEm8WFRo44uZEr0R1fcuzrMgWupQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XyZBQ32K9zgfd;
	Tue, 26 Nov 2024 20:37: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 4AQKbIFJ036158;
	Tue, 26 Nov 2024 20:37:18 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQKbIGw036155;
	Tue, 26 Nov 2024 20:37:18 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 20:37:18 GMT
Message-Id: <202411262037.4AQKbIGw036155@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= <des@FreeBSD.org>
Subject: git: 6748d4e0eb8a - main - tests: Add regression test for
  ppoll() / pselect() race.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: des
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6748d4e0eb8ab918d55f69ae59a60ecbac8df85f
Auto-Submitted: auto-generated

The branch main has been updated by des:

URL: https://cgit.FreeBSD.org/src/commit/?id=6748d4e0eb8ab918d55f69ae59a60ecbac8df85f

commit 6748d4e0eb8ab918d55f69ae59a60ecbac8df85f
Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2024-11-26 20:36:09 +0000
Commit:     Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2024-11-26 20:36:09 +0000

    tests: Add regression test for ppoll() / pselect() race.
    
    These tests demonstrate the bug that was fixed in ccb973da1f1b.
    
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D47738
---
 tests/sys/kern/Makefile |   1 +
 tests/sys/kern/prace.c  | 144 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 145 insertions(+)

diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile
index b2d133a0457f..8785caf4e293 100644
--- a/tests/sys/kern/Makefile
+++ b/tests/sys/kern/Makefile
@@ -23,6 +23,7 @@ ATF_TESTS_C+=	ktls_test
 ATF_TESTS_C+=	ktrace_test
 ATF_TESTS_C+=	listener_wakeup
 ATF_TESTS_C+=	module_test
+ATF_TESTS_C+=	prace
 ATF_TESTS_C+=	ptrace_test
 TEST_METADATA.ptrace_test+=		timeout="15"
 ATF_TESTS_C+=	reaper
diff --git a/tests/sys/kern/prace.c b/tests/sys/kern/prace.c
new file mode 100644
index 000000000000..e6aa09ec2180
--- /dev/null
+++ b/tests/sys/kern/prace.c
@@ -0,0 +1,144 @@
+/*-
+ * Copyright (c) 2024 Klara, Inc.
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * These tests demonstrate a bug in ppoll() and pselect() where a blocked
+ * signal can fire after the timer runs out but before the signal mask is
+ * restored.  To do this, we fork a child process which installs a SIGINT
+ * handler and repeatedly calls either ppoll() or pselect() with a 1 ms
+ * timeout, while the parent repeatedly sends SIGINT to the child at
+ * intervals that start out at 1100 us and gradually decrease to 900 us.
+ * Each SIGINT resynchronizes parent and child, and sooner or later the
+ * parent hits the sweet spot and the SIGINT arrives at just the right
+ * time to demonstrate the bug.
+ */
+
+#include <sys/select.h>
+#include <sys/wait.h>
+
+#include <err.h>
+#include <errno.h>
+#include <poll.h>
+#include <signal.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+#include <atf-c.h>
+
+static volatile sig_atomic_t caught[NSIG];
+
+static void
+handler(int signo)
+{
+	caught[signo]++;
+}
+
+static void
+child(int rd, bool poll)
+{
+	struct timespec timeout = { .tv_nsec = 1000000 };
+	sigset_t set0, set1;
+	int ret;
+
+	/* empty mask for ppoll() / pselect() */
+	sigemptyset(&set0);
+
+	/* block SIGINT, then install a handler for it */
+	sigemptyset(&set1);
+	sigaddset(&set1, SIGINT);
+	sigprocmask(SIG_BLOCK, &set1, NULL);
+	signal(SIGINT, handler);
+
+	/* signal parent that we are ready */
+	close(rd);
+	for (;;) {
+		/* sleep for 1 ms with signals unblocked */
+		ret = poll ? ppoll(NULL, 0, &timeout, &set0) :
+		    pselect(0, NULL, NULL, NULL, &timeout, &set0);
+		/*
+		 * At this point, either ret == 0 (timer ran out) errno ==
+		 * EINTR (a signal was received).  Any other outcome is
+		 * abnormal.
+		 */
+		if (ret != 0 && errno != EINTR)
+			err(1, "p%s()", poll ? "poll" : "select");
+		/* if ret == 0, we should not have caught any signals */
+		if (ret == 0 && caught[SIGINT]) {
+			/*
+			 * We successfully demonstrated the race.  Restore
+			 * the default action and re-raise SIGINT.
+			 */
+			signal(SIGINT, SIG_DFL);
+			raise(SIGINT);
+			/* Not reached */
+		}
+		/* reset for next attempt */
+		caught[SIGINT] = 0;
+	}
+	/* Not reached */
+}
+
+static void
+prace(bool poll)
+{
+	int pd[2], status;
+	pid_t pid;
+
+	/* fork child process */
+	if (pipe(pd) != 0)
+		err(1, "pipe()");
+	if ((pid = fork()) < 0)
+		err(1, "fork()");
+	if (pid == 0) {
+		close(pd[0]);
+		child(pd[1], poll);
+		/* Not reached */
+	}
+	close(pd[1]);
+
+	/* wait for child to signal readiness */
+	(void)read(pd[0], &pd[0], sizeof(pd[0]));
+	close(pd[0]);
+
+	/* repeatedly attempt to signal at just the right moment */
+	for (useconds_t timeout = 1100; timeout > 900; timeout--) {
+		usleep(timeout);
+		if (kill(pid, SIGINT) != 0) {
+			if (errno != ENOENT)
+				err(1, "kill()");
+			/* ENOENT means the child has terminated */
+			break;
+		}
+	}
+
+	/* we're done, kill the child for sure */
+	(void)kill(pid, SIGKILL);
+	if (waitpid(pid, &status, 0) < 0)
+		err(1, "waitpid()");
+
+	/* assert that the child died of SIGKILL */
+	ATF_REQUIRE(WIFSIGNALED(status));
+	ATF_REQUIRE_MSG(WTERMSIG(status) == SIGKILL,
+	    "child caught SIG%s", sys_signame[WTERMSIG(status)]);
+}
+
+ATF_TC_WITHOUT_HEAD(ppoll_race);
+ATF_TC_BODY(ppoll_race, tc)
+{
+	prace(true);
+}
+
+ATF_TC_WITHOUT_HEAD(pselect_race);
+ATF_TC_BODY(pselect_race, tc)
+{
+	prace(false);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
+	ATF_TP_ADD_TC(tp, ppoll_race);
+	ATF_TP_ADD_TC(tp, pselect_race);
+	return (atf_no_error());
+}

From nobody Tue Nov 26 21:32:37 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XybQF62CPz5f3GG;
	Tue, 26 Nov 2024 21:32: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XybQF5TtNz4CtR;
	Tue, 26 Nov 2024 21:32:37 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732656757;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=oGyrtT2/9DNT0BhFMJDf12w8tII1hBQq2n5nYOz0AnM=;
	b=YJr3NL5GjjFrhLR/HVa4giDTJBD5c1zRKmYCboG17M3O+58JwjFu39z39TQMviPOx6GdfI
	dbvMeQHUVP+vxhi/3FX/7hcOwLxm1/EOdwj1AgbarRwUB2HO+PS5b7y+dHDkEMOKpbRtdp
	yiHucIqobhiiRpF+FIEIRgKbE1fkEEtTa4GVHcJLHROhJtZ88YmiRr/I4jE3rNo7Xb1fL5
	nmqZ7C9fPJdWo3jXHXIhmK6GQrR/3AV3IVJwPKGkcUWFv4jVo8i9jRWzU37MOMdmlVdny2
	GF6LcvsHK5XSgF8XWCELX4Gs9c4hT17jMFn59hDJg7MaUOJxvLFQXKCMPTRGpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732656757;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=oGyrtT2/9DNT0BhFMJDf12w8tII1hBQq2n5nYOz0AnM=;
	b=S0VOdJirR54u1UTJnz8SD+uZwJu/Q/68dF4RqEAdofKHSqmThMz8IZp8TgmiC97GRwaj0E
	232VJQPzIiQw/mm1JAsEQ7RnpBzw318RO4qGvRdJF4OxFbObOlR9dO3BIAbrHWmZWPen2L
	euY/dXu+D1pTFYjUbhfh8HeqEyV2h63wBYe1lGFm98ZmmUrasEGZ1TljR9omL+X6EGvxmg
	TLfIZnXwdNt/CchrqRyjI6U/DniMFZjXor4HyKAD+8UNq4LkBxNOWdw+adQuKnZbj/Hadw
	iMkJMHYmVlh1KxzAP7gAeEZMQhnQWaV/RozrFXSdIBKOH1q7GQWVbvh+MVK/7A==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732656757; a=rsa-sha256; cv=none;
	b=YVPE6QGnwtKU3MNqyjwScVxrmV7vdRZAGiB4dxMtwxMQWgEi6KN/CJecQqHgoX3y9wcgsy
	dthsLdYIn+4zmDTyfsyir/h4UHAu+TFSK5fwWFhl1+N1mxeQV5mDWA9SZrinhpRAeA/r3a
	jdn3vmwXrnsKwBFVsENCRtqKOag4bTZWd5p28DYrnXgyu3hL7OA/pGmalLnsWekgMkEkIY
	2QXDKlRthpHeog4fEFKPlNGylgVFVjT4UOET2tj/UOvXpJoiy5V8o0mb3SsyeyvWwulHsW
	Sa8aiPn5OugW8gauRPlhvrRVN/qJTIhr8/c86gGxUEaLTDoGGq68CUB7QHdAxA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XybQF55BMzhm2;
	Tue, 26 Nov 2024 21:32: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 4AQLWbu8046356;
	Tue, 26 Nov 2024 21:32:37 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQLWbkn046353;
	Tue, 26 Nov 2024 21:32:37 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 21:32:37 GMT
Message-Id: <202411262132.4AQLWbkn046353@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: f06b747118cb - main - kevent: Use designated array
  indices to initialize the sysfilt_ops table
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: f06b747118cb47212bfc178993171007ee7e9424
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=f06b747118cb47212bfc178993171007ee7e9424

commit f06b747118cb47212bfc178993171007ee7e9424
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-19 22:40:08 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-26 20:57:10 +0000

    kevent: Use designated array indices to initialize the sysfilt_ops table
    
    This makes it a bit easier to see where operations on a particular
    filter are defined.  No functional change intended.
    
    MFC after:      1 week
    Sponsored by:   Klara, Inc.
    Sponsored by:   Modirum MDPay
---
 sys/kern/kern_event.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c
index 41295c374e65..fa96fbad20ce 100644
--- a/sys/kern/kern_event.c
+++ b/sys/kern/kern_event.c
@@ -346,19 +346,19 @@ static struct {
 	int for_nolock;
 	int for_refcnt;
 } sysfilt_ops[EVFILT_SYSCOUNT] = {
-	{ &file_filtops, 1 },			/* EVFILT_READ */
-	{ &file_filtops, 1 },			/* EVFILT_WRITE */
-	{ &null_filtops },			/* EVFILT_AIO */
-	{ &file_filtops, 1 },			/* EVFILT_VNODE */
-	{ &proc_filtops, 1 },			/* EVFILT_PROC */
-	{ &sig_filtops, 1 },			/* EVFILT_SIGNAL */
-	{ &timer_filtops, 1 },			/* EVFILT_TIMER */
-	{ &file_filtops, 1 },			/* EVFILT_PROCDESC */
-	{ &fs_filtops, 1 },			/* EVFILT_FS */
-	{ &null_filtops },			/* EVFILT_LIO */
-	{ &user_filtops, 1 },			/* EVFILT_USER */
-	{ &null_filtops },			/* EVFILT_SENDFILE */
-	{ &file_filtops, 1 },                   /* EVFILT_EMPTY */
+	[~EVFILT_READ] = { &file_filtops, 1 },
+	[~EVFILT_WRITE] = { &file_filtops, 1 },
+	[~EVFILT_AIO] = { &null_filtops },
+	[~EVFILT_VNODE] = { &file_filtops, 1 },
+	[~EVFILT_PROC] = { &proc_filtops, 1 },
+	[~EVFILT_SIGNAL] = { &sig_filtops, 1 },
+	[~EVFILT_TIMER] = { &timer_filtops, 1 },
+	[~EVFILT_PROCDESC] = { &file_filtops, 1 },
+	[~EVFILT_FS] = { &fs_filtops, 1 },
+	[~EVFILT_LIO] = { &null_filtops },
+	[~EVFILT_USER] = { &user_filtops, 1 },
+	[~EVFILT_SENDFILE] = { &null_filtops },
+	[~EVFILT_EMPTY] = { &file_filtops, 1 },
 };
 
 /*

From nobody Tue Nov 26 21:32:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XybQH0lKyz5f3P3;
	Tue, 26 Nov 2024 21:32: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XybQG6SRQz4CwF;
	Tue, 26 Nov 2024 21:32:38 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732656758;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=e35vJVcJfvTH3qx55s6x/a/s4vqYtmTShx5R1ZLtr+8=;
	b=dIlr/58Z7EmOysfsPHuZ6HPy1RedCx0us1l1xPMBW0XESSa7BCplWCP4DavzHIoGr79cVG
	f1EabuKWrjm+/zfmoexuariKchq9YUsfoBAMHcHfXrCpatbPFtBZAhz9WrWNkiX0s2Tq5w
	Lef99+KY6vRZmHs0ha5OLTHb81mjyEI17JblIRMnaaZSH/HXhezGwEhkni17AvlWOJoEdF
	8G+ewdeGBfC2R0fadWKVZtGoWmNEz7idLsCucXJI9uG0dzTFi3LFYHTG99aJAT7SF8Pt9y
	DthKEb5g7zRanxyt8+CkPMTt6/yDAiVJExyyw3cqEBny4If2h6X9cvXFPLrKbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732656758;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=e35vJVcJfvTH3qx55s6x/a/s4vqYtmTShx5R1ZLtr+8=;
	b=PGTH+4MRm57Kw/lFaLBm+1KMW7RJaZcYL/6cDI2PIB2kaw9SEPaEgoprcHtpoA2sl3Q0ZA
	s3505HwN4F86nh+eFqYmyshMCRfwYXG6PNM4nlRLv55LAlH7SHXzeOLI+PjPvdNnrbeoS0
	YquRxISAj+pFrXI8fDmvIzutCftPqcQ1bcecjMtig+fGeEF42QC7do/gIQG4HCtDk2X8qt
	SQ+1aP8SakCQAXHKuJLfOyTjx0TV6M1xM5RyEEnoy//FXDdd2Ujp0I/fEbvbiBKvRiBjfy
	NmAK5ofMR8QcFgu/HLRkxB8GjvP9dlye9G6iacmWTeCucAJT6iG9X4M16uztOg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732656758; a=rsa-sha256; cv=none;
	b=QyE8MdgSpekYn3OmuSvZgko9p62CS8ptC7qoSR/pAlbyNndQ3rvje3nodfO4Uq/o1pkj7w
	Gdt1NCXH6fJ7DuNT9OmHexGizHrIleq/vBEWJS5zAmfDW2JNJBr0dQLEBUpTWfTnHrvboD
	EyJ87gxa/NpxNUfBFKJ5S015bO9U0bWeIjvB7ihj2QHFvjmgsM+XZWY+lUfXlbV7k4haIN
	UN23WXtcHdGg9lFqGfy3NapqikWjnxgGaOO/8lW/Lg/yVpPtiYg7+I34W5KfTAGs5gvEtl
	rHVlcDtAW5AW3LkpzNs3M0ru8CyuXI+98LvuESSLoOnSsGK4opZ+r5EE/Hx9IQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XybQG64Gtzh17;
	Tue, 26 Nov 2024 21:32: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 4AQLWc18046449;
	Tue, 26 Nov 2024 21:32:38 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQLWcC3046446;
	Tue, 26 Nov 2024 21:32:38 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 21:32:38 GMT
Message-Id: <202411262132.4AQLWcC3046446@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: cd048d5d8be7 - main - vnode: Make the vop_vector
  reference a pointer to const
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: cd048d5d8be736419df878c26e6e170b8569dd12
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=cd048d5d8be736419df878c26e6e170b8569dd12

commit cd048d5d8be736419df878c26e6e170b8569dd12
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-25 22:38:22 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-26 20:57:54 +0000

    vnode: Make the vop_vector reference a pointer to const
    
    No functional change intended.
    
    MFC after:      1 week
---
 sys/sys/vnode.h        | 2 +-
 sys/tools/vnode_if.awk | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h
index c929b4265552..42973adac287 100644
--- a/sys/sys/vnode.h
+++ b/sys/sys/vnode.h
@@ -132,7 +132,7 @@ struct vnode {
 	seqc_t	v_seqc;				/* i modification count */
 	uint32_t v_nchash;			/* u namecache hash */
 	u_int	v_hash;
-	struct	vop_vector *v_op;		/* u vnode operations vector */
+	const struct vop_vector *v_op;		/* u vnode operations vector */
 	void	*v_data;			/* u private data for fs */
 
 	/*
diff --git a/sys/tools/vnode_if.awk b/sys/tools/vnode_if.awk
index b8f616f08fd9..2326d0e28956 100644
--- a/sys/tools/vnode_if.awk
+++ b/sys/tools/vnode_if.awk
@@ -325,7 +325,7 @@ while ((getline < srcfile) > 0) {
 
 		# Print out function prototypes.
 		printh("int " uname "_AP(struct " name "_args *);");
-		printh("int " uname "_APV(struct vop_vector *vop, struct " name "_args *);");
+		printh("int " uname "_APV(const struct vop_vector *vop, struct " name "_args *);");
 		printh("");
 		printh("static __inline int " uname "(");
 		for (i = 0; i < numargs; ++i) {
@@ -389,7 +389,7 @@ while ((getline < srcfile) > 0) {
 		printc("");
 		printc("\treturn(" uname "_APV(a->a_" args[0] "->v_op, a));");
 		printc("}");
-		printc("\nint\n" uname "_APV(struct vop_vector *vop, struct " name "_args *a)");
+		printc("\nint\n" uname "_APV(const struct vop_vector *vop, struct " name "_args *a)");
 		printc("{");
 		printc("\tint rc;");
 		printc("");

From nobody Tue Nov 26 21:32:39 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XybQJ1DtSz5f3GL;
	Tue, 26 Nov 2024 21:32: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XybQJ07Nnz4Cyd;
	Tue, 26 Nov 2024 21:32:40 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732656760;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=5v2+0q2yPFxoBVDY5eaLMfeBl5HMGOAq9UTgJUEOiF8=;
	b=dwgcLSQiC+4VPIWu6fAoxaQz/QLqEP1rHueokX1CW1sVvjr5S/+Kf4ibGsRkzZZlM8089b
	g+wV3rTKBGfR3oK5fDOPPy+b0eD33qkKY33g4ktbyOqpsZNfVotuyEtiT7CgK8GvmF2hHK
	qYaolAnsyAWLN2ajDwKJUPC26WRM6o0KIhkYmbec+v6B+TVR8mYOvr+VihtvuPA61qIOOF
	UbSiBjV2/2J2YWjzA+L8RX9ytiXBQlIUsDFx3BgGGsMJjR9UawJdug66qCFLqXx7K//YBb
	jnT85Ya5hFaCjv/ip0KJQGXnDVm7rgnX0GffvfkZ8FJXzTJYLd5pksbuD1x7ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732656760;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=5v2+0q2yPFxoBVDY5eaLMfeBl5HMGOAq9UTgJUEOiF8=;
	b=s15GmumH5n4rnAdVPlacs0dbw5fxx93HdDQNray3fCA/D1bfsfa9DGzKJrCqyLIju8x5PL
	FEQJ5ukK0YCfeh18/DdYw5NWiRXE/YrLMJpEnLDHx3INbMFFe2s829gcY5YaKPbDVz3Xo4
	vov1zPWEf8OMoxuGGL0A8j+L9sPV82Y8180QzZCXGvZ0qOa6lmWgh06dc6rjQVDQCME4HF
	tmO4z+I8fC1S3RAfjP5x0ACbz7H2jyMmT3oCBexpAdJlxqiXpIOz4FI4G87euYkVmeWuCF
	eT5bTFsupXDXPKwSC0dycyEYDnpznr9znjxPQ84kygL22gyuZCpl72RcV8hW8g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732656760; a=rsa-sha256; cv=none;
	b=IXNNZ1cuCbXHqRQ9Hzuubu3IG6Nb4B0xCd8b0PNSch0yzyk1hdlr7gRjHECridgMRySpJS
	Ci+MvPxIezTFsG54Gym80GDZtsuuH/XXekc1pLIzhecjbUaTYx2QGiu3At2UPNxapDO0GA
	mHWhfCmr8FBO+Bm2mfjGR8+kJ1lZeGJoaUa2kjgRafE04h4/3jflFTJra2PYJ+qnXVRH71
	lhJdABGE5uhbY9l53rXmIB5PNjyawrJfgHwPcUMCe7pzrEOyFxPTKqjhmlcxVGJs/9e+IP
	/d+/eAGoMQSrcJ6CXyDZ/7jV/nM/5ZJRh/92ccDZMVWVsbJrNh5tGgMztTLUGw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XybQH6ZfZzhp5;
	Tue, 26 Nov 2024 21:32: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 4AQLWdTX046503;
	Tue, 26 Nov 2024 21:32:39 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQLWdg8046500;
	Tue, 26 Nov 2024 21:32:39 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 21:32:39 GMT
Message-Id: <202411262132.4AQLWdg8046500@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: ef9ffb8594ee - main - kern: Make fileops and filterops
  tables const where possible
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: ef9ffb8594eee294334ced627755bf5b46b48f9f
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=ef9ffb8594eee294334ced627755bf5b46b48f9f

commit ef9ffb8594eee294334ced627755bf5b46b48f9f
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-25 22:39:31 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-26 21:04:21 +0000

    kern: Make fileops and filterops tables const where possible
    
    No functional change intended.
    
    MFC after:      1 week
---
 sys/arm/ti/ti_pruss.c                              |  2 +-
 sys/cam/scsi/scsi_pass.c                           |  2 +-
 sys/cam/scsi/scsi_target.c                         |  2 +-
 sys/compat/linuxkpi/common/include/linux/file.h    |  2 +-
 sys/compat/linuxkpi/common/src/linux_compat.c      |  6 +++---
 sys/dev/beri/beri_ring.c                           |  4 ++--
 sys/dev/cyapa/cyapa.c                              |  2 +-
 sys/dev/evdev/cdev.c                               |  2 +-
 sys/dev/evdev/uinput.c                             |  4 ++--
 sys/dev/gpio/gpioc.c                               |  2 +-
 sys/dev/hid/hidraw.c                               |  2 +-
 sys/dev/netmap/netmap_freebsd.c                    |  4 ++--
 sys/dev/qat/qat_common/adf_freebsd_dev_processes.c |  2 +-
 sys/dev/usb/usb_dev.c                              |  4 ++--
 sys/fs/cuse/cuse.c                                 |  4 ++--
 sys/fs/devfs/devfs_vnops.c                         |  4 ++--
 sys/fs/fuse/fuse_device.c                          |  4 ++--
 sys/geom/geom_dev.c                                |  2 +-
 sys/kern/kern_descrip.c                            |  9 +++++----
 sys/kern/kern_devctl.c                             |  2 +-
 sys/kern/kern_event.c                              | 18 +++++++++---------
 sys/kern/kern_sig.c                                |  2 +-
 sys/kern/subr_log.c                                |  2 +-
 sys/kern/sys_eventfd.c                             |  6 +++---
 sys/kern/sys_pipe.c                                |  8 ++++----
 sys/kern/sys_procdesc.c                            |  4 ++--
 sys/kern/sys_socket.c                              |  2 +-
 sys/kern/sys_timerfd.c                             |  4 ++--
 sys/kern/tty.c                                     |  4 ++--
 sys/kern/tty_pts.c                                 |  6 +++---
 sys/kern/uipc_mqueue.c                             |  8 ++++----
 sys/kern/uipc_sem.c                                |  2 +-
 sys/kern/uipc_shm.c                                |  2 +-
 sys/kern/uipc_socket.c                             |  6 +++---
 sys/kern/vfs_aio.c                                 |  4 ++--
 sys/kern/vfs_subr.c                                |  8 ++++----
 sys/kern/vfs_vnops.c                               |  2 +-
 sys/net/bpf.c                                      |  4 ++--
 sys/net/if_tuntap.c                                |  4 ++--
 sys/security/audit/audit_pipe.c                    |  2 +-
 sys/sys/file.h                                     | 12 ++++++------
 sys/sys/mman.h                                     |  2 +-
 sys/sys/pipe.h                                     |  2 +-
 sys/x86/acpica/acpi_apm.c                          |  2 +-
 44 files changed, 91 insertions(+), 90 deletions(-)

diff --git a/sys/arm/ti/ti_pruss.c b/sys/arm/ti/ti_pruss.c
index b7a04f2cfb42..4e9f2022240c 100644
--- a/sys/arm/ti/ti_pruss.c
+++ b/sys/arm/ti/ti_pruss.c
@@ -789,7 +789,7 @@ ti_pruss_mmap(struct cdev *cdev, vm_ooffset_t offset, vm_paddr_t *paddr,
 	return (0);
 }
 
-static struct filterops ti_pruss_kq_read = {
+static const struct filterops ti_pruss_kq_read = {
 	.f_isfd = 1,
 	.f_detach = ti_pruss_irq_kqread_detach,
 	.f_event = ti_pruss_irq_kqevent,
diff --git a/sys/cam/scsi/scsi_pass.c b/sys/cam/scsi/scsi_pass.c
index 5a24f11e60e2..534ea945a54b 100644
--- a/sys/cam/scsi/scsi_pass.c
+++ b/sys/cam/scsi/scsi_pass.c
@@ -202,7 +202,7 @@ static struct cdevsw pass_cdevsw = {
 	.d_name =	"pass",
 };
 
-static struct filterops passread_filtops = {
+static const struct filterops passread_filtops = {
 	.f_isfd	=	1,
 	.f_detach =	passreadfiltdetach,
 	.f_event =	passreadfilt
diff --git a/sys/cam/scsi/scsi_target.c b/sys/cam/scsi/scsi_target.c
index 034b528b415c..21c78e35dadc 100644
--- a/sys/cam/scsi/scsi_target.c
+++ b/sys/cam/scsi/scsi_target.c
@@ -104,7 +104,7 @@ static d_poll_t		targpoll;
 static d_kqfilter_t	targkqfilter;
 static void		targreadfiltdetach(struct knote *kn);
 static int		targreadfilt(struct knote *kn, long hint);
-static struct filterops targread_filtops = {
+static const struct filterops targread_filtops = {
 	.f_isfd = 1,
 	.f_detach = targreadfiltdetach,
 	.f_event = targreadfilt,
diff --git a/sys/compat/linuxkpi/common/include/linux/file.h b/sys/compat/linuxkpi/common/include/linux/file.h
index f94e3d89ced1..f6e988c2d88e 100644
--- a/sys/compat/linuxkpi/common/include/linux/file.h
+++ b/sys/compat/linuxkpi/common/include/linux/file.h
@@ -43,7 +43,7 @@ struct linux_file;
 
 #undef file
 
-extern struct fileops linuxfileops;
+extern const struct fileops linuxfileops;
 
 static inline struct linux_file *
 linux_fget(unsigned int fd)
diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c
index 8f705cd3b2ce..ec3ccb16b47d 100644
--- a/sys/compat/linuxkpi/common/src/linux_compat.c
+++ b/sys/compat/linuxkpi/common/src/linux_compat.c
@@ -1112,13 +1112,13 @@ linux_file_kqfilter_write_event(struct knote *kn, long hint)
 	return ((filp->f_kqflags & LINUX_KQ_FLAG_NEED_WRITE) ? 1 : 0);
 }
 
-static struct filterops linux_dev_kqfiltops_read = {
+static const struct filterops linux_dev_kqfiltops_read = {
 	.f_isfd = 1,
 	.f_detach = linux_file_kqfilter_detach,
 	.f_event = linux_file_kqfilter_read_event,
 };
 
-static struct filterops linux_dev_kqfiltops_write = {
+static const struct filterops linux_dev_kqfiltops_write = {
 	.f_isfd = 1,
 	.f_detach = linux_file_kqfilter_detach,
 	.f_event = linux_file_kqfilter_write_event,
@@ -1737,7 +1737,7 @@ linux_file_kcmp(struct file *fp1, struct file *fp2, struct thread *td)
 	return (kcmp_cmp((uintptr_t)filp1->f_cdev, (uintptr_t)filp2->f_cdev));
 }
 
-struct fileops linuxfileops = {
+const struct fileops linuxfileops = {
 	.fo_read = linux_file_read,
 	.fo_write = linux_file_write,
 	.fo_truncate = invfo_truncate,
diff --git a/sys/dev/beri/beri_ring.c b/sys/dev/beri/beri_ring.c
index 5ff0a74d8b07..2d8f9d85d069 100644
--- a/sys/dev/beri/beri_ring.c
+++ b/sys/dev/beri/beri_ring.c
@@ -365,14 +365,14 @@ beri_kqdetach(struct knote *kn)
 	knlist_remove(&sc->beri_rsel.si_note, kn, 0);
 }
 
-static struct filterops beri_read_filterops = {
+static const struct filterops beri_read_filterops = {
 	.f_isfd =       1,
 	.f_attach =     NULL,
 	.f_detach =     beri_kqdetach,
 	.f_event =      beri_kqread,
 };
 
-static struct filterops beri_write_filterops = {
+static const struct filterops beri_write_filterops = {
 	.f_isfd =       1,
 	.f_attach =     NULL,
 	.f_detach =     beri_kqdetach,
diff --git a/sys/dev/cyapa/cyapa.c b/sys/dev/cyapa/cyapa.c
index 307cd4d35b2e..50fa4faa560a 100644
--- a/sys/dev/cyapa/cyapa.c
+++ b/sys/dev/cyapa/cyapa.c
@@ -1100,7 +1100,7 @@ again:
 static void cyapafiltdetach(struct knote *);
 static int cyapafilt(struct knote *, long);
 
-static struct filterops cyapa_filtops = {
+static const struct filterops cyapa_filtops = {
 	    .f_isfd = 1,
 	    .f_detach = cyapafiltdetach,
 	    .f_event = cyapafilt
diff --git a/sys/dev/evdev/cdev.c b/sys/dev/evdev/cdev.c
index c9a8258a03a9..9fe1299a0937 100644
--- a/sys/dev/evdev/cdev.c
+++ b/sys/dev/evdev/cdev.c
@@ -91,7 +91,7 @@ static struct cdevsw evdev_cdevsw = {
 	.d_name = "evdev",
 };
 
-static struct filterops evdev_cdev_filterops = {
+static const struct filterops evdev_cdev_filterops = {
 	.f_isfd = 1,
 	.f_attach = NULL,
 	.f_detach = evdev_kqdetach,
diff --git a/sys/dev/evdev/uinput.c b/sys/dev/evdev/uinput.c
index 3bf0e91b7360..9ac9fee8a157 100644
--- a/sys/dev/evdev/uinput.c
+++ b/sys/dev/evdev/uinput.c
@@ -93,13 +93,13 @@ static struct cdevsw uinput_cdevsw = {
 
 static struct cdev *uinput_cdev;
 
-static struct evdev_methods uinput_ev_methods = {
+static const struct evdev_methods uinput_ev_methods = {
 	.ev_open = NULL,
 	.ev_close = NULL,
 	.ev_event = uinput_ev_event,
 };
 
-static struct filterops uinput_filterops = {
+static const struct filterops uinput_filterops = {
 	.f_isfd = 1,
 	.f_attach = NULL,
 	.f_detach = uinput_kqdetach,
diff --git a/sys/dev/gpio/gpioc.c b/sys/dev/gpio/gpioc.c
index b9d95338e211..87fed38ebe3e 100644
--- a/sys/dev/gpio/gpioc.c
+++ b/sys/dev/gpio/gpioc.c
@@ -151,7 +151,7 @@ static struct cdevsw gpioc_cdevsw = {
 	.d_name		= "gpioc",
 };
 
-static struct filterops gpioc_read_filterops = {
+static const struct filterops gpioc_read_filterops = {
 	.f_isfd =	true,
 	.f_attach =	NULL,
 	.f_detach =	gpioc_kqdetach,
diff --git a/sys/dev/hid/hidraw.c b/sys/dev/hid/hidraw.c
index ccfdcdddf545..45ef1995063e 100644
--- a/sys/dev/hid/hidraw.c
+++ b/sys/dev/hid/hidraw.c
@@ -172,7 +172,7 @@ static int		hidraw_kqread(struct knote *, long);
 static void		hidraw_kqdetach(struct knote *);
 static void		hidraw_notify(struct hidraw_softc *);
 
-static struct filterops hidraw_filterops_read = {
+static const struct filterops hidraw_filterops_read = {
 	.f_isfd =	1,
 	.f_detach =	hidraw_kqdetach,
 	.f_event =	hidraw_kqread,
diff --git a/sys/dev/netmap/netmap_freebsd.c b/sys/dev/netmap/netmap_freebsd.c
index 215b1f7bd09e..6448fdc74160 100644
--- a/sys/dev/netmap/netmap_freebsd.c
+++ b/sys/dev/netmap/netmap_freebsd.c
@@ -1397,13 +1397,13 @@ netmap_knwrite(struct knote *kn, long hint)
 	return netmap_knrw(kn, hint, POLLOUT);
 }
 
-static struct filterops netmap_rfiltops = {
+static const struct filterops netmap_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = netmap_knrdetach,
 	.f_event = netmap_knread,
 };
 
-static struct filterops netmap_wfiltops = {
+static const struct filterops netmap_wfiltops = {
 	.f_isfd = 1,
 	.f_detach = netmap_knwdetach,
 	.f_event = netmap_knwrite,
diff --git a/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c b/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c
index a70f25d57dcb..661d5bd0f14e 100644
--- a/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c
+++ b/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c
@@ -85,7 +85,7 @@ static struct cdevsw adf_state_cdevsw = {
 	.d_name = ADF_DEV_STATE_NAME,
 };
 
-static struct filterops adf_state_read_filterops = {
+static const struct filterops adf_state_read_filterops = {
 	.f_isfd = 1,
 	.f_attach = NULL,
 	.f_detach = adf_state_kqread_detach,
diff --git a/sys/dev/usb/usb_dev.c b/sys/dev/usb/usb_dev.c
index c58c3b5f64d5..a736a12fc4f4 100644
--- a/sys/dev/usb/usb_dev.c
+++ b/sys/dev/usb/usb_dev.c
@@ -1228,13 +1228,13 @@ usb_filter_read(struct knote *kn, long hint)
 	return (m ? 1 : 0);
 }
 
-static struct filterops usb_filtops_write = {
+static const struct filterops usb_filtops_write = {
 	.f_isfd = 1,
 	.f_detach = usb_filter_detach,
 	.f_event = usb_filter_write,
 };
 
-static struct filterops usb_filtops_read = {
+static const struct filterops usb_filtops_read = {
 	.f_isfd = 1,
 	.f_detach = usb_filter_detach,
 	.f_event = usb_filter_read,
diff --git a/sys/fs/cuse/cuse.c b/sys/fs/cuse/cuse.c
index 9ef234c35427..e32154654386 100644
--- a/sys/fs/cuse/cuse.c
+++ b/sys/fs/cuse/cuse.c
@@ -191,13 +191,13 @@ static void cuse_client_kqfilter_write_detach(struct knote *kn);
 static int cuse_client_kqfilter_read_event(struct knote *kn, long hint);
 static int cuse_client_kqfilter_write_event(struct knote *kn, long hint);
 
-static struct filterops cuse_client_kqfilter_read_ops = {
+static const struct filterops cuse_client_kqfilter_read_ops = {
 	.f_isfd = 1,
 	.f_detach = cuse_client_kqfilter_read_detach,
 	.f_event = cuse_client_kqfilter_read_event,
 };
 
-static struct filterops cuse_client_kqfilter_write_ops = {
+static const struct filterops cuse_client_kqfilter_write_ops = {
 	.f_isfd = 1,
 	.f_detach = cuse_client_kqfilter_write_detach,
 	.f_event = cuse_client_kqfilter_write_event,
diff --git a/sys/fs/devfs/devfs_vnops.c b/sys/fs/devfs/devfs_vnops.c
index 1ab575ec02bd..e55082b49d97 100644
--- a/sys/fs/devfs/devfs_vnops.c
+++ b/sys/fs/devfs/devfs_vnops.c
@@ -66,7 +66,7 @@
 
 static struct vop_vector devfs_vnodeops;
 static struct vop_vector devfs_specops;
-static struct fileops devfs_ops_f;
+static const struct fileops devfs_ops_f;
 
 #include <fs/devfs/devfs.h>
 #include <fs/devfs/devfs_int.h>
@@ -2037,7 +2037,7 @@ devfs_cmp_f(struct file *fp1, struct file *fp2, struct thread *td)
 	return (kcmp_cmp((uintptr_t)fp1->f_data, (uintptr_t)fp2->f_data));
 }
 
-static struct fileops devfs_ops_f = {
+static const struct fileops devfs_ops_f = {
 	.fo_read =	devfs_read_f,
 	.fo_write =	devfs_write_f,
 	.fo_truncate =	devfs_truncate_f,
diff --git a/sys/fs/fuse/fuse_device.c b/sys/fs/fuse/fuse_device.c
index 892793993ecc..087316e86e90 100644
--- a/sys/fs/fuse/fuse_device.c
+++ b/sys/fs/fuse/fuse_device.c
@@ -120,13 +120,13 @@ static int fuse_device_filt_read(struct knote *kn, long hint);
 static int fuse_device_filt_write(struct knote *kn, long hint);
 static void fuse_device_filt_detach(struct knote *kn);
 
-struct filterops fuse_device_rfiltops = {
+static const struct filterops fuse_device_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = fuse_device_filt_detach,
 	.f_event = fuse_device_filt_read,
 };
 
-struct filterops fuse_device_wfiltops = {
+static const struct filterops fuse_device_wfiltops = {
 	.f_isfd = 1,
 	.f_event = fuse_device_filt_write,
 };
diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c
index 8028ae18e33a..8607f476db20 100644
--- a/sys/geom/geom_dev.c
+++ b/sys/geom/geom_dev.c
@@ -78,7 +78,7 @@ static d_kqfilter_t	g_dev_kqfilter;
 static void		gdev_filter_detach(struct knote *kn);
 static int		gdev_filter_vnode(struct knote *kn, long hint);
 
-static struct filterops gdev_filterops_vnode = {
+static const struct filterops gdev_filterops_vnode = {
 	.f_isfd = 1,
 	.f_detach = gdev_filter_detach,
 	.f_event = gdev_filter_vnode,
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c
index 09eeb158f1f5..10e0b4b142f8 100644
--- a/sys/kern/kern_descrip.c
+++ b/sys/kern/kern_descrip.c
@@ -2859,7 +2859,8 @@ closef_nothread(struct file *fp)
  * called with bad data.
  */
 void
-finit(struct file *fp, u_int flag, short type, void *data, struct fileops *ops)
+finit(struct file *fp, u_int flag, short type, void *data,
+    const struct fileops *ops)
 {
 	fp->f_data = data;
 	fp->f_flag = flag;
@@ -2868,7 +2869,7 @@ finit(struct file *fp, u_int flag, short type, void *data, struct fileops *ops)
 }
 
 void
-finit_vnode(struct file *fp, u_int flag, void *data, struct fileops *ops)
+finit_vnode(struct file *fp, u_int flag, void *data, const struct fileops *ops)
 {
 	fp->f_seqcount[UIO_READ] = 1;
 	fp->f_seqcount[UIO_WRITE] = 1;
@@ -5265,7 +5266,7 @@ badfo_fill_kinfo(struct file *fp, struct kinfo_file *kif, struct filedesc *fdp)
 	return (0);
 }
 
-struct fileops badfileops = {
+const struct fileops badfileops = {
 	.fo_read = badfo_readwrite,
 	.fo_write = badfo_readwrite,
 	.fo_truncate = badfo_truncate,
@@ -5296,7 +5297,7 @@ path_close(struct file *fp, struct thread *td)
 	return (0);
 }
 
-struct fileops path_fileops = {
+const struct fileops path_fileops = {
 	.fo_read = badfo_readwrite,
 	.fo_write = badfo_readwrite,
 	.fo_truncate = badfo_truncate,
diff --git a/sys/kern/kern_devctl.c b/sys/kern/kern_devctl.c
index 602b82105525..d83bc380c2fe 100644
--- a/sys/kern/kern_devctl.c
+++ b/sys/kern/kern_devctl.c
@@ -126,7 +126,7 @@ static struct cdevsw dev_cdevsw = {
 static void	filt_devctl_detach(struct knote *kn);
 static int	filt_devctl_read(struct knote *kn, long hint);
 
-static struct filterops devctl_rfiltops = {
+static const struct filterops devctl_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_devctl_detach,
 	.f_event = filt_devctl_read,
diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c
index fa96fbad20ce..dcb2c10ee1f5 100644
--- a/sys/kern/kern_event.c
+++ b/sys/kern/kern_event.c
@@ -127,7 +127,7 @@ static fo_stat_t	kqueue_stat;
 static fo_close_t	kqueue_close;
 static fo_fill_kinfo_t	kqueue_fill_kinfo;
 
-static struct fileops kqueueops = {
+static const struct fileops kqueueops = {
 	.fo_read = invfo_rdwr,
 	.fo_write = invfo_rdwr,
 	.fo_truncate = invfo_truncate,
@@ -173,30 +173,30 @@ static int	filt_user(struct knote *kn, long hint);
 static void	filt_usertouch(struct knote *kn, struct kevent *kev,
 		    u_long type);
 
-static struct filterops file_filtops = {
+static const struct filterops file_filtops = {
 	.f_isfd = 1,
 	.f_attach = filt_fileattach,
 };
-static struct filterops kqread_filtops = {
+static const struct filterops kqread_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_kqdetach,
 	.f_event = filt_kqueue,
 };
 /* XXX - move to kern_proc.c?  */
-static struct filterops proc_filtops = {
+static const struct filterops proc_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_procattach,
 	.f_detach = filt_procdetach,
 	.f_event = filt_proc,
 };
-static struct filterops timer_filtops = {
+static const struct filterops timer_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_timerattach,
 	.f_detach = filt_timerdetach,
 	.f_event = filt_timer,
 	.f_touch = filt_timertouch,
 };
-static struct filterops user_filtops = {
+static const struct filterops user_filtops = {
 	.f_attach = filt_userattach,
 	.f_detach = filt_userdetach,
 	.f_event = filt_user,
@@ -327,14 +327,14 @@ filt_nullattach(struct knote *kn)
 	return (ENXIO);
 };
 
-struct filterops null_filtops = {
+static const struct filterops null_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_nullattach,
 };
 
 /* XXX - make SYSINIT to add these, and move into respective modules. */
-extern struct filterops sig_filtops;
-extern struct filterops fs_filtops;
+extern const struct filterops sig_filtops;
+extern const struct filterops fs_filtops;
 
 /*
  * Table for all system-defined filters.
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index 96dc5e356ae9..c59bfd035be7 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -117,7 +117,7 @@ static void	sigqueue_start(void);
 static void	sigfastblock_setpend(struct thread *td, bool resched);
 
 static uma_zone_t	ksiginfo_zone = NULL;
-struct filterops sig_filtops = {
+const struct filterops sig_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_sigattach,
 	.f_detach = filt_sigdetach,
diff --git a/sys/kern/subr_log.c b/sys/kern/subr_log.c
index b1cf0e025f00..f5bfd038a030 100644
--- a/sys/kern/subr_log.c
+++ b/sys/kern/subr_log.c
@@ -74,7 +74,7 @@ static struct cdevsw log_cdevsw = {
 static int	logkqread(struct knote *note, long hint);
 static void	logkqdetach(struct knote *note);
 
-static struct filterops log_read_filterops = {
+static const struct filterops log_read_filterops = {
 	.f_isfd =	1,
 	.f_attach =	NULL,
 	.f_detach =	logkqdetach,
diff --git a/sys/kern/sys_eventfd.c b/sys/kern/sys_eventfd.c
index 4b1230b29b16..a0f10843475c 100644
--- a/sys/kern/sys_eventfd.c
+++ b/sys/kern/sys_eventfd.c
@@ -63,7 +63,7 @@ static fo_stat_t	eventfd_stat;
 static fo_close_t	eventfd_close;
 static fo_fill_kinfo_t	eventfd_fill_kinfo;
 
-static struct fileops eventfdops = {
+static const struct fileops eventfdops = {
 	.fo_read = eventfd_read,
 	.fo_write = eventfd_write,
 	.fo_truncate = invfo_truncate,
@@ -84,13 +84,13 @@ static void	filt_eventfddetach(struct knote *kn);
 static int	filt_eventfdread(struct knote *kn, long hint);
 static int	filt_eventfdwrite(struct knote *kn, long hint);
 
-static struct filterops eventfd_rfiltops = {
+static const struct filterops eventfd_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_eventfddetach,
 	.f_event = filt_eventfdread
 };
 
-static struct filterops eventfd_wfiltops = {
+static const struct filterops eventfd_wfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_eventfddetach,
 	.f_event = filt_eventfdwrite
diff --git a/sys/kern/sys_pipe.c b/sys/kern/sys_pipe.c
index 6a5d150423bc..b842db44e7f1 100644
--- a/sys/kern/sys_pipe.c
+++ b/sys/kern/sys_pipe.c
@@ -153,7 +153,7 @@ static fo_chmod_t	pipe_chmod;
 static fo_chown_t	pipe_chown;
 static fo_fill_kinfo_t	pipe_fill_kinfo;
 
-struct fileops pipeops = {
+const struct fileops pipeops = {
 	.fo_read = pipe_read,
 	.fo_write = pipe_write,
 	.fo_truncate = pipe_truncate,
@@ -176,17 +176,17 @@ static int	filt_pipenotsup(struct knote *kn, long hint);
 static int	filt_piperead(struct knote *kn, long hint);
 static int	filt_pipewrite(struct knote *kn, long hint);
 
-static struct filterops pipe_nfiltops = {
+static const struct filterops pipe_nfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_pipedetach_notsup,
 	.f_event = filt_pipenotsup
 };
-static struct filterops pipe_rfiltops = {
+static const struct filterops pipe_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_pipedetach,
 	.f_event = filt_piperead
 };
-static struct filterops pipe_wfiltops = {
+static const struct filterops pipe_wfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_pipedetach,
 	.f_event = filt_pipewrite
diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c
index 90022186d1ff..6acaef9d394d 100644
--- a/sys/kern/sys_procdesc.c
+++ b/sys/kern/sys_procdesc.c
@@ -96,7 +96,7 @@ static fo_close_t	procdesc_close;
 static fo_fill_kinfo_t	procdesc_fill_kinfo;
 static fo_cmp_t		procdesc_cmp;
 
-static struct fileops procdesc_ops = {
+static const struct fileops procdesc_ops = {
 	.fo_read = invfo_rdwr,
 	.fo_write = invfo_rdwr,
 	.fo_truncate = invfo_truncate,
@@ -481,7 +481,7 @@ procdesc_kqops_event(struct knote *kn, long hint)
 	return (kn->kn_fflags != 0);
 }
 
-static struct filterops procdesc_kqops = {
+static const struct filterops procdesc_kqops = {
 	.f_isfd = 1,
 	.f_detach = procdesc_kqops_detach,
 	.f_event = procdesc_kqops_event,
diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c
index 65d864e4f9f4..9011aa31c44f 100644
--- a/sys/kern/sys_socket.c
+++ b/sys/kern/sys_socket.c
@@ -96,7 +96,7 @@ static fo_aio_queue_t soo_aio_queue;
 
 static void	soo_aio_cancel(struct kaiocb *job);
 
-struct fileops	socketops = {
+const struct fileops socketops = {
 	.fo_read = soo_read,
 	.fo_write = soo_write,
 	.fo_truncate = invfo_truncate,
diff --git a/sys/kern/sys_timerfd.c b/sys/kern/sys_timerfd.c
index 8ac5b845f7ac..ab7e048a2ab1 100644
--- a/sys/kern/sys_timerfd.c
+++ b/sys/kern/sys_timerfd.c
@@ -284,7 +284,7 @@ filt_timerfdread(struct knote *kn, long hint)
 	return (tfd->tfd_count > 0);
 }
 
-static struct filterops timerfd_rfiltops = {
+static const struct filterops timerfd_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_timerfddetach,
 	.f_event = filt_timerfdread,
@@ -359,7 +359,7 @@ timerfd_fill_kinfo(struct file *fp, struct kinfo_file *kif,
 	return (0);
 }
 
-static struct fileops timerfdops = {
+static const struct fileops timerfdops = {
 	.fo_read = timerfd_read,
 	.fo_write = invfo_rdwr,
 	.fo_truncate = invfo_truncate,
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
index b6e300321e9c..b1b3b268d0e9 100644
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -751,13 +751,13 @@ tty_kqops_write_event(struct knote *kn, long hint __unused)
 	}
 }
 
-static struct filterops tty_kqops_read = {
+static const struct filterops tty_kqops_read = {
 	.f_isfd = 1,
 	.f_detach = tty_kqops_read_detach,
 	.f_event = tty_kqops_read_event,
 };
 
-static struct filterops tty_kqops_write = {
+static const struct filterops tty_kqops_write = {
 	.f_isfd = 1,
 	.f_detach = tty_kqops_write_detach,
 	.f_event = tty_kqops_write_event,
diff --git a/sys/kern/tty_pts.c b/sys/kern/tty_pts.c
index 4a3b3d77c89e..d629fa0e7593 100644
--- a/sys/kern/tty_pts.c
+++ b/sys/kern/tty_pts.c
@@ -488,12 +488,12 @@ pts_kqops_write_event(struct knote *kn, long hint)
 	}
 }
 
-static struct filterops pts_kqops_read = {
+static const struct filterops pts_kqops_read = {
 	.f_isfd = 1,
 	.f_detach = pts_kqops_read_detach,
 	.f_event = pts_kqops_read_event,
 };
-static struct filterops pts_kqops_write = {
+static const struct filterops pts_kqops_write = {
 	.f_isfd = 1,
 	.f_detach = pts_kqops_write_detach,
 	.f_event = pts_kqops_write_event,
@@ -597,7 +597,7 @@ ptsdev_fill_kinfo(struct file *fp, struct kinfo_file *kif, struct filedesc *fdp)
 	return (0);
 }
 
-static struct fileops ptsdev_ops = {
+static const struct fileops ptsdev_ops = {
 	.fo_read	= ptsdev_read,
 	.fo_write	= ptsdev_write,
 	.fo_truncate	= invfo_truncate,
diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c
index c0948d40c47b..54a9eda5a7a7 100644
--- a/sys/kern/uipc_mqueue.c
+++ b/sys/kern/uipc_mqueue.c
@@ -230,7 +230,7 @@ static uma_zone_t		mqueue_zone;
 static uma_zone_t		mvdata_zone;
 static uma_zone_t		mqnoti_zone;
 static struct vop_vector	mqfs_vnodeops;
-static struct fileops		mqueueops;
+static const struct fileops	mqueueops;
 static unsigned			mqfs_osd_jail_slot;
 
 /*
@@ -277,12 +277,12 @@ static void	filt_mqdetach(struct knote *kn);
 static int	filt_mqread(struct knote *kn, long hint);
 static int	filt_mqwrite(struct knote *kn, long hint);
 
-struct filterops mq_rfiltops = {
+static const struct filterops mq_rfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_mqdetach,
 	.f_event = filt_mqread,
 };
-struct filterops mq_wfiltops = {
+static const struct filterops mq_wfiltops = {
 	.f_isfd = 1,
 	.f_detach = filt_mqdetach,
 	.f_event = filt_mqwrite,
@@ -2681,7 +2681,7 @@ mqf_fill_kinfo(struct file *fp, struct kinfo_file *kif, struct filedesc *fdp)
 	return (0);
 }
 
-static struct fileops mqueueops = {
+static const struct fileops mqueueops = {
 	.fo_read		= invfo_rdwr,
 	.fo_write		= invfo_rdwr,
 	.fo_truncate		= invfo_truncate,
diff --git a/sys/kern/uipc_sem.c b/sys/kern/uipc_sem.c
index b4652e9106ac..35ca9a9fb06e 100644
--- a/sys/kern/uipc_sem.c
+++ b/sys/kern/uipc_sem.c
@@ -140,7 +140,7 @@ static fo_chown_t	ksem_chown;
 static fo_fill_kinfo_t	ksem_fill_kinfo;
 
 /* File descriptor operations. */
-static struct fileops ksem_ops = {
+static const struct fileops ksem_ops = {
 	.fo_read = invfo_rdwr,
 	.fo_write = invfo_rdwr,
 	.fo_truncate = invfo_truncate,
diff --git a/sys/kern/uipc_shm.c b/sys/kern/uipc_shm.c
index 141d386af396..074ca514c77d 100644
--- a/sys/kern/uipc_shm.c
+++ b/sys/kern/uipc_shm.c
@@ -150,7 +150,7 @@ static fo_fallocate_t	shm_fallocate;
 static fo_fspacectl_t	shm_fspacectl;
 
 /* File descriptor operations. */
-struct fileops shm_ops = {
+const struct fileops shm_ops = {
 	.fo_read = shm_read,
 	.fo_write = shm_write,
 	.fo_truncate = shm_truncate,
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index d8878505d511..470a2b3a51e4 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -188,17 +188,17 @@ static int	filt_sowrite(struct knote *kn, long hint);
 static int	filt_soempty(struct knote *kn, long hint);
 fo_kqfilter_t	soo_kqfilter;
 
-static struct filterops soread_filtops = {
+static const struct filterops soread_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_sordetach,
 	.f_event = filt_soread,
 };
-static struct filterops sowrite_filtops = {
+static const struct filterops sowrite_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_sowdetach,
 	.f_event = filt_sowrite,
 };
-static struct filterops soempty_filtops = {
+static const struct filterops soempty_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_sowdetach,
 	.f_event = filt_soempty,
diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c
index eb08716fbeda..92c30b48e4f5 100644
--- a/sys/kern/vfs_aio.c
+++ b/sys/kern/vfs_aio.c
@@ -339,13 +339,13 @@ static int	filt_lio(struct knote *kn, long hint);
 static uma_zone_t kaio_zone, aiocb_zone, aiolio_zone;
 
 /* kqueue filters for aio */
-static struct filterops aio_filtops = {
+static const struct filterops aio_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_aioattach,
 	.f_detach = filt_aiodetach,
 	.f_event = filt_aio,
 };
-static struct filterops lio_filtops = {
+static const struct filterops lio_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_lioattach,
 	.f_detach = filt_liodetach,
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index f9b2a4fb68d1..8f582eb4ca01 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -6475,7 +6475,7 @@ static int	filt_fsattach(struct knote *kn);
 static void	filt_fsdetach(struct knote *kn);
 static int	filt_fsevent(struct knote *kn, long hint);
 
-struct filterops fs_filtops = {
+const struct filterops fs_filtops = {
 	.f_isfd = 0,
 	.f_attach = filt_fsattach,
 	.f_detach = filt_fsdetach,
@@ -6555,17 +6555,17 @@ static int	filt_vfsread(struct knote *kn, long hint);
 static int	filt_vfswrite(struct knote *kn, long hint);
 static int	filt_vfsvnode(struct knote *kn, long hint);
 static void	filt_vfsdetach(struct knote *kn);
-static struct filterops vfsread_filtops = {
+static const struct filterops vfsread_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_vfsdetach,
 	.f_event = filt_vfsread
 };
-static struct filterops vfswrite_filtops = {
+static const struct filterops vfswrite_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_vfsdetach,
 	.f_event = filt_vfswrite
 };
-static struct filterops vfsvnode_filtops = {
+static const struct filterops vfsvnode_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_vfsdetach,
 	.f_event = filt_vfsvnode
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index aff3947f91cd..0d96bdb3acba 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -106,7 +106,7 @@ static fo_mmap_t	vn_mmap;
 static fo_fallocate_t	vn_fallocate;
 static fo_fspacectl_t	vn_fspacectl;
 
-struct 	fileops vnops = {
+const struct fileops vnops = {
 	.fo_read = vn_io_fault,
 	.fo_write = vn_io_fault,
 	.fo_truncate = vn_truncate,
diff --git a/sys/net/bpf.c b/sys/net/bpf.c
index f5a2d2c0d7a2..657a34827bdb 100644
--- a/sys/net/bpf.c
+++ b/sys/net/bpf.c
@@ -249,13 +249,13 @@ static struct cdevsw bpf_cdevsw = {
 	.d_kqfilter =	bpfkqfilter,
 };
 
-static struct filterops bpfread_filtops = {
+static const struct filterops bpfread_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_bpfdetach,
 	.f_event = filt_bpfread,
 };
 
-static struct filterops bpfwrite_filtops = {
+static const struct filterops bpfwrite_filtops = {
 	.f_isfd = 1,
 	.f_detach = filt_bpfdetach,
 	.f_event = filt_bpfwrite,
diff --git a/sys/net/if_tuntap.c b/sys/net/if_tuntap.c
index f82480971b10..9ad140dcf58f 100644
--- a/sys/net/if_tuntap.c
+++ b/sys/net/if_tuntap.c
@@ -253,14 +253,14 @@ static int		tunkqread(struct knote *, long);
 static int		tunkqwrite(struct knote *, long);
 static void		tunkqdetach(struct knote *);
 
-static struct filterops tun_read_filterops = {
+static const struct filterops tun_read_filterops = {
 	.f_isfd =	1,
 	.f_attach =	NULL,
 	.f_detach =	tunkqdetach,
 	.f_event =	tunkqread,
 };
 
-static struct filterops tun_write_filterops = {
+static const struct filterops tun_write_filterops = {
 	.f_isfd =	1,
 	.f_attach =	NULL,
 	.f_detach =	tunkqdetach,
diff --git a/sys/security/audit/audit_pipe.c b/sys/security/audit/audit_pipe.c
index 704f9c726803..fb773fd04297 100644
--- a/sys/security/audit/audit_pipe.c
+++ b/sys/security/audit/audit_pipe.c
@@ -238,7 +238,7 @@ static struct cdevsw	audit_pipe_cdevsw = {
 static int	audit_pipe_kqread(struct knote *note, long hint);
 static void	audit_pipe_kqdetach(struct knote *note);
 
-static struct filterops audit_pipe_read_filterops = {
+static const struct filterops audit_pipe_read_filterops = {
 	.f_isfd =	1,
 	.f_attach =	NULL,
 	.f_detach =	audit_pipe_kqdetach,
diff --git a/sys/sys/file.h b/sys/sys/file.h
index a2dc02e523d8..bc7dd7e06ded 100644
--- a/sys/sys/file.h
+++ b/sys/sys/file.h
@@ -249,10 +249,10 @@ struct xfile {
 
 #ifdef _KERNEL
 
-extern struct fileops vnops;
-extern struct fileops badfileops;
-extern struct fileops path_fileops;
-extern struct fileops socketops;
+extern const struct fileops vnops;
+extern const struct fileops badfileops;
+extern const struct fileops path_fileops;
+extern const struct fileops socketops;
 extern int maxfiles;		/* kernel limit on number of open files */
 extern int maxfilesperproc;	/* per process limit on number of open files */
 
@@ -284,8 +284,8 @@ fo_kqfilter_t	vn_kqfilter_opath;
 int vn_fill_kinfo_vnode(struct vnode *vp, struct kinfo_file *kif);
 int file_kcmp_generic(struct file *fp1, struct file *fp2, struct thread *td);
 
-void finit(struct file *, u_int, short, void *, struct fileops *);
-void finit_vnode(struct file *, u_int, void *, struct fileops *);
+void finit(struct file *, u_int, short, void *, const struct fileops *);
+void finit_vnode(struct file *, u_int, void *, const struct fileops *);
 int fgetvp(struct thread *td, int fd, cap_rights_t *rightsp,
     struct vnode **vpp);
 int fgetvp_exec(struct thread *td, int fd, cap_rights_t *rightsp,
diff --git a/sys/sys/mman.h b/sys/sys/mman.h
index d2c7bdf1f022..611c5b4e669f 100644
--- a/sys/sys/mman.h
+++ b/sys/sys/mman.h
@@ -312,7 +312,7 @@ bool	shm_largepage(struct shmfd *shmfd);
 void	shm_remove_prison(struct prison *pr);
 int	shm_get_path(struct vm_object *obj, char *path, size_t sz);
 
-extern struct fileops shm_ops;
+extern const struct fileops shm_ops;
 
 #define	MAP_32BIT_MAX_ADDR	((vm_offset_t)1 << 31)
 
diff --git a/sys/sys/pipe.h b/sys/sys/pipe.h
index 0f35316432eb..a83ea800c677 100644
--- a/sys/sys/pipe.h
+++ b/sys/sys/pipe.h
@@ -52,7 +52,7 @@
  * See sys_pipe.c for info on what these limits mean. 
  */
 extern long	maxpipekva;
-extern struct	fileops pipeops;
+extern const struct fileops pipeops;
 #endif
 
 /*
diff --git a/sys/x86/acpica/acpi_apm.c b/sys/x86/acpica/acpi_apm.c
index fcc1663b9a84..be161cd6171b 100644
--- a/sys/x86/acpica/acpi_apm.c
+++ b/sys/x86/acpica/acpi_apm.c
@@ -60,7 +60,7 @@ static d_poll_t		apmpoll;
 static d_kqfilter_t	apmkqfilter;
 static void		apmreadfiltdetach(struct knote *kn);
 static int		apmreadfilt(struct knote *kn, long hint);
-static struct filterops	apm_readfiltops = {
+static const struct filterops apm_readfiltops = {
 	.f_isfd = 1,
 	.f_detach = apmreadfiltdetach,
 	.f_event = apmreadfilt,

From nobody Tue Nov 26 21:32:41 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XybQK3JSDz5f3TW;
	Tue, 26 Nov 2024 21:32: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XybQK0tTKz4CYb;
	Tue, 26 Nov 2024 21:32:41 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732656761;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Yq8hmrioBhAK+alRcfTRatKd0mx13ib+0O4iY5jtui4=;
	b=WlZE9X6fTiejyIcz/A7S4mEslgBEl+fR1TqfRhv4477VDpspX1vYaqhITZL3y1cZu8wD5E
	p4CXDM3IrMosQu/wb5a1B89aGcgcf5CwxZxT65E6oAQ1dJyC7X6Xrt5IvqPt3/ztyP20QA
	TIrz3OUb6IJpqJlFOfL/dXgRGVc25JUb6Y2C83gGz/ObZ87dcdeVsvnnwcQQDPhnIXwstD
	oHkARugbmsXRsI7cdnmVYMwHYNHtdji7xgvlidwvBghbTAnAPlyJnOf2Ba8CMqqguaJJoH
	Xqwe0Fh1PI/T2n7lOGQ+3EOkp4MleAfBNHwXdTuvkPvrGuG4FnJFtXZXxTYdjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732656761;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Yq8hmrioBhAK+alRcfTRatKd0mx13ib+0O4iY5jtui4=;
	b=qoZM6HSFQ1k5kgAZgtd8Vx3SvXaVsFLGzFEQILot1jwJ4GDoqRbOBLklyry9tNrkOgf1Xy
	X33gYjFSu3P87fX4XRPQV8oaudGlAz1nFLhBYlVnbZnROsntN4ST0mqBG/piw6p6i/SMVc
	q70J/N3DQyhOWizgUGcrTK0wfBEOv8uxGL0OyMUzbfc2xla3+/hdkZiLKm6MPvStvCMMAF
	P3HPoXU+AfbIDmTa0WqqsWCNKGZiySp2AUBb5UXVAOQrq7iDUFM1FC02LyucRxcSI4EMOz
	6AH8eKfW6ht+rUFsnSAJbSou6pHW4rhzIEo9zbHV2NvPbB1aRA8LlPfzpiB7og==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732656761; a=rsa-sha256; cv=none;
	b=AmNL3UltKBUNbRjb13+Rl3y4a4N9SexvGMsSLf3m7nWxal30cHidWcUWFh9YTe0PMGk28T
	NYpVVud5jsBRQpft61qrGyT2O2NYJ7Ik5RMjOg9nJRV47rbe8KCY/V7dEu4iN1x8gKNZuF
	YQfBkLi4iFq6G9FXfQtjM+g/Zd6NrFjIsNTTAZ8C4CDPhNL+8pkImFuGkK57GtvPT/EFJg
	16jov/TxLPygTeMynUHIoiPH2y8kY1Sh8fIyPG8Zyr1vHTYDT2vuSfuVZE+mlvycBQQJXY
	adPeTbpMeat4NHb7oVK4A1VnBWWzDVY8C5SwGKAUywV/gNiygL2jBwK302P2OA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XybQK0Tjczh18;
	Tue, 26 Nov 2024 21:32: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 4AQLWfp7046557;
	Tue, 26 Nov 2024 21:32:41 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQLWfZq046553;
	Tue, 26 Nov 2024 21:32:41 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 21:32:41 GMT
Message-Id: <202411262132.4AQLWfZq046553@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: aabd759cf766 - main - drm2: Fix the build after commit
  38e3125d6df9
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: aabd759cf766f22ac8e4049dbbc6c051ee110581
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=aabd759cf766f22ac8e4049dbbc6c051ee110581

commit aabd759cf766f22ac8e4049dbbc6c051ee110581
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-26 00:39:37 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-26 21:04:36 +0000

    drm2: Fix the build after commit 38e3125d6df9
    
    Fixes:  38e3125d6df9 ("device_pager: user iterators to free device pages")
---
 sys/arm/nvidia/drm2/tegra_bo.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/arm/nvidia/drm2/tegra_bo.c b/sys/arm/nvidia/drm2/tegra_bo.c
index e1a6a425be4d..0b62e78224dc 100644
--- a/sys/arm/nvidia/drm2/tegra_bo.c
+++ b/sys/arm/nvidia/drm2/tegra_bo.c
@@ -29,6 +29,8 @@
 #include <sys/bus.h>
 #include <sys/kernel.h>
 #include <sys/malloc.h>
+#include <sys/pctrie.h>
+#include <sys/vmem.h>
 
 #include <machine/bus.h>
 
@@ -39,8 +41,6 @@
 
 #include <arm/nvidia/drm2/tegra_drm.h>
 
-#include <sys/vmem.h>
-#include <sys/vmem.h>
 #include <vm/vm.h>
 #include <vm/vm_pageout.h>
 

From nobody Tue Nov 26 22:00:33 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyc2T4ykvz5f52B;
	Tue, 26 Nov 2024 22:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xyc2T4Vqnz4G7J;
	Tue, 26 Nov 2024 22:00:33 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732658433;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2J4qtJU+10vz4eberojBIVZ/rp8dVRV+dmI5/ZeIXS8=;
	b=BdGl4znuuq3WapxVbSvQ8tn17QrziSSfL4AYQ/wIZzLERj8lx2tLouQwdfO/ckXXsvKySy
	HN5CnGs8CjHhHX6+EvpQsU/UhJzAYu5NfBOA4GR8MAOC35tkKnNb3j0jQP0R+nK8uahas8
	/8b3hu4NaJ2lM2zDtD4/+fQ/xvkCYQGy1hSUIlePnOca0Q0iMazoAztq2SMzmcvyX1jQpJ
	MI/9oMaSVlNkkHnPTojzXc8tSo8Aoyx8KFZv/95l8d4tRYaljnMjeE+WSe+QeOks2q2aRR
	uTGJ2NX9vkVAXDIEnpkN20T2nYrYxBYxdnLC/FR8n8nfHqMx5qqyZ/4fjStZmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732658433;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2J4qtJU+10vz4eberojBIVZ/rp8dVRV+dmI5/ZeIXS8=;
	b=wd5Ze0tASgCGs7OdQ0chdzsmvjCXCNVZZ4wtyWoDO+r2ake9z0cVjzfBcYY6U1HbRnZOYE
	2+Gvn9br4bMAWJlDVOjJ0EE2f3s9ePGjpdNMUEX00pv35hADyhzI5xxKNKjEbFErX+C6eN
	ObBCwlgvyJ7hSBMhkLA+SCVvGZdEICnfJfH5VebbzOiLNDC79g1/rDqwI6fHRFNm6sjrlv
	GooAVT2gsXsqMUQ2lytt6gZ+X7FvKE5w2mYCE7fUQWRrGgC2rlqylrqVRKehb6U3ZLgsgI
	vdX7/IOVVHaJ/1zDCTo8u4OZgiz7TcXGBm2503KozgZ1e1x26hBLf20FVWaLzQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732658433; a=rsa-sha256; cv=none;
	b=mV1ZmFt8fsuNP0chfUE4GobEOEhxaG3W1XVt8dOe0wh+EZNMRcD2UjfI5AhXJzLIl2iBLR
	iEi+s6QGssVkusXVEeP84zLyIHZsUgCR9wYsqu6+sPDaJpM5iXspGDyC/yrYDUYrAH0crJ
	rHEfkeaxmY/jDwShiw+A4h0ACf3oQorLc6MeJRtbOhuJEmo6wwykkocZLZYBDcSQXW7BYV
	7aEfWnAMili7rju/PT+nAFGDcnihIGpSY0BVjIVTI1WmL/zKA1xqeACWCNC0IKe5incIx9
	79aw1Ew2q2Wqc5er5Nl3THykSalqCyNSFffDNR8cKDIsIfiEUIGBl0hunUN69Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xyc2T45zKzhn4;
	Tue, 26 Nov 2024 22:00: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 4AQM0X0m095234;
	Tue, 26 Nov 2024 22:00:33 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQM0XqN095231;
	Tue, 26 Nov 2024 22:00:33 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 22:00:33 GMT
Message-Id: <202411262200.4AQM0XqN095231@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 6f423295f18a - main - acpica: rename acpi_parse_pxm()
  to acpi_pxm_parse() and make it non-static
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6f423295f18a3f53a31453d61dbbd5271d7bd099
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=6f423295f18a3f53a31453d61dbbd5271d7bd099

commit 6f423295f18a3f53a31453d61dbbd5271d7bd099
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-10-30 15:54:16 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 21:56:19 +0000

    acpica: rename acpi_parse_pxm() to acpi_pxm_parse() and make it non-static
    
    Reviewed by:    jhb
    Sponsored by:   Advanced Micro Devices (AMD)
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47291
---
 sys/dev/acpica/acpi.c    | 8 ++++----
 sys/dev/acpica/acpivar.h | 1 +
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c
index ea95f57fc22e..d4fbec7552f1 100644
--- a/sys/dev/acpica/acpi.c
+++ b/sys/dev/acpica/acpi.c
@@ -1246,8 +1246,8 @@ acpi_hint_device_unit(device_t acdev, device_t child, const char *name,
  * _PXM to a NUMA domain.  If the device does not have a _PXM method,
  * -2 is returned.  If any other error occurs, -1 is returned.
  */
-static int
-acpi_parse_pxm(device_t dev)
+int
+acpi_pxm_parse(device_t dev)
 {
 #ifdef NUMA
 #if defined(__i386__) || defined(__amd64__) || defined(__aarch64__)
@@ -1274,7 +1274,7 @@ acpi_get_cpus(device_t dev, device_t child, enum cpu_sets op, size_t setsize,
 {
 	int d, error;
 
-	d = acpi_parse_pxm(child);
+	d = acpi_pxm_parse(child);
 	if (d < 0)
 		return (bus_generic_get_cpus(dev, child, op, setsize, cpuset));
 
@@ -1310,7 +1310,7 @@ acpi_get_domain(device_t dev, device_t child, int *domain)
 {
 	int d;
 
-	d = acpi_parse_pxm(child);
+	d = acpi_pxm_parse(child);
 	if (d >= 0) {
 		*domain = d;
 		return (0);
diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h
index ea32c58b1371..d3def7c7e17b 100644
--- a/sys/dev/acpica/acpivar.h
+++ b/sys/dev/acpica/acpivar.h
@@ -585,6 +585,7 @@ void		acpi_pxm_parse_tables(void);
 void		acpi_pxm_set_mem_locality(void);
 void		acpi_pxm_set_cpu_locality(void);
 int		acpi_pxm_get_cpu_locality(int apic_id);
+int		acpi_pxm_parse(device_t dev);
 
 /*
  * Map a PXM to a VM domain.

From nobody Tue Nov 26 22:00:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyc2W0Bfcz5f4Y1;
	Tue, 26 Nov 2024 22:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xyc2V58bQz4GTd;
	Tue, 26 Nov 2024 22:00:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732658434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Lxz0e/gPjhRktLFVFTfs4fQ8CHYMdPwneF76mKSNibM=;
	b=oe5Z3LqP2NOoq9IjaaTrZwMKd7o4QNG71W6pCw9g8JV7NDZojad37ZkBNYgU4N4rOE99kq
	pcY7ECGEEt7izDM+KjQAKBDWDd2n8nfELgZeQtt9tq/YLfAhVldgePXVmHRMnC20BLRzCM
	CElty1pq5QstS4xCAl5446CDoWtDxT4+pH1nMUwVetQhIu+Kw+mpOjmxEaDsBFBZY9ljIt
	mS6sw7LGwjDSUqNeRkxhGqyhF0P0/O4wxCI+nyRyfECw8Wr7p5FnTPtwpTFBuVluWWFO4S
	STg+aCzVgrbncqbIRPsiS8ksnwhe3xkSmAa9HMmzGNvDqCfmtldxt0OgrjAZaQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732658434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Lxz0e/gPjhRktLFVFTfs4fQ8CHYMdPwneF76mKSNibM=;
	b=GNEPxa4f8lSVds/6abMw+hFb9JcJM9+FdPtd75hXaNyYSwcvribaCXXbiA9+SHHN5TCc+J
	/CYq10vw93eiDgq9xtAZMQ08LmY1DNG0LR1pnKFBJ7BgTWWVjB7RVGiFnDDc8OtX3HyUOg
	VyEHY26s2rFKlz+Z5S7eOW7VQWkgEU0ZOeXsn5tQf24GYcoiuHk0Df3jA/nIqBnAIC3tlp
	HgNb7ywE5zZzKaHToN8GuhrFalm0IbGBYHjkDQJezG2cE1CodwiWlCURUqOMHXS9xCphQQ
	dE11vkydBOggMt6DgtEGpvRw6cijalXblGRFhc+Q1+NiVBA8GWxMQAzPG+EjMQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732658434; a=rsa-sha256; cv=none;
	b=JuDcTmrkCIf6DHHsr+235QRlo433vNz8hU63DalcTOm9uc4IQqE3Njg7H25tAwB/txvZgu
	96lrSL0ETnxlUCdPaTAZVLuFp7zpIlowCJjhgB1Jdd20TaSckdnXFl14PqsndMtuI4IwME
	7FpgGWVvnUfU8v7o0huB9/DpUHin4YzWPJE7T2t2Y38I+yrAWwzMiYpjyqlD7uOFbSS60w
	C26VfB6PxIS+HaGw5uU01ipIkEWqDfheDRLZ+BqH81V+tn+eZ4tZFaPDJtnNbfMzhYUFNb
	V9hsYjkx60XlUm2hxvaoOXnwqXwdP7GNPz98w0YvZaAtwABeYlH27U8l4cVqvg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xyc2V4n8KzjFc;
	Tue, 26 Nov 2024 22:00: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 4AQM0Y34095273;
	Tue, 26 Nov 2024 22:00:34 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQM0YuK095270;
	Tue, 26 Nov 2024 22:00:34 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 22:00:34 GMT
Message-Id: <202411262200.4AQM0YuK095270@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 7dd1f0dcd134 - main - acpica: add domain ivar
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 7dd1f0dcd134de52c5ace8da5876b3bd518cee7e
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=7dd1f0dcd134de52c5ace8da5876b3bd518cee7e

commit 7dd1f0dcd134de52c5ace8da5876b3bd518cee7e
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-10-26 10:12:37 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 21:56:25 +0000

    acpica: add domain ivar
    
    Specialize acpi bus_get_domain method to read ivar.
    Execute and cache the _PXM result in the ivar at namespace enumeration
    time.
    
    If there is no _PXM, driver for the child can set the ivar to the value
    obtained by other means.
    
    Move acpi_get_domain() to acpi_pci.c, it now serves pci buses and
    devices on them.
    
    Suggested and reviewed by:      jhb
    Sponsored by:   Advanced Micro Devices (AMD)
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47291
---
 sys/dev/acpica/acpi.c     | 43 +++++++++++++++++++++----------------------
 sys/dev/acpica/acpi_pci.c | 28 +++++++++++++++++++++++++++-
 sys/dev/acpica/acpivar.h  |  9 ++++++++-
 3 files changed, 56 insertions(+), 24 deletions(-)

diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c
index d4fbec7552f1..a7ff4e302bed 100644
--- a/sys/dev/acpica/acpi.c
+++ b/sys/dev/acpica/acpi.c
@@ -142,6 +142,7 @@ static bus_child_location_t	acpi_child_location_method;
 static bus_hint_device_unit_t	acpi_hint_device_unit;
 static bus_get_property_t	acpi_bus_get_prop;
 static bus_get_device_path_t	acpi_get_device_path;
+static bus_get_domain_t		acpi_get_domain_method;
 
 static acpi_id_probe_t		acpi_device_id_probe;
 static acpi_evaluate_object_t	acpi_device_eval_obj;
@@ -219,7 +220,7 @@ static device_method_t acpi_methods[] = {
     DEVMETHOD(bus_teardown_intr,	bus_generic_teardown_intr),
     DEVMETHOD(bus_hint_device_unit,	acpi_hint_device_unit),
     DEVMETHOD(bus_get_cpus,		acpi_get_cpus),
-    DEVMETHOD(bus_get_domain,		acpi_get_domain),
+    DEVMETHOD(bus_get_domain,		acpi_get_domain_method),
     DEVMETHOD(bus_get_property,		acpi_bus_get_prop),
     DEVMETHOD(bus_get_device_path,	acpi_get_device_path),
 
@@ -819,6 +820,7 @@ acpi_add_child(device_t bus, u_int order, const char *name, int unit)
     if ((ad = malloc(sizeof(*ad), M_ACPIDEV, M_NOWAIT | M_ZERO)) == NULL)
 	return (NULL);
 
+    ad->ad_domain = ACPI_DEV_DOMAIN_UNKNOWN;
     resource_list_init(&ad->ad_rl);
 
     child = device_add_child_ordered(bus, order, name, unit);
@@ -1055,6 +1057,9 @@ acpi_read_ivar(device_t dev, device_t child, int index, uintptr_t *result)
     case ACPI_IVAR_FLAGS:
 	*(int *)result = ad->ad_flags;
 	break;
+    case ACPI_IVAR_DOMAIN:
+	*(int *)result = ad->ad_domain;
+	break;
     case ISA_IVAR_VENDORID:
     case ISA_IVAR_SERIAL:
     case ISA_IVAR_COMPATID:
@@ -1099,6 +1104,9 @@ acpi_write_ivar(device_t dev, device_t child, int index, uintptr_t value)
     case ACPI_IVAR_FLAGS:
 	ad->ad_flags = (int)value;
 	break;
+    case ACPI_IVAR_DOMAIN:
+	ad->ad_domain = (int)value;
+	break;
     default:
 	panic("bad ivar write request (%d)", index);
 	return (ENOENT);
@@ -1297,29 +1305,16 @@ acpi_get_cpus(device_t dev, device_t child, enum cpu_sets op, size_t setsize,
 	}
 }
 
-/*
- * Fetch the NUMA domain for the given device 'dev'.
- *
- * If a device has a _PXM method, map that to a NUMA domain.
- * Otherwise, pass the request up to the parent.
- * If there's no matching domain or the domain cannot be
- * determined, return ENOENT.
- */
-int
-acpi_get_domain(device_t dev, device_t child, int *domain)
+static int
+acpi_get_domain_method(device_t dev, device_t child, int *domain)
 {
-	int d;
+	int error;
 
-	d = acpi_pxm_parse(child);
-	if (d >= 0) {
-		*domain = d;
+	error = acpi_read_ivar(dev, child, ACPI_IVAR_DOMAIN,
+	    (uintptr_t *)domain);
+	if (error == 0 && *domain != ACPI_DEV_DOMAIN_UNKNOWN)
 		return (0);
-	}
-	if (d == -1)
-		return (ENOENT);
-
-	/* No _PXM node; go up a level */
-	return (bus_generic_get_domain(dev, child, domain));
+	return (ENOENT);
 }
 
 static struct rman *
@@ -2348,7 +2343,7 @@ acpi_probe_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status)
     ACPI_HANDLE h;
     device_t bus, child;
     char *handle_str;
-    int order;
+    int d, order;
 
     ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__);
 
@@ -2456,6 +2451,10 @@ acpi_probe_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status)
 		}
 		AcpiOsFree(devinfo);
 	    }
+
+	    d = acpi_pxm_parse(child);
+	    if (d >= 0)
+		ad->ad_domain = d;
 	    break;
 	}
     }
diff --git a/sys/dev/acpica/acpi_pci.c b/sys/dev/acpica/acpi_pci.c
index a1ac3499662d..6411af02ee58 100644
--- a/sys/dev/acpica/acpi_pci.c
+++ b/sys/dev/acpica/acpi_pci.c
@@ -93,6 +93,7 @@ static int	acpi_pci_set_powerstate_method(device_t dev, device_t child,
 		    int state);
 static void	acpi_pci_update_device(ACPI_HANDLE handle, device_t pci_child);
 static bus_dma_tag_t acpi_pci_get_dma_tag(device_t bus, device_t child);
+static int	acpi_pci_get_domain(device_t dev, device_t child, int *domain);
 
 static device_method_t acpi_pci_methods[] = {
 	/* Device interface */
@@ -108,7 +109,7 @@ static device_method_t acpi_pci_methods[] = {
 	DEVMETHOD(bus_get_device_path,	acpi_pci_get_device_path),
 	DEVMETHOD(bus_get_cpus,		acpi_get_cpus),
 	DEVMETHOD(bus_get_dma_tag,	acpi_pci_get_dma_tag),
-	DEVMETHOD(bus_get_domain,	acpi_get_domain),
+	DEVMETHOD(bus_get_domain,	acpi_pci_get_domain),
 
 	/* PCI interface */
 	DEVMETHOD(pci_alloc_devinfo,	acpi_pci_alloc_devinfo),
@@ -206,6 +207,31 @@ acpi_pci_get_device_path(device_t bus, device_t child, const char *locator, stru
 	return 	(pci_get_device_path_method(bus, child, locator, sb));
 }
 
+/*
+ * Fetch the NUMA domain for the given device 'dev'.
+ *
+ * If a device has a _PXM method, map that to a NUMA domain.
+ * Otherwise, pass the request up to the parent.
+ * If there's no matching domain or the domain cannot be
+ * determined, return ENOENT.
+ */
+static int
+acpi_pci_get_domain(device_t dev, device_t child, int *domain)
+{
+	int d;
+
+	d = acpi_pxm_parse(child);
+	if (d >= 0) {
+		*domain = d;
+		return (0);
+	}
+	if (d == -1)
+		return (ENOENT);
+
+	/* No _PXM node; go up a level */
+	return (bus_generic_get_domain(dev, child, domain));
+}
+
 /*
  * PCI power manangement
  */
diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h
index d3def7c7e17b..668d0b51a1f3 100644
--- a/sys/dev/acpica/acpivar.h
+++ b/sys/dev/acpica/acpivar.h
@@ -89,6 +89,7 @@ struct acpi_device {
     void			*ad_private;
     int				ad_flags;
     int				ad_cls_class;
+    int				ad_domain;
 
     ACPI_BUFFER			dsd;	/* Device Specific Data */
     const ACPI_OBJECT	*dsd_pkg;
@@ -272,6 +273,12 @@ extern int	acpi_override_isa_irq_polarity;
 #define ACPI_IVAR_UNUSED	0x101	/* Unused/reserved. */
 #define ACPI_IVAR_PRIVATE	0x102
 #define ACPI_IVAR_FLAGS		0x103
+#define	ACPI_IVAR_DOMAIN	0x104
+
+/*
+ * ad_domain NUMA domain special value.
+ */
+#define	ACPI_DEV_DOMAIN_UNKNOWN	(-1)
 
 /*
  * Accessor functions for our ivars.  Default value for BUS_READ_IVAR is
@@ -297,6 +304,7 @@ static __inline void varp ## _set_ ## var(device_t dev, type t)	\
 __ACPI_BUS_ACCESSOR(acpi, handle, ACPI, HANDLE, ACPI_HANDLE)
 __ACPI_BUS_ACCESSOR(acpi, private, ACPI, PRIVATE, void *)
 __ACPI_BUS_ACCESSOR(acpi, flags, ACPI, FLAGS, int)
+__ACPI_BUS_ACCESSOR(acpi, domain, ACPI, DOMAIN, int)
 
 void acpi_fake_objhandler(ACPI_HANDLE h, void *data);
 static __inline device_t
@@ -594,7 +602,6 @@ int		acpi_pxm_parse(device_t dev);
  */
 int		acpi_map_pxm_to_vm_domainid(int pxm);
 bus_get_cpus_t		acpi_get_cpus;
-bus_get_domain_t	acpi_get_domain;
 
 #ifdef __aarch64__
 /*

From nobody Tue Nov 26 22:00:35 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyc2X1mx5z5f4tB;
	Tue, 26 Nov 2024 22:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xyc2W6TkBz4GRg;
	Tue, 26 Nov 2024 22:00:35 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732658435;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Zl8sms29TEcYQZSeZSMrErGF4thlYRdUIiKoYdoV5K4=;
	b=nn0q5zCJFu13yaKvil28QYLDNnZuR0miOqC7ZaInuD64p8NDYdcxvMQVCybHqeu6WAlKGL
	EqD6jcfVD2y/1X5bGD5Yt9oV2u+QEwnGTpRPybNg518omo29y1aCjXLFsq1mDL7UKRYWE5
	PBE82BuojNIJntsFNvVb9fraODldxThAfwZg/9dbqrvaLBWgJDW69pXcmzNo99V+xIZI7K
	6QQz1x5tdKe8MkYHZA0aVEy7mNr5Ghwrai3eaPhW4qVdsoSheSMom69v92f8jbuKQUNqlf
	d63N1l6THmdYm5hYanxEYNt3jcn2cJMBfjhIxqC3xars/RWHMBKsIEnY1EwKuA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732658435;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Zl8sms29TEcYQZSeZSMrErGF4thlYRdUIiKoYdoV5K4=;
	b=Vel0wpJsA3s+w0Cj9oaGVq1fq/dPtcVpJr1ht+seHxtsmT5lAuQvuF+fFrauac0ZyFiKJS
	QZPMSM36ha194sr4oXM+gdkOrYKHjWmxlMvzxEoJCLZAfjjKa9a2H5nb4/Rur1HlQXQisE
	tuOuDuPDKqTHIBUvRy3nlx/H6KgfOSvwTq6OUhPZAAOK2Dt7f8MDyGNmnimJoGoPqKp/XY
	53DGSSt+Ew3u9w68kg5q8EBRsq0w3zjyEpqXrdqPy9QdrubtlEIMDRc1iGFi68mUQ1Jx5l
	c2YIiDkvO19sh7WP5MsIExWDpVzZx0+Ote0J7pCNxZ1bsq+eiIWxeF2FUrWMGQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732658435; a=rsa-sha256; cv=none;
	b=VmY5ktAi2O5xUOTVkHM9N+euiD6f9VJmhzSvQWsoBrPc5disNMq1if5JnN03n8t5XyGDLf
	eu/tbL3ju+R+R9D7Kj9IrffX0y/x7StAGSaYMY0W30H+boDNotWG0wbIEnIl1AUq/MVBF9
	uL3IW2BdgfamefvmO/TwGo87jJ4ALGtpNsv/645cPZPG26GXvJpPp8kIFT2RUMHZab2BvX
	MghOeGLqv4vRlhhKXVMGSRbudy1nOyt3nv+oyA4QyKjRwub/jgTAZ1K4wslKxcsxNs6L7j
	Tqik3L5KsYtSDuqd/BsuqaeZ6NHbfCYxpk9m1BSwfuu4a/ujogf6YEtpyFqBng==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xyc2W62ZBzjJT;
	Tue, 26 Nov 2024 22:00: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 4AQM0ZEL095324;
	Tue, 26 Nov 2024 22:00:35 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AQM0ZDl095321;
	Tue, 26 Nov 2024 22:00:35 GMT
	(envelope-from git)
Date: Tue, 26 Nov 2024 22:00:35 GMT
Message-Id: <202411262200.4AQM0ZDl095321@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 3f0289ea7f66 - main - dmar: set acpi ivar domain on
  identify()
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 3f0289ea7f66c82656a43edf6527055fd27d225d
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=3f0289ea7f66c82656a43edf6527055fd27d225d

commit 3f0289ea7f66c82656a43edf6527055fd27d225d
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-10-25 05:38:25 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-26 21:56:45 +0000

    dmar: set acpi ivar domain on identify()
    
    Reviewed by:    jhb
    Sponsored by:   Advanced Micro Devices (AMD)
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47291
---
 sys/x86/iommu/intel_drv.c | 60 ++++++++++++++++++++++++-----------------------
 1 file changed, 31 insertions(+), 29 deletions(-)

diff --git a/sys/x86/iommu/intel_drv.c b/sys/x86/iommu/intel_drv.c
index b21c8460e830..dd2a3d1a631f 100644
--- a/sys/x86/iommu/intel_drv.c
+++ b/sys/x86/iommu/intel_drv.c
@@ -160,6 +160,27 @@ dmar_count_iter(ACPI_DMAR_HEADER *dmarh, void *arg)
 	return (1);
 }
 
+/* Remapping Hardware Static Affinity Structure lookup */
+struct rhsa_iter_arg {
+	uint64_t base;
+	u_int proxim_dom;
+};
+
+static int
+dmar_rhsa_iter(ACPI_DMAR_HEADER *dmarh, void *arg)
+{
+	struct rhsa_iter_arg *ria;
+	ACPI_DMAR_RHSA *adr;
+
+	if (dmarh->Type == ACPI_DMAR_TYPE_HARDWARE_AFFINITY) {
+		ria = arg;
+		adr = (ACPI_DMAR_RHSA *)dmarh;
+		if (adr->BaseAddress == ria->base)
+			ria->proxim_dom = adr->ProximityDomain;
+	}
+	return (1);
+}
+
 int dmar_rmrr_enable = 1;
 
 static int dmar_enable = 0;
@@ -168,6 +189,7 @@ dmar_identify(driver_t *driver, device_t parent)
 {
 	ACPI_TABLE_DMAR *dmartbl;
 	ACPI_DMAR_HARDWARE_UNIT *dmarh;
+	struct rhsa_iter_arg ria;
 	ACPI_STATUS status;
 	int i, error;
 
@@ -217,7 +239,15 @@ dmar_identify(driver_t *driver, device_t parent)
 			    i, (uintmax_t)dmarh->Address, error);
 			device_delete_child(parent, dmar_devs[i]);
 			dmar_devs[i] = NULL;
+			continue;
 		}
+
+		ria.base = dmarh->Address;
+		ria.proxim_dom = -1;
+		dmar_iterate_tbl(dmar_rhsa_iter, &ria);
+		acpi_set_domain(dmar_devs[i], ria.proxim_dom == -1 ?
+		    ACPI_DEV_DOMAIN_UNKNOWN :
+		    acpi_map_pxm_to_vm_domainid(ria.proxim_dom));
 	}
 }
 
@@ -326,34 +356,12 @@ dmar_print_caps(device_t dev, struct dmar_unit *unit,
 	    DMAR_ECAP_IRO(unit->hw_ecap));
 }
 
-/* Remapping Hardware Static Affinity Structure lookup */
-struct rhsa_iter_arg {
-	uint64_t base;
-	u_int proxim_dom;
-};
-
-static int
-dmar_rhsa_iter(ACPI_DMAR_HEADER *dmarh, void *arg)
-{
-	struct rhsa_iter_arg *ria;
-	ACPI_DMAR_RHSA *adr;
-
-	if (dmarh->Type == ACPI_DMAR_TYPE_HARDWARE_AFFINITY) {
-		ria = arg;
-		adr = (ACPI_DMAR_RHSA *)dmarh;
-		if (adr->BaseAddress == ria->base)
-			ria->proxim_dom = adr->ProximityDomain;
-	}
-	return (1);
-}
-
 static int
 dmar_attach(device_t dev)
 {
 	struct dmar_unit *unit;
 	ACPI_DMAR_HARDWARE_UNIT *dmaru;
 	struct iommu_msi_data *dmd;
-	struct rhsa_iter_arg ria;
 	uint64_t timeout;
 	int disable_pmr;
 	int i, error;
@@ -381,13 +389,7 @@ dmar_attach(device_t dev)
 	if (bootverbose)
 		dmar_print_caps(dev, unit, dmaru);
 	dmar_quirks_post_ident(unit);
-	unit->memdomain = -1;
-	ria.base = unit->base;
-	ria.proxim_dom = -1;
-	dmar_iterate_tbl(dmar_rhsa_iter, &ria);
-	if (ria.proxim_dom != -1)
-		unit->memdomain = acpi_map_pxm_to_vm_domainid(ria.proxim_dom);
-
+	unit->memdomain = acpi_get_domain(dev);
 	timeout = dmar_get_timeout();
 	TUNABLE_UINT64_FETCH("hw.iommu.dmar.timeout", &timeout);
 	dmar_update_timeout(timeout);

From nobody Tue Nov 26 22:02:44 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyc5M0YJYz5f52j
	for <dev-commits-src-main@mlmmj.nyi.freebsd.org>; Tue, 26 Nov 2024 22:03:03 +0000 (UTC)
	(envelope-from marklmi@yahoo.com)
Received: from sonic302-22.consmr.mail.gq1.yahoo.com (sonic302-22.consmr.mail.gq1.yahoo.com [98.137.68.148])
	(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 4Xyc5K728cz4HS9
	for <dev-commits-src-main@freebsd.org>; Tue, 26 Nov 2024 22:03:01 +0000 (UTC)
	(envelope-from marklmi@yahoo.com)
Authentication-Results: mx1.freebsd.org;
	dkim=pass header.d=yahoo.com header.s=s2048 header.b=IvgiYqJB;
	spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.68.148 as permitted sender) smtp.mailfrom=marklmi@yahoo.com;
	dmarc=pass (policy=reject) header.from=yahoo.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1732658579; bh=BHvxqG3NaKTxpy0KGaoM4Jl41KGYd9yMJNxAR038wFI=; h=From:Subject:Date:To:References:From:Subject:Reply-To; b=IvgiYqJBGcMeWt1hdQQu0eqs/WQqCNrjoHuN8ZU915fhN9Bcgexm9rs455b9yeWmMpENsoBy5xkloLQ0IYJZdT+itDotrte+Z/tCPDFubGKZScx2y6TjoS3HJ3LE9rwWwXvKlBd4RDe/R7lxfqJW/AeJSDQAwbQSU5QbwcnH4MdzpZIAJoAlNbU2SaeqYORbJFLvonDtayTzdD4uPMSgIVbgY+fwRk7it5/cdS0rb3f41i3Tv51j9eZpEzq7lpSF70dj/IP6HUNViAahHJOpGi496wFzxSwlyjuXkax0uso8grRLfSZdvYaMXl4YiWu0yXV0NJrNHaK7mHS59aw0bg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1732658579; bh=BplitsiCpoWFNnJohS700zZ4CQ+y2lIinN/QlFqTfBR=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=Qe5TjOJUXohcvHtJi03OlbfqXLzNPWpQ9bmAHhZoSB6kJJA0Z0lFl5ltsmqwJmE+Pjj12Nsq0/kGHxyC9sG3WzHMv3qDse96F9RgF05FXYETkqVRGAUMeAHrf3bpvQZiDszTZMpP8opIUNgGRBLLzr0s6wvXzuVxDSR5b4lVYH9PVz4rG6mYNRpReey5jn7C6hSj0ZvJhN82mCgc8lhC6VyG7O/AqbN3EkHpGc8gIHbMBksp6UlqlVmnNfUcGv/gFLG9lVOLmDHtZNetKsVjCW+G+sSq1JwISJnUzQqWeonexgocIxVnV2tqCK+mkn7YiRsVquwlgvkErFpDNyI3Gw==
X-YMail-OSG: 74QufY4VM1k2VWoC.aQOQJ3uSjyyrSoUWzddQsjsgie9mPRoTpwAPvMTgoVeP87
 nmQtakFn0mEAOQj8ClW0HkG6Sck3aU4zmRDJEJUeB7Ph4vSAk5K39AzajHY3raB9MWhOnn92SXgy
 HOCZropeP6DJuaaeNvhwpOy5XPK6MmX4MZT_02xJomKTuSrL07G1Cz_ee97WdgSAv.cxEQoGONkW
 CoOw5ke46SsyJ_bWam.K_oE_lB1lyPFwSPOkAnEPd73XH.STm15e2LFXFbfn6Gl2xs_wMOcFMHML
 XUMUGFBSXQ84BGivcoUIeKLmeiYProFZvJRXTuqoHvBF_vghQ26P8XAd69UwhNoeiy4qUcAV2O18
 F2wwozsJB8SQWo9mB0qpviXtSmCvLFUcvbFgP7U6rq.HBL8S.H17BARjtpeQSGh.lEE2Nudi1PJi
 qq8mys4k5mfVjZsx14EDBbnFu3YWIbMvpURSezw6YUbZZJcuhgI3RNyHaU2EQFXImojc5_b_gpRY
 Wh_c7He8hTzqiCw3P1O6_TbjpRzWGO.vSeuHcpTKINiE75NUHfuItR4_FUlMa_KDUCgK952RMkpP
 Q71q4.uY_6UytZbqpnqsa6J7NHx7VuR3Ra0OiQw.nZ3LfidKmU71eFVH9d1EVRujLlvTh4RIjWAQ
 2mM.W3rEnhIIIU1Rv6LvXBBvWl37as8t9xkQAO9C.woT6nm12Ymd1TAb_WSJAogtU8_54fUAO0Qu
 pQmCFLcv.taN3rKCeZ4DE.wkLodfZhh5zvYGJYBWsCgIq4zKjzLPPpl1mQ9O0iFnmA1FI_Fqzepv
 0lI.RiQPHh1dbyUEOfGrhTbyfEBZ0SIapmDf_EoewZ10uJ5lXtXR7Triv95qwxZS3NRKSvzDkjLP
 zWQw3ASDLWgKOV2yU_wJihq9WXfplJ4kc89Y9S2VN9kPqMl_M6ABEpv2cNeHp3M3EZXrKsHczcx7
 2KP5uV.jCTifBrmBuUDeUGRfyihsHJChENmQnQzcY3c30IYOsYN4Ipi5hu5W6M9YzeBOUoGiBg4c
 P4KlmxqSduogD01eVsMnELJ.eYYVw_3VdQREfPa1aOPBTSWkjQvjOGOwF8Z3RI3BBtIZ2rnlizHY
 ZIVuqJ0lmYGpNUDKe5MfAeKUdICE3VUYTMy4WS39sJrp0YvGLd4yuX23mDUJq.zaQMjjGpSoC0L4
 4J.RXmfjznvtRfn.E2yMYrZ1t4zWog9cM_ca1kFojMIwTeBAdA2c_yQb4kSMgo6E5COkUPqyNy8h
 9P0MIc9VWpw2X..E2U27FCRZJvioN1RP34rITLVllxiuJ9yTIIcITdVSWYOWb4TogFVZT.pEConu
 aTnfKYmu32ge990OmUAA9NJonvOPc8QiQTE94OdjD5MMuSx7Uo6WYlbfEmVO4zeOTaehqh8kHk0q
 SAPR5ie6nEzJLbvrBltmSv9X9uSJamd.JIJC68I_seZ7u.hvNqOO0BVcRwrShYQMSDANr9nDxc8a
 GcqpaldLfURqboyhMEpaNb8NQdsG.vZz9TaxSOyYNlj.rANK6YXWWowZ6QYibpfJdTLYONTtEUWj
 KwuFgcJN.XV6bJZ19vHYum4B9DT5M.cQBmVl0z3mEagK3vpz2BIaOm.n9gEGZZ0jAbaEg9B6zhV8
 Yv_gKCIbnxOTL2HCIyGM_0Jq4Ml33hfg1Qmt2Vi4I86gr4bJYxDnanO5Y0Yv6wmVATmDa_cvamSq
 ZnOUX1JcbfybzeRhQXwrzsn_jV7YrcMWoT_rBeIpmXpolAUDdo6bOb98T_Cwu0EcHJ6ef37.dImO
 UHIhD54NisB2sYlDpGIMAxsZMvpZi_fL4ROQ3BbUR_efju6jnQWNMlF419PFVrl8a2VxEe23HM_o
 GIT1Exilrmtqsh7oZd18HdIN_J1ln5r3ZTGV2WdQ5k01epoIPu6ambLQ88R1xzt7nCwEnFZA8cl3
 QZGdqcm52USEXTw9UU0x_srHzZAESgTLwHhR4CVZnrtjQ1j.JZ8emje7EJ73vE2VOQqSgLKgbbVf
 XSd2pWvHMR.ZsLAeiKlGTYr5UyoTL8_jMGM7MYOUKd9qKrIBHwAFbKW6l0cqYsx0Zs4nH0.1bIYd
 6SgfB9Uf91FUJbQwGh6YAAxdObYvDKn_r7PeJQ4OEyL4samijsiCBBVXKZbRDyGeE8F6cqjLyqN8
 GY1tg1m.5.PiIEUPiHth61y_FgT7lJ22SBWgzntvsW43Qa5eN6KZDiKbbMlrHaG70vR3KskbRDH7
 8X4xkAkBmoWGhKfB.9GY.kMcjMgumwEurGCfwsefMvWfud8DZKtZ5eCM1iHFL2fPUs_c6cx6vEfC
 UL3a1Q.4aoex8tRqBT6eCeGSpBefSX01r
X-Sonic-MF: <marklmi@yahoo.com>
X-Sonic-ID: c7bbb8b5-c189-47ca-bf53-c20b45d8b08f
Received: from sonic.gate.mail.ne1.yahoo.com by sonic302.consmr.mail.gq1.yahoo.com with HTTP; Tue, 26 Nov 2024 22:02:59 +0000
Received: by hermes--production-gq1-5dd4b47f46-5kxd4 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 6e651444e4ded6448e7982f4f402cb75;
          Tue, 26 Nov 2024 22:02:55 +0000 (UTC)
From: Mark Millard <marklmi@yahoo.com>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3776.700.51.11.1\))
Subject: RE:git: 40c1672e886b - main - swap_pager: fix seek_data with invalid
 first page 
Message-Id: <B39523C5-3862-4E18-BEAD-0BAD9F6CA213@yahoo.com>
Date: Tue, 26 Nov 2024 14:02:44 -0800
To: dougm@freebsd.org,
 dev-commits-src-main@freebsd.org
X-Mailer: Apple Mail (2.3776.700.51.11.1)
References: <B39523C5-3862-4E18-BEAD-0BAD9F6CA213.ref@yahoo.com>
X-Spamd-Result: default: False [-3.00 / 15.00];
	NEURAL_HAM_SHORT(-1.00)[-1.000];
	NEURAL_HAM_MEDIUM(-1.00)[-1.000];
	NEURAL_HAM_LONG(-1.00)[-1.000];
	DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject];
	SUBJECT_ENDS_SPACES(0.50)[];
	MV_CASE(0.50)[];
	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)[];
	DWL_DNSWL_NONE(0.00)[yahoo.com:dkim];
	DKIM_TRACE(0.00)[yahoo.com:+];
	FREEMAIL_FROM(0.00)[yahoo.com];
	RCPT_COUNT_TWO(0.00)[2];
	MIME_TRACE(0.00)[0:+];
	ARC_NA(0.00)[];
	FROM_HAS_DN(0.00)[];
	RCVD_VIA_SMTP_AUTH(0.00)[];
	TO_DN_NONE(0.00)[];
	RCVD_COUNT_TWO(0.00)[2];
	FROM_EQ_ENVFROM(0.00)[];
	ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US];
	TO_MATCH_ENVRCPT_SOME(0.00)[];
	MID_RHS_MATCH_FROM(0.00)[];
	MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org];
	FREEMAIL_ENVFROM(0.00)[yahoo.com];
	RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.68.148:from];
	RCVD_IN_DNSWL_NONE(0.00)[98.137.68.148:from]
X-Rspamd-Queue-Id: 4Xyc5K728cz4HS9
X-Spamd-Bar: --

Doug Moore <dougm_at_FreeBSD.org> wrote on
Date: Tue, 26 Nov 2024 18:15:33 UTC :

> The branch main has been updated by dougm:
>=20
> URL: =
https://cgit.FreeBSD.org/src/commit/?id=3D40c1672e886b86f4956c16e9f1161683=
328504ff
>=20
> commit 40c1672e886b86f4956c16e9f1161683328504ff
> Author: Doug Moore <dougm@FreeBSD.org>
> AuthorDate: 2024-11-26 18:12:08 +0000
> Commit: Doug Moore <dougm@FreeBSD.org>
> CommitDate: 2024-11-26 18:12:08 +0000
>=20
> swap_pager: fix seek_data with invalid first page
>=20
> Correct swap_pager_seek_data so that, when the first lookup finds no
> valid pages, second and subsequent lookups are attempted anyway.
>=20
> This was broken by db08b0b04deced766c3b5f07bcfb82333666226c.
>=20
> Reported by: marklmi@yahoo.com
> Reviewed by: kib
> Tested by: marklmi@yahoo.com
> Fixes: db08b0b04deced76 tmpfs_vnops: move swap work to swap_pager
> Differential Revision: https://reviews.freebsd.org/D47767
. . .

MFC to stable/14 ? Should 14.2-RELEASE getting something related? =
14.1-RELEASE ?


=3D=3D=3D
Mark Millard
marklmi at yahoo.com


From nobody Tue Nov 26 22:11:42 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XycHc6V4bz5f5Wj
	for <dev-commits-src-main@mlmmj.nyi.freebsd.org>; Tue, 26 Nov 2024 22:11:56 +0000 (UTC)
	(envelope-from marklmi@yahoo.com)
Received: from sonic306-21.consmr.mail.gq1.yahoo.com (sonic306-21.consmr.mail.gq1.yahoo.com [98.137.68.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 4XycHc0qg9z4JM3
	for <dev-commits-src-main@freebsd.org>; Tue, 26 Nov 2024 22:11:56 +0000 (UTC)
	(envelope-from marklmi@yahoo.com)
Authentication-Results: mx1.freebsd.org;
	dkim=pass header.d=yahoo.com header.s=s2048 header.b=ioNGLDoV;
	spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.68.84 as permitted sender) smtp.mailfrom=marklmi@yahoo.com;
	dmarc=pass (policy=reject) header.from=yahoo.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1732659113; bh=OmKi7tH8ozIDSLpUzocGbDFpKpyD8FQo1UUd2yo+lQU=; h=From:Subject:Date:References:To:In-Reply-To:From:Subject:Reply-To; b=ioNGLDoVmZTKJKtXSIxl96qr8dm5ts6y3ruRjwXx58d8WjSb0poMcb7ixeJmGuoXx7lWInYOkJr4T6LKDb4JfHNj8nb9I2pGhfJb9f05duG9msb47nmK3ksftkchwCYY0r/HxN8IYvIArdBTA9lGHkPHDjLRWX0BsxxiSQChVqnFKuXRQbj7gWN9cQ7Z2X3ER12RkAifEBDQ2q/kgrM9hIjw/hwPoz+RLXM8HZuzvQtg5s7HdXCnS7j0Ifgb0awgJJkm0EuqJ0ZNGH5iGBxLq40bH60vIZvT3ajiRdREqmvI206lPkDR13kiX5vhq4Md6l2yb0DpZws0RuL3cejVXA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1732659113; bh=ZhEKX7rbZqiIZ4NsoGdzmIUeEckXbsXtSUfVeHaWuja=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=BaCACklZjH98w3TXVcx9Co4fp7F81tcQA+UCJxyEdiqNTDMDXv9dcei4D+1ZCfo70Ak4xyofup9CQ6DR/Ou2ojIfm6JErqgUc7z6JqNGnys3Diatnaa02+tqAMLYZJO19yF39MZPR5VUYzyoS1iCj1+VxQbIoEA0ntULKMlroHf990pUyIwM6M0VcfcN61zmxlgp5CwR0/UjDPzqbVkYLdLTo7jh3nHueExG4JlqCL7+zXBTVRfH7DMGoNAWvt30Z4cTongb9ea5gD6zHL5A2brjceqL6cp7xV9FNgMFjPK4J6qBRnMQzsne+qDHtU4sJUlu5UdT37DKlAU/WMIM8g==
X-YMail-OSG: uoa.BrsVM1lxb997G8ofVydw6phpuSzJjKV246hU8gzGhCUVYlwUYkaPhNhWZWm
 4jJ3DWbUKeBL8nlvShqXr_1lESdMfvW_.2VURFAmK1ptb9fqoMUZ4M3znTVNzLpplagJIe1X6Bpm
 tB2xjUPtfvFyyqfvSuxgJJyhRTSZcXtaiSkDECg6MULFLcLUuT0mRKyIyjJgCt07KPdzFQKEuEt6
 SpzRhXdYKTZDlzir8yQ9Xsv6_j3rStt2K8RU7Daq6pgFu5pBiMB_s3fsBzA3krLRCZXLuzXpAzc8
 k.P4ptMiE2XrTEP3NFiT8uBRA42Y5a3.xyDYyLx4X6Kb6ZVGMjj5WsJZAXKNpqgqXdV28T21nrhN
 RAJNQSaLp7NQKhzE5azUkhuWcE601KPueBnDD5CBdykYPg5rZCqbmFrLwsfYHi26FBZHFaUWluhh
 BwRSa.5qsU0yJI6svBOfoN6QBWIJmiVuw8ae0geuNbXA.ZjAl3RJtXnFFwboPiZjyC9OCn0PjIy0
 etT2AWn6C0OQPah.M0Xl5.Lcd.1lwC0Az3uqXLArlV36VKqnuxlKIi3l6nucfEu4Np5rtV8y4kHR
 vy4qwxLC5t24TzZXD4EdWka4D83LU1RQuz2GDYKZjYrDrR9yhvyeHdb8YFKqCdyZwISo706Gv868
 39p4uOtPwipOeonhdGHPMAxhbM_A6fBm3ZduIxn5gt_me96NcKvlBCzRbbXKALY1TG7EtC.YHD6Q
 i_tg9EFUn_tVKhpPciHrdRdjA4gIwq4g2m4pUEJZ_7RuMb2LKJU9UaPUL10b.fvJE0d2Eq.dPSrf
 _Z1aQdvZ50hBvBwVUCtzLbwcGaZLx196Sgm_AhPjrSYy9WpUoEtfAYeknAC1dHSHO9vGVwxY1a1n
 yQKA.DJRbQTrp6HRwYsoRqLs4W03px218ImnTBbisM4KaFbxtHflM2I6gpZ23yy0jGbddGUe0q7l
 Tn2GW.IO0X54zmBRhMgVSJ3yg0c2tyvZC3AQbXrKA9f8Bz9mVcFowLb0zBHhEA7rjOITYEQyTA8S
 lBhd5caMR_TEp0Wn2LcHz2VdU.O4f7srHP9D4xTfL_uw7IHP21Le8r9yH.bQNphu7TnVzON5z1bj
 IxwJsZjz4VU6UsKrxQG_QOTC08B60S0DSQk1G76fLzJU1toI6PxV.Qxa9clGNI1mw2oykCE2CpDw
 AJd49i7QaSpBOfiXZQ5AO312YUthhGQcVe5yGCSkqzT09jMiVkTzhTlKIr_SkwcsKvlG2XdpEsiE
 xnX5_K_76jDYrvNm50TgUkNkZulMxObe7TBeMDMdaexo44le2nZFljnKYpUoJIgiI_smyTn9GvLL
 S23zCHtmbpGllgtkQtxFKOBONM3jE48QjOtfQQMBHK3NvEnyCqBFasqiO1KFRk0IN2LhYDce4.iX
 miLsm8qphsYDywUrvdV8P5owovGEMNaiwzI5z.16YkmSS0OM4FirJIwpJb.Dezbj80gBHyB9AqHA
 PoEMXhbC7sPew5q1yRbYvBX9Sv4iWMmTWhcK.lQKgtzq44u0rK2V6nQhSKQjMfktVDGZCVdfoIPJ
 pwAkMWDG4FfDYaQ80bE__DzXzv5YTDyU_.qVfHzt0V8KqWCsJgI5Go38ijPLi34okr9PbYVVWR_8
 DC8PFRqeSdGpz7rgKiHWcOhXh.9aWDV9Ud6XjsuYL8dgWeovcPMDS3tVne3kHnPiJlfuvsT1c4X6
 H4AYX7uPhoD9aMziABMliPqJrRLHTLXSZXgzZATNeIaKQeFuP1Lk0XkN2yMKdLXj2f9ty6Uje7No
 BhhTNJec40ttUcHBWT5ZotbP5pACtroDEJSTnmY1.0rhHCFVCxqIS6ivJ4ewnqGgYRJFPhWy2aRf
 RAa1wOFhVqw6fCfJXfnAV45yRv34E2H5fSyoXGZCLXAthlOEvQSMG2rL.R8dtVvQNc.HhbRFURBq
 .5T7GwmJFwBsLC9ug5w2w0Q_52b9C3lrdvTswNRG94Kn1Ud7fbbFg9Zym15lA_qIqFWXWdlqrQ3q
 gvkInOhsebUqH_kUsAPENzQAOEc7zeDmWnUqNd3P47Wbk9NJ2mgYCQMwkHJVql0fJ4iAWlnkIZ78
 N_DXddXpVQasxKVId_Q_SO9La2QiOygMvaFM0bs2lsXEwYUseyiCgcl9b4GrzUEtvEuuSeWmUtvJ
 73tCfM17Se9eYn8zcKuhvAaPzcj6MJR65U16bmHzyfY3EKslgrs0AW9Fz6RJfZJ2Bzq8k2gJWe22
 RyeH_AYzd_Ovj1pGCLnWsflyYeExyRlKRAIrrfehjbGGsYjgbE3O74uU7mDgEprvdTJXyrBlmBJj
 AUIqqBK7kRjh.S4557r1lsrM-
X-Sonic-MF: <marklmi@yahoo.com>
X-Sonic-ID: 33a47a4c-b9a8-4822-b143-6271bbd4a279
Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.gq1.yahoo.com with HTTP; Tue, 26 Nov 2024 22:11:53 +0000
Received: by hermes--production-gq1-5dd4b47f46-whghm (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 394d142fdb1d7d6d722c19a8ab27e279;
          Tue, 26 Nov 2024 22:11:52 +0000 (UTC)
From: Mark Millard <marklmi@yahoo.com>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3776.700.51.11.1\))
Subject: Re: git: 40c1672e886b - main - swap_pager: fix seek_data with invalid
 first page
Date: Tue, 26 Nov 2024 14:11:42 -0800
References: <B39523C5-3862-4E18-BEAD-0BAD9F6CA213@yahoo.com>
To: dougm@freebsd.org,
 dev-commits-src-main@freebsd.org
In-Reply-To: <B39523C5-3862-4E18-BEAD-0BAD9F6CA213@yahoo.com>
Message-Id: <1489C11D-AA49-4AED-A0A5-CF7D9D65D7C2@yahoo.com>
X-Mailer: Apple Mail (2.3776.700.51.11.1)
X-Spamd-Result: default: False [-3.50 / 15.00];
	NEURAL_HAM_MEDIUM(-1.00)[-1.000];
	NEURAL_HAM_LONG(-1.00)[-1.000];
	NEURAL_HAM_SHORT(-1.00)[-1.000];
	DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject];
	MV_CASE(0.50)[];
	R_SPF_ALLOW(-0.20)[+ptr:yahoo.com];
	R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048];
	MIME_GOOD(-0.10)[text/plain];
	ARC_NA(0.00)[];
	FREEMAIL_ENVFROM(0.00)[yahoo.com];
	RCVD_TLS_LAST(0.00)[];
	FREEMAIL_FROM(0.00)[yahoo.com];
	RCPT_COUNT_TWO(0.00)[2];
	MIME_TRACE(0.00)[0:+];
	DKIM_TRACE(0.00)[yahoo.com:+];
	FROM_HAS_DN(0.00)[];
	RCVD_VIA_SMTP_AUTH(0.00)[];
	DWL_DNSWL_NONE(0.00)[yahoo.com:dkim];
	TO_DN_NONE(0.00)[];
	RCVD_COUNT_TWO(0.00)[2];
	FROM_EQ_ENVFROM(0.00)[];
	ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US];
	TO_MATCH_ENVRCPT_SOME(0.00)[];
	MID_RHS_MATCH_FROM(0.00)[];
	MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org];
	RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.68.84:from];
	RCVD_IN_DNSWL_NONE(0.00)[98.137.68.84:from]
X-Rspamd-Queue-Id: 4XycHc0qg9z4JM3
X-Spamd-Bar: ---

On Nov 26, 2024, at 14:02, Mark Millard <marklmi@yahoo.com> wrote:

> Doug Moore <dougm_at_FreeBSD.org> wrote on
> Date: Tue, 26 Nov 2024 18:15:33 UTC :
>=20
>> The branch main has been updated by dougm:
>>=20
>> URL: =
https://cgit.FreeBSD.org/src/commit/?id=3D40c1672e886b86f4956c16e9f1161683=
328504ff
>>=20
>> commit 40c1672e886b86f4956c16e9f1161683328504ff
>> Author: Doug Moore <dougm@FreeBSD.org>
>> AuthorDate: 2024-11-26 18:12:08 +0000
>> Commit: Doug Moore <dougm@FreeBSD.org>
>> CommitDate: 2024-11-26 18:12:08 +0000
>>=20
>> swap_pager: fix seek_data with invalid first page
>>=20
>> Correct swap_pager_seek_data so that, when the first lookup finds no
>> valid pages, second and subsequent lookups are attempted anyway.
>>=20
>> This was broken by db08b0b04deced766c3b5f07bcfb82333666226c.
>>=20
>> Reported by: marklmi@yahoo.com
>> Reviewed by: kib
>> Tested by: marklmi@yahoo.com
>> Fixes: db08b0b04deced76 tmpfs_vnops: move swap work to swap_pager
>> Differential Revision: https://reviews.freebsd.org/D47767
> . . .
>=20
> MFC to stable/14 ? Should 14.2-RELEASE getting something related? =
14.1-RELEASE ?

Looking at stable/14 : looks like does not apply.

Sorry for the noise.


=3D=3D=3D
Mark Millard
marklmi at yahoo.com


From nobody Wed Nov 27 08:22:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XysrB4TZCz5dp17;
	Wed, 27 Nov 2024 08:22: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XysrB41DYz4nbf;
	Wed, 27 Nov 2024 08:22:34 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732695754;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Ne/QWRYRZuAUYfcisDsHAcwqFX5Yyyb4MGVK4/urkxU=;
	b=mpsyLpRn2r505LkDYzZF6LNK7mQEk5FhxQ0JKwhe25jyy4HXro/GxtSc726DgRriVByEcD
	9gZYTq1Fi+7dm6aMKDozjLXJTBdmP/Pbi4ziCUR7/PTsnXyArY3+y8hIiwEHHuQnlGLJKV
	PbIYxvRl0fxD0hNchgK/esJX19Byu4QnG9REa9M1XKR7voXBLN+UI04Ua1Sx+NK6rPWd3F
	bDyoXPhwgleklFzjIjRmLcARkNU5FAXEcw5ZC/ws453wTUMam7Cc4m/GCF8/zPetM2GRdX
	lpKpf6l8inkV4GJbwIGaPNhbOk+QuuNvUMJiarLN+aBrLPC/IopI+nszEq81fw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732695754;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Ne/QWRYRZuAUYfcisDsHAcwqFX5Yyyb4MGVK4/urkxU=;
	b=mx9c/N/vq2Dt8jv7rTztt/yhSdNTOg3rclO/gLWUHswAzhlZ+3un+0Hu1fOsAHtXDYe/Pp
	jv+rih4tuoQEqYBdcCa/+23x0yGozDyvCZ/xxStBPsvf1e04caNglKlMBLZG69lp05BA+j
	XIOk+3OWEII5CFjIzSQZtRLo5gLgphukKITukKS2oG2xmhEN3BII90XxuIQaJXBrdvkq63
	VZNZ816r9S3VRXYMe5h/OrJgLN5NrKgzLKeqK2O64YuoOV7ANzL/OF9nKXT4Tnw/XM+sBd
	C4StjUu1Da1e8VwaIaVo+hodgPMqx8l31BttLqsYPxVgRym2/pBoVJX8mLu8Ow==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732695754; a=rsa-sha256; cv=none;
	b=MJTjisbMvpdrSt/Vfju6xL8tje+968oxeMYf4QjW3w6xQOxp62eUyJgsdBJF5YvTLRkxQ9
	lJ4ci0E4TN2epOTe9EjLk6Zn8fNs5GgQ01fwj2OETo0bqD+N/wcvfgGkkfFoyQG4roguhq
	G4OGHTIYS//JzmFKBuKR1maS2DyK79LwsuT23bTqkkpLIZ9iEeHXiV2fRLadtNCq7wIF5d
	hFQsRZWFMEVosg+cv2Omz19dxNjHmb/lksAf8P4SKLspyQ9Y514JLkKP16TKJWWUbAblGm
	3auZlPbOuubYN/cbvSz/PwzCWxUlnNRuAwkVmKaySjGr5yWg/LmTICBR+jPknw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XysrB3cDnz12RJ;
	Wed, 27 Nov 2024 08:22: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 4AR8MYfx060286;
	Wed, 27 Nov 2024 08:22:34 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AR8MYWP060283;
	Wed, 27 Nov 2024 08:22:34 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 08:22:34 GMT
Message-Id: <202411270822.4AR8MYWP060283@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Alan Cox <alc@FreeBSD.org>
Subject: git: fd630ae93634 - main - vm: Retire an unused declaration
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: alc
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: fd630ae93634b3c7410a390c57408685caf8d937
Auto-Submitted: auto-generated

The branch main has been updated by alc:

URL: https://cgit.FreeBSD.org/src/commit/?id=fd630ae93634b3c7410a390c57408685caf8d937

commit fd630ae93634b3c7410a390c57408685caf8d937
Author:     Alan Cox <alc@FreeBSD.org>
AuthorDate: 2024-11-24 19:23:48 +0000
Commit:     Alan Cox <alc@FreeBSD.org>
CommitDate: 2024-11-27 08:14:58 +0000

    vm: Retire an unused declaration
    
    The bio_transient_map was long ago replaced by a vmem arena.
    
    Reviewed by:    kib, markj
    Differential Revision:  https://reviews.freebsd.org/D47729
---
 sys/sys/bio.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/sys/sys/bio.h b/sys/sys/bio.h
index 1de841681710..74d2b03bd180 100644
--- a/sys/sys/bio.h
+++ b/sys/sys/bio.h
@@ -75,7 +75,6 @@
 #ifdef _KERNEL
 struct disk;
 struct bio;
-struct vm_map;
 
 typedef void bio_task_t(void *);
 
@@ -144,7 +143,6 @@ struct bio_queue_head {
 	int batched;
 };
 
-extern struct vm_map *bio_transient_map;
 extern int bio_transient_maxcnt;
 
 void biodone(struct bio *bp);

From nobody Wed Nov 27 08:53:15 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XytWb5xjFz5dr1Y;
	Wed, 27 Nov 2024 08:53: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XytWb5JMTz4rK7;
	Wed, 27 Nov 2024 08:53:15 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732697595;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3K3a7QLK8mapE6W+SaklJXR4Ka7naBTBGwtmZ/7fWKU=;
	b=w9qT6NQ5WfQbnDx45OZ4swrm5OwE4OMO/iI9EaYXYUwdQ3po8hquUoKiSbFnljrz6i7HTs
	cgYxANKxNG9ESsTGa1cAQA/eaSGAOvcz7XhI9EY5ZnefjFMbxN2YXrcFoWxDlyS1ZbAyI9
	MXb5yB9tzaI4zLcvdoi73k9VztY9C5M2QofhfmLr1yodDreUmwBmEJOckFVs37/SoGyFUS
	EjMCgwkBcTfUkqJcMdDlAy83uM/u65bxcCsfrQFf3PGLzLii5YopD7c8Y5SEvBVLahYn+l
	Snt+09YsIAariVDZwcu2tOV3CNsuhIDV2hHBvZYusQEQ+30raAZHbcsj6HcO/A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732697595;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=3K3a7QLK8mapE6W+SaklJXR4Ka7naBTBGwtmZ/7fWKU=;
	b=FzI8t+VuPCFrtaShXer3FkIrfeWH0/ezPossoL167gSp1O2guVJcNnwKILbaA9k94nbDn0
	cSh0kB9ZPXhRzrgNcsuJ0I4bGJkDApNFtQEHLJpIMaIcBCS5pz0gpqBK4RiVyNW5+uylzi
	UCAqCaAK68KNjpPFZSmHWumAA6m84Zj/njk+o3wtiTHjkx5JhkqxlkUQT3x7Qy5SPZ7qou
	O7IeiKnbDxzIv7VJ0zy3ZWAf7njnr6CdKycb94pT2bKPhwEWUU5PRk+kuWlm4Q1IWnePVS
	PUdnJBwUlN7pwxwYq/Grdgrj/UyEtxF53qqnYNgT7AHIjJskKqMr9LIs8u2b6g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732697595; a=rsa-sha256; cv=none;
	b=trzgjtHyaGFN4vyakZs8uWWxQk03B5HKPmeNn4o97335u9WYB3lrho2Y67A/etMtf+Uigm
	ae1aSGW9R1H9M2KDzbPOVD6dwNS7F0JiF0cqTxppnYJuKlkP9qWToaTPrJq+EDoUfwmueQ
	7WW0PcMQ7gmsKKPl+KKjvBEPj6p+UEql/25HeysSY5W4KfG+mTE734zaw6o3wuQLJA0uy2
	7HkzDS2O8fet94WRwqx4HoCWPTg8vEDISjlQkuf+QcjCOJlLcZvL/XFdfl2xxn/YcN0PP8
	WYIhIabBqTBs/EvyTTS+YJOX0brhQuy0wcAHx6tWljfgrM71ARXFDziTxX+vFA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XytWb4w2Qz13QV;
	Wed, 27 Nov 2024 08:53: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 4AR8rFv2015297;
	Wed, 27 Nov 2024 08:53:15 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AR8rFeE015294;
	Wed, 27 Nov 2024 08:53:15 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 08:53:15 GMT
Message-Id: <202411270853.4AR8rFeE015294@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Baptiste Daroussin <bapt@FreeBSD.org>
Subject: git: 41fe9d53005e - main - nuageinit: implement ssh_keys
  support
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bapt
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 41fe9d53005ef213ff16d9b095c0a88e3f2fb296
Auto-Submitted: auto-generated

The branch main has been updated by bapt:

URL: https://cgit.FreeBSD.org/src/commit/?id=41fe9d53005ef213ff16d9b095c0a88e3f2fb296

commit 41fe9d53005ef213ff16d9b095c0a88e3f2fb296
Author:     Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2024-11-27 08:52:29 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2024-11-27 08:53:04 +0000

    nuageinit: implement ssh_keys support
    
    MFC After:      1 week
    Sponsored by:   OVHCloud
---
 libexec/nuageinit/nuageinit          | 42 +++++++++++++++++++++++----
 libexec/nuageinit/tests/nuageinit.sh | 56 ++++++++++++++++++++++++++++++++++++
 2 files changed, 93 insertions(+), 5 deletions(-)

diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit
index c8f74d13b7fd..5249c09eb5f1 100755
--- a/libexec/nuageinit/nuageinit
+++ b/libexec/nuageinit/nuageinit
@@ -7,6 +7,7 @@
 local nuage = require("nuage")
 local ucl = require("ucl")
 local yaml = require("yaml")
+local sys_stat = require("posix.sys.stat")
 
 if #arg ~= 2 then
 	nuage.err("Usage: " .. arg[0] .. " <cloud-init-directory> (<config-2> | <nocloud>)", false)
@@ -28,13 +29,22 @@ if not root then
 	root = ""
 end
 
-local function open_config(name)
-	nuage.mkdir_p(root .. "/etc/rc.conf.d")
-	local f, err = io.open(root .. "/etc/rc.conf.d/" .. name, "w")
+local function openat(dir, name)
+	local path_dir = root .. dir
+	local path_name = path_dir .. "/" .. name
+	nuage.mkdir_p(path_dir)
+	local f, err = io.open(path_name, "w")
 	if not f then
-		nuage.err("unable to open " .. name .. " config: " .. err)
+		nuage.err("unable to open " .. path_name .. ": " .. err)
 	end
-	return f
+	return f, path_name
+end
+local function open_ssh_key(name)
+	return openat("/etc/ssh", name)
+end
+
+local function open_config(name)
+	return openat("/etc/rc.conf.d", name)
 end
 
 local function get_ifaces()
@@ -268,6 +278,28 @@ if line == "#cloud-config" then
 	-- default user if none are defined
 		nuage.adduser(default_user)
 	end
+	if obj.ssh_keys and type(obj.ssh_keys) == "table" then
+		for key, val in pairs(obj.ssh_keys) do
+			for keyname, keytype in key:gmatch("(%w+)_(%w+)") do
+				local sshkn = nil
+				if keytype == "public" then
+					sshkn =  "ssh_host_" .. keyname .. "_key.pub"
+				elseif keytype == "private" then
+					sshkn = "ssh_host_" .. keyname .. "_key"
+				end
+				if sshkn then
+					local sshkey, path = open_ssh_key(sshkn)
+					if sshkey then
+						sshkey:write(val .. "\n")
+						sshkey:close()
+					end
+					if keytype == "private" then
+						sys_stat.chmod(path, 384)
+					end
+				end
+			end
+		end
+	end
 	if obj.ssh_authorized_keys then
 		local homedir = nuage.adduser(default_user)
 		for _, k in ipairs(obj.ssh_authorized_keys) do
diff --git a/libexec/nuageinit/tests/nuageinit.sh b/libexec/nuageinit/tests/nuageinit.sh
index f7f39ce32ad8..7e1310c4f0f9 100644
--- a/libexec/nuageinit/tests/nuageinit.sh
+++ b/libexec/nuageinit/tests/nuageinit.sh
@@ -18,6 +18,7 @@ atf_test_case config2_pubkeys_user_data
 atf_test_case config2_pubkeys_meta_data
 atf_test_case config2_network
 atf_test_case config2_network_static_v4
+atf_test_case config2_ssh_keys
 
 args_body()
 {
@@ -404,6 +405,60 @@ EOF
 	atf_check -o file:routing cat "${PWD}"/etc/rc.conf.d/routing
 }
 
+config2_ssh_keys_head()
+{
+	atf_set "require.user" root
+}
+config2_ssh_keys_body()
+{
+	here=$(pwd)
+	export NUAGE_FAKE_ROOTDIR=$(pwd)
+	mkdir -p media/nuageinit
+	touch media/nuageinit/meta_data.json
+	cat > media/nuageinit/user-data << EOF
+#cloud-config
+ssh_keys:
+  rsa_private: |
+    -----BEGIN RSA PRIVATE KEY-----
+    MIIBxwIBAAJhAKD0YSHy73nUgysO13XsJmd4fHiFyQ+00R7VVu2iV9Qco
+    ...
+    -----END RSA PRIVATE KEY-----
+  rsa_public: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAGEAoPRhIfLvedSDKw7Xd ...
+  ed25519_private: |
+    -----BEGIN OPENSSH PRIVATE KEY-----
+    blabla
+    ...
+    -----END OPENSSH PRIVATE KEY-----
+  ed25519_public: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK+MH4E8KO32N5CXRvXVqvyZVl0+6ue4DobdhU0FqFd+
+EOF
+	mkdir -p etc/ssh
+	cat > etc/master.passwd << EOF
+root:*:0:0::0:0:Charlie &:/root:/bin/csh
+sys:*:1:0::0:0:Sys:/home/sys:/bin/csh
+EOF
+	pwd_mkdb -d etc ${here}/etc/master.passwd
+	cat > etc/group << EOF
+wheel:*:0:root
+users:*:1:
+EOF
+	atf_check /usr/libexec/nuageinit "${PWD}"/media/nuageinit config-2
+	_expected="-----BEGIN RSA PRIVATE KEY-----
+MIIBxwIBAAJhAKD0YSHy73nUgysO13XsJmd4fHiFyQ+00R7VVu2iV9Qco
+...
+-----END RSA PRIVATE KEY-----
+"
+	atf_check -o inline:"${_expected}" cat ${PWD}/etc/ssh/ssh_host_rsa_key
+	_expected="ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAGEAoPRhIfLvedSDKw7Xd ...\n"
+	atf_check -o inline:"${_expected}" cat ${PWD}/etc/ssh/ssh_host_rsa_key.pub
+	_expected="-----BEGIN OPENSSH PRIVATE KEY-----
+blabla
+...
+-----END OPENSSH PRIVATE KEY-----\n"
+	atf_check -o inline:"${_expected}" cat ${PWD}/etc/ssh/ssh_host_ed25519_key
+	_expected="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK+MH4E8KO32N5CXRvXVqvyZVl0+6ue4DobdhU0FqFd+\n"
+	atf_check -o inline:"${_expected}" cat ${PWD}/etc/ssh/ssh_host_ed25519_key.pub
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case args
@@ -418,4 +473,5 @@ atf_init_test_cases()
 	atf_add_test_case config2_pubkeys_meta_data
 	atf_add_test_case config2_network
 	atf_add_test_case config2_network_static_v4
+	atf_add_test_case config2_ssh_keys
 }

From nobody Wed Nov 27 09:03:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xytlb0yvFz5drhd;
	Wed, 27 Nov 2024 09:03: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xytlb0Mb9z4sFF;
	Wed, 27 Nov 2024 09:03:39 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732698219;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=F4IPYTjJU6UkKQu1Yk9ViJZutbeIV1eQ+M7+OZji+EQ=;
	b=fvfN4JiT3Ix3arNmUVTnWAHcqAzJPCQPPRQwhmDFCMeJFMPz7Bgs1IzcdxxnsTYIeNPwaa
	XDIgkiIvNfbtqsCXWZuxAz72jWxvomshHmAWlH78fe4VL5D6ffTkPVFWJjZvfXY0gTAFtS
	s2gzpuxQkXP/4h7D7suoKDkPRZ4i3sy3bHw3VQTE8q5x0EEiZrcwAI4WtqFlgyUe4rqAMj
	4jqT0TtCbHKoZT1XLQRKdAdTSFhEmTlEiuZ+AVG3flFjvLaFB7rJXwBk/0AxRtfEV4E8p5
	hTJWTsxGxM7M4iGJRK1aJhw/8EfLWfNtpWzP+XzwncxaAFUMJzoBSDIUJst+Ew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732698219;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=F4IPYTjJU6UkKQu1Yk9ViJZutbeIV1eQ+M7+OZji+EQ=;
	b=S1ScVlGb6l1otiGi+ohVsDCCIbTWaA1uK1jNmA+aK8jrETq3ogTNcK4jkuuSxnjJOUkExZ
	IHCSxnrBWOtZgtyYSmdXE/S3AiOylxP1iaL/FX3us3EYtpye7UYDkyrK/cbdkHW32KMUwC
	bHue1YsVi2MT/ioYCOeSjy3tYpqM8NaHOyM6/4BBZRbAQkbeFMg3JEBRe3JxJeoHtSFAyz
	vKYfPEST2+xqskvck57lSP2fjfJS1Ptv1aTKtq11sQOYAh0QuzsWcEAnmO9Ydl27y1joRK
	AWIzfkSs8mRAiS149ltNveBgfOaD/35GcOENsg8EACbuyT8f3ntV0wTPnNIR8g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732698219; a=rsa-sha256; cv=none;
	b=AM0mhK7SslBFB1cTSnKc3pBwC97WDE44ybZaeTDm9vXxlReLJ3OGSJafeMhaM/KupDwAtz
	jkpco56nhVVnQg/SLrX5XKABo78/CygxvmZLNSndd98zdpE5byyEL1DSQYx+COnTYXvdKc
	EYgFm0QnVOnwAOYZWR90yOS6zfaJutzyjTRYPIklp6OShf2otOTKeqUZPn3iQL+F6tlwdR
	Q51Va/3Fg7RRRS21Yne16oZd/Gpbw7jzzETUn5qmBU/ssQKEEgMX2qrQGzV26u0QxBgpkR
	DtrtiWwRRXSkk9qxL8d4ke6JLjixNg4019VpwWH6o/JtuJ76h4W5nh7dCKfs8w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XytlZ74M6z13gY;
	Wed, 27 Nov 2024 09:03: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 4AR93c5g035268;
	Wed, 27 Nov 2024 09:03:38 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AR93cTR035263;
	Wed, 27 Nov 2024 09:03:38 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 09:03:38 GMT
Message-Id: <202411270903.4AR93cTR035263@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Baptiste Daroussin <bapt@FreeBSD.org>
Subject: git: f3b371f4d938 - main - nuageinit: remove redundant
  mkdirs
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bapt
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: f3b371f4d938c09c4cdc8fd95b4b52e1d8dd41dd
Auto-Submitted: auto-generated

The branch main has been updated by bapt:

URL: https://cgit.FreeBSD.org/src/commit/?id=f3b371f4d938c09c4cdc8fd95b4b52e1d8dd41dd

commit f3b371f4d938c09c4cdc8fd95b4b52e1d8dd41dd
Author:     Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2024-11-27 09:03:06 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2024-11-27 09:03:06 +0000

    nuageinit: remove redundant mkdirs
---
 libexec/nuageinit/nuageinit | 2 --
 1 file changed, 2 deletions(-)

diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit
index 5249c09eb5f1..88e8b6c4c2cd 100755
--- a/libexec/nuageinit/nuageinit
+++ b/libexec/nuageinit/nuageinit
@@ -95,7 +95,6 @@ local function config2_network(p)
 		mylinks[v["id"]] = ifaces[s]
 	end
 
-	nuage.mkdir_p(root .. "/etc/rc.conf.d")
 	local network = open_config("network")
 	local routing = open_config("routing")
 	local ipv6 = {}
@@ -308,7 +307,6 @@ if line == "#cloud-config" then
 	end
 	if obj.network then
 		local ifaces = get_ifaces()
-		nuage.mkdir_p(root .. "/etc/rc.conf.d")
 		local network = open_config("network")
 		local routing = open_config("routing")
 		local ipv6 = {}

From nobody Wed Nov 27 12:22:44 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyz9K2k57z5f723;
	Wed, 27 Nov 2024 12:22: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xyz9K16CZz4H5x;
	Wed, 27 Nov 2024 12:22:45 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732710165;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=wLvb2kCg8fbQu4G/zP9YeqUV8e1NPENhYvpypZiTx3E=;
	b=r93uQ1QEJL3v6C+kumtCSORmxeQOXrQiyyfyoGgyMoRl4NYzdyfW1raIEBnodXJ37fCcUO
	s2D1QS+IWGeeUmuVRVw7QAo0Y2b1Ln2MICWrieecGNUQyrURdnxUe3bXMAU94zswVNzxXC
	kehAGCQapp9CAeM59Xqey+Ftn5j4RwBLUaD9y1S+Si+eQjbIcymQVbArWUWBUavlSqrZ3P
	WiU0By5EI6X8a/IT1S+cC0BDTkrxm3qsy38WMyKGRWbRb5KgZOFuaoDM39VA7yWA8EXxm2
	mjHpfgRtavvR9cJ78ajqtbKM3C2F8zl3HzGmjA3Z7KNUzbOGNFFPHE28D3Gygg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732710165;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=wLvb2kCg8fbQu4G/zP9YeqUV8e1NPENhYvpypZiTx3E=;
	b=xuwmsnZF7xa8Db191PEO2haAV0EiKS66glnUUxtTMoj5ykxh+PByY0LO7DOJliON09RSUK
	S7KtCZzYvsZZH4NZjoiiUqh1lCmwi4xhXTV2rcVn7sfZqO5oAkfboEL33Fanp2Xsce2smU
	A7Jz6PXPRrFP/eX9G3Jf/BjVQEK/FTR6YV7ctoc2d7Xo821IrI/xrFVZX7MJMzCYXwSY+m
	y25DU2cRS07jPMSFhEWwBRblwRDrOklUf5tO4EKlfPcRehYfzmoj0pt6EsVnFvk+Ndu8Dw
	KSqBG28vdSWBC3aqXE+vugsD4J+yUg310x9ZgJpeMm/ba2m0kLYBj0UVPI9zYA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732710165; a=rsa-sha256; cv=none;
	b=qiVCrCa3El3fQlHcb+wg/eF2tBnzrBQVSyDuCJh9pqGJzMobzTwFfI3bP2BeAVv6cRXIca
	My4HRlHTT+A51SDJ99qC6RLw21zNKYrRVytsXDURNrWcMGybNT/eQdh3lldcIHLlDT2NdM
	VfGmbzN3S1pMpO9pPN2wDxhBmZiuaRudF2jdypB7b/fwDusF6Mfjr7HWwpoX7jbxGxEZ4v
	KidQb3VE1ANLucB/mAzWigF6xKfgZEGoNBH9AWsFP/hig2+WFyDgjXqbZYIlVuQkthqiJW
	0zyAMzKr8dqsE/Q7vMZlMmUKGBzvvO2+hjhCMfs9+m9co5x2R6PoPApjdFAsvQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xyz9J6xnZz18q9;
	Wed, 27 Nov 2024 12:22: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 4ARCMi2o008436;
	Wed, 27 Nov 2024 12:22:44 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARCMiNS008433;
	Wed, 27 Nov 2024 12:22:44 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 12:22:44 GMT
Message-Id: <202411271222.4ARCMiNS008433@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: fc26f24b3ef2 - main - colrm(1): Replace magic exit
  codes with standard macros
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: fc26f24b3ef276b2a9f73c9778aecff7377b1aeb
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=fc26f24b3ef276b2a9f73c9778aecff7377b1aeb

commit fc26f24b3ef276b2a9f73c9778aecff7377b1aeb
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-27 08:59:39 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 12:20:11 +0000

    colrm(1): Replace magic exit codes with standard macros
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    markj, oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1496
---
 usr.bin/colrm/colrm.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/usr.bin/colrm/colrm.c b/usr.bin/colrm/colrm.c
index ffedc429eeb1..7f758b9cfbc6 100644
--- a/usr.bin/colrm/colrm.c
+++ b/usr.bin/colrm/colrm.c
@@ -68,12 +68,12 @@ main(int argc, char *argv[])
 	case 2:
 		stop = strtol(argv[1], &p, 10);
 		if (stop <= 0 || *p)
-			errx(1, "illegal column -- %s", argv[1]);
+			errx(EXIT_FAILURE, "illegal column -- %s", argv[1]);
 		/* FALLTHROUGH */
 	case 1:
 		start = strtol(argv[0], &p, 10);
 		if (start <= 0 || *p)
-			errx(1, "illegal column -- %s", argv[0]);
+			errx(EXIT_FAILURE, "illegal column -- %s", argv[0]);
 		break;
 	case 0:
 		break;
@@ -82,7 +82,7 @@ main(int argc, char *argv[])
 	}
 
 	if (stop && start > stop)
-		errx(1, "illegal start and stop columns");
+		errx(EXIT_FAILURE, "illegal start and stop columns");
 
 	for (column = 0;;) {
 		switch (ch = getwchar()) {
@@ -115,15 +115,14 @@ void
 check(FILE *stream)
 {
 	if (feof(stream))
-		exit(0);
+		exit(EXIT_SUCCESS);
 	if (ferror(stream))
-		err(1, "%s", stream == stdin ? "stdin" : "stdout");
+		err(EXIT_FAILURE, "%s", stream == stdin ? "stdin" : "stdout");
 }
 
 void
 usage(void)
 {
 	(void)fprintf(stderr, "usage: colrm [start [stop]]\n");
-	exit(1);
+	exit(EXIT_FAILURE);
 }
-

From nobody Wed Nov 27 12:22:46 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xyz9L3Jsyz5f6YC;
	Wed, 27 Nov 2024 12:22: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xyz9L1889z4HBJ;
	Wed, 27 Nov 2024 12:22:46 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732710166;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=prct/j4lYr5PhWh3GAlyOqKekIjLv1gc7FxDRSVv6kc=;
	b=aF18oR8ybw1muczE7ok341kh4VPi9ICeBC71uagkPIcwgVI9rDWzOWWH8MP8CeoGE3jNfP
	p5Ilwik0HxN1r3WnxE2LPR604JSjpLq6OVEAzO4sh/sCPGxvisIv9sF7rjF3uJJSUKJHum
	//iWs1YBKWcBZvm+KNqLKZrfsnKZf62uMgXWZTyu5ImnRKq5RmjFu+QrBaUQXUkNo+/qts
	Vw1EueEva+2sh0b0NC5ChmVU9V7WTTXwpvcG699czj0Uo01eAY3JbrssIxZaIBrYl2Xw55
	dG6XY7P6vznkbnrCGHhunNoVyUvwdHavX+MgMVMCOZBVIYfexh3uqkWc4L4pdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732710166;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=prct/j4lYr5PhWh3GAlyOqKekIjLv1gc7FxDRSVv6kc=;
	b=ajpyh0K21dBMLGYHLgnCZW8jB/+QJA0wKVgjwfMXB4/Rr3qxT+pcs1azHv6ECR6KuVsJgh
	+gBREOtjBl3vcHCJC7o9/tuspXMEZN9GkyoolDoSL+l2dSB1kLKmr62w/NZD3cmNTJE9Zo
	uB40x4lN/c6vkZ/6PnpyfxfGkYuWoRlnSMk7QdDQ0XoYKuOred0e5s0TtjaVBdr5TBJ0Jw
	cse2nx771kaQxYr2H2i8UugrgXy+0D7tWPGGnkkTPTmR+8G9O3R0vXBk5OnUodBYR2FE/B
	lPpp25ZiQmyfBDPIyCG5Do+DmR5Xj5KDXOMRO7zbhdGXr18aR30KXT7Pu98CDQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732710166; a=rsa-sha256; cv=none;
	b=wSp05QzN+HGO+C9nl0eJ9UXnWiE1D8DBhrfRnNrmlbTrDJY8WdSETVYx0nrGqzUsB3AP3Q
	4NnMfHtoGh4CM7ACYNZ30AGgNVXDNCI/IKF6e32AhPUVqeuKyqM/MHFsvuhdXSaokzQeIa
	CTkx95xJRJNUTtxdbDLkAOVl5DiNo7kKW8srgybAfbXo2+BWCE7caei+4Z5zrSFBkSASYQ
	TTB/Y2T2/X9eq3i4dT775efy3kIYBvXsb2dcHYbi1Pm82h3KNQof/BV25akVk2l8Cwex7/
	fKAq+SMaI08l0tZR/4BR644gYLRy9/DE8NsTbFnghKdZDMWTUwq4McZOBonHAQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xyz9L0m6Rz18JX;
	Wed, 27 Nov 2024 12:22: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 4ARCMkxt008475;
	Wed, 27 Nov 2024 12:22:46 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARCMkLK008472;
	Wed, 27 Nov 2024 12:22:46 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 12:22:46 GMT
Message-Id: <202411271222.4ARCMkLK008472@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 95498a5acc08 - main - colrm(1): Capsicumise
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 95498a5acc0888ed2e73237b82a1e90f109473f9
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=95498a5acc0888ed2e73237b82a1e90f109473f9

commit 95498a5acc0888ed2e73237b82a1e90f109473f9
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-27 09:01:01 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 12:22:50 +0000

    colrm(1): Capsicumise
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    markj, oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1496
---
 usr.bin/colrm/colrm.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/usr.bin/colrm/colrm.c b/usr.bin/colrm/colrm.c
index 7f758b9cfbc6..20bbd6e9a622 100644
--- a/usr.bin/colrm/colrm.c
+++ b/usr.bin/colrm/colrm.c
@@ -40,6 +40,8 @@
 #include <unistd.h>
 #include <wchar.h>
 
+#include <capsicum_helpers.h>
+
 #define	TAB	8
 
 void check(FILE *);
@@ -54,6 +56,10 @@ main(int argc, char *argv[])
 
 	setlocale(LC_ALL, "");
 
+	caph_cache_catpages();
+	if (caph_limit_stdio() < 0 || caph_enter() < 0)
+		err(EXIT_FAILURE, "capsicum");
+
 	while ((ch = getopt(argc, argv, "")) != -1)
 		switch(ch) {
 		case '?':

From nobody Wed Nov 27 14:10:13 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1YK70Nfz5fG0D;
	Wed, 27 Nov 2024 14:10: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1YK4ZZtz4VDP;
	Wed, 27 Nov 2024 14:10:13 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732716613;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ggNXEoiRETTZ8BeAgSRllix5zvOTdy4eWppu8wVqtSo=;
	b=GbgrjVjYjupoLjUrvEtfrtJbHbanZ40dPVwxBkG93tpplfQyNiMGn17VSKl1fxgB39P9gm
	uCo7nLcL9OqDTn8bo5YcdOI0kK+0eVu3fHWh4/7HoqkyprDifN52DGnA5LxGtSDFdrEydS
	h/9SbyoLVdO9ejaXU7PWPAt/tiawcpsyclpVi+fhR20HXgAhiclJxkC5Mz+qP+CiyX9wHa
	YwC8zuOCiIJWmRVV7AtOGsKfM6KUyg0QW50kO6TGcTRlJJ88Uf1h1tqtaMUax9/nMv6CFI
	BQ0BssjBUr/sH8ZLNFGX5P8nD+KaLVSzIJhtsV7F1gxByoKFomZ4f/au/IgGlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732716613;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ggNXEoiRETTZ8BeAgSRllix5zvOTdy4eWppu8wVqtSo=;
	b=Na74QM0turVEuREdlaL+uZRgMVKSziU/hLBdziaMzeyxCa55CZmhtWC1FQTU/iJj88jr6j
	o11r2HmdsVYNTNHC+FDF09GZ6/8gpKJWU+Z+MngGLwkK8TOnX0nLwZTXdGIC4+jpBaMnfv
	yUyMmPESK9RGnYi42Ji9/ms9uUQxfPTPFImKlRbvVtok8I4VjsOkORD7uS8dqgFzgZS75s
	zQTLdurXIhBspay9Qi8fN1WTZO4GoHu58ZUz1BARhznqfi6zUF8UYacVRQchhSXuw7bnpV
	CDAK4D54HmHoKECvAT1VG0DxWxtflcHHI2cDx2fZzTCB1I1j+OFoh1xvT70c+Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732716613; a=rsa-sha256; cv=none;
	b=GQ1aSgj25k+CGvXph5ChozzdMtCTz2ReCX9CmVtP5rbuL/YboUJMVwLqaPD91L8ixjbnuS
	lQI2DFWORa7ptDSIT2uEeV7WM8PU/bj5yqnjJ6pe8bikrixn2C77xgjoy6122iIkol+elK
	zyPoXGYh6iBTavBA0KLInU7JaYizHfFRa9GKUGAKYz++xMYGo7+8/mNubFt1Uy9s6/vt7p
	I+SIX40K0z+3eft3EB2ZYNQ9ZeeyYh/+rmpuKQHfES08N/B87+pt3g/TtPcKi4naSeAUQw
	mSjCutbtZVGos6+Ih1cjyKy0GJ1HtT69+YjsawXXn5uwScbl4W9xnPVw4s6MYA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1YK49fPz1BPC;
	Wed, 27 Nov 2024 14:10: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 4AREADjb003209;
	Wed, 27 Nov 2024 14:10:13 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREADbA003200;
	Wed, 27 Nov 2024 14:10:13 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:10:13 GMT
Message-Id: <202411271410.4AREADbA003200@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: f7a6cf3a0206 - main - leave(1): Replace magic exit
  codes with standard macros
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: f7a6cf3a020600b77795729d1c01780dae8e6d2e
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=f7a6cf3a020600b77795729d1c01780dae8e6d2e

commit f7a6cf3a020600b77795729d1c01780dae8e6d2e
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-27 16:33:05 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:10:29 +0000

    leave(1): Replace magic exit codes with standard macros
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1499
---
 usr.bin/leave/leave.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/usr.bin/leave/leave.c b/usr.bin/leave/leave.c
index c83eb02a0b8e..d4db4349d4de 100644
--- a/usr.bin/leave/leave.c
+++ b/usr.bin/leave/leave.c
@@ -29,8 +29,8 @@
  * SUCH DAMAGE.
  */
 
-#include <err.h>
 #include <ctype.h>
+#include <err.h>
 #include <locale.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -66,7 +66,7 @@ main(int argc, char **argv)
 		(void)write(STDOUT_FILENO, MSG1, sizeof(MSG1) - 1);
 		cp = fgets(buf, sizeof(buf), stdin);
 		if (cp == NULL || *cp == '\n')
-			exit(0);
+			exit(EXIT_SUCCESS);
 	} else if (argc > 2)
 		usage();
 	else
@@ -117,7 +117,7 @@ main(int argc, char **argv)
 		secs -= now % 60;	/* truncate (now + secs) to min */
 	}
 	doalarm(secs);
-	exit(0);
+	exit(EXIT_SUCCESS);
 }
 
 void
@@ -133,7 +133,7 @@ doalarm(u_int secs)
 		daytime += secs;
 		strftime(tb, sizeof(tb), "%+", localtime(&daytime));
 		printf("Alarm set for %s. (pid %d)\n", tb, pid);
-		exit(0);
+		exit(EXIT_SUCCESS);
 	}
 	sleep((u_int)2);		/* let parent print set message */
 	if (secs >= 2)
@@ -148,7 +148,7 @@ doalarm(u_int secs)
 	if (secs >= FIVEMIN) {
 		sleep(secs - FIVEMIN);
 		if (write(STDOUT_FILENO, MSG2, sizeof(MSG2) - 1) != sizeof(MSG2) - 1)
-			exit(0);
+			exit(EXIT_SUCCESS);
 		secs = FIVEMIN;
 	}
 
@@ -157,24 +157,24 @@ doalarm(u_int secs)
 	if (secs >= ONEMIN) {
 		sleep(secs - ONEMIN);
 		if (write(STDOUT_FILENO, MSG3, sizeof(MSG3) - 1) != sizeof(MSG3) - 1)
-			exit(0);
+			exit(EXIT_SUCCESS);
 	}
 
 #define	MSG4	"\07\07Time to leave!\n"
 	for (bother = 10; bother--;) {
 		sleep((u_int)ONEMIN);
 		if (write(STDOUT_FILENO, MSG4, sizeof(MSG4) - 1) != sizeof(MSG4) - 1)
-			exit(0);
+			exit(EXIT_SUCCESS);
 	}
 
 #define	MSG5	"\07\07That was the last time I'll tell you.  Bye.\n"
 	(void)write(STDOUT_FILENO, MSG5, sizeof(MSG5) - 1);
-	exit(0);
+	exit(EXIT_SUCCESS);
 }
 
 static void
 usage(void)
 {
 	fprintf(stderr, "usage: leave [[+]hhmm]\n");
-	exit(1);
+	exit(EXIT_FAILURE);
 }

From nobody Wed Nov 27 14:10:14 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1YM0gtqz5fG2j;
	Wed, 27 Nov 2024 14:10: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1YL537Fz4VMZ;
	Wed, 27 Nov 2024 14:10:14 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732716614;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JJImtjoG99vvyM+X5Q5d0NDTeMqCPe6ythTnZmWXirM=;
	b=cGIEVtg2phuqschXuXWPR/7U+aj6CAiXWcBIUmfMXBdgLRCfK9HYIZXTtAOAX32K8oNeqV
	YW0DgvKfXDy0H6VCWFyVpmetk1Gu8XDGoPPgMT7DyxrdP/8dbjfuZQCtTJyMxheiFkBDf2
	NXIyz9P2jXhZu2G0JrQLbtsZy4Wu6eS0fkogNR4S1Kq149XJoHmMKeHql81WHUw+ceavk/
	M+tTa8lG3pPLoNRP1C/TJS35Jhv7prFx25C/xQXk39+UsA6HwYGBZLbx0O6DQFa5Uh3ITz
	HtoKwSSOK8kRxcCckPyq21a0dzp6aXbqklKrckOzfB1i2TdqJ2PvlNG/qEfnmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732716614;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JJImtjoG99vvyM+X5Q5d0NDTeMqCPe6ythTnZmWXirM=;
	b=rhRd+EfyC64Y6NMbmJOnp2ZEc5cFraZzR1MjiM7OI2Qh8eiauC8euVvHHvr5HMk1QNkBHr
	3WRFhFuTZdKOc+600a3yaeTZBW9LvVq0ZQ0OJKTLVyjTQ1vv3m3LUtOluGFleQPOPdPg2b
	ZIcs3rF4TUFEsVqeOrLEY8lXrtnUdJAroeW7fNlAao8XVfAlAmpsk4h1x9YS/krrlZ6vs/
	e6n+RUMcxsWNUTYepTznrO2M0hEou8qZIj7QZUN6CVUI+SJ+eB7n3r4pLbSqY7563Ux8yh
	tzFBokwy2dnUvajCBVznqM9wxzQpBxuquUX5xKaA9pffPfEuo1m5dA/r20BAtA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732716614; a=rsa-sha256; cv=none;
	b=yxFd1CwgSVdDjPQHbVebh0VzyDJlXzwnNrk442SYyD98y+ctXDRHpNQUPsvdOpdSz2FXBp
	OuJsr/2ZYelBLa8Re7vPnAkaWqwhreUNamOehsnA8UNEfWPZHq4ABmWN+YBCb9iIkCf/co
	eZx45meSWw/+7sjNxU1M3jZA4yMSIlZUtY+e5fDLjK37C+wG7U7ggBVixygrVJg8chE1Zm
	5MdpQP0v0C439ygw5GYeW6bzea/pUpVmHnxebhu6M+0UeI/HfJzLjXVnvHFTaaIhjedS06
	+1rJvCI4KFgim08ChUaIl9T8XrDCLt4sAUqXdyCzfFF0E/Y+Xtq65ZunJpWLLg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1YL4fk5z1C6X;
	Wed, 27 Nov 2024 14:10: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 4AREAEjo003883;
	Wed, 27 Nov 2024 14:10:14 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREAEqG003875;
	Wed, 27 Nov 2024 14:10:14 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:10:14 GMT
Message-Id: <202411271410.4AREAEqG003875@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 24a7303821ad - main - leave(1): Capsicumise
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 24a7303821ad2343b9239ab3d12a569a70a2b99a
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=24a7303821ad2343b9239ab3d12a569a70a2b99a

commit 24a7303821ad2343b9239ab3d12a569a70a2b99a
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-27 16:34:33 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:10:29 +0000

    leave(1): Capsicumise
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1499
---
 usr.bin/leave/leave.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/usr.bin/leave/leave.c b/usr.bin/leave/leave.c
index d4db4349d4de..73507190369e 100644
--- a/usr.bin/leave/leave.c
+++ b/usr.bin/leave/leave.c
@@ -37,6 +37,8 @@
 #include <time.h>
 #include <unistd.h>
 
+#include <capsicum_helpers.h>
+
 static void doalarm(u_int);
 static void usage(void) __dead2;
 
@@ -61,6 +63,10 @@ main(int argc, char **argv)
 	if (setlocale(LC_TIME, "") == NULL)
 		warn("setlocale");
 
+	caph_cache_catpages();
+	if (caph_limit_stdio() < 0 || caph_enter() < 0)
+		err(EXIT_FAILURE, "capsicum");
+
 	if (argc < 2) {
 #define	MSG1	"When do you have to leave? "
 		(void)write(STDOUT_FILENO, MSG1, sizeof(MSG1) - 1);

From nobody Wed Nov 27 14:10:15 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1YN04Tfz5fG6g;
	Wed, 27 Nov 2024 14:10: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1YM5cSVz4VKC;
	Wed, 27 Nov 2024 14:10:15 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732716615;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8HCP3HFL3pPzyvtVlqDrVFXGsvT2m9LdT0J8yspRGIk=;
	b=nZRSWTjXUVdTxjyZsZvzbijmKl7fcAdimjApdOlIg4VAQt9z/XQhu6idYQOKWHEH+Hy0xP
	sJUbX7FygNiV8p8dVlTWMDCTStDX2YCozego3g6UqJIQY4zJ38gz0qkGKymIMtytHJi3vF
	7rDw31XljYGw3vUNM9ZAj6YcU8Ep4lrknhiU6s5OuCTL8Htpgn6v0Bw/ln5cXRgywIR0Bn
	Db1UXgHL+eFl50VV1v1LYo4tLjEHAc/q8HqwsJ29GTNk7uHvr0+lZF8v3fLafsfelZ9K2M
	4qebcPb5cS4HwxnN69W1M7EGL/puH1BMNZa8yqyYtSH2MDRrXfEOiKeuk1tN5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732716615;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8HCP3HFL3pPzyvtVlqDrVFXGsvT2m9LdT0J8yspRGIk=;
	b=OvNiziWBQlN9/PbHU4+v6UnZTWf7j4F2hjZ2mS7MhzzYVSyePQKo1HJE1R1kHr1HS26sPO
	n7pSFTWYvz0niIb5DE5FFv2FQqCl59tKB4y7/X4142KE1spRwgNFoDLhoWsr6JC80Xb3Mc
	eWHBqztY5Qkhx8eBdNpqhNolhFWmiYMCtR/LFkwQHLXgEWD/7hiWm6IO61YJ24jcG4jmn0
	u2L/onTpM+eGNolDdBC80hthkD8XLZuNOuW77o7xdLKZhnf73LFmvg92gIzM7+mXxlqZ4s
	nwU2t2Ctn5c9vmgiSReA0d+I55QFz9UC8u5E5pxHj6ecGSN/RJKM7BbPu/wVzQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732716615; a=rsa-sha256; cv=none;
	b=cYTzHmY86sMeHG0kJNw9TS7GcCK/R3bGjaL0E3YFzojqfTet6WZeRO5j2Kr4ys4XjX1j2W
	wn/Z6SXFrQifmnPNk11CWdNLcPRJsxZQw2YWUNsgoyaCj33pq+bH7C0E08ZPZcHp7Krhcp
	qeEwRB2PeTemUo6MCjUbvPh/H7CrbOpAp6j8tDz6b8mzJVgl1Z4enB1GCZ5hy5A1COhWFu
	oraLwccqgmql6cdrpUbw8wZk8Egr6T8TMMAkQb0vX0Ve+0F1Tvc7IM3UsKmyF/u9le6jqy
	ue14trWyT5pSBZHiaIbcy1YkypWtnUX5kC+AejJr4nwoZn81eTDJ5odvA1CQUQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1YM5DVTz1BqX;
	Wed, 27 Nov 2024 14:10: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 4AREAFbn004575;
	Wed, 27 Nov 2024 14:10:15 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREAFJA004567;
	Wed, 27 Nov 2024 14:10:15 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:10:15 GMT
Message-Id: <202411271410.4AREAFJA004567@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 11ba19ddbb7e - main - leave: style nit
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 11ba19ddbb7eb5d978a67e0592deba64f7197aad
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=11ba19ddbb7eb5d978a67e0592deba64f7197aad

commit 11ba19ddbb7eb5d978a67e0592deba64f7197aad
Author:     Mariusz Zaborski <oshogbo@FreeBSD.org>
AuthorDate: 2024-11-27 14:09:48 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:10:29 +0000

    leave: style nit
---
 usr.bin/leave/leave.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/usr.bin/leave/leave.c b/usr.bin/leave/leave.c
index 73507190369e..aed774025b71 100644
--- a/usr.bin/leave/leave.c
+++ b/usr.bin/leave/leave.c
@@ -114,7 +114,7 @@ main(int argc, char **argv)
 			t_12_hour = t->tm_hour;
 
 		if (hours < t_12_hour ||
-	 	   (hours == t_12_hour && minutes <= t->tm_min))
+		   (hours == t_12_hour && minutes <= t->tm_min))
 			/* Leave time is in the past so we add 12 hrs */
 			hours += 12;
 

From nobody Wed Nov 27 14:17:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1jk1Z1Vz5fGhc;
	Wed, 27 Nov 2024 14:17: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1jk0LKpz4WlF;
	Wed, 27 Nov 2024 14:17:30 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rEIMQH+R+CMUQtaB8b0Es+kZIoSlWQeh4SJzv8hcuV4=;
	b=fDHbOBF4BtiSJeK2zbeMEW0cIsIS+MffqNw1PpMNOZ0mNwvTDBMWoRwTUGbfbcPorIneJc
	9Id7lyPH66ZFQQ7cuypo5p7bt9UEwYgSePiwEThEgx2yDmE05O4mNPYz/zPlaXWHFAmOMW
	Q2lnh7Z/nrUt/RfXjw4EbZfCqmvh463+jjLVkSSO68NJl6W45KeNuPnrtSVc6m5e7OxZ3U
	s23P1DUNQm6uen6lkJxYG7X+ivuWkRXVpx+BZ1LxyXZq58H2sY12HpuR6yaeNwQH6ZGheC
	Xt+jXww01ffazimwOSC7Iw5I6syx65Lrxs9o0/8DmWWf56beW/DK5LTACzijpg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rEIMQH+R+CMUQtaB8b0Es+kZIoSlWQeh4SJzv8hcuV4=;
	b=H5dIRp7reFa8p9Op5VNgFQSUaFfTtswmCQvgzuBdlCBwVWe2onIiiWGT+5RA5b6zxzDV+1
	H+8hWKb9douj0soMfs7oclzhCObZ7BfseN5LnkY4k7LhuYW1dFz/DmVq173ImxQIwH6vBj
	nGoTHpLRYQxV5NqvNXhMQP58dnmggG6oCA51vqyPGmeHZeBnzEmy8qNiPzZjXsjzzVcr0M
	2zYQ5cDhZwMonc2MnisT8PaK+rxA1uQs/r3fY5XiOdsNNeK2N2o2iWyemjFTVcs1pm3kxM
	cK0VvRCVk2r7rZJcxIKXU5vvZ4Rd60HRig9vyLluxjVJGvwTXzu7twkJ3cLmmQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717050; a=rsa-sha256; cv=none;
	b=J+MWy1ev+cqfEhJVj7A/00okUztSzhotZz4JqdLT1P8zs/4NFvVWXCk2ERLOiS0c3Nf9x0
	59qRteeUFPL9yvejNhh7j4oMV7wWBokarDhXOu5pfAA9mmmTO7DC6u4cqMTJPX5xlGU+hL
	Kd5a2vsosK0yg6vNFpaHtol6QOd+Fi6p7Tj53CS7uxolVK63QPFiDPAOzZS+n84B6kF6mR
	dzX5z9mPNAVxbg6pGIlrD1N9ZKvUK19SkX+/vSreUO0i1nnv/V1mPWMC3GWJCGgga8ITR9
	Qz/1LepSw/y6lnSCRlnB//X50DIN2wb914zN/CtudcCXhitjAMNm0ZK8eLgIzQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1jj6lt4z1C50;
	Wed, 27 Nov 2024 14:17: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 4AREHTDo014443;
	Wed, 27 Nov 2024 14:17:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREHTKe014440;
	Wed, 27 Nov 2024 14:17:29 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:17:29 GMT
Message-Id: <202411271417.4AREHTKe014440@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Justin Hibbits <jhibbits@FreeBSD.org>
Subject: git: 09ef538713e0 - main - uart: Add primitive noise
  filtering on RX
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhibbits
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 09ef538713e08a98584dbcf66ff80290cc1b41a2
Auto-Submitted: auto-generated

The branch main has been updated by jhibbits:

URL: https://cgit.FreeBSD.org/src/commit/?id=09ef538713e08a98584dbcf66ff80290cc1b41a2

commit 09ef538713e08a98584dbcf66ff80290cc1b41a2
Author:     Justin Hibbits <jhibbits@FreeBSD.org>
AuthorDate: 2024-11-20 17:08:26 +0000
Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
CommitDate: 2024-11-27 14:17:09 +0000

    uart: Add primitive noise filtering on RX
    
    A long cable attached to the UART can act as an antenna if disconnected
    from the other end.  This can cause noise on the receive side, possibly
    as reflections from the transmit side, leading to an interrupt storm.
    Filter this by adding a threshold of received characters without TX
    ready, above which characters are dropped.  This is disabled by default,
    but has been tested with a threshold of 1000+.  A high threshold is
    recommended to avoid dropping characters during, for instance, a large
    copy/paste from the other end.
    
    Sponsored by:   Juniper Networks, Inc.
---
 sys/dev/uart/uart_dev_ns8250.c | 17 +++++++++++++++++
 sys/dev/uart/uart_dev_ns8250.h |  1 +
 2 files changed, 18 insertions(+)

diff --git a/sys/dev/uart/uart_dev_ns8250.c b/sys/dev/uart/uart_dev_ns8250.c
index 3da2e8b8c758..1df39b499539 100644
--- a/sys/dev/uart/uart_dev_ns8250.c
+++ b/sys/dev/uart/uart_dev_ns8250.c
@@ -77,6 +77,11 @@ static int broken_txfifo = 0;
 SYSCTL_INT(_hw, OID_AUTO, broken_txfifo, CTLFLAG_RWTUN,
 	&broken_txfifo, 0, "UART FIFO has QEMU emulation bug");
 
+static int uart_noise_threshold = 0;
+SYSCTL_INT(_hw, OID_AUTO, uart_noise_threshold, CTLFLAG_RWTUN,
+	&uart_noise_threshold, 0,
+	"Number of UART RX interrupts where TX is not ready, before data is discarded");
+
 /*
  * To use early printf on x86, add the following to your kernel config:
  *
@@ -1012,6 +1017,7 @@ int
 ns8250_bus_receive(struct uart_softc *sc)
 {
 	struct uart_bas *bas;
+	struct ns8250_softc *ns8250 = (struct ns8250_softc *)sc;
 	int xc;
 	uint8_t lsr;
 
@@ -1023,6 +1029,17 @@ ns8250_bus_receive(struct uart_softc *sc)
 			sc->sc_rxbuf[sc->sc_rxput] = UART_STAT_OVERRUN;
 			break;
 		}
+		/* Filter out possible noise on the line.
+		 * Expect that the device should be able to transmit as well as
+		 * receive, so if we receive too many characters before transmit
+		 * is ready, it's probably noise.
+		 */
+		if ((lsr & (LSR_TXRDY | LSR_TEMT)) == 0 &&
+		    uart_noise_threshold > 0) {
+			if (++ns8250->noise_count >= uart_noise_threshold)
+				break;
+		} else
+			ns8250->noise_count = 0;
 		xc = uart_getreg(bas, REG_DATA);
 		if (lsr & LSR_FE)
 			xc |= UART_STAT_FRAMERR;
diff --git a/sys/dev/uart/uart_dev_ns8250.h b/sys/dev/uart/uart_dev_ns8250.h
index 324ff72f6e5d..e8a17e96c268 100644
--- a/sys/dev/uart/uart_dev_ns8250.h
+++ b/sys/dev/uart/uart_dev_ns8250.h
@@ -41,6 +41,7 @@ struct ns8250_softc {
 	uint8_t		ier_mask;
 	uint8_t		ier_rxbits;
 	uint8_t		busy_detect;
+	int		noise_count;
 };
 
 extern struct uart_ops uart_ns8250_ops;

From nobody Wed Nov 27 14:18:33 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1kx53f1z5fGfk;
	Wed, 27 Nov 2024 14: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1kx2HQ6z4XPq;
	Wed, 27 Nov 2024 14: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=1732717113;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=uWEerABG8qo4XLSk2T8N/VpMjxlUkNgWJahLAspJLmc=;
	b=BP5XtfOQg/M6C1fu3OTPWXBGw+d4+k50jEyqCjdmDhDUJpVcyp//Q0BudY43eg40xqEBBM
	U4W8UEIDkEimpPh2MSPhRyEjHeCgp/WM7XJU+SrYgR16IBmoCIpkOrSDnrqA4T5ls5k1g3
	ZI45x6g+FvYJRx7XzWSpP7YFDzRCUBxQV5TSq7OnYtJJcwwCvjfQQnI09lqxmAdB+50zTT
	DEJhs7pxxQdQojBxbra6JE+PYtWPNw+H9kWAlJbbwaTq410jTW4YxQgwUO6j/8J3BNYQZu
	30WoD3lYmnh1fdoLP+iqLhGa1UTfJL+wsMUvagenzCLESGX8w7CT7R/kYRqwlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717113;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=uWEerABG8qo4XLSk2T8N/VpMjxlUkNgWJahLAspJLmc=;
	b=NZ6JE4DVqP/zzAZFCkh4DXqtR8IHPfrksc0RezBNZGE/9Impr+7dRMEwcIwPs2I5pX96ku
	Nq0SNuBDcaystox9l11FwfBMZkP41XJrvazr6Xl6hXn20foN61dgcQKRTItLep/YOn86JO
	wbf9Igob5/Yn3vx5eJBxuVVo8cbulmgR2y89+SGaucAKhQFHbvi80LeWBuDz9aQIjvMjSB
	eFrpMHiwxu3VYe/MxmoxlKXJRUPIJuNhhO2rxC+3uyohaK4nPrJaa6IkLNl2hkxACOkG3c
	Eqtbwa48D1fcaQRyzPaKb3/fQ4GKq1Mjsrsi194Y3B/5qMsyXE86f8BgahJ3iQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717113; a=rsa-sha256; cv=none;
	b=MYw7eQIRuICo8Or2UNKl83qC/4fGcMABycv09Fz4qwlg+fMJpneAhVpNaflAEI1uPlp/ny
	r32xqWwJa7Is7EJIDJqDdQ8+QG7pyK4v02n9rXjD3LdjVsQcAOIFbWTztjmoqR/MqiT6eq
	QpQl1XAnEdidYkjKuneFAsxK4n1MBYxdhcPm3HOYLNgtGeZbRppeFeVm8ocXozy4FBpigf
	4ajnSN/p2y1axmX2d8WAUNkup/EDZxoTUGvsOefAwxrlJG3ig9vOaGIZ+2Y2LkvJLXga7b
	ialBAqXimycBsUD0rEo8rzqPZuMuFupiO3JJzqaVqpeAitl1O8BUs9pPsthjFg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1kx1tWbz1Cjr;
	Wed, 27 Nov 2024 14: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 4AREIXQX014898;
	Wed, 27 Nov 2024 14: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 4AREIXN2014895;
	Wed, 27 Nov 2024 14:18:33 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:18:33 GMT
Message-Id: <202411271418.4AREIXN2014895@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 08a38bb098e9 - main - leave: we should also cache
  time zone
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 08a38bb098e96f2ec77b26fab3b22bc4be89332a
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=08a38bb098e96f2ec77b26fab3b22bc4be89332a

commit 08a38bb098e96f2ec77b26fab3b22bc4be89332a
Author:     Mariusz Zaborski <oshogbo@FreeBSD.org>
AuthorDate: 2024-11-27 14:17:07 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:19:07 +0000

    leave: we should also cache time zone
    
    MFC after:      1 week
---
 usr.bin/leave/leave.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/usr.bin/leave/leave.c b/usr.bin/leave/leave.c
index aed774025b71..a310f3e4a75c 100644
--- a/usr.bin/leave/leave.c
+++ b/usr.bin/leave/leave.c
@@ -63,6 +63,7 @@ main(int argc, char **argv)
 	if (setlocale(LC_TIME, "") == NULL)
 		warn("setlocale");
 
+	caph_cache_tzdata();
 	caph_cache_catpages();
 	if (caph_limit_stdio() < 0 || caph_enter() < 0)
 		err(EXIT_FAILURE, "capsicum");

From nobody Wed Nov 27 14:24:33 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1st2Ljfz5fGkH;
	Wed, 27 Nov 2024 14:24:34 +0000 (UTC)
	(envelope-from jhibbits@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1st1NQ0z4Y1x;
	Wed, 27 Nov 2024 14:24:34 +0000 (UTC)
	(envelope-from jhibbits@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717474;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=pFMSCjU/Oo1Mt6IZiB2rGKlGEYzpLE4xosPhAZ87+PA=;
	b=o7eOtSNzXyaHyat1bIOKQ3kOdSX90X3INnJcEi4fSOEApxIBLBC8E2ipGkG1chFlCOTv3P
	CCVeBGQPi7QD4z2tjYThCDgfj3S4unvNgv0MQGVHQuMwedYXj8U0090i3ap2D6GaubSJYR
	cASA5gZK5PtFRTjwgErJ1wCOtuZ1mEpU+CaEKC7oF+/HU2WkLIVPOrWUkgN+lAb5tL5S8U
	bev0smeTxEAhjzmJum1VRPTImweiND6khyPxioUGJukA2GqSe6EXeUml9CCilV563SNxFC
	AgimfZ0WXRiKJfcf7/oNRaRsX+huN25EwLADhjFkzbdJel8UgThcVdFuIgg5Lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717474;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=pFMSCjU/Oo1Mt6IZiB2rGKlGEYzpLE4xosPhAZ87+PA=;
	b=WoR+DjSBIDE6OLcCcf6pcXdGn/tJgGf5xoLG1i/EQJ7rlE55t3sh6KSBuP+2KE8JskNEGB
	nbNyxB6GeS2UOeBVyrtQb83XDmbJv6lBydIOx2qNCAS6tmOY2x5Zkal2sIHKbix8Yi6/PJ
	zIJgDmCYz08Ake0UYiCxyd3HfxfeJy4LSqgSyE1BVQafE6ojBG8CcWAQDV+JX/8bMJPiU7
	wlMpWAdCsxWCUMC2Yloc3vB8xzsB7moMsHdC5b/1jEZwxRfeP37y0vP93KO88lsn5FD8EK
	qmGdBS0CdPdLr4LZ89IcWy6iXAT2p6/2VpulBwnk3CyiRP7rEBvxx/3kZ1wESA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717474; a=rsa-sha256; cv=none;
	b=Jt1hjdLrsve3lv/Ohs/9mHPrltj6BxTduOIquJcatUEWnYqsfndSW6b4Uq1wSB6AqCjspo
	2MFZHwk8+oVux7Kg9AKYzOpT6BRHEJBHYMb9du/8R8A2PQYRU8AVzRQ6zeSIsTs8b7Tv47
	WzMT8Jlt1V1PMaduXqujeK1DjA6zKs+HJfA6CBhh1wBAXucHV6Caw5dwIz+2Q6uP+0TQ9a
	MXQiIj726pPJXDxWox/1jDNh508oRIOaS8CKQZSJ6fARt+wEKOwXtSiOJ73Xg3mZ07SQRa
	NQ/N69Y33j1FgHoGtAFjFHM238zYpkMXauv6h3la0HhWB5/9JZ/mMOqVNJoHVQ==
Received: from ralga.knownspace (unknown [IPv6:2600:2b00:a720:d301:9f03:382a:d672:81f0])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	(Authenticated sender: jhibbits)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz1ss71ZQzDv8;
	Wed, 27 Nov 2024 14:24:33 +0000 (UTC)
	(envelope-from jhibbits@FreeBSD.org)
Date: Wed, 27 Nov 2024 09:24:33 -0500
From: Justin Hibbits <jhibbits@FreeBSD.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
 dev-commits-src-main@FreeBSD.org
Subject: Re: git: 09ef538713e0 - main - uart: Add primitive noise  filtering
 on RX
Message-ID: <20241127092433.56704700@ralga.knownspace>
In-Reply-To: <202411271417.4AREHTKe014440@gitrepo.freebsd.org>
References: <202411271417.4AREHTKe014440@gitrepo.freebsd.org>
X-Mailer: Claws Mail 4.3.0 (GTK 3.24.43; powerpc64le-unknown-linux-gnu)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Wed, 27 Nov 2024 14:17:29 GMT
Justin Hibbits <jhibbits@FreeBSD.org> wrote:

> The branch main has been updated by jhibbits:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=09ef538713e08a98584dbcf66ff80290cc1b41a2
> 
> commit 09ef538713e08a98584dbcf66ff80290cc1b41a2
> Author:     Justin Hibbits <jhibbits@FreeBSD.org>
> AuthorDate: 2024-11-20 17:08:26 +0000
> Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
> CommitDate: 2024-11-27 14:17:09 +0000
> 
>     uart: Add primitive noise filtering on RX
>     
>     A long cable attached to the UART can act as an antenna if
> disconnected from the other end.  This can cause noise on the receive
> side, possibly as reflections from the transmit side, leading to an
> interrupt storm. Filter this by adding a threshold of received
> characters without TX ready, above which characters are dropped.
> This is disabled by default, but has been tested with a threshold of
> 1000+.  A high threshold is recommended to avoid dropping characters
> during, for instance, a large copy/paste from the other end.
>     
>     Sponsored by:   Juniper Networks, Inc.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D47685

- Justin

From nobody Wed Nov 27 14:26:56 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1wc5wxWz5fGqB;
	Wed, 27 Nov 2024 14:26: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1wc5CNSz4YMk;
	Wed, 27 Nov 2024 14:26:56 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717616;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JZ9KzRuLtlj6wOwa96+kXZtF/p8NiUYHPxj+hsKnUjk=;
	b=MhTXKL6bEJ+I5BSwGoqqaUBsIbNJHxH22H8Ec37/TFOB78HduEcmzuwWiArmErBlWas9QO
	6iq0Ctu1WLZMC1cPZAQW6S57T04limETR+7KkmdxgVnpl1GOKSiUegQ3vD8/qOfZgghnxv
	yqjDq0UkqJzJBl/HH+819rfKOMtbICKBsN6cf8ptFm76T/lnIqIvfmCrKLGg2SWMQUzIfa
	W3G9bidfW9Dsh7G7ea2ngvOxTHq1qH/wIfZ33dGPmnkrs6d98TqqKtERebVIzVrPeE55mQ
	Ad5zRgKsK3UyR8I956MAUuC4cUY48s1nNWvW4BEj00NfQ9ETFgSLUYUnChtHeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717616;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JZ9KzRuLtlj6wOwa96+kXZtF/p8NiUYHPxj+hsKnUjk=;
	b=ZSh245IjngBfoDqHVRW7E5B7MhpiQcOjF33B/zyipHuHVimRzKi3Wo+aTGfXWpdGfSk3Iz
	xxm64rwUoOE3u0IdJLDuCzCENpbRhMegzeuAD+xOWEvjfxCNq1AmlCcuXgTq6ZLGw3gFlR
	T8rV1wYKN8+kKv4F2SOJMmC1FjdyABqAhsFyDwjh2yG2sE459CQb6F8PEXAbX6sJEB3jtp
	HojkAkHOyz0RREgF4rWJuTcC27D0UycPChy/6wZ65SQ6wmSAv5etjONZ0895Tg+OhKRA/s
	uabBFX72Ui2s+NoV7gs2z0n5mfo1W4IV3RgL+FBkemwWozo3MQz1pYm+c25Hwg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717616; a=rsa-sha256; cv=none;
	b=Ni67F+pLqpXuqVf3M1IkU/HVJQmZaDogxo0/ycOMUMMXthWnvTpjl5KcP81yZpnMNtcWbe
	BQmg9yKE2q/DKQ1rJDkeOZMyE7btNYZ1OjAlAr7cevVcSAbAHQhrsIoI/W4R9FqNQKx+2/
	Ma74AnW2m57CUPz/If0rOlV2Q2QYhmo4FluG9B6SLzzmGChkDLbwVjR0qgb3CBvaC7ehYB
	Vn9WkEh2OMf2AFbs8Aj77zrqPkFzxf7S25Yp2nK6vJuE2P4xI4nxXLZPvpf9J2jxXoiLG0
	g/G9fKEXz38j+6etCvlGtI0YZpwkDbKNS4bvaZX0+jqAeJWbZ6Pw4kojmwhTjQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1wc4kQNz1D03;
	Wed, 27 Nov 2024 14:26: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 4AREQuTN033301;
	Wed, 27 Nov 2024 14:26:56 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREQuZv033298;
	Wed, 27 Nov 2024 14:26:56 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:26:56 GMT
Message-Id: <202411271426.4AREQuZv033298@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 4dd6597a56f8 - main - perror(1): Replace magic exit
  codes with standard macros
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4dd6597a56f8c7ff03d4f451b612a9e45442c549
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=4dd6597a56f8c7ff03d4f451b612a9e45442c549

commit 4dd6597a56f8c7ff03d4f451b612a9e45442c549
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-26 18:21:20 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:26:51 +0000

    perror(1): Replace magic exit codes with standard macros
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    markj, oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1492
---
 usr.bin/perror/perror.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/usr.bin/perror/perror.c b/usr.bin/perror/perror.c
index 2ef65adf56e2..e2453edc4577 100644
--- a/usr.bin/perror/perror.c
+++ b/usr.bin/perror/perror.c
@@ -53,20 +53,20 @@ main(int argc, char **argv)
 	errnum = strtol(argv[1], &cp, 0);
 
 	if (errno != 0)
-		err(1, NULL);
+		err(EXIT_FAILURE, NULL);
 
 	if ((errstr = strerror(errnum)) == NULL) 
-		err(1, NULL);
+		err(EXIT_FAILURE, NULL);
 
 	printf("%s\n", errstr);
 
-	exit(0);
+	exit(EXIT_SUCCESS);
 }
 
 static void 
 usage(void)
 {
 	fprintf(stderr, "usage: perror number\n");
-	exit(1);
+	exit(EXIT_FAILURE);
 }
 

From nobody Wed Nov 27 14:26:57 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1wf1PmPz5fH7N;
	Wed, 27 Nov 2024 14:26: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1wd6Qbmz4YKJ;
	Wed, 27 Nov 2024 14:26:57 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717617;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yc0agRISC5RYa4BC8wy+S6MenmI1w3TTnlodGwdZ/Po=;
	b=CqiyzT2HYP9Ac0J4OTiKKT88nKrNubJOCm+aM778gsxZCB4UKmLg+BiH+et9bWDbZhOFjX
	a3lJataSxcd1p+/qX3VlmNTGbK9mt/b6vcvTkBc2Xh8BT2eTqh1D5jk/LjLXI9VlhlCW6b
	hgSrKO9XxMmTMLnfYXnKByV4aS5F/XxrbUwZ516/e2b1Rlg2Nl5NEyI2H3A1tatRk3KH/i
	UIwNPIqy+KsUWYasrjQ4hEJvtxA0vM+CqdI8jbpf8isBU2HkJMJrWCczyXhrjaWs4ADkNZ
	8fhHHhhDXEZTYTz40wbpp+GNpePy7urwmSP0TYBLVfIom4FLzyKvb2VHZDNCAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717617;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yc0agRISC5RYa4BC8wy+S6MenmI1w3TTnlodGwdZ/Po=;
	b=u9W7JfuGHaeXAHCJh/JTzXApFgEyq5XGV+ZAINzfUd57akHJHI3T1j2XGrUTku91/qsdri
	AwOuaq2Lq3mx1DwqXaH10gqD4GvwIgfwVB6vad6zW8v+Vj3IiKbqBZBBn7NLak3XOqIeWx
	wWDae/Y9hri5sZt1O1GmEZOc2+jsVsGmDIlj8QurIxKFy0YjlquTlgpxp/zzvhkkHvmxvY
	tg32R7Ez7YKw+cuUfS3Phu4MO4TYtMlqhgYevkB3MsJc3Zxjhus3ecmoWsiRlxOSg7C7zf
	3mhY8Zq8/cj3hWyty0pEfTiZr1JpNMd9TCfhjU1tdLOefS/bkLd6jk0S5Mjsjg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717617; a=rsa-sha256; cv=none;
	b=ammBeQpUuaT70YnuX2vl4oZbfGuhOES3+BMig9kEnFVil58+8+wE/IVVSp+Oh7bsF3XezV
	hYOKLt4D90Inv86UXQZcay977VDuJTkiOQZ21UDG1Ratb0kWDJv4CWSXQuMyUtsz+atDf5
	dAlaFXHF59NGwH/AXSlWHdvM2XuSZ1Gtsc6q7HRqRyMQ6QrSq+7ZkIvAu0XYqRwtxqGenK
	yZE6czrJ5tywgDVWaEEw4fSC0hOdDWB3BHhU/OJ1vACVijG1P1WdCSlv1GshK4jy5p8PoD
	7rwdxSMYoR+YLJdnUy3ol9gKsv5HvvVFf8gEaiUjrRS78cizVz5W+jp2vfZPjg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1wd61qlz1CRd;
	Wed, 27 Nov 2024 14:26: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 4AREQvxb033353;
	Wed, 27 Nov 2024 14:26:57 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREQvnO033350;
	Wed, 27 Nov 2024 14:26:57 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:26:57 GMT
Message-Id: <202411271426.4AREQvnO033350@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 82e9f8c2d19b - main - perror(1): Reorder headers
  alphabetically to meet style(9) compliance
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 82e9f8c2d19ba5d132438a764352eb3b4826fc58
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=82e9f8c2d19ba5d132438a764352eb3b4826fc58

commit 82e9f8c2d19ba5d132438a764352eb3b4826fc58
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-26 18:34:07 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:26:51 +0000

    perror(1): Reorder headers alphabetically to meet style(9) compliance
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    markj, oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1492
---
 usr.bin/perror/perror.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/usr.bin/perror/perror.c b/usr.bin/perror/perror.c
index e2453edc4577..9b7eda8d9f70 100644
--- a/usr.bin/perror/perror.c
+++ b/usr.bin/perror/perror.c
@@ -28,12 +28,13 @@
  */
 
 #include <sys/cdefs.h>
+#include <sys/errno.h>
+
+#include <err.h>
+#include <locale.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <err.h>
-#include <locale.h>
-#include <sys/errno.h>
 
 static void usage(void) __dead2;
 

From nobody Wed Nov 27 14:26:58 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1wg1qrKz5fH4n;
	Wed, 27 Nov 2024 14:26: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1wg0MHHz4Y84;
	Wed, 27 Nov 2024 14:26:59 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717619;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=E2yiNHdd8Eh69bg6/OQZfAHh0xGtUBV3td+nt54I7mo=;
	b=db24t6SCAVNVG+yohrZEeeOGSj4+ojebTZ3PDxE1KM7p+GwXrmVTBXRGRf0g4UNILLGpOt
	/lZCzpCWyuymdYfuHFS5bYKlmXCkx/ci9pcAXDjNW6HB49AGTNKGPx9IC7JGk8T23MaEFC
	aGBHNAHg2cVQA2KgkVQzNMU5FIZEiBGqisR+OtSwX0SDHEnxVoh34ZPBXtdJnTLQr0SFHP
	0QJTdN6mkEcoMWrFAoq70Ygl+K1WTPrjS4l+VHHNyQybbG+yAqHQqL/gahmAyVYQU7r4ac
	9g6iP0OhpCb6+Hl/1nj2uvz7WRk4M+HxTVsVMo2Q1WjVL91fh6FOFE1SW3mGfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717619;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=E2yiNHdd8Eh69bg6/OQZfAHh0xGtUBV3td+nt54I7mo=;
	b=oBgrtKYPnmpx49e5GsubRbkFdfDi2K5ItO+sn1Ih+USUUNfPwKuWfbZU3sxJMqVCWA1REq
	+sF3+zs4ABySZp2m4J0XQWFYMWE9I49jLVad6+tAzzc/c0K8SZrdJAC2IYlwVwA3DeM2uH
	ejDAj38PnAVGZkdMHeM/1hRQ934D8mjaYC2maBb9l2gcVvl5heGThd1xQj1rcaMVzTxM6Q
	/IghJy3CeBSkcRe8AEAqg5ElGOr8OSeSq0Y+rTu5fFIp7BcpkYT9Jiz6E8VOAGkkYWv8tO
	K+QmZusbN2CjIUzsgCIZSoJtQsfUJT8s/JNpRaIQF7L842Q8WwVCgS40ZBp06Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717619; a=rsa-sha256; cv=none;
	b=A6Ys5DYcl3O/WFyjtvbWr4+uJ9pzZUdbLza2nzvXk79hi+TxxMkTl8j2jgpHe48fqwEqyI
	yvruWcnqjQ5sYTjyA4AxCOjXbzKSdmpe+/NzemE8GFBLgynQwRCVMk3iGUr59be9z5HAgA
	sDkZmLcrC56fkTNGIjHLkjUruD+27YahguQkfTq/jRHjxd21gcAEz6h3hMgNrXQ+dVO+Ef
	8SeypxeQrqJsKypJbhI5gKvvqmMwgvOu7SeIOOn3ImfSWTVRD+KbO8gPJPkslOHb/4PM0I
	NCI03L+xXudPtTHE+7qo8v1X8wP8WSbUvLMPWCRlk37QnRErKm5+sGzPnA4HXg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1wf75TGz1CRf;
	Wed, 27 Nov 2024 14:26: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 4AREQw0O033392;
	Wed, 27 Nov 2024 14:26:58 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREQwen033389;
	Wed, 27 Nov 2024 14:26:58 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:26:58 GMT
Message-Id: <202411271426.4AREQwen033389@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: adc02d5e3cfa - main - perror(1): Capsicumise
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: adc02d5e3cfad9c9d7e12f776cad651795d9ad78
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=adc02d5e3cfad9c9d7e12f776cad651795d9ad78

commit adc02d5e3cfad9c9d7e12f776cad651795d9ad78
Author:     Faraz Vahedi <kfv@kfv.io>
AuthorDate: 2024-10-26 18:38:08 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:26:51 +0000

    perror(1): Capsicumise
    
    Signed-off-by: Faraz Vahedi <kfv@kfv.io>
    Reviewed by:    markj, oshogbo
    MFC after:      1 week
    Pull Request:   https://github.com/freebsd/freebsd-src/pull/1492
---
 usr.bin/perror/perror.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/usr.bin/perror/perror.c b/usr.bin/perror/perror.c
index 9b7eda8d9f70..6341928e9024 100644
--- a/usr.bin/perror/perror.c
+++ b/usr.bin/perror/perror.c
@@ -36,6 +36,8 @@
 #include <stdlib.h>
 #include <string.h>
 
+#include <capsicum_helpers.h>
+
 static void usage(void) __dead2;
 
 int 
@@ -46,6 +48,11 @@ main(int argc, char **argv)
 	long errnum;
 
 	(void) setlocale(LC_MESSAGES, "");
+
+	caph_cache_catpages();
+	if (caph_limit_stdio() < 0 || caph_enter() < 0)
+		err(EXIT_FAILURE, "capsicum");
+
 	if (argc != 2)
 		usage();
 

From nobody Wed Nov 27 14:27:00 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz1wh48HQz5fHFR;
	Wed, 27 Nov 2024 14:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz1wh1W6hz4YRc;
	Wed, 27 Nov 2024 14:27:00 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717620;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=fc719ylna8S+d+52O+oJn+F+rDJF1pKmhyVa15VUo0M=;
	b=oheXMAbs7S9gHOxs37U18itbKPw7NdezX/Wu0+2gYq2Do2VCLmj59b/SRqX0n0tOqqox3J
	nLMIHpiLS/FhJmYvz5Jqq8mmpV+nNRS0oAPGja6Uq260NlGeydpeK6lGEC6I98VjYFfSTq
	9p9RWngkzRxpWr5eSfAOeZ8tA7C9pE0+auJS00CCwyvZNqKHpVx5UqOVc4Jtb/ClLJbwPW
	Q+bHC2khwo/In1Y+agchj1mcIfHH8AVnfvuxASZZgucUBBur5S3uEv0ML+869MGVH3eT24
	Ty3j9ygmZvmP2Okckw+0hJCOULheeqwQ3+LKuquVPrM9S7n4e3rz7PZJX6SSnA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717620;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=fc719ylna8S+d+52O+oJn+F+rDJF1pKmhyVa15VUo0M=;
	b=TI9+Zmg7YEfMz74DRshbzpSGyCqoRcLYlYxreKP5Z0GTZfRn2QtiHYHcdHXBo/9VlwDgPA
	e2w8wNAQbPl6WJRj6Ed9J1vPy21b+4aSgRvbeBFN+1jPf7DNJ9WB9C8DijcfHBnJaxUouZ
	I8CMFz1I/QCZF7MUlOKWAIQXSatSnI7n2p4VH2+10Sof0VbrRnjtI5M6oX+JnBe1vgjxDl
	MZ55QUROqIT7437X5HmjnyM9RQlazMnpmsqgUdkhuKKUusZxTn+4wCabFpaJWdPUAU5E9w
	nBY2WOnWEPfRmIvvWcDWt9/mOLiDIrXALUtp9nRUiVwudYVvRRSCfJ+yRiyAew==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717620; a=rsa-sha256; cv=none;
	b=t+Cz5GyUk8RVe6AI5y3O51GJVaE6IMTPh7vcw7Plqq3hladu6hLWURthzbpdTlgZRrKftz
	9tNhODCOU/5pOPU7wSxEaoHFgCKThGvAr9969z84QdhSntODccOCh8ps8uad2m6XL+AiMU
	CBAVu9bzASrJ/dHTgOsBkYAa/EX8Z8Adpc0KD9K4sU37CDjWv9fwElMMJGdiaL6f3Of+pq
	wXgpqlPp12tmQusnIrCegAx+oVNmckKBPy0mHr11ZmESM752KGwSikmIqYhNMDP6u+tAEP
	6iC6+Pd29Y0YW83paQISQXeVjtaf5oW2FVXUkJmIu4YBrTt0SORA19KzDdyhng==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz1wh0syQz1D04;
	Wed, 27 Nov 2024 14:27: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 4ARER0TD033446;
	Wed, 27 Nov 2024 14:27:00 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARER0VT033439;
	Wed, 27 Nov 2024 14:27:00 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:27:00 GMT
Message-Id: <202411271427.4ARER0VT033439@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mariusz Zaborski <oshogbo@FreeBSD.org>
Subject: git: 0963af50e96d - main - perror: style nits
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: oshogbo
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 0963af50e96d9c8e93041e9faf281c895bb53dbe
Auto-Submitted: auto-generated

The branch main has been updated by oshogbo:

URL: https://cgit.FreeBSD.org/src/commit/?id=0963af50e96d9c8e93041e9faf281c895bb53dbe

commit 0963af50e96d9c8e93041e9faf281c895bb53dbe
Author:     Mariusz Zaborski <oshogbo@FreeBSD.org>
AuthorDate: 2024-11-27 14:22:55 +0000
Commit:     Mariusz Zaborski <oshogbo@FreeBSD.org>
CommitDate: 2024-11-27 14:26:51 +0000

    perror: style nits
---
 usr.bin/perror/perror.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/usr.bin/perror/perror.c b/usr.bin/perror/perror.c
index 6341928e9024..4ef77aefdd31 100644
--- a/usr.bin/perror/perror.c
+++ b/usr.bin/perror/perror.c
@@ -40,7 +40,7 @@
 
 static void usage(void) __dead2;
 
-int 
+int
 main(int argc, char **argv)
 {
 	char *cp;
@@ -63,7 +63,7 @@ main(int argc, char **argv)
 	if (errno != 0)
 		err(EXIT_FAILURE, NULL);
 
-	if ((errstr = strerror(errnum)) == NULL) 
+	if ((errstr = strerror(errnum)) == NULL)
 		err(EXIT_FAILURE, NULL);
 
 	printf("%s\n", errstr);
@@ -71,7 +71,7 @@ main(int argc, char **argv)
 	exit(EXIT_SUCCESS);
 }
 
-static void 
+static void
 usage(void)
 {
 	fprintf(stderr, "usage: perror number\n");

From nobody Wed Nov 27 14:31:27 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz21q5FRsz5fHDk;
	Wed, 27 Nov 2024 14:31: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz21q4fJ4z4ZQX;
	Wed, 27 Nov 2024 14:31:27 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732717887;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=m3zypDxVtDTTKjxTdiUJ9GaEwCd2RyJHHLAWAabtLHc=;
	b=DKEhGZdO8PLChV3pBhsGSeXsIv/+bek29f/hqdMtkrXuRz7EgoqwYzEN8NZK3LXCZTjqK1
	tvnGNo/Z/ksLEKVIUNW2wRy1Uy54OrIM92d3yJAhaKttq3AeXqStvfDYqbYS3HYmLpbtHe
	ZcPvnInxcKCyDEXJCEky4o1o2qptdsoDOblSzcOncvMO8iY/nMWk3lt+GkSphm6Pxjz+zk
	pcAvKqdm3RE0qQlckfC2M4Id+GY4yD1nkQRoCIzscMOnPNHQMtNJzdjKKxVAilGjDetiup
	ITOsCr04SIeoCyzZ4uQ4vQvL7IbLiGInfqVELBl2CNJHiCO5TsHj7pqIoE0qRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732717887;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=m3zypDxVtDTTKjxTdiUJ9GaEwCd2RyJHHLAWAabtLHc=;
	b=CFDakgcVUhM3uEwv8QHCxj9ZntrBZwZSN+qtkzQ0i4mtzdWgykq6E3f9t0NZmGEQmekb04
	jz+GlL6f6l3fPFztx8tBfmhd9ME85n9/fmdpmh6/Y8Z8Rue1y7vRVsJBF0gkCzcAntu5ra
	7weMDnot3OILvcpk6dBsIDa3V7/vRq9CQXJ4+BJazB42VdL4lShwWI2kp0DEpXKUYRuW6u
	KNMfZGR+SpSOR8Y0fwSWyYNMR5mryhKJ60gN7D9gvWcXsnAulHedhHnh/BiMypVmA2bR/R
	AjIENiuiC2daAIhcansMoKaZLGuE9/e8padQ7w1LMDCEUAW++yuv/asNiwVzug==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732717887; a=rsa-sha256; cv=none;
	b=GhbUvIMIkyzU4wLxGeB+tpsTUPSHOlZLXxU+QkG/phKWpJUz8odS2nqC2kzgl+s+82N9zw
	zS7aiGe5EBjaKG8lM2Ygo49aDMYlB9Ffcp6pOHGWW7HJ953Zee/qUXJ4XD8WYkUCmQe8V/
	7gDJnkSOMfrsWvY3zv0BBrj+wtqRDnjtdjQd7Knfq5/+UrnR3QxEJzQRLKzn+HwGU6Q6be
	JHRe3hseSkv9RgPxy7z6kOh6gSfhlibC5prZlgXR98wPYa3LyafMH1cbLN/ObLuNnquoUc
	RICI+nxWfgPzIHun+jHDsAyj5hxVbT22NaUuYj9XQYdJwHNiJdp7b/JBiZM7Uw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz21q4Fkkz1Cn5;
	Wed, 27 Nov 2024 14:31: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 4AREVROp047406;
	Wed, 27 Nov 2024 14:31:27 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AREVRbs047403;
	Wed, 27 Nov 2024 14:31:27 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 14:31:27 GMT
Message-Id: <202411271431.4AREVRbs047403@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 45d108ee147c - main - pf_route6(): one more __sdt_used
  annotation
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 45d108ee147cc8776a659578da585b31a0ba5643
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=45d108ee147cc8776a659578da585b31a0ba5643

commit 45d108ee147cc8776a659578da585b31a0ba5643
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-27 14:26:53 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-27 14:30:52 +0000

    pf_route6(): one more __sdt_used annotation
    
    Sponsored by:   The FreeBSD Foundation
---
 sys/netpfil/pf/pf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index fdec1cecb350..f6bd1b93ca1b 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -8090,7 +8090,7 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp,
 		dst.sin6_addr.s6_addr16[1] = htons(ifp->if_index);
 	mtag = m_tag_find(m0, PACKET_TAG_PF_REASSEMBLED, NULL);
 	if (mtag != NULL) {
-		int ret;
+		int ret __sdt_used;
 		ret = pf_refragment6(ifp, &m0, mtag, ifp, true);
 		SDT_PROBE2(pf, ip6, route_to, output, ifp, ret);
 		goto done;

From nobody Wed Nov 27 15:10:21 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz2tn4Cvrz5fLCM;
	Wed, 27 Nov 2024 15:10:25 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz2tn3bQ2z4dMb;
	Wed, 27 Nov 2024 15:10:25 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732720225;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=9aEngmWFtXYXxJuI56xn+owqP0muBVB/vj42WSFeQ04=;
	b=t0ij0fJtE6PS1LXEe9gFJUxMq668KktNgmsc0ms5xlPSRKbZ3d3xoU3QgY1y+XzlmdJoag
	gqxqv2YtF5v9YUSwNhRlOqc3BManUgKtlS3GwWuJBc+TUs8m0lW36dI2u/dYIHqqdMf1nD
	ACa+XaEjTpvLY4+ESweypwP9R9y4AzCcmCcGq/PWzmSUlSjglozzQjDxLLTgb4e4z/1zPR
	msX9oto1ZvjKDOXnck7vZrQd7ujCmNNRlIsvS2JGX0lwmn5ZGfo7J2pqkOI32HznzT5wxw
	UH8fgjXOcqlHzOAI2LS4g+l6AkF4GvL4ubsZsB2hE5/h20+ZBvD742cwp87bBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732720225;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=9aEngmWFtXYXxJuI56xn+owqP0muBVB/vj42WSFeQ04=;
	b=xhaTi8Y1wJ2oPQ2NF7QeVTfTwhFFo6w1cAIzmIFyuwXKMIeRHntui14wH+nIRRGAtCOdw0
	T2ypdIzB7cR/XvLMJEtD5pwEdzSv8se3OE73sWP6q3TYQilBvMgZjLqANVrlhicfr2p/dc
	7FLz23igH9Jx5TYh3QgESfkW5kTTO6rE/vhHUg3POmwBCXWZ5oZ0kgnN/1wu30UvIizKof
	kSHUt+7ak4+lPSt+ERtDTdWiZ7ww/Li9bjhBAxZHQZG9Oz2m4N+blnHGR84Dtew10dBupE
	/cFBBl18UPFWraiCxN05U051xa1ZGF64T/yRsP3KFU4gGCRfRHiHkkapiFtk8w==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732720225; a=rsa-sha256; cv=none;
	b=SpCr6nUU/wCQQ5WWA00xL5lUlpdJMqPo5pgHZeS0lY+44+I/Mgl3s4BH2EIitBNIPvYTEc
	5z0nyHrMdUqlxT+iOm68XuX9a66iorcwod9sw3IkEo85H7+b02l2gNu63zkmLR0yG/teUK
	Ghrglqf+HxUFKV1bWwH4+R4L3S3qQZ2CGP8hoQbDN++hiJWa9TBgCphR7MGWO1F7bOXHBc
	OM45Cx07YzD8YTTgPug0SV+Hgyd3cEVYdLols+cYCISPRwufVpw7MqPTxI5Ev8l23KmgG2
	2cyjmqfBe6YJMGZFAzQ+6NBLHAhfub+Mrn2InaxPRsb7Zp1eSz8oZWNYNm57Mg==
Received: from venus.codepro.be (venus.codepro.be [5.9.86.228])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "mx1.codepro.be", Issuer "R11" (verified OK))
	(Authenticated sender: kp)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz2tn2PRBzFvF;
	Wed, 27 Nov 2024 15:10:25 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
Received: by venus.codepro.be (Postfix, authenticated sender kp)
 id 08EB31C7FC;
	Wed, 27 Nov 2024 16:10:21 +0100 (CET)
From: Kristof Provost <kp@FreeBSD.org>
To: Konstantin Belousov <kib@FreeBSD.org>
Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
 dev-commits-src-main@FreeBSD.org
Subject: Re: git: 45d108ee147c - main - pf_route6(): one more __sdt_used
  annotation
Date: Wed, 27 Nov 2024 16:10:21 +0100
X-Mailer: MailMate (1.14r5937)
Message-ID: <5F91DA38-12C0-412C-9430-7632A0BBB763@FreeBSD.org>
In-Reply-To: <202411271431.4AREVRbs047403@gitrepo.freebsd.org>
References: <202411271431.4AREVRbs047403@gitrepo.freebsd.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On 27 Nov 2024, at 15:31, Konstantin Belousov wrote:
> The branch main has been updated by kib:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=3D45d108ee147cc8776a659578=
da585b31a0ba5643
>
> commit 45d108ee147cc8776a659578da585b31a0ba5643
> Author:     Konstantin Belousov <kib@FreeBSD.org>
> AuthorDate: 2024-11-27 14:26:53 +0000
> Commit:     Konstantin Belousov <kib@FreeBSD.org>
> CommitDate: 2024-11-27 14:30:52 +0000
>
>     pf_route6(): one more __sdt_used annotation

Thanks!

I thought I=E2=80=99d fixed that when you reported the initial problem, b=
ut clearly I missed one.

I wonder if we shouldn=E2=80=99t remove options KDTRACE_HOOKS from at lea=
st one kernel config to improve the odds of catching mistakes like this o=
ne pre-commit.
=46rom MINIMAL maybe?

Best regards,
Kristof

From nobody Wed Nov 27 15:12:02 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz2wh4hzHz5fL7P;
	Wed, 27 Nov 2024 15:12:04 +0000 (UTC)
	(envelope-from jhb@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz2wg6Fp1z4f0Y;
	Wed, 27 Nov 2024 15:12:03 +0000 (UTC)
	(envelope-from jhb@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732720323;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=vIC9FeSLMtVXs3s2A4UYaD+4IGYjjgs2/Pkq59Ga9ZQ=;
	b=jyFGzlZQUZqaZ+3x4+2AQ3KB3vwXFfdCXr2TOXCV6dtqmjyoPW612VNAfM13HhVOTuK7XQ
	bYhVF3Pp4rSFiJwctP90+8Eigr2aBKygL1HTIomGcupcqftCPemKlN8ESDtpmtkBdEy4oO
	fR9L+deO/W+iq5dyHpOCQd1rJsJVV6hp3tO5EFAQxBBfz4L1jbmQgDzl0nE4qNO3S6ksA6
	fxCo+KqvqYGDGQNHUrcu2axcplBIt1kvgVllJ8DmhhpidP1DjFJPh8iFKlJ2q3cR4RMKlx
	Z+PjeDmwiP1ENFIGdHDKgm9YUb7mA+wEIhd1wQL6C7SOQN/zaoMGo7VtrHkyqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732720323;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=vIC9FeSLMtVXs3s2A4UYaD+4IGYjjgs2/Pkq59Ga9ZQ=;
	b=eoNQeo/pGUGn96fFqscv3eN79udB+gLD8x/f3kK125Ysa4U+Apf7ufP2hCFp+/+rxIpRgQ
	DmaDmQu4BbowHISpwLzTZVYgkCf40VOI3JPIAypJ8U9Hyuv543urLrAq0tHVG+xm+QNTH9
	hNeoNukI5h3yUWr6Fpr7rEn3C61g76ggw/pSPbvvmbRtZecQ82ouRtvSmy5zrz/JgLtP3P
	WvXFUGBTyJOslRxq/o4b/imE4ThAwU6CSfcOV1UfAYyok+MiGPRqaizvo9nAzwuNW4nXPS
	vzlNmgxsKiyH3DR2pfwW/IyxVbfjZEu1I7Os3seIy+Tuu5dTd2bgXcquqlMkLQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732720323; a=rsa-sha256; cv=none;
	b=Ni51WK9dUkZnsLUPEoy4F3TsTy4NbGbeUo2edskNdW4KmsCyP8IV4Hn2eAO4Bfo72m1bmo
	PnX45zHWLZXnCGF9m2E3WLvBpmlr4lAlmCiHaEATMoqgNwFjLEqcCmmQpedI6S8dYsP+UZ
	75nPHfBASW/NLnCc1izhn8Nk+mhlx/yyLJKdUD3Oo+Jtl1IV/io6YW1CWkJXQ4a/fEvzeR
	C7dWRuHxbH38GgCRvOX0nqFAGH45qhog4uoQes89Dcz5OuHG8EGBtkwxJjBXxRiSamOmxz
	n61OxROFkmt+OGa45nA++qhdDmRk1OLNaFvcUfHteajrhdR/xB4Gq0m3G7i7bw==
Received: from [IPV6:2601:5c0:4200:b830:b1e3:c08e:70c4:74aa] (unknown [IPv6:2601:5c0:4200:b830:b1e3:c08e:70c4:74aa])
	(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: jhb)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz2wg4fWZzH0v;
	Wed, 27 Nov 2024 15:12:03 +0000 (UTC)
	(envelope-from jhb@FreeBSD.org)
Message-ID: <4234bd4a-29a0-4f95-bebb-d745c101cd25@FreeBSD.org>
Date: Wed, 27 Nov 2024 10:12:02 -0500
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
Content-Language: en-US
To: Christos Margiolis <christos@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
 dev-commits-src-main@freebsd.org
References: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
 <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>
 <vvqbxb25dikutghe4pknggpu2mely3syk44sfbk4zpweymzvuz@pia6d26v6a2t>
From: John Baldwin <jhb@FreeBSD.org>
In-Reply-To: <vvqbxb25dikutghe4pknggpu2mely3syk44sfbk4zpweymzvuz@pia6d26v6a2t>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 11/26/24 12:17, Christos Margiolis wrote:
> John Baldwin wrote:
>> On 11/26/24 06:48, Christos Margiolis wrote:
>>> The branch main has been updated by christos:
>>>
>>> URL: https://cgit.FreeBSD.org/src/commit/?id=5317480967bfc8bf678e4da3fce81bcb3f5b7836
>>> [...]
>>>    				"\004TRIGGERED"				\
>>> +				/* \006 */				\
>>>    				"\005NOTRIGGER"				\
>>> -				"\006SLEEPING"				\
>>>    				"\007NBIO"				\
>>
>> Hmm, new comment is mis-sorted?
> 
> Yes. Oops.
> 
>>> [...]
>>> +			if (ch->intr_cv.cv_waiters == 0 && CHN_STOPPED(ch) &&
>>> +			    ch->inprog == 0) {
>>
>> I'm not super excited about reading cv_waiters directly.  Generally speaking
>> 'struct cv' is opaque to the rest of the kernel.  Maybe add a little inline
>> routine or macro cv_waiters() that returns this value instead?  Then it can
>> be documented in condvar.9 along with the caveats about when it is safe to
>> use.
> 
> I see we already have cv_wmesg() in sys/sys/condvar.h to access
> cv_description. Maybe we could add a cv_waiters() macro in there as
> well?

Yes, that is where I would add it.

-- 
John Baldwin


From nobody Wed Nov 27 15:25:10 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz3DC6wv1z5fLvt;
	Wed, 27 Nov 2024 15:25:31 +0000 (UTC)
	(envelope-from kostikbel@gmail.com)
Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz3D83KMYz4gHT;
	Wed, 27 Nov 2024 15:25:28 +0000 (UTC)
	(envelope-from kostikbel@gmail.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: from tom.home (kib@localhost [127.0.0.1] (may be forged))
	by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 4ARFPAIf047497;
	Wed, 27 Nov 2024 17:25:13 +0200 (EET)
	(envelope-from kostikbel@gmail.com)
DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 4ARFPAIf047497
Received: (from kostik@localhost)
	by tom.home (8.18.1/8.18.1/Submit) id 4ARFPAfV047496;
	Wed, 27 Nov 2024 17:25:10 +0200 (EET)
	(envelope-from kostikbel@gmail.com)
X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f
Date: Wed, 27 Nov 2024 17:25:10 +0200
From: Konstantin Belousov <kostikbel@gmail.com>
To: Kristof Provost <kp@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
        dev-commits-src-main@freebsd.org
Subject: Re: git: 45d108ee147c - main - pf_route6(): one more __sdt_used
 annotation
Message-ID: <Z0c51p6MUxrKKaKg@kib.kiev.ua>
References: <202411271431.4AREVRbs047403@gitrepo.freebsd.org>
 <5F91DA38-12C0-412C-9430-7632A0BBB763@FreeBSD.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5F91DA38-12C0-412C-9430-7632A0BBB763@FreeBSD.org>
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00,
	DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM,
	NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.1
X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on tom.home
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]
X-Rspamd-Queue-Id: 4Xz3D83KMYz4gHT
X-Spamd-Bar: ----

On Wed, Nov 27, 2024 at 04:10:21PM +0100, Kristof Provost wrote:
> On 27 Nov 2024, at 15:31, Konstantin Belousov wrote:
> > The branch main has been updated by kib:
> >
> > URL: https://cgit.FreeBSD.org/src/commit/?id=45d108ee147cc8776a659578da585b31a0ba5643
> >
> > commit 45d108ee147cc8776a659578da585b31a0ba5643
> > Author:     Konstantin Belousov <kib@FreeBSD.org>
> > AuthorDate: 2024-11-27 14:26:53 +0000
> > Commit:     Konstantin Belousov <kib@FreeBSD.org>
> > CommitDate: 2024-11-27 14:30:52 +0000
> >
> >     pf_route6(): one more __sdt_used annotation
> 
> Thanks!
> 
> I thought I’d fixed that when you reported the initial problem, but clearly I missed one.
> 
> I wonder if we shouldn’t remove options KDTRACE_HOOKS from at least one kernel config to improve the odds of catching mistakes like this one pre-commit.
> >From MINIMAL maybe?

Perhaps it should be removed from LINT.
Initial idea around it was that LINT should complement options
in other kernels configs, I believe.

From nobody Wed Nov 27 15:33:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz3PT1s66z5fMpT;
	Wed, 27 Nov 2024 15:33:33 +0000 (UTC)
	(envelope-from avg@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz3PT1Lv3z4hdR;
	Wed, 27 Nov 2024 15:33:33 +0000 (UTC)
	(envelope-from avg@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732721613;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=QDG+SRGl8EQTb2GDUvd3K5TWpm4582BLdyxjiZy5C98=;
	b=Neq0NUoDdR4qgE2mRyhOMzYXYGNql+/aXJVVKLJoh9tjVQhpoF30+NbepYVTLng3QOOuwR
	sdwSzs9kgzWyYJ2wo7qmoj3abQNkiCEYdB5L1EsWNWtzZqhcqskb1NeRkdypSjjJsWrFAu
	hT/ioN+bzDLwMMQxphiGzB9xhy8wqnQLWF48O9V7G+tfTx8g/d/MoupBoCWlYnMlwa909g
	E1Mtwp6n+nIeewAktAiSffV114TKE0wSq5+bvW7UK98Xtw7GNi/8fR2qmArOsLXA6JuPzQ
	XkOwCYarNi1S12S1tX5T/IYsAjyfRBNfrj4fWNDL3DytFnB/r5+HLDuM2O6WAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732721613;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=QDG+SRGl8EQTb2GDUvd3K5TWpm4582BLdyxjiZy5C98=;
	b=H9sYjGuFT6LPrLpxgIYfb9SScfOlhwQO0DmkxH16i4JwUMB+qAmcWSis/OYiIO5/jIQ8pW
	fVPe3WSSs0dPPmd0Jm+K8DgSfPVw8EWuaLgIjJ42OysaRd7YpRsVU40xB21fMYl3pVPIb5
	EZB/cz+IS+u2gcw8pgB28y4U1nE5kTKgW4MJS76cvJJnAMUfuoZ/xsi+ELXC7avBggs6P2
	OPIpiO60Ko4xf+0tmqsFK4wp7O4gue8pWRYUYCch6jNHiPHbv1l3oX3talk/tHKjvE4AkM
	y/9WqRN+JtxBkWROa8X134e6kb2ptpryDqh1sqW/OwvPJ9pX/fUCsNIovG1FGQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732721613; a=rsa-sha256; cv=none;
	b=VPiwzP4e6/zSKU3qxppYJ/aNtqIby2IvbzwNaniRY+EZvAMJacE++FVtByAN2feFXews/5
	k+e7uMEwYfjp69Com0AGC83dYtFQi1EI+WHWVOMVTl7EBafYRqys5fOqr0GJd8YAe1wWhv
	Qc7VApeziRF00P5KjwcZdwcigb3dBfw/NpYruUcz0BemkABGkq6PXv7OKe109pLMhnUhgS
	CNz2hFoJ8YXtC5L9Wg5vF5BsLiOnRaK6yDLPr4Ti8w+i7W5A7IAuiZMijJQpAY0EllWmE8
	NWIx7ivHlrAQTXYNsXxWjHsirifbWsTsTVC3dZxt9wYH2OI6WyZyJDcSxOmCCg==
Received: from [192.168.0.88] (unknown [93.188.39.137])
	(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: avg/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz3PS2tLzzH9f;
	Wed, 27 Nov 2024 15:33:32 +0000 (UTC)
	(envelope-from avg@FreeBSD.org)
Message-ID: <c726294e-43e8-4ad8-8cf4-8357aab35b22@FreeBSD.org>
Date: Wed, 27 Nov 2024 17:33:29 +0200
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
To: John Baldwin <jhb@FreeBSD.org>, Christos Margiolis <christos@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
 dev-commits-src-main@freebsd.org
References: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
 <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>
 <vvqbxb25dikutghe4pknggpu2mely3syk44sfbk4zpweymzvuz@pia6d26v6a2t>
 <4234bd4a-29a0-4f95-bebb-d745c101cd25@FreeBSD.org>
Content-Language: en-US
From: Andriy Gapon <avg@FreeBSD.org>
Autocrypt: addr=avg@FreeBSD.org; keydata=
 xsDNBGcKrHEBDADRvwQOK0b/yo4ys5cs6bOQMhEh4xtfbaZ/CU00cpPgUip3sOZCdrtMWlRC
 g25z97prxE9pKueZi+HXDhIPpa9xl14ghqF4oYScuJ1i18HyiOH2y5Q3Vv/TtFiSzicd3EAu
 QgS3jVidpgDSPDdj2Yz3UxYpZ+PuFl6nOnvCvqOFcjUlzKCyPaiN2b86l1Nscmhnc+zQ/faB
 erUOEFEDQbWMA5YfXi8HrbeR16hfRfGt7E0aMDlIj9FIPIq71UWMN9CimPgs4+rbNr1MAlLa
 z4GxSDhVYZEY5rqtCzr+PLXboRQWnaUwXl0/biw9enf17NHdYv1SNAFTX2eC4dZ3qBVI74dS
 PgNprm+PMfz+6Hhs/dAv+Nan5nVhg3EFIjYTiy0MnjMSq8uI0v0ykpAGAcJJ5xl6d23aLxgN
 6f0z6pJRCO0hGPgU7UzvFD0MxJxmbzqdT1R51KDan1oD41b+tjl2LMBuCDCoB0U44Pu0zLdp
 xMfFTxCXtwIYKIUxwd28jwMAEQEAAc0eQW5kcml5IEdhcG9uIDxhdmdARnJlZUJTRC5vcmc+
 wsENBBMBCAA3FiEEmXvSmjiQFHPVOpLnzDOt5NLj67sFAmcKrHEFCQeEzgACGwMECwkIBwUV
 CAkKCwUWAgMBAAAKCRDMM63k0uPru5tSDACFK15LLbq89RSQ6QMnjiIm1t/wYJyumb519MHu
 Dhzxx1lbr8oghf0RHtF6kYRLQPaW2VdToi74pRobd3CN4bhZKDLSL6WfTn17RfavDjL6Njwp
 KBo30CkOeYKWq1mDmo0xEoQj8cc7ybEZnus+YScZOpj8Ti4EFwhRt6SHer7YDb161IHKL8m4
 MsCxpFSGEjbKj8Iul3Ri/fTOO8w14ivcuEEQIvJt4/+4YV5Az8G23wKzL/3aJ7SOT3oYGmR9
 atBTmVO3DlODjM+rZLegd8SfLSPTcBTHspWE5duemIzZbEX3BP77r3Qx4Fo5Tkit3bG1XVar
 yPQato+sFGFEGifdE9USBQoAoOaaeZevwAWjDU0TIuCT0CUe0sKtQuNP4LRq0n9EEHOXBu9a
 CfdMhFUSkAZnuE7miSVwgPvoVNJ1stA37EXLN/sVsWik7wslTQ5vF81VpdGFiwoQPOe2XEKh
 ogcwGSnXbwv1gD4x+Gz/7Y+kFyr1NY+4/nSaeXVcS2fOwM0EZwqscgEMAMQTe6ypAmQe/TFO
 HqKD2hfFKdksTptKi6uEh8xIwct8G/0FBldDWXo9eu8CGr/ZrDg0/bAwJxbaLRQCMH19Gq2Y
 hLvZ1QK5GQJVzZKcqfxbF2LiDUTs6WkdOBIhGpdDy7p1xFrvqCGCtNFYHuGYm067EozibBSF
 BWAPstKu2FQuVHZNMOfs7p3OIz3Yfqu9woXDeg3/8G2qVQJINe+8EwXKlhgh4CyDbq7nAZoA
 kIu1SE9z9u3WI5mcNy/0dFmVUsFxBqRC3ewbvzie8tKyZ9yFOlaZPT0Y4nRBXQTI3mLZ8zQ8
 mtrWK5OOmrJ02kdeO9RBXe+OMaUUWMf92ZIoBFb4HP6N+B+4N1y1OwULousfl7JRoYxA4MRL
 ls7E2sSoJvrEBTJB3Pc34xu8rsJ1A5V3NgN6djX8yEZYpTRkcmrBeWy/ofDqZPVqneAx0LRm
 eldDS9msXDW4KXODyPZ+9unvmHAcoH0xaBYaSH44CDZDQDg4LNcmbOvuu1TEXBJhjQARAQAB
 wsD8BBgBCAAmFiEEmXvSmjiQFHPVOpLnzDOt5NLj67sFAmcKrHMFCQeEzgACGwwACgkQzDOt
 5NLj67sUCAv5AXqgWnYN9EblapMbZjkiqL8pZQ0GNqh+Pg9FwbyULxjtRTO6rD4D0IxizByb
 ef+neeUNyYlagt5nfKMysEr0SU/gHKCi8vyTF/63ukMrGUNGmJJxrndl5ZYKC6j6eX7twrZF
 L1Uvlmn6FnQ22red5kHO93fDjG4zaDIZvHfwj7kzjZ4tpC7Byinf88s14mdZeScc0PnU2hj4
 UGYju/wg2FF4YxaZYhcmdTiRYY0Wx85XSMZv19pnn78sadEuRvfRd4JTmw++j1xGXeqQGWzz
 /CTG5/Ex9GAkQ02hZbmi236byDXoet4G8TEyOph9QFVkV9bNd0jQZaFZPGEj4PSPUYGAF7s5
 xJaNGgctC3aZ7WjEv1FBoo44XCU4xcjJ1wZQUrHxRhx6TW0Jtcl0U9qfKFW30TSPo6RyiXuj
 X4ltWKAtjoXB8nUmEJckaz7IRu2b4pXDeazZuz5JBygUs10yJjDxh2vFQZo0KaBAPx9MZlPn
 gpPTjT15L8xGftEjQXF6
In-Reply-To: <4234bd4a-29a0-4f95-bebb-d745c101cd25@FreeBSD.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 27/11/2024 17:12, John Baldwin wrote:
> On 11/26/24 12:17, Christos Margiolis wrote:
>> John Baldwin wrote:
>>> I'm not super excited about reading cv_waiters directly.  Generally speaking
>>> 'struct cv' is opaque to the rest of the kernel.  Maybe add a little inline
>>> routine or macro cv_waiters() that returns this value instead?  Then it can
>>> be documented in condvar.9 along with the caveats about when it is safe to
>>> use.
>>
>> I see we already have cv_wmesg() in sys/sys/condvar.h to access
>> cv_description. Maybe we could add a cv_waiters() macro in there as
>> well?
> 
> Yes, that is where I would add it.

Perhaps, cv_waiters should be left as an implementation detail and an explicit 
counter should be added in the sound driver code as a replacement for 
CHN_F_SLEEPING flag?  And for pre-existing checks of cv_waiters too.

That sounds a bit redundant but all code that needs to check if something is 
waiting does it that way.
cv_waiters is accessed only in kern_condvar.c, naturally, and in the sound driver.

-- 
Andriy Gapon

From nobody Wed Nov 27 15:33:42 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz3Pk6Z64z5fMs4;
	Wed, 27 Nov 2024 15:33:46 +0000 (UTC)
	(envelope-from christos@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz3Pk61Tnz4hqy;
	Wed, 27 Nov 2024 15:33:46 +0000 (UTC)
	(envelope-from christos@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732721626;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=EVpQid/1C+0S/0A7VaoQthDRKetRRQJK7l1byE7b/QQ=;
	b=MF7y4cnIUUtb/fUu62mV1xtxjV1bGfuzvHL/XtCMyUIQZ4ycV2S0eNVUFNV8ZGbYZ8oHQi
	SxvHIQo1yZUzHFAFlTMDPRESU8nj+17BBVMrvH49LRCMkDMJjbNq20giKazX2n1WPzA8PC
	UN3paEdZ3aLf2YD8ko1Y5Dja0zPfAhcSYoj8diE0Wo9tPmQ3cw8QqNYbJ8g3GGtMWumqBa
	JankTexYgenmrMYsfqZZzWffx6p9ke2IVGV7veRnTigdk1hDkpkzh84pLUkcr+BIp+pT4c
	1S8r/HPKeWLHAYpR43EPHDyKRxdWTtMUOUrrYvMLKRyYMgDcxIPMk5Hp6mu6Lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732721626;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:dkim-signature;
	bh=EVpQid/1C+0S/0A7VaoQthDRKetRRQJK7l1byE7b/QQ=;
	b=GGF8LY1gkGr0QcnZE+4FLK1iSmpxaJkqzWSYF4nMAx0xOZ0gp8H18iC1k25SI3AXqJGy4j
	3TriM3HEi9peHTkyQly80PZ69zqcEAHwe/nxYVohBztp5FaWrV6EI8mrv3GdQHihnEmxzj
	EyMHObht3Cx8AwJOHaCNpMeBgyYeMEHnuGycR58XPgcNhJfB38gDKagx4Ud3PCah3uiXDP
	voeVWUbXU8KAgFAoRwgPjNFLu5wFcWWRC0k4oWPqv51kdhUFTZHo1huqUsAV78+MNUT1f0
	pPAOD72EpbVgzdR+9bl4a8YDY2DYPQdeigJ6dv+WQ/h0GfGmCJCixoSDgw3beA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732721626; a=rsa-sha256; cv=none;
	b=WGf1YsnnCk+qzVoBprDuU3+lUMIohFeoqLhnINcWsYx80b6qs2oW9GKWPsv9QCIWiN2IFp
	SiJEdXy879js2q0g1hJGmB5b/8oaSpSOQVl67Ruli6W9G+66AVthD1DCc5/k+sf8K71cgv
	PY91d76deG+ciNfcyssBhGJGqoNff4FHJl/OeJCqy0ksKDo1x8QQb/WKIjiWLcfMUpvK2A
	Qrn0GNP+KUCYGzOIv4CgGdNZFHcXTO5Vm6Vdj3BowuAR/hb51slLeqJFNBSIWiDozdjkmk
	4QwxTYy+xHU/NSbimXa5QVhiOiBUe6ueJYLEK4MxgbAxUxHNe0gQIffDbkBwqw==
Received: from margiolis.net (mail.margiolis.net [95.179.159.8])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA512)
	(Client did not present a certificate)
	(Authenticated sender: christos/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz3Pk2CZmzG79;
	Wed, 27 Nov 2024 15:33:46 +0000 (UTC)
	(envelope-from christos@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=mail; bh=X4E1cR0LUbRecKv
	2xdyZ1VQ7wmzQsaPS4xJOFh2lwXM=; h=in-reply-to:references:subject:cc:to:
	from:date; d=margiolis.net; b=gCunmsAcvx0ydPeOXSBJu6IHeBSlAbDEz2DTVJ48
	MXEsvHilVk56ryVZvR36lIK/QxnLhdUmBIosrwu8qspabG1E6ZnQ2+T6OdDEDZd5s56Y+a
	ISKBXQ9R/RO8u5sJqCqOrJgxEZLxgrhzBvqVC+79QiS/qEsEYXhcsECx20i0M=
Received: from tpad (public-gprs242282.centertel.pl [31.60.93.171])
	by margiolis.net (OpenSMTPD) with ESMTPSA id 059c2a08 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO);
	Wed, 27 Nov 2024 15:33:43 +0000 (UTC)
Date: Wed, 27 Nov 2024 16:33:42 +0100
From: Christos Margiolis <christos@freebsd.org>
To: John Baldwin <jhb@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, 
	dev-commits-src-main@freebsd.org
Subject: Re: git: 5317480967bf - main - sound: Remove CHN_F_SLEEPING
Message-ID: <74asrrtyd2ikapohanal6rqseac734wk4v4k4ifyrzqrt7jpff@xnvv5amia64w>
References: <202411261448.4AQEmw7Y084208@gitrepo.freebsd.org>
 <77c4113c-c023-4db3-826a-83be4e9baa42@FreeBSD.org>
 <vvqbxb25dikutghe4pknggpu2mely3syk44sfbk4zpweymzvuz@pia6d26v6a2t>
 <4234bd4a-29a0-4f95-bebb-d745c101cd25@FreeBSD.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <4234bd4a-29a0-4f95-bebb-d745c101cd25@FreeBSD.org>

John Baldwin wrote:
> On 11/26/24 12:17, Christos Margiolis wrote:
> > John Baldwin wrote:
> > > On 11/26/24 06:48, Christos Margiolis wrote:
> > > > The branch main has been updated by christos:
> > > > 
> > > > URL: https://cgit.FreeBSD.org/src/commit/?id=5317480967bfc8bf678e4da3fce81bcb3f5b7836
> > > > [...]
> > > >    				"\004TRIGGERED"				\
> > > > +				/* \006 */				\
> > > >    				"\005NOTRIGGER"				\
> > > > -				"\006SLEEPING"				\
> > > >    				"\007NBIO"				\
> > > 
> > > Hmm, new comment is mis-sorted?
> > 
> > Yes. Oops.
> > 
> > > > [...]
> > > > +			if (ch->intr_cv.cv_waiters == 0 && CHN_STOPPED(ch) &&
> > > > +			    ch->inprog == 0) {
> > > 
> > > I'm not super excited about reading cv_waiters directly.  Generally speaking
> > > 'struct cv' is opaque to the rest of the kernel.  Maybe add a little inline
> > > routine or macro cv_waiters() that returns this value instead?  Then it can
> > > be documented in condvar.9 along with the caveats about when it is safe to
> > > use.
> > 
> > I see we already have cv_wmesg() in sys/sys/condvar.h to access
> > cv_description. Maybe we could add a cv_waiters() macro in there as
> > well?
> 
> Yes, that is where I would add it.

https://reviews.freebsd.org/D47779
https://reviews.freebsd.org/D47780

Christos

From nobody Wed Nov 27 16:14:10 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz4JL2ZfZz5fQZp;
	Wed, 27 Nov 2024 16:14: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz4JL1r2dz4lbN;
	Wed, 27 Nov 2024 16:14:10 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732724050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=LpJOfaJzogycHpmrzXe1uK9YaUFphICPtW7ypsLwa5s=;
	b=HCoi54LaVu7nNvCIyEDKtaW8mUMcPizHaXUvTe12d1yJwjxoSjU2IgQT6FvFRLx2MszKf3
	yjeeW4fuv2lhMYF0uXN6SaBuuTjDsrS0lXi+YVmubaHkpr4o6/FpDKQ5q2TDqXR1PMcjIC
	B1QyzPmTGHzMHzW0XBsP/H44f1+nWKXgzmsIC2KOx9P2CNhg2/cyp0vb4jxSG6ZFmhAIna
	4SXcxw61sKRL+8rEIPh9bxb3c1wnOWlkNlod6rkYhu2tJ04st+FYwgqzRlamWNd0y+re6F
	v+sFvgFU+BPvjaLqrtaSddNf2tVC17XVxLrUBeUzHJE8GnGzGJRhP71zMHw/Rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732724050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=LpJOfaJzogycHpmrzXe1uK9YaUFphICPtW7ypsLwa5s=;
	b=QPnfgRH1b9YhsUgqLtrjiu7vx1cM1rhqWq7q2oFHYf3NUOIYUEy0OJSxeXciPCzXrcFXUG
	oBGXl16GWo5jB9PpRBC1HzYF+zCQCQ/+IZk3djpg7RwimtgmZmdFhJyhjwsY+HHOnU4HZU
	7nY4bvO75uj7oviECgxnfomegqaUvWEEsFt8dG4LUhy+FZ9rbWI0wZLWC5eVbSivFdhqRd
	duOBAJ6bp7TMf4wTBOG1gOral501MG5POYKaQKngzkkvor0jppsfcfZtuZqAStije1Qt3j
	TZrskfr4mIzZTv25k6x7Im9sqJhy5m46JZLZHOtQ4T3yR/6yzBFhAIVTPuVAIA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732724050; a=rsa-sha256; cv=none;
	b=mOkHVbvcT3rvuXekoge0UJJfIuFbp//cb1jBpqLnn10H2jwtgmOwb85GD/V/R+XoR68tge
	f0PMtVOPszCt7F0IUwwFmUgJ0a61WGZeiWL3/DFKPKbQAW2TWm6g+WNVydergFUXoeENLB
	DdLeGqwdiKBG0zEUjhKDSDbhP1ekcKzeRDYtfR+0bxY6FQO6CmMD1vSAJML8qopThHKrzN
	L0+KJrQNiNSRR8q86mY1drkhEjVACWe5wJ6KEKWix/CaEWuvO1uvFLW+OKiDebnf1Cd+y0
	GJhflaI+aLFcsvaH/AuXdMO4eHNPW5zYuRZH3QmPRA+r5StZIRl2MC3U0G3mmQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz4JL1R2xz1GS8;
	Wed, 27 Nov 2024 16:14: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 4ARGEAjm037788;
	Wed, 27 Nov 2024 16:14:10 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARGEA6L037785;
	Wed, 27 Nov 2024 16:14:10 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 16:14:10 GMT
Message-Id: <202411271614.4ARGEA6L037785@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jose Luis Duran <jlduran@FreeBSD.org>
Subject: git: 4b8e65d12fd7 - main - mtree: Fix BSD.tests.dist sorting
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@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/main
X-Git-Reftype: branch
X-Git-Commit: 4b8e65d12fd7c06c0f670bdb11815971c3bebfed
Auto-Submitted: auto-generated

The branch main has been updated by jlduran:

URL: https://cgit.FreeBSD.org/src/commit/?id=4b8e65d12fd7c06c0f670bdb11815971c3bebfed

commit 4b8e65d12fd7c06c0f670bdb11815971c3bebfed
Author:     Jose Luis Duran <jlduran@FreeBSD.org>
AuthorDate: 2024-11-24 01:49:16 +0000
Commit:     Jose Luis Duran <jlduran@FreeBSD.org>
CommitDate: 2024-11-27 16:10:10 +0000

    mtree: Fix BSD.tests.dist sorting
    
    Reviewed by:    imp
    Approved by:    emaste (mentor)
    Fixes:  60d717baf214 ("ctl: add some ATF tests for READ BUFFER")
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D47719
---
 etc/mtree/BSD.tests.dist | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist
index e9ba0f689678..7ea02758ca4c 100644
--- a/etc/mtree/BSD.tests.dist
+++ b/etc/mtree/BSD.tests.dist
@@ -545,6 +545,10 @@
         ..
         auditpipe
         ..
+        cam
+            ctl
+            ..
+        ..
         capsicum
         ..
         cddl
@@ -795,10 +799,6 @@
         ..
         compat32
         ..
-        cam
-            ctl
-            ..
-        ..
         devrandom
         ..
         dtrace

From nobody Wed Nov 27 16:14:11 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz4JM4Hx4z5fQp4;
	Wed, 27 Nov 2024 16:14: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz4JM2V6kz4ldr;
	Wed, 27 Nov 2024 16:14:11 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732724051;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=6ysXlTVwLn44ke+YkVR1K4qm1pTWg90+OAndXT/tEIc=;
	b=mOc35IZlX323TstsMJW9UrQwekWJ7Lz5e7ChH4bmMIoPRT053B1OMJt6M+OnJs+cmC7TuJ
	4MJXEk4nFJHDSv9ASjdwbNzMlCCdo/XFVCdvmOWGpb82tLKM9bhbtbAio6TAiEsR1VbQlX
	uD+rKdYux0emlf25p7t10KxUib7ATQ8dvOQSS3eTp2FrBVwxLPzzqOqOy8nAptMqO1X3/v
	IN3ytZkxhlKlZQ/wZplXZLgFEmSUu9biymI2p7pSSJx3/OB+CT2RjJgitt3+9VLWCmhSZ6
	ILCOd2+KA0Fc1U+fMFUga1tjGcOFlnJh1DYbjklPtTThN3uQy0NHlNqdWO4KDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732724051;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=6ysXlTVwLn44ke+YkVR1K4qm1pTWg90+OAndXT/tEIc=;
	b=wbGvMEZcdNyOikXvGJssitQats3xazfFT3eZpqwtdxnqGNbEms+CeAHC+2kYfBwZKW37ar
	KInH77LomhsfEnjzvp8aLkjshovd+2Q/ixDCjZq3RawQja0Gk3Zix2X7+bUfkXTwVTfDBJ
	7bUggbRGEAd7UMYYX2YuumQjEyVwEXTW/EAmvYGnxt3EuWI676I1KF8p7kltpUfSmuXK4Y
	Mk3sibwlM2SvR5JcD97HLvJkK2HSHruv/K6oii9226pRxn6JsemqKXP3koy/1qJufaFFaQ
	O8vhMZ+Bx1PA9T+wzjQLskHg+omDeGaKbG3+8hDmtRFt9g0O0dXho5DKHpQuMA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732724051; a=rsa-sha256; cv=none;
	b=C4mwhwzpZYOpRMx862rPzptz+UiInt5qP4RBz4uBGtrUOE7RSqNDFaki8mm+l18isS77x9
	3T+914X4KyZmvLT3uxZGIH69NOXhiAzt4ee5y8N6suFBMV7AiajNtXtALserDolZ8QiajS
	dSsFlBb6D1AiqT0qRvMue8dnsZ3hCgEgBNGh9s86UDk/1mtaI/vN2oFQF/maLxlgc/evfO
	u1NaC+T0K8N3G+2G92RW6eu8oazvF61VEILuEYwjY5LYP1AZf35pRwFMz1dyoVnU5Qsuyt
	PdvktkYrFXAGEv6L7ezogv6xbyKi1Bdipg/m0Hu+Ke459p/Ni9FtNMJzPxhmGg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz4JM26CVz1G21;
	Wed, 27 Nov 2024 16:14: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 4ARGEB1A037851;
	Wed, 27 Nov 2024 16:14:11 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARGEB0u037848;
	Wed, 27 Nov 2024 16:14:11 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 16:14:11 GMT
Message-Id: <202411271614.4ARGEB0u037848@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jose Luis Duran <jlduran@FreeBSD.org>
Subject: git: f08dfd819bf7 - main - mtree: Add missing entries in
  BSD.tests.dist
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@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/main
X-Git-Reftype: branch
X-Git-Commit: f08dfd819bf73a584bf90da268242a7ed483dc32
Auto-Submitted: auto-generated

The branch main has been updated by jlduran:

URL: https://cgit.FreeBSD.org/src/commit/?id=f08dfd819bf73a584bf90da268242a7ed483dc32

commit f08dfd819bf73a584bf90da268242a7ed483dc32
Author:     Jose Luis Duran <jlduran@FreeBSD.org>
AuthorDate: 2024-11-27 16:06:06 +0000
Commit:     Jose Luis Duran <jlduran@FreeBSD.org>
CommitDate: 2024-11-27 16:10:45 +0000

    mtree: Add missing entries in BSD.tests.dist
    
    Reviewed by:    emaste, christos
    Approved by:    emaste (mentor)
    Fixes:  95eb4b873b6a ("sound tests: Add sndstat nvlist ATF test")
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D47724
---
 etc/mtree/BSD.tests.dist | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist
index 7ea02758ca4c..1762bbfb7bdc 100644
--- a/etc/mtree/BSD.tests.dist
+++ b/etc/mtree/BSD.tests.dist
@@ -949,6 +949,8 @@
         ..
         ses
         ..
+        sound
+        ..
         sys
         ..
         vfs

From nobody Wed Nov 27 18:01:37 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz6hK6sxvz5fY6Q;
	Wed, 27 Nov 2024 18:01: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz6hK6NTYz41fH;
	Wed, 27 Nov 2024 18:01:37 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732730497;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=r0JEFzLDRqai7ucDg6zdcKXopi9WIcl29vdVaGfFXVU=;
	b=ht7gy9TaMe5bwInYHG4aSMrfgZKuqq1k9CF4qkD3vZJfNsnzUahTTtwCT6LUN04LFEpexK
	hR/uz+L6pfi8qjnqTLo86ShweanbPPm0Js549mGTvabQp1zDjxDPaic7RJpLHtwtEJipbz
	5GQ/Z6dNaBqz0Y/1kjvUlt/Z3XVXUlj8f4e1QJCc3byZoBNELf+p4AksqJ3Hb+dxgWVGt2
	ll0NU592HBoicoiuGT5nj0BfpcvQ5wDOZS5X+KsudnT3RrocSjW64zy3uJsKDBh0JSiKhC
	H9EyvMeoElJQZSOHMixF9Ery2EUtEegxK+4mRDWQAt8cn7KpWj20+FVMqQ1nsg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732730497;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=r0JEFzLDRqai7ucDg6zdcKXopi9WIcl29vdVaGfFXVU=;
	b=hZHrA2PCBapZX6fDHHDnCG8yk70YLvxhcBy+papuJm5bZqsJtv9zUVuM+AUrqvpFc3WD0Q
	ca2t2avSXBOuKd7eb9s6P5W7ReD5U7zAgF0f8Lsl2O1EpIklRN2j07jaHBh/P6Q3XGTOzN
	+4wFgfEJB8vacRMKquNXuRFv6GT5mQ2NJoR3ZSa9mb/LQUiOji7ispS2SfMKMpkyXhfrZ0
	5yhpcN2kPROQ0qWNrYxO+BLj/1upIKVbV0ghYaESjO0nQDVNI+tTfcSUySqaiVcRJRu26t
	25Mh/LR5J+6MnmIxT27cezAfvTPwkp57mgv8tOO7FfP4LTrAfLzrX4xIV8qszA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732730497; a=rsa-sha256; cv=none;
	b=BKQi6u+mokNUvffCzTCUGzowo0Wa0sUCj9eFeqbNIiZrOILggKmKCysFYra4/tGpjJIC7W
	uCXiht842ohjGtwRnyRPLJiR0+M1PskEPXaWdQrzML53m6U/Cw4ry9cm7wYxVSnCRukkeR
	PkZN+x+bQrp87jEifboiNCUCTHSE+xuowE53zbEd6TH/LYrTNLBbYW98X+Sct56RDPDV4p
	GGJwEuicrY5agRgpT4Nw5LYiu9/QcZ6gHqu8fpzofT+1TDKE4VRDoUJHa/EomjoX+sNhSx
	uAFVXMqO+qKe5R8OIqxh/tYs2kDfK6xbAASQ469BmzyDruY8VZ7i6czXsdXRlg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz6hK60Kdz1KBx;
	Wed, 27 Nov 2024 18:01: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 4ARI1bm1039406;
	Wed, 27 Nov 2024 18:01:37 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARI1b2M039403;
	Wed, 27 Nov 2024 18:01:37 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 18:01:37 GMT
Message-Id: <202411271801.4ARI1b2M039403@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Ed Maste <emaste@FreeBSD.org>
Subject: git: c0faaa14d77d - main - intro(3): remove profiling libs
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: emaste
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: c0faaa14d77d9d4e7d7aaf67429ef5d985aaddda
Auto-Submitted: auto-generated

The branch main has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=c0faaa14d77d9d4e7d7aaf67429ef5d985aaddda

commit c0faaa14d77d9d4e7d7aaf67429ef5d985aaddda
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2024-11-27 17:59:03 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2024-11-27 18:01:15 +0000

    intro(3): remove profiling libs
    
    We no longer have libc_p.a or libm_p.a.
    
    Fixes: 3750ccefb862 ("Retire MK_PROFILE infrastructure")
    Sponsored by: The FreeBSD Foundation
---
 share/man/man3/intro.3 | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/share/man/man3/intro.3 b/share/man/man3/intro.3
index 39897eb565cd..0cecdcab4069 100644
--- a/share/man/man3/intro.3
+++ b/share/man/man3/intro.3
@@ -24,7 +24,7 @@
 .\" 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 November 16, 2023
+.Dd November 27, 2024
 .Dt INTRO 3
 .Os
 .Sh NAME
@@ -268,12 +268,8 @@ See
 .Bl -tag -width /usr/lib/libm_p.a -compact
 .It Pa /usr/lib/libc.a
 the C library
-.It Pa /usr/lib/libc_p.a
-the C library compiled for profiling
 .It Pa /usr/lib/libm.a
 the math library
-.It Pa /usr/lib/libm_p.a
-the math library compiled for profiling
 .El
 .Sh LIBRARY TYPES
 The system libraries are located in

From nobody Wed Nov 27 18:20:27 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz7641H8dz5fZrQ;
	Wed, 27 Nov 2024 18:20: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz7640XHzz44G0;
	Wed, 27 Nov 2024 18:20:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732731628;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RLcu70Q1CoL9gqGjP3chJutDLZJbKZG18MAGgkEczSQ=;
	b=aG+CZJRORJRy62iFt/0uc3+b18goMxKZdWolGLHTPUAG54jOA65zuaF5Wb7t6sGuT8HLDg
	+4ZDFZpQUE7PCd+ew6CgDGqf1PQRb577pieDPzmexVI1RPW4S4/k16n3Sw/J9CrWJjS/Bs
	uk9Lb8c43FGrAHU0sNKlsDvL97+agcZNQWRB0GT7SxXkVLApk/SpEuP+5T66LKzYa01GhK
	ny8uvZcv5EPqSDN7wpTPhr79h91960fjkq0cZN6aNB9n3wP0lZCYrkU9KmEMXwmwfjmymD
	KkmuCreL13cnGCb9NLo6wYD3BXLwfKlgvyBNEglwOQ6hz+wDrKMDfSfsGEYSoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732731628;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RLcu70Q1CoL9gqGjP3chJutDLZJbKZG18MAGgkEczSQ=;
	b=vGTFJqUN62b3EgHbMrln/VpHqkwrKLIHUaiAQ17DdzJJqg/6tHtK2ivE59yvd3xkBrtfZj
	fkKuSGaM0ncy2L3A9KyrG0jVJ3sLwzThr3LI+kSYKpMRll9rsyh0LCMiQgZt+eR0B4SLmu
	0la5CJFRugRe6NNkfhz2KUnRQBAMpLMkXmaScGVDXyCAuAaupeubupvigtawvkKOTLNgMC
	JtlHDDlsHk0SnMBeU1ce+mtNMDrvVBZNJLrhqvwvk0ncPVsk2c7dq502tlTq6u7BGaVjo/
	YTHR1dTNK9Zfu5IgSYf/9CHIF747WdejXxLf+AFWZmR7zWel7yUAKJ7Ysdgeaw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732731628; a=rsa-sha256; cv=none;
	b=HfsxIP/AhZd2W/QgmmM+55MrC5BHq353jM7sKCuLSdnzVg6j48SImJCluvPY03H9n5Ki6Y
	GXrZ0UD6GWfzGZAF3Rbbpj+WObUWxAXYII/dZi1+xgkFqulQjRa30udjD6A7rv0qxTkxob
	XshzR/GwakN2W2sGGhketN6YROhmq67lH5kIAiZju8NHf99pNpLQtZa9H1ZxIMoaE1Zu2/
	hgnzWDQ86Frvncklzh+dkh9/EH4nPx5Lmk60cA2sZwoV/1LLiGvK94u9vPtMRFLltBk1TI
	NOe0IZ7rgSailn4yoGRzfgXmGYfB40MmbHMUHRqQHs1hmIO8UyFIXZX7ILOrpQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz76401Nzz1KG8;
	Wed, 27 Nov 2024 18:20: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 4ARIKRBp071283;
	Wed, 27 Nov 2024 18:20:27 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARIKREu071280;
	Wed, 27 Nov 2024 18:20:27 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 18:20:27 GMT
Message-Id: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Brooks Davis <brooks@FreeBSD.org>
Subject: git: 56ef9c872bc5 - main - nvi: use memmove to realign
  buffers
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: brooks
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 56ef9c872bc5b086d73fed6317159e40be32d40e
Auto-Submitted: auto-generated

The branch main has been updated by brooks:

URL: https://cgit.FreeBSD.org/src/commit/?id=56ef9c872bc5b086d73fed6317159e40be32d40e

commit 56ef9c872bc5b086d73fed6317159e40be32d40e
Author:     Brooks Davis <brooks@FreeBSD.org>
AuthorDate: 2024-11-27 17:38:42 +0000
Commit:     Brooks Davis <brooks@FreeBSD.org>
CommitDate: 2024-11-27 18:20:04 +0000

    nvi: use memmove to realign buffers
    
    Replace a rather convoluted realignment algorithm with memmove().  In
    addition to being hard to understand, the code would read beyond the end
    of the input buffer in certain conditions (found on CheriBSD).
    
    Sponsored by:   DARPA
    Pull Request:   https://github.com/lichray/nvi2/pull/122
---
 contrib/nvi/common/log.c | 22 +++++-----------------
 1 file changed, 5 insertions(+), 17 deletions(-)

diff --git a/contrib/nvi/common/log.c b/contrib/nvi/common/log.c
index 96b246efad02..d9b142b16d01 100644
--- a/contrib/nvi/common/log.c
+++ b/contrib/nvi/common/log.c
@@ -706,30 +706,18 @@ apply_with(int (*db_func)(SCR *, recno_t, CHAR_T *, size_t), SCR *sp,
     recno_t lno, u_char *p, size_t len)
 {
 #ifdef USE_WIDECHAR
-	typedef unsigned long nword;
-
 	static size_t blen;
-	static nword *bp;
-	nword *lp = (nword *)((uintptr_t)p / sizeof(nword) * sizeof(nword));
-
-	if (lp != (nword *)p) {
-		int offl = ((uintptr_t)p - (uintptr_t)lp) << 3;
-		int offr = (sizeof(nword) << 3) - offl;
-		size_t i, cnt = (len + sizeof(nword) / 2) / sizeof(nword);
+	static u_char *bp;
 
+	if (!__builtin_is_aligned(p, sizeof(unsigned long))) {
 		if (len > blen) {
 			blen = p2roundup(MAX(len, 512));
-			REALLOC(sp, bp, nword *, blen);
+			REALLOC(sp, bp, u_char *, blen);
 			if (bp == NULL)
 				return (1);
 		}
-		for (i = 0; i < cnt; ++i)
-#if BYTE_ORDER == BIG_ENDIAN
-			bp[i] = (lp[i] << offl) ^ (lp[i+1] >> offr);
-#else
-			bp[i] = (lp[i] >> offl) ^ (lp[i+1] << offr);
-#endif
-		p = (u_char *)bp;
+		memmove(bp, p, len);
+		p = bp;
 	}
 #endif
 	return db_func(sp, lno, (CHAR_T *)p, len / sizeof(CHAR_T));

From nobody Wed Nov 27 18:22:34 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz78m0kTNz5fbB5
	for <dev-commits-src-main@mlmmj.nyi.freebsd.org>; Wed, 27 Nov 2024 18:22:48 +0000 (UTC)
	(envelope-from jrtc27@jrtc27.com)
Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44])
	(using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "smtp.gmail.com", Issuer "WR4" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz78l68m1z44fj
	for <dev-commits-src-main@freebsd.org>; Wed, 27 Nov 2024 18:22:47 +0000 (UTC)
	(envelope-from jrtc27@jrtc27.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-434a742481aso17769465e9.3
        for <dev-commits-src-main@freebsd.org>; Wed, 27 Nov 2024 10:22:47 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1732731766; x=1733336566;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=EkQyYQhKIW0baIGzQAOvc/gV7MKlD/QNpbj4uA1xXQA=;
        b=Hen3Xzk+k8tAGLU8bU0N8uPeb7JUsjh36FWNC6VUWw89WsisT41/7VnBPneNFK8mfC
         sJTrCJxK32kFV6WHwYyzwcPeTW9N8VpXOspRebbyC9ByHQ/EAjLJpUwN0wRTB4kp7vr2
         b9DrsHnXgHzdcHIc4aJMB9S+7hdnbLopl3UAx/pQBzQ3S4TnzbyFHS3QjPJHcqHQbLiz
         p82GhdqpK+MXziFK1P5AdENG2KC900qTO0ev4T8KV+6myYBV7X2+ByAuOh8wBU2oVve9
         SeO1oCNN/MmU+W0fay84MgcDcsmopJy4z0yH8r6V2vtmGJ2jbcV6t/3syooPRLaabeVc
         NSHw==
X-Forwarded-Encrypted: i=1; AJvYcCW/PrA/p+XjTJqerjaL4Qb3Ch89R8Za1NL0KyBIi/6rIB7oYmAh3rJOgzeIdvoiBV1vR3zCSRWb4wme5xo8BE337OStWQ==@freebsd.org
X-Gm-Message-State: AOJu0YzGjAgMfM8AmulaeBUraAwSJsisFXNB8VD7dOxGW/Vc7tyiNkrJ
	nT4pD//iMCGZ0pIVd6PqUmA7v26cd9tDdTT5Vftg78YyOdC6rApZx3WPXooDQDQ=
X-Gm-Gg: ASbGncuYFW1q5PGfhrrvaYX51FmnYgo9DeJIsA+rxcpwce4ZzWjvfYZA2MyA17NgERw
	uNtrJDUJ6TeD171Ocbhu/X2H9jU3jHvdYA8wZXDzH0U/zbPb+7JwizEDZewjyo56wEcEnXvBj6A
	bURWPlTCOlpwGOpcnp9f6uCocLjFptmPba6TBTK+aACUICJGvmzdZjC4XNb9tjeihxpGTitopfl
	TFFqCTCyPK6yEYEEb0oO9ehtgta0fDEhw5U+vHlOfpQ8IyrLGlYl/FcFTOKl+oI
X-Google-Smtp-Source: AGHT+IF5Kk9anh6DrdjqM7kRU4D7FKg56hAAn7l4zNHLMc/fiWrwXyaJvJqC80gMjjD+PNVh5BBgkQ==
X-Received: by 2002:a05:600c:1988:b0:434:9c3b:7564 with SMTP id 5b1f17b1804b1-434a9df71d2mr34941425e9.20.1732731765984;
        Wed, 27 Nov 2024 10:22:45 -0800 (PST)
Received: from smtpclient.apple ([131.111.5.201])
        by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-434a5d64d28sm43152155e9.0.2024.11.27.10.22.45
        (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
        Wed, 27 Nov 2024 10:22:45 -0800 (PST)
Content-Type: text/plain;
	charset=us-ascii
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.200.121\))
Subject: Re: git: 56ef9c872bc5 - main - nvi: use memmove to realign buffers
From: Jessica Clarke <jrtc27@freebsd.org>
In-Reply-To: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>
Date: Wed, 27 Nov 2024 18:22:34 +0000
Cc: "src-committers@freebsd.org" <src-committers@FreeBSD.org>,
 "dev-commits-src-all@freebsd.org" <dev-commits-src-all@FreeBSD.org>,
 "dev-commits-src-main@freebsd.org" <dev-commits-src-main@FreeBSD.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <E39AB6F0-1768-4F72-8559-2592D58681E0@freebsd.org>
References: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>
To: Brooks Davis <brooks@FreeBSD.org>
X-Mailer: Apple Mail (2.3826.200.121)
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]
X-Rspamd-Queue-Id: 4Xz78l68m1z44fj
X-Spamd-Bar: ----

On 27 Nov 2024, at 18:20, Brooks Davis <brooks@FreeBSD.org> wrote:
>=20
> The branch main has been updated by brooks:
>=20
> URL: =
https://cgit.FreeBSD.org/src/commit/?id=3D56ef9c872bc5b086d73fed6317159e40=
be32d40e
>=20
> commit 56ef9c872bc5b086d73fed6317159e40be32d40e
> Author:     Brooks Davis <brooks@FreeBSD.org>
> AuthorDate: 2024-11-27 17:38:42 +0000
> Commit:     Brooks Davis <brooks@FreeBSD.org>
> CommitDate: 2024-11-27 18:20:04 +0000
>=20
>    nvi: use memmove to realign buffers
>=20
>    Replace a rather convoluted realignment algorithm with memmove().  =
In
>    addition to being hard to understand, the code would read beyond =
the end
>    of the input buffer in certain conditions (found on CheriBSD).
>=20
>    Sponsored by:   DARPA
>    Pull Request:   https://github.com/lichray/nvi2/pull/122

Also needs =
https://github.com/lichray/nvi2/commit/25c4d7db4ea638a31ac458b733a3b67b0a0=
ff634

Jess


From nobody Wed Nov 27 18:24:56 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz7CF2Tk3z5fZxY;
	Wed, 27 Nov 2024 18:24:57 +0000 (UTC)
	(envelope-from brooks@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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz7CF1yzzz457F;
	Wed, 27 Nov 2024 18:24:57 +0000 (UTC)
	(envelope-from brooks@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732731897;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=z18E4PKQI9HF2LLpLCqgkofPepMoN915eRgCyejJlK4=;
	b=cl0XdjSqns9tDSXrrYImRPGR4GYKnN9asYoOtv8xtC7qLdXJhqhxVnBDyBthIV5YoUm+y0
	Gqg6PzG3ToEDhn76WPbrT3TY/XDRoTtNeJoKXoeXj9zka8moVYFDMQQHEVaRBkD2XGA8KF
	EEtCJ+Mwnc218a0+Tf3h1N/HmDHARCrOuFg6YSNxG9yx2gbwGsWgy0ajHLPdwfCPdaoHsu
	/NveKTU5NRhmhUD3OerRokvM3l6Jvb8ebOZXkV7KX2cx20CR2AOdlZ8IWOIV/pk1GlDg0I
	Ne2Hv+SbzBJ8G8i9A9wzOldKAr3VCKioC0skp44ZfgfYpf53DhBDzPYbtr4qiQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732731897;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=z18E4PKQI9HF2LLpLCqgkofPepMoN915eRgCyejJlK4=;
	b=HQE1CSrMhsb1U5lm7cNKOmf1N/v6Yti+63NZgI10ZiTZDQkzNGB5emBwM20uyo7sHtHF3c
	8kwYbW2tBJ3TI82iH2U4QXJ+i3HJNbrWoVmUkOYlyF1c1kPkkYlIpHgKC/lhRNXWsf3Ihm
	xQAENSkjUWdT0suCdOfS3c31O2AtDFj4f9WbroPY9uhG+3xdWv4ggvt5quSr6bWbNeooOS
	9teOinM88jOBQs9nG8T+Ab4uxR85lR4fxTuVr2l8RAjknWHMLLJLX7DhErj9kfPi1l7xF2
	pST2/MOnb+qrj36KzqKrZYdDE3hyw3a37anjCPecvIFSzkO3h8QQNMXCxlvSpA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732731897; a=rsa-sha256; cv=none;
	b=V1EoCimYV3TSZara+SVtSfMzfcDXmhoIE5xt+OmdxF6DwodIzb5aHxYsQDC2/syCjD6MIY
	jpszNo5Ws0zMjPX5rvhao4iDQckOt6cm+h+Vo+bhvll4GQ6efdLAvxzWIWP9gCyHxjDx/M
	cdXel1B8ajWwk557s7Dbc3VnihVZflz6q8+Zr9HrxIm350H0YFbHHxces9ai9QgsOn70pY
	p0hWEeafplG9kLuIbFeqM76jjrmYjtlndDzLDaK0KQsE7TSN7FOd24KTZANvpsBXkwCYgS
	fheRlNGn/31bdQ9W1H5cFQoavCbkzVo5vj2Lsqlf3h87tleMHRJwx8D/gSokrw==
Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	(Authenticated sender: brooks/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz7CF1GlMzL6y;
	Wed, 27 Nov 2024 18:24:57 +0000 (UTC)
	(envelope-from brooks@freebsd.org)
Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001)
	id 92F253C019B; Wed, 27 Nov 2024 18:24:56 +0000 (UTC)
Date: Wed, 27 Nov 2024 18:24:56 +0000
From: Brooks Davis <brooks@freebsd.org>
To: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
	dev-commits-src-main@freebsd.org
Subject: Re: git: 56ef9c872bc5 - main - nvi: use memmove to realign buffers
Message-ID: <Z0dj-MdKPYQjzdpg@spindle.one-eyed-alien.net>
References: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>

On Wed, Nov 27, 2024 at 06:20:27PM +0000, Brooks Davis wrote:
> The branch main has been updated by brooks:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=56ef9c872bc5b086d73fed6317159e40be32d40e
> 
> commit 56ef9c872bc5b086d73fed6317159e40be32d40e
> Author:     Brooks Davis <brooks@FreeBSD.org>
> AuthorDate: 2024-11-27 17:38:42 +0000
> Commit:     Brooks Davis <brooks@FreeBSD.org>
> CommitDate: 2024-11-27 18:20:04 +0000
> 
>     nvi: use memmove to realign buffers
>     
>     Replace a rather convoluted realignment algorithm with memmove().  In
>     addition to being hard to understand, the code would read beyond the end
>     of the input buffer in certain conditions (found on CheriBSD).

This was merged upstream a bit over a year ago, but there hasn't been a
release since then.  I'm merging it here to loop back into CheriBSD were
it's occasionally a problem.

-- Brooks

From nobody Wed Nov 27 18:26:36 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz7F871HMz5fbCX;
	Wed, 27 Nov 2024 18:26:36 +0000 (UTC)
	(envelope-from brooks@freebsd.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz7F86WDZz45YL;
	Wed, 27 Nov 2024 18:26:36 +0000 (UTC)
	(envelope-from brooks@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732731996;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=0eZNscVYAP0UdEj49eBF1fn+ybeAVFuReqOHLECEC4Y=;
	b=wlhG72GOMLxGjkZBp1VzHOl/Rc4fLlZIGOxnG1Y8C99e3N9Wa4kRSEwrag71Ib9OCZxn/b
	ovhY0b774b4Im2IrMBPRszWJwAuTXhJ4aP3wGrCSoUffpq5fEiMU7lMbT9wCn7bJm09JZy
	neoFquplE9QDh3MlOzLuasbjrCs8w34XOm4cH/ZA63YJ7g7EJk8KVcaD0fw5Bm2HBDZsld
	ABtzDxj0It0JXMg6t+kjEG73KsmccyBoCYqMWwCaCkLdVbcvBcZi7gw0y+VHq1Qm5LhPkv
	cZQaxQiOV78TgTg2mEGarfVjL7/eHbRA2lfah4ly6ibYLFPpOPn9BejbI2PPPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732731996;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=0eZNscVYAP0UdEj49eBF1fn+ybeAVFuReqOHLECEC4Y=;
	b=PCxPrCLiavTLdykWtkvbL+47SnXV3sb4wujgqauyBsH5u6QGVa7kzlNlxf1xjXRP/7tIOc
	wznYl0bU3GChNWJu1hnQf4Md9UszzZGj/KsVa4WI3GE+Iv28FzzmQPYPRaj9IrYQvcCQ7O
	kZ5ulgV+f+7rH9SyeXZRJzQ8jGAP6KeJRKMqOKeD0pp0sPHOMBaVGCFx7gaVmlM89+ffkG
	avn0POnBnXXKidkUh7TNrbmzqbnSb+c0Z7KQLi4yzoDuacLeyIWyUq7j3GOyVoaqUHcvND
	L6k3epU7awLA8L9DqlxVpM1BGxCWS4DJQOhiZPARXSv3C+SUVobVAsmgfCI+1g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732731996; a=rsa-sha256; cv=none;
	b=JW16Sb+hySTPl4UkVjL57at9DzSOVURgiY1AOChijqlwifHIq4YB2yNga9VwTLG3cby/70
	yLnr/dG+EiHf+qD0W9faC+hN//n1bvub2uruHJwdwOVMHL/g23MY6izyfet8PUD/f1wxuO
	uGitS66l3D5qnjTkwYBWe8OrKq1HixjFM7TB44YNM5RK0DCvbM4lGcwptZCQ5cFNhPxule
	KVDyOcLlgQwdYpi4jGxlROzCL/cpkcO0p8rlYkHgJ3RjkrRfI2QnpaIwl8J8/Zrq3z0QJu
	/7HmdIAveleWh5DxLJazOPRIZrceO6qIspKa7n5X7LDki4cc7MrLF+G7CEMPjw==
Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(Client did not present a certificate)
	(Authenticated sender: brooks/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4Xz7F85zthzKZF;
	Wed, 27 Nov 2024 18:26:36 +0000 (UTC)
	(envelope-from brooks@freebsd.org)
Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001)
	id A0EE23C019B; Wed, 27 Nov 2024 18:26:36 +0000 (UTC)
Date: Wed, 27 Nov 2024 18:26:36 +0000
From: Brooks Davis <brooks@freebsd.org>
To: Jessica Clarke <jrtc27@freebsd.org>
Cc: "src-committers@freebsd.org" <src-committers@freebsd.org>,
	"dev-commits-src-all@freebsd.org" <dev-commits-src-all@freebsd.org>,
	"dev-commits-src-main@freebsd.org" <dev-commits-src-main@freebsd.org>
Subject: Re: git: 56ef9c872bc5 - main - nvi: use memmove to realign buffers
Message-ID: <Z0dkXOL1fTLomUA7@spindle.one-eyed-alien.net>
References: <202411271820.4ARIKREu071280@gitrepo.freebsd.org>
 <E39AB6F0-1768-4F72-8559-2592D58681E0@freebsd.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <E39AB6F0-1768-4F72-8559-2592D58681E0@freebsd.org>

On Wed, Nov 27, 2024 at 06:22:34PM +0000, Jessica Clarke wrote:
> On 27 Nov 2024, at 18:20, Brooks Davis <brooks@FreeBSD.org> wrote:
> > 
> > The branch main has been updated by brooks:
> > 
> > URL: https://cgit.FreeBSD.org/src/commit/?id=56ef9c872bc5b086d73fed6317159e40be32d40e
> > 
> > commit 56ef9c872bc5b086d73fed6317159e40be32d40e
> > Author:     Brooks Davis <brooks@FreeBSD.org>
> > AuthorDate: 2024-11-27 17:38:42 +0000
> > Commit:     Brooks Davis <brooks@FreeBSD.org>
> > CommitDate: 2024-11-27 18:20:04 +0000
> > 
> >    nvi: use memmove to realign buffers
> > 
> >    Replace a rather convoluted realignment algorithm with memmove().  In
> >    addition to being hard to understand, the code would read beyond the end
> >    of the input buffer in certain conditions (found on CheriBSD).
> > 
> >    Sponsored by:   DARPA
> >    Pull Request:   https://github.com/lichray/nvi2/pull/122
> 
> Also needs https://github.com/lichray/nvi2/commit/25c4d7db4ea638a31ac458b733a3b67b0a0ff634

Oops, will fix.  Apparently I should have just done a snapshot vendor
import...

-- Brooks

From nobody Wed Nov 27 18:39:00 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xz7WS44R5z5fbc6;
	Wed, 27 Nov 2024 18:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xz7WS3XbQz46Qx;
	Wed, 27 Nov 2024 18:39:00 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732732740;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mbWwGnMzu9TSyh1mVVXBPGEYSYdlkKOxFDCZJwePwwo=;
	b=A/EFwO4EKaGV43NWcRM6d+oVdJzwEIoH2LlTJsOLMn/faE6ZpQXCFmd57SNcLjdVQlWHEo
	F4E3Lyo/YG5iwHC130JYOXm6ZFmEG2Khf5AK5Xvk7eTGN9J91RURjrpXt090C/AwSy5I0E
	MyGWcmaFDTeQarn68YLiJOPjGLatpFnPGTQS6/h9yqp5janfFzDzivvnG8FyWWEvKyd0O5
	Tn+Aj7H9GYpWV6qUrsogF0lD1vNpCWXr/P8UeR2KubP9/enOtNYA2yxTDGne81u0Y5Ymbk
	ZCpVB9HzC4CpJNDFkA8CPUJdxkF42/qwEEqHV2jKz1WgtvGIEpUCErTr5ceexw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732732740;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mbWwGnMzu9TSyh1mVVXBPGEYSYdlkKOxFDCZJwePwwo=;
	b=gpptCrvGy/zV/1qI/xzbGKMLHu9lu1P9C8aAA4z4Z1gz10WK8vii6vRXhJ6WCvMGb36F2L
	RhNQwscqCb0zHoJs9txWiJ0ztySaaOQ3EPeuwP63NB/A+fHKGHAz6FbrfvD0VlEdXz/hhb
	QS/SVe06UGaUgl5/bhCoy3bzf5m1a1aPyAH/oPg+hempjsHqbkpv87T6Zc7MXrhGzyFhOo
	Hxpf9JZz+HIOsZlbkbG9mRCk+s1A3MP3HTvL6xl+m8z/ccFefkJ2NcBhl5odRyn0a5Xyih
	cyWMTqg0Sm40zsPjNQUgtjG7a6TcOdtTBUY9HpeL2ZV2YtVfuM5xdjJccyIcRA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732732740; a=rsa-sha256; cv=none;
	b=okN2QfbvoYv51IF/DQI/Yszeno4Fb5qC6kg8eQpA0wI3OxsmD8TNr8jgbKWM55dIVfsgRb
	Gdy5oMIw31i5hIOA72I519PyEAMJpw/yp1FOZyi9/bAEiFBQdorgqMM2qLHfL4KRG8CcEM
	o3ECLcAvVf8ctydq9A7EwndXpyr5wKbc9CX33EDZurdAu8TGaN9GQz7pnH9DUYkfGqr8q+
	JhtDNbs8kpvYYJcn3g3dD6/9Z92Ashk/F1D20+OZxvdX8e5SAg1Zuzg1XRkb1N334IWw0m
	C7maF0bKAWWUlmZRrOLkwTXGCKK90h4EPHdFKtgU7t52PzPlqER+Z6YE2anf5g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xz7WS37hnz1LKL;
	Wed, 27 Nov 2024 18:39: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 4ARId03W098266;
	Wed, 27 Nov 2024 18:39:00 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARId03h098263;
	Wed, 27 Nov 2024 18:39:00 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 18:39:00 GMT
Message-Id: <202411271839.4ARId03h098263@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Brooks Davis <brooks@FreeBSD.org>
Subject: git: 06a98fefd3d3 - main - nvi: Replace Clang-only
  __builtin_is_aligned with C code (#124)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: brooks
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 06a98fefd3d3ff42b7e7832af6c0736b98f167ac
Auto-Submitted: auto-generated

The branch main has been updated by brooks:

URL: https://cgit.FreeBSD.org/src/commit/?id=06a98fefd3d3ff42b7e7832af6c0736b98f167ac

commit 06a98fefd3d3ff42b7e7832af6c0736b98f167ac
Author:     Zhihao Yuan <lichray@gmail.com>
AuthorDate: 2024-11-27 18:30:46 +0000
Commit:     Brooks Davis <brooks@FreeBSD.org>
CommitDate: 2024-11-27 18:35:10 +0000

    nvi: Replace Clang-only __builtin_is_aligned with C code (#124)
    
    We should use alignof in the future.
    
    Obtained from: https://github.com/lichray/nvi2/commit/25c4d7db4ea638a31ac458b733a3b67b0a0ff634
---
 contrib/nvi/common/log.c |  2 +-
 contrib/nvi/common/mem.h | 12 ++++++++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/contrib/nvi/common/log.c b/contrib/nvi/common/log.c
index d9b142b16d01..d1a1bc6f704a 100644
--- a/contrib/nvi/common/log.c
+++ b/contrib/nvi/common/log.c
@@ -709,7 +709,7 @@ apply_with(int (*db_func)(SCR *, recno_t, CHAR_T *, size_t), SCR *sp,
 	static size_t blen;
 	static u_char *bp;
 
-	if (!__builtin_is_aligned(p, sizeof(unsigned long))) {
+	if (!is_aligned(p, sizeof(unsigned long))) {
 		if (len > blen) {
 			blen = p2roundup(MAX(len, 512));
 			REALLOC(sp, bp, u_char *, blen);
diff --git a/contrib/nvi/common/mem.h b/contrib/nvi/common/mem.h
index d24ec0b50b09..0c83b70dec2f 100644
--- a/contrib/nvi/common/mem.h
+++ b/contrib/nvi/common/mem.h
@@ -212,6 +212,18 @@ p2roundup(size_t n)
 	return (n);
 }
 
+/*
+ * is_aligned --
+ *      Determine whether the program can safely read an object with an
+ *      alignment requirement from ptr.
+ *
+ * See also: https://clang.llvm.org/docs/LanguageExtensions.html#alignment-builtins
+ */
+static __inline int
+is_aligned(void *ptr, size_t alignment) {
+	return ((uintptr_t)ptr % alignment) == 0;
+}
+
 /* Additional TAILQ helper. */
 #define TAILQ_ENTRY_ISVALID(elm, field)					\
 	((elm)->field.tqe_prev != NULL)

From nobody Wed Nov 27 20:41:19 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzBDh4rg6z5flSx;
	Wed, 27 Nov 2024 20:41:24 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzBDh4MFGz4LTX;
	Wed, 27 Nov 2024 20:41:24 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732740084;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Qolai6++Mw6X6VQwZIbcBIOGdSdaStSVHx5LunH+s+k=;
	b=rnxxB1vcLmbMVhHB+tnUmycb0XjwjtwGFzGmXCWVLzPMiBX4N4PP6dAwATKFtyPq5qKEFN
	7a3DGxaB0F9cfhHDMIWnG/jL23Dl8kjUjEJa/cz3E//1Yu+Ivks0i6Jpr236ZhjpiKfhPW
	M4R0My5dVCrQGLwgzG2+0FMFdfHctLPTOXY2wuaSwh1nDOm7gnyN52YPJgUkAnhn3Gzse9
	Dpk7w6VBppkzYYl3Acf+fzXTBYxzEu1XiFgTu2i5ho9cjzJPkoTNobawGKoytIAWT9rhyf
	ZYhExmWxFneAdopXTSc7kiGHbZ6ecj0QtHJYIZxeOtDRnoaW+o/Tq/9NBTx6bQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732740084;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Qolai6++Mw6X6VQwZIbcBIOGdSdaStSVHx5LunH+s+k=;
	b=tFIG8iRhLvL3iCDh206DKln/AHv1eHMlEnhDN/9PllyIVLkua+q3pIU5k6avLXEw4yK5+S
	gYGludyOtsArysRJ1aAI9zl9CD+SnVw16CSfqlSjmIbY6pw/EYtsB44OJzIr3rj9K2jmOc
	kbUxwWUso+aNmvnWyWAe0lOZsRKNnuLElL2Zn5Avr0/72v+he2+plnuDbi+7zYfL3DTY21
	TZLIP2WYc/DqObBG7VVoO2dfGfupGXucCbkHGEblyODYheJwbAsR0k+0axW3TQstdgGrx1
	Na7LsaWWds+nHoxgzQz1XvyxjTP7ssqQQ5fbg3PDHmuui62SdVnW9pHk2500Fg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732740084; a=rsa-sha256; cv=none;
	b=B1ik9Q8BQ0fCMLESGNAh1aSmafxe09ysiAN2n8hVhnASjq+hnoPNRHpYDg+xzZzPkuZRIj
	x+/jJNpIwCkVKty+MY0cM0LtlVsdnz1EJxMSe8yCVicJVjA7kA3sgH4wRe2IxAQyqGG716
	Jxfm7DlHwgoHUDSx0FuNR9cgwrIeoTNDhK5dH21KjqjweAlb8LaIt+cqU9MKCFL2H5Wg6x
	mtWCmLUKqyX4FdaQ5J3flm7k51GLUJVcfcLY5JCMiJtS7z1TqElqe+WkOMNLktccrH0CyA
	sWQKB02PYRFnarCMpKRU7/7/e0huhS/cqYciei7Vusc6HnPI7WpjM1KoNzby/Q==
Received: from venus.codepro.be (venus.codepro.be [5.9.86.228])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "mx1.codepro.be", Issuer "R11" (verified OK))
	(Authenticated sender: kp)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XzBDh34l4zNcT;
	Wed, 27 Nov 2024 20:41:24 +0000 (UTC)
	(envelope-from kp@FreeBSD.org)
Received: by venus.codepro.be (Postfix, authenticated sender kp)
 id 1BD861E5EA;
	Wed, 27 Nov 2024 21:41:22 +0100 (CET)
From: Kristof Provost <kp@FreeBSD.org>
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
 dev-commits-src-main@freebsd.org
Subject: Re: git: 45d108ee147c - main - pf_route6(): one more __sdt_used
 annotation
Date: Wed, 27 Nov 2024 21:41:19 +0100
X-Mailer: MailMate (1.14r5937)
Message-ID: <9D315CFB-35BD-43FD-AAED-3FFF5E6B13E6@FreeBSD.org>
In-Reply-To: <Z0c51p6MUxrKKaKg@kib.kiev.ua>
References: <202411271431.4AREVRbs047403@gitrepo.freebsd.org>
 <5F91DA38-12C0-412C-9430-7632A0BBB763@FreeBSD.org>
 <Z0c51p6MUxrKKaKg@kib.kiev.ua>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable



On 27 Nov 2024, at 16:25, Konstantin Belousov wrote:

> On Wed, Nov 27, 2024 at 04:10:21PM +0100, Kristof Provost wrote:
>> On 27 Nov 2024, at 15:31, Konstantin Belousov wrote:
>>> The branch main has been updated by kib:
>>>
>>> URL: https://cgit.FreeBSD.org/src/commit/?id=3D45d108ee147cc8776a6595=
78da585b31a0ba5643
>>>
>>> commit 45d108ee147cc8776a659578da585b31a0ba5643
>>> Author:     Konstantin Belousov <kib@FreeBSD.org>
>>> AuthorDate: 2024-11-27 14:26:53 +0000
>>> Commit:     Konstantin Belousov <kib@FreeBSD.org>
>>> CommitDate: 2024-11-27 14:30:52 +0000
>>>
>>>     pf_route6(): one more __sdt_used annotation
>>
>> Thanks!
>>
>> I thought I=E2=80=99d fixed that when you reported the initial problem=
, but clearly I missed one.
>>
>> I wonder if we shouldn=E2=80=99t remove options KDTRACE_HOOKS from at =
least one kernel config to improve the odds of catching mistakes like thi=
s one pre-commit.
>>> From MINIMAL maybe?
>
> Perhaps it should be removed from LINT.
> Initial idea around it was that LINT should complement options
> in other kernels configs, I believe.

https://reviews.freebsd.org/D47821

I=E2=80=99ve also created https://reviews.freebsd.org/D47822 because it t=
urns out that removing only KDTRACE_HOOKS doesn=E2=80=99t actually build.=


Best regards,
Kristof

From nobody Wed Nov 27 22:27:09 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZj177cz5fsf2;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZj0nP6z4VCk;
	Wed, 27 Nov 2024 22:27:09 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746429;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=/0C6JrsydrAewFf7Fus11yS60kP2/PZDMvlm3kHylW0=;
	b=j0vFCRUhjgTntRdiawNueDlFT4OxmD14FJKnT2hMqg3r9bbkuQrk8037SIjhOxVg2R5eBc
	HwRL0Ta+A3o4URthHJ/qK4q5XkT/+TVuGYWL7d/+1JNrox+afxHscYD+scB+p33Ldu2akV
	DLMMTMgQncECztCQPAJPpH2VQkS/+QBjW2sP5fqLaaXlTW6jHTILzugRufvIN/jJWyp8dR
	ZpBoAgZQyxiVYSetq7G1VaA3W4FN7q93LiUUYwxI7b8fTQ3XFloXeIAqWo3rz8DJmD/t+k
	Qt1VJAOg8e7EBu7vF08UNjUkvdANv4rkk15p5zYauHVnUZpn0ljD9MKmeBGzfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746429;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=/0C6JrsydrAewFf7Fus11yS60kP2/PZDMvlm3kHylW0=;
	b=sDAAlcvBssK68KB1qh5acA7R6a4io4xdHJiI41qmLzb6aPE9LNHTkyJ9xPZt9cTVaTY8xt
	t7OlAS3cv9y8hNiTMHwoKl6O7tBXs3p0nvlXTso1U8eiNK29fWk6IXRHCghK3DAR2EmQ6f
	TqOsp0egei++0NSdPGjIpHwRQZXQmydpYk5resmGpWlG6RxYVpJu0OPobAxsiHux1pxUZC
	ttGt7kmBfFYslnjYBZTaLp38n/5nMoGwAZmFdvx8vCV/i5ffigszU/hDToOilb0f2yGt/z
	muN4zdCNSg4zJGGRHWVva4cgWmoiacZcbjH7KGd80jIMV10rspXhlkU/qAqWqQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746429; a=rsa-sha256; cv=none;
	b=ER0hBmbmC8qF+FHZ7ewNSQ7SCybkRA6zfAfTEaE0nO+rsyyXP9qlG9aG2uVZshE5I68HI6
	1lE9GtrXoKewXGxjfMV+fV4jqf3tvsS439zBgn4s4b8qB1Tqcchu45h98QOZfei+uOUkUy
	+u/v42/pY5yDb6EEiHnJh8Xfsqaj+LAx3+/agwSWBYUuEgtDUlJCn2AHWDM7JC8GGGnN0e
	IEFsXssOYzK9MjbLQK1cMl4ldtK/MmmZGerMkrR8r1hoC6+IoXlYVMqCn7khiVpsC74z+O
	DpjQqeuAQpXb3SmY6XQjJIBH0kPnCV3bDPqsocSnIYvMl2z6UN5/fzdIJbQXQA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZj0N8tz1RDS;
	Wed, 27 Nov 2024 22:27: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 4ARMR9jm026489;
	Wed, 27 Nov 2024 22:27:09 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMR9EZ026486;
	Wed, 27 Nov 2024 22:27:09 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:09 GMT
Message-Id: <202411272227.4ARMR9EZ026486@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 964687879a38 - main - syslogd: Create syslogd libcasper
  service
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 964687879a38034d3f0221d3c73b9add6cadb567
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=964687879a38034d3f0221d3c73b9add6cadb567

commit 964687879a38034d3f0221d3c73b9add6cadb567
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:03 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:03 +0000

    syslogd: Create syslogd libcasper service
    
    Once in capability mode, resource acquisition is not possible. To
    mitigate this, introduce a libcasper service that is responsible for
    fetching and returning new, requested resources to syslogd.
    
    Some resources must be packed into an nvlist to be properly transferred
    between syslogd and the libcasper process. The filed_to_nvlist() and
    nvlist_to_filed() functions are included to ease the packing process for
    filed structures.
    
    Two additional syslogd.h and syslogd_cap.h header files are included
    with shared declarations.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41463
---
 usr.sbin/syslogd/Makefile      |   5 ++
 usr.sbin/syslogd/syslogd.c     | 118 +--------------------------
 usr.sbin/syslogd/syslogd.h     | 179 +++++++++++++++++++++++++++++++++++++++++
 usr.sbin/syslogd/syslogd_cap.c |  49 +++++++++++
 usr.sbin/syslogd/syslogd_cap.h |  52 ++++++++++++
 5 files changed, 287 insertions(+), 116 deletions(-)

diff --git a/usr.sbin/syslogd/Makefile b/usr.sbin/syslogd/Makefile
index bc4a34367195..e9e7455ed2cc 100644
--- a/usr.sbin/syslogd/Makefile
+++ b/usr.sbin/syslogd/Makefile
@@ -13,6 +13,11 @@ SYSLOGD_DPACAKGE=	syslogd
 
 LIBADD=	util
 
+.if ${MK_CASPER} != "no"
+SRCS+=	syslogd_cap.c
+CFLAGS+= -DWITH_CASPER
+LIBADD+= cap_net casper nv
+.endif
 .if ${MK_INET_SUPPORT} != "no"
 CFLAGS+= -DINET
 .endif
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 8fcf3f06cf95..5f8c51d85fb3 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -67,12 +67,6 @@
  * To kill syslogd, send a signal 15 (terminate).  A signal 1 (hup) will
  * cause it to reread its configuration file.
  *
- * Defined Constants:
- *
- * MAXLINE -- the maximum line length that can be handled.
- * DEFUPRI -- the default priority for user messages
- * DEFSPRI -- the default priority for kernel messages
- *
  * Author: Eric Allman
  * extensive changes by Ralph Campbell
  * more extensive changes by Eric Allman (again)
@@ -82,8 +76,6 @@
  * Priority comparison code by Harlan Stenn.
  */
 
-#define	MAXLINE		8192		/* maximum line length */
-#define	MAXSVLINE	MAXLINE		/* maximum saved line length */
 #define	DEFUPRI		(LOG_USER|LOG_NOTICE)
 #define	DEFSPRI		(LOG_KERN|LOG_CRIT)
 #define	TIMERINTVL	30		/* interval for checking flush, mark */
@@ -135,11 +127,10 @@
 #include <utmpx.h>
 
 #include "pathnames.h"
+#include "syslogd.h"
+#include "syslogd_cap.h"
 #include "ttymsg.h"
 
-#define SYSLOG_NAMES
-#include <sys/syslog.h>
-
 static const char *ConfFile = _PATH_LOGCONF;
 static const char *PidFile = _PATH_LOGPID;
 static const char include_str[] = "include";
@@ -147,8 +138,6 @@ static const char include_ext[] = ".conf";
 
 #define	dprintf		if (Debug) printf
 
-#define	MAXUNAMES	20	/* maximum number of user names */
-
 #define	sstosa(ss)	((struct sockaddr *)(ss))
 #ifdef INET
 #define	sstosin(ss)	((struct sockaddr_in *)(void *)(ss))
@@ -202,117 +191,14 @@ static STAILQ_HEAD(, socklist) shead = STAILQ_HEAD_INITIALIZER(shead);
 #define	MARK		0x008	/* this message is a mark */
 #define	ISKERNEL	0x010	/* kernel generated message */
 
-/* Timestamps of log entries. */
-struct logtime {
-	struct tm	tm;
-	suseconds_t	usec;
-};
-
 /* Traditional syslog timestamp format. */
 #define	RFC3164_DATELEN	15
 #define	RFC3164_DATEFMT	"%b %e %H:%M:%S"
 
-enum filt_proptype {
-	FILT_PROP_NOOP,
-	FILT_PROP_MSG,
-	FILT_PROP_HOSTNAME,
-	FILT_PROP_PROGNAME,
-};
-
-enum filt_cmptype {
-	FILT_CMP_CONTAINS,
-	FILT_CMP_EQUAL,
-	FILT_CMP_STARTS,
-	FILT_CMP_REGEX,
-};
-
-/*
- * This structure holds a property-based filter
- */
-struct prop_filter {
-	enum filt_proptype prop_type;
-	enum filt_cmptype cmp_type;
-	uint8_t cmp_flags;
-#define	FILT_FLAG_EXCLUDE	(1 << 0)
-#define	FILT_FLAG_ICASE		(1 << 1)
-	union {
-		char *p_strval;
-		regex_t *p_re;
-	} pflt_uniptr;
-#define	pflt_strval	pflt_uniptr.p_strval
-#define	pflt_re		pflt_uniptr.p_re
-	size_t	pflt_strlen;
-};
-
-enum f_type {
-	F_UNUSED,	/* unused entry */
-	F_FILE,		/* regular file */
-	F_TTY,		/* terminal */
-	F_CONSOLE,	/* console terminal */
-	F_FORW,		/* remote machine */
-	F_USERS,	/* list of users */
-	F_WALL,		/* everyone logged on */
-	F_PIPE,		/* pipe to program */
-};
-
-/*
- * This structure represents the files that will have log
- * copies printed.
- * We require f_file to be valid if f_type is F_FILE, F_CONSOLE, F_TTY
- * or if f_type is F_PIPE and f_pid > 0.
- */
-struct filed {
-	enum f_type f_type;
-
-	/* Used for filtering. */
-	char	*f_host;			/* host from which to recd. */
-	char	*f_program;			/* program this applies to */
-	struct prop_filter *f_prop_filter;	/* property-based filter */
-	u_char	f_pmask[LOG_NFACILITIES+1];	/* priority mask */
-	u_char	f_pcmp[LOG_NFACILITIES+1];	/* compare priority */
-#define PRI_LT	0x1
-#define PRI_EQ	0x2
-#define PRI_GT	0x4
-
-	/* Logging destinations. */
-	int	f_file;				/* file descriptor */
-	int	f_flags;			/* file-specific flags */
-#define	FFLAG_SYNC	0x01
-#define	FFLAG_NEEDSYNC	0x02
-	union {
-		char	f_uname[MAXUNAMES][MAXLOGNAME];	/* F_WALL, F_USERS */
-		char	f_fname[MAXPATHLEN];	/* F_FILE, F_CONSOLE, F_TTY */
-		struct {
-			char	f_hname[MAXHOSTNAMELEN];
-			struct addrinfo *f_addr;
-		} f_forw;			/* F_FORW */
-		struct {
-			char	f_pname[MAXPATHLEN];
-			int	f_procdesc;
-		} f_pipe;			/* F_PIPE */
-	} f_un;
-#define	fu_uname	f_un.f_uname
-#define	fu_fname	f_un.f_fname
-#define	fu_forw_hname	f_un.f_forw.f_hname
-#define	fu_forw_addr	f_un.f_forw.f_addr
-#define	fu_pipe_pname	f_un.f_pipe.f_pname
-#define	fu_pipe_pd	f_un.f_pipe.f_procdesc
-
-	/* Book-keeping. */
-	char	f_prevline[MAXSVLINE];		/* last message logged */
-	time_t	f_time;				/* time this was last written */
-	struct logtime f_lasttime;		/* time of last occurrence */
-	int	f_prevpri;			/* pri of f_prevline */
-	size_t	f_prevlen;			/* length of f_prevline */
-	int	f_prevcount;			/* repetition cnt of prevline */
-	u_int	f_repeatcount;			/* number of "repeated" msgs */
-	STAILQ_ENTRY(filed) next;		/* next in linked list */
-};
 static STAILQ_HEAD(, filed) fhead =
     STAILQ_HEAD_INITIALIZER(fhead);	/* Log files that we write to */
 static struct filed consfile;		/* Console */
 
-
 /*
  * Queue of about-to-be dead processes we should watch out for.
  */
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
new file mode 100644
index 000000000000..ccf4787c087e
--- /dev/null
+++ b/usr.sbin/syslogd/syslogd.h
@@ -0,0 +1,179 @@
+/*-
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ * Copyright (c) 1983, 1988, 1993, 1994
+ *	The Regents of the University of California.  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 University 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 REGENTS 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 REGENTS 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.
+ */
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2018 Prodrive Technologies, https://prodrive-technologies.com/
+ * Author: Ed Schouten <ed@FreeBSD.org>
+ * Copyright (c) 2023 The FreeBSD Foundation
+ *
+ * This software was developed by Jake Freeland <jfree@FreeBSD.org>
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef _SYSLOGD_H_
+#define _SYSLOGD_H_
+
+#include <sys/param.h>
+#include <sys/queue.h>
+#include <sys/time.h>
+
+#define SYSLOG_NAMES
+#include <sys/syslog.h>
+
+#include <regex.h>
+
+#define	MAXLINE		8192		/* maximum line length */
+#define	MAXSVLINE	MAXLINE		/* maximum saved line length */
+#define	MAXUNAMES	20		/* maximum number of user names */
+
+/* Timestamps of log entries. */
+struct logtime {
+	struct tm	tm;
+	suseconds_t	usec;
+};
+
+enum filt_proptype {
+	FILT_PROP_NOOP,
+	FILT_PROP_MSG,
+	FILT_PROP_HOSTNAME,
+	FILT_PROP_PROGNAME,
+};
+
+enum filt_cmptype {
+	FILT_CMP_CONTAINS,
+	FILT_CMP_EQUAL,
+	FILT_CMP_STARTS,
+	FILT_CMP_REGEX,
+};
+
+/*
+ * This structure holds a property-based filter
+ */
+struct prop_filter {
+	enum filt_proptype prop_type;
+	enum filt_cmptype cmp_type;
+	uint8_t cmp_flags;
+#define	FILT_FLAG_EXCLUDE	(1 << 0)
+#define	FILT_FLAG_EXTENDED	(1 << 1)
+#define	FILT_FLAG_ICASE		(1 << 2)
+	char *pflt_strval;
+	size_t	pflt_strlen;
+	regex_t *pflt_re;
+};
+
+enum f_type {
+	F_UNUSED,	/* unused entry */
+	F_FILE,		/* regular file */
+	F_TTY,		/* terminal */
+	F_CONSOLE,	/* console terminal */
+	F_FORW,		/* remote machine */
+	F_USERS,	/* list of users */
+	F_WALL,		/* everyone logged on */
+	F_PIPE,		/* pipe to program */
+};
+
+/*
+ * This structure represents the files that will have log
+ * copies printed.
+ * We require f_file to be valid if f_type is F_FILE, F_CONSOLE, F_TTY
+ * or if f_type is F_PIPE and f_pid > 0.
+ */
+struct filed {
+	enum f_type f_type;
+
+	/* Used for filtering. */
+	char	*f_host;			/* host from which to recd. */
+	char	*f_program;			/* program this applies to */
+	struct prop_filter *f_prop_filter;	/* property-based filter */
+	u_char	f_pmask[LOG_NFACILITIES+1];	/* priority mask */
+	u_char	f_pcmp[LOG_NFACILITIES+1];	/* compare priority */
+#define PRI_LT	0x1
+#define PRI_EQ	0x2
+#define PRI_GT	0x4
+
+	/* Logging destinations. */
+	int	f_file;				/* file descriptor */
+	int	f_flags;			/* file-specific flags */
+#define	FFLAG_SYNC	0x01
+#define	FFLAG_NEEDSYNC	0x02
+	union {
+		char	f_uname[MAXUNAMES][MAXLOGNAME];	/* F_WALL, F_USERS */
+		char	f_fname[MAXPATHLEN];	/* F_FILE, F_CONSOLE, F_TTY */
+		struct {
+			char	f_hname[MAXHOSTNAMELEN];
+			struct addrinfo *f_addr;
+		} f_forw;			/* F_FORW */
+		struct {
+			char	f_pname[MAXPATHLEN];
+			int	f_procdesc;
+		} f_pipe;			/* F_PIPE */
+	} f_un;
+#define	fu_uname	f_un.f_uname
+#define	fu_fname	f_un.f_fname
+#define	fu_forw_hname	f_un.f_forw.f_hname
+#define	fu_forw_addr	f_un.f_forw.f_addr
+#define	fu_pipe_pname	f_un.f_pipe.f_pname
+#define	fu_pipe_pd	f_un.f_pipe.f_procdesc
+
+	/* Book-keeping. */
+	char	f_prevline[MAXSVLINE];		/* last message logged */
+	time_t	f_time;				/* time this was last written */
+	struct logtime f_lasttime;		/* time of last occurrence */
+	int	f_prevpri;			/* pri of f_prevline */
+	size_t	f_prevlen;			/* length of f_prevline */
+	int	f_prevcount;			/* repetition cnt of prevline */
+	u_int	f_repeatcount;			/* number of "repeated" msgs */
+	STAILQ_ENTRY(filed) next;		/* next in linked list */
+};
+
+#endif /* !_SYSLOGD_H_ */
diff --git a/usr.sbin/syslogd/syslogd_cap.c b/usr.sbin/syslogd/syslogd_cap.c
new file mode 100644
index 000000000000..71fc89854c58
--- /dev/null
+++ b/usr.sbin/syslogd/syslogd_cap.c
@@ -0,0 +1,49 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2023 The FreeBSD Foundation
+ *
+ * This software was developed by Jake Freeland <jfree@FreeBSD.org>
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/types.h>
+#include <sys/socket.h>
+
+#include <libcasper.h>
+
+#include <casper/cap_net.h>
+
+#include "syslogd_cap.h"
+
+/* This is where libcasper receives commands via nvlist. */
+static int
+casper_command(const char *cmd __unused, const nvlist_t *limits __unused,
+    nvlist_t *nvlin __unused, nvlist_t *nvlout __unused)
+{
+	int error = EINVAL;
+	return (error);
+}
+
+CREATE_SERVICE("syslogd.casper", NULL, casper_command, CASPER_SERVICE_STDIO);
diff --git a/usr.sbin/syslogd/syslogd_cap.h b/usr.sbin/syslogd/syslogd_cap.h
new file mode 100644
index 000000000000..fdfc969b3d0f
--- /dev/null
+++ b/usr.sbin/syslogd/syslogd_cap.h
@@ -0,0 +1,52 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2023 The FreeBSD Foundation
+ *
+ * This software was developed by Jake Freeland <jfree@FreeBSD.org>
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef _SYSLOGD_CAP_H_
+#define _SYSLOGD_CAP_H_
+
+#include <sys/nv.h>
+
+#include <libcasper.h>
+
+#include <casper/cap_net.h>
+
+#ifdef WITH_CASPER
+
+#include <sys/capsicum.h>
+#include <sys/dnv.h>
+
+#include <capsicum_helpers.h>
+#include <libcasper_service.h>
+
+#include "syslogd.h"
+
+#endif /* WITH_CASPER */
+
+#endif /* !_SYSLOGD_CAP_H_ */

From nobody Wed Nov 27 22:27:10 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZk2L1Cz5fsTn;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZk1j9lz4TsZ;
	Wed, 27 Nov 2024 22:27:10 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746430;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Dw3wrWcjgLYd+MEyPVpnnfF1FVSvHz2sd/SPHnpVJnA=;
	b=bYnZYFfKeLiq1Ztj873N8XbGbQWuHbyHj2qB5JqHfYWneSnwvP5T/ulq/KUWTv10bahZzx
	+25pmCmFXIFV9F6iR8QGuXaDAhqIDlI8WFAc/7pV8s4ocsn8IcxgpJjnQCTc5ULwCHQjGp
	defu7HN1ub/t4NiJpJhqhRzEim2H1p1wlXhkOBY3aY8GB7IHTiUFYiMU6wHN7cZNxq/pmP
	XR4K5Uvz9tEtyrxDhi00UpETfCKqhwH3AOgBQWaoPDyH7zxsCjhsxX6BztwcB2IlPJRoYZ
	uMQC0v5qwZaNhUvHirQfYmsrV2ofRPxRtJOhr8B94H8xefrcxIaSamptTJo4Nw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746430;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Dw3wrWcjgLYd+MEyPVpnnfF1FVSvHz2sd/SPHnpVJnA=;
	b=mo5Un0N4X9uPPo2hiji/KgMWY05J0qpFW8vWvMafnqut0az3SJMZ0GIZl8kLfs/cX+hn+2
	vI2Mi64pgj3rqcEtw/nT1vUQyghBbCl5PAKCGpGhNtnZiLye40QuICmDOyxherSXayRn2k
	qj5Ktznt5vv0KDLXkD3uzAKvBPQlX3ERY6H3WNBQHRWCe4/gd5zFtLNCgqZF8fLT2X55+y
	D+zlp/OJlK5zbxKrtcqEqb7DAbVcDcqHxoPhV0jyBNL08opFPgmcHb7av0qKktVJ8tQ3cf
	cZ7DqlyUlFLukAWep4ku+poPhg1P9vuHsGfR/A9a63pIJXqoAFPBp9bEMbPlTw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746430; a=rsa-sha256; cv=none;
	b=fEq6IMhzQrCfU/vnvIfgCI3/zscKlNG9vbgDUOQstqRfkOhHSlq3erSFYaLhTE9XMdOUIj
	nOOHaNmaE0t/WpYuGA8D4BMKKSONzYHQsDNtaSXsnVW8ufVAB3GTrxBw8F5GHUEUKRz3lB
	Vfl3zC864AhjLLqXJek+GjE0KiLvVBSRKUe/hxHjgHXBxDVJcHMoru+ydKdDOLR6RtEltM
	5re60xdx2gJuIFwCkquKm8wQhPz13bRdD3G/Sw69O1oKs13FUggjj/pVsabaTI/WM8tq8K
	CnQ/iN6ltEuJZoGeNurwpEusAj1oG8J87KmCKuBGVXPAntuW1mlNTwTV7Ojcyw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZk1KW3z1RT4;
	Wed, 27 Nov 2024 22:27: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 4ARMRAm3026537;
	Wed, 27 Nov 2024 22:27:10 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRAAf026534;
	Wed, 27 Nov 2024 22:27:10 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:10 GMT
Message-Id: <202411272227.4ARMRAAf026534@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: ad607893c9a3 - main - syslogd: Use anonymous union
  in struct filed
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: ad607893c9a38b6626e9e83842759f81d87173a1
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=ad607893c9a38b6626e9e83842759f81d87173a1

commit ad607893c9a38b6626e9e83842759f81d87173a1
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:08 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:08 +0000

    syslogd: Use anonymous union in struct filed
    
    Do not use macros to access unioned struct members. Use an anonymous
    union and access union member names directly.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41703
---
 usr.sbin/syslogd/syslogd.c | 97 ++++++++++++++++++++++------------------------
 usr.sbin/syslogd/syslogd.h | 12 ++----
 2 files changed, 50 insertions(+), 59 deletions(-)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 5f8c51d85fb3..8937aa72804d 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -356,9 +356,9 @@ close_filed(struct filed *f)
 
 	switch (f->f_type) {
 	case F_FORW:
-		if (f->fu_forw_addr != NULL) {
-			freeaddrinfo(f->fu_forw_addr);
-			f->fu_forw_addr = NULL;
+		if (f->f_addr != NULL) {
+			freeaddrinfo(f->f_addr);
+			f->f_addr = NULL;
 		}
 		/* FALLTHROUGH */
 	case F_FILE:
@@ -367,9 +367,9 @@ close_filed(struct filed *f)
 		f->f_type = F_UNUSED;
 		break;
 	case F_PIPE:
-		if (f->fu_pipe_pd >= 0) {
-			deadq_enter(f->fu_pipe_pd);
-			f->fu_pipe_pd = -1;
+		if (f->f_procdesc >= 0) {
+			deadq_enter(f->f_procdesc);
+			f->f_procdesc = -1;
 		}
 		break;
 	default:
@@ -682,8 +682,8 @@ main(int argc, char *argv[])
 
 	consfile.f_type = F_CONSOLE;
 	consfile.f_file = -1;
-	(void)strlcpy(consfile.fu_fname, _PATH_CONSOLE + sizeof(_PATH_DEV) - 1,
-	    sizeof(consfile.fu_fname));
+	(void)strlcpy(consfile.f_fname, _PATH_CONSOLE + sizeof(_PATH_DEV) - 1,
+	    sizeof(consfile.f_fname));
 
 	nulldesc = open(_PATH_DEVNULL, O_RDWR);
 	if (nulldesc == -1) {
@@ -1734,18 +1734,18 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 
 	switch (f->f_type) {
 	case F_FORW:
-		dprintf(" %s", f->fu_forw_hname);
-		switch (f->fu_forw_addr->ai_family) {
+		dprintf(" %s", f->f_hname);
+		switch (f->f_addr->ai_family) {
 #ifdef INET
 		case AF_INET:
 			dprintf(":%d\n",
-			    ntohs(satosin(f->fu_forw_addr->ai_addr)->sin_port));
+			    ntohs(satosin(f->f_addr->ai_addr)->sin_port));
 			break;
 #endif
 #ifdef INET6
 		case AF_INET6:
 			dprintf(":%d\n",
-			    ntohs(satosin6(f->fu_forw_addr->ai_addr)->sin6_port));
+			    ntohs(satosin6(f->f_addr->ai_addr)->sin6_port));
 			break;
 #endif
 		default:
@@ -1758,7 +1758,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 #endif
 
 		lsent = 0;
-		for (r = f->fu_forw_addr; r; r = r->ai_next) {
+		for (r = f->f_addr; r; r = r->ai_next) {
 			memset(&msghdr, 0, sizeof(msghdr));
 			msghdr.msg_name = r->ai_addr;
 			msghdr.msg_namelen = r->ai_addrlen;
@@ -1808,7 +1808,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		break;
 
 	case F_FILE:
-		dprintf(" %s\n", f->fu_fname);
+		dprintf(" %s\n", f->f_fname);
 		iovlist_append(il, "\n");
 		if (writev(f->f_file, il->iov, il->iovcnt) < 0) {
 			/*
@@ -1820,7 +1820,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 				int e = errno;
 				close_filed(f);
 				errno = e;
-				logerror(f->fu_fname);
+				logerror(f->f_fname);
 			}
 		} else if ((flags & SYNC_FILE) && (f->f_flags & FFLAG_SYNC)) {
 			f->f_flags |= FFLAG_NEEDSYNC;
@@ -1829,17 +1829,17 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		break;
 
 	case F_PIPE:
-		dprintf(" %s\n", f->fu_pipe_pname);
+		dprintf(" %s\n", f->f_pname);
 		iovlist_append(il, "\n");
-		if (f->fu_pipe_pd == -1) {
-			if ((f->f_file = p_open(f->fu_pipe_pname,
-			    &f->fu_pipe_pd)) < 0) {
-				logerror(f->fu_pipe_pname);
+		if (f->f_procdesc == -1) {
+			if ((f->f_file = p_open(f->f_pname,
+			    &f->f_procdesc)) < 0) {
+				logerror(f->f_pname);
 				break;
 			}
 		}
 		if (writev(f->f_file, il->iov, il->iovcnt) < 0) {
-			logerror(f->fu_pipe_pname);
+			logerror(f->f_pname);
 			close_filed(f);
 		}
 		break;
@@ -1852,10 +1852,10 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		/* FALLTHROUGH */
 
 	case F_TTY:
-		dprintf(" %s%s\n", _PATH_DEV, f->fu_fname);
+		dprintf(" %s%s\n", _PATH_DEV, f->f_fname);
 		iovlist_append(il, "\r\n");
 		errno = 0;	/* ttymsg() only sometimes returns an errno */
-		if ((msgret = ttymsg(il->iov, il->iovcnt, f->fu_fname, 10))) {
+		if ((msgret = ttymsg(il->iov, il->iovcnt, f->f_fname, 10))) {
 			f->f_type = F_UNUSED;
 			logerror(msgret);
 		}
@@ -2100,9 +2100,9 @@ wallmsg(struct filed *f, struct iovec *iov, const int iovlen)
 		}
 		/* should we send the message to this user? */
 		for (i = 0; i < MAXUNAMES; i++) {
-			if (!f->fu_uname[i][0])
+			if (!f->f_uname[i][0])
 				break;
-			if (!strcmp(f->fu_uname[i], ut->ut_user)) {
+			if (!strcmp(f->f_uname[i], ut->ut_user)) {
 				if ((p = ttymsg_check(iov, iovlen, ut->ut_line,
 				    TTYMSGTIME)) != NULL) {
 					errno = 0;	/* already in msg */
@@ -2520,44 +2520,43 @@ init(bool reload)
 			printf("%s: ", TypeNames[f->f_type]);
 			switch (f->f_type) {
 			case F_FILE:
-				printf("%s", f->fu_fname);
+				printf("%s", f->f_fname);
 				break;
 
 			case F_CONSOLE:
 			case F_TTY:
-				printf("%s%s", _PATH_DEV, f->fu_fname);
+				printf("%s%s", _PATH_DEV, f->f_fname);
 				break;
 
 			case F_FORW:
-				switch (f->fu_forw_addr->ai_family) {
+				switch (f->f_addr->ai_family) {
 #ifdef INET
 				case AF_INET:
-					port = ntohs(satosin(f->fu_forw_addr->ai_addr)->sin_port);
+					port = ntohs(satosin(f->f_addr->ai_addr)->sin_port);
 					break;
 #endif
 #ifdef INET6
 				case AF_INET6:
-					port = ntohs(satosin6(f->fu_forw_addr->ai_addr)->sin6_port);
+					port = ntohs(satosin6(f->f_addr->ai_addr)->sin6_port);
 					break;
 #endif
 				default:
 					port = 0;
 				}
 				if (port != 514) {
-					printf("%s:%d",
-						f->fu_forw_hname, port);
+					printf("%s:%d", f->f_hname, port);
 				} else {
-					printf("%s", f->fu_forw_hname);
+					printf("%s", f->f_hname);
 				}
 				break;
 
 			case F_PIPE:
-				printf("%s", f->fu_pipe_pname);
+				printf("%s", f->f_pname);
 				break;
 
 			case F_USERS:
-				for (i = 0; i < MAXUNAMES && *f->fu_uname[i]; i++)
-					printf("%s, ", f->fu_uname[i]);
+				for (i = 0; i < MAXUNAMES && *f->f_uname[i]; i++)
+					printf("%s, ", f->f_uname[i]);
 				break;
 			default:
 				break;
@@ -2880,8 +2879,8 @@ parse_action(const char *p, struct filed *f)
 			 * scan forward to see if there is a port defined.
 			 * so we can't use strlcpy..
 			 */
-			i = sizeof(f->fu_forw_hname);
-			tp = f->fu_forw_hname;
+			i = sizeof(f->f_hname);
+			tp = f->f_hname;
 			p++;
 
 			/*
@@ -2909,13 +2908,12 @@ parse_action(const char *p, struct filed *f)
 			.ai_family = family,
 			.ai_socktype = SOCK_DGRAM
 		};
-		error = getaddrinfo(f->fu_forw_hname,
-				p ? p : "syslog", &hints, &res);
+		error = getaddrinfo(f->f_hname, p ? p : "syslog", &hints, &res);
 		if (error) {
 			logerror(gai_strerror(error));
 			break;
 		}
-		f->fu_forw_addr = res;
+		f->f_addr = res;
 		f->f_type = F_FORW;
 		break;
 
@@ -2932,18 +2930,17 @@ parse_action(const char *p, struct filed *f)
 				f->f_type = F_CONSOLE;
 			else
 				f->f_type = F_TTY;
-			(void)strlcpy(f->fu_fname, p + sizeof(_PATH_DEV) - 1,
-			    sizeof(f->fu_fname));
+			(void)strlcpy(f->f_fname, p + sizeof(_PATH_DEV) - 1,
+			    sizeof(f->f_fname));
 		} else {
-			(void)strlcpy(f->fu_fname, p, sizeof(f->fu_fname));
+			(void)strlcpy(f->f_fname, p, sizeof(f->f_fname));
 			f->f_type = F_FILE;
 		}
 		break;
 
 	case '|':
-		f->fu_pipe_pd = -1;
-		(void)strlcpy(f->fu_pipe_pname, p + 1,
-		    sizeof(f->fu_pipe_pname));
+		f->f_procdesc = -1;
+		(void)strlcpy(f->f_pname, p + 1, sizeof(f->f_pname));
 		f->f_type = F_PIPE;
 		break;
 
@@ -2955,11 +2952,11 @@ parse_action(const char *p, struct filed *f)
 		for (i = 0; i < MAXUNAMES && *p; i++) {
 			for (q = p; *q && *q != ','; )
 				q++;
-			(void)strncpy(f->fu_uname[i], p, MAXLOGNAME - 1);
+			(void)strncpy(f->f_uname[i], p, MAXLOGNAME - 1);
 			if ((q - p) >= MAXLOGNAME)
-				f->fu_uname[i][MAXLOGNAME - 1] = '\0';
+				f->f_uname[i][MAXLOGNAME - 1] = '\0';
 			else
-				f->fu_uname[i][q - p] = '\0';
+				f->f_uname[i][q - p] = '\0';
 			while (*q == ',' || *q == ' ')
 				q++;
 			p = q;
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
index ccf4787c087e..012338d2c7c1 100644
--- a/usr.sbin/syslogd/syslogd.h
+++ b/usr.sbin/syslogd/syslogd.h
@@ -152,18 +152,12 @@ struct filed {
 		struct {
 			char	f_hname[MAXHOSTNAMELEN];
 			struct addrinfo *f_addr;
-		} f_forw;			/* F_FORW */
+		};				/* F_FORW */
 		struct {
 			char	f_pname[MAXPATHLEN];
 			int	f_procdesc;
-		} f_pipe;			/* F_PIPE */
-	} f_un;
-#define	fu_uname	f_un.f_uname
-#define	fu_fname	f_un.f_fname
-#define	fu_forw_hname	f_un.f_forw.f_hname
-#define	fu_forw_addr	f_un.f_forw.f_addr
-#define	fu_pipe_pname	f_un.f_pipe.f_pname
-#define	fu_pipe_pd	f_un.f_pipe.f_procdesc
+		};				/* F_PIPE */
+	};
 
 	/* Book-keeping. */
 	char	f_prevline[MAXSVLINE];		/* last message logged */

From nobody Wed Nov 27 22:27:11 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZl66Wcz5fsWs;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZl2fbhz4V0H;
	Wed, 27 Nov 2024 22:27:11 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746431;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ehYHzdCcZlbOxK96tsrryfT4mmTpXGCOdrGsRXE9rlg=;
	b=lkALB9FOpibt+KPnJlIdZB80FtJib+AwJfcKv7yY8XU3zbO1Rl7295SExMS1ep3kcWcLnz
	HzrAu6VKSpZXuPhY+CnQi7Y14S6FQzNxAMZiFgDkT3EI2IuYQhTEcw+9p8q0pjpmQzQJeP
	hQV37qlDvgDhZz5LohArIYoABsp/RyP2rUkUMsC5cYDNrCtQZY+tbFn1DpTD/cAUyagqmI
	QU+U+fLSfQuomcHzTjpigbu4lxksMw7HBbznDrEJjbOIUXZuXZFLeQMOzF+lmp/0BJiAtE
	+vlEI3bSIorvttsNrNPOL/DT5Q3pehSp3Ukf5i0aZgXvrHnX9MskzZcOVX1L5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746431;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ehYHzdCcZlbOxK96tsrryfT4mmTpXGCOdrGsRXE9rlg=;
	b=v0s0uOqJKU31RfLfSi86LkYvr78wpWl+qzOjzm2CdTAHcHkJUREvdDeVRIgTOYGOuUw8lJ
	dEyopfL8LdpFHMGi9UP6v3zQck9COp1bFeTwUrovBQ2+n2qlEPnSBTEiVvf5yEVw69Rp4V
	GEt3D19nC7W8e64wbI9VMZI7fgGatMfckQ84nbJleSlnxqW9+qvm0hOD7cjikQxNUxuFlI
	Ecg0Mx1S4k6Z8Q/5vW65h+0EarvJ53FTWRC6FCIDRaLuz3L3C7SELGur49YmwKwNB0ouhk
	pbgUxJCNtvTr9q8QVXn2H+NVHW+gJFixRUu/7L0VT5SH10UfMc5fPVwCQK+Ieg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746431; a=rsa-sha256; cv=none;
	b=FQ/6C+D+U8YLKVedolpFb1DRE5w5Z70ss62oGVd3dUyebekhx1t/qU6CUbm2aoN03tlU1a
	0bfjCIX55Hotqco/IG6yzU9q411PUJTMR6I0yn/fD2Pw5I+PL67iEO/2+ULl664X3l/4nj
	tR4ZQJR7Sia5s7jmACROO7+lNi6SJcaGmx3wgarylWb7yo4lqmMjBfCOJiSaICqN+T3ak+
	k32uJddA2hy9H3IzrzGVBceNMfZ2Z7gfhNFAcyXRKt7v8f4SsAAiWC91n7vUBnJBgWkjAj
	aV/rG4XZXLnfKO1WpIZxRalA78hVj8Uwdkz2pMzvcL9zUqcNaku/rM8VoMoorw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZl1zwKz1RT5;
	Wed, 27 Nov 2024 22:27: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 4ARMRBPg026586;
	Wed, 27 Nov 2024 22:27:11 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRBxh026583;
	Wed, 27 Nov 2024 22:27:11 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:11 GMT
Message-Id: <202411272227.4ARMRBxh026583@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 2567168dc498 - main - syslogd: Refresh configuration
  using libcasper
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 2567168dc49869475db79176bf5f6ae9761bc75a
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=2567168dc49869475db79176bf5f6ae9761bc75a

commit 2567168dc49869475db79176bf5f6ae9761bc75a
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:12 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:12 +0000

    syslogd: Refresh configuration using libcasper
    
    When a SIGHUP signal is sent to syslogd, the configuration is reparsed,
    leading to new resource acquisition.
    
    If syslogd is running in capability mode and a SIGHUP is received, new
    resources cannot be acquired. To mitigate this issue, libcasper is used
    to parse the configuration.
    
    The libcasper process runs outside of capability mode and is capable of
    parsing syslogd's configuration and obtaining new resources. These
    resources are then sent to the syslogd process via nvlist.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41464
---
 usr.sbin/syslogd/Makefile             |   3 +-
 usr.sbin/syslogd/syslogd.c            | 234 ++++++++++++---------------
 usr.sbin/syslogd/syslogd.h            |  15 +-
 usr.sbin/syslogd/syslogd_cap.c        |   9 +-
 usr.sbin/syslogd/syslogd_cap.h        |  14 ++
 usr.sbin/syslogd/syslogd_cap_config.c | 296 ++++++++++++++++++++++++++++++++++
 6 files changed, 436 insertions(+), 135 deletions(-)

diff --git a/usr.sbin/syslogd/Makefile b/usr.sbin/syslogd/Makefile
index e9e7455ed2cc..4088b2e03651 100644
--- a/usr.sbin/syslogd/Makefile
+++ b/usr.sbin/syslogd/Makefile
@@ -14,7 +14,8 @@ SYSLOGD_DPACAKGE=	syslogd
 LIBADD=	util
 
 .if ${MK_CASPER} != "no"
-SRCS+=	syslogd_cap.c
+SRCS+=	syslogd_cap.c \
+	syslogd_cap_config.c
 CFLAGS+= -DWITH_CASPER
 LIBADD+= cap_net casper nv
 .endif
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 8937aa72804d..0c05884cc17d 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -131,7 +131,7 @@
 #include "syslogd_cap.h"
 #include "ttymsg.h"
 
-static const char *ConfFile = _PATH_LOGCONF;
+const char *ConfFile = _PATH_LOGCONF;
 static const char *PidFile = _PATH_LOGPID;
 static const char include_str[] = "include";
 static const char include_ext[] = ".conf";
@@ -276,7 +276,7 @@ static int	nulldesc;	/* /dev/null descriptor */
 static bool	Debug;		/* debug flag */
 static bool	Foreground = false; /* Run in foreground, instead of daemonizing */
 static bool	resolve = true;	/* resolve hostname */
-static char	LocalHostName[MAXHOSTNAMELEN];	/* our hostname */
+char		LocalHostName[MAXHOSTNAMELEN];	/* our hostname */
 static const char *LocalDomain;	/* our local domain name */
 static bool	Initialized;	/* set when we have initialized ourselves */
 static int	MarkInterval = 20 * 60;	/* interval between marks in seconds */
@@ -313,7 +313,7 @@ struct iovlist;
 static bool	allowaddr(char *);
 static void	addpeer(const char *, const char *, mode_t);
 static void	addsock(const char *, const char *, mode_t);
-static void	cfline(const char *, const char *, const char *, const char *);
+static nvlist_t *cfline(const char *, const char *, const char *, const char *);
 static const char *cvthname(struct sockaddr *);
 static void	deadq_enter(int);
 static void	deadq_remove(struct deadq_entry *);
@@ -325,7 +325,6 @@ static void	fprintlog_first(struct filed *, const char *, const char *,
 static void	fprintlog_write(struct filed *, struct iovlist *, int);
 static void	fprintlog_successive(struct filed *, int);
 static void	init(bool);
-static void	logerror(const char *);
 static void	logmsg(int, const struct logtime *, const char *, const char *,
     const char *, const char *, const char *, const char *, int);
 static void	markit(void);
@@ -335,7 +334,7 @@ static int	socklist_recv_sock(struct socklist *);
 static int	skip_message(const char *, const char *, int);
 static int	evaluate_prop_filter(const struct prop_filter *filter,
     const char *value);
-static struct prop_filter *prop_filter_compile(const char *);
+static nvlist_t *prop_filter_compile(const char *);
 static void	parsemsg(const char *, char *);
 static void	printsys(char *);
 static int	p_open(const char *, pid_t *);
@@ -1387,7 +1386,7 @@ skip_message(const char *name, const char *spec, int checkcase)
 	int exclude = 0;
 	/* Behaviour on explicit match */
 
-	if (spec == NULL)
+	if (spec == NULL || *spec == '\0')
 		return (0);
 	switch (*spec) {
 	case '-':
@@ -1445,7 +1444,7 @@ evaluate_prop_filter(const struct prop_filter *filter, const char *value)
 
 	/* a shortcut for equal with different length is always false */
 	if (filter->cmp_type == FILT_CMP_EQUAL &&
-	    valuelen != filter->pflt_strlen)
+	    valuelen != strlen(filter->pflt_strval))
 		return (!exclude);
 
 	if (filter->cmp_flags & FILT_FLAG_ICASE)
@@ -2178,7 +2177,7 @@ cvthname(struct sockaddr *f)
 /*
  * Print syslogd errors some place.
  */
-static void
+void
 logerror(const char *msg)
 {
 	char buf[512];
@@ -2255,8 +2254,8 @@ configfiles(const struct dirent *dp)
 	return (1);
 }
 
-static void
-parseconfigfile(FILE *cf, bool allow_includes)
+static nvlist_t *
+parseconfigfile(FILE *cf, bool allow_includes, nvlist_t *nvl_conf)
 {
 	FILE *cf2;
 	struct dirent **ent;
@@ -2316,7 +2315,7 @@ parseconfigfile(FILE *cf, bool allow_includes)
 				if (cf2 == NULL)
 					continue;
 				dprintf("reading %s\n", file);
-				parseconfigfile(cf2, false);
+				parseconfigfile(cf2, false, nvl_conf);
 				fclose(cf2);
 			}
 			free(ent);
@@ -2386,29 +2385,55 @@ parseconfigfile(FILE *cf, bool allow_includes)
 		}
 		for (i = strlen(cline) - 1; i >= 0 && isspace(cline[i]); i--)
 			cline[i] = '\0';
-		cfline(cline, prog, host, pfilter);
+		nvlist_append_nvlist_array(nvl_conf, "filed_list",
+		    cfline(cline, prog, host, pfilter));
+
 	}
+	return (nvl_conf);
 }
 
-static void
+nvlist_t *
 readconfigfile(const char *path)
 {
 	FILE *cf;
+	nvlist_t *nvl_conf = nvlist_create(0);
 
 	if ((cf = fopen(path, "r")) != NULL) {
-		parseconfigfile(cf, true);
+		nvl_conf = parseconfigfile(cf, true, nvl_conf);
 		(void)fclose(cf);
 	} else {
-		dprintf("cannot open %s\n", ConfFile);
-		cfline("*.ERR\t/dev/console", "*", "*", "*");
-		cfline("*.PANIC\t*", "*", "*", "*");
+		dprintf("cannot open %s\n", path);
+		nvlist_append_nvlist_array(nvl_conf, "filed_list",
+		    cfline("*.ERR\t/dev/console", "*", "*", "*"));
+		nvlist_append_nvlist_array(nvl_conf, "filed_list",
+		    cfline("*.PANIC\t*", "*", "*", "*"));
+	}
+	return (nvl_conf);
+}
+
+static void
+fill_flist(nvlist_t *nvl_conf)
+{
+	const nvlist_t * const *filed_list;
+	size_t nfileds;
+
+	if (!nvlist_exists_nvlist_array(nvl_conf, "filed_list"))
+		return;
+	filed_list = nvlist_get_nvlist_array(nvl_conf, "filed_list",
+	    &nfileds);
+	for (size_t i = 0; i < nfileds; ++i) {
+		struct filed *f;
+
+		f = nvlist_to_filed(filed_list[i]);
+		STAILQ_INSERT_TAIL(&fhead, f, next);
 	}
+	nvlist_destroy(nvl_conf);
 }
 
 /*
  * Close all open log files.
  */
-static void
+void
 closelogfiles(void)
 {
 	struct filed *f;
@@ -2433,14 +2458,12 @@ closelogfiles(void)
 			break;
 		}
 
-		free(f->f_program);
-		free(f->f_host);
 		if (f->f_prop_filter) {
 			switch (f->f_prop_filter->cmp_type) {
 			case FILT_CMP_REGEX:
 				regfree(f->f_prop_filter->pflt_re);
 				free(f->f_prop_filter->pflt_re);
-				break;
+				/* FALLTHROUGH */
 			case FILT_CMP_CONTAINS:
 			case FILT_CMP_EQUAL:
 			case FILT_CMP_STARTS:
@@ -2504,7 +2527,7 @@ init(bool reload)
 
 	Initialized = false;
 	closelogfiles();
-	readconfigfile(ConfFile);
+	fill_flist(readconfigfile(ConfFile));
 	Initialized = true;
 
 	if (Debug) {
@@ -2561,7 +2584,7 @@ init(bool reload)
 			default:
 				break;
 			}
-			if (f->f_program)
+			if (*f->f_program != '\0')
 				printf(" (%s)", f->f_program);
 			printf("\n");
 		}
@@ -2597,29 +2620,18 @@ init(bool reload)
 /*
  * Compile property-based filter.
  */
-static struct prop_filter *
+static nvlist_t *
 prop_filter_compile(const char *cfilter)
 {
-	struct prop_filter *pfilter;
+	nvlist_t *nvl_pfilter;
+	struct prop_filter pfilter = { };
 	char *filter, *filter_endpos, *filter_begpos, *p;
 	char **ap, *argv[2] = {NULL, NULL};
-	int re_flags = REG_NOSUB;
 	int escaped;
 
-	pfilter = calloc(1, sizeof(*pfilter));
-	if (pfilter == NULL) {
-		logerror("pfilter calloc");
-		exit(1);
-	}
-	if (*cfilter == '*') {
-		pfilter->prop_type = FILT_PROP_NOOP;
-		return (pfilter);
-	}
 	filter = strdup(cfilter);
-	if (filter == NULL) {
-		logerror("strdup");
-		exit(1);
-	}
+	if (filter == NULL)
+		err(1, "strdup");
 	filter_begpos = filter;
 
 	/*
@@ -2640,48 +2652,48 @@ prop_filter_compile(const char *cfilter)
 	}
 
 	if (argv[0] == NULL || argv[1] == NULL) {
-		logerror("filter parse error");
+		dprintf("filter parse error");
 		goto error;
 	}
 
 	/* fill in prop_type */
 	if (strcasecmp(argv[0], "msg") == 0)
-		pfilter->prop_type = FILT_PROP_MSG;
+		pfilter.prop_type = FILT_PROP_MSG;
 	else if (strcasecmp(argv[0], "hostname") == 0)
-		pfilter->prop_type = FILT_PROP_HOSTNAME;
+		pfilter.prop_type = FILT_PROP_HOSTNAME;
 	else if (strcasecmp(argv[0], "source") == 0)
-		pfilter->prop_type = FILT_PROP_HOSTNAME;
+		pfilter.prop_type = FILT_PROP_HOSTNAME;
 	else if (strcasecmp(argv[0], "programname") == 0)
-		pfilter->prop_type = FILT_PROP_PROGNAME;
+		pfilter.prop_type = FILT_PROP_PROGNAME;
 	else {
-		logerror("unknown property");
+		dprintf("unknown property");
 		goto error;
 	}
 
 	/* full in cmp_flags (i.e. !contains, icase_regex, etc.) */
 	if (*argv[1] == '!') {
-		pfilter->cmp_flags |= FILT_FLAG_EXCLUDE;
+		pfilter.cmp_flags |= FILT_FLAG_EXCLUDE;
 		argv[1]++;
 	}
 	if (strncasecmp(argv[1], "icase_", (sizeof("icase_") - 1)) == 0) {
-		pfilter->cmp_flags |= FILT_FLAG_ICASE;
+		pfilter.cmp_flags |= FILT_FLAG_ICASE;
 		argv[1] += sizeof("icase_") - 1;
 	}
 
 	/* fill in cmp_type */
 	if (strcasecmp(argv[1], "contains") == 0)
-		pfilter->cmp_type = FILT_CMP_CONTAINS;
+		pfilter.cmp_type = FILT_CMP_CONTAINS;
 	else if (strcasecmp(argv[1], "isequal") == 0)
-		pfilter->cmp_type = FILT_CMP_EQUAL;
+		pfilter.cmp_type = FILT_CMP_EQUAL;
 	else if (strcasecmp(argv[1], "startswith") == 0)
-		pfilter->cmp_type = FILT_CMP_STARTS;
+		pfilter.cmp_type = FILT_CMP_STARTS;
 	else if (strcasecmp(argv[1], "regex") == 0)
-		pfilter->cmp_type = FILT_CMP_REGEX;
+		pfilter.cmp_type = FILT_CMP_REGEX;
 	else if (strcasecmp(argv[1], "ereregex") == 0) {
-		pfilter->cmp_type = FILT_CMP_REGEX;
-		re_flags |= REG_EXTENDED;
+		pfilter.cmp_type = FILT_CMP_REGEX;
+		pfilter.cmp_flags |= REG_EXTENDED;
 	} else {
-		logerror("unknown cmp function");
+		dprintf("unknown cmp function");
 		goto error;
 	}
 
@@ -2693,7 +2705,7 @@ prop_filter_compile(const char *cfilter)
 	/* remove leading whitespace and check for '"' next character  */
 	filter += strspn(filter, ", \t\n");
 	if (*filter != '"' || strlen(filter) < 3) {
-		logerror("property value parse error");
+		dprintf("property value parse error");
 		goto error;
 	}
 	filter++;
@@ -2725,33 +2737,18 @@ prop_filter_compile(const char *cfilter)
 
 	/* We should not have anything but whitespace left after closing '"' */
 	if (*p != '\0' && strspn(p, " \t\n") != strlen(p)) {
-		logerror("property value parse error");
+		dprintf("property value parse error");
 		goto error;
 	}
 
-	if (pfilter->cmp_type == FILT_CMP_REGEX) {
-		pfilter->pflt_re = calloc(1, sizeof(*pfilter->pflt_re));
-		if (pfilter->pflt_re == NULL) {
-			logerror("RE calloc() error");
-			goto error;
-		}
-		if (pfilter->cmp_flags & FILT_FLAG_ICASE)
-			re_flags |= REG_ICASE;
-		if (regcomp(pfilter->pflt_re, filter, re_flags) != 0) {
-			logerror("RE compilation error");
-			goto error;
-		}
-	} else {
-		pfilter->pflt_strval = strdup(filter);
-		pfilter->pflt_strlen = strlen(filter);
-	}
+	pfilter.pflt_strval = filter;
+	/* An nvlist is heap allocated heap here. */
+	nvl_pfilter = prop_filter_to_nvlist(&pfilter);
 
 	free(filter_begpos);
-	return (pfilter);
+	return (nvl_pfilter);
 error:
 	free(filter_begpos);
-	free(pfilter->pflt_re);
-	free(pfilter);
 	return (NULL);
 }
 
@@ -2760,7 +2757,7 @@ parse_selector(const char *p, struct filed *f)
 {
 	int i, pri;
 	int pri_done = 0, pri_cmp = 0, pri_invert = 0;
-	char *bp, buf[LINE_MAX], ebuf[100];
+	char *bp, buf[LINE_MAX];
 	const char *q;
 
 	/* find the end of this facility name list */
@@ -2812,10 +2809,7 @@ parse_selector(const char *p, struct filed *f)
 
 		pri = decode(buf, prioritynames);
 		if (pri < 0) {
-			errno = 0;
-			(void)snprintf(ebuf, sizeof(ebuf),
-			    "unknown priority name \"%s\"", buf);
-			logerror(ebuf);
+			dprintf("unknown priority name \"%s\"", buf);
 			free(f);
 			return (NULL);
 		}
@@ -2839,11 +2833,7 @@ parse_selector(const char *p, struct filed *f)
 		} else {
 			i = decode(buf, facilitynames);
 			if (i < 0) {
-				errno = 0;
-				(void)snprintf(ebuf, sizeof(ebuf),
-				    "unknown facility name \"%s\"",
-				    buf);
-				logerror(ebuf);
+				dprintf("unknown facility name \"%s\"", buf);
 				free(f);
 				return (NULL);
 			}
@@ -2870,6 +2860,7 @@ parse_action(const char *p, struct filed *f)
 	} else
 		syncfile = true;
 
+	f->f_file = -1;
 	switch (*p) {
 	case '@':
 		{
@@ -2910,7 +2901,7 @@ parse_action(const char *p, struct filed *f)
 		};
 		error = getaddrinfo(f->f_hname, p ? p : "syslog", &hints, &res);
 		if (error) {
-			logerror(gai_strerror(error));
+			dprintf("%s\n", gai_strerror(error));
 			break;
 		}
 		f->f_addr = res;
@@ -2920,7 +2911,7 @@ parse_action(const char *p, struct filed *f)
 	case '/':
 		if ((f->f_file = open(p, logflags, 0600)) < 0) {
 			f->f_type = F_UNUSED;
-			logerror(p);
+			dprintf("%s\n", p);
 			break;
 		}
 		if (syncfile)
@@ -2969,74 +2960,59 @@ parse_action(const char *p, struct filed *f)
 /*
  * Crack a configuration file line
  */
-static void
+static nvlist_t *
 cfline(const char *line, const char *prog, const char *host,
     const char *pfilter)
 {
-	struct filed *f;
+	nvlist_t *nvl_filed;
+	struct filed f = { };
 	const char *p;
 
 	dprintf("cfline(\"%s\", f, \"%s\", \"%s\", \"%s\")\n", line, prog,
 	    host, pfilter);
 
-	f = calloc(1, sizeof(*f));
-	if (f == NULL) {
-		logerror("malloc");
-		exit(1);
-	}
-	errno = 0;	/* keep strerror() stuff out of logerror messages */
-
 	for (int i = 0; i <= LOG_NFACILITIES; i++)
-		f->f_pmask[i] = INTERNAL_NOPRI;
+		f.f_pmask[i] = INTERNAL_NOPRI;
 
 	/* save hostname if any */
-	if (host && *host == '*')
-		host = NULL;
-	if (host) {
+	if (host != NULL && *host != '*') {
 		int hl;
 
-		f->f_host = strdup(host);
-		if (f->f_host == NULL) {
-			logerror("strdup");
-			exit(1);
-		}
-		hl = strlen(f->f_host);
-		if (hl > 0 && f->f_host[hl-1] == '.')
-			f->f_host[--hl] = '\0';
+		strlcpy(f.f_host, host, sizeof(f.f_host));
+		hl = strlen(f.f_host);
+		if (hl > 0 && f.f_host[hl-1] == '.')
+			f.f_host[--hl] = '\0';
 		/* RFC 5424 prefers logging FQDNs. */
 		if (RFC3164OutputFormat)
-			trimdomain(f->f_host, hl);
+			trimdomain(f.f_host, hl);
 	}
 
 	/* save program name if any */
-	if (prog && *prog == '*')
-		prog = NULL;
-	if (prog) {
-		f->f_program = strdup(prog);
-		if (f->f_program == NULL) {
-			logerror("strdup");
-			exit(1);
-		}
-	}
-
-	if (pfilter) {
-		f->f_prop_filter = prop_filter_compile(pfilter);
-		if (f->f_prop_filter == NULL) {
-			logerror("filter compile error");
-			exit(1);
-		}
-	}
+	if (prog != NULL && *prog != '*')
+		strlcpy(f.f_program, prog, sizeof(f.f_program));
 
 	/* scan through the list of selectors */
 	for (p = line; *p != '\0' && *p != '\t' && *p != ' ';)
-		p = parse_selector(p, f);
+		p = parse_selector(p, &f);
 
 	/* skip to action part */
 	while (*p == '\t' || *p == ' ')
 		p++;
-	parse_action(p, f);
+	parse_action(p, &f);
+
+	/* An nvlist is heap allocated heap here. */
+	nvl_filed = filed_to_nvlist(&f);
+
+	if (pfilter && *pfilter != '*') {
+		nvlist_t *nvl_pfilter;
+
+		nvl_pfilter = prop_filter_compile(pfilter);
+		if (nvl_pfilter == NULL)
+			err(1, "filter compile error");
+		nvlist_add_nvlist(nvl_filed, "f_prop_filter", nvl_pfilter);
+	}
 
-	STAILQ_INSERT_TAIL(&fhead, f, next);
+	return (nvl_filed);
 }
 
 /*
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
index 012338d2c7c1..16de03590ada 100644
--- a/usr.sbin/syslogd/syslogd.h
+++ b/usr.sbin/syslogd/syslogd.h
@@ -64,6 +64,7 @@
 #define _SYSLOGD_H_
 
 #include <sys/param.h>
+#include <sys/nv.h>
 #include <sys/queue.h>
 #include <sys/time.h>
 
@@ -71,6 +72,8 @@
 #include <sys/syslog.h>
 
 #include <regex.h>
+#include <stdbool.h>
+#include <stdio.h>
 
 #define	MAXLINE		8192		/* maximum line length */
 #define	MAXSVLINE	MAXLINE		/* maximum saved line length */
@@ -107,7 +110,6 @@ struct prop_filter {
 #define	FILT_FLAG_EXTENDED	(1 << 1)
 #define	FILT_FLAG_ICASE		(1 << 2)
 	char *pflt_strval;
-	size_t	pflt_strlen;
 	regex_t *pflt_re;
 };
 
@@ -132,8 +134,8 @@ struct filed {
 	enum f_type f_type;
 
 	/* Used for filtering. */
-	char	*f_host;			/* host from which to recd. */
-	char	*f_program;			/* program this applies to */
+	char	f_host[MAXHOSTNAMELEN];		/* host from which to recd. */
+	char	f_program[MAXPATHLEN];		/* program this applies to */
 	struct prop_filter *f_prop_filter;	/* property-based filter */
 	u_char	f_pmask[LOG_NFACILITIES+1];	/* priority mask */
 	u_char	f_pcmp[LOG_NFACILITIES+1];	/* compare priority */
@@ -170,4 +172,11 @@ struct filed {
 	STAILQ_ENTRY(filed) next;		/* next in linked list */
 };
 
+extern const char *ConfFile;
+extern char LocalHostName[MAXHOSTNAMELEN];
+
+void closelogfiles(void);
+void logerror(const char *);
+nvlist_t *readconfigfile(const char *);
+
 #endif /* !_SYSLOGD_H_ */
diff --git a/usr.sbin/syslogd/syslogd_cap.c b/usr.sbin/syslogd/syslogd_cap.c
index 71fc89854c58..6f64ee8878bf 100644
--- a/usr.sbin/syslogd/syslogd_cap.c
+++ b/usr.sbin/syslogd/syslogd_cap.c
@@ -32,6 +32,7 @@
 #include <sys/socket.h>
 
 #include <libcasper.h>
+#include <string.h>
 
 #include <casper/cap_net.h>
 
@@ -39,10 +40,14 @@
 
 /* This is where libcasper receives commands via nvlist. */
 static int
-casper_command(const char *cmd __unused, const nvlist_t *limits __unused,
-    nvlist_t *nvlin __unused, nvlist_t *nvlout __unused)
+casper_command(const char *cmd, const nvlist_t *limits __unused,
+    nvlist_t *nvlin, nvlist_t *nvlout)
 {
 	int error = EINVAL;
+
+	if (strcmp(cmd, "readconfigfile") == 0)
+		error = casper_readconfigfile(nvlin, nvlout);
+
 	return (error);
 }
 
diff --git a/usr.sbin/syslogd/syslogd_cap.h b/usr.sbin/syslogd/syslogd_cap.h
index fdfc969b3d0f..24b448ff2352 100644
--- a/usr.sbin/syslogd/syslogd_cap.h
+++ b/usr.sbin/syslogd/syslogd_cap.h
@@ -47,6 +47,20 @@
 
 #include "syslogd.h"
 
+nvlist_t *cap_readconfigfile(cap_channel_t *, const char *);
+int casper_readconfigfile(nvlist_t *, nvlist_t *);
+
+nvlist_t *filed_to_nvlist(const struct filed *);
+nvlist_t *prop_filter_to_nvlist(const struct prop_filter *pfilter);
+
+struct filed *nvlist_to_filed(const nvlist_t *);
+struct prop_filter *nvlist_to_prop_filter(const nvlist_t *nvl_prop_filter);
+
+#else /* !WITH_CASPER */
+
+#define	cap_readconfigfile(chan, cf) \
+	readconfigfile(cf)
+
 #endif /* WITH_CASPER */
 
 #endif /* !_SYSLOGD_CAP_H_ */
diff --git a/usr.sbin/syslogd/syslogd_cap_config.c b/usr.sbin/syslogd/syslogd_cap_config.c
new file mode 100644
index 000000000000..366c035925d6
--- /dev/null
+++ b/usr.sbin/syslogd/syslogd_cap_config.c
@@ -0,0 +1,296 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2023 The FreeBSD Foundation
+ *
+ * This software was developed by Jake Freeland <jfree@FreeBSD.org>
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/types.h>
+#include <sys/socket.h>
+
+#include <assert.h>
+#include <err.h>
+#include <libcasper.h>
+#include <netdb.h>
+#include <string.h>
+
+#include <casper/cap_net.h>
+
+#include "syslogd_cap.h"
+
+/*
+ * Convert the given prop_filter structure into an nvlist.
+ * Return a heap allocated pointer to the resulting nvlist.
+ */
+nvlist_t *
+prop_filter_to_nvlist(const struct prop_filter *pfilter)
+{
+	nvlist_t *nvl_prop_filter = nvlist_create(0);
+
+	nvlist_add_number(nvl_prop_filter, "prop_type", pfilter->prop_type);
+	nvlist_add_number(nvl_prop_filter, "cmp_type", pfilter->cmp_type);
+	nvlist_add_number(nvl_prop_filter, "cmp_flags", pfilter->cmp_flags);
+	nvlist_add_string(nvl_prop_filter, "pflt_strval", pfilter->pflt_strval);
+	/*
+	 * Do not bother adding pflt_re. It will be recompiled
+	 * using pflt_strval later, if applicable.
+	 */
+
+	return (nvl_prop_filter);
+}
+
+/*
+ * Convert the given nvlist into a prop_filter structure.
+ * Return a heap allocated pointer to the resulting prop_filter.
+ */
+struct prop_filter *
+nvlist_to_prop_filter(const nvlist_t *nvl_prop_filter)
+{
+	struct prop_filter *pfilter;
+
+	pfilter = calloc(1, sizeof(*pfilter));
+	if (pfilter == NULL)
+		err(1, "calloc");
+	pfilter->prop_type = nvlist_get_number(nvl_prop_filter, "prop_type");
+	pfilter->cmp_type = nvlist_get_number(nvl_prop_filter, "cmp_type");
+	pfilter->cmp_flags = nvlist_get_number(nvl_prop_filter, "cmp_flags");
+	pfilter->pflt_strval = strdup(nvlist_get_string(nvl_prop_filter,
+	    "pflt_strval"));
+	if (pfilter->cmp_type == FILT_CMP_REGEX) {
+		int re_flags = REG_NOSUB;
+		pfilter->pflt_re = calloc(1, sizeof(*pfilter->pflt_re));
+		if (pfilter->pflt_re == NULL)
+			errx(1, "RE calloc() error");
+		if ((pfilter->cmp_flags & FILT_FLAG_EXTENDED) != 0)
+			re_flags |= REG_EXTENDED;
+		if ((pfilter->cmp_flags & FILT_FLAG_ICASE) != 0)
+			re_flags |= REG_ICASE;
+		if (regcomp(pfilter->pflt_re, pfilter->pflt_strval,
+		    re_flags) != 0)
+			errx(1, "RE compilation error");
+	}
+
+	return (pfilter);
+}
+
+/*
+ * Convert the given struct filed into an nvl_filed nvlist.
+ * Return a heap allocated pointer to the resulting nvlist.
+ */
+nvlist_t *
+filed_to_nvlist(const struct filed *filed)
+{
+	nvlist_t *nvl_filed = nvlist_create(0);
+	enum f_type f_type = filed->f_type;
+	size_t i, sz;
+
+	nvlist_add_number(nvl_filed, "f_type", f_type);
+	nvlist_add_string(nvl_filed, "f_host", filed->f_host);
+	nvlist_add_string(nvl_filed, "f_program", filed->f_program);
+	if (filed->f_prop_filter != NULL) {
+		nvlist_add_nvlist(nvl_filed, "f_prop_filter",
+		    prop_filter_to_nvlist(filed->f_prop_filter));
+	}
+	sz = nitems(filed->f_pmask);
+	for (i = 0; i < sz; ++i) {
+		nvlist_append_number_array(nvl_filed, "f_pmask",
+		    filed->f_pmask[i]);
+	}
+	sz = nitems(filed->f_pcmp);
+	for (i = 0; i < sz; ++i) {
+		nvlist_append_number_array(nvl_filed, "f_pcmp",
+		    filed->f_pcmp[i]);
+	}
+
+	if (filed->f_file >= 0)
+		nvlist_add_descriptor(nvl_filed, "f_file", filed->f_file);
+	nvlist_add_number(nvl_filed, "f_flags", filed->f_flags);
+	if (f_type == F_WALL || f_type == F_USERS) {
+		sz = nitems(filed->f_uname);
+		for (i = 0; i < sz; ++i) {
+			nvlist_append_string_array(nvl_filed, "f_uname",
+			    filed->f_uname[i]);
+		}
+	} else if (f_type == F_FILE || f_type == F_CONSOLE || f_type == F_TTY) {
+		nvlist_add_string(nvl_filed, "f_fname", filed->f_fname);
+	} else if (f_type == F_FORW) {
+		struct addrinfo *ai = filed->f_addr, *cur;
+		nvlist_t *nvl_addrinfo;
+
+		nvlist_add_string(nvl_filed, "f_hname", filed->f_hname);
+		if (filed->f_addr != NULL) {
+			for (cur = ai; cur != NULL; cur = cur->ai_next) {
+				nvl_addrinfo = addrinfo_pack(cur);
+				nvlist_append_nvlist_array(nvl_filed,
+				    "f_addr", nvl_addrinfo);
+				nvlist_destroy(nvl_addrinfo);
+			}
+		}
+	} else if (filed->f_type == F_PIPE) {
+		nvlist_add_string(nvl_filed, "f_pname", filed->f_pname);
+		if (filed->f_procdesc >= 0) {
+			nvlist_add_descriptor(nvl_filed, "f_procdesc",
+			    filed->f_procdesc);
+		}
+	}
+
+	/*
+	 * Book-keeping fields are not transferred.
+	 */
+
+	return (nvl_filed);
+}
+
+/*
+ * Convert the given nvl_filed nvlist into a struct filed.
+ * Return a heap allocated pointer to the resulting struct
+ * filed.
+ */
+struct filed *
+nvlist_to_filed(const nvlist_t *nvl_filed)
+{
+	struct filed *filed;
+	enum f_type f_type;
+	const uint64_t *narr;
+	size_t i, sz;
+
+	filed = calloc(1, sizeof(*filed));
+	if (filed == NULL)
+		err(1, "calloc");
+
+	f_type = filed->f_type = nvlist_get_number(nvl_filed, "f_type");
+	(void)strlcpy(filed->f_host, nvlist_get_string(nvl_filed, "f_host"),
+	    sizeof(filed->f_host));
+	(void)strlcpy(filed->f_program, nvlist_get_string(nvl_filed,
+	    "f_program"), sizeof(filed->f_program));
+	if (nvlist_exists_nvlist(nvl_filed, "f_prop_filter")) {
+		filed->f_prop_filter = nvlist_to_prop_filter(
+		    nvlist_get_nvlist(nvl_filed, "f_prop_filter"));
+	}
+	narr = nvlist_get_number_array(nvl_filed, "f_pmask", &sz);
+	assert(sz == nitems(filed->f_pmask));
+	for (i = 0; i < sz; ++i)
+		filed->f_pmask[i] = narr[i];
+	narr = nvlist_get_number_array(nvl_filed, "f_pcmp", &sz);
+	assert(sz == nitems(filed->f_pcmp));
+	for (i = 0; i < sz; ++i)
+		filed->f_pcmp[i] = narr[i];
+
+	if (nvlist_exists_descriptor(nvl_filed, "f_file"))
+		filed->f_file = dup(nvlist_get_descriptor(nvl_filed, "f_file"));
+	else
+		filed->f_file = -1;
+	filed->f_flags = nvlist_get_number(nvl_filed, "f_flags");
+	if (f_type == F_WALL || f_type == F_USERS) {
+		const char * const *f_uname;
+
+		f_uname = nvlist_get_string_array(nvl_filed, "f_uname", &sz);
+		assert(sz == nitems(filed->f_uname));
+		for (i = 0; i < sz; ++i) {
+			(void)strlcpy(filed->f_uname[i], f_uname[i],
+			    sizeof(filed->f_uname[i]));
+		}
+	} else if (f_type == F_FILE || f_type == F_CONSOLE || f_type == F_TTY) {
+		(void)strlcpy(filed->f_fname, nvlist_get_string(nvl_filed,
+		    "f_fname"), sizeof(filed->f_fname));
+	} else if (f_type == F_FORW) {
+		const nvlist_t * const *f_addr;
+		struct addrinfo *ai, **next = NULL;
+
+		(void)strlcpy(filed->f_hname, nvlist_get_string(nvl_filed,
+		    "f_hname"), sizeof(filed->f_hname));
+		f_addr = nvlist_get_nvlist_array(nvl_filed, "f_addr", &sz);
+		for (i = 0; i < sz; ++i) {
+			ai = addrinfo_unpack(f_addr[i]);
+			if (next == NULL)
+				filed->f_addr = ai;
+			else
+				*next = ai;
+			next = &ai->ai_next;
+		}
+	} else if (filed->f_type == F_PIPE) {
+		(void)strlcpy(filed->f_pname, nvlist_get_string(nvl_filed,
+		    "f_pname"), sizeof(filed->f_pname));
+		if (nvlist_exists_descriptor(nvl_filed, "f_procdesc")) {
+			filed->f_procdesc = dup(nvlist_get_descriptor(nvl_filed,
+			    "f_procdesc"));
+		} else {
+			filed->f_procdesc = -1;
+		}
+	}
+
+	/*
+	 * Book-keeping fields are not transferred.
+	 */
+
+	return (filed);
+}
+
+nvlist_t *
+cap_readconfigfile(cap_channel_t *chan, const char *path)
+{
+	nvlist_t *nvl, *nvl_conf;
+
+	nvl = nvlist_create(0);
+	nvlist_add_string(nvl, "cmd", "readconfigfile");
+	nvlist_add_string(nvl, "path", path);
+	/* It is possible that our hostname has changed. */
+	nvlist_add_string(nvl, "LocalHostName", LocalHostName);
+	nvl = cap_xfer_nvlist(chan, nvl);
+	if (nvl == NULL) {
+		logerror("Failed to xfer configuration nvlist");
+		exit(1);
+	}
+	nvl_conf = nvlist_take_nvlist(nvl, "nvl_conf");
+
+	nvlist_destroy(nvl);
+	return (nvl_conf);
+}
+
+/*
+ * Now that we're executing as libcasper, we can obtain the
+ * resources specified in the configuration.
+ */
+int
+casper_readconfigfile(nvlist_t *nvlin, nvlist_t *nvlout)
+{
+	const char *path;
+
+	/*
+	 * Verify that syslogd did not manipulate the
+	 * configuration file path.
+	 */
+	path = nvlist_get_string(nvlin, "path");
+	if (strcmp(path, ConfFile) != 0)
+		err(1, "Configuration file mismatch: %s != %s", path, ConfFile);
+
+	/* Refresh our copy of LocalHostName, in case it changed. */
+	strlcpy(LocalHostName, nvlist_get_string(nvlin, "LocalHostName"),
+	    sizeof(LocalHostName));
+
+	nvlist_move_nvlist(nvlout, "nvl_conf", readconfigfile(path));
+	return (0);
+}

From nobody Wed Nov 27 22:27:12 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZm48Zzz5fsTr;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZm36szz4V0N;
	Wed, 27 Nov 2024 22:27:12 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746432;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GEuOM/EWwVNF2dmpUqOHS6cRudJjcVUaYPPGIkj4G/U=;
	b=Gn+OyGnBL/4g/uj1bPO4L95AAhmsj0oZTCsn0qjL3b9hCge+3eEH68MqOy9TcK0TGRV3AA
	XtsfJkwk4eNg+JYe0hNVOOQN7GaarCCACbMZyRK1d3R/Dv0xqFGABIXVV3B2TdcghQpZr9
	sF68+Fy0+GHOhuMbSVgV/lEfNyPROSyy+PVJYoGa4fFOu45zioS+JkccZgYi+QwK5uhCtK
	5DFL0Iw9A5Ms5efJ7pAGaCpiqaNdfKpsU7EGymp23KyuBNSAHFuTYvQz72chUy20z/LSTd
	UHE8iI0cq96R4xrpXpkGErV/wsOtMazSzv+e/Iz3CSPgQoCSSDf0W7gLtRpbQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746432;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GEuOM/EWwVNF2dmpUqOHS6cRudJjcVUaYPPGIkj4G/U=;
	b=u6G1D+FMZ9fuN/xt3wZxfUspA04iQnVJDlRLHYBHrc1FGwTLQ2cLqW8jAVVsRhSustEV6I
	h8jK7UV6J0zTTLauHzae5mrY6qJzeNvrck6qyo8aFJjFWIq2KziwpUmTlYt5wD5Gz6xrHW
	C23PDC3lVe2KCW9cc7C1YYKlzJvgkwi/xy/m95xGH6N5wZEDkhlW0b3qUiwkAovY6xA9QO
	yeei/9vkwnt9Wmnb7uzxvebVzCKAgicOybmextHbs/JMaXYryCG4p0zhG9CyOyZEEDAdW9
	hXm0mAbfxv0A7rPxEpFX9JWQqJ06C5ZTizdnX0cQBLM+LMdPP/SKxwvPy+cpmA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746432; a=rsa-sha256; cv=none;
	b=do2Q0GgUVyIKXG8q9xYnUC6MOrS1nGn3R/Zu7wbdDfB3SAEEXUTWWQOivABH41oFu4AhgY
	qXkElt2sziMYRDN2UhcZ+XLc7CcxYhBIFbmydBw2jtKWRKzMlup0G8ZCdQPcd6dQzYpcN4
	L19mvIKh9dfr+do30eHtdzlPWI+Qyp6NaI/21PMiXmmB9OBMYmk4mFBzQkwR2GJzurzdSL
	qY35IG3moRTRWuG49PA5Ky0u/Q++hIncAsRYsOxLtdJLnNloL0wT1Tyv6NPd9ULy9IKlQo
	X0VBQrZOZ1mult7wrGFvDwQaBr1H4qx/4+IyqSw7SCFmAiolU5MnhUlR6O8IPg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZm2kpBz1RYF;
	Wed, 27 Nov 2024 22:27: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 4ARMRCon026628;
	Wed, 27 Nov 2024 22:27:12 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRC7T026625;
	Wed, 27 Nov 2024 22:27:12 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:12 GMT
Message-Id: <202411272227.4ARMRC7T026625@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 61a29eca550b - main - syslogd: Log messages using
  libcasper
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 61a29eca550b80d179934a7198c41ad4d255f81c
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=61a29eca550b80d179934a7198c41ad4d255f81c

commit 61a29eca550b80d179934a7198c41ad4d255f81c
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:17 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:17 +0000

    syslogd: Log messages using libcasper
    
    Some logging operations require access to external resources to
    complete. Logging to F_WALL requires on-demand access to the user
    accounting database. Logging to F_CONSOLE requires access to the
    console. Logging to F_PIPE prompts execution of a command outside
    of capability mode.
    
    These operations cannot be performed in capability mode, so the
    "p_open", "ttymsg", and "wallmsg" commands may be sent to libcasper to
    circumvent these limitations.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41465
---
 usr.sbin/syslogd/Makefile             |   3 +-
 usr.sbin/syslogd/syslogd.c            |  77 ++++++-------
 usr.sbin/syslogd/syslogd.h            |  15 +++
 usr.sbin/syslogd/syslogd_cap.c        |   8 +-
 usr.sbin/syslogd/syslogd_cap.h        |  25 ++++
 usr.sbin/syslogd/syslogd_cap_config.c |  34 +++++-
 usr.sbin/syslogd/syslogd_cap_log.c    | 211 ++++++++++++++++++++++++++++++++++
 7 files changed, 330 insertions(+), 43 deletions(-)

diff --git a/usr.sbin/syslogd/Makefile b/usr.sbin/syslogd/Makefile
index 4088b2e03651..7b202c69f7f9 100644
--- a/usr.sbin/syslogd/Makefile
+++ b/usr.sbin/syslogd/Makefile
@@ -15,7 +15,8 @@ LIBADD=	util
 
 .if ${MK_CASPER} != "no"
 SRCS+=	syslogd_cap.c \
-	syslogd_cap_config.c
+	syslogd_cap_config.c \
+	syslogd_cap_log.c
 CFLAGS+= -DWITH_CASPER
 LIBADD+= cap_net casper nv
 .endif
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 0c05884cc17d..fcf7d4747706 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -129,7 +129,6 @@
 #include "pathnames.h"
 #include "syslogd.h"
 #include "syslogd_cap.h"
-#include "ttymsg.h"
 
 const char *ConfFile = _PATH_LOGCONF;
 static const char *PidFile = _PATH_LOGPID;
@@ -337,12 +336,10 @@ static int	evaluate_prop_filter(const struct prop_filter *filter,
 static nvlist_t *prop_filter_compile(const char *);
 static void	parsemsg(const char *, char *);
 static void	printsys(char *);
-static int	p_open(const char *, pid_t *);
 static const char *ttymsg_check(struct iovec *, int, char *, int);
 static void	usage(void);
 static bool	validate(struct sockaddr *, const char *);
 static void	unmapped(struct sockaddr *);
-static void	wallmsg(struct filed *, struct iovec *, const int iovlen);
 static int	waitdaemon(int);
 static void	increase_rcvbuf(int);
 
@@ -1665,16 +1662,6 @@ dofsync(void)
 	needdofsync = false;
 }
 
-/*
- * List of iovecs to which entries can be appended.
- * Used for constructing the message to be logged.
- */
-struct iovlist {
-	struct iovec	iov[TTYMSG_IOV_MAX];
-	size_t		iovcnt;
-	size_t		totalsize;
-};
-
 static void
 iovlist_init(struct iovlist *il)
 {
@@ -1831,8 +1818,16 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		dprintf(" %s\n", f->f_pname);
 		iovlist_append(il, "\n");
 		if (f->f_procdesc == -1) {
-			if ((f->f_file = p_open(f->f_pname,
-			    &f->f_procdesc)) < 0) {
+			struct filed *f_in_list;
+			size_t i = 0;
+
+			STAILQ_FOREACH(f_in_list, &fhead, next) {
+				if (f_in_list == f)
+					break;
+				++i;
+			}
+			f->f_file = p_open(i, f->f_pname, &f->f_procdesc);
+			if (f->f_file < 0) {
 				logerror(f->f_pname);
 				break;
 			}
@@ -2073,9 +2068,12 @@ fprintlog_successive(struct filed *f, int flags)
  *
  *	Write the specified message to either the entire
  *	world, or a list of approved users.
+ *
+ * Note: This function is wrapped by cap_wallmsg() when Capsicum support is
+ * enabled so ttymsg() can be called.
  */
-static void
-wallmsg(struct filed *f, struct iovec *iov, const int iovlen)
+void
+wallmsg(const struct filed *f, struct iovec *iov, const int iovlen)
 {
 	static int reenter;			/* avoid calling ourselves */
 	struct utmpx *ut;
@@ -2091,10 +2089,8 @@ wallmsg(struct filed *f, struct iovec *iov, const int iovlen)
 			continue;
 		if (f->f_type == F_WALL) {
 			if ((p = ttymsg(iov, iovlen, ut->ut_line,
-			    TTYMSGTIME)) != NULL) {
-				errno = 0;	/* already in msg */
-				logerror(p);
-			}
+			    TTYMSGTIME)) != NULL)
+				dprintf("%s\n", p);
 			continue;
 		}
 		/* should we send the message to this user? */
@@ -2103,10 +2099,8 @@ wallmsg(struct filed *f, struct iovec *iov, const int iovlen)
 				break;
 			if (!strcmp(f->f_uname[i], ut->ut_user)) {
 				if ((p = ttymsg_check(iov, iovlen, ut->ut_line,
-				    TTYMSGTIME)) != NULL) {
-					errno = 0;	/* already in msg */
-					logerror(p);
-				}
+				    TTYMSGTIME)) != NULL)
+					dprintf("%s\n", p);
 				break;
 			}
 		}
@@ -2392,6 +2386,13 @@ parseconfigfile(FILE *cf, bool allow_includes, nvlist_t *nvl_conf)
 	return (nvl_conf);
 }
 
+/*
+ * Read configuration file and create filed entries for each line.
+ *
+ * Note: This function is wrapped by cap_readconfigfile() when Capsicum
+ * support is enabled so resources can be acquired outside of the security
+ * sandbox.
+ */
 nvlist_t *
 readconfigfile(const char *path)
 {
@@ -3433,15 +3434,18 @@ validate(struct sockaddr *sa, const char *hname)
 /*
  * Fairly similar to popen(3), but returns an open descriptor, as
  * opposed to a FILE *.
+ *
+ * Note: This function is wrapped by cap_p_open() when Capsicum support is
+ * enabled, which allows piped processes to run outside of the capability
+ * sandbox.
  */
-static int
+int
 p_open(const char *prog, int *rpd)
 {
 	struct sigaction act = { };
 	int pfd[2], pd;
 	pid_t pid;
 	char *argv[4]; /* sh -c cmd NULL */
-	char errmsg[200];
 
 	if (pipe(pfd) == -1)
 		return (-1);
@@ -3456,18 +3460,14 @@ p_open(const char *prog, int *rpd)
 		argv[1] = strdup("-c");
 		argv[2] = strdup(prog);
 		argv[3] = NULL;
-		if (argv[0] == NULL || argv[1] == NULL || argv[2] == NULL) {
-			logerror("strdup");
-			exit(1);
-		}
+		if (argv[0] == NULL || argv[1] == NULL || argv[2] == NULL)
+			err(1, "strdup");
 
 		alarm(0);
 		act.sa_handler = SIG_DFL;
 		for (size_t i = 0; i < nitems(sigcatch); ++i) {
-			if (sigaction(sigcatch[i], &act, NULL) == -1) {
-				logerror("sigaction");
-				exit(1);
-			}
+			if (sigaction(sigcatch[i], &act, NULL) == -1)
+				err(1, "sigaction");
 		}
 
 		dup2(pfd[0], STDIN_FILENO);
@@ -3490,11 +3490,8 @@ p_open(const char *prog, int *rpd)
 	 */
 	if (fcntl(pfd[1], F_SETFL, O_NONBLOCK) == -1) {
 		/* This is bad. */
-		(void)snprintf(errmsg, sizeof(errmsg),
-			       "Warning: cannot change pipe to PID %d to "
-			       "non-blocking behaviour.",
-			       (int)pid);
-		logerror(errmsg);
+		dprintf("Warning: cannot change pipe to PID %d to non-blocking"
+		    "behaviour.", pid);
 	}
 	*rpd = pd;
 	return (pfd[1]);
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
index 16de03590ada..2d74c4d0ebbb 100644
--- a/usr.sbin/syslogd/syslogd.h
+++ b/usr.sbin/syslogd/syslogd.h
@@ -67,6 +67,7 @@
 #include <sys/nv.h>
 #include <sys/queue.h>
 #include <sys/time.h>
+#include <sys/uio.h>
 
 #define SYSLOG_NAMES
 #include <sys/syslog.h>
@@ -75,6 +76,8 @@
 #include <stdbool.h>
 #include <stdio.h>
 
+#include "ttymsg.h"
+
 #define	MAXLINE		8192		/* maximum line length */
 #define	MAXSVLINE	MAXLINE		/* maximum saved line length */
 #define	MAXUNAMES	20		/* maximum number of user names */
@@ -172,11 +175,23 @@ struct filed {
 	STAILQ_ENTRY(filed) next;		/* next in linked list */
 };
 
+/*
+ * List of iovecs to which entries can be appended.
+ * Used for constructing the message to be logged.
+ */
+struct iovlist {
+	struct iovec	iov[TTYMSG_IOV_MAX];
+	size_t		iovcnt;
+	size_t		totalsize;
+};
+
 extern const char *ConfFile;
 extern char LocalHostName[MAXHOSTNAMELEN];
 
 void closelogfiles(void);
 void logerror(const char *);
+int p_open(const char *, pid_t *);
 nvlist_t *readconfigfile(const char *);
+void wallmsg(const struct filed *, struct iovec *, const int);
 
 #endif /* !_SYSLOGD_H_ */
diff --git a/usr.sbin/syslogd/syslogd_cap.c b/usr.sbin/syslogd/syslogd_cap.c
index 6f64ee8878bf..7539e6b8661b 100644
--- a/usr.sbin/syslogd/syslogd_cap.c
+++ b/usr.sbin/syslogd/syslogd_cap.c
@@ -45,8 +45,14 @@ casper_command(const char *cmd, const nvlist_t *limits __unused,
 {
 	int error = EINVAL;
 
-	if (strcmp(cmd, "readconfigfile") == 0)
+	if (strcmp(cmd, "p_open") == 0)
+		error = casper_p_open(nvlin, nvlout);
+	else if (strcmp(cmd, "readconfigfile") == 0)
 		error = casper_readconfigfile(nvlin, nvlout);
+	else if (strcmp(cmd, "ttymsg") == 0)
+		error = casper_ttymsg(nvlin, nvlout);
+	else if (strcmp(cmd, "wallmsg") == 0)
+		error = casper_wallmsg(nvlin);
 
 	return (error);
 }
diff --git a/usr.sbin/syslogd/syslogd_cap.h b/usr.sbin/syslogd/syslogd_cap.h
index 24b448ff2352..420676aa72f2 100644
--- a/usr.sbin/syslogd/syslogd_cap.h
+++ b/usr.sbin/syslogd/syslogd_cap.h
@@ -47,8 +47,27 @@
 
 #include "syslogd.h"
 
+/*
+ * Information used to verify filed integrity when executing outside of the
+ * security sandbox.
+ */
+struct cap_filed {
+	size_t idx;
+	char pipe_cmd[MAXPATHLEN];
+	SLIST_ENTRY(cap_filed) next;
+};
+extern SLIST_HEAD(cfiled_list, cap_filed) cfiled_head;
+
+int cap_p_open(cap_channel_t *, size_t, const char *, int *);
 nvlist_t *cap_readconfigfile(cap_channel_t *, const char *);
+const char *cap_ttymsg(cap_channel_t *, struct iovec *, int, const char *, int);
+void cap_wallmsg(cap_channel_t *, const struct filed *, struct iovec *,
+    const int);
+
+int casper_p_open(nvlist_t *, nvlist_t *);
 int casper_readconfigfile(nvlist_t *, nvlist_t *);
+int casper_ttymsg(nvlist_t *, nvlist_t *);
+int casper_wallmsg(nvlist_t *);
 
 nvlist_t *filed_to_nvlist(const struct filed *);
 nvlist_t *prop_filter_to_nvlist(const struct prop_filter *pfilter);
@@ -58,8 +77,14 @@ struct prop_filter *nvlist_to_prop_filter(const nvlist_t *nvl_prop_filter);
 
 #else /* !WITH_CASPER */
 
+#define	cap_p_open(chan, f_idx, prog, rpd) \
+	p_open(prog, rpd)
 #define	cap_readconfigfile(chan, cf) \
 	readconfigfile(cf)
+#define	cap_ttymsg(chan, iov, iovcnt, line, tmout) \
+	ttymsg(iov, iovcnt, line, tmout)
+#define	cap_wallmsg(chan, f, iov, iovcnt) \
+	wallmsg(f, iov, iovcnt)
 
 #endif /* WITH_CASPER */
 
diff --git a/usr.sbin/syslogd/syslogd_cap_config.c b/usr.sbin/syslogd/syslogd_cap_config.c
index 366c035925d6..09d49b0a41b2 100644
--- a/usr.sbin/syslogd/syslogd_cap_config.c
+++ b/usr.sbin/syslogd/syslogd_cap_config.c
@@ -277,6 +277,9 @@ cap_readconfigfile(cap_channel_t *chan, const char *path)
 int
 casper_readconfigfile(nvlist_t *nvlin, nvlist_t *nvlout)
 {
+	const nvlist_t * const *filed_list;
+	nvlist_t *nvl_conf;
+	size_t n_fileds;
 	const char *path;
 
 	/*
@@ -291,6 +294,35 @@ casper_readconfigfile(nvlist_t *nvlin, nvlist_t *nvlout)
 	strlcpy(LocalHostName, nvlist_get_string(nvlin, "LocalHostName"),
 	    sizeof(LocalHostName));
 
-	nvlist_move_nvlist(nvlout, "nvl_conf", readconfigfile(path));
+	nvl_conf = readconfigfile(path);
+
+	/* Remove old filed data in case we are reloading. */
+	while (!SLIST_EMPTY(&cfiled_head)) {
+		struct cap_filed *cfiled;
+
+		cfiled = SLIST_FIRST(&cfiled_head);
+		SLIST_REMOVE_HEAD(&cfiled_head, next);
+		free(cfiled);
+	}
+	/* Record F_PIPE filed data for use in p_open(). */
+	if (!nvlist_exists_nvlist_array(nvl_conf, "filed_list"))
+		return (0);
+	filed_list = nvlist_get_nvlist_array(nvl_conf, "filed_list", &n_fileds);
+	for (size_t i = 0; i < n_fileds; ++i) {
+		if (nvlist_get_number(filed_list[i], "f_type") == F_PIPE) {
+			struct cap_filed *cfiled;
+			const char *pipe_cmd;
+
+			cfiled = malloc(sizeof(*cfiled));
+			if (cfiled == NULL)
+				err(1, "malloc");
+			cfiled->idx = i;
+			pipe_cmd = nvlist_get_string(filed_list[i], "f_pname");
+			strlcpy(cfiled->pipe_cmd, pipe_cmd, sizeof(cfiled->pipe_cmd));
+			SLIST_INSERT_HEAD(&cfiled_head, cfiled, next);
+		}
+	}
+
+	nvlist_move_nvlist(nvlout, "nvl_conf", nvl_conf);
 	return (0);
 }
diff --git a/usr.sbin/syslogd/syslogd_cap_log.c b/usr.sbin/syslogd/syslogd_cap_log.c
new file mode 100644
index 000000000000..0156cc6f6b6c
--- /dev/null
+++ b/usr.sbin/syslogd/syslogd_cap_log.c
@@ -0,0 +1,211 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright (c) 2023 The FreeBSD Foundation
+ *
+ * This software was developed by Jake Freeland <jfree@FreeBSD.org>
+ * under sponsorship from the FreeBSD Foundation.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <assert.h>
+#include <err.h>
+#include <string.h>
+
+#include "syslogd_cap.h"
+
+struct cfiled_list cfiled_head;
+
+int
+cap_p_open(cap_channel_t *chan, size_t filed_idx, const char *prog,
+    int *procdesc)
+{
+	nvlist_t *nvl = nvlist_create(0);
+	int error, pipedesc_w;
+
+	nvlist_add_string(nvl, "cmd", "p_open");
+	nvlist_add_number(nvl, "filed_idx", filed_idx);
+	nvlist_add_string(nvl, "prog", prog);
+	nvl = cap_xfer_nvlist(chan, nvl);
+	if (nvl == NULL) {
+		logerror("Failed to xfer p_open nvlist");
+		exit(1);
+	}
+	error = nvlist_get_number(nvl, "error");
+	if (error != 0) {
+		errno = error;
+		logerror("Failed to open piped command");
+	}
+	pipedesc_w = dnvlist_take_descriptor(nvl, "pipedesc_w", -1);
+	*procdesc = dnvlist_take_descriptor(nvl, "procdesc", -1);
+
+	nvlist_destroy(nvl);
+	return (pipedesc_w);
+}
+
+int
+casper_p_open(nvlist_t *nvlin, nvlist_t *nvlout)
+{
+	struct cap_filed *cfiled;
+	size_t filed_idx;
+	int pipedesc_w, procdesc = -1;
+	const char *prog;
+
+	filed_idx = nvlist_get_number(nvlin, "filed_idx");
+	prog = nvlist_get_string(nvlin, "prog");
+	SLIST_FOREACH(cfiled, &cfiled_head, next) {
+		if (cfiled->idx != filed_idx)
+			continue;
+		if (strcmp(cfiled->pipe_cmd, prog) != 0)
+			return (-1);
+
+		pipedesc_w = p_open(prog, &procdesc);
+		if (pipedesc_w == -1)
+			return (-1);
+		nvlist_move_descriptor(nvlout, "pipedesc_w", pipedesc_w);
+		nvlist_move_descriptor(nvlout, "procdesc", procdesc);
+		return (0);
+	}
+
+	return (-1);
+}
+
+const char *
+cap_ttymsg(cap_channel_t *chan, struct iovec *iov, int iovcnt,
+    const char *line, int tmout)
+{
+	nvlist_t *nvl = nvlist_create(0);
+	int error;
+	static char errbuf[1024];
+	char *ret = NULL;
+
+	nvlist_add_string(nvl, "cmd", "ttymsg");
+	for (int i = 0; i < iovcnt; ++i)
+		nvlist_append_string_array(nvl, "iov_strs", iov[i].iov_base);
+	nvlist_add_string(nvl, "line", line);
+	nvlist_add_number(nvl, "tmout", tmout);
+
+	nvl = cap_xfer_nvlist(chan, nvl);
+	if (nvl == NULL) {
+		logerror("Failed to xfer ttymsg nvlist");
+		exit(1);
+	}
+	error = nvlist_get_number(nvl, "error");
+	if (error != 0) {
+		errno = error;
+		logerror("Failed to ttymsg");
+	}
+	if (nvlist_exists_string(nvl, "errstr")) {
+		const char *errstr = nvlist_get_string(nvl, "errstr");
+		(void)strlcpy(errbuf, errstr, sizeof(errbuf));
+		ret = errbuf;
+	}
+
+	nvlist_destroy(nvl);
+	return (ret);
+}
+
+int
+casper_ttymsg(nvlist_t *nvlin, nvlist_t *nvlout)
+{
+	char **nvlstrs;
+	struct iovec *iov;
+	size_t iovcnt;
+	int tmout;
+	const char *line;
+
+	nvlstrs = nvlist_take_string_array(nvlin, "iov_strs", &iovcnt);
+	assert(iovcnt <= TTYMSG_IOV_MAX);
+	iov = calloc(iovcnt, sizeof(*iov));
+	if (iov == NULL)
+		err(EXIT_FAILURE, "calloc");
+	for (size_t i = 0; i < iovcnt; ++i) {
+		iov[i].iov_base = nvlstrs[i];
+		iov[i].iov_len = strlen(nvlstrs[i]);
+	}
+	line = nvlist_get_string(nvlin, "line");
+	tmout = nvlist_get_number(nvlin, "tmout");
+	line = ttymsg(iov, iovcnt, line, tmout);
+	if (line != NULL)
+		nvlist_add_string(nvlout, "errstr", line);
+
+	free(iov);
+	return (0);
+}
+
+void
+cap_wallmsg(cap_channel_t *chan, const struct filed *f, struct iovec *iov,
+    int iovcnt)
+{
+	nvlist_t *nvl = nvlist_create(0);
+	int error;
+
+	nvlist_add_string(nvl, "cmd", "wallmsg");
+	/*
+	 * The filed_to_nvlist() function is not needed
+	 * here because wallmsg() only uses f_type and
+	 * fu_uname members, which are both inline.
+	 */
+	nvlist_add_binary(nvl, "filed", f, sizeof(*f));
+	for (int i = 0; i < iovcnt; ++i)
+		nvlist_append_string_array(nvl, "iov_strs", iov[i].iov_base);
+
+	nvl = cap_xfer_nvlist(chan, nvl);
+	if (nvl == NULL) {
+		logerror("Failed to xfer wallmsg nvlist");
+		exit(1);
+	}
+	error = nvlist_get_number(nvl, "error");
+	if (error != 0) {
+		errno = error;
+		logerror("Failed to wallmsg");
+	}
+	nvlist_destroy(nvl);
+}
+
+int
+casper_wallmsg(nvlist_t *nvlin)
+{
+	const struct filed *f;
+	char **nvlstrs;
+	struct iovec *iov;
+	size_t sz;
+
+	f = nvlist_get_binary(nvlin, "filed", &sz);
+	assert(sz == sizeof(*f));
+	nvlstrs = nvlist_take_string_array(nvlin, "iov_strs", &sz);
+	assert(sz <= TTYMSG_IOV_MAX);
+	iov = calloc(sz, sizeof(*iov));
+	if (iov == NULL)
+		err(EXIT_FAILURE, "calloc");
+	for (size_t i = 0; i < sz; ++i) {
+		iov[i].iov_base = nvlstrs[i];
+		iov[i].iov_len = strlen(nvlstrs[i]);
+	}
+	wallmsg(f, iov, sz);
+
+	for (size_t i = 0; i < sz; ++i)
+		free(iov[i].iov_base);
+	free(iov);
+	return (0);
+}

From nobody Wed Nov 27 22:27:13 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZn5QYLz5fsfB;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZn3nvJz4VDQ;
	Wed, 27 Nov 2024 22:27:13 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746433;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=TaxrquU7jGwhdiRiZ+NwokkirxZAz4UwkCjDRyJAo9k=;
	b=nEao0M8mA+migD24IP5h96yunlcV1fl5+d8OJnXJYNSz1HpPCvwo6dsD+MDi5mrptp1aUl
	FkUg6q3+/d8y96uz5tgD9dbnzIqc7KqOb+DYsLLHalBIIrJEKFckEMZ3irc5HI7tAMX2L0
	04GTYaip6FnruQM8TfsBAoSLVN6AW49XmS+cEQ2puKae42T6bZEH42jBP7WUUmb19HZyzz
	lABa3paUuC+rSIru7IBBQNctOkjvxFrPmCGEOXaTXXC1ubYk8hAZTtnU3Uaglvv9RQHg1M
	vQznFLtHMWonGZaj12/LsRoXHoON5BS45r2pRPCf7PJG2Zic4Qx6QMQorXXogQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746433;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=TaxrquU7jGwhdiRiZ+NwokkirxZAz4UwkCjDRyJAo9k=;
	b=pNhd0TQzec+eIB2c8zu1hOrWnBLr3f+4MA+/zLEb2lF+ia+YIrmMJH6lJV1IPEWhAASflk
	ewyQmT/ygqH5ljr5UjgF983szyM9nDX6torebPIvjN5FkoDPjqBzkp1UKsRPDzGg4NcYqO
	LheCBnqzPiZB4pEG1PE0KXeYlMtOeKzJNbiX6zMjHz0L0ISMIyp5sXmHVqn4GCnx6MCMYp
	tqO9BdciDg/JaY7f8OPr7Y1Kt8FwqT9w+KOGAIc2z8eUepehkJMYnqS8fc03UWJTF3Pabz
	vPcuCtGW8FwshxoSgk8S2SbscFu90O5iyxBNzAGxSDGO0NCuT4fQSNLB/3Gvxg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746433; a=rsa-sha256; cv=none;
	b=Y/JLAZMx67JrXIDgjHkKf0bOeMeocypRUei3JwK3Ei3ITakZPY/DYknN/FGvoaBsFtnHZM
	LOMQ2tg6VivR5Pz47Vp8uOdg8KDNGi1AN80uLT2lCsDegC5EK2Yf5y7a5tBitWwKV5DOF9
	XdNFYaP/ECI5IXzt+okG72acJyzbfAt90/JrgYvVQwsYaHl1CeKj3HSqzp10a9rp6UUx0D
	WByIL42++pPvE2C2vVeo38B9cq8cqjg6Pqp1ZmWolEb+eGyG5NgwZB5Wh3s9fSHq74RLpU
	qQTUtTuY/8/WZqFuUyL6A8aG67X7pmxS/cRTRMCuw+qjOq0N0d/wtGFd/3JJAQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZn3QM9z1RwZ;
	Wed, 27 Nov 2024 22:27: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 4ARMRDjC026682;
	Wed, 27 Nov 2024 22:27:13 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRDqi026679;
	Wed, 27 Nov 2024 22:27:13 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:13 GMT
Message-Id: <202411272227.4ARMRDqi026679@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 24f4019b6a89 - main - syslogd: Block timezone updating
  in capability mode
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 24f4019b6a898edde3159e930c3ab6ef88ce87c9
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=24f4019b6a898edde3159e930c3ab6ef88ce87c9

commit 24f4019b6a898edde3159e930c3ab6ef88ce87c9
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:55 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:55 +0000

    syslogd: Block timezone updating in capability mode
    
    Do not update local timezone data upon reload when syslogd is compiled
    with libcasper support. Timezone files are pre-fetched using the
    caph_cache_tzdata() function before entering capability mode. Attempts
    to re-fetch these files will result in a capability violation.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41466
---
 usr.sbin/syslogd/syslogd.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index fcf7d4747706..755552ecd21c 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -2508,7 +2508,12 @@ init(bool reload)
 		LocalDomain = "";
 	}
 
+#ifndef WITH_CASPER
 	/*
+	 * XXX: Disable when running in capability mode, for now.
+	 * This requires a new interface in the tzcode module to
+	 * get running without capability violations.
+	 *
 	 * Load / reload timezone data (in case it changed).
 	 *
 	 * Just calling tzset() again does not work, the timezone code
@@ -2525,6 +2530,7 @@ init(bool reload)
 		tzset();
 		unsetenv("TZ");
 	}
+#endif
 
 	Initialized = false;
 	closelogfiles();

From nobody Wed Nov 27 22:27:14 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZp6vn6z5fsQq;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZp5GRzz4VJb;
	Wed, 27 Nov 2024 22:27:14 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rV05DiT9OtnBTl5ZbaZzp3nVTp1lW4edgEKfWGdmihI=;
	b=GyuQQEiOAK6SDsiihit7l7Y/chXGDIfjZxDZfIy/FzLYWYv8wz8Au2+BdvNr4Qkhh+nXAZ
	xtUUBKFVtrscBOSLuSh34Y9V7k/EXkSl83hjDkOSI+rXS0QF8sGDSf9tTvYV6pyTtE6n5D
	SO7ta7kGKKeuMVpWfQcKG3+LWKRK49fdFAYzTgf4aAjAn5C1YCBF2Q1r/7QZMRdPpVhccM
	FOo0yXsspr4UzKH2BaXrgAlgbr3vU8UyzizhIYUunISEg7XtvslEj+3+FjZNOuc3wx8dkz
	vNbrNkFlYeooAqCiOMC5heLlG7rVohtycvwufCf/J4Rt7c6iddKBLPgGFH7kmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rV05DiT9OtnBTl5ZbaZzp3nVTp1lW4edgEKfWGdmihI=;
	b=JNa4+4voIRujhJydfMGm5sXatLS9anB2JBBcSldVM2VbJqtgKl+iLrXOZnAJeDM42hkNWD
	CyJ16i3fzdhXSI2S60kqqtiwY1f/Tcr3fe1ge/kH1UlR+lkTpaFcqzn1s3vLULM4u7AIxS
	QwcaA4gBK2x5At5Lp0Xb4iwojaRUrEJ0tqfNIRDuH6CWFta3ZXDeNPoOlvXMsm/0U1Cwd8
	NpJMYTeByV16juqt6Pyf3U9IjLNUWN71czHm6+YU5izqllWLyfrDyODUszTnbK9OF0pWNo
	uhhrQZVqWyypcaLYgyaXKmY0haAHnJDSlkQSXhdTyLPae3cSAfmtc4cu4RuxRQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746434; a=rsa-sha256; cv=none;
	b=JmOrblXQpnGz2yNMh59IpAiY4890h7zWNu98BlHJYafVnfUaFKOhbcK41xFYt1IGYuJ5/8
	7Ww/9OOEvTPlDOz+TOJrYhjt8fVx/qPd7LkkGx2qHmJD2qxzh78fqYR4t4Ne6IkR0hYS2u
	+enoWylbp5hQAohtsf9C7+p/l1F+a5SQC8MHKVnZTt7nJG4FogpyjiHUu5ofwlV4ZETdfb
	KffyO8u5y4IqqKpuxXoct8U+qHEyp4VECftcIs/J3qz0BirUbqXMaBE3lQ0TT6R+gFwwcM
	EXbis+r3m4bph7/jISZRGmEeNfPao2t9HyFESt4PJQ5R/f3Ae2dPMxameddHVA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZp4Qd3z1Rwb;
	Wed, 27 Nov 2024 22:27: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 4ARMREh2026737;
	Wed, 27 Nov 2024 22:27:14 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMREDs026734;
	Wed, 27 Nov 2024 22:27:14 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:14 GMT
Message-Id: <202411272227.4ARMREDs026734@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 897240c7d666 - main - syslogd: Enter capability mode
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 897240c7d666744137da6125feabf3c3a5522ada
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=897240c7d666744137da6125feabf3c3a5522ada

commit 897240c7d666744137da6125feabf3c3a5522ada
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:25:57 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:25:57 +0000

    syslogd: Enter capability mode
    
    Create syslogd_cap_enter() function, which puts syslogd in capability
    mode and opens necessary libcasper channels for resource acquisition.
    The `syslogd.casper` and `system.net` services are used.
    
    Substitute capability-mode-unfriendly functions with their libcasper
    `cap_` equivalents.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41467
---
 usr.sbin/syslogd/syslogd.c     | 67 ++++++++++++++++++++++++++++++++++++------
 usr.sbin/syslogd/syslogd_cap.h |  2 ++
 2 files changed, 60 insertions(+), 9 deletions(-)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 755552ecd21c..901a90ef3e35 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -271,6 +271,16 @@ static const int sigcatch[] = {
 	SIGCHLD,
 };
 
+/*
+ * Communication channels between syslogd and libcasper
+ * services. These channels are used to request external
+ * resources while in capability mode.
+ */
+#ifdef WITH_CASPER
+static cap_channel_t *cap_syslogd;
+static cap_channel_t *cap_net;
+#endif
+
 static int	nulldesc;	/* /dev/null descriptor */
 static bool	Debug;		/* debug flag */
 static bool	Foreground = false; /* Run in foreground, instead of daemonizing */
@@ -1826,7 +1836,8 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 					break;
 				++i;
 			}
-			f->f_file = p_open(i, f->f_pname, &f->f_procdesc);
+			f->f_file = cap_p_open(cap_syslogd, i, f->f_pname,
+			    &f->f_procdesc);
 			if (f->f_file < 0) {
 				logerror(f->f_pname);
 				break;
@@ -1849,7 +1860,8 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		dprintf(" %s%s\n", _PATH_DEV, f->f_fname);
 		iovlist_append(il, "\r\n");
 		errno = 0;	/* ttymsg() only sometimes returns an errno */
-		if ((msgret = ttymsg(il->iov, il->iovcnt, f->f_fname, 10))) {
+		if ((msgret = cap_ttymsg(cap_syslogd, il->iov, il->iovcnt,
+		    f->f_fname, 10))) {
 			f->f_type = F_UNUSED;
 			logerror(msgret);
 		}
@@ -1859,7 +1871,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 	case F_WALL:
 		dprintf("\n");
 		iovlist_append(il, "\r\n");
-		wallmsg(f, il->iov, il->iovcnt);
+		cap_wallmsg(cap_syslogd, f, il->iov, il->iovcnt);
 		break;
 	default:
 		break;
@@ -2142,7 +2154,7 @@ cvthname(struct sockaddr *f)
 	static char hname[NI_MAXHOST], ip[NI_MAXHOST];
 
 	dprintf("cvthname(%d) len = %d\n", f->sa_family, f->sa_len);
-	error = getnameinfo(f, f->sa_len, ip, sizeof(ip), NULL, 0,
+	error = cap_getnameinfo(cap_net, f, f->sa_len, ip, sizeof(ip), NULL, 0,
 		    NI_NUMERICHOST);
 	if (error) {
 		dprintf("Malformed from address %s\n", gai_strerror(error));
@@ -2153,7 +2165,7 @@ cvthname(struct sockaddr *f)
 	if (!resolve)
 		return (ip);
 
-	error = getnameinfo(f, f->sa_len, hname, sizeof(hname),
+	error = cap_getnameinfo(cap_net, f, f->sa_len, hname, sizeof(hname),
 		    NULL, 0, NI_NAMEREQD);
 	if (error) {
 		dprintf("Host name for your address (%s) unknown\n", ip);
@@ -2477,6 +2489,36 @@ closelogfiles(void)
 	}
 }
 
+static void
+syslogd_cap_enter(void)
+{
+#ifdef WITH_CASPER
+	cap_channel_t *cap_casper;
+	cap_net_limit_t *limit;
+
+	cap_casper = cap_init();
+	if (cap_casper == NULL)
+		err(1, "Failed to communicate with libcasper");
+	cap_syslogd = cap_service_open(cap_casper, "syslogd.casper");
+	if (cap_syslogd == NULL)
+		err(1, "Failed to open the syslogd.casper libcasper service");
+	cap_net = cap_service_open(cap_casper, "system.net");
+	if (cap_syslogd == NULL)
+		err(1, "Failed to open the system.net libcasper service");
+	cap_close(cap_casper);
+	limit = cap_net_limit_init(cap_net,
+	    CAPNET_ADDR2NAME | CAPNET_NAME2ADDR);
+	if (limit == NULL)
+		err(1, "Failed to create system.net limits");
+	if (cap_net_limit(limit) == -1)
+		err(1, "Failed to apply system.net limits");
+	caph_cache_tzdata();
+	caph_cache_catpages();
+	if (caph_enter_casper() == -1)
+		err(1, "Failed to enter capability mode");
+#endif
+}
+
 /*
  *  INIT -- Initialize syslogd from configuration table
  */
@@ -2532,9 +2574,16 @@ init(bool reload)
 	}
 #endif
 
+	if (!reload) {
+		struct tm tm;
+		/* Cache time files before entering capability mode. */
+		timegm(&tm);
+		syslogd_cap_enter();
+	}
+
 	Initialized = false;
 	closelogfiles();
-	fill_flist(readconfigfile(ConfFile));
+	fill_flist(cap_readconfigfile(cap_syslogd, ConfFile));
 	Initialized = true;
 
 	if (Debug) {
@@ -3364,14 +3413,14 @@ validate(struct sockaddr *sa, const char *hname)
 		.ai_socktype = SOCK_DGRAM,
 		.ai_flags = AI_PASSIVE | AI_NUMERICHOST
 	};
-	if (getaddrinfo(name, NULL, &hints, &res) == 0)
+	if (cap_getaddrinfo(cap_net, name, NULL, &hints, &res) == 0)
 		freeaddrinfo(res);
 	else if (strchr(name, '.') == NULL) {
 		strlcat(name, ".", sizeof(name));
 		strlcat(name, LocalDomain, sizeof(name));
 	}
-	if (getnameinfo(sa, sa->sa_len, ip, sizeof(ip), port, sizeof(port),
-			NI_NUMERICHOST | NI_NUMERICSERV) != 0)
+	if (cap_getnameinfo(cap_net, sa, sa->sa_len, ip, sizeof(ip), port,
+	    sizeof(port), NI_NUMERICHOST | NI_NUMERICSERV) != 0)
 		return (false);	/* for safety, should not occur */
 	dprintf("validate: dgram from IP %s, port %s, name %s;\n",
 		ip, port, name);
diff --git a/usr.sbin/syslogd/syslogd_cap.h b/usr.sbin/syslogd/syslogd_cap.h
index 420676aa72f2..2e52c57bcdf8 100644
--- a/usr.sbin/syslogd/syslogd_cap.h
+++ b/usr.sbin/syslogd/syslogd_cap.h
@@ -45,6 +45,8 @@
 #include <capsicum_helpers.h>
 #include <libcasper_service.h>
 
+#include <casper/cap_net.h>
+
 #include "syslogd.h"
 
 /*

From nobody Wed Nov 27 22:27:15 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZr0XTxz5fsfH;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZq5XMHz4V88;
	Wed, 27 Nov 2024 22:27:15 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746435;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=tibEUe1GIu9pKwVBQAQig5DLnydZT3RzEfmu8WIPwbY=;
	b=QrSc2cEkCt0E2ySbovLexotZmj7XJ7m3h7osQOM+giDbGrsPeAW9IY20sLVvyjFCS657Nx
	69sUSWfh3TV2sRJszn52j9vsIKsNHavCNYCAh/MaiHGozmJDF/Blt//DimfFn2CIlGMvc9
	iOr43DlH9R05YFtAXjflhtRgLOAhi7+SMr+gGqwVTOfobSUDXAX1OMpvTef5qGkGDJ2o43
	4W8frzE432HtivDsAeYDERKf7jAvKeW1L5JGeI/5E9bHxeI83avNl2c2w6JwHWbz+6KTay
	Sp+8Uo5vMK2lJTxxMUjBsD1AdMjwu0uYj9b8WJQq4cWh8z8EJtnJu5C71BDyiA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746435;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=tibEUe1GIu9pKwVBQAQig5DLnydZT3RzEfmu8WIPwbY=;
	b=Ofx5HlHf/B2XWE1HB8YZDaz8Jx7S7OLXGgFHfTj5lJk8zZxbDDLaisUnWQM26D3iEvh8l6
	D9fRP1jURYBC7YQAPyaseqCS4/bCsxbkhz0rhlDU8C6g1MRwE5Zb+HTCqbJnME8K29Qr0E
	CpGpTitynMBoN+Ux4LgDHXTICPL597BD64wMuzCveGdesFQwrEFmam4/WYzwnA9pioUo8V
	U/zqnmFhN1aiK5kjP/CWajBdcokGx9xmvWtbTIHtUY4dvy41VZaPweeTYY85FS9/NNj5NP
	1awxksAWyiXjfg3ZMCMRec5ZK72pAcFQePNTIlL8qPlzLfyBQmlnEW3IWhE5Wg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746435; a=rsa-sha256; cv=none;
	b=PEMSW7F2gTOhiFaE51h4K78OpL1x3pdmdeaAmzorYfjJ/eixNpXy8P9IZtqazbkANCEkrn
	N7VLNhDA54BgNzf7eUp7LsQs7lyqftbDLZqw3G67spA85uv91IpDjudO2kr/lQ/kFeE8ut
	5QwQNI/sxCP80VmzqY98lEZ5ixEoNQ+cDXTulV+a7nQj7crs1KWktJwBX0SEfPYkwhtrhq
	rDlkGU81JkhqakrJmamQj1/OGEzSybdYyiVRjXn2wcmZhpNNySm1wJkUSVIttWjdoWjy/v
	t5V2kGGX4RHVnFtetThaJLrCCMFGQIfD42JWFNLrAwlPoVODWQbEtpMSgEqNcQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZq57Yzz1Rvs;
	Wed, 27 Nov 2024 22:27: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 4ARMRFxB026794;
	Wed, 27 Nov 2024 22:27:15 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRFPb026791;
	Wed, 27 Nov 2024 22:27:15 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:15 GMT
Message-Id: <202411272227.4ARMRFPb026791@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: d2d180fb7736 - main - syslogd: Watch for dead pipe
  processes
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: d2d180fb77362eb1381ada9edefe4332be776bf2
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=d2d180fb77362eb1381ada9edefe4332be776bf2

commit d2d180fb77362eb1381ada9edefe4332be776bf2
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:26:02 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:26:02 +0000

    syslogd: Watch for dead pipe processes
    
    For each new pipe process, add its process descriptor into the kqueue
    with the EVFILT_PROCDESC filter and NOTE_EXIT event. When the pipe
    process exits, the main kqueue loop will catch this, logging exit errors
    and cleaning up the pipe process' filed node.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D41477
---
 usr.sbin/syslogd/syslogd.c | 95 ++++++++++++++++++++++++++++++++++++++--------
 usr.sbin/syslogd/syslogd.h |  1 +
 2 files changed, 81 insertions(+), 15 deletions(-)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 901a90ef3e35..8cc0534e509d 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -316,6 +316,7 @@ static bool	KeepKernFac;	/* Keep remotely logged kernel facility */
 static bool	needdofsync = true; /* Are any file(s) waiting to be fsynced? */
 static struct pidfh *pfh;
 static bool	RFC3164OutputFormat = true; /* Use legacy format by default. */
+static int	kq;		/* kqueue(2) descriptor. */
 
 struct iovlist;
 
@@ -324,7 +325,7 @@ static void	addpeer(const char *, const char *, mode_t);
 static void	addsock(const char *, const char *, mode_t);
 static nvlist_t *cfline(const char *, const char *, const char *, const char *);
 static const char *cvthname(struct sockaddr *);
-static void	deadq_enter(int);
+static struct deadq_entry *deadq_enter(int);
 static void	deadq_remove(struct deadq_entry *);
 static int	decode(const char *, const CODE *);
 static void	die(int) __dead2;
@@ -336,6 +337,7 @@ static void	fprintlog_successive(struct filed *, int);
 static void	init(bool);
 static void	logmsg(int, const struct logtime *, const char *, const char *,
     const char *, const char *, const char *, const char *, int);
+static void	log_deadchild(int, int, const struct filed *);
 static void	markit(void);
 static struct socklist *socksetup(struct addrinfo *, const char *, mode_t);
 static int	socklist_recv_file(struct socklist *);
@@ -373,9 +375,21 @@ close_filed(struct filed *f)
 		f->f_type = F_UNUSED;
 		break;
 	case F_PIPE:
-		if (f->f_procdesc >= 0) {
-			deadq_enter(f->f_procdesc);
+		if (f->f_procdesc != -1) {
+			/*
+			 * Close the procdesc, killing the underlying
+			 * process (if it is still alive).
+			 */
+			(void)close(f->f_procdesc);
 			f->f_procdesc = -1;
+			/*
+			 * The pipe process is guaranteed to be dead now,
+			 * so remove it from the deadq.
+			 */
+			if (f->f_dq != NULL) {
+				deadq_remove(f->f_dq);
+				f->f_dq = NULL;
+			}
 		}
 		break;
 	default:
@@ -487,7 +501,7 @@ main(int argc, char *argv[])
 	struct kevent ev;
 	struct socklist *sl;
 	pid_t spid;
-	int ch, kq, ppipe_w = -1, s;
+	int ch, ppipe_w = -1, s;
 	char *p;
 	bool bflag = false, pflag = false, Sflag = false;
 
@@ -789,6 +803,12 @@ main(int argc, char *argv[])
 				break;
 			}
 			break;
+		case EVFILT_PROCDESC:
+			if ((ev.fflags & NOTE_EXIT) != 0) {
+				log_deadchild(ev.ident, ev.data, ev.udata);
+				close_filed(ev.udata);
+			}
+			break;
 		}
 	}
 }
@@ -1828,6 +1848,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		dprintf(" %s\n", f->f_pname);
 		iovlist_append(il, "\n");
 		if (f->f_procdesc == -1) {
+			struct kevent ev;
 			struct filed *f_in_list;
 			size_t i = 0;
 
@@ -1842,10 +1863,16 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 				logerror(f->f_pname);
 				break;
 			}
+			EV_SET(&ev, f->f_procdesc, EVFILT_PROCDESC, EV_ADD,
+			    NOTE_EXIT, 0, f);
+			if (kevent(kq, &ev, 1, NULL, 0, NULL) == -1) {
+				logerror("failed to add procdesc kevent");
+				exit(1);
+			}
 		}
 		if (writev(f->f_file, il->iov, il->iovcnt) < 0) {
 			logerror(f->f_pname);
-			close_filed(f);
+			f->f_dq = deadq_enter(f->f_procdesc);
 		}
 		break;
 
@@ -2216,7 +2243,7 @@ die(int signo)
 		/* flush any pending output */
 		if (f->f_prevcount)
 			fprintlog_successive(f, 0);
-		/* close our end of the pipe */
+		/* terminate existing pipe processes */
 		if (f->f_type == F_PIPE)
 			close_filed(f);
 	}
@@ -2464,7 +2491,23 @@ closelogfiles(void)
 		case F_FORW:
 		case F_CONSOLE:
 		case F_TTY:
+			close_filed(f);
+			break;
 		case F_PIPE:
+			if (f->f_procdesc != -1) {
+				struct kevent ev;
+				/*
+				 * This filed is going to be freed.
+				 * Delete procdesc kevents that reference it.
+				 */
+				EV_SET(&ev, f->f_procdesc, EVFILT_PROCDESC,
+				    EV_DELETE, NOTE_EXIT, 0, f);
+				if (kevent(kq, &ev, 1, NULL, 0, NULL) == -1) {
+					logerror("failed to delete procdesc"
+					    "kevent");
+					exit(1);
+				}
+			}
 			close_filed(f);
 			break;
 		default:
@@ -3127,15 +3170,11 @@ markit(void)
 		case 0:
 			/* Already signalled once, try harder now. */
 			(void)pdkill(dq->dq_procdesc, SIGKILL);
-			(void)deadq_remove(dq);
 			break;
 
 		case 1:
-			if (pdkill(dq->dq_procdesc, SIGTERM) != 0)
-				(void)deadq_remove(dq);
-			else
-				dq->dq_timeout--;
-			break;
+			(void)pdkill(dq->dq_procdesc, SIGTERM);
+			/* FALLTHROUGH. */
 		default:
 			dq->dq_timeout--;
 		}
@@ -3552,13 +3591,13 @@ p_open(const char *prog, int *rpd)
 	return (pfd[1]);
 }
 
-static void
+static struct deadq_entry *
 deadq_enter(int pd)
 {
 	struct deadq_entry *dq;
 
 	if (pd == -1)
-		return;
+		return (NULL);
 
 	dq = malloc(sizeof(*dq));
 	if (dq == NULL) {
@@ -3569,16 +3608,42 @@ deadq_enter(int pd)
 	dq->dq_procdesc = pd;
 	dq->dq_timeout = DQ_TIMO_INIT;
 	TAILQ_INSERT_TAIL(&deadq_head, dq, dq_entries);
+	return (dq);
 }
 
 static void
 deadq_remove(struct deadq_entry *dq)
 {
 	TAILQ_REMOVE(&deadq_head, dq, dq_entries);
-	close(dq->dq_procdesc);
 	free(dq);
 }
 
+static void
+log_deadchild(int pd, int status, const struct filed *f)
+{
+	pid_t pid;
+	int code;
+	char buf[256];
+	const char *reason;
+
+	errno = 0; /* Keep strerror() stuff out of logerror messages. */
+	if (WIFSIGNALED(status)) {
+		reason = "due to signal";
+		code = WTERMSIG(status);
+	} else {
+		reason = "with status";
+		code = WEXITSTATUS(status);
+		if (code == 0)
+			return;
+	}
+	if (pdgetpid(pd, &pid) == -1)
+		err(1, "pdgetpid");
+	(void)snprintf(buf, sizeof(buf),
+	    "Logging subprocess %d (%s) exited %s %d.",
+	    pid, f->f_pname, reason, code);
+	logerror(buf);
+}
+
 static struct socklist *
 socksetup(struct addrinfo *ai, const char *name, mode_t mode)
 {
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
index 2d74c4d0ebbb..b6f83ceb6d8d 100644
--- a/usr.sbin/syslogd/syslogd.h
+++ b/usr.sbin/syslogd/syslogd.h
@@ -161,6 +161,7 @@ struct filed {
 		struct {
 			char	f_pname[MAXPATHLEN];
 			int	f_procdesc;
+			struct deadq_entry *f_dq;
 		};				/* F_PIPE */
 	};
 

From nobody Wed Nov 27 22:27:16 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZs0kpcz5fsV4;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZr6jwRz4VBJ;
	Wed, 27 Nov 2024 22:27:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746436;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=iUGwZ5BZ4TfABGgoSSgLlEZbDPnJFLPZgkXIHIoKjiw=;
	b=OEz5R8ZAzRYh4/gP+I41F0sNovCis4rOQ1DRhOtu+HDKEKfRInqfX83105g4M5L5aTkT7t
	n1Ei+lihfIrny0122S+UvzB8JppE9RKEUo5PuWhl7q7AvyuKgTn3RAG6mTE3Yxw0ndhSb1
	T2pRQa8QJZYEy4tu5HMRNCZUujL+qZFLk5k8Wf+FahLm6QcGMSiL41L0ug+jtVq625TYGe
	zroRf6Dc5G52f14SQHIsrnzM38BhUZEN45olaw8zwP21N9jkY1vy0cwMfj49d2C2gkevAr
	aSD69ktzc1Ksf4miW9p0iLOFjlJqIX+6N6z456cYBAtOCiy8k6hUKr/s8AvGTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746436;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=iUGwZ5BZ4TfABGgoSSgLlEZbDPnJFLPZgkXIHIoKjiw=;
	b=MQYLaxqYFTfSnBi5eD1Dz/XHIdtKReAwbUgHRU4FbmmrX7qFBYnFgTjtu2tliMXHNM2wq6
	/gcuI3HltrPS/EbR+/mM4MD4Ec3hLGViAlOzm27/woUwNHr3v+6RzUuDxTYKgKP+Yr0y6p
	J5PYT6MQevT49mhvK6QW4iDV4SpuC4YItGCqpL0+Vlcfp56cccyL88pMGlC1NkGZiDU2Fq
	qRgqCTY/88d2OKNKORXzEiQpjXDDwy7ieTpr7Az/iX3oHOeDGfzVTtJ8tdtUPpyZ+w6X++
	LpGaZMZEHoUIbAUTEcpIkYpecjnha9rUJxA6myJiY5PvlJ2TBT0P6vaCH3404A==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746436; a=rsa-sha256; cv=none;
	b=YrCmQg8+4qtjgffwnyZiAjsc2jOn0l09CLb5OP0v1O/AJRINyQ2zzSkXcmsiDqaLL9By3O
	y0oCkVhGcP05jhXt3Q53y5vYNEijPrQn8s30F/+mPep8aEljMJxWb9d8lXaJlDVOlhsjq2
	JpWwb0l/eoFLfu1dQ/6fxDIpyaT+R4BcAAU+g754UHAcWOHeY3lAy2f++/owUi/tjgATJ2
	+Gqa6kdaal9dmuZVuYlNHWT9DSWalQAM3AK7ybRLOtml8bWm8QGCZi8Kr0XsMavYdo+gZW
	mSPliA01cQcwb+yi8jJZ54RUEWXCl2fhlnLcNwQn+pxkpEb8fFSUDOiRta4V2g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZr6LDvz1Rl4;
	Wed, 27 Nov 2024 22:27: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 4ARMRG4J026845;
	Wed, 27 Nov 2024 22:27:16 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRGh4026842;
	Wed, 27 Nov 2024 22:27:16 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:16 GMT
Message-Id: <202411272227.4ARMRGh4026842@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 4ecbee2760f7 - main - syslogd: Open forwarding socket
  descriptors
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4ecbee2760f7c7bb0af8b28c202b12d5374e9f4c
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=4ecbee2760f7c7bb0af8b28c202b12d5374e9f4c

commit 4ecbee2760f7c7bb0af8b28c202b12d5374e9f4c
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:26:04 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:26:04 +0000

    syslogd: Open forwarding socket descriptors
    
    Previously, when forwarding a message to a remote address, the target's
    addrinfo was saved at config-parse-time. When message-deliver-time came,
    the message's addrinfo was passed into sendmsg(2) and delivered by the
    first available inet socket.
    
    Passing an addrinfo into sendmsg(2) is prohibited in Capsicum capability
    mode, so sockets are now opened and connected to their remote peers at
    config-parse-time when executing outside of the capability sandbox.
    
    These connected socket descriptors are saved and passed into sendmsg(2),
    allowing forwarding to be performed inside of the capability sandbox.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D47104
---
 usr.sbin/syslogd/syslogd.c            | 145 +++++++++++++++++++++++-----------
 usr.sbin/syslogd/syslogd.h            |   3 +-
 usr.sbin/syslogd/syslogd_cap_config.c |  35 ++++----
 3 files changed, 115 insertions(+), 68 deletions(-)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 8cc0534e509d..0e063b72beb6 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -364,9 +364,12 @@ close_filed(struct filed *f)
 
 	switch (f->f_type) {
 	case F_FORW:
-		if (f->f_addr != NULL) {
-			freeaddrinfo(f->f_addr);
-			f->f_addr = NULL;
+		if (f->f_addr_fds != NULL) {
+			for (size_t i = 0; i < f->f_num_addr_fds; ++i)
+				close(f->f_addr_fds[i]);
+			free(f->f_addr_fds);
+			f->f_addr_fds = NULL;
+			f->f_num_addr_fds = 0;
 		}
 		/* FALLTHROUGH */
 	case F_FILE:
@@ -1742,30 +1745,49 @@ iovlist_truncate(struct iovlist *il, size_t size)
 static void
 fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 {
-	struct msghdr msghdr;
-	struct addrinfo *r;
-	struct socklist *sl;
 	const char *msgret;
-	ssize_t lsent;
 
 	switch (f->f_type) {
-	case F_FORW:
-		dprintf(" %s", f->f_hname);
-		switch (f->f_addr->ai_family) {
+	case F_FORW: {
+		ssize_t lsent;
+
+		if (Debug) {
+			int domain, sockfd = f->f_addr_fds[0];
+			socklen_t len = sizeof(domain);
+
+			if (getsockopt(sockfd, SOL_SOCKET, SO_DOMAIN,
+			    &domain, &len) < 0)
+				err(1, "getsockopt");
+
+			printf(" %s", f->f_hname);
+			switch (domain) {
 #ifdef INET
-		case AF_INET:
-			dprintf(":%d\n",
-			    ntohs(satosin(f->f_addr->ai_addr)->sin_port));
-			break;
+			case AF_INET: {
+				struct sockaddr_in sin;
+
+				len = sizeof(sin);
+				if (getpeername(sockfd,
+				    (struct sockaddr *)&sin, &len) < 0)
+					err(1, "getpeername");
+				printf(":%d\n", ntohs(sin.sin_port));
+				break;
+			}
 #endif
 #ifdef INET6
-		case AF_INET6:
-			dprintf(":%d\n",
-			    ntohs(satosin6(f->f_addr->ai_addr)->sin6_port));
-			break;
+			case AF_INET6: {
+				struct sockaddr_in6 sin6;
+
+				len = sizeof(sin6);
+				if (getpeername(sockfd,
+				    (struct sockaddr *)&sin6, &len) < 0)
+					err(1, "getpeername");
+				printf(":%d\n", ntohs(sin6.sin6_port));
+				break;
+			}
 #endif
-		default:
-			dprintf("\n");
+			default:
+				printf("\n");
+			}
 		}
 
 #if defined(INET) || defined(INET6)
@@ -1773,24 +1795,13 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		iovlist_truncate(il, MaxForwardLen);
 #endif
 
-		lsent = 0;
-		for (r = f->f_addr; r; r = r->ai_next) {
-			memset(&msghdr, 0, sizeof(msghdr));
-			msghdr.msg_name = r->ai_addr;
-			msghdr.msg_namelen = r->ai_addrlen;
-			msghdr.msg_iov = il->iov;
-			msghdr.msg_iovlen = il->iovcnt;
-			STAILQ_FOREACH(sl, &shead, next) {
-				if (sl->sl_socket < 0)
-					continue;
-				if (sl->sl_sa == NULL ||
-				    sl->sl_family == AF_UNSPEC ||
-				    sl->sl_family == AF_LOCAL)
-					continue;
-				lsent = sendmsg(sl->sl_socket, &msghdr, 0);
-				if (lsent == (ssize_t)il->totalsize)
-					break;
-			}
+		for (size_t i = 0; i < f->f_num_addr_fds; ++i) {
+			struct msghdr msg = {
+				.msg_iov = il->iov,
+				.msg_iovlen = il->iovcnt,
+			};
+
+			lsent = sendmsg(f->f_addr_fds[i], &msg, 0);
 			if (lsent == (ssize_t)il->totalsize && !send_to_all)
 				break;
 		}
@@ -1822,6 +1833,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 			}
 		}
 		break;
+	}
 
 	case F_FILE:
 		dprintf(" %s\n", f->f_fname);
@@ -2650,17 +2662,36 @@ init(bool reload)
 				printf("%s%s", _PATH_DEV, f->f_fname);
 				break;
 
-			case F_FORW:
-				switch (f->f_addr->ai_family) {
+			case F_FORW: {
+				int domain, sockfd = f->f_addr_fds[0];
+				socklen_t len = sizeof(domain);
+
+				if (getsockopt(sockfd, SOL_SOCKET, SO_DOMAIN,
+				    &domain, &len) < 0)
+					err(1, "getsockopt");
+
+				switch (domain) {
 #ifdef INET
-				case AF_INET:
-					port = ntohs(satosin(f->f_addr->ai_addr)->sin_port);
+				case AF_INET: {
+					struct sockaddr_in sin;
+
+					len = sizeof(sin);
+					if (getpeername(sockfd, (struct sockaddr *)&sin, &len) < 0)
+						err(1, "getpeername");
+					port = ntohs(sin.sin_port);
 					break;
+				}
 #endif
 #ifdef INET6
-				case AF_INET6:
-					port = ntohs(satosin6(f->f_addr->ai_addr)->sin6_port);
+				case AF_INET6: {
+					struct sockaddr_in6 sin6;
+
+					len = sizeof(sin6);
+					if (getpeername(sockfd, (struct sockaddr *)&sin6, &len) < 0)
+						err(1, "getpeername");
+					port = ntohs(sin6.sin6_port);
 					break;
+				}
 #endif
 				default:
 					port = 0;
@@ -2671,6 +2702,7 @@ init(bool reload)
 					printf("%s", f->f_hname);
 				}
 				break;
+			}
 
 			case F_PIPE:
 				printf("%s", f->f_pname);
@@ -2948,7 +2980,7 @@ parse_selector(const char *p, struct filed *f)
 static void
 parse_action(const char *p, struct filed *f)
 {
-	struct addrinfo hints, *res;
+	struct addrinfo *ai, hints, *res;
 	int error, i;
 	const char *q;
 	bool syncfile;
@@ -3003,7 +3035,28 @@ parse_action(const char *p, struct filed *f)
 			dprintf("%s\n", gai_strerror(error));
 			break;
 		}
-		f->f_addr = res;
+
+		for (ai = res; ai != NULL; ai = ai->ai_next)
+			++f->f_num_addr_fds;
+
+		f->f_addr_fds = calloc(f->f_num_addr_fds,
+		    sizeof(*f->f_addr_fds));
+		if (f->f_addr_fds == NULL)
+			err(1, "malloc failed");
+
+		for (ai = res, i = 0; ai != NULL; ai = ai->ai_next, ++i) {
+			int *sockp = &f->f_addr_fds[i];
+
+			*sockp = socket(ai->ai_family, ai->ai_socktype, 0);
+			if (*sockp < 0)
+				err(1, "socket");
+			if (connect(*sockp, ai->ai_addr, ai->ai_addrlen) < 0)
+				err(1, "connect");
+			/* Make it a write-only socket. */
+			if (shutdown(*sockp, SHUT_RD) < 0)
+				err(1, "shutdown");
+		}
+
 		f->f_type = F_FORW;
 		break;
 
diff --git a/usr.sbin/syslogd/syslogd.h b/usr.sbin/syslogd/syslogd.h
index b6f83ceb6d8d..744465a9cc00 100644
--- a/usr.sbin/syslogd/syslogd.h
+++ b/usr.sbin/syslogd/syslogd.h
@@ -156,7 +156,8 @@ struct filed {
 		char	f_fname[MAXPATHLEN];	/* F_FILE, F_CONSOLE, F_TTY */
 		struct {
 			char	f_hname[MAXHOSTNAMELEN];
-			struct addrinfo *f_addr;
+			int	*f_addr_fds;
+			size_t	f_num_addr_fds;
 		};				/* F_FORW */
 		struct {
 			char	f_pname[MAXPATHLEN];
diff --git a/usr.sbin/syslogd/syslogd_cap_config.c b/usr.sbin/syslogd/syslogd_cap_config.c
index 09d49b0a41b2..a952dbe325a0 100644
--- a/usr.sbin/syslogd/syslogd_cap_config.c
+++ b/usr.sbin/syslogd/syslogd_cap_config.c
@@ -137,18 +137,9 @@ filed_to_nvlist(const struct filed *filed)
 	} else if (f_type == F_FILE || f_type == F_CONSOLE || f_type == F_TTY) {
 		nvlist_add_string(nvl_filed, "f_fname", filed->f_fname);
 	} else if (f_type == F_FORW) {
-		struct addrinfo *ai = filed->f_addr, *cur;
-		nvlist_t *nvl_addrinfo;
-
 		nvlist_add_string(nvl_filed, "f_hname", filed->f_hname);
-		if (filed->f_addr != NULL) {
-			for (cur = ai; cur != NULL; cur = cur->ai_next) {
-				nvl_addrinfo = addrinfo_pack(cur);
-				nvlist_append_nvlist_array(nvl_filed,
-				    "f_addr", nvl_addrinfo);
-				nvlist_destroy(nvl_addrinfo);
-			}
-		}
+		nvlist_add_descriptor_array(nvl_filed, "f_addr_fds",
+		    filed->f_addr_fds, filed->f_num_addr_fds);
 	} else if (filed->f_type == F_PIPE) {
 		nvlist_add_string(nvl_filed, "f_pname", filed->f_pname);
 		if (filed->f_procdesc >= 0) {
@@ -217,19 +208,21 @@ nvlist_to_filed(const nvlist_t *nvl_filed)
 		(void)strlcpy(filed->f_fname, nvlist_get_string(nvl_filed,
 		    "f_fname"), sizeof(filed->f_fname));
 	} else if (f_type == F_FORW) {
-		const nvlist_t * const *f_addr;
-		struct addrinfo *ai, **next = NULL;
+		const int *f_addr_fds;
 
 		(void)strlcpy(filed->f_hname, nvlist_get_string(nvl_filed,
 		    "f_hname"), sizeof(filed->f_hname));
-		f_addr = nvlist_get_nvlist_array(nvl_filed, "f_addr", &sz);
-		for (i = 0; i < sz; ++i) {
-			ai = addrinfo_unpack(f_addr[i]);
-			if (next == NULL)
-				filed->f_addr = ai;
-			else
-				*next = ai;
-			next = &ai->ai_next;
+
+		f_addr_fds = nvlist_get_descriptor_array(nvl_filed,
+		    "f_addr_fds", &filed->f_num_addr_fds);
+		filed->f_addr_fds = calloc(filed->f_num_addr_fds,
+		    sizeof(*f_addr_fds));
+		if (filed->f_addr_fds == NULL)
+			err(1, "calloc");
+		for (i = 0; i < filed->f_num_addr_fds; ++i) {
+			filed->f_addr_fds[i] = dup(f_addr_fds[i]);
+			if (filed->f_addr_fds[i] < 0)
+				err(1, "dup");
 		}
 	} else if (filed->f_type == F_PIPE) {
 		(void)strlcpy(filed->f_pname, nvlist_get_string(nvl_filed,

From nobody Wed Nov 27 22:27:17 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZt4NMqz5fsYw;
	Wed, 27 Nov 2024 22:27: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZt0Zp8z4VKT;
	Wed, 27 Nov 2024 22:27:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746438;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=foUVecylVe/VH9dQlHzYYbB3E6yx7VMMdyrzZKHkg04=;
	b=BalW+3x0W9SVDAO2M35h30gxCiKvSjOug6T0uSZSgUiQnxbsH6p/j+EsqIs+xs/FZRpQdQ
	1GWF5NmRvu0WywP5v++OJqA/eEKHPuyM/IRPHfuzpWMvTzF5VYFTIKLSgdupw2itVl2gh+
	tnncZjShKMGA0elgJzmUL2s/1a1eMUkBoJzun97JUGchBfkrvsZbohTTgNevcb/tix5Gcn
	7I6GHyXBkZc87rkWdNC5TZIudizPS91xfzrbmnQuga47W8HXCHXVx3n96Q+QQwCpWDjh+Q
	hwz2YslTFYE/jYtqOQgWKXRLmYZbKJS3asiEToR8SGj9Mh5eVQevVtMV+/AEvg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746438;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=foUVecylVe/VH9dQlHzYYbB3E6yx7VMMdyrzZKHkg04=;
	b=oHZ5LjOf5UXPhMYgvxZw7uNfPjIQ9IHRpvSbteQ779VMX8qypGFFSdnOySxme1ZncFuaZ0
	hCg8UwnTCCLM+S/h6NxnVCR0fVJHEo82QiayFut7TIT4WOxJVZLvCy2pLfskzmswZHLMgG
	FFQUQc6aFJrqDFPW+aFKsUK6z3jrIFG5Jco6Z8mAJT4Ks0SGoyD5KNiIqD5X6jFXqYfHr+
	ciMmel1VLnb7l3oTqVyrSjvuF5jQdpVQ/4wtrGbpCnNLt6dqlQfryodS5MuQlzi3rF0Xmi
	JiDn71fGMWrZJTSlrO3N8X1WxHtTWhlWZPw2iwOAmNasuBjQ9FqTh83nVxlkdQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746438; a=rsa-sha256; cv=none;
	b=Smif9/ZPNPjsyGbjBsuV2x93oob6isNNT0IORAOx0sqmvDiwKPi9dBXcgeNzyzk3F6x1K7
	kwET4wV9E5C5niTgvwyOAfhLG241W54b7P+yH2IImyJKMB0JErnO/rhZfvmSfeyyRhQ16f
	79FVPliURw5KPizlN2llXqBIGsdX4AoccSvGIFzSJXUqGyXmLVXnYVvhYyGJoyqhiwolhM
	Vn9aFAe3Ps/4lCAVGWalWOMdN/EtNzCObhdYRDUxQABZU7jq/6Sr7tislOsH4kUoUEDLn1
	bFgrXzTzGCxvRGj6G2UtQPOdZ+6axQyQyusDzvkrpNZalyNJvO4wI0bp8AWgkA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZt00JVz1Rwc;
	Wed, 27 Nov 2024 22:27:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4ARMRHKc026903;
	Wed, 27 Nov 2024 22:27:17 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRHYS026900;
	Wed, 27 Nov 2024 22:27:17 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:17 GMT
Message-Id: <202411272227.4ARMRHYS026900@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: 8b63477e5e00 - main - syslogd: Add host forwarding
  test
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 8b63477e5e008574cfdc14185e993234244dc908
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=8b63477e5e008574cfdc14185e993234244dc908

commit 8b63477e5e008574cfdc14185e993234244dc908
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:26:10 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:26:10 +0000

    syslogd: Add host forwarding test
    
    Test communication between hosts by setting up two syslogd instances,
    each binded to their own addresses, and sending a message from one to
    the other. The tests passes if the message was delivered and logged
    successfully.
    
    This required some tweaking to the syslogd start and stop routines so
    they could handle launching multiple syslogd instances with different
    runtime files.
    
    Run the tests in jails with an isolated VNET so they don't fail due to
    an address bind collision in the host's VNET.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D47649
---
 usr.sbin/syslogd/tests/Makefile        |   4 ++
 usr.sbin/syslogd/tests/syslogd_test.sh | 125 ++++++++++++++++++++++++++++-----
 2 files changed, 110 insertions(+), 19 deletions(-)

diff --git a/usr.sbin/syslogd/tests/Makefile b/usr.sbin/syslogd/tests/Makefile
index 781730a1102a..30972d3fced5 100644
--- a/usr.sbin/syslogd/tests/Makefile
+++ b/usr.sbin/syslogd/tests/Makefile
@@ -1,5 +1,9 @@
 ATF_TESTS_SH+=	syslogd_test
+# Run in jail with new vnet so we don't need to worry about address conflicts
+TEST_METADATA+=	execenv="jail"
+TEST_METADATA+=	execenv_jail_params="vnet=new"
 # Several syslogd listening on the same port prevent parallel operation
 TEST_METADATA+=	is_exclusive="true"
+TEST_METADATA+=	timeout=20
 
 .include <bsd.test.mk>
diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh
index 08e6d76b9ba6..aa8d48e64f5c 100644
--- a/usr.sbin/syslogd/tests/syslogd_test.sh
+++ b/usr.sbin/syslogd/tests/syslogd_test.sh
@@ -11,7 +11,7 @@
 #
 
 # Tests to-do:
-# actions: hostname, users
+# actions: users
 
 readonly SYSLOGD_UDP_PORT="5140"
 readonly SYSLOGD_CONFIG="${PWD}/syslog.conf"
@@ -22,27 +22,72 @@ readonly SYSLOGD_LOCAL_PRIVSOCKET="${PWD}/logpriv.sock"
 # Start a private syslogd instance.
 syslogd_start()
 {
-    local jail
+    local jail bind_addr conf_file pid_file socket privsocket
+    local opt next other_args
+
+    # Setup loopback so we can deliver messages to ourself.
+    atf_check ifconfig lo0 inet 127.0.0.1/16
+
+    OPTIND=1
+    while getopts ":b:f:j:P:p:S:" opt; do
+        case "${opt}" in
+        b)
+            bind_addr="${OPTARG}"
+            ;;
+        f)
+            conf_file="${OPTARG}"
+            ;;
+        j)
+            jail="jexec ${OPTARG}"
+            ;;
+        P)
+            pid_file="${OPTARG}"
+            ;;
+        p)
+            socket="${OPTARG}"
+            ;;
+        S)
+            privsocket="${OPTARG}"
+            ;;
+        ?)
+            opt="${OPTARG}"
+            next="$(eval echo \${${OPTIND}})"
+
+            case "${next}" in
+            -* | "")
+                other_args="${other_args} -${opt}"
+                shift $((OPTIND - 1))
+                ;;
+            *)
+                other_args="${other_args} -${opt} ${next}"
+                shift ${OPTIND}
+                ;;
+            esac
+
+            # Tell getopts to continue parsing.
+            OPTIND=1
+            ;;
+        :)
+            atf_fail "The -${OPTARG} flag requires an argument"
+            ;;
+        esac
+    done
 
-    if [ "$1" = "-j" ]; then
-        jail="jexec $2"
-        shift 2
-    fi
     $jail syslogd \
-        -b ":${SYSLOGD_UDP_PORT}" \
+        -b "${bind_addr:-":${SYSLOGD_UDP_PORT}"}" \
         -C \
         -d \
-        -f "${SYSLOGD_CONFIG}" \
+        -f "${conf_file:-${SYSLOGD_CONFIG}}" \
         -H \
-        -p "${SYSLOGD_LOCAL_SOCKET}" \
-        -P "${SYSLOGD_PIDFILE}" \
-        -S "${SYSLOGD_LOCAL_PRIVSOCKET}" \
-        $@ \
+        -P "${pid_file:-${SYSLOGD_PIDFILE}}" \
+        -p "${socket:-${SYSLOGD_LOCAL_SOCKET}}" \
+        -S "${privsocket:-${SYSLOGD_LOCAL_PRIVSOCKET}}" \
+        ${other_args} \
         &
 
     # Give syslogd a bit of time to spin up.
     while [ "$((i+=1))" -le 20 ]; do
-        [ -S "${SYSLOGD_LOCAL_SOCKET}" ] && return
+        [ -S "${socket:-${SYSLOGD_LOCAL_SOCKET}}" ] && return
         sleep 0.1
     done
     atf_fail "timed out waiting for syslogd to start"
@@ -57,17 +102,19 @@ syslogd_log()
 # Make syslogd reload its configuration file.
 syslogd_reload()
 {
-    pkill -HUP -F "${SYSLOGD_PIDFILE}"
+    pkill -HUP -F "${1:-${SYSLOGD_PIDFILE}}"
 }
 
 # Stop a private syslogd instance.
 syslogd_stop()
 {
-    pid=$(cat "${SYSLOGD_PIDFILE}")
-    if pkill -F "${SYSLOGD_PIDFILE}"; then
+    local pid_file="${1:-${SYSLOGD_PIDFILE}}"
+
+    pid=$(cat "${pid_file}")
+    if pkill -F "${pid_file}"; then
         wait "${pid}"
-        rm -f "${SYSLOGD_PIDFILE}" "${SYSLOGD_LOCAL_SOCKET}" \
-            "${SYSLOGD_LOCAL_PRIVSOCKET}"
+        rm -f "${pid_file}" "${2:-${SYSLOGD_LOCAL_SOCKET}}" \
+            "${3:-${SYSLOGD_LOCAL_PRIVSOCKET}}"
     fi
 }
 
@@ -270,6 +317,45 @@ prop_filter_cleanup()
     syslogd_stop
 }
 
+atf_test_case "host_action" "cleanup"
+host_action_head()
+{
+    atf_set descr "Sends a message to a specified host"
+}
+host_action_body()
+{
+    local addr="192.0.2.100"
+    local logfile="${PWD}/host_action.log"
+
+    atf_check ifconfig lo1 create
+    atf_check ifconfig lo1 inet "${addr}/24"
+    atf_check ifconfig lo1 up
+
+    printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}"
+    syslogd_start -b "${addr}"
+
+    printf "user.debug\t@${addr}\n" > "${SYSLOGD_CONFIG}.2"
+    syslogd_start \
+        -f "${SYSLOGD_CONFIG}.2" \
+        -P "${SYSLOGD_PIDFILE}.2" \
+        -p "${SYSLOGD_LOCAL_SOCKET}.2" \
+        -S "${SYSLOGD_LOCAL_PRIVSOCKET}.2"
+
+    syslogd_log -p user.debug -t "test" -h "${SYSLOGD_LOCAL_SOCKET}.2" \
+        "message from syslogd2"
+    atf_check -s exit:0 -o match:"test: message from syslogd2" \
+        cat "${logfile}"
+}
+host_action_cleanup()
+{
+    syslogd_stop
+    syslogd_stop \
+        "${SYSLOGD_PIDFILE}.2" \
+        "${SYSLOGD_LOCAL_SOCKET}.2" \
+        "${SYSLOGD_LOCAL_PRIVSOCKET}.2"
+    atf_check ifconfig lo1 destroy
+}
+
 atf_test_case "pipe_action" "cleanup"
 pipe_action_head()
 {
@@ -308,7 +394,7 @@ jail_noinet_body()
 
     logfile="${PWD}/jail_noinet.log"
     printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}"
-    syslogd_start -j syslogd_noinet -ss
+    syslogd_start -j syslogd_noinet -s -s
 
     syslogd_log -p user.debug -t "test" -h "${SYSLOGD_LOCAL_SOCKET}" \
         "hello, world"
@@ -326,6 +412,7 @@ atf_init_test_cases()
     atf_add_test_case "prog_filter"
     atf_add_test_case "host_filter"
     atf_add_test_case "prop_filter"
+    atf_add_test_case "host_action"
     atf_add_test_case "pipe_action"
     atf_add_test_case "jail_noinet"
 }

From nobody Wed Nov 27 22:27:19 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzDZv3MNJz5fs8b;
	Wed, 27 Nov 2024 22:27:19 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzDZv1njcz4VFH;
	Wed, 27 Nov 2024 22:27:19 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732746439;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=u9G4BVf8gKm+7LipYlI+Wt4xNrXgXIeil0NM/2lDGYM=;
	b=La4O/tEY4o0wSmuvWHtlNQ2/E8oNFNhY+QiObr+xmjXt1LkkznZx+sUDT7vsNPVlabtlF6
	+jTn94aeZNyFchXEeyYkjAvEifJy2JHaUmACNkWOYgvkPYqkcQBKvv8yr6LqKrpkQ4coa4
	wyoUNEOExQFtQNnzkRMzTWmn4tb0ngaRsQEKg+E9WfK5w0t9wM7co7ZChcAjf6YVRg61Ze
	iGcJ5PEcyRhvA+X0BHVRK5/uCzIYHaKi3oMpyj+ihvr83d5ll/Gwo/WSdhI1jhJccNju+4
	x2AQxTgY8rLb+dK5llEB6g/paOIrCybeBsCQ8t5Ho/dmKo8Xb0Z//mj6GiNcjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732746439;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=u9G4BVf8gKm+7LipYlI+Wt4xNrXgXIeil0NM/2lDGYM=;
	b=EcdjJrAVfaPEWFXETQRZm0sbPAT7nfFrtffRWyB+K8GSM9XAkBSGFd6tBHNbfGoPr7uRA/
	RcUCPu3dCKoVUfOHfIm8njjlyzaNBLPoMo4Z2/8z8mncIaQ19PTQPtZ2/GDqb0IYXRd09z
	q63APad9Mk3/oJRKoGGCGtdbx+FII8/WrwIEtnax559gbDtR6gNbqEhxzMbvalAXLwpGmb
	BXLUDpLA097DJCfHeQet9MYy5juMxTGaHiRtqxgqVUmJbRVto1YCBp5leGJLCYhOwubHKW
	46AXMn9RHEkE1uHJTIXRv+X559lUdknOW+9wXacIIs9TkGozpPLovsM6p4qxRA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732746439; a=rsa-sha256; cv=none;
	b=SqMdggLeWn85iakp+nPxn904hh+CHNOGBYfHlDyWLPQFAxOACGOgbLeoWpWpmgw4A5Cehf
	2YMmGcdvIjuvYM9uB2Wt8bp/3uiYKaV33PTNVCxESoCL5QsIa2UsPtTAAC72fQGY8BTLX0
	xvY0eZW/o7iWc+jd9YgDj0u56GslBuoUiVq7c/V1QcKsCBCZmP3JQV8YlKcxxzWorm5QaW
	EXD13IniYDtGLEKvDUdzKBOVK2NsuLmbb8VfxR+5t0YbQvRkaK7leIy7jA94HjauVN79p8
	K/hq4wBDX6oRVCRbkBc2QDbavDRwcsv0lqlWcrrKTvEG/74+zgYwKeVrC7dHtg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzDZv10m7z1Rl5;
	Wed, 27 Nov 2024 22:27:19 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4ARMRJni026955;
	Wed, 27 Nov 2024 22:27:19 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ARMRJq3026952;
	Wed, 27 Nov 2024 22:27:19 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 22:27:19 GMT
Message-Id: <202411272227.4ARMRJq3026952@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Jake Freeland <jfree@FreeBSD.org>
Subject: git: b872bb720630 - main - syslogd: Split up basic test
  case
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jfree
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: b872bb7206300dea5d02313985704da75ae87598
Auto-Submitted: auto-generated

The branch main has been updated by jfree:

URL: https://cgit.FreeBSD.org/src/commit/?id=b872bb7206300dea5d02313985704da75ae87598

commit b872bb7206300dea5d02313985704da75ae87598
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2024-11-27 22:26:16 +0000
Commit:     Jake Freeland <jfree@FreeBSD.org>
CommitDate: 2024-11-27 22:26:16 +0000

    syslogd: Split up basic test case
    
    The basic case previously tested if messages are correctly logged over
    UNIX, INET, and INET6 transport. This single case can be split up into
    three separate cases to decrease code complexity and offer more granular
    results.
    
    Both INET and INET6 cases will be skipped if the kernel does not
    support the corresponding transport.
    
    Reviewed by:    zlei, markj
    Differential Revision:  https://reviews.freebsd.org/D47650
---
 usr.sbin/syslogd/tests/syslogd_test.sh | 83 ++++++++++++++++++++++++----------
 1 file changed, 60 insertions(+), 23 deletions(-)

diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh
index aa8d48e64f5c..e75c85d5995a 100644
--- a/usr.sbin/syslogd/tests/syslogd_test.sh
+++ b/usr.sbin/syslogd/tests/syslogd_test.sh
@@ -118,41 +118,76 @@ syslogd_stop()
     fi
 }
 
-atf_test_case "basic" "cleanup"
-basic_head()
+atf_test_case "unix" "cleanup"
+unix_head()
 {
-    atf_set descr "Messages are logged via supported transports"
+    atf_set descr "Messages are logged over UNIX transport"
 }
-basic_body()
+unix_body()
 {
-    logfile="${PWD}/basic.log"
+    local logfile="${PWD}/unix.log"
+
     printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}"
     syslogd_start
 
-    syslogd_log -p user.debug -t basic -h "${SYSLOGD_LOCAL_SOCKET}" \
+    syslogd_log -p user.debug -t unix -h "${SYSLOGD_LOCAL_SOCKET}" \
         "hello, world (unix)"
-    atf_check -s exit:0 -o match:"basic: hello, world \(unix\)" \
+    atf_check -s exit:0 -o match:"unix: hello, world \(unix\)" \
         tail -n 1 "${logfile}"
+}
+unix_cleanup()
+{
+    syslogd_stop
+}
 
-    # Grab kernel configuration file.
-    sysctl kern.conftxt > conf.txt
+atf_test_case "inet" "cleanup"
+inet_head()
+{
+    atf_set descr "Messages are logged over INET transport"
+}
+inet_body()
+{
+    local logfile="${PWD}/inet.log"
+
+    [ "$(sysctl -n kern.features.inet)" != "1" ] &&
+        atf_skip "Kernel does not support INET"
+
+    printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}"
+    syslogd_start
 
     # We have INET transport; make sure we can use it.
-    if grep -qw "INET" conf.txt; then
-        syslogd_log -4 -p user.debug -t basic -h 127.0.0.1 -P "${SYSLOGD_UDP_PORT}" \
-            "hello, world (v4)"
-        atf_check -s exit:0 -o match:"basic: hello, world \(v4\)" \
-            tail -n 1 "${logfile}"
-    fi
+    syslogd_log -4 -p user.debug -t inet -h 127.0.0.1 -P "${SYSLOGD_UDP_PORT}" \
+        "hello, world (v4)"
+    atf_check -s exit:0 -o match:"inet: hello, world \(v4\)" \
+        tail -n 1 "${logfile}"
+}
+inet_cleanup()
+{
+    syslogd_stop
+}
+
+atf_test_case "inet6" "cleanup"
+inet6_head()
+{
+    atf_set descr "Messages are logged over INET6 transport"
+}
+inet6_body()
+{
+    local logfile="${PWD}/inet6.log"
+
+    [ "$(sysctl -n kern.features.inet6)" != "1" ] &&
+        atf_skip "Kernel does not support INET6"
+
+    printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}"
+    syslogd_start
+
     # We have INET6 transport; make sure we can use it.
-    if grep -qw "INET6" conf.txt; then
-        syslogd_log -6 -p user.debug -t basic -h ::1 -P "${SYSLOGD_UDP_PORT}" \
-            "hello, world (v6)"
-        atf_check -s exit:0 -o match:"basic: hello, world \(v6\)" \
-            tail -n 1 "${logfile}"
-    fi
+    syslogd_log -6 -p user.debug -t unix -h ::1 -P "${SYSLOGD_UDP_PORT}" \
+        "hello, world (v6)"
+    atf_check -s exit:0 -o match:"unix: hello, world \(v6\)" \
+        tail -n 1 "${logfile}"
 }
-basic_cleanup()
+inet6_cleanup()
 {
     syslogd_stop
 }
@@ -407,7 +442,9 @@ jail_noinet_cleanup()
 
 atf_init_test_cases()
 {
-    atf_add_test_case "basic"
+    atf_add_test_case "unix"
+    atf_add_test_case "inet"
+    atf_add_test_case "inet6"
     atf_add_test_case "reload"
     atf_add_test_case "prog_filter"
     atf_add_test_case "host_filter"

From nobody Wed Nov 27 23:48:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzGNY1p6pz5fy6N;
	Wed, 27 Nov 2024 23:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzGNY1HcQz4dkj;
	Wed, 27 Nov 2024 23: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=1732751309;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Fw+Ejr+pJnxoYGt5HcZq8y7vfJc9IXI8x0Mw0VG4/rU=;
	b=Ij4R1qmAoPe9jjCc/Wfn0qt1iQFSGL9i7AtY6cCokc0SQasFcUiz4rbYqva3T2nxIu8X7V
	gD0SsymxoWSr47FRlE975RvaLW2OdA4p2zuLSUVxnJ8+1hwfMP0hLA5r96v/4IhpjBFNL7
	8gz4O7besiGJAiuWs+fe4jJlLK1QU6skB0k2aFrafVyF4yLm3ox5hPYj5BBkwFxaKlaRuK
	DHwsF+6tC4cLDf4wW1AHJE5UTE0e3JwoUgyzTScF4OuwzYne1mPzLqxB8iY92nTpiFjnqE
	mpKbBSQ1t5hwCQmOMfJxikkxNnxrP7ZS36MS3aAI2NKSkcKS3ksi5ObUnSMGLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732751309;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Fw+Ejr+pJnxoYGt5HcZq8y7vfJc9IXI8x0Mw0VG4/rU=;
	b=lDSkYBVk/dMmjOosxxEOCgM/Ve8GmbBDdKeS8/4MTPZiwwrx0dCYB3oYWwUm8+zalEa6/g
	tAFcbh0p2SQFufMV639JcxAuGUKoXxFLIZJyMmxQSpKlyrzS6erTVkmNWZuecc4I9gUZWZ
	NQ91EU7Y2fQrIFTu2G+29z6lsXHe7uFNYr6OpFAGsiZGsSL18cAcASV6gwouitWnWkEuSE
	uPlSCJKkSR1k+X60suv2YCpm1C4BHAYrFrw1MMwoEUBJt0YuKwvwWPzDnX9eJ2yaOH8T/1
	j1nSrOGsP5/kTkzEbby0HK3SY5CjXc1Hwu8YjqB745FVegqw4qa8Yy94icjY5Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732751309; a=rsa-sha256; cv=none;
	b=a9SzLBo4RCeIocUXSOBZSHKKG7USWEvTCXFc38HVS6Dae8oFfE2jt6iPeRuu6URkM2OuyE
	GPyde3Yp827EDWxNriJmQkjspKxrIa5gNhcEdbtfpcygvAYFWIc/Txu+mgKIElKAtkYoLs
	5SqEvsgrROj5Z8pg2REPy4AhkyocyvMV8AQU6zmKndD4sbVZ1rQlVOzSKYX1c/7TDBu/kf
	k8qFpzCSVXijtKeu9pp2cSgmrQrcSTOKxwdGAKcmxNmVVqLzyB2rHyVGzrVtBziEDMNrL0
	dfMR1lwcpSr5+ogePYgJphE5C1fKrDqDPsfghSLtI8dg3oQLiP+VUcYpmHp6aQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzGNY0ttjzFMJ;
	Wed, 27 Nov 2024 23: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 4ARNmTcx076040;
	Wed, 27 Nov 2024 23: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 4ARNmTZY076037;
	Wed, 27 Nov 2024 23:48:29 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 23:48:29 GMT
Message-Id: <202411272348.4ARNmTZY076037@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Justin Hibbits <jhibbits@FreeBSD.org>
Subject: git: 700f7e793b37 - main - powerpc: Get rid of interrupt
  subterfuge for IPIs
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhibbits
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 700f7e793b3793606fbb9942eda03ac02991c126
Auto-Submitted: auto-generated

The branch main has been updated by jhibbits:

URL: https://cgit.FreeBSD.org/src/commit/?id=700f7e793b3793606fbb9942eda03ac02991c126

commit 700f7e793b3793606fbb9942eda03ac02991c126
Author:     Justin Hibbits <jhibbits@FreeBSD.org>
AuthorDate: 2024-11-27 14:13:57 +0000
Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
CommitDate: 2024-11-27 23:36:49 +0000

    powerpc: Get rid of interrupt subterfuge for IPIs
    
    Instead of playing games with the interrupt event structure after the
    fact when setting up IPIs, do the work in the interrupt initializer.
---
 sys/powerpc/powerpc/intr_machdep.c | 32 ++++++++++++++++++++------------
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/sys/powerpc/powerpc/intr_machdep.c b/sys/powerpc/powerpc/intr_machdep.c
index 9d361c73a240..e0eb06129dd1 100644
--- a/sys/powerpc/powerpc/intr_machdep.c
+++ b/sys/powerpc/powerpc/intr_machdep.c
@@ -147,6 +147,10 @@ device_t root_pic;
 static void *ipi_cookie;
 #endif
 
+static int powerpc_setup_intr_int(const char *name, u_int irq, driver_filter_t
+    filter, driver_intr_t handler, void *arg, enum intr_type flags, void
+    **cookiep, int domain, bool ipi);
+
 static void
 intrcnt_setname(const char *name, int index)
 {
@@ -464,24 +468,15 @@ powerpc_enable_intr(void)
 			KASSERT(piclist[n].ipis != 0,
 			    ("%s: SMP root PIC does not supply any IPIs",
 			    __func__));
-			error = powerpc_setup_intr("IPI",
+			error = powerpc_setup_intr_int("IPI",
 			    MAP_IRQ(piclist[n].node, piclist[n].irqs),
 			    powerpc_ipi_handler, NULL, NULL,
 			    INTR_TYPE_MISC | INTR_EXCL, &ipi_cookie,
-			    0 /* domain XXX */);
+			    0 /* domain XXX */, true);
 			if (error) {
 				printf("unable to setup IPI handler\n");
 				return (error);
 			}
-
-			/*
-			 * Some subterfuge: disable late EOI and mark this
-			 * as an IPI to the dispatch layer.
-			 */
-			i = intr_lookup(MAP_IRQ(piclist[n].node,
-			    piclist[n].irqs));
-			i->event->ie_post_filter = NULL;
-			i->ipi = 1;
 		}
 	}
 #endif
@@ -514,6 +509,17 @@ powerpc_setup_intr(const char *name, u_int irq, driver_filter_t filter,
     driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep,
     int domain)
 {
+
+	return (powerpc_setup_intr_int(name, irq, filter, handler, arg, flags,
+	    cookiep, domain, false));
+}
+
+
+static int
+powerpc_setup_intr_int(const char *name, u_int irq, driver_filter_t filter,
+    driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep,
+    int domain, bool ipi)
+{
 	struct powerpc_intr *i;
 	int error, enable = 0;
 
@@ -524,12 +530,14 @@ powerpc_setup_intr(const char *name, u_int irq, driver_filter_t filter,
 	if (i->event == NULL) {
 		error = intr_event_create(&i->event, (void *)i, 0, irq,
 		    powerpc_intr_pre_ithread, powerpc_intr_post_ithread,
-		    powerpc_intr_eoi, powerpc_assign_intr_cpu, "irq%u:", irq);
+		    (ipi ? NULL : powerpc_intr_eoi), powerpc_assign_intr_cpu,
+		    "irq%u:", irq);
 		if (error)
 			return (error);
 
 		enable = 1;
 	}
+	i->ipi = ipi;
 
 	error = intr_event_add_handler(i->event, name, filter, handler, arg,
 	    intr_priority(flags), flags, cookiep);

From nobody Wed Nov 27 23:48:30 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzGNZ4J1dz5fyBb;
	Wed, 27 Nov 2024 23: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzGNZ28yJz4dnH;
	Wed, 27 Nov 2024 23: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=1732751310;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KHc2Bg0nvFkowIp1Ilh/KjPoRKTLGhrbtNEp+8Un3jw=;
	b=LCZB34FzF8D5kdt0oXfdjG2AlqYp+afI8AhXI07pO23jvdWz2bWWagAix+zj4MGwKIYQnd
	UPGjmttmYRvqlGMeJyBaolVhmHI4bkFuBWY//LQWC06ScxihruTNqMLTwOiRv6ETCB6PW0
	f5vr4bySVBFe1wNwawFAc8H5f5nUUOfRQm1BxJz5FL1OAO02m8TvsQuiMY58ovFCx9Aq7p
	8ZlKNeQDi1iW1fLaBGv7TxloiygkVlw8LeE1uSHaceT4oy0+VK9IK8rKUVQtcJwDp86mw1
	XEvKBKf2MKzReCOAgN0MQUuJT0fB8G06xSYAu8Da2VxHgbVtBzOcn+8lNZ/A0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732751310;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=KHc2Bg0nvFkowIp1Ilh/KjPoRKTLGhrbtNEp+8Un3jw=;
	b=jhViQdDBc+E4MJFm+afBbzcsjTSZy3VXh/KhFbguWjQNKzGQYlO0KMWJQLUMuVTL7VwocR
	wci9bTZ4LdITJrYX80qb4kvVrPvFBLuz+4ZkO1M3WM9sSM2RSPtGsbZPrf0mDuQXuEZ1JL
	W9lSJNEe15Ofot+Vq7H3F27LcLyIjcVC2aQBlO74sqU7u7HSCRbRefA8VQQpjGQaqfBh5U
	DZuWJX2yxmqCIbaYG4e8399G2i1GVc9tenBlRpz0Ofwl4zIRo09ZTjQzlLi2KwEn1Elm20
	5Lk4+l+OYNmR75azLwWz6MsVNqdaoGqfYcfei06Gvopa3GbaCDTylXFuJoRTig==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732751310; a=rsa-sha256; cv=none;
	b=XHGT3NNVBObct2IISwwA/wSpskFAZLHF06qQ/5Oe25QrXSIfQMHjGaOwG/cBkR633n2WJh
	g5+9cxKImYrgdNbXkuf+XOMY/6qnP7745FlhF5EXxuQ/pS6v5KQrCVH12u0J5GyBiZz2C1
	5n7mTKBbIdkTM5IEZhRVSVub7iIdFlZGfiSNP01Vw2ApJCT7Zh4CTTYPJ/pzi89j/aRntb
	Ahn5cpVEcUInYHHjd0ME9g2+banTUP5HeitFwvPr/ifbBCzO0aGciElYnXFXVtelxl2WdR
	IaxpRVVTns2xx001W63axhne3cJBsqpg6c0EdBa+BlzPrdfgpY83Q1EfEV2LBQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzGNZ1mGKzFMK;
	Wed, 27 Nov 2024 23: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 4ARNmUmC076088;
	Wed, 27 Nov 2024 23: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 4ARNmU21076085;
	Wed, 27 Nov 2024 23:48:30 GMT
	(envelope-from git)
Date: Wed, 27 Nov 2024 23:48:30 GMT
Message-Id: <202411272348.4ARNmU21076085@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Justin Hibbits <jhibbits@FreeBSD.org>
Subject: git: edfccce309a6 - main - powerpc: Remove unnecessary
  prototype.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhibbits
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: edfccce309a6126e3108ba073eb8fb68e61fd883
Auto-Submitted: auto-generated

The branch main has been updated by jhibbits:

URL: https://cgit.FreeBSD.org/src/commit/?id=edfccce309a6126e3108ba073eb8fb68e61fd883

commit edfccce309a6126e3108ba073eb8fb68e61fd883
Author:     Justin Hibbits <jhibbits@FreeBSD.org>
AuthorDate: 2024-11-27 19:41:45 +0000
Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
CommitDate: 2024-11-27 23:47:55 +0000

    powerpc: Remove unnecessary prototype.
    
    This crept in with the interrupt rework back in 2019.
---
 sys/powerpc/powerpc/intr_machdep.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/sys/powerpc/powerpc/intr_machdep.c b/sys/powerpc/powerpc/intr_machdep.c
index e0eb06129dd1..6e8cb4febf28 100644
--- a/sys/powerpc/powerpc/intr_machdep.c
+++ b/sys/powerpc/powerpc/intr_machdep.c
@@ -221,7 +221,6 @@ intrcnt_add(const char *name, u_long **countp)
 	intrcnt_setname(name, idx);
 }
 
-extern void kdb_backtrace(void);
 static struct powerpc_intr *
 intr_lookup(u_int irq)
 {

From nobody Thu Nov 28 06:48:46 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzRjV6jpwz5fH5k;
	Thu, 28 Nov 2024 06:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzRjV6CR8z45fG;
	Thu, 28 Nov 2024 06:48:46 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732776526;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GlzcWH6Gpk4o9QVTyn7ix+aOfkutrI35MynNpQAMHss=;
	b=tGMXZrZx802QXZ01ClH3yb85gxL4pb3AiFln/mowB9Zt2sckajh7wS8fW7n9iJtr668Ci6
	aOZY3uLRB7xneeR7jK/Qd9tttFdQptOf7qHQXDigjBaeKiiXRTpl+z44G/M4kPM19RPo2Y
	tnO1Cius9S3rVWwL4dcKrKVmheS2FcX8XKLWM5gtOMpstrQedAn5zhgiClmOhubP3piuDc
	KH43dgy68dGnUfor0kgjYiih5qtGL0hzSj3G8Y0dE89Ixk1CsT5Z+Afo/Jd2AjxmGEZWI3
	vRY42VxqEqMXZLddpyZyxwLELqlkquw0NYVyskPBagjhyZmWL+dT8fvkYEfXMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732776526;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=GlzcWH6Gpk4o9QVTyn7ix+aOfkutrI35MynNpQAMHss=;
	b=JrQwjgrXOhejrvt/hugXolQN0/doAVECkPBWFgA2QQ9Oxg3k8vlV7QsdfxZhCmTQut+xg4
	SBkvh5XKuzYdmbvkbQVDv1LIOEig7t26e3juE5siJJfycDe78W4PS14Z2EROrM4BNmgSJo
	zwVQE7Wk/WskK6pJ8TzhIKU8fuI3CmFaidJn4vH8TRdCLXxY1YiWuJvbqo6xl0ARKlxsY7
	5rCaMtR8qZ2jZS2qAmkCt8xpgUFfiApuFoO4/TrcHL7fyjM7agCXxvdl7WKdtSiyzaRVk7
	gF0JAxPROt4IuoEd+as7HeH55SIp63pEzi5ZE00Dejtmofhv8rq3LHotkqXdgQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732776526; a=rsa-sha256; cv=none;
	b=yhMhrYGq6YgySJrUVQTyDv4ovS6p2tY9Ucl2wxjVLJVB/XGSFTUscfjjsstADyynXFBNR+
	ek7w3wDe9epFoLh3CK3NfigpxZXwtgq4BNxGsaVImg8zlzSdkxUblHfg/0XntmEAOmLdyG
	MfD5LHEBVwuCfVvvIFoPwP2KO7gvWITiDbKqRPNni1vWHYPiEmpulzVZk3gCb6e/jNYDv/
	8utrqHhds2QLfeL1+//OV6tY1UG7/MVWVq9TLnS2pOyij7C0k3rgMAvw25zXD9qj73qbp1
	MB8GClYGakk//HDJvjL/eapK3zBecg9NBagsr+RKF0w9z6KbTyQ0kzN8tZjOcw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzRjV5phQzSr5;
	Thu, 28 Nov 2024 06:48: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 4AS6mkZi059824;
	Thu, 28 Nov 2024 06:48:46 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AS6mks3059821;
	Thu, 28 Nov 2024 06:48:46 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 06:48:46 GMT
Message-Id: <202411280648.4AS6mks3059821@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Navdeep Parhar <np@FreeBSD.org>
Subject: git: 5c15094916bf - main - cxgbe(4): Update the board names
  of the T6 OCP cards.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: np
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5c15094916bfacf33f832b9144d551a59b6bcc98
Auto-Submitted: auto-generated

The branch main has been updated by np:

URL: https://cgit.FreeBSD.org/src/commit/?id=5c15094916bfacf33f832b9144d551a59b6bcc98

commit 5c15094916bfacf33f832b9144d551a59b6bcc98
Author:     Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2024-11-28 06:28:37 +0000
Commit:     Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2024-11-28 06:43:37 +0000

    cxgbe(4): Update the board names of the T6 OCP cards.
    
    MFC after:      1 week
    Sponsored by:   Chelsio Communications
---
 sys/dev/cxgbe/t4_iov.c  | 6 +++---
 sys/dev/cxgbe/t4_main.c | 6 +++---
 sys/dev/cxgbe/t4_vf.c   | 6 +++---
 3 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/sys/dev/cxgbe/t4_iov.c b/sys/dev/cxgbe/t4_iov.c
index eef41d6398df..bfd1613e9795 100644
--- a/sys/dev/cxgbe/t4_iov.c
+++ b/sys/dev/cxgbe/t4_iov.c
@@ -99,15 +99,15 @@ struct {
 	{0x6002, "Chelsio T6225-SO-CR"},	/* 2 x 10/25G, nomem */
 	{0x6003, "Chelsio T6425-CR"},		/* 4 x 10/25G */
 	{0x6004, "Chelsio T6425-SO-CR"},	/* 4 x 10/25G, nomem */
-	{0x6005, "Chelsio T6225-OCP-SO"},	/* 2 x 10/25G, nomem */
-	{0x6006, "Chelsio T62100-OCP-SO"},	/* 2 x 40/50/100G, nomem */
+	{0x6005, "Chelsio T6225-SO-OCP3"},	/* 2 x 10/25G, nomem */
+	{0x6006, "Chelsio T6225-OCP3"},		/* 2 x 10/25G */
 	{0x6007, "Chelsio T62100-LP-CR"},	/* 2 x 40/50/100G */
 	{0x6008, "Chelsio T62100-SO-CR"},	/* 2 x 40/50/100G, nomem */
 	{0x6009, "Chelsio T6210-BT"},		/* 2 x 10GBASE-T */
 	{0x600d, "Chelsio T62100-CR"},		/* 2 x 40/50/100G */
 	{0x6010, "Chelsio T6-DBG-100"},		/* 2 x 40/50/100G, debug */
 	{0x6011, "Chelsio T6225-LL-CR"},	/* 2 x 10/25G */
-	{0x6014, "Chelsio T61100-OCP-SO"},	/* 1 x 40/50/100G, nomem */
+	{0x6014, "Chelsio T62100-SO-OCP3"},	/* 2 x 40/50/100G, nomem */
 	{0x6015, "Chelsio T6201-BT"},		/* 2 x 1000BASE-T */
 
 	/* Custom */
diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c
index 57cc41bb50fa..46739740db83 100644
--- a/sys/dev/cxgbe/t4_main.c
+++ b/sys/dev/cxgbe/t4_main.c
@@ -935,15 +935,15 @@ struct {
 	{0x6402, "Chelsio T6225-SO-CR"},	/* 2 x 10/25G, nomem */
 	{0x6403, "Chelsio T6425-CR"},		/* 4 x 10/25G */
 	{0x6404, "Chelsio T6425-SO-CR"},	/* 4 x 10/25G, nomem */
-	{0x6405, "Chelsio T6225-OCP-SO"},	/* 2 x 10/25G, nomem */
-	{0x6406, "Chelsio T62100-OCP-SO"},	/* 2 x 40/50/100G, nomem */
+	{0x6405, "Chelsio T6225-SO-OCP3"},	/* 2 x 10/25G, nomem */
+	{0x6406, "Chelsio T62100-OCP3"},	/* 2 x 10/25G */
 	{0x6407, "Chelsio T62100-LP-CR"},	/* 2 x 40/50/100G */
 	{0x6408, "Chelsio T62100-SO-CR"},	/* 2 x 40/50/100G, nomem */
 	{0x6409, "Chelsio T6210-BT"},		/* 2 x 10GBASE-T */
 	{0x640d, "Chelsio T62100-CR"},		/* 2 x 40/50/100G */
 	{0x6410, "Chelsio T6-DBG-100"},		/* 2 x 40/50/100G, debug */
 	{0x6411, "Chelsio T6225-LL-CR"},	/* 2 x 10/25G */
-	{0x6414, "Chelsio T61100-OCP-SO"},	/* 1 x 40/50/100G, nomem */
+	{0x6414, "Chelsio T62100-SO-OCP3"},	/* 2 x 40/50/100G, nomem */
 	{0x6415, "Chelsio T6201-BT"},		/* 2 x 1000BASE-T */
 
 	/* Custom */
diff --git a/sys/dev/cxgbe/t4_vf.c b/sys/dev/cxgbe/t4_vf.c
index e941b87d7182..a7ea848eae17 100644
--- a/sys/dev/cxgbe/t4_vf.c
+++ b/sys/dev/cxgbe/t4_vf.c
@@ -105,15 +105,15 @@ struct {
 	{0x6802, "Chelsio T6225-SO-CR VF"},	/* 2 x 10/25G, nomem */
 	{0x6803, "Chelsio T6425-CR VF"},	/* 4 x 10/25G */
 	{0x6804, "Chelsio T6425-SO-CR VF"},	/* 4 x 10/25G, nomem */
-	{0x6805, "Chelsio T6225-OCP-SO VF"},	/* 2 x 10/25G, nomem */
-	{0x6806, "Chelsio T62100-OCP-SO VF"},	/* 2 x 40/50/100G, nomem */
+	{0x6805, "Chelsio T6225-SO-OCP3 VF"},	/* 2 x 10/25G, nomem */
+	{0x6806, "Chelsio T6225-OCP3 VF"},	/* 2 x 10/25G */
 	{0x6807, "Chelsio T62100-LP-CR VF"},	/* 2 x 40/50/100G */
 	{0x6808, "Chelsio T62100-SO-CR VF"},	/* 2 x 40/50/100G, nomem */
 	{0x6809, "Chelsio T6210-BT VF"},	/* 2 x 10GBASE-T */
 	{0x680d, "Chelsio T62100-CR VF"},	/* 2 x 40/50/100G */
 	{0x6810, "Chelsio T6-DBG-100 VF"},	/* 2 x 40/50/100G, debug */
 	{0x6811, "Chelsio T6225-LL-CR VF"},	/* 2 x 10/25G */
-	{0x6814, "Chelsio T61100-OCP-SO VF"},	/* 1 x 40/50/100G, nomem */
+	{0x6814, "Chelsio T62100-SO-OCP3 VF"},	/* 2 x 40/50/100G, nomem */
 	{0x6815, "Chelsio T6201-BT VF"},	/* 2 x 1000BASE-T */
 
 	/* Custom */

From nobody Thu Nov 28 07:48:11 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzT241Kl2z5fLMQ;
	Thu, 28 Nov 2024 07:48: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzT240pJcz4CVl;
	Thu, 28 Nov 2024 07:48:12 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732780092;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rl60EVbF1jDyEtk3slOqy7yaKb8rzh1CQzOAh1PIGkc=;
	b=njj+gDDdGGVDC6Amj9NU+1Zt1GgqCi3hD3RgTxnxi7x/6kR0eoompSnmvftesyH9BKbCLT
	vxtj9CVC5WZH4VZ/e6VK0L3diPfQmN+ua8zcdkeQBKH3vwalHsxG4kc4e6TSO6/vRI0pyi
	w7gbMn+NYSwcBLovPYO/E/RMCBwpCySHDloR7miJSW2TOROsvZ+dp62RcqGk02sgF1dOnJ
	odIB7zWKA8z+pC9MQHsY+RN8NK64qBHJvRRyOVljREPEBXqOlO03+x2sm5a9liq7QrViM5
	HvZSMFY0PyWIUs8OR/RpifgSDJZaThDmfdSlAyH+2ncpBPRkAbS3GjzKC5HhfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732780092;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=rl60EVbF1jDyEtk3slOqy7yaKb8rzh1CQzOAh1PIGkc=;
	b=tOVjNDYqNfIi/0S3A634U5+vb3Fyojv/ME0sHOccJVLF3hdTwoGcEqVJixDDRYVr5BHZZn
	WaBgUHhVWAow/3fcq95rYysD/vg2Czsw7I1BBN+Bq6O9+OJUwhugOqOgcuRVmXPuWJ9ybA
	0MloeGOODDCBhUoB0J4hAAAfEtBpbLwwE/q3DYw6fsiDBrhXlHFaiiLqvqUSMwOek+XusY
	YlFwm8VNEEaH2Po1RfgpuZ2J7wF5Li2nyFfkKHJ4nw74YmztSLMK6tjpm4vnp2xU8h2ti4
	fVE6u2FqtglyRm/sQ+/vkvPWVT9M/GFYJqshiVkkBTae3CaKAynciNjIGlJdkw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732780092; a=rsa-sha256; cv=none;
	b=ZXJvT+D5E9NaPWcu7N6GkMH44k8DgKSzpbZZOT2mUKkiUeop2MKjfB9dbs7l7zon+U0lgh
	knYdjbR5LTHbY63QXRSV9VAr8Jdj5zw6ud/cJUZTUN5dWZtwgO2pf4Py3vaJ9GG2+FExrY
	T19xH/1swdquflM17LBSyNFNSo+mbuV9xRnAXdOnXkYhlgSznSrDA0F5Uc9iJWxsPpoUi0
	rJxNHPI4KB++GhzbyuyY59tuoSB5gYBWnsG8AFx7ntlYiuYJyi5mF5GePrHN/43V9w3Cf6
	liPk3tr4R4upriMuZK6O96ABPko2KUkZi7/C6ID5d6ZxUBGyA/ZXr9lk/QxvdA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzT240MFczW8n;
	Thu, 28 Nov 2024 07:48: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 4AS7mBkl072501;
	Thu, 28 Nov 2024 07:48:11 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AS7mBMX072498;
	Thu, 28 Nov 2024 07:48:11 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 07:48:11 GMT
Message-Id: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Subject: git: 456666408f64 - main - Speed up syncer shutdown
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: trasz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 456666408f64d18c68b79ae13f5ae063df3c7293
Auto-Submitted: auto-generated

The branch main has been updated by trasz:

URL: https://cgit.FreeBSD.org/src/commit/?id=456666408f64d18c68b79ae13f5ae063df3c7293

commit 456666408f64d18c68b79ae13f5ae063df3c7293
Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
AuthorDate: 2024-11-27 22:33:23 +0000
Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
CommitDate: 2024-11-28 07:47:52 +0000

    Speed up syncer shutdown
    
    When shutting down, the syncer kernel deamon needs to iterate over all
    32 of its queues, pausing for 1/4 of second each time waiting for essentially
    nothing.  Bump the SYNCER_SHUTDOWN_SPEEDUP so that it takes just a second to
    iterate.  It will still wait for another second afterwards; that bit is left
    unchanged.
    
    Reviewed By:    kib
    Differential Revision:  https://reviews.freebsd.org/D47647
---
 sys/kern/vfs_subr.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 8f582eb4ca01..feb808c0d4c7 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -323,9 +323,10 @@ DPCPU_DEFINE_STATIC(struct vdbatch, vd);
 static void	vdbatch_dequeue(struct vnode *vp);
 
 /*
- * When shutting down the syncer, run it at four times normal speed.
+ * The syncer will require at least SYNCER_MAXDELAY iterations to shutdown;
+ * we probably don't want to pause for the whole second each time.
  */
-#define SYNCER_SHUTDOWN_SPEEDUP		4
+#define SYNCER_SHUTDOWN_SPEEDUP		32
 static int sync_vnode_count;
 static int syncer_worklist_len;
 static enum { SYNCER_RUNNING, SYNCER_SHUTTING_DOWN, SYNCER_FINAL_DELAY }

From nobody Thu Nov 28 09:03:37 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzVjG546qz5fQtc;
	Thu, 28 Nov 2024 09:03:46 +0000 (UTC)
	(envelope-from olce@freebsd.org)
Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "smtp.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzVjG3ywpz4J6W;
	Thu, 28 Nov 2024 09:03:46 +0000 (UTC)
	(envelope-from olce@freebsd.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732784626;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=TejPZWAxmA+cxjb3rNgjTqjOIVc+dtlY3P9/V3io9t8=;
	b=cMGSpsMMNxTeLOiya4qjS/mQziMhl/VbJ2zL1TUmEdVATAvdX1rwwBz0v8jED/fMqkX3I7
	hYG0RBhGjo+NaA90PfCIUU8CLPPXnTWweGjCh5WNmNq8w09TvKRq9RZy7lFr84CbymfLiQ
	alq0AfO/U0YtRSql56jRY9qV2Qz3Hqtu7eIUGeCMyjoSm/xbBGwHulHNviqWeZ8I+rviyv
	aVBGhToFV2auLUCpT/vaoUL8Pk//xAnZP03F5zQTF5mQ7d4Gtn4mgMiEer0a0AY+r9q6B+
	sL3mTVhgA1C1puAaZ6Z2K7RQ+kQakBXN4gyc+EATJZWKFcwfyW6FNfs73A3GLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732784626;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=TejPZWAxmA+cxjb3rNgjTqjOIVc+dtlY3P9/V3io9t8=;
	b=tPJADz7mxwkY03uFSY6W75AZN596Oe55iHtIoWBr6DTOkCvM8BU2GAK0leK+ConkKcTozQ
	go7PKS2g9RhjZxUqTRtHLItk2JSX8MHkqizCZRe5eH4PdisMGwSaWf5ne0N437JMT1h0X5
	RX/h+7YUh0UpgmqwqT8eU1MqiFvlnzXQa6h77Ln80ghB6JRhpMl91iRXG8dpItV4C0uiui
	bzB1hZnoqgkB2Sg+eLscT16wvYGULvBD8d4oZm7Lxv4J3KVo2zQREbUjTL4bHzWlqS8zk0
	Et532drEC3vOyc3+0VKPJlWIWfH9aKvMPSKSSrhd3tSKgQOCVoGnim0rVzYsag==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732784626; a=rsa-sha256; cv=none;
	b=c2EXCMsoN1vYEcYuQHssY4OKE6sIOghhUHs32jibz8Iq5UMFKV/Ga5F1noqdZ7Tko3vqkS
	IcbODQZwf01VV4sfzd1R6FYfifwG8zgdV6Irj11BS4QF2R41w3UFmb2cXS5rwYguTtCa5m
	qu1qA+NgvRCwZXSN2JEAJ/xkodswjmWCj30lTQUKnkUblk/iwNqtA1XIV5eCE7b98tOvv2
	0cofKvnTqD/IsYPo7QKq7U0cApRA/LtE4kYfr8hvIza8GBaFwHIU4q6UGVfe/XnNQBrGng
	p/o2rLNAIc0znPVgBfVjRp1CsBfIo6cxvL7+vmOitWdwxtiTvhTVDsOBdj8Fug==
Received: from ravel.localnet (aclermont-ferrand-653-1-222-123.w90-14.abo.wanadoo.fr [90.14.66.123])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	(Authenticated sender: olce/mail)
	by smtp.freebsd.org (Postfix) with ESMTPSA id 4XzVjF73yLzfSM;
	Thu, 28 Nov 2024 09:03:45 +0000 (UTC)
	(envelope-from olce@freebsd.org)
From: Olivier Certner <olce@freebsd.org>
To: Edward Tomasz Napierala <trasz@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
 dev-commits-src-main@freebsd.org
Subject: Re: git: 456666408f64 - main - Speed up syncer shutdown
Date: Thu, 28 Nov 2024 10:03:37 +0100
Message-ID: <2529417.0dHE6SNnxz@ravel>
In-Reply-To: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
References: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="nextPart4080632.BRNeRiNLvY";
 micalg="pgp-sha384"; protocol="application/pgp-signature"

--nextPart4080632.BRNeRiNLvY
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="UTF-8"; protected-headers="v1"
From: Olivier Certner <olce@freebsd.org>
To: Edward Tomasz Napierala <trasz@freebsd.org>
Subject: Re: git: 456666408f64 - main - Speed up syncer shutdown
Date: Thu, 28 Nov 2024 10:03:37 +0100
Message-ID: <2529417.0dHE6SNnxz@ravel>
In-Reply-To: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
References: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
MIME-Version: 1.0

Hello Edward,
 
> commit 456666408f64d18c68b79ae13f5ae063df3c7293
> Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> AuthorDate: 2024-11-27 22:33:23 +0000
> Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> CommitDate: 2024-11-28 07:47:52 +0000
> 
>     Speed up syncer shutdown

Are you considering MFCing this commit?  Would there be any reason not to do it (after some time)?

Thanks and regards.

-- 
Olivier Certner
--nextPart4080632.BRNeRiNLvY
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part.
Content-Transfer-Encoding: 7Bit

-----BEGIN PGP SIGNATURE-----

iQIzBAABCQAdFiEEmNCxHjkosai0LYIujKEwQJceJicFAmdIMeoACgkQjKEwQJce
Jidkpg//bJkO6HglBSDVfWiEM+9hzdjzREDswa2LRFZngcjX8ZFayVInncb3dqkr
yDF2TDY9Ktzx882AsWKoYJYmm17ahw+12+JEt4xsVN1/CFSW7cfFSuzZTjzY3jr6
+bB8wZW0zkdd9J0WnFMQsxeX1Sp9SxFjB6Sgg5wA8prJElCAx26u5qMutEqITu6E
MP4aWtNR3vCgTfMHa8BO5nH3Wpj+v1cxvW4lCqDhPGLfjjz81hcCzI/c7q0BxTXr
YeYOzc57n6kdNFPpuJxkUc1SG4XlrN39lS/P1+wuuBr20dHoV117w2Ywbzs+u4D0
5Upt5JFEAPE0jxN/C5rlkaSUvYUJR5mpRF0gv0sHbdAzFcbKmNYq5AFPpS/W04Gg
cIlzgrqEv/KRywYkBTxMJcmeGFKQULpINq50jpLS2194n3tlMTs/MGWi8vtD17pv
OqzpzjNdk2+hAS2LPmzohIDXjirtPARnZ6lXi8BdojXt5RCgaYk7hvLF6QEMtTZe
yTrDOEQgW7JcBpV/WLxUPsmnMu8iAOfssWZ7VZIgf6ryNECcIAAFCPN0zSUFUQac
eHC+pNJlZ+O6rqGPznfl2KUsMmzHApk7+qgvvN1h9unPMHkSjF1yI8grmVKXghxx
/JwwmAO6Ww0XWTJLBiC9AcoAd8Xf/03NAfLuN7UITBVbVzM3kTo=
=jSuK
-----END PGP SIGNATURE-----

--nextPart4080632.BRNeRiNLvY--




From nobody Thu Nov 28 09:39:22 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzWVL6djzz5fTDp;
	Thu, 28 Nov 2024 09:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzWVL66W1z4Kpf;
	Thu, 28 Nov 2024 09:39:22 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732786762;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JTusg8TY8XjqrIIK6v5tCaPK++6oBsxVWE7OHgJzgEU=;
	b=MSE2j6bjNz5mnvXm3vFtamv4l+ZaJIvzljAtMS6dvYkbYpOcpNQYYxrBPX3z3ODILDPFSM
	Smmqdx0NiS1Ia1Z3BfEL+J0kCAaQWfDLuTHaa0tkGlQqFuh2c48NsER398ixwQLkulTY8A
	OC9D/t8dTR10K0eOsatuo0vCOp3rvHKSGPGq5E3q7yo3NIoVwCN4YBqf5GCq67x0wd66Tt
	6nwcxJbCGA8YInCtUAXMM8Ouet5pPrIPBUAgiJCM2+s+0ezyBUDSnk0XeDLMXSYPsBqoib
	LrMKdc25WQePKaznxyFmhqPbtaf8P+aHviZP78TM78X+V+g9laJ8hiXzc5AWdA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732786762;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JTusg8TY8XjqrIIK6v5tCaPK++6oBsxVWE7OHgJzgEU=;
	b=ETk/8Cz9+4kfFLhAEvpmFtzvkaBB4V0jsLBtxDuf+F95daUJKk7VawrwHQZXEfgKgfOjav
	NVxImLeiSk/Tn1Rl4yTl797pRs3uF61cAllGOJu4y2n9vkihoVBbO4SH4OfHsj7ywsornR
	+IjL1Js4k/HEB3J+l3YfFBQYpgI+uxLctbSPnTjDEpjijWsAJehiXF3zTNiDEq3qXlNVxi
	yzNmMm2IeipEiCi+ztsNS4LWFURu9btxjrVJIWMitRg0IRUJC6rEV5y+w/vGDpyctepl1P
	Rj4087i7IOLQPnH8j9htlpehLhdNAec3BEBiOsBdTYAny79BgTRhs8eY3qMf6Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732786762; a=rsa-sha256; cv=none;
	b=YZrL2iOqBLLASN1B5LY/bo36OJfTnyqWXpBOcvg55S/F/cBnB6VCmHilDiZxZ8CAWhhRMG
	7fhck+06HH4fqZqc9cWorOlibynG44carHAHads7DB+WfD+ybjc4w1MN+rruvojVnRK7vE
	YnTP+fOkWbOO6vF1fMAYuLRZGCYUYLCc9LlFcGk/Jvfk4rea5rncLohE1D/9ln2GrRGfNk
	sgmYz6UJLg8+XNcCAuxjl2W1OH6gpi0MTN1uBRKQdUl1Y1lMYiQ8d/77xMWszH19OSrrOF
	p+E0gid2MyvlZOHtFZXYlcd8KbQJyAYFZ45FlnUMTKIe8qjv9YVmgC+A2uiISg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzWVL5bLRzYfM;
	Thu, 28 Nov 2024 09:39: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 4AS9dMSI076561;
	Thu, 28 Nov 2024 09:39:22 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AS9dM3H076558;
	Thu, 28 Nov 2024 09:39:22 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 09:39:22 GMT
Message-Id: <202411280939.4AS9dM3H076558@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kajetan Staszkiewicz <ks@FreeBSD.org>
Subject: git: 9f9cf83f114a - main - pf: Use a single pointer to
  state in pf_src_connlimit()
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: ks
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 9f9cf83f114a50185ac0054abc5cec174ad83e53
Auto-Submitted: auto-generated

The branch main has been updated by ks:

URL: https://cgit.FreeBSD.org/src/commit/?id=9f9cf83f114a50185ac0054abc5cec174ad83e53

commit 9f9cf83f114a50185ac0054abc5cec174ad83e53
Author:     Kajetan Staszkiewicz <ks@FreeBSD.org>
AuthorDate: 2024-11-24 16:32:17 +0000
Commit:     Kajetan Staszkiewicz <ks@FreeBSD.org>
CommitDate: 2024-11-28 09:37:35 +0000

    pf: Use a single pointer to state in pf_src_connlimit()
    
    There's no need for a double pointer, the function pf_src_connlimit()
    does not modify the state.
    
    Reviewed by:            kp
    Approved by:            kp (mentor)
    Sponsored by:           InnoGames GmbH
    Differential Revision:  https://reviews.freebsd.org/D47758
---
 sys/netpfil/pf/pf.c | 46 +++++++++++++++++++++++-----------------------
 1 file changed, 23 insertions(+), 23 deletions(-)

diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index f6bd1b93ca1b..9436a4247411 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -372,7 +372,7 @@ static void		 pf_patch_8(struct mbuf *, u_int16_t *, u_int8_t *, u_int8_t,
 			    bool, u_int8_t);
 static struct pf_kstate	*pf_find_state(struct pfi_kkif *,
 			    const struct pf_state_key_cmp *, u_int);
-static int		 pf_src_connlimit(struct pf_kstate **);
+static int		 pf_src_connlimit(struct pf_kstate *);
 static int		 pf_match_rcvif(struct mbuf *, struct pf_krule *);
 static void		 pf_counters_inc(int, struct pf_pdesc *,
 			    struct pf_kstate *, struct pf_krule *,
@@ -813,30 +813,30 @@ pf_check_threshold(struct pf_threshold *threshold)
 }
 
 static int
-pf_src_connlimit(struct pf_kstate **state)
+pf_src_connlimit(struct pf_kstate *state)
 {
 	struct pf_overload_entry *pfoe;
 	int bad = 0;
 
-	PF_STATE_LOCK_ASSERT(*state);
+	PF_STATE_LOCK_ASSERT(state);
 	/*
 	 * XXXKS: The src node is accessed unlocked!
-	 * PF_SRC_NODE_LOCK_ASSERT((*state)->src_node);
+	 * PF_SRC_NODE_LOCK_ASSERT(state->src_node);
 	 */
 
-	(*state)->src_node->conn++;
-	(*state)->src.tcp_est = 1;
-	pf_add_threshold(&(*state)->src_node->conn_rate);
+	state->src_node->conn++;
+	state->src.tcp_est = 1;
+	pf_add_threshold(&state->src_node->conn_rate);
 
-	if ((*state)->rule->max_src_conn &&
-	    (*state)->rule->max_src_conn <
-	    (*state)->src_node->conn) {
+	if (state->rule->max_src_conn &&
+	    state->rule->max_src_conn <
+	    state->src_node->conn) {
 		counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONN], 1);
 		bad++;
 	}
 
-	if ((*state)->rule->max_src_conn_rate.limit &&
-	    pf_check_threshold(&(*state)->src_node->conn_rate)) {
+	if (state->rule->max_src_conn_rate.limit &&
+	    pf_check_threshold(&state->src_node->conn_rate)) {
 		counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONNRATE], 1);
 		bad++;
 	}
@@ -845,10 +845,10 @@ pf_src_connlimit(struct pf_kstate **state)
 		return (0);
 
 	/* Kill this state. */
-	(*state)->timeout = PFTM_PURGE;
-	pf_set_protostate(*state, PF_PEER_BOTH, TCPS_CLOSED);
+	state->timeout = PFTM_PURGE;
+	pf_set_protostate(state, PF_PEER_BOTH, TCPS_CLOSED);
 
-	if ((*state)->rule->overload_tbl == NULL)
+	if (state->rule->overload_tbl == NULL)
 		return (1);
 
 	/* Schedule overloading and flushing task. */
@@ -856,10 +856,10 @@ pf_src_connlimit(struct pf_kstate **state)
 	if (pfoe == NULL)
 		return (1);	/* too bad :( */
 
-	bcopy(&(*state)->src_node->addr, &pfoe->addr, sizeof(pfoe->addr));
-	pfoe->af = (*state)->key[PF_SK_WIRE]->af;
-	pfoe->rule = (*state)->rule;
-	pfoe->dir = (*state)->direction;
+	bcopy(&state->src_node->addr, &pfoe->addr, sizeof(pfoe->addr));
+	pfoe->af = state->key[PF_SK_WIRE]->af;
+	pfoe->rule = state->rule;
+	pfoe->dir = state->direction;
 	PF_OVERLOADQ_LOCK();
 	SLIST_INSERT_HEAD(&V_pf_overloadqueue, pfoe, next);
 	PF_OVERLOADQ_UNLOCK();
@@ -5811,7 +5811,7 @@ pf_tcp_track_full(struct pf_kstate **state, struct pf_pdesc *pd,
 				    TCPS_ESTABLISHED);
 				if (src->state == TCPS_ESTABLISHED &&
 				    (*state)->src_node != NULL &&
-				    pf_src_connlimit(state)) {
+				    pf_src_connlimit(*state)) {
 					REASON_SET(reason, PFRES_SRCLIMIT);
 					return (PF_DROP);
 				}
@@ -5982,7 +5982,7 @@ pf_tcp_track_sloppy(struct pf_kstate **state, struct pf_pdesc *pd, u_short *reas
 			pf_set_protostate(*state, pdst, TCPS_ESTABLISHED);
 			if (src->state == TCPS_ESTABLISHED &&
 			    (*state)->src_node != NULL &&
-			    pf_src_connlimit(state)) {
+			    pf_src_connlimit(*state)) {
 				REASON_SET(reason, PFRES_SRCLIMIT);
 				return (PF_DROP);
 			}
@@ -6000,7 +6000,7 @@ pf_tcp_track_sloppy(struct pf_kstate **state, struct pf_pdesc *pd, u_short *reas
 			    TCPS_ESTABLISHED);
 			dst->state = src->state = TCPS_ESTABLISHED;
 			if ((*state)->src_node != NULL &&
-			    pf_src_connlimit(state)) {
+			    pf_src_connlimit(*state)) {
 				REASON_SET(reason, PFRES_SRCLIMIT);
 				return (PF_DROP);
 			}
@@ -6067,7 +6067,7 @@ pf_synproxy(struct pf_pdesc *pd, struct pf_kstate **state, u_short *reason)
 			REASON_SET(reason, PFRES_SYNPROXY);
 			return (PF_DROP);
 		} else if ((*state)->src_node != NULL &&
-		    pf_src_connlimit(state)) {
+		    pf_src_connlimit(*state)) {
 			REASON_SET(reason, PFRES_SRCLIMIT);
 			return (PF_DROP);
 		} else

From nobody Thu Nov 28 09:39:23 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzWVN0Sr7z5fTNF;
	Thu, 28 Nov 2024 09:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzWVM6htYz4Kx1;
	Thu, 28 Nov 2024 09:39:23 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732786763;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=bYZk3qeA0ruaMGn80RaQKHntA3hAXuoPaUeGWsLinpA=;
	b=cS5KtQlxL7yQSoeB+bx9hz9g8kcgdqO5yY+qiy3Q8vUygvGQP184+VdZlgyqOzVQkHI5II
	4+ENpohXU4gqI8YLwBKURJjhCoEHkQVssKt4WNeoVbQ721KwLMY7H0zONK1QbyRpA30wRh
	YHtAcl6vNtQke00NJAUu/t4awEGjY1Pdc8hEJyaDZORPAMtSOGTBPEQx+P2TPIoJBKlaw1
	MUglpUgob35T/4arFFbZJHU0zu64A6DK2NKVxvO41CE59fGbrRULufx+pJpz7ajjd0xz/I
	aBE/Wp0enoOygH3lWIWt8vuaVhp+s1RME60xOI63M+5kpYmjb1+rtEUgdP1hRQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732786763;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=bYZk3qeA0ruaMGn80RaQKHntA3hAXuoPaUeGWsLinpA=;
	b=eFhMSQQgIh3kVKwS8Dj0V8n2NguCbDVbwiIpGn1Lr1sXonV+0/rvfeST30/2+3xPvPxDvi
	vkeePj5+XgWY+9Xb9xqQRlaCUHsheOgv94hzdN3J9s3hdNffsd+9ZK+RqBPz6qATvq948d
	pDvUTYGJZWEjFMyeiTWIEVnYbCTuKPBbmmtnoAAN3xJalUQsAwZo/2NYvoufydVrBYepAf
	oIA2Wq0Ger/kvRm1xhQZWd1glyuo0802vuIXesVX3IxTxxGYJXKkNOtsPsiHfmEwQ9E2xt
	rnik+wUeB+UBMqQVLpfPuVbnPTR9fZ9d8Mw9wxNM7tYXAN4L07/otEccNpmXAA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732786763; a=rsa-sha256; cv=none;
	b=wnybS6r16h3tplBY/GfnauPzikLXCy8VVozRYsoem4jqlvwJU8eDBxxyLAIIs7NM0gI6HZ
	L5XVgHkQDlWygYWYXXdh9Zr74gQ4c+F+P72GCJvK8TEJjPsM0U10HGRb/zDfd9OvgXR6ZQ
	Af7l9sFkk62QywpDx2cxFmPRQx3ymUd+PvIs8SNzmjXPXSiIJMUr2PZuE6QvTF6QxCwNQK
	Ro7ydNngqMocry7qGy27OwvCNBNQ9hdQX7Hq9yYYcVgSIKbQC0H9XJJCzeyjJ7QHUQfsgS
	amLZ+GrnN7FcfaRoQbF/qCbPAi7Zl7pkUCS3YugYJI+a9Um+d8g+qVqW5dgwOg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzWVM6GmKzYsY;
	Thu, 28 Nov 2024 09:39: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 4AS9dNUi076629;
	Thu, 28 Nov 2024 09:39:23 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AS9dNui076626;
	Thu, 28 Nov 2024 09:39:23 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 09:39:23 GMT
Message-Id: <202411280939.4AS9dNui076626@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kajetan Staszkiewicz <ks@FreeBSD.org>
Subject: git: 1a5dc6ee62b3 - main - pf: Set cleared time when zeroing
  stats for table addresses
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: ks
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 1a5dc6ee62b316b0caad5118dc0f3aee036f1958
Auto-Submitted: auto-generated

The branch main has been updated by ks:

URL: https://cgit.FreeBSD.org/src/commit/?id=1a5dc6ee62b316b0caad5118dc0f3aee036f1958

commit 1a5dc6ee62b316b0caad5118dc0f3aee036f1958
Author:     Kajetan Staszkiewicz <ks@FreeBSD.org>
AuthorDate: 2024-11-21 20:30:58 +0000
Commit:     Kajetan Staszkiewicz <ks@FreeBSD.org>
CommitDate: 2024-11-28 09:38:05 +0000

    pf: Set cleared time when zeroing stats for table addresses
    
    Reviewed by:            kp
    Approved by:            kp (mentor)
    Sponsored by:           InnoGames GmbH
    Differential Revision:  https://reviews.freebsd.org/D47697
---
 sys/netpfil/pf/pf_table.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/netpfil/pf/pf_table.c b/sys/netpfil/pf/pf_table.c
index 77bd466ec2b3..ce3a6b39ce91 100644
--- a/sys/netpfil/pf/pf_table.c
+++ b/sys/netpfil/pf/pf_table.c
@@ -665,7 +665,7 @@ pfr_clr_astats(struct pfr_table *tbl, struct pfr_addr *addr, int size,
 	}
 
 	if (!(flags & PFR_FLAG_DUMMY))
-		pfr_clstats_kentries(kt, &workq, 0, 0);
+		pfr_clstats_kentries(kt, &workq, time_second, 0);
 	if (nzero != NULL)
 		*nzero = xzero;
 	return (0);

From nobody Thu Nov 28 10:04:39 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzX3b5XM4z5fVxD;
	Thu, 28 Nov 2024 10:04:43 +0000 (UTC)
	(envelope-from etnapierala@gmail.com)
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430])
	(using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "smtp.gmail.com", Issuer "WR4" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzX3b3qg9z4Myh;
	Thu, 28 Nov 2024 10:04:43 +0000 (UTC)
	(envelope-from etnapierala@gmail.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-382610c7116so475108f8f.0;
        Thu, 28 Nov 2024 02:04:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1732788282; x=1733393082; darn=freebsd.org;
        h=in-reply-to:content-disposition:mime-version:references
         :mail-followup-to:message-id:subject:cc:to:from:date:sender:from:to
         :cc:subject:date:message-id:reply-to;
        bh=lu1CP2FgBfzQWfYLHQ/4x7HPFKXOwhoM9V5orH7vAXM=;
        b=LGf9KRYabzsIAO5+cJBODxex832jPpDntS0pREn3zdRSLVUyTpNogcY45SbRrYYAIB
         StyFMwV/iPLieUkBgkc3BhqwJ2esDOVlziNpK3ztq+eh2WC2LK0c8QxwQruxZGGI2YG4
         y2JJVZ7O7vclfh4+fyauRIJPpBeYO98FhVUtkR2sxF6NnTfmP2E0KjXugbHij/8ZJUxe
         V2ICVNUxKpYRMZHYiQXSUPrbBlltN62m8SCUgMY8nD9U5VzOpCwDvD6M2kPw16NNIZDi
         IoR0Teo8Obyr4ynKIaIIZAFdHQ9gBzLjjPmWgUc9OeLj0L5Gwc6f5IMlR81mOrLrwdoW
         G6kg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1732788282; x=1733393082;
        h=in-reply-to:content-disposition:mime-version:references
         :mail-followup-to:message-id:subject:cc:to:from:date:sender
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=lu1CP2FgBfzQWfYLHQ/4x7HPFKXOwhoM9V5orH7vAXM=;
        b=dVvwTR1mbP+fIDCNKrif9FWnHI8FCQMIKTsniHKmR2xr9WzTblcpa3azx30xwyrItq
         up8UdNEPkYb22qlXJRHB0cP2A3yY+u2GCXSjtYViIhFvC4hhPO2nbzmzZwnN0PueDHBs
         iIcy0/WQdzO1/ki7zGEY7c9NVkA9ZAyuuxFCIL6g7UaCMtgEgLgoffBUAtheWbh3CthW
         MxBYjvtdaI+pvaPDzXH+w4+Ncf/39mGWV0MEgri6GXahi2Z0uuzwrYlhfs65j44r7mPD
         KNpUWIOcGVjoa/+YypzV1lA7Kn/ZoSJ5tMRCk0hpEBWv1JZUPShlp++46q1NqG5RibRB
         AA0Q==
X-Forwarded-Encrypted: i=1; AJvYcCUBNX3Ho7GlkPXQBlcUeY6E39ehaTKPWp013M3C3a2Sw9x6wlRDbAJREpXWGXd7zn8hc8IpS8XgNslEx9mmXtINNv0315M=@freebsd.org, AJvYcCXTpodC1znn6bdeP2XNnTXu3V6ktvRI8LRgIWjTtT1vuFrFyUJz+OmKlr5dZZVK1AGKyRjA79IBezzotzybnwK81ox1@freebsd.org
X-Gm-Message-State: AOJu0Yz1urvQjal1zMOGMENvy99sO/j54VQlChlhtA431wq5yqmRJBeo
	+kLZGCi4hM3KG8nRi8BnJoLso2Ofqc6VVcjvE0MaHTR8Mn7IOPyXP2dnCA==
X-Gm-Gg: ASbGncsM41EK5Vo70Hd+r4QMaeZIE14i5Z7F4yVayqsVtUbTCpklOeCn/sysCTW0f3/
	R1ierV19x5yYcViMP4V4N/R7DC4wRI4px9zLGN6J8DbUW2GUrys0onZ2rF2C9JlkJ00wBP4CSYx
	aHv6HHtR77ZHtQ8sw0Bycc4WKWqZWnQgnWTZ3NJdRHAQd6qN+EH7TKSi08Wf/fNn8gWS5PM1/ES
	7l22LhFtxU7qRNlN3VAHm1OWyjSlZhdyyrEIP5BPBJUzlw=
X-Google-Smtp-Source: AGHT+IEhKRSaUkCpdYuTR1e+uJe8H7cuulr6dl24mzbZ6XLXCwWwDB5u3Vw4oO5efPI+yX3VOmhfvw==
X-Received: by 2002:a5d:64cb:0:b0:382:4978:2aaf with SMTP id ffacd0b85a97d-385c6edc515mr4619471f8f.57.1732788281618;
        Thu, 28 Nov 2024 02:04:41 -0800 (PST)
Received: from pustak.ultrahub ([84.68.156.19])
        by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-385ccd7ff49sm1212582f8f.96.2024.11.28.02.04.40
        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
        Thu, 28 Nov 2024 02:04:41 -0800 (PST)
Date: Thu, 28 Nov 2024 10:04:39 +0000
From: Edward Tomasz Napierala <trasz@freebsd.org>
To: Olivier Certner <olce@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
	dev-commits-src-main@freebsd.org
Subject: Re: git: 456666408f64 - main - Speed up syncer shutdown
Message-ID: <Z0hANyx5lYHmEDeh@pustak.ultrahub>
Mail-Followup-To: Olivier Certner <olce@freebsd.org>,
	src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
	dev-commits-src-main@freebsd.org
References: <202411280748.4AS7mBMX072498@gitrepo.freebsd.org>
 <2529417.0dHE6SNnxz@ravel>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <2529417.0dHE6SNnxz@ravel>
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]
X-Rspamd-Queue-Id: 4XzX3b3qg9z4Myh
X-Spamd-Bar: ----

On 1128T1003, Olivier Certner wrote:
> Hello Edward,
>  
> > commit 456666408f64d18c68b79ae13f5ae063df3c7293
> > Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > AuthorDate: 2024-11-27 22:33:23 +0000
> > Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > CommitDate: 2024-11-28 07:47:52 +0000
> > 
> >     Speed up syncer shutdown
> 
> Are you considering MFCing this commit?  Would there be any reason not to do it (after some time)?

Yes; I see no reason not to.


From nobody Thu Nov 28 10:05:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzX4S32tCz5fVXL;
	Thu, 28 Nov 2024 10:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzX4S2Qgwz4N87;
	Thu, 28 Nov 2024 10:05:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732788328;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=SrOM5TSKT7GMI4W9KcOWCFqeW4vGFqDKIPFAwO99Fyg=;
	b=GSVlsB3K4pOeIISvjWGVJ+lsAqdWCirBA3ufT0F/3uCtuceGGaDQu0pUe1+lKD1z8M8KaF
	UXasPVA4zot2gkAVK++rM4X0orn7Ljq+ABgRMFnQD2C7bj0NFs1m9kpB9D2ee5MGMUVqYi
	TAghm1PdiWzH90m3f3v+tCjE61QhOdBpmUAEB9KoPykJNIiXx5SstX092Poh8I3OHiL6IK
	FeS/CXm/c2xDD0SCo4hhuDYAUJ0PN3jcuzDnVoaLa2Vh9ozFDPzAAITH9L7AP9YK9icWmW
	pwVls/CdmwaS08CXUBlfInXVjsE01ZFSafO32JT+YLh7v7d5DRZ90PjWkfAxjw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732788328;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=SrOM5TSKT7GMI4W9KcOWCFqeW4vGFqDKIPFAwO99Fyg=;
	b=NiRmIMHLFxbpg+y5mIMY7FI9S8rcuQNf2MAErbcSx/mLaPjfMM+iqx6vA5xoX3veUQzPlP
	eserW14IDCxWWtYxVgM0i9PwrkZ/BU+s7DstjgkEg0A4xezIsKNxfsN6t5DfyogBiP4h/a
	S3JVJ+RxwSNC19BxZ9cr04FtOgKfmnEkwZgjLP3VfY5W2g40gnU32AULD7pk02FGn8o82W
	qjxWudjjNXklNsMpr0DSrBcRfiPLdUijUhpE7P2QIuIGLHXwh0vLJcirqi4afCtFEkJ3X4
	gneYVpwfnAcRIsMkeR/WR3u2chrU28/7qyuBwI+E1ZYaMjUC9To/IZMgPzzS1g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732788328; a=rsa-sha256; cv=none;
	b=XhIzc6IUWmgLjkLs7GgllAOAFpU1GsOgOHqGYHQ/ELFGEV6AGaN2iNU9U/AA+s7YqZ57oF
	KqN1BS/AQQAJUkqzQauO0pTbwln1UfQnW5r0oLv4R3a0npY2C6K8SeYoDVuUFIC8ewQqge
	H/2AXrL+7BVbrEW86FXrtA9E4HcVoEh2h48NbY+t8/uw43sa/sEshm8VWsBAXBah9Hx0A/
	AyANJOZAE0GJYy3jjBlaCs3CofsCLrApt4GwYMS1EdC7AMLBmTPUsMFnBx1VxzMv9VcvKd
	M0P31hD12V/+RoJzhyNGUHSyJK4Uu/HpXpgrBW/K4c5qna8o9irFLbRczhyr0A==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzX4S1vbpzb4R;
	Thu, 28 Nov 2024 10:05: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 4ASA5Sxw032301;
	Thu, 28 Nov 2024 10:05:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASA5Smm032298;
	Thu, 28 Nov 2024 10:05:28 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 10:05:28 GMT
Message-Id: <202411281005.4ASA5Smm032298@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Zhenlei Huang <zlei@FreeBSD.org>
Subject: git: 4de4f81f379e - main - Install vmx man page also on
  arm64
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: zlei
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4de4f81f379edc5f3a0c0bd1a2325bf8a1873e7e
Auto-Submitted: auto-generated

The branch main has been updated by zlei:

URL: https://cgit.FreeBSD.org/src/commit/?id=4de4f81f379edc5f3a0c0bd1a2325bf8a1873e7e

commit 4de4f81f379edc5f3a0c0bd1a2325bf8a1873e7e
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-11-28 10:04:22 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-11-28 10:04:22 +0000

    Install vmx man page also on arm64
    
    Fixes:          375d797b8191 Enable pvscsi and vmx in arm64 GENERIC
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D47711
---
 share/man/man4/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index 72e1de3009c9..c988584c2e00 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -859,7 +859,6 @@ _if_bxe.4=	if_bxe.4
 _if_hn.4=	if_hn.4
 _if_nfe.4=	if_nfe.4
 _if_urtw.4=	if_urtw.4
-_if_vmx.4=	if_vmx.4
 _if_wpi.4=	if_wpi.4
 _igc.4=		igc.4
 _imcsmb.4=	imcsmb.4
@@ -890,7 +889,6 @@ _urtw.4=	urtw.4
 _viawd.4=	viawd.4
 _vmci.4=	vmci.4
 _vmd.4=		vmd.4
-_vmx.4=		vmx.4
 _wbwd.4=	wbwd.4
 _wdatwd.4=	wdatwd.4
 _wpi.4=		wpi.4
@@ -926,9 +924,11 @@ _vmm.4=		vmm.4
 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
 	 ${MACHINE_CPUARCH} == "aarch64"
 _gve.4=		gve.4
+_if_vmx.4=	if_vmx.4
 _ipmi.4=	ipmi.4
 _linux.4=	linux.4
 _ossl.4=	ossl.4
+_vmx.4=		vmx.4
 .endif
 
 .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" || \

From nobody Thu Nov 28 10:05:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzX4T49Wpz5fVsW;
	Thu, 28 Nov 2024 10:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzX4T2jKpz4NDn;
	Thu, 28 Nov 2024 10:05:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732788329;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JKuEt2/krx0TJI9G8wf2MPeqC+ZcI5VcRPBSjPs/sX4=;
	b=olvEjnSVckH5AtHf3VuLmxkxPMirVs3qDqYaXKfN4rjOM8BuLr/9ja7o1gBcOrgeyEU1sY
	Oo/bGTNp9qpyFKy1/mZMFpiI1L095U7jTQGJJQPwUzluk7Rx6GkHuO9dBnYY0AV8yCEYpq
	1ohHJ3LjTCVbP3Pn45jr8JsG/o1v7p/H2vhoBGRTdYdauhpzkKs+obfuoxtL52cMNTBHVD
	DRMvcvxTh6cGOVDqt83AL97uZiLeNErA/krML69rZIeA80a2TPPw9Bsq2c+lB8ZsFTJyPd
	l46cCsbBbn3tZIFuPsxfqg5WdkudppHSiPW/D6bLLAWcFJV/FzeFhvgxYjJiGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732788329;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=JKuEt2/krx0TJI9G8wf2MPeqC+ZcI5VcRPBSjPs/sX4=;
	b=suQH06+OnbXjqn8cWeCfyatWbaVB160sOPiudAE4mDX4rmF2rIC5oDg6PnGSu8dtarU5f2
	weMdgSPmv5zalCHj2Wl3Z/e2rDd51JA9F3tuZaa+7514UEG06XYxgMKgDMnf93Iz+bgzSe
	/eZEJD0gYOeJqdKb+RmhCcwWO52YOtA16nSjPBoAcH3ERHu5RXnJsNdHf16wHGx+klBr7e
	MXkRtzS+Aiqa1mzHy5qWcVGqsY+dFsEEvJ3oG86MaDxtgSNxSaZMwRshGaxCwjlL1jRsyx
	JBCQsicVz968oXEKVIvWE6rLdC3B+jkzjbmRw23FKubq9FGjjdA7URoxuC1iDw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732788329; a=rsa-sha256; cv=none;
	b=K7LK7xRg5hINNhFt3Cw60/CiqVwQTvo9eDDgvUCkziXNSorCIbjt8eTAFzpv5npZOm9m5Y
	fAzSqXZEsBke1OjapDNQA0K5PoTWalbD4KQOaMPBIAZx5gDv01ZHixkR5Gy9P3r0+Ool67
	Dl5migYcKCgkPjEmDBt8T8uKlBCzjTf/9Jy2zqpCP+GaIikoGkarMS5vF2ltfZVWY68Rby
	c5u7vMlNlvg7NhkHd/GFSpVUS3DXDHbFfftuNYw1Xw18KM7tvHoMvGKMa+BXzfW73KWGHi
	/K55B3B+/+UPv09IRKJ7X3ZswM9VN5vs4XUfHCcarfy45BdtfErok5q2FqNjCw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzX4T2KNYzZx3;
	Thu, 28 Nov 2024 10:05: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 4ASA5T5m032342;
	Thu, 28 Nov 2024 10:05:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASA5TUA032339;
	Thu, 28 Nov 2024 10:05:29 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 10:05:29 GMT
Message-Id: <202411281005.4ASA5TUA032339@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Zhenlei Huang <zlei@FreeBSD.org>
Subject: git: 1811fa623d74 - main - Install pvscsi man page
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: zlei
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 1811fa623d74b42f79c109c3fe8ea9dd21d60076
Auto-Submitted: auto-generated

The branch main has been updated by zlei:

URL: https://cgit.FreeBSD.org/src/commit/?id=1811fa623d74b42f79c109c3fe8ea9dd21d60076

commit 1811fa623d74b42f79c109c3fe8ea9dd21d60076
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-11-28 10:04:22 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-11-28 10:04:22 +0000

    Install pvscsi man page
    
    This was lost during the initial introduction of the pvscsi driver [1].
    Later the driver was enabled on arm64 [2], so also install the man page
    on arm64.
    
    1. 052e12a5084f Add the pvscsi driver to the tree
    2. 375d797b8191 Enable pvscsi and vmx in arm64 GENERIC
    
    Reviewed by:    emaste, Alexander Ziaee <concussious.bugzilla_runbox.com> (manpages)
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D47712
---
 share/man/man4/Makefile | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index c988584c2e00..0f3e72007e7c 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -477,6 +477,7 @@ MAN=	aac.4 \
 	pty.4 \
 	puc.4 \
 	pwmc.4 \
+	${_pvscsi.4} \
 	${_qat.4} \
 	${_qat_c2xxx.4} \
 	${_qlxge.4} \
@@ -928,6 +929,7 @@ _if_vmx.4=	if_vmx.4
 _ipmi.4=	ipmi.4
 _linux.4=	linux.4
 _ossl.4=	ossl.4
+_pvscsi.4=	pvscsi.4
 _vmx.4=		vmx.4
 .endif
 

From nobody Thu Nov 28 10:05:30 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XzX4W032tz5fVpp;
	Thu, 28 Nov 2024 10:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4XzX4V41Vcz4NHH;
	Thu, 28 Nov 2024 10:05:30 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732788330;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=eayHWykZxQ29nMC8Yy07V+ZRYGD41bfx8+E5CVAPRDA=;
	b=Y47JeKadoyP3ilooekFfmu4jg/chSZoa2EJ0N9iQcRxPQq2D03Ab6hrt3rasx5DU5IFIeC
	NJwLqIB0BVbJTvY91H9TMH6qcWoemnCiNOFN2v8Nggy43cDp/ox+Hv6fRqkVdBMpUweJ0B
	F+9eiavSCTmEv07DKjEruW80K3OkjyZvKHbTjGl3bHtzGybC8gVCf0Lev3zcRC0ONNpKl5
	IybaIWBNgzfyjNS2iN3OdmKbsi4QTuXw8YiC8X5psem7isqb2W3fCnWndn3xFw+Q5g0WuY
	UUgDPkn2URYewu8rERt3WwPG8oXpaBaitB+z+gNa/JcxCa8MzLcj4j0WQOPdxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732788330;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=eayHWykZxQ29nMC8Yy07V+ZRYGD41bfx8+E5CVAPRDA=;
	b=iNye1TBWcWFas8dGXlbJfzO2p5Bmo4ppFHOC9ytDRMUzl8XepkV7NiwefLOGPa/sBj66RE
	KOpqk8a9r7OhkPEY7Fh/k+UjhFKbNjSVpqfgZMuJvfAh/CxRo/QXpNwlmECCKFwa6orl6N
	fdCwPxUHr2a/9J8Z8uA8pWnSTxxchzQCzHI6ODibMZsIsOztVmUNYiZwDvi3SBMp06ToJ7
	zDE4QSIRSDjBHwoZbS7c0C34jH8sS5q4VJOpktze/BZJIIvI68v9f0a3RUWvHQ3Pu07nEM
	6b0s//yhFmS7Of381p59mdS8W7norWqAuHqtA6RTdO5VQN7Yj36a9JOa4/MwUQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732788330; a=rsa-sha256; cv=none;
	b=FRN8cgeTgeCmLy6XDRVFVNmldOXhLbhdXYu6JNx2aN3kll78YvgAj921MH4tXrtPrDUBiV
	mzCoQvhKg02Sj2WDHcLodlOifznhYpPaXXtInuXPc9TGrkjprJ43ElGlyD/hpdim2AOt95
	hB6igy4KgnBh0OTRIFjX0UhPQFcjxsU7eHT6jFHiRUZgASS8F6CttcchHyWZ7TXeFk0EGy
	Vf7uQu6WzRB023SJZQnw7POpPXYzNLUqtkqTidrXuRVCfcVOa/jnWkgzhfT7cmzC/gbdPn
	grDN302ubkgdOLLjNP8iNr36HlW/4a1jNMlbBzcy/v1YBWM7/2yldQQ+K/AqNA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XzX4V3dYQzZhr;
	Thu, 28 Nov 2024 10:05:30 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4ASA5UB6032384;
	Thu, 28 Nov 2024 10:05:30 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASA5UPv032381;
	Thu, 28 Nov 2024 10:05:30 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 10:05:30 GMT
Message-Id: <202411281005.4ASA5UPv032381@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Zhenlei Huang <zlei@FreeBSD.org>
Subject: git: 949190c5afbc - main - udp: Prefer memcpy() over bcopy()
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: zlei
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 949190c5afbc677c53b5d96354b52256923a11d1
Auto-Submitted: auto-generated

The branch main has been updated by zlei:

URL: https://cgit.FreeBSD.org/src/commit/?id=949190c5afbc677c53b5d96354b52256923a11d1

commit 949190c5afbc677c53b5d96354b52256923a11d1
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-11-28 10:04:23 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-11-28 10:04:23 +0000

    udp: Prefer memcpy() over bcopy()
    
    The variable b[] is on the stack, thus cannot overlap with ipov, which
    points to the heap area, so prefer memcpy() over memmove(), aka bcopy().
    
    No functional change intended.
    
    Reviewed by:    cc, rrs, cy, #transport, #network
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D47713
---
 sys/netinet/udp_usrreq.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c
index 30c8fff5ea94..c71420b34417 100644
--- a/sys/netinet/udp_usrreq.c
+++ b/sys/netinet/udp_usrreq.c
@@ -544,12 +544,12 @@ udp_input(struct mbuf **mp, int *offp, int proto)
 			char b[offsetof(struct ipovly, ih_src)];
 			struct ipovly *ipov = (struct ipovly *)ip;
 
-			bcopy(ipov, b, sizeof(b));
+			memcpy(b, ipov, sizeof(b));
 			bzero(ipov, sizeof(ipov->ih_x1));
 			ipov->ih_len = (proto == IPPROTO_UDP) ?
 			    uh->uh_ulen : htons(ip_len);
 			uh_sum = in_cksum(m, len + sizeof (struct ip));
-			bcopy(b, ipov, sizeof(b));
+			memcpy(ipov, b, sizeof(b));
 		}
 		if (uh_sum) {
 			UDPSTAT_INC(udps_badsum);

From nobody Thu Nov 28 12:17:12 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xzb0S6z9dz5fckX;
	Thu, 28 Nov 2024 12:17: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xzb0S5ylgz4bdr;
	Thu, 28 Nov 2024 12:17:12 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732796232;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=cZSux6yT/xtYEpmBQUcEpk6IILl3jmGOVkYcVc/e6cs=;
	b=ifghUItKWuvOo2vDyKBf+1DGMSkF5rpJ6x/PeZeC0lOmjFbv7zfv7LX3Lh916JvGj/lsQj
	puxVzxOArJbj1ld0en/sMw6+esEB+n0HGrUMza/vXV0kFnRLjhHTdHIbpnzWAxM70qtDfp
	G862kW0sNMQFZY3jNT8ndP+4FERTveS9XpPRGVjXbkS8bgH16QFhB7f/NKPsc+o8EkuRoI
	FP2Vz6bRHiO9OAQfDQZ0uRXYfoxLXbtzpBLD6pBhqcmjcNDHch4PkJfBuDpvsJsDr6vl6l
	phOH86Fx8WJ5NBYHFpZx7j4U8hofsTFfs8faogcxj43EHZDW70D4+nHLeBDlyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732796232;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=cZSux6yT/xtYEpmBQUcEpk6IILl3jmGOVkYcVc/e6cs=;
	b=cG/58HUE0W+/j2EPsz/20LLMRGweBBjh6A8zp3G4EDCc8dzpQDQQhn0nkOaPl7Z9/agwbA
	PqPZB8v9X53fnOudwvADzaE+Znf+M8jQ0nXJdqRy8x+MEe0uB3UwJdV5yb3bsTAywKzMCc
	IOorjHAcV0y0jz9xfgwZqKExYkRpytXMeghLipig9IVsGSQg1Vj5JSHd+sMjP+RfwNZbsG
	vgmemJAjfDhpufKa7VUgUaSnhL0dwv05tYyHY6t3yAr+j9U+lTzE/zrimE80mP5+Yex4ys
	Diz/gKOuqnk7FmMaU8wrHOkBJhHK2dAtezSmWlWKvupgomsznwt/c7hw7rX47w==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732796232; a=rsa-sha256; cv=none;
	b=d1Osz26wijAtj+z1SY+FP0lnlc9qP3cQSHQSrtY3vXx5+E/UERkODMJtgo2LvoE7Slp6GL
	DDYW/3TKXr4O4R1mVrLA+0lLVxMuRJLElfF/zA6lC5mTOG/8a7zjc/mXZS0rp10xFZSXJh
	/J+n/Qz5A6DVtrkqW/NFiZmOS44ZHtVrp6FeWWlLewP6VD+dxe5BVpRb3VCsM/OXd7TFrD
	6nFSQR6FmdIZJHdzC96Y69U/1K+m3mp5NSH90Yq9H/Zpmxb6BfqC4aLEJs2O+fXhmSiiLv
	ZxrQ+rHjsjTJ3Va2bUY5YPZhD0h7YKFxLuaZEPYs4aGe25s4bJ3pu0mwdFZjUA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xzb0S5YK9zfP0;
	Thu, 28 Nov 2024 12:17: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 4ASCHCuw074397;
	Thu, 28 Nov 2024 12:17:12 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASCHCS9074394;
	Thu, 28 Nov 2024 12:17:12 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 12:17:12 GMT
Message-Id: <202411281217.4ASCHCS9074394@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Peter Holm <pho@FreeBSD.org>
Subject: git: 2e2699c48a7e - main - stress2: Added new tmpfs test
  scenarios
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: pho
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 2e2699c48a7e6b7cbf13611a601a6cd264a80ec5
Auto-Submitted: auto-generated

The branch main has been updated by pho:

URL: https://cgit.FreeBSD.org/src/commit/?id=2e2699c48a7e6b7cbf13611a601a6cd264a80ec5

commit 2e2699c48a7e6b7cbf13611a601a6cd264a80ec5
Author:     Peter Holm <pho@FreeBSD.org>
AuthorDate: 2024-11-28 12:16:35 +0000
Commit:     Peter Holm <pho@FreeBSD.org>
CommitDate: 2024-11-28 12:16:35 +0000

    stress2: Added new tmpfs test scenarios
---
 tools/test/stress2/misc/tmpfs26.sh | 179 +++++++++++++++++++++++++++++++++++++
 tools/test/stress2/misc/tmpfs27.sh |  49 ++++++++++
 tools/test/stress2/misc/tmpfs28.sh |  61 +++++++++++++
 3 files changed, 289 insertions(+)

diff --git a/tools/test/stress2/misc/tmpfs26.sh b/tools/test/stress2/misc/tmpfs26.sh
new file mode 100755
index 000000000000..25fa59ff37c3
--- /dev/null
+++ b/tools/test/stress2/misc/tmpfs26.sh
@@ -0,0 +1,179 @@
+#!/bin/sh
+
+# Bug 272678 - VFS: Incorrect data in read from concurrent write 
+
+# Test scenario by: Kristian Nielsen <knielsen@knielsen-hq.org>
+
+. ../default.cfg
+
+prog=$(basename "$0" .sh)
+cat > /tmp/$prog.c <<EOF
+#include <stdio.h>
+#include <pthread.h>
+#include <sys/select.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+
+#define MAGIC 0x42
+
+const char *filename = "testfile.bin";
+
+static FILE *write_file;
+static FILE *read_file;
+static pthread_mutex_t write_mutex;
+static pthread_cond_t write_cond;
+static pthread_mutex_t read_mutex;
+static pthread_cond_t read_cond;
+static pthread_mutex_t state_mutex;
+static pthread_cond_t state_cond;
+static int write_state;
+static int read_state;
+
+void *
+writer_routine(void *arg __unused)
+{
+	unsigned char data[44];
+
+	memset(data, MAGIC, sizeof(data));
+	pthread_mutex_lock(&write_mutex);
+
+	for (;;) {
+
+		while (write_state != 1)
+			pthread_cond_wait(&write_cond, &write_mutex);
+
+		fwrite(data, 1, sizeof(data), write_file);
+		fflush(write_file);
+
+		pthread_mutex_lock(&state_mutex);
+		write_state = 2;
+		pthread_cond_signal(&state_cond);
+		pthread_mutex_unlock(&state_mutex);
+	}
+}
+
+void *
+reader_routine(void *arg __unused)
+{
+
+	for (;;) {
+		unsigned char buf[387];
+		int len;
+
+		while (read_state != 1)
+			pthread_cond_wait(&read_cond, &read_mutex);
+
+		len = fread(buf, 1, sizeof(buf), read_file);
+		if (len < (int)sizeof(buf) && ferror(read_file)) {
+			perror(" read file");
+			exit(1);
+		}
+		for (int i = 0; i < len; ++i) {
+			if (buf[i] != MAGIC) {
+				fprintf(stderr, "ERROR! invalid value read 0x%2x at %d of %d, pos %ld\n",
+						buf[i], i, len, ftell(read_file));
+				exit(126);
+			}
+		}
+
+		pthread_mutex_lock(&state_mutex);
+		read_state = 2;
+		pthread_cond_signal(&state_cond);
+		pthread_mutex_unlock(&state_mutex);
+	}
+}
+
+void
+create_threads(void)
+{
+	pthread_t write_thread_id, read_thread_id;
+	pthread_attr_t attr;
+
+	pthread_mutex_init(&write_mutex, NULL);
+	pthread_mutex_init(&read_mutex, NULL);
+	pthread_mutex_init(&state_mutex, NULL);
+	pthread_cond_init(&write_cond, NULL);
+	pthread_cond_init(&read_cond, NULL);
+	pthread_cond_init(&state_cond, NULL);
+
+	pthread_attr_init(&attr);
+	pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+	pthread_create(&write_thread_id, &attr, writer_routine, NULL);
+	pthread_create(&read_thread_id, &attr, reader_routine, NULL);
+}
+
+int
+main(int argc, char *argv[])
+{
+	int num_iter = 1000;
+	int i;
+	unsigned char buf[343];
+
+	if (argc >= 2)
+		num_iter = atoi(argv[1]);
+
+	write_state = 0;
+	read_state = 0;
+
+	create_threads();
+	memset(buf, MAGIC, sizeof(buf));
+
+	for (i = 0; i < num_iter; ++i) {
+		/* Write the first part of the file. */
+		pthread_mutex_lock(&write_mutex);
+		write_file = fopen(filename, "wb");
+		if (!write_file) {
+			perror(" open file");
+			exit(1);
+		}
+		fwrite(buf, 1, sizeof(buf), write_file);
+		fflush(write_file);
+
+		/* Open a read handle on the file. */
+		pthread_mutex_lock(&read_mutex);
+		read_file = fopen(filename, "rb");
+		if (!read_file) {
+			perror(" open read file");
+			exit(1);
+		}
+
+		write_state = 1;
+		read_state = 1;
+		pthread_cond_signal(&write_cond);
+		pthread_mutex_unlock(&write_mutex);
+		pthread_cond_signal(&read_cond);
+		pthread_mutex_unlock(&read_mutex);
+
+		pthread_mutex_lock(&state_mutex);
+		while (write_state != 2 || read_state != 2)
+			pthread_cond_wait(&state_cond, &state_mutex);
+		pthread_mutex_unlock(&state_mutex);
+
+		/* Close and remove the file, ready for another iteration. */
+		pthread_mutex_lock(&write_mutex);
+		fclose(write_file);
+		write_state = 0;
+		pthread_mutex_unlock(&write_mutex);
+
+		pthread_mutex_lock(&read_mutex);
+		fclose(read_file);
+		read_state = 0;
+		pthread_mutex_unlock(&read_mutex);
+
+		unlink(filename);
+	}
+
+	return (0);
+}
+EOF
+mycc -o /tmp/$prog -Wall -Wextra -O2 /tmp/$prog.c -lpthread || exit 1
+
+mount -t tmpfs dummy $mntpoint
+cd $mntpoint
+/tmp/$prog; s=$?
+cd -
+umount $mntpoint
+
+rm /tmp/$prog /tmp/$prog.c
+exit $s
diff --git a/tools/test/stress2/misc/tmpfs27.sh b/tools/test/stress2/misc/tmpfs27.sh
new file mode 100755
index 000000000000..5479dcd9188a
--- /dev/null
+++ b/tools/test/stress2/misc/tmpfs27.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+
+#
+# Copyright (c) 2024 Peter Holm <pho@FreeBSD.org>
+#
+# SPDX-License-Identifier: BSD-2-Clause
+#
+
+# umount FS with memory mapped file. tmpfs version.
+
+# "panic: object with writable mappings does not have a reference" seen:
+# https://people.freebsd.org/~pho/stress/log/log0518.txt
+
+[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
+
+. ../default.cfg
+
+set -eu
+prog=$(basename "$0" .sh)
+here=`pwd`
+mp1=$mntpoint
+
+mount -t tmpfs dummy $mp1
+
+export RUNDIR=$mp1/stressX
+export runRUNTIME=2m
+export LOAD=70
+export mmapLOAD=100
+export TESTPROGS="testcases/mmap/mmap testcases/swap/swap"
+set +e
+
+(cd ..; ./testcases/run/run $TESTPROGS > /dev/null 2>&1) & rpid=$!
+sleep 5
+
+start=`date +%s`
+while [ $((`date +%s` - start)) -lt 120 ]; do
+	umount -f $mp1 &&
+	    mount -t tmpfs dummy $mp1
+	mount | grep -q "on $mp1 " || break
+	pgrep -q mmap || break
+done
+pkill run swap mmap
+while pgrep -q swap; do pkill swap; done
+wait $rpid
+
+while mount | grep -q "on $mp1 "; do
+	umount $mp1
+done
+exit 0
diff --git a/tools/test/stress2/misc/tmpfs28.sh b/tools/test/stress2/misc/tmpfs28.sh
new file mode 100755
index 000000000000..d73e957b7f28
--- /dev/null
+++ b/tools/test/stress2/misc/tmpfs28.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+#
+# Copyright (c) 2024 Peter Holm <pho@FreeBSD.org>
+#
+# SPDX-License-Identifier: BSD-2-Clause
+#
+
+# A SEEK_HOLE / SEEK_DATA test scenario, variation of tmpfs24.sh
+
+# A regression test for "40c1672e886b - main - swap_pager: fix
+# seek_data with invalid first page"
+
+[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
+
+. ../default.cfg
+
+prog=$(basename "$0" .sh)
+exp=/tmp/$prog.exp
+here=`pwd`
+log=/tmp/$prog.log
+
+cc -o /tmp/lsholes -Wall -Wextra -O2 $here/../tools/lsholes.c | exit 1
+cat > $exp <<EXP
+Min hole size is 4096, file size is 524288000.
+data #1 @ 0, size=4096)
+hole #2 @ 4096, size=4096
+data #3 @ 8192, size=4096)
+hole #4 @ 12288, size=4096
+data #5 @ 16384, size=4096)
+hole #6 @ 20480, size=524267520
+EXP
+
+set -eu
+mount -t tmpfs dummy $mntpoint
+set +e
+
+file=$mntpoint/file
+copy=$mntpoint/copy
+truncate -s 500m $file
+bs=`getconf MIN_HOLE_SIZE $file`
+printf "\001" | dd of=$file seek=$((0*bs)) bs=1 count=1 conv=notrunc status=none
+printf "\002" | dd of=$file seek=$((2*bs)) bs=1 count=1 conv=notrunc status=none
+printf "\003" | dd of=$file seek=$((4*bs)) bs=1 count=1 conv=notrunc status=none
+s1=0
+s2=0
+s3=0
+/tmp/lsholes $file > $log 2>&1 || s1=1
+
+cmp -s $exp $log || { s2=2; sdiff $exp $log; }
+
+$here/../testcases/swap/swap -t 2m -i 20 -h > /dev/null &
+sleep 10
+cp $file $copy
+while pkill swap; do :; done
+wait
+cmp $file $copy || { echo "copy error"; s3=4; }
+
+umount $mntpoint
+rm -f /tmp/lsholes $exp $log
+exit $((s1 + s2 + s3))

From nobody Thu Nov 28 13:05:17 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xzc3y0tmhz5fhP7;
	Thu, 28 Nov 2024 13:05: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xzc3y0McNz4jXm;
	Thu, 28 Nov 2024 13:05:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732799118;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2ZWARazbgyXZbxFjCpVKFogIWRx42opCkXlk3Y5Urm4=;
	b=CEL6TJYRWLqFAw8mDlU3XOfjQ91M190HibjNHQ56Mx6U826/1CRk6X50D/4ZaCAkuVN+hq
	9MWZfcdSBiq3YRwX1ABHl/bvgv7+r87XW2be1OVUCk4Ufwtxo3R24kyOwBCoUrxKa7Rtn0
	U7BTLJZWXJyqpfE39krKv50UKVj1XvqAv0UqTw6oxaM+6DZADTge/c0uHojyJMRObyYT/5
	+09XceUd4WDpowIHQktbW9KMuadQ8c2UV/vBDq9UG4CWBpD585kgn4BJq4/aDOHJxyzrfi
	L/GGt3ATBKdpV7hB6dZciPCivYU7fU8LGqo3pVdJSZi+9goveifmizETX/D7pA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732799118;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2ZWARazbgyXZbxFjCpVKFogIWRx42opCkXlk3Y5Urm4=;
	b=V2cQF2piSOEf91C/zQDoFxL1hcqKuB7wzxboag4KxfeW9Nvgt9aDWgY5bxyKpBtAgUESsd
	kvcWFJ1cpKZMM2sPM9nK9Qe3D+k7OZSug+4twuZsKmw0PZxVdZcZt74P0BB53DnZE8FUOF
	sXElMw3FxJq2YwE/P5wj4FjBJCqGXaPVAqqUbuKwxTvZiUUJBesa+bYZ7yiDt3N8oowArd
	6Ii/fnl7oSYhasyJbBAHPXIKqPvoTGwc4ogkc+htQGT4sTAnZ7KO4dv00hId6AULrKn5SO
	j3a49h6tChBceHBu5i4bDDKDEA8aU1yUhamKYdFT/Yu1zgzci3CcFpCRK+siiw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732799118; a=rsa-sha256; cv=none;
	b=O9KxdhuqNKsq+ZVFdthyGpgpZ7tcp9FeLzQ3/nuz3/jxTO0dgmZatFI4FcwIkgUuXnahtn
	dc812cfJHU8NZQzFn5ME6gGs6VeFbq+CxBDKsg9SMPl9soEU/LL/lE86JkcJzJyG7pWW3n
	8LcQNRU3DImaFrNH47KnEqItttS9D5nTNiZCYk/MKXAYUMYPJSSVTkhKiFocCfS09HSpzg
	ZQcI65nO3AIzvAsRE65KFZ2vrL3Z3sfhq8DVMpc7ex0vLuX6YayMdP2M5zAfz301pu2zhy
	FaxYAKtsW8myKCbz1cUGEufreh0ZsBeJBMlXvJj8FFtjBFm/3BtcHh9Cnxp7xg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xzc3x6ySvzftq;
	Thu, 28 Nov 2024 13:05: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 4ASD5HuX067633;
	Thu, 28 Nov 2024 13:05:17 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASD5HRO067630;
	Thu, 28 Nov 2024 13:05:17 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 13:05:17 GMT
Message-Id: <202411281305.4ASD5HRO067630@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Ed Maste <emaste@FreeBSD.org>
Subject: git: 062b69ba045d - main - comsat: Improve use of setuid()
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: emaste
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 062b69ba045dc0fef3d9b8d73365d2798c05a480
Auto-Submitted: auto-generated

The branch main has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=062b69ba045dc0fef3d9b8d73365d2798c05a480

commit 062b69ba045dc0fef3d9b8d73365d2798c05a480
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2024-11-27 20:36:46 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2024-11-28 13:04:10 +0000

    comsat: Improve use of setuid()
    
    Just return from jkfprintf if either (a) user lookup fails (that is,
    getpwnam fails) or (b) setuid() to the user's uid fails.  If comsat is
    invoked from inetd using the default of tty:tty we will now return due
    to setuid() failing rather than fopen() failing.
    
    PR:             270404
    Reviewed by:    kevans
    Sponsored by:   The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D47823
---
 libexec/comsat/comsat.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/libexec/comsat/comsat.c b/libexec/comsat/comsat.c
index 2d2141238a4e..76f6190bea7b 100644
--- a/libexec/comsat/comsat.c
+++ b/libexec/comsat/comsat.c
@@ -213,8 +213,10 @@ jkfprintf(FILE *tp, char user[], char file[], off_t offset)
 	unsigned char line[BUFSIZ];
 
 	/* Set effective uid to user in case mail drop is on nfs */
-	if ((p = getpwnam(user)) != NULL)
-		(void) setuid(p->pw_uid);
+	if ((p = getpwnam(user)) == NULL)
+		return;
+	if (setuid(p->pw_uid) != 0)
+		return;
 
 	if ((fi = fopen(file, "r")) == NULL)
 		return;

From nobody Thu Nov 28 16:55:21 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xzj9P6C4gz5dy7p;
	Thu, 28 Nov 2024 16:55: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xzj9P5YlQz4V69;
	Thu, 28 Nov 2024 16:55:21 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732812921;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DiXuRNXExSk19WLyDqMJRoH1drY4mTCIN0oMG2kJdmM=;
	b=DgDwiKOaTIQtWYVWTrbM9SudPihRLKYfGVjIpEQlFjGn2oSTHLHZ2qbTbl5c4H2Bj4Xscd
	xFLKtMxD6e1R6dg92FsnDBISgd4G+l6bvBuTZOBq11jhuLrgBOGt5rf+VPBET+ocGtO+dJ
	cVAr/Du00cfzT+ghUmafrZWGWVm793MfEid8YDf5dBueYXcYfy7hD7FTRs9zLMGuNdqSWj
	LfxJ5YY9gOArRPTQ11kkfQD3xrheRnl2DtCH5MnEFmmRTH2H2AlGMOJD/WHMOI11VLc6jO
	To3KrlBUYazvCtKeZ9+vhYL0dLm+bItkwVwPaKCY+uZAO8kooaD0cAelVHb0lw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732812921;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DiXuRNXExSk19WLyDqMJRoH1drY4mTCIN0oMG2kJdmM=;
	b=fEBWIcQcnJd7HJNYSxn8InkW3U0wZECHBKV5C7A7dXIz+W87C18tAx+MgaFqajmBMhsEw/
	NwR4/HfFDKjDnuA5oY/MNdcp+epdSfiKCLhsOuau69GToyuw8H3mPxmAUUx41lyWtFre7H
	CSyg3eInJQwf4XV6Ty+/tUd4MSFfib/az6941z+oyKJ5UuSE9xX6tWPpGSUIR/a+UQqy1d
	eFoHAsYSsCPLUvumOSFvOtSJ5JPzpsTPYB7G3R+W6zljX7TMdDE0msOL/yu7eg0RZwZC9z
	RJlDkV4yQYoMQK12rctKyEb62s3uN5jpK7u2/b1wttsSU7ZJoa5FG7JFYCAOcQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732812921; a=rsa-sha256; cv=none;
	b=ZUPi30z5yJwJAC7yXFMzq9pN+xczUxTa3GkCxp5yuS8gJ/54n+f6/2Vg9z5tHKdsjhIPII
	HBxg+Y4yu5+Z69zxEJ0kpp/1OY1ZOZM3UVqfWcd8BoleNgnLn9QShUC/16g+ngUHkzZDVE
	p1nbIJmYuzrihKp0nkI42iWLAcSF7IjrwaxtALqYzx6k33QLkU4GBbO5jEd/Cfx5jQZFQW
	Upil8BwARU5kOs8KfjboSm5L8VoPkXU/iiEaWCGiErkY0vDWXAESAUteGj/t0WpUOqwy/D
	Z3STSCLbVR+dGwkWP0+5RaxNdcUsHxIS7BLCRtkNLU+rqtNEA10h9PvnW2s3oA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xzj9P52PNznWK;
	Thu, 28 Nov 2024 16:55: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 4ASGtLvK094413;
	Thu, 28 Nov 2024 16:55:21 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASGtLrS094410;
	Thu, 28 Nov 2024 16:55:21 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 16:55:21 GMT
Message-Id: <202411281655.4ASGtLrS094410@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Alexander Motin <mav@FreeBSD.org>
Subject: git: de852d78ff58 - main - hwpmc: Restore line lost in
  previous commit
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: mav
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: de852d78ff58643d91bb672571757ef73ca74c39
Auto-Submitted: auto-generated

The branch main has been updated by mav:

URL: https://cgit.FreeBSD.org/src/commit/?id=de852d78ff58643d91bb672571757ef73ca74c39

commit de852d78ff58643d91bb672571757ef73ca74c39
Author:     Alexander Motin <mav@FreeBSD.org>
AuthorDate: 2024-11-28 16:53:24 +0000
Commit:     Alexander Motin <mav@FreeBSD.org>
CommitDate: 2024-11-28 16:53:24 +0000

    hwpmc: Restore line lost in previous commit
    
    MFC after:      3 days
---
 sys/dev/hwpmc/hwpmc_logging.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/dev/hwpmc/hwpmc_logging.c b/sys/dev/hwpmc/hwpmc_logging.c
index b472bf856b92..8fd7ef06a977 100644
--- a/sys/dev/hwpmc/hwpmc_logging.c
+++ b/sys/dev/hwpmc/hwpmc_logging.c
@@ -139,6 +139,7 @@ static struct mtx pmc_kthread_mtx;	/* sleep lock */
 	ph = (struct pmclog_header *)_le;				\
 	ph->pl_header =_PMCLOG_TO_HEADER(TYPE,_len);			\
 	ph->pl_tsc = tsc;						\
+	_le += sizeof(*ph) / 4	/* skip over timestamp */
 
 #define	PMCLOG_RESERVE_SAFE(P, T, L, TSC)				\
 	_PMCLOG_RESERVE_SAFE(P, T, L, return, TSC)

From nobody Thu Nov 28 17:34:16 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xzk2K0MQfz5f1sB;
	Thu, 28 Nov 2024 17:34: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Xzk2K07fvz4YW6;
	Thu, 28 Nov 2024 17:34:17 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732815257;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=r3S0V4NNe3gRQbtSrvaTQc2cZRY14XANN6Q1TztBgdU=;
	b=MRRNeTNOdeSXil9/Pn8CbIOplBN4aPRpU5sF34bKofBppG8JYas3rmgSTeeiCuBHyvpq1K
	zwI351lO2iql3M0BNgBzKDA0hMjCAOj5kPV3hVakAI2wh4DlUf2ZAdRogpEqwxHhG8rW2k
	ohnlbGEy530LRT6yNwVjyzLjtUkk+/5gIs+enu3zmONynZH4Nm3isb1pScOZmxrwutNPMJ
	Ma06bDzyLOyHMrB5pymk1ehuGqklyf6Y0ISv/+W/8zThsZTJDtr/fdowW5qYNQQBsyzsZ7
	FXgWGn4VuTwogHej6ZDyaFAKCHp9M4lI7gdPLvEvn1T0YkFFXU40MR6oU+nGcw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732815257;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=r3S0V4NNe3gRQbtSrvaTQc2cZRY14XANN6Q1TztBgdU=;
	b=tWQzoEYIGE/w4IYwWgBxZEqb8PkhWenjEk7UhNE8vP5Lfmp62qhJ8yx6o1Bb29PE2CxsAt
	gBdWyoyET1ago3WksSDnZpG8eGBFuCFSVLChrD8AOT7XrPOGJZrI4+mSSY74MronbbL/lG
	cuI9xir+JZA70b9DM7nxz0AWtd1927Pwyt+DOh9eDdq2FtGgEA/YDUwlPZZFKqZM6yXhGZ
	TUYJ6n5c0LBr05ITM+CwNZf4F2/VWso76jh6EbmcHOsG++DVnDZwym1IGDj043BmxvxRef
	W8JsEaoynJ7n7bZ0b8MaIoQlT5+dQsN3SSKYRjrCJ6BExK7F4P7jlkPw5/QH8g==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732815257; a=rsa-sha256; cv=none;
	b=tJMV01gg9zUBKa9e2ER79Kzn7/cUrk6eVKzJYXTUX+xjSmc2gGHXSMrtQGK+JLpt4UzIDk
	bc2VgHZenRu+yYpcQXiTMjF4NEcmDtZ+sIFHUyUuVY0SuceZIoc3wxXSRU5ZodykqU+1hS
	B51Zkj82Xsgp1pUZcfjOr4fZr96HukRQMoz26UBO/Xe8+z6szX8OU7iuLiYgMf4v6keJDb
	kGVJ9CDL4TanAxaiYmOB5jgxxZWSbwxjvlwQU/Cw0jJhOsIQSAPskkc/IQCikm/OVRSnKg
	RBzkJkuKRh7pij6sHRg5QGmtbH3tPLPhIWaSdWeSJGUVPnj/yJRvdnNHqkaJXw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xzk2J6kplzpVS;
	Thu, 28 Nov 2024 17:34: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 4ASHYGGd068396;
	Thu, 28 Nov 2024 17:34:16 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ASHYGmZ068393;
	Thu, 28 Nov 2024 17:34:16 GMT
	(envelope-from git)
Date: Thu, 28 Nov 2024 17:34:16 GMT
Message-Id: <202411281734.4ASHYGmZ068393@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kajetan Staszkiewicz <ks@FreeBSD.org>
Subject: git: b9c0321d54e9 - main - pf: Fix source node locking
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: ks
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: b9c0321d54e96d0a6591e9c609c7581916d3ddd3
Auto-Submitted: auto-generated

The branch main has been updated by ks:

URL: https://cgit.FreeBSD.org/src/commit/?id=b9c0321d54e96d0a6591e9c609c7581916d3ddd3

commit b9c0321d54e96d0a6591e9c609c7581916d3ddd3
Author:     Kajetan Staszkiewicz <ks@FreeBSD.org>
AuthorDate: 2024-11-23 21:21:22 +0000
Commit:     Kajetan Staszkiewicz <ks@FreeBSD.org>
CommitDate: 2024-11-28 17:31:55 +0000

    pf: Fix source node locking
    
    Source nodes are created quite early in pf_create_state(), even before
    the state is allocated, locked and inserted into its hash row. They are
    prone to being freed by source node killing or clearing ioctl while
    pf_create_state() is still running.
    
    The function pf_map_addr_sn() can be called in two very different paths.
    
    One is for filter rules where it is called from
    pf_create_state() after pf_insert_src_node(). In this case it is called
    with a given source node and does not perform its own search and must
    return the source node.
    
    The other one is for NAT rules where it is called from
    pf_get_translation() or its descendants. In this case it is called with
    no known source node and performs its own search for source nodes. This
    source node is then passed back to pf_create_state() without locking.
    
    The states property of source node is increased in pf_find_src_node()
    which allows for the counter to increase when a packet matches the NAT
    rule but not a pass keep state rule.
    
    The function pf_map_addr() operates on unlocked source node.
    
    Modify pf_find_src_node() to return locked on source node found, so
    that any subsequent operations can access the source node safely.
    
    Move sn->states++ counter increase to pf_insert_src_node() to ensure
    that it's called only from pf_create_state() and not from NAT ruleset
    path, and have it increased only if the source node has really been
    inserted or found, simplifying the cleanup.
    
    Add locking in pf_src_connlimit() and pf_map_addr(). Sprinkle mutex
    assertions in pf_map_addr().
    
    Add a function pf_src_node_exists() to check a known source node is
    still valid. Use it in pf_create_state() where it's impossible to hold
    locks from pf_insert_src_node() because that would cause LoR (nodes
    first, then state) against pf_src_connlimit() (state first, then node).
    
    Don't propagate the source node found while parsing the NAT ruleset to
    pf_create_state() because it must be found again and locked or created.
    
    Reviewed by:            kp
    Approved by:            kp (mentor)
    Sponsored by:           InnoGames GmbH
    Differential Revision:  https://reviews.freebsd.org/D47770
---
 sys/net/pfvar.h                   |   8 ++-
 sys/netpfil/pf/pf.c               | 148 ++++++++++++++++++++++----------------
 sys/netpfil/pf/pf_lb.c            |  66 ++++++++++-------
 tests/sys/netpfil/pf/src_track.sh |  15 ++--
 4 files changed, 143 insertions(+), 94 deletions(-)

diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h
index e00101ba2b78..51f525c7383b 100644
--- a/sys/net/pfvar.h
+++ b/sys/net/pfvar.h
@@ -2334,6 +2334,9 @@ extern int			 pf_udp_mapping_insert(struct pf_udp_mapping
 				    *mapping);
 extern void			 pf_udp_mapping_release(struct pf_udp_mapping
 				    *mapping);
+uint32_t			 pf_hashsrc(struct pf_addr *, sa_family_t);
+extern bool			 pf_src_node_exists(struct pf_ksrc_node **,
+				    struct pf_srchash *);
 extern struct pf_ksrc_node	*pf_find_src_node(struct pf_addr *,
 				    struct pf_krule *, sa_family_t,
 				    struct pf_srchash **, bool);
@@ -2622,10 +2625,9 @@ u_short			 pf_map_addr(u_int8_t, struct pf_krule *,
 u_short			 pf_map_addr_sn(u_int8_t, struct pf_krule *,
 			    struct pf_addr *, struct pf_addr *,
 			    struct pfi_kkif **nkif, struct pf_addr *,
-			    struct pf_ksrc_node **);
+			    struct pf_ksrc_node **, struct pf_srchash **);
 u_short			 pf_get_translation(struct pf_pdesc *,
-			    int, struct pf_ksrc_node **,
-			    struct pf_state_key **, struct pf_state_key **,
+			    int, struct pf_state_key **, struct pf_state_key **,
 			    struct pf_addr *, struct pf_addr *,
 			    uint16_t, uint16_t, struct pf_kanchor_stackframe *,
 			    struct pf_krule **,
diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index 9436a4247411..9f8fec51e420 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -332,8 +332,7 @@ static int		 pf_test_rule(struct pf_krule **, struct pf_kstate **,
 			    struct pf_kruleset **, struct inpcb *);
 static int		 pf_create_state(struct pf_krule *, struct pf_krule *,
 			    struct pf_krule *, struct pf_pdesc *,
-			    struct pf_ksrc_node *, struct pf_state_key *,
-			    struct pf_state_key *,
+			    struct pf_state_key *, struct pf_state_key *,
 			    u_int16_t, u_int16_t, int *,
 			    struct pf_kstate **, int, u_int16_t, u_int16_t,
 			    struct pf_krule_slist *, struct pf_udp_mapping *);
@@ -372,14 +371,15 @@ static void		 pf_patch_8(struct mbuf *, u_int16_t *, u_int8_t *, u_int8_t,
 			    bool, u_int8_t);
 static struct pf_kstate	*pf_find_state(struct pfi_kkif *,
 			    const struct pf_state_key_cmp *, u_int);
-static int		 pf_src_connlimit(struct pf_kstate *);
+static bool		 pf_src_connlimit(struct pf_kstate *);
 static int		 pf_match_rcvif(struct mbuf *, struct pf_krule *);
 static void		 pf_counters_inc(int, struct pf_pdesc *,
 			    struct pf_kstate *, struct pf_krule *,
 			    struct pf_krule *);
 static void		 pf_overload_task(void *v, int pending);
 static u_short		 pf_insert_src_node(struct pf_ksrc_node **,
-			    struct pf_krule *, struct pf_addr *, sa_family_t);
+			    struct pf_srchash **, struct pf_krule *,
+			    struct pf_addr *, sa_family_t);
 static u_int		 pf_purge_expired_states(u_int, int);
 static void		 pf_purge_unlinked_rules(void);
 static int		 pf_mtag_uminit(void *, int, int);
@@ -701,7 +701,7 @@ pf_hashkey(const struct pf_state_key *sk)
 	return (h & V_pf_hashmask);
 }
 
-static __inline uint32_t
+__inline uint32_t
 pf_hashsrc(struct pf_addr *addr, sa_family_t af)
 {
 	uint32_t h;
@@ -812,17 +812,14 @@ pf_check_threshold(struct pf_threshold *threshold)
 	return (threshold->count > threshold->limit);
 }
 
-static int
+static bool
 pf_src_connlimit(struct pf_kstate *state)
 {
 	struct pf_overload_entry *pfoe;
-	int bad = 0;
+	bool limited = false;
 
 	PF_STATE_LOCK_ASSERT(state);
-	/*
-	 * XXXKS: The src node is accessed unlocked!
-	 * PF_SRC_NODE_LOCK_ASSERT(state->src_node);
-	 */
+	PF_SRC_NODE_LOCK(state->src_node);
 
 	state->src_node->conn++;
 	state->src.tcp_est = 1;
@@ -832,29 +829,29 @@ pf_src_connlimit(struct pf_kstate *state)
 	    state->rule->max_src_conn <
 	    state->src_node->conn) {
 		counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONN], 1);
-		bad++;
+		limited = true;
 	}
 
 	if (state->rule->max_src_conn_rate.limit &&
 	    pf_check_threshold(&state->src_node->conn_rate)) {
 		counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONNRATE], 1);
-		bad++;
+		limited = true;
 	}
 
-	if (!bad)
-		return (0);
+	if (!limited)
+		goto done;
 
 	/* Kill this state. */
 	state->timeout = PFTM_PURGE;
 	pf_set_protostate(state, PF_PEER_BOTH, TCPS_CLOSED);
 
 	if (state->rule->overload_tbl == NULL)
-		return (1);
+		goto done;
 
 	/* Schedule overloading and flushing task. */
 	pfoe = malloc(sizeof(*pfoe), M_PFTEMP, M_NOWAIT);
 	if (pfoe == NULL)
-		return (1);	/* too bad :( */
+		goto done;  /* too bad :( */
 
 	bcopy(&state->src_node->addr, &pfoe->addr, sizeof(pfoe->addr));
 	pfoe->af = state->key[PF_SK_WIRE]->af;
@@ -865,7 +862,9 @@ pf_src_connlimit(struct pf_kstate *state)
 	PF_OVERLOADQ_UNLOCK();
 	taskqueue_enqueue(taskqueue_swi, &V_pf_overloadtask);
 
-	return (1);
+done:
+	PF_SRC_NODE_UNLOCK(state->src_node);
+	return (limited);
 }
 
 static void
@@ -962,8 +961,7 @@ pf_overload_task(void *v, int pending)
 }
 
 /*
- * Can return locked on failure, so that we can consistently
- * allocate and insert a new one.
+ * On node found always returns locked. On not found its configurable.
  */
 struct pf_ksrc_node *
 pf_find_src_node(struct pf_addr *src, struct pf_krule *rule, sa_family_t af,
@@ -981,15 +979,34 @@ pf_find_src_node(struct pf_addr *src, struct pf_krule *rule, sa_family_t af,
 		    (af == AF_INET6 && bcmp(&n->addr, src, sizeof(*src)) == 0)))
 			break;
 
-	if (n != NULL) {
-		n->states++;
-		PF_HASHROW_UNLOCK(*sh);
-	} else if (returnlocked == false)
+	if (n == NULL && !returnlocked)
 		PF_HASHROW_UNLOCK(*sh);
 
 	return (n);
 }
 
+bool
+pf_src_node_exists(struct pf_ksrc_node **sn, struct pf_srchash *sh)
+{
+	struct pf_ksrc_node	*cur;
+
+	if ((*sn) == NULL)
+		return (false);
+
+	KASSERT(sh != NULL, ("%s: sh is NULL", __func__));
+
+	counter_u64_add(V_pf_status.scounters[SCNT_SRC_NODE_SEARCH], 1);
+	PF_HASHROW_LOCK(sh);
+	LIST_FOREACH(cur, &(sh->nodes), entry) {
+		if (cur == (*sn) &&
+		    cur->expire != 1) /* Ignore nodes being killed */
+			return (true);
+	}
+	PF_HASHROW_UNLOCK(sh);
+	(*sn) = NULL;
+	return (false);
+}
+
 static void
 pf_free_src_node(struct pf_ksrc_node *sn)
 {
@@ -1002,33 +1019,33 @@ pf_free_src_node(struct pf_ksrc_node *sn)
 }
 
 static u_short
-pf_insert_src_node(struct pf_ksrc_node **sn, struct pf_krule *rule,
-    struct pf_addr *src, sa_family_t af)
+pf_insert_src_node(struct pf_ksrc_node **sn, struct pf_srchash **sh,
+    struct pf_krule *rule, struct pf_addr *src, sa_family_t af)
 {
 	u_short			 reason = 0;
-	struct pf_srchash	*sh = NULL;
 
 	KASSERT((rule->rule_flag & PFRULE_SRCTRACK ||
 	    rule->rpool.opts & PF_POOL_STICKYADDR),
 	    ("%s for non-tracking rule %p", __func__, rule));
 
+	/*
+	 * Request the sh to always be locked, as we might insert a new sn.
+	 */
 	if (*sn == NULL)
-		*sn = pf_find_src_node(src, rule, af, &sh, true);
+		*sn = pf_find_src_node(src, rule, af, sh, true);
 
 	if (*sn == NULL) {
-		PF_HASHROW_ASSERT(sh);
+		PF_HASHROW_ASSERT(*sh);
 
 		if (rule->max_src_nodes &&
 		    counter_u64_fetch(rule->src_nodes) >= rule->max_src_nodes) {
 			counter_u64_add(V_pf_status.lcounters[LCNT_SRCNODES], 1);
-			PF_HASHROW_UNLOCK(sh);
 			reason = PFRES_SRCLIMIT;
 			goto done;
 		}
 
 		(*sn) = uma_zalloc(V_pf_sources_z, M_NOWAIT | M_ZERO);
 		if ((*sn) == NULL) {
-			PF_HASHROW_UNLOCK(sh);
 			reason = PFRES_MEMORY;
 			goto done;
 		}
@@ -1039,7 +1056,6 @@ pf_insert_src_node(struct pf_ksrc_node **sn, struct pf_krule *rule,
 
 			if ((*sn)->bytes[i] == NULL || (*sn)->packets[i] == NULL) {
 				pf_free_src_node(*sn);
-				PF_HASHROW_UNLOCK(sh);
 				reason = PFRES_MEMORY;
 				goto done;
 			}
@@ -1050,18 +1066,16 @@ pf_insert_src_node(struct pf_ksrc_node **sn, struct pf_krule *rule,
 		    rule->max_src_conn_rate.seconds);
 
 		MPASS((*sn)->lock == NULL);
-		(*sn)->lock = &sh->lock;
+		(*sn)->lock = &(*sh)->lock;
 
 		(*sn)->af = af;
 		(*sn)->rule = rule;
 		PF_ACPY(&(*sn)->addr, src, af);
-		LIST_INSERT_HEAD(&sh->nodes, *sn, entry);
+		LIST_INSERT_HEAD(&(*sh)->nodes, *sn, entry);
 		(*sn)->creation = time_uptime;
 		(*sn)->ruletype = rule->action;
-		(*sn)->states = 1;
 		if ((*sn)->rule != NULL)
 			counter_u64_add((*sn)->rule->src_nodes, 1);
-		PF_HASHROW_UNLOCK(sh);
 		counter_u64_add(V_pf_status.scounters[SCNT_SRC_NODE_INSERT], 1);
 	} else {
 		if (rule->max_src_states &&
@@ -1073,6 +1087,12 @@ pf_insert_src_node(struct pf_ksrc_node **sn, struct pf_krule *rule,
 		}
 	}
 done:
+	if (reason == 0)
+		(*sn)->states++;
+	else
+		(*sn) = NULL;
+
+	PF_HASHROW_UNLOCK(*sh);
 	return (reason);
 }
 
@@ -4880,7 +4900,6 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm,
 	struct pf_kruleset	*ruleset = NULL;
 	struct pf_krule_slist	 match_rules;
 	struct pf_krule_item	*ri;
-	struct pf_ksrc_node	*nsn = NULL;
 	struct tcphdr		*th = &pd->hdr.tcp;
 	struct pf_state_key	*sk = NULL, *nk = NULL;
 	u_short			 reason, transerror;
@@ -4960,8 +4979,8 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm,
 	r = TAILQ_FIRST(pf_main_ruleset.rules[PF_RULESET_FILTER].active.ptr);
 
 	/* check packet for BINAT/NAT/RDR */
-	transerror = pf_get_translation(pd, pd->off, &nsn, &sk,
-	    &nk, saddr, daddr, sport, dport, anchor_stack, &nr, &udp_mapping);
+	transerror = pf_get_translation(pd, pd->off, &sk, &nk, saddr, daddr,
+	    sport, dport, anchor_stack, &nr, &udp_mapping);
 	switch (transerror) {
 	default:
 		/* A translation error occurred. */
@@ -5290,7 +5309,7 @@ nextrule:
 	   (!state_icmp && (r->keep_state || nr != NULL ||
 	    (pd->flags & PFDESC_TCP_NORM)))) {
 		int action;
-		action = pf_create_state(r, nr, a, pd, nsn, nk, sk,
+		action = pf_create_state(r, nr, a, pd, nk, sk,
 		    sport, dport, &rewrite, sm, tag, bproto_sum, bip_sum,
 		    &match_rules, udp_mapping);
 		if (action != PF_PASS) {
@@ -5345,14 +5364,16 @@ cleanup:
 
 static int
 pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a,
-    struct pf_pdesc *pd, struct pf_ksrc_node *nsn, struct pf_state_key *nk,
-    struct pf_state_key *sk, u_int16_t sport,
-    u_int16_t dport, int *rewrite, struct pf_kstate **sm,
+    struct pf_pdesc *pd, struct pf_state_key *nk, struct pf_state_key *sk,
+    u_int16_t sport, u_int16_t dport, int *rewrite, struct pf_kstate **sm,
     int tag, u_int16_t bproto_sum, u_int16_t bip_sum,
     struct pf_krule_slist *match_rules, struct pf_udp_mapping *udp_mapping)
 {
 	struct pf_kstate	*s = NULL;
 	struct pf_ksrc_node	*sn = NULL;
+	struct pf_srchash	*snh = NULL;
+	struct pf_ksrc_node	*nsn = NULL;
+	struct pf_srchash	*nsnh = NULL;
 	struct tcphdr		*th = &pd->hdr.tcp;
 	u_int16_t		 mss = V_tcp_mssdflt;
 	u_short			 reason, sn_reason;
@@ -5368,13 +5389,13 @@ pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a,
 	/* src node for filter rule */
 	if ((r->rule_flag & PFRULE_SRCTRACK ||
 	    r->rpool.opts & PF_POOL_STICKYADDR) &&
-	    (sn_reason = pf_insert_src_node(&sn, r, pd->src, pd->af)) != 0) {
+	    (sn_reason = pf_insert_src_node(&sn, &snh, r, pd->src, pd->af)) != 0) {
 		REASON_SET(&reason, sn_reason);
 		goto csfailed;
 	}
 	/* src node for translation rule */
 	if (nr != NULL && (nr->rpool.opts & PF_POOL_STICKYADDR) &&
-	    (sn_reason = pf_insert_src_node(&nsn, nr, &sk->addr[pd->sidx],
+	    (sn_reason = pf_insert_src_node(&nsn, &nsnh, nr, &sk->addr[pd->sidx],
 	    pd->af)) != 0 ) {
 		REASON_SET(&reason, sn_reason);
 		goto csfailed;
@@ -5468,20 +5489,13 @@ pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a,
 	if (r->rt) {
 		/* pf_map_addr increases the reason counters */
 		if ((reason = pf_map_addr_sn(pd->af, r, pd->src, &s->rt_addr,
-		    &s->rt_kif, NULL, &sn)) != 0)
+		    &s->rt_kif, NULL, &sn, &snh)) != 0)
 			goto csfailed;
 		s->rt = r->rt;
 	}
 
 	s->creation = s->expire = pf_get_uptime();
 
-	if (sn != NULL)
-		s->src_node = sn;
-	if (nsn != NULL) {
-		/* XXX We only modify one side for now. */
-		PF_ACPY(&nsn->raddr, &nk->addr[1], pd->af);
-		s->nat_src_node = nsn;
-	}
 	if (pd->proto == IPPROTO_TCP) {
 		if (s->state_flags & PFSTATE_SCRUB_TCP &&
 		    pf_normalize_tcp_init(pd, th, &s->src, &s->dst)) {
@@ -5528,6 +5542,20 @@ pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a,
 	} else
 		*sm = s;
 
+	/*
+	 * Lock order is important: first state, then source node.
+	 */
+	if (pf_src_node_exists(&sn, snh)) {
+		s->src_node = sn;
+		PF_HASHROW_UNLOCK(snh);
+	}
+	if (pf_src_node_exists(&nsn, nsnh)) {
+		/* XXX We only modify one side for now. */
+		PF_ACPY(&nsn->raddr, &nk->addr[1], pd->af);
+		s->nat_src_node = nsn;
+		PF_HASHROW_UNLOCK(nsnh);
+	}
+
 	if (tag > 0)
 		s->tag = tag;
 	if (pd->proto == IPPROTO_TCP && (th->th_flags & (TH_SYN|TH_ACK)) ==
@@ -5578,26 +5606,24 @@ csfailed:
 	uma_zfree(V_pf_state_key_z, sk);
 	uma_zfree(V_pf_state_key_z, nk);
 
-	if (sn != NULL) {
-		PF_SRC_NODE_LOCK(sn);
+	if (pf_src_node_exists(&sn, snh)) {
 		if (--sn->states == 0 && sn->expire == 0) {
 			pf_unlink_src_node(sn);
-			uma_zfree(V_pf_sources_z, sn);
+			pf_free_src_node(sn);
 			counter_u64_add(
 			    V_pf_status.scounters[SCNT_SRC_NODE_REMOVALS], 1);
 		}
-		PF_SRC_NODE_UNLOCK(sn);
+		PF_HASHROW_UNLOCK(snh);
 	}
 
-	if (nsn != sn && nsn != NULL) {
-		PF_SRC_NODE_LOCK(nsn);
+	if (sn != nsn && pf_src_node_exists(&nsn, nsnh)) {
 		if (--nsn->states == 0 && nsn->expire == 0) {
 			pf_unlink_src_node(nsn);
-			uma_zfree(V_pf_sources_z, nsn);
+			pf_free_src_node(nsn);
 			counter_u64_add(
 			    V_pf_status.scounters[SCNT_SRC_NODE_REMOVALS], 1);
 		}
-		PF_SRC_NODE_UNLOCK(nsn);
+		PF_HASHROW_UNLOCK(nsnh);
 	}
 
 drop:
diff --git a/sys/netpfil/pf/pf_lb.c b/sys/netpfil/pf/pf_lb.c
index 5777cf19b067..e180f87d2998 100644
--- a/sys/netpfil/pf/pf_lb.c
+++ b/sys/netpfil/pf/pf_lb.c
@@ -69,7 +69,7 @@ static struct pf_krule	*pf_match_translation(struct pf_pdesc *,
 			    struct pf_kanchor_stackframe *);
 static int pf_get_sport(sa_family_t, uint8_t, struct pf_krule *,
     struct pf_addr *, uint16_t, struct pf_addr *, uint16_t, struct pf_addr *,
-    uint16_t *, uint16_t, uint16_t, struct pf_ksrc_node **,
+    uint16_t *, uint16_t, uint16_t, struct pf_ksrc_node **, struct pf_srchash**,
     struct pf_udp_mapping **);
 static bool		 pf_islinklocal(const sa_family_t, const struct pf_addr *);
 
@@ -225,12 +225,11 @@ static int
 pf_get_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
     struct pf_addr *saddr, uint16_t sport, struct pf_addr *daddr,
     uint16_t dport, struct pf_addr *naddr, uint16_t *nport, uint16_t low,
-    uint16_t high, struct pf_ksrc_node **sn,
+    uint16_t high, struct pf_ksrc_node **sn, struct pf_srchash **sh,
     struct pf_udp_mapping **udp_mapping)
 {
 	struct pf_state_key_cmp	key;
 	struct pf_addr		init_addr;
-	struct pf_srchash	*sh = NULL;
 
 	bzero(&init_addr, sizeof(init_addr));
 
@@ -255,7 +254,9 @@ pf_get_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
 			/* Try to find a src_node as per pf_map_addr(). */
 			if (*sn == NULL && r->rpool.opts & PF_POOL_STICKYADDR &&
 			    (r->rpool.opts & PF_POOL_TYPEMASK) != PF_POOL_NONE)
-				*sn = pf_find_src_node(saddr, r, af, &sh, 0);
+				*sn = pf_find_src_node(saddr, r, af, sh, false);
+			if (*sn != NULL)
+				PF_SRC_NODE_UNLOCK(*sn);
 			return (0);
 		} else {
 			*udp_mapping = pf_udp_mapping_create(af, saddr, sport, &init_addr, 0);
@@ -264,7 +265,7 @@ pf_get_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
 		}
 	}
 
-	if (pf_map_addr_sn(af, r, saddr, naddr, NULL, &init_addr, sn))
+	if (pf_map_addr_sn(af, r, saddr, naddr, NULL, &init_addr, sn, sh))
 		goto failed;
 
 	if (proto == IPPROTO_ICMP) {
@@ -385,7 +386,8 @@ pf_get_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
 			 * pick a different source address since we're out
 			 * of free port choices for the current one.
 			 */
-			if (pf_map_addr_sn(af, r, saddr, naddr, NULL, &init_addr, sn))
+			(*sn) = NULL;
+			if (pf_map_addr_sn(af, r, saddr, naddr, NULL, &init_addr, sn, sh))
 				return (1);
 			break;
 		case PF_POOL_NONE:
@@ -414,7 +416,8 @@ static int
 pf_get_mape_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
     struct pf_addr *saddr, uint16_t sport, struct pf_addr *daddr,
     uint16_t dport, struct pf_addr *naddr, uint16_t *nport,
-    struct pf_ksrc_node **sn, struct pf_udp_mapping **udp_mapping)
+    struct pf_ksrc_node **sn, struct pf_srchash **sh,
+    struct pf_udp_mapping **udp_mapping)
 {
 	uint16_t psmask, low, highmask;
 	uint16_t i, ahigh, cut;
@@ -434,13 +437,13 @@ pf_get_mape_sport(sa_family_t af, u_int8_t proto, struct pf_krule *r,
 	for (i = cut; i <= ahigh; i++) {
 		low = (i << ashift) | psmask;
 		if (!pf_get_sport(af, proto, r, saddr, sport, daddr, dport,
-		    naddr, nport, low, low | highmask, sn, udp_mapping))
+		    naddr, nport, low, low | highmask, sn, sh, udp_mapping))
 			return (0);
 	}
 	for (i = cut - 1; i > 0; i--) {
 		low = (i << ashift) | psmask;
 		if (!pf_get_sport(af, proto, r, saddr, sport, daddr, dport,
-		    naddr, nport, low, low | highmask, sn, udp_mapping))
+		    naddr, nport, low, low | highmask, sn, sh, udp_mapping))
 			return (0);
 	}
 	return (1);
@@ -623,23 +626,31 @@ done_pool_mtx:
 u_short
 pf_map_addr_sn(sa_family_t af, struct pf_krule *r, struct pf_addr *saddr,
     struct pf_addr *naddr, struct pfi_kkif **nkif, struct pf_addr *init_addr,
-    struct pf_ksrc_node **sn)
+    struct pf_ksrc_node **sn, struct pf_srchash **sh)
 {
 	u_short			 reason = 0;
 	struct pf_kpool		*rpool = &r->rpool;
-	struct pf_srchash	*sh = NULL;
 
-	/* Try to find a src_node if none was given and this
-	   is a sticky-address rule. */
-	if (*sn == NULL && r->rpool.opts & PF_POOL_STICKYADDR &&
-	    (r->rpool.opts & PF_POOL_TYPEMASK) != PF_POOL_NONE)
-		*sn = pf_find_src_node(saddr, r, af, &sh, false);
+	/*
+	 * Try to find a src_node if none was given and this is
+	 * a sticky-address rule. Request the sh to be unlocked if
+	 * sn was not found, as here we never insert a new sn.
+	 */
+	if (*sn == NULL) {
+		if (r->rpool.opts & PF_POOL_STICKYADDR &&
+		    (r->rpool.opts & PF_POOL_TYPEMASK) != PF_POOL_NONE)
+			*sn = pf_find_src_node(saddr, r, af, sh, false);
+	} else {
+		pf_src_node_exists(sn, *sh);
+	}
 
 	/* If a src_node was found or explicitly given and it has a non-zero
 	   route address, use this address. A zeroed address is found if the
 	   src node was created just a moment ago in pf_create_state and it
 	   needs to be filled in with routing decision calculated here. */
 	if (*sn != NULL && !PF_AZERO(&(*sn)->raddr, af)) {
+		PF_SRC_NODE_LOCK_ASSERT(*sn);
+
 		/* If the supplied address is the same as the current one we've
 		 * been asked before, so tell the caller that there's no other
 		 * address to be had. */
@@ -673,6 +684,8 @@ pf_map_addr_sn(sa_family_t af, struct pf_krule *r, struct pf_addr *saddr,
 	}
 
 	if (*sn != NULL) {
+		PF_SRC_NODE_LOCK_ASSERT(*sn);
+
 		PF_ACPY(&(*sn)->raddr, naddr, af);
 		if (nkif)
 			(*sn)->rkif = *nkif;
@@ -688,6 +701,9 @@ pf_map_addr_sn(sa_family_t af, struct pf_krule *r, struct pf_addr *saddr,
 	}
 
 done:
+	if ((*sn) != NULL)
+		PF_SRC_NODE_UNLOCK(*sn);
+
 	if (reason) {
 		counter_u64_add(V_pf_status.counters[reason], 1);
 	}
@@ -697,14 +713,15 @@ done:
 
 u_short
 pf_get_translation(struct pf_pdesc *pd, int off,
-    struct pf_ksrc_node **sn, struct pf_state_key **skp,
-    struct pf_state_key **nkp, struct pf_addr *saddr, struct pf_addr *daddr,
-    uint16_t sport, uint16_t dport, struct pf_kanchor_stackframe *anchor_stack,
-    struct pf_krule **rp,
+    struct pf_state_key **skp, struct pf_state_key **nkp, struct pf_addr *saddr,
+    struct pf_addr *daddr, uint16_t sport, uint16_t dport,
+    struct pf_kanchor_stackframe *anchor_stack, struct pf_krule **rp,
     struct pf_udp_mapping **udp_mapping)
 {
 	struct pf_krule	*r = NULL;
 	struct pf_addr	*naddr;
+	struct pf_ksrc_node	*sn = NULL;
+	struct pf_srchash	*sh = NULL;
 	uint16_t	*nportp;
 	uint16_t	 low, high;
 	u_short		 reason;
@@ -765,7 +782,8 @@ pf_get_translation(struct pf_pdesc *pd, int off,
 		}
 		if (r->rpool.mape.offset > 0) {
 			if (pf_get_mape_sport(pd->af, pd->proto, r, saddr,
-			    sport, daddr, dport, naddr, nportp, sn, udp_mapping)) {
+			    sport, daddr, dport, naddr, nportp, &sn, &sh,
+			    udp_mapping)) {
 				DPFPRINTF(PF_DEBUG_MISC,
 				    ("pf: MAP-E port allocation (%u/%u/%u)"
 				    " failed\n",
@@ -776,7 +794,8 @@ pf_get_translation(struct pf_pdesc *pd, int off,
 				goto notrans;
 			}
 		} else if (pf_get_sport(pd->af, pd->proto, r, saddr, sport,
-		    daddr, dport, naddr, nportp, low, high, sn, udp_mapping)) {
+		    daddr, dport, naddr, nportp, low, high, &sn, &sh,
+		    udp_mapping)) {
 			DPFPRINTF(PF_DEBUG_MISC,
 			    ("pf: NAT proxy port allocation (%u-%u) failed\n",
 			    r->rpool.proxy_port[0], r->rpool.proxy_port[1]));
@@ -863,7 +882,7 @@ pf_get_translation(struct pf_pdesc *pd, int off,
 		int tries;
 		uint16_t cut, low, high, nport;
 
-		reason = pf_map_addr_sn(pd->af, r, saddr, naddr, NULL, NULL, sn);
+		reason = pf_map_addr_sn(pd->af, r, saddr, naddr, NULL, NULL, &sn, &sh);
 		if (reason != 0)
 			goto notrans;
 		if ((r->rpool.opts & PF_POOL_TYPEMASK) == PF_POOL_BITMASK)
@@ -970,7 +989,6 @@ notrans:
 	uma_zfree(V_pf_state_key_z, *nkp);
 	uma_zfree(V_pf_state_key_z, *skp);
 	*skp = *nkp = NULL;
-	*sn = NULL;
 
 	return (reason);
 }
diff --git a/tests/sys/netpfil/pf/src_track.sh b/tests/sys/netpfil/pf/src_track.sh
index 5349e61ec76b..620f1353f9fe 100755
--- a/tests/sys/netpfil/pf/src_track.sh
+++ b/tests/sys/netpfil/pf/src_track.sh
@@ -217,28 +217,31 @@ max_src_states_rule_body()
 	# 2 connections from host ::1 matching rule_A will be allowed, 1 will fail to create a state.
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4211 --fromaddr 2001:db8:44::1
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4212 --fromaddr 2001:db8:44::1
-	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4213 --fromaddr 2001:db8:44::1
+	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4213 --fromaddr 2001:db8:44::1
+	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4214 --fromaddr 2001:db8:44::1
 
 	# 2 connections from host ::1 matching rule_B will be allowed, 1 will fail to create a state.
 	# Limits from rule_A don't interfere with rule_B.
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4221 --fromaddr 2001:db8:44::1
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4222 --fromaddr 2001:db8:44::1
-	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4223 --fromaddr 2001:db8:44::1
+	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4223 --fromaddr 2001:db8:44::1
+	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4224 --fromaddr 2001:db8:44::1
 
 	# 2 connections from host ::2 matching rule_B will be allowed, 1 will fail to create a state.
 	# Limits for host ::1 will not interfere with host ::2.
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4224 --fromaddr 2001:db8:44::2
 	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4225 --fromaddr 2001:db8:44::2
-	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4226 --fromaddr 2001:db8:44::2
+	ping_server_check_reply exit:0 --ping-type=tcp3way --send-sport=4226 --fromaddr 2001:db8:44::2
+	ping_server_check_reply exit:1 --ping-type=tcp3way --send-sport=4227 --fromaddr 2001:db8:44::2
 
 	# We will check the resulting source nodes, though.
 	# Order of source nodes in output is not guaranteed, find each one separately.
 	nodes=$(mktemp) || exit 1
 	jexec router pfctl -qvsS | normalize_pfctl_s > $nodes
 	for node_regexp in \
-		'2001:db8:44::1 -> :: \( states 2, connections 2, rate [0-9/\.]+s \) age [0-9:]+, 6 pkts, [0-9]+ bytes, filter rule 3$' \
-		'2001:db8:44::1 -> :: \( states 2, connections 2, rate [0-9/\.]+s \) age [0-9:]+, 6 pkts, [0-9]+ bytes, filter rule 4$' \
-		'2001:db8:44::2 -> :: \( states 2, connections 2, rate [0-9/\.]+s \) age [0-9:]+, 6 pkts, [0-9]+ bytes, filter rule 4$' \
+		'2001:db8:44::1 -> :: \( states 3, connections 3, rate [0-9/\.]+s \) age [0-9:]+, 9 pkts, [0-9]+ bytes, filter rule 3$' \
+		'2001:db8:44::1 -> :: \( states 3, connections 3, rate [0-9/\.]+s \) age [0-9:]+, 9 pkts, [0-9]+ bytes, filter rule 4$' \
+		'2001:db8:44::2 -> :: \( states 3, connections 3, rate [0-9/\.]+s \) age [0-9:]+, 9 pkts, [0-9]+ bytes, filter rule 4$' \
 	; do
 		grep -qE "$node_regexp" $nodes || atf_fail "Source nodes not matching expected output"
 	done

From nobody Fri Nov 29 05:04:38 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y01Lt4h6jz5fnrH;
	Fri, 29 Nov 2024 05:04: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y01Lt42Myz4htQ;
	Fri, 29 Nov 2024 05:04:38 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732856678;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=VEzrrA6nuXKzqTEzrUBoL6h6/Qe/qvHZ9XSoHqacv3k=;
	b=U76jtjXVrNoq8awBAmWVCHWrQ3xUfql/vqFvoiLuk+YImqer/DUFES3oNfD6h/+viNjLBh
	ksWniqyHa9zSjUHtYGk09i0Auk+OKwo5k2+YJZfLLx5/31wupb6zbEc1Qk+hpR8qL3L7Ao
	SdBbR9LEvxS589NXFpGph3J0bMNPPOCaNDjQHjdE14PnftW0C23BRvMY9JPZCo6Kdadk1k
	OrpANSn/y3tfecjpmXBWtUA2Vz1WcE8pmiUNOXccRjMFdLi+9I+NpsAYbyW5gWvsA0/0d3
	RGY4hRVSZq570TTv/WbirLhY4l/wKV4YEjLhkiFS1nYSOXWjnH/x4DY+SvKZjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732856678;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=VEzrrA6nuXKzqTEzrUBoL6h6/Qe/qvHZ9XSoHqacv3k=;
	b=B0iFlQK5SMYiZO4fvsU5wD/YjCSqCOqXx1FbBH+7Ut+5Yvy8gGDOXIa9n2Dw4GAqAM/vSK
	iaIfmvD/hYAUHcoqvhexzpoqh4HqX/GzLwUsjS1230m6JDBhUGMLRSgcZDkLzKePzYknLd
	UOwhnBpnAjj65zxO4Ko0XbdfEwxZJmuqE/gaHdUZJtJZTAQkNYYKwXSOTiFJLU7a8I1iG/
	2OFgAynSDGzNr99CbbskwjafUtWMKl/f/Xw4YaKKiPTT32G0esqgWXEH8LqEF9419N0Vn0
	KUQXaB2UZCEOeZf3oJzts27d6HCAqSmQbOQn7o+4pmi+ECQpEmDxbFOTphX0iQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732856678; a=rsa-sha256; cv=none;
	b=TtmdzucYbCDhRgDftXKieJ2vsB+AK85y/X4xyS4Agn0yYyJS3EsztsbRMk8wYI2PybZeJG
	RydCkxzrECAXlvwv0mkFypmP3vRycX1ybGb0HTwWilNBgajVDj98pEUz0f4gFbpiI2bAqc
	9isc+cVfSvvtg6iX82hIlieqe/yJDk9OW5UrYPwIdUGFs0PXz6v3jdh5B7m+woUp3SiCeo
	WCoTaHLIPrAWgiF3EaFM0oFIkfvJd0F6iwH/Vbs80Uzti7HPqjxBvylhBnGRadquLnje0g
	hOybwpbmjuiyzNc/ZNdVTFjuxOBW+04FaiXNpw+/rdywXffRDS3ynZOByYljSg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y01Lt3XHsz18Pw;
	Fri, 29 Nov 2024 05:04: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 4AT54cnM052645;
	Fri, 29 Nov 2024 05:04:38 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AT54cNp052642;
	Fri, 29 Nov 2024 05:04:38 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 05:04:38 GMT
Message-Id: <202411290504.4AT54cNp052642@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Li-Wen Hsu <lwhsu@FreeBSD.org>
Subject: git: af2015b01f7e - main - newsyslog.conf(5): Remove
  duplicate word
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: lwhsu
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: af2015b01f7e741125aeb4a04109cc42f988cf0f
Auto-Submitted: auto-generated

The branch main has been updated by lwhsu:

URL: https://cgit.FreeBSD.org/src/commit/?id=af2015b01f7e741125aeb4a04109cc42f988cf0f

commit af2015b01f7e741125aeb4a04109cc42f988cf0f
Author:     Li-Wen Hsu <lwhsu@FreeBSD.org>
AuthorDate: 2024-11-29 05:00:54 +0000
Commit:     Li-Wen Hsu <lwhsu@FreeBSD.org>
CommitDate: 2024-11-29 05:00:54 +0000

    newsyslog.conf(5): Remove duplicate word
    
    Reported by:    jlduran
    Fixes:  1f78bbb5c415 newsyslog.conf(5): Accept human unit suffix in the size filed
---
 usr.sbin/newsyslog/newsyslog.conf.5 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/usr.sbin/newsyslog/newsyslog.conf.5 b/usr.sbin/newsyslog/newsyslog.conf.5
index a9deb079e294..2887ecb226aa 100644
--- a/usr.sbin/newsyslog/newsyslog.conf.5
+++ b/usr.sbin/newsyslog/newsyslog.conf.5
@@ -117,7 +117,7 @@ This does not consider the current log file.
 .It Ar size
 When the size of the log file reaches
 .Ar size ,
-in kilobytes by default, or with suffix suffixes like k, M, G, ... as supported by
+in kilobytes by default, or with suffixes like k, M, G, ... as supported by
 .Xr expand_number 3 ,
 the log file will be trimmed as described above.
 If this field contains an asterisk

From nobody Fri Nov 29 07:08:45 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y04660V6Cz5fwkM;
	Fri, 29 Nov 2024 07:08: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y04656v0Sz4qTD;
	Fri, 29 Nov 2024 07: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=1732864126;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=iECQjPRIjSHFgwlA6air55Gbi3N9t6oHSp8GReUcsI8=;
	b=g+7XJRgHczwpKbjtjYJjyGg0Ih4IFzYovzHnqlhzov0tC7CY7do7bSWA6tKOMR8nGOWpEE
	1Z2s/H2s9dso7VFZzRqRqufyMQYXeNlu0ZD/FOcfLEY15PZXi2HJxY3lRuK7BLzZkmMDfH
	iP407LOqHwyIbdf17ee+zQAEBuwnpvggk0MAZICEwAXpuZvBibFkPKiVvlqA2lLS9pgug+
	DgOik1Ea4v5PV401rDz3K6q09JZixlxHP96AXqvMduZCXv5RjJfyedXJtDxtvn3z16ERDl
	4E8KNlN1BV1MgqnNB+mG2L4Hgqm+IXPq3BOGHffRJn370YnseeGVI1RvSXHPSA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732864126;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=iECQjPRIjSHFgwlA6air55Gbi3N9t6oHSp8GReUcsI8=;
	b=T859lWyeWVyhHV2hRnAeKjEzScLxYZlsQJB6DwsGRsqD2ry0TDCB5GwEl62CIRR7A270F4
	q38HCMpnGftiyCpvMpCGxef2GBBlcxpmtigoSsoePAzWM/RlNU5gGlVgtFFZ9X/QBoTydl
	pqSsBBKrorpMRcGBd/xgLpaGgQldfs5rR/Vxkq4XMr5QLKbG+UZqcnA4h8zUd46lKQhG8s
	i2rYApOvvXUKf8KMKxNgXTRNMAcOwalI0IXPERnWbznuDVrDqO8isQK/6MhiHsXvwyIDV4
	d3q3O21oF3cpXO2XsoN5bClJPZxtxAC6r6DsuLmYtWw8/KWcBAHHF96weBMnZg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732864126; a=rsa-sha256; cv=none;
	b=GQcV61zhxjt1oXC9E5OXRznfpIi5SvVuGI5IcMRRuh5WoT1tKy8o7qtZq7rQVPOB8DsCqV
	BsirPSvHv4D40W29Yp473T3lzjNduas1QXiGcWGel5KpaWul+uFkNe0J10cG5wP976G5VN
	DNYmb8r3qx4/THSBOSa8Lkskp5aPHk4sTfqbQ5aGbt5FfVWpkU0tK+npypxgk2XYIc4iYr
	2bSslLven8A44lDU6ZeaL4oReUhOIx+fRT7wKK1/Nyzjq3kmjMc8Lxr2c1WhcXoq3nbpe/
	76zV8fBrSsUsSIVfLniGZP3qknd5Fk4/LXZYMdmWlPCbdbFRv8HtqeMyOhj+1A==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y04656FBmz1Cl9;
	Fri, 29 Nov 2024 07: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 4AT78jML076153;
	Fri, 29 Nov 2024 07: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 4AT78jUd076150;
	Fri, 29 Nov 2024 07:08:45 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 07:08:45 GMT
Message-Id: <202411290708.4AT78jUd076150@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Li-Wen Hsu <lwhsu@FreeBSD.org>
Subject: git: 9996c680d12a - main - sys/modules/hid/*: Fix standalone
  build
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: lwhsu
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 9996c680d12a6245d808bc8def1d2411e736efd6
Auto-Submitted: auto-generated

The branch main has been updated by lwhsu:

URL: https://cgit.FreeBSD.org/src/commit/?id=9996c680d12a6245d808bc8def1d2411e736efd6

commit 9996c680d12a6245d808bc8def1d2411e736efd6
Author:     SHENG-YI HONG <aokblast@FreeBSD.org>
AuthorDate: 2024-11-29 06:59:21 +0000
Commit:     Li-Wen Hsu <lwhsu@FreeBSD.org>
CommitDate: 2024-11-29 07:08:08 +0000

    sys/modules/hid/*: Fix standalone build
    
    Co-authored-by: Daniel Schaefer <dhs@frame.work>
    Reviewed by:    imp, wulf
    Differential Revision:  https://reviews.freebsd.org/D47830
---
 sys/modules/hid/bcm5974/Makefile   | 2 +-
 sys/modules/hid/hcons/Makefile     | 1 +
 sys/modules/hid/hgame/Makefile     | 1 +
 sys/modules/hid/hidmap/Makefile    | 2 +-
 sys/modules/hid/hms/Makefile       | 2 +-
 sys/modules/hid/hmt/Makefile       | 2 +-
 sys/modules/hid/hpen/Makefile      | 1 +
 sys/modules/hid/hsctrl/Makefile    | 1 +
 sys/modules/hid/ietp/Makefile      | 2 +-
 sys/modules/hid/ps4dshock/Makefile | 2 +-
 sys/modules/hid/xb360gp/Makefile   | 1 +
 11 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/sys/modules/hid/bcm5974/Makefile b/sys/modules/hid/bcm5974/Makefile
index 803a43c96107..5fdf39fb9649 100644
--- a/sys/modules/hid/bcm5974/Makefile
+++ b/sys/modules/hid/bcm5974/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	bcm5974
 SRCS=	bcm5974.c
-SRCS+=	opt_hid.h opt_usb.h
+SRCS+=	opt_hid.h opt_kbd.h opt_usb.h
 SRCS+=	bus_if.h device_if.h usbdevs.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hcons/Makefile b/sys/modules/hid/hcons/Makefile
index d020ba08a22b..56edefb9fe9c 100644
--- a/sys/modules/hid/hcons/Makefile
+++ b/sys/modules/hid/hcons/Makefile
@@ -2,6 +2,7 @@
 
 KMOD=	hcons
 SRCS=	hcons.c
+SRCS+=	opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hgame/Makefile b/sys/modules/hid/hgame/Makefile
index a9d6dadbdbc6..7cf7cd858340 100644
--- a/sys/modules/hid/hgame/Makefile
+++ b/sys/modules/hid/hgame/Makefile
@@ -2,6 +2,7 @@
 
 KMOD=	hgame
 SRCS=	hgame.c
+SRCS+=	opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hidmap/Makefile b/sys/modules/hid/hidmap/Makefile
index 9be54e725d45..07e817a19197 100644
--- a/sys/modules/hid/hidmap/Makefile
+++ b/sys/modules/hid/hidmap/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	hidmap
 SRCS=	hidmap.c
-SRCS+=	opt_hid.h
+SRCS+=	opt_hid.h opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 EXPORT_SYMS=	YES
diff --git a/sys/modules/hid/hms/Makefile b/sys/modules/hid/hms/Makefile
index 0c6e9c1b1ec2..014ecd7048bd 100644
--- a/sys/modules/hid/hms/Makefile
+++ b/sys/modules/hid/hms/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	hms
 SRCS=	hms.c
-SRCS+=	opt_hid.h
+SRCS+=	opt_hid.h opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hmt/Makefile b/sys/modules/hid/hmt/Makefile
index 0f46acba198c..36d9068bc7a7 100644
--- a/sys/modules/hid/hmt/Makefile
+++ b/sys/modules/hid/hmt/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	hmt
 SRCS=	hmt.c
-SRCS+=	opt_hid.h
+SRCS+=	opt_hid.h opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hpen/Makefile b/sys/modules/hid/hpen/Makefile
index e1db07a9c3f8..a693f36d5d79 100644
--- a/sys/modules/hid/hpen/Makefile
+++ b/sys/modules/hid/hpen/Makefile
@@ -2,6 +2,7 @@
 
 KMOD=	hpen
 SRCS=	hpen.c
+SRCS+=	opt_kbd.h
 SRCS+=	bus_if.h device_if.h usbdevs.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/hsctrl/Makefile b/sys/modules/hid/hsctrl/Makefile
index 68984958895e..f2ec2d99c881 100644
--- a/sys/modules/hid/hsctrl/Makefile
+++ b/sys/modules/hid/hsctrl/Makefile
@@ -2,6 +2,7 @@
 
 KMOD=	hsctrl
 SRCS=	hsctrl.c
+SRCS+=	opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/ietp/Makefile b/sys/modules/hid/ietp/Makefile
index 1b8baf36ec80..5270701e480a 100644
--- a/sys/modules/hid/ietp/Makefile
+++ b/sys/modules/hid/ietp/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	ietp
 SRCS=	ietp.c
-SRCS+=	opt_hid.h
+SRCS+=	opt_hid.h opt_kbd.h
 SRCS+=	bus_if.h device_if.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/ps4dshock/Makefile b/sys/modules/hid/ps4dshock/Makefile
index 0b00f16ca98c..0ecf31c3bc42 100644
--- a/sys/modules/hid/ps4dshock/Makefile
+++ b/sys/modules/hid/ps4dshock/Makefile
@@ -2,7 +2,7 @@
 
 KMOD=	ps4dshock
 SRCS=	ps4dshock.c
-SRCS+=	opt_hid.h
+SRCS+=	opt_hid.h opt_kbd.h
 SRCS+=	bus_if.h device_if.h usbdevs.h
 
 .include <bsd.kmod.mk>
diff --git a/sys/modules/hid/xb360gp/Makefile b/sys/modules/hid/xb360gp/Makefile
index 3cc846292e67..f5a9df8baa9d 100644
--- a/sys/modules/hid/xb360gp/Makefile
+++ b/sys/modules/hid/xb360gp/Makefile
@@ -2,6 +2,7 @@
 
 KMOD=	xb360gp
 SRCS=	xb360gp.c
+SRCS+=	opt_kbd.h
 SRCS+=	bus_if.h device_if.h opt_usb.h
 
 .include <bsd.kmod.mk>

From nobody Fri Nov 29 07:16:02 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y04GW1NG3z5fwwN;
	Fri, 29 Nov 2024 07:16: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y04GW0fldz4r7x;
	Fri, 29 Nov 2024 07:16:03 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732864563;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=9iRpmuTMsC0Kaxqo7qLWo3+0QvWdQtWQL1wUpxvBkB8=;
	b=FCE+MCNDj1ldHwCIpy9CC1EVz9BbxvS6bjPofzqCsCLDvYIOWQgzOk1JIVV9UuZGQqrVr5
	hUPfCz9IbO8fmhw86QTwVxCm2DuptmhjDTs3GaMzBQD6uLaE452o+jY477WRl8mnGdlCdH
	Xzvfltz+p8U9jvRPakNGh/s+/rSZmWQbLkLrwUqyEJL+QQnpwywMmWw2QDvfqRbwdhcb9b
	oeW9q8NkvcgJTfanjWbGHbw/CmxZIakJ7XJLerAy8EQPgK7SPOaa/gjAqJTtZEDZ9MK4Qn
	L2ZCrxZGjB0h49TooH/KLS6NIeWKQHZOmC86Ty9yFDC0MuLpsIxuZUBvSddzow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732864563;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=9iRpmuTMsC0Kaxqo7qLWo3+0QvWdQtWQL1wUpxvBkB8=;
	b=QQX0btLhq9cF6K8K0iEpXKpqE6BApaBPkm9aXuaeG0N2VHvXzdwiYY/IXspkq5pxpwLuiU
	z8k0lfDdMPU1Ozpts5cRtjz7pExFFo0xZ2NpCov9NsUedklrTnBi1zBflRBewt12vswjZV
	VibGp0hnetvdXcT1S9HwHZzjDissiTtqrqKH9AMpOc+hyOvZyqSByLIgNBFXTGDv4FKizF
	so1F4xOwupJh1jJrup7dR1lUSg+XrBLkJQdyERDAirvob0yBvRksRf70VxJz2uAbhNsBM2
	8RL5DmhmjzLAbYzAVLmPszaPynHHcZAA61gOkv2v0iTzaOjrDCN4Flw2tba6yg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732864563; a=rsa-sha256; cv=none;
	b=YGBh1uGM8WU7v3dh/fYhawarALawYjLaj1U0lR0yAFQOYvwPVcr78UFE5452NAx46mx+ke
	fT1bks4FqBxwfSzvS47KnJJRD29nNnpVKTGhYguggwpD2cflxVDQ3PjXhTM+apcgQem8nt
	PfDXQjxF6FjpBMif5FKIWkV78IKJ4+xaCXvowDIdZrwXO9HgJKad9Hj84MN3RSAxy3KTaU
	by5u/jGnpoHtQU66T3oj9Aoy2lWZpU5aobu9ry5lrlACkJigZbGMHR2t+5ctsg2tD+zjKj
	G6RZpSagkK4NyAbU+qFKsQWwGDZwYYGscQ8oVXUwQknKDQr+h2BtYenlpT7+XA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y04GW07Qzz1CK2;
	Fri, 29 Nov 2024 07:16: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 4AT7G2ka093338;
	Fri, 29 Nov 2024 07:16:02 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AT7G2uv093335;
	Fri, 29 Nov 2024 07:16:02 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 07:16:02 GMT
Message-Id: <202411290716.4AT7G2uv093335@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kevin Bowling <kbowling@FreeBSD.org>
Subject: git: 4020351325c0 - main - e1000: Remove old itr sysctl
  handler
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kbowling
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4020351325c02cc27aa4992c199ff18a9542a52c
Auto-Submitted: auto-generated

The branch main has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=4020351325c02cc27aa4992c199ff18a9542a52c

commit 4020351325c02cc27aa4992c199ff18a9542a52c
Author:     Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2024-11-29 06:23:23 +0000
Commit:     Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2024-11-29 07:15:54 +0000

    e1000: Remove old itr sysctl handler
    
    This implementation had various bugs.  bde@ reported that the unit
    conversion/scaling is wrong, and it also does not handle 82574L or
    igb(4) devices correctly.
    
    With the new AIM code, it is expected most users will not need to
    manually tune this.
    
    If you do need static control:
    hw.em.enable_aim=0 for all interfaces at boot or dev.em.X.enable_aim=0
    for individual interfaces at runtime and they will track the
    hw.em.max_interrupt_rate tunable.  That codepath has been bugfixed for
    all supported chipsets.
    
    You may view the current rate with dev.em.X.queue_rx_0.interrupt_rate
    which has been bugfixed for all supported chipsets.
    
    If you need to set different rates per interface for some reason let me
    know and I will rethink how to add this back.  Otherwise you can leave
    AIM on for general purpose interfaces and disable it at runtime on
    special purpose low or high latency interfaces that would track
    hw.em.max_interrupt_rate if you have a mix of concerns.
    
    PR:             235031
    Reported by:    Bruce Evans <bde@FreeBSD.org>
    MFC after:      3 days
    Relnotes:       yes
    Sponsored by:   BBOX.io
---
 sys/dev/e1000/if_em.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c
index aed97d076a5e..449cb9e07f3a 100644
--- a/sys/dev/e1000/if_em.c
+++ b/sys/dev/e1000/if_em.c
@@ -1234,10 +1234,6 @@ em_if_attach_pre(if_ctx_t ctx)
 		    "transmit interrupt delay limit in usecs",
 		    &sc->tx_abs_int_delay,
 		    E1000_REGISTER(hw, E1000_TADV), em_tx_abs_int_delay_dflt);
-		em_add_int_delay_sysctl(sc, "itr",
-		    "interrupt delay limit in usecs/4", &sc->tx_itr,
-		    E1000_REGISTER(hw, E1000_ITR),
-		    EM_INTS_TO_ITR(em_max_interrupt_rate));
 	}
 
 	hw->mac.autoneg = DO_AUTO_NEG;
@@ -5403,8 +5399,6 @@ em_sysctl_int_delay(SYSCTL_HANDLER_ARGS)
 		return (EINVAL);
 	info->value = usecs;
 	ticks = EM_USECS_TO_TICKS(usecs);
-	if (info->offset == E1000_ITR)	/* units are 256ns here */
-		ticks *= 4;
 
 	sc = info->sc;
 

From nobody Fri Nov 29 09:50:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y07hh3K6Zz5dts4;
	Fri, 29 Nov 2024 09:50:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y07hh2vGXz57VF;
	Fri, 29 Nov 2024 09:50:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732873828;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RbTBhFSbQcCVzpAUdMS81qRx6ZoZjKDwVkYLB7drQbs=;
	b=bFI9FPx8FmqnYQXTylc50Sxbq/t4ZJt2TSbCyfYTjriLw7Ro5d1gfXB4XnSFRGn0SuabsO
	gSyXh+MD8FKma23TUSNZ23sGNxlx3QKDK/7GczO9/siVIV9GqwT+9qGaQnr8KLHeQpJeMh
	3LP6GuncQ1dM9Ml9sHM5WKLinsGBE9eewusUml9uvmw29x9VCiz8DQlyPrf2I/ccbKD+JW
	SjUqtxX99pBsVMbd2Y0ATuMXilpgJzfiubJCHtba5fFhKaS17E/T2pWofMR4jtybIsT0lo
	XrxlF35DB9TK6wgp6JpSX0SZgPtAklTdbDDXBPwRjr0K3qUIueJamcggDksOFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732873828;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=RbTBhFSbQcCVzpAUdMS81qRx6ZoZjKDwVkYLB7drQbs=;
	b=Ef/QyWlMx4RH/1uA+1PwntE+cYQ4RC92KeTvPaWggAMSiCDwLwNTsJn1Piry8WCxhHQ9DQ
	dsmexh1iywpodNLEF4lC1e3kn57r6voYCBgOgTgvFVYeM1VDx9mwo9AfHNzQZdHdDuL9Mu
	Iz0wB0OJq/9Dnd4uzhD1MK2M6ngT2fnuV6A3qOJt4H99YYD2+RNRPu9DxCSU7AsaH2d4G2
	Lgkji+6mg2aJ5zHd4vo/sXLcoMVd6ZHTB3dLgUeKAszM61WQaj0ZzldDmOPPzVh9ByN9yX
	fVXbyUP6YgGPyJV9luimxISZV5Ym1QaPmo0us5k8trevVvfCR0slkPrnrZIJBA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732873828; a=rsa-sha256; cv=none;
	b=vvIl5z9wofLLRYPXKK3cnIKuZUpRne3ibIGdUHc0WqMIqpYAtUlM5gE3f4Axw1uwytOWuc
	i6DA/OzqhAMGQpR+5wrrenM1gbVcwKzSpW5igYv2PgR8YsPTBWdCbqrnXwwz/KQxbQCqUX
	lT3wkmxd14Mb8n8ekjujXadEQyH0rLzwbQU3Zl7SPCGkA8mfdPHWbfp1VdjBpUMvSDZkI7
	+ssLIcy27pt5SMgkmChusxnmKJvZeyUz4kc4DZ01KUHIoEVwgqh+w3SxJihWBu0Y//z9a4
	o1X77pIosCMRLEGPv1/MO6SK+BD+omBXOUtWxaOAEsZQCVseHb2h4um0NmSXzQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y07hh2QsvzJWS;
	Fri, 29 Nov 2024 09:50: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 4AT9oSoq081674;
	Fri, 29 Nov 2024 09:50:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AT9oSm4081671;
	Fri, 29 Nov 2024 09:50:28 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 09:50:28 GMT
Message-Id: <202411290950.4AT9oSm4081671@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Richard Scheffenegger <rscheff@FreeBSD.org>
Subject: git: 0fc7bdc97836 - main - tcp: extend the use of the
  th_flags accessor function
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: rscheff
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 0fc7bdc978366abb4351b0b76b50a5848cc5d982
Auto-Submitted: auto-generated

The branch main has been updated by rscheff:

URL: https://cgit.FreeBSD.org/src/commit/?id=0fc7bdc978366abb4351b0b76b50a5848cc5d982

commit 0fc7bdc978366abb4351b0b76b50a5848cc5d982
Author:     Richard Scheffenegger <rscheff@FreeBSD.org>
AuthorDate: 2024-11-29 08:44:59 +0000
Commit:     Richard Scheffenegger <rscheff@FreeBSD.org>
CommitDate: 2024-11-29 08:48:23 +0000

    tcp: extend the use of the th_flags accessor function
    
    Formally, there are 12 bits for TCP header flags.
    Use the accessor functions in more (kernel) places.
    
    No functional change.
    
    Reviewed By: cc, #transport, cy, glebius, #iflib, kbowling
    Sponsored by: NetApp, Inc.
    Differential Revision: https://reviews.freebsd.org/D47063
---
 sys/dev/cxgbe/crypto/t6_kern_tls.c            | 12 ++--
 sys/dev/cxgbe/tom/t4_listen.c                 |  2 +-
 sys/dev/hyperv/netvsc/if_hn.c                 |  2 +-
 sys/dev/irdma/irdma_cm.c                      | 32 +++++------
 sys/dev/mlx5/mlx5_en/mlx5_en_rx.c             |  4 +-
 sys/dev/oce/oce_if.c                          |  2 +-
 sys/dev/qlxgbe/ql_isr.c                       |  2 +-
 sys/dev/sfxge/sfxge_rx.c                      |  6 +-
 sys/dev/sfxge/sfxge_tx.c                      | 14 ++---
 sys/dev/virtio/network/if_vtnet.c             |  2 +-
 sys/dev/virtio/network/virtio_net.h           |  2 +-
 sys/net/iflib.c                               |  4 +-
 sys/net/iflib.h                               |  6 +-
 sys/net/slcompress.c                          | 14 ++---
 sys/netgraph/netflow/netflow.c                | 16 +++---
 sys/netgraph/netflow/ng_netflow.h             |  4 +-
 sys/netgraph/ng_tcpmss.c                      |  2 +-
 sys/netinet/libalias/alias.c                  | 12 ++--
 sys/netinet/libalias/alias_ftp.c              |  2 +-
 sys/netinet/libalias/alias_irc.c              |  2 +-
 sys/netinet/libalias/alias_proxy.c            |  2 +-
 sys/netinet/libalias/alias_skinny.c           |  6 +-
 sys/netinet/libalias/alias_smedia.c           |  4 +-
 sys/netinet/tcp_output.c                      |  7 ++-
 sys/netpfil/ipfilter/netinet/fil.c            |  4 +-
 sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c |  6 +-
 sys/netpfil/ipfilter/netinet/ip_ftp_pxy.c     | 14 ++---
 sys/netpfil/ipfilter/netinet/ip_nat.c         |  2 +-
 sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c    |  2 +-
 sys/netpfil/ipfilter/netinet/ip_rcmd_pxy.c    |  2 +-
 sys/netpfil/ipfilter/netinet/ip_rpcb_pxy.c    |  2 +-
 sys/netpfil/ipfilter/netinet/ip_state.c       | 22 ++++----
 sys/netpfil/ipfw/ip_fw2.c                     | 27 +++++----
 sys/netpfil/ipfw/ip_fw_dynamic.c              |  4 +-
 sys/netpfil/ipfw/ip_fw_nat.c                  |  4 +-
 sys/netpfil/pf/pf.c                           | 80 +++++++++++++--------------
 sys/netpfil/pf/pf_norm.c                      | 12 ++--
 sys/netpfil/pf/pf_osfp.c                      |  2 +-
 usr.sbin/ppp/ip.c                             | 14 ++---
 usr.sbin/ppp/slcompress.c                     | 16 +++---
 usr.sbin/ppp/tcpmss.c                         |  2 +-
 usr.sbin/traceroute/traceroute.c              |  2 +-
 usr.sbin/traceroute6/traceroute6.c            |  2 +-
 43 files changed, 193 insertions(+), 187 deletions(-)

diff --git a/sys/dev/cxgbe/crypto/t6_kern_tls.c b/sys/dev/cxgbe/crypto/t6_kern_tls.c
index f374de5241f6..167eb77da942 100644
--- a/sys/dev/cxgbe/crypto/t6_kern_tls.c
+++ b/sys/dev/cxgbe/crypto/t6_kern_tls.c
@@ -995,7 +995,7 @@ t6_ktls_parse_pkt(struct mbuf *m)
 	 * See if we have any TCP options or a FIN requiring a
 	 * dedicated packet.
 	 */
-	if ((tcp->th_flags & TH_FIN) != 0 || ktls_has_tcp_options(tcp)) {
+	if ((tcp_get_flags(tcp) & TH_FIN) != 0 || ktls_has_tcp_options(tcp)) {
 		wr_len = sizeof(struct fw_eth_tx_pkt_wr) +
 		    sizeof(struct cpl_tx_pkt_core) + roundup2(m->m_len, 16);
 		if (wr_len > SGE_MAX_WR_LEN) {
@@ -1180,7 +1180,7 @@ ktls_write_tcp_options(struct sge_txq *txq, void *dst, struct mbuf *m,
 	/* Clear PUSH and FIN in the TCP header if present. */
 	tcp = (void *)((char *)eh + m->m_pkthdr.l2hlen + m->m_pkthdr.l3hlen);
 	newtcp = *tcp;
-	newtcp.th_flags &= ~(TH_PUSH | TH_FIN);
+	tcp_set_flags(&newtcp, tcp_get_flags(&newtcp) & ~(TH_PUSH | TH_FIN));
 	copy_to_txd(&txq->eq, (caddr_t)&newtcp, &out, sizeof(newtcp));
 
 	/* Copy rest of packet. */
@@ -1370,7 +1370,7 @@ ktls_write_tls_wr(struct tlspcb *tlsp, struct sge_txq *txq, void *dst,
 		CTR4(KTR_CXGBE, "%s: tid %d short TLS record %u with offset %u",
 		    __func__, tlsp->tid, (u_int)m_tls->m_epg_seqno, offset);
 #endif
-		if (m_tls->m_next == NULL && (tcp->th_flags & TH_FIN) != 0) {
+		if (m_tls->m_next == NULL && (tcp_get_flags(tcp) & TH_FIN) != 0) {
 			txq->kern_tls_fin_short++;
 #ifdef INVARIANTS
 			panic("%s: FIN on short TLS record", __func__);
@@ -1385,7 +1385,7 @@ ktls_write_tls_wr(struct tlspcb *tlsp, struct sge_txq *txq, void *dst,
 	 * FIN is set, then ktls_write_tcp_fin() will write out the
 	 * last work request.
 	 */
-	last_wr = m_tls->m_next == NULL && (tcp->th_flags & TH_FIN) == 0;
+	last_wr = m_tls->m_next == NULL && (tcp_get_flags(tcp) & TH_FIN) == 0;
 
 	/*
 	 * The host stack may ask us to not send part of the start of
@@ -1769,7 +1769,7 @@ ktls_write_tls_wr(struct tlspcb *tlsp, struct sge_txq *txq, void *dst,
 		tx_data->rsvd = htobe32(tcp_seqno + m_tls->m_epg_hdrlen + offset);
 	}
 	tx_data->flags = htobe32(F_TX_BYPASS);
-	if (last_wr && tcp->th_flags & TH_PUSH)
+	if (last_wr && tcp_get_flags(tcp) & TH_PUSH)
 		tx_data->flags |= htobe32(F_TX_PUSH | F_TX_SHOVE);
 
 	/* Populate the TLS header */
@@ -1966,7 +1966,7 @@ t6_ktls_write_wr(struct sge_txq *txq, void *dst, struct mbuf *m,
 	tcp = (struct tcphdr *)((char *)eh + m->m_pkthdr.l2hlen +
 	    m->m_pkthdr.l3hlen);
 	pidx = eq->pidx;
-	has_fin = (tcp->th_flags & TH_FIN) != 0;
+	has_fin = (tcp_get_flags(tcp) & TH_FIN) != 0;
 
 	/*
 	 * If this TLS record has a FIN, then we will send any
diff --git a/sys/dev/cxgbe/tom/t4_listen.c b/sys/dev/cxgbe/tom/t4_listen.c
index 8226c44669ab..c63c2565e743 100644
--- a/sys/dev/cxgbe/tom/t4_listen.c
+++ b/sys/dev/cxgbe/tom/t4_listen.c
@@ -1592,7 +1592,7 @@ synqe_to_protohdrs(struct adapter *sc, struct synq_entry *synqe,
 	pass_accept_req_to_protohdrs(sc, synqe->syn, inc, th, &iptos);
 
 	/* modify parts to make it look like the ACK to our SYN|ACK */
-	th->th_flags = TH_ACK;
+	tcp_set_flags(th, TH_ACK);
 	th->th_ack = synqe->iss + 1;
 	th->th_seq = be32toh(cpl->rcv_isn);
 	bzero(to, sizeof(*to));
diff --git a/sys/dev/hyperv/netvsc/if_hn.c b/sys/dev/hyperv/netvsc/if_hn.c
index 5bdd804b06d5..212b6bc0ff57 100644
--- a/sys/dev/hyperv/netvsc/if_hn.c
+++ b/sys/dev/hyperv/netvsc/if_hn.c
@@ -898,7 +898,7 @@ hn_check_tcpsyn(struct mbuf *m_head, int *tcpsyn)
 
 	PULLUP_HDR(m_head, ehlen + iphlen + sizeof(*th));
 	th = mtodo(m_head, ehlen + iphlen);
-	if (th->th_flags & TH_SYN)
+	if (tcp_get_flags(th) & TH_SYN)
 		*tcpsyn = 1;
 	return (m_head);
 }
diff --git a/sys/dev/irdma/irdma_cm.c b/sys/dev/irdma/irdma_cm.c
index 167e3c67390c..450fae662dd8 100644
--- a/sys/dev/irdma/irdma_cm.c
+++ b/sys/dev/irdma/irdma_cm.c
@@ -395,25 +395,25 @@ irdma_form_ah_cm_frame(struct irdma_cm_node *cm_node,
 	if (flags & SET_ACK) {
 		cm_node->tcp_cntxt.loc_ack_num = cm_node->tcp_cntxt.rcv_nxt;
 		tcph->th_ack = htonl(cm_node->tcp_cntxt.loc_ack_num);
-		tcph->th_flags |= TH_ACK;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_ACK);
 	} else {
 		tcph->th_ack = 0;
 	}
 
 	if (flags & SET_SYN) {
 		cm_node->tcp_cntxt.loc_seq_num++;
-		tcph->th_flags |= TH_SYN;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_SYN);
 	} else {
 		cm_node->tcp_cntxt.loc_seq_num += hdr_len + pd_len;
 	}
 
 	if (flags & SET_FIN) {
 		cm_node->tcp_cntxt.loc_seq_num++;
-		tcph->th_flags |= TH_FIN;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_FIN);
 	}
 
 	if (flags & SET_RST)
-		tcph->th_flags |= TH_RST;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_RST);
 
 	tcph->th_off = (u16)((sizeof(*tcph) + opts_len + 3) >> 2);
 	sqbuf->tcphlen = tcph->th_off << 2;
@@ -582,25 +582,25 @@ irdma_form_uda_cm_frame(struct irdma_cm_node *cm_node,
 	if (flags & SET_ACK) {
 		cm_node->tcp_cntxt.loc_ack_num = cm_node->tcp_cntxt.rcv_nxt;
 		tcph->th_ack = htonl(cm_node->tcp_cntxt.loc_ack_num);
-		tcph->th_flags |= TH_ACK;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_ACK);
 	} else {
 		tcph->th_ack = 0;
 	}
 
 	if (flags & SET_SYN) {
 		cm_node->tcp_cntxt.loc_seq_num++;
-		tcph->th_flags |= TH_SYN;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_SYN);
 	} else {
 		cm_node->tcp_cntxt.loc_seq_num += hdr_len + pd_len;
 	}
 
 	if (flags & SET_FIN) {
 		cm_node->tcp_cntxt.loc_seq_num++;
-		tcph->th_flags |= TH_FIN;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_FIN);
 	}
 
 	if (flags & SET_RST)
-		tcph->th_flags |= TH_RST;
+		tcp_set_flags(tcph, tcp_get_flags(tcph) | TH_RST);
 
 	tcph->th_off = (u16)((sizeof(*tcph) + opts_len + 3) >> 2);
 	sqbuf->tcphlen = tcph->th_off << 2;
@@ -796,7 +796,7 @@ irdma_handle_tcp_options(struct irdma_cm_node *cm_node,
 
 	if (optionsize) {
 		ret = irdma_process_options(cm_node, optionsloc, optionsize,
-					    (u32)tcph->th_flags & TH_SYN);
+					    (u32)tcp_get_flags(tcph) & TH_SYN);
 		if (ret) {
 			irdma_debug(&cm_node->iwdev->rf->sc_dev, IRDMA_DEBUG_CM,
 				    "Node %p, Sending Reset\n", cm_node);
@@ -2767,16 +2767,16 @@ irdma_process_pkt(struct irdma_cm_node *cm_node,
 	u32 fin_set = 0;
 	int err;
 
-	if (tcph->th_flags & TH_RST) {
+	if (tcp_get_flags(tcph) & TH_RST) {
 		pkt_type = IRDMA_PKT_TYPE_RST;
-	} else if (tcph->th_flags & TH_SYN) {
+	} else if (tcp_get_flags(tcph) & TH_SYN) {
 		pkt_type = IRDMA_PKT_TYPE_SYN;
-		if (tcph->th_flags & TH_ACK)
+		if (tcp_get_flags(tcph) & TH_ACK)
 			pkt_type = IRDMA_PKT_TYPE_SYNACK;
-	} else if (tcph->th_flags & TH_ACK) {
+	} else if (tcp_get_flags(tcph) & TH_ACK) {
 		pkt_type = IRDMA_PKT_TYPE_ACK;
 	}
-	if (tcph->th_flags & TH_FIN)
+	if (tcp_get_flags(tcph) & TH_FIN)
 		fin_set = 1;
 
 	switch (pkt_type) {
@@ -3067,7 +3067,7 @@ irdma_receive_ilq(struct irdma_sc_vsi *vsi, struct irdma_puda_buf *rbuf)
 		/*
 		 * Only type of packet accepted are for the PASSIVE open (syn only)
 		 */
-		if (!(tcph->th_flags & TH_SYN) || tcph->th_flags & TH_ACK)
+		if (!(tcp_get_flags(tcph) & TH_SYN) || tcp_get_flags(tcph) & TH_ACK)
 			return;
 
 		listener = irdma_find_listener(cm_core,
@@ -3093,7 +3093,7 @@ irdma_receive_ilq(struct irdma_sc_vsi *vsi, struct irdma_puda_buf *rbuf)
 			return;
 		}
 
-		if (!(tcph->th_flags & (TH_RST | TH_FIN))) {
+		if (!(tcp_get_flags(tcph) & (TH_RST | TH_FIN))) {
 			cm_node->state = IRDMA_CM_STATE_LISTENING;
 		} else {
 			irdma_rem_ref_cm_node(cm_node);
diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_rx.c b/sys/dev/mlx5/mlx5_en/mlx5_en_rx.c
index a24bbe3d193e..f58c88e98053 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_rx.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_rx.c
@@ -168,10 +168,10 @@ mlx5e_lro_update_hdr(struct mbuf *mb, struct mlx5_cqe64 *cqe)
 	ts_ptr = (uint32_t *)(th + 1);
 
 	if (get_cqe_lro_tcppsh(cqe))
-		th->th_flags |= TH_PUSH;
+		tcp_set_flags(th, tcp_get_flags(th) | TH_PUSH);
 
 	if (tcp_ack) {
-		th->th_flags |= TH_ACK;
+		tcp_set_flags(th, tcp_get_flags(th) | TH_ACK);
 		th->th_ack = cqe->lro_ack_seq_num;
 		th->th_win = cqe->lro_tcp_win;
 
diff --git a/sys/dev/oce/oce_if.c b/sys/dev/oce/oce_if.c
index bf257b952a03..14dd5cf34a7a 100644
--- a/sys/dev/oce/oce_if.c
+++ b/sys/dev/oce/oce_if.c
@@ -1494,7 +1494,7 @@ oce_correct_header(struct mbuf *m, struct nic_hwlro_cqe_part1 *cqe1, struct nic_
         /* correct tcp header */
         tcp_hdr->th_ack = htonl(cqe2->tcp_ack_num);
         if(cqe2->push) {
-        	tcp_hdr->th_flags |= TH_PUSH;
+		tcp_set_flags(tcp_hdr, tcp_get_flags(tcp_hdr) | TH_PUSH);
         }
         tcp_hdr->th_win = htons(cqe2->tcp_window);
         tcp_hdr->th_sum = 0xffff;
diff --git a/sys/dev/qlxgbe/ql_isr.c b/sys/dev/qlxgbe/ql_isr.c
index 62ad81b2a607..076cad567801 100644
--- a/sys/dev/qlxgbe/ql_isr.c
+++ b/sys/dev/qlxgbe/ql_isr.c
@@ -280,7 +280,7 @@ qla_lro_intr(qla_host_t *ha, qla_sgl_lro_t *sgc, uint32_t sds_idx)
 	th = (struct tcphdr *)(mpf->m_data + sgc->l4_offset);
 
 	if (sgc->flags & Q8_LRO_COMP_PUSH_BIT)
-		th->th_flags |= TH_PUSH;
+		tcp_set_flags(th, tcp_get_flags(th) | TH_PUSH);
 
 	m_adj(mpf, sgc->l2_offset);
 
diff --git a/sys/dev/sfxge/sfxge_rx.c b/sys/dev/sfxge/sfxge_rx.c
index 28f9a42b0d22..7e0948425d77 100644
--- a/sys/dev/sfxge/sfxge_rx.c
+++ b/sys/dev/sfxge/sfxge_rx.c
@@ -483,7 +483,7 @@ sfxge_lro_merge(struct sfxge_lro_state *st, struct sfxge_lro_conn *c,
 		iph->ip6_plen += mbuf->m_len;
 		c_th = (struct tcphdr *)(iph + 1);
 	}
-	c_th->th_flags |= (th->th_flags & TH_PUSH);
+	tcp_set_flags(c_th, tcp_get_flags(c_th) | (tcp_get_flags(th) & TH_PUSH));
 	c->th_last = th;
 	++st->n_merges;
 
@@ -545,7 +545,7 @@ sfxge_lro_try_merge(struct sfxge_rxq *rxq, struct sfxge_lro_conn *c)
 		       hdr_length);
 	th_seq = ntohl(th->th_seq);
 	dont_merge = ((data_length <= 0)
-		      | (th->th_flags & (TH_URG | TH_SYN | TH_RST | TH_FIN)));
+		      | (tcp_get_flags(th) & (TH_URG | TH_SYN | TH_RST | TH_FIN)));
 
 	/* Check for options other than aligned timestamp. */
 	if (th->th_off != 5) {
@@ -592,7 +592,7 @@ sfxge_lro_try_merge(struct sfxge_rxq *rxq, struct sfxge_lro_conn *c)
 	if (__predict_false(dont_merge)) {
 		if (c->mbuf != NULL)
 			sfxge_lro_deliver(&rxq->lro, c);
-		if (th->th_flags & (TH_FIN | TH_RST)) {
+		if (tcp_get_flags(th) & (TH_FIN | TH_RST)) {
 			++rxq->lro.n_drop_closed;
 			sfxge_lro_drop(rxq, c);
 			return (0);
diff --git a/sys/dev/sfxge/sfxge_tx.c b/sys/dev/sfxge/sfxge_tx.c
index 511222f656e5..dcc3dd4cd100 100644
--- a/sys/dev/sfxge/sfxge_tx.c
+++ b/sys/dev/sfxge/sfxge_tx.c
@@ -859,10 +859,10 @@ static void sfxge_parse_tx_packet(struct mbuf *mbuf)
 	 * generates TSO packets with RST flag. So, do not assert
 	 * its absence.
 	 */
-	KASSERT(!(th->th_flags & (TH_URG | TH_SYN)),
+	KASSERT(!(tcp_get_flags(th) & (TH_URG | TH_SYN)),
 		("incompatible TCP flag 0x%x on TSO packet",
-		 th->th_flags & (TH_URG | TH_SYN)));
-	TSO_MBUF_FLAGS(mbuf) = th->th_flags;
+		 tcp_get_flags(th) & (TH_URG | TH_SYN)));
+	TSO_MBUF_FLAGS(mbuf) = tcp_get_flags(th);
 }
 #endif
 
@@ -1117,10 +1117,10 @@ static void tso_start(struct sfxge_txq *txq, struct sfxge_tso_state *tso,
 	 * generates TSO packets with RST flag. So, do not assert
 	 * its absence.
 	 */
-	KASSERT(!(th->th_flags & (TH_URG | TH_SYN)),
+	KASSERT(!(tcp_get_flags(th) & (TH_URG | TH_SYN)),
 		("incompatible TCP flag 0x%x on TSO packet",
-		 th->th_flags & (TH_URG | TH_SYN)));
-	tso->tcp_flags = th->th_flags;
+		 tcp_get_flags(th) & (TH_URG | TH_SYN)));
+	tso->tcp_flags = tcp_get_flags(th);
 #else
 	tso->seqnum = TSO_MBUF_SEQNUM(mbuf);
 	tso->tcp_flags = TSO_MBUF_FLAGS(mbuf);
@@ -1319,7 +1319,7 @@ static int tso_start_new_packet(struct sfxge_txq *txq,
 		if (tso->out_len > tso->seg_size) {
 			/* This packet will not finish the TSO burst. */
 			ip_length = tso->header_len - tso->nh_off + tso->seg_size;
-			tsoh_th->th_flags &= ~(TH_FIN | TH_PUSH);
+			tcp_set_flags(tsoh_th, tcp_get_flags(tsoh_th) & ~(TH_FIN | TH_PUSH));
 		} else {
 			/* This packet will be the last in the TSO burst. */
 			ip_length = tso->header_len - tso->nh_off + tso->out_len;
diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c
index 0dc887b3d394..cf512b73de81 100644
--- a/sys/dev/virtio/network/if_vtnet.c
+++ b/sys/dev/virtio/network/if_vtnet.c
@@ -2438,7 +2438,7 @@ vtnet_txq_offload_tso(struct vtnet_txq *txq, struct mbuf *m, int eth_type,
 	hdr->gso_type = eth_type == ETHERTYPE_IP ? VIRTIO_NET_HDR_GSO_TCPV4 :
 	    VIRTIO_NET_HDR_GSO_TCPV6;
 
-	if (__predict_false(tcp->th_flags & TH_CWR)) {
+	if (__predict_false(tcp_get_flags(tcp) & TH_CWR)) {
 		/*
 		 * Drop if VIRTIO_NET_F_HOST_ECN was not negotiated. In
 		 * FreeBSD, ECN support is not on a per-interface basis,
diff --git a/sys/dev/virtio/network/virtio_net.h b/sys/dev/virtio/network/virtio_net.h
index 4b728f7af21a..9ea53cbe2376 100644
--- a/sys/dev/virtio/network/virtio_net.h
+++ b/sys/dev/virtio/network/virtio_net.h
@@ -481,7 +481,7 @@ virtio_net_tx_offload_tso(if_t ifp, struct mbuf *m, int eth_type,
 	hdr->gso_type = eth_type == ETHERTYPE_IP ? VIRTIO_NET_HDR_GSO_TCPV4 :
 	    VIRTIO_NET_HDR_GSO_TCPV6;
 
-	if (tcp->th_flags & TH_CWR) {
+	if (tcp_get_flags(tcp) & TH_CWR) {
 		/*
 		 * Drop if VIRTIO_NET_F_HOST_ECN was not negotiated. In FreeBSD,
 		 * ECN support is not on a per-interface basis, but globally via
diff --git a/sys/net/iflib.c b/sys/net/iflib.c
index 997da7ca5b00..284d226a7ac6 100644
--- a/sys/net/iflib.c
+++ b/sys/net/iflib.c
@@ -3420,7 +3420,7 @@ iflib_parse_header(iflib_txq_t txq, if_pkt_info_t pi, struct mbuf **mp)
 						return (ENOMEM);
 					th = (struct tcphdr *)((caddr_t)ip + pi->ipi_ip_hlen);
 				}
-				pi->ipi_tcp_hflags = th->th_flags;
+				pi->ipi_tcp_hflags = tcp_get_flags(th);
 				pi->ipi_tcp_hlen = th->th_off << 2;
 				pi->ipi_tcp_seq = th->th_seq;
 			}
@@ -3473,7 +3473,7 @@ iflib_parse_header(iflib_txq_t txq, if_pkt_info_t pi, struct mbuf **mp)
 					if (__predict_false((m = m_pullup(m, pi->ipi_ehdrlen + sizeof(struct ip6_hdr) + sizeof(struct tcphdr))) == NULL))
 						return (ENOMEM);
 				}
-				pi->ipi_tcp_hflags = th->th_flags;
+				pi->ipi_tcp_hflags = tcp_get_flags(th);
 				pi->ipi_tcp_hlen = th->th_off << 2;
 				pi->ipi_tcp_seq = th->th_seq;
 			}
diff --git a/sys/net/iflib.h b/sys/net/iflib.h
index bf40c7429fb8..e3d76fbd3c01 100644
--- a/sys/net/iflib.h
+++ b/sys/net/iflib.h
@@ -121,13 +121,13 @@ typedef struct if_pkt_info {
 	uint16_t		ipi_tso_segsz;	/* tso segment size */
 	uint16_t		ipi_vtag;	/* VLAN tag */
 	uint16_t		ipi_etype;	/* ether header type */
-	uint8_t			ipi_tcp_hflags;	/* tcp header flags */
-	uint8_t			ipi_mflags;	/* packet mbuf flags */
+	uint16_t		ipi_tcp_hflags;	/* tcp header flags */
 
 	uint32_t		ipi_tcp_seq;	/* tcp seqno */
 	uint8_t			ipi_ip_tos;	/* IP ToS field data */
+	uint8_t			ipi_mflags;	/* packet mbuf flags */
 	uint8_t			__spare0__;
-	uint16_t		__spare1__;
+	uint8_t		__spare1__;
 } *if_pkt_info_t;
 
 typedef struct if_irq {
diff --git a/sys/net/slcompress.c b/sys/net/slcompress.c
index 567736caf243..4e68ed325524 100644
--- a/sys/net/slcompress.c
+++ b/sys/net/slcompress.c
@@ -170,7 +170,7 @@ sl_compress_tcp(struct mbuf *m, struct ip *ip, struct slcompress *comp,
 		return (TYPE_IP);
 
 	th = (struct tcphdr *)&((int32_t *)ip)[hlen];
-	if ((th->th_flags & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK)
+	if ((tcp_get_flags(th) & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK)
 		return (TYPE_IP);
 	/*
 	 * Packet is compressible -- we're going to send either a
@@ -271,7 +271,7 @@ sl_compress_tcp(struct mbuf *m, struct ip *ip, struct slcompress *comp,
 	 * ack, seq (the order minimizes the number of temporaries
 	 * needed in this section of code).
 	 */
-	if (th->th_flags & TH_URG) {
+	if (tcp_get_flags(th) & TH_URG) {
 		deltaS = ntohs(th->th_urp);
 		ENCODEZ(deltaS);
 		changes |= NEW_U;
@@ -351,7 +351,7 @@ sl_compress_tcp(struct mbuf *m, struct ip *ip, struct slcompress *comp,
 		ENCODEZ(deltaS);
 		changes |= NEW_I;
 	}
-	if (th->th_flags & TH_PUSH)
+	if (tcp_get_flags(th) & TH_PUSH)
 		changes |= TCP_PUSH_BIT;
 	/*
 	 * Grab the cksum before we overwrite it below.  Then update our
@@ -516,9 +516,9 @@ sl_uncompress_tcp_core(u_char *buf, int buflen, int total_len, u_int type,
 	th->th_sum = htons((*cp << 8) | cp[1]);
 	cp += 2;
 	if (changes & TCP_PUSH_BIT)
-		th->th_flags |= TH_PUSH;
+		tcp_set_flags(th, tcp_get_flags(th) | TH_PUSH);
 	else
-		th->th_flags &=~ TH_PUSH;
+		tcp_set_flags(th, tcp_get_flags(th) & ~TH_PUSH);
 
 	switch (changes & SPECIALS_MASK) {
 	case SPECIAL_I:
@@ -536,10 +536,10 @@ sl_uncompress_tcp_core(u_char *buf, int buflen, int total_len, u_int type,
 
 	default:
 		if (changes & NEW_U) {
-			th->th_flags |= TH_URG;
+			tcp_set_flags(th, tcp_get_flags(th) | TH_URG);
 			DECODEU(th->th_urp)
 		} else
-			th->th_flags &=~ TH_URG;
+			tcp_set_flags(th, tcp_get_flags(th) & ~TH_URG);
 		if (changes & NEW_W)
 			DECODES(th->th_win)
 		if (changes & NEW_A)
diff --git a/sys/netgraph/netflow/netflow.c b/sys/netgraph/netflow/netflow.c
index f227bfda4e51..978d6fd0b54d 100644
--- a/sys/netgraph/netflow/netflow.c
+++ b/sys/netgraph/netflow/netflow.c
@@ -107,11 +107,11 @@ static int export_send(priv_p, fib_export_p, item_p, int);
 
 #ifdef INET
 static int hash_insert(priv_p, struct flow_hash_entry *, struct flow_rec *,
-    int, uint8_t, uint8_t);
+    int, uint8_t, uint16_t);
 #endif
 #ifdef INET6
 static int hash6_insert(priv_p, struct flow_hash_entry *, struct flow6_rec *,
-    int, uint8_t, uint8_t);
+    int, uint8_t, uint16_t);
 #endif
 
 static void expire_flow(priv_p, fib_export_p, struct flow_entry *, int);
@@ -320,7 +320,7 @@ ng_netflow_copyinfo(priv_p priv, struct ng_netflow_info *i)
 #ifdef INET
 static int
 hash_insert(priv_p priv, struct flow_hash_entry *hsh, struct flow_rec *r,
-	int plen, uint8_t flags, uint8_t tcp_flags)
+	int plen, uint8_t flags, uint16_t tcp_flags)
 {
 	struct flow_entry *fle;
 
@@ -397,7 +397,7 @@ hash_insert(priv_p priv, struct flow_hash_entry *hsh, struct flow_rec *r,
 #ifdef INET6
 static int
 hash6_insert(priv_p priv, struct flow_hash_entry *hsh6, struct flow6_rec *r,
-	int plen, uint8_t flags, uint8_t tcp_flags)
+	int plen, uint8_t flags, uint16_t tcp_flags)
 {
 	struct flow6_entry *fle6;
 
@@ -659,7 +659,7 @@ ng_netflow_flow_add(priv_p priv, fib_export_p fe, struct ip *ip,
 	struct flow_rec		r;
 	int			hlen, plen;
 	int			error = 0;
-	uint8_t			tcp_flags = 0;
+	uint16_t		tcp_flags = 0;
 
 	bzero(&r, sizeof(r));
 
@@ -702,7 +702,7 @@ ng_netflow_flow_add(priv_p priv, fib_export_p fe, struct ip *ip,
 			tcp = (struct tcphdr *)((caddr_t )ip + hlen);
 			r.r_sport = tcp->th_sport;
 			r.r_dport = tcp->th_dport;
-			tcp_flags = tcp->th_flags;
+			tcp_flags = tcp_get_flags(tcp);
 			break;
 		    }
 		case IPPROTO_UDP:
@@ -787,7 +787,7 @@ ng_netflow_flow6_add(priv_p priv, fib_export_p fe, struct ip6_hdr *ip6,
 	struct flow6_rec	r;
 	int			plen;
 	int			error = 0;
-	uint8_t			tcp_flags = 0;
+	uint16_t		tcp_flags = 0;
 
 	/* check version */
 	if ((ip6->ip6_vfc & IPV6_VERSION_MASK) != IPV6_VERSION)
@@ -816,7 +816,7 @@ ng_netflow_flow6_add(priv_p priv, fib_export_p fe, struct ip6_hdr *ip6,
 
 			tcp = (struct tcphdr *)upper_ptr;
 			r.r_ports = *(uint32_t *)upper_ptr;
-			tcp_flags = tcp->th_flags;
+			tcp_flags = tcp_get_flags(tcp);
 			break;
 		    }
  		case IPPROTO_UDP:
diff --git a/sys/netgraph/netflow/ng_netflow.h b/sys/netgraph/netflow/ng_netflow.h
index ec62ccd3f7b2..8e18bb5a4bf4 100644
--- a/sys/netgraph/netflow/ng_netflow.h
+++ b/sys/netgraph/netflow/ng_netflow.h
@@ -259,7 +259,7 @@ struct flow_entry_data {
 	u_long		bytes;
 	long		first;		/* uptime on first packet */
 	long		last;		/* uptime on last packet */
-	u_char		tcp_flags;	/* cumulative OR */
+	uint16_t	tcp_flags;	/* cumulative OR */
 };
 
 struct flow6_entry_data {
@@ -277,7 +277,7 @@ struct flow6_entry_data {
 	u_long		bytes;
 	long		first;		/* uptime on first packet */
 	long		last;		/* uptime on last packet */
-	u_char		tcp_flags;	/* cumulative OR */
+	uint16_t	tcp_flags;	/* cumulative OR */
 };
 
 /*
diff --git a/sys/netgraph/ng_tcpmss.c b/sys/netgraph/ng_tcpmss.c
index 02fa097369ad..ab055bd9bb24 100644
--- a/sys/netgraph/ng_tcpmss.c
+++ b/sys/netgraph/ng_tcpmss.c
@@ -330,7 +330,7 @@ ng_tcpmss_rcvdata(hook_p hook, item_p item)
 		ERROUT(EINVAL);
 
 	/* Check SYN packet and has options. */
-	if (!(tcp->th_flags & TH_SYN) || tcphlen == sizeof(struct tcphdr))
+	if (!(tcp_get_flags(tcp) & TH_SYN) || tcphlen == sizeof(struct tcphdr))
 		goto send;
 
 	/* Update SYN stats. */
diff --git a/sys/netinet/libalias/alias.c b/sys/netinet/libalias/alias.c
index 9bf6b82b9369..7858e4d2b9f3 100644
--- a/sys/netinet/libalias/alias.c
+++ b/sys/netinet/libalias/alias.c
@@ -183,12 +183,12 @@ a timeout period.
 */
 
 /* Local prototypes */
-static void	TcpMonitorIn(u_char, struct alias_link *);
+static void	TcpMonitorIn(uint16_t, struct alias_link *);
 
-static void	TcpMonitorOut(u_char, struct alias_link *);
+static void	TcpMonitorOut(uint16_t, struct alias_link *);
 
 static void
-TcpMonitorIn(u_char th_flags, struct alias_link *lnk)
+TcpMonitorIn(uint16_t th_flags, struct alias_link *lnk)
 {
 	switch (GetStateIn(lnk)) {
 	case ALIAS_TCP_STATE_NOT_CONNECTED:
@@ -205,7 +205,7 @@ TcpMonitorIn(u_char th_flags, struct alias_link *lnk)
 }
 
 static void
-TcpMonitorOut(u_char th_flags, struct alias_link *lnk)
+TcpMonitorOut(uint16_t th_flags, struct alias_link *lnk)
 {
 	switch (GetStateOut(lnk)) {
 	case ALIAS_TCP_STATE_NOT_CONNECTED:
@@ -1053,7 +1053,7 @@ TcpAliasIn(struct libalias *la, struct ip *pip)
 
 		/* Monitor TCP connection state */
 		tc = (struct tcphdr *)ip_next(pip);
-		TcpMonitorIn(tc->th_flags, lnk);
+		TcpMonitorIn(__tcp_get_flags(tc), lnk);
 
 		return (PKT_ALIAS_OK);
 	}
@@ -1142,7 +1142,7 @@ TcpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create)
 
 		/* Monitor TCP connection state */
 		tc = (struct tcphdr *)ip_next(pip);
-		TcpMonitorOut(tc->th_flags, lnk);
+		TcpMonitorOut(__tcp_get_flags(tc), lnk);
 
 		/* Walk out chain. */
 		find_handler(OUT, TCP, la, pip, &ad);
diff --git a/sys/netinet/libalias/alias_ftp.c b/sys/netinet/libalias/alias_ftp.c
index 4a0b616ccf27..4119221e9b35 100644
--- a/sys/netinet/libalias/alias_ftp.c
+++ b/sys/netinet/libalias/alias_ftp.c
@@ -752,7 +752,7 @@ NewFtpMessage(struct libalias *la, struct ip *pip,
 		/* Compute TCP checksum for revised packet */
 		tc->th_sum = 0;
 #ifdef _KERNEL
-		tc->th_x2 = (TH_RES1 >> 8);
+		tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 		tc->th_sum = TcpChecksum(pip);
 #endif
diff --git a/sys/netinet/libalias/alias_irc.c b/sys/netinet/libalias/alias_irc.c
index 3ef336b7333d..e063a67c2902 100644
--- a/sys/netinet/libalias/alias_irc.c
+++ b/sys/netinet/libalias/alias_irc.c
@@ -456,7 +456,7 @@ AliasHandleIrcOut(struct libalias *la,
 		/* Compute TCP checksum for revised packet */
 		tc->th_sum = 0;
 #ifdef _KERNEL
-		tc->th_x2 = (TH_RES1 >> 8);
+		tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 		tc->th_sum = TcpChecksum(pip);
 #endif
diff --git a/sys/netinet/libalias/alias_proxy.c b/sys/netinet/libalias/alias_proxy.c
index dd685bed760d..0ff4b87b5000 100644
--- a/sys/netinet/libalias/alias_proxy.c
+++ b/sys/netinet/libalias/alias_proxy.c
@@ -366,7 +366,7 @@ ProxyEncodeTcpStream(struct alias_link *lnk,
 
 	tc->th_sum = 0;
 #ifdef _KERNEL
-	tc->th_x2 = (TH_RES1 >> 8);
+	tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 	tc->th_sum = TcpChecksum(pip);
 #endif
diff --git a/sys/netinet/libalias/alias_skinny.c b/sys/netinet/libalias/alias_skinny.c
index 47d66a474fb4..d12046d7953f 100644
--- a/sys/netinet/libalias/alias_skinny.c
+++ b/sys/netinet/libalias/alias_skinny.c
@@ -214,7 +214,7 @@ alias_skinny_reg_msg(struct RegisterMessage *reg_msg, struct ip *pip,
 
 	tc->th_sum = 0;
 #ifdef _KERNEL
-	tc->th_x2 = (TH_RES1 >> 8);
+	tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 	tc->th_sum = TcpChecksum(pip);
 #endif
@@ -257,7 +257,7 @@ alias_skinny_port_msg(struct IpPortMessage *port_msg, struct ip *pip,
 
 	tc->th_sum = 0;
 #ifdef _KERNEL
-	tc->th_x2 = (TH_RES1 >> 8);
+	tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 	tc->th_sum = TcpChecksum(pip);
 #endif
@@ -287,7 +287,7 @@ alias_skinny_opnrcvch_ack(struct libalias *la, struct OpenReceiveChannelAck *opn
 
 	tc->th_sum = 0;
 #ifdef _KERNEL
-	tc->th_x2 = (TH_RES1 >> 8);
+	tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 	tc->th_sum = TcpChecksum(pip);
 #endif
diff --git a/sys/netinet/libalias/alias_smedia.c b/sys/netinet/libalias/alias_smedia.c
index 6c67e0d8f006..1c4ee0970a53 100644
--- a/sys/netinet/libalias/alias_smedia.c
+++ b/sys/netinet/libalias/alias_smedia.c
@@ -402,7 +402,7 @@ alias_rtsp_out(struct libalias *la, struct ip *pip,
 
 	tc->th_sum = 0;
 #ifdef _KERNEL
-	tc->th_x2 = (TH_RES1 >> 8);
+	tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 	tc->th_sum = TcpChecksum(pip);
 #endif
@@ -449,7 +449,7 @@ alias_pna_out(struct libalias *la, struct ip *pip,
 				/* Compute TCP checksum for revised packet */
 				tc->th_sum = 0;
 #ifdef _KERNEL
-				tc->th_x2 = (TH_RES1 >> 8);
+				tcp_set_flags(tc, tcp_get_flags(tc) | TH_RES1);
 #else
 				tc->th_sum = TcpChecksum(pip);
 #endif
diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c
index be98d2e41f11..9df5b3dd42b0 100644
--- a/sys/netinet/tcp_output.c
+++ b/sys/netinet/tcp_output.c
@@ -1265,7 +1265,6 @@ send:
 		bcopy(opt, th + 1, optlen);
 		th->th_off = (sizeof (struct tcphdr) + optlen) >> 2;
 	}
-	tcp_set_flags(th, flags);
 	/*
 	 * Calculate receive window.  Don't shrink window,
 	 * but avoid silly window syndrome.
@@ -1310,8 +1309,8 @@ send:
 		tp->t_flags &= ~TF_RXWIN0SENT;
 	if (SEQ_GT(tp->snd_up, tp->snd_nxt)) {
 		th->th_urp = htons((u_short)(tp->snd_up - tp->snd_nxt));
-		th->th_flags |= TH_URG;
-	} else
+		flags |= TH_URG;
+	} else {
 		/*
 		 * If no urgent pointer to send, then we pull
 		 * the urgent pointer to the left edge of the send window
@@ -1319,6 +1318,8 @@ send:
 		 * number wraparound.
 		 */
 		tp->snd_up = tp->snd_una;		/* drag it along */
+	}
+	tcp_set_flags(th, flags);
 
 	/*
 	 * Put TCP length in extended header, and then
diff --git a/sys/netpfil/ipfilter/netinet/fil.c b/sys/netpfil/ipfilter/netinet/fil.c
index 926c5176c15b..c1b49196b712 100644
--- a/sys/netpfil/ipfilter/netinet/fil.c
+++ b/sys/netpfil/ipfilter/netinet/fil.c
@@ -1330,8 +1330,8 @@ ipf_pr_tcpcommon(fr_info_t *fin)
 		return (1);
 	}
 
-	flags = tcp->th_flags;
-	fin->fin_tcpf = tcp->th_flags;
+	flags = tcp_get_flags(tcp);
+	fin->fin_tcpf = tcp_get_flags(tcp);
 
 	/*
 	 * If the urgent flag is set, then the urgent pointer must
diff --git a/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c b/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c
index aa0de6b8678a..04850549db98 100644
--- a/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c
+++ b/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c
@@ -314,15 +314,15 @@ ipf_send_reset(fr_info_t *fin)
 	ip_t *ip;
 
 	tcp = fin->fin_dp;
-	if (tcp->th_flags & TH_RST)
+	if (tcp_get_flags(tcp) & TH_RST)
 		return (-1);		/* feedback loop */
 
 	if (ipf_checkl4sum(fin) == -1)
 		return (-1);
 
 	tlen = fin->fin_dlen - (TCP_OFF(tcp) << 2) +
-			((tcp->th_flags & TH_SYN) ? 1 : 0) +
-			((tcp->th_flags & TH_FIN) ? 1 : 0);
+			((tcp_get_flags(tcp) & TH_SYN) ? 1 : 0) +
+			((tcp_get_flags(tcp) & TH_FIN) ? 1 : 0);
 
 #ifdef USE_INET6
 	hlen = (fin->fin_v == 6) ? sizeof(ip6_t) : sizeof(ip_t);
diff --git a/sys/netpfil/ipfilter/netinet/ip_ftp_pxy.c b/sys/netpfil/ipfilter/netinet/ip_ftp_pxy.c
index 3bc74247251a..482e0b456ae5 100644
--- a/sys/netpfil/ipfilter/netinet/ip_ftp_pxy.c
+++ b/sys/netpfil/ipfilter/netinet/ip_ftp_pxy.c
@@ -543,7 +543,7 @@ ipf_p_ftp_addport(ipf_ftp_softc_t *softf, fr_info_t *fin, ip_t *ip, nat_t *nat,
 
 	tcp2->th_win = htons(8192);
 	TCP_OFF_A(tcp2, 5);
-	tcp2->th_flags = TH_SYN;
+	tcp_set_flags(tcp2, TH_SYN);
 
 	if (nat->nat_dir == NAT_INBOUND) {
 		fi.fin_out = 1;
@@ -873,7 +873,7 @@ ipf_p_ftp_pasvreply(ipf_ftp_softc_t *softf, fr_info_t *fin, ip_t *ip,
 	fi.fin_flx &= FI_LOWTTL|FI_FRAG|FI_TCPUDP|FI_OPTIONS|FI_IGNORE;
 
 	TCP_OFF_A(tcp2, 5);
-	tcp2->th_flags = TH_SYN;
+	tcp_set_flags(tcp2, TH_SYN);
 	tcp2->th_win = htons(8192);
 	tcp2->th_dport = htons(port);
 
@@ -1240,9 +1240,9 @@ ipf_p_ftp_process(ipf_ftp_softc_t *softf, fr_info_t *fin, nat_t *nat,
 	if (softf->ipf_p_ftp_debug & DEBUG_INFO)
 		printf("ipf_p_ftp_process: %d:%d,%d, mlen %d flags %x\n",
 		       fin->fin_out, fin->fin_sport, fin->fin_dport,
-		       mlen, tcp->th_flags);
+		       mlen, tcp_get_flags(tcp));
 
-	if ((mlen == 0) && ((tcp->th_flags & TH_OPENING) == TH_OPENING)) {
+	if ((mlen == 0) && ((tcp_get_flags(tcp) & TH_OPENING) == TH_OPENING)) {
 		f->ftps_seq[0] = thseq + 1;
 		t->ftps_seq[0] = thack;
 		return (0);
@@ -1283,7 +1283,7 @@ ipf_p_ftp_process(ipf_ftp_softc_t *softf, fr_info_t *fin, nat_t *nat,
 	}
 	if (softf->ipf_p_ftp_debug & DEBUG_INFO) {
 		printf("%s: %x seq %x/%d ack %x/%d len %d/%d off %d\n",
-		       rv ? "IN" : "OUT", tcp->th_flags, thseq, seqoff,
+		       rv ? "IN" : "OUT", tcp_get_flags(tcp), thseq, seqoff,
 		       thack, ackoff, mlen, fin->fin_plen, off);
 		printf("sel %d seqmin %x/%x offset %d/%d\n", sel,
 		       aps->aps_seqmin[sel], aps->aps_seqmin[sel2],
@@ -1357,7 +1357,7 @@ ipf_p_ftp_process(ipf_ftp_softc_t *softf, fr_info_t *fin, nat_t *nat,
 				f->ftps_seq[0], f->ftps_seq[1]);
 		}
 
-		if (tcp->th_flags & TH_FIN) {
+		if (tcp_get_flags(tcp) & TH_FIN) {
 			if (thseq == f->ftps_seq[1]) {
 				f->ftps_seq[0] = f->ftps_seq[1] - seqoff;
 				f->ftps_seq[1] = thseq + 1 - seqoff;
@@ -1530,7 +1530,7 @@ whilemore:
 	}
 
 	/* f->ftps_seq[1] += inc; */
-	if (tcp->th_flags & TH_FIN)
+	if (tcp_get_flags(tcp) & TH_FIN)
 		f->ftps_seq[1]++;
 	if (softf->ipf_p_ftp_debug & DEBUG_PARSE_INFO) {
 		mlen = MSGDSIZE(m);
diff --git a/sys/netpfil/ipfilter/netinet/ip_nat.c b/sys/netpfil/ipfilter/netinet/ip_nat.c
index 282a2bd82037..b8a0e7d2075b 100644
--- a/sys/netpfil/ipfilter/netinet/ip_nat.c
+++ b/sys/netpfil/ipfilter/netinet/ip_nat.c
@@ -5715,7 +5715,7 @@ ipf_nat_proto(fr_info_t *fin, nat_t *nat, u_int nflags)
 		 * Do a MSS CLAMPING on a SYN packet,
 		 * only deal IPv4 for now.
 		 */
-		if ((nat->nat_mssclamp != 0) && (tcp->th_flags & TH_SYN) != 0)
+		if ((nat->nat_mssclamp != 0) && (tcp_get_flags(tcp) & TH_SYN) != 0)
 			ipf_nat_mssclamp(tcp, nat->nat_mssclamp, fin, csump);
 
 		break;
diff --git a/sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c b/sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c
index 17ba01ce8d94..0ac19b067d2d 100644
--- a/sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c
+++ b/sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c
@@ -515,7 +515,7 @@ ipf_p_pptp_inout(void *arg, fr_info_t *fin, ap_session_t *aps, nat_t *nat)
 		rev = 0;
 
 	tcp = (tcphdr_t *)fin->fin_dp;
-	if ((tcp->th_flags & TH_OPENING) == TH_OPENING) {
+	if ((tcp_get_flags(tcp) & TH_OPENING) == TH_OPENING) {
 		pptp = (pptp_pxy_t *)aps->aps_data;
 		pptp->pptp_side[1 - rev].pptps_next = ntohl(tcp->th_ack);
 		pptp->pptp_side[1 - rev].pptps_nexthdr = ntohl(tcp->th_ack);
diff --git a/sys/netpfil/ipfilter/netinet/ip_rcmd_pxy.c b/sys/netpfil/ipfilter/netinet/ip_rcmd_pxy.c
index 13c989cba660..778f14f442de 100644
--- a/sys/netpfil/ipfilter/netinet/ip_rcmd_pxy.c
+++ b/sys/netpfil/ipfilter/netinet/ip_rcmd_pxy.c
@@ -263,7 +263,7 @@ ipf_p_rcmd_portmsg(fr_info_t *fin, ap_session_t *aps, nat_t *nat)
 	bzero((char *)tcp2, sizeof(*tcp2));
 	tcp2->th_win = htons(8192);
 	TCP_OFF_A(tcp2, 5);
-	tcp2->th_flags = TH_SYN;
+	tcp_set_flags(tcp2, TH_SYN);
 
 	fi.fin_dp = (char *)tcp2;
 	fi.fin_fr = &rcmdfr;
diff --git a/sys/netpfil/ipfilter/netinet/ip_rpcb_pxy.c b/sys/netpfil/ipfilter/netinet/ip_rpcb_pxy.c
index 7af11dd4a2dd..f8f4d2d325e1 100644
--- a/sys/netpfil/ipfilter/netinet/ip_rpcb_pxy.c
+++ b/sys/netpfil/ipfilter/netinet/ip_rpcb_pxy.c
@@ -1127,7 +1127,7 @@ ipf_p_rpcb_getnat(fr_info_t *fin, nat_t *nat, u_int proto, u_int port)
 		tcp.th_win = htons(8192);
 		TCP_OFF_A(&tcp, sizeof(tcphdr_t) >> 2);
 		fi.fin_dlen = sizeof(tcphdr_t);
-		tcp.th_flags = TH_SYN;
+		tcp_set_flags(&tcp, TH_SYN);
 		nflags = NAT_TCP;
 	} else {
 		fi.fin_dlen = sizeof(udphdr_t);
diff --git a/sys/netpfil/ipfilter/netinet/ip_state.c b/sys/netpfil/ipfilter/netinet/ip_state.c
index 1854dbfcdd71..8fe11e3f1215 100644
--- a/sys/netpfil/ipfilter/netinet/ip_state.c
+++ b/sys/netpfil/ipfilter/netinet/ip_state.c
@@ -1520,7 +1520,7 @@ ipf_state_add(ipf_main_softc_t *softc, fr_info_t *fin, ipstate_t **stsave,
 	case IPPROTO_TCP :
 		tcp = fin->fin_dp;
 
-		if (tcp->th_flags & TH_RST) {
+		if (tcp_get_flags(tcp) & TH_RST) {
 			SBUMPD(ipf_state_stats, iss_tcp_rstadd);
 			return (-4);
 		}
@@ -1553,15 +1553,15 @@ ipf_state_add(ipf_main_softc_t *softc, fr_info_t *fin, ipstate_t **stsave,
 		if ((fin->fin_flx & FI_IGNORE) == 0) {
 			is->is_send = ntohl(tcp->th_seq) + fin->fin_dlen -
 				      (TCP_OFF(tcp) << 2) +
-				      ((tcp->th_flags & TH_SYN) ? 1 : 0) +
-				      ((tcp->th_flags & TH_FIN) ? 1 : 0);
+				      ((tcp_get_flags(tcp) & TH_SYN) ? 1 : 0) +
+				      ((tcp_get_flags(tcp) & TH_FIN) ? 1 : 0);
 			is->is_maxsend = is->is_send;
 
 			/*
 			 * Window scale option is only present in
 			 * SYN/SYN-ACK packet.
 			 */
-			if ((tcp->th_flags & ~(TH_FIN|TH_ACK|TH_ECNALL)) ==
+			if ((tcp_get_flags(tcp) & ~(TH_FIN|TH_ACK|TH_ECNALL)) ==
 			    TH_SYN &&
 			    (TCP_OFF(tcp) > (sizeof(tcphdr_t) >> 2))) {
 				if (ipf_tcpoptions(softs, fin, tcp,
@@ -1576,7 +1576,7 @@ ipf_state_add(ipf_main_softc_t *softc, fr_info_t *fin, ipstate_t **stsave,
 				ipf_fixoutisn(fin, is);
 			}
 
-			if ((tcp->th_flags & TH_OPENING) == TH_SYN)
+			if ((tcp_get_flags(tcp) & TH_OPENING) == TH_SYN)
 				flags |= IS_TCPFSM;
 			else {
 				is->is_maxdwin = is->is_maxswin * 2;
@@ -1968,7 +1968,7 @@ ipf_state_tcp(ipf_main_softc_t *softc, ipf_state_softc_t *softs,
 	 * If a SYN packet is received for a connection that is on the way out
 	 * but hasn't yet departed then advance this session along the way.
 	 */
-	if ((tcp->th_flags & TH_OPENING) == TH_SYN) {
+	if ((tcp_get_flags(tcp) & TH_OPENING) == TH_SYN) {
 		if ((is->is_state[0] > IPF_TCPS_ESTABLISHED) &&
 		    (is->is_state[1] > IPF_TCPS_ESTABLISHED)) {
 			is->is_state[!source] = IPF_TCPS_CLOSED;
@@ -2011,7 +2011,7 @@ ipf_state_tcp(ipf_main_softc_t *softc, ipf_state_softc_t *softs,
 		 * Window scale option is only present in SYN/SYN-ACK packet.
 		 * Compare with ~TH_FIN to mask out T/TCP setups.
 		 */
*** 688 LINES SKIPPED ***

From nobody Fri Nov 29 09:50:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y07hj5Wx7z5dts9;
	Fri, 29 Nov 2024 09:50:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y07hj4b1Mz57Zq;
	Fri, 29 Nov 2024 09:50:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732873829;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=nbYgtb24VgYFXjNM25phgxn4dBzOlwCSuzBt7dWTHWA=;
	b=F9hrWnNW62snPdrNTRQ2xkET4ZhaMhsvWLRZ/1xAmBLAj6GrFOoRw3xgHyyAQ4MFtL6umE
	NZmpcJwbThUQ3wYtKp3MFWa4OJ2KJt74fyurfpyzJ5XH9DyNKaChTHQEyUL4JhQzWXdPbL
	65jKakvz6Hqovf/H0f0SEU5RAzNs1HM+NVbvfzVjquQLI7Pg7nPFygR8sq+L4c85q5NG0M
	w4Lxnh/EuQwnibzAABFNRNksxC+T8M2Cu97slDuTvGbg6lW8swjEoF95p1ImlYu2m5ZEZF
	2d/W8fU+WaD3j3B0KVUe2J8BwY2j9yt3qEKg/g3JhFKYsGOgUhcaG4oXertm9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732873829;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=nbYgtb24VgYFXjNM25phgxn4dBzOlwCSuzBt7dWTHWA=;
	b=Q9aAokhfQ+2MFgzJcQVVXmnQ4lcZkEi2cWBnKwpxsxfmq9jAJmTVL9B1rxFB+vFwSoq9Ey
	R2DfHsIuNOlO3F+9yesC8oxhp/tm9wl4Cidl0lt0xBrO4zCFsj5xw7L+aVJleb/n7iRhlY
	r96RURAungP9dOILoKQ9dKVnElcbqDahzlVe+HTWv0SNXLjXL3o9WG1wTUOcjp3HSQFxD0
	YWWITatPFg3LfuKemwWJEQvqIf5z67A/zcHiGbCMC9/whDR10gKthNIVz14GRyOQ/2ej7/
	B/m9Wu8xPw0sq9YWT8EETJgQf7cClMKu20hCoIxDmNIG5vTdGwy6dU70AQ1qoQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732873829; a=rsa-sha256; cv=none;
	b=FqA/V23dFFuVYgT9kToRZj+ZwxhmWOzpJxm3JqOHKoCJNKBXivC+7h63TKzcLg8P+wnP2t
	mBP2RtuMEVQhG/5bzm/vx+9U8z1j08cFoUoYmXhngwkNovXcvJA77+8lygDaUZ6TIYF7Zh
	9v9lTQanrW+y1L/CTJ/ZGxKpRrne56kAgTu+Sw5fgoLP+WvzXADej+dBwYGTlg3SWXmusQ
	MfrAyaJJoPsWbVKDOePC8Qw7+jvlzDHq3emEbAJppCImxaYfmJuCZQ45zi9hPOaFUCyJGu
	uCz5zibSwT/V2PsjzqfzOoXAOktsD885wDa7p4pWTRJtYZAuRyYGpLLDIxxmtg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y07hj35sQzHTM;
	Fri, 29 Nov 2024 09:50:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4AT9oTG8081725;
	Fri, 29 Nov 2024 09:50:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AT9oTQq081722;
	Fri, 29 Nov 2024 09:50:29 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 09:50:29 GMT
Message-Id: <202411290950.4AT9oTQq081722@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Richard Scheffenegger <rscheff@FreeBSD.org>
Subject: git: 347dd0539f3a - main - tcp: add TH_AE capabilities to
  ppp and pf
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: rscheff
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 347dd0539f3a75fdf2128dd4620ca99e96f311e9
Auto-Submitted: auto-generated

The branch main has been updated by rscheff:

URL: https://cgit.FreeBSD.org/src/commit/?id=347dd0539f3a75fdf2128dd4620ca99e96f311e9

commit 347dd0539f3a75fdf2128dd4620ca99e96f311e9
Author:     Richard Scheffenegger <rscheff@FreeBSD.org>
AuthorDate: 2024-11-29 08:50:24 +0000
Commit:     Richard Scheffenegger <rscheff@FreeBSD.org>
CommitDate: 2024-11-29 09:04:31 +0000

    tcp: add TH_AE capabilities to ppp and pf
    
    Add support for the AE Flag in the TCP header to pf and ppp.
    Commonalize to the use of "E"(ECE), "W"(CWR) and "e"(AE)
    for the TCP header flags, in line with tcpdump.
    
    Reviewers: kp, cc, tuexen, cy, #transport!
    Sponsored by: NetApp, Inc.
    Differential Revision: https://reviews.freebsd.org/D47106
---
 sbin/ipf/common/ipf.h                    |  4 ++--
 sbin/ipf/ipf/ipf.5                       |  4 ++--
 sbin/ipf/ipftest/ipftest.1               |  2 +-
 sbin/ipf/iplang/iplang_y.y               |  8 ++++----
 sbin/ipf/ipmon/ipmon.c                   |  5 +++--
 sbin/ipf/ipsend/ip.c                     |  2 +-
 sbin/ipf/ipsend/ipsend.5                 |  3 ++-
 sbin/ipf/ipsend/ipsend.c                 | 25 +++++++++++++++++--------
 sbin/ipf/ipsend/iptests.c                | 23 +++++++++++------------
 sbin/ipf/ipsend/resend.c                 |  4 ++--
 sbin/ipf/libipf/flags.c                  |  9 ++++++---
 sbin/ipf/libipf/ipft_tx.c                | 22 +++++++++++-----------
 sbin/ipf/libipf/printpacket.c            | 23 +++++++++++++----------
 sbin/ipf/libipf/printtcpflags.c          |  6 +++---
 sbin/ipf/libipf/tcp_flags.c              | 12 ++++++------
 sbin/ipf/libipf/tcpflags.c               | 11 +++++++----
 sbin/pfctl/pfctl_parser.c                | 11 ++++++-----
 sbin/pfctl/pfctl_parser.h                |  2 --
 sys/net/pfvar.h                          |  2 +-
 sys/netinet/tcp.h                        |  2 +-
 sys/netpfil/ipfilter/netinet/ip_compat.h |  8 ++++----
 sys/netpfil/pf/pf.c                      |  4 +++-
 usr.sbin/ppp/ip.c                        |  4 ++--
 23 files changed, 108 insertions(+), 88 deletions(-)

diff --git a/sbin/ipf/common/ipf.h b/sbin/ipf/common/ipf.h
index 20a0087ed5a1..3e6ee594b8b6 100644
--- a/sbin/ipf/common/ipf.h
+++ b/sbin/ipf/common/ipf.h
@@ -178,7 +178,7 @@ typedef	int	(* copyfunc_t)(void *, void *, size_t);
 
 extern	char	thishost[MAXHOSTNAMELEN];
 extern	char	flagset[];
-extern	u_char	flags[];
+extern	uint16_t flags[];
 extern	struct ipopt_names ionames[];
 extern	struct ipopt_names secclass[];
 extern	char	*icmpcodes[MAX_ICMPCODE + 1];
@@ -330,7 +330,7 @@ extern int remove_hash(struct iphtable_s *, ioctlfunc_t);
 extern int remove_hashnode(int, char *, struct iphtent_s *, ioctlfunc_t);
 extern int remove_pool(ip_pool_t *, ioctlfunc_t);
 extern int remove_poolnode(int, char *, ip_pool_node_t *, ioctlfunc_t);
-extern u_char tcpflags(char *);
+extern uint16_t tcpflags(char *);
 extern void printc(struct frentry *);
 extern void printC(int);
 extern void emit(int, int, void *, struct frentry *);
diff --git a/sbin/ipf/ipf/ipf.5 b/sbin/ipf/ipf/ipf.5
index 32e9913353a0..4ff33290814a 100644
--- a/sbin/ipf/ipf/ipf.5
+++ b/sbin/ipf/ipf/ipf.5
@@ -533,10 +533,10 @@ When matching TCP flags, it is normal to just list the flag that you
 wish to be set. By default the set of flags it is compared against
 is "FSRPAU". Rules that say "flags S" will be displayed by ipfstat(8)
 as having "flags S/FSRPAU". This is normal.
-The last two flags, "C" and "E", are optional - they
+The last three flags, "E", "W" and "e", are optional - they
 may or may not be used by an end host and have no bearing on either
 the acceptance of data nor control of the connection. Masking them
-out with "flags S/FSRPAUCE" may cause problems for remote hosts
+out with "flags S/FSRPAUEWe" may cause problems for remote hosts
 making a successful connection.
 .PP
 .nf
diff --git a/sbin/ipf/ipftest/ipftest.1 b/sbin/ipf/ipftest/ipftest.1
index 5c5fe60901a0..456304c9d0b2 100644
--- a/sbin/ipf/ipftest/ipftest.1
+++ b/sbin/ipf/ipftest/ipftest.1
@@ -125,7 +125,7 @@ This is the default if no \fB\-F\fP argument is specified.
 The format used is as follows:
 .nf
 	"in"|"out" "on" if ["tcp"|"udp"|"icmp"]
-		srchost[,srcport] dsthost[,destport] [FSRPAU]
+		srchost[,srcport] dsthost[,destport] [FSRPAUEWe]
 .fi
 .PP
 This allows for a packet going "in" or "out" of an interface (if) to be
diff --git a/sbin/ipf/iplang/iplang_y.y b/sbin/ipf/iplang/iplang_y.y
index c5c7c729e0a9..ce55ad277c1a 100644
--- a/sbin/ipf/iplang/iplang_y.y
+++ b/sbin/ipf/iplang/iplang_y.y
@@ -1045,9 +1045,9 @@ void set_tcpsum(char **arg)
 
 void set_tcpflags(char **arg)
 {
-	static	char	flags[] = "ASURPF";
+	static	char	flags[] = "ASURPFEWe";
 	static	int	flagv[] = { TH_ACK, TH_SYN, TH_URG, TH_RST, TH_PUSH,
-				    TH_FIN } ;
+				    TH_FIN, TH_ECE, TH_CWR, TH_AE } ;
 	char *s, *t;
 
 	for (s = *arg; *s; s++)
@@ -1056,10 +1056,10 @@ void set_tcpflags(char **arg)
 				fprintf(stderr, "unknown TCP flag %c\n", *s);
 				break;
 			}
-			tcp->th_flags = strtol(*arg, NULL, 0);
+			__tcp_set_flags(tcp, strtol(*arg, NULL, 0));
 			break;
 		} else
-			tcp->th_flags |= flagv[t - flags];
+			__tcp_set_flags(tcp, __tcp_get_flags(tcp) | flagv[t - flags]);
 	free(*arg);
 	*arg = NULL;
 }
diff --git a/sbin/ipf/ipmon/ipmon.c b/sbin/ipf/ipmon/ipmon.c
index 80d1d406529a..a07401ff5e88 100644
--- a/sbin/ipf/ipmon/ipmon.c
+++ b/sbin/ipf/ipmon/ipmon.c
@@ -77,7 +77,8 @@ struct	flags	tcpfl[] = {
 	{ TH_URG, 'U' },
 	{ TH_PUSH,'P' },
 	{ TH_ECN, 'E' },
-	{ TH_CWR, 'C' },
+	{ TH_CWR, 'W' },
+	{ TH_AE,  'e' },
 	{ 0, '\0' }
 };
 
@@ -1196,7 +1197,7 @@ print_ipflog(config_t *conf, char *buf, int blen)
 				*t++ = ' ';
 				*t++ = '-';
 				for (i = 0; tcpfl[i].value; i++)
-					if (tp->th_flags & tcpfl[i].value)
+					if (__tcp_get_flags(tp) & tcpfl[i].value)
 						*t++ = tcpfl[i].flag;
 				if (ipmonopts & IPMON_VERBOSE) {
 					sprintf(t, " %lu %lu %hu",
diff --git a/sbin/ipf/ipsend/ip.c b/sbin/ipf/ipsend/ip.c
index 177563e65c9c..8cdfca893d15 100644
--- a/sbin/ipf/ipsend/ip.c
+++ b/sbin/ipf/ipsend/ip.c
@@ -261,7 +261,7 @@ send_tcp(int nfd, int mtu, ip_t *ip, struct in_addr gwip)
 
 	i = sizeof(struct tcpiphdr) / sizeof(long);
 
-	if ((t2->th_flags == TH_SYN) && !ntohs(ip->ip_off) &&
+	if ((__tcp_get_flags(t2) == TH_SYN) && !ntohs(ip->ip_off) &&
 	    (lbuf[i] != htonl(0x020405b4))) {
 		lbuf[i] = htonl(0x020405b4);
 		bcopy((char *)ip + hlen + thlen, (char *)ip + hlen + thlen + 4,
diff --git a/sbin/ipf/ipsend/ipsend.5 b/sbin/ipf/ipsend/ipsend.5
index 440cb0a5f23b..67c456e54d34 100644
--- a/sbin/ipf/ipsend/ipsend.5
+++ b/sbin/ipf/ipsend/ipsend.5
@@ -250,7 +250,8 @@ unset, it defaults to 0 and is automatically calculated.
 .TP
 .B flags <tcp-flags>
 sets the TCP flags field to match the flags specified.  Valid flags are
-"S" (SYN), "A" (ACK), "R" (RST), "F" (FIN), "U" (URG), "P" (PUSH).
+"S" (SYN), "A" (ACK), "R" (RST), "F" (FIN), "U" (URG), "P" (PUSH),
+"E" (ECE), "W" (CWR), "e" (AE).
 .TP
 .B opt
 indicates that TCP header options follow.  As TCP options are added to the
diff --git a/sbin/ipf/ipsend/ipsend.c b/sbin/ipf/ipsend/ipsend.c
index 83440d7cb097..2e2cf8f36fa2 100644
--- a/sbin/ipf/ipsend/ipsend.c
+++ b/sbin/ipf/ipsend/ipsend.c
@@ -365,22 +365,31 @@ main(int argc, char **argv)
 			switch(c)
 			{
 			case 'S' : case 's' :
-				tcp->th_flags |= TH_SYN;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_SYN);
 				break;
 			case 'A' : case 'a' :
-				tcp->th_flags |= TH_ACK;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_ACK);
 				break;
 			case 'F' : case 'f' :
-				tcp->th_flags |= TH_FIN;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_FIN);
 				break;
 			case 'R' : case 'r' :
-				tcp->th_flags |= TH_RST;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_RST);
 				break;
 			case 'P' : case 'p' :
-				tcp->th_flags |= TH_PUSH;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_PUSH);
 				break;
 			case 'U' : case 'u' :
-				tcp->th_flags |= TH_URG;
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_URG);
+				break;
+			case 'E' :
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_ECE);
+				break;
+			case 'W' :
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_CWR);
+				break;
+			case 'e' :
+				__tcp_set_flags(tcp, __tcp_get_flags(tcp) | TH_AE);
 				break;
 			}
 
@@ -390,8 +399,8 @@ main(int argc, char **argv)
 	printf("Source:  %s\n", inet_ntoa(ip->ip_src));
 	printf("Dest:    %s\n", inet_ntoa(ip->ip_dst));
 	printf("Gateway: %s\n", inet_ntoa(gwip));
-	if (ip->ip_p == IPPROTO_TCP && tcp->th_flags)
-		printf("Flags:   %#x\n", tcp->th_flags);
+	if (ip->ip_p == IPPROTO_TCP && __tcp_get_flags(tcp))
+		printf("Flags:   %#x\n", __tcp_get_flags(tcp));
 	printf("mtu:     %d\n", mtu);
 
 	if (ip->ip_p == IPPROTO_UDP) {
diff --git a/sbin/ipf/ipsend/iptests.c b/sbin/ipf/ipsend/iptests.c
index 1015e74a3254..eb8001b579d8 100644
--- a/sbin/ipf/ipsend/iptests.c
+++ b/sbin/ipf/ipsend/iptests.c
@@ -924,9 +924,8 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 		 */
 		TCP_OFF_A(t, sizeof(*t) >> 2);
 		printf("5.1 Test TCP flag combinations\n");
-		for (i = 0; i <= (TH_URG|TH_ACK|TH_PUSH|TH_RST|TH_SYN|TH_FIN);
-		     i++) {
-			t->th_flags = i;
+		for (i = 0; i <= TH_FLAGS; i++) {
+			__tcp_set_flags(t, i);
 			(void) send_tcp(nfd, mtu, ip, gwip);
 			printf("%d\r", i);
 			fflush(stdout);
@@ -936,7 +935,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 	}
 
 	if (!ptest || (ptest == 2)) {
-		t->th_flags = TH_SYN;
+		__tcp_set_flags(t, TH_SYN);
 		/*
 		 * Test 2: seq = 0, seq = 1, seq = 0x7fffffff, seq=0x80000000,
 		 *         seq = 0xa000000, seq = 0xffffffff
@@ -979,7 +978,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 	}
 
 	if (!ptest || (ptest == 3)) {
-		t->th_flags = TH_ACK;
+		__tcp_set_flags(t, TH_ACK);
 		/*
 		 * Test 3: ack = 0, ack = 1, ack = 0x7fffffff, ack = 0x8000000
 		 *         ack = 0xa000000, ack = 0xffffffff
@@ -1022,7 +1021,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 	}
 
 	if (!ptest || (ptest == 4)) {
-		t->th_flags = TH_SYN;
+		__tcp_set_flags(t, TH_SYN);
 		/*
 		 * Test 4: win = 0, win = 32768, win = 65535
 		 */
@@ -1092,7 +1091,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 		/*
 		 * Test 5: urp
 		 */
-		t->th_flags = TH_ACK|TH_URG;
+		__tcp_set_flags(t, TH_ACK|TH_URG);
 		printf("5.5.1 TCP Urgent pointer, sport %hu dport %hu\n",
 			ntohs(t->th_sport), ntohs(t->th_dport));
 		t->th_urp = htons(1);
@@ -1111,7 +1110,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 		(void) send_tcp(nfd, mtu, ip, gwip);
 		PAUSE();
 		t->th_urp = 0;
-		t->th_flags &= ~TH_URG;
+		__tcp_set_flags(t, __tcp_get_flags(t) & ~TH_URG);
 		ip->ip_len = sizeof(ip_t) + sizeof(tcphdr_t);
 	}
 
@@ -1119,7 +1118,7 @@ ip_test5(char *dev, int mtu, ip_t *ip, struct  in_addr gwip, int ptest)
 		/*
 		 * Test 6: data offset, off = 0, off is inside, off is outside
 		 */
-		t->th_flags = TH_ACK;
+		__tcp_set_flags(t, TH_ACK);
 		printf("5.6.1 TCP off = 1-15, len = 40\n");
 		for (i = 1; i < 16; i++) {
 			TCP_OFF_A(t, ntohs(i));
@@ -1141,7 +1140,7 @@ skip_five_and_six:
 	TCP_OFF_A(t, 0);
 
 	if (!ptest || (ptest == 7)) {
-		t->th_flags = TH_SYN;
+		__tcp_set_flags(t, TH_SYN);
 		/*
 		 * Test 7: sport = 0, sport = 1, sport = 32767
 		 *         sport = 32768, sport = 65535
@@ -1179,7 +1178,7 @@ skip_five_and_six:
 
 	if (!ptest || (ptest == 8)) {
 		t->th_sport = htons(1);
-		t->th_flags = TH_SYN;
+		__tcp_set_flags(t, TH_SYN);
 		/*
 		 * Test 8: dport = 0, dport = 1, dport = 32767
 		 *         dport = 32768, dport = 65535
@@ -1221,7 +1220,7 @@ skip_five_and_six:
 		/* chose SMTP port 25 */
 		t->th_sport = htons(25);
 		t->th_dport = htons(25);
-		t->th_flags = TH_SYN;
+		__tcp_set_flags(t, TH_SYN);
 		ip->ip_src = ip->ip_dst;
 		(void) send_tcp(nfd, mtu, ip, gwip);
 		fflush(stdout);
diff --git a/sbin/ipf/ipsend/resend.c b/sbin/ipf/ipsend/resend.c
index 1512f8293c8c..bbecf46e51c0 100644
--- a/sbin/ipf/ipsend/resend.c
+++ b/sbin/ipf/ipsend/resend.c
@@ -51,8 +51,8 @@ dumppacket(ip_t *ip)
 		printf(" seq %lu:%lu flags ",
 			(u_long)t->th_seq, (u_long)t->th_ack);
 		for (j = 0, i = 1; i < 256; i *= 2, j++)
-			if (t->th_flags & i)
-				printf("%c", "FSRPAU--"[j]);
+			if (__tcp_get_flags(t) & i)
+				printf("%c", "FSRPAUEWe"[j]);
 	}
 	putchar('\n');
 }
diff --git a/sbin/ipf/libipf/flags.c b/sbin/ipf/libipf/flags.c
index f16624b97d4f..b476936e0dba 100644
--- a/sbin/ipf/libipf/flags.c
+++ b/sbin/ipf/libipf/flags.c
@@ -18,7 +18,10 @@
 #ifndef TH_CWR
 # define	TH_CWR  0x80
 #endif
+#ifndef TH_AE
+# define	TH_AE  0x100
+#endif
 
-char	flagset[] = "FSRPAUEC";
-u_char	flags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH, TH_ACK, TH_URG,
-		    TH_ECN, TH_CWR };
+char	flagset[] = "FSRPAUEWe";
+uint16_t flags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH, TH_ACK, TH_URG,
+		    TH_ECN, TH_CWR, TH_AE };
diff --git a/sbin/ipf/libipf/ipft_tx.c b/sbin/ipf/libipf/ipft_tx.c
index e54a7e15f982..87e0fcb449d2 100644
--- a/sbin/ipf/libipf/ipft_tx.c
+++ b/sbin/ipf/libipf/ipft_tx.c
@@ -20,9 +20,9 @@ static	int	text_open(char *), text_close(void);
 static	int	text_readip(mb_t *, char **, int *);
 static	int	parseline(char *, ip_t *, char **, int *);
 
-static	char	myflagset[] = "FSRPAUEC";
-static	u_char	myflags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH,
-				TH_ACK, TH_URG, TH_ECN, TH_CWR };
+static	char	myflagset[] = "FSRPAUEWe";
+static	uint16_t myflags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH,
+				TH_ACK, TH_URG, TH_ECN, TH_CWR, TH_AE };
 
 struct	ipread	iptext = { text_open, text_close, text_readip, R_DO_CKSUM };
 static	FILE	*tfp = NULL;
@@ -265,15 +265,15 @@ parseline(char *line, ip_t *ip, char **ifn, int *out)
 		if (*cpp != NULL) {
 			char	*s, *t;
 
-			tcp->th_flags = 0;
+			__tcp_set_flags(tcp, 0);
 			for (s = *cpp; *s; s++)
 				if ((t  = strchr(myflagset, *s)))
-					tcp->th_flags |= myflags[t-myflagset];
-			if (tcp->th_flags)
+					__tcp_set_flags(tcp, __tcp_get_flags(tcp) | myflags[t-myflagset]);
+			if (__tcp_get_flags(tcp))
 				cpp++;
 		}
 
-		if (tcp->th_flags & TH_URG)
+		if (__tcp_get_flags(tcp) & TH_URG)
 			tcp->th_urp = htons(1);
 
 		if (*cpp && !strncasecmp(*cpp, "seq=", 4)) {
@@ -436,15 +436,15 @@ parseipv6(char **cpp, ip6_t *ip6, char **ifn, int *out)
 		if (*cpp != NULL) {
 			char *s, *t;
 
-			tcp->th_flags = 0;
+			__tcp_set_flags(tcp, 0);
 			for (s = *cpp; *s; s++)
 				if ((t  = strchr(myflagset, *s)))
-					tcp->th_flags |= myflags[t-myflagset];
-			if (tcp->th_flags)
+					__tcp_set_flags(tcp, __tcp_get_flags(tcp) | myflags[t-myflagset]);
+			if (__tcp_get_flags(tcp))
 				cpp++;
 		}
 
-		if (tcp->th_flags & TH_URG)
+		if (__tcp_get_flags(tcp) & TH_URG)
 			tcp->th_urp = htons(1);
 
 		if (*cpp && !strncasecmp(*cpp, "seq=", 4)) {
diff --git a/sbin/ipf/libipf/printpacket.c b/sbin/ipf/libipf/printpacket.c
index a48725a220e0..5d1d79bb4bb9 100644
--- a/sbin/ipf/libipf/printpacket.c
+++ b/sbin/ipf/libipf/printpacket.c
@@ -19,6 +19,7 @@ printpacket(int dir, mb_t *m)
 {
 	u_short len, off;
 	tcphdr_t *tcp;
+	uint16_t tcpflags;
 	ip_t *ip;
 
 	ip = MTOD(m, ip_t *);
@@ -82,24 +83,26 @@ printpacket(int dir, mb_t *m)
 	if (!(off & IP_OFFMASK)) {
 		if (ip->ip_p == IPPROTO_TCP || ip->ip_p == IPPROTO_UDP)
 			PRINTF(",%d", ntohs(tcp->th_dport));
-		if ((ip->ip_p == IPPROTO_TCP) && (tcp->th_flags != 0)) {
+		if ((ip->ip_p == IPPROTO_TCP) && ((tcpflags = __tcp_get_flags(tcp)) != 0)) {
 			putchar(' ');
-			if (tcp->th_flags & TH_FIN)
+			if (tcpflags & TH_FIN)
 				putchar('F');
-			if (tcp->th_flags & TH_SYN)
+			if (tcpflags & TH_SYN)
 				putchar('S');
-			if (tcp->th_flags & TH_RST)
+			if (tcpflags & TH_RST)
 				putchar('R');
-			if (tcp->th_flags & TH_PUSH)
+			if (tcpflags & TH_PUSH)
 				putchar('P');
-			if (tcp->th_flags & TH_ACK)
+			if (tcpflags & TH_ACK)
 				putchar('A');
-			if (tcp->th_flags & TH_URG)
+			if (tcpflags & TH_URG)
 				putchar('U');
-			if (tcp->th_flags & TH_ECN)
+			if (tcpflags & TH_ECN)
 				putchar('E');
-			if (tcp->th_flags & TH_CWR)
-				putchar('C');
+			if (tcpflags & TH_CWR)
+				putchar('W');
+			if (tcpflags & TH_AE)
+				putchar('e');
 		}
 	}
 
diff --git a/sbin/ipf/libipf/printtcpflags.c b/sbin/ipf/libipf/printtcpflags.c
index d134fb4a3120..349e18be127e 100644
--- a/sbin/ipf/libipf/printtcpflags.c
+++ b/sbin/ipf/libipf/printtcpflags.c
@@ -4,10 +4,10 @@
 void
 printtcpflags(u_32_t tcpf, u_32_t tcpfm)
 {
-	u_char *t;
+	uint16_t *t;
 	char *s;
 
-	if (tcpf & ~TCPF_ALL) {
+	if (tcpf & ~TH_FLAGS) {
 		PRINTF("0x%x", tcpf);
 	} else {
 		for (s = flagset, t = flags; *s; s++, t++) {
@@ -18,7 +18,7 @@ printtcpflags(u_32_t tcpf, u_32_t tcpfm)
 
 	if (tcpfm) {
 		(void)putchar('/');
-		if (tcpfm & ~TCPF_ALL) {
+		if (tcpfm & ~TH_FLAGS) {
 			PRINTF("0x%x", tcpfm);
 		} else {
 			for (s = flagset, t = flags; *s; s++, t++)
diff --git a/sbin/ipf/libipf/tcp_flags.c b/sbin/ipf/libipf/tcp_flags.c
index 0156d8cd7f31..9247933ee85b 100644
--- a/sbin/ipf/libipf/tcp_flags.c
+++ b/sbin/ipf/libipf/tcp_flags.c
@@ -9,13 +9,13 @@
 
 #include "ipf.h"
 
-extern	char	flagset[];
-extern	u_char	flags[];
+extern	char	 flagset[];
+extern	uint16_t flags[];
 
 
-u_char tcp_flags(char *flgs, u_char *mask, int linenum)
+uint16_t tcp_flags(char *flgs, uint16_t *mask, int linenum)
 {
-	u_char tcpf = 0, tcpfm = 0;
+	uint16_t tcpf = 0, tcpfm = 0;
 	char *s;
 
 	s = strchr(flgs, '/');
@@ -37,9 +37,9 @@ u_char tcp_flags(char *flgs, u_char *mask, int linenum)
 
 	if (!tcpfm) {
 		if (tcpf == TH_SYN)
-			tcpfm = 0xff & ~(TH_ECN|TH_CWR);
+			tcpfm = TH_FLAGS & ~(TH_ECN|TH_CWR);
 		else
-			tcpfm = 0xff & ~(TH_ECN);
+			tcpfm = TH_FLAGS & ~(TH_ECN);
 	}
 	*mask = tcpfm;
 	return (tcpf);
diff --git a/sbin/ipf/libipf/tcpflags.c b/sbin/ipf/libipf/tcpflags.c
index 92437d1be798..46b64e96deda 100644
--- a/sbin/ipf/libipf/tcpflags.c
+++ b/sbin/ipf/libipf/tcpflags.c
@@ -19,14 +19,17 @@
 #ifndef TH_CWR
 # define	TH_CWR  0x80
 #endif
+#ifndef TH_AE
+# define	TH_AE  0x100
+#endif
 
-extern	char	flagset[];
-extern	u_char	flags[];
+extern	char	 flagset[];
+extern	uint16_t flags[];
 
 
-u_char tcpflags(char *flgs)
+uint16_t tcpflags(char *flgs)
 {
-	u_char tcpf = 0;
+	uint16_t tcpf = 0;
 	char *s, *t;
 
 	for (s = flgs; *s; s++) {
diff --git a/sbin/pfctl/pfctl_parser.c b/sbin/pfctl/pfctl_parser.c
index c25e96e645fb..d6d04ba2a7de 100644
--- a/sbin/pfctl/pfctl_parser.c
+++ b/sbin/pfctl/pfctl_parser.c
@@ -44,6 +44,7 @@
 #include <netinet/ip.h>
 #include <netinet/ip_icmp.h>
 #include <netinet/icmp6.h>
+#include <netinet/tcp.h>
 #include <net/pfvar.h>
 #include <arpa/inet.h>
 
@@ -67,7 +68,7 @@
 void		 print_op (u_int8_t, const char *, const char *);
 void		 print_port (u_int8_t, u_int16_t, u_int16_t, const char *, int);
 void		 print_ugid (u_int8_t, unsigned, unsigned, const char *, unsigned);
-void		 print_flags (u_int8_t);
+void		 print_flags (uint16_t);
 void		 print_fromto(struct pf_rule_addr *, pf_osfp_t,
 		    struct pf_rule_addr *, sa_family_t, u_int8_t, int, int);
 int		 ifa_skip_if(const char *filter, struct node_host *p);
@@ -77,7 +78,7 @@ struct node_host	*host_v4(const char *, int);
 struct node_host	*host_v6(const char *, int);
 struct node_host	*host_dns(const char *, int, int);
 
-const char * const tcpflags = "FSRPAUEW";
+const char * const tcpflags = "FSRPAUEWe";
 
 static const struct icmptypeent icmp_type[] = {
 	{ "echoreq",	ICMP_ECHO },
@@ -365,7 +366,7 @@ print_ugid(u_int8_t op, unsigned u1, unsigned u2, const char *t, unsigned umax)
 }
 
 void
-print_flags(u_int8_t f)
+print_flags(uint16_t f)
 {
 	int	i;
 
@@ -1286,7 +1287,7 @@ int
 parse_flags(char *s)
 {
 	char		*p, *q;
-	u_int8_t	 f = 0;
+	uint16_t	 f = 0;
 
 	for (p = s; *p; p++) {
 		if ((q = strchr(tcpflags, *p)) == NULL)
@@ -1294,7 +1295,7 @@ parse_flags(char *s)
 		else
 			f |= 1 << (q - tcpflags);
 	}
-	return (f ? f : PF_TH_ALL);
+	return (f ? f : TH_FLAGS);
 }
 
 void
diff --git a/sbin/pfctl/pfctl_parser.h b/sbin/pfctl/pfctl_parser.h
index e6959e0b95a7..498027f5968c 100644
--- a/sbin/pfctl/pfctl_parser.h
+++ b/sbin/pfctl/pfctl_parser.h
@@ -55,8 +55,6 @@
 #define PF_OPT_RECURSE		0x4000
 #define PF_OPT_KILLMATCH	0x8000
 
-#define PF_TH_ALL		0xFF
-
 #define PF_NAT_PROXY_PORT_LOW	50001
 #define PF_NAT_PROXY_PORT_HIGH	65535
 
diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h
index 51f525c7383b..0a0a17d2c754 100644
--- a/sys/net/pfvar.h
+++ b/sys/net/pfvar.h
@@ -2343,7 +2343,7 @@ extern struct pf_ksrc_node	*pf_find_src_node(struct pf_addr *,
 extern void			 pf_unlink_src_node(struct pf_ksrc_node *);
 extern u_int			 pf_free_src_nodes(struct pf_ksrc_node_list *);
 extern void			 pf_print_state(struct pf_kstate *);
-extern void			 pf_print_flags(u_int8_t);
+extern void			 pf_print_flags(uint16_t);
 extern int			 pf_addr_wrap_neq(struct pf_addr_wrap *,
 				    struct pf_addr_wrap *);
 extern u_int16_t		 pf_cksum_fixup(u_int16_t, u_int16_t, u_int16_t,
diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h
index 613019a575e8..69a8116a2201 100644
--- a/sys/netinet/tcp.h
+++ b/sys/netinet/tcp.h
@@ -71,7 +71,7 @@ struct tcphdr {
 #define	TH_RES3	0x200
 #define	TH_RES2	0x400
 #define	TH_RES1	0x800
-#define	TH_FLAGS	(TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG|TH_ECE|TH_CWR)
+#define	TH_FLAGS	(TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG|TH_ECE|TH_CWR|TH_AE)
 #define	PRINT_TH_FLAGS	"\20\1FIN\2SYN\3RST\4PUSH\5ACK\6URG\7ECE\10CWR\11AE"
 
 	u_short	th_win;			/* window */
diff --git a/sys/netpfil/ipfilter/netinet/ip_compat.h b/sys/netpfil/ipfilter/netinet/ip_compat.h
index c73af315b132..67fc878f65ba 100644
--- a/sys/netpfil/ipfilter/netinet/ip_compat.h
+++ b/sys/netpfil/ipfilter/netinet/ip_compat.h
@@ -695,9 +695,6 @@ typedef	struct	tcpiphdr	tcpiphdr_t;
 #endif
 #define	IPMINLEN(i, h)	((i)->ip_len >= (IP_HL(i) * 4 + sizeof(struct h)))
 
-#define	TCPF_ALL	(TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG|\
-			 TH_ECN|TH_CWR)
-
 #if !SOLARIS && !defined(m_act)
 # define	m_act	m_nextpkt
 #endif
@@ -1128,7 +1125,10 @@ typedef	struct	tcpiphdr	tcpiphdr_t;
 #ifndef TH_CWR
 # define	TH_CWR	0x80
 #endif
-#define	TH_ECNALL	(TH_ECN|TH_CWR)
+#ifndef TH_AE
+# define	TH_AE	0x100
+#endif
+#define	TH_ECNALL	(TH_ECN|TH_CWR|TH_AE)
 
 /*
  * TCP States
diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index 1e9cd8e0f7d3..db23559774d0 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -2934,7 +2934,7 @@ pf_print_state_parts(struct pf_kstate *s,
 }
 
 void
-pf_print_flags(u_int8_t f)
+pf_print_flags(uint16_t f)
 {
 	if (f)
 		printf(" ");
@@ -2954,6 +2954,8 @@ pf_print_flags(u_int8_t f)
 		printf("E");
 	if (f & TH_CWR)
 		printf("W");
+	if (f & TH_AE)
+		printf("e");
 }
 
 #define	PF_SET_SKIP_STEPS(i)					\
diff --git a/usr.sbin/ppp/ip.c b/usr.sbin/ppp/ip.c
index 978470a875ac..b4c38f1933e5 100644
--- a/usr.sbin/ppp/ip.c
+++ b/usr.sbin/ppp/ip.c
@@ -561,7 +561,7 @@ PacketCheck(struct bundle *bundle, u_int32_t family,
 {
   char logbuf[200];
   static const char *const TcpFlags[] = {
-    "FIN", "SYN", "RST", "PSH", "ACK", "URG"
+    "FIN", "SYN", "RST", "PSH", "ACK", "URG", "ECE", "CWR", "AE"
   };
   const struct tcphdr *th;
   const struct udphdr *uh;
@@ -830,7 +830,7 @@ PacketCheck(struct bundle *bundle, u_int32_t family,
                "%s:%d", ncpaddr_ntoa(&dstaddr), ntohs(th->th_dport));
       loglen += strlen(logbuf + loglen);
       n = 0;
-      for (mask = TH_FIN; mask != 0x40; mask <<= 1) {
+      for (mask = TH_FIN; mask <= TH_FLAGS; mask <<= 1) {
         if (__tcp_get_flags(th) & mask) {
           snprintf(logbuf + loglen, sizeof logbuf - loglen, " %s", TcpFlags[n]);
           loglen += strlen(logbuf + loglen);

From nobody Fri Nov 29 12:22:16 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0C3s09Wcz5f5n9;
	Fri, 29 Nov 2024 12:22: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0C3r6Wl8z46fK;
	Fri, 29 Nov 2024 12:22:16 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732882936;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=fIQVyLDuCik11bfqqi17iX6NxQERW8nR3insNQRQsPw=;
	b=DxFQSjdT9mnN1luMvDUeGdmv9isWjeWbHnvdqcFycXfdn4EuPiGYDcgc06sbEKpErOcUZ6
	IjylU9IushDlGYdQ32kitoypEeM4Ibmi8MK4JAe86s5z4qYqbkoMCTnkxwphVxxhmyekMi
	b28BUubUuIOKzpW7MlKgFP8QYDbf43iLHi7J/9muZCVGVos/lRjB2hXs7FEI34Ee1rY41P
	98fcsMLKfEDqNnrOx5D0EG04fgJeeNiPSuDZc6eWdGMlFMzdIJeJtxm6aNneq3vhbmNg14
	XUgv9Rb0Rn3eOKNSWy0A5yXRW09YJXZ2OIH1OjpLI010Oo8Ymnzn/l0FNigbwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732882936;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=fIQVyLDuCik11bfqqi17iX6NxQERW8nR3insNQRQsPw=;
	b=o4UrQssDwuBDYEqWrNAke6FXYDGplXOiCBS62F5Mutuxt9ceTsy5vmVDjUFtjsBndLzstb
	bl3GgqpYqdFuZZm1oPORyowyaTZh3eycIOKdm2c6ektoB8soe9LLMhI8Z1xnILt56gOCY4
	4AdGGwHAMwjsK3VhWzeFOlkHL46XGDxtnPd59j51rEHWYS9ifzHCN+4UKyir69NE0GTfnF
	pS9DRoGfaApF5iEOCIa+GdJTzuRYZspbmt2sWOvNJe3JeFkCUrmxkS+U8Kwq3R7xZR3xpi
	IBsJaRWr41A3LdFZxDEnWYjLGzVt4u/bNjn2DFzxk63dREVAsap5I8PjPpGyVg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732882936; a=rsa-sha256; cv=none;
	b=aOvhaODbmFcjeLvYUE/W+zeZhF13duZTDM9cA1K7MYsCCIr7TaUfVo3XFFJ0kvy/WtvX0Y
	9RmJktGEvziY1TUgrnlyExFGHw7WSwyfclc9iCTznWH/FXRQPEBdMGSBLM+zo1/eB/C8Ai
	Qh2i7/CSkVM6AsRS+O/CcUqeZW/PxfbSrKDszxTVqVraVz0r4F9gX7HQ6kn2z04UEyaHa0
	Zp+kTZ8Ny56c1hVdAEn9V7PYN9/3CqIlw65Jdl+20b5EpwtQcWrsBhEXM1m26AWZS6jwZK
	3ltpdbc/rDL/nkGzytAHlno4p/kmXmWWOrPM145n/fi0nLg27yo/kFIr2pmHFA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0C3r65BMzMx7;
	Fri, 29 Nov 2024 12:22: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 4ATCMG3b068268;
	Fri, 29 Nov 2024 12:22:16 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATCMG8Y068265;
	Fri, 29 Nov 2024 12:22:16 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 12:22:16 GMT
Message-Id: <202411291222.4ATCMG8Y068265@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Subject: git: b165e9e3ea4e - main - Add fchroot(2)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: trasz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: b165e9e3ea4e327fc421d81c2a89242bd8720780
Auto-Submitted: auto-generated

The branch main has been updated by trasz:

URL: https://cgit.FreeBSD.org/src/commit/?id=b165e9e3ea4e327fc421d81c2a89242bd8720780

commit b165e9e3ea4e327fc421d81c2a89242bd8720780
Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
AuthorDate: 2024-11-29 07:46:07 +0000
Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
CommitDate: 2024-11-29 12:10:02 +0000

    Add fchroot(2)
    
    This is similar to chroot(2), but takes a file descriptor instead
    of path.  Same syscall exists in NetBSD and Solaris.  It is part of a larger
    patch to make absolute pathnames usable in Capsicum mode, but should
    be useful in other contexts too.
    
    Reviewed By:    brooks
    Sponsored by:   Innovate UK
    Differential Revision:  https://reviews.freebsd.org/D41564
---
 include/unistd.h                  |  1 +
 lib/libsys/Makefile.sys           |  1 +
 lib/libsys/Symbol.sys.map         |  1 +
 lib/libsys/chroot.2               | 40 ++++++++++++++++++-
 share/man/man4/rights.4           |  5 ++-
 sys/kern/subr_capability.c        |  2 +
 sys/kern/syscalls.master          |  5 +++
 sys/kern/vfs_syscalls.c           | 84 +++++++++++++++++++++++++++++----------
 sys/sys/caprights.h               |  1 +
 sys/sys/capsicum.h                |  7 ++--
 usr.bin/procstat/procstat_files.c |  1 +
 11 files changed, 120 insertions(+), 28 deletions(-)

diff --git a/include/unistd.h b/include/unistd.h
index 48155bb2971b..8574b2ba9915 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -507,6 +507,7 @@ int	 exect(const char *, char * const *, char * const *);
 int	 execvP(const char *, const char *, char * const *);
 int	 execvpe(const char *, char * const *, char * const *);
 int	 feature_present(const char *);
+int	 fchroot(int);
 char	*fflagstostr(u_long);
 int	 getdomainname(char *, int);
 int	 getentropy(void *, size_t);
diff --git a/lib/libsys/Makefile.sys b/lib/libsys/Makefile.sys
index 4be64a98bb96..04e767d50f86 100644
--- a/lib/libsys/Makefile.sys
+++ b/lib/libsys/Makefile.sys
@@ -399,6 +399,7 @@ MLINKS+=chmod.2 fchmod.2 \
 MLINKS+=chown.2 fchown.2 \
 	chown.2 fchownat.2 \
 	chown.2 lchown.2
+MLINKS+=chroot.2 fchroot.2
 MLINKS+=clock_gettime.2 clock_getres.2 \
 	clock_gettime.2 clock_settime.2
 MLINKS+=closefrom.2 close_range.2
diff --git a/lib/libsys/Symbol.sys.map b/lib/libsys/Symbol.sys.map
index 85373b1f9cda..3e2f14497b07 100644
--- a/lib/libsys/Symbol.sys.map
+++ b/lib/libsys/Symbol.sys.map
@@ -378,6 +378,7 @@ FBSD_1.7 {
 };
 
 FBSD_1.8 {
+	fchroot;
 	getrlimitusage;
 	kcmp;
 };
diff --git a/lib/libsys/chroot.2 b/lib/libsys/chroot.2
index af187bf30b2c..4c06e3673e03 100644
--- a/lib/libsys/chroot.2
+++ b/lib/libsys/chroot.2
@@ -25,11 +25,12 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd September 29, 2020
+.Dd July 15, 2024
 .Dt CHROOT 2
 .Os
 .Sh NAME
-.Nm chroot
+.Nm chroot ,
+.Nm fchroot
 .Nd change root directory
 .Sh LIBRARY
 .Lb libc
@@ -37,6 +38,8 @@
 .In unistd.h
 .Ft int
 .Fn chroot "const char *dirname"
+.Ft int
+.Fn fchroot "int fd"
 .Sh DESCRIPTION
 The
 .Fa dirname
@@ -92,6 +95,12 @@ will bypass the check for open directories,
 mimicking the historic insecure behavior of
 .Fn chroot
 still present on other systems.
+.Pp
+The
+.Fn fchroot
+system call is identical to
+.Fn chroot
+except it takes a file descriptor instead of path.
 .Sh RETURN VALUES
 .Rv -std
 .Sh ERRORS
@@ -124,6 +133,29 @@ An I/O error occurred while reading from or writing to the file system.
 .It Bq Er EINTEGRITY
 Corrupted data was detected while reading from the file system.
 .El
+.Pp
+The
+.Fn fchroot
+system call
+will fail and the root directory will be unchanged if:
+.Bl -tag -width Er
+.It Bq Er EACCES
+Search permission is denied for the directory referenced by the
+file descriptor.
+.It Bq Er EBADF
+The argument
+.Fa fd
+is not a valid file descriptor.
+.It Bq Er EIO
+An I/O error occurred while reading from or writing to the file system.
+.It Bq Er EINTEGRITY
+Corrupted data was detected while reading from the file system.
+.It Bq Er ENOTDIR
+The file descriptor does not reference a directory.
+.It Bq Er EPERM
+The effective user ID is not the super-user, or one or more
+filedescriptors are open directories.
+.El
 .Sh SEE ALSO
 .Xr chdir 2 ,
 .Xr jail 2
@@ -137,6 +169,10 @@ It was marked as
 in
 .St -susv2 ,
 and was removed in subsequent standards.
+The
+.Fn fchroot
+system call first appeared in
+.Fx 15.0 .
 .Sh BUGS
 If the process is able to change its working directory to the target
 directory, but another access control check fails (such as a check for
diff --git a/share/man/man4/rights.4 b/share/man/man4/rights.4
index 3e5e18fc65d8..0c24f6b45f88 100644
--- a/share/man/man4/rights.4
+++ b/share/man/man4/rights.4
@@ -30,7 +30,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd April 27, 2024
+.Dd May 1, 2024
 .Dt RIGHTS 4
 .Os
 .Sh NAME
@@ -209,6 +209,9 @@ An alias to
 .Dv CAP_FCHOWN
 and
 .Dv CAP_LOOKUP .
+.It Dv CAP_FCHROOT
+Permit
+.Xr fchroot 2 .
 .It Dv CAP_FCNTL
 Permit
 .Xr fcntl 2 .
diff --git a/sys/kern/subr_capability.c b/sys/kern/subr_capability.c
index 1f3a181a91cb..a97c16d6d7df 100644
--- a/sys/kern/subr_capability.c
+++ b/sys/kern/subr_capability.c
@@ -59,6 +59,7 @@ __read_mostly cap_rights_t cap_fchdir_rights;
 __read_mostly cap_rights_t cap_fchflags_rights;
 __read_mostly cap_rights_t cap_fchmod_rights;
 __read_mostly cap_rights_t cap_fchown_rights;
+__read_mostly cap_rights_t cap_fchroot_rights;
 __read_mostly cap_rights_t cap_fcntl_rights;
 __read_mostly cap_rights_t cap_fexecve_rights;
 __read_mostly cap_rights_t cap_flock_rights;
@@ -108,6 +109,7 @@ cap_rights_sysinit(void *arg)
 	cap_rights_init_one(&cap_fchflags_rights, CAP_FCHFLAGS);
 	cap_rights_init_one(&cap_fchmod_rights, CAP_FCHMOD);
 	cap_rights_init_one(&cap_fchown_rights, CAP_FCHOWN);
+	cap_rights_init_one(&cap_fchroot_rights, CAP_FCHROOT);
 	cap_rights_init_one(&cap_fcntl_rights, CAP_FCNTL);
 	cap_rights_init_one(&cap_fexecve_rights, CAP_FEXECVE);
 	cap_rights_init_one(&cap_flock_rights, CAP_FLOCK);
diff --git a/sys/kern/syscalls.master b/sys/kern/syscalls.master
index 2bbd20b5a5b0..e7f577d48426 100644
--- a/sys/kern/syscalls.master
+++ b/sys/kern/syscalls.master
@@ -3341,5 +3341,10 @@
 		    _Out_ rlim_t *res
 		);
 	}
+590	AUE_NULL	STD {
+		int fchroot(
+		    int fd
+		);
+	}
 
 ; vim: syntax=off
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index ab0e562e73aa..7a1677c945e3 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -967,18 +967,13 @@ static int unprivileged_chroot = 0;
 SYSCTL_INT(_security_bsd, OID_AUTO, unprivileged_chroot, CTLFLAG_RW,
     &unprivileged_chroot, 0,
     "Unprivileged processes can use chroot(2)");
+
 /*
- * Change notion of root (``/'') directory.
+ * Takes locked vnode, unlocks it before returning.
  */
-#ifndef _SYS_SYSPROTO_H_
-struct chroot_args {
-	char	*path;
-};
-#endif
-int
-sys_chroot(struct thread *td, struct chroot_args *uap)
+static int
+kern_chroot(struct thread *td, struct vnode *vp)
 {
-	struct nameidata nd;
 	struct proc *p;
 	int error;
 
@@ -989,30 +984,75 @@ sys_chroot(struct thread *td, struct chroot_args *uap)
 		if (unprivileged_chroot == 0 ||
 		    (p->p_flag2 & P2_NO_NEW_PRIVS) == 0) {
 			PROC_UNLOCK(p);
-			return (error);
+			goto e_vunlock;
 		}
 		PROC_UNLOCK(p);
 	}
-	NDINIT(&nd, LOOKUP, FOLLOW | LOCKSHARED | LOCKLEAF | AUDITVNODE1,
-	    UIO_USERSPACE, uap->path);
-	error = namei(&nd);
-	if (error != 0)
-		return (error);
-	NDFREE_PNBUF(&nd);
-	error = change_dir(nd.ni_vp, td);
+
+	error = change_dir(vp, td);
 	if (error != 0)
 		goto e_vunlock;
 #ifdef MAC
-	error = mac_vnode_check_chroot(td->td_ucred, nd.ni_vp);
+	error = mac_vnode_check_chroot(td->td_ucred, vp);
 	if (error != 0)
 		goto e_vunlock;
 #endif
-	VOP_UNLOCK(nd.ni_vp);
-	error = pwd_chroot(td, nd.ni_vp);
-	vrele(nd.ni_vp);
+	VOP_UNLOCK(vp);
+	error = pwd_chroot(td, vp);
+	vrele(vp);
 	return (error);
 e_vunlock:
-	vput(nd.ni_vp);
+	vput(vp);
+	return (error);
+}
+
+/*
+ * Change notion of root (``/'') directory.
+ */
+#ifndef _SYS_SYSPROTO_H_
+struct chroot_args {
+	char	*path;
+};
+#endif
+int
+sys_chroot(struct thread *td, struct chroot_args *uap)
+{
+	struct nameidata nd;
+	int error;
+
+	NDINIT(&nd, LOOKUP, FOLLOW | LOCKSHARED | LOCKLEAF | AUDITVNODE1,
+	    UIO_USERSPACE, uap->path);
+	error = namei(&nd);
+	if (error != 0)
+		return (error);
+	NDFREE_PNBUF(&nd);
+	error = kern_chroot(td, nd.ni_vp);
+	return (error);
+}
+
+/*
+ * Change notion of root directory to a given file descriptor.
+ */
+#ifndef _SYS_SYSPROTO_H_
+struct fchroot_args {
+	int	fd;
+};
+#endif
+int
+sys_fchroot(struct thread *td, struct fchroot_args *uap)
+{
+	struct vnode *vp;
+	struct file *fp;
+	int error;
+
+	error = getvnode_path(td, uap->fd, &cap_fchroot_rights, &fp);
+	if (error != 0)
+		return (error);
+	vp = fp->f_vnode;
+	vrefact(vp);
+	fdrop(fp, td);
+	vn_lock(vp, LK_SHARED | LK_RETRY);
+	error = kern_chroot(td, vp);
 	return (error);
 }
 
diff --git a/sys/sys/caprights.h b/sys/sys/caprights.h
index 32ae05172e24..62711545114d 100644
--- a/sys/sys/caprights.h
+++ b/sys/sys/caprights.h
@@ -66,6 +66,7 @@ extern cap_rights_t cap_fchdir_rights;
 extern cap_rights_t cap_fchflags_rights;
 extern cap_rights_t cap_fchmod_rights;
 extern cap_rights_t cap_fchown_rights;
+extern cap_rights_t cap_fchroot_rights;
 extern cap_rights_t cap_fcntl_rights;
 extern cap_rights_t cap_fexecve_rights;
 extern cap_rights_t cap_flock_rights;
diff --git a/sys/sys/capsicum.h b/sys/sys/capsicum.h
index 5c6813d2a450..9b50986ede0a 100644
--- a/sys/sys/capsicum.h
+++ b/sys/sys/capsicum.h
@@ -201,6 +201,9 @@
 /* Allows for renameat(2) (target directory descriptor). */
 #define	CAP_RENAMEAT_TARGET	(CAP_LOOKUP | 0x0000040000000000ULL)
 
+/* Allows for fchroot(2). */
+#define	CAP_FCHROOT		CAPRIGHT(0, 0x0000080000000000ULL)
+
 #define	CAP_SOCK_CLIENT \
 	(CAP_CONNECT | CAP_GETPEERNAME | CAP_GETSOCKNAME | CAP_GETSOCKOPT | \
 	 CAP_PEELOFF | CAP_RECV | CAP_SEND | CAP_SETSOCKOPT | CAP_SHUTDOWN)
@@ -210,11 +213,9 @@
 	 CAP_SETSOCKOPT | CAP_SHUTDOWN)
 
 /* All used bits for index 0. */
-#define	CAP_ALL0		CAPRIGHT(0, 0x000007FFFFFFFFFFULL)
+#define	CAP_ALL0		CAPRIGHT(0, 0x00000FFFFFFFFFFFULL)
 
 /* Available bits for index 0. */
-#define	CAP_UNUSED0_44		CAPRIGHT(0, 0x0000080000000000ULL)
-/* ... */
 #define	CAP_UNUSED0_57		CAPRIGHT(0, 0x0100000000000000ULL)
 
 /* INDEX 1 */
diff --git a/usr.bin/procstat/procstat_files.c b/usr.bin/procstat/procstat_files.c
index 359c2d13c86d..bd9bbfc358c9 100644
--- a/usr.bin/procstat/procstat_files.c
+++ b/usr.bin/procstat/procstat_files.c
@@ -149,6 +149,7 @@ static struct cap_desc {
 	{ CAP_FCHFLAGS,		"cf" },
 	{ CAP_FCHMOD,		"cm" },
 	{ CAP_FCHOWN,		"cn" },
+	{ CAP_FCHROOT,		"ct" },
 	{ CAP_FCNTL,		"fc" },
 	{ CAP_FLOCK,		"fl" },
 	{ CAP_FPATHCONF,	"fp" },

From nobody Fri Nov 29 12:22:17 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0C3t2kBPz5f5HP;
	Fri, 29 Nov 2024 12:22: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0C3t1V9Kz46vd;
	Fri, 29 Nov 2024 12:22:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732882938;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=PycokH3mFwTjOpkdhm42cBfuDC2Ng+sCP+Ow5Fd8puU=;
	b=etCqZy7LOpYIeWwak8hnYm0wJ8xOmL5sZvHUx8P7kpGgpvohQvfKat66UqC/dPtofAGGMt
	Ok3a9ptri6YgaH4E6nm3EM3u+sh4kvRCoBiMzHWolh4q+0Ji9B1hs/LWxV++rwCkGQW9l8
	fngolwbIBJACMe84ZmsvUmah52CphuSrcGGoOvuyIf6Qmr19TerdtjfJ4nwizefoZNCO6U
	8eu8ziU5QjpfNp0ot3RyNP/xGR32HpQ+s7WNE+gSMJwOAYd6PfPRjY9tytPRIqgYnsIwB5
	IoFWqxJq4/dc8rj4u+2Zis1FxS7oV2qF/tTK3d4h6s0OlhhcO9d+ywn7k6XTLA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732882938;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=PycokH3mFwTjOpkdhm42cBfuDC2Ng+sCP+Ow5Fd8puU=;
	b=UA3EE2JB5AMvB3s3WWSZI7CXflHiIn++HozU9R7JWpGHss4B0HHaOrqsw+QX212dtst3b7
	/iNckI9oi5FADlXoUVbZGXx0w+7ZmBuauHtJvJNg1lqZqu8Se4MAk3HmMygcaq5S2xtvrW
	uM9eDYtB+NCA06uekrnZuaEr7hL8DHed7i/VD/wIz4LV4l7EeFnsiFwCFRplfWt6Y+XKVA
	Rd3DBYODy98D02mlsrC0VlM2YiHVumF8QCoNt3hLbFRRtRs89hsx7IyQrPm/FrD/nbQqDC
	7TQMCyKdFqRFj6TtkKsgsrepxdcVdE8hhhsKiqs8aPgWMtV5XEfT2usTFUWSWw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732882938; a=rsa-sha256; cv=none;
	b=tDpbUueb6kH3olsCPRGapPkwggpiBcc1d9HbPgR8Rxj08Vz41zTfzgSwcr9dJvsalQ8bn0
	AJ0/Bi1OYY5T51phZz7oWEyq4GZzjqsjyAaboDqI6UDZ3SSd/hHjYgy1qmjFWDBwsB9grG
	3U9rDBp16sTpCqYIabe6wX4h3r9Rujqndtn4Vm6xhbME+h+EjORksxepAXOv8OYGwucz0y
	l5WNSG+zcdyN9I5RuEout8/Cm4z/6CSTbunFUnFViYQMnK9uy/pNxULsfx3o7ntZbMuRSN
	nn1VBuH9TdNQ7U+RTJpi016/6+u7DqcHbT2DdtxKOO9a+M+qLs7hZClaDcm3hg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0C3s6zVNzNT0;
	Fri, 29 Nov 2024 12:22: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 4ATCMH3e068301;
	Fri, 29 Nov 2024 12:22:17 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATCMHP3068298;
	Fri, 29 Nov 2024 12:22:17 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 12:22:17 GMT
Message-Id: <202411291222.4ATCMHP3068298@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Subject: git: 60f87c736807 - main - Regen
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: trasz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 60f87c736807bd2b5a3ebe451add868232facf43
Auto-Submitted: auto-generated

The branch main has been updated by trasz:

URL: https://cgit.FreeBSD.org/src/commit/?id=60f87c736807bd2b5a3ebe451add868232facf43

commit 60f87c736807bd2b5a3ebe451add868232facf43
Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
AuthorDate: 2024-11-29 12:10:45 +0000
Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
CommitDate: 2024-11-29 12:10:45 +0000

    Regen
---
 lib/libsys/_libsys.h                           |  2 ++
 lib/libsys/syscalls.map                        |  2 ++
 sys/compat/freebsd32/freebsd32_syscall.h       |  3 ++-
 sys/compat/freebsd32/freebsd32_syscalls.c      |  1 +
 sys/compat/freebsd32/freebsd32_sysent.c        |  1 +
 sys/compat/freebsd32/freebsd32_systrace_args.c | 22 ++++++++++++++++++++++
 sys/kern/init_sysent.c                         |  1 +
 sys/kern/syscalls.c                            |  1 +
 sys/kern/systrace_args.c                       | 22 ++++++++++++++++++++++
 sys/sys/syscall.h                              |  3 ++-
 sys/sys/syscall.mk                             |  3 ++-
 sys/sys/sysproto.h                             |  5 +++++
 12 files changed, 63 insertions(+), 3 deletions(-)

diff --git a/lib/libsys/_libsys.h b/lib/libsys/_libsys.h
index 00d966661786..894f49185fbc 100644
--- a/lib/libsys/_libsys.h
+++ b/lib/libsys/_libsys.h
@@ -463,6 +463,7 @@ typedef int (__sys_timerfd_gettime_t)(int, struct itimerspec *);
 typedef int (__sys_timerfd_settime_t)(int, int, const struct itimerspec *, struct itimerspec *);
 typedef int (__sys_kcmp_t)(pid_t, pid_t, int, uintptr_t, uintptr_t);
 typedef int (__sys_getrlimitusage_t)(u_int, int, rlim_t *);
+typedef int (__sys_fchroot_t)(int);
 
 void __sys_exit(int rval);
 int __sys_fork(void);
@@ -863,6 +864,7 @@ int __sys_timerfd_gettime(int fd, struct itimerspec * curr_value);
 int __sys_timerfd_settime(int fd, int flags, const struct itimerspec * new_value, struct itimerspec * old_value);
 int __sys_kcmp(pid_t pid1, pid_t pid2, int type, uintptr_t idx1, uintptr_t idx2);
 int __sys_getrlimitusage(u_int which, int flags, rlim_t * res);
+int __sys_fchroot(int fd);
 __END_DECLS
 
 #endif /* __LIBSYS_H_ */
diff --git a/lib/libsys/syscalls.map b/lib/libsys/syscalls.map
index 62a2a2005262..9e748c659c46 100644
--- a/lib/libsys/syscalls.map
+++ b/lib/libsys/syscalls.map
@@ -805,4 +805,6 @@ FBSDprivate_1.0 {
 	__sys_kcmp;
 	_getrlimitusage;
 	__sys_getrlimitusage;
+	_fchroot;
+	__sys_fchroot;
 };
diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h
index 44f55fb7d13b..a68154ad9c13 100644
--- a/sys/compat/freebsd32/freebsd32_syscall.h
+++ b/sys/compat/freebsd32/freebsd32_syscall.h
@@ -508,4 +508,5 @@
 #define	FREEBSD32_SYS_freebsd32_timerfd_settime	587
 #define	FREEBSD32_SYS_kcmp	588
 #define	FREEBSD32_SYS_getrlimitusage	589
-#define	FREEBSD32_SYS_MAXSYSCALL	590
+#define	FREEBSD32_SYS_fchroot	590
+#define	FREEBSD32_SYS_MAXSYSCALL	591
diff --git a/sys/compat/freebsd32/freebsd32_syscalls.c b/sys/compat/freebsd32/freebsd32_syscalls.c
index 0dee48aa564a..daf2e217cf03 100644
--- a/sys/compat/freebsd32/freebsd32_syscalls.c
+++ b/sys/compat/freebsd32/freebsd32_syscalls.c
@@ -595,4 +595,5 @@ const char *freebsd32_syscallnames[] = {
 	"freebsd32_timerfd_settime",			/* 587 = freebsd32_timerfd_settime */
 	"kcmp",			/* 588 = kcmp */
 	"getrlimitusage",			/* 589 = getrlimitusage */
+	"fchroot",			/* 590 = fchroot */
 };
diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c
index 386650e5afea..d7fe60a8c5f4 100644
--- a/sys/compat/freebsd32/freebsd32_sysent.c
+++ b/sys/compat/freebsd32/freebsd32_sysent.c
@@ -657,4 +657,5 @@ struct sysent freebsd32_sysent[] = {
 	{ .sy_narg = AS(freebsd32_timerfd_settime_args), .sy_call = (sy_call_t *)freebsd32_timerfd_settime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC },	/* 587 = freebsd32_timerfd_settime */
 	{ .sy_narg = AS(kcmp_args), .sy_call = (sy_call_t *)sys_kcmp, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },	/* 588 = kcmp */
 	{ .sy_narg = AS(getrlimitusage_args), .sy_call = (sy_call_t *)sys_getrlimitusage, .sy_auevent = AUE_NULL, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC },	/* 589 = getrlimitusage */
+	{ .sy_narg = AS(fchroot_args), .sy_call = (sy_call_t *)sys_fchroot, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },	/* 590 = fchroot */
 };
diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c
index ce0b37b178f9..dd82d0f44f6a 100644
--- a/sys/compat/freebsd32/freebsd32_systrace_args.c
+++ b/sys/compat/freebsd32/freebsd32_systrace_args.c
@@ -3378,6 +3378,13 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
 		*n_args = 3;
 		break;
 	}
+	/* fchroot */
+	case 590: {
+		struct fchroot_args *p = params;
+		iarg[a++] = p->fd; /* int */
+		*n_args = 1;
+		break;
+	}
 	default:
 		*n_args = 0;
 		break;
@@ -9126,6 +9133,16 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
 			break;
 		};
 		break;
+	/* fchroot */
+	case 590:
+		switch (ndx) {
+		case 0:
+			p = "int";
+			break;
+		default:
+			break;
+		};
+		break;
 	default:
 		break;
 	};
@@ -11014,6 +11031,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
 		if (ndx == 0 || ndx == 1)
 			p = "int";
 		break;
+	/* fchroot */
+	case 590:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	default:
 		break;
 	};
diff --git a/sys/kern/init_sysent.c b/sys/kern/init_sysent.c
index 8b0f50c8d7e1..21860f697940 100644
--- a/sys/kern/init_sysent.c
+++ b/sys/kern/init_sysent.c
@@ -656,4 +656,5 @@ struct sysent sysent[] = {
 	{ .sy_narg = AS(timerfd_settime_args), .sy_call = (sy_call_t *)sys_timerfd_settime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC },	/* 587 = timerfd_settime */
 	{ .sy_narg = AS(kcmp_args), .sy_call = (sy_call_t *)sys_kcmp, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },	/* 588 = kcmp */
 	{ .sy_narg = AS(getrlimitusage_args), .sy_call = (sy_call_t *)sys_getrlimitusage, .sy_auevent = AUE_NULL, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC },	/* 589 = getrlimitusage */
+	{ .sy_narg = AS(fchroot_args), .sy_call = (sy_call_t *)sys_fchroot, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },	/* 590 = fchroot */
 };
diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c
index a2af13617dee..414edab93e33 100644
--- a/sys/kern/syscalls.c
+++ b/sys/kern/syscalls.c
@@ -595,4 +595,5 @@ const char *syscallnames[] = {
 	"timerfd_settime",			/* 587 = timerfd_settime */
 	"kcmp",			/* 588 = kcmp */
 	"getrlimitusage",			/* 589 = getrlimitusage */
+	"fchroot",			/* 590 = fchroot */
 };
diff --git a/sys/kern/systrace_args.c b/sys/kern/systrace_args.c
index d70d7942ff58..63c26f605e88 100644
--- a/sys/kern/systrace_args.c
+++ b/sys/kern/systrace_args.c
@@ -3465,6 +3465,13 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
 		*n_args = 3;
 		break;
 	}
+	/* fchroot */
+	case 590: {
+		struct fchroot_args *p = params;
+		iarg[a++] = p->fd; /* int */
+		*n_args = 1;
+		break;
+	}
 	default:
 		*n_args = 0;
 		break;
@@ -9271,6 +9278,16 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
 			break;
 		};
 		break;
+	/* fchroot */
+	case 590:
+		switch (ndx) {
+		case 0:
+			p = "int";
+			break;
+		default:
+			break;
+		};
+		break;
 	default:
 		break;
 	};
@@ -11249,6 +11266,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
 		if (ndx == 0 || ndx == 1)
 			p = "int";
 		break;
+	/* fchroot */
+	case 590:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	default:
 		break;
 	};
diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h
index 2a200f12f3c1..f2c1f954d5e5 100644
--- a/sys/sys/syscall.h
+++ b/sys/sys/syscall.h
@@ -526,4 +526,5 @@
 #define	SYS_timerfd_settime	587
 #define	SYS_kcmp	588
 #define	SYS_getrlimitusage	589
-#define	SYS_MAXSYSCALL	590
+#define	SYS_fchroot	590
+#define	SYS_MAXSYSCALL	591
diff --git a/sys/sys/syscall.mk b/sys/sys/syscall.mk
index 692c7d621471..29ad3f1cce51 100644
--- a/sys/sys/syscall.mk
+++ b/sys/sys/syscall.mk
@@ -432,4 +432,5 @@ MIASM =  \
 	timerfd_gettime.o \
 	timerfd_settime.o \
 	kcmp.o \
-	getrlimitusage.o
+	getrlimitusage.o \
+	fchroot.o
diff --git a/sys/sys/sysproto.h b/sys/sys/sysproto.h
index 26817db8d755..5b3de6053a95 100644
--- a/sys/sys/sysproto.h
+++ b/sys/sys/sysproto.h
@@ -1882,6 +1882,9 @@ struct getrlimitusage_args {
 	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
 	char res_l_[PADL_(rlim_t *)]; rlim_t * res; char res_r_[PADR_(rlim_t *)];
 };
+struct fchroot_args {
+	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+};
 int	sys_exit(struct thread *, struct exit_args *);
 int	sys_fork(struct thread *, struct fork_args *);
 int	sys_read(struct thread *, struct read_args *);
@@ -2282,6 +2285,7 @@ int	sys_timerfd_gettime(struct thread *, struct timerfd_gettime_args *);
 int	sys_timerfd_settime(struct thread *, struct timerfd_settime_args *);
 int	sys_kcmp(struct thread *, struct kcmp_args *);
 int	sys_getrlimitusage(struct thread *, struct getrlimitusage_args *);
+int	sys_fchroot(struct thread *, struct fchroot_args *);
 
 #ifdef COMPAT_43
 
@@ -3262,6 +3266,7 @@ int	freebsd13_swapoff(struct thread *, struct freebsd13_swapoff_args *);
 #define	SYS_AUE_timerfd_settime	AUE_TIMERFD
 #define	SYS_AUE_kcmp	AUE_NULL
 #define	SYS_AUE_getrlimitusage	AUE_NULL
+#define	SYS_AUE_fchroot	AUE_NULL
 
 #undef PAD_
 #undef PADL_

From nobody Fri Nov 29 15:24:43 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0H6k0sL4z5fK1W;
	Fri, 29 Nov 2024 15:25:02 +0000 (UTC)
	(envelope-from kostikbel@gmail.com)
Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0H6j3Wsxz4RWy;
	Fri, 29 Nov 2024 15:25:01 +0000 (UTC)
	(envelope-from kostikbel@gmail.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: from tom.home (kib@localhost [127.0.0.1] (may be forged))
	by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 4ATFOhOG038492;
	Fri, 29 Nov 2024 17:24:46 +0200 (EET)
	(envelope-from kostikbel@gmail.com)
DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 4ATFOhOG038492
Received: (from kostik@localhost)
	by tom.home (8.18.1/8.18.1/Submit) id 4ATFOhij038491;
	Fri, 29 Nov 2024 17:24:43 +0200 (EET)
	(envelope-from kostikbel@gmail.com)
X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f
Date: Fri, 29 Nov 2024 17:24:43 +0200
From: Konstantin Belousov <kostikbel@gmail.com>
To: Edward Tomasz Napierala <trasz@freebsd.org>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
        dev-commits-src-main@freebsd.org
Subject: Re: git: b165e9e3ea4e - main - Add fchroot(2)
Message-ID: <Z0ncu8p149bHqCC_@kib.kiev.ua>
References: <202411291222.4ATCMG8Y068265@gitrepo.freebsd.org>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <202411291222.4ATCMG8Y068265@gitrepo.freebsd.org>
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00,
	DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM,
	NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.1
X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on tom.home
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]
X-Rspamd-Queue-Id: 4Y0H6j3Wsxz4RWy
X-Spamd-Bar: ----

On Fri, Nov 29, 2024 at 12:22:16PM +0000, Edward Tomasz Napierala wrote:
> The branch main has been updated by trasz:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=b165e9e3ea4e327fc421d81c2a89242bd8720780
> 
> commit b165e9e3ea4e327fc421d81c2a89242bd8720780
> Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> AuthorDate: 2024-11-29 07:46:07 +0000
> Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> CommitDate: 2024-11-29 12:10:02 +0000
> 
>     Add fchroot(2)
>     
>     This is similar to chroot(2), but takes a file descriptor instead
>     of path.  Same syscall exists in NetBSD and Solaris.  It is part of a larger
>     patch to make absolute pathnames usable in Capsicum mode, but should
>     be useful in other contexts too.

I wonder if it should be fchrootat(fd, path, flags) with the support for
AT_EMPTY_PATH instead.  Then fchroot() becomes the libc wrapper.

I can see arguments both pro and contra.  Main argument against is that
the immediate semantic is easily emulated by openat() + fchroot().  But
the freedom of adding the fchroot-specific flags might be worth considering.

From nobody Fri Nov 29 15:26:12 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0H842PWXz5fJwY;
	Fri, 29 Nov 2024 15:26: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0H841Gtpz4SBc;
	Fri, 29 Nov 2024 15:26:12 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732893972;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=5sTybl+hzIIMlLCj14ujgLs8pybiYN9y67h6GaZhkDc=;
	b=yJW5zDJH5MD2m9/dqJasxijrQJx1Qc+Xy1D95Ov3b84M9O2FftLHNsEXc998ixWtXFoPZl
	40qh970/TkYxS05a2KQBHWYwvdc+jf52IieymT192Kttkr75qKr7ThRj1YilrskEfgqWXZ
	18YGdsrtaEmUKBV4NpQ3aXBzSilpnwq5r/xA4cIa3c0sq1gAOVLKspLlqa/mXJ1r5K5UKt
	8bmG9+ZH4GdtV5oOKMPA84uqLNzqrPfFtX6Jk9jpK8dpzqIjBCsCDGgM5Lxreegx5a9f/B
	D9EjVrZONVOHFnicAWzd1MNgN8JY4767gyiizBaS5mhA4IQBMitqH2nuLQObmw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732893972;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=5sTybl+hzIIMlLCj14ujgLs8pybiYN9y67h6GaZhkDc=;
	b=nFzWtW42siHh0jjL7+I0MTgFAQ2YpTj85bp1NXG88Rd8Qf3yN3cQl3LCYiuNLqP2FtTO2D
	9i3bODu2k9ns9kpjR6HYrxdWYJ8KJLx5DScCs8lIlL4q7fm6YXSs3AQHPeyooLygcmr1qf
	WaTZW3POjdFRKV+pyF7zU09w0bKm+s3Vn9E4nU016G6YHY0ypgqu3eb/G66BcXpwYOKqph
	8zcZv5LB1kpGwyLQL5FDbPURFcZSYjfUHmFpWB4IVUj36b5SvC4+XbLU5RhYBUIA41JXX5
	1M7/fr4lCFTd/gUZZcy9+z1lEbeFdxshTy3tPD75xDRU+mmVuiCiUNa9MnB2XA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732893972; a=rsa-sha256; cv=none;
	b=N9bZlL/a8U2m9zevON/tMMQP0zDOrJ76+Neu3yPuwu5WK3ecRSPvdcW5FIpyjAhyAgTGy0
	xtc+HHQbuR4sMzVPrqVk24fgiP/JJq7IbuLrbvdXkh0aVmRZIAxdUufFLMB/t3UMb9w/mI
	QJCZ2Q+UZoKl2wIv39rnuuagw209t4cZIzl0n8Ig2gW4lgyWNPJTRm5LOCgq7gSgCAhaiE
	zeTftoYM95p41otwq+3fdCcbbGc8cW727QZQf7fV7Ho/8mQpFUdCenyJNQZnVrhnZ2kc/v
	LwDYAD/EieG6DyLxLFs2CunTxGTor2EqXeFGA+BubE6QYUMmXHDxBpzKZt6WFw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0H840tGkzTNQ;
	Fri, 29 Nov 2024 15:26: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 4ATFQCPf004922;
	Fri, 29 Nov 2024 15:26:12 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATFQCFW004919;
	Fri, 29 Nov 2024 15:26:12 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 15:26:12 GMT
Message-Id: <202411291526.4ATFQCFW004919@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 35ac34a23bc0 - main - stdio(3): correct summary
  information for fileno(3)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 35ac34a23bc0e54eb2a2314b906c6e7769dee7f0
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=35ac34a23bc0e54eb2a2314b906c6e7769dee7f0

commit 35ac34a23bc0e54eb2a2314b906c6e7769dee7f0
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-28 22:11:15 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-29 15:25:31 +0000

    stdio(3): correct summary information for fileno(3)
    
    Reviewed by:    emaste, imp
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47834
---
 lib/libc/stdio/stdio.3 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/libc/stdio/stdio.3 b/lib/libc/stdio/stdio.3
index 794baec5182f..cbb8a49df2c6 100644
--- a/lib/libc/stdio/stdio.3
+++ b/lib/libc/stdio/stdio.3
@@ -252,7 +252,7 @@ library conforms to
 .It "fgets	get a line from a stream"
 .It "fgetwc	get next wide character from input stream"
 .It "fgetws	get a line of wide characters from a stream"
-.It "fileno	check and reset stream status"
+.It "fileno	map a stream pointer to a file descriptor"
 .It "fopen	stream open functions"
 .It "fprintf	formatted output conversion"
 .It "fpurge	flush a stream"

From nobody Fri Nov 29 15:26:13 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0H855YZHz5fJwf;
	Fri, 29 Nov 2024 15:26: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0H853YH5z4Ry5;
	Fri, 29 Nov 2024 15:26:13 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732893973;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=MFgX5gt3eudmgP21ZhBwRZU0RmAy9+kctTAYoQhcWjM=;
	b=mybmYws5pNOIsgQcs1dKmvjpwbNxrir7bx597JCHCwzBqkdkkSbvsLDA6O4BfXLjYDckBY
	spSYud+BYwbfEEbqG9Pfhi5+p3tIC92j2pT//wLNUi9s9080w3hDO9xGLznz7ZEI4Mcpfe
	mDLnWkka0UWdNG9wCCJF9OIyCMbzswlzDYyMToEMf9rgwECS4siQ3gSMJoZdG5xbaeAk7Q
	IFmCgfyv3FElRVvyP0/5DgaK68kCufh/BXhompimkfbPzAeratsI9eVAygZyS/cSt5vvfq
	l7R+tx3569nPMt2teUY11pLRI4AyfHXl8PFBfxw7rAUohpJYOf18ZZBTK/fo7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732893973;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=MFgX5gt3eudmgP21ZhBwRZU0RmAy9+kctTAYoQhcWjM=;
	b=Jj0E/U36OJlq3Gh3apEmt4XWNFfyuk5NljyYLZ/KGQ3v4+YZM5XUp9ilwEWboXWIeTFbIk
	/GeXmZYOKhHB4zQAZh5mUsDChIjbTS9SB/pIPM+SO0lVc9xUgu8Nk0zWhb7/cQ+Rjjvgja
	r14/ff611L6R0LcvZtysZZypVBAaTCbk/OneWce4eGsrmjjIDjC1VVZXRsJl6YKUXAFnPs
	mk2MJKlJAiLSMLuUltwmMZtITg2arhXicB4h4cfvoCFMgAd1aMwc/0dh3fPJG3qjLCNmib
	28AfUuCFu874qOyET19TSOcQ/fWOHly3V7dTez530Pd0FFbd0lCFLpW/Vy/z2w==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732893973; a=rsa-sha256; cv=none;
	b=JThslM7t/K+UgrJFx5Zle+hKpCUw9EStzaAgflOcvemXre1PV65YUIzEUpQoFFk3WuroH2
	c3IUpuYN7kHwSRX+5ZQO0AESv5Ut7x9bBixR/JgRSgMTqmq4ao5tEe7h32sZg7pOcNeTb7
	Vc1U8mTbElLqiVQJ0cRMCRgAmJxNFY0fKWU9ztFW7L+Vl4+kvU0KkRK3gNFgdnQu/gQwRb
	YNzxLISMetE3fuGFXk4w5UGkRiFLkV1y+YqQ9biWZnNey36nmdpiE15NzFQ0gxRDdLQbHy
	EjOLcWN/Hma399pkdYULJn0qoQUEWmzeFOAa9DUwHGKm2CGUDIXuuz31TVcirQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0H852B3TzSpv;
	Fri, 29 Nov 2024 15:26: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 4ATFQDEU004973;
	Fri, 29 Nov 2024 15:26:13 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATFQDEf004970;
	Fri, 29 Nov 2024 15:26:13 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 15:26:13 GMT
Message-Id: <202411291526.4ATFQDEf004970@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Konstantin Belousov <kib@FreeBSD.org>
Subject: git: 7cd756ff4fe7 - main - fileno(3): set errno when
  returning -1
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kib
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 7cd756ff4fe7e65a9a3f588904998bf6f4b37623
Auto-Submitted: auto-generated

The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=7cd756ff4fe7e65a9a3f588904998bf6f4b37623

commit 7cd756ff4fe7e65a9a3f588904998bf6f4b37623
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-11-28 22:12:29 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-11-29 15:25:32 +0000

    fileno(3): set errno when returning -1
    
    as required by IEEE Std 1003.1â„¢-2024.
    
    PR:     283014
    Reported by:    Graham Percival <gperciva@tarsnap.com>
    Reviewed by:    emaste, imp
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D47834
---
 include/stdio.h         |  4 ----
 lib/libc/stdio/ferror.3 | 20 ++++++++++++++++++--
 lib/libc/stdio/fileno.c | 25 ++++++++++++++++++++-----
 3 files changed, 38 insertions(+), 11 deletions(-)

diff --git a/include/stdio.h b/include/stdio.h
index ee3ab3bfb986..3dedb8fd5a54 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -506,10 +506,6 @@ extern int __isthreaded;
 #define	ferror(p)	(!__isthreaded ? __sferror(p) : (ferror)(p))
 #define	clearerr(p)	(!__isthreaded ? __sclearerr(p) : (clearerr)(p))
 
-#if __POSIX_VISIBLE
-#define	fileno(p)	(!__isthreaded ? __sfileno(p) : (fileno)(p))
-#endif
-
 #define	getc(fp)	(!__isthreaded ? __sgetc(fp) : (getc)(fp))
 #define	putc(x, fp)	(!__isthreaded ? __sputc(x, fp) : (putc)(x, fp))
 
diff --git a/lib/libc/stdio/ferror.3 b/lib/libc/stdio/ferror.3
index 71671f69f247..b921c4280607 100644
--- a/lib/libc/stdio/ferror.3
+++ b/lib/libc/stdio/ferror.3
@@ -110,9 +110,25 @@ before calling them.
 These functions may be used to avoid the overhead of locking the stream
 and to prevent races when multiple threads are operating on the same stream.
 .Sh ERRORS
-These functions should not fail and do not set the external
-variable
+These functions, except
+.Fn fileno ,
+should not fail and do not set the external variable
 .Va errno .
+.Pp
+On error,
+.Fn fileno
+returns \-1 and sets
+.Va errno
+to one of the following values:
+.Bl -tag -width Er
+.It Bq Er EBADF
+The stream is not associated with a file.
+.It Bq Er EBADF
+The file descriptor underlying stream is not a valid file descriptor.
+.Pp
+Note that detection of this condition is not reliable, the error might
+be not reported.
+.El
 .Sh SEE ALSO
 .Xr open 2 ,
 .Xr fdopen 3 ,
diff --git a/lib/libc/stdio/fileno.c b/lib/libc/stdio/fileno.c
index 66502430dc3d..0ba242c1aed3 100644
--- a/lib/libc/stdio/fileno.c
+++ b/lib/libc/stdio/fileno.c
@@ -33,6 +33,7 @@
  */
 
 #include "namespace.h"
+#include <errno.h>
 #include <stdio.h>
 #include "un-namespace.h"
 #include "libc_private.h"
@@ -40,14 +41,29 @@
 #undef fileno
 #undef fileno_unlocked
 
+static int
+__fileno_impl(FILE *fp)
+{
+	int fd;
+
+	fd = fp->_file;
+	if (fd == -1)
+		errno = EBADF;
+	return (fd);
+}
+
 int
 fileno(FILE *fp)
 {
 	int fd;
 
-	FLOCKFILE(fp);
-	fd = __sfileno(fp);
-	FUNLOCKFILE(fp);
+	if (__isthreaded) {
+		FLOCKFILE(fp);
+		fd = __fileno_impl(fp);
+		FUNLOCKFILE(fp);
+	} else {
+		fd = __fileno_impl(fp);
+	}
 
 	return (fd);
 }
@@ -55,6 +71,5 @@ fileno(FILE *fp)
 int
 fileno_unlocked(FILE *fp)
 {
-
-	return (__sfileno(fp));
+	return (__fileno_impl(fp));
 }

From nobody Fri Nov 29 16:44:07 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0Jt355KBz5fPQX;
	Fri, 29 Nov 2024 16:44:11 +0000 (UTC)
	(envelope-from etnapierala@gmail.com)
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c])
	(using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "smtp.gmail.com", Issuer "WR4" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0Jt337x2z4btp;
	Fri, 29 Nov 2024 16:44:11 +0000 (UTC)
	(envelope-from etnapierala@gmail.com)
Authentication-Results: mx1.freebsd.org;
	none
Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-2ffa12ad18cso23944421fa.2;
        Fri, 29 Nov 2024 08:44:11 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1732898649; x=1733503449; darn=freebsd.org;
        h=in-reply-to:content-disposition:mime-version:references
         :mail-followup-to:message-id:subject:cc:to:from:date:sender:from:to
         :cc:subject:date:message-id:reply-to;
        bh=EYw5ilNUTdxt42NyFwGaXHBfyAo1i/9DMyD2QXXruA4=;
        b=czjwC2YwuiN9sob1njl9HxpTbEkPomWNNuY772DjlCt5H2gM8NOa6F0e+lGX5+Ej/c
         FJfjnNuDGOmnWn1lkzYvyTzRLWWIc2uFmAq3KIAPbR64t4hXIH0Cs3AoTnNnrS1HKdfT
         Hj99qRSRqfmq8ML+sgkvl47uCXwZKosyaMkg40Wwz2w7OavTj0GF0RkSzYq953CHB0Xw
         jxNtdyE3dnH7sdVo+Uwuyve/FyegH9n574nWqpIv8fhodPhXAOK6E/gUEeed0l0p8Ilo
         fmAYlVosphME0CgNkqdbelKaM1JAs8SY5ZDfgyiHfdIp7X6hXCZqU+oMcWH/Xxt3u06m
         aiSQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1732898649; x=1733503449;
        h=in-reply-to:content-disposition:mime-version:references
         :mail-followup-to:message-id:subject:cc:to:from:date:sender
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=EYw5ilNUTdxt42NyFwGaXHBfyAo1i/9DMyD2QXXruA4=;
        b=OPQKygnCm0f7aNrvo6vuBgz1uveu53DKlls7cSIb+mWK8GSNyCAPnoB+K7LC1398cm
         bqQtjkyTeKQZQYy1npcUxggAmJMBhG3Z8++/fIHOrylJeWG1Bnx0GByeVzuPawtIVMIb
         xJfsyYS8MmCCdpIEhxipxrbZ5bHegyBmHj2kcF0zxbrj2eHZSqPgmWAwFh8/TGnqIp3V
         /uQ1wI+5UGp42Rxxs9g3rrQkcoENvkPBKX7ecSTaSUoGUT2y9htEv7dN7LHPyQ6v/IAQ
         yAvGVYgZEhZd+md/MV1IftjsjqHPnD+fX7ttFJwjhRjYmNLBiaQP81t5wouSKRjV5cCX
         524A==
X-Forwarded-Encrypted: i=1; AJvYcCVJ1mLL9TGHS4lTn2+Yin8RVlMpPW57JUi5Ln2NBbwLrQYuna9dk2wApPK5Wsf7GvOFdbdqXaDKuXPrhi7PTbycvWclnpg=@freebsd.org, AJvYcCVx1ApYgdy5D5ok0xs/nzPoMDzwD6w/oQICfAOvINJR8ic1MKBVYpdJKWj9wRcwT9BkBEIIwWMqKj+H/zJ4F2m4GqJz@freebsd.org
X-Gm-Message-State: AOJu0YwdcLezqQsjFh/YXZtMTPTgvbNJ8Ndj1jzD1MJbX7lSXhRlTjQf
	CqKHHkdZIRIYLdqBjslkgIP4cuWwmQvkz4HOyJLOdS1R+iaOHEDL
X-Gm-Gg: ASbGncv10jPHm6Qe/Ngzt2G4jAHh1i9Ks1DJSNFCMLXb9e0jYXefdA90pnH0xFu3P6z
	FfpxO7epTPGuqiTYWMECGXOB+gtxFMk29kn0yov7jkHldMQaEz47OUxK56lfNl45vKm9J9Mkhjt
	zwTYSWE2CPnj3zaqDBRulKjtx/tCtClRyBek2lp4l44SG111I/ywx537i66+8QeFnYDfQiRk73L
	7zX1/tygp5E1HZMF9r0DIk45VnbPgeP1mdnvD6ysbfYkoU=
X-Google-Smtp-Source: AGHT+IHpWNPvAQVgJ69fwXpugRhW4POllzhwayKbpNDjusd659ezEtcf7I1GdIs1xMRrToB8R4M6ew==
X-Received: by 2002:a05:6512:2820:b0:53d:e41a:c1a5 with SMTP id 2adb3069b0e04-53df0115095mr8053865e87.57.1732898649187;
        Fri, 29 Nov 2024 08:44:09 -0800 (PST)
Received: from pustak.ultrahub ([84.68.156.19])
        by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-434aa781200sm88923365e9.25.2024.11.29.08.44.08
        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
        Fri, 29 Nov 2024 08:44:08 -0800 (PST)
Date: Fri, 29 Nov 2024 16:44:07 +0000
From: Edward Tomasz Napierala <trasz@freebsd.org>
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
	dev-commits-src-main@freebsd.org
Subject: Re: git: b165e9e3ea4e - main - Add fchroot(2)
Message-ID: <Z0nvV5GF33l-EdMz@pustak.ultrahub>
Mail-Followup-To: Konstantin Belousov <kostikbel@gmail.com>,
	src-committers@freebsd.org, dev-commits-src-all@freebsd.org,
	dev-commits-src-main@freebsd.org
References: <202411291222.4ATCMG8Y068265@gitrepo.freebsd.org>
 <Z0ncu8p149bHqCC_@kib.kiev.ua>
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <Z0ncu8p149bHqCC_@kib.kiev.ua>
X-Rspamd-Pre-Result: action=no action;
	module=replies;
	Message is reply to one we originated
X-Spamd-Result: default: False [-4.00 / 15.00];
	REPLY(-4.00)[];
	ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]
X-Rspamd-Queue-Id: 4Y0Jt337x2z4btp
X-Spamd-Bar: ----

On 1129T1724, Konstantin Belousov wrote:
> On Fri, Nov 29, 2024 at 12:22:16PM +0000, Edward Tomasz Napierala wrote:
> > The branch main has been updated by trasz:
> > 
> > URL: https://cgit.FreeBSD.org/src/commit/?id=b165e9e3ea4e327fc421d81c2a89242bd8720780
> > 
> > commit b165e9e3ea4e327fc421d81c2a89242bd8720780
> > Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > AuthorDate: 2024-11-29 07:46:07 +0000
> > Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > CommitDate: 2024-11-29 12:10:02 +0000
> > 
> >     Add fchroot(2)
> >     
> >     This is similar to chroot(2), but takes a file descriptor instead
> >     of path.  Same syscall exists in NetBSD and Solaris.  It is part of a larger
> >     patch to make absolute pathnames usable in Capsicum mode, but should
> >     be useful in other contexts too.
> 
> I wonder if it should be fchrootat(fd, path, flags) with the support for
> AT_EMPTY_PATH instead.  Then fchroot() becomes the libc wrapper.
> 
> I can see arguments both pro and contra.  Main argument against is that
> the immediate semantic is easily emulated by openat() + fchroot().  But
> the freedom of adding the fchroot-specific flags might be worth considering.

Yeah, I thought about that too.  In the end I decided to go with the simpler
API, because I like how it mirrors fchdir(2); both do something fundamentally
very similar, they set the default starting points for path lookups.
And we never had the need to add fchdirat(2).


From nobody Fri Nov 29 17:01:44 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0KGJ2bCYz5fQfk;
	Fri, 29 Nov 2024 17:01: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0KGJ28Mqz4dQp;
	Fri, 29 Nov 2024 17:01:44 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732899704;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=tQuEMN2qUjhhp8RDJjz8t94TbKwtCPmHdnsLh7gwnFw=;
	b=ki5spLjfd50V8I+hr5qSSVKQwiyt78oAcw2ep3dJ0i6tiRNW765/elwehpux6zCzvk+V6O
	XULrw02UTswcbI73ekdYlRHLqjBNYuA+Dft6+IIz1R53sgCn6fCDOyE9edYjP9Pkjw68hq
	5j+XaGA214xFxtH7SIqnQjm9+IifbDwIG5cJQwKLGgCVIeT8A48888dK+rwJfLMOO/kK5c
	NZ1o+PAkZFb0AIsOo+LRL2ytgnVVoenANtPe9v115oQzIwvIGSuDOE4lts1n+hNbb0qRM0
	gDl1CctUIOvJ2fy/bFGo/uEkvmr4yEWE6+4th5lWLlSMEKEhJKZi+gwcBHRGrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732899704;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=tQuEMN2qUjhhp8RDJjz8t94TbKwtCPmHdnsLh7gwnFw=;
	b=ZKmpjRJjkhYZ5ScKX5KIt71RUaMwe8J1iYA6vwIKfLCPtabkUDPuf5w5fln197iAey1UIL
	xOSNq1meBaAbkE9hvnUPnmvaQgATGa+ZlT3Ywdl3mEhtPfPOnBCRbXyyZ/dAVuzNbQoIJi
	D/Zp+KLs6uMBlFvV/R0O13Sap/VE+HlELxg9f9tFr8/3o22j+vBLnElukBoy64m6/FrqZO
	Hd8AwJFXHhlTxnk6I7OSTps0F53Dvy8qxTPLbA71/KN/m0RVNIP5HQrVtwNnQm4nssygwg
	lQDiAVyvHqq6KSHZIlAqo5aTLA9zT12GOjbPNaQPquf74TopWP17GCL5xI3SUA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732899704; a=rsa-sha256; cv=none;
	b=KzAXO+X9d2g5XC1ItWSkK6XOKv5dfWxRyKYse6neyFnE2kl7qKUFGztT6G7mipP+YVQPbG
	ifMA9dWq5RGIDOEcwoU/WZ7V7FUevkwx+8xaZ/eJbHMSrCh/Q+WycItrrz+EtmbXnT+Ouk
	6ziR5W6hqHh9e4cTU1ISoGbz+FC9JPjc444gQMO/3bJ0K5FFcyvLFHdu6nIJLZ3ar6Kv9/
	DZ6wSMnZ+7rACcJ2bm509V7XjRdoDdwrLuWB7xDMPelOsJDC2OGxqZ5+rKDla/n90e+Q9C
	FXiCeH8hOmaLo6SmkgTtrAxV2v1+B2taBdPFd2XGy49S8X3MyhpRVDS3eZ+w6w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0KGJ1hJ1zXQK;
	Fri, 29 Nov 2024 17:01: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 4ATH1ihv088545;
	Fri, 29 Nov 2024 17:01:44 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATH1iPp088542;
	Fri, 29 Nov 2024 17:01:44 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 17:01:44 GMT
Message-Id: <202411291701.4ATH1iPp088542@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: e090646d6f5a - main - ndp tests: Update to chase
  commit 9206c79961986
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: e090646d6f5a4a6848ecd4bcb1f2db498ea3b3e2
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=e090646d6f5a4a6848ecd4bcb1f2db498ea3b3e2

commit e090646d6f5a4a6848ecd4bcb1f2db498ea3b3e2
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-29 16:55:24 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-29 17:01:33 +0000

    ndp tests: Update to chase commit 9206c79961986
    
    "netstat -rn" no longer prints the default route using symbol names, but
    the test relied on it.  Update it to look for ::/0 instead.
    
    MFC after:      1 week
    Fixes:  9206c7996198 ("usr.bin/netstat: -n should not print symbolic names")
---
 tests/sys/netinet6/ndp.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/sys/netinet6/ndp.sh b/tests/sys/netinet6/ndp.sh
index 038a640f331e..24c0853d7361 100755
--- a/tests/sys/netinet6/ndp.sh
+++ b/tests/sys/netinet6/ndp.sh
@@ -163,12 +163,12 @@ ndp_slaac_default_route_body() {
 	while [ -z "$(jexec ${jname} ndp -r)" ]; do
 		sleep 0.1
 	done
-	atf_check -o match:"^default[[:space:]]+fe80:" \
+	atf_check -o match:"^::/0[[:space:]]+fe80:" \
 	    jexec ${jname} netstat -rn -6
 
 	# Get rid of the default route.
 	jexec ${jname} route -6 flush
-	atf_check -o not-match:"^default[[:space:]]+fe80:" \
+	atf_check -o not-match:"^::/0[[:space:]]+fe80:" \
 	    jexec ${jname} netstat -rn -6
 
 	# Send another RA, make sure that the default route is installed again.
@@ -180,7 +180,7 @@ ndp_slaac_default_route_body() {
 	while [ -z "$(jexec ${jname} ndp -r)" ]; do
 		sleep 0.1
 	done
-	atf_check -o match:"^default[[:space:]]+fe80:" \
+	atf_check -o match:"^::/0[[:space:]]+fe80:" \
 	    jexec ${jname} netstat -rn -6
 }
 

From nobody Fri Nov 29 19:00:58 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0Mvv0hpgz5fZFR;
	Fri, 29 Nov 2024 19:00: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0Mvv04sGz4pdS;
	Fri, 29 Nov 2024 19:00:59 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732906859;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2Mn/gmDQq/Kq/rdrII0o77SRf8r5Oyz5015rE3hkK6k=;
	b=LU/whPJRtCG42GegNzfs1LsKiovwDiF0wwQKG6IIJaUH69KzlDbQdDdcHSGUtKqrjwcsEV
	E5Ghn/of+IoPb6lcjeXdTHND9g3Iec8Z4doLJE+md8n7G8GLIW8vD1/qv8+jX2ixZM3XWE
	NZERQkov1hSeFQvUnNVL70pH2Px5/e+fcIx8EPNYc6/Ri/WQsd9Rq6+zgKirn1uGLdJcDj
	QF2bICcKb97+LXcCatpYmzis6BVFvtGoz2vxFEogl98CRiqZy5Ah/ZI2db0D4cpUYlyhc9
	J7l2n67QxRbCjOV3JFxFpkXcO45nHdxCse0uvUSD7/4In48HVxBFDOJQ5wecgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732906859;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=2Mn/gmDQq/Kq/rdrII0o77SRf8r5Oyz5015rE3hkK6k=;
	b=SYoqvjES3bVoiq547O5ufavj4ija644BmaQeEONvvtINmu7B0v24nnoipRcAolaTV0sJTR
	2M2o2ItjF+DUoQHh6LTIVBCgGO0Jst9gGMMYP9avtt3uHREg4SikOuG8I3DWkEx/oNUkLW
	WuGwINorv0XDtUwA5KIYi9Wnmmx1jA4AawdOOnVOaS8VX3JDIp3Vxp+dW/Y2pUBC1LjPIc
	+zBbJEvb+D2S9p8RLYPG5/kTiKVGiNM9vuhKSU9jsziSKecQ3LBEgOPXhWaILnt6RF/WWx
	Qmph2d+wJHaylGSiEKci3cqeVNW3Cp53ujrsh+ziYRcDVgqDkOpSQAZ3+kg3ww==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732906859; a=rsa-sha256; cv=none;
	b=R1bVvDeMnmY1Hqrfs4Vim1Oc4zzSRC7v/gLVotQN8bLmRBdWVX7XimkB+Mv7J2hZGBK4Tn
	rCBHMdYQm4CB2BjbTf84YWN/6V4NfQD0tFhqnCoaJ3Zkq7o7G1aokakxJLdtnreRCV3KMV
	H7DPVfeSgPQHHKPeE/F6dzQMdQcr4Jzw4tsfRbzUf2uDYDxMr5ka17R1o2KvYV78ETBiMS
	Yu9fvAg/JC4MX+4V4GMH3VU0RpIJpnURNvFjCaEvX83CEqsujGC/BU16dGV8LiNrr4viR+
	kmxEY8pANHyObhDR/qfknWPSE4uSYSjwopEXatG7HDAGioZumY5z4DSprWtwmQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0Mvt6p0MzbgP;
	Fri, 29 Nov 2024 19:00: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 4ATJ0wv8010156;
	Fri, 29 Nov 2024 19:00:58 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATJ0wPl010153;
	Fri, 29 Nov 2024 19:00:58 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 19:00:58 GMT
Message-Id: <202411291900.4ATJ0wPl010153@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Navdeep Parhar <np@FreeBSD.org>
Subject: git: 878413d5590c - main - cxgbe(4): Fix the name of the
  2 x 10/25 OCP card.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: np
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 878413d5590c9f24fb8a92ebca00899662594874
Auto-Submitted: auto-generated

The branch main has been updated by np:

URL: https://cgit.FreeBSD.org/src/commit/?id=878413d5590c9f24fb8a92ebca00899662594874

commit 878413d5590c9f24fb8a92ebca00899662594874
Author:     Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2024-11-29 18:17:49 +0000
Commit:     Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2024-11-29 18:21:43 +0000

    cxgbe(4): Fix the name of the 2 x 10/25 OCP card.
    
    Reported by:    Sony Arpita Das @ Chelsio
    Fixes:  5c15094916bf cxgbe(4): Update the board names of the T6 OCP cards.
    MFC after:      1 week
    Sponsored by:   Chelsio Communications
---
 sys/dev/cxgbe/t4_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c
index 46739740db83..a7dd532cc077 100644
--- a/sys/dev/cxgbe/t4_main.c
+++ b/sys/dev/cxgbe/t4_main.c
@@ -936,7 +936,7 @@ struct {
 	{0x6403, "Chelsio T6425-CR"},		/* 4 x 10/25G */
 	{0x6404, "Chelsio T6425-SO-CR"},	/* 4 x 10/25G, nomem */
 	{0x6405, "Chelsio T6225-SO-OCP3"},	/* 2 x 10/25G, nomem */
-	{0x6406, "Chelsio T62100-OCP3"},	/* 2 x 10/25G */
+	{0x6406, "Chelsio T6225-OCP3"},		/* 2 x 10/25G */
 	{0x6407, "Chelsio T62100-LP-CR"},	/* 2 x 40/50/100G */
 	{0x6408, "Chelsio T62100-SO-CR"},	/* 2 x 40/50/100G, nomem */
 	{0x6409, "Chelsio T6210-BT"},		/* 2 x 10GBASE-T */

From nobody Fri Nov 29 21:39:21 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQd4g1Dz5flH9;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQd4663z4448;
	Fri, 29 Nov 2024 21:39:21 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916361;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=B0suMVQP85TUqZvFgtzVBHokSeJFKJx9PNbpB+AeAU8=;
	b=bGqpdepX42oBF/k7Q6VnnByg40gfXXEPD60NIgfthcZd13sGOJAXq0n+3+WQzsKGLzelUE
	3MQmDv+nmQkBjQKhcTxf4oguqJIpeOJtkW5GG6xDz6q0qTg9omH20i6aOpkSHUsg1tW8Mp
	pFPDjS+REtlo6JdrXHEvPIviih5cGgMeD9X5ogJH4FXrwwct4T2ORKuW+vjJd+LoM/7ed6
	TxIM7iS+91ub1/vBg/OdiMFwAMWV5NdB/aVF34BDsRJzAeugeqJ8WRHQXPLUT4LOlI2eSK
	D4gID1E2PcIPv9EwWPriUW/pQMFoLbosqX+WHA+6uwi14Nqfmao4td0xDTXcWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916361;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=B0suMVQP85TUqZvFgtzVBHokSeJFKJx9PNbpB+AeAU8=;
	b=InYib5qauCSwkCjKpKlLJN9b/EddkZc/rZawdFkipEcKQOX2DSBz/2P03ZE/Fgtm9R5u8H
	Kf0ILEas2hdjMizPi+CMRMkx7fI3YFCyLgaa33z85g9bxPMMxMBkMpo/ItBvz5cN1VdFhw
	qU0N8Fwk8d0dIwsxezP4iKqZR9uj/ffPVAZKdVZXooF0BwBAlVKvoRH9qghRJ3epAl1Cac
	Usrx6+ttR6EwKXy7byrq1NJ2PYlLGmvPJoa8WyR/a74PdoHeHU/DVUzz5GbhynAzu25gMU
	4snH0yokXQIRkZ+X5T9THUJyNHCTweiAy0pUE5LCyEygBWiJwf7gZEuYDCFwlQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916361; a=rsa-sha256; cv=none;
	b=dhuHUC5IPAK/sL/RbEohTefPXolUTWq8hmJjA74NM14kc0iz7AUIC4/1B85I78y6/afkQX
	3RC4UQGOYirUPY4/YNnFtNNW1nuDTj88ofGwLaLyfNekzqJZ8t2A3eQAbdq8VD/U6a76PH
	J3gQRih05twVOo3M7++HNe6w3yP/QbTn1hwhX4E30GdHEct+asZfm+G1DS22+C9plqGUDg
	6uQHd68u6JRf7t2vzZbfy6QxcjFcRbqdtHEmX24qrDvxtQKjY1NtNvg5rUtqTZhL70Cmx/
	Ps9e7tN7FjeRGk+L7ejsx6dj8XJNmXkMoTyXeDHXGQhl7hRnlXId/Glg7/uiOg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQd3j10zfZD;
	Fri, 29 Nov 2024 21:39: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 4ATLdLed093818;
	Fri, 29 Nov 2024 21:39:21 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdLuF093815;
	Fri, 29 Nov 2024 21:39:21 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:21 GMT
Message-Id: <202411292139.4ATLdLuF093815@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: e4d5b6dc3cd5 - main - linux(4): Fix typo `xatrr` in
  function name
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: e4d5b6dc3cd51d16dcd0c72d2292b65e76b0f06a
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=e4d5b6dc3cd51d16dcd0c72d2292b65e76b0f06a

commit e4d5b6dc3cd51d16dcd0c72d2292b65e76b0f06a
Author:     Minseo Kim <kimminss0@outlook.kr>
AuthorDate: 2024-11-17 13:42:07 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    linux(4): Fix typo `xatrr` in function name
    
    Correct `xatrr_to_extattr` to `xattr_to_extattr`.
    
    Signed-off-by: Minseo Kim <kimminss0@outlook.kr>
    Reviewed by: imp,emaste,markj
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1533
---
 sys/compat/linux/linux_xattr.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/sys/compat/linux/linux_xattr.c b/sys/compat/linux/linux_xattr.c
index 6979fff9c82d..2eec33f8ef93 100644
--- a/sys/compat/linux/linux_xattr.c
+++ b/sys/compat/linux/linux_xattr.c
@@ -98,7 +98,7 @@ error_to_xattrerror(int attrnamespace, int error)
 }
 
 static int
-xatrr_to_extattr(const char *uattrname, int *attrnamespace, char *attrname)
+xattr_to_extattr(const char *uattrname, int *attrnamespace, char *attrname)
 {
 	char uname[LINUX_XATTR_NAME_MAX + 1], *dot;
 	size_t len, cplen;
@@ -255,7 +255,7 @@ removexattr(struct thread *td, struct removexattr_args *args)
 	char attrname[LINUX_XATTR_NAME_MAX + 1];
 	int attrnamespace, error;
 
-	error = xatrr_to_extattr(args->name, &attrnamespace, attrname);
+	error = xattr_to_extattr(args->name, &attrnamespace, attrname);
 	if (error != 0)
 		return (error);
 	if (args->path != NULL)
@@ -312,7 +312,7 @@ getxattr(struct thread *td, struct getxattr_args *args)
 	char attrname[LINUX_XATTR_NAME_MAX + 1];
 	int attrnamespace, error;
 
-	error = xatrr_to_extattr(args->name, &attrnamespace, attrname);
+	error = xattr_to_extattr(args->name, &attrnamespace, attrname);
 	if (error != 0)
 		return (error);
 	if (args->path != NULL)
@@ -378,7 +378,7 @@ setxattr(struct thread *td, struct setxattr_args *args)
 	if ((args->flags & ~(LINUX_XATTR_FLAGS)) != 0 ||
 	    args->flags == (LINUX_XATTR_FLAGS))
 		return (EINVAL);
-	error = xatrr_to_extattr(args->name, &attrnamespace, attrname);
+	error = xattr_to_extattr(args->name, &attrnamespace, attrname);
 	if (error != 0)
 		return (error);
 

From nobody Fri Nov 29 21:39:22 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQf66tMz5fl8K;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQf51W6z44D4;
	Fri, 29 Nov 2024 21:39:22 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916362;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=THuooP+vwviHoNK1V6BCClWFnh409CM14zcsAHnQ2fQ=;
	b=by1VaibTPHuPOf6u/jYrRbqbf0ysIz3F5JVm7WN4o/LcOgCNB0CKgu094BwoyzpYq36urr
	7XfhZQuETXzJ1CUsvkSr/s22TDxGqMuXA9HisERfv+aRPBey9CoX7BlzOn+oO1r1t30CJz
	73icUaDVh5xgQ+qbfGs5pWU43YiCi6inyeGGn6TxgXHYQG0WkQoT61zr7FRA4gk936EQ9e
	Kmq0vfZ+EHhv8TW+DmVKLHbirckcZCgd7aPwLWq7hEbaOH1XZkdk/nF0+VcU33abAbH22B
	DIZOcbbGWDvg7xm5JxZV5oUowtRuDIGAQ6xXOG+bkov5VwVSkCASGaAsTlskbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916362;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=THuooP+vwviHoNK1V6BCClWFnh409CM14zcsAHnQ2fQ=;
	b=BqCUp8UFLmLgCeC/V4G9G0x4lziMrUTv0BLJ8cCf9EYgjPfw4ao0NORRcNwg+e9sROKGsB
	Xfo6ufAMpNaU8MAAnHbqkb487tG6XzhGTXs1hNyTkmehm9SjY/bgR89J2edIMT7wUjchTN
	fqnTo8VJ8PGtPnmONpZPukYbPf1D4kBOemvVMbBYvba0YGlXt8QquZSU4k25mMDoNnhRBZ
	jPhhvyW1WZbTYEfZcqefDV6/FejMifThkgY8oWIHg3wtJ1ikXwD6e8DHsin7rlg9uerOOn
	jlV8XlDR/BsnBny9/Ly7GIDZPjUVwayirP8DFSBjD4DJrJVqet0xToFS7iARVg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916362; a=rsa-sha256; cv=none;
	b=Nc1kTXT9SZtJBo19xgLvLnWxgaYMn+NoFs8a83hs7bQpeHpjtaOoZsoLwyh43MzAzSQXfH
	0IH5ziY/e4zuSoxpgJvMxJ3sM2wA7FaPfQzAVsfhRlV3a6FC3gCqto73Y2KUClBh/pxXhE
	u77VMMTAmHzzbu9bsB3lMX8e6I5/C3tffadKPrmcrj3LUeGZ49ybgRl7yXE5bfvkclkOJi
	iyzjvZFbpYsROMKf5hY2cXui03Rt+eP7Kl4fJh4fKy67FyMR7sc2tUTjdeTLHeA/yTdfjh
	Qsip/MHKo75hpvjn4loMeaIqu+VvRrfO3t12aqsoDibDamktAGYEFtzsHuYNjA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQf4dl6zg1Q;
	Fri, 29 Nov 2024 21:39: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 4ATLdMOm093854;
	Fri, 29 Nov 2024 21:39:22 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdMAW093851;
	Fri, 29 Nov 2024 21:39:22 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:22 GMT
Message-Id: <202411292139.4ATLdMAW093851@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: fb91b9858080 - main - vt.4: document kern.consmute
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: fb91b9858080143b56ba637ab3c8954f3f94694a
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=fb91b9858080143b56ba637ab3c8954f3f94694a

commit fb91b9858080143b56ba637ab3c8954f3f94694a
Author:     Alexander Ziaee <concussious@runbox.com>
AuthorDate: 2024-11-08 00:51:50 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    vt.4: document kern.consmute
    
    MFC after:      3 days
    
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1521
---
 share/man/man4/vt.4 | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/share/man/man4/vt.4 b/share/man/man4/vt.4
index d3d3c4b38013..ad050bdd0d59 100644
--- a/share/man/man4/vt.4
+++ b/share/man/man4/vt.4
@@ -56,6 +56,7 @@ In
 In
 .Xr loader.conf 5 or
 .Xr sysctl.conf 5 :
+.Cd kern.consmute=1
 .Cd kern.vt.kbd_halt=1
 .Cd kern.vt.kbd_poweroff=1
 .Cd kern.vt.kbd_reboot=1
@@ -319,6 +320,8 @@ prompt, set in
 or changed at runtime with
 .Xr sysctl 8 .
 .Bl -tag -width indent
+.It Va kern.consmute
+Disable printing kernel messages to the system console.
 .It Va kern.vt.enable_bell
 Enable the terminal bell.
 .El

From nobody Fri Nov 29 21:39:23 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQh39thz5flKb;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQh026Hz442c;
	Fri, 29 Nov 2024 21:39:23 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916364;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=MQ/TaCTADrJLLDuKQltejoPrM9wTWSPD2Qfj4LZgRRg=;
	b=uDyhFvxGmi3DSrwqJ2UiD1lGmSFoz7j8fvur05SPIi4qNuNQ2wGf+hi29jKEcH850/pV7q
	PRqy4RC4tmLU+lZMvdhmUkt/FcAAjZDQqZnD4JQpMMjRYo8SYAd7H7UB6xDBRMlKdVCjfb
	DbI+sdUcFW2/Cq2FrMwOIEmXfvuAP0idQxCCsZHrAwq9J72PbIxwsCRQshSEJ6ZGYnHDiS
	5F9Q38Fv3nOQcjMA2Ebm4vCMOS1QB+FtJSoQNljdULFjEkAr9yPD66khjkOhngIQeZUS6M
	lRC8nITupAlvno9shMMZwQqIA/QuspVYsJk2gTbJyZTTzZu7sOiKPgjNmo9Iqg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916364;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=MQ/TaCTADrJLLDuKQltejoPrM9wTWSPD2Qfj4LZgRRg=;
	b=DuKH136FQf9BYGcRA7xRPW6fJb3b33aCyVpMeRQK8ML/JHiV+0zARd245EhBGqXklJlpRo
	9JUjMzzOzxod8pKVW4yp4cxkLcyFtuM9/kCLfmiEOi6UVRBmlpImEcVtxEjx8ZHjU/mG2r
	iEtmmy6KQCJ0iKyAIq6Lv56bnF2fhbQDN7Vanca1DUAC77xlMOL+ygaIbBf3jvtLOn/fqH
	q7iYRXFSnFgyLCKKErGTbOndo+SFptvF60meETIF8sG3VrRbTrV7+dJUfwq/W+meuhQ3Mg
	7BvYuqCZ6eZqOtVTiF2Xyw4fXJqh+cuvb2kFazEzu6jFDBmJT/6blm6QLnQVew==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916364; a=rsa-sha256; cv=none;
	b=GSmxYAPmzwdK3Tz386UTla4Q2B0kQ+iaqDM84Efnau5iXF4kBqzu7v6U/irvD2eTYr++VT
	iow1MNmtRBpf7XgQ0YG2liCZBGL6V0KIzfTR83i0Fu6+92PPOt+dWwtbw/kquB7GLETqo2
	kwxxwNiqnKniJg5+OQnxgOEEHH1daSArM0l3ojl+QQb9oese58iYjNnD55CkXtQlYPwIi5
	k6JiqozUEV2Fb/yOQLPn3m8oE0RTYRzggcvLQv/NyGEn/ZP51xzyUc/S331yVGK67CrnBX
	m3dQYI1lVR+I1zjwKkakdSCNrcFDJsH1oXvxylXmOLCtyKI0eyJwDLNAfm3ZHw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQg5hjzzgWg;
	Fri, 29 Nov 2024 21:39: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 4ATLdNle093905;
	Fri, 29 Nov 2024 21:39:23 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdNmY093902;
	Fri, 29 Nov 2024 21:39:23 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:23 GMT
Message-Id: <202411292139.4ATLdNmY093902@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: de13eea53e4c - main - ipfw: Fix comment typos in ipfw
  struct dyn_data
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: de13eea53e4c1e5ba593bb77257568c0f5ef1645
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=de13eea53e4c1e5ba593bb77257568c0f5ef1645

commit de13eea53e4c1e5ba593bb77257568c0f5ef1645
Author:     Damjan Jovanovic <damjan.jov@gmail.com>
AuthorDate: 2024-11-07 16:27:39 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    ipfw: Fix comment typos in ipfw struct dyn_data
    
    The bcnt_fwd and bcnt_rev fields are the byte counters,
    while the pcnt_fwd and pcnt_rev fields are the packet counters.
    Fix the comments that were swapped around.
    
    Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
    Reviewed by: jlduran,imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1517
---
 sys/netpfil/ipfw/ip_fw_dynamic.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/sys/netpfil/ipfw/ip_fw_dynamic.c b/sys/netpfil/ipfw/ip_fw_dynamic.c
index 1dbecbcd6d53..34aae71c174b 100644
--- a/sys/netpfil/ipfw/ip_fw_dynamic.c
+++ b/sys/netpfil/ipfw/ip_fw_dynamic.c
@@ -144,10 +144,10 @@ struct dyn_data {
 	uint32_t	sync;		/* synchronization time */
 	uint32_t	expire;		/* expire time */
 
-	uint64_t	pcnt_fwd;	/* bytes counter in forward */
-	uint64_t	bcnt_fwd;	/* packets counter in forward */
-	uint64_t	pcnt_rev;	/* bytes counter in reverse */
-	uint64_t	bcnt_rev;	/* packets counter in reverse */
+	uint64_t	pcnt_fwd;	/* packets counter in forward */
+	uint64_t	bcnt_fwd;	/* bytes counter in forward */
+	uint64_t	pcnt_rev;	/* packets counter in reverse */
+	uint64_t	bcnt_rev;	/* bytes counter in reverse */
 };
 
 #define	DPARENT_COUNT_DEC(p)	do {			\

From nobody Fri Nov 29 21:39:24 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQj3STZz5flDl;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQj07SDz442q;
	Fri, 29 Nov 2024 21:39:25 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916365;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mUeQgFJgsC7JEX6RfFc25R07FBb5M+UqomVithyPQn0=;
	b=DQpao0vHZmcRFppzAVcr4FAfFt0JhV6bvkEpJOn8hmYpxEE5yZtXTBEFFgrKBVpcuHXFrV
	AYLrv+YwmLcz4h/8IStlaK7mco3CH6vBpYaEspdLIpcKqWxhfUEpP3XDTVewu6DNEd8DOL
	vE7VyOwPej28AsHqbxjU1CPr0+aMJKx14Av7yXUt0P7AGU98sd6+KqmWCHSUMmwSnIEjfB
	X49hZCCNcrjctNdIL+hBhXo4BxYmZmShQlYyI83jDy7wqNmQNlwB/8yE8g5OCAh7boHDww
	+vyXdnmW1t/GtoZTgDPGjbCPPidrn3JUcxnbkq00dTF3gv5/QjZ5qJ648R0BTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916365;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=mUeQgFJgsC7JEX6RfFc25R07FBb5M+UqomVithyPQn0=;
	b=uJKCk2MFKvEiZihGA3UdOOlONOmknayR/Jt6knrCJbqfgkqNI7SysK6qBIGM7w9oN9pvYi
	/Zv7/4MyijzK4a2zkmMta6jSHyU6AfaSd4TaAF/CSrqVd2aMFFE++9ztQ5vp58fONE/CMq
	N9ALe+WfgScPyh5Am5OoP+HEkpn7VsGOplouEYavFUMlRc24McdZt0mpfetXSm/W4KHCoF
	Q9qjS07Q50i6o5J/EeXa6vc23ZS13GLK9BxRUa4lk6Zo2SN66Rvarju+6Y67TtZ9EYZzkk
	1gs99dOLoqdVtGN3swEsq0nt8jzyU03Uj9H4lF4LaIaJH0peTOaJ5isztVW3Pw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916365; a=rsa-sha256; cv=none;
	b=JZwFCbDceC0WsJHyTu5gXnCfit1NKd4iCF/SR53G7ZNV4XHh+00Ny2VY809jHQZ42KXOmJ
	l9nvTf0CNOA7JcAzOFPFTWrvURO3pPE7S8BiDEzguqtHyXnPnZ6Ow6Muf8UJQI0JoeeR9l
	l50gvbIg/c3mgn3cTbiFKLWq5Rw6yUMRALw1Ulxb2hBKjTEHB+JPmv5g55FpR0c6GO2KsK
	MPMIoGelMvN0NmBuQbI6/Aa82bWSTdSRSsoDEXytnZYSSHXeDAMLTFZAMjIVFTZONBXBQH
	N+PNX7zdQk9v5vzKsQA6d8SAGOkXZWdU+KfBwp6vqnyf3laA+kB6X693Trqp1w==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQh6msZzgVW;
	Fri, 29 Nov 2024 21:39: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 4ATLdOLP093962;
	Fri, 29 Nov 2024 21:39:24 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdOGY093959;
	Fri, 29 Nov 2024 21:39:24 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:24 GMT
Message-Id: <202411292139.4ATLdOGY093959@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: 0b32ef71f9f1 - main - vmm: Correctly suspend and
  resume the vmm driver.
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 0b32ef71f9f154f4da5037bfcbb4916960d38452
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=0b32ef71f9f154f4da5037bfcbb4916960d38452

commit 0b32ef71f9f154f4da5037bfcbb4916960d38452
Author:     Joshua Rogers <Joshua@Joshua.Hu>
AuthorDate: 2024-09-11 17:42:25 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    vmm: Correctly suspend and resume the vmm driver.
    
    Previously, VMXON would be executed on a resume, contrary to proper
    initalization. The contents of MSR_IA32_FEATURE_CONTROL may be lost on
    suspension, therefore must be restored. Likewise, the VMX Enable bit may be
    cleared upon suspend, requiring it to be re-set.
    
    Concretely disable VMX on suspend, and re-enable it on resume.
    
    Note: any IOMMU context will remain lost for any enabled vmm devices.
    
    Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
    Reviewed by: jhb,imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1419
---
 sys/amd64/acpica/acpi_wakeup.c |  3 +++
 sys/amd64/amd64/machdep.c      |  1 +
 sys/amd64/include/cpu.h        |  3 ++-
 sys/amd64/include/vmm.h        |  2 ++
 sys/amd64/vmm/amd/svm.c        |  7 +++++++
 sys/amd64/vmm/intel/vmx.c      | 11 ++++++++++-
 sys/amd64/vmm/vmm.c            |  3 +++
 sys/x86/x86/mp_x86.c           |  5 +++++
 8 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/sys/amd64/acpica/acpi_wakeup.c b/sys/amd64/acpica/acpi_wakeup.c
index 351cd16ff9ca..51d6d5e36840 100644
--- a/sys/amd64/acpica/acpi_wakeup.c
+++ b/sys/amd64/acpica/acpi_wakeup.c
@@ -202,6 +202,9 @@ acpi_sleep_machdep(struct acpi_softc *sc, int state)
 
 	intr_suspend();
 
+	if (vmm_suspend_p != NULL)
+		vmm_suspend_p();
+
 	pcb = &susppcbs[0]->sp_pcb;
 	if (savectx(pcb)) {
 		fpususpend(susppcbs[0]->sp_fpususpend);
diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c
index e2ae3843a119..73bfdd4d07f5 100644
--- a/sys/amd64/amd64/machdep.c
+++ b/sys/amd64/amd64/machdep.c
@@ -213,6 +213,7 @@ struct mem_range_softc mem_range_softc;
 
 struct mtx dt_lock;	/* lock for GDT and LDT */
 
+void (*vmm_suspend_p)(void);
 void (*vmm_resume_p)(void);
 
 bool efi_boot;
diff --git a/sys/amd64/include/cpu.h b/sys/amd64/include/cpu.h
index 99b8806ba0ba..57f2a0b59bbb 100644
--- a/sys/amd64/include/cpu.h
+++ b/sys/amd64/include/cpu.h
@@ -70,7 +70,8 @@ extern char	btext[];
 extern char	_end[];
 extern char	etext[];
 
-/* Resume hook for VMM. */
+/* Suspend and resume hook for VMM. */
+extern	void (*vmm_suspend_p)(void);
 extern	void (*vmm_resume_p)(void);
 
 void	cpu_halt(void);
diff --git a/sys/amd64/include/vmm.h b/sys/amd64/include/vmm.h
index be88fc867e98..dd8e76962caf 100644
--- a/sys/amd64/include/vmm.h
+++ b/sys/amd64/include/vmm.h
@@ -170,6 +170,7 @@ struct vm_eventinfo {
 
 typedef int	(*vmm_init_func_t)(int ipinum);
 typedef int	(*vmm_cleanup_func_t)(void);
+typedef void	(*vmm_suspend_func_t)(void);
 typedef void	(*vmm_resume_func_t)(void);
 typedef void *	(*vmi_init_func_t)(struct vm *vm, struct pmap *pmap);
 typedef int	(*vmi_run_func_t)(void *vcpui, register_t rip,
@@ -194,6 +195,7 @@ typedef int	(*vmi_restore_tsc_t)(void *vcpui, uint64_t now);
 struct vmm_ops {
 	vmm_init_func_t		modinit;	/* module wide initialization */
 	vmm_cleanup_func_t	modcleanup;
+	vmm_resume_func_t	modsuspend;
 	vmm_resume_func_t	modresume;
 
 	vmi_init_func_t		init;		/* vm-specific initialization */
diff --git a/sys/amd64/vmm/amd/svm.c b/sys/amd64/vmm/amd/svm.c
index cc0b1c0c8725..2d40d3756f4a 100644
--- a/sys/amd64/vmm/amd/svm.c
+++ b/sys/amd64/vmm/amd/svm.c
@@ -277,6 +277,13 @@ svm_modinit(int ipinum)
 	return (0);
 }
 
+static void
+svm_modsuspend(void)
+{
+
+	return;
+}
+
 static void
 svm_modresume(void)
 {
diff --git a/sys/amd64/vmm/intel/vmx.c b/sys/amd64/vmm/intel/vmx.c
index 34b5fecc149c..13a53fa8eed6 100644
--- a/sys/amd64/vmm/intel/vmx.c
+++ b/sys/amd64/vmm/intel/vmx.c
@@ -648,12 +648,20 @@ vmx_enable(void *arg __unused)
 		vmxon_enabled[curcpu] = 1;
 }
 
+static void
+vmx_modsuspend(void)
+{
+
+	if (vmxon_enabled[curcpu])
+		vmx_disable(NULL);
+}
+
 static void
 vmx_modresume(void)
 {
 
 	if (vmxon_enabled[curcpu])
-		vmxon(&vmxon_region[curcpu * PAGE_SIZE]);
+		vmx_enable(NULL);
 }
 
 static int
@@ -4271,6 +4279,7 @@ vmx_restore_tsc(void *vcpui, uint64_t offset)
 const struct vmm_ops vmm_ops_intel = {
 	.modinit	= vmx_modinit,
 	.modcleanup	= vmx_modcleanup,
+	.modsuspend	= vmx_modsuspend,
 	.modresume	= vmx_modresume,
 	.init		= vmx_init,
 	.run		= vmx_run,
diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c
index 9569f8ace909..d1f57a717fdf 100644
--- a/sys/amd64/vmm/vmm.c
+++ b/sys/amd64/vmm/vmm.c
@@ -232,6 +232,7 @@ vmmops_panic(void)
 
 DEFINE_VMMOPS_IFUNC(int, modinit, (int ipinum))
 DEFINE_VMMOPS_IFUNC(int, modcleanup, (void))
+DEFINE_VMMOPS_IFUNC(void, modsuspend, (void))
 DEFINE_VMMOPS_IFUNC(void, modresume, (void))
 DEFINE_VMMOPS_IFUNC(void *, init, (struct vm *vm, struct pmap *pmap))
 DEFINE_VMMOPS_IFUNC(int, run, (void *vcpui, register_t rip, struct pmap *pmap,
@@ -452,6 +453,7 @@ vmm_init(void)
 	if (error)
 		return (error);
 
+	vmm_suspend_p = vmmops_modsuspend;
 	vmm_resume_p = vmmops_modresume;
 
 	return (vmmops_modinit(vmm_ipinum));
@@ -479,6 +481,7 @@ vmm_handler(module_t mod, int what, void *arg)
 		if (vmm_is_hw_supported()) {
 			error = vmmdev_cleanup();
 			if (error == 0) {
+				vmm_suspend_p = NULL;
 				vmm_resume_p = NULL;
 				iommu_cleanup();
 				if (vmm_ipinum != IPI_AST)
diff --git a/sys/x86/x86/mp_x86.c b/sys/x86/x86/mp_x86.c
index 0a683b3e841a..493017e303e3 100644
--- a/sys/x86/x86/mp_x86.c
+++ b/sys/x86/x86/mp_x86.c
@@ -1591,6 +1591,11 @@ cpususpend_handler(void)
 
 	mtx_assert(&smp_ipi_mtx, MA_NOTOWNED);
 
+#ifdef __amd64__
+	if (vmm_suspend_p)
+		vmm_suspend_p();
+#endif
+
 	cpu = PCPU_GET(cpuid);
 
 #ifdef XENHVM

From nobody Fri Nov 29 21:39:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQm5cT9z5flPR;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQm423Gz44b3;
	Fri, 29 Nov 2024 21:39:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916368;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yw5F9U3HNOK6wI9bdEe7mBI+SyMNpoa7StELVqd0c/U=;
	b=i7WMjkg0fKHg/ywOH5czNPht0fw4lFQ7BtvUgv5FFBRbq0Mo9R0jpL5+b9Ykw33tSJdd+V
	P3T+1IfxLu6ySmqy2GKGL89ERTvbRvbK6Xaba/YgAbjgrt9Y8HzqMzQWW6cT/BH9kF4gZd
	14uiYG5nMAnSiATnXOVHsNrM4gmo4AsmsvTybVjMUoCAubcy9StFT/XDjCqwh4CdLEDXcz
	jmlmXOjv9079SU+tXa71THUPBdpg1xCrJ7jlE1P4lkQxdxoNjOAy8kB8Ec1S7CfFhZlFrI
	neoWezrxiDUTwk6MdoqHFMc/DZv2MpG2GaK/5iLJf8m73xUkqLqd/QioLt7TMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916368;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yw5F9U3HNOK6wI9bdEe7mBI+SyMNpoa7StELVqd0c/U=;
	b=JsqlemjAkSmpS0BX5doj576Vd/ZMXhjMPf1Uaodpj9iUsm2laSgnRKwEmvh/RHuPoLc27N
	l6+IZxFDOw92mwxEMaUx4zK8EE3p+xcqNV047FAdr+Ua2llJ8K+FDU/n7YoYY2ENqWD8f3
	oFglp5jTG27bUZc2q6rGoX6Zv2Cv1tLO+g/FHvHk1/HeGa2xQ8+/6jaQCeAtJixHSV9ZsK
	DtAfJnE1wE76b0nNrWLqfwXmIwA4lqZa2WP79JyDLfMx/J2F+DAx+LOtMXDgKcHTQp+KfI
	A+5KL/N8s2oIwkkBZtB0TMFfMXft0avrNx9WLTxnjZoUXjn+3ZntWZ9WYfKYFQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916368; a=rsa-sha256; cv=none;
	b=ltLn9iA/+n81x8//BOWW95P3gLx4SgiSruhFCeiWM5+nQldqadDyiSov1BPJflYGYfxA+f
	N6wxOS/0gaYBw4pjeS6xOHGQCARBmJd9Sf8JvWlekv48TfBCXNIxt5oBW7poV1+m7eUtuU
	QNqwG8sD8DEcYgRv4XTKy8W1AmFOsOT9q28suEC0VcOpQrLzbChO2AkiFF5YjskdKCIHHh
	J8J1dO46VHBQJmKbKJQ/26/PRx1C3BCW/HNfJMuZCjhL2iFfLqlwT5uF6iTnv/IGtVBmEI
	xdX97zfm3d/XXFUqMoO9H+D1E9ArIMSavUbHtEtNn6RynIGLnLgjNpqaPHFIyg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQm2LjMzghf;
	Fri, 29 Nov 2024 21:39: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 4ATLdSdg094104;
	Fri, 29 Nov 2024 21:39:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdSkj094101;
	Fri, 29 Nov 2024 21:39:28 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:28 GMT
Message-Id: <202411292139.4ATLdSkj094101@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: df79daa0fde8 - main - Reduce additional console output
  when muted
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: df79daa0fde87ac90d4d73604b98107009c9c1bf
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=df79daa0fde87ac90d4d73604b98107009c9c1bf

commit df79daa0fde87ac90d4d73604b98107009c9c1bf
Author:     Craig Woodward <Craig.Woodward@redcom.com>
AuthorDate: 2024-09-03 18:42:50 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:36 +0000

    Reduce additional console output when muted
    
    While trying to resolve some custom installer issues, we found that
    using conscontrol(8) or setting kern.always_console_output=0 in
    sysctrl.conf(5) did not always prevent console output. This is in part
    because some areas of the kernel were outputting to the console device
    without checking the status of the setting. These changes enforce
    checking of the value in both locations where console output occurs from
    kernel and init(8) based callouts.
    
    Details on changes:
    
     - Moves check for mute to earlier in sequence to silence kernel output
       even if EARLY_PRINTF is defined.
     - Modifies call prf_putbuf() and prf_putchar() in subr_prf.c to strip
       TOCONS flag if muting is enabled, to honor the setting at print
       level.
    
    This is a rather simple change, which increases areas where flags to
    silence console output are honored.  We have been running this change
    since 10/23 in-house without issue.  (Patching prior to 14.0 also
    required making cn_mute non-static.)
    
    Signed-off-by: Craig.Woodward@redcom.com
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1407
---
 sys/kern/kern_cons.c |  5 +++--
 sys/kern/subr_prf.c  | 10 ++++++++--
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/sys/kern/kern_cons.c b/sys/kern/kern_cons.c
index 2ab86d5905a9..fbe52735cf86 100644
--- a/sys/kern/kern_cons.c
+++ b/sys/kern/kern_cons.c
@@ -525,6 +525,9 @@ cnputc(int c)
 	struct consdev *cn;
 	const char *cp;
 
+	if (cn_mute || c == '\0')
+		return;
+
 #ifdef EARLY_PRINTF
 	if (early_putc != NULL) {
 		if (c == '\n')
@@ -534,8 +537,6 @@ cnputc(int c)
 	}
 #endif
 
-	if (cn_mute || c == '\0')
-		return;
 	STAILQ_FOREACH(cnd, &cn_devlist, cnd_next) {
 		cn = cnd->cnd_cn;
 		if (!kdb_active || !(cn->cn_flags & CN_FLAG_NODEBUG)) {
diff --git a/sys/kern/subr_prf.c b/sys/kern/subr_prf.c
index 8ecabdec18d5..5cfc92e9761a 100644
--- a/sys/kern/subr_prf.c
+++ b/sys/kern/subr_prf.c
@@ -112,6 +112,7 @@ struct snprintf_arg {
 };
 
 extern	int log_open;
+extern	int cn_mute;
 
 static void  msglogchar(int c, int pri);
 static void  msglogstr(char *str, int pri, int filter_cr);
@@ -425,7 +426,7 @@ prf_putchar(int c, int flags, int pri)
 		msgbuftrigger = 1;
 	}
 
-	if (flags & TOCONS) {
+	if ((flags & TOCONS) && !cn_mute) {
 		if ((!KERNEL_PANICKED()) && (constty != NULL))
 			msgbuf_addchar(&consmsgbuf, c);
 
@@ -443,7 +444,7 @@ prf_putbuf(char *bufr, int flags, int pri)
 		msgbuftrigger = 1;
 	}
 
-	if (flags & TOCONS) {
+	if ((flags & TOCONS) && !cn_mute) {
 		if ((!KERNEL_PANICKED()) && (constty != NULL))
 			msgbuf_addstr(&consmsgbuf, -1,
 			    bufr, /*filter_cr*/ 0);
@@ -511,6 +512,11 @@ putchar(int c, void *arg)
 	if ((flags & TOTTY) && tp != NULL && !KERNEL_PANICKED())
 		tty_putchar(tp, c);
 
+	if ((flags & TOCONS ) && cn_mute) {
+		flags &= ~TOCONS;
+		ap->flags = flags;
+	}
+
 	if ((flags & (TOCONS | TOLOG)) && c != '\0')
 		putbuf(c, ap);
 }

From nobody Fri Nov 29 21:39:27 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQl4qXLz5flKc;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQl2fqYz444v;
	Fri, 29 Nov 2024 21:39:27 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916367;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dQkpdaeHPGwHxBJWNay3RR+IiVOQZ6Gj55U9d/Ol56w=;
	b=jMZGZqEST/3Kr/23r8GhVyLL9tkhlRaiYEu2KH2Pu+ZfBb/BkYY6jwmqGOZDpR3z8IwLfc
	QnC2ZXAEv+mYJ27Csh3fhLphoKtA1eohQqolm5ofQJqiDarD7/H1+XzyLHaaRTqfsY+e/K
	cbczr3DxKuaH1kn8k/NCI06SgjVPECB+MA2sJG0QHFr72lsBjDRO4+o78l4+VX6I+NxSik
	l+5B53tO7efgmmK9XIbvVMTlztIjOtANsPMW6nW/7+/2YAV1R5B5AhQC14DCjmkldcAjqs
	8P3PuHP5MRyUQWDGYtVe6Vb0EBmPmu2TKYxrYPt+zT5B9W+P/IC1aZ8rw0ukIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916367;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=dQkpdaeHPGwHxBJWNay3RR+IiVOQZ6Gj55U9d/Ol56w=;
	b=dfBVqLHCpKjR8NRtuRh+67+FXJDzYdIzh6WhDRmoHi+DfOiDv+jquML/6eXJ5S1OpIVhIT
	yOrJJQh6Ixk+JycvH1U/aMPEJbkU4OzMdXLfIbgtbi9QTDw5jIqK0L2Ek/Pi38DE/OkGv6
	8vpaoAUFTfl3R1Fn6Pf4B4vH6AETUFMyLatcElsSVQ6XOPWTuWLlgExTD7H7dHUb7O/NlL
	KtM6cy7D3DIHQlZURopOoPR+TiqaIT7LdyoD1Vz6TcvB7jKvaHI4mSzpmyU9mw1nMKHQ8e
	ShHqs3mwFbEgAx7iSisALMAQH4R2LJuLOo7xVpFtuix5l7F5/ylwS42n8vB4nA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916367; a=rsa-sha256; cv=none;
	b=EhPKDtfDMRk1EuHiPJQ28ozuteBxcYwFydF9MzQATvIDPzrd0vSnY/Agh/3lJ4XZYxzYZs
	yjA5y+v7RFlwnS4RMALV6+9RjxBAKfm6IJZ3KXlcVxMEz6kc+yGtibb6oZbo4eEJKLZL3C
	d+w8Ph7nFXwU+MWkfuoSNMYJzuEkB6imTjy6un7SUnrfu3OR82piJaisuxoXffh0Sw/4b+
	z3rCgVKKYrUWTKUMxhMAP48uTPeDJ0Y8Jl4fhyl/fAuaPLCBCYQZ2CVXhgrGKS6Awf9Uo6
	YHwcXZyUBZvDifLc+95G6CHEFCAtWqRmRc2VSSZeJg0tN+Pz4S4I1NLtkMkP/Q==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQl1KjWzfZF;
	Fri, 29 Nov 2024 21:39: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 4ATLdRPr094059;
	Fri, 29 Nov 2024 21:39:27 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdRAf094056;
	Fri, 29 Nov 2024 21:39:27 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:27 GMT
Message-Id: <202411292139.4ATLdRAf094056@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: 4d12c7b9df66 - main - cu.1: describe better + tag
  spdx
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4d12c7b9df660b15580ff3b07ef5570d1cab958a
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=4d12c7b9df660b15580ff3b07ef5570d1cab958a

commit 4d12c7b9df660b15580ff3b07ef5570d1cab958a
Author:     Alexander Ziaee <concussious@runbox.com>
AuthorDate: 2024-09-14 23:26:16 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    cu.1: describe better + tag spdx
    
    Preserve over 40 years of "call UNIX" BSD heritage
    while answering "one line about what it does" e.g.
    
    "how do I get a serial console?"
    "% apropos serial"
    
    MFC after:      3 days
    Reported by:    imp
    
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1423
---
 usr.bin/tip/tip/cu.1 | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/usr.bin/tip/tip/cu.1 b/usr.bin/tip/tip/cu.1
index 328623ce5548..5852a2a6e6d5 100644
--- a/usr.bin/tip/tip/cu.1
+++ b/usr.bin/tip/tip/cu.1
@@ -1,3 +1,6 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
 .\"	$OpenBSD: cu.1,v 1.3 2006/06/07 06:35:59 mbalmer Exp $
 .\"
 .\" Copyright (c) 1980, 1990, 1993
@@ -32,7 +35,7 @@
 .Os
 .Sh NAME
 .Nm cu
-.Nd call UNIX
+.Nd call UNIX over a serial line
 .Sh SYNOPSIS
 .Nm
 .Op Fl ehot

From nobody Fri Nov 29 21:39:25 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQl1zzdz5flM5;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQk0m52z44Rp;
	Fri, 29 Nov 2024 21:39:26 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916366;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8Nwo2GIE4fR6QrFEXD6ucIAucBncTfHXGGuRVio1QSg=;
	b=PaoESjMERs+9dE9LDPNtQPUdcGYRKbCj4umNARfaxR9++kJmBxqD+xF+6uY9Sa7Pmb2Jkd
	ToXJ8QbIFNmmM71wCDsP98poNL1cJVMxuu2HmsKwRLvhQoNx9OLH0HL9qvxZSnzkSrhwOs
	rH1TPvLxCfX4hKTKUDyQ9Xh0NfUqMyIjXfuxl5Vy8WpnARBnUYPJCah3jtCK6roCfJ9UIw
	EB/fT0KAtygQRgg9Tn0hB3aMKeDKlRfMU8YbPy60nbMwdVR5hMhZdCzO9n2PSOgUVQg/XZ
	vdZC0dKWU4k8k6452qBwJkic9X4fWEEZcH9dwljXx58xcVU0EvLxZJc1lX/dTQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916366;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8Nwo2GIE4fR6QrFEXD6ucIAucBncTfHXGGuRVio1QSg=;
	b=eT5Aq4VmZ39jYiHWXD7EHZkcmwzUW5JxhOl/vZQXj06UW+b4hdtuHPFNUWdJfxB41s+317
	LMHezM7Fi6aXadqI15yuTzabkjg8mQVzUVD9oFQo4JJvFgQMehvJadCwmbArFVrwanv70O
	FspF4MQgknqwemhet5TavdVsl/iot2dJRFBy+QWhfDMQ0SLLRf5aCHaaz1cb9U8321BDq7
	VduE1TE5yy+zy540piaIZZhuP6GNctRCFkVTz542KZe7rz9wvx3svWWVAD0ewlE2xvzc9V
	v8CP7ekB+N34IKLKzwFGM4C2mwjEWb/ohxT64KCwVnoAf8CYmMWi56zAQ7qWfQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916366; a=rsa-sha256; cv=none;
	b=r5T5rmYOyz0IPWSRnHx2np0byp6QPZbqoCh/tAXOi91u9Fj2gTbojpVOFsECEGwwCUL/4f
	6g+ivhWcwsbGm2Pl42KI1N45xgtm1QP2oUPnahaQ2GzXHVnbTKKL8Y3HOoghpORNKt2IvM
	ijeZATpU6tUwhMLko1skMMOx39WaU8YpU6DSnUS37au1H2tEg9VFUE7dsp0cYggm0yVdAu
	ziuI+GsfcO0kr0AHIsFJ/mrfQBaSuruyxx78J5V8JTocPXtshGwrhtVlb/VQ0MOTua3H63
	1og+1adRcQ3yvcwsohVCyPM/iN/uIZrhw9TIPlplnH3HxdSQuUwYHj/+vUCjdQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQk0HS4zgVX;
	Fri, 29 Nov 2024 21:39: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 4ATLdPlp094014;
	Fri, 29 Nov 2024 21:39:25 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdP1R094011;
	Fri, 29 Nov 2024 21:39:25 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:25 GMT
Message-Id: <202411292139.4ATLdP1R094011@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: e2a72442bd57 - main - sh.1: update history + spdx +
  linter error
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: e2a72442bd57c1373c30fab945fbfc86464f3782
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=e2a72442bd57c1373c30fab945fbfc86464f3782

commit e2a72442bd57c1373c30fab945fbfc86464f3782
Author:     Alexander Ziaee <concussious@runbox.com>
AuthorDate: 2024-09-29 08:14:36 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:35 +0000

    sh.1: update history + spdx + linter error
    
    + increase history consistency by adding "first appeared"
    + remove a skipped new paragraph macro to quiet linter
    + tag spdx
    
    MFC after:      3 days
    History source: www.in-ulm.de/~mascheck/various/ash/#bsd
    
    Reviewed by: mhorne,imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1440
---
 bin/sh/sh.1 | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/bin/sh/sh.1 b/bin/sh/sh.1
index 9903508d6381..a34f7676fffa 100644
--- a/bin/sh/sh.1
+++ b/bin/sh/sh.1
@@ -1,4 +1,6 @@
 .\"-
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
 .\" Copyright (c) 1991, 1993
 .\"	The Regents of the University of California.  All rights reserved.
 .\"
@@ -1074,7 +1076,6 @@ or the end of the
 command.
 .Ss Grouping Commands Together
 Commands may be grouped by writing either
-.Pp
 .Sm off
 .Bd -literal -offset indent
 .Po Ar list Pc
@@ -2923,7 +2924,9 @@ This version of
 was rewritten in 1989 under the
 .Bx
 license after the Bourne shell from
-.At V.4 .
+.At V.4
+and first appeared in
+.Bx 4.3 Net/2 .
 .Sh AUTHORS
 This version of
 .Nm

From nobody Fri Nov 29 21:39:29 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQn5gx9z5flBG;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQn3kWGz44Mp;
	Fri, 29 Nov 2024 21:39:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916369;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=/eNZQ+bt4I6UCn6XmEgNxxYOZH35ik4I6MmeIB2gyJM=;
	b=xO9mWG+jzQtGAMhmzBjLoBjVOeXiFfKhYb6sKEscRV8nFK/I8Q+uNcN5Wkx4iI46T/UFiR
	yFGDzlYBoHPG1tVXOb7jI9MQkH5O5LFyFL6ZsvPknvdKONo7qyglcLEPjlF+f34SA6gL9f
	DsF3O16984wGBWBcnu07pUHcVLgTnVBOszzi7TJ72EtxqUjgZObkmfamUGpaag/izfbnCK
	H/d/F/NC/nRk0VeZx131d9Vyh+QZSh5Aql5V2/j+kFAcKKnEKGLjva+eait/SH8a6sHzWU
	NY7N1uXDhJLNLLMmveaAc7RF+HcvVAhpVwdPMMrxatmMfM15HVOGOzywnARO5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916369;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=/eNZQ+bt4I6UCn6XmEgNxxYOZH35ik4I6MmeIB2gyJM=;
	b=dCMKZNd9wKyJ3/7R7VI4D0orRUfa27xazg7hxTYhdY3kapH148l170KCmFPz8bzToiUCVE
	eXNU5P1klSrgDBNginKk8KcJi6+WLv7TyOz4LwFqUucqgrEwYmxGSoy/G5bpmmW4xdi5cj
	waGgXjOY/cJ1AWzItoIR1gnugEwTo5SuAeH+kWDEio0bkVRGQTlPhxsCgPOhnBorD+ZbdO
	ijQCTPKpw5OBqUiJO7Nl3rXLtnvFBUYy/E5rjUxePSDxAP129e5uhYEOP3oNcwC5Oyz7aM
	Vc7VWJOB+fH6Qd/wZrVwEftk9v3R+bb137Qtjdohx9hGIomIP59sQpRq/iMkyw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916369; a=rsa-sha256; cv=none;
	b=YS+5S89jgyQjZPdPP0k+95nlsADzEXKUWe1zgcCQcJHnCVME7uyVafIMb/p3LEk0jKsFwk
	5Y/kf5XFokfEAAZ1DlIi6rG2Zkq1brBPOcEyGaTSEdsgSKSJkvTv3oV7gKTJK5Zutyypx4
	bagEo6jaWO/O6ew/yhC+USTi8H5HDTct19sJYh+nyQOSzUVZtMmHGou9Et0i7egxdj/ZV7
	oh3vIdMzES1O+nKy8/yxKLk8CZGUBsQDWU1PCXJBfCtY9Bcd6I7x75ubhExHuqB77ycDJI
	v5XzZIbf30IdXl8r9EsE7qsmFfESWdmmwZovqfGD561mBAuPpAW51JFuk5LXpw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQn3LLHzg1R;
	Fri, 29 Nov 2024 21:39: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 4ATLdTIp094153;
	Fri, 29 Nov 2024 21:39:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdToN094150;
	Fri, 29 Nov 2024 21:39:29 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:29 GMT
Message-Id: <202411292139.4ATLdToN094150@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: d4f9e326393e - main - libc/stdio: Increase BUF in
  vfprintf.c and vfwprintf.c
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: d4f9e326393e3298062a58338e2c94ef6baff8b5
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=d4f9e326393e3298062a58338e2c94ef6baff8b5

commit d4f9e326393e3298062a58338e2c94ef6baff8b5
Author:     Ahmad Khalifa <ahmadkhalifa570@gmail.com>
AuthorDate: 2024-08-31 03:42:04 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:36 +0000

    libc/stdio: Increase BUF in vfprintf.c and vfwprintf.c
    
    With the %b format specifier we need enough space to write a uintmax_t
    in binary.
    
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1400
---
 lib/libc/stdio/vfprintf.c  | 8 ++------
 lib/libc/stdio/vfwprintf.c | 8 ++------
 sys/kern/subr_prf.c        | 2 +-
 3 files changed, 5 insertions(+), 13 deletions(-)

diff --git a/lib/libc/stdio/vfprintf.c b/lib/libc/stdio/vfprintf.c
index 785340ab2a24..2dc8d9022179 100644
--- a/lib/libc/stdio/vfprintf.c
+++ b/lib/libc/stdio/vfprintf.c
@@ -291,13 +291,9 @@ vfprintf(FILE * __restrict fp, const char * __restrict fmt0, va_list ap)
 /*
  * The size of the buffer we use as scratch space for integer
  * conversions, among other things.  We need enough space to
- * write a uintmax_t in octal (plus one byte).
+ * write a uintmax_t in binary.
  */
-#if UINTMAX_MAX <= UINT64_MAX
-#define	BUF	32
-#else
-#error "BUF must be large enough to format a uintmax_t"
-#endif
+#define BUF	(sizeof(uintmax_t) * CHAR_BIT)
 
 /*
  * Non-MT-safe version
diff --git a/lib/libc/stdio/vfwprintf.c b/lib/libc/stdio/vfwprintf.c
index d43b472f7730..0d77bd74567e 100644
--- a/lib/libc/stdio/vfwprintf.c
+++ b/lib/libc/stdio/vfwprintf.c
@@ -369,13 +369,9 @@ vfwprintf(FILE * __restrict fp, const wchar_t * __restrict fmt0, va_list ap)
 /*
  * The size of the buffer we use as scratch space for integer
  * conversions, among other things.  We need enough space to
- * write a uintmax_t in octal (plus one byte).
+ * write a uintmax_t in binary.
  */
-#if UINTMAX_MAX <= UINT64_MAX
-#define	BUF	32
-#else
-#error "BUF must be large enough to format a uintmax_t"
-#endif
+#define BUF	(sizeof(uintmax_t) * CHAR_BIT)
 
 /*
  * Non-MT-safe version
diff --git a/sys/kern/subr_prf.c b/sys/kern/subr_prf.c
index 5cfc92e9761a..131d5456d2f9 100644
--- a/sys/kern/subr_prf.c
+++ b/sys/kern/subr_prf.c
@@ -512,7 +512,7 @@ putchar(int c, void *arg)
 	if ((flags & TOTTY) && tp != NULL && !KERNEL_PANICKED())
 		tty_putchar(tp, c);
 
-	if ((flags & TOCONS ) && cn_mute) {
+	if ((flags & TOCONS) && cn_mute) {
 		flags &= ~TOCONS;
 		ap->flags = flags;
 	}

From nobody Fri Nov 29 21:39:30 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0RQp6HCpz5flHH;
	Fri, 29 Nov 2024 21:39: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0RQp4rb4z44Vw;
	Fri, 29 Nov 2024 21:39:30 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732916370;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qNMuVXja8udZsBNvGVlMglbjDhL78hQbgZxWps8b2ms=;
	b=Ghr+orVD+nrp+kPiCNtUFNMJmH663kDFrf5kSgG2eQpzoYoH1YWlVWZ6tyzQLLePqu1l8d
	ioxF307HHc7eYFKANKKj5JFhxl68aqOaHl85jPgyWBOFxFYcfb/KGx0mIZhHQpDxEPicRZ
	Dw5D3yvXE9fLHoXJV5mmocrkIGnEit4FvzjJmKEdnz/6oAJdxaQXs0K7uiAF9YtRDZ9yEI
	obFa4l7qW8tqbK93qx7Fd5hSsvoQjMRgQn1Tn2pV3wwXivXY9wXTojWih6pQjI7Dnua17h
	+b60Lo5MgOYzL2vzi+2UfMEjePBmHtymxdEPW9/oZAtuasPoUothsnwFb6+vgQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732916370;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qNMuVXja8udZsBNvGVlMglbjDhL78hQbgZxWps8b2ms=;
	b=KGYNbkUrkf/jsYDdR7+EpqfYWwTmLaJICjIQ2eZDk3gYgPNPMLJ49t6BkZDtJKnj1ITOfA
	WxuL40Xhb4ZxfCE5JO9HgbNxOtsN2BkfoZSDUxf76aXvQV3IVe+C76Qj9/TNjvcZG9PGsy
	ZmHsxIXy5Xha0sdHLPUv2mj+XDDVGPcruHClVnBMHG5nPz7n5Dsj+KblwKZOA/ZW3F0+qb
	y8kDe7c2Yv6E7JtxPWQFblyGLbp0VYqvbLaY/U2NdJXo3c4LJ2E7CjV8f5zricV8m+6UiB
	lt+mYy+O8cqbINtewEz+KTXSXieHiBWm9Z2CsVlYnB16aaobxeO2+nyQvV6kdg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732916370; a=rsa-sha256; cv=none;
	b=qQr+VR/dX0Rxg8BI0dS+sJ9JsmV7M0e0js9GTINwMqx8fJUZ8tMKU30rAUv+7KRHVP43Fo
	ab0kGLT/GbLYnGQaDk0t6S2xXyQz8u1SkPSVv8VipaDO3DIagPOwrgbfoQGskYwgywirPq
	VWOR4NlA6vLXHgX8JGokp5uGSCecureSxED06PgmHqiELxZ1xm8GQPCZxIq/0ZFKfo4v+a
	sZP9X2svA7xxHZ258yJXy5o8MfL1aAyQpSlgk6UV70TFwc8pUHkrI5DkzizKTh1WdWmelO
	qhx6u+kB7McctS+H17Mk8emcrWBfUIzNBXsSxfkCTVRTl5Isu1+ZnRgT6F30Zg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0RQp4QJ0zfZG;
	Fri, 29 Nov 2024 21:39: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 4ATLdUm3094215;
	Fri, 29 Nov 2024 21:39:30 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4ATLdULQ094212;
	Fri, 29 Nov 2024 21:39:30 GMT
	(envelope-from git)
Date: Fri, 29 Nov 2024 21:39:30 GMT
Message-Id: <202411292139.4ATLdULQ094212@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: e8d027be6b84 - main - install: print directory name
  instead of file name if mkstemp fails
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: e8d027be6b84ac976eacd46283c286b934dd6f1f
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=e8d027be6b84ac976eacd46283c286b934dd6f1f

commit e8d027be6b84ac976eacd46283c286b934dd6f1f
Author:     Ahmad Khalifa <ahmadkhalifa570@gmail.com>
AuthorDate: 2024-08-14 14:26:04 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-29 21:38:36 +0000

    install: print directory name instead of file name if mkstemp fails
    
    Printing the file name doesn't make sense since mkstemp failing means
    that the file wasn't created.
    
    Also add a test case for this.
    
    Co-authored-by: Jose Luis Duran <jlduran@gmail.com>
    Reviewed by: imp,jhb
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1383
---
 usr.bin/xinstall/tests/install_test.sh | 10 ++++++++++
 usr.bin/xinstall/xinstall.c            |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/usr.bin/xinstall/tests/install_test.sh b/usr.bin/xinstall/tests/install_test.sh
index b35706521ec3..0f1f93ab4c63 100755
--- a/usr.bin/xinstall/tests/install_test.sh
+++ b/usr.bin/xinstall/tests/install_test.sh
@@ -32,6 +32,15 @@ copy_to_empty_body() {
 	    install testf ""
 }
 
+atf_test_case copy_to_nonexistent_dir
+copy_to_nonexistent_dir_body() {
+	local dir="/nonexistent"
+
+	printf 'test\n123\r456\r\n789\0z' >testf
+	atf_check -s not-exit:0 -e match:$dir": No such file or directory" \
+	    install testf $dir/testf
+}
+
 copy_to_nonexistent_with_opts() {
 	printf 'test\n123\r456\r\n789\0z' >testf
 	atf_check install "$@" testf copyf
@@ -506,6 +515,7 @@ set_optional_exec_body()
 atf_init_test_cases() {
 	atf_add_test_case copy_to_empty
 	atf_add_test_case copy_to_nonexistent
+	atf_add_test_case copy_to_nonexistent_dir
 	atf_add_test_case copy_to_nonexistent_safe
 	atf_add_test_case copy_to_nonexistent_comparing
 	atf_add_test_case copy_to_nonexistent_safe_comparing
diff --git a/usr.bin/xinstall/xinstall.c b/usr.bin/xinstall/xinstall.c
index 2823a9040b7a..d0fcda340034 100644
--- a/usr.bin/xinstall/xinstall.c
+++ b/usr.bin/xinstall/xinstall.c
@@ -869,7 +869,7 @@ install(const char *from_name, const char *to_name, u_long fset, u_int flags)
 		to_fd = create_tempfile(to_name, tempfile,
 		    sizeof(tempfile));
 		if (to_fd < 0)
-			err(EX_OSERR, "%s", tempfile);
+			err(EX_OSERR, "%s", dirname(tempfile));
 		if (!devnull) {
 			if (dostrip) {
 				stripped = strip(tempfile, to_fd, from_name,

From nobody Sat Nov 30 05:06:26 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0dLY5Rmxz5f3wm;
	Sat, 30 Nov 2024 05:06: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0dLY4k27z4jct;
	Sat, 30 Nov 2024 05:06:29 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732943189;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=EfV2ILOSjKVd/7/suuo7Di9UMI8S9cOCpK9pBob2BdE=;
	b=uBdAKd/6bOe6oLY66TJ7Iig4p7xHFbs2nmHLQHrVrHDjfKFbdXg8yzVl15vtiC8RZ5xPg9
	80U3SRf5GKLjlU4sYIPDi+oPtd5j7S0BgXY4cdWsKLq3m+Lz+CsSBdP/hWIjt20Wwn/F4P
	2IRWBINLiAzbHQSu2XgEgfBZ4uZUMSRgPye7QWXrtD/OuMyssgofjxbtpEqLgPTw/WJiCC
	u9+gzAFjj0qRBHfgUBXqF5IIDRWbAy/XFVX5zylqwEgNxljJfP3bC1PIw29S/4PUukrlxV
	vPph7bhvBdFM+3KGJHxxLmc63mKrPFKxGmcUi2Owpin4nq6RnVYDAnJSmI4OqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732943189;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=EfV2ILOSjKVd/7/suuo7Di9UMI8S9cOCpK9pBob2BdE=;
	b=cqR1Aou2bSfAWxtBfTcMTU+pOpUK4TOsfUCahuc1df2Az+DUTJp3bufKJF4t2eiDwbnDHn
	7NjfLDS8TqMVPMHq42xgrXOi9wUhu92DCNldTVkiA2R3GkilP/H0sNF766axx6J+sL8NZk
	QfQDGxJi1X8kJLIwXpMkshydJfgYwwyRH9FslzeR6H+i7pvELoCNjCjcIEAky5lqRNMOhe
	qE5kz8+JZ/QpjN+UOFm8Bmw7SRwnRItm2KQ+PItKsNvd+NGH1KF7uGawdMOhBVacrnnO5o
	0XR32ze/lNT6AtMbwy3Osw5DlChw9xgggZikbShwFByqoNH7XQFLBtnGxa8Uyg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732943189; a=rsa-sha256; cv=none;
	b=cfAoopZwXTOQcdTJk2SBsATz6U7WAOeEPm3eFW5Cg/D+IQ8hmc8vEgV9p7vhxEYiSYoXw5
	YpEtQS19YLrq8G3L3LmStZu8m236T5fGxKpO5RPvmrSQisoQrBpS21K5pxPaAWHaV2R2+I
	92+33csKRBW04aR/Jq7KlAOIzn6K3CYVGJaO8UKTBFV6y/5DoxAG97GsR9s9nPYwNzyOz3
	RCCOST2VFCoxJYj1BgymeFJUlwatNvXTkFzOeeICiWePix0DK9flnp93V4TMuY3lh4ChC9
	pBet36a7Tfz98OVwBaAF6Wwb65hkjuLpq+KD0KRb9VMhXnkNqp47lQgw5In4+A==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0dLY4FSXztx4;
	Sat, 30 Nov 2024 05:06: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 4AU56TW5031164;
	Sat, 30 Nov 2024 05:06:29 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AU56QDl031161;
	Sat, 30 Nov 2024 05:06:26 GMT
	(envelope-from git)
Date: Sat, 30 Nov 2024 05:06:26 GMT
Message-Id: <202411300506.4AU56QDl031161@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: 8d457988a724 - main - ota: Merge 20240728 (bsd-feature)
  from ota 3319c34a8713
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 8d457988a72487b35ee3922671775d73169339e3
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=8d457988a72487b35ee3922671775d73169339e3

commit 8d457988a72487b35ee3922671775d73169339e3
Merge: e8d027be6b84 45af733dbd17
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2024-11-30 04:57:45 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-11-30 04:57:45 +0000

    ota: Merge 20240728 (bsd-feature) from ota 3319c34a8713
    
    Jul 28, 2024
            Fixed readcsvrec resize segfault when reading csv records longer
            than 8k. Thanks to Ozan Yigit.
            mktime() added to bsd-features branch. Thanks to Todd Miller.

 contrib/one-true-awk/FIXES  |  5 +++++
 contrib/one-true-awk/awk.h  |  1 +
 contrib/one-true-awk/b.c    |  2 +-
 contrib/one-true-awk/lex.c  |  1 +
 contrib/one-true-awk/lib.c  |  2 +-
 contrib/one-true-awk/main.c |  2 +-
 contrib/one-true-awk/run.c  | 22 +++++++++++++++++++++-
 7 files changed, 31 insertions(+), 4 deletions(-)


From nobody Sat Nov 30 17:35:20 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0xyd2drrz5fMxD;
	Sat, 30 Nov 2024 17:35: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0xyd03mXz45L5;
	Sat, 30 Nov 2024 17:35:21 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732988121;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=QtGpj47a+NL5zfEDsedZvgJK3Qj88xIBVCmPtcXG/CM=;
	b=W5bFyx9nUTZgmWvRXmLGTSgNHFJiW3hbw0NTukPqjSCrE+V89B7o+hbyyg+/9TBcuhuoKA
	xuk21vTLR4dSD7DMBhvlX58n87vaimz7zDuWD1NpaJl7JW+4dKkjhmg6fKLd6T/aL0aEdR
	94cvn7438hr0I69NttFTanZ5ZU+pnY+O1rO76uEiCg68/YryYn95Ur9Xk6EpR2AkJ0p+Q2
	7BNOoRsPaj4DglJiNcOzYXlkvdukGGXvhg37sAcec0z7l2X0uMIBL47foRdA3M//y/b7U/
	SoSLxhzjVXgzIlzx9Mk0SVr9o7Oui7AON0e6ubv4e0TMp8fMOxMMhhRI3tZwhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732988121;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=QtGpj47a+NL5zfEDsedZvgJK3Qj88xIBVCmPtcXG/CM=;
	b=gO8sf7vZurDl0X4DwzgvUV7gc5TfhibyPhnj19O+Bh/zfVFGq9+5fZmm7k+IyhYFeXtV9X
	VBaKmCwtnydtsf6/rIMSKl/AZ4JxmKXK9cso3ICe3vM9c1IMCensLzcXtbxX6kogbYpw7X
	58evF4nze1E1YnADOOjtF60OqBmqwQevr1WBgsQJPPo2OZUVI0ac4U2o9T5z5/0UK5ypTh
	JZQznoqzvbOO8GNH1E+C9+oEzOT8v3uo53oAPzByStMh67HVwxYJMwCZxSh1mvdF6PZw4c
	hMrH/5vfPsE/YB2+1Zd2hMpGa3JzMs5y+mSnwAYsdmg/w6k8oz1KJUrVTcGZyg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732988121; a=rsa-sha256; cv=none;
	b=GQhkx5aM6YH4J8RAB7r1xCdel4BdX0AlUo3jepHbLlslbbIrShg9rKEtNlCMBkdAVWLe5G
	Zt00p5SPUoiPe+M4n2mYO63z9J6Utz66y+Qjk+1e6xJbPnEi6eUJ7YXqfuufd79gw1hsSt
	OgKrUzzPtrV+yBgzvUAfZ2JfnTdue4O1T8z/1tkoJGebPsxk1I28VXA0O/CJrr1ACzsq7z
	Buplf2R8gzxc3AymDx90DrbVGLDIBJefN8p5lbwcGxAySTGCwdqZf7NCWJoLKT8rHswjTD
	U7fP5cIr4NfcJhMZIErnq11ZkC0hSq1Ic9mjO1KZBM/dRwUlTpaRp+/3HKyvkA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0xyc6myZzHfK;
	Sat, 30 Nov 2024 17:35: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 4AUHZKqW028956;
	Sat, 30 Nov 2024 17:35:20 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AUHZKpo028953;
	Sat, 30 Nov 2024 17:35:20 GMT
	(envelope-from git)
Date: Sat, 30 Nov 2024 17:35:20 GMT
Message-Id: <202411301735.4AUHZKpo028953@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Alan Cox <alc@FreeBSD.org>
Subject: git: c296ac7e0f1c - main - vm: Optimize page rename
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: alc
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: c296ac7e0f1c2fc9bc8bcab0177afb123ce6993a
Auto-Submitted: auto-generated

The branch main has been updated by alc:

URL: https://cgit.FreeBSD.org/src/commit/?id=c296ac7e0f1c2fc9bc8bcab0177afb123ce6993a

commit c296ac7e0f1c2fc9bc8bcab0177afb123ce6993a
Author:     Alan Cox <alc@FreeBSD.org>
AuthorDate: 2024-11-27 08:32:07 +0000
Commit:     Alan Cox <alc@FreeBSD.org>
CommitDate: 2024-11-30 08:59:15 +0000

    vm: Optimize page rename
    
    Rename vm_page_rename() to vm_page_iter_rename() to reflect its
    reimplementation using iterators, and pass the page to this function
    rather than spending clock cycles looking it up.  Change its return
    value from 0/1 to a bool.
    
    Reviewed by:    dougm, markj
    Differential Revision:  https://reviews.freebsd.org/D47829
---
 sys/vm/vm_object.c | 10 ++++++----
 sys/vm/vm_page.c   | 28 ++++++++++++++++------------
 sys/vm/vm_page.h   |  3 ++-
 sys/vm/vm_reserv.c |  4 ++--
 4 files changed, 26 insertions(+), 19 deletions(-)

diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index 84981d7cc7cd..ff95469749b7 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -1604,8 +1604,9 @@ retry:
 			continue;
 		}
 
-		/* vm_page_rename() will dirty the page. */
-		if (vm_page_rename(&pages, new_object, m->pindex - offidxstart)) {
+		/* vm_page_iter_rename() will dirty the page. */
+		if (!vm_page_iter_rename(&pages, m, new_object, m->pindex -
+		    offidxstart)) {
 			vm_page_xunbusy(m);
 			VM_OBJECT_WUNLOCK(new_object);
 			VM_OBJECT_WUNLOCK(orig_object);
@@ -1789,9 +1790,10 @@ vm_object_collapse_scan(vm_object_t object)
 		 * backing object to the main object.
 		 *
 		 * If the page was mapped to a process, it can remain mapped
-		 * through the rename.  vm_page_rename() will dirty the page.
+		 * through the rename.  vm_page_iter_rename() will dirty the
+		 * page.
 		 */
-		if (vm_page_rename(&pages, object, new_pindex)) {
+		if (!vm_page_iter_rename(&pages, p, object, new_pindex)) {
 			vm_page_xunbusy(p);
 			next = vm_object_collapse_scan_wait(&pages, object,
 			    NULL);
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index a37619c7743e..8a23f900e987 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -2065,10 +2065,14 @@ vm_page_replace(vm_page_t mnew, vm_object_t object, vm_pindex_t pindex,
 }
 
 /*
- *	vm_page_rename:
+ *	vm_page_iter_rename:
  *
- *	Move the current page, as identified by iterator, from its current
- *	object to the specified target object/offset.
+ *	Tries to move the specified page from its current object to a new object
+ *	and pindex, using the given iterator to remove the page from its current
+ *	object.  Returns true if the move was successful, and false if the move
+ *	was aborted due to a failed memory allocation.
+ *
+ *	Panics if a page already resides in the new object at the new pindex.
  *
  *	Note: swap associated with the page must be invalidated by the move.  We
  *	      have to do this for several reasons:  (1) we aren't freeing the
@@ -2082,18 +2086,18 @@ vm_page_replace(vm_page_t mnew, vm_object_t object, vm_pindex_t pindex,
  *
  *	The objects must be locked.
  */
-int
-vm_page_rename(struct pctrie_iter *pages,
+bool
+vm_page_iter_rename(struct pctrie_iter *old_pages, vm_page_t m,
     vm_object_t new_object, vm_pindex_t new_pindex)
 {
-	vm_page_t m, mpred;
+	vm_page_t mpred;
 	vm_pindex_t opidx;
 
+	KASSERT((m->ref_count & VPRC_OBJREF) != 0,
+	    ("%s: page %p is missing object ref", __func__, m));
+	VM_OBJECT_ASSERT_WLOCKED(m->object);
 	VM_OBJECT_ASSERT_WLOCKED(new_object);
 
-	m = vm_radix_iter_page(pages);
-	KASSERT(m->ref_count != 0, ("vm_page_rename: page %p has no refs", m));
-
 	/*
 	 * Create a custom version of vm_page_insert() which does not depend
 	 * by m_prev and can cheat on the implementation aspects of the
@@ -2103,7 +2107,7 @@ vm_page_rename(struct pctrie_iter *pages,
 	m->pindex = new_pindex;
 	if (vm_radix_insert_lookup_lt(&new_object->rtree, m, &mpred) != 0) {
 		m->pindex = opidx;
-		return (1);
+		return (false);
 	}
 
 	/*
@@ -2111,7 +2115,7 @@ vm_page_rename(struct pctrie_iter *pages,
 	 * the listq iterator is tainted.
 	 */
 	m->pindex = opidx;
-	vm_radix_iter_remove(pages);
+	vm_radix_iter_remove(old_pages);
 	vm_page_remove_radixdone(m);
 
 	/* Return back to the new pindex to complete vm_page_insert(). */
@@ -2121,7 +2125,7 @@ vm_page_rename(struct pctrie_iter *pages,
 	vm_page_insert_radixdone(m, new_object, mpred);
 	vm_page_dirty(m);
 	vm_pager_page_inserted(new_object, m);
-	return (0);
+	return (true);
 }
 
 /*
diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h
index f641942efb87..29344eadbf05 100644
--- a/sys/vm/vm_page.h
+++ b/sys/vm/vm_page.h
@@ -655,6 +655,8 @@ void vm_page_iter_init(struct pctrie_iter *, vm_object_t);
 void vm_page_iter_limit_init(struct pctrie_iter *, vm_object_t, vm_pindex_t);
 vm_page_t vm_page_iter_lookup(struct pctrie_iter *, vm_pindex_t);
 bool vm_page_iter_remove(struct pctrie_iter *pages);
+bool vm_page_iter_rename(struct pctrie_iter *old_pages, vm_page_t m,
+    vm_object_t new_object, vm_pindex_t new_pindex);
 void vm_page_launder(vm_page_t m);
 vm_page_t vm_page_lookup(vm_object_t, vm_pindex_t);
 vm_page_t vm_page_lookup_unlocked(vm_object_t, vm_pindex_t);
@@ -682,7 +684,6 @@ void vm_page_release_locked(vm_page_t m, int flags);
 vm_page_t vm_page_relookup(vm_object_t, vm_pindex_t);
 bool vm_page_remove(vm_page_t);
 bool vm_page_remove_xbusy(vm_page_t);
-int vm_page_rename(struct pctrie_iter *, vm_object_t, vm_pindex_t);
 void vm_page_replace(vm_page_t mnew, vm_object_t object,
     vm_pindex_t pindex, vm_page_t mold);
 int vm_page_sbusied(vm_page_t m);
diff --git a/sys/vm/vm_reserv.c b/sys/vm/vm_reserv.c
index aa20eca129fb..ad513962d50d 100644
--- a/sys/vm/vm_reserv.c
+++ b/sys/vm/vm_reserv.c
@@ -678,7 +678,7 @@ vm_reserv_alloc_contig(vm_object_t object, vm_pindex_t pindex, int domain,
 		if (pa < low || pa + size > high ||
 		    !vm_addr_ok(pa, size, alignment, boundary))
 			goto out;
-		/* Handle vm_page_rename(m, new_object, ...). */
+		/* Handle vm_page_iter_rename(..., m, new_object, ...). */
 		if (!bit_ntest(rv->popmap, index, index + npages - 1, 0))
 			goto out;
 		if (!vm_domain_allocate(vmd, req, npages))
@@ -847,7 +847,7 @@ vm_reserv_alloc_page(vm_object_t object, vm_pindex_t pindex, int domain,
 		vm_reserv_lock(rv);
 		/* Handle reclaim race. */
 		if (rv->object != object ||
-		    /* Handle vm_page_rename(m, new_object, ...). */
+		    /* Handle vm_page_iter_rename(..., m, new_object, ...). */
 		    bit_test(rv->popmap, index)) {
 			m = NULL;
 			goto out;

From nobody Sat Nov 30 18:52:42 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y0zgt500Lz5fThl;
	Sat, 30 Nov 2024 18:52: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y0zgt4P5xz4DCf;
	Sat, 30 Nov 2024 18:52:42 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1732992762;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Do7UagTfXOHxTe51paX3DTAHfK76x/rC4OmvG4YeSGM=;
	b=mzUsjUvKGjbM3bZN3K8/P1pE2EFJdIvStBRHnc/GYgflp0b+unZZg/9PGyovDm3cm0SBlc
	UIqXO64kWv5i1Oze/+A3r4hh9p10wI0mW5+XbJw1SueszU5xnIct9IJ69JRbUPWqyydlFq
	OdXDCRSJdFAdXIXajV64Hf47+s0Zo5VHqJdkozQ1Qi2QtynNbzmaIyxAOEwNSJxso3Pnlo
	gj++PmA/Bl+mnelciEfIbYzj9pbw/VLci20MhjxJ+fPG2pbLBdcWY3bmQ4lgYyoopGeoc7
	yMhK8ejPmBsFaY2B8Ym9lwJ60H9VSRpYEcfinO15bGXMB5aggMLH7M4sY7xZJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1732992762;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Do7UagTfXOHxTe51paX3DTAHfK76x/rC4OmvG4YeSGM=;
	b=YDMraLHDI2fMv9zyPNyQBqyzQbuBgoxZENoQZVAGQ728vEGiMEUWsHjo9CM7hgclr7Oa3S
	d/TDHXFCKBz4lKwM8ajxFlE2frXmcPVPBstghj2t+fGcQsUcT/PSvXIv5i+ZY4GUjoBuK6
	d+ghqN2S6dexWkxW94hbSFUu9QOOyA7Iz2qxG2v47dYH1xKkEy2/DqHkYhxJqwG869EZQe
	HSZE+vgjquDWbcX+fapsvr6FiIgiQNLxDwFKS+k4qEQYPMf/3B0XAMCFyQRZAgQWj/QBtG
	uh3crO/O/1c9bHqSleA5H3kCRFbPMTgbJpxeExErk0dzwcGmZlR4KkCBE9PL3Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1732992762; a=rsa-sha256; cv=none;
	b=qTnlFz2KD9NsdVFRbWklfPoLlFTSwC2kRrPfo04sX+aYO+zNqTCffuHzVsRUdUydDxI3jE
	ScqQbNIyFdAfdHswPtKkOeYFDRs9e1U0DeUiQVqfR4HWafcks1WEQRB0exwtRzFQkIRR2i
	fZSmNlURWojFjcB7+bUOcZXeAm+RtJZlUg+amzCdrcZ81uy/fNdDIdHafHU+1j0BlBN/ot
	oTWxknmk6Y0orsQi5OS2Fv7bJivh1xPZNqI7SMhBinvyf9PReB/KaqfsAXfKiMdP7xXxG9
	i3ElIzBvP4AuCQOuCGMJaiJ6LKMGv+Y9BmuNQejBF4YslY9O16LoaQROv7+sIA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y0zgt40JhzL3B;
	Sat, 30 Nov 2024 18:52: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 4AUIqgd9075795;
	Sat, 30 Nov 2024 18:52:42 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AUIqgQ4075792;
	Sat, 30 Nov 2024 18:52:42 GMT
	(envelope-from git)
Date: Sat, 30 Nov 2024 18:52:42 GMT
Message-Id: <202411301852.4AUIqgQ4075792@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Mark Johnston <markj@FreeBSD.org>
Subject: git: fe291141486a - main - syslogd: Fix issues reported
  by gcc
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: markj
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: fe291141486acf27ed1c8eed791ba9897f84c3f0
Auto-Submitted: auto-generated

The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=fe291141486acf27ed1c8eed791ba9897f84c3f0

commit fe291141486acf27ed1c8eed791ba9897f84c3f0
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2024-11-29 19:43:42 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2024-11-30 18:52:34 +0000

    syslogd: Fix issues reported by gcc
    
    - When forwaring a message, don't assume that f->f_num_addr_fds > 0.
    - Avoid calling free() on a stack-allocated object.
    
    Fixes:  4ecbee2760f7 ("syslogd: Open forwarding socket descriptors")
    Fixes:  f4b4a10abb26 ("syslogd: Move selector parsing into its own function")
    
    Reviewed by:    jfree
    Differential Revision:  https://reviews.freebsd.org/D47844
---
 usr.sbin/syslogd/syslogd.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 0e063b72beb6..23ef5d78c319 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -1795,6 +1795,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, int flags)
 		iovlist_truncate(il, MaxForwardLen);
 #endif
 
+		lsent = 0;
 		for (size_t i = 0; i < f->f_num_addr_fds; ++i) {
 			struct msghdr msg = {
 				.msg_iov = il->iov,
@@ -2941,7 +2942,6 @@ parse_selector(const char *p, struct filed *f)
 		pri = decode(buf, prioritynames);
 		if (pri < 0) {
 			dprintf("unknown priority name \"%s\"", buf);
-			free(f);
 			return (NULL);
 		}
 	}
@@ -2965,7 +2965,6 @@ parse_selector(const char *p, struct filed *f)
 			i = decode(buf, facilitynames);
 			if (i < 0) {
 				dprintf("unknown facility name \"%s\"", buf);
-				free(f);
 				return (NULL);
 			}
 			f->f_pmask[i >> 3] = pri;

From nobody Sat Nov 30 21:56:40 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y13m90fdhz5fl3K;
	Sat, 30 Nov 2024 21:56: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y13m86v8Sz4ggd;
	Sat, 30 Nov 2024 21:56:40 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733003801;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=eNuYsKm1MJdeTG2QMoorF31xc6hLlheLbDxRtuo+Uas=;
	b=HUMZcy7XFbj1s1lgzZ3Hl9XuGu5bpcR7F9SgqvoF/pv0Z2g+iUhnoHfZKq/WklqCZSD4aE
	Q2+N0U1VMrudQcZ63zPAD272S+eNqxabivGkiRYPOUqZn6IdtaJ6HcM24pcCGDf5xEuzc1
	YRnlFVmdCZYIt+yOC58iYeYXJQ9zNbx5XEMvkGPoYD39DebiFKrRviJRax+AgKq7fKsD4W
	s0n1zzFHqURb4NPhx8AxJqRPK8+FkpGQ2m5wOjhnEDPWheekT+/Dlr7EMRrJX6VOpeO9S5
	zY5i6ZDxLhmsEO+WxqQxNQoIg/XMOh/W2zZEjPM/T1B4xnuO2I9QdFD8p1MQMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733003801;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=eNuYsKm1MJdeTG2QMoorF31xc6hLlheLbDxRtuo+Uas=;
	b=HkbtccXBWQRI/YjLXeGlTXWbFf5fijjGcngKViaC/lkzrpiR8G2J7cnHVXHjrCvJP7Kmhw
	Cqv66nhKosd4waP7gkTa/i6H9umq0c0aERVblH6DSAcz/O7ykVMhnKvEcN0nMM7E2KMFo8
	CwU6G/0O+Rup8ZrdVYdg+tjScOmEJXWvVLdJuA+42s/7OoeOoA7oake8RgtLLQJjDMM9lD
	MYZgYzKcr9D8NGCwkVSsZHUp7Mo9TZTfjL0xK+lU+6snSKbw8Dgi/Z6tuPEpH88KgIxRcE
	90tDaf8SvjKIJGBdz7/UUHoHgIiqbSnyXSu+yMDzLiSGzX+lP5t0fbT7twKo+Q==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733003801; a=rsa-sha256; cv=none;
	b=gLGnqG5vR1mAGHzAlhiEqkkVBKBk5TaV58B8Lvvh1+aeJOiNwGYHffVdI6WGY2am3CoT/Z
	L3AGSh1pVENEKnm6KhPdQXPTZJFTvVUOWthWNPFK8kE2G/OwjX/25hH+ji6r/dZHdVQS3u
	UFzI4ZFLehKuHZO4KUHrnUdZOq1ZAIUNSFqNLSp5l/10Rd6fqtJWXyLMXPQb8PZKQovvO+
	LwX5888jPABSIvrNcGoRG4rYLX8Tlo2eVWqIt6EmFEqrRChPku1WGkLHFOmIuKNL99NYra
	v3TBaUMwCnfPnXQE40gIOscq+V4NU7Dkbw8EbRPEJKBqjSW3Pbn9Ki6kELPkjg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y13m86Vp2zQZn;
	Sat, 30 Nov 2024 21:56: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 4AULueIb013023;
	Sat, 30 Nov 2024 21:56:40 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4AULuewe013020;
	Sat, 30 Nov 2024 21:56:40 GMT
	(envelope-from git)
Date: Sat, 30 Nov 2024 21:56:40 GMT
Message-Id: <202411302156.4AULuewe013020@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Dmitry Morozovsky <marck@FreeBSD.org>
Subject: git: 7aa7f4b5c324 - main - services: fix typo ucp -> udp
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: marck
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 7aa7f4b5c324a0f698b3ae1e39856cc087a14e0c
Auto-Submitted: auto-generated

The branch main has been updated by marck:

URL: https://cgit.FreeBSD.org/src/commit/?id=7aa7f4b5c324a0f698b3ae1e39856cc087a14e0c

commit 7aa7f4b5c324a0f698b3ae1e39856cc087a14e0c
Author:     Dmitry Morozovsky <marck@FreeBSD.org>
AuthorDate: 2024-11-30 21:53:47 +0000
Commit:     Dmitry Morozovsky <marck@FreeBSD.org>
CommitDate: 2024-11-30 21:53:47 +0000

    services: fix typo ucp -> udp
    
    Fix two proto name typos
    
    MFC after:      2 weeks
---
 usr.sbin/services_mkdb/services | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/usr.sbin/services_mkdb/services b/usr.sbin/services_mkdb/services
index aa5421366ae6..4a5b6863d92d 100644
--- a/usr.sbin/services_mkdb/services
+++ b/usr.sbin/services_mkdb/services
@@ -476,8 +476,8 @@ td-service	267/udp    #Tobit David Service Layer
 td-replica	268/tcp    #Tobit David Replica
 td-replica	268/udp    #Tobit David Replica
 manet		269/tcp    #MANET Protocols [RFC5498]
-manet		269/ucp    #MANET Protocols [RFC5498]
-gist		270/ucp    #Q-mode encapsulation for [RFC5971]
+manet		269/udp    #MANET Protocols [RFC5498]
+gist		270/udp    #Q-mode encapsulation for [RFC5971]
 pt-tls		271/tcp    #Assessment (NEA) Posture
 #		272-279	   unassigned
 http-mgmt	280/tcp

From nobody Sun Dec  1 00:25:30 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y17480W9Cz5fv1j
	for <dev-commits-src-main@mlmmj.nyi.freebsd.org>; Sun, 01 Dec 2024 00:25:44 +0000 (UTC)
	(envelope-from sobomax@sippysoft.com)
Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b])
	(using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "smtp.gmail.com", Issuer "WR4" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y17470W3mz4vXD
	for <dev-commits-src-main@freebsd.org>; Sun,  1 Dec 2024 00:25:43 +0000 (UTC)
	(envelope-from sobomax@sippysoft.com)
Authentication-Results: mx1.freebsd.org;
	dkim=pass header.d=sippysoft.com header.s=google header.b=QVx6Dt0B;
	spf=pass (mx1.freebsd.org: domain of sobomax@sippysoft.com designates 2607:f8b0:4864:20::102b as permitted sender) smtp.mailfrom=sobomax@sippysoft.com;
	dmarc=pass (policy=none) header.from=sippysoft.com
Received: by mail-pj1-x102b.google.com with SMTP id 98e67ed59e1d1-2e9e377aeadso2483079a91.1
        for <dev-commits-src-main@freebsd.org>; Sat, 30 Nov 2024 16:25:42 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=sippysoft.com; s=google; t=1733012742; x=1733617542; darn=freebsd.org;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=ck87qa/3RPzXbuKJ0pcvzmgPV9Wc9R3RkZVwoakG/Pw=;
        b=QVx6Dt0B0eK7qfmf4gyt9cb/rhwOPheLQ6nxRjVa2tdYnyRIVNgktQd0l/Vw6ZrKG8
         oydniymCAWYjbAtcpRk/lMZvvywG8WqTHKje+UtT6/8IVEHU4k89aaSlRnqQwhRO78uZ
         YKStXDfgybhk2qEam9d4wBEF+NweBc6tsjt6s=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1733012742; x=1733617542;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=ck87qa/3RPzXbuKJ0pcvzmgPV9Wc9R3RkZVwoakG/Pw=;
        b=ae890yFm+GmcR8Q+mJ58gIUWTRcNBIaKwxJQ1R52D2wneEQHPsx4GfZPIjHfIu4jNl
         ojibzEbGM2KCGdRuL5xZTJlZcs0tKsSGMI2/ltQ0Mc4H8YnLA7CUrmPTGnca2uHLJ0pI
         Z9kJNJwL9JT42FuXRvVbtQDLOrolu29LySh9WTNglkcPcaZLosPmHJ1I68X9R5M6wCzP
         BvWLWlL8SlxjLONFtWRfijQzA8p6616y5eh8kPqHiiO7DHXh+UbLKv1wnLccZ6qmkUQd
         PPorNjRTgFV8aKreHbCfP2QQijrKeQGTLap8Lqejv9XYaXpx8qTf7G3tAY8jHj29L+CX
         YngA==
X-Forwarded-Encrypted: i=1; AJvYcCXmS4P0rrtKUZdaNGoyrNf5lbTFgNDtOmUuLVWpd3e1zGqX6SByCQvIwGC7tK4qwf/zXPJXokBS7zIANV75MkoZaSz/OA==@freebsd.org
X-Gm-Message-State: AOJu0Yza2bBWonGqNSAJlL+FNocxkRt1kXPcgrMcLWs+9UsfYPIYmUwo
	4e32tDyL66MXWUXeaq7Nee9T3bI8OS8oSck5U07gLhq6HOT3V3TU5b1TDed/4woCJEVjuI+T4MC
	aFVxSqwJCF5e73BWzaOfQt2q3lwPPzTCcuigaIA==
X-Gm-Gg: ASbGncvGKAYEMtUxC5sekwZXKvj6vHXLVuBGQRI/PE59OG76Udd6gnTUmMOEITHJT1e
	Y+VLDKkKGZ0BMOjjaDhMkScaK22c1W83nFpL95m72weIKpIkhcOv7gtx7zXNKt6nP1A==
X-Google-Smtp-Source: AGHT+IGaXfP4Z+XU2Taci3qYcjjP1TRX1uCZllHhhbJQqMWgMHgzW8QYNYeWy++YtbRoMTh45gM7RcuAKVEoPTIYQFE=
X-Received: by 2002:a17:90b:4b87:b0:2ea:6551:da5d with SMTP id
 98e67ed59e1d1-2ee08eb2b6emr20673708a91.13.1733012741653; Sat, 30 Nov 2024
 16:25:41 -0800 (PST)
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
References: <202411291222.4ATCMG8Y068265@gitrepo.freebsd.org> <Z0ncu8p149bHqCC_@kib.kiev.ua>
In-Reply-To: <Z0ncu8p149bHqCC_@kib.kiev.ua>
From: Maxim Sobolev <sobomax@sippysoft.com>
Date: Sat, 30 Nov 2024 16:25:30 -0800
Message-ID: <CAH7qZfuFYHp0+y0dfu3DvykgzZrYWP01ktuY+7wMYXOr+F06gw@mail.gmail.com>
Subject: Re: git: b165e9e3ea4e - main - Add fchroot(2)
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: Edward Tomasz Napierala <trasz@freebsd.org>, src-committers <src-committers@freebsd.org>, 
	dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Content-Type: multipart/alternative; boundary="000000000000dba1f606282a7800"
X-Spamd-Result: default: False [-4.00 / 15.00];
	NEURAL_HAM_MEDIUM(-1.00)[-1.000];
	NEURAL_HAM_LONG(-1.00)[-1.000];
	NEURAL_HAM_SHORT(-1.00)[-1.000];
	DMARC_POLICY_ALLOW(-0.50)[sippysoft.com,none];
	R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36];
	R_DKIM_ALLOW(-0.20)[sippysoft.com:s=google];
	MIME_GOOD(-0.10)[multipart/alternative,text/plain];
	ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
	ARC_NA(0.00)[];
	TO_DN_SOME(0.00)[];
	MISSING_XM_UA(0.00)[];
	FREEFALL_USER(0.00)[sobomax];
	RCVD_COUNT_ONE(0.00)[1];
	MIME_TRACE(0.00)[0:+,1:+,2:~];
	RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::102b:from];
	RCPT_COUNT_FIVE(0.00)[5];
	FROM_EQ_ENVFROM(0.00)[];
	FROM_HAS_DN(0.00)[];
	FREEMAIL_TO(0.00)[gmail.com];
	TO_MATCH_ENVRCPT_SOME(0.00)[];
	RCVD_TLS_LAST(0.00)[];
	PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org];
	MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org];
	DKIM_TRACE(0.00)[sippysoft.com:+]
X-Rspamd-Queue-Id: 4Y17470W3mz4vXD
X-Spamd-Bar: ---

--000000000000dba1f606282a7800
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

This is crazy and should be stopped at some point. I usually have a rule of
thumb, is that if I have to duplicate same API third time to accomodate
slightly different but largely the same usage scenario then it's time to
unify and generalize. By that rule stat() and fstat() are ok, but at the
time we felt the need to add statat()/fstatat() we should have stopped and
instead do a single xstat() that would encapsulate all 4 including original
stat() and fstat() and declare those compat_stat() and compat_fstat(). Plus
make internal structure future-proof by giving it a version number. Of
course none of this actually happened, so the same story repeats over and
over for dozen of other syscals. To make things worse each of the time
basic ABI changes (i.e. struct stat in this example, so we just copy all 4,
ending up with 8 syscals to care for where one would do. All this
contributed greatly to the fact that we are now pushing into 600 of syscals=
.

But why does it matter, I hear you say? Aren't syscals semi-private,
between our kernel and our libc. Well it's actually not so. There are very
popular tools and frameworks out there bypassing libc and calling into
kernel directly (golang for example, rust may be too). I suspect for that
reason we still have large chunk of freebsd11_xxx syscals shipped as first
class citizens in 14.x releases. Golang is particularly funny, since in the
core it would call latest kevent, but if you are using kevent from their os
package, you'd get compat11_kevent.

The chroot() would be particularly easy to make an exemplary in this, by
making xchroot(2), renaming chroot(2) into compat15_chroot(2) and making
both chroot(3) and fchroot(3) wrappers for xchroot(2). I am even willing to
do PoC if someone is willing to consider it.

-Max


On Fri, Nov 29, 2024, 7:25=E2=80=AFAM Konstantin Belousov <kostikbel@gmail.=
com>
wrote:

> On Fri, Nov 29, 2024 at 12:22:16PM +0000, Edward Tomasz Napierala wrote:
> > The branch main has been updated by trasz:
> >
> > URL:
> https://cgit.FreeBSD.org/src/commit/?id=3Db165e9e3ea4e327fc421d81c2a89242=
bd8720780
> >
> > commit b165e9e3ea4e327fc421d81c2a89242bd8720780
> > Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > AuthorDate: 2024-11-29 07:46:07 +0000
> > Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
> > CommitDate: 2024-11-29 12:10:02 +0000
> >
> >     Add fchroot(2)
> >
> >     This is similar to chroot(2), but takes a file descriptor instead
> >     of path.  Same syscall exists in NetBSD and Solaris.  It is part of
> a larger
> >     patch to make absolute pathnames usable in Capsicum mode, but shoul=
d
> >     be useful in other contexts too.
>
> I wonder if it should be fchrootat(fd, path, flags) with the support for
> AT_EMPTY_PATH instead.  Then fchroot() becomes the libc wrapper.
>
> I can see arguments both pro and contra.  Main argument against is that
> the immediate semantic is easily emulated by openat() + fchroot().  But
> the freedom of adding the fchroot-specific flags might be worth
> considering.
>
>

--000000000000dba1f606282a7800
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">This is crazy and should be stopped at some point. I usua=
lly have a rule of thumb, is that if I have to duplicate same API third tim=
e to accomodate slightly different but largely the same usage scenario then=
 it&#39;s time to unify and generalize. By that rule stat() and fstat() are=
 ok, but at the time we felt the need to add statat()/fstatat() we should h=
ave stopped and instead do a single xstat() that would encapsulate all 4 in=
cluding original stat() and fstat() and declare those compat_stat() and com=
pat_fstat(). Plus make internal structure future-proof by giving it a versi=
on number. Of course none of this actually happened, so the same story repe=
ats over and over for dozen of other syscals. To make things worse each of =
the time basic ABI changes (i.e. struct stat in this example, so we just co=
py all 4, ending up with 8 syscals to care for where one would do. All this=
 contributed greatly to the fact that we are now pushing into 600 of syscal=
s.<div dir=3D"auto"><br></div><div dir=3D"auto">But why does it matter, I h=
ear you say? Aren&#39;t syscals semi-private, between our kernel and our li=
bc. Well it&#39;s actually not so. There are very popular tools and framewo=
rks out there bypassing libc and calling into kernel directly (golang for e=
xample, rust may be too). I suspect for that reason we still have large chu=
nk of freebsd11_xxx syscals shipped as first class citizens in 14.x release=
s. Golang is particularly funny, since in the core it would call latest kev=
ent, but if you are using kevent from their os package, you&#39;d get compa=
t11_kevent.</div><div dir=3D"auto"><br></div><div dir=3D"auto">The chroot()=
 would be particularly easy to make an exemplary in this, by making xchroot=
(2), renaming chroot(2) into compat15_chroot(2) and making both chroot(3) a=
nd fchroot(3) wrappers for xchroot(2). I am even willing to do PoC if someo=
ne is willing to consider it.</div><div dir=3D"auto"><br></div><div dir=3D"=
auto">-Max</div><br><br><div class=3D"gmail_quote" dir=3D"auto"><div dir=3D=
"ltr" class=3D"gmail_attr">On Fri, Nov 29, 2024, 7:25=E2=80=AFAM Konstantin=
 Belousov &lt;<a href=3D"mailto:kostikbel@gmail.com">kostikbel@gmail.com</a=
>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0=
 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, Nov 29, 2024 a=
t 12:22:16PM +0000, Edward Tomasz Napierala wrote:<br>
&gt; The branch main has been updated by trasz:<br>
&gt; <br>
&gt; URL: <a href=3D"https://cgit.FreeBSD.org/src/commit/?id=3Db165e9e3ea4e=
327fc421d81c2a89242bd8720780" rel=3D"noreferrer noreferrer" target=3D"_blan=
k">https://cgit.FreeBSD.org/src/commit/?id=3Db165e9e3ea4e327fc421d81c2a8924=
2bd8720780</a><br>
&gt; <br>
&gt; commit b165e9e3ea4e327fc421d81c2a89242bd8720780<br>
&gt; Author:=C2=A0 =C2=A0 =C2=A0Edward Tomasz Napierala &lt;trasz@FreeBSD.o=
rg&gt;<br>
&gt; AuthorDate: 2024-11-29 07:46:07 +0000<br>
&gt; Commit:=C2=A0 =C2=A0 =C2=A0Edward Tomasz Napierala &lt;trasz@FreeBSD.o=
rg&gt;<br>
&gt; CommitDate: 2024-11-29 12:10:02 +0000<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Add fchroot(2)<br>
&gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0This is similar to chroot(2), but takes a file desc=
riptor instead<br>
&gt;=C2=A0 =C2=A0 =C2=A0of path.=C2=A0 Same syscall exists in NetBSD and So=
laris.=C2=A0 It is part of a larger<br>
&gt;=C2=A0 =C2=A0 =C2=A0patch to make absolute pathnames usable in Capsicum=
 mode, but should<br>
&gt;=C2=A0 =C2=A0 =C2=A0be useful in other contexts too.<br>
<br>
I wonder if it should be fchrootat(fd, path, flags) with the support for<br=
>
AT_EMPTY_PATH instead.=C2=A0 Then fchroot() becomes the libc wrapper.<br>
<br>
I can see arguments both pro and contra.=C2=A0 Main argument against is tha=
t<br>
the immediate semantic is easily emulated by openat() + fchroot().=C2=A0 Bu=
t<br>
the freedom of adding the fchroot-specific flags might be worth considering=
.<br>
<br>
</blockquote></div></div>

--000000000000dba1f606282a7800--

From nobody Sun Dec  1 06:54:12 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1HhN5PHcz5f8Ss;
	Sun, 01 Dec 2024 06:54: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1HhN2WF6z4cBX;
	Sun,  1 Dec 2024 06:54:12 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733036052;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Mm3ulr5dMSLsAlFMZUDU3gLNwXjZUMSa/MzaxDwZMcw=;
	b=KxFuXeb93U1lyBh++U7tXsJbG9msiqdKKmQXcaG6kfeYH10w0bbOsybN9kY5BJmOJyMHM+
	nhMConmWJfRMjw8s7NbvwCmkJ9FomhBqpZsofKUfxrIdYt6KBDSMBvFtFMUUk3MGcO+eaX
	Y6JEHVjJne74r6ojYXx/cx3dM7xdxjs8J8bFSKCVib4cU+knHO7rsLCIk6C6+veySZ+S5d
	mEwJwxGZHo7tbU1rwSgwu8U0D+yJmJV+M+248zHtXZreQQL1YYbvc5sOWwrnCdKZTNIx86
	7jkQd+fbaQfP1HVVf/xKUY0Zta6upP1nqqXC0aHJLOzwkyeNzrOQOax6dCi9HA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733036052;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=Mm3ulr5dMSLsAlFMZUDU3gLNwXjZUMSa/MzaxDwZMcw=;
	b=lGZ/L5+cEsDXOLVtZueFtBsrnRJ0w5lLgPDcLOvApH+w7xKBXGW/aD04kF+lc0eC+NDKgB
	kumrrqPFQVUNlpljasuFh32ZDERbDbkEDyU+dwij8I5yKLUFiQvnqzRHTzQVgOl2Jl6Bw1
	PWD8YqI89VoK3exifdKeGPJxGCuNz/DproqG6rSbdBHxBg7ChgOQCvskHD4oi770vtm7TN
	3kZqUW0xGl88GZDckQ+rFjDzYFaCPtWER07BjljAz1liz7WvPdvCiOwpD2/XN7tM2+TgaF
	/eufbRVBiMZEvNRIRbBbVBG+GEus0RXvH7kgJVncWgSCW1q3TXgmwamlMEn7pg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733036052; a=rsa-sha256; cv=none;
	b=Sh0n3WoN0LkUQJuTDlKy5kGQ3AWBlNeDuPVGC4T7qK8tbFjqwfUcoD/eIsPVgKCLSJazlE
	82TrY5cD1ou+oXA1+Ax/od9FY0vQtYXMMqDEFo9PiHrPxVOONC/kG3d9Ca6tVlT3yEjICB
	BLk3+zjUbQDjpkNd80kmtM7U2MjmzNJ6QR+AxBrHya6XgwCwtMGsQEzJe+sFCBW3F4dVNf
	icEnd/sxc+B6bQZSUEDjLHiRQ4o/s23vQVgusu/AlGWM9ZIZ3z6zbs/6/haFFgprWpDva3
	N4KUqMWBjbmWFnAaHRYDMvtqBzy3It08W1Nzso1hxXlc+nJJ5Bvr78cc/AkNZw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1HhN0tHWzjJW;
	Sun,  1 Dec 2024 06:54: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 4B16sCLg020245;
	Sun, 1 Dec 2024 06:54:12 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B16sCXc020242;
	Sun, 1 Dec 2024 06:54:12 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 06:54:12 GMT
Message-Id: <202412010654.4B16sCXc020242@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: 5fcaf1329722 - main - jemalloc: Remove obsolete files
  from the exclusion list
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 5fcaf1329722d5565900aa61659495d81e0c9ae4
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=5fcaf1329722d5565900aa61659495d81e0c9ae4

commit 5fcaf1329722d5565900aa61659495d81e0c9ae4
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2024-12-01 06:37:00 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-12-01 06:49:03 +0000

    jemalloc: Remove obsolete files from the exclusion list
    
    These files are not present upstream, nor in the tree after
    autoconf/configure.
    
    Remove the FREEBSD-* from the exclusion list. This likely breaks
    FREEBSD-upgrade, but that needs to be rewritten for being used with a
    vendor branch (or just scaled back to be just a how-to, no the full
    script). Remove the dot files, since the upgrade process doesn't create
    them.
    
    Sponsored by:           Netflix
---
 contrib/jemalloc/FREEBSD-Xlist | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/contrib/jemalloc/FREEBSD-Xlist b/contrib/jemalloc/FREEBSD-Xlist
index 31853070379f..41ca4712173e 100644
--- a/contrib/jemalloc/FREEBSD-Xlist
+++ b/contrib/jemalloc/FREEBSD-Xlist
@@ -1,9 +1,3 @@
-.appveyor.yml
-.autom4te.cfg
-.cirrus.yml
-.git*
-.travis.yml
-FREEBSD-*
 INSTALL.md
 Makefile*
 README
@@ -17,7 +11,6 @@ configure*
 doc/*.in
 doc/*.xml
 doc/*.xsl
-doc/*.html
 include/jemalloc/internal/atomic_msvc.h
 include/jemalloc/internal/jemalloc_internal_defs.h.in
 include/jemalloc/internal/jemalloc_preamble.h.in
@@ -29,10 +22,8 @@ include/jemalloc/internal/public_namespace.sh
 include/jemalloc/internal/public_symbols.txt
 include/jemalloc/internal/public_unnamespace.h
 include/jemalloc/internal/public_unnamespace.sh
-include/jemalloc/internal/size_classes.sh
 include/jemalloc/internal/smoothstep.sh
 include/jemalloc/internal/tsd_win.h
-include/jemalloc/jemalloc.h.in
 include/jemalloc/jemalloc.sh
 include/jemalloc/jemalloc_defs.h
 include/jemalloc/jemalloc_defs.h.in
@@ -48,7 +39,6 @@ include/jemalloc/jemalloc_rename.h
 include/jemalloc/jemalloc_rename.sh
 include/jemalloc/jemalloc_typedefs.h.in
 include/msvc_compat/
-install-sh
 jemalloc.pc*
 m4/
 msvc/

From nobody Sun Dec  1 06:54:13 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1HhQ0J0Zz5f7yw;
	Sun, 01 Dec 2024 06:54:14 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1HhP4z0Zz4c5n;
	Sun,  1 Dec 2024 06: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=1733036053;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=FjDFxakoDAyQ2BkGUXb3aokq4xZVZCzfdeBH2W3JsfU=;
	b=CpAPiQMdks3gQMyLxstYPp/Fo2M1Ay91QCLfm9a91FeJcLsA+dmzjBVC5IL5c1zuNf1mDA
	s9XEheLWY7N1p+7SkDJIHGEqISJsJ+pyNHHrrmneQyuwbBdDCvJL3+lZB+Y8VjZ5fPnA3S
	ryyfk/b2PL5dWybVRHy/48zBhXH3a5cIYnf6cVRcJAOVJRaTVJiSMFtpMwCYEkZ5U89RfC
	67RimDI/0HtkYpb2125oZDNlBOixZ0wc9sFWy7YVghrqR0JTbjtP5mekmXGElW2/zYeh6a
	0IC78rkPdT/8kFa160PpzGxrTJCodkC+zOW4wHze/Jljgmj/80zXyjYMYPwdwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733036053;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=FjDFxakoDAyQ2BkGUXb3aokq4xZVZCzfdeBH2W3JsfU=;
	b=M5HbX8MF/meiSdTh4/HHVJIVz0UeG20e7JbA+7WniCbMH1MD5syiGUfQziKbNwXMeDbVlG
	kYX+zEaLzj/HVtG0y9F8Gg8/kdm+d3ZhU50mP0CGs2IQaz28L+dNVbKscAPFNispMNHdMk
	mIY0D+lc6qbpO/d7i0ujGBccXs3nJJeW0wuLNbm3o0PauKnQV4D3lLNLIZap9vZIV+RHG4
	Iz2qY7NJPLfeoCowlSYIjB8GwrZpzwNtUzHvzdRfd7PW655bo+RttCdpmu2wXn3QJ2f8kA
	nV6rneqqN/6thPsZxPLpsengDfx3Pqa+N+jxlbZQuwOHb/lKEAZ6n/EJJzXqzg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733036053; a=rsa-sha256; cv=none;
	b=KALHh2JFcCkQbDv0C/aUGXeTkCwtYi5YLyAWjqFJF78q446jyZh9pfvwd+H8l4kx6vBYRC
	i8qKAqRzPLQcfwQ6WuVJIpvf/OU+IJeKnYFfoMRQ3EvfAXISVRWMGkR/Objtpm7JotgKfC
	koeNfLiGGDHyBw1/l2+zR2jn3KGYY2GI7ivmuXkrtVsLvtg0BzNSENp54BoXLco8aptn4p
	Qgcd+FSocwIFHI/aGCMrUiZVtrbShpie6M0ViO9GGzp4tKSodEchm9t9UQ39PL6IFJgPFt
	LHXpqmwUh/y7c262OFH0TeE8rG47lT2pxzIP+K27XBivZg0+RoMBqtZLJbvKjw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1HhP4ZQNzjJX;
	Sun,  1 Dec 2024 06: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 4B16sDDS020296;
	Sun, 1 Dec 2024 06: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 4B16sDnN020291;
	Sun, 1 Dec 2024 06:54:13 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 06:54:13 GMT
Message-Id: <202412010654.4B16sDnN020291@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: a2541386e117 - main - jemalloc: bootstramp vendor/jemalloc
  branch
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: a2541386e117da15a04464eed5226ca3167096ad
Auto-Submitted: auto-generated

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=a2541386e117da15a04464eed5226ca3167096ad

commit a2541386e117da15a04464eed5226ca3167096ad
Merge: 5fcaf1329722 d4d6bda0bc79
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2024-12-01 06:44:57 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-12-01 06:53:43 +0000

    jemalloc: bootstramp vendor/jemalloc branch
    
    Using the just created vendor/jemalloc (details on its creation there),
    create a subtree merge commit to boostrap (thanks emaste for the recipe
    for another bootstrap):
    % git merge -s subtree -Xsubtree=contrib/jemalloc -Xours vendor/jemalloc --allow-unrelated-histories
    
    Now, cleanup the imported sources:
    % cd contrib/jemalloc
    % cat FREEBSD-Xlist | xargs git rm -rf
    % git commit --amend
    % git diff freebsd/main main    # shows only FREEBSD-Xlist cleanups as diffs
    
    No changes intended.
    
    Sponsored by: Netflix


From nobody Sun Dec  1 19:10:50 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1c2M2n2wz5g3X2;
	Sun, 01 Dec 2024 19:10: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1c2M0sCpz46y1;
	Sun,  1 Dec 2024 19:10:51 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733080251;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=gwJWgW1lyY9UBrYq7MVWTVGuSaD1IHlI1pkUR+8fCpk=;
	b=UNaRvtUbJVbucC1ax0GsQ9uvgaf8j/NRddfHES0cAXv1Q6qBo4M/IbbyEs6UABoo8PifwS
	yBetXOln0QGO5MzmsbI5Mlu7wD979GR1H52AlWID3bMlOhDtRE6vhmY6m2FZoNWWUFuOkG
	5DTLeDQA7JpFNn5LqQclgnoES6LN027//2iB9wyXWNtbHGCYoPz2OidfW3LATLU8vqgasF
	Ibg3ScO6A1zB2Dug645DDCnlxO3nSIG7RVsOOid7Kn9RCD9toD01LXWLuiNJUSw3wqPDFV
	pb+1PtRHHQfMWmYMBnT2Ov4v9QmarJZCb0EIq3GV/IQHNWsdIyqZpSuRSBk+ew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733080251;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=gwJWgW1lyY9UBrYq7MVWTVGuSaD1IHlI1pkUR+8fCpk=;
	b=Bs04G3STOh8tpPU8cqbyJFVzARHp1kqj0ZZztK5LpYnybUfVqfnxNtKzwy7YnPbOGeDV2f
	WjYEVUbn7SbfMhVUHEkeYoSTgOPh2gbnSricjNjTKNSl7KyXnZLKMhSEMtbtaFxZEEABfx
	HpxY3Qu5DHvZGbPp3GbM0G0yqhMi+t91vdcGGnsSn/3GyetJivoBMH9Ljbrc+o6m+AyqPI
	nzXfxBzRF6JNEGSXXyPUgEzEGrg7xi2tMiy/UwAeye4VaEHS8ZsgLG31ZEX7QtKLfoAq++
	0k8u8VH6VVHdlhWRN542ds+vsjMfyOy36G1u9kpmSPn5XeWoagVgQYmNEO2Xjg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733080251; a=rsa-sha256; cv=none;
	b=aykemIFQLTAeglyOWjHvOCm74vIEzs5FUjXtXC2N0kfi1vWMDyF3hwHPTSFb39QtmU8x+J
	RlURViMbZ7KjzeOEugDHEserU8gL/9rGJXK5fjgdkg4/tvH/Q8tjzQydS3hQJPPh2bC3p5
	NdCKHao8dqeysDjemYu8v9HZ0iFSP6z21ILVhuSrnfrOvH9W4W6Iak1lgTvsHf6kPHpLob
	IcZX8iGaBBf5o8pCtcAV3PBXTu/b+CeWuTPztJtdw5evTOlYwLwj5gn3mIlF/aPCwhTus9
	5nGiI9qwG8NDD6JyUHMJp8zpIEVH+Afb5pULLNDscszmwv1+phrONJlHpvuIrQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1c2M0QRgz15MK;
	Sun,  1 Dec 2024 19:10: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 4B1JAo8r095823;
	Sun, 1 Dec 2024 19:10:50 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1JAoYX095820;
	Sun, 1 Dec 2024 19:10:50 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:10:50 GMT
Message-Id: <202412011910.4B1JAoYX095820@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kyle Evans <kevans@FreeBSD.org>
Subject: git: 6a7238fd7c60 - main - pw: set the user's home directory
  mode if it existed
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kevans
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 6a7238fd7c60f35191eadaa026d3d395c6140c47
Auto-Submitted: auto-generated

The branch main has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=6a7238fd7c60f35191eadaa026d3d395c6140c47

commit 6a7238fd7c60f35191eadaa026d3d395c6140c47
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2024-12-01 19:05:57 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2024-12-01 19:08:31 +0000

    pw: set the user's home directory mode if it existed
    
    The adduser(8) prompt allows one to set the mode of a new home
    directory, but pw(8) doesn't honor the -M mode if the home directory
    already exists at creation time.  It doesn't seem to make sense to
    ignore the mode (which may lead to a security issue on the system being
    configured) when we'll happily chown an existing directory, so fix the
    inconsistency.
    
    PR:             280099
    Reviewed by:    des, jlduran (previous version)
    Differential Revision:  https://reviews.freebsd.org/D46443
---
 usr.sbin/adduser/adduser.8 |  6 ++++--
 usr.sbin/pw/cpdir.c        | 27 +++++++++++++++++++++------
 2 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/usr.sbin/adduser/adduser.8 b/usr.sbin/adduser/adduser.8
index 8ba623fedd9d..e21a7653f250 100644
--- a/usr.sbin/adduser/adduser.8
+++ b/usr.sbin/adduser/adduser.8
@@ -27,7 +27,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd April 11, 2024
+.Dd December 1, 2024
 .Dt ADDUSER 8
 .Os
 .Sh NAME
@@ -246,7 +246,9 @@ file can reference the internal variables of the
 script.
 .It Fl M Ar mode
 Create the home directory with permissions set to
-.Ar mode .
+.Ar mode ,
+modified by the current
+.Xr umask 2 .
 .It Fl N
 Do not read the default configuration file.
 .It Fl q
diff --git a/usr.sbin/pw/cpdir.c b/usr.sbin/pw/cpdir.c
index 504933ab88af..3dee8f7c43ac 100644
--- a/usr.sbin/pw/cpdir.c
+++ b/usr.sbin/pw/cpdir.c
@@ -49,13 +49,28 @@ copymkdir(int rootfd, char const * dir, int skelfd, mode_t mode, uid_t uid,
 	if (*dir == '/')
 		dir++;
 
-	if (mkdirat(rootfd, dir, mode) != 0 && errno != EEXIST) {
-		warn("mkdir(%s)", dir);
-		return;
+	if (mkdirat(rootfd, dir, mode) != 0) {
+		mode_t pumask;
+
+		if (errno != EEXIST) {
+			warn("mkdir(%s)", dir);
+			return;
+		}
+
+		pumask = umask(0);
+		umask(pumask);
+
+		if (fchmodat(rootfd, dir, mode & ~pumask,
+		    AT_SYMLINK_NOFOLLOW) == -1)
+			warn("chmod(%s)", dir);
 	}
-	fchownat(rootfd, dir, uid, gid, AT_SYMLINK_NOFOLLOW);
-	if (flags > 0)
-		chflagsat(rootfd, dir, flags, AT_SYMLINK_NOFOLLOW);
+
+	if (fchownat(rootfd, dir, uid, gid, AT_SYMLINK_NOFOLLOW) == -1)
+		warn("chown(%s)", dir);
+
+	if (flags > 0 && chflagsat(rootfd, dir, flags,
+	    AT_SYMLINK_NOFOLLOW) == -1)
+		warn("chflags(%s)", dir);
 
 	if (skelfd == -1)
 		return;

From nobody Sun Dec  1 19:10:52 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1c2N6m26z5g3rQ;
	Sun, 01 Dec 2024 19:10: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1c2N1XXkz46Vr;
	Sun,  1 Dec 2024 19:10:52 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733080252;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=x2cTdXRpcO2JdFKZ4t8rwt4WuX+CozOcXpfMmejElmo=;
	b=XglU3ajkIyMiADJtc3Zce8b/ZlS3zWPhdDPHEIfxMOE5gidWjpVTjgVtzS2pGAYeJ2jYHy
	w2+SlywRVRiYdu3XwaKM23vj2Xp1SoN65eEVZWFqA3Dz1J2nH22vroAfi+Pyeeht6+J70J
	7CCHTjw7r0qaFuDaL2gyFiovMiWGbF9cb80uV9efJOIjoGmOsDN9HLGNLZMpvURAnKPp+z
	w4J4vOFbKc3xojnn74UZPmXFM9zCjRWnlTg3x/odlOauUkQSQ52pqSBXTfJh6t6Vsu9bw8
	VLgHQ8taqblReJ79xAZXByXpNBdIPtkqZSly/3rKYKalNYLGpebkHkgegaMV7Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733080252;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=x2cTdXRpcO2JdFKZ4t8rwt4WuX+CozOcXpfMmejElmo=;
	b=uYg+12xelUlyMTfxHEQThYZYv6IfitpcY1i1onqUiYWyb3MnRxhusLKjZa8X2V9sYt4hTs
	fyIljlBcHYFuNwo4Ai23hUvGkxFyN2iO18CRVssp0b2RThIkjwfmLqcFqYOMZTUmeK7m/r
	A5NxBjKqZR0S5/VkOY4S/LGUKO/nyVthVgXyVPfkJ/ZDLFVCukjmel2WQhXxxQ6qkLYMCN
	e/XCxMig+BjHaRQwk3JpbKLdiH1J+bQTk0YcgC4uBv5lA5c0OUi/xDJfa9RuFKXeBmQf9a
	mscXJZQ0GcxNvs/LBmrzKCJTYKR20K+c1uTC1FePEjInj6zXQXzEBKyntTCPNA==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733080252; a=rsa-sha256; cv=none;
	b=r9WEMgySwvTNaMvkM+ELg1nsnal83tg6VpUTbS07uUi6VICpUdmtBhZIiv3E1MfMPFTip0
	JvoIR8qQdapJdj/bH6OTOlyMGeobwrxlTp3Ihoi8uNb7L1WHDpuyXH2Y8vlg7ptUlTWOq4
	MQT3qiTwgAi3sdjEwGuzDSrM4jXoiD+dSvfOOTwMrlVUNLMYu7p30ACvGxn4qKsrsc2jkT
	wXVlaAWfMJlrBWHBhEYDo3j/cUHIP+KgtppUryNUC2arFinuQ4OI43YCk/tvMMU99NAwGV
	ooezbYlI++6TzyQwPdl92zV/aU82Bsv2RhTSwdYziOPs76QJ9Ik4RNzsu4vNag==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1c2N15xtz159t;
	Sun,  1 Dec 2024 19:10: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 4B1JAqlH095892;
	Sun, 1 Dec 2024 19:10:52 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1JAqY9095889;
	Sun, 1 Dec 2024 19:10:52 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:10:52 GMT
Message-Id: <202412011910.4B1JAqY9095889@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Kyle Evans <kevans@FreeBSD.org>
Subject: git: f7cf62cf728a - main - pw: tests: add a test for -M
  with a pre-existing home directory
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: kevans
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: f7cf62cf728a942e494a5b58438600998606617a
Auto-Submitted: auto-generated

The branch main has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=f7cf62cf728a942e494a5b58438600998606617a

commit f7cf62cf728a942e494a5b58438600998606617a
Author:     Jose Luis Duran <jlduran@FreeBSD.org>
AuthorDate: 2024-12-01 19:05:58 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2024-12-01 19:10:35 +0000

    pw: tests: add a test for -M with a pre-existing home directory
    
    Previous versions of pw(8) wouldn't chmod the home directory if it
    already existed prior to user creation, rendering adduser(8) -M
    ineffective in some cases.  Add a test to cover that situation.
    
    PR:             280099
    Reviewed by:    kevans
---
 usr.sbin/pw/tests/pw_useradd_test.sh | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/usr.sbin/pw/tests/pw_useradd_test.sh b/usr.sbin/pw/tests/pw_useradd_test.sh
index b4efa42bada7..6413c063d482 100755
--- a/usr.sbin/pw/tests/pw_useradd_test.sh
+++ b/usr.sbin/pw/tests/pw_useradd_test.sh
@@ -329,6 +329,21 @@ user_add_dir_body() {
 	    stat -f '%p' ${HOME}/home/foo
 }
 
+atf_test_case user_add_existing_dir
+user_add_existing_dir_body() {
+	populate_root_etc_skel
+
+	mkdir -p -m 0777 ${HOME}/home/foo
+	atf_check -o inline:"40777\n" \
+	    stat -f '%p' ${HOME}/home/foo
+
+	atf_check -s exit:0 ${RPW} useradd foo -M 0705 -m
+	atf_check grep -q '^foo:' $HOME/etc/master.passwd
+	atf_check test -d ${HOME}/home/foo
+	atf_check -o inline:"40705\n" \
+	    stat -f '%p' ${HOME}/home/foo
+}
+
 atf_test_case user_add_skel
 user_add_skel_body() {
 	populate_root_etc_skel
@@ -528,6 +543,7 @@ atf_init_test_cases() {
 	atf_add_test_case user_add_R_no_symlink
 	atf_add_test_case user_add_R_intermed
 	atf_add_test_case user_add_dir
+	atf_add_test_case user_add_existing_dir
 	atf_add_test_case user_add_skel
 	atf_add_test_case user_add_uid0
 	atf_add_test_case user_add_uid_too_large

From nobody Sun Dec  1 19:45:15 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1cp32zZTz5g5ZW;
	Sun, 01 Dec 2024 19:45: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1cp32F9Sz4CN0;
	Sun,  1 Dec 2024 19:45:15 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733082315;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ojgvYdmT2vZjLG/GutE8GVj2qxDfSfkmOr0YGfvmrxA=;
	b=EBg0MqIh49EKEHgclFiZx3bk2tZL8JzdR24uM8V38W2WjQgwWJ4LPLx1NzsBSyMtRv9YRS
	HLx8a2kMWV8Q+iMFuKFHMwcS0vo9DbWhN6Un9C4nfR0OHmFAc56HLiWqndp7Iz12va265d
	rcW8DaaQ43mSgf78xkUZvL8qZQs+U1InBK+vi/yo+HMnku9OIJLO+2+eSl1CnuKnr/kHyd
	RxnDeDutoiH047Lg//ChWsNVJKVFjXWjryRRgiGSNlLuCfzuFzLsvyftscU2FJS0zM/ek1
	0iV0jt8W+ev1ZTSwXznesRYSUfALssJk4TL4syh/cFvYaABCodiHimnNfx49rw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733082315;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=ojgvYdmT2vZjLG/GutE8GVj2qxDfSfkmOr0YGfvmrxA=;
	b=NKFuhvbAYkW7G9EXZ26mP8gSHRMJo7aMrEseP+jEegoEQmcXFGtgjvgrCbAi2gW56xdPDa
	v26Tf16mpGEIGiPXlpCVzT7JZZyN7BOZThbLPaM2XgsbIfGoVYHPmuMqtZlQqpxJJJuBxy
	ctd73ujZyBSWHDvrTQ9Ch+dMgdkSIqgkt+dN9+o72H7919NmrTbEosbztJn2QZNR3qzlfS
	r2DzSYHwWUyV05KJ6bqcGCfaTWjLcgzCJBp41ewWVGdVApw3I6nJdv+VsSsb/tVgdOPv4j
	/U+GygIdq/P7Ft3XIm8KgiXO0LifxRPJVkokWNHKXF5zch9V0qFkIUKWL5l1tg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733082315; a=rsa-sha256; cv=none;
	b=nVdRZoEurYoZUO0WHEU4cqcZrvbPsTHr0SXMyVbwxwCYDWoiCqgh84duULX454d79UW6Ie
	DLjoK80/whGInq3bzExVFWZ9hj45pMBCLXIt7YHmPdMkmMLvUSmSB+USEsDxlvR8mVND+9
	g96wAo3Eff6H2XsKWsgK494XHQDuGQAmX2LhAOJEQs3yV2faQg9zUKzOGt5CzLwjRLCpRs
	PLCvz6Ve9KDyDxurGy5TVOzIWmjp7PVFEIy+QX4vBkFsyk5ZHS35SGo5pMvCDT+bNXsSwj
	G6LuPc4LEmi4GE00LYBZaBSB2ljHPodt5Kj+ZMhc358C/IHFqgj6dWOXCdxqaQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1cp31kFjz15wd;
	Sun,  1 Dec 2024 19:45: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 4B1JjF2b059133;
	Sun, 1 Dec 2024 19:45:15 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1JjFHi059130;
	Sun, 1 Dec 2024 19:45:15 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:45:15 GMT
Message-Id: <202412011945.4B1JjFHi059130@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Subject: git: 30d2f84ef2cb - main - LinuxKPI: firmware: change order
  filenames trying to load firmware
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 30d2f84ef2cba12c67c62a9fe4e1d8e22cf27bf9
Auto-Submitted: auto-generated

The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=30d2f84ef2cba12c67c62a9fe4e1d8e22cf27bf9

commit 30d2f84ef2cba12c67c62a9fe4e1d8e22cf27bf9
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-11-20 13:12:06 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-12-01 19:41:46 +0000

    LinuxKPI: firmware: change order filenames trying to load firmware
    
    Given we have the support in main and stable/14 to load plain firmware
    files from /boot/firmware/ make use of that.  Switch the order to
    try the original unmangled filename and path first before trying any
    replacements.
    This reduces time and console noise (especially under bootverbose).
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      3 days
    Reviewed by:    emaste
    Differential Revision: https://reviews.freebsd.org/D47682
---
 sys/compat/linuxkpi/common/src/linux_firmware.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/sys/compat/linuxkpi/common/src/linux_firmware.c b/sys/compat/linuxkpi/common/src/linux_firmware.c
index 17da91381280..12658df5ce83 100644
--- a/sys/compat/linuxkpi/common/src/linux_firmware.c
+++ b/sys/compat/linuxkpi/common/src/linux_firmware.c
@@ -88,17 +88,17 @@ _linuxkpi_request_firmware(const char *fw_name, const struct linuxkpi_firmware *
 	 * way rather than adding more name-mangling-hacks here in the future
 	 * (though we could if needed).
 	 */
-	/* (1) Try any name removed of path. */
-	fwimg = strrchr(fw_name, '/');
-	if (fwimg != NULL)
-		fwimg++;
-	if (fwimg == NULL || *fwimg == '\0')
-		fwimg = fw_name;
-	fbdfw = firmware_get_flags(fwimg, flags);
-	/* (2) Try the original name if we have not yet. */
-	if (fbdfw == NULL && fwimg != fw_name) {
-		fwimg = fw_name;
-		fbdfw = firmware_get_flags(fwimg, flags);
+	/* (1) Try the original name. */
+	fbdfw = firmware_get_flags(fw_name, flags);
+	/* (2) Try any name removed of path, if we have not yet. */
+	if (fbdfw == NULL) {
+		fwimg = strrchr(fw_name, '/');
+		if (fwimg != NULL)
+			fwimg++;
+		if (fwimg == NULL || *fwimg == '\0')
+			fwimg = fw_name;
+		if (fwimg != fw_name)
+			fbdfw = firmware_get_flags(fwimg, flags);
 	}
 	/* (3) Flatten '/', '.' and '-' to '_' and try with adjusted name. */
 	if (fbdfw == NULL &&

From nobody Sun Dec  1 19:50:04 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1cvc4qzbz5g5qv;
	Sun, 01 Dec 2024 19:50: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1cvc4KRCz4D32;
	Sun,  1 Dec 2024 19:50:04 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733082604;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=cveV4W/7Rs49dcDs9L2ultFptKGdKNIjTJRm1Nw+arM=;
	b=t2i7J9Vz36DXt+NlposOG0BJbXFyrqALoSo6Yt1XNaLxeKO7KN5ulkPhNOyXD9DhmgQJOV
	aV73O/SGqvEciozkLFeWVC380ncVclBpVKBPFejh6g5Un1ZBXSXrSV0SAxLp5ZDN/j7mcI
	7wXMZtCptv8hioOvmLCDyWF/pq7IBdOBBaqbZ8RuqptpTYqrR46VQX6IDqVIlz9K8SXmJy
	rxRFhfbAxXHP2GRVMTWeo8Hqr0gSFq1Avz+NojGEkCGAdzTZiXXJZ1CNa3EwLVzancG3xf
	i1Q0LGjbmo06bMeJzrkaziHt48pYgFpGeVqHIhfF13HIRSViGigUyxi4hDYUIQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733082604;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=cveV4W/7Rs49dcDs9L2ultFptKGdKNIjTJRm1Nw+arM=;
	b=EdbGWv59rrixIcTwTUc52CYBoLBzkU+GGPehdr1ZsmHTvudkgW0Sh8CL/cxQOF6D6SpWuW
	7GfI+7Z6Li1wsnPoFlt/DnN7nZ/z+P1nOohtekcAfTq/1grz2rtVeuERrN6C9Gv98ilby8
	NV4drHQOi6Wb/01oyVQaSvrb9US9BtjoC3KP7TDpBqebHJigsbYQaVcF9+ltik22zGeh5V
	sy3MYIyJdcX32uLDpJNnEklTJ9+7ka929xa6VtywycUREsJQWHXsTS+di60wKtR3xSNJGS
	fkqqvV8L3TiZfA+vKvLGQj/VDajdFrZRDBLlv6A0wVVJQF+D7So6m/H4pCzObg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733082604; a=rsa-sha256; cv=none;
	b=iST8D01PIsaAbXvZBFHfiS49Dt7d3nBd8MAVZ5X9LXgOFoXg5m0gEWIhdC4v9oQXraRg0o
	i18//MlZwgVfKq1MdUtR599VK3q9F9lWCfpZq5p8DoesNgm2k4JVtXOV4KglCQNbqDC9px
	eLfhxzS/GdaEkEl+FfbaYN9hSbQef/Ro4tqpyb6a0FMA0icaanAV5POznO1ByIYkpqA4KL
	y7uiv9V+XJEIdtUgCzl81ePIYHQAx6fBAvXqtDG5kwmdhuUZdSug7Cxu7EV7LNlGB82COf
	Z91nQ8JrDGJM8s7/m2xQ1L/lOJ7bcJLq7ksgrPWzIlF+cznkGHJ1Q9eEvAij6g==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1cvc3wYfz16SS;
	Sun,  1 Dec 2024 19:50: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 4B1Jo40F063027;
	Sun, 1 Dec 2024 19:50:04 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1Jo46k063022;
	Sun, 1 Dec 2024 19:50:04 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:50:04 GMT
Message-Id: <202412011950.4B1Jo46k063022@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Justin Hibbits <jhibbits@FreeBSD.org>
Subject: git: 885f3adf6f6f - main - powernv/opal: Add missing
  DEVMETHOD_END to method list
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: jhibbits
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 885f3adf6f6f824d3073b99300af76fef81021f4
Auto-Submitted: auto-generated

The branch main has been updated by jhibbits:

URL: https://cgit.FreeBSD.org/src/commit/?id=885f3adf6f6f824d3073b99300af76fef81021f4

commit 885f3adf6f6f824d3073b99300af76fef81021f4
Author:     Justin Hibbits <jhibbits@FreeBSD.org>
AuthorDate: 2024-12-01 19:49:07 +0000
Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
CommitDate: 2024-12-01 19:50:37 +0000

    powernv/opal: Add missing DEVMETHOD_END to method list
    
    Reported by:    ehem_freebsd_m5p.com
    MFC after:      1 week
---
 sys/powerpc/powernv/opal_sensor.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sys/powerpc/powernv/opal_sensor.c b/sys/powerpc/powernv/opal_sensor.c
index db8045741510..a2f3c0a80a5b 100644
--- a/sys/powerpc/powernv/opal_sensor.c
+++ b/sys/powerpc/powernv/opal_sensor.c
@@ -243,7 +243,9 @@ opal_sensor_attach(device_t dev)
 
 static device_method_t opal_sensor_methods[] = {
 	DEVMETHOD(device_probe,		opal_sensor_probe),
-	DEVMETHOD(device_attach,		opal_sensor_attach),
+	DEVMETHOD(device_attach,	opal_sensor_attach),
+
+	DEVMETHOD_END
 };
 
 static driver_t opal_sensor_driver = {

From nobody Sun Dec  1 19:57:14 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1d3t6DdBz5g6Nj;
	Sun, 01 Dec 2024 19:57: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1d3t5h0Bz4DvV;
	Sun,  1 Dec 2024 19:57:14 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733083034;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8VceQeV12dIiTqGeFt9Z1WIksuxuFXhXziTSCU271o0=;
	b=UJAwAYZJXN1eXL+Ypv3QKqmt1ikaL6pyBKTQpH65B5P0NgWQRKoBYL1DaUB58JqAEBD3M+
	1E1EbtdQnUfZAFLfjHMV3YzETAb7exuAJ9WrAzZK0Q2291Z6ngZWmjhrCvd/NhqVzczbHc
	cmiwtDsB2JHDffdZZht9ZT4WsQwp7qU2/lPWERwXrG0CJoEWq9xGRlU8Ij4GCghO18KV0y
	5TRYYVPzockODoyMXwvwgQHqbtlk8Ea+PLT+Cp8WZsFWaWLQILdNJjlySpmWY9wihMt4pH
	2dZujs7Gm+kn4oaHoQIxxjCbIEB78WrqgaGCdtQUMrzlxKdg0lQl7LezzwbYtA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733083034;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=8VceQeV12dIiTqGeFt9Z1WIksuxuFXhXziTSCU271o0=;
	b=Tjyo3D57mELSLnk6+nMiWbaPawWteRa9e9C0zm4NAnoGH/RMZW252VPcLNPYYC+CCm9zC9
	Hzwqt7IJ6kT9VJdADeq/uZISszXgr37pgetDK1pIRKIl2sLTv3PKK5G1wBECtu/0z8B9nT
	mY/Fljz7tYUsGCsy/Sxv6CcPKI2m3QJJQPMBA8T2lOAnuKp2y2/xafIneook9eqFBMT3MJ
	OsASIWByx4JAJJazhTEqo7z6VWCEzaVXEj4H3TEwOl2eEtV37W1KtkLTCPFls8aLXy5WmF
	3xI02RbCMOMV9Gtqq5l+mnHO9uPBgSlsR9I+gA17AeQAPouMBHPQcQzb8ir5aQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733083034; a=rsa-sha256; cv=none;
	b=yy2ct7IgLonhPpC8UeYsBkr13Ucq6uF1Ei73Km4tMyLl50l5f7/gS+esnlHxdM/IcJPUUv
	fAO/o0NpvcQ3qFF/NPawowUvh/ckIXXQA0wgjvQagCmUqdRHN+cGeqczgooU6kbiE4ekRh
	KlbdbW+MHMlxdjaovQc91tjekzRiwExlhsQ1Gv2GHocYrssCdxEoYPEig27rv93lf919d0
	AeYo6d2qI+pcMhtMTr9ALa1Gc2hj5V3PwdH6lZTJ8P3C2Ww1rS13JNYj+l1BtFwiLs883z
	Q8dLTv7I0dWVxdcDuXdQ2ebAb5oeLD3lPyw2avYQoimrWCZJEt6kg7W47FWxhw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1d3t5Gfdz16fw;
	Sun,  1 Dec 2024 19:57: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 4B1JvE1q077816;
	Sun, 1 Dec 2024 19:57:14 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1JvEFQ077813;
	Sun, 1 Dec 2024 19:57:14 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:57:14 GMT
Message-Id: <202412011957.4B1JvEFQ077813@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Subject: git: 943a19c666d6 - main - LinuxKPI: 802.11: make HT compile
  again
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 943a19c666d67424cdde6cbcd096f28359b2d314
Auto-Submitted: auto-generated

The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=943a19c666d67424cdde6cbcd096f28359b2d314

commit 943a19c666d67424cdde6cbcd096f28359b2d314
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-12-01 19:53:06 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-12-01 19:56:10 +0000

    LinuxKPI: 802.11: make HT compile again
    
    Bring in changes missed during the last driver updates to make HT
    compile when enabled.
    
    Sponsored by:   The FreeBSD Foundation
    Fixes:          7b43f4d064195
    MFC after:      3 days
---
 sys/compat/linuxkpi/common/src/linux_80211.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 543a11b1f729..44c96909a002 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -1272,12 +1272,12 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int
 			vif->bss_conf.chanreq.oper.center_freq1 =
 			    chanctx_conf->def.center_freq1;
 #ifdef LKPI_80211_HT
-			if (vif->bss_conf.chandef.width == NL80211_CHAN_WIDTH_40) {
+			if (vif->bss_conf.chanreq.oper.width == NL80211_CHAN_WIDTH_40) {
 				/* Note: it is 10 not 20. */
 				if (IEEE80211_IS_CHAN_HT40U(ni->ni_chan))
-					vif->bss_conf.chandef.center_freq1 += 10;
+					vif->bss_conf.chanreq.oper.center_freq1 += 10;
 				else if (IEEE80211_IS_CHAN_HT40D(ni->ni_chan))
-					vif->bss_conf.chandef.center_freq1 -= 10;
+					vif->bss_conf.chanreq.oper.center_freq1 -= 10;
 			}
 #endif
 			vif->bss_conf.chanreq.oper.center_freq2 =

From nobody Sun Dec  1 19:59:08 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1d6457FHz5g6Nt;
	Sun, 01 Dec 2024 19:59: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1d644d4mz4F0m;
	Sun,  1 Dec 2024 19:59:08 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733083148;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yyNByfhrxF9tcBJbLTODaI2n6OVcASVMTuI0EsWt0yo=;
	b=nGb2MhFyIB+YqUVV1y4O6C4G8ZkML7AfWkFW0JaOjQGZNCmnM4HXpasJRKx+eDMcpVuF8J
	HbqYkxD3n+e+pJSjkmsoC/Z4MYJdwUzZy7vNEGfwtl/qz4G3iwqKZKoXZdODasFPQETjYx
	ly5uWZTRTnEyk9DdJ0OKbgwhba4AW8gLTnOxsytq65Dse0vsPx5phs50ScliMZcnBtJyh2
	FvvBFx5CBHydrdpZDGHNcal4CQEhwpsdzG6LRr++1ytOKl6+OZgCj05c+LYwHVTjYXMCHV
	D09j3xKPm/2c2fj5W5Cf/Orl04II6ZqnXEgJ/rQOB12gF6kabae8JtnbAUmLPQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733083148;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=yyNByfhrxF9tcBJbLTODaI2n6OVcASVMTuI0EsWt0yo=;
	b=YuDkbCEAe0BRFRyaoiHvfpcPoejotg7I+oFh9p43kMu3cW5qZhznKYS2x5tuhLId9yNwFO
	ACe68nZaA9W6KiG7xEOK3AoX9KkwsjTlv3EB3lP2/LxTxpTX6kXU+lTrutQVKf4dQkdqfJ
	xVaQu2fEIDjVq5MBnV1sGS2oTIHXQfZ+V48jpTeKfKQmje6TqAV3+6kMYId2OR+vi5qDft
	cdTDwPQZQy7k2Mpm8AJXO2NMWUUtP1KDs5NkZbrXoAHAOS4n0MBAcsRW3sZcX5GrodLhdA
	aGfqQHud1GNE3+GP3WJMlCv0nmwUwFxQK9hEpKpKSDGN/bRfezdN3cp6ViigLQ==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733083148; a=rsa-sha256; cv=none;
	b=KxG3qlYauX3kFbagEnvJcAgV88+O0RWo20mzIUEHojNdGCzm8VRVqpdk2NBF7B2yuyNWwF
	LI6xMdziLcgDcBzldYIMz4U4/+WhGcqgs1OQUVuq5cc6B9ICzIBk504ZwEhKp26qplW4nC
	+cG414UMDQbVKxeCbdOSB65OqtrqVIcRMHAyg4HIYmJ/21GTHuc/F09EzMQv1sUOLpkzXy
	k9Je+l78spHP0uIcsfy+UNXX/ey+1vEJQOE9P8f1nCsSqlXy3l33COAiSx9H3qyzZCvMvj
	zmUrHZ0+YjcvUXYIm3seTCozc1m4NCSWkpKSQmCyzyN5AQqx6JICb4uKRDpCUA==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1d64466zz16fx;
	Sun,  1 Dec 2024 19:59: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 4B1Jx8AR078532;
	Sun, 1 Dec 2024 19:59:08 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1Jx8od078529;
	Sun, 1 Dec 2024 19:59:08 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 19:59:08 GMT
Message-Id: <202412011959.4B1Jx8od078529@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Subject: git: 4294f1cac153 - main - net80211: add missing reference
  for struct ieee80211_vht_mcs_info
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 4294f1cac15300046369d7e464ce96363839757c
Auto-Submitted: auto-generated

The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=4294f1cac15300046369d7e464ce96363839757c

commit 4294f1cac15300046369d7e464ce96363839757c
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-11-28 23:28:59 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-12-01 19:57:07 +0000

    net80211: add missing reference for struct ieee80211_vht_mcs_info
    
    Sponsored by:   The FreeBSD Foundation
    Reviewed by:    adrian
    MFC after:      3 days
    Differential Revision: https://reviews.freebsd.org/D47836
---
 sys/net80211/ieee80211.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h
index e62b8c16d68f..72a4dc8ee006 100644
--- a/sys/net80211/ieee80211.h
+++ b/sys/net80211/ieee80211.h
@@ -931,6 +931,7 @@ enum ieee80211_vht_mcs_support {
 	IEEE80211_VHT_MCS_NOT_SUPPORTED		= 3	/* not supported */
 };
 
+/* 802.11ac-2013, 8.4.2.160.3 Supported VHT-MCS and NSS Set field */
 struct ieee80211_vht_mcs_info {
 	uint16_t rx_mcs_map;
 	uint16_t rx_highest;

From nobody Sun Dec  1 20:30:50 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1dpf5Jysz5g81W;
	Sun, 01 Dec 2024 20:30:50 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1dpf37M7z4Gp9;
	Sun,  1 Dec 2024 20:30:50 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733085050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DbCO9mq/wOKLvjpOf5eBkE42PKc3MIHsuy1XTxZRWWQ=;
	b=Z/NM0qYDqsK5FdXNlCZMqKchX2Kx24Awig2X6OnlD29FOtIYLV/k1bIGQYZ9pQfXK6jo+R
	J4zUoYOC7XahHeUDvggvknLySy8/hObmoN0yKaNekomKIAW5iIownLpLJ8i9vRWBP8cb5A
	9+koS2IDSiuetariXBlDxRsB3H17SSU2e0u0GU6XAEeAdzHgJ0z6RYFj4wOXq7QBO/m/wv
	yLVk4IXuMJWC+smb10GWSKCMvdWnTfGFtz6KK/jeBHXT6/DmlZeRpkDn1kjBQBMnZdPGjp
	ComD2B1zafhubbgLckg2vPsvblLKtrvJdWR4U1dgYq2vdMEDaDmV1fjJDa7O8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733085050;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=DbCO9mq/wOKLvjpOf5eBkE42PKc3MIHsuy1XTxZRWWQ=;
	b=U/F+/pg7eJygF1t5IbPrqRfe0CfGm8CCTjchqXi9EpKOEKxDr8xJOENjdVtfp+4SMnEETT
	M5peqEvMOqxdQzbYxJwMeF8w95sAxFzGHMRG8tsGUeasdHsHMhgE8rhg2iK0lfyM21ZuSQ
	vw8Ag6jJgLoMwkRckw7XBFsMODIHt6kehUjuMRdtSnMfUJBgjNopJUOtd+CmHhR5CsG2yw
	VAJFJVRm2frvActYHk6a+EIDwanjjX+WETEFO9a7Vg7xw51NyObSZMDbOAJ5W4irb9Reks
	YbasKaJ4dOduFOGNk7DYn13VguuJCdRZI97R4YKYlXd6EfH8WduaywHSWb9Qpw==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733085050; a=rsa-sha256; cv=none;
	b=C7Uu+rSrQXf5ep9ORyPpqaigaVqFiY9gvsrVOHjoeeBBPp5FhbPcuSPSXwM4a23Z2iFbTq
	2RbjXYrk2iwUMJLt6SdSVwwcIzT7l85ZVQ4CtbFJKHA8plS09UIrzj8RFzfEBy+TO7xbGI
	5IojXqtBHEkCLGIYsf/l4d2zKubPIqqRa3Drs18AFAgnXH39ZE9kbAmZwNQVNtr+baq5kR
	hwIqQ13UeieQuW/dbCtXG8AweA5n3LRg+Jq/ieY+AzuEExSfdJIXTt1ANatuAcgnh5U4UV
	oESSpC/cgVOBuBzddB438bcqUv6mHu54iRxktf78YYa0pJglZNqzN0ciMQAXAQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1dpf2llWz17SQ;
	Sun,  1 Dec 2024 20:30:50 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4B1KUoVl045175;
	Sun, 1 Dec 2024 20:30:50 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1KUoqK045172;
	Sun, 1 Dec 2024 20:30:50 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 20:30:50 GMT
Message-Id: <202412012030.4B1KUoqK045172@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: Ed Maste <emaste@FreeBSD.org>
Subject: git: d4dd9e22c138 - main - comsat: Use initgroups and
  setgid not just setuid
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: emaste
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: d4dd9e22c13896e6b5e2a6fc78dad4f8496cc14d
Auto-Submitted: auto-generated

The branch main has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=d4dd9e22c13896e6b5e2a6fc78dad4f8496cc14d

commit d4dd9e22c13896e6b5e2a6fc78dad4f8496cc14d
Author:     Ed Maste <emaste@FreeBSD.org>
AuthorDate: 2024-11-28 16:54:48 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2024-12-01 20:29:02 +0000

    comsat: Use initgroups and setgid not just setuid
    
    PR:             270404
    Reviewed by:    jlduran
    Obtained from:  NetBSD
    Sponsored by:   The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D47828
---
 libexec/comsat/comsat.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/libexec/comsat/comsat.c b/libexec/comsat/comsat.c
index 76f6190bea7b..e2aea1b709b6 100644
--- a/libexec/comsat/comsat.c
+++ b/libexec/comsat/comsat.c
@@ -212,10 +212,11 @@ jkfprintf(FILE *tp, char user[], char file[], off_t offset)
 	struct passwd *p;
 	unsigned char line[BUFSIZ];
 
-	/* Set effective uid to user in case mail drop is on nfs */
-	if ((p = getpwnam(user)) == NULL)
-		return;
-	if (setuid(p->pw_uid) != 0)
+	/* Set uid/gid/groups to user's in case mail drop is on nfs */
+	if ((p = getpwnam(user)) == NULL ||
+	    initgroups(p->pw_name, p->pw_gid) == -1 ||
+	    setgid(p->pw_gid) == -1 ||
+	    setuid(p->pw_uid) == -1)
 		return;
 
 	if ((fi = fopen(file, "r")) == NULL)

From nobody Sun Dec  1 21:58:05 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1glL1bK5z5f1sP;
	Sun, 01 Dec 2024 21:58: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1glL14k3z4R4j;
	Sun,  1 Dec 2024 21:58:06 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733090286;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qhqeNfqAa4go5JOtKUzAm9zIS/+rdoZjtMLEFqxBzhE=;
	b=QOVBhxgtzND6FsXcwYW+gaUcsVMNmK7VY7Iwzo9hAUcoTegXWI7LHMXhFb74Ltc+9J1wEH
	rPvJ6UTVAAlUAYbh6cKnKYySaqI4L5nKN13uhmUxUnIWOOHEhp8NXto7dMWIJ069eNV4Oj
	fAGIAaWgMWlSzne60XoYeuWVx2EH/e7ucbd1lQaq63a7Y9Koe9Psys6olh/rCkaz9wE0fk
	nxIFica2fxXV6mGKB+HQx+Wv4a45GZxCcXOutHGWPm0c8FRXVyfoC7JCT424g/Gky3dbNv
	RvrwxLS5rWZ+YjhmoIbpRS8jTd37QlIv1pscRcXvlMwL0pVtickSO0Pu3m64rw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733090286;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qhqeNfqAa4go5JOtKUzAm9zIS/+rdoZjtMLEFqxBzhE=;
	b=hV5RWZy8O3m+HEs/5KeemW/d4Ak25D9EbkJZpR4KkbqjnrZ4kpEg0Qx07dpOWGxBPuqCnA
	Rh7niDZQOmsYksv7jP1Fg69lpLElX0iRnqkkzzlgs4EP++hDzAgT8Y7jcsKB9lNZbkFLo3
	zCqZRXMPPC7qulKYyCIHSBuSIuj0e6ELrcagm6duAh/NytYIBQyyxU7/jNZIdnvpdBKPas
	2VKjutMQnh8jqiLbKY3987BYvjJvN1c2GqBvLLExebSU7fn3qYx67hT08wAyI7atxI0pZC
	jsju19uE0KOSOtFHuDdMzjXEQZM3gl4dOIea9l5Q+fkPu8xD72PJMYapeRgJ1w==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733090286; a=rsa-sha256; cv=none;
	b=kJGHlKPu0D28YNlnOcNymK6I9SdqGlmI+HVBHd7yM7wtvss0cwxjEyAPcuCLzxbCooX7xs
	B7qsLE4Ns8hE+9O6t56gur1nNWOSkFE/YbdNOFU+q/oQDOPAXdZEGtBPSEpR37v2GFgrvc
	NL9PY1WgYXYGWwyeySNw8aJHokYACrNeCSj0+rIAzYoobfRdq9HAOqkzfPT+GRkCzSEjKX
	OuSU8CnqGAYjLWAZ5P/hz9Bb+akxb0GME4PQnHcna0IefpVEBTIFtiwzzhU9ukqCLB+vlo
	AdunYeeu1pk58ob2fmGTudRQy3SSRDmAYeuVdo4jYZsGXdM6/2fVp3qJjbRbAQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1glL0h7nz19NK;
	Sun,  1 Dec 2024 21:58: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 4B1Lw5Ca001274;
	Sun, 1 Dec 2024 21:58:05 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1Lw51X001271;
	Sun, 1 Dec 2024 21:58:05 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 21:58:05 GMT
Message-Id: <202412012158.4B1Lw51X001271@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Subject: git: 116102101a56 - main - net80211: name
  IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_{NONE -> NO160}
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 116102101a566ec8924b397c1523d362008fb35c
Auto-Submitted: auto-generated

The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=116102101a566ec8924b397c1523d362008fb35c

commit 116102101a566ec8924b397c1523d362008fb35c
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-11-28 23:37:31 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-12-01 21:57:03 +0000

    net80211: name IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_{NONE -> NO160}
    
    IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_NONE is confusing as the field does
    indicate that the STA does not support 160 (or 80+80) Mhz.
    [802.11ac: Table 8-183v-Subfields of the VHT Capabilities Info field]
    All the other bits are related to the support of 160Mhz so make it
    clear that it does not mean that we do not support any VHT CHAN WIDTH
    but merely do not support the optional 160/80+80.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      3 days
    Reviewed by:    adrian
    Differential Revision: https://reviews.freebsd.org/D47837
---
 sys/net80211/ieee80211.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h
index 72a4dc8ee006..b0bb02450190 100644
--- a/sys/net80211/ieee80211.h
+++ b/sys/net80211/ieee80211.h
@@ -974,7 +974,7 @@ struct ieee80211_vht_operation {
 
 #define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_MASK	0x0000000C
 #define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_MASK_S	2
-#define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_NONE		0
+#define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_NO160		0
 #define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160MHZ		1
 #define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160_80P80MHZ	2
 #define	IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_RESERVED	3

From nobody Sun Dec  1 22:03:28 2024
X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Y1gsX5gJcz5f2Tn;
	Sun, 01 Dec 2024 22:03: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 "R10" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4Y1gsX57Fkz4Ryv;
	Sun,  1 Dec 2024 22:03:28 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1733090608;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qFkgSOQNLl9YsoibXz3jr0ASdhpzqPAmrnlhsM8TNXM=;
	b=EWTKnanVgci7vzuDJgz4K9wVLz767CPvp68Cprib39LNsbR1i6O33i0g5ex5rwrQ4DkyZN
	4afgmKdfrikdMDWQNN8EoD0GCVrrRu/vkpye6/itEvC9k2VvHpM1EhxYynsT0TNBuCoYz+
	JinCZQ3larizaXZ3exl925AII6+r79aARN4TLdFPtcgX4TtCeYyjP3Ecwuir+hR5TBe+zs
	cXlrYMqxAYEGuzWFhUCLxyYZiFcvUqBPbYAXfDu7A3soxkt+BVN3No+flHIRDcsr/YScPH
	U7+BEqXxeTkvwj5LXJRz3kb7J45lT0DwNRoJ6mygpqdTtTGLW9yLCWUoKvaevg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1733090608;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=qFkgSOQNLl9YsoibXz3jr0ASdhpzqPAmrnlhsM8TNXM=;
	b=ToPvIFj39B02BOG9R54JL2Tn76ly8xoCArAw4CBYdB25Ld1qv9XNS56Ad/iohr7AsWnP7x
	4xYS+4Dljtj0adsqzUPcD61Bu0DYhEhEIJwHlaX0r6syHcEqDDPDLeX5DvT1ST45VEX0DW
	F6Br3+mRPk98BRm22XDfqSS7CB3/tWw69FWzdbkzriSt0iRz54azlkYP0x3VpjoB2u1uS2
	6cEPmJFFYvbzHfEADDJP6tuntyKFlle+ZkQaqApB5MmVj/qA65s5W9fMnUtcbcvOuApUlG
	ZcGvACmR5JyL2u3wvUi8Emua+65uoSpNUYBFm3ZsEG0QO0ePyQKywgM47sij1A==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1733090608; a=rsa-sha256; cv=none;
	b=MkIjGiZpxBPk8mkeEh4nltjfYrNyFomLh751FvUeWs80RL08RQb79DM5FDe5VF5xkdQ7zq
	+1ipc3J8XHIe4yPs5Tr9a8WpH3JABsteOaV+nWuU+0I36GYAUFQdVMnQrTH5V9mCGhx/97
	GOErsltZDa1auWzixKTUxuom7ZCDSAt3liQjuaWbl/bWPcWxM5X3JuHNzLAdq50xSjBj4u
	cZ7CPDGJQZgai8TopJGBTS7ARRuNkuvbpFS67BW8cwiHn01cdoUOieRllAvwE/atWMeEm/
	EnuLiu+eERpfwLHuf+5GIn0D4uX20G5HcSuVeuEPMRkcJull2CXpnEg24IWRtw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Y1gsX4jyxz19pJ;
	Sun,  1 Dec 2024 22:03: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 4B1M3SoT019498;
	Sun, 1 Dec 2024 22:03:28 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4B1M3SOs019495;
	Sun, 1 Dec 2024 22:03:28 GMT
	(envelope-from git)
Date: Sun, 1 Dec 2024 22:03:28 GMT
Message-Id: <202412012203.4B1M3SOs019495@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-main@FreeBSD.org
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Subject: git: 243f6925bf81 - main - net80211: 11ac: add options to
  manage VHT STBC
List-Id: Commit messages for the main branch of the src repository <dev-commits-src-main.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main
List-Help: <mailto:dev-commits-src-main+help@freebsd.org>
List-Post: <mailto:dev-commits-src-main@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-main+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-main+unsubscribe@freebsd.org>
X-BeenThere: dev-commits-src-main@freebsd.org
Sender: owner-dev-commits-src-main@FreeBSD.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: bz
X-Git-Repository: src
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 243f6925bf818a64f3c996c6a89fec6c8a6ff058
Auto-Submitted: auto-generated

The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=243f6925bf818a64f3c996c6a89fec6c8a6ff058

commit 243f6925bf818a64f3c996c6a89fec6c8a6ff058
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-11-28 23:54:17 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-12-01 22:02:08 +0000

    net80211: 11ac: add options to manage VHT STBC
    
    Add IEEE80211_FVHT_STBC_(TX|RX) flags to allow userspace to manage
    if STBC will be allowed for VHT RX/TX.
    For RX this will only allow us to turn it off but no fine grained
    control of the number of supported spatial streams.
    
    Introduce IEEE80211_FVHT_CHANWIDTH_MASK as a helper to make the
    spelling out of the IEEE80211_FVHT_MASK more readable.
    
    Update ifconfig to allow setting of these flags.
    
    Sponsored by:   The FreeBSD Foundation
    MFC atfer:      3 days
    Reviewed by:    adrian
    Differential Revision: https://reviews.freebsd.org/D47838
---
 sbin/ifconfig/ifieee80211.c    |  8 ++++++++
 sys/net80211/ieee80211.c       |  4 ++++
 sys/net80211/ieee80211_ioctl.c | 20 ++++++++++++++++++++
 sys/net80211/ieee80211_var.h   | 12 ++++++++++--
 sys/net80211/ieee80211_vht.c   |  6 ++----
 5 files changed, 44 insertions(+), 6 deletions(-)

diff --git a/sbin/ifconfig/ifieee80211.c b/sbin/ifconfig/ifieee80211.c
index c6875785f8f5..25de7fb13632 100644
--- a/sbin/ifconfig/ifieee80211.c
+++ b/sbin/ifconfig/ifieee80211.c
@@ -135,6 +135,8 @@
 #define	IEEE80211_FVHT_USEVHT80	0x000000004	/* CONF: Use VHT80 */
 #define	IEEE80211_FVHT_USEVHT160 0x000000008	/* CONF: Use VHT160 */
 #define	IEEE80211_FVHT_USEVHT80P80 0x000000010	/* CONF: Use VHT 80+80 */
+#define	IEEE80211_FVHT_STBC_TX  0x00000020	/* CONF: STBC tx enabled */
+#define	IEEE80211_FVHT_STBC_RX  0x00000040	/* CONF: STBC rx enabled */
 #endif
 
 /* Helper macros unified. */
@@ -6038,6 +6040,12 @@ static struct cmd ieee80211_cmds[] = {
 	DEF_CMD("-vht160",	-IEEE80211_FVHT_USEVHT160,	set80211vhtconf),
 	DEF_CMD("vht80p80",	IEEE80211_FVHT_USEVHT80P80,	set80211vhtconf),
 	DEF_CMD("-vht80p80",	-IEEE80211_FVHT_USEVHT80P80,	set80211vhtconf),
+	DEF_CMD("vhtstbctx",	IEEE80211_FVHT_STBC_TX,		set80211vhtconf),
+	DEF_CMD("-vhtstbctx",	-IEEE80211_FVHT_STBC_TX,	set80211vhtconf),
+	DEF_CMD("vhtstbcrx",	IEEE80211_FVHT_STBC_RX,		set80211vhtconf),
+	DEF_CMD("-vhtstbcrx",	-IEEE80211_FVHT_STBC_RX,	set80211vhtconf),
+	DEF_CMD("vhtstbc",	(IEEE80211_FVHT_STBC_TX|IEEE80211_FVHT_STBC_RX),	set80211vhtconf),
+	DEF_CMD("-vhtstbc",	-(IEEE80211_FVHT_STBC_TX|IEEE80211_FVHT_STBC_RX),	set80211vhtconf),
 	DEF_CMD("rifs",		1,	set80211rifs),
 	DEF_CMD("-rifs",	0,	set80211rifs),
 	DEF_CMD("smps",		IEEE80211_HTCAP_SMPS_ENA,	set80211smps),
diff --git a/sys/net80211/ieee80211.c b/sys/net80211/ieee80211.c
index ecf87020b066..ccb7efaa4df5 100644
--- a/sys/net80211/ieee80211.c
+++ b/sys/net80211/ieee80211.c
@@ -744,6 +744,8 @@ ieee80211_vap_attach(struct ieee80211vap *vap, ifm_change_cb_t media_change,
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT80);
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT160);
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT80P80);
+	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_STBC_TX);
+	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_STBC_RX);
 	IEEE80211_UNLOCK(ic);
 
 	return 1;
@@ -801,6 +803,8 @@ ieee80211_vap_detach(struct ieee80211vap *vap)
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT80);
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT160);
 	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_USEVHT80P80);
+	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_STBC_TX);
+	ieee80211_syncflag_vht_locked(ic, IEEE80211_FVHT_STBC_RX);
 
 	/* NB: this handles the bpfdetach done below */
 	ieee80211_syncflag_ext_locked(ic, IEEE80211_FEXT_BPF);
diff --git a/sys/net80211/ieee80211_ioctl.c b/sys/net80211/ieee80211_ioctl.c
index c0ba19b5db89..3b57e7d8cd8e 100644
--- a/sys/net80211/ieee80211_ioctl.c
+++ b/sys/net80211/ieee80211_ioctl.c
@@ -3506,6 +3506,26 @@ ieee80211_ioctl_set80211(struct ieee80211vap *vap, u_long cmd, struct ieee80211r
 		else
 			ieee80211_syncflag_vht(vap, -IEEE80211_FVHT_USEVHT80P80);
 
+		/* Check if we can do STBC TX/RX before changing the setting. */
+		if ((ireq->i_val & IEEE80211_FVHT_STBC_TX) &&
+		    ((vap->iv_vht_cap.vht_cap_info & IEEE80211_VHTCAP_TXSTBC) == 0))
+			return EOPNOTSUPP;
+		if ((ireq->i_val & IEEE80211_FVHT_STBC_RX) &&
+		    ((vap->iv_vht_cap.vht_cap_info & IEEE80211_VHTCAP_RXSTBC_MASK) == 0))
+			return EOPNOTSUPP;
+
+		/* TX */
+		if (ireq->i_val & IEEE80211_FVHT_STBC_TX)
+			ieee80211_syncflag_vht(vap, IEEE80211_FVHT_STBC_TX);
+		else
+			ieee80211_syncflag_vht(vap, -IEEE80211_FVHT_STBC_TX);
+
+		/* RX */
+		if (ireq->i_val & IEEE80211_FVHT_STBC_RX)
+			ieee80211_syncflag_vht(vap, IEEE80211_FVHT_STBC_RX);
+		else
+			ieee80211_syncflag_vht(vap, -IEEE80211_FVHT_STBC_RX);
+
 		error = ENETRESET;
 		break;
 
diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h
index 53139a3852b8..94e8a05846e7 100644
--- a/sys/net80211/ieee80211_var.h
+++ b/sys/net80211/ieee80211_var.h
@@ -737,12 +737,20 @@ MALLOC_DECLARE(M_80211_VAP);
 #define	IEEE80211_FVHT_USEVHT80	0x000000004	/* CONF: Use VHT80 */
 #define	IEEE80211_FVHT_USEVHT160	0x000000008	/* CONF: Use VHT160 */
 #define	IEEE80211_FVHT_USEVHT80P80	0x000000010	/* CONF: Use VHT 80+80 */
-#define	IEEE80211_FVHT_MASK						\
+#define	IEEE80211_FVHT_STBC_TX	0x00000020	/* CONF: STBC tx enabled */
+#define	IEEE80211_FVHT_STBC_RX	0x00000040	/* CONF: STBC rx enabled */
+
+#define	IEEE80211_FVHT_CHANWIDTH_MASK					\
 	(IEEE80211_FVHT_VHT | IEEE80211_FVHT_USEVHT40 |			\
 	IEEE80211_FVHT_USEVHT80 | IEEE80211_FVHT_USEVHT160 |		\
 	IEEE80211_FVHT_USEVHT80P80)
+
+#define	IEEE80211_FVHT_MASK						\
+	(IEEE80211_FVHT_CHANWIDTH_MASK |				\
+	IEEE80211_FVHT_STBC_TX | IEEE80211_FVHT_STBC_RX)
+
 #define	IEEE80211_VFHT_BITS \
-	"\20\1VHT\2VHT40\3VHT80\4VHT160\5VHT80P80"
+	"\20\1VHT\2VHT40\3VHT80\4VHT160\5VHT80P80\6STBC_TX\7STBC_RX"
 
 #define	IEEE80211_COM_DETACHED	0x00000001	/* ieee80211_ifdetach called */
 #define	IEEE80211_COM_REF_ADD	0x00000002	/* add / remove reference */
diff --git a/sys/net80211/ieee80211_vht.c b/sys/net80211/ieee80211_vht.c
index 0839f426e09c..a05beb91216f 100644
--- a/sys/net80211/ieee80211_vht.c
+++ b/sys/net80211/ieee80211_vht.c
@@ -439,8 +439,7 @@ ieee80211_vht_get_vhtcap_ie(struct ieee80211_node *ni,
 		    IEEE80211_VHTCAP_RXSTBC_MASK);
 	}
 	val = MIN(val1, val2);
-	/* XXX For now, use the 11n config flag */
-	if ((vap->iv_flags_ht & IEEE80211_FHT_STBC_TX) == 0)
+	if ((vap->iv_vht_flags & IEEE80211_FVHT_STBC_TX) == 0)
 		val = 0;
 	new_vhtcap |= _IEEE80211_SHIFTMASK(val, IEEE80211_VHTCAP_TXSTBC);
 
@@ -453,8 +452,7 @@ ieee80211_vht_get_vhtcap_ie(struct ieee80211_node *ni,
 		   IEEE80211_VHTCAP_TXSTBC);
 	}
 	val = MIN(val1, val2);
-	/* XXX For now, use the 11n config flag */
-	if ((vap->iv_flags_ht & IEEE80211_FHT_STBC_RX) == 0)
+	if ((vap->iv_vht_flags & IEEE80211_FVHT_STBC_RX) == 0)
 		val = 0;
 	new_vhtcap |= _IEEE80211_SHIFTMASK(val, IEEE80211_VHTCAP_RXSTBC_MASK);