From nobody Mon Sep 8 00:12:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cKnTf6MdMz67499; Mon, 08 Sep 2025 00:12:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cKnTf4gHNz3pCV; Mon, 08 Sep 2025 00:12:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757290374; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2PiRXuguYF1Gr8MlvjyV/pO8Sy/U10qTbisKuBnIU40=; b=caoPFnPB6436gMvOvdmjYCVdHLtDBgd4eeyEevQp2faiC+7miJ997Ho7YoKem89ObrF7ee M0n6hpwsJCs2hgtmtP8NiZ67A6MOhFjoLxfrpMmj1m9NCeX/at7FgwYW/I/+QPEtHLNiCO q7cJ/9QZqX3Du/s4h3wtec16PgLnfee2iXUq9Nv3xI9C92Cf5QBTtg0mpab6hZ7XiKVEbB fuiLeJe9ivh1juzB4FW7dQB4mbGh0oLXlFfO08c0haR4BJihkVb8s+uW3vQfOefAYzSPjL mmuHH8km5SphmQlzBV0JR9a7OL3fZRx+KgG0imNdIiXBaDa8YSa4FK/OJYSyVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757290374; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2PiRXuguYF1Gr8MlvjyV/pO8Sy/U10qTbisKuBnIU40=; b=PkLchIkO8v1scziRraVHRUi6h2zfkt/WfbX2KKwtqWgbW8oYbS2UhjHpnNkAcL8YUJvrkr P48nM0fYQpib130kd6wVJQzsSp/3uZVyzFdB8GXZh4qLD0Q+STHGDhvDxpg5f2VztODlnS Hk0vaj/qHdZ/9KYJSQ0khVjPCqOiybSFG900Rr4Rw32yUQXMr155Jj24gkjWBxU5cqf+nf Aqrgg04h5plbzcBxyzOHUUr/tzx1/KGoEimOZi0jJMkovSD77ZDS6lGFx8YDoxzCZ+zPEC yabqJ7aUnw1p4Avi+iSe0wNlnmSGz/mXYhR+R5Z4tvgxWtRtZn+yTH0Qw/AR5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757290374; a=rsa-sha256; cv=none; b=TRTsaPK9pZsgkzwANHXoCQXTxlN7WOQwlHla1z3uYc6XXvTuQK/jg+7y1fxzFbC8uIZ70J eW5A85HqQ8BTwMRb9YtmGrC/HDFi63B0LoMhMpJnWVlHMKSV7JZWIK2iEeZShUtH/CL9FK LvPvdW/cPOLBVFlydKGQDqGtFVX5i9XXpNL6xW8L84y4V92XwZaovsgivgwBoRFhqj+WYX 2+w6KhzuepGYwBc1SEoLwm600c4YKPXUPiHT543LV9oHo6mrkxoIJHpPywmt58k9xP9a/9 ssWTvIBwl35uv/OBOOJRTEk2cOoDaybS8AnI78CSM758qitBlmQxYcnRxhjKUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cKnTf4FPWzk6B; Mon, 08 Sep 2025 00:12: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 5880CswP066409; Mon, 8 Sep 2025 00:12:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5880Cslx066406; Mon, 8 Sep 2025 00:12:54 GMT (envelope-from git) Date: Mon, 8 Sep 2025 00:12:54 GMT Message-Id: <202509080012.5880Cslx066406@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: d6616705231c - main - [net80211] Quieten the logging from ieee80211_vht_get_vhtflags() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d6616705231ce5a90068136f1aae05c143e8c0eb Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=d6616705231ce5a90068136f1aae05c143e8c0eb commit d6616705231ce5a90068136f1aae05c143e8c0eb Author: Adrian Chadd AuthorDate: 2025-08-25 00:50:01 +0000 Commit: Adrian Chadd CommitDate: 2025-09-08 00:11:00 +0000 [net80211] Quieten the logging from ieee80211_vht_get_vhtflags() The commit in Fixes: introduced logging the output bits from ieee80211_vht_get_vhtflags(). This ends up causing quite a lot of logging when net80211 is doing things like processing received beacons. So just remove the logging; if it's needed again then a developer can add it back to that location, or just use dtrace to capture the return value. Fixes: 4bf049bfeefd9 Differential Revision: https://reviews.freebsd.org/D52142 Reviewed by: bz --- sys/net80211/ieee80211_ht.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net80211/ieee80211_ht.c b/sys/net80211/ieee80211_ht.c index 018927a6dad4..3af56a228295 100644 --- a/sys/net80211/ieee80211_ht.c +++ b/sys/net80211/ieee80211_ht.c @@ -1933,7 +1933,7 @@ ieee80211_vht_get_vhtflags(struct ieee80211_node *ni, uint32_t htflags) { #define _RETURN_CHAN_BITS(_cb) \ do { \ - IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_11N, ni, \ + if (0) IEEE80211_NOTE(ni->ni_vap, IEEE80211_MSG_11N, ni, \ "%s:%d: selected %b", __func__, __LINE__, \ (_cb), IEEE80211_CHAN_BITS); \ return (_cb); \ From nobody Mon Sep 8 01:28:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cKq9648BPz677jR; Mon, 08 Sep 2025 01:28:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cKq963qSRz3vRN; Mon, 08 Sep 2025 01:28:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757294922; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+pifj4I6r0KaXlhR9hFUbWktM6clFuuMYdPO/MGykuo=; b=SUtJC8mPukvJwQD5FGmoYqUEopHaLjFSEMGfeHmBOlwZvDsOL+l8SDcjmvGaaWAztkuY9R /H6aRsRqX7DMAnNGErQ+rBktdlYA3jJh8w4bGdxXQ/UOO650HhoTRjjrm+zxtRCzt+2vIF UQr8qZlfwWkUC2pN7tdUsWo2W3DkRj78kTnX2VTZYcvE/ARqbOTIsqrCRm4l4OlflQSTpr +PhKA7iQan3aKAOjUe3x4S/5TItPIdAy/f+GgE+eAlvWVftM6RRhI24am7ew7ZHoKWtZwR QxGIiGgFWHZvMmD8ecN1TmK+4WM3fXQf28vPZEfj+PV4DfjsJqoAx393HH2nFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757294922; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+pifj4I6r0KaXlhR9hFUbWktM6clFuuMYdPO/MGykuo=; b=RdoQtlVgyOd8gOVttteE2/5AXuTKhoUFKQFhgq0/Ye77aKO6vtmUN7XkXWGMF2BHNY65P+ eEtYjXOiTixl4nAO25onI+EF86cuDQ8zRfcsPwhh2T+vRh5KeDzXEIWoANGI+FPNV/d2bF FO5MwjKKAAvbUnz6+wYDNPwh5lEej4igaDRhGL6Omrs6n/jzKe2dEXCYBdRqnZ/vDihU/p vEQoBoEus7xDFJ5I5aJFTa9LfixyIJaEnl0zHotbQW9HSwPVdkZRjwz1Sd0BYlFk4PWwQD irjcemkXADYtr8pjXkgqsMMoxUkZAjCaLJX1FnKTIu2QagE04iWHgfwjyxf3AA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757294922; a=rsa-sha256; cv=none; b=xrFV5WHhK/KB+eEUoGGgk17TQpGmZRf7FLkEGXzmJ7DbR8AwfxtOvBSlwHCmMhDYMlwGrw 3D7pcCKdyaAd7ToA8GExXafZo8wGlCUkxLFn8xOTdl+bkLXVNAVpaMYlFuiSVz3klhzULw VNs3+FZIZwJ+D9j4A2i5zfT0HeWiCC4Nk2fBh4vBVz5MOhKSqIWMd2qwCbLy9k1LejdShq x6rUdrTWNJr0RGNE0baVQupsJrGPzlXDeuAAqKH0rQ/Zn601DQfIkz2Gr74cSddmEVdQTW UHbtCZyHkqFq0ywr7RmC717fde6JRqUo3j/aT6we00qgYZq8NR/ftodskxKPfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cKq963Qd0zljm; Mon, 08 Sep 2025 01:28: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 5881Sgu7097381; Mon, 8 Sep 2025 01:28:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5881SgD8097378; Mon, 8 Sep 2025 01:28:42 GMT (envelope-from git) Date: Mon, 8 Sep 2025 01:28:42 GMT Message-Id: <202509080128.5881SgD8097378@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Enji Cooper Subject: git: fdb3b695a4d1 - main - Update the installed manpages to match OpenSSL 3.5.1 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fdb3b695a4d19f098367be4fe2df51bec991170d Auto-Submitted: auto-generated The branch main has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=fdb3b695a4d19f098367be4fe2df51bec991170d commit fdb3b695a4d19f098367be4fe2df51bec991170d Author: Enji Cooper AuthorDate: 2025-09-07 21:23:01 +0000 Commit: Enji Cooper CommitDate: 2025-09-08 01:28:29 +0000 Update the installed manpages to match OpenSSL 3.5.1 MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52008 --- secure/lib/libcrypto/man/man3/Makefile | 4883 +++++++++++++++++++------------- secure/lib/libcrypto/man/man7/Makefile | 38 +- 2 files changed, 2853 insertions(+), 2068 deletions(-) diff --git a/secure/lib/libcrypto/man/man3/Makefile b/secure/lib/libcrypto/man/man3/Makefile index 46d20013e0ac..0fc9cc100077 100644 --- a/secure/lib/libcrypto/man/man3/Makefile +++ b/secure/lib/libcrypto/man/man3/Makefile @@ -670,67 +670,81 @@ MAN+= i2d_PKCS7_bio_stream.3 MAN+= i2d_re_X509_tbs.3 MAN+= o2i_SCT_LIST.3 MAN+= s2i_ASN1_IA5STRING.3 -MLINKS+= X509_dup.3 ACCESS_DESCRIPTION_free.3 -MLINKS+= X509_dup.3 ACCESS_DESCRIPTION_new.3 -MLINKS+= X509_dup.3 ADMISSIONS_free.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_admissionAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_namingAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_professionInfos.3 -MLINKS+= X509_dup.3 ADMISSIONS_new.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_admissionAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_namingAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_professionInfos.3 MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX.3 -MLINKS+= X509_dup.3 ADMISSION_SYNTAX_free.3 MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_get0_admissionAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_get0_contentsOfAdmissions.3 -MLINKS+= X509_dup.3 ADMISSION_SYNTAX_new.3 MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_set0_admissionAuthority.3 MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_set0_contentsOfAdmissions.3 -MLINKS+= X509_dup.3 ASIdOrRange_free.3 -MLINKS+= X509_dup.3 ASIdOrRange_new.3 -MLINKS+= X509_dup.3 ASIdentifierChoice_free.3 -MLINKS+= X509_dup.3 ASIdentifierChoice_new.3 -MLINKS+= X509_dup.3 ASIdentifiers_free.3 -MLINKS+= X509_dup.3 ASIdentifiers_new.3 -MLINKS+= ASN1_aux_cb.3 ASN1_AUX.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityId.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityText.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityURL.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityId.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityText.3 +MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityURL.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFOS.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_addProfessionInfo.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_namingAuthority.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_professionItems.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_professionOIDs.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_registrationNumber.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_addProfessionInfo.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_namingAuthority.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_professionItems.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_professionOIDs.3 +MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_registrationNumber.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_d2i.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_d2i_ex.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_free_func.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_i2d.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_new_ex_func.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_new_func.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_print_func.3 +MLINKS+= ASN1_EXTERN_FUNCS.3 IMPLEMENT_EXTERN_ASN1.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_get.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_get_int64.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_set.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_set_int64.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_to_BN.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_adj.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_check.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_dup.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_print.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set.3 -MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set_string.3 -MLINKS+= ASN1_INTEGER_new.3 ASN1_INTEGER_free.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_get.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_get_uint64.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set_int64.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set_uint64.3 MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_to_BN.3 -MLINKS+= X509_dup.3 ASN1_ITEM.3 +MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_ENUMERATED.3 +MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_INTEGER.3 +MLINKS+= ASN1_INTEGER_new.3 ASN1_INTEGER_free.3 MLINKS+= ASN1_ITEM_lookup.3 ASN1_ITEM_get.3 MLINKS+= ASN1_OBJECT_new.3 ASN1_OBJECT_free.3 -MLINKS+= ASN1_aux_cb.3 ASN1_PRINT_ARG.3 -MLINKS+= ASN1_aux_cb.3 ASN1_STREAM_ARG.3 MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE.3 MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE_cleanup.3 MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE_get.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_cmp.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_data.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_dup.3 -MLINKS+= ASN1_STRING_new.3 ASN1_STRING_free.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_get0_data.3 -MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print.3 -MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print_ex_fp.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_set.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_to_UTF8.3 MLINKS+= ASN1_STRING_length.3 ASN1_STRING_type.3 +MLINKS+= ASN1_STRING_new.3 ASN1_STRING_free.3 MLINKS+= ASN1_STRING_new.3 ASN1_STRING_type_new.3 +MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print.3 +MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print_ex_fp.3 +MLINKS+= ASN1_STRING_print_ex.3 ASN1_tag2str.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_adj.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_check.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_dup.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_print.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set.3 +MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set_string.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_adj.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_check.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_cmp_time_t.3 @@ -744,11 +758,6 @@ MLINKS+= ASN1_TIME_set.3 ASN1_TIME_set_string.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_set_string_X509.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_to_generalizedtime.3 MLINKS+= ASN1_TIME_set.3 ASN1_TIME_to_tm.3 -MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_cmp.3 -MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_pack_sequence.3 -MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set.3 -MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set1.3 -MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_unpack_sequence.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_adj.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_check.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_cmp_time_t.3 @@ -756,15 +765,15 @@ MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_dup.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_print.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_set.3 MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_set_string.3 -MLINKS+= OPENSSL_load_builtin_modules.3 ASN1_add_oid_module.3 +MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_cmp.3 +MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_pack_sequence.3 +MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set.3 +MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set1.3 +MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_unpack_sequence.3 +MLINKS+= ASN1_aux_cb.3 ASN1_AUX.3 +MLINKS+= ASN1_aux_cb.3 ASN1_PRINT_ARG.3 +MLINKS+= ASN1_aux_cb.3 ASN1_STREAM_ARG.3 MLINKS+= ASN1_aux_cb.3 ASN1_aux_const_cb.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_d2i.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_d2i_ex.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_free_func.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_i2d.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_new_ex_func.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_new_func.3 -MLINKS+= ASN1_EXTERN_FUNCS.3 ASN1_ex_print_func.3 MLINKS+= ASN1_generate_nconf.3 ASN1_generate_v3.3 MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_d2i.3 MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_d2i_bio_ex.3 @@ -772,15 +781,15 @@ MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_d2i_ex.3 MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_d2i_fp.3 MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_d2i_fp_ex.3 MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_i2d_mem_bio.3 +MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_pack.3 +MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_unpack.3 +MLINKS+= ASN1_item_d2i_bio.3 ASN1_item_unpack_ex.3 MLINKS+= ASN1_item_new.3 ASN1_item_new_ex.3 MLINKS+= ASN1_item_sign.3 ASN1_item_sign_ctx.3 MLINKS+= ASN1_item_sign.3 ASN1_item_sign_ex.3 MLINKS+= ASN1_item_sign.3 ASN1_item_verify.3 MLINKS+= ASN1_item_sign.3 ASN1_item_verify_ctx.3 MLINKS+= ASN1_item_sign.3 ASN1_item_verify_ex.3 -MLINKS+= ASN1_STRING_print_ex.3 ASN1_tag2str.3 -MLINKS+= X509_dup.3 ASRange_free.3 -MLINKS+= X509_dup.3 ASRange_new.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_STATUS_EAGAIN.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_STATUS_ERR.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_STATUS_OK.3 @@ -795,21 +804,19 @@ MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_get_status.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_set_callback.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_set_status.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_set_wait_fd.3 -MLINKS+= ASYNC_start_job.3 ASYNC_block_pause.3 MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_callback_fn.3 +MLINKS+= ASYNC_start_job.3 ASYNC_block_pause.3 MLINKS+= ASYNC_start_job.3 ASYNC_cleanup_thread.3 MLINKS+= ASYNC_start_job.3 ASYNC_get_current_job.3 +MLINKS+= ASYNC_start_job.3 ASYNC_get_mem_functions.3 MLINKS+= ASYNC_start_job.3 ASYNC_get_wait_ctx.3 MLINKS+= ASYNC_start_job.3 ASYNC_init_thread.3 MLINKS+= ASYNC_start_job.3 ASYNC_is_capable.3 MLINKS+= ASYNC_start_job.3 ASYNC_pause_job.3 +MLINKS+= ASYNC_start_job.3 ASYNC_set_mem_functions.3 +MLINKS+= ASYNC_start_job.3 ASYNC_stack_alloc_fn.3 +MLINKS+= ASYNC_start_job.3 ASYNC_stack_free_fn.3 MLINKS+= ASYNC_start_job.3 ASYNC_unblock_pause.3 -MLINKS+= X509_dup.3 AUTHORITY_INFO_ACCESS_free.3 -MLINKS+= X509_dup.3 AUTHORITY_INFO_ACCESS_new.3 -MLINKS+= X509_dup.3 AUTHORITY_KEYID_free.3 -MLINKS+= X509_dup.3 AUTHORITY_KEYID_new.3 -MLINKS+= X509_dup.3 BASIC_CONSTRAINTS_free.3 -MLINKS+= X509_dup.3 BASIC_CONSTRAINTS_new.3 MLINKS+= BF_encrypt.3 BF_cbc_encrypt.3 MLINKS+= BF_encrypt.3 BF_cfb64_encrypt.3 MLINKS+= BF_encrypt.3 BF_decrypt.3 @@ -817,13 +824,9 @@ MLINKS+= BF_encrypt.3 BF_ecb_encrypt.3 MLINKS+= BF_encrypt.3 BF_ofb64_encrypt.3 MLINKS+= BF_encrypt.3 BF_options.3 MLINKS+= BF_encrypt.3 BF_set_key.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_address.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_family.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_free.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_next.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_protocol.3 -MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_socktype.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_clear.3 +MLINKS+= BIO_ADDR.3 BIO_ADDR_copy.3 +MLINKS+= BIO_ADDR.3 BIO_ADDR_dup.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_family.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_free.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_hostname_string.3 @@ -833,190 +836,275 @@ MLINKS+= BIO_ADDR.3 BIO_ADDR_rawaddress.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_rawmake.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_rawport.3 MLINKS+= BIO_ADDR.3 BIO_ADDR_service_string.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_address.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_family.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_free.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_next.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_protocol.3 +MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_socktype.3 +MLINKS+= BIO_ADDRINFO.3 BIO_lookup.3 +MLINKS+= BIO_ADDRINFO.3 BIO_lookup_ex.3 +MLINKS+= BIO_ADDRINFO.3 BIO_lookup_type.3 MLINKS+= BIO_connect.3 BIO_accept_ex.3 -MLINKS+= BIO_s_file.3 BIO_append_filename.3 MLINKS+= BIO_connect.3 BIO_bind.3 -MLINKS+= BIO_ctrl.3 BIO_callback_ctrl.3 -MLINKS+= BIO_set_callback.3 BIO_callback_fn.3 -MLINKS+= BIO_set_callback.3 BIO_callback_fn_ex.3 MLINKS+= BIO_connect.3 BIO_closesocket.3 -MLINKS+= BIO_s_datagram.3 BIO_ctrl_dgram_connect.3 -MLINKS+= BIO_s_bio.3 BIO_ctrl_get_read_request.3 -MLINKS+= BIO_s_bio.3 BIO_ctrl_get_write_guarantee.3 +MLINKS+= BIO_connect.3 BIO_listen.3 +MLINKS+= BIO_connect.3 BIO_socket.3 +MLINKS+= BIO_ctrl.3 BIO_callback_ctrl.3 MLINKS+= BIO_ctrl.3 BIO_ctrl_pending.3 -MLINKS+= BIO_s_bio.3 BIO_ctrl_reset_read_request.3 -MLINKS+= BIO_s_datagram.3 BIO_ctrl_set_connected.3 MLINKS+= BIO_ctrl.3 BIO_ctrl_wpending.3 -MLINKS+= BIO_set_callback.3 BIO_debug_callback.3 -MLINKS+= BIO_set_callback.3 BIO_debug_callback_ex.3 -MLINKS+= BIO_s_bio.3 BIO_destroy_bio_pair.3 -MLINKS+= BIO_s_datagram.3 BIO_dgram_get_mtu_overhead.3 -MLINKS+= BIO_s_datagram.3 BIO_dgram_get_peer.3 -MLINKS+= BIO_s_datagram.3 BIO_dgram_recv_timedout.3 -MLINKS+= BIO_s_datagram.3 BIO_dgram_send_timedout.3 -MLINKS+= BIO_s_datagram.3 BIO_dgram_set_peer.3 -MLINKS+= BIO_s_accept.3 BIO_do_accept.3 -MLINKS+= BIO_s_connect.3 BIO_do_connect.3 -MLINKS+= BIO_socket_wait.3 BIO_do_connect_retry.3 -MLINKS+= BIO_f_ssl.3 BIO_do_handshake.3 MLINKS+= BIO_ctrl.3 BIO_eof.3 MLINKS+= BIO_ctrl.3 BIO_flush.3 -MLINKS+= BIO_new.3 BIO_free.3 -MLINKS+= BIO_new.3 BIO_free_all.3 -MLINKS+= BIO_s_accept.3 BIO_get_accept_ip_family.3 -MLINKS+= BIO_s_accept.3 BIO_get_accept_name.3 -MLINKS+= BIO_s_accept.3 BIO_get_accept_port.3 -MLINKS+= BIO_get_ex_new_index.3 BIO_get_app_data.3 -MLINKS+= BIO_s_accept.3 BIO_get_bind_mode.3 -MLINKS+= BIO_f_buffer.3 BIO_get_buffer_num_lines.3 -MLINKS+= BIO_set_callback.3 BIO_get_callback.3 -MLINKS+= BIO_set_callback.3 BIO_get_callback_arg.3 -MLINKS+= BIO_set_callback.3 BIO_get_callback_ex.3 -MLINKS+= BIO_f_cipher.3 BIO_get_cipher_ctx.3 -MLINKS+= BIO_f_cipher.3 BIO_get_cipher_status.3 MLINKS+= BIO_ctrl.3 BIO_get_close.3 -MLINKS+= BIO_s_connect.3 BIO_get_conn_address.3 -MLINKS+= BIO_s_connect.3 BIO_get_conn_hostname.3 -MLINKS+= BIO_s_connect.3 BIO_get_conn_ip_family.3 -MLINKS+= BIO_s_connect.3 BIO_get_conn_port.3 -MLINKS+= BIO_get_ex_new_index.3 BIO_get_ex_data.3 -MLINKS+= BIO_s_fd.3 BIO_get_fd.3 -MLINKS+= BIO_s_file.3 BIO_get_fp.3 -MLINKS+= BIO_f_prefix.3 BIO_get_indent.3 +MLINKS+= BIO_ctrl.3 BIO_get_conn_mode.3 MLINKS+= BIO_ctrl.3 BIO_get_info_callback.3 -MLINKS+= BIO_get_data.3 BIO_get_init.3 MLINKS+= BIO_ctrl.3 BIO_get_ktls_recv.3 MLINKS+= BIO_ctrl.3 BIO_get_ktls_send.3 -MLINKS+= BIO_read.3 BIO_get_line.3 -MLINKS+= BIO_f_md.3 BIO_get_md.3 -MLINKS+= BIO_f_md.3 BIO_get_md_ctx.3 -MLINKS+= BIO_s_mem.3 BIO_get_mem_data.3 -MLINKS+= BIO_s_mem.3 BIO_get_mem_ptr.3 -MLINKS+= BIO_meth_new.3 BIO_get_new_index.3 -MLINKS+= BIO_f_ssl.3 BIO_get_num_renegotiates.3 -MLINKS+= BIO_s_accept.3 BIO_get_peer_name.3 -MLINKS+= BIO_s_accept.3 BIO_get_peer_port.3 -MLINKS+= BIO_s_bio.3 BIO_get_read_request.3 -MLINKS+= BIO_should_retry.3 BIO_get_retry_BIO.3 -MLINKS+= BIO_should_retry.3 BIO_get_retry_reason.3 -MLINKS+= BIO_get_data.3 BIO_get_shutdown.3 -MLINKS+= BIO_f_ssl.3 BIO_get_ssl.3 -MLINKS+= BIO_s_bio.3 BIO_get_write_buf_size.3 -MLINKS+= BIO_s_bio.3 BIO_get_write_guarantee.3 -MLINKS+= BIO_read.3 BIO_gets.3 -MLINKS+= BIO_parse_hostserv.3 BIO_hostserv_priorities.3 MLINKS+= BIO_ctrl.3 BIO_info_cb.3 MLINKS+= BIO_ctrl.3 BIO_int_ctrl.3 -MLINKS+= BIO_connect.3 BIO_listen.3 -MLINKS+= BIO_ADDRINFO.3 BIO_lookup.3 -MLINKS+= BIO_ADDRINFO.3 BIO_lookup_ex.3 -MLINKS+= BIO_ADDRINFO.3 BIO_lookup_type.3 -MLINKS+= BIO_s_bio.3 BIO_make_bio_pair.3 -MLINKS+= BIO_meth_new.3 BIO_meth_free.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_callback_ctrl.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_create.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_ctrl.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_destroy.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_gets.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_puts.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_read.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_read_ex.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_write.3 -MLINKS+= BIO_meth_new.3 BIO_meth_get_write_ex.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_callback_ctrl.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_create.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_ctrl.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_destroy.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_gets.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_puts.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_read.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_read_ex.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_write.3 -MLINKS+= BIO_meth_new.3 BIO_meth_set_write_ex.3 -MLINKS+= BIO_find_type.3 BIO_method_type.3 -MLINKS+= BIO_s_accept.3 BIO_new_accept.3 -MLINKS+= BIO_s_bio.3 BIO_new_bio_pair.3 -MLINKS+= BIO_f_ssl.3 BIO_new_buffer_ssl_connect.3 -MLINKS+= BIO_s_connect.3 BIO_new_connect.3 -MLINKS+= BIO_s_datagram.3 BIO_new_dgram.3 -MLINKS+= BIO_new.3 BIO_new_ex.3 -MLINKS+= BIO_s_fd.3 BIO_new_fd.3 -MLINKS+= BIO_s_file.3 BIO_new_file.3 -MLINKS+= BIO_s_file.3 BIO_new_fp.3 -MLINKS+= BIO_s_core.3 BIO_new_from_core_bio.3 -MLINKS+= BIO_s_mem.3 BIO_new_mem_buf.3 -MLINKS+= BIO_s_socket.3 BIO_new_socket.3 -MLINKS+= BIO_f_ssl.3 BIO_new_ssl.3 -MLINKS+= BIO_f_ssl.3 BIO_new_ssl_connect.3 -MLINKS+= BIO_find_type.3 BIO_next.3 MLINKS+= BIO_ctrl.3 BIO_pending.3 -MLINKS+= BIO_push.3 BIO_pop.3 MLINKS+= BIO_ctrl.3 BIO_ptr_ctrl.3 -MLINKS+= BIO_read.3 BIO_puts.3 -MLINKS+= BIO_read.3 BIO_read_ex.3 -MLINKS+= BIO_s_file.3 BIO_read_filename.3 MLINKS+= BIO_ctrl.3 BIO_reset.3 -MLINKS+= BIO_should_retry.3 BIO_retry_type.3 -MLINKS+= BIO_s_file.3 BIO_rw_filename.3 -MLINKS+= BIO_s_mem.3 BIO_s_secmem.3 MLINKS+= BIO_ctrl.3 BIO_seek.3 -MLINKS+= BIO_s_accept.3 BIO_set_accept_bios.3 -MLINKS+= BIO_s_accept.3 BIO_set_accept_ip_family.3 -MLINKS+= BIO_s_accept.3 BIO_set_accept_name.3 -MLINKS+= BIO_s_accept.3 BIO_set_accept_port.3 -MLINKS+= BIO_get_ex_new_index.3 BIO_set_app_data.3 -MLINKS+= BIO_s_accept.3 BIO_set_bind_mode.3 +MLINKS+= BIO_ctrl.3 BIO_set_close.3 +MLINKS+= BIO_ctrl.3 BIO_set_conn_mode.3 +MLINKS+= BIO_ctrl.3 BIO_set_info_callback.3 +MLINKS+= BIO_ctrl.3 BIO_set_tfo.3 +MLINKS+= BIO_ctrl.3 BIO_tell.3 +MLINKS+= BIO_ctrl.3 BIO_wpending.3 +MLINKS+= BIO_f_buffer.3 BIO_get_buffer_num_lines.3 MLINKS+= BIO_f_buffer.3 BIO_set_buffer_read_data.3 MLINKS+= BIO_f_buffer.3 BIO_set_buffer_size.3 -MLINKS+= BIO_set_callback.3 BIO_set_callback_arg.3 -MLINKS+= BIO_set_callback.3 BIO_set_callback_ex.3 +MLINKS+= BIO_f_buffer.3 BIO_set_read_buffer_size.3 +MLINKS+= BIO_f_buffer.3 BIO_set_write_buffer_size.3 +MLINKS+= BIO_f_cipher.3 BIO_get_cipher_ctx.3 +MLINKS+= BIO_f_cipher.3 BIO_get_cipher_status.3 MLINKS+= BIO_f_cipher.3 BIO_set_cipher.3 -MLINKS+= BIO_ctrl.3 BIO_set_close.3 -MLINKS+= BIO_s_connect.3 BIO_set_conn_address.3 -MLINKS+= BIO_s_connect.3 BIO_set_conn_hostname.3 -MLINKS+= BIO_s_connect.3 BIO_set_conn_ip_family.3 -MLINKS+= BIO_s_connect.3 BIO_set_conn_port.3 -MLINKS+= BIO_get_data.3 BIO_set_data.3 -MLINKS+= BIO_get_ex_new_index.3 BIO_set_ex_data.3 -MLINKS+= BIO_s_fd.3 BIO_set_fd.3 -MLINKS+= BIO_s_file.3 BIO_set_fp.3 +MLINKS+= BIO_f_md.3 BIO_get_md.3 +MLINKS+= BIO_f_md.3 BIO_get_md_ctx.3 +MLINKS+= BIO_f_md.3 BIO_set_md.3 +MLINKS+= BIO_f_prefix.3 BIO_get_indent.3 MLINKS+= BIO_f_prefix.3 BIO_set_indent.3 -MLINKS+= BIO_ctrl.3 BIO_set_info_callback.3 -MLINKS+= BIO_get_data.3 BIO_set_init.3 -MLINKS+= BIO_f_md.3 BIO_set_md.3 -MLINKS+= BIO_s_mem.3 BIO_set_mem_buf.3 -MLINKS+= BIO_s_mem.3 BIO_set_mem_eof_return.3 -MLINKS+= BIO_s_connect.3 BIO_set_nbio.3 -MLINKS+= BIO_s_accept.3 BIO_set_nbio_accept.3 -MLINKS+= BIO_push.3 BIO_set_next.3 MLINKS+= BIO_f_prefix.3 BIO_set_prefix.3 -MLINKS+= BIO_f_buffer.3 BIO_set_read_buffer_size.3 -MLINKS+= BIO_should_retry.3 BIO_set_retry_reason.3 -MLINKS+= BIO_get_data.3 BIO_set_shutdown.3 +MLINKS+= BIO_f_ssl.3 BIO_do_handshake.3 +MLINKS+= BIO_f_ssl.3 BIO_get_num_renegotiates.3 +MLINKS+= BIO_f_ssl.3 BIO_get_ssl.3 +MLINKS+= BIO_f_ssl.3 BIO_new_buffer_ssl_connect.3 +MLINKS+= BIO_f_ssl.3 BIO_new_ssl.3 +MLINKS+= BIO_f_ssl.3 BIO_new_ssl_connect.3 MLINKS+= BIO_f_ssl.3 BIO_set_ssl.3 MLINKS+= BIO_f_ssl.3 BIO_set_ssl_mode.3 MLINKS+= BIO_f_ssl.3 BIO_set_ssl_renegotiate_bytes.3 MLINKS+= BIO_f_ssl.3 BIO_set_ssl_renegotiate_timeout.3 -MLINKS+= BIO_s_bio.3 BIO_set_write_buf_size.3 -MLINKS+= BIO_f_buffer.3 BIO_set_write_buffer_size.3 -MLINKS+= BIO_should_retry.3 BIO_should_io_special.3 -MLINKS+= BIO_should_retry.3 BIO_should_read.3 -MLINKS+= BIO_should_retry.3 BIO_should_write.3 -MLINKS+= BIO_s_bio.3 BIO_shutdown_wr.3 -MLINKS+= BIO_printf.3 BIO_snprintf.3 -MLINKS+= BIO_connect.3 BIO_socket.3 MLINKS+= BIO_f_ssl.3 BIO_ssl_copy_session_id.3 MLINKS+= BIO_f_ssl.3 BIO_ssl_shutdown.3 -MLINKS+= BIO_ctrl.3 BIO_tell.3 +MLINKS+= BIO_find_type.3 BIO_method_type.3 +MLINKS+= BIO_find_type.3 BIO_next.3 +MLINKS+= BIO_get_data.3 BIO_get_init.3 +MLINKS+= BIO_get_data.3 BIO_get_shutdown.3 +MLINKS+= BIO_get_data.3 BIO_set_data.3 +MLINKS+= BIO_get_data.3 BIO_set_init.3 +MLINKS+= BIO_get_data.3 BIO_set_shutdown.3 +MLINKS+= BIO_get_ex_new_index.3 BIO_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 BIO_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 BIO_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 BIO_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 DH_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 DH_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 DH_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 DSA_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 DSA_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 DSA_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 EC_KEY_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 EC_KEY_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 EC_KEY_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 ENGINE_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 ENGINE_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 ENGINE_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 EVP_PKEY_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 EVP_PKEY_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 EVP_PKEY_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 RSA_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 RSA_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 RSA_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 RSA_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 RSA_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_CTX_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_CTX_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_CTX_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_CTX_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_CTX_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_SESSION_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_SESSION_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_SESSION_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_SESSION_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_SESSION_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 SSL_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 UI_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 UI_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 UI_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 UI_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 UI_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_get_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_set_app_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 X509_STORE_set_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_get_ex_data.3 +MLINKS+= BIO_get_ex_new_index.3 X509_get_ex_new_index.3 +MLINKS+= BIO_get_ex_new_index.3 X509_set_ex_data.3 +MLINKS+= BIO_get_rpoll_descriptor.3 BIO_get_wpoll_descriptor.3 +MLINKS+= BIO_meth_new.3 BIO_get_new_index.3 +MLINKS+= BIO_meth_new.3 BIO_meth_free.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_callback_ctrl.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_create.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_ctrl.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_destroy.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_gets.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_puts.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_read.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_read_ex.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_recvmmsg.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_sendmmsg.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_write.3 +MLINKS+= BIO_meth_new.3 BIO_meth_get_write_ex.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_callback_ctrl.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_create.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_ctrl.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_destroy.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_gets.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_puts.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_read.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_read_ex.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_recvmmsg.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_sendmmsg.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_write.3 +MLINKS+= BIO_meth_new.3 BIO_meth_set_write_ex.3 +MLINKS+= BIO_new.3 BIO_free.3 +MLINKS+= BIO_new.3 BIO_free_all.3 +MLINKS+= BIO_new.3 BIO_new_ex.3 MLINKS+= BIO_new.3 BIO_up_ref.3 MLINKS+= BIO_new.3 BIO_vfree.3 +MLINKS+= BIO_parse_hostserv.3 BIO_hostserv_priorities.3 +MLINKS+= BIO_printf.3 BIO_snprintf.3 MLINKS+= BIO_printf.3 BIO_vprintf.3 MLINKS+= BIO_printf.3 BIO_vsnprintf.3 -MLINKS+= BIO_socket_wait.3 BIO_wait.3 -MLINKS+= BIO_ctrl.3 BIO_wpending.3 +MLINKS+= BIO_push.3 BIO_pop.3 +MLINKS+= BIO_push.3 BIO_set_next.3 +MLINKS+= BIO_read.3 BIO_get_line.3 +MLINKS+= BIO_read.3 BIO_gets.3 +MLINKS+= BIO_read.3 BIO_puts.3 +MLINKS+= BIO_read.3 BIO_read_ex.3 MLINKS+= BIO_read.3 BIO_write.3 MLINKS+= BIO_read.3 BIO_write_ex.3 +MLINKS+= BIO_s_accept.3 BIO_do_accept.3 +MLINKS+= BIO_s_accept.3 BIO_get_accept_ip_family.3 +MLINKS+= BIO_s_accept.3 BIO_get_accept_name.3 +MLINKS+= BIO_s_accept.3 BIO_get_accept_port.3 +MLINKS+= BIO_s_accept.3 BIO_get_bind_mode.3 +MLINKS+= BIO_s_accept.3 BIO_get_peer_name.3 +MLINKS+= BIO_s_accept.3 BIO_get_peer_port.3 +MLINKS+= BIO_s_accept.3 BIO_new_accept.3 +MLINKS+= BIO_s_accept.3 BIO_set_accept_bios.3 +MLINKS+= BIO_s_accept.3 BIO_set_accept_ip_family.3 +MLINKS+= BIO_s_accept.3 BIO_set_accept_name.3 +MLINKS+= BIO_s_accept.3 BIO_set_accept_port.3 +MLINKS+= BIO_s_accept.3 BIO_set_bind_mode.3 +MLINKS+= BIO_s_accept.3 BIO_set_nbio_accept.3 +MLINKS+= BIO_s_accept.3 BIO_set_tfo_accept.3 +MLINKS+= BIO_s_bio.3 BIO_ctrl_get_read_request.3 +MLINKS+= BIO_s_bio.3 BIO_ctrl_get_write_guarantee.3 +MLINKS+= BIO_s_bio.3 BIO_ctrl_reset_read_request.3 +MLINKS+= BIO_s_bio.3 BIO_destroy_bio_pair.3 +MLINKS+= BIO_s_bio.3 BIO_get_read_request.3 +MLINKS+= BIO_s_bio.3 BIO_get_write_buf_size.3 +MLINKS+= BIO_s_bio.3 BIO_get_write_guarantee.3 +MLINKS+= BIO_s_bio.3 BIO_make_bio_pair.3 +MLINKS+= BIO_s_bio.3 BIO_new_bio_pair.3 +MLINKS+= BIO_s_bio.3 BIO_set_write_buf_size.3 +MLINKS+= BIO_s_bio.3 BIO_shutdown_wr.3 +MLINKS+= BIO_s_connect.3 BIO_do_connect.3 +MLINKS+= BIO_s_connect.3 BIO_get0_dgram_bio.3 +MLINKS+= BIO_s_connect.3 BIO_get_conn_address.3 +MLINKS+= BIO_s_connect.3 BIO_get_conn_hostname.3 +MLINKS+= BIO_s_connect.3 BIO_get_conn_ip_family.3 +MLINKS+= BIO_s_connect.3 BIO_get_conn_port.3 +MLINKS+= BIO_s_connect.3 BIO_get_sock_type.3 +MLINKS+= BIO_s_connect.3 BIO_new_connect.3 +MLINKS+= BIO_s_connect.3 BIO_set_conn_address.3 +MLINKS+= BIO_s_connect.3 BIO_set_conn_hostname.3 +MLINKS+= BIO_s_connect.3 BIO_set_conn_ip_family.3 +MLINKS+= BIO_s_connect.3 BIO_set_conn_port.3 +MLINKS+= BIO_s_connect.3 BIO_set_nbio.3 +MLINKS+= BIO_s_connect.3 BIO_set_sock_type.3 +MLINKS+= BIO_s_core.3 BIO_new_from_core_bio.3 +MLINKS+= BIO_s_datagram.3 BIO_ctrl_dgram_connect.3 +MLINKS+= BIO_s_datagram.3 BIO_ctrl_set_connected.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_detect_peer_addr.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_get_mtu_overhead.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_get_peer.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_recv_timedout.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_send_timedout.3 +MLINKS+= BIO_s_datagram.3 BIO_dgram_set_peer.3 +MLINKS+= BIO_s_datagram.3 BIO_new_dgram.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_get_caps.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_get_effective_caps.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_get_mtu.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_get_no_trunc.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_set0_local_addr.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_set_caps.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_set_mtu.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_dgram_set_no_trunc.3 +MLINKS+= BIO_s_dgram_pair.3 BIO_new_bio_dgram_pair.3 +MLINKS+= BIO_s_fd.3 BIO_get_fd.3 +MLINKS+= BIO_s_fd.3 BIO_new_fd.3 +MLINKS+= BIO_s_fd.3 BIO_set_fd.3 +MLINKS+= BIO_s_file.3 BIO_append_filename.3 +MLINKS+= BIO_s_file.3 BIO_get_fp.3 +MLINKS+= BIO_s_file.3 BIO_new_file.3 +MLINKS+= BIO_s_file.3 BIO_new_fp.3 +MLINKS+= BIO_s_file.3 BIO_read_filename.3 +MLINKS+= BIO_s_file.3 BIO_rw_filename.3 +MLINKS+= BIO_s_file.3 BIO_set_fp.3 MLINKS+= BIO_s_file.3 BIO_write_filename.3 +MLINKS+= BIO_s_mem.3 BIO_get_mem_data.3 +MLINKS+= BIO_s_mem.3 BIO_get_mem_ptr.3 +MLINKS+= BIO_s_mem.3 BIO_new_mem_buf.3 +MLINKS+= BIO_s_mem.3 BIO_s_dgram_mem.3 +MLINKS+= BIO_s_mem.3 BIO_s_secmem.3 +MLINKS+= BIO_s_mem.3 BIO_set_mem_buf.3 +MLINKS+= BIO_s_mem.3 BIO_set_mem_eof_return.3 +MLINKS+= BIO_s_socket.3 BIO_new_socket.3 +MLINKS+= BIO_sendmmsg.3 BIO_dgram_get_local_addr_cap.3 +MLINKS+= BIO_sendmmsg.3 BIO_dgram_get_local_addr_enable.3 +MLINKS+= BIO_sendmmsg.3 BIO_dgram_set_local_addr_enable.3 +MLINKS+= BIO_sendmmsg.3 BIO_err_is_non_fatal.3 +MLINKS+= BIO_sendmmsg.3 BIO_recvmmsg.3 +MLINKS+= BIO_set_callback.3 BIO_callback_fn.3 +MLINKS+= BIO_set_callback.3 BIO_callback_fn_ex.3 +MLINKS+= BIO_set_callback.3 BIO_debug_callback.3 +MLINKS+= BIO_set_callback.3 BIO_debug_callback_ex.3 +MLINKS+= BIO_set_callback.3 BIO_get_callback.3 +MLINKS+= BIO_set_callback.3 BIO_get_callback_arg.3 +MLINKS+= BIO_set_callback.3 BIO_get_callback_ex.3 +MLINKS+= BIO_set_callback.3 BIO_set_callback_arg.3 +MLINKS+= BIO_set_callback.3 BIO_set_callback_ex.3 +MLINKS+= BIO_should_retry.3 BIO_get_retry_BIO.3 +MLINKS+= BIO_should_retry.3 BIO_get_retry_reason.3 +MLINKS+= BIO_should_retry.3 BIO_retry_type.3 +MLINKS+= BIO_should_retry.3 BIO_set_retry_reason.3 +MLINKS+= BIO_should_retry.3 BIO_should_io_special.3 +MLINKS+= BIO_should_retry.3 BIO_should_read.3 +MLINKS+= BIO_should_retry.3 BIO_should_write.3 +MLINKS+= BIO_socket_wait.3 BIO_do_connect_retry.3 +MLINKS+= BIO_socket_wait.3 BIO_wait.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_convert.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_convert_ex.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_create_param.3 @@ -1030,96 +1118,90 @@ MLINKS+= BN_BLINDING_new.3 BN_BLINDING_set_current_thread.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_set_flags.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_unlock.3 MLINKS+= BN_BLINDING_new.3 BN_BLINDING_update.3 -MLINKS+= BN_CTX_start.3 BN_CTX_end.3 MLINKS+= BN_CTX_new.3 BN_CTX_free.3 -MLINKS+= BN_CTX_start.3 BN_CTX_get.3 MLINKS+= BN_CTX_new.3 BN_CTX_new_ex.3 MLINKS+= BN_CTX_new.3 BN_CTX_secure_new.3 MLINKS+= BN_CTX_new.3 BN_CTX_secure_new_ex.3 +MLINKS+= BN_CTX_start.3 BN_CTX_end.3 +MLINKS+= BN_CTX_start.3 BN_CTX_get.3 +MLINKS+= BN_add.3 BN_div.3 +MLINKS+= BN_add.3 BN_exp.3 +MLINKS+= BN_add.3 BN_gcd.3 +MLINKS+= BN_add.3 BN_mod.3 +MLINKS+= BN_add.3 BN_mod_add.3 +MLINKS+= BN_add.3 BN_mod_exp.3 +MLINKS+= BN_add.3 BN_mod_mul.3 +MLINKS+= BN_add.3 BN_mod_sqr.3 +MLINKS+= BN_add.3 BN_mod_sqrt.3 +MLINKS+= BN_add.3 BN_mod_sub.3 +MLINKS+= BN_add.3 BN_mul.3 +MLINKS+= BN_add.3 BN_nnmod.3 +MLINKS+= BN_add.3 BN_sqr.3 +MLINKS+= BN_add.3 BN_sub.3 +MLINKS+= BN_add_word.3 BN_div_word.3 +MLINKS+= BN_add_word.3 BN_mod_word.3 +MLINKS+= BN_add_word.3 BN_mul_word.3 +MLINKS+= BN_add_word.3 BN_sub_word.3 +MLINKS+= BN_bn2bin.3 BN_bin2bn.3 +MLINKS+= BN_bn2bin.3 BN_bn2binpad.3 +MLINKS+= BN_bn2bin.3 BN_bn2dec.3 +MLINKS+= BN_bn2bin.3 BN_bn2hex.3 +MLINKS+= BN_bn2bin.3 BN_bn2lebinpad.3 +MLINKS+= BN_bn2bin.3 BN_bn2mpi.3 +MLINKS+= BN_bn2bin.3 BN_bn2nativepad.3 +MLINKS+= BN_bn2bin.3 BN_dec2bn.3 +MLINKS+= BN_bn2bin.3 BN_hex2bn.3 +MLINKS+= BN_bn2bin.3 BN_lebin2bn.3 +MLINKS+= BN_bn2bin.3 BN_mpi2bn.3 +MLINKS+= BN_bn2bin.3 BN_native2bn.3 +MLINKS+= BN_bn2bin.3 BN_print.3 +MLINKS+= BN_bn2bin.3 BN_print_fp.3 +MLINKS+= BN_bn2bin.3 BN_signed_bin2bn.3 +MLINKS+= BN_bn2bin.3 BN_signed_bn2bin.3 +MLINKS+= BN_bn2bin.3 BN_signed_bn2lebin.3 +MLINKS+= BN_bn2bin.3 BN_signed_bn2native.3 +MLINKS+= BN_bn2bin.3 BN_signed_lebin2bn.3 +MLINKS+= BN_bn2bin.3 BN_signed_native2bn.3 +MLINKS+= BN_cmp.3 BN_abs_is_word.3 +MLINKS+= BN_cmp.3 BN_are_coprime.3 +MLINKS+= BN_cmp.3 BN_is_odd.3 +MLINKS+= BN_cmp.3 BN_is_one.3 +MLINKS+= BN_cmp.3 BN_is_word.3 +MLINKS+= BN_cmp.3 BN_is_zero.3 +MLINKS+= BN_cmp.3 BN_ucmp.3 +MLINKS+= BN_copy.3 BN_dup.3 +MLINKS+= BN_copy.3 BN_with_flags.3 MLINKS+= BN_generate_prime.3 BN_GENCB_call.3 MLINKS+= BN_generate_prime.3 BN_GENCB_free.3 MLINKS+= BN_generate_prime.3 BN_GENCB_get_arg.3 MLINKS+= BN_generate_prime.3 BN_GENCB_new.3 MLINKS+= BN_generate_prime.3 BN_GENCB_set.3 MLINKS+= BN_generate_prime.3 BN_GENCB_set_old.3 +MLINKS+= BN_generate_prime.3 BN_check_prime.3 +MLINKS+= BN_generate_prime.3 BN_generate_prime_ex.3 +MLINKS+= BN_generate_prime.3 BN_generate_prime_ex2.3 +MLINKS+= BN_generate_prime.3 BN_is_prime.3 +MLINKS+= BN_generate_prime.3 BN_is_prime_ex.3 +MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest.3 +MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest_ex.3 +MLINKS+= BN_mod_exp_mont.3 BN_mod_exp_mont_consttime.3 +MLINKS+= BN_mod_exp_mont.3 BN_mod_exp_mont_consttime_x2.3 MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_copy.3 MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_free.3 MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_new.3 MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_set.3 +MLINKS+= BN_mod_mul_montgomery.3 BN_from_montgomery.3 +MLINKS+= BN_mod_mul_montgomery.3 BN_to_montgomery.3 MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_free.3 MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_new.3 MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_set.3 -MLINKS+= BN_cmp.3 BN_abs_is_word.3 -MLINKS+= BN_bn2bin.3 BN_bin2bn.3 -MLINKS+= BN_bn2bin.3 BN_bn2binpad.3 -MLINKS+= BN_bn2bin.3 BN_bn2dec.3 -MLINKS+= BN_bn2bin.3 BN_bn2hex.3 -MLINKS+= BN_bn2bin.3 BN_bn2lebinpad.3 -MLINKS+= BN_bn2bin.3 BN_bn2mpi.3 -MLINKS+= BN_bn2bin.3 BN_bn2nativepad.3 -MLINKS+= BN_generate_prime.3 BN_check_prime.3 +MLINKS+= BN_mod_mul_reciprocal.3 BN_div_recp.3 MLINKS+= BN_new.3 BN_clear.3 -MLINKS+= BN_set_bit.3 BN_clear_bit.3 MLINKS+= BN_new.3 BN_clear_free.3 -MLINKS+= BN_bn2bin.3 BN_dec2bn.3 -MLINKS+= BN_add.3 BN_div.3 -MLINKS+= BN_mod_mul_reciprocal.3 BN_div_recp.3 -MLINKS+= BN_add_word.3 BN_div_word.3 -MLINKS+= BN_copy.3 BN_dup.3 -MLINKS+= BN_add.3 BN_exp.3 MLINKS+= BN_new.3 BN_free.3 -MLINKS+= BN_mod_mul_montgomery.3 BN_from_montgomery.3 -MLINKS+= BN_add.3 BN_gcd.3 -MLINKS+= BN_generate_prime.3 BN_generate_prime_ex.3 -MLINKS+= BN_generate_prime.3 BN_generate_prime_ex2.3 -MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_192.3 -MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_224.3 -MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_256.3 -MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_384.3 -MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_521.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc2409_prime_1024.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc2409_prime_768.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_1536.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_2048.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_3072.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_4096.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_6144.3 -MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_8192.3 -MLINKS+= BN_zero.3 BN_get_word.3 -MLINKS+= BN_bn2bin.3 BN_hex2bn.3 -MLINKS+= BN_set_bit.3 BN_is_bit_set.3 -MLINKS+= BN_cmp.3 BN_is_odd.3 -MLINKS+= BN_cmp.3 BN_is_one.3 -MLINKS+= BN_generate_prime.3 BN_is_prime.3 -MLINKS+= BN_generate_prime.3 BN_is_prime_ex.3 -MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest.3 -MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest_ex.3 -MLINKS+= BN_cmp.3 BN_is_word.3 -MLINKS+= BN_cmp.3 BN_is_zero.3 -MLINKS+= BN_bn2bin.3 BN_lebin2bn.3 -MLINKS+= BN_set_bit.3 BN_lshift.3 -MLINKS+= BN_set_bit.3 BN_lshift1.3 -MLINKS+= BN_set_bit.3 BN_mask_bits.3 -MLINKS+= BN_add.3 BN_mod.3 -MLINKS+= BN_add.3 BN_mod_add.3 -MLINKS+= BN_add.3 BN_mod_exp.3 -MLINKS+= BN_mod_exp_mont.3 BN_mod_exp_mont_consttime.3 -MLINKS+= BN_mod_exp_mont.3 BN_mod_exp_mont_consttime_x2.3 -MLINKS+= BN_add.3 BN_mod_mul.3 -MLINKS+= BN_add.3 BN_mod_sqr.3 -MLINKS+= BN_add.3 BN_mod_sqrt.3 -MLINKS+= BN_add.3 BN_mod_sub.3 -MLINKS+= BN_add_word.3 BN_mod_word.3 -MLINKS+= BN_bn2bin.3 BN_mpi2bn.3 -MLINKS+= BN_add.3 BN_mul.3 -MLINKS+= BN_add_word.3 BN_mul_word.3 -MLINKS+= BN_bn2bin.3 BN_native2bn.3 -MLINKS+= BN_add.3 BN_nnmod.3 +MLINKS+= BN_new.3 BN_secure_new.3 MLINKS+= BN_num_bytes.3 BN_num_bits.3 MLINKS+= BN_num_bytes.3 BN_num_bits_word.3 -MLINKS+= BN_zero.3 BN_one.3 -MLINKS+= BN_bn2bin.3 BN_print.3 -MLINKS+= BN_bn2bin.3 BN_print_fp.3 MLINKS+= BN_rand.3 BN_priv_rand.3 MLINKS+= BN_rand.3 BN_priv_rand_ex.3 MLINKS+= BN_rand.3 BN_priv_rand_range.3 @@ -1129,39 +1211,51 @@ MLINKS+= BN_rand.3 BN_pseudo_rand_range.3 MLINKS+= BN_rand.3 BN_rand_ex.3 MLINKS+= BN_rand.3 BN_rand_range.3 MLINKS+= BN_rand.3 BN_rand_range_ex.3 +MLINKS+= BN_set_bit.3 BN_clear_bit.3 +MLINKS+= BN_set_bit.3 BN_is_bit_set.3 +MLINKS+= BN_set_bit.3 BN_lshift.3 +MLINKS+= BN_set_bit.3 BN_lshift1.3 +MLINKS+= BN_set_bit.3 BN_mask_bits.3 MLINKS+= BN_set_bit.3 BN_rshift.3 MLINKS+= BN_set_bit.3 BN_rshift1.3 -MLINKS+= BN_new.3 BN_secure_new.3 +MLINKS+= BN_zero.3 BN_get_word.3 +MLINKS+= BN_zero.3 BN_one.3 MLINKS+= BN_zero.3 BN_set_word.3 -MLINKS+= BN_add.3 BN_sqr.3 -MLINKS+= BN_add.3 BN_sub.3 -MLINKS+= BN_add_word.3 BN_sub_word.3 -MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_ENUMERATED.3 -MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_INTEGER.3 -MLINKS+= BN_mod_mul_montgomery.3 BN_to_montgomery.3 -MLINKS+= BN_cmp.3 BN_ucmp.3 MLINKS+= BN_zero.3 BN_value_one.3 -MLINKS+= BN_copy.3 BN_with_flags.3 MLINKS+= BUF_MEM_new.3 BUF_MEM_free.3 MLINKS+= BUF_MEM_new.3 BUF_MEM_grow.3 MLINKS+= BUF_MEM_new.3 BUF_MEM_grow_clean.3 MLINKS+= BUF_MEM_new.3 BUF_MEM_new_ex.3 MLINKS+= BUF_MEM_new.3 BUF_reverse.3 -MLINKS+= X509_dup.3 CERTIFICATEPOLICIES_free.3 -MLINKS+= X509_dup.3 CERTIFICATEPOLICIES_new.3 +MLINKS+= CMAC_CTX.3 CMAC_CTX_cleanup.3 +MLINKS+= CMAC_CTX.3 CMAC_CTX_copy.3 +MLINKS+= CMAC_CTX.3 CMAC_CTX_free.3 +MLINKS+= CMAC_CTX.3 CMAC_CTX_get0_cipher_ctx.3 +MLINKS+= CMAC_CTX.3 CMAC_CTX_new.3 +MLINKS+= CMAC_CTX.3 CMAC_Final.3 +MLINKS+= CMAC_CTX.3 CMAC_Init.3 +MLINKS+= CMAC_CTX.3 CMAC_Update.3 +MLINKS+= CMAC_CTX.3 CMAC_resume.3 +MLINKS+= CMS_EncryptedData_decrypt.3 CMS_EnvelopedData_decrypt.3 +MLINKS+= CMS_EncryptedData_encrypt.3 CMS_EncryptedData_encrypt_ex.3 MLINKS+= CMS_EnvelopedData_create.3 CMS_AuthEnvelopedData_create.3 MLINKS+= CMS_EnvelopedData_create.3 CMS_AuthEnvelopedData_create_ex.3 -MLINKS+= X509_dup.3 CMS_ContentInfo_free.3 -MLINKS+= X509_dup.3 CMS_ContentInfo_new.3 -MLINKS+= X509_dup.3 CMS_ContentInfo_new_ex.3 -MLINKS+= X509_dup.3 CMS_ContentInfo_print_ctx.3 -MLINKS+= CMS_EncryptedData_encrypt.3 CMS_EncryptedData_encrypt_ex.3 MLINKS+= CMS_EnvelopedData_create.3 CMS_EnvelopedData_create_ex.3 -MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_create0.3 -MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_create0_ex.3 -MLINKS+= X509_dup.3 CMS_ReceiptRequest_free.3 -MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_get0_values.3 -MLINKS+= X509_dup.3 CMS_ReceiptRequest_new.3 +MLINKS+= CMS_add0_cert.3 CMS_add0_crl.3 +MLINKS+= CMS_add0_cert.3 CMS_add1_cert.3 +MLINKS+= CMS_add0_cert.3 CMS_add1_crl.3 +MLINKS+= CMS_add0_cert.3 CMS_get1_certs.3 +MLINKS+= CMS_add0_cert.3 CMS_get1_crls.3 +MLINKS+= CMS_add1_recipient_cert.3 CMS_add0_recipient_key.3 +MLINKS+= CMS_add1_recipient_cert.3 CMS_add1_recipient.3 +MLINKS+= CMS_add1_signer.3 CMS_SignerInfo_sign.3 +MLINKS+= CMS_data_create.3 CMS_data_create_ex.3 +MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_password.3 +MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_pkey.3 +MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_pkey_and_peer.3 +MLINKS+= CMS_digest_create.3 CMS_digest_create_ex.3 +MLINKS+= CMS_encrypt.3 CMS_encrypt_ex.3 +MLINKS+= CMS_final.3 CMS_final_digest.3 MLINKS+= CMS_get0_RecipientInfos.3 CMS_RecipientInfo_decrypt.3 MLINKS+= CMS_get0_RecipientInfos.3 CMS_RecipientInfo_encrypt.3 MLINKS+= CMS_get0_RecipientInfos.3 CMS_RecipientInfo_kari_set0_pkey.3 @@ -1177,80 +1271,82 @@ MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_cert_cmp.3 MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_get0_signature.3 MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_get0_signer_id.3 MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_set1_signer_cert.3 -MLINKS+= CMS_add1_signer.3 CMS_SignerInfo_sign.3 -MLINKS+= CMS_add0_cert.3 CMS_add0_crl.3 -MLINKS+= CMS_add1_recipient_cert.3 CMS_add0_recipient_key.3 -MLINKS+= CMS_get1_ReceiptRequest.3 CMS_add1_ReceiptRequest.3 -MLINKS+= CMS_add0_cert.3 CMS_add1_cert.3 -MLINKS+= CMS_add0_cert.3 CMS_add1_crl.3 -MLINKS+= CMS_add1_recipient_cert.3 CMS_add1_recipient.3 -MLINKS+= CMS_data_create.3 CMS_data_create_ex.3 -MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_password.3 -MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_pkey.3 -MLINKS+= CMS_decrypt.3 CMS_decrypt_set1_pkey_and_peer.3 -MLINKS+= CMS_digest_create.3 CMS_digest_create_ex.3 -MLINKS+= CMS_encrypt.3 CMS_encrypt_ex.3 MLINKS+= CMS_get0_type.3 CMS_get0_content.3 MLINKS+= CMS_get0_type.3 CMS_get0_eContentType.3 -MLINKS+= CMS_verify.3 CMS_get0_signers.3 -MLINKS+= CMS_add0_cert.3 CMS_get1_certs.3 -MLINKS+= CMS_add0_cert.3 CMS_get1_crls.3 MLINKS+= CMS_get0_type.3 CMS_set1_eContentType.3 +MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_create0.3 +MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_create0_ex.3 +MLINKS+= CMS_get1_ReceiptRequest.3 CMS_ReceiptRequest_get0_values.3 +MLINKS+= CMS_get1_ReceiptRequest.3 CMS_add1_ReceiptRequest.3 MLINKS+= CMS_sign.3 CMS_sign_ex.3 -MLINKS+= CONF_modules_load_file.3 CONF_get1_default_config_file.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_add1_attr.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_add1_attr_by_NID.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_add1_attr_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_add1_attr_by_txt.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_delete_attr.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_get0_data_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_get_attr_by_NID.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_get_attr_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_signed_get_attr_count.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_add1_attr.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_add1_attr_by_NID.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_add1_attr_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_add1_attr_by_txt.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_delete_attr.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_get0_data_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_get_attr.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_get_attr_by_NID.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_get_attr_by_OBJ.3 +MLINKS+= CMS_signed_get_attr.3 CMS_unsigned_get_attr_count.3 +MLINKS+= CMS_verify.3 CMS_SignedData_verify.3 +MLINKS+= CMS_verify.3 CMS_get0_signers.3 +MLINKS+= COMP_CTX_new.3 BIO_f_brotli.3 +MLINKS+= COMP_CTX_new.3 BIO_f_zlib.3 +MLINKS+= COMP_CTX_new.3 BIO_f_zstd.3 +MLINKS+= COMP_CTX_new.3 COMP_CTX_free.3 +MLINKS+= COMP_CTX_new.3 COMP_CTX_get_method.3 +MLINKS+= COMP_CTX_new.3 COMP_CTX_get_type.3 +MLINKS+= COMP_CTX_new.3 COMP_brotli.3 +MLINKS+= COMP_CTX_new.3 COMP_brotli_oneshot.3 +MLINKS+= COMP_CTX_new.3 COMP_compress_block.3 +MLINKS+= COMP_CTX_new.3 COMP_expand_block.3 +MLINKS+= COMP_CTX_new.3 COMP_get_name.3 +MLINKS+= COMP_CTX_new.3 COMP_get_type.3 +MLINKS+= COMP_CTX_new.3 COMP_zlib.3 +MLINKS+= COMP_CTX_new.3 COMP_zlib_oneshot.3 +MLINKS+= COMP_CTX_new.3 COMP_zstd.3 +MLINKS+= COMP_CTX_new.3 COMP_zstd_oneshot.3 MLINKS+= CONF_modules_free.3 CONF_modules_finish.3 +MLINKS+= CONF_modules_free.3 CONF_modules_unload.3 +MLINKS+= CONF_modules_load_file.3 CONF_get1_default_config_file.3 MLINKS+= CONF_modules_load_file.3 CONF_modules_load.3 MLINKS+= CONF_modules_load_file.3 CONF_modules_load_file_ex.3 -MLINKS+= CONF_modules_free.3 CONF_modules_unload.3 -MLINKS+= X509_dup.3 CRL_DIST_POINTS_free.3 -MLINKS+= X509_dup.3 CRL_DIST_POINTS_new.3 -MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_dup.3 -MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_free.3 -MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_new.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_lock_free.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_lock_new.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_read_lock.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_unlock.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_write_lock.3 -MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_alloc_ex_data.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_add.3 +MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_add64.3 +MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_and.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_load.3 +MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_load_int.3 MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_or.3 -MLINKS+= OPENSSL_malloc.3 CRYPTO_clear_free.3 -MLINKS+= OPENSSL_malloc.3 CRYPTO_clear_realloc.3 -MLINKS+= OPENSSL_malloc.3 CRYPTO_free.3 +MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_store.3 +MLINKS+= CRYPTO_THREAD_run_once.3 OSSL_THREAD_SUPPORT_FLAG_DEFAULT_SPAWN.3 +MLINKS+= CRYPTO_THREAD_run_once.3 OSSL_THREAD_SUPPORT_FLAG_THREAD_POOL.3 +MLINKS+= CRYPTO_THREAD_run_once.3 OSSL_get_max_threads.3 +MLINKS+= CRYPTO_THREAD_run_once.3 OSSL_get_thread_support_flags.3 +MLINKS+= CRYPTO_THREAD_run_once.3 OSSL_set_max_threads.3 +MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_dup.3 +MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_free.3 *** 5597 LINES SKIPPED *** From nobody Mon Sep 8 03:01:25 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cKsD55mGvz67DT6; Mon, 08 Sep 2025 03:01:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cKsD54t6pz4571; Mon, 08 Sep 2025 03:01:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757300485; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zxC9unXjBq9Xl1Kf1r29Z/bx7O1KvSdLVsFKjAPA7Q=; b=qj2kjp8bNq0J4jl3jKB6WlHzRpNboDQtKMpwljM7Gx/4p6uoOS9dqApjeUiHKUfDZE1UmW Re7EfBaCNwgx4POgp2hg3P29utq5eiwcaoxoW9t8DbccaUfpwTH+TvW2JYe8zsACYLWxgj kh+C5gLo/wWRPUgP0bYk/fiiaBdpHQkHLHyHYEwYN0FiIpPLCxsaawNFCsDpU29zaZ6c0Y 4acRmhflfLlVwv1sXYn9kD2qrdijGRTWZpyYjYqjGJLnMtkVsENm0oMFOUFV0F6hYJ/8cF I5YkTyTX67KAuHLjmYLDTL/TyxFWxcxgcpwo71YxJlvDaTszgbh28X5TYeWnrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757300485; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zxC9unXjBq9Xl1Kf1r29Z/bx7O1KvSdLVsFKjAPA7Q=; b=a3OtQ9X1a9acm/Ut9rxPKalV5rG8x+AlQe57Go/qwXfg78zH3xJyjV3t11r0Fy0btLHPXS E1RErpiBNdIhQPwBUAHyz9RnqpXIYgeR1lzFNTXyXlTpDFFPwLauQ3pdSGJ5iQAkoyi6wQ LI8pQNVy8xIb4SAy7vPgoGmZbC6MAnYcaV82ildbDvVO6U6jh4TZMS1RZSVc/B4JwsRaPt ikoDp/ZWl5HdfpLlZHEwW9eksbl/F5G391CJppSEroeuqw3ZlhEbVIVTZbxgTLFKVgU5+6 SqIkKZWMp2/OCrYINXvK92Kuqlr7yec6cJgi7O+I8ZLEdR6U7Zkn+0GWiAa9wA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757300485; a=rsa-sha256; cv=none; b=aSwpDQerxHatWiMswjM6tGTJgkZY270do8eTGP07vIJbcz0cnSDYUG5yDQr6LYT8yRrYU/ F7YTdpLIgZX84xn5gi6QyvpE9Q6tn+KWoW9uaAUwQCpdLpCyBu/g7u219q3QZJLjGbERHP WCGrMW+VFK2V58hzgejMYD1mrvYvOG+Fwh1YQaqgvG1/I0VlAXpzuziSdFkDo4ueh5P1B8 aB8yGeuoCNHu7T2xLK3CHNC6ktKCdrsUUmm7GQa0oW1mZ6O2bBKNCeJxqjeAMYvOhc4giR iXkfPNFS7eveN4ur8RYc6RTpYLH7rIhyeckFVvsfpZG4OwFHcKY8Bxy1Y2V8kw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cKsD54TnwzpW0; Mon, 08 Sep 2025 03:01:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58831P1a081207; Mon, 8 Sep 2025 03:01:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58831Png081192; Mon, 8 Sep 2025 03:01:25 GMT (envelope-from git) Date: Mon, 8 Sep 2025 03:01:25 GMT Message-Id: <202509080301.58831Png081192@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: fd9e09cb2ab0 - main - kern: replace several EBADF with EINVAL List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: fd9e09cb2ab07993e8dc783c802f273329e70bb8 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=fd9e09cb2ab07993e8dc783c802f273329e70bb8 commit fd9e09cb2ab07993e8dc783c802f273329e70bb8 Author: Konstantin Belousov AuthorDate: 2025-09-07 10:59:45 +0000 Commit: Konstantin Belousov CommitDate: 2025-09-08 03:01:05 +0000 kern: replace several EBADF with EINVAL EBADF semantic is that the passed fd is invalid, not that it is of wrong type. Using EBADF in these places in kern_event.c and sys_procdesc.c give bad examples to copy from. Note that places in kern_event.c that checks KQ_CLOSING and return EBADF are kept, since KQ_CLOSING is the transient state before the fd is finally closed and become eligible for EBADF. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D52410 --- sys/kern/kern_event.c | 2 +- sys/kern/sys_procdesc.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index 501adc151d44..b5360f3a1055 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -1903,7 +1903,7 @@ kqueue_acquire(struct file *fp, struct kqueue **kqp) kq = fp->f_data; if (fp->f_type != DTYPE_KQUEUE || kq == NULL) - return (EBADF); + return (EINVAL); *kqp = kq; KQ_LOCK(kq); if ((kq->kq_state & KQ_CLOSING) == KQ_CLOSING) { diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c index 11bd1b6f30e1..54b03fc82c90 100644 --- a/sys/kern/sys_procdesc.c +++ b/sys/kern/sys_procdesc.c @@ -129,7 +129,7 @@ procdesc_find(struct thread *td, int fd, const cap_rights_t *rightsp, if (error) return (error); if (fp->f_type != DTYPE_PROCDESC) { - error = EBADF; + error = EINVAL; goto out; } pd = fp->f_data; @@ -175,7 +175,7 @@ kern_pdgetpid(struct thread *td, int fd, const cap_rights_t *rightsp, if (error) return (error); if (fp->f_type != DTYPE_PROCDESC) { - error = EBADF; + error = EINVAL; goto out; } *pidp = procdesc_pid(fp); From nobody Mon Sep 8 12:52:11 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL6Kx62mzz66ZK9; Mon, 08 Sep 2025 12:52:21 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-qt1-x82c.google.com (mail-qt1-x82c.google.com [IPv6:2607:f8b0:4864:20::82c]) (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 4cL6Kx0nLwz41ww; Mon, 08 Sep 2025 12:52:21 +0000 (UTC) (envelope-from markjdb@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=bmyrl5fs; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=freebsd.org (policy=none); spf=pass (mx1.freebsd.org: domain of markjdb@gmail.com designates 2607:f8b0:4864:20::82c as permitted sender) smtp.mailfrom=markjdb@gmail.com Received: by mail-qt1-x82c.google.com with SMTP id d75a77b69052e-4b109c6b9fcso35844591cf.3; Mon, 08 Sep 2025 05:52:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1757335935; x=1757940735; darn=freebsd.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=sc+d0rO4Iyz5BYC61pQH9AAYpYoNKtgDcs4u/WiPNBc=; b=bmyrl5fsqh6ANY9ALcmwXZsv4wBTw1xhsfvE2cKlmEoLff6v36wAOo1aEyLbD2Ne5r hotHBgmaAzU/H52StsCujvHOIBFP6JnohQ2ezz7vaBvRrUNNMA8fidX31euN6sTza/5O LpVwN0PcIdxDl54tDgDp2Mm5cqVlGdDYmuVH1+P41TGLFTe+2IZpbHRgUCdVdmtZGcn1 8PqbqLk13GCJ1eUE5Za9jg3Et45adFKqZ9pSJ0vpwATjptJrinum2780wLXl5curWMeX AskUI4dHbRLGTBKW8WSwOOQSXifLNz9JMu7qzbhcNgfa9W8zDFxTJckfVN9M6xOZoH9M QGvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757335935; x=1757940735; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sc+d0rO4Iyz5BYC61pQH9AAYpYoNKtgDcs4u/WiPNBc=; b=Qfb3/5H7ZlaQfvuaO7DzDM2F7H8NZNjY4XpM18Q60cog082ST9TDWa/IF7T2lHKk/6 WdW18glQRZopE9QgMOZRaHkkcEF3D6O0wSmjOeu7X2IIt51HWGDM2guCLxY0EjmSvrRI 9hmzkNU2y+Pi2N2/7fDiGVWlMyAceuGjefQpiEmMRbEW7O2Ry6G5eg3XzUgd5NQZMyeR 1L7UBb/l2Fulj4NmoBOtvdV37V/TM6THEmOQGvtEjFIIsBQcl+xBZdHkqBXaA2w2gsIy wOj8oOb/TlbZMcz/3zZT7Xl4ULQWW7uENBJwHjgjrgZIfPiiU/9+bnemY1Sb9agAjzVG 3vHw== X-Forwarded-Encrypted: i=1; AJvYcCU0cbWvjgsF8joGdTCItlfeHEFf0Q/SQm7MnUMZg/yhv1i/3cguSWKiCBy+DSdqUtsj8cGeUWZWBV093URku80S0YugYt8=@freebsd.org, AJvYcCU7A/gkGC9yV4afMvksYzlzicv71Y9hlHNbuBfHlf8LgaM1A3dHqO2ApMlYCmxDAfS3vFl65T8jIRBjcwlhxus=@freebsd.org, AJvYcCUoXS2RUREJIiY5ml2RU4YD0j0/w8LsyDVeBEMejCTJDTg5KI9UVJdoFdzQHjyjtY0ajPxHgLAMLnaGUATjSxXAGIu5@freebsd.org, AJvYcCXYHI6EvxsFYhz+h71Arp/j6L5JpXlEa4AeAZEan1FsClvNkVHu9B0PbqtV8gVICSM91HCjEZjt@freebsd.org X-Gm-Message-State: AOJu0Yzn0gDZ5MURiv0tF5VjvH/kJPEK0CZGtNUp4BKCyXUMx2heK7MJ bqQqEPziwBpctetbcMMy4E8XlHxT04nZwXcA4+C9Uq0Hqx506YpxAfSYtVNIsO0j X-Gm-Gg: ASbGncsG8cgtTmGRF6wkd79Y8p7Z+6KqEaawFiS9ivP8mPZYsgSlC8Lu1ldcRJ+8154 cjgspOX+KftDQxVDvqJCpaG8qvS2LVmO0JYG4OL1Xrw51rIvRQwkKG/sIb5k8tEMBBHWF0VLaZv oCOXnWtKI5QPcHU38VQhr/5gyfJiS89KU1Bbj+hc36BC4yaeJZstZbix9PqoBIVDJL2t5egcO/9 cZGIy72MDOFOzPVo2qRUlKJxOItaYOZTdg/GgC2w51+eiaWoC+kMNnq7nwT/4cneoBrhhcrOsBK X9m0rcaf3ZE9b6BMK9PKiDy0umt4WrREIh9r8iYZtLbZgt+RGud23Wbtxk2JW0l15f+ti03KZow EJsIuk++byRim3DMMN8l6knxP3S2NFQiYxJjd X-Google-Smtp-Source: AGHT+IHiHA4KEF0uIw/0qebkj/jeM0HGdn8Lb/ih90JdZq9FlmvXP2W02Ik4jNZXjVwyL2r/Nwxu3A== X-Received: by 2002:a05:622a:2307:b0:4b3:709d:1f14 with SMTP id d75a77b69052e-4b5f848d1bdmr66639581cf.69.1757335934523; Mon, 08 Sep 2025 05:52:14 -0700 (PDT) Received: from nuc (192-0-220-237.cpe.teksavvy.com. [192.0.220.237]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-4b48f77fd15sm102059951cf.38.2025.09.08.05.52.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Sep 2025 05:52:13 -0700 (PDT) Date: Mon, 8 Sep 2025 08:52:11 -0400 From: Mark Johnston To: Michael Tuexen Cc: "Bjoern A. Zeeb" , srcmgr@freebsd.org, "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: NOIP/NOINET/... for arm64 too? [was: Re: git: 1c23d8f9f398 - main - vtnet: improve checksum offloading] Message-ID: References: <202509041126.584BQBBt067763@gitrepo.freebsd.org> <23rq9r12-75nn-sqs8-06o7-p785s2q915o3@yvfgf.mnoonqbm.arg> <8A4EFC13-ABA3-471B-9726-5940E2B88DED@FreeBSD.org> <0p6ns5r7-ss8q-n81s-s83n-6n16o6pr37p2@yvfgf.mnoonqbm.arg> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-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: X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.60 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.997]; MID_RHS_NOT_FQDN(0.50)[]; FORGED_SENDER(0.30)[markj@freebsd.org,markjdb@gmail.com]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), DKIM not aligned (relaxed),none]; MIME_GOOD(-0.10)[text/plain]; FROM_HAS_DN(0.00)[]; TO_DN_EQ_ADDR_SOME(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ARC_NA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; MISSING_XM_UA(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::82c:from]; RCVD_COUNT_TWO(0.00)[2]; TO_DN_SOME(0.00)[]; FROM_NEQ_ENVFROM(0.00)[markj@freebsd.org,markjdb@gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; RCPT_COUNT_FIVE(0.00)[6]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; SUBJECT_HAS_QUESTION(0.00)[] X-Rspamd-Queue-Id: 4cL6Kx0nLwz41ww On Sat, Sep 06, 2025 at 02:59:25PM +0200, Michael Tuexen wrote: > > On 6. Sep 2025, at 10:31, Bjoern A. Zeeb wrote: > > > > On Sat, 6 Sep 2025, Michael Tuexen wrote: > > > >> OK, that is fixed in > >> https://cgit.FreeBSD.org/src/commit/?id=7c448f5aab8be6977d0860e608e7d497b495d28c > > > > Thanks! > > > >> Thanks again for reporting and I am sorry for breaking the NOIP (again). > >> BTW: Is there a reason we don't have the NOINET, NOINET6, and NOIP kernel > >> configs for arm64? > > > > I think initially we only added all the extra kernel configs 10-15 years > > ago to amd64 as that was the fastest way to build a universe (for a > > target). I am likely guilty for NOINET and VIMAGE and NOIP... > > initially generating them if I do not misremember. > > > > Adding them to a 2nd arch would increase full make universe build times but > > given a lot of people have started to do native builds on higher core arm64 > > machines I wonder if it would be time to add them there? > Does adding a kernel config also requires it to activate it in make universe? > arm64 is now tier one and I use arm64 platforms more often then amd64 for > development. I believe adding a new config to sys/arm64/conf will automatically cause it to be included in universe builds. > > I'll Cc: source manager and see how they feel about this... I don't see any particular problem with building the extra kernels on arm64 as well. It might be useful to build-test NOIP etc. configurations with "options FDT". But even if one is using arm64 for development, it's trivial to build the corresponding amd64 kernels when build-testing, just set TARGET. From nobody Mon Sep 8 13:27:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL76x0HKcz66bmm; Mon, 08 Sep 2025 13:27:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL76w6p4wz45CV; Mon, 08 Sep 2025 13:27:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757338073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tNYwhd6TMFqRVthdILcEPtnXfmBE03L5lflx0VL34Ew=; b=BWJrJLBLOAg9TA4TXXpjnc+1Uyie+bOT4trGG/MtCG5viCzQ7QWTOoljpcXm9S4npjOHUr u9NA6VznLCgSXIN3Y35ceMj8sjZLRJ36KKc5lDzoXvRQnvn4PytGhVTeoHBmvck91zrKwd bc0nzJFSF2Tfrj497BZeSrIoxsAb34VeAFDRi8JIZcAbXUGzqieSq7kHUiu9BRwu3fkSfk QG9Yr8pIMtb4fCY/FHuGQVI8dG2rJN/sODoHfCrcVCVzsSVL6N+e7pcEJV4PMWWUXeBqZf iK9ypIAApO+EZQcY0U8fjHmZWAMeJfZ4NAcx4m7YmfOTRKJDv8PNQVbhUtVE1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757338073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tNYwhd6TMFqRVthdILcEPtnXfmBE03L5lflx0VL34Ew=; b=vqKCqex1tzl7bFDrAC4HiUUI1/kCyyY/BheHUEuSmJ3/qrSWBdDH7wUcmj5+sffUVXrJry k0Nn0aO3p71JTftP8+Dvvo6q6LUqGjjXgY5Rj3Dbp5AkbZ4AcqWRMCOgXtzz7qBwKq2DWk ZCl/nkRF3f2AblVInNff8rt9mH3okl4ZMSTDsr3SLlRvEpTY+C5FxmN6Q6uaMvq4FWMnwD cifdxOh8NZyb8A/sGvbQZnvPTuoq3hcipaM41QtibDHJMamVlFSHVi+yppjD2n7T2Ll/2n AsNtPHuPbJguE4A2+Qed+CKV5yRwIhwwJZUzlL5ma8eshs2ygS9fXV6OhppSSw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757338073; a=rsa-sha256; cv=none; b=o3wNQcnfP76Mj+NiiivPflWMtyPSHYBkSFijtmCjhKIPyQgfIZUAHaXW85xdbPP9QTANKT ppPw+B92fnXL//AEFnX0To30fhJsWgCUAEVrDlw2QWYzAS3HJWyH6mMdYU9dfUAqd1ad2+ 1VpzbB+0i9sOK6xkeM6u4GQBJjy8ErVYwM1nIvNLnVaoKCdNwOmOL6qj5zBjItcCz6+VZX 3y1yxZEKTwuYR8T2gXOjdacWysELf7Hz8eUglOSi60Mu1WRHesU7Wn/NdjpUpPpXfOU8UT rA+fwLniHTt81E0EOJ+G+Y2z2GhsZpQXPyRaQXbXcl7qFA0yKbpXapuzyvnVPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL76w650wz16n5; Mon, 08 Sep 2025 13:27: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 588DRqfY050731; Mon, 8 Sep 2025 13:27:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588DRqj1050728; Mon, 8 Sep 2025 13:27:52 GMT (envelope-from git) Date: Mon, 8 Sep 2025 13:27:52 GMT Message-Id: <202509081327.588DRqj1050728@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: dc38cf116c82 - main - man: Fix usage message List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: dc38cf116c820df0be341ec5e359de0012b2d58a Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=dc38cf116c820df0be341ec5e359de0012b2d58a commit dc38cf116c820df0be341ec5e359de0012b2d58a Author: Dag-Erling Smørgrav AuthorDate: 2025-09-08 13:26:43 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-08 13:27:34 +0000 man: Fix usage message PR: 289245 Fixes: 14b61b2e9317 ("man: Add -l option") --- usr.bin/man/man.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/man/man.sh b/usr.bin/man/man.sh index 53961ae4997e..920223ce3c27 100755 --- a/usr.bin/man/man.sh +++ b/usr.bin/man/man.sh @@ -766,7 +766,7 @@ man_setup_locale() { # Display usage for the man utility. man_usage() { echo 'Usage:' - echo ' man [-adho] [-t | -w] [-M manpath] [-P pager] [-S mansect]' + echo ' man [-adhlo] [-t | -w] [-M manpath] [-P pager] [-S mansect]' echo ' [-m arch[:machine]] [-p [eprtv]] [mansect] page [...]' echo ' man -K | -f | -k expression [...] -- Search manual pages' From nobody Mon Sep 8 14:33:45 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL8Zx2r5yz66ggx; Mon, 08 Sep 2025 14:33:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL8Zx28jLz3G3v; Mon, 08 Sep 2025 14:33:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757342025; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fSK1+FOIq3XUZ9u9cd1WWkJwmMgMbY0YYVAcPAgmbFA=; b=DfE7Kb3aeqUbWjxp3iGqHZvWrH2KXT6dkvNANsVj7zIYPBy11ltFgWE5uEXXyNYPF2AuqZ gE0x6PXn8Tfdt5Di6fpO7ybfptj3lW/oL7ndC7StxjYnaajeZHKwLjxqcUmrJ4yOKXWThe cqOdoivyQexjwwUXHRbyNboLDhAfaer5LeFFdMaJxJZ808KZSJiq+HiDIxoGBl9+WWFUXO o73m1gKr16Vu/mdazEGtJpAHUFN9EXefKsN4QbROnP25gzgyAX6rFIBLWQ6Rbf5uL8JnEr wrkjawTkv90V7g9nxRvNxWjAawEyTR50eMtsGTwS1iK/tmbIItveNIgd7YGiBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757342025; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fSK1+FOIq3XUZ9u9cd1WWkJwmMgMbY0YYVAcPAgmbFA=; b=H4+hW3m8WphmcU4AEvj/a26HLeFETY3VWZP32LKMpBat9XAxwteBM03guCAGyB6uX0y4Fs 9aDMmHDObPNO/myRVJkdTBHZ1aTu93BDjczsLMj+Sbs3tmXCvqszuJB4zcDf/cq6NFWKrn QoReoxXj2ojbXi1vUFhFoVHec06EeMhUIrn5FP7eL8SEFMhNDl5pv4j/gCVCzObK+7RA5w ONaXAZxdqAOg29J/TA+u0x/UX7RDaZCEywzNoitni0mBNokRyjFuE/mrRjEvDXHZI9D+4o RMj7uxPvGlrrsKS+rr51xvi73x4CsnILjm0W17S1K5Gq1/PSCz3YPuxNzm+1LA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757342025; a=rsa-sha256; cv=none; b=lBwCM7+gLGKPL5y8M8n7S7QbwD+hELqvMQNuLy2wX6jDmkGLbqC9Apeaz9v4ELAuESgW9b ID3Wr6WSg/lBiJYMmEqlGuo8RNvzbnWq4hNTK7pDGiHLA6IStAvuRWYxjaOULEmZMiAfYn vY8Qgn6UKDPfcOYcSMQnN//brBX1tjCWkzDMLMR+7GluQyRUCGALVkkxfS16MevP8xBOAd yZ0mcXGkm8y4luiIypOzcFOPj9MZ/fHoJk0lI2v6uTVhnFzKY6Z0xe64iJxXpo84e3NG00 vRH40NV62fdZVl+77NTKINyAd1lbrMOZKm1vUSAtH8/4RMJb8v2h94P4qWUbeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL8Zx1hqtz195j; Mon, 08 Sep 2025 14:33: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 588EXjrk080936; Mon, 8 Sep 2025 14:33:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588EXj6s080933; Mon, 8 Sep 2025 14:33:45 GMT (envelope-from git) Date: Mon, 8 Sep 2025 14:33:45 GMT Message-Id: <202509081433.588EXj6s080933@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 3860afe99ec3 - main - Revert "LinuxKPI: pci: allocate entire pci_dev hiereachy up to root port on attach" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 3860afe99ec39b9942967941181f28f27f3fc548 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=3860afe99ec39b9942967941181f28f27f3fc548 commit 3860afe99ec39b9942967941181f28f27f3fc548 Author: Bjoern A. Zeeb AuthorDate: 2025-09-08 14:32:24 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-09-08 14:32:24 +0000 Revert "LinuxKPI: pci: allocate entire pci_dev hiereachy up to root port on attach" It turns out this breaks the nvidia-drm drviers. We'll try to rework things and put it back later. This reverts commit bbeeb585315645db20118ef349a4e3dc83b148cc. --- sys/compat/linuxkpi/common/src/linux_pci.c | 47 +++++------------------------- 1 file changed, 7 insertions(+), 40 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index d0f1d5e3f9c5..43fd6ad28ac4 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -342,7 +342,6 @@ lkpi_pci_dev_release(struct device *dev) static int lkpifill_pci_dev(device_t dev, struct pci_dev *pdev) { - struct pci_devinfo *dinfo; int error; error = kobject_init_and_add(&pdev->dev.kobj, &linux_dev_ktype, @@ -363,24 +362,15 @@ lkpifill_pci_dev(device_t dev, struct pci_dev *pdev) pdev->path_name = kasprintf(GFP_KERNEL, "%04d:%02d:%02d.%d", pci_get_domain(dev), pci_get_bus(dev), pci_get_slot(dev), pci_get_function(dev)); - pdev->bus = malloc(sizeof(*pdev->bus), M_DEVBUF, M_WAITOK | M_ZERO); + /* + * This should be the upstream bridge; pci_upstream_bridge() + * handles that case on demand as otherwise we'll shadow the + * entire PCI hierarchy. + */ + pdev->bus->self = pdev; pdev->bus->number = pci_get_bus(dev); pdev->bus->domain = pci_get_domain(dev); - - /* Check if we have reached the root to satisfy pci_is_root_bus() */ - dinfo = device_get_ivars(dev); - if (dinfo->cfg.pcie.pcie_location != 0 && - dinfo->cfg.pcie.pcie_type == PCIEM_TYPE_ROOT_PORT) { - pdev->bus->self = NULL; - } else { - /* - * This should be the upstream bridge; pci_upstream_bridge() - * handles that case on demand as otherwise we'll shadow the - * entire PCI hierarchy. - */ - pdev->bus->self = pdev; - } pdev->dev.bsddev = dev; pdev->dev.parent = &linux_root_device; pdev->dev.release = lkpi_pci_dev_release; @@ -405,7 +395,7 @@ lkpinew_pci_dev_release(struct device *dev) pdev = to_pci_dev(dev); if (pdev->root != NULL) pci_dev_put(pdev->root); - if (pdev->bus->self != pdev && pdev->bus->self != NULL) + if (pdev->bus->self != pdev) pci_dev_put(pdev->bus->self); free(pdev->bus, M_DEVBUF); if (pdev->msi_desc != NULL) { @@ -561,7 +551,6 @@ linux_pci_attach_device(device_t dev, struct pci_driver *pdrv, { struct resource_list_entry *rle; device_t parent; - struct pci_dev *pbus, *ppbus; uintptr_t rid; int error; bool isdrm; @@ -605,27 +594,6 @@ linux_pci_attach_device(device_t dev, struct pci_driver *pdrv, list_add(&pdev->links, &pci_devices); spin_unlock(&pci_lock); - /* - * Create the hierarchy now as we cannot on demand later. - * Take special care of DRM as there is a non-PCI device in the chain. - */ - pbus = pdev; - if (isdrm) { - pbus = lkpinew_pci_dev(parent); - if (pbus == NULL) { - error = ENXIO; - goto out_dma_init; - } - } - pcie_find_root_port(pbus); - if (isdrm) - pdev->root = pbus->root; - ppbus = pci_upstream_bridge(pbus); - while (ppbus != NULL && ppbus != pbus) { - pbus = ppbus; - ppbus = pci_upstream_bridge(pbus); - } - if (pdrv != NULL) { error = pdrv->probe(pdev, id); if (error) @@ -633,7 +601,6 @@ linux_pci_attach_device(device_t dev, struct pci_driver *pdrv, } return (0); -/* XXX the cleanup does not match the allocation up there. */ out_probe: free(pdev->bus, M_DEVBUF); spin_lock_destroy(&pdev->pcie_cap_lock); From nobody Mon Sep 8 15:26:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9lp3jpQz66kMC; Mon, 08 Sep 2025 15:26:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9lp34lWz3Mv2; Mon, 08 Sep 2025 15:26:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Hl5nHasOphNPq3NW7rfM578D+IKtJ08GUvIVm50gdM=; b=Jkhr3Ktg1KbWb77aoN2xhDvUpcDKur0o1I1/nF4NpuucmQCEgjJ1NVNIhELEUoxwjL3zfn 0GmidciToIkqkpb365q5gwOUNPoRdj7oUou4MShSoBnP2uEH0xdSosmdu0uhttc28x22hi Ypj986HxW3FYZ0Y2lJkYS49GULzd9BY11x36/G1WcjS8LbWLuqaMDch935dkucgXNP7Syc f8Af4eG3c2cLsHDAu4K8unqbGseSnncreBr+B+FshsQnfxiio+k62DyF1Pj1q35m94zcGv BFBFEyZ+PKoK8E3Qfm97FJqcEvG+Eh3zIwHzgw4ZK4gIkJPPArXXARBnfETQFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Hl5nHasOphNPq3NW7rfM578D+IKtJ08GUvIVm50gdM=; b=iQGgbGTp+TvvldulxRGVAn8lfSsKUspxN9qqOgTIJpv7LLtKQUr52lR9LSr9UIrvTUCmuj e572t8hFGFzoUTlYMo+U/8AdC46bZvjr1qFw1B30WTHmIdA7npoRlfuBEJTqlV6bTlCt3N g3YcGNY45poIzCvsjnQfK3K+SftHCkxUIIo1UMVGwgYlJzO/+zvxaZ60t110q4kNP8VzEU WAZw0nBGYZRRvmLT/i/WMXkgyUsIl68XsE5Yj33ZLL88LBX5dIyHEpFTrNE0PZwHN52x7A BX4fn8CLfHEsnxpTUfeQJ1Je9+22+44hGDQV5YuaR8NFERes8XALF4Ex/nNyhA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345190; a=rsa-sha256; cv=none; b=Sz6ZddBvSPYP0pHEMtLx/hM+OA2M8SbmEIC/sj07Uoooj92oO/ZOzHH3eA4RCFmBmlt465 pfBXUIi9kqOEsebLfhmwLSdxvl0DAMv5C6As7ueyKKtxbMlOdMv45t58QoIuEf+tWx+fWF brt8poRFlWZmijuWJuSddtCsxkdoqtKpSA51vru0XLB6masseMk01CCWHUqIPrAuj2bqaJ Ww8Vu2aRVUMA6JhCAyUfRqPUYISIctpvsVw5OhUJyE3zaGiXjXptGeDa+dv244HwNCEhSG W0BnJ+goSHikR4+JibGTob37mjzNtFaZO8LoflaohnJGLSi3V5CLsGrMlOjNJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9lp2PMJz19wJ; Mon, 08 Sep 2025 15:26: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 588FQUB9076497; Mon, 8 Sep 2025 15:26:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQULQ076494; Mon, 8 Sep 2025 15:26:30 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:30 GMT Message-Id: <202509081526.588FQULQ076494@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 228302e630dd - main - random: Make the min-entropy estimate configurable List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 228302e630dd95586fc22b29b025b8a98b593740 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=228302e630dd95586fc22b29b025b8a98b593740 commit 228302e630dd95586fc22b29b025b8a98b593740 Author: Mark Johnston AuthorDate: 2025-09-08 14:40:42 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random: Make the min-entropy estimate configurable Right now the cutoff values for the RCT and APT tests are computed with a fixed min-entropy estimate of 1. In preparation for permitting alternative estimates for "pure" sources (i.e., hardware noise sources), extend the code to handle alternative estimates of an integer number of bits. For the RCT test, the cutoff is simply the formula from section 4.4.1 of NIST SP 800-90B. For the APT test, I used Excel to compute a lookup table using the formula provided in section 4.4.2. Reviewed by: cem MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52228 --- sys/dev/random/random_harvestq.c | 52 ++++++++++++++++++++++++++++++++-------- 1 file changed, 42 insertions(+), 10 deletions(-) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index 84ec174bd08e..20727471f9c7 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -464,7 +464,7 @@ SYSCTL_BOOL(_kern_random, OID_AUTO, nist_healthtest_enabled, "Enable NIST SP 800-90B health tests for noise sources"); static void -random_healthtest_init(enum random_entropy_source source) +random_healthtest_init(enum random_entropy_source source, int min_entropy) { struct health_test_softc *ht; @@ -485,20 +485,52 @@ random_healthtest_init(enum random_entropy_source source) } /* - * Set cutoff values for the two tests, assuming that each sample has - * min-entropy of 1 bit and allowing for an error rate of 1 in 2^{34}. - * With a sample rate of RANDOM_KTHREAD_HZ, we expect to see an false - * positive once in ~54.5 years. + * Set cutoff values for the two tests, given a min-entropy estimate for + * the source and allowing for an error rate of 1 in 2^{34}. With a + * min-entropy estimate of 1 bit and a sample rate of RANDOM_KTHREAD_HZ, + * we expect to see an false positive once in ~54.5 years. * * The RCT limit comes from the formula in section 4.4.1. * - * The APT cutoff is calculated using the formula in section 4.4.2 + * The APT cutoffs are calculated using the formula in section 4.4.2 * footnote 10 with the number of Bernoulli trials changed from W to * W-1, since the test as written counts the number of samples equal to - * the first sample in the window, and thus tests W-1 samples. + * the first sample in the window, and thus tests W-1 samples. We + * provide cutoffs for estimates up to sizeof(uint32_t)*HARVESTSIZE*8 + * bits. */ - ht->ht_rct_limit = 35; - ht->ht_apt_cutoff = 330; + const int apt_cutoffs[] = { + [1] = 329, + [2] = 195, + [3] = 118, + [4] = 73, + [5] = 48, + [6] = 33, + [7] = 23, + [8] = 17, + [9] = 13, + [10] = 11, + [11] = 9, + [12] = 8, + [13] = 7, + [14] = 6, + [15] = 5, + [16] = 5, + [17 ... 19] = 4, + [20 ... 25] = 3, + [26 ... 42] = 2, + [43 ... 64] = 1, + }; + const int error_rate = 34; + + if (min_entropy == 0) + min_entropy = 1; + else if (min_entropy < 0 || min_entropy >= nitems(apt_cutoffs)) { + panic("invalid min_entropy %d for %s", min_entropy, + random_source_descr[source]); + } + ht->ht_rct_limit = 1 + howmany(error_rate, min_entropy); + ht->ht_apt_cutoff = apt_cutoffs[min_entropy]; } static int @@ -653,7 +685,7 @@ random_harvestq_init(void *unused __unused) harvest_context.hc_active_buf = 0; for (int i = 0; i < ENTROPYSOURCE; i++) - random_healthtest_init(i); + random_healthtest_init(i, 0); } SYSINIT(random_device_h_init, SI_SUB_RANDOM, SI_ORDER_THIRD, random_harvestq_init, NULL); From nobody Mon Sep 8 15:26:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9lq4LXvz66kZy; Mon, 08 Sep 2025 15:26:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9lq2pwcz3NPL; Mon, 08 Sep 2025 15:26:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0t55o39pAO/zS4rsKrBkylXwtZtwMskMrtnxjrb8cdc=; b=WGZwMB65QUjX3Uovy1YwPHtqPfVubFIjmgqwKo+7r4bKkwNmwlXT3kZN9bjBYS5JWbsQ5D dk+xVI0s5fh6DfVvFM94odUB3DmV2Y5JXOLBcwKB2z51l58A8Iz4SiYhdWDTY9Fk4x4y1s hLK0QvJ5PGI2RQLyh5UQTMk+/Jtpvpfg8oHTx3q9rv/vx8Ie+Cjx3zDRraSP5rm84FN0eW mOcZwzS1AiGBBJ4IaG7qyKdG5WhbA5IRHBAo0ET8d/fyi7Pe0EmszXH2EUr2kff7a00E0S 2w+woHE4dy1OLtWUgXKO3h69qX4+U+hDaIphuDhVO/N0y/hIMAJ80XwJzH2yNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0t55o39pAO/zS4rsKrBkylXwtZtwMskMrtnxjrb8cdc=; b=uuEAr7Nx7lxmX4S6/TPI20N7RcnWoCg3wkkptI8HeBXSXDeKFLNn8pNAtwBlcMwz5mU+QW ymB4fgzUHVc5WlaUC1SpvD6zj7oC0eJQs3Asr6Md/N/r8KkMtEzuI+alC+uis0cEazzes0 mwI0mtui//mhqM1LBoPAFUbu6pyB/oXkOHYXgiBbM9Nuqmu8818M0Jf5g1vm48IehE7Ejn H5dUvvYVpuxHpeHzMKdDl1eaUglbtm/S/knthj5X7R2HIzkWXpY13w3waIupbZfPLTeOdt x1n+8jxxerevaYQUousHBKRxTeRWBvRVvS+PlkAzlk5R/BFC8GeJa36kF6oMQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345191; a=rsa-sha256; cv=none; b=GezmPjDD3hnjP4socd98yxpr0BY/jS/SQ36VEJNS1hwWjWB1qwlyYkL3UaIyQuqV0ZYBXR 6yKfZ0oz69ChIm4pz6rBklDozvBvQfA2voAqhP50kLYJc1HiHQMhgPisxa+dSmtZghOgDY HtANSFEtpOMNs3ZgCrdeB7QKI1FptEvlVLex57tWFcP3SZJMEYx536sNi6TCNuvz+yhQEs gkYZ/W9J4jPZ+elOn2owQF5FW7PSnDc0FScZz2kherJt2J2+9E+n2TtA32BtCpWT/1d7qB /0e4trPWyHGcSPAL7Jyg50D4g0nvKH1w1xyb4F4H/Y13XDEYksnwBsnuf56R+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9lq2QVZz19f0; Mon, 08 Sep 2025 15:26:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 588FQVnF076532; Mon, 8 Sep 2025 15:26:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQVjg076529; Mon, 8 Sep 2025 15:26:31 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:31 GMT Message-Id: <202509081526.588FQVjg076529@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 8635f8697763 - main - random: Make the entropy source registration interface more uniform List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 8635f86977638eed966ec59cd319521fffb4df70 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=8635f86977638eed966ec59cd319521fffb4df70 commit 8635f86977638eed966ec59cd319521fffb4df70 Author: Mark Johnston AuthorDate: 2025-09-08 14:41:47 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random: Make the entropy source registration interface more uniform Most pure sources work under a "pull" model wherein a dedicated thread polls the source at regular intervals (every 100ms). A couple of sources, however, will instead call random_harvest_direct() to provide entropy samples. Such sources were not calling random_source_register() and thus weren't in the global random source list. Modify "push" sources to use random_source_register() like other sources do. Such sources omit an implementation of rs_read and are thus skipped by the above-mentioned thread. This makes it easier to allow pure sources to provide a min-entropy estimate in a uniform way. Reviewed by: cem MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52229 --- sys/dev/random/random_harvestq.c | 29 ++++++++++------------------- sys/dev/random/randomdev.h | 2 ++ sys/dev/tpm/tpm20.c | 13 ++++++++++--- sys/dev/vmgenc/vmgenc_acpi.c | 8 +++++++- sys/sys/random.h | 3 --- 5 files changed, 29 insertions(+), 26 deletions(-) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index 20727471f9c7..eb3808d692bb 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -278,8 +278,15 @@ random_sources_feed(void) epoch_enter_preempt(rs_epoch, &et); CK_LIST_FOREACH(rrs, &source_list, rrs_entries) { for (i = 0; i < npools; i++) { + if (rrs->rrs_source->rs_read == NULL) { + /* Source pushes entropy asynchronously. */ + continue; + } n = rrs->rrs_source->rs_read(entropy, sizeof(entropy)); - KASSERT((n <= sizeof(entropy)), ("%s: rs_read returned too much data (%u > %zu)", __func__, n, sizeof(entropy))); + KASSERT((n <= sizeof(entropy)), + ("%s: rs_read returned too much data (%u > %zu)", + __func__, n, sizeof(entropy))); + /* * Sometimes the HW entropy source doesn't have anything * ready for us. This isn't necessarily untrustworthy. @@ -866,20 +873,6 @@ random_harvest_direct_(const void *entropy, u_int size, enum random_entropy_sour random_harvestq_fast_process_event(&event); } -void -random_harvest_register_source(enum random_entropy_source source) -{ - - hc_source_mask |= (1 << source); -} - -void -random_harvest_deregister_source(enum random_entropy_source source) -{ - - hc_source_mask &= ~(1 << source); -} - void random_source_register(const struct random_source *rsource) { @@ -890,10 +883,9 @@ random_source_register(const struct random_source *rsource) rrs = malloc(sizeof(*rrs), M_ENTROPY, M_WAITOK); rrs->rrs_source = rsource; - random_harvest_register_source(rsource->rs_source); - printf("random: registering fast source %s\n", rsource->rs_ident); + hc_source_mask |= (1 << rsource->rs_source); RANDOM_HARVEST_LOCK(); CK_LIST_INSERT_HEAD(&source_list, rrs, rrs_entries); RANDOM_HARVEST_UNLOCK(); @@ -906,8 +898,7 @@ random_source_deregister(const struct random_source *rsource) KASSERT(rsource != NULL, ("invalid input to %s", __func__)); - random_harvest_deregister_source(rsource->rs_source); - + hc_source_mask &= ~(1 << rsource->rs_source); RANDOM_HARVEST_LOCK(); CK_LIST_FOREACH(rrs, &source_list, rrs_entries) if (rrs->rrs_source == rsource) { diff --git a/sys/dev/random/randomdev.h b/sys/dev/random/randomdev.h index 6d742447ea8b..0fa92f8c9575 100644 --- a/sys/dev/random/randomdev.h +++ b/sys/dev/random/randomdev.h @@ -52,7 +52,9 @@ random_check_uint_##name(SYSCTL_HANDLER_ARGS) \ } #endif /* SYSCTL_DECL */ +#ifdef MALLOC_DECLARE MALLOC_DECLARE(M_ENTROPY); +#endif extern bool random_bypass_before_seeding; extern bool read_random_bypassed_before_seeding; diff --git a/sys/dev/tpm/tpm20.c b/sys/dev/tpm/tpm20.c index 876dd0bcc40d..067e7ccae8f9 100644 --- a/sys/dev/tpm/tpm20.c +++ b/sys/dev/tpm/tpm20.c @@ -25,8 +25,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include #include +#include #include "tpm20.h" @@ -184,6 +184,13 @@ tpm20_ioctl(struct cdev *dev, u_long cmd, caddr_t data, return (ENOTTY); } +#ifdef TPM_HARVEST +static const struct random_source random_tpm = { + .rs_ident = "TPM", + .rs_source = RANDOM_PURE_TPM, +}; +#endif + int tpm20_init(struct tpm_sc *sc) { @@ -206,7 +213,7 @@ tpm20_init(struct tpm_sc *sc) tpm20_release(sc); #ifdef TPM_HARVEST - random_harvest_register_source(RANDOM_PURE_TPM); + random_source_register(&random_tpm); TIMEOUT_TASK_INIT(taskqueue_thread, &sc->harvest_task, 0, tpm20_harvest, sc); taskqueue_enqueue_timeout(taskqueue_thread, &sc->harvest_task, 0); @@ -223,7 +230,7 @@ tpm20_release(struct tpm_sc *sc) #ifdef TPM_HARVEST if (device_is_attached(sc->dev)) taskqueue_drain_timeout(taskqueue_thread, &sc->harvest_task); - random_harvest_deregister_source(RANDOM_PURE_TPM); + random_source_deregister(&random_tpm); #endif if (sc->buf != NULL) diff --git a/sys/dev/vmgenc/vmgenc_acpi.c b/sys/dev/vmgenc/vmgenc_acpi.c index 2ad8929dfd34..18519a8e4f22 100644 --- a/sys/dev/vmgenc/vmgenc_acpi.c +++ b/sys/dev/vmgenc/vmgenc_acpi.c @@ -56,6 +56,7 @@ #include #include +#include #include #include @@ -210,6 +211,11 @@ acpi_GetPackedUINT64(device_t dev, ACPI_HANDLE handle, char *path, } +static const struct random_source random_vmgenid = { + .rs_ident = "VM Generation ID", + .rs_source = RANDOM_PURE_VMGENID, +}; + static int vmgenc_attach(device_t dev) { @@ -234,7 +240,7 @@ vmgenc_attach(device_t dev) memcpy(sc->vmg_cache_guid, __DEVOLATILE(void *, sc->vmg_pguid), sizeof(sc->vmg_cache_guid)); - random_harvest_register_source(RANDOM_PURE_VMGENID); + random_source_register(&random_vmgenid); vmgenc_harvest_all(sc->vmg_cache_guid, sizeof(sc->vmg_cache_guid)); AcpiInstallNotifyHandler(h, ACPI_DEVICE_NOTIFY, vmgenc_notify, dev); diff --git a/sys/sys/random.h b/sys/sys/random.h index 5abf762cd200..2a68f0c99b6d 100644 --- a/sys/sys/random.h +++ b/sys/sys/random.h @@ -142,9 +142,6 @@ random_harvest_direct(const void *entropy, u_int size, enum random_entropy_sourc random_harvest_direct_(entropy, size, origin); } -void random_harvest_register_source(enum random_entropy_source); -void random_harvest_deregister_source(enum random_entropy_source); - #if defined(RANDOM_ENABLE_UMA) #define random_harvest_fast_uma(a, b, c) random_harvest_fast(a, b, c) #else /* !defined(RANDOM_ENABLE_UMA) */ From nobody Mon Sep 8 15:26:32 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9ls57V4z66kb1; Mon, 08 Sep 2025 15:26:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9lr4Ln8z3NFw; Mon, 08 Sep 2025 15:26:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K1DwNTaF98dwspslU4APugrf9pNP4U/mRKAx3KdMMLw=; b=jFkEkxVV68mP3wUX/wfet93K96foM9pzbdsCYzk34YrfD/tfwzGIv9l4MszXVNmMo72gOO 1swltSfDg23vLCJTPul8IaQqZQrK5Ssbz5wKMvkfc4WaM04X9SPmuKzzZzmxGPBmaYpP6U 7OWQHF0hNSe8bLpFP0ENIgsaasj7TwU0uVdyJbH9KrpPZ5bI1h7NpOxuQpcgxuX3D0SzB6 Y75ezsXIu1cdho9kEu9Xq7I3Oi6jrDtpfpy0GT5+85BXtqlOJHFms2yZ19/SV9ZlD/jz4f +jQZQ/JhhS3zhwFaJEZPKeNuTTRgJkEQwg7StwaXtFz0PyahsOLu8xEAIccmXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K1DwNTaF98dwspslU4APugrf9pNP4U/mRKAx3KdMMLw=; b=JEOGLzAXJuVZhCceU2dSzf0XUruLtSj/8MMib52WqH26yr9YpezYzEy/vPophDww3W+kNX gtKdLoWpLPczAsvHePVOQ49FpxNybIUkZRue36i0yQu5Q3yvjqDdiSaolnji3LeNoGHzSJ qDKCMEb26bzpmi1+0ev3IzzjNZsjnKESoOMG4+EIIoMAWUDcD4vVlfrhDrEht4LmKrLkgh 9ZxkSV7amEze+yWjT0drszx9QWXmsjY4JyHMKzsagNpSEPWvLWWPELz38WwIf02LidbaDX v0knyd225kNo+ObZOI1gq2auA74zh0YbrLxe5dR2B/Przf/aAmW7Zr4WCLvoYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345192; a=rsa-sha256; cv=none; b=ysmF/1Io0SxJ+vY7Q8X2hfsT1/Zm2ohHMQp9OHcJJglbhMNDSXnGopKaBnmrx1+8Ro5l3c mZDpKC9/tTXVrNNsqQPqYc+JTNkr/hIgBjNBw/NWhsaaG5G8437iV5aN3MpVm9SDNG4Goy P1MdPH8mNu+O9O73dKiwjTY1wz0+4w9L8tc+hTg+0pS2UTEHR7U5xuelfI4x6Lk1G6FAvE IkF9sz1pXn9uGbDI+LRL1MOvdzPxD/4gaftu6iGm97hW2ftSstrWN3Ig6zdBkgzvaWE9BB ES5PHCwh9PZ4wC39cwmaRO/O0c8voLVvHIHZVnGxApmdI/tmPSSRLFSxheh7kw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9lr3dQzz19f1; Mon, 08 Sep 2025 15:26:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 588FQWxP076567; Mon, 8 Sep 2025 15:26:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQWkI076564; Mon, 8 Sep 2025 15:26:32 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:32 GMT Message-Id: <202509081526.588FQWkI076564@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: c942d9e83ef1 - main - random: Fix synchronization of hc_source_mask List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: c942d9e83ef1122a670bb39736d55fe8f90af83e Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c942d9e83ef1122a670bb39736d55fe8f90af83e commit c942d9e83ef1122a670bb39736d55fe8f90af83e Author: Mark Johnston AuthorDate: 2025-09-08 14:42:14 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random: Fix synchronization of hc_source_mask This variable provides a mask of all registered entropy sources and is updated when drivers attach and detach (or by sysctl). However, nothing was synchronizing accesses to it. Use the harvest lock to provide mutual exclusion for updates, and use atomic_load_int() to mark unlocked reads. Reviewed by: cem MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52230 --- sys/dev/random/random_harvestq.c | 44 +++++++++++++++++++++++++++------------- 1 file changed, 30 insertions(+), 14 deletions(-) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index eb3808d692bb..6d1f9daf649b 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -103,8 +103,10 @@ static const char *random_source_descr[ENTROPYSOURCE]; volatile int random_kthread_control; -/* Allow the sysadmin to select the broad category of - * entropy types to harvest. +/* + * Allow the sysadmin to select the broad category of entropy types to harvest. + * + * Updates are synchronized by the harvest mutex. */ __read_frequently u_int hc_source_mask; @@ -572,9 +574,9 @@ random_check_uint_harvestmask(SYSCTL_HANDLER_ARGS) _RANDOM_HARVEST_ETHER_OFF | _RANDOM_HARVEST_UMA_OFF; int error; - u_int value, orig_value; + u_int value; - orig_value = value = hc_source_mask; + value = atomic_load_int(&hc_source_mask); error = sysctl_handle_int(oidp, &value, 0, req); if (error != 0 || req->newptr == NULL) return (error); @@ -585,12 +587,14 @@ random_check_uint_harvestmask(SYSCTL_HANDLER_ARGS) /* * Disallow userspace modification of pure entropy sources. */ + RANDOM_HARVEST_LOCK(); hc_source_mask = (value & ~user_immutable_mask) | - (orig_value & user_immutable_mask); + (hc_source_mask & user_immutable_mask); + RANDOM_HARVEST_UNLOCK(); return (0); } SYSCTL_PROC(_kern_random_harvest, OID_AUTO, mask, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, NULL, 0, + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, NULL, 0, random_check_uint_harvestmask, "IU", "Entropy harvesting mask"); @@ -602,9 +606,16 @@ random_print_harvestmask(SYSCTL_HANDLER_ARGS) error = sysctl_wire_old_buffer(req, 0); if (error == 0) { + u_int mask; + sbuf_new_for_sysctl(&sbuf, NULL, 128, req); - for (i = ENTROPYSOURCE - 1; i >= 0; i--) - sbuf_cat(&sbuf, (hc_source_mask & (1 << i)) ? "1" : "0"); + mask = atomic_load_int(&hc_source_mask); + for (i = ENTROPYSOURCE - 1; i >= 0; i--) { + bool present; + + present = (mask & (1u << i)) != 0; + sbuf_cat(&sbuf, present ? "1" : "0"); + } error = sbuf_finish(&sbuf); sbuf_delete(&sbuf); } @@ -658,16 +669,21 @@ random_print_harvestmask_symbolic(SYSCTL_HANDLER_ARGS) first = true; error = sysctl_wire_old_buffer(req, 0); if (error == 0) { + u_int mask; + sbuf_new_for_sysctl(&sbuf, NULL, 128, req); + mask = atomic_load_int(&hc_source_mask); for (i = ENTROPYSOURCE - 1; i >= 0; i--) { - if (i >= RANDOM_PURE_START && - (hc_source_mask & (1 << i)) == 0) + bool present; + + present = (mask & (1u << i)) != 0; + if (i >= RANDOM_PURE_START && !present) continue; if (!first) sbuf_cat(&sbuf, ","); - sbuf_cat(&sbuf, !(hc_source_mask & (1 << i)) ? "[" : ""); + sbuf_cat(&sbuf, !present ? "[" : ""); sbuf_cat(&sbuf, random_source_descr[i]); - sbuf_cat(&sbuf, !(hc_source_mask & (1 << i)) ? "]" : ""); + sbuf_cat(&sbuf, !present ? "]" : ""); first = false; } error = sbuf_finish(&sbuf); @@ -885,8 +901,8 @@ random_source_register(const struct random_source *rsource) printf("random: registering fast source %s\n", rsource->rs_ident); - hc_source_mask |= (1 << rsource->rs_source); RANDOM_HARVEST_LOCK(); + hc_source_mask |= (1 << rsource->rs_source); CK_LIST_INSERT_HEAD(&source_list, rrs, rrs_entries); RANDOM_HARVEST_UNLOCK(); } @@ -898,8 +914,8 @@ random_source_deregister(const struct random_source *rsource) KASSERT(rsource != NULL, ("invalid input to %s", __func__)); - hc_source_mask &= ~(1 << rsource->rs_source); RANDOM_HARVEST_LOCK(); + hc_source_mask &= ~(1 << rsource->rs_source); CK_LIST_FOREACH(rrs, &source_list, rrs_entries) if (rrs->rrs_source == rsource) { CK_LIST_REMOVE(rrs, rrs_entries); From nobody Mon Sep 8 15:26:33 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9lt30qJz66kb6; Mon, 08 Sep 2025 15:26:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9ls5Fp8z3N14; Mon, 08 Sep 2025 15:26:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E3NdjxLALEqLieyUEfHHYKY5hx+XY9568ECE/5rA+i8=; b=XyY3gXDr3cfQ1Y6XsqBVn5hFz5vZshmUi1Td+herTixI1Z8ZzZUbqxvP5C4x+g0TcdHiZ2 E90cKbhQCCdL6CsWMYPZ1KJPjE5k+GNu/qLAYPzc8+R0TIan5WGJZf6f4Zw1qcklx/mNUF xM8CMK/9ilg57OEPuwtO4VaDkcve1vc6yofDsjDlFvVCaN7tih/2pSzzwpYq3Xa1ElbPjC itDZIYXfXRxipkPD80WA1Tf0U3BX/7CQUXiWv8LBpO8rQCNZ3KC5ZagHCRs3jp7emvNabZ 6s82Ec6YBLn1qIfVXlqiCqRuUPJy0erVDAJk0s5VvHF66rgj2vRhu1bSeaTqvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E3NdjxLALEqLieyUEfHHYKY5hx+XY9568ECE/5rA+i8=; b=lr+cxRhSipM3+K/uOjUbsbOLFClroesMGcH3dNon+gU5rpavoWXNNbbB/No0Yj71Zx4N0I LF6WkCOzuU8LX9pqw1U2zVScqCBTZzrqZwfTlH4mRJ2WE8xm+g6MnBCEQMtDIdx1c+84Io My8abiwaGBS+44S58Z/TYKx8xo+MP2BZTLS2x3ALX3BdgPVPxJlGD5udw0bh8uHMqdLrQL Nexv7ThVgZnVV0y70O69yL3qv96AAP1c7nrYVD1z2irhLqCet92HrwyiH40xi2Z05NYuxB Qh3x9P1EowuNbxnUIw3BZE4qJzR+4YZyJLCrGrPJl5UvL2jqqVErRjf/TXu5FA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345193; a=rsa-sha256; cv=none; b=wvLjDCwGKoXgycOQWkdQVADSiKH230GdEtTOwhYZsI4QdECpp4nwNQVuX7FMoCBGTvt5cs /eZsHLz76wrJKUJdm+nKuuxLArPh2h03aMcwhZJKEqK1bjB6AJnckdv3zDboEDVb7xbc0R ideIqLZU6bidvgGPgBTGRDxhbEEhnBP+AvKpdI1E9tzRFua+SRBLYkA8aNLWeIx8xaClOL 4K/8QioS4wYBKK7NwKEejmJw82murLMB0P86pRao1tg+QBjk2jNlAJq9xbRQ16vqNsFuVt I3UARcCdA7FmZjwjA/gZMDt40yQrfb9KoW8g+CnT+9KbEyN2pHq/E5wPsamCdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9ls4ZPnz1B5c; Mon, 08 Sep 2025 15:26: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 588FQXf8076601; Mon, 8 Sep 2025 15:26:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQXEN076598; Mon, 8 Sep 2025 15:26:33 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:33 GMT Message-Id: <202509081526.588FQXEN076598@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 27e2afa4f27c - main - random.4: Document the kern.random.nist_healthtest_enabled tunable List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 27e2afa4f27cda036bd81d72357cc6be98869783 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=27e2afa4f27cda036bd81d72357cc6be98869783 commit 27e2afa4f27cda036bd81d72357cc6be98869783 Author: Mark Johnston AuthorDate: 2025-09-08 14:45:08 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random.4: Document the kern.random.nist_healthtest_enabled tunable Reviewed by: cem, emaste MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52231 --- share/man/man4/random.4 | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/share/man/man4/random.4 b/share/man/man4/random.4 index 840bc0c3234b..04d46e4d32aa 100644 --- a/share/man/man4/random.4 +++ b/share/man/man4/random.4 @@ -21,7 +21,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 19, 2019 +.Dd August 28, 2025 .Dt RANDOM 4 .Os .Sh NAME @@ -132,6 +132,17 @@ are listed in square brackets. See .Xr random_harvest 9 for more on the harvesting of entropy. +.Pp +The +.Va kern.random.nist_healthtest_enabled +tunable can be used to enable the entropy source health tests outlined +in section 4 of NIST Special Publication 800-90B. +When enabled, all entropy sources will be subject to the repetition +count and adaptive proportion tests described in that document. +If one of the tests fails, the source will be disabled, i.e., all +subsequent entropy samples from that source will be discarded. +The implementation performs startup testing, during which entropy +sources are discarded. .Sh FILES .Bl -tag -width ".Pa /dev/urandom" .It Pa /dev/random From nobody Mon Sep 8 15:26:34 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9lv099dz66kb7; Mon, 08 Sep 2025 15:26:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9lt5fqxz3NW6; Mon, 08 Sep 2025 15:26:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x28UgVJM9/FMgRsGVZl4cTQazP25uxSmmGD3DO014Vk=; b=CqVTQhghgA1DJQ1BWVj9G4VBLwFHz67Am2xTGD+JywPE83kHSezj5J7LfyNDuLldHxW8gZ 9Bi9Alnzkm3Sjm7cR0TJ/BQCWYjoPDxwbhgartYen+d/TC3BVAGYm+pg95aOaqs2tBzLtb emBOOC2xbR8Kla1R+6gxxYFF8qkKnglA4cb+JwlifzseIptfED73xPXPgAysrb8IO5uXYA pHIK/+x8LxqVaPVhO97+UbHhKcow/pZwfbJVIzfFTri6TWtD+j94ejQjjm76RR3DLXBX18 wOnHRPoEiPBCItdTgFqi2EZ55DwVv2ZxKjpi1t/BceIZj8u2fc8rtlRSWWE6AQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x28UgVJM9/FMgRsGVZl4cTQazP25uxSmmGD3DO014Vk=; b=HM+6TqFSgHlcSu/JF2u+YC+SDtQeoiuiv0FcsWH1sWCq/mzKQkeIsXBr5syL3HOOpZbygM PpOzklDarpdDGLrCxUiLosJ1IY1q5HcaDJxLeGiR5w5lEgNBHydGK77DAJUkvLakxItGDW kWAHkkzfZR0ykPvp3nuRDCpXNADHL0mY7Vd8EzNmJm713t+E+Yw2wSKe4uWrHMpllzQp76 3pHGqUaoku2sE1zcnmZQ1ggtkgxdIVI2WG7PN1OYb8GiIp9kkl1z6rLsIbp5jNLi5KXZ73 9edM8A97nKuzvHYyz76TV+uT3A+wUJfOiTLHKO1APekXP94urKVTOyQXmdwibw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345194; a=rsa-sha256; cv=none; b=fiTiJuE4yXMAwzHrKhUjIGnd20KXybbYCG1eqLZ8yRHtMJs9ZLS+LTJk4ia6ufcC5MStwk Pzpkyxnq9DE+oEbaMhSMTLB6X8T2rLmeDe1lfQzwycC2TN5CZjiymLDGe6oHu1DJOAvVGn 7XKExnRyPEUUxjOMa4DuOtZ79yEk9l/OMpgb0PSw49SfGuRotQ0Ak7sZ8mnl2kv6EDH/Q/ zwlwUPey4byXVKB4MBygIZEiVIioRP77ugc+KFWdD1fb9RF6UeAXlXRtm/c24cm2WcGT8+ zxXF8oCqoL+kVlPC4ax8iGoLZ3mcJMPnp52I0OWrVbSLLrNHSxUnYIbcbDjHGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9lt5Fdgz19qb; Mon, 08 Sep 2025 15:26: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 588FQYOR076635; Mon, 8 Sep 2025 15:26:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQYPw076632; Mon, 8 Sep 2025 15:26:34 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:34 GMT Message-Id: <202509081526.588FQYPw076632@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: f865264f6a5e - main - random: Allow pure entropy sources to provide a min-entropy estimate List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: f865264f6a5eba4025c0f6284a48f383717fd74e Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f865264f6a5eba4025c0f6284a48f383717fd74e commit f865264f6a5eba4025c0f6284a48f383717fd74e Author: Mark Johnston AuthorDate: 2025-09-08 14:45:23 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random: Allow pure entropy sources to provide a min-entropy estimate The current implementation of the NIST health tests assumes a min-entropy estimate of one bit per sample, which is quite conservative. For so-called "pure" sources (e.g., virtio-random, TPM) it might be nice to support larger estimates so that the tests catch failed devices more quickly. Thus: - let each pure random source provide an estimate, so that downstreams or driver implementors can override defaults if they want to; - increase the default estimate for pure sources; - for pure sources initialize the state machine at source registration time. Reviewed by: cem MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52232 --- sys/dev/random/random_harvestq.c | 21 +++++++++++++++++---- sys/dev/random/randomdev.h | 1 + 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index 6d1f9daf649b..c308f6f80d59 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -478,6 +478,7 @@ random_healthtest_init(enum random_entropy_source source, int min_entropy) struct health_test_softc *ht; ht = &healthtest[source]; + memset(ht, 0, sizeof(*ht)); KASSERT(ht->ht_state == INIT, ("%s: health test state is %d for source %d", __func__, ht->ht_state, source)); @@ -532,12 +533,22 @@ random_healthtest_init(enum random_entropy_source source, int min_entropy) }; const int error_rate = 34; - if (min_entropy == 0) - min_entropy = 1; - else if (min_entropy < 0 || min_entropy >= nitems(apt_cutoffs)) { + if (min_entropy == 0) { + /* + * For environmental sources, the main source of entropy is the + * associated timecounter value. Since these sources can be + * influenced by unprivileged users, we conservatively use a + * min-entropy estimate of 1 bit per sample. For "pure" + * sources, we assume 8 bits per sample, as such sources provide + * a variable amount of data per read and in particular might + * only provide a single byte at a time. + */ + min_entropy = source >= RANDOM_PURE_START ? 8 : 1; + } else if (min_entropy < 0 || min_entropy >= nitems(apt_cutoffs)) { panic("invalid min_entropy %d for %s", min_entropy, random_source_descr[source]); } + ht->ht_rct_limit = 1 + howmany(error_rate, min_entropy); ht->ht_apt_cutoff = apt_cutoffs[min_entropy]; } @@ -707,7 +718,7 @@ random_harvestq_init(void *unused __unused) RANDOM_HARVEST_INIT_LOCK(); harvest_context.hc_active_buf = 0; - for (int i = 0; i < ENTROPYSOURCE; i++) + for (int i = RANDOM_START; i <= RANDOM_ENVIRONMENTAL_END; i++) random_healthtest_init(i, 0); } SYSINIT(random_device_h_init, SI_SUB_RANDOM, SI_ORDER_THIRD, random_harvestq_init, NULL); @@ -901,6 +912,8 @@ random_source_register(const struct random_source *rsource) printf("random: registering fast source %s\n", rsource->rs_ident); + random_healthtest_init(rsource->rs_source, rsource->rs_min_entropy); + RANDOM_HARVEST_LOCK(); hc_source_mask |= (1 << rsource->rs_source); CK_LIST_INSERT_HEAD(&source_list, rrs, rrs_entries); diff --git a/sys/dev/random/randomdev.h b/sys/dev/random/randomdev.h index 0fa92f8c9575..a6ca66c7d92e 100644 --- a/sys/dev/random/randomdev.h +++ b/sys/dev/random/randomdev.h @@ -103,6 +103,7 @@ struct random_source { const char *rs_ident; enum random_entropy_source rs_source; random_source_read_t *rs_read; + int rs_min_entropy; }; void random_source_register(const struct random_source *); From nobody Mon Sep 8 15:26:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9lw3LFjz66kGC; Mon, 08 Sep 2025 15:26:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9lv710gz3NQ3; Mon, 08 Sep 2025 15:26:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ISWkEM8cVhV0gU5U1lSKqc8twuPsEKaHkHtfukOBBiM=; b=NmKWTLBidTr98nJQP5gCJEIvfqvEG27pC8hR9nUhWyOEnq2KxZpw0C1PfozucqhcEi5JJx NgWQnC4t8176W30EUJVT+4kNQmrv8mL5qlsqNTEpuWx4RcSXsub2zzP/t0zXyC4/OHuPpC X83CgxDehUpN+Bcy4/7CQIzBXA6u9v47E/GqT6edwMYiHFzZhXjrXveyDVOnjPbtVN6yUe ZVlteHh8qZqbJOcr9Rd+jRXKaFrbA/DeF9cWAm4ebTQtX94suWVbPeON86/heYhbqSWtF1 QEkRujjmyvvYOWL782RuCiC9hd1NjsNekbDq1Eyytdqs5NJVdbfnW9Fd4JmZjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ISWkEM8cVhV0gU5U1lSKqc8twuPsEKaHkHtfukOBBiM=; b=o8gbOVM5Mt5AY1F4ICaCvKSHYYEnIfoT3ezbg8LBQbT7DEcXmNf2fNOXlE3uDVbP7SFcv0 nVn9gvpK3KpjL9m3zLsOCA4elWfH++zenlL396fnY3lRDM78ct+XjTYv8qL54RnUSjajHL Oy0claYuZW6QfxY8ogH4gr6cAQMtbmuAzMvWjH+NAYi5XVpX/IpVKTYAQBgSlTrxJYFw0D XTwYe4DU+YeXz8y8Zriv3eaAr3PB42UpKvZORC2+eZn/NVUC4fhzhE6Z9nqS/nOnamL5wt YzWYPLc4Zn2VaeQSKS92TxdGN1U2PXiTrxsvHt2rpwofquRXYggi0DMRWlr5dg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345196; a=rsa-sha256; cv=none; b=qXoFTqcWqVHJHjfpyPA2AbO/hN1poo/FHSvPozMcVXMOTRzcsECAghlLZXQq2ZxhcoQtYa DJrOc22kjr0rAl89AG12JfG7PAkNmo9pmP4z2hmGZL65Vj/KwXAnmmEjRzvVbc2C0hrE3V 4PpgDjOSOCvAq1+Y2N8t4QoEqEbLQzeAsriZIQiRxbc6Yfr+vHnafir6tnQeIgsACG+xk7 gYzrpgkAV9qNUzP+3v+LjCTF0fvsZTF0e+F+pGq5J4ofydZIJycbfPDc7LAKuEETJeQbPJ 2zMP6Gr1pshatyX/WAi4ATv7UbpdnNtxCAUxwvML/kLoR1QmHlyYgOwgd0304Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9lv6Vbbz19qc; Mon, 08 Sep 2025 15:26: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 588FQZu7076669; Mon, 8 Sep 2025 15:26:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FQZuF076666; Mon, 8 Sep 2025 15:26:35 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:26:35 GMT Message-Id: <202509081526.588FQZuF076666@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 480928ae657d - main - random: Exclude the timestamp from healthtest for pure sources List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 480928ae657d81e41f8c10837cd1cf0ca87b14ae Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=480928ae657d81e41f8c10837cd1cf0ca87b14ae commit 480928ae657d81e41f8c10837cd1cf0ca87b14ae Author: Mark Johnston AuthorDate: 2025-09-08 14:46:12 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 15:21:43 +0000 random: Exclude the timestamp from healthtest for pure sources So-called pure sources provide entropy at regular intervals, so the timestamp counter provides little entropy. Exclude it from health testing for such sources. Reviewed by: cem, emaste MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52233 --- sys/dev/random/random_harvestq.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index c308f6f80d59..2d7af254c52c 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -343,7 +343,17 @@ copy_event(uint32_t dst[static HARVESTSIZE + 1], { memset(dst, 0, sizeof(uint32_t) * (HARVESTSIZE + 1)); memcpy(dst, event->he_entropy, event->he_size); - dst[HARVESTSIZE] = event->he_somecounter; + if (event->he_source <= RANDOM_ENVIRONMENTAL_END) { + /* + * For pure entropy sources the timestamp counter is generally + * quite determinstic since samples are taken at regular + * intervals, so does not contribute much to the entropy. To + * make health tests more effective, exclude it from the sample, + * since it might otherwise defeat the health tests in a + * scenario where the source is stuck. + */ + dst[HARVESTSIZE] = event->he_somecounter; + } } static void From nobody Mon Sep 8 15:35:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cL9yN6jTdz66kxv; Mon, 08 Sep 2025 15:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cL9yN5s2Zz3RCp; Mon, 08 Sep 2025 15:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9OQkyOgW+tFBkR5w7RpkC/eOgSTcEF/j3EWw/K+3Ico=; b=foI7hOSxmfRy0Ga2Acgei/5rb8qxKYY2fQU5qJP0bE7Ug7F2qIeH1OQyA0yrqMbwXr/Lsu Nze50eX88ESzIpZoyo3mkzQN+iaW9wlt9Va3LlCbFyo5ZXF5K3fO4DKr0F2s9sTsrIw7V4 nDR5xq4OHRzTg/0b2VvcBCOB0xcT5qTQpZTPpkuX8vuOTnK4t/JrviwgbNJEzFrNScioLt FwT6TfB2kDOWqKP0iFh+ZbkEAwcR3891kTK9Wkp2Sg9GMpnHhbDfnsW1IUQNsdMdWkXvhi Hv6X2IUnmk7tfZ08R0CAlzHIUVLUeBwxMTpnCIbVziDfhgJfWZ2b+uqF3Q/2Ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757345740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9OQkyOgW+tFBkR5w7RpkC/eOgSTcEF/j3EWw/K+3Ico=; b=J8g3KT2i3LCLU+YMnRnn6Iy4tpMx8tMHVYGyYQyr6/4OaJxdNk+njCRDcVMUUFnehu5Qne aiLD48LnBa1AeRjqwcmxEUYy5ELYhbl0b8O2Ahc7/YbwVeG6vYrtRTgXXXVkGhiZlUxu/D 89PwekR5rI5TveNLqBVWyILCMxPTVaa4dowHjzrWMkfSJg3rTFt1UKI8ElP2bDy8r4T+zo DU0myiktG5LhBmhnZm+jqGkCiFiI9Obxf7l+xiwfEurx5XLnY6zCYgH6VMnzT8mC3cE9ND BPsPA8LnW2qxHT+BwtNtFvGJMOeRuzNKUkevcok/ljeipa69APjCOl76OUVZRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757345740; a=rsa-sha256; cv=none; b=dL42OwIyDea5D1kzgsciG9RRWqCarX/GyO4kVTi/yZwuFEY+5buiCUcAOlztmXIbPfzzIN FKx9OaDEyar91A3wfrGMvHmFIFNfR2WN7wpqnWtg88Fp40yoURWdJVuufXRxDMKMx4Iowd bJ06cdhtgIQ5KlQxdZZJFfAGvU4Ap9CffVbfsaWTbL/pvdRcRbqO9m4j9mR1L0ShplIcBZ 1LZFWFBx3dReukeAMekTvXi+5hZmw3GOTYnkPDcraINme0x0rYcV3r7TFVvOCeaynl2P+B unODMSusVYk5eO+tje1M5XKDW213DmTmkAsNuKRb/ppj8KMeJOEaVTxGOeHvZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cL9yN5HB6z19wp; Mon, 08 Sep 2025 15:35: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 588FZeXu095176; Mon, 8 Sep 2025 15:35:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588FZec0095173; Mon, 8 Sep 2025 15:35:40 GMT (envelope-from git) Date: Mon, 8 Sep 2025 15:35:40 GMT Message-Id: <202509081535.588FZec0095173@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 0cba6880787a - main - makeobjops.awk: Style nits in generated files List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 0cba6880787a2c18c2c4f045e0c9f0d02b81e88c Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=0cba6880787a2c18c2c4f045e0c9f0d02b81e88c commit 0cba6880787a2c18c2c4f045e0c9f0d02b81e88c Author: Zhenlei Huang AuthorDate: 2025-09-08 15:33:28 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-08 15:33:28 +0000 makeobjops.awk: Style nits in generated files MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52407 --- sys/tools/makeobjops.awk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/tools/makeobjops.awk b/sys/tools/makeobjops.awk index 5ea658c5a3b3..522fb04ec4d1 100644 --- a/sys/tools/makeobjops.awk +++ b/sys/tools/makeobjops.awk @@ -315,7 +315,7 @@ function handle_method (static, doc) printh("\t" join(";\n\t", arguments, num_arguments) ";"); } else { - prototype = "static __inline " ret " " umname "("; + prototype = "static __inline " ret "\n" umname "("; printh(format_line(prototype argument_list ")", line_width, length(prototype))); } @@ -327,7 +327,7 @@ function handle_method (static, doc) firstvar = "((kobj_t)" firstvar ")"; if (prolog != "") printh(prolog); - printh("\tKOBJOPLOOKUP(" firstvar "->ops," mname ");"); + printh("\tKOBJOPLOOKUP(" firstvar "->ops, " mname ");"); rceq = (ret != "void") ? "rc = " : ""; printh("\t" rceq "((" mname "_t *) _m)(" varname_list ");"); if (epilog != "") From nobody Mon Sep 8 18:01:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLFC40f0qz66tmp; Mon, 08 Sep 2025 18:01:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLFC4068yz3gFx; Mon, 08 Sep 2025 18:01:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757354512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tAincg92k0SAXkFHAhS6M0KpslJbHSmF1QV3W/1WPnw=; b=MaHrnjFY6QXolA8wz1I4ArgiVgFBv0buz9EfEqrR4KVqQ+SoZAxkjlWopEKPitO40hkOXf tPgh3hbIaDH5zyO8CGwoqzK55KfiWpkgmrb7YCUgrsnWo6k5IqroNvmAcvTpusTTWG4S3l GV5QbpCKgBrFGOiRrnD17ErZoniSFe/KMxq6EbsBxZ9MCA1tBZM3ujau4PK2GEd03yGKC3 EPtz20/30Uc9ORH5NAV7aChKC/1lFRNf70mmDhYNowsNnja+vceVI3gwhWcxVJyKegeA7L mOcbMqzWl3/hHDdtFuRVYJBBS/ZtirufvZmw+7rqJE512/cYLSx74Osxxg6QRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757354512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tAincg92k0SAXkFHAhS6M0KpslJbHSmF1QV3W/1WPnw=; b=mP6jOsfvLNkXjPW+jAIpWN/qQRZc+fuEDJ/n7nMMAVNqoaueoA8pqVUeHmOv5rjDx4GRMp l1+fbpdFM5DCm4wUyQ9Dfdc26aQsU7WS5yanbLcnIQylOT8TJXqri+GZajnL+dYZoBClqQ SalLJ0FHLOgVkx1md40Sgpt0LhrsvpAqsJbHBaDAc6rgb+bz+eFESHJ32wr75VTZF3up9a stjGOovWAWE5RRpfj9uTZl3593Oc22r+4qBCgtsP/RqwTrqgI4D4K2cYNF4ZUW7WoFdobm 1WAIEnY70PSbK3kelM/6k8AXuFnUkrEPzptstK8YoRPWL3vvLPrThf9oUKCwjQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757354512; a=rsa-sha256; cv=none; b=UlupTwui1NdJeWzMcq8VxeFjeq57lz39rVCnmbzsjq91rSyzKraWHqStYlAXLS8K4y2IpH XjJWtAmrfzIAIw39MV1TmRbhLE8UJTcBABP9p3EWqVrFZB21T7GjxVPgsdrVYcTh9Uo21m +8hDM0LpLvuhMNfPeJ9B+oyV8uQEo9qpophCV0zccrlcgXba9NcewDSHcvC3RU/Kl00wAs hIKfBCz+CDRqh/RpD+ExOYZ8s07UR/l4B9Wta8YzhY66AK6jKTisiAjXfENvzMCdUoCSzk yhXTow/hJEMiJFGwWDNROI/ycoc8b5rXKfOmZuLpC8Sqqo8NS6V+oPgESiAUnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLFC36pW0z1FZD; Mon, 08 Sep 2025 18:01: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 588I1pE8075905; Mon, 8 Sep 2025 18:01:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588I1pKK075902; Mon, 8 Sep 2025 18:01:51 GMT (envelope-from git) Date: Mon, 8 Sep 2025 18:01:51 GMT Message-Id: <202509081801.588I1pKK075902@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Motin Subject: git: ef083de7d472 - main - Add random Intel Elkhart Lake device IDs. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: ef083de7d472b13bbaa18a165b66b93909422b2e Auto-Submitted: auto-generated The branch main has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=ef083de7d472b13bbaa18a165b66b93909422b2e commit ef083de7d472b13bbaa18a165b66b93909422b2e Author: Dmitry Luhtionov AuthorDate: 2025-09-08 16:28:24 +0000 Commit: Alexander Motin CommitDate: 2025-09-08 16:28:24 +0000 Add random Intel Elkhart Lake device IDs. --- sys/dev/ahci/ahci_pci.c | 1 + sys/dev/ichsmb/ichsmb_pci.c | 3 +++ sys/dev/sound/pci/hda/hdac.c | 1 + sys/dev/sound/pci/hda/hdac.h | 1 + sys/dev/usb/controller/xhci_pci.c | 2 ++ 5 files changed, 8 insertions(+) diff --git a/sys/dev/ahci/ahci_pci.c b/sys/dev/ahci/ahci_pci.c index f29d803e99a8..82f56fc0d19e 100644 --- a/sys/dev/ahci/ahci_pci.c +++ b/sys/dev/ahci/ahci_pci.c @@ -195,6 +195,7 @@ static const struct { {0x1f3f8086, 0x00, "Intel Avoton (RAID)", 0}, {0x23a38086, 0x00, "Intel Coleto Creek", 0}, {0x31e38086, 0x00, "Intel Gemini Lake", 0}, + {0x4b638086, 0x00, "Intel Elkhart Lake", 0}, {0x5ae38086, 0x00, "Intel Apollo Lake", 0}, {0x7ae28086, 0x00, "Intel Alder Lake", 0}, {0x8c028086, 0x00, "Intel Lynx Point", 0}, diff --git a/sys/dev/ichsmb/ichsmb_pci.c b/sys/dev/ichsmb/ichsmb_pci.c index 728bb942d503..e4d87fe1fed2 100644 --- a/sys/dev/ichsmb/ichsmb_pci.c +++ b/sys/dev/ichsmb/ichsmb_pci.c @@ -107,6 +107,7 @@ #define ID_COMETLAKE2 0x06a3 #define ID_TIGERLAKE 0xa0a3 #define ID_TIGERLAKE2 0x43a3 +#define ID_ELKHARTLAKE 0x4b23 #define ID_GEMINILAKE 0x31d4 #define ID_CEDARFORK 0x18df #define ID_ICELAKE 0x34a3 @@ -206,6 +207,8 @@ static const struct pci_device_table ichsmb_devices[] = { PCI_DESCR("Intel Tiger Lake SMBus controller") }, { PCI_DEV(PCI_VENDOR_INTEL, ID_TIGERLAKE2), PCI_DESCR("Intel Tiger Lake SMBus controller") }, + { PCI_DEV(PCI_VENDOR_INTEL, ID_ELKHARTLAKE), + PCI_DESCR("Intel Elkhart Lake SMBus controller") }, { PCI_DEV(PCI_VENDOR_INTEL, ID_GEMINILAKE), PCI_DESCR("Intel Gemini Lake SMBus controller") }, { PCI_DEV(PCI_VENDOR_INTEL, ID_CEDARFORK), diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 90cd74d28b3d..80028063bb0d 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -133,6 +133,7 @@ static const struct { { HDA_INTEL_PCH, "Intel Ibex Peak", 0, 0 }, { HDA_INTEL_PCH2, "Intel Ibex Peak", 0, 0 }, { HDA_INTEL_ELLK, "Intel Elkhart Lake", 0, 0 }, + { HDA_INTEL_ELLK2, "Intel Elkhart Lake", 0, 0 }, { HDA_INTEL_JLK2, "Intel Jasper Lake", 0, 0 }, { HDA_INTEL_BXTNP, "Intel Broxton-P", 0, 0 }, { HDA_INTEL_SCH, "Intel SCH", 0, 0 }, diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index 223434a214b1..09a17f702019 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -66,6 +66,7 @@ #define HDA_INTEL_PCH HDA_MODEL_CONSTRUCT(INTEL, 0x3b56) #define HDA_INTEL_PCH2 HDA_MODEL_CONSTRUCT(INTEL, 0x3b57) #define HDA_INTEL_ELLK HDA_MODEL_CONSTRUCT(INTEL, 0x4b55) +#define HDA_INTEL_ELLK2 HDA_MODEL_CONSTRUCT(INTEL, 0x4b58) #define HDA_INTEL_JLK2 HDA_MODEL_CONSTRUCT(INTEL, 0x4dc8) #define HDA_INTEL_BXTNP HDA_MODEL_CONSTRUCT(INTEL, 0x5a98) #define HDA_INTEL_MACBOOKPRO92 HDA_MODEL_CONSTRUCT(INTEL, 0x7270) diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c index d5cfd228a429..820fb2f738a1 100644 --- a/sys/dev/usb/controller/xhci_pci.c +++ b/sys/dev/usb/controller/xhci_pci.c @@ -178,6 +178,8 @@ xhci_pci_match(device_t self) return ("Intel Tiger Lake-H USB 3.2 controller"); case 0x461e8086: return ("Intel Alder Lake-P Thunderbolt 4 USB controller"); + case 0x4b7d8086: + return ("Intel Elkhart Lake USB 3.1 controller"); case 0x51ed8086: return ("Intel Alder Lake USB 3.2 controller"); case 0x5aa88086: From nobody Mon Sep 8 19:22:01 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLGzZ1KZ7z670fh; Mon, 08 Sep 2025 19:22:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLGzZ0clpz3rrv; Mon, 08 Sep 2025 19:22:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757359322; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K1HilkNwluFlJsQIiwWPkM7FqxiJTcovwW+/ZgeuTeQ=; b=TMSzix9v/VRHLl9+oAfd9kRsoBKmX5dJp8kbFlYXvX8zbP17atfAVMO/7b/BpAhE1UuvPT DIXGGM5Qp4fFeFcsvV6p10c8OE0Fqli+y0UKV4gMTnDjxU2q+01Rq3XgsgXrWs/+38HrdL LgMzB46CJZFMv0yDm5lie+7vApb5trE58DA6z9s6lTswZJAJ28vkieEi591bEPQV29AfTR 3PahZbqgiL5mDytXicLJZ+sMe6RNfWOX5jAVqQOv7Vkkbzq8QDHGhrn6KxNEjzccpchc6O OEvki0ULN/mfTKraaJxq2CGL2TgGPVT6EyYTnrtQhuCADwmO5a4hCMRaqDcD8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757359322; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K1HilkNwluFlJsQIiwWPkM7FqxiJTcovwW+/ZgeuTeQ=; b=OhXFhA/2HM5HBFuNKja/kwZBwFD6+oQnTbLpzXcFnGaBE+1WGliMrLjr9fNfjsg+RATu81 B5aC9b4B3DVMTGdGvaxDM+LiEJxQZPrJ2acYgNPwKZzkpIR1iZ0s8HF6gz46Ss80tuePXE L2k7veWNI+cAuoLC06406owm6tyJ3WS/mYNaP6Z29KS4yo4tXFM0+5hjNfoCErnaLZQyDh 25SmzqENU08/YlIvoe9bSLAv3AL7U+pADrOPl2UNkVlxNFxGhEJD9nr3P5sOCDKDUZsnA1 t5BJJsAHIeDD2i7BP2ZaUAfwic3li492OO1lTblI0IZx8aFiiaKoWsuBcEyrCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757359322; a=rsa-sha256; cv=none; b=fwy/7XdWbQN3DpG5yXkFhudKpG0UJxxShmx9eJtsZwJYCaJiw4Fz36qFPKC77eMsQLDRNF hYU7m93KsHyBgxhXguKwIMjCVmL2KYpLGAe5hMb4Q6Y/SHaY3wrucl22nN2rfMrKzMrp9I fgzgK2XBfGLN5IHfmbfqLC6lmErl8fP+eEFXiJPpx2Ogh1tirqqtwlgZL96adkkkTmj7Ar 72oBmwKSqM01gI6O9mhQduOSaQ0NjltoK4wEw+h9pmG3gu2hfqICJ+vgX1EwBK+t7ingQ5 BJjeA/KRv6ScVYD+xyKjAz/apAyeFmzsfVQRUWFtsGZb0nxFCM2tltCGwzQ1Kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLGzZ0Bz4z1J4t; Mon, 08 Sep 2025 19:22: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 588JM1Ow027956; Mon, 8 Sep 2025 19:22:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588JM1NX027953; Mon, 8 Sep 2025 19:22:01 GMT (envelope-from git) Date: Mon, 8 Sep 2025 19:22:01 GMT Message-Id: <202509081922.588JM1NX027953@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: b2f5dc591ef2 - main - src.opts.mk: Remove REPRODUCIBLE_BUILD from the default list List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: b2f5dc591ef2547ee2e9b68e58a263cd34948db1 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b2f5dc591ef2547ee2e9b68e58a263cd34948db1 commit b2f5dc591ef2547ee2e9b68e58a263cd34948db1 Author: Mark Johnston AuthorDate: 2025-09-07 15:44:53 +0000 Commit: Mark Johnston CommitDate: 2025-09-08 19:14:05 +0000 src.opts.mk: Remove REPRODUCIBLE_BUILD from the default list It was added to the list in bsd.opts.mk in commit 4f81c42fbd76, so should have been removed here. Reported by: cperciva Fixes: 4f81c42fbd76 ("share/mk: Substitute reproducible prefixes in dwarf info") MFC after: 3 days Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. --- share/mk/src.opts.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 85a003eb4eaf..9bd4e6a1842f 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -214,7 +214,6 @@ __DEFAULT_NO_OPTIONS = \ MALLOC_PRODUCTION \ OFED_EXTRA \ OPENLDAP \ - REPRODUCIBLE_BUILD \ RPCBIND_WARMSTART_SUPPORT \ SORT_THREADS \ ZONEINFO_LEAPSECONDS_SUPPORT \ From nobody Mon Sep 8 19:45:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLHVh0z1Dz672VX for ; Mon, 08 Sep 2025 19:45:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x102f.google.com (mail-pj1-x102f.google.com [IPv6:2607:f8b0:4864:20::102f]) (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 4cLHVh0ZlFz3wGd for ; Mon, 08 Sep 2025 19:45:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-32b959b4895so3172083a91.1 for ; Mon, 08 Sep 2025 12:45:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1757360726; x=1757965526; 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=nv3yAfQocDZTn/FW3sUlE2sc9UVQwXF0RHT1Jbq27as=; b=ojxyk8phUTHxkvVY5JSCoGNPY78XH5Z9s/Ie+9CMJnCd5uIakBdJbKlhEkPJ6U+6Jn JjxalEFsTYUiJ3ob7+GR1/O0O/lWLkS8f5jAcoo463Z2HskX2d2ImOUEgulAh9euSrPg kCSK1TlXWzWKLrC50yxsK85VTcUmFmSjLz/AlMMlupvtRAkCbxqcR/A+UdtVK9fxq0eF 9qyQ8l93gNnkXE6NCLvucEzqoj7ntob7EXu58iOodMzFgiDtD4J8cH9NJFshki2bqEkx P7+f1r8H13RQyjLoxaZyIux+C5YjLGpLRaDUi1SydPHB/gIpLEzvd7NJsiLCatEytppK ON4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757360726; x=1757965526; 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=nv3yAfQocDZTn/FW3sUlE2sc9UVQwXF0RHT1Jbq27as=; b=Ch1Keb/WVL0TuiMT4mOonERn2AQcpndAU/XH2Q66k1y2QjomY34OLsmT46tES/uNha j4tIE8Rc78xBECdRt07XSHv/p0mVPUp9FisnZ0fwSZkgaiImQjnj3Fy5e+ODcHcvqX3U 5xF9SiOTB4FL0ozvCJThKcB72bbPrxWxwII2gB//gush/nLFW09bYpy5UUfoB2shLe7k XazuKVSa1Xp9AZQLofHbbWXD0Jn1okmZuzEcdFGRIWmN0wu3wP18L/bvHjCL/vAAf7ka C3IuKw27O6gWXjbt+jwXQmEkmvr+RrQ/rYBujYqNJh8faReFdJVNrSm4btowvYPLNRqd 3WFA== X-Forwarded-Encrypted: i=1; AJvYcCUXbGWDvhQxfp59f19SeQmm4tJPmbp/+iqFzjDwmSa4vL484iv7mvcaxMLRtFwP/nGrOVXrUlsQk+ifaSJLKV3eQnKvWg==@freebsd.org X-Gm-Message-State: AOJu0YwLtVafLeUDxvy7KsNisTfJXHWdJK0ExWK6jQKsePc987jXM5nG f/2hpH7LGKfhpW5lpF11udzIF9kHuh23JK3PP5lkGU86x+4RJHbPHbx/84bOKyN8JrqTaCjp0VF LR+g1lhByI47mp3BFzuMRixLVvr/ljYarw0m6KYzEMw== X-Gm-Gg: ASbGncsn/DiCrYsfiSYoAaI5gOv33w/hjKoe8jtmOcpQTmCzWLsuiZGexw0vOEU7GjM f0YA9SCyKpRPuQ9egIvrjV7X4T2V3EDmwsZvuOJDJIBtqKQBD0iaovo6rzqzJhoIRtyvp69ZC7C cDKSTv+VDSI62ywipJk9yOUj7KvTowiiSXCRsNnzmQyJnT/2fJMMqGWsiEc5qBcqSvCN97kN1Uf T5H7pjNY61vvmSKEto0fNd6bz3ofBAuavMWgkBA9P5VvTXDZw== X-Google-Smtp-Source: AGHT+IHPOX63SwNGCG9QQngn5ySAgDOBnHmxmQRySAO7X76683p480UarQpLenvbx6sLp6Cm8Muq6duVuhR8Osf3nN0= X-Received: by 2002:a17:90a:ec85:b0:327:96dd:6293 with SMTP id 98e67ed59e1d1-32d43f7d6b4mr11135266a91.26.1757360725674; Mon, 08 Sep 2025 12:45:25 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509041126.584BQBBt067763@gitrepo.freebsd.org> <23rq9r12-75nn-sqs8-06o7-p785s2q915o3@yvfgf.mnoonqbm.arg> <8A4EFC13-ABA3-471B-9726-5940E2B88DED@FreeBSD.org> <0p6ns5r7-ss8q-n81s-s83n-6n16o6pr37p2@yvfgf.mnoonqbm.arg> In-Reply-To: From: Warner Losh Date: Mon, 8 Sep 2025 13:45:13 -0600 X-Gm-Features: Ac12FXwQScYurdAm7evoRppfSy1Mr71OxPNaw140s4m2o1uJAeZscW6PJ0jZ__Q Message-ID: Subject: Re: NOIP/NOINET/... for arm64 too? [was: Re: git: 1c23d8f9f398 - main - vtnet: improve checksum offloading] To: Mark Johnston Cc: Michael Tuexen , "Bjoern A. Zeeb" , srcmgr@freebsd.org, "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000cbeb3c063e4f6d35" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cLHVh0ZlFz3wGd --000000000000cbeb3c063e4f6d35 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Sep 8, 2025 at 6:52=E2=80=AFAM Mark Johnston wr= ote: > On Sat, Sep 06, 2025 at 02:59:25PM +0200, Michael Tuexen wrote: > > > On 6. Sep 2025, at 10:31, Bjoern A. Zeeb < > bzeeb-lists@lists.zabbadoz.net> wrote: > > > > > > On Sat, 6 Sep 2025, Michael Tuexen wrote: > > > > > >> OK, that is fixed in > > >> > https://cgit.FreeBSD.org/src/commit/?id=3D7c448f5aab8be6977d0860e608e7d49= 7b495d28c > < > https://cgit.freebsd.org/src/commit/?id=3D7c448f5aab8be6977d0860e608e7d49= 7b495d28c > > > > > > > > Thanks! > > > > > >> Thanks again for reporting and I am sorry for breaking the NOIP > (again). > > >> BTW: Is there a reason we don't have the NOINET, NOINET6, and NOIP > kernel > > >> configs for arm64? > > > > > > I think initially we only added all the extra kernel configs 10-15 > years > > > ago to amd64 as that was the fastest way to build a universe (for a > > > target). I am likely guilty for NOINET and VIMAGE and NOIP... > > > initially generating them if I do not misremember. > > > > > > Adding them to a 2nd arch would increase full make universe build > times but > > > given a lot of people have started to do native builds on higher core > arm64 > > > machines I wonder if it would be time to add them there? > > Does adding a kernel config also requires it to activate it in make > universe? > > arm64 is now tier one and I use arm64 platforms more often then amd64 f= or > > development. > > I believe adding a new config to sys/arm64/conf will automatically cause > it to be included in universe builds. > > > > I'll Cc: source manager and see how they feel about this... > > I don't see any particular problem with building the extra kernels on > arm64 as well. It might be useful to build-test NOIP etc. > configurations with "options FDT". > > But even if one is using arm64 for development, it's trivial to build > the corresponding amd64 kernels when build-testing, just set TARGET. > I agree. We should just add them to arm64. It's part of being Tier 1. And while we can test them today, I'd like to see them explicitly tested since we're still breaking these configurations too often. Warner --000000000000cbeb3c063e4f6d35 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Mon, Sep 8, = 2025 at 6:52=E2=80=AFAM Mark Johnston <markj@freebsd.org> wrote:
On Sat, Sep 06, 2025 at 02:59:25PM +0200, Michael Tuex= en wrote:
> > On 6. Sep 2025, at 10:31, Bjoern A. Zeeb <bzeeb-lists@lists.zabbadoz.= net> wrote:
> >
> > On Sat, 6 Sep 2025, Michael Tuexen wrote:
> >
> >> OK, that is fixed in
> >> http= s://cgit.FreeBSD.org/src/commit/?id=3D7c448f5aab8be6977d0860e608e7d497b495d= 28c <https:= //cgit.freebsd.org/src/commit/?id=3D7c448f5aab8be6977d0860e608e7d497b495d28= c>
> >
> > Thanks!
> >
> >> Thanks again for reporting and I am sorry for breaking the NO= IP (again).
> >> BTW: Is there a reason we don't have the NOINET, NOINET6,= and NOIP kernel
> >> configs for arm64?
> >
> > I think initially we only added all the extra kernel configs 10-1= 5 years
> > ago to amd64 as that was the fastest way to build a universe (for= a
> > target).=C2=A0 =C2=A0I am likely guilty for NOINET and VIMAGE and= NOIP...
> > initially generating them if I do not misremember.
> >
> > Adding them to a 2nd arch would increase full make universe build= times but
> > given a lot of people have started to do native builds on higher = core arm64
> > machines I wonder if it would be time to add them there?
> Does adding a kernel config also requires it to activate it in make un= iverse?
> arm64 is now tier one and I use arm64 platforms more often then amd64 = for
> development.

I believe adding a new config to sys/arm64/conf will automatically cause it to be included in universe builds.

> > I'll Cc: source manager and see how they feel about this...
I don't see any particular problem with building the extra kernels on arm64 as well.=C2=A0 It might be useful to build-test NOIP etc.
configurations with "options FDT".

But even if one is using arm64 for development, it's trivial to build the corresponding amd64 kernels when build-testing, just set TARGET.

I agree. We should just add them to arm64. It= 's part of being Tier 1. And while we can test them today, I'd like= to see them explicitly tested since we're still breaking these configu= rations too often.

Warner
--000000000000cbeb3c063e4f6d35-- From nobody Mon Sep 8 20:28:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLJSg4cJ3z674pL; Mon, 08 Sep 2025 20:28:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLJSg3sh5z42wl; Mon, 08 Sep 2025 20:28:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757363331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iWw0W76ltKrW4PRHE8+fwKnxZ8RXNrSGoB1seoednQI=; b=n4dW5vZhKxhhZ1Dgy8USIwx5p3RW3m7yhd9VVpQ/gA80wtieIvOdcstdMiSlDjS5ZKEm9g VWP3Eb9DlcOI+b42ZiX3i4z74xZosWMuoxlzytteEL3dEyNoKyB9u4vaCsty1RFqYaCHZN eLW/vAbgAjYvoF8Yc4H7ySrz9YgLROPiKJzSG0COh+yhiMroAbV+UuKARZs/NoaXOSAqjV DO8VQsZ4IkI7GMeZRzVb6Jg+zv/FKovuptOSXUjwZOrDZpnn9BrJ+lU1ssO3tlsizTCq0o L3197bZX83ew6N3S1DUeMK01KMBboYoBxijpL5hoYuK3WalhpLWqNxtWNA1CEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757363331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iWw0W76ltKrW4PRHE8+fwKnxZ8RXNrSGoB1seoednQI=; b=aPlNRVpwtsgknbxGMw0Mls8Flm7xm4DETI1rQip5dTgGpRf27x7wKRXgPkmZvzZnP4MHr7 4rHe+DFqKPgFFTzEXbEmR5GsCSepCQEw7+pY5Nk6LXNEoWVb/zQclFfFMdGZ/EqM+o+S/O 0xPezZbVC8eYbiwycgC0R5wkWptWcW9s56WqMFFHAgEdH160PBgxbdy6m4zxCvcWfR9jH5 2Nt+0mn+tly3TOJrXcLVxZsbZgoSbm8RNdU2fsv88RszdjuZZeKQ2ZatslTndXY63vHeyI jnAilSSqjrqBgN24JT95QD1pWoB5g/fQRwDQPJipXkfCd2wdP5mneJyHJ2cMSg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757363331; a=rsa-sha256; cv=none; b=s3Zmd7zkYzmsuz8cEp/o+5desJk117/oCyzMBQ6ITWawn0oob1bFeM6HxI3ODqAQYRc5jg Do7gU4HsCY/o5/2ALb4Hig48h3qFvK0mUlMmWMxuWbIRek2h2tb4UrVn3aO3nTV4EruNvf OrroB4IrtescwJ2ol7yA1DiQSKWrzs9UUu8aaE5qeK/10huosWkRYbJbFEhwQwgM4lODuc qjx4izlwRc1k/Ljm/VGBODqmNGsa4hb2LyUxKo7tOzOqzR2iUBJGmqm986UkGgANLY0IrA wFRcEUejwxKbuibdn5dC5y2xpdUE6H+FIKu14URrk9qQg0L1U0c3MCi0YILy+w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLJSg3MT8z1KhQ; Mon, 08 Sep 2025 20:28: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 588KSpF7042642; Mon, 8 Sep 2025 20:28:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588KSpw8042639; Mon, 8 Sep 2025 20:28:51 GMT (envelope-from git) Date: Mon, 8 Sep 2025 20:28:51 GMT Message-Id: <202509082028.588KSpw8042639@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 0143c9eb764a - main - Revert "vtnet: fix compilation for NOIP configs" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0143c9eb764ad5ee1c2866439e923033daa30037 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=0143c9eb764ad5ee1c2866439e923033daa30037 commit 0143c9eb764ad5ee1c2866439e923033daa30037 Author: Michael Tuexen AuthorDate: 2025-09-08 20:26:45 +0000 Commit: Michael Tuexen CommitDate: 2025-09-08 20:26:45 +0000 Revert "vtnet: fix compilation for NOIP configs" This reverts commit 7c448f5aab8be6977d0860e608e7d497b495d28c. Will be committed again with correct authorship. --- sys/dev/virtio/network/if_vtnet.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 528ff3372097..73f27ac147ff 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -133,14 +133,12 @@ static int vtnet_rxq_replace_lro_nomrg_buf(struct vtnet_rxq *, static int vtnet_rxq_replace_buf(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_enqueue_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_new_buf(struct vtnet_rxq *); -#if defined(INET) || defined(INET6) static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *, struct mbuf *, bool, int, struct virtio_net_hdr *); static void vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_csum(struct vtnet_rxq *, struct mbuf *, struct virtio_net_hdr *); -#endif static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *, int); static void vtnet_rxq_discard_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_merged_eof(struct vtnet_rxq *, struct mbuf *, int); @@ -1763,7 +1761,6 @@ vtnet_rxq_new_buf(struct vtnet_rxq *rxq) return (error); } -#if defined(INET) || defined(INET6) static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, bool isipv6, int protocol, struct virtio_net_hdr *hdr) @@ -1921,7 +1918,6 @@ vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, return (0); } -#endif static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *rxq, int nbufs) @@ -2044,15 +2040,10 @@ vtnet_rxq_input(struct vtnet_rxq *rxq, struct mbuf *m, if (hdr->flags & (VIRTIO_NET_HDR_F_NEEDS_CSUM | VIRTIO_NET_HDR_F_DATA_VALID)) { -#if defined(INET) || defined(INET6) if (vtnet_rxq_csum(rxq, m, hdr) == 0) rxq->vtnrx_stats.vrxs_csum++; else rxq->vtnrx_stats.vrxs_csum_failed++; -#else - sc->vtnet_stats.rx_csum_bad_ethtype++; - rxq->vtnrx_stats.vrxs_csum_failed++; -#endif } if (hdr->gso_size != 0) { From nobody Mon Sep 8 20:28:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLJSj2Hrlz6753Y; Mon, 08 Sep 2025 20:28:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLJSh6tgTz430d; Mon, 08 Sep 2025 20:28:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757363332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FzkUj8T39HE0mpWQO6pQDJQpgdX2wIWmCT05+eiQ1cE=; b=gzTTCryKG9Pqz2ou2zAA3FBKPBPQhx0gnZ8szWDOHdYfvOcDwJHhdjdT0ii8vLEKHSq1pY SpXVLX5tf4vUu3ynuG6sZ7QQAxOi/2jfhc1wja5yv36elDe+KnuIyWkmfSLiQ3UNt5rAZg VFpSicOiSSZeJDakau/wrrc6t4QBCePWqd5zE3vnu7wIUjiwN0dV1S0V3bvAu6/vnUozNl Pp+xZdi+SCX8+rkgf4PgPoEKRZA6q3UBkJqt0eV81HxQ5CH/PcYHdxx6ReEMFV83ooVIMG 8/GBk40fFO+CMdLqPDZi+2FEBTjk3WJmlCqr5ngnZsTgQyeWFLiB4URSLW0J9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757363332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FzkUj8T39HE0mpWQO6pQDJQpgdX2wIWmCT05+eiQ1cE=; b=bmwD77myBZzuknDShf5VmKzyQYGqI5C+aV6EZTRp2/7uEN/sPqXON2Ci314tWZeljdHpnI pLLkLe6V1NsluNeYav6tHv8UgGzMgcLnYijz9gBqB5gWskJR1Y/jDlg87OmQEybASCniF+ uW8yjekCxABIdXS6BGDK5Ppcx3R/RCKnUQDvkWRs6VgU29JFQ0UkdFjkQdX9SxOflch1Rm hFmjL3KxXE85W+D1vB6kqJ3XljU71ouimSDOTOHyMtdXrJkht9bjbyoy36ch5C8TYsYdRI /8zt/2+5PpLIaQx4WWKOc9JIw8L8+RJDGtJqjBUvaqvsoxmyVNAghQKA+FPRBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757363332; a=rsa-sha256; cv=none; b=INb3Fp3FWPcLLbKz7snfX4XQH1Ig8hhJye6Zlcvp3cPSadbZ58eb5shzPaQAhWANZ20iqx DFP7SuPWOBVajS7N2mGAyiskaDg2nNGo/k0Izhtcc2qM7CmDltvVsIIDkeyi4t7I/2JNfJ U1sxAuQfGYxKGrPucXPajs+coHmCWu+jh8tGBtHWnH2HJQ9oka+wQXMxxPkAx0wB6y2wSV sxcW72nLwSWgCiYJENIVrrcg7bOPJGCyXNRdChIhLR3hGmGNYBWXA2r9Iqb8r/Sp+w2tcu yizkAKxrd/idLH9d4KdUu6zC2aqD1AoHwUkiMA+KF5F7FpmZwmi27UV42pmczA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLJSh4h2Mz1KDj; Mon, 08 Sep 2025 20:28: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 588KSqoC042677; Mon, 8 Sep 2025 20:28:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588KSqQU042674; Mon, 8 Sep 2025 20:28:52 GMT (envelope-from git) Date: Mon, 8 Sep 2025 20:28:52 GMT Message-Id: <202509082028.588KSqQU042674@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: f217bc7651a4 - main - Revert "vtnet: improve checksum offloading" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f217bc7651a4126a6819da1af03a64e81a551005 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=f217bc7651a4126a6819da1af03a64e81a551005 commit f217bc7651a4126a6819da1af03a64e81a551005 Author: Michael Tuexen AuthorDate: 2025-09-08 20:27:52 +0000 Commit: Michael Tuexen CommitDate: 2025-09-08 20:27:52 +0000 Revert "vtnet: improve checksum offloading" This reverts commit 1c23d8f9f39870951c1d0dfbb112fc4e53237737. Will be committed again with correct authorship. --- share/man/man4/vtnet.4 | 28 ++--- sys/dev/virtio/network/if_vtnet.c | 220 +++++++++++++++++------------------ sys/dev/virtio/network/if_vtnetvar.h | 2 +- 3 files changed, 118 insertions(+), 132 deletions(-) diff --git a/share/man/man4/vtnet.4 b/share/man/man4/vtnet.4 index 67a835050422..073383df11ff 100644 --- a/share/man/man4/vtnet.4 +++ b/share/man/man4/vtnet.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 4, 2025 +.Dd September 3, 2025 .Dt VTNET 4 .Os .Sh NAME @@ -153,14 +153,7 @@ The number of times the receive interrupt handler was rescheduled. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .host_lro The number of times TCP large receive offload was performed. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed -The number of times a packet with a request for receive or transmit checksum -offloading was received and this request failed. -The different reasons for the failure are counted by -.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto , -.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto , -.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype , -and -.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset . +Currently not used. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum The number of times receive checksum offloading for UDP or TCP was performed. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .ierrors @@ -220,21 +213,18 @@ over all receive queues of the interface. The sum of .Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed over all receive queues of the interface. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto -The number of times a packet with a request for receive or transmit checksum -offloading was received where the IP protocol was not accessible. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_proto +Currently unused. .It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset +Currently unused. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto +Currently unused. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype The number of times fixing the checksum required by .Va hw.vtnet.fixup_needs_csum or .Va hw.vtnet. Ns Ar X Ns Va .fixup_needs_csum -was attempted for a packet where the csum is not located in the first mbuf. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto -The number of times a packet with a request for receive or transmit checksum -offloading was received where the IP protocol was neither TCP nor UDP. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype -The number of times a packet with a request for receive or transmit checksum -offloading was received where the EtherType was neither IPv4 nor IPv6. +was attempted for a packet with an EtherType other than IPv4 or IPv6. .It Va dev.vtnet. Ns Ar X Ns Va .rx_mergeable_failed The number of times receiving a mergable buffer failed. .It Va dev.vtnet. Ns Ar X Ns Va .rx_enq_replacement_failed diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 73f27ac147ff..afda5157a624 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -134,9 +134,9 @@ static int vtnet_rxq_replace_buf(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_enqueue_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_new_buf(struct vtnet_rxq *); static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *, struct mbuf *, - bool, int, struct virtio_net_hdr *); -static void vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, - int); + uint16_t, int, struct virtio_net_hdr *); +static int vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, + uint16_t, int, struct virtio_net_hdr *); static int vtnet_rxq_csum(struct vtnet_rxq *, struct mbuf *, struct virtio_net_hdr *); static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *, int); @@ -1762,161 +1762,162 @@ vtnet_rxq_new_buf(struct vtnet_rxq *rxq) } static int -vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, bool isipv6, - int protocol, struct virtio_net_hdr *hdr) +vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, uint16_t etype, + int hoff, struct virtio_net_hdr *hdr) { struct vtnet_softc *sc; + int error; - /* - * The packet is likely from another VM on the same host or from the - * host that itself performed checksum offloading so Tx/Rx is basically - * a memcpy and the checksum has little value so far. - */ - - KASSERT(protocol == IPPROTO_TCP || protocol == IPPROTO_UDP, - ("%s: unsupported IP protocol %d", __func__, protocol)); + sc = rxq->vtnrx_sc; /* - * If the user don't want us to fix it up here by computing the - * checksum, just forward the order to compute the checksum by setting - * the corresponding mbuf flag (e.g., CSUM_TCP). + * NEEDS_CSUM corresponds to Linux's CHECKSUM_PARTIAL, but FreeBSD does + * not have an analogous CSUM flag. The checksum has been validated, + * but is incomplete (TCP/UDP pseudo header). + * + * The packet is likely from another VM on the same host that itself + * performed checksum offloading so Tx/Rx is basically a memcpy and + * the checksum has little value. + * + * Default to receiving the packet as-is for performance reasons, but + * this can cause issues if the packet is to be forwarded because it + * does not contain a valid checksum. This patch may be helpful: + * https://reviews.freebsd.org/D6611. In the meantime, have the driver + * compute the checksum if requested. + * + * BMV: Need to add an CSUM_PARTIAL flag? */ - sc = rxq->vtnrx_sc; if ((sc->vtnet_flags & VTNET_FLAG_FIXUP_NEEDS_CSUM) == 0) { - switch (protocol) { - case IPPROTO_TCP: - m->m_pkthdr.csum_flags |= - (isipv6 ? CSUM_TCP_IPV6 : CSUM_TCP); - break; - case IPPROTO_UDP: - m->m_pkthdr.csum_flags |= - (isipv6 ? CSUM_UDP_IPV6 : CSUM_UDP); - break; - } - m->m_pkthdr.csum_data = hdr->csum_offset; - return (0); + error = vtnet_rxq_csum_data_valid(rxq, m, etype, hoff, hdr); + return (error); } /* * Compute the checksum in the driver so the packet will contain a * valid checksum. The checksum is at csum_offset from csum_start. */ - int csum_off, csum_end; - uint16_t csum; + switch (etype) { +#if defined(INET) || defined(INET6) + case ETHERTYPE_IP: + case ETHERTYPE_IPV6: { + int csum_off, csum_end; + uint16_t csum; - csum_off = hdr->csum_start + hdr->csum_offset; - csum_end = csum_off + sizeof(uint16_t); + csum_off = hdr->csum_start + hdr->csum_offset; + csum_end = csum_off + sizeof(uint16_t); - /* Assume checksum will be in the first mbuf. */ - if (m->m_len < csum_end || m->m_pkthdr.len < csum_end) { - sc->vtnet_stats.rx_csum_bad_offset++; + /* Assume checksum will be in the first mbuf. */ + if (m->m_len < csum_end || m->m_pkthdr.len < csum_end) + return (1); + + /* + * Like in_delayed_cksum()/in6_delayed_cksum(), compute the + * checksum and write it at the specified offset. We could + * try to verify the packet: csum_start should probably + * correspond to the start of the TCP/UDP header. + * + * BMV: Need to properly handle UDP with zero checksum. Is + * the IPv4 header checksum implicitly validated? + */ + csum = in_cksum_skip(m, m->m_pkthdr.len, hdr->csum_start); + *(uint16_t *)(mtodo(m, csum_off)) = csum; + m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; + m->m_pkthdr.csum_data = 0xFFFF; + break; + } +#endif + default: + sc->vtnet_stats.rx_csum_bad_ethtype++; return (1); } - /* - * Like in_delayed_cksum()/in6_delayed_cksum(), compute the - * checksum and write it at the specified offset. We could - * try to verify the packet: csum_start should probably - * correspond to the start of the TCP/UDP header. - * - * BMV: Need to properly handle UDP with zero checksum. Is - * the IPv4 header checksum implicitly validated? - */ - csum = in_cksum_skip(m, m->m_pkthdr.len, hdr->csum_start); - *(uint16_t *)(mtodo(m, csum_off)) = csum; - m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; - m->m_pkthdr.csum_data = 0xFFFF; - return (0); } -static void -vtnet_rxq_csum_data_valid(struct vtnet_rxq *rxq, struct mbuf *m, int protocol) -{ - KASSERT(protocol == IPPROTO_TCP || protocol == IPPROTO_UDP, - ("%s: unsupported IP protocol %d", __func__, protocol)); - - m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; - m->m_pkthdr.csum_data = 0xFFFF; -} - static int -vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, - struct virtio_net_hdr *hdr) +vtnet_rxq_csum_data_valid(struct vtnet_rxq *rxq, struct mbuf *m, + uint16_t etype, int hoff, struct virtio_net_hdr *hdr __unused) { - const struct ether_header *eh; +#if 0 struct vtnet_softc *sc; - int hoff, protocol; - uint16_t etype; - bool isipv6; - - KASSERT(hdr->flags & - (VIRTIO_NET_HDR_F_NEEDS_CSUM | VIRTIO_NET_HDR_F_DATA_VALID), - ("%s: missing checksum offloading flag %x", __func__, hdr->flags)); - - eh = mtod(m, const struct ether_header *); - etype = ntohs(eh->ether_type); - if (etype == ETHERTYPE_VLAN) { - /* TODO BMV: Handle QinQ. */ - const struct ether_vlan_header *evh = - mtod(m, const struct ether_vlan_header *); - etype = ntohs(evh->evl_proto); - hoff = sizeof(struct ether_vlan_header); - } else - hoff = sizeof(struct ether_header); +#endif + int protocol; +#if 0 sc = rxq->vtnrx_sc; +#endif - /* Check whether ethernet type is IP or IPv6, and get protocol. */ switch (etype) { #if defined(INET) case ETHERTYPE_IP: - if (__predict_false(m->m_len < hoff + sizeof(struct ip))) { - sc->vtnet_stats.rx_csum_inaccessible_ipproto++; - return (1); - } else { + if (__predict_false(m->m_len < hoff + sizeof(struct ip))) + protocol = IPPROTO_DONE; + else { struct ip *ip = (struct ip *)(m->m_data + hoff); protocol = ip->ip_p; } - isipv6 = false; break; #endif #if defined(INET6) case ETHERTYPE_IPV6: if (__predict_false(m->m_len < hoff + sizeof(struct ip6_hdr)) - || ip6_lasthdr(m, hoff, IPPROTO_IPV6, &protocol) < 0) { - sc->vtnet_stats.rx_csum_inaccessible_ipproto++; - return (1); - } - isipv6 = true; + || ip6_lasthdr(m, hoff, IPPROTO_IPV6, &protocol) < 0) + protocol = IPPROTO_DONE; break; #endif default: - sc->vtnet_stats.rx_csum_bad_ethtype++; - return (1); + protocol = IPPROTO_DONE; + break; } - /* Check whether protocol is TCP or UDP. */ switch (protocol) { case IPPROTO_TCP: case IPPROTO_UDP: + m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; + m->m_pkthdr.csum_data = 0xFFFF; break; default: /* * FreeBSD does not support checksum offloading of this - * protocol here. + * protocol. Let the stack re-verify the checksum later + * if the protocol is supported. */ - sc->vtnet_stats.rx_csum_bad_ipproto++; - return (1); +#if 0 + if_printf(sc->vtnet_ifp, + "%s: checksum offload of unsupported protocol " + "etype=%#x protocol=%d csum_start=%d csum_offset=%d\n", + __func__, etype, protocol, hdr->csum_start, + hdr->csum_offset); +#endif + break; } + return (0); +} + +static int +vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, + struct virtio_net_hdr *hdr) +{ + const struct ether_header *eh; + int hoff; + uint16_t etype; + + eh = mtod(m, const struct ether_header *); + etype = ntohs(eh->ether_type); + if (etype == ETHERTYPE_VLAN) { + /* TODO BMV: Handle QinQ. */ + const struct ether_vlan_header *evh = + mtod(m, const struct ether_vlan_header *); + etype = ntohs(evh->evl_proto); + hoff = sizeof(struct ether_vlan_header); + } else + hoff = sizeof(struct ether_header); + if (hdr->flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) - return (vtnet_rxq_csum_needs_csum(rxq, m, isipv6, protocol, - hdr)); + return (vtnet_rxq_csum_needs_csum(rxq, m, etype, hoff, hdr)); else /* VIRTIO_NET_HDR_F_DATA_VALID */ - vtnet_rxq_csum_data_valid(rxq, m, protocol); - - return (0); + return (vtnet_rxq_csum_data_valid(rxq, m, etype, hoff, hdr)); } static void @@ -2497,10 +2498,6 @@ vtnet_txq_offload(struct vtnet_txq *txq, struct mbuf *m, hdr->csum_start = vtnet_gtoh16(sc, csum_start); hdr->csum_offset = vtnet_gtoh16(sc, m->m_pkthdr.csum_data); txq->vtntx_stats.vtxs_csum++; - } else if ((flags & (CSUM_DATA_VALID | CSUM_PSEUDO_HDR)) && - (proto == IPPROTO_TCP || proto == IPPROTO_UDP) && - (m->m_pkthdr.csum_data == 0xFFFF)) { - hdr->flags |= VIRTIO_NET_HDR_F_DATA_VALID; } if (flags & (CSUM_IP_TSO | CSUM_IP6_TSO)) { @@ -2614,8 +2611,7 @@ vtnet_txq_encap(struct vtnet_txq *txq, struct mbuf **m_head, int flags) m->m_flags &= ~M_VLANTAG; } - if (m->m_pkthdr.csum_flags & - (VTNET_CSUM_ALL_OFFLOAD | CSUM_DATA_VALID)) { + if (m->m_pkthdr.csum_flags & VTNET_CSUM_ALL_OFFLOAD) { m = vtnet_txq_offload(txq, m, hdr); if ((*m_head = m) == NULL) { error = ENOBUFS; @@ -4325,9 +4321,9 @@ vtnet_setup_stat_sysctl(struct sysctl_ctx_list *ctx, SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_bad_offset", CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_bad_offset, "Received checksum offloaded buffer with incorrect offset"); - SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_inaccessible_ipproto", - CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_inaccessible_ipproto, - "Received checksum offloaded buffer with inaccessible IP protocol"); + SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_bad_proto", + CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_bad_proto, + "Received checksum offloaded buffer with incorrect protocol"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_csum_failed", CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_STATS, sc, 0, vtnet_sysctl_rx_csum_failed, "QU", diff --git a/sys/dev/virtio/network/if_vtnetvar.h b/sys/dev/virtio/network/if_vtnetvar.h index cab7ced639a7..0144b0f3232d 100644 --- a/sys/dev/virtio/network/if_vtnetvar.h +++ b/sys/dev/virtio/network/if_vtnetvar.h @@ -46,7 +46,7 @@ struct vtnet_statistics { uint64_t rx_csum_bad_ethtype; uint64_t rx_csum_bad_ipproto; uint64_t rx_csum_bad_offset; - uint64_t rx_csum_inaccessible_ipproto; + uint64_t rx_csum_bad_proto; uint64_t tx_csum_unknown_ethtype; uint64_t tx_csum_proto_mismatch; uint64_t tx_tso_not_tcp; From nobody Mon Sep 8 20:43:01 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLJn13lSSz675Sf; Mon, 08 Sep 2025 20:43:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLJn1332Dz44wv; Mon, 08 Sep 2025 20:43:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757364181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dSm0epdFL8bT4Om1Q4Ws2B+sgbdJunoOi8d1bsnWHfI=; b=v9DHnkLIRgRTF3Ku0hfllgZz0K1xrZLjGjqI+chouLzZDpgN6DHK72Sgcz9nyRZRJuQYFu 1N671JSeu6/VYdR8vrBgWK0eBT5gSFtpZYjPmN1IAV/kup1+B3IMkNz6lHyArlHYEogOxb OXufYi2J5nCGzzuNzP3jbwcrTnj6Y8HMPUcfo1j0ChnHCjV+ya8WiWgAuDFLOWjp22bNXe CdAzhiFUDo6dWPj7WlXerrkMB5RHNhUnHJzQzM+k732GWAD4rjTYBaC1invbcikd5ivVgl AcUpGwYyKyqCbOqaP+sBJW4IvQ5/IbYID+c0KY3tCbwJsvR+73PnlccVzy8OiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757364181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dSm0epdFL8bT4Om1Q4Ws2B+sgbdJunoOi8d1bsnWHfI=; b=xRu/VmDxkztCcnXFhcHRxzoFwKPk3xFbxaU/3nDa4yGyjDrAW7EY5624R/FWdF6smTvxFo 82oHF20ilErUZDqxaXbp3Gh1z1ni72GiLWeISH8dtC4FE7UG3zxDxu2VRJTdy9KJdBhXAP 712gR5476pxKMGwQllXvBL2YCyZmp+VKSUl47/wneUqpgG795VtMwQUWEjuT2HPARE4P0s g5u6Yf1XB9YcGd6TgDFnvaQgo/vQzP8SLhrmGloZKX21h65ZpexbiRx79OJ7cESoow2FZE VzggY71AcmmZ8HUsjsSaBJgMJNWwLObNMeKXF2jZ4ircb9M1efMD6ytaPPWWkA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757364181; a=rsa-sha256; cv=none; b=dSnUZgQoV0fzWSGAudSx0Z9o77h1DqYIZMgAn+Xmz8RVOcjazAIxpEBGuw1WVoRen6IJ68 uBdDUGbIwj5ttSlMTpPT5saxlvXfohmRNPTEF1MmPYwb6ZrPh/OGBtYOxBoMHJXTby0Us+ DBEsCkwdUaCM5yATEMhfsoDvSIOw0UK3aikPywvyZTii8ddKDdJuUlEu6u8MXT1lk2hO0Y DxRmHmMn1B3KeH2/QxobOZUH0O7xbOEUUj36dh1B91Isgq2G85RY4xPuZ52MHlR8Ykqn4d tJ14/nuNcRkH+5ARWDrXJvKxbQs7edLrjq6RWno6jENFJSpRmtSr6rVyBOiRAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLJn12bl5z1LGx; Mon, 08 Sep 2025 20:43: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 588Kh1fe078227; Mon, 8 Sep 2025 20:43:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588Kh1Zp078224; Mon, 8 Sep 2025 20:43:01 GMT (envelope-from git) Date: Mon, 8 Sep 2025 20:43:01 GMT Message-Id: <202509082043.588Kh1Zp078224@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 3008f30d2c2c - main - vtnet: improve checksum offloading List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3008f30d2c2cabdd7e17f7fb922139da8681ffbd Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=3008f30d2c2cabdd7e17f7fb922139da8681ffbd commit 3008f30d2c2cabdd7e17f7fb922139da8681ffbd Author: Timo Völker AuthorDate: 2025-09-08 20:38:49 +0000 Commit: Michael Tuexen CommitDate: 2025-09-08 20:38:49 +0000 vtnet: improve checksum offloading When transmitting a packet over the vtnet interface, map the csum flags CSUM_DATA_VALID | CSUM_PSEUDO_HDR to the virtio flag VIRTIO_NET_HDR_F_DATA_VALID. When receiving a packet over the virtio network channel, translate the virtio flag VIRTIO_NET_HDR_F_NEEDS_CSUM not to CSUM_DATA_VALID | CSUM_PSEUDO_HDR, but to CSUM_TCP, CSUM_TCP_IPV6, CSUM_UDP, or CSUM_UDP_IPV6. The second change fixes a series of issue related to checksum offloading for if_vtnet. While there, improve the stats counters to allow a detailed view on what is going on in relation to checksum offloading. PR: 165059 Reviewed by: tuexen, manpages MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D51686 --- share/man/man4/vtnet.4 | 28 +++-- sys/dev/virtio/network/if_vtnet.c | 220 ++++++++++++++++++----------------- sys/dev/virtio/network/if_vtnetvar.h | 2 +- 3 files changed, 132 insertions(+), 118 deletions(-) diff --git a/share/man/man4/vtnet.4 b/share/man/man4/vtnet.4 index 073383df11ff..1df79da5f42e 100644 --- a/share/man/man4/vtnet.4 +++ b/share/man/man4/vtnet.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 3, 2025 +.Dd September 8, 2025 .Dt VTNET 4 .Os .Sh NAME @@ -153,7 +153,14 @@ The number of times the receive interrupt handler was rescheduled. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .host_lro The number of times TCP large receive offload was performed. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed -Currently not used. +The number of times a packet with a request for receive or transmit checksum +offloading was received and this request failed. +The different reasons for the failure are counted by +.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto , +.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto , +.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype , +and +.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset . .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum The number of times receive checksum offloading for UDP or TCP was performed. .It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .ierrors @@ -213,18 +220,21 @@ over all receive queues of the interface. The sum of .Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed over all receive queues of the interface. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_proto -Currently unused. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto +The number of times a packet with a request for receive or transmit checksum +offloading was received where the IP protocol was not accessible. .It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset -Currently unused. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto -Currently unused. -.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype The number of times fixing the checksum required by .Va hw.vtnet.fixup_needs_csum or .Va hw.vtnet. Ns Ar X Ns Va .fixup_needs_csum -was attempted for a packet with an EtherType other than IPv4 or IPv6. +was attempted for a packet where the csum is not located in the first mbuf. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto +The number of times a packet with a request for receive or transmit checksum +offloading was received where the IP protocol was neither TCP nor UDP. +.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype +The number of times a packet with a request for receive or transmit checksum +offloading was received where the EtherType was neither IPv4 nor IPv6. .It Va dev.vtnet. Ns Ar X Ns Va .rx_mergeable_failed The number of times receiving a mergable buffer failed. .It Va dev.vtnet. Ns Ar X Ns Va .rx_enq_replacement_failed diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index afda5157a624..73f27ac147ff 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -134,9 +134,9 @@ static int vtnet_rxq_replace_buf(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_enqueue_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_new_buf(struct vtnet_rxq *); static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *, struct mbuf *, - uint16_t, int, struct virtio_net_hdr *); -static int vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, - uint16_t, int, struct virtio_net_hdr *); + bool, int, struct virtio_net_hdr *); +static void vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, + int); static int vtnet_rxq_csum(struct vtnet_rxq *, struct mbuf *, struct virtio_net_hdr *); static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *, int); @@ -1762,162 +1762,161 @@ vtnet_rxq_new_buf(struct vtnet_rxq *rxq) } static int -vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, uint16_t etype, - int hoff, struct virtio_net_hdr *hdr) +vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, bool isipv6, + int protocol, struct virtio_net_hdr *hdr) { struct vtnet_softc *sc; - int error; - sc = rxq->vtnrx_sc; + /* + * The packet is likely from another VM on the same host or from the + * host that itself performed checksum offloading so Tx/Rx is basically + * a memcpy and the checksum has little value so far. + */ + + KASSERT(protocol == IPPROTO_TCP || protocol == IPPROTO_UDP, + ("%s: unsupported IP protocol %d", __func__, protocol)); /* - * NEEDS_CSUM corresponds to Linux's CHECKSUM_PARTIAL, but FreeBSD does - * not have an analogous CSUM flag. The checksum has been validated, - * but is incomplete (TCP/UDP pseudo header). - * - * The packet is likely from another VM on the same host that itself - * performed checksum offloading so Tx/Rx is basically a memcpy and - * the checksum has little value. - * - * Default to receiving the packet as-is for performance reasons, but - * this can cause issues if the packet is to be forwarded because it - * does not contain a valid checksum. This patch may be helpful: - * https://reviews.freebsd.org/D6611. In the meantime, have the driver - * compute the checksum if requested. - * - * BMV: Need to add an CSUM_PARTIAL flag? + * If the user don't want us to fix it up here by computing the + * checksum, just forward the order to compute the checksum by setting + * the corresponding mbuf flag (e.g., CSUM_TCP). */ + sc = rxq->vtnrx_sc; if ((sc->vtnet_flags & VTNET_FLAG_FIXUP_NEEDS_CSUM) == 0) { - error = vtnet_rxq_csum_data_valid(rxq, m, etype, hoff, hdr); - return (error); + switch (protocol) { + case IPPROTO_TCP: + m->m_pkthdr.csum_flags |= + (isipv6 ? CSUM_TCP_IPV6 : CSUM_TCP); + break; + case IPPROTO_UDP: + m->m_pkthdr.csum_flags |= + (isipv6 ? CSUM_UDP_IPV6 : CSUM_UDP); + break; + } + m->m_pkthdr.csum_data = hdr->csum_offset; + return (0); } /* * Compute the checksum in the driver so the packet will contain a * valid checksum. The checksum is at csum_offset from csum_start. */ - switch (etype) { -#if defined(INET) || defined(INET6) - case ETHERTYPE_IP: - case ETHERTYPE_IPV6: { - int csum_off, csum_end; - uint16_t csum; + int csum_off, csum_end; + uint16_t csum; - csum_off = hdr->csum_start + hdr->csum_offset; - csum_end = csum_off + sizeof(uint16_t); + csum_off = hdr->csum_start + hdr->csum_offset; + csum_end = csum_off + sizeof(uint16_t); - /* Assume checksum will be in the first mbuf. */ - if (m->m_len < csum_end || m->m_pkthdr.len < csum_end) - return (1); - - /* - * Like in_delayed_cksum()/in6_delayed_cksum(), compute the - * checksum and write it at the specified offset. We could - * try to verify the packet: csum_start should probably - * correspond to the start of the TCP/UDP header. - * - * BMV: Need to properly handle UDP with zero checksum. Is - * the IPv4 header checksum implicitly validated? - */ - csum = in_cksum_skip(m, m->m_pkthdr.len, hdr->csum_start); - *(uint16_t *)(mtodo(m, csum_off)) = csum; - m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; - m->m_pkthdr.csum_data = 0xFFFF; - break; - } -#endif - default: - sc->vtnet_stats.rx_csum_bad_ethtype++; + /* Assume checksum will be in the first mbuf. */ + if (m->m_len < csum_end || m->m_pkthdr.len < csum_end) { + sc->vtnet_stats.rx_csum_bad_offset++; return (1); } + /* + * Like in_delayed_cksum()/in6_delayed_cksum(), compute the + * checksum and write it at the specified offset. We could + * try to verify the packet: csum_start should probably + * correspond to the start of the TCP/UDP header. + * + * BMV: Need to properly handle UDP with zero checksum. Is + * the IPv4 header checksum implicitly validated? + */ + csum = in_cksum_skip(m, m->m_pkthdr.len, hdr->csum_start); + *(uint16_t *)(mtodo(m, csum_off)) = csum; + m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; + m->m_pkthdr.csum_data = 0xFFFF; + return (0); } +static void +vtnet_rxq_csum_data_valid(struct vtnet_rxq *rxq, struct mbuf *m, int protocol) +{ + KASSERT(protocol == IPPROTO_TCP || protocol == IPPROTO_UDP, + ("%s: unsupported IP protocol %d", __func__, protocol)); + + m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; + m->m_pkthdr.csum_data = 0xFFFF; +} + static int -vtnet_rxq_csum_data_valid(struct vtnet_rxq *rxq, struct mbuf *m, - uint16_t etype, int hoff, struct virtio_net_hdr *hdr __unused) +vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, + struct virtio_net_hdr *hdr) { -#if 0 + const struct ether_header *eh; struct vtnet_softc *sc; -#endif - int protocol; + int hoff, protocol; + uint16_t etype; + bool isipv6; + + KASSERT(hdr->flags & + (VIRTIO_NET_HDR_F_NEEDS_CSUM | VIRTIO_NET_HDR_F_DATA_VALID), + ("%s: missing checksum offloading flag %x", __func__, hdr->flags)); + + eh = mtod(m, const struct ether_header *); + etype = ntohs(eh->ether_type); + if (etype == ETHERTYPE_VLAN) { + /* TODO BMV: Handle QinQ. */ + const struct ether_vlan_header *evh = + mtod(m, const struct ether_vlan_header *); + etype = ntohs(evh->evl_proto); + hoff = sizeof(struct ether_vlan_header); + } else + hoff = sizeof(struct ether_header); -#if 0 sc = rxq->vtnrx_sc; -#endif + /* Check whether ethernet type is IP or IPv6, and get protocol. */ switch (etype) { #if defined(INET) case ETHERTYPE_IP: - if (__predict_false(m->m_len < hoff + sizeof(struct ip))) - protocol = IPPROTO_DONE; - else { + if (__predict_false(m->m_len < hoff + sizeof(struct ip))) { + sc->vtnet_stats.rx_csum_inaccessible_ipproto++; + return (1); + } else { struct ip *ip = (struct ip *)(m->m_data + hoff); protocol = ip->ip_p; } + isipv6 = false; break; #endif #if defined(INET6) case ETHERTYPE_IPV6: if (__predict_false(m->m_len < hoff + sizeof(struct ip6_hdr)) - || ip6_lasthdr(m, hoff, IPPROTO_IPV6, &protocol) < 0) - protocol = IPPROTO_DONE; + || ip6_lasthdr(m, hoff, IPPROTO_IPV6, &protocol) < 0) { + sc->vtnet_stats.rx_csum_inaccessible_ipproto++; + return (1); + } + isipv6 = true; break; #endif default: - protocol = IPPROTO_DONE; - break; + sc->vtnet_stats.rx_csum_bad_ethtype++; + return (1); } + /* Check whether protocol is TCP or UDP. */ switch (protocol) { case IPPROTO_TCP: case IPPROTO_UDP: - m->m_pkthdr.csum_flags |= CSUM_DATA_VALID | CSUM_PSEUDO_HDR; - m->m_pkthdr.csum_data = 0xFFFF; break; default: /* * FreeBSD does not support checksum offloading of this - * protocol. Let the stack re-verify the checksum later - * if the protocol is supported. + * protocol here. */ -#if 0 - if_printf(sc->vtnet_ifp, - "%s: checksum offload of unsupported protocol " - "etype=%#x protocol=%d csum_start=%d csum_offset=%d\n", - __func__, etype, protocol, hdr->csum_start, - hdr->csum_offset); -#endif - break; + sc->vtnet_stats.rx_csum_bad_ipproto++; + return (1); } - return (0); -} - -static int -vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, - struct virtio_net_hdr *hdr) -{ - const struct ether_header *eh; - int hoff; - uint16_t etype; - - eh = mtod(m, const struct ether_header *); - etype = ntohs(eh->ether_type); - if (etype == ETHERTYPE_VLAN) { - /* TODO BMV: Handle QinQ. */ - const struct ether_vlan_header *evh = - mtod(m, const struct ether_vlan_header *); - etype = ntohs(evh->evl_proto); - hoff = sizeof(struct ether_vlan_header); - } else - hoff = sizeof(struct ether_header); - if (hdr->flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) - return (vtnet_rxq_csum_needs_csum(rxq, m, etype, hoff, hdr)); + return (vtnet_rxq_csum_needs_csum(rxq, m, isipv6, protocol, + hdr)); else /* VIRTIO_NET_HDR_F_DATA_VALID */ - return (vtnet_rxq_csum_data_valid(rxq, m, etype, hoff, hdr)); + vtnet_rxq_csum_data_valid(rxq, m, protocol); + + return (0); } static void @@ -2498,6 +2497,10 @@ vtnet_txq_offload(struct vtnet_txq *txq, struct mbuf *m, hdr->csum_start = vtnet_gtoh16(sc, csum_start); hdr->csum_offset = vtnet_gtoh16(sc, m->m_pkthdr.csum_data); txq->vtntx_stats.vtxs_csum++; + } else if ((flags & (CSUM_DATA_VALID | CSUM_PSEUDO_HDR)) && + (proto == IPPROTO_TCP || proto == IPPROTO_UDP) && + (m->m_pkthdr.csum_data == 0xFFFF)) { + hdr->flags |= VIRTIO_NET_HDR_F_DATA_VALID; } if (flags & (CSUM_IP_TSO | CSUM_IP6_TSO)) { @@ -2611,7 +2614,8 @@ vtnet_txq_encap(struct vtnet_txq *txq, struct mbuf **m_head, int flags) m->m_flags &= ~M_VLANTAG; } - if (m->m_pkthdr.csum_flags & VTNET_CSUM_ALL_OFFLOAD) { + if (m->m_pkthdr.csum_flags & + (VTNET_CSUM_ALL_OFFLOAD | CSUM_DATA_VALID)) { m = vtnet_txq_offload(txq, m, hdr); if ((*m_head = m) == NULL) { error = ENOBUFS; @@ -4321,9 +4325,9 @@ vtnet_setup_stat_sysctl(struct sysctl_ctx_list *ctx, SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_bad_offset", CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_bad_offset, "Received checksum offloaded buffer with incorrect offset"); - SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_bad_proto", - CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_bad_proto, - "Received checksum offloaded buffer with incorrect protocol"); + SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, "rx_csum_inaccessible_ipproto", + CTLFLAG_RD | CTLFLAG_STATS, &stats->rx_csum_inaccessible_ipproto, + "Received checksum offloaded buffer with inaccessible IP protocol"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_csum_failed", CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_STATS, sc, 0, vtnet_sysctl_rx_csum_failed, "QU", diff --git a/sys/dev/virtio/network/if_vtnetvar.h b/sys/dev/virtio/network/if_vtnetvar.h index 0144b0f3232d..cab7ced639a7 100644 --- a/sys/dev/virtio/network/if_vtnetvar.h +++ b/sys/dev/virtio/network/if_vtnetvar.h @@ -46,7 +46,7 @@ struct vtnet_statistics { uint64_t rx_csum_bad_ethtype; uint64_t rx_csum_bad_ipproto; uint64_t rx_csum_bad_offset; - uint64_t rx_csum_bad_proto; + uint64_t rx_csum_inaccessible_ipproto; uint64_t tx_csum_unknown_ethtype; uint64_t tx_csum_proto_mismatch; uint64_t tx_tso_not_tcp; From nobody Mon Sep 8 20:50:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLJyC5h6jz675pK; Mon, 08 Sep 2025 20:50:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLJyC53Jxz45lB; Mon, 08 Sep 2025 20:50:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757364659; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3un+smscs+deb5v00VGqbgH8LP5vYlIH6/9e0nwmtbA=; b=MA0pco+neiL0yuC+X9QlnD4R1hACgFiCAWEkbcZMo7cnRbXSjGHGQuKsbNmDDwsIMhJ5eQ nZJbDC3kxERYeEwoN7i/nonMEawnbp7scYcXyQhweSwxvi9i8rZeQYveAMsc6UGT2IJgYs TjlxrY8wbgdto2F43slOMzZ9aXiJv4vOFnx81nc+eXXK1HL+Tm70tcrpO0sL0PBwYHNeMN taqwUw1xVB6t2Ueoq5FbSNuXXE21aU1j95mttaWH/irxnFEf2us9S4WVlHSjo8wDrYd9Uk HtVwspUjNXXfkhLCPx+wZEIglGc3NjU8ZMI/B63Y0oUGqI8pYqWY1uvwzdAjjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757364659; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3un+smscs+deb5v00VGqbgH8LP5vYlIH6/9e0nwmtbA=; b=wC+Vfcw/FBB+p93uc5UTdf0XAr22nDOgNvlGhZi/p2HqYJLzVEZtMhzdhSKm90or11/jVc sDAih3kdWk0IH1ge/uu0iVplhKlwsEYyCt0LS4dsgazGQ8v7ehFhEz8egXVJHvqKi0gCzu sZRnTywHpKzh+0PqVJQ2aUDKWGh16jCvO6MDOp76v5easjU5OcryiROaslSqIDVYL7LOFb 2VtkbaascB4v334DdIN7d+jpc3C9S7Rl7tdzBBPZoFRGm1bRtoEtgEMaI+CgdC2OqlRzlR CJcqd6yi8GKvFq6yD73wUm2l0cnNFlllN2UIkdHHI69WL/nEWXSCSq9C3xKojw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757364659; a=rsa-sha256; cv=none; b=H1X6VY1NrL8Ik8sFU1o5vNNicM32rcDzyxxIvjSEnP1V47YbayPgTGiDiBzjSvjCTKQKed ReUABenoBkzHA9mpJZihxd7RRPTwjHVBVjyTw3ekwI4fhoLAJMvVsPDQXsoOrmHNrdVYVm v1W2vBIxHqeHfahZnMFL+BS2vndbOFdZhFGztDjARQNV3VLakRRb18RRir7Oc/SBNVOGc6 tyGzYPdyzTlrN5kS+8eY44sWlNwBYs4xiovAr4YAlCmIXz8VL6TKTHyS86Wi6Tb2VvHnjd BOUFNl59C1DVVwOY+gtgdAymoU8YhWtz777NEpkEN22PVOakXJ9XjDs2pwhI2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLJyC4QRbz1LLC; Mon, 08 Sep 2025 20:50:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 588KoxAK091345; Mon, 8 Sep 2025 20:50:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588Kox0U091342; Mon, 8 Sep 2025 20:50:59 GMT (envelope-from git) Date: Mon, 8 Sep 2025 20:50:59 GMT Message-Id: <202509082050.588Kox0U091342@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 614e9b33bf55 - main - vtnet: fix compilation for NOIP configs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 614e9b33bf5594d9d09b5d296afa4f3aa6971823 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=614e9b33bf5594d9d09b5d296afa4f3aa6971823 commit 614e9b33bf5594d9d09b5d296afa4f3aa6971823 Author: Michael Tuexen AuthorDate: 2025-09-08 20:46:41 +0000 Commit: Michael Tuexen CommitDate: 2025-09-08 20:46:41 +0000 vtnet: fix compilation for NOIP configs Reported by: bz Fixes: 3008f30d2c2c ("vtnet: improve checksum offloading") MFC after: 3 days --- sys/dev/virtio/network/if_vtnet.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 73f27ac147ff..528ff3372097 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -133,12 +133,14 @@ static int vtnet_rxq_replace_lro_nomrg_buf(struct vtnet_rxq *, static int vtnet_rxq_replace_buf(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_enqueue_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_new_buf(struct vtnet_rxq *); +#if defined(INET) || defined(INET6) static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *, struct mbuf *, bool, int, struct virtio_net_hdr *); static void vtnet_rxq_csum_data_valid(struct vtnet_rxq *, struct mbuf *, int); static int vtnet_rxq_csum(struct vtnet_rxq *, struct mbuf *, struct virtio_net_hdr *); +#endif static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *, int); static void vtnet_rxq_discard_buf(struct vtnet_rxq *, struct mbuf *); static int vtnet_rxq_merged_eof(struct vtnet_rxq *, struct mbuf *, int); @@ -1761,6 +1763,7 @@ vtnet_rxq_new_buf(struct vtnet_rxq *rxq) return (error); } +#if defined(INET) || defined(INET6) static int vtnet_rxq_csum_needs_csum(struct vtnet_rxq *rxq, struct mbuf *m, bool isipv6, int protocol, struct virtio_net_hdr *hdr) @@ -1918,6 +1921,7 @@ vtnet_rxq_csum(struct vtnet_rxq *rxq, struct mbuf *m, return (0); } +#endif static void vtnet_rxq_discard_merged_bufs(struct vtnet_rxq *rxq, int nbufs) @@ -2040,10 +2044,15 @@ vtnet_rxq_input(struct vtnet_rxq *rxq, struct mbuf *m, if (hdr->flags & (VIRTIO_NET_HDR_F_NEEDS_CSUM | VIRTIO_NET_HDR_F_DATA_VALID)) { +#if defined(INET) || defined(INET6) if (vtnet_rxq_csum(rxq, m, hdr) == 0) rxq->vtnrx_stats.vrxs_csum++; else rxq->vtnrx_stats.vrxs_csum_failed++; +#else + sc->vtnet_stats.rx_csum_bad_ethtype++; + rxq->vtnrx_stats.vrxs_csum_failed++; +#endif } if (hdr->gso_size != 0) { From nobody Mon Sep 8 21:13:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLKRc2DdRz676kD; Mon, 08 Sep 2025 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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLKRc1N21z47R0; Mon, 08 Sep 2025 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=1757365980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qKsWS9cn8QV89QOin/n4Xrc6p42dy0rmYcNP0Oxu0XI=; b=UFwWP4nmt7qFsmZrqP5EJno+qB++vnyMneea0/WirZmrFBP51J4NlW14rFA6rmg9XNWS7z R6DI2ioiitSt9avZtStq//lkbLvEIn8F4JiBjWIrTLj5wOHOjDN4ZRZPuZtduGva9n/aiM Npd987LeqijV53y/MgkATNA3lipV2adYF6a9SxA6oOl6RawaWjK1fq5glBT0jo8UY7NpkM 9bI+jnWxRIBsS8ssBUTJNqhESmkjSc2lTim7Z+69JLm2txdB325V4fwMFkyeE1fxyynntZ kFaih4oacVcRnAy4oXE5t0Z5N/+YdBNVxt9IqRuKUstGm859jwk9EL+PzWNnRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757365980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qKsWS9cn8QV89QOin/n4Xrc6p42dy0rmYcNP0Oxu0XI=; b=m+KvwqfempQeNuqcAJ/WGeTq8RNgMUuk/2iA3T464aE2AYF6O+0uBR+E9nTDi8iAqaV53F El/VCwN4kcPbJXad7K0qbBnlMhrw1pJhFqjQf6P2tvYsOkSIsMTICb13CxDhA0ClswCDXu drt8L4twz8AhDx3eSG+/IEvJqB7UbJNlMIKNxaHUEXQq+As8tWHDI7FU40AMGQU86/23BX b3Zm0kHTcUJQpeDa5S/m6Y/cOjdV1d8jMwKbf3y8xX4tTnSm7XAVeLVCkxbwxSkGLG5i6n Q5fAZvUlruWhWlkabFTEI7CRN/rZhBdLPQs6e2GgQ4P++noI0a2QFmNdlO9LCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757365980; a=rsa-sha256; cv=none; b=W31BXXRipy/ii66WcmsOeTflwGJlBWPe37agsL51ckXnSrZN7v5AMJD46ON+usz+IE6t9K 3qLb55EOFqvi7t/Ds2axsPHWSReed56+01wA9hQ6dr3JvU4Uwm+GKzT7jbPD9tnFfjJ5zr hmBD0qLjaBqoreGry/WJXGXK7lkGXeZ1RM3A50Fs1cRIe2vBpcnqUdFWj843BhGxc+3ZLs z8EQbLxUI3mk536uzHLLmsdyqexUi6IYDMZfup0+zzsL6ZvixgX94rk8WsnoM38J8hNM0R pPI/7jToKSE+h3ImLgPTVZ5+IxuSmswedLaAMqhOpiEZFsZ4UsV6C88j/ct+6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLKRc0y9Jz1LQC; Mon, 08 Sep 2025 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 588LD0Nk035617; Mon, 8 Sep 2025 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 588LD0cq035614; Mon, 8 Sep 2025 21:13:00 GMT (envelope-from git) Date: Mon, 8 Sep 2025 21:13:00 GMT Message-Id: <202509082113.588LD0cq035614@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 952ce991ec6c - main - nvme: Linux compat: don't filter & 0x3. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 952ce991ec6c699ef59528731a9af75152767ef0 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=952ce991ec6c699ef59528731a9af75152767ef0 commit 952ce991ec6c699ef59528731a9af75152767ef0 Author: Warner Losh AuthorDate: 2025-09-08 21:09:49 +0000 Commit: Warner Losh CommitDate: 2025-09-08 21:09:49 +0000 nvme: Linux compat: don't filter & 0x3. Strictly speaking, opc & 0x3 == 3 is input and output at the same time. This is undefined, in general. But for vendor commands, it's vendor specific. Linux allows it generally and treats it as a read, which is what we do too, so remove this check to be more compatible with Linux's behavior (which we're trying to emulate). Sponsored by: Netflix --- sys/dev/nvme/nvme_ctrlr.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index fc912c1342f4..3a1894bf754d 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -1417,14 +1417,6 @@ nvme_ctrlr_linux_passthru_cmd(struct nvme_controller *ctrlr, npc->data_len, ctrlr->max_xfer_size); return (EIO); } - /* - * We only support data out or data in commands, but not both at - * once. However, there's some comands with lower bit cleared - * that are really read commands, so we should filter & 3 == 0, - * but don't. - */ - if ((npc->opcode & 0x3) == 3) - return (EINVAL); if (is_user) { ret = nvme_user_ioctl_req(npc->addr, npc->data_len, npc->opcode & 0x1, upages, nitems(upages), &npages, From nobody Mon Sep 8 22:05:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLLcg0lGdz67B0y; Mon, 08 Sep 2025 22:05:55 +0000 (UTC) (envelope-from wulf@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLLcg09Sxz3Gy2; Mon, 08 Sep 2025 22:05:55 +0000 (UTC) (envelope-from wulf@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757369155; 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=4+q8rtlEjXEvn6ps0kSzUHeBkPVrEFIIlQTUaJKQ2w8=; b=aMLSiMwQnh+WiFdOW60m+jz1c1lp2T5EjN7BpZkjoqsTrYRTAfduP62P9B6HgCd0/+BzAh g36FFHag/RxSYQp+yPoBat4N5PY4BwXRckbEhRG7p66AdYxLuv1zQrBmdxC2mXENz/xnlS QNGaXkVSPKBIbDbRxX+RIzDIDeJ40eQ5lDvAdgKIODORxD+m0ypeDOsJBnplIeenu5FJJv T71uoCEesS16bMehkXkh+kDrDMZsPvsbgEuatzY+A9MsZ/kbBXq2xUdZwFwWdps+dzCz+Q Yk2Trt1RqVHb0bb/j2YPuJEW8yKDDgD9+Kiuii5zJcOv0gp9p8DEbFpTxgTL0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757369155; 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=4+q8rtlEjXEvn6ps0kSzUHeBkPVrEFIIlQTUaJKQ2w8=; b=c6cTZC/aQZ2JkrtYzJYb+a0Y0oW8rUbivO4W9VUbg8D2Kkg5G5HVmSotbAz80y8Kpmekr4 UPK9Q0wiLilnrWyLlV6P+4vyW9/eVYVesCaRWIMm6WU44W8q0PuHrfXduzb+kYDYMUZA4u Svqpfo4bT/y9F8Fok/9iLJyDYUiTtyFMIUet8g9AE2gYcfCA7nb7Ppjl1O7bKXPeoLhruz KqZIbGMswhLYmlEX7Kohhl+FYTnIdT4wEO5GzUXVtQLjmTYh7NqkxXvCHx42ZBTD63eDBe 8VCpp7hfhFhEKewfZo8Eds14nm6bdh1aIXB+ojkqJefKSJYKP6irkmBj/uTesQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757369155; a=rsa-sha256; cv=none; b=smqZHANXfM5o63AF4Koc+5IJTyuVUbwbvhjpZOFF0HJVNFBUTCVm5Wo1NogDqGp6c3XSk6 zSI7vjJ9sQ/9QF8UJUQWC3zbEEvTsCeXaRKGL2OryFgBuBETX8TX0opQ9ffK5pmNzVxKE7 nv4oeALqv4FJ7aQtT4p4ep4MHlF2/zqjuZ9NT13/TAw1ZcJcTvitnyruWUDr9L52cKwRZE IzdR3hizAl4+jBGYynCa6haWi1E3a8IK9Djeu3VhQQVWSyuXOhKqIVpQbnXcL0OF8/wSww NXXL8YRZErerNyTw8tOT27ZlKovBY14HgYjzY4vkR2nFuufxzYlbFhsNAxfUPA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [192.168.0.30] (unknown [176.120.234.124]) (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: wulf) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cLLcf26XwznsG; Mon, 08 Sep 2025 22:05:54 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Message-ID: <8b371756-9962-4b7a-9a9e-e8a11cee7c2b@FreeBSD.org> Date: Tue, 9 Sep 2025 01:05:30 +0300 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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: aef807876c30 - main - moused(8): Add support for evdev protocol To: Oleg Nauman Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202509042108.584L86Ro060944@gitrepo.freebsd.org> <6ce0043d-2e1c-458f-9c8b-75605ee931b3@FreeBSD.org> Content-Language: en-US From: Vladimir Kondratyev In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 9/7/25 10:12, Oleg Nauman wrote: > On Sun, Sep 7, 2025 at 9:55 AM Vladimir Kondratyev wrote: >> >> On 9/7/25 09:41, Oleg Nauman wrote: >>> On Fri, Sep 5, 2025 at 12:08 AM Vladimir Kondratyev wrote: >>>> >>>> The branch main has been updated by wulf: >>>> >>>> URL: https://cgit.FreeBSD.org/src/commit/?id=aef807876c305587c60f73e2cd914115d22a53fd >>>> >>>> commit aef807876c305587c60f73e2cd914115d22a53fd >>>> Author: Vladimir Kondratyev >>>> AuthorDate: 2025-09-04 21:07:25 +0000 >>>> Commit: Vladimir Kondratyev >>>> CommitDate: 2025-09-04 21:07:25 +0000 >>>> >>>> moused(8): Add support for evdev protocol >>>> >>>> The new daemon have following properties as compared with previous >>>> incarnation: >>>> - evdev protocol support for mices and touchpads. Additionally to >>>> relative PS/2 and USB devices it enables console support for I2C/USB >>>> touchpads and bluetooth mices. >>>> - Other aged protocols like COM, raw PS/2 and X10 are dropped with only >>>> exception of sysmouse. For those who still use them there is an >>>> utility called msconvd(8). >>>> - single daemon per system where hotplug is processed via devd socket. >>>> Per device mode still supported too. >>>> - Configuration and quirks files in libinput-compatible format. >>>> Actually, the new moused config parser is taken from libinput. >>>> >>>> The moused(8) can work in 2 modes: >>>> 1. Evdev support mode. It enables all previously mentioned devices. >>>> It is enabled by deault. >>> >>> I think it is require hms driver corresponding entries to be added to >>> /etc/devd/moused.conf otherwise it breaks existing installations and >>> require >>> moused_enable="YES" to be set as workaround of this issue >> >> >> hms is loaded with devmatch entry in devd.conf rather than with moused one. >> moused entries are legacy and disabled by default with >> moused_nondefault_enable="NO" in /etc/defaults/rc.conf >> And moused_enable="YES" is not a workaround. It is how things supposed to be. > > Well, sorry I was not clear so I think it is some misunderstanding > devmatch supposed to load mouse support driver ( hms or ums ) while > devd entry supposed to unattended load moused if device supported by > ums driver was attached, so moused_enable="YES" was not required See https://reviews.freebsd.org/D52430 Thanks for explanations on issues in buggy moused script -- WBR Vladimir Kondratyev From nobody Mon Sep 8 22:06:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLLcm753gz67B9L; Mon, 08 Sep 2025 22:06:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLLcm6Smzz3H7Y; Mon, 08 Sep 2025 22:06:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757369160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YBUS0FdjqcPPASDtr/IgCczST5jSWHaVBM5iPaf9L1w=; b=c3zcJxQJ5UM0vgq3S+3EhFJh1fPuilPJLFunssngDl+1AYb1xfMdoGfL7bva8GWg8wr1WA iwgKK3xt2Snop5IvpkGvw2LhIqCi6B1B+20nuOf2TAXfWnOk2PZY5ktkUceO40Fq32pqYQ 68Iaqm2Zlv9PN7aTR2eqlJChvLMOqmEKqJ36/0mlevkJw6IIHVNtydVPDcGTtXTAYPHVqf 77sr8Mof5bwFIRKSnlCvyAQ5tuJfzSN2VNb4AP17GipBJ3OGlkYNZaEn3qobmv8/GuQgHT DjoC8rp2HWbX2/QgDsgBipVbicAcifhzxdxpytVtS4mG6gNv/8NPWrrB/d2t7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757369160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YBUS0FdjqcPPASDtr/IgCczST5jSWHaVBM5iPaf9L1w=; b=syvkeTuKrGVqnvKBs7uc9RD9POXg3XnbhlkQZIcDXdRzwCisMVQ4RQRUsO5TFXgvM2TQGp zXTHZHkciKW0bVMMLNMX+OuFLX59s38Ueln+64hwqBDxR6oKnJVA33xULRMySftVeIstfB sjedUJoNcAIeDT+RhMjCsIEVkhrCpdjNadSEth4Gk/NrYHdjZkwZJWJvAwQ/VISFFLLDsg 3a2d2+Vvh3tJjUDTwjfq1ATNqfwASOBZq9DOas9H36VWcTLxfB5sResXsFdVQKyLcf92e5 c8j0bcXECIoJKk3ac26rlwOq/G8ftZxP2xaNJWFtJhZg2lQuquE2dsfHttkD2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757369160; a=rsa-sha256; cv=none; b=WKvy0o5+EYMAK747hYM73IY2HfabPbUCUmWwjzXuyolo+NGMWOLXV8MX9GQlVTzB7ksqDL bCJR9TnzkuJOwgm/6t0kRzFlyA00yyb52JkF0bCdn7NGrn7VU5vfLeaMqERYb4LAwY+Pr9 G8+IvvJd/W6ZdsFzLOly5H5DuiDG4TiADLK1Pup94Mds561oWkwCRMrZxmKg4P7BnTm2w4 G5EqiFyExx9ZUIb4zm9ShoZ14MX/or6m4aQHMHr1ruMnvnP8Yljbo21wBX98OF0L1Xh8nA kmPfJs5hrvDKeDt6oA8fBfewL6b363WnIvUHpZo3TF8KQLlLF2Kap7VFZxLqQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLLcm5j7lz1N7T; Mon, 08 Sep 2025 22:06: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 588M60vV030011; Mon, 8 Sep 2025 22:06:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 588M60EK030008; Mon, 8 Sep 2025 22:06:00 GMT (envelope-from git) Date: Mon, 8 Sep 2025 22:06:00 GMT Message-Id: <202509082206.588M60EK030008@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 4729d5e2e2e3 - main - leap-seconds: Update to leap-seconds.3960835200 from IERS List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 4729d5e2e2e3013fe1aaf92d5d932a3414f22ab3 Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=4729d5e2e2e3013fe1aaf92d5d932a3414f22ab3 commit 4729d5e2e2e3013fe1aaf92d5d932a3414f22ab3 Author: Yasuhiro Kimura AuthorDate: 2025-09-07 11:38:46 +0000 Commit: Cy Schubert CommitDate: 2025-09-08 22:04:22 +0000 leap-seconds: Update to leap-seconds.3960835200 from IERS Current leap-seconds file has already expired on 28 June 2025 PR: 289352 Obtained from: https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.3960835200 MFC after: 3 days --- usr.sbin/ntp/ntpd/leap-seconds | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/ntp/ntpd/leap-seconds b/usr.sbin/ntp/ntpd/leap-seconds index da0efc8c8566..649a22c6278f 100644 --- a/usr.sbin/ntp/ntpd/leap-seconds +++ b/usr.sbin/ntp/ntpd/leap-seconds @@ -60,15 +60,15 @@ # # The following line shows the last update of this file in NTP timestamp: # -#$ 3929093563 +#$ 3960835200 # # 2) Expiration date of the file given on a semi-annual basis: last June or last December # -# File expires on 28 June 2025 +# File expires on 28 June 2026 # # Expire date in NTP timestamp: # -#@ 3960057600 +#@ 3991593600 # # # LIST OF LEAP SECONDS @@ -117,4 +117,4 @@ # please see the readme file in the 'source' directory : # https://hpiers.obspm.fr/iers/bul/bulc/ntp/sources/README # -#h be738595 57b0cf1b b0218343 fb77062f 5a775e7 +#h 49db2447 571e5e1b 2f002a53 9c8da8e4 39b8e49e From nobody Mon Sep 8 22:26:08 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLM445T7Tz67BpR; Mon, 08 Sep 2025 22:26:12 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLM444Z2Lz3K6P; Mon, 08 Sep 2025 22:26:12 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757370372; h=from:from:reply-to:subject: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=oKg3++C5gkMM3Vc7d2Fs3C4cv1dOXzHAuR9JWroPsWM=; b=L5e7MQ0zum/nn8wmjM1IZsc8CoxqbXFc2e0XmFrn8rgB+q8qzxh3Oh4D+egPjDwz918E/d BjvWmZ0ElG59poLYE+JppLRfKtLTUJrcSX1w3Ea+rLMwMF59McRE6r/UXJpiXUQznRgVo5 o28QL566VzqGe1v3IdBE3F0wYqmEnJffYxfw12YLwZ/QcX1xnLGS2O49Ivv/nj9EdhNnBT uYpfYAIEULKjpFp+UW/Ov2qwDwC9206xjSkBk8fHE18i6Wk+yMqMV2IFg5Y4szCEqn1Bxs klZmHmE/8M/wayln40Pz+oPHEw8CWoALi+yo4pFxmzRTD+7AVCGwBQ/As0+tFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757370372; h=from:from:reply-to:subject: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=oKg3++C5gkMM3Vc7d2Fs3C4cv1dOXzHAuR9JWroPsWM=; b=QeUwioLuqvlNZx5z24YeTTEsJcB/IJh6Nc4Pi0UXugkL8aQ+xU2yrUwLZ6YQetlnEe9iDm lXXdBi+GtfwjFowlAiK4tKPlbrNqxpPzORX9Z5TYpz7bRIY1VfXqcM8JgdUdKdiPjdY/Dm DBtS7zeoE60SKAE0pR1yAZHErr78AE2dlKVPVZU6Pg14jQOKyuNyxBpu0e1b8RraF+LbPO sWTN68teYxQvYXY6SUtfiTxHXH4c7z0yeOHNLxvSOYS2wPPy64tgym4KN/z9oRjs5KJLCC kAIVAjpayD6znNUGa5L7+clla816GRQw1riVmzWUBm+djyZ8R7LBsawubGnVmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757370372; a=rsa-sha256; cv=none; b=A2I9yFZLPuLg/EuYGaLvBED3X/on5D/fHKEiQTQ2e0+fM34jjw3g4OC5Yb+O/Ai6tUNC7Z /IQUofPa507Yjhku56/riHlz99bJEvA0FkrDhIUSzJuuve76YtIz3M8jrnseWN7c1p7IWG LghdFg2xTUPPRdItzbB+bY0kHtfIpzjOt1XVQClHgqIM+H97OxPUpGa+kEIQpB0XEyetyT gRo2RWOKCjmAz8CQvl/6Jh4mMMTse1pjU+4pdr4zbvCdkONKhoyO0Ov2jFBuVo5b8gu7KD ftLJr1pbebo4V6/l58CUBHMN3hAD+QdjAb/iYiqGUiG0iKZJwmpIc4mXJxbogw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from mail.xzibition.com (unknown [127.0.1.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 641BCCAE6; Mon, 08 Sep 2025 22:26:12 +0000 (-00) (envelope-from bdrewery@FreeBSD.org) Received: from localhost (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 81C32AE3C; Mon, 08 Sep 2025 15:26:11 -0700 (PDT) X-Virus-Scanned: amavis at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by localhost (mail.xzibition.com [172.31.3.2]) (amavis, port 10026) with LMTP id DV8ko1_XmJXh; Mon, 8 Sep 2025 15:26:09 -0700 (PDT) Message-ID: DKIM-Filter: OpenDKIM Filter v2.10.3 mail.xzibition.com 48888AE3A Date: Mon, 8 Sep 2025 15:26:08 -0700 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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: da50f49977cc - main - ifconfig: fix removing IPv6 addresses To: Kristof Provost , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202507291313.56TDDQFb089337@gitrepo.freebsd.org> Content-Language: en-US From: Bryan Drewery In-Reply-To: <202507291313.56TDDQFb089337@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Should this also be done for WITHOUT_NETLINK? > diff --git sbin/ifconfig/af_inet6.c sbin/ifconfig/af_inet6.c > index 7986edf490b4..e0f34f0c4d82 100644 > --- sbin/ifconfig/af_inet6.c > +++ sbin/ifconfig/af_inet6.c > @@ -753,7 +753,7 @@ static struct afswtch af_inet6 = { >  #ifdef WITHOUT_NETLINK >         .af_difaddr     = SIOCDIFADDR_IN6, >         .af_aifaddr     = SIOCAIFADDR_IN6, > -       .af_ridreq      = &in6_addreq, > +       .af_ridreq      = &in6_ridreq, >         .af_addreq      = &in6_addreq, >         .af_exec        = af_exec_ioctl, >  #else On 7/29/25 6:13 AM, Kristof Provost wrote: > The branch main has been updated by kp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=da50f49977cc4e6aae55cb2379313599249a8dd2 > > commit da50f49977cc4e6aae55cb2379313599249a8dd2 > Author: Kristof Provost > AuthorDate: 2025-07-29 09:50:11 +0000 > Commit: Kristof Provost > CommitDate: 2025-07-29 13:13:09 +0000 > > ifconfig: fix removing IPv6 addresses > > Sponsored by: Rubicon Communications, LLC ("Netgate") > --- > sbin/ifconfig/af_inet6.c | 2 +- > sbin/ifconfig/tests/inet6.sh | 30 ++++++++++++++++++++++++++++++ > 2 files changed, 31 insertions(+), 1 deletion(-) > > diff --git a/sbin/ifconfig/af_inet6.c b/sbin/ifconfig/af_inet6.c > index 17dc068ee875..7986edf490b4 100644 > --- a/sbin/ifconfig/af_inet6.c > +++ b/sbin/ifconfig/af_inet6.c > @@ -759,7 +759,7 @@ static struct afswtch af_inet6 = { > #else > .af_difaddr = NL_RTM_DELADDR, > .af_aifaddr = NL_RTM_NEWADDR, > - .af_ridreq = &in6_add, > + .af_ridreq = &in6_del, > .af_addreq = &in6_add, > .af_exec = in6_exec_nl, > #endif > diff --git a/sbin/ifconfig/tests/inet6.sh b/sbin/ifconfig/tests/inet6.sh > index edfd88d93af7..22399915a64d 100644 > --- a/sbin/ifconfig/tests/inet6.sh > +++ b/sbin/ifconfig/tests/inet6.sh > @@ -76,8 +76,38 @@ broadcast_cleanup() > vnet_cleanup > } > > +atf_test_case "delete6" "cleanup" > +delete6_head() > +{ > + atf_set descr 'Test removing IPv6 addresses' > + atf_set require.user root > +} > + > +delete6_body() > +{ > + vnet_init > + > + ep=$(vnet_mkepair) > + > + atf_check -s exit:0 \ > + ifconfig ${ep}a inet6 fe80::42/64 > + atf_check -s exit:0 -o match:"fe80::42%${ep}" \ > + ifconfig ${ep}a inet6 > + > + atf_check -s exit:0 \ > + ifconfig ${ep}a inet6 -alias fe80::42 > + atf_check -s exit:0 -o not-match:"fe80::42%${ep}" \ > + ifconfig ${ep}a inet6 > +} > + > +delete6_cleanup() > +{ > + vnet_cleanup > +} > + > atf_init_test_cases() > { > atf_add_test_case netmask > atf_add_test_case broadcast > + atf_add_test_case delete6 > } From nobody Tue Sep 9 01:52:36 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLRfF0wbwz67Nn2; Tue, 09 Sep 2025 01:52:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLRfF0BV0z3mDF; Tue, 09 Sep 2025 01:52:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jtf+TR2SFucC3KBha3rYNkkTukNyMVar96OfobwjQfc=; b=IOiif9shaEQNaT02POLhnonLN7g0vJLMsYW4rt0gzGbo+Glvy/Wj85fTXHzKd4zO+gvdLi Qm6iyiu+QT7b1Q40aWShhTTTevCeIaCNOBKuQgprlYOiEUhLDAiD0E9BiCTGwZP4CtqNvi 0oOVdmEEQXIDAuVngW2sTEASxoWZKAcCCO5EdSBL8f5NSz6RC//UjC/k3pXwLUXwq0L4a6 IMcl+pKgKmpjtxTRVGlzT2fBKRXI4IZPGysh2ofbWM3EOl2AfN7w7hkLn5NOjQdKTI5CUD lSPX6uePo30PkMaQjttHIbRMrLAyl9W+iWz/vzKmd6avVb1dbxw+g6SDyrAelg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jtf+TR2SFucC3KBha3rYNkkTukNyMVar96OfobwjQfc=; b=fMQ2ijbMhqsaRYjF4hN5wLANKg0GRPl76ZX0hJTtUQhb9PZDe6VE0k+Ci8V0V1SGhjkLYM z6tTvJmUk92q7o/9gddWnElDzG62WnaEEN+YYTfDn+CdZY0PdjtDB5noYetCkp6Jxl7cTF kzzSye9TJETVHJKq6ecBx55TAB9ofrzqrjNFjw8gzqh7XlilOnb1x4efj0fC7VI7KPrIIT 3AGEiPl0OaZj4lKF+zFYYz/aaiv3afGPyRLmrvdqmG4xVBw2JkSk/bdTaZ/yXAlxwRxTK6 NfdKcbA1/+TAITwGuMo/6aInINvX41mY2wTYQvRH29XbiDzzYdodpqktpGqWog== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757382757; a=rsa-sha256; cv=none; b=fBguUKetSO5lS09BezNH1BO7aQIEgCI2CQPkplq0pgrPFDz0s3AzjVXL41LZCNihp9NN4S arm9V5tDlN1/mE/wz0frnwWmbngngKmUSMQBcIo0BlvkHz1B7NeLMZkFMpssMHGkYMAi5j t/PZccwONmt1/I/MuMT+Ez9M18vPr3YSeOAcDZXnODWQ/rS+1M8yoNV0uVNZGeTF4mfE9z PtugU+3zYGRM3pwp4SN/JEfoGVtPBvyOsbnoigDS54pQcyD6jQZQ4vaklF4IDy7hjBKH0i 0bCU/p3GdennztdTjZEc83/CgIbKmIgILXgf8P46CqOqSNrsDNuuk5RmOW5yHw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLRfD6tCSzv0; Tue, 09 Sep 2025 01:52:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5891qauS058662; Tue, 9 Sep 2025 01:52:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5891qamU058659; Tue, 9 Sep 2025 01:52:36 GMT (envelope-from git) Date: Tue, 9 Sep 2025 01:52:36 GMT Message-Id: <202509090152.5891qamU058659@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: e76e631bb0e9 - main - run: enable seqno offload List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e76e631bb0e9d338f48f6208e7f8df9d76980abd Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=e76e631bb0e9d338f48f6208e7f8df9d76980abd commit e76e631bb0e9d338f48f6208e7f8df9d76980abd Author: Adrian Chadd AuthorDate: 2025-06-08 22:01:05 +0000 Commit: Adrian Chadd CommitDate: 2025-09-09 01:46:09 +0000 run: enable seqno offload Enable sequence number offload. This should both enable the sequence number offloading and disable the net80211 TX lock from being acquired/released/checked. Differential Revision: https://reviews.freebsd.org/D50747 Okayed by: bz --- sys/dev/usb/wlan/if_run.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sys/dev/usb/wlan/if_run.c b/sys/dev/usb/wlan/if_run.c index 97c790dd5b81..147aa4044057 100644 --- a/sys/dev/usb/wlan/if_run.c +++ b/sys/dev/usb/wlan/if_run.c @@ -882,6 +882,7 @@ run_attach(device_t self) ic->ic_flags |= IEEE80211_F_DATAPAD; ic->ic_flags_ext |= IEEE80211_FEXT_SWBMISS; + ic->ic_flags_ext |= IEEE80211_FEXT_SEQNO_OFFLOAD; run_getradiocaps(ic, IEEE80211_CHAN_MAX, &ic->ic_nchans, ic->ic_channels); @@ -3522,6 +3523,9 @@ run_tx(struct run_softc *sc, struct mbuf *m, struct ieee80211_node *ni) data->ni = ni; data->ridx = ridx; + /* Assign sequence number now, regardless of A-MPDU TX or otherwise (for now) */ + ieee80211_output_seqno_assign(ni, -1, m); + run_set_tx_desc(sc, data); /* @@ -3627,6 +3631,9 @@ run_tx_mgt(struct run_softc *sc, struct mbuf *m, struct ieee80211_node *ni) data->ni = ni; data->ridx = ridx; + /* Assign sequence number now, regardless of A-MPDU TX or otherwise (for now) */ + ieee80211_output_seqno_assign(ni, -1, m); + run_set_tx_desc(sc, data); RUN_DPRINTF(sc, RUN_DEBUG_XMIT, "sending mgt frame len=%d rate=%d\n", @@ -3771,6 +3778,9 @@ run_tx_param(struct run_softc *sc, struct mbuf *m, struct ieee80211_node *ni, break; data->ridx = ridx; + /* Assign sequence number now, regardless of A-MPDU TX or otherwise (for now) */ + ieee80211_output_seqno_assign(ni, -1, m); + run_set_tx_desc(sc, data); RUN_DPRINTF(sc, RUN_DEBUG_XMIT, "sending raw frame len=%u rate=%u\n", @@ -6416,6 +6426,10 @@ run_ampdu_enable(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) { /* For now, no A-MPDU TX support in the driver */ + /* + * TODO: maybe we needed to enable seqno generation too? + * What other TX desc bits are missing/needed? + */ return (0); } From nobody Tue Sep 9 01:52:38 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLRfG2GLwz67P9Z; Tue, 09 Sep 2025 01:52:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLRfG1Sg7z3m7l; Tue, 09 Sep 2025 01:52:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382758; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IxkkZLogyGFB/qzXoBbCrYUPVaUfehFWdLrPjW7zb4Y=; b=s0GBh6HE5oAOTD1tvtx50QTyLnoP+1VbkinvGzs3igozgg5lBPXY2JU0WdkCoH3p+6g+3y 2ruIv1lkuhjZl7NbrrqpW2Zag4UXLRckN5FY1rIEJyvnlVV4qnGNco91yOcG8yfHIEkO36 ykAVSKFmUotNHRdfIppP4gVUB00iDsVOLLP3bT/zxODsDJ0M+0K/YolqZDFZqWk3mr1/1Q 5yogXYPnsEayoEMmdHiIXFVpCHZktZOqiZrY/J9fzjp9hz3Z01GuLnLqBz0Y9Uvgwm4SgH OUABRKBHRyf/OWj256HUIiOShJpBC0cCvtnWWQ1AeAcH9YNu1UxtLn3Tgs9Ucw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382758; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IxkkZLogyGFB/qzXoBbCrYUPVaUfehFWdLrPjW7zb4Y=; b=REEq3BUzAr/Aznf4k0u4R0efaoIREA+/+IUAJ+I7SeeHkJWU9daU2QAqfpcOjXtoIENSry 8Z/mdIoIMTV8O8BlgWMq3M1JAOT8y6q/avUKTJ05GksmnqobvMVIMib9tqaIHHPXMohvD/ onhgZn/fwk4eJcvVEAEesytsnvrs9/OpgNOuNUfdIi01ZsEjPAVYt5iar/l4kHNN7dkdEN hL3H+yeqtkYfwvC0fazZyTh54c+jKeBs9SRJBODYE9/6nuE1wCI0UWEpQfFHE1CQWw9JqK k/GJvvLEvjzOPkTLOJfTZQn8wUJcWHLOTqbSXmqGUzKTH+L4X7zRfNrvwdVahw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757382758; a=rsa-sha256; cv=none; b=O6NAkkrz1j6Ql9f2/JTyOgGzHaAigVmQX8WUf7cZUl4BdV2TEUt9hD/CkO7dnKgQYX3f7s D7erTgaFLjz0OcjikY+DzK0KjXSKXs56vpmqcletqcThil229ZE/eUGgV76C30LKIsfhsP 7PO+Np2AA3mQHz7wgxuGlSnH5qx8kubCXZ6RDgFyDQsW2xSI9cba9FuxhPpxEQdH7Yaf0G 7PXJVe0YcDq3P8naArAKm3vxs2CEUgv1TF09u4PSYJ4PhWIA2wx/ZC4jacfHTAStcxNNAA YTFyLn8PSEv53/QTLWVVLkRdlXSAmH2j/2/ceqIwZpQH+3Ipccf3U+NtYSFqPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLRfG10Ljz1Sr; Tue, 09 Sep 2025 01:52: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 5891qcYP058696; Tue, 9 Sep 2025 01:52:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5891qcOi058693; Tue, 9 Sep 2025 01:52:38 GMT (envelope-from git) Date: Tue, 9 Sep 2025 01:52:38 GMT Message-Id: <202509090152.5891qcOi058693@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 5d31e67a2003 - main - rsu: enable seqno offload List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5d31e67a2003d0405b83806da22135b6c2e1390b Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=5d31e67a2003d0405b83806da22135b6c2e1390b commit 5d31e67a2003d0405b83806da22135b6c2e1390b Author: Adrian Chadd AuthorDate: 2025-06-09 02:06:19 +0000 Commit: Adrian Chadd CommitDate: 2025-09-09 01:46:26 +0000 rsu: enable seqno offload Enable sequence number offload. This should both enable the sequence number offloading and disable the net80211 TX lock from being acquired/released/checked. Differential Revision: https://reviews.freebsd.org/D50749 Okayed by: bz --- sys/dev/usb/wlan/if_rsu.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/dev/usb/wlan/if_rsu.c b/sys/dev/usb/wlan/if_rsu.c index 07f7b6f3a708..ce2b98a1ba55 100644 --- a/sys/dev/usb/wlan/if_rsu.c +++ b/sys/dev/usb/wlan/if_rsu.c @@ -576,6 +576,7 @@ rsu_attach(device_t self) ic->ic_rxstream = sc->sc_nrxstream; } ic->ic_flags_ext |= IEEE80211_FEXT_SCAN_OFFLOAD; + ic->ic_flags_ext |= IEEE80211_FEXT_SEQNO_OFFLOAD; rsu_getradiocaps(ic, IEEE80211_CHAN_MAX, &ic->ic_nchans, ic->ic_channels); @@ -2782,6 +2783,9 @@ rsu_tx_start(struct rsu_softc *sc, struct ieee80211_node *ni, if (rate != 0) ridx = rate2ridx(rate); + /* Assign sequence number, A-MPDU or otherwise */ + ieee80211_output_seqno_assign(ni, -1, m0); + if (wh->i_fc[1] & IEEE80211_FC1_PROTECTED) { k = ieee80211_crypto_encap(ni, m0); if (k == NULL) { From nobody Tue Sep 9 01:52:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLRfH4wbKz67PRH; Tue, 09 Sep 2025 01:52:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLRfH2Jklz3mTh; Tue, 09 Sep 2025 01:52:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382759; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mf/vNVza6GmwnXH6/KUXO8Mjs2mX1ybs46zrYhoYqXU=; b=TRcaaSKp8KowbVIbUJTgaTalfLUygmav8/1PfDDrqvRQqWN7nul7RLvZmlFbp18L8AZD+U 9Rc/GtfoVCHuh6b+177fyrwBFWqoz6ksQhCFsVFZSyzX/xw2cB7Dj418IibDGgicxkEVe5 uk7PG8XN9vuqHlbOn4QX1O+f8Ikrlf7ki3ICLPeuML3+7rIb8AgFETv9Ei7tBlKfT9Ra3W /eznq+fAZ8nDsX+PB/iKp8cUfuMgvrmIQENsP/EGNdXjdgCdh5l896/pNi9hKOlkSqSSuA BabNhBmfuXPMxpIqPX5TStUcsYuZQsGyYRWquPA0yLhK5EOH99bPJghIzJwvTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382759; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mf/vNVza6GmwnXH6/KUXO8Mjs2mX1ybs46zrYhoYqXU=; b=a+VBFBN5DYQVvmj/XYrn4ihdKjbQbmCQooxJcEZp8mm+H3AxzSwNh9c1mwawsj/hlZOzar JfrgnKfly27PUnALjbF/g09sQCqhG9bS5BZogRQod+BOqeSBmnsqoS7kgwLrXnzGHW1I/p nzrCf/kWv4Cbz2+NxFtYL0+lsMsILVppgvLbkG9iLX2dgx3qXFcdZXJ1mbwZFGlY5bj25q gyPAkHI0QHfueKwMnhgr3GHZDkLEUKfPXuyE22Q2dpEwtYEjKaCPlVUWZ2b5OKs26ByD9z ZZ5jE+2Ghqxj4dW0zsZ0+JacIoGhDYoo7tq4StHUjjeBFbcIEez5jnqKdoFA5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757382759; a=rsa-sha256; cv=none; b=p7H3plnUUAgmvq9mBQCAOSkeBQgPG2TjsoY4K65fYWfDJWcVJaBrn62PsrFiS59izrUwRS bQH0TlTB3bkOhcLVUkoI+v5yAYl03ZY+kR09S/vWVTVDrnkjXsxWUPXMnLVlhlyiUCmFPD LZICCfF1jA/I9wh8ElMEXib8FBTMVEmAi8UKpWAfYKQj4W8LP/aaiMCkDmS5i0mWBROSYp Vxo5dSGrii11KooBHOsb2eigSGYZ2VORGivpdT1R6rsbD0zNdJHN1/6GMfLNQlxPFiY2PL rz/f6O4A5OB8vfeyU5xmqWfKzqo1MpCCIOXTSmI0r9Jmov6rmLFQCHkWKPnEBw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLRfH1dxXz1BY; Tue, 09 Sep 2025 01:52: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 5891qdtd058730; Tue, 9 Sep 2025 01:52:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5891qdG5058727; Tue, 9 Sep 2025 01:52:39 GMT (envelope-from git) Date: Tue, 9 Sep 2025 01:52:39 GMT Message-Id: <202509090152.5891qdG5058727@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: b73f52a0344d - main - rsu: implement A-MPDU TX; add TODO items for further work List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b73f52a0344d0f18207ef51397ceded3ffe58cd0 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=b73f52a0344d0f18207ef51397ceded3ffe58cd0 commit b73f52a0344d0f18207ef51397ceded3ffe58cd0 Author: Adrian Chadd AuthorDate: 2025-06-09 02:09:37 +0000 Commit: Adrian Chadd CommitDate: 2025-09-09 01:46:42 +0000 rsu: implement A-MPDU TX; add TODO items for further work * Enable A-MPDU TX by fixing the A-MPDU TX establish routine; always assign sequence numbers from net80211 (for now); and fix the descriptor programming. * Add TODO items around CAM allocation for keys, MAC ID stuff which we likely need to fix for working IBSS/AP behaviour, and whatever other bits and pieces I noticed. * Disable amsdu2ampdu, we can decap A-MSDU just fine in net80211, doubly so if we somehow get A-MSDU inside an A-MPDU. I've tested / verified that A-MPDU TX and A-MPDU RX is correctly established and functioning by using rtwn in monitor mode. I used an old r92su linux out of tree driver for comparison. Differential Revision: https://reviews.freebsd.org/D50748 Okayed by: bz --- sys/dev/usb/wlan/if_rsu.c | 62 ++++++++++++++++++++++++++++++-------------- sys/dev/usb/wlan/if_rsureg.h | 9 ++++++- 2 files changed, 51 insertions(+), 20 deletions(-) diff --git a/sys/dev/usb/wlan/if_rsu.c b/sys/dev/usb/wlan/if_rsu.c index ce2b98a1ba55..e976948f6849 100644 --- a/sys/dev/usb/wlan/if_rsu.c +++ b/sys/dev/usb/wlan/if_rsu.c @@ -371,18 +371,16 @@ rsu_update_chw(struct ieee80211com *ic) /* * notification from net80211 that it'd like to do A-MPDU on the given TID. - * - * Note: this actually hangs traffic at the present moment, so don't use it. - * The firmware debug does indiciate it's sending and establishing a TX AMPDU - * session, but then no traffic flows. */ static int rsu_ampdu_enable(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) { -#if 0 struct rsu_softc *sc = ni->ni_ic->ic_softc; struct r92s_add_ba_req req; + RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, "%s: called, tid=%d\n", + __func__, tap->txa_tid); + /* Don't enable if it's requested or running */ if (IEEE80211_AMPDU_REQUESTED(tap)) return (0); @@ -397,23 +395,30 @@ rsu_ampdu_enable(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) return (0); /* Send the firmware command */ - RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, "%s: establishing AMPDU TX for TID %d\n", + RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, + "%s: establishing AMPDU TX for TID %d\n", __func__, tap->txa_tid); RSU_LOCK(sc); - if (rsu_fw_cmd(sc, R92S_CMD_ADDBA_REQ, &req, sizeof(req)) != 1) { + if (rsu_fw_cmd(sc, R92S_CMD_ADDBA_REQ, &req, sizeof(req)) != 0) { RSU_UNLOCK(sc); + RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, "%s: AMPDU TX cmd failure\n", + __func__); /* Mark failure */ - (void) ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 0); + ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 0); + /* Return 0, we've been driving this ourselves */ return (0); } RSU_UNLOCK(sc); + RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, "%s: AMPDU TX cmd success\n", + __func__); + /* Mark success; we don't get any further notifications */ - (void) ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 1); -#endif - /* Return 0, we're driving this ourselves */ + ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 1); + + /* Return 0, we've been driving this ourselves */ return (0); } @@ -563,9 +568,7 @@ rsu_attach(device_t self) /* Enable basic HT */ ic->ic_htcaps = IEEE80211_HTC_HT | -#if 0 IEEE80211_HTC_AMPDU | -#endif IEEE80211_HTC_AMSDU | IEEE80211_HTCAP_MAXAMSDU_3839 | IEEE80211_HTCAP_SMPS_OFF; @@ -1538,6 +1541,10 @@ rsu_key_alloc(struct ieee80211vap *vap, struct ieee80211_key *k, is_checked = 1; k->wk_flags |= IEEE80211_KEY_SWCRYPT; } else + /* + * TODO: should allocate these from the CAM space; + * skipping over the fixed slots and _BC / _BSS. + */ *keyix = R92S_MACID_BSS; } @@ -2167,7 +2174,7 @@ rsu_event_addba_req_report(struct rsu_softc *sc, uint8_t *buf, int len) __func__, ether_sprintf(ba->mac_addr), (int) ba->tid, - (int) le16toh(ba->ssn)); + (int) le16toh(ba->ssn) >> 4); /* XXX do node lookup; this is STA specific */ @@ -2213,6 +2220,11 @@ rsu_rx_event(struct rsu_softc *sc, uint8_t code, uint8_t *buf, int len) if (vap->iv_state == IEEE80211_S_AUTH) rsu_event_join_bss(sc, buf, len); break; + + /* TODO: what about R92S_EVT_ADD_STA? and decoding macid? */ + /* It likely is required for IBSS/AP mode */ + + /* TODO: should I be doing this transition in AP mode? */ case R92S_EVT_DEL_STA: RSU_DPRINTF(sc, RSU_DEBUG_FWCMD | RSU_DEBUG_STATE, "%s: disassociated from %s\n", __func__, @@ -2230,6 +2242,7 @@ rsu_rx_event(struct rsu_softc *sc, uint8_t code, uint8_t *buf, int len) break; case R92S_EVT_FWDBG: buf[60] = '\0'; + /* TODO: some are \n terminated, some aren't, sigh */ RSU_DPRINTF(sc, RSU_DEBUG_FWDBG, "FWDBG: %s\n", (char *)buf); break; case R92S_EVT_ADDBA_REQ_REPORT: @@ -2842,8 +2855,10 @@ rsu_tx_start(struct rsu_softc *sc, struct ieee80211_node *ni, SM(R92S_TXDW0_OFFSET, sizeof(*txd)) | R92S_TXDW0_OWN | R92S_TXDW0_FSG | R92S_TXDW0_LSG); + /* TODO: correct macid here? It should be in the node */ txd->txdw1 |= htole32( SM(R92S_TXDW1_MACID, R92S_MACID_BSS) | SM(R92S_TXDW1_QSEL, qid)); + if (!hasqos) txd->txdw1 |= htole32(R92S_TXDW1_NONQOS); if (k != NULL && !(k->wk_flags & IEEE80211_KEY_SWENCRYPT)) { @@ -2864,8 +2879,13 @@ rsu_tx_start(struct rsu_softc *sc, struct ieee80211_node *ni, SM(R92S_TXDW1_CIPHER, cipher) | SM(R92S_TXDW1_KEYIDX, k->wk_keyix)); } - /* XXX todo: set AGGEN bit if appropriate? */ - txd->txdw2 |= htole32(R92S_TXDW2_BK); + + /* + * Note: no need to set TXDW2_AGGEN/TXDW2_BK to mark + * A-MPDU and non-AMPDU candidates; the firmware will + * handle this for us. + */ + if (ismcast) txd->txdw2 |= htole32(R92S_TXDW2_BMCAST); @@ -2884,8 +2904,11 @@ rsu_tx_start(struct rsu_softc *sc, struct ieee80211_node *ni, } /* - * Firmware will use and increment the sequence number for the - * specified priority. + * Pass in prio here, NOT the sequence number. + * + * The hardware is in theory incrementing sequence numbers + * for us, but I haven't yet figured out exactly when/how + * it's supposed to work. */ txd->txdw3 |= htole32(SM(R92S_TXDW3_SEQ, prio)); @@ -3485,7 +3508,8 @@ rsu_load_firmware(struct rsu_softc *sc) dmem.vcs_mode = R92S_VCS_MODE_RTS_CTS; dmem.turbo_mode = 0; dmem.bw40_en = !! (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40); - dmem.amsdu2ampdu_en = !! (sc->sc_ht); + /* net80211 handles AMSDUs just fine */ + dmem.amsdu2ampdu_en = 0; dmem.ampdu_en = !! (sc->sc_ht); dmem.agg_offload = !! (sc->sc_ht); dmem.qos_en = 1; diff --git a/sys/dev/usb/wlan/if_rsureg.h b/sys/dev/usb/wlan/if_rsureg.h index fb706a4d9b1a..e2074e1dd2ad 100644 --- a/sys/dev/usb/wlan/if_rsureg.h +++ b/sys/dev/usb/wlan/if_rsureg.h @@ -593,7 +593,14 @@ struct r92s_event_join_bss { struct ndis_wlan_bssid_ex bss; } __packed; -#define R92S_MACID_BSS 5 /* XXX hardcoded somewhere */ +/* + * This is hard-coded in the firmware for a STA mode + * BSS join. If you turn on FWDEBUG, you'll see this + * in the logs: + * + * rsu0: FWDBG: mac id #5: 0000005b, 000fffff, 00000000 + */ +#define R92S_MACID_BSS 5 /* Rx MAC descriptor. */ struct r92s_rx_stat { From nobody Tue Sep 9 01:52:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLRfJ5dnpz67PX1; Tue, 09 Sep 2025 01:52:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLRfJ33Kfz3mBQ; Tue, 09 Sep 2025 01:52:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1RUM5xLv9ej2R0IBHQGR7FFQ/Qtl2PUqXkrjTxo+KXs=; b=Lipw0UOMSS/PEDf55rck10kpviysSv6UPbAfw/jwbiUC/4sDB218buieKn7jAo39Q45zfL OgwpP5clx0HyI5NvQi8AscpNfbN72vCNmFXI1VQ+PLemC2mhqsoGKc7LZS4NKw5J3ov8ZO TpJBqCa38F8hQdKFctQoqPw+dgOEtpgm4vdet2yTMw1zJj3Ip4Veaznd3rv4tpgnwYQ4XT JuLZCzIApQFW0JlHjtpWuMyTFGT6RB91kNiCSBOB6r1EHu8WWvajIo/QkvevBL09/W4a+S rA6f48aZ9788vGt4TMu0yBuljuGFSSddPZUnQRfdL7DUzvPcWg0+XQSWbsOXCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757382760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1RUM5xLv9ej2R0IBHQGR7FFQ/Qtl2PUqXkrjTxo+KXs=; b=W9sGhZO/TYiLwnpR2ERvDDfpw06seiEtoQDsP3fAxXkpmDh6PPJ/krlZEoH+14wW+B4sqh sZTIN/8VV81eyUBsJp8U22na+ESbMgXOnPM544oiuebZ0UfamRm7NQaa62QxaVT0lRutlD vu07YU5XpMzNaivBclXZw0LUxy/hp4/oNemxsKS7rJtFl0VWb5FApGKbbfvEyMWZoqclTE IdOWh5mQq3XwgunCSSC0+UB0Ayn7fUPebikkX7OzRNJgPBFfoRe4F9jZCvHnYtVB0FaWht 0g2YMA6pNnzcLK1K8DMe65llfNeGq/P1CCGKcgEsbWxJXMk5vLnV+xXwyAsoGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757382760; a=rsa-sha256; cv=none; b=o44dJU8EZYsEaAIAZO8GLu3Vrh7oGjmVubtnh67VJ4m7Y0ueBNd8xd837lcOPx7brUB4R4 0sGp/0uKrzNFdsf5fMRifLjaBUd5HWPXtv6hXtXGq3rt+JvjVoi972y97/PRkV6A0yC5LA +t58wkQP4y9pxx5p9QJLC+1NBnK1VfhCB5Sn1/fV0JyW+YTzWoMeTS8fpDttTOFchfeKbI Ibvqdrc7IfsBuRi7CMkZhHowE2xehdW8P1veENlbgR/ue62bQthOvTiiFC3QkwvPhJl8zL jaOUc8PZa+l63toBLMBOEeeXIkU3dBIymIEEhOI/xvgqIVo3QqMMR0lwlDUVuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLRfJ2d63z1dp; Tue, 09 Sep 2025 01:52: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 5891qeN1058764; Tue, 9 Sep 2025 01:52:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5891qequ058761; Tue, 9 Sep 2025 01:52:40 GMT (envelope-from git) Date: Tue, 9 Sep 2025 01:52:40 GMT Message-Id: <202509090152.5891qequ058761@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 9bfb1405332c - main - net80211: add support for drivers to disable sending NULL data frames List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9bfb1405332c6c847dd29e4db4dd3afb56662021 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=9bfb1405332c6c847dd29e4db4dd3afb56662021 commit 9bfb1405332c6c847dd29e4db4dd3afb56662021 Author: Adrian Chadd AuthorDate: 2025-08-27 17:03:22 +0000 Commit: Adrian Chadd CommitDate: 2025-09-09 01:48:10 +0000 net80211: add support for drivers to disable sending NULL data frames net80211 has various places where null data / null qos data frames are sent. However plenty of NICs shouldn't be sending them from net80211 and it may even upset their 802.11n window / sequence number tracking. So add support here. Differential Revision: https://reviews.freebsd.org/D52297 Reviewed by: bz --- sys/net80211/ieee80211_output.c | 6 ++++++ sys/net80211/ieee80211_var.h | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/net80211/ieee80211_output.c b/sys/net80211/ieee80211_output.c index 57fe687adffe..116fc76a9ce1 100644 --- a/sys/net80211/ieee80211_output.c +++ b/sys/net80211/ieee80211_output.c @@ -1082,6 +1082,12 @@ ieee80211_send_nulldata(struct ieee80211_node *ni) uint8_t *frm; int ret; + /* Don't send NULL frames if we've been configured not to do so. */ + if ((ic->ic_flags_ext & IEEE80211_FEXT_NO_NULLDATA) != 0) { + ieee80211_node_decref(ni); + return (0); + } + if (vap->iv_state == IEEE80211_S_CAC) { IEEE80211_NOTE(vap, IEEE80211_MSG_OUTPUT | IEEE80211_MSG_DOTH, ni, "block %s frame in CAC state", "null data"); diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index a0293f814899..b9bc2357428d 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -700,13 +700,14 @@ MALLOC_DECLARE(M_80211_VAP); #define IEEE80211_FEXT_QUIET_IE 0x00800000 /* STATUS: quiet IE in a beacon has been added */ #define IEEE80211_FEXT_UAPSD 0x01000000 /* CONF: enable U-APSD */ #define IEEE80211_FEXT_AMPDU_OFFLOAD 0x02000000 /* CONF: driver/fw handles AMPDU[-TX] itself */ +#define IEEE80211_FEXT_NO_NULLDATA 0x04000000 /* CONF: don't originate NULL data frames from net80211 */ #define IEEE80211_FEXT_BITS \ "\20\2INACT\3SCANWAIT\4BGSCAN\5WPS\6TSN\7SCANREQ\10RESUME" \ "\0114ADDR\12NONEPR_PR\13SWBMISS\14DFS\15DOTD\16STATEWAIT\17REINIT" \ "\20BPF\21WDSLEGACY\22PROBECHAN\23UNIQMAC\24SCAN_OFFLOAD\25SEQNO_OFFLOAD" \ "\26FRAG_OFFLOAD\27VHT" \ - "\30QUIET_IE\31UAPSD\32AMPDU_OFFLOAD" + "\30QUIET_IE\31UAPSD\32AMPDU_OFFLOAD\33NO_NULLDATA" /* ic_flags_ht/iv_flags_ht */ #define IEEE80211_FHT_NONHT_PR 0x00000001 /* STATUS: non-HT sta present */ From nobody Tue Sep 9 03:06:12 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLTH8340Xz66Fhf; Tue, 09 Sep 2025 03:06:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLTH82KBbz3vgq; Tue, 09 Sep 2025 03:06:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u4GR+0MfR8bwOtuAkUdBkiNVSTemjvucD2KHNn6dIXo=; b=alIXF7Emk/sp4oNww9GasGMVeis+e9uSLv+5EcwHtrd8ODXaB5fESQVWYG9CfQ1MehVBMk qld0lvHwGjuBSGSXGpyzd6Pah/2ubf6b4i+SSxSLIgCb3gf0lPLm0DE4uMRdZzrhlkYzQl nor7I83Eiei7rrU8moZFEtXre1ur2Z2iHi4SKJUaWmI5xEKt7u9gRmni4NgVFfbf++NKEM cjQ1lMp/ZCTJS3XeFzGh5kVghAMuT66CVVEhNDERdT3DS9PkK5qUneFGpWHdC4Lstwm6+/ 9MnxWM3zQNUUOZ6LvHtG4tDOu/07aJ5yoYCANGZraf3aVHD8w2vtdJVqoW5j5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u4GR+0MfR8bwOtuAkUdBkiNVSTemjvucD2KHNn6dIXo=; b=pHZvZ++H8JMCeV/Zf/uHGTsYltv7pbhPwaCqrOHmasB1Vy13BPXsPCPx547ixsOnRqBYjW ebXu3Na5xQ7phKR9ScDGeM+zvc9qvi/oiHJKnDt8JWKEFXMi8xr57V38T83Bbnq3qKw3fl 4EG0dHnPfVfVMMUwB86JWLCHUDwGu+z8iyyzP5FJMlVwA7m6mgSUK4BTy9KZUH+jsmNCBd P9pRMR3UTPzUQDmPyrPwhYw0e2q6dNhdo/AjoPMa/qO8IH7AdRgcB7BHSwYSAuVBjcsEdR HT1jQezHz/4iUS2zpk/tcEHarkW6Un94f0lMDs4o2UvQequ4rIIZqfUEd7nbOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757387172; a=rsa-sha256; cv=none; b=o1zRHc0xcgAAVUU+QnpRDuBM2PIvY8XwbLC6SgIPpALKHzTq6VR9ljWFqRtm3f3cjjTUIM UjDKVglpyXshqcHfDXt94L4mb3s6JKwXdx88YzGHXl5SY9FuIo/HebTP9rE6hW8d6cEiWn NbIvo8D5S8cC9A1tAvzmODSBJvfizY4DfS8SQC64W8+cj7KmDXxn6sQpTZPrYAh5RpjJEM 2hz2nqZe/ggJ7b/d7c+Nun6HhDtiSryexijGfRJP5Abri3hSRp7DLV9zLmDPymNwlm0MGV cWtCAcwSH7S82hx8VrvcRWIHZKue/JuD3wMa5e61Jkl5tMNCoZHM/YG4r5Umhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLTH81w2nz3XL; Tue, 09 Sep 2025 03:06: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 58936CMi093820; Tue, 9 Sep 2025 03:06:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58936Ctu093817; Tue, 9 Sep 2025 03:06:12 GMT (envelope-from git) Date: Tue, 9 Sep 2025 03:06:12 GMT Message-Id: <202509090306.58936Ctu093817@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: c745a6818bcb - main - iommu_get_requester(): make it more resilient against arbitrary dev arg List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: c745a6818bcbf33cf7f59641c925d19b3f98cea8 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c745a6818bcbf33cf7f59641c925d19b3f98cea8 commit c745a6818bcbf33cf7f59641c925d19b3f98cea8 Author: Konstantin Belousov AuthorDate: 2025-09-05 23:06:18 +0000 Commit: Konstantin Belousov CommitDate: 2025-09-09 02:51:08 +0000 iommu_get_requester(): make it more resilient against arbitrary dev arg If passed the parent of a device instead of the device, the loop might end up with the host bridge in the pci local variable. If the passed device is not from the pci hierarchy, any of the calculated parents might be NULL. Change the interface to allow the caller to receive error. Instead of asserting, just issue a message and return ENXIO, allowing the caller to select appropriate action. PR: 289318 Reviewed by: jah Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D52406 --- sys/dev/iommu/busdma_iommu.c | 54 ++++++++++++++++++++++++++++++++----------- sys/dev/iommu/iommu.h | 2 +- sys/kern/subr_bus.c | 13 +++++++++-- sys/x86/iommu/amd_intrmap.c | 14 ++++++++--- sys/x86/iommu/intel_intrmap.c | 8 +++++-- 5 files changed, 70 insertions(+), 21 deletions(-) diff --git a/sys/dev/iommu/busdma_iommu.c b/sys/dev/iommu/busdma_iommu.c index 6856b0551dde..668ccf056463 100644 --- a/sys/dev/iommu/busdma_iommu.c +++ b/sys/dev/iommu/busdma_iommu.c @@ -114,8 +114,8 @@ iommu_bus_dma_is_dev_disabled(int domain, int bus, int slot, int func) * domain, and must collectively be assigned to use either IOMMU or * bounce mapping. */ -device_t -iommu_get_requester(device_t dev, uint16_t *rid) +int +iommu_get_requester(device_t dev, device_t *requesterp, uint16_t *rid) { devclass_t pci_class; device_t l, pci, pcib, pcip, pcibp, requester; @@ -129,7 +129,8 @@ iommu_get_requester(device_t dev, uint16_t *rid) pci = device_get_parent(dev); if (pci == NULL || device_get_devclass(pci) != pci_class) { *rid = 0; /* XXXKIB: Could be ACPI HID */ - return (requester); + *requesterp = NULL; + return (ENOTTY); } *rid = pci_get_rid(dev); @@ -141,16 +142,39 @@ iommu_get_requester(device_t dev, uint16_t *rid) */ for (;;) { pci = device_get_parent(l); - KASSERT(pci != NULL, ("iommu_get_requester(%s): NULL parent " - "for %s", device_get_name(dev), device_get_name(l))); - KASSERT(device_get_devclass(pci) == pci_class, - ("iommu_get_requester(%s): non-pci parent %s for %s", - device_get_name(dev), device_get_name(pci), - device_get_name(l))); + if (pci == NULL) { + if (bootverbose) { + printf( + "iommu_get_requester(%s): NULL parent for %s\n", + device_get_name(dev), device_get_name(l)); + } + *rid = 0; + *requesterp = NULL; + return (ENXIO); + } + if (device_get_devclass(pci) != pci_class) { + if (bootverbose) { + printf( + "iommu_get_requester(%s): non-pci parent %s for %s\n", + device_get_name(dev), device_get_name(pci), + device_get_name(l)); + } + *rid = 0; + *requesterp = NULL; + return (ENXIO); + } pcib = device_get_parent(pci); - KASSERT(pcib != NULL, ("iommu_get_requester(%s): NULL bridge " - "for %s", device_get_name(dev), device_get_name(pci))); + if (pcib == NULL) { + if (bootverbose) { + printf( + "iommu_get_requester(%s): NULL bridge for %s\n", + device_get_name(dev), device_get_name(pci)); + } + *rid = 0; + *requesterp = NULL; + return (ENXIO); + } /* * The parent of our "bridge" isn't another PCI bus, @@ -229,7 +253,8 @@ iommu_get_requester(device_t dev, uint16_t *rid) } } } - return (requester); + *requesterp = requester; + return (0); } struct iommu_ctx * @@ -237,10 +262,13 @@ iommu_instantiate_ctx(struct iommu_unit *unit, device_t dev, bool rmrr) { device_t requester; struct iommu_ctx *ctx; + int error; bool disabled; uint16_t rid; - requester = iommu_get_requester(dev, &rid); + error = iommu_get_requester(dev, &requester, &rid); + if (error != 0) + return (NULL); /* * If the user requested the IOMMU disabled for the device, we diff --git a/sys/dev/iommu/iommu.h b/sys/dev/iommu/iommu.h index b1858f0df9f7..55044042c5d2 100644 --- a/sys/dev/iommu/iommu.h +++ b/sys/dev/iommu/iommu.h @@ -170,7 +170,7 @@ void iommu_domain_unload(struct iommu_domain *domain, void iommu_unit_pre_instantiate_ctx(struct iommu_unit *iommu); struct iommu_ctx *iommu_instantiate_ctx(struct iommu_unit *iommu, device_t dev, bool rmrr); -device_t iommu_get_requester(device_t dev, uint16_t *rid); +int iommu_get_requester(device_t dev, device_t *requester, uint16_t *rid); int iommu_init_busdma(struct iommu_unit *unit); void iommu_fini_busdma(struct iommu_unit *unit); diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 62a3da964c37..bf5bda7e058d 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -280,6 +280,9 @@ device_sysctl_handler(SYSCTL_HANDLER_ARGS) struct sbuf sb; device_t dev = (device_t)arg1; device_t iommu; +#ifdef IOMMU + device_t requester; +#endif int error; uint16_t rid; const char *c; @@ -314,9 +317,15 @@ device_sysctl_handler(SYSCTL_HANDLER_ARGS) } rid = 0; #ifdef IOMMU - iommu_get_requester(dev, &rid); + error = iommu_get_requester(dev, &requester, &rid); + /* + * Do not return requester error from sysctl, iommu + * unit might be assigned by other means. + */ +#else + error = ENXIO; #endif - if (rid != 0) + if (error == 0) sbuf_printf(&sb, "%srid=%#x", c, rid); break; default: diff --git a/sys/x86/iommu/amd_intrmap.c b/sys/x86/iommu/amd_intrmap.c index a4c1a7836268..f8900fe0561f 100644 --- a/sys/x86/iommu/amd_intrmap.c +++ b/sys/x86/iommu/amd_intrmap.c @@ -112,6 +112,8 @@ amdiommu_map_msi_intr(device_t src, u_int cpu, u_int vector, { struct amdiommu_ctx *ctx; struct amdiommu_unit *unit; + device_t requester; + int error __diagused; uint16_t rid; bool is_iommu; @@ -180,7 +182,8 @@ amdiommu_map_msi_intr(device_t src, u_int cpu, u_int vector, *addr |= ((uint64_t)cpu & 0xffffff00) << 32; } - iommu_get_requester(src, &rid); + error = iommu_get_requester(src, &requester, &rid); + MPASS(error == 0); AMDIOMMU_LOCK(unit); amdiommu_qi_invalidate_ir_locked(unit, rid); AMDIOMMU_UNLOCK(unit); @@ -220,6 +223,7 @@ static struct amdiommu_ctx * amdiommu_ir_find(device_t src, uint16_t *ridp, bool *is_iommu) { devclass_t src_class; + device_t requester; struct amdiommu_unit *unit; struct amdiommu_ctx *ctx; uint32_t edte; @@ -251,7 +255,8 @@ amdiommu_ir_find(device_t src, uint16_t *ridp, bool *is_iommu) error = amdiommu_find_unit(src, &unit, &rid, &dte, &edte, bootverbose); if (error == 0) { - iommu_get_requester(src, &rid); + error = iommu_get_requester(src, &requester, &rid); + MPASS(error == 0); ctx = amdiommu_get_ctx_for_dev(unit, src, rid, 0, false /* XXXKIB */, false, dte, edte); } @@ -266,6 +271,8 @@ amdiommu_ir_free_irte(struct amdiommu_ctx *ctx, device_t src, u_int cookie) { struct amdiommu_unit *unit; + device_t requester; + int error __diagused; uint16_t rid; MPASS(ctx != NULL); @@ -291,7 +298,8 @@ amdiommu_ir_free_irte(struct amdiommu_ctx *ctx, device_t src, atomic_thread_fence_rel(); bzero(irte, sizeof(*irte)); } - iommu_get_requester(src, &rid); + error = iommu_get_requester(src, &requester, &rid); + MPASS(error == 0); AMDIOMMU_LOCK(unit); amdiommu_qi_invalidate_ir_locked(unit, rid); AMDIOMMU_UNLOCK(unit); diff --git a/sys/x86/iommu/intel_intrmap.c b/sys/x86/iommu/intel_intrmap.c index 06e41523624b..f12a0c9bae9b 100644 --- a/sys/x86/iommu/intel_intrmap.c +++ b/sys/x86/iommu/intel_intrmap.c @@ -234,6 +234,8 @@ dmar_ir_find(device_t src, uint16_t *rid, int *is_dmar) { devclass_t src_class; struct dmar_unit *unit; + device_t requester; + int error __diagused; /* * We need to determine if the interrupt source generates FSB @@ -253,8 +255,10 @@ dmar_ir_find(device_t src, uint16_t *rid, int *is_dmar) unit = dmar_find_hpet(src, rid); } else { unit = dmar_find(src, bootverbose); - if (unit != NULL && rid != NULL) - iommu_get_requester(src, rid); + if (unit != NULL && rid != NULL) { + error = iommu_get_requester(src, &requester, rid); + MPASS(error == 0); + } } return (unit); } From nobody Tue Sep 9 03:06:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLTH94NFSz66FfM; Tue, 09 Sep 2025 03:06:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLTH93Cj3z3vmF; Tue, 09 Sep 2025 03:06:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YSwWu3JDwSh/d93iBnGMUSMYlBxUkP5SstZE0kVu6Xo=; b=rxW2ahPJOqrh+dgYwJWVbSv+KkbBN0VwSt5Ns4QpPiuSQvaCN1nNlJGWB/yKvFhqMlyt1h JkwFUIhZivh1C9ky6n3OH32j+WPioGrVjNnjrekNc2oXgmhWX9rc7xTh+XPBAsb7QXf9kQ wB/jEJbenjZD4G93x4Gtm4Opypa9xdSP98IDWuyoVHF8SkOZfpYjTUcm8Il5oaEQgE3zNL D9NsA3QJIl7hC8TT2Tz3dE7PAtF8R+CZ8DjD9r5lPGOosi7I++1sLUZpsp+xbcaEeUo/V3 HnwYLW9zpPaSb87Db3D5/hRkaR+ObpdebFDOu3iMGje+Tn3xm66CoAyfeU7p/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YSwWu3JDwSh/d93iBnGMUSMYlBxUkP5SstZE0kVu6Xo=; b=c1XzE+Qt1cEFfDeWxoYjx+bwU3rxowJJfUNr81LntZBZwkO/OfFxvhWWPfkta+Y80NEEuX YQtIwo4tILgb7r8KowCrP2LQK6SygmXoIFa0Rnr0rYZj7T5xDw0dBecHsasOqwVHt1Of/A Nb9P1czQmRdFRep1ixYXxinjE0CBzwxh7lmuNCn+tyz15PPLSMeDHcrtAMY77urK7zS5HV XvPdz0InYWnJuRfBXCPSftHuV8e7yHCcRcfokHtQwnwy6NUEobX8534DrDw+jNSuwHp3v5 +VYYvDxZVVtMugMhh4qNB0mxupd56G+Qj6U3Yeish0rAxfip8EFePE4IIZ1hag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757387173; a=rsa-sha256; cv=none; b=F4gdXQZwBmWjMMcsk0EIbzpKigcEv1WfYTsCLyDWrfJflz5UMGnoFKJ9wziCakGCWMdgq6 TTPDfbFODj/Pt22q2glg+rV2F+6t73YhzlIpVkmgI4w4xesSLrm69hAwWQfjDjtIEQAmIZ GQthPX/uTBLts09PUFAIHK0/+gGw8JB+kZcRcD9uVMGZDdziM+YS/eV5QEIXej4Ul74qB9 XVuyDaDRjDpvhJcaEZLAGoUiyzVShhfhn/eqr8FWUEXGdp/cHA4sZ52OHrL50nJ2n53bSn XoNwdm2UaIlKC+d70IX5lLHMFgKBXeWYck9sgadqmVhjdhv49+GHfOuD//huwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLTH92W2Qz3Cr; Tue, 09 Sep 2025 03:06: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 58936DAb093852; Tue, 9 Sep 2025 03:06:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58936D5Y093849; Tue, 9 Sep 2025 03:06:13 GMT (envelope-from git) Date: Tue, 9 Sep 2025 03:06:13 GMT Message-Id: <202509090306.58936D5Y093849@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: f51d7d5139a7 - main - kern_thr_exit(): clear kASTs in advance List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: f51d7d5139a76d225c9f537bd948525ababdef0c Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f51d7d5139a76d225c9f537bd948525ababdef0c commit f51d7d5139a76d225c9f537bd948525ababdef0c Author: Konstantin Belousov AuthorDate: 2025-09-08 03:43:09 +0000 Commit: Konstantin Belousov CommitDate: 2025-09-09 02:51:08 +0000 kern_thr_exit(): clear kASTs in advance PR: 289204 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D52421 --- sys/kern/kern_thr.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sys/kern/kern_thr.c b/sys/kern/kern_thr.c index 0e8c2b9f362e..4329959a2ef4 100644 --- a/sys/kern/kern_thr.c +++ b/sys/kern/kern_thr.c @@ -346,6 +346,17 @@ kern_thr_exit(struct thread *td) p = td->td_proc; + /* + * Clear kernel ASTs in advance of selecting the last exiting + * thread and acquiring schedulers locks. It is fine to + * clear the ASTs here even if we are not going to exit after + * all. On the other hand, leaving them pending could trigger + * execution in subsystems in a context where they are not + * prepared to handle top kernel actions, even in execution of + * an unrelated thread. + */ + ast_kclear(td); + /* * If all of the threads in a process call this routine to * exit (e.g. all threads call pthread_exit()), exactly one From nobody Tue Sep 9 03:06:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLTHC0zvmz66Fkp; Tue, 09 Sep 2025 03:06:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLTHB44Bgz3vVS; Tue, 09 Sep 2025 03:06:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kfjgeuRZC3+cUJvPxzFak3TUHOSLaRMVaG1omCYaHxo=; b=nfLIif9h3eC87x9h1rsQ0VHUTvopau0Ky9ArZhk4/IpPvVyPhjk0uY5n1gHNNLU+HNlg8u qCVvqqBLsz2ZilpqQTDE99fyfm7Eh8d1uf0ej7JKNFqS1d7hRyU2ld74/L9xwbak9Vkt+b mkzJrcJ3w5dcTml6guArMJQxTC0f7/paqPLn4z5nAASQP4Y/8VI7qH27urMBwVvNAFLuZT 0OktlAB3rgkPWcJ8rnE5nWqHAFNGpn8qm1b/rJX3Xlb1xfCzSqoIoLe7Wl643W4dxjDw0u TFb3uugusBGXOoVI1bIsCtrDcgSH4iuis6Qe7jQKs0KlnI9rsngXeA/PboXvbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757387174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kfjgeuRZC3+cUJvPxzFak3TUHOSLaRMVaG1omCYaHxo=; b=wbgp2tLo0r1sussrRaLVdcMNw5w2QbyP1ynHrpmm6cJFvhBe0pW1wLmezmg8lqqWr3Xjc6 Trcdb4Gxy6Mrpv+zjpNHvqYEw1DIFietSNVFE/Iear67jy2eIfKrZxvFaCkS7J4Xn11WTI KMPcwPvxokyGWR4rVp8nxALpOt72Kj0R6TENSukAYaCh5pgjWXNy5Scl/+B5Yb4mk6fP7t h5O8UTvPbiK2JuBxj7TQAhf5iLk9dy5ScU/SSJG8BpGX1LFiwg0huknyRXpJQbHkf4J/pP qfCBdZFRwPDEb4EMD1PcMRHOrLrccuucpV/h5HI5PtVAbTrYdtvTSmVZ9fxSTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757387174; a=rsa-sha256; cv=none; b=kTZpBCHcfR9GTyb1IoE6HvWj5jGD/4P7kpJIK5GBCfAfp7lE4N1VhnQS+JPFvKw7ATDT/n g8XkOOxhiykqBIc98xGop0guLUmfIHKcZMPwljGIO0TboLt1K7DSC2j1X92AisSBlrZF8A FYm7DgMQXvA5flD1r2jxY8u6ogcrvmcydOhmmz8Gn5qq/UnKp8qmg3eQL7ZQLMj5oNZWzu ddxDXADvJmZmIUbTkLTl5PCWmJ7nAo3BQFwbmbTKrbZpySPu3RurkEqMQ5EWLA/FEMiR7H +UbS9ttKTMZV0MTCF46q8zVc2lXcBGsVIcSfkcCGJYuwatgJKA5AXBOAU/vLgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLTHB3Y4Mz3L6; Tue, 09 Sep 2025 03:06: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 58936E5W093884; Tue, 9 Sep 2025 03:06:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58936EYh093881; Tue, 9 Sep 2025 03:06:14 GMT (envelope-from git) Date: Tue, 9 Sep 2025 03:06:14 GMT Message-Id: <202509090306.58936EYh093881@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: b0474e148959 - main - geom: only set TDP_GEOM for user threads List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: b0474e14895908f45c64158b0e558236923b8eb2 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=b0474e14895908f45c64158b0e558236923b8eb2 commit b0474e14895908f45c64158b0e558236923b8eb2 Author: Konstantin Belousov AuthorDate: 2025-09-08 13:46:08 +0000 Commit: Konstantin Belousov CommitDate: 2025-09-09 02:51:08 +0000 geom: only set TDP_GEOM for user threads For kernel threads, ASTs are not handled at all, so there is no reason to expect that g_waitidle() would be called through AST scheduling. PR: 289204 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D52421 --- sys/geom/geom_event.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sys/geom/geom_event.c b/sys/geom/geom_event.c index 341233a6ef47..ffd46db55416 100644 --- a/sys/geom/geom_event.c +++ b/sys/geom/geom_event.c @@ -347,6 +347,7 @@ static void g_post_event_ep_va(g_event_t *func, void *arg, int wuflag, struct g_event *ep, va_list ap) { + struct thread *td; void *p; u_int n; @@ -366,8 +367,12 @@ g_post_event_ep_va(g_event_t *func, void *arg, int wuflag, TAILQ_INSERT_TAIL(&g_events, ep, events); mtx_unlock(&g_eventlock); wakeup(&g_wait_event); - curthread->td_pflags |= TDP_GEOM; - ast_sched(curthread, TDA_GEOM); + + td = curthread; + if ((td->td_pflags & TDP_KTHREAD) == 0) { + td->td_pflags |= TDP_GEOM; + ast_sched(td, TDA_GEOM); + } } void From nobody Tue Sep 9 05:06:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLWyK5J51z66NSS; Tue, 09 Sep 2025 05:06:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLWyK4mMRz48vD; Tue, 09 Sep 2025 05:06:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757394409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TzC7T15q6b/pP0aL3NkcFadsBbVHh+IuJcC7W57KvX8=; b=rPvIEVoPl4d+8qkY1mQKGjtMO5qC4HGhN241OB+5lVjF4XfJ6UFoQUvHQKci5KXQSFnY2O Bna9yiQpHCKVD3+Cw00sGtEU2Rb0Q7iorvL0GxcM/E1Kc/C9fE6rjk49WfeY8juwuyWmAr dnLPdTcrrmMpTxLoa7wvfGayKWbyhKyYpwPIpDlAizY1n/9JF3IUc15uYUM1wJWxkeqIo5 mMNPP52x7BD6kWHfE3ZVdtnx8jNdTpWzSelsScTyTnwSVlF6dHxBVpHTfNS1U5ZVwQ7wYQ pyqnWFB9NbVqxKUVwFSAZugVZKE+xm1cssjMkGO7GjamhBWfAyFVKOMdnaCxbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757394409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TzC7T15q6b/pP0aL3NkcFadsBbVHh+IuJcC7W57KvX8=; b=xhR9DF6zOradSpEYxzK+Gwo2M7Yscl3dFM8M3hdijiORS114fhlhz1Nj5a7RxzE2q0mm56 zLFlOD7lsKWXrZI7QHxJw3FGCHD4o0sT222GxsQK9aJdrhDhrsT32CUnGguq1NcvvqvdyC ELB8B9PQvEISi0K7AOb2zWh2YF7ZHkXzGYnhQc9u42cGPFQN275bhPPKrErl9Ctb0EblY7 nYeskAlrw5uCLwjBncvsYKwbVyvp0U1WGarLeGzRPG+apC3A6oe2TrUWGDcggErAh8GgDD Nrp08dd/sI/WoHSBPZByqXcawX4n3vZFS+GkNQ5Dzm7p2TqMD2qVPPNt8o4Ilg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757394409; a=rsa-sha256; cv=none; b=mleM3NoEV9UluA3URkweXZAIufuZ10XEBNDe4o54k4HwpdNbF5eQ8xiByDB1gPayJ2OL/+ 1q9LVkjSpwlHYlhXn2xrxGLn6uwyoGgNOkdGxBY8+O8yGx+ABC+B+H98gYOmC9c/DSUTug 4YMCssysM2gomXuJnSE5p+vu/Ddl5W28CCLv3X39zjkSUO2LR4QBbZiA1yjmGPKypPCfmM OUgZCC+nDQXYW80ZPaYx8XrbtwFUDOcKOXlyKTGf9C80e74RrYMvRB9xr9GzYL1nnHXX4v 1Q4DgQMBD4yGmlfs4LJiBWSRYJ5pkekJQx9VnIBS5TUNC4J1bskFeSGbYEFF8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLWyK42l5z6fw; Tue, 09 Sep 2025 05:06: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 58956nOT018257; Tue, 9 Sep 2025 05:06:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58956nuW018254; Tue, 9 Sep 2025 05:06:49 GMT (envelope-from git) Date: Tue, 9 Sep 2025 05:06:49 GMT Message-Id: <202509090506.58956nuW018254@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: 54cc3da443da - main - moused: fix GCC build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 54cc3da443da7e4a8a483d1fe46071382ff06ed0 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=54cc3da443da7e4a8a483d1fe46071382ff06ed0 commit 54cc3da443da7e4a8a483d1fe46071382ff06ed0 Author: Ahmad Khalifa AuthorDate: 2025-09-09 03:54:24 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 03:54:24 +0000 moused: fix GCC build error: 'static' is not at beginning of declaration [-Werror=old-style-declaration] --- usr.sbin/moused/moused/moused.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/moused/moused/moused.c b/usr.sbin/moused/moused/moused.c index 33bcf359a1a0..acd6e5223685 100644 --- a/usr.sbin/moused/moused/moused.c +++ b/usr.sbin/moused/moused/moused.c @@ -1155,7 +1155,7 @@ pause_mouse(__unused int sig) static int connect_devd(void) { - const static struct sockaddr_un sa = { + static const struct sockaddr_un sa = { .sun_family = AF_UNIX, .sun_path = "/var/run/devd.seqpacket.pipe", }; From nobody Tue Sep 9 07:58:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLblr44xNz66YyN; Tue, 09 Sep 2025 07:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLblr3B0Mz3DGQ; Tue, 09 Sep 2025 07:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KTcramT38HYQwV09o6zl8uKeP2o/dHJrl28wMpBJhzc=; b=NBUhpBXb4jeEwTJn27kqb9Ij3cXf3G8kxi4VA4VZqtRdmJMXEku9LpufR8rI6MYvg7OqRS lrL+K4j3C0ycfkMYlvAQ/mdsz0DY0UohCh0jxbcbtUgSVYwzr3wKWTP5hlAwL/L6mO11Ub F8W0ILGudsJdq9neamBwx4zH8AH+Nhf6CdyFgP/272b2I2McOt15e3RqGa+J0dJ2i6DV0K u+J+z44jtHWAdVxBlI12LTpiNZrYV1tR/7DoFCJlPvE9qkdA79UWMebzv9sA2FdX+te8bM YYjdePD3FkFOie2YrsWFO9TFQenjqvBG5uLY2UgrUlbMoWnF76nLT0ybeXDZhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KTcramT38HYQwV09o6zl8uKeP2o/dHJrl28wMpBJhzc=; b=vLMfgOHuSLCUj60HMhZtK7e95fQeh9A5J/7urWlDCbiP4EvBahuSuKPJLLunoyiyknlni9 JtGSzohBr/6x2cca6Q4Ctp9XW2FLOMwQ8sfJcYMFDE9xlIDANYrJL77h3+8DgNp5cW7z8N 8MfOo+HFDsZEatp8eyYkcpnG+5x6Nlx+yRDkK2LW7CCuiT3SkNPSp3zAnWWhDqQTcybPYW 49t54WgcycvDIwWSnwl6wBYDx1YlL6iwjXrgm/baEFpzUlNVn+25gXQ+/vyfIYXLnlByeL FVe2HMTmSxKYdozNAbRLb4mE69XlCF5fa1oCx1ZuyovU6DSJwzyQ0XzlyyOfew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757404680; a=rsa-sha256; cv=none; b=UzNyJ6CG7zEG/RfGhrb0GrXlyEKcPzqGnEybjUq+RtsiDU3Lx2Or67xHFx85skQnJodR9b xsxJVPifZM9Pu/nVIQ0nFPLaMdeavSrzXhWKIzlHvUPmOpHNjri73V2f1UuyoDWcaLs+19 zzRqHOlvOTciObpFaBtHDoYzMW3GR2gKDyr31hW0HsJEh1QdGfNzq5q4UYgWTd23RCDePW n4xkSDx40Pn1neunQh2vmP9gUHNRuDbW25BiSAc3VpVQxlLvh4hkq0TcjgQF39X0MZwemB XaxBSErymy6/MaC6ciA3WCcEaeEbloKyt1Ial9HaD+MjNgmwR56wzBZu4Du78Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLblr2WD4zBbm; Tue, 09 Sep 2025 07:58: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 5897w0PU037402; Tue, 9 Sep 2025 07:58:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5897w0Yo037399; Tue, 9 Sep 2025 07:58:00 GMT (envelope-from git) Date: Tue, 9 Sep 2025 07:58:00 GMT Message-Id: <202509090758.5897w0Yo037399@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d44095394237 - main - vm_domainset: Only probe domains once when iterating, instead of up to 4 times List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d440953942372ca275d0743a6e220631bde440ee Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d440953942372ca275d0743a6e220631bde440ee commit d440953942372ca275d0743a6e220631bde440ee Author: Olivier Certner AuthorDate: 2025-07-07 20:29:12 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 07:56:45 +0000 vm_domainset: Only probe domains once when iterating, instead of up to 4 times Because of the 'di_minskip' logic, which resets the initial domain, an iterator starts by considering only domains that have more than 'free_min' pages in a first phase, and then all domains in a second one. Non-"underpaged" domains are thus examined twice, even if the allocation can't succeed. Re-scanning the same domains twice just wastes time, as allocation attempts that must not wait may rely on failing sooner and those that must will loop anyway (a domain previously scanned twice has more pages than 'free_min' and consequently vm_wait_doms() will just return immediately). Additionally, the DOMAINSET_POLICY_FIRSTTOUCH policy would aggravate this situation by reexamining the current domain again at the end of each phase. In the case of a single domain, this means doubling again the number of times domain 0 is probed. Implementation consists in adding two 'domainset_t' to 'struct vm_domainset_iter' (and removing the 'di_n' counter). The first, 'di_remain_mask', contains domains still to be explored in the current phase, the first phase concerning only domains with more pages than 'free_min' ('di_minskip' true) and the second one concerning only domains previously under 'free_min' ('di_minskip' false). The second, 'di_min_mask', holds the domains with less pages than 'free_min' encountered during the first phase, and serves as the reset value for 'di_remain_mask' when transitioning to the second phase. PR: 277476 Fixes: e5818a53dbd2 ("Implement several enhancements to NUMA policies.") Fixes: 23984ce5cd24 ("Avoid resource deadlocks when one domain has exhausted its memory."...) MFC after: 10 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51249 --- sys/vm/vm_domainset.c | 53 ++++++++++++++++++++++++++++++--------------------- sys/vm/vm_domainset.h | 6 +++++- 2 files changed, 36 insertions(+), 23 deletions(-) diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index b44bdb96b0d4..bd15449559a5 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -131,7 +131,8 @@ static void vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain) { - KASSERT(di->di_n > 0, ("%s: Invalid n %d", __func__, di->di_n)); + KASSERT(!DOMAINSET_EMPTY(&di->di_remain_mask), + ("%s: Already iterated on all domains", __func__)); switch (di->di_policy) { case DOMAINSET_POLICY_FIRSTTOUCH: /* @@ -161,37 +162,39 @@ vm_domainset_iter_first(struct vm_domainset_iter *di, int *domain) switch (di->di_policy) { case DOMAINSET_POLICY_FIRSTTOUCH: *domain = PCPU_GET(domain); - if (DOMAINSET_ISSET(*domain, &di->di_valid_mask)) { - /* - * Add an extra iteration because we will visit the - * current domain a second time in the rr iterator. - */ - di->di_n = di->di_domain->ds_cnt + 1; + if (DOMAINSET_ISSET(*domain, &di->di_valid_mask)) break; - } /* * To prevent impossible allocations we convert an invalid * first-touch to round-robin. */ /* FALLTHROUGH */ case DOMAINSET_POLICY_ROUNDROBIN: - di->di_n = di->di_domain->ds_cnt; vm_domainset_iter_rr(di, domain); break; case DOMAINSET_POLICY_PREFER: *domain = di->di_domain->ds_prefer; - di->di_n = di->di_domain->ds_cnt; break; case DOMAINSET_POLICY_INTERLEAVE: vm_domainset_iter_interleave(di, domain); - di->di_n = di->di_domain->ds_cnt; break; default: panic("%s: Unknown policy %d", __func__, di->di_policy); } - KASSERT(di->di_n > 0, ("%s: Invalid n %d", __func__, di->di_n)); KASSERT(*domain < vm_ndomains, ("%s: Invalid domain %d", __func__, *domain)); + + /* Initialize the mask of domains to visit. */ + if (di->di_minskip) { + /* Phase 1: Skip domains under 'v_free_min'. */ + DOMAINSET_COPY(&di->di_valid_mask, &di->di_remain_mask); + DOMAINSET_ZERO(&di->di_min_mask); + } else + /* Phase 2: Browse domains that were under 'v_free_min'. */ + DOMAINSET_COPY(&di->di_min_mask, &di->di_remain_mask); + + /* Mark first domain as seen. */ + DOMAINSET_CLR(*domain, &di->di_remain_mask); } void @@ -225,12 +228,15 @@ vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, if (__predict_false(DOMAINSET_EMPTY(&di->di_valid_mask))) return (ENOMEM); - /* If there are more domains to visit we run the iterator. */ - while (--di->di_n != 0) { + /* If there are more domains to visit in this phase, run the iterator. */ + while (!DOMAINSET_EMPTY(&di->di_remain_mask)) { vm_domainset_iter_next(di, domain); - if (DOMAINSET_ISSET(*domain, &di->di_valid_mask) && - (!di->di_minskip || !vm_page_count_min_domain(*domain))) - return (0); + if (DOMAINSET_ISSET(*domain, &di->di_remain_mask)) { + DOMAINSET_CLR(*domain, &di->di_remain_mask); + if (!di->di_minskip || !vm_page_count_min_domain(*domain)) + return (0); + DOMAINSET_SET(*domain, &di->di_min_mask); + } } /* If we skipped domains below min restart the search. */ @@ -298,12 +304,15 @@ vm_domainset_iter_policy(struct vm_domainset_iter *di, int *domain) if (DOMAINSET_EMPTY(&di->di_valid_mask)) return (ENOMEM); - /* If there are more domains to visit we run the iterator. */ - while (--di->di_n != 0) { + /* If there are more domains to visit in this phase, run the iterator. */ + while (!DOMAINSET_EMPTY(&di->di_remain_mask)) { vm_domainset_iter_next(di, domain); - if (DOMAINSET_ISSET(*domain, &di->di_valid_mask) && - (!di->di_minskip || !vm_page_count_min_domain(*domain))) - return (0); + if (DOMAINSET_ISSET(*domain, &di->di_remain_mask)) { + DOMAINSET_CLR(*domain, &di->di_remain_mask); + if (!di->di_minskip || !vm_page_count_min_domain(*domain)) + return (0); + DOMAINSET_SET(*domain, &di->di_min_mask); + } } /* If we skipped domains below min restart the search. */ diff --git a/sys/vm/vm_domainset.h b/sys/vm/vm_domainset.h index 0d325a642f40..b223a4d03df9 100644 --- a/sys/vm/vm_domainset.h +++ b/sys/vm/vm_domainset.h @@ -33,11 +33,15 @@ struct pctrie_iter; struct vm_domainset_iter { struct domainset *di_domain; unsigned int *di_iter; + /* Initialized from 'di_domain', initial value after reset. */ domainset_t di_valid_mask; + /* Domains to browse in the current phase. */ + domainset_t di_remain_mask; + /* Domains skipped in phase 1 because under 'v_free_min'. */ + domainset_t di_min_mask; vm_pindex_t di_offset; int di_flags; uint16_t di_policy; - domainid_t di_n; bool di_minskip; }; From nobody Tue Sep 9 07:58:01 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLbls4CNnz66Ytd; Tue, 09 Sep 2025 07:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLbls3MvMz3DDb; Tue, 09 Sep 2025 07:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cYXZvVphO6PVVWgP59LrQXNs//99fsppcFZwDM6C3LA=; b=cgyW6zi8rlPtYqsxwNKOIZZFyXLbVKmdEdjxAKuhnIbvv9xcieI3aZwI52rmbfrqZVNRzu FEBDLEBVfe7p/NTZ7GN2rVxAPppeoRmP9CtiYBAO7Hs6eO055+yIE5/ZH7DZs/3/4FwT1c G7XU78sdSysltSWQ7zwSws6+eNK7zaYgLMJzx0Pp0uUlrOeD5ku0onvtlBA32BEa7GgxAL wEr9o/67Y3h+MYdFbUu4Rnos0MxRQ3nogfVER8z/Xm3BZ9R1vQz3cTv1BQVCV2vsmymA7i 2Ty9Y6bvTLUV0KuZ6OP6oPlNu8cz5uBERyVoZ/TXqN/UmQtlJkvPbGGL5shWig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cYXZvVphO6PVVWgP59LrQXNs//99fsppcFZwDM6C3LA=; b=REABhNeBnRBTBaikhu5J2Vz2Zffg0wk6b16KopOwbLQjLCWhHZWLZdR2K3RkQBP9NccCUM ny6++nAGQFhUzlSmH2ivz+LM/encU+Yo/LfpQabWuPQINjjQRJp4rk79Mfox36pScsKcLG Lk66V2ucOhiuc50ABDXE+di/mQDExxWOMbagHUEXohyesWSJtd+k18PIL9ZaWDN+MzgKSP 5mAuAMdUh4MRMk117wUbBcOoEdPAarKRRw+q0UJq2apQeYruyZA2RQ/nxr5FO+nw4oYvbQ eu4Qv99GdolrxvaSHKVlFA79/qQQD2aG0y3TwiKdEm1XXBn9C8L+FV4iU0wgLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757404681; a=rsa-sha256; cv=none; b=VAIclga+aRvxa/Mtk4Nrq8iShzNHzc/YCIZrCtwL2I1AK+ZF0VZSI4lvhIr9dkRDzBXgzN 4tKbogBRUh0SUxvD8eVEG5n4fvlSiTvIqdJ3upnkChTOBMTyoZqedJjeP30yFyoWBu4k3q Yi+UdaCQsWW6KjT3EvxEME95L0fuvmvHEdtyyEslKcsmwH6bZ0WOjj0g+m0IyyDh5hjPTk qlPqAgkXInbifX04z/rMuX7ZeYhs9Cz+H+MMI7hRi69WS9eV0pr0FNDFT/5Mg65sHu5oeH AkG7Xt77gUKOweBXVOYZQZzUqdFmWsTM4dZec11nAVjXmkm+ruhyt0ABhjKg2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLbls2YxzzBdf; Tue, 09 Sep 2025 07:58: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 5897w1EA037436; Tue, 9 Sep 2025 07:58:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5897w1fg037433; Tue, 9 Sep 2025 07:58:01 GMT (envelope-from git) Date: Tue, 9 Sep 2025 07:58:01 GMT Message-Id: <202509090758.5897w1fg037433@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d0b691a7c1aa - main - vm_domainset: Simplify vm_domainset_iter_next() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 commit d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 Author: Olivier Certner AuthorDate: 2025-07-07 20:37:14 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 07:56:50 +0000 vm_domainset: Simplify vm_domainset_iter_next() As we are now visiting each domain only once, the test in vm_domainset_iter_prefer() about skipping the preferred domain (the one initially visited for policy DOMAINSET_POLICY_PREFER) becomes redundant. Removing it makes this function essentially the same as vm_domainset_iter_rr(). Thus, remove vm_domainset_iter_prefer(). This makes all policies behave the same in vm_domainset_iter_next(). No functional change (intended). PR: 277476 MFC after: 10 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51250 --- sys/vm/vm_domainset.c | 32 ++------------------------------ 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index bd15449559a5..a46dbe5ae92e 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -101,22 +101,11 @@ static void vm_domainset_iter_rr(struct vm_domainset_iter *di, int *domain) { + /* Grab the next domain in 'ds_order'. */ *domain = di->di_domain->ds_order[ ++(*di->di_iter) % di->di_domain->ds_cnt]; } -static void -vm_domainset_iter_prefer(struct vm_domainset_iter *di, int *domain) -{ - int d; - - do { - d = di->di_domain->ds_order[ - ++(*di->di_iter) % di->di_domain->ds_cnt]; - } while (d == di->di_domain->ds_prefer); - *domain = d; -} - static void vm_domainset_iter_interleave(struct vm_domainset_iter *di, int *domain) { @@ -133,24 +122,7 @@ vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain) KASSERT(!DOMAINSET_EMPTY(&di->di_remain_mask), ("%s: Already iterated on all domains", __func__)); - switch (di->di_policy) { - case DOMAINSET_POLICY_FIRSTTOUCH: - /* - * To prevent impossible allocations we convert an invalid - * first-touch to round-robin. - */ - /* FALLTHROUGH */ - case DOMAINSET_POLICY_INTERLEAVE: - /* FALLTHROUGH */ - case DOMAINSET_POLICY_ROUNDROBIN: - vm_domainset_iter_rr(di, domain); - break; - case DOMAINSET_POLICY_PREFER: - vm_domainset_iter_prefer(di, domain); - break; - default: - panic("%s: Unknown policy %d", __func__, di->di_policy); - } + vm_domainset_iter_rr(di, domain); KASSERT(*domain < vm_ndomains, ("%s: Invalid domain %d", __func__, *domain)); } From nobody Tue Sep 9 07:58:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLblt6ywfz66Ywj; Tue, 09 Sep 2025 07:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLblt4yjDz3DDp; Tue, 09 Sep 2025 07:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AZPkWCA0t4o2yL4MnbM8LKaT5VwtTUjFCvYrI/ysebM=; b=mh/7fTshpFjdofRfcozCpuDqO1FLp1u4+Ul/nUCCHsDrowYcn0JKIiceZdR/oXauvGXJoR NP103DRSYC5bDEkM5htGuLw0yXmHIwjuHLwlJhiOPc/+GWoWdy9c60mmANHEW/F+nbMjIN 3AzGAiWWGtPMfo7zAH7V2P8byKorN6K7Va2b07VBMo6YnU8CHcSkVp/X/FljhGC/0TZsnZ ZXG2dwDbsed/OCa/TsEsLzWTha4XjBQbBEEr5tFcRVf3Fl4x+yxoHSWR5lcpMcu1+IeInE vPxOnEsZdhu+1IqkvbBTGdWHakcGOm+BOJQQcPkqDrIdsrMzEyNswoNSiabaQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AZPkWCA0t4o2yL4MnbM8LKaT5VwtTUjFCvYrI/ysebM=; b=pIA16tdRfSzMqjDmeODgM7yN2MHeajRXIQ80CrEHXO7XY/fyj5U74RePPmIaew8g+2RAon SLTLtxg+rrNOPFd51KBqqck+hiMEEz70+8IflnzeslLeZ9BooaPJjyS7wzjzs/wr/tyaC8 bBCjMukCoKk05P7quhyeA84mIELLlh6b7Qbsk4R7B7R2Mlk3y4uJ7ftFKpvmGCVJokumuO jQwLQKlntBbHGeA5fbO+qLvfHJqe/JpYBw5SoZRp0KNTaTL5aYzV0zcz0IxinriTU7aBEH IsUc6zQcdNU8pArj7zhrg+Lc1TG/Mf451l+H1FgNVEtOvxPvzCmTDT941ZNg7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757404682; a=rsa-sha256; cv=none; b=SSzlvjra8BRwLoA3sx6Wl6e6QOfnwBcxtvxl2HazwmxAogRdqya3t/RjRCZJECYu2f2u0X 4xuBOS1qywz8izd+yE9VCYecYacrgpLb6QNmmnrl7U1P0dm0UoI9W7hA81tNwjP77oI6md rOO2ZCmqJH5W/NoxLCKW4qNDriVNreRa0Vz2DY/MOzm2zORZGHu3Vf26hC75TAN17DaJtL wVvJiOSbX4UjvoP7TtRXApLt9j6RAZUC2Ta09iueQLYu3f8Fvxx9/CGv0RmD7fn3HbZVgz PdK2Dl5Na6SQe5Cqiy277R5hbXTjIpsv+zxZHho2+FVIAr9cJ8C/peuRAHZk9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLblt3LXZzBSW; Tue, 09 Sep 2025 07:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5897w2GL037473; Tue, 9 Sep 2025 07:58:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5897w2sj037470; Tue, 9 Sep 2025 07:58:02 GMT (envelope-from git) Date: Tue, 9 Sep 2025 07:58:02 GMT Message-Id: <202509090758.5897w2sj037470@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 637d9858e6a8 - main - vm_domainset: Refactor iterators, multiple fixes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 637d9858e6a8b4a8a3ee4dd80743a58bde4cbd68 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=637d9858e6a8b4a8a3ee4dd80743a58bde4cbd68 commit 637d9858e6a8b4a8a3ee4dd80743a58bde4cbd68 Author: Olivier Certner AuthorDate: 2025-07-08 12:28:31 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 07:56:51 +0000 vm_domainset: Refactor iterators, multiple fixes vm_domainset_iter_first() would not check if the initial domain selected by the policy was effectively valid (i.e., allowed by the domainset and not marked as ignored by vm_domainset_iter_ignore()). It would just try to skip it if it had less pages than 'free_min', and would not take into account the possibility of no domains being valid. Factor out code that logically belongs to the iterator machinery and is not tied to how allocations (or impossibility thereof) are to be handled. This allows to remove duplicated code between vm_domainset_iter_page() and vm_domainset_iter_policy(), and between vm_domainset_iter_page_init() and _vm_domainset_iter_policy_init(). This also allows to remove the 'pages' parameter from vm_domainset_iter_page_init(). This also makes the two-phase logic clearer, revealing an inconsistency between setting 'di_minskip' to true in vm_domainset_iter_init() (implying that, in the case of waiting allocations, further attempts after the first sleep should just allocate for the first domain, regardless of their situation with respect to their 'free_min') and trying to skip the first domain if it has too few pages in vm_domainset_iter_page_init() and _vm_domainset_iter_policy_init(). Fix this inconsistency by resetting 'di_minskip' to 'true' in vm_domainset_iter_first() instead so that, after each vm_wait_doms() (waiting allocations that could not be satisfied immediately), we again start with only the domains that have more than 'free_min' pages. While here, fix the minor quirk that the round-robin policy would start with the domain after the one pointed to by the initial value of 'di_iter' (this just affects the case of resetting '*di_iter', and would not cause domain skips in other circumstances, i.e., for waiting allocations that actually wait or at each subsequent new iterator creation with same iteration index storage). PR: 277476 Tested by: Kenneth Raplee Fixes: 7b11a4832691 ("Add files for r327895") Fixes: e5818a53dbd2 ("Implement several enhancements to NUMA policies.") Fixes: 23984ce5cd24 ("Avoid resource deadlocks when one domain has exhausted its memory."...) MFC after: 10 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51251 --- sys/kern/kern_malloc.c | 11 ++- sys/vm/uma_core.c | 10 ++- sys/vm/vm_domainset.c | 238 +++++++++++++++++++++++++++++-------------------- sys/vm/vm_domainset.h | 9 +- sys/vm/vm_glue.c | 2 +- sys/vm/vm_kern.c | 12 ++- sys/vm/vm_page.c | 21 +++-- 7 files changed, 181 insertions(+), 122 deletions(-) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 879220be050b..653ce1ee556b 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -751,11 +751,14 @@ malloc_domainset(size_t size, struct malloc_type *mtp, struct domainset *ds, return (malloc_large(size, mtp, DOMAINSET_RR(), flags DEBUG_REDZONE_ARG)); - vm_domainset_iter_policy_init(&di, ds, &domain, &flags); - do { - va = malloc_domain(&size, &indx, mtp, domain, flags); - } while (va == NULL && vm_domainset_iter_policy(&di, &domain) == 0); + indx = -1; + va = NULL; + if (vm_domainset_iter_policy_init(&di, ds, &domain, &flags) == 0) + do { + va = malloc_domain(&size, &indx, mtp, domain, flags); + } while (va == NULL && vm_domainset_iter_policy(&di, &domain) == 0); malloc_type_zone_allocated(mtp, va == NULL ? 0 : size, indx); + if (__predict_false(va == NULL)) { KASSERT((flags & M_WAITOK) == 0, ("malloc(M_WAITOK) returned NULL")); diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c index 5189f7405400..679b2e20e88b 100644 --- a/sys/vm/uma_core.c +++ b/sys/vm/uma_core.c @@ -4017,8 +4017,9 @@ restart: rr = rdomain == UMA_ANYDOMAIN; if (rr) { aflags = (flags & ~M_WAITOK) | M_NOWAIT; - vm_domainset_iter_policy_ref_init(&di, &keg->uk_dr, &domain, - &aflags); + if (vm_domainset_iter_policy_ref_init(&di, &keg->uk_dr, &domain, + &aflags) != 0) + return (NULL); } else { aflags = flags; domain = rdomain; @@ -5245,8 +5246,9 @@ uma_prealloc(uma_zone_t zone, int items) slabs = howmany(items, keg->uk_ipers); while (slabs-- > 0) { aflags = M_NOWAIT; - vm_domainset_iter_policy_ref_init(&di, &keg->uk_dr, &domain, - &aflags); + if (vm_domainset_iter_policy_ref_init(&di, &keg->uk_dr, &domain, + &aflags) != 0) + panic("%s: Domainset is empty", __func__); for (;;) { slab = keg_alloc_slab(keg, zone, domain, M_WAITOK, aflags); diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index a46dbe5ae92e..9fa17da954f7 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -58,6 +58,9 @@ static int vm_domainset_default_stride = 64; +static bool vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain); + + /* * Determine which policy is to be used for this allocation. */ @@ -93,8 +96,6 @@ vm_domainset_iter_init(struct vm_domainset_iter *di, struct domainset *ds, pindex += (((uintptr_t)obj) / sizeof(*obj)); di->di_offset = pindex; } - /* Skip domains below min on the first pass. */ - di->di_minskip = true; } static void @@ -103,7 +104,7 @@ vm_domainset_iter_rr(struct vm_domainset_iter *di, int *domain) /* Grab the next domain in 'ds_order'. */ *domain = di->di_domain->ds_order[ - ++(*di->di_iter) % di->di_domain->ds_cnt]; + (*di->di_iter)++ % di->di_domain->ds_cnt]; } static void @@ -116,31 +117,21 @@ vm_domainset_iter_interleave(struct vm_domainset_iter *di, int *domain) *domain = di->di_domain->ds_order[d]; } -static void -vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain) -{ - - KASSERT(!DOMAINSET_EMPTY(&di->di_remain_mask), - ("%s: Already iterated on all domains", __func__)); - vm_domainset_iter_rr(di, domain); - KASSERT(*domain < vm_ndomains, - ("%s: Invalid domain %d", __func__, *domain)); -} - -static void -vm_domainset_iter_first(struct vm_domainset_iter *di, int *domain) +/* + * Internal function determining the current phase's first candidate domain. + * + * Returns whether these is an eligible domain, which is returned through + * '*domain'. '*domain' can be modified even if there is no eligible domain. + * + * See herald comment of vm_domainset_iter_first() below about phases. + */ +static bool +vm_domainset_iter_phase_first(struct vm_domainset_iter *di, int *domain) { - switch (di->di_policy) { case DOMAINSET_POLICY_FIRSTTOUCH: *domain = PCPU_GET(domain); - if (DOMAINSET_ISSET(*domain, &di->di_valid_mask)) - break; - /* - * To prevent impossible allocations we convert an invalid - * first-touch to round-robin. - */ - /* FALLTHROUGH */ + break; case DOMAINSET_POLICY_ROUNDROBIN: vm_domainset_iter_rr(di, domain); break; @@ -156,25 +147,114 @@ vm_domainset_iter_first(struct vm_domainset_iter *di, int *domain) KASSERT(*domain < vm_ndomains, ("%s: Invalid domain %d", __func__, *domain)); + /* + * Has the policy's start domain already been visited? + */ + if (!DOMAINSET_ISSET(*domain, &di->di_remain_mask)) + return (vm_domainset_iter_next(di, domain)); + + DOMAINSET_CLR(*domain, &di->di_remain_mask); + + /* Does it have enough free pages (phase 1)? */ + if (di->di_minskip && vm_page_count_min_domain(*domain)) { + /* Mark the domain as eligible for phase 2. */ + DOMAINSET_SET(*domain, &di->di_min_mask); + return (vm_domainset_iter_next(di, domain)); + } + + return (true); +} + +/* + * Resets an iterator to point to the first candidate domain. + * + * Returns whether there is an eligible domain to start with. '*domain' may be + * modified even if there is none. + * + * There must have been one call to vm_domainset_iter_init() before. + * + * This function must be called at least once before calling + * vm_domainset_iter_next(). Note that functions wrapping + * vm_domainset_iter_init() usually do that themselves. + * + * This function may be called again to reset the iterator to the policy's first + * candidate domain. After each reset, the iterator will visit the same domains + * as in the previous iteration minus those on which vm_domainset_iter_ignore() + * has been called. Note that the first candidate domain may change at each + * reset (at time of this writing, only on the DOMAINSET_POLICY_ROUNDROBIN + * policy). + * + * Domains which have a number of free pages over 'v_free_min' are always + * visited first (this is called the "phase 1" in comments, "phase 2" being the + * examination of the remaining domains; no domains are ever visited twice). + */ +static bool +vm_domainset_iter_first(struct vm_domainset_iter *di, int *domain) +{ /* Initialize the mask of domains to visit. */ + DOMAINSET_COPY(&di->di_valid_mask, &di->di_remain_mask); + /* + * No candidate domains for phase 2 at start. This will be filled by + * phase 1. + */ + DOMAINSET_ZERO(&di->di_min_mask); + /* Skip domains below 'v_free_min' on phase 1. */ + di->di_minskip = true; + + return (vm_domainset_iter_phase_first(di, domain)); +} + +/* + * Advances the iterator to the next candidate domain. + * + * Returns whether there was another domain to visit. '*domain' may be modified + * even if there is none. + * + * vm_domainset_iter_first() must have been called at least once before using + * this function (see its herald comment for more details on iterators). + */ +static bool +vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain) +{ + /* Loop while there remains domains to visit in the current phase. */ + while (!DOMAINSET_EMPTY(&di->di_remain_mask)) { + /* Grab the next domain in 'ds_order'. */ + vm_domainset_iter_rr(di, domain); + KASSERT(*domain < vm_ndomains, + ("%s: Invalid domain %d", __func__, *domain)); + + if (DOMAINSET_ISSET(*domain, &di->di_remain_mask)) { + DOMAINSET_CLR(*domain, &di->di_remain_mask); + if (!di->di_minskip || !vm_page_count_min_domain(*domain)) + return (true); + DOMAINSET_SET(*domain, &di->di_min_mask); + } + } + + /* + * If phase 1 (skip low memory domains) is over, start phase 2 (consider + * low memory domains). + */ if (di->di_minskip) { - /* Phase 1: Skip domains under 'v_free_min'. */ - DOMAINSET_COPY(&di->di_valid_mask, &di->di_remain_mask); - DOMAINSET_ZERO(&di->di_min_mask); - } else - /* Phase 2: Browse domains that were under 'v_free_min'. */ + di->di_minskip = false; + /* Browse domains that were under 'v_free_min'. */ DOMAINSET_COPY(&di->di_min_mask, &di->di_remain_mask); + return (vm_domainset_iter_phase_first(di, domain)); + } - /* Mark first domain as seen. */ - DOMAINSET_CLR(*domain, &di->di_remain_mask); + return (false); } -void +int vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, - vm_pindex_t pindex, int *domain, int *req, struct pctrie_iter *pages) + vm_pindex_t pindex, int *domain, int *req) { struct domainset_ref *dr; + di->di_flags = *req; + *req = (di->di_flags & ~(VM_ALLOC_WAITOK | VM_ALLOC_WAITFAIL)) | + VM_ALLOC_NOWAIT; + /* * Object policy takes precedence over thread policy. The policies * are immutable and unsynchronized. Updates can race but pointer @@ -184,39 +264,21 @@ vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, dr = &obj->domain; else dr = &curthread->td_domain; + vm_domainset_iter_init(di, dr->dr_policy, &dr->dr_iter, obj, pindex); - di->di_flags = *req; - *req = (di->di_flags & ~(VM_ALLOC_WAITOK | VM_ALLOC_WAITFAIL)) | - VM_ALLOC_NOWAIT; - vm_domainset_iter_first(di, domain); - if (vm_page_count_min_domain(*domain)) - vm_domainset_iter_page(di, obj, domain, pages); + /* + * XXXOC: Shouldn't we just panic on 'false' if VM_ALLOC_WAITOK was + * passed? + */ + return (vm_domainset_iter_first(di, domain) ? 0 : ENOMEM); } int vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, int *domain, struct pctrie_iter *pages) { - if (__predict_false(DOMAINSET_EMPTY(&di->di_valid_mask))) - return (ENOMEM); - - /* If there are more domains to visit in this phase, run the iterator. */ - while (!DOMAINSET_EMPTY(&di->di_remain_mask)) { - vm_domainset_iter_next(di, domain); - if (DOMAINSET_ISSET(*domain, &di->di_remain_mask)) { - DOMAINSET_CLR(*domain, &di->di_remain_mask); - if (!di->di_minskip || !vm_page_count_min_domain(*domain)) - return (0); - DOMAINSET_SET(*domain, &di->di_min_mask); - } - } - - /* If we skipped domains below min restart the search. */ - if (di->di_minskip) { - di->di_minskip = false; - vm_domainset_iter_first(di, domain); + if (vm_domainset_iter_next(di, domain)) return (0); - } /* If we visited all domains and this was a NOWAIT we return error. */ if ((di->di_flags & (VM_ALLOC_WAITOK | VM_ALLOC_WAITFAIL)) == 0) @@ -235,64 +297,43 @@ vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, return (ENOMEM); /* Restart the search. */ - vm_domainset_iter_first(di, domain); - - return (0); + /* XXXOC: Shouldn't we just panic on 'false'? */ + return (vm_domainset_iter_first(di, domain) ? 0 : ENOMEM); } -static void +static int _vm_domainset_iter_policy_init(struct vm_domainset_iter *di, int *domain, int *flags) { - di->di_flags = *flags; *flags = (di->di_flags & ~M_WAITOK) | M_NOWAIT; - vm_domainset_iter_first(di, domain); - if (vm_page_count_min_domain(*domain)) - vm_domainset_iter_policy(di, domain); + /* XXXOC: Shouldn't we just panic on 'false' if M_WAITOK was passed? */ + return (vm_domainset_iter_first(di, domain) ? 0 : ENOMEM); } -void +int vm_domainset_iter_policy_init(struct vm_domainset_iter *di, struct domainset *ds, int *domain, int *flags) { vm_domainset_iter_init(di, ds, &curthread->td_domain.dr_iter, NULL, 0); - _vm_domainset_iter_policy_init(di, domain, flags); + return (_vm_domainset_iter_policy_init(di, domain, flags)); } -void +int vm_domainset_iter_policy_ref_init(struct vm_domainset_iter *di, struct domainset_ref *dr, int *domain, int *flags) { vm_domainset_iter_init(di, dr->dr_policy, &dr->dr_iter, NULL, 0); - _vm_domainset_iter_policy_init(di, domain, flags); + return (_vm_domainset_iter_policy_init(di, domain, flags)); } int vm_domainset_iter_policy(struct vm_domainset_iter *di, int *domain) { - if (DOMAINSET_EMPTY(&di->di_valid_mask)) - return (ENOMEM); - - /* If there are more domains to visit in this phase, run the iterator. */ - while (!DOMAINSET_EMPTY(&di->di_remain_mask)) { - vm_domainset_iter_next(di, domain); - if (DOMAINSET_ISSET(*domain, &di->di_remain_mask)) { - DOMAINSET_CLR(*domain, &di->di_remain_mask); - if (!di->di_minskip || !vm_page_count_min_domain(*domain)) - return (0); - DOMAINSET_SET(*domain, &di->di_min_mask); - } - } - - /* If we skipped domains below min restart the search. */ - if (di->di_minskip) { - di->di_minskip = false; - vm_domainset_iter_first(di, domain); + if (vm_domainset_iter_next(di, domain)) return (0); - } /* If we visited all domains and this was a NOWAIT we return error. */ if ((di->di_flags & M_WAITOK) == 0) @@ -302,9 +343,8 @@ vm_domainset_iter_policy(struct vm_domainset_iter *di, int *domain) vm_wait_doms(&di->di_valid_mask, 0); /* Restart the search. */ - vm_domainset_iter_first(di, domain); - - return (0); + /* XXXOC: Shouldn't we just panic on 'false'? */ + return (vm_domainset_iter_first(di, domain) ? 0 : ENOMEM); } void @@ -326,12 +366,12 @@ vm_domainset_iter_page(struct vm_domainset_iter *di, struct vm_object *obj, return (EJUSTRETURN); } -void +int vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, - vm_pindex_t pindex, int *domain, int *flags, struct pctrie_iter *pages) + vm_pindex_t pindex, int *domain, int *flags) { - *domain = 0; + return (0); } int @@ -341,20 +381,20 @@ vm_domainset_iter_policy(struct vm_domainset_iter *di, int *domain) return (EJUSTRETURN); } -void +int vm_domainset_iter_policy_init(struct vm_domainset_iter *di, struct domainset *ds, int *domain, int *flags) { - *domain = 0; + return (0); } -void +int vm_domainset_iter_policy_ref_init(struct vm_domainset_iter *di, struct domainset_ref *dr, int *domain, int *flags) { - *domain = 0; + return (0); } void diff --git a/sys/vm/vm_domainset.h b/sys/vm/vm_domainset.h index b223a4d03df9..ef86c8ccb5e4 100644 --- a/sys/vm/vm_domainset.h +++ b/sys/vm/vm_domainset.h @@ -47,13 +47,12 @@ struct vm_domainset_iter { int vm_domainset_iter_page(struct vm_domainset_iter *, struct vm_object *, int *, struct pctrie_iter *); -void vm_domainset_iter_page_init(struct vm_domainset_iter *, - struct vm_object *, vm_pindex_t, int *, int *, - struct pctrie_iter *); +int vm_domainset_iter_page_init(struct vm_domainset_iter *, + struct vm_object *, vm_pindex_t, int *, int *); int vm_domainset_iter_policy(struct vm_domainset_iter *, int *); -void vm_domainset_iter_policy_init(struct vm_domainset_iter *, +int vm_domainset_iter_policy_init(struct vm_domainset_iter *, struct domainset *, int *, int *); -void vm_domainset_iter_policy_ref_init(struct vm_domainset_iter *, +int vm_domainset_iter_policy_ref_init(struct vm_domainset_iter *, struct domainset_ref *, int *, int *); void vm_domainset_iter_ignore(struct vm_domainset_iter *, int); diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index 94df2c2f9a9e..e0f1807a1b32 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -453,7 +453,7 @@ vm_thread_stack_create(struct domainset *ds, int pages) obj = vm_thread_kstack_size_to_obj(pages); if (vm_ndomains > 1) obj->domain.dr_policy = ds; - vm_domainset_iter_page_init(&di, obj, 0, &domain, &req, NULL); + vm_domainset_iter_page_init(&di, obj, 0, &domain, &req); do { /* * Get a kernel virtual address for this thread's kstack. diff --git a/sys/vm/vm_kern.c b/sys/vm/vm_kern.c index e7d7b6726d2c..ac327aa37b72 100644 --- a/sys/vm/vm_kern.c +++ b/sys/vm/vm_kern.c @@ -323,7 +323,9 @@ kmem_alloc_attr_domainset(struct domainset *ds, vm_size_t size, int flags, start_segind = -1; - vm_domainset_iter_policy_init(&di, ds, &domain, &flags); + if (vm_domainset_iter_policy_init(&di, ds, &domain, &flags) != 0) + return (NULL); + do { addr = kmem_alloc_attr_domain(domain, size, flags, low, high, memattr); @@ -417,7 +419,9 @@ kmem_alloc_contig_domainset(struct domainset *ds, vm_size_t size, int flags, start_segind = -1; - vm_domainset_iter_policy_init(&di, ds, &domain, &flags); + if (vm_domainset_iter_policy_init(&di, ds, &domain, &flags)) + return (NULL); + do { addr = kmem_alloc_contig_domain(domain, size, flags, low, high, alignment, boundary, memattr); @@ -517,7 +521,9 @@ kmem_malloc_domainset(struct domainset *ds, vm_size_t size, int flags) void *addr; int domain; - vm_domainset_iter_policy_init(&di, ds, &domain, &flags); + if (vm_domainset_iter_policy_init(&di, ds, &domain, &flags) != 0) + return (NULL); + do { addr = kmem_malloc_domain(domain, size, flags); if (addr != NULL) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index abad5efb8a79..16878604fa11 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2015,8 +2015,9 @@ vm_page_alloc_iter(vm_object_t object, vm_pindex_t pindex, int req, vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, object, pindex, &domain, &req, - pages); + if (vm_domainset_iter_page_init(&di, object, pindex, &domain, &req) != 0) + return (NULL); + do { m = vm_page_alloc_domain_iter(object, pindex, domain, req, pages); @@ -2268,7 +2269,9 @@ vm_page_alloc_contig(vm_object_t object, vm_pindex_t pindex, int req, start_segind = -1; - vm_domainset_iter_page_init(&di, object, pindex, &domain, &req, NULL); + if (vm_domainset_iter_page_init(&di, object, pindex, &domain, &req) != 0) + return (NULL); + do { m = vm_page_alloc_contig_domain(object, pindex, domain, req, npages, low, high, alignment, boundary, memattr); @@ -2596,7 +2599,9 @@ vm_page_alloc_noobj(int req) vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); + if (vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req) != 0) + return (NULL); + do { m = vm_page_alloc_noobj_domain(domain, req); if (m != NULL) @@ -2615,7 +2620,9 @@ vm_page_alloc_noobj_contig(int req, u_long npages, vm_paddr_t low, vm_page_t m; int domain; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); + if (vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req) != 0) + return (NULL); + do { m = vm_page_alloc_noobj_contig_domain(domain, req, npages, low, high, alignment, boundary, memattr); @@ -3334,7 +3341,9 @@ vm_page_reclaim_contig(int req, u_long npages, vm_paddr_t low, vm_paddr_t high, ret = ERANGE; - vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req, NULL); + if (vm_domainset_iter_page_init(&di, NULL, 0, &domain, &req) != 0) + return (ret); + do { status = vm_page_reclaim_contig_domain(domain, req, npages, low, high, alignment, boundary); From nobody Tue Sep 9 08:59:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLd6t2FMbz66cVV; Tue, 09 Sep 2025 08:59:34 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLd6t06hyz3QFy; Tue, 09 Sep 2025 08:59:34 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757408374; 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=/QB8idJSeYNFS/b/PstM/oPJONXtB+1dut9/YyZnVu0=; b=b8eEJXtDJ1/RlODiLCB1xxZhkYElR4s6e91t0wZlZ33QKnKZZurLuxQXLBfEGdOSnp3Ahr dqABYEpTK+P7CA9bb/Mmf6IV71s/+Sed1ZLMkN38BA881JtjCYI/8nTIKOPz2wqP0CvH9r G3LpRLKiAaS6AUEU4fOfg8gbKmH6TiCV0Jt/se5eKsz569pnU/OPrSuvlS2oOLhQInO4D4 dhSHfMm5df4s3iLgQWvXDCfxedzZI4QPTahCrlY9KYCc11xSnprJQNII4NbARzQAwWlyOT HvAKWcD6gyspJsY8dcwxNiyjEtNbhJlqVQK5Vfy0/28N4fXtX29byYhfNP+RYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757408374; 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=/QB8idJSeYNFS/b/PstM/oPJONXtB+1dut9/YyZnVu0=; b=ycMQeFCbZ7Ih7fWcLzedfk0xgDB1C0o+V35uRV9mPxi/r9h+PeynH2B8o8R9D49JXY+/NP ammC9Mw3JGew8OO4w+sLViZ/D2oT12IIC6t3ux0Lb7pIU0OqHuNSLH9Vk8rqLJmEHo1Bg2 KsNBuU9lt4E6M9OHQ0lCp4aAnGNpyY2H8KBQwnVdg4ZVp+whJioCdKXDTLd170UaJ/xix1 mOen57fsEbkCKmxxg/bWJa4Gqxq3Xf1DLJ0AcXSwAgjbu4oo6EK4uCC71+v1sB6928I3bj QSmwMwKACbrNZehhCLmoGQZhI1p8xeCp0h9cYZ9j4noM6Usg9FyiMEGxWZFdWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757408374; a=rsa-sha256; cv=none; b=ugJdOQhAt9FDrFYIwB3IZDp6zTa3L6R744wxR+xkE2/pLpLp9vx1680oqReBLHteuWkVRk 8xee5mBwgzXQey4Dkv2UVvLuXdggJSITIB+kHPLJXPuozT6aiJ+tsmDPLwE2tkSPgKlaHG /XrhVW2qzG4bFWb1bSU1OIQptiWHW4MwX78uyB8QCvBjg/XJ2gD7fJBpZUqyxBGPHCi7KV l+gjPrgSyc6My3BZTINRQvcOBgKEZ+hL+YjHcghf2bmrndA+f84azTPBQuzfPymgZxhtXe tCaMhnMX8PeOAmLTStz5AIh1ArWhunZuEYF1rBRIAh7U2+bfiEUoW4PJqsPKMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx1.codepro.be", Issuer "R11" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cLd6s5wxgz12fx; Tue, 09 Sep 2025 08:59:33 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id 6FD2F58B98; Tue, 09 Sep 2025 10:59:32 +0200 (CEST) From: Kristof Provost To: Bryan Drewery Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: da50f49977cc - main - ifconfig: fix removing IPv6 addresses Date: Tue, 09 Sep 2025 10:59:31 +0200 X-Mailer: MailMate (2.0r6272) Message-ID: <958541A3-C7F2-413B-A5BD-E37F26A6D115@FreeBSD.org> In-Reply-To: References: <202507291313.56TDDQFb089337@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; markup=markdown Content-Transfer-Encoding: quoted-printable On 9 Sep 2025, at 0:26, Bryan Drewery wrote: > Should this also be done for WITHOUT_NETLINK? > >> diff --git sbin/ifconfig/af_inet6.c sbin/ifconfig/af_inet6.c >> index 7986edf490b4..e0f34f0c4d82 100644 >> --- sbin/ifconfig/af_inet6.c >> +++ sbin/ifconfig/af_inet6.c >> @@ -753,7 +753,7 @@ static struct afswtch af_inet6 =3D { >> =C2=A0#ifdef WITHOUT_NETLINK >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 .af_difaddr=C2=A0 =C2=A0 =C2=A0=3D SIOCDIF= ADDR_IN6, >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 .af_aifaddr=C2=A0 =C2=A0 =C2=A0=3D SIOCAIF= ADDR_IN6, >> -=C2=A0 =C2=A0 =C2=A0 =C2=A0.af_ridreq=C2=A0 =C2=A0 =C2=A0 =3D &in6_ad= dreq, >> +=C2=A0 =C2=A0 =C2=A0 =C2=A0.af_ridreq=C2=A0 =C2=A0 =C2=A0 =3D &in6_ri= dreq, >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 .af_addreq=C2=A0 =C2=A0 =C2=A0 =3D &in6_ad= dreq, >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 .af_exec=C2=A0 =C2=A0 =C2=A0 =C2=A0 =3D af= _exec_ioctl, >> =C2=A0#else > > Yeah, it looks like it. I=E2=80=99m building a WITHOUT_NETLINK world now = to test. It may take a day or two, but I think I can test and commit this= =2E Best regards, Kristof From nobody Tue Sep 9 10:01:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLfTt4ygzz66gqD; Tue, 09 Sep 2025 10:01:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLfTt4JyKz3VGZ; Tue, 09 Sep 2025 10:01:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n8NAFcOsiNU6N2S0Z56Y3TNyZBGMU3IwOTuAh4wXry8=; b=ylTwh/ebx7IQ7beBl/VycnorXB16F1rnMr1zd6YbzEZolzpo31X5hchmPgtVAvpeGI9nRX Izi+ZTHuHWnrT6LgZC7qY4wMZcsoxd8JfglAMvr/TUMiO2XjIp+fZ9qruWKk41bymgB56+ bxwKbdRZ44IiwJ2TNqsWlamb83i7NACbTOiN5oSb6k8oiNfAXxQPuYC14pdlbPB/K8Lmcq Hy4SpwshwQQ1alN2iqDVATBRPX9kR3dbD+E0Y7Wn3Dw4HnqK+yOr2yeADXYxdADSuh0VhB l9q2LHHGZTHsFGGZKcEo5uxsyVwhKmDIExCHBM7rdNcviSSGdvJWtcWOo18clA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n8NAFcOsiNU6N2S0Z56Y3TNyZBGMU3IwOTuAh4wXry8=; b=THLC/TpPjq+z7hPgMY/88PSXpJ0LtRzYzUOJIgumT2u+REdUOXJtYN82vP8s4M/TaNfJHf Ve1ABEVt6QbYtMfSLDPpr7sEAcum8xwc23K94+L+x0Eti84LXjtKbem9Bm175dAnT+MtU8 hWyItVGsZ1MJZUYiOKQNcz5k2QoAPbAytuAGDZVQWEbbAE8JMdB6uTsINaVbWkYP/WYTCa ninmLCR7q+TErZwMHzgSg6dj3jQTrdXx9G+WGarZElx7l5dTeY6q2kfPnlTIhOvhvE5Dx7 XoJmsyoNWtVvtCG5s6SrTdIEyJSumNG0Tgj0UqSCOiSPbOgUtGaxNLVxhPoK7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757412066; a=rsa-sha256; cv=none; b=xoixmbBcdDmvDu5tepx+eI+ghUmYNLpytMXi0zZPxP7DjuVqcoYnLjf6GkhZL4ZrOHTa84 kKF5/qc1tMGbsWBTyUagLOjZl4t+OAzKTILNgU2xMAl9w6RyPOG8OEjsyaGy61ELeGDczj o6USHdlCCtkesFRm+ajlINT+LmET/ZiqTZqkh1x/yUElxz6ugSwGdoaZFX6yf7S9Htx8KD /oF7CKuT4GyJzYsg5DKChuWBMCiefaJi5y3iKbTW+ZdlSMvbkpkb4VLU1WsPBe3RnEzVEF mgrJWyIMCR3pm7JUmI+5uThoYZKiFjOg8T3GtC+8SY9DEINAEJVfQNSYUYspog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLfTt3sbqzWbd; Tue, 09 Sep 2025 10:01:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589A16lV078548; Tue, 9 Sep 2025 10:01:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589A16Mr078545; Tue, 9 Sep 2025 10:01:06 GMT (envelope-from git) Date: Tue, 9 Sep 2025 10:01:06 GMT Message-Id: <202509091001.589A16Mr078545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Osipov Subject: git: f304c5bb8be6 - main - bsdinstall: Drop outdated comments about ZFS dataset compression List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: michaelo X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f304c5bb8be65df83b86f8a50e1c7982b266262d Auto-Submitted: auto-generated The branch main has been updated by michaelo: URL: https://cgit.FreeBSD.org/src/commit/?id=f304c5bb8be65df83b86f8a50e1c7982b266262d commit f304c5bb8be65df83b86f8a50e1c7982b266262d Author: Michael Osipov AuthorDate: 2025-08-31 10:10:48 +0000 Commit: Michael Osipov CommitDate: 2025-09-09 10:00:54 +0000 bsdinstall: Drop outdated comments about ZFS dataset compression All datasets on zroot pool are compressed by default since FreeBSD 11.0 [1], no need to mention that on some specific datasets these days. [1] 47206692f2cca020891d1eec5028e02c3e6f56c5 Reviewed by: jrm (mentor), ziaee MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D52304 --- usr.sbin/bsdinstall/bsdinstall.8 | 4 ++-- usr.sbin/bsdinstall/scripts/zfsboot | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/bsdinstall/bsdinstall.8 b/usr.sbin/bsdinstall/bsdinstall.8 index 181abdcf9d05..5ccbaef87835 100644 --- a/usr.sbin/bsdinstall/bsdinstall.8 +++ b/usr.sbin/bsdinstall/bsdinstall.8 @@ -693,7 +693,7 @@ is: # Home directories separated so they are common to all BEs /home mountpoint=/home -# Compress /tmp, allow exec but not setuid +# Create /tmp and allow exec but not setuid /tmp mountpoint=/tmp,exec=on,setuid=off # Do not mount /usr so that 'base' files go to the BEROOT @@ -702,7 +702,7 @@ is: # Ports tree /usr/ports setuid=off -# Source tree (compressed) +# Source tree /usr/src # Create /var and friends diff --git a/usr.sbin/bsdinstall/scripts/zfsboot b/usr.sbin/bsdinstall/scripts/zfsboot index a3c1e2ddb89f..aa05faa7d3dd 100755 --- a/usr.sbin/bsdinstall/scripts/zfsboot +++ b/usr.sbin/bsdinstall/scripts/zfsboot @@ -152,7 +152,7 @@ f_isset ZFSBOOT_DATASETS || ZFSBOOT_DATASETS=" # Home directories separated so they are common to all BEs /home mountpoint=/home - # Compress /tmp, allow exec but not setuid + # Create /tmp and allow exec but not setuid /tmp mountpoint=/tmp,exec=on,setuid=off # Don't mount /usr so that 'base' files go to the BEROOT @@ -161,7 +161,7 @@ f_isset ZFSBOOT_DATASETS || ZFSBOOT_DATASETS=" # Ports tree /usr/ports setuid=off - # Source tree (compressed) + # Source tree /usr/src # Create /var and friends From nobody Tue Sep 9 10:05:47 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLfbH3TZDz66hQ4; Tue, 09 Sep 2025 10:05:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLfbH1ZHVz3W5J; Tue, 09 Sep 2025 10:05:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=unRpuPSOIzEnyk+HltiNvF8PlyDJ/7C03c02KQEx3sM=; b=c27U3vAWaze/oy2lvq0ur1z6cgNbOX7T+gOUr2PrXC7WNMZZU5sCc4J4qBQ114h84mytag uFZqZx/SD9zNC7SOac1WDKy6br2o0SlsvBoxVOHvzv5BJTF18qmrW/KpCGCg6C2+AzpdKr gn8skZYWFaAZTRjvTLHfDiTRw8Pv+RKFfLpqsJ1++gEcfJfXzcdMHVbqFZPZkIeh1yUcKA uTrCg4bRFAQHM0rSQHJDnC1Ir/lcK6LgXU7lc7whd1yGvdaC9mv5yDJCoSIPNMpLoeHntY tMYphrfRYZswJD0Wr3KESM4WEORVaO8FsMtPe6WIPgoHrwHStnZpfU5baKYiyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=unRpuPSOIzEnyk+HltiNvF8PlyDJ/7C03c02KQEx3sM=; b=tN+qO3zlFpkiEsOiuax1zarq3H+cwb5ZV3SXMY+SnSFXl2Ax8R8dDWb+DwaqCxod+m8Ldn hj4xb7RSRTsPJZpQ0xPr35hByBAClDgcjPMVvWTZYSQEQxIPxunTEj2ZE41/9yBtuOptsT 7w4UQaqxFz/zCgyMsHrjwc2pYPZ0r+plypuShDuA3uV8yVIGggczP27Tj1M47bSpAGa3vT k0CxziohaevKjnwfGSURVpQrIJLTwmudC1YwizpdOa2YvGUQt1RrBoKPDfRRdvZyhay+ye mXTgn6VZrd38y5uor7o6jO/ki4StQ7Wt1rh7olhUe5cLw2SGd0Aco/qYLwx95g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757412347; a=rsa-sha256; cv=none; b=K2aTt32/TVY878GSiqqSyOJdcJf2Wo02pE0xMMJydZrljaVIAQB4n4beggG6ymh0u0oiTE gMlOF66UP4XCW5HQNbXsxC0s0J6tbH2aK1mFz9zcp10vlJzxBCy1h9IIw2nQT+NXHpEHxn VA83/HIy+qWeSr3J/WfsV9gwYBJyeekr4p1/UAvYa1hRzOeUeJQ3pNBUeh+5BtP5pRg+Sb jYIcnVC1Y5OtF4GLiWlcChrmYfj0xI8cxYQB78pO42UTGPv9clzkaGTJ5SIG2spuurztYO NH9neu+LaR5gxWVjrEl2EychQVaVi+UzmV5X2aoNreVMR391ecwkdeUfGy9gYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLfbH0v68zWZf; Tue, 09 Sep 2025 10:05:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589A5lMn082787; Tue, 9 Sep 2025 10:05:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589A5lfT082784; Tue, 9 Sep 2025 10:05:47 GMT (envelope-from git) Date: Tue, 9 Sep 2025 10:05:47 GMT Message-Id: <202509091005.589A5lfT082784@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 08356a733eb7 - main - qlnxe: Unconditionally enable extended media types List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 08356a733eb7a7bef1afe20ded2d983b55310de7 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=08356a733eb7a7bef1afe20ded2d983b55310de7 commit 08356a733eb7a7bef1afe20ded2d983b55310de7 Author: Zhenlei Huang AuthorDate: 2025-09-09 10:04:54 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-09 10:04:54 +0000 qlnxe: Unconditionally enable extended media types Those extended media types are available since about 2015 [1]. All supported branches already have them defined. No functional change intended. [1] eb7e25b22f1c ifmedia changes: Extend the number of available subtypes for Ethernet media ... Reviewed by: kbowling MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52374 --- sys/dev/qlnx/qlnxe/qlnx_def.h | 16 ---------------- sys/dev/qlnx/qlnxe/qlnx_os.c | 21 +++++++++------------ 2 files changed, 9 insertions(+), 28 deletions(-) diff --git a/sys/dev/qlnx/qlnxe/qlnx_def.h b/sys/dev/qlnx/qlnxe/qlnx_def.h index 4342bba89587..796845f3f8c6 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_def.h +++ b/sys/dev/qlnx/qlnxe/qlnx_def.h @@ -696,22 +696,6 @@ extern int qlnx_alloc_mem_sb(qlnx_host_t *ha, struct ecore_sb_info *sb_info, * Some OS specific stuff */ -#if (defined IFM_100G_SR4) -#define QLNX_IFM_100G_SR4 IFM_100G_SR4 -#define QLNX_IFM_100G_LR4 IFM_100G_LR4 -#define QLNX_IFM_100G_CR4 IFM_100G_CR4 -#else -#define QLNX_IFM_100G_SR4 IFM_UNKNOWN -#define QLNX_IFM_100G_LR4 IFM_UNKNOWN -#endif /* #if (defined IFM_100G_SR4) */ - -#if (defined IFM_25G_SR) -#define QLNX_IFM_25G_SR IFM_25G_SR -#define QLNX_IFM_25G_CR IFM_25G_CR -#else -#define QLNX_IFM_25G_SR IFM_UNKNOWN -#define QLNX_IFM_25G_CR IFM_UNKNOWN -#endif /* #if (defined IFM_25G_SR) */ #define QLNX_INC_IERRORS(ifp) if_inc_counter(ifp, IFCOUNTER_IERRORS, 1) #define QLNX_INC_IQDROPS(ifp) if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1) diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c index 4ad190374f87..696604cf1202 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.c +++ b/sys/dev/qlnx/qlnxe/qlnx_os.c @@ -2375,18 +2375,15 @@ qlnx_init_ifnet(device_t dev, qlnx_host_t *ha) ifmedia_add(&ha->media, (IFM_ETHER | IFM_40G_CR4), 0, NULL); } else if ((device_id == QLOGIC_PCI_DEVICE_ID_1656) || (device_id == QLOGIC_PCI_DEVICE_ID_8070)) { - ifmedia_add(&ha->media, (IFM_ETHER | QLNX_IFM_25G_SR), 0, NULL); - ifmedia_add(&ha->media, (IFM_ETHER | QLNX_IFM_25G_CR), 0, NULL); + ifmedia_add(&ha->media, (IFM_ETHER | IFM_25G_SR), 0, NULL); + ifmedia_add(&ha->media, (IFM_ETHER | IFM_25G_CR), 0, NULL); } else if (device_id == QLOGIC_PCI_DEVICE_ID_1654) { ifmedia_add(&ha->media, (IFM_ETHER | IFM_50G_KR2), 0, NULL); ifmedia_add(&ha->media, (IFM_ETHER | IFM_50G_CR2), 0, NULL); } else if (device_id == QLOGIC_PCI_DEVICE_ID_1644) { - ifmedia_add(&ha->media, - (IFM_ETHER | QLNX_IFM_100G_LR4), 0, NULL); - ifmedia_add(&ha->media, - (IFM_ETHER | QLNX_IFM_100G_SR4), 0, NULL); - ifmedia_add(&ha->media, - (IFM_ETHER | QLNX_IFM_100G_CR4), 0, NULL); + ifmedia_add(&ha->media, (IFM_ETHER | IFM_100G_LR4), 0, NULL); + ifmedia_add(&ha->media, (IFM_ETHER | IFM_100G_SR4), 0, NULL); + ifmedia_add(&ha->media, (IFM_ETHER | IFM_100G_CR4), 0, NULL); } ifmedia_add(&ha->media, (IFM_ETHER | IFM_FDX), 0, NULL); @@ -3808,11 +3805,11 @@ qlnx_get_optics(qlnx_host_t *ha, struct qlnx_link_output *if_link) case MEDIA_MODULE_FIBER: case MEDIA_UNSPECIFIED: if (if_link->speed == (100 * 1000)) - ifm_type = QLNX_IFM_100G_SR4; + ifm_type = IFM_100G_SR4; else if (if_link->speed == (40 * 1000)) ifm_type = IFM_40G_SR4; else if (if_link->speed == (25 * 1000)) - ifm_type = QLNX_IFM_25G_SR; + ifm_type = IFM_25G_SR; else if (if_link->speed == (10 * 1000)) ifm_type = (IFM_10G_LR | IFM_10G_SR); else if (if_link->speed == (1 * 1000)) @@ -3822,11 +3819,11 @@ qlnx_get_optics(qlnx_host_t *ha, struct qlnx_link_output *if_link) case MEDIA_DA_TWINAX: if (if_link->speed == (100 * 1000)) - ifm_type = QLNX_IFM_100G_CR4; + ifm_type = IFM_100G_CR4; else if (if_link->speed == (40 * 1000)) ifm_type = IFM_40G_CR4; else if (if_link->speed == (25 * 1000)) - ifm_type = QLNX_IFM_25G_CR; + ifm_type = IFM_25G_CR; else if (if_link->speed == (10 * 1000)) ifm_type = IFM_10G_TWINAX; From nobody Tue Sep 9 10:05:48 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLfbJ44Yzz66gy2; Tue, 09 Sep 2025 10:05:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLfbJ26v2z3WCQ; Tue, 09 Sep 2025 10:05:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aKngsUBNfseWx2GkLdTpMNk1jfBJ678NKkAzZ0JgbcI=; b=EfmUvjpbO4hVW0WKrIyaClLUf1I7Yp/LexSfDfG4QgT3OPqhdxoCd3MwopW0PkmLhUpXvl je1UhN0ixhNT6GLTRMO4i2mECKVA1K6FPXLfCFYT3q3BtzSmv5EN17wT98JsBW9T5tbO0u V/31REpo6Uszz5aHSDpN1ocI52ac91DKQAU+wCfctvCWv7Y7FJaRj4Eaa/hEGto0+/Qs7b A6J13Isdu1IuwEcuTWwJwzwfVAE6MJp4qJO/lHMgxFnf4gGlYRBlV8rKLv0+xxElkzk4O4 UnbFZ9xloV4y76ikkNhpQUaCexBkNkEsUs2rYr/zQ/K0OA5gGJlf4faDaU5K9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aKngsUBNfseWx2GkLdTpMNk1jfBJ678NKkAzZ0JgbcI=; b=vZUIL8QVj/MCmeIh4758Hp4cc3FMaw/GaBG9EvbuqfZm+0j7cSnorJd7uVm+VLmK9aMeir NvruT3rS17gKkVlcsSOigtQoReLAEj12aR2ZU/iNkgwHw7KyChGuiHiWk5uy1hQD0rJykr +gYzaBb0lisGk8ihGp/d3qHVvVCoVt7HEnl9a7UamqqWfu7oEqdryKAV7o0CFKtd7LMEi5 wCoAoHyuyCzNqhN5uuaYWMPFtuHzwL7LR46asqeHiiSSvyBafbidIK+zhBMGeWwHEE6Qea ATRZM9F2QhC5f902cevUgApofYwELjVIiXg485lYCXI/IqJVMK08zn855AB0yg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757412348; a=rsa-sha256; cv=none; b=fynqXnkb2mRaDayAY9OPGcCuL1Qnd8PVxmlAbfIvozqV3A9JJivBGULzoF10mzTEgGQK3Y 0YHbkq1p7m8EGNN0nGV3/K2s6m2fbLKZ1h2HbBbXSItcP67KlVaSfQBx2nWbuXngEbyiMl I05SbOAgqy/nQwbrzguz7jUnpCwn0kTmtY73FJ+KoWO1UTzcWrG1fn2+9g71PwIfUiwMxb nx2CZ2IO7PiKdOJgxh0CtzOLV4ER2NopTPz8FxwyynN9VjFC7kYQdGRIWTZt4GwtikOYh1 FKr60aecTcIVVxBLSD+8GLhAbc0iuFki5XA8JRb1milbb0N2Rhlf/u2juHDa9Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLfbJ1jLxzX1m; Tue, 09 Sep 2025 10:05: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 589A5mbA082821; Tue, 9 Sep 2025 10:05:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589A5mL9082818; Tue, 9 Sep 2025 10:05:48 GMT (envelope-from git) Date: Tue, 9 Sep 2025 10:05:48 GMT Message-Id: <202509091005.589A5mL9082818@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 6e3c8c0f709a - main - qlnxe: Support SIOCGIFXMEDIA ioctl List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 6e3c8c0f709ab0b9d70e2725e58f4a4ba7a4404e Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=6e3c8c0f709ab0b9d70e2725e58f4a4ba7a4404e commit 6e3c8c0f709ab0b9d70e2725e58f4a4ba7a4404e Author: Zhenlei Huang AuthorDate: 2025-09-09 10:04:54 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-09 10:04:54 +0000 qlnxe: Support SIOCGIFXMEDIA ioctl ifconfig(8) will try SIOCGIFXMEDIA first and then retry SIOCGIFMEDIA if that fails. Since the driver reports extended media types, support SIOCGIFXMEDIA ioctl directly rather than doing another round. Reviewed by: kbowling MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52375 --- sys/dev/qlnx/qlnxe/qlnx_os.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c index 696604cf1202..9963f472c615 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.c +++ b/sys/dev/qlnx/qlnxe/qlnx_os.c @@ -2721,7 +2721,9 @@ qlnx_ioctl(if_t ifp, u_long cmd, caddr_t data) case SIOCSIFMEDIA: case SIOCGIFMEDIA: - QL_DPRINT4(ha, "SIOCSIFMEDIA/SIOCGIFMEDIA (0x%lx)\n", cmd); + case SIOCGIFXMEDIA: + QL_DPRINT4(ha, + "SIOCSIFMEDIA/SIOCGIFMEDIA/SIOCGIFXMEDIA (0x%lx)\n", cmd); ret = ifmedia_ioctl(ifp, ifr, &ha->media, cmd); break; From nobody Tue Sep 9 10:05:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLfbK46wPz66hLk; Tue, 09 Sep 2025 10:05:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLfbK2rD8z3WCS; Tue, 09 Sep 2025 10:05:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R0PT56rbmNBBNJ2rGUz1F8G2kWaD0EtxpRzbRXQD+T0=; b=agzaTSxbHe0FViDIreynqUIIqyN8v7r3ZKr7LV/U1IkVUlXH0MAZUA0h6+qS/htU92iR/u gDYQ1WE//O1usDNSdNMefQA1VbvrslUG9vF+Z2ENLx45VOATiI9nQt5SuS3KW/2npzNsth cdDfMC3GoD9wZ3G5EwhPTtxupf2idb0h58zmvCIO57R9jSXLRbBL882iYWF4SY/Lltwy6q Xi2ieIphqWIMCnw8Jjoya1yEWLLQTHFcclG5ZtUzqI/6t10w6f+nbMZOic7loLZ0WkMaYn UXKOU9zr4bEmF72DZv438L7MsC5/rpax3svQVQlUghuJOyZPDrKrIcxiynQVxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757412349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R0PT56rbmNBBNJ2rGUz1F8G2kWaD0EtxpRzbRXQD+T0=; b=kY7wkFvhQujYWuRsNmByJtvfuqxM8UTm36xb/sGEMR7t9L7A7gXRCDSIkwvNELzD/YXsTT 55E3qE5NavcjgalxT7H8UFZoKIBdN66Zec+X9fchUDHF95je3tqu/dHgpNc4vqHOsKrBQg 7efmvm7IHr/uhA0rerRTvwsgui26HY/uEMKvU7aEBM39ao5wHilgoqKtHUN48vjSr0rWpq fhL/iCE44stoUsAgFkFah1hT04UE1beCrpCyNN8mSR/uP9F6XgzNDGw0NqqvO8fO91XMGS ZhwQbcPwGvZwQG+SKeblkvP2CJPq7r9HDIf2tQAYGh2hPcEQweBYogj6VPBBVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757412349; a=rsa-sha256; cv=none; b=IhHTEYFUyLBkONLWRlb9t+XleHWCzMMdNISESgPXI7J1jQ24Hxb801xEJFaPgWBoeOx0+A uuBYSYn1HKYyELlm0eyfGUPwhwZL3lp+KensKlTMZeQrY7Ea9x30g71Q5D/joIF8pDc7hu Kd7meqPDxoqAdwlgL3YNJP2jUlfxejAEYFeIg4VE0xKgJuHcSt8K6sbtNhMO/gw91Wgg0k D94c2L/lFEYuIcKJCa63FCDAcGf+xpK2IDO2Kwu5guTufSQW0A43E8gtFNokGlgDPyt9Xe 0UiySoB+teCN8lICZ75hiRcDfzZfx6y99Z1gz5pGOyd6TyQIzdCwC5FDlfd4XQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLfbK2SH6zXTl; Tue, 09 Sep 2025 10:05: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 589A5nH7082860; Tue, 9 Sep 2025 10:05:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589A5nhu082857; Tue, 9 Sep 2025 10:05:49 GMT (envelope-from git) Date: Tue, 9 Sep 2025 10:05:49 GMT Message-Id: <202509091005.589A5nhu082857@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: e1c5e043961a - main - qlnxe: Report speeds in decimal format List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: e1c5e043961ab3a5429a0c6e727265dfa819cf00 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e1c5e043961ab3a5429a0c6e727265dfa819cf00 commit e1c5e043961ab3a5429a0c6e727265dfa819cf00 Author: Zhenlei Huang AuthorDate: 2025-09-09 10:04:55 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-09 10:04:55 +0000 qlnxe: Report speeds in decimal format It is more natural to read the speed in decimal format than hexadecimal one. Spotted this while diagnosing PR 287445, ``` [__ecore_configure_pf_max_bandwidth:6864(qlnx-0)]Configured MAX bandwidth to be 000061a8 Mb/sec [__ecore_configure_pf_min_bandwidth:6922(qlnx-0)]Configured MIN bandwidth to be 750 Mb/sec ``` Reviewed by: kbowling MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52376 --- sys/dev/qlnx/qlnxe/ecore_dev.c | 6 +++--- sys/dev/qlnx/qlnxe/ecore_mcp.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/dev/qlnx/qlnxe/ecore_dev.c b/sys/dev/qlnx/qlnxe/ecore_dev.c index 6187ecdbc446..389a95a4164c 100644 --- a/sys/dev/qlnx/qlnxe/ecore_dev.c +++ b/sys/dev/qlnx/qlnxe/ecore_dev.c @@ -5268,7 +5268,7 @@ ecore_hw_get_nvm_info(struct ecore_hwfn *p_hwfn, } DP_VERBOSE(p_hwfn, ECORE_MSG_LINK, - "Read default link: Speed 0x%08x, Adv. Speed 0x%08x, AN: 0x%02x, PAUSE AN: 0x%02x EEE: %02x [%08x usec]\n", + "Read default link: Speed %u Mb/sec, Adv. Speeds 0x%08x, AN: 0x%02x, PAUSE AN: 0x%02x EEE: %02x [%u usec]\n", link->speed.forced_speed, link->speed.advertised_speeds, link->speed.autoneg, link->pause.autoneg, p_caps->default_eee, p_caps->eee_lpi_timer); @@ -6860,7 +6860,7 @@ int __ecore_configure_pf_max_bandwidth(struct ecore_hwfn *p_hwfn, p_hwfn->qm_info.pf_rl); DP_VERBOSE(p_hwfn, ECORE_MSG_LINK, - "Configured MAX bandwidth to be %08x Mb/sec\n", + "Configured MAX bandwidth to be %u Mb/sec\n", p_link->speed); return rc; @@ -6918,7 +6918,7 @@ int __ecore_configure_pf_min_bandwidth(struct ecore_hwfn *p_hwfn, rc = ecore_init_pf_wfq(p_hwfn, p_ptt, p_hwfn->rel_pf_id, min_bw); DP_VERBOSE(p_hwfn, ECORE_MSG_LINK, - "Configured MIN bandwidth to be %d Mb/sec\n", + "Configured MIN bandwidth to be %u Mb/sec\n", p_link->min_pf_rate); return rc; diff --git a/sys/dev/qlnx/qlnxe/ecore_mcp.c b/sys/dev/qlnx/qlnxe/ecore_mcp.c index ab14b1eb5186..6d1e5fe24d06 100644 --- a/sys/dev/qlnx/qlnxe/ecore_mcp.c +++ b/sys/dev/qlnx/qlnxe/ecore_mcp.c @@ -1638,7 +1638,7 @@ enum _ecore_status_t ecore_mcp_set_link(struct ecore_hwfn *p_hwfn, if (b_up) DP_VERBOSE(p_hwfn, ECORE_MSG_LINK, - "Configuring Link: Speed 0x%08x, Pause 0x%08x, adv_speed 0x%08x, loopback 0x%08x\n", + "Configuring Link: Speed %u Mb/sec, Pause 0x%08x, adv_speed 0x%08x, loopback 0x%08x\n", phy_cfg.speed, phy_cfg.pause, phy_cfg.adv_speed, phy_cfg.loopback_mode); else From nobody Tue Sep 9 13:30:32 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLl7X3sNnz66v6C; Tue, 09 Sep 2025 13:30:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLl7X3PdQz3sSn; Tue, 09 Sep 2025 13:30:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757424632; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b8znyFun71penzTEOt3+GJkh9Mdogo/Nc+44+m2CbT8=; b=t70pKKxwYPp53qrZM43r+lQ7gqxmsODe6sorWzm6rNg0UDpX/uHBMW70wn4P4Sg2aSu73n jRnUZUdhuvVllNyH0Hgat+ncrwDreBtkiGrDUTbzTex4jCtELyI408BunjCvfHFuqTWsFB nbAh5i3VB2k19Zpr8Yf/6CMTJzoRobdjk1UI0UOE8JsssZ8ALNe1567Z+x1k6dDHGLpLT1 GA0dKWZ6jCtLi4yQd2vVgotkAO7mjv0jDfDwaHHIZb97c4wk+HmM/qHRgzB38RJlZbWTYu 9FYC1mmxkKRkHbqhmPjZ53H8MAwIlFSA6C5MPxvIDYjxwJZZHIWgRQTJWyqBkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757424632; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b8znyFun71penzTEOt3+GJkh9Mdogo/Nc+44+m2CbT8=; b=eEUu46lHTyPazRbcyG/zm8BsINc+pFDxRVNn50HCLbbCqNoK89xsY4PxTB81Wh5vs+mMcE RPHuAKLYemYMXNgTsd4niB7YfYimdJ8UxhnvlpOQ7yP4qIp+84k8yKLDPTWzQCqA62PxjT j49AHnyJC2cjav0uoBGHmwHYXecVWJUgU5ZtZncdjbEH3efHND1LSCLa0ivLHxC/PXdlT4 rnZX2TwGRWDupLi7NA64jU7U7ENZmHfG1ly6OP8G8T9TQFT8x7GgP9+ChUhxDWcATqzQI/ OPTrjvQ+4z30hZ4MXTEi6ttul/d6rVKQ/DPUd09HpC/XB+Xyk78Peef2HQPq0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757424632; a=rsa-sha256; cv=none; b=mys0df1lUszeCirrw3QCdeHv2trIcZ6PMoBap6KPqKphbAQvlaK8PW8NVdXO8+OZZzTxwR 9eYZg1EyfDCKNHMwWLlhR/G1mZqL6UG5iZeXwhQPFomSoQzPwOBLu7cVGE8rK2TefHn9WV D2ncBNyPbwuhPjojjr5NT6eMYKZ9/sPuNGqtZlLn8pQ2++MyWSh3vfFUJfzi3ShPYm99af tmUZY9YL8vGjAO2/ORGqlorUMfVqhQEwv8UbMKNG1xwKEPIdFnbKl6GX+xU8PpgnYhxfop 4TBtfJ1vOjGT9CLE2AsXUP/PcDhwYFln1lZSVSQDN13iP05fM3Jaiep91j4MsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLl7X2ZBPzf92; Tue, 09 Sep 2025 13:30:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589DUWht067901; Tue, 9 Sep 2025 13:30:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589DUWXr067898; Tue, 9 Sep 2025 13:30:32 GMT (envelope-from git) Date: Tue, 9 Sep 2025 13:30:32 GMT Message-Id: <202509091330.589DUWXr067898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jessica Clarke Subject: git: 26d56dec1e0e - main - certctl: Use __DECONST rather than reimplementing List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrtc27 X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 26d56dec1e0e3bab571a00fcb9c39d3269fbcf97 Auto-Submitted: auto-generated The branch main has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=26d56dec1e0e3bab571a00fcb9c39d3269fbcf97 commit 26d56dec1e0e3bab571a00fcb9c39d3269fbcf97 Author: Jessica Clarke AuthorDate: 2025-09-09 13:27:02 +0000 Commit: Jessica Clarke CommitDate: 2025-09-09 13:27:02 +0000 certctl: Use __DECONST rather than reimplementing --- usr.sbin/certctl/certctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/certctl/certctl.c b/usr.sbin/certctl/certctl.c index 3601f6929fc4..15143c3b0582 100644 --- a/usr.sbin/certctl/certctl.c +++ b/usr.sbin/certctl/certctl.c @@ -379,7 +379,7 @@ static int read_certs(const char *path, struct cert_tree *tree, struct cert_tree *exclude) { struct stat sb; - char *paths[] = { (char *)(uintptr_t)path, NULL }; + char *paths[] = { __DECONST(char *, path), NULL }; FTS *fts; FTSENT *ent; int fts_options = FTS_LOGICAL | FTS_NOCHDIR; From nobody Tue Sep 9 13:50:10 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLlZB46Ljz66xSw; Tue, 09 Sep 2025 13:50:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLlZB3W9rz3tyg; Tue, 09 Sep 2025 13:50:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757425810; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GG4LAE1hDfFqmGZOwjvNKO0HrxeGSHCzEn0jfxjoG3o=; b=Man2DuUhS/janaWA0WUQA+5JCq/294hztH6JYPE3Y8MtYebWEBSrpEL+4g4wCB7n7nsvxX 8gm1zP4rq7TWiTDnvxjyb7fbI3MdxW6dRazGmjO98GnPjn8RJxtY5fDeT80at8weqPkuJj 23dfaQnl4gCLUh7ZWwQnLHo4Kpg99HOaKWX0cnOu1aZQo/7MVr8MyY3LLUl+NDv7GH3EYK V7lIgiSs4zRIQhX2H2vzxUxRy7XmNuxe3hNCNHjBBZdjiN9jevmUNteJDCVgRz/x3V9RG6 v/WvbkdsrQ50MrLnGcK8TDtTsHt/ifoY5ITG4UCSdSlqzBOMIHsa0UZBDNHaEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757425810; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GG4LAE1hDfFqmGZOwjvNKO0HrxeGSHCzEn0jfxjoG3o=; b=gRbuU44eYWJ2H7nJoFU+1SvGlx78wiIqR2wZipVCS2sxgNgB9WgJgkVvvrJ+5rGsijUxUQ tev+sYTfUTDqoQrEpNxA0BLdbxHXVCcQ5lq8cVx/Ik1KCi4Ze32QYhoNL/jI2aIC2q8HYC zXjA8oxAMSjGV57zzDZJsiBVwnb90B+Ytw2vOUr4kP64zsvFOE1DBgRlVZiT967IyI2ExX PcS1ub1FUkgqwibId27YgSqtb5ae7OuPV46jipcaAZoaRZbmdDI5FTgY0N9BmPBS7CGq+D UEgDjr1WaZH0KWkb6YGGviGcu0wZGFPBXXjXzftwrFMNcC3fBN/2V0p0Pzo3eQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757425810; a=rsa-sha256; cv=none; b=RhDkINcOOGoPQ/CMGVzH/oxViCS1dyWH8o1lXRRi6Ju76TOI9MPsBfkFCwqfGXvXHVO6cp hylrcP0YAnjaquiOYieP3V5sqW8J+JKCEis83B6wXnC7yTKDWNyD4H6M+n2I/eLoB2HSQh GGdGAxo7zd5bcytbA/ddu9v7L9qTgvbe/JytN5jZzJIisjjEa84U3Xt4PIOLTWqKdhmf0T 8DY7Ul+DFsBL5w8hcT3Mav0Scj7GCXDHjlCG+Uux3BOZjetsM7QyYNXFl0s0LcKI4CFayC pOTkOxslBpcw4V8nSyr2Ln24XZBTI90AHgObq58ltfQz1Y3OCM09p73RHnZOCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLlZB361gzfg0; Tue, 09 Sep 2025 13:50: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 589DoAFF001277; Tue, 9 Sep 2025 13:50:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589DoAUW001268; Tue, 9 Sep 2025 13:50:10 GMT (envelope-from git) Date: Tue, 9 Sep 2025 13:50:10 GMT Message-Id: <202509091350.589DoAUW001268@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 2024887abc7d - main - certctl: Include sys/types.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 2024887abc7d1b931e00fbb0697658e98adf048d Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2024887abc7d1b931e00fbb0697658e98adf048d commit 2024887abc7d1b931e00fbb0697658e98adf048d Author: Mark Johnston AuthorDate: 2025-09-09 13:47:42 +0000 Commit: Mark Johnston CommitDate: 2025-09-09 13:47:42 +0000 certctl: Include sys/types.h This is needed to fix bootstrapping on FreeBSD versions before commit 56ee5c551f89 ("sysctl: make sys/sysctl.h self contained"). Moreover, certctl should really be including sys/types.h directly since it uses size_t. MFC after: 1 week --- usr.sbin/certctl/certctl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.sbin/certctl/certctl.c b/usr.sbin/certctl/certctl.c index 15143c3b0582..a53ed7b2b4b2 100644 --- a/usr.sbin/certctl/certctl.c +++ b/usr.sbin/certctl/certctl.c @@ -4,6 +4,7 @@ * SPDX-License-Identifier: BSD-2-Clause */ +#include #include #include #include From nobody Tue Sep 9 15:19:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLnYg115gz673sf; Tue, 09 Sep 2025 15:19:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLnYg0R1fz43Pb; Tue, 09 Sep 2025 15:19:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757431191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VEu/QpsHOh+dSDj4zQLHid35UbWcWPUqX30+N3ur0ZA=; b=ilODABSSRyUJVIpCk62mhuF8UMzFWN8IJ9P5vRavkHKGyNQSjrb0Z2qnETblLpHatTicd4 BiqZyZaNXTuuIzcNwK6rYTg1qPuaCFoD8HP1EstRDUnhHN+DVQgoVEFFMMLNTv2IlOYH9N AykIBRqF+TVvvsEBTLvlZzlY0uRr3b0Jp7bdT0GqiL8EsoMvpmK8XKzv9N/gKp7g6qPsNd Vcwsalq9KK9wTeGrPTOhpmmmMctGkm9fnOQeRMnwAJZ8IlhGUXFC42LXbWVhmsN2OJEVT7 C2toK4Q6ufyRUVElIdQSjylWmkTz2ZyLwE6O6ZsL6BbF8vFZ2lhWHit4st2+2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757431191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VEu/QpsHOh+dSDj4zQLHid35UbWcWPUqX30+N3ur0ZA=; b=KhWYr9nBB8Ff7/27z1Nthfyrv9NlzZ9iTdnyCaOf1dLeRpUzFBeTcBoLLiK6/BzEXOMmOS Rmqoza7GjB17F/EtVmpFqY/eSrmkDiM4gwsD0/qU0rZDrjMhuWVN6d+xf/Hgc+zx1jIVQg /5j5mAqQqSrNFP6uusvmOW/QHGDNMVy/xhKIJVDe5id9BeEWVMxyEHjM84A//jRoS/N9Mm HY8Fr5gXZS5ulbhot7kuC++RiH+rbqQJ5+xzUmzecGy/2JOUak8omZw0aFF2gKhzj04sa6 GAaRRHR9OflzhZ1VgSC/V1bLGbK+W+uqjju+med+FCy3I0P5kT+WdbfnIVbyMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757431191; a=rsa-sha256; cv=none; b=lCKXA4Lb41icDaB/9FMVccayM4PzcrZ3hFD1r5XNdqSKB0RIbu1EmfCZkk3oLlzC9jjg7C 7vfxSWJHBqWwntRpSjNy5s6qiKHh6lxKm/yrzwwIO7Q3SiP5eaYLRG72/Ji/1BJ8OncO2C 2CIU7j+dBu9Mrl6RqEZpwDPJjY46l322QIaxRlLnFTiy/jxjyKyXx3Ve9TzLBnHSyEpgJX 24KbcYjAUht4J9RkCRT+W+r+HgtDWMmAyugwF41wp4oM9odXQsGpgXDoZD48OPkkAruUWY BfZDg6k52GdzFkpzA7//LcKVEqF2pxxzhJgbfwQ4MHBgejFi/K/vbJ6FhRG2IA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLnYf6ggtzhsr; Tue, 09 Sep 2025 15:19: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 589FJoLK065417; Tue, 9 Sep 2025 15:19:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589FJoSS065414; Tue, 9 Sep 2025 15:19:50 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:19:50 GMT Message-Id: <202509091519.589FJoSS065414@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: c1eff1d745a1 - main - sys: NOTES: Fix comment for wlan_* devices; GENERIC*: Re-order 'wlan_tkip' List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1eff1d745a1193c199f735733e376161c69b12c Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=c1eff1d745a1193c199f735733e376161c69b12c commit c1eff1d745a1193c199f735733e376161c69b12c Author: Olivier Certner AuthorDate: 2025-09-09 12:03:59 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:19:04 +0000 sys: NOTES: Fix comment for wlan_* devices; GENERIC*: Re-order 'wlan_tkip' Fix the comment introducing the 'wlan_*' devices (AES-CCMP is missing) after introducing AES-GCMP. While here, re-order the devices in order of appearance of the related technologies. No functional change (intended). Reviewed by: adrian, emaste Fixes: 7bf82ea4fdda ("sys: add wlan_gcmp to GENERIC kernels as appropriate") MFC after: 3 days MFC to: stable/15 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52444 --- sys/amd64/conf/GENERIC | 2 +- sys/arm/conf/TEGRA124 | 2 +- sys/conf/NOTES | 8 ++++---- sys/i386/conf/GENERIC | 2 +- sys/powerpc/conf/GENERIC64 | 2 +- sys/powerpc/conf/GENERIC64LE | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC index 786edc4125c9..d5a1adb2dc65 100644 --- a/sys/amd64/conf/GENERIC +++ b/sys/amd64/conf/GENERIC @@ -287,9 +287,9 @@ device wlan # 802.11 support options IEEE80211_DEBUG # enable debug msgs options IEEE80211_SUPPORT_MESH # enable 802.11s draft support device wlan_wep # 802.11 WEP support +device wlan_tkip # 802.11 TKIP support device wlan_ccmp # 802.11 CCMP support device wlan_gcmp # 802.11 GCMP support -device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device ath # Atheros CardBus/PCI NICs device ath_hal # Atheros CardBus/PCI chip support diff --git a/sys/arm/conf/TEGRA124 b/sys/arm/conf/TEGRA124 index ad5532427eda..ff23e63f77bd 100644 --- a/sys/arm/conf/TEGRA124 +++ b/sys/arm/conf/TEGRA124 @@ -107,9 +107,9 @@ device ums # USB mouse # Wireless NIC cards #device wlan # 802.11 support #device wlan_wep # 802.11 WEP support +#device wlan_tkip # 802.11 TKIP support #device wlan_ccmp # 802.11 CCMP support #device wlan_gcmp # 802.11 GCMP support -#device wlan_tkip # 802.11 TKIP support #device wlan_amrr # AMRR transmit rate control algorithm # PCI diff --git a/sys/conf/NOTES b/sys/conf/NOTES index 92e98aa57ebf..0e4f54a35a13 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -888,13 +888,13 @@ options IEEE80211_DEBUG_REFCNT options IEEE80211_SUPPORT_MESH #enable 802.11s D3.0 support options IEEE80211_SUPPORT_TDMA #enable TDMA support -# The `wlan_wep', `wlan_tkip', and `wlan_ccmp' devices provide -# support for WEP, TKIP, AES-CCMP and AES-GCMP crypto protocols optionally -# used with 802.11 devices that depend on the `wlan' module. +# The `wlan_wep', `wlan_tkip', `wlan_ccmp', and `wlan_gcmp' devices provide +# support for WEP, TKIP, AES-CCMP and AES-GCMP crypto protocols optionally used +# with 802.11 devices that depend on the `wlan' module. device wlan_wep +device wlan_tkip device wlan_ccmp device wlan_gcmp -device wlan_tkip # The `wlan_xauth' device provides support for external (i.e. user-mode) # authenticators for use with 802.11 drivers that use the `wlan' diff --git a/sys/i386/conf/GENERIC b/sys/i386/conf/GENERIC index 88b8967cd693..ac0cc4ba74e7 100644 --- a/sys/i386/conf/GENERIC +++ b/sys/i386/conf/GENERIC @@ -249,9 +249,9 @@ device wlan # 802.11 support options IEEE80211_DEBUG # enable debug msgs options IEEE80211_SUPPORT_MESH # enable 802.11s draft support device wlan_wep # 802.11 WEP support +device wlan_tkip # 802.11 TKIP support device wlan_ccmp # 802.11 CCMP support device wlan_gcmp # 802.11 GCMP support -device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device ath # Atheros CardBus/PCI NICs device ath_hal # Atheros CardBus/PCI chip support diff --git a/sys/powerpc/conf/GENERIC64 b/sys/powerpc/conf/GENERIC64 index 630c88b97dd7..48f9df5b7e38 100644 --- a/sys/powerpc/conf/GENERIC64 +++ b/sys/powerpc/conf/GENERIC64 @@ -234,9 +234,9 @@ device wlan # 802.11 support options IEEE80211_SUPPORT_MESH # enable 802.11s draft support options IEEE80211_DEBUG # enable debug msgs device wlan_wep # 802.11 WEP support +device wlan_tkip # 802.11 TKIP support device wlan_ccmp # 802.11 CCMP support device wlan_gcmp # 802.11 GCMP support -device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device ath # Atheros CardBus/PCI NICs device ath_hal # Atheros CardBus/PCI chip support diff --git a/sys/powerpc/conf/GENERIC64LE b/sys/powerpc/conf/GENERIC64LE index eb9a9441425d..9af71f30626d 100644 --- a/sys/powerpc/conf/GENERIC64LE +++ b/sys/powerpc/conf/GENERIC64LE @@ -230,9 +230,9 @@ device wlan # 802.11 support options IEEE80211_SUPPORT_MESH # enable 802.11s draft support options IEEE80211_DEBUG # enable debug msgs device wlan_wep # 802.11 WEP support +device wlan_tkip # 802.11 TKIP support device wlan_ccmp # 802.11 CCMP support device wlan_gcmp # 802.11 GCMP support -device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device ath # Atheros CardBus/PCI NICs device ath_hal # Atheros CardBus/PCI chip support From nobody Tue Sep 9 15:50:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpDZ3zJvz675Tw; Tue, 09 Sep 2025 15:50:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpDZ3CCyz47H6; Tue, 09 Sep 2025 15:50:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433006; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eJyc2laoFeUH5xk3u5It/L3vhoQ97xOEIEyrV9sOzjM=; b=QvAyLBFbvCh59Qv/Guf/iStjsnMAZWkeoG9SnUrwYspCEX+w1Lofco4n0x8LMw6w3w6904 J5ZUy2d+nrbfmVqNz2rB2bEjJxjOVJDZuUDe28jBMHHL38EEartaVgZYqobLqDCNrDmdeY LRZYRKsJ234T5VQJ50cUlq+rjTfRoR1rtQ0qiaGU6eaZ24fgTQUFaVrAiNVt8L30gywptB JgV+L8BozG10k+2kk4EQMpx4qzGQ70YY/6nuBnpDXNPf2zx2fGky0WAScyWCVL19perhkE B2EQWkmVnnI5BapUSU5iiABrfsQe+fPFGtyKBzcxFQitXJuqDAAFBzdCnv4NKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433006; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eJyc2laoFeUH5xk3u5It/L3vhoQ97xOEIEyrV9sOzjM=; b=eJ7+Tq0/2NoquLgEDBNG8KnJIoGZL6CuqT9fG+rHT77htDSb4reC+JtZAs5XX1Fos/cADW 2PapjI+bl+ijyd8RzdO30AdOVlANgW+frCHu83PhdB6Nx8Iuly53Kc1vd+vJrw30gj+C53 S20fTxmEvF/VROjWnI9gTtcJ7Wi53wSS9J8dk9GJ47XBL1/TNXp6zbDVHyAJyZA1tV3N79 TTIA1eeTcZgInwN+hibkA81cfy0Vg/AvToQhxntWMoZTQGBHoT8v7wNqqI5LmClFjFmbv2 UkEPANk7kszkxRuwyhF5o+wCMxUsaG6Ch7DckU12QU5D/uDGIs++oQnCwLjZPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433006; a=rsa-sha256; cv=none; b=sot+Kk0O2rfbad5ksrVQXZoD7FjbgfcOXu9TWu1qqDFjA3aMu/D9JeB2LdWoxy2DIxoRwV Bo7XvxSurFF09z3gQK2uvnHyWLv94/kdt94IsixTXqJoxkROxhkELAO5s9Qfr4wLsh58ED eavhOhW2INyDThtUj1GTwYvxY5ACcjUm0mF1AhFrXTYPLajJSTNRE5ckYLrY6iAkD3kObf 5wYIqVmjfzkrr09nKgq72ucDHtCohZQjilCiv2VBtYqvHWjp68T99idcqyLAoVROtcwewZ PLzTyVcR0OTaAZViODlgF9Yvk5EVCwI6Jl6aHumNQ9pcHaNugBs7sU9ty7LvsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpDZ2bwgzjmk; Tue, 09 Sep 2025 15:50: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 589Fo6xE024392; Tue, 9 Sep 2025 15:50:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fo6Qr024387; Tue, 9 Sep 2025 15:50:06 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:50:06 GMT Message-Id: <202509091550.589Fo6Qr024387@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 1cf67b587023 - main - NOTES: Fix whitespace in "options MAC_DO" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1cf67b587023af90f2b2c6e87d9103ec42b2b9b2 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1cf67b587023af90f2b2c6e87d9103ec42b2b9b2 commit 1cf67b587023af90f2b2c6e87d9103ec42b2b9b2 Author: Olivier Certner AuthorDate: 2025-09-09 15:47:50 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:49:26 +0000 NOTES: Fix whitespace in "options MAC_DO" For "options", we put a space before a TAB so that commenting out an option doesn't move the columns. No functional change. Fixes: c8d8cac2a847 ("mac_do(4): allow compiling into kernel") MFC after: 3 days Sponsored by: The FreeBSD Foundation --- sys/conf/NOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/NOTES b/sys/conf/NOTES index 0e4f54a35a13..c7a8862fb906 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -1249,7 +1249,7 @@ options MAC options MAC_BIBA options MAC_BSDEXTENDED options MAC_DDB -options MAC_DO +options MAC_DO options MAC_IFOFF options MAC_IPACL options MAC_LOMAC From nobody Tue Sep 9 15:57:56 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPc5mGtz675vM; Tue, 09 Sep 2025 15:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPc5Jgjz48sv; Tue, 09 Sep 2025 15:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rZIMmNo7p4kkpRUkvyrI6HaMOoYcyVXMvvPjkRrNfcE=; b=QHNyFIFEEDspoFBzFetohsojEHkhcdZe+hVcuScO3cUfVsRmC3KFx88WqMJ+vXiJrCHwzN 6qyALEFw2MzWhEK60rAe9lta1jEHe/WNuwI53df97jUDAW/EntmjnULx1DwsWWZDnpR+Hy Q3qcXNgSazoJHYg86j+ur0UX6+549BgYATTro6Tz/nz+EUmQfkdjHW136CNW2GWQuheLHK cGwJ6Cz8jrJGu4KDx4yD9EHyjL7OWVBvAcmHWFCMu7BCOagz6gLknmJ/FTIPnQHmxPUqA4 Z+L7QIacVdUkeDePEkZFjA1fACeg2f690N3b/wX9tvmoTUP8SlVUJqnweG1vxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rZIMmNo7p4kkpRUkvyrI6HaMOoYcyVXMvvPjkRrNfcE=; b=KowNw/1BIx/NDhx2jz7oxBTL8qrXyCWQBXoCmicTjbDa6Jk1dbgk+2WkUP/iaDpqRaIu+7 8pNG5EhOGmZI00xml978omamiDfvJVhAEXS+NcZ5yctxBYwQXluPRQ6SWZIZoMcpu91z2Y Y1Kkiv30mBV+N7kcztnWEmy5bW8PfhG+Xhz3aCjDtL9bbh+HaVqw07spACyRvav9li5rBH ToGIGp3wQOcIvfOV9HWetrT6oYZRPB8WcxbOD3yrcsbB4rNOE+0p2Z82QCrKMX6aMRjqH/ 7RqT92zwkM/QIRTiQ3t151PapMG5oQ66fcPptGKOcg2mvLcLKVxxYdKJ0Q+aQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433476; a=rsa-sha256; cv=none; b=usGJRaQ8EJr3Q7s7V8gm58Q1SUIFJmUKyGCT1Rf3XHdF/nOckazaj71bQ/Q3RirpJYrsH6 +Kk5z4IWZyewc8yHwJQqEdRD8HlMEOncmmuDUJ3VbKCkgcUAVDWZTmk6vh8U8WZdFroPuM hrb3d3CbWOGsGgGbjhvj0je0EGhcMYa9KuiXLlF0Mq0vqa3XtUYtukuLzhYMh9U1AInuHb PIH4X6S5X8JVxZi2G2NlmR661qJOXEuVAMfjrJiAFUie6JoetRf3FF+B7h9CJvC8Yd09jm DcibiJ9MyVlSy5CeYgU/U7FTCUxwUQ5cNWQrgICk7v6mmPsr+V0HnX+aM/Cghg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPc4dtKzjyg; Tue, 09 Sep 2025 15:57: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 589FvuWh039173; Tue, 9 Sep 2025 15:57:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589FvuC8039170; Tue, 9 Sep 2025 15:57:56 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:57:56 GMT Message-Id: <202509091557.589FvuC8039170@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: de974a0f1b73 - main - ddb ps: Print again the effective GID, separately List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: de974a0f1b73e79466c25f3c85fe727004576fea Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=de974a0f1b73e79466c25f3c85fe727004576fea commit de974a0f1b73e79466c25f3c85fe727004576fea Author: Olivier Certner AuthorDate: 2025-08-26 08:56:54 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:40 +0000 ddb ps: Print again the effective GID, separately Following commit be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]"), cr_groups[] doesn't contain the effective GID anymore. Fix the 'show proc' DDB command to show it again, and make it stand out with respect to the supplementary ones. Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52251 --- sys/ddb/db_ps.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/sys/ddb/db_ps.c b/sys/ddb/db_ps.c index 733c440f5ee3..a26cf8161294 100644 --- a/sys/ddb/db_ps.c +++ b/sys/ddb/db_ps.c @@ -459,12 +459,11 @@ DB_SHOW_COMMAND(proc, db_show_proc) db_printf("??? (%#x)\n", p->p_state); } if (p->p_ucred != NULL) { - db_printf(" uid: %d gids: ", p->p_ucred->cr_uid); - for (i = 0; i < p->p_ucred->cr_ngroups; i++) { - db_printf("%d", p->p_ucred->cr_groups[i]); - if (i < (p->p_ucred->cr_ngroups - 1)) - db_printf(", "); - } + db_printf(" uid: %d gid: %d supp gids: ", + p->p_ucred->cr_uid, p->p_ucred->cr_gid); + for (i = 0; i < p->p_ucred->cr_ngroups; i++) + db_printf(i == 0 ? "%d" : ", %d", + p->p_ucred->cr_groups[i]); db_printf("\n"); } if (p->p_pptr != NULL) From nobody Tue Sep 9 15:57:57 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPd6Hwnz675mV; Tue, 09 Sep 2025 15:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPd5Md6z48tG; Tue, 09 Sep 2025 15:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433477; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TFCFm1RnMyZ+rYXh5j8YnvYyl+5hzEXQBdEJ5ROFwmE=; b=gAB1LI+lJ1TR+RnrmGeibetLfV2kVxEIU0bUQfhzAeVsCUnWqB491TtH/Bjv7z+NXoH1W6 8oGsT6mSkwV8cllCeqOUD9/bHnaYsyvd/qqby7/qUAZ5WCd2d0envLXkKXymMYLxNAZfuN zZpKuJrYNSHNAWwB8zJl7Nkjn67T9TUj4eGtKdhv6npmh9fvwRYkF2In9yGUJ6JeeKrrEb b6KTQ9Tn071j27KsBC0abpqiZbysxS+fUbaBw32dTp8IRtY8grC0x81TV45hSvErKQi2PT M2A58I4Xg23NwYQoy2XIOYu48bzOsa54dKI2LDnRoBCPfqoLUE/ETpKoMuYE3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433477; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TFCFm1RnMyZ+rYXh5j8YnvYyl+5hzEXQBdEJ5ROFwmE=; b=jqIjT0fGDd6p19+2O6094NeoTYud6NBUqWkEFgjSEooVdyqxCDhlJE/99pL+77stmYtky0 F90EPWfejgtzJUA4xMtq8EQLHp9ZcLEnAYHmlYsw+DGYHbcpYD2vP+1KDiTa8OAVuTyF7t iv+PX3lgZKBdzaS6Rcq3xFpb+QdPbu14eZKv5UlfvjdC9GVpnOWPLFCrOWWjWqgL4tT5Ih wROoYRymH45gqqNnpCPz+EpUUZdAnLXym9sQ5PdjC0HxxabCG08l1FHxfusYbxt994hD4f Q4J1qZeFV8+hON2SLfnb01aV/34rZ5D4bqvgmmEXWxmlK0EQhtsMAg8zNyjpSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433477; a=rsa-sha256; cv=none; b=TTXia9sDpSTwy/NWkjqgc+8CPes7PM07DR4vnrDAUED5JyUizSBSOAALk9cW9xUnf48mS3 5mdtk6sQdsbHv3Ketli9gfDAIzZmbBNBdJVgiJ1bsIFhnbNV7hP7sV04goj50V67N39/q1 qiMQpce3BHGwBvR/eUPm7ZC0XMAtltVQuvKQMxP/n/asV3Z0pLPrKBuPX1e5zMzKyStnhK eYLtrXgCyXjBFN1JeWbV9z/K1Kwb/x6qF+42o6HudNck88CagZrxgCh+tTIJx3kTXJgoKc 0TuZwc27uHvwhq7ZgphHO6TJG3PNbjh7mc9daZhoCDFh8/Hu8yGVIv+SY1YL9Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPd4yZFzj7B; Tue, 09 Sep 2025 15:57: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 589FvvUh039212; Tue, 9 Sep 2025 15:57:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589FvvMF039209; Tue, 9 Sep 2025 15:57:57 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:57:57 GMT Message-Id: <202509091557.589FvvMF039209@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 1c3c698ba4c4 - main - hwpmc: On attach, ensure owner is a target effective GID's member List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1c3c698ba4c40485ebbbd157cb49172cfa7de9b2 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1c3c698ba4c40485ebbbd157cb49172cfa7de9b2 commit 1c3c698ba4c40485ebbbd157cb49172cfa7de9b2 Author: Olivier Certner AuthorDate: 2025-08-26 09:43:38 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:46 +0000 hwpmc: On attach, ensure owner is a target effective GID's member This restores a check that existed prior to commit be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]"). While here, improve pmc_can_attach()'s style by changing the type of 'decline_attach' to 'bool', fixing tests on it, adding missing parentheses to 'return' statements, and by changing its return value type to 'bool'. Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52252 --- sys/dev/hwpmc/hwpmc_mod.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/sys/dev/hwpmc/hwpmc_mod.c b/sys/dev/hwpmc/hwpmc_mod.c index 9b85c989dc96..15c782b91b69 100644 --- a/sys/dev/hwpmc/hwpmc_mod.c +++ b/sys/dev/hwpmc/hwpmc_mod.c @@ -210,7 +210,7 @@ static int pmc_attach_one_process(struct proc *p, struct pmc *pm); static bool pmc_can_allocate_row(int ri, enum pmc_mode mode); static bool pmc_can_allocate_rowindex(struct proc *p, unsigned int ri, int cpu); -static int pmc_can_attach(struct pmc *pm, struct proc *p); +static bool pmc_can_attach(struct pmc *pm, struct proc *p); static void pmc_capture_user_callchain(int cpu, int soft, struct trapframe *tf); static void pmc_cleanup(void); @@ -1029,19 +1029,19 @@ pmc_unlink_target_process(struct pmc *pm, struct pmc_process *pp) * Check if PMC 'pm' may be attached to target process 't'. */ -static int +static bool pmc_can_attach(struct pmc *pm, struct proc *t) { struct proc *o; /* pmc owner */ struct ucred *oc, *tc; /* owner, target credentials */ - int decline_attach, i; + bool decline_attach; /* * A PMC's owner can always attach that PMC to itself. */ if ((o = pm->pm_owner->po_owner) == t) - return 0; + return (false); PROC_LOCK(o); oc = o->p_ucred; @@ -1066,18 +1066,17 @@ pmc_can_attach(struct pmc *pm, struct proc *t) * Every one of the target's group ids, must be in the owner's * group list. */ - for (i = 0; !decline_attach && i < tc->cr_ngroups; i++) + for (int i = 0; !decline_attach && i < tc->cr_ngroups; i++) decline_attach = !groupmember(tc->cr_groups[i], oc); - - /* check the read and saved gids too */ - if (decline_attach == 0) - decline_attach = !groupmember(tc->cr_rgid, oc) || + if (!decline_attach) + decline_attach = !groupmember(tc->cr_gid, oc) || + !groupmember(tc->cr_rgid, oc) || !groupmember(tc->cr_svgid, oc); crfree(tc); crfree(oc); - return !decline_attach; + return (!decline_attach); } /* @@ -1412,7 +1411,7 @@ pmc_process_exec(struct thread *td, struct pmckern_procexec *pk) */ for (ri = 0; ri < md->pmd_npmc; ri++) { if ((pm = pp->pp_pmcs[ri].pp_pmc) != NULL) { - if (pmc_can_attach(pm, td->td_proc) != 0) { + if (pmc_can_attach(pm, td->td_proc)) { pmc_detach_one_process(td->td_proc, pm, PMC_FLAG_NONE); } From nobody Tue Sep 9 15:57:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPg3P0mz675vN; Tue, 09 Sep 2025 15:57:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPf6x0tz48tc; Tue, 09 Sep 2025 15:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433479; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yz4s6XJrvZzDuYg5wmlSdGS0YwX7MTohAzpzYjQp0rk=; b=jGDdjUM/p50ZyA7h7PUcz4KXhiABoLWNOgRgEl8AF9UzOJa1auy9iS3L9o/9pLkEHErtKg J5vIYIsvqAFCCKLsGfcludTjeAUcpl4GxIw9YpfVfsaVOkUmwUJ+CjVU5ADgi1kbj4z0EB D8MXXw2J0xPwr2F+n0BGtUtBA+UzJCjdb/aL69hxXFugfVenH+9F8q6SkJKy2rOnE2EdRo aLEpG2l4uD6FciBTe992vz2sPq8uIlDwyH/3XdLyy0Mvd8OBU62tRxBSV3Zw8vrL67O8I2 a0WwDeGY6rrOs1G6aDcDj6MrsyFbbwwPpKdaTfXFbpbfh8FGYUopt9A5BJmiJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433479; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yz4s6XJrvZzDuYg5wmlSdGS0YwX7MTohAzpzYjQp0rk=; b=BJYxRNo7qzwqX8edKQSSjifQSRtMzeVomzSgUmsU6rTdJ/EloMpH0ynwPrDGhRBzLwjGWr dN+BVODHnKrKoGx/QEBoncVsTZ9FxQgYuZqdd6ZXVy0wbO8qTpu2Efnr1yofrpkDZc+jCx gehMQVp61Pd44HIkvc2HQdi6RIhaMmrgjGLNaZShmwRjpxyuuSlF5ZJam/CEwDAIf5elAI ztt/waJ7gCT9EMUDkVJWNtU0to7UalhAm6cdWUm/cCwH+DJHoU4BJwzOWftQSFcQJ0Ajj5 cW+FrMv3d7QsZx1V/Vfg2d1lpY4DOnt0/+/diJZ9qx0CrvviGHd1vMMNxHWHgg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433479; a=rsa-sha256; cv=none; b=GUL+WfxtPaRUZDpkglOjkk1d4zWHxZfuCUKNp7R3fVcxBlTaTRke8gOAOVP9orYezWzf2q yaFsFF1mbE8tpiGeOVKrHFQL4uUBiNgfJ/BzLfpWSfsf3u8ZNHZNfCRL8yDodpu4IYgpYC 6t044a3OpRJik9ZuEQlfbs75m/iHzhEgqYPg8Ou1lG0RCxqja3BG0hdGZRZeuAJPZtuaoJ wohGVGwGLJTCKjexQnSPk/3KOhh0SeNTblcUmwS2KnehjCtqJsXn45V/YFe199SDqj5lSz acAMpa6MofgrPBZiF/PFMAgKpew1u9bHkA62NeA2E2pCChNeYQz2O5Gh+VeLLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPf6Gyzzk4Z; Tue, 09 Sep 2025 15:57: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 589FvwJk039250; Tue, 9 Sep 2025 15:57:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fvwj9039247; Tue, 9 Sep 2025 15:57:58 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:57:58 GMT Message-Id: <202509091557.589Fvwj9039247@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 1c40b15971f0 - main - hwpmc: On attach, fix allowing a PMC's owner to attach it to itself List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1c40b15971f09c0c0676ae476b88b32166eae8ac Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=1c40b15971f09c0c0676ae476b88b32166eae8ac commit 1c40b15971f09c0c0676ae476b88b32166eae8ac Author: Olivier Certner AuthorDate: 2025-09-09 12:48:05 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:47 +0000 hwpmc: On attach, fix allowing a PMC's owner to attach it to itself The returned value in this case was wrong, and would basically prevent some PMC's owner process to attach that PMC to itself although the security checks underneath would have allowed it. Now that this early return has been fixed, its block basically becomes a performance short-circuit which has no effect from a functional standpoint. Fixes: ebccf1e3a6b1 ("Bring a working snapshot of hwpmc(4), ...") MFC after: 9 days Sponsored by: The FreeBSD Foundation --- sys/dev/hwpmc/hwpmc_mod.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/hwpmc/hwpmc_mod.c b/sys/dev/hwpmc/hwpmc_mod.c index 15c782b91b69..a6a6ae68996c 100644 --- a/sys/dev/hwpmc/hwpmc_mod.c +++ b/sys/dev/hwpmc/hwpmc_mod.c @@ -1041,7 +1041,7 @@ pmc_can_attach(struct pmc *pm, struct proc *t) */ if ((o = pm->pm_owner->po_owner) == t) - return (false); + return (true); PROC_LOCK(o); oc = o->p_ucred; From nobody Tue Sep 9 15:57:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPh2fCWz675mh; Tue, 09 Sep 2025 15:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPh07X2z48lL; Tue, 09 Sep 2025 15:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433480; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=stOeBvHbohcPrXIykOK7mzKZqfC1nNHLbYscCfv6U7s=; b=LUTYHEz5no550np7uyuWtSAGoaxbdnhDGkJFnSQpw4wMGQgkwc5gUIASJfRGEPU7xY57EQ ZHZK2gyp3Oizr50lgZ/CKCOgPmk/s3S6cfmRn9eMbEUrXvyuBGhiITzxfgBsytuNFjPMZa RqZFORcmp/KYVNSr/WKX/eLpqaEaX/Y6MHWOeU5rL2fJYwG2W9qP2Cvfu3yGDykVQF8JBH Vw5p+bibxgun2+IGphM74SbnnAJfES14JOPaQhKXoaVbk+9gOAIiodBUCDkz771bwqlamb FHPey2+qxcaOqYkWiRmbn6xs/dCmFZ9ixdfn2Xva8e2xI8dM6ocjk5gMZIuQlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433480; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=stOeBvHbohcPrXIykOK7mzKZqfC1nNHLbYscCfv6U7s=; b=gEohktA6FrEBeRD4uQJTY/Ki4qWVV8QAElaOovJaXj84jCHVj3JRYaiVJ2jq0Ta6kGbtU9 1chz32kn+ZOSnMPijPOdbTDm4xeFE+6O19bp64dQRWqS72MyrTshc+61mC0ept09sKPkrZ YYN20FDctbpu+aJwkCkC2JCSWX+QtOW8JRSsIZ2fSVRR3Z1Bf2bW5gWGSABKQr5eScK99J iwJzLD2nSu27dN5ETEpiGfplNQwBQ4dsTYaEhGlHDvZdpfZ2umJFG0vWB5fVHP898RJ/ZL RCzEZtcObiiBvVTZnt/niVc2i8p7iTVLNp/2G+sHBoKnM9UuYTWHZGdVtzKgmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433480; a=rsa-sha256; cv=none; b=pKPiUuQJwO9lWZEpCiyQ43G4CN/3+CBU8km6FFZcOvZNwKq9Byibdt61TrBf9O46/GNUmE 7GskbVcbf/9d9x+dI/dJ/BulMytxeZK77vXn8cUEx8hzLiiOd7PRMVp9M8efKfX+CWTRJE hqEA/Vg+PsAzCFTqqZstHD5rirIGv0hR8lswFvX0BApAUrwsV6ymBeViugmLI85HFYvGRk xaDHa/yTje5fAWQj5OKsd+o1FpgeMitzOvMz79rBcAum08lYsQpjW1w1wT+J1j8sZpUN1h jD4lAmgvwgw5Th2GEvZhPy5X1HRIgKZkgNftFlkGJpGEK20hjN6xgN9hMua7NA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPg6VRDzjyh; Tue, 09 Sep 2025 15:57: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 589Fvx9G039288; Tue, 9 Sep 2025 15:57:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589FvxvB039285; Tue, 9 Sep 2025 15:57:59 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:57:59 GMT Message-Id: <202509091557.589FvxvB039285@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d9e11f01ef07 - main - hwt: On attach, ensure owner is a target effective GID's member List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d9e11f01ef076749e58614c03168e89f161dd978 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d9e11f01ef076749e58614c03168e89f161dd978 commit d9e11f01ef076749e58614c03168e89f161dd978 Author: Olivier Certner AuthorDate: 2025-08-26 10:05:15 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:47 +0000 hwt: On attach, ensure owner is a target effective GID's member This restores a check that existed prior to commit be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]"). Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52253 --- sys/dev/hwt/hwt_ioctl.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/dev/hwt/hwt_ioctl.c b/sys/dev/hwt/hwt_ioctl.c index 592db4931bb4..184c7e72f986 100644 --- a/sys/dev/hwt/hwt_ioctl.c +++ b/sys/dev/hwt/hwt_ioctl.c @@ -112,12 +112,11 @@ hwt_priv_check(struct proc *o, struct proc *t) error = EPERM; goto done; } - - /* Check the read and saved GIDs too. */ - if (!groupmember(tc->cr_rgid, oc) || + if (!groupmember(tc->cr_gid, oc) || + !groupmember(tc->cr_rgid, oc) || !groupmember(tc->cr_svgid, oc)) { - error = EPERM; - goto done; + error = EPERM; + goto done; } done: From nobody Tue Sep 9 15:58:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPk4Wl5z675s4; Tue, 09 Sep 2025 15:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPk1q4Bz493y; Tue, 09 Sep 2025 15:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6kyMsq8qwsWw8eZq3ZOX0PI5dp/5vCpavcdQsfrRRp4=; b=edhYLSyvkq3A5m79QW/n2WRyPXn8C4U0PtdP72aka38wCBNWexw+a45XGv4gyduD4SDPyW Qy87w4RmwB3YSuNz5c/FmWW2XQ+53RZ42eXuddM1Sie2rKBziVQW7oQ7pvNa0c6GrHvrnh mEbHCErlJ8af4VL5wZRru0wtvPSKQkeQHiAyexOIbb72WLBZynFV9Ntay9NznvfynsUlbv OPcz9CTQzivbeV9Xe4xzK1KpEWPbk6FH4Ig623LnGuN8P1iD3b+zH1njifd6ZaRn6sZa4f eF8TjtQs3WhfShTGO7l+hENbGO3xB29R0smPUqy4oeLVOQT9Z0mZiIVgXI6j7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6kyMsq8qwsWw8eZq3ZOX0PI5dp/5vCpavcdQsfrRRp4=; b=S+g8XVdpxAISflS2mA3MsUrP7fE5RN3T9mUt7rfZBGfzcH+lIiKNeOicutOrx6emCsaREU whMWBuruCg9I4Svndwwf6JYEEBdb8fybUz85lq5IFs8m9p0JxZC+CMpWCVfWw5v9nCWLdy eXRfJUFtbf5j+L+Ow2HMKAwQ1aDqvOnGdFzBP66wUy8vJQCtMsBArsTeEnyaa1Wdlq9CZk SM87XFW67ds49/1zzMpOoNkt1uY+vLlX54QM+rvB8/o1ay6Qz0BoGdnCxnsyqhe5XvIxE2 Z/hTgmM3t5Uljti/F22xW/VRmrd8TMjtMEJdOi7Nlgw+ejFqHjpXBcw5nBWlEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433482; a=rsa-sha256; cv=none; b=uI5ygZgCaNA7LevaOstAKm/KhOdH/xspR7OeqYM7WbsfLFobh4CD3FuNd2KPt+Vd39gI1G pD4w1+J5OevVkq/OPk2XYqYxuxl8fit7tc9Qdr96y0F4ihzaRGNy3cZkyrtM7T3rl9N06X sCZXWyNAihrIf7arRJ785v/OQdAjUzuGzdc+Pe4Bnp+Kb5QCekB4ucTy+1TXR7oeI3dSgm 2onTfpDIeqQ1SACKg8lty1KjSKeD5FcPuQ+5c/Kr3BnjB/YcDmxSKi1rzQH8h6Q6M2VMB/ f6ASaIyLw0d2Bg4sDvhjz6pjWq4d6C5uArYKVGd1jF42+fq828dW3aNkKup0xQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPk1MvxzjMJ; Tue, 09 Sep 2025 15:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589Fw2rm039362; Tue, 9 Sep 2025 15:58:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw2X3039359; Tue, 9 Sep 2025 15:58:02 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:02 GMT Message-Id: <202509091558.589Fw2X3039359@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 71db32347665 - main - nfscl: Restore sending the effective GID to the server List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 71db32347665753a3384e36dcf89c9e3a8af6529 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=71db32347665753a3384e36dcf89c9e3a8af6529 commit 71db32347665753a3384e36dcf89c9e3a8af6529 Author: Olivier Certner AuthorDate: 2025-08-26 12:55:41 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:48 +0000 nfscl: Restore sending the effective GID to the server Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52256 --- sys/fs/nfsclient/nfs_clport.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clport.c b/sys/fs/nfsclient/nfs_clport.c index e9f1dc23ddbe..77e71d4153c9 100644 --- a/sys/fs/nfsclient/nfs_clport.c +++ b/sys/fs/nfsclient/nfs_clport.c @@ -1098,9 +1098,10 @@ newnfs_copyincred(struct ucred *cr, struct nfscred *nfscr) KASSERT(cr->cr_ngroups >= 0, ("newnfs_copyincred: negative cr_ngroups")); nfscr->nfsc_uid = cr->cr_uid; - nfscr->nfsc_ngroups = MIN(cr->cr_ngroups, NFS_MAXGRPS + 1); - for (i = 0; i < nfscr->nfsc_ngroups; i++) - nfscr->nfsc_groups[i] = cr->cr_groups[i]; + nfscr->nfsc_ngroups = MIN(cr->cr_ngroups + 1, NFS_MAXGRPS + 1); + nfscr->nfsc_groups[0] = cr->cr_gid; + for (i = 1; i < nfscr->nfsc_ngroups; i++) + nfscr->nfsc_groups[i] = cr->cr_groups[i - 1]; } /* From nobody Tue Sep 9 15:58:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPj69Rtz6767M; Tue, 09 Sep 2025 15:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPj0nCRz48yp; Tue, 09 Sep 2025 15:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433481; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FM7ToALZFM+E7O6ast0fXLdD3R7iGOfRJ5vuWqdZjf8=; b=Vd8f+g954dPeFsGZgXMMYzf5JlFrVjJS9AJ30xtg61CIe9JtGjy2Gs2DmbnDQYdS0WLMWr 3z0dqBioME2fbInw3Tla7q7vIzXwZCJP8f9oHfHdDmBfYpE2jPtfmEu5LB8etazXdkxUTM rA8r8+Qh4ELYe9WV7bVKZBqDLbIv2D78y6XW3jLZ9uvrrkDesRUKMw9/gDNk5kt/euDmN0 UhrXgcw92GVHDPDxvcjGAvYcz8YWx6lh09AB9kWuh0wQy6nRko63Piu92VL5erQWFnWlYs 4iegecneMXnsxNLqBD076vhEYS9Zc8DdnE76e3hzpncrBJgKZfC4EHcQuX5YDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433481; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FM7ToALZFM+E7O6ast0fXLdD3R7iGOfRJ5vuWqdZjf8=; b=BL4YWXEpnE5ST/wdsW6swflQyDfWGPvnhsVDL6+0lyZuDuAiDlCC00HXJXphSk4eZFGCMe uh47AUDTuD6HjxUjDYSrlLtRlC3Tz/N8zZrIwxKqralWyLsnOEXzGzZ9G+wUC8biy1gZV4 aSqwef3/gK3mG63sLQgbgF2xE3lozyN9IKupMj1e0g4hps/zntIYYEE7oFXFavf/dbWC+e /OBAgDNjHBkGQHnwui13aeYzn5k1dcToJXjwOeHrVW65Kl496kr/1X4YpK7Ja5LY80Mfk8 d1Kc0JMxh1rlZiLkGCRo0dEB9u0CmMfETd4hdBWaiRFcagRy2HvwuKC8tZX/zw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433481; a=rsa-sha256; cv=none; b=Gw244fJHqRRWr29Ybbnj5rUVPstgR8jgz7ZOBSsLIVJYB5AT2Xfj1IjIQ+D44wNZBrn/Xm Mm57fm6viWjVhTh9Q4xqzwQ1U69PMQpl1QoadiYqO3NyINICqhmqa7Sr0JPveSyfecbU8+ MRKWmzuqtgPyrdhJlAH5PPQP05qva/zNBKKx1+ilE1DhcSD18BU6MBLzrXav9rer9C3b9C WfxRFYynaCVE4/aNXoHjKzZZ8maSdmFlcD7hm/+cszXAgoESnsYeYEH2tHP+difnM5Oohl LBi4jp76AmIsvOkle/CtgcqmjhQFPXZJRLBMOaP6WZUBM+ysgyMwVFKpuvdiCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPj0LqTzjbm; Tue, 09 Sep 2025 15:58: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 589Fw0Ec039328; Tue, 9 Sep 2025 15:58:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw0hR039325; Tue, 9 Sep 2025 15:58:00 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:00 GMT Message-Id: <202509091558.589Fw0hR039325@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 67f8bd5986a4 - main - nfs: newnfs_setroot(): Remove an obsolete comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 67f8bd5986a42a173ef9082abfcd523b1a3ac056 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=67f8bd5986a42a173ef9082abfcd523b1a3ac056 commit 67f8bd5986a42a173ef9082abfcd523b1a3ac056 Author: Olivier Certner AuthorDate: 2025-08-26 10:26:36 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:47 +0000 nfs: newnfs_setroot(): Remove an obsolete comment This comment is obsolete, as: 1. This code is FreeBSD-specific and is not shared with other BSDs. 2. With our recent changes in commit be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]"), all of NetBSD, OpenBSD and FreeBSD have the effective GID in a separate field (DragonFlyBSD remains to this day an outlier). MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52254 --- sys/fs/nfs/nfs_commonport.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/fs/nfs/nfs_commonport.c b/sys/fs/nfs/nfs_commonport.c index e5fdb395c9f7..862780741ee7 100644 --- a/sys/fs/nfs/nfs_commonport.c +++ b/sys/fs/nfs/nfs_commonport.c @@ -371,8 +371,6 @@ nfsrv_atroot(struct vnode *vp, uint64_t *retp) /* * Set the credentials to refer to root. - * If only the various BSDen could agree on whether cr_gid is a separate - * field or cr_groups[0]... */ void newnfs_setroot(struct ucred *cred) From nobody Tue Sep 9 15:58:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPl63JFz675xQ; Tue, 09 Sep 2025 15:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPl2BSPz48sf; Tue, 09 Sep 2025 15:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OgqRcdoz46jwW5xAxKLnOF8xJdcGD+6QK47mhPoofWc=; b=yBmNs9hqnHgOGiZ6yWDst/86GR/jj5Lg2rdR/acx23ch0wfC/F81i0T+7hrXGOHtlx9dST 6cOOgKI7551rE/LREi9ogBRQGONA9tCOhEToaOFcgpJmtUL6eVvHSATdSJB9Q8xcq9i+DC ou1lE6dVVOlRnBMwt06CYlrV4PTAubY1G38VFPt/6R3gt8Jn4VXpU+FKSUCxWnXI/Uo0zJ ZXo4r4Uxg/jDg9OqBS1/V+4Xht8vP5k6/eP6mzRDDyNuSrH9SwQQoAlKoYhEVk/urVO9hX tKjoU0TZYyOgjxrYSnNNzSsRYcZV3SJdV3lSKSwnkS2b0dE/6jptqM+SKLD1sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OgqRcdoz46jwW5xAxKLnOF8xJdcGD+6QK47mhPoofWc=; b=wDx0dToXDNbQc3a2wmhSBnuhgfSZS74BxGp35rIyolOHplQrXTWxttMBdK36Dcb26mO0on tLOND1ecQaFN23h2H7je8xkScYfFnO977+qScfEh/GW1C6kKd7wGSShM8GtbcuHtYkyw5p S4EdUBZK46kmdMmNs80A988FuMFmFowR2m/6YXfHkCs9BoByiRy4PCTrJgY7NjjlUxdZeZ 9rhyHVGUKRh+1bJLMSijM0HT39Njewsq06YWzTrknA+ztypX4OUMbdSsVsNnlGYOWUqRxj 8N8AxkJl5LPRWlXauiVtmK63R7r7tjffVZj3Ve7XYAdpwLG11qPc9EmutuMJ0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433483; a=rsa-sha256; cv=none; b=Dr3zUMexj+qr+gM+P8//kNeUf2Vz0yrjdq08VIC65bKQvpppa4BwJobX5wnagxOE4FzY8U +EOQ0AexCbMC4TV9q1S19guhyiCg05pu6KUJNahK8Mpe8k+p++rEgMeVdORUIGcjWjgOiF 14PROwNUWG0nsHMvuZv4b6mXp7JqyshYwQyWff65UKX0eDBhJNXY0MQI95dp96GUSaOBUh AV8z8Ar4wcn23JJ9OV0XwIC5+Dw5MFGqjwfe8pJl+xk0ipCyK+NsNwdWY8yNPVdjOZudYM 9HK7uI1FA6uB9puw6xQSyuovY/QJxJmqTru6ZiJ+1ewMnDaFDcmk6exrJDM3/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPl1pYMzjx9; Tue, 09 Sep 2025 15:58: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 589Fw3wY039399; Tue, 9 Sep 2025 15:58:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw33d039396; Tue, 9 Sep 2025 15:58:03 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:03 GMT Message-Id: <202509091558.589Fw33d039396@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d859d4c57eda - main - procfs: Restore printing the effective GID in 'status' List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d859d4c57eda8ad277611466b840637234712e42 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d859d4c57eda8ad277611466b840637234712e42 commit d859d4c57eda8ad277611466b840637234712e42 Author: Olivier Certner AuthorDate: 2025-08-26 13:03:19 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:48 +0000 procfs: Restore printing the effective GID in 'status' Reviewed by: kib Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52257 --- sys/fs/procfs/procfs_status.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/sys/fs/procfs/procfs_status.c b/sys/fs/procfs/procfs_status.c index 38070e0946bb..49c084d02ff8 100644 --- a/sys/fs/procfs/procfs_status.c +++ b/sys/fs/procfs/procfs_status.c @@ -141,13 +141,9 @@ procfs_doprocstatus(PFS_FILL_ARGS) (u_long)cr->cr_uid, (u_long)cr->cr_ruid, (u_long)cr->cr_rgid); - - /* egid (cr->cr_svgid) is equal to cr_ngroups[0] - see also getegid(2) in /sys/kern/kern_prot.c */ - - for (i = 0; i < cr->cr_ngroups; i++) { + sbuf_printf(sb, ",%lu", (u_long)cr->cr_gid); + for (i = 0; i < cr->cr_ngroups; i++) sbuf_printf(sb, ",%lu", (u_long)cr->cr_groups[i]); - } if (jailed(cr)) { mtx_lock(&cr->cr_prison->pr_mtx); From nobody Tue Sep 9 15:58:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPn1StGz675vT; Tue, 09 Sep 2025 15:58:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPm3L63z499M; Tue, 09 Sep 2025 15:58:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433484; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+SV+n0ksH6ar1rhPsw1P4YCiE8e5HubuLr05AjCCy6w=; b=XXwMfBQBcrG3Nnk2i7YO3fRUY1X+Os+/xSC8lZC9W0rHaQJ5KQoKksyLnciY031Cn9eGy5 P2MkvrlSA/kJgoVdhMSMYeelQbZZ/vJPoshRnInkV5CjGZw2WnuZsYbh/oPpTYJjaXzZCW uDAXeLs+eEoMnboZkPVR/iWJMF+0tCfSo9BPPdaVkFJXkaGyY7/5Ogh6WtLIsbvGFbu427 WsmwJ6C//Fydb6pX77ETTQlNQFy+VBcajijFKfS93r1u3hLpH4ALzICX8wxSMQ5LoCJXdU 0KlrQeOHsrkFlr8WoNNn3eMB7u0y2tLs9eBGjwkWK0NXKhwaFArT79nUnFBIWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433484; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+SV+n0ksH6ar1rhPsw1P4YCiE8e5HubuLr05AjCCy6w=; b=rYwfFLtjfNKHmOk4DC67ijqFw2IKWh8ji/Uf1MOOwrvNQlEB3GSLu4/Zlj6cB8ys6Soogj q+sFFrbk+rjuVLHaHQGalOTdQDXCZp51FK89rmKLQT4LevLYJoz76ySCKEsE0vwutIE/S/ BVj/iuPox/abaYFbUn8EN3aX/luMRXZaOlZUsMSXjgbd/rcBLgvicOaFFd5kuxlnBsM5OT KlEb6IfRNKMW1R46a1OusPSyhe1dp9BQGP6f1DtIAH7aCYOGj15dDk+W478mWwSA6522TW UPyieBpfSkSL+JMjWRZ/lEsCQratDLmDJHq814BeneeZvWlF8SIpsdGTvzVzDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433484; a=rsa-sha256; cv=none; b=WsqEUGuMLtqc5U+ctfM0TYkkbY7eE7XK1zPYUbYbvH2nM8zBW2qhqzk/tHtj3RvTGhL3vy uyYWJ1iiX6av3WEBFLNEKxKgXN2tAgtgaQogGmWhObuRRHaesBmG/614M7J04/0wyeaaXS 1YiJaHJU4knzxgfVLYeMm3skt5xKmR4iYmuQWRKtTZkWgm9//K0nUSmtj02ZsaRyHgIi6G IhSGoYQO2JI+zW5efzZ2GjKFJA9wQwDF6la8DZKUSgFaPl4oHoKuUVBWgoQtsiZ19qGL0G fW9r3pfNRXB40YSru0s51DCDU4qVsVKStvczTGhohclTi/eASJiGpYyTWAg3lQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPm2mv7zjxB; Tue, 09 Sep 2025 15:58: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 589Fw4j7039435; Tue, 9 Sep 2025 15:58:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw4f8039431; Tue, 9 Sep 2025 15:58:04 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:04 GMT Message-Id: <202509091558.589Fw4f8039431@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 5568b4441dff - main - imgact_elf: procstat groups: Restore sending the effective GID List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5568b4441dff078733a76835312a6ce1ccb50a17 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=5568b4441dff078733a76835312a6ce1ccb50a17 commit 5568b4441dff078733a76835312a6ce1ccb50a17 Author: Olivier Certner AuthorDate: 2025-08-26 13:41:49 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:48 +0000 imgact_elf: procstat groups: Restore sending the effective GID Fixes 'procstat -s' run on a core file when the number of groups in effect at the moment of core dump exceeds KI_NGROUPS (16). Reviewed by: kib Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52258 --- sys/kern/imgact_elf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c index 5a53fac50f2c..1bc2491a1a12 100644 --- a/sys/kern/imgact_elf.c +++ b/sys/kern/imgact_elf.c @@ -2610,11 +2610,13 @@ note_procstat_groups(void *arg, struct sbuf *sb, size_t *sizep) int structsize; p = arg; - size = sizeof(structsize) + p->p_ucred->cr_ngroups * sizeof(gid_t); + size = sizeof(structsize) + + (1 + p->p_ucred->cr_ngroups) * sizeof(gid_t); if (sb != NULL) { KASSERT(*sizep == size, ("invalid size")); structsize = sizeof(gid_t); sbuf_bcat(sb, &structsize, sizeof(structsize)); + sbuf_bcat(sb, &p->p_ucred->cr_gid, sizeof(gid_t)); sbuf_bcat(sb, p->p_ucred->cr_groups, p->p_ucred->cr_ngroups * sizeof(gid_t)); } From nobody Tue Sep 9 15:58:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPn5pmfz675q7; Tue, 09 Sep 2025 15:58:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPn40TBz48v2; Tue, 09 Sep 2025 15:58:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433485; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nH66DwzB/7W04ukv/Dz7j3/uwc8gszMLX0RD9ejUHbI=; b=T+MtW0ONar0AC68rx7K1JquVhLkGRWD9IrLkwIFp5tqhDqje3QvHFvCP9wxlCbIRZo+TZA 79trvPFV1w58GQuS63deUDYeY1049iOl7NujO5Swc8u9E0SHNeH7EHGDPZlZMPLbpQLsLA DhcIKIGeDYyAk4OXW7pxEmR7k9Fe970d8cH3HXEb6NsCpeuxZ+tp9s1Daj+LWHwFhbVm66 PtN6P7dRGKYi5z7fH+fCX61bi/JNiTDfV24PREsX+t6FdIniaBEXcvkVWTEvSI1n5Nxvxm njpdSJqLcEW6znJB69d5rXWu011g1kRzkxeAOvmUFEd14I1JnCf6N8Cwy4Bo5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433485; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nH66DwzB/7W04ukv/Dz7j3/uwc8gszMLX0RD9ejUHbI=; b=gk3gGzAzVAFbuq5i3gTdPtIXUNt+1zDROymKshlpQ3sNgfu4u+77QwIrf70f8cd/AXZTZY uL/MC+gf+OWPAxWsc+hBP9OkVyCY/U7BM/+QLhFF45BRYYaNUvLFWorian2Ah/tnD/MJIY TUejhc4+ptyfwUvQvUeb0WgVwIfdKjlStTzhdHJloJIkyMRw2/s4QqNbq7YYxnV9w3R9Sa MNQK4w/w5cZ30xN1mHJLFO5joe56zc4QqjB4wzJlqGxw684XG2sZgRXgiwhgCwZzWz6UAu HYY50nYyiV5X3P7R4N9NolO+qQXPNbDXyXEsSQHbBKO8UFgHhL6AUz1lh2WzYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433485; a=rsa-sha256; cv=none; b=auHapmvUws12rgl4Nm2rfZ/XzsRd6rZXjgfosKGtfUWbBW8ngjXK1HQMcwq6e5Ri4IKUBy R843UcS/V7+dQPElA3zDxvhEROAje9SDbU6VnqN/ehky/T35cZUvpnpCdfYC4OR2QpyKgu 0eqztdECe0inajrR+k678oh8fNydZldnoJUpZ5SfgttfVcELyRMi+S11uYKPnaigGVOIyk 2r3qMfKmbkHp0hAdPVgnEd9wXbjo0SqHc60VMV8Gz8nXrQoovRlZqkQIH8o5MfnYiq9xQj jAon8BoXnsfxpX2JkngJucZienwY7oBuH4v5+nuTDMuGPiuicOt5p4bgpFpS3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPn3cP6zjyj; Tue, 09 Sep 2025 15:58: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 589Fw594039473; Tue, 9 Sep 2025 15: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 589Fw5oJ039470; Tue, 9 Sep 2025 15:58:05 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:05 GMT Message-Id: <202509091558.589Fw5oJ039470@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 63a40ca813a9 - main - kinfo_proc: Restore outputting the effective GID List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 63a40ca813a9995e8e2dee0142297d9c38106c05 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=63a40ca813a9995e8e2dee0142297d9c38106c05 commit 63a40ca813a9995e8e2dee0142297d9c38106c05 Author: Olivier Certner AuthorDate: 2025-08-26 13:53:06 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:49 +0000 kinfo_proc: Restore outputting the effective GID In particular, fixes 'procstat -s' on a live system or a core file (only if there are less than 16 groups). Reviewed by: kib Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52259 --- sys/kern/kern_proc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index 379fbda619c0..c2855034fabf 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -1112,13 +1112,14 @@ fill_kinfo_proc_only(struct proc *p, struct kinfo_proc *kp) if (cred->cr_flags & CRED_FLAG_CAPMODE) kp->ki_cr_flags |= KI_CRF_CAPABILITY_MODE; /* XXX bde doesn't like KI_NGROUPS */ - if (cred->cr_ngroups > KI_NGROUPS) { + if (1 + cred->cr_ngroups > KI_NGROUPS) { kp->ki_ngroups = KI_NGROUPS; kp->ki_cr_flags |= KI_CRF_GRP_OVERFLOW; } else - kp->ki_ngroups = cred->cr_ngroups; - bcopy(cred->cr_groups, kp->ki_groups, - kp->ki_ngroups * sizeof(gid_t)); + kp->ki_ngroups = 1 + cred->cr_ngroups; + kp->ki_groups[0] = cred->cr_gid; + bcopy(cred->cr_groups, kp->ki_groups + 1, + (kp->ki_ngroups - 1) * sizeof(gid_t)); kp->ki_rgid = cred->cr_rgid; kp->ki_svgid = cred->cr_svgid; /* If jailed(cred), emulate the old P_JAILED flag. */ From nobody Tue Sep 9 15:58:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPp6YDFz675vh; Tue, 09 Sep 2025 15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPp519Jz49Mv; Tue, 09 Sep 2025 15: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=1757433486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=63loAmxKUl/rzEQLN7pHswgBkt4YolqXhdvovl6I1Qo=; b=khUIl0Ql/0tEt4tV4gSMSZh3O3zevOY3xXtN6bgnrXAmtwZ44znLJpVYAAcNLSk4P7Ds+j V0TrlOydSEw2dP0kjthVoRZvLIq/wjF5MsXT+s5+GdbeKlEO7zjZU2XZx/3FfRCvmXtQyJ 76jZ9YElVLDDyaz+6KaQJIss7qrwhBXYoCUxuXPz+274h4iyZTwwIT388NUmsiAaY/HSvt TpbONkXQjhBt6o0HKtHX8WwpXWdu8lt3p0Cwxjl2SLT7C9TQzcgjEMYksCozoBFkVvXBNG REIi6QJ7W40zGKb4oYIVPNqFCzfBuu9RdQROS7KuqKJhyfivU9+3AbxHBovk5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=63loAmxKUl/rzEQLN7pHswgBkt4YolqXhdvovl6I1Qo=; b=tQfE3pLp2T5KGXj9PoU1PJPVfXneY84Ceugrq4Cj4QGw3xx8hGwGv/3urTVv0rVYtosIV9 x+DxYklWUHToQr80xJQgxGCFECyUos2USpn9IRBfVTGutBq9M04xglCLPIrt7birrwsnWS DFhqnuBmHwopIQXNeupW88wZDgTUadhalXTZiGKrj+KcNbi12pptan4wfbJZAwfxZiWqJY l4LtFDkeYl36xWjb110tHmIepwefU0SgTlYZaeXFvdjBCq+t9rUgcs8SWM/k2lA51dv4Rd nBLJyE7tsx4nZDgQf0ZbKSWuP4qLQNTNVUY4aAPNabogYUTX8VzkDIHlIS0NWg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433486; a=rsa-sha256; cv=none; b=xFDcAHuNOOy+QD4zZ78R4wOfSGE3GHrZFxViFWu+N/QxBwdAImTjdL5AaxwQ91sfjsm51A QjztxJ6O1OUXOuSpkHjfC3n94N7ahI2YwE0Py7VDCyl120/VEJz7SzzBySIUoFow0JHlWb Pys8SRCj1p4HokjcVJWwKlLf8uD//m95AFvSvPTO9VmSaNo/soUrv/NhB6jG3uhL7eF4RF n1s/RnsZP6xKeu5Mj9RZ2nuPHeVZBpo7+jyr40oz1FJRctlmVrLQ+DQD6BZx6dieXaYVNR EWmdfwWMGnGati/fLp11BQUlfulXQ1fkSeYrHKEJoSBREtTSwmT/vSC5rns4eg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPp4YpYzjyk; Tue, 09 Sep 2025 15: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 589Fw6lo039509; Tue, 9 Sep 2025 15:58:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw6MC039506; Tue, 9 Sep 2025 15:58:06 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:06 GMT Message-Id: <202509091558.589Fw6MC039506@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 7676df2faeb6 - main - kvm_proclist(): Restore outputting the effective GID List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7676df2faeb6dcbf20456574dcd2a7f4ab8fff8a Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=7676df2faeb6dcbf20456574dcd2a7f4ab8fff8a commit 7676df2faeb6dcbf20456574dcd2a7f4ab8fff8a Author: Olivier Certner AuthorDate: 2025-08-28 14:19:43 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:49 +0000 kvm_proclist(): Restore outputting the effective GID In particular, fixes 'procstat -s -M' (only if there are less than 16 groups). Reviewed by: kib, emaste Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52260 --- lib/libkvm/kvm_proc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/libkvm/kvm_proc.c b/lib/libkvm/kvm_proc.c index b2b7c6ecce56..fed483978e62 100644 --- a/lib/libkvm/kvm_proc.c +++ b/lib/libkvm/kvm_proc.c @@ -150,13 +150,14 @@ kvm_proclist(kvm_t *kd, int what, int arg, struct proc *p, kp->ki_cr_flags = 0; if (ucred.cr_flags & CRED_FLAG_CAPMODE) kp->ki_cr_flags |= KI_CRF_CAPABILITY_MODE; - if (ucred.cr_ngroups > KI_NGROUPS) { + if (1 + ucred.cr_ngroups > KI_NGROUPS) { kp->ki_ngroups = KI_NGROUPS; kp->ki_cr_flags |= KI_CRF_GRP_OVERFLOW; } else - kp->ki_ngroups = ucred.cr_ngroups; - kvm_read(kd, (u_long)ucred.cr_groups, kp->ki_groups, - kp->ki_ngroups * sizeof(gid_t)); + kp->ki_ngroups = 1 + ucred.cr_ngroups; + kp->ki_groups[0] = ucred.cr_gid; + kvm_read(kd, (u_long)ucred.cr_groups, kp->ki_groups + 1, + (kp->ki_ngroups - 1) * sizeof(gid_t)); if (ucred.cr_prison != NULL) { if (KREAD(kd, (u_long)ucred.cr_prison, &pr)) { _kvm_err(kd, kd->program, From nobody Tue Sep 9 15:58:07 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLpPr1my1z6762B; Tue, 09 Sep 2025 15:58:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLpPq5h0wz49HP; Tue, 09 Sep 2025 15:58:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433487; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FaIvfaS4/efcfjZ5aE/buWxFEVEzVS9z5Yet/Pkhf8Q=; b=mFoWrvSnfy9G6IUOySQ4effs6Xgl3E0Mzsqprdbrpyr0tXCo5yhc7uDiYsSLtTCes6lWwd 871t+WOKx+aBSDDG2Cx04TuPoIwT2BSa/IC4d0f4tzwW5W/1Hp5MjscPfRMn0DJzTpbSA9 13kuGqbPbkLMG+T9Xd2qAfupviJZpNQZAalZpcgOahOo6ZQOkQER6MTSFCGVr9LniV9ywL mlTdHGbiE+NDOiw2/5QFK7ADuSd3+T3wlcZifK7Kl8RzPirLfdtNyrY9xx1yF0sChPHKIn cKjxe3OkEykVrw7NeDasgVDci+YD7ECCxXO9orjfmMm2RGIlGO5qJCqG+RNmng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757433487; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FaIvfaS4/efcfjZ5aE/buWxFEVEzVS9z5Yet/Pkhf8Q=; b=AeX+sWOI/RSuUpNAQYOzn9bxxGxWu+ZTXnzxmqUcGYNYRsRFWxiQUHeMQKllNL/Ue5ibd/ 6VCFbpiNxNqPEDZAYFq98j6LXeFaqMEND224FWnfeeMYvqfcoPYEaQojImbzLKpoVIx2X8 RsGXElQ7vGbfk3+24zWuylZUFPTD5N3GFd2NCSK1TTFoo9/MNHpkscmS8cWS6G00L/z1us GmDIePbOLlhVpWm6iy4z9cz3aPygn7Jr5Le3hg5jkAa6Msa7Z8uvrJAWeRFU7Ana3/j/dl upkwJXv1Y+9fnwxH/E7A+mI3L8gl2DOuxNhAEXzZRqGsuGrUEGD/SzdsXHsVyg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757433487; a=rsa-sha256; cv=none; b=wwToJR/XuK/LbPwEaxVUSj/m4fHawbHx58Vza9VWeCqyWdGaMxcBfN7kdVpmdf/xYkvV3a 9K2cUL4z7FfPOp3jGQIMLTrNNs+nxgpXxuFz2VpPi4SFsZf0+cpKdN5g04b8k3xWq9oy2Q +drLFhG6ZZgfMC5xiWSVum2UisHu8a1yyR9R3PjvQ1K03yFaO8uvOhK4t4Rj1lKTpryWrE y1ADLQo5ve/amKcYjpceA0fgQDXZe9uJk6W2hSvF8alJcldCJyrCQb/uG+ljkahqYqQELs pFJmGfYZDFIdGfMCVGOSUwhySCqM+PA/c2xSPL5uzzDg6qt7Qhptwbb/wbJxFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLpPq5FTHzjyl; Tue, 09 Sep 2025 15:58:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589Fw7Fq039542; Tue, 9 Sep 2025 15:58:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Fw7jd039539; Tue, 9 Sep 2025 15:58:07 GMT (envelope-from git) Date: Tue, 9 Sep 2025 15:58:07 GMT Message-Id: <202509091558.589Fw7jd039539@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: faf7e9937591 - main - 'kern.proc.groups' sysctl knob: Restore outputting the effective GID List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: faf7e99375910fadb1b409a756be5477b561a517 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=faf7e99375910fadb1b409a756be5477b561a517 commit faf7e99375910fadb1b409a756be5477b561a517 Author: Olivier Certner AuthorDate: 2025-08-26 15:54:47 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 15:56:50 +0000 'kern.proc.groups' sysctl knob: Restore outputting the effective GID In particular, fixes 'procstat -s' on a live system (for processes with more than 16 groups). Reviewed by: kib, emaste Fixes: be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]") MFC after: 9 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52261 --- sys/kern/kern_proc.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index c2855034fabf..6e56664d12ce 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -2944,8 +2944,11 @@ sysctl_kern_proc_groups(SYSCTL_HANDLER_ARGS) cred = crhold(p->p_ucred); PROC_UNLOCK(p); - error = SYSCTL_OUT(req, cred->cr_groups, - cred->cr_ngroups * sizeof(gid_t)); + error = SYSCTL_OUT(req, &cred->cr_gid, sizeof(gid_t)); + if (error == 0) + error = SYSCTL_OUT(req, cred->cr_groups, + cred->cr_ngroups * sizeof(gid_t)); + crfree(cred); return (error); } From nobody Tue Sep 9 16:45:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLqSk5Wjgz678nX; Tue, 09 Sep 2025 16:45:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLqSk4pJNz3L1p; Tue, 09 Sep 2025 16:45:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757436342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8aHTS/sntm6z+hXg+hvn6zWkMTdlkGauno/hAXAcBsI=; b=sztNzO6L+QZG7DJaLZg6Ia/O9Qi1e9sXZLs2M8OKu5YwtREa4l0c63sNBDep2Eicz8MInI lG59GUiBFWQGCXJ6fqDHII/5jT9RQO99qUnONe2fquQ0DOd+qlgU8J7PCoUbtvQppJLMtS Yv2LcVpjnngNbQ82DFqzjqNO9JnbonguLIN9YG+GyfGk1xyfcChZnUWZCUZSgtjvLda9TV oAjFTPWEM5rAM8tJKFVq8IzOZR/LfZ0u8Yh0n0Tfwoaj203V/7aFPSC4xY/12WdLd5Cazd 4IXmFWd6b3IygIR7Ix3VOE6mpf2LqdsXZhYMhFnFMl1qa/4jGXw2bp6+w1jUAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757436342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8aHTS/sntm6z+hXg+hvn6zWkMTdlkGauno/hAXAcBsI=; b=L3Y113HdNzICVSn+e8RQEhYNN1Sm6uAKm3Gympnal0A5K6h8WwVSDluIpe3Eh9EskzeRr4 Y8OEhWTteqcnY38mXokPbUXNEpxlf+0g3CcNYjM3WS3cdn40mLvkByCNAWqRu6OCjNxhO3 nNhlfrtnyQQOiIFVMOOaTMB+yFJEna9ZgPx2IL1THDgisGsvGJOM+76NkbLfC2O4xeGy9I PMxT1TslPYJ1VRiVoQhOzUvHmsv8fZgNwcBAoyiTKdBfpQJf5hHDWm7NG6bABZEpXSlyTw ta/NFeaWLC9RLZ9Jcyor7rXEI734OOH0uvkxTAoy4n8TE2GMA7XYKPA48IJ33g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757436342; a=rsa-sha256; cv=none; b=kdaA3ZVGX56CLNU0GhSl87VWAPjOmz9+DGxlENlgX2WpxvlZ5nOMRZmBR3fkYzs3k0QcHa eO7kzYLp2NAYSOCUmblwenDnzsE+poA3ONjqPLUcOoxmOiZVKVuMMNE28T3egjZMuatP8X 79Vg0ZoPxNdV2x0QpG4GVSKrTnbhSi6JyCBAx+a/revwv7Dx0UURNZZc6CHGu6RYacQbk3 xrgOVn6f8RISP0U74QYKlLvZLh4OSYfvmZPH3nDW27+o9mzdLPYODZmVNOxqBy5XR/l0aR MaE8Yrp493m6jG7bqBxSLAfSkqxzPS2qGoHVDVb7IixQbbseDJFrCPee59V2Fg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLqSk47M4zkVw; Tue, 09 Sep 2025 16:45: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 589Gjg2O033769; Tue, 9 Sep 2025 16:45:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589Gjgkt033766; Tue, 9 Sep 2025 16:45:42 GMT (envelope-from git) Date: Tue, 9 Sep 2025 16:45:42 GMT Message-Id: <202509091645.589Gjgkt033766@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Somers Subject: git: 9bfbc6826f72 - main - sockstat: fix the -j option with piped output after libxo integration List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: asomers X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9bfbc6826f72eb385bf52f4cde8080bccf7e3ebd Auto-Submitted: auto-generated The branch main has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=9bfbc6826f72eb385bf52f4cde8080bccf7e3ebd commit 9bfbc6826f72eb385bf52f4cde8080bccf7e3ebd Author: Alan Somers AuthorDate: 2025-09-09 16:29:34 +0000 Commit: Alan Somers CommitDate: 2025-09-09 16:45:17 +0000 sockstat: fix the -j option with piped output after libxo integration The legacy code handling -j in display() was causing xo_finish() to be skipped. It has also been causing a memory leak since 0726c6574f8 (sockstat: Add automatic column sizing and remove -w option) Fixes: 7b35b4d1963 (sockstat: add libxo support) MFC after: 1 week Reported by: glebius Reviewed by: glebius Sponsored by: ConnectWise Pull Request: https://github.com/freebsd/freebsd-src/pull/1842 --- usr.bin/sockstat/main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index b5e0248b743a..2e75e4966d80 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -1612,7 +1612,7 @@ display(void) } } if (opt_j >= 0) - return; + goto out; SLIST_FOREACH(s, &nosocks, socket_list) { if (!check_ports(s)) continue; @@ -1637,6 +1637,7 @@ display(void) display_sock(s, &cw, buf, bufsize); xo_close_instance("socket"); } +out: xo_close_list("socket"); xo_close_container("sockstat"); if (xo_finish() < 0) From nobody Tue Sep 9 17:30:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrSQ4YHnz67ClS; Tue, 09 Sep 2025 17:30:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrSQ3zwcz3XHr; Tue, 09 Sep 2025 17:30:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439030; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gihYLwzI4L/H+grxnZKcIywBzt2U5I+Gp73BjWFy8FA=; b=RYcsH6Oi/dXss3DIvCh98MWU4YdFbvpX/t2Jb3FACNY43X40QDSbToc/PeoCbDGw89MyiJ waRbg37nvB0xZUEPw4Ear8nPOu+EnuvpGIS2WX4RqcZ4GzjtiB2I21qLUzBfIOX3Zm9H1i 6OKeckbsZaGfeqelbs9HfyMzhaGCWCGeHgLIvgwYvrSxUC7CoLi1Bm7yLKiBjn4wxoICxC SNI4RTjr28bOwIe7faYsFvPu4twknULKODbLTlAccujQciwVhi7IVCKLu8WCmRR01mGHfo diigw4U1YgBDDSDEgNUMR8TZu40P0Omczc7kYLilwct2eTmaaiQ3NXt4QLJ/DQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439030; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gihYLwzI4L/H+grxnZKcIywBzt2U5I+Gp73BjWFy8FA=; b=tvKP8mYbp+cxn+KuMCSSlDTUnEjPkI4CcUdBITEPJhJFYbh4qj7uC3CtaEgAix4+Uqvfow FiX47K/bVAf7rI5lt+RCg2bZDRkj0DBpMEWruy3gENGAfGUSPewTBlXYr9E1QvgP/V384q 8wP87w7NqNAFONrcTlZZTsIYGTvyOey+vMpgoyJzP48L2uG/Ct9rtTbTayvYCckXCsVx+i AtSyJ+Ry3aR1vTxWYoi8marqaI/jtGyVPSeVhiFoduxqWX5iRvkrta8IY/ZRWO+Priws8G Rbjtic4W5zCHgWumVhVuYPWN854nWLa3+OSW5Z6NEncUDStz2GKUJDhfhLdWmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439030; a=rsa-sha256; cv=none; b=ZiMt6nmtaoAy7R7BWgiFFMYtpZEWssz7tCzN+jE9AyaLnOoty0BcRVA4+DcnO3cgzR6I4a 5Ryipv6RZ+rM0EfNVzWVK+qtUxpEIfWaCzpbQMlClMR6YByY4AlcP5eoTr57u9GBCTJEzy JkrYxTb9sct1v36OV9XIgkIxt9WGflB6Z/mZRWnJWOAyJCqXkhSf+Dnw9VU3BjVvuemwn0 Nssd9PCOeYl54lGQZmCZGt4s76Bbn0EaE91+4ywHLk0X1YKpSbrSVkOaFdYcCuaRC+fQVW 8KCLK9vfG6IUqCeP97ba1Dj5yYpKxwgSSArxdswuWPzJr8V3twWnozwrAKmRyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrSQ346ZzmBK; Tue, 09 Sep 2025 17:30: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 589HUUHM019129; Tue, 9 Sep 2025 17:30:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUUvl019126; Tue, 9 Sep 2025 17:30:30 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:30 GMT Message-Id: <202509091730.589HUUvl019126@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: d81b84d6de65 - main - loader/efi: build with -Wall List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d81b84d6de652e6bff2d6af690752cec05d1ac0d Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=d81b84d6de652e6bff2d6af690752cec05d1ac0d commit d81b84d6de652e6bff2d6af690752cec05d1ac0d Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:15 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:15 +0000 loader/efi: build with -Wall Reviewed by: tsoome Differential Revision: https://reviews.freebsd.org/D52431 --- stand/efi/loader/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/stand/efi/loader/Makefile b/stand/efi/loader/Makefile index ae2ffc475730..b30c563d4331 100644 --- a/stand/efi/loader/Makefile +++ b/stand/efi/loader/Makefile @@ -61,6 +61,7 @@ CWARNFLAGS.main.c+= -Wno-format .PATH: ${.CURDIR}/../loader/arch/${__arch} .include "${.CURDIR}/../loader/arch/${__arch}/Makefile.inc" +CFLAGS+= -Wall CFLAGS+= -I${.CURDIR} CFLAGS+= -I${.CURDIR}/arch/${__arch} CFLAGS+= -I${EFISRC}/include From nobody Tue Sep 9 17:30:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrSR57y1z67CQl; Tue, 09 Sep 2025 17:30:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrSR3zLWz3XDF; Tue, 09 Sep 2025 17:30:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=F0S5IdNRQFOWNaNmq6cnZnwKNkm2ZkbPwpZoA/1TxCU=; b=yzq2cFlyqautArfP1/5FmESd0s16+v/foYBFca5p4kRzlF/zjk7MKgt97/Oooj118+AFGZ wTWKB+15XeaiZ/a5Q+zMbCETUfJ3JvC2wJN/JjsUwJte5CUgfnNNCeu9CZEm6y+r1UtSIg CUEsrE2ousuouObNCTyMdjgy7GmCR3DMjm3cjbAkegijl1k8dDBg151X0eUoqxo3Brj2rX YfFeWeXif5sLPRwjMUHeWogc0HpIHmykBNtsVV/4RqmhwSTY73FjPrvIfciDjSTnqHfq3A 9nwb8k15kbRXlEn206MQAxPvHGH9Ng3FtmgdeU1se+22ki6FbC/7PwCdBRaQJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=F0S5IdNRQFOWNaNmq6cnZnwKNkm2ZkbPwpZoA/1TxCU=; b=Guw97gtH6zzUFQ1RcPcCz1PB3jijrnG6Mw97DroN+3SqkulIGH9Jxc6Yr2AOKFPAdCoVcv 6RCOJOQZsEkCXcwcTk2Lirr/pz7aRo4kM4q1eK/2yozDqjLyou1UPDfPXwPo94RJxfecI0 7jaqYZfz3QbYh6Uwv6m9j9fLAUyXcISFyWMEQzO6K8sPm+1DgEVR7DKX5n0Jq3gqkbMTDM 2cwvG0J7XhPgsWGilGVmKQIRbm40VM1rhUG6K9m0kYDtXcyVqv5gHkJ9v5SsZCNbNgmIy6 Ngm5895xIZC8QxGTUEGTsu0ZB3mvAdpnojOjmUtzRYAkfwyjkO93usEJY8p/MQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439031; a=rsa-sha256; cv=none; b=DVo4WXJt66MxBubjj48rputWc9x+ykvqLYYfFerLD+OuTf+wzZ3des0A3xDwqg0F3ZalI2 9E4+qpFZ/FJK2rFm9h9EXzPGGgBEi8GqN1URx+CfzUF3AfBKqmQQFLIJR13tVaMKgIsrU9 4P9oCsctFopOpF2gHvCi0vUQ4nV0i3z3nJzFh46vcXSro2OWlaKNxdAnVv3K33IelvZ1yj +L/L4s+2U9/vQIpl1jHLZot0URL7boccBPqH5cpz+/+7vi7kz9/5OYbLg6+ZLMvKxQWjMg SGNuQQvA5f1iIlstlhmUWSItq7cTdaURjHr25jj8CJZgJqx4Dvq9dHFG/6oypA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrSR3Fn2zlwb; Tue, 09 Sep 2025 17:30:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589HUV7A019167; Tue, 9 Sep 2025 17:30:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUVKM019164; Tue, 9 Sep 2025 17:30:31 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:31 GMT Message-Id: <202509091730.589HUVKM019164@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: 7d48a5620522 - main - stand: remove unused variables List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7d48a56205224cfa969c32b47496dc8ac6a6a637 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=7d48a56205224cfa969c32b47496dc8ac6a6a637 commit 7d48a56205224cfa969c32b47496dc8ac6a6a637 Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:24 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:24 +0000 stand: remove unused variables --- stand/common/gfx_fb.c | 1 - stand/efi/loader/arch/amd64/multiboot2.c | 2 -- stand/efi/loader/arch/amd64/trap.c | 1 - stand/efi/loader/bootinfo.c | 3 +-- stand/efi/loader/copy.c | 2 +- stand/efi/loader/main.c | 7 ++----- 6 files changed, 4 insertions(+), 12 deletions(-) diff --git a/stand/common/gfx_fb.c b/stand/common/gfx_fb.c index 659bf8540422..3de0a8b631ee 100644 --- a/stand/common/gfx_fb.c +++ b/stand/common/gfx_fb.c @@ -276,7 +276,6 @@ void gfx_fb_setcolors(teken_attr_t *attr, ev_sethook_t sethook, ev_unsethook_t unsethook) { - const char *ptr; bool need_setattr = false; /* diff --git a/stand/efi/loader/arch/amd64/multiboot2.c b/stand/efi/loader/arch/amd64/multiboot2.c index eb7362293406..6216fac42e4a 100644 --- a/stand/efi/loader/arch/amd64/multiboot2.c +++ b/stand/efi/loader/arch/amd64/multiboot2.c @@ -79,7 +79,6 @@ loadfile(char *filename, uint64_t dest, struct preloaded_file **result) void *multiboot = NULL; ssize_t search_size; struct multiboot_header *header; - char *cmdline; struct mb2hdr hdr; bool keep_bs = false; @@ -495,7 +494,6 @@ static int obj_loadfile(char *filename, uint64_t dest, struct preloaded_file **result) { struct preloaded_file *mfp, *kfp, *rfp; - struct kernel_module *kmp; int error; /* See if there's a multiboot kernel loaded */ diff --git a/stand/efi/loader/arch/amd64/trap.c b/stand/efi/loader/arch/amd64/trap.c index 61feb76e2dca..37e7e9d263a7 100644 --- a/stand/efi/loader/arch/amd64/trap.c +++ b/stand/efi/loader/arch/amd64/trap.c @@ -87,7 +87,6 @@ report_exc(struct trapframe *tf) struct frame *fp; uintptr_t pc, base; char buf[80]; - int ret; base = (uintptr_t)boot_img->ImageBase; /* diff --git a/stand/efi/loader/bootinfo.c b/stand/efi/loader/bootinfo.c index b8f1a2ffd56c..3230200e9be5 100644 --- a/stand/efi/loader/bootinfo.c +++ b/stand/efi/loader/bootinfo.c @@ -68,8 +68,7 @@ static int bi_getboothowto(char *kargs) { #ifdef EFI - const char *sw, *tmp; - char *opts; + const char *tmp; int speed, port; char buf[50]; #endif diff --git a/stand/efi/loader/copy.c b/stand/efi/loader/copy.c index e4ad865a4acd..bf1a7a075400 100644 --- a/stand/efi/loader/copy.c +++ b/stand/efi/loader/copy.c @@ -248,7 +248,7 @@ static int command_staging_slop(int argc, char *argv[]) { char *endp; - u_long new, prev; + u_long new; if (argc > 2) { goto err; diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 436676368447..4251e6f25ce8 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -864,7 +864,7 @@ static int check_acpi_spcr(void) { ACPI_TABLE_SPCR *spcr; - int br, db, io, rs, rw, sb, xo, pv, pd; + int br, db, io, rs, rw, xo, pv, pd; uintmax_t mm; const char *dt, *pa; char *val = NULL; @@ -896,7 +896,6 @@ check_acpi_spcr(void) /* Uart settings */ pa = acpi_uart_parity(spcr->Parity); - sb = spcr->StopBits; db = 8; /* @@ -1206,7 +1205,7 @@ main(int argc, CHAR16 *argv[]) EFI_DEVICE_PATH *imgpath; CHAR16 *text; EFI_STATUS rv; - size_t sz, bosz = 0, bisz = 0; + size_t sz, bisz = 0; UINT16 boot_order[100]; char boot_info[4096]; char buf[32]; @@ -1405,14 +1404,12 @@ main(int argc, CHAR16 *argv[]) boot_order[i] == boot_current ? "[*]" : ""); printf("\n"); is_last = boot_order[(sz / sizeof(boot_order[0])) - 1] == boot_current; - bosz = sz; } else if (uefi_boot_mgr) { /* * u-boot doesn't set BootOrder, but otherwise participates in the * boot manager protocol. So we fake it here and don't consider it * a failure. */ - bosz = sizeof(boot_order[0]); boot_order[0] = boot_current; is_last = true; } From nobody Tue Sep 9 17:30:32 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrST4R8Vz67CTP; Tue, 09 Sep 2025 17:30:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrST0bHDz3XP8; Tue, 09 Sep 2025 17:30:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W4/cqigY8kL1F+FdLz0HKfLOoJSdL3F61MD3aPaiuqo=; b=oYzq/33F+UtsVZU9dLQ/Pg90QwOGeAXli1ctmWSpv0Z6pvmeTxFtl9rsP+2zly81tx6I9P G7iwUEHShPWSXg5UXHVJRNN0Cl/OglH7XVhhA6RYM4I7ld20U434s5rHQxhwZJSOLrxwJx unmdbE6yDEJf4kligj+UTsZExZf0eXrFGYA0JCQxe0IPWilUKHxonbLtZJNi79siOA87pL GHcCpl1hInB52hW1YzwzCkIiBKdenYy7qwhnDEL4OvwJZCH+bi8uavmNFfTNUhAM3Mq7v3 m4pxu3TsvFPwI7WZ8HEFzyhMi6ux4PpyEGahuvGY5fwEG9F8yknH6+/yJMT6/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W4/cqigY8kL1F+FdLz0HKfLOoJSdL3F61MD3aPaiuqo=; b=Cg9bRq3yLLHTOrf45dcmS9g9aCiJtrFjc/gZZTKnQPpDTkIExcFR2vk7KgKcyfj7NUyYfp aOFNX/F+lKI3mxIvuWf9frEUlMRBeqe4Isby6jsC9GfUgS1yXsvhhYL89kH7BINjtVhMVU G98YvLCVcqPjoAKqw448Rul2ZBMG2nFrZy0/BudRG98yLAXmCZaVKRqcFIkn5qHdlvMzs2 SPutt5xjrfJdwuTSKa0chVXBdECIuovtqnVU8d9Sad7BoXcS/SIbfK18PfHE9PfEzagnWz 15fkkHK/EShF5A9AyOm6HGgPaN4j21Sk2wrs3zTe2oWEV4DBxgAkSWC9NJnqYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439033; a=rsa-sha256; cv=none; b=H7wAUjJaSorsI/dO2tdBauYmDy2P//Ndklyo8PwfVNFF4Vsgtkwqk5wS5lDuSpF7kp2ViV 2VgzFb+o4pdxoCdBwKp0MSTgYboIaG0UKnLOD6WOHPrHeWBN7SoJPdgrfKsrslYsLZuPwm mUNbY6NRH+tkI0FmnyArWHKlX+1PU18ooe0+EzcWLNUvnEed7jBETgV5Af3JCbDaXgdcCo Q/fOuodjgjv9Vpdn2z4HD5rA8E+hDFuBz9ON4m1N3KQDrx+U5XIu3VuPJpuJ0Gy0O45uMT g57jqsACNqt3OQL5r3Rblj1dqmnYv2f2lnTGZ8JkiDrf6E+dQ5arv1vD9pnMqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrSS4Vp0zmBL; Tue, 09 Sep 2025 17:30:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589HUWUF019201; Tue, 9 Sep 2025 17:30:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUWvX019198; Tue, 9 Sep 2025 17:30:32 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:32 GMT Message-Id: <202509091730.589HUWvX019198@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: cd9b43edd5a7 - main - loader/efi: return error from efi_find_framebuffer List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cd9b43edd5a716fdb764adc281a4a09c617148f0 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=cd9b43edd5a716fdb764adc281a4a09c617148f0 commit cd9b43edd5a716fdb764adc281a4a09c617148f0 Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:33 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:33 +0000 loader/efi: return error from efi_find_framebuffer Also return actual errno values in other code paths. (suggested by tsoome) Reviewed by: tsoome, imp Differential Revision: https://reviews.freebsd.org/D52432 --- stand/efi/loader/framebuffer.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/stand/efi/loader/framebuffer.c b/stand/efi/loader/framebuffer.c index 141a29305f7c..fc61ed15ba3c 100644 --- a/stand/efi/loader/framebuffer.c +++ b/stand/efi/loader/framebuffer.c @@ -630,7 +630,7 @@ efi_find_framebuffer(teken_gfx_t *gfx_state) gfx_state->tg_fb_type = FB_UGA; gfx_state->tg_private = uga; } else { - return (1); + return (efi_status_to_errno(status)); } } @@ -644,9 +644,12 @@ efi_find_framebuffer(teken_gfx_t *gfx_state) break; default: - return (1); + return (EINVAL); } + if (rv != 0) + return (rv); + gfx_state->tg_fb.fb_addr = efifb.fb_addr; gfx_state->tg_fb.fb_size = efifb.fb_size; gfx_state->tg_fb.fb_height = efifb.fb_height; From nobody Tue Sep 9 17:30:33 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrSV2cHGz67Chp; Tue, 09 Sep 2025 17:30:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrST5zylz3XXK; Tue, 09 Sep 2025 17:30:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uro70gwMSfnu+PHQo13vjz010mjUo3Zc2ncB5yZa0aQ=; b=wNTqhMyM0aOhGC4WCcqINvporZQiySIV70p1QTV+gkCgx79Ftizubb5xyVO+gbqO/fS5RV WNnzDqc1m43nqgOqYWpHB3RxNgy6K0wurirh3zs06lxdaCEB1DcRSrBuARm4mr8Xdekynp nRVODoKt3DtJ093LqAOraHPl64whSXV7qNjH9lICdvLAX9kEKndUGqpQ9pV39FA3HWAYPJ /+ElsSNp+Y2iE2omeAtmYOAa53T1TrCaTfzMLKTIckUBYcn8B6c1YKM7XjZUaPFqJ0nrBk 4tgCldTImw3WmoI9LF7Oi+t/XrkIkHnI1ZivMZw6kn4t+gEf/3N0Rhsvc2hlSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uro70gwMSfnu+PHQo13vjz010mjUo3Zc2ncB5yZa0aQ=; b=vrHogypXBq7GcYb4UR/FYjaEqClTlI045nd6Kqm+tZI8h6cULr/bzAxsJ7rMDoM4ZEDTgU 9RLx5p8LNYavS7SBpHlcTDpzzA873oLtyflv7qVCSM/5qgcbi4qbUOEgiL7mOZNiTJNNUd +t+PTMthWpXPPx8uwKyET0XsOdRMhvPmBfpHfAij2txFpstOIErj8LdCxVY5Jpr/DNQQco ixl13yiVmWS2lP4WZBEGnzsB7JUgBFoy8vvyADSs+ivmKQweLpJ0pGE14uNJ27O3PdsKQl DB1fgFWGOUpwQ2UKrrolmzn9O5XkypJzZrT1PMPW60S3iUfXjC2kFYdZa+b9ww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439033; a=rsa-sha256; cv=none; b=v3OuA0grjaFAkggZibB7sq3HMCc68fk73Nz/ShhoBnB9v6P361F2KSxsw0w5Sbd8WYQ+AB HdYKmbOkbP8iKCIGOi94FmwEVaPETNB8UTsguDlOt+c2uWLeiV9+ndDjQRZsQ3BiRAkWSB VfFgp7qTZssEBnNHLRr8irDTWmJ6ck9PTAFzxTSDeeQ3zzag8x5Ntfq7Y296gSq+Gzyv7K HYCUHtaR5EkaXaxBUvyqzBPnSD5ilyx8/pAoAY5ihPG4tZfYo7VFH6UiYMzPHL7N7HZM6v YdK0SjnG8xNb62U4DHhqrhGFlWfS7GoedZODr6TdJQFlkrr5Qe0ND662+P5uCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrST5QvFzmBM; Tue, 09 Sep 2025 17:30: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 589HUXW0019235; Tue, 9 Sep 2025 17:30:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUX7N019232; Tue, 9 Sep 2025 17:30:33 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:33 GMT Message-Id: <202509091730.589HUX7N019232@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: b4c5d5827fdd - main - loader/efi: plug memory leak List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b4c5d5827fdd4c4cf6c1c7576c29a4b3345a7390 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=b4c5d5827fdd4c4cf6c1c7576c29a4b3345a7390 commit b4c5d5827fdd4c4cf6c1c7576c29a4b3345a7390 Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:50 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:50 +0000 loader/efi: plug memory leak Reviewed by: tsoome Differential Revision: https://reviews.freebsd.org/D52433 --- stand/efi/loader/main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 4251e6f25ce8..d05e11f8eadd 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -1120,6 +1120,8 @@ read_loader_env(const char *name, char *def_fn, bool once) printf(" Reading loader env vars from %s\n", fn); parse_loader_efi_config(boot_img->DeviceHandle, fn); } + + free(freeme); } caddr_t From nobody Tue Sep 9 17:30:34 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrSW3JThz67ClZ; Tue, 09 Sep 2025 17:30:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrSV6tdYz3XGm; Tue, 09 Sep 2025 17:30:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439035; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0MnmYhQf8Nse2ZVryVyGYV12nEMCcCZ0O0smI81Kp9E=; b=Pa47eIMbxfkHar+esBJkimR/mjohSW5A/62t7UFitm0wGQAJKOcD75LExRqN9lJkMBNW97 nSxFTmAUWbVL0SLxE/B0xkcXo/U3hqjXVQ++US1EJC8JLt2ajOwEkzgHUPBqEVtjnq1I6M uy1ECGUtV82MW1+QtlD52RwsRysSfvhG25AwVEitN+y8oznEvscdgMqR5VrKv8nGRmHio5 tgJhq6A4DQLWN90MGgr5jg+DutVCLCj75qoWnRXuf+305Yh7saYHyP0LllnhqHPxDUXvZZ BNAZLRPdelyub82Y+BxtKedu3pqG8m1xGar9zkHbT1i9PBcbvfHHCKUDuxiPtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439035; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0MnmYhQf8Nse2ZVryVyGYV12nEMCcCZ0O0smI81Kp9E=; b=D7Y1ZEbFlZAGzOl+MfimA9Yp1ZWzVdYswFCgztuTh67NjCxBOi8XUE2aUNvlpl/ecncp2+ tFEu4+x4FKqrTO0zEYDMfuiIqjQOYJ0YmnsGLQZ4wvTJbVWI+I6o1XkTXSVPHDUvvmqLow TH3Iglw1CVwHs5YDEP0ubCSNh3yBbTkXje/17ArfcnXxLQqb6XYNE2eWtm/4nVSexQTV0q 8eUWneMH6PSISg69EN1iyb0PAlbRt98VJliPWsm9WzeViKRjJsFoUh4HOuWS8OM4RBlbqz gPQFrIdcPhODbrkc3uIwCHR3UaqekWyXvCczuMbq5f4moF6j8sqlB0PD4lrQww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439035; a=rsa-sha256; cv=none; b=eK7qw0bbYPT02jjHFX4F98VChBayRojGcrLLVd+AicpSD26z9Htxa/u/NLHsi8FXFVZD0J A2XqEzqnrVINxx+nwd1RQbh6OMDsbVcZ0YcAN2crR2aaKlzeRlbSUnF18ylMKRZ8e8hZ61 wMIjd+w0ZjfiJId2r35513zeclOGJaOBiKdHGFivXHlU925nqmVN/Vk3drbOC52KGr0Hjr WxWqRKKcW952tSyaH4NzaxZPxPnE1Z0k9IKh7oP/YbH7o68VeMFmPylzeiS348rACZqA4c mzFHQZgHVD1oh9ys6rtV7a9+YKC3k1LpHOXPS2SeRiA8zSBEDMC28UpykQN1EA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrSV6Q5Szm1j; Tue, 09 Sep 2025 17:30: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 589HUY0x019273; Tue, 9 Sep 2025 17:30:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUYd9019269; Tue, 9 Sep 2025 17:30:34 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:34 GMT Message-Id: <202509091730.589HUYd9019269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: 18141961df8c - main - loader/efi: remove is_last parameter from find_currdev List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 18141961df8ce00d44da83989d06a789e8415491 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=18141961df8ce00d44da83989d06a789e8415491 commit 18141961df8ce00d44da83989d06a789e8415491 Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:55 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:55 +0000 loader/efi: remove is_last parameter from find_currdev It is unused. Reviewed by: tsoome Differential Revision: https://reviews.freebsd.org/D52434 --- stand/efi/loader/main.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index d05e11f8eadd..208b8b424e60 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -505,8 +505,7 @@ match_boot_info(char *boot_info, size_t bisz) * a drop to the OK boot loader prompt is possible. */ static int -find_currdev(bool do_bootmgr, bool is_last, - char *boot_info, size_t boot_info_sz) +find_currdev(bool do_bootmgr, char *boot_info, size_t boot_info_sz) { pdinfo_t *dp, *pp; EFI_DEVICE_PATH *devpath, *copy; @@ -1202,7 +1201,7 @@ EFI_STATUS main(int argc, CHAR16 *argv[]) { int howto, i, uhowto; - bool has_kbd, is_last; + bool has_kbd; char *s; EFI_DEVICE_PATH *imgpath; CHAR16 *text; @@ -1405,7 +1404,6 @@ main(int argc, CHAR16 *argv[]) printf(" %04x%s", boot_order[i], boot_order[i] == boot_current ? "[*]" : ""); printf("\n"); - is_last = boot_order[(sz / sizeof(boot_order[0])) - 1] == boot_current; } else if (uefi_boot_mgr) { /* * u-boot doesn't set BootOrder, but otherwise participates in the @@ -1413,7 +1411,6 @@ main(int argc, CHAR16 *argv[]) * a failure. */ boot_order[0] = boot_current; - is_last = true; } } @@ -1462,7 +1459,7 @@ main(int argc, CHAR16 *argv[]) * the boot protocol and also allow an escape hatch for users wishing * to try something different. */ - if (find_currdev(uefi_boot_mgr, is_last, boot_info, bisz) != 0) + if (find_currdev(uefi_boot_mgr, boot_info, bisz) != 0) if (uefi_boot_mgr && !interactive_interrupt("Failed to find bootable partition")) return (EFI_NOT_FOUND); From nobody Tue Sep 9 17:30:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrSX2JN3z67CWq; Tue, 09 Sep 2025 17:30:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrSX0Lw8z3XhX; Tue, 09 Sep 2025 17:30:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wkEa5Fl4rScRfJrTaO5XYvtGY2N7tGFXStqHTXp89d4=; b=mee3hJxJf+V+xwoXytY2QvzyQgYaARchxTtxZx2w7kJIz6gsu0d8mbF/mffczsDAVJScIS JaxdYjyrXXkWq5+RLqaXyAF2yFuUvi4DywTKpJnqbzZXVCTV8hybUKp49WlyQt2T6uWyoM QoZyQZIMoFu8Df/Mxm+USIZh4jDLDufsegc7nF9u3ytixezXT6yhPj1bNJwE3uTq7HEhAl kPBk3RYunNp5/wg4jWsp/KCPI7EI+vZWVvMwFlvi08ZcBlBdpgY8XZs03rHlLi03BFdZQZ W94VzpOIiBRmI4bYH3CqNL+y3fnscDPSZT2ZiFUcN92io4ujkBV4xL2Qem9/Ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wkEa5Fl4rScRfJrTaO5XYvtGY2N7tGFXStqHTXp89d4=; b=Y6EJlOv6BkcGBHvEAmZInrBVqH2W37iri+I81I/iQ7MKZD0oZNC41geKxdC/u4cCzw9YWR a+p+4IW75LXlshKUTq1lKR2POyyR6sPxJ++k2NvemTKsuv6LWOK5EDPNyVX0NcrUnQ1sVs DAQ2GBqYTtlcPyEj+msuI+zCp+eJQzK2KC3ElrkRIqyBxoP7IwXAHqI0psLImq4AKVkvkj SOE0GxtF05bSdXh8o4wdA1If+oUo7fF88IaSof6sMtviCLpEZh6oI8iZCWokvxP3df+J+o RbEu0DKcTqum/uibS7f3ArHPHKqmfUPdNzrC1vocBl99YwlUdiU2kLXUFMiQoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439036; a=rsa-sha256; cv=none; b=oDNBvEuo685upVpnzUUsYyX4uB/QPLtzDEnG6+5BCAWu8jEL/aqD/TrtORU4llKiCFzmxf Vjt9aRD/IbM3xOfT4wssk9BBCF07x2zPGrNDmrzVKQCvFx42NGjiu5IKXRLWQS0xaNTrep +Od9PvtvR+1rGVzyZkmLCEcZVcgYAZ1/tTjRmWKtuY25my0IUvlajsol8jijNq7PWGTtA5 24QFKGLeRyHqU3IWlZ8P+JJZSx/rJzGbSzqkcKez8fMs+RmJe0oK8zeq6zyxW4WYTnhght G62r2uCALZv6Pj7EmXH07faHtT8ntKUGgQZWxuSD+xex1c7koVn+HA8iyeLr7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrSW6vhnzmC6; Tue, 09 Sep 2025 17:30: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 589HUZSn019307; Tue, 9 Sep 2025 17:30:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589HUZCG019304; Tue, 9 Sep 2025 17:30:35 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:30:35 GMT Message-Id: <202509091730.589HUZCG019304@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: 101a35e84da3 - main - efi: translate errno to EFI status on exit List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 101a35e84da311000b9ee12341bbd80bc4c7a721 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=101a35e84da311000b9ee12341bbd80bc4c7a721 commit 101a35e84da311000b9ee12341bbd80bc4c7a721 Author: Ahmad Khalifa AuthorDate: 2025-09-09 17:19:59 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-09 17:19:59 +0000 efi: translate errno to EFI status on exit Translate the given errno to an efi status instead of always exiting with EFI_LOAD_ERROR. --- stand/efi/boot1/boot1.c | 4 ++-- stand/efi/loader/efi_main.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/stand/efi/boot1/boot1.c b/stand/efi/boot1/boot1.c index b93c6b425160..c906b430c0d6 100644 --- a/stand/efi/boot1/boot1.c +++ b/stand/efi/boot1/boot1.c @@ -299,9 +299,9 @@ efi_exit(EFI_STATUS s) } void -exit(int error __unused) +exit(int error) { - efi_exit(EFI_LOAD_ERROR); + efi_exit(errno_to_efi_status(error)); } /* diff --git a/stand/efi/loader/efi_main.c b/stand/efi/loader/efi_main.c index 2a5120dc89d7..6eea6f25c152 100644 --- a/stand/efi/loader/efi_main.c +++ b/stand/efi/loader/efi_main.c @@ -49,7 +49,7 @@ void exit(int status) { - efi_exit(EFI_LOAD_ERROR); + efi_exit(errno_to_efi_status(status)); } static CHAR16 * From nobody Tue Sep 9 17:40:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLrgR4VV1z67DL3; Tue, 09 Sep 2025 17:40:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLrgR3vFxz3cc6; Tue, 09 Sep 2025 17:40:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EwkqKYJcwCknBzdcDRQFdD2oaM2+EjFMIhaNT2mHgQE=; b=g+lNiBrVvLl/ljxHCElizY/vz70JuebFwsGglPM4ztAbWES0ZFZlMiSzmKmFhVd7L0m54h 859750/Fwydne6JU6GP3/mAijK7rbk/Yny4NJ/toG77vanOGQeuYF50SdXdUUlOHSa+qoU Thv0dlW6r1AzBH1Bb4vujPbONMagI6ROqQqe+98KhPPodBvEnBChB6cg5GEXj6ewdxVk0j IPlz1ofEK157qwPT4KJJqETH5kEYTHAlAXpxPfOnVWAlIyjJe68dD2YZNug1x6gV1IRKcZ dkrQ/P+/xXIrEzZCmrAEBcB0LOg5D5S9pdDQirCSIFif6S/PJix/7VNMEE5/rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757439603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EwkqKYJcwCknBzdcDRQFdD2oaM2+EjFMIhaNT2mHgQE=; b=lQ7JAHC4Qr1NqJWW35bN/O4Mg1U1F0Ycy4Zhl6JvpIkXlCXQmmPcfFSvdQavl1KLIeRhai ommTvVb35vX8rreCAzDLQK0bfLEISePi+iNPcc4h3gQagQF3BhWEJqoh21mQPQkGsRfXkZ ffMNQL4lD2bKzg8CvUWQa65cbATNY65PzTD4TdXiFNXxhMOa/ZlBeGPDRXi8lsLNB7ZZIv z4aP6b+WPpE0cK3EJeeMsJ4c3M9G7or/BOhUrx1h86tE2iEKXyJGKvzx+OMagCbphPUuM2 Yyb1ddNjl8AULHohlBXsaArGyiZY7MDdXpxfr8fBS8LGKTe2kmKI7KLGXYHzYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757439603; a=rsa-sha256; cv=none; b=ior619u9zm6mzIq/9i5qILSBJf9e0FQjKKLvGaObsTD4VzpfM8X5EdqESEBv4oh364ekR9 hxEt55JFxoEUcZT7bsejUpcl/+kRvofXAJkWZ1PeSlr/L4vAhhrxbQQyqo2e001aYLnbIM lOYz+92lJTLYeLU6J3VeOxPeGg0v80GY+jSCa4M90H8Qms/co2lJA5MuXGzEfINfhyM+yM KEz+gUtGKJjxYfbIlg1n91RPa4rLXOGvyIoAeEf28vjdFJQfAyJrCOJWAxof3Y7mwmQ3ZQ pKl1biExr4sjmrZYEnSh9d/h7YaFSxj/tRjIhkSylhTIlWbSJsQc2IfQ/V7Enw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLrgR32qRzmRG; Tue, 09 Sep 2025 17:40: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 589He32V031522; Tue, 9 Sep 2025 17:40:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589He3CW031517; Tue, 9 Sep 2025 17:40:03 GMT (envelope-from git) Date: Tue, 9 Sep 2025 17:40:03 GMT Message-Id: <202509091740.589He3CW031517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kevin Bowling Subject: git: 46347b361975 - main - ixgbe: Fix incomplete speed coverage in link status logging List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 46347b3619757e3d683a87ca03efaf2ae242335f Auto-Submitted: auto-generated The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=46347b3619757e3d683a87ca03efaf2ae242335f commit 46347b3619757e3d683a87ca03efaf2ae242335f Author: Yogesh Bhosale AuthorDate: 2025-09-09 17:01:04 +0000 Commit: Kevin Bowling CommitDate: 2025-09-09 17:39:10 +0000 ixgbe: Fix incomplete speed coverage in link status logging Originally ixgbe_if_update_admin_status() only handled 1G and 10G speeds, causing any other speeds to display as "1 Gbps" in link status logs. This issue is fixed by adding link speed to string conversion logic through the introduction of a helper function, ixgbe_link_speed_to_str(), which corrects the misleading logs to reflect accurate link speeds. Signed-off-by: Yogesh Bhosale yogesh.bhosale@intel.com PR: 288960 Reported by: Mike Belanger - QNX MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D52442 --- sys/dev/ixgbe/if_ix.c | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 73c0fd1ab16f..e1e05e008e8d 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -184,6 +184,7 @@ static int ixgbe_if_rx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); static void ixgbe_if_queues_free(if_ctx_t); static void ixgbe_if_timer(if_ctx_t, uint16_t); +static const char *ixgbe_link_speed_to_str(u32 link_speed); static void ixgbe_if_update_admin_status(if_ctx_t); static void ixgbe_if_vlan_register(if_ctx_t, u16); static void ixgbe_if_vlan_unregister(if_ctx_t, u16); @@ -4026,6 +4027,33 @@ ixgbe_if_stop(if_ctx_t ctx) return; } /* ixgbe_if_stop */ +/************************************************************************ + * ixgbe_link_speed_to_str - Convert link speed to string + * + * Helper function to convert link speed constants to human-readable + * string representations in Gbps. + ************************************************************************/ +static const char * +ixgbe_link_speed_to_str(u32 link_speed) +{ + switch (link_speed) { + case IXGBE_LINK_SPEED_10GB_FULL: + return "10 Gbps"; + case IXGBE_LINK_SPEED_5GB_FULL: + return "5 Gbps"; + case IXGBE_LINK_SPEED_2_5GB_FULL: + return "2.5 Gbps"; + case IXGBE_LINK_SPEED_1GB_FULL: + return "1 Gbps"; + case IXGBE_LINK_SPEED_100_FULL: + return "100 Mbps"; + case IXGBE_LINK_SPEED_10_FULL: + return "10 Mbps"; + default: + return "Unknown"; + } +} /* ixgbe_link_speed_to_str */ + /************************************************************************ * ixgbe_update_link_status - Update OS on link state * @@ -4042,9 +4070,9 @@ ixgbe_if_update_admin_status(if_ctx_t ctx) if (sc->link_up) { if (sc->link_active == false) { if (bootverbose) - device_printf(dev, "Link is up %d Gbps %s \n", - ((sc->link_speed == 128) ? 10 : 1), - "Full Duplex"); + device_printf(dev, + "Link is up %s Full Duplex\n", + ixgbe_link_speed_to_str(sc->link_speed)); sc->link_active = true; /* Update any Flow Control changes */ ixgbe_fc_enable(&sc->hw); From nobody Tue Sep 9 18:18:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLsWH1NHNz67GRw; Tue, 09 Sep 2025 18:18:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLsWG6Z2fz3k1h; Tue, 09 Sep 2025 18:18:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757441882; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cnpb1sURnShx2DS/jF74nxRQAofMfG/eb4L0ccWZKD0=; b=YV1TXrR+y5Bb5A5ayrKgXD32KWr/gliH22rN7c3Js9nH9GsYG/8h0ByHywnA9cHlB1UF4f lauqgImk060iC+hKqtXjdNdiLtMrQZIL+pOc2E0bihK2yS3dtIJ9p/SQtRU00IuwZEJ48v LgNfF6YeWsUnMm7YSV2IXafO1mnYlpEF6WZb1+ZTPHEr7SwdLbjpweyxu3lR3igMnvLMlj R7rSkn1QhuZnxgZ6SJJ4C/0xd+dd1QF5D55+qCPzI5N+vevN2WggohRAFjnr7y2DfjEZ4D 6UM57/dMV7FxVnEM9Etswus12itY63rK4l84EwIBTdEnfTEvNu8Z1+Lx6CBHbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757441882; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cnpb1sURnShx2DS/jF74nxRQAofMfG/eb4L0ccWZKD0=; b=v7/0Ppt+o26K1aHO+HsVPRHz6k6VIjuuTXlu5g5ZcI3vshXwySBTuzN2qJopKao5ZBAPq2 W4UWZpPj3QRgUIBC/ttSlJ1Q3tBPcgdvrd+7t5oYYMw+SEHVSAwRuFPtvZry2IjZR11CCH tiqEN5qG91uWmAH9doiNu3UZpd/wIdwGcBVec9wDZ9CRbpm74cF8+VPtM8rEHj3CuQdcXT UR0IJA/pyLod+ZsbF+tm95RuvnnsteUridHYMNG72fgFtldUgZZa7DTkFMuBESW8Boyq+U cqzQ1jD5O4hQVux1CMAZBH5TQlMXtJxxhpjuS437FEJ1tXlzCH59010Et/KYYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757441882; a=rsa-sha256; cv=none; b=NayBZZVHYr0elGFnolWLPkGdWrkSLyHPGPGdavWe/P2UWQqsNmjol91G1FtpbRnYZ6L8g5 RN/H/KbvxlSk75zgaCbEOqZF3KpxV7UROMRj4nHiqjWcbRaMpbLcUFxytzL1gRTkAh3Si7 9XkbgmRV37PK1I9z/Jewi+oDzr91MaJOpBIr4j0fRESpItIHxS0Qr35ywC8gRQXHky74Pu VI41Ty1cl+TZ+lki+F8PsY52b7BbsMDLQe3wSPQqbupyM8joDHwida6bad32IF2nCru4M1 sUtnEgt4PMrH7/i7K5XeB9OvfkGdnZaIMNWH0e+q78sH4d8IuEOY9kFGhDqQ/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLsWG5zQyznQp; Tue, 09 Sep 2025 18:18: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 589II23h005928; Tue, 9 Sep 2025 18:18:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589II2D2005924; Tue, 9 Sep 2025 18:18:02 GMT (envelope-from git) Date: Tue, 9 Sep 2025 18:18:02 GMT Message-Id: <202509091818.589II2D2005924@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: 16f600dc30b7 - main - jaildesc: replace EBADF with EINVAL List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 16f600dc30b7bb82429660e540da802a1e3f7449 Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=16f600dc30b7bb82429660e540da802a1e3f7449 commit 16f600dc30b7bb82429660e540da802a1e3f7449 Author: Jamie Gritton AuthorDate: 2025-09-09 18:13:11 +0000 Commit: Jamie Gritton CommitDate: 2025-09-09 18:13:11 +0000 jaildesc: replace EBADF with EINVAL Following fd9e09cb, EBADF is not the suitable error code for a non- jail descriptor passed to jail_set, jail_get, jail_attach_fd, and jail_remove_fd. Reported by: kib --- lib/libsys/jail.2 | 26 ++++++-------------------- sys/kern/kern_jaildesc.c | 2 +- 2 files changed, 7 insertions(+), 21 deletions(-) diff --git a/lib/libsys/jail.2 b/lib/libsys/jail.2 index a0f47cc61cb3..a2640071d1f0 100644 --- a/lib/libsys/jail.2 +++ b/lib/libsys/jail.2 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 4, 2025 +.Dd September 9, 2025 .Dt JAIL 2 .Os .Sh NAME @@ -402,15 +402,6 @@ The system call will fail if: .Bl -tag -width Er -.It Bq Er EBADF -The -.Va desc -parameter does not refer to a valid jail descriptor, -and either the -.Dv JAIL_USE_DESC -or -.Dv JAIL_AT_DESC -flag was set. .It Bq Er EACCES Write permission is denied on the jail descriptor in the .Va desc @@ -514,15 +505,6 @@ The system call will fail if: .Bl -tag -width Er -.It Bq Er EBADF -The -.Va desc -parameter does not refer to a valid jail descriptor, -and either the -.Dv JAIL_USE_DESC -or -.Dv JAIL_AT_DESC -flag was set. .It Bq Er EACCES Read permission is denied on the jail descriptor in the .Va desc @@ -564,6 +546,10 @@ parameter has been removed .It Bq Er EINVAL A supplied parameter is the wrong size. .It Bq Er EINVAL +A supplied parameter is out of range. +.It Bq Er EINVAL +A supplied string parameter is not null-terminated. +.It Bq Er EINVAL A supplied parameter name does not match any known parameters. .It Bq Er EMFILE A jail descriptor could not be created for the @@ -607,7 +593,7 @@ and system calls will fail if: .Bl -tag -width Er -.It Bq Er EBADF +.It Bq Er EINVAL The .Fa fd argument is not a valid jail descriptor. diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index fec9b5719b2e..b4ffad4c88e8 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -87,7 +87,7 @@ jaildesc_find(struct thread *td, int fd, struct jaildesc **jdp, if (error != 0) return (error); if (fp->f_type != DTYPE_JAILDESC) { - error = EBADF; + error = EINVAL; goto out; } jd = fp->f_data; From nobody Tue Sep 9 18:42:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLt3x2rcPz67HPg for ; Tue, 09 Sep 2025 18:42:53 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (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 4cLt3x0pZ2z3rpx for ; Tue, 09 Sep 2025 18:42:53 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3e537dc30c7so4330529f8f.3 for ; Tue, 09 Sep 2025 11:42:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757443371; x=1758048171; 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=NWNxiKDD+u2sDYYnYMXWh5MZjooIJ0dCnpUu5XS3lI4=; b=HM54BcFB3Vj+ENhfKauqOV42T5IvLiK8LtHe4qBDisLinnxTy1364QnnW9gl6S6Iws xEnWc7x6d4OASMvGoPd66337wrZV1L6vx8bEljShLZcut2O2o7rXbWSTL7uxiYKx54JS 5615Iva7xEa5Edo+pChFNoZHf//8sfdizSZDg5TFrpnvNO/DITF7xv9BRNN8CG8sebPS 1clMT7BXz78aabMX2jgF5SFtiHuw4kC1Kfoo0q81u+KQerybsgG42138wRMYDVKxZEJ0 yCKR8QT8jCrL1MEdxhr0StexVZj2lF7G8EbL8yWJu9K48xszY/DDLIiZU0ml+rIJXmVS oMfg== X-Forwarded-Encrypted: i=1; AJvYcCWTPIF7EsxiM9dEHXx8B3HRBIFvtjk901M3l3qJo5sa3QN9N7ABziLcOzfjD+BeB6M+DLXc0ZIwrR+AG0XUXX5/VVzDeA==@freebsd.org X-Gm-Message-State: AOJu0YxtjYc1+3tY9iMADkFi2C8Qu7p+bX1PNY8gyz+4kSw6/XJQoBgA nUZTe1xnDQ/gcVKSclYZgSRaoATXCf2Zn1D6ln7aZ59GGpd5x4aRVJ7ztln8KZtTcBYSn3jc2No 2z0Tq X-Gm-Gg: ASbGncs9x3+znnqTDLZqoVvSs76skXtN+sh3dgcpBUjO14n155++3RG+5aXWCtpMPXr yod3wkwORiQMRI6iIQQydvy6LKZwOTS4K3Dpfl8Pq/Tzl2WZ6UNje6NY7BjAwOfddp3D06aIFEb x0LVJ8zuE5mhvkcLEyM1jza18alYkPkEjnWuEdYHsbSx+EUtYVLuV04+0VTBb00c4ubIr4gmwN3 /USf6znLZtpwrrUY9v41EKE30bnXAzknf5sSRNHYdChRx1G7y5Xn0aM1Yf+u4aHCwA4mnv8Sj2h ZV61z3FiXwVrwYdU0KKCeZtR0FvqPZSY/eLjJAcqO0fmFjBxRel4+XJh2n+bd/JRNTUMygO8lvs a0PM0Ny8nHCWLexim6w4GitYt90Kc/nfUepZMubK2lfQv8huYfJfVBc3GuFs= X-Google-Smtp-Source: AGHT+IEuCIrfNBZ5u1drP+TP9raKgLw8YjL5shwVpsk3vQaxWCuL0cinV7zefwZpbNEzLykXihQ4jQ== X-Received: by 2002:a05:6000:2504:b0:3d2:2989:224 with SMTP id ffacd0b85a97d-3e63736e27fmr9850088f8f.7.1757443371175; Tue, 09 Sep 2025 11:42:51 -0700 (PDT) Received: from smtpclient.apple (nat-184-7.net.cam.ac.uk. [131.111.184.7]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3e75224d04dsm3587051f8f.55.2025.09.09.11.42.50 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Sep 2025 11:42:50 -0700 (PDT) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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.700.81\)) Subject: Re: git: 16f600dc30b7 - main - jaildesc: replace EBADF with EINVAL From: Jessica Clarke In-Reply-To: <202509091818.589II2D2005924@gitrepo.freebsd.org> Date: Tue, 9 Sep 2025 19:42:40 +0100 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <9B159FF1-8D1D-4F1D-9CED-977EB0834403@freebsd.org> References: <202509091818.589II2D2005924@gitrepo.freebsd.org> To: Jamie Gritton X-Mailer: Apple Mail (2.3826.700.81) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cLt3x0pZ2z3rpx On 9 Sep 2025, at 19:18, Jamie Gritton wrote: >=20 > The branch main has been updated by jamie: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D16f600dc30b7bb82429660e540da802a= 1e3f7449 >=20 > commit 16f600dc30b7bb82429660e540da802a1e3f7449 > Author: Jamie Gritton > AuthorDate: 2025-09-09 18:13:11 +0000 > Commit: Jamie Gritton > CommitDate: 2025-09-09 18:13:11 +0000 >=20 > jaildesc: replace EBADF with EINVAL >=20 > Following fd9e09cb, EBADF is not the suitable error code for a non- > jail descriptor passed to jail_set, jail_get, jail_attach_fd, and > jail_remove_fd. >=20 > Reported by: kib Will you be MFC=E2=80=99ing this fix, the error checking one and any = future fixes to the new jaildesc code? The original jaildesc commit made it in in time for stable/15 so will be part of 15.0, so either important fixes need to be MFC=E2=80=99ed to ensure we release something without = bugs or it should be reverted in stable/15 and the whole series later MFC=E2=80=99= ed once deemed ready. Especially given the discussion about file object ownership I=E2=80=99m a bit concerned that we have something in = stable/15 that has a design, rather than implementation, aspect that might be wrong, and we really don=E2=80=99t want to be shipping a broken syscall ABI if = so. Jessica From nobody Tue Sep 9 18:52:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLtGX4Rcnz67J7N; Tue, 09 Sep 2025 18:52:04 +0000 (UTC) (envelope-from jamie@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLtGX3v7kz3sFb; Tue, 09 Sep 2025 18:52:04 +0000 (UTC) (envelope-from jamie@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757443924; 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=sgcIsn2VeRh8nVGs2fRyCacgVIl3DxGoXlJtUxTtN3Y=; b=Ey8fskVj7nElD6uVCTUPb3BQzmLGy376a/YhiHprTGYf5GR6uTc0fKi+nnDrM+E6U3XHQI JRRVGiXKGepIEbaUgWs0S8DJPNgge11egHirvdpAwJ02QRL7EV0HxGJxH6v4fwc7TttYhg PIQN5lupA/7j7DitqQgc2jeV46H+BJFyqSYKoIwG6LTlXj8hgevfxfAWqMa7aLnCggXOZY 5f5rPbNePYdzBS2UllwccJRGpFScanszXos2GF5gPvzQ0o5CcKThT1hDJVgPzMAnI67iME o63F0qhyDX8Fhqs7sGbVOE8dDgcq2QPagl7Qu5QoODgsERU8hWnxi49wtMH8lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757443924; 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=sgcIsn2VeRh8nVGs2fRyCacgVIl3DxGoXlJtUxTtN3Y=; b=Q00iB2XxI6bDDv2L/grmN312GTylVPTyPKuTe9bAZ+HjkOl59cFmSVzZ1au46OM+ySDWsH 9d25dD87ttdRYiB/GaQnDCeJc5aCKw3dR50SF3EAMdSX5Y0v56dCOhRdK6nVKKkDqA4ZHk FNDfSTonHRn+395RSCO9B47Z34tkioe71pQ8TUz5r1E4YZ41LVldfxsscBlL5YqhyiEod9 dNhPkINas9iVmthf/rggehrODC3mA4DzsfYRRkrusBaDOaBA6mkhLktoTWf5YATDviYtHd lIefEwPN6oFNXXZLVGi+P2oTitbnDWoVPd1iwr3HUYl6adBL1PS92ruJJ5VJPw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757443924; a=rsa-sha256; cv=none; b=TIRjAcXHJN/eerzxskU4dKSwvo+RzQHEwjRCa3WjM55DL0PX4rXZoVFBUTvc7PcpdRRN77 MnB5+uPuS6VX0CQ8weq7xW6lDUUAvA6bR6OuNeXPU6ydfyhZdpjgoR3kjUsHC0kHfqJcUt ZKIFwIUdwymxznljgfeOZ+/9x+rW1arBx7puq4P1fX5PNr7tMBLmEj8jGS2/3NWpoUbZSr pKw0qY1Lb3NoRhPNlhUbfm/XQw1DhW+vP9PM5xJD1sfov1tu6GA3y1rYOFoNVMQptAJVFV OINyJ07o9/q3DbMvWRwqth1I4wJD7QcBcdN67cAmWomWb/T7FpWDMRHQzm8V6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from m2.gritton.org (gritton.org [67.43.236.212]) (using TLSv1.3 with cipher TLS_AES_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: jamie) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cLtGX3GQdz21h; Tue, 09 Sep 2025 18:52:04 +0000 (UTC) (envelope-from jamie@freebsd.org) Received: from gritton.org (localgritton [127.0.0.212]) by m2.gritton.org (Postfix) with ESMTPSA id 2BC5379F8C; Tue, 9 Sep 2025 11:52:04 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Date: Tue, 09 Sep 2025 11:52:04 -0700 From: James Gritton To: Jessica Clarke Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 16f600dc30b7 - main - jaildesc: replace EBADF with EINVAL In-Reply-To: <9B159FF1-8D1D-4F1D-9CED-977EB0834403@freebsd.org> References: <202509091818.589II2D2005924@gitrepo.freebsd.org> <9B159FF1-8D1D-4F1D-9CED-977EB0834403@freebsd.org> Message-ID: X-Sender: jamie@freebsd.org Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 2025-09-09 11:42, Jessica Clarke wrote: > On 9 Sep 2025, at 19:18, Jamie Gritton wrote: >> >> The branch main has been updated by jamie: >> >> URL: >> https://cgit.FreeBSD.org/src/commit/?id=16f600dc30b7bb82429660e540da802a1e3f7449 >> >> commit 16f600dc30b7bb82429660e540da802a1e3f7449 >> Author: Jamie Gritton >> AuthorDate: 2025-09-09 18:13:11 +0000 >> Commit: Jamie Gritton >> CommitDate: 2025-09-09 18:13:11 +0000 >> >> jaildesc: replace EBADF with EINVAL >> >> Following fd9e09cb, EBADF is not the suitable error code for a non- >> jail descriptor passed to jail_set, jail_get, jail_attach_fd, and >> jail_remove_fd. >> >> Reported by: kib > > Will you be MFC’ing this fix, the error checking one and any future > fixes to the new jaildesc code? The original jaildesc commit made it in > in time for stable/15 so will be part of 15.0, so either important > fixes need to be MFC’ed to ensure we release something without bugs or > it should be reverted in stable/15 and the whole series later MFC’ed > once deemed ready. Especially given the discussion about file object > ownership I’m a bit concerned that we have something in stable/15 that > has a design, rather than implementation, aspect that might be wrong, > and we really don’t want to be shipping a broken syscall ABI if so. > > Jessica Yes, I just forgot to set the MFC tag in the commit. This and some following commits are all slated for MFC. This will include the file permission API concerns, and the missing jail descriptor kevent support. Those are coming soon (next few days) but I'm pushing the low-hanging fruit out right now. - Jamie From nobody Tue Sep 9 18:52:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLtHJ0xn2z67HxS; Tue, 09 Sep 2025 18:52:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLtHJ0DdQz3sd1; Tue, 09 Sep 2025 18:52:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757443964; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UCjR3wOcN6XMEIWTEyUbXxOwNp2+y4p2ZAY8SwyzdoU=; b=YfU3fxTC068JFmQQCKGVbmYO+ghpsNCtcdXuhUyhK84d4+RshrHggUgz4njBBmp3XYi0fA WJhX/o8klfuF8r1btMUsrOywGUYrKVQeRXV1/XiM0b4lxNfZWWWL8vsi1qpIjtoInVMk0Q C57YqiNxvzQo0s3FIyaAG2UWEX/jaKhT6VqrvdGuuEmhQPYc/0ROc8YxtYyI9p7i5ZnX77 H1GIzD2m5ZPHL0VkTDMhljXTOJnGp3B1r/aWl14vLX5I3IOuGZgEuTFygyulxej0duSIru kfy6IUaNsGhTE2AbC0NsJJcjf4Ar86qhRFzIHF9CPRIqkU94nwMK1KDOzPLGRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757443964; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UCjR3wOcN6XMEIWTEyUbXxOwNp2+y4p2ZAY8SwyzdoU=; b=DXnxX4iWPAautPN9/51PZXbG00cqSJxbdIQdOGJW9aN1tjG9+/V4pkVmiQsIKrr+eA084M GGUbICoDriRV+v3tGxlJun1uo1HqU8qBYXKfd5MzG8HzOcbsVmadVhyH7nHg/gjOpIYwKF sVE+RawpsqBrxP3g8zKgYk5I+oxoNAXc7REyqCTGuIGiHEwjGaRfouCaDM3MNSzS6bnvPN UYl49Bv3R2HZmvXD8SnkqM4AAg5fyaRUn19iTpYsxfuMG6KV9YNK0XhbzL6OiAIsX2ZvVs hwtXxVXgfMG9amRjq0/YUm2Pih5uT81BskdeCphjFWpaUdh/p2tFDlEbn/P4Fg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757443964; a=rsa-sha256; cv=none; b=KCkNLFe6BGY5lH4G+RDeB6SzgbAl6A8+vSS5S7amySzU11fflh2RcYwv6s1/ecdcKNwGsL iZaqNQrsLeT0eoCFF8nY2jGzJz4sq2EazeeCio5Nsly2KSPcdXEhhhuTxgSV6d/nPVgv0O eCZoNdXv3ZI01+ldK8b6dDsbD3aCx+KkmGW1ze9eJMWY2BdALC0/leEmFtriQxOQ9qBs2E zL2xsqej5bkbsVBZHz0ZTwrhyiAN9KXFY0SPYeudNAYLglXEdqb3WQULrHiCK3kuHIBxB2 D67ndZ6GJx/LUj0uoaQn+rD3N2HJ3RitBKhc4VzkARkeyvrpY9OuJy9AmmjeLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLtHH6x26zpK2; Tue, 09 Sep 2025 18:52: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 589IqhFf078401; Tue, 9 Sep 2025 18:52:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589IqhuE078398; Tue, 9 Sep 2025 18:52:43 GMT (envelope-from git) Date: Tue, 9 Sep 2025 18:52:43 GMT Message-Id: <202509091852.589IqhuE078398@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: d8d5324ef533 - main - jaildesc: fix typo and style(9) violations. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8d5324ef5335dd9404db7263be2271610245e10 Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=d8d5324ef5335dd9404db7263be2271610245e10 commit d8d5324ef5335dd9404db7263be2271610245e10 Author: Jamie Gritton AuthorDate: 2025-09-09 18:46:45 +0000 Commit: Jamie Gritton CommitDate: 2025-09-09 18:46:45 +0000 jaildesc: fix typo and style(9) violations. Reported by: kib MFC after: 3 days --- lib/libjail/jail.c | 16 ++++++++-------- sys/kern/kern_jail.c | 36 ++++++++++++++++++------------------ sys/kern/kern_jaildesc.c | 26 +++++++++++++------------- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/lib/libjail/jail.c b/lib/libjail/jail.c index 931391055919..f761bc6993e5 100644 --- a/lib/libjail/jail.c +++ b/lib/libjail/jail.c @@ -95,8 +95,8 @@ jail_setv(int flags, ...) goto error; if (jailparam_import(jp + njp, value) < 0) goto error; - if (!strcmp(name, "desc") - && (flags & (JAIL_GET_DESC | JAIL_OWN_DESC))) { + if (!strcmp(name, "desc") && + (flags & (JAIL_GET_DESC | JAIL_OWN_DESC))) { jp_desc = jp + njp; desc_value = value; } @@ -145,8 +145,8 @@ jail_getv(int flags, ...) va_end(tap); goto error; } - if (!strcmp(jp[njp].jp_name, "desc") - && (flags & (JAIL_USE_DESC | JAIL_AT_DESC))) { + if (!strcmp(jp[njp].jp_name, "desc") && + (flags & (JAIL_USE_DESC | JAIL_AT_DESC))) { jp_desc = jp + njp; desc_value = value; } else if (!strcmp(jp[njp].jp_name, "lastjid")) { @@ -181,8 +181,8 @@ jail_getv(int flags, ...) } if (jailparam_import(jp_key, key_value) < 0) goto error; - if (jp_desc != NULL && jp_desc != jp_key - && jailparam_import(jp_desc, desc_value) < 0) + if (jp_desc != NULL && jp_desc != jp_key && + jailparam_import(jp_desc, desc_value) < 0) goto error; /* Get the jail and export the parameters. */ jid = jailparam_get(jp, njp, flags); @@ -604,8 +604,8 @@ jailparam_get(struct jailparam *jp, unsigned njp, int flags) jp_desc = jp_lastjid = jp_jid = jp_name = NULL; arrays = 0; for (ai = j = 0; j < njp; j++) { - if (!strcmp(jp[j].jp_name, "desc") - && (flags & (JAIL_USE_DESC | JAIL_AT_DESC))) + if (!strcmp(jp[j].jp_name, "desc") && + (flags & (JAIL_USE_DESC | JAIL_AT_DESC))) jp_desc = jp + j; else if (!strcmp(jp[j].jp_name, "lastjid")) jp_lastjid = jp + j; diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index 5a1fbe23ddeb..51a8b5cc0465 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -1033,13 +1033,13 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) char numbuf[12]; mypr = td->td_ucred->cr_prison; - if (((flags & (JAIL_CREATE | JAIL_AT_DESC)) == JAIL_CREATE) - && mypr->pr_childmax == 0) + if (((flags & (JAIL_CREATE | JAIL_AT_DESC)) == JAIL_CREATE) && + mypr->pr_childmax == 0) return (EPERM); if (flags & ~JAIL_SET_MASK) return (EINVAL); - if ((flags & (JAIL_USE_DESC | JAIL_AT_DESC)) - == (JAIL_USE_DESC | JAIL_AT_DESC)) + if ((flags & (JAIL_USE_DESC | JAIL_AT_DESC)) == + (JAIL_USE_DESC | JAIL_AT_DESC)) return (EINVAL); prison_hold(mypr); @@ -1098,9 +1098,9 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) error = jaildesc_find(td, jfd_in, &desc_in, &mypr, NULL); if (error != 0) { - vfs_opterror(opts, error == ENOENT - ? "descriptor to dead jail" - : "not a jail descriptor"); + vfs_opterror(opts, error == ENOENT ? + "descriptor to dead jail" : + "not a jail descriptor"); goto done_errmsg; } /* @@ -1518,9 +1518,9 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) /* Get the jail from its descriptor. */ error = jaildesc_find(td, jfd_in, &desc_in, &pr, &jdcred); if (error) { - vfs_opterror(opts, error == ENOENT - ? "descriptor to dead jail" - : "not a jail descriptor"); + vfs_opterror(opts, error == ENOENT ? + "descriptor to dead jail" : + "not a jail descriptor"); goto done_deref; } drflags |= PD_DEREF; @@ -2512,8 +2512,8 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) if (flags & ~JAIL_GET_MASK) return (EINVAL); - if ((flags & (JAIL_USE_DESC | JAIL_AT_DESC)) - == (JAIL_USE_DESC | JAIL_AT_DESC)) + if ((flags & (JAIL_USE_DESC | JAIL_AT_DESC)) == + (JAIL_USE_DESC | JAIL_AT_DESC)) return (EINVAL); /* Get the parameter list. */ @@ -2549,9 +2549,9 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) /* Get the jail from its descriptor. */ error = jaildesc_find(td, jfd_in, &desc_in, &pr, NULL); if (error) { - vfs_opterror(opts, error == ENOENT - ? "descriptor to dead jail" - : "not a jail descriptor"); + vfs_opterror(opts, error == ENOENT ? + "descriptor to dead jail" : + "not a jail descriptor"); goto done; } drflags |= PD_DEREF; @@ -2576,9 +2576,9 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) error = jaildesc_find(td, jfd_in, &desc_in, &mypr, NULL); if (error != 0) { - vfs_opterror(opts, error == ENOENT - ? "descriptor to dead jail" - : "not a jail descriptor"); + vfs_opterror(opts, error == ENOENT ? + "descriptor to dead jail" : + "not a jail descriptor"); goto done; } error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index b4ffad4c88e8..72e2845aaf42 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -137,14 +137,14 @@ jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning) free(jd, M_JAILDESC); return (error); } - finit(fp, priv_check_cred(fp->f_cred, PRIV_JAIL_SET) == 0 - ? FREAD | FWRITE : FREAD, DTYPE_JAILDESC, jd, &jaildesc_ops); + finit(fp, priv_check_cred(fp->f_cred, PRIV_JAIL_SET) == 0 ? + FREAD | FWRITE : FREAD, DTYPE_JAILDESC, jd, &jaildesc_ops); JAILDESC_LOCK_INIT(jd); jd->jd_uid = fp->f_cred->cr_uid; jd->jd_gid = fp->f_cred->cr_gid; - jd->jd_mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH | mode - | (priv_check(td, PRIV_JAIL_SET) == 0 ? S_IWUSR | S_IXUSR : 0) - | (priv_check(td, PRIV_JAIL_ATTACH) == 0 ? S_IXUSR : 0); + jd->jd_mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH | mode | + (priv_check(td, PRIV_JAIL_SET) == 0 ? S_IWUSR | S_IXUSR : 0) | + (priv_check(td, PRIV_JAIL_ATTACH) == 0 ? S_IXUSR : 0); *fpp = fp; return (0); } @@ -167,7 +167,7 @@ jaildesc_set_prison(struct file *fp, struct prison *pr) } /* - * Detach the all jail descriptors from a prison. + * Detach all the jail descriptors from a prison. */ void jaildesc_prison_cleanup(struct prison *pr) @@ -264,13 +264,13 @@ jaildesc_chmod(struct file *fp, mode_t mode, struct ucred *active_cred, int error; /* Reject permissions that the creator doesn't have. */ - if (((mode & (S_IWUSR | S_IWGRP | S_IWOTH)) - && priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) - || ((mode & (S_IXUSR | S_IXGRP | S_IXOTH)) - && priv_check_cred(fp->f_cred, PRIV_JAIL_ATTACH) != 0 - && priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) - || ((mode & S_ISTXT) - && priv_check_cred(fp->f_cred, PRIV_JAIL_REMOVE) != 0)) + if (((mode & (S_IWUSR | S_IWGRP | S_IWOTH)) && + priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) || + ((mode & (S_IXUSR | S_IXGRP | S_IXOTH)) && + priv_check_cred(fp->f_cred, PRIV_JAIL_ATTACH) != 0 && + priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) || + ((mode & S_ISTXT) && + priv_check_cred(fp->f_cred, PRIV_JAIL_REMOVE) != 0)) return (EPERM); if (mode & (S_ISUID | S_ISGID)) return (EINVAL); From nobody Tue Sep 9 18:54:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLtK474Tsz67J3g for ; Tue, 09 Sep 2025 18:54:16 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 4cLtK42KCVz3tbj for ; Tue, 09 Sep 2025 18:54:16 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-45df09c7128so9475945e9.1 for ; Tue, 09 Sep 2025 11:54:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757444054; x=1758048854; 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=E8ecDhIQxGMoOaKlbPKiFmulcr00wJjRC6zeQeLMs4I=; b=XR0VCLVxOtKLoOKjGiDcf+S2PMsU1xEWu50cVM1wV93YddcBswB0ATbiuQ2fPuFvBB F2atBYjbi7htwKhw2qKIKRgkA74d/pNQjSt1sQa2tnKBaGKn8DaQGL7xX//lcN6TtlOi MYUqFsN7jJUfxR9vCaeRpVu39ccTFADOZdzFovzbmM9XlmdQRTGUG2GxQiufyWadTXAb RmK8wA6kK/AKfUYX+RmdIob/0oCgqvqKHFMEYDoYBLNbagae+Y3Or8tZ/Ldnpq4RPsQ2 QJ4d8xkX+nAVRMP7kJXXLKerpfzlg/+cFRsDgdLK67F+0DADaV1rikz5OaJP9EZ0vOK5 D0Sg== X-Forwarded-Encrypted: i=1; AJvYcCXOwbgQ/ukzEtVw3IcljTB32Ew7DBRzBMWrZf/qsG2gew2/PZ6u0ypQjYf4tW/8m4mmNVkQYSLhmwI4Gq58x6Gl126Mnw==@freebsd.org X-Gm-Message-State: AOJu0Ywbzdhh52oJ3tPyp9LS8AaA+KoSPOFSW25L/BKD1Ueyd12eLAEW hNEjgQqAfCzpicI8ZRR9tI5t9zP1onuBBZC8hKBZACy0Qs6Mp73fev3/1ehVzcYTgJQ= X-Gm-Gg: ASbGncuukvBP2mt1Qs0Xn3UqbKyavFTGodiGijAfSWshMSwXg4qFRJTs3bapyM4lSXY yTLLHQrXyFAiommr00jXo/NE71CFGWHG0VOJD0G8EcZ0Xo+ZRy9BHGlPJMzpRoac7KhdBJqaiSU 1qQTnryIPWJ4JUDH20143YpvAF1OniLGQsxSjBh8oW64RoIuBNkNIIAUCZpTVKKh9TiQ/qmwqOU nl8F7zQWEvG4LVc76Y83bIk5WgPq+L6g5yWaAf44RMnXC+siQI2KIzVlIfAL45t2Xmv0FonmxQ/ 6lq0GydQrElrk3/muRqmPwjzbyMQfJ3LzZNFFgU3XhfdCPjjUYQH9QnSJAl9UuBerJ4/NuRbZ1W QWnLZ1njQkiwCUST5RZztOy3GSezE/ixx9Mx2hwuhZ6f2F5NFgXlCoVQ5++4= X-Google-Smtp-Source: AGHT+IHPdB9ts1ARL2zQYX5jFejYCYBdMMIx8YuTHcR5lYhmQZUatySUBSBmi/h9ELEcjN1bQHPWwA== X-Received: by 2002:a05:600c:8b5c:b0:45b:9b9f:88cb with SMTP id 5b1f17b1804b1-45dd5b78584mr148088965e9.16.1757444053827; Tue, 09 Sep 2025 11:54:13 -0700 (PDT) Received: from smtpclient.apple (nat-184-7.net.cam.ac.uk. [131.111.184.7]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3e7521c9a2esm4010877f8f.14.2025.09.09.11.54.13 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Sep 2025 11:54:13 -0700 (PDT) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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.700.81\)) Subject: Re: git: 16f600dc30b7 - main - jaildesc: replace EBADF with EINVAL From: Jessica Clarke In-Reply-To: Date: Tue, 9 Sep 2025 19:54:02 +0100 Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <202509091818.589II2D2005924@gitrepo.freebsd.org> <9B159FF1-8D1D-4F1D-9CED-977EB0834403@freebsd.org> To: James Gritton X-Mailer: Apple Mail (2.3826.700.81) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cLtK42KCVz3tbj On 9 Sep 2025, at 19:52, James Gritton wrote: > On 2025-09-09 11:42, Jessica Clarke wrote: >> On 9 Sep 2025, at 19:18, Jamie Gritton wrote: >>> The branch main has been updated by jamie: >>> URL: = https://cgit.FreeBSD.org/src/commit/?id=3D16f600dc30b7bb82429660e540da802a= 1e3f7449 >>> commit 16f600dc30b7bb82429660e540da802a1e3f7449 >>> Author: Jamie Gritton >>> AuthorDate: 2025-09-09 18:13:11 +0000 >>> Commit: Jamie Gritton >>> CommitDate: 2025-09-09 18:13:11 +0000 >>> jaildesc: replace EBADF with EINVAL >>> Following fd9e09cb, EBADF is not the suitable error code for a = non- >>> jail descriptor passed to jail_set, jail_get, jail_attach_fd, and >>> jail_remove_fd. >>> Reported by: kib >> Will you be MFC=E2=80=99ing this fix, the error checking one and any = future >> fixes to the new jaildesc code? The original jaildesc commit made it = in >> in time for stable/15 so will be part of 15.0, so either important >> fixes need to be MFC=E2=80=99ed to ensure we release something = without bugs or >> it should be reverted in stable/15 and the whole series later = MFC=E2=80=99ed >> once deemed ready. Especially given the discussion about file object >> ownership I=E2=80=99m a bit concerned that we have something in = stable/15 that >> has a design, rather than implementation, aspect that might be wrong, >> and we really don=E2=80=99t want to be shipping a broken syscall ABI = if so. >> Jessica >=20 > Yes, I just forgot to set the MFC tag in the commit. This and some > following commits are all slated for MFC. >=20 > This will include the file permission API concerns, and the missing > jail descriptor kevent support. Those are coming soon (next few days) > but I'm pushing the low-hanging fruit out right now. Great, thank you for the quick confirmation that it was just that, as I hoped, and that the bigger items are being worked on. Jessica From nobody Tue Sep 9 19:08:37 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLtdd6ZB7z67Jss; Tue, 09 Sep 2025 19:08:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLtdd5rs7z42nn; Tue, 09 Sep 2025 19:08:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757444917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TuXqyxSyP0AvAy9TqhlJG4sJSh54fwRrapegM6EMhZc=; b=OYGAUeca0+d9arNhBc2KuW1lwg3uVXghONWzyKTtkNUedkRZY846dfugV+0sLDFasE/Rnf e6QNTowvFDwKPkpEUJDSxU6r5zJh50eEB0S6eX8yCJ4AsK3Jwk3x94Q2fmIxVaiijeThWA /WqP6WOPBOJAj2zuUVBFCmcVXX/p6wClDwYey+O2IBc6qIj+rNQKcx0cDNMdN0RiHDlbbk LdVCTXJo+uCi/IqZ60rhbiu571rI9Z+Z/ozCwtqKSJWywiDx5+Q5kCbW2c6FCa9XQENVnH rPUmz6oP0jS84wTuxDP0MHCy3NHdTWl+mTLX7Hv6JisUATjlmb2X5Zc5PDn8QQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757444917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TuXqyxSyP0AvAy9TqhlJG4sJSh54fwRrapegM6EMhZc=; b=OMpFP84rDOrxprpUgyd0NHL0eh7LRoOAO3INZ2hg+41KgEMAPlB9AU3hWcuY7ld7n04bBw XTlGS2DimLDGTTf/GoR7CxcbYWSX18aIsD0LCgVFRfGY7eT7lFO49djmxqvMA5uoB16rhn B5OM6ySHT+f5xR3fGW5984mKIJRyXQJRmEf9b2SMS3L3hqKj0hWNBE1Qpxbu64iW53sUJA usdKMG0w6IZ4aONV0i/CVUVr4MxCPheCddddBAt+Su4eqti27rRFJW0maxEFpWkDu7PFl0 Jt/LW8ggcklUmjpPawxt+bWUMVyWgTOhsfPSB+tkv1q1L4r2eW7hV2xhTHM55A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757444917; a=rsa-sha256; cv=none; b=kQC50f3rWPV1qrPZP6JqHC+BfIe1j0ONaFSV/xk3xQnsevRs4UEBVpUyRQmkom0pWs3NEH HsLgFC1boeetf13f3Qaa47zPS8ZIuFFH3vKlQjTQWNqHoFD7xikY7W+Ft23jod+v78p9v2 Yky0twZAwIyMHZnd4/n0PwQSdQNG4Axr03rSQU9ANS5ynKX/iQCYK6Y1LciYhIlh2Vb58t 6aFucBfqY2+ULENyHZlPHy71HjnroNpivPW24+8QqSzTjns+2mejA4gUhwYnNwzZ2HlovO VlPPCqdO6dhHgYUSaYaWWXqqh0YbEFmh1X/TQ/sbPl1q0cqfivCKO6DCpB+jpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLtdd5BTszpYm; Tue, 09 Sep 2025 19:08: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 589J8b9h099690; Tue, 9 Sep 2025 19:08:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589J8bpF099687; Tue, 9 Sep 2025 19:08:37 GMT (envelope-from git) Date: Tue, 9 Sep 2025 19:08:37 GMT Message-Id: <202509091908.589J8bpF099687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: cc6e21cb9463 - main - release: Remove a duplicate package listing in oracle.conf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: cc6e21cb946337e2b4584dd2b55209d45805fec2 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=cc6e21cb946337e2b4584dd2b55209d45805fec2 commit cc6e21cb946337e2b4584dd2b55209d45805fec2 Author: Mark Johnston AuthorDate: 2025-09-09 19:06:31 +0000 Commit: Mark Johnston CommitDate: 2025-09-09 19:06:31 +0000 release: Remove a duplicate package listing in oracle.conf sysutils/panicmail is specified again several lines down. MFC after: 1 week Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. --- release/tools/oracle.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/release/tools/oracle.conf b/release/tools/oracle.conf index 8a4206c05623..72c8dd9ded78 100644 --- a/release/tools/oracle.conf +++ b/release/tools/oracle.conf @@ -17,7 +17,6 @@ export VM_EXTRA_PACKAGES=" net/py-netifaces net/py-oauth net/rsync - panicmail security/ca_root_nss security/sudo@default sysutils/firstboot-freebsd-update From nobody Tue Sep 9 19:14:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLtmp2pQ7z67KBp; Tue, 09 Sep 2025 19:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLtmp2KW7z44Hv; Tue, 09 Sep 2025 19:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757445290; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=22YQ75AEaUyOQvmR3sU/t02joAXbzqrpPhJ4g5bEcqY=; b=tJtJVXr5oOOrG+Hxrz4HusVn/xun8wQa8zXNEUoPz0oBDgeGU9FbiA+Zc1k3stDSd4fJXz ufONJR3hryni9y77VJXfP8ktFxlDrCPbNxpAehatAUiPXtBVNB39ts2B7Vrzj1suTvu6uX PCNZGkfkCldESDrTk8kgiYqrEzoFHBM9uMHFO21QxSen/A0E+X151lqH1UpoyupsxuUi6b me7STt7044f3lKN+X3KGR4w0td2LUnf/xJ77TKkvmvDD/No0PcsepYu6VXyfNTzmDfmVxk Pk2qd8bdYePldPnRYVfWwK0DUx5sjp9gqkY8FQag75Voxqj33LmTLbNhk+zXTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757445290; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=22YQ75AEaUyOQvmR3sU/t02joAXbzqrpPhJ4g5bEcqY=; b=PgIGJLyWyU4e+t5qH6ggLjz3wnBhtkR1LgMFR60BLJM2vZb7+RL4fNP6NpEDBPK1sRP1aB w+efx+9gEu12sEzxxlB5/QO9DeGfjoRjUhwK8qdV4E3Ilx+xWj+7rYHagJoKjq61cNv3/V EhjGEt0vD5BNNhb2o9muVYuUkULUCe5HfVoJfbEXbYhTSFabMM1K9eGbDDI10MPEKoEnWx cQ1k9Q9h9aptalhuaWuL7xpdT2IdOpozIeIup1qKEIXYwLg9uzhCIngVv3uIGJWSGsnxnZ eqUvbg1S12klmktrP4eQYasENZofh8/la/uAGYWRADkjYXwsc9qNLUW0xmrVzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757445290; a=rsa-sha256; cv=none; b=SrrhYf1pjWClzbz7y+gLKWBhN9IVcHZgbc/B5hn4SRTdJ8BG15fP5Wq+CTT7bgiQTl+Krd TXXP6Z8+5uer4iJrQ+KPMkeJI/Xv6gzBSVJeI25xP/qj9YXJT/IZyB2FG1IKiVVM8CTTeC NC4EapNaXWFvVs7nJfCl1UBKmGnvrzvrp89/i1sj7Atdkqgtz/LrbrI7P2BCjjp0Idtiya jYjehLShPk2ck6WsRTuAcDtA+McnZk0zy2eiJbNjYOBVwgqYMWdZCpI/fhY624zvT3Wz3z LtRHV82+RnIuEt5ifhZ3oCZuLiZka/kjAyMPMDzZBOxdO1OZqXRrBQCSO1D+2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLtmp1w4bzpm7; Tue, 09 Sep 2025 19:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589JEou8016855; Tue, 9 Sep 2025 19:14:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589JEoTp016852; Tue, 9 Sep 2025 19:14:50 GMT (envelope-from git) Date: Tue, 9 Sep 2025 19:14:50 GMT Message-Id: <202509091914.589JEoTp016852@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Enji Cooper Subject: git: 0adec3d7ec96 - main - freebsd-update: sort options alphabetically List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0adec3d7ec96105c402ff2286e402ad63c845066 Auto-Submitted: auto-generated The branch main has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=0adec3d7ec96105c402ff2286e402ad63c845066 commit 0adec3d7ec96105c402ff2286e402ad63c845066 Author: Enji Cooper AuthorDate: 2025-09-09 19:11:13 +0000 Commit: Enji Cooper CommitDate: 2025-09-09 19:14:37 +0000 freebsd-update: sort options alphabetically This helps future developers when adding additional options handlers in the surrounding blocks. This is effectively a no-op. MFC after: 1 month --- usr.sbin/freebsd-update/freebsd-update.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.sh b/usr.sbin/freebsd-update/freebsd-update.sh index 81040431ea79..b3775382f66c 100644 --- a/usr.sbin/freebsd-update/freebsd-update.sh +++ b/usr.sbin/freebsd-update/freebsd-update.sh @@ -512,14 +512,14 @@ parse_cmdline () { if [ $# -eq 1 ]; then usage; fi; shift config_KeyPrint $1 || usage ;; - -s) - if [ $# -eq 1 ]; then usage; fi; shift - config_ServerName $1 || usage - ;; -r) if [ $# -eq 1 ]; then usage; fi; shift config_TargetRelease $1 || usage ;; + -s) + if [ $# -eq 1 ]; then usage; fi; shift + config_ServerName $1 || usage + ;; -t) if [ $# -eq 1 ]; then usage; fi; shift config_MailTo $1 || usage From nobody Tue Sep 9 21:19:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLxXm4DV0z66Stg; Tue, 09 Sep 2025 21:19:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLxXm1QTfz3LRT; Tue, 09 Sep 2025 21:19:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757452776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0qXo9mXgjCBMbFTq3uu2f4J8ypwOS5AaGMg6GAOnVp8=; b=cjz7DWzdLu7Fzqw/3cRrd/IqmzkbZ6Tbx4FcWsk4uXtP2FpbRAzkFdqqvJZCyBzVTtHHa6 lP0HixpApz9MS75IAeWhpTh1MkO050tZIpiP9TMjo/oZDZngo3ejT/wxHt7aXcWbFoTXtZ d+5BC11tLISA4/3D2EjHpr3LgNpLDOnip58y8udoKAoj4R0sTixAdsDqtyxouFs02B19IY q1wc6WoN1zO44/MUuquAiII4wKEw713imIgTuW/dgitWulS1Z9h0klUWvlsulf/BoZAtGJ PctLBnz9HlMFcZWShh5YDAvdE3fY91ak/yhuGCvgx9JqklRx1C/U1JBSoz2t5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757452776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0qXo9mXgjCBMbFTq3uu2f4J8ypwOS5AaGMg6GAOnVp8=; b=NR2sRMDhn+TeEPuw+nWjDGpK8vW/bidl0Rh1A5FzxH4xWMNqd1s8/yUNiHjsUtRtamWrzz rMxoRPAEq32Vm6n6kNyG0zUU+SluPC4YNnWwWPbrksFOn7Z+TLDgyjNqbAWQbFs0Cz5DXh MR4gSqXrjAbOQZsKuAkBgaQ5pQVdtfdtBe1Ie+neYlTZTXWdrf1KKmBm5pOvHVFHN61ewd 0nac7FP2uVlxFibzcveAIkqj6BWzDKjA2zS/xvx+1wSk0dE6/glmAsxYf+jl8EI+//bsG5 bp9jCLRlzUMdiG0ElMEiNH3eBaKx7ANjFLjm1e3DNfRXcuQmH7u0FxX2nNkgPA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757452776; a=rsa-sha256; cv=none; b=mV+2yvmICcji0gHBFHTvTeFlVwBWmf08YtjC8zY+nFtkqNyfRFvIdN9YFWmBLSvbPd1jFh NK8Wq2t9IZLh7L24rnYhas2RAeq7Vu0oGUnLfxGZETepAIilNF4vPI3b72Y+sahRKv5RHj aMTLKkXnGBBeqorLGZljFo+wd3qndxkSahz95pqQBUvcotvYT+F2O19w2SqwXRNHukDGmu aGIqYSHmOL0pyXPTFEvU7UMVXksTL6eBPQFucjrx6J4O4NuwDGKUiMv2uIIrr/dhB7bW1G idaifA7h1LeRuf+0eJ9xM02jFRM8Wy2ZjB4U89ZO8nZoJ4fkobBB7b+BfPI4Yg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLxXm0gR9zsrl; Tue, 09 Sep 2025 21:19:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589LJZoj043966; Tue, 9 Sep 2025 21:19:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589LJZkO043963; Tue, 9 Sep 2025 21:19:35 GMT (envelope-from git) Date: Tue, 9 Sep 2025 21:19:35 GMT Message-Id: <202509092119.589LJZkO043963@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: f113980fe24f - main - cpucontrol: fix -DDEBUG build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: f113980fe24fbbb95b75321cb916ed9d48771840 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=f113980fe24fbbb95b75321cb916ed9d48771840 commit f113980fe24fbbb95b75321cb916ed9d48771840 Author: Gleb Smirnoff AuthorDate: 2025-09-09 20:32:16 +0000 Commit: Gleb Smirnoff CommitDate: 2025-09-09 21:19:15 +0000 cpucontrol: fix -DDEBUG build --- usr.sbin/cpucontrol/cpucontrol.h | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.sbin/cpucontrol/cpucontrol.h b/usr.sbin/cpucontrol/cpucontrol.h index a4b3a94c19e6..d03c30a6bd6d 100644 --- a/usr.sbin/cpucontrol/cpucontrol.h +++ b/usr.sbin/cpucontrol/cpucontrol.h @@ -43,6 +43,7 @@ typedef void ucode_update_t(const struct ucode_update_params *params); extern int verbosity_level; #ifdef DEBUG +#include # define WARNX(level, ...) \ if ((level) <= verbosity_level) { \ fprintf(stderr, "%s:%d ", __FILE__, __LINE__); \ From nobody Tue Sep 9 21:49:10 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLyBt2Bwxz66V76; Tue, 09 Sep 2025 21:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLyBt1Y8Nz3NpS; Tue, 09 Sep 2025 21:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757454550; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vKUSkTkTwAcTAgUTkPCARjWA/S5aEze0KyeSwxJ4Ruc=; b=ZvEXZ87d1r5i9Y2EBZ5ithfuPg3dwDEeiyGz4LKVjahSKIVJEgCn+z21Y1asVXo0qWmdBa BxEYDe/85AuaKFFMjSC/IZiabl3dj8cDndyrqABY+pbWhTpVvILOjY8w4C6gV7KU39dqUD eDaGHxsYUBTV2Zwqu/uv6VSWHT86iRlZIMacRFn16AKf3mILpC2LdV+3FyjogqchleA9v/ 1oZJ5x9tSllFfJXiWFMg5DakEl3diLPZLYwezgqYVC+wFQlGDRatl2P9cikG0ty9Ovk1Ne Q+fhQQmT1D3cgCJNHUsNYL6Tvc9FrEG812QE0q4TsUnbkBvjPXJjv3lVPL+X0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757454550; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vKUSkTkTwAcTAgUTkPCARjWA/S5aEze0KyeSwxJ4Ruc=; b=kp7eA8AVaYE+ttaUSXF5+6teXJ+uCkm0ElUTwVLpzog0h107Ygo3U9o1FlHWr08NoqxUbY 8VeLzxtf9CVOhTvKomxzR7pLuXI9DOrHtDJryMWuyVbjCcT8HVX/MSDZyoHj99wrZwb9Tl mtxxq3flEEGDP9yPu/+YZnCkuzToLtm8Pq3YEeTCqZqbvSxDGryyq5ZMtu7lCKXUNlg0oW rK8f54lCoY2Mo3wm7Wg7P2Tqxb7inHiZKKuERfuPTZubxgwdQHzla+CkZPrDacswYQCN1m Z7gxyZh4XSSyYIdOzhwvRzo+KL+8v2hVwrtyE2AGLoopDaGVScbFrw+yw2gi7Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757454550; a=rsa-sha256; cv=none; b=khTiywcPuWE8+y3JR6n+18Zd+YAIM4b3NcmH/Ez3kg6922naGfnTpwaxqIADf8XE3rYpys GLc4L4WaQOsxwP/tZJ0hWaVmzZ0X2UXEnOXRNRk+pAMtQnqgRZ4/jnCpIMCvxeCCoF4tAJ zO56VMsEpKSoCLZMgztCQxpL37m8eMsMb6WvUxsJT1QKo9vmiKY0uLOfEhMvXt4AU3hByb W8jEBxRxRJJxo9E6FaUUvcwzEtkmFuG7UI6IYFw8IxVgkKv52btvB5jC4Oo1aGTBYphPXz 4GlWHidJQRGwkcYL7D4A1Q9T4zCv1rVU7Vt/WqvvBCyn5os+aGovoXF3Bf+LbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLyBt18fMzt2x; Tue, 09 Sep 2025 21:49: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 589LnAXc099954; Tue, 9 Sep 2025 21:49:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589LnAJM099951; Tue, 9 Sep 2025 21:49:10 GMT (envelope-from git) Date: Tue, 9 Sep 2025 21:49:10 GMT Message-Id: <202509092149.589LnAJM099951@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 0833a3fe5b33 - main - nanobsd: Alphebetize -I List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 0833a3fe5b33f0ef4cdbd4e9b3af0fcd223d366a Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=0833a3fe5b33f0ef4cdbd4e9b3af0fcd223d366a commit 0833a3fe5b33f0ef4cdbd4e9b3af0fcd223d366a Author: Warner Losh AuthorDate: 2025-09-09 15:56:09 +0000 Commit: Warner Losh CommitDate: 2025-09-09 21:49:05 +0000 nanobsd: Alphebetize -I Put -I in its proper place alphabetically Sponsored by: Netflix --- tools/tools/nanobsd/nanobsd.sh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tools/tools/nanobsd/nanobsd.sh b/tools/tools/nanobsd/nanobsd.sh index 4c390d8ca371..3a09468176cf 100755 --- a/tools/tools/nanobsd/nanobsd.sh +++ b/tools/tools/nanobsd/nanobsd.sh @@ -66,6 +66,15 @@ do do_installkernel=false shift ;; + -I) + do_world=false + do_kernel=false + do_installworld=false + do_installkernel=false + do_prep_image=false + do_image=true + shift + ;; -K) do_installkernel=false shift @@ -124,15 +133,6 @@ do do_world=false shift ;; - -I) - do_world=false - do_kernel=false - do_installworld=false - do_installkernel=false - do_prep_image=false - do_image=true - shift - ;; --) shift break From nobody Tue Sep 9 21:49:11 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cLyBv3htmz66VSc; Tue, 09 Sep 2025 21:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cLyBv2N49z3Ndx; Tue, 09 Sep 2025 21:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757454551; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Li/mCPGqitzZt1byg4UswmkptgcPX7ai2O/e4a6nu4k=; b=p4cEH8pHgZHpH6BLuyM8Axr/dUyfFs1BFTbJOOCTpIYPlB/pEgjUQlMbpBVevXLzZs/cl7 wz9Tzab/7w4ld3KX4jz9a7AqTjiL7NQVkqhbtHImlbX60OSsZ0gtzwRA8woiaiYn/T/ifD 8gdpq0IZ6BaRjydW65BfWZ1PWih4W1FFfQQ+SNgMnzDoIAKOVcUwBkYNob/ByDPCKLbuWQ jLi4j8QELcGIOezwbrREgjSC4FzGVqgFfIIZ2JpOs4qadB2pjaJds928JPfwCOtgcxzixu pEaO5v1/HO92ZH0dvyOH3H3V5CLMOKBBFPFT8SaGGOoYaEAzzoG1WPr/4tiuZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757454551; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Li/mCPGqitzZt1byg4UswmkptgcPX7ai2O/e4a6nu4k=; b=O6gjT9KU8NhpOlecny0GtNwqi/OHjvaD8UgduiXNBDc+22OFCGOP10bWuDWOO7zlR8VkPE +NTNaUOva2n2+Tx4CO4WwJnah9aDrS8+AG5v5oakLeDyLuGK5/LpeAvmGXeWcpf4c7pS0C 5kzvkN/B+vCLb3CtCKZ2hHx+tPLoJePzO8aaD1XL8i67TzM3RX1TAr0xQCG1MSMyYQGGPk xFA7gT60d7zgGjz6OOMztWjfBi8viU2UYx3KD7hKF+gPp6FoBuXS7ZOAtft0fpzlW50WkJ 2jFvHlNlPDY+ajKDKaDqTM7h6ImJnvIIp+zp1NOPhjwqd/EPSkf99W5+cOvVWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757454551; a=rsa-sha256; cv=none; b=hTaohRXBJm66V9H/zNCsqgm3TnuNv6YBbfmwmhxIF1YQS0UeCQd/fRaxF+YbyIPQUfYoKr UD7rzPOLCKd5IMIVzJ1sFwFe+nHRIo4ywz3GPMf7KfK5eF3Ir5HJeWcA0lNgSi+wdcoZQp qiUF1GDhVSBQ6I+H2LjY+zJpqOYua7TZRE68P6sDC/WkQZN9eWkMHUexiW9m0FKUrcbVAO dCku4Aw44swGinceCZ0ybnSLS03pcD/vNweMH6Zrn42M3uAjh+iSh2A1+YuF5OuW/l69eh VRIhqFhj2hTHgMAI4O9gBXSmmZboYlXgUT2KA0H3Q+2Fc1ULc+Bo0zfvmN7Gfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLyBv1zgHztBL; Tue, 09 Sep 2025 21:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 589LnB2V099986; Tue, 9 Sep 2025 21:49:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 589LnBrg099983; Tue, 9 Sep 2025 21:49:11 GMT (envelope-from git) Date: Tue, 9 Sep 2025 21:49:11 GMT Message-Id: <202509092149.589LnBrg099983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 90593b1bdb80 - main - nanobsd: Expose do_image_prep on command line List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 90593b1bdb80a41b499b47437b4f545c24666b2d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=90593b1bdb80a41b499b47437b4f545c24666b2d commit 90593b1bdb80a41b499b47437b4f545c24666b2d Author: Warner Losh AuthorDate: 2025-09-09 16:00:14 +0000 Commit: Warner Losh CommitDate: 2025-09-09 21:49:06 +0000 nanobsd: Expose do_image_prep on command line do_image_prep will skip the customizations and other image prep that's the same each time. It was just set before for -I. Expose it now with -p which doesn't have the other side effects. Also, fix a bug where early customization was run in this case. We don't want that run multiple times when building an image from an existing tree or when skipping image prep (there's no reason to make it a separate hook). Also change example small media from Compact Flash to SD Card (though maybe it should be microSD card, eMMC or similar, but that's getting too verbose). Sponsored by: Netflix --- share/man/man8/nanobsd.8 | 10 +++++++--- tools/tools/nanobsd/nanobsd.sh | 12 ++++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/share/man/man8/nanobsd.8 b/share/man/man8/nanobsd.8 index 838f9ddc9afa..8a1f44af6900 100644 --- a/share/man/man8/nanobsd.8 +++ b/share/man/man8/nanobsd.8 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 14, 2025 +.Dd September 9, 2025 .Dt NANOBSD 8 .Os .Sh NAME @@ -33,7 +33,7 @@ .Nd create an embedded FreeBSD system image .Sh SYNOPSIS .Nm -.Op Fl BbfhIiKknqvWwX +.Op Fl BbfhIiKknpqvWwX .Op Fl c Ar config-file .Sh DESCRIPTION The @@ -42,7 +42,7 @@ utility is a script which produces a minimal implementation of .Fx (called .Nm NanoBSD ) , -which typically fits on a small media such as a Compact Flash card, +which typically fits on a small media such as an SD card, or other mass storage medium. It can be used to build specialized install images, designed for easy installation and maintenance. @@ -77,6 +77,10 @@ This suppresses the normal cleanup work done before the .Cm buildworld stage and adds -DNO_CLEAN to the make command line used for each build stage (world and kernel). +.It Fl r +Don't prepare the image. +Skip running of the customization and early customization scripts for +incremental image refinement from world, kernel, or packages. .It Fl q Make output more quiet. .It Fl v diff --git a/tools/tools/nanobsd/nanobsd.sh b/tools/tools/nanobsd/nanobsd.sh index 3a09468176cf..208bc646122d 100755 --- a/tools/tools/nanobsd/nanobsd.sh +++ b/tools/tools/nanobsd/nanobsd.sh @@ -49,7 +49,7 @@ do_prep_image=true . "${topdir}/legacy.sh" set +e -args=`getopt BKXWbc:fhiIknqvw $*` +args=`getopt BKXWbc:fhiIknpqvw $*` if [ $? -ne 0 ] ; then usage exit 2 @@ -121,6 +121,10 @@ do do_clean=false shift ;; + -p) + do_prep_image=false + shift + ;; -q) PPLEVEL=$(($PPLEVEL - 1)) shift @@ -158,7 +162,11 @@ fi pprint 1 "NanoBSD image ${NANO_NAME} build starting" -run_early_customize +if $do_prep_image ; then + run_early_customize +else + pprint 2 "Skipping early customization for image prep (as instructed)" +fi if $do_world ; then if $do_clean ; then From nobody Wed Sep 10 04:00:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cM6RS0F3rz66tl8; Wed, 10 Sep 2025 04: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cM6RR4VKNz45N0; Wed, 10 Sep 2025 04: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=1757476835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3/7kApcy7umqA+++FWR3YbmRYu5Mp1oPC0X9ZulEDtc=; b=ne+qC4NxPK8QJk/WVXaesOkIhwm+wT8EU3NiRi0g/NB0oCqmV5S3Q4snq5yzhCv0TRz5EA /hROTtZaqyibDdCPPvxNGu6pmVq2676jhZiS4bDkqFzek+PR1Xf32B9sfHVEwK0dC9/BuH p/PpSjQk9REvYo3KVT4vWqxzj5aeV6k7hAq9EfeYfXRDi1Y/69iMDLyWB8BCSetYyYQbQ4 z4JuV60rfn5z6mBIbKcOfqgDqOKocZQlgOcNWvZWnqvuPo41JlR75kynPW90/IDDHzkxiz zJDOLVKEr9XGTPHlNNeagC8rVFcSI4CyEgf9Ij1BZ5LS8vtx2bIDGCi20co6pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757476835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3/7kApcy7umqA+++FWR3YbmRYu5Mp1oPC0X9ZulEDtc=; b=sqcbhO6tfpob6M5WiKOoaJC1pCMcN2ehsUGj6wbyCRTH655QViv+NTdT97N92Ebqd1H1Qd ARkTjw/P26VMlzQHNqh3G5/Eyzo0O/hydSWYoSjha9o6zdMIW8zaQT0tH+uVfxELDRS/BD ev3/toJkPMpxnBf8rnCEgb/N0P7T445igjeHu4XjAUiYrtVgWRpzmZMpWVqvRXywzUaJy+ /uVdRPB3BvFyDvKzKagBFZpkSs0Z2OZFFXpuut2UxMjVn3sJ312BIOxkNMa2gO2UouR/8k cAVsdp0Ha2Lt7iMTSJxqgTFvAKctYyoQCpAWEIM3aR/yzFkV0q1kJY/zruCPxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757476835; a=rsa-sha256; cv=none; b=lyvjCH1xqw7P/x7LEsV3S2j5xuWDtenDeL/UdRZHUB4VYEt/EoFry1iQVmqehILY6UUtsj sWx28tNCycBsGaQq0bLGt3ubbM3DfUY8PhbCpVunsw1QurHpPjY917CvbrYelL62vbB52m SgqATqRpLl6mYeKFTZsPSJ5Ec5fy6XSqhcVvzqa+WmgP7aI/TjeeHjxEGOff5MSjYY1KqE +d8WZ/tiHA9F/KgwiLS/fzBnrlbV/E4XxN4UVdg6/OCt5vM4r5nYzBFZb5JiehSw9Mw/2V 7M204WlEVDbHmCCVMdrmgznT1Pa+NSkJNVlIGFaKSdpBZyFGylxpySfEV3SF/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cM6RR45M4z14pn; Wed, 10 Sep 2025 04: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 58A40ZXL005884; Wed, 10 Sep 2025 04: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 58A40Z2u005881; Wed, 10 Sep 2025 04:00:35 GMT (envelope-from git) Date: Wed, 10 Sep 2025 04:00:35 GMT Message-Id: <202509100400.58A40Z2u005881@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 685e60e860d6 - main - ngctl: Fix build without JAIL List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 685e60e860d61f6e1bcf981f5c30647e0c025702 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=685e60e860d61f6e1bcf981f5c30647e0c025702 commit 685e60e860d61f6e1bcf981f5c30647e0c025702 Author: Zhenlei Huang AuthorDate: 2025-09-10 04:00:05 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-10 04:00:05 +0000 ngctl: Fix build without JAIL Reported by: Michael Dexter Fixes: 72d01e62b082 netgraph: teach ngctl to attach and run itself in a jail MFC after: 1 day --- usr.sbin/ngctl/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/usr.sbin/ngctl/main.c b/usr.sbin/ngctl/main.c index b32e4f878b6e..b86f1ca27e71 100644 --- a/usr.sbin/ngctl/main.c +++ b/usr.sbin/ngctl/main.c @@ -144,7 +144,9 @@ main(int ac, char *av[]) char name[NG_NODESIZ]; int interactive = isatty(0) && isatty(1); FILE *fp = NULL; +#ifdef JAIL const char *jail_name = NULL; +#endif int ch, rtn = 0; /* Set default node name */ @@ -181,6 +183,7 @@ main(int ac, char *av[]) ac -= optind; av += optind; +#ifdef JAIL if (jail_name != NULL) { int jid; @@ -196,6 +199,7 @@ main(int ac, char *av[]) errx((errno == EPERM) ? EX_NOPERM : EX_OSERR, "cannot attach to jail"); } +#endif /* Create a new socket node */ if (NgMkSockNode(name, &csock, &dsock) < 0) From nobody Wed Sep 10 04:31:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cM77P1gdqz66wF6; Wed, 10 Sep 2025 04:31:45 +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 4cM77N1jlpz47Jr; Wed, 10 Sep 2025 04:31:44 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="No valid SPF, No valid DKIM" header.from=gmail.com (policy=none); spf=softfail (mx1.freebsd.org: 2001:470:d5e7:1::1 is neither permitted nor denied by domain of kostikbel@gmail.com) smtp.mailfrom=kostikbel@gmail.com 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 58A4VTgM000090; Wed, 10 Sep 2025 07:31:32 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 58A4VTgM000090 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 58A4VTgq000089; Wed, 10 Sep 2025 07:31:29 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 10 Sep 2025 07:31:29 +0300 From: Konstantin Belousov To: Ka Ho Ng Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 11ace56fa030 - main - contrib/libxo: fix API header files inclusions in C++ source files Message-ID: References: <202509071842.587IgHbm001636@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-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: <202509071842.587IgHbm001636@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-Spamd-Bar: -- X-Spamd-Result: default: False [-3.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : No valid SPF, No valid DKIM,none]; ARC_NA(0.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; MIME_TRACE(0.00)[0:+]; MISSING_XM_UA(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; HAS_XAW(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_SOFTFAIL(0.00)[~all]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_THREE(0.00)[4] X-Rspamd-Queue-Id: 4cM77N1jlpz47Jr On Sun, Sep 07, 2025 at 06:42:17PM +0000, Ka Ho Ng wrote: > The branch main has been updated by khng: > > URL: https://cgit.FreeBSD.org/src/commit/?id=11ace56fa030185025936c795d5cf7c57b266835 > > commit 11ace56fa030185025936c795d5cf7c57b266835 > Author: ShengYi Hung > AuthorDate: 2025-09-07 18:33:01 +0000 > Commit: Ka Ho Ng > CommitDate: 2025-09-07 18:33:01 +0000 > > contrib/libxo: fix API header files inclusions in C++ source files > > C++ source files need `extern "C"` to disable C++ name mangling. > > MFC after: 1 week > Reviewed by: aokblast (previous version), phil, imp (previous version) > Differential Revision: https://reviews.freebsd.org/D47930 > --- > contrib/libxo/libxo/xo.h | 8 ++++++++ > contrib/libxo/libxo/xo_encoder.h | 8 ++++++++ > 2 files changed, 16 insertions(+) > > diff --git a/contrib/libxo/libxo/xo.h b/contrib/libxo/libxo/xo.h > index 6a61a16c7cae..7f37b469b54e 100644 > --- a/contrib/libxo/libxo/xo.h > +++ b/contrib/libxo/libxo/xo.h > @@ -27,6 +27,10 @@ > #include > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif /* __cplusplus */ > + > #ifdef __dead2 > #define NORETURN __dead2 > #else > @@ -699,4 +703,8 @@ xo_retain_clear_all (void); > void > xo_retain_clear (const char *fmt); > > +#ifdef __cplusplus > +} > +#endif /* __cplusplus */ > + > #endif /* INCLUDE_XO_H */ > diff --git a/contrib/libxo/libxo/xo_encoder.h b/contrib/libxo/libxo/xo_encoder.h > index 099248ae13a6..bb57194ab030 100644 > --- a/contrib/libxo/libxo/xo_encoder.h > +++ b/contrib/libxo/libxo/xo_encoder.h > @@ -20,6 +20,10 @@ > > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif /* __cplusplus */ > + > /* > * Expose libxo's memory allocation functions > */ > @@ -167,4 +171,8 @@ xo_encoder_op_name (xo_encoder_op_t op); > void > xo_failure (xo_handle_t *xop, const char *fmt, ...); > > +#ifdef __cplusplus > +} > +#endif /* __cplusplus */ > + > #endif /* XO_ENCODER_H */ Would it be better to use __BEGIN_DECLS? I am not completely sure due to contrib/, but libxo is FreeBSD-specific enough already. From nobody Wed Sep 10 07:28:10 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMC2y4mwjz67Dq0; Wed, 10 Sep 2025 07:28:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMC2y3z6Dz3FxN; Wed, 10 Sep 2025 07:28:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757489290; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O2Wie4zq4In4s6yadmbl487+zHvHVOuERw3Kdgj9a7E=; b=CdHOSQHPblk7DGUf66WuHIBPK4OxJDCrPrcuicfM54U28p7nrCsI20c4y5fbpzAasHM0p3 oaDMV1DSIYRK36UMJUQKDlYzMtzy3zfBdRFosPxZQxwdPVS31lal7YW+78bAlR4DFnKSN7 dUQb7xLG3arrgLUnZS6io1Oh2l5ekCyw87NsYU3ooHJlN9uxfGK2naoMb3ltmTuAtLoDuU pcw4k4uQYTqiANHJkteMenMIxJPqZO/DY47K7Y79YOAB7V3Uwvw5090rF+BQ6L8A5QVPhd V//rorYyHVHJrsfYz94nC2d5mibo46mqhh8D0JITfuPf1caAt++G04HgEx9/ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757489290; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O2Wie4zq4In4s6yadmbl487+zHvHVOuERw3Kdgj9a7E=; b=kGWapPA60XjJZDpdcppbgNxxmvzkcVeN03KtCJ118K/i6nSw8ebK3E4RQrKgcAswDV6Q+c +KwXZ4sTnLh/3ITmP39Cgi/KYCFK89/DZfYSRyAw//UpVxRke4MZtVKxRjLQnKtmWlSs7W 5PkLJ/sXw8KUK66DM+3CYTtL8RMs+BuSFmYRxS58T9WoAJcVTH0rRS42cavuZAKC+95K0/ unZ6LRToiB3C00EFgg1a8X9e5OBuRwkzkiSPKgptpAkYP/lo7DEuv0UM8NGxuP+AGYKhwt vXM4BgfbHAG0dGkVxVsLc4woVWaNFfoJcapvIPxrVtobKk1G5wDr0TEqZyYogA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757489290; a=rsa-sha256; cv=none; b=QqnZkol2ifdvzkoyGp+8Rm7TfyRuhz0ejjMpCfAhrjB64yzTgK3oqoJXdL0Zk7CIsujzDx I7bFMLZxJEaLzLN6Cwq9srmKQCj3UCasfVh0pv2Hq3HFxrfbKgVL6u3VGcAiPgpZlZpmFs qC34+vepc7rzG3WZAIsyeJkxxCEVs7CDJlxuKvdc+pft0c3cIa8bUVBPZPw6ekWlI7MAzY 7+XEr8v/1F/0GDhjByAIDqLXiUHc1m0Ne31V/DBl3nvOfy7d1eW9pmPlSkh7I4RSOsS3MG 4IHGqgSTHH7J631FUq4qi2/07ahdCxSMtNbm3kzg1GtgzPTdScojBuuaEVBLaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMC2y3Z3Hz1BFD; Wed, 10 Sep 2025 07:28: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 58A7SAvw089677; Wed, 10 Sep 2025 07:28:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58A7SAOL089674; Wed, 10 Sep 2025 07:28:10 GMT (envelope-from git) Date: Wed, 10 Sep 2025 07:28:10 GMT Message-Id: <202509100728.58A7SAOL089674@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kevin Bowling Subject: git: 275f7d72ff6a - main - ixgbe: Remove unused function ixgbe_is_media_cage_present List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 275f7d72ff6a71bbe46b4282a88f0ea9a24be22a Auto-Submitted: auto-generated The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=275f7d72ff6a71bbe46b4282a88f0ea9a24be22a commit 275f7d72ff6a71bbe46b4282a88f0ea9a24be22a Author: Yogesh Bhosale AuthorDate: 2025-09-10 07:26:09 +0000 Commit: Kevin Bowling CommitDate: 2025-09-10 07:26:09 +0000 ixgbe: Remove unused function ixgbe_is_media_cage_present Remove the unused function ixgbe_is_media_cage_present that generates a compiler warning. Signed-off-by: Yogesh Bhosale yogesh.bhosale@intel.com Reported by: markj MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D52467 --- sys/dev/ixgbe/ixgbe_e610.c | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_e610.c b/sys/dev/ixgbe/ixgbe_e610.c index 95c6dca416c6..18c4612446e0 100644 --- a/sys/dev/ixgbe/ixgbe_e610.c +++ b/sys/dev/ixgbe/ixgbe_e610.c @@ -1399,40 +1399,6 @@ s32 ixgbe_aci_set_link_restart_an(struct ixgbe_hw *hw, bool ena_link) return ixgbe_aci_send_cmd(hw, &desc, NULL, 0); } -/** - * ixgbe_is_media_cage_present - check if media cage is present - * @hw: pointer to the HW struct - * - * Identify presence of media cage using the ACI command (0x06E0). - * - * Return: true if media cage is present, else false. If no cage, then - * media type is backplane or BASE-T. - */ -static bool ixgbe_is_media_cage_present(struct ixgbe_hw *hw) -{ - struct ixgbe_aci_cmd_get_link_topo *cmd; - struct ixgbe_aci_desc desc; - - cmd = &desc.params.get_link_topo; - - ixgbe_fill_dflt_direct_cmd_desc(&desc, ixgbe_aci_opc_get_link_topo); - - cmd->addr.topo_params.node_type_ctx = - (IXGBE_ACI_LINK_TOPO_NODE_CTX_PORT << - IXGBE_ACI_LINK_TOPO_NODE_CTX_S); - - /* set node type */ - cmd->addr.topo_params.node_type_ctx |= - (IXGBE_ACI_LINK_TOPO_NODE_TYPE_M & - IXGBE_ACI_LINK_TOPO_NODE_TYPE_CAGE); - - /* Node type cage can be used to determine if cage is present. If AQC - * returns error (ENOENT), then no cage present. If no cage present then - * connection type is backplane or BASE-T. - */ - return ixgbe_aci_get_netlist_node(hw, cmd, NULL, NULL); -} - /** * ixgbe_get_media_type_from_phy_type - Gets media type based on phy type * @hw: pointer to the HW struct From nobody Wed Sep 10 08:00:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMClm0j7Sz67GJp; Wed, 10 Sep 2025 08:00:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMCll6rJvz3KVN; Wed, 10 Sep 2025 08:00:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757491204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qX2ErUCK8M+psOe9bPdSk9HegAHGN63OtNftrXMdpMc=; b=rn8/soDN7zsg2Ta49gPGqH7aYQ2b9eQfsb5APj0aPZtV7krtJub15AoK1ZirVCiQtsdP+3 omrFl3LuMhWq9ripb/VHpWf/7hezw5XMFIrobmajIPh4rHYNnFj6pHz/Wy9pktXtam2mMf r9PKkPlJ2K2aKvSfcwlsb9BWepue5s2K9mSVUnbF9dnHs0Dv1aLao/01AEvTfUbGv2bFO6 w+OBYmuXBkl2NtstR+x6AwG4yX184f8dIwzUujpPjaR6fI/Z6FjFri20+5HNEwIMYBtDup 8chS5c8DuNvBLieyATJB2Yn4O580cVP38rlDZi56tg5es/oJe44irtPNsFmHVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757491204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qX2ErUCK8M+psOe9bPdSk9HegAHGN63OtNftrXMdpMc=; b=MjvQz/APO3VKF2FSZe6wksJF423SPh6OG0GH1L5SdU8IOWIEjFsVsHYNZTMKq2A3ltg4Kj sWL/7sL1EPzdOglhg0lH2Ag/RT1U/tVoOr74mTFH5Gtwwmv8yK39ilvUcU6I0CbkctMzeP i7gD8GGGJmXjK1lzITyuM6vAFX3V4rGnwtnuppJO7ZcIJbLfl1+0kaPTIQcwfRjQxbJCgW 3S1pIfpW9gxQwP0iU7/PY1/YJTK4IFAtjAO1qqtmybBgzPLQFAeSUi1wAFJ1tIM8af2Drk WMH+y/l5lfkF9nISVI72C/4ibO8fZjfPlo1Ep4hyf+Fz16QbcXmzR8EjzcJTkQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757491204; a=rsa-sha256; cv=none; b=N0kJNtvhrfi7xt7MTD14cMpuVhtvSHTV74k6dr+PWZE1EfBHZUV/Towbad7Z7zKyYXm6Uv xQcjibuktJOcV/IJ9b8h5XYGPVtWkUG4TmintB4/9DrCcdgRt/Bov4eHGwJ6Mri3tzVbp9 xTN7KASfnhX3LivVS4AYeWGeNtHpPAARTAEmVJRyfyaMn39k3h8SV+80EPUBPJ8zjrBl+/ 0c40cfsrzs6Sj3/OOc/pP55o/S/q8oOEV3KtQs//kESEwHz+tR0Sp1+tMtuI97uDWFLZ7K m+4M4Uz3hwlQvhmKsCt8nP9+oKHBoNe34d0adM58rtMu4bQ/fn3xpS5aNfHtbw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMCll6Mpmz1CFP; Wed, 10 Sep 2025 08:00: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 58A803HT049352; Wed, 10 Sep 2025 08:00:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58A803LT049349; Wed, 10 Sep 2025 08:00:03 GMT (envelope-from git) Date: Wed, 10 Sep 2025 08:00:03 GMT Message-Id: <202509100800.58A803LT049349@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ahmad Khalifa Subject: git: 80661e2153d2 - main - loader/efi: fix non-x86 build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vexeduxr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 80661e2153d2bc916444cb3be8aa50d0d110ad57 Auto-Submitted: auto-generated The branch main has been updated by vexeduxr: URL: https://cgit.FreeBSD.org/src/commit/?id=80661e2153d2bc916444cb3be8aa50d0d110ad57 commit 80661e2153d2bc916444cb3be8aa50d0d110ad57 Author: Ahmad Khalifa AuthorDate: 2025-09-10 07:43:27 +0000 Commit: Ahmad Khalifa CommitDate: 2025-09-10 07:48:20 +0000 loader/efi: fix non-x86 build Pointy hat to: vexeduxr Reported by: Bakul Shah --- stand/efi/loader/bootinfo.c | 2 +- stand/efi/loader/copy.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/stand/efi/loader/bootinfo.c b/stand/efi/loader/bootinfo.c index 3230200e9be5..7931622c2df6 100644 --- a/stand/efi/loader/bootinfo.c +++ b/stand/efi/loader/bootinfo.c @@ -67,7 +67,7 @@ static int bi_getboothowto(char *kargs) { -#ifdef EFI +#if defined(EFI) && (defined(__i386__) || defined(__amd64__)) const char *tmp; int speed, port; char buf[50]; diff --git a/stand/efi/loader/copy.c b/stand/efi/loader/copy.c index bf1a7a075400..7452726565ad 100644 --- a/stand/efi/loader/copy.c +++ b/stand/efi/loader/copy.c @@ -405,7 +405,9 @@ efi_check_space(vm_offset_t end) return (true); } +#if defined(__amd64__) || defined(__i386__) before_staging: +#endif /* Try allocating space before the previous allocation */ if (staging < nr_pages * EFI_PAGE_SIZE) goto expand; From nobody Wed Sep 10 09:03:08 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMF8p0Psbz67KD0; Wed, 10 Sep 2025 09:03:22 +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 4cMF8m6yztz3Rq1; Wed, 10 Sep 2025 09:03:20 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="No valid SPF, No valid DKIM" header.from=gmail.com (policy=none); spf=softfail (mx1.freebsd.org: 2001:470:d5e7:1::1 is neither permitted nor denied by domain of kostikbel@gmail.com) smtp.mailfrom=kostikbel@gmail.com 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 58A938PR008378; Wed, 10 Sep 2025 12:03:11 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 58A938PR008378 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 58A938s0008377; Wed, 10 Sep 2025 12:03:08 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 10 Sep 2025 12:03:08 +0300 From: Konstantin Belousov To: James Gritton Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 851dc7f859c2 - main - jail: add jail descriptors Message-ID: References: <202509042031.584KVpxY000408@gitrepo.freebsd.org> <2f66c886ab44aea5ad2e57cc72c03e3f@freebsd.org> <24a1f2413af24eea3fb5e9be9c05c4bd@freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-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: <24a1f2413af24eea3fb5e9be9c05c4bd@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-Spamd-Bar: -- X-Spamd-Result: default: False [-3.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : No valid SPF, No valid DKIM,none]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; MIME_TRACE(0.00)[0:+]; MISSING_XM_UA(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; HAS_XAW(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_SOFTFAIL(0.00)[~all]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_THREE(0.00)[4] X-Rspamd-Queue-Id: 4cMF8m6yztz3Rq1 On Sun, Sep 07, 2025 at 09:25:59AM -0700, James Gritton wrote: > On 2025-09-06 17:26, Konstantin Belousov wrote: > > On Fri, Sep 05, 2025 at 10:57:30AM -0700, James Gritton wrote: > > > On 2025-09-04 22:14, Konstantin Belousov wrote: > > > > BTW, you added some support for kqueue for jail events, but not to the > > > > jail file descriptors. This seems to be backward: if somebody wants to > > > > monitor events for jails, then it is more reliable and straightforward > > > > to do with the new jail fds rather than with ids. > > > > > > It is at least incomplete, and not the state I want things to be at. > > > There's a sticking point with jaildesc kqueue, so while I work that > > > out I went with jid-baseds kqueue as a starter. > > > > > > The trouble is child jails. I took their handling from the existing > > > child process handling, where I register a new kevent under the new > > > jail's id. But that's something I can't do with descriptors, since > > > they have a process-specific identifier, the descriptor number. The > > > code that creates the new event, coming from the jail_set call that > > > created a new jail, has access to the global descriptor (the struct > > > file), but not to the process(es) that have it open, so I have no > > > way of registering one or more events with that descriptor number. > > > > > > One workaround is to have both jid- and jaildesc-based kevents, but > > > both of them register a new jid-based kevent for a newly created child > > > jail. The caller may then get a descriptor with jail_get, and add a > > > kevent for it and remove the old jid-based one. This would work, but > > > feels really klunky. > > > > > > The other idea I've had is to register a temporary event, and then add > > > code to kqueue_scan that converts that into a proper jaildesc event > > > with the expected file descriptor number. That would require either > > > jaildesc-specific code in or around kqueue_scan, or adding another > > > filterops function, neither of which is great. Still, it seems the > > > better solution. > > > > This is not how the monitoring APIs work in general. For instance, > > when you register a listening socket in kqueue (or mark it for select or > > poll), you do not get back a new connected file descriptor. Kqueue only > > provides a notification that new connection arrived, and then code > > needs to accept it and get the file descriptor for new connection using > > dedicated socket API. > > True. An accepted connection changes the network state, both locally > and remotely, and automatically establishing that connection wouldn't > be the right things to do. The existence of a listen queue also fits > well with a notification system that doesn't do its own queueing. > > Jail descriptors, on the other hand, only exist as a veiw to an > existing jail, and don't establish anything other than that view. > Jail creation also has no associated queue, so loss-free noficiation > relies on the same hack that process forking already established, > but requiring a little more in the way of making it fit. > > An alternate way of solving the problem would be to create such > a queue, allowing a single notification of such things as a jail > attachment or child jail creation, or possibly more than one of > them by the time the process reads the queue. No, the queue is obviously overkill. Still, no notification system really require the queue. I am not thinking too hard what would be a good design for the jail filedesc, but I have some ideas that feels worth communicating. First, since you already mentioned a desire to capsicumize jfds, I think it is already a huge wart in the interface. The function that opens (or creates) fd from a jail id, must not take just jail. It should be namespace-aware already. In other words, it should take existing jfd and create a child jail, returning jfd for it. The existing jfd gives the namespace container to start with, which is essentially how capsicum is organizing the rights limiting. For the bootstrapping, the prison0 non-capentered process can pass a special id for jfd to reference prison0, similar how AT_FWCWD marks '.' for *at(2) syscalls. Next, for notifications, the notification subsystem does not need to indicate what happen, in particular, it does not need to communicate neither the jid of created (or destroyed) jail, nor jfd for it. It is enough to make the listener aware that something happen. Upon receiving the notification, listener would interrogate the system state and see what changed. The proc knotes are very bad example, in particular, the idea to pass back the pid is wrong. It is known to be racy, both because reported pids might get lost, and because pids only behave handle-like in the parent of the forked child, so pid might be reused. Proc knote + half-done procdesc is not a good example to start with. From nobody Wed Sep 10 09:16:46 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMFSG53Dhz67L2C; Wed, 10 Sep 2025 09:16:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMFSG4GTXz3Tj4; Wed, 10 Sep 2025 09:16:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757495806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2vnsIA0q7dhtO/6D+M7QRgAntbvrO2bOCFUlrPXw1hA=; b=asSbKNmMR39U2R1Uv7DAecotVpfECvM51wnNABx3q6f1ukCT4vzLiNHsTuYVO3L6+LnJZn hUkIgwT7O+BuE5mTaiQ4OplzsaDwDUdRh/AWFLj7omDTFztvpUpLh3Fny9+X7a/G88tmG0 K9mMDkjkjR9v1xrSwamUbeBAC54EJy3lM9LoWwywWStBh9Rp5Ofxy561CifzXf4Ctfmfl7 bDf/ewPDtcAJmwouyvEJdHCRMDhvAXf0wSP3zVabprHFP3bSum89sI9pHmwSpVUFVTuZEU bZ+byY/gq7Ewtnz/RXMYrfBakqMxbi0GdG6iT/QemUPTCSflOPzBg2KMoURFcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757495806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2vnsIA0q7dhtO/6D+M7QRgAntbvrO2bOCFUlrPXw1hA=; b=EzYLTIZljNpSI/xWKO7t4F965RPPz/OU2gYrx7ny6bvauLt0gq/Sw2OdSRqcTu65Y/I82k 1jP6BaTRxxdG8BqeQ1KJhlGdlAmgLLeikbnA27pmWWaQKHZ800Q8xT2mzE4pbC1HAf3ne6 mAGGsje+JH/Xom/l4YHh1tQ66chZ6FcUiiJwDBsIcAnNtSi7RhnhX8aGOhKA13I14HUi0P qHHqUs4vgccaLcieefWSDGolyxkOZZQj+/MCy0z6CBnJGz8OewxYiPwGVzXpW7oAIp1adl iR1mgQGjqqqmkI2zPaa/lsgtt5ed4m/aFM/wzgXKTQZsa1N0uTCcliQJJC1WEw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757495806; a=rsa-sha256; cv=none; b=N6sh27blS2akCtFdYmiqNWBlrmoLY6tqKns14wMJxlokW7aN51K09uDphrHs7Uzb2Uq7mh GfbSZnjLWBGfX4MwZfS9+vvZT7zRtFxq0BDX/MuLm4P3+EevKZPP+jqK+SSyhiggH8fZ8f 1BEdymmr+gSmF1BQjHW/lBv13dfaRMV3AugW4qrszCxBukIrjwFv9FNzOWIdqElV6536ki Q4lI+rqCCbTi2UJhHiVziT62H9cKM5/mvzQlHYSaA1PO//vNcsEtWpFspjGuAlRIwpjN98 I8nBgJBJInuIaWrdQME8vQh7adC7rFuoaXmpZswk8xQ2u63T2kllE0fGctPXxA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMFSG3n73z1Ck; Wed, 10 Sep 2025 09:16: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 58A9GkfO096741; Wed, 10 Sep 2025 09:16:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58A9Gk97096738; Wed, 10 Sep 2025 09:16:46 GMT (envelope-from git) Date: Wed, 10 Sep 2025 09:16:46 GMT Message-Id: <202509100916.58A9Gk97096738@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mateusz Piotrowski <0mp@FreeBSD.org> Subject: git: 9365a328596c - main - ports.7: Fix example of passing variables on the command line List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: 0mp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9365a328596c9f156deaa15fa018b76b3a6e6b18 Auto-Submitted: auto-generated The branch main has been updated by 0mp: URL: https://cgit.FreeBSD.org/src/commit/?id=9365a328596c9f156deaa15fa018b76b3a6e6b18 commit 9365a328596c9f156deaa15fa018b76b3a6e6b18 Author: Mateusz Piotrowski <0mp@FreeBSD.org> AuthorDate: 2025-09-10 08:52:15 +0000 Commit: Mateusz Piotrowski <0mp@FreeBSD.org> CommitDate: 2025-09-10 09:04:55 +0000 ports.7: Fix example of passing variables on the command line make(1)'s -D flag does not allow for setting the value of the variable. It just defines the variable and sets its value to 1. In fact, make(1) treats "=" as just another character in the variable name: ``` $ make -DA=2 -V A # Output is just an empty line. $ make -DA=2 -V A=2 # Variable "A=2" is defined and set to "1". 1 ``` Fixes: d25f7d324a9d ports.7: Document DEBUG_FLAGS and the process of debugging ports MFC after: 3 days --- share/man/man7/ports.7 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man7/ports.7 b/share/man/man7/ports.7 index b681a326f407..75070ce852fe 100644 --- a/share/man/man7/ports.7 +++ b/share/man/man7/ports.7 @@ -25,7 +25,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 21, 2025 +.Dd September 10, 2025 .Dt PORTS 7 .Os .Sh NAME @@ -683,7 +683,7 @@ WITH_DEBUG_PORTS= mail/dovecot security/krb5 .Pp It is also possible to use the debug variables on the command line: .Bd -literal -offset 2n -.Li # Ic make -DWITH_DEBUG DEBUG_FLAGS="-g -O0" build +.Li # Ic make WITH_DEBUG DEBUG_FLAGS="-g -O0" build .Ed .Pp See the From nobody Wed Sep 10 14:00:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMMlg45qKz62gwN; Wed, 10 Sep 2025 14:00:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMMlg1xPVz3y2b; Wed, 10 Sep 2025 14:00:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757512831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sNBPFhMfRwDXDteHIz7HOSNq+2Q/QJakq855r36mOcE=; b=fW6brpux09syQourXcEVwoUce/svNJj8ex4dGtB3wWUe3hcJx4ANcMiJrJ93+kVF+T10ra AXDh4uMvx91QND4GHNkWv5cvwJSkwxNnPBVu0u869BfUQQho7WUylnLwUHQrahIFCXBWDF 6ldqc7ZtBSAETU0Jj0kqbw3Pts9P5Y/eON5ykZOvjGVIx5MjWh+s0XijkjVMZuCx/4jXYk J7R7ehxDe+Qx1t8RSLFYa0iybd0H84Yi/T5qdkBvPCwByRoX+vWzbkpw4QssstJ89O3gkQ BMcYuamVzjVC0010BSZVlDKWVY63931mY/eP3cC9cQhRlQI9rBS/iIMo46jjGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757512831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sNBPFhMfRwDXDteHIz7HOSNq+2Q/QJakq855r36mOcE=; b=UyAa4pKhUMYVVjyDrlV54xPM0MXwBLmPyjSYw0LnGXGyqnNfi4+jeMrcChR+jD+NPxoE8w ByLjstaeMA9Y5edDATIlTEcP+QLdqQjULQ3QbwOZ9zgQLAfTfYzRA44R97Ih6oAL3maA28 zaWukkRdXyvKVlYHBgror10KBoqibaF01MPRUD5doXIK3d+6neYWZz0oH8Hql0g/G0N8dR OZRg2Wdly6FCPzJJergigKe01UmIkphgkfi/7IZywrBxWlHzbDOLppB828xoCoHflPskeA omVcMz/yIeDO+GZ0CFfoTyztOGRjsonFvzDQVHT62uugXpZEupzLi8p+ouzyPQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757512831; a=rsa-sha256; cv=none; b=l16jtl7SyhirLZ/V2dX/BKKgTRY+7oZKnswfrPAZjS4kzKgVjK0YPGZyDq1uZ8ml1wpZOU h/g7f0EtjUHqyB2ftzt4xP0Np+alQUZIRhB2iLc46IGissSMKfdRCF+HTsGQMVpGXaZdU8 w2kXbEarQ9jTg2QMzP/ZQBn94ztzHth9elMPwR4VPOAtUtvjMEdxIPyyBKooFgpo2BaKd/ 4KC0p+rJNATver78L63ALu7oaATKiX3TCmOkJ17/WZqROEf/aqhbvrLXaz8msav5wLl4cw XzmgptXeYzYa2xbQRlRDZE3Rv+D8lHGCxRZ6qeTlzOkiuSXOncAB6DiFzpX65Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMMlg1P2Fz885; Wed, 10 Sep 2025 14:00:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58AE0VwS032210; Wed, 10 Sep 2025 14:00:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AE0VjT032207; Wed, 10 Sep 2025 14:00:31 GMT (envelope-from git) Date: Wed, 10 Sep 2025 14:00:31 GMT Message-Id: <202509101400.58AE0VjT032207@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Gallatin Subject: git: 6577e32ea2c7 - main - iflib: report output drops and handle ENOBUFS properly List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gallatin X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6577e32ea2c7868c275eae6d1c68f1c37d418c71 Auto-Submitted: auto-generated The branch main has been updated by gallatin: URL: https://cgit.FreeBSD.org/src/commit/?id=6577e32ea2c7868c275eae6d1c68f1c37d418c71 commit 6577e32ea2c7868c275eae6d1c68f1c37d418c71 Author: Andrew Gallatin AuthorDate: 2025-09-10 13:17:35 +0000 Commit: Andrew Gallatin CommitDate: 2025-09-10 13:55:24 +0000 iflib: report output drops and handle ENOBUFS properly - Fix an mbuf leak with iflib.simple_tx=1 when we run out of tx descs in iflib_encap(). It seems odd to free the mbuf in iflib_encap(), but that routine consumes mbufs for other reasons, and it seemed safest to free there rather than have the simple tx routine parse return values to determine what needed to be freed. - Increment counters for output drops when ENOBUFS is encountered and output errors when other transmit errors are encountered for both the simple and normal tx routines. - Performed driver changes so that iflib drivers now add the generic output drop and output error counters to their private counters in their ifdi_get_counter routines. Reviewed by: kbowling, markj Differential Revision: https://reviews.freebsd.org/D52369 Sponsored by: Netflix --- sys/dev/axgbe/if_axgbe_pci.c | 3 ++- sys/dev/e1000/if_em.c | 4 ++-- sys/dev/enetc/if_enetc.c | 3 ++- sys/dev/ice/ice_lib.c | 6 ++++-- sys/dev/igc/if_igc.c | 4 ++-- sys/dev/ixgbe/if_ix.c | 2 -- sys/dev/ixl/if_ixl.c | 4 ++-- sys/net/iflib.c | 15 +++++++++++++++ 8 files changed, 29 insertions(+), 12 deletions(-) diff --git a/sys/dev/axgbe/if_axgbe_pci.c b/sys/dev/axgbe/if_axgbe_pci.c index 290156ff11ca..6bc4bd33e162 100644 --- a/sys/dev/axgbe/if_axgbe_pci.c +++ b/sys/dev/axgbe/if_axgbe_pci.c @@ -2415,7 +2415,8 @@ axgbe_if_get_counter(if_ctx_t ctx, ift_counter cnt) case IFCOUNTER_OPACKETS: return (pstats->txframecount_gb); case IFCOUNTER_OERRORS: - return (pstats->txframecount_gb - pstats->txframecount_g); + return (if_get_counter_default(ifp, cnt) + + pstats->txframecount_gb - pstats->txframecount_g); case IFCOUNTER_IBYTES: return (pstats->rxoctetcount_gb); case IFCOUNTER_OBYTES: diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 9c5ae2806f75..60959fe679b8 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -4782,8 +4782,8 @@ em_if_get_counter(if_ctx_t ctx, ift_counter cnt) sc->stats.ruc + sc->stats.roc + sc->stats.mpc + sc->stats.cexterr); case IFCOUNTER_OERRORS: - return (sc->stats.ecol + sc->stats.latecol + - sc->watchdog_events); + return (if_get_counter_default(ifp, cnt) + + sc->stats.ecol + sc->stats.latecol + sc->watchdog_events); default: return (if_get_counter_default(ifp, cnt)); } diff --git a/sys/dev/enetc/if_enetc.c b/sys/dev/enetc/if_enetc.c index 3a5d6ec23282..808397b229a7 100644 --- a/sys/dev/enetc/if_enetc.c +++ b/sys/dev/enetc/if_enetc.c @@ -1343,7 +1343,8 @@ enetc_get_counter(if_ctx_t ctx, ift_counter cnt) case IFCOUNTER_IERRORS: return (ENETC_PORT_RD8(sc, ENETC_PM0_RERR)); case IFCOUNTER_OERRORS: - return (ENETC_PORT_RD8(sc, ENETC_PM0_TERR)); + return (if_get_counter_default(ifp, cnt) + + ENETC_PORT_RD8(sc, ENETC_PM0_TERR)); default: return (if_get_counter_default(ifp, cnt)); } diff --git a/sys/dev/ice/ice_lib.c b/sys/dev/ice/ice_lib.c index 442111e5ffaf..8b6349f686eb 100644 --- a/sys/dev/ice/ice_lib.c +++ b/sys/dev/ice/ice_lib.c @@ -7818,7 +7818,8 @@ ice_get_ifnet_counter(struct ice_vsi *vsi, ift_counter counter) case IFCOUNTER_OPACKETS: return (es->tx_unicast + es->tx_multicast + es->tx_broadcast); case IFCOUNTER_OERRORS: - return (es->tx_errors); + return (if_get_counter_default(vsi->sc->ifp, counter) + + es->tx_errors); case IFCOUNTER_COLLISIONS: return (0); case IFCOUNTER_IBYTES: @@ -7832,7 +7833,8 @@ ice_get_ifnet_counter(struct ice_vsi *vsi, ift_counter counter) case IFCOUNTER_IQDROPS: return (es->rx_discards); case IFCOUNTER_OQDROPS: - return (hs->tx_dropped_link_down); + return (if_get_counter_default(vsi->sc->ifp, counter) + + hs->tx_dropped_link_down); case IFCOUNTER_NOPROTO: return (es->rx_unknown_protocol); default: diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index a1ae35c7aa43..f199a128c783 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -2599,8 +2599,8 @@ igc_if_get_counter(if_ctx_t ctx, ift_counter cnt) sc->stats.ruc + sc->stats.roc + sc->stats.mpc + sc->stats.htdpmc); case IFCOUNTER_OERRORS: - return (sc->stats.ecol + sc->stats.latecol + - sc->watchdog_events); + return (if_get_counter_default(ifp, cnt) + + sc->stats.ecol + sc->stats.latecol + sc->watchdog_events); default: return (if_get_counter_default(ifp, cnt)); } diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index e1e05e008e8d..c9d35e834177 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -1350,8 +1350,6 @@ ixgbe_if_get_counter(if_ctx_t ctx, ift_counter cnt) return (0); case IFCOUNTER_IQDROPS: return (sc->iqdrops); - case IFCOUNTER_OQDROPS: - return (0); case IFCOUNTER_IERRORS: return (sc->ierrors); default: diff --git a/sys/dev/ixl/if_ixl.c b/sys/dev/ixl/if_ixl.c index 43c3af056b67..261f76055901 100644 --- a/sys/dev/ixl/if_ixl.c +++ b/sys/dev/ixl/if_ixl.c @@ -1785,7 +1785,7 @@ ixl_if_get_counter(if_ctx_t ctx, ift_counter cnt) case IFCOUNTER_OPACKETS: return (vsi->opackets); case IFCOUNTER_OERRORS: - return (vsi->oerrors); + return (if_get_counter_default(ifp, cnt) + vsi->oerrors); case IFCOUNTER_COLLISIONS: /* Collisions are by standard impossible in 40G/10G Ethernet */ return (0); @@ -1800,7 +1800,7 @@ ixl_if_get_counter(if_ctx_t ctx, ift_counter cnt) case IFCOUNTER_IQDROPS: return (vsi->iqdrops); case IFCOUNTER_OQDROPS: - return (vsi->oqdrops); + return (if_get_counter_default(ifp, cnt) + vsi->oqdrops); case IFCOUNTER_NOPROTO: return (vsi->noproto); default: diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 308ecad0a846..1e6d98291c04 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -3646,6 +3646,12 @@ defrag: bus_dmamap_unload(buf_tag, map); DBG_COUNTER_INC(encap_txq_avail_fail); DBG_COUNTER_INC(encap_txd_encap_fail); + if (ctx->ifc_sysctl_simple_tx) { + *m_headp = m_head = iflib_remove_mbuf(txq); + m_freem(*m_headp); + DBG_COUNTER_INC(tx_frees); + *m_headp = NULL; + } if ((txq->ift_task.gt_task.ta_flags & TASK_ENQUEUED) == 0) GROUPTASK_ENQUEUE(&txq->ift_task); return (ENOBUFS); @@ -4298,6 +4304,10 @@ iflib_if_transmit(if_t ifp, struct mbuf *m) ifmp_ring_check_drainage(txq->ift_br, TX_BATCH_SIZE); m_freem(m); DBG_COUNTER_INC(tx_frees); + if (err == ENOBUFS) + if_inc_counter(ifp, IFCOUNTER_OQDROPS, 1); + else + if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); } return (err); @@ -7141,6 +7151,11 @@ iflib_simple_transmit(if_t ifp, struct mbuf *m) bytes_sent += m->m_pkthdr.len; mcast_sent += !!(m->m_flags & M_MCAST); (void)iflib_txd_db_check(txq, true); + } else { + if (error == ENOBUFS) + if_inc_counter(ifp, IFCOUNTER_OQDROPS, 1); + else + if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); } (void)iflib_completed_tx_reclaim(txq, RECLAIM_THRESH(ctx)); mtx_unlock(&txq->ift_mtx); From nobody Wed Sep 10 14:22:11 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMNDh0lWxz62jRc; Wed, 10 Sep 2025 14:22:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMNDh0Bq0z41Vm; Wed, 10 Sep 2025 14:22:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757514132; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fRWHuXjNL0t8d+QNmWGCQbyFgNcENMR62ZOPqhMJB1k=; b=CCUD3Q9PF5UrkCfgV3fwpwIZvxqMwGCax3S24w0xSXqP7bAeLeVJ3++MMPyD8W0hMzX5Sc sCiG/yb0N5nD6QtoJIX/Hehsd5B8ZrnUQH53h6v2BdncuVkIS5mF5rGqDsZPmHPouhduf+ 3Q6hP9iTnplijft+iPmm8+UFnnjxIlTFL1QGJmJD9CApA1Li+wr1b9TGYhP4HuLyhDTjti C988JbSe9hlDDMEAnB/BTmCeN/Oq+8GNlqLL7m/L6/AYgimiZNNLla56rci+gw89i4ivS7 CXCe59fAFFfVfB96SHmJ/pp261OpxSij//pFCTFUIprswVMfQlmjyULtmAo4Qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757514132; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fRWHuXjNL0t8d+QNmWGCQbyFgNcENMR62ZOPqhMJB1k=; b=ESBbvspo03eqHYd1O9cGF/t/PEEqQn49AiGnuI6iiZtK6nirjX+IAneDXcmf/NImeCzdu2 h4nJqax+HudhcbFInxMMnnkqk3LEAVuLKmW7/VgT47AO1Mj6nWqbgx1cAJTAlfRyuP0AOK x0L4iOqsEzc/kIqRUnNrwnCd9FHgcjfrUsyCrfmupQ/hXLVNjtEEGOsfNlpB0QrWMv7rhv Z2Y/k0160b1HK8BGVfORxKh6VA024qP1Ikd0tLzVJoAV1Mc189XmBS1O+hYLN5QI39xJoN dASt43dW1jL8ZCemB2Nj869asi/fUpt0IBeBHb83foWzbFB+Tew4uGRxnXx1kw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757514132; a=rsa-sha256; cv=none; b=H3GUE9z2KkeEImiPv/ItuoRRFcYPMreIXfGMGbcd3YpDebIL1wf+GtGpQxGdPCAQTm4xVd DverQLvbM9vr8bEugG1N47EMLk2oaVSgFkI4hBM8DMz6yOtZv5HjxIvv50x1V73jLgYWLb Kk+9P5NcRMMAvWtvZBZD2c0nnxESZsxnjwf/H4iX4VetBcC/l3k02Rt4rXBWY4UGu3Gf0S uIOQDqgOJX8VbzpVxr/ZmzY9eLwgKt7HSZIsAJJ9hqyFHl7sOCQDtVoB9UceDaAEwNzubf JsfrFpRS+thjoIZ0XP54NTr/emmHy3/illCwMjwg6Cy8YWOfGHgFZd932ajoIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMNDg6mt9z8dd; Wed, 10 Sep 2025 14:22: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 58AEMB6P075855; Wed, 10 Sep 2025 14:22:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AEMBLi075852; Wed, 10 Sep 2025 14:22:11 GMT (envelope-from git) Date: Wed, 10 Sep 2025 14:22:11 GMT Message-Id: <202509101422.58AEMBLi075852@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: f48b1a34ef85 - main - Fix possible out of bounds read in armv8_crc32c List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: f48b1a34ef859ca17de0cc9149cc22e07364ef85 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f48b1a34ef859ca17de0cc9149cc22e07364ef85 commit f48b1a34ef859ca17de0cc9149cc22e07364ef85 Author: Zhongqi Zhao AuthorDate: 2025-09-10 14:21:38 +0000 Commit: John Baldwin CommitDate: 2025-09-10 14:21:38 +0000 Fix possible out of bounds read in armv8_crc32c Reviewed by: andrew Obtained from: CheriBSD Differential Revision: https://reviews.freebsd.org/D52401 --- sys/libkern/arm64/crc32c_armv8.S | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/libkern/arm64/crc32c_armv8.S b/sys/libkern/arm64/crc32c_armv8.S index 649afff4b711..430b24f7615a 100644 --- a/sys/libkern/arm64/crc32c_armv8.S +++ b/sys/libkern/arm64/crc32c_armv8.S @@ -39,14 +39,14 @@ ENTRY(armv8_crc32c) cbz w2, end tbz x1, #0x0, half_word_aligned sub w2, w2, 0x1 - ldr w10, [x1], #0x1 + ldrb w10, [x1], #0x1 crc32cb w0, w0, w10 half_word_aligned: cmp w2, #0x2 b.lo last_byte tbz x1, #0x1, word_aligned sub w2, w2, 0x2 - ldr w10, [x1], #0x2 + ldrh w10, [x1], #0x2 crc32ch w0, w0, w10 word_aligned: cmp w2, #0x4 @@ -69,11 +69,11 @@ last_word: crc32cw w0, w0, w10 last_half_word: tbz w2, #0x1, last_byte - ldr w10, [x1], #0x2 + ldrh w10, [x1], #0x2 crc32ch w0, w0, w10 last_byte: tbz w2, #0x0, end - ldr w10, [x1], #0x1 + ldrb w10, [x1], #0x1 crc32cb w0, w0, w10 end: ret From nobody Wed Sep 10 14:27:34 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMNLv0BqYz62jxl; Wed, 10 Sep 2025 14:27:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMNLt6bB4z431G; Wed, 10 Sep 2025 14:27:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757514455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSbeelb/va30XJmAupzVC7JHrx/vIc74loWyc2rntAU=; b=DBz1oeTYoidWkQpqlvZD82Na4sRcsVJHpwOhDlw9vY4ViQfBRV68JDV3JvW6vJcL2QQYLr 5kukchqpWgpwstqzLX5rlEpVrhu0KRyM6ZNTZj20al+weSKMf6N9nRhDiKlMxZdDPQ6Uis qkC+hSC3HC2uUMplGYakvuUz8ZT6f0yyYBT0DUAgcs6nGbBg+SHZXwIGC+z01zLtkIRvIE T3Qn4StYBbj2q/nyVNGtvZwuBSlcg38R/CWDd5XUi+ZDkMLQwS/gBVDThp+ayzn+Y4YejX f4XjYeA74FyqdbIhnR4CMhrkOt3qtlI1+ZkyZyygi/6tlL6Gaz/GDeCLgPo+Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757514455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSbeelb/va30XJmAupzVC7JHrx/vIc74loWyc2rntAU=; b=FXIHQMbhlp5phRXxqIYq9QdbTEtUijCphSzuh4PjgfwAab6XH9DVyaEWKgzFXwbjGt6wJq s/rT0kLC3me4J0TYpMrS9gOb1ACGFB6ztYg8EiyMCLq5NJrol9n29wlJTCC742CYZzvZVZ pioSfgGkbNxUtghhvrXBdNe+nagCnPfFAwCg2uqDAXP9/HChq9szc+ARLQLxtVa6o5jr0+ JPcKCLMsCF81dVyFV8NdfiK/fGNqFEVCHHW0v0n8oqXfc2dotGxFwT7vPRPxkjGNbzpF1g 7sRUeYQEDoHemkzhDZvbCoic+zHqFb3l7GqQhKGPL/i9k0Jl+K73kGsGJfmFLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757514455; a=rsa-sha256; cv=none; b=E30GDZ489ZEHPYtXrt+In1ZeQ1l5luCgwix7u7+yxVBMVhG2cd6vUx+1r0KMhWudiy9PNE SSPcLNh0sNZuJeQgnW/7Az5XkOen/bZRoAWgJmQLxhGCIxRiJlLPMKIvwqLeUMTkZeAwIa 3qTJgtoQDaUM+e4NUWdZ33VLyaMnehABZCVUX8vwIWS0sl5mpNRVPtJj4V1qNYw6qq9MGE UB1RK45LY8uADcvL2gHyBH3ZTTVahmV0sTGarcsywUrlIeQtPfmULm6YG0DHYH7DLjfvkS 7nvR9JktxP4WhDfdYGxO8s0VYnILUImwEgpFJ/e7AY32qGx9gwWkpEW77+mR1A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMNLt5lw0z9H6; Wed, 10 Sep 2025 14:27: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 58AERYud078798; Wed, 10 Sep 2025 14:27:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AERYXT078795; Wed, 10 Sep 2025 14:27:34 GMT (envelope-from git) Date: Wed, 10 Sep 2025 14:27:34 GMT Message-Id: <202509101427.58AERYXT078795@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 3c152a3de42a - main - fcntl(F_SETFL): Don't unconditionally invoke FIONBIO and FIOASYNC List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 3c152a3de42a7d077e8d19159b679c3fb7572820 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=3c152a3de42a7d077e8d19159b679c3fb7572820 commit 3c152a3de42a7d077e8d19159b679c3fb7572820 Author: John Baldwin AuthorDate: 2025-09-10 14:22:19 +0000 Commit: John Baldwin CommitDate: 2025-09-10 14:22:19 +0000 fcntl(F_SETFL): Don't unconditionally invoke FIONBIO and FIOASYNC Currently, F_SETFL always invokes FIONBIO and FIOASYNC ioctls on the file descriptor even if the state of the associated flag has not changed. This means that a character device driver that implements non-blocking I/O but not async I/O needs a handler for FIOASYNC that permits setting the value to 0. This also means that fcntl(fd, F_SETFL, fcntl(fd, F_GETFL)) can fail for a character device driver that does not handle both FIONBIO and FIOASYNC. These requirements are not obvious nor well documented. Instead, only invoke FIONBIO and FIOASYNC if the relevant flag changes state. This only requires a device driver to implement support for FIONBIO or FIOASYNC if it supports the corresponding flag. While here, if a request aims to toggle both F_NOBLOCK and F_ASYNC and FIOASYNC fails, pass the previous state of F_NONBLOCK to FIONBIO instead of always disabling non-blocking I/O and then possibly reverting the flag back to on in f_flags. Reviewed by: mckusick, imp, kib, emaste Differential Revision: https://reviews.freebsd.org/D52403 --- sys/kern/kern_descrip.c | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 057235574eb5..2a833d2eafbe 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -665,20 +665,26 @@ kern_fcntl(struct thread *td, int fd, int cmd, intptr_t arg) } while (atomic_cmpset_int(&fp->f_flag, flg, tmp) == 0); got_set = tmp & ~flg; got_cleared = flg & ~tmp; - tmp = fp->f_flag & FNONBLOCK; - error = fo_ioctl(fp, FIONBIO, &tmp, td->td_ucred, td); - if (error != 0) - goto revert_f_setfl; - tmp = fp->f_flag & FASYNC; - error = fo_ioctl(fp, FIOASYNC, &tmp, td->td_ucred, td); - if (error == 0) { - fdrop(fp, td); - break; + if (((got_set | got_cleared) & FNONBLOCK) != 0) { + tmp = fp->f_flag & FNONBLOCK; + error = fo_ioctl(fp, FIONBIO, &tmp, td->td_ucred, td); + if (error != 0) + goto revert_flags; + } + if (((got_set | got_cleared) & FASYNC) != 0) { + tmp = fp->f_flag & FASYNC; + error = fo_ioctl(fp, FIOASYNC, &tmp, td->td_ucred, td); + if (error != 0) + goto revert_nonblock; + } + fdrop(fp, td); + break; +revert_nonblock: + if (((got_set | got_cleared) & FNONBLOCK) != 0) { + tmp = ~fp->f_flag & FNONBLOCK; + (void)fo_ioctl(fp, FIONBIO, &tmp, td->td_ucred, td); } - atomic_clear_int(&fp->f_flag, FNONBLOCK); - tmp = 0; - (void)fo_ioctl(fp, FIONBIO, &tmp, td->td_ucred, td); -revert_f_setfl: +revert_flags: do { tmp = flg = fp->f_flag; tmp &= ~FCNTLFLAGS; From nobody Wed Sep 10 14:46:46 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMNn23nc4z62kXC; Wed, 10 Sep 2025 14:46:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMNn23FG7z4664; Wed, 10 Sep 2025 14:46:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757515606; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DqVaezeALXTKW4HbADqD4D6C73WMGxh/1ftBoE91Uxw=; b=yWQcYGqiYRS1PSkenDyNOaREmEEvS34HY11ijP5hLXxnctexgaDE+r5lQsfpOqa27zCsYe Pm6yead6XgZzgLlR06jVjgEYDPnfHtzenC3O9w7TxWLcVUCEXZ7gwJPQrc6+zfHpHyGkgs qLwIBWJi1YtUsB3JocN5CZu1eZxTuJJLpPrYzX9112vkSC/UdAhqbVYZtbXXiLvIlIvNNe R6pp1p/cwvp3Y10frtP1qEvpjIiFn97ILdWxP/MlRAaGWQFc/lFHD3QSR0LngkySdqZLzP I7rRmaLHPCW+tlwclgrI4ARZJ4SOYOUmJNsEm0HHXDINavWfFTL4DWxsNSMltg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757515606; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DqVaezeALXTKW4HbADqD4D6C73WMGxh/1ftBoE91Uxw=; b=u2mSRlY4MTUCauGK40G+eFwcvrRuw+jeQ5IeuRG2IBu+LqJF6HXoTEPk5EQcta6rIPnAdG WTXTfgQwp9nz6Y3gdSfn+BaATmIDv6zQRCh/+ydlvI0bS0FPe+SCeuAQhV08LplDx9gFCD +AknmDVu+0L77M5bBe3e4tanXaoIYk9m8Kew5YrEiHZCFQi5SHv2gXsVPmbKc/KmoK1Fjx hiYB+61RpzWPtNzPCIC0HJ8GehlNqa9el4Q1CpJoifmcEnF+bN/ga+YmdglSMiRZvI0ZzC DCZgxESpoXj9+NzIFQdDxx1bUzGyrYGCbrKVAPWmHlREA/g8LGeKx2JugHbqtg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757515606; a=rsa-sha256; cv=none; b=c6GqZo+uB9hoeNWm/EySmQH+aaAbtPzHxnJWnQoSe3PRmYY1UAeJwgzIjyCAJfbyxT04M2 3FOkO92GojbuKwLCLJlrwihhaIzWiaxXHbTsH5gYydWkhnDqhf0F0PiAWTHO3KLKRgCszA tTOfnVzIKBkCABK2LUfWAZGH3SaV0tC3wFQlDBj2V7bSeDa+HKE7tPWjWOUlosAr5axPEh /b3U3HTJgdQIknWMw0YNO+gZOR19BtVwIqw5x58OMzI6vosBMih1YAiLqGBk/NFe5PPpX+ BLhmo7ovIjyBvjsQ7CEb+KOcpYymY7QQeqXKZn3AWnUXimGKnEwT3p3GVJ7d0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMNn22rxDz9dV; Wed, 10 Sep 2025 14:46:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58AEkkG2016266; Wed, 10 Sep 2025 14:46:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AEkkVl016263; Wed, 10 Sep 2025 14:46:46 GMT (envelope-from git) Date: Wed, 10 Sep 2025 14:46:46 GMT Message-Id: <202509101446.58AEkkVl016263@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 5f9a05e57405 - main - tslog: Move sysinit_tslog_shim() into kern_tslog.c List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 5f9a05e574050c8b3f6b444311a12e8fb293ad1a Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=5f9a05e574050c8b3f6b444311a12e8fb293ad1a commit 5f9a05e574050c8b3f6b444311a12e8fb293ad1a Author: Zhenlei Huang AuthorDate: 2025-09-10 14:44:36 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-10 14:44:36 +0000 tslog: Move sysinit_tslog_shim() into kern_tslog.c struct sysinit's func pointer requires its address, thus a real function is generated in every translation unit when the source file has SYSINITs declared. That results in plenty of identical sysinit_tslog_shim in the final kernel file, in which only one is used and others are left useless. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52413 --- sys/kern/kern_tslog.c | 10 ++++++++++ sys/sys/kernel.h | 11 ++--------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/sys/kern/kern_tslog.c b/sys/kern/kern_tslog.c index fbf81d423b95..09070eea284f 100644 --- a/sys/kern/kern_tslog.c +++ b/sys/kern/kern_tslog.c @@ -220,3 +220,13 @@ SYSCTL_PROC(_debug, OID_AUTO, tslog_user, CTLTYPE_STRING|CTLFLAG_RD|CTLFLAG_MPSAFE|CTLFLAG_SKIP, 0, 0, sysctl_debug_tslog_user, "", "Dump recorded userland event timestamps"); + +void +sysinit_tslog_shim(const void *data) +{ + const struct sysinit_tslog *x = data; + + tslog(curthread, TS_ENTER, "SYSINIT", x->name); + (x->func)(x->data); + tslog(curthread, TS_EXIT, "SYSINIT", x->name); +} diff --git a/sys/sys/kernel.h b/sys/sys/kernel.h index 675d1195043b..417afd4dbbe4 100644 --- a/sys/sys/kernel.h +++ b/sys/sys/kernel.h @@ -249,15 +249,8 @@ struct sysinit_tslog { const void *data; const char *name; }; -static inline void -sysinit_tslog_shim(const void *data) -{ - const struct sysinit_tslog *x = data; - - TSRAW(curthread, TS_ENTER, "SYSINIT", x->name); - (x->func)(x->data); - TSRAW(curthread, TS_EXIT, "SYSINIT", x->name); -} +void sysinit_tslog_shim(const void *); + #define C_SYSINIT(uniquifier, subsystem, order, func, ident) \ static struct sysinit_tslog uniquifier ## _sys_init_tslog = { \ func, \ From nobody Wed Sep 10 15:45:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQ4M0y4Zz66VnW; Wed, 10 Sep 2025 15:45: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQ4M07bzz3H3w; Wed, 10 Sep 2025 15:45:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757519107; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Wq0rmBPu8HVae/YIiB/yqlx6uikKkfwj4pCQBqHoXiA=; b=x1AvL0GlHdz9V7GnIBclmgBQUlWYYAaB97g83XxwdmFgAbW/m5JO21xpm4WJ3cPWEzQfGk CaHFyQ/Z5hyTQmj4UbxzOUdzl90MD76S5pJaRXVisG5hWZJOnBuooSe8WYCNJ0LRBlZpmX NMNdhvblh3PyUOPUT6W8k/OoTxRtMvRDWKIWHD/KdIh+miSlEInZcEdLjoadpI4YXnctCw XADbX09QAVnYTwdIdkQmQ1KBXezbSY3fejhTbPn4zU4hu0BZNQDklN3Lj44kz3SNNfH2rG t3q5xP6PjQ+85jhBIDdguGpKpE23r6dwFs0MFdX4SvX4AMqN1R8PRPe8Nbc7BA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757519107; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Wq0rmBPu8HVae/YIiB/yqlx6uikKkfwj4pCQBqHoXiA=; b=yEW+XmYyc3mwPlSgCCpYPoTFdcKawJpqxgevqcQeUfuAMyWdOe7vYu9RoMQ12JM8lymBMy AHnUMHBaknzg5JDWWYMyyCPzT8E/bQ46rpkUGittB45d+HUdmMAgAc9GOWHpGdma4Ex775 yHHaCZQSTaJZfQXX+0srLURD9LkTIkfx3G5wzrsG8g791PVEHsEeMNH6EkbDY7yWI+qWgo cZqJ4K6Dp9umOTY8zLwvgUXCKeXbb+faWOp9ZuUr0iEYjbA0xIc65CwWX78//aRUKzat5d gLA/IkJa08/0lH9jz5QofjUddkqQbILB+QgzxtkNLMK1alO4Z1kJr03H2qus5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757519107; a=rsa-sha256; cv=none; b=yxy0vyn9DFJwVXkZenNiIAl2qlj3Uai4FGPYiUvZyNAijLXYwZKSIEbaZsXJ2s9Liqlsz0 AtYxhACtBBsit5MXtLcD/PA1BplYhpdzUdCqWBeHQqsGvo7T2ZJVCULzMMdRK70q7Q28l/ jc9V1NzU5YxAHw49gT8P9O8wFZnhNozv5nO5rarsxG/ol0k2cIpWSV/nu6AXgxeACj4HNa dYFHQfCAjaqiK7irb+iQU/uGG4Cx/H0Q6M5hQaYevxOA2dlauEKv/cpfz8D4OLFvazEtDj d0bNGqXiBh9D3Pip21X4ntFI+izg/x+3zs2SCw6mTftH4HDbmREUJdxsYJGdwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQ4L6X3xzBxW; Wed, 10 Sep 2025 15:45: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 58AFj668027938; Wed, 10 Sep 2025 15:45:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AFj6h8027931; Wed, 10 Sep 2025 15:45:06 GMT (envelope-from git) Date: Wed, 10 Sep 2025 15:45:06 GMT Message-Id: <202509101545.58AFj6h8027931@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Martin Matuska Subject: git: 70999532eea5 - main - zfs: merge openzfs/zfs@7939bad5e List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 70999532eea52da609e90c003b583ee0bfa5246b Auto-Submitted: auto-generated The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=70999532eea52da609e90c003b583ee0bfa5246b commit 70999532eea52da609e90c003b583ee0bfa5246b Merge: 5f9a05e57405 7939bad5e792 Author: Martin Matuska AuthorDate: 2025-09-10 15:28:34 +0000 Commit: Martin Matuska CommitDate: 2025-09-10 15:28:34 +0000 zfs: merge openzfs/zfs@7939bad5e Notable upstream pull request merges: #15869 ee7c36264 Add description of default sorting behavior to zfs_list.8 #17375 ced72fdd6 tunables: remove legacy FreeBSD aliases #17600 1da2c30be Update pam_zfs_key.c default path for FreeBSD #17632 b6bd3228b Synchronize the update of feature refcount #17645 59f8f5dfe zfs_vnops_os.c: Add support for the _PC_CLONE_BLKSIZE name #17665 0d54ae288 zdb: Fix format strings on 32-bit systems #17673 976f76534 Update compatibility.d files #17699 e3c3e86c0 Fix wrong dedup_table_size for legacy dedup #17704 e29bfa5bd Fix warnings about sha2_is_supported on FreeBSD/i386 #17706 a2424312c Fix the build on 32-bit FreeBSD with GCC Obtained from: OpenZFS OpenZFS commit: 7939bad5e79225288a2580e8ea217f5c6f616db2 .../.github/workflows/scripts/generate-ci-type.py | 2 +- sys/contrib/openzfs/.github/workflows/zfs-qemu.yml | 9 +- sys/contrib/openzfs/META | 4 +- sys/contrib/openzfs/Makefile.am | 4 + sys/contrib/openzfs/cmd/Makefile.am | 6 +- sys/contrib/openzfs/cmd/arc_summary | 7 + sys/contrib/openzfs/cmd/arcstat.in | 9 + sys/contrib/openzfs/cmd/zdb/zdb.c | 2 +- sys/contrib/openzfs/cmd/zhack.c | 4 + sys/contrib/openzfs/cmd/zpool/Makefile.am | 5 +- .../openzfs/cmd/zpool/compatibility.d/openzfs-2.4 | 48 ++++ sys/contrib/openzfs/cmd/zstream/Makefile.am | 5 +- sys/contrib/openzfs/config/always-arch.m4 | 17 ++ .../openzfs/config/always-compiler-options.m4 | 62 ++++-- sys/contrib/openzfs/config/kernel-blkdev.m4 | 9 +- .../openzfs/config/kernel-dentry-operations.m4 | 12 +- sys/contrib/openzfs/config/kernel.m4 | 2 + sys/contrib/openzfs/config/user-statx.m4 | 6 +- sys/contrib/openzfs/config/zfs-build.m4 | 2 + .../contrib/debian/openzfs-zfsutils.install | 2 + sys/contrib/openzfs/contrib/debian/rules.in | 2 + .../openzfs/contrib/initramfs/hooks/zfsunlock.in | 9 + .../openzfs/contrib/pam_zfs_key/pam_zfs_key.c | 4 + .../include/os/linux/kernel/linux/dcache_compat.h | 26 --- .../openzfs/include/os/linux/spl/sys/stat.h | 2 +- sys/contrib/openzfs/include/sys/zio.h | 3 +- sys/contrib/openzfs/include/sys/zvol.h | 2 +- .../openzfs/lib/libspl/include/os/linux/sys/stat.h | 2 +- sys/contrib/openzfs/man/man1/arcstat.1 | 4 +- sys/contrib/openzfs/man/man1/cstyle.1 | 2 +- sys/contrib/openzfs/man/man1/zhack.1 | 2 +- sys/contrib/openzfs/man/man1/ztest.1 | 2 +- sys/contrib/openzfs/man/man4/spl.4 | 2 +- sys/contrib/openzfs/man/man4/zfs.4 | 2 +- sys/contrib/openzfs/man/man5/vdev_id.conf.5 | 2 +- sys/contrib/openzfs/man/man7/dracut.zfs.7 | 2 +- sys/contrib/openzfs/man/man7/vdevprops.7 | 2 +- sys/contrib/openzfs/man/man7/zfsconcepts.7 | 2 +- sys/contrib/openzfs/man/man7/zfsprops.7 | 2 +- sys/contrib/openzfs/man/man7/zpool-features.7 | 2 +- sys/contrib/openzfs/man/man7/zpoolconcepts.7 | 2 +- sys/contrib/openzfs/man/man7/zpoolprops.7 | 2 +- sys/contrib/openzfs/man/man8/zdb.8 | 2 +- sys/contrib/openzfs/man/man8/zed.8.in | 2 +- sys/contrib/openzfs/man/man8/zfs-allow.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-bookmark.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-clone.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-create.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-destroy.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-diff.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-hold.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-jail.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-list.8 | 47 ++-- sys/contrib/openzfs/man/man8/zfs-load-key.8 | 2 +- .../openzfs/man/man8/zfs-mount-generator.8.in | 2 +- sys/contrib/openzfs/man/man8/zfs-mount.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-project.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-promote.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-rename.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-rewrite.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-send.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-set.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-share.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-snapshot.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-upgrade.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-userspace.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-wait.8 | 2 +- sys/contrib/openzfs/man/man8/zfs-zone.8 | 2 +- sys/contrib/openzfs/man/man8/zfs.8 | 2 +- sys/contrib/openzfs/man/man8/zfs_ids_to_path.8 | 2 +- sys/contrib/openzfs/man/man8/zgenhostid.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-attach.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-checkpoint.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-clear.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-create.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-destroy.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-detach.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-export.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-get.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-history.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-import.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-initialize.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-iostat.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-labelclear.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-list.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-offline.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-reguid.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-remove.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-reopen.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-replace.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-resilver.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-scrub.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-split.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-status.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-sync.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-trim.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-upgrade.8 | 2 +- sys/contrib/openzfs/man/man8/zpool-wait.8 | 2 +- sys/contrib/openzfs/man/man8/zpool.8 | 2 +- sys/contrib/openzfs/man/man8/zstream.8 | 2 +- sys/contrib/openzfs/module/Kbuild.in | 2 +- .../openzfs/module/icp/algs/sha2/sha256_impl.c | 3 + .../openzfs/module/icp/algs/sha2/sha512_impl.c | 3 + .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 244 --------------------- .../openzfs/module/os/freebsd/zfs/zfs_vnops_os.c | 19 ++ .../openzfs/module/os/linux/zfs/zpl_ctldir.c | 55 ++++- sys/contrib/openzfs/module/zfs/arc.c | 32 +-- sys/contrib/openzfs/module/zfs/ddt.c | 8 +- sys/contrib/openzfs/module/zfs/ddt_log.c | 12 +- sys/contrib/openzfs/module/zfs/dmu_zfetch.c | 10 +- sys/contrib/openzfs/module/zfs/vdev.c | 2 +- sys/contrib/openzfs/module/zfs/vdev_queue.c | 2 +- sys/contrib/openzfs/module/zfs/vdev_removal.c | 4 +- sys/contrib/openzfs/module/zfs/zfeature.c | 5 + sys/contrib/openzfs/module/zfs/zfs_ioctl.c | 4 +- sys/contrib/openzfs/module/zfs/zvol.c | 23 +- sys/contrib/openzfs/rpm/generic/zfs.spec.in | 2 + sys/contrib/openzfs/tests/runfiles/linux.run | 2 +- .../openzfs/tests/zfs-tests/include/commands.cfg | 2 + .../openzfs/tests/zfs-tests/include/tunables.cfg | 4 +- .../openzfs/tests/zfs-tests/tests/Makefile.am | 1 + .../tests/functional/fault/fault_limits.ksh | 2 +- .../tests/functional/mount/mount_loopback.ksh | 111 ++++++++++ sys/modules/zfs/zfs_config.h | 12 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 125 files changed, 555 insertions(+), 469 deletions(-) diff --cc sys/contrib/openzfs/cmd/zpool/compatibility.d/openzfs-2.4 index 000000000000,3fbd91014c95..3fbd91014c95 mode 000000,100644..100644 --- a/sys/contrib/openzfs/cmd/zpool/compatibility.d/openzfs-2.4 +++ b/sys/contrib/openzfs/cmd/zpool/compatibility.d/openzfs-2.4 diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/mount/mount_loopback.ksh index 000000000000,86adef7ea032..86adef7ea032 mode 000000,100755..100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/mount/mount_loopback.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/mount/mount_loopback.ksh diff --cc sys/modules/zfs/zfs_config.h index 72167b752e53,000000000000..8b3e64eba2f3 mode 100644,000000..100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@@ -1,879 -1,0 +1,879 @@@ +/* + */ + +/* zfs_config.h. Generated from zfs_config.h.in by configure. */ +/* zfs_config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* __assign_str() has one arg */ +/* #undef HAVE_1ARG_ASSIGN_STR */ + +/* lookup_bdev() wants 1 arg */ +/* #undef HAVE_1ARG_LOOKUP_BDEV */ + +/* kernel has access_ok with 'type' parameter */ +/* #undef HAVE_ACCESS_OK_TYPE */ + +/* add_disk() returns int */ +/* #undef HAVE_ADD_DISK_RET */ + +/* Define if host toolchain supports AES */ +#define HAVE_AES 1 + +/* Define if you have [rt] */ +#define HAVE_AIO_H 1 + +#ifdef __amd64__ +#ifndef RESCUE +/* Define if host toolchain supports AVX */ +#define HAVE_AVX 1 +#endif + +/* Define if host toolchain supports AVX2 */ +#define HAVE_AVX2 1 + +/* Define if host toolchain supports AVX512BW */ +#define HAVE_AVX512BW 1 + +/* Define if host toolchain supports AVX512CD */ +#define HAVE_AVX512CD 1 + +/* Define if host toolchain supports AVX512DQ */ +#define HAVE_AVX512DQ 1 + +/* Define if host toolchain supports AVX512ER */ +#define HAVE_AVX512ER 1 + +/* Define if host toolchain supports AVX512F */ +#define HAVE_AVX512F 1 + +/* Define if host toolchain supports AVX512IFMA */ +#define HAVE_AVX512IFMA 1 + +/* Define if host toolchain supports AVX512PF */ +#define HAVE_AVX512PF 1 + +/* Define if host toolchain supports AVX512VBMI */ +#define HAVE_AVX512VBMI 1 + +/* Define if host toolchain supports AVX512VL */ +#define HAVE_AVX512VL 1 +#endif + +/* backtrace() is available */ +/* #undef HAVE_BACKTRACE */ + +/* bdevname() is available */ +/* #undef HAVE_BDEVNAME */ + +/* bdev_check_media_change() exists */ +/* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ + +/* bdev_file_open_by_path() exists */ +/* #undef HAVE_BDEV_FILE_OPEN_BY_PATH */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_63 */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_OLD */ + +/* bdev_kobj() exists */ +/* #undef HAVE_BDEV_KOBJ */ + +/* bdev_max_discard_sectors() is available */ +/* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ + +/* bdev_max_secure_erase_sectors() is available */ +/* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ + +/* bdev_nr_bytes() is available */ +/* #undef HAVE_BDEV_NR_BYTES */ + +/* bdev_open_by_path() exists */ +/* #undef HAVE_BDEV_OPEN_BY_PATH */ + +/* bdev_release() exists */ +/* #undef HAVE_BDEV_RELEASE */ + +/* block_device_operations->submit_bio() returns void */ +/* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ + +/* bdev_whole() is available */ +/* #undef HAVE_BDEV_WHOLE */ + +/* bio_alloc() takes 4 arguments */ +/* #undef HAVE_BIO_ALLOC_4ARG */ + +/* bio->bi_bdev->bd_disk exists */ +/* #undef HAVE_BIO_BDEV_DISK */ + +/* bio_*_io_acct() available */ +/* #undef HAVE_BIO_IO_ACCT */ + +/* bio_max_segs() is implemented */ +/* #undef HAVE_BIO_MAX_SEGS */ + +/* bio_set_dev() GPL-only */ +/* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ + +/* bio_set_dev() is a macro */ +/* #undef HAVE_BIO_SET_DEV_MACRO */ + +/* bio_set_op_attrs is available */ +/* #undef HAVE_BIO_SET_OP_ATTRS */ + +/* blkdev_get_by_path() exists and takes 4 args */ +/* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ + +/* blkdev_get_by_path() handles ERESTARTSYS */ +/* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ + +/* __blkdev_issue_discard(flags) is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD_ASYNC_FLAGS */ + +/* __blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD_ASYNC_NOFLAGS */ + +/* blkdev_issue_discard(flags) is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD_FLAGS */ + +/* blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD_NOFLAGS */ + +/* blkdev_issue_secure_erase() is available */ +/* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ + +/* blkdev_put() exists */ +/* #undef HAVE_BLKDEV_PUT */ + +/* blkdev_put() accepts void* as arg 2 */ +/* #undef HAVE_BLKDEV_PUT_HOLDER */ + +/* struct queue_limits has a features field */ +/* #undef HAVE_BLKDEV_QUEUE_LIMITS_FEATURES */ + +/* blkdev_reread_part() exists */ +/* #undef HAVE_BLKDEV_REREAD_PART */ + +/* blkg_tryget() is available */ +/* #undef HAVE_BLKG_TRYGET */ + +/* blkg_tryget() GPL-only */ +/* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ + +/* blk_alloc_disk() exists */ +/* #undef HAVE_BLK_ALLOC_DISK */ + +/* blk_alloc_disk() exists and takes 2 args */ +/* #undef HAVE_BLK_ALLOC_DISK_2ARG */ + +/* blk_alloc_queue() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ + +/* blk_alloc_queue_rh() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ + +/* blk_cleanup_disk() exists */ +/* #undef HAVE_BLK_CLEANUP_DISK */ + +/* blk_mode_t is defined */ +/* #undef HAVE_BLK_MODE_T */ + +/* block multiqueue hardware context is cached in struct request */ +/* #undef HAVE_BLK_MQ_RQ_HCTX */ + +/* blk queue backing_dev_info is dynamic */ +/* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ + +/* blk_queue_discard() is available */ +/* #undef HAVE_BLK_QUEUE_DISCARD */ + +/* backing_dev_info is available through queue gendisk */ +/* #undef HAVE_BLK_QUEUE_DISK_BDI */ + +/* blk_queue_secure_erase() is available */ +/* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ + +/* blk_queue_update_readahead() exists */ +/* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ + +/* BLK_STS_RESV_CONFLICT is defined */ +/* #undef HAVE_BLK_STS_RESV_CONFLICT */ + +/* Define if release() in block_device_operations takes 1 arg */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ + +/* Define if revalidate_disk() in block_device_operations */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* check_disk_change() exists */ +/* #undef HAVE_CHECK_DISK_CHANGE */ + +/* copy_splice_read exists */ +/* #undef HAVE_COPY_SPLICE_READ */ + +/* cpu_has_feature() is GPL-only */ +/* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* DECLARE_EVENT_CLASS() is available */ +/* #undef HAVE_DECLARE_EVENT_CLASS */ + +/* 3-arg dequeue_signal() takes a type argument */ +/* #undef HAVE_DEQUEUE_SIGNAL_3ARG_TYPE */ + +/* dequeue_signal() takes 4 arguments */ +/* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ + +/* lookup_bdev() wants dev_t arg */ +/* #undef HAVE_DEVT_LOOKUP_BDEV */ + +/* disk_check_media_change() exists */ +/* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ + +/* disk_*_io_acct() available */ +/* #undef HAVE_DISK_IO_ACCT */ + +/* disk_update_readahead() exists */ +/* #undef HAVE_DISK_UPDATE_READAHEAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* dops->d_revalidate() takes 4 args */ +/* #undef HAVE_D_REVALIDATE_4ARGS */ + ++/* Define if d_set_d_op() is available */ ++/* #undef HAVE_D_SET_D_OP */ ++ +/* Define to 1 if you have the 'execvpe' function. */ +#define HAVE_EXECVPE 1 + +/* fault_in_iov_iter_readable() is available */ +/* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ + +/* file->f_version exists */ +/* #undef HAVE_FILE_F_VERSION */ + +/* flush_dcache_page() is GPL-only */ +/* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ + +/* Define if compiler supports -Wformat-overflow */ +/* #undef HAVE_FORMAT_OVERFLOW */ + +/* fsync_bdev() is declared in include/blkdev.h */ +/* #undef HAVE_FSYNC_BDEV */ + +/* yes */ +/* #undef HAVE_GENERIC_FADVISE */ + +/* generic_fillattr requires struct mnt_idmap* */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP */ + +/* generic_fillattr requires struct mnt_idmap* and u32 request_mask */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP_REQMASK */ + +/* generic_fillattr requires struct user_namespace* */ +/* #undef HAVE_GENERIC_FILLATTR_USERNS */ + +/* generic_*_io_acct() 4 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_4ARG */ + +/* GENHD_FL_EXT_DEVT flag is available */ +/* #undef HAVE_GENHD_FL_EXT_DEVT */ + +/* GENHD_FL_NO_PART flag is available */ +/* #undef HAVE_GENHD_FL_NO_PART */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* Define to 1 if you have the 'gettid' function. */ +/* #undef HAVE_GETTID */ + +/* iops->get_acl() exists */ +/* #undef HAVE_GET_ACL */ + +/* iops->get_acl() takes rcu */ +/* #undef HAVE_GET_ACL_RCU */ + +/* has iops->get_inode_acl() */ +/* #undef HAVE_GET_INODE_ACL */ + +/* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ +/* #undef HAVE_IATTR_VFSID */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* iops->getattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_GETATTR */ + +/* iops->setattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_SETATTR */ + +/* APIs for idmapped mount are present */ +/* #undef HAVE_IDMAP_MNT_API */ + +/* mnt_idmap does not have user_namespace */ +/* #undef HAVE_IDMAP_NO_USERNS */ + +/* Define if compiler supports -Wimplicit-fallthrough */ +/* #undef HAVE_IMPLICIT_FALLTHROUGH */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_INFINITE_RECURSION */ + +/* inode_get_atime() exists in linux/fs.h */ +/* #undef HAVE_INODE_GET_ATIME */ + +/* inode_get_ctime() exists in linux/fs.h */ +/* #undef HAVE_INODE_GET_CTIME */ + +/* inode_get_mtime() exists in linux/fs.h */ +/* #undef HAVE_INODE_GET_MTIME */ + +/* inode_owner_or_capable() exists */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE */ + +/* inode_owner_or_capable() takes mnt_idmap */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ + +/* inode_owner_or_capable() takes user_ns */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ + +/* inode_set_atime_to_ts() exists in linux/fs.h */ +/* #undef HAVE_INODE_SET_ATIME_TO_TS */ + +/* inode_set_ctime_to_ts() exists in linux/fs.h */ +/* #undef HAVE_INODE_SET_CTIME_TO_TS */ + +/* inode_set_mtime_to_ts() exists in linux/fs.h */ +/* #undef HAVE_INODE_SET_MTIME_TO_TS */ + +/* timestamp_truncate() exists */ +/* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* iops->create() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_CREATE_IDMAP */ + +/* iops->create() takes struct user_namespace* */ +/* #undef HAVE_IOPS_CREATE_USERNS */ + +/* iops->mkdir() returns struct dentry* */ +/* #undef HAVE_IOPS_MKDIR_DENTRY */ + +/* iops->mkdir() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKDIR_IDMAP */ + +/* iops->mkdir() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKDIR_USERNS */ + +/* iops->mknod() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKNOD_IDMAP */ + +/* iops->mknod() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKNOD_USERNS */ + +/* iops->permission() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_PERMISSION_IDMAP */ + +/* iops->permission() takes struct user_namespace* */ +/* #undef HAVE_IOPS_PERMISSION_USERNS */ + +/* iops->rename() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_RENAME_IDMAP */ + +/* iops->rename() takes struct user_namespace* */ +/* #undef HAVE_IOPS_RENAME_USERNS */ + +/* iops->symlink() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_SYMLINK_IDMAP */ + +/* iops->symlink() takes struct user_namespace* */ +/* #undef HAVE_IOPS_SYMLINK_USERNS */ + +/* iov_iter_get_pages2() is available */ +/* #undef HAVE_IOV_ITER_GET_PAGES2 */ + +/* iov_iter_type() is available */ +/* #undef HAVE_IOV_ITER_TYPE */ + +/* Define to 1 if you have the 'issetugid' function. */ +#define HAVE_ISSETUGID 1 + +/* iter_iov() is available */ +/* #undef HAVE_ITER_IOV */ + +/* iter_is_ubuf() is available */ +/* #undef HAVE_ITER_IS_UBUF */ + +/* kernel has kernel_fpu_* functions */ +/* #undef HAVE_KERNEL_FPU */ + +/* kernel has asm/fpu/api.h */ +/* #undef HAVE_KERNEL_FPU_API_HEADER */ + +/* kernel fpu internal */ +/* #undef HAVE_KERNEL_FPU_INTERNAL */ + +/* kernel has asm/fpu/internal.h */ +/* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_KERNEL_INFINITE_RECURSION */ + +/* kernel defines intptr_t */ +/* #undef HAVE_KERNEL_INTPTR_T */ + +/* kernel has kernel_neon_* functions */ +/* #undef HAVE_KERNEL_NEON */ + +/* kernel does stack verification */ +/* #undef HAVE_KERNEL_OBJTOOL */ + +/* kernel has linux/objtool.h */ +/* #undef HAVE_KERNEL_OBJTOOL_HEADER */ + +/* strlcpy() exists */ +/* #undef HAVE_KERNEL_STRLCPY */ + +/* kernel has kmap_local_page */ +/* #undef HAVE_KMAP_LOCAL_PAGE */ + +/* Define if you have [aio] */ +/* #undef HAVE_LIBAIO */ + +/* Define if you have [blkid] */ +/* #undef HAVE_LIBBLKID */ + +/* Define if you have [crypto] */ +#define HAVE_LIBCRYPTO 1 + +/* Define if you have [tirpc] */ +/* #undef HAVE_LIBTIRPC */ + +/* Define if you have [udev] */ +/* #undef HAVE_LIBUDEV */ + +/* Define if you have [unwind] */ +/* #undef HAVE_LIBUNWIND */ + +/* libunwind has unw_get_elf_filename */ +/* #undef HAVE_LIBUNWIND_ELF */ + +/* Define if you have [uuid] */ +/* #undef HAVE_LIBUUID */ + +/* building against unsupported kernel version */ +/* #undef HAVE_LINUX_EXPERIMENTAL */ + - /* Define to 1 if you have the header file. */ - /* #undef HAVE_LINUX_STAT_H */ - +/* makedev() is declared in sys/mkdev.h */ +/* #undef HAVE_MAKEDEV_IN_MKDEV */ + +/* makedev() is declared in sys/sysmacros.h */ +/* #undef HAVE_MAKEDEV_IN_SYSMACROS */ + +/* Noting that make_request_fn() returns blk_qc_t */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ + +/* Define to 1 if you have the 'mlockall' function. */ +#define HAVE_MLOCKALL 1 + +/* PG_error flag is available */ +/* #undef HAVE_MM_PAGE_FLAG_ERROR */ + +/* page_mapping() is available */ +/* #undef HAVE_MM_PAGE_MAPPING */ + +/* page_size() is available */ +/* #undef HAVE_MM_PAGE_SIZE */ + +/* Define if host toolchain supports MOVBE */ +#define HAVE_MOVBE 1 + +/* folio_wait_bit() exists */ +/* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ + +/* readahead_page() exists */ +/* #undef HAVE_PAGEMAP_READAHEAD_PAGE */ + +/* part_to_dev() exists */ +/* #undef HAVE_PART_TO_DEV */ + +/* iops->getattr() takes a path */ +/* #undef HAVE_PATH_IOPS_GETATTR */ + +/* Define if host toolchain supports PCLMULQDQ */ +#define HAVE_PCLMULQDQ 1 + +/* pin_user_pages_unlocked() is available */ +/* #undef HAVE_PIN_USER_PAGES_UNLOCKED */ + +/* proc_handler ctl_table arg is const */ +/* #undef HAVE_PROC_HANDLER_CTL_TABLE_CONST */ + +/* proc_ops structure exists */ +/* #undef HAVE_PROC_OPS_STRUCT */ + +/* If available, contains the Python version number currently in use. */ +/* #undef HAVE_PYTHON */ + +/* qat is enabled and existed */ +/* #undef HAVE_QAT */ + +/* struct reclaim_state has reclaimed */ +/* #undef HAVE_RECLAIM_STATE_RECLAIMED */ + +/* register_shrinker is vararg */ +/* #undef HAVE_REGISTER_SHRINKER_VARARG */ + +/* register_sysctl_sz exists */ +/* #undef HAVE_REGISTER_SYSCTL_SZ */ + +/* register_sysctl_table exists */ +/* #undef HAVE_REGISTER_SYSCTL_TABLE */ + +/* iops->rename() wants flags */ +/* #undef HAVE_RENAME_WANTS_FLAGS */ + +/* revalidate_disk() is available */ +/* #undef HAVE_REVALIDATE_DISK */ + +/* revalidate_disk_size() is available */ +/* #undef HAVE_REVALIDATE_DISK_SIZE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_MODULES_H 1 + +/* setattr_prepare() accepts mnt_idmap */ +/* #undef HAVE_SETATTR_PREPARE_IDMAP */ + +/* setattr_prepare() is available, doesn't accept user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ + +/* setattr_prepare() accepts user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_USERNS */ + +/* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ +/* #undef HAVE_SET_ACL_IDMAP_DENTRY */ + +/* iops->set_acl() takes 4 args */ +/* #undef HAVE_SET_ACL_USERNS */ + +/* iops->set_acl() takes 4 args, arg2 is struct dentry * */ +/* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ + +/* shrinker_register exists */ +/* #undef HAVE_SHRINKER_REGISTER */ + +/* kernel_siginfo_t exists */ +/* #undef HAVE_SIGINFO */ + +/* sops->free_inode() exists */ +/* #undef HAVE_SOPS_FREE_INODE */ + +#if defined(__amd64__) || defined(__i386__) +/* Define if host toolchain supports SSE */ +#define HAVE_SSE 1 + +/* Define if host toolchain supports SSE2 */ +#define HAVE_SSE2 1 + +/* Define if host toolchain supports SSE3 */ +#define HAVE_SSE3 1 + +/* Define if host toolchain supports SSE4.1 */ +#define HAVE_SSE4_1 1 + +/* Define if host toolchain supports SSE4.2 */ +#define HAVE_SSE4_2 1 + +/* Define if host toolchain supports SSSE3 */ +#define HAVE_SSSE3 1 +#endif + +/* STACK_FRAME_NON_STANDARD is defined */ +/* #undef HAVE_STACK_FRAME_NON_STANDARD */ + +/* STACK_FRAME_NON_STANDARD asm macro is defined */ +/* #undef HAVE_STACK_FRAME_NON_STANDARD_ASM */ + +/* standalone exists */ +/* #undef HAVE_STANDALONE_LINUX_STDARG */ + +/* statx() is available */ +/* #undef HAVE_STATX */ + +/* STATX_MNT_ID is available */ +/* #undef HAVE_STATX_MNT_ID */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the 'strlcat' function. */ +#define HAVE_STRLCAT 1 + +/* Define to 1 if you have the 'strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* submit_bio is member of struct block_device_operations */ +/* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */ + +/* have super_block s_shrink */ +/* #undef HAVE_SUPER_BLOCK_S_SHRINK */ + +/* have super_block s_shrink pointer */ +/* #undef HAVE_SUPER_BLOCK_S_SHRINK_PTR */ + +/* have super_block s_wb_err */ +/* #undef HAVE_SUPER_BLOCK_S_WB_ERR */ + +/* sync_blockdev() is declared in include/blkdev.h */ +/* #undef HAVE_SYNC_BLOCKDEV */ + +/* struct kobj_type has default_groups */ +/* #undef HAVE_SYSFS_DEFAULT_GROUPS */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* timer_delete_sync is available */ +/* #undef HAVE_TIMER_DELETE_SYNC */ + +/* i_op->tmpfile() uses old dentry signature */ +/* #undef HAVE_TMPFILE_DENTRY */ + +/* i_op->tmpfile() has mnt_idmap */ +/* #undef HAVE_TMPFILE_IDMAP */ + +/* i_op->tmpfile() has userns */ +/* #undef HAVE_TMPFILE_USERNS */ + +/* totalhigh_pages() exists */ +/* #undef HAVE_TOTALHIGH_PAGES */ + +/* kernel has totalram_pages() */ +/* #undef HAVE_TOTALRAM_PAGES_FUNC */ + +/* Define to 1 if you have the 'udev_device_get_is_initialized' function. */ +/* #undef HAVE_UDEV_DEVICE_GET_IS_INITIALIZED */ + +/* kernel has __kernel_fpu_* functions */ +/* #undef HAVE_UNDERSCORE_KERNEL_FPU */ + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* iops->getattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_GETATTR */ + +/* iops->setattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_SETATTR */ + +#ifdef __amd64__ +/* Define if host toolchain supports VAES */ +#define HAVE_VAES 1 +#endif + +/* fops->clone_file_range() is available */ +/* #undef HAVE_VFS_CLONE_FILE_RANGE */ + +/* fops->dedupe_file_range() is available */ +/* #undef HAVE_VFS_DEDUPE_FILE_RANGE */ + +/* filemap_dirty_folio exists */ +/* #undef HAVE_VFS_FILEMAP_DIRTY_FOLIO */ + +/* generic_copy_file_range() is available */ +/* #undef HAVE_VFS_GENERIC_COPY_FILE_RANGE */ + +/* migratepage exists */ +/* #undef HAVE_VFS_MIGRATEPAGE */ + +/* migrate_folio exists */ +/* #undef HAVE_VFS_MIGRATE_FOLIO */ + +/* address_space_operations->readpages exists */ +/* #undef HAVE_VFS_READPAGES */ + +/* read_folio exists */ +/* #undef HAVE_VFS_READ_FOLIO */ + +/* fops->remap_file_range() is available */ +/* #undef HAVE_VFS_REMAP_FILE_RANGE */ + +/* __set_page_dirty_nobuffers exists */ +/* #undef HAVE_VFS_SET_PAGE_DIRTY_NOBUFFERS */ + +/* splice_copy_file_range() is available */ +/* #undef HAVE_VFS_SPLICE_COPY_FILE_RANGE */ + +/* address_space_operations->writepage exists */ +/* #undef HAVE_VFS_WRITEPAGE */ + +/* __vmalloc page flags exists */ +/* #undef HAVE_VMALLOC_PAGE_KERNEL */ + +#ifdef __amd64__ +/* Define if host toolchain supports VPCLMULQDQ */ +#define HAVE_VPCLMULQDQ 1 +#endif + +/* int (*writepage_t)() takes struct folio* */ +/* #undef HAVE_WRITEPAGE_T_FOLIO */ + +/* xattr_handler->get() wants dentry and inode and flags */ +/* #undef HAVE_XATTR_GET_DENTRY_INODE_FLAGS */ + +/* xattr_handler->set() wants both dentry and inode */ +/* #undef HAVE_XATTR_SET_DENTRY_INODE */ + +/* xattr_handler->set() takes mnt_idmap */ +/* #undef HAVE_XATTR_SET_IDMAP */ + +/* xattr_handler->set() takes user_namespace */ +/* #undef HAVE_XATTR_SET_USERNS */ + +/* Define if host toolchain supports XSAVE */ +#define HAVE_XSAVE 1 + +/* Define if host toolchain supports XSAVEOPT */ +#define HAVE_XSAVEOPT 1 + +/* Define if host toolchain supports XSAVES */ +#define HAVE_XSAVES 1 + +/* ZERO_PAGE() is GPL-only */ +/* #undef HAVE_ZERO_PAGE_GPL_ONLY */ + +/* Define if you have [z] */ +#define HAVE_ZLIB 1 + +/* libunwind is llvm libunwind */ +/* #undef IS_LIBUNWIND_LLVM */ + +/* kernel exports FPU functions */ +/* #undef KERNEL_EXPORTS_X86_FPU */ + +/* TBD: fetch(3) support */ +#if 0 +/* whether the chosen libfetch is to be loaded at run-time */ +#define LIBFETCH_DYNAMIC 1 + +/* libfetch is fetch(3) */ +#define LIBFETCH_IS_FETCH 1 + +/* libfetch is libcurl */ +#define LIBFETCH_IS_LIBCURL 0 + +/* soname of chosen libfetch */ +#define LIBFETCH_SONAME "libfetch.so.6" +#endif + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* make_request_fn() return type */ +/* #undef MAKE_REQUEST_FN_RET */ + +/* using complete_and_exit() instead */ *** 77 LINES SKIPPED *** From nobody Wed Sep 10 15:48:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQ7z1Cbdz66WM1; Wed, 10 Sep 2025 15:48:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQ7z0cZTz3J01; Wed, 10 Sep 2025 15:48:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757519295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9f384/SY2t6mzTpMMw5CudJc6+SXKWI8IhQFP/Ktif8=; b=FEbL/paoDnIWfPDDMo+7GXCNWEtjpJCAhl9YBfsC6OkCPXWUP2oyo7fLaSEjTv4zl4unWa 5w6cydaRAbdFLvEIoWgCis2SG9bX1u8fwHd3Hc4TwSBZU0wqoAfIXnjVECW2N8U4NTg1Vb oZe8udFqRyTfHWJBkiT0M4qqKuACtYz4JahQ7AlvyOs89BD5rwonU7BzN030spWZpkHjP+ 2TlnT4grHBtbv7Dh+vLRZRyzLa25o0ZJeZkIbYSNCcGmsvA1pvquUVCSRfUOXt/2QCEf04 dqzMbISudQAmcSnwLiDuwZvnCLj4LxF2UdtRAAsVVHNf7yOtPUSL8Rc1owFv+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757519295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9f384/SY2t6mzTpMMw5CudJc6+SXKWI8IhQFP/Ktif8=; b=AAS8ekW9lH2pbMfSdznC8CoCW2FlHrt5SBFXHhTbypMxJkeVuSkDhjy+456VyN12SyXebX FQGttjKF3WR7wnXCXT2UT7FQm/niDyb8qyeQ6lnYstvBOp0ObE1ay5XcVT0lOxM1FxWVnk YfjHdSGl5xg8dyBx38Rtcs4R3u0EzpweDu5I87qODm/PrxRjQaX6H55Q0D3MGARjqN9tGI s8KjX/t2fh1qt3AXy4pUf/CMY0qN6q/qRfFbh0nApk1SGvVGFHeUrc1g+qwitkYmbBNx4C 84EQibC8r1vkluw1pLc+C0SJfopEDaY4H+5n/TdrVNPUWAy5Db3+bRAojdAAHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757519295; a=rsa-sha256; cv=none; b=wtc+bGHsLWM4uL29a6Turjzfv8sctL3Ni9bocxlQxZmw7rBTfgqMj9MMefAyo5iQiYnJDg CjZfAgrnkcDjGAZbuGhJZ0N59Z+ra8x9MUDAklCcLXruQTjrNPARyxhQBwC/n8iUm+ffLl Qdh3sQcPVdUF7nhCeXVUAo2J057qViVHlfjioFjVgPUuZiuM2L/LFp9WieNBbj2KW88SRP T9BCTTt+gcnV9P3Z+N/6O/sg6CFh78djsB0L+0S3/1vKJL+cil+DBC+ZbbjudGp1kGEtWx B43CG3ivk71EQJIemb21nZQ+XNQJb6Iyc0FytQ+MVTOEpUTLk8TGtY/KUBMa7Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQ7y73WfzBxZ; Wed, 10 Sep 2025 15:48: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 58AFmEf0029118; Wed, 10 Sep 2025 15:48:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AFmERd029115; Wed, 10 Sep 2025 15:48:14 GMT (envelope-from git) Date: Wed, 10 Sep 2025 15:48:14 GMT Message-Id: <202509101548.58AFmERd029115@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 187ee62c71f2 - main - dhclient: improve UDP checksum handling List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 187ee62c71f2be62870f26ae98de865e330121be Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=187ee62c71f2be62870f26ae98de865e330121be commit 187ee62c71f2be62870f26ae98de865e330121be Author: Michael Tuexen AuthorDate: 2025-09-10 15:13:35 +0000 Commit: Michael Tuexen CommitDate: 2025-09-10 15:19:23 +0000 dhclient: improve UDP checksum handling When sending UDP packets: * compute the checksum in the correct order. This only has an impact if the length of the payload is odd. * don't send packet with a checksum of zero, use 0xffff instead as required. When receiving UDP packets: * don't do any computations when the checksum is zero. * compute the checksum in the correct order. This only has an impact if the length of the payload is odd. * when computing the checksum, store the pseudo header checksum * if the checksum is computed as zero, use 0xffff instead. * also accept packets, when the checksum in the packet is the pseudo header checksum. The last point fixes a problem when the DHCP client runs in a VM, the DHCP server runs on the host serving the VM and the network interface supports transmit checksum offloading. Since dhclient doesn't use UDP sockets but bpf devices to read the packets, the checksum will be incorrect and only contain the checksum of the pseudo header. PR: 263229 Reviewed by: markj, Timo Völker Tested by: danilo MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D52394 --- sbin/dhclient/packet.c | 53 +++++++++++++++++++++++++++++++++----------------- 1 file changed, 35 insertions(+), 18 deletions(-) diff --git a/sbin/dhclient/packet.c b/sbin/dhclient/packet.c index 3d7390c06ee0..fc0305a8cb0c 100644 --- a/sbin/dhclient/packet.c +++ b/sbin/dhclient/packet.c @@ -135,11 +135,14 @@ assemble_udp_ip_header(unsigned char *buf, int *bufix, u_int32_t from, udp.uh_ulen = htons(sizeof(udp) + len); memset(&udp.uh_sum, 0, sizeof(udp.uh_sum)); - udp.uh_sum = wrapsum(checksum((unsigned char *)&udp, sizeof(udp), - checksum(data, len, checksum((unsigned char *)&ip.ip_src, + udp.uh_sum = wrapsum(checksum(data, len, checksum((unsigned char *)&udp, + sizeof(udp), checksum((unsigned char *)&ip.ip_src, 2 * sizeof(ip.ip_src), IPPROTO_UDP + (u_int32_t)ntohs(udp.uh_ulen))))); + if (udp.uh_sum == htons(0)) + udp.uh_sum = htons(0xffff); + memcpy(&buf[*bufix], &udp, sizeof(udp)); *bufix += sizeof(udp); } @@ -166,7 +169,7 @@ decode_udp_ip_header(unsigned char *buf, int bufix, struct sockaddr_in *from, struct ip *ip; struct udphdr *udp; u_int32_t ip_len = (buf[bufix] & 0xf) << 2; - u_int32_t sum, usum; + u_int32_t sum, usum, pseudo_sum; static int ip_packets_seen; static int ip_packets_bad_checksum; static int udp_packets_seen; @@ -224,23 +227,37 @@ decode_udp_ip_header(unsigned char *buf, int bufix, struct sockaddr_in *from, } usum = udp->uh_sum; - udp->uh_sum = 0; - - sum = wrapsum(checksum((unsigned char *)udp, sizeof(*udp), - checksum(data, len, checksum((unsigned char *)&ip->ip_src, - 2 * sizeof(ip->ip_src), - IPPROTO_UDP + (u_int32_t)ntohs(udp->uh_ulen))))); - udp_packets_seen++; - if (usum && usum != sum) { - udp_packets_bad_checksum++; - if (udp_packets_seen > 4 && udp_packets_bad_checksum != 0 && - (udp_packets_seen / udp_packets_bad_checksum) < 2) { - note("%d bad udp checksums in %d packets", - udp_packets_bad_checksum, udp_packets_seen); - udp_packets_seen = udp_packets_bad_checksum = 0; + + if (usum != htons(0)) { + udp->uh_sum = 0; + + pseudo_sum = checksum((unsigned char *)&ip->ip_src, + 2 * sizeof(ip->ip_src), + IPPROTO_UDP + (u_int32_t)ntohs(udp->uh_ulen)); + sum = wrapsum(checksum(data, len, + checksum((unsigned char *)udp, sizeof(*udp), pseudo_sum))); + if (sum == htons(0)) + sum = htons(0xffff); + + /* + * In addition to accepting UDP packets with the correct + * checksum in the checksum field, accept also the ones which + * have the correct pseudo header checksum in the checksum + * field. This allows to process UDP packets, which have been + * marked for transmit checksum offloading by the sender side. + */ + if (usum != sum && usum != htons(pseudo_sum & 0x0000ffff)) { + udp_packets_bad_checksum++; + if (udp_packets_seen > 4 && + udp_packets_bad_checksum != 0 && + (udp_packets_seen / udp_packets_bad_checksum) < 2) { + note("%d bad udp checksums in %d packets", + udp_packets_bad_checksum, udp_packets_seen); + udp_packets_seen = udp_packets_bad_checksum = 0; + } + return (-1); } - return (-1); } memcpy(&from->sin_port, &udp->uh_sport, sizeof(udp->uh_sport)); From nobody Wed Sep 10 16:00:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQQX0TtQz66Wft; Wed, 10 Sep 2025 16:00:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQQW74F2z3KMF; Wed, 10 Sep 2025 16:00:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iUz6ez7mlv84iF20/UgRmjv2z3VZRHIMojFtjaUiI8g=; b=OnAVkC8kRZRMirOFFyj/69sJQCtM7PTA9NyZHDVVsS0KBgMUzNBM1ab7EiojJg4PAKZx1A 2lDu5becz9YkyScYeWtazng1wF3xOS5ztnNAkI4nf6D2gXHBauOu8TrvjiOZZTuVWXbYKe wProF9EnqS7OZrgJaVg0Yx7EmM/C53sgrwjJDEklkS3mgJ85VIqziN5+QYQcn9NA+IUzsO 0HCVyX/03N76/uwBQvktQjZPzA4V++OZyVBEkNmpfg/SVhHh1pz5AYP3JJN0lruj2sUvYr m9X0lRGft3hGISE+zgJjgqPfv+XltPmeqyetKEMYlExvgXF2LJ9qT9wtRRCRmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iUz6ez7mlv84iF20/UgRmjv2z3VZRHIMojFtjaUiI8g=; b=hjDbPq1XbZucABrvj14nVZV554MNLSL78iXWPu6GAsZfU4MdybDaLmm16XWbrmML/wDx+Z lXN0qx7lY/sB9v7+6yvHE47JwlZM/kPYIlcxf5E4Swl2zjCSdWP1sZ4jKn3NodR0KoUxUs 3pJPzFKJge5Z1Rb4wPcQNNg3kgE4nMPfybulX81F9XyXy5QcCfRQOwsWcOBVaL8h4KlK4P BZ6+uvgk096wvRMePQRGvKzlrRthrxBIpWoKRXItowYrTQdAHPpBDpHDQo6MZSTkniuYzk RERYiG66+3o1VohaVilpiiRc3wylQd22du7A2vONkyXmDs++aE1EBqFAdz6Y9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757520052; a=rsa-sha256; cv=none; b=cYGKvv9sGP5SxRF686ODiTXoxkP2vOy8NObRLAIVrVqgs5b0+2MgWX2kYCpXke5jB4yedc KQLvPipA3JsKOemaFIV4Q5kgyXEX3oeZ2uIayeqsPewDOFULHRg+yf4xA+c0mBnpK6pvno Ct8ytXgA9Bi3+kssnO/AhCKp8YUZPD9sGz/2oqnYrIdm+hUle0EM2Sf/nUscPjcubtzHsN iwmv48puP4NHY9g7s8zxdWbkWYvMj5U0dEa6VZDRnMJwxcdHlJzTa0mFBJneehJVTCPbDn 7c6Duyvf31sKwgG9SrCKofESGrj1hM9+yzveGeQnsywVrpDHOIxxvjNh2bp/+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQQW6TcQzCc7; Wed, 10 Sep 2025 16:00: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 58AG0ptn058412; Wed, 10 Sep 2025 16:00:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AG0phv058409; Wed, 10 Sep 2025 16:00:51 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:00:51 GMT Message-Id: <202509101600.58AG0phv058409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 0b68e3ce6e0e - main - libnv: Fix handling of nvlist_dump() and nvlist_send() for child nvlists List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 0b68e3ce6e0e437fa480b25a0ef706ee08562257 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=0b68e3ce6e0e437fa480b25a0ef706ee08562257 commit 0b68e3ce6e0e437fa480b25a0ef706ee08562257 Author: Mark Johnston AuthorDate: 2025-09-10 14:33:35 +0000 Commit: Mark Johnston CommitDate: 2025-09-10 16:00:13 +0000 libnv: Fix handling of nvlist_dump() and nvlist_send() for child nvlists Suppose an nvlist nvl belongs to a parent nvlist or nvlist array. In this case, nvl contains a pointer to its container. This trips up nvlist_send(nvl) and nvlist_dump(nvl), which intuitively should only operate on nvl and its nvpairs. In particular, both of these functions will traverse to nvl's parent and start sending/dumping the parent's nvpairs, which results in assertion failures or nonsensical output, respectively. Reviewed by: oshogbo MFC after: 2 weeks Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D52360 --- sys/contrib/libnv/nvlist.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/contrib/libnv/nvlist.c b/sys/contrib/libnv/nvlist.c index 41edc72322c3..73226ee51a78 100644 --- a/sys/contrib/libnv/nvlist.c +++ b/sys/contrib/libnv/nvlist.c @@ -478,7 +478,7 @@ nvlist_dump_error_check(const nvlist_t *nvl, int fd, int level) void nvlist_dump(const nvlist_t *nvl, int fd) { - const nvlist_t *tmpnvl; + const nvlist_t *tmpnvl, *top; nvpair_t *nvp, *tmpnvp; void *cookie; int level; @@ -487,6 +487,7 @@ nvlist_dump(const nvlist_t *nvl, int fd) if (nvlist_dump_error_check(nvl, fd, level)) return; + top = nvl; nvp = nvlist_first_nvpair(nvl); while (nvp != NULL) { dprintf(fd, "%*s%s (%s):", level * 4, "", nvpair_name(nvp), @@ -645,6 +646,8 @@ nvlist_dump(const nvlist_t *nvl, int fd) while ((nvp = nvlist_next_nvpair(nvl, nvp)) == NULL) { do { + if (nvl == top) + return; cookie = NULL; if (nvlist_in_array(nvl)) dprintf(fd, "%*s,\n", level * 4, ""); @@ -847,7 +850,7 @@ nvlist_xpack(const nvlist_t *nvl, int64_t *fdidxp, size_t *sizep) { unsigned char *buf, *ptr; size_t left, size; - const nvlist_t *tmpnvl; + const nvlist_t *tmpnvl, *top; nvpair_t *nvp, *tmpnvp; void *cookie; @@ -868,6 +871,7 @@ nvlist_xpack(const nvlist_t *nvl, int64_t *fdidxp, size_t *sizep) ptr = nvlist_pack_header(nvl, ptr, &left); + top = nvl; nvp = nvlist_first_nvpair(nvl); while (nvp != NULL) { NVPAIR_ASSERT(nvp); @@ -958,6 +962,8 @@ nvlist_xpack(const nvlist_t *nvl, int64_t *fdidxp, size_t *sizep) goto fail; while ((nvp = nvlist_next_nvpair(nvl, nvp)) == NULL) { do { + if (nvl == top) + goto out; cookie = NULL; if (nvlist_in_array(nvl)) { ptr = nvpair_pack_nvlist_array_next(ptr, From nobody Wed Sep 10 16:00:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQQY1K7Jz66Wj5; Wed, 10 Sep 2025 16:00:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQQY0RRKz3K3r; Wed, 10 Sep 2025 16:00:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A8oRboH4Bzul14oZUmsJ8Rz2L4ho+1532wcTWkALvtk=; b=Mw8Yh06fIQLEWZ0KFuqB1RzBze1DY7P0BbczMLPy8CBOa/Le2ubf4tcdQE/yeRuAzxP/PV zD2wwn7bdCxGhALSj4AnrmIMUuRB2k+30WskDeXHy3otF64YYdIpUDbs2gAPw2hNfK87B7 hAzk4KsZN9l7hoz2HgORbp88ub8xLL7elCmFXtAzXNul/rukV1uRMh9KafIfjJnVUX0ncP c5VVGAI53rc/0SOQoyPQ2YtO2aNd7Q21iRLwPLb1m7ZhHyvFKIDd2EdMzOUK/ePFNcYntY qM3KkhBa2xHiGOnCM0tgFDRDwd8ILEIyCcXbkXIBvjhQzGG4ag8UYW4RW3Oe4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A8oRboH4Bzul14oZUmsJ8Rz2L4ho+1532wcTWkALvtk=; b=NFzwP6NR9sWJMu8luXLfDJ+78GFxLU5o1k5CKrUl+u5/2cXSqOlnXNxFMbYOGE7+Dk5UWM tb6gULJDX6EKVOX2ujIRDqihTnVNcU4XGfJkNnH4yNP8JpidknMItZ222EnJoDie2Id9dc aT0Iyc9aE6AoKuQuOlSJsNDMSSX0anPWn8z8WZ+r003JeYZ1+ZRVYd/muJ6vmJ3Xh7hqIh y4TCNPx8ERci/GLKN3PWEzPRtpmdZfOoFc26tPoCorxAOzt26EoAfdlDmwdAaSiAezwS9A 8idHTnaQ/FXKftNmOYex1WBRzh6wPcgdSB/TN2pR6FfwT9eaXFbyxIHmM4nq7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757520053; a=rsa-sha256; cv=none; b=Ogdvh704mV119VA8RwTGk7NvmE6l05lVASRc7XVayQOy0x24xPlJT8U+NpFKY4JmvF8g85 23LAgLm0btroNy51yQyHB+e2e8QYgNqM5v6Y9fn1+7r3USy5FjEunezQsX3kPHpQSmAEwE kPPZUSF6PM9v12uhZP+Z+gxGLowg3j0NLSpdpj05DWXnsWIsTjsjf4Amy3J8grNoWyr0st qgIRXPt3zNZSeGnwrEGLTzP2XS8lNpVqEb1PXqKyvGfwdk2EsISK1Cfe2qOZ7mATxtuZjD Ba72eKWBwztgEADZLgcAUONOTtcS0NBlByC/uwyrbhKSBq1z7Q8g/ydxTbikcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQQY00xTzC7y; Wed, 10 Sep 2025 16:00: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 58AG0qr1058448; Wed, 10 Sep 2025 16:00:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AG0qjq058443; Wed, 10 Sep 2025 16:00:52 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:00:52 GMT Message-Id: <202509101600.58AG0qjq058443@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 3877025f52ee - main - dtrace: Use a size_t to represent a buffer size in the printm action List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 3877025f52ee205fe99ad4ff68229933d57e4bcb Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3877025f52ee205fe99ad4ff68229933d57e4bcb commit 3877025f52ee205fe99ad4ff68229933d57e4bcb Author: Mark Johnston AuthorDate: 2025-09-10 14:33:58 +0000 Commit: Mark Johnston CommitDate: 2025-09-10 16:00:13 +0000 dtrace: Use a size_t to represent a buffer size in the printm action printm is specific to the FreeBSD dtrace port. I believe it's effectively the same as tracemem(), though printm apparently predates it. It stores the size of the buffer of traced data inline. Currently it represents that size using a uintptr_t, which isn't really right and poses challenges when porting to CHERI because `DTRACE_STORE(uintptr_t, ...` requires the destination to be suitably aligned, but this isn't necessary since we're just storing a size. Convert to using a size_t. This should be a no-op since sizeof(uintptr_t) == sizeof(size_t) on non-CHERI platforms (and besides that I don't see a reason to use printm() when tracemem() is available and is simpler to use.) Reviewed by: Domagoj Stolfa, avg MFC after: 2 weeks Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D52055 --- cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c | 9 ++++----- sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c | 11 ++++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c index 385c9d78bdfc..b311b5425587 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c @@ -2242,11 +2242,10 @@ dt_format_bytes_get(dtrace_hdl_t *dtp, caddr_t addr, size_t nbytes) static int dt_format_memory(dtrace_hdl_t *dtp, caddr_t addr) { - - size_t nbytes = *((uintptr_t *) addr); + size_t nbytes = *((size_t *) addr); char *s; - s = dt_format_bytes_get(dtp, addr + sizeof(uintptr_t), nbytes); + s = dt_format_bytes_get(dtp, addr + sizeof(size_t), nbytes); if (s == NULL) return (-1); @@ -2260,9 +2259,9 @@ static int dt_print_memory(dtrace_hdl_t *dtp, FILE *fp, caddr_t addr) { int quiet = (dtp->dt_options[DTRACEOPT_QUIET] != DTRACEOPT_UNSET); - size_t nbytes = *((uintptr_t *) addr); + size_t nbytes = *((size_t *) addr); - return (dt_print_bytes(dtp, fp, addr + sizeof(uintptr_t), + return (dt_print_bytes(dtp, fp, addr + sizeof(size_t), nbytes, 50, quiet, 1)); } diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c index 7192df200ae2..8078f3f6d4b1 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c +++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c @@ -7761,7 +7761,8 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, uintptr_t *memref = (uintptr_t *)(uintptr_t) val; if (!DTRACE_INSCRATCHPTR(&mstate, - (uintptr_t)memref, 2 * sizeof(uintptr_t))) { + (uintptr_t) memref, + sizeof (uintptr_t) + sizeof (size_t))) { *flags |= CPU_DTRACE_BADADDR; continue; } @@ -7773,21 +7774,21 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, * Check if the size exceeds the allocated * buffer size. */ - if (size + sizeof(uintptr_t) > dp->dtdo_rtype.dtdt_size) { + if (size + sizeof (size_t) > + dp->dtdo_rtype.dtdt_size) { /* Flag a drop! */ *flags |= CPU_DTRACE_DROP; continue; } /* Store the size in the buffer first. */ - DTRACE_STORE(uintptr_t, tomax, - valoffs, size); + DTRACE_STORE(size_t, tomax, valoffs, size); /* * Offset the buffer address to the start * of the data. */ - valoffs += sizeof(uintptr_t); + valoffs += sizeof(size_t); /* * Reset to the memory address rather than From nobody Wed Sep 10 16:00:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQQZ6WPXz66WPL; Wed, 10 Sep 2025 16:00:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQQZ1Vsjz3KPr; Wed, 10 Sep 2025 16:00:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N87x1HjBWQ7gd9TGPdKr67VS8tSRl81yR6f9ZIB4d5c=; b=XStWALn+rSvcgdtEwjwVP9e64trXjhXy41JDHI8tPq3tvOFOd4YN5ZQLTg20P24kQYjsYn fh1tgbq8i7n//bnhMorGgp3uE2LhNkrb7Gkxpyb7z9fWIjQquJhZZ5wflga8B+W4Y/ZfuA yWrsjxjaaC1DmF0qqNXVB+BXlFvuTs9UYYZjUH+qMpR+cGO3WRZpp1wVAxx8R5wQdwmvSx oT3mkg7y6xvSFMX4QEU8peqs0xv5Xf7QVsYEifBCNvmweKkSiLVdvdjXRvrgssY1OZ0whs butERUbfb03aZ0pjVr7TEI7IokDsKD+MHoXlslg1nTymZ5PvVrFhrUMqC/VFqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N87x1HjBWQ7gd9TGPdKr67VS8tSRl81yR6f9ZIB4d5c=; b=miDumqx+JTGrPDV1G9OzOW1G3CcnVBgMiD5zDKQRM27vJLLsQS7ROog6SRYQYHmldzCZuO MCSKtetmFeEsD7VhWP9iup93vcW+2OAc7FBMbR2ICCDGhA9UPbFYDUB8gnMA5qqNrDLJ00 A1sQjHlSvCf/QW3aH96ap9oTk1xDJ9JOCZuDVad9pd/rdQQ5IgdvIPLMXbsC5QDFoFPHni j32BFBcXwKjH4D8mY3RuECl0EG8DhDWAqGiepn0sXjANm08Nj5zJx9OEG+ChntfeEOMcWd /CSVwA5HVTn6fxLSgfqyFbCqj5EwXDfvsMPdERbDWzqWSZygfztO6dOuOvO5jA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757520054; a=rsa-sha256; cv=none; b=Npl3cBKSnLBpQA4ajZ18aW4SehKjwGTicKuKcWV73SLMLmB1o5VProq9BE/aCx9Ff6SNTq MKHFDQ2FToVn94snOQgxhR+///zXE4SKV0s0GcdyVNLasVgWGogJgFgH4prEYjFpT8S5YO AkvzjouWNW5SS7hdUXjmO27C/7bPZSnqPglU9nugIZE8ZYcMdvHvQRHHif3FxJDBmDMyLu /vdVgYuY/vCnpkzrHPf+1ljdA1Ii4SBQ5A4eJ6dCfBYdln6PlIYWwY7umIimCyglihJNPx 8LRY8ukNOwNSDd1D3gOUYzbQm/61A0FsbX2gTlTznYDi0h0rmbfUOub8xP5HLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQQZ0DzZzBYJ; Wed, 10 Sep 2025 16:00: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 58AG0r5K058483; Wed, 10 Sep 2025 16:00:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AG0rBM058479; Wed, 10 Sep 2025 16:00:53 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:00:53 GMT Message-Id: <202509101600.58AG0rBM058479@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: b653a281f5a9 - main - re: Make sure re_rxeof() is called in net epoch context List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: b653a281f5a977ba73b3d405874f8af8e8b6b50d Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b653a281f5a977ba73b3d405874f8af8e8b6b50d commit b653a281f5a977ba73b3d405874f8af8e8b6b50d Author: Mark Johnston AuthorDate: 2025-09-10 14:35:24 +0000 Commit: Mark Johnston CommitDate: 2025-09-10 16:00:13 +0000 re: Make sure re_rxeof() is called in net epoch context It may pass packets up the stack and so needs to be called in a network epoch. When a watchdog timeout happens, we need to enter a section explicitly. Reviewed by: zlei, glebius, adrian MFC after: 2 weeks Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D51885 --- sys/dev/re/if_re.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 091ab2db72ec..67864c2de388 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -3558,6 +3558,7 @@ re_ioctl(if_t ifp, u_long command, caddr_t data) static void re_watchdog(struct rl_softc *sc) { + struct epoch_tracker et; if_t ifp; RL_LOCK_ASSERT(sc); @@ -3578,7 +3579,9 @@ re_watchdog(struct rl_softc *sc) if_printf(ifp, "watchdog timeout\n"); if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); + NET_EPOCH_ENTER(et); re_rxeof(sc, NULL); + NET_EPOCH_EXIT(et); if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); re_init_locked(sc); if (!if_sendq_empty(ifp)) From nobody Wed Sep 10 16:00:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMQQc15vGz66WLp; Wed, 10 Sep 2025 16:00:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMQQb1h3qz3KMt; Wed, 10 Sep 2025 16:00:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FdEnlTtAv0tsKewz4Nv/xfXWQiPlv7uMH9jqsBhThlk=; b=QtejRq2JYY1edaOnvLF8K2JcwedFOiwoTBnVrjwpCmW1/LZlWbXj30Xk3qDqMt5p6AECKw yIvDehBND84B7oTmCGkWGu9VO5t2tElNvGaUsVeu0MAFEtYQxu7I/ZbUKMuYibPHIUEuvx ugG8sasNsmygrMLNX/LCSNhgoiHtRMPaDqJ63ajGtX61GHzizKGCQfGxu5QOu2MHOOSGa3 aMuHR/euDT3igaP//UtCiW8xNdktbVtmqAWQyH/5cvP0m1iB3/wfjkYIFZJWdFS47qP8fl 7pCkTGTLbDv/t123UxESPaDDFjV4yg8+4bBimko2bIFuKFKqeCItklkg8iFRkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757520055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FdEnlTtAv0tsKewz4Nv/xfXWQiPlv7uMH9jqsBhThlk=; b=atSfpQtm1Vylj1aFmtdhijvd6X6F3EXZGdbP2ShuqyCU28xFskthXChwSj0VSyKSGRnvU3 MVbCaxFM43hR4IoJj4sfB7ZJZpScynQI1KNFsciIPjHWq73WO0FfebpPTwG3+ruMBFT3Q0 LZ0/xbzAXUkkNgYUScBCb/ceBTO4FCZ4IfXgQgqzC4qv1kcFrWgeoFoxUq8anIpDut9gsl DkxdHL4nfdBk6bzoJ7uwTtAVEkS5ovkz78vDsg3GmGhMaotWNj3IH1PD/sNmL4pYKOTO9D qEFfPgHzJnhwSW0Cv6EDcT7wyvKNwIDcHBND1kpKTFVBQ3G0I1O77lqqtGl/AA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757520055; a=rsa-sha256; cv=none; b=TCgnsmCo1YtWzNtIQmry9CWVt6bVZENkvtvby28wZMZW9+hmxxgN/CCb19+SAJnJGdCy0l ZzeeC4W9LyRhgJpv/I02WnPYS++VgjyzpHeXbAA0+AQUFZIlXJHgHR86ZIRfQxmu3/DDem lX76LJhWeBViCZHIiXNeMfg+J2BTcFyhJQF9MmkiVWAHzIJ9ilGAs7tTmayVJPj7aWem38 nTWoM3QDt//dhx6pKTg8WzrGgZPfYa2y20lANynYKqR7YKMKokRnhbXipKD5AQuWo0xbTk r+KyxFHr+ArTpwjRnxgQP0N8FVGoB0RZwiivO54vbJLNqMgs1my4Gqt6RQFgLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMQQb1DxhzC5L; Wed, 10 Sep 2025 16:00: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 58AG0tEh058520; Wed, 10 Sep 2025 16:00:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AG0tld058513; Wed, 10 Sep 2025 16:00:55 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:00:55 GMT Message-Id: <202509101600.58AG0tld058513@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 3d39856d4dfe - main - vmm: Suspend the VM before destroying it List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 3d39856d4dfeab5b5a5e6bbdb6ce965db5bc4dc1 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3d39856d4dfeab5b5a5e6bbdb6ce965db5bc4dc1 commit 3d39856d4dfeab5b5a5e6bbdb6ce965db5bc4dc1 Author: Mark Johnston AuthorDate: 2025-09-10 16:00:36 +0000 Commit: Mark Johnston CommitDate: 2025-09-10 16:00:36 +0000 vmm: Suspend the VM before destroying it Otherwise we don't do anything to kick vcpu threads out of a sleep state when destroying a VM. For instance, suppose a guest executes hlt on amd64 or wfi on arm64 with interrupts disabled. Then, bhyvectl --destroy will hang until the vcpu thread somehow comes out of vm_handle_hlt()/vm_handle_wfi() since destroy_dev() is waiting for vCPU threads to drain. Note that on amd64, if hw.vmm.halt_detection is set to 1 (the default), the guest will automatically exit in this case since it's treated as a shutdown. But, the above should not hang if halt_detection is set to 0. Here, vm_suspend() wakes up vcpu threads, and a subsequent attempt to run the vCPU will result in an error which gets propagated to userspace, allowing destroy_dev() to proceed. Add a new suspend code for this purpose. Modify bhyve to exit with status 4 ("exited due to an error") when it's received, since that's what'll happen generally when the VM is destroyed asynchronously. Reported by: def MFC after: 2 weeks Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D51761 --- sys/amd64/include/vmm.h | 1 + sys/arm64/include/vmm.h | 1 + sys/arm64/vmm/vmm.c | 6 ++++++ sys/dev/vmm/vmm_dev.c | 1 + sys/riscv/include/vmm.h | 1 + sys/riscv/vmm/vmm.c | 6 +++++- usr.sbin/bhyve/aarch64/vmexit.c | 2 ++ usr.sbin/bhyve/amd64/vmexit.c | 2 ++ usr.sbin/bhyve/bhyve.8 | 2 +- usr.sbin/bhyve/bhyverun.c | 6 ++---- usr.sbin/bhyve/riscv/vmexit.c | 2 ++ 11 files changed, 24 insertions(+), 6 deletions(-) diff --git a/sys/amd64/include/vmm.h b/sys/amd64/include/vmm.h index 0b3daed4f69e..e35119af8572 100644 --- a/sys/amd64/include/vmm.h +++ b/sys/amd64/include/vmm.h @@ -46,6 +46,7 @@ enum vm_suspend_how { VM_SUSPEND_POWEROFF, VM_SUSPEND_HALT, VM_SUSPEND_TRIPLEFAULT, + VM_SUSPEND_DESTROY, VM_SUSPEND_LAST }; diff --git a/sys/arm64/include/vmm.h b/sys/arm64/include/vmm.h index 73b5b4a09591..e839b5dd92c9 100644 --- a/sys/arm64/include/vmm.h +++ b/sys/arm64/include/vmm.h @@ -42,6 +42,7 @@ enum vm_suspend_how { VM_SUSPEND_RESET, VM_SUSPEND_POWEROFF, VM_SUSPEND_HALT, + VM_SUSPEND_DESTROY, VM_SUSPEND_LAST }; diff --git a/sys/arm64/vmm/vmm.c b/sys/arm64/vmm/vmm.c index 3082d2941221..1dcefa1489e9 100644 --- a/sys/arm64/vmm/vmm.c +++ b/sys/arm64/vmm/vmm.c @@ -1342,8 +1342,14 @@ vm_handle_smccc_call(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) static int vm_handle_wfi(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) { + struct vm *vm; + + vm = vcpu->vm; vcpu_lock(vcpu); while (1) { + if (vm->suspend) + break; + if (vgic_has_pending_irq(vcpu->cookie)) break; diff --git a/sys/dev/vmm/vmm_dev.c b/sys/dev/vmm/vmm_dev.c index 9f2b009d02ec..460a508a60dc 100644 --- a/sys/dev/vmm/vmm_dev.c +++ b/sys/dev/vmm/vmm_dev.c @@ -901,6 +901,7 @@ vmmdev_lookup_and_destroy(const char *name, struct ucred *cred) sc->cdev = NULL; sx_xunlock(&vmmdev_mtx); + vm_suspend(sc->vm, VM_SUSPEND_DESTROY); destroy_dev(cdev); vmmdev_destroy(sc); diff --git a/sys/riscv/include/vmm.h b/sys/riscv/include/vmm.h index 1221521be368..de7119dd534a 100644 --- a/sys/riscv/include/vmm.h +++ b/sys/riscv/include/vmm.h @@ -49,6 +49,7 @@ enum vm_suspend_how { VM_SUSPEND_RESET, VM_SUSPEND_POWEROFF, VM_SUSPEND_HALT, + VM_SUSPEND_DESTROY, VM_SUSPEND_LAST }; diff --git a/sys/riscv/vmm/vmm.c b/sys/riscv/vmm/vmm.c index 7528ef6e4698..ec4514f70fa6 100644 --- a/sys/riscv/vmm/vmm.c +++ b/sys/riscv/vmm/vmm.c @@ -1036,10 +1036,14 @@ vm_raise_msi(struct vm *vm, uint64_t msg, uint64_t addr, int bus, int slot, static int vm_handle_wfi(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) { + struct vm *vm; + vm = vcpu->vm; vcpu_lock(vcpu); - while (1) { + if (vm->suspend) + break; + if (aplic_check_pending(vcpu->cookie)) break; diff --git a/usr.sbin/bhyve/aarch64/vmexit.c b/usr.sbin/bhyve/aarch64/vmexit.c index 3acad4020a3c..2457cbe76b5e 100644 --- a/usr.sbin/bhyve/aarch64/vmexit.c +++ b/usr.sbin/bhyve/aarch64/vmexit.c @@ -122,6 +122,8 @@ vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) exit(1); case VM_SUSPEND_HALT: exit(2); + case VM_SUSPEND_DESTROY: + exit(4); default: fprintf(stderr, "vmexit_suspend: invalid reason %d\n", how); exit(100); diff --git a/usr.sbin/bhyve/amd64/vmexit.c b/usr.sbin/bhyve/amd64/vmexit.c index 944f5de34645..14f89563fd0f 100644 --- a/usr.sbin/bhyve/amd64/vmexit.c +++ b/usr.sbin/bhyve/amd64/vmexit.c @@ -418,6 +418,8 @@ vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) exit(2); case VM_SUSPEND_TRIPLEFAULT: exit(3); + case VM_SUSPEND_DESTROY: + exit(4); default: EPRINTLN("vmexit_suspend: invalid reason %d", how); exit(100); diff --git a/usr.sbin/bhyve/bhyve.8 b/usr.sbin/bhyve/bhyve.8 index 89c0b23961a8..c902c265da9e 100644 --- a/usr.sbin/bhyve/bhyve.8 +++ b/usr.sbin/bhyve/bhyve.8 @@ -1126,7 +1126,7 @@ powered off .It 2 halted .It 3 -triple fault +triple fault (amd64 only) .It 4 exited due to an error .El diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 9ead49582a7d..bfc0b949a75d 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -561,10 +561,8 @@ fbsdrun_start_thread(void *param) #endif vm_loop(vi->ctx, vi->vcpu); - - /* not reached */ - exit(1); - return (NULL); + /* We get here if the VM was destroyed asynchronously. */ + exit(4); } void diff --git a/usr.sbin/bhyve/riscv/vmexit.c b/usr.sbin/bhyve/riscv/vmexit.c index 3bc83b3bef4e..985f8e4e9065 100644 --- a/usr.sbin/bhyve/riscv/vmexit.c +++ b/usr.sbin/bhyve/riscv/vmexit.c @@ -121,6 +121,8 @@ vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) exit(1); case VM_SUSPEND_HALT: exit(2); + case VM_SUSPEND_DESTROY: + exit(4); default: fprintf(stderr, "vmexit_suspend: invalid reason %d\n", how); exit(100); From nobody Wed Sep 10 16:46:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMRRk4ksfz66ZZ9; Wed, 10 Sep 2025 16:46:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMRRk43J1z3RMg; Wed, 10 Sep 2025 16:46:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757522818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/F6i0+/HcxP2VBD3MZMfrtYntVhwAnkOFPl8bT1mc4I=; b=J3bc5cinzSAnI3GzZpAb7m3P/9EVwECRD8cJ9llgedzT2mO/CGmsC5aXU9lTgHU0jtqT2l umsTI+OEYOqWevBP+BD01wMo/FayTJ2t5FEHvCGswkswOYihkJAJHPDZ+waK/xtg1t5siJ yktek9ZC8Lo0a9+wyLpg2iKDp3ip8uhgJYKV5mWQo/6nW03bDzR9x4Dimy+3335qkv3cTu fgpN/ULlCVCPmIptow0bIwXU4Zq5fTYKm6oPj9NxByp/CCL/uafMBpx2RaleGeh1p6CgRV AOpqE8F/Cd6z1YRdtl+CwSJqbTrcQfolzD9r0pEOmKhWokGbNxbrReaVE5YjKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757522818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/F6i0+/HcxP2VBD3MZMfrtYntVhwAnkOFPl8bT1mc4I=; b=mN/WyDLubXTzyBfLrMz6MTcit2j5BXCiU6VThUvdqW5aZO6E40TUH9inrFdtcJkcWLKAnV /N7FmEGIy8U+YiA0TsHwwbAQKB02cJP7Ymu7uehUU22BdZI9u0rNurt+OztjcsaTJd8Wq0 dbSO8+e6FARV3aQ+WEIHsK6GdsjbMmr4joUJ1gV3IwPEG3h7V3wWVQpBA9uWWHyAyEweRq HwpCFMosk/SjOw0fde6UDUQoKiNUJsBEbbPWo1kktQsI7XYPxW+5DHve5BwkLEANdM1huE i1m9lG9N4cLAtx4Xxa8wCR9ziark5dupNmORD8wRBsuEfTM+IugZe8QoJf+q6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757522818; a=rsa-sha256; cv=none; b=fYHlA5EseLQxw9nzIOu+tl8LLg323iZ6Vwc/lqGmVu1+2G9CYZ1xQq9SqXaBsG/Q67IsA1 hnewlpuuXjwgNeW6SYYss6ciUMeLJ1fysy1z0xZgPTpUlFW3nzcrDM9Sr1RzMgLprPYtsv JAurB92ZCv3ivsp7Gw2lyj8fMsrdtM9Qd6hs0sF0+aGw2ipMCwAHy20XhFg+OFOF1Riwxe 2RpecGHmz0Ogath0xhzTd0xS/qw2cKFQtO5NcnNN5V75W+WUr3UvJWAfxTvyAVzI34BwMM aIxr6ABs/flLRSG95LzS88cxn8Uh2v9WtiLGxyc3HrLNaVWAeh2PXwiGzxfRpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMRRk3P3pzCgf; Wed, 10 Sep 2025 16:46: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 58AGkwgT042272; Wed, 10 Sep 2025 16:46:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AGkwAx042269; Wed, 10 Sep 2025 16:46:58 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:46:58 GMT Message-Id: <202509101646.58AGkwAx042269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kevin Bowling Subject: git: c1532f74e468 - main - ixgbe: Correct ixgbe_link_speed_to_str comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: c1532f74e4684f4b4227e873bae05b16ccc0a17c Auto-Submitted: auto-generated The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c1532f74e4684f4b4227e873bae05b16ccc0a17c commit c1532f74e4684f4b4227e873bae05b16ccc0a17c Author: Kevin Bowling AuthorDate: 2025-09-10 16:45:35 +0000 Commit: Kevin Bowling CommitDate: 2025-09-10 16:45:35 +0000 ixgbe: Correct ixgbe_link_speed_to_str comment PR: 288960 Reported by: michaelo MFC after: 2 days --- sys/dev/ixgbe/if_ix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index c9d35e834177..6d08bd49bc04 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -4029,7 +4029,7 @@ ixgbe_if_stop(if_ctx_t ctx) * ixgbe_link_speed_to_str - Convert link speed to string * * Helper function to convert link speed constants to human-readable - * string representations in Gbps. + * string representations in conventional Gbps or Mbps. ************************************************************************/ static const char * ixgbe_link_speed_to_str(u32 link_speed) From nobody Wed Sep 10 16:58:46 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMRjL5426z66bHj; Wed, 10 Sep 2025 16:58:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMRjL4PLQz3T1P; Wed, 10 Sep 2025 16:58:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757523526; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LF+vUYG4x0nkeauXaGiac6SfkS9B6wM1LclpWICMoyk=; b=LFA813JkZIlya3Rf6ty6IW9ZUB4kEUGW7wXUIEb2QOFS5jlOTXcbUN0Rx6adpSCzpXaaX8 oyDXW7SFt2dQTSn0vZ3gYVTEUbe0AfOPKEs/+kZLgY3ueKKRH35FRzBA67T7NJDi2PTIoh 5+vhEFJ9PfiYhDDCrDhJe1Xq9Ohs/i5YSg1fjSGPkhf4TBNqAKN6Nr90ayI90lwFTlvTGo sIvjli6NssM0IxlugYBoZ/b17poIeQ35nJsLXLsyyLkHKeuWMa5+ch65cPrQbSUC1I1ARE HTbNB1n1OWUXuiz1WZZvf0Df6nEekoTX3vsLBSSRxOXEPRbVt58xdiJlvMUzYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757523526; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LF+vUYG4x0nkeauXaGiac6SfkS9B6wM1LclpWICMoyk=; b=xOAc3uxhsrKEJs7XgkfQ/tKWYRVD1LOJfBXvfz7Uv5Vc1l3smnPpz0YCOhO9BXE+V/hoGb Gu3/wGU8zCHeENjw/WEB0QGZuVvSBhft+g1ypASCaUNM8m37Bz8nRevX0kN6XRX2SgGdj1 gdi/yuFw0UJWZUtTBRHVuxCbgFtas8p5/5DpwVRTy3yMN+9wBPdgtHKgxwXPy/0JH19wLP vjzwphI6V+tSkBE3SCpkGfVFdriuwpjFe7dtTzJbJ7C52ckj2Dzmkv2X5HFxvwaLSJ/JCQ 0OnPsmLPYJW3hrBB+HSgF9sL3PiPqBERJxMi6ErL/wJoKhQn2TZl6zihvXDF8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757523526; a=rsa-sha256; cv=none; b=tHanQuDiP+KAy+MrUJ/+N6/Nn62P2u+Wz8UWS6qbC4HiI5QjqkPep9DycRGF1lTJKINgCt 3NniSryZAdXyN13IwzhS8WoS17zP6avHaveEU2aRQyH8w64LNNVW+2wazaos16aQWm5vuh ngbiEc+5BEaES5+4gaeiAfW9Ymg117lNPxaRw7sU8Z4Esmsi8moD8KyheruO72Q3CeOOAM UbLaQcdrv4RH2B9vXkLCPHW4Ev1xAyK3l19gCNVcNQg74iaqRvQBZRC+II3HqbuRiZ+Cv6 LiIuOq8kg1AeAS3ADxDTXJ4QF4I+tGr9o/P/j8ebbpB4KhaTMNewKt21071pjw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMRjL30mXzTkt; Wed, 10 Sep 2025 16:58: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 58AGwkGD061433; Wed, 10 Sep 2025 16:58:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AGwk50061430; Wed, 10 Sep 2025 16:58:46 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:58:46 GMT Message-Id: <202509101658.58AGwk50061430@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: d549de769055 - main - libc: Remove readdir_r(3) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: d549de769055ae6116601e54e4c86dfb3e17f4c4 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=d549de769055ae6116601e54e4c86dfb3e17f4c4 commit d549de769055ae6116601e54e4c86dfb3e17f4c4 Author: Dag-Erling Smørgrav AuthorDate: 2025-09-10 16:52:50 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-10 16:58:06 +0000 libc: Remove readdir_r(3) This function was never safe to use. We marked it deprecated in the manual page in 2016, and it is marked obsolete in POSIX 2024. We previously added a linker warning and annotated the prototype; now that stable/15 has been branched, we can remove it from main. Relnotes: yes Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D52474 --- ObsoleteFiles.inc | 3 +++ include/dirent.h | 4 ---- lib/libc/gen/Makefile.inc | 1 - lib/libc/gen/Symbol.map | 1 - lib/libc/gen/directory.3 | 51 ++++------------------------------------- lib/libc/gen/gen-compat.h | 1 + lib/libc/gen/gen-private.h | 3 --- lib/libc/gen/readdir-compat11.c | 2 +- lib/libc/gen/readdir.c | 8 +++---- 9 files changed, 13 insertions(+), 61 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 02a727d631bd..5fe01af2eea7 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20250910: readdir_r(3) removed +OLD_FILES+=usr/share/man/man3/readdir_r.3.gz + # 20250826: Remove a misspelled manual OLD_FILES+=usr/share/man/man3/sysdecode_syscallnames.3.gz diff --git a/include/dirent.h b/include/dirent.h index 7fcdceb10b23..8df38a707856 100644 --- a/include/dirent.h +++ b/include/dirent.h @@ -115,10 +115,6 @@ DIR *opendir(const char *); DIR *fdopendir(int); struct dirent * readdir(DIR *); -#if __POSIX_VISIBLE >= 199506 || __XSI_VISIBLE >= 500 -int readdir_r(DIR *, struct dirent *, struct dirent **) - __deprecated1("Does not take variable {NAME_MAX} into account"); -#endif void rewinddir(DIR *); #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 700 int scandir(const char *, struct dirent ***, diff --git a/lib/libc/gen/Makefile.inc b/lib/libc/gen/Makefile.inc index 4d064d18d36e..c32f514d7176 100644 --- a/lib/libc/gen/Makefile.inc +++ b/lib/libc/gen/Makefile.inc @@ -342,7 +342,6 @@ MLINKS+=directory.3 closedir.3 \ directory.3 fdopendir.3 \ directory.3 opendir.3 \ directory.3 readdir.3 \ - directory.3 readdir_r.3 \ directory.3 rewinddir.3 \ directory.3 seekdir.3 \ directory.3 telldir.3 diff --git a/lib/libc/gen/Symbol.map b/lib/libc/gen/Symbol.map index 26f638568efc..86a8712ef12f 100644 --- a/lib/libc/gen/Symbol.map +++ b/lib/libc/gen/Symbol.map @@ -418,7 +418,6 @@ FBSD_1.5 { globfree; nftw; readdir; - readdir_r; scandir; sem_clockwait_np; setproctitle_fast; diff --git a/lib/libc/gen/directory.3 b/lib/libc/gen/directory.3 index 263dfdd6eb95..a92d51980aab 100644 --- a/lib/libc/gen/directory.3 +++ b/lib/libc/gen/directory.3 @@ -25,14 +25,13 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2020 +.Dd September 5, 2025 .Dt DIRECTORY 3 .Os .Sh NAME .Nm opendir , .Nm fdopendir , .Nm readdir , -.Nm readdir_r , .Nm telldir , .Nm seekdir , .Nm rewinddir , @@ -50,8 +49,6 @@ .Fn fdopendir "int fd" .Ft struct dirent * .Fn readdir "DIR *dirp" -.Ft int -.Fn readdir_r "DIR *dirp" "struct dirent *entry" "struct dirent **result" .Ft long .Fn telldir "DIR *dirp" .Ft void @@ -65,15 +62,6 @@ .Ft int .Fn dirfd "DIR *dirp" .Sh DESCRIPTION -.Bf -symbolic -The -.Fn readdir_r -interface is deprecated -because it cannot be used correctly unless -.Brq Va NAME_MAX -is a fixed value. -.Ef -.Pp The .Fn opendir function @@ -112,7 +100,6 @@ or to modify the state of the associated description other than by means of .Fn closedir , .Fn readdir , -.Fn readdir_r , or .Fn rewinddir , the behavior is undefined. @@ -144,34 +131,6 @@ may be set to any of the values documented for the system call. .Pp The -.Fn readdir_r -function -provides the same functionality as -.Fn readdir , -but the caller must provide a directory -.Fa entry -buffer to store the results in. -The buffer must be large enough for a -.Vt struct dirent -with a -.Va d_name -array with -.Brq Va NAME_MAX -+ 1 elements. -If the read succeeds, -.Fa result -is pointed at the -.Fa entry ; -upon reaching the end of the directory -.Fa result -is set to -.Dv NULL . -The -.Fn readdir_r -function -returns 0 on success or an error number to indicate failure. -.Pp -The .Fn telldir function returns a token representing the current location associated with the named @@ -305,9 +264,7 @@ is not associated with a directory. .Pp The .Fn readdir -and -.Fn readdir_r -functions may also fail and set +function may also fail and set .Va errno for any of the errors specified for the routine .Xr getdents 2 . @@ -338,7 +295,6 @@ The .Fn fdopendir , .Fn opendir , .Fn readdir , -.Fn readdir_r , .Fn rewinddir , .Fn seekdir and @@ -391,7 +347,8 @@ will always set the correct location to return the same value as that last .Fn readdir performed. This is enough for some applications which want to -"push back the last entry read", e.g., Samba. +.Dq push back the last entry read , +e.g. Samba. Seeks back to any other location, other than the beginning of the directory, may result in unexpected behaviour if deletes are present. diff --git a/lib/libc/gen/gen-compat.h b/lib/libc/gen/gen-compat.h index 08e80ede6b6e..4518c3f130d1 100644 --- a/lib/libc/gen/gen-compat.h +++ b/lib/libc/gen/gen-compat.h @@ -37,6 +37,7 @@ struct freebsd11_dirent; struct freebsd11_stat; struct freebsd11_statfs; +int freebsd15_readdir_r(DIR *, struct dirent *, struct dirent **); struct freebsd11_dirent *freebsd11_readdir(DIR *); int freebsd11_readdir_r(DIR *, struct freebsd11_dirent *, struct freebsd11_dirent **); diff --git a/lib/libc/gen/gen-private.h b/lib/libc/gen/gen-private.h index b6749b3435cd..97dd41ffbdfc 100644 --- a/lib/libc/gen/gen-private.h +++ b/lib/libc/gen/gen-private.h @@ -60,7 +60,4 @@ struct _dirdesc { #define _dirfd(dirp) ((dirp)->dd_fd) -struct dirent; -int __readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); - #endif /* !_GEN_PRIVATE_H_ */ diff --git a/lib/libc/gen/readdir-compat11.c b/lib/libc/gen/readdir-compat11.c index 606e15bd7b36..71c223f00b5a 100644 --- a/lib/libc/gen/readdir-compat11.c +++ b/lib/libc/gen/readdir-compat11.c @@ -95,7 +95,7 @@ freebsd11_readdir_r(DIR *dirp, struct freebsd11_dirent *entry, struct dirent xentry, *xresult; int error; - error = __readdir_r(dirp, &xentry, &xresult); + error = freebsd15_readdir_r(dirp, &xentry, &xresult); if (error != 0) return (error); if (xresult != NULL) { diff --git a/lib/libc/gen/readdir.c b/lib/libc/gen/readdir.c index 94d2b2e8d877..d0bbe72237e1 100644 --- a/lib/libc/gen/readdir.c +++ b/lib/libc/gen/readdir.c @@ -41,6 +41,8 @@ #include "gen-private.h" #include "telldir.h" +#include "gen-compat.h" + /* * get next entry in a directory. */ @@ -104,7 +106,7 @@ readdir(DIR *dirp) } int -__readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) +freebsd15_readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) { struct dirent *dp; int saved_errno; @@ -133,6 +135,4 @@ __readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) return (0); } -__strong_reference(__readdir_r, readdir_r); -__warn_references(readdir_r, - "warning: this program uses readdir_r(), which is unsafe."); +__sym_compat(readdir_r, freebsd15_readdir_r, FBSD_1.5); From nobody Wed Sep 10 16:58:47 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMRjM4R11z66b9h; Wed, 10 Sep 2025 16:58:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMRjM3bwVz3Spd; Wed, 10 Sep 2025 16:58:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757523527; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eUVrrcBYmKMZRI0wUBuYInidhsMRW2yJm1X+0kLfvzU=; b=vx0Bta5OvCbNcGxMLZJbPegIbQKpGumRROq/nwh1sMNK7f9FBZxhLtyPViA5d/TC9ry5zS 7Od82ymOPJJhUPpHPF2GTgOCIj2ecqqIyEvmdUL3GSxAkGaiS7Ih7GPKpIExzxjcWosTy6 e31ZCj4DdrzqBl9qhUs/r40DQyUzVdbgUg+VNdV97v+Vsudu6RiIN8XqAgvNMktyQJ0cnd FIw3l/MZhrKXhkyBIg59rDDOkZk+nZN8+HVg4egxgyinIdMgkCJTLju4JD68FBo7iym5zX 04B0KzCjhWx/0yUgee0LkBlHTnqp7RT5JcBHrPD3cujkHZTXFpmUDjLd+d5K7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757523527; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eUVrrcBYmKMZRI0wUBuYInidhsMRW2yJm1X+0kLfvzU=; b=dZ6VLaX96X6mfzqBlkd2wIcczTbAOiuAY2dOZgO6MWXEf437SL1Im6eVP3vccYbEsN3klG KlRh4irthytq5V+zyd/NeNgLnknoQTUramgB5mcUl0E4LPOZPypU4Gm2icql0KDo9S693x DHXPOgxX7+9aO8Mr52eodaUfPYEhiC8E9iGhyRHfKS3gdZRfU2QuEltlvBfwp0OjkeD0So kfJh/x7VTls86azrcGgaZKbrlq8Rqo4cus4dHIEFXUFbWMQyhxpJc2KLM+UYZ5V3QcSBbT d7+EN2Hb5c39ojvt62a+ji77t3WsOpN87SF2wR4JBvJqvZ0PWkJclnu0JfUnww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757523527; a=rsa-sha256; cv=none; b=ZfIBsdS9h218MTiOnbGEPDYOcK6iBDYE1hWDsN1BkqO10RlF//zcPfUM/QPqbhSdVPvXaT YaTUOIRksvNwWg1DnJbpOC3ZiYtAM4hHJoV+Zkh+GB3wA8lo6YAZw0mkLRNKUpWnqWQyb/ hfBrKBi2sonU9fj+d+2Uw/hKKhnn2MzS0cxhQFzFc7Tpvf+/W3wB6QVHpbdAvcQ7ZvxOqP BM2vqHB7Tp5q5EF04fk4EjZ8PrP63L0mQZlfP+JIdd+170T6xOmK+VdX4T2+WgOt9WThlL A4xtpYMHtVCjkKN7sAuQa/faoRG/StSwVRwVr+/R29uRIQgL4YOgeMYntmRNgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMRjM39XNzTkv; Wed, 10 Sep 2025 16:58: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 58AGwlab061469; Wed, 10 Sep 2025 16:58:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AGwlFE061466; Wed, 10 Sep 2025 16:58:47 GMT (envelope-from git) Date: Wed, 10 Sep 2025 16:58:47 GMT Message-Id: <202509101658.58AGwlFE061466@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: dd8c666d8b78 - main - src.sys.mk: Support src.conf in SRCTOP List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: dd8c666d8b78f6b9ddb691f0505837fa885ff3b4 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=dd8c666d8b78f6b9ddb691f0505837fa885ff3b4 commit dd8c666d8b78f6b9ddb691f0505837fa885ff3b4 Author: Dag-Erling Smørgrav AuthorDate: 2025-09-10 16:57:26 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-10 16:58:30 +0000 src.sys.mk: Support src.conf in SRCTOP If SRCCONF is not defined and src.conf exists at the top level of the source tree, use that instead of /etc/src.conf. MFC after: 3 days Reviewed by: kevans, imp Differential Revision: https://reviews.freebsd.org/D52470 --- .gitignore | 1 + share/man/man5/src.conf.5 | 9 ++++++--- share/mk/src.sys.mk | 4 ++++ sys/conf/kern.pre.mk | 4 ++++ tools/build/options/makeman | 7 +++++-- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 3ed711f301ac..a53a26f16d4f 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ tags .clangd .ccls-cache sys/*/compile +/src.conf diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 2895c0cf4746..a1abbcbda01e 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd August 20, 2025 +.Dd September 10, 2025 .Dt SRC.CONF 5 .Os .Sh NAME @@ -29,8 +29,11 @@ variables that control the aspects of how the system builds. .Pp The default location of .Nm -is -.Pa /etc/src.conf , +is the top level of the source tree, or +.Pa /etc/src.conf +if no +.Nm +is found in the source tree itself, though an alternative location can be specified in the .Xr make 1 variable diff --git a/share/mk/src.sys.mk b/share/mk/src.sys.mk index 2b9fc255a26d..ec035fb71e54 100644 --- a/share/mk/src.sys.mk +++ b/share/mk/src.sys.mk @@ -6,7 +6,11 @@ .if !defined(_WITHOUT_SRCCONF) # Allow user to configure things that only effect src tree builds. +.if exists(${SRCTOP}/src.conf) +SRCCONF?= ${SRCTOP}/src.conf +.else SRCCONF?= /etc/src.conf +.endif .if !empty(SRCCONF) && \ (exists(${SRCCONF}) || ${SRCCONF} != "/etc/src.conf") && \ !target(_srcconf_included_) diff --git a/sys/conf/kern.pre.mk b/sys/conf/kern.pre.mk index 1fcfd6467e7f..0251486247da 100644 --- a/sys/conf/kern.pre.mk +++ b/sys/conf/kern.pre.mk @@ -8,7 +8,11 @@ # the rest of /usr/src, but they still always process SRCCONF even though # the normal mechanisms to prevent that (compiling out of tree) won't # work. To ensure they do work, we have to duplicate thee few lines here. +.if exists(${SRCTOP}/src.conf) +SRCCONF?= ${SRCTOP}/src.conf +.else SRCCONF?= /etc/src.conf +.endif .if (exists(${SRCCONF}) || ${SRCCONF} != "/etc/src.conf") && !target(_srcconf_included_) .include "${SRCCONF}" _srcconf_included_: diff --git a/tools/build/options/makeman b/tools/build/options/makeman index ddd08443e61c..88ee5884d180 100755 --- a/tools/build/options/makeman +++ b/tools/build/options/makeman @@ -222,8 +222,11 @@ variables that control the aspects of how the system builds. .Pp The default location of .Nm -is -.Pa /etc/src.conf , +is the top level of the source tree, or +.Pa /etc/src.conf +if no +.Nm +is found in the source tree itself, though an alternative location can be specified in the .Xr make 1 variable From nobody Wed Sep 10 19:04:08 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMVV1035gz66kpv; Wed, 10 Sep 2025 19:04:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMVV05CWFz3lcC; Wed, 10 Sep 2025 19:04:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757531048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tUsJC6a/V/9O0iypKcfxtZN+enCPwhtq43T1BuI8/co=; b=KOwiGT1/E7RTO4BFGMByP1d34rduVXhBdNFxufgWVYoczDQ25LLqCfMtXpAy5I8B9PdngY KdApSUtQTUQwBQDL9xR4rLNgjKmOz7Hr2Yjsh+BSYIe9sioud2JYt0OEU7UpvcsNZeXtv6 8YdqVU9xOPC4fP5mF/49VuhyIih7L6e3NIrLS08gjUuQxRbsi39Fc899x9rEahtqNeLu3F 8P+TxLZRBEuWNIb5eSgcvLqucdRHnpuSNnPp4ekpZM5l/cYgRH72RbbT2lVMVlCoMv4BZK etzu52rB3ZFzJhU8qnpmGHtef146nhjqXNVNuT5xrank4slVHz5yaC2iF+NfSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757531048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tUsJC6a/V/9O0iypKcfxtZN+enCPwhtq43T1BuI8/co=; b=mgMLudnGJLqEfrc5XCG2sYIbAVOEmmeHmD8FW+V9JN4Tn09E+skNAZ3TNqvMXrN9doPcOw 3THQBa+u4VxTEEX5QyQCboAP8JB+EQimrt0c58F2gwqDvOL6bRLsKD18T/Liv6PjEuo5JV NPeP6IwoV/KXERtzjr1EXYOINRcKVPqrdLr0eN3Xr37u5jnJaS5a1EiaL3dS+yIRCAOs9W 8M4ZNCxNtMaz2v3vCsWPE8buKr8WiSuyOO6l9GO7sJwZrxyIPNKH5MebhXXdHMQeS9ODxo 1vcg2DC1+wt3lqf+7pGc0DiVUNXhj8N7TOYaaTzQK2cZsWTm4t1g8r9yvYQyQw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757531048; a=rsa-sha256; cv=none; b=R/iT+F760xCJaIrotRbjXyRIoOnQff3go4GximqXoPHCjtFf+YTcPb0P4U3piC4Hesx1rn tXqBx44nD+4ZOHkH3oNPmmNIiRaFMOFYpGM6RKA7UWgQwYxeB3Nyq7Hke0u3lNKPE+e4Rs pFdkE4Erxl25PK6z3xlTrBsIuixLjUyulRz11O6NCTABOo+03XVxGrf3kI0976ErPfurHl PpzAK/rkhPrF2XRgS/JtksglSf+i42Fisj4Wo8gdt8cC79uuBPFW7JwMtr8cX9faDZGkZW 4GciafAtGxDN9qCvzXYRuroSZdZy3oggAecWT3BZ8ESxGdjJMOcyYeVR+N8+3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMVV04mgVzZTx; Wed, 10 Sep 2025 19:04: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 58AJ48LM005459; Wed, 10 Sep 2025 19:04:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJ48rZ005456; Wed, 10 Sep 2025 19:04:08 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:04:08 GMT Message-Id: <202509101904.58AJ48rZ005456@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: a8a18eeb5e17 - main - packages: Turn off MANSPLITPKG by default List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a8a18eeb5e1711ad27c3ee20eb342b73d3badffa Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=a8a18eeb5e1711ad27c3ee20eb342b73d3badffa commit a8a18eeb5e1711ad27c3ee20eb342b73d3badffa Author: Lexi Winter AuthorDate: 2025-09-10 18:38:01 +0000 Commit: Lexi Winter CommitDate: 2025-09-10 18:38:01 +0000 packages: Turn off MANSPLITPKG by default Manpages are very small, and having a separate manpages package for every base package is quite annoying for users. Turn this option off by default. Discussed with: bapt Reviewed by: manu, emaste MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D52417 --- UPDATING | 6 ++++++ share/man/man5/src.conf.5 | 4 ++-- share/mk/bsd.opts.mk | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/UPDATING b/UPDATING index 57f6b2e66387..51589f13e139 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250907: + The MANSPLITPKG knob has been turned off by default, so pkgbase builds + will no longer generate "-man" subpackages; instead the manpages will + be shipped in the packages they belong to. If you want to continue + building split man packages, set WITH_MANSPLITPKG=1. + 20250905: FreeBSD 16.0-CURRENT. diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index a1abbcbda01e..ded16c9cf436 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1215,8 +1215,8 @@ is set explicitly) .It Va WITHOUT_MANCOMPRESS Do not install compressed man pages. Only the uncompressed versions will be installed. -.It Va WITHOUT_MANSPLITPKG -Do not split man pages into their own packages during make package. +.It Va WITH_MANSPLITPKG +Split man pages into their own packages during make package. .It Va WITHOUT_MAN_UTILS Do not build utilities for manual pages, .Xr apropos 1 , diff --git a/share/mk/bsd.opts.mk b/share/mk/bsd.opts.mk index 439924d0d596..66eb427c3505 100644 --- a/share/mk/bsd.opts.mk +++ b/share/mk/bsd.opts.mk @@ -60,7 +60,6 @@ __DEFAULT_YES_OPTIONS = \ MAKE_CHECK_USE_SANDBOX \ MAN \ MANCOMPRESS \ - MANSPLITPKG \ NIS \ NLS \ OPENSSH \ @@ -78,6 +77,7 @@ __DEFAULT_NO_OPTIONS = \ CCACHE_BUILD \ CTF \ INSTALL_AS_USER \ + MANSPLITPKG \ REPRODUCIBLE_BUILD \ RETPOLINE \ RUN_TESTS \ From nobody Wed Sep 10 19:25:32 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMVyj2PHqz66lTl; Wed, 10 Sep 2025 19:25:33 +0000 (UTC) (envelope-from jamie@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMVyj1sqLz3p59; Wed, 10 Sep 2025 19:25:33 +0000 (UTC) (envelope-from jamie@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757532333; 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=JBRh1jW3JcLr05TlDsus9lSO21wTTqn1I4Z2qZe8IBE=; b=edXhdzdbxC6DcDXp3LV4eMjG8rTN9BWNpYPGMQwMGOHZCv2gXWR984xcPMID1XRLLlZlFC hzMCyHVmc76ox6tsL4qi8NbHFfnCe/h/ygAOS6nH/qPK9W1lmTVGlZMtj18ulaN00eKSad UOD27RKvnUtFOBxZJzo9HksdD+sK+0Tg10UxjijkZMOLqVWBO37LkFo5W2g3lqH7V6w2Ye 5n0eLelppTmhYRHgIP3uuZdDYwF1hVYprxI7Rl8FegVPI6jCCMKto2oDO7hj2l381k4/cb GAKPW9VZSqpzsF4dzRAqE8RgEuxmDZdiWgRkMl66XxU6gGLmO+Dp1RD57Awwbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757532333; 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=JBRh1jW3JcLr05TlDsus9lSO21wTTqn1I4Z2qZe8IBE=; b=aUZD1Idwa9Mzh5SdPBgycelqxujCaufgx+OpWTDSlZ4Cv6SOrBOLhEXDUCCYm/rWrJCq8C 4BcrDiti+zWeJGGJmZ811PG45W3SIMYNS8CZK/9pJPTkB05viWcluFqeI80V2urMgB3ZpT NcMYSkVe0aeWn3ujtkaUK5ZxTVzItlY/p9HXum00mz2zsfjdWSbnPb+oKsgGrtqt2/zLNL 6hfaJ+NfDAEKPce3nmWGY1jJOxzkmMgfN9lQ/gxR0T0vkZ5Ei2rWGd4oVNAxZiQMRrtE1x x8aoEbJXw3nvXqBds7flcKbLYomc8fbxHwtfvWEQpVORidrRnWt2x5CiUj8ByQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757532333; a=rsa-sha256; cv=none; b=BdqBKGHW4d26Mr5dAIUZw551SUWCVtS2JgbkREMasBgzA8jG3KOwm2nNkKfZcCe2zh02x+ mg3PO2BC5JQEfCA/Y9UmyFYgUTAv8nQvh80GEH3bwvpVmAiQcYqh6opQexfM44OGZENDG7 U90DwQbEgMCqAlAV8b+ij7ozqY0/BCSIm7fgkrroFLBrGum2iPpuS6482uK1mez8ipHZ1x hs8bDtozuUcUoub9os3evZkKpzpwx695Ms8TPw7KQ0M6eTCmKgXHDsvjO6nRJCqA2M4C8+ a9InYBaL8kVyr1bb08M59R2lc3y7aT4Vrln3iCKapaMm62zelYU4a1abdQRquA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from m2.gritton.org (gritton.org [67.43.236.212]) (using TLSv1.3 with cipher TLS_AES_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: jamie) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cMVyj13Y8znGg; Wed, 10 Sep 2025 19:25:33 +0000 (UTC) (envelope-from jamie@freebsd.org) Received: from gritton.org (localgritton [127.0.0.212]) by m2.gritton.org (Postfix) with ESMTPSA id 3787C7C680; Wed, 10 Sep 2025 12:25:32 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Date: Wed, 10 Sep 2025 12:25:32 -0700 From: James Gritton To: Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 851dc7f859c2 - main - jail: add jail descriptors In-Reply-To: References: <202509042031.584KVpxY000408@gitrepo.freebsd.org> <2f66c886ab44aea5ad2e57cc72c03e3f@freebsd.org> <24a1f2413af24eea3fb5e9be9c05c4bd@freebsd.org> Message-ID: <4b63a73ee826d065b6f07771be9c5b37@freebsd.org> X-Sender: jamie@freebsd.org Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit On 2025-09-10 02:03, Konstantin Belousov wrote: > On Sun, Sep 07, 2025 at 09:25:59AM -0700, James Gritton wrote: >> On 2025-09-06 17:26, Konstantin Belousov wrote: >> > On Fri, Sep 05, 2025 at 10:57:30AM -0700, James Gritton wrote: >> An alternate way of solving the problem would be to create such >> a queue, allowing a single notification of such things as a jail >> attachment or child jail creation, or possibly more than one of >> them by the time the process reads the queue. > > No, the queue is obviously overkill. Still, no notification system > really require the queue. > > I am not thinking too hard what would be a good design for the jail > filedesc, > but I have some ideas that feels worth communicating. > > ... > > Next, for notifications, the notification subsystem does not need to > indicate what happen, in particular, it does not need to communicate > neither the jid of created (or destroyed) jail, nor jfd for it. It is > enough to make the listener aware that something happen. Upon > receiving > the notification, listener would interrogate the system state and see > what changed. > > The proc knotes are very bad example, in particular, the idea to pass > back the pid is wrong. It is known to be racy, both because reported > pids might get lost, and because pids only behave handle-like in the > parent of the forked child, so pid might be reused. > > Proc knote + half-done procdesc is not a good example to start with. I've given the queuing solution at https://reviews.freebsd.org/D52462 and I'm not particularly happy with it. It's too much code that doesn't really solve the problem. https://reviews.freebsd.org/D52461 goes the non-queue direction, mirroring EVFILT_PROC fork. Yes, I could go even simpler, and not worry about trying to report every transition. I could at least do a best-effort reporting, like how the attach notification currently works, with a pid and also a flag that says something was missed the state needs to be re-examined. That doesn't require any supporting infrastructure and still lets things run quickly in the usual case. - Jamie From nobody Wed Sep 10 19:47:23 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWRw1HfHz66mgR; Wed, 10 Sep 2025 19:47:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWRw0gBnz3sYT; Wed, 10 Sep 2025 19:47:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pVkHHExlQvzcEj3mijfh0fKQYc1XJ6/R5HyFrN15tnk=; b=ex07A/K1dec6bP+0V8Vntk5NC+ao6b7CFi2VGrus5WZC5WT8UXBL0NQgupLtEr2rkFmn7c 4qJhz7N6ut9vBcXD3SDHpLzY9QEiCMEMW5ICvNjRCQWBM5WCocUaT3R1b+QUws3Vc4p0Wn nBrLBWz6Pqa3I65jrYTpdXe3R5dWt7FcjpR5rq3Ulj1ZgOzqijGIFP1cD0SEggxFlGXY8X zx/DVYLofxCJXJJlrGZJWxEt+dtgOvjAr6aU+HlhU5viOdfnvPWLEay2iX+wWnBOHp7VsZ gcDWrj0FbWBFkejm0zUUpYwiIC8nC6falL/kkQzeD4x2Zov5XuhL+UTh7ltFKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pVkHHExlQvzcEj3mijfh0fKQYc1XJ6/R5HyFrN15tnk=; b=K96Zw82z5O3FAbTRl5zEHM8L2Kv0fn5nJrjuX4r9ZPFA91CVVa9rU/I7zDjt+6SuKCAb6z nTfSgJkkSmAYJX9GOR7LyZYMJKMD+rJfyPK99ok63VCSU45ybuTwzE1sl4GMFOA+bvxG5C fdgTfYJ8p991WizgyuA43kip3Hl8xRq9EytKGqf9kbiqkpK3PAEgaQMGuVhxpxHYd2xhQY 7RDuVKyAFrWaZ+MjKSo/LWO7Ef2Iji3Sz2DuZV7NCxD3V+W+r584HlSYFkxDQ0YHeqelgr ew8/CK62K6nGD5/F/HepOkByQYEr+6mEnVSBVRcpYEfG9fbxR1nbBr6t1MfGeg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533644; a=rsa-sha256; cv=none; b=Qt2mFCagXomAK4gwi5O0pqrdctYJZs3KJeXVSiTFu7LuMMVRESG24Q7s63ci0uEWZNUXtD UV616jOaToHtQQwFzc7Qktf3LcQyGzsPV3rEGCpsvwYQ0KnULm/gGkK2YcGSYP8MF9v3ZS hhYuipXvHvDUiYZcp1g1/gabHfNfHAKznyJ/5Tb1Tjli+9gp/2uDBgTGArs5MvSqIKP7HL 49zNQe5e02MRWwL6Wx1FOzwvOUJhGXQUCpSVE9SRSGK5C3/6FuoBWHwtbzMHjSiSIqQ99z 9I2AclKIzyDuM4CItRtAYWHi9vZAMbQQIDB2mh/05OF4vOmFm1i6fpo5yPIcNg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWRw0DFwzbwM; Wed, 10 Sep 2025 19:47: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 58AJlNu7081176; Wed, 10 Sep 2025 19:47:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJlNXS081172; Wed, 10 Sep 2025 19:47:23 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:47:23 GMT Message-Id: <202509101947.58AJlNXS081172@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: c3d5387a7bd8 - main - tcp: minor cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c3d5387a7bd814a6c341902c29a3f8aaa956fadb Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=c3d5387a7bd814a6c341902c29a3f8aaa956fadb commit c3d5387a7bd814a6c341902c29a3f8aaa956fadb Author: Michael Tuexen AuthorDate: 2025-09-10 19:46:24 +0000 Commit: Michael Tuexen CommitDate: 2025-09-10 19:46:24 +0000 tcp: minor cleanup No functional change intended. MFC after: 3 days Sponsored by: Netflix, Inc. --- sys/netinet/tcp_subr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 2e039ebbfdd2..cc83a21773a8 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -645,14 +645,14 @@ out: static int sysctl_net_inet_default_tcp_functions(SYSCTL_HANDLER_ARGS) { - int error = ENOENT; struct tcp_function_set fs; struct tcp_function_block *blk; + int error; - memset(&fs, 0, sizeof(fs)); + memset(&fs, 0, sizeof(struct tcp_function_set)); rw_rlock(&tcp_function_lock); blk = find_tcp_fb_locked(V_tcp_func_set_ptr, NULL); - if (blk) { + if (blk != NULL) { /* Found him */ strcpy(fs.function_set_name, blk->tfb_tcp_block_name); fs.pcbcnt = blk->tfb_refcnt; From nobody Wed Sep 10 19:49:09 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWV90tMSz66mgh; Wed, 10 Sep 2025 19:49:21 +0000 (UTC) (envelope-from phil@juniper.net) Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.pphosted.com", Issuer "Sectigo RSA Organization Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWV85Jqpz3sgR; Wed, 10 Sep 2025 19:49:20 +0000 (UTC) (envelope-from phil@juniper.net) Authentication-Results: mx1.freebsd.org; none Received: from pps.filterd (m0108156.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58AGGROV011602; Wed, 10 Sep 2025 12:49:19 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=PPS1017; bh=oz vauQy9KLCfm/81GZiGH5wr3Kf7kvn7pcDVg9k4awE=; b=xR+yWtKijikmEM4fpw jJ6ib0r/ZhoSmDTj7XDZ0YcSUKbLjrjAVR3bI1uOIgsMrRc5EJqd4wDD7fsooDtd i3dPPM/SYC+2F1HnEAtvzrkcao6yzEWls7H3h4paV9AB/zA3m3F9zl2um0mJVKdq RRgaaZKFgC/mNdezfjyhBkIwQQlnwv8QyrZ8oGWcBJC2A9vNlsLCKqHhTUXt/ykh sVqh53EEkNE5twsi63hC9n45+TQtZAqXY/u+P4rKjslxVZbfSv1rSDuersJEbDjk I9Kd7EWG51VtQU9xK2jLykSXARjcVlY6XFz9p4UHi/l5JLm7+tIZsoAyOD++tkFR TGwA== Received: from ch1pr05cu001.outbound.protection.outlook.com (mail-northcentralusazon11020138.outbound.protection.outlook.com [52.101.193.138]) by mx0a-00273201.pphosted.com (PPS) with ESMTPS id 4935rfhgs7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 10 Sep 2025 12:49:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=R7bOUwofbUzUjA5xPSWRlIk9jHNeRqiE0nKxfQ1FxVVtkRjdglXT29WKCYCvzM6Cz4zOl7A2mosG/Ifeod3Ta9nZ4P3FC1tdwo2CDxinPEQnGKLxuDiZXPL2RehrwgEXjwKJn0QHAhCMyX3eTqi0Uqy7CEmLWOVJLKmEVBXBi67+X5Fu9mmYDKXQzmUnS/hU7+71byGcu6MwRKoDlNV1enXbvoWvlp4pGye2lGUYRYBTDdi9wj8wJgOoTBIJmpbmHwKZJiR2aEkru3Hi5ZZO7g1vLkHslcJpWT7pth4UFV2AlTfvm3lM0LNkGrcnIqriRwu2nAexBLcNgMhT9CZs6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ozvauQy9KLCfm/81GZiGH5wr3Kf7kvn7pcDVg9k4awE=; b=LKPjRA30gzD5IQ5P5Mit84+Wi1vUmUWzfxgrXH6M12jv6HsJVygR3enmHGiebEkIRWo4pl9C0XxLPKH/5r6mHn36MPtgcX+Psj2CYBfMRgol+DSQDWKk0sB5fXuu6J/O2iqYMZiTgm6esyUNqSZ5JsonT52sp8zpIi5lye0Xm3hhIuA/jBOUYmkpCErDCrBiGCzwRT8JrlQf+fxvwbVf8jKeChpeWlwDYrFNm3XSDi5tWiVRj9jQlOOnnfixX1vl0QfapFA32/Uid8Xp6k8Y38fNaSR3pkOQdIPXkxS78ZEoBALHGYRwC7GIfDPATKe0muo7ybyzGYCrunYyUauphA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=softfail (sender ip is 66.129.239.15) smtp.rcpttodomain=gmail.com smtp.mailfrom=juniper.net; dmarc=fail (p=reject sp=reject pct=100) action=oreject header.from=juniper.net; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ozvauQy9KLCfm/81GZiGH5wr3Kf7kvn7pcDVg9k4awE=; b=DjlpdDJULBSKzi2PhSRAYg5yFlsZ17LEZnrVSmPHUpoVsSUSVgDxzqI9gJ0CVqOfLOdF0iUeyuJufLrSu1O2bZ7ORJEEOca4FVEy8om/lqpNXDGAN1kaWWmyZeIwU+PuwcQ8kO0/3L3b59OJX8VmcVVcyAvqR03BO4UNln0f784= Received: from BYAPR01CA0037.prod.exchangelabs.com (2603:10b6:a03:94::14) by SA3PR05MB9668.namprd05.prod.outlook.com (2603:10b6:806:313::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9094.19; Wed, 10 Sep 2025 19:49:14 +0000 Received: from CO1PEPF000066E7.namprd05.prod.outlook.com (2603:10b6:a03:94:cafe::f3) by BYAPR01CA0037.outlook.office365.com (2603:10b6:a03:94::14) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9115.16 via Frontend Transport; Wed, 10 Sep 2025 19:49:02 +0000 X-MS-Exchange-Authentication-Results: spf=softfail (sender IP is 66.129.239.15) smtp.mailfrom=juniper.net; dkim=none (message not signed) header.d=none;dmarc=fail action=oreject header.from=juniper.net; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.15 as permitted sender) Received: from p-exchfe-eqx-02.jnpr.net (66.129.239.15) by CO1PEPF000066E7.mail.protection.outlook.com (10.167.249.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9115.13 via Frontend Transport; Wed, 10 Sep 2025 19:49:13 +0000 Received: from p-exchbe-eqx-01.jnpr.net (10.104.9.14) by p-exchfe-eqx-02.jnpr.net (10.104.9.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 10 Sep 2025 14:49:13 -0500 Received: from p-exchbe-eqx-01.jnpr.net (10.104.9.14) by p-exchbe-eqx-01.jnpr.net (10.104.9.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 10 Sep 2025 14:49:13 -0500 Received: from p-mailhub01.juniper.net (10.104.20.6) by p-exchbe-eqx-01.jnpr.net (10.104.9.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14 via Frontend Transport; Wed, 10 Sep 2025 14:49:13 -0500 Received: from idleski.juniper.net (idleski.juniper.net [172.25.4.10]) by p-mailhub01.juniper.net (8.14.4/8.11.3) with ESMTP id 58AJnBjv004047; Wed, 10 Sep 2025 12:49:12 -0700 (envelope-from phil@juniper.net) Received: from [10.0.0.103] (localhost [127.0.0.1]) by idleski.juniper.net (8.18.1/8.18.1) with ESMTP id 58AJnx9c086480; Wed, 10 Sep 2025 15:50:00 -0400 (EDT) (envelope-from phil@juniper.net) From: Phil Shafer To: Konstantin Belousov CC: Ka Ho Ng , , , Subject: Re: git: 11ace56fa030 - main - contrib/libxo: fix API header files inclusions in C++ source files Date: Wed, 10 Sep 2025 15:49:09 -0400 X-Mailer: MailMate (1.14r5937) Message-ID: In-Reply-To: References: <202509071842.587IgHbm001636@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000066E7:EE_|SA3PR05MB9668:EE_ X-MS-Office365-Filtering-Correlation-Id: 07442abe-0cfe-435c-a898-08ddf0a31e89 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|82310400026|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?vh+pJbfuFp7iFe+k7sY0l9sQHqBT/9sBrQH3qLwT77texwaOGpaZbiGJsMFs?= =?us-ascii?Q?9nOsgdDx25gC/yHwBwZvW+mm8xadFp/InJ4vvFnbsquFvb97HS7lbAtMgJLu?= =?us-ascii?Q?h1DOGD2StxL6DOl/1bka8pyJ+j8rEvbDx0hNkMRGdN89QqrYIDT6eZX3iQn9?= =?us-ascii?Q?pyP6yRb2k6W5lKcWHk6vKjzCqa8gzFjeT6v5fVktWXUGj+P3gD33exnLRkOp?= =?us-ascii?Q?3j7QDdLBu38WDmq/QjFGSnpm5lUyHRXKc4pmLc+8UFZIJY8JC/DFskBqi3y6?= =?us-ascii?Q?bd19qHgMXRAcxYbh+KDF1gdHSnL0v2o/i85dGsBFUDDI8wWHhkeoj6rU1a2t?= =?us-ascii?Q?WkV+szSX5eux1aTo0VLW81XpNaSO8FKjbBjkaWkXA7T80TuE2SQuQ681+Tmc?= =?us-ascii?Q?VwyRm+G+ezO+r/SIb+C9/InKoVf1T1rdp8ZC4LoAMJ5rfWKxiQ30Hx92pUm/?= =?us-ascii?Q?Bvmth1mJFuNnyw2MxYZ7vWF5hbE4VbUMr3lp2saq1pTxobHXnBbhO/zX3N7e?= =?us-ascii?Q?W7V3KKwlmQT7e4KeTKy0nHtT+jGhmnIZUKB9RSJZGFl9m08E92nYocwBME/r?= =?us-ascii?Q?gFrdVGrDARWnXK9nIhSsoNDgf0KfgQODbJCvsdk34BemmDh7+gdm/EoZUbl2?= =?us-ascii?Q?mkgVZiyysRiCkOsfMdke9mFONwYcb+aOUMqzvr8yIiXgL49qDDIGqYhtEIJi?= =?us-ascii?Q?c3qO+CL0JY7py4CjRKv4UtTMh45dLynsmv/V3CVkn3CNtJeGCndleiSDZOLs?= =?us-ascii?Q?dWUTqRLPNeQ6ocp9YBhQUQ4tl48blPfvsEMVrE21vIdYdiiDKj3pB0ZKzmm2?= =?us-ascii?Q?Zw1ZVzdJuoGe9fmWxgPsJmfygTX/AMh3PUxgMQO3XrHk7Hm+VHZecOGb2MKr?= =?us-ascii?Q?bKwQfhp15qlfl1PbfuQpFKaamhIxvkJujOVsfsC9MKcVl1KH+u26UB7Wqpy3?= =?us-ascii?Q?FX3OalEAA0YsaK1L8HVDZdQOr1AvzuoDtK99rDADoGn6RW2jBlUxxHcNmSN3?= =?us-ascii?Q?8PqBB48FtkbDinXTzXXklZ+Vi+OxQb305od9OdQOpX7gXz8gNzCwZXGf0XVX?= =?us-ascii?Q?3o4qpk3qrZCzZiurQDKgxUnMj9mScTP8fXcpNVosznI7ASua+zaV/fNPq/2V?= =?us-ascii?Q?smutgbEYf9dY10FLm9lzTR+uuHm/r1mDlLHNTZ2jYwXORoIxOLHFBLX3t7Ul?= =?us-ascii?Q?rtUeIJHcrVKEktXtSRNWhoc3w77PgFTsvFUXLIjxipZJH63ItFnLl8zi3uem?= =?us-ascii?Q?IbnLRyjMnsKUhl9WI3FQbhSRB7IS7wradodqDkPdYPwBKWn9sfI/xVIVeOQ+?= =?us-ascii?Q?25wzSNdGVhR+gwvj6AsEd4z5Bs4f48kw3yCtlQcl6f++zYLEGwZmq9Ar7TXD?= =?us-ascii?Q?WVMXH8UMciAovTtD0mGnH7rxYw5ezmDMQTc0MSUOMEZixI2AuO+i5IcCUaQS?= =?us-ascii?Q?y40trKUb73r5LawFwkg/rCITXIUrL9yHKkCh6k3ZVsSSGNznZioJ8vH7EkB7?= =?us-ascii?Q?2jdcgCfErIbbu/nDdlYP4tkCHpaodtNJik9k?= X-Forefront-Antispam-Report: CIP:66.129.239.15;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:p-exchfe-eqx-02.jnpr.net;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(82310400026)(376014);DIR:OUT;SFP:1102; X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2025 19:49:13.8582 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 07442abe-0cfe-435c-a898-08ddf0a31e89 X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4;Ip=[66.129.239.15];Helo=[p-exchfe-eqx-02.jnpr.net] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000066E7.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR05MB9668 X-Authority-Analysis: v=2.4 cv=H4Pbw/Yi c=1 sm=1 tr=0 ts=68c1d63f cx=c_pps a=wpg3e3TFAlO0qOiIlNsFBg==:117 a=YQU41r7WENJiSYrYYNJVsQ==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=h8e1o3o8w34MuCiiGQrqVE4VwXA=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=yJojWOMRYYMA:10 a=s63m1ICgrNkA:10 a=rhJc5-LppCAA:10 a=MHmaIDd8pHwpRYVouS8A:9 X-Proofpoint-ORIG-GUID: 5XLpMU68Gt1WqpXERSkrO189Qt6QMPic X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTEwMDA3NCBTYWx0ZWRfX/VIIWts1vsyl k6JJgKY94b0foCuTMOqDKpo4huh+h5/zYVPPNzOyi9VUX/CsVpBj4AObjiw2OEZt4AAy+05hjWV D/uNATaHINND4JpTbUXJZ2q+1vqD65dxMggrtHKrt95yn8NSDGoPkC/2K1wUUwHb2lnERji5Qye tAyaGdjW2SyDueBRFhnZXxzIdrcyeUlRySvZhL3nisOTq1FtuYNz0Vw5CrMU5csy5FNNyEbi3P5 z6jYA/tdFHn5D5pL+kDmZby2JVjBZciTTeRwx/vbZIW23lK+HGs1kgQTovb4t/IseCkD1xfvi0b TxdvOil725h4jtr8BCwv//AfdKK4glivjY+7XDd73KDG/1NNaJagDaQa9zOdPi4wxys7ZorK/Up 4vPKRrNV X-Proofpoint-GUID: 5XLpMU68Gt1WqpXERSkrO189Qt6QMPic X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-10_04,2025-09-10_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 clxscore=1011 priorityscore=1501 bulkscore=0 spamscore=0 phishscore=0 suspectscore=0 impostorscore=0 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2507300000 definitions=main-2509100074 X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:26211, ipnet:208.84.65.0/24, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cMWV85Jqpz3sgR It's not freebsd-specific, but __BEGIN_DECLS isn't freebsd only. If it's= reasonably portable, it makes sense to use it. I see it in macOS, glibc= , and linux (at least some of dists). Thanks, Phil On 10 Sep 2025, at 0:31, Konstantin Belousov wrote: > Would it be better to use __BEGIN_DECLS? I am not completely sure due t= o > > contrib/, but libxo is FreeBSD-specific enough already. From nobody Wed Sep 10 19:52:24 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYl069Cz66nKf; Wed, 10 Sep 2025 19:52:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYj00cWz3vDT; Wed, 10 Sep 2025 19:52:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533945; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KkKY+bJqHesGN1k9/SpADl+1W2MgeqPN5t3jEOmdNAo=; b=lLFtoPQ9eGtGFYyY+iTQVPsV1eGxkJyxTdy8JiL0IDHXpbcsP2YIwOUSjVeFw819twJecn /+LMgqMkwfc0xoXA+k1UvKuXBi7ms59CGmXrOZFg+OVQilqyRgUWiDBuUCgip3P1WPs3sz ya519bGApXYpBaKiPp1RkALIefBltq80NEgCtpT6Ueh0r+CjKAEYGlS91Vo1vjlMDjiGgC 2fiTW5NlFUgihU8BqHCN3EFh4XZ1ILt29yTQstN5sD0jFYywALU9g15mP5oyky2aAqh36y glmE7bxVl4pWIBuTWYeZfw4KftKsn4hjfpUME1KaifXLzZzpgo46rxH66lPMDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533945; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KkKY+bJqHesGN1k9/SpADl+1W2MgeqPN5t3jEOmdNAo=; b=KWJy/c02PLKen5+BA1qpffkh3UkhzM3gDvS2l7NIqlTDe3e9NdjUhykWYIZejvtzgS9K2k cf0jowynMRsii+vJQj6ATbcIaZWUWXMNFsCcflaedPsAsmwEKt8UBtjRuOQIxOpgBH9bn7 0FRr3FcsTGnaOHEU33EIhvpc4woBg5nVSQmqbm31KEUAZNFXU/eZy6FFJyAlPbRB3vvj2r O2CI+ARxBGotghnhGEnWe0tum6JfEwAT3YAJgQGrzoWRv2u5z3GIQHF+Hs+gHGRs03HvUP +a2VmfgjM5Z05H4tdadSgwz5nOzX6sk1uYS08Z1uEwHo4cfDf5bkq7KRmJsGew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533945; a=rsa-sha256; cv=none; b=Mli2AUqJG4f4c87oG8GQhKq+ZtDMKoBkKZ2Cxpml1nZMLusT4MF65ZxamH+XPLd9JA3Xdp TKOYWWsSGoaHplRdrrbRDE/5gkkdyUzY96R7riYixY/sODIbZXeyjBxY7zUJnjxWd2fzMR LC8qnh6Vd8K/pPqfg3+1EnlSiaGcQdtKazPc3XaxSyyp9tLxjk8s1Cp6du2jfM9mkOm0Xi KZaJx2dWkf8+/gomg2ucHnsXspmNKY0gipfhVScUnSH3LWWlFddcwoYZsV8/5xXMG8dIfM K7ZPlIVvuki8H7T+FnY0Hqp9FzXwK3K0nyDfYYLWgf+9hEO26Tt5KglhUm59IQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYh5lTKzcN7; Wed, 10 Sep 2025 19:52: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 58AJqO0B095303; Wed, 10 Sep 2025 19:52:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqOm0095300; Wed, 10 Sep 2025 19:52:24 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:24 GMT Message-Id: <202509101952.58AJqOm0095300@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 7aac81a639b4 - main - pfctl: support recusive printing of tables List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 7aac81a639b49849e9ce1f59f538a2f491395037 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=7aac81a639b49849e9ce1f59f538a2f491395037 commit 7aac81a639b49849e9ce1f59f538a2f491395037 Author: Kristof Provost AuthorDate: 2025-08-20 12:41:57 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:39 +0000 pfctl: support recusive printing of tables Currently 'pfctl -a "*" -sr' recursively walks anchor tree and shows rules found in every anchor. This commit introduces the same behavior for tables. Command 'pfctl -a "*" -sT' prints all tables attached to every anchor loaded to pf(4). Inconsistency has been noticed by Klemens (kn@). OK @bluhm, OK @kn Obtained from: OpenBSD, sashan , 3898e3532e Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/pfctl.c | 25 ++++++++++++++++++++----- sbin/pfctl/pfctl_parser.h | 1 + sbin/pfctl/pfctl_table.c | 18 +++++++++--------- 3 files changed, 30 insertions(+), 14 deletions(-) diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index 36bdd9705830..10a833ea4850 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -137,6 +137,7 @@ int pfctl_recurse(int, int, const char *, int pfctl_call_clearrules(int, int, struct pfr_anchoritem *); int pfctl_call_cleartables(int, int, struct pfr_anchoritem *); int pfctl_call_clearanchors(int, int, struct pfr_anchoritem *); +int pfctl_call_showtables(int, int, struct pfr_anchoritem *); static struct pfctl_anchor_global pf_anchors; struct pfctl_anchor pf_main_anchor; @@ -3056,6 +3057,13 @@ pfctl_call_clearanchors(int dev, int opts, struct pfr_anchoritem *pfra) return (rv); } +int +pfctl_call_showtables(int dev, int opts, struct pfr_anchoritem *pfra) +{ + pfctl_show_tables(pfra->pfra_anchorname, opts); + return (0); +} + int pfctl_recurse(int dev, int opts, const char *anchorname, int(*walkf)(int, int, struct pfr_anchoritem *)) @@ -3070,11 +3078,13 @@ pfctl_recurse(int dev, int opts, const char *anchorname, * so that failures on one anchor do not prevent clearing others. */ opts |= PF_OPT_IGNFAIL; - printf("Removing:\n"); + if ((opts & PF_OPT_CALLSHOW) == 0) + printf("Removing:\n"); SLIST_FOREACH_SAFE(pfra, anchors, pfra_sle, pfra_save) { - printf(" %s\n", - (*pfra->pfra_anchorname == '\0') ? "/" : - pfra->pfra_anchorname); + if ((opts & PF_OPT_CALLSHOW) == 0) + printf(" %s\n", + (*pfra->pfra_anchorname == '\0') ? "/" : + pfra->pfra_anchorname); rv |= walkf(dev, opts, pfra); SLIST_REMOVE(anchors, pfra, pfr_anchoritem, pfra_sle); free(pfra->pfra_anchorname); @@ -3477,7 +3487,12 @@ main(int argc, char *argv[]) pfctl_show_fingerprints(opts); break; case 'T': - pfctl_show_tables(anchorname, opts); + if (opts & PF_OPT_RECURSE) { + opts |= PF_OPT_CALLSHOW; + pfctl_recurse(dev, opts, anchorname, + pfctl_call_showtables); + } else + pfctl_show_tables(anchorname, opts); break; case 'o': pfctl_load_fingerprints(dev, opts); diff --git a/sbin/pfctl/pfctl_parser.h b/sbin/pfctl/pfctl_parser.h index 721950967661..58d3abc36691 100644 --- a/sbin/pfctl/pfctl_parser.h +++ b/sbin/pfctl/pfctl_parser.h @@ -56,6 +56,7 @@ #define PF_OPT_KILLMATCH 0x08000 #define PF_OPT_NODNS 0x10000 #define PF_OPT_IGNFAIL 0x20000 +#define PF_OPT_CALLSHOW 0x40000 #define PF_NAT_PROXY_PORT_LOW 50001 #define PF_NAT_PROXY_PORT_HIGH 65535 diff --git a/sbin/pfctl/pfctl_table.c b/sbin/pfctl/pfctl_table.c index f583f5ef8e79..0845f765a063 100644 --- a/sbin/pfctl/pfctl_table.c +++ b/sbin/pfctl/pfctl_table.c @@ -417,21 +417,21 @@ print_table(const struct pfr_table *ta, int verbose, int debug) { if (!debug && !(ta->pfrt_flags & PFR_TFLAG_ACTIVE)) return; - if (verbose) { - printf("%c%c%c%c%c%c%c\t%s", + if (verbose) + printf("%c%c%c%c%c%c%c\t", (ta->pfrt_flags & PFR_TFLAG_CONST) ? 'c' : '-', (ta->pfrt_flags & PFR_TFLAG_PERSIST) ? 'p' : '-', (ta->pfrt_flags & PFR_TFLAG_ACTIVE) ? 'a' : '-', (ta->pfrt_flags & PFR_TFLAG_INACTIVE) ? 'i' : '-', (ta->pfrt_flags & PFR_TFLAG_REFERENCED) ? 'r' : '-', (ta->pfrt_flags & PFR_TFLAG_REFDANCHOR) ? 'h' : '-', - (ta->pfrt_flags & PFR_TFLAG_COUNTERS) ? 'C' : '-', - ta->pfrt_name); - if (ta->pfrt_anchor[0]) - printf("\t%s", ta->pfrt_anchor); - puts(""); - } else - puts(ta->pfrt_name); + (ta->pfrt_flags & PFR_TFLAG_COUNTERS) ? 'C' : '-'); + + printf("%s", ta->pfrt_name); + if (ta->pfrt_anchor[0] != '\0') + printf("@%s", ta->pfrt_anchor); + + printf("\n"); } int From nobody Wed Sep 10 19:52:23 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYk0SC3z66n69; Wed, 10 Sep 2025 19:52:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYg5HGKz3tvX; Wed, 10 Sep 2025 19:52:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533943; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VdhO8gjoSWa+Y12zX4rtlF50IXawi92WtnJDsQkllbs=; b=lQimIRiWWyYO+nKoYkZcsbuwXx2W9UtKuu9SD8VGyNmZ+PYRu6nppAo26RyLu3/y6R/Z8c 4mWsRPDn+36nL2oVrm1tcfmnsJY+0WEn4bPEeF/Xsn59Aqqn/LIGRLLAPAJxBGOjArRS9W FChxWhKTTr6640pLUFHcBlot9Y0q7ysb5TxEdqN9g2D19HNb6pxI9XKCDzKC9nEd6J3ZUp WAx2a5dZlUI4WgubVpMvuTJRddon7hNwVjhGiMnjBuO9beRZe5bp4S+MuaaRJtLrTF7zY5 utxgqKUtaoP6ubge074fFHy3ygl3/sauHRvreMn9vG/9t44usY/aYaTkIvD51g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533943; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VdhO8gjoSWa+Y12zX4rtlF50IXawi92WtnJDsQkllbs=; b=uEEbNhidRbrtSeAHuZMDtJuI7JTrOMdD7PSkMkpY1rbLUSn1xX5F7+ktpZE5F3K716d2od YJ6ff1MfYFeRVlD7EvYpzIeNmv8R3UIb4wNO+9gE9wU5WkHs9JjaFP6OSLJjnIzLmWej+X AKBEfNvB8Cqmdyr3A6OdljBRQF7YwMQr6hT51YtGayUJqGO4/xWST+e8UcQL7fuAu3IMnZ CMyphFiLRURDyVBVY3yfIyKVzRoIWWXcTxOSuwI6tGDRUuVS106/jE/Z9sK0kg00dDAxvr 67mRMV9HCK/58qaGPC3+ZH2jDTlRY0n6q0hPtOIZyJfpVZExq+fVAR+xDbLciA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533943; a=rsa-sha256; cv=none; b=ZkPK/cPqjky1F1g0P9r9WU9ge9G4P2tcPCgDlFwMsDaIiYs+9HYXklhfMu/ORuCaNcVTkX X6U5TFrII+LOEJlmsifm/6KfYROIIqxFrFA43li8U8+oEYASvbLzrByjSoNDoccZaM29Vy yjrBdHhz0N11iN4w1f04qDJSoZMTZIFWO8C5DEiROWArZ2tWPN8pn3mPM7U+aMsfkEi6/m 8jPwtMnkzUmoE0CSVEHLS+nPj0Glx9ZML5NskuCiEzM2CMJynxxEV+k/sMXw5h3M2bJhiv d6MX7P5c0WzPT39sUuOmLq7urHpX+Ipn6dOZJk/8S5eMx3br4SVq1aNQjpTxmA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYg4qHRzcW1; Wed, 10 Sep 2025 19:52: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 58AJqN2h095270; Wed, 10 Sep 2025 19:52:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqNHp095267; Wed, 10 Sep 2025 19:52:23 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:23 GMT Message-Id: <202509101952.58AJqNHp095267@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 66694675be29 - main - pfctl: Use pfctl_fopen List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 66694675be291927d1442c62f852ad7f73652aaf Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=66694675be291927d1442c62f852ad7f73652aaf commit 66694675be291927d1442c62f852ad7f73652aaf Author: Kristof Provost AuthorDate: 2025-08-19 11:41:44 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:39 +0000 pfctl: Use pfctl_fopen Use pfctl_fopen (which checks to ensure the given file isn't a directory) for pfctl -f /path/to/pf.conf. Otherwise, if you accidentally use a dir instead of a file (e.g. if you have an /etc/pf directory and don't notice the name when tab-completing), you successfully install an empty ruleset. ok sashan@ Obtained from: OpenBSD, sthen , 2f48098846 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/parse.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/pfctl/parse.y b/sbin/pfctl/parse.y index dce5800df27a..46e9f60fe48e 100644 --- a/sbin/pfctl/parse.y +++ b/sbin/pfctl/parse.y @@ -7091,7 +7091,7 @@ pushfile(const char *name, int secret) free(nfile); return (NULL); } - } else if ((nfile->stream = fopen(nfile->name, "r")) == NULL) { + } else if ((nfile->stream = pfctl_fopen(nfile->name, "r")) == NULL) { warn("%s: %s", __func__, nfile->name); free(nfile->name); free(nfile); From nobody Wed Sep 10 19:52:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYk0Pqyz66nRC; Wed, 10 Sep 2025 19:52:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYf4kqPz3tyx; Wed, 10 Sep 2025 19:52:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533942; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uJXnN/B7RQhM6j7GrmHfnjJxyFNuKmXwAbNnlcqmJrk=; b=YfkDyTU1Bd6pZ9Lk2tIeZU0lPj1BjjRU0YSptOr5YSzvfjUOr4NdXx46hz/wxqERw7WWVd PhQfGDE3V6KZUVlrbWqz1PtDjmj7RU4guzVjqWkmTPrIgDD/U/lkfr0aUAuFDwfNaO1S6F +3tMZfVUtSxqn4o/xy5OCvcEhUfboiMAI1uS9KBDPu+TyiyyUIT6uwQnxqcYFavYniGWYN /SvnUT/aAhHEfcr/fi1csQ3xhgDeCSQVh7u+0sq+7HqiqQeNPO68z10QpN5N0U08e9Zw0x OUn1eWMs4SjeuJC6nehnKJHRWqmtNKXPYkZnx5TyZ/ZzZCFKerYLBoAB9/3GIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533942; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uJXnN/B7RQhM6j7GrmHfnjJxyFNuKmXwAbNnlcqmJrk=; b=sZAjibWGH12gvq0y2kQqOZvaW44mXrQi6mb9B3TwxMYHk5LdTt+SkxrKKBS09kT0hOlvia j7Idk1ZzK4LyH9VA5pkuUGRgOag4ouCRTMkP4yfhg7WsEU3DFPeVZvvI6RT99tc/kvlWzJ K/7YoZfoXvQGvwppS/9z/FERSPAXaegdYuUscQE/4uo5fs1kMT6CSsxDnTLtYQA3/lIL0D luXUFcvKtIXGipuuYYm4SNgCEpgs+9u35A5PgLNgz+l18pScEQmeAzXD6wfYmFg3ordVUh 1eXBZbPHarsErU+HISSlstotUpkEjb7kP/X0cehZz+Fuw5UxND6AdqruvX3O8A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533942; a=rsa-sha256; cv=none; b=RTESHv9N/LepvbM/z10BxUX4TKZATYGx5kI4VU+eMxMjbkn6Rm7p6pEF8ReXEpC4WjA/kU JVNaeoayp4md0gPIhxc8lZQEjcoIBrJLk+MBFYDc51BQ3d8OFTKhFsLNGzbKvHDBw5QKU9 YvYtwxYl7vY2cMvmi4AQVAv5woWVVIppgYBHKS8Kp2CLTGuB20C3VCfH+fdyaAkvYC47xV hDhZHHSju480/GPKvUAfjBIUUpKmj9EGoL2dhK/yMl9ZhfHPKMcAlaVJHKlKxO4MA1wryD WDg5wxgl5sqkmzMKvUpOkBROqhwYXS/Istn5QKfRZ0uLXk1AdB8ekDJgQrlvNA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYf4CXQzcL7; Wed, 10 Sep 2025 19:52: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 58AJqMd3095235; Wed, 10 Sep 2025 19:52:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqM0u095229; Wed, 10 Sep 2025 19:52:22 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:22 GMT Message-Id: <202509101952.58AJqM0u095229@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 94804658ab04 - main - pf: Remove dead code in pf_pull_hdr(). List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 94804658ab045fd386c2f031186c86f686c6870a Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=94804658ab045fd386c2f031186c86f686c6870a commit 94804658ab045fd386c2f031186c86f686c6870a Author: Kristof Provost AuthorDate: 2025-08-19 11:16:51 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:39 +0000 pf: Remove dead code in pf_pull_hdr(). pf_pull_hdr() allows to pass an action pointer parameter as output value. This is never used, all callers pass a NULL argument. Remove ACTION_SET() entirely. The logic (fragoff >= len) in pf_pull_hdr() does not work since revision 1.4. Before it was used to drop short TCP or UDP fragments that contained only part of the header. Current code in pf_pull_hdr() drops the packets anyway, so always set reason PFRES_FRAG. OK kn@ sashan@ Obtained from: OpenBSD, bluhm , 46650f23db Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/net/pfvar.h | 2 +- sys/netpfil/pf/pf.c | 74 ++++++++++++++++++++++-------------------------- sys/netpfil/pf/pf_norm.c | 12 ++++---- sys/netpfil/pf/pf_osfp.c | 2 +- 4 files changed, 42 insertions(+), 48 deletions(-) diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h index f73420494000..e6fb1c2c3e1b 100644 --- a/sys/net/pfvar.h +++ b/sys/net/pfvar.h @@ -2423,7 +2423,7 @@ int pf_multihome_scan_init(int, int, struct pf_pdesc *); int pf_multihome_scan_asconf(int, int, struct pf_pdesc *); u_int32_t pf_new_isn(struct pf_kstate *); -void *pf_pull_hdr(const struct mbuf *, int, void *, int, u_short *, u_short *, +void *pf_pull_hdr(const struct mbuf *, int, void *, int, u_short *, sa_family_t); void pf_change_a(void *, u_int16_t *, u_int32_t, u_int8_t); void pf_change_proto_a(struct mbuf *, void *, u_int16_t *, u_int32_t, diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 3a047ea44c47..5889bb9d68e6 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -1676,7 +1676,7 @@ pf_state_key_addr_setup(struct pf_pdesc *pd, if (multi) return (-1); if (!pf_pull_hdr(pd->m, pd->off, &nd, sizeof(nd), NULL, - NULL, pd->af)) + pd->af)) return (-1); target = (struct pf_addr *)&nd.nd_ns_target; daddr = target; @@ -1685,7 +1685,7 @@ pf_state_key_addr_setup(struct pf_pdesc *pd, if (multi) return (-1); if (!pf_pull_hdr(pd->m, pd->off, &nd, sizeof(nd), NULL, - NULL, pd->af)) + pd->af)) return (-1); target = (struct pf_addr *)&nd.nd_ns_target; saddr = target; @@ -4044,7 +4044,7 @@ pf_modulate_sack(struct pf_pdesc *pd, struct tcphdr *th, optsoff = pd->off + sizeof(struct tcphdr); #define TCPOLEN_MINSACK (TCPOLEN_SACK + 2) if (olen < TCPOLEN_MINSACK || - !pf_pull_hdr(pd->m, optsoff, opts, olen, NULL, NULL, pd->af)) + !pf_pull_hdr(pd->m, optsoff, opts, olen, NULL, pd->af)) return (0); eoh = opts + olen; @@ -5107,7 +5107,7 @@ pf_get_wscale(struct pf_pdesc *pd) olen = (pd->hdr.tcp.th_off << 2) - sizeof(struct tcphdr); if (olen < TCPOLEN_WINDOW || !pf_pull_hdr(pd->m, - pd->off + sizeof(struct tcphdr), opts, olen, NULL, NULL, pd->af)) + pd->off + sizeof(struct tcphdr), opts, olen, NULL, pd->af)) return (0); opt = opts; @@ -5132,7 +5132,7 @@ pf_get_mss(struct pf_pdesc *pd) olen = (pd->hdr.tcp.th_off << 2) - sizeof(struct tcphdr); if (olen < TCPOLEN_MAXSEG || !pf_pull_hdr(pd->m, - pd->off + sizeof(struct tcphdr), opts, olen, NULL, NULL, pd->af)) + pd->off + sizeof(struct tcphdr), opts, olen, NULL, pd->af)) return (0); opt = opts; @@ -7660,7 +7660,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) while (off < len) { struct sctp_paramhdr h; - if (!pf_pull_hdr(pd->m, start + off, &h, sizeof(h), NULL, NULL, + if (!pf_pull_hdr(pd->m, start + off, &h, sizeof(h), NULL, pd->af)) return (PF_DROP); @@ -7680,7 +7680,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) return (PF_DROP); if (!pf_pull_hdr(pd->m, start + off + sizeof(h), &t, sizeof(t), - NULL, NULL, pd->af)) + NULL, pd->af)) return (PF_DROP); if (in_nullhost(t)) @@ -7724,7 +7724,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) return (PF_DROP); if (!pf_pull_hdr(pd->m, start + off + sizeof(h), &t, sizeof(t), - NULL, NULL, pd->af)) + NULL, pd->af)) return (PF_DROP); if (memcmp(&t, &pd->src->v6, sizeof(t)) == 0) break; @@ -7754,7 +7754,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) struct sctp_asconf_paramhdr ah; if (!pf_pull_hdr(pd->m, start + off, &ah, sizeof(ah), - NULL, NULL, pd->af)) + NULL, pd->af)) return (PF_DROP); ret = pf_multihome_scan(start + off + sizeof(ah), @@ -7769,7 +7769,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) struct sctp_asconf_paramhdr ah; if (!pf_pull_hdr(pd->m, start + off, &ah, sizeof(ah), - NULL, NULL, pd->af)) + NULL, pd->af)) return (PF_DROP); ret = pf_multihome_scan(start + off + sizeof(ah), ntohs(ah.ph.param_length) - sizeof(ah), pd, @@ -8051,7 +8051,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, ipoff2 = pd->off + ICMP_MINLEN; if (!pf_pull_hdr(pd->m, ipoff2, &h2, sizeof(h2), - NULL, reason, pd2.af)) { + reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " "(ip)"); @@ -8083,7 +8083,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, ipoff2 = pd->off + sizeof(struct icmp6_hdr); if (!pf_pull_hdr(pd->m, ipoff2, &h2_6, sizeof(h2_6), - NULL, reason, pd2.af)) { + reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " "(ip6)"); @@ -8136,7 +8136,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, * expected. Don't access any TCP header fields after * th_seq, an ackskew test is not possible. */ - if (!pf_pull_hdr(pd->m, pd2.off, th, 8, NULL, reason, + if (!pf_pull_hdr(pd->m, pd2.off, th, 8, reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " @@ -8332,7 +8332,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, int action; if (!pf_pull_hdr(pd->m, pd2.off, uh, sizeof(*uh), - NULL, reason, pd2.af)) { + reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " "(udp)"); @@ -8463,7 +8463,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, int copyback = 0; int action; - if (! pf_pull_hdr(pd->m, pd2.off, sh, sizeof(*sh), NULL, reason, + if (! pf_pull_hdr(pd->m, pd2.off, sh, sizeof(*sh), reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " @@ -8619,7 +8619,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, } if (!pf_pull_hdr(pd->m, pd2.off, iih, ICMP_MINLEN, - NULL, reason, pd2.af)) { + reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short i" "(icmp)"); @@ -8739,7 +8739,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, } if (!pf_pull_hdr(pd->m, pd2.off, iih, - sizeof(struct icmp6_hdr), NULL, reason, pd2.af)) { + sizeof(struct icmp6_hdr), reason, pd2.af)) { DPFPRINTF(PF_DEBUG_MISC, "pf: ICMP error message too short " "(icmp6)"); @@ -8921,7 +8921,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, */ void * pf_pull_hdr(const struct mbuf *m, int off, void *p, int len, - u_short *actionp, u_short *reasonp, sa_family_t af) + u_short *reasonp, sa_family_t af) { int iplen = 0; switch (af) { @@ -8931,12 +8931,7 @@ pf_pull_hdr(const struct mbuf *m, int off, void *p, int len, u_int16_t fragoff = (ntohs(h->ip_off) & IP_OFFMASK) << 3; if (fragoff) { - if (fragoff >= len) - ACTION_SET(actionp, PF_PASS); - else { - ACTION_SET(actionp, PF_DROP); - REASON_SET(reasonp, PFRES_FRAG); - } + REASON_SET(reasonp, PFRES_FRAG); return (NULL); } iplen = ntohs(h->ip_len); @@ -8953,7 +8948,6 @@ pf_pull_hdr(const struct mbuf *m, int off, void *p, int len, #endif /* INET6 */ } if (m->m_pkthdr.len < off + len || iplen < off + len) { - ACTION_SET(actionp, PF_DROP); REASON_SET(reasonp, PFRES_SHORT); return (NULL); } @@ -10052,7 +10046,7 @@ pf_walk_header(struct pf_pdesc *pd, struct ip *h, u_short *reason) end < pd->off + sizeof(ext)) return (PF_PASS); if (!pf_pull_hdr(pd->m, pd->off, &ext, sizeof(ext), - NULL, reason, AF_INET)) { + reason, AF_INET)) { DPFPRINTF(PF_DEBUG_MISC, "IP short exthdr"); return (PF_DROP); } @@ -10078,7 +10072,7 @@ pf_walk_option6(struct pf_pdesc *pd, struct ip6_hdr *h, int off, int end, while (off < end) { if (!pf_pull_hdr(pd->m, off, &opt.ip6o_type, - sizeof(opt.ip6o_type), NULL, reason, AF_INET6)) { + sizeof(opt.ip6o_type), reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short opt type"); return (PF_DROP); } @@ -10086,7 +10080,7 @@ pf_walk_option6(struct pf_pdesc *pd, struct ip6_hdr *h, int off, int end, off++; continue; } - if (!pf_pull_hdr(pd->m, off, &opt, sizeof(opt), NULL, + if (!pf_pull_hdr(pd->m, off, &opt, sizeof(opt), reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short opt"); return (PF_DROP); @@ -10111,7 +10105,7 @@ pf_walk_option6(struct pf_pdesc *pd, struct ip6_hdr *h, int off, int end, REASON_SET(reason, PFRES_IPOPTIONS); return (PF_DROP); } - if (!pf_pull_hdr(pd->m, off, &jumbo, sizeof(jumbo), NULL, + if (!pf_pull_hdr(pd->m, off, &jumbo, sizeof(jumbo), reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short jumbo"); return (PF_DROP); @@ -10160,7 +10154,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) break; case IPPROTO_HOPOPTS: if (!pf_pull_hdr(pd->m, pd->off, &ext, sizeof(ext), - NULL, reason, AF_INET6)) { + reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short exthdr"); return (PF_DROP); } @@ -10187,7 +10181,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) return (PF_DROP); } if (!pf_pull_hdr(pd->m, pd->off, &frag, sizeof(frag), - NULL, reason, AF_INET6)) { + reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short fragment"); return (PF_DROP); } @@ -10215,7 +10209,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) return (PF_PASS); } if (!pf_pull_hdr(pd->m, pd->off, &rthdr, sizeof(rthdr), - NULL, reason, AF_INET6)) { + reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short rthdr"); return (PF_DROP); } @@ -10236,7 +10230,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) case IPPROTO_AH: case IPPROTO_DSTOPTS: if (!pf_pull_hdr(pd->m, pd->off, &ext, sizeof(ext), - NULL, reason, AF_INET6)) { + reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short exthdr"); return (PF_DROP); } @@ -10269,7 +10263,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) return (PF_PASS); } if (!pf_pull_hdr(pd->m, pd->off, &icmp6, sizeof(icmp6), - NULL, reason, AF_INET6)) { + reason, AF_INET6)) { DPFPRINTF(PF_DEBUG_MISC, "IPv6 short icmp6hdr"); return (PF_DROP); @@ -10502,7 +10496,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, case IPPROTO_TCP: { struct tcphdr *th = &pd->hdr.tcp; - if (!pf_pull_hdr(pd->m, pd->off, th, sizeof(*th), action, + if (!pf_pull_hdr(pd->m, pd->off, th, sizeof(*th), reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); @@ -10518,7 +10512,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, case IPPROTO_UDP: { struct udphdr *uh = &pd->hdr.udp; - if (!pf_pull_hdr(pd->m, pd->off, uh, sizeof(*uh), action, + if (!pf_pull_hdr(pd->m, pd->off, uh, sizeof(*uh), reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); @@ -10539,7 +10533,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, } case IPPROTO_SCTP: { if (!pf_pull_hdr(pd->m, pd->off, &pd->hdr.sctp, sizeof(pd->hdr.sctp), - action, reason, af)) { + reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); return (-1); @@ -10569,7 +10563,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, } case IPPROTO_ICMP: { if (!pf_pull_hdr(pd->m, pd->off, &pd->hdr.icmp, ICMP_MINLEN, - action, reason, af)) { + reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); return (-1); @@ -10583,7 +10577,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, size_t icmp_hlen = sizeof(struct icmp6_hdr); if (!pf_pull_hdr(pd->m, pd->off, &pd->hdr.icmp6, icmp_hlen, - action, reason, af)) { + reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); return (-1); @@ -10609,7 +10603,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, } if (icmp_hlen > sizeof(struct icmp6_hdr) && !pf_pull_hdr(pd->m, pd->off, &pd->hdr.icmp6, icmp_hlen, - action, reason, af)) { + reason, af)) { *action = PF_DROP; REASON_SET(reason, PFRES_SHORT); return (-1); diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c index a684d778ab42..56074bedbc40 100644 --- a/sys/netpfil/pf/pf_norm.c +++ b/sys/netpfil/pf/pf_norm.c @@ -1354,7 +1354,7 @@ pf_normalize_ip6(int off, u_short *reason, pf_rule_to_actions(r, &pd->act); } - if (!pf_pull_hdr(pd->m, off, &frag, sizeof(frag), NULL, reason, AF_INET6)) + if (!pf_pull_hdr(pd->m, off, &frag, sizeof(frag), reason, AF_INET6)) return (PF_DROP); /* Offset now points to data portion. */ @@ -1542,7 +1542,7 @@ pf_normalize_tcp_init(struct pf_pdesc *pd, struct tcphdr *th, olen = (th->th_off << 2) - sizeof(*th); if (olen < TCPOLEN_TIMESTAMP || !pf_pull_hdr(pd->m, - pd->off + sizeof(*th), opts, olen, NULL, NULL, pd->af)) + pd->off + sizeof(*th), opts, olen, NULL, pd->af)) return (0); opt = opts; @@ -1645,7 +1645,7 @@ pf_normalize_tcp_stateful(struct pf_pdesc *pd, if (olen >= TCPOLEN_TIMESTAMP && ((src->scrub && (src->scrub->pfss_flags & PFSS_TIMESTAMP)) || (dst->scrub && (dst->scrub->pfss_flags & PFSS_TIMESTAMP))) && - pf_pull_hdr(pd->m, pd->off + sizeof(*th), opts, olen, NULL, NULL, pd->af)) { + pf_pull_hdr(pd->m, pd->off + sizeof(*th), opts, olen, NULL, pd->af)) { /* Modulate the timestamps. Can be used for NAT detection, OS * uptime determination or reboot detection. */ @@ -1975,7 +1975,7 @@ pf_normalize_mss(struct pf_pdesc *pd) olen = (pd->hdr.tcp.th_off << 2) - sizeof(struct tcphdr); optsoff = pd->off + sizeof(struct tcphdr); if (olen < TCPOLEN_MAXSEG || - !pf_pull_hdr(pd->m, optsoff, opts, olen, NULL, NULL, pd->af)) + !pf_pull_hdr(pd->m, optsoff, opts, olen, NULL, pd->af)) return (0); opt = opts; @@ -2009,7 +2009,7 @@ pf_scan_sctp(struct pf_pdesc *pd) int ret; while (pd->off + chunk_off < pd->tot_len) { - if (!pf_pull_hdr(pd->m, pd->off + chunk_off, &ch, sizeof(ch), NULL, + if (!pf_pull_hdr(pd->m, pd->off + chunk_off, &ch, sizeof(ch), NULL, pd->af)) return (PF_DROP); @@ -2026,7 +2026,7 @@ pf_scan_sctp(struct pf_pdesc *pd) struct sctp_init_chunk init; if (!pf_pull_hdr(pd->m, pd->off + chunk_start, &init, - sizeof(init), NULL, NULL, pd->af)) + sizeof(init), NULL, pd->af)) return (PF_DROP); /* diff --git a/sys/netpfil/pf/pf_osfp.c b/sys/netpfil/pf/pf_osfp.c index 150626c5f3fb..8c041d45eae8 100644 --- a/sys/netpfil/pf/pf_osfp.c +++ b/sys/netpfil/pf/pf_osfp.c @@ -82,7 +82,7 @@ pf_osfp_fingerprint(struct pf_pdesc *pd, const struct tcphdr *tcp) ip6 = mtod(pd->m, struct ip6_hdr *); break; } - if (!pf_pull_hdr(pd->m, pd->off, hdr, tcp->th_off << 2, NULL, NULL, + if (!pf_pull_hdr(pd->m, pd->off, hdr, tcp->th_off << 2, NULL, pd->af)) return (NULL); return (pf_osfp_fingerprint_hdr(ip, ip6, (struct tcphdr *)hdr)); From nobody Wed Sep 10 19:52:25 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYl06pDz66nNp; Wed, 10 Sep 2025 19:52:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYk01nrz3tvb; Wed, 10 Sep 2025 19:52:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533946; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LyYxG0mm/nxi3YQsC4E7k8vNJxMM9JhLsJlJd68Zz2k=; b=wUj2oZZbk9KNuRdm+tIoB94l5/aWlQebo9IY6ZOCg1ia5lTpo0nDX6IsY/gyNWEgnT+V8/ ZQUeYKmT7a+YYi1USbshItxAXgTQc4NEs1DLeDdo7xp5fp8JPTpwuUEHkZa49pAXz9QWWA gi8FHvH+8UV0KxMVx2nef59o4AM7j2txMraxMhqj2n3jwRef5PDA3ysDPsFCrz6J1LyGR5 +ujCB2Z63oaGlIhCpqTKhgKj2FJjFeUXtZhjfdzkm61hpnIHK0laudZrgN+QxXtoL23n/k 2i9qH9+kFJhGodDFDBRrtq+MqMg9NYKqaUc4TSVzIuUhza+rYhOybo8N6i7LMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533946; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LyYxG0mm/nxi3YQsC4E7k8vNJxMM9JhLsJlJd68Zz2k=; b=cCLLg/T9Zy8BE4+ouYOYNaOfYhPCCcUZnHe/v+Nng3B5120AmBiTPyKUuHyjn55Dn3qQpm dZLXUM0yPiyIQqTBE3QxJ89Pn/1PuRbZ1ILQNIU2HqtMt8hGlF57h0FbvWnH0yWVHJhLJy B91N6yW5HEMjXIxnqQ7EITxgyJBrA8c+i1ejErzVRs+dpfn6U91eL5dbM86O90o8Oqgpku NOdIa/qaZm+XBL9NVXelm34kpihNh0d6VDlBuVfR+BiKiJYeJPvTaigGINdRbK5qmo03IX 2CiDiw+Ftuj9NMMvDTYGyf5sUgI40KMO0ag9c7d0PK/rDbWanulDHkG7LZP6yA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533946; a=rsa-sha256; cv=none; b=dCbut+pemQpB6ejLslmKVFPqE4fQOsMAxWZVJhD3fVG9Iwfc9ULrtCntmnvE+k7oQLZdqt 4PSKDJO5WCpLfMHv38m974Am69vf2E7IjwnfNB0XMqu5VaKwUJWNrbab2jwRxVwd4PS7xT 2BFFO4bXmdEWriSZ6yfn4qgYbpjpzf9TbuknoSdJa8wPloCVzxEXwL/Rhg8rNB0VVHx292 XDA2DaZimUYekNPsQRNn5YK2az6EsGqUEoZRgCCtWx5EHeIo2w1eTnqKLoThDPec3iesBQ jI3aptv64WzdrvHolrWOxuzCPBoklUCGnhl5uT+x1w84LUMjTsEMJfhLtOXNtQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYj6gnVzcL8; Wed, 10 Sep 2025 19:52:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58AJqPq9095336; Wed, 10 Sep 2025 19:52:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqPoS095333; Wed, 10 Sep 2025 19:52:25 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:25 GMT Message-Id: <202509101952.58AJqPoS095333@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: d3020caed603 - main - pf tests: recusrive table printing test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: d3020caed603e3b1bfb82099557134ccd4c71449 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=d3020caed603e3b1bfb82099557134ccd4c71449 commit d3020caed603e3b1bfb82099557134ccd4c71449 Author: Kristof Provost AuthorDate: 2025-08-20 12:42:50 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:40 +0000 pf tests: recusrive table printing test Sponsored by: Rubicon Communications, LLC ("Netgate") --- tests/sys/netpfil/pf/table.sh | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/tests/sys/netpfil/pf/table.sh b/tests/sys/netpfil/pf/table.sh index 65492545a13b..26fc5bf6cda2 100644 --- a/tests/sys/netpfil/pf/table.sh +++ b/tests/sys/netpfil/pf/table.sh @@ -673,6 +673,43 @@ large_cleanup() pft_cleanup } +atf_test_case "show_recursive" "cleanup" +show_recursive_head() +{ + atf_set descr 'Test displaying tables in every anchor' + atf_set require.user root +} + +show_recursive_body() +{ + pft_init + + vnet_mkjail alcatraz + + pft_set_rules alcatraz \ + + (echo "table persist" + echo "block in quick from to any" + ) | jexec alcatraz pfctl -a anchorage -f - + + pft_set_rules noflush alcatraz \ + "table counters { 192.0.2.1 }" \ + "pass in from " \ + "anchor anchorage" + + jexec alcatraz pfctl -sr -a "*" + + atf_check -s exit:0 -e ignore -o match:'-pa-r-- bar@anchorage' \ + jexec alcatraz pfctl -v -a "*" -sT + atf_check -s exit:0 -e ignore -o match:'--a-r-C foo' \ + jexec alcatraz pfctl -v -a "*" -sT +} + +show_recursive_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "v4_counters" @@ -689,4 +726,5 @@ atf_init_test_cases() atf_add_test_case "anchor" atf_add_test_case "flush" atf_add_test_case "large" + atf_add_test_case "show_recursive" } From nobody Wed Sep 10 19:52:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYl1srsz66nRG; Wed, 10 Sep 2025 19:52:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYl0VBfz3tsM; Wed, 10 Sep 2025 19:52:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yEqsqLr4Tw1WrHNZ7RACbcjn1MowuMzlzhrbZrRuZ/Q=; b=DXQRmiMzp/fxvCK4g0cuDd4ufCbzR3EXsMrctoRVGN6nahmSGy8Ke9LBJSiEA4UfUTsdKR plNJgDujQuEqXUz6AgxuxcnpblkUYdGlc7p7SJbC7Jj5cPGj07Kye7CoF3rlUltOgkSyUm mucnuw5scMUfuS3uz0MIjcfEkV2Q0VsN20Yd89M5W/iMcb8rwF2AzcSW7bhifXY2XeiMXu SXKcuVzrJPDeewR3/SJqz7ewn2LTj+nSPfgW7Cog1Pbg1kalLXS0EBVnfStUMmd7Tg7JIa W3qXxNG4kWly0pPGNtr8UNcsjNE1lGIbt27/3EFVMBncmJtSbUHcwu5UehdttA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yEqsqLr4Tw1WrHNZ7RACbcjn1MowuMzlzhrbZrRuZ/Q=; b=ymBdrzeUBmYKIjodVrKNv8/sH6E4/AivkNDfJJDo1pou+4nsfyfKB8Oxk4QbuksHNyRX36 J3wHtSG67kFm6B9Na08RcsxRy1cG/RGPPI7O/fpgzep6aUrqJutDja3oaOB+C5lquxRKTu 8r0IWts4KjZ139ya5XaBeh4jOCBH/xIrRquRDEsthV3dQQfLfxiBegWLXHmm7ashfW95mU rKIgbY5Xo5++MRu6a/D8X91vB/HN+D2PUiZDPiZO/G2I2Ny9eN9qSSBnGU5gzME0EkW5Cs ojFKgmEPtnTageX3ZepaT8TKoqp6DmzlInb3BhGIS49TVHI58q91bxjdr6WI/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533947; a=rsa-sha256; cv=none; b=psZCzcC990onp8EAUApnLUuB7rEk3zL5/7MYFtj086545013Ps/MXX8HsYUFSnQxZw7i26 +VZYBs8jdQKa4e6koYrd+WlPQ1y3abAKuOp9XSNHycm4MIsn8cP+VC+fndqJVmao14Gi5f 2hNSoYgH36jU9jRgU+KcOQtrikDdT6C/4ayUU1E2/hKHz08j39rfGw7CKl0yC/nw2G+hGL fJNFJu1XAD32hnBsO4bF0OV+WLEaC1b40/KODfvnSl2aUlrqLcOVhcm1S4oW9GEbO+arBt xqX9yPo8oHjsPBm83zIxk+Ao/IF6YvQ0ck5BBumclo++qeKa5ok2peJO3ZzwWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYk73yqzcN9; Wed, 10 Sep 2025 19:52: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 58AJqQcl095369; Wed, 10 Sep 2025 19:52:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqQxq095366; Wed, 10 Sep 2025 19:52:26 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:26 GMT Message-Id: <202509101952.58AJqQxq095366@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 4889545b8795 - main - pfctl: fix killing state by source and destination address List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 4889545b8795b69bd9aca1c8320a8847f3cd6aeb Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=4889545b8795b69bd9aca1c8320a8847f3cd6aeb commit 4889545b8795b69bd9aca1c8320a8847f3cd6aeb Author: Kristof Provost AuthorDate: 2025-08-20 14:16:03 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:40 +0000 pfctl: fix killing state by source and destination address The fix to pfctl_kill_src_nodes() comes from Olivier Croquin. bluhm@ pointed out pfctl_net_kill_states() suffers from the same copy'n'paste typo. Commit combines both fixes. OK @bluhm, OK @kn Obtained from: OpenBSD, sashan , cde97ca321 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/pfctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index 10a833ea4850..2c12387ee388 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -701,7 +701,7 @@ pfctl_kill_src_nodes(int dev, int opts) dests++; - copy_satopfaddr(&psnk.psnk_src.addr.v.a.addr, + copy_satopfaddr(&psnk.psnk_dst.addr.v.a.addr, resp[1]->ai_addr); if (ioctl(dev, DIOCKILLSRCNODES, &psnk)) err(1, "DIOCKILLSRCNODES"); @@ -790,7 +790,7 @@ pfctl_net_kill_states(int dev, const char *iface, int opts) dests++; - copy_satopfaddr(&kill.src.addr.v.a.addr, + copy_satopfaddr(&kill.dst.addr.v.a.addr, resp[1]->ai_addr); if ((ret = pfctl_kill_states_h(pfh, &kill, &newkilled)) != 0) From nobody Wed Sep 10 19:52:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYm3ZlZz66nTJ; Wed, 10 Sep 2025 19:52:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYm1cJgz3tvg; Wed, 10 Sep 2025 19:52:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533948; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hHcilwX7gokDODBHiErPe92OAKOEeu5wonwd6Rh5BoE=; b=ieesT0Zq3s7IRrCI6hwYn5Zi9Gxj1QeMHHfYEeRb6VmtFFMaxwFwMGQ23nAIzrMk+lueHi 2zsLo4ZPqItPirhcnV3vbq7yENTYbSGoM2OeMFrC22P5B2tQLTM1VjG9svx/mitQmzaBG6 VL5kvNgyBbyoueo6l5IB199YDqCHN4Pnucg3fEVDhus0J5iDS5AISh1kMhHx1pFK2QmYZ8 nC6mUFHejOoWb8QGElo3qVI1FvGCPtH1Atl89C2CvG4k9rOtfvrVXikjTVnj/qDOWInni5 B4P6BYnJtMQbWY3bRr1OLAtkJRDGMGvYLCv+CZqMxZMIhN0pMSyPXSIXsiC0gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533948; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hHcilwX7gokDODBHiErPe92OAKOEeu5wonwd6Rh5BoE=; b=jYVxi/LCeX6wnp4ubuU22dXV/FJaMdu6UwqgVu80k1F4xilU5ugPG3E3yLjK3S6o0TV9JY 4Wm4ZLcsxlDOw2lwmdcErj7FYVvKdBVejs7WX2tymSOXV4HBv5T/1N8EMH5iTiVVF5Bcyp WZS0Gt/f/W7pRWDYI26mkeg02n1BAbxFcU5uzTs9cQDD6TDQcpY8SPNAB8TXUdXK+YbvAQ p01mnEepT61CQ8InGrsNlK1YQPIgyR+xvgp/8RSkcADG8ExpvoWhd0SeLGjwaz6wheaasT Tyo9gzvty2I1+01K0x2rbAeg3f1JAZSdqj37Lx+68fVYzPB1HlHx6ntJMbsq6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533948; a=rsa-sha256; cv=none; b=sLg+Hpr5pw0B564RM/KWQjp9zzNrURvuODmrUJYOE9Exxi3kMV7PmwvJxu314ysKa6tSUm cbNkYXAiigk3ehzFSdPsfltucRlet83dL5LFbxuHUz0mOT3p8JekqCOL7gEWAuB62Biffq Q90JzQNAn2nn8URD+dg7Zwr1IdUKKnB4ucpDJdnICwAoK+63Pa8dECdC048RQ0JCFhMq+8 eWAlN0frdJ7YBHlVks1iyRZCGJXWzq4JycCg5ZlucN1dsHcNuArEoJQhky843RQUTnWu11 JI4nWTPvS1T8xURw5visj9+iBD0aHENGH7xCFF2wcTUlVE1gyevljXt4wjv9NQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYm1D9dzcL9; Wed, 10 Sep 2025 19:52: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 58AJqSXX095403; Wed, 10 Sep 2025 19:52:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqSJU095399; Wed, 10 Sep 2025 19:52:28 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:28 GMT Message-Id: <202509101952.58AJqSJU095399@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 53e44c59d13e - main - pf tests: test state killing by source and destination address List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 53e44c59d13ed0dd5dc5563b1109df8d6dd63325 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=53e44c59d13ed0dd5dc5563b1109df8d6dd63325 commit 53e44c59d13ed0dd5dc5563b1109df8d6dd63325 Author: Kristof Provost AuthorDate: 2025-08-20 14:16:54 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:40 +0000 pf tests: test state killing by source and destination address Sponsored by: Rubicon Communications, LLC ("Netgate") --- tests/sys/netpfil/pf/killstate.sh | 63 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/tests/sys/netpfil/pf/killstate.sh b/tests/sys/netpfil/pf/killstate.sh index 0d98db822535..ffb01df57908 100644 --- a/tests/sys/netpfil/pf/killstate.sh +++ b/tests/sys/netpfil/pf/killstate.sh @@ -105,6 +105,68 @@ v4_cleanup() pft_cleanup } +atf_test_case "src_dst" "cleanup" +src_dst_head() +{ + atf_set descr 'Test killing a state with source and destination specified' + atf_set require.user root +} + +src_dst_body() +{ + pft_init + + epair=$(vnet_mkepair) + ifconfig ${epair}a 192.0.2.1/24 up + + vnet_mkjail alcatraz ${epair}b + jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up + jexec alcatraz pfctl -e + + pft_set_rules alcatraz "block all" \ + "pass in proto icmp" \ + "set skip on lo" + + # Sanity check & establish state + atf_check -s exit:0 -o ignore ${common_dir}/pft_ping.py \ + --sendif ${epair}a \ + --to 192.0.2.2 \ + --replyif ${epair}a + + # Change rules to now deny the ICMP traffic + pft_set_rules noflush alcatraz "block all" + if ! find_state; + then + atf_fail "Setting new rules removed the state." + fi + + # Killing with the wrong source IP doesn't affect our state + jexec alcatraz pfctl -k 192.0.2.3 -k 192.0.2.2 + if ! find_state; + then + atf_fail "Killing with the wrong source IP removed our state." + fi + + # Killing with the wrong destination IP doesn't affect our state + jexec alcatraz pfctl -k 192.0.2.1 -k 192.0.2.3 + if ! find_state; + then + atf_fail "Killing with the wrong destination IP removed our state." + fi + + # But it does with the correct one + jexec alcatraz pfctl -k 192.0.2.1 -k 192.0.2.2 + if find_state; + then + atf_fail "Killing with the correct IPs did not remove our state." + fi +} + +src_dst_cleanup() +{ + pft_cleanup +} + atf_test_case "v6" "cleanup" v6_head() { @@ -698,6 +760,7 @@ nat_cleanup() atf_init_test_cases() { atf_add_test_case "v4" + atf_add_test_case "src_dst" atf_add_test_case "v6" atf_add_test_case "label" atf_add_test_case "multilabel" From nobody Wed Sep 10 19:52:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMWYn6mxQz66nWm; Wed, 10 Sep 2025 19:52:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMWYn4NVNz3vD3; Wed, 10 Sep 2025 19:52:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gX+Y0u6DYWQYu9aCv7THFS8QpInj6OlkVS/krBkXG5Q=; b=rD1jPa8K2NHdilnZgeJzPuV6xLX5hvQPnopJAyIyp8USqF7y5KQRBthsxd5TJ2bUT0nED0 jG4aZr9BJplueyDATWKbmxX5eOjNvvPuULN87fMt/2cEjiiUvgsfTtM8x1OjLAkbCGYY1B ou5MvoNR0oxXcItQywp+r44fSrlhHveDp3D1FKId4jAUaNf0AO7alcYUYBXSK9a0FBJLsi EUO8hXA8IwmGwEdm00MR1+tr0dBfS0jm2hkKYovM7XTyCJQAN2Zi3mCwjm8gqIopVUqiKJ e6cNzsgI+a1tTRjG+uxRZRwjVDYkkTh7UjULJhsWqMKc51XBDP5Qmch21r8mig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757533949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gX+Y0u6DYWQYu9aCv7THFS8QpInj6OlkVS/krBkXG5Q=; b=tz8mxkdrSKqMgkSSkIckQYHHNnSQ6sCIx7Nbk7lF6QwoO+IAqFefwBOsjdaQCRMfYM8G3+ X7utATNIvpyE4KK0hja6lfvR9z+dzHBQP68q4tnLoTCG9QKn9BNDOGQy5JGptKvFtyO0nh VTokOFKW35Zwa3wRXBD4GufuK8u2W4N7Da5tmUUpT+9JFqSYsNtk+z/Chprw+2BIkdkoN0 j27dly5OLgqPkzGLvssPFzA6+hiNzP9RDqpPuTMTauQ7Bv3f+Ma67XhIvjPY8+Tk47FIf1 kjh4/xJIw7FRSwS/+atSIYaIJHAMVAkNHS7e1JK3nxppgQC2088j+I5X5RXb6A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757533949; a=rsa-sha256; cv=none; b=voki4zfkdhcgHWCjkUCjp2jzdJRAeQ7P1IajFe3bhUlzpUPKsMbJuX27fgBHq2gFS+tmr0 qcErVI3XWybaJ47GnhzSfAL+HuJ8/aRYaZjoO9K+7I3a67ki37IgFuqgkOpZhmv+XEmn2H TUcvLf8zY9MR/tUJwzwFLdsMZbqV0rNEh7yr4H9huAQwHOi8L7xl4ul67ZDbaOH0wVxCQm TEqt890jNWDf3r6DADvfMmHNrPG817ilkv2nFRxvbmzgQ9FGxAAAKq997uqW/FwNL5PVFk bJNjjv7xMYVbDZ5VZhzMfoeM3arY0YC4x9c/wdzj1BEJdY/W9PnkMhXiT4ow5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMWYn2GtqzcLB; Wed, 10 Sep 2025 19:52: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 58AJqTdd095441; Wed, 10 Sep 2025 19:52:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58AJqTAI095438; Wed, 10 Sep 2025 19:52:29 GMT (envelope-from git) Date: Wed, 10 Sep 2025 19:52:29 GMT Message-Id: <202509101952.58AJqTAI095438@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: c8fb5a4d032b - main - ifconfig: also fix removing IPv6 addresses without netlink List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: c8fb5a4d032b28dd97b9fa4a73f85a84d8d35fdd Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=c8fb5a4d032b28dd97b9fa4a73f85a84d8d35fdd commit c8fb5a4d032b28dd97b9fa4a73f85a84d8d35fdd Author: Kristof Provost AuthorDate: 2025-09-10 14:55:56 +0000 Commit: Kristof Provost CommitDate: 2025-09-10 19:51:41 +0000 ifconfig: also fix removing IPv6 addresses without netlink Reported by: bdrewery MFC after: 1 week See also: da50f49977cc4e6aae55cb2379313599249a8dd2 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/ifconfig/af_inet6.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ifconfig/af_inet6.c b/sbin/ifconfig/af_inet6.c index 7986edf490b4..e0f34f0c4d82 100644 --- a/sbin/ifconfig/af_inet6.c +++ b/sbin/ifconfig/af_inet6.c @@ -753,7 +753,7 @@ static struct afswtch af_inet6 = { #ifdef WITHOUT_NETLINK .af_difaddr = SIOCDIFADDR_IN6, .af_aifaddr = SIOCAIFADDR_IN6, - .af_ridreq = &in6_addreq, + .af_ridreq = &in6_ridreq, .af_addreq = &in6_addreq, .af_exec = af_exec_ioctl, #else From nobody Wed Sep 10 21:12:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMYLh0jQGz66sqB; Wed, 10 Sep 2025 21:13:00 +0000 (UTC) (envelope-from jamie@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMYLg6fmqz476y; Wed, 10 Sep 2025 21:12:59 +0000 (UTC) (envelope-from jamie@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757538780; 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=ut5pOqdnAtOvkG1A4eOd0QxsmAdXvwr5whyyHqRJRdU=; b=e+kyvWarq8qq6epLZ7HolKr5+0SvEdSJnWV+WZZq4KA8ZYxm4m9m1F7NgtNkzQKrsq5ogk tYvxWBfn042hwaUdKBkMkKq1lDy2jNaVPrwk977VnewK4fUud4eNJLD7GBgLA3QUh14l+J drgd4J/vV5FsIfQxH0K2JOKiBP5LqhRNi7Puv0G7X2KJCpDLL/B4mdd8JlGQiieFPrPFLN xt3R+9O4OCgt66Tgr7pI6md90YdJ1cKufjBzbSpaz4drbr9Cu29qpOmH7u7ohz8gK6Zszc u3EWD+KG+Yg6AXVfB46xhw57wjfX9ORGiZ1NF8Mv2tpPphNMVa1p6VKYBQHpyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757538780; 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=ut5pOqdnAtOvkG1A4eOd0QxsmAdXvwr5whyyHqRJRdU=; b=OqijpAs4kra7C+wMe9ap30/9hnERM/BtBRAENToG2ypL79A8pXGa62oHm+iaVx/PPS4HMk 7xhdCh3wfWPTdw8KzeB0Qf4afpKD2ffofI4ZPwg+aj5I8uZ1VnyRSHO5JyGdG3RiT3uM6v kvY8nde8TMBZ3iK0aS+1tt0YFBTOisLuGIFbDL/QrhzsocPJqRJCZ9lCHVc5vkV4N/VtDB GH8lCncNXZYb342Mk3k8inpHKhZC+iE5dBBjQQqCj+aaD+P0SknoFx+N7fLMyzbfgBxeP1 U1MFnqF0rzbZYlL62pbYy9DbcA0KVvYV9m4YuRUdKChvl6mpi5jQRrXOEBiA+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757538780; a=rsa-sha256; cv=none; b=e4zUGlh/jsn/3ovJmMy0tjwYiRTwFkfi+KmpAFCAiGuuyaXCfGopR8FXLbENjWVDTD02Hm vAGsOeqFtMm9Y5Gcp1Ikv5ikLVcVhMgEug86GRNYdwnzqbogNlaDaz6LQu1pfpMYaTl2bD MoNrA0U3NK0oqZz+nxCFo3PvBmVopCRRgKcgGKqW+qmQVEScc+6wL3Ccel8JZLSxC8prAb KDicpldprbaiQqsFXPuMKAQDRvPcQqQzxac8OcatdbcGhGyYVr9m69p05hFogo7fV8tTN9 EGL8Z6a5VKo25aDi2vQAp4zeV35ztGOar7iJnasSDbvBGsaZCxFVPiOmvKe39A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from m2.gritton.org (gritton.org [67.43.236.212]) (using TLSv1.3 with cipher TLS_AES_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: jamie) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cMYLg657TzrHK; Wed, 10 Sep 2025 21:12:59 +0000 (UTC) (envelope-from jamie@freebsd.org) Received: from gritton.org (localgritton [127.0.0.212]) by m2.gritton.org (Postfix) with ESMTPSA id 86AF87BE9B; Wed, 10 Sep 2025 14:12:59 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Date: Wed, 10 Sep 2025 14:12:59 -0700 From: James Gritton To: Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 851dc7f859c2 - main - jail: add jail descriptors In-Reply-To: References: <202509042031.584KVpxY000408@gitrepo.freebsd.org> <2f66c886ab44aea5ad2e57cc72c03e3f@freebsd.org> <24a1f2413af24eea3fb5e9be9c05c4bd@freebsd.org> Message-ID: <5581284543566ead0e0aea27b6e11dbf@freebsd.org> X-Sender: jamie@freebsd.org Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit On 2025-09-10 02:03, Konstantin Belousov wrote: > First, since you already mentioned a desire to capsicumize jfds, I > think it > is already a huge wart in the interface. The function that opens (or > creates) fd from a jail id, must not take just jail. It should be > namespace-aware already. In other words, it should take existing jfd > and create a child jail, returning jfd for it. The existing jfd gives > the namespace container to start with, which is essentially how > capsicum > is organizing the rights limiting. > > For the bootstrapping, the prison0 non-capentered process can pass a > special > id for jfd to reference prison0, similar how AT_FWCWD marks '.' for > *at(2) > syscalls. The current jaildesc code is namespace-aware, via the JAIL_AT_DESC flag. So if you have a descriptor for jail "foo" and you create "bar", you end up creating "foo.bar" just as you would if you were already attached to jail "foo". Similarly, if you look up by jid, it only works when that jail is a descendant of "foo". Yes, getting jid 0 makes sense for bootstrapping - it already means "the current jail" in other contexts. The resulting descriptor would be flagged as only for JAIL_AT_DESC use, without the ability to modify, remove, or attach to it, regardless of whether capsicum is enabled. - Jamie From nobody Wed Sep 10 21:23:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMYZq533jz66tSv for ; Wed, 10 Sep 2025 21:23:31 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x1030.google.com (mail-pj1-x1030.google.com [IPv6:2607:f8b0:4864:20::1030]) (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 4cMYZq2dYSz481D for ; Wed, 10 Sep 2025 21:23:31 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x1030.google.com with SMTP id 98e67ed59e1d1-32b8919e7c7so4332a91.2 for ; Wed, 10 Sep 2025 14:23:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1757539409; x=1758144209; 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=UrZcnr9PmTyERGhVX75xxRf8JjbWvhaPLiuhZQfpKN8=; b=hUvXXI9n94iuhiGeuJ7WyMumEh2cXbLApG0LWt1q7ypLxtfNSE6ZK9rqChn+u7lq7+ uSsmA/7yhWPw83yY58d6NUzreQgoSqkcL73FOa2GBiytmNGKpsL0Jtbe9OK/dOdQeShl rh1i2AUHy8CK9ZPLt0+tub8MSlGui7XiQOQKTYrpU48zBvWj63fcdadLmR93E0Kf7cV7 r+H4/zCrzO2KMKr+znm8HW6B9jgJRWG0btl3iOdFHk7ifhzjzJFzEyoOwr20cv5yYJpI Kjsc8qrwomZER69o47CEib+TqSIKkoC6L1j60KbNhxFiYIoDk5XHUA9LG+3ERFRATrOj uGFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757539409; x=1758144209; 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=UrZcnr9PmTyERGhVX75xxRf8JjbWvhaPLiuhZQfpKN8=; b=cAkdrZWiaX/yKTt3HnAiqfRsWfLxUkHiKg/eoe93F8SnMTDah6/CvswWXjkrcIoTt9 FngVTCx8vx+7m5G6Z31jUOK3AX3AD4w1gNBz3VVnpfhgI3XoTtETVSnAIDSFu/4289P7 2Ho9YS5CSC7iV6KOn3PuLoYa6zzEGAcoWEeoIg5Gl56bibuBxmujD3nZd0/Kb/RNPHSt IP6euUwqHPNdYXtIy3plzymdNxwH6lJQXlJnCo+8B3LuE0B4l3MsZ9hq0335VscJdq0E qcSoqKvNFQ17j2+gbln2GXmQO9l0gbe8z/joz53kx88+jMFChknUpQETiffdIEM/+Qgv HfgA== X-Forwarded-Encrypted: i=1; AJvYcCUOnjl0YaGAlm7Mm4Ca+z3iV0mQHVmbh840PWKoboAAzrVci5cDsMVH6AlGl1T2HU5fqRW0F7+X5LgrTn++fdfE7m7Sbw==@freebsd.org X-Gm-Message-State: AOJu0YwnXonphq341TY7MAHfVnCfybLKIKKV+lQpH+hLHaCtN9ydB5Iz gKhek9SBrIPz/XCy0mJ7yszXu22z9mj1Ws9nmUlYUFnoGZG+Q48t2T3+MoN68uPnXkuBLYLPDHR f6BxD2oMwbhqUnkNcrThBDld29LqRFzOin7ldKFfSEwiH2xLCOO9WlN4= X-Gm-Gg: ASbGncusA7rR6UbrEnRygbHMSiekd87bkcDqZWecMM7wfkrFI4JfO4pW0uokoA6PSFm uQ8GFt1SSMf9kCjUbcJDuhaieBC/nDiiZ3TTTBf+LrNh2MJ7qQsqiCAmgm6lknI+W4fHtuYUjG3 dfB/pVn0XvSG8Vnf2mMmRhgFe77o+v+ZVacJAwZJp2pjzixJyLBraKJBSVwfT6uxhjs5NTg36rq fSANYKapxnmwsp5zyTV8kCUcAU80L2M1+S3ubrOYpaw9RFXaw== X-Google-Smtp-Source: AGHT+IF+8chhkviHf+qOo8ARrf4MTkxZHE8bfKsB7+cRoHWri/QWd7A7LpJVGbgvyi/r+9zKwsGOxiQBwicq14nHYqw= X-Received: by 2002:a17:90b:5848:b0:32d:b98f:f733 with SMTP id 98e67ed59e1d1-32db98ff894mr5639236a91.29.1757539408887; Wed, 10 Sep 2025 14:23:28 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509071842.587IgHbm001636@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Wed, 10 Sep 2025 15:23:18 -0600 X-Gm-Features: Ac12FXyg2y3LACBbSEyzEZcJs1JHVGRy6fWaWw-_E79MX1d6ouHVfHq154fHPtk Message-ID: Subject: Re: git: 11ace56fa030 - main - contrib/libxo: fix API header files inclusions in C++ source files To: Phil Shafer Cc: Konstantin Belousov , Ka Ho Ng , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000255110063e79082c" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cMYZq2dYSz481D --000000000000255110063e79082c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Sep 10, 2025 at 1:49=E2=80=AFPM Phil Shafer wrot= e: > It's not freebsd-specific, but __BEGIN_DECLS isn't freebsd only. If it's > reasonably portable, it makes sense to use it. I see it in macOS, glibc, > and linux (at least some of dists). > I believe that it came from 4.4BSD and spread from there. Warner > Thanks, > Phil > > > > > On 10 Sep 2025, at 0:31, Konstantin Belousov wrote: > > > Would it be better to use __BEGIN_DECLS? I am not completely sure due t= o > > > > contrib/, but libxo is FreeBSD-specific enough already. > --000000000000255110063e79082c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Wed, Sep 10,= 2025 at 1:49=E2=80=AFPM Phil Shafer <phil@juniper.net> wrote:
It's not freebsd-specific, but __BEGIN_DECLS isn'= t freebsd only.=C2=A0 If it's reasonably portable, it makes sense to us= e it.=C2=A0 I see it in macOS, glibc, and linux (at least some of dists).

I believe that it came from 4.4BSD and s= pread=C2=A0from there.

Warner
=C2=A0
Thanks,
=C2=A0Phil




On 10 Sep 2025, at 0:31, Konstantin Belousov wrote:

> Would it be better to use __BEGIN_DECLS? I am not completely sure due = to
>
> contrib/, but libxo is FreeBSD-specific enough already.
--000000000000255110063e79082c-- From nobody Wed Sep 10 21:24:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMYc14Ts9z66tnT for ; Wed, 10 Sep 2025 21:24:33 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) (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 4cMYc06cgCz48gV for ; Wed, 10 Sep 2025 21:24:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20230601.gappssmtp.com header.s=20230601 header.b=JZq00cOt; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::1029) smtp.mailfrom=wlosh@bsdimp.com Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-329a41dc2ebso3376a91.3 for ; Wed, 10 Sep 2025 14:24:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1757539472; x=1758144272; 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=ATjxCMV2rM7ZbcqDVqiOJR2SB9jYogFUKbBko6YBZgE=; b=JZq00cOtjNXwCxnnerL5/i6RpU/2VCFdbI06tUEaMXsVyoH5sAKjXf/p38bY/30ueh CBRzXmWb8zVstpAg6R/AXaEoWU5IyJFd/a0NkD3vfNzB5/psPLQMVbeePFdn4oM4og7g RTGLSH9KtwZNW1w9QOkQ3QZzkP/A75G8dt7RayatwFU6nor9mtIlekTkzhpq5+iEefry V1tOGA0oUMUQquhxidmnaWYYUVziQkEHIRSoUVCpyRmrCFseGXJ8n/h8dPLtVh/ygSu0 JVw0K/87kXLB5koOiF+zkzPcGZFE4IBnviYp8pqUBpsZ0Mbuuy+NAhZZ2S10dx2mOEgx SDbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757539472; x=1758144272; 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=ATjxCMV2rM7ZbcqDVqiOJR2SB9jYogFUKbBko6YBZgE=; b=nNWKSvexYQhKo4hjFhP0MVZTHVZ2hg+SybUthoSR5GRPSAjrnblLVThrXjf2e9ohQ8 AF0LtovbA6K7JNRbsloN4eGGY3g99Mxm76sW5/2ivhbHakEZZ6KJohrG7AWY2lrAjCvm +0853aMLPPvPMrbuDhf/dCth3m2udo5AUAdt7w/rRa2FfIVzl5y+6vYLw+sTeeN2mgrU fASoWz930886Kfv+WUPwiGQtZ1AjVgnycM2OMnFoI+YWU2P8Jr6MNjj/Kf3BXn7qjNkP KzNFySboBq/DJYjii1CRHa4kcj5Qg3dpMnDZ6B3V38tSuBOZYqA+CkbGfQKVhwO62zbb 3M5g== X-Forwarded-Encrypted: i=1; AJvYcCXZFMbr4cyVA8hurObloX/r+f18Z19DBnEQqO+7tkYeQp/ZyFP7C87bwBCswbkFP6KTLtb4/semswL1x1OQiS3en21CAA==@freebsd.org X-Gm-Message-State: AOJu0YyV1UGF740X1gQbqi92FimEOfN6Kw04zqkYxCjEIKQx3d+K+gRe EucPf8Wv4/S4LFKMccidrYZM/Wo40gkx8qTzn6pI58CcQ5ptt4xNUuMsYv4Hb0FlVmk1dVOPvqa gLxrnwW7gu+x6M5wB+dxy7u/k3+9YaATn+CP6r9HHvg== X-Gm-Gg: ASbGncvi3lggGwQqs/u009JQ80zobppbh4GHV2qgHmnd9vESRnl0dHqTF17sqqNwK/e UQuNqfwGC3vCQ46HLNkYfRUwb5nbeEe9xqX9GXbfIWOBS9EoADaWKZV/xmXrVHvp2LyvIfGTtW6 PMXJEGkcOKV4kR0eAZ3Zy0C2Gy0N+9uRzmwf0zmSDVGfCm38t3O10h7n//1OvNyydjnO0g8pLk/ fo2WQAJfVfM6O5/ANcbopy9YWfFEmIKbNipslgZPPhOikyuu/+QeohqonHR X-Google-Smtp-Source: AGHT+IHBeCaRpY2gxknf7inzNUPYlOXoSfSizZ7aaFd8+VgplWLhv3nfJFKC2FFCU/rlfCuco6TkRy3D6O+HDtmbMUo= X-Received: by 2002:a17:90b:5344:b0:32b:7082:b2 with SMTP id 98e67ed59e1d1-32d43f7ddc1mr23489239a91.23.1757539471818; Wed, 10 Sep 2025 14:24:31 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509051842.585IgHAr096237@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Wed, 10 Sep 2025 15:24:20 -0600 X-Gm-Features: Ac12FXwWPHd9esiptMTGbfbF6siLPNumMn8xMFnXKB132LIgZFgH5Bxieu6APIY Message-ID: Subject: Re: git: a930cc8bad64 - main - GEOM_UNION: Should free sc in g_union_ctl_create when error happened. To: John Baldwin Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000e5943b063e790b5f" X-Spamd-Bar: -- X-Spamd-Result: default: False [-3.00 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20230601.gappssmtp.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; MISSING_XM_UA(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::1029:from]; DMARC_NA(0.00)[bsdimp.com]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; R_SPF_NA(0.00)[no SPF record]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20230601.gappssmtp.com:+] X-Rspamd-Queue-Id: 4cMYc06cgCz48gV --000000000000e5943b063e790b5f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Sep 5, 2025 at 1:37=E2=80=AFPM John Baldwin wrote= : > On 9/5/25 14:42, Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3Da930cc8bad644039cfcfa5ff7c6fe3e= 8548aa9ae > > > > commit a930cc8bad644039cfcfa5ff7c6fe3e8548aa9ae > > Author: Wuyang Chung > > AuthorDate: 2025-09-02 06:23:26 +0000 > > Commit: Warner Losh > > CommitDate: 2025-09-05 18:42:20 +0000 > > > > GEOM_UNION: Should free sc in g_union_ctl_create when error > happened. > > > > Signed-off-by: Wuyang Chung > > Reviewed by: imp > > Pull Request: https://github.com/freebsd/freebsd-src/pull/1835 > > --- > > sys/geom/union/g_union.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/sys/geom/union/g_union.c b/sys/geom/union/g_union.c > > index 9734fc1bcfe3..0701e76db671 100644 > > --- a/sys/geom/union/g_union.c > > +++ b/sys/geom/union/g_union.c > > @@ -358,6 +358,7 @@ fail2: > > fail1: > > g_destroy_consumer(lowercp); > > g_destroy_provider(newpp); > > + g_free(sc); > > g_destroy_geom(gp); > > } > > Hmm, as markj@ noted in the review, this also needs an `rw_destroy`. > Fixed in 43b8c4e451196c5a5014679cf6e5d459bf330928. Thanks for the reminder. Warner --000000000000e5943b063e790b5f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Fri, Sep 5, = 2025 at 1:37=E2=80=AFPM John Baldwin <jhb@freebsd.org> wrote:
On 9/5/25 14:42, Warner Losh wrote:
> The branch main has been updated by imp:
>
> URL: https://= cgit.FreeBSD.org/src/commit/?id=3Da930cc8bad644039cfcfa5ff7c6fe3e8548aa9ae<= /a>
>
> commit a930cc8bad644039cfcfa5ff7c6fe3e8548aa9ae
> Author:=C2=A0 =C2=A0 =C2=A0Wuyang Chung <
wy-chung@outlook.com>
> AuthorDate: 2025-09-02 06:23:26 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2025-09-05 18:42:20 +0000
>
>=C2=A0 =C2=A0 =C2=A0 GEOM_UNION: Should free sc in g_union_ctl_create w= hen error happened.
>=C2=A0 =C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0 Signed-off-by: Wuyang Chung <wy-chung@outlook.com>
>=C2=A0 =C2=A0 =C2=A0 Reviewed by: imp
>=C2=A0 =C2=A0 =C2=A0 Pull Request: https://githu= b.com/freebsd/freebsd-src/pull/1835
> ---
>=C2=A0 =C2=A0sys/geom/union/g_union.c | 1 +
>=C2=A0 =C2=A01 file changed, 1 insertion(+)
>
> diff --git a/sys/geom/union/g_union.c b/sys/geom/union/g_union.c
> index 9734fc1bcfe3..0701e76db671 100644
> --- a/sys/geom/union/g_union.c
> +++ b/sys/geom/union/g_union.c
> @@ -358,6 +358,7 @@ fail2:
>=C2=A0 =C2=A0fail1:
>=C2=A0 =C2=A0 =C2=A0 =C2=A0g_destroy_consumer(lowercp);
>=C2=A0 =C2=A0 =C2=A0 =C2=A0g_destroy_provider(newpp);
> +=C2=A0 =C2=A0 =C2=A0g_free(sc);
>=C2=A0 =C2=A0 =C2=A0 =C2=A0g_destroy_geom(gp);
>=C2=A0 =C2=A0}

Hmm, as markj@ noted in the review, this also needs an `rw_destroy`.

Fixed in=C2=A043b8c4e451196c5a5014679cf6e5d45= 9bf330928. Thanks for the reminder.

Warner=C2=A0
--000000000000e5943b063e790b5f-- From nobody Wed Sep 10 23:27:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMcKh3H2tz67HHM; Wed, 10 Sep 2025 23:27:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMcKh2tXXz3Mwx; Wed, 10 Sep 2025 23:27:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757546840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZHS2Ln0DgX9Hqkleugqg1oE2fYA8hBrGw2grSjPRpIs=; b=l6NFotiwyaGUs59jo/vLrBukuWx3l3NDBnUPIjO5EE5Exr5SnqAytuKXOBIW1hjn8pub0W C+DtMyJ1weXz7yDN2McMkUVoan/F5QZZNAsq4KOZf0YplwqlrtkjRxl8OC9uo2a2QjKYav BXKYQzUgDHR/AqpnMhM2fHrTY6rG9XyqcFqAel/7IOyr69kSzk14MEoFhdwlI3X9P10GcU tC0aTolzZQlRCis3vaERKUTQz6Qi0JrveiT57RPDXaBTWzn5w5FSVOtFutKxVlW24HV1O2 WYQ7CG/gTZDeeyWSdkiqe0pycnjeBqznaMLHq+7pxGR2CZh61dM5PuhCx7JeXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757546840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZHS2Ln0DgX9Hqkleugqg1oE2fYA8hBrGw2grSjPRpIs=; b=tzUyLak7D3Qwsfyw/9H8vqLbGtxJTDYA5QM4oHrzc0MJWc+NSmk4Q8JsDmMTrK4gVT17wC 34mraCd+tnUBC4ziIZLPNQ0JDYaYSVSPFe3mWTVem18M1NAzBcur1aAkORZC0t31zwaeaC qO4WuV0jLVSTwyF2IokbSJxPGckIUokI8/9sn0C6sA7POlZtpPW/7WBuMN/PlWNP/cnf6e c9P8O5nodT2VckoO6D6ayWTnNDugv1GMdIBYQx+4MReS02urTh5bDicyB+PDBBuxsh/ONO 0QLNawQXSqEc55c2rfeUIcKuhb+QC+uSU43Fm2iI6O8D988+soDQeyeI2pXRsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757546840; a=rsa-sha256; cv=none; b=PY26WGyVxEBS6uFIBJ2nqpXJDnOBfYnYNirbCaXn2A+IpLg8CxE3C5WnWRfP1pIctu8avM P5oQbahfbOydQmcJsQVHVo+MT8JpX70IWlA8JL+v3zVfTta8cuDBkX0T3h/cAPgbSyeepu 5BTcOW+h22i1G9B4kF8Q3Y7XbAJf+NKwGSmFQyprwcevIIvvBlKU0nTUKjRUR4IzMKh3R6 L4r3nG6DrMjqoAx3T+Fr2HPilWP5c4ITazKe6rY/s0eJ6gRrvw8sipZlZ9JrI8Op05b2Jl yGCIjurnkULuI0D+kMOvnmeazn2FwcD7SDlTUze2UWyhnYAxLVUsNRAU+1h3Uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMcKh2GClzjdm; Wed, 10 Sep 2025 23:27: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 58ANRKst096697; Wed, 10 Sep 2025 23:27:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58ANRKgT096694; Wed, 10 Sep 2025 23:27:20 GMT (envelope-from git) Date: Wed, 10 Sep 2025 23:27:20 GMT Message-Id: <202509102327.58ANRKgT096694@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: d81b337d690c - main - jaildesc: remove file-mode-based access controls List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d81b337d690c971d60c731494795ee4b81fb929e Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=d81b337d690c971d60c731494795ee4b81fb929e commit d81b337d690c971d60c731494795ee4b81fb929e Author: Jamie Gritton AuthorDate: 2025-09-10 23:21:11 +0000 Commit: Jamie Gritton CommitDate: 2025-09-10 23:21:11 +0000 jaildesc: remove file-mode-based access controls Jail descriptors were given a file-like mode, user, and group, for the purpose of controlling how the descriptor may be used. This is too far removed from the file paradigm to make sense. Remove it in favor of a better access control method to be added, such as Capsicum. Also add missing code in jaildesc_fill_kinfo. Reported by: crest at rlwinm.de, kib MFC after: 3 days --- lib/libsys/jail.2 | 67 ------------------------------ sys/kern/kern_jail.c | 72 ++++---------------------------- sys/kern/kern_jaildesc.c | 106 +++++++++++------------------------------------ sys/sys/jaildesc.h | 8 ++-- 4 files changed, 36 insertions(+), 217 deletions(-) diff --git a/lib/libsys/jail.2 b/lib/libsys/jail.2 index a2640071d1f0..d3f871608c1d 100644 --- a/lib/libsys/jail.2 +++ b/lib/libsys/jail.2 @@ -340,31 +340,6 @@ work the same as and .Fn jail_remove , except that they operate on the jail referred to by the passed descriptor. -.Pp -Jail operations via descriptors can be done by processes that do not -normally have permission to see or affect the jail, -as long as they are allowed by the file permissions of the jail -descriptor itself. -These permissions can be changed by the descriptor owner via -.Xr fchmod 2 -and -.Xr fchown 2 . -.Fn jail_get -requires read permission, -.Fn jail_set -and -.Fn jail_remove -require write permission, -and -.Fn jail_attach -requires execute permission. -Also, use of a descriptor with the -.Dv JAIL_AT_DESC -flag requires execute permission. -An owning descriptor is identified by the -.Em sticky bit , -which may also be changed via -.Xr fchmod 2 . .Sh RETURN VALUES If successful, .Fn jail , @@ -402,22 +377,6 @@ The system call will fail if: .Bl -tag -width Er -.It Bq Er EACCES -Write permission is denied on the jail descriptor in the -.Va desc -parameter, -and the -.Dv JAIL_USE_DESC -flag was set. -.It Bq Er EACCES -Execute permission is denied on the jail descriptor in the -.Va desc -parameter, -and either the -.Dv JAIL_AT_DESC -or -.Dv JAIL_ATTACH -flag was set. .It Bq Er EPERM This process is not allowed to create a jail, either because it is not the super-user, or because it would exceed the jail's @@ -505,24 +464,6 @@ The system call will fail if: .Bl -tag -width Er -.It Bq Er EACCES -Read permission is denied on the jail descriptor in the -.Va desc -parameter, -and the -.Dv JAIL_USE_DESC -flag was set. -.It Bq Er EACCES -Execute permission is denied on the jail descriptor in the -.Va desc -parameter, -and the -.Dv JAIL_AT_DESC -flag was set. -.It Bq Er EFAULT -.Fa Iov , -or one of the addresses contained within it, -points to an address outside the allocated address space of the process. .It Bq Er ENOENT The jail referred to by a .Va jid @@ -597,14 +538,6 @@ will fail if: The .Fa fd argument is not a valid jail descriptor. -.It Bq Er EACCES -Permission is denied on the jail descriptor -.Po -execute permission for -.Fn jail_attach_fd , -or write permission for -.Fn jail_remove_fd -.Pc . .It Bq Er EPERM The jail descriptor was created by a user other than the super-user. .It Bq Er EINVAL diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index 51a8b5cc0465..3d18b03119ff 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -991,7 +991,6 @@ int kern_jail_set(struct thread *td, struct uio *optuio, int flags) { struct file *jfp_out; - struct jaildesc *desc_in; struct nameidata nd; #ifdef INET struct prison_ip *ip4; @@ -1095,24 +1094,13 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) * descriptor's prison. */ prison_free(mypr); - error = jaildesc_find(td, jfd_in, &desc_in, &mypr, - NULL); + error = jaildesc_find(td, jfd_in, &mypr, NULL); if (error != 0) { vfs_opterror(opts, error == ENOENT ? "descriptor to dead jail" : "not a jail descriptor"); goto done_errmsg; } - /* - * Check file permissions using the current - * credentials, and operation permissions - * using the descriptor's credentials. - */ - error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, - desc_in->jd_gid, VEXEC, td->td_ucred); - JAILDESC_UNLOCK(desc_in); - if (error != 0) - goto done_free; if ((flags & JAIL_CREATE) && mypr->pr_childmax == 0) { error = EPERM; goto done_free; @@ -1516,7 +1504,7 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) } if (flags & JAIL_USE_DESC) { /* Get the jail from its descriptor. */ - error = jaildesc_find(td, jfd_in, &desc_in, &pr, &jdcred); + error = jaildesc_find(td, jfd_in, &pr, &jdcred); if (error) { vfs_opterror(opts, error == ENOENT ? "descriptor to dead jail" : @@ -1524,19 +1512,7 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) goto done_deref; } drflags |= PD_DEREF; - /* - * Check file permissions using the current credentials, - * and operation permissions using the descriptor's - * credentials. - */ - error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, - desc_in->jd_gid, VWRITE, td->td_ucred); - if (error == 0 && (flags & JAIL_ATTACH)) - error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, - desc_in->jd_gid, VEXEC, td->td_ucred); - JAILDESC_UNLOCK(desc_in); - if (error == 0) - error = priv_check_cred(jdcred, PRIV_JAIL_SET); + error = priv_check_cred(jdcred, PRIV_JAIL_SET); if (error == 0 && (flags & JAIL_ATTACH)) error = priv_check_cred(jdcred, PRIV_JAIL_ATTACH); crfree(jdcred); @@ -2500,7 +2476,6 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) { struct bool_flags *bf; struct file *jfp_out; - struct jaildesc *desc_in; struct jailsys_flags *jsf; struct prison *pr, *mypr; struct vfsopt *opt; @@ -2547,7 +2522,7 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) } if (flags & JAIL_USE_DESC) { /* Get the jail from its descriptor. */ - error = jaildesc_find(td, jfd_in, &desc_in, &pr, NULL); + error = jaildesc_find(td, jfd_in, &pr, NULL); if (error) { vfs_opterror(opts, error == ENOENT ? "descriptor to dead jail" : @@ -2555,11 +2530,6 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) goto done; } drflags |= PD_DEREF; - error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, - desc_in->jd_gid, VREAD, td->td_ucred); - JAILDESC_UNLOCK(desc_in); - if (error != 0) - goto done; mtx_lock(&pr->pr_mtx); drflags |= PD_LOCKED; if (!(prison_isalive(pr) || (flags & JAIL_DYING))) { @@ -2573,19 +2543,13 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) if (flags & JAIL_AT_DESC) { /* Look up jails based on the descriptor's prison. */ prison_free(mypr); - error = jaildesc_find(td, jfd_in, &desc_in, &mypr, - NULL); + error = jaildesc_find(td, jfd_in, &mypr, NULL); if (error != 0) { vfs_opterror(opts, error == ENOENT ? "descriptor to dead jail" : "not a jail descriptor"); goto done; } - error = vaccess(VREG, desc_in->jd_mode, desc_in->jd_uid, - desc_in->jd_gid, VEXEC, td->td_ucred); - JAILDESC_UNLOCK(desc_in); - if (error != 0) - goto done; } if (flags & (JAIL_GET_DESC | JAIL_OWN_DESC)) { /* Allocate a jail descriptor to return later. */ @@ -2916,23 +2880,14 @@ sys_jail_remove(struct thread *td, struct jail_remove_args *uap) int sys_jail_remove_jd(struct thread *td, struct jail_remove_jd_args *uap) { - struct jaildesc *jd; struct prison *pr; struct ucred *jdcred; int error; - error = jaildesc_find(td, uap->fd, &jd, &pr, &jdcred); + error = jaildesc_find(td, uap->fd, &pr, &jdcred); if (error) return (error); - /* - * Check file permissions using the current credentials, and - * operation permissions using the descriptor's credentials. - */ - error = vaccess(VREG, jd->jd_mode, jd->jd_uid, jd->jd_gid, VWRITE, - td->td_ucred); - JAILDESC_UNLOCK(jd); - if (error == 0) - error = priv_check_cred(jdcred, PRIV_JAIL_REMOVE); + error = priv_check_cred(jdcred, PRIV_JAIL_REMOVE); crfree(jdcred); if (error) { prison_free(pr); @@ -3002,26 +2957,17 @@ sys_jail_attach(struct thread *td, struct jail_attach_args *uap) int sys_jail_attach_jd(struct thread *td, struct jail_attach_jd_args *uap) { - struct jaildesc *jd; struct prison *pr; struct ucred *jdcred; int drflags, error; sx_slock(&allprison_lock); drflags = PD_LIST_SLOCKED; - error = jaildesc_find(td, uap->fd, &jd, &pr, &jdcred); + error = jaildesc_find(td, uap->fd, &pr, &jdcred); if (error) goto fail; drflags |= PD_DEREF; - /* - * Check file permissions using the current credentials, and - * operation permissions using the descriptor's credentials. - */ - error = vaccess(VREG, jd->jd_mode, jd->jd_uid, jd->jd_gid, VEXEC, - td->td_ucred); - JAILDESC_UNLOCK(jd); - if (error == 0) - error = priv_check_cred(jdcred, PRIV_JAIL_ATTACH); + error = priv_check_cred(jdcred, PRIV_JAIL_ATTACH); crfree(jdcred); if (error) goto fail; diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index 72e2845aaf42..c9e80f5d8941 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -41,14 +41,13 @@ #include #include #include +#include #include MALLOC_DEFINE(M_JAILDESC, "jaildesc", "jail descriptors"); static fo_stat_t jaildesc_stat; static fo_close_t jaildesc_close; -static fo_chmod_t jaildesc_chmod; -static fo_chown_t jaildesc_chown; static fo_fill_kinfo_t jaildesc_fill_kinfo; static fo_cmp_t jaildesc_cmp; @@ -61,8 +60,8 @@ static struct fileops jaildesc_ops = { .fo_kqfilter = invfo_kqfilter, .fo_stat = jaildesc_stat, .fo_close = jaildesc_close, - .fo_chmod = jaildesc_chmod, - .fo_chown = jaildesc_chown, + .fo_chmod = invfo_chmod, + .fo_chown = invfo_chown, .fo_sendfile = invfo_sendfile, .fo_fill_kinfo = jaildesc_fill_kinfo, .fo_cmp = jaildesc_cmp, @@ -70,13 +69,13 @@ static struct fileops jaildesc_ops = { }; /* - * Given a jail descriptor number, return the jaildesc, its prison, - * and its credential. The jaildesc will be returned locked, and - * prison and the credential will be returned held. + * Given a jail descriptor number, return its prison and/or its + * credential. They are returned held, and will need to be released + * by the caller. */ int -jaildesc_find(struct thread *td, int fd, struct jaildesc **jdp, - struct prison **prp, struct ucred **ucredp) +jaildesc_find(struct thread *td, int fd, struct prison **prp, + struct ucred **ucredp) { struct file *fp; struct jaildesc *jd; @@ -98,12 +97,11 @@ jaildesc_find(struct thread *td, int fd, struct jaildesc **jdp, JAILDESC_UNLOCK(jd); goto out; } - prison_hold(pr); - *prp = pr; - if (jdp != NULL) - *jdp = jd; - else - JAILDESC_UNLOCK(jd); + if (prp != NULL) { + prison_hold(pr); + *prp = pr; + } + JAILDESC_UNLOCK(jd); if (ucredp != NULL) *ucredp = crhold(fp->f_cred); out: @@ -122,15 +120,12 @@ jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning) struct file *fp; struct jaildesc *jd; int error; - mode_t mode; if (owning) { error = priv_check(td, PRIV_JAIL_REMOVE); if (error != 0) return (error); - mode = S_ISTXT; - } else - mode = 0; + } jd = malloc(sizeof(*jd), M_JAILDESC, M_WAITOK | M_ZERO); error = falloc_caps(td, &fp, fdp, 0, NULL); if (error != 0) { @@ -140,11 +135,8 @@ jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning) finit(fp, priv_check_cred(fp->f_cred, PRIV_JAIL_SET) == 0 ? FREAD | FWRITE : FREAD, DTYPE_JAILDESC, jd, &jaildesc_ops); JAILDESC_LOCK_INIT(jd); - jd->jd_uid = fp->f_cred->cr_uid; - jd->jd_gid = fp->f_cred->cr_gid; - jd->jd_mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH | mode | - (priv_check(td, PRIV_JAIL_SET) == 0 ? S_IWUSR | S_IXUSR : 0) | - (priv_check(td, PRIV_JAIL_ATTACH) == 0 ? S_IXUSR : 0); + if (owning) + jd->jd_flags |= JDF_OWNING; *fpp = fp; return (0); } @@ -206,7 +198,7 @@ jaildesc_close(struct file *fp, struct thread *td) */ prison_hold(pr); JAILDESC_UNLOCK(jd); - if (jd->jd_mode & S_ISTXT) { + if (jd->jd_flags & JDF_OWNING) { sx_xlock(&allprison_lock); prison_lock(pr); if (jd->jd_prison != NULL) { @@ -246,10 +238,8 @@ jaildesc_stat(struct file *fp, struct stat *sb, struct ucred *active_cred) jd = fp->f_data; JAILDESC_LOCK(jd); if (jd->jd_prison != NULL) { - sb->st_ino = jd->jd_prison ? jd->jd_prison->pr_id : 0; - sb->st_uid = jd->jd_uid; - sb->st_gid = jd->jd_gid; - sb->st_mode = jd->jd_mode; + sb->st_ino = jd->jd_prison->pr_id; + sb->st_mode = S_IFREG | S_IRWXU; } else sb->st_mode = S_IFREG; JAILDESC_UNLOCK(jd); @@ -257,63 +247,15 @@ jaildesc_stat(struct file *fp, struct stat *sb, struct ucred *active_cred) } static int -jaildesc_chmod(struct file *fp, mode_t mode, struct ucred *active_cred, - struct thread *td) -{ - struct jaildesc *jd; - int error; - - /* Reject permissions that the creator doesn't have. */ - if (((mode & (S_IWUSR | S_IWGRP | S_IWOTH)) && - priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) || - ((mode & (S_IXUSR | S_IXGRP | S_IXOTH)) && - priv_check_cred(fp->f_cred, PRIV_JAIL_ATTACH) != 0 && - priv_check_cred(fp->f_cred, PRIV_JAIL_SET) != 0) || - ((mode & S_ISTXT) && - priv_check_cred(fp->f_cred, PRIV_JAIL_REMOVE) != 0)) - return (EPERM); - if (mode & (S_ISUID | S_ISGID)) - return (EINVAL); - jd = fp->f_data; - JAILDESC_LOCK(jd); - error = vaccess(VREG, jd->jd_mode, jd->jd_uid, jd->jd_gid, VADMIN, - active_cred); - if (error == 0) - jd->jd_mode = S_IFREG | (mode & ALLPERMS); - JAILDESC_UNLOCK(jd); - return (error); -} - -static int -jaildesc_chown(struct file *fp, uid_t uid, gid_t gid, struct ucred *active_cred, - struct thread *td) +jaildesc_fill_kinfo(struct file *fp, struct kinfo_file *kif, + struct filedesc *fdp) { struct jaildesc *jd; - int error; - error = 0; jd = fp->f_data; - JAILDESC_LOCK(jd); - if (uid == (uid_t)-1) - uid = jd->jd_uid; - if (gid == (gid_t)-1) - gid = jd->jd_gid; - if ((uid != jd->jd_uid && uid != active_cred->cr_uid) || - (gid != jd->jd_gid && !groupmember(gid, active_cred))) - error = priv_check_cred(active_cred, PRIV_VFS_CHOWN); - if (error == 0) { - jd->jd_uid = uid; - jd->jd_gid = gid; - } - JAILDESC_UNLOCK(jd); - return (error); -} - -static int -jaildesc_fill_kinfo(struct file *fp, struct kinfo_file *kif, - struct filedesc *fdp) -{ - return (EINVAL); + kif->kf_type = KF_TYPE_JAILDESC; + kif->kf_un.kf_jail.kf_jid = jd->jd_prison ? jd->jd_prison->pr_id : 0; + return (0); } static int diff --git a/sys/sys/jaildesc.h b/sys/sys/jaildesc.h index 4bed1ab3b88a..2451b04f7302 100644 --- a/sys/sys/jaildesc.h +++ b/sys/sys/jaildesc.h @@ -54,9 +54,6 @@ struct jaildesc { LIST_ENTRY(jaildesc) jd_list; /* (d,p) this prison's descs */ struct prison *jd_prison; /* (d) the prison */ struct mtx jd_lock; - uid_t jd_uid; /* (d) nominal file owner */ - gid_t jd_gid; /* (d) nominal file group */ - mode_t jd_mode; /* (d) descriptor permissions */ unsigned jd_flags; /* (d) JDF_* flags */ }; @@ -73,9 +70,10 @@ struct jaildesc { * Flags for the jd_flags field */ #define JDF_REMOVED 0x00000002 /* jail was removed */ +#define JDF_OWNING 0x00000004 /* closing descriptor removes jail */ -int jaildesc_find(struct thread *td, int fd, struct jaildesc **jdp, - struct prison **prp, struct ucred **ucredp); +int jaildesc_find(struct thread *td, int fd, struct prison **prp, + struct ucred **ucredp); int jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning); void jaildesc_set_prison(struct file *jd, struct prison *pr); void jaildesc_prison_cleanup(struct prison *pr); From nobody Thu Sep 11 01:06:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMfX41h8dz67MtC; Thu, 11 Sep 2025 01:06:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMfX4187Fz3TwH; Thu, 11 Sep 2025 01:06:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757552788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KgvFinos8i04B6bv1fv7BK9qlCwy6AKQcpFpW4NHgCA=; b=dKAr8UglnNRnzYzlIFpOD4uiSNUi6fmZb+NQapAS98tDgiluJCM/wuEEP62ZAzXTDQuXbl 3aEIRIdXRqg+W8h+5s09qNQQuf+PMKiED+x59MLYauqcc1L62VwGE9/9bPLSKExEspx5wA n7OUugroKZwvDpu/AgOZL5MCukddPgtKhZtafeTp2jAzlz6o+EwcKrtrlRRL8VGuyZH4Gi rVlxarIDHliCXJ6m0r9ANLmcetBRlfp2Awg9OEGBjnOTUkBndFoJeG29RuyFAqJQpbNvqy dfKtMuZfN/x7x4yOJeQFk7jgs131h2SCcQdTAh5ntkS6myx0XdMXQ8zdy9L3eA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757552788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KgvFinos8i04B6bv1fv7BK9qlCwy6AKQcpFpW4NHgCA=; b=HjtVaxmtjGz42h4CZDFEVHdhSaF/dKOh2jps8MLEyMkuPXwMx3LdxvlGHoguZW+mYIMwGl uuKGFQXhiQZae5ShgqQdMfulgd+tIgePElRm4Y8UwxAsGu3egwhS57I2bbTR/U21ncAV4n 7Af/8HHximjEgNisZOOjGaAP4cDBzjBvzvnCvZ+1gBWrwYyPDDe+rzdSw+nrKB+YHIh26j BnshxI61Rd0GAaAANGsE+QrL/w3+CFX1z9z8CZrBKQCDsgYqKVcisKzPkCA3bemlthb7uN N9HLO7vk+ui++XNogDp2ytuAt93fvEXED8ldUzT6Q3i0CxSGyPbLNqRzVFD2SQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757552788; a=rsa-sha256; cv=none; b=m8+AF9DgL+jB4SoLqn7BxInlnwLxBCBnD7AgKVCRGfeLoUYoh53JOyBeviYDsEQ0Rrgxtb NYBYivk5SFiXKINVKwKC0RbOzfx8q6FKbLTkeZJW3cjF9TfwCvN6fzEhfPoOYx5W5yX7t/ Mw55dX28eUC7gqePg/9pXhbuQx6tbthv+EtmCnwFFQOOPv3GqHOnl605TkSiy2nGgq6KKa TKvXSbSjWbEnJgvQ3mFbPmyLVvotVn87M6vr3mY0O3LfT+ShPOkzKzh4txdi3hZzDUic9T N8c4Gb614piXmFNXaUj8pa45JHBQJGw94KNr050OxT8g5sV2t6BEdXz4D+9elA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMfX40gKCzm2j; Thu, 11 Sep 2025 01:06: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 58B16Ran084185; Thu, 11 Sep 2025 01:06:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58B16Rad084182; Thu, 11 Sep 2025 01:06:27 GMT (envelope-from git) Date: Thu, 11 Sep 2025 01:06:27 GMT Message-Id: <202509110106.58B16Rad084182@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: fc68f8aac623 - main - rmuser.sh: Improve prompt consistency with adduser List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fc68f8aac623b5494484adfa41ac600415609870 Auto-Submitted: auto-generated The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=fc68f8aac623b5494484adfa41ac600415609870 commit fc68f8aac623b5494484adfa41ac600415609870 Author: Alexander Ziaee AuthorDate: 2025-09-09 17:06:29 +0000 Commit: Alexander Ziaee CommitDate: 2025-09-11 00:43:37 +0000 rmuser.sh: Improve prompt consistency with adduser While here, improve userlist error message. PR: 289399 MFC after: 3 days Reviewed by: kbowling, rgrimes Approved by: kbowling, rgrimes (src) Reported by: michaeldexter, rgrimes Differential Revision: https://reviews.freebsd.org/D52464 --- usr.sbin/adduser/rmuser.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usr.sbin/adduser/rmuser.sh b/usr.sbin/adduser/rmuser.sh index 4c1e4049763a..8e5dd28cf01f 100644 --- a/usr.sbin/adduser/rmuser.sh +++ b/usr.sbin/adduser/rmuser.sh @@ -303,7 +303,7 @@ if [ ! "$userlist" ]; then show_usage exit 1 else - echo -n "Please enter one or more usernames: " + echo -n "Please enter one or more usernames, or press enter to exit: " read userlist fi fi @@ -333,11 +333,11 @@ for _user in $userlist ; do echo echo $userrec echo - if ! prompt_yesno "Is this the entry you wish to remove? " ; then + if ! prompt_yesno "Is this the entry you wish to remove? (yes/no): " ; then continue fi _homedir=`echo $userrec | awk -F: '{print $9}'` - if prompt_yesno "Remove user's home directory ($_homedir)? "; then + if prompt_yesno "Remove user's home directory? [$_homedir] (yes/no): "; then pw_rswitch="-r" fi else From nobody Thu Sep 11 07:04:25 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMpT51k9Hz62XwK; Thu, 11 Sep 2025 07:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMpT51BBvz49pT; Thu, 11 Sep 2025 07:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757574265; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7p7VbxPKJ1afWOsOX9tgTE3FJYYOOGZok82LneHPxBs=; b=MsXgyUODxcFm2rxdF/JXPIK/9nBBh9FInRlix5pST1UsZ7IcyIeyxYE67atbRgsgPAht3p TUZh8r5cGqfvzfJP3jTI/0/cutNymIMlrZp+PvgipwTZ6PW9gLNFiMhNuY9bknMHLXCyXO 64I7GA+hjOoTw3ZvWE7k8ig3EZtoI76lmJaq2ILQKcnTdRpwOKGZLiq/iudt2nGCX/mC4b oo2PBWcrVXqFf69vjoD0xQmq/Xo8Gtc/4L+9LpMkRIJo2KnQveM0xmM9HEMNjQJqRs3UTy 8vgRxiv0moUF7uZHg7hsvMROJ1+xCbo9srn508UukXjXrtopbQNmr7iufneyTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757574265; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7p7VbxPKJ1afWOsOX9tgTE3FJYYOOGZok82LneHPxBs=; b=CHGdLfj6MQ3c1c36N7jvoj1o1/149XBCyhvds4s+FPGdfhv1wScajJq9ZPLeWkC821SXYC X8gCkCsqUr6ztPrto6BJzehKInwJ3MS8RMPVH+6Aw7ZLR0JaL3HXLlAreQGOcvMYo2Gi6J 0B+xK6mzoQzn79t4MjZWKCKCsQ0tFJv0Jxr+ll0FAo/OFcUAUop2pEpsnXxY3lyfNfnf6e +/i50fmT94m9COWH6ewoN81nRFgtF0QlH4giEjXfScVW5l/JQgHk5kmi4E/2mjICBLL2PN lRF+355jSYlgrPUxhYZroaYh39pBxiWsjJBtu52hcmO2/MhN7wtPwwDDVoMG6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757574265; a=rsa-sha256; cv=none; b=R1BP/G/xQGuBHbLvnLeh7nQ0lb305WjpJcN1t0RDJaJQ7npvHbpcfYrE2kOvy7aUxgMsMs KluDszh8US1vr3GsmzxuWDLvqbkCoPWjA9cLm4bWnH3gk+SBMumcWxNVW2mqkyl4uHzdrc MiAanQSyD0GGArR/FvZJbJwU9RhOAK7KwesZ1ZcDiiM3/oSYbIIiEzY4qsa+nu0axi45T0 0ojbvn9ZjcpEYY2hao0Z6zKAU1erOdqwVzD9Y2DbKqnHmOJPI1ehKtVcG68A/Pk2GrIRH2 93Ep6mQkJ4QTKIzf9mnVcg17ooRJKGAKrkUeKeotQgaKIje9jS9EhJv0LWhu5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMpT50kVvzxdL; Thu, 11 Sep 2025 07:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58B74PhK064600; Thu, 11 Sep 2025 07:04:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58B74PML064597; Thu, 11 Sep 2025 07:04:25 GMT (envelope-from git) Date: Thu, 11 Sep 2025 07:04:25 GMT Message-Id: <202509110704.58B74PML064597@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 08b8843137b8 - main - pkg(7): Add support for pkg+ prefix to bootstrap pubkey List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 08b8843137b8be3f71608400907cb38bcda14965 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=08b8843137b8be3f71608400907cb38bcda14965 commit 08b8843137b8be3f71608400907cb38bcda14965 Author: Seyed Pouria Mousavizadeh Tehrani AuthorDate: 2025-09-11 07:01:54 +0000 Commit: Baptiste Daroussin CommitDate: 2025-09-11 07:03:48 +0000 pkg(7): Add support for pkg+ prefix to bootstrap pubkey MFC After: 1 day Sponsored by: Amn Afzar Hoopad Inc Differencial Revision: https://reviews.freebsd.org/D52418 --- usr.sbin/pkg/pkg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/pkg/pkg.c b/usr.sbin/pkg/pkg.c index 7899fbaeaf09..7b0a67e69a4c 100644 --- a/usr.sbin/pkg/pkg.c +++ b/usr.sbin/pkg/pkg.c @@ -889,7 +889,7 @@ bootstrap_pkg(bool force, const char *fetchOpts, struct repository *repo) getenv("TMPDIR") ? getenv("TMPDIR") : _PATH_TMP, bootstrap_name); snprintf(url, MAXPATHLEN, "%s/Latest/%s.pubkeysig", - repo->url, bootstrap_name); + packagesite, bootstrap_name); if ((fd_sig = fetch_to_fd(repo, url, tmpsig, fetchOpts)) == -1) { fprintf(stderr, "Signature for pkg not " From nobody Thu Sep 11 07:54:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMqb366VGz62b3v; Thu, 11 Sep 2025 07:54:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMqb35T3Fz4Hjx; Thu, 11 Sep 2025 07:54:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757577279; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H7gbBOZvk3GckAsb1mNNJmhVuw2JMeLC4kVMwOFN9pQ=; b=YgMq809Ku6pEcOmVtjmTbWKkvbC3yjcpp99lAvAVihVt6DwOb6ewjgeT5/sGd9aNjMvKyV /v77Fhlyvm1t5x8TnVoRWk6N0uVRu0xyU91/+8iTGtGtWm8/YmptrGRPcKgZur2cOkgT+P WALbcZyustvC/7emfioEGyIuIiP/rwfVS3vqD8A6AyJ6jNV8wjHzlAEQeTy5tjxrcMXFaS yZ1IRHsycpQRoOvpA0UDNTzVk6ka8KutuEfZe1vzR82ZkTnooQR+uT4Qi7kSjMWfx+AsiI uiDF/e+GwRcpzx0fMKT/2TTqnC8w0l75tNtsMThKsoJqCR59WEqbYrqd0UMD9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757577279; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=H7gbBOZvk3GckAsb1mNNJmhVuw2JMeLC4kVMwOFN9pQ=; b=rklGwoedI+JXOJC9hJuFXFpR6fQoJF4/xCrAkbzIMLWSIQLuyOLOT4FUq0S2zqoB7b+BuQ g6/d35E8BXFDuMn6ZtAIX0POFv/H55KSLvZBtsounBzko8Wq4FwIODBLGuzFDGbrvLhaUf 2O1wROgBnUr+HaiOoE9Vjd16hA5MbYuBc/pPcD6yRONNcN0OO33LzihZK94bFNzaWk1XAa Q594r/QFINL2ARGGIY7Bm0/GcG7trnVe42yrnvskTRMrH/aV/Zo309lnMLEq/GGHg5BOHI mMrNuTQVcVWG+nfPfPX9DizluU0Enq2AGCa655/4eBaujL0g9W308ifLmQm2BQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757577279; a=rsa-sha256; cv=none; b=ZWo4ch9MJ1g2EAKmwHwhbtNbD4U4bgokAZ0JRo7Oh5rLxm9Ao1b0yoPcgV6AQiPjxn4vcQ Q/nIy00NotMC2IFlzce0JsrzUtVNGEwempUY+WV+Qm0hbhHfe1msH8Nc+DWvDkvGornaOy VhvHxkIVyrUOn2q6cfoV+q3eehBhRoKG7Y+EEryYk85nDk2k72KcHQTyRf/YghT/ZGEtXY 7zzoxxlfogBig4z5kgjFjGm6NY+Vnr87iI2E6j4t2vHYR4vKKsdFvKKvp7TXjv4mNH9ymo WDY/kHz2gCHTOxvRJsTrY411HO2ABlTzxnb9g4N7yY8SuMnPBGpDwrTQE5Z8cw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMqb34r8qzyQ6; Thu, 11 Sep 2025 07:54: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 58B7sdTX057898; Thu, 11 Sep 2025 07:54:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58B7sdKb057895; Thu, 11 Sep 2025 07:54:39 GMT (envelope-from git) Date: Thu, 11 Sep 2025 07:54:39 GMT Message-Id: <202509110754.58B7sdKb057895@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 2e72bd422956 - main - pci_vendors: update to 2025-07-11 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 2e72bd422956f831ec7e54255bd12fb721887f4a Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=2e72bd422956f831ec7e54255bd12fb721887f4a commit 2e72bd422956f831ec7e54255bd12fb721887f4a Author: Baptiste Daroussin AuthorDate: 2025-09-11 07:53:32 +0000 Commit: Baptiste Daroussin CommitDate: 2025-09-11 07:53:32 +0000 pci_vendors: update to 2025-07-11 --- share/misc/pci_vendors | 1005 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 914 insertions(+), 91 deletions(-) diff --git a/share/misc/pci_vendors b/share/misc/pci_vendors index 6dfe12dfc8ad..6fb8865340a0 100644 --- a/share/misc/pci_vendors +++ b/share/misc/pci_vendors @@ -1,8 +1,8 @@ # # List of PCI ID's # -# Version: 2025.03.09 -# Date: 2025-03-09 03:15:02 +# Version: 2025.07.11 +# Date: 2025-07-11 03:15:02 # # Maintained by Albert Pool, Martin Mares, and other volunteers from # the PCI ID Project at https://pci-ids.ucw.cz/. @@ -114,6 +114,8 @@ 0b70 NVMe DC SSD [Yorktown controller] 2b59 NVMe DC SSD [Atomos Prime] 025e 0008 NVMe DC SSD U.2-SFF 15mm [D7-PS1010] + 025e 000c NVMe DC SSD E1.S 9.5mm [D7-PS1010] + 025e 000d NVMe DC SSD E1.S 15mm [D7-PS1010] 025e 0019 NVMe DC SSD E3.S-1T 7.5mm [D7-PS1010] 025e 0108 NVMe DC SSD U.2-SFF 15mm [D7-PS1030] 025e 0119 NVMe DC SSD E3.S-1T 7.5mm [D7-PS1030] @@ -154,6 +156,14 @@ 0202 GP202 0721 Sapphire, Inc. 0731 Jingjia Microelectronics Co Ltd + 1100 JM1100 + 0731 1101 JM1100-C + 0731 1102 JM1100-II + 0731 1103 JM1100-I + 0731 1104 JM1100-M + 0731 1105 JM1100-Y + 0731 1106 JM1100-EI + 0731 1107 JM1100-EM 7200 JM7200 Series GPU 0731 7201 JM7201 0731 7202 JM7202 @@ -191,6 +201,9 @@ 0731 930b JH930-M 0731 930c JH930 930b JH930-M + f011 JM1100-IV + f111 JM1100-MV + ff11 JM1100-YV 0777 Ubiquiti Networks, Inc. 0795 Wired Inc. 6663 Butane II (MPEG2 encoder board) @@ -642,7 +655,7 @@ 1bd4 000e 6G SAS2008IR 1bd4 000f 6G SAS2008IT SA5248 1bd4 0010 6G SAS2008IR SA5248 - 4c52 96c8 LRSA96C8 8-Port SATA3(6Gb/s)Exchange Adapter (with Raid) + 4c52 96c8 LRSA96C8 8-Port SATA3 (6Gb/s) Exchange Adapter (with RAID) 8086 350f RMS2LL040 RAID Controller 8086 3700 SSD 910 Series 0073 MegaRAID SAS 2008 [Falcon] @@ -775,6 +788,9 @@ 1000 30a0 SAS9300-8e 1000 30e0 SAS9300-8i 1000 3130 SAS 9300-16i + 1000 3170 SAS9302-16e +# IBM SAS3008 HBA controller + 1014 0457 9302-8i [N2215] 1028 1f45 HBA330 Adapter 1028 1f46 12Gbps HBA 1028 1f53 HBA330 Mini @@ -869,6 +885,9 @@ 1000 5030 eHBA 9700-16e 24G SAS/PCIe Storage Adapter 1028 22d2 PERC H975i Front 1028 22d3 PERC H975i Adapter + 1028 23cb PERC H975i Front + 1028 23cd PERC H975i Adapter + 1028 2446 PERC H976i Front 1d49 020b ThinkSystem 460-16e SAS/SATA PCIe Gen5 24Gb HBA 00b5 Fusion-MPT 24G SAS/PCIe SAS50xx/SAS51xx # 9760W 32 internal port RAID controller @@ -883,6 +902,11 @@ 1000 5021 eHBA 9700W-16i 24G SAS/PCIe Storage Adapter # 9700 16 external port Storage controller 1000 5030 eHBA 9700-16e 24G SAS/PCIe Storage Adapter + 1028 22d2 PERC H975i Front - Virtual + 1028 22d3 PERC H975i Adapter - Virtual + 1028 23cb PERC H975i Front - Virtual + 1028 23cd PERC H975i Adapter - Virtual + 1028 2446 PERC H976i Front - Virtual # Broadcom next-gen MPT PCIe switch 00b8 Fusion-MPT Switch SAS50xx/SAS51xx 00be SAS3504 Fusion-MPT Tri-Mode RAID On Chip (ROC) @@ -1293,12 +1317,12 @@ 15ff Fenghuang [Zhongshan Subor Z+] 1607 Arden 1636 Renoir [Radeon Vega Series / Radeon Vega Mobile Series] - 1637 Renoir Radeon High Definition Audio Controller + 1637 Renoir/Cezanne HDMI/DP Audio Controller 1638 Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] 1043 16c2 Radeon Vega 8 # Used in the Steam Deck LCD 163f VanGogh [AMD Custom GPU 0405] - 1640 Rembrandt Radeon High Definition Audio Controller + 1640 Radeon High Definition Audio Controller [Rembrandt/Strix] 164c Lucienne 164d Rembrandt 164e Raphael @@ -1306,8 +1330,9 @@ 1681 Rembrandt [Radeon 680M] 1714 BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] 103c 168b ProBook 4535s - 1900 Phoenix3 - 1901 Phoenix4 + 1900 HawkPoint1 + 1901 HawkPoint2 + 1902 Krackan2 3150 RV380/M24 [Mobility Radeon X600] 103c 0934 nx8220 3151 RV380 GL [FireMV 2400] @@ -3054,6 +3079,7 @@ 1458 22ed Radeon RX 560 148c 2381 Radeon RX 560 1682 9560 Radeon RX 560 + 1849 5037 PHANTOM G R RX550 2G/M/ASRK 1da2 e348 Radeon RX 560 1da2 e367 Radeon RX 550 640SP 6800 Wimbledon XT [Radeon HD 7970M] @@ -3284,6 +3310,7 @@ 1002 6b76 AMD Radeon RX Vega 56 8GB # ROG-STRIX-RXVEGA64-O8G-GAMING 1043 04c4 Radeon RX Vega 64 + 1043 0555 ROG STRIX RX Vega 56 8GB 1458 230c Radeon RX VEGA 56 GAMING OC 8G 1da2 e376 Radeon RX VEGA 56 Pulse 8GB OC HBM2 6880 Lexington [Radeon HD 6550M] @@ -3993,6 +4020,7 @@ 1da2 e410 Sapphire NITRO+ RX 5700 XT 1da2 e411 Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] 7340 Navi 14 [Radeon RX 5500/5500M / Pro 5500M] + 106b 0210 Radeon Pro 5300M 7341 Navi 14 [Radeon Pro W5500] 7347 Navi 14 [Radeon Pro W5500M] 734f Navi 14 [Radeon Pro W5300M] @@ -4085,6 +4113,7 @@ 7461 Navi 32 [AMD Radeon PRO V710] 7470 Navi 32 [Radeon PRO W7700] 747e Navi 32 [Radeon RX 7700 XT / 7800 XT] + 148c 2427 RX 7800 XT [Hellhound / Red Devil] 7480 Navi 33 [Radeon RX 7600/7600 XT/7600M XT/7600S/7700S / PRO W7600] 1849 5313 RX 7600 Challenger OC 7481 Navi 33 [Radeon Graphics] @@ -4093,14 +4122,20 @@ 7489 Navi 33 [Radeon Pro W7500] 748b Navi 33 [Radeon Graphics] 7499 Navi 33 [Radeon RX 7400/7300/Pro W7400] + 749f Navi 33 [Radeon RX 7500] 74a0 Aqua Vanjaram [Instinct MI300A] 74a1 Aqua Vanjaram [Instinct MI300X] 74a2 Aqua Vanjaram [Instinct MI308X] 74a5 Aqua Vanjaram [Instinct MI325X] 74a9 Aqua Vanjaram [Instinct MI300X HF] 74b5 Aqua Vanjaram [Instinct MI300X VF] + 74b9 Aqua Vanjaram [Instinct MI325X VF] 74bd Aqua Vanjaram [Instinct MI300X HF] - 7550 Navi 48 [RX 9070/9070 XT] + 7550 Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] + 148c 2435 Reaper Radeon RX 9070 XT 16GB GDDR6 (RX9070XT 16G-A) + 1da2 e490 Navi 48 XTX [Sapphire Pulse Radeon RX 9070 XT] + 7551 Navi 48 [Radeon AI PRO R9700] + 7590 Navi 44 [Radeon RX 9060 XT] 7833 RS350 Host Bridge 7834 RS350 [Radeon 9100 PRO/XT IGP] 7835 RS350M [Mobility Radeon 9000 IGP] @@ -4505,6 +4540,7 @@ ab28 Navi 21/23 HDMI/DP Audio Controller ab30 Navi 31 HDMI/DP Audio ab38 Navi 10 HDMI Audio + ab40 Navi 48 HDMI/DP Audio Controller ac00 Theater 506 World-Wide Analog Decoder ac01 Theater 506 World-Wide Analog Decoder ac02 TV Wonder HD 600 PCIe @@ -4948,6 +4984,7 @@ 1014 04fc PCIe3 x8 12Gb Quad SAS RAID+ Adapter(580A) 04ed Internal Shared Memory (ISM) virtual PCI device 0611 4769 Cryptographic Adapter + 06a2 4770 Cryptographic Adapter 06a7 Spyre Accelerator 06a8 Spyre Accelerator Virtual Function 3022 QLA3022 Network Adapter @@ -5295,6 +5332,8 @@ 1514 Family 14h Processor Root Port 1515 Family 14h Processor Root Port 1516 Family 14h Processor Root Port + 151c USB4 Router 0 + 151d USB4 Router 1 1530 Family 16h Processor Function 0 1531 Family 16h Processor Function 1 1532 Family 16h Processor Function 2 @@ -5364,6 +5403,12 @@ 1583 Family 16h (Models 30h-3fh) Processor Function 3 1584 Family 16h (Models 30h-3fh) Processor Function 4 1585 Family 16h (Models 30h-3fh) Processor Function 5 + 1587 Strix Halo USB 3.1 xHCI + 1588 Strix Halo USB 3.1 xHCI + 1589 Strix Halo USB 3.1 xHCI + 158b Strix Halo USB 3.1 xHCI + 158d Strix Halo USB4 Host Router + 158e Strix Halo USB4 Host Router 1590 Amur/Nolan HT Configuration 1591 Amur/Nolan Address Maps 1592 Amur/Nolan DRAM Configuration @@ -5410,7 +5455,7 @@ 15dc Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus B ea50 ce19 mCOM10-L1900 15de Raven/Raven2/FireFlight HD Audio Controller - 15df Family 17h (Models 10h-1fh) Platform Security Processor + 15df Raven/Raven2/FireFlight/Renoir/Cezanne Platform Security Processor 1043 876b PRIME Motherboard 17aa 5124 ThinkPad E595 ea50 ce19 mCOM10-L1900 @@ -5424,7 +5469,7 @@ 1043 876b PRIME Motherboard 17aa 5124 ThinkPad E595 ea50 ce19 mCOM10-L1900 - 15e2 ACP/ACP3X/ACP6x Audio Coprocessor + 15e2 Audio Coprocessor 17aa 5124 ThinkPad E595 ea50 ce19 mCOM10-L1900 15e3 Family 17h/19h/1ah HD Audio Controller @@ -5653,9 +5698,11 @@ 43c8 400 Series Chipset SATA Controller 43d5 400 Series Chipset USB 3.1 xHCI Compliant Host Controller 43e9 500 Series Chipset Switch Upstream Port + 43ea 500 Series Chipset Switch Downstream Port 43eb 500 Series Chipset SATA Controller # or ASM106X Serial ATA Controller 1b21 1062 ASM1062 Serial ATA Controller + 43ec A520 Series Chipset USB 3.1 XHCI Controller 43ee 500 Series Chipset USB 3.1 XHCI Controller # maybe 1b21 1142 ASM1042A USB 3.0 Host Controller @@ -5663,6 +5710,7 @@ 43f5 600 Series Chipset PCIe Switch Downstream Port 43f6 600 Series Chipset SATA Controller 43f7 600 Series Chipset USB 3.2 Controller + 43fc 800 Series Chipset USB 3.x XHCI Controller 43fd 800 Series Chipset USB 3.x XHCI Controller 57a3 Matisse PCIe GPP Bridge 57a4 Matisse PCIe GPP Bridge @@ -5998,6 +6046,7 @@ 1028 1f24 PERC S300 Controller # NV-RAM Adapter used in Dell DR appliances 0073 NV-RAM Adapter + 0c46 PERC S160 RAID controller 1028 PCIe Bridge riser 2600 ENT NVMe RT1 1028 215e ENT NVMe RT1 RI 3.84TB @@ -7225,6 +7274,7 @@ 8004 DTL-H2500 [Playstation development board] 8009 CXD1947Q i.LINK Controller 800c DTL-H800 [PS1 sound development board] + 800d DVBK-2000(E) DV Still Image Capture Board 8039 CXD3222 i.LINK Controller 8047 PS2 TOOL MRP 8056 Rockwell HCF 56K modem @@ -7796,6 +7846,7 @@ 103c 1939 QMH2672 16Gb Dual Port Fibre Channel Adapter 103c 8002 3830C 16G Fibre Channel Host Bus Adapter 1077 0241 QLE2670 16Gb Single Port Fibre Channel Adapter + 1077 0249 QLE2672 16Gb Dual Port Fibre Channel Adapter 2071 ISP2714-based 16/32Gb Fibre Channel to PCIe Adapter 1077 0283 QLE2764 Quad Port 32Gb Fibre Channel to PCIe Adapter 1077 029e QLE2694 Quad Port 16Gb Fibre Channel to PCIe Adapter @@ -7864,6 +7915,8 @@ 1077 0167 QME2572 Dual Port FC8 HBA Mezzanine 1590 00fc StoreFabric 84Q 8Gb Quad Port Fibre Channel Host Bus Adapter 2971 ISP2684 + 2981 32G SFP28 EP2744 Apatter + 1bd4 00b0 32G SFP28 EP2744 Apatter 3022 ISP4022-based Ethernet NIC 3032 ISP4032-based Ethernet IPv6 NIC 4010 ISP4010-based iSCSI TOE HBA @@ -9404,13 +9457,16 @@ 8664 PEX 8664 64-lane, 16-Port PCI Express Gen 2 (5.0 GT/s) Switch 8680 PEX 8680 80-lane, 20-Port PCI Express Gen 2 (5.0 GT/s) Multi-Root Switch 8696 PEX 8696 96-lane, 24-Port PCI Express Gen 2 (5.0 GT/s) Multi-Root Switch + 8714 PEX 8714 12-Lane, 5-Port PCI Express Gen 3 (8 GT/s) Switch 8717 PEX 8717 16-lane, 8-Port PCI Express Gen 3 (8.0 GT/s) Switch with DMA 8718 PEX 8718 16-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch + 8723 PEX 8723 24-Lane, 6-Port PCI Express Gen 3 (8 GT/s) Switch 8724 PEX 8724 24-Lane, 6-Port PCI Express Gen 3 (8 GT/s) Switch, 19 x 19mm FCBGA 4c52 9234 LRNV9324 2-port Built-in 8643 NVMe Exchange Adapter 4c52 9524 LRNV9524 2-port M.2 NVMe SSD Exchange Adapter 8725 PEX 8725 24-Lane, 10-Port PCI Express Gen 3 (8.0 GT/s) Multi-Root Switch with DMA 8732 PEX 8732 32-lane, 8-Port PCI Express Gen 3 (8.0 GT/s) Switch + 8733 PEX 8733 32-Lane, 19-Port PCI Express Gen 3 (8 GT/s) Switch 8734 PEX 8734 32-lane, 8-Port PCI Express Gen 3 (8.0GT/s) Switch 8747 PEX 8747 48-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch 4c52 9347 LRNV9347L 2-port Built-in 8643 NVMe Switching Adapter @@ -9418,6 +9474,9 @@ 8748 PEX 8748 48-Lane, 12-Port PCI Express Gen 3 (8 GT/s) Switch, 27 x 27mm FCBGA 8749 PEX 8749 48-Lane, 18-Port PCI Express Gen 3 (8.0 GT/s) Multi-Root Switch with DMA 4c52 9349 LRNV9349 8-port SFF-8643 NVMe SSD Exchange Adapter + 8764 PEX 8764 64-Lane, 16-Port PCI Express Gen 3 (8 GT/s) Switch + 8780 PEX 8780 80-Lane, 20-Port PCI Express Gen 3 (8 GT/s) Switch + 8796 PEX8796 96-Lane, 24-Port PCIe Gen 3 (8.0 GT/s) Switch 87a0 PEX PCI Express Switch NT0 Port Link Interface 87a1 PEX PCI Express Switch NT1 Port Link Interface 87b0 PEX PCI Express Switch NT0 Port Virtual Interface @@ -9576,11 +9635,15 @@ 1517 000f ECDR-GC314-PMC Receiver 1885 0700 Tsunami FPGA PMC with Altera Stratix S40 1885 0701 Tsunami FPGA PMC with Altera Stratix S30 + 9712 PEX9712 12-Lane, 5-Port PCIe Gen 3 (8.0 GT/s) ExpressFabric Switch 9733 PEX 9733 33-lane, 9-port PCI Express Gen 3 (8.0 GT/s) Switch 1d49 0001 ThinkSystem 1610-4P NVMe Switch Adapter 1d49 0002 ThinkSystem 810-4P NVMe Switch Adapter 9749 PEX 9749 49-lane, 13-port PCI Express Gen 3 (8.0 GT/s) Switch 1d49 0004 ThinkSystem 1610-8P NVMe Switch Adapter + 9765 PEX9765 65-Lane, 17-Port PCIe Gen 3 (8.0 GT/s) ExpressFabric Switch + 9781 PEX9781 81-Lane, 21-Port PCIe Gen 3 (8.0 GT/s) ExpressFabric Switch + 9797 PEX9781 97-Lane, 25-Port PCIe Gen 3 (8.0 GT/s) ExpressFabric Switch a100 Blackmagic Design DeckLink bb04 B&B 3PCIOSD1A Isolated PCI Serial c001 CronyxOmega-PCI (8-port RS232) @@ -11982,6 +12045,8 @@ 0fa0 GK11x [GK11x_FPGA] 0fa5 GK11x 0fa7 GK11x [Tegra on x86 (PEATRANS)] + 0fae Tegra X1 PCIe x4 Root Complex + 0faf Tegra X1 PCIe x1 Root Complex 0fb0 GM200 High Definition Audio 0fb8 GP108 High Definition Audio Controller 0fb9 GP107GL High Definition Audio Controller @@ -12178,6 +12243,8 @@ 10c3 GT218 [GeForce 8400 GS Rev. 3] 10c5 GT218 [GeForce 405] 10d8 GT218 [NVS 300] + 10e5 Parker PCIe x4 Root Complex + 10e6 Parker PCIe x1 Root Complex 10ef GP102 HDMI Audio Controller 10f0 GP104 High Definition Audio Controller 10f1 GP106 High Definition Audio Controller @@ -12860,7 +12927,7 @@ 1aed TU116 USB Type-C UCSI Controller 1aef GA102 High Definition Audio Controller 1af1 GA100 [A100 NVSwitch] - 1b00 GP102 [TITAN X] + 1b00 GP102 [TITAN X Pascal] 1b01 GP102 [GeForce GTX 1080 Ti 10GB] 1b02 GP102 [TITAN Xp] 1b04 GP102 @@ -13184,11 +13251,16 @@ 228e GA106 High Definition Audio Controller 2291 GA107 High Definition Audio Controller 2296 Tegra PCIe Endpoint Virtual Network + 229a Orin PCIe x8 Root Complex + 229c Orin PCIe x4/x8 Endpoint/Root Complex + 229e Orin PCIe x1 Root Complex 22a3 GH100 [H100 NVSwitch] 22ba AD102 High Definition Audio Controller 22bc AD104 High Definition Audio Controller 22bd AD106M High Definition Audio Controller 22be AD107 High Definition Audio Controller + 22d8 THOR Processor PCI Express Root Port + 22e6 THOR Processor PCI Express x16 Controller 2302 GH100 230e GH100 [H20 NVL16] 2313 GH100 [H100 CNX] @@ -13376,31 +13448,53 @@ 28f8 AD107GLM [RTX 2000 Ada Generation Embedded GPU] 2900 GB100 [Reserved Dev ID A] 2901 GB100 [B200] - 2920 GB100 [TS4] + 2920 GB100 [TS4 / B100] + 2924 GB100 + 2925 GB100 + 293d GB100 2940 GB100 [Reserved Dev ID B] 2941 GB100 [HGX GB200] + 297e GB100 2980 GB102 [Reserved Dev ID A] 29bc GB102 [B100] 29c0 GB102 [Reserved Dev ID B] + 29f1 GB102 + 2b00 TA1090SA [THOR] 2b85 GB202 [GeForce RTX 5090] 2b87 GB202 [GeForce RTX 5090 D] + 2bb1 GB202GL [RTX PRO 6000 Blackwell Workstation Edition] + 2bb3 GB202GL [RTX PRO 5000 Blackwell] + 2bb4 GB202GL [RTX PRO 6000 Blackwell Max-Q Workstation Edition] + 2bb5 GB202GL [RTX PRO 6000 Blackwell Server Edition] 2c02 GB203 [GeForce RTX 5080] 2c05 GB203 [GeForce RTX 5070 Ti] 2c18 GB203M / GN22 [GeForce RTX 5090 Max-Q / Mobile] 2c19 GB203M / GN22 [GeForce RTX 5080 Max-Q / Mobile] 2c2c GB6-256(N22W-ES-A1) + 2c31 GB203GL [RTX PRO 4500 Blackwell] + 2c34 GB203GL [RTX PRO 4000 Blackwell] + 2c38 GB203GLM [RTX PRO 5000 Blackwell Generation Laptop GPU] + 2c39 GB203GLM [RTX PRO 4000 Blackwell Generation Laptop GPU] 2c58 GB203M / GN22-X11 [GeForce RTX 5090 Max-Q / Mobile] 2c59 GB203M / GN22-X9 [GeForce RTX 5080 Max-Q / Mobile] - 2d18 AD108M [GeForce RTX 5070 Max-Q / Mobile] - 2d19 AD108M [GeForce RTX 5060 Max-Q / Mobile] + 2d04 GB206 [GeForce RTX 5060 Ti] + 2d05 GB206 [GeForce RTX 5060] + 2d18 GB206M [GeForce RTX 5070 Max-Q / Mobile] + 2d19 GB206M [GeForce RTX 5060 Max-Q / Mobile] 2d2c GB6-128 (N22Y-ES-A1) - 2d58 AD108M [GeForce RTX 5070 Max-Q / Mobile] - 2d59 AD108M [GeForce RTX 5060 Max-Q / Mobile] - 2d98 AD108M [GeForce RTX 5050 Max-Q / Mobile] - 2dd8 AD108M [GeForce RTX 5050 Max-Q / Mobile] - 2f04 GN22 [GeForce RTX 5070] - 2f18 AD108M [GeForce RTX 5070 Ti Max-Q / Mobile] - 2f58 AD108M [GeForce RTX 5070 Ti Max-Q / Mobile] + 2d39 GB206GLM [RTX PRO 2000 Blackwell Generation Laptop GPU] + 2d58 GB206M [GeForce RTX 5070 Max-Q / Mobile] + 2d59 GB206M [GeForce RTX 5060 Max-Q / Mobile] + 2d83 GB207 [GeForce RTX 5050] + 2d98 GB207M [GeForce RTX 5050 Max-Q / Mobile] + 2db8 GB207GLM [RTX PRO 1000 Blackwell Generation Laptop GPU] + 2db9 GB207GLM [RTX PRO 500 Blackwell Generation Laptop GPU] + 2dd8 GB207M [GeForce RTX 5050 Max-Q / Mobile] + 2e2a GB20B + 2f04 GB205 [GeForce RTX 5070] + 2f18 GB205M [GeForce RTX 5070 Ti Mobile] + 2f38 GB205GLM [RTX PRO 3000 Blackwell Generation Laptop GPU] + 2f58 GB205M [GeForce RTX 5070 Ti Mobile] 31c0 GB110 3340 GB120 10df Emulex Corporation @@ -13554,6 +13648,7 @@ 0860 CA91C860 [QSpan] 0862 CA91C862A [QSpan-II] 8111 Tsi381 PCIe to PCI Bridge + 8113 89HPEB383 PCIe-to-PCI Bridge 8260 CA91L8200B [Dual PCI PowerSpan II] 8261 CA91L8260B [Single PCI PowerSpan II] a108 Tsi109 Host Bridge for Dual PowerPC @@ -13623,6 +13718,7 @@ 5227 RTS5227 PCI Express Card Reader 17aa 220e ThinkPad T440p 17aa 2214 ThinkPad X240 + 5228 RTS5288 PCIe SD UHS-I Card Reader controller 5229 RTS5229 PCI Express Card Reader 1025 0813 Aspire R7-571 103c 194e ProBook 455 G1 Notebook @@ -13646,7 +13742,8 @@ 1028 0c06 Precision 3580 17aa 224f ThinkPad X1 Carbon 5th Gen 5260 RTS5260 PCI Express Card Reader - 5261 RTS5261 PCI Express Card Reader + 5261 RTS5261 PCIe SD Express Card Reader controller + 5264 RTS5264 PCIe SD UHS-II & SD Express Card Reader controller 5286 RTS5286 PCI Express Card Reader 5287 RTL8411B PCI Express Card Reader 1025 1094 Acer Aspire E5-575G @@ -13658,6 +13755,7 @@ 5763 RTS5763DL NVMe SSD Controller (DRAM-less) 5765 RTS5765DL NVMe SSD Controller (DRAM-less) 5770 RTS5770DL NVMe SSD Controller (DRAM-less) + 5771 RTS5771 NVMe SSD Controller (DRAM-less) 5772 RTS5772DL NVMe SSD Controller (DRAM-less) 8029 RTL-8029(AS) 10b8 2011 EZ-Card (SMC1208) @@ -13856,6 +13954,7 @@ 103c 831b Realtek RTL8822BE 802.11ac 2x2 Wi-Fi + Bluetooth 4.2 Combo Adapter (MU-MIMO supported) 17aa 5124 ThinkPad E595 17aa b023 ThinkPad E595 + b851 RTL8851BE PCIe 802.11ax Wireless Network Controller b852 RTL8852BE PCIe 802.11ax Wireless Network Controller b85b RTL8852BE PCIe 802.11ax Wireless Network Controller [1T1R] c821 RTL8821CE 802.11ac PCIe Wireless Network Adapter @@ -14078,6 +14177,8 @@ 000b EMU20k2 [Sound Blaster X-Fi Titanium Series] 1102 0041 SB0880 [SoundBlaster X-Fi Titanium PCI-e] 1102 0062 SB1270 [SoundBlaster X-Fi Titanium HD] + 0010 CA0132 Sound Core3D [Sound Blaster AE-7] + 1102 0081 Sound Blaster AE-7 0012 CA0132 Sound Core3D [Sound Blaster Recon3D / Z-Series / Sound BlasterX AE-5 Plus] 1102 0010 SB1570 SB Audigy Fx 1102 0191 CA0132 Sound Core3D - CA0113 [ Sound BlasterX AE-5 Plus] @@ -14252,7 +14353,7 @@ 0585 VT82C585VP [Apollo VP1/VPX] 0586 VT82C586/A/B PCI-to-ISA [Apollo VP] 1106 0000 MVP3 ISA Bridge - 0591 VT8237A SATA 2-Port Controller + 0591 VT8237A Integrated SATA RAID Controller 0595 VT82C595 [Apollo VP2] 0596 VT82C596 ISA [Mobile South] 1106 0000 VT82C596/A/B PCI to ISA Bridge @@ -14610,6 +14711,7 @@ 3372 VT8237S PCI to ISA Bridge 337a VT8237A PCI to PCI Bridge 337b VT8237A Host Bridge + 3401 VT6325 Firewire Controller 3402 VT8261 PCI to ISA Bridge 3403 VT6315 Series Firewire Controller 1043 8374 M5A88-V EVO @@ -14622,7 +14724,11 @@ 3456 VX11 Standard Host Bridge 345b VX11 Miscellaneous Bus 3483 VL805/806 xHCI USB 3.0 Controller + 365a VT3365 Card Reader Host Controller + 365b VT3365 SDIO Host Controller 3a01 VX11 Graphics [Chrome 645/640] + 401a VT6325 Card Reader Host Controller + 401b VT6325 SDIO PCI-E Host Controller 4149 VIA VT6420 (ATA133) Controller 4204 K8M800 Host Bridge 4208 PT890 Host Bridge @@ -14657,17 +14763,18 @@ 5324 CX700M2/VX700/VX800/820-Series Serial ATA & EIDE-Controller 5327 P4M890 I/O APIC Interrupt Controller 5336 K8M890CE I/O APIC Interrupt Controller + 5337 VT8237A Integrated SATA Controller 5340 PT900 I/O APIC Interrupt Controller 5351 VT3351 I/O APIC Interrupt Controller 5353 VX800/VX820 APIC and Central Traffic Control 5364 CN896/VN896/P4M900 I/O APIC Interrupt Controller - 5372 VT8237/8251 Serial ATA Controller + 5372 VT8237S SATA Controller 5409 VX855/VX875 APIC and Central Traffic Control 5410 VX900 Series APIC and Central Traffic Control 5419 VN1000 I/O APIC Interrupt Controller 6100 VT85C100A [Rhine II] 6122 VN1000 Graphics [Chrome 520 IGP] - 6287 SATA RAID Controller + 6287 VT8251 AHCI SATA Controller 6290 K8M890CE Host Bridge 6327 P4M890 Security Device 6353 VX800/VX820 Scratch Registers @@ -14699,6 +14806,7 @@ 7351 VT3351 Host Bridge 7353 VX800/VX820 North-South Module Interface Control 7364 CN896/VN896/P4M900 Host Bridge + 7372 VT8237S SATA RAID Controller 7409 VX855/VX875 North-South Module Interface Control 7410 VX900 Series North-South Module Interface Control 19da a179 ZBOX nano VD01 @@ -14730,8 +14838,10 @@ 9000 VT8261 IDE Controller [StorX IDE Controller - 9000] 9001 VX900 Series Serial-ATA Controller 9040 VT8261 SATA Controller [StorX RAID Controller - 9040] + 9041 VX900/VX11 SATA Controller [StorX RAID Controller - 9041] 9082 Standard AHCI 1.0 SATA Controller - 9140 HDMI Audio Device + 9140 VX11 Graphics [Chrome 645/640] HDMI Audio Device + 9170 VX900 Graphics [Chrome9 HD] HDMI Audio Device 9201 USB3.0 Controller 9380 Ncore Coprocessor for Centaur CNS 9530 VX800/820/900/VT8261 Series Secure Digital Memory Card Controller @@ -15943,6 +16053,7 @@ 0115 XG4 NVMe SSD Controller 0116 XG5 NVMe SSD Controller 1179 0001 XG5 NVMe SSD Controller + 0119 XD5 NVMe SSD Controller 011a XG6 NVMe SSD Controller 0404 DVD Decoder card 0406 Tecra Video Capture device @@ -16144,7 +16255,7 @@ 103c 30cc Pavilion dv6700 103c 30cf Pavilion dv9668eg Laptop 17aa 20c5 ThinkPad R61 - 17aa 20c7 ThinkPad R61 + 17aa 20c7 ThinkPad R61/T400 0841 R5C841 CardBus/SD/SDIO/MMC/MS/MSPro/xD/IEEE1394 0843 R5C843 MMC Host Controller 1025 0121 Aspire 5920G @@ -16592,6 +16703,8 @@ 11bc Network Peripherals Inc 0001 NP-PCI 11bd Pinnacle Systems Inc. + 0015 FireWire Controller + 0023 Studio 700 002e PCTV 40i 0040 Royal TS Function 1 11bd 0044 PCTV 2000i Dual DVB-T Pro PCI Tuner 1 @@ -16893,6 +17006,10 @@ 11f7 Scientific Atlanta # née PMC-Sierra Inc. 11f8 Microchip Technology + 4036 PM40036 Switchtec PFX 36xG4 Fanout PCIe Switch + 4052 PM40052 Switchtec PFX 52xG4 Fanout PCIe Switch + 4084 PM40084 Switchtec PFX 84xG4 Fanout PCIe Switch + 4128 PM41028 Switchtec PSX 28xG4 Programmable PCIe Switch 5000 PM50100 Switchtec PFX 100xG5 Fanout PCIe Switch 5028 PM50028 Switchtec PFX 28xG5 Fanout PCIe Switch 5036 PM50036 Switchtec PFX 36xG5 Fanout PCIe Switch @@ -17220,6 +17337,8 @@ 1233 Bus-Tech, Inc. # nee Risq Modular Systems, Inc. 1235 SMART Modular Technologies + c241 CXA-4F1W + 1028 2382 4-DIMM Add In Card 1236 Sigma Designs Corporation 0000 RealMagic64/GX 6401 REALmagic 64/GX (SD 6425) @@ -17476,6 +17595,7 @@ 2261 SM2261XT x2 NVMe SSD Controller (DRAM-less) 2262 SM2262/SM2262EN SSD Controller 2263 SM2263EN/SM2263XT (DRAM-less) NVMe SSD Controllers + 2268 SM2268XT (DRAM-less) NVMe SSD Controller 2269 SM2269XT (DRAM-less) NVMe SSD Controller 8366 SM8366 NVMe SSD Controller [MonTitan] 1270 Olympus Optical Co., Ltd. @@ -18454,6 +18574,7 @@ 5416 2550 NVMe SSD (DRAM-less) 5425 2500 NVMe SSD (DRAM-less) 5427 2650 NVMe SSD (DRAM-less) + 5428 4600 NVMe SSD 5429 2600 NVMe SSD (DRAM-less) 6001 2100AI NVMe SSD [Nitro] 1345 Arescom Inc @@ -18528,6 +18649,8 @@ 0b22 UP-200 Powered 2 port RS-232 card 0b23 UP-200 Powered 2 port RS-232 card 0ba1 UC-101 1 + 1 port RS-232 card + 0ba2 UC-101 1 + 1 port RS-232 card + 0ba3 UC-101 1 + 1 port RS-232 card 0bc1 UC-203 1 + 1 port RS-232 + LPT card 0bc2 UC-203 1 + 1 port RS-232 + LPT card 0be1 UC-146 LPT card @@ -18539,6 +18662,8 @@ 0c22 UP-880 Powered 2 port RS-232 card 0c23 UP-880 Powered 2 port RS-232 card 0c41 UC-368 4 port RS-422/485 Opto Isolated card + 0c42 UC-368 4 port RS-422/485 Opto Isolated card + 0c43 UC-368 4 port RS-422/485 Opto Isolated card 0ca1 UC-253 2 port RS-232 card 0d21 UC-260 4 port RS-232 card 0d41 UC-836 4 port RS-232 card @@ -18578,6 +18703,10 @@ 401d PX-475 1 port RS-232 + LPT card (Serial port) 401e PX-803 Powered 1 + 1 port RS-232 card 401f PX-475 1 port RS-232 + LPT card (LPT port) + 4020 XC-157 LPT ExpressCard + 4021 XC-475 1 port RS-232 + LPT ExpressCard (Serial port) + 4022 XC-475 1 port RS-232 + LPT ExpressCard (LPT port) + 4026 XC-235 1 port RS-232 ExpressCard 4027 IX-100 1 port RS-232 card 4028 IX-200 2 port RS-232 card 4029 IX-400 4 port RS-232 card @@ -20294,6 +20423,8 @@ a80d NVMe SSD Controller PM9C1a (DRAM-less) a80e NVMe SSD Controller PM9D3a a80f BM9C1 QLC NVME SSD (DRAM-less) + a810 NVMe SSD 9100 PRO [PM9E1] + a811 BM9H1 NVME SSD (DRAM-less) a820 NVMe SSD Controller 171X 1028 1f95 Express Flash NVMe XS1715 SSD 400GB 1028 1f96 Express Flash NVMe XS1715 SSD 800GB @@ -20469,6 +20600,7 @@ 1458 Gigabyte Technology Co., Ltd 1002 Aourus Radeon RX6900XT Xtreme Waterforce WB 16G 22e8 Ellesmere [Radeon RX 480] + 2425 Radeon RX 9070 GAMING OC 16G 3483 USB 3.0 Controller (VIA VL80x-based xHCI Controller) 1459 DOOIN Electronics 145a Escalate Networks Inc @@ -20657,6 +20789,7 @@ 14c3 MEDIATEK Corp. 0608 MT7921K (RZ608) Wi-Fi 6E 80MHz 0616 MT7922 802.11ax PCI Express Wireless Network Adapter + 0717 MT7925 (RZ717) Wi-Fi 7 160MHz 4d75 T700 5G Modem [5G Solution 5000] 7603 MT7603E 802.11bgn PCI Express Wireless Network Adapter 7612 MT7612E 802.11acbgn PCI Express Wireless Network Adapter @@ -22155,6 +22288,7 @@ 9300 Universal Exhaust Gas Oxygen Sensor Simulator 9310 Digital Programmable Resistor 9320 Arria 10 FPGA Card + 9330 Cyclone V FPGA Card 9350 Analog Input Card 1543 SILICON Laboratories 3052 Intel 537 [Winmodem] @@ -22417,6 +22551,15 @@ 0290 SagittaZ 0292 Arcus3 Flash Recovery 0293 Arcus3 RMA + 0294 Ophy 2.1 (SagittaZ) +# Sagitta + 0296 OPHY2.6 +# Sagitta + 0298 OPHY3.0 +# Sagitta + 029a OPHY3.1 +# Sagitta + 029c OPHY3.5 02a0 Quantum-6 in Flash Recovery Mode 02a1 Quantum-6 RMA 02a2 Spectrum-7 in Flash Recovery Mode @@ -22503,6 +22646,7 @@ # NIC-ETH540F-3S-2P OCP3.0 2x10G Card 193d 1084 NIC-ETH540F-3S-2P 1e81 0c10 25GbE dual-port SFP28, PCIe3.0 x8 [3SC10] + 1f3f 0c10 25GbE dual-port SFP28, PCIe3.0 x8, 3SC10 1016 MT27710 Family [ConnectX-4 Lx Virtual Function] 1017 MT27800 Family [ConnectX-5] 117c 00b1 FastFrame N311 Single-port 10Gb Ethernet Adapter @@ -22529,6 +22673,7 @@ 193d 1035 NIC-ETH641F-LP-2P SFP28 2x25GbE PCIe Network Adapter 1bd4 00ac O252MCX6Lx 1bd4 00ae S252MCX6Lx + 1f3f 0c11 25GbE dual-port SFP28, PCIe4.0 x8, 3SC1125GbE dual-port SFP28, PCIe4.0 x8, 3SC11 1ff9 00ad ENFM6251-SP2 1ff9 00af ENPM6251-SP2 1020 MT28860 @@ -22688,7 +22833,7 @@ 5014 WD PC SN540 / Green SN350 NVMe SSD 1 TB (DRAM-less) 5015 PC SN740 NVMe SSD (DRAM-less) 5016 WD PC SN740 NVMe SSD 512GB (DRAM-less) - 5017 WD Black SN770 / PC SN740 256GB / PC SN560 (DRAM-less) NVMe SSD + 5017 WD SN560/SN740/SN770/SN5000 NVMe SSD 5019 WD Green SN350 240GB (DRAM-less) / SN560E NVMe SSD 501a SanDisk Ultra 3D / WD Blue SN570 NVMe SSD (DRAM-less) 501d WD Blue SN550 NVMe SSD 2TB (DRAM-less) @@ -22699,12 +22844,16 @@ 5028 WD CH SN560 NVMe SSD 5030 WD Black SN850X NVMe SSD 5034 WD PC SN5000S M.2 2230 NVMe SSD (DRAM-less) + 5035 WD PC SN5000S M.2 2242 NVMe SSD (DRAM-less) 5036 WD PC SN5000S M.2 2280 NVMe SSD (DRAM-less) 5041 WD Blue SN580 NVMe SSD (DRAM-less) 5042 WD Black SN770M NVMe SSD (DRAM-less) + 5044 WD PC SN7100S NVMe SSD (DRAM-less) 5045 WD_BLACK SN7100 NVMe SSD (DRAM-less) 5046 SanDisk Extreme NVMe SSD (DRAM-less) 5049 SN8000S NVMe SSD + 504a WD Blue SN5000 NVMe SSD (DRAM-less) + 5050 WD PC SN8050S / WD_BLACK SN8100 NVMe SSD 15b8 ADDI-DATA GmbH 1001 APCI1516 SP controller (16 digi outputs) 1003 APCI1032 SP controller (32 digi inputs w/ opto coupler) @@ -23843,6 +23992,8 @@ 010c SM8350 PCIe Root Complex [Snapdragon 888] 010e SC8280XP PCI Express Root Port 0110 SM8475 PCIe Root Complex [Snapdragon 8+ Gen 1] + 0111 SC8380XP PCIe Root Complex [Snapdragon X / X Plus / X Elite] + 0113 SM8550/SM8650 PCIe Root Complex [Snapdragon 8 Gen 2/Gen 3] 0300 MDM9x35 LTE Modem [Snapdragon X7] 0301 MDM9x45 LTE Modem [Snapdragon X12] 0302 MDM9x55 LTE Modem [Snapdragon X16] @@ -23851,6 +24002,7 @@ 0400 Datacenter Technologies QDF2432 PCI Express Root Port 0401 Datacenter Technologies QDF2400 PCI Express Root Port 1000 QCS405 PCIe Root Complex + 1003 IPQ6018 PCIe Root Complex 1101 QCA6390 Wireless Network Adapter 1103 QCNFA765 Wireless Network Adapter 1104 QCN6024/9024/9074 Wireless Network Adapter @@ -24714,6 +24866,14 @@ 0441 T4240 without security 0446 T4160 with security 0447 T4160 without security + 0820 T1040 with security + 0821 T1040 without security + 0824 T1042 with security + 0825 T1042 without security + 0828 T1020 with security + 0829 T1020 without security + 082c T1022 with security + 082d T1022 without security 0830 T2080 with security 0831 T2080 without security 0838 T2081 with security @@ -24851,15 +25011,18 @@ 5016 E16 PCIe4 NVMe Controller 5018 E18 PCIe4 NVMe Controller 5019 PS5019-E19 PCIe4 NVMe Controller (DRAM-less) + 5020 PS5020-E20 (X1) PCIe4 NVMe Controller 5021 PS5021-E21 PCIe4 NVMe Controller (DRAM-less) 5026 PS5026-E26 PCIe5 NVMe Controller 5027 PS5027-E27T PCIe4 NVMe Controller (DRAM-less) 5031 PS5031-E31T PCIe5 NVMe Controller + 5302 PS5302-X2 PCIe5 NVMe Controller 1989 Montilio Inc. 0001 RapidFile Bridge 8001 RapidFile 198a Nallatech Ltd. 1993 Innominate Security Technologies AG +1998 Toyou Feiji Electronics Co., Ltd. 1999 A-Logics a900 AM-7209 Video Processor 199a Pulse-LINK, Inc. @@ -25015,6 +25178,8 @@ a126 HiSilicon SDI NVMe Storage Controller a127 HiSilicon SDI Accelerator a12a HiSilicon Add-on PCI-PCI Bridge + a12d HiSilicon Embedded PMU + a12e HiSilicon Embedded PCIe PTT a220 HNS GE Network Controller a221 HNS GE/10GE/25GE Network Controller 19e5 0454 TM280 @@ -25102,6 +25267,12 @@ 1a3b AzureWave 1112 AR9285 Wireless Network Adapter (PCI-Express) 1a3e Micro-Research Finland Oy + 132c MTCA Event Receiver 300 + 152c CompactPCI Event Receiver 300 + 172c PCI Express Event Receiver 300 + 192c CompactPCI Event Receiver TG 300 + 232c MTCA Event Master 300 + 252c CompactPCI Event Generator 300 1a41 Tilera Corp. 0001 TILE64 processor 0002 TILEPro processor @@ -25323,19 +25494,83 @@ 1005 Virtio RNG 1009 Virtio filesystem 1041 Virtio 1.0 network device + 1af4 1100 QEMU 1042 Virtio 1.0 block device + 1af4 1100 QEMU 1043 Virtio 1.0 console + 1af4 1100 QEMU 1044 Virtio 1.0 RNG - 1045 Virtio 1.0 memory balloon + 1af4 1100 QEMU + 1045 Virtio 1.0 balloon + 1af4 1100 QEMU + 1046 Virtio 1.0 ioMemory + 1af4 1100 QEMU + 1047 Virtio 1.0 remote processor messaging + 1af4 1100 QEMU 1048 Virtio 1.0 SCSI - 1049 Virtio 1.0 filesystem + 1af4 1100 QEMU + 1049 Virtio 9P transport + 1af4 1100 QEMU + 104a Virtio 1.0 WLAN MAC + 1af4 1100 QEMU + 104b Virtio 1.0 remoteproc serial link + 1af4 1100 QEMU + 104d Virtio 1.0 memory balloon + 1af4 1100 QEMU 1050 Virtio 1.0 GPU + 1af4 1100 QEMU + 1051 Virtio 1.0 clock/timer + 1af4 1100 QEMU 1052 Virtio 1.0 input + 1af4 1100 QEMU 1053 Virtio 1.0 socket - 1058 virtio-mem - 105a Virtio file system - 1110 Inter-VM shared memory - 1af4 1100 QEMU Virtual Machine + 1af4 1100 QEMU + 1054 Virtio 1.0 crypto + 1af4 1100 QEMU + 1055 Virtio 1.0 signal distribution device + 1af4 1100 QEMU + 1056 Virtio 1.0 pstore device + 1af4 1100 QEMU + 1057 Virtio 1.0 IOMMU + 1af4 1100 QEMU + 1058 Virtio 1.0 mem + 1af4 1100 QEMU + 1059 Virtio 1.0 sound + 1af4 1100 QEMU + 105a Virtio 1.0 file system + 1af4 1100 QEMU + 105b Virtio 1.0 pmem + 1af4 1100 QEMU + 105c Virtio 1.0 rpmb + 1af4 1100 QEMU + 105d Virtio 1.0 mac80211-hwsim + 1af4 1100 QEMU + 105e Virtio 1.0 video encoder + 1af4 1100 QEMU + 105f Virtio 1.0 video decoder + 1af4 1100 QEMU + 1060 Virtio 1.0 SCMI + 1af4 1100 QEMU + 1061 Virtio 1.0 nitro secure module + 1af4 1100 QEMU + 1062 Virtio 1.0 I2C adapter + 1af4 1100 QEMU + 1063 Virtio 1.0 watchdog + 1af4 1100 QEMU + 1064 Virtio 1.0 can + 1af4 1100 QEMU + 1065 Virtio 1.0 dmabuf + 1af4 1100 QEMU + 1066 Virtio 1.0 parameter server + 1af4 1100 QEMU + 1067 Virtio 1.0 audio policy + 1af4 1100 QEMU + 1068 Virtio 1.0 Bluetooth + 1af4 1100 QEMU + 1069 Virtio 1.0 GPIO + 1af4 1100 QEMU + 1110 QEMU Inter-VM shared memory device + 1af4 1100 QEMU 1af5 Netezza Corp. 1afa J & W Electronics Co., Ltd. 1b00 Montage Technology Co., Ltd. @@ -25427,6 +25662,7 @@ 000b QEMU PCIe Expander bridge 000c QEMU PCIe Root port 000d QEMU XHCI Host Controller + 000e QEMU PCIe-to-PCI bridge 0010 QEMU NVM Express Controller 0011 QEMU PVPanic device 0013 QEMU UFS Host Controller @@ -25475,16 +25711,20 @@ 1028 2196 ROR-N1 1028 2286 BOSS-N1 DC-MHS 1028 2287 BOSS-N1 Modular DC-MHS + 1028 23b0 eBOSS-N1 DC-MHS 1b4b 2241 Santa Cruz NVMe Host Adapter 1b96 4000 WD_BLACK AN1500 NVMe SSD 1d49 0306 ThinkSystem M.2 NVMe 2-Bay RAID Enablement Kit 1d49 0307 ThinkSystem 7mm NVMe 2-Bay Rear RAID Enablement Kit + 207d 0800 TrustRAID B310n + 207d 0801 TrustRAID B260s 4c52 9541 LRNV9541 2-port M.2 NVMe Raid Adapter 2b42 88W8997 2.4/5 GHz Dual-Band 2x2 Wi-Fi® 5 (802.11ac) + Bluetooth® 5.3 Solution 2b43 NXP 88W9098 Wi-Fi 6 (ax) MAC #1 2b44 NXP 88W9098 Wi-Fi 6 (ax) MAC #2 2b45 NXP 88W9098 Bluetooth 5.3 9120 88SE9120 SATA 6Gb/s Controller + 9122 88SE912x SATA 6Gb/s Controller [AHCI mode] 9123 88SE9123 PCIe SATA 6.0 Gb/s controller dc93 600e DC-6xxe series SATA 6G controller 9125 88SE9125 PCIe SATA 6.0 Gb/s controller @@ -25493,14 +25733,19 @@ 9130 88SE9128 PCIe SATA 6 Gb/s RAID controller with HyperDuo 1043 8438 P8P67 Deluxe Motherboard 9170 88SE9170 PCIe 2.0 x1 2-port SATA 6 Gb/s Controller + 9171 88SE9171 PCIe 2.0 x1 1-port SATA 6 Gb/s Controller 9172 88SE9172 SATA 6Gb/s Controller 9178 88SE9170 PCIe SATA 6Gb/s Controller - 917a 88SE9172 SATA III 6Gb/s RAID Controller + 917a 88SE9172 SATA III 6Gb/s Controller [IDE mode] 9182 88SE9182 PCIe 2.0 x2 2-port SATA 6 Gb/s Controller 9183 88SS9183 PCIe SSD Controller + 9186 88SE9186 6Gb/s SATA 6Gb/s Controller [AHCI mode] + 918a 88SE9182 PCIe SATA 6 Gb/s controller [IDE mode] 9192 88SE9172 SATA III 6Gb/s RAID Controller 91a0 88SE912x SATA 6Gb/s Controller [IDE mode] + 91a3 88SE9128 PCIe SATA 6 Gb/s controller [IDE mode] 91a4 88SE912x IDE Controller + 91b0 88SE9172 SATA 6 Gb/s controller [IDE mode] 9215 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller 9220 88SE9220 PCIe 2.0 x2 2-port SATA 6 Gb/s RAID Controller 9230 88SE9230 PCIe 2.0 x2 4-port SATA 6 Gb/s RAID Controller @@ -25560,6 +25805,7 @@ 1009 FL1009 USB 3.0 Host Controller 1100 FL1100 USB 3.0 Host Controller 16b8 6e31 Allegro Pro USB 3.0 PCIe + 1400 USB 3.0 Host Controller 1b74 OpenVox Communication Co. Ltd. 0115 D115P/D115E Single-port E1/T1 card d130 D130P/D130E Single-port E1/T1 card (3rd GEN) @@ -25721,6 +25967,9 @@ 5021 FireCuda 520 SSD # 1TB 5026 FireCuda 540 SSD + 5027 LaCie Rugged SSD Pro5 + 5100 PCIe Gen3 SSD + 5101 PCIe Gen5 SSD 1bb3 Bluecherry 4304 BC-04120A MPEG4 4 port video encoder / decoder 4309 BC-08240A MPEG4 4 port video encoder / decoder @@ -25782,6 +26031,8 @@ 100c NS8510G1Uxxx, NS8610G1Uxxx NVME SSD 100e NS8500G2Uxxxx, NS8600G2Uxxxx NVME SSD 100f NS6500G2UXXXX,NS6600G2UXXXX NVME SSD + 2981 32G SFP28 EP2744 Apatter + 1bd4 00b0 32G SFP28 EP2744 Apatter 1bee IXXAT Automation GmbH *** 1450 LINES SKIPPED *** From nobody Thu Sep 11 07:54:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMqb50rRQz62bVM; Thu, 11 Sep 2025 07:54:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMqb46QrYz4HTv; Thu, 11 Sep 2025 07:54:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757577280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e0RJ5QTadN4rrDSMy4wppxvYuoZA3HWIr3eHYawcVRw=; b=U/0lrhOGY6m9XzE42XGbwAFtun7L4nr4lWaqjIlMQoed6p9ZzZgHdQUKQhz3/58aHm5JSz MDprSRcjK5qnCJaFGjgWWewsGNMgVQlfOgq4xLmLWsjkfnIw2Oz2Qsm3BBL0yvH6JCSiwL 9ZKMjF7XZv74IYS1J09C6WYncM3BXDeT2UAc8utcLGAjboR89bFZ1W9LlfpPok1JhG85mu S5GHCKp/OdFvLcEO6Ta/IyxQdPgYMZwWQHJnJByKP7cWoOl45OfyZ6m3hfe+TLaPIopGjH 4H4ITbjWbfjjmoDS9qNch5mFTdq+96oX4BFj/7Ab/YlppmlKQcsRmT8NUoITbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757577280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e0RJ5QTadN4rrDSMy4wppxvYuoZA3HWIr3eHYawcVRw=; b=XrlZpFRdzjlTNP1KLgsksEdgi5IBJkjVS9hehkHkUHK9oAZDd3rhXcsQcZLVuppN9S6pcq YkBOuBa94NjMLhfxUea9Fs/6OGMbYCheaO3YjOchI8peg8G4sl34nccAWmVr8meOiqua1e QjDiA29LJFC0NHM2Q95d2ijsCx8KY+n41WjqZDUmGT/CQKVsZthJjz9+j78f0tPk2hlsrL AJo6UW3figcsDmUXxYR8Vo2ogOYFlRP3ClxasY1Dbv6IXXEOaLrv6LB5iokGC2xDGBashv feNZTXT6JKcM0OFzABnarj/B4B2Z5iJ8IHgukAs3P1llSy2idOXefr0KsbVGHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757577280; a=rsa-sha256; cv=none; b=R9PVKCQXhC/dC7dQV4qG72mpPflwKVo5vu9a/aFtYIoup5Ugk0v3cYEUMODnUW/CDRQVra /ffB6M5ko1FEuBVXN4fpDqblJx2L2Drl8XTMborWKH33wldazuOiiKwkaH0L4jkbq46VPf Dvwq2aq41hrxalb1V07aZZuSwR60jPZanLk+uxfjs6ANsSrFG2QM+CqADLAwskuNg+7SMg HA+loppQkkIOdNQMUbahI0olZY8HiHKNFTvQWuLCukmezWAjvG7afxYUPj+kFflNW1yIgB 0DqRZbHE98r0X913eId1vtkAkgRSOW8g7ktr8AaCtgyK2wpr3S4h45vjVF2W/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMqb45xn6zym5; Thu, 11 Sep 2025 07:54: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 58B7seqa057932; Thu, 11 Sep 2025 07:54:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58B7seUH057929; Thu, 11 Sep 2025 07:54:40 GMT (envelope-from git) Date: Thu, 11 Sep 2025 07:54:40 GMT Message-Id: <202509110754.58B7seUH057929@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 70afc95fc6ec - main - usb_vendors: update to 2025-07-26 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 70afc95fc6ecec6edabf5b1e8b060bb0b29ebd55 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=70afc95fc6ecec6edabf5b1e8b060bb0b29ebd55 commit 70afc95fc6ecec6edabf5b1e8b060bb0b29ebd55 Author: Baptiste Daroussin AuthorDate: 2025-09-11 07:54:17 +0000 Commit: Baptiste Daroussin CommitDate: 2025-09-11 07:54:17 +0000 usb_vendors: update to 2025-07-26 --- share/misc/usb_vendors | 57 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 54 insertions(+), 3 deletions(-) diff --git a/share/misc/usb_vendors b/share/misc/usb_vendors index 3e72fe4045e6..1878f503b676 100644 --- a/share/misc/usb_vendors +++ b/share/misc/usb_vendors @@ -9,8 +9,8 @@ # The latest version can be obtained from # http://www.linux-usb.org/usb.ids # -# Version: 2025.04.01 -# Date: 2025-04-01 20:34:02 +# Version: 2025.07.26 +# Date: 2025-07-26 20:34:01 # # Vendors, devices and interfaces. Please keep sorted. @@ -59,6 +59,8 @@ 0112 Card Reader 017c MLK 145f Trust Deskset +019c mek + 0042 mek_42 0200 TP-Link 0201 MA180 UMTS Modem 0204 Chipsbank Microelectronics Co., Ltd @@ -69,6 +71,9 @@ 0231 Sonuus Limited 02ad HUMAX Co., Ltd. 138c PVR Mass Storage +0300 Ajazz + 1010 Akp153E Desktop Controller + 1020 AKP153R Desktop Controller 0303 Mini Automation Controller 0324 OCZ Technology Inc bc06 OCZ ATV USB 2.0 Flash Drive @@ -95,7 +100,7 @@ 0015 ATAPI Enclosure 2123 SiPix StyleCam Deluxe 8004 Aox 99001 -03e9 Thesys Microelectronics +03e9 Melexis (formerly Thesys Microelectronics) 03ea Data Broadcasting Corp. 03eb Atmel Corp. 0902 4-Port Hub @@ -257,6 +262,8 @@ 0423 HS-COMBO Cardreader 042a LaserJet M1132 MFP 0441 Prime [NW280AA, G8X92AA] + 046b Dock G5 + 0483 Engage Go 10 Tablet 0504 DeskJet 885c 0505 ScanJet 2100c 0507 DVD+RW @@ -266,6 +273,7 @@ 0517 LaserJet 1000 051d Bluetooth Interface 052a LaserJet M1212nf MFP + 0583 Engage Go 10 Tablet 0601 ScanJet 6300c 0604 DeskJet 840c 0605 ScanJet 2200c @@ -275,6 +283,7 @@ 0624 Bluetooth Dongle 0641 X1200 Optical Mouse 0653 DeskJet 3700 series + 0683 Engage Go 10 Tablet 0701 ScanJet 5300c/5370c 0704 DeskJet 825c 0705 ScanJet 4400c @@ -325,6 +334,7 @@ 1102 PhotoSmart 240 series 1104 DeskJet 959c 1105 ScanJet 5470c/5490c + 110c Pocket Media Drive 1111 OfficeJet v60 1116 Jornada 568 Pocket PC 1117 LaserJet 1300n @@ -1013,6 +1023,7 @@ 3000 Optical dual-touch panel 3001 Optical Touch Screen 3008 Optical Touch Screen + 4033 HD Webcam a060 HD Webcam 0409 NEC Corp. 0011 PC98 Series Layout Keyboard Mouse @@ -1029,6 +1040,7 @@ 004e SuperScript 1400 Series 004f Wireless Keyboard with One-touch start buttons 0050 7-port hub + 0056 uPD720133 IDE bridge 0058 HighSpeed Hub 0059 HighSpeed Hub 005a HighSpeed Hub @@ -1486,6 +1498,7 @@ 4095 Live! Cam Sync HD [VF0770] 4097 Live! Cam Chat HD [VF0700/VF0790] 4099 Creative VF0800 [RealSense Camera SR300] + 40a3 Live! Cam V3 2K [VF-0900] 4100 Nomad Jukebox 2 4101 Nomad Jukebox 3 4102 NOMAD MuVo^2 @@ -1959,6 +1972,7 @@ 010d 3500-4500 series 010f 6500 series 0142 X3650 (Printer, Scanner, Copier) + 01bd S800 Series Scanner 01fa S310 series 020e RICOH Aficio SP 4410SF 4303 Xerox WorkCentre Pro 412 @@ -1982,6 +1996,7 @@ 9a10 34UC88-B 9a11 34UC88-B 9a39 27UP850 - WK.AEUDCSN - External Monitor 4K + 9a57 UltraGear Monitor 9c01 LGE Sync 043f RadiSys Corp. 0440 Eizo Nanao Corp. @@ -2007,6 +2022,7 @@ 044d Siemens Nixdorf AG 044e Alps Electric Co., Ltd 1104 Japanese Keyboard + 1218 Electric Touchpad 2002 MD-5500 Printer 2014 Bluetooth Device 3001 UGTZ4 Bluetooth @@ -2737,6 +2753,8 @@ 0180 Strait 3.0 01a4 MC 2.1 Mouse 01a6 MX BOARD 2.0S FL RGB DE Keyboard + 0201 Smart Board 1150 + 0202 Smart Terminal 1150 b090 Keyboard b091 Mouse c099 Stream Keyboard TKL @@ -2851,6 +2869,7 @@ 08dd QuickCam for Notebooks 08e0 QuickCam Express 08e1 Labtec Webcam + 08e4 C505e HD Webcam 08e5 C920 PRO HD Webcam 08f0 QuickCam Messenger 08f1 QuickCam Express @@ -3002,6 +3021,7 @@ c08e G MX518 Gaming Mouse (MU0053) c092 G102/G203 LIGHTSYNC Gaming Mouse c093 M500s Optical Mouse + c09d G102 LIGHTSYNC Gaming Mouse c101 UltraX Media Remote c110 Harmony 785/880/885 Remote c111 Harmony 525 Remote @@ -3060,6 +3080,7 @@ c24d G710 Gaming Keyboard c24e G500s Laser Gaming Mouse c24f G29 Driving Force Racing Wheel [PS3] + c251 GamePanel for Dell XPS M1730 c260 G29 Driving Force Racing Wheel [PS4] c262 G920 Driving Force Racing Wheel c281 WingMan Force @@ -3073,6 +3094,7 @@ c295 Momo Force Steering Wheel c298 Driving Force Pro c299 G25 Racing Wheel + c29a Driving Force GT c29b G27 Racing Wheel c29c Speed Force Wireless Wheel for Wii c2a0 Wingman Force Feedback Mouse @@ -3110,6 +3132,7 @@ c335 G910 Orion Spectrum Mechanical Keyboard c336 G213 Prodigy Gaming Keyboard c33a G413 Gaming Keyboard + c33e G915 Mechanical Keyboard c33f G815 Mechanical Keyboard c401 TrackMan Marble Wheel c402 Marble Mouse (2-button) @@ -3359,6 +3382,7 @@ 047c Dell Computer Corp. ffff UPS Tower 500W LV 047d Kensington + 00f2 VeriMark Desktop 1001 Mouse*in*a*Box 1002 Expert Mouse Pro 1003 Orbit TrackBall @@ -3558,6 +3582,7 @@ 0485 Nokia Monitors 0486 ASUS Computers, Inc. 0185 EeePC T91MT HID Touch Panel + 573c Xreal Light Microcontroller 0487 Stewart Connector 0488 Cirque Corp. 0489 Foxconn / Hon Hai @@ -3663,6 +3688,7 @@ 1033 DGX-505 1037 PSR-E403 103c MOTIF-RACK ES + 1045 MM6 1054 S90XS Keyboard/Music Synthesizer 160f P-105 1613 Clavinova CLP535 @@ -3892,9 +3918,11 @@ 106d S750 Printer 106e S820D 1070 S530D + 1071 Sony MPR-501 1072 I850 Printer 1073 I550 Printer 1074 S330 Printer + 1075 Sony MPR-505 1076 i70 1077 i950 107a S830D @@ -4053,6 +4081,7 @@ 178a PIXMA MG3600 Series 178d PIXMA MG6853 180b PIXMA MG3000 series + 183b PIXMA MG3110 Series 1856 PIXMA TS6250 1900 CanoScan LiDE 90 1901 CanoScan 8800F @@ -4060,6 +4089,7 @@ 1905 CanoScan LiDE 200 1906 CanoScan 5600F 1907 CanoScan LiDE 700F + 1908 CanoScan 9000F 1909 CanoScan LiDE 110 190a CanoScan LiDE 210 190d CanoScan 9000F Mark II @@ -4621,6 +4651,7 @@ 0434 D610 0436 D810 043f D5600 + 0455 Z50II 0f03 PD-10 Wireless Printer Adapter 4000 Coolscan LS 40 ED 4001 LS 50 ED/Coolscan V ED @@ -4907,11 +4938,19 @@ 0891 Stylus Office BX535WD 0892 Stylus Office BX935FWD 0893 EP-774A + 08d1 L220/L360 Series 0e03 Thermal Receipt Printer [TM-T20] + 0e31 Thermal Receipt Printer [TM-L100] 1114 XP-440 [Expression Home Small-in-One Printer] 1115 ES-0133 [Expression Home XP-342] 1129 ET-4750 [WorkForce ET-4750 EcoTank All-in-One] 1168 Workforce WF-7820/7840 Series + 1186 ET-2820 Series [ET-2820 EcoTank All-in-One] + 118a ET-2810/L3250 Series [EcoTank ET-2810/L3250] + 118b ET-2850/L4260 Series [EcoTank ET-2850/L4260] + 11b0 XP-4200 Series [Expression Home XP-4200] + 11b9 ET-2830/L3550 Series [EcoTank ET-2830/L3550] + 11c8 ET-2860/L3270 Series [EcoTank ET-2860/L3270] 04b9 Rainbow Technologies, Inc. 0300 SafeNet USB SuperPro/UltraPro 1000 iKey 1000 Token @@ -4996,6 +5035,9 @@ 1303 i3 Micro Module 1304 i3 Module 1305 i3 Multi Sensing Module + 1400 Javelin Module Recovery + 1401 Javelin Module + 1500 Gas sensor demo board 04c1 U.S. Robotics (3Com) 0020 56K Voice Pro 0022 56K Voice Pro @@ -5034,7 +5076,9 @@ 11f3 fi-6130Z 125a PalmSecure Sensor Device - MP 132e fi-7160 + 1526 PalmSecure-F Pro 159f ScanSnap iX1500 + 15ff Fi-8170 Document Scanner [Ricoh fi-8170: High Performance Desktop Scanner - PFU] 200f Sigma DP2 (Mass Storage) 2010 Sigma DP2 (PictBridge) 201d SATA 3.0 6Gbit/s Adaptor [GROOVY] @@ -5067,6 +5111,7 @@ 300f Atheros AR3012 Bluetooth 3014 Qualcomm Atheros Bluetooth 3015 Qualcomm Atheros QCA9377 Bluetooth + 3802 MediaTek Bluetooth MT7921 7022 HP HD Webcam 7025 HP HD Webcam 7046 TOSHIBA Web Camera - HD @@ -15333,6 +15378,12 @@ 0e23 Liou Yuane Enterprise Co., Ltd 0e25 VinChip Systems, Inc. 0e26 J-Phone East Co., Ltd +0e2c Materialise Motion NV + 0012 footscan pressure plate (0.5m) + 0013 footscan pressure plate (1.0m) + 0018 footscan 2D interface box + 0020 footscan pressure plate (1.5m) + 002d footscan heavy duty pressure plate (1.0m) 0e2e Brady Worldwide, Inc. 000b BMP 51 000c BMP 61 From nobody Thu Sep 11 13:06:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMyWL1tDZz66dqf; Thu, 11 Sep 2025 13:06:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMyWL1Cqdz3d0t; Thu, 11 Sep 2025 13:06:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757596014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8ExOhazj/hJgX+KQnXyrnKc8hwZx5S+aIR7gqln2rGU=; b=Hmz/bKAdqbDYjqNOIUlX4iKFcmpSUaDzowBZQb8DKDkO3k2aaaKbda/mzfk9jZFudZw41p 2Zx097gtHLpAUXRJshP8ILL7L64e3cYAq/wlj7TDLb/NehR07+LFPrHaWXIff4RYocR7uc WQh0CfEEfc18ZMX/P9xPVWvKphjCfWQkMwAuWXeoa8x0Q75DdJj9gnYajycSgvNhk11ojQ eMNvB/ieY2Sqg/8jQkX09Ic41Dk6uomum8dax+RQXg2Csm2Fr4KJWSBolZv87i37/yKyz2 rSZLEBSJoLqQdD4kemNT4BaBnGX3NhuIXXZt/cjP7qh03OjboounhQ6t3cIVOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757596014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8ExOhazj/hJgX+KQnXyrnKc8hwZx5S+aIR7gqln2rGU=; b=UPzKZsJaWeNF06fP+GPKk18NkdUqHMR2Wo1GXE0+mtzT/QWjv0WGsA+tbzQUVaYcikK+sy 1pjC65d1qAYN4z9dop2gsM3cvs8Jq6WouJzc4yOD+VyTs7b2zMXFI6OyKRpjUhDPTnMnvd aKkKujPwpby4v2fGuP8PXk7qRS6tBil9DywkXJ4hFNoiE7cCAhupx+CAA5o+3dwmiM/XSy H/UUvYgswRrcT2wXy1+fdv0OIEu9KnAWN/StnuUi12C97oZ9iePwcV/SbP/ATYnIKx5Utp BjkPycsh813Jh3cRkCGtXm/CKicAQDqlQp7kquMU9sNG4xu2Uku66dfNVZF2iw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757596014; a=rsa-sha256; cv=none; b=cDIYWG0w5xIAG4bpjn+x/fRDnVKcynB362ZPlZxouW2RBJ2mPmUrcbWJIfDZVqH6GinPGI c66c/UBXwcLd0ppuSJ/SoOCNq0EyfjEJjNECKDgy+JAGbm7h02AOKNB3wDNpxUXXIHqBUq O5D2Clu2/AR0CRVLIdKpBm1OFl6OtgKL5687stvqMEjcBmfdWIFg/SOYStXB3WPAkXbCJD 4H0z/CBFYRoCr6lJ/mxMteEfkmWZR/zL8aIPwmcSO2UXwb+dZufte2cWmBhQQIDV/beSib c+s+pNa3Us1fplQt39IKr2Zm6Po9McGGxpWnVrKQBpAwrjusGJVnK+1LMX1V5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMyWL0Tr8z17Tn; Thu, 11 Sep 2025 13:06: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 58BD6rAm044158; Thu, 11 Sep 2025 13:06:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BD6rnl044155; Thu, 11 Sep 2025 13:06:53 GMT (envelope-from git) Date: Thu, 11 Sep 2025 13:06:53 GMT Message-Id: <202509111306.58BD6rnl044155@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 6207325f3aac - main - release: Made it possible to specify more attributes in metalog entries List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 6207325f3aac067fb16f0aa42012302014035ebf Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6207325f3aac067fb16f0aa42012302014035ebf commit 6207325f3aac067fb16f0aa42012302014035ebf Author: Mark Johnston AuthorDate: 2025-09-11 13:05:13 +0000 Commit: Mark Johnston CommitDate: 2025-09-11 13:05:13 +0000 release: Made it possible to specify more attributes in metalog entries Verify that the target file or directory exists, and add support for an optional mode. This is required to enable NO_ROOT builds of some cloudware image types. No functional change intended. Reviewed by: cperciva, emaste MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52449 --- release/tools/vmimage.subr | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 20ffe3b2dac7..32eec6f220e7 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -39,8 +39,21 @@ cleanup() { } metalog_add_data() { + local file mode type + if [ -n "${NO_ROOT}" ]; then - echo "$1 type=file uname=root gname=wheel mode=0644" >> \ + file=$1 + if [ -f ${DESTDIR}/${file} ]; then + type=file + mode=${2:-0644} + elif [ -d ${DESTDIR}/${file} ]; then + type=dir + mode=${2:-0755} + else + echo "metalog_add_data: ${file} not found" >&2 + return 1 + fi + echo "${file} type=${type} uname=root gname=wheel mode=${mode}" >> \ ${DESTDIR}/METALOG fi } From nobody Thu Sep 11 13:06:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cMyWM3Sxcz66fC1; Thu, 11 Sep 2025 13:06:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cMyWM1L2Rz3d2b; Thu, 11 Sep 2025 13:06:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757596015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjm+xntkvz9tLRlhrP7KOAabmeztnprf6VJVdh8V6XA=; b=S+3OsQXgUg+BsFwO7V4/wACEzEDb9gFdOVXN2uHjPW3GuwgsTSx0FwaTdLtWqW20k6BqVY Rc146af7wUbUt+yLZ7lRVvOhmd98fxY5uFoHY43kd8aGCSPE871q+MXVWk+UGJldoXVh5z u/ZO9S7l7Aa25cc83hgC60E7CbASn+Uu82rLJnkDWatEYsGP05QTrufRBuIOz7SRJJLZ0i +zNU5ahkmIDYcHMel38GA6QKv8JZu1m/yxUVbwBa/KkG6jE0W3YQXWC8l8KmLIJSKED8UH ya2eKcKwlncfQatySIQlIGirxCwAlTsO2hVe/qpEmXqhtOUhehjmON7k669L1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757596015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjm+xntkvz9tLRlhrP7KOAabmeztnprf6VJVdh8V6XA=; b=Qpxc2u5O3X9VVnSmQqM9mqEZD6J1PONBrHyJPOSghN77O9XhS6GNJS72QDHk7Nh9Vr5Aab iSPfI3Qx8QLpeB3AUSRHYNq0ezEnDS2hXCC+2Rfgl4+Njl7t7nqWALeuPZZOWC45EWyahW gXJ5OyMnum/06JHQg0fmzfJ0Iek5uM1YPyjGPmKBSEm9wCG7mt2HLSSNLDSZ0ZnXw+iskQ 2aLFBGcsqnfcuzH4FVXWjL1bDPbe1Yt9HZx3bgUUwCp2EoiHExAejlfMrMQWyBXDd19w9y 6mzFnITomJ2+uguuRU0ESfV5OFvijoRnMmd32Xrg8ZLCyh4C2wPwttO2ZPrBBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757596015; a=rsa-sha256; cv=none; b=doUSHuzoACS85708V3QhdykahAEfQfPJYMXjIH13HnQh0bWuKu15DfmjO7YZvB/+P/kNMd 5ciBpuzCTX2zZZgDA5NPU8qsN104aS+akNNpRdeKrqIA0NsgjY/GNcd0dgQEYLufyTlrTo Rcz3X0ILNzTx8nIxZUJiddYLlMeNgGkOOc13WPdr4T1uQru1tf1wBdeie+MIDRCMxiWfpY mp5GV6REVSHz1UBrwqiO9tDejb3v7mcbTJ3bmHT1ijJOKCp10s1GK5KxLWB032PEdcyWq3 Wq3wJi165EbnJISYWz1FHVOlODwkTnHl95zbrktjNtzw5yfUVqysSWbOOCVhuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cMyWM0tVSz17r0; Thu, 11 Sep 2025 13:06: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 58BD6tau044192; Thu, 11 Sep 2025 13:06:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BD6t0m044189; Thu, 11 Sep 2025 13:06:55 GMT (envelope-from git) Date: Thu, 11 Sep 2025 13:06:55 GMT Message-Id: <202509111306.58BD6t0m044189@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 1d6b6ea2d0e6 - main - release: Create /firstboot in common VM image creation code List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 1d6b6ea2d0e617d29681da3cf121abec309d272f Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1d6b6ea2d0e617d29681da3cf121abec309d272f commit 1d6b6ea2d0e617d29681da3cf121abec309d272f Author: Mark Johnston AuthorDate: 2025-09-11 13:05:31 +0000 Commit: Mark Johnston CommitDate: 2025-09-11 13:05:31 +0000 release: Create /firstboot in common VM image creation code Some services, such as growfs, only run upon the first boot of an image. The first boot is indicated by the presence of the file /firstboot, which is unlinked after boot. Individual cloudware types shouldn't be responsible for creating it. Do so in a centralized place. Aside from simplifying things, this ensures that we create a metalog entry for the firstboot file. Reviewed by: cperciva, emaste MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D52450 --- release/tools/azure.conf | 2 -- release/tools/basic-ci.conf | 2 -- release/tools/basic-cloudinit.conf | 2 -- release/tools/ec2.conf | 3 --- release/tools/gce.conf | 2 -- release/tools/openstack.conf | 1 - release/tools/oracle.conf | 2 -- release/tools/vmimage.subr | 11 +++++------ tests/ci/tools/ci.conf | 1 - 9 files changed, 5 insertions(+), 21 deletions(-) diff --git a/release/tools/azure.conf b/release/tools/azure.conf index a633e6e508d4..e13b63067fee 100644 --- a/release/tools/azure.conf +++ b/release/tools/azure.conf @@ -52,7 +52,5 @@ mlx4en_load="YES" mlx5en_load="YES" EOF - touch ${DESTDIR}/firstboot - return 0 } diff --git a/release/tools/basic-ci.conf b/release/tools/basic-ci.conf index 4bcb87aec791..e235c03d39fe 100644 --- a/release/tools/basic-ci.conf +++ b/release/tools/basic-ci.conf @@ -30,7 +30,5 @@ PermitEmptyPasswords yes UsePAM no EOF - touch_firstboot - return 0 } diff --git a/release/tools/basic-cloudinit.conf b/release/tools/basic-cloudinit.conf index 7088c0a5f72a..f8554c42f49c 100644 --- a/release/tools/basic-cloudinit.conf +++ b/release/tools/basic-cloudinit.conf @@ -34,7 +34,5 @@ PasswordAuthentication yes UsePAM no EOF - touch ${DESTDIR}/firstboot - return 0 } diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index 31f40962b19d..704a8f3f0073 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -128,9 +128,6 @@ echo "-nfsv4,minorversion=1,oneopenown ${FS}.efs.${REGION}.amazonaws.com:/" EOF chmod 755 ${DESTDIR}/etc/autofs/special_efs - # The first time the AMI boots, run "first boot" scripts. - touch ${DESTDIR}/firstboot - return 0 } diff --git a/release/tools/gce.conf b/release/tools/gce.conf index 382a839786f3..dc56be30c7ca 100644 --- a/release/tools/gce.conf +++ b/release/tools/gce.conf @@ -119,8 +119,6 @@ EOF ## of the image prior to packaging for upload to GCE. #sed -E -i '' 's/^([^#].*[[:space:]])on/\1off/' ${DESTDIR}/etc/ttys - touch ${DESTDIR}/firstboot - return 0 } diff --git a/release/tools/openstack.conf b/release/tools/openstack.conf index 05d2d13bbb39..b73734a4fd04 100644 --- a/release/tools/openstack.conf +++ b/release/tools/openstack.conf @@ -47,6 +47,5 @@ vm_extra_pre_umount() { echo 'debug.debugger_on_panic=0' >> ${DESTDIR}/etc/sysctl.conf echo 'kern.panic_reboot_wait_time=0' >> ${DESTDIR}/etc/sysctl.conf - touch ${DESTDIR}/firstboot return 0 } diff --git a/release/tools/oracle.conf b/release/tools/oracle.conf index 72c8dd9ded78..688820be9cbe 100644 --- a/release/tools/oracle.conf +++ b/release/tools/oracle.conf @@ -87,7 +87,5 @@ EOF sed -i '' -E -e 's/^pool.*iburst/server 169.254.169.254 iburst/' \ ${DESTDIR}/etc/ntp.conf - touch ${DESTDIR}/firstboot - return 0 } diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 32eec6f220e7..41f889a1e665 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -157,7 +157,6 @@ vm_extra_enable_services() { ${DESTDIR}/etc/rc.conf # Expand the filesystem to fill the disk. echo 'growfs_enable="YES"' >> ${DESTDIR}/etc/rc.conf - touch ${DESTDIR}/firstboot fi return 0 @@ -351,6 +350,11 @@ vm_create_disk() { >> ${DESTDIR}/etc/fstab fi + # Add a marker file which indicates that this image has never + # been booted. Some services run only upon the first boot. + touch ${DESTDIR}/firstboot + metalog_add_data ./firstboot + echo "Building filesystem... Please wait." buildfs @@ -375,8 +379,3 @@ vm_extra_create_disk() { return 0 } - -touch_firstboot() { - touch ${DESTDIR}/firstboot - metalog_add_data ./firstboot -} diff --git a/tests/ci/tools/ci.conf b/tests/ci/tools/ci.conf index 1d2921ab75f3..2302fc479a47 100644 --- a/tests/ci/tools/ci.conf +++ b/tests/ci/tools/ci.conf @@ -119,7 +119,6 @@ fdesc /dev/fd fdescfs rw 0 0 EOF mkdir -p ${DESTDIR}/usr/local/etc/rc.d cp -p ${scriptdir}/../../tests/ci/tools/freebsdci ${DESTDIR}/usr/local/etc/rc.d/ - touch ${DESTDIR}/firstboot return 0 } From nobody Thu Sep 11 14:26:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN0H73NFMz66kWQ; Thu, 11 Sep 2025 14:26:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN0H72w6Tz3qbM; Thu, 11 Sep 2025 14:26:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757600787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fqkqK1pgv3Rp36xAAJNfVpYDWwQBy4Xasr5jefpAEpg=; b=KiTuLam8dMDHEZsLUxH9lMziSdlz4TWXbXTCuOgGurpgzt381pyxUW/EPK5bzGCw0FDRfv uPpKcLN+tEebcsoIbBLW0VWL8Oy30SzuyCJMi8/tysOvNvps40rJFfFDP6TgPBI5lxxqIX LBTLhWVRsc3Hbm0XZlR9GqqpnZpsqfR490y8+WcgMQ+luEVfof0eghnoYMKewLkmNJhIJD 6eOKNOBqdnjEggmhjhO6vcNEJTfLWk+X/i1cTDIrsacnyNfqWEzWnNrp1RAzF4wsgUdTFy vOiFwMst4HJYuY75U30trpx/YH98q1pUButJKQ2E9ukejZ1iOW2vzC9vjeoxsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757600787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fqkqK1pgv3Rp36xAAJNfVpYDWwQBy4Xasr5jefpAEpg=; b=vlVR4N4ZFjXAY2QxE/qGYcFovOc1dP+0AR04H1dgnAoNjbDvNu3X7rm7zZjN2TCO794se/ wjU7S+HcQR2A8EDc+C9ATdTDOI5OJsDaPeGzYyyy2/o5rwWA5+MPX48m1FFjYlu7o9g4S0 q13NcHG/GNSqm3Zg0p03RZSB/lZCtEfP+mXfzb/qsK8EZvzrWBTr3aPBquRUAkcOnb1SOG nLbIb1xv/+toep5h67UAIQjXLAakkDBA1XXFCp/pHRwmcgIgKDc76QamaeFTfXOqXXqJOH 4Onj7V74AjX1OW+kZQTVlmJng0zreeudxH+l9ox4+nA5alsA14qOJKIj8mOdgw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757600787; a=rsa-sha256; cv=none; b=VM/kr7Zhh7eCMgoEErqaxbbderU4vX556T+07/4H0w3zr7+XwuM1lLcPGfn7gKRrwLETP+ tx/RZgmI/Qo+aQPVGDH0QQ8xb0WfR8RPzkMZ4FElVJHjTFAZjJTjaBFkZ2WfDAxk4J+Y9+ WTsHa12zVbFjZ7jxz/uF9/ADV/JBihMHf+X4pCvNbAHNSyM/m73mh+ZC6Bqld3uoxIwCxZ 8JlueM7cKwEaR0e9BuNRGaFeYUS1jqH09fD3LjX40LsOPrYg4NduI4rx0IOJMpENnqQXcH L+uSoc98bb5RGbTyx069DjqyuxA9m1EipW4NdPURuHfUkj6i9cREmGP0UXMs9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN0H72VXwz19MN; Thu, 11 Sep 2025 14:26: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 58BEQRsn094232; Thu, 11 Sep 2025 14:26:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BEQRZN094229; Thu, 11 Sep 2025 14:26:27 GMT (envelope-from git) Date: Thu, 11 Sep 2025 14:26:27 GMT Message-Id: <202509111426.58BEQRZN094229@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?= Subject: git: fdc4a7c8012b - main - contrib/bc upgrade to version 7.1.0 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: fdc4a7c8012b214986cfa2e2fb6d99731f004b1b Auto-Submitted: auto-generated The branch main has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=fdc4a7c8012b214986cfa2e2fb6d99731f004b1b commit fdc4a7c8012b214986cfa2e2fb6d99731f004b1b Merge: 1d6b6ea2d0e6 682da5a0fdb2 Author: Stefan Eßer AuthorDate: 2025-09-11 14:16:39 +0000 Commit: Stefan Eßer CommitDate: 2025-09-11 14:16:39 +0000 contrib/bc upgrade to version 7.1.0 This update fixes a few bugs: - Improper response to double SIGINT with editline. - Not letting libedit handle terminal size changes. - A dc crash from improperly handling an error. - A duplicate check for reference arrays. - Build failures with GCC 15. Merge commit '682da5a0fdb2c38ecc3951047a882471d62aa1d1' contrib/bc/LICENSE.md | 4 +- contrib/bc/MAINTENANCE-TERMS.md | 80 + contrib/bc/Makefile.in | 285 +- contrib/bc/NEWS.md | 23 + contrib/bc/NOTICE.md | 2 +- contrib/bc/README.md | 21 +- contrib/bc/VERSION.txt | 1 + contrib/bc/build.gaml | 402 + contrib/bc/build.pkg.rig | 2345 ++++++ contrib/bc/build.rig | 575 ++ contrib/bc/compile_flags.txt | 3 + contrib/bc/configure.sh | 477 +- contrib/bc/gen/bc_help.txt | 4 +- contrib/bc/gen/dc_help.txt | 4 +- contrib/bc/gen/lib.bc | 2 +- contrib/bc/gen/lib2.bc | 115 +- contrib/bc/gen/strgen.c | 4 +- contrib/bc/gen/strgen.sh | 4 +- contrib/bc/include/args.h | 2 +- contrib/bc/include/bc.h | 8 +- contrib/bc/include/bcl.h | 2 +- contrib/bc/include/dc.h | 2 +- contrib/bc/include/file.h | 2 +- contrib/bc/include/history.h | 26 +- contrib/bc/include/lang.h | 6 +- contrib/bc/include/lex.h | 2 +- contrib/bc/include/library.h | 2 +- contrib/bc/include/num.h | 2 +- contrib/bc/include/opt.h | 2 +- contrib/bc/include/ossfuzz.h | 2 +- contrib/bc/include/parse.h | 2 +- contrib/bc/include/program.h | 16 +- contrib/bc/include/rand.h | 2 +- contrib/bc/include/read.h | 2 +- contrib/bc/include/status.h | 7 +- contrib/bc/include/vector.h | 2 +- contrib/bc/include/version.h | 42 - contrib/bc/include/vm.h | 3 +- contrib/bc/locales/de_DE.ISO8859-1.msg | 2 +- contrib/bc/locales/de_DE.UTF-8.msg | 2 +- contrib/bc/locales/en_US.msg | 2 +- contrib/bc/locales/es_ES.ISO8859-1.msg | 2 +- contrib/bc/locales/es_ES.UTF-8.msg | 2 +- contrib/bc/locales/fr_FR.ISO8859-1.msg | 2 +- contrib/bc/locales/fr_FR.UTF-8.msg | 2 +- contrib/bc/locales/ja_JP.UTF-8.msg | 2 +- contrib/bc/locales/ja_JP.eucJP.msg | 2 +- contrib/bc/locales/nl_NL.ISO8859-1.msg | 2 +- contrib/bc/locales/nl_NL.UTF-8.msg | 2 +- contrib/bc/locales/pl_PL.ISO8859-2.msg | 2 +- contrib/bc/locales/pl_PL.UTF-8.msg | 2 +- contrib/bc/locales/pt_PT.ISO8859-1.msg | 2 +- contrib/bc/locales/pt_PT.UTF-8.msg | 2 +- contrib/bc/locales/ru_RU.CP1251.msg | 2 +- contrib/bc/locales/ru_RU.CP866.msg | 2 +- contrib/bc/locales/ru_RU.ISO8859-5.msg | 2 +- contrib/bc/locales/ru_RU.KOI8-R.msg | 2 +- contrib/bc/locales/ru_RU.UTF-8.msg | 2 +- contrib/bc/locales/zh_CN.GB18030.msg | 2 +- contrib/bc/locales/zh_CN.GB2312.msg | 2 +- contrib/bc/locales/zh_CN.GBK.msg | 2 +- contrib/bc/locales/zh_CN.UTF-8.msg | 2 +- contrib/bc/locales/zh_CN.eucCN.msg | 2 +- contrib/bc/manuals/bc/A.1 | 15 +- contrib/bc/manuals/bc/A.1.md | 14 +- contrib/bc/manuals/bc/E.1 | 4 +- contrib/bc/manuals/bc/E.1.md | 4 +- contrib/bc/manuals/bc/EH.1 | 4 +- contrib/bc/manuals/bc/EH.1.md | 4 +- contrib/bc/manuals/bc/EHN.1 | 4 +- contrib/bc/manuals/bc/EHN.1.md | 4 +- contrib/bc/manuals/bc/EN.1 | 4 +- contrib/bc/manuals/bc/EN.1.md | 4 +- contrib/bc/manuals/bc/H.1 | 15 +- contrib/bc/manuals/bc/H.1.md | 14 +- contrib/bc/manuals/bc/HN.1 | 15 +- contrib/bc/manuals/bc/HN.1.md | 14 +- contrib/bc/manuals/bc/N.1 | 15 +- contrib/bc/manuals/bc/N.1.md | 14 +- contrib/bc/manuals/bcl.3 | 4 +- contrib/bc/manuals/bcl.3.md | 4 +- contrib/bc/manuals/build.md | 6 +- contrib/bc/manuals/dc/A.1 | 4 +- contrib/bc/manuals/dc/A.1.md | 4 +- contrib/bc/manuals/dc/E.1 | 4 +- contrib/bc/manuals/dc/E.1.md | 4 +- contrib/bc/manuals/dc/EH.1 | 4 +- contrib/bc/manuals/dc/EH.1.md | 4 +- contrib/bc/manuals/dc/EHN.1 | 4 +- contrib/bc/manuals/dc/EHN.1.md | 4 +- contrib/bc/manuals/dc/EN.1 | 4 +- contrib/bc/manuals/dc/EN.1.md | 4 +- contrib/bc/manuals/dc/H.1 | 4 +- contrib/bc/manuals/dc/H.1.md | 4 +- contrib/bc/manuals/dc/HN.1 | 4 +- contrib/bc/manuals/dc/HN.1.md | 4 +- contrib/bc/manuals/dc/N.1 | 4 +- contrib/bc/manuals/dc/N.1.md | 4 +- contrib/bc/project/README.md | 32 + contrib/bc/project/gitea.db | Bin 0 -> 86016 bytes contrib/bc/project/github_issues.json | 3667 ++++++++++ contrib/bc/project/github_prs.json | 7729 ++++++++++++++++++++ contrib/bc/project/issue10.md | 104 + contrib/bc/scripts/exec-install.sh | 2 +- contrib/bc/scripts/format.sh | 2 +- contrib/bc/scripts/functions.sh | 2 +- contrib/bc/scripts/karatsuba.py | 2 +- contrib/bc/scripts/link.sh | 2 +- contrib/bc/scripts/lint.sh | 2 +- contrib/bc/scripts/locale_install.sh | 2 +- contrib/bc/scripts/locale_uninstall.sh | 2 +- contrib/bc/scripts/os.c | 2 +- contrib/bc/scripts/release.pkg.yao | 1410 ++++ contrib/bc/scripts/sqrt_frac_guess.bc | 2 +- contrib/bc/scripts/sqrt_int_guess.bc | 2 +- contrib/bc/scripts/sqrt_random.bc | 2 +- contrib/bc/scripts/sqrt_random.sh | 2 +- contrib/bc/src/args.c | 2 +- contrib/bc/src/bc.c | 2 +- contrib/bc/src/bc_fuzzer.c | 3 +- contrib/bc/src/bc_lex.c | 2 +- contrib/bc/src/bc_parse.c | 2 +- contrib/bc/src/data.c | 142 +- contrib/bc/src/dc.c | 2 +- contrib/bc/src/dc_fuzzer.c | 3 +- contrib/bc/src/dc_lex.c | 2 +- contrib/bc/src/dc_parse.c | 2 +- contrib/bc/src/file.c | 5 +- contrib/bc/src/history.c | 16 +- contrib/bc/src/lang.c | 7 +- contrib/bc/src/lex.c | 2 +- contrib/bc/src/library.c | 2 +- contrib/bc/src/main.c | 3 +- contrib/bc/src/num.c | 3 +- contrib/bc/src/opt.c | 2 +- contrib/bc/src/parse.c | 2 +- contrib/bc/src/program.c | 67 +- contrib/bc/src/rand.c | 2 +- contrib/bc/src/read.c | 23 +- contrib/bc/src/vector.c | 2 +- contrib/bc/src/vm.c | 35 +- contrib/bc/tests/all.sh | 42 +- contrib/bc/tests/bc/all.txt | 131 +- contrib/bc/tests/bc/errors/39.txt | 1 + contrib/bc/tests/bc/lib2.txt | 477 -- contrib/bc/tests/bc/lib2_a2.txt | 18 + contrib/bc/tests/bc/lib2_a2_results.txt | 18 + contrib/bc/tests/bc/lib2_bytes.txt | 46 + contrib/bc/tests/bc/lib2_bytes_results.txt | 46 + contrib/bc/tests/bc/lib2_ceil.txt | 24 + contrib/bc/tests/bc/lib2_ceil_results.txt | 24 + contrib/bc/tests/bc/lib2_d2r.txt | 16 + contrib/bc/tests/bc/lib2_d2r_results.txt | 16 + contrib/bc/tests/bc/lib2_fac.txt | 6 + contrib/bc/tests/bc/lib2_fac_results.txt | 6 + contrib/bc/tests/bc/lib2_gcd.txt | 7 + contrib/bc/tests/bc/lib2_gcd_results.txt | 7 + contrib/bc/tests/bc/lib2_log.txt | 32 + contrib/bc/tests/bc/lib2_log_results.txt | 32 + contrib/bc/tests/bc/lib2_p.txt | 4 + contrib/bc/tests/bc/lib2_p_results.txt | 5 + contrib/bc/tests/bc/lib2_perm.txt | 9 + contrib/bc/tests/bc/lib2_perm_results.txt | 8 + contrib/bc/tests/bc/lib2_pi.txt | 5 + contrib/bc/tests/bc/lib2_pi_results.txt | 6 + contrib/bc/tests/bc/lib2_r.txt | 23 + contrib/bc/tests/bc/lib2_r2d.txt | 17 + contrib/bc/tests/bc/lib2_r2d_results.txt | 16 + contrib/bc/tests/bc/lib2_r_results.txt | 23 + contrib/bc/tests/bc/lib2_rand.txt | 11 + contrib/bc/tests/bc/lib2_rand_results.txt | 7 + contrib/bc/tests/bc/lib2_root.txt | 13 + contrib/bc/tests/bc/lib2_root_results.txt | 13 + contrib/bc/tests/bc/lib2_tan.txt | 30 + contrib/bc/tests/bc/lib2_tan_results.txt | 29 + contrib/bc/tests/bc/lib2_uint.txt | 218 + .../bc/{lib2_results.txt => lib2_uint_results.txt} | 256 - .../bc/tests/bc/scripts/{add.bc => add_00100.bc} | 2 +- contrib/bc/tests/bc/scripts/add_00200.bc | 17 + contrib/bc/tests/bc/scripts/add_00300.bc | 17 + contrib/bc/tests/bc/scripts/add_00400.bc | 17 + contrib/bc/tests/bc/scripts/add_00500.bc | 17 + contrib/bc/tests/bc/scripts/add_00600.bc | 17 + contrib/bc/tests/bc/scripts/add_00700.bc | 17 + contrib/bc/tests/bc/scripts/add_00800.bc | 17 + contrib/bc/tests/bc/scripts/add_00900.bc | 17 + contrib/bc/tests/bc/scripts/add_01000.bc | 17 + contrib/bc/tests/bc/scripts/add_01100.bc | 17 + contrib/bc/tests/bc/scripts/add_01200.bc | 17 + contrib/bc/tests/bc/scripts/add_01300.bc | 17 + contrib/bc/tests/bc/scripts/add_01400.bc | 17 + contrib/bc/tests/bc/scripts/add_01500.bc | 17 + contrib/bc/tests/bc/scripts/add_01600.bc | 17 + contrib/bc/tests/bc/scripts/add_01700.bc | 17 + contrib/bc/tests/bc/scripts/add_01800.bc | 17 + contrib/bc/tests/bc/scripts/add_01900.bc | 17 + contrib/bc/tests/bc/scripts/add_02000.bc | 17 + contrib/bc/tests/bc/scripts/add_02100.bc | 17 + contrib/bc/tests/bc/scripts/add_02200.bc | 17 + contrib/bc/tests/bc/scripts/add_02300.bc | 17 + contrib/bc/tests/bc/scripts/add_02400.bc | 17 + contrib/bc/tests/bc/scripts/add_02500.bc | 17 + contrib/bc/tests/bc/scripts/add_02600.bc | 17 + contrib/bc/tests/bc/scripts/add_02700.bc | 17 + contrib/bc/tests/bc/scripts/add_02800.bc | 17 + contrib/bc/tests/bc/scripts/add_02900.bc | 17 + contrib/bc/tests/bc/scripts/add_03000.bc | 17 + contrib/bc/tests/bc/scripts/add_03100.bc | 17 + contrib/bc/tests/bc/scripts/add_03200.bc | 17 + contrib/bc/tests/bc/scripts/add_03300.bc | 17 + contrib/bc/tests/bc/scripts/add_03400.bc | 17 + contrib/bc/tests/bc/scripts/add_03500.bc | 17 + contrib/bc/tests/bc/scripts/add_03600.bc | 17 + contrib/bc/tests/bc/scripts/add_03700.bc | 17 + contrib/bc/tests/bc/scripts/add_03800.bc | 17 + contrib/bc/tests/bc/scripts/add_03900.bc | 17 + contrib/bc/tests/bc/scripts/add_04000.bc | 17 + contrib/bc/tests/bc/scripts/add_04100.bc | 17 + contrib/bc/tests/bc/scripts/add_04200.bc | 17 + contrib/bc/tests/bc/scripts/add_04300.bc | 17 + contrib/bc/tests/bc/scripts/add_04400.bc | 17 + contrib/bc/tests/bc/scripts/add_04500.bc | 17 + contrib/bc/tests/bc/scripts/add_04600.bc | 17 + contrib/bc/tests/bc/scripts/add_04700.bc | 17 + contrib/bc/tests/bc/scripts/add_04800.bc | 17 + contrib/bc/tests/bc/scripts/add_04900.bc | 17 + contrib/bc/tests/bc/scripts/add_05000.bc | 17 + contrib/bc/tests/bc/scripts/add_05100.bc | 17 + contrib/bc/tests/bc/scripts/add_05200.bc | 17 + contrib/bc/tests/bc/scripts/add_05300.bc | 17 + contrib/bc/tests/bc/scripts/add_05400.bc | 17 + contrib/bc/tests/bc/scripts/add_05500.bc | 17 + contrib/bc/tests/bc/scripts/add_05600.bc | 17 + contrib/bc/tests/bc/scripts/add_05700.bc | 17 + contrib/bc/tests/bc/scripts/add_05800.bc | 17 + contrib/bc/tests/bc/scripts/add_05900.bc | 17 + contrib/bc/tests/bc/scripts/add_06000.bc | 17 + contrib/bc/tests/bc/scripts/add_06100.bc | 17 + contrib/bc/tests/bc/scripts/add_06200.bc | 17 + contrib/bc/tests/bc/scripts/add_06300.bc | 17 + contrib/bc/tests/bc/scripts/add_06400.bc | 17 + contrib/bc/tests/bc/scripts/add_06500.bc | 17 + contrib/bc/tests/bc/scripts/add_06600.bc | 17 + contrib/bc/tests/bc/scripts/add_06700.bc | 17 + contrib/bc/tests/bc/scripts/add_06800.bc | 17 + contrib/bc/tests/bc/scripts/add_06900.bc | 17 + contrib/bc/tests/bc/scripts/add_07000.bc | 17 + contrib/bc/tests/bc/scripts/add_07100.bc | 17 + contrib/bc/tests/bc/scripts/add_07200.bc | 17 + contrib/bc/tests/bc/scripts/add_07300.bc | 17 + contrib/bc/tests/bc/scripts/add_07400.bc | 17 + contrib/bc/tests/bc/scripts/add_07500.bc | 17 + contrib/bc/tests/bc/scripts/add_07600.bc | 17 + contrib/bc/tests/bc/scripts/add_07700.bc | 17 + contrib/bc/tests/bc/scripts/add_07800.bc | 17 + contrib/bc/tests/bc/scripts/add_07900.bc | 17 + contrib/bc/tests/bc/scripts/add_08000.bc | 17 + contrib/bc/tests/bc/scripts/add_08100.bc | 17 + contrib/bc/tests/bc/scripts/add_08200.bc | 17 + contrib/bc/tests/bc/scripts/add_08300.bc | 17 + contrib/bc/tests/bc/scripts/add_08400.bc | 17 + contrib/bc/tests/bc/scripts/add_08500.bc | 17 + contrib/bc/tests/bc/scripts/add_08600.bc | 17 + contrib/bc/tests/bc/scripts/add_08700.bc | 17 + contrib/bc/tests/bc/scripts/add_08800.bc | 17 + contrib/bc/tests/bc/scripts/add_08900.bc | 17 + contrib/bc/tests/bc/scripts/add_09000.bc | 17 + contrib/bc/tests/bc/scripts/add_09100.bc | 17 + contrib/bc/tests/bc/scripts/add_09200.bc | 17 + contrib/bc/tests/bc/scripts/add_09300.bc | 17 + contrib/bc/tests/bc/scripts/add_09400.bc | 17 + contrib/bc/tests/bc/scripts/add_09500.bc | 17 + contrib/bc/tests/bc/scripts/add_09600.bc | 17 + contrib/bc/tests/bc/scripts/add_09700.bc | 17 + contrib/bc/tests/bc/scripts/add_09800.bc | 17 + contrib/bc/tests/bc/scripts/add_09900.bc | 17 + contrib/bc/tests/bc/scripts/add_10000.bc | 17 + contrib/bc/tests/bc/scripts/all.txt | 406 +- .../bc/scripts/{divide.bc => divide_00100.bc} | 2 +- contrib/bc/tests/bc/scripts/divide_00200.bc | 23 + contrib/bc/tests/bc/scripts/divide_00300.bc | 23 + contrib/bc/tests/bc/scripts/divide_00400.bc | 23 + contrib/bc/tests/bc/scripts/divide_00500.bc | 23 + contrib/bc/tests/bc/scripts/divide_00600.bc | 23 + contrib/bc/tests/bc/scripts/divide_00700.bc | 23 + contrib/bc/tests/bc/scripts/divide_00800.bc | 23 + contrib/bc/tests/bc/scripts/divide_00900.bc | 23 + contrib/bc/tests/bc/scripts/divide_01000.bc | 23 + contrib/bc/tests/bc/scripts/divide_01100.bc | 23 + contrib/bc/tests/bc/scripts/divide_01200.bc | 23 + contrib/bc/tests/bc/scripts/divide_01300.bc | 23 + contrib/bc/tests/bc/scripts/divide_01400.bc | 23 + contrib/bc/tests/bc/scripts/divide_01500.bc | 23 + contrib/bc/tests/bc/scripts/divide_01600.bc | 23 + contrib/bc/tests/bc/scripts/divide_01700.bc | 23 + contrib/bc/tests/bc/scripts/divide_01800.bc | 23 + contrib/bc/tests/bc/scripts/divide_01900.bc | 23 + contrib/bc/tests/bc/scripts/divide_02000.bc | 23 + contrib/bc/tests/bc/scripts/divide_02100.bc | 23 + contrib/bc/tests/bc/scripts/divide_02200.bc | 23 + contrib/bc/tests/bc/scripts/divide_02300.bc | 23 + contrib/bc/tests/bc/scripts/divide_02400.bc | 23 + contrib/bc/tests/bc/scripts/divide_02500.bc | 23 + contrib/bc/tests/bc/scripts/divide_02600.bc | 23 + contrib/bc/tests/bc/scripts/divide_02700.bc | 23 + contrib/bc/tests/bc/scripts/divide_02800.bc | 23 + contrib/bc/tests/bc/scripts/divide_02900.bc | 23 + contrib/bc/tests/bc/scripts/divide_03000.bc | 23 + contrib/bc/tests/bc/scripts/divide_03100.bc | 23 + contrib/bc/tests/bc/scripts/divide_03200.bc | 23 + contrib/bc/tests/bc/scripts/divide_03300.bc | 23 + contrib/bc/tests/bc/scripts/divide_03400.bc | 23 + contrib/bc/tests/bc/scripts/divide_03500.bc | 23 + contrib/bc/tests/bc/scripts/divide_03600.bc | 23 + contrib/bc/tests/bc/scripts/divide_03700.bc | 23 + contrib/bc/tests/bc/scripts/divide_03800.bc | 23 + contrib/bc/tests/bc/scripts/divide_03900.bc | 23 + contrib/bc/tests/bc/scripts/divide_04000.bc | 23 + contrib/bc/tests/bc/scripts/divide_04100.bc | 23 + contrib/bc/tests/bc/scripts/divide_04200.bc | 23 + contrib/bc/tests/bc/scripts/divide_04300.bc | 23 + contrib/bc/tests/bc/scripts/divide_04400.bc | 23 + contrib/bc/tests/bc/scripts/divide_04500.bc | 23 + contrib/bc/tests/bc/scripts/divide_04600.bc | 23 + contrib/bc/tests/bc/scripts/divide_04700.bc | 23 + contrib/bc/tests/bc/scripts/divide_04800.bc | 23 + contrib/bc/tests/bc/scripts/divide_04900.bc | 23 + contrib/bc/tests/bc/scripts/divide_05000.bc | 23 + contrib/bc/tests/bc/scripts/divide_05100.bc | 23 + contrib/bc/tests/bc/scripts/divide_05200.bc | 23 + contrib/bc/tests/bc/scripts/divide_05300.bc | 23 + contrib/bc/tests/bc/scripts/divide_05400.bc | 23 + contrib/bc/tests/bc/scripts/divide_05500.bc | 23 + contrib/bc/tests/bc/scripts/divide_05600.bc | 23 + contrib/bc/tests/bc/scripts/divide_05700.bc | 23 + contrib/bc/tests/bc/scripts/divide_05800.bc | 23 + contrib/bc/tests/bc/scripts/divide_05900.bc | 23 + contrib/bc/tests/bc/scripts/divide_06000.bc | 23 + contrib/bc/tests/bc/scripts/divide_06100.bc | 23 + contrib/bc/tests/bc/scripts/divide_06200.bc | 23 + contrib/bc/tests/bc/scripts/divide_06300.bc | 23 + contrib/bc/tests/bc/scripts/divide_06400.bc | 23 + contrib/bc/tests/bc/scripts/divide_06500.bc | 23 + contrib/bc/tests/bc/scripts/divide_06600.bc | 23 + contrib/bc/tests/bc/scripts/divide_06700.bc | 23 + contrib/bc/tests/bc/scripts/divide_06800.bc | 23 + contrib/bc/tests/bc/scripts/divide_06900.bc | 23 + contrib/bc/tests/bc/scripts/divide_07000.bc | 23 + contrib/bc/tests/bc/scripts/divide_07100.bc | 23 + contrib/bc/tests/bc/scripts/divide_07200.bc | 23 + contrib/bc/tests/bc/scripts/divide_07300.bc | 23 + contrib/bc/tests/bc/scripts/divide_07400.bc | 23 + contrib/bc/tests/bc/scripts/divide_07500.bc | 23 + contrib/bc/tests/bc/scripts/divide_07600.bc | 23 + contrib/bc/tests/bc/scripts/divide_07700.bc | 23 + contrib/bc/tests/bc/scripts/divide_07800.bc | 23 + contrib/bc/tests/bc/scripts/divide_07900.bc | 23 + contrib/bc/tests/bc/scripts/divide_08000.bc | 23 + contrib/bc/tests/bc/scripts/divide_08100.bc | 23 + contrib/bc/tests/bc/scripts/divide_08200.bc | 23 + contrib/bc/tests/bc/scripts/divide_08300.bc | 23 + contrib/bc/tests/bc/scripts/divide_08400.bc | 23 + contrib/bc/tests/bc/scripts/divide_08500.bc | 23 + contrib/bc/tests/bc/scripts/divide_08600.bc | 23 + contrib/bc/tests/bc/scripts/divide_08700.bc | 23 + contrib/bc/tests/bc/scripts/divide_08800.bc | 23 + contrib/bc/tests/bc/scripts/divide_08900.bc | 23 + contrib/bc/tests/bc/scripts/divide_09000.bc | 23 + contrib/bc/tests/bc/scripts/divide_09100.bc | 23 + contrib/bc/tests/bc/scripts/divide_09200.bc | 23 + contrib/bc/tests/bc/scripts/divide_09300.bc | 23 + contrib/bc/tests/bc/scripts/divide_09400.bc | 23 + contrib/bc/tests/bc/scripts/divide_09500.bc | 23 + contrib/bc/tests/bc/scripts/divide_09600.bc | 23 + contrib/bc/tests/bc/scripts/divide_09700.bc | 23 + contrib/bc/tests/bc/scripts/divide_09800.bc | 23 + contrib/bc/tests/bc/scripts/divide_09900.bc | 23 + contrib/bc/tests/bc/scripts/divide_10000.bc | 23 + .../bc/scripts/{multiply.bc => multiply_00100.bc} | 2 +- contrib/bc/tests/bc/scripts/multiply_00200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_00900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_01900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_02900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_03900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_04900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_05900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_06900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_07900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_08900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09000.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09100.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09200.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09300.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09400.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09500.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09600.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09700.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09800.bc | 20 + contrib/bc/tests/bc/scripts/multiply_09900.bc | 20 + contrib/bc/tests/bc/scripts/multiply_10000.bc | 20 + contrib/bc/tests/bc/scripts/parse.bc | 20 - contrib/bc/tests/bc/scripts/parse_02.bc | 19 + contrib/bc/tests/bc/scripts/parse_03.bc | 19 + contrib/bc/tests/bc/scripts/parse_04.bc | 19 + contrib/bc/tests/bc/scripts/parse_05.bc | 19 + contrib/bc/tests/bc/scripts/parse_06.bc | 19 + contrib/bc/tests/bc/scripts/parse_07.bc | 19 + contrib/bc/tests/bc/scripts/parse_08.bc | 19 + contrib/bc/tests/bc/scripts/parse_09.bc | 19 + contrib/bc/tests/bc/scripts/parse_11.bc | 19 + contrib/bc/tests/bc/scripts/parse_12.bc | 19 + contrib/bc/tests/bc/scripts/parse_13.bc | 19 + contrib/bc/tests/bc/scripts/parse_14.bc | 19 + contrib/bc/tests/bc/scripts/parse_15.bc | 19 + contrib/bc/tests/bc/scripts/parse_16.bc | 19 + contrib/bc/tests/bc/scripts/print.bc | 25 - contrib/bc/tests/bc/scripts/print_002.bc | 22 + contrib/bc/tests/bc/scripts/print_003.bc | 22 + contrib/bc/tests/bc/scripts/print_004.bc | 22 + contrib/bc/tests/bc/scripts/print_005.bc | 22 + contrib/bc/tests/bc/scripts/print_006.bc | 22 + contrib/bc/tests/bc/scripts/print_007.bc | 22 + contrib/bc/tests/bc/scripts/print_008.bc | 22 + contrib/bc/tests/bc/scripts/print_009.bc | 22 + contrib/bc/tests/bc/scripts/print_011.bc | 22 + contrib/bc/tests/bc/scripts/print_012.bc | 22 + contrib/bc/tests/bc/scripts/print_013.bc | 22 + contrib/bc/tests/bc/scripts/print_014.bc | 22 + contrib/bc/tests/bc/scripts/print_015.bc | 22 + contrib/bc/tests/bc/scripts/print_016.bc | 22 + contrib/bc/tests/bc/scripts/print_017.bc | 22 + contrib/bc/tests/bc/scripts/print_018.bc | 22 + contrib/bc/tests/bc/scripts/print_019.bc | 22 + contrib/bc/tests/bc/scripts/print_020.bc | 22 + contrib/bc/tests/bc/scripts/print_021.bc | 22 + contrib/bc/tests/bc/scripts/print_022.bc | 22 + contrib/bc/tests/bc/scripts/print_023.bc | 22 + contrib/bc/tests/bc/scripts/print_024.bc | 22 + contrib/bc/tests/bc/scripts/print_025.bc | 22 + contrib/bc/tests/bc/scripts/print_026.bc | 22 + contrib/bc/tests/bc/scripts/print_027.bc | 22 + contrib/bc/tests/bc/scripts/print_028.bc | 22 + contrib/bc/tests/bc/scripts/print_029.bc | 22 + contrib/bc/tests/bc/scripts/print_030.bc | 22 + contrib/bc/tests/bc/scripts/print_031.bc | 22 + contrib/bc/tests/bc/scripts/print_032.bc | 22 + contrib/bc/tests/bc/scripts/print_033.bc | 22 + contrib/bc/tests/bc/scripts/print_034.bc | 22 + contrib/bc/tests/bc/scripts/print_035.bc | 22 + contrib/bc/tests/bc/scripts/print_036.bc | 22 + contrib/bc/tests/bc/scripts/print_037.bc | 22 + contrib/bc/tests/bc/scripts/print_038.bc | 22 + contrib/bc/tests/bc/scripts/print_039.bc | 22 + contrib/bc/tests/bc/scripts/print_040.bc | 22 + contrib/bc/tests/bc/scripts/print_041.bc | 22 + contrib/bc/tests/bc/scripts/print_042.bc | 22 + contrib/bc/tests/bc/scripts/print_043.bc | 22 + contrib/bc/tests/bc/scripts/print_044.bc | 22 + contrib/bc/tests/bc/scripts/print_045.bc | 22 + contrib/bc/tests/bc/scripts/print_046.bc | 22 + contrib/bc/tests/bc/scripts/print_047.bc | 22 + contrib/bc/tests/bc/scripts/print_048.bc | 22 + contrib/bc/tests/bc/scripts/print_049.bc | 22 + contrib/bc/tests/bc/scripts/print_050.bc | 22 + contrib/bc/tests/bc/scripts/print_051.bc | 22 + contrib/bc/tests/bc/scripts/print_052.bc | 22 + contrib/bc/tests/bc/scripts/print_053.bc | 22 + contrib/bc/tests/bc/scripts/print_054.bc | 22 + contrib/bc/tests/bc/scripts/print_055.bc | 22 + contrib/bc/tests/bc/scripts/print_056.bc | 22 + contrib/bc/tests/bc/scripts/print_057.bc | 22 + contrib/bc/tests/bc/scripts/print_058.bc | 22 + contrib/bc/tests/bc/scripts/print_059.bc | 22 + contrib/bc/tests/bc/scripts/print_060.bc | 22 + contrib/bc/tests/bc/scripts/print_061.bc | 22 + contrib/bc/tests/bc/scripts/print_062.bc | 22 + contrib/bc/tests/bc/scripts/print_063.bc | 22 + contrib/bc/tests/bc/scripts/print_064.bc | 22 + contrib/bc/tests/bc/scripts/print_065.bc | 22 + contrib/bc/tests/bc/scripts/print_066.bc | 22 + contrib/bc/tests/bc/scripts/print_067.bc | 22 + contrib/bc/tests/bc/scripts/print_068.bc | 22 + contrib/bc/tests/bc/scripts/print_069.bc | 22 + contrib/bc/tests/bc/scripts/print_070.bc | 22 + contrib/bc/tests/bc/scripts/print_071.bc | 22 + contrib/bc/tests/bc/scripts/print_072.bc | 22 + contrib/bc/tests/bc/scripts/print_073.bc | 22 + contrib/bc/tests/bc/scripts/print_074.bc | 22 + contrib/bc/tests/bc/scripts/print_075.bc | 22 + contrib/bc/tests/bc/scripts/print_076.bc | 22 + contrib/bc/tests/bc/scripts/print_077.bc | 22 + contrib/bc/tests/bc/scripts/print_078.bc | 22 + contrib/bc/tests/bc/scripts/print_079.bc | 22 + contrib/bc/tests/bc/scripts/print_080.bc | 22 + contrib/bc/tests/bc/scripts/print_081.bc | 22 + contrib/bc/tests/bc/scripts/print_082.bc | 22 + contrib/bc/tests/bc/scripts/print_083.bc | 22 + contrib/bc/tests/bc/scripts/print_084.bc | 22 + contrib/bc/tests/bc/scripts/print_085.bc | 22 + contrib/bc/tests/bc/scripts/print_086.bc | 22 + contrib/bc/tests/bc/scripts/print_087.bc | 22 + contrib/bc/tests/bc/scripts/print_088.bc | 22 + contrib/bc/tests/bc/scripts/print_089.bc | 22 + contrib/bc/tests/bc/scripts/print_090.bc | 22 + contrib/bc/tests/bc/scripts/print_091.bc | 22 + contrib/bc/tests/bc/scripts/print_092.bc | 22 + contrib/bc/tests/bc/scripts/print_093.bc | 22 + contrib/bc/tests/bc/scripts/print_094.bc | 22 + contrib/bc/tests/bc/scripts/print_095.bc | 22 + contrib/bc/tests/bc/scripts/print_096.bc | 22 + contrib/bc/tests/bc/scripts/print_097.bc | 22 + contrib/bc/tests/bc/scripts/print_098.bc | 22 + contrib/bc/tests/bc/scripts/print_099.bc | 22 + contrib/bc/tests/bc/scripts/print_100.bc | 22 + .../bc/scripts/{subtract.bc => subtract_00100.bc} | 2 +- contrib/bc/tests/bc/scripts/subtract_00200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_00900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_01900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_02900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_03900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_04900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_05900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_06900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_07900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_08900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09000.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09100.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09200.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09300.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09400.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09500.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09600.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09700.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09800.bc | 17 + contrib/bc/tests/bc/scripts/subtract_09900.bc | 17 + contrib/bc/tests/bc/scripts/subtract_10000.bc | 17 + contrib/bc/tests/bc/timeconst.sh | 5 +- contrib/bc/tests/bcl.c | 2 +- contrib/bc/tests/dc/scripts/easter.dc | 49 + contrib/bc/tests/dc/scripts/easter.sh | 93 - contrib/bc/tests/dc/scripts/easter.txt | 5 + contrib/bc/tests/dc/scripts/prime.dc | 2 +- contrib/bc/tests/error.sh | 4 +- contrib/bc/tests/errors.sh | 4 +- contrib/bc/tests/extra_required.txt | 17 +- contrib/bc/tests/history.py | 4 +- contrib/bc/tests/history.sh | 2 +- contrib/bc/tests/other.sh | 593 -- contrib/bc/tests/read.sh | 166 - contrib/bc/tests/script.sh | 25 +- contrib/bc/tests/scripts.sh | 17 +- contrib/bc/tests/stdin.sh | 2 +- contrib/bc/tests/test.sh | 24 +- contrib/bc/vs/bc.vcxproj | 1 - contrib/bc/vs/bc.vcxproj.filters | 3 - contrib/bc/vs/bcl.vcxproj | 1 - contrib/bc/vs/bcl.vcxproj.filters | 3 - 713 files changed, 28218 insertions(+), 3012 deletions(-) diff --cc contrib/bc/MAINTENANCE-TERMS.md index 000000000000,ef24202cc6c2..ef24202cc6c2 mode 000000,100644..100644 --- a/contrib/bc/MAINTENANCE-TERMS.md +++ b/contrib/bc/MAINTENANCE-TERMS.md diff --cc contrib/bc/README.md index 696e6186b8bd,000000000000..a203386f3b65 mode 100644,000000..100644 --- a/contrib/bc/README.md +++ b/contrib/bc/README.md @@@ -1,518 -1,0 +1,531 @@@ +# `bc` + - ***WARNING: New user registration for is disabled - because of spam. If you need to report a bug with `bc`, email gavin at this site - minus the `git.` part for an account, and I will create one for you. Or you can - report an issue at [GitHub][29].*** ++***WARNING: This project has moved back to GitHub temporarily; self-hosted Git ++forges are not working for me, so I am trying to replace them.*** + +***WARNING: This project has moved to [https://git.gavinhoward.com/][20] for +[these reasons][21], though GitHub will remain a mirror.*** + +This is an implementation of the [POSIX `bc` calculator][12] that implements +[GNU `bc`][1] extensions, as well as the period (`.`) extension for the BSD +flavor of `bc`. + +For more information, see this `bc`'s full manual. + +This `bc` also includes an implementation of `dc` in the same binary, accessible +via a symbolic link, which implements all FreeBSD and GNU extensions. (If a +standalone `dc` binary is desired, `bc` can be copied and renamed to `dc`.) The +`!` command is omitted; I believe this poses security concerns and that such +functionality is unnecessary. + +For more information, see the `dc`'s full manual. + +This `bc` also provides `bc`'s math as a library with C bindings, called `bcl`. + +For more information, see the full manual for `bcl`. + +## License + +This `bc` is Free and Open Source Software (FOSS). It is offered under the BSD +2-clause License. Full license text may be found in the [`LICENSE.md`][4] file. + +## Prerequisites + +This `bc` only requires either: + +1. Windows 10 or later, or +2. A C99-compatible compiler and a (mostly) POSIX 2008-compatible system with + the XSI (X/Open System Interfaces) option group. + +Since POSIX 2008 with XSI requires the existence of a C99 compiler as `c99`, any +POSIX and XSI-compatible system will have everything needed. + +POSIX-compatible systems that are known to work: + +* Linux +* FreeBSD +* OpenBSD +* NetBSD +* macOS +* Solaris* (as long as the Solaris version supports POSIX 2008) +* AIX +* HP-UX* (except for history) + +In addition, there is compatibility code to make this `bc` work on Windows. + +Please submit bug reports if this `bc` does not build out of the box on any +system. + +## Build + +This `bc` should build unmodified on any POSIX-compliant system or on Windows +starting with Windows 10 (though earlier versions may work). + +For more complex build requirements than the ones below, see the [build +manual][5]. + +### Windows + +There is no guarantee that this `bc` will work on any version of Windows earlier +than Windows 10 (I cannot test on earlier versions), but it is guaranteed to +work on Windows 10 at least. + +Also, if building with MSBuild, the MSBuild bundled with Visual Studio is +required. + +**Note**: Unlike the POSIX-compatible platforms, only one build configuration is +supported on Windows: extra math and history enabled, NLS (locale support) +disabled, with both calculators built. + +#### `bc` + +To build `bc`, you can open the `vs/bc.sln` file in Visual Studio, select the +configuration, and build. + +You can also build using MSBuild with the following from the root directory: + +``` +msbuild -property:Configuration= vs/bc.sln +``` + +where `` is either one of `Debug` or `Release`. + +On Windows, the calculators are built as `vs/bin///bc.exe` and +`vs/bin///dc.exe`, where `` can be either `Win32` or +`x64`, and `` can be `Debug` or `Release`. + +**Note**: On Windows, `dc.exe` is just copied from `bc.exe`; it is not linked. +Patches are welcome for a way to do that. + +#### `bcl` (Library) + +To build the library, you can open the `vs/bcl.sln` file in Visual Studio, +select the configuration, and build. + +You can also build using MSBuild with the following from the root directory: + +``` +msbuild -property:Configuration= vs/bcl.sln +``` + +where `` is either one of `Debug`, `ReleaseMD`, or `ReleaseMT`. + +On Windows, the library is built as `vs/lib///bcl.lib`, where +`` can be either `Win32` or `x64`, and `` can be `Debug`, +`ReleaseMD`, or `ReleaseMT`. + +### POSIX-Compatible Systems + +On POSIX-compatible systems, `bc` is built as `bin/bc` and `dc` is built as +`bin/dc` by default. + +#### Default + +For the default build with optimization, use the following commands in the root +directory: + +``` +./configure.sh -O3 +make +``` + +#### One Calculator + +To only build `bc`, use the following commands: + +``` +./configure.sh --disable-dc +make +``` + +To only build `dc`, use the following commands: + +``` +./configure.sh --disable-bc +make +``` + +#### Debug + +For debug builds, use the following commands in the root directory: + +``` +./configure.sh -g +make +``` + +#### Install + +To install, use the following command: + +``` +make install +``` + +By default, `bc` and `dc` will be installed in `/usr/local`. For installing in +other locations, use the `PREFIX` environment variable when running +`configure.sh` or pass the `--prefix=` option to `configure.sh`. See the +[build manual][5], or run `./configure.sh --help`, for more details. + +#### Library + +To build the math library, pass the `-a` or `--library` options to +`configure.sh`: + +``` +./configure.sh -a +``` + +When building the library, the executables are not built. For more information, +see the [build manual][5]. + +The library API can be found in [`manuals/bcl.3.md`][26] or `man bcl` once the +library is installed. + +#### Package and Distro Maintainers + +This section is for package and distro maintainers. + +##### Out-of-Source Builds + +Out-of-source builds are supported; just call `configure.sh` from the directory +where the actual build will happen. + +For example, if the source is in `bc`, the build should happen in `build`, then +call `configure.sh` and `make` like so: + +``` +../bc/configure.sh +make +``` + +***WARNING***: The path to `configure.sh` from the build directory must not have +spaces because `make` does not support target names with spaces. + +##### Recommended Compiler + +When I ran benchmarks with my `bc` compiled under `clang`, it performed much +better than when compiled under `gcc`. I recommend compiling this `bc` with +`clang`. + +I also recommend building this `bc` with C11 if you can because `bc` will detect +a C11 compiler and add `_Noreturn` to any relevant function(s). + +##### Recommended Optimizations + +I wrote this `bc` with Separation of Concerns, which means that there are many +small functions that could be inlined. However, they are often called across +file boundaries, and the default optimizer can only look at the current file, +which means that they are not inlined. + +Thus, because of the way this `bc` is built, it will automatically be slower +than other `bc` implementations when running scripts with no math. (My `bc`'s +math is *much* faster, so any non-trivial script should run faster in my `bc`.) + +Some, or all, of the difference can be made up with the right optimizations. The +optimizations I recommend are: + +1. `-O3` +2. `-flto` (link-time optimization) + +in that order. + +Link-time optimization, in particular, speeds up the `bc` a lot. This is because +when link-time optimization is turned on, the optimizer can look across files *** 3142 LINES SKIPPED *** From nobody Thu Sep 11 14:36:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN0VX3zgQz66l6t; Thu, 11 Sep 2025 14:36:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN0VX3JsWz3sF4; Thu, 11 Sep 2025 14:36:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757601380; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wtYj2cCqMEcfPGRNOjEHR1j8RjEHO06Yx6iA90KrLvA=; b=gKH1lE+oxsvZkzLwc0TbuYkePKRVypx06nYTbAs+yCwWh4vQTwZiQK9NoHEcyJgRPykrIa y8qvznAoxF0d1SQ3fZtP5EyNmNHJoVG5kn4sttg+2muqniwOio/jY8yd9sD2q6pnyMOPHz v7J/fffhE3wsKeiagri3HAMrzeEDeym86gZJJBHtgHtJbkp2aogB4M9oXh19jK/5s7zkqL 5DVBM5O6whqPBDFIQuJofER12cL8WcS7L5j3s3YhLpb3YDEnTs+9DkAUQwqQO87xPHh4eK 7eGXP8b9kzgX8RSbno2gE4PSMbVgG1lT3sIJ1wr5DFZrAQ3XY+ubfGO+ReVqzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757601380; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wtYj2cCqMEcfPGRNOjEHR1j8RjEHO06Yx6iA90KrLvA=; b=FEbw9zXDUxQiA+17Pu7gZzFLO0W5jPydVyIgEC5i5uzS7MN3Euwgz4kZB/KIy/Jd8NfLFC WLZa2XUTDBJhKS9aY7xg2RxVpmGf9YqLl+M0WWNJj7X47JUNNX5OhT0CSSpoLGv2xrJ5co /a26elaVNIXJYpK9YdfzFBg1vjoSwZz1JIF80VmLTK/yedzDAJndZGiOH3luI5jwPZD8HY 2yRC9hTM2sNnr9RIorUz/brN70hQ+eiBYIXx7cq7xiIHzypHH9yofQtxFOBdOPA0ZZ7Hj4 Y83TjS+BJtGvarljqlmZGcfAe68HfDM+Zr82YEAfneRPEzwsb3aClLOpFpjfhw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757601380; a=rsa-sha256; cv=none; b=HaRaM4Cljj0uqQqaPuOOjVtf6r/joW8XkRGrrUgKgtqVP9omQkVSRavRzYmutDWaZeH+FO fiEOSfCrlRBcLI19/CcmYXwYy5VINZEwkmL4LRIJI+kJkpPtDT1UGj3AFECLL+z7tlHt+x f5wXJf5yAHDuPiR1WYvTM48yfag9l4dkY1FLyzMyia7ssUYHb2dIGUhbSMieGlKJmM2+LS rw+FTulZ5m0TkVQgk1BV0z7Bp4w1FXxNvsIBcUlQ2yoAb7IRwAJ6lt/L/HZEmpM8Ctr/o8 Kvzl1xZjS7BDWssPSYCg4c1R+tPz1sleAc48OIrTnHyfc1KWMkrglYfGO9h6HQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN0VX2f11z1B8t; Thu, 11 Sep 2025 14:36: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 58BEaKXB012640; Thu, 11 Sep 2025 14:36:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BEaKq6012637; Thu, 11 Sep 2025 14:36:20 GMT (envelope-from git) Date: Thu, 11 Sep 2025 14:36:20 GMT Message-Id: <202509111436.58BEaKq6012637@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?= Subject: git: 1a6ffcb27ddc - main - usr.bin/gh-bc: fix invocation of test scripts List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 1a6ffcb27ddcfdc66c2ea58d6789b3d527f68ba9 Auto-Submitted: auto-generated The branch main has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=1a6ffcb27ddcfdc66c2ea58d6789b3d527f68ba9 commit 1a6ffcb27ddcfdc66c2ea58d6789b3d527f68ba9 Author: Stefan Eßer AuthorDate: 2025-09-11 14:33:42 +0000 Commit: Stefan Eßer CommitDate: 2025-09-11 14:33:42 +0000 usr.bin/gh-bc: fix invocation of test scripts The “all.sh” script in version 7.1.0 accepts one less parameter for selecting the tests to be run. --- usr.bin/gh-bc/tests/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.bin/gh-bc/tests/Makefile b/usr.bin/gh-bc/tests/Makefile index 464ae4b5d3c3..f3ef5a695e7d 100644 --- a/usr.bin/gh-bc/tests/Makefile +++ b/usr.bin/gh-bc/tests/Makefile @@ -56,10 +56,10 @@ PLAIN_TESTS_SH= bc_tests dc_tests bc_tests.sh: echo "#!/bin/sh" > ${.TARGET} - echo "env LANG=C ${TESTSDIR}/tests/all.sh bc 1 1 0 0 0 bc" >> ${.TARGET} + echo "env LANG=C ${TESTSDIR}/tests/all.sh bc 1 1 0 0 bc" >> ${.TARGET} dc_tests.sh: echo "#!/bin/sh" > ${.TARGET} - echo "env LANG=C ${TESTSDIR}/tests/all.sh dc 1 1 0 0 0 dc" >> ${.TARGET} + echo "env LANG=C ${TESTSDIR}/tests/all.sh dc 1 1 0 0 dc" >> ${.TARGET} .include From nobody Thu Sep 11 14:44:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN0h92Sc3z66lWD; Thu, 11 Sep 2025 14:44:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN0h85tHJz3t5m; Thu, 11 Sep 2025 14:44:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757601880; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Iic2qj1MRSXDAPaQHRwe5VAHDC+n5LFwze4uCtPFJ8=; b=OA8G1JeB01/Xtr0ZZw0408tYRS6E7lYZM7XwOpF6CSRl1bPq4tSTsGfqUex4+k0UNnmX+q KvuMi8D4zFnyvQxc2OH+KC/JHpBArf/KlDTeSbBQ+H/LU6pSU2fp7Y1CrXaCNyDxMGhYIO 0iczF4YQwO9jn8ykeY8qIcV5ff/Kp7oJ8w7tcARrfDk2WaPieKmhw+10+aycQ8X4XcnEaV n53aGdj5bhrqs+XZdLljXiejViMPAjr+1RBm3Vd8C15WJb58XzJ8kB+m9q878z4rRnAvmR aRp61T0dr3kylihcaNn2T+woMFgLv7fyhia7Gjlcj5giPx+WG/qtuXEZ243bOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757601880; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Iic2qj1MRSXDAPaQHRwe5VAHDC+n5LFwze4uCtPFJ8=; b=xo+WjuiyFU/7k+nJQbyzC9nKVEeOoK+vlgZrAnDyxws3NqRdceK1ydkuDRtfA2QaInDVhu w9icHJ+8J/+AfLWuiuL9mz3P49oI6xSJsQ/gvEVhN3xANGVXLkhOXsSin5/Kd3aFqKI+EN aHvFHrCInLJDYWdxO2LP4n1TPea3g5eftuUCoCKrRYoFD1GvnPdPbQ+mt32wBq3094Pih8 Jb0UaGuKh6mXiXRmvGIFRHFoEsUv9CCeXH2hgR8ARfTdp58IMHGYMwFS8oNsm6cbBPdNJ7 vJwcZaQqcPB+YH0RK/SnwmeyWrAKBO/yLPEawUJHU1h6vUKjBkMVV+EbYaenCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757601880; a=rsa-sha256; cv=none; b=g3dwNPDEgwSBluMlleusdftg6BS4jF5ew4TI/4YPZeIRibhZCMzLCsuuONY/ruopphoRZk s7mdJbCtqMmw5RMw/3sAwTByfdG5gFV2KokTSUWJ9KatDywVEdrrOHx+faBaWX763O5UXn ZO2A3BwLSsqmUY/k1o3zq4hJQClA4OJuOfTray8HMAdZYa89HA3XG4qJcQb5CiERSy+d7s 9uObaxiKvPUXGZJ1mkTAU7W5b63MLjhlbPvqdiVT3IMgSVXjYeIpNb9xQwkCZt7kLT5R1y 9/DuX3Kk7xMYlEIsUk8TGErWkf+QYdllUjiNeXejQZwX4bmAqQiOuEJDzwAu0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN0h85593z19yg; Thu, 11 Sep 2025 14:44: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 58BEiemo030770; Thu, 11 Sep 2025 14:44:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BEiePf030767; Thu, 11 Sep 2025 14:44:40 GMT (envelope-from git) Date: Thu, 11 Sep 2025 14:44:40 GMT Message-Id: <202509111444.58BEiePf030767@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?= Subject: git: 2d06844521ec - main - usr.bin/gh-bc: update for version 7.1.0 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 2d06844521ecd9e1298b53f13c18ffbfa97b1e28 Auto-Submitted: auto-generated The branch main has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=2d06844521ecd9e1298b53f13c18ffbfa97b1e28 commit 2d06844521ecd9e1298b53f13c18ffbfa97b1e28 Author: Stefan Eßer AuthorDate: 2025-09-11 14:42:42 +0000 Commit: Stefan Eßer CommitDate: 2025-09-11 14:42:42 +0000 usr.bin/gh-bc: update for version 7.1.0 Add extra defines required for bc-7.1.0 to the Makefiles. --- usr.bin/gh-bc/Makefile | 6 +++++- usr.bin/gh-bc/tests/Makefile | 9 ++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/usr.bin/gh-bc/Makefile b/usr.bin/gh-bc/Makefile index 0fdc687c0e50..9aa5116f6faa 100644 --- a/usr.bin/gh-bc/Makefile +++ b/usr.bin/gh-bc/Makefile @@ -4,6 +4,7 @@ PROG= gh-bc PROGNAME= bc BCDIR= ${SRCTOP}/contrib/${PROGNAME} +VERSION!= cat ${SRCTOP}/contrib/${PROGNAME}/VERSION.txt SRCS= args.c bc.c bc_lex.c bc_parse.c data.c dc.c dc_lex.c dc_parse.c file.c history.c SRCS+= lang.c lex.c main.c num.c opt.c parse.c program.c rand.c read.c vector.c vm.c @@ -31,6 +32,8 @@ CATALOGS+= zh_CN.UTF-8 zh_CN.eucCN zh_CN.GB18030 zh_CN.GB2312 zh_CN.GBK NLSNAME= bc NLSSRCDIR= ${BCDIR}/locales +CFLAGS+= -I${BCDIR}/include + CFLAGS+= -DBC_DEFAULT_BANNER=0 CFLAGS+= -DBC_DEFAULT_DIGIT_CLAMP=0 CFLAGS+= -DBC_DEFAULT_EXPR_EXIT=1 @@ -57,7 +60,8 @@ CFLAGS+= -DBUILD_TYPE=A CFLAGS+= -DMAINEXEC=${PROGNAME} CFLAGS+= -DNDEBUG CFLAGS+= -DNLSPATH=/usr/share/nls/%L/%N.cat -CFLAGS+= -I${BCDIR}/include + +CFLAGS+= -DVERSION=${VERSION} # prevent floating point incompatibilities caused by -flto on some architectures .if ${MACHINE_ARCH} != riscv64 diff --git a/usr.bin/gh-bc/tests/Makefile b/usr.bin/gh-bc/tests/Makefile index f3ef5a695e7d..f2c92aecb0a5 100644 --- a/usr.bin/gh-bc/tests/Makefile +++ b/usr.bin/gh-bc/tests/Makefile @@ -17,7 +17,8 @@ FILESfMODE= 0755 FILESGROUPS+= FILEStests FILEStestsPACKAGE= ${PACKAGE} FILEStestsDIR= ${TESTSDIR}/tests -FILEStests!= echo ${TEST_DIR}/tests/*.py ${TEST_DIR}/tests/*.sh ${TEST_DIR}/tests/*.txt +FILEStests!= echo ${TEST_DIR}/tests/*.py ${TEST_DIR}/tests/*.sed \ + ${TEST_DIR}/tests/*.sh ${TEST_DIR}/tests/*.txt FILEStestsMODE= 0755 FILESGROUPS+= FILESbc @@ -56,10 +57,12 @@ PLAIN_TESTS_SH= bc_tests dc_tests bc_tests.sh: echo "#!/bin/sh" > ${.TARGET} - echo "env LANG=C ${TESTSDIR}/tests/all.sh bc 1 1 0 0 bc" >> ${.TARGET} + echo 'env LANG=C BC_TEST_OUTPUT_DIR=$$(pwd) \ + ${TESTSDIR}/tests/all.sh -n bc 1 1 0 0 bc' >> ${.TARGET} dc_tests.sh: echo "#!/bin/sh" > ${.TARGET} - echo "env LANG=C ${TESTSDIR}/tests/all.sh dc 1 1 0 0 dc" >> ${.TARGET} + echo "env LANG=C BC_TEST_OUTPUT_DIR=\$pwd \ + ${TESTSDIR}/tests/all.sh -n dc 1 1 0 0 dc" >> ${.TARGET} .include From nobody Thu Sep 11 15:12:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN1JJ0nxQz66n6X; Thu, 11 Sep 2025 15:12:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN1JJ0Hk9z41sG; Thu, 11 Sep 2025 15:12:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757603552; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sLCq3oOE7RI9I+NeZH51GFutfVxpAg77kwnuDax1ZSA=; b=H1SIOUJkg9HtNAJY507tfFz9uLQsZaV7dlNFdEb574E8SkhlA2RPbkKxdvxuAowuWbbX+r TA1Dce8OcT0hn5jr79Q/RCzyLRKyLZLMAZfOs1tR5zUOrUgxsEamxj7jKFtCi987Cv1Z4y CMAPZcjHTmbQyuZ+0PBj5+xG2P5zLiSvWQdc8zk/wqc+jxnRYUdWv99OquyKntxM0LRiz8 92ZndhtXrzw8a2lqm8043cL5qbWNg55b9r+K5RR2ICoZDniSuzTkiwDDCyMlENjesgYmGR 9UT58mL+sWjN46pwakHGN+dzieDco1NcBhMgetGF0ug0OuPTbc/mwevv6crbCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757603552; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sLCq3oOE7RI9I+NeZH51GFutfVxpAg77kwnuDax1ZSA=; b=F+yTaFLsaL1BmY7a4wITIXDLYplaQ8hDlGgmKNW+LsZ5nlIaMSOHKocq42ugGVwttX0DUf 5S2/BCMhY0/xy18GUnuciPG+Ea3Egox792jWPKU+pM5AuTMYl0/a89ZSEuxKX2XED2g975 TYUsm5ZVKI7R6keAYJKkNrSevWalGyF6QPQkCJgGnin/Se+WWhMqGtVPHS1SgoWPOgMHXc grGNB9W70Hm5dl/bQT56p9a0eaj6BLRo0xryjmiy7OYk/JwCdADBmzcwajwkFrfvQx0AzA jkN3kHIHBGWO6AopgsNQChJoOU+IVgrduWjb34+tFSFXxAovn149XEXMD6YuLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757603552; a=rsa-sha256; cv=none; b=JeXoOO0lUPmWp6TJ1hnW+DZZAwl1iD7UsufcRd+LZ0YwbGw6aeTqR1bfXzW7SnKnP/u35T buIQ8OQ0ikNna/spyxvsTRumXsmkVew41tp9hxsjYWpFUb9m6VCF47+EnGQ1RVz/b54230 CM2oVa6G5G7S8HRfISTELaGtZBjF7srf/A2xKYZqj74Kj+QfLzrLy5EE5Glie4XULUgnPx kqfHlHWDHFDmAoMBvly0C8D5mBMc5XHcnpxZbOPPwFdjj3nROaCTY1JXLyDX+X3KPU5S2z Qkl3sJ1ppSAmn9OSA8YHwMBq5fi0wCsmcr4dyEOlQSoAj2FUgY8vjGg72eUiLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN1JH6nHHz1Bcv; Thu, 11 Sep 2025 15:12:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58BFCVaI088343; Thu, 11 Sep 2025 15:12:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BFCV87088340; Thu, 11 Sep 2025 15:12:31 GMT (envelope-from git) Date: Thu, 11 Sep 2025 15:12:31 GMT Message-Id: <202509111512.58BFCV87088340@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: d20c82507278 - main - Revert "libc: Remove readdir_r(3)" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: d20c82507278e003f391c3fb04f4e49afd1537ab Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=d20c82507278e003f391c3fb04f4e49afd1537ab commit d20c82507278e003f391c3fb04f4e49afd1537ab Author: Dag-Erling Smørgrav AuthorDate: 2025-09-11 15:12:22 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-11 15:12:22 +0000 Revert "libc: Remove readdir_r(3)" This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4. --- ObsoleteFiles.inc | 3 --- include/dirent.h | 4 ++++ lib/libc/gen/Makefile.inc | 1 + lib/libc/gen/Symbol.map | 1 + lib/libc/gen/directory.3 | 51 +++++++++++++++++++++++++++++++++++++---- lib/libc/gen/gen-compat.h | 1 - lib/libc/gen/gen-private.h | 3 +++ lib/libc/gen/readdir-compat11.c | 2 +- lib/libc/gen/readdir.c | 8 +++---- 9 files changed, 61 insertions(+), 13 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 5fe01af2eea7..02a727d631bd 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,9 +51,6 @@ # xargs -n1 | sort | uniq -d; # done -# 20250910: readdir_r(3) removed -OLD_FILES+=usr/share/man/man3/readdir_r.3.gz - # 20250826: Remove a misspelled manual OLD_FILES+=usr/share/man/man3/sysdecode_syscallnames.3.gz diff --git a/include/dirent.h b/include/dirent.h index 8df38a707856..7fcdceb10b23 100644 --- a/include/dirent.h +++ b/include/dirent.h @@ -115,6 +115,10 @@ DIR *opendir(const char *); DIR *fdopendir(int); struct dirent * readdir(DIR *); +#if __POSIX_VISIBLE >= 199506 || __XSI_VISIBLE >= 500 +int readdir_r(DIR *, struct dirent *, struct dirent **) + __deprecated1("Does not take variable {NAME_MAX} into account"); +#endif void rewinddir(DIR *); #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 700 int scandir(const char *, struct dirent ***, diff --git a/lib/libc/gen/Makefile.inc b/lib/libc/gen/Makefile.inc index c32f514d7176..4d064d18d36e 100644 --- a/lib/libc/gen/Makefile.inc +++ b/lib/libc/gen/Makefile.inc @@ -342,6 +342,7 @@ MLINKS+=directory.3 closedir.3 \ directory.3 fdopendir.3 \ directory.3 opendir.3 \ directory.3 readdir.3 \ + directory.3 readdir_r.3 \ directory.3 rewinddir.3 \ directory.3 seekdir.3 \ directory.3 telldir.3 diff --git a/lib/libc/gen/Symbol.map b/lib/libc/gen/Symbol.map index 86a8712ef12f..26f638568efc 100644 --- a/lib/libc/gen/Symbol.map +++ b/lib/libc/gen/Symbol.map @@ -418,6 +418,7 @@ FBSD_1.5 { globfree; nftw; readdir; + readdir_r; scandir; sem_clockwait_np; setproctitle_fast; diff --git a/lib/libc/gen/directory.3 b/lib/libc/gen/directory.3 index a92d51980aab..263dfdd6eb95 100644 --- a/lib/libc/gen/directory.3 +++ b/lib/libc/gen/directory.3 @@ -25,13 +25,14 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 5, 2025 +.Dd August 1, 2020 .Dt DIRECTORY 3 .Os .Sh NAME .Nm opendir , .Nm fdopendir , .Nm readdir , +.Nm readdir_r , .Nm telldir , .Nm seekdir , .Nm rewinddir , @@ -49,6 +50,8 @@ .Fn fdopendir "int fd" .Ft struct dirent * .Fn readdir "DIR *dirp" +.Ft int +.Fn readdir_r "DIR *dirp" "struct dirent *entry" "struct dirent **result" .Ft long .Fn telldir "DIR *dirp" .Ft void @@ -62,6 +65,15 @@ .Ft int .Fn dirfd "DIR *dirp" .Sh DESCRIPTION +.Bf -symbolic +The +.Fn readdir_r +interface is deprecated +because it cannot be used correctly unless +.Brq Va NAME_MAX +is a fixed value. +.Ef +.Pp The .Fn opendir function @@ -100,6 +112,7 @@ or to modify the state of the associated description other than by means of .Fn closedir , .Fn readdir , +.Fn readdir_r , or .Fn rewinddir , the behavior is undefined. @@ -131,6 +144,34 @@ may be set to any of the values documented for the system call. .Pp The +.Fn readdir_r +function +provides the same functionality as +.Fn readdir , +but the caller must provide a directory +.Fa entry +buffer to store the results in. +The buffer must be large enough for a +.Vt struct dirent +with a +.Va d_name +array with +.Brq Va NAME_MAX ++ 1 elements. +If the read succeeds, +.Fa result +is pointed at the +.Fa entry ; +upon reaching the end of the directory +.Fa result +is set to +.Dv NULL . +The +.Fn readdir_r +function +returns 0 on success or an error number to indicate failure. +.Pp +The .Fn telldir function returns a token representing the current location associated with the named @@ -264,7 +305,9 @@ is not associated with a directory. .Pp The .Fn readdir -function may also fail and set +and +.Fn readdir_r +functions may also fail and set .Va errno for any of the errors specified for the routine .Xr getdents 2 . @@ -295,6 +338,7 @@ The .Fn fdopendir , .Fn opendir , .Fn readdir , +.Fn readdir_r , .Fn rewinddir , .Fn seekdir and @@ -347,8 +391,7 @@ will always set the correct location to return the same value as that last .Fn readdir performed. This is enough for some applications which want to -.Dq push back the last entry read , -e.g. Samba. +"push back the last entry read", e.g., Samba. Seeks back to any other location, other than the beginning of the directory, may result in unexpected behaviour if deletes are present. diff --git a/lib/libc/gen/gen-compat.h b/lib/libc/gen/gen-compat.h index 4518c3f130d1..08e80ede6b6e 100644 --- a/lib/libc/gen/gen-compat.h +++ b/lib/libc/gen/gen-compat.h @@ -37,7 +37,6 @@ struct freebsd11_dirent; struct freebsd11_stat; struct freebsd11_statfs; -int freebsd15_readdir_r(DIR *, struct dirent *, struct dirent **); struct freebsd11_dirent *freebsd11_readdir(DIR *); int freebsd11_readdir_r(DIR *, struct freebsd11_dirent *, struct freebsd11_dirent **); diff --git a/lib/libc/gen/gen-private.h b/lib/libc/gen/gen-private.h index 97dd41ffbdfc..b6749b3435cd 100644 --- a/lib/libc/gen/gen-private.h +++ b/lib/libc/gen/gen-private.h @@ -60,4 +60,7 @@ struct _dirdesc { #define _dirfd(dirp) ((dirp)->dd_fd) +struct dirent; +int __readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); + #endif /* !_GEN_PRIVATE_H_ */ diff --git a/lib/libc/gen/readdir-compat11.c b/lib/libc/gen/readdir-compat11.c index 71c223f00b5a..606e15bd7b36 100644 --- a/lib/libc/gen/readdir-compat11.c +++ b/lib/libc/gen/readdir-compat11.c @@ -95,7 +95,7 @@ freebsd11_readdir_r(DIR *dirp, struct freebsd11_dirent *entry, struct dirent xentry, *xresult; int error; - error = freebsd15_readdir_r(dirp, &xentry, &xresult); + error = __readdir_r(dirp, &xentry, &xresult); if (error != 0) return (error); if (xresult != NULL) { diff --git a/lib/libc/gen/readdir.c b/lib/libc/gen/readdir.c index d0bbe72237e1..94d2b2e8d877 100644 --- a/lib/libc/gen/readdir.c +++ b/lib/libc/gen/readdir.c @@ -41,8 +41,6 @@ #include "gen-private.h" #include "telldir.h" -#include "gen-compat.h" - /* * get next entry in a directory. */ @@ -106,7 +104,7 @@ readdir(DIR *dirp) } int -freebsd15_readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) +__readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) { struct dirent *dp; int saved_errno; @@ -135,4 +133,6 @@ freebsd15_readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) return (0); } -__sym_compat(readdir_r, freebsd15_readdir_r, FBSD_1.5); +__strong_reference(__readdir_r, readdir_r); +__warn_references(readdir_r, + "warning: this program uses readdir_r(), which is unsafe."); From nobody Thu Sep 11 15:16:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN1Nd2SNNz66nYY; Thu, 11 Sep 2025 15:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN1Nd1xV7z42f7; Thu, 11 Sep 2025 15:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757603777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YzYZmlBvmXrQcCsoLVQPDxmrpTGfYYEh/Rt55G9DI2A=; b=uq8cwbUq+C8s0dr8Bj8rGd4GI3wFy4irJvxPDRjIH1jMqyiNMhypPz7D3LjdmV+sFvigqK 5HaBmZtJMpW6DZ992eFoshNvUJxgLHqlo9ENii/CjKD3Iu6JmqEbdGJ304Jv2j2raHJofr NkGliHU60s/q2n0Y9XZjnmcLrcitqfq4sEsiabYeFwAGsDbmNDCCvAmrHEjIvlfFuwqjSt 6+HAGyquh9Ws7UgUZSlXT9fWyqD5SgC9lUJtkJ660lxAGxY0f2xsFsAsKI2p2epl1+pMtS qP/JXxA3Qm/rCLRKVaJRrqtJjbjxYph92ESE2t0BZTKu6U+J8O75urEYuKGhqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757603777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YzYZmlBvmXrQcCsoLVQPDxmrpTGfYYEh/Rt55G9DI2A=; b=EWFJqudc53QjhHFZ132Hok9rNLi62RlQLQvn/Lm7pUDmmZO6Xil8nZDsBYSOLIcox7Dj2G nCBJPCHv5yF7VV36i0T0m3kFaxshA9mqc9mUHRWWHb7U3dlu/ylS8goMmYT4N+qs1opJt2 bRPjgofUD5BbMOOknr14RtB9CQxoKPBaWC3dLHI/oBG4XBMpkZsMuOpw9hlVmYs+MLQD6S fyjyhFwwDfb3YYs0q28dAXT0ZMWl2JkEf0pXX/23MpZLxl2hhZRDmmNomuAy/nP5PGYj0S j5C5TBUihiBeEnr35qRGqCGlatKMrheJevLVUEFuuB13199bvv1+htx8Tm2scA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757603777; a=rsa-sha256; cv=none; b=rqVIVROpQAiNViS1OAwznUGFb8qRxUX2FtFBWgZaHvWyi23sJql72nED7QfJV4pHHcVfZI uOpG10ETRBNMs+1lMDLHnLTDX5djXcWXnEwsnxrrUTrmI1B27BZCRJCcJhDhTqVsKrk8GB cyA/DDxySHWQGt4BjdoKBTmGhDAsjnSywShZAIBlmzpH+BT7J1oeEPeUEUn0BCRH5yteD7 aUklp5aJ+lVz6SaDQhLpHdvgYkN+zCXb35RKJPP/+iztkPWjLHOELhJdKLk8vbpPD5//T3 hj4G8djjDUcHEGbaYCrh+bt3C3BX9ZyXu6B5H7YGY/Vyw+Ft1Xe6V4/CItFfHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN1Nd1XPBz1CBS; Thu, 11 Sep 2025 15:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58BFGHs2089861; Thu, 11 Sep 2025 15:16:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BFGHvs089858; Thu, 11 Sep 2025 15:16:17 GMT (envelope-from git) Date: Thu, 11 Sep 2025 15:16:17 GMT Message-Id: <202509111516.58BFGHvs089858@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 3c38dce87ecd - main - LinuxKPI: 802.11: avoid recursive wiphy lock List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 3c38dce87ecd2c87744e4b7ff1904ee841f88a47 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=3c38dce87ecd2c87744e4b7ff1904ee841f88a47 commit 3c38dce87ecd2c87744e4b7ff1904ee841f88a47 Author: Bjoern A. Zeeb AuthorDate: 2025-09-11 14:44:10 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-09-11 15:13:34 +0000 LinuxKPI: 802.11: avoid recursive wiphy lock When freeing the last reference of the net80211 node the net80211 node_free() code may directly call into the crypto code to delete the keys. While we still holding the wiphy lock this would lead to a recursion on the non-recursive wiphy lock. Defer freeing the reference until we are back under the net80211 com lock. Reported by: Mark Phillips (mark freebsdfoundation.org) on 15.0-ALPHA1 MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_80211.c | 54 ++++++++++++++++++---------- 1 file changed, 36 insertions(+), 18 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index d00734001a59..bc4b334de28e 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2568,12 +2568,6 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int lvif->lvif_bss_synched = false; LKPI_80211_LVIF_UNLOCK(lvif); lkpi_lsta_remove(lsta, lvif); - /* - * The very last release the reference on the ni for the ni/lsta on - * lvif->lvif_bss. Upon return from this both ni and lsta are invalid - * and potentially freed. - */ - ieee80211_free_node(ni); /* conf_tx */ @@ -2582,6 +2576,18 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int out: wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); + if (error == 0) { + /* + * We do this outside the wiphy lock as net80211::node_free() may call + * into crypto code to delete keys and we have a recursed on + * non-recursive sx panic. Also only do this if we get here w/o error. + * + * The very last release the reference on the ni for the ni/lsta on + * lvif->lvif_bss. Upon return from this both ni and lsta are invalid + * and potentially freed. + */ + ieee80211_free_node(ni); + } return (error); } @@ -2906,12 +2912,6 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i lvif->lvif_bss_synched = false; LKPI_80211_LVIF_UNLOCK(lvif); lkpi_lsta_remove(lsta, lvif); - /* - * The very last release the reference on the ni for the ni/lsta on - * lvif->lvif_bss. Upon return from this both ni and lsta are invalid - * and potentially freed. - */ - ieee80211_free_node(ni); /* conf_tx */ @@ -2921,6 +2921,18 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i out: wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); + if (error == EALREADY) { + /* + * We do this outside the wiphy lock as net80211::node_free() may call + * into crypto code to delete keys and we have a recursed on + * non-recursive sx panic. Also only do this if we get here w/o error. + * + * The very last release the reference on the ni for the ni/lsta on + * lvif->lvif_bss. Upon return from this both ni and lsta are invalid + * and potentially freed. + */ + ieee80211_free_node(ni); + } outni: return (error); } @@ -3522,12 +3534,6 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int lvif->lvif_bss = NULL; lvif->lvif_bss_synched = false; LKPI_80211_LVIF_UNLOCK(lvif); - /* - * The very last release the reference on the ni for the ni/lsta on - * lvif->lvif_bss. Upon return from this both ni and lsta are invalid - * and potentially freed. - */ - ieee80211_free_node(ni); /* conf_tx */ @@ -3537,6 +3543,18 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int out: wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); + if (error == EALREADY) { + /* + * We do this outside the wiphy lock as net80211::node_free() may call + * into crypto code to delete keys and we have a recursed on + * non-recursive sx panic. Also only do this if we get here w/o error. + * + * The very last release the reference on the ni for the ni/lsta on + * lvif->lvif_bss. Upon return from this both ni and lsta are invalid + * and potentially freed. + */ + ieee80211_free_node(ni); + } outni: return (error); } From nobody Thu Sep 11 15:49:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN27D19Mkz66qGZ; Thu, 11 Sep 2025 15:49:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN27D0hqmz49mm; Thu, 11 Sep 2025 15:49:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757605784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X1f8vKEIgoO7+lIEgmI/NgG6Y6fSXHCNNmU20ibnI10=; b=LMYoFO60fg2mRPov96GEL03Cn5hSEbOmGfcBqq7R8X51oYTSfXsqQqw5Y5yIj/R6oIoWM3 xEUxeALESFdjDAAIxbVjL1hF8D4LbRBWP7f1kwXEvBR1aEFnYudSttgzadg7Q93AKpmCIi kYjuY3fXUfHt/tuRN9KiILke3z5MpPSw9d/d3kgP/8E6wNtmfdUjhDKPMMoW9Ohoz44hgf DqYoyPELzWGJaV2N8K8Xz2yiPBYskhuyqNoHDB5ZABeKX5BB+JhACizVI7eS3HGveIa0SX ZMxHdT49cdyum7Ub506l0V1F9IXjP/TI7he7X73MAtBbJ+jh0Dt+dsbW9bo3KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757605784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X1f8vKEIgoO7+lIEgmI/NgG6Y6fSXHCNNmU20ibnI10=; b=FKNpgqeQMsUM1y3cm1YAVK5dyXtZOXWPKUSDxuR3VVSyCNRhYULWO/WfgzHJjYzl88SwkM iaGVVIovD9lA4sH1238w8zej7orDlQh3NZcQRjaC+IsxWRP7h0R3uzYlO3aND6NL1QpUao i6UEVhgpMVVP5F6v/4bsiKdwGzRulbib8nNEclVrFFucHgkC+qTpKuVCL99wEMTxWaEus7 ccCC9IVSYghbt0XwTy0G4/qgPUr6f3xhpie7uRfdavVu/N+ygkm9KuOTh4IDBb0huZRntl XyagZnyJe1eyWdA/BDNujkHWLVZWZbZZ2OunnZdDH9lAy4w1R8UXLZZ9RWgJtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757605784; a=rsa-sha256; cv=none; b=ZhjB3iok9w372f3n3uolpO5ZO1I9OQ3M1cSMnMrtzILOwKLBmCj2PWN61tcklw8MQgHo1q I0sZPcHMQ0zjsAJ3LKLtdooZfTELCJacE7OD08/9/ulr4Vl0/vV+7qpLOxCDyLTSKthJP8 zhf86NaczLzLgsqtMk65j6dGYl/911aFAtWt8awlmBQMfenWuOdViwdovuENcgd0lTkggc CUPWYxObJIJM2EHdO4Cphp+aKyRIN0MwC1I8zti+Dqh3XDyY2fSVAoGIFmBMNxjddODdQv Ypc43OUYKFLy0YsdxzZtjY1iDmZPLwjmW6OUSsj9cVh2vIKHDAXNZ39co1Sb5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN27D0DpNz1Cdn; Thu, 11 Sep 2025 15:49: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 58BFnh7v046818; Thu, 11 Sep 2025 15:49:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BFnhrT046815; Thu, 11 Sep 2025 15:49:43 GMT (envelope-from git) Date: Thu, 11 Sep 2025 15:49:43 GMT Message-Id: <202509111549.58BFnhrT046815@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Toomas Soome Subject: git: ed19c4ff846e - main - loader.efi: improve StartImage error message List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tsoome X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ed19c4ff846e09e00d8e2a756845261e2b6b7345 Auto-Submitted: auto-generated The branch main has been updated by tsoome: URL: https://cgit.FreeBSD.org/src/commit/?id=ed19c4ff846e09e00d8e2a756845261e2b6b7345 commit ed19c4ff846e09e00d8e2a756845261e2b6b7345 Author: Toomas Soome AuthorDate: 2025-09-04 12:24:25 +0000 Commit: Toomas Soome CommitDate: 2025-09-11 15:47:53 +0000 loader.efi: improve StartImage error message StartImage() may return additional data from failure. This data has text message followed by optional binary blob. Print out the text message (if present) and free the data. See 7.4.2 EFI_BOOT_SERVICES.StartImage() page 199 UEFI_Spec_Final_2.11.pdf. Reviewed by: imp --- stand/efi/loader/main.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 208b8b424e60..3e179bd4296c 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -1854,6 +1854,8 @@ command_chain(int argc, char *argv[]) EFI_GUID LoadedImageGUID = LOADED_IMAGE_PROTOCOL; EFI_HANDLE loaderhandle; EFI_LOADED_IMAGE *loaded_image; + UINTN ExitDataSize; + CHAR16 *ExitData = NULL; EFI_STATUS status; struct stat st; struct devdesc *dev; @@ -1969,9 +1971,16 @@ command_chain(int argc, char *argv[]) } dev_cleanup(); - status = BS->StartImage(loaderhandle, NULL, NULL); + + status = BS->StartImage(loaderhandle, &ExitDataSize, &ExitData); if (status != EFI_SUCCESS) { - command_errmsg = "StartImage failed"; + printf("StartImage failed (%lu)", EFI_ERROR_CODE(status)); + if (ExitData != NULL) { + printf(": %S", ExitData); + BS->FreePool(ExitData); + } + putchar('\n'); + command_errmsg = ""; free(loaded_image->LoadOptions); loaded_image->LoadOptions = NULL; status = BS->UnloadImage(loaded_image); From nobody Thu Sep 11 15:55:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN2Fj0G8yz66qbp; Thu, 11 Sep 2025 15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN2Fh6gYhz3Chh; Thu, 11 Sep 2025 15:55:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606121; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIZR7lM8r7flhPhFFXxK5iVBuiTa/E4AU5ECSfwV+gw=; b=uShKrU5lWBUX3ocn4a7izIC2zlIv7H66/aFY8fDoJFtsYQeFA/JsRTeP0sBSGRF2ormB8Q +2xVAJOUqUdMNzXTAu42C1pznnhwNHB18rird+yLDiE/sg1WKRWRNR9WnSk92k0mP/+me3 EnogU44ks2eHc1lUWNxYYcrsADKAA0QTVbIh0NiyUA1kK2MYEXjHVsnWEMQK/wFHBcmETa MatGDj/k/d64JZxDTgzA8Ed21skBNXBdMNm62pECPw49ZbYdar2jh6HKBDz4x889Uf7AVJ a++UtGTlf9So5TawJTH753TUrdKInjZr2anflFDx7sa41r4w03btmJ4EfSfA+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606121; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIZR7lM8r7flhPhFFXxK5iVBuiTa/E4AU5ECSfwV+gw=; b=HMtumaGt1+Dpk7FoPu3+oA/gKHTd+kLe48ubrG2ytcwVPCHg1w0COxn9JWRLCX4d3cmbtF 8hqDtW0Duim/jP3u1R3Q4ccKLufesD5kwYfs3kUprs538o5GpsxaGwaU5Yvdr8VsVqJK4d 2VAmkBTOxlOThx/Dg3smQK0kQgxwDxJUK3lmrVz2r5FHVwzTCyHn7TMaA8c8hIcmSX9wcq QTHVlwXHDdmopV07iFPG0ObTKafqHaSzBtW1cEilK/i5CeeI8xU3TozR4Yee6/dm+utMhc NQyHQil+rz3XiUNI5S13gW6aM2QuYPsH8TEPRNn2DfHID/D976P3eiQcoiHdEQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757606121; a=rsa-sha256; cv=none; b=em7bToeDXEcdFyJydV5G41upVlOuAux9bJ5ql3BodrJm3tMN8YeH4XPz92ZDVeWjj7woh5 4mq4dyyA4C1MWT5u0w0YcjKOE/Nz5yCDpvL5B9v9z/04MhY7wckS8dTlhonBYW/360xmXL YlVfBGSf6rSXjhE50NO52jy852DC0WXq2GXzz2jRnH9l8H9w/N6nElIQnJim4YRLo/3r6z coyPDfQoHOrY/QS7vVxOJ27XMZAny7o+nzLn+0X7Jz2KkQXKYLM6DdS6ABkuscIQ6Opbnd 5RxzCRLLLHaLlX+UZRaldUEi5VJaj24ri1+u3g1S5i/vLEEmwH0UkIqqG4q4tQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN2Fh69B5z1C4s; Thu, 11 Sep 2025 15:55: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 58BFtK6p064038; Thu, 11 Sep 2025 15:55:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BFtKUF064035; Thu, 11 Sep 2025 15:55:20 GMT (envelope-from git) Date: Thu, 11 Sep 2025 15:55:20 GMT Message-Id: <202509111555.58BFtKUF064035@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: e584c46d8b60 - main - sys/efi.h: Some style(9) tweaks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: e584c46d8b60662ffb1f67c41dec13f391d3f199 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e584c46d8b60662ffb1f67c41dec13f391d3f199 commit e584c46d8b60662ffb1f67c41dec13f391d3f199 Author: Zhenlei Huang AuthorDate: 2025-09-11 15:53:34 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-11 15:53:34 +0000 sys/efi.h: Some style(9) tweaks MFC after: 3 days --- sys/sys/efi.h | 67 +++++++++++++++++++++++++++++------------------------------ 1 file changed, 33 insertions(+), 34 deletions(-) diff --git a/sys/sys/efi.h b/sys/sys/efi.h index 89c8b15519de..f82c733898b4 100644 --- a/sys/sys/efi.h +++ b/sys/sys/efi.h @@ -40,9 +40,9 @@ {0xf2fd1544,0x9794,0x4a2c,{0x99,0x2e,0xe5,0xbb,0xcf,0x20,0xe3,0x94}} #define EFI_TABLE_ESRT \ {0xb122a263,0x3661,0x4f68,{0x99,0x29,0x78,0xf8,0xb0,0xd6,0x21,0x80}} -#define EFI_PROPERTIES_TABLE \ +#define EFI_PROPERTIES_TABLE \ {0x880aaca3,0x4adc,0x4a04,{0x90,0x79,0xb7,0x47,0x34,0x08,0x25,0xe5}} -#define EFI_MEMORY_ATTRIBUTES_TABLE \ +#define EFI_MEMORY_ATTRIBUTES_TABLE \ {0xdcfa911d,0x26eb,0x469f,{0xa2,0x20,0x38,0xb7,0xdc,0x46,0x12,0x20}} #define LINUX_EFI_MEMRESERVE_TABLE \ {0x888eb0c6,0x8ede,0x4ff5,{0xa8,0xf0,0x9a,0xee,0x5c,0xb9,0x77,0xc2}} @@ -54,7 +54,7 @@ enum efi_reset { }; typedef uint16_t efi_char; -typedef unsigned long efi_status; +typedef unsigned long efi_status; /* * This type-puns to a struct uuid, but all the EDK2 headers use this variation, @@ -62,10 +62,10 @@ typedef unsigned long efi_status; * can use EDK2 definitions both places. */ typedef struct efi_guid { - uint32_t Data1; - uint16_t Data2; - uint16_t Data3; - uint8_t Data4[8]; + uint32_t Data1; + uint16_t Data2; + uint16_t Data3; + uint8_t Data4[8]; } efi_guid_t; /* Type puns with GUID and EFI_GUID */ struct efi_cfgtbl { @@ -293,100 +293,99 @@ struct efi_ops { extern const struct efi_ops *active_efi_ops; /* Public MI EFI functions */ -static inline int efi_rt_ok(void) +static inline int +efi_rt_ok(void) { - if (active_efi_ops->rt_ok == NULL) return (ENXIO); return (active_efi_ops->rt_ok()); } -static inline int efi_get_table(efi_guid_t *guid, void **ptr) +static inline int +efi_get_table(efi_guid_t *guid, void **ptr) { - if (active_efi_ops->get_table == NULL) return (ENXIO); return (active_efi_ops->get_table(guid, ptr)); } -static inline int efi_copy_table(efi_guid_t *guid, void **buf, - size_t buf_len, size_t *table_len) +static inline int +efi_copy_table(efi_guid_t *guid, void **buf, size_t buf_len, size_t *table_len) { - if (active_efi_ops->copy_table == NULL) return (ENXIO); return (active_efi_ops->copy_table(guid, buf, buf_len, table_len)); } -static inline int efi_get_time(struct efi_tm *tm) +static inline int +efi_get_time(struct efi_tm *tm) { - if (active_efi_ops->get_time == NULL) return (ENXIO); return (active_efi_ops->get_time(tm)); } -static inline int efi_get_time_capabilities(struct efi_tmcap *tmcap) +static inline int +efi_get_time_capabilities(struct efi_tmcap *tmcap) { - if (active_efi_ops->get_time_capabilities == NULL) return (ENXIO); return (active_efi_ops->get_time_capabilities(tmcap)); } -static inline int efi_reset_system(enum efi_reset type) +static inline int +efi_reset_system(enum efi_reset type) { - if (active_efi_ops->reset_system == NULL) return (ENXIO); return (active_efi_ops->reset_system(type)); } -static inline int efi_set_time(struct efi_tm *tm) +static inline int +efi_set_time(struct efi_tm *tm) { - if (active_efi_ops->set_time == NULL) return (ENXIO); return (active_efi_ops->set_time(tm)); } -static inline int efi_get_waketime(uint8_t *enabled, uint8_t *pending, - struct efi_tm *tm) +static inline int +efi_get_waketime(uint8_t *enabled, uint8_t *pending, struct efi_tm *tm) { if (active_efi_ops->get_waketime == NULL) return (ENXIO); return (active_efi_ops->get_waketime(enabled, pending, tm)); } -static inline int efi_set_waketime(uint8_t enable, struct efi_tm *tm) +static inline int +efi_set_waketime(uint8_t enable, struct efi_tm *tm) { if (active_efi_ops->set_waketime == NULL) return (ENXIO); return (active_efi_ops->set_waketime(enable, tm)); } -static inline int efi_var_get(uint16_t *name, efi_guid_t *vendor, - uint32_t *attrib, size_t *datasize, void *data) +static inline int +efi_var_get(uint16_t *name, efi_guid_t *vendor, uint32_t *attrib, + size_t *datasize, void *data) { - if (active_efi_ops->var_get == NULL) return (ENXIO); return (active_efi_ops->var_get(name, vendor, attrib, datasize, data)); } -static inline int efi_var_nextname(size_t *namesize, uint16_t *name, - efi_guid_t *vendor) +static inline int +efi_var_nextname(size_t *namesize, uint16_t *name, efi_guid_t *vendor) { - if (active_efi_ops->var_nextname == NULL) return (ENXIO); return (active_efi_ops->var_nextname(namesize, name, vendor)); } -static inline int efi_var_set(uint16_t *name, efi_guid_t *vendor, - uint32_t attrib, size_t datasize, void *data) +static inline int +efi_var_set(uint16_t *name, efi_guid_t *vendor, uint32_t attrib, + size_t datasize, void *data) { - if (active_efi_ops->var_set == NULL) return (ENXIO); return (active_efi_ops->var_set(name, vendor, attrib, datasize, data)); From nobody Thu Sep 11 15:55:21 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN2Fk0yrtz66qqk; Thu, 11 Sep 2025 15:55:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN2Fk04rFz3CV4; Thu, 11 Sep 2025 15:55:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qPoKx+Fgzth1IBjmxmErhY8EQVfYUIHZRNg5L+j2qVk=; b=q5vggyy1QgDasTNCwCsNNn2NC/3geLNET3Zp97PLJLVSGz4yqgv0CemWeiygL7GVT8NHJ7 2M6RvsxtzQCDrVpeKSEy50Aiv6tsFdteq4S/GXr3eF0PylvCSfoXm9MWYI/2f33CIrHlcH VfabyJsgw144TdFF27oSSlxqirpD/f3jCZzcp37z5POQz+eogUiWvmbQmQ8KJ8NH6ZZgsK QaOTdbQN6gOFFyrgIg/DC7akp6qWWey7tPJQBdArNV5vdeBmt3Jw8OgOyF3sJqfj8MBThi bTGVrjaV5wZ3FGOj8Y2lLY1gRrIeIYD1Xjdt+CBlnBT6/D4LKDFi0CtDdox5FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qPoKx+Fgzth1IBjmxmErhY8EQVfYUIHZRNg5L+j2qVk=; b=jh6Sv9GbYaVw190kpIiy739dKBMvxEHPQU6HhXBmyculA4QYo2WgGZJvjt7oY4OtvvQmJj I3gX7EQLqA7IEtVBqI/PtejF0Dq8yNNQPVWdvipfdHC2O00+/ArQtRZjRRzOrwmo36KKAe 0o4c1yDezo7XhFau5Cj1KMc4IbV+gLe+Qoo5LOStRLsG81PCBzo/eDTUJ0gdv8i3Jlf7Vn GN3aNYqLZpjnsgI0fkfFgxZ+Q4IF5ugn1L1aA6uhHY6jPd4U0Sbit8UMqur7DNWwk1DqZd DOM/4zXvlWMj/sgYzYB9t831pjIDoBzg5/e+41iqYBySt4yry1Sw/55z5rUtHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757606122; a=rsa-sha256; cv=none; b=UWg3WZ6sPORpLCoVMg+KTBvzrizWXSTpdVJrwrWfXHyHUDTWCa+8Jm1CHW1QX9nfrpQKzF naGpeWO9zWfc3ntBjy9YHBK7wLg2+yT40+W+OtrjN1h78GyGzpscfEj598Tz8JOrB3W5Vd IxJhI0aj1BserAE7eFcbnjDRhtlIM6iMTKxV8X3zGx4cuJgmA0nKAGUmL3+cToh1dDAs8X oN8g6bWnuFsjIUk3i4RXuVdeiCH2/kCZeGAKSVGN+H1pRTBFdgZe3YMhd1HaKyc4p1O8Av TXDwpycKf4H8+6q7eSetf7S+iQrHMpdnJWk+cari3tuJls1McD5fNYVlBTEzNg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN2Fj6lt4z1CQk; Thu, 11 Sep 2025 15: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 58BFtLaK064071; Thu, 11 Sep 2025 15: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 58BFtLVK064068; Thu, 11 Sep 2025 15:55:21 GMT (envelope-from git) Date: Thu, 11 Sep 2025 15:55:21 GMT Message-Id: <202509111555.58BFtLVK064068@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: dd1410321713 - main - git-blame-ignore-revs: sys/efi.h style(9) tweaks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: dd1410321713ce20b03680df477ea8de37619b54 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=dd1410321713ce20b03680df477ea8de37619b54 commit dd1410321713ce20b03680df477ea8de37619b54 Author: Zhenlei Huang AuthorDate: 2025-09-11 15:53:34 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-11 15:54:06 +0000 git-blame-ignore-revs: sys/efi.h style(9) tweaks MFC after: 3 days --- .git-blame-ignore-revs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 0cd1884c0bbf..6b69648ac002 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -8,6 +8,8 @@ # # This file is sorted in git log order (newest commits first). +# sys/efi.h style(9) tweaks +e584c46d8b60662ffb1f67c41dec13f391d3f199 # sys/cpu.h style(9) fixes 0737e2a961cd712fff5b548bb6b823e48a8b527d # witness white space cleanup and style(9) tweeks From nobody Thu Sep 11 16:08:16 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN2Xc5W2Xz66rmN; Thu, 11 Sep 2025 16:08:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN2Xc3TXwz3FT8; Thu, 11 Sep 2025 16:08:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606896; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1HccdKH8rkcdCjIf35GG80fBUQBNHYDeURUP/0bQBTY=; b=JOsK4aYEsFtyuB4y4PKVAEkUIlw1/XczQYVSTmkujpEiuiyhW5IhnJBLyNEzSQP18WhNiG dSFAbzpUFhOPQyl+mBL4CQ74ekPJSEeLEbrr7ti5tLbKrs0EM5kIEDoAvSfYsectP5QBYQ 0zLrypMEi/Lr+1ecBxZZPx2xuTHd5OYVsL0A6uagbyHSAs+z1Sb+0F5h7Y8pP5EcmPbwdK gRxv4yD2h3OEqUjLPaVe+ljlVJC56PHpLIYeLb+ENtcRrymek4TsnWzcQFL+oqYnjCjDYM 8KN2c1tHvaUUCkJU/bJePzTsLOgKxALajAymxynbRpEiWBcoQ7jbf+c7N5aTbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606896; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1HccdKH8rkcdCjIf35GG80fBUQBNHYDeURUP/0bQBTY=; b=u0CHxUtWG+BsQsVR7qVNU8SZgTndOry1szkXsSaeYTpg10hkqml4s/iBJrJ8TMIs/wzFyN TBW/aQa4AHe6rz2L6VavGfNCA6eWElwctJVaj+k+PPI0Bdjd7C5w6XrtUkBLwvkFsmsIxv Bc6DqErs7sHbdKs75L3KQxElrdj3eHZroLCDZjjDiSCk1fiTTIkIKYkYz5ldNimaM3q+lW L+E+oiaWSN4CtnVNmmKjlbmYBDIlEqLvD/6CA03hl48b6euOBqH/ZIp78YwWwVcNppTaLj hTziDwkAv8a/E4/rQdx+xMbtPM+octrR22e6a1IFZ4y8kcy2Yjz9ipX5PYegjg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757606896; a=rsa-sha256; cv=none; b=BFjVY41tZScBz9Y1Cz/EOq3EnyNky/CTngYPf6gCVpyLAn1ODZgLZAwynbPbtcHuzN8O/m XFZZYnL61qvgNn3ibIHbPG0i9Moi2RkWH7Ykuuv76baZejFo2ObsMPkWBJlTHNopDYZvSw GLKU+3pOiDYgGkN68LytC0cNd9NNlXrV4Aj6xn07T6PnaqhYU75+COXXkt9oYMvuZF+bYM AginhQEbLN3/Rgj2TkljDZhfkBooHwK4oe2BYzMOWQ9fRYhaYje2DJzTCf0M/0jdt1d7q1 dUhhhMo8N1MUY3qLjE46AjfWIfHgPO2aRaPBIXPF0/r3QiiGym72GAq0rxAxxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN2Xc34sjz4c; Thu, 11 Sep 2025 16:08: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 58BG8GM5085478; Thu, 11 Sep 2025 16:08:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BG8GBe085475; Thu, 11 Sep 2025 16:08:16 GMT (envelope-from git) Date: Thu, 11 Sep 2025 16:08:16 GMT Message-Id: <202509111608.58BG8GBe085475@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 5daf8ed625af - main - ossl: Add GCM support on powerpc64/powerpc64le (POWER8+) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 5daf8ed625af70ebb7e4740ab98a6054e9e52329 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=5daf8ed625af70ebb7e4740ab98a6054e9e52329 commit 5daf8ed625af70ebb7e4740ab98a6054e9e52329 Author: Timothy Pearson AuthorDate: 2025-09-10 16:54:24 +0000 Commit: Mark Johnston CommitDate: 2025-09-11 16:08:05 +0000 ossl: Add GCM support on powerpc64/powerpc64le (POWER8+) Separate ossl's existing AES-NI GCM implementation into a common ossl_aes_gcm.c and add conditionals to switch between OpenSSL's AES-NI and POWER8 GCM routines depending on the architecture. Since the existing AVX-512 implementation is less agnostic, move it into a separate ossl_aes_gcm_avx512.c. Reviewed by: markj MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D44274 --- sys/conf/files.amd64 | 3 +- sys/conf/files.arm | 2 +- sys/conf/files.powerpc | 3 + sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c | 232 ++++++++++++ .../arm/{ossl_aes_gcm.c => ossl_aes_gcm_neon.c} | 0 sys/crypto/openssl/{amd64 => }/ossl_aes_gcm.c | 397 ++++++++------------- sys/crypto/openssl/ossl_ppc.c | 9 +- sys/crypto/openssl/ossl_x86.c | 6 +- sys/modules/ossl/Makefile | 7 +- 9 files changed, 410 insertions(+), 249 deletions(-) diff --git a/sys/conf/files.amd64 b/sys/conf/files.amd64 index c12ab9db030a..a342242ac66e 100644 --- a/sys/conf/files.amd64 +++ b/sys/conf/files.amd64 @@ -107,7 +107,8 @@ crypto/openssl/amd64/poly1305-x86_64.S optional ossl crypto/openssl/amd64/sha1-x86_64.S optional ossl crypto/openssl/amd64/sha256-x86_64.S optional ossl crypto/openssl/amd64/sha512-x86_64.S optional ossl -crypto/openssl/amd64/ossl_aes_gcm.c optional ossl +crypto/openssl/amd64/ossl_aes_gcm_avx512.c optional ossl +crypto/openssl/ossl_aes_gcm.c optional ossl dev/amdgpio/amdgpio.c optional amdgpio dev/axgbe/if_axgbe_pci.c optional axp dev/axgbe/xgbe-desc.c optional axp diff --git a/sys/conf/files.arm b/sys/conf/files.arm index 91b01845519e..880e804b6c95 100644 --- a/sys/conf/files.arm +++ b/sys/conf/files.arm @@ -132,7 +132,7 @@ libkern/udivdi3.c standard libkern/umoddi3.c standard crypto/openssl/ossl_arm.c optional ossl -crypto/openssl/arm/ossl_aes_gcm.c optional ossl +crypto/openssl/arm/ossl_aes_gcm_neon.c optional ossl crypto/openssl/arm/aes-armv4.S optional ossl \ compile-with "${NORMAL_C} -I${SRCTOP}/sys/crypto/openssl" crypto/openssl/arm/bsaes-armv7.S optional ossl \ diff --git a/sys/conf/files.powerpc b/sys/conf/files.powerpc index d2c3aa260cd9..0deada385f31 100644 --- a/sys/conf/files.powerpc +++ b/sys/conf/files.powerpc @@ -31,9 +31,11 @@ zfs-sha512-ppc.o optional zfs \ # openssl ppc common files crypto/openssl/ossl_ppc.c optional ossl powerpc64 | ossl powerpc64le +crypto/openssl/ossl_aes_gcm.c optional ossl powerpc64 | ossl powerpc64le # openssl assembly files (powerpc64le) crypto/openssl/powerpc64le/aes-ppc.S optional ossl powerpc64le +crypto/openssl/powerpc64le/aes-gcm-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/aesp8-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/chacha-ppc.S optional ossl powerpc64le crypto/openssl/powerpc64le/ecp_nistz256-ppc64.S optional ossl powerpc64le @@ -54,6 +56,7 @@ crypto/openssl/powerpc64le/x25519-ppc64.S optional ossl powerpc64le # openssl assembly files (powerpc64) crypto/openssl/powerpc64/aes-ppc.S optional ossl powerpc64 +crypto/openssl/powerpc64/aes-gcm-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/aesp8-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/chacha-ppc.S optional ossl powerpc64 crypto/openssl/powerpc64/ecp_nistz256-ppc64.S optional ossl powerpc64 diff --git a/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c b/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c new file mode 100644 index 000000000000..694ed4fc8b32 --- /dev/null +++ b/sys/crypto/openssl/amd64/ossl_aes_gcm_avx512.c @@ -0,0 +1,232 @@ +/* + * Copyright 2010-2022 The OpenSSL Project Authors. All Rights Reserved. + * Copyright (c) 2021, Intel Corporation. All Rights Reserved. + * + * Licensed under the Apache License 2.0 (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* + * This file contains an AES-GCM wrapper implementation from OpenSSL, using + * VAES extensions. It was ported from cipher_aes_gcm_hw_vaes_avx512.inc. + */ + +#include +#include + +#include +#include +#include + +#include + +_Static_assert( + sizeof(struct ossl_gcm_context) <= sizeof(struct ossl_cipher_context), + "ossl_gcm_context too large"); + +void aesni_set_encrypt_key(const void *key, int bits, void *ctx); + +static void +gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +{ + KASSERT(keylen == 128 || keylen == 192 || keylen == 256, + ("%s: invalid key length %zu", __func__, keylen)); + + memset(&ctx->gcm, 0, sizeof(ctx->gcm)); + memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); + aesni_set_encrypt_key(key, keylen, &ctx->aes_ks); + ctx->ops->init(ctx, key, keylen); +} + +static void +gcm_tag(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) +{ + (void)ctx->ops->finish(ctx, NULL, 0); + memcpy(tag, ctx->gcm.Xi.c, len); +} + +void ossl_gcm_gmult_avx512(uint64_t Xi[2], void *gcm128ctx); +void ossl_aes_gcm_init_avx512(const void *ks, void *gcm128ctx); +void ossl_aes_gcm_setiv_avx512(const void *ks, void *gcm128ctx, + const unsigned char *iv, size_t ivlen); +void ossl_aes_gcm_update_aad_avx512(void *gcm128ctx, const unsigned char *aad, + size_t len); +void ossl_aes_gcm_encrypt_avx512(const void *ks, void *gcm128ctx, + unsigned int *pblocklen, const unsigned char *in, size_t len, + unsigned char *out); +void ossl_aes_gcm_decrypt_avx512(const void *ks, void *gcm128ctx, + unsigned int *pblocklen, const unsigned char *in, size_t len, + unsigned char *out); +void ossl_aes_gcm_finalize_avx512(void *gcm128ctx, unsigned int pblocklen); + +static void +gcm_init_avx512(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +{ + ossl_aes_gcm_init_avx512(&ctx->aes_ks, &ctx->gcm); +} + +static void +gcm_setiv_avx512(struct ossl_gcm_context *ctx, const unsigned char *iv, + size_t len) +{ + KASSERT(len == AES_GCM_IV_LEN, + ("%s: invalid IV length %zu", __func__, len)); + + ctx->gcm.Yi.u[0] = 0; /* Current counter */ + ctx->gcm.Yi.u[1] = 0; + ctx->gcm.Xi.u[0] = 0; /* AAD hash */ + ctx->gcm.Xi.u[1] = 0; + ctx->gcm.len.u[0] = 0; /* AAD length */ + ctx->gcm.len.u[1] = 0; /* Message length */ + ctx->gcm.ares = 0; + ctx->gcm.mres = 0; + + ossl_aes_gcm_setiv_avx512(&ctx->aes_ks, ctx, iv, len); +} + +static int +gcm_aad_avx512(struct ossl_gcm_context *ctx, const unsigned char *aad, + size_t len) +{ + uint64_t alen = ctx->gcm.len.u[0]; + size_t lenblks; + unsigned int ares; + + /* Bad sequence: call of AAD update after message processing */ + if (ctx->gcm.len.u[1]) + return -2; + + alen += len; + /* AAD is limited by 2^64 bits, thus 2^61 bytes */ + if (alen > (1ull << 61) || (sizeof(len) == 8 && alen < len)) + return -1; + ctx->gcm.len.u[0] = alen; + + ares = ctx->gcm.ares; + /* Partial AAD block left from previous AAD update calls */ + if (ares > 0) { + /* + * Fill partial block buffer till full block + * (note, the hash is stored reflected) + */ + while (ares > 0 && len > 0) { + ctx->gcm.Xi.c[15 - ares] ^= *(aad++); + --len; + ares = (ares + 1) % AES_BLOCK_LEN; + } + /* Full block gathered */ + if (ares == 0) { + ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); + } else { /* no more AAD */ + ctx->gcm.ares = ares; + return 0; + } + } + + /* Bulk AAD processing */ + lenblks = len & ((size_t)(-AES_BLOCK_LEN)); + if (lenblks > 0) { + ossl_aes_gcm_update_aad_avx512(ctx, aad, lenblks); + aad += lenblks; + len -= lenblks; + } + + /* Add remaining AAD to the hash (note, the hash is stored reflected) */ + if (len > 0) { + ares = (unsigned int)len; + for (size_t i = 0; i < len; ++i) + ctx->gcm.Xi.c[15 - i] ^= aad[i]; + } + + ctx->gcm.ares = ares; + + return 0; +} + +static int +_gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len, bool encrypt) +{ + uint64_t mlen = ctx->gcm.len.u[1]; + + mlen += len; + if (mlen > ((1ull << 36) - 32) || (sizeof(len) == 8 && mlen < len)) + return -1; + + ctx->gcm.len.u[1] = mlen; + + /* Finalize GHASH(AAD) if AAD partial blocks left unprocessed */ + if (ctx->gcm.ares > 0) { + ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); + ctx->gcm.ares = 0; + } + + if (encrypt) { + ossl_aes_gcm_encrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, + in, len, out); + } else { + ossl_aes_gcm_decrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, + in, len, out); + } + + return 0; +} + +static int +gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len) +{ + return _gcm_encrypt_avx512(ctx, in, out, len, true); +} + +static int +gcm_decrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, + unsigned char *out, size_t len) +{ + return _gcm_encrypt_avx512(ctx, in, out, len, false); +} + +static int +gcm_finish_avx512(struct ossl_gcm_context *ctx, const unsigned char *tag, + size_t len) +{ + unsigned int *res = &ctx->gcm.mres; + + /* Finalize AAD processing */ + if (ctx->gcm.ares > 0) + res = &ctx->gcm.ares; + + ossl_aes_gcm_finalize_avx512(ctx, *res); + + ctx->gcm.ares = ctx->gcm.mres = 0; + + if (tag != NULL) + return timingsafe_bcmp(ctx->gcm.Xi.c, tag, len); + return 0; +} + +static const struct ossl_aes_gcm_ops gcm_ops_avx512 = { + .init = gcm_init_avx512, + .setiv = gcm_setiv_avx512, + .aad = gcm_aad_avx512, + .encrypt = gcm_encrypt_avx512, + .decrypt = gcm_decrypt_avx512, + .finish = gcm_finish_avx512, + .tag = gcm_tag, +}; + +int ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, void *_ctx); + +int +ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, + void *_ctx) +{ + struct ossl_gcm_context *ctx; + + ctx = _ctx; + ctx->ops = &gcm_ops_avx512; + gcm_init(ctx, key, klen); + return (0); +} diff --git a/sys/crypto/openssl/arm/ossl_aes_gcm.c b/sys/crypto/openssl/arm/ossl_aes_gcm_neon.c similarity index 100% rename from sys/crypto/openssl/arm/ossl_aes_gcm.c rename to sys/crypto/openssl/arm/ossl_aes_gcm_neon.c diff --git a/sys/crypto/openssl/amd64/ossl_aes_gcm.c b/sys/crypto/openssl/ossl_aes_gcm.c similarity index 52% rename from sys/crypto/openssl/amd64/ossl_aes_gcm.c rename to sys/crypto/openssl/ossl_aes_gcm.c index d08b2ac8a759..e1cdc710c3aa 100644 --- a/sys/crypto/openssl/amd64/ossl_aes_gcm.c +++ b/sys/crypto/openssl/ossl_aes_gcm.c @@ -1,6 +1,7 @@ /* * Copyright 2010-2022 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2021, Intel Corporation. All Rights Reserved. + * Copyright (c) 2023, Raptor Engineering, LLC. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,11 +10,10 @@ */ /* - * This file contains 2 AES-GCM wrapper implementations from OpenSSL, using - * AES-NI and VAES extensions respectively. These were ported from - * cipher_aes_gcm_hw_aesni.inc and cipher_aes_gcm_hw_vaes_avx512.inc. The - * AES-NI implementation makes use of a generic C implementation for partial - * blocks, ported from gcm128.c with OPENSSL_SMALL_FOOTPRINT defined. + * This file contains an AES-GCM wrapper implementation from OpenSSL, using + * AES-NI (x86) or POWER8 Crypto Extensions (ppc). It was ported from + * cipher_aes_gcm_hw_aesni.inc and it makes use of a generic C implementation + * for partial blocks, ported from gcm128.c with OPENSSL_SMALL_FOOTPRINT defined. */ #include @@ -29,225 +29,152 @@ _Static_assert( sizeof(struct ossl_gcm_context) <= sizeof(struct ossl_cipher_context), "ossl_gcm_context too large"); -void aesni_set_encrypt_key(const void *key, int bits, void *ctx); - -static void -gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) -{ - KASSERT(keylen == 128 || keylen == 192 || keylen == 256, - ("%s: invalid key length %zu", __func__, keylen)); - - memset(&ctx->gcm, 0, sizeof(ctx->gcm)); - memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); - aesni_set_encrypt_key(key, keylen, &ctx->aes_ks); - ctx->ops->init(ctx, key, keylen); -} - -static void -gcm_tag(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) -{ - (void)ctx->ops->finish(ctx, NULL, 0); - memcpy(tag, ctx->gcm.Xi.c, len); -} +#if defined(__amd64__) || defined(__i386__) +#define AES_set_encrypt_key aesni_set_encrypt_key +#define AES_gcm_encrypt aesni_gcm_encrypt +#define AES_gcm_decrypt aesni_gcm_decrypt +#define AES_encrypt aesni_encrypt +#define AES_ctr32_encrypt_blocks aesni_ctr32_encrypt_blocks +#define GCM_init gcm_init_avx +#define GCM_gmult gcm_gmult_avx +#define GCM_ghash gcm_ghash_avx + +void AES_set_encrypt_key(const void *key, int bits, void *ctx); +size_t AES_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +size_t AES_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +void AES_encrypt(const unsigned char *in, unsigned char *out, void *ks); +void AES_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, + size_t blocks, void *ks, const unsigned char *iv); -void ossl_gcm_gmult_avx512(uint64_t Xi[2], void *gcm128ctx); -void ossl_aes_gcm_init_avx512(const void *ks, void *gcm128ctx); -void ossl_aes_gcm_setiv_avx512(const void *ks, void *gcm128ctx, - const unsigned char *iv, size_t ivlen); -void ossl_aes_gcm_update_aad_avx512(void *gcm128ctx, const unsigned char *aad, +void GCM_init(__uint128_t Htable[16], uint64_t Xi[2]); +void GCM_gmult(uint64_t Xi[2], const __uint128_t Htable[16]); +void GCM_ghash(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, size_t len); -void ossl_aes_gcm_encrypt_avx512(const void *ks, void *gcm128ctx, - unsigned int *pblocklen, const unsigned char *in, size_t len, - unsigned char *out); -void ossl_aes_gcm_decrypt_avx512(const void *ks, void *gcm128ctx, - unsigned int *pblocklen, const unsigned char *in, size_t len, - unsigned char *out); -void ossl_aes_gcm_finalize_avx512(void *gcm128ctx, unsigned int pblocklen); - -static void -gcm_init_avx512(struct ossl_gcm_context *ctx, const void *key, size_t keylen) -{ - ossl_aes_gcm_init_avx512(&ctx->aes_ks, &ctx->gcm); -} -static void -gcm_setiv_avx512(struct ossl_gcm_context *ctx, const unsigned char *iv, - size_t len) -{ - KASSERT(len == AES_GCM_IV_LEN, - ("%s: invalid IV length %zu", __func__, len)); +#elif defined(__powerpc64__) +#define AES_set_encrypt_key aes_p8_set_encrypt_key +#define AES_gcm_encrypt(i,o,l,k,v,x) ppc_aes_gcm_crypt(i,o,l,k,v,x,1) +#define AES_gcm_decrypt(i,o,l,k,v,x) ppc_aes_gcm_crypt(i,o,l,k,v,x,0) +#define AES_encrypt aes_p8_encrypt +#define AES_ctr32_encrypt_blocks aes_p8_ctr32_encrypt_blocks +#define GCM_init gcm_init_p8 +#define GCM_gmult gcm_gmult_p8 +#define GCM_ghash gcm_ghash_p8 + +size_t ppc_aes_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); +size_t ppc_aes_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, + const void *key, unsigned char ivec[16], uint64_t *Xi); - ctx->gcm.Yi.u[0] = 0; /* Current counter */ - ctx->gcm.Yi.u[1] = 0; - ctx->gcm.Xi.u[0] = 0; /* AAD hash */ - ctx->gcm.Xi.u[1] = 0; - ctx->gcm.len.u[0] = 0; /* AAD length */ - ctx->gcm.len.u[1] = 0; /* Message length */ - ctx->gcm.ares = 0; - ctx->gcm.mres = 0; +void AES_set_encrypt_key(const void *key, int bits, void *ctx); +void AES_encrypt(const unsigned char *in, unsigned char *out, void *ks); +void AES_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, + size_t blocks, void *ks, const unsigned char *iv); - ossl_aes_gcm_setiv_avx512(&ctx->aes_ks, ctx, iv, len); -} +void GCM_init(__uint128_t Htable[16], uint64_t Xi[2]); +void GCM_gmult(uint64_t Xi[2], const __uint128_t Htable[16]); +void GCM_ghash(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, + size_t len); -static int -gcm_aad_avx512(struct ossl_gcm_context *ctx, const unsigned char *aad, - size_t len) +static size_t +ppc_aes_gcm_crypt(const unsigned char *in, unsigned char *out, + size_t len, const void *key, unsigned char ivec_[16], uint64_t *Xi, + int encrypt) { - uint64_t alen = ctx->gcm.len.u[0]; - size_t lenblks; - unsigned int ares; - - /* Bad sequence: call of AAD update after message processing */ - if (ctx->gcm.len.u[1]) - return -2; - - alen += len; - /* AAD is limited by 2^64 bits, thus 2^61 bytes */ - if (alen > (1ull << 61) || (sizeof(len) == 8 && alen < len)) - return -1; - ctx->gcm.len.u[0] = alen; + union { + uint32_t d[4]; + uint8_t c[16]; + } *ivec = (void *)ivec_; + int s = 0; + int ndone = 0; + int ctr_reset = 0; + uint32_t ivec_val; + uint64_t blocks_unused; + uint64_t nb = len / 16; + uint64_t next_ctr = 0; + unsigned char ctr_saved[12]; + + memcpy(ctr_saved, ivec, 12); + + while (nb) { + ivec_val = ivec->d[3]; +#if BYTE_ORDER == LITTLE_ENDIAN + ivec_val = bswap32(ivec_val); +#endif - ares = ctx->gcm.ares; - /* Partial AAD block left from previous AAD update calls */ - if (ares > 0) { - /* - * Fill partial block buffer till full block - * (note, the hash is stored reflected) - */ - while (ares > 0 && len > 0) { - ctx->gcm.Xi.c[15 - ares] ^= *(aad++); - --len; - ares = (ares + 1) % AES_BLOCK_LEN; - } - /* Full block gathered */ - if (ares == 0) { - ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); - } else { /* no more AAD */ - ctx->gcm.ares = ares; - return 0; + blocks_unused = (uint64_t)0xffffffffU + 1 - (uint64_t)ivec_val; + if (nb > blocks_unused) { + len = blocks_unused * 16; + nb -= blocks_unused; + next_ctr = blocks_unused; + ctr_reset = 1; + } else { + len = nb * 16; + next_ctr = nb; + nb = 0; } - } - /* Bulk AAD processing */ - lenblks = len & ((size_t)(-AES_BLOCK_LEN)); - if (lenblks > 0) { - ossl_aes_gcm_update_aad_avx512(ctx, aad, lenblks); - aad += lenblks; - len -= lenblks; - } + s = encrypt ? ppc_aes_gcm_encrypt(in, out, len, key, ivec->c, Xi) : + ppc_aes_gcm_decrypt(in, out, len, key, ivec->c, Xi); - /* Add remaining AAD to the hash (note, the hash is stored reflected) */ - if (len > 0) { - ares = (unsigned int)len; - for (size_t i = 0; i < len; ++i) - ctx->gcm.Xi.c[15 - i] ^= aad[i]; + /* add counter to ivec */ +#if BYTE_ORDER == LITTLE_ENDIAN + ivec->d[3] = bswap32(ivec_val + next_ctr); +#else + ivec->d[3] += next_ctr; +#endif + if (ctr_reset) { + ctr_reset = 0; + in += len; + out += len; + } + memcpy(ivec, ctr_saved, 12); + ndone += s; } - ctx->gcm.ares = ares; - - return 0; + return ndone; } -static int -_gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len, bool encrypt) -{ - uint64_t mlen = ctx->gcm.len.u[1]; - - mlen += len; - if (mlen > ((1ull << 36) - 32) || (sizeof(len) == 8 && mlen < len)) - return -1; - - ctx->gcm.len.u[1] = mlen; - - /* Finalize GHASH(AAD) if AAD partial blocks left unprocessed */ - if (ctx->gcm.ares > 0) { - ossl_gcm_gmult_avx512(ctx->gcm.Xi.u, ctx); - ctx->gcm.ares = 0; - } - - if (encrypt) { - ossl_aes_gcm_encrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, - in, len, out); - } else { - ossl_aes_gcm_decrypt_avx512(&ctx->aes_ks, ctx, &ctx->gcm.mres, - in, len, out); - } - - return 0; -} +#else +#error "Unsupported architecture!" +#endif -static int -gcm_encrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len) +static void +gcm_init(struct ossl_gcm_context *ctx, const void *key, size_t keylen) { - return _gcm_encrypt_avx512(ctx, in, out, len, true); -} + KASSERT(keylen == 128 || keylen == 192 || keylen == 256, + ("%s: invalid key length %zu", __func__, keylen)); -static int -gcm_decrypt_avx512(struct ossl_gcm_context *ctx, const unsigned char *in, - unsigned char *out, size_t len) -{ - return _gcm_encrypt_avx512(ctx, in, out, len, false); + memset(&ctx->gcm, 0, sizeof(ctx->gcm)); + memset(&ctx->aes_ks, 0, sizeof(ctx->aes_ks)); + AES_set_encrypt_key(key, keylen, &ctx->aes_ks); + ctx->ops->init(ctx, key, keylen); } -static int -gcm_finish_avx512(struct ossl_gcm_context *ctx, const unsigned char *tag, - size_t len) +static void +gcm_tag_op(struct ossl_gcm_context *ctx, unsigned char *tag, size_t len) { - unsigned int *res = &ctx->gcm.mres; - - /* Finalize AAD processing */ - if (ctx->gcm.ares > 0) - res = &ctx->gcm.ares; - - ossl_aes_gcm_finalize_avx512(ctx, *res); - - ctx->gcm.ares = ctx->gcm.mres = 0; - - if (tag != NULL) - return timingsafe_bcmp(ctx->gcm.Xi.c, tag, len); - return 0; + (void)ctx->ops->finish(ctx, NULL, 0); + memcpy(tag, ctx->gcm.Xi.c, len); } -static const struct ossl_aes_gcm_ops gcm_ops_avx512 = { - .init = gcm_init_avx512, - .setiv = gcm_setiv_avx512, - .aad = gcm_aad_avx512, - .encrypt = gcm_encrypt_avx512, - .decrypt = gcm_decrypt_avx512, - .finish = gcm_finish_avx512, - .tag = gcm_tag, -}; - -size_t aesni_gcm_encrypt(const unsigned char *in, unsigned char *out, size_t len, - const void *key, unsigned char ivec[16], uint64_t *Xi); -size_t aesni_gcm_decrypt(const unsigned char *in, unsigned char *out, size_t len, - const void *key, unsigned char ivec[16], uint64_t *Xi); -void aesni_encrypt(const unsigned char *in, unsigned char *out, void *ks); -void aesni_ctr32_encrypt_blocks(const unsigned char *in, unsigned char *out, - size_t blocks, void *ks, const unsigned char *iv); - -void gcm_init_avx(__uint128_t Htable[16], uint64_t Xi[2]); -void gcm_gmult_avx(uint64_t Xi[2], const __uint128_t Htable[16]); -void gcm_ghash_avx(uint64_t Xi[2], const __uint128_t Htable[16], const void *in, - size_t len); - static void -gcm_init_aesni(struct ossl_gcm_context *ctx, const void *key, size_t keylen) +gcm_init_op(struct ossl_gcm_context *ctx, const void *key, size_t keylen) { - aesni_encrypt(ctx->gcm.H.c, ctx->gcm.H.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.H.c, ctx->gcm.H.c, &ctx->aes_ks); #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.H.u[0] = bswap64(ctx->gcm.H.u[0]); ctx->gcm.H.u[1] = bswap64(ctx->gcm.H.u[1]); #endif - gcm_init_avx(ctx->gcm.Htable, ctx->gcm.H.u); + GCM_init(ctx->gcm.Htable, ctx->gcm.H.u); } static void -gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, +gcm_setiv_op(struct ossl_gcm_context *ctx, const unsigned char *iv, size_t len) { uint32_t ctr; @@ -269,7 +196,7 @@ gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, ctx->gcm.Xi.u[0] = 0; ctx->gcm.Xi.u[1] = 0; - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EK0.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EK0.c, &ctx->aes_ks); ctr++; #if BYTE_ORDER == LITTLE_ENDIAN @@ -280,7 +207,7 @@ gcm_setiv_aesni(struct ossl_gcm_context *ctx, const unsigned char *iv, } static int -gcm_aad_aesni(struct ossl_gcm_context *ctx, const unsigned char *aad, +gcm_aad_op(struct ossl_gcm_context *ctx, const unsigned char *aad, size_t len) { size_t i; @@ -303,14 +230,14 @@ gcm_aad_aesni(struct ossl_gcm_context *ctx, const unsigned char *aad, n = (n + 1) % 16; } if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); else { ctx->gcm.ares = n; return 0; } } if ((i = (len & (size_t)-AES_BLOCK_LEN))) { - gcm_ghash_avx(ctx->gcm.Xi.u, ctx->gcm.Htable, aad, i); + GCM_ghash(ctx->gcm.Xi.u, ctx->gcm.Htable, aad, i); aad += i; len -= i; } @@ -341,7 +268,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -354,7 +281,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, n = mres % 16; for (i = 0; i < len; ++i) { if (n == 0) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN @@ -366,7 +293,7 @@ gcm_encrypt(struct ossl_gcm_context *ctx, const unsigned char *in, ctx->gcm.Xi.c[n] ^= out[i] = in[i] ^ ctx->gcm.EKi.c[n]; mres = n = (n + 1) % 16; if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); } ctx->gcm.mres = mres; @@ -390,7 +317,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -408,7 +335,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, n = (n + 1) % 16; } if (n == 0) { - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); mres = 0; } else { ctx->gcm.mres = n; @@ -418,7 +345,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if ((i = (len & (size_t)-16))) { size_t j = i / 16; - aesni_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); + AES_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); ctr += (unsigned int)j; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -430,12 +357,12 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, while (j--) { for (i = 0; i < 16; ++i) ctx->gcm.Xi.c[i] ^= out[i]; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); out += 16; } } if (len) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -453,7 +380,7 @@ gcm_encrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_encrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, +gcm_encrypt_op(struct ossl_gcm_context *ctx, const unsigned char *in, unsigned char *out, size_t len) { size_t bulk = 0, res; @@ -463,7 +390,7 @@ gcm_encrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, if ((error = gcm_encrypt(ctx, in, out, res)) != 0) return error; - bulk = aesni_gcm_encrypt(in + res, out + res, len - res, + bulk = AES_gcm_encrypt(in + res, out + res, len - res, &ctx->aes_ks, ctx->gcm.Yi.c, ctx->gcm.Xi.u); ctx->gcm.len.u[1] += bulk; bulk += res; @@ -492,7 +419,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to encrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -506,7 +433,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, for (i = 0; i < len; ++i) { uint8_t c; if (n == 0) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN @@ -520,7 +447,7 @@ gcm_decrypt(struct ossl_gcm_context *ctx, const unsigned char *in, ctx->gcm.Xi.c[n] ^= c; mres = n = (n + 1) % 16; if (n == 0) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); } ctx->gcm.mres = mres; @@ -544,7 +471,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, if (ctx->gcm.ares) { /* First call to decrypt finalizes GHASH(AAD) */ - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.ares = 0; } @@ -564,7 +491,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, n = (n + 1) % 16; } if (n == 0) { - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); mres = 0; } else { ctx->gcm.mres = n; @@ -578,12 +505,12 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, size_t k; for (k = 0; k < 16; ++k) ctx->gcm.Xi.c[k] ^= in[k]; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); in += 16; } j = i / 16; in -= i; - aesni_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); + AES_ctr32_encrypt_blocks(in, out, j, &ctx->aes_ks, ctx->gcm.Yi.c); ctr += (unsigned int)j; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -595,7 +522,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, len -= i; } if (len) { - aesni_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); + AES_encrypt(ctx->gcm.Yi.c, ctx->gcm.EKi.c, &ctx->aes_ks); ++ctr; #if BYTE_ORDER == LITTLE_ENDIAN ctx->gcm.Yi.d[3] = bswap32(ctr); @@ -615,7 +542,7 @@ gcm_decrypt_ctr32(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, +gcm_decrypt_op(struct ossl_gcm_context *ctx, const unsigned char *in, unsigned char *out, size_t len) { size_t bulk = 0, res; @@ -625,7 +552,7 @@ gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, if ((error = gcm_decrypt(ctx, in, out, res)) != 0) return error; - bulk = aesni_gcm_decrypt(in + res, out + res, len - res, &ctx->aes_ks, + bulk = AES_gcm_decrypt(in + res, out + res, len - res, &ctx->aes_ks, ctx->gcm.Yi.c, ctx->gcm.Xi.u); ctx->gcm.len.u[1] += bulk; bulk += res; @@ -637,14 +564,14 @@ gcm_decrypt_aesni(struct ossl_gcm_context *ctx, const unsigned char *in, } static int -gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, +gcm_finish_op(struct ossl_gcm_context *ctx, const unsigned char *tag, size_t len) { uint64_t alen = ctx->gcm.len.u[0] << 3; uint64_t clen = ctx->gcm.len.u[1] << 3; if (ctx->gcm.mres || ctx->gcm.ares) - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); #if BYTE_ORDER == LITTLE_ENDIAN alen = bswap64(alen); @@ -653,7 +580,7 @@ gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, ctx->gcm.Xi.u[0] ^= alen; ctx->gcm.Xi.u[1] ^= clen; - gcm_gmult_avx(ctx->gcm.Xi.u, ctx->gcm.Htable); + GCM_gmult(ctx->gcm.Xi.u, ctx->gcm.Htable); ctx->gcm.Xi.u[0] ^= ctx->gcm.EK0.u[0]; ctx->gcm.Xi.u[1] ^= ctx->gcm.EK0.u[1]; @@ -663,40 +590,26 @@ gcm_finish_aesni(struct ossl_gcm_context *ctx, const unsigned char *tag, return 0; } -static const struct ossl_aes_gcm_ops gcm_ops_aesni = { - .init = gcm_init_aesni, - .setiv = gcm_setiv_aesni, - .aad = gcm_aad_aesni, - .encrypt = gcm_encrypt_aesni, - .decrypt = gcm_decrypt_aesni, - .finish = gcm_finish_aesni, - .tag = gcm_tag, +static const struct ossl_aes_gcm_ops gcm_ops = { + .init = gcm_init_op, + .setiv = gcm_setiv_op, + .aad = gcm_aad_op, + .encrypt = gcm_encrypt_op, + .decrypt = gcm_decrypt_op, + .finish = gcm_finish_op, + .tag = gcm_tag_op, }; -int ossl_aes_gcm_setkey_aesni(const unsigned char *key, int klen, void *_ctx); - -int -ossl_aes_gcm_setkey_aesni(const unsigned char *key, int klen, - void *_ctx) -{ - struct ossl_gcm_context *ctx; - - ctx = _ctx; - ctx->ops = &gcm_ops_aesni; - gcm_init(ctx, key, klen); - return (0); -} - -int ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, void *_ctx); +int ossl_aes_gcm_setkey(const unsigned char *key, int klen, void *_ctx); int -ossl_aes_gcm_setkey_avx512(const unsigned char *key, int klen, +ossl_aes_gcm_setkey(const unsigned char *key, int klen, void *_ctx) { struct ossl_gcm_context *ctx; ctx = _ctx; - ctx->ops = &gcm_ops_avx512; + ctx->ops = &gcm_ops; gcm_init(ctx, key, klen); return (0); } diff --git a/sys/crypto/openssl/ossl_ppc.c b/sys/crypto/openssl/ossl_ppc.c index 0951745c4b43..980211f46a76 100644 --- a/sys/crypto/openssl/ossl_ppc.c +++ b/sys/crypto/openssl/ossl_ppc.c *** 89 LINES SKIPPED *** From nobody Thu Sep 11 16:08:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN2Xd6Jzsz66rLx; Thu, 11 Sep 2025 16:08:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN2Xd4xPpz3FGC; Thu, 11 Sep 2025 16:08:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OnbCqFc6PrU9hogsQriLOWO7dqF8uecHjedZVWRYy9M=; b=skWd94TJtXbSZj+Mw2b2LIl4wPBgCeo79fXDPeN0IJeCR7PI5wGGTkp09IgYdCN2kPv9EF l42+7sC5XUKBNMg+e96xpu3aELaOZ9m0YUWDmToAZQnmdd5UOVYRjdwyiWksG4HPRHtDaD T2CXUM4ZLwBgCYREa5MLkzIk9+ewU/EIu9nH0/uIX7BXW3nfaxqiKKInDCVJUtyir4M9Y1 SctEoxvm2p5Qj3/EB2hbKTeH5LMuaLPU77mw0I6R81HtnVR6GF+DAQWgFJ3U1PmWWO0D93 pd5EcfFYgYBqlAfJmMbX4AavClTfmcrngBNk9DXwpygq6+Zzztii/OKXxsg53A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757606897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OnbCqFc6PrU9hogsQriLOWO7dqF8uecHjedZVWRYy9M=; b=Tcfagz3ixXcwN9LnKyGOlPOVjF1mpr7K0rnATC9wHjcltOAXKJX+HnHmLxx6uCrw6s71BP DLEgY33Hq734Ybpy7Pl0QLvoU7W9AFVWw9GJgnubET1ttX7VyVeIv9KaG+Y2r6sgrqZPiQ CqH7LijEwnBi2gkEdQaFEdSwfkHd4nHKIOoeLKQRvB31fNCPUdl26HBh5/tkwgwcJwuW1X qy9Z5RMCFBbbuAfOWI6A/nJT38LzDaptmL89UX/f94vTBWb/kzBeBJSUbPy9hDgUOGFf+r TY2awjf3ax7Hl2xQp+gfHKiVMt2IVWYrE7mOHAXRWdKhihFFZedyH91xW2z55A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757606897; a=rsa-sha256; cv=none; b=g0xcXbDRslb9tX1cn/pZ7mhg6ITn17r95hrqjlf3mD2DDjU26OXEmM1GS/ZmiMEfo95Em0 L8nIjy/FTNEeV3iIDk0lz0AYPwUPOrbACZWgCXUEe3OWoSWu/GlfPR4L39bHfwkVC9OXh/ nnss8YDttTj3gk5mXtL3lx8a8s6Z6B/VIu8kzC1gkwR0XFVLqcpv8n/5COGgBUfVh+WCv0 a5ExWYs+ycgNP4o6Pujah/o9md0bazIs9dtTn3VqwayZix6fXHFGWx+76wJjpcbXKXVKhX p5Vrh6jwiWj/mC9qhHyDluf9p6f8ZTuqZm/QzL8Sbrmwp9/XHhwlhZhzGNoPLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN2Xd4JXdz4d; Thu, 11 Sep 2025 16:08:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58BG8HZQ085510; Thu, 11 Sep 2025 16:08:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BG8HeS085507; Thu, 11 Sep 2025 16:08:17 GMT (envelope-from git) Date: Thu, 11 Sep 2025 16:08:17 GMT Message-Id: <202509111608.58BG8HeS085507@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 5ca390f03bc6 - main - bnxt: Fix the request length in bnxt_hwrm_func_backing_store_cfg() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 5ca390f03bc63bccc8952313d536fd4bcabf2cab Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=5ca390f03bc63bccc8952313d536fd4bcabf2cab commit 5ca390f03bc63bccc8952313d536fd4bcabf2cab Author: Mark Johnston AuthorDate: 2025-09-11 14:36:00 +0000 Commit: Mark Johnston CommitDate: 2025-09-11 16:08:05 +0000 bnxt: Fix the request length in bnxt_hwrm_func_backing_store_cfg() PR: 286720 Reviewed by: zlei MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D50491 --- sys/dev/bnxt/bnxt_en/bnxt_hwrm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/bnxt/bnxt_en/bnxt_hwrm.c b/sys/dev/bnxt/bnxt_en/bnxt_hwrm.c index 7dd555cfaadb..9e7f4614d9f9 100644 --- a/sys/dev/bnxt/bnxt_en/bnxt_hwrm.c +++ b/sys/dev/bnxt/bnxt_en/bnxt_hwrm.c @@ -714,7 +714,7 @@ int bnxt_hwrm_func_backing_store_cfg(struct bnxt_softc *softc, uint32_t enables) bnxt_hwrm_set_pg_attr(&ctx_pg->ring_mem, pg_attr, pg_dir); } req.flags = cpu_to_le32(flags); - return hwrm_send_message(softc, &req, sizeof(req)); + return hwrm_send_message(softc, &req, req_len); } int bnxt_hwrm_func_resc_qcaps(struct bnxt_softc *softc, bool all) From nobody Thu Sep 11 16:27:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN2yp4qLfz66sh0 for ; Thu, 11 Sep 2025 16:27:30 +0000 (UTC) (envelope-from olivier@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN2yp28xdz3M7l for ; Thu, 11 Sep 2025 16:27:30 +0000 (UTC) (envelope-from olivier@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608050; 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=dh5Nl5nMzMBHYzK3iOREVxu3SjR9awdamBqJ316t4t8=; b=GjiyZx42GZpxNZqlia22md1vdlms8t9leXveBOwwVo8WvGdAB9DnhqoTl3+U13y95wVh0v ZZlO/7g/YnNm1KlO4vPP6wY02aj3L6JicR2jzbzIujBYXzzDKMfUA9VV5VNf7c130SMNIy U2OKpyEOokmhJz9L0DJaT2Ie/8HF05F11+6WufUploDgxKsjcvowbBX1zODQtLCl6RVCoq /mwSYAMTCO4PB/QXfiBRI3JrmAdbUrvVwT5ertXOswiGL+rlQwAb6F6baqxDmtYtHjA9+1 LpQKv8x9YT4asXvlQJC5D9w77COsfjwiXAlqRbSHwpQ/pZV4qRc84jgzJg0XKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608050; 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=dh5Nl5nMzMBHYzK3iOREVxu3SjR9awdamBqJ316t4t8=; b=KJfXWEekXLdb2KTBRIWIHw3qhOiOBdZcIu16crd6XJDT+2ZQ1b4911xfRCeUmJ7fA0PyZv 0LUj8TXubempbyICDXBv2rnF2SiP/85LDtHuVFUChFMWeImVkcLA+cZXKpCYo0Ey9ZFZ42 nD/0SrBCqZ0Io44osWNpKvEZ0nKCWCctG0Zf9wQYHoRnYeTAxMncAGYY7KRlpqCIvREPB7 zkjs0h1x+0vDVM7In+WBF2BWEq8q6OmU4XfrTe+VdhhOKCoP90/W5xoHCxi0hIxZ+XkrTY IjbJNkEk20HTg9YEFIJM7CyXSpmU/ZVO54dj2fJkQaBQ9x7zw0yqlhSzXLzaKw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757608050; a=rsa-sha256; cv=none; b=r6XIbJFypV3ZwrK1gabTTigUNR8xZsdaqRcDh2+DTnUxfyJh/pZ6xVhfxqLLCQpTiBa9Gn Ga8BMw1my9E/1cTcPChA2D1ihM355KHP2PqEwU0DkVc2682kH//0WAqJCVEb19ULxrX/aG q/vm/1UriIy4Lz4PSiEDEerzINyCgzbvDRcu671h87BJ3m0f00r5UYL/HEnZc3WpS41r+W mjxgWldKSwqJZ12UB88RYlwN4C35jT1t8glcq4qzb+QWdbGrZ8J5h9CFfNNPxLFNNXQJ8K xYMggP86k+4yuFHTNETgtTb9RK6R6Pf6qMW3D6VF/jw4JjIcoAFOtNw/stU/Zw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from mail-qv1-f48.google.com (mail-qv1-f48.google.com [209.85.219.48]) (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)) (Authenticated sender: olivier/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4cN2yp1H99z25r for ; Thu, 11 Sep 2025 16:27:30 +0000 (UTC) (envelope-from olivier@freebsd.org) Received: by mail-qv1-f48.google.com with SMTP id 6a1803df08f44-70ddadde494so7847716d6.1 for ; Thu, 11 Sep 2025 09:27:30 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCV9c0rPILYzDJ6reMei3FsWv1EzLBXoaTvMt7HmqZYg84Sq9fbRr49pfcDy8lwny92M0dqB2nlsSvG3nMnEhX1ZgPwGPw==@freebsd.org X-Gm-Message-State: AOJu0YxEiJNqyTrxb5v0EjBo0l0IfnR8a38M/qpjDuDPX4CqtNM8F+jp xH9uMNmRUpSDceHYlpVRwGhPyQEmjWQfOUaN/s7TEaMphd6BVeJK55Z/6RcG1YfmRKB1CLzm3Kf B+sKKEMo4E+qh95fB2M0kIcB3PKqNMpg= X-Google-Smtp-Source: AGHT+IHh8WaOGS5EkDnpHwTDMsoLx/femjIn0FvR3cr2eOtk9uCfKauplbIlcCG5W2NC/HLZWnZChhX3cxndG5V/zrA= X-Received: by 2002:a05:6214:27ee:b0:70d:843f:6b8c with SMTP id 6a1803df08f44-7393ec1523cmr191117876d6.37.1757608049728; Thu, 11 Sep 2025 09:27:29 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509111512.58BFCV87088340@gitrepo.freebsd.org> In-Reply-To: <202509111512.58BFCV87088340@gitrepo.freebsd.org> From: =?UTF-8?Q?Olivier_Cochard=2DLabb=C3=A9?= Date: Thu, 11 Sep 2025 09:27:18 -0700 X-Gmail-Original-Message-ID: X-Gm-Features: AS18NWBC5OSK-38iPfcoN9fLR4sRRS_g8_ilst0pm13jAl6hEYTxkmCqiGi-dQA Message-ID: Subject: Re: git: d20c82507278 - main - Revert "libc: Remove readdir_r(3)" To: =?UTF-8?Q?Dag=2DErling_Sm=C3=B8rgrav?= Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000756362063e8903bc" --000000000000756362063e8903bc Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Sep 11, 2025 at 8:12=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav wrote: > The branch main has been updated by des: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3Dd20c82507278e003f391c3fb04f4e49= afd1537ab > > commit d20c82507278e003f391c3fb04f4e49afd1537ab > Author: Dag-Erling Sm=C3=B8rgrav > AuthorDate: 2025-09-11 15:12:22 +0000 > Commit: Dag-Erling Sm=C3=B8rgrav > CommitDate: 2025-09-11 15:12:22 +0000 > > Revert "libc: Remove readdir_r(3)" > > This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4. > > Hi Dag-Erling, Could you please explain why this change was reversed? Because the reason was missing from this commit message. Thanks, Olivier --000000000000756362063e8903bc Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

On = Thu, Sep 11, 2025 at 8:12=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav <des@freebsd.org> wrote:
The branch main has been updated= by des:

URL: https://cgit.= FreeBSD.org/src/commit/?id=3Dd20c82507278e003f391c3fb04f4e49afd1537ab
commit d20c82507278e003f391c3fb04f4e49afd1537ab
Author:=C2=A0 =C2=A0 =C2=A0Dag-Erling Sm=C3=B8rgrav <des@FreeBSD.org>=
AuthorDate: 2025-09-11 15:12:22 +0000
Commit:=C2=A0 =C2=A0 =C2=A0Dag-Erling Sm=C3=B8rgrav <des@FreeBSD.org>=
CommitDate: 2025-09-11 15:12:22 +0000

=C2=A0 =C2=A0 Revert "libc: Remove readdir_r(3)"

=C2=A0 =C2=A0 This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4.=


Hi Dag-Erling,
Could you please expl= ain why this change was reversed?
Because the reason was missing from th= is commit message.
Thanks,
Olivier
--000000000000756362063e8903bc-- From nobody Thu Sep 11 16:42:48 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3JS4YgPz66t0g; Thu, 11 Sep 2025 16:42: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3JS2mZpz3NxJ; Thu, 11 Sep 2025 16:42:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7fbZO0ljzp5nSxvcmRNFjLgwQlJ52BNl13y5GOQBRRg=; b=at/K+HbUpTnwJ4bMoeyXooz6GslDzcSw8pGw407DH8bSW87/5XytxEI6Buz3C4AcShI24U Sl+FFvFYXl3qIvCzWEorfC3qWolFCERZeRxdUaQ/dirdY2iDoOfVu55D7ZzDp5h1osuGTi BNWCPfI+HRUvqc3BgKp6cjZ33EIQ3MldevWOGWx+aUpHOaajgt9mCNtRH8v7O+MqmGjGb/ 0AceZqkTnBIRLLjT1FmVL6s+ZpIqjPmNThaPqcCJFYSRPazVjyFrOFWd/70hPLUGKlu5pl LgYmHjKqOhGbpm16IDXS+lW1hu1UZ55ZQkw8Xu5OZNk6ufE5fKF2Uj/SEYxfWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7fbZO0ljzp5nSxvcmRNFjLgwQlJ52BNl13y5GOQBRRg=; b=BJkOZLvB1vVLStLXCrm0F019WDLkA5xGeV9xvMPPlh24atmkZj4KX8ose0dJnWA6adSw68 hYHt+2Pjif0QYJvq8GjqHP0rys+vuAD9O/cwRPZYYY9atVDsuiOOsUwp31bwKD1+LAyeSp zkJdvXRXNClb+r78zBGcPyo1NtwW02GaXmkxcJwOYmAEntBl1CcpzADJoBtr4ke+2ax34E dFwx5cB6SK4b8BN2QJN71RHnbuNmtzCSuHPvE0BEvx36B+9XmNucJwFwc2rF2hw/RtaIg9 X3MjLGyTAq1CVzNG+ydsDFS+3y7+jIKvLANSzF8F+2JwFvMeCLA9D5W2BzYa5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757608968; a=rsa-sha256; cv=none; b=EgyA3p5oiw53Rn2m3Lc6o7Fu1/WmTq42EYDUeJWY80sU4AhH3VeqrsYjRW3Q/xrHs+Cure YSjPZoECK5OH2/c1DIMJ1kLRjXyKVxAgRBUifUPVZ5Wwa1L4mHD6ntGY69rowbbLIWj/Qe E9t4nelpyDmMVf7lUfeDDWGHvo90NEyIekjHb4Lf5VpWQ4GXcP/cztL8mTp83phIz7OZ5D Aw8gm0bAaek02WQ+1ETXgWoLJ09/8SvKIsE2sFiT/mpgzOx3ZBBE6VZbZxOQC6Z7g7kYD3 qy1jfZZUkIHqP/W4Srt8lDwenXVyRfvyLngcxCYvmdVAzc6pJx5Z09eQesZd2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3JS2N49zZ3; Thu, 11 Sep 2025 16:42: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 58BGgmYe058181; Thu, 11 Sep 2025 16:42:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BGgmoj058178; Thu, 11 Sep 2025 16:42:48 GMT (envelope-from git) Date: Thu, 11 Sep 2025 16:42:48 GMT Message-Id: <202509111642.58BGgmoj058178@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: ShengYi Hung Subject: git: 3449a3abab89 - main - ichwd: address unused function warning by marking as __unused List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: aokblast X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3449a3abab892a0a1124ee4edbc10d6d28b87af3 Auto-Submitted: auto-generated The branch main has been updated by aokblast: URL: https://cgit.FreeBSD.org/src/commit/?id=3449a3abab892a0a1124ee4edbc10d6d28b87af3 commit 3449a3abab892a0a1124ee4edbc10d6d28b87af3 Author: ShengYi Hung AuthorDate: 2025-09-10 16:33:33 +0000 Commit: ShengYi Hung CommitDate: 2025-09-11 16:41:45 +0000 ichwd: address unused function warning by marking as __unused Reported by: markj, bz Approved by: markj (mentor) Fixes: 2b74ff5fceb6 ("ichwd: introduce i6300esbwd watch dog driver") Differential Revision: https://reviews.freebsd.org/D52476 --- sys/dev/ichwd/i6300esbwd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ichwd/i6300esbwd.c b/sys/dev/ichwd/i6300esbwd.c index d95aeb53c3f5..03d504a350aa 100644 --- a/sys/dev/ichwd/i6300esbwd.c +++ b/sys/dev/ichwd/i6300esbwd.c @@ -45,7 +45,7 @@ static const struct i6300esbwd_pci_id { { DEVICEID_6300ESB_2, "6300ESB Watchdog Timer" }, }; -static uint16_t +static uint16_t __unused i6300esbwd_cfg_read(struct i6300esbwd_softc *sc) { return (pci_read_config(sc->dev, WDT_CONFIG_REG, 2)); From nobody Thu Sep 11 16:42:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3JT4TtDz66t3c; Thu, 11 Sep 2025 16:42:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3JT3bWjz3NrR; Thu, 11 Sep 2025 16:42:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J4Tl5K13OgEl1n3TLvJ0cDYuQefXWEGq10mUaNEAjtc=; b=gycUqyiS8Gi2E+Y97wHJxAAtAvhL9uLNrJq/DUcXhefkamsdVhX09Jqqm583+BuRCAt2Jc dFgj5zOjELooOpJY8YQkVjItvFJ8dNhP/5/mP0YCgwRoivTq/9hpfrY9wrHnad0GMmR3Sf wUekioHic3HAZRnaSao1/TL7hokA+3ampSQIXs0JgIpzskcUNIIJvNZ8zk33PEkHlt6n3V ErkfvIWonU/gx8F4X26k5I6DSkMDLQeJK9YbXhy9ZfbHwBIYKSS66Pv1rb1KTHY+35zc6c I+fFizCj210NREERf8rgqbDMATdKqycogwLlL1u30QOh6d2Gf6swA2YFHxaANg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757608969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J4Tl5K13OgEl1n3TLvJ0cDYuQefXWEGq10mUaNEAjtc=; b=KtEBqI3nsWz+g1EEoiow0czt9koT06rP9XdUrgSlN1IHlk3Cd97cT/ayMsTlv1mC5iPqYR 98c17y6KXEKgKeR5wPY8OB7ELApJXvlbmHKmhIXIqQwAgzEHdUP7yxn+JuUyWkE1UHe6K9 /m6vKd2szsN9zEltdogwEVU8DgM49HzhRsPKN8P/FBhd36Qssd8VhyM3Q4YXadW281SkHV CgQZOJwJpu3gMLwPM4rcvSTfB2nJLySt9yQ1S70IBOzepkoOZxazXon/ttiMNLq92/G8G+ 5kYCkGbq3UIvFwgZAMw0FY3nZ09nETgKsCTMwTTL2np/IL8/4rilLNnONIX+kA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757608969; a=rsa-sha256; cv=none; b=fGEGPJuED+Lx4VVtvDEBlIdrPEfDE3S6xnZCLYH5YtrjIN2Zr5mIMB8cHRDfu/1C9vmRqx Ad76xoixp1eE3UPADgGNlrev1h713Cdpha849pm1BPIQ81c6auIz1W4uEpXhJm3QLa0Wsc M1eALRZMRByxM5p6fW5fdVasWDCJAvIANH8gX3S93Omb6Zx5LbN3wuWSZm01FxGzLk8vbZ 1ApVx9t4hEOQUafe+2FFAD5g8PEhNW0knSUyOyVfHQC/cUdWrboDTsQHe6dp8N6DbWfijW 76Ub6zfWjgBHW4N47fG4+m5ohkEmbEuviSt+2GryzGjCggcMZJWvHmkAtcZoEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3JT32w4z1B6; Thu, 11 Sep 2025 16:42: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 58BGgn7Z058218; Thu, 11 Sep 2025 16:42:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BGgnpB058215; Thu, 11 Sep 2025 16:42:49 GMT (envelope-from git) Date: Thu, 11 Sep 2025 16:42:49 GMT Message-Id: <202509111642.58BGgnpB058215@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: ShengYi Hung Subject: git: 7f81b2519aeb - main - snd_hda: Add patch for Framework 16 AMD Ryzen AI 300 Series List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: aokblast X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7f81b2519aebcf90d7e027122ca99b628ca81ed9 Auto-Submitted: auto-generated The branch main has been updated by aokblast: URL: https://cgit.FreeBSD.org/src/commit/?id=7f81b2519aebcf90d7e027122ca99b628ca81ed9 commit 7f81b2519aebcf90d7e027122ca99b628ca81ed9 Author: ShengYi Hung AuthorDate: 2025-09-08 11:15:14 +0000 Commit: ShengYi Hung CommitDate: 2025-09-11 16:41:48 +0000 snd_hda: Add patch for Framework 16 AMD Ryzen AI 300 Series The new Framework 16 with ALC285 exhibits the same issue as the previous model. Therefore, we apply the same fix to the new model. Reviewed by: emaste, Daniel Schaefer Approved by: lwhsu (mentor) MFC after: 3 days Sponsored by: The FreeBSD Foundation Sponsored by: Framework Computer Inc Differential Revision: https://reviews.freebsd.org/D52423 --- sys/dev/sound/pci/hda/hdaa_patches.c | 6 ++++-- sys/dev/sound/pci/hda/hdac.h | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/dev/sound/pci/hda/hdaa_patches.c b/sys/dev/sound/pci/hda/hdaa_patches.c index 8967cb49125c..91bb244578c7 100644 --- a/sys/dev/sound/pci/hda/hdaa_patches.c +++ b/sys/dev/sound/pci/hda/hdaa_patches.c @@ -362,8 +362,10 @@ hdac_pin_patch(struct hdaa_widget *w) patch_str = "as=3 seq=15 color=Black loc=Left"; break; } - } else if (id == HDA_CODEC_ALC295 && - subid == FRAMEWORK_LAPTOP_0005_SUBVENDOR) { + } else if ((id == HDA_CODEC_ALC295 && + subid == FRAMEWORK_LAPTOP_0005_SUBVENDOR) || + (id == HDA_CODEC_ALC285 && + subid == FRAMEWORK_LAPTOP_000D_SUBVENDOR)) { switch (nid) { case 20: /* diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index 09a17f702019..c11e6b2d6810 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -536,6 +536,7 @@ #define FRAMEWORK_LAPTOP_0003_SUBVENDOR HDA_MODEL_CONSTRUCT(FRAMEWORK, 0x0003) #define FRAMEWORK_LAPTOP_0005_SUBVENDOR HDA_MODEL_CONSTRUCT(FRAMEWORK, 0x0005) #define FRAMEWORK_LAPTOP_0006_SUBVENDOR HDA_MODEL_CONSTRUCT(FRAMEWORK, 0x0006) +#define FRAMEWORK_LAPTOP_000D_SUBVENDOR HDA_MODEL_CONSTRUCT(FRAMEWORK, 0x000d) /* All codecs you can eat... */ #define HDA_CODEC_CONSTRUCT(vendor, id) \ From nobody Thu Sep 11 16:57:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3dc2d5Nz66vw8 for ; Thu, 11 Sep 2025 16:57:40 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x102d.google.com (mail-pj1-x102d.google.com [IPv6:2607:f8b0:4864:20::102d]) (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 4cN3dc0gyGz3T0r for ; Thu, 11 Sep 2025 16:57:40 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x102d.google.com with SMTP id 98e67ed59e1d1-32ddfe3c8ccso661499a91.3 for ; Thu, 11 Sep 2025 09:57:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1757609858; x=1758214658; 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=0H793k325/i6ztrh5q9U52l/kF+m8w7eJ0fk4C1Iydk=; b=pGIWgsBzAnvvYMwLSous4FTDyk4QlI+PgyvTpg14ELxQZbSZj2alPyRQxa7fgMNStB +Ep/qFFdq5vBljsfePiRS0Wumi4bS4cab3p1MyN+bIq77QsNN7fKPVjyCyaxpWJUDK2U D1mttVqEkUxP1iS5+HbAmRLoInGEJvU4acRY73y7l6zAybiydw+BJTk4mpH0DUkKXnn2 J0Tj9aijMQepJm/7d6liw9RTbIgzR6E/MN0HESkY6weUOS1HNJ5FsXPBZW34amiatHss FkNfcLj2UvsvnzUQV7+5GUfRIEVc1TJ7E55X7Z1+7JemqQ7uN/u096fxRVBzZh3Wge9G bdqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757609858; x=1758214658; 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=0H793k325/i6ztrh5q9U52l/kF+m8w7eJ0fk4C1Iydk=; b=DBfybCU64TQdzBS3NCJVE/hsibA+XT0yvGwiUBBwMwwJPsLk9BGQ04P3FPo2w43A6A nsBg4WU2A1YsGY7Fb+Jjy6knr3ICh7UCPY+8CBt+5tZUOunxA4FnChz9x2hyBLDPREHd cn6Sl5UHB9+ljCfmwq0jYsVoai28kpMUSxqc9VQgvq7gDtqa9NsjW6mthdOFQcMEs7LA wmcoUf5T1YbjYu0FY5MmajHXAgz+/2s1GJARJVtC0Em47Tx0rYch5d2HO2YbATZg6KwW yPwImNVceHUYtOHIc4sXzXh3l0md/ZxB+Qfs27OyQH9+k4V5R0/iG9JFpf5trXHEJokW EMHQ== X-Forwarded-Encrypted: i=1; AJvYcCXdbGO0cF40pq3WOgEKsk8kdpzqIS4sJF/XiAVnzuXSSS2SJEdXxbN/dU4akENcNn+ow1o8S3Re0YeBNQWBFxghyDe7Zw==@freebsd.org X-Gm-Message-State: AOJu0YxojTYCScYpq/dG6YXIRMxnc/QGWTTKKqW4hXmGDiwzoJuR1dLd ZSrAx01lJvynYCrrn3rypu6ZJqvKa6LQv9T0jOJPCEZF57KT9IEFLn285DhnMIYTieCNrGVxERt d+EQwYnJA2cyKYIQNmwmOARgnltlhx4tvIXebRuIZOA== X-Gm-Gg: ASbGncuCXCQV8RznuyzsgiJNKLwDc6xG8ZHvLEtMg5RwLsm+HK8uzCvzBY0by460jL3 UddHVzqY1et55eQ4aFU/fORCb6kf9MIy/nSpl3xlO6ywloQkf2uCWksLk9PafbzPqE/IsxVw7+X mv5/UNqh5tAsT3dEr7P5/WXkXGhjAqvdF1oNgdIeCbtSVUhUZaCFHi2aR/yTbwrUb73qqJcr6lF VOexUntuArVJlLYaIsuSK9qAopCrhW/BxYPgDgb6Gc+f/S0Rg== X-Google-Smtp-Source: AGHT+IGdpG1h5OQCQDdeVupiiCOiu1spl5/V4iMKttT81PXz9akjJMIopzoMaBwi8XRmyagdcIpghjm+80IuMgRoP6c= X-Received: by 2002:a17:90b:2788:b0:329:ca48:7090 with SMTP id 98e67ed59e1d1-32d440df06fmr27278840a91.37.1757609857577; Thu, 11 Sep 2025 09:57:37 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509111512.58BFCV87088340@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Thu, 11 Sep 2025 10:57:26 -0600 X-Gm-Features: Ac12FXx-SxD5zvNhJKSoQ7Z-wa9vCsVbuDBf2S5KrOyFSl2ilxaaLA8hEIp-pI8 Message-ID: Subject: Re: git: d20c82507278 - main - Revert "libc: Remove readdir_r(3)" To: =?UTF-8?Q?Olivier_Cochard=2DLabb=C3=A9?= Cc: =?UTF-8?Q?Dag=2DErling_Sm=C3=B8rgrav?= , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="0000000000003702fc063e896f1f" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cN3dc0gyGz3T0r --0000000000003702fc063e896f1f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Sep 11, 2025 at 10:27=E2=80=AFAM Olivier Cochard-Labb=C3=A9 wrote: > > On Thu, Sep 11, 2025 at 8:12=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav > wrote: > >> The branch main has been updated by des: >> >> URL: >> https://cgit.FreeBSD.org/src/commit/?id=3Dd20c82507278e003f391c3fb04f4e4= 9afd1537ab >> >> commit d20c82507278e003f391c3fb04f4e49afd1537ab >> Author: Dag-Erling Sm=C3=B8rgrav >> AuthorDate: 2025-09-11 15:12:22 +0000 >> Commit: Dag-Erling Sm=C3=B8rgrav >> CommitDate: 2025-09-11 15:12:22 +0000 >> >> Revert "libc: Remove readdir_r(3)" >> >> This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4. >> >> > Hi Dag-Erling, > Could you please explain why this change was reversed? > Because the reason was missing from this commit message. > Rust breaks with this change. While rust can be fixed (and will be) since it's doing some sketch things and the fix is to just remove the sketch stuff. However, part of Rust's work flow is to do A/B testing between new runs under test, and older Rust versions. The old binaries work fine, but newly-built copies of the old versions do not. Until those old versions 'age out' of this setup, we'll be stuck with this. Warner --0000000000003702fc063e896f1f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Thu, Sep 11,= 2025 at 10:27=E2=80=AFAM Olivier Cochard-Labb=C3=A9 <olivier@freebsd.org> wrote:
<= div style=3D"font-family:"courier new",monospace">
On Thu, S= ep 11, 2025 at 8:12=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav <des@freebsd.org> wrote:
The branch main has be= en updated by des:

URL: https://cgit.= FreeBSD.org/src/commit/?id=3Dd20c82507278e003f391c3fb04f4e49afd1537ab
commit d20c82507278e003f391c3fb04f4e49afd1537ab
Author:=C2=A0 =C2=A0 =C2=A0Dag-Erling Sm=C3=B8rgrav <des@FreeBSD.org>=
AuthorDate: 2025-09-11 15:12:22 +0000
Commit:=C2=A0 =C2=A0 =C2=A0Dag-Erling Sm=C3=B8rgrav <des@FreeBSD.org>=
CommitDate: 2025-09-11 15:12:22 +0000

=C2=A0 =C2=A0 Revert "libc: Remove readdir_r(3)"

=C2=A0 =C2=A0 This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4.=


Hi Dag-Erling,
Could you please expl= ain why this change was reversed?
Because the reason was missing from th= is commit message.

Rust bre= aks with this change. While rust can be fixed (and will be) since it's = doing some sketch things and the fix is to just remove the sketch stuff. Ho= wever, part of Rust's work flow is to do A/B testing between new runs u= nder test, and older Rust versions. The old binaries work fine, but newly-b= uilt copies of the old versions do not. Until those old versions 'age o= ut' of this setup, we'll be stuck with this.

Warner=C2=A0
--0000000000003702fc063e896f1f-- From nobody Thu Sep 11 17:06:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3r31M7jz66vHK; Thu, 11 Sep 2025 17:06:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3r30t4Fz3V1l; Thu, 11 Sep 2025 17:06:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610403; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bMVaHacJ+JtDXxNT8d7YKT+Whj3/cJGZwFc9+Qgy6iA=; b=WndkwGd7DNvO5ZNvrns4UgRoB/41kz9jtQMbF0YHUzKgn0zCFlfV2ftoD38f9y8uu9hU6z L6+EGvI9HVt5Kj6CvwFdDhowiRdskFN6dPW5GGQFiEPwdhIwGm4CGhQGNJVeOmaOLN+P2Y cSuLp5/n+8Wy6RN8EhcrYQYJ6BBiaY2uGvGZmaJrxG/K7uFttR0sr5ZvV5+1fuueVpVsjf VICoPwIKBrjB9MaWp/BEPKDyJfYf3REgzgC/YWCo59c6QyZZVA5N+Fs7QG555RbtYhqIOn z0ZyCFe93pgMeUTPhsow72NVcdcCqBbJpUkfzrqP4OB9EFSUdI53QNZXw6jwBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610403; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bMVaHacJ+JtDXxNT8d7YKT+Whj3/cJGZwFc9+Qgy6iA=; b=us8EbnjEQ5+ToRVqKdx7V9lNs6JGIPsFRhVw9+XIIlQnEmCXvwLvKyOZd/3IkHy1jbda7/ TgGpZbH4lOS73IYaH6QJLabe5MB9BT7DOjTWtzPpFC+IkSyivPndVwteCr5pbL/o81R57k QZousmZzH+pjssuBWnw9dfE+FsIXeslvYBFfmDO9jnGwVGNJIXnWLrYjz0nX7b2Pliiuzg Moj4JJNw5HZ3nL2y7tNx5WqgwM4FP2Dum7E9WgVsI2G16eTKBQJ/b1jrlk7hyITlqjriye IK7tx/3pK+v1Qk5vLXr7PPdPxm4j0BNv0GGrE9Xq34UHSES5ZRKLEXBUF3erHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757610403; a=rsa-sha256; cv=none; b=cQOv9IUtE5tfuzkcPVCThg8pPdiERHNkdMkWVNpC/Nr6dO0KdVlpeyymMneCm6iZrjjfMg OcFXTvXq5l/odZSDHq8mjulwg6GHXDEMQdAIkIIDG2i5V0DRCMSeuZp1JOX0TZ+4dTkqRe VWfr4NFM+YTRt4gk0AODsCWOpwJ1jU8aMxVeUWPxUevqJDj65BrajfgR88tJp4X6J15Svy QZPcBKj/FFd+RQYSzxjyaYCIJkjpLb3wLOyvrbUz9Abd/3ghL02XdpcB9JWeSiRunhI4N/ bXaoqOicR8ur9m62SS/WtSRMNsR0gf6rIUftuIai46RbwdDHanzqfzqSQ4C+LA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3r308mTz1fH; Thu, 11 Sep 2025 17:06: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 58BH6gH4097373; Thu, 11 Sep 2025 17:06:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BH6g1P097370; Thu, 11 Sep 2025 17:06:42 GMT (envelope-from git) Date: Thu, 11 Sep 2025 17:06:42 GMT Message-Id: <202509111706.58BH6g1P097370@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jes=C3=BAs?= Daniel Colmenares Oviedo Subject: git: 9f3330f5224e - main - nuageinit: Remove duplicate description of users.{user}.groups List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dtxdf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9f3330f5224ea2384a1c7d79a5b1f2784f7c14b6 Auto-Submitted: auto-generated The branch main has been updated by dtxdf: URL: https://cgit.FreeBSD.org/src/commit/?id=9f3330f5224ea2384a1c7d79a5b1f2784f7c14b6 commit 9f3330f5224ea2384a1c7d79a5b1f2784f7c14b6 Author: Jesús Daniel Colmenares Oviedo AuthorDate: 2025-09-11 16:47:07 +0000 Commit: Jesús Daniel Colmenares Oviedo CommitDate: 2025-09-11 17:04:46 +0000 nuageinit: Remove duplicate description of users.{user}.groups Reviewed by: bapt@ Approved by: bapt@ Differential Revision: https://reviews.freebsd.org/D52436 --- libexec/nuageinit/nuageinit.7 | 2 -- 1 file changed, 2 deletions(-) diff --git a/libexec/nuageinit/nuageinit.7 b/libexec/nuageinit/nuageinit.7 index f27b8bc06042..bfa028fe3fa3 100644 --- a/libexec/nuageinit/nuageinit.7 +++ b/libexec/nuageinit/nuageinit.7 @@ -296,8 +296,6 @@ The encrypted password for the user. .It Ic plain_text_passwd The password in plain text for the user. Ignored if an encrypted password is already provided. -.It Ic groups -The list of other groups the user should belong to. .It Ic locked Boolean to determine if the user account should be locked. .It Ic sudo From nobody Thu Sep 11 17:06:44 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3r420bPz66w2p; Thu, 11 Sep 2025 17:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3r41Jfxz3Tbv; Thu, 11 Sep 2025 17:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610404; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SXoBul0ILAXCq11m/t1BKguEeQHVddvvHMhUyfMU4os=; b=Qay8p18cIc1wsTMHqEPHFAijJLtQOV8ikvgBhJ+4bbGb2zVe8i9FajzJsQxY7kGih5F9+T NDaRil0PZ66vr7tGzeNtbgB+5XFX3EbaxzF6J2Y8E3yZAMaAXBOPli3nJR/tH6hwCFM+SZ s8ehQIcew+20d92msGc3+rTgKPf6J0ojd7OZo5aHjYJALoFulFuUIFDK3u6B2F+Hi59sq9 ymsIW0i2bNquutuGE4zuqHm8N2RAyJ4VIsgM/37Mk+eK1ihD5XKNMmAlFXopKm33ZutpkO kFkarvyG5DjD+1EopgcNDd+GSLHVZpbLxtLtyslho1G+flKJtc/zA9OrTlZnOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610404; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SXoBul0ILAXCq11m/t1BKguEeQHVddvvHMhUyfMU4os=; b=CkI7Mq2nYsOD/oZFUG6L6NvuRox2ky1gsT3ZxNrl4ViMpR2olIdt5EYXfkTg5gzL2BpQBd +0+n3bCcPwEzQllhBRWJtNPkcoMOBXjikE3xnM1wIoGipspFIV2dajP9gkZdg8AIY/9D6P vjd4hNxWEZ5Z+pBpsKFTNExhLRoInNAaASEm4CCpN/znCWVJDD4wQDJAOrL+0jIUExOJj8 dI5JLGI+5OOLhw06u0CfS5/OJ6Y6ASAYussbQTz3Q/yz3eHH/zftiFdJploklsqZPUtVOU yyZW+Wt27jlRVR0MfSveHSyIl3NqfZbqpI3Iu/XFactLfihxOssQu8CNWscLfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757610404; a=rsa-sha256; cv=none; b=CWNjESQ44vsXuxqsPiHrRgCs6qj/aaGsNHtTHbXsjMPyTLXPA9s8Q3JfNLFH8G2d06qiZm n74CufaAdhKO3UPeWIHCeVNUt8f3s4XwSMuiPdPvC9rr9UVBDxPJhQv0tkvWPvzAz4fwqj 4XcaH0GCHmDeqoeLSPTufkz9rwr5+aqMQb4+UTzF8xG9j+YjoMYiLV65wSVhRbnxez0bm2 M7c2jk54W0Qb1DZPBeWjd510AQ5FShXgeyukQrP9olYjzsz9MyyG4ZjdTT/v+RuZG95xPF Rh2nbwWwN3NIBIcAOv4h7Qrl9esSObYV9nVX7I1DsW5iy0TqmC89+7C56NFhZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3r40tv6z1fJ; Thu, 11 Sep 2025 17:06: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 58BH6iZC097420; Thu, 11 Sep 2025 17:06:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BH6ila097416; Thu, 11 Sep 2025 17:06:44 GMT (envelope-from git) Date: Thu, 11 Sep 2025 17:06:44 GMT Message-Id: <202509111706.58BH6ila097416@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jes=C3=BAs?= Daniel Colmenares Oviedo Subject: git: a5cc9b7b96dc - main - nuageinit: chmod sudoers directory instead of chmod (again) sudoers file List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dtxdf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a5cc9b7b96dcba4d3ee98f2eb58c3f389590ddf0 Auto-Submitted: auto-generated The branch main has been updated by dtxdf: URL: https://cgit.FreeBSD.org/src/commit/?id=a5cc9b7b96dcba4d3ee98f2eb58c3f389590ddf0 commit a5cc9b7b96dcba4d3ee98f2eb58c3f389590ddf0 Author: Jesús Daniel Colmenares Oviedo AuthorDate: 2025-09-11 16:49:56 +0000 Commit: Jesús Daniel Colmenares Oviedo CommitDate: 2025-09-11 17:05:51 +0000 nuageinit: chmod sudoers directory instead of chmod (again) sudoers file * Set mode of sudoers to 0440. Reviewed by: bapt@, jlduran@ Approved by: bapt@, jlduran@ Differential Revision: https://reviews.freebsd.org/D52438 --- libexec/nuageinit/nuage.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/nuageinit/nuage.lua b/libexec/nuageinit/nuage.lua index 48f54b120615..22140dd06fe5 100644 --- a/libexec/nuageinit/nuage.lua +++ b/libexec/nuageinit/nuage.lua @@ -311,10 +311,10 @@ local function addsudo(pwd) end f:close() if chmodsudoers then - chmod(sudoers, "0640") + chmod(sudoers, "0440") end if chmodsudoersd then - chmod(sudoers, "0740") + chmod(sudoers_dir, "0750") end end From nobody Thu Sep 11 17:06:45 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3r61yplz66vJC; Thu, 11 Sep 2025 17:06:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3r52cW6z3Tkj; Thu, 11 Sep 2025 17:06:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jyA1Np6n2PVSTXly9x15zpekzeDOdFjbGs+tBHJnJbM=; b=xjZIg0vzw5aenOPLnky/IiYYpfrJeC1yNos6SEuvktM3r8tPENFld733FVxpmzrCmbyNCc Y3T/49m8mtxajKIJP6QqF9MpPwFnrR66LLTM1qYVv7Nadunau+w2JHGMKqRbrlPknaCRjA DwXG1qBOWbQ8ZOCQLalhxW1Pn8RRkDUEu01zx+/K8o0bJGKTngNh5dwEP76ljGL/Le3srd 0C9BadbefHs9WDefzDoODfCVBgf+B8qAZW/MIIqTA5ee5SGE93fS/VgsVF+8fw88FBt71C uXw7tjmFa7ESfg5ZZEZYqgYFNTIDef3/AIfLLfXuJUj5+DmPpTjCgiClPiCa0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610405; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jyA1Np6n2PVSTXly9x15zpekzeDOdFjbGs+tBHJnJbM=; b=wrtYD1w9hYwjfRHXrtGFKfi0tztl5hh3PE4X+N4zDDhYUNlqZ1A7VqojXdv/XT5FjoylZf P/ipwo9f9Y1zhhKC/TKin2sGQrTW6wf03/Ptz9RQrOTUwSG7Vky40QVNpQBNaeiCKdtOkn Aoa4NLyuUl2n3FqEvn6DogiArIC1RpMktRthgEiud8+DI50xRuVjYMqNmlfLQoxSPQY6Rx kP2oOwBmdgJp8+z5syKb0z2FK9He7tiNn5XIE1aUrtR5HN0V9Z7d0ktrNeUZsNM59JuPHx B/z1qc9uPAi7XjIb6OCjyvSIq1Eb4Upj4M7suKfjukkahBGX1Ch4XUwY9/7YCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757610405; a=rsa-sha256; cv=none; b=b1EuMY8/Orhh8wz4saqH9kGWZfETab7C3xAVpZCKzXn4Uok3YhirUQLLezDbqGA9938Zao hbWBAFBqeXfgiSEjSAEyFK3TDndJOBel9DUmeBvSsjJPhAbUSioZXEVZw8WykI8L6+5BW8 fovKh120GTXGBJdDeDwP2OpZMPWvT/oMKSAlDOCBqayezyzag93ke0hcO9KQgFxv6m9F+I Vw5yjEsmVQK1Q/gCgpjV4ziOtgV7uk6eUoX7YKN9F00iiDRgislqMsUXBSyOf/r+jNy57X TsSOA7XYCuZWuaqzPL9eAfEWPcbmgbatNgnL5eeS8IuYRDZZbmkxeSbam9rdag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3r51tRWz1gs; Thu, 11 Sep 2025 17:06: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 58BH6j6w097464; Thu, 11 Sep 2025 17:06:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BH6jJH097461; Thu, 11 Sep 2025 17:06:45 GMT (envelope-from git) Date: Thu, 11 Sep 2025 17:06:45 GMT Message-Id: <202509111706.58BH6jJH097461@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jes=C3=BAs?= Daniel Colmenares Oviedo Subject: git: 95230b248f64 - main - nuageinit: Allow the use of network parameters from network-config List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dtxdf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 95230b248f6412c2d1c416c1e9795c3192cdf750 Auto-Submitted: auto-generated The branch main has been updated by dtxdf: URL: https://cgit.FreeBSD.org/src/commit/?id=95230b248f6412c2d1c416c1e9795c3192cdf750 commit 95230b248f6412c2d1c416c1e9795c3192cdf750 Author: Jesús Daniel Colmenares Oviedo AuthorDate: 2025-09-11 16:52:30 +0000 Commit: Jesús Daniel Colmenares Oviedo CommitDate: 2025-09-11 17:06:03 +0000 nuageinit: Allow the use of network parameters from network-config To better comply with the cloud-init specification, we need to support the configuration of network-related parameters from the network-config file, which is common in most deployments. Reviewed by: bapt@ Approved by: bapt@ Differential Revision: https://reviews.freebsd.org/D52419 --- libexec/nuageinit/nuageinit | 31 ++++++++++++++++++++++++++++++- libexec/nuageinit/nuageinit.7 | 7 +++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit index 70b27cb33d87..52bfc4d9f69f 100755 --- a/libexec/nuageinit/nuageinit +++ b/libexec/nuageinit/nuageinit @@ -582,6 +582,26 @@ local function config2_network(p) routing:close() end +local function parse_network_config() + local nc_file = ni_path .. "/network-config" + local nc_file_attr = lfs.attributes(nc_file) + if nc_file_attr == nil then + return + end + local f, err = io.open(nc_file) + if err then + nuage.err("error parsing nocloud network-config: " .. err) + end + local obj = yaml.load(f:read("*a")) + f:close() + if not obj then + nuage.err("error parsing nocloud network-config") + end + local netobj = {} + netobj["network"] = obj + return netobj +end + if citype == "config-2" then local parser = ucl.parser() local res, err = parser:parse_file(ni_path .. "/meta_data.json") @@ -678,7 +698,16 @@ if line == "#cloud-config" then end for i = 1, #calls_table do - calls_table[i](obj) + if citype == "nocloud" and calls_table[i] == network_config then + netobj = parse_network_config() + if netobj == nil then + network_config(obj) + else + network_config(netobj) + end + else + calls_table[i](obj) + end end elseif line:sub(1, 2) == "#!" then -- delay for execution at rc.local time -- diff --git a/libexec/nuageinit/nuageinit.7 b/libexec/nuageinit/nuageinit.7 index bfa028fe3fa3..84990c93e545 100644 --- a/libexec/nuageinit/nuageinit.7 +++ b/libexec/nuageinit/nuageinit.7 @@ -182,6 +182,13 @@ configuration in .Pa /etc/ssh/sshd_config .It Ic network Network configuration parameters. +.Pp +Specifying the following parameters from a file named +.Pa network-config +takes precedence over their specification from the +.Ic network +parameter of +.Pa user-data Ns . .Bl -tag -width "ethernets" .It Ic ethernets Mapping representing a generic configuration for existing network interfaces. From nobody Thu Sep 11 17:06:46 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3r70TZZz66wPY; Thu, 11 Sep 2025 17:06:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3r63Rcsz3V2T; Thu, 11 Sep 2025 17:06:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OkO38+9EZvnj2MI5NrZta2FqeM1ttwbq/XTr6Lc24VU=; b=GrCaBWu4Qzd6BtYa9LmVY20fEhPEm38EbR0vL69dSMAUXyxHdeTM8hK9llTvkySaD9vrT9 ORO9dTbWXGZ6V3Rn2ReeR2iBfWdNoMRPh/ncdDYO1vXw7kKBSZCnU2dLKZ/Fv+3pDIuEVD lFQTiO5PGlEa8QCRsAfy0+TjRBK7x0kvPjgaNmvfHOCe25wEm5vqPXOH2QvVMSNWCDAZQC CVOIZOTJmAYDHaqxa3BwaGLOmD2JcLjnJYr91sLVrrN8pnfgDoTshuHxdrK0tOHUSMnwye IB0XUkVlFcFlacIPHLM5gJnMKEdtJeNcx6aMLUxtDc/EJClFdiNXRmnKfJu4ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OkO38+9EZvnj2MI5NrZta2FqeM1ttwbq/XTr6Lc24VU=; b=NAFGdI7A3QaFCoEYx/dL/hcGzegPsq9DsbnDIeli9wSrikj6F60qyXaAyJ2ixv6Aqp/nyz ivLPoWrY+Dhft0Z3v/qZhnaQGwtw5IgSPTnawnIUBr8jPUgdRMCyguZAWH9ry4WvLQZ93H Vw9blvtI7/QV6Zrt6eQfUHbxJ6jeGUo9hjSiBCafFpINXl0/mwm0+13s6qPWyN/PTWD2Cc E/fbalR032qwtwJQSDrVdebD7p1WAtDeW9OiUXubyixZ5Fo5kCDwP8k9mK3BxAlkIZyoBl /ymfiA2YPZWFrIdOskWb71Jp3hTYHpukzJdA+Sikv4/0XPHzmMroG12Pf4ycxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757610406; a=rsa-sha256; cv=none; b=x2hfKkfLQ+OLxeaCQyDPttQXo4c8JsqtR1F0swAC3kGeo7fxh7WaiKtt3Lf48IiXvevNZW f9Wdwo3yb1kF2qFpeiUomTLxrgpXQMrTTGECub1Qd+6Zf6p7HWyUTJ3McnVNaDJLWUjbV5 w9n4V3D2lCwhMZy1Ml/TxcS4t6bLfSg6cRWBIJ1wjuCXh1ZfCa+yEymoL0yrxzJp+qHdxX +4y2AVkyVkpnvvfHB5qvMNezoNnO6Qln7V01oTr4tFc3PHpC1kyLQgP+ejIujo4aQqvAOI fTy+yY7dSPkCCBTmyyByNJ2jEx+VhgqW2TElKdwYTQZfua7W/G9yKeIEXPXASw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3r62xvWz1ts; Thu, 11 Sep 2025 17:06: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 58BH6kux097506; Thu, 11 Sep 2025 17:06:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BH6kiJ097503; Thu, 11 Sep 2025 17:06:46 GMT (envelope-from git) Date: Thu, 11 Sep 2025 17:06:46 GMT Message-Id: <202509111706.58BH6kiJ097503@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jes=C3=BAs?= Daniel Colmenares Oviedo Subject: git: 9a829e865697 - main - nuageinit: Add doas support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dtxdf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9a829e865697e623a046800545be7781a117125e Auto-Submitted: auto-generated The branch main has been updated by dtxdf: URL: https://cgit.FreeBSD.org/src/commit/?id=9a829e865697e623a046800545be7781a117125e commit 9a829e865697e623a046800545be7781a117125e Author: Jesús Daniel Colmenares Oviedo AuthorDate: 2025-09-11 16:54:24 +0000 Commit: Jesús Daniel Colmenares Oviedo CommitDate: 2025-09-11 17:06:03 +0000 nuageinit: Add doas support * Set mode of etc directory to 0755. * Use user.localbase sysctl instead of /usr/local. * Add test case for doas. * Set ${LOCALBASE} instead of /usr/local in nuageinit(7) man page. Reviewed by: bapt@ Approved by: bapt@ Differential Revision: https://reviews.freebsd.org/D52437 --- libexec/nuageinit/nuage.lua | 62 +++++++++++++++++++++++++++++++++++- libexec/nuageinit/nuageinit | 3 ++ libexec/nuageinit/nuageinit.7 | 9 +++++- libexec/nuageinit/tests/nuageinit.sh | 12 ++++++- 4 files changed, 83 insertions(+), 3 deletions(-) diff --git a/libexec/nuageinit/nuage.lua b/libexec/nuageinit/nuage.lua index 22140dd06fe5..587e4c9c2cd4 100644 --- a/libexec/nuageinit/nuage.lua +++ b/libexec/nuageinit/nuage.lua @@ -7,6 +7,17 @@ local unistd = require("posix.unistd") local sys_stat = require("posix.sys.stat") local lfs = require("lfs") +local function getlocalbase() + local f = io.popen("sysctl -in user.localbase 2> /dev/null") + local localbase = f:read("*l") + f:close() + if localbase == nil or localbase:len() == 0 then + -- fallback + localbase = "/usr/local" + end + return localbase +end + local function decode_base64(input) local b = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' input = string.gsub(input, '[^'..b..'=]', '') @@ -276,11 +287,59 @@ local function addsshkey(homedir, key) end end +local function adddoas(pwd) + local chmodetcdir = false + local chmoddoasconf = false + local root = os.getenv("NUAGE_FAKE_ROOTDIR") + local localbase = getlocalbase() + local etcdir = localbase .. "/etc" + if root then + etcdir= root .. etcdir + end + local doasconf = etcdir .. "/doas.conf" + local doasconf_attr = lfs.attributes(doasconf) + if doasconf_attr == nil then + chmoddoasconf = true + local dirattrs = lfs.attributes(etcdir) + if dirattrs == nil then + local r, err = mkdir_p(etcdir) + if not r then + return nil, err .. " (creating " .. etcdir .. ")" + end + chmodetcdir = true + end + end + local f = io.open(doasconf, "a") + if not f then + warnmsg("impossible to open " .. doasconf) + return + end + if type(pwd.doas) == "string" then + local rule = pwd.doas + rule = rule:gsub("%%u", pwd.name) + f:write(rule .. "\n") + elseif type(pwd.doas) == "table" then + for _, str in ipairs(pwd.doas) do + local rule = str + rule = rule:gsub("%%u", pwd.name) + f:write(rule .. "\n") + end + end + f:close() + if chmoddoasconf then + chmod(doasconf, "0640") + end + if chmodetcdir then + chmod(etcdir, "0755") + end +end + local function addsudo(pwd) local chmodsudoersd = false local chmodsudoers = false local root = os.getenv("NUAGE_FAKE_ROOTDIR") - local sudoers_dir = "/usr/local/etc/sudoers.d" + local localbase = getlocalbase() + local sudoers_dir = localbase .. "/etc/sudoers.d" if root then sudoers_dir= root .. sudoers_dir end @@ -584,6 +643,7 @@ local n = { update_packages = update_packages, upgrade_packages = upgrade_packages, addsudo = addsudo, + adddoas = adddoas, addfile = addfile } diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit index 52bfc4d9f69f..f457438c7e89 100755 --- a/libexec/nuageinit/nuageinit +++ b/libexec/nuageinit/nuageinit @@ -139,6 +139,9 @@ local function users(obj) if u.sudo then nuage.addsudo(u) end + if u.doas then + nuage.adddoas(u) + end else nuage.warn("invalid type : " .. type(u) .. " for users entry number " .. n) end diff --git a/libexec/nuageinit/nuageinit.7 b/libexec/nuageinit/nuageinit.7 index 84990c93e545..c90fde5f406d 100644 --- a/libexec/nuageinit/nuageinit.7 +++ b/libexec/nuageinit/nuageinit.7 @@ -307,7 +307,14 @@ Ignored if an encrypted password is already provided. Boolean to determine if the user account should be locked. .It Ic sudo A string or an array of strings which should be appended to -.Pa /usr/local/etc/sudoers.d/90-nuageinit-users +.Pa ${LOCALBASE}/etc/sudoers.d/90-nuageinit-users +.It Ic doas +A string or an array of strings which should be appended to +.Pa ${LOCALBASE}/etc/doas.conf +.Pp +Instead of hardcoding the username, you can use +.Sy %u Ns , +which will be replaced by the current username. .El .Pp A special case exist: if the entry is a simple string with the value diff --git a/libexec/nuageinit/tests/nuageinit.sh b/libexec/nuageinit/tests/nuageinit.sh index 98593f7d75b0..761eab64f766 100644 --- a/libexec/nuageinit/tests/nuageinit.sh +++ b/libexec/nuageinit/tests/nuageinit.sh @@ -119,12 +119,16 @@ users: gecos: Foo B. Bar primary_group: foobar sudo: ALL=(ALL) NOPASSWD:ALL + doas: permit persist %u as root groups: users passwd: $6$j212wezy$7H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/ - name: bla sudo: - "ALL=(ALL) NOPASSWD:/usr/sbin/pw" - "ALL=(ALL) ALL" + doas: + - "deny %u as foobar" + - "permit persist %u as root cmd whoami" EOF atf_check /usr/libexec/nuageinit "${PWD}"/media/nuageinit nocloud atf_check /usr/libexec/nuageinit "${PWD}"/media/nuageinit postnet @@ -147,7 +151,13 @@ EOF sed -i "" "s/freebsd:.*:1001/freebsd:freebsd:1001/" "${PWD}"/etc/master.passwd atf_check -o file:expectedpasswd cat "${PWD}"/etc/master.passwd atf_check -o file:expectedgroup cat "${PWD}"/etc/group - atf_check -o inline:"foobar ALL=(ALL) NOPASSWD:ALL\nbla ALL=(ALL) NOPASSWD:/usr/sbin/pw\nbla ALL=(ALL) ALL\n" cat ${PWD}/usr/local/etc/sudoers.d/90-nuageinit-users + localbase=`sysctl -ni user.localbase 2> /dev/null` + if [ -z "${localbase}" ]; then + # fallback + localbase="/usr/local" + fi + atf_check -o inline:"foobar ALL=(ALL) NOPASSWD:ALL\nbla ALL=(ALL) NOPASSWD:/usr/sbin/pw\nbla ALL=(ALL) ALL\n" cat "${PWD}/${localbase}/etc/sudoers.d/90-nuageinit-users" + atf_check -o inline:"permit persist foobar as root\ndeny bla as foobar\npermit persist bla as root cmd whoami\n" cat "${PWD}/${localbase}/etc/doas.conf" } nocloud_network_head() From nobody Thu Sep 11 17:06:47 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN3r80CwKz66wcb; Thu, 11 Sep 2025 17:06: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN3r74gbmz3TjQ; Thu, 11 Sep 2025 17:06:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ylxhk9q+lhLxO1Fd0fbz+vO1jPyrUE/IjspuSGaTqdU=; b=hGObhTrYbzt/kO/sPBlyh0MzgB+Qj0XSIjECB5yCFoWfNyucMrosaCn0wWNQos1f/ebhFq OxtnGvaSIf6WUmZbD6PIY9p5/65Ahdv4hoZpkPiPtUeDK7eBYw9QXi4aThHu6GNtJxNjVv T1ve6y7MSvSpwYnkNU8rxDvBPDWX7wQgfX1Q22FafXMe1lyfmLuq4lVvPaIGDsDWdeyPnf PIfMnpQwQ2ZF0KbGpkemb7DiSJfvVhz26pxL3uZ5YwSpS1Yt9LpC+exbIa6+txzw2XMLRe iRp1tQH51EC0q0/d7NUeUWd+dV5wJJWETAvdssjz6qxPdnU860F5p8hS6d2K/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757610407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ylxhk9q+lhLxO1Fd0fbz+vO1jPyrUE/IjspuSGaTqdU=; b=MwCjpHknBX4knrmLK0bC/5jPH4DeSUi2B/ofyelMqdc7D5wjMZ97W2VIuWKlOUt0m3RveB 389CX9iYR7ss5RNg75GTM2JimWkAREMt78x5tkvhtpI/Q8275UxlCSowRYtMGjrS+Un8yA 6zGtrHj4pMqWlHaZkWQeJ5hSAzPR6bXMp3v14TMQ0wABprfoOfTnGwdple7hZ3Dw9DuuRk LxildWCqSRX/f8L//kztvG/MSwFKMDW9yzv4oAYrDbAFiCICeC23CgRiesQ+8pDGNghWI1 3AFEs7Mi09ja6AcE61GlTup+m3pq5KeNq6HHw3ZiPnYcMyDt/aT5KHBgGUrawQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757610407; a=rsa-sha256; cv=none; b=jg9lLRpL9t5R4m3I7Ew54rYuXyAzW3MoabALgnHnf3Dj85nc2aqQeY7u9NxyKyDGp09Yxq WZreCO+ZFQY4M1HiG5Yk/gxzSOFBxFJPm9Q5JMXOZNxZbq95+NA5MJ8zeM+J/IZtjhmisg TbnXcim89EiGKnh2tbat0qkWwQxTeF1WawFH5Ps+yLTFL5j4x9TwoE81bsYw/efcgT8gaG z0m7U1MHV9CdSzlWrS2zkLB5F+ZOw0x4TZ6ZAABxVAfzrm5dbdctmahMqNhSInqZyjE9G6 lRYUZDmUTdvhw8p1GpBp0oDwy0lijVDanAefAtaLvV6vaMehWOskiienEdGl7Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN3r73tnmz1tt; Thu, 11 Sep 2025 17:06: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 58BH6lso097549; Thu, 11 Sep 2025 17:06:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BH6lTp097546; Thu, 11 Sep 2025 17:06:47 GMT (envelope-from git) Date: Thu, 11 Sep 2025 17:06:47 GMT Message-Id: <202509111706.58BH6lTp097546@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jes=C3=BAs?= Daniel Colmenares Oviedo Subject: git: 18555060dcae - main - nuageinit: Add me to copyright list List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dtxdf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 18555060dcae4cad8f2f8968142fc02a2571377b Auto-Submitted: auto-generated The branch main has been updated by dtxdf: URL: https://cgit.FreeBSD.org/src/commit/?id=18555060dcae4cad8f2f8968142fc02a2571377b commit 18555060dcae4cad8f2f8968142fc02a2571377b Author: Jesús Daniel Colmenares Oviedo AuthorDate: 2025-09-11 17:00:41 +0000 Commit: Jesús Daniel Colmenares Oviedo CommitDate: 2025-09-11 17:06:03 +0000 nuageinit: Add me to copyright list Approved by: bapt@ --- libexec/nuageinit/nuage.lua | 1 + libexec/nuageinit/nuageinit | 1 + libexec/nuageinit/nuageinit.7 | 1 + libexec/nuageinit/tests/nuage.sh | 1 + libexec/nuageinit/tests/nuageinit.sh | 1 + libexec/nuageinit/tests/utils.sh | 1 + 6 files changed, 6 insertions(+) diff --git a/libexec/nuageinit/nuage.lua b/libexec/nuageinit/nuage.lua index 587e4c9c2cd4..ef3cfd994fe1 100644 --- a/libexec/nuageinit/nuage.lua +++ b/libexec/nuageinit/nuage.lua @@ -2,6 +2,7 @@ -- SPDX-License-Identifier: BSD-2-Clause -- -- Copyright(c) 2022-2025 Baptiste Daroussin +-- Copyright(c) 2025 Jesús Daniel Colmenares Oviedo local unistd = require("posix.unistd") local sys_stat = require("posix.sys.stat") diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit index f457438c7e89..29340a3d91ea 100755 --- a/libexec/nuageinit/nuageinit +++ b/libexec/nuageinit/nuageinit @@ -3,6 +3,7 @@ -- SPDX-License-Identifier: BSD-2-Clause-FreeBSD -- -- Copyright(c) 2022-2025 Baptiste Daroussin +-- Copyright(c) 2025 Jesús Daniel Colmenares Oviedo local nuage = require("nuage") local ucl = require("ucl") diff --git a/libexec/nuageinit/nuageinit.7 b/libexec/nuageinit/nuageinit.7 index c90fde5f406d..b527c984970c 100644 --- a/libexec/nuageinit/nuageinit.7 +++ b/libexec/nuageinit/nuageinit.7 @@ -1,6 +1,7 @@ .\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2025 Baptiste Daroussin +.\" Copyright (c) 2025 Jesús Daniel Colmenares Oviedo .\" .Dd June 26, 2025 .Dt NUAGEINIT 7 diff --git a/libexec/nuageinit/tests/nuage.sh b/libexec/nuageinit/tests/nuage.sh index b709d25532ff..57d83b62928a 100644 --- a/libexec/nuageinit/tests/nuage.sh +++ b/libexec/nuageinit/tests/nuage.sh @@ -1,5 +1,6 @@ #- # Copyright (c) 2022-2025 Baptiste Daroussin +# Copyright (c) 2025 Jesús Daniel Colmenares Oviedo # # SPDX-License-Identifier: BSD-2-Clause # diff --git a/libexec/nuageinit/tests/nuageinit.sh b/libexec/nuageinit/tests/nuageinit.sh index 761eab64f766..2b7c5226c97a 100644 --- a/libexec/nuageinit/tests/nuageinit.sh +++ b/libexec/nuageinit/tests/nuageinit.sh @@ -1,5 +1,6 @@ #- # Copyright (c) 2022-2025 Baptiste Daroussin +# Copyright (c) 2025 Jesús Daniel Colmenares Oviedo # # SPDX-License-Identifier: BSD-2-Clause # diff --git a/libexec/nuageinit/tests/utils.sh b/libexec/nuageinit/tests/utils.sh index 26f117d81d60..76cd7e045473 100644 --- a/libexec/nuageinit/tests/utils.sh +++ b/libexec/nuageinit/tests/utils.sh @@ -1,5 +1,6 @@ #- # Copyright (c) 2022 Baptiste Daroussin +# Copyright (c) 2025 Jesús Daniel Colmenares Oviedo # # SPDX-License-Identifier: BSD-2-Clause # From nobody Thu Sep 11 19:40:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN7FG5BWBz67LXs; Thu, 11 Sep 2025 19:40:18 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN7FG4jm8z3qBV; Thu, 11 Sep 2025 19:40:18 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757619618; 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=JjwMBDEopXV39VnmQ94YkOeh0P9TX9d0EwYOAM0pYu4=; b=vLyrVBudSq24uCm0bu44nwNRFGpW8+qxKiT2hz3AC57bdKQ0pvBR7vq8Rojb/qHoY+8vyg j6evVEN2LQhSK0mdlLrFzFZNBF7x9vtIQVhERI5aRKl9IfmZY9YDZQz1vaZQrNTSU3eOcf Gq+KlaJ6eTH1v5OrM6h3q8ckT9mvMSrsUuXL3Qskh1tguG6NRnQY7OTm6OZQSRcLlCqBNj V/JFM+lSD4AfI+WYL2Zi6aVCXBLUomi3cKJOQhMWEyOlpqEMK7nLWxBjLjZpCJzyI4Bgsg Ar43NUtignVfkYAmSGLh92t3aSAImcdxC36saoFwQA0SH/3TJmBpUmMjApkz1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757619618; 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=JjwMBDEopXV39VnmQ94YkOeh0P9TX9d0EwYOAM0pYu4=; b=cYaF+Sg1ramtfUXCPBmpMhtPKYX4Ohc0EhoO+jRJqrJCSsrLDTLxXQQ3mnjK1i8pXEDLAb m4SMhgLHYTpl9Hmh9UYYSp1icA+afTYMfatothWfRJt3gYVS/MO8Z34SMWyM6uXrXvg2cH Gzx5oKizv/LXqqXhFAvuAnrS42FG+WwyUO/o+r83l+mmSC2lG5EuarQ9lyMxooRK4vwc8j mjkS7vhvp+Ya2oOt+7x1um6hEUB9NCviUzlpuZTt7Cs9q5r9ubUQShhwmcSC9IdPQ4C2/Y pEhV8tcajq3CDuQnJWvLcSy0qzNaSBL3k+JyKbp5DISE+KAuabMq94P0cScuYA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757619618; a=rsa-sha256; cv=none; b=QOvXu3umD6t4MHmlHvH7GpCwpJzZLlHRbKcsAz3YVrAjxsKn5+6rc9CwXMwFmSRVnskShG CQpNPmUqmQlH7QBmeaOKxx1Mz/Bjq5xDK/QiLv9ki7F79trkGTuTV+YPNQLa8o8n7N7Q3v a0FBjdyWeWbSS23O9iAU1SvgqZ12IuNN1Rja7g4oAYZh39lrgF7vfe1T0TTTy5V+f0hRBs NLe0hOB8QCN+txQsrVB1TuRv1UCSON3OnLRCWz6rdoGX4qaA4Ky+o75/6xfz4hfbO5YBbA D+SQGiZNMYCiGiJ/YH6/D8jD7A6qFGzNQ0epv819KaNXLClbN82/AczotQsC8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [IPV6:2601:5c0:4202:5670:7c27:8c2d:b385:7578] (unknown [IPv6:2601:5c0:4202:5670:7c27:8c2d:b385:7578]) (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 4cN7FG2FxXz68S; Thu, 11 Sep 2025 19:40:18 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <75caa45d-aa73-4ee1-9d8d-e2f53f3cfe2a@FreeBSD.org> Date: Thu, 11 Sep 2025 15:40:17 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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: d20c82507278 - main - Revert "libc: Remove readdir_r(3)" Content-Language: en-US To: Warner Losh , =?UTF-8?Q?Olivier_Cochard-Labb=C3=A9?= Cc: =?UTF-8?Q?Dag-Erling_Sm=C3=B8rgrav?= , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202509111512.58BFCV87088340@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 9/11/25 12:57, Warner Losh wrote: > On Thu, Sep 11, 2025 at 10:27 AM Olivier Cochard-Labbé > wrote: > >> >> On Thu, Sep 11, 2025 at 8:12 AM Dag-Erling Smørgrav >> wrote: >> >>> The branch main has been updated by des: >>> >>> URL: >>> https://cgit.FreeBSD.org/src/commit/?id=d20c82507278e003f391c3fb04f4e49afd1537ab >>> >>> commit d20c82507278e003f391c3fb04f4e49afd1537ab >>> Author: Dag-Erling Smørgrav >>> AuthorDate: 2025-09-11 15:12:22 +0000 >>> Commit: Dag-Erling Smørgrav >>> CommitDate: 2025-09-11 15:12:22 +0000 >>> >>> Revert "libc: Remove readdir_r(3)" >>> >>> This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4. >>> >>> >> Hi Dag-Erling, >> Could you please explain why this change was reversed? >> Because the reason was missing from this commit message. >> > > Rust breaks with this change. While rust can be fixed (and will be) since > it's doing some sketch things and the fix is to just remove the sketch > stuff. However, part of Rust's work flow is to do A/B testing between new > runs under test, and older Rust versions. The old binaries work fine, but > newly-built copies of the old versions do not. Until those old versions > 'age out' of this setup, we'll be stuck with this. That's a good reason, but I think the point about the commit log stands. A commit log for a revert that is unedited and just "Revert foo" isn't useful. Developers need to edit the log message to add the why. The above paragraph belonged in the commit log. -- John Baldwin From nobody Thu Sep 11 19:54:16 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN7YN6wlbz67MNB; Thu, 11 Sep 2025 19:54:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN7YN6Pzmz3rPg; Thu, 11 Sep 2025 19:54:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757620456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RrXhqAUvwZICA90pfdTGA4PSxW0/iFCuilqZQkx61Xw=; b=kSciUtDz2+5jrv3ra+v9PPRIgUsd5VTUUL7QKvZwjVHrkzUe2TKELeXjlx7Cth3YqvA/7w NvRpauUFzfMfVfX/hjerd8CO1NTtjkgdNV86Mx6EqS8dVsclFLQTto4JhL5iXMmQhLvP6k QOR6J/7cFQsxxGHlbcD3P0xLOSbugREANwl4pFRBHbzLeDFpk5yXcvMY3wVyVPPfoGbNtk xNDdwjgVwMZr9Fjecpfp7HrTCAbgE4Ki1Fu6Ob0AeYNroSnruludJjHbLHYdM/BM1yvPXH X4KcCK3bdDwtx8+cr1uadhFXU9s44oRf/wU3zCG7Rf5qcep1iGwgtulW9AhR3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757620456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RrXhqAUvwZICA90pfdTGA4PSxW0/iFCuilqZQkx61Xw=; b=pNSbdOI8W0ejowE7gXgMlpgBznQef8Z9Nd0PUhy3X4gp/Oib+5pbUs+4+AJQoAwixY8RG3 SzonORSnA1tXGNyMUYXP4bw33wF4eWdqIKU10tRajPEK5nriSl1udHJ53rVI8UvA0gwsbz 8/UJMuGTI33FCw7hbjiBS6Ao/eaaTjbjrCvRC+g7ufNoDCwOaIJGpro45h4qt1u75S+peN 2cotVtQ6jF4wLZOQH2pmQbxVOwCzu+mEZbmBSiQxTeiK/qO8kvY2XLc4DgPYKU17O6S9ey FxCqPLhcgm/J2xQMVaGBonls3FTU9byyrzZNZE6FgYZHe4hLjPLMJH/asbMQkA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757620456; a=rsa-sha256; cv=none; b=vNUVpbLSKKASMQ5e3f+NkkVCI3SssdvQex3Or386Na/zaPeYXb/lSlCCeCx28PEzKwRw2z MPWNqpjNdxl6J23Cf2FWbWaZQHkRPiTABgTqIvdwIneialNxbNSyfQ6W05L3ow21f4fDCh mqfeIQUi5s1N5fL+57hZPasm/6pWbkyMLzaclJT+DpvNcxPM363T6P1bBfzqfhGR6SMS+l QX7XLx0PeEHgbJfizzPpZlTkw6xgo+7Yy9lxMUg+aJBQE/Gul/BPd1JSNd175jsczPiX4A f08jYVDoSaO3ANRaajnbCY+qcbb+a4VccJpk1YQwsQoI37BaV+uiB/vx3OxLjw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN7YN5knHz5mF; Thu, 11 Sep 2025 19:54: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 58BJsGjG014042; Thu, 11 Sep 2025 19:54:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BJsGhf014039; Thu, 11 Sep 2025 19:54:16 GMT (envelope-from git) Date: Thu, 11 Sep 2025 19:54:16 GMT Message-Id: <202509111954.58BJsGhf014039@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lars Engels Subject: git: a74c8b8236c9 - main - backlight(9): add cross-ref to backlight(8) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lme X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a74c8b8236c9816fb28186c16f7ca999f6fdd573 Auto-Submitted: auto-generated The branch main has been updated by lme: URL: https://cgit.FreeBSD.org/src/commit/?id=a74c8b8236c9816fb28186c16f7ca999f6fdd573 commit a74c8b8236c9816fb28186c16f7ca999f6fdd573 Author: Lars Engels AuthorDate: 2025-09-11 19:47:00 +0000 Commit: Lars Engels CommitDate: 2025-09-11 19:49:48 +0000 backlight(9): add cross-ref to backlight(8) Reviewed by: bcr MFC after: 3 days --- share/man/man9/backlight.9 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/man/man9/backlight.9 b/share/man/man9/backlight.9 index 926a723b3859..c4c338ce56ca 100644 --- a/share/man/man9/backlight.9 +++ b/share/man/man9/backlight.9 @@ -65,6 +65,8 @@ struct. .Bl -tag -width "/dev/backlight/*" .It Pa /dev/backlight/* .El +.Sh SEE ALSO +.Xr backlight 8 .Sh HISTORY The .Nm backlight From nobody Thu Sep 11 20:52:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN8rx6Kdyz67Ql2; Thu, 11 Sep 2025 20:52:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN8rx5dxWz3wvt; Thu, 11 Sep 2025 20:52:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757623969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0v+C6eOvImBwxrs0lvu2/uSSyNf+ib6azcl9i+/QwWE=; b=HSVv/m6dEuPgiMNESq1NJXE/lBBTA4JyY+dMGYxTSA4Pkw0SvduHHFySZ/aEongBnKzLWX wez5siPmIgXGzabBmA4Hwfc4tKFrHN3ie8BIgAXnxXyLVXmlO9JRGbwks4rCE57poxbLSn dK6qkQ/dHDGwlRpvjTI4QwqemGhdWqdi0cJaWUklIQpKr/92FMrKqGCe+D8QVKHyPJEhA4 zst9PwuD4yDwowQmntHEJsQAmdfxCZh7nSg+o5gtdyM0PHDkFu+GQ8vI96J0Jy+IQB3n1I b/huepcz1K8MG8LzoHd0Q1KDXoI/Hjgxy7FKEoTk0YgYFCapA2tI8gXeG9yLMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757623969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0v+C6eOvImBwxrs0lvu2/uSSyNf+ib6azcl9i+/QwWE=; b=eI4hb8i1Hgr0Ew5bdwBldZ9CG7UnzbTzQgosYaGsL0eu/GmcK7VPF3y5eZPcNUSitJDjye nXg3i5xKy2JLEGgy6UzbbM3qp/cRQ0wFbW0Kp+fwDvp0XHd05xZplfomw/Y4a7A/vdRG9/ ViA9grmVSo7WNfGriORnB1y875fLyOILdZAbCFkFJ6g0KnIFO0gFmtTH4BHcNKSbAVfH7f dlCfpEYyDdpC95CmvUOegl1TDeVas165+hcdx0AfrtwXFltONNKvNHwPyiLhv2V3rrnkrS xo4dS1Y/aLmksPjhchj1d+t5csuO3VbhFGAi+Gg6qP6Ikhzu9Aa4wUuNJVzW3g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757623969; a=rsa-sha256; cv=none; b=E3B3pB1HbT4H8FL2HX7kzI7tgMY6es5bWj+g272IiTqN01OKysXs+1UENO8Z4V1IulA70J bcdKQPG8PTmhsLwXvaYIllTGZteUuuvlVFgIbieHa87ItVPlTrXjXM6I+RkBio5WP8lFUv xabyqY+YgMhl7m+DLpLgkQUsE1xfXheXjFPYQqddxBvBYW3JiB9HOJxEseL/kVTFaIUaIa /4qCPkJO5oGF4shtntK3SNwnul1Pdm5wKryaZoPEjDng84WqnR9it6ZTTRnDNJMb5mZUd1 DYX/BQyyRNsYscYv/SvP+20T5PC3hzhL6gi1xoSJwEpwBCRfqZhnTtQDBP+cdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN8rx56B3z7mp; Thu, 11 Sep 2025 20:52: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 58BKqnYZ027134; Thu, 11 Sep 2025 20:52:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BKqntI027131; Thu, 11 Sep 2025 20:52:49 GMT (envelope-from git) Date: Thu, 11 Sep 2025 20:52:49 GMT Message-Id: <202509112052.58BKqntI027131@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 55bd607b9930 - main - uptime: Mention libxo support in manual page List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 55bd607b9930e5f61219007ad0a81801c8cfdbf3 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=55bd607b9930e5f61219007ad0a81801c8cfdbf3 commit 55bd607b9930e5f61219007ad0a81801c8cfdbf3 Author: Dag-Erling Smørgrav AuthorDate: 2025-09-11 20:51:48 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-11 20:51:48 +0000 uptime: Mention libxo support in manual page MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D52489 --- usr.bin/w/uptime.1 | 18 ++++++++++++++++-- usr.bin/w/w.1 | 4 ++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/usr.bin/w/uptime.1 b/usr.bin/w/uptime.1 index b93972d3f932..37881793736f 100644 --- a/usr.bin/w/uptime.1 +++ b/usr.bin/w/uptime.1 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 18, 2020 +.Dd September 11, 2025 .Dt UPTIME 1 .Os .Sh NAME @@ -33,6 +33,7 @@ .Nd show how long system has been running .Sh SYNOPSIS .Nm +.Op Fl -libxo .Sh DESCRIPTION The .Nm @@ -40,6 +41,17 @@ utility displays the current time, the length of time the system has been up, the number of users, and the load average of the system over the last 1, 5, and 15 minutes. +.Pp +The following options are available: +.Bl -tag -width indent +.It Fl -libxo +Generate output via +.Xr libxo 3 +in a selection of different human and machine readable formats. +See +.Xr xo_options 7 +for details on command line arguments. +.El .Sh FILES .Bl -tag -width /boot/kernel/kernel .It Pa /boot/kernel/kernel @@ -51,7 +63,9 @@ $ uptime 11:23AM up 3:01, 8 users, load averages: 21.09, 15.43, 12.79 .Ed .Sh SEE ALSO -.Xr w 1 +.Xr w 1 , +.Xr libxo 3 , +.Xr xo_options 7 .Sh HISTORY The .Nm diff --git a/usr.bin/w/w.1 b/usr.bin/w/w.1 index 159eb3370c8c..2dbcffdeda1f 100644 --- a/usr.bin/w/w.1 +++ b/usr.bin/w/w.1 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 16, 2025 +.Dd September 11, 2025 .Dt W 1 .Os .Sh NAME @@ -54,7 +54,7 @@ user is on, the host from which the user is logged in, the time the user logged on, the time since the user last typed anything, and the name and arguments of the current process. .Pp -The options are as follows: +The following options are available: .Bl -tag -width indent .It Fl -libxo Generate output via From nobody Thu Sep 11 21:05:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN97K5h1mz67R2n; Thu, 11 Sep 2025 21:05:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN97K5BVbz3y2b; Thu, 11 Sep 2025 21:05:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757624717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=U3vFnp0ls2dtD7r84ILSZh3nxvqPjs9lctZ5YHMlxbs=; b=TdlTOAd2H0l5hEwUzIWZ2u9AHAff4uN6CrpQPgrux9U2jl0a8cMiIWJKyV4MDjEnqCM6po PoGKGSi+v5Uro8P864oLFqJpSbR1SI9+I6GiQFbhnOE0Wcv+AjvDnTXOCB72d1jVuYhHCO kl12WxLhj7UuX8OF9LvjAlkWvpv7FV6bsnyY58A1mstPP+K8RvBKGKHDnKoEb5FBLnM3BG OyUzSrKyOAPUTwiL6lB+6w7ii0KZSLu83hecleBK5rCko61w7yUSjcn7z1ue/VXTxIkfbT nebWrkEF12mPCmsFyRf8HFumUyyUGuPM2C799B0mxr8Af89KiSTZ+60BpHRkxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757624717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=U3vFnp0ls2dtD7r84ILSZh3nxvqPjs9lctZ5YHMlxbs=; b=RjfdbZmpg0ClnF0CdmnrkeNvx7H+dIIxzKbvLuUrAO9nmPIVDkhIFtQH+MWXVFYZuzgf4E xJ7QmqCgtkUO1ZUmluXxYSXZHgZZI3KqDcnrm/BXPgAD8EbZVpRyu+e31pRL5+0HSoy0U9 m11T2tEdIfRyG29IqPamDxpiUVOe46bz5vMpfbthcOmipQv179rY5P8jRO9kOPsF4E1fxv 6QV+xaBA19KV8zb1ujsfUsoM7KMw8U4jhYRRpkmP3PTQj7LrO8fpYSKKUERF8R+wQkWNAI Tm88GOqW0auosYz5VGHrO1wvoAzH0NH8jc0oNEmm27njNRLq8OLiZ+GY436cuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757624717; a=rsa-sha256; cv=none; b=AaEZKLGSUmhdjWHq3O6dNY+TXG/dTQNWwb3QKIYUxuLRdHBgbFT2jqXgMkM874JYY6+kuC MsTgJGJ5L2YfdojU53xBOsi+y9fPbJFUJQwtLqs0ZsUeZGFPsZHCkneOgDtHEfiCdkvKdR BJmNhGEt9YTMok4SBHfvw7g7+1MC4RiwA/LFvgzzvnTdZqFphw0lBzE6+KpLJPKKN92Wyw hYedqAG3hnB8ph2y+6SQvzXAX8wC2w8Y9pJGdgAfk2YQrZ8LwsOioJYspi6gD8nyR8LsNO cWQf3IicW8HTL+RAJr6qB5lZB5XXrs1gx3qYLGL7yuteA0/V2KOB9FT+RZKYmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN97K4SXFz7nZ; Thu, 11 Sep 2025 21: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 58BL5H6d047447; Thu, 11 Sep 2025 21: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 58BL5Hbm047444; Thu, 11 Sep 2025 21:05:17 GMT (envelope-from git) Date: Thu, 11 Sep 2025 21:05:17 GMT Message-Id: <202509112105.58BL5Hbm047444@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 1014003c538c - main - Revert "linux: fix reporting NL_RTM_DELLINK to Netlink sockets" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 1014003c538ccf8b258c9f0b11c0c131573a63cf Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=1014003c538ccf8b258c9f0b11c0c131573a63cf commit 1014003c538ccf8b258c9f0b11c0c131573a63cf Author: Gleb Smirnoff AuthorDate: 2025-09-11 21:02:51 +0000 Commit: Gleb Smirnoff CommitDate: 2025-09-11 21:02:51 +0000 Revert "linux: fix reporting NL_RTM_DELLINK to Netlink sockets" I received a report that certain Linux application would crash on a message of a departure of an interface with FreeBSD name. Looks like dropping NL_RTM_DELLINK is a lesser evil than relay them with FreeBSD names. This reverts commit 554907bac3b264863a051f75eedc35d180d3e18c. --- sys/compat/linux/linux_netlink.c | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/sys/compat/linux/linux_netlink.c b/sys/compat/linux/linux_netlink.c index 927f3689e2b6..6aeafe84adc6 100644 --- a/sys/compat/linux/linux_netlink.c +++ b/sys/compat/linux/linux_netlink.c @@ -241,10 +241,25 @@ nlmsg_copy_nla(const struct nlattr *nla_orig, struct nl_writer *nw) return (false); } +/* + * Translate a FreeBSD interface name to a Linux interface name. + */ +static bool +nlmsg_translate_ifname_nla(struct nlattr *nla, struct nl_writer *nw) +{ + char ifname[LINUX_IFNAMSIZ]; + + if (ifname_bsd_to_linux_name((char *)(nla + 1), ifname, + sizeof(ifname)) <= 0) + return (false); + return (nlattr_add_string(nw, IFLA_IFNAME, ifname)); +} + +#define LINUX_NLA_UNHANDLED -1 /* * Translate a FreeBSD attribute to a Linux attribute. - * Returns false when the attribute is not processed and the caller must take - * care of it. + * Returns LINUX_NLA_UNHANDLED when the attribute is not processed + * and the caller must take care of it, otherwise the result is returned. */ static int nlmsg_translate_all_nla(struct nlmsghdr *hdr, struct nlattr *nla, @@ -256,27 +271,22 @@ nlmsg_translate_all_nla(struct nlmsghdr *hdr, struct nlattr *nla, case NL_RTM_DELLINK: case NL_RTM_GETLINK: switch (nla->nla_type) { - case IFLA_IFNAME: { - char ifname[LINUX_IFNAMSIZ]; - - if (ifname_bsd_to_linux_name((char *)(nla + 1), ifname, - sizeof(ifname)) > 0) - return (true); - break; - } + case IFLA_IFNAME: + return (nlmsg_translate_ifname_nla(nla, nw)); default: break; } default: break; } - return (false); + return (LINUX_NLA_UNHANDLED); } static bool nlmsg_copy_all_nla(struct nlmsghdr *hdr, int raw_hdrlen, struct nl_writer *nw) { struct nlattr *nla; + int ret; int hdrlen = NETLINK_ALIGN(raw_hdrlen); int attrs_len = hdr->nlmsg_len - sizeof(struct nlmsghdr) - hdrlen; @@ -287,12 +297,15 @@ nlmsg_copy_all_nla(struct nlmsghdr *hdr, int raw_hdrlen, struct nl_writer *nw) if (nla->nla_len < sizeof(struct nlattr)) { return (false); } - if (!nlmsg_translate_all_nla(hdr, nla, nw) && - !nlmsg_copy_nla(nla, nw)) + ret = nlmsg_translate_all_nla(hdr, nla, nw); + if (ret == LINUX_NLA_UNHANDLED) + ret = nlmsg_copy_nla(nla, nw); + if (!ret) return (false); } return (true); } +#undef LINUX_NLA_UNHANDLED static unsigned int rtnl_if_flags_to_linux(unsigned int if_flags) From nobody Thu Sep 11 21:10:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN9Fk5Lvvz67R8Q; Thu, 11 Sep 2025 21:10: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN9Fk4X1cz40Pp; Thu, 11 Sep 2025 21:10:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625050; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uuQkQXQ86BhTsOwnf3Wht5Mg/DHpF/ZzJW8E6v1J+ew=; b=CUB6IYTvyk7jQ+RlzE8kmoExqiKQ124Tdvrynu5melor5v4oyqIc/7r7n8aUifYriAvulf 9BtNA/pXEEXRrf/GRvEQbyyEGM4qJPQPaSwIHfh1eo6ODPgWXBtsFSoOBRp/8UFzJJiB76 JomylS0hlXoUlZdH4PyOSMborK+nw3lOWWqqltsCeZo0Yvfc0twvDR10BU/FzD6UJ1JNDe j45JfOtEJpscRIF5kKK+6IJb6dyZPERa/T+YbvUvDMRdUUZAkkz2q25a9yf+Ua7Foc4C2f F9hIEpig8IilOylGMhieTvPm/sE6LBYU5/NWRbqHJ6NbMHEXMvdaRWvMYBUGWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625050; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uuQkQXQ86BhTsOwnf3Wht5Mg/DHpF/ZzJW8E6v1J+ew=; b=rJyJN4J6rB+PFStEzSP2bZDWUR9HO/8oDQspA05p8p7hY4vWhTzpcNQNe9rjds7MC5NV79 1TxUXYQ3AeXzZfU88iL2LAZ7gBtCBnaxkHQsR6Jxppv+i6cO72Qf9kOeAMjPw6YOgXMqOV BChmMdEXRlmzYAB95U2Xm5lcbp8vWigKZ2OsouNWHHPp7Xv4dTZ82K93EXoeCbdjQfBYKT ilTWxY2J8CEIfv/St+crJqd8tEzSaFw26Li1sH8G7Cx0f5FETFz/SGUPkAovqCgly1MBbs ZRH1ykl7P6gtpZJWSFlXqewlxbHCJONiCN1Ru3lbn0IoNvplSVkGhb1sl1BoHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757625050; a=rsa-sha256; cv=none; b=K4/sBXSJlLsXxnkCs6h2mmuQbffqPsHAId7C3wUwpkCXAZOq88lp3YKt4aLPm3qYs67Nfr eIyUADe6WhA12LliftxPfevd0rLOZSUPgRj24+gRDnkA7QiWAfw3yyRK0+lNcj8JACh3D6 vuRoAinYKxCV/0dJ3gwbrMBy5NeTs+f2sfA5yz5kxOZBJr+l4GkEeGwnCjocCqhODDI5MI vb20k8VcU9AzlmPu4l/LCXNW5Y+C48WqDX7O3nF4bD0zk6Y9wMU/H+wQjAEghDGY8stH/0 M+lcQFePNH/Pgz6qbSXgxLer2KwloPx7v5VRrWxkKUeu36eRzIV5JNubsnsJMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN9Fk3rr0z8PF; Thu, 11 Sep 2025 21:10: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 58BLAosw057885; Thu, 11 Sep 2025 21: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 58BLAoeq057882; Thu, 11 Sep 2025 21:10:50 GMT (envelope-from git) Date: Thu, 11 Sep 2025 21:10:50 GMT Message-Id: <202509112110.58BLAoeq057882@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 5a3885768490 - main - cxgbe tom: Halve the size of offload transmit software descriptors List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 5a38857684907c52982787dbac2c5e5c8abfd4f8 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=5a38857684907c52982787dbac2c5e5c8abfd4f8 commit 5a38857684907c52982787dbac2c5e5c8abfd4f8 Author: John Baldwin AuthorDate: 2025-09-11 21:10:39 +0000 Commit: John Baldwin CommitDate: 2025-09-11 21:10:39 +0000 cxgbe tom: Halve the size of offload transmit software descriptors Use bitfields to pack tx_credits and plen into a single 32-bit word. Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D47759 --- sys/dev/cxgbe/cxgbei/icl_cxgbei.c | 2 ++ sys/dev/cxgbe/iw_cxgbe/qp.c | 2 ++ sys/dev/cxgbe/tom/t4_cpl_io.c | 16 ++++++++++++++++ sys/dev/cxgbe/tom/t4_tls.c | 4 ++++ sys/dev/cxgbe/tom/t4_tom.c | 2 ++ sys/dev/cxgbe/tom/t4_tom.h | 7 +++++-- 6 files changed, 31 insertions(+), 2 deletions(-) diff --git a/sys/dev/cxgbe/cxgbei/icl_cxgbei.c b/sys/dev/cxgbe/cxgbei/icl_cxgbei.c index c8592807f843..d805642541d3 100644 --- a/sys/dev/cxgbe/cxgbei/icl_cxgbei.c +++ b/sys/dev/cxgbe/cxgbei/icl_cxgbei.c @@ -1053,6 +1053,8 @@ send_iscsi_flowc_wr(struct adapter *sc, struct toepcb *toep, int maxlen) flowc->mnemval[0].mnemonic = FW_FLOWC_MNEM_TXDATAPLEN_MAX; flowc->mnemval[0].val = htobe32(maxlen); + KASSERT(howmany(flowclen, 16) <= MAX_OFLD_TX_SDESC_CREDITS, + ("%s: tx_credits %u too large", __func__, howmany(flowclen, 16))); txsd->tx_credits = howmany(flowclen, 16); txsd->plen = 0; KASSERT(toep->tx_credits >= txsd->tx_credits && toep->txsd_avail > 0, diff --git a/sys/dev/cxgbe/iw_cxgbe/qp.c b/sys/dev/cxgbe/iw_cxgbe/qp.c index 0e374bc961c4..cbf4bae00a60 100644 --- a/sys/dev/cxgbe/iw_cxgbe/qp.c +++ b/sys/dev/cxgbe/iw_cxgbe/qp.c @@ -1326,6 +1326,8 @@ creds(struct toepcb *toep, struct inpcb *inp, size_t wrsize) return (EINVAL); } txsd = &toep->txsd[toep->txsd_pidx]; + KASSERT(howmany(wrsize, 16) <= MAX_OFLD_TX_SDESC_CREDITS, + ("%s: tx_credits %zu too large", __func__, howmany(wrsize, 16))); txsd->tx_credits = howmany(wrsize, 16); txsd->plen = 0; KASSERT(toep->tx_credits >= txsd->tx_credits && toep->txsd_avail > 0, diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index 7a6b1cbdd736..9ecb4aeee939 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -148,6 +148,8 @@ send_flowc_wr(struct toepcb *toep, struct tcpcb *tp) KASSERT(paramidx == nparams, ("nparams mismatch")); + KASSERT(howmany(flowclen, 16) <= MAX_OFLD_TX_SDESC_CREDITS, + ("%s: tx_credits %u too large", __func__, howmany(flowclen, 16))); txsd->tx_credits = howmany(flowclen, 16); txsd->plen = 0; KASSERT(toep->tx_credits >= txsd->tx_credits && toep->txsd_avail > 0, @@ -215,6 +217,8 @@ update_tx_rate_limit(struct adapter *sc, struct toepcb *toep, u_int Bps) else flowc->mnemval[0].val = htobe32(tc_idx); + KASSERT(flowclen16 <= MAX_OFLD_TX_SDESC_CREDITS, + ("%s: tx_credits %u too large", __func__, flowclen16)); txsd->tx_credits = flowclen16; txsd->plen = 0; toep->tx_credits -= txsd->tx_credits; @@ -491,6 +495,9 @@ t4_close_conn(struct adapter *sc, struct toepcb *toep) #define MIN_TX_CREDITS(iso) \ (MIN_OFLD_TX_CREDITS + ((iso) ? MIN_ISO_TX_CREDITS : 0)) +_Static_assert(MAX_OFLD_TX_CREDITS <= MAX_OFLD_TX_SDESC_CREDITS, + "MAX_OFLD_TX_SDESC_CREDITS too small"); + /* Maximum amount of immediate data we could stuff in a WR */ static inline int max_imm_payload(int tx_credits, int iso) @@ -705,6 +712,8 @@ t4_push_frames(struct adapter *sc, struct toepcb *toep, int drop) if ((m->m_flags & M_NOTREADY) != 0) break; + if (plen + m->m_len > MAX_OFLD_TX_SDESC_PLEN) + break; if (m->m_flags & M_EXTPG) { #ifdef KERN_TLS if (m->m_epg_tls != NULL) { @@ -870,6 +879,8 @@ t4_push_frames(struct adapter *sc, struct toepcb *toep, int drop) toep->flags |= TPF_TX_SUSPENDED; KASSERT(toep->txsd_avail > 0, ("%s: no txsd", __func__)); + KASSERT(plen <= MAX_OFLD_TX_SDESC_PLEN, + ("%s: plen %u too large", __func__, plen)); txsd->plen = plen; txsd->tx_credits = credits; txsd++; @@ -1211,6 +1222,8 @@ t4_push_pdus(struct adapter *sc, struct toepcb *toep, int drop) toep->flags |= TPF_TX_SUSPENDED; KASSERT(toep->txsd_avail > 0, ("%s: no txsd", __func__)); + KASSERT(plen <= MAX_OFLD_TX_SDESC_PLEN, + ("%s: plen %u too large", __func__, plen)); txsd->plen = plen; txsd->tx_credits = credits; txsd++; @@ -1969,6 +1982,9 @@ t4_set_tcb_field(struct adapter *sc, struct sge_wrq *wrq, struct toepcb *toep, req->val = htobe64(val); if (wrq->eq.type == EQ_OFLD) { txsd = &toep->txsd[toep->txsd_pidx]; + _Static_assert(howmany(sizeof(*req), 16) <= + MAX_OFLD_TX_SDESC_CREDITS, + "MAX_OFLD_TX_SDESC_CREDITS too small"); txsd->tx_credits = howmany(sizeof(*req), 16); txsd->plen = 0; KASSERT(toep->tx_credits >= txsd->tx_credits && diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index 27c16b9988ae..857832aafa5c 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -191,6 +191,8 @@ tls_program_key_id(struct toepcb *toep, struct ktls_session *tls, t4_tls_key_ctx(tls, direction, kctx); txsd = &toep->txsd[toep->txsd_pidx]; + _Static_assert(DIV_ROUND_UP(TLS_KEY_WR_SZ, 16) <= + MAX_OFLD_TX_SDESC_CREDITS, "MAX_OFLD_TX_SDESC_CREDITS too small"); txsd->tx_credits = DIV_ROUND_UP(TLS_KEY_WR_SZ, 16); txsd->plen = 0; toep->tx_credits -= txsd->tx_credits; @@ -694,6 +696,8 @@ t4_push_ktls(struct adapter *sc, struct toepcb *toep, int drop) toep->flags |= TPF_TX_SUSPENDED; KASSERT(toep->txsd_avail > 0, ("%s: no txsd", __func__)); + KASSERT(m->m_len <= MAX_OFLD_TX_SDESC_PLEN, + ("%s: plen %u too large", __func__, m->m_len)); txsd->plen = m->m_len; txsd->tx_credits = credits; txsd++; diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 9b09facd05a7..0b54fdaa5c80 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -882,6 +882,8 @@ send_mss_flowc_wr(struct adapter *sc, struct toepcb *toep) flowc->mnemval[0].val = htobe32(toep->params.emss); txsd = &toep->txsd[toep->txsd_pidx]; + _Static_assert(flowclen16 <= MAX_OFLD_TX_SDESC_CREDITS, + "MAX_OFLD_TX_SDESC_CREDITS too small"); txsd->tx_credits = flowclen16; txsd->plen = 0; toep->tx_credits -= txsd->tx_credits; diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index 6295a3484b9f..3b2243aeb69f 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -122,10 +122,13 @@ struct conn_params { }; struct ofld_tx_sdesc { - uint32_t plen; /* payload length */ - uint8_t tx_credits; /* firmware tx credits (unit is 16B) */ + uint32_t plen : 26; /* payload length */ + uint32_t tx_credits : 6; /* firmware tx credits (unit is 16B) */ }; +#define MAX_OFLD_TX_SDESC_PLEN ((1u << 26) - 1) +#define MAX_OFLD_TX_SDESC_CREDITS ((1u << 6) - 1) + struct ppod_region { u_int pr_start; u_int pr_len; From nobody Thu Sep 11 21:10:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN9Fl5Zxpz67R63; Thu, 11 Sep 2025 21: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN9Fl4w8dz40Jr; Thu, 11 Sep 2025 21: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=1757625051; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s39rgA4juf1rrELqZ9LUCxjGtX5mlyY0CyjZfJWh/8A=; b=tF8DqZw9pcFzN8UMeCnkftZQEXnMWHCwyg3C5t35BiBl19+Xgz208571qxchmbHidBzKdl 4YKOOicYMTCPdT35gQudZWsSnRFXeftWrhEPWFOpZ8xva516TMcvhz9N5v2DCbBzqrsamC AD0yl5vc518LfjviLAqWBp8PfUu5dxMAklrE8sf7F1Q0rsHcTH+hEXuqfT8CU3jzJp6xCQ T/ydaZZDiOhC8Go8GYiOdH5aL5elb2ciowxK9JgINeT5Zp5jy4LTrdbXkOjxo19rwgI+JH firNwARaQSgABlvu9/O1j1BCcBaJF0uY+SWSrWPduELIXzrA2Xfb8s9fQoC83Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625051; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s39rgA4juf1rrELqZ9LUCxjGtX5mlyY0CyjZfJWh/8A=; b=XM6YLjmA25p2HlhOyj3ZXDgSp/+MDvwMmyEK+EpBczZIVMAPzxTTf1AT2gJ6VAQa0GT1Jp edVxDdZMxLBJsWDcL666EkxJb2Tp16aFQ8YdUQwIa5HFFwFn/mriZEZojdfx9TKimx7lBY EQ/47n84H/WN9eVZdc4912/5cAQnxo9JunV6g10UJGRynwB8PlEhLHv8pPkTaZGoYvv5ib 84Z2vYz/idWxjaB9b1oejT1tHutLtmqSw+EAyjuq5y48UH/y2qbYg9ptVGcP+SVOlWbn67 K8c9vhhInQBdz+0qKZ9qL9GE9Qs7oZDk4UAJhOzAUhm3hWHJnPAf3JyuqymMkA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757625051; a=rsa-sha256; cv=none; b=xBkinUty5860dOzMJhBCCp+0YQ4eyCZJWc+d5UYVpxICPvBfWdQJ0pT25AnkvbvNPJfTDz b7JnR23m8pqULDaL7HKX4jMiB34qZnFQuIe5ztyym4Oo6vPK1wajmltx+Z9W/1pu9+bZlQ JsVaN1L2dJ9gK9U6gx7G3j+iQJgM9/Phau9KyPKsC2VI9k1+H9B2N2KzuosFhKHw+cPKI5 cNFpQk+etgwIZidUuJlrBJi/+M9p4hnzHBSx2UEETpNHk0qjCXmEe2QO45RqlrodLRG4TT kf7OOM0xiSXV3CqmYzlqR/o5aEK0rU4P0jMBQqEwFj3iBsO3Yl2w2dwCjniAEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN9Fl4PcQz7nf; Thu, 11 Sep 2025 21: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 58BLApPc058480; Thu, 11 Sep 2025 21:10:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BLApNG058460; Thu, 11 Sep 2025 21:10:51 GMT (envelope-from git) Date: Thu, 11 Sep 2025 21:10:51 GMT Message-Id: <202509112110.58BLApNG058460@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: e2a2a7581c96 - main - cxgbe tom: Support sending "raw" WR mbufs on plain TCP and TLS sockets List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: e2a2a7581c9663a08b8d92a34040d6fcdfc20816 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e2a2a7581c9663a08b8d92a34040d6fcdfc20816 commit e2a2a7581c9663a08b8d92a34040d6fcdfc20816 Author: John Baldwin AuthorDate: 2025-09-11 21:10:39 +0000 Commit: John Baldwin CommitDate: 2025-09-11 21:10:39 +0000 cxgbe tom: Support sending "raw" WR mbufs on plain TCP and TLS sockets This is intended to support control work requests that manipulate connection state but do not transmit data. Raw WRs are transmitted immediately if possible, otherwise they are queued to an mbufq in the toe pcb until sufficient credits are available. Raw WRs take precendence over transmitting socket data. Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D47761 --- sys/dev/cxgbe/tom/t4_cpl_io.c | 85 +++++++++++++++++++++++++++++++++++++++++++ sys/dev/cxgbe/tom/t4_tls.c | 13 +++++++ sys/dev/cxgbe/tom/t4_tom.h | 2 + 3 files changed, 100 insertions(+) diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index 9ecb4aeee939..a7b4162db3b5 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -619,6 +619,48 @@ write_tx_sgl(void *dst, struct mbuf *start, struct mbuf *stop, int nsegs, int n) __func__, nsegs, start, stop)); } +bool +t4_push_raw_wr(struct adapter *sc, struct toepcb *toep, struct mbuf *m) +{ +#ifdef INVARIANTS + struct inpcb *inp = toep->inp; +#endif + struct wrqe *wr; + struct ofld_tx_sdesc *txsd; + u_int credits, plen; + + INP_WLOCK_ASSERT(inp); + MPASS(mbuf_raw_wr(m)); + plen = m->m_pkthdr.len; + credits = howmany(plen, 16); + if (credits > toep->tx_credits) + return (false); + + wr = alloc_wrqe(roundup2(plen, 16), &toep->ofld_txq->wrq); + if (wr == NULL) + return (false); + + m_copydata(m, 0, plen, wrtod(wr)); + m_freem(m); + + toep->tx_credits -= credits; + if (toep->tx_credits < MIN_OFLD_TX_CREDITS) + toep->flags |= TPF_TX_SUSPENDED; + + KASSERT(toep->txsd_avail > 0, ("%s: no txsd", __func__)); + KASSERT(credits <= MAX_OFLD_TX_SDESC_CREDITS, + ("%s: tx_credits %u too large", __func__, credits)); + txsd = &toep->txsd[toep->txsd_pidx]; + txsd->plen = 0; + txsd->tx_credits = credits; + if (__predict_false(++toep->txsd_pidx == toep->txsd_total)) + toep->txsd_pidx = 0; + toep->txsd_avail--; + + t4_wrq_tx(sc, wr); + return (true); +} + /* * Max number of SGL entries an offload tx work request can have. This is 41 * (1 + 40) for a full 512B work request. @@ -651,6 +693,7 @@ t4_push_frames(struct adapter *sc, struct toepcb *toep, int drop) struct tcpcb *tp = intotcpcb(inp); struct socket *so = inp->inp_socket; struct sockbuf *sb = &so->so_snd; + struct mbufq *pduq = &toep->ulp_pduq; int tx_credits, shove, compl, sowwakeup; struct ofld_tx_sdesc *txsd; bool nomap_mbuf_seen; @@ -695,6 +738,19 @@ t4_push_frames(struct adapter *sc, struct toepcb *toep, int drop) max_imm = max_imm_payload(tx_credits, 0); max_nsegs = max_dsgl_nsegs(tx_credits, 0); + if (__predict_false((sndptr = mbufq_first(pduq)) != NULL)) { + if (!t4_push_raw_wr(sc, toep, sndptr)) { + toep->flags |= TPF_TX_SUSPENDED; + return; + } + + m = mbufq_dequeue(pduq); + MPASS(m == sndptr); + + txsd = &toep->txsd[toep->txsd_pidx]; + continue; + } + SOCKBUF_LOCK(sb); sowwakeup = drop; if (drop) { @@ -1253,6 +1309,35 @@ t4_push_data(struct adapter *sc, struct toepcb *toep, int drop) t4_push_frames(sc, toep, drop); } +void +t4_raw_wr_tx(struct adapter *sc, struct toepcb *toep, struct mbuf *m) +{ +#ifdef INVARIANTS + struct inpcb *inp = toep->inp; +#endif + + INP_WLOCK_ASSERT(inp); + + /* + * If there are other raw WRs enqueued, enqueue to preserve + * FIFO ordering. + */ + if (!mbufq_empty(&toep->ulp_pduq)) { + mbufq_enqueue(&toep->ulp_pduq, m); + return; + } + + /* + * Cannot call t4_push_data here as that will lock so_snd and + * some callers of this run in rx handlers with so_rcv locked. + * Instead, just try to transmit this WR. + */ + if (!t4_push_raw_wr(sc, toep, m)) { + mbufq_enqueue(&toep->ulp_pduq, m); + toep->flags |= TPF_TX_SUSPENDED; + } +} + int t4_tod_output(struct toedev *tod, struct tcpcb *tp) { diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index 857832aafa5c..3dd3c28e3a86 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -496,6 +496,7 @@ t4_push_ktls(struct adapter *sc, struct toepcb *toep, int drop) struct tcpcb *tp = intotcpcb(inp); struct socket *so = inp->inp_socket; struct sockbuf *sb = &so->so_snd; + struct mbufq *pduq = &toep->ulp_pduq; int tls_size, tx_credits, shove, sowwakeup; struct ofld_tx_sdesc *txsd; char *buf; @@ -538,6 +539,18 @@ t4_push_ktls(struct adapter *sc, struct toepcb *toep, int drop) for (;;) { tx_credits = min(toep->tx_credits, MAX_OFLD_TX_CREDITS); + if (__predict_false((m = mbufq_first(pduq)) != NULL)) { + if (!t4_push_raw_wr(sc, toep, m)) { + toep->flags |= TPF_TX_SUSPENDED; + return; + } + + (void)mbufq_dequeue(pduq); + + txsd = &toep->txsd[toep->txsd_pidx]; + continue; + } + SOCKBUF_LOCK(sb); sowwakeup = drop; if (drop) { diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index 3b2243aeb69f..3dfa24a33f85 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -529,6 +529,8 @@ int t4_send_rst(struct toedev *, struct tcpcb *); void t4_set_tcb_field(struct adapter *, struct sge_wrq *, struct toepcb *, uint16_t, uint64_t, uint64_t, int, int); void t4_push_pdus(struct adapter *, struct toepcb *, int); +bool t4_push_raw_wr(struct adapter *, struct toepcb *, struct mbuf *); +void t4_raw_wr_tx(struct adapter *, struct toepcb *, struct mbuf *); /* t4_ddp.c */ int t4_init_ppod_region(struct ppod_region *, struct t4_range *, u_int, From nobody Thu Sep 11 21:10:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN9Fn5zrPz67R66; Thu, 11 Sep 2025 21:10:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN9Fn2cM8z40K9; Thu, 11 Sep 2025 21:10:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q5g5bNvGJltGZdzw/1r2NCPisspj8QDrRwUxjN00Wjs=; b=tbHJAyvcrcUPUTmZs2mP4hMhZd1BRIYNAxWGFjflMHXq2Az/5vjPZnMENxTtNxdCs9hUqH 8N1NwlRQN7xrLIS0iacbo0Xj8Dbcu9j7LLSH0FJv9OrMbQRZtV72G/4+9hEyC0mAkKRpZC q8aX3Xq7ofvInb2YmntKkXZxAqGoMARhd5YboHUqUNQ0P01EUhup4PCc25LcfY5QZJSIK4 gPSvzlrZPJ/d4HSBcq6cno512REosTnadmOWB/tbS2GeNfYlCZrKHSsMUvMFaZ9V+aaIO6 n72gpTSxEPvHzdf2LLoYKArtQlsM8KWAzIxxFe4DkX4fWRRj/nYG/sKWbzdgVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q5g5bNvGJltGZdzw/1r2NCPisspj8QDrRwUxjN00Wjs=; b=oVfn0H9j0VvA+4YGO58vnVTpyfCZN3m/HduEtVjvr1zyceT0lj81w4b08umbEJfJ1MTX+r ndGfdaCXD+ySzyH0CjRyGSLfLdx4qY+PMT8F1qO2C0nCuZX48JtXE7J9uFPgOwlFyFbWYA FpzYO+o/tjD2veu7sksOKA74Ocd/oUDVU8JtPAT65eRnidgMYUaJvhNms1FTFc8Rk3gpl/ /gX1LUu4+fnu0UUTHiwcsHn/KD6pJ54hql+o0Jt2wAdqhcrg4kS5tFodf0Dz3OGq797mAT qSiOj85I8QQArbEXD2wACWmw2ecqG689ZtJeNQB7j/yn6CILJQbO/7HyPbg/zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757625053; a=rsa-sha256; cv=none; b=QPahBmGefQPZAh7GO00WTrQXfPe5Se/UFi8Qid1en1XfIw1YdDPvEJ68t5/hn/2BT1zfH2 1Xz+num25Zf6jUOjby9edHJ8Zza++ODQ/8m/uYk+vyBgpYJA1kJpQcUhdFPYJC+ABHj3+P om1kncN/E9hpOKCiwj6O5TmwocGdZs30z8/eSrP3arEzVfwXXIMicIMqvhp16dSTGmBfs9 6nhe4UGG67c0KgQVcORC0AzLxaOK+CtWfnMExLxzP3Tthlgy/MLbDqWkumuuWvdew0RC65 4Q0bZgGdZIUXdyTbE8RV2fJRzmxAbk/u+Nd4Mi/fKVFYu7xCBjiMkBwJkVmKDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN9Fm51ckz8PH; Thu, 11 Sep 2025 21: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 58BLAqZg058904; Thu, 11 Sep 2025 21: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 58BLAqPD058900; Thu, 11 Sep 2025 21:10:52 GMT (envelope-from git) Date: Thu, 11 Sep 2025 21:10:52 GMT Message-Id: <202509112110.58BLAqPD058900@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: a7aab22d2bf3 - main - cxgbe tom: Export alloc_raw_mbuf for use in other TOE drivers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: a7aab22d2bf36191baa646fc136ca020dad209f3 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a7aab22d2bf36191baa646fc136ca020dad209f3 commit a7aab22d2bf36191baa646fc136ca020dad209f3 Author: John Baldwin AuthorDate: 2025-09-11 21:10:40 +0000 Commit: John Baldwin CommitDate: 2025-09-11 21:10:40 +0000 cxgbe tom: Export alloc_raw_mbuf for use in other TOE drivers Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D47762 --- sys/dev/cxgbe/tom/t4_ddp.c | 2 +- sys/dev/cxgbe/tom/t4_tom.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/tom/t4_ddp.c b/sys/dev/cxgbe/tom/t4_ddp.c index 2fee8fa91dac..da0753296532 100644 --- a/sys/dev/cxgbe/tom/t4_ddp.c +++ b/sys/dev/cxgbe/tom/t4_ddp.c @@ -1785,7 +1785,7 @@ t4_write_page_pods_for_rcvbuf(struct adapter *sc, struct sge_wrq *wrq, int tid, return (0); } -static struct mbuf * +struct mbuf * alloc_raw_wr_mbuf(int len) { struct mbuf *m; diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index 3dfa24a33f85..af6d37931b2e 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -556,6 +556,7 @@ int t4_aio_queue_ddp(struct socket *, struct kaiocb *); int t4_enable_ddp_rcv(struct socket *, struct toepcb *); void t4_ddp_mod_load(void); void t4_ddp_mod_unload(void); +struct mbuf *alloc_raw_wr_mbuf(int); void ddp_assert_empty(struct toepcb *); void ddp_uninit_toep(struct toepcb *); void ddp_queue_toep(struct toepcb *); From nobody Thu Sep 11 21:10:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cN9Fp24J3z67RC7; Thu, 11 Sep 2025 21:10:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cN9Fp0CM0z40Sn; Thu, 11 Sep 2025 21:10:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OrI/AMpuMh3o2JbU2JZEPzCy/mN/NMxkK1XG9H/wSiA=; b=i5dYza6nTT4toQbwIrqbM8JgF9Os2q7CtMpRQB4N40RKJsIMnUWhWKVNLUqGlb0n+NilVx uZ3L7bbpBOew9vwOq8gLFzhpwO35Z5iL+gx3o4JSna/SDwzpZiZ+mb5fdGuIJpdDcUpbjm 5+6vswylYphhez2qUSr4MrvBehBn9LXg7US9sQpjU9OluT43eeuHH360mPU66e4+IvTFsg fVhfoMX0PGcKVcsj3hTULfhk4Ez04rwnu8YA6ZnIZAtlG6K9Oi/klTpa88BGhlyr/rkIVR uGgJsoG5xexSjoQ2w5QmBA5fuZy30cjPRqzGrIYFRpfYvBKCEO/GR2nsGC+2fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757625054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OrI/AMpuMh3o2JbU2JZEPzCy/mN/NMxkK1XG9H/wSiA=; b=X1U25OEjerlhyCSqUhHMbs2BxtPXFpBz857s6zvG3ss+ih9r71BS5XT6CchDJy85sw0Tiw r52tvHvM9nWtHv9EWo2p+ysKEsavbezVa1vtA/iNs7qAq8WtMdsWdUSlAmREU7aRnc4rAs 1LBpPCfB6q75zk4K1z9g7O1gdhqWYtV4e8t6sN4jVrQU0WOSiT/vJ3ztSleHX3qfekUh7y iHNQk/aN1DR2MyMR7gLCFG5kHz/4ARLCzT1uJJsLznrud43Qt0A9JHBwITIDlMQ52O+8BN bAmZ+tFBw24rzQM/JIOr2gwxFun6lQBcI62BHRDyVPwe0biU65CvrxIaHqCNRQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757625054; a=rsa-sha256; cv=none; b=q5W5yT+1tQP/EWhHzG0hJ/q669GxooGh81t+ORHgluNfFnrlfZ4ELkrl+tfm7MKfW8+C9N t6CvrL++s42kDJ5g+xaURqT6KyvNpbQqg+EihiWZx7bE60g4ybY6pDksRxEdAU0dNBBq4G NUqzMp6eePptj8ud3ml7LMjh/tSG697trGLIydw1SJf7Ehx6XnViI/VlVVh4CDC2ALG75v cho0/xRr0cV6BKBFg5BN1OaPpAqZMn6QO8IpY6j1KqKdl33HDHiWfvoXoM6wV5nTMjqWXI iEsLUoZV2SRfHRkxFKTDKQ77N5GNGKqxv3lUkgVoGpOS0F24bqVz9SHpJELczA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cN9Fn5ZKZz7ng; Thu, 11 Sep 2025 21:10: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 58BLAruI058939; Thu, 11 Sep 2025 21:10:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58BLAr3K058935; Thu, 11 Sep 2025 21:10:53 GMT (envelope-from git) Date: Thu, 11 Sep 2025 21:10:53 GMT Message-Id: <202509112110.58BLAr3K058935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: d869395ac4bd - main - cxgbe tom: Send auxiliary TLS work requests as raw WR mbufs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: d869395ac4bd248da7c5bdc67afb19ca89fbeeee Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=d869395ac4bd248da7c5bdc67afb19ca89fbeeee commit d869395ac4bd248da7c5bdc67afb19ca89fbeeee Author: John Baldwin AuthorDate: 2025-09-11 21:10:40 +0000 Commit: John Baldwin CommitDate: 2025-09-11 21:10:40 +0000 cxgbe tom: Send auxiliary TLS work requests as raw WR mbufs In particular, the work request to update the TCB state when switching from plain TCP to TLS is now queued on the connection's offload transmit queue rather than over the per-port control queue. This also handles an unlikely edge case that a connection does not have sufficient credits to transmit other work requests synchronously such as programming the key in on-card memory or altering TCB fields. Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D47763 --- sys/dev/cxgbe/tom/t4_cpl_io.c | 36 +++++++++++++++++----------- sys/dev/cxgbe/tom/t4_tls.c | 56 +++++++++++++++++++++---------------------- sys/dev/cxgbe/tom/t4_tom.h | 2 ++ 3 files changed, 51 insertions(+), 43 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index a7b4162db3b5..be20ea42474e 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -2039,25 +2039,16 @@ do_fw4_ack(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) } void -t4_set_tcb_field(struct adapter *sc, struct sge_wrq *wrq, struct toepcb *toep, +write_set_tcb_field(struct adapter *sc, void *dst, struct toepcb *toep, uint16_t word, uint64_t mask, uint64_t val, int reply, int cookie) { - struct wrqe *wr; - struct cpl_set_tcb_field *req; - struct ofld_tx_sdesc *txsd; + struct cpl_set_tcb_field *req = dst; MPASS((cookie & ~M_COOKIE) == 0); if (reply) { MPASS(cookie != CPL_COOKIE_RESERVED); } - wr = alloc_wrqe(sizeof(*req), wrq); - if (wr == NULL) { - /* XXX */ - panic("%s: allocation failure.", __func__); - } - req = wrtod(wr); - INIT_TP_WR_MIT_CPL(req, CPL_SET_TCB_FIELD, toep->tid); req->reply_ctrl = htobe16(V_QUEUENO(toep->ofld_rxq->iq.abs_id)); if (reply == 0) @@ -2065,12 +2056,29 @@ t4_set_tcb_field(struct adapter *sc, struct sge_wrq *wrq, struct toepcb *toep, req->word_cookie = htobe16(V_WORD(word) | V_COOKIE(cookie)); req->mask = htobe64(mask); req->val = htobe64(val); +} + +void +t4_set_tcb_field(struct adapter *sc, struct sge_wrq *wrq, struct toepcb *toep, + uint16_t word, uint64_t mask, uint64_t val, int reply, int cookie) +{ + struct wrqe *wr; + struct ofld_tx_sdesc *txsd; + const u_int len = sizeof(struct cpl_set_tcb_field); + + wr = alloc_wrqe(len, wrq); + if (wr == NULL) { + /* XXX */ + panic("%s: allocation failure.", __func__); + } + write_set_tcb_field(sc, wrtod(wr), toep, word, mask, val, reply, + cookie); + if (wrq->eq.type == EQ_OFLD) { txsd = &toep->txsd[toep->txsd_pidx]; - _Static_assert(howmany(sizeof(*req), 16) <= - MAX_OFLD_TX_SDESC_CREDITS, + _Static_assert(howmany(len, 16) <= MAX_OFLD_TX_SDESC_CREDITS, "MAX_OFLD_TX_SDESC_CREDITS too small"); - txsd->tx_credits = howmany(sizeof(*req), 16); + txsd->tx_credits = howmany(len, 16); txsd->plen = 0; KASSERT(toep->tx_credits >= txsd->tx_credits && toep->txsd_avail > 0, diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index 3dd3c28e3a86..ad72c6a6b025 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -61,11 +61,21 @@ static void t4_set_tls_tcb_field(struct toepcb *toep, uint16_t word, uint64_t mask, - uint64_t val) + uint64_t val, int reply, int cookie) { struct adapter *sc = td_adapter(toep->td); + struct mbuf *m; - t4_set_tcb_field(sc, &toep->ofld_txq->wrq, toep, word, mask, val, 0, 0); + m = alloc_raw_wr_mbuf(sizeof(struct cpl_set_tcb_field)); + if (m == NULL) { + /* XXX */ + panic("%s: out of memory", __func__); + } + + write_set_tcb_field(sc, mtod(m, void *), toep, word, mask, val, reply, + cookie); + + t4_raw_wr_tx(sc, toep, m); } /* TLS and DTLS common routines */ @@ -88,10 +98,9 @@ tls_tx_key(struct toepcb *toep) static void t4_set_rx_quiesce(struct toepcb *toep) { - struct adapter *sc = td_adapter(toep->td); - t4_set_tcb_field(sc, &toep->ofld_txq->wrq, toep, W_TCB_T_FLAGS, - V_TF_RX_QUIESCE(1), V_TF_RX_QUIESCE(1), 1, CPL_COOKIE_TOM); + t4_set_tls_tcb_field(toep, W_TCB_T_FLAGS, V_TF_RX_QUIESCE(1), + V_TF_RX_QUIESCE(1), 1, CPL_COOKIE_TOM); } /* Clear TF_RX_QUIESCE to re-enable receive. */ @@ -99,7 +108,7 @@ static void t4_clear_rx_quiesce(struct toepcb *toep) { - t4_set_tls_tcb_field(toep, W_TCB_T_FLAGS, V_TF_RX_QUIESCE(1), 0); + t4_set_tls_tcb_field(toep, W_TCB_T_FLAGS, V_TF_RX_QUIESCE(1), 0, 0, 0); } /* TLS/DTLS content type for CPL SFO */ @@ -145,16 +154,15 @@ get_tp_plen_max(struct ktls_session *tls) return (tls->params.max_frame_len <= 8192 ? plen : FC_TP_PLEN_MAX); } -/* Send request to get the key-id */ +/* Send request to save the key in on-card memory. */ static int tls_program_key_id(struct toepcb *toep, struct ktls_session *tls, int direction) { struct tls_ofld_info *tls_ofld = &toep->tls; struct adapter *sc = td_adapter(toep->td); - struct ofld_tx_sdesc *txsd; int keyid; - struct wrqe *wr; + struct mbuf *m; struct tls_key_req *kwr; struct tls_keyctx *kctx; @@ -173,12 +181,12 @@ tls_program_key_id(struct toepcb *toep, struct ktls_session *tls, return (ENOSPC); } - wr = alloc_wrqe(TLS_KEY_WR_SZ, &toep->ofld_txq->wrq); - if (wr == NULL) { + m = alloc_raw_wr_mbuf(TLS_KEY_WR_SZ); + if (m == NULL) { t4_free_tls_keyid(sc, keyid); return (ENOMEM); } - kwr = wrtod(wr); + kwr = mtod(m, struct tls_key_req *); memset(kwr, 0, TLS_KEY_WR_SZ); t4_write_tlskey_wr(tls, direction, toep->tid, F_FW_WR_COMPL, keyid, @@ -190,17 +198,7 @@ tls_program_key_id(struct toepcb *toep, struct ktls_session *tls, tls_ofld->rx_key_addr = keyid; t4_tls_key_ctx(tls, direction, kctx); - txsd = &toep->txsd[toep->txsd_pidx]; - _Static_assert(DIV_ROUND_UP(TLS_KEY_WR_SZ, 16) <= - MAX_OFLD_TX_SDESC_CREDITS, "MAX_OFLD_TX_SDESC_CREDITS too small"); - txsd->tx_credits = DIV_ROUND_UP(TLS_KEY_WR_SZ, 16); - txsd->plen = 0; - toep->tx_credits -= txsd->tx_credits; - if (__predict_false(++toep->txsd_pidx == toep->txsd_total)) - toep->txsd_pidx = 0; - toep->txsd_avail--; - - t4_wrq_tx(sc, wr); + t4_raw_wr_tx(sc, toep, m); return (0); } @@ -1099,7 +1097,7 @@ out: static void tls_update_tcb(struct adapter *sc, struct toepcb *toep, uint64_t seqno) { - struct wrqe *wr; + struct mbuf *m; struct work_request_hdr *wrh; struct ulp_txpkt *ulpmc; int fields, key_offset, len; @@ -1128,14 +1126,14 @@ tls_update_tcb(struct adapter *sc, struct toepcb *toep, uint64_t seqno) KASSERT(len <= SGE_MAX_WR_LEN, ("%s: WR with %d TCB field updates too large", __func__, fields)); - wr = alloc_wrqe(len, toep->ctrlq); - if (wr == NULL) { + m = alloc_raw_wr_mbuf(len); + if (m == NULL) { /* XXX */ panic("%s: out of memory", __func__); } - wrh = wrtod(wr); - INIT_ULPTX_WRH(wrh, len, 1, 0); /* atomic */ + wrh = mtod(m, struct work_request_hdr *); + INIT_ULPTX_WRH(wrh, len, 1, toep->tid); /* atomic */ ulpmc = (struct ulp_txpkt *)(wrh + 1); /* @@ -1180,7 +1178,7 @@ tls_update_tcb(struct adapter *sc, struct toepcb *toep, uint64_t seqno) ulpmc = mk_set_tcb_field_ulp(sc, ulpmc, toep->tid, W_TCB_T_FLAGS, V_TF_RX_QUIESCE(1), 0); - t4_wrq_tx(sc, wr); + t4_raw_wr_tx(sc, toep, m); } /* diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index af6d37931b2e..4fb87d92d91e 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -531,6 +531,8 @@ void t4_set_tcb_field(struct adapter *, struct sge_wrq *, struct toepcb *, void t4_push_pdus(struct adapter *, struct toepcb *, int); bool t4_push_raw_wr(struct adapter *, struct toepcb *, struct mbuf *); void t4_raw_wr_tx(struct adapter *, struct toepcb *, struct mbuf *); +void write_set_tcb_field(struct adapter *, void *, struct toepcb *, uint16_t, + uint64_t, uint64_t, int, int); /* t4_ddp.c */ int t4_init_ppod_region(struct ppod_region *, struct t4_range *, u_int, From nobody Fri Sep 12 02:37:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNJV809Tfz62ZJ6; Fri, 12 Sep 2025 02:37:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNJV76F8Mz3YXs; Fri, 12 Sep 2025 02:37:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757644623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c4r9IOZbTl8fV70UVn9rW0eERqjnQR1HQizMvmNXU6s=; b=KvL8IepZk2au5hs7vLn06P/v6s8zD3fF/mserToRkXJ/KOQmwYJT1uH6URrMJiqhqEC/tw mia9SSzNYTRetI/VywZ5DNNiubUuUQ2JY30bNobl98+lfpdUMoeMhptM2P+BmWoQhuPit6 bm8mFGyfbw6GRuJY7oO1Wc8b09W3prHZb37WaUCSBDG4O2kUNkiGjxMCkXfD41Or7IVdlP /Oimd5MUtK5XA4zYmY1K2u2eQZJIR+/6OCb9RASkbaCLaj9NirfiAKsOV4vYfSoJrhM8H6 CfJGAZyGfZyAXyRueAL3U5lPXhsCGYCg2Dqjme0lqqCDYnTv26svjJN2DCkiyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757644623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c4r9IOZbTl8fV70UVn9rW0eERqjnQR1HQizMvmNXU6s=; b=XzLZJw5BNk8ZSiJ/5NDu17764GVH9nu5OslJ98iCUi3Fc+vfDBpOuXFk1iFDfvk7qaxtWT 7UKAtjszGlJDkWja6GtuItwXvDJPVJ8BI9J2YKvbiZJ3ujQIs18F9n6T4dyqzOCbYMcegh daBLtUy+wQh9/GH0RHXM89CJqtdFuee4JQl28bKCFZbLs6D7c/tf2SG3LMguiRE5YPNFkP 4nVFYbeSHpPLaZji0B9d4z1vxscm4V9HkpSZMJuCCHHwyReMSOy3Y/I73iQzc2b0SFX4we d3W58ZogTZitYrTyO3bn5GVcqTqBZ8bK5d51qTKIZQc6wmj1vcUWVcRcANALEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757644623; a=rsa-sha256; cv=none; b=Ej/c22MIU8bLU7636jR6kRdZO79JIoaTzGEojeS1Ee4We55hLs7lu+7DtmxRg0bny9EKh3 qD7zCVS8ji6aLpoSa20CT90rg4CQA/dIYhhM6rliM5oMpNT4TF8SY6LUUrXLAd7ZU1u5Eh GlQwcmwx+bm9rtiLvxCMmh5piXQFNaql5TXTwl6yFFQzxca+S2C+kQCoWrtNOw+m8OCAIa bN53NMt8JBn40xJNysiZCroVbJfBaL5vdq/w15Mxa89hEqQ1A2aVzyOFgZCUb1kp9qnmr+ FXyYW9MXkSgyrrDBtsVUbCgU+VITZV9h7gsbnbLPCeLRLVnFAeI8q0sGsQ0ucw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNJV75rV6zZtq; Fri, 12 Sep 2025 02:37: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 58C2b3AC063737; Fri, 12 Sep 2025 02:37:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58C2b3rP063734; Fri, 12 Sep 2025 02:37:03 GMT (envelope-from git) Date: Fri, 12 Sep 2025 02:37:03 GMT Message-Id: <202509120237.58C2b3rP063734@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 8b41ba845c7e - main - lib/msun: cpow{,f,l}(CMLX(0.0, 0.0)) should return 1.0 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 8b41ba845c7e10b5f241a1f944fe9a8e19ad75a9 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=8b41ba845c7e10b5f241a1f944fe9a8e19ad75a9 commit 8b41ba845c7e10b5f241a1f944fe9a8e19ad75a9 Author: Steve Kargl AuthorDate: 2025-09-11 16:38:17 +0000 Commit: Konstantin Belousov CommitDate: 2025-09-12 02:36:27 +0000 lib/msun: cpow{,f,l}(CMLX(0.0, 0.0)) should return 1.0 PR: 289447 MFC after: 1 week --- lib/msun/src/s_cpow.c | 5 ++++- lib/msun/src/s_cpowf.c | 5 ++++- lib/msun/src/s_cpowl.c | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/msun/src/s_cpow.c b/lib/msun/src/s_cpow.c index b887db51aa2a..2c20a8f3b48b 100644 --- a/lib/msun/src/s_cpow.c +++ b/lib/msun/src/s_cpow.c @@ -58,7 +58,10 @@ cpow(double complex a, double complex z) y = cimag (z); absa = cabs (a); if (absa == 0.0) { - return (CMPLX(0.0, 0.0)); + if (x == 0 && y == 0) + return (CMPLX(1., 0.)); + else + return (CMPLX(0., 0.)); } arga = carg (a); r = pow (absa, x); diff --git a/lib/msun/src/s_cpowf.c b/lib/msun/src/s_cpowf.c index 144291079f97..b8bdbd9cb07b 100644 --- a/lib/msun/src/s_cpowf.c +++ b/lib/msun/src/s_cpowf.c @@ -57,7 +57,10 @@ cpowf(float complex a, float complex z) y = cimagf(z); absa = cabsf (a); if (absa == 0.0f) { - return (CMPLXF(0.0f, 0.0f)); + if (x == 0 && y == 0) + return (CMPLXF(1.f, 0.f)); + else + return (CMPLXF(0.f, 0.f)); } arga = cargf (a); r = powf (absa, x); diff --git a/lib/msun/src/s_cpowl.c b/lib/msun/src/s_cpowl.c index 39797cadcfcb..efbe4936895f 100644 --- a/lib/msun/src/s_cpowl.c +++ b/lib/msun/src/s_cpowl.c @@ -57,7 +57,10 @@ cpowl(long double complex a, long double complex z) y = cimagl(z); absa = cabsl(a); if (absa == 0.0L) { - return (CMPLXL(0.0L, 0.0L)); + if (x == 0 && y == 0) + return (CMPLXL(1.L, 0.L)); + else + return (CMPLXL(0.L, 0.L)); } arga = cargl(a); r = powl(absa, x); From nobody Fri Sep 12 04:56:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNMbZ6Nwhz62kHS; Fri, 12 Sep 2025 04:56:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNMbZ3m5Qz3qFf; Fri, 12 Sep 2025 04:56:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757653018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FilecrN8kFFBQ1Zsc8FElWfk94sMUpJYdcAc/EODg98=; b=jrYBrQyvIt7wgRvSkZp6r5/gGhn4oRYEvHYguYO+0yrwVXXF4apQM1jC4X/com5NiN5h9V /LaXKEfd0uej9tK/pYMok+kH+o8rlxUYtZ/q0KkeRA503TkEPzRfKI2X8nIepdztM2RKzL iuYT+tCWlPV0aFcMTL3eoQ9ITxOKNuY0sjnzSWKCYf2Ql7jYsmpZY5l3w1S0gIQ8ViJ0Kc JB/2pUFZte/4La/1zDaakrnmUJQ9CIMWLEoc04yK7l/AEO/xTP33WEOzZer04c/L8dB8UY SFygkvAYzCL2zogR5GflKwPhA90nPBhPy9DknlOh66Nfz3GuExBWmVzXEBJq0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757653018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FilecrN8kFFBQ1Zsc8FElWfk94sMUpJYdcAc/EODg98=; b=NhDuom+xlgbQxg3L7DlkCgHmnOy/VdqYJ81sJR6HcEk84ODG5cZt0MCn0hvcfg/z95GJvg 5k1Z3Dw85kZWBOvIZUnLLxRGfrh7L1fduZaNUge8onsJQj03tBtB5mvB4yIzZbVpdDlm7k VQbD8yOc2PFQdCfvGU7uTZlHIJPEhup8xduF+VbThcMejKo777Qij8A6WmIASyiihhJTVW AwhpXh5kOQCrxSjMJ/PsC724wk1U8XiL+0KlWr5fDlWctY4thv82D+osaUd+1ixQeu4hsC 5eXTPkAPo4XnlF7Jj+1JmqfvKDYrmzvA03LAEfHkMtpLIfXGvmBpW3/s1lLCrA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757653018; a=rsa-sha256; cv=none; b=r78U9eAbyapNN5CchcVhWnNOvQgsQx+pLiVBXBMFLFk0d93lAQurnzaY3xOHRGuwroQ1Pm PZsSYJ6m5Ts7IePLVDXb2JjrsNY4Ra1r7oUSFZ+rmYEkiPYQmJxmmnE4HzTccZGdOPZGOs 1HxKwyXrSDoh13BDt7YsPLIJ0EpxaRZIs210oSoGAu9DGVqj3TUxjEi7WM3kd+XFX/xSLp mm0shtYAlL0u2BFUQra39KdOslmdkBW7MA1hSATb4lTAdvhL+yosKOFBDen8SJc2d4KeJq BDUpXy3i2ZfoMb41rhcNwR9wK+fK/Rep7vRe8yvg+g5VwuDjU87EvT98Y2XW1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNMbZ3Jv0zflg; Fri, 12 Sep 2025 04:56: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 58C4uw1T027048; Fri, 12 Sep 2025 04:56:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58C4uwVD027045; Fri, 12 Sep 2025 04:56:58 GMT (envelope-from git) Date: Fri, 12 Sep 2025 04:56:58 GMT Message-Id: <202509120456.58C4uwVD027045@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 22238759c57d - main - sys/bus.h: Some style(9) fixes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 22238759c57d942865cf9d1a355a0d04819eb621 Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=22238759c57d942865cf9d1a355a0d04819eb621 commit 22238759c57d942865cf9d1a355a0d04819eb621 Author: Zhenlei Huang AuthorDate: 2025-09-12 04:55:14 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-12 04:55:14 +0000 sys/bus.h: Some style(9) fixes and whitespace cleanup. MFC after: 3 days --- sys/sys/bus.h | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/sys/sys/bus.h b/sys/sys/bus.h index dda27f4737b2..e7ce152160f8 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -78,7 +78,7 @@ typedef enum device_property_type { * The strings are placed one after the other, separated by NUL characters. * Fields should be added after the last one and order maintained for compatibility */ -#define BUS_USER_BUFFER (3*1024) +#define BUS_USER_BUFFER (3 * 1024) struct u_device { uintptr_t dv_handle; uintptr_t dv_parent; @@ -247,8 +247,8 @@ typedef struct devclass *devclass_t; * and may use regular mutexes. However, it is prohibited from * sleeping on a sleep queue. */ -typedef int driver_filter_t(void*); -typedef void driver_intr_t(void*); +typedef int driver_filter_t(void *); +typedef void driver_intr_t(void *); /** * @brief Interrupt type bits. @@ -476,18 +476,18 @@ int bus_generic_resume(device_t dev); int bus_generic_resume_child(device_t dev, device_t child); int bus_generic_setup_intr(device_t dev, device_t child, struct resource *irq, int flags, - driver_filter_t *filter, driver_intr_t *intr, + driver_filter_t *filter, driver_intr_t *intr, void *arg, void **cookiep); struct resource * - bus_generic_rl_alloc_resource (device_t, device_t, int, int *, - rman_res_t, rman_res_t, rman_res_t, u_int); -void bus_generic_rl_delete_resource (device_t, device_t, int, int); -int bus_generic_rl_get_resource (device_t, device_t, int, int, rman_res_t *, - rman_res_t *); -int bus_generic_rl_set_resource (device_t, device_t, int, int, rman_res_t, - rman_res_t); -int bus_generic_rl_release_resource (device_t, device_t, struct resource *); + bus_generic_rl_alloc_resource(device_t, device_t, int, int *, + rman_res_t, rman_res_t, rman_res_t, u_int); +void bus_generic_rl_delete_resource(device_t, device_t, int, int); +int bus_generic_rl_get_resource(device_t, device_t, int, int, rman_res_t *, + rman_res_t *); +int bus_generic_rl_set_resource(device_t, device_t, int, int, rman_res_t, + rman_res_t); +int bus_generic_rl_release_resource(device_t, device_t, struct resource *); struct resource * bus_generic_rman_alloc_resource(device_t dev, device_t child, int type, int *rid, rman_res_t start, @@ -562,7 +562,7 @@ int bus_get_domain(device_t dev, int *domain); int bus_release_resource(device_t dev, struct resource *r); int bus_free_resource(device_t dev, int type, struct resource *r); int bus_setup_intr(device_t dev, struct resource *r, int flags, - driver_filter_t filter, driver_intr_t handler, + driver_filter_t filter, driver_intr_t handler, void *arg, void **cookiep); int bus_teardown_intr(device_t dev, struct resource *r, void *cookie); int bus_suspend_intr(device_t dev, struct resource *r); @@ -687,9 +687,9 @@ int device_probe_child(device_t bus, device_t dev); int device_quiesce(device_t dev); void device_quiet(device_t dev); void device_quiet_children(device_t dev); -void device_set_desc(device_t dev, const char* desc); -void device_set_descf(device_t dev, const char* fmt, ...) __printflike(2, 3); -void device_set_desc_copy(device_t dev, const char* desc); +void device_set_desc(device_t dev, const char *desc); +void device_set_descf(device_t dev, const char *fmt, ...) __printflike(2, 3); +void device_set_desc_copy(device_t dev, const char *desc); int device_set_devclass(device_t dev, const char *classname); int device_set_devclass_fixed(device_t dev, const char *classname); bool device_is_devclass_fixed(device_t dev); @@ -887,7 +887,8 @@ DECLARE_MODULE(_name##_##busname, _name##_##busname##_mod, \ */ #define __BUS_ACCESSOR(varp, var, ivarp, ivar, type) \ \ -static __inline type varp ## _get_ ## var(device_t dev) \ +static __inline type \ +varp ## _get_ ## var(device_t dev) \ { \ uintptr_t v; \ int e __diagused; \ @@ -899,7 +900,8 @@ static __inline type varp ## _get_ ## var(device_t dev) \ return ((type) v); \ } \ \ -static __inline void varp ## _set_ ## var(device_t dev, type t) \ +static __inline void \ +varp ## _set_ ## var(device_t dev, type t) \ { \ uintptr_t v = (uintptr_t) t; \ int e __diagused; \ From nobody Fri Sep 12 04:56:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNMbb6RXKz62kLQ; Fri, 12 Sep 2025 04:56:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNMbb4g4Bz3q1d; Fri, 12 Sep 2025 04:56:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757653019; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ZzEgX1lp0dfJFfWzi8QH0xCGhLDJR/+9y2O41OfPzc=; b=ebxlMvZoUJ2ifgavKTDJx+exS6h36t0UFRg4IMA5dGoYb7iwHxYJG8/iDX2IYS+azTFTnC qObgq4M1rgC7hYmu67gIx7IXD9KZhKlJwlFReY9yoB/Zt5yLqxb3K4IbIx6w0qYJnNep1c ZNRl5FZFMvk9VA5NF42s4Cjl68iZuFgvcPT8OH3R2kS18NmsCcPE1AZ2fU8gXr0NV+V7Lb TytEW3n+rs6GlMBFLFLNLSNMhsGzw1/aP4mHpGkAlXQSFDXo8PhfaJasSVHI2sxmoezuIX r02AyD/VgYs6GKWI817urRx9//XRDSwsgUPBck3SM4E/GFYNWNuk1N4xQdk/QA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757653019; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ZzEgX1lp0dfJFfWzi8QH0xCGhLDJR/+9y2O41OfPzc=; b=JurGqvWbx9rrNQKlWf1BR8Ys/Ybd2s4lRji8A8vF6CW1+kN871JBN2y5PJq+n0khqUejWn ogGRlKPav0o47YSQzljpC7BuT2oTwbfeAj3yx7zsb7fVia6ifHZcFSk6KJmnxPb6sk/UQX 1t6jBZqzyvudW4l5dMilWtfi2F7V2wSV+o+ysyUGghAItT5zx19hZZ7yfO6ljrpZXUzhil uTrdreIQi+V0BzuQeOXPv0FLFEZc2q2KgIKG0uiGMRbSvEj18GhoBa3tWTFCqZNEpHSWxg 0ycsJa9Rc1xMccQN4tKg85KR4PivPFu51b+uRZ/FZH+EPKia8lbEUTdp4wL88w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757653019; a=rsa-sha256; cv=none; b=ConqwFAnUPl6ovVdB3irR+kTF7E1PoN5rGzFvp4qyilij665tq724ZOamrI73cq8h/F9uY nBrL8aYKhqhj2PwPCDkOUHI/hTODJITqs6MEiGW9njeHsP1eyq+++mHa5ivoMmghtyp7ke qlPFvpuhUPg7RaG66D7s4NX1OmJAWWy/N/+3XxBqR4Wz7rf4xGSrWLfXo9ipjBLO0IDtxr 78eazEvvMOShNXzyQ5mz2NYlGD1sE1140xJR/lBLidMXN0G0eXR/DrklKbchzcKXzRZ82s DxLX/OT6J6xZJQotdGQbfmg7+Ko6i6WsB338+npASRh7nTzYoICpKA/pYCoung== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNMbb4GLyzfn9; Fri, 12 Sep 2025 04:56: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 58C4uxdi027085; Fri, 12 Sep 2025 04:56:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58C4uxPd027082; Fri, 12 Sep 2025 04:56:59 GMT (envelope-from git) Date: Fri, 12 Sep 2025 04:56:59 GMT Message-Id: <202509120456.58C4uxPd027082@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 64dca4eb4db8 - main - git-blame-ignore-revs: sys/bus.h style(9) fixes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 64dca4eb4db8a64c35400239a519f05e233ae12f Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=64dca4eb4db8a64c35400239a519f05e233ae12f commit 64dca4eb4db8a64c35400239a519f05e233ae12f Author: Zhenlei Huang AuthorDate: 2025-09-12 04:55:15 +0000 Commit: Zhenlei Huang CommitDate: 2025-09-12 04:55:53 +0000 git-blame-ignore-revs: sys/bus.h style(9) fixes MFC after: 3 days --- .git-blame-ignore-revs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 6b69648ac002..ca8716bde835 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -8,6 +8,8 @@ # # This file is sorted in git log order (newest commits first). +# sys/bus.h style fixes +22238759c57d942865cf9d1a355a0d04819eb621 # sys/efi.h style(9) tweaks e584c46d8b60662ffb1f67c41dec13f391d3f199 # sys/cpu.h style(9) fixes From nobody Fri Sep 12 05:27:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNNH02Z04z66TDq; Fri, 12 Sep 2025 05:27:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNNH020d9z3t0j; Fri, 12 Sep 2025 05:27:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757654860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9U2dmzycHEsnoCexMO6L0qOD0Xqop3B74+9Va9mTMcw=; b=FK4eEGpuwpw0TP3FtV2Qdi+tLeG7Do0MDvIv2acDBXcMdZ7pSwMnYIKc8FtJNssRWfN4Sr DJm+KVDRKSLQlXMtmT9cJW0cgexJmcgSPftEMDJxM6B3qoy7o8zypVESq3mUfX/dy1RCGZ DVDeq5V8+2V6NZcEk52pqTc76I11cCblYJpYqsCG1EkSoi5+huA1tKEuEQRyyZNlK19lsl rVaZTSVvZODa2rmW0RtvZlj92BBZziODOiccrBFpKcMrdCIJ8/mZXOgMM5eqgt16NZDpnH 2xght5EwSrlMJvr4o37z3a2TKD/7Rgz5onI8cD742ABJHX7BB/JIxsYGXbwcAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757654860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9U2dmzycHEsnoCexMO6L0qOD0Xqop3B74+9Va9mTMcw=; b=Ks6POCUF0oNI5av+z8K6V/XN2N8byhRZ3vbCFtHzDE4JbvUOPBhrDfoZtSUSiObw4Mt8Vh /RTQhRwnQrSxnzyqrRa7fjRgztBgmAN2UjB/met4j2YdaZruilW+hn3p1azITfFEV/A3S2 05qvTXKI4HPn7vAMwnhEa7Ha3ZN4RuDUC/53hQw26XQjRP4NQOtAGa9U5WYMV8hfQoaCkY 10CPq1bLYcMR+F1JHfkKE/nUE8zUmjC6aYa3wfG26TgLNFU1+MAYSDspRBqxa4KOLT1Yi9 cS9y3tN+pYy1k/Xh2WaufEo4qWuIfEssoT6As3rBImLJfUoBPjWqVuCf8a76PA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757654860; a=rsa-sha256; cv=none; b=xT6ncfhyCF1QPol/oiG5fjKu5SjwTirPLukBTWx66pYgWcgd6LLlyf+HQjexxYPyiO1opp HZ0aTcNviZNYYdAkm1M7n1bmGJEk2AuBFd/lnsA5ruPi9sw0vK/qrfK4Emx0cBlgBIQX8A fR+ADi/BTTwfZ4RC0kcHSDANocEu6pSX1uWwgkKauGzmFsN6hesATw58ORR0DZZHrtoUXH G62+kHoyinDy+vvcRIv1X5x1CtScnfPwb8S7E++nELiHbKSsOxTViljDvRvqYf7d+pXlK4 4rWwm+ne/PuRFLN3xb5oA5M2Iy3b7TaXyizZp2aN6dc06uMWrhG+wOQlXCrwhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNNH01KbFzgLy; Fri, 12 Sep 2025 05:27: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 58C5Re1L083905; Fri, 12 Sep 2025 05:27:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58C5Re09083902; Fri, 12 Sep 2025 05:27:40 GMT (envelope-from git) Date: Fri, 12 Sep 2025 05:27:40 GMT Message-Id: <202509120527.58C5Re09083902@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: dbcaac13e49c - main - jail: simplify EVFILT_JAIL events List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dbcaac13e49c88d1c077f34f56dd2b7ba77a145a Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=dbcaac13e49c88d1c077f34f56dd2b7ba77a145a commit dbcaac13e49c88d1c077f34f56dd2b7ba77a145a Author: Jamie Gritton AuthorDate: 2025-09-12 05:22:45 +0000 Commit: Jamie Gritton CommitDate: 2025-09-12 05:22:45 +0000 jail: simplify EVFILT_JAIL events Instead of using the EVFILT_PROC model of attempting to automatically register new events when a child jail is created, just give a single event when a child jail is created. As was already done with jail attach events, make a best-effort report of the added jail's id in kn_data. If the are multiple NOTE_JAIL_CHILD and/or NOTE_JAIL_ATTACH events, set the NOTE_JAIL_MULTI flag, and don't report anything in data, indicating that the caller will need to query the system state on their own. MFC after: 3 days --- lib/libsys/kqueue.2 | 41 +++++++++++------------------ sys/kern/kern_event.c | 71 +++++++++++---------------------------------------- sys/kern/kern_jail.c | 4 +-- sys/sys/event.h | 17 ++++++------ 4 files changed, 39 insertions(+), 94 deletions(-) diff --git a/lib/libsys/kqueue.2 b/lib/libsys/kqueue.2 index e413f7d4fbca..aafb5317c5e0 100644 --- a/lib/libsys/kqueue.2 +++ b/lib/libsys/kqueue.2 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 4, 2025 +.Dd September 11, 2025 .Dt KQUEUE 2 .Os .Sh NAME @@ -614,41 +614,30 @@ The process ID will be stored in If more than one process has attached since the last call to .Fn kevent , .Va data -will contain the most recently attached process ID, -with -.Dv NOTE_JAIL_ATTACH_MULTI -set in -.Va fflags . +will be zero. .It Dv NOTE_JAIL_REMOVE The jail has been removed. .It Dv NOTE_JAIL_CHILD A child of the watched jail has been created. -.It Dv NOTE_TRACK -Follow child jails created under this jail. -Register a new kevent to monitor the child jail using the same -.Va fflags -as the original event. -The child jail will signal an event with -.Dv NOTE_CHILD -set in -.Va fflags -and the parent JID in +Its jail ID will be stored in .Va data . -.Pp -If registering a new kevent fails -.Pq usually due to resource limitations , -it will signal an event with -.Dv NOTE_TRACKERR -set in -.Va fflags , -and the child jail will not signal a -.Dv NOTE_CHILD -event. +If more than one jail has been created since the last call to +.Fn kevent , +.Va data +will be zero. .El .Pp On return, .Va fflags contains the events which triggered the filter. +It will also contain +.Dv NOTE_JAIL_MULTI +if more than one +.Dv NOTE_JAIL_ATTACH +or +.Dv NOTE_JAIL_CHILD +event has been received since the last call to +.Fn kevent . .It Dv EVFILT_TIMER Establishes an arbitrary timer identified by .Va ident . diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index b5360f3a1055..59a69ccddb38 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -539,8 +539,7 @@ filt_proc(struct knote *kn, long hint) * process forked. Additionally, for each knote attached to the * parent, check whether user wants to track the new process. If so * attach a new knote to it, and immediately report an event with the - * child's pid. This is also called on jail creation, which is treated - * the same way by jail events. + * child's pid. */ void knote_fork(struct knlist *list, int pid) @@ -567,8 +566,6 @@ knote_fork(struct knlist *list, int pid) /* * The same as knote(), activate the event. */ - _Static_assert(NOTE_JAIL_CHILD == NOTE_FORK, - "NOTE_JAIL_CHILD should be the same as NOTE_FORK"); if ((kn->kn_sfflags & NOTE_TRACK) == 0) { if (kn->kn_fop->f_event(kn, NOTE_FORK)) KNOTE_ACTIVATE(kn, 1); @@ -632,30 +629,11 @@ int filt_jailattach(struct knote *kn) { struct prison *pr; - bool immediate; - immediate = false; if (kn->kn_id == 0) { /* Let jid=0 watch the current prison (including prison0). */ pr = curthread->td_ucred->cr_prison; mtx_lock(&pr->pr_mtx); - } else if (kn->kn_flags & (EV_FLAG1 | EV_FLAG2)) { - /* - * The kernel registers prisons before they are valid, - * so prison_find_child will fail. - */ - TAILQ_FOREACH(pr, &allprison, pr_list) { - if (pr->pr_id < kn->kn_id) - continue; - if (pr->pr_id > kn->kn_id) { - pr = NULL; - break; - } - mtx_lock(&pr->pr_mtx); - break; - } - if (pr == NULL) - return (ENOENT); } else { sx_slock(&allprison_lock); pr = prison_find_child(curthread->td_ucred->cr_prison, @@ -670,32 +648,7 @@ filt_jailattach(struct knote *kn) } kn->kn_ptr.p_prison = pr; kn->kn_flags |= EV_CLEAR; - - /* - * Internal flag indicating registration done by kernel for the - * purposes of getting a NOTE_CHILD notification. - */ - if (kn->kn_flags & EV_FLAG2) { - kn->kn_flags &= ~EV_FLAG2; - kn->kn_data = kn->kn_sdata; /* parent id */ - kn->kn_fflags = NOTE_CHILD; - kn->kn_sfflags &= ~NOTE_JAIL_CTRLMASK; - immediate = true; /* Force immediate activation of child note. */ - } - /* - * Internal flag indicating registration done by kernel (for other than - * NOTE_CHILD). - */ - if (kn->kn_flags & EV_FLAG1) { - kn->kn_flags &= ~EV_FLAG1; - } - knlist_add(pr->pr_klist, kn, 1); - - /* Immediately activate any child notes. */ - if (immediate) - KNOTE_ACTIVATE(kn, 0); - mtx_unlock(&pr->pr_mtx); return (0); } @@ -720,18 +673,24 @@ filt_jail(struct knote *kn, long hint) if (pr == NULL) /* already activated, from attach filter */ return (0); - /* Mask off extra data. */ - event = (u_int)hint & NOTE_JAIL_CTRLMASK; + /* + * Mask off extra data. In the NOTE_JAIL_CHILD case, that's + * everything except the NOTE_JAIL_CHILD bit itself, since a + * JID is any positive integer. + */ + event = ((u_int)hint & NOTE_JAIL_CHILD) ? NOTE_JAIL_CHILD : + (u_int)hint & NOTE_JAIL_CTRLMASK; /* If the user is interested in this event, record it. */ if (kn->kn_sfflags & event) kn->kn_fflags |= event; - /* Report the attached process id. */ - if (event == NOTE_JAIL_ATTACH) { + /* Report the created jail id or attached process id. */ + if (event == NOTE_JAIL_CHILD || event == NOTE_JAIL_ATTACH) { if (kn->kn_data != 0) - kn->kn_fflags |= NOTE_JAIL_ATTACH_MULTI; - kn->kn_data = hint & NOTE_JAIL_DATAMASK; + kn->kn_fflags |= NOTE_JAIL_MULTI; + kn->kn_data = (kn->kn_fflags & NOTE_JAIL_MULTI) ? 0U : + (u_int)hint & ~event; } /* Prison is gone, so flag the event as finished. */ @@ -1729,8 +1688,8 @@ findkn: /* * If possible, find an existing knote to use for this kevent. */ - if ((kev->filter == EVFILT_PROC || kev->filter == EVFILT_JAIL) - && (kev->flags & (EV_FLAG1 | EV_FLAG2)) != 0) { + if (kev->filter == EVFILT_PROC && + (kev->flags & (EV_FLAG1 | EV_FLAG2)) != 0) { /* This is an internal creation of a process tracking * note. Don't attempt to coalesce this with an * existing note. diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index 3d18b03119ff..d90ccf4a04c8 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -2221,9 +2221,7 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) */ if (created) { sx_assert(&allprison_lock, SX_XLOCKED); - mtx_lock(&ppr->pr_mtx); - knote_fork(ppr->pr_klist, pr->pr_id); - mtx_unlock(&ppr->pr_mtx); + prison_knote(ppr, NOTE_JAIL_CHILD | pr->pr_id); mtx_lock(&pr->pr_mtx); drflags |= PD_LOCKED; pr->pr_state = PRISON_STATE_ALIVE; diff --git a/sys/sys/event.h b/sys/sys/event.h index f161d2c938c1..91fbaa4834f7 100644 --- a/sys/sys/event.h +++ b/sys/sys/event.h @@ -205,19 +205,18 @@ struct freebsd11_kevent32 { #define NOTE_PCTRLMASK 0xf0000000 /* mask for hint bits */ #define NOTE_PDATAMASK 0x000fffff /* mask for pid */ +/* additional flags for EVFILT_PROC */ +#define NOTE_TRACK 0x00000001 /* follow across fork/create */ +#define NOTE_TRACKERR 0x00000002 /* could not track child */ +#define NOTE_CHILD 0x00000004 /* am a child process */ + /* data/hint flags for EVFILT_JAIL */ -#define NOTE_JAIL_SET 0x80000000 /* jail was modified */ -#define NOTE_JAIL_CHILD 0x40000000 /* child jail was created */ +#define NOTE_JAIL_CHILD 0x80000000 /* child jail was created */ +#define NOTE_JAIL_SET 0x40000000 /* jail was modified */ #define NOTE_JAIL_ATTACH 0x20000000 /* jail was attached to */ #define NOTE_JAIL_REMOVE 0x10000000 /* jail was removed */ -#define NOTE_JAIL_ATTACH_MULTI 0x08000000 /* multiple procs attached */ +#define NOTE_JAIL_MULTI 0x08000000 /* multiple child or attach */ #define NOTE_JAIL_CTRLMASK 0xf0000000 /* mask for hint bits */ -#define NOTE_JAIL_DATAMASK 0x000fffff /* mask for pid */ - -/* additional flags for EVFILT_PROC and EVFILT_JAIL */ -#define NOTE_TRACK 0x00000001 /* follow across fork/create */ -#define NOTE_TRACKERR 0x00000002 /* could not track child */ -#define NOTE_CHILD 0x00000004 /* am a child process/jail */ /* additional flags for EVFILT_TIMER */ #define NOTE_SECONDS 0x00000001 /* data is seconds */ From nobody Fri Sep 12 10:06:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNVT10zLFz67G0r for ; Fri, 12 Sep 2025 10:06:45 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Received: from mail-qt1-x82d.google.com (mail-qt1-x82d.google.com [IPv6:2607:f8b0:4864:20::82d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNVSz5RTKz3Pw2 for ; Fri, 12 Sep 2025 10:06:43 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Authentication-Results: mx1.freebsd.org; dkim=none ("invalid DKIM record") header.d=kev009.com header.s=google header.b=GXd4pR2k; dmarc=none; spf=pass (mx1.freebsd.org: domain of kevin.bowling@kev009.com designates 2607:f8b0:4864:20::82d as permitted sender) smtp.mailfrom=kevin.bowling@kev009.com Received: by mail-qt1-x82d.google.com with SMTP id d75a77b69052e-4b61161c30fso13124061cf.3 for ; Fri, 12 Sep 2025 03:06:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kev009.com; s=google; t=1757671601; x=1758276401; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=YLHnL25kQgA5nRo+GYMbfghsCtmOYaZiDqXGUdjpuXo=; b=GXd4pR2kdN3P8gq8TNnRH3pKKd2tvLW2+4uz3AVeGuJyRY0XAFNZUihhxhuGN3lc0F rk6F6/k/S5XdKrJLLHyigiSWW6Aq7KZK8G/XdZnuzKYhKfl9tWNFnRhZ/3wNpYUE9bBd Z2CINmA2FDK5CXM2YY4RbMC1Fl/zByd977AgM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757671601; x=1758276401; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YLHnL25kQgA5nRo+GYMbfghsCtmOYaZiDqXGUdjpuXo=; b=iq2IWCCNAb5Kh2HV1Jf2bf484wpqzNqSHByorn2/XvHW/cAilCDLE58wMkCcbpJPjh cTUJa1hG02ieSVMNyOfLIqfWVsNW0sKog9L69k8zecZOQ1QXGV7wgt0ngFncF+8FA6aU OW1sF2TvumIijJj44i5oA/Ze3rLDVpSmxOnck/7XQw9rnkEmfjsl3wJE1lpKNnCPIERy 2DDpmbzw7U/I2hImAUqCRnNunNtFiX+S1PzTweFRgl/0KqVh1lnODqs5/dJjvLFaGs7m vb1Bqnmp0KXEEZDrcbIWjvtylf30ZurasGHDyJ26joVN2vQ0No0hGBfl4doJL5aAsetW jyng== X-Forwarded-Encrypted: i=1; AJvYcCVTjmvTr76EcFlJEeEI3KE9zbLJIYASW6bjAO7NZWOJE9XewL3I1ccDjnuRR48/053E7kdyb4joby/2xNFLSr8UQkabCA==@freebsd.org X-Gm-Message-State: AOJu0YzMkUHGLDumamMfev+yMJngKUV0Ui58gsIkG5MeX0Qxf5JZX9aC shWply62C5AjHKnaLXlDIxJeuQ0gn7MBRv2MNfH3Mp1bOTrLbzNFaFaTy8FXo8HYgdiAdkz3pBy /rcyeLFegay5NTk0ith35enxDQq2ZvQW9NeMozElHS5PQwSPVBcskqlqt X-Gm-Gg: ASbGncumFTGVsDGP8BcLmdPasGNEKBSHeK34H9B3XY57k8Mtl6F9+cjjSYwzuNyDkLz UmeKImUlZasgKvpZ486JCK44AtXHHEqIEvQkSsBwbtXBbocFIPRh6p6hKPgt3InpRpxU4TFQ11o o5h6KAH+7B4Oy9q50/unkgQj2qCJQcg0VV7Vy0UTljBvNAxMyAtDe4gR46DhoHhbwtRY7Z77vZI mnSNVWS+y1oD41JnDg= X-Google-Smtp-Source: AGHT+IF5JbuiUd6ac8DtIHbCSchoaWzjZ6JJ2dx23PRE79VSbOL+RpZduDM2sEpSXXjYGzp9MhbpX9IEhvatdD3kz7A= X-Received: by 2002:a05:622a:d1:b0:4b4:93c4:56bd with SMTP id d75a77b69052e-4b77cfc19bdmr38524151cf.13.1757671601011; Fri, 12 Sep 2025 03:06:41 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509101658.58AGwlFE061466@gitrepo.freebsd.org> In-Reply-To: <202509101658.58AGwlFE061466@gitrepo.freebsd.org> From: Kevin Bowling Date: Fri, 12 Sep 2025 03:06:29 -0700 X-Gm-Features: Ac12FXx7XqNGoiF2oXDnEQsNCT7ix1daL6dLYnn4TrwawqUV-EYh9bribFjUkpY Message-ID: Subject: Re: git: dd8c666d8b78 - main - src.sys.mk: Support src.conf in SRCTOP To: =?UTF-8?Q?Dag=2DErling_Sm=C3=B8rgrav?= 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-Spamd-Bar: --- X-Spamd-Result: default: False [-3.28 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.98)[-0.983]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[kev009.com:~]; FROM_HAS_DN(0.00)[]; DMARC_NA(0.00)[kev009.com]; ARC_NA(0.00)[]; R_DKIM_PERMFAIL(0.00)[kev009.com:s=google]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_THREE(0.00)[4]; RCVD_COUNT_ONE(0.00)[1]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MISSING_XM_UA(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::82d:from] X-Rspamd-Queue-Id: 4cNVSz5RTKz3Pw2 This turned out to be surprising and led to a puzzle and potentially unbootable system. I had a very bare bones src.conf in the root from a long time ago for MIPS hacking, and it got used as my src.conf after this commit instead of /etc/src.conf. I think the order should probably be inverted for POLA, keeping /etc/src.conf as the primary. It would also be nice to know the "why?" of this change in the commit message, it only describes "what". Regards, Kevin On Wed, Sep 10, 2025 at 9:58=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav wrote: > > The branch main has been updated by des: > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Ddd8c666d8b78f6b9ddb691f050= 5837fa885ff3b4 > > commit dd8c666d8b78f6b9ddb691f0505837fa885ff3b4 > Author: Dag-Erling Sm=C3=B8rgrav > AuthorDate: 2025-09-10 16:57:26 +0000 > Commit: Dag-Erling Sm=C3=B8rgrav > CommitDate: 2025-09-10 16:58:30 +0000 > > src.sys.mk: Support src.conf in SRCTOP > > If SRCCONF is not defined and src.conf exists at the top level of the > source tree, use that instead of /etc/src.conf. > > MFC after: 3 days > Reviewed by: kevans, imp > Differential Revision: https://reviews.freebsd.org/D52470 > --- > .gitignore | 1 + > share/man/man5/src.conf.5 | 9 ++++++--- > share/mk/src.sys.mk | 4 ++++ > sys/conf/kern.pre.mk | 4 ++++ > tools/build/options/makeman | 7 +++++-- > 5 files changed, 20 insertions(+), 5 deletions(-) > > diff --git a/.gitignore b/.gitignore > index 3ed711f301ac..a53a26f16d4f 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -29,3 +29,4 @@ tags > .clangd > .ccls-cache > sys/*/compile > +/src.conf > diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 > index 2895c0cf4746..a1abbcbda01e 100644 > --- a/share/man/man5/src.conf.5 > +++ b/share/man/man5/src.conf.5 > @@ -1,5 +1,5 @@ > .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman= . > -.Dd August 20, 2025 > +.Dd September 10, 2025 > .Dt SRC.CONF 5 > .Os > .Sh NAME > @@ -29,8 +29,11 @@ variables that control the aspects of how the system b= uilds. > .Pp > The default location of > .Nm > -is > -.Pa /etc/src.conf , > +is the top level of the source tree, or > +.Pa /etc/src.conf > +if no > +.Nm > +is found in the source tree itself, > though an alternative location can be specified in the > .Xr make 1 > variable > diff --git a/share/mk/src.sys.mk b/share/mk/src.sys.mk > index 2b9fc255a26d..ec035fb71e54 100644 > --- a/share/mk/src.sys.mk > +++ b/share/mk/src.sys.mk > @@ -6,7 +6,11 @@ > > .if !defined(_WITHOUT_SRCCONF) > # Allow user to configure things that only effect src tree builds. > +.if exists(${SRCTOP}/src.conf) > +SRCCONF?=3D ${SRCTOP}/src.conf > +.else > SRCCONF?=3D /etc/src.conf > +.endif > .if !empty(SRCCONF) && \ > (exists(${SRCCONF}) || ${SRCCONF} !=3D "/etc/src.conf") && \ > !target(_srcconf_included_) > diff --git a/sys/conf/kern.pre.mk b/sys/conf/kern.pre.mk > index 1fcfd6467e7f..0251486247da 100644 > --- a/sys/conf/kern.pre.mk > +++ b/sys/conf/kern.pre.mk > @@ -8,7 +8,11 @@ > # the rest of /usr/src, but they still always process SRCCONF even thoug= h > # the normal mechanisms to prevent that (compiling out of tree) won't > # work. To ensure they do work, we have to duplicate thee few lines here= . > +.if exists(${SRCTOP}/src.conf) > +SRCCONF?=3D ${SRCTOP}/src.conf > +.else > SRCCONF?=3D /etc/src.conf > +.endif > .if (exists(${SRCCONF}) || ${SRCCONF} !=3D "/etc/src.conf") && !target(_= srcconf_included_) > .include "${SRCCONF}" > _srcconf_included_: > diff --git a/tools/build/options/makeman b/tools/build/options/makeman > index ddd08443e61c..88ee5884d180 100755 > --- a/tools/build/options/makeman > +++ b/tools/build/options/makeman > @@ -222,8 +222,11 @@ variables that control the aspects of how the system= builds. > .Pp > The default location of > .Nm > -is > -.Pa /etc/src.conf , > +is the top level of the source tree, or > +.Pa /etc/src.conf > +if no > +.Nm > +is found in the source tree itself, > though an alternative location can be specified in the > .Xr make 1 > variable From nobody Fri Sep 12 11:59:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNXzY73dwz67Msm; Fri, 12 Sep 2025 11:59:53 +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 4cNXzY3LZPz3d8v; Fri, 12 Sep 2025 11:59:53 +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 58CBxea3005237; Fri, 12 Sep 2025 14:59:43 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 58CBxea3005237 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 58CBxewZ005236; Fri, 12 Sep 2025 14:59:40 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 12 Sep 2025 14:59:40 +0300 From: Konstantin Belousov To: Zhenlei Huang Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 22238759c57d - main - sys/bus.h: Some style(9) fixes Message-ID: References: <202509120456.58C4uwVD027045@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-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: <202509120456.58C4uwVD027045@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-Spamd-Bar: ---- 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-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cNXzY3LZPz3d8v On Fri, Sep 12, 2025 at 04:56:58AM +0000, Zhenlei Huang wrote: > The branch main has been updated by zlei: > > URL: https://cgit.FreeBSD.org/src/commit/?id=22238759c57d942865cf9d1a355a0d04819eb621 > > commit 22238759c57d942865cf9d1a355a0d04819eb621 > Author: Zhenlei Huang > AuthorDate: 2025-09-12 04:55:14 +0000 > Commit: Zhenlei Huang > CommitDate: 2025-09-12 04:55:14 +0000 > > sys/bus.h: Some style(9) fixes > > and whitespace cleanup. > > MFC after: 3 days > --- > sys/sys/bus.h | 38 ++++++++++++++++++++------------------ > 1 file changed, 20 insertions(+), 18 deletions(-) > > diff --git a/sys/sys/bus.h b/sys/sys/bus.h > index dda27f4737b2..e7ce152160f8 100644 > --- a/sys/sys/bus.h > +++ b/sys/sys/bus.h > @@ -78,7 +78,7 @@ typedef enum device_property_type { > * The strings are placed one after the other, separated by NUL characters. > * Fields should be added after the last one and order maintained for compatibility > */ > -#define BUS_USER_BUFFER (3*1024) > +#define BUS_USER_BUFFER (3 * 1024) > struct u_device { > uintptr_t dv_handle; > uintptr_t dv_parent; > @@ -247,8 +247,8 @@ typedef struct devclass *devclass_t; > * and may use regular mutexes. However, it is prohibited from > * sleeping on a sleep queue. > */ > -typedef int driver_filter_t(void*); > -typedef void driver_intr_t(void*); > +typedef int driver_filter_t(void *); > +typedef void driver_intr_t(void *); What are the fixes there, specifically? > > /** > * @brief Interrupt type bits. > @@ -476,18 +476,18 @@ int bus_generic_resume(device_t dev); > int bus_generic_resume_child(device_t dev, device_t child); > int bus_generic_setup_intr(device_t dev, device_t child, > struct resource *irq, int flags, > - driver_filter_t *filter, driver_intr_t *intr, > + driver_filter_t *filter, driver_intr_t *intr, > void *arg, void **cookiep); And there? The continuation indent is completely wrong from the style(9) guide, and the change just kept it, there and everywhere. From nobody Fri Sep 12 12:59:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNZJV1pbjz67R99; Fri, 12 Sep 2025 12:59:38 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNZJV11bdz3mWV; Fri, 12 Sep 2025 12:59:38 +0000 (UTC) (envelope-from des@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757681978; 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=gT2tW0iiSztObMMHJJcI1IkH5jzNFOrtnGxIc1rqZ2o=; b=LqjKjkx9mMRwLG5asMJ6eO4hh0/itT0FhukqIpijfA1O/CrCg2ws73/32m2EpIZrPKoDUN XrbBIM6my+W5bn6aVUse55JafMtZxqgTr2URFWzT17qJnM/rlb0ujZRctvDYNCXkqGjDIY AgT4Bi+9B7gIl29RdJgc1isdljLEtMGC7S7T1+IEMIfIntO1zD+H8oWv5i/7dddb4kU0VG Ia1rOx4FPmJvcc01bHsKYeWSu/6tB1/zY3S1Wnkw0yzAjI+DAQlPiRwGvc7mdEGhTdSYSh HiR0iJT2eFDqBcS+yTFcIwnwmOZ4CqWg5Fw/6uLENPpuKoBHC7Kc8fpOjBpkJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757681978; 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=gT2tW0iiSztObMMHJJcI1IkH5jzNFOrtnGxIc1rqZ2o=; b=Md2kKr/2MR4eD5VVpEA3H8H92BdGLZmoZkixVYhI3HGR24CzxviGMbLsBFOklAMp98VPtX /F8gPPbpBKeJxGOCp99pVhYlYArDBuek8m/aXUw16j26hI66UsR9A4FqrG4GNFDVt6OjyI cRMQRHT/VfC9dqt02PUj44rWPib0V8L8YG9newCZ43NjfiRVJV22B/jZl2MiKFgOVKkLb0 EAfaa6JM54IPHRdViKDN5+Q89/lxw5x5GMutQbqT/ySpxQAUpX9plCCHlodRvQhpZJaqxW 2IbmtuiHJ7AvGKxfFFwlb8gwqHsXWmoC64akSV4Z2CkNkMVTM+2v0kgb7wnCGQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757681978; a=rsa-sha256; cv=none; b=H487ZNq7+IPSUpFOkvLCC3opUM4i+5cf6ZIBoEzwC0sjR/yk7EgiG+Qv8co/XAhu8LQt8Y doYqOfqpadlzZ1XPCjk37alyMF+kIx3/14nNkpefr4t59dT+3NchjnqmpZ2XXBXhIFSyDW w1kTVKvXJ6X14hDi4eUSfbFfgSd0MzCPO/IyueZ4MHWBJWIKTjjjxkF6/f3MqFKRaZtLyZ 7yv6T1w5I6bpe7TT1MEP69JWse3Zc3m4wsGWjMEnd8+rzTuv/fdJw3qPt7DoSDFJOkXJCF gi5nDuLWYykJNjsge6yq3uw++Gs+JE1uXw+MSFV5U8c0klSxILMgrfAxEHFSjg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4cNZJT6b1nzkby; Fri, 12 Sep 2025 12:59:37 +0000 (UTC) (envelope-from des@freebsd.org) Received: by ltc.des.dev (Postfix, from userid 1001) id CF387883C1; Fri, 12 Sep 2025 14:59:35 +0200 (CEST) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Kevin Bowling Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: dd8c666d8b78 - main - src.sys.mk: Support src.conf in SRCTOP In-Reply-To: (Kevin Bowling's message of "Fri, 12 Sep 2025 03:06:29 -0700") References: <202509101658.58AGwlFE061466@gitrepo.freebsd.org> User-Agent: Gnus/5.13 (Gnus v5.13) Date: Fri, 12 Sep 2025 14:59:35 +0200 Message-ID: <86ikhnhlmw.fsf@ltc.des.dev> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@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 Kevin Bowling writes: > This turned out to be surprising and led to a puzzle and potentially > unbootable system. I had a very bare bones src.conf in the root from > a long time ago for MIPS hacking, and it got used as my src.conf after > this commit instead of /etc/src.conf. > > I think the order should probably be inverted for POLA, keeping > /etc/src.conf as the primary. That would render the change meaningless. The point is to prefer a local src.conf, if one exists, over a global one. This is particularly useful on development machines, including FreeBSD's own cluster, where multiple source trees exist and regularly get built. In hindsight, I should probably have included an UPDATING entry. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org From nobody Fri Sep 12 14:08:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNbrW3MvCz67VXD; Fri, 12 Sep 2025 14:08:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNbrW2hFWz3x1W; Fri, 12 Sep 2025 14:08:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757686139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MFZDiOY9TDF5TE6U7obdL9mjTH4MxHhgn2q6oZBvB/E=; b=G3eViR3Lac152V7CuqY/ECJkQGsiwykwhBS8gvWzP4S/Qldnfxv5rBlFHWd9TatP80iKnu qn/BsbcawHLxgHQ1HQlNrTIfDq/MD9ayXWFkP8EscM6ayffqeLRehhxCPohSaUkCE9RNst esKRk7vF2OiFpmAcehAaxC2mq6obxURc8J13en6cm8FxqxA0atr1qipqUoT7AR7KEYFyam 1du4FeeGp0G9ruil+pRUBhnPFry8c4afmLfqTyshKMtbcYSrRDm6/Uqpjt2IxocvfDv/wC vIjzjiQy4f71EAC34LvijcQHcnK8tNBhf+aWyEHkFMlvei6HBgbnzL9ocFa2ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757686139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MFZDiOY9TDF5TE6U7obdL9mjTH4MxHhgn2q6oZBvB/E=; b=Lc9epNG7xXteNoscXwYr9a/js0+eUE+xbYdx3jCWxVpN2KgOgD8oQnq0F4mPEYWILDQYjq Jt84luHu75nRwiz8Ar0ALH4DZaeKJFwXhWw1bCbw8o4sT/wQ7iyTzanjEdemcEC+pcKciO 5oXxWOjz+2vbN2NWoeuusRhU73YIemNkpfvKEntA99+ehDf5c80OmdUk/6t75Q6QTNNfSr WpWulxjNa0Dr+enYL50HLBs5+ooxoAis0Pk9FVRIp2jcm2RaLX1Wrx0XU5YETIc+m+9v6P KSWLhJg0xBDPV/C9rO3vPErk/EC62fhe2qdphbJGY2L8aPsVsvF2bSd6laRuLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757686139; a=rsa-sha256; cv=none; b=oc7keZKlmmKYgFxmx+9NuM4ZdMMzmO3S6z2jxiDAeggRZ4wXuQn+3Tij4dFraiBzCQa0fS o1+hCofGVjTJVrg3RnWosjjI5So39PYBosg68ZAThUxVRdpErK9GTW3W+K66B+uMt79vLr qckjxqx2vmv724rsIkMBnBQRV2T7Lf9f3sIS8JSinKcqy5Q95HfL3rN/b+9L+PHaip/if3 wzE9pPKpRK5Gq1ZZYADDw/1VuDmUUgy+zDywJ0rE5MUTkVTzphgOGwQMEizFmmb5VNt8Ii jZ9HndXvwINi3SepcmuySGZ+VQFFXYVab2gZEWpk2+MUE/yn9sm+k6RCU8y7Ww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNbrW29DdzvbR; Fri, 12 Sep 2025 14:08: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 58CE8xfQ055108; Fri, 12 Sep 2025 14:08:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CE8xZB055105; Fri, 12 Sep 2025 14:08:59 GMT (envelope-from git) Date: Fri, 12 Sep 2025 14:08:59 GMT Message-Id: <202509121408.58CE8xZB055105@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d3f8ed6066fd - main - getgrouplist(3): Remove superfluous headers, bogus comment and whitespace List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d3f8ed6066fdea329ed695925fc726e84d50abc3 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d3f8ed6066fdea329ed695925fc726e84d50abc3 commit d3f8ed6066fdea329ed695925fc726e84d50abc3 Author: Olivier Certner AuthorDate: 2025-09-12 12:29:59 +0000 Commit: Olivier Certner CommitDate: 2025-09-12 14:08:02 +0000 getgrouplist(3): Remove superfluous headers, bogus comment and whitespace No functional change (intended). Fixes: a59d6a872459 ("Implementing 'fallback' nsswitch source.") MFC after: 3 days Sponsored by: The FreeBSD Foundation --- lib/libc/gen/getgrouplist.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/lib/libc/gen/getgrouplist.c b/lib/libc/gen/getgrouplist.c index 5bd06bc5121f..cb23b9b2316d 100644 --- a/lib/libc/gen/getgrouplist.c +++ b/lib/libc/gen/getgrouplist.c @@ -29,14 +29,8 @@ * SUCH DAMAGE. */ -/* - * get credential - */ #include -#include -#include -#include #include extern int __getgroupmembership(const char *, gid_t, gid_t *, int, int *); @@ -46,4 +40,3 @@ __ssp_real(getgrouplist)(const char *uname, gid_t agroup, gid_t *groups, int *gr { return __getgroupmembership(uname, agroup, groups, *grpcnt, grpcnt); } - From nobody Fri Sep 12 14:33:09 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNcNQ320Mz67WQP; Fri, 12 Sep 2025 14:33:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNcNQ0zdGz444y; Fri, 12 Sep 2025 14:33:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757687590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MyvJKiMpoIv4VqRBVoCVi8cNB6kBVEFsXBH8HzF1kPk=; b=TLJ0YQ0XPZ8Z15xSNjNWZ1i+t34EPObnOOQzxN9wE9fa+A/gsEVXV7qQDwqpxtDInDx/hY tmMmj3yzevVz4qH2vQSsjHEuElG6RTxH5+ZF2hV4TqD2rlwbW3JoKgBoiaKi+LCubUbbwa ENn9z6kumdb+yzo6ZGLYKoOadJQL91GbWoTuGiIWR8rHswY+1ZBTC8D2ID+Q8+dWcgX3ZX de6Qj9BtW6rK4ZGsNcwiPyhDeAYOzF++yc+s5i00vRFlID5EsJX4iGbBk5rs6flrSLyygW DA0WoZSqHW6aLb15sUINwBVfTY2EqFmWE3XE4b0RYg+7qx5P1RVSmEFBV1rnLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757687590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MyvJKiMpoIv4VqRBVoCVi8cNB6kBVEFsXBH8HzF1kPk=; b=UqxzGRpuxM5xcJFoJ5uB1pkmKqlQcie+3sHrUsN7mDufsHeJU/yMPKkg27GryCUnsU555q xMFt1Jv9CZSIp64AxoISzqMd3J/0Yzs18L6LlQMTCVTOrl9AvYCqO1YVtDIvL3jCqpzipI oYn4LXn2IPrLTT/kv32Dqj0t0j1UTEOAcPdbaQJi/WfTK5CNXWHmsc0k4lW4v1CdIOk+Uk Q3xx1+V3O0yzp9c+hQmCScz8unPay2N2e+fhp/f6jW17tnj+Zl/rDL5x3erH19cfeNYmW0 rvB1cnojTHio/TfQ5fiPIykj9mKkIFcAb0O5akbNBnHyJotdtOllS/bCWD/QDw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757687590; a=rsa-sha256; cv=none; b=ozNUy/L86Jj6/sGThrtKGYMSXcITf6jGeBoxWhneg2EJVZz6NDQfcLjag4kjJ/qnmbuMyK AyMjRMgDFWn5dRXhNuXexs/i6vBEQGuAxoDezBw73rXRNZtVFOqvepE/DOr/BFN1zSLdaf 4UXGLimkwcGdrnAdRaYlVfTQ1g5cyBYBFe5zECg/lIseRHNk0QD0c8fkowASxWNjvfgoTD rUUJYW+x15VfC7y/YupBqAbxFlHdA8L4SmhLFSMLfL0q4EVpYObuZOMVVQZ+zqRTi3UvcY yBq6m8ysOlbGLLWVAnSSIgJ2HnXdZc3FKJnvvRHcZvla4QhDEaMYjxNvlSwWzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNcNQ0PMhzwqc; Fri, 12 Sep 2025 14:33: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 58CEX9Nl009466; Fri, 12 Sep 2025 14:33:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CEX9TA009463; Fri, 12 Sep 2025 14:33:09 GMT (envelope-from git) Date: Fri, 12 Sep 2025 14:33:09 GMT Message-Id: <202509121433.58CEX9TA009463@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: b0e7b55a0e90 - main - krb5: Enable PRINC_LOOK_AHEAD in ksu List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: b0e7b55a0e90d737cf469b78e9785b492b3c0d0f Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=b0e7b55a0e90d737cf469b78e9785b492b3c0d0f commit b0e7b55a0e90d737cf469b78e9785b492b3c0d0f Author: Cy Schubert AuthorDate: 2025-09-10 20:13:08 +0000 Commit: Cy Schubert CommitDate: 2025-09-12 14:32:48 +0000 krb5: Enable PRINC_LOOK_AHEAD in ksu PRINC_LOOK_AHEAD is the upstream default. Normally ksu determines the target princiapl by (quoted from the man page) a. default principal of the source cache b. target_user@local_realm c. source_user@local_realm With PRINC_LOOK_AHEAD emabled, for each candidate in the above list, select an authorized principal that has the same realm name and first part of the principal name equal to the prefix of the candidate. For example if candidate a) is jqpublic@ISI.EDU and jqpublic/secure@ISI.EDU is authorized to access the target account then the default principal is set to jqpublic/secure@ISI.EDU. Case 2: source user is root. If the target user is non-root then the default principal name is target_user@local_realm. Else, if the source cache exists the default principal name is set to the default principal of the source cache. If the source cache does not exist, default principal name is set to root\@local_realm. This commit restores the same behaviour as Heimdal ksu. Reported by: Dan Mahoney Requested by: Dan Mahoney MFC after: 3 days MFC to: 15/stable Differential revision: https://reviews.freebsd.org/D52478 --- krb5/usr.bin/ksu/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/krb5/usr.bin/ksu/Makefile b/krb5/usr.bin/ksu/Makefile index aaec461ce0b0..93860e38ce5c 100644 --- a/krb5/usr.bin/ksu/Makefile +++ b/krb5/usr.bin/ksu/Makefile @@ -24,7 +24,8 @@ SRCS= authorization.c \ CFLAGS+=-I${KRB5_DIR}/include \ -I${KRB5_SRCTOP}/include \ - -DGET_TGT_VIA_PASSWD + -DGET_TGT_VIA_PASSWD \ + -DPRINC_LOOK_AHEAD MAN= ksu.1 From nobody Fri Sep 12 14:47:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNchs2YmDz67XFS; Fri, 12 Sep 2025 14:47:25 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNchs1jLLz45d7; Fri, 12 Sep 2025 14:47:25 +0000 (UTC) (envelope-from zlei@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757688445; 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=RpFQWlevE64cfxWTVqicRTWixgLU3bRUyxDvL7DUWdA=; b=GI67onWRZFUs7Ml2IOJnSA3ihdZnAsSbI64D14lmMrVo/71R7B87mxjBlG3cBOWEJoWVdK mdmMxQicvSZPJOcWBd8khw+BFlMLRoHWcoow58VEh0UlSetzKNg18neZeG3ri3DocCSx40 YalGaZo/HTT84sYBuZ4xj7GrdlarWTxwbI+yY0Qz3dAguYHKqYiQZK0AhOzMc2kJSay6Ur 9z8AmrZqAYjDOftg2KQd7ewwzAqH0q3F7iAbnRT+IpTY6RZ0oWq2mh0Ey2G67sBhEsRNwZ fPhz1ekdvXhbBejG1ftIav2/hAu7MsfN0errtuSkGFJeIYxAYPp0sQQRm47llA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757688445; 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=RpFQWlevE64cfxWTVqicRTWixgLU3bRUyxDvL7DUWdA=; b=JfDaGpFHK/oUQepvq3+T6SScPYur+lg4TrtDiZTvtKakYRTCoAnVKZZ9vbgx3e7ySbJAmA XdA3d353o0plFD52p/go8Yn9JYateamnEPifXOUJylsWaqM2y0X545LKKVUzgHBm9pbZty CGqvEI+pX8NHNeGb9wq75NOWYW5DTrOE7DRT73uxGmr7oOW8vKFPIGtj6GTmyu0ZRGsM36 EmJjzqNwO3KtsjgVOffDxSHAa1IgpSImJ90jwsUpC3HI+/y36Veu3j12smdPPBG4XxB5ID yYrW2vjMIav9Ecx8G+F+N/gte7Ckxj+N4BQ6sa6B8PZvEDWYF3CUaIeHMRDdgA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757688445; a=rsa-sha256; cv=none; b=b10REeboLRVzp9KzspA8j1Fz7XkADnPxj+IiF4XgbBM/qFLg5mzDTdK+W33u6nyk8KSWy+ CBp1wESzUBHqRGz9DshgKwEHGj8Kf+uNvz9zws1FyHB9t5SJUnwtYpfxAQZJHCniMDRhZQ PTZtKARDa/EfgI/7X5BKzKhmExSJqCMHRPfR5V5Z0BAFF8u01JqM6kG0+TSt9AEMYtvz8t 1nvaSjT5O1LGyCtcyX3dZLuulaRVncJveH1G8ZSTuQMLxUsXjy6eumN3Qlnf+AMhDxiMeG jJdcIfYeCVcKyxXLW+whBYT/r32XH5lWMm2nDgTDVEIXN8xUHPBoV9wXL3eu9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4cNchm5yMlzmKS; Fri, 12 Sep 2025 14:47:20 +0000 (UTC) (envelope-from zlei@FreeBSD.org) Content-Type: text/plain; charset=us-ascii List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: 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: 22238759c57d - main - sys/bus.h: Some style(9) fixes From: Zhenlei Huang In-Reply-To: Date: Fri, 12 Sep 2025 22:47:05 +0800 Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <202509120456.58C4uwVD027045@gitrepo.freebsd.org> To: Konstantin Belousov X-Mailer: Apple Mail (2.3696.120.41.1.10) > On Sep 12, 2025, at 7:59 PM, Konstantin Belousov = wrote: >=20 > On Fri, Sep 12, 2025 at 04:56:58AM +0000, Zhenlei Huang wrote: >> The branch main has been updated by zlei: >>=20 >> URL: = https://cgit.FreeBSD.org/src/commit/?id=3D22238759c57d942865cf9d1a355a0d04= 819eb621 >>=20 >> commit 22238759c57d942865cf9d1a355a0d04819eb621 >> Author: Zhenlei Huang >> AuthorDate: 2025-09-12 04:55:14 +0000 >> Commit: Zhenlei Huang >> CommitDate: 2025-09-12 04:55:14 +0000 >>=20 >> sys/bus.h: Some style(9) fixes >>=20 >> and whitespace cleanup. >>=20 >> MFC after: 3 days >> --- >> sys/sys/bus.h | 38 ++++++++++++++++++++------------------ >> 1 file changed, 20 insertions(+), 18 deletions(-) >>=20 >> diff --git a/sys/sys/bus.h b/sys/sys/bus.h >> index dda27f4737b2..e7ce152160f8 100644 >> --- a/sys/sys/bus.h >> +++ b/sys/sys/bus.h >> @@ -78,7 +78,7 @@ typedef enum device_property_type { >> * The strings are placed one after the other, separated by NUL = characters. >> * Fields should be added after the last one and order maintained for = compatibility >> */ >> -#define BUS_USER_BUFFER (3*1024) >> +#define BUS_USER_BUFFER (3 * 1024) >> struct u_device { >> uintptr_t dv_handle; >> uintptr_t dv_parent; >> @@ -247,8 +247,8 @@ typedef struct devclass *devclass_t; >> * and may use regular mutexes. However, it is prohibited from >> * sleeping on a sleep queue. >> */ >> -typedef int driver_filter_t(void*); >> -typedef void driver_intr_t(void*); >> +typedef int driver_filter_t(void *); >> +typedef void driver_intr_t(void *); > What are the fixes there, specifically? >=20 One space is required between the type and *. >>=20 >> /** >> * @brief Interrupt type bits. >> @@ -476,18 +476,18 @@ int bus_generic_resume(device_t dev); >> int bus_generic_resume_child(device_t dev, device_t child); >> int bus_generic_setup_intr(device_t dev, device_t child, >> struct resource *irq, int flags, >> - driver_filter_t *filter, driver_intr_t = *intr,=20 >> + driver_filter_t *filter, driver_intr_t = *intr, >> void *arg, void **cookiep); > And there? >=20 > The continuation indent is completely wrong from the style(9) guide, > and the change just kept it, there and everywhere. Yes you're right, the fix is not complete. tools/build/checkstyle.pl = does not complain about the indent so I kept them the same style. Let me try to fix the indent ~ Best regards, Zhenlei From nobody Fri Sep 12 14:52:09 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNcpd2xrQz67XVN for ; Fri, 12 Sep 2025 14:52:25 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com [IPv6:2607:f8b0:4864:20::52e]) (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 4cNcpc2PR9z4718 for ; Fri, 12 Sep 2025 14:52:24 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pg1-x52e.google.com with SMTP id 41be03b00d2f7-b52047b3f19so1466949a12.2 for ; Fri, 12 Sep 2025 07:52:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1757688741; x=1758293541; 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=XuEJfISOqIEyGUaFSJ3zKazh55M3/7ylenMu5ftrbaY=; b=iX5A0cYKoVkFxef+t1V8zRJbiPIIA6iKWPUZMA1STeMaBHP4kUmV5mUGcLJcBQKqqn jlahZKN47kdQrYmMA4B+zPIokUW7i/sqZO3ibA/FdXSEnlBfamleKZ7hqYq835oDpbA+ uDBZVHWbYVRSo2OxYG2gCM32eTWnj7grbmDOl1N0PJUNn+TDrb8CiLRBMvxoBhU9+JIF MzbM5uZPkIODIDsfU9ekwTUnuSEn/wo7wfHM3ctbNhaDF9yhSQrXHip8LusXYihxjgjg 2fTbkyVCtF8NsxP7ywBxFjujxdFppGtBxYABMYgRLL9MOHRpew8IxF18k4X8lLWCiEq7 bN0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757688741; x=1758293541; 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=XuEJfISOqIEyGUaFSJ3zKazh55M3/7ylenMu5ftrbaY=; b=htM3EKfz62P7pO50tJxejcrIwxd0C1APs34Bq/M+GnKhLqqJAV6Jb457ZjbPia7VXe /65iDz3iLqoXy1+fOXsdHC1Dp++s7tEOL22ieAccnXD1Paz7XJTIqSlhu2rOplsSzj/B t3QlVKCohFf6R2xj85t7mE7S0Urz+QNJLF2Ns9f6iuy5uowwgNS84v1JD4H4zTsrDdU/ zejtaYQd5XLIiJjc2DcgsSqwXQ7swo0PxGKJBL/4S0pWY5T2DrmZVCjyIOx98BnJzWO0 2MmXLWsRlqXOISzmqsIDzTkPu1sRKB/0MoyJ7Vx1Zmrt/dpqdc8njh7DrvUagweSOK23 5VZA== X-Forwarded-Encrypted: i=1; AJvYcCUK8z4yaBMiI2g/sDGCBNS2P0r2jBEYPRxTJjDWkLJnloZm2IC/Tht7ayMcYlXN91QugT1YurjelAie2f1Qy9gEYTMXhg==@freebsd.org X-Gm-Message-State: AOJu0YyPApgWoqRsNaRV64wQReBYh5751xMufjWY4z42ew3BIQDJdJpD g9WADk6cpqgj7kue2EqG0nTJwn9n8puosdLlka+n98u9aO4Uih8wLiRUo4NGpFB1fgnsj5mw1BZ KlhzxkhcM6k0o+h7FGZvUPpV+CCie6yGMXHVUNJ7wWQ== X-Gm-Gg: ASbGncsiVxpGgsgc2+Zq+ERB+IKMN+dh74KTYMyKbyT+v68TYGE6qsMROKrEiFXU5Sf YQvKctwnzLFdHV8YML8ynv6S5Af49z3VOhpZvMXDbKC/5uZupcZDhZgme/rQIBp2WLysH0P7+QE Blgds6sMF06z9ZAY0AFjelqO2xyxHEstfL1cUDUyzT89l/yOR8zxjW2xmTkWN/AQsAMQLoacH+r BZyRazev+RA3/7olOulR8wJBjB9MPcoxsejIDc= X-Google-Smtp-Source: AGHT+IEt8gQaRNmezaCBrZhiWhV8Ew1M83i5QlD6zKkJxqNFncozX2tLYH2ToLQKwPzUX9WBxdPuRMoVUz4Syud4qj8= X-Received: by 2002:a17:903:1b25:b0:24c:bc02:78a1 with SMTP id d9443c01a7336-25d24cabfb4mr47211435ad.2.1757688740974; Fri, 12 Sep 2025 07:52:20 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509120456.58C4uwVD027045@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Fri, 12 Sep 2025 08:52:09 -0600 X-Gm-Features: Ac12FXyms5ifZcuZiIlBKuA52EGWhdV6_r67U0h08TTmtlHXci0Sh4evstC0mek Message-ID: Subject: Re: git: 22238759c57d - main - sys/bus.h: Some style(9) fixes To: Zhenlei Huang Cc: Konstantin Belousov , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000082530063e9bcdf4" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cNcpc2PR9z4718 --000000000000082530063e9bcdf4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Sep 12, 2025 at 8:47=E2=80=AFAM Zhenlei Huang wr= ote: > > > > On Sep 12, 2025, at 7:59 PM, Konstantin Belousov > wrote: > > > > On Fri, Sep 12, 2025 at 04:56:58AM +0000, Zhenlei Huang wrote: > >> The branch main has been updated by zlei: > >> > >> URL: > https://cgit.FreeBSD.org/src/commit/?id=3D22238759c57d942865cf9d1a355a0d0= 4819eb621 > >> > >> commit 22238759c57d942865cf9d1a355a0d04819eb621 > >> Author: Zhenlei Huang > >> AuthorDate: 2025-09-12 04:55:14 +0000 > >> Commit: Zhenlei Huang > >> CommitDate: 2025-09-12 04:55:14 +0000 > >> > >> sys/bus.h: Some style(9) fixes > >> > >> and whitespace cleanup. > >> > >> MFC after: 3 days > >> --- > >> sys/sys/bus.h | 38 ++++++++++++++++++++------------------ > >> 1 file changed, 20 insertions(+), 18 deletions(-) > >> > >> diff --git a/sys/sys/bus.h b/sys/sys/bus.h > >> index dda27f4737b2..e7ce152160f8 100644 > >> --- a/sys/sys/bus.h > >> +++ b/sys/sys/bus.h > >> @@ -78,7 +78,7 @@ typedef enum device_property_type { > >> * The strings are placed one after the other, separated by NUL > characters. > >> * Fields should be added after the last one and order maintained for > compatibility > >> */ > >> -#define BUS_USER_BUFFER (3*1024) > >> +#define BUS_USER_BUFFER (3 * 1024) > >> struct u_device { > >> uintptr_t dv_handle; > >> uintptr_t dv_parent; > >> @@ -247,8 +247,8 @@ typedef struct devclass *devclass_t; > >> * and may use regular mutexes. However, it is prohibited from > >> * sleeping on a sleep queue. > >> */ > >> -typedef int driver_filter_t(void*); > >> -typedef void driver_intr_t(void*); > >> +typedef int driver_filter_t(void *); > >> +typedef void driver_intr_t(void *); > > What are the fixes there, specifically? > > > > One space is required between the type and *. > > >> > >> /** > >> * @brief Interrupt type bits. > >> @@ -476,18 +476,18 @@ int bus_generic_resume(device_t dev); > >> int bus_generic_resume_child(device_t dev, device_t child); > >> int bus_generic_setup_intr(device_t dev, device_t child, > >> struct resource *irq, int flags, > >> - driver_filter_t *filter, driver_intr_t > *intr, > >> + driver_filter_t *filter, driver_intr_t > *intr, > >> void *arg, void **cookiep); > > And there? > > > > The continuation indent is completely wrong from the style(9) guide, > > and the change just kept it, there and everywhere. > > Yes you're right, the fix is not complete. tools/build/checkstyle.pl does > not > complain about the indent so I kept them the same style. > Don't blindly believe checkstyle.pl. It's at best a hack that's designed to catch the worst offenders for github submissions. It has many false positives and misses many other things. But it was quick and easy to deploy and helps guide reviewers to style problems by making potential ones more visible. Warner --000000000000082530063e9bcdf4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Fri, Sep 12,= 2025 at 8:47=E2=80=AFAM Zhenlei Huang <zlei@freebsd.org> wrote:


> On Sep 12, 2025, at 7:59 PM, Konstantin Belousov <kostikbel@gmail.com> wrote:<= br> >
> On Fri, Sep 12, 2025 at 04:56:58AM +0000, Zhenlei Huang wrote:
>> The branch main has been updated by zlei:
>>
>> URL: http= s://cgit.FreeBSD.org/src/commit/?id=3D22238759c57d942865cf9d1a355a0d04819eb= 621
>>
>> commit 22238759c57d942865cf9d1a355a0d04819eb621
>> Author:=C2=A0 =C2=A0 =C2=A0Zhenlei Huang <zlei@FreeBSD.org><= br> >> AuthorDate: 2025-09-12 04:55:14 +0000
>> Commit:=C2=A0 =C2=A0 =C2=A0Zhenlei Huang <zlei@FreeBSD.org><= br> >> CommitDate: 2025-09-12 04:55:14 +0000
>>
>>=C2=A0 =C2=A0 sys/bus.h: Some style(9) fixes
>>
>>=C2=A0 =C2=A0 and whitespace cleanup.
>>
>>=C2=A0 =C2=A0 MFC after:=C2=A0 =C2=A0 =C2=A0 3 days
>> ---
>> sys/sys/bus.h | 38 ++++++++++++++++++++------------------
>> 1 file changed, 20 insertions(+), 18 deletions(-)
>>
>> diff --git a/sys/sys/bus.h b/sys/sys/bus.h
>> index dda27f4737b2..e7ce152160f8 100644
>> --- a/sys/sys/bus.h
>> +++ b/sys/sys/bus.h
>> @@ -78,7 +78,7 @@ typedef enum device_property_type {
>>=C2=A0 * The strings are placed one after the other, separated by N= UL characters.
>>=C2=A0 * Fields should be added after the last one and order mainta= ined for compatibility
>>=C2=A0 */
>> -#define BUS_USER_BUFFER=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0(3*1024)
>> +#define BUS_USER_BUFFER=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0(3 * 1024)
>> struct u_device {
>>=C2=A0 =C2=A0 =C2=A0 uintptr_t=C2=A0 =C2=A0 =C2=A0 =C2=A0dv_handle;=
>>=C2=A0 =C2=A0 =C2=A0 uintptr_t=C2=A0 =C2=A0 =C2=A0 =C2=A0dv_parent;=
>> @@ -247,8 +247,8 @@ typedef struct devclass=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 *devclass_t;
>>=C2=A0 * and may use regular mutexes.=C2=A0 However, it is prohibit= ed from
>>=C2=A0 * sleeping on a sleep queue.
>>=C2=A0 */
>> -typedef int driver_filter_t(void*);
>> -typedef void driver_intr_t(void*);
>> +typedef int driver_filter_t(void *);
>> +typedef void driver_intr_t(void *);
> What are the fixes there, specifically?
>

One space is required between the type and *.

>>
>> /**
>>=C2=A0 * @brief Interrupt type bits.
>> @@ -476,18 +476,18 @@ int=C2=A0 =C2=A0 bus_generic_resume(device_t= dev);
>> int=C2=A0 bus_generic_resume_child(device_t dev, device_t child);<= br> >> int=C2=A0 bus_generic_setup_intr(device_t dev, device_t child,
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0struct resource *irq, int flags,
>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0driver_filter_t *filter, driver_intr_t *i= ntr,
>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0driver_filter_t *filter, driver_intr_t *i= ntr,
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0void *arg, void **cookiep);
> And there?
>
> The continuation indent is completely wrong from the style(9) guide, > and the change just kept it, there and everywhere.

Yes you're right, the fix is not complete. tools/build/checkstyle.pl doe= s not
complain about the indent so I kept them the same style.

Don't blindly believe checkstyle.pl. It's at best a hack that's designed to catch t= he worst offenders for github submissions. It has many false positives and = misses many other things. But it was quick and easy to deploy and helps gui= de reviewers to style problems by making potential ones more visible.
=

Warner=C2=A0
--000000000000082530063e9bcdf4-- From nobody Fri Sep 12 15:21:23 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNdS33QSVz67ZdL; Fri, 12 Sep 2025 15:21:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNdS32xGwz4Gch; Fri, 12 Sep 2025 15:21:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757690483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jRKPk54AejhCpBSft2+5qs0hl1PzsKsiDBryVCyYtRM=; b=DZWNeQyejrhxHr3LVeikCervwgdP0BhXGztYgeD/AJzrG4gavKjfjb91pmVZ8hZByFFdRh W3VQwKmplDjPJI34lZfhOPWQ0ic/WUchNtiYFparvgHy2SVXJfXhGSQGdXUOn9u4WR0yN4 Jk0Yk1X0Chc9l7h6eC1ADtPctdmdYjaoFZPx8owO5U+skhVPGLQHH1YktHs+Z7ttIiIhsQ RsmOk+omGezMmdl1QvbynmtEuSlAXvaVbyhkSOJFeWtjNSnY9Npi6xKNdeAK2mzsVQ67gD ipHlppriumW2217Tfkd0CBftbXkJbzKHGDd974r9Rsbpq5sAbM0Xy3MxG+syDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757690483; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jRKPk54AejhCpBSft2+5qs0hl1PzsKsiDBryVCyYtRM=; b=k35EI5UKFZWjweNtyjAbXIsP6Cfdgmz3GLt6sEUPu6aHxwT4wkqbjvIMn4vP6lQiQ6o18v aqc18MciyiFlPF0gysGfCz5NnfPp2V6pO6CfkRg7/JmjuKhgSu2qmIHP6HcjRmJ+lO3ZC9 XQqr2A3AMkloHqUglYVTfPUoobSFDa2x8ThinGkMc/qjHWBC4BIG9tsdQn20FOGnQF1xRh i6kMZUdoiXIVSIldka5arrHQE29R9EVb7Oa1fFq5WjMIyAdC7Mmj8Nf6I23GhgD65ER3gE onv4TRTS4sdatNJphwUSuqcmKjCVuz8G+pG7LqwUh+gd3wXgjWH/bqjgD1bA0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757690483; a=rsa-sha256; cv=none; b=Fw9uRBTnLWMD0HuRujcHVgcBnNlpvj4/R6lW/8GTrD4v8X8M+v6sdkBaYN7tNKzzzqUxZ+ nzj2vklUNiTX74Q0HlMHMrdQ7WafmMQ4A0folK4hnsTaLl7BXs+XPU+h3gbJMT/f626D7V v6SYyfEEWy/8rIc5q5FN9rkrIGmH5i8EaimHwDfqTT9sOLzmlG1i3ten0Wk0JXaOLn/6VV ltruwgk0Iu568Htr0XunL5U/howbne8nal02cipuXDwEnq/I/GEC4e0IUhqM+SZwt9kS4f nipWLdhEQmuUfzRVSzoqeF1gmyJwiZfvBn7PlafDDxb04HPsAAYyWHgqvdvjTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNdS32XYhzyXw; Fri, 12 Sep 2025 15:21: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 58CFLNhi099624; Fri, 12 Sep 2025 15:21:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CFLNts099622; Fri, 12 Sep 2025 15:21:23 GMT (envelope-from git) Date: Fri, 12 Sep 2025 15:21:23 GMT Message-Id: <202509121521.58CFLNts099622@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 1bc7ee74b6a8 - main - pkgbase: fix alpha and beta versioning List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 1bc7ee74b6a80081f0f5764970e3949e834965f1 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=1bc7ee74b6a80081f0f5764970e3949e834965f1 commit 1bc7ee74b6a80081f0f5764970e3949e834965f1 Author: Baptiste Daroussin AuthorDate: 2025-09-12 15:20:25 +0000 Commit: Baptiste Daroussin CommitDate: 2025-09-12 15:21:11 +0000 pkgbase: fix alpha and beta versioning MFC After: 1 day --- Makefile.inc1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 01866f949e49..98059640daab 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -585,10 +585,10 @@ BRANCH_EXT= ${MAJOR_REVISION}.snap EXTRA_REVISION= .snap${_TIMENOW} .elif ${_BRANCH:MALPHA*} BRANCH_EXT= alpha -EXTRA_REVISION= .${_BRANCH:C/ALPHA([0-9]+).*/\1/}.${_TIMENOW} +EXTRA_REVISION= .a${_BRANCH:C/ALPHA([0-9]+).*/\1/}.${_TIMENOW} .elif ${_BRANCH:MBETA*} BRANCH_EXT= beta -EXTRA_REVISION= .${_BRANCH:C/BETA([0-9]+).*/\1/}.${_TIMENOW} +EXTRA_REVISION= .b${_BRANCH:C/BETA([0-9]+).*/\1/}.${_TIMENOW} .elif ${_BRANCH:MRC*} BRANCH_EXT= rc EXTRA_REVISION= .rc${_BRANCH:C/RC([0-9]+).*/\1/}.${_TIMENOW} From nobody Fri Sep 12 15:30:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNdf51tsfz67Zg5; Fri, 12 Sep 2025 15:30:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNdf51CxKz4Kl3; Fri, 12 Sep 2025 15:30:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757691005; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4FkoHtHJbUXQnGMOFUlNw3LZ0zMrKB8gtXOoM2q6Eew=; b=Q8qrt3uQKlCrCzVd2uBPhkDMSgaQaQSjdslNicHeRAket3LqUVKn8gLqvktNhLcbudKHkE +fHpG9gU0UVAGEVDbA3OxQ1IHQruB4b6tBv7RMFY3nwW5L6QRgmTVPqa7xum1PJpqcfMZt uBVoQ0m+ltDY2NGZ/qa58c20YVaPQuIKVrnGGvkaTq4j+4SrkaDL9AcwwmEEaPhb5CAUpA lHpmVRyToooA6sRsQc8zfMD2LOtzEzCL5O4p4t9S0HvNAS7VVMNhoEPiUeoPGukuoXCrnR BYdqp0Qq/Al7WWsHwnvfekqHY7GO6dONd0BYwD4b/KVUed8+XB24pouqKbnSwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757691005; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4FkoHtHJbUXQnGMOFUlNw3LZ0zMrKB8gtXOoM2q6Eew=; b=nU8Cj/lxOGDWljskkK2djJqiDF3W3HRjZdQ5pgPmUrdglgXha6Z7sZkYmejPdRaKrHoe7e Os6U6uM6hCkL+prqAC68V2RcmlTag/jKH+XM6nPB4rC2BwOpsuEL5Co+3/8fAfXcVcjpP2 /P8qkMiQ0F5XAgfTHbd8oGQJoFFe1mshrjJkrprcDxh6ihxsnoqQuNA1S5KzmsGJaJDTBE hntS/NsgQwD3fAyOEkGSffdJbNFZTEKdaUMQCR1Naye5GCH8QjwKn6Zzs+SFJMTgOzFyn6 Mdu9iLcLfEO/yi7SWDRdrfgUlpbnj78+nMfBd7C2sU8r03Kx52t/bdbKbshQRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757691005; a=rsa-sha256; cv=none; b=aIbO2ywiEc8AV6B1eV0uB+1biOXBtwPYM6N0J+FEz6gph6IIXY0EjYCet/hWObaETuPCwC S+KYFKSf/wysN/5d0jV0vz6xvFyBGN1WfVxkCgibvyR8nkwzyI8sfgGrVTMShuyvMoTfjt Pb2SDJYS4svDpnZj9SYtnXg6zYtaE/JIuW+ZFq5JQhec95Y/GdzQniwoZex1PB6DebeiL1 qQMSZqc1pwKJqrO3VKg3nh7iEDt2mau25vP/YHg7azv4CY1p6NGSB969rSf6kwrJXuvXBy 1pRfKjQqCcN1FhrWFXAbDVa9pAHO8rYlY0C+69T4vCcvo1wZuvmP8yvxvjFWlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNdf50nYczyFn; Fri, 12 Sep 2025 15:30:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58CFU5QY008810; Fri, 12 Sep 2025 15:30:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CFU5WI008804; Fri, 12 Sep 2025 15:30:05 GMT (envelope-from git) Date: Fri, 12 Sep 2025 15:30:05 GMT Message-Id: <202509121530.58CFU5WI008804@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 4c6cf6107b82 - main - tools: Drop cryptotest List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 4c6cf6107b824f7ba4a3fe66db8e0a36c8dd8b04 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=4c6cf6107b824f7ba4a3fe66db8e0a36c8dd8b04 commit 4c6cf6107b824f7ba4a3fe66db8e0a36c8dd8b04 Author: Dag-Erling Smørgrav AuthorDate: 2025-09-12 15:29:40 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-12 15:29:40 +0000 tools: Drop cryptotest This has been supplanted by cryptocheck and has bitrotted to the point where it no longer builds. PR: 289325 Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D52399 --- tools/tools/crypto/Makefile | 5 +- tools/tools/crypto/cryptorun.sh | 31 -- tools/tools/crypto/cryptotest.c | 658 ---------------------------------------- 3 files changed, 1 insertion(+), 693 deletions(-) diff --git a/tools/tools/crypto/Makefile b/tools/tools/crypto/Makefile index d1aa55526248..5186a0d697e6 100644 --- a/tools/tools/crypto/Makefile +++ b/tools/tools/crypto/Makefile @@ -25,8 +25,7 @@ # SUCH DAMAGE. # -PROGS= cryptocheck cryptotest cryptostats \ - hifnstats ipsecstats safestats +PROGS= cryptocheck cryptostats hifnstats ipsecstats safestats MAN= BINDIR?= /usr/local/bin @@ -38,6 +37,4 @@ LIBADD.cryptocheck+= crypto util # safestats: statistics kept by the SafeNet driver # ipsecstats: print statistics kept by fast ipsec -CLEANFILES+= core a.out - .include diff --git a/tools/tools/crypto/cryptorun.sh b/tools/tools/crypto/cryptorun.sh deleted file mode 100755 index 8761b16c4d96..000000000000 --- a/tools/tools/crypto/cryptorun.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# -# A simple test runner for cryptotest -# -# Althought cryptotest itself has a -z mode to test all algorithms at -# a variety of sizes, this script allows us to be more selective. -# Threads and buffer sizes move in powers of two from 1, for threads, -# and 256 for buffer sizes. -# -# e.g. cryptorun.sh aes 4 512 -# -# Test aes with 1, 2 and 4 processes, and at sizes of 256 and 512 bytes. -# -# - -threads=1 -size=256 -iterations=1000000 -crypto="/tank/users/gnn/Repos/svn/FreeBSD.HEAD/tools/tools/crypto/cryptotest" -max_threads=$2 -max_size=$3 - -while [ "$threads" -le "$max_threads" ]; do - echo "Testing with $threads processes." - while [ "$size" -le "$max_size" ]; do - $crypto -t $threads -a $1 $iterations $size - size=$(($size * 2)) - done - size=256 - threads=$(($threads * 2)) -done diff --git a/tools/tools/crypto/cryptotest.c b/tools/tools/crypto/cryptotest.c deleted file mode 100644 index 7845c3994d0c..000000000000 --- a/tools/tools/crypto/cryptotest.c +++ /dev/null @@ -1,658 +0,0 @@ -/*- - * Copyright (c) 2004 Sam Leffler, Errno Consulting - * 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, - * without modification. - * 2. Redistributions in binary form must reproduce at minimum a disclaimer - * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any - * redistribution must be conditioned upon including a substantially - * similar Disclaimer requirement for further binary redistribution. - * 3. Neither the names of the above-listed copyright holders nor the names - * of any contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * NO WARRANTY - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY - * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL - * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. - */ - -/* - * Simple tool for testing hardware/system crypto support. - * - * cryptotest [-czsbv] [-a algorithm] [count] [size ...] - * - * Run count iterations of a crypt+decrypt or mac operation on a buffer of - * size bytes. A random key and iv are used. Options: - * -c check the results - * -d dev pin work on device dev - * -z run all available algorithms on a variety of buffer sizes - * -v be verbose - * -b mark operations for batching - * -p profile kernel crypto operations (must be root) - * -t n fork n threads and run tests concurrently - * Known algorithms are: - * null null cbc - * des des cbc - * 3des 3des cbc - * blf blowfish cbc - * cast cast cbc - * skj skipjack cbc - * aes rijndael/aes 128-bit cbc - * aes192 rijndael/aes 192-bit cbc - * aes256 rijndael/aes 256-bit cbc - * chacha20 Chacha20 stream cipher - * blake2b Blake2b - * blake2s Blake2s - * md5 md5 hmac - * sha1 sha1 hmac - * sha256 256-bit sha2 hmac - * sha384 384-bit sha2 hmac - * sha512 512--bit sha2 hmac - * - * For a test of how fast a crypto card is, use something like: - * cryptotest -z 1024 - * This will run a series of tests using the available crypto/cipher - * algorithms over a variety of buffer sizes. The 1024 says to do 1024 - * iterations. Extra arguments can be used to specify one or more buffer - * sizes to use in doing tests. - * - * To fork multiple processes all doing the same work, specify -t X on the - * command line to get X "threads" running simultaneously. No effort is made - * to synchronize the threads or otherwise maximize load. - * - * If the kernel crypto code is built with CRYPTO_TIMING and you run as root, - * then you can specify the -p option to get a "profile" of the time spent - * processing crypto operations. At present this data is only meaningful for - * symmetric operations. To get meaningful numbers you must run on an idle - * machine. - * - * Expect ~400 Mb/s for a Broadcom 582x for 8K buffers on a reasonable CPU - * (64-bit PCI helps). Hifn 7811 parts top out at ~110 Mb/s. - */ - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#define CHUNK 64 /* how much to display */ -#define streq(a,b) (strcasecmp(a,b) == 0) - -void hexdump(char *, int); - -int verbose = 0; -int opflags = 0; -int verify = 0; -int crid = CRYPTO_FLAG_HARDWARE; - -struct alg { - const char* name; - int ishash; - int blocksize; - int minkeylen; - int maxkeylen; - int code; -} algorithms[] = { -#ifdef CRYPTO_NULL_CBC - { "null", 0, 8, 1, 256, CRYPTO_NULL_CBC }, -#endif - { "des", 0, 8, 8, 8, CRYPTO_DES_CBC }, - { "3des", 0, 8, 24, 24, CRYPTO_3DES_CBC }, - { "blf", 0, 8, 5, 56, CRYPTO_BLF_CBC }, - { "cast", 0, 8, 5, 16, CRYPTO_CAST_CBC }, - { "skj", 0, 8, 10, 10, CRYPTO_SKIPJACK_CBC }, - { "rij", 0, 16, 16, 16, CRYPTO_RIJNDAEL128_CBC}, - { "aes", 0, 16, 16, 16, CRYPTO_AES_CBC}, - { "aes192", 0, 16, 24, 24, CRYPTO_AES_CBC}, - { "aes256", 0, 16, 32, 32, CRYPTO_AES_CBC}, - { "chacha20", 0, 1, 32, 32, CRYPTO_CHACHA20}, - { "blake2b", 1, 128, 64, 64, CRYPTO_BLAKE2B }, - { "blake2s", 1, 64, 32, 32, CRYPTO_BLAKE2S }, - { "md5", 1, 8, 16, 16, CRYPTO_MD5_HMAC }, - { "sha1", 1, 8, 20, 20, CRYPTO_SHA1_HMAC }, - { "sha256", 1, 8, 32, 32, CRYPTO_SHA2_256_HMAC }, - { "sha384", 1, 8, 48, 48, CRYPTO_SHA2_384_HMAC }, - { "sha512", 1, 8, 64, 64, CRYPTO_SHA2_512_HMAC }, -}; - -void -usage(const char* cmd) -{ - printf("usage: %s [-czsbv] [-d dev] [-a algorithm] [count] [size ...]\n", - cmd); - printf("where algorithm is one of:\n"); - printf(" null des 3des (default) blowfish cast skipjack rij\n"); - printf(" aes aes192 aes256 chacha20 md5 sha1 sha256 sha384 sha512\n"); - printf(" blake2b blake2s\n"); - printf(" or an encryption algorithm concatented with authentication\n"); - printf(" algorithm with '+' in the middle, e.g., aes+sha1.\n"); - printf("count is the number of encrypt/decrypt ops to do\n"); - printf("size is the number of bytes of text to encrypt+decrypt\n"); - printf("\n"); - printf("-c check the results (slows timing)\n"); - printf("-d use specific device, specify 'soft' for testing software implementations\n"); - printf("\tNOTE: to use software you must set:\n\t sysctl kern.cryptodevallowsoft=1\n"); - printf("-z run all available algorithms on a variety of sizes\n"); - printf("-v be verbose\n"); - printf("-b mark operations for batching\n"); - printf("-p profile kernel crypto operation (must be root)\n"); - printf("-t n for n threads and run tests concurrently\n"); - exit(-1); -} - -struct alg* -getalgbycode(int cipher) -{ - int i; - - for (i = 0; i < nitems(algorithms); i++) - if (cipher == algorithms[i].code) - return &algorithms[i]; - return NULL; -} - -struct alg* -getalgbyname(const char* name) -{ - int i; - - for (i = 0; i < nitems(algorithms); i++) - if (streq(name, algorithms[i].name)) - return &algorithms[i]; - return NULL; -} - -int -devcrypto(void) -{ - int fd = -1; - - if (fd < 0) { - fd = open(_PATH_DEV "crypto", O_RDWR, 0); - if (fd < 0) - err(1, _PATH_DEV "crypto"); - if (fcntl(fd, F_SETFD, 1) == -1) - err(1, "fcntl(F_SETFD) (devcrypto)"); - } - return fd; -} - -int -crlookup(const char *devname) -{ - struct crypt_find_op find; - - if (strncmp(devname, "soft", 4) == 0) - return CRYPTO_FLAG_SOFTWARE; - - find.crid = -1; - strlcpy(find.name, devname, sizeof(find.name)); - if (ioctl(devcrypto(), CIOCFINDDEV, &find) == -1) - err(1, "ioctl(CIOCFINDDEV)"); - return find.crid; -} - -const char * -crfind(int crid) -{ - static struct crypt_find_op find; - - bzero(&find, sizeof(find)); - find.crid = crid; - if (ioctl(devcrypto(), CIOCFINDDEV, &find) == -1) - err(1, "ioctl(CIOCFINDDEV): crid %d", crid); - return find.name; -} - -char -rdigit(void) -{ - const char a[] = { - 0x10,0x54,0x11,0x48,0x45,0x12,0x4f,0x13,0x49,0x53,0x14,0x41, - 0x15,0x16,0x4e,0x55,0x54,0x17,0x18,0x4a,0x4f,0x42,0x19,0x01 - }; - return 0x20+a[random()%nitems(a)]; -} - -void -runtest(struct alg *ealg, struct alg *alg, int count, int size, u_long cmd, struct timeval *tv) -{ - int i, fd = devcrypto(); - struct timeval start, stop, dt; - char *cleartext, *ciphertext, *originaltext, *key; - struct session2_op sop; - struct crypt_op cop; - char iv[EALG_MAX_BLOCK_LEN]; - char digest[512/8]; - - /* Canonicalize 'ealg' to crypt alg and 'alg' to authentication alg. */ - if (ealg == NULL && !alg->ishash) { - ealg = alg; - alg = NULL; - } - - bzero(&sop, sizeof(sop)); - if (ealg != NULL) { - sop.keylen = (ealg->minkeylen + ealg->maxkeylen)/2; - key = (char *) malloc(sop.keylen); - if (key == NULL) - err(1, "malloc (key)"); - for (i = 0; i < sop.keylen; i++) - key[i] = rdigit(); - sop.key = key; - sop.cipher = ealg->code; - } - if (alg != NULL) { - sop.mackeylen = (alg->minkeylen + alg->maxkeylen)/2; - key = (char *) malloc(sop.mackeylen); - if (key == NULL) - err(1, "malloc (mac)"); - for (i = 0; i < sop.mackeylen; i++) - key[i] = rdigit(); - sop.mackey = key; - sop.mac = alg->code; - } - - sop.crid = crid; - if (ioctl(fd, cmd, &sop) < 0) { - if (cmd == CIOCGSESSION || cmd == CIOCGSESSION2) { - close(fd); - if (verbose) { - printf("cipher %s%s%s", ealg? ealg->name : "", - (ealg && alg) ? "+" : "", - alg? alg->name : ""); - - if (alg->ishash) - printf(" mackeylen %u\n", sop.mackeylen); - else - printf(" keylen %u\n", sop.keylen); - perror("CIOCGSESSION"); - } - /* hardware doesn't support algorithm; skip it */ - return; - } - printf("cipher %s%s%s keylen %u mackeylen %u\n", - ealg? ealg->name : "", (ealg && alg) ? "+" : "", - alg? alg->name : "", sop.keylen, sop.mackeylen); - err(1, "CIOCGSESSION"); - } - - originaltext = malloc(3*size); - if (originaltext == NULL) - err(1, "malloc (text)"); - cleartext = originaltext+size; - ciphertext = cleartext+size; - for (i = 0; i < size; i++) - cleartext[i] = rdigit(); - memcpy(originaltext, cleartext, size); - for (i = 0; i < nitems(iv); i++) - iv[i] = rdigit(); - - if (verbose) { - printf("session = 0x%x\n", sop.ses); - printf("device = %s\n", crfind(sop.crid)); - printf("count = %d, size = %d\n", count, size); - if (ealg) { - printf("iv:"); - hexdump(iv, sizeof iv); - } - printf("cleartext:"); - hexdump(cleartext, MIN(size, CHUNK)); - } - - gettimeofday(&start, NULL); - if (ealg) { - for (i = 0; i < count; i++) { - cop.ses = sop.ses; - cop.op = COP_ENCRYPT; - cop.flags = opflags | COP_F_CIPHER_FIRST; - cop.len = size; - cop.src = cleartext; - cop.dst = ciphertext; - if (alg) - cop.mac = digest; - else - cop.mac = 0; - cop.iv = iv; - - if (ioctl(fd, CIOCCRYPT, &cop) < 0) - err(1, "ioctl(CIOCCRYPT)"); - - if (verify && bcmp(ciphertext, cleartext, size) == 0) { - printf("cipher text unchanged:"); - hexdump(ciphertext, size); - } - - memset(cleartext, 'x', MIN(size, CHUNK)); - cop.ses = sop.ses; - cop.op = COP_DECRYPT; - cop.flags = opflags; - cop.len = size; - cop.src = ciphertext; - cop.dst = cleartext; - if (alg) - cop.mac = digest; - else - cop.mac = 0; - cop.iv = iv; - - if (ioctl(fd, CIOCCRYPT, &cop) < 0) - err(1, "ioctl(CIOCCRYPT)"); - - if (verify && bcmp(cleartext, originaltext, size) != 0) { - printf("decrypt mismatch:\n"); - printf("original:"); - hexdump(originaltext, size); - printf("cleartext:"); - hexdump(cleartext, size); - } - } - } else { - for (i = 0; i < count; i++) { - cop.ses = sop.ses; - cop.op = 0; - cop.flags = opflags; - cop.len = size; - cop.src = cleartext; - cop.dst = 0; - cop.mac = ciphertext; - cop.iv = 0; - - if (ioctl(fd, CIOCCRYPT, &cop) < 0) - err(1, "ioctl(CIOCCRYPT)"); - } - } - gettimeofday(&stop, NULL); - - if (ioctl(fd, CIOCFSESSION, &sop.ses) < 0) - perror("ioctl(CIOCFSESSION)"); - - if (verbose) { - printf("cleartext:"); - hexdump(cleartext, MIN(size, CHUNK)); - } - timersub(&stop, &start, tv); - - free(originaltext); - - close(fd); -} - -#ifdef __FreeBSD__ -void -resetstats() -{ - struct cryptostats stats; - size_t slen; - - slen = sizeof (stats); - if (sysctlbyname("kern.crypto_stats", &stats, &slen, NULL, 0) < 0) { - perror("kern.crypto_stats"); - return; - } - bzero(&stats.cs_invoke, sizeof (stats.cs_invoke)); - bzero(&stats.cs_done, sizeof (stats.cs_done)); - bzero(&stats.cs_cb, sizeof (stats.cs_cb)); - bzero(&stats.cs_finis, sizeof (stats.cs_finis)); - stats.cs_invoke.min.tv_sec = 10000; - stats.cs_done.min.tv_sec = 10000; - stats.cs_cb.min.tv_sec = 10000; - stats.cs_finis.min.tv_sec = 10000; - if (sysctlbyname("kern.crypto_stats", NULL, NULL, &stats, sizeof (stats)) < 0) - perror("kern.cryptostats"); -} - -void -printt(const char* tag, struct cryptotstat *ts) -{ - uint64_t avg, min, max; - - if (ts->count == 0) - return; - avg = (1000000000LL*ts->acc.tv_sec + ts->acc.tv_nsec) / ts->count; - min = 1000000000LL*ts->min.tv_sec + ts->min.tv_nsec; - max = 1000000000LL*ts->max.tv_sec + ts->max.tv_nsec; - printf("%16.16s: avg %6llu ns : min %6llu ns : max %7llu ns [%u samps]\n", - tag, avg, min, max, ts->count); -} -#endif - -void -runtests(struct alg *ealg, struct alg *alg, int count, int size, u_long cmd, int threads, int profile) -{ - int i, status; - double t; - void *region; - struct timeval *tvp; - struct timeval total; - int otiming; - - if (size % alg->blocksize || (ealg && size % ealg->blocksize)) { - if (verbose) - printf("skipping blocksize %u 'cuz not a multiple of " - "%s blocksize %u (or %s blocksize %u)\n", - size, alg->name, alg->blocksize, - ealg ? ealg->name : "n/a", - ealg ? ealg->blocksize : 0); - return; - } - - region = mmap(NULL, threads * sizeof (struct timeval), - PROT_READ|PROT_WRITE, MAP_ANON|MAP_SHARED, -1, 0); - if (region == MAP_FAILED) { - perror("mmap"); - return; - } - tvp = (struct timeval *) region; -#ifdef __FreeBSD__ - if (profile) { - size_t tlen = sizeof (otiming); - int timing = 1; - - resetstats(); - if (sysctlbyname("debug.crypto_timing", &otiming, &tlen, - &timing, sizeof (timing)) < 0) - perror("debug.crypto_timing"); - } -#endif - - if (threads > 1) { - for (i = 0; i < threads; i++) - if (fork() == 0) { - cpuset_t mask; - CPU_ZERO(&mask); - CPU_SET(i, &mask); - cpuset_setaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, - -1, sizeof(mask), &mask); - runtest(ealg, alg, count, size, cmd, &tvp[i]); - exit(0); - } - while (waitpid(WAIT_MYPGRP, &status, 0) != -1) - ; - } else - runtest(ealg, alg, count, size, cmd, tvp); - - t = 0; - for (i = 0; i < threads; i++) - t += (((double)tvp[i].tv_sec * 1000000 + tvp[i].tv_usec) / 1000000); - if (t) { - int nops = alg->ishash ? count : 2*count; - - nops *= threads; - printf("%8.3lf sec, %7d %6s%s%6s crypts, %7d bytes, %8.0lf byte/sec, %7.1lf Mb/sec\n", - t, nops, alg->name, ealg? "+" : "", ealg? ealg->name : "", - size, (double)nops*size / t, - (double)nops*size / t * 8 / 1024 / 1024); - } -#ifdef __FreeBSD__ - if (profile) { - struct cryptostats stats; - size_t slen = sizeof (stats); - - if (sysctlbyname("debug.crypto_timing", NULL, NULL, - &otiming, sizeof (otiming)) < 0) - perror("debug.crypto_timing"); - if (sysctlbyname("kern.crypto_stats", &stats, &slen, NULL, 0) < 0) - perror("kern.cryptostats"); - if (stats.cs_invoke.count) { - printt("dispatch->invoke", &stats.cs_invoke); - printt("invoke->done", &stats.cs_done); - printt("done->cb", &stats.cs_cb); - printt("cb->finis", &stats.cs_finis); - } - } -#endif - fflush(stdout); -} - -int -main(int argc, char **argv) -{ - struct alg *alg = NULL, *ealg = NULL; - char *tmp; - int count = 1; - int sizes[128], nsizes = 0; - u_long cmd = CIOCGSESSION2; - int testall = 0; - int maxthreads = 1; - int profile = 0; - int i, ch; - - while ((ch = getopt(argc, argv, "cpzsva:bd:t:")) != -1) { - switch (ch) { -#ifdef CIOCGSSESSION - case 's': - cmd = CIOCGSSESSION; - break; -#endif - case 'v': - verbose++; - break; - case 'a': - tmp = strchr(optarg, '+'); - if (tmp != NULL) { - *tmp = '\0'; - ealg = getalgbyname(optarg); - if (ealg == NULL || ealg->ishash) - usage(argv[0]); - optarg = tmp + 1; - } - - alg = getalgbyname(optarg); - if (alg == NULL) { - if (streq(optarg, "rijndael")) - alg = getalgbyname("aes"); - else - usage(argv[0]); - } else if (ealg != NULL && !alg->ishash) - usage(argv[0]); - break; - case 'd': - crid = crlookup(optarg); - break; - case 't': - maxthreads = atoi(optarg); - break; - case 'z': - testall = 1; - break; - case 'p': - profile = 1; - break; - case 'b': - opflags |= COP_F_BATCH; - break; - case 'c': - verify = 1; - break; - default: - usage(argv[0]); - } - } - argc -= optind, argv += optind; - if (argc > 0) - count = atoi(argv[0]); - while (argc > 1) { - int s = atoi(argv[1]); - if (nsizes < nitems(sizes)) { - sizes[nsizes++] = s; - } else { - printf("Too many sizes, ignoring %u\n", s); - } - argc--, argv++; - } - if (maxthreads > CPU_SETSIZE) - errx(EX_USAGE, "Too many threads, %d, choose fewer.", maxthreads); - - if (nsizes == 0) { - if (alg) - sizes[nsizes++] = alg->blocksize; - else - sizes[nsizes++] = 8; - if (testall) { - while (sizes[nsizes-1] < 8*1024) { - sizes[nsizes] = sizes[nsizes-1]<<1; - nsizes++; - } - } - } - - if (testall) { - for (i = 0; i < nitems(algorithms); i++) { - int j; - alg = &algorithms[i]; - for (j = 0; j < nsizes; j++) - runtests(ealg, alg, count, sizes[j], cmd, maxthreads, profile); - } - } else { - if (alg == NULL) - alg = getalgbycode(CRYPTO_3DES_CBC); - for (i = 0; i < nsizes; i++) - runtests(ealg, alg, count, sizes[i], cmd, maxthreads, profile); - } - - return (0); -} - -void -hexdump(char *p, int n) -{ - int i, off; - - for (off = 0; n > 0; off += 16, n -= 16) { - printf("%s%04x:", off == 0 ? "\n" : "", off); - i = (n >= 16 ? 16 : n); - do { - printf(" %02x", *p++ & 0xff); - } while (--i); - printf("\n"); - } -} From nobody Fri Sep 12 15:48:41 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNf3Y4Lx6z67bXg; Fri, 12 Sep 2025 15:48:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNf3Y3Zbzz3Btm; Fri, 12 Sep 2025 15:48:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757692121; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vJexNeBh9flQj3cCddBZQHOOb9EIphbGE+OjKaEPwRg=; b=ERROqtfdGOZEuwrCUzJMC1s94KZs6vf0STy3aIvgHOv9wob34GAT3pp+zY9OqBu2j/zxdc HgDg6DVl4lw3Iy4pcwnPG4ZN56JycJS8ol2ir+S5b5Q9ODswCqPaVW7k6Pg58Y09nHhn2l m6ey/ZfELjGUYHRlmhF0/sHVxWjQP83ykz+KTA1jK/hVzpm96hq7vzNlGXw9E3i65V4+4O domI4+gF8ZxThYYB+riQ7jV+w36xFszT9X8de7pXIuQMGkF7xBFYEEjAUHg+Wgpd8NA3Sw iIWQ2/fkkZJDllJMJ8EGJBjMDowCtmgUgYr8RGUBIUcrpQx0gpDkzPaiW4ZkwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757692121; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vJexNeBh9flQj3cCddBZQHOOb9EIphbGE+OjKaEPwRg=; b=WUTcb4MXcxKKxmfHk7tfhN39VXuhrBm82/Qq909xUq+DUHyIz/Pn23EXfg6UKLM0vEqfFk sSqb4UlAy1h2djt8s1OIxsYAkSW4IO24nZNueTphvHV+ZfEYD8KBITD1yGzfiv+8Gm4bzA XgUc+9052yCjSAZ5e3TnPOP++V6t/sPDInSIDNxAFEO7lVQELbvBGLSQdbche0+l3nG4+q SON/S94G7XO9oHp/seAjsZ8lrRnASNbl+gVbzzATJSYpHGdteWNt7aCA6UWSE56VLYxAGW ggjP17LYFJyRgm55H3SmKam1QaEbz4hm7saQuqts2faapQ3kJnk7qO09o17GWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757692121; a=rsa-sha256; cv=none; b=k7B5CU/i6rRVwxK3R04s7WxvwXDgv9+NqP3AU8ToUabqBM0x9UE59HPMhdvWrMO5xGg//M QqF1ltpOD5zJVQPR0Z8PyQlHPT4NQaemnYgLbbn14NMNJ46VGlHcPkTOkwDh+Nnyy2e8t5 VXA42Ot20VbugudUoHtOFlpSzxXeZQdcQxO567zPFtgGiMXGjCy5dFlxCHkA7Sx3GnANAy KNBvTerUDqBOARVisIRvt5YP+UFVCaP8lKNyYzikMf7nBGHuudPs1CdS3mK5Otv8e2x5IQ Vqfk1eirM82J3DYHeH/VhlVGjVQ3xfegFFHJ1MVU74Y3BehQrIcb8JiipZimMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNf3Y37Vgz1079; Fri, 12 Sep 2025 15:48: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 58CFmf7Y043929; Fri, 12 Sep 2025 15:48:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CFmfHP043926; Fri, 12 Sep 2025 15:48:41 GMT (envelope-from git) Date: Fri, 12 Sep 2025 15:48:41 GMT Message-Id: <202509121548.58CFmfHP043926@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: ecca34fa9695 - main - gunion: Also destroy the rw_lock List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: ecca34fa969579e53e4940ef9d7a7e170e872e77 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=ecca34fa969579e53e4940ef9d7a7e170e872e77 commit ecca34fa969579e53e4940ef9d7a7e170e872e77 Author: Warner Losh AuthorDate: 2025-09-09 23:42:50 +0000 Commit: Warner Losh CommitDate: 2025-09-12 15:48:24 +0000 gunion: Also destroy the rw_lock We also need to destroy the rw_lock when we free the softc. Noticed by: markj Fixes: 656f7f43f204 Sponsored by: Netflix --- sys/geom/union/g_union.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/geom/union/g_union.c b/sys/geom/union/g_union.c index 302761597f6f..43c16c86e5a8 100644 --- a/sys/geom/union/g_union.c +++ b/sys/geom/union/g_union.c @@ -358,6 +358,7 @@ fail2: fail1: g_destroy_consumer(lowercp); g_destroy_provider(newpp); + rw_destroy(&sc->sc_rwlock); g_free(sc); g_destroy_geom(gp); } From nobody Fri Sep 12 16:28:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNfy35S2Lz67djD; Fri, 12 Sep 2025 16:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNfy34lmcz3Qxb; Fri, 12 Sep 2025 16:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694539; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eInsUtsP0RX7EPHsvnStBTPkL7w6YEvBBTZqb96C+3g=; b=B6b8uy50zSRtQRSd7mt1kVif5z7VOU8LoSj6L7WHWD2FZRUkNjV++YSQ8q5DMd5JRyzBAc 3HFSWaGuxE4HvLGyDufBuneoUAKBV2FdoTcvZUQjCTQji79OKUuQVM8szsKdr7j6A8ZtpD xUIlNdp1mwah3wenqB4sZ6qyY4d/gxw5fFlSZekj5y7w/XE4tPW3Q/pOVzydgTjsrTZFar w4hbArj49htsqGAZlIvJ8Jr8fs0uwgbi7pP7ho4nApg0GOIERdyndGYraxfCDKndSblRwi /biS84QfvFhkbhkDW+c4eMSnu+zUlCylCOhM3GAWm+P16phNExLT5o+BxWsP7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694539; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eInsUtsP0RX7EPHsvnStBTPkL7w6YEvBBTZqb96C+3g=; b=QZJfqdS0CVL5JTtD6uR6rQJqtnyn9ZJmJshgM7J3rrFwnIwOR8TOQE7K6ZttgyYU+Afzet Flu3oVZWjz0h/4RZ4b5QSGZxsjSx9Tp7JGpQXXKtuJveQptSyrerkIDyLin1I75zf37j8j QbfX6yhhirWIXhvgweu3dHraVkJy5apD23YcT+0N2+qZwwcdWdbupBUGNArZWTu9vHnW4u 4FIsd+yMYUcA2xsRpz5zjEKnwTqDaOQ9rFb6D5CP2uQ7NJZQ3JkfLxfBJyz91EfKNoo/EV keWC4QwjPW/kOiYP/0YEWm3tE7SvZ2aG6wudf127Sx58GyYDdblIvKhPWvUfWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757694539; a=rsa-sha256; cv=none; b=Y/BJ14ywSk/o9BRroPoM/5w36zNv9bSzFISxJoCtpOiobOzAijMUhXK/CNaO+2K4y3avT2 rKS4s9zOnBfVWCAWmk+adRVo+W8jzmphsM6fVWo4HserQKJZRpgMXVYcR98vKEfBtfi/vQ ZaRKD2+eP4nGqPg9tARQXbU6B5x1KiB/2zfs5Kic9VBLsn+yHkP5Mu87/fXQxbgMZVKm3Q VbYE+RDUU8jXcoqeXAyNLifBw9IXjvoDj6FQ8rBNgdDOvNAIEEv/KCSlDbG6vIBH/QmKp8 fWvLkUjXtJ18Km+GloCWU3p4DXRrpUgy6OTS+TKPVFLe4GdSIvu7FL1hit82WA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNfy34BFpz10nZ; Fri, 12 Sep 2025 16:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 58CGSx0j019386; Fri, 12 Sep 2025 16:28:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CGSxhC019383; Fri, 12 Sep 2025 16:28:59 GMT (envelope-from git) Date: Fri, 12 Sep 2025 16:28:59 GMT Message-Id: <202509121628.58CGSxhC019383@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 593d432e5852 - main - ng_device: replace dependency on vnode.h with fcntl.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 593d432e5852a254eeef83a8b1762492bb08668e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=593d432e5852a254eeef83a8b1762492bb08668e commit 593d432e5852a254eeef83a8b1762492bb08668e Author: Quentin Thébault AuthorDate: 2025-08-28 06:27:03 +0000 Commit: Warner Losh CommitDate: 2025-09-12 16:24:26 +0000 ng_device: replace dependency on vnode.h with fcntl.h Update to current convention of using fcntl.h O_* flags instead of vnode.h IO_* ones, as explained in sys/fs/devfs/devfs_vnops.c. Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 --- sys/netgraph/ng_device.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index e4fcdfc635cb..79cae9933a5a 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -51,7 +51,7 @@ #include #include #include -#include +#include #include #include @@ -457,7 +457,7 @@ ngdread(struct cdev *dev, struct uio *uio, int flag) do { IF_DEQUEUE(&priv->readq, m); if (m == NULL) { - if (flag & IO_NDELAY) + if (flag & O_NONBLOCK) return (EWOULDBLOCK); mtx_lock(&priv->ngd_mtx); priv->flags |= NGDF_RWAIT; From nobody Fri Sep 12 16:29:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNfy46tC7z67dcd; Fri, 12 Sep 2025 16:29:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNfy45YGZz3R0W; Fri, 12 Sep 2025 16:29:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694540; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mVyZELvblDyUpyhcbf5WVzq7X1ymUjV9/LxmlzozTGI=; b=bplHxuccA1BmF3ufGfWbeiJk2GBCjNwZmG8cbSKYWf4HyQLTQggFPafB/gVg8FzJXONpKx 35jkt1ZTNg/qZpF0Dk/qrMiG0EiAe2gqEA0RiUcYQPLGVKAkZg9EE9P4MX7GFyldXQzA0Q 2gVx3CqhFlMFDwCq09GVTsLTxjfMs+AqPI5VQ1n1A9iyAg0iLfcjr/bs2nLrlbVoYP1u26 cn16TDocVU2XzgNr/spi3jycsXRjDkPbci5CCTSuPgpwZTpvyBy0eMvuHLPn5+gw8jV09d mIpAu1qAmtXM1IFhg0ZucP7pxk6yj57DpQH+9bFittnIQurLnIR846XG03NuEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694540; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mVyZELvblDyUpyhcbf5WVzq7X1ymUjV9/LxmlzozTGI=; b=wHHHTqI4H4W3+MRhWwdR88oUFezCHE9qFQa+/e5Lq3Qwe1lNVFwSDv97UuzNhreA9QXoHz QFve6Q3iP6Rw3OowDMzAe4a+pU50DNyDWodL2cJ3WjYgkmtGw1kXhZ1rmC/Rl/JRDE3wEU DEXC3a1jAWVm1Ic7cwQO6oYrlpTXowqOM5vlMDpfWdasULHLqoZqcCJ3mtdQPVg7EyzdF9 JB/l2I1Snl1tGEqsk+/c66/fUOke9NTaWSBBYvr4PxKp2Uc1sv4+R5owJz5iNvJ9CWfj8b NRjBOvSsVBdgLRrjFqsoj6VKbngybRp3HbgYi3Aq9OniGkmK1JixmQQGoV9eNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757694540; a=rsa-sha256; cv=none; b=QRKNM5EZVr0LHFxcP0WSB49OBr1qYrI5X1+J0xw56cmZAi7L6WAe3RsXo8iAVN/b9NjvkC BwcBKUsmQLB0otKqC3ojn1zlwQT1jgIFueOcPIy3e6qBJeal042ScCw9MIb/nan0Hfu3oj w1tUmaZXtXI/ybRawAJbIyNNAZBbIgjis+tBFr1TautAk7iBZMEEjYoEgvbyPynLfR3DOF p8RZSDcXByU2k7RZ9zPx99wsDq8ioCx60P+NVfIlRwYTPaDE1bdIyFs1o3km6iBGe2qha4 VtA84OBy+JyN/8QGyTh2pbWV3H0ED9h9R0jH+Fo3SxPMqyRxnX75He8oixYxog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNfy457Xgz10LX; Fri, 12 Sep 2025 16:29: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 58CGT0qA019426; Fri, 12 Sep 2025 16:29:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CGT0Yl019423; Fri, 12 Sep 2025 16:29:00 GMT (envelope-from git) Date: Fri, 12 Sep 2025 16:29:00 GMT Message-Id: <202509121629.58CGT0Yl019423@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 9fadaee7ecce - main - ng_device: enable setting the device to non-blocking mode List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: 9fadaee7ecce02ab11cfbb18ea63b9bf1fb11bfc Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=9fadaee7ecce02ab11cfbb18ea63b9bf1fb11bfc commit 9fadaee7ecce02ab11cfbb18ea63b9bf1fb11bfc Author: Quentin Thébault AuthorDate: 2025-08-28 08:19:41 +0000 Commit: Warner Losh CommitDate: 2025-09-12 16:24:38 +0000 ng_device: enable setting the device to non-blocking mode Return success when FIONBIO or FIOASYNC ioctl are received in order to support being set to non-blocking through fcntl(2). We return an error on FIOASYNC with non-zero data argument since we do not support O_ASYNC. Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 --- sys/netgraph/ng_device.c | 41 ++++++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index 79cae9933a5a..eca3a916a59f 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -38,20 +38,21 @@ #endif #include +#include #include +#include +#include +#include #include #include #include #include #include #include -#include #include #include #include -#include #include -#include #include #include @@ -135,9 +136,7 @@ static d_close_t ngdclose; static d_open_t ngdopen; static d_read_t ngdread; static d_write_t ngdwrite; -#if 0 static d_ioctl_t ngdioctl; -#endif static d_poll_t ngdpoll; static struct cdevsw ngd_cdevsw = { @@ -146,9 +145,7 @@ static struct cdevsw ngd_cdevsw = { .d_close = ngdclose, .d_read = ngdread, .d_write = ngdwrite, -#if 0 .d_ioctl = ngdioctl, -#endif .d_poll = ngdpoll, .d_name = NG_DEVICE_DEVNAME, }; @@ -397,6 +394,36 @@ ngdclose(struct cdev *dev, int flag, int mode, struct thread *td) return(0); } +/* + * Process IOCTLs + * + * At this stage we only return success on FIONBIO to allow setting the device + * as non-blocking. + * + */ +static int +ngdioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, + struct thread *td) +{ + int error; + + switch (cmd) { + case FIONBIO: + error = 0; + break; + case FIOASYNC: + if (*(int *)data != 0) + error = EINVAL; + else + error = 0; + break; + default: + error = ENOTTY; + } + + return (error); +} + #if 0 /* * The ioctl is transformed into netgraph control message. * We do not process them, yet. From nobody Fri Sep 12 16:29:01 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNfy617wRz67drY; Fri, 12 Sep 2025 16:29:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNfy56f89z3R4S; Fri, 12 Sep 2025 16:29:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694541; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MObILpzQ8GOkXyDSHnC1DDIgLbro+Z8M7GiV0B5j0PY=; b=QLt7SRHs0EQcKTdrg1Aa/gx5gJop0mKDJgl04J9rgXtvYliiw+K8VHqtN7xivBWjmL0J6L kUJL/SyQAlyneYv8NCazsqctZD5edc0dauiwAHR+0Vu+ebGzeksXBJ4oJW2DbQqUW1aDuD dzrbX+ncSaznweOg2xSQaj1NEbG35DJH/P+XEhjPHjxCSiSYQ9d1zxj1urNdb4QgQzkIjn 2ZRB6swfbQTnHe3MoiMMrNmiuFvgG/iLakQLyA6HwCYGjQOvG6cDM4hOsjSZ/gN5AXodci AG86wUw04xg+CAlLQJczIdy2TW/k2g5iXJwY67AJzhAZgovCpDoEO6By3j9/2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757694541; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MObILpzQ8GOkXyDSHnC1DDIgLbro+Z8M7GiV0B5j0PY=; b=tZnYa/8xU2u2Ed+z36AXwcYihl4O4EcTuHdWBEXeLEP1lbwwZA/UK8Ky6WqT3wafaGu2io r8Un/j08zte37FnZlMsb9wzUpbgBAboyX5oGqVupQqnQQ9tFfmt/Gyu9+QSVW4Fx/YHZLb Y6nsfwQMxGG+s/c/P2P4bAv+bMdOMelpcbazxy8EJldJINqMukRR3+3HOXCJKEQ+PmqBg7 r3xTDK3j6EDd67IzAwPfeCRm7tHfl9aDwluuHVxHK3XIt3YfSoci5fyVBhKxLiBNEMHh+L MNrsrKJ9edTWZVsSjavc0z9sHnktdOIvEI4ZisYnFqCbfhZlhy3zVntvnHhqng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757694541; a=rsa-sha256; cv=none; b=NNGDJ0fGAaB3qRJwdzGfbUOQ+I0B7GsrWCm1jDf9PLVvARK2Y6W9L9W/MkLNFde8Ob9TxD KNExlWw+Km92SAdULDTf+8TOIctfj1vEgR88VAfQMg4hjd601vRL2Cpna1ShQX0ieNHMfy y1ReQM5RUCvPrlfoQvqjtajmSrt6xznVf5G+TWbtNSg1jIRb+4l/VOA6SWbbDQ4H+/ipeR asJaVsQvhji1ivHQx4TulGotau8oW9xD4XP4jBGu8rvqgpt1PvXOEtqqZto1w/t5xcnjtt C/O5S65VxvAUx37Gg8hB+2/4thlPsrqFcn9rJMdefZ6cwYQRRnNCeO1XJoBrLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNfy564bVz10LY; Fri, 12 Sep 2025 16:29: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 58CGT1Ki019460; Fri, 12 Sep 2025 16:29:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CGT1Mp019457; Fri, 12 Sep 2025 16:29:01 GMT (envelope-from git) Date: Fri, 12 Sep 2025 16:29:01 GMT Message-Id: <202509121629.58CGT1Mp019457@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: bcdbeaeffccb - main - ng_device.c: improve compliance with style(9) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: bcdbeaeffccb65574ac06001888840d9a15f4edf Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=bcdbeaeffccb65574ac06001888840d9a15f4edf commit bcdbeaeffccb65574ac06001888840d9a15f4edf Author: Quentin Thébault AuthorDate: 2025-09-08 13:33:03 +0000 Commit: Warner Losh CommitDate: 2025-09-12 16:24:44 +0000 ng_device.c: improve compliance with style(9) Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 --- sys/netgraph/ng_device.c | 63 ++++++++++++++++++++++++++---------------------- 1 file changed, 34 insertions(+), 29 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index eca3a916a59f..582f877ff3ed 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -32,7 +32,7 @@ */ #if 0 -#define DBG do { printf("ng_device: %s\n", __func__ ); } while (0) +#define DBG do { printf("ng_device: %s\n", __func__); } while (0) #else #define DBG do {} while (0) #endif @@ -150,9 +150,11 @@ static struct cdevsw ngd_cdevsw = { .d_name = NG_DEVICE_DEVNAME, }; -/****************************************************************************** +/* + ***************************************************************************** * Netgraph methods - ******************************************************************************/ + ***************************************************************************** + */ /* * Handle loading and unloading for this node type. @@ -202,13 +204,13 @@ ng_device_constructor(node_p node) priv->ngddev = make_dev(&ngd_cdevsw, priv->unit, UID_ROOT, GID_WHEEL, 0600, NG_DEVICE_DEVNAME "%d", priv->unit); - if(priv->ngddev == NULL) { - printf("%s(): make_dev() failed\n",__func__); + if (priv->ngddev == NULL) { + printf("%s(): make_dev() failed\n", __func__); mtx_destroy(&priv->ngd_mtx); mtx_destroy(&priv->readq.ifq_mtx); free_unr(ngd_unit, priv->unit); free(priv, M_NETGRAPH); - return(EINVAL); + return (EINVAL); } /* XXX: race here? */ priv->ngddev->si_drv1 = priv; @@ -218,7 +220,7 @@ ng_device_constructor(node_p node) log(LOG_WARNING, "%s: can't acquire netgraph name\n", devtoname(priv->ngddev)); - return(0); + return (0); } /* @@ -286,7 +288,7 @@ ng_device_newhook(node_p node, hook_p hook, const char *name) priv->hook = hook; - return(0); + return (0); } /* @@ -319,7 +321,7 @@ ng_device_rcvdata(hook_p hook, item_p item) } mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -344,7 +346,7 @@ ng_device_disconnect(hook_p hook) ng_rmnode_self(NG_HOOK_NODE(hook)); - return(0); + return (0); } /* @@ -357,9 +359,11 @@ ng_device_shutdown(node_p node) return (0); } -/****************************************************************************** +/* + ***************************************************************************** * Device methods - ******************************************************************************/ + ***************************************************************************** + */ /* * the device is opened @@ -367,7 +371,7 @@ ng_device_shutdown(node_p node) static int ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; DBG; @@ -375,7 +379,7 @@ ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) priv->flags |= NGDF_OPEN; mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -384,14 +388,14 @@ ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) static int ngdclose(struct cdev *dev, int flag, int mode, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; DBG; mtx_lock(&priv->ngd_mtx); priv->flags &= ~NGDF_OPEN; mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -435,21 +439,22 @@ ngdioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, * */ static int -ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) +ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, + struct thread *td) { struct ngd_softc *sc = &ngd_softc; - struct ngd_connection * connection = NULL; - struct ngd_connection * tmp; + struct ngd_connection *connection = NULL; + struct ngd_connection *tmp; int error = 0; struct ng_mesg *msg; - struct ngd_param_s * datap; + struct ngd_param_s *datap; DBG; NG_MKMESSAGE(msg, NGM_DEVICE_COOKIE, cmd, sizeof(struct ngd_param_s), M_NOWAIT); if (msg == NULL) { - printf("%s(): msg == NULL\n",__func__); + printf("%s(): msg == NULL\n", __func__); goto nomsg; } @@ -458,12 +463,12 @@ ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td datap->p = addr; NG_SEND_MSG_HOOK(error, sc->node, msg, connection->active_hook, 0); - if(error) - printf("%s(): NG_SEND_MSG_HOOK error: %d\n",__func__,error); + if (error) + printf("%s(): NG_SEND_MSG_HOOK error: %d\n", __func__, error); nomsg: - return(0); + return (0); } #endif /* if 0 */ @@ -474,7 +479,7 @@ nomsg: static int ngdread(struct cdev *dev, struct uio *uio, int flag) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; struct mbuf *m; int len, error = 0; @@ -510,14 +515,14 @@ ngdread(struct cdev *dev, struct uio *uio, int flag) /* * This function is called when our device is written to. - * We read the data from userland into mbuf chain and pass it to the remote hook. - * + * We read the data from userland into mbuf chain and pass it to the remote + * hook. */ static int ngdwrite(struct cdev *dev, struct uio *uio, int flag) { struct epoch_tracker et; - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; struct mbuf *m; int error = 0; @@ -547,7 +552,7 @@ ngdwrite(struct cdev *dev, struct uio *uio, int flag) static int ngdpoll(struct cdev *dev, int events, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; int revents = 0; if (events & (POLLIN | POLLRDNORM) && From nobody Fri Sep 12 17:06:34 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNgnn18Psz67h3S for ; Fri, 12 Sep 2025 17:06:53 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Received: from mail-qt1-x82d.google.com (mail-qt1-x82d.google.com [IPv6:2607:f8b0:4864:20::82d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNgnm3QHqz3djb for ; Fri, 12 Sep 2025 17:06:52 +0000 (UTC) (envelope-from kevin.bowling@kev009.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-qt1-x82d.google.com with SMTP id d75a77b69052e-4b61161c35cso8300581cf.3 for ; Fri, 12 Sep 2025 10:06:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kev009.com; s=google; t=1757696806; x=1758301606; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=cTxsSN1xO7pfhBxfrzO4qGNr3LMbYrucsgdaYflwRjM=; b=o8/vuuRT28l5HkAivUvXWSbIUCUKGPefHoBH/cdj8G3WZSekQ1IsckJ5KUfJmE2ooE HP67d4FhFOUmvpa1Rgrw9d2fojK+KvVpACRpZECcoKtB9NSRNDDGnvdCb6BsnTVQwG5q V0sozMJR/z50o6Huf0qzpsc3ssj+J8BMPnG8o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757696806; x=1758301606; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cTxsSN1xO7pfhBxfrzO4qGNr3LMbYrucsgdaYflwRjM=; b=OAvjg0WXSbSz1kOFh3vmsMj+E2zUuuUJ0PU0fbPxgFrH4voa41BQG0WgxhiNs+1jki 9LnOrvRDcDQMA3yFVXea+7/k5lylslxB8bFRWCdy/Kj22cEuB2UYNNhsmTJQymbc0BWP aTfLIHgpm+Kt2D9UDdAhsuWNK4fVmFa8g7ilE+SCWIr1Np4RCYNeA2juu5L3dnfOZyaJ 0Lkp5jqNj207wlyFuxyB0V7cPmNgMg5ZNuaGh/1GIcck15DGSzH5/7hxixXHbLYrTHwT NjQiLQ2zlwwx1LU+IS0MGFx4uZ5M1DupZ/iQZ5oU5uvV2+0yxE9NoPFklF6RY+9nQaGY fm0w== X-Forwarded-Encrypted: i=1; AJvYcCW1bTifkEdGZANlFwQV9ie9/iNVsjKFpha29kYZ8VtAIiPjT/22QpaeYYVSuAM1oCuRfK1FsSETiMz7LO1ejFChGjQI5g==@freebsd.org X-Gm-Message-State: AOJu0YwKXtQwrRJu0/fANAZZGZ4ayDWb+u8zFZI621uAnX0Lj1od1J80 3XAL7lxHUon0+JGs1k3n/5hdyW6c+LMm/cligvNdS6NSNt/7hYjEsFycxIlOHsdZPuRmJTAUYRU rdMZfJIZzxwWcpsSU6UU2FnxfwxtJs5Rmj9iLskzt X-Gm-Gg: ASbGncvXOslov6ttgUTASX/7nS+9GqB2nKua3qk35Sr5EngvxCaDBCBPfkkxP4nIo/c wdzHvIHmkGx2TtOgAiF0mYQYTh8T3naL3AqtCuheWTav5aIkOvJM4isF6Ibmwt0WuhxbgB6ZWqQ TV+y3vzFQpwDVUAxB6oMArQYK7J9BcaNIVM6cFiEunts74ngCGK8Q5tNfThx1cR4SnrjwkV767F 3od2D3s X-Google-Smtp-Source: AGHT+IF4iA6DFBczK8oeuGUQPyGCQiJfiRXnVdObcTikUjRberUwQ0/kuMgIhW1T+cUnvXBGQ4EaGTMBUsdpyccFlo0= X-Received: by 2002:a05:622a:4d93:b0:4b2:a8d1:303b with SMTP id d75a77b69052e-4b77cfc1d3emr54550671cf.25.1757696806525; Fri, 12 Sep 2025 10:06:46 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202509101658.58AGwlFE061466@gitrepo.freebsd.org> <86ikhnhlmw.fsf@ltc.des.dev> In-Reply-To: <86ikhnhlmw.fsf@ltc.des.dev> From: Kevin Bowling Date: Fri, 12 Sep 2025 10:06:34 -0700 X-Gm-Features: Ac12FXxDhqRyo15-tvZszxnmLPktHbV_QMR3IKX-wyM7JLTpkjU-1ybkRbONVzQ Message-ID: Subject: Re: git: dd8c666d8b78 - main - src.sys.mk: Support src.conf in SRCTOP To: =?UTF-8?Q?Dag=2DErling_Sm=C3=B8rgrav?= 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-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4cNgnm3QHqz3djb On Fri, Sep 12, 2025 at 5:59=E2=80=AFAM Dag-Erling Sm=C3=B8rgrav wrote: > > Kevin Bowling writes: > > This turned out to be surprising and led to a puzzle and potentially > > unbootable system. I had a very bare bones src.conf in the root from > > a long time ago for MIPS hacking, and it got used as my src.conf after > > this commit instead of /etc/src.conf. > > > > I think the order should probably be inverted for POLA, keeping > > /etc/src.conf as the primary. > > That would render the change meaningless. The point is to prefer a > local src.conf, if one exists, over a global one. This is particularly > useful on development machines, including FreeBSD's own cluster, where > multiple source trees exist and regularly get built. In hindsight, I > should probably have included an UPDATING entry. It's not too late. > DES > -- > Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org From nobody Fri Sep 12 17:17:23 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNh1v5XCBz67hXZ; Fri, 12 Sep 2025 17:17:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNh1v4pwGz3g3q; Fri, 12 Sep 2025 17:17:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757697443; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hC6/fZ4VHvnuV8eiyLUrF+rc5aDOtlsaGsPML5w9Pto=; b=sJoqBM/gJJaLunpAaWab8o05rKbHCCv5M2JjcGNg9k3l3jddClt/AnGYstcClqjpeyB3do RNiFpYzpxuVU26iIiv9KytLJB7XnoQvC4D58cYJ0tOlCg8p/XCaSBQ+5WIdjns5hMOOS+l XqiJUkk4ffYCLsuGzdZ19bUCegZv0yZUsuU9IPOc0QdWGF4PDfGSFqDPpLIC72Wj6Rq+Fd jDFOBxBJTtRePWXLWKivYCgd/RKOz+EFLUbYOwFuh9dp0cGBxkOPZdBARBiJtfzvdBlcsQ MZsYnQLwtSxFuZYCm76WRoy0zMPSiV0dsZ04RT/PwilTyf9X8iLvqRTk+Pvzcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757697443; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hC6/fZ4VHvnuV8eiyLUrF+rc5aDOtlsaGsPML5w9Pto=; b=orPc0buvZuEXJWKSJTNEzjuIgTZhWrSWxFGSii/tyunO+RIh/xH4EC0zopNiAK4kImnEND X4k1ybUp4Ur2U5oJTFAPP8Rhds4ObJvsC9Tk8PIfoTBQQMJJY2HhufGFrcdp9G9WYBZ5/7 VhcGggkzq5onp2dEiWIWbqkjyvi9XsUpvtmmqs8LrOPYv38zE5iTYS9BL1b0QeD8BiEj7L +KYaveH2p+ZCBNCr3Rhhvvq0jiFkMvgvMyt8U/WajsZATE6as5moA+D83wDuvMmarc7Rp+ hmCRutdI4TAufIn9NGWI48+1mt2cNlCFJeh0hKoqtmiaSHBNoD7vVFzJ5JFa+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757697443; a=rsa-sha256; cv=none; b=f8yC5QlhsOpXAE3AZVNBmp7wUWwg7QXQiUT3xpMwsBA31ifI09ai7ftg5P4sBujvJHLZBm nPvnDfWsQf8kUYy1PXZMV+TUyr19KqdowumdLU5eIw44waihUt2E/QcIvvFDR9aHO2Tgr/ iF5/EXRbfzsyDMp9fwcyaJ0CSjloXfsCrcdv3/vvpWzd4Y8IGV/lbHih1uHE+WWNO6CYFG ZHXMQUsJOVV45LB/cHljBAdcjllaIOiN8muQPBiI7vchzBjqLVlMm4DSf5+wQ0b4eWL1tp eDsqbEwhMudn+B/5kwSeeOv4ktbk+BjjWzl+rxyNzzc3j6ltI59G25/Zt5/qew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNh1v4QLdz12cn; Fri, 12 Sep 2025 17:17: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 58CHHNVi013416; Fri, 12 Sep 2025 17:17:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CHHNa0013413; Fri, 12 Sep 2025 17:17:23 GMT (envelope-from git) Date: Fri, 12 Sep 2025 17:17:23 GMT Message-Id: <202509121717.58CHHNa0013413@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: ab2fea3f9a5a - main - UPDATING: mention the src.conf change List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-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: ab2fea3f9a5a58f0ba90499ad3a8614e3dca0c5f Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ab2fea3f9a5a58f0ba90499ad3a8614e3dca0c5f commit ab2fea3f9a5a58f0ba90499ad3a8614e3dca0c5f Author: Dag-Erling Smørgrav AuthorDate: 2025-09-12 17:13:51 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-09-12 17:16:48 +0000 UPDATING: mention the src.conf change Fixes: dd8c666d8b78 ("src.sys.mk: Support src.conf in SRCTOP") --- UPDATING | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/UPDATING b/UPDATING index 51589f13e139..f36cfdd9997d 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250912: + If SRCCONF is unset and a file named src.conf is present at + the top of the source tree, it will now be used instead of + /etc/src.conf. + 20250907: The MANSPLITPKG knob has been turned off by default, so pkgbase builds will no longer generate "-man" subpackages; instead the manpages will From nobody Fri Sep 12 18:34:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNjlM2H4Jz62bfV; Fri, 12 Sep 2025 18:34:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNjlL6nK7z3wkp; Fri, 12 Sep 2025 18:34:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757702095; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9fdGT0MjhvvjCD03hYEqhnRHVVpyVoedfegddNIkIf0=; b=iRGITwM/GH/WaZ2juB2wimOCgtKROY76lQJ1Aqm3JVO4GqoOB9D9irniVBwbYC6i8AsU4/ KUe/3xJhjp+nHQAmwzq+/Ad8IaGj2KtFEuOwYONLQkdonjlDTrWCSQcmsuG0vAasMf3AT1 bvfi/s6sEUImrK+XlV4+ociqzFlvoG+njhHdK7BPR2ySOUrEsYVb+IocoY4si3HmvFSBAx 9WtU7Z/yzPUgy3lo80wFrxjfM0RLdeYCv4/eWGizXcx1GyLp0UBH3kCzlhElTLSWCQmxLq vLznuQdFPiDm0vCib4hcvQGZJR/qLKc+IyN4MhnG7Q7t5aBjZy7yaQjDaiL8XQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757702094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9fdGT0MjhvvjCD03hYEqhnRHVVpyVoedfegddNIkIf0=; b=Fr6nCxnikNIEmSqhqxLiqOazKdRsSJJtRw/KTjSMvYeGoIOipBFzJYVJDBQbP+COZmhGe7 9ifqp5MxuwwQstFH0tUoGbquAPBaZuqeRmxsbwbcFIXrOaFh82eaPXk+98/a7+pcFlTCb0 oem6kBtdFT0IA7R3j14r023rFVDij7OQmHnozQX9nYCbzYYyjuJD88228cingW99R4wRJO HJoY4qcYAYm6w1oJPW4vNtMToCcepHHcHpToCIwzs5qJXPhOHhqTKvPZ1dA/5DD2zOUy7o bBm3PO81qmZwPQ0ADv/GPZZiVgAAvjzNwS/aamWBZeCvvdRtQJ6kwOTf/PEjHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757702094; a=rsa-sha256; cv=none; b=MZJojhs3VnWP3w/uNc1UzzWTFaXW+hSDbhX1Nx+i2lRMECyFKq7pK84pQjFWN1mSdSea5T S3aZm/CvxjjYzteJ17sg31olgkk6WXv2UN4UK5uJ0cAYufOOnusdHr87t14NaZa4X/1bPq Yp69wZGHs9uIztR5Fkb+YtOtrOtKyMFtca/GPSAGA0U71iO9uLpnie1JD0aJM5hWb978/9 R058sWe9l0ZF3TyBgGEyu6Nor3S4EYvTND1z3g32FfRp+dxmm0ssUw84SKbpDQpxL5tA9P 42Tm1mk6dIrifPFhFkcf2MrCdXaGH8kK8uOtTDDfLREjVmbjOm+RVEWRlvyk0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNjlL614Vz1481; Fri, 12 Sep 2025 18:34: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 58CIYsIg062187; Fri, 12 Sep 2025 18:34:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CIYsig062184; Fri, 12 Sep 2025 18:34:54 GMT (envelope-from git) Date: Fri, 12 Sep 2025 18:34:54 GMT Message-Id: <202509121834.58CIYsig062184@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: 66d8ffe3046d - main - jaildesc: add kevent support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66d8ffe3046ded1eb3f78599c6af8eb965482ef5 Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=66d8ffe3046ded1eb3f78599c6af8eb965482ef5 commit 66d8ffe3046ded1eb3f78599c6af8eb965482ef5 Author: Jamie Gritton AuthorDate: 2025-09-12 18:33:19 +0000 Commit: Jamie Gritton CommitDate: 2025-09-12 18:33:19 +0000 jaildesc: add kevent support Give jail descriptors the same kevent flags as jails. Also fix the event reporting in jails, where it was including data for events the user didn't ask for. MFC after: 3 days --- lib/libsys/kqueue.2 | 15 +++++- sys/kern/kern_event.c | 18 ++++--- sys/kern/kern_jail.c | 1 + sys/kern/kern_jaildesc.c | 138 ++++++++++++++++++++++++++++++++++++++++++++++- sys/sys/event.h | 5 +- sys/sys/jaildesc.h | 4 ++ 6 files changed, 168 insertions(+), 13 deletions(-) diff --git a/lib/libsys/kqueue.2 b/lib/libsys/kqueue.2 index aafb5317c5e0..96c9b0222a37 100644 --- a/lib/libsys/kqueue.2 +++ b/lib/libsys/kqueue.2 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 11, 2025 +.Dd September 12, 2025 .Dt KQUEUE 2 .Os .Sh NAME @@ -638,6 +638,19 @@ or .Dv NOTE_JAIL_CHILD event has been received since the last call to .Fn kevent . +.It Dv EVFILT_JAILDESC +Takes a jail descriptor returned by +.Xr jail_set 2 +or +.Xr jail_get 2 +as the identifier and the events to watch for in +.Va fflags , +and returns when the jail performs one or more of the requested events. +The events to monitor and the resulting +.Va fflags +are the same as those listed in +.Dv EVFILT_JAIL , +above. .It Dv EVFILT_TIMER Establishes an arbitrary timer identified by .Va ident . diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index 59a69ccddb38..c14ec398cb0a 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -51,6 +51,7 @@ #include #include #include +#include #include #include #include @@ -376,6 +377,7 @@ static struct { [~EVFILT_SENDFILE] = { &null_filtops }, [~EVFILT_EMPTY] = { &file_filtops, 1 }, [~EVFILT_JAIL] = { &jail_filtops, 1 }, + [~EVFILT_JAILDESC] = { &file_filtops, 1 }, }; /* @@ -682,15 +684,15 @@ filt_jail(struct knote *kn, long hint) (u_int)hint & NOTE_JAIL_CTRLMASK; /* If the user is interested in this event, record it. */ - if (kn->kn_sfflags & event) + if (kn->kn_sfflags & event) { kn->kn_fflags |= event; - - /* Report the created jail id or attached process id. */ - if (event == NOTE_JAIL_CHILD || event == NOTE_JAIL_ATTACH) { - if (kn->kn_data != 0) - kn->kn_fflags |= NOTE_JAIL_MULTI; - kn->kn_data = (kn->kn_fflags & NOTE_JAIL_MULTI) ? 0U : - (u_int)hint & ~event; + /* Report the created jail id or attached process id. */ + if (event == NOTE_JAIL_CHILD || event == NOTE_JAIL_ATTACH) { + if (kn->kn_data != 0) + kn->kn_fflags |= NOTE_JAIL_MULTI; + kn->kn_data = (kn->kn_fflags & NOTE_JAIL_MULTI) ? 0U : + (u_int)hint & ~event; + } } /* Prison is gone, so flag the event as finished. */ diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index d90ccf4a04c8..43035dc009b3 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -5371,6 +5371,7 @@ prison_knote(struct prison *pr, long hint) if (!locked) mtx_lock(&pr->pr_mtx); KNOTE_LOCKED(pr->pr_klist, hint); + jaildesc_knote(pr, hint); if (!locked) mtx_unlock(&pr->pr_mtx); } diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index c9e80f5d8941..3f322b271400 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -46,6 +47,8 @@ MALLOC_DEFINE(M_JAILDESC, "jaildesc", "jail descriptors"); +static fo_poll_t jaildesc_poll; +static fo_kqfilter_t jaildesc_kqfilter; static fo_stat_t jaildesc_stat; static fo_close_t jaildesc_close; static fo_fill_kinfo_t jaildesc_fill_kinfo; @@ -56,8 +59,8 @@ static struct fileops jaildesc_ops = { .fo_write = invfo_rdwr, .fo_truncate = invfo_truncate, .fo_ioctl = invfo_ioctl, - .fo_poll = invfo_poll, - .fo_kqfilter = invfo_kqfilter, + .fo_poll = jaildesc_poll, + .fo_kqfilter = jaildesc_kqfilter, .fo_stat = jaildesc_stat, .fo_close = jaildesc_close, .fo_chmod = invfo_chmod, @@ -135,6 +138,7 @@ jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning) finit(fp, priv_check_cred(fp->f_cred, PRIV_JAIL_SET) == 0 ? FREAD | FWRITE : FREAD, DTYPE_JAILDESC, jd, &jaildesc_ops); JAILDESC_LOCK_INIT(jd); + knlist_init_mtx(&jd->jd_selinfo.si_note, &jd->jd_lock); if (owning) jd->jd_flags |= JDF_OWNING; *fpp = fp; @@ -176,6 +180,36 @@ jaildesc_prison_cleanup(struct prison *pr) } } +/* + * Pass a note to all listening kqueues. + */ +void +jaildesc_knote(struct prison *pr, long hint) +{ + struct jaildesc *jd; + int prison_locked; + + if (!LIST_EMPTY(&pr->pr_descs)) { + prison_locked = mtx_owned(&pr->pr_mtx); + if (!prison_locked) + prison_lock(pr); + LIST_FOREACH(jd, &pr->pr_descs, jd_list) { + JAILDESC_LOCK(jd); + if (hint == NOTE_JAIL_REMOVE) { + jd->jd_flags |= JDF_REMOVED; + if (jd->jd_flags & JDF_SELECTED) { + jd->jd_flags &= ~JDF_SELECTED; + selwakeup(&jd->jd_selinfo); + } + } + KNOTE_LOCKED(&jd->jd_selinfo.si_note, hint); + JAILDESC_UNLOCK(jd); + } + if (!prison_locked) + prison_unlock(pr); + } +} + static int jaildesc_close(struct file *fp, struct thread *td) { @@ -223,12 +257,112 @@ jaildesc_close(struct file *fp, struct thread *td) } prison_free(pr); } + knlist_destroy(&jd->jd_selinfo.si_note); JAILDESC_LOCK_DESTROY(jd); free(jd, M_JAILDESC); } return (0); } +static int +jaildesc_poll(struct file *fp, int events, struct ucred *active_cred, + struct thread *td) +{ + struct jaildesc *jd; + int revents; + + revents = 0; + jd = fp->f_data; + JAILDESC_LOCK(jd); + if (jd->jd_flags & JDF_REMOVED) + revents |= POLLHUP; + if (revents == 0) { + selrecord(td, &jd->jd_selinfo); + jd->jd_flags |= JDF_SELECTED; + } + JAILDESC_UNLOCK(jd); + return (revents); +} + +static void +jaildesc_kqops_detach(struct knote *kn) +{ + struct jaildesc *jd; + + jd = kn->kn_fp->f_data; + knlist_remove(&jd->jd_selinfo.si_note, kn, 0); +} + +static int +jaildesc_kqops_event(struct knote *kn, long hint) +{ + struct jaildesc *jd; + u_int event; + + jd = kn->kn_fp->f_data; + if (hint == 0) { + /* + * Initial test after registration. Generate a + * NOTE_JAIL_REMOVE in case the prison already died + * before registration. + */ + event = jd->jd_flags & JDF_REMOVED ? NOTE_JAIL_REMOVE : 0; + } else { + /* + * Mask off extra data. In the NOTE_JAIL_CHILD case, + * that's everything except the NOTE_JAIL_CHILD bit + * itself, since a JID is any positive integer. + */ + event = ((u_int)hint & NOTE_JAIL_CHILD) ? NOTE_JAIL_CHILD : + (u_int)hint & NOTE_JAIL_CTRLMASK; + } + + /* If the user is interested in this event, record it. */ + if (kn->kn_sfflags & event) { + kn->kn_fflags |= event; + /* Report the created jail id or attached process id. */ + if (event == NOTE_JAIL_CHILD || event == NOTE_JAIL_ATTACH) { + if (kn->kn_data != 0) + kn->kn_fflags |= NOTE_JAIL_MULTI; + kn->kn_data = (kn->kn_fflags & NOTE_JAIL_MULTI) ? 0U : + (u_int)hint & ~event; + } + } + + /* Prison is gone, so flag the event as finished. */ + if (event == NOTE_JAIL_REMOVE) { + kn->kn_flags |= EV_EOF | EV_ONESHOT; + if (kn->kn_fflags == 0) + kn->kn_flags |= EV_DROP; + return (1); + } + + return (kn->kn_fflags != 0); +} + +static const struct filterops jaildesc_kqops = { + .f_isfd = 1, + .f_detach = jaildesc_kqops_detach, + .f_event = jaildesc_kqops_event, +}; + +static int +jaildesc_kqfilter(struct file *fp, struct knote *kn) +{ + struct jaildesc *jd; + + jd = fp->f_data; + switch (kn->kn_filter) { + case EVFILT_JAILDESC: + kn->kn_fop = &jaildesc_kqops; + kn->kn_flags |= EV_CLEAR; + knlist_add(&jd->jd_selinfo.si_note, kn, 0); + return (0); + default: + return (EINVAL); + } +} + static int jaildesc_stat(struct file *fp, struct stat *sb, struct ucred *active_cred) { diff --git a/sys/sys/event.h b/sys/sys/event.h index 91fbaa4834f7..084eaafcbdc0 100644 --- a/sys/sys/event.h +++ b/sys/sys/event.h @@ -46,7 +46,8 @@ #define EVFILT_SENDFILE (-12) /* attached to sendfile requests */ #define EVFILT_EMPTY (-13) /* empty send socket buf */ #define EVFILT_JAIL (-14) /* attached to struct prison */ -#define EVFILT_SYSCOUNT 14 +#define EVFILT_JAILDESC (-15) /* attached to jail descriptors */ +#define EVFILT_SYSCOUNT 15 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L #define EV_SET(kevp_, a, b, c, d, e, f) do { \ @@ -210,7 +211,7 @@ struct freebsd11_kevent32 { #define NOTE_TRACKERR 0x00000002 /* could not track child */ #define NOTE_CHILD 0x00000004 /* am a child process */ -/* data/hint flags for EVFILT_JAIL */ +/* data/hint flags for EVFILT_JAIL and EVFILT_JAILDESC */ #define NOTE_JAIL_CHILD 0x80000000 /* child jail was created */ #define NOTE_JAIL_SET 0x40000000 /* jail was modified */ #define NOTE_JAIL_ATTACH 0x20000000 /* jail was attached to */ diff --git a/sys/sys/jaildesc.h b/sys/sys/jaildesc.h index 2451b04f7302..fda270d62e70 100644 --- a/sys/sys/jaildesc.h +++ b/sys/sys/jaildesc.h @@ -35,6 +35,7 @@ #ifdef _KERNEL #include +#include #include #include #include @@ -54,6 +55,7 @@ struct jaildesc { LIST_ENTRY(jaildesc) jd_list; /* (d,p) this prison's descs */ struct prison *jd_prison; /* (d) the prison */ struct mtx jd_lock; + struct selinfo jd_selinfo; /* (d) event notification */ unsigned jd_flags; /* (d) JDF_* flags */ }; @@ -69,6 +71,7 @@ struct jaildesc { /* * Flags for the jd_flags field */ +#define JDF_SELECTED 0x00000001 /* issue selwakeup() */ #define JDF_REMOVED 0x00000002 /* jail was removed */ #define JDF_OWNING 0x00000004 /* closing descriptor removes jail */ @@ -77,6 +80,7 @@ int jaildesc_find(struct thread *td, int fd, struct prison **prp, int jaildesc_alloc(struct thread *td, struct file **fpp, int *fdp, int owning); void jaildesc_set_prison(struct file *jd, struct prison *pr); void jaildesc_prison_cleanup(struct prison *pr); +void jaildesc_knote(struct prison *pr, long hint); #endif /* _KERNEL */ From nobody Fri Sep 12 21:04:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4cNn4P39lBz66W45; Fri, 12 Sep 2025 21:04:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cNn4P2ds5z3WPJ; Fri, 12 Sep 2025 21:04:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757711093; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e3H5kgN1OIwslvVuffIlcgWO+D6XVzpLxkJI9Y8PZsk=; b=PK+kdJ9n8eUtfqPQOuXAJ0Z20wpOnL9jl7pk45LXbTHs0r789e9meWt/XSu52LJgTkeKo/ RzFFXmKryFTwhy1ns0Qh45AeU3UnvLJGGzKkdQ3CE+L00USECS3wcWGIXinneGRaw79E0w bv2zOH18UY69+xqGCsDbDeLssLatlKcKnQNqycBV9vaB4aTw2pLeQ8GowSuRiEdnRfamGN M/vKxaO/kB5QgXSWM++v7XQB0Ukhvnr795lmGQ0d+8sp+af8mUHaTl9W+Ct8oSKan0dFQl dxKlrK1ggGUB2gCXcQlPugcK/dkpIWtJELgPOyjZSV9GwofPNHnZU7imo7X54w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757711093; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e3H5kgN1OIwslvVuffIlcgWO+D6XVzpLxkJI9Y8PZsk=; b=KrUo46qJHZoop1D119qcVaGDtUoHF/1PJt2gdrVLOcPA1GPjeamcfdWFYQyVBwsHLhvWiq e7yMJRQ8o47LQy5jBRbSXYtVNy84F9X0RvAxRXs7E79C9/F8FAJ6/ay5I9p/qyewLuaU+I hpVIwINvsaPE3Pdz1K37LhbVdlKfU0h8g3h30QfAUENHntHm/XAUTIJ18Z8Tk8eUOJ9NYi igqV2cekIXc69KXGFhOtc82aJRDieqX7SoVpoW6BlrUHN698t9pLH2hao7qEn9k0klTbCe 8Bh7A9g9VCwskpcpj9Ts7vV535mGf1h1g3b8LOsl3UNEXUJoQ13CnDXyZOthNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757711093; a=rsa-sha256; cv=none; b=VucK7u2ReYEgXE75r5VCsBSdwA+VeZ4TtyI9OhmQggHERANjPvMIQj13gw/PkCV64xQ1Rq NVLYxNbAQjpa/S/6ahE1UrzrWagea8ifqVBdeXi8OErdrsUIEqM1xtbFBgd0pHF15nUUXu vj6JGUO8zxLFI10soABDAxK8L/y4PSLCowJuEuN3zVuC4OeQS+EcVUx2qr5wJJWKkdGDXr 109/AnkFkOuXCjPuq0Ks4PUwWZzyuuxOzG+GGOW8fcygLGFKBleEgmby1QFhNStS1mbzjd AMhpn+qM35E0+tPw5Oc45/OWwlVU/cuS47SyChr8r+sGefJg4TGd3QKizrJdqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cNn4P24wyz18CV; Fri, 12 Sep 2025 21:04: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 58CL4rH5045234; Fri, 12 Sep 2025 21:04:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 58CL4rdP045231; Fri, 12 Sep 2025 21:04:53 GMT (envelope-from git) Date: Fri, 12 Sep 2025 21:04:53 GMT Message-Id: <202509122104.58CL4rdP045231@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 29185c9a2620 - main - packages: Use LIB_PACKAGE for zfs and ufs packages List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 29185c9a26204383270cf96957c685c51f5bc894 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=29185c9a26204383270cf96957c685c51f5bc894 commit 29185c9a26204383270cf96957c685c51f5bc894 Author: Lexi Winter AuthorDate: 2025-09-11 19:46:26 +0000 Commit: Lexi Winter CommitDate: 2025-09-12 20:56:51 +0000 packages: Use LIB_PACKAGE for zfs and ufs packages Commit f9513c334ff7 moved the shared libraries for ZFS and UFS into separate packages (libzfs and libufs), which resulted in a rather large number of packages being created, e.g. for ZFS: FreeBSD-libzfs FreeBSD-libzfs-dbg FreeBSD-libzfs-dbg-lib32 FreeBSD-libzfs-dev FreeBSD-libzfs-dev-lib32 FreeBSD-libzfs-lib32 FreeBSD-zfs FreeBSD-zfs-dbg FreeBSD-zfs-dbg-lib32 FreeBSD-zfs-dev FreeBSD-zfs-dev-lib32 FreeBSD-zfs-lib32 FreeBSD-zfs-man Use LIB_PACKAGE instead, which significantly reduces the number of packages: FreeBSD-zfs FreeBSD-zfs-dbg FreeBSD-zfs-dbg-lib32 FreeBSD-zfs-dev FreeBSD-zfs-dev-lib32 FreeBSD-zfs-lib FreeBSD-zfs-lib32 FreeBSD-zfs-man MFC after: 3 days Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52416 --- cddl/lib/libavl/Makefile | 4 +++- cddl/lib/libicp/Makefile | 2 ++ cddl/lib/libnvpair/Makefile | 4 +++- cddl/lib/libspl/Makefile | 4 +++- cddl/lib/libtpool/Makefile | 7 ++++--- cddl/lib/libumem/Makefile | 4 +++- cddl/lib/libuutil/Makefile | 4 +++- cddl/lib/libzdb/Makefile | 4 +++- cddl/lib/libzfs/Makefile | 4 +++- cddl/lib/libzfs_core/Makefile | 3 ++- cddl/lib/libzfsbootenv/Makefile | 2 ++ cddl/lib/libzpool/Makefile | 2 ++ cddl/lib/libzutil/Makefile | 4 +++- lib/libbe/Makefile | 1 + lib/libufs/Makefile | 4 +++- release/packages/ucl/libufs-all.ucl | 8 -------- release/packages/ucl/libzfs-all.ucl | 5 ----- 17 files changed, 40 insertions(+), 26 deletions(-) diff --git a/cddl/lib/libavl/Makefile b/cddl/lib/libavl/Makefile index ce77012def9f..4ce1de20a3d9 100644 --- a/cddl/lib/libavl/Makefile +++ b/cddl/lib/libavl/Makefile @@ -1,6 +1,8 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/module/avl -PACKAGE= libzfs +PACKAGE= zfs +LIB_PACKAGE= + LIB= avl LIBADD= spl SRCS= avl.c diff --git a/cddl/lib/libicp/Makefile b/cddl/lib/libicp/Makefile index 8e801246215f..1a9a79103b50 100644 --- a/cddl/lib/libicp/Makefile +++ b/cddl/lib/libicp/Makefile @@ -1,6 +1,8 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/module/icp PACKAGE= zfs +LIB_PACKAGE= + LIB= icp LIBADD= diff --git a/cddl/lib/libnvpair/Makefile b/cddl/lib/libnvpair/Makefile index 2d9ef1c7af1e..8245b324688b 100644 --- a/cddl/lib/libnvpair/Makefile +++ b/cddl/lib/libnvpair/Makefile @@ -2,10 +2,12 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libnvpair .PATH: ${SRCTOP}/sys/contrib/openzfs/include +PACKAGE= zfs +LIB_PACKAGE= + LIB= nvpair LIBADD= spl -PACKAGE= libzfs # user INCS= libnvpair.h SRCS= libnvpair.c \ diff --git a/cddl/lib/libspl/Makefile b/cddl/lib/libspl/Makefile index d8d997c6f377..26e14ea72b8a 100644 --- a/cddl/lib/libspl/Makefile +++ b/cddl/lib/libspl/Makefile @@ -4,9 +4,11 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libspl .PATH: ${SRCTOP}/sys/contrib/openzfs/include +PACKAGE= zfs +LIB_PACKAGE= + LIB= spl LIBADD= -PACKAGE= libzfs SRCS = \ assert.c \ diff --git a/cddl/lib/libtpool/Makefile b/cddl/lib/libtpool/Makefile index 7acf34219a47..3a50a21bf62c 100644 --- a/cddl/lib/libtpool/Makefile +++ b/cddl/lib/libtpool/Makefile @@ -1,11 +1,12 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libtpool .PATH: ${SRCTOP}/sys/contrib/openzfs/include +PACKAGE= zfs +LIB_PACKAGE= -LIB= tpool +LIB= tpool SHLIBDIR?= /lib -LIBADD= spl -PACKAGE= libzfs +LIBADD= spl INCS= thread_pool_impl.h SRCS= thread_pool.c diff --git a/cddl/lib/libumem/Makefile b/cddl/lib/libumem/Makefile index 9164ba771fe6..512332275fec 100644 --- a/cddl/lib/libumem/Makefile +++ b/cddl/lib/libumem/Makefile @@ -1,6 +1,8 @@ .PATH: ${SRCTOP}/cddl/compat/opensolaris/lib/libumem -PACKAGE= libzfs +PACKAGE= zfs +LIB_PACKAGE= + LIB= umem SRCS= umem.c WARNS?= 3 diff --git a/cddl/lib/libuutil/Makefile b/cddl/lib/libuutil/Makefile index 8c8a786ee039..947e755d4aae 100644 --- a/cddl/lib/libuutil/Makefile +++ b/cddl/lib/libuutil/Makefile @@ -1,6 +1,8 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libuutil -PACKAGE= libzfs +PACKAGE= zfs +LIB_PACKAGE= + LIB= uutil SRCS=\ uu_alloc.c \ diff --git a/cddl/lib/libzdb/Makefile b/cddl/lib/libzdb/Makefile index 0eb30c55d107..040d7d2c63f9 100644 --- a/cddl/lib/libzdb/Makefile +++ b/cddl/lib/libzdb/Makefile @@ -1,8 +1,10 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzdb .PATH: ${SRCTOP}/sys/contrib/openzfs/include -LIB= zdb PACKAGE= zfs +LIB_PACKAGE= + +LIB= zdb INCS = libzdb.h diff --git a/cddl/lib/libzfs/Makefile b/cddl/lib/libzfs/Makefile index 40553aa68719..376e32fb893f 100644 --- a/cddl/lib/libzfs/Makefile +++ b/cddl/lib/libzfs/Makefile @@ -7,7 +7,9 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd .PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd/lib -PACKAGE= libzfs +PACKAGE= zfs +LIB_PACKAGE= + LIB= zfs LIBADD= \ avl \ diff --git a/cddl/lib/libzfs_core/Makefile b/cddl/lib/libzfs_core/Makefile index bac81ca73497..10533c5de05b 100644 --- a/cddl/lib/libzfs_core/Makefile +++ b/cddl/lib/libzfs_core/Makefile @@ -3,10 +3,11 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/zfs .PATH: ${SRCTOP}/sys/contrib/openzfs/module/os/freebsd/zfs +PACKAGE= zfs +LIB_PACKAGE= LIB= zfs_core LIBADD= nvpair spl zutil -PACKAGE= libzfs INCS= libzfs_core.h SRCS= libzfs_core.c \ diff --git a/cddl/lib/libzfsbootenv/Makefile b/cddl/lib/libzfsbootenv/Makefile index 15ee5bfaeaa4..22f5da1ee5b1 100644 --- a/cddl/lib/libzfsbootenv/Makefile +++ b/cddl/lib/libzfsbootenv/Makefile @@ -2,6 +2,8 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/include PACKAGE= zfs +LIB_PACKAGE= + LIB= zfsbootenv SHLIB_MAJOR= 1 diff --git a/cddl/lib/libzpool/Makefile b/cddl/lib/libzpool/Makefile index 4da3840e59f0..82ec0e890d56 100644 --- a/cddl/lib/libzpool/Makefile +++ b/cddl/lib/libzpool/Makefile @@ -29,6 +29,8 @@ PICFLAG= -fPIC .endif PACKAGE= zfs +LIB_PACKAGE= + LIB= zpool USER_C = \ diff --git a/cddl/lib/libzutil/Makefile b/cddl/lib/libzutil/Makefile index 07ca3b9bc156..37e9e8dd5e63 100644 --- a/cddl/lib/libzutil/Makefile +++ b/cddl/lib/libzutil/Makefile @@ -2,9 +2,11 @@ .PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzutil/os/freebsd .PATH: ${SRCTOP}/sys/contrib/openzfs/module/os/freebsd/zfs +PACKAGE= zfs +LIB_PACKAGE= + LIB= zutil LIBADD= avl geom m tpool -PACKAGE= libzfs INCS = zutil_import.h diff --git a/lib/libbe/Makefile b/lib/libbe/Makefile index b04becc38d74..3ba456aee4b7 100644 --- a/lib/libbe/Makefile +++ b/lib/libbe/Makefile @@ -3,6 +3,7 @@ SHLIBDIR?= /lib .include PACKAGE= zfs +LIB_PACKAGE= LIB= be SHLIB_MAJOR= 1 SHLIB_MINOR= 0 diff --git a/lib/libufs/Makefile b/lib/libufs/Makefile index ab913f834bb3..3b1911d7a5cd 100644 --- a/lib/libufs/Makefile +++ b/lib/libufs/Makefile @@ -1,4 +1,6 @@ -PACKAGE= libufs +PACKAGE= ufs +LIB_PACKAGE= + LIB= ufs SHLIBDIR?= /lib SHLIB_MAJOR= 8 diff --git a/release/packages/ucl/libufs-all.ucl b/release/packages/ucl/libufs-all.ucl deleted file mode 100644 index d86a84bbd637..000000000000 --- a/release/packages/ucl/libufs-all.ucl +++ /dev/null @@ -1,8 +0,0 @@ -comment = "Low-level access to UFS filesystems" -desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 163f8625c4df - main - packages: Add correct license for zoneinfo List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 163f8625c4df3ccdfab0717cf8b8d13a163e22eb Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=163f8625c4df3ccdfab0717cf8b8d13a163e22eb commit 163f8625c4df3ccdfab0717cf8b8d13a163e22eb Author: Lexi Winter AuthorDate: 2025-09-11 19:49:09 +0000 Commit: Lexi Winter CommitDate: 2025-09-12 20:56:51 +0000 packages: Add correct license for zoneinfo Source: contrib/tzdata/LICENSE MFC after: 3 days Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D51886 --- release/packages/ucl/zoneinfo-all.ucl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/release/packages/ucl/zoneinfo-all.ucl b/release/packages/ucl/zoneinfo-all.ucl index 39991bf144e6..ed737c740bee 100644 --- a/release/packages/ucl/zoneinfo-all.ucl +++ b/release/packages/ucl/zoneinfo-all.ucl @@ -1,5 +1,8 @@ comment = "Timezone database" + desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Lexi Winter Subject: git: 66f36c368676 - main - packages: Add meta-package sets List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ivy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66f36c3686762d9a6e48b0453fc7221be36a0eb8 Auto-Submitted: auto-generated The branch main has been updated by ivy: URL: https://cgit.FreeBSD.org/src/commit/?id=66f36c3686762d9a6e48b0453fc7221be36a0eb8 commit 66f36c3686762d9a6e48b0453fc7221be36a0eb8 Author: Lexi Winter AuthorDate: 2025-09-12 20:59:25 +0000 Commit: Lexi Winter CommitDate: 2025-09-12 20:59:25 +0000 packages: Add meta-package sets Add several metapackages which contain no files themselves, but depend on other packages. This allows the user to install a system by using a set like "FreeBSD-set-minimal" instead of having to know which specific packages are required, and it means if we add more package in the future, existing installations will get them automatically as long as they were installed using a set. The defined sets are significantly less granular than the actual packages; the assumption is that users who want a very specific set of packages installed can do that manually, while sets are intended more for typical users who just want to install FreeBSD. The following sets are defined: * minimal: the set of packages required to boot the system and bring up a multi-user UNIX system. This includes hardware support, networking (wireless, DHCP), basic functionality like syslogd, cron and periodic. It does not include a kernel, because the kernels are quite large and the user might want to use a custom kernel. sendmail and DMA are not included in minimal. Since we provide two MTAs, the user should select which one they want, or install one from ports. sshd is not included because it's not required for the base system, and the user might want to install it from ports. Some other significant subsystems (e.g. NFS, Kerberos) are also not included. The minimal set does not include any libraries itself, since we rely on dependencies to pull these in. This implies it doesn't include library manpages, which is fine, since users won't want manpages for libraries unless they've also installed the development packages. * devel: the compiler toolchain for building software, along with all "-dev" packages which include header files and static libraries. * lib32: 32-bit compatibility packages. This includes both runtime and development packages. * kernels: the kernel packages. For freebsd.org builds, this will be GENERIC, GENERIC-DEBUG, etc., for custom builds it will be whatever was set in $KERNCONF. * base: everything else; this includes the entire base system. For each set, also generate a -dbg set containing the debug packages for the set. The sets are built along with the rest of the packages using a new script called create-sets.sh, which examines the "set" annotation in each package and puts it in the appropriate set. This is in anticipation of the later "groups" feature appearing in pkg itself, at which point we can simply replace the set annotation with the group. MFC after: 3 days Reviewed by: imp, bapt Differential Revision: https://reviews.freebsd.org/D52412 --- Makefile.inc1 | 30 +++++++++- release/packages/create-sets.sh | 45 ++++++++++++++ release/packages/generate-set-ucl.lua | 96 ++++++++++++++++++++++++++++++ release/packages/generate-ucl.lua | 34 +++++++++++ release/packages/set-template.ucl | 15 +++++ release/packages/sets/base-dbg.ucl | 16 +++++ release/packages/sets/base.ucl | 16 +++++ release/packages/sets/devel-dbg.ucl | 13 ++++ release/packages/sets/devel.ucl | 13 ++++ release/packages/sets/kernels-dbg.ucl | 6 ++ release/packages/sets/kernels.ucl | 6 ++ release/packages/sets/lib32-dbg.ucl | 6 ++ release/packages/sets/lib32.ucl | 6 ++ release/packages/sets/minimal-dbg.ucl | 6 ++ release/packages/sets/minimal.ucl | 6 ++ release/packages/template.ucl | 33 +++++++--- release/packages/ucl/README | 21 +++++++ release/packages/ucl/at-all.ucl | 4 ++ release/packages/ucl/bmake-all.ucl | 5 ++ release/packages/ucl/bootloader-all.ucl | 4 ++ release/packages/ucl/caroot-all.ucl | 4 ++ release/packages/ucl/certctl-all.ucl | 4 ++ release/packages/ucl/clang-all.ucl | 4 ++ release/packages/ucl/clibs-all.ucl | 5 ++ release/packages/ucl/cron-all.ucl | 4 ++ release/packages/ucl/ctf-tools-all.ucl | 5 ++ release/packages/ucl/devd-all.ucl | 5 ++ release/packages/ucl/devmatch-all.ucl | 11 +++- release/packages/ucl/dhclient-all.ucl | 5 ++ release/packages/ucl/dtb-all.ucl | 5 ++ release/packages/ucl/fetch-all.ucl | 10 +++- release/packages/ucl/firmware-iwm-all.ucl | 10 +++- release/packages/ucl/fwget-all.ucl | 10 +++- release/packages/ucl/geom-all.ucl | 11 +++- release/packages/ucl/hyperv-tools-all.ucl | 10 +++- release/packages/ucl/inetd-all.ucl | 9 ++- release/packages/ucl/kernel-all.ucl | 5 ++ release/packages/ucl/lld-all.ucl | 4 ++ release/packages/ucl/lldb-all.ucl | 4 ++ release/packages/ucl/locales-all.ucl | 5 ++ release/packages/ucl/mtree-all.ucl | 5 ++ release/packages/ucl/newsyslog-all.ucl | 10 +++- release/packages/ucl/nuageinit-all.ucl | 5 ++ release/packages/ucl/periodic-all.ucl | 11 +++- release/packages/ucl/pkg-bootstrap-all.ucl | 11 +++- release/packages/ucl/ppp-all.ucl | 5 ++ release/packages/ucl/rc-all.ucl | 11 +++- release/packages/ucl/rdma-all.ucl | 3 + release/packages/ucl/rescue-all.ucl | 11 +++- release/packages/ucl/resolvconf-all.ucl | 11 +++- release/packages/ucl/runtime-all.ucl | 10 +++- release/packages/ucl/runtime.ucl | 1 + release/packages/ucl/syslogd-all.ucl | 10 +++- release/packages/ucl/toolchain-all.ucl | 5 ++ release/packages/ucl/ufs-all.ucl | 5 ++ release/packages/ucl/utilities-all.ucl | 5 ++ release/packages/ucl/vi-all.ucl | 10 +++- release/packages/ucl/vt-data-all.ucl | 5 ++ release/packages/ucl/wpa-all.ucl | 5 ++ release/packages/ucl/zfs-all.ucl | 5 ++ release/packages/ucl/zoneinfo-all.ucl | 4 ++ 61 files changed, 619 insertions(+), 40 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 98059640daab..97a0b00cc517 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2097,6 +2097,14 @@ create-packages-world: _pkgbootstrap _repodir .PHONY DESTDIR=${WSTAGEDIR} \ PKG_VERSION=${PKG_VERSION} create-world-packages +.ORDER: create-packages-world create-packages-sets +.ORDER: create-packages-kernel create-packages-sets +create-packages-sets: _pkgbootstrap _repodir .PHONY + ${_+_}@cd ${.CURDIR}; \ + ${MAKE} -f Makefile.inc1 \ + DESTDIR=${WSTAGEDIR} \ + PKG_VERSION=${PKG_VERSION} create-sets-packages + create-packages-kernel: _pkgbootstrap _repodir .PHONY ${_+_}@cd ${.CURDIR}; \ ${MAKE} -f Makefile.inc1 \ @@ -2109,6 +2117,8 @@ create-packages-kernel-repo: .PHONY create-packages-kernel sign-packages create-packages-world-repo: .PHONY create-packages-world sign-packages +create-packages-sets-repo: .PHONY create-packages-sets sign-packages + create-packages-source: _pkgbootstrap _repodir .PHONY ${_+_}@cd ${.CURDIR}; \ ${MAKE} -f Makefile.inc1 \ @@ -2117,7 +2127,7 @@ create-packages-source: _pkgbootstrap _repodir .PHONY SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \ create-source-packages -create-packages: .PHONY create-packages-world create-packages-kernel create-packages-source +create-packages: .PHONY create-packages-world create-packages-kernel create-packages-source create-packages-sets create-source-src-package: _pkgbootstrap .PHONY rm -f ${SSTAGEDIR}/src.plist 2>/dev/null || : @@ -2214,6 +2224,24 @@ create-world-package-${pkgname}: .PHONY -o ${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR} .endfor +create-sets-packages-jobs: .PHONY create-sets-packages +create-sets-packages: .PHONY + @echo "==> Creating set metapackages." + sh "${SRCDIR}/release/packages/create-sets.sh" "${SRCDIR}" \ + "${WSTAGEDIR}" "${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}" \ + VERSION "${PKG_VERSION}" \ + PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \ + PKG_MAINTAINER "${PKG_MAINTAINER}" \ + PKG_WWW "${PKG_WWW}" + @for manifest in ${WSTAGEDIR}/set-*.ucl; do \ + echo "--> Processing manifest: $$manifest"; \ + ${PKG_CMD} -o ABI=${PKG_ABI} -o OSVERSION="${SRCRELDATE}" \ + create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ + -M $$manifest \ + -o "${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}" \ + || exit 1; \ + done + _default_flavor= -default .if make(*package*) && exists(${KSTAGEDIR}/kernel.meta) . if ${MK_DEBUG_FILES} != "no" diff --git a/release/packages/create-sets.sh b/release/packages/create-sets.sh new file mode 100755 index 000000000000..6c034834672e --- /dev/null +++ b/release/packages/create-sets.sh @@ -0,0 +1,45 @@ +#! /bin/sh + +# Generate metapackage sets. We do this by examining the annotations field +# of the packages we previously built. + +set -e + +if [ $# -lt 3 ]; then + printf >&2 'usage: %s \n' "$0" + exit 1 +fi + +srcdir="$1"; shift +wstagedir="$1"; shift +repodir="$1"; shift +# Everything after the first three arguments is UCL variables we pass to +# generate-set-ucl.lua. +UCL_VARS="$@" + +for pkg in "$repodir"/*.pkg; do + # If the package name doesn't containing a '-', then it's + # probably data.pkg or packagesite.pkg, which are not real + # packages. + { echo "$pkg" | grep -q '-'; } || continue + + set -- $(pkg query -F "$pkg" '%At %n %Av' | grep '^set ') + pkgname="$2" + set="$3" + SETS="$SETS $set" + setvar="$(echo "$set" | tr - _)" + eval PKGS_${setvar}=\"\$PKGS_${setvar} $pkgname\" +done + +for set in $(echo $SETS | tr ' ' '\n' | sort | uniq); do + setvar="$(echo "$set" | tr - _)" + eval deps=\"\$PKGS_${setvar}\" + + "${srcdir}/release/packages/generate-set-ucl.lua" \ + "${srcdir}/release/packages/set-template.ucl" \ + PKGNAME "$set" \ + SET_DEPENDS "$deps" \ + UCLFILES "${srcdir}/release/packages/sets" \ + $UCL_VARS \ + > "${wstagedir}/set-${set}.ucl" +done diff --git a/release/packages/generate-set-ucl.lua b/release/packages/generate-set-ucl.lua new file mode 100755 index 000000000000..b1b70053b02a --- /dev/null +++ b/release/packages/generate-set-ucl.lua @@ -0,0 +1,96 @@ +#!/usr/libexec/flua + +--[[ usage: +generare-set-ucl.lua