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'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't syscals semi-private, between our kernel and our li= bc. Well it'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'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 <<a href=3D"mailto:kostikbel@gmail.com">kostikbel@gmail.com</a= >> 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> > The branch main has been updated by trasz:<br> > <br> > 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> > <br> > commit b165e9e3ea4e327fc421d81c2a89242bd8720780<br> > Author:=C2=A0 =C2=A0 =C2=A0Edward Tomasz Napierala <trasz@FreeBSD.o= rg><br> > AuthorDate: 2024-11-29 07:46:07 +0000<br> > Commit:=C2=A0 =C2=A0 =C2=A0Edward Tomasz Napierala <trasz@FreeBSD.o= rg><br> > CommitDate: 2024-11-29 12:10:02 +0000<br> > <br> >=C2=A0 =C2=A0 =C2=A0Add fchroot(2)<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0This is similar to chroot(2), but takes a file desc= riptor instead<br> >=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> >=C2=A0 =C2=A0 =C2=A0patch to make absolute pathnames usable in Capsicum= mode, but should<br> >=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);