From nobody Mon Oct 21 02:52:34 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0GV5Fgvz5b63j; Mon, 21 Oct 2024 02:52:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0GV4JsXz435K; Mon, 21 Oct 2024 02:52:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sUvyKNgopXx+f7xM1gVhGeowL9LdgmnsiMgj8MbENS8=; b=SzxE/ax031EhAnhw/gGSAUv+IwiTpl37y8Kkj/5uUzD2T6RP3siw6ZMB8T3SUA6nUsGmuP zUxg56gldt+MK+wQ2/VSOnOGiSUwRotNchFmrMPuP9ZIRjWVkojKhpfacMv8vVgszW4oGL 0v/6Hm9v85oNmOyOG5Fig2ZwVBR88WPKi4piKKjb20sOi7b2n9uZidNQ1eSw5H1mEsZF/D r6+pdfpHueeF8kUy33F3sqnqsJ1aMu8Js/I3NtjYGuoksKZJq2uik8C4lkiYErDQ9BL3/6 BYU+wJmg3bm5dtiRQsplwuWiVZ8PdOZgIhyHAU0/ahEOp+UaibCFnmCGOIVdVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sUvyKNgopXx+f7xM1gVhGeowL9LdgmnsiMgj8MbENS8=; b=sJNdI7MJMkRyk6HaseGaARK4x6taGSez71K46tpHlHhvHrTA0Wvg/bUy2gVQmOweiakHXD p77JgpR9XUQDI7MkbMhnHdkdZisJddgEcJvC/GXy6gFP6Fn1v1l/Xfw4Yiu8vcwGpgi0Hs JZDZM29FCW2Sly1IUb+aJ/k9VuEU3p4IyHLM8Hmm+5C2QzlAa18zumGwmAMTBTo4vf0PXH /7yOmM2ZpHrU3RjeDisffcD8A6U8WCDJggQ9TSGZ59zJZH0E/bqAJX1rb55bpjojCu9A6h eHJFLP41vCDt826KNJh92cOmZT1aZwkO2OYshiTIAQn0Po71bq2dYVXRnqmJ+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479154; a=rsa-sha256; cv=none; b=Rjnt33uqNKt93SNX3mBIUkr78c16IZYB6oyNwbDyEwBRIwSR3NUeOCOvfpYQOgKsPQOzaf YdrmV5csUt3GH3MocDs02oGVJGuHy8H2bMqBDWBzPi5FTl/U8VjkmVXUqt7ULavDKZRs+L sZpgMFnJOyvzR9wYa9a2Km31axuIAMsh2NrgB9/WSH6TzrYj52/2MOXjOxIqZIoZrDIn+w 6xP1rK/th06iv3eFUK8dtUfTLcA4X69dsQSd4ZrSSvX3pAqcoIbkWYzr8mInno6/TJO2o+ RFFlKwlRCtF2IdK0CMlXbjvfUKz1gNOryrfeyLMDu98uBpDI8hjTdVEd9DznGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0GV3wLkz1RwX; Mon, 21 Oct 2024 02:52: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 49L2qY1u083727; Mon, 21 Oct 2024 02:52:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2qYnl083724; Mon, 21 Oct 2024 02:52:34 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:34 GMT Message-Id: <202410210252.49L2qYnl083724@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: 8e2e9e01131e - stable/14 - bsd-family-tree: shorter URL for FreeBSD manual pages List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8e2e9e01131e16c386ce9565eb60da2c1d66fe24 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=8e2e9e01131e16c386ce9565eb60da2c1d66fe24 commit 8e2e9e01131e16c386ce9565eb60da2c1d66fe24 Author: Wolfram Schneider AuthorDate: 2024-08-19 19:32:51 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:47:16 +0000 bsd-family-tree: shorter URL for FreeBSD manual pages (cherry picked from commit 2a916499470ae35178ca218e68175478037c3b0a) --- share/misc/bsd-family-tree | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index a664be3161a5..7823a2727626 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -934,8 +934,8 @@ Die freien BSD-Varianten von Unix. c't April 1997, page 368ff. BSD Release Announcements collection. URL: https://www.FreeBSD.org/releases/ -BSD Hypertext Man Pages -URL: https://www.FreeBSD.org/cgi/man.cgi +Manual pages for FreeBSD and ports +URL: https://man.FreeBSD.org UNIX history graphing project URL: https://minnie.tuhs.org/Unix_History/index.html From nobody Mon Oct 21 02:52:35 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0GX06h4z5b5jL; Mon, 21 Oct 2024 02:52:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0GW547yz43K7; Mon, 21 Oct 2024 02:52:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MRYVJ0Skf/WlWYLqRtjwxnp7Dk/v2LBZLgmjDsFspNM=; b=CS1SDlrD7y+EnAIN9ohX55hO4oyV+Pyayl9Tw8BUoz8l3AAgeVWpYXrj4tk+XSRZZ7PrFA IjTEmM2Asr8DeCgRX72LFP0PmlHVj44sco/RVkSoTWkCV5sBfOup2yAzKoib9nY4ao0Qm8 51VAnX4ghLRE+dw5JgPtvuHThzoNGfgvYcYbAOkP9DJix3k84Xn0F2+cuL7dbuVmSTtWsE JuEAbwZ30vSdkditNWMmixmPzh6o9DgecH7tOhHIUN5mzTRmXUH4Wy8yOr5+RTJGfhk+Xo 2n5Sd7O0/US+0F95BBcpUjSnvB7FJLGlfHHdEwPAj/oGmClJc1wffPUujn24wA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MRYVJ0Skf/WlWYLqRtjwxnp7Dk/v2LBZLgmjDsFspNM=; b=kEHy2HxsClweEiXHDkL4tSxiPhKK+bCJnmSNf0WAPKDKfOG0mEpCxIq8xbtgIL9Hh1JV8Y 57Fi3TWKTI74cczPcDTdj/7GrIvA+ysWEDO8Mok5yt47zwjUyw43rPt8e2boDKT2W1LAP2 nIJUEyoQGuy4DW1r50Hp8fzeouRwtO35RiVeH9q+w+3PCNOqKog+H/8oYdzgLArHxAnh8+ 8mi9gfadkzdj+E69aOvANqmig1VNbwEtcuKpnaAgeF2U08Eh9W6pH7RtouWJpH/6RvMLGo gQ+K/K1iPe9XQri3xifk7H58eUUWgQ9TMpSnd+47bGrCW/qC0qYouXXIRZsUvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479155; a=rsa-sha256; cv=none; b=NqrTI58AM420SH3StxatO6IbeYWZi5uziTbSrEWwjSZFXB5QrNcjcOdbP2F9dMA97Lda88 pgk+VHDD2RWJXuc5297Trhy4d3YFec8qEV5/ENIJkck0v8JjpTni8g0zoxBiKL8FLsX67S UevSYZrAd4azmFRTrobXBVCAtX+bW9yCJuCALqF0CbX6FmNlABznfg3FaIq7aL1H9iXrpA qd71PSh7onXyx0pIu925SFjsGESjli/8hgHbr9LSwV2jQSNLvkhMZn8F3y+kYaF8ZHRf0o oKhnfAYBNSxYv/EZasPzMzmlw2E+fypjdA6ztH2MsSDfWOMBPTXe7Y4DRm1BnQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0GW4cdjz1RnB; Mon, 21 Oct 2024 02:52: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 49L2qZRj083775; Mon, 21 Oct 2024 02:52:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2qZSe083772; Mon, 21 Oct 2024 02:52:35 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:35 GMT Message-Id: <202410210252.49L2qZSe083772@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: 8a74a9c397ea - stable/14 - bsd-family-tree: add FreeBSD Documentation Archive List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8a74a9c397ea2cdc4b24d40a59d95c3d3aa31d37 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=8a74a9c397ea2cdc4b24d40a59d95c3d3aa31d37 commit 8a74a9c397ea2cdc4b24d40a59d95c3d3aa31d37 Author: Wolfram Schneider AuthorDate: 2024-08-19 19:40:34 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:47:47 +0000 bsd-family-tree: add FreeBSD Documentation Archive (cherry picked from commit 4132c4be4c0a4b80a4ef6f4b8ff0d8ac9a3b9939) --- share/misc/bsd-family-tree | 3 +++ 1 file changed, 3 insertions(+) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 7823a2727626..9373928759b8 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -937,6 +937,9 @@ URL: https://www.FreeBSD.org/releases/ Manual pages for FreeBSD and ports URL: https://man.FreeBSD.org +FreeBSD Documentation Archive +URL: https://docs-archive.freebsd.org/doc/ + UNIX history graphing project URL: https://minnie.tuhs.org/Unix_History/index.html From nobody Mon Oct 21 02:52:36 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0GY1Tcnz5b5NV; Mon, 21 Oct 2024 02: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0GX6Z9Vz43MR; Mon, 21 Oct 2024 02:52:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vxyS5kIE1DIqp3WMSuMPq2hs+Qy1eAH1Hzc5uOAGJzA=; b=krP/UheqPcXCdLkAwWH+JMo5P/zqRUfoTidBMAkjfvjr6+gyBdGBV7Rh6oM23xxDWSawZO tKx+QMBxl29MPj/LJ4jsVZXkY9DN2yaeDeS1O5NuvSg+x6dFB/wNUXcEabmgnh4QsS9e6V LSuxhAwEhA4CqldQieVno1w/ykN2Zdql/NsNsFuX12RJCxblQak9QYlBCysd3fokMCDQex 6Axbqgm3dMmvc28QzwMmqAJoDbwSwb8Km1JkGpwnilbErjt81pYvF+4dTuadClTRB2Sfj0 kZ3DQi8dL3T7por+BSrbrgI0BsWiv7/gGB9iVFreDUJSj/z7fg6kHw+Y9DtR5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vxyS5kIE1DIqp3WMSuMPq2hs+Qy1eAH1Hzc5uOAGJzA=; b=GqcTua5SPIlsQ/5MDmRSiBzeYxOgmDrAO1eMAWD5O3vzuA8Zo/fSQU8TZPqos+59rUgFeP 3cqU0j+yRduBv0+Yww0Hvu4HrBPKLW2TZzpQtqHSu87Y5RKDQI2PcMjTN1UNummeKWGXJz zkodesMl8tpfdR45InfqIvZqHYFZmBochiXFfGJ36bxUJCwQcn4YkoS/th4+tSOiQzkygM +32CHIpLwAYFm0J4cVGTfyVQvd8AMdC727Bp0kvFFbJUlmnGCAVUv7+h+NEmD+OBLUkKmH RSdtB6Nsq8R58RuMjxTx4NuYTU+y572+Xj+C70nFVINHuV9Oz5vVMWG55OrXSA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479156; a=rsa-sha256; cv=none; b=X4F0yBoM00RYbfqunnl7koDvPRFPL9GfcRZqNDZVpW5IvZh6hstW92q0f7KRASj8y+B7Q/ a0sMxA7fF1h6BgrtrX3FDBXANvziixPAdDZmR0v6hUQzG6MrP5DVeL0o6wAjxvDkCuZHU8 VAoyhqjDPFYdQi6sh8574AmJsRtscI6a4uJ4cP6P0oiShjHxdTX30TADejLuTkIjXMXt3g rmN823BWbNo4JgFSg5DJySooh67s3Ye/CCu6ewx8OJWTxhVeYNBqmCNE28OUSQyf8FDIFL +qD4ILHmayDoXjavKp41lf1TONGS6rgZqoVGOIodI9HmUHU2E+voAm2Vbh5DjA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0GX5plHz1RPX; Mon, 21 Oct 2024 02: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 49L2qaJW083823; Mon, 21 Oct 2024 02: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 49L2qa7o083820; Mon, 21 Oct 2024 02:52:36 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:36 GMT Message-Id: <202410210252.49L2qa7o083820@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: f080b51748a3 - stable/14 - bsd-family-tree: add NetBSD 9.4 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f080b51748a39f6ec1f55c11bfcc3920d3fd5698 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=f080b51748a39f6ec1f55c11bfcc3920d3fd5698 commit f080b51748a39f6ec1f55c11bfcc3920d3fd5698 Author: Wolfram Schneider AuthorDate: 2024-08-20 13:26:46 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:48:46 +0000 bsd-family-tree: add NetBSD 9.4 (cherry picked from commit d1e78fbd4a67245e058e9d26b333216093f8d2d1) --- share/misc/bsd-family-tree | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 9373928759b8..a2dd40c7ce8e 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -438,23 +438,23 @@ FreeBSD 5.2 | | | | | 13.1 | | | | | | | | | | | | | DragonFly 6.2.2 | | | | | NetBSD 9.3 | | - | | | macOS | OpenBSD 7.2 | - | | | 13 | | | - | | FreeBSD | | | | - | | 12.4 | | | | - | | | | | DragonFly 6.4.0 - | | | | OpenBSD 7.3 | - | FreeBSD | | | | - | 13.2 | | | | - | | | | | | - | `------. | | | | - | | macOS | | | - | | 14 | | | - | | | | OpenBSD 7.4 | - *--FreeBSD | | | | | - | 14.0 | | | | | - | | | | | | | - | | FreeBSD | | | | + | | | macOS | | OpenBSD 7.2 | + | | | 13 | | | | + | | FreeBSD | | | | | + | | 12.4 | | | | | + | | | | | | DragonFly 6.4.0 + | | | | | OpenBSD 7.3 | + | FreeBSD | | | | | + | 13.2 | | | | | + | | | | | | | + | `------. | | | | | + | | macOS | | | | + | | 14 | | | | + | | | | | OpenBSD 7.4 | + *--FreeBSD | | | | | | + | 14.0 | | | | | | + | | | | | | | | + | | FreeBSD | | NetBSD 9.4 | | | | 13.3 | | | | | | | *--NetBSD | | | | | | 10.0 | | @@ -895,6 +895,7 @@ FreeBSD 14.0 2023-11-20 [FBD] FreeBSD 13.3 2024-03-05 [FBD] NetBSD 10.0 2024-03-28 [NBD] OpenBSD 7.5 2024-04-05 [OBD] +NetBSD 9.4 2024-04-20 [NBD] FreeBSD 14.1 2024-06-04 [FBD] Bibliography @@ -960,5 +961,5 @@ original BSD announcements from Usenet or tapes. Steven M. Schultz for providing 2.8BSD, 2.10BSD, 2.11BSD manual pages. -- -Copyright (c) 1997-2012 Wolfram Schneider +Copyright (c) 1997-2024 Wolfram Schneider URL: https://cgit.freebsd.org/src/tree/share/misc/bsd-family-tree From nobody Mon Oct 21 02:52:38 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Gb6wpRz5b5p7; Mon, 21 Oct 2024 02: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Gb3hHsz43Sd; Mon, 21 Oct 2024 02: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=1729479159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BkPnPgQ2vprHNrWiF9EDf8iI8iXKvMXNwC9C5u1qNp4=; b=oRy14GdMMGD4LIGS9/EchHmVXXORYoTwd6oTzujTvhtIvXs/GlXRv9cPR7nZuwc5AZbHGa kbC29vDNLdghVwWPbOAALSsM7jm1cBem9QRsM+zzAR3Cigb9V7t31bIgYdPRgw1lTc058U kfDZAZNoQsY1pw1kG5iVHVMeM/1CH+ZJzJ8Vte6xFVrm8LzYRtTfoi3a4l1Bjt1XCsd3Cj X9Pa9bZggMa1NlHSezfMwEG065x9EXS1nW+3TiCrYZCiqGQWIwKxU4MYYEA8a3tFobvs+L OfEvMUlGLmlSdw3W4fvFrq3bKvCxH1BlnuOTOuEXsYcNctOIrplPQJ2Fqwku3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BkPnPgQ2vprHNrWiF9EDf8iI8iXKvMXNwC9C5u1qNp4=; b=tfqJ2T5zUp49RNZ/fXy32CEdA+xYlzydxcxDAAflYyiZP4M2j1LuqA+dwLKTZKbaRoY7x6 py5NNHwdl7csME/FNJHmxGyzxY9Wr36TJpqXniHQwEjlFDbu2rLJx7T6W0zXQxQ/3xGxx5 dAK5AWY8Sc3qTbc02KK6AWHdYcL95KbC57fK3PbIRaIJQOtLu6bc7o7grp5lOWFXVjFqSX Mgi8B3epKUU/pePqfDi3ciPoi1/WN48i0XeyYPd1Ot7ccPOgqj4EzsTN/yOsqIgo62gXyU Jdx+ERnjecVzN5Xp/eIrbSNxF7MZzI5zpwqopZ49m6qZTJq5oSUsKQu4Vbko3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479159; a=rsa-sha256; cv=none; b=WniNck0JEIZukygj938d1MvDH0QQiYXS4SqTNnQ/R8e7PkVwEHsNXun8Hn4peiq8oeWgQG yawX2iwRwYjq3hWtvWFzSv+3u45i1VdMSbIX7PqAoL1ozBUJzbN+Iil62Rgv3d6Q8qvYzI dpj7s+O/JwCTiOSL1DPKKP+jlFZbMsXjre4II8Ym3agcxg+AGz67TMuvK40nNGVjf9r7St 2i7dG2xHp44U8Si2/XvtcJ2iIs9JlajFlzTCWcViSsOgfVs4VdNZERxU1EQejH4UuAYM0A MSl4nxCfwu42t60sbbAkfRQmZJhHWCuHtXqFf2bRNHB4WD5sw1Ej/DuR6FW06Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Gb2Btjz1Rb7; Mon, 21 Oct 2024 02: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 49L2qciY083911; Mon, 21 Oct 2024 02: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 49L2qcbg083908; Mon, 21 Oct 2024 02:52:38 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:38 GMT Message-Id: <202410210252.49L2qcbg083908@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: ec9c40ce9be9 - stable/14 - bsd-family-tree: fix macOS 11 release date List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ec9c40ce9be9dd7ecc548fa2300742a36fab56db Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=ec9c40ce9be9dd7ecc548fa2300742a36fab56db commit ec9c40ce9be9dd7ecc548fa2300742a36fab56db Author: Wolfram Schneider AuthorDate: 2024-08-20 14:35:29 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:50:25 +0000 bsd-family-tree: fix macOS 11 release date (cherry picked from commit b49aec04f073de02b03b44503feffeb52cbbdd51) --- share/misc/bsd-family-tree | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index a04e96c832aa..2f1cf914d693 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -869,7 +869,7 @@ DragonFly 5.8.3 2020-09-24 [DFB] OpenBSD 6.8 2020-10-18 [OBD] NetBSD 9.1 2020-10-18 [NBD] FreeBSD 12.2 2020-10-27 [FBD] -macOS 11 2020-11-19 [APL] +macOS 11 2020-11-12 [APL] FreeBSD 13.0 2021-04-13 [FBD] OpenBSD 6.9 2021-05-01 [OBD] DragonFly 6.0 2021-05-08 [DFB] From nobody Mon Oct 21 02:52:37 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Gb3QvCz5b5p4; Mon, 21 Oct 2024 02: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0GZ2548z43B0; Mon, 21 Oct 2024 02: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=1729479158; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c13HoV4T3U0kusI2REpB+iu4sQ5u/vxot7dIvap7KrY=; b=xWkqT55DnoS1Jhl+v09+TD8NldjpiXbJpUP2AFdRN/aCGpl8KEm/ay/+aZigJpaC6NjRod B+Ae/znO++uh6YmhLrF8ErRHwyGPTuxtzpXauzZT36UuB+DATfzEuPdgNk0HxPiFlPWkHl ovCBTTLbH5lx7lP4e9hOt1r4h+52swPHr1IEdkKZdA/6CMKzEX39oI1rZPZ0UgLuEXtNEx miMSwlQMqo7Tk4WSehAGWdKUoEOZ0/loa8S6eBkSn9S8sIx7OhwBE6uak395E+bM4sINna LB+0FUK0WzTMhAcnsIO0E428q0SiQWf1huiMMbETd1VFoV40+uXxvy1QfEwGMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479158; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c13HoV4T3U0kusI2REpB+iu4sQ5u/vxot7dIvap7KrY=; b=i6YlvnzLntUexS3GpG+JfH0scFhCSz5SRHYH9vUhDqMFGnSP15+Ca72mgPUeDWn78WA0Ol Jf9riAN0umwpiDhwdwGt3qh71StyVcW6AlImVLoRlgVPxXdYjeJ+jaGcL3sTXuKYGUg1xO kkIEoRQL771Ox2JvoyQvvCEa6lmVU5GNPa0TovP0831FoDv7JcXB7TmUKtvlpqveuN7K9Q 1WiRfmOUXM9qFt5xXwLNURXBNkeVeKNgWRXlztTNV2KYi+2Ap1PjZgxqs/zS1Csa/cS2Ov 9LBO8nTcKVgb1w5Qd7Z8mV03Jm7gpsoyh5cCcH4IabF9Hm4v+yld84lugpQqHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479158; a=rsa-sha256; cv=none; b=tgRr3uMXEY647V648g4O3Uc8YOpKVua39SJWe+0MsqzH75cLmmFOOPEhMu5BPSTUPXZCLq tw5ZqI44Avy9Uji43TFv/fwq1CZ2JBQPlctD8tpnyTlC2F36m1r3tvguebHM4h1QP1ZFD4 RR9rbvJKnaKtN/r6NS5zSxPoJ8HiCfhC3nbjdD6Vo47Ke9ks3RDb7X5dLekssocgwpvfch aOPppcqxp48Kv1em7VhbbORmLYeXW8pg5eoQuKigfrzipP7ew9VtXAXIBcEiWJc6HEgsKF A6NT9+gZG4QEZfC6XBXjpbrCqy7nnxTXHIwWy0Ob5IaPZL3mGemqbrQbyA5Xug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0GY6bCkz1R5Y; Mon, 21 Oct 2024 02:52: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 49L2qbFg083863; Mon, 21 Oct 2024 02:52:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2qbmv083860; Mon, 21 Oct 2024 02:52:37 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:37 GMT Message-Id: <202410210252.49L2qbmv083860@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: cdac5377113c - stable/14 - bsd-family-tree: shorter URLs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cdac5377113c670001522cd949f01946111cc215 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=cdac5377113c670001522cd949f01946111cc215 commit cdac5377113c670001522cd949f01946111cc215 Author: Wolfram Schneider AuthorDate: 2024-08-20 13:29:18 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:49:49 +0000 bsd-family-tree: shorter URLs (cherry picked from commit d4a4d1e742852b00427f723f59534b42718628de) --- share/misc/bsd-family-tree | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index a2dd40c7ce8e..a04e96c832aa 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -485,18 +485,18 @@ was the announcement in Usenet or if it was available as tape. Volume 11, Info 4, April, 1987. [KKK] Mike Karels, Kirk McKusick, and Keith Bostic. tahoe announcement. comp.bugs.4bsd.ucb-fixes, June 15, 1988. -[KSJ] Michael J. Karels, Carl F. Smith, and William F. Jolitz. - Changes in the Kernel in 2.9BSD. Second Berkeley Software - Distribution UNIX Version 2.9, July, 1983. -[NBD] NetBSD Project, The. -[OBD] OpenBSD Project, The. -[QCU] Salus, Peter H. A quarter century of UNIX. ISBN 0201547775, - EAN 9780201547771 -[SMS] Steven M. Schultz. 2.11BSD, UNIX for the PDP-11. -[TUHS] The Unix Historical Society. https://minnie.tuhs.org/Unix_History/. -[USE] Usenet announcement. -[WRS] Wind River Systems, Inc. -[dmr] Dennis Ritchie, via E-Mail +[KSJ] Michael J. Karels, Carl F. Smith, and William F. Jolitz. Changes in the + Kernel in 2.9BSD. Second Berkeley Software Distribution UNIX Version 2.9, + July, 1983. +[NBD] NetBSD Project, The. +[OBD] OpenBSD Project, The. +[QCU] Salus, Peter H. A quarter century of UNIX. ISBN 0201547775, EAN + 9780201547771 +[SMS] Steven M. Schultz. 2.11BSD, UNIX for the PDP-11. +[TUHS] The Unix Historical Society. https://minnie.tuhs.org/Unix_History/ +[USE] Usenet announcement. +[WRS] Wind River Systems, Inc. +[dmr] Dennis Ritchie, via E-Mail Multics 1965 UNIX Summer 1969 @@ -942,7 +942,7 @@ FreeBSD Documentation Archive URL: https://docs-archive.freebsd.org/doc/ UNIX history graphing project -URL: https://minnie.tuhs.org/Unix_History/index.html +URL: https://minnie.tuhs.org/Unix_History/ UNIX history URL: https://www.levenez.com/unix/ From nobody Mon Oct 21 02:52:40 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Gc47krz5b63v; Mon, 21 Oct 2024 02: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Gc2RRjz43F2; Mon, 21 Oct 2024 02: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=1729479160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+zFbtJqhXJmBCaCpEcIhcNtbMO31R5wvJeuqz4vpH3s=; b=Fo3jKE0zDeJsOIVHVO8suDisFgDVxJLNrHDmxpXIAdwVHsA2liOgyMAp+RV4FhbSxmDZBy bGbk4gxRkAuMMOj5aBw61j4MUFP9TaPCmdXbD10N3YyyCPJNrFBD+wpSqMEIit1zaf1Srv QZau8pdQ5kznH1uZtn5KSczzsFweE1nw/G4vA/RWGPsmlfKbbU9LVjvu3DwYpqM0qSayN+ 4Scu6htdMsRgpozq9ZgHNMO9KEfGy+ZI7ZGuGti08c2+J+Wnz2zBCIJSOwX9eflTf7vq4c oMnz9kcPZ+aY2vWw5v6s+IrEpedp2QMls5T68tt84fUNCqjXbhCPfitqsnlCSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+zFbtJqhXJmBCaCpEcIhcNtbMO31R5wvJeuqz4vpH3s=; b=D+qXTTZxpj9n0FxmG6dw4JFukAQDp2MLQl95+ts0DydWC0co5V2o8n9XKt1rnbr6w4lt+3 YHPv+3Z+crzK1ox27CpDVY0bmcLGrDKWveJa7Jo0eP4u4B29FXKW4qw+AgQQfw6fBp3f2e rkn271UQPRTUD+LXq6dYsaNx5B4n9vm9mjekq6tT6EiCNS2z2WNhPrQqtqZ1uUVVOpbJNX r+PCuF8pAj4JoXWWOa3geCz9ZpBacOgdxCSTfLZiH1kyKeCDAAsJh+8p1LzabW+hoOAOlB EmMSmg2XHV7phYOjLk9sXj/rPIHebPVh7oV5QnyNKraqBMvLIJH1VRAsSlJFbQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479160; a=rsa-sha256; cv=none; b=O9redqTqxKr0Y75Y6xrt+/zJkEM0MKG1MwkgBppoKP0tbM28lVGmVysW8UZelL9BDeJZyg UtJlaHzM5grYv7C7q+UyQlw5dGMUBRwcLTcIhv6Bydx8cfm7WLlLC4vtgQm5Kof//ovksD 3g/9hvAxcHkTPZ+4mQ4YrNRFUfy6FIMtpdRqtNxqiCOmFCiBObRtqhZuwSMxM1TyhTCwjJ Y7DRz+DbbhxRV10bVJvfWpHma5Aeoz7k4gV6kWlT40QQIl7Vl9vW2FYt1IlBVKNUAMBLqM QUSa0k6iDB5un4HCKK+bkB+drc1IxUYDUbGSUsZPzYOsMZ2Ipmdy4HX3Q6i3hw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Gc1VbCz1RNQ; Mon, 21 Oct 2024 02: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 49L2qeio083953; Mon, 21 Oct 2024 02: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 49L2qeQC083950; Mon, 21 Oct 2024 02:52:40 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:40 GMT Message-Id: <202410210252.49L2qeQC083950@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: a69b43986406 - stable/14 - bsd-family-tree: NetBSD 8.3 added List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a69b43986406478a678b76248b138968c647651d Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=a69b43986406478a678b76248b138968c647651d commit a69b43986406478a678b76248b138968c647651d Author: Maxim Konovalov AuthorDate: 2024-08-22 00:29:36 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:50:50 +0000 bsd-family-tree: NetBSD 8.3 added PR: 280983 (cherry picked from commit d399c791b223953d230423eff1d56fb45a1be77c) --- share/misc/bsd-family-tree | 99 ++++++++++++++++++++++++---------------------- 1 file changed, 51 insertions(+), 48 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 2f1cf914d693..510ca204ca56 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -413,54 +413,56 @@ FreeBSD 5.2 | | | | | | | | | | | | DragonFly 5.6.3 | | | | | | NetBSD | | | | | | | | 8.2 | | - | | | | | | | DragonFly 5.8.1 - | | | | | | OpenBSD 6.7 | - | | FreeBSD | | | | | - | | 11.4 | | | | | - | | | | | | DragonFly 5.8.2 - | | | | | | DragonFly 5.8.3 - | | | | NetBSD 9.1 OpenBSD 6.8 | - | FreeBSD macOS | | | | - | 12.2 11 | | | | - | | | | | | | - | `------. | | | | | - | | | | | | | - *--FreeBSD | | | | | | - | 13.0 | | | NetBSD 9.2 OpenBSD 6.9 DragonFly 6.0.0 - | | | | | | | | - | | | | | | | DragonFly 6.0.1 - | | | | | | | | - | | FreeBSD macOS | | OpenBSD 7.0 | - | | 12.3 12 | | | | - | | | | | | | DragonFly 6.2.1 - | | | | | | OpenBSD 7.1 | - | FreeBSD | | | | | | - | 13.1 | | | | | | - | | | | | | | DragonFly 6.2.2 - | | | | | NetBSD 9.3 | | - | | | macOS | | OpenBSD 7.2 | - | | | 13 | | | | - | | FreeBSD | | | | | - | | 12.4 | | | | | - | | | | | | DragonFly 6.4.0 - | | | | | OpenBSD 7.3 | - | FreeBSD | | | | | - | 13.2 | | | | | - | | | | | | | - | `------. | | | | | - | | macOS | | | | - | | 14 | | | | - | | | | | OpenBSD 7.4 | - *--FreeBSD | | | | | | - | 14.0 | | | | | | - | | | | | | | | - | | FreeBSD | | NetBSD 9.4 | | - | | 13.3 | | | | - | | | *--NetBSD | | - | | | | 10.0 | | - | | | | | | - | | | | OpenBSD 7.5 | - | FreeBSD | | | | + | | | | | | | | DragonFly 5.8.1 + | | | | | | | OpenBSD 6.7 | + | | FreeBSD | | | | | | + | | 11.4 | | | | | | + | | | | | | | DragonFly 5.8.2 + | | | | | | | DragonFly 5.8.3 + | | | | NetBSD | OpenBSD 6.8 | + | FreeBSD macOS | 9.1 | | | + | 12.2 11 | | | | | + | | | | | | | | + | `------. | | | | | | + | | | | | | | | + *--FreeBSD | | | | | | | + | 13.0 | | | NetBSD | OpenBSD 6.9 DragonFly 6.0.0 + | | | | | 9.2 | | | + | | | | | | | | DragonFly 6.0.1 + | | | | | | | | | + | | FreeBSD macOS | | | OpenBSD 7.0 | + | | 12.3 12 | | | | | + | | | | | | | | DragonFly 6.2.1 + | | | | | | | OpenBSD 7.1 | + | FreeBSD | | | | | | | + | 13.1 | | | | | | | + | | | | | | | | DragonFly 6.2.2 + | | | | | NetBSD | | | + | | | macOS | 9.3 | OpenBSD 7.2 | + | | | 13 | | | | | + | | FreeBSD | | | | | | + | | 12.4 | | | | | | + | | | | | | | DragonFly 6.4.0 + | | | | | | OpenBSD 7.3 | + | FreeBSD | | | | | | + | 13.2 | | | | | | + | | | | | | | | + | `------. | | | | | | + | | macOS | | | | | + | | 14 | | | | | + | | | | | | OpenBSD 7.4 | + *--FreeBSD | | | | | | | + | 14.0 | | | | | | | + | | | | | | | | | + | | FreeBSD | | NetBSD | | | + | | 13.3 | | 9.4 | | | + | | | | | | | + | | | *--NetBSD | | | + | | | | 10.0 | | | + | | | | | | | + | | | | | OpenBSD 7.5 | + | | | | NetBSD | | + | FreeBSD | | 8.3 | | | 14.1 | | | | | | | | | FreeBSD 15 -current | NetBSD -current OpenBSD -current DragonFly -current @@ -896,6 +898,7 @@ FreeBSD 13.3 2024-03-05 [FBD] NetBSD 10.0 2024-03-28 [NBD] OpenBSD 7.5 2024-04-05 [OBD] NetBSD 9.4 2024-04-20 [NBD] +NetBSD 8.3 2024-05-04 [NBD] FreeBSD 14.1 2024-06-04 [FBD] Bibliography From nobody Mon Oct 21 02:52:42 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Gg0CKpz5b5Nb; Mon, 21 Oct 2024 02:52:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Gf4cYHz436C; Mon, 21 Oct 2024 02:52:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479162; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CV4vBxvF7+f5wkdlQOs74bWPBeyZrWabbrtRnZt1t7Y=; b=pkZtm6LN4p1X7u8dyza8XptflSgzNx1tB1AgXeUtCNLAv01UC18irIODGMjvgQf8U58Yms ztLGUfGpGHhQE8oJXZr88FQPqeRYzINrHWhCucxefiZZZy9uNtmlAvrc+WIKkNdYoldl+b DI2eks/INTNOMPipxpYrjioWmnnfrM4o488ZrDhCl9i2yWNcYpcVSCZ/1voZBWvZzIOZC0 yQeIobgzqpyaUTCr42CC2MGrGZrSTzv0bEm0UtUYvKkDiBpLpiTsVtDrZDuBgrSTVKtBm8 RXxjMThNwhS/eDFCqwpiXmzCpXE9ROicinZSK/wlXCgTrbrfDQ45u754zb4gGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479162; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CV4vBxvF7+f5wkdlQOs74bWPBeyZrWabbrtRnZt1t7Y=; b=hw1GuFHR5/4MNf2Iid3RWUPyvrYi/fxhRvl70mOODAMo7UXmh3L5EjRJSNQ2gEQMq1Yv1T Rii4uP+i7FZ0kbVbkmHpEcNdo0iPhRhNlLYFIyNwc4Vwf9EaBkqOF9kFNUsYNcCiVm2fd/ IdQPVD/TAYynEkyAvt2Uft51BMBPZtEBywrWs307F3JjNhSk05gm+sHSeML8v59m1A5+Lr dnhHsBJHa+hXZniC++QzTsei9vu2VX3Ylg5ysUnKwePIg7Yf+4vYWSVPBQzoY+umCQUebq 4VHn1yAOx7alcX+ufVd47jbYheE17nHkIlqIZx7rqK7UB+Vj9xQZMiN66XZQUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479162; a=rsa-sha256; cv=none; b=K1Jv4Kf72dUClY1EdDuf0eLPfkNmcXTCaZNkQKXPxNh1k2GDqim3liuElVCWVnVi0GPozE ok6Kbz4FiKGurz3cwcaGs+XmxQWRNQ8T8/WxvB53JFiR0MpARDgZNHOfdz3pIfLmUosxwf OzfAAOJ83a/03pQyb9fGLcwW6dOXgG2ZD+r+Ert33w8Z5Oj/UCBk+oCMyjsDnxeojcX8P9 2n1herDYmn9eixDapv/S8+ko0Y5XyhZvfF2kqOYGE1PZaUIf/wzdLNgz36wI3EAwNkMGbV 7WSWTdnntD2Ri7XGxY+6vpkJ3i2gXj0rG2NBWrJO9RcnptopMy7VwCOto5ujEA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Gf39K4z1RnD; Mon, 21 Oct 2024 02:52:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49L2qgW8084066; Mon, 21 Oct 2024 02:52:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2qgL2084063; Mon, 21 Oct 2024 02:52:42 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:42 GMT Message-Id: <202410210252.49L2qgL2084063@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: 12ab751d415d - stable/14 - bsd-family-tree: add macOS 15 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 12ab751d415d6ce59c23895bdadbd4e2f0e157a6 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=12ab751d415d6ce59c23895bdadbd4e2f0e157a6 commit 12ab751d415d6ce59c23895bdadbd4e2f0e157a6 Author: Sergey A. Osokin AuthorDate: 2024-10-16 00:52:01 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:51:31 +0000 bsd-family-tree: add macOS 15 While I'm here fix whitespaces for recent OpenBSD releases. (cherry picked from commit bdbf50660c51534d7a25569349bcdf2d4e460f50) --- share/misc/bsd-family-tree | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 3a841e03a6e4..b9d76552db08 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -465,6 +465,8 @@ FreeBSD 5.2 | | | | | | | | | 8.3 | | | FreeBSD | | | | | | 14.1 | | | | | + | | macOS | | | + | | 15 | | | | FreeBSD | | | | | 13.4 | | OpenBSD 7.6 | | | | | | @@ -899,12 +901,13 @@ OpenBSD 7.4 2023-10-16 [OBD] FreeBSD 14.0 2023-11-20 [FBD] FreeBSD 13.3 2024-03-05 [FBD] NetBSD 10.0 2024-03-28 [NBD] -OpenBSD 7.5 2024-04-05 [OBD] +OpenBSD 7.5 2024-04-05 [OBD] NetBSD 9.4 2024-04-20 [NBD] NetBSD 8.3 2024-05-04 [NBD] FreeBSD 14.1 2024-06-04 [FBD] +macOS 15 2024-09-16 [APL] FreeBSD 13.4 2024-09-17 [FBD] -OpenBSD 7.6 2024-10-08 [OBD] +OpenBSD 7.6 2024-10-08 [OBD] Bibliography ------------------------ From nobody Mon Oct 21 02:52:41 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Gd6FSxz5b5NZ; Mon, 21 Oct 2024 02:52:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Gd2vw7z43FG; Mon, 21 Oct 2024 02:52:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479161; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eWENL8TKjO7PQxZ3EUAxUR+FygjgHeOLO+VZUOI7YIE=; b=DDHFhoB9QtiC6ke4WSh/pZsjbE0VSHQPm9OI8vTtt0L6mCSw/av6w6WySghgUnIcr1bp3W hP8RfVDj5bZ7qRowBt1t5b2KqJrwyYWu4751uiuI4XG/KDcG6RLye6w9jFR8OXBy6z4cYd YzqaMhRnuYwA1q+NRGPTvxhmvsfM7eEpvTV3IfLOsuUVyHpS6N16yIQCWFth8p1X5IFfpJ 9rZcjphRyWHWpBLCuDhIJdoUhbDXa0iaycx5m9prrcnvzlindvAjKUZi1IofMMk3pEAyEw QxlHZo01kyTBmdJmn07aKWNtAjGmGtWxsfTS9O54F5f83wrBLkVTOA0otaM3uA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479161; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eWENL8TKjO7PQxZ3EUAxUR+FygjgHeOLO+VZUOI7YIE=; b=hPI+2r+aCQPpwtfxPKgZhWb7lsqM6ZuHn3uLhWhZFUPon4351TYoRkcZNp6FcvFW2GHoyV kv6iUCMk1ersDueXgxEOvWiC4fbG50e9oF1IHefuzf3ofc+0n7izbr1sEpFUKBnCdSBZux i6vGtyZlALUq+sJqewRGiHyhNsx4sFaIImcNFItvf1WnCE9mjxJAf9SrQb8IFR+WZjLQKf TzGunLdQG7/SHmK5PEFr4rTGCHqtRHOw1VZ8md4StqsmURoYNYrcPMA3ojJNK3o8BkkUUG CvaRSbU6q3eiIidxYFe/H/1BnquYXe4M+EO2nBMoZJ6vQKSv/SsZI6q5LnAnkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479161; a=rsa-sha256; cv=none; b=yGVQitCkJVsVRonbPebg33CKrBewS7rf2D/TlD3KDD7RqB23v4IWLX0Ba30MQE/Rg5xf6D 5WAaW5/FFmmGdwluJ8CmOV7tktWkkktirY87MdKZJGgnnH0YPoyDsmsBKBGgIoQPfd54LP T51dDXeZKTsAEpV9iPR0Excyx2iDzpct4d2v3Hld906ISIgTfXe3q19qOHLffnTvcA27uT YTjMWsdjMhw0YwfbVHy0Mr6jTpfsoqvRO8GeSDeJ/Mg65mzsrDUXUYjxxOeqYtaHlfsHCX 7X4K9KnNdY8kjk6ZEqRRBxT1UFpp/KJcHOAMZG83vp+Tn82CLTcT+EGppEZh/A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Gd29Fmz1RnC; Mon, 21 Oct 2024 02:52: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 49L2qfxc084020; Mon, 21 Oct 2024 02:52:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2qfkw084017; Mon, 21 Oct 2024 02:52:41 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:52:41 GMT Message-Id: <202410210252.49L2qfkw084017@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Sergey A. Osokin" Subject: git: e3cf164e9ae7 - stable/14 - bsd-family-tree: FreeBSD 13.4 and OpenBSD 7.6 added List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: osa X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e3cf164e9ae785f1924517ffe89894bcb9658570 Auto-Submitted: auto-generated The branch stable/14 has been updated by osa: URL: https://cgit.FreeBSD.org/src/commit/?id=e3cf164e9ae785f1924517ffe89894bcb9658570 commit e3cf164e9ae785f1924517ffe89894bcb9658570 Author: Maxim Konovalov AuthorDate: 2024-10-07 21:16:19 +0000 Commit: Sergey A. Osokin CommitDate: 2024-10-21 02:51:11 +0000 bsd-family-tree: FreeBSD 13.4 and OpenBSD 7.6 added (cherry picked from commit 3ebb738a93139fd2f8826a62b5f282480f2e19d5) --- share/misc/bsd-family-tree | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 510ca204ca56..3a841e03a6e4 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -456,14 +456,17 @@ FreeBSD 5.2 | | | | | | | | | | | | | | | FreeBSD | | NetBSD | | | | | 13.3 | | 9.4 | | | - | | | | | | | - | | | *--NetBSD | | | - | | | | 10.0 | | | - | | | | | | | - | | | | | OpenBSD 7.5 | - | | | | NetBSD | | - | FreeBSD | | 8.3 | | - | 14.1 | | | | + | | | | | | | | + | | | | *--NetBSD | | | + | | | | | 10.0 | | | + | | | | | | | | + | | | | | | OpenBSD 7.5 | + | | | | | NetBSD | | + | | | | | 8.3 | | + | FreeBSD | | | | | + | 14.1 | | | | | + | FreeBSD | | | | + | 13.4 | | OpenBSD 7.6 | | | | | | FreeBSD 15 -current | NetBSD -current OpenBSD -current DragonFly -current | | | | | @@ -900,6 +903,8 @@ OpenBSD 7.5 2024-04-05 [OBD] NetBSD 9.4 2024-04-20 [NBD] NetBSD 8.3 2024-05-04 [NBD] FreeBSD 14.1 2024-06-04 [FBD] +FreeBSD 13.4 2024-09-17 [FBD] +OpenBSD 7.6 2024-10-08 [OBD] Bibliography ------------------------ From nobody Mon Oct 21 02:58:49 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Pk0mJkz5b6Dq; Mon, 21 Oct 2024 02:58:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Pk0DBcz45Cr; Mon, 21 Oct 2024 02:58:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479530; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6/gUhYdjavDRKCeFNB0zZkj5xpRexaeqdgh5xkzZ1z8=; b=XVfy1k95R81Emyy+rxrqCwxn0N2WzVc4qhfOfzxw243U2u5mfFRptEfcXDBNx9UyEkyQtA 9888AH7aMjFE+SI+5kfZPtAg5LLCYHpUR+J09hCsHJbU6Jbk4KHnYhtCss1i6gf6Yo570L fI6ClLEcGharJSxJBH4bEAIuoqyJI8NNcV/tZZp7Ua8/b7ulnkrmF0FybcXfNCugctZE4n pW8IKt6bd75pWerndX2+N95Eufw4HkQhpNEYz0+hfhpUFilL8boUPa9qMaKHgD62FyF+K+ vqObIachsIXoHc/CS7gEc0X11HmuuQ7FctmZOq07Zvs7MrB96HPKw3kADTggEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479530; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6/gUhYdjavDRKCeFNB0zZkj5xpRexaeqdgh5xkzZ1z8=; b=c6A2gdl520UUv49OC5JzmNCrUBfWFQ9EwH8MYzNHTANTTljjMkGfGTgVgxkyV7h9nEo34L B5i4SVLCKYSG4vMF06/7dZ0zYLL//+PD7hlErAe3TaOwxC9omAq5rOVzTGzUqaRJcrlDxP lXRcC6lpFblu4V5O8bxxNz2ToUcdvnsWn8Q/8DBo23U6Md+xquhKDaZGKnU4muJ1FSyDuQ DDNAyO9qnCwbR730u9mtZxfpmTolSmzxHA7jbaK+ZOCguTSS2FiMoZxuUuAnz+I9drqjd5 eyhGrBlpvrp+neunMm/dlHRslpi6bKhW22Tx0E/Tq+m2Cf9G7Jfr7N8sfPGKww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479530; a=rsa-sha256; cv=none; b=LPHdRfveGEskrqfTxF0ubxw79ed582LWyPBX0XKE04HtCf1VrOfznCOxWEeAmPt9soAUtk mTbjl2BOEbgP0DmB7M7oRE41zYUL0ktXZDlftuIct6BbNcQzWZzYNkvvBjrG1K9/mhEOk5 fDu0y+6SAxUaIDmuW3hkfNAI8cnF9qi3KlyDqdf+63XYZOEuZ/0iJKKjc/r76XgWJjw3CE WHlCnoEXBE5EHlBYXvOERx1lMta+oBNjRoyi6Npy+NVNoXaLAO/g6aPm8DEdlAXSR8V2El PO5aDVrmoGqUxKFDpbNYYTqc6oRMcA9bo17NhkqOlVBhnhvU3Jx5R2klSd66+w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Pj6p1wz1RwZ; Mon, 21 Oct 2024 02:58: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 49L2wnfC086134; Mon, 21 Oct 2024 02:58:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2wnkW086131; Mon, 21 Oct 2024 02:58:49 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:58:49 GMT Message-Id: <202410210258.49L2wnkW086131@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 630077a84186 - stable/14 - Move support of Realtek 8156/8156B from cdce(4) to ure(4) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 630077a841862ae0156780ce834898a97735a484 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=630077a841862ae0156780ce834898a97735a484 commit 630077a841862ae0156780ce834898a97735a484 Author: Li-Wen Hsu AuthorDate: 2024-08-12 04:04:05 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 02:58:35 +0000 Move support of Realtek 8156/8156B from cdce(4) to ure(4) Reviewed by: kevlo, imp, hrs MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45088 (cherry picked from commit 6ea4d95f6c76aa64d2db5c04c87e68dc299544df) --- share/man/man4/cdce.4 | 6 +----- share/man/man4/ure.4 | 5 +++++ sys/dev/usb/net/if_cdce.c | 1 - sys/dev/usb/net/if_ure.c | 2 +- sys/dev/usb/quirk/usb_quirk.c | 1 - 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/share/man/man4/cdce.4 b/share/man/man4/cdce.4 index 6768c7bbf517..9d842e475d85 100644 --- a/share/man/man4/cdce.4 +++ b/share/man/man4/cdce.4 @@ -27,7 +27,7 @@ .\" .\" $NetBSD: cdce.4,v 1.4 2004/12/08 18:35:56 peter Exp $ .\" -.Dd February 10, 2023 +.Dd May 3, 2024 .Dt CDCE 4 .Os .Sh NAME @@ -107,10 +107,6 @@ Sharp Zaurus PDA .It Terayon TJ-715 DOCSIS Cable Modem .It -Realtek RTL8156 USB GBE/2.5G Ethernet Family Controller -.It -Planex USB-LAN2500R -.It Huawei 3G/4G LTE (eg. E3372, E5573) and other mobile network devices .El .Sh DIAGNOSTICS diff --git a/share/man/man4/ure.4 b/share/man/man4/ure.4 index 773fa7a2426b..8cc798ab4393 100644 --- a/share/man/man4/ure.4 +++ b/share/man/man4/ure.4 @@ -97,6 +97,11 @@ Set 1000baseTX (Gigabit Ethernet) operation over twisted pair. The RealTek gigE chips support 1000Mbps in .Cm full-duplex mode only. +.It Cm 2500base-T +Set 2500Base-T operation over twisted pair. +The RealTek 8156/8156B chips support 2500Mbps in +.Cm full-duplex +mode only. .El .Pp The diff --git a/sys/dev/usb/net/if_cdce.c b/sys/dev/usb/net/if_cdce.c index d53d861cfb00..cbb6ae76ef0c 100644 --- a/sys/dev/usb/net/if_cdce.c +++ b/sys/dev/usb/net/if_cdce.c @@ -281,7 +281,6 @@ static const STRUCT_USB_HOST_ID cdce_host_devs[] = { {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLA300, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC700, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC750, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, - {USB_VPI(USB_VENDOR_REALTEK, USB_PRODUCT_REALTEK_RTL8156, 0)}, {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x16), diff --git a/sys/dev/usb/net/if_ure.c b/sys/dev/usb/net/if_ure.c index 55444030869c..ee7fd04e38c3 100644 --- a/sys/dev/usb/net/if_ure.c +++ b/sys/dev/usb/net/if_ure.c @@ -481,7 +481,7 @@ done: } /* - * Probe for a RTL8152/RTL8153 chip. + * Probe for a RTL8152/RTL8153/RTL8156 chip. */ static int ure_probe(device_t dev) diff --git a/sys/dev/usb/quirk/usb_quirk.c b/sys/dev/usb/quirk/usb_quirk.c index eaf3851bbbca..21fbd3d9d70a 100644 --- a/sys/dev/usb/quirk/usb_quirk.c +++ b/sys/dev/usb/quirk/usb_quirk.c @@ -100,7 +100,6 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK(ELSA, MODEM1, 0x0000, 0xffff, UQ_CFG_INDEX_1), USB_QUIRK(PLANEX2, MZKUE150N, 0x0000, 0xffff, UQ_CFG_INDEX_1), USB_QUIRK(CISCOLINKSYS, USB3GIGV1, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(REALTEK, RTL8156, 0x0000, 0xffff, UQ_CFG_INDEX_2), /* Quirks for printer devices */ USB_QUIRK(HP, 895C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), USB_QUIRK(HP, 880C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), From nobody Mon Oct 21 02:59:48 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Qr6pxHz5b65q; Mon, 21 Oct 2024 02:59:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Qr664bz45f7; Mon, 21 Oct 2024 02:59:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iXSEOuW/G4LKPnAgG5zhtnstjMUy+YV9QP5q3mbjMiU=; b=uh26uwAEyiVnOdCAAZxbIILG9CHwaEvozKYuU6TGdW52hzLfME4ud7T1iwHH3HIenNhQqk 8FxZr5TxNXFBLNN2ZHYQ0HjDpm8RJM8koBuOfuXL6FCycC2NZr81lhaeGJfV2rTb0WTczz oD+e1IYSY/dzNW/UZ+wOCN1enDkuXOhMgVC39h9OJMAQWFVTWg8aTbu2dkI+l4u+YkDOH+ dgBMVQTYMepuyyPqlm7XGlxyT2+OUCCtNeyLayQOTQR+lE3J2eDPukp+72f0NBfmJMjwKh vbzCCNjI55k971fTssuSNJi7BAZTg0FaQ6HKuJrI6yV4YioiIweACwDvoxSpfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iXSEOuW/G4LKPnAgG5zhtnstjMUy+YV9QP5q3mbjMiU=; b=x0fcsA4T9ZhNzLmPBqIwNJJUjCoTjjNKe4JFROw0dezNzul3uasCd7lacb4bGc4wfxw4oe aFAnWtcMq8SIgIhAAz5cdbYAItAKVMbbGaVRz6cOz7edrTi4ls6ASjRa44jBB2vxVwuILG kr+YoBFGzVFrcGnzba7lVKxJ4LEc9PXsc6KRJ/bw67hN8D53uzKQge4OT7jHXjW+4Kyukx UfOdQdovL8DK5ECii5MK+j6b0/PzglbgrlkOhDPjmTtykLDgIA9yItVGu7XSjf4GH0kfTy 4WszSIWEhy6i6V+q+F8kHljXLp9tHwIzPZVg1qIvhBjqm6HJ251S8G5uw9dVEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479588; a=rsa-sha256; cv=none; b=NvqkR0Bq9QwBf50C/xCTt6njjmttZAqGGBoApwhSOycXwoHI/qihYuwHIb0Sz9DfyeyT7C mAmgs8ipaOagfBUDZpHsb7heb5X+22TjL0rs5cHTJEZorahG2+Plf+j5rt2mqmHswM5fkz tIQZWA3J7/Nif7GSlehjkioregBJVUuVZpRIl+SXupBYSH1HpkfafjTAojUaWJsWDYvLQV THrDuS2MIde8WpLKt/f1Zu8R9MB65NfnmDpIbwgeUi+HBJ/HUplOKneLrO/KbjUlyE9d5i q9nBfDpLCmGD4Z3RK49ako5DscPEEYODoBOxbs2DiIbSDru2I5AifovLGmL6QA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Qr5Y9Qz1Rqp; Mon, 21 Oct 2024 02:59: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 49L2xm4i086563; Mon, 21 Oct 2024 02:59:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L2xmtV086560; Mon, 21 Oct 2024 02:59:48 GMT (envelope-from git) Date: Mon, 21 Oct 2024 02:59:48 GMT Message-Id: <202410210259.49L2xmtV086560@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 1b0af7617e6c - stable/13 - Move support of Realtek 8156/8156B from cdce(4) to ure(4) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1b0af7617e6cd25a1fc205f00636c19cbe6f541d Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=1b0af7617e6cd25a1fc205f00636c19cbe6f541d commit 1b0af7617e6cd25a1fc205f00636c19cbe6f541d Author: Li-Wen Hsu AuthorDate: 2024-08-12 04:04:05 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 02:59:36 +0000 Move support of Realtek 8156/8156B from cdce(4) to ure(4) Reviewed by: kevlo, imp, hrs MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45088 (cherry picked from commit 6ea4d95f6c76aa64d2db5c04c87e68dc299544df) --- share/man/man4/cdce.4 | 6 +----- share/man/man4/ure.4 | 9 +++++++-- sys/dev/usb/net/if_cdce.c | 1 - sys/dev/usb/net/if_ure.c | 2 +- sys/dev/usb/quirk/usb_quirk.c | 1 - 5 files changed, 9 insertions(+), 10 deletions(-) diff --git a/share/man/man4/cdce.4 b/share/man/man4/cdce.4 index ec968ea6a0d5..8139546ba3a9 100644 --- a/share/man/man4/cdce.4 +++ b/share/man/man4/cdce.4 @@ -27,7 +27,7 @@ .\" .\" $NetBSD: cdce.4,v 1.4 2004/12/08 18:35:56 peter Exp $ .\" -.Dd February 10, 2023 +.Dd May 3, 2024 .Dt CDCE 4 .Os .Sh NAME @@ -103,10 +103,6 @@ Sharp Zaurus PDA .It Terayon TJ-715 DOCSIS Cable Modem .It -Realtek RTL8156 USB GBE/2.5G Ethernet Family Controller -.It -Planex USB-LAN2500R -.It Huawei 3G/4G LTE (eg. E3372, E5573) and other mobile network devices .El .Sh DIAGNOSTICS diff --git a/share/man/man4/ure.4 b/share/man/man4/ure.4 index 18b68ec9bc8a..942764109dd8 100644 --- a/share/man/man4/ure.4 +++ b/share/man/man4/ure.4 @@ -23,12 +23,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 31, 2016 +.Dd May 3, 2024 .Dt URE 4 .Os .Sh NAME .Nm ure -.Nd "RealTek RTL8152/RTL8153 USB to Ethernet controller driver" +.Nd "RealTek RTL8152/RTL8153/RTL8153B/RTL8156/RTL8156B USB to Ethernet controller driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -90,6 +90,11 @@ Set 1000baseTX operation over twisted pair. The RealTek gigE chips support 1000Mbps in .Cm full-duplex mode only. +.It Cm 2500base-T +Set 2500Base-T operation over twisted pair. +The RealTek 8156/8156B chips support 2500Mbps in +.Cm full-duplex +mode only. .El .Pp The diff --git a/sys/dev/usb/net/if_cdce.c b/sys/dev/usb/net/if_cdce.c index 1aa658df3283..69103a690cac 100644 --- a/sys/dev/usb/net/if_cdce.c +++ b/sys/dev/usb/net/if_cdce.c @@ -282,7 +282,6 @@ static const STRUCT_USB_HOST_ID cdce_host_devs[] = { {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLA300, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC700, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC750, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, - {USB_VPI(USB_VENDOR_REALTEK, USB_PRODUCT_REALTEK_RTL8156, 0)}, {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x16), diff --git a/sys/dev/usb/net/if_ure.c b/sys/dev/usb/net/if_ure.c index 1104798b1c4d..6a4a108985f5 100644 --- a/sys/dev/usb/net/if_ure.c +++ b/sys/dev/usb/net/if_ure.c @@ -483,7 +483,7 @@ done: } /* - * Probe for a RTL8152/RTL8153 chip. + * Probe for a RTL8152/RTL8153/RTL8156 chip. */ static int ure_probe(device_t dev) diff --git a/sys/dev/usb/quirk/usb_quirk.c b/sys/dev/usb/quirk/usb_quirk.c index 91d47935221f..587543c3e43e 100644 --- a/sys/dev/usb/quirk/usb_quirk.c +++ b/sys/dev/usb/quirk/usb_quirk.c @@ -100,7 +100,6 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK(ELSA, MODEM1, 0x0000, 0xffff, UQ_CFG_INDEX_1), USB_QUIRK(PLANEX2, MZKUE150N, 0x0000, 0xffff, UQ_CFG_INDEX_1), USB_QUIRK(CISCOLINKSYS, USB3GIGV1, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(REALTEK, RTL8156, 0x0000, 0xffff, UQ_CFG_INDEX_2), /* Quirks for printer devices */ USB_QUIRK(HP, 895C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), USB_QUIRK(HP, 880C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), From nobody Mon Oct 21 03:01:20 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Sc5QPmz5b6Hl; Mon, 21 Oct 2024 03:01:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Sc4xkfz45pG; Mon, 21 Oct 2024 03:01:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=57Hu9ZGNVPRbXLytXg/3XGDOz23oW7KPKNni9om2fM0=; b=ZzGP8zUmr6Duzukd4oLZoYs5+5RW5cgEyx1UY94DOjHCCjny/v275GEcN3wMgQmu2PTU3i r4YlgUTnBYRdLAQ1CbwxIlQSUZFjGurqDAkrmoVhrKzfu7BOK6WWG/ZvByLMLcRb/Q8n+V BRuUzCHoJNBJ7E06UNWGXJ5sliF5yU0ZHZe6I9FlPSVwvfYHYxVFKuM49QSuYdeChMAsKx hYBgbnpNcH31CrF5Ch5tC5Lq7oDrCaHJdoWooklCuLc+SbpW24HPBOe1tEHnwIRVLgwPJm 8UbBEb2NgOn35qr8dnFHuxz+kLVDU2S+5+UNhWUhvYlV8irdfhQhuRuuWDrcJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=57Hu9ZGNVPRbXLytXg/3XGDOz23oW7KPKNni9om2fM0=; b=ystZYZznZ0wrVegCGNjf7XAwJVjdZQ81sroiZPPDrbqSFy7BpgZYFh7b7sziYNEjpN1BXQ 2fAJGURDdbY1kWVnE6b9AbCR6EL03q0s5oX2nolwNQYq94rL04HLlv/mpUkoFDR+wUrESR RtYNP/LEvB0YfLBpHc8KPuu8IamDrNtlRQfDJPu9t0s94jh6BR2UHnbevs4aHz1qxdxZpt N1/zkeYCIpCk2qEiKp4XeBkWXf7sTrlFMSqDDb7zRZUOGuQLXHXhFegLuPZ2AK81g/2N93 lZ4t93UEtUiIT6FZAbe/bh/ABsYitw16R6Cv3Ppu1UuIAP2a6iUvVly0Utw5IA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479680; a=rsa-sha256; cv=none; b=sEIHXEaPs8EfmpwcCp28wnUUeYJ9Pibz+cAPRRlAeTU5Dsv0C7uxlpzIaGb3IImaV1Xi2o Ju0ZoLqbID7mes0XqLTtgfOwCuYN5tRuIWrrZR+wWRth0i6ITKhVKRJgQbGQ1484jWy+Si 6jo56N6S1jPXeguhAbdILIhK7JJvK4krjfr+8Ox2gzUOyduFGyTUgx0n73nEKMMYuT7bQs avw6cyAWHbCIKmJU7u7IXYbcNhbooLpe+YL14D1Au9yeMbIiIl258EQu6nNFC2BgDOwoSX 7U4kQ7FFTdZUf3EJCBncAqBAQMXJK9lzr1zT/7L42jnkJkFvsFy++II6rzZ30Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Sc4YN7z1Rwq; Mon, 21 Oct 2024 03:01: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 49L31KIi000042; Mon, 21 Oct 2024 03:01:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L31KAK000039; Mon, 21 Oct 2024 03:01:20 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:01:20 GMT Message-Id: <202410210301.49L31KAK000039@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 8303373e398d - stable/14 - msun: Fix typo in comment List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8303373e398d843b859644c6cce0f67f0af96b88 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=8303373e398d843b859644c6cce0f67f0af96b88 commit 8303373e398d843b859644c6cce0f67f0af96b88 Author: Steve Kargl AuthorDate: 2024-08-21 06:59:07 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:00:49 +0000 msun: Fix typo in comment PR: 280965 MFC after: 3 days (cherry picked from commit 213eb102aeec50b8c236aac1d8f0e0a3f9a99449) --- lib/msun/src/math_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/msun/src/math_private.h b/lib/msun/src/math_private.h index eae2a2a317b4..bdf45a9035bc 100644 --- a/lib/msun/src/math_private.h +++ b/lib/msun/src/math_private.h @@ -406,7 +406,7 @@ do { \ * any extra precision into the type of 'a' -- 'a' should have type float_t, * double_t or long double. b's type should be no larger than 'a's type. * Callers should use these types with scopes as large as possible, to - * reduce their own extra-precision and efficiciency problems. In + * reduce their own extra-precision and efficiency problems. In * particular, they shouldn't convert back and forth just to call here. */ #ifdef DEBUG From nobody Mon Oct 21 03:01:22 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX0Sf4ZTwz5b6Ql; Mon, 21 Oct 2024 03:01:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX0Sf3kh2z46KD; Mon, 21 Oct 2024 03:01:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VHbwU7a8U/0e5D+RgchCo/4TZHROHcHlIsjOTmd5E3k=; b=Uefid8QlJluBGOoQXOUcgPXkJJMJx+6PS7oJqJSsqWnH0Lzt1VmRw6P0K6Nq2lBfAOiGLo xS0BxAeuRP7BYm8ay8qiqq2134zAVNInYSM9vZPGTkFkHpCh3bc9RUIUtw5YfbivvZwFXx kF3q+HOOR2AMNiluNempGqIUHV98DYqh7y3LMyG6p9BRloqgpB7NRrvkqrNS032x2cI8LF TD+f5gEZZMo6dtLRZKtV9HuQz/+bU9NdQTZSkRhckdYd+JLamIZHRpSTJjaUk8R8+jr6FH qojMY/YISABvNoWxYEEPYvwURD0GICAdlqqjGBaNIGo6vhZAAtfOw1VRA6vrcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729479682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VHbwU7a8U/0e5D+RgchCo/4TZHROHcHlIsjOTmd5E3k=; b=nzJwKI2FVr56FQq5wIb408o7aE1hSdmoohFN43rhk1lxoJ0NmpWfAd6dHhCUhTzOqJ6sKh URmBvYvFGEW/uz45WEk8FZuGUeOudlaF91ivbH2lkHigKF7Ixo/Jd0n0CeTTe4Z00soXdx C8Q/yeqmVafqBZcu8rdftlyMAtfL0uPaePPIRLLNmboD35CXtDtR2O54AvVzJuywfD2GNm wzqiOkMK01VNzmwMttKNRZSJf4Nbdwk4QE3JmivVAHO/k+FRps7J+LO+QUxlPPV+B1H75a eHRGhm/fo/lRw1c+Tv3u1Gyn54zjStFczF64aDFei11AvTR3newPRfz/Eas5yw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729479682; a=rsa-sha256; cv=none; b=ozr4b4Xyp0dBZOl8sI63+o67F8ZkZ7TTsOgFhpAYeVxLC7XNc/EKGwrd19nRp7KQwraVqw EN2foIGy5w0Cwbs6DiJjy8muuEM2PviVyWRMlXlDIRl1VL2dvWju73H3l4LbCtCGglrKmL 9Rpx0xXY5fz9QJ1tOYbp8GISUNoZeVq2YpvhNUg9TYWbT1UQXKjo/eHf3y602ILmij2lfs fRG+l4yDVSoW2cRjHys6/M3go7an0OqBPFF2I4s/5Gp+e1JWgT+ju4kTPHIv61oHSeZfvN uIlWWnxByM6zsmR5TFbB59jSC0LsY8FrnO6dcUY5gQ0Dv4gIY1yR1nAwkpov4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX0Sf3L7Kz1RPj; Mon, 21 Oct 2024 03:01: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 49L31MBF000172; Mon, 21 Oct 2024 03:01:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L31MqG000169; Mon, 21 Oct 2024 03:01:22 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:01:22 GMT Message-Id: <202410210301.49L31MqG000169@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 851b781251bb - stable/13 - msun: Fix typo in comment List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 851b781251bb7ef96c0f753d5ab9a667471d399b Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=851b781251bb7ef96c0f753d5ab9a667471d399b commit 851b781251bb7ef96c0f753d5ab9a667471d399b Author: Steve Kargl AuthorDate: 2024-08-21 06:59:07 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:01:01 +0000 msun: Fix typo in comment PR: 280965 MFC after: 3 days (cherry picked from commit 213eb102aeec50b8c236aac1d8f0e0a3f9a99449) --- lib/msun/src/math_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/msun/src/math_private.h b/lib/msun/src/math_private.h index 7d76ffdb8ff4..b71a8d03c0a1 100644 --- a/lib/msun/src/math_private.h +++ b/lib/msun/src/math_private.h @@ -406,7 +406,7 @@ do { \ * any extra precision into the type of 'a' -- 'a' should have type float_t, * double_t or long double. b's type should be no larger than 'a's type. * Callers should use these types with scopes as large as possible, to - * reduce their own extra-precision and efficiciency problems. In + * reduce their own extra-precision and efficiency problems. In * particular, they shouldn't convert back and forth just to call here. */ #ifdef DEBUG From nobody Mon Oct 21 03:32:58 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX19628HWz5b7PR; Mon, 21 Oct 2024 03:32:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1961fcjz48d5; Mon, 21 Oct 2024 03:32:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729481578; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LmWBvaTvyuzQxZnQ9HV/v/hAh49LMpFoywsqjmSKqmU=; b=tFsX4vVxeyBja0W6+QtqZcbHu0PUk3fRgQfpcMHbWjdKWI/6uvd1ZQOTDUIQg/m2Ylf7fW Ho6zixfZ0WVLZbeYzKAnYPikk9GTpKyCVMaDhWklx8Uz9OUNcX6M15O2iDpP7u+4R+o4X8 qtVKd8XkK88kY1tIql/2RYHRK8hma5mSOAnmypbiaONe9ASN6w/qaX4QLEiDEdy35fAtrA nrZQvTgyiaq419CLw6C0tB4mrZzNqJWzVECox2xFAFNbb4CUuxXVjdDAnA0KN9Fe7hOSY5 9d4TO8sK4XBwN52bzZxI4yfeMTSSoJQm0boGsm27b/bzOGcsni679o843Og1Rw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729481578; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LmWBvaTvyuzQxZnQ9HV/v/hAh49LMpFoywsqjmSKqmU=; b=T1CHFoqvROd5xXN9R8GuJ8DvyVrvVEwANyi/FJgQVpmZosqm7wVIWjARr45tPpr7B9Jzlu iYbZeuzawF59BvEwEur+rOjTaHO6DsdJPWCnk0GC6rrZj+gBbYyAn2EBnE8zgj6IZKWc7Q QK1z9OAdhWXY5NqY9U/3DsyK8KSzfW06o4g0IdUlDrDj2CZIBQCz01wuVxOWUkRE1empHP C2TJjKpLDxEiVSA4ZAThe5Wur4BuBa92ux/6PrL84xYOWh8mAO8Hw7t3WafX66EdWIMM7b pDeSGz6A0GtaBne5hCzT9/U8DulUZLk+8OvxLU34oDBce0+j40/aG6aHUqlEzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729481578; a=rsa-sha256; cv=none; b=SBfu7AH7rkzGbg3p46OfmSPHsKs75M/2KfTAwhRpIb12gFOBYGwDMioEW0UkzemCa0A61S 8SFA9B7114CUlCIVXpgnBVw/frygJeAYcwGLf6bgW2M6Es8UVQsQayROObURVtWqafLUDB s12c50f7JRfC/SRvJG9E+jgpcFK9BY//n/yon3i+hrOAJlRuYHxfqxeVAdrKMbQX0gtxO9 cL0aknhcz31tO4nRuKeILt2WXOC4zHX87Zy0whxpgaNB5rFcQcL585frQSHRvlaoT8Bwy1 eWumUtzqz7amkI4xegRniNKky6vxoJF3XtiOFjNhH4Nf7uO+OyfZ8gQ6unEHbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1961FfLzDkg; Mon, 21 Oct 2024 03:32: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 49L3WwVA060880; Mon, 21 Oct 2024 03:32:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3Ww1e060877; Mon, 21 Oct 2024 03:32:58 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:32:58 GMT Message-Id: <202410210332.49L3Ww1e060877@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 45b0537f0ecf - stable/14 - membarrier: Add manual page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 45b0537f0ecf6ea3663f7180ad50fcd8170426ab Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=45b0537f0ecf6ea3663f7180ad50fcd8170426ab commit 45b0537f0ecf6ea3663f7180ad50fcd8170426ab Author: Ed Maste AuthorDate: 2024-10-06 17:47:34 +0000 Commit: Ed Maste CommitDate: 2024-10-21 03:32:46 +0000 membarrier: Add manual page Add a minimal membarrier man page that documents the available cmd values and errors that can be returned. We can add more information and iterate on it in the tree. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46967 (cherry picked from commit 1fc766e3b41d0cdbd166ef95258434069a90ca52) (cherry picked from commit 92cd5abb64dd70c305535c9504c6a2b73552147f) (cherry picked from commit 8b41e693fc3956385d5771d60ee93e18001a5a0d) --- lib/libc/sys/Makefile.inc | 1 + lib/libc/sys/membarrier.2 | 151 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 152 insertions(+) diff --git a/lib/libc/sys/Makefile.inc b/lib/libc/sys/Makefile.inc index 33c0b9711d46..e964e3dcff26 100644 --- a/lib/libc/sys/Makefile.inc +++ b/lib/libc/sys/Makefile.inc @@ -244,6 +244,7 @@ MAN+= abort2.2 \ listen.2 \ lseek.2 \ madvise.2 \ + membarrier.2 \ mincore.2 \ minherit.2 \ mkdir.2 \ diff --git a/lib/libc/sys/membarrier.2 b/lib/libc/sys/membarrier.2 new file mode 100644 index 000000000000..87db620975ef --- /dev/null +++ b/lib/libc/sys/membarrier.2 @@ -0,0 +1,151 @@ +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 The FreeBSD Foundation +.\" +.\" This documentation was written by Ed Maste +.\" under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 6, 2024 +.Dt MEMBARRIER 2 +.Os +.Sh NAME +.Nm membarrier +.Nd memory barrier +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/membarrier.h +.Ft int +.Fn membarrier "int cmd" "unsigned flags" "int cpu_id" +.Sh DESCRIPTION +The +.Nm +system call provides a memory barrier, ensuring ordering between memory +accesses performed by different threads or processes within the same address +space. +.Pp +The following values for +.Fa cmd +may be specified: +.Bl -tag -width Dv +.It Dv MEMBARRIER_CMD_QUERY +Query supported commands. +A bitmask of commands supported by the kernel is returned. +.It Dv MEMBARRIER_CMD_GLOBAL +Issue a memory barrier for all threads from all processes. +.It Dv MEMBARRIER_CMD_SHARED +This is an alias for +.Dv MEMBARRIER_CMD_GLOBAL . +.It Dv MEMBARRIER_CMD_GLOBAL_EXPEDITED +Execute a memory barrier on all running threads of all processes registered +with +.Dv MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED . +.It Dv MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED +Register the process to receive +.Dv MEMBARRIER_CMD_GLOBAL_EXPEDITED +memory barriers. +.It Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED +Execute a memory barrier on each running thread belonging to the same process +as the thread calling +.Nm . +.It Dv MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED +Register the process to receive +.Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED +memory barriers. +.It Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE +In addition to the guarantees provided by +.Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED +it also executes machine-specific serialization instructions, which +ensures that all possible speculative and out-of-order activities on the target +CPU are fenced. +.It Dv MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE +Register the process to receive +.Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE +memory barriers. +.El +.Pp +The following +.Fa cmd +values are defined for source compatibility but are not yet supported: +.Pp +.Bl -tag -width Dv -compact +.It Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ +.It Dv MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ +.El +.Pp +The +.Fa flags +argument must be 0. +The +.Fa cpu_id +argument is ignored. +.Sh RETURN VALUES +If the +.Fa cmd +is +.Dv MEMBARRIER_CMD_QUERY +a bitmask of supported commands is returned. +Otherwise, on success, +.Nm +returns 0. +On error, -1 is returned and +.Va errno +is set to indicate the error. +.Sh ERRORS +.Nm +may fail with the following errors: +.Bl -tag -width Er +.It Bq Er EINVAL +.Fa cmd +does not specify a valid command. +.It Bq Er EINVAL +.Fa flags +is not 0. +.It Bq Er EPERM +An attempt was made to use +.Dv MEMBARRIER_CMD_GLOBAL_EXPEDITED , +.Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED , +or +.Dv MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE +by a process that did not previously register use with the corresponding +.Dv MEMBARRIER_CMD_REGISTER_* +.Fa cmd . +.El +.\" .Sh SEE ALSO +.Sh STANDARDS +The +.Nm +system call originated in Linux. +This implementation aims to be source-compatible with the Linux implementation. +Certain +.Fa cmd +and +.Fa flags +values are currently not supported by +.Fx . +.Sh HISTORY +The +.Nm +function was introduced in +.Fx 14.1 . From nobody Mon Oct 21 03:51:47 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1Zr0mdYz5b8Jm; Mon, 21 Oct 2024 03:51:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1Zr0Fy9z49nT; Mon, 21 Oct 2024 03:51:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xnPGnKGv/eIlCdGMqh5kEmEDbUQchaf1onq8T17Zm8Q=; b=ZOo5CRuGFTvt4eL99cvY2wAPq3/JmL1BOBSPB1QG0tTWNbp694Ri/xlCPCK6Inn+A+nI+W YC6Gst8UWSeWogoBXXvoVR2w/tmxvuBqfalHazg9XYxlyVvo3ZyqF1dwUD7laHeGEEtxQW /xmqK85A0fx8LZRnXybke2vvNRGuNicUb1UB77smzOUk/43B69IxPkeQ6rEYkrYrtz9yD0 sF+tPD7l3uwzR3+pVfOrn4pA621HuAyFOCbAhUIDq2w9hhzC2gCo7P/4FiDBV+M85liA+s /XkMGn0I3GMj/qctb4IaRgVgALNMwiGmakRlgeQ2JXL5KlTDRRVAWjQLJN/4yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xnPGnKGv/eIlCdGMqh5kEmEDbUQchaf1onq8T17Zm8Q=; b=m9l06w5AhuEASAtMSZ15jiHHqab595UaFbiK4ltsZHq3/+ecH05II1z6XxnV2EPm3JjjpV gOfh9yk+Mh9cblhoEYjZkgxL3LDYjNHnx5lEKmyWylciNlrwOwlWVI1iOue+GYT/unRxqo ccyXtzZ6hwfbUgRK0xOMpqdKXEzMW+APRMIoxBBU7Z2k+3TV+iSNT6nJqRicp5sSnTTU7p ccov7wR+5MtgCoQROaUxYvVBMGaH/Bd3go4YlPrO+1NKvREfSuHeYeoXiOuLOrOruszaXp xI3ajjpmN3nYpMBLz2iMpcPFVP8VUTN1bth40SId4pLjGUFc5IpUH8pfvsr+kw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482708; a=rsa-sha256; cv=none; b=VyIV5+03GLPrFmlzKxBjhOk4HvntW7RMQw7AJ5lE+XWwDEtyFiwqgFbXB6ZesB94FJ57iM zc01MjTwgCiGON+ySX/egmN858rIumCrjHA7mBGfKQsqGyy00NebmQgosi81wiNenjiyRu tEK2Mos6lLjclHF6zBZ2zg0L7na/tS3dcCO4k2QzVncW1trsXr8In+w5cfAee4WpJKUj3J IyKcXIkKMPQSlhJkyXYwFJytu0EvX4mBu+mrulPH/Ux7A6D3EL0jPoqOVa9vAc5z/ZE99D b/AeFFfrxaofh3sUnYj7snePMt6ZLajFbwPJGlV8BfkHzYrAvT2zoB4Gddbycg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1Zq6z80zFMZ; Mon, 21 Oct 2024 03:51: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 49L3plNx091417; Mon, 21 Oct 2024 03:51:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3pl42091414; Mon, 21 Oct 2024 03:51:47 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:51:47 GMT Message-Id: <202410210351.49L3pl42091414@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: b50ddfd6ea7a - stable/13 - acpidump(8) Fix typo in error message List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b50ddfd6ea7a2348b3e2e8bac77b3c89b7081a34 Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=b50ddfd6ea7a2348b3e2e8bac77b3c89b7081a34 commit b50ddfd6ea7a2348b3e2e8bac77b3c89b7081a34 Author: SHENG-YI HONG AuthorDate: 2024-04-02 17:24:46 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:51:23 +0000 acpidump(8) Fix typo in error message acpidump(8) uses iasl(8) to parse acpi information. MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D44596 (cherry picked from commit 861f5b95b39fd8a6b10b7bddf29e284e5ba2c49a) --- usr.sbin/acpi/acpidump/acpi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/acpi/acpidump/acpi.c b/usr.sbin/acpi/acpidump/acpi.c index 5005c4bbe630..477edd892483 100644 --- a/usr.sbin/acpi/acpidump/acpi.c +++ b/usr.sbin/acpi/acpidump/acpi.c @@ -2233,7 +2233,7 @@ aml_disassemble(ACPI_TABLE_HEADER *rsdt, ACPI_TABLE_HEADER *dsdp) goto out; } if (status != 0) { - fprintf(stderr, "iast exit status = %d\n", status); + fprintf(stderr, "iasl exit status = %d\n", status); } /* Dump iasl's output to stdout */ From nobody Mon Oct 21 03:52:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1bC3qssz5b8Lq; Mon, 21 Oct 2024 03:52:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1bC3Dqzz4CS3; Mon, 21 Oct 2024 03:52:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WIlPrMYtOc3eMAad09MZjhJGzeMhp6LSDF06KZMUROQ=; b=OVKsA9mjI38yR0bnPbzdW3KOjzX5oyeuQwh6gUAdkJGhcc2kijGOqs8y/doirq3zjSbUTJ Xrz/Rxhpu1BSjZuqClZhkkC8McgFiFQVYdVh2LpPjupkZI3Wi5SUcOPp63Vm7MNdpLIeV4 u2Fe+WtXjjSYgvylmX3LE+APG7zAA8YwzMg+VEZGi0Y1U/GqMxqh2YlBdxEt2+kSIKDEpu SJQQqK2howmGWiR2xpMxORdYHyG74GDyXHgAhFbYLammPXj7ocTBrmLO9/CmTf4U2nYvCh AA3kXDOEow65/iUask+yx7tm6yGDIhp6kD5PaXFchavswBGc+NCqk4xYHS3Ynw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WIlPrMYtOc3eMAad09MZjhJGzeMhp6LSDF06KZMUROQ=; b=rriL5CXLCdKPRXR3xpbBWJX7GUZiRVc1cfwa6HttOTRE2CJC8CbW26/eDKhyEC2B9rRIq8 7lDOsNoiCzccvTajf7IOH796W2INkcoARYSB8NA0QF7kraOD/4HnPaNLx14CK0bizZFqPl ZnPPN6K9CvBTlnqCLXeU3YcbG4ruZvO401iu0jkmIfpDCk07uqsUtS+p3LMg/N/gACihN2 x4inF1eXbRmx1J5hFqKZnSc73+tqA3Y50UqcLMzxMlDHknRXLsUt80t4OCCaEDrfgDYurh Pc+a1PR3+VsaF6r4xCMrLW90e2AQrM5bm1flD0p29yakQVxNbXmh6SGbNtJc/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482727; a=rsa-sha256; cv=none; b=ozwm/Dyma0f/yOC718xuFwCZ+ZGJJgjG/PDjDqNMaliTiq2j0ZgI7xdDbk88ywxa5X3yep GsEOHCvesCrvx0JS/IMz8Dk3PiXMFN0paIB3Ei2cHF51i04CztOs+EoTICsGmihU/EuKlV l5O2xsXkcNsAb31ZMvrZrIOVsi58vY+/PbYroaTe3cuhrh/XNo6StNM8cKZglwUB1o7XCX UsjN0q5NaCOxLkM60SlIVskl+OtQHdLzD1rTeq+RGPirsUumelqjDBYJUfzHut8LnNXgOW FMIDn1AlfGGpCPh0NnoEPyN3q/5W++BytnHjP0e8y+pFAVafy9xetViuBFYtgg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1bC2rHWzF9W; Mon, 21 Oct 2024 03:52: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 49L3q7qa093929; Mon, 21 Oct 2024 03:52:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3q7ua093926; Mon, 21 Oct 2024 03:52:07 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:52:07 GMT Message-Id: <202410210352.49L3q7ua093926@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 883dd0a0853c - stable/14 - acpidump(8) Fix typo in error message List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 883dd0a0853c5dbc86bf1f319d387e089954a0eb Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=883dd0a0853c5dbc86bf1f319d387e089954a0eb commit 883dd0a0853c5dbc86bf1f319d387e089954a0eb Author: SHENG-YI HONG AuthorDate: 2024-04-02 17:24:46 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:51:57 +0000 acpidump(8) Fix typo in error message acpidump(8) uses iasl(8) to parse acpi information. MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D44596 (cherry picked from commit 861f5b95b39fd8a6b10b7bddf29e284e5ba2c49a) --- usr.sbin/acpi/acpidump/acpi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/acpi/acpidump/acpi.c b/usr.sbin/acpi/acpidump/acpi.c index 7b2e0c5e4d12..af0068649fbb 100644 --- a/usr.sbin/acpi/acpidump/acpi.c +++ b/usr.sbin/acpi/acpidump/acpi.c @@ -2619,7 +2619,7 @@ aml_disassemble(ACPI_TABLE_HEADER *rsdt, ACPI_TABLE_HEADER *dsdp) goto out; } if (status != 0) { - fprintf(stderr, "iast exit status = %d\n", status); + fprintf(stderr, "iasl exit status = %d\n", status); } /* Dump iasl's output to stdout */ From nobody Mon Oct 21 03:54:06 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1dV5KXbz5b8SP; Mon, 21 Oct 2024 03:54:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1dV4mmYz4Cbv; Mon, 21 Oct 2024 03:54:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yl9bajjQ8DIBGqoWiDhbKmUK8nYyq35m1FcebsLAPT4=; b=slLYUapVTkQCaRVlDRkHi0u9IIK9cT1aGDNrdSTvmShARv9h7Ah8dqhM1qf1IXvVsHnY17 7sqeKhPkcvRzO3Vwd7CEhF+WFWVejoRYfT7GTkPJm1ZxnKLDDxyCduWfYMIfgEdw9cOpIW zrHpAmvFD481z58MyicvwI11UnmnkOf2xB5o9Sdxu96DlKySJ/fb1T4sSEjQklRfPjIVKO +KULhhJFN+UPOe67pOTqL3BG/UD8oMnE+Y7jSgNLPhDUyEujMz9rEMrZ1HTKn4PB9j2Vj6 adKgujHqbiXpEzN9Nqk5umB+jKnoS9j1ac+PrqX1QeW4sJKpGOAm/CvRDKF+Yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yl9bajjQ8DIBGqoWiDhbKmUK8nYyq35m1FcebsLAPT4=; b=l6njBrcMwnhQqQEaNZLYYUPAeAEacdXF8J1E22QB1lMo7GrBnGfKVS7tN3lUtcRfnsv0bb 5ueN4MTm7JDNNa2GjH7dlNMzww2vU0Xr2gVr0U9oJEqCkuqpG09tpaO68FFAunEv1kV93A BG9yVs9bwnxbLTDQ0IV12OWgQasjEZb8sjRczPLEfELf32eoXKEuSwNKZGERlG6npevD+K eX5Mr8EiV8lY4EdOAdgw+P7SKBQxfH7HL175HM1XWZjnmfpxSTM1T98y8H5x4QGalAIISW FQdkD09kJX6yKh79mCi91pbuzfvYhdw6f338WnbOaNRGwcxc+x7T9gu04CUVFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482846; a=rsa-sha256; cv=none; b=DHmWfdCLJsfOUhRCJol1aaDZ26yMy/C11UORci6pVzaZzAJcLhJIJ36Q9z+OdiCKoElJ0c 7z8gSbgX9PtjhpW4v0GgGtipaGla+WqgrWYhqC9k5hz+I8RJ7PNJXNy6seTQUNWsMhmVVR kmx7CC4B07NzZFyjMQbA+bXZhNRFfEaPTFn/kv8qjlbegVJTobUWPfsXsWJRJyM+dy9rgt ZsckG00PnjEysJf6mPm1Assa6hS6sYPoFPZ88I5r7th/VN02wb4dKzMPWxW4WEhB+XNHjL gTFW+RLrVhwHkxAonnR6VuzgHZoQibIO1HZlS9GnfyvZWUec/q6LKw7gPXFUyA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1dV4HWrzDcZ; Mon, 21 Oct 2024 03:54: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 49L3s60a098685; Mon, 21 Oct 2024 03:54:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3s6kB098682; Mon, 21 Oct 2024 03:54:06 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:54:06 GMT Message-Id: <202410210354.49L3s6kB098682@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 26325c26eb6a - stable/14 - mt(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 26325c26eb6a90c3e35bd3b3af5bf639687360cf Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=26325c26eb6a90c3e35bd3b3af5bf639687360cf commit 26325c26eb6a90c3e35bd3b3af5bf639687360cf Author: Yu-Hsun Chen AuthorDate: 2023-12-13 11:31:32 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:53:44 +0000 mt(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/931 (cherry picked from commit 452c3e9514cbaaced8997458e34bb07b51c29bc9) --- usr.bin/mt/mt.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/mt/mt.1 b/usr.bin/mt/mt.1 index 5eb584336b2a..fe5506107c99 100644 --- a/usr.bin/mt/mt.1 +++ b/usr.bin/mt/mt.1 @@ -341,7 +341,7 @@ For example, specifying .Fl w Ar 0 will enable all settings except for LBP_W. .It Fl l -List available protection parmeters and their current settings. +List available protection parameters and their current settings. .It Fl L Ar len Set the length of the protection information in bytes. For Reed-Solomon CRC, the protection information length should be 4 bytes. From nobody Mon Oct 21 03:54:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1dc1M2qz5b8kX; Mon, 21 Oct 2024 03:54:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1dc0dctz4Cwm; Mon, 21 Oct 2024 03:54:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CRbGWKGtuvmZv4KeN+KK60R9hYxUsGsyx4bUMT0WFRI=; b=ZKiwHKYxqMadOwQZbMNT2hCZQoPeG/GC7D8yrVNeqo3Mu3q1EmkiXkrcOCOJ0DirviC7cM Hd6yV00ibJ65HXyAe2SY+VWo8KCD8J4L1TfFpq2yGVkZj4joAJTvo1djLMbSeIAY/rpSLC Q0/5YtoRuMhvt2IpZoCbjvPvKYF3fuwS47kKWX5GnVS0h0tJrNUAyXe+haWPbTkDKKwY6y OUzC1ivQdLJExHMGmSwuuuqa8IG4GBGdTFcB4Mvj/17icoOwelFf5sykZ6Mpzwn+hitETX v7NQwJ5rbBH5+r4JIJmm27ymMu0VTusMucWh1b7ninoaMDVVR8AIzkSuHHEAyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CRbGWKGtuvmZv4KeN+KK60R9hYxUsGsyx4bUMT0WFRI=; b=Rqxp3HslIJUdHuBKcmj5R8LUe024V9krkjI8zn9g9pI67SFAi94PXHTxPNaAZl7M2ats5r mpi0gpXOFoaOgrhIK78kqnlJZnz3gPo+iWdxo3L6AmkFS9PDNt6v5uZ1ohkMUYwYHHxEfQ Iz55WB+Otb1Efeo6Z0gC8s04eyOhHixCqldtOgeQDxrHtz6xlwb6xiinIBkrZCmahrYTTn Q5zEzWji0V84GYXz73uv58smwfmh4c0bDLDY64Wjr8kJ3vhw2GyD3Ir6URTt3axXS6dpmE X2n4dZTftPHXwxmS9CRuzIZZPEUtCxtwTkcsShIWdlBsQ3PpTxQ2vGjEK6i+vg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482852; a=rsa-sha256; cv=none; b=L2G2bkJUdlNSJbg/+zwJOYQ/9q4gThFd8WiI+Lbx26kZJCcmD1JM/glmWS//Iks0YN5V3+ EiFmvRGJqCAvJNFKN0M7r43XvGwrNCSAYkIbcFtE+l9MURYV1Gmem4Tbd40+IQaF2DsKJf /9A4MS6je1AeyFZH/hY1ZPtH3mLfAo7pjG+Vbu82al4lQck3lITMu5Hu4njGfr6/zM6Y+x YtTRR9XdafrELiJKVdu3DjtAHLB4jEBMkbj0WRKQIcc/0Z5Eyr1DRgaOMgp3S0mmCy5URZ 2gihWRzQuJu+EmjUMnZOgAcotF40eyMHhi3NeT+Nau3dr4GwRs0O6qcxVzf15Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1dc0DMzzDjQ; Mon, 21 Oct 2024 03:54:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49L3sBja098824; Mon, 21 Oct 2024 03:54:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3sBJT098821; Mon, 21 Oct 2024 03:54:11 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:54:11 GMT Message-Id: <202410210354.49L3sBJT098821@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 7bf9f37da071 - stable/13 - mt(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7bf9f37da071cc8fcc6e29ec82b4514d9376afda Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=7bf9f37da071cc8fcc6e29ec82b4514d9376afda commit 7bf9f37da071cc8fcc6e29ec82b4514d9376afda Author: Yu-Hsun Chen AuthorDate: 2023-12-13 11:31:32 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:53:49 +0000 mt(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/931 (cherry picked from commit 452c3e9514cbaaced8997458e34bb07b51c29bc9) --- usr.bin/mt/mt.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/mt/mt.1 b/usr.bin/mt/mt.1 index 5eb584336b2a..fe5506107c99 100644 --- a/usr.bin/mt/mt.1 +++ b/usr.bin/mt/mt.1 @@ -341,7 +341,7 @@ For example, specifying .Fl w Ar 0 will enable all settings except for LBP_W. .It Fl l -List available protection parmeters and their current settings. +List available protection parameters and their current settings. .It Fl L Ar len Set the length of the protection information in bytes. For Reed-Solomon CRC, the protection information length should be 4 bytes. From nobody Mon Oct 21 03:55:01 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1fY2ccVz5b8kl; Mon, 21 Oct 2024 03:55:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1fY1z7jz4DB9; Mon, 21 Oct 2024 03:55:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HZ279tx3ZoCvGwLpTklCChnIFtm3oMZD+ZbbDpSKM8I=; b=dLkG7qGLwD96nL05Ht9NRBW9ELyy88Im2v+VWYqFL472ejhUMajf47emlpDhfSyGbEU4lm +sJsduO9tm0p+6k8niHHiszgRhS9xh64zFVqr3RIhOVYJ+DD+JNJt6/eTV8mtjQYLRvt5r qpUwJCSWEH9hR8CyFLgGlX+njIgV/VxRj4CdA+Fmk84B6EQRQmE8ney8lPNRoluclxxQyv f85NNQA41EcmXVIxWenfmRAB9rglMEfsvEePTFHrU/P7TJNIsjm6R/2GYkDwN+6yKFLuP+ bNhOgYmlkAm9SEqOKLp1AoMhMeMbpRimnK/dAnrd/TQyvAn+nsWc/pDE8bAm3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HZ279tx3ZoCvGwLpTklCChnIFtm3oMZD+ZbbDpSKM8I=; b=xFtZxzKif//I4JMcqZMNQryxB6pVw/HHNKccotJ0rsxGaAGf4Yg3vF1zkgCh3FsAEzB5n2 e+L4kZ4rJGELG85eqHjrnEiAIqtK6kC7yVY7mpiYmkguRNzLkaf8IYzuD1Yi1URZNRPfTb rGQemnUv9Vdg3pjmD2bcqwo557AZD4bPY+UiFORoDOLWN6nZxEJV4OYxQFwwWSLPmS4BPL rHBUg5aFHwRDL/cld7HiXbrHvF/85K646kLIeDAR9Rp/3tBU+uXWztfrzR4n3LQgdN7S7V GpsvQvjrnEbefPS6aCX0JJt/R1hN6r57IK6H6JBQ445KxOOvyZIe9ttzdZC0qg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482901; a=rsa-sha256; cv=none; b=QBbmLZEhCc9PAcWOnc7tsIYLl1CVsCHwKlL3kWa2eAWXFgp8yZ2jOGi4jVzV0/IxiunydL Ukz4xx8GzFjapZgJ9ruBu7yf+2X2bOOOXEUiMwN5tv0DG8bgOscnCVywR8lFkQwendl/42 B79BcWPmhKIwF2rMtl0BfHjN9zzXlqq4Fcq8X3vFocJEjlIJ/NnHhT58gaUlCEBpE5JksD TzQWVVV/FfSsy0rQcsN4MPox8mrrQH/GmwnNeTXt16x2dj1jN1YdqKon8GddtmkUNzxVMQ 4NgC9ysnR/kBoXtCVHXhRoCmklUnzJiXT+duICP8BK9w3CwaBKl9QfSfZlcGQA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1fY1NgQzFQJ; Mon, 21 Oct 2024 03:55: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 49L3t19l099233; Mon, 21 Oct 2024 03:55:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3t14N099230; Mon, 21 Oct 2024 03:55:01 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:55:01 GMT Message-Id: <202410210355.49L3t14N099230@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 5d12c7fca205 - stable/14 - mkimg(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5d12c7fca2053c813ac2007d2e442cc400824c64 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=5d12c7fca2053c813ac2007d2e442cc400824c64 commit 5d12c7fca2053c813ac2007d2e442cc400824c64 Author: Yu-Hsun Chen AuthorDate: 2023-12-13 11:15:06 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:54:44 +0000 mkimg(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/930 (cherry picked from commit 1a35ead682408aaf5276ded49aa0c6daa7e10672) --- usr.bin/mkimg/mkimg.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/mkimg/mkimg.1 b/usr.bin/mkimg/mkimg.1 index 333b8b8a5ecb..82bbee53a267 100644 --- a/usr.bin/mkimg/mkimg.1 +++ b/usr.bin/mkimg/mkimg.1 @@ -224,7 +224,7 @@ The preferred file extension is ".qcow" and ".qcow2" for QCOW and QCOW2 This file format is a sector by sector representation of an actual disk. There is no extra information that describes or relates to the format itself. The size of the file is the size of the (virtual) disk. -This file format is suitable for being copyied onto a disk with utilities +This file format is suitable for being copied onto a disk with utilities like .Nm dd . To write a raw disk file, either omit the From nobody Mon Oct 21 03:55:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1fh2NqHz5b8VY; Mon, 21 Oct 2024 03:55:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1fh1ghtz4DWF; Mon, 21 Oct 2024 03:55:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BqHTJfTz6dIqxMmw8LdGHJSnhmp663ZcrPSoRz6uw38=; b=NwRvAx9TqR7KR/jdm7B3iX3XPAjrnBEkdpSe6g+bNmIa40/gNNvZ9C6jQ/JYthxaltTH7T ea27xYRy9RvQHuadY+XLgBt7I0qlC/iTlFM52UgVYPjDg/pAwIGXgk1ZviPbUXcB9WUcen ZPStxcntNef6SomtXdEaQHXWgWDb4Vyh6Nm88Au/f9+PX2JkuX+Ystsh8pqfWXaNMLzz+V RIHiffqnCad17zwrcgIupiQgQLzAq4yPiC5/5EyZUteNL939Pq8GjrMdydOyJs0N9djKVa qi/3uGJXryKtwmVmAUTbiPkVQzJblTqv9dRMvZ4TvE22kHi8XGrgtRCapavJPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BqHTJfTz6dIqxMmw8LdGHJSnhmp663ZcrPSoRz6uw38=; b=Lg4ZGb2XP3sLhrVNvY0/HCFYmqFRUGZna3Tsqtjy3GVbvK/iE9WUymqlWFcj7AYTZHANNQ X/Mff5EQLjaRdiRJJkunGxUWWPFOuZNKfA9Q2S8aq/93mJ3IH3dUvb26Ohvf9znGgbH0do q5Hh9iClPzn9foG7HxxDIYdtsV1M6FXzNkvXbXQD13tpLEd9pSoJmy1owEvyZxwcmy3Q2y /+R6p1c1sE6w/T/LOhsl2kvciTwjiJmep/vZPSKpnyXc1kGDY811OGCnbL0hobXc0KvGri EFhrDfb5739Z4aevJBEAxrT8Gu5wsxU1g1krMKIM6PyihQymXMjenIV9xjZtGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482908; a=rsa-sha256; cv=none; b=hlpy86n2tXDdYx7dTUQci2GJT3FK6X8Iz/o5KqvhAlaUBJl68VSWrW5bgJsdmRseeNe40o T7ZhYGLX9SOQN9kpj+Bu0gJ8OyaEzYRsWLe4WNv7dBpsh7HmmCiM6rj6VB9D3/wejlbJYv C4jDBqBx0SZWzRRAFxEtOBiowlSOV8m+f4iQ2GR8zotl4z0J9D0wUJQxJsLriLZf3Pa/VF 1ePBNoY5EyRMhf6VWkaEN2fb+O0QN83VtuuL92mN2tFGv/kRCOueSiqpXr4S6pEGa5a1U2 bdmT3Sdzvy0Ef/Kh8DpqVNE8u10J+yVeGBHX7kXsZMeNNV+SUaAeMcWAhoSEJg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1fg6t7lzFBH; Mon, 21 Oct 2024 03:55: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 49L3t7mO099386; Mon, 21 Oct 2024 03:55:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3t7uu099383; Mon, 21 Oct 2024 03:55:07 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:55:07 GMT Message-Id: <202410210355.49L3t7uu099383@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 6dd7668e77c8 - stable/13 - mkimg(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6dd7668e77c80d6328a1d4a49cb4dd535c2cbb0e Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=6dd7668e77c80d6328a1d4a49cb4dd535c2cbb0e commit 6dd7668e77c80d6328a1d4a49cb4dd535c2cbb0e Author: Yu-Hsun Chen AuthorDate: 2023-12-13 11:15:06 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:54:50 +0000 mkimg(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/930 (cherry picked from commit 1a35ead682408aaf5276ded49aa0c6daa7e10672) --- usr.bin/mkimg/mkimg.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/mkimg/mkimg.1 b/usr.bin/mkimg/mkimg.1 index 333b8b8a5ecb..82bbee53a267 100644 --- a/usr.bin/mkimg/mkimg.1 +++ b/usr.bin/mkimg/mkimg.1 @@ -224,7 +224,7 @@ The preferred file extension is ".qcow" and ".qcow2" for QCOW and QCOW2 This file format is a sector by sector representation of an actual disk. There is no extra information that describes or relates to the format itself. The size of the file is the size of the (virtual) disk. -This file format is suitable for being copyied onto a disk with utilities +This file format is suitable for being copied onto a disk with utilities like .Nm dd . To write a raw disk file, either omit the From nobody Mon Oct 21 03:55:52 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1gX5Nrxz5b8Vd; Mon, 21 Oct 2024 03:55:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1gX4wBfz4DmK; Mon, 21 Oct 2024 03:55:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PyB6LeVOrOFpo0Wq9yHHyrj+0vlBcWXnWpq1bMNP/l4=; b=P40SSfD8ouCBwTjLgHObFXHUPuDF+A9JhjuhE2kYr5xww+YLLpsyysvuKe51RnBPwpd5Mx 2fUA6e2Jc0oZ+ZHZFbfvqvrKMKEe6oCZj5gle6dMYQSDsJDMB+oa6Ou6d75OvR+O1sYcCK ThBuDt2RLSuysvEe5TiRs+6DDwT044QbmD0L0P6p+FD3SD8q7H40YOmmx06mM0kZIJDXv2 Bm6Jo1X2Deb2ZodrmZ1iwcOxiHA4LM+G0wyQHt5taUhOs65DIQgZsrCs9bxhrDBmEIEzn9 AjMsBZ2euWZA9g+ZpOVvfn3n1GpRVeX7eFVAfE77BQBBKzkhyf3b9ko9b9tG9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PyB6LeVOrOFpo0Wq9yHHyrj+0vlBcWXnWpq1bMNP/l4=; b=gihaaGjW+wQKDpuMr6MPCmO1/vLxvY58RSj9HI6dho5aBBEKOB5/lSGK/Imr158RPYa5n/ /NmV/pJNa2UdRyGcJYgs56PEciXq/2WsmGDkPdFPfNCCSNdA/nn0ok/px3a2JR2Lw6JOfc F8PaBzamNL7P3lIgEPcwSAWqsdkzKWmnWlie9KmOHSoBZJJ5hFCSd701R02Bn3lbHgs9tf QCFhFL5SW2mQjvmIjVlq0bTmWOC1bgcBtCFs+LlCfY0KUqvGrSp336GPcUdA4rz6vk70GS 0TnRLWZ8yKJuDMoGM4OzTGT9N7Du/B/K29qvUJugxwsM0jffF1yrXKXctD3PQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482952; a=rsa-sha256; cv=none; b=IE/MYifGtn2z8RuOlDkp33Kb3Vw2ZTYEKUJqh1ORYiC0ISsaCvYItZWOYo3f4B861vmo55 17BagPhx+/ayn+o/J+3RXRO34q33kHtJd1BHQpn1/CNa6mDnEqhKjh3ePfVD3nPjcAe74T alUP9fSyFDTL1HzdIKxqLbDfk8Cav05i5Zhc1GMCLSPo2ROzwLI59h5KA11bs028i/ogs3 lO3HkNKWtw7RO47AtPAbNlkEgHLGFW2tv86A2Z5lgNdWV8/4JNCyTWTneTGjmJubFPf3D6 qx5mWersx4tCy4Vi7D7sJPj0K68pmxBl3NlHcEb3NuuVsku1RdnkICknVvhTVw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1gX4NVJzDmD; Mon, 21 Oct 2024 03:55:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49L3tqDM099769; Mon, 21 Oct 2024 03:55:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3tqgI099766; Mon, 21 Oct 2024 03:55:52 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:55:52 GMT Message-Id: <202410210355.49L3tqgI099766@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 9ce6e243d62a - stable/14 - fstat(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9ce6e243d62a231dff1619dc3a7663cb9ee4e209 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=9ce6e243d62a231dff1619dc3a7663cb9ee4e209 commit 9ce6e243d62a231dff1619dc3a7663cb9ee4e209 Author: Yu-Hsun Chen AuthorDate: 2023-12-13 08:42:22 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:55:41 +0000 fstat(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/929 (cherry picked from commit 0ba51e3b638424597add4212958524c9b750dd7b) --- usr.bin/fstat/fstat.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fstat/fstat.1 b/usr.bin/fstat/fstat.1 index 62307c7d51bf..313454c2a9ef 100644 --- a/usr.bin/fstat/fstat.1 +++ b/usr.bin/fstat/fstat.1 @@ -312,7 +312,7 @@ $ fstat . | awk 'NR > 1 {printf "%d%s(%s) ", $3, $4, $1;}' 2133wd(alice) 2132wd(alice) 1991wd(alice) .Ed .Pp -Create a list of processes sorted by number of opened files in desdencing order: +Create a list of processes sorted by number of opened files in descending order: .Bd -literal -offset indent $ fstat | awk 'NR > 1 {print $2;}' | sort | uniq -c | sort -r 728 firefox From nobody Mon Oct 21 03:55:57 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1gd5YK7z5b8jq; Mon, 21 Oct 2024 03:55:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1gd53Rnz4F1h; Mon, 21 Oct 2024 03:55:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VkkbOU74Myb3v4esbEJT9nY4coMKqXsWXhv4xdUjDyE=; b=CS3Ksx1IjY2omiYORcsAVUOiCTSmw0Pe24xV5vSLeOUM3CgfKLYdlFmHuaRxhWP2WRS2od ltJBcrXf837x43eUR8Vl1n8dF871MZXGqN+7zL1j1L2CGkGVLScDz6Jch22BUy3JeBJpxM XG1N0e9pGy8z34LwMmUq7UE2gXCQAmtvWWetz4rZgpq2tSGdWUWY5eTjIw3bq7pKF7ojzi isG86GVhr4bqNlrns7GsYW/cA3ldk7q4I0/2vKOC2lvlaY/Li/vLOrDMoZLJrZ3JinHYGt 6y/JXbaVxY0ZUHskbbHV0MYQUmDGY3P9y21D7DevnFEtnd3L+PQssQSZtI693w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VkkbOU74Myb3v4esbEJT9nY4coMKqXsWXhv4xdUjDyE=; b=sCmO8A3vaLx9rEGerChtXXFsfN+qHpC8vw72NQi5NSUSbVBxNm9lewbwAnm9/PCFCjAXbd sbmQlf10oE2oEu+34EQsDGbackIvhDR7dBVvcAFhvHaHKOifGO8+w2FJb0vIynAC5oZ7Uv rrF11R/zTXUIOqTVlom0P3mhWFGuDcloO6f+uzQMcD22vuBI469e6V9UueZFr9+mf31QJX n9Wwa1YvY2baK1WLhUqkAo9Ro09+Kbat9T+Z48JCknMycRsEwo32241tFxKUKAEoueYY8Z huvqiFDa5y73NPeEWeobA5wQ03ruEeOIB/u9z7lXxmEDPW6HXbqIhuAKzBkSzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482957; a=rsa-sha256; cv=none; b=dofY5uVdKY+tbzESG1S5tzPHFWtXLFCSMmpSHwMTFsjH6y/ynEnvagXS+EEG3UhtQhI6rd YjOZyEWtiqofVKn42sDJQfKko53VYRe449YHV0LsmF8Pb5DVAWHqyw0MAhPN3ao2IByuHO 2zloqcghBuN1vLbuqZWvoorz1QTlGP1jkyvUsJ/yVQj6RN2eUm9UNaiXWHZhq6BNd7ysvl q6CG4cKJaT4cPgcLVdIQ21IMCPYxniDR/u0V1piAemEcINohhvlOALt+4IfiB0zgh+HfTc MbhGDcb7pOI6YuBSSvoPhabRjjxpZIWb7MXbXyRmbpDyMMJrKxQboyiZ7tpwuw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1gd4V8pzDmF; Mon, 21 Oct 2024 03:55: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 49L3tvTJ099908; Mon, 21 Oct 2024 03:55:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3tvZh099905; Mon, 21 Oct 2024 03:55:57 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:55:57 GMT Message-Id: <202410210355.49L3tvZh099905@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 6f8784e27e21 - stable/13 - fstat(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6f8784e27e21378372f532f65cbdfc346ef322fe Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=6f8784e27e21378372f532f65cbdfc346ef322fe commit 6f8784e27e21378372f532f65cbdfc346ef322fe Author: Yu-Hsun Chen AuthorDate: 2023-12-13 08:42:22 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:55:45 +0000 fstat(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/929 (cherry picked from commit 0ba51e3b638424597add4212958524c9b750dd7b) --- usr.bin/fstat/fstat.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fstat/fstat.1 b/usr.bin/fstat/fstat.1 index 62307c7d51bf..313454c2a9ef 100644 --- a/usr.bin/fstat/fstat.1 +++ b/usr.bin/fstat/fstat.1 @@ -312,7 +312,7 @@ $ fstat . | awk 'NR > 1 {printf "%d%s(%s) ", $3, $4, $1;}' 2133wd(alice) 2132wd(alice) 1991wd(alice) .Ed .Pp -Create a list of processes sorted by number of opened files in desdencing order: +Create a list of processes sorted by number of opened files in descending order: .Bd -literal -offset indent $ fstat | awk 'NR > 1 {print $2;}' | sort | uniq -c | sort -r 728 firefox From nobody Mon Oct 21 03:56:29 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1hF47hDz5b8Yk; Mon, 21 Oct 2024 03:56:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1hF3hl5z4FK1; Mon, 21 Oct 2024 03:56:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sUOtw1VFAXrTM21fvT3w887O4Q8J8R1GCw2l+F8ClUU=; b=P6+EJ79jYKNUDZGjeiMF/RUv/AuHcUVMgKK5uX09Sr2vaFb+8h8DwpijXctXCpT1u7Hclb ei0sU5PIqsd7ddopzoxz2F7qrlF3rNPMIjSU7o4lZfTOi4RYfuQSj60QUM3cFMKv3hqc7y JauzwuG9brlyIYtVj9dSuJIZpe/ewFLbEbe6jm2RRVkU8N51fnSedRoJg8GICzcqihJWJy AjH/zJemRi7U4VdG1yrc6m80591gR+RQNMg/3lc8NfpFJlZaUDWZP7vUJZYDQH/RA515p+ pcF+R3DFxun00k2Dbdji7WIfvx21R8Vdy4DhnTobH4Q10zyeIhcQm0On+JksSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729482989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sUOtw1VFAXrTM21fvT3w887O4Q8J8R1GCw2l+F8ClUU=; b=her4kil2E+wPyVbXYLGMNBaEXW45be/9jQxpcNG4AHXYhss8XE46p0/YAVCrQgtvZfYhwh UPMqLBwIEEpg5qkXx5g6EaU25BwLxAgFCf2xVI5egnQDG1yo3hz0b6bDxs/RAF7/C0Isku sykTbyRA9For9nx+hbZOfuW9M9O7cix0it3UQhaKVxdDqzMMkI3NM7Bib04bdeOonTk+6z t1FhR/mHyzExDnPnRhQYLKfOE95KbQko/E8kSHsNVKQjBs4wDq1FpnDziH+vG/6oWPVNwu fdMyN+cLNRytRDH12v719SrObCEPSCSXE/7r+3kuWfmNU/8nqjWVq4mzODiBZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729482989; a=rsa-sha256; cv=none; b=XdsmkbuN1OuwHTPIASWsaJww++VuVD1fRjuVCnPUZFRQLYkUbR9+Kf4yKS1t2ZOZA+jIjS iEBr5fgh5Acd9GMPVVfeqLHKWYGGdG9jCyFNPUkO4CCLJzLP9QmoIBZewrmxWe9cROrg4C W8sW81IpZLZtlOxelXPF23ZjmBs6/M8I7P51Y0mvk1vDmJJJVqjZMb3wF84vWLPn+wwEga W3+HW2Z9m0UzqxIw+e1zOlexCBsPxBPOuZWE8ti928KDS7T7414xQOrEJss836R+/cqSVa vQWXJbmi/Y9LQgmwOWRsKgROjR/JujEIqGpQ+zxgP+tyMTicOF7D/UMIKfHlPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1hF1qzrzFQL; Mon, 21 Oct 2024 03:56: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 49L3uTnw000239; Mon, 21 Oct 2024 03:56:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3uTM6000236; Mon, 21 Oct 2024 03:56:29 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:56:29 GMT Message-Id: <202410210356.49L3uTM6000236@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: d09fad5ca58f - stable/14 - awk(1): Fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d09fad5ca58f5cb56973b248fb43ec7eaa6c64e5 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=d09fad5ca58f5cb56973b248fb43ec7eaa6c64e5 commit d09fad5ca58f5cb56973b248fb43ec7eaa6c64e5 Author: Yu-Hsun Chen AuthorDate: 2023-12-13 08:40:08 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:56:18 +0000 awk(1): Fix typo This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/928 (cherry picked from commit a2ee3070d80ce06eefe3682f453605422cfbf5b6) --- usr.bin/awk/awk.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/awk/awk.1 b/usr.bin/awk/awk.1 index 34fba1dce57e..65c91738966b 100644 --- a/usr.bin/awk/awk.1 +++ b/usr.bin/awk/awk.1 @@ -811,7 +811,7 @@ to it. The scope rules for variables in functions are a botch; the syntax is worse. .Sh DEPRECATED BEHAVIOR -One True Awk has accpeted +One True Awk has accepted .Fl F Ar t to mean the same as .Fl F Ar From nobody Mon Oct 21 03:57:25 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1jL2hsXz5b8qb; Mon, 21 Oct 2024 03:57:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1jK6ccQz4FVd; Mon, 21 Oct 2024 03:57:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729483045; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EwDhRV3abvO+pVAnicngSPGQlPEe/pKlXDZtKyKU2wI=; b=psEf8YEAC12Gr+PIsKiTdKHLefJHEA/6yWiWHVew6JxgEzbGgS3iVjd+GZJc7TQVS4WlMl wB+FDNcd40ndui8zBAzi6N0oOZBJI7i6yQN9R3xgPKvnSFec3nIZaJh1Zh/DfiptLNu9nx 7e0jENh+YxZoRshpGvjLMxhwv69fjxlEcuBYXtGtLQg/Z/SlNOhVujGBFaY0tgjlcVTksH DYVWhYX9GyalBdf/anEmPn9VvX+Zd492K57AbpPOdOErN1JaRfSBiXbRPw1yWhR62x5Te/ 3uhCn3WCPE/57ix7rAQRWycIMiutyyeIxtWrjBcgdPY1j1XJYZDeW1LJSI5Zsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729483045; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EwDhRV3abvO+pVAnicngSPGQlPEe/pKlXDZtKyKU2wI=; b=HmyFD/2+bTZrdL9d054d+qrQzLTsejq6NRrXo4qVnEs03Wj2p0eqPxRWtnAB8mFlVXWpAX YmBSKEqEghekH+g1lnJDomneVTTkp744FzfC8zCuaMD3Et9Ie5WESrAzsRKs6JPz4vC1Ck 2DmvTfmENXg1tIjYXb4gr3+Eps91vB0+nvE3PEnrB23FlNXXZG8Gqb24qaKblbT7kSySAQ J5Jjg0jlj6SEIOG+aP9EwIgMbR6FwBiLVnGjBIUJmhc+7yccCYLBn1mIE3BMQlFfQPcedj 4HpztCAwZxXys5fNj0Z91/Tr4AcSHp5fO0Fd229udZq4CbOaxaFZRPsByzppgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729483045; a=rsa-sha256; cv=none; b=aHT7Q8RcWsMiHwHV4ogscDzgrgluBJ5fnGW9CC7BkAiH2MG7bjldK0om8y0dcYBE9zS+62 H5K7ZXzlV38ijrfNnQrodmFymDw1oEhSjLEKrp2tcZTbrAzk+cXr/BzjJrm+GbvYuA+3TD pPFTm+7o5u8G8L3+bWbrYJn5TtzBpzhW8owyNS2/CnmrO+VB0UOgJ1hgYTSnCETbPR4emV AASK2c0x3DkLJILxgc9aCRD/XkJN72w5KGzTwPcmS1AeSbwYrKgxfIMcDK7D+pmZFHDtnD 3ifuIKBnMrqCu+QqyoZ8y989cEWSkSf77/M8KQGsS/RwTeLI2bN4CW4OluWDLw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1jK65mvzFQM; Mon, 21 Oct 2024 03:57: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 49L3vPhm000629; Mon, 21 Oct 2024 03:57:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3vP1X000626; Mon, 21 Oct 2024 03:57:25 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:57:25 GMT Message-Id: <202410210357.49L3vP1X000626@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 4f7562588931 - stable/14 - look(1): Correct the example's description List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4f7562588931ab0b7822c15ba1b6e36ab54cebed Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=4f7562588931ab0b7822c15ba1b6e36ab54cebed commit 4f7562588931ab0b7822c15ba1b6e36ab54cebed Author: Raghu Ranganathan AuthorDate: 2023-11-30 12:57:35 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:57:01 +0000 look(1): Correct the example's description Remove an extra 'e' in the example command. It is a prefix, not a typo. This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/913 (cherry picked from commit 7df526eb10c9095e4988e77900f60ba00c42b095) --- usr.bin/look/look.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/look/look.1 b/usr.bin/look/look.1 index aa0cb771fea7..94506a504e34 100644 --- a/usr.bin/look/look.1 +++ b/usr.bin/look/look.1 @@ -97,7 +97,7 @@ utility exits 0 if one or more lines were found and displayed, 1 if no lines were found, and >1 if an error occurred. .Sh EXAMPLES Look for lines starting with -.Ql xylene +.Ql xylen in the file .Pa /usr/share/dict/words : .Bd -literal -offset indent From nobody Mon Oct 21 03:57:28 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX1jN5YJqz5b8Yw; Mon, 21 Oct 2024 03:57:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX1jN4zCGz4Fc1; Mon, 21 Oct 2024 03:57:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729483048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2dr8u7t4mKBZx/VGw7KrFIRlfSsWpB5QjSdhZcKV0/g=; b=q7jbmLK71kBGbMhr/jtC79sR9wuj+Ms/Igip2YsbrwjcbxPL3nJy+hCfNifOMDpyGLP9OE B4gjxZcBLecH2QFGIdYyd1EW4quC6BeSoV2psZo8G3tylQPgSyuUNgsCGwFa8hthv/Iei9 dxedxC8h3q234rUkOWXsAKP8mJpqdBAeiXEVxVO7RNwindb1LV+eajLXP3kSskTWcnqNBA DkuEvR1gToo4UiSbDueCwr6yNZexth0ONMKRHOhrJdbuGnzYkaK1HHBc/o/ipBWiDwQ7q4 k1ZCtTEUK9j+4miEvMWDRGn/R7ReME993kEpTaTh8bMlcqXmeVaDn/GHeOSrVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729483048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2dr8u7t4mKBZx/VGw7KrFIRlfSsWpB5QjSdhZcKV0/g=; b=XVKPZ9LZkCxnKaKBgNxH4wg+upF/UUZU/1zhczamatTWkK3DLvP6VXYNaHpxpQS/Pu4I6R 27WHXXpqLKeVZTpiWagy17/0uRNHQl/27dFalFkndgWQALHgYXys3q5J48lPRMcVoTDVvp rvCsKGiqIH5R57664bVkKvpPH1Jy6TlViXWSvFFQ9gXHe2n6YK2hZymFBp3ixyN0JdIhuJ 6S++Zf9C+R9IIsuYF5i3xn2bZHUfMWg1nHr1RPOt5oFgQAcvr9kUC1mL1jf6Ek/gZhRQbs 0eF5JzrmN/EUm6fRc0zosQ1mxUou8pgq2qOfi658kL7ACESa//G5UUlNZuHdzQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729483048; a=rsa-sha256; cv=none; b=kgICXJodlaUZz3ylvqCe13okGZyaBTZBFv8NcJ8eSmRmbah/JSau29K37835Qs+N6mONJV WWUc7zYlhSh8VS4JBGE+1jge6MFLu4HiR4KjEudPCbvHYUfqSX+TQjuFehNiXI4FuGrSr5 YoJCY76pqCL7X+vL9xCSemanayZvwjoCg9YyO6mSWtviTXrF8duI5YkM2ltNLqQRVxfQho AK/Nm5SQn4E0TlPb5AD0PSlQ9VMGfSWxbsqmgOrmQPFjfHCAMt2nkYwCM/E5bYERlb8/SX UALjdn8j52z9sNKUUZrmzxwVD3zWx+dsBbxMqJtOeDAFfFkobLVkLCq41xbeCA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX1jN4Qh9zDcd; Mon, 21 Oct 2024 03:57: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 49L3vSE9000776; Mon, 21 Oct 2024 03:57:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L3vSdc000773; Mon, 21 Oct 2024 03:57:28 GMT (envelope-from git) Date: Mon, 21 Oct 2024 03:57:28 GMT Message-Id: <202410210357.49L3vSdc000773@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: ee5f0d0b8c2e - stable/13 - look(1): Correct the example's description List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ee5f0d0b8c2eb77572037c72275cd28692befa55 Auto-Submitted: auto-generated The branch stable/13 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=ee5f0d0b8c2eb77572037c72275cd28692befa55 commit ee5f0d0b8c2eb77572037c72275cd28692befa55 Author: Raghu Ranganathan AuthorDate: 2023-11-30 12:57:35 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 03:57:08 +0000 look(1): Correct the example's description Remove an extra 'e' in the example command. It is a prefix, not a typo. This is from the Advanced UNIX Programming Course (Fall’23) at NTHU. MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/913 (cherry picked from commit 7df526eb10c9095e4988e77900f60ba00c42b095) --- usr.bin/look/look.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/look/look.1 b/usr.bin/look/look.1 index aa0cb771fea7..94506a504e34 100644 --- a/usr.bin/look/look.1 +++ b/usr.bin/look/look.1 @@ -97,7 +97,7 @@ utility exits 0 if one or more lines were found and displayed, 1 if no lines were found, and >1 if an error occurred. .Sh EXAMPLES Look for lines starting with -.Ql xylene +.Ql xylen in the file .Pa /usr/share/dict/words : .Bd -literal -offset indent From nobody Mon Oct 21 04:25:10 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX2KL2QBnz5b9dn; Mon, 21 Oct 2024 04:25: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX2KL1w3dz4J5Q; Mon, 21 Oct 2024 04:25:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729484710; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pSQkSj0gGE+RlcyBZcic0d8OhJ2hWFD3IxKx7CkMdYU=; b=u6H35NKya+P9+0vf67webGPC8/ueJKhjY+0DTkhnbus3pWuVAB1CSSEgwzUf88LLwtQMLM DZg7zBfkdY8My5BPGEDoUKFOfgh1egCx6MUrlESSj7WRwy6KzFIoFEsZPlGaCfhU7lsMLm n1PgIo3fpQOiExpZ2DxD1rQ8/bVbOabJBowukvBGwLoPfQYC/MdRPO6bodYV6RsoXNcr8J ACIvA/oHhAOKAqByQyNOFtoEKop5xuh4DPHXnWMHYkkG33KhCfAFKaAMrVKzlToaFgc+V5 h5AJEV529lsFA8N2mULObbnjOzvNN/LY53dh5q30gAwfaIisHCkx6Y59h6TKfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729484710; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pSQkSj0gGE+RlcyBZcic0d8OhJ2hWFD3IxKx7CkMdYU=; b=kyO+3RPNJXejunKD5Oga1R0hnwOreNr6NRXlepgtgKGqW/ck80ub5j8DgRV1ylGENnhL2D lpZajPmVOQQrlKB0Zy9q6AfYzvxIHatGZRcG98NHJyzEyoqZybZUdEjzXRPhBuFl995Gyr Z9hvJvTb7hyX6Uygtlo/EQmJi3xraC6Tbgxr6n7wic/7IOJDA5suK6Kvpk3htR+WHAVqE4 SNZT9PaYEcKYCjGmp9W61mq2N3ysymU9Da1LYEhd0Xw55yBQWpoB1Hbbj9b3idHT/efVIR bGoaD11aN/1DxYFjI0LDvj8M/79T0LT5N+qLWvAcA3oHin1z4hql//JO8fp5pQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729484710; a=rsa-sha256; cv=none; b=viB0k1AOfRl+oXhwfYCksFg3YkssbYT11WI5B6KfArzVOfJ9Ei1DBTEgZaE/n9Rqjd54/1 VQkE8/k7iwKnQ2nCFvzAkbM9kwgsZvT1u4kogEc1prm0oPVshY3Ly1JxGjit7+DiGbcmm4 NvgH6hYn5+GBPTQ5fWIaZh7pUqpybsOHosp5jMYTIp5Evslqr07saYHT+ZW7EOxcd1OpQE 8uJOkMHZTeim4VCI1LI35A6eb1yT3HyqCJG/BlRbD/jk9mMRMEy1SmFagjIGw2kfHs+XXO 9X1TBMuyAk+N7RN3ikKA4RKjb6tljN6FpXrv32+bnFVdK03xdlsIVMz+JyADyg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX2KL1WWxzG1l; Mon, 21 Oct 2024 04:25: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 49L4PAnu055799; Mon, 21 Oct 2024 04:25:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49L4PA38055796; Mon, 21 Oct 2024 04:25:10 GMT (envelope-from git) Date: Mon, 21 Oct 2024 04:25:10 GMT Message-Id: <202410210425.49L4PA38055796@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: adfd9150b92e - stable/14 - ctypedef: Remove `|| true` from localedef command to reveal error sooner List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: adfd9150b92e4f716db302b5ad78788cb5e745a4 Auto-Submitted: auto-generated The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=adfd9150b92e4f716db302b5ad78788cb5e745a4 commit adfd9150b92e4f716db302b5ad78788cb5e745a4 Author: Li-Wen Hsu AuthorDate: 2024-10-15 10:39:31 +0000 Commit: Li-Wen Hsu CommitDate: 2024-10-21 04:24:17 +0000 ctypedef: Remove `|| true` from localedef command to reveal error sooner Reviewed by: bapt MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D47111 (cherry picked from commit 6abd77142153cc0f5ce49f3ffb38bc91f3444fae) --- share/ctypedef/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/ctypedef/Makefile b/share/ctypedef/Makefile index 62b3a719fe57..57b145ed94db 100644 --- a/share/ctypedef/Makefile +++ b/share/ctypedef/Makefile @@ -14,7 +14,7 @@ MAPLOC= ${.CURDIR}/../../tools/tools/locale/etc/final-maps .src.LC_CTYPE: localedef ${LOCALEDEF_ENDIAN} -D -U -c -w ${MAPLOC}/widths.txt \ -f ${MAPLOC}/map.${.IMPSRC:T:R:E} \ - -i ${.IMPSRC} ${.OBJDIR}/${.IMPSRC:T:R} || true + -i ${.IMPSRC} ${.OBJDIR}/${.IMPSRC:T:R} LOCALES+= C.UTF-8 .if ${MK_LOCALES} != no @@ -255,7 +255,7 @@ SYMPAIRS+= be_BY.CP1131.src ru_RU.KOI8-R.src ${t:S/src$/LC_CTYPE/}: $s localedef ${LOCALEDEF_ENDIAN} -D -U -c -w ${MAPLOC}/widths.txt \ -f ${MAPLOC}/map.${.TARGET:T:R:C/^.*\.//} \ - -i ${.ALLSRC} ${.OBJDIR}/${.TARGET:T:R} || true + -i ${.ALLSRC} ${.OBJDIR}/${.TARGET:T:R} .endfor .include From nobody Mon Oct 21 10:00:16 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XX9m05339z5Yn8j; Mon, 21 Oct 2024 10:00:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XX9m04JL5z4vTx; Mon, 21 Oct 2024 10:00:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729504816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgP6lxZgo6fKf6SNvD6OWsVicrWvmfBBKbLOmAwrNhM=; b=Lr39fxOcLeTiIuJ6FJ4JgfL9obfs4mmzSL6zVVBjdu0F/t6INE4CksDoUfAU5WFJRR/fWO 98wGemYLkm/vVpR14p6mNoVkYTAg6jDPIPWRmcd4u0swRmnSoky0H5Hq8ZZYybyH3rAlhq e8rlqq1DcIMFrELe/pbbXN3qVk6x7RXn0SdBsBULoh/5iH+CA2eLXh5NjCW1LR85TCmRTv wd8TrdEj10EOWhBhUgjGmw5NIHMgcE3jjwVFyiza/IH17LZmw2IhRpdQ/AUNORLuX8FmJH 7iZJat5SrztLPIceMKozDySOMvY+LdbTgfs9JOW0z6y6pXD8Yspbjubg43foTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729504816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgP6lxZgo6fKf6SNvD6OWsVicrWvmfBBKbLOmAwrNhM=; b=ye8QRT21W9hsLPOre+lPQpyK6GzdkLP6FQB/EnI9gpTCrEx1Sg9PMFvQb07bjhvjyl3SKA yA+mEMNf2fURE1kd6zkKhrGwMEpgx19Xz9n3YIvJBRdZAYL2odncVFYh+xiYcWuJBkjnVz oUTqmIQaiKR7N+2sKVi2rkRl1A8QP2ondzH5bhuUx2gKHq1Voqz4ursBqoNFaSIInipxyU UsyagIAIisPqA3jBdDvQsgG7STMlB3dgdybGVjnxVNyGyrB9oG8E5FFX/48zkKWM5HG/sz oPYFbIykXREaz/u2LfFEsyyCfQHC6xNlYo4bmOd5hRLpsnfErfu8/IINz334uQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729504816; a=rsa-sha256; cv=none; b=ZHgFExKy6gIlq/Q/ZSgWbNELXynNURFeBCSrY8R8rq1JCQlAYFw0uwgQdZCYD8G8UivfeY s15i2HH90Qomay1G6klOYoIM9eP98wnd9fhWtZpXiTVRE6/uKeOwpAOJwuv0G2Bur6X1xc ks92LeKW4cjSzpSn9P99SQAmork9r3abznL3/w6lLIp/HA53SvJRDwJ6mfwC5o3n9DEgJZ phTT5F8BCKiz8oc9ucyhV47vbMClyajQCHGoyvRVPjq4D2gvQID3pToPByipL+FlUNUyNz +jIzkSeUofg7pmTN+YUuGQt+F01SLDRdTKqLlGC2aUXZ3QRzhpskrAtWyFZFPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XX9m03w2JzPcr; Mon, 21 Oct 2024 10:00:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LA0G5T080067; Mon, 21 Oct 2024 10:00:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LA0GBd080058; Mon, 21 Oct 2024 10:00:16 GMT (envelope-from git) Date: Mon, 21 Oct 2024 10:00:16 GMT Message-Id: <202410211000.49LA0GBd080058@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Piotrowski <0mp@FreeBSD.org> Subject: git: 025535f94525 - stable/14 - rc/tests: Skip oomprotect tests in a jail List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: 0mp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 025535f94525c78202d829eb45d8f1ba7253ba46 Auto-Submitted: auto-generated The branch stable/14 has been updated by 0mp: URL: https://cgit.FreeBSD.org/src/commit/?id=025535f94525c78202d829eb45d8f1ba7253ba46 commit 025535f94525c78202d829eb45d8f1ba7253ba46 Author: Mateusz Piotrowski <0mp@FreeBSD.org> AuthorDate: 2024-10-14 10:28:47 +0000 Commit: Mateusz Piotrowski <0mp@FreeBSD.org> CommitDate: 2024-10-21 09:59:16 +0000 rc/tests: Skip oomprotect tests in a jail oomprotect cannot be used in a jail. Reviewed by: bnovkov, christos, markj Approved by: bnovkov (mentor), christos (mentor), markj (mentor) MFC after: 1 week (cherry picked from commit 6fa42b91ca3f481912af98c4d49c44507eb1b8e1) --- libexec/rc/tests/rc_subr_test.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libexec/rc/tests/rc_subr_test.sh b/libexec/rc/tests/rc_subr_test.sh index 90306de9a8a7..f004354fe52e 100644 --- a/libexec/rc/tests/rc_subr_test.sh +++ b/libexec/rc/tests/rc_subr_test.sh @@ -35,6 +35,10 @@ oomprotect_all_head() oomprotect_all_body() { + if [ "$(sysctl -n security.jail.jailed)" != 0 ]; then + atf_skip "protect(1) cannot be used in a jail" + fi + __name="$(atf_get ident)" __pidfile="$(mktemp -t "${__name}.pid")" __childpidfile="$(mktemp -t "${__name}.childpid")" @@ -72,6 +76,10 @@ oomprotect_yes_head() oomprotect_yes_body() { + if [ "$(sysctl -n security.jail.jailed)" != 0 ]; then + atf_skip "protect(1) cannot be used in a jail" + fi + __name="$(atf_get ident)" __pidfile="$(mktemp -t "${__name}.pid")" __script=$(mktemp -t "${__name}.script") From nobody Mon Oct 21 12:52:45 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXFb14yT2z5Z0fv; Mon, 21 Oct 2024 12:52:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXFb14RgLz4NM5; Mon, 21 Oct 2024 12:52:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=U+oMUC4NQeH0nb7/3XVQ9uVCH4TYvoFL+umCCC2/42I=; b=ccePvzhEzFHguKBflBVq67PBj8fgbR4FDqWc72rYrr/UjBrw7PN+5aJMyTiXdFFJfG6d3d cLytEBd79CtzZFU3h7M4FHVboaV+HM32fcgMclK1QrHCAY+2/dVtzygcDMDyIqkh+eO0+o vT8KFdHzuUsJyy6leyvTM05i0m+oo64rQ4kgHDLS8ASR1GH4X2feI6E8hmS0wQIYrdaGJ0 RYS+8qtEmnj+cHojcfKAEMPjkrSUqloVqqr6ThMwXMzrbX5EzmYIopT+WdcY9RP3yyWYzT 1vhvPQ/EnebuqMKrNhMrLFN/gAPsBwRhKhyem8j2T++SENdmp01gJo0KcmEJ6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=U+oMUC4NQeH0nb7/3XVQ9uVCH4TYvoFL+umCCC2/42I=; b=MSH+3kaGK53C9L2YtqUGlTqZ47UEDwLgG7FFNBXO+1GcTU0hQVXyWejo7YbXC+XFKHEBnd wWk1jqdnB1FNeWYZBGKAVvI7/v55xla2cPy1g8oFjoUH7FTtu/L0PnHjCOgrY+GUPgPcO7 0eyqCIAf+BHbEMoPnGEBfOw1mxETZVAuK7YlirYsi9B/IUGQiTVl/EE8GFcm2ldOMFwz5N vdA5DMH841ZYC5kLu5FCtW4iZZv7vog+4E3bUjA+JQyt55THGC7K/AXdRmtExRXLSsGb0n v6N6H/yboNgfWS+YxI/go24voPdlOXQd/VZHje2cktq9FTPJtLxMLAtbXMMrYw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729515165; a=rsa-sha256; cv=none; b=A2RT66URH8XVQHsog2W65F5YKYA85Trqu8QgoYUsRS+u4kDQvK8G8P/mLY0PWa9jPp0pYa 8Ishb5pKrJD9cMuJfvEAFTu0YBdRvM9wYXGfs8RiJSTQJygdhdOIlOBugSGjVZIV4JDmK6 r6XLKJ0EMr1/ipGmsw/Uidp6FeEuqhub7QJeQI9KlwDlsrPjB9J5Ps5OHevpCMskcpkqKM 2tIFEN1k7ayYnDoH4sO6qPBzXKnr2GK2l8bevpJR3uvPnGqj4lS+9FMUfSlopSlm4LXckd gAOHxbpaBLSQre2kxqzQXefrF8ii1gF2Z0kvJplIqSroRJVK/fJ3Q1VLwMjcxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXFb1439LzXB9; Mon, 21 Oct 2024 12:52: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 49LCqjac003560; Mon, 21 Oct 2024 12:52:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LCqjpQ003557; Mon, 21 Oct 2024 12:52:45 GMT (envelope-from git) Date: Mon, 21 Oct 2024 12:52:45 GMT Message-Id: <202410211252.49LCqjpQ003557@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: f3586d26936c - stable/14 - netpfil tests: skip checksum verification in pft_ping.py List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f3586d26936cbcc5bc13c2c74c9224532e896d13 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f3586d26936cbcc5bc13c2c74c9224532e896d13 commit f3586d26936cbcc5bc13c2c74c9224532e896d13 Author: Kristof Provost AuthorDate: 2024-10-14 12:57:49 +0000 Commit: Kristof Provost CommitDate: 2024-10-21 12:51:36 +0000 netpfil tests: skip checksum verification in pft_ping.py From scapy 2.6.0 it now removes (sets to None) the IP checksum in its defrag code. We typically ask for IPv4 or IPv6 defragmentation, which causes check function failures. Just skip the checksum verificiation here, because we're going to notice incorrect checksums even if the tests don't directly verify it. MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 6b8096fa5f6f81e2959cbb2ca857c4e134273da2) --- tests/sys/netpfil/common/pft_ping.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/sys/netpfil/common/pft_ping.py b/tests/sys/netpfil/common/pft_ping.py index 1abf4f609832..216db4ea6bfd 100644 --- a/tests/sys/netpfil/common/pft_ping.py +++ b/tests/sys/netpfil/common/pft_ping.py @@ -149,12 +149,6 @@ def check_ipv4(expect_params, packet): if dst_address and ip.dst != dst_address: LOGGER.debug('Destination IPv4 address does not match!') return False - chksum = ip.chksum - ip.chksum = None - new_chksum = sp.IP(sp.raw(ip)).chksum - if chksum != new_chksum: - LOGGER.debug(f'Expected IP checksum {new_chksum} but found {chksum}') - return False if flags and ip.flags != flags: LOGGER.debug(f'Wrong IP flags value {ip.flags}, expected {flags}') return False From nobody Mon Oct 21 12:52:46 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXFb23LzKz5Z0jg; Mon, 21 Oct 2024 12:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXFb22qdVz4N2k; Mon, 21 Oct 2024 12:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515166; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QP5niHvf6yFZXFw2B7RQK5W3BXC5iLY8H2czNBbgQ0o=; b=wSQZAizvw+tZ/L6dNihu9lKoJcncWy2R+L2WrBT1lZ14xuc2zc+cPlhE68QW1NwsTGv8ec c626NEV+Xgy/EXfg2id1BufTWjRXXoEhM67HErQCP4bTkdzuJVrS/NATlfu5G2czw0kDzo ZU0W2qpKLQlBVAuE64X2T3CkHnWXSDH9ZTOatUWYEKq7LSRnyGKbR5z3vkrUDadRpP5+ew QVeBcsCgqgZGtDmUA5YrMVu7TvcFkStv+m9OY6QMcHPhYd559S5/Z0qw0RJgM9A53C/ma1 HnXOrt9FsP32/qw+zaxzW8dkwJ51lyZ5ohap/3uYugqxP8fSaKnfqQnOhN8V6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515166; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QP5niHvf6yFZXFw2B7RQK5W3BXC5iLY8H2czNBbgQ0o=; b=Hd4fOuWqZn2302q0U98VEBYRoNTww76NhPPPh96g/iF8kdo6wQB/ZYSS+og7RGvLJVoog3 0yFfqN3tFfA0srIrY9WB5EVVaGcy8fhecfEtK0unrj00d1IU7+VsqeZ7oD6aDDjckrk3kH /DE+FzBYocqf1BMEirJAqIcQ1MF7Qjtd3pXro+nTcePRtXPkDgVbi8bCCKVkcFCwx+e2gf mKCpU278O491K2R0qanqwWP+E2u6C7Ghr7RjWZ5ehs5PotskZIYYuoi7yqe2jFCLT8fjF8 qchcOdCXBMicXSE3KoUS2ClK7oPHnzvrZMIvluiOzkqS0G8vJz5/qRSN1RXAPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729515166; a=rsa-sha256; cv=none; b=FY1YXyYBLchtXWX+0VU9YlJTn624K4AGKhYMMRvBDII6/EpL+2LTRs/bg/B2CS/LZBb6A0 uMJIghcBoZQcdBMUXlyHsRbijiKea945/KXj0w9rczwQpeRfdUpET3B3P7HzLaJG1QG3EV EBO3AEixBzFRXEAc7YwWN79XS9wv0t2BCUISgbfKPoLHzTYznEO3pkJTuz/4G+2Umw4R2b ZUSbEe5+PDGCAQRFgNCf89SlJ0fGuunY55Yq/O6YAg/mKYulm8pwm5XbTx+mkdLfBw8C3U ulIOktXTlVTLRL/SrzTyStOKdTojTHNlcEgeIKHdf5B/I1p7Y2HV8Xjl3E26TA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXFb22R7MzX0b; Mon, 21 Oct 2024 12:52: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 49LCqkvB003668; Mon, 21 Oct 2024 12:52:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LCqkAU003665; Mon, 21 Oct 2024 12:52:46 GMT (envelope-from git) Date: Mon, 21 Oct 2024 12:52:46 GMT Message-Id: <202410211252.49LCqkAU003665@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 48a202f5b219 - stable/13 - netpfil tests: skip checksum verification in pft_ping.py List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 48a202f5b2190f89c4a755c36155a054b721a19e Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=48a202f5b2190f89c4a755c36155a054b721a19e commit 48a202f5b2190f89c4a755c36155a054b721a19e Author: Kristof Provost AuthorDate: 2024-10-14 12:57:49 +0000 Commit: Kristof Provost CommitDate: 2024-10-21 07:34:13 +0000 netpfil tests: skip checksum verification in pft_ping.py From scapy 2.6.0 it now removes (sets to None) the IP checksum in its defrag code. We typically ask for IPv4 or IPv6 defragmentation, which causes check function failures. Just skip the checksum verificiation here, because we're going to notice incorrect checksums even if the tests don't directly verify it. MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 6b8096fa5f6f81e2959cbb2ca857c4e134273da2) --- tests/sys/netpfil/common/pft_ping.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/sys/netpfil/common/pft_ping.py b/tests/sys/netpfil/common/pft_ping.py index 380b92a662c7..9f5aae08888e 100644 --- a/tests/sys/netpfil/common/pft_ping.py +++ b/tests/sys/netpfil/common/pft_ping.py @@ -137,12 +137,6 @@ def check_ipv4(expect_params, packet): if dst_address and ip.dst != dst_address: LOGGER.debug('Destination IPv4 address does not match!') return False - chksum = ip.chksum - ip.chksum = None - new_chksum = sp.IP(sp.raw(ip)).chksum - if chksum != new_chksum: - LOGGER.debug(f'Expected IP checksum {new_chksum} but found {chksum}') - return False if flags and ip.flags != flags: LOGGER.debug(f'Wrong IP flags value {ip.flags}, expected {flags}') return False From nobody Mon Oct 21 12:52:46 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXFb25xZfz5Z0QF; Mon, 21 Oct 2024 12:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXFb25RMjz4NRm; Mon, 21 Oct 2024 12:52:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515166; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VIdJ8NWKT1/MzzEUxrfj7F+AH/K7HbdovFdaKeSFvl4=; b=COs8PeQUnZBhWiYheNJZRkkXDpK5iAdmMzNrYJNNPa1b9xIY/15iKjju3l6bjq+85mcnDl 8ltIyrGgAKoIoXnPj6BgXFGntC/MZNUVJtBSggf0FohKkhls9Kq9/jO7krVsOjrEJuDVIk mBzTiA/tZbte6V7ApKMrLWQDfhJvUF8OZVw40QOCgse3Pp/VD97QEAb9OFd3pWK0aYCPR8 3TWXocR50seOk14noEU9IPAP6WDVloT9Arfins2vXU2dcQ6TtBolnrxFnU9TueSsZBqupW vEmBivFrKynK0QIWtDneByV9NTgFi9cWpGy/emJ/0qIn8NpLSH4fYa6DWOoxJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515166; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VIdJ8NWKT1/MzzEUxrfj7F+AH/K7HbdovFdaKeSFvl4=; b=l3gI3HfsGzpuJvg2Jo4J8m/gIoLDffmJq5/HFVhBTcrrQpT5AcwhmFegaJpwkZztPYbvxQ moRMpJj+Sw86y6Qkt4JNZMmMbhKJGotvdNWsm5gK95nKe2WLyTjfR52F496dvH963ebOLk Johq8p6JMK8UYNIZLcUyr4Axi7tdocNxRM81Ox6TEF0FjsRKqvT5ZZoJfg4kegMAsG9IyG yYtuGuIgV7v0GfDjFHSpqD5w9DyYHG1JJUUxZrppS6xrgbd6exhf6LCP7OMDKgDPMWb5UM D+Lv6j3fOeCxT+s8dX0lThQ0mpFTrio9uwQyXiS8bD+WXGoNwZA19DGdtmcx7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729515166; a=rsa-sha256; cv=none; b=Wpd0Qny/mlQ/CYA4850x1KPWMebynUcCRCcJbI/LaBg3WAoSnhJqA1ifVw389HjZAVPQQi XHIASA7hivEYOqN9STk8eOeN7ZrxAdke9NbNrAg6+vPD96YZdzznKTcFBbzVWidnA/TM+1 6QdYhCXbA+V9QTsel0nq1RL5hW5XOEPdQCwQQWXHk9gt6vu+BWocdkKlw2VxSuahIDLcNJ nqsCWT8kf9t6cyfxjINJAB5yikci6to4h/xMwm0HBifQhMK/tXwO7Yk99iSYg1bY07/pr3 lKwNcJ60ZAmD57row+bIRAo5eghppAzDg7pAgArgwVZbAPkTCdXkJAMVcx3YQQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXFb251yBzWxp; Mon, 21 Oct 2024 12:52: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 49LCqkIK003710; Mon, 21 Oct 2024 12:52:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LCqklg003707; Mon, 21 Oct 2024 12:52:46 GMT (envelope-from git) Date: Mon, 21 Oct 2024 12:52:46 GMT Message-Id: <202410211252.49LCqklg003707@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: d261971e7d58 - stable/14 - ping tests: fix for scapy-2.6.0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d261971e7d58dcdd28bb18fd768ff028d90a6b9a Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=d261971e7d58dcdd28bb18fd768ff028d90a6b9a commit d261971e7d58dcdd28bb18fd768ff028d90a6b9a Author: Kristof Provost AuthorDate: 2024-10-16 07:57:06 +0000 Commit: Kristof Provost CommitDate: 2024-10-21 12:51:36 +0000 ping tests: fix for scapy-2.6.0 Scapy 2.6.0 now appears to parse the IPOption during construction, and it then gets confused at a single-byte option. IP Options typically contain at least a 1 byte type and 1 byte length. Avoid this by just returning the raw bytes, rather than an IPOption object. MFC after: 1 week Reviewed by: Jose Luis Duran Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D47151 (cherry picked from commit 2926c2594249f64fecbbdcb0b0b9a3591931ab04) --- sbin/ping/tests/test_ping.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ping/tests/test_ping.py b/sbin/ping/tests/test_ping.py index 3c66e6c54c4d..8ec0f3dc74dc 100644 --- a/sbin/ping/tests/test_ping.py +++ b/sbin/ping/tests/test_ping.py @@ -113,7 +113,7 @@ def generate_ip_options(opts): options = sc.IPOption_SSRR(length=3, routers=routers_zero) elif opts == "unk": ToolsHelper.set_sysctl("net.inet.ip.process_options", 0) - options = sc.IPOption(b"\x9f") + options = b"\x9f" elif opts == "unk-40": ToolsHelper.set_sysctl("net.inet.ip.process_options", 0) options = sc.IPOption(b"\x9f" * 40) From nobody Mon Oct 21 12:52:47 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXFb35hcFz5Z127; Mon, 21 Oct 2024 12:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXFb33tsxz4NGM; Mon, 21 Oct 2024 12:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zzNP8GViXvc+8FmXURGCMiSaJ16aTtZ0zjuKNRBKkUY=; b=ikJmUjik93lk7zVhBLGKXozrzlNIFzr0e6sAZVis+nJrYLqM9vGpIaaJt6VEXAtu5Zcqbn GyVAg4/40H5akdqLCIMjD1y75f5pS2BYJsxV1FcNWGUzJ/79G3EzLqaH5fJ0u6kwdrbrjw NGFxEecapOW1c0gNwAM4++FzRkd+zPXlWJBSrBKKCUetPWYSHOyl3ks2s15vYfFyIldG1m vkz5CC6ZYvsjOMDKqzCGJTCW54skWxMu7qbIIvD8ZeytaH2dVggTmHWs/ELTvVWGkFrraj 0WMIojSaqG3qNnqNRT8AyJuy3wrlUdF06Ffoc52FwiUB3+HV2IC/GjSEGisTpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zzNP8GViXvc+8FmXURGCMiSaJ16aTtZ0zjuKNRBKkUY=; b=gk000BZwNwbNVykF+xjGZQ7/2lDgEO3SvpJP2mfcutfUnGUOIGN3ehWaDTYMMTSICb1wo6 gkFMTTHGjyJQ81XreBy7vQ123XmJmrZVt7Farn97TRx81MQrf/I13ugCPzAVlgY6yrfDZ0 mMUBh/3i7FfD5CSe3/KTCk3uIV0EX+zLRCczl6EHyH/krhDEZOdPac+5HlLmhHHx3FyTjq TZ1w/mVRI1Pxeh+LR74LxACQHc1PpCDWfisZBqvYK9zBBD6lHPzBms/TMSv+Zvirj0PEao fHmTEsVdRHaQ9QKCLm8kxn7peZ8S+mZBV75/QS1GskpmeZ8iuszEen8ugR8maA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729515167; a=rsa-sha256; cv=none; b=HMLQbDWVZgLcL+cROpIa/KKchmm3jLXW2iZNXUa7xuFcupmXDxVUlleUzcF0SrCVoSnJpn qBMLNBgfwkFPgx9OyM15jQEOkfxZPaXd0jkv1g6/It+UqRVcWnI2pTNslxW36ix3prZJ4s n/thboKV5CxpF7Y89zBHcrgWden9nyu7iysV7lAJtkyd4tiMuOyDv2AztF20BEupZJE/vz dZAjGHVCK32GMq+pdCnqxeaJ4WYDfcz1NuTYm58PrOFWzRQUsfD8pPOwZv40xo4J/kWTlf myjtLl010idyrWRE4dOYvekUe1okU8OjyC51dKC9mO/s4Yf1ZMD9PSXosZAEGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXFb33Rg5zWBB; Mon, 21 Oct 2024 12:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LCqlGj003771; Mon, 21 Oct 2024 12:52:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LCqlpI003768; Mon, 21 Oct 2024 12:52:47 GMT (envelope-from git) Date: Mon, 21 Oct 2024 12:52:47 GMT Message-Id: <202410211252.49LCqlpI003768@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 667fd3bf5729 - stable/13 - pf tests: disable epsv for the ftp proxy test List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 667fd3bf5729a3efbbeabe1d52599072f69ec38f Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=667fd3bf5729a3efbbeabe1d52599072f69ec38f commit 667fd3bf5729a3efbbeabe1d52599072f69ec38f Author: Kristof Provost AuthorDate: 2024-10-17 08:17:10 +0000 Commit: Kristof Provost CommitDate: 2024-10-21 07:34:49 +0000 pf tests: disable epsv for the ftp proxy test The update to py-twisted 24.7.0 broke EPSV mode in twisted's ftp server. Work around this by disabling EPSV (and thus using PASV). PR: 282154 MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 9cd6ab45a44607ea862c8bbb2ebaa8a7521178ff) --- tests/sys/netpfil/pf/proxy.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sys/netpfil/pf/proxy.sh b/tests/sys/netpfil/pf/proxy.sh index b112001ef2b4..78ce25930c04 100644 --- a/tests/sys/netpfil/pf/proxy.sh +++ b/tests/sys/netpfil/pf/proxy.sh @@ -74,7 +74,7 @@ ftp_body() # Create a dummy file to download echo 'foo' > remote.txt - echo 'get remote.txt local.txt' | ftp -a 198.51.100.2 + echo -e 'epsv\nget remote.txt local.txt' | ftp -a 198.51.100.2 # Compare the downloaded file to the original if ! diff -q local.txt remote.txt; From nobody Mon Oct 21 12:52:47 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXFb405rbz5Z128; Mon, 21 Oct 2024 12:52:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXFb36TyJz4NJk; Mon, 21 Oct 2024 12:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaBCCleb0JQJFttqcQ03rtofOWJnbdKZD6hoHAovVFs=; b=OXuwvtwMfYyspMh/IhyW68grfXguN/FZ76pK3pPZX3WyfKmvmhJRkaGehAnswvWANkVK4P BiVpGeK5IjIpuLuVI1qpQJ+uG7YGc63kGdyy2UQo/aSElXwxm9YJMgRnZ/vGyTJhybJecT xZBu+bvntQ0kENmLyw7drwG6ZJn8HPuiNueuKwKw1DqT0tkFOrw2THhAceRuklMWyTvWqf Iy81b0+/PcYUwOxEIw4OOH+y/r7uajCNJtcY9kCwz+UbJHwdhqpTub1hzJ/1mNtt+7TiMT jV9h98W1jTvsdVtyDXhhyTq1gKnQcJjOHt0QOzwl832wd09gFZuDfsl7gQBf+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729515167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaBCCleb0JQJFttqcQ03rtofOWJnbdKZD6hoHAovVFs=; b=pn5OGYTlWo8LwnQahA9OvKb9sgIwKn8tOtFagUR5kPfuW4dLdXbNKSyF3XSljnTWNtTuxi kX2PMQ5b74UtC/ADNJ1lF4ptCUvM53Dqs9rcDU3HncYWcjFu5n6gEIjh8+OWHmV2zjimcV lOhTKhSX4uIQERpKN8z2SPD4C2EwiiJ558+z++e5GT+LT0TtXDxEqEs89gOyJBk62EfXiB U+aYs/HB2wmTsTUbfzw2yuT+gImSoEKpL7dMtPR1NfQeI2tTCTAAihFf9kF1uPdqMZK+uv VpOlXf5aHMgoOoRTPe1vpx0flnVBgUuxtnyC9c0n4ZHR8mCyaHTurYIDRCFJCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729515167; a=rsa-sha256; cv=none; b=au/9y0j5n9C8ef1/Md8vCTiXXbS670r74AYrAmunXO8dUIE78STWM35wx12XpK3ZV/T1du dS/MaLr24ijqIJwxBAFcdWGN7+WSSMN2WWt6eWkqj9xnamyqQK3CcfSqCxyUsK3V1I6Yp6 cL4ZbXFkWICQ9cUHjKQjUekeaxfELvOyN5za5KCuzBGq7rohSKXolk7w+VY/fHtrs/S3uU yTrTwajISLrA7/0LlpIdL//okTAop8U5ZIjQSiKhARhri5RiNbgY3GItMA7/q7eVJxHkBJ 2ra0aSw8Ww61joxvr8EzdnUn2r0ICCmXStDRPcI3g3ucArsvyUAhtk/X2KkLdw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXFb3648YzXDj; Mon, 21 Oct 2024 12:52:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LCqlND003825; Mon, 21 Oct 2024 12:52:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LCqlij003822; Mon, 21 Oct 2024 12:52:47 GMT (envelope-from git) Date: Mon, 21 Oct 2024 12:52:47 GMT Message-Id: <202410211252.49LCqlij003822@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: df88800a03fb - stable/14 - pf tests: disable epsv for the ftp proxy test List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: df88800a03fbd5540d6862d1bbc2947c1abea2e0 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=df88800a03fbd5540d6862d1bbc2947c1abea2e0 commit df88800a03fbd5540d6862d1bbc2947c1abea2e0 Author: Kristof Provost AuthorDate: 2024-10-17 08:17:10 +0000 Commit: Kristof Provost CommitDate: 2024-10-21 12:51:36 +0000 pf tests: disable epsv for the ftp proxy test The update to py-twisted 24.7.0 broke EPSV mode in twisted's ftp server. Work around this by disabling EPSV (and thus using PASV). PR: 282154 MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 9cd6ab45a44607ea862c8bbb2ebaa8a7521178ff) --- tests/sys/netpfil/pf/proxy.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sys/netpfil/pf/proxy.sh b/tests/sys/netpfil/pf/proxy.sh index b112001ef2b4..78ce25930c04 100644 --- a/tests/sys/netpfil/pf/proxy.sh +++ b/tests/sys/netpfil/pf/proxy.sh @@ -74,7 +74,7 @@ ftp_body() # Create a dummy file to download echo 'foo' > remote.txt - echo 'get remote.txt local.txt' | ftp -a 198.51.100.2 + echo -e 'epsv\nget remote.txt local.txt' | ftp -a 198.51.100.2 # Compare the downloaded file to the original if ! diff -q local.txt remote.txt; From nobody Mon Oct 21 15:04:58 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWb0fLkz5ZNvy; Mon, 21 Oct 2024 15:04:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWZ6f9Kz4f0m; Mon, 21 Oct 2024 15:04:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b70qfqZW9BN+aYH3DI/xiDY4V4tmdQ75a03wVB/4pcw=; b=WsKO3Hg9yp0siqVAomw69x4WEf8Ukg2pcO6gnyGyZepolMLjq3xCA9iA+83FeuuLrUkmpu KnH7g8wCqkMRbjzYzon8BO43tZKVwFdODbOM5WaUhLMm6pdEFSQ7HCtmvrZpnSkLenuhez z7/WlEz/6GVCoWKaa0yM2mnbxHve8iV38vZWuE5+IOyyF9qspLFlcXfZIDqS3JAAiCIiOT QRbP8gg/CHm8RUTKuzWgMpnDz7OU4oXa+W7iwG/Vd+SQX4MmTz/wJZTBPPogli8Bl/9D4F TGrKgfkI+V6SzbuXIcLbEevkvQE06Ex+2UzC/5Dvcv4yuVPbgPrmyAmL/ZI/kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b70qfqZW9BN+aYH3DI/xiDY4V4tmdQ75a03wVB/4pcw=; b=bOcmtVJE2ztC/4dVMbJXuEh7IpQOnbmehwAqypPgCCZqhO7TgXH9iGt0CX3UFyBMfQN/RO MEnEvEreqG+d/j/W8MWGepugW9gwTtvF0oB9jG3k+hxzT6Ph2C8PWPZdb183236bMpXxEX yoxU1vnw8S6DjbXmY8FEc3MFFaz6uapD0FzQYW6rNh7u7iO2B9KdZHxylQQfm4oxTbmLkv F4szi3ogg4Rfi22RztMN83rDazikyZjTSLUvYIBJ1AuY8Y4q+RM9nubwSkNfDNgonXJ2JG 6aDPoZZvb9jJCHUwXZfrRJwrzVnhEcQPrkVa85F3EEMA/oueSN21/XBFyqHpwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523098; a=rsa-sha256; cv=none; b=hcDF1oru7Id+xq/3CAWG/TNsMmnKx/RPHHpRPcrXCk4GPKF/m5yYB3t7iKdCTsGCNre2Ip I1mkcME52ryymTQNQoEZ7sQPW3QOWdtV+x5e0uCa6McHR7g/MW2fIoNy0xLwnEh+WzB4O3 b6FFKpzQq78J2aDL8T/wYsi68eC8ucO07cfSbKWGl4HYLbHteJ8TMVpIT1bgzLA+ug1k9F ny+mFsn7HxY7Cj6BBdE4SS56zmBj8L8IPFuE9ILiFK3xset9zPdPeARRZYcq0DZ/cKLhkV rd9fbnOtd7zOxAbZRoBKLvjos8fgw+S2ybw75WlhlNPJN1Sqkd/vsW2oxTuaPQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWZ69h1zb1N; Mon, 21 Oct 2024 15:04: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 49LF4wbI046412; Mon, 21 Oct 2024 15:04:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF4wII046407; Mon, 21 Oct 2024 15:04:58 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:04:58 GMT Message-Id: <202410211504.49LF4wII046407@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 11b099f8030b - stable/14 - Add an Armv8 rndr random number provider List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 11b099f8030b4c31af7162b835e7b762b0aa4f08 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=11b099f8030b4c31af7162b835e7b762b0aa4f08 commit 11b099f8030b4c31af7162b835e7b762b0aa4f08 Author: Andrew Turner AuthorDate: 2023-11-15 17:42:02 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 Add an Armv8 rndr random number provider Armv8.5 adds an optional random number generator. This is implemented as two special registers one to read a random number, the other to re-seed the entropy pool before reading a random number. Both registers will set the condition flags to tell the caller they can't produce a random number in a reasonable amount of time. Without a signal to reseed the entropy pool use the latter register to provide random numbers to the kernel pool. If at a later time we had a way to tell the provider if it needs to reseed or not we could use the former. On an Amazon AWS Graviton3 VM this never failed, however this may not be the case on low end CPUs so retry reading the random number 10 times before returning an error. Reviewed by: imp, delphij (csprng) Sponsored by: The FreeBSD Foundation Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D35411 (cherry picked from commit 9eecef052155646fbc5f8f533b952b372572d06a) --- sys/arm64/conf/std.dev | 1 + sys/conf/files.arm64 | 2 + sys/dev/random/armv8rng.c | 135 +++++++++++++++++++++++++++++++++++++++ sys/dev/random/random_harvestq.c | 1 + sys/modules/Makefile | 2 + sys/modules/armv8_rng/Makefile | 11 ++++ sys/sys/random.h | 1 + 7 files changed, 153 insertions(+) diff --git a/sys/arm64/conf/std.dev b/sys/arm64/conf/std.dev index d07ab6c22b7b..42c9fcf03b05 100644 --- a/sys/arm64/conf/std.dev +++ b/sys/arm64/conf/std.dev @@ -53,6 +53,7 @@ device vt_simplefb # Pseudo devices. device crypto # core crypto support +device armv8_rng # Armv8.5 rndr RNG device loop # Network loopback device ether # Ethernet support device vlan # 802.1Q VLAN support diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index fd59014ad461..0fefcca97c6c 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -374,6 +374,8 @@ dev/psci/psci.c standard dev/psci/smccc_arm64.S standard dev/psci/smccc.c standard +dev/random/armv8rng.c optional armv8_rng !random_loadable + dev/safexcel/safexcel.c optional safexcel fdt dev/sdhci/sdhci_xenon.c optional sdhci_xenon sdhci diff --git a/sys/dev/random/armv8rng.c b/sys/dev/random/armv8rng.c new file mode 100644 index 000000000000..3cca42a5bbf3 --- /dev/null +++ b/sys/dev/random/armv8rng.c @@ -0,0 +1,135 @@ +/*- + * Copyright (c) 2022 The FreeBSD Foundation + * + * This software was developed by Andrew Turner under sponsorship from + * the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include + +static u_int random_rndr_read(void *, u_int); + +static bool has_rndr; +static struct random_source random_armv8_rndr = { + .rs_ident = "Armv8 rndr RNG", + .rs_source = RANDOM_PURE_ARMV8, + .rs_read = random_rndr_read, +}; + +static inline int +random_rndr_read_one(u_long *buf) +{ + u_long val; + int loop, ret; + + loop = 10; + do { + __asm __volatile( + ".arch_extension rng \n" + "mrs %0, rndrrs \n" /* Read the random number */ + "cset %w1, ne \n" /* 1 on success, 0 on failure */ + ".arch_extension norng \n" + : "=&r" (val), "=&r"(ret) :: "cc"); + } while (ret != 0 && --loop > 0); + + if (ret != 0) + *buf = val; + + return (ret); +} + +static u_int +random_rndr_read(void *buf, u_int c) +{ + u_long *b; + u_int count; + + b = buf; + for (count = 0; count < c; count += sizeof(*b)) { + if (!random_rndr_read_one(b)) + break; + + b++; + } + + return (count); +} + +static int +rndr_modevent(module_t mod, int type, void *unused) +{ + uint64_t reg; + int error = 0; + + switch (type) { + case MOD_LOAD: + has_rndr = false; + if (get_kernel_reg(ID_AA64ISAR0_EL1, ®) && + ID_AA64ISAR0_RNDR_VAL(reg) != ID_AA64ISAR0_RNDR_NONE) { + has_rndr = true; + random_source_register(&random_armv8_rndr); + printf("random: fast provider: \"%s\"\n", + random_armv8_rndr.rs_ident); + } + break; + + case MOD_UNLOAD: + if (has_rndr) + random_source_deregister(&random_armv8_rndr); + break; + + case MOD_SHUTDOWN: + break; + + default: + error = EOPNOTSUPP; + break; + + } + + return (error); +} + +static moduledata_t rndr_mod = { + "rndr", + rndr_modevent, + 0 +}; + +DECLARE_MODULE(rndr, rndr_mod, SI_SUB_RANDOM, SI_ORDER_FOURTH); +MODULE_VERSION(rndr, 1); +MODULE_DEPEND(rndr, random_harvestq, 1, 1, 1); diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index cb01f7b77195..50aa28dc9851 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -386,6 +386,7 @@ static const char *random_source_descr[ENTROPYSOURCE] = { [RANDOM_PURE_TPM] = "PURE_TPM", [RANDOM_PURE_VMGENID] = "PURE_VMGENID", [RANDOM_PURE_QUALCOMM] = "PURE_QUALCOMM", + [RANDOM_PURE_ARMV8] = "PURE_ARMV8", /* "ENTROPYSOURCE" */ }; diff --git a/sys/modules/Makefile b/sys/modules/Makefile index 45eec38565e2..c7015c61c705 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -41,6 +41,7 @@ SUBDIR= \ ${_arcmsr} \ ${_allwinner} \ ${_armv8crypto} \ + ${_armv8_rng} \ ${_asmc} \ ata \ ath \ @@ -688,6 +689,7 @@ _cxgb= cxgb .if ${MACHINE_CPUARCH} == "aarch64" _armv8crypto= armv8crypto +_armv8_rng= armv8_rng _dpaa2= dpaa2 _sff= sff _em= em diff --git a/sys/modules/armv8_rng/Makefile b/sys/modules/armv8_rng/Makefile new file mode 100644 index 000000000000..29d2907aed06 --- /dev/null +++ b/sys/modules/armv8_rng/Makefile @@ -0,0 +1,11 @@ +# $FreeBSD$ + +.PATH: ${SRCTOP}/sys/dev/random + +KMOD= armv8_rng +SRCS= armv8rng.c +SRCS+= bus_if.h device_if.h + +CFLAGS+= -I${SRCTOP}/sys + +.include diff --git a/sys/sys/random.h b/sys/sys/random.h index 0e6ae02ac078..aa4457fc8c22 100644 --- a/sys/sys/random.h +++ b/sys/sys/random.h @@ -102,6 +102,7 @@ enum random_entropy_source { RANDOM_PURE_TPM, RANDOM_PURE_VMGENID, RANDOM_PURE_QUALCOMM, + RANDOM_PURE_ARMV8, ENTROPYSOURCE }; _Static_assert(ENTROPYSOURCE <= 32, From nobody Mon Oct 21 15:04:59 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWc2GJqz5ZNr8; Mon, 21 Oct 2024 15:05:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWc0LRZz4dxg; Mon, 21 Oct 2024 15:05:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523100; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yobc1XS2/q2qmLbxS8VIAXuFgKcqR4Uz71Dvdc8kcDg=; b=aY4s+HMrR5cZJz5Ebv66wFxLMKU3GdsDNhqhyTiKZxKkJ4En1wPyEh3HCodb0BdfOY30x5 tzEM3ZzcZ6WDuHuZaYOr4GcNy5fwKnWY8uk+lOhMEWaP8iJgKft14OWtPD7kyxH0Dw/dfa Vw0Kg52PnrE82qrPM6iGfb7KpipH5/11XXFOtLa4MibCpBs8thNy3k5gICDxs0wNld9o5r yRxPtnIt9q7fIi7U9AXjGfofLwdVUB9mcCs6YAfDXwcYAtcSibr5KRiBOocDmSb2+9URya X8N/DHab2keULpH5tfdbTrmnjKsb0RA05ohJIPg5TsK/XuEc2wd0wYeUy/Ck7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523100; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yobc1XS2/q2qmLbxS8VIAXuFgKcqR4Uz71Dvdc8kcDg=; b=njipMMI42x+jUvUfMTWH1wu/wNBnYxGa2vS7SPIatJf4EynYiDEPaekeAE2BhFQ/+QqodO ZmwbK+qoyAUF/nYWO0tynUbWyB+MAOLxt15a7aqEAHYA2pvmE8Kgh4j6Dn66hP7LYjSPE0 ipHVyH1avc+1xUt/Xh8klpBMyE4pTfyI8pVQrRVRbOqC89AyhbOwllmOkak52RrkIWuBGn jayGRng8QDKZTQtvq9wVtSDxxiWVMPJuKCt5UF0T2NXcJr+fenpMXGFgt8e32htdFghYeM iJ5Qd7kunmSUku+52qwoRXIjLubxDnCHVq17U+XohY03ymfMIr2Lujfwjd5h3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523100; a=rsa-sha256; cv=none; b=bOKzY/JSivNiQBKUbktIBO8bwY6lXAXfLdRIzQZQe8T5c1HIq5tHd9dlIHFc/oa6H6DI5O /rpheOGKeTUCXSELgPZFc7g4Lv8LtHInSSIn8ZqPJ3ZlTmm14vkL30jgP+RnJ77QauE8ic kmjRoZUZzZ+eRUu+zww7BXOjhiYRh0AYy3zBVr+YBlF6xvy13qjZcIneNoreCbUucCw0ro DJROF/EEN4lq+dstIpDsd3paiZYUVPFmS8P1p8OMffHaBzjhaBEq96aN1K1PGiIjHyIHwz JCxMe2GaKHwscOjY2efh+yqPFecDoD5dBoVh06snUt+X87MqxDmjC57KmaSfFA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWb718dzbDT; Mon, 21 Oct 2024 15:04: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 49LF4xrw046464; Mon, 21 Oct 2024 15:04:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF4xHv046461; Mon, 21 Oct 2024 15:04:59 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:04:59 GMT Message-Id: <202410211504.49LF4xHv046461@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 064adb4ba083 - stable/14 - armv8rng: Don't require toolchain to support FEAT_RNG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 064adb4ba083d00747e3fae6b111545e557ebb1e Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=064adb4ba083d00747e3fae6b111545e557ebb1e commit 064adb4ba083d00747e3fae6b111545e557ebb1e Author: Jessica Clarke AuthorDate: 2023-12-01 23:59:07 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 armv8rng: Don't require toolchain to support FEAT_RNG We have the mechanism in place to support encoding system registers explicitly, so use that rather than requiring LLVM 13+, which breaks our current set of GitHub CI builds. Fixes: 9eecef052155 ("Add an Armv8 rndr random number provider") (cherry picked from commit 9560ac4b638edf688566f576adc65d3654f2240c) --- sys/arm64/include/armreg.h | 9 +++++++++ sys/dev/random/armv8rng.c | 8 ++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index b96d2223eb0b..e6b5d313a3cf 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -2105,6 +2105,15 @@ #define PMXEVTYPER_EL0_CRm 13 #define PMXEVTYPER_EL0_op2 1 +/* RNDRRS */ +#define RNDRRS MRS_REG(RNDRRS) +#define RNDRRS_REG MRS_REG_ALT_NAME(RNDRRS) +#define RNDRRS_op0 3 +#define RNDRRS_op1 3 +#define RNDRRS_CRn 2 +#define RNDRRS_CRm 4 +#define RNDRRS_op2 1 + /* SCTLR_EL1 - System Control Register */ #define SCTLR_RES1 0x30d00800 /* Reserved ARMv8.0, write 1 */ #define SCTLR_M (UL(0x1) << 0) diff --git a/sys/dev/random/armv8rng.c b/sys/dev/random/armv8rng.c index 3cca42a5bbf3..61698bfff820 100644 --- a/sys/dev/random/armv8rng.c +++ b/sys/dev/random/armv8rng.c @@ -59,10 +59,10 @@ random_rndr_read_one(u_long *buf) loop = 10; do { __asm __volatile( - ".arch_extension rng \n" - "mrs %0, rndrrs \n" /* Read the random number */ - "cset %w1, ne \n" /* 1 on success, 0 on failure */ - ".arch_extension norng \n" + /* Read the random number */ + "mrs %0, " __XSTRING(RNDRRS_REG) "\n" + /* 1 on success, 0 on failure */ + "cset %w1, ne\n" : "=&r" (val), "=&r"(ret) :: "cc"); } while (ret != 0 && --loop > 0); From nobody Mon Oct 21 15:05:00 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWd1qv5z5ZNSM; Mon, 21 Oct 2024 15:05:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWd0w6lz4fGS; Mon, 21 Oct 2024 15:05:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523101; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MWEEhdB1PX9iVpYB5N2qhd4dfj7Q/HumZ+3Y0c7ey14=; b=m7fnDVxx2Bi9HlnqzQU6mDnNhFUhOdVd9JfP41EUKN3Q7HVRSLg2fKxUrt47+WgJvikM06 Dug6ic4YVOWeR/RD65OcWEMdj55jlVazz0NV60250+loB1fChliuKqRwYaft7Aw4KOn7mG oASbxh471hTyt9YErCLnUKugxAnG1GPWcqoGB5ZIgazOVgdI5zmby0mAzN6Vp007koZD4+ 1BqVenj3fDJaupPZWKsyopMe7zAJ27+/qyUxN4eK5lqZgcW/FjcmYbfmSOVkalPKKFIkeu rl8/bszhUUgmU5iCwnNQEHVWedMQOTyEmSf9Q6phiAwMa8yxSB0+pWyWoak/LA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523101; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MWEEhdB1PX9iVpYB5N2qhd4dfj7Q/HumZ+3Y0c7ey14=; b=NKPM7CsldwPNHcPx+6JiZyfHDrduKEDlGhX8SAUAs5XlAPpFKa5DaWolW5a9QE8lEw0do8 ET4g6FfvulpizeQNC+B4S3tJpcNgKpY91bMsNEDw4SyMPIKKAJILge9bWYj3Dssm5FvoJG 9SsBeOB1uwL/FMZqJnIAUJxPilL0rMZcZPrre+MDAL8BX4DFmrnxn08GT+M2Z/gUEaSBkq f4hyZbE2uygTAlV/9hoNjcgBhzdbLklf3UG2h5MgaNd/tm6WBNnh36Ce3OQD6oGkZPKZ6+ WDNTHOFVQbjtwMLqfMvL0/984tdT6Vgb04wP4tPHbDyh/x3wB9rZdH7g2596ZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523101; a=rsa-sha256; cv=none; b=wgr1DGonqJFCDJLOrVuWIbxJ+GCY3v181y3xtH2tdJao7Fbx3KITSJH684OP7Y0xTJ3/4j aMUiO2YT57gLh5+gKSfibYWwtqu5x+7PdzfwY0CNM90AjwuyH5+HedYhamjewgn5R7EMSH hy5ys1DjRA6WTS9iHTrO5368hBtquOjhyVyJmfFB5ff/bhkh7QmnDsLJFiydurcNqoczmr xgzG3t51/Oha1H41AMAzRbAWu4zMxUHmqkVXq3D9PAGCmxMTk0AZE43766aLOfCtYOGKF3 vlIuP+Iq29dze1KAwUgacj0KzG4+wp7y4bCg5lEUYaIWdR+n8G1wO+zQzLDtFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWd0NRKzbL7; Mon, 21 Oct 2024 15:05: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 49LF5047046520; Mon, 21 Oct 2024 15:05:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF50Fd046517; Mon, 21 Oct 2024 15:05:00 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:00 GMT Message-Id: <202410211505.49LF50Fd046517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 2f0fe453bc70 - stable/14 - arm64: add CONTEXTIDR_EL1 reg List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2f0fe453bc7052123aa99f2cbc42981682834939 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=2f0fe453bc7052123aa99f2cbc42981682834939 commit 2f0fe453bc7052123aa99f2cbc42981682834939 Author: Zachary Leaf AuthorDate: 2024-05-10 12:47:37 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: add CONTEXTIDR_EL1 reg CONTEXTIDR_EL1 is used in debug and trace features to identify the current process or context. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45173 (cherry picked from commit 4f8ba1c9dd00e0ae20fa161e166715746b6d1c04) --- sys/arm64/include/armreg.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index e6b5d313a3cf..194731c98902 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -218,6 +218,15 @@ #define CNTPCT_EL0_CRm 0 #define CNTPCT_EL0_op2 1 +/* CONTEXTIDR_EL1 - Context ID register */ +#define CONTEXTIDR_EL1 MRS_REG(CONTEXTIDR_EL1) +#define CONTEXTIDR_EL1_REG MRS_REG_ALT_NAME(CONTEXTIDR_EL1) +#define CONTEXTIDR_EL1_op0 3 +#define CONTEXTIDR_EL1_op1 0 +#define CONTEXTIDR_EL1_CRn 13 +#define CONTEXTIDR_EL1_CRm 0 +#define CONTEXTIDR_EL1_op2 1 + /* CPACR_EL1 */ #define CPACR_ZEN_MASK (0x3 << 16) #define CPACR_ZEN_TRAP_ALL1 (0x0 << 16) /* Traps from EL0 and EL1 */ From nobody Mon Oct 21 15:05:02 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWf2g91z5ZNrC; Mon, 21 Oct 2024 15:05:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWf1fCHz4f65; Mon, 21 Oct 2024 15:05:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523102; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HHNMMm+Put0JbiEV2vnPYE0srthOn6JhHH54tD+1I14=; b=BbYh+FPPjUBWzoNN2MiByjzDkq91VV/MOowC7fXc3G9PvBx5Q1UneWjNdObnTu+9yNOc7X BCIyCmyuc2OaiErcq2niWA14vayMprtfElo81RoqknQTKpzye8AOrypsP3m2C6cPAFsZDu ESqyhX3mT4dEtMhMl4MNSKMjR2IUIuWf6ao4rAHZH5+AOsEVv6mexvtuZTa0103CpBrC9i pbzO4QnYjy3H4L9MtORLehApAZPz7Z9HH9crbINAv0HKFFzoWPZ+ehgkO1z2OwNaG+PJRq RTJEu8tB7uEGUuchGAVXcbfAM2bR/4SvUhrphV7p2sDso3vMU6fq2YiK4z8Iiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523102; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HHNMMm+Put0JbiEV2vnPYE0srthOn6JhHH54tD+1I14=; b=NjgJjSs7n6xm7Pwj/FDzieMTMjgevA9ELRGP/kcy5Brxo62NDHmB2NlaQ3NHbX/LuOkvGZ Wgw0yv0jGYCucpw0CEUVgc2Lq/3p+S9c+MGzNO1OnjhX03tZVUplkz2BW96vbuRQ0dMJpy PbWwG09kWTi+mCjqFanGTRPo//OBthy7Iq3ismSrvKneexHzfMZij23g4+xVoH1FJ68l4q FFbbferJ2xVreB8SiBOPnausDJl5Pg8y9nQsQ/hSgNSwrO2I/s67AdIyjmxXvx/z4gUAJQ BM+d8cr7r42aJaSKGMabAd0ZihkyXiTOYBcyiao0PGp4TsC+WplHtaUZ72xJGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523102; a=rsa-sha256; cv=none; b=QKAQNL2GzQOVVlzcZAPxYs6oIfChgdkx+FJ6aP6pWVY5gd9y5MxpJwmRnlBuLrANRN4M9Z eSo+sUQOEmLZdbjnbFaei7Q8GmqpxWE7iZOgBvA5M+JJeeiWybw5c1jcqUmw6li4zSBslG ntcRhypve0qKQhcBxnnEZl7JJAeWbSsmDBoHPASnvtwzM42Pr2EH8csudk8b2OplWfc6Q6 VYlVDyM6Cz1Kas437m87QKM41z1Yi37Mwzut6zdFJNWiTwavOpnSfonpgKUaww+62G3Y97 DrkjwYIxaRkrR2DaZTtP41Omlv5twRhIOl83JHoWUGDgwMClHunWo0HrjHdikQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWf1FdSzb1P; Mon, 21 Oct 2024 15:05: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 49LF52fU046571; Mon, 21 Oct 2024 15:05:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF52a4046568; Mon, 21 Oct 2024 15:05:02 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:02 GMT Message-Id: <202410211505.49LF52a4046568@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 77ea17e63134 - stable/14 - arm64: Add EL1 and EL12 register alt names List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 77ea17e63134172c12f45c7bb83ebc40d09df46f Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=77ea17e63134172c12f45c7bb83ebc40d09df46f commit 77ea17e63134172c12f45c7bb83ebc40d09df46f Author: Andrew Turner AuthorDate: 2024-07-23 09:17:52 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Add EL1 and EL12 register alt names When adding VHE support we may need to access these registers using the _EL12 or _EL1 name depending on if VHE is enabled or not. Add the registers we will likely need to access from VHE so these can be updated in the guest switcher code. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45525 (cherry picked from commit 47361851bc2e292bd7c723ba5f57792a7794f1b4) --- sys/arm64/include/armreg.h | 222 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 222 insertions(+) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 194731c98902..b2ab472dad0d 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -77,6 +77,54 @@ #define UL(x) UINT64_C(x) +/* AFSR0_EL1 - Auxiliary Fault Status Register 0 */ +#define AFSR0_EL1_REG MRS_REG_ALT_NAME(AFSR0_EL1) +#define AFSR0_EL1_op0 3 +#define AFSR0_EL1_op1 0 +#define AFSR0_EL1_CRn 5 +#define AFSR0_EL1_CRm 1 +#define AFSR0_EL1_op2 0 + +/* AFSR0_EL12 */ +#define AFSR0_EL12_REG MRS_REG_ALT_NAME(AFSR0_EL12) +#define AFSR0_EL12_op0 3 +#define AFSR0_EL12_op1 5 +#define AFSR0_EL12_CRn 5 +#define AFSR0_EL12_CRm 1 +#define AFSR0_EL12_op2 0 + +/* AFSR1_EL1 - Auxiliary Fault Status Register 1 */ +#define AFSR1_EL1_REG MRS_REG_ALT_NAME(AFSR1_EL1) +#define AFSR1_EL1_op0 3 +#define AFSR1_EL1_op1 0 +#define AFSR1_EL1_CRn 5 +#define AFSR1_EL1_CRm 1 +#define AFSR1_EL1_op2 1 + +/* AFSR1_EL12 */ +#define AFSR1_EL12_REG MRS_REG_ALT_NAME(AFSR1_EL12) +#define AFSR1_EL12_op0 3 +#define AFSR1_EL12_op1 5 +#define AFSR1_EL12_CRn 5 +#define AFSR1_EL12_CRm 1 +#define AFSR1_EL12_op2 1 + +/* AMAIR_EL1 - Auxiliary Memory Attribute Indirection Register */ +#define AMAIR_EL1_REG MRS_REG_ALT_NAME(AMAIR_EL1) +#define AMAIR_EL1_op0 3 +#define AMAIR_EL1_op1 0 +#define AMAIR_EL1_CRn 10 +#define AMAIR_EL1_CRm 3 +#define AMAIR_EL1_op2 0 + +/* AMAIR_EL12 */ +#define AMAIR_EL12_REG MRS_REG_ALT_NAME(AMAIR_EL12) +#define AMAIR_EL12_op0 3 +#define AMAIR_EL12_op1 5 +#define AMAIR_EL12_CRn 10 +#define AMAIR_EL12_CRm 3 +#define AMAIR_EL12_op2 0 + /* APDAKeyHi_EL1 */ #define APDAKeyHi_EL1_REG MRS_REG_ALT_NAME(APDAKeyHi_EL1) #define APDAKeyHi_EL1_op0 3 @@ -227,7 +275,21 @@ #define CONTEXTIDR_EL1_CRm 0 #define CONTEXTIDR_EL1_op2 1 +/* CONTEXTIDR_EL12 */ +#define CONTEXTIDR_EL12_REG MRS_REG_ALT_NAME(CONTEXTIDR_EL12) +#define CONTEXTIDR_EL12_op0 3 +#define CONTEXTIDR_EL12_op1 5 +#define CONTEXTIDR_EL12_CRn 13 +#define CONTEXTIDR_EL12_CRm 0 +#define CONTEXTIDR_EL12_op2 1 + /* CPACR_EL1 */ +#define CPACR_EL1_REG MRS_REG_ALT_NAME(CPACR_EL1) +#define CPACR_EL1_op0 3 +#define CPACR_EL1_op1 0 +#define CPACR_EL1_CRn 1 +#define CPACR_EL1_CRm 0 +#define CPACR_EL1_op2 2 #define CPACR_ZEN_MASK (0x3 << 16) #define CPACR_ZEN_TRAP_ALL1 (0x0 << 16) /* Traps from EL0 and EL1 */ #define CPACR_ZEN_TRAP_EL0 (0x1 << 16) /* Traps from EL0 */ @@ -240,6 +302,14 @@ #define CPACR_FPEN_TRAP_NONE (0x3 << 20) /* No traps */ #define CPACR_TTA (0x1 << 28) +/* CPACR_EL12 */ +#define CPACR_EL12_REG MRS_REG_ALT_NAME(CPACR_EL12) +#define CPACR_EL12_op0 3 +#define CPACR_EL12_op1 5 +#define CPACR_EL12_CRn 1 +#define CPACR_EL12_CRm 0 +#define CPACR_EL12_op2 2 + /* CSSELR_EL1 - Cache size selection register */ #define CSSELR_Level(i) (i << 1) #define CSSELR_InD 0x00000001 @@ -396,6 +466,22 @@ #define DBGPRCR_EL1_CRm 4 #define DBGPRCR_EL1_op2 4 +/* ELR_EL1 */ +#define ELR_EL1_REG MRS_REG_ALT_NAME(ELR_EL1) +#define ELR_EL1_op0 3 +#define ELR_EL1_op1 0 +#define ELR_EL1_CRn 4 +#define ELR_EL1_CRm 0 +#define ELR_EL1_op2 1 + +/* ELR_EL12 */ +#define ELR_EL12_REG MRS_REG_ALT_NAME(ELR_EL12) +#define ELR_EL12_op0 3 +#define ELR_EL12_op1 5 +#define ELR_EL12_CRn 4 +#define ELR_EL12_CRm 0 +#define ELR_EL12_op2 1 + /* ESR_ELx */ #define ESR_ELx_ISS_MASK 0x01ffffff #define ISS_FP_TFV_SHIFT 23 @@ -536,6 +622,38 @@ #define EXCP_BRKPT_32 0x38 /* 32bits breakpoint */ #define EXCP_BRK 0x3c /* Breakpoint */ +/* ESR_EL1 */ +#define ESR_EL1_REG MRS_REG_ALT_NAME(ESR_EL1) +#define ESR_EL1_op0 3 +#define ESR_EL1_op1 0 +#define ESR_EL1_CRn 5 +#define ESR_EL1_CRm 2 +#define ESR_EL1_op2 1 + +/* ESR_EL12 */ +#define ESR_EL12_REG MRS_REG_ALT_NAME(ESR_EL12) +#define ESR_EL12_op0 3 +#define ESR_EL12_op1 5 +#define ESR_EL12_CRn 5 +#define ESR_EL12_CRm 2 +#define ESR_EL12_op2 0 + +/* FAR_EL1 */ +#define FAR_EL1_REG MRS_REG_ALT_NAME(FAR_EL1) +#define FAR_EL1_op0 3 +#define FAR_EL1_op1 0 +#define FAR_EL1_CRn 6 +#define FAR_EL1_CRm 0 +#define FAR_EL1_op2 0 + +/* FAR_EL12 */ +#define FAR_EL12_REG MRS_REG_ALT_NAME(FAR_EL12) +#define FAR_EL12_op0 3 +#define FAR_EL12_op1 5 +#define FAR_EL12_CRn 6 +#define FAR_EL12_CRm 0 +#define FAR_EL12_op2 0 + /* ICC_CTLR_EL1 */ #define ICC_CTLR_EL1_EOIMODE (1U << 1) @@ -1505,6 +1623,12 @@ #define ID_ISAR5_VCMA_IMPL (UL(0x1) << ID_ISAR5_VCMA_SHIFT) /* MAIR_EL1 - Memory Attribute Indirection Register */ +#define MAIR_EL1_REG MRS_REG_ALT_NAME(MAIR_EL1) +#define MAIR_EL1_op0 3 +#define MAIR_EL1_op1 0 +#define MAIR_EL1_CRn 10 +#define MAIR_EL1_CRm 2 +#define MAIR_EL1_op2 0 #define MAIR_ATTR_MASK(idx) (UL(0xff) << ((n)* 8)) #define MAIR_ATTR(attr, idx) ((attr) << ((idx) * 8)) #define MAIR_DEVICE_nGnRnE UL(0x00) @@ -1513,6 +1637,14 @@ #define MAIR_NORMAL_WT UL(0xbb) #define MAIR_NORMAL_WB UL(0xff) +/* MAIR_EL12 */ +#define MAIR_EL12_REG MRS_REG_ALT_NAME(MAIR_EL12) +#define MAIR_EL12_op0 3 +#define MAIR_EL12_op1 5 +#define MAIR_EL12_CRn 10 +#define MAIR_EL12_CRm 2 +#define MAIR_EL12_op2 0 + /* MDCCINT_EL1 */ #define MDCCINT_EL1 MRS_REG(MDCCINT_EL1) #define MDCCINT_EL1_op0 2 @@ -2124,6 +2256,12 @@ #define RNDRRS_op2 1 /* SCTLR_EL1 - System Control Register */ +#define SCTLR_EL1_REG MRS_REG_ALT_NAME(SCTLR_EL1) +#define SCTLR_EL1_op0 3 +#define SCTLR_EL1_op1 0 +#define SCTLR_EL1_CRn 1 +#define SCTLR_EL1_CRm 0 +#define SCTLR_EL1_op2 0 #define SCTLR_RES1 0x30d00800 /* Reserved ARMv8.0, write 1 */ #define SCTLR_M (UL(0x1) << 0) #define SCTLR_A (UL(0x1) << 1) @@ -2174,7 +2312,21 @@ #define SCTLR_EnALS (UL(0x1) << 56) #define SCTLR_EPAN (UL(0x1) << 57) +/* SCTLR_EL12 */ +#define SCTLR_EL12_REG MRS_REG_ALT_NAME(SCTLR_EL12) +#define SCTLR_EL12_op0 3 +#define SCTLR_EL12_op1 5 +#define SCTLR_EL12_CRn 1 +#define SCTLR_EL12_CRm 0 +#define SCTLR_EL12_op2 0 + /* SPSR_EL1 */ +#define SPSR_EL1_REG MRS_REG_ALT_NAME(SPSR_EL1) +#define SPSR_EL1_op0 3 +#define SPSR_EL1_op1 0 +#define SPSR_EL1_CRn 4 +#define SPSR_EL1_CRm 0 +#define SPSR_EL1_op2 0 /* * When the exception is taken in AArch64: * M[3:2] is the exception level @@ -2220,6 +2372,14 @@ #define PSR_SETTABLE_32 PSR_FLAGS #define PSR_SETTABLE_64 (PSR_FLAGS | PSR_SS) +/* SPSR_EL12 */ +#define SPSR_EL12_REG MRS_REG_ALT_NAME(SPSR_EL12) +#define SPSR_EL12_op0 3 +#define SPSR_EL12_op1 5 +#define SPSR_EL12_CRn 4 +#define SPSR_EL12_CRm 0 +#define SPSR_EL12_op2 0 + /* REVIDR_EL1 - Revision ID Register */ #define REVIDR_EL1 MRS_REG(REVIDR_EL1) #define REVIDR_EL1_op0 3 @@ -2229,6 +2389,12 @@ #define REVIDR_EL1_op2 6 /* TCR_EL1 - Translation Control Register */ +#define TCR_EL1_REG MRS_REG_ALT_NAME(TCR_EL1) +#define TCR_EL1_op0 3 +#define TCR_EL1_op1 0 +#define TCR_EL1_CRn 2 +#define TCR_EL1_CRm 0 +#define TCR_EL1_op2 2 /* Bits 63:59 are reserved */ #define TCR_TCMA1_SHIFT 58 #define TCR_TCMA1 (UL(1) << TCR_TCMA1_SHIFT) @@ -2335,6 +2501,14 @@ #define TCR_SMP_ATTRS 0 #endif +/* TCR_EL12 */ +#define TCR_EL12_REG MRS_REG_ALT_NAME(TCR_EL12) +#define TCR_EL12_op0 3 +#define TCR_EL12_op1 5 +#define TCR_EL12_CRn 2 +#define TCR_EL12_CRm 0 +#define TCR_EL12_op2 2 + /* TTBR0_EL1 & TTBR1_EL1 - Translation Table Base Register 0 & 1 */ #define TTBR_ASID_SHIFT 48 #define TTBR_ASID_MASK (0xfffful << TTBR_ASID_SHIFT) @@ -2342,6 +2516,54 @@ #define TTBR_CnP_SHIFT 0 #define TTBR_CnP (1ul << TTBR_CnP_SHIFT) +/* TTBR0_EL1 */ +#define TTBR0_EL1_REG MRS_REG_ALT_NAME(TTBR0_EL1) +#define TTBR0_EL1_op0 3 +#define TTBR0_EL1_op1 0 +#define TTBR0_EL1_CRn 2 +#define TTBR0_EL1_CRm 0 +#define TTBR0_EL1_op2 0 + +/* TTBR0_EL12 */ +#define TTBR0_EL12_REG MRS_REG_ALT_NAME(TTBR0_EL12) +#define TTBR0_EL12_op0 3 +#define TTBR0_EL12_op1 5 +#define TTBR0_EL12_CRn 2 +#define TTBR0_EL12_CRm 0 +#define TTBR0_EL12_op2 0 + +/* TTBR1_EL1 */ +#define TTBR1_EL1_REG MRS_REG_ALT_NAME(TTBR1_EL1) +#define TTBR1_EL1_op0 3 +#define TTBR1_EL1_op1 0 +#define TTBR1_EL1_CRn 2 +#define TTBR1_EL1_CRm 0 +#define TTBR1_EL1_op2 1 + +/* TTBR1_EL12 */ +#define TTBR1_EL12_REG MRS_REG_ALT_NAME(TTBR1_EL12) +#define TTBR1_EL12_op0 3 +#define TTBR1_EL12_op1 5 +#define TTBR1_EL12_CRn 2 +#define TTBR1_EL12_CRm 0 +#define TTBR1_EL12_op2 1 + +/* VBAR_EL1 */ +#define VBAR_EL1_REG MRS_REG_ALT_NAME(VBAR_EL1) +#define VBAR_EL1_op0 3 +#define VBAR_EL1_op1 0 +#define VBAR_EL1_CRn 12 +#define VBAR_EL1_CRm 0 +#define VBAR_EL1_op2 0 + +/* VBAR_EL12 */ +#define VBAR_EL12_REG MRS_REG_ALT_NAME(VBAR_EL12) +#define VBAR_EL12_op0 3 +#define VBAR_EL12_op1 5 +#define VBAR_EL12_CRn 12 +#define VBAR_EL12_CRm 0 +#define VBAR_EL12_op2 0 + /* ZCR_EL1 - SVE Control Register */ #define ZCR_LEN_SHIFT 0 #define ZCR_LEN_MASK (0xf << ZCR_LEN_SHIFT) From nobody Mon Oct 21 15:05:03 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWg4jr6z5ZNsH; Mon, 21 Oct 2024 15:05:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWg2WXHz4f3k; Mon, 21 Oct 2024 15:05:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523103; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eckMdLCq2eQy9ZWRyfpldws5QEQdqTgYsKC1XImnrwc=; b=KpTQux8weT2/sdGN5/65/WkhCxEuFhW+zZMu2lt6+UBRYa5nM9zpN6XfYOAG5lxrD0rMQP OA5x3r9AZjlbg50z5Q0DGciDMdHdF8XPhjsqm4bMWDttxZ/S+tYSX2NPXyU9xnbvbM5atr MXRDE3JzEBI6IcvKSPd258c6dfCgF8Pl47dTRYbSoddtaWIF8++POKCjfSMacz5pmq0dUF d86vTeNAYihLiq3EJV6sCXEHTXXyFxvosEXZxKuPlMZQYiPdQYF+fDN/zN4fdki0G1iKvD yN5tNioEgAe8+K8nFPQ4W+4VXEU9UZF2wBwErYt7NKDMn/7lZ1e67eMQ7bqqDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523103; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eckMdLCq2eQy9ZWRyfpldws5QEQdqTgYsKC1XImnrwc=; b=pajxk8Dli2hNiDFhB8kzAFGZr7dk4WEmdFqh+Q8KXRFugYUvIywoirpNRGAJPNEZBdWq1l VCX1JRWrKaRbZhkIHOSJceSPN/I0gmXhPZ1xAdwaIbFJzX2RL79ZNr2nKaim6t9Prot2qp XsQT+JHZBBQuWKB0KQ7RnwtZXpyjr39lwVqAK1fkzld1dnXYibEHV0e1W3aNh5gOc7P8kz Ho8U+dZSYNpA9HqrynDTxGjL3ZmhLA35tl/zscuUx8GOes1UurO62TEj1wVxR4Umzt1fZy Jc/pfjBexX3T6LmC/qibGDZ5zldEHYAiK4M8xSzPsD8bnX+fNGUi/4EBvfhMDw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523103; a=rsa-sha256; cv=none; b=lN15rEczebHx111uUM1FE/UfPdGZsfl+VqUPHG645bClBthR1T6P7FKaBfVlcu7ik3qiZL KJOHFt3G412M3bo/vTzVYyx83zwumKQj/0zYeuYFavqPpzA9bVR7r1Akxhdp+XScystjj0 55e0N54ePthd1Jp+VEEuxWE5UsPt5+ajt1y8U48Cp0W+qLNZuSogcyEa5rST93siq1o4GA DDqwxLC8n4dEaZHzRSBlbLQSGZh7xEqS6FrLrUYnT1MbqWTghqygYcKMwPcDJmn9hFP8fx iO/ERaF89LvS/D/McRlT7lA4lVuVLEdV0zbOfVLCXhZFwZ3tLvGoQB91bhflLA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWg20pjzb1Q; Mon, 21 Oct 2024 15:05: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 49LF53Ah046618; Mon, 21 Oct 2024 15:05:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF53d7046615; Mon, 21 Oct 2024 15:05:03 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:03 GMT Message-Id: <202410211505.49LF53d7046615@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: f87a9788a56d - stable/14 - arm64: Fix the ESR_EL1_op2 value List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f87a9788a56d97311946f9d703ca65f311141b2b Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=f87a9788a56d97311946f9d703ca65f311141b2b commit f87a9788a56d97311946f9d703ca65f311141b2b Author: Andrew Turner AuthorDate: 2024-08-29 08:51:30 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Fix the ESR_EL1_op2 value This leads to an unallocated register. Fix the value to point to ESR_EL1. Sponsored by: Arm Ltd (cherry picked from commit 8b017284319c46d349abee5573d4656bb377b0fd) --- sys/arm64/include/armreg.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index b2ab472dad0d..734fb55f07ba 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -628,7 +628,7 @@ #define ESR_EL1_op1 0 #define ESR_EL1_CRn 5 #define ESR_EL1_CRm 2 -#define ESR_EL1_op2 1 +#define ESR_EL1_op2 0 /* ESR_EL12 */ #define ESR_EL12_REG MRS_REG_ALT_NAME(ESR_EL12) From nobody Mon Oct 21 15:05:04 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWh6Zw5z5ZP1s; Mon, 21 Oct 2024 15:05:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWh3YgMz4f3t; Mon, 21 Oct 2024 15:05:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523104; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PA6CBXtXxSXsPEdyzplsnW+lAdryoF6eBEsgLuc/ONs=; b=dp83JjXxuTlKl+lajQSweSrozTt8qhkxw715MPaPbVyy3alhRCrBC24zGXqoahZQV9+CqT 6ym4bULPzF7CGtvX6AGPP95pefda1MRoYk+f+Di2J3B7UwftkiMwT5PJK4Wy0i16wn+aOQ YIseekac2uKzhCWzvCkhl3fbWJzW4ljrMJVOBl5eNgN88HKLS27D1PVJH5mrkwkQ2Sx2uF oyFM7i9PvDqutTohgMwMLxRuplfrCGUPF4f93yz5ckWhaICVkhpbzCFZYce6cFEWEKHBsk zZqvuDE9PIhPi8rYuG/7B6tAnhm687UordTf8XWlQOEpUDD6b53rvmqDRIIyBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523104; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PA6CBXtXxSXsPEdyzplsnW+lAdryoF6eBEsgLuc/ONs=; b=UdfnhiTWQLB1xGLpyY7QKiiL4AcOoALd/eXcMftIKMZExuJn+idb60k/bPbpSozq6/NyWs ZJSUawXv6YtnYw5ZmD6+yNuduycMYw0qc7aGF67JSNswTjKVflqqwiOQWJ4IilH9JlWr68 4qOsFF5u5Kw1RKotVvuWerQZv3Vi2qtBr2i+7qpN0JyiV5kQGLePCOlE1zS301XFg1Z5t8 Rtq9QTxEtHXseNP8ybSNdM3dp6XVAToV1lEWBjMsL2l+wIqeFK0A0wjNMG+QfURQ6mMUeP 0yjoHds5ecnDuNolowBS1I4LjfabyFrHKsFtYY2jZDlNuPa5blBCrMOr/TsUjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523104; a=rsa-sha256; cv=none; b=cT3/gxdRGp8dh2POIQc1FqVbFALc6aIWH6HWhIVt6GcaNBtvm6wpC+Q5hddp1+UHwlcqcg YU7LJrFI4FAj56nKddQHaZnA5pYvYMc1R1CS1N9o8xsd/vMMCbahP7MMSnVaer8fy70/p7 IamartROJRcQFRI1WrU49OswoeL74TF5DDfExHc/wp81SQnITLOG9Ysrx9ghkuEu1sZ/99 gBk4vi0MPFLUfE3jyheXeETVaqikjGK5KervwERAIBWplgzoZCS0p7RI5AYRtfb/tA5LR8 kAoL8zUTUXqKdmMrT6uNlhwkfBBODhwmZYIMRSp9FBcFAS3HqqIfTuNsHk97ww== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWh38q6zZn4; Mon, 21 Oct 2024 15:05: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 49LF54RK046668; Mon, 21 Oct 2024 15:05:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF54ME046665; Mon, 21 Oct 2024 15:05:04 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:04 GMT Message-Id: <202410211505.49LF54ME046665@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 6ac2d3cfb4ad - stable/14 - arm64: Add the tcr_el2 ds field List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6ac2d3cfb4add8b1adaf549e8d6bc887f6afc176 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=6ac2d3cfb4add8b1adaf549e8d6bc887f6afc176 commit 6ac2d3cfb4add8b1adaf549e8d6bc887f6afc176 Author: Andrew Turner AuthorDate: 2024-09-05 12:11:42 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Add the tcr_el2 ds field This will be used to support FEAT_LPA2 to allow more than 48 bits of physical address space. Reviewed by: alc, kib, markj Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46392 (cherry picked from commit 7be11454edd4eca6cbd299cb5b486294f912ffbd) --- sys/arm64/include/armreg.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 734fb55f07ba..8bf4445e13b3 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -2396,6 +2396,8 @@ #define TCR_EL1_CRm 0 #define TCR_EL1_op2 2 /* Bits 63:59 are reserved */ +#define TCR_DS_SHIFT 59 +#define TCR_DS (UL(1) << TCR_DS_SHIFT) #define TCR_TCMA1_SHIFT 58 #define TCR_TCMA1 (UL(1) << TCR_TCMA1_SHIFT) #define TCR_TCMA0_SHIFT 57 From nobody Mon Oct 21 15:05:05 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWj6L2pz5ZNfJ; Mon, 21 Oct 2024 15:05:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWj4cLkz4f6S; Mon, 21 Oct 2024 15:05:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523105; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OyCmOe8jvYzYB26mPrnVU8suXvkttbkyxh8U3/xcnrM=; b=kQKkMfsYH5lyNdo+7ZSlNWp6AdGHIHnXJwuYInwrXi3zlOs25ddLKgo4OtMB8sfCOFJc9D dnTugrCt1OYR7f2QrFYkgqBOx1dGz8A1H1Xa8LDluecbsT9Oqi4W6h0QeWKiy7IywGKk1P 7L9Frntjq8LsOxxkD2yrIfqBlM9Bqr14AxXNBxvI5OgXoZHE1rmfsU77P3bBaAaru8YbG5 5tLbRm6zaMMYc2rKN6EtQh1JAZAgbqTeGQL2tPrk3hfk+8uOqzmrtFA11yKvCiY/oJkHZv csxDBpjQhl6enjPfxYC5lZ4AH2l47Lrb+7UGlSUm+xSBHFdhf7QEfU07xAHX4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523105; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OyCmOe8jvYzYB26mPrnVU8suXvkttbkyxh8U3/xcnrM=; b=P/tEATl3ntMlVW+9xZ3z7vEBkK0wAO71G3jmgRFEh/M6nKtpdmpbaA/nRI6p1wrRbSeEqZ V/yMrYl1/X4h7x3VtIA/oa0B8Qo3shUQLI9D3ZBBif3vujVm/zjjU+lGHzSrTs9KYuIJOS yxu2/SbNsxNBixBV1KjfhEOpyNDq02ooLngtzhvRchiTQ01UrKCrn0T0asm6qjcvu44n0H S94oXYMNb/ykEj3KXvmh0uWxiPbIoreEJ0WOEDi/Q+STyQGFlicD1iqJzrlMTq3XAevtPm HDouN6WZAsrFQzyVGgnw5g5iFHFJdCadQ1qtQFDhqogsrAMcJR21+hlQtaTxjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523105; a=rsa-sha256; cv=none; b=tOf3WQQvZxjMhLzumritp5DxYo7I/vzOZJZjghbxDyeH/HASgS5h75/PVovuD/Ptc8xiiI TMfAUXtR4TGoPXnmxgls19EASkpijgz99cOeBq79EimnOyLmGJU2n6yJcikjCquq73V7Cf WdaX8ehHto2FQFcJL5+RhSU9dFOXdJ0XeD8cZG3kcjNrlQM3jUPHKp4ZTlXbLeDu8gppbH WYJIOEBvGCPDmcirTIBvUysmzTkztohwf6+xHTnDRvxpYZXfHTqWTZYze7p7CGiD4q+E7h QHPTq6IMlZfHim4PUVVnn8euXZUut6YoegzSv2RCDcnORrEigWKis1sArnakqQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWj40GTzZn5; Mon, 21 Oct 2024 15:05: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 49LF55Dn046710; Mon, 21 Oct 2024 15:05:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF55YA046707; Mon, 21 Oct 2024 15:05:05 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:05 GMT Message-Id: <202410211505.49LF55YA046707@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 1ee244a9c5da - stable/14 - arm64: add additional MDCR_EL2 fields List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1ee244a9c5da0d965cdac14c92308bd8e73bf57e Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=1ee244a9c5da0d965cdac14c92308bd8e73bf57e commit 1ee244a9c5da0d965cdac14c92308bd8e73bf57e Author: Zachary Leaf AuthorDate: 2024-07-03 07:26:34 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: add additional MDCR_EL2 fields Monitor Debug Configuration Register provides EL2 configuration options for self-hosted debug and the Performance Monitors Extension. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46191 (cherry picked from commit 610348a90467980de0498fab8dfdddf221d7a604) --- sys/arm64/include/hypervisor.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/sys/arm64/include/hypervisor.h b/sys/arm64/include/hypervisor.h index 011f86e83fdf..49689347d399 100644 --- a/sys/arm64/include/hypervisor.h +++ b/sys/arm64/include/hypervisor.h @@ -261,5 +261,35 @@ #define MDCR_EL2_TDOSA (0x1UL << MDCR_EL2_TDOSA_SHIFT) #define MDCR_EL2_TDRA_SHIFT 11 #define MDCR_EL2_TDRA (0x1UL << MDCR_EL2_TDRA_SHIFT) +#define MDCR_E2PB_SHIFT 12 +#define MDCR_E2PB_MASK (0x3UL << MDCR_E2PB_SHIFT) +#define MDCR_TPMS_SHIFT 14 +#define MDCR_TPMS (0x1UL << MDCR_TPMS_SHIFT) +#define MDCR_EnSPM_SHIFT 15 +#define MDCR_EnSPM (0x1UL << MDCR_EnSPM_SHIFT) +#define MDCR_HPMD_SHIFT 17 +#define MDCR_HPMD (0x1UL << MDCR_HPMD_SHIFT) +#define MDCR_TTRF_SHIFT 19 +#define MDCR_TTRF (0x1UL << MDCR_TTRF_SHIFT) +#define MDCR_HCCD_SHIFT 23 +#define MDCR_HCCD (0x1UL << MDCR_HCCD_SHIFT) +#define MDCR_E2TB_SHIFT 24 +#define MDCR_E2TB_MASK (0x3UL << MDCR_E2TB_SHIFT) +#define MDCR_HLP_SHIFT 26 +#define MDCR_HLP (0x1UL << MDCR_HLP_SHIFT) +#define MDCR_TDCC_SHIFT 27 +#define MDCR_TDCC (0x1UL << MDCR_TDCC_SHIFT) +#define MDCR_MTPME_SHIFT 28 +#define MDCR_MTPME (0x1UL << MDCR_MTPME_SHIFT) +#define MDCR_HPMFZO_SHIFT 29 +#define MDCR_HPMFZO (0x1UL << MDCR_HPMFZO_SHIFT) +#define MDCR_PMSSE_SHIFT 30 +#define MDCR_PMSSE_MASK (0x3UL << MDCR_PMSSE_SHIFT) +#define MDCR_HPMFZS_SHIFT 36 +#define MDCR_HPMFZS (0x1UL << MDCR_HPMFZS_SHIFT) +#define MDCR_PMEE_SHIFT 40 +#define MDCR_PMEE_MASK (0x3UL << MDCR_PMEE_SHIFT) +#define MDCR_EBWE_SHIFT 43 +#define MDCR_EBWE (0x1UL << MDCR_EBWE_SHIFT) #endif /* !_MACHINE_HYPERVISOR_H_ */ From nobody Mon Oct 21 15:05:06 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWk6fDWz5ZNw6; Mon, 21 Oct 2024 15:05:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWk5NtVz4fDq; Mon, 21 Oct 2024 15:05:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MktgX0QqmvEtNr+RjbQi58ZBP4ZG/Bh+G4tFVSKiVcA=; b=SMt6tPza3n11KDsQYB8I2mOQ2AOY6Un6SdC/MfZ8osaziUhhSyy+lFxpfBvcORUHLp1kSE 3ZPFL3TJnD1miu6oNDDggLqqlMc4RyPQwYkyPvZLtwUktzsL2izuwtsc1NwY+wCMKYsQ+r vwHyHdwHoEHm3SN6gNg5O9CciKkyrhBdONWWF/ytHdVj5Vzk/xIPlQvZzhfGA5KtDZTQT7 ukEPdFg/Hab2xqfqVm5/01Wi6ZPz1C457oCVG9+UdT7yNFrHHTY/X5TIwtRN0bX8yykKwG 0jIqGt6iRm2KC/DP68xhDoYTeQFNfbkNe8EOpP2OzBNo1DRk7hn/zB2HArfASw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MktgX0QqmvEtNr+RjbQi58ZBP4ZG/Bh+G4tFVSKiVcA=; b=IRtAFlkGn1iaTkVgb21XGjtxkaNFUCuraIMCQqXqhA+lULycoKZet9y0wnQlx1GwxS3Dye YdBw5x9wj98x+jUxP8BK3An1L3jFWww0eKDbE/glsoIpwj1TKQAnAxh6zMZvoMU7ylLGk+ GhiO078GJvLgvfzwsLPQbfh3XGF0W4xmcysWYaVJVqVU2bO/gdrjhgBpybUZQGu8Axm3d4 lUCUZu1laQSaslgW9qpica59CXNE3Fp1MPEtGAvdbBaf5OYGotIl0QLG4Y1ShS24jiH/4W 11W0aLkIsKvvrfY7+X21Ywzg9WrLq7BfHrCBsVQfeX1Jjs/Ewg9+zBWb2Z7uqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523106; a=rsa-sha256; cv=none; b=eSSdG69MmOua2L3KYS/vP8sNH9hOGF9nE7MxVhZzQM+x1JDGMsysnKpf6RQLWZ4U3kg7NG zJwvRUdATF9GRh660iiOVAqvPYilZvTRpHslall5dAyQm7eXH2QK+teSrUbj0++IdSJ/Jf TreYfzGOfdiH1XLk2Jm48vXOkvtzSRvLp+qiLGHwOr5hoOUszwurH+gkN45NmbDYgWZzk6 wBxpnPYyCEha7gqFpaVuof2SgjvdGhnZuPoRgKovV5Os8BpQdI4vVtBGDWByjmp7ZCKQ+N YEJfnz02p9844pH24ysEZOtcZxzbgE/pHuLeSqR6gF5rxkghT1RjQudIvy73tQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWk4xbQzZjk; Mon, 21 Oct 2024 15:05:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LF56wu046759; Mon, 21 Oct 2024 15:05:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF56bk046756; Mon, 21 Oct 2024 15:05:06 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:06 GMT Message-Id: <202410211505.49LF56bk046756@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 2db6ffac2497 - stable/14 - arm64: Adjust the indentation of CPTR_EL2 values List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2db6ffac249731a6ffc10cbf4072d850d5d7e274 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=2db6ffac249731a6ffc10cbf4072d850d5d7e274 commit 2db6ffac249731a6ffc10cbf4072d850d5d7e274 Author: Andrew Turner AuthorDate: 2024-09-11 09:38:08 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Adjust the indentation of CPTR_EL2 values Reviewed by: emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46513 (cherry picked from commit 7a488d83b3af4d59946319b251a3a2060f18df40) --- sys/arm64/include/hypervisor.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/arm64/include/hypervisor.h b/sys/arm64/include/hypervisor.h index 49689347d399..602436d2a725 100644 --- a/sys/arm64/include/hypervisor.h +++ b/sys/arm64/include/hypervisor.h @@ -49,14 +49,14 @@ /* CPTR_EL2 - Architecture feature trap register */ /* Valid if HCR_EL2.E2H == 0 */ -#define CPTR_RES0 0x7fefc800 -#define CPTR_RES1 0x000033ff -#define CPTR_TFP 0x00000400 +#define CPTR_RES0 0x7fefc800 +#define CPTR_RES1 0x000033ff +#define CPTR_TFP 0x00000400 /* Valid if HCR_EL2.E2H == 1 */ -#define CPTR_FPEN 0x00300000 +#define CPTR_FPEN 0x00300000 /* Unconditionally valid */ -#define CPTR_TTA 0x00100000 -#define CPTR_TCPAC 0x80000000 +#define CPTR_TTA 0x00100000 +#define CPTR_TCPAC 0x80000000 /* HCR_EL2 - Hypervisor Config Register */ #define HCR_VM (UL(0x1) << 0) From nobody Mon Oct 21 15:05:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWm0qL5z5ZNbt; Mon, 21 Oct 2024 15:05:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWl63vbz4f91; Mon, 21 Oct 2024 15:05:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523107; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2T8dlAweCNDHoCWxRMl3Dmo2Uj/QzjqWnYhfyDteZgE=; b=SIHJOX922BpAPbqRFIG89Aufa1oFdS4OGiPUtnEeyd9z0lKAAx5fLq6UkXN54ArrvUy6fC fHZPlYOb4T5WbvlIGizXCbek0Ls48+qlMYjJYuCpG6gO1cDz+SlqZQfJ+LZYORlL3DxbPa P04KUhUg9XGg3GshMgdhPwA53nLzsb2QmQLak6GKdc/Krw4REq/EOU2MxbD7DIVfhc5Gix nuoRATNe7YZq0LFrzF0kTdsjXZ1VTp2ZaGXiEpK5rH9mSkwEU4w9Bot9fhiiUDQx6D2eV2 J+hY++e0SzhbrweD4G4pLpWtXSkRZH6J6HOGDdWsTX1KF0/+l+uGLImnVVqMBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523107; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2T8dlAweCNDHoCWxRMl3Dmo2Uj/QzjqWnYhfyDteZgE=; b=BWO9UpdvXJCKBkkmv0mdHw0EmJzTsBwF8rRRxQQW42cx2UvOGm7bEaoir8lJYjJLE/Rxbf KvnHkpn3dzBTYrZyErPbM99SuNz1bVwt/+PWT/k74evAMNxyRBtqroyqQLiA/HavKIN2uA K9ItcUjBQZKr6OCgaJuMYIMrA2ymnHoCKgWRXm5C6YrnbEUH7rNosuYJg3bYmD1wCFm72w twM5aNlK97sqy/tHsbi2dRLd/vIbuKgLIBSGG60B35++LdxiY5xVkXbJGxUKGSI5zi2OQ8 wRA7PMuniVvwxkyBjIuSc1X0OmOzVYPIVOuyGxo2c6ZgVhS8eQzt5EzDnu3WdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523107; a=rsa-sha256; cv=none; b=u0MEJci55fr5IfIUqRSqTLOhrGYn5x5vsVzieNM3gGPV3IsE5dYO1LTNpQ3WZ7zsZKHd+W eyWz06125cvjFkXCkGx5mMTxiC/poQFgdppz4pkMWHEa5SeIQHQLMm4bu1zvNja3y06P+g yaxcKecqWui6qurWF/hCrMy75H9PnMLZTv/Hbc8rn1e7XJ0NhCZoLouDS9vhpyCVpe+3tI O/g8YgZEp9pLG6ltMBVu5IInFZWmETVezZhy6Fe5v02P06OfrS2nqQu+EKc2OOnxMCG+a7 KeKJhECMrBT5JaoyVPbB0MUCdmDw4svyhSWzqSTN81on+3FSLmHkos+MzrLQkQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWl5d02zbNl; Mon, 21 Oct 2024 15:05:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LF57Fg046813; Mon, 21 Oct 2024 15:05:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF57Mn046810; Mon, 21 Oct 2024 15:05:07 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:07 GMT Message-Id: <202410211505.49LF57Mn046810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: e005eea2c977 - stable/14 - arm64: Split out a savectx version of vfp_save_state List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e005eea2c977f8637071ee2b97501e21ce8f0de5 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=e005eea2c977f8637071ee2b97501e21ce8f0de5 commit e005eea2c977f8637071ee2b97501e21ce8f0de5 Author: Andrew Turner AuthorDate: 2024-01-03 17:41:42 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Split out a savectx version of vfp_save_state Rather than try to detect when vfp_save_state is called by savectx use a separate function that sets up the pcb as needed. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43304 (cherry picked from commit 12257233e8fd94ab24e1a84ad87126af2a7be33b) --- sys/arm64/arm64/swtch.S | 4 +--- sys/arm64/arm64/vfp.c | 42 ++++++++++++++++++++++++++---------------- sys/arm64/include/vfp.h | 1 + 3 files changed, 28 insertions(+), 19 deletions(-) diff --git a/sys/arm64/arm64/swtch.S b/sys/arm64/arm64/swtch.S index 4c9851da3dc6..9c43de3a9eae 100644 --- a/sys/arm64/arm64/swtch.S +++ b/sys/arm64/arm64/swtch.S @@ -270,9 +270,7 @@ ENTRY(savectx) /* Store the VFP registers */ #ifdef VFP mov x28, lr - mov x1, x0 /* move pcb to the correct register */ - mov x0, xzr /* td = NULL */ - bl vfp_save_state + bl vfp_save_state_savectx mov lr, x28 #endif diff --git a/sys/arm64/arm64/vfp.c b/sys/arm64/arm64/vfp.c index be98af945b0a..f35cd960702b 100644 --- a/sys/arm64/arm64/vfp.c +++ b/sys/arm64/arm64/vfp.c @@ -170,25 +170,11 @@ vfp_restore(struct vfpstate *state) : : "r"(fpcr), "r"(fpsr), "r"(vfp_state)); } -void -vfp_save_state(struct thread *td, struct pcb *pcb) +static void +vfp_save_state_common(struct thread *td, struct pcb *pcb) { uint32_t cpacr; - KASSERT(pcb != NULL, ("NULL vfp pcb")); - KASSERT(td == NULL || td->td_pcb == pcb, ("Invalid vfp pcb")); - - /* - * savectx() will be called on panic with dumppcb as an argument, - * dumppcb doesn't have pcb_fpusaved set, so set it to save - * the VFP registers. - */ - if (pcb->pcb_fpusaved == NULL) - pcb->pcb_fpusaved = &pcb->pcb_fpustate; - - if (td == NULL) - td = curthread; - critical_enter(); /* * Only store the registers if the VFP is enabled, @@ -206,6 +192,30 @@ vfp_save_state(struct thread *td, struct pcb *pcb) critical_exit(); } +void +vfp_save_state(struct thread *td, struct pcb *pcb) +{ + KASSERT(td != NULL, ("NULL vfp thread")); + KASSERT(pcb != NULL, ("NULL vfp pcb")); + KASSERT(td->td_pcb == pcb, ("Invalid vfp pcb")); + + vfp_save_state_common(td, pcb); +} + +void +vfp_save_state_savectx(struct pcb *pcb) +{ + /* + * savectx() will be called on panic with dumppcb as an argument, + * dumppcb doesn't have pcb_fpusaved set, so set it to save + * the VFP registers. + */ + MPASS(pcb->pcb_fpusaved == NULL); + pcb->pcb_fpusaved = &pcb->pcb_fpustate; + + vfp_save_state_common(curthread, pcb); +} + /* * Update the VFP state for a forked process or new thread. The PCB will * have been copied from the old thread. diff --git a/sys/arm64/include/vfp.h b/sys/arm64/include/vfp.h index 8c3d56918822..7f4c86e7737d 100644 --- a/sys/arm64/include/vfp.h +++ b/sys/arm64/include/vfp.h @@ -78,6 +78,7 @@ void vfp_new_thread(struct thread *, struct thread *, bool); void vfp_reset_state(struct thread *, struct pcb *); void vfp_restore_state(void); void vfp_save_state(struct thread *, struct pcb *); +void vfp_save_state_savectx(struct pcb *); struct fpu_kern_ctx; From nobody Mon Oct 21 15:05:08 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWn1cgyz5ZNbv; Mon, 21 Oct 2024 15:05:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWn0Qbrz4fSc; Mon, 21 Oct 2024 15:05:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b6FFuIiOSOQWlPpvh6gU3koZDiQC3nJCpSqKE9SV/2g=; b=JROOTpvDXOGqTJeAnXKzGFg6qzGYzCkILwwCEtPaCT9WafOrA0BwuvZSaNXX9DQg26v4X+ J7GnrRj9/DlRp8kC5fI6G2hENRHS6jAP4oKDprwtC9yKP0GhW4kmvssvsRTz2I0aXNwV6A JyYut9GU7nH42aZN+suL6OM/tIsBBYxaRme6BZBzj0XwAtA736gacnA7nvt7OfXTL1+3Xh 1BpFQrOEXX0OpleLIVkdR3T9uGIgCTB0YdYP7wecf5jQyOLk1T3Du430cvBMdeArAlxNVx BHYu+zvuGlHFNUZFPHcu0FZ7xBMbn4xBfeGR+0pvOpQY4Vfl64PKPF+FdCRQ6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b6FFuIiOSOQWlPpvh6gU3koZDiQC3nJCpSqKE9SV/2g=; b=xJizbtThzG3GBgy5rJ5mVSz7uqWnHT+5zVVRVm4g1DYI9WTmF1pvp79KvOGoq4yWSNvAou l0YU+kZwCFyUe85CEiBtyLwAiNq1Ltje0SYO4aoEaIftjyuCozjPuGLFuZw9Ki/UHZUgAZ 3v1eh3YxI72Fs0rTPMdrpqfc/LV45PmqflRfHaO9JcHNwGTq3hJ9cIcTKbpLd1Ols2vS1h +ZASL+iV/d2RZDrXLw0DlA152BClh3z4bertU9c9ONWx7pmeddr3TODeiCyT+8jccthEae 2d6adwg9YhkRVpKc7ElW68EQLCGMcxPzcSxBsDi2VR3RSgDO4iv9zF20XNsWeA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523109; a=rsa-sha256; cv=none; b=Z9kKEdb/C1xgCHEVjS1GrwsISTV3p9i2q+fqMQ6WvDG3FvVMnv09qWhWOkeFAa0LxUy78V EpaNJ/drv6HfdoSaqme9TwgPKBb2GTJcmcB5Pu6uEqOs4jK4vOyBzjZ1Uwytmaw0Y+CGvd EycjdjV+AwMoZ2siCMHVkOTnX6X03b9jEg/IoS1iNA1MYOX60AlcxQ8P8uh0KgmFPXFJqs e8lQsRtwDrkuA2Y6n5Yoo8MMMY8K+XJoyvOQVXUg7B8jhJ9UZmVpWdnKXUxelBVKu6Idoi fpUWhDNFMxZk/hCirVbWB52v8LWZYymGidGb3jKsODbWh6589aFSnyiq/xlfNA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWm739dzbQl; Mon, 21 Oct 2024 15:05: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 49LF580J046868; Mon, 21 Oct 2024 15:05:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF58n8046865; Mon, 21 Oct 2024 15:05:08 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:08 GMT Message-Id: <202410211505.49LF58n8046865@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 3f2ed1883896 - stable/14 - arm64: Create a version of vfp_save_state for cpu_switch List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3f2ed1883896651e51a98060f34808457d24f679 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=3f2ed1883896651e51a98060f34808457d24f679 commit 3f2ed1883896651e51a98060f34808457d24f679 Author: Andrew Turner AuthorDate: 2024-06-12 13:09:14 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Create a version of vfp_save_state for cpu_switch This will be used when we add SVE support to reduce the registers needed to be saved on context switch. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43305 (cherry picked from commit a30149b2a9c6ac5280523eea9570e5b5e5f1fdf8) --- sys/arm64/arm64/swtch.S | 4 +--- sys/arm64/arm64/vfp.c | 8 ++++++++ sys/arm64/include/vfp.h | 1 + 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/sys/arm64/arm64/swtch.S b/sys/arm64/arm64/swtch.S index 9c43de3a9eae..882bfd7cf05a 100644 --- a/sys/arm64/arm64/swtch.S +++ b/sys/arm64/arm64/swtch.S @@ -146,9 +146,7 @@ ENTRY(cpu_switch) mov x21, x2 #ifdef VFP - /* Load the pcb address */ - mov x1, x4 - bl vfp_save_state + bl vfp_save_state_switch mov x0, x20 #else mov x0, x1 diff --git a/sys/arm64/arm64/vfp.c b/sys/arm64/arm64/vfp.c index f35cd960702b..c65108a83399 100644 --- a/sys/arm64/arm64/vfp.c +++ b/sys/arm64/arm64/vfp.c @@ -216,6 +216,14 @@ vfp_save_state_savectx(struct pcb *pcb) vfp_save_state_common(curthread, pcb); } +void +vfp_save_state_switch(struct thread *td) +{ + KASSERT(td != NULL, ("NULL vfp thread")); + + vfp_save_state_common(td, td->td_pcb); +} + /* * Update the VFP state for a forked process or new thread. The PCB will * have been copied from the old thread. diff --git a/sys/arm64/include/vfp.h b/sys/arm64/include/vfp.h index 7f4c86e7737d..47d068d6050c 100644 --- a/sys/arm64/include/vfp.h +++ b/sys/arm64/include/vfp.h @@ -79,6 +79,7 @@ void vfp_reset_state(struct thread *, struct pcb *); void vfp_restore_state(void); void vfp_save_state(struct thread *, struct pcb *); void vfp_save_state_savectx(struct pcb *); +void vfp_save_state_switch(struct thread *); struct fpu_kern_ctx; From nobody Mon Oct 21 15:05:10 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWp483vz5ZNyj; Mon, 21 Oct 2024 15:05: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWp18Wsz4fHb; Mon, 21 Oct 2024 15:05:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xPrW0h4KeTICzsxQotfC/hzY9cuuyj6lYMHTT/maIu0=; b=ahm7+2SbcKRbWnps+ot1xMAPl8aQtfORpThzMMjwkhd+Wb2flVkhcQfE6tgZ4ymQ/r6Ngd 8Wqw07/HMBqIAVqziiA3iJl/6K92BsGOxlMfy6mJ0dfqms1X2pLuADj+dFFQ1NcoT2d/TV mXEe5J9GgCBqTXHZbevIkkyom+UVN22i8Rzr7Hdm4nM42xMBO6HmuPz+7miV2jmq3tZ9cz jF4QE2LgijgmbQW5WO38PCUaIhKyVF77ikP+UghlnRk3FM/Nnmn0PlORwfhUnWLYSQ2Arc xsvlGJHi1U0iwdv81Q3MSzxZ09s3mMMuXfE0uOelg0JGNBFdMnwi7MvboirzbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xPrW0h4KeTICzsxQotfC/hzY9cuuyj6lYMHTT/maIu0=; b=ceFrHOu8jp+9i7Q0yguEsQl99CM3Pj0CNKJOUlzmKhP1TKbPKEnzmcdkQR9wDzsPnsf2xO vNRICnlbzJPATkzrE/GaOxq68CCVRqIrJajHqIyirXf82sql+OxOJltkET79yDdXn+lfI1 XRJFA8syQMhKhP5P4utH5r3R/5w1V4Bj54gYIRiFFs5iroBavnhkMwAC1O8/rUlKDuy3ud jFOqRjL0oy9LlfqOE3k74ZcSIFJzH9kZjJNO/knnMChoJPBTto0m8R6pKqy1LFmxBfhFgh gWXNIFQf0r24FoknJlJmwTftRcuHCFSJjdRNfSLX5qWtsfwe8tZhzfwWvvUy6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523110; a=rsa-sha256; cv=none; b=JcbmUxlALEjFxyhDOmJHItMFc60q+SVFvp4+BN9CCuHb3lbXRIbndlb7TJj4ZltBIRHYsD pBNVoNirSIzY0WO20nT0h9wUBy13GWke/kFUGc3eA2vuypHjWs3Ps9lIPErIIezedCP7Jc DwNpglK5/ZYIG60pmW54L5aWs7VbWOI7+O7wOEBWS2lCaEzo/r2oNuNTiDlEv3ax2AFuhx RNWibQkDJDokf0YxQlXog99mGe4qKFgRe+kKq8YvSL5ALgOpfmBX3Sv0cZMTd1yssBS5Vi hwwwoq+xTAx5g4SudUk1l2WB4daf6TtZJlKf6l49AK2L0urFZPqLmfgPagtuTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWp0gQLzb1R; Mon, 21 Oct 2024 15:05: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 49LF5A7i046933; Mon, 21 Oct 2024 15:05:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5ADH046930; Mon, 21 Oct 2024 15:05:10 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:10 GMT Message-Id: <202410211505.49LF5ADH046930@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 2c5961fff4e5 - stable/14 - arm64: Initial SVE support List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2c5961fff4e5f31079d69e57105132ef9685ca53 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=2c5961fff4e5f31079d69e57105132ef9685ca53 commit 2c5961fff4e5f31079d69e57105132ef9685ca53 Author: Andrew Turner AuthorDate: 2024-09-27 13:36:35 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Initial SVE support Add initial kernel support for SVE. This detects if SVE is present on all CPUs, and if so allows for the use of SVE in the future. As the SVE registers are a superset of the VFP registers we don't need to restore the VFP registers when SVE is enabled. Ths interface to enable SVE is provided, but not used until SVE is supported in signals and with ptrace. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43306 (cherry picked from commit 332c426328dbb30a6b2e69d9b1e8298d77d85bd1) --- sys/arm64/arm64/exec_machdep.c | 2 + sys/arm64/arm64/trap.c | 3 +- sys/arm64/arm64/vfp.c | 606 +++++++++++++++++++++++++++++++++++++++-- sys/arm64/include/armreg.h | 7 + sys/arm64/include/pcb.h | 8 +- sys/arm64/include/vfp.h | 6 + 6 files changed, 610 insertions(+), 22 deletions(-) diff --git a/sys/arm64/arm64/exec_machdep.c b/sys/arm64/arm64/exec_machdep.c index bc4ee178db23..31191ec21602 100644 --- a/sys/arm64/arm64/exec_machdep.c +++ b/sys/arm64/arm64/exec_machdep.c @@ -607,6 +607,8 @@ sys_sigreturn(struct thread *td, struct sigreturn_args *uap) if (copyin(uap->sigcntxp, &uc, sizeof(uc))) return (EFAULT); + /* Stop an interrupt from causing the sve state to be dropped */ + td->td_sa.code = -1; error = set_mcontext(td, &uc.uc_mcontext); if (error != 0) return (error); diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index 69c5cd73ade8..78582f5ac563 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -730,7 +730,8 @@ do_el0_sync(struct thread *td, struct trapframe *frame) break; } - KASSERT((td->td_pcb->pcb_fpflags & ~PCB_FP_USERMASK) == 0, + KASSERT( + (td->td_pcb->pcb_fpflags & ~(PCB_FP_USERMASK|PCB_FP_SVEVALID)) == 0, ("Kernel VFP flags set while entering userspace")); KASSERT( td->td_pcb->pcb_fpusaved == &td->td_pcb->pcb_fpustate, diff --git a/sys/arm64/arm64/vfp.c b/sys/arm64/arm64/vfp.c index c65108a83399..d57927991c03 100644 --- a/sys/arm64/arm64/vfp.c +++ b/sys/arm64/arm64/vfp.c @@ -30,11 +30,13 @@ #ifdef VFP #include #include +#include #include #include #include #include #include +#include #include @@ -60,6 +62,63 @@ struct fpu_kern_ctx { static uma_zone_t fpu_save_area_zone; static struct vfpstate *fpu_initialstate; +static u_int sve_max_vector_len; + +static size_t +_sve_buf_size(u_int sve_len) +{ + size_t len; + + /* 32 vector registers */ + len = (size_t)sve_len * 32; + /* + * 16 predicate registers and the fault fault register, each 1/8th + * the size of a vector register. + */ + len += ((size_t)sve_len * 17) / 8; + /* + * FPSR and FPCR + */ + len += sizeof(uint64_t) * 2; + + return (len); +} + +size_t +sve_max_buf_size(void) +{ + MPASS(sve_max_vector_len > 0); + return (_sve_buf_size(sve_max_vector_len)); +} + +size_t +sve_buf_size(struct thread *td) +{ + struct pcb *pcb; + + pcb = td->td_pcb; + MPASS(pcb->pcb_svesaved != NULL); + MPASS(pcb->pcb_sve_len > 0); + + return (_sve_buf_size(pcb->pcb_sve_len)); +} + +static void * +sve_alloc(void) +{ + void *buf; + + buf = malloc(sve_max_buf_size(), M_FPUKERN_CTX, M_WAITOK | M_ZERO); + + return (buf); +} + +static void +sve_free(void *buf) +{ + free(buf, M_FPUKERN_CTX); +} + void vfp_enable(void) { @@ -71,13 +130,30 @@ vfp_enable(void) isb(); } +static void +sve_enable(void) +{ + uint32_t cpacr; + + cpacr = READ_SPECIALREG(cpacr_el1); + /* Enable FP */ + cpacr = (cpacr & ~CPACR_FPEN_MASK) | CPACR_FPEN_TRAP_NONE; + /* Enable SVE */ + cpacr = (cpacr & ~CPACR_ZEN_MASK) | CPACR_ZEN_TRAP_NONE; + WRITE_SPECIALREG(cpacr_el1, cpacr); + isb(); +} + void vfp_disable(void) { uint32_t cpacr; cpacr = READ_SPECIALREG(cpacr_el1); + /* Disable FP */ cpacr = (cpacr & ~CPACR_FPEN_MASK) | CPACR_FPEN_TRAP_ALL1; + /* Disable SVE */ + cpacr = (cpacr & ~CPACR_ZEN_MASK) | CPACR_ZEN_TRAP_ALL1; WRITE_SPECIALREG(cpacr_el1, cpacr); isb(); } @@ -171,9 +247,266 @@ vfp_restore(struct vfpstate *state) } static void -vfp_save_state_common(struct thread *td, struct pcb *pcb) +sve_store(void *state, u_int sve_len) +{ + vm_offset_t f_start, p_start, z_start; + uint64_t fpcr, fpsr; + + /* + * Calculate the start of each register groups. There are three + * groups depending on size, with the First Fault Register (FFR) + * stored with the predicate registers as we use one of them to + * temporarily hold it. + * + * +-------------------------+-------------------+ + * | Contents | Register size | + * z_start -> +-------------------------+-------------------+ + * | | | + * | 32 Z regs | sve_len | + * | | | + * p_start -> +-------------------------+-------------------+ + * | | | + * | 16 Predicate registers | 1/8 size of Z reg | + * | 1 First Fault register | | + * | | | + * f_start -> +-------------------------+-------------------+ + * | | | + * | FPSR/FPCR | 32 bit | + * | | | + * +-------------------------+-------------------+ + */ + z_start = (vm_offset_t)state; + p_start = z_start + sve_len * 32; + f_start = p_start + (sve_len / 8) * 17; + + __asm __volatile( + ".arch_extension sve \n" + "str z0, [%0, #0, MUL VL] \n" + "str z1, [%0, #1, MUL VL] \n" + "str z2, [%0, #2, MUL VL] \n" + "str z3, [%0, #3, MUL VL] \n" + "str z4, [%0, #4, MUL VL] \n" + "str z5, [%0, #5, MUL VL] \n" + "str z6, [%0, #6, MUL VL] \n" + "str z7, [%0, #7, MUL VL] \n" + "str z8, [%0, #8, MUL VL] \n" + "str z9, [%0, #9, MUL VL] \n" + "str z10, [%0, #10, MUL VL] \n" + "str z11, [%0, #11, MUL VL] \n" + "str z12, [%0, #12, MUL VL] \n" + "str z13, [%0, #13, MUL VL] \n" + "str z14, [%0, #14, MUL VL] \n" + "str z15, [%0, #15, MUL VL] \n" + "str z16, [%0, #16, MUL VL] \n" + "str z17, [%0, #17, MUL VL] \n" + "str z18, [%0, #18, MUL VL] \n" + "str z19, [%0, #19, MUL VL] \n" + "str z20, [%0, #20, MUL VL] \n" + "str z21, [%0, #21, MUL VL] \n" + "str z22, [%0, #22, MUL VL] \n" + "str z23, [%0, #23, MUL VL] \n" + "str z24, [%0, #24, MUL VL] \n" + "str z25, [%0, #25, MUL VL] \n" + "str z26, [%0, #26, MUL VL] \n" + "str z27, [%0, #27, MUL VL] \n" + "str z28, [%0, #28, MUL VL] \n" + "str z29, [%0, #29, MUL VL] \n" + "str z30, [%0, #30, MUL VL] \n" + "str z31, [%0, #31, MUL VL] \n" + /* Store the predicate registers */ + "str p0, [%1, #0, MUL VL] \n" + "str p1, [%1, #1, MUL VL] \n" + "str p2, [%1, #2, MUL VL] \n" + "str p3, [%1, #3, MUL VL] \n" + "str p4, [%1, #4, MUL VL] \n" + "str p5, [%1, #5, MUL VL] \n" + "str p6, [%1, #6, MUL VL] \n" + "str p7, [%1, #7, MUL VL] \n" + "str p8, [%1, #8, MUL VL] \n" + "str p9, [%1, #9, MUL VL] \n" + "str p10, [%1, #10, MUL VL] \n" + "str p11, [%1, #11, MUL VL] \n" + "str p12, [%1, #12, MUL VL] \n" + "str p13, [%1, #13, MUL VL] \n" + "str p14, [%1, #14, MUL VL] \n" + "str p15, [%1, #15, MUL VL] \n" + ".arch_extension nosve \n" + : : "r"(z_start), "r"(p_start)); + + /* Save the FFR if needed */ + /* TODO: Skip if in SME streaming mode (when supported) */ + __asm __volatile( + ".arch_extension sve \n" + "rdffr p0.b \n" + "str p0, [%0, #16, MUL VL] \n" + /* + * Load the old p0 value to ensure it is consistent if we enable + * without calling sve_restore, e.g. switch to a kernel thread and + * back. + */ + "ldr p0, [%0, #0, MUL VL] \n" + ".arch_extension nosve \n" + : : "r"(p_start)); + + __asm __volatile( + ".arch_extension fp \n" + "mrs %0, fpsr \n" + "mrs %1, fpcr \n" + "stp %w0, %w1, [%2] \n" + ".arch_extension nofp \n" + : "=&r"(fpsr), "=&r"(fpcr) : "r"(f_start)); +} + +static void +sve_restore(void *state, u_int sve_len) +{ + vm_offset_t f_start, p_start, z_start; + uint64_t fpcr, fpsr; + + /* See sve_store for the layout of the state buffer */ + z_start = (vm_offset_t)state; + p_start = z_start + sve_len * 32; + f_start = p_start + (sve_len / 8) * 17; + + __asm __volatile( + ".arch_extension sve \n" + "ldr p0, [%0, #16, MUL VL] \n" + "wrffr p0.b \n" + ".arch_extension nosve \n" + : : "r"(p_start)); + + __asm __volatile( + ".arch_extension sve \n" + "ldr z0, [%0, #0, MUL VL] \n" + "ldr z1, [%0, #1, MUL VL] \n" + "ldr z2, [%0, #2, MUL VL] \n" + "ldr z3, [%0, #3, MUL VL] \n" + "ldr z4, [%0, #4, MUL VL] \n" + "ldr z5, [%0, #5, MUL VL] \n" + "ldr z6, [%0, #6, MUL VL] \n" + "ldr z7, [%0, #7, MUL VL] \n" + "ldr z8, [%0, #8, MUL VL] \n" + "ldr z9, [%0, #9, MUL VL] \n" + "ldr z10, [%0, #10, MUL VL] \n" + "ldr z11, [%0, #11, MUL VL] \n" + "ldr z12, [%0, #12, MUL VL] \n" + "ldr z13, [%0, #13, MUL VL] \n" + "ldr z14, [%0, #14, MUL VL] \n" + "ldr z15, [%0, #15, MUL VL] \n" + "ldr z16, [%0, #16, MUL VL] \n" + "ldr z17, [%0, #17, MUL VL] \n" + "ldr z18, [%0, #18, MUL VL] \n" + "ldr z19, [%0, #19, MUL VL] \n" + "ldr z20, [%0, #20, MUL VL] \n" + "ldr z21, [%0, #21, MUL VL] \n" + "ldr z22, [%0, #22, MUL VL] \n" + "ldr z23, [%0, #23, MUL VL] \n" + "ldr z24, [%0, #24, MUL VL] \n" + "ldr z25, [%0, #25, MUL VL] \n" + "ldr z26, [%0, #26, MUL VL] \n" + "ldr z27, [%0, #27, MUL VL] \n" + "ldr z28, [%0, #28, MUL VL] \n" + "ldr z29, [%0, #29, MUL VL] \n" + "ldr z30, [%0, #30, MUL VL] \n" + "ldr z31, [%0, #31, MUL VL] \n" + /* Store the predicate registers */ + "ldr p0, [%1, #0, MUL VL] \n" + "ldr p1, [%1, #1, MUL VL] \n" + "ldr p2, [%1, #2, MUL VL] \n" + "ldr p3, [%1, #3, MUL VL] \n" + "ldr p4, [%1, #4, MUL VL] \n" + "ldr p5, [%1, #5, MUL VL] \n" + "ldr p6, [%1, #6, MUL VL] \n" + "ldr p7, [%1, #7, MUL VL] \n" + "ldr p8, [%1, #8, MUL VL] \n" + "ldr p9, [%1, #9, MUL VL] \n" + "ldr p10, [%1, #10, MUL VL] \n" + "ldr p11, [%1, #11, MUL VL] \n" + "ldr p12, [%1, #12, MUL VL] \n" + "ldr p13, [%1, #13, MUL VL] \n" + "ldr p14, [%1, #14, MUL VL] \n" + "ldr p15, [%1, #15, MUL VL] \n" + ".arch_extension nosve \n" + : : "r"(z_start), "r"(p_start)); + + __asm __volatile( + ".arch_extension fp \n" + "ldp %w0, %w1, [%2] \n" + "msr fpsr, %0 \n" + "msr fpcr, %1 \n" + ".arch_extension nofp \n" + : "=&r"(fpsr), "=&r"(fpcr) : "r"(f_start)); +} + +/* + * Sync the VFP registers to the SVE register state, e.g. in signal return + * when userspace may have changed the vfp register values and expect them + * to be used when the signal handler returns. + */ +void +vfp_to_sve_sync(struct thread *td) +{ + struct pcb *pcb; + uint32_t *fpxr; + + pcb = td->td_pcb; + if (pcb->pcb_svesaved == NULL) + return; + + MPASS(pcb->pcb_fpusaved != NULL); + + /* Copy the VFP registers to the SVE region */ + for (int i = 0; i < nitems(pcb->pcb_fpusaved->vfp_regs); i++) { + __uint128_t *sve_reg; + + sve_reg = (__uint128_t *)((uintptr_t)pcb->pcb_svesaved + + i * pcb->pcb_sve_len); + *sve_reg = pcb->pcb_fpusaved->vfp_regs[i]; + } + + fpxr = (uint32_t *)((uintptr_t)pcb->pcb_svesaved + + (32 * pcb->pcb_sve_len) + (17 * pcb->pcb_sve_len / 8)); + fpxr[0] = pcb->pcb_fpusaved->vfp_fpsr; + fpxr[1] = pcb->pcb_fpusaved->vfp_fpcr; +} + +/* + * Sync the SVE registers to the VFP register state. + */ +void +sve_to_vfp_sync(struct thread *td) +{ + struct pcb *pcb; + uint32_t *fpxr; + + pcb = td->td_pcb; + if (pcb->pcb_svesaved == NULL) + return; + + MPASS(pcb->pcb_fpusaved == &pcb->pcb_fpustate); + + /* Copy the SVE registers to the VFP saved state */ + for (int i = 0; i < nitems(pcb->pcb_fpusaved->vfp_regs); i++) { + __uint128_t *sve_reg; + + sve_reg = (__uint128_t *)((uintptr_t)pcb->pcb_svesaved + + i * pcb->pcb_sve_len); + pcb->pcb_fpusaved->vfp_regs[i] = *sve_reg; + } + + fpxr = (uint32_t *)((uintptr_t)pcb->pcb_svesaved + + (32 * pcb->pcb_sve_len) + (17 * pcb->pcb_sve_len / 8)); + pcb->pcb_fpusaved->vfp_fpsr = fpxr[0]; + pcb->pcb_fpusaved->vfp_fpcr = fpxr[1]; +} + +static void +vfp_save_state_common(struct thread *td, struct pcb *pcb, bool full_save) { uint32_t cpacr; + bool save_sve; + + save_sve = false; critical_enter(); /* @@ -181,14 +514,49 @@ vfp_save_state_common(struct thread *td, struct pcb *pcb) * i.e. return if we are trapping on FP access. */ cpacr = READ_SPECIALREG(cpacr_el1); - if ((cpacr & CPACR_FPEN_MASK) == CPACR_FPEN_TRAP_NONE) { - KASSERT(PCPU_GET(fpcurthread) == td, - ("Storing an invalid VFP state")); + if ((cpacr & CPACR_FPEN_MASK) != CPACR_FPEN_TRAP_NONE) + goto done; + KASSERT(PCPU_GET(fpcurthread) == td, + ("Storing an invalid VFP state")); + + /* + * Also save the SVE state. As SVE depends on the VFP being + * enabled we can rely on only needing to check this when + * the VFP unit has been enabled. + */ + if ((cpacr & CPACR_ZEN_MASK) == CPACR_ZEN_TRAP_NONE) { + /* If SVE is enabled it should be valid */ + MPASS((pcb->pcb_fpflags & PCB_FP_SVEVALID) != 0); + + /* + * If we are switching while in a system call skip saving + * SVE registers. The ABI allows us to drop them over any + * system calls, however doing so is expensive in SVE + * heavy userspace code. This would require us to disable + * SVE for all system calls and trap the next use of them. + * As an optimisation only disable SVE on context switch. + */ + if (td->td_frame == NULL || + (ESR_ELx_EXCEPTION(td->td_frame->tf_esr) != EXCP_SVC64 && + td->td_sa.code != (u_int)-1)) + save_sve = true; + } + + if (save_sve) { + KASSERT(pcb->pcb_svesaved != NULL, + ("Storing to a NULL SVE state")); + sve_store(pcb->pcb_svesaved, pcb->pcb_sve_len); + if (full_save) + sve_to_vfp_sync(td); + } else { + pcb->pcb_fpflags &= ~PCB_FP_SVEVALID; vfp_store(pcb->pcb_fpusaved); - dsb(ish); - vfp_disable(); } + dsb(ish); + vfp_disable(); + +done: critical_exit(); } @@ -199,7 +567,7 @@ vfp_save_state(struct thread *td, struct pcb *pcb) KASSERT(pcb != NULL, ("NULL vfp pcb")); KASSERT(td->td_pcb == pcb, ("Invalid vfp pcb")); - vfp_save_state_common(td, pcb); + vfp_save_state_common(td, pcb, true); } void @@ -213,7 +581,7 @@ vfp_save_state_savectx(struct pcb *pcb) MPASS(pcb->pcb_fpusaved == NULL); pcb->pcb_fpusaved = &pcb->pcb_fpustate; - vfp_save_state_common(curthread, pcb); + vfp_save_state_common(curthread, pcb, true); } void @@ -221,7 +589,7 @@ vfp_save_state_switch(struct thread *td) { KASSERT(td != NULL, ("NULL vfp thread")); - vfp_save_state_common(td, td->td_pcb); + vfp_save_state_common(td, td->td_pcb, false); } /* @@ -231,21 +599,40 @@ vfp_save_state_switch(struct thread *td) void vfp_new_thread(struct thread *newtd, struct thread *oldtd, bool fork) { - struct pcb *newpcb; + struct pcb *newpcb, *oldpcb; newpcb = newtd->td_pcb; + oldpcb = oldtd->td_pcb; /* Kernel threads start with clean VFP */ if ((oldtd->td_pflags & TDP_KTHREAD) != 0) { newpcb->pcb_fpflags &= - ~(PCB_FP_STARTED | PCB_FP_KERN | PCB_FP_NOSAVE); + ~(PCB_FP_STARTED | PCB_FP_SVEVALID | PCB_FP_KERN | + PCB_FP_NOSAVE); } else { MPASS((newpcb->pcb_fpflags & (PCB_FP_KERN|PCB_FP_NOSAVE)) == 0); + + /* + * The only SVE register state to be guaranteed to be saved + * a system call is the lower bits of the Z registers as + * these are aliased with the existing FP registers. Because + * we can only create a new thread or fork through a system + * call it is safe to drop the SVE state in the new thread. + */ + newpcb->pcb_fpflags &= ~PCB_FP_SVEVALID; if (!fork) { newpcb->pcb_fpflags &= ~PCB_FP_STARTED; } } + newpcb->pcb_svesaved = NULL; + if (oldpcb->pcb_svesaved == NULL) + newpcb->pcb_sve_len = sve_max_vector_len; + else + KASSERT(newpcb->pcb_sve_len == oldpcb->pcb_sve_len, + ("%s: pcb sve vector length differs: %x != %x", __func__, + newpcb->pcb_sve_len, oldpcb->pcb_sve_len)); + newpcb->pcb_fpusaved = &newpcb->pcb_fpustate; newpcb->pcb_vfpcpu = UINT_MAX; } @@ -272,23 +659,48 @@ vfp_reset_state(struct thread *td, struct pcb *pcb) ("pcb_fpusaved should point to pcb_fpustate.")); pcb->pcb_fpustate.vfp_fpcr = VFPCR_INIT; pcb->pcb_fpustate.vfp_fpsr = 0; + /* XXX: Memory leak when using SVE between fork & exec? */ + pcb->pcb_svesaved = NULL; pcb->pcb_vfpcpu = UINT_MAX; pcb->pcb_fpflags = 0; } -void -vfp_restore_state(void) +static void +vfp_restore_state_common(struct thread *td, int flags) { struct pcb *curpcb; u_int cpu; + bool restore_sve; + + KASSERT(td == curthread, ("%s: Called with non-current thread", + __func__)); critical_enter(); cpu = PCPU_GET(cpuid); - curpcb = curthread->td_pcb; - curpcb->pcb_fpflags |= PCB_FP_STARTED; + curpcb = td->td_pcb; - vfp_enable(); + /* + * If SVE has been used and the base VFP state is in use then + * restore the SVE registers. A non-base VFP state should only + * be used by the kernel and SVE should onlu be used by userspace. + */ + restore_sve = false; + if ((curpcb->pcb_fpflags & PCB_FP_SVEVALID) != 0 && + curpcb->pcb_fpusaved == &curpcb->pcb_fpustate) { + MPASS(curpcb->pcb_svesaved != NULL); + /* SVE shouldn't be enabled in the kernel */ + MPASS((flags & PCB_FP_KERN) == 0); + restore_sve = true; + } + + if (restore_sve) { + MPASS((curpcb->pcb_fpflags & PCB_FP_SVEVALID) != 0); + sve_enable(); + } else { + curpcb->pcb_fpflags |= PCB_FP_STARTED; + vfp_enable(); + } /* * If the previous thread on this cpu to use the VFP was not the @@ -296,14 +708,104 @@ vfp_restore_state(void) * cpu we need to restore the old state. */ if (PCPU_GET(fpcurthread) != curthread || cpu != curpcb->pcb_vfpcpu) { - vfp_restore(curthread->td_pcb->pcb_fpusaved); - PCPU_SET(fpcurthread, curthread); + /* + * The VFP registers are the lower 128 bits of the SVE + * registers. Use the SVE store state if it was previously + * enabled. + */ + if (restore_sve) { + MPASS(td->td_pcb->pcb_svesaved != NULL); + sve_restore(td->td_pcb->pcb_svesaved, + td->td_pcb->pcb_sve_len); + } else { + vfp_restore(td->td_pcb->pcb_fpusaved); + } + PCPU_SET(fpcurthread, td); curpcb->pcb_vfpcpu = cpu; } critical_exit(); } +void +vfp_restore_state(void) +{ + struct thread *td; + + td = curthread; + vfp_restore_state_common(td, td->td_pcb->pcb_fpflags); +} + +bool +sve_restore_state(struct thread *td) +{ + struct pcb *curpcb; + void *svesaved; + uint64_t cpacr; + + KASSERT(td == curthread, ("%s: Called with non-current thread", + __func__)); + + curpcb = td->td_pcb; + + /* The SVE state should alias the base VFP state */ + MPASS(curpcb->pcb_fpusaved == &curpcb->pcb_fpustate); + + /* SVE not enabled, tell the caller to raise a fault */ + if (curpcb->pcb_sve_len == 0) { + /* + * The init pcb is created before we read the vector length. + * Set it to the default length. + */ + if (sve_max_vector_len == 0) + return (false); + + MPASS(curpcb->pcb_svesaved == NULL); + curpcb->pcb_sve_len = sve_max_vector_len; + } + + if (curpcb->pcb_svesaved == NULL) { + /* SVE should be disabled so will be invalid */ + MPASS((curpcb->pcb_fpflags & PCB_FP_SVEVALID) == 0); + + /* + * Allocate the SVE buffer of this thread. + * Enable interrupts so the allocation can sleep + */ + svesaved = sve_alloc(); + + critical_enter(); + + /* Restore the VFP state if needed */ + cpacr = READ_SPECIALREG(cpacr_el1); + if ((cpacr & CPACR_FPEN_MASK) != CPACR_FPEN_TRAP_NONE) { + vfp_restore_state_common(td, curpcb->pcb_fpflags); + } + + /* + * Set the flags after enabling the VFP as the SVE saved + * state will be invalid. + */ + curpcb->pcb_svesaved = svesaved; + curpcb->pcb_fpflags |= PCB_FP_SVEVALID; + sve_enable(); + + critical_exit(); + } else { + vfp_restore_state_common(td, curpcb->pcb_fpflags); + + /* Enable SVE if it wasn't previously enabled */ + if ((curpcb->pcb_fpflags & PCB_FP_SVEVALID) == 0) { + critical_enter(); + sve_enable(); + curpcb->pcb_fpflags |= PCB_FP_SVEVALID; + critical_exit(); + } + } + + return (true); +} + void vfp_init_secondary(void) { @@ -348,6 +850,74 @@ vfp_init(const void *dummy __unused) SYSINIT(vfp, SI_SUB_CPU, SI_ORDER_ANY, vfp_init, NULL); +static void +sve_thread_dtor(void *arg __unused, struct thread *td) +{ + sve_free(td->td_pcb->pcb_svesaved); +} + +static void +sve_pcpu_read(void *arg) +{ + u_int *len; + uint64_t vl; + + len = arg; + + /* Enable SVE to read zcr_el1 and VFP for rdvl */ + sve_enable(); + + /* Set the longest vector length */ + WRITE_SPECIALREG(ZCR_EL1_REG, ZCR_LEN_MASK); + isb(); + + /* Read the real vector length */ + __asm __volatile( + ".arch_extension sve \n" + "rdvl %0, #1 \n" + ".arch_extension nosve \n" + : "=&r"(vl)); + + vfp_disable(); + + len[PCPU_GET(cpuid)] = vl; +} + +static void +sve_init(const void *dummy __unused) +{ + u_int *len_list; + uint64_t reg; + int i; + + if (!get_kernel_reg(ID_AA64PFR0_EL1, ®)) + return; + + if (ID_AA64PFR0_SVE_VAL(reg) == ID_AA64PFR0_SVE_NONE) + return; + + len_list = malloc(sizeof(*len_list) * (mp_maxid + 1), M_TEMP, + M_WAITOK | M_ZERO); + smp_rendezvous(NULL, sve_pcpu_read, NULL, len_list); + + sve_max_vector_len = ZCR_LEN_BYTES(ZCR_LEN_MASK); + CPU_FOREACH(i) { + if (bootverbose) + printf("CPU%d SVE vector length: %u\n", i, len_list[i]); + sve_max_vector_len = MIN(sve_max_vector_len, len_list[i]); + } + free(len_list, M_TEMP); + + if (bootverbose) + printf("SVE with %u byte vectors\n", sve_max_vector_len); + + if (sve_max_vector_len > 0) { + EVENTHANDLER_REGISTER(thread_dtor, sve_thread_dtor, NULL, + EVENTHANDLER_PRI_ANY); + } +} +SYSINIT(sve, SI_SUB_SMP, SI_ORDER_ANY, sve_init, NULL); + struct fpu_kern_ctx * fpu_kern_alloc_ctx(u_int flags) { diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 8bf4445e13b3..2b92c036ef1c 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -2567,6 +2567,13 @@ #define VBAR_EL12_op2 0 /* ZCR_EL1 - SVE Control Register */ +#define ZCR_EL1 MRS_REG(ZCR_EL1) +#define ZCR_EL1_REG MRS_REG_ALT_NAME(ZCR_EL1_REG) +#define ZCR_EL1_REG_op0 3 +#define ZCR_EL1_REG_op1 0 +#define ZCR_EL1_REG_CRn 1 +#define ZCR_EL1_REG_CRm 2 +#define ZCR_EL1_REG_op2 0 #define ZCR_LEN_SHIFT 0 #define ZCR_LEN_MASK (0xf << ZCR_LEN_SHIFT) #define ZCR_LEN_BYTES(x) ((((x) & ZCR_LEN_MASK) + 1) * 16) diff --git a/sys/arm64/include/pcb.h b/sys/arm64/include/pcb.h index d7392d5f2032..273b53cdc6cf 100644 --- a/sys/arm64/include/pcb.h +++ b/sys/arm64/include/pcb.h @@ -59,17 +59,19 @@ struct pcb { u_int pcb_flags; #define PCB_SINGLE_STEP_SHIFT 0 #define PCB_SINGLE_STEP (1 << PCB_SINGLE_STEP_SHIFT) - uint32_t pcb_pad1; + u_int pcb_sve_len; /* The SVE vector length */ struct vfpstate *pcb_fpusaved; int pcb_fpflags; #define PCB_FP_STARTED 0x00000001 +#define PCB_FP_SVEVALID 0x00000002 #define PCB_FP_KERN 0x40000000 #define PCB_FP_NOSAVE 0x80000000 /* The bits passed to userspace in get_fpcontext */ -#define PCB_FP_USERMASK (PCB_FP_STARTED) +#define PCB_FP_USERMASK (PCB_FP_STARTED | PCB_FP_SVEVALID) u_int pcb_vfpcpu; /* Last cpu this thread ran VFP code */ - uint64_t pcb_reserved[5]; + void *pcb_svesaved; + uint64_t pcb_reserved[4]; /* * The userspace VFP state. The pcb_fpusaved pointer will point to diff --git a/sys/arm64/include/vfp.h b/sys/arm64/include/vfp.h index 47d068d6050c..fc93908add0b 100644 --- a/sys/arm64/include/vfp.h +++ b/sys/arm64/include/vfp.h @@ -80,6 +80,12 @@ void vfp_restore_state(void); void vfp_save_state(struct thread *, struct pcb *); void vfp_save_state_savectx(struct pcb *); void vfp_save_state_switch(struct thread *); +void vfp_to_sve_sync(struct thread *); +void sve_to_vfp_sync(struct thread *); + +size_t sve_max_buf_size(void); +size_t sve_buf_size(struct thread *); +bool sve_restore_state(struct thread *); struct fpu_kern_ctx; From nobody Mon Oct 21 15:05:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWr0NyGz5ZNrb; Mon, 21 Oct 2024 15:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWq1kh7z4fHs; Mon, 21 Oct 2024 15:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0vToR4MQ4/Gd6lpBO19j8jhbNOm5gd+wMlf5O2WhnzQ=; b=PyW9iW1heZrzdJXg7dJ8r9NGIAy8j+SpHHfFiSYhRfdr4+oDyDbwRMHVP1RT2GastSJhEa mOm+BT2Bod7yIat8SywDFvqU7cE2aSh7AJeWn5PGoMVYFuSu6iLW8TchExkTPbiUgXY4VC FPjSQ1CyT26blLkIy3X+nlkUwvxlfDebOHe9yRtO4rdu/5UvJzmMjkMqfGXsFpKCpU2YgX H8v5QoH0hRoiNMrDlLDyxmxmvWaMUaDmo2f4+p4Akkv4CpCoxsEoARAbnZsvSeNiDkiDOw N5VSB4F79Az7EnrbyO6fGURAueXXGwAqU2F3OCIf+kRr3EC4blqgbckdVwoWEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0vToR4MQ4/Gd6lpBO19j8jhbNOm5gd+wMlf5O2WhnzQ=; b=Jk7p4dkASpcR6ry7iPpKBG8j7g65e526oL1N5PWqEnwpOUOxWQiEuhALKPLgBGrsjRL5yG 7uR5HrlurpsFC/y2eUMEU7PAc7zRfH+TBdMZaaD6ypktxfHiofCsTOX3O7LLsQBV61ACwh HbP59w/K4rUcWlOvk4r7D8ixAKP7gYmJwSufLtP/kYIy8y4eWIJfMQpWf1gxiR8ZruYa4O X6Z5+UmUU1p/BHuF+qaXBlKzrZBCODo8X/JEsKQJqS1s1X47YLO6WTUf8tXm7+/85V81Mj FvJ6uR6AsZJp+dLWlPu8aRcjH1eX9+oVT6oDv94+jsD6vOa4pfpmcOm70ojpSw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523111; a=rsa-sha256; cv=none; b=fsVYD7bsX8zKY0K7LtXRtUlK25BzNaPhoLfnpV7TDKugV7mFA4QwKHmX7q0vm5zepCuUMB 84fe7nnCGCI8vKcrH80O0yC5F+fwOwvTGn4A6xtRgqaghFC7nMouTM3q9onWX3HPoEio+r Prr/Gr3zJofEhsXg0FDAt+WuRlbLib0RejDEC1qLVYSLdbNxfuk4dxo5kOs7oGGmUeaEXz TLNMpL3897iwq9CDrIA8HcNo+KIWQOPhWqZ5Irq3frUa/3M3dZ150ZgcJEg2i7Fh5DrjZJ fj2MbCraVHcG/+N/ricoBw/Zi0IRE0gBuGm/K/njdlwq2MJTZTOjv0oD7lzUVQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWq1LzkzZfy; Mon, 21 Oct 2024 15:05: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 49LF5B5S046989; Mon, 21 Oct 2024 15:05:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5Bok046986; Mon, 21 Oct 2024 15:05:11 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:11 GMT Message-Id: <202410211505.49LF5Bok046986@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 7588c7024ed9 - stable/14 - arm64: Add the SVE registers to the signal frame List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7588c7024ed9b3d9845529edd56e46b675430a02 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=7588c7024ed9b3d9845529edd56e46b675430a02 commit 7588c7024ed9b3d9845529edd56e46b675430a02 Author: Andrew Turner AuthorDate: 2024-09-27 13:37:03 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Add the SVE registers to the signal frame Use the new extended register support in the arm64 signal frame to handle the SVE registers. As these registers alias the VFP registers we use the floating point register values to restore the lower bits of the SVE registers. This is to support software that doesn't understand SVE to continue working. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43307 (cherry picked from commit e45132e978030f0aa964d975a9fbad5614f260bd) --- sys/arm64/arm64/exec_machdep.c | 88 +++++++++++++++++++++++++++++++++++++++++- sys/arm64/include/ucontext.h | 8 ++++ 2 files changed, 94 insertions(+), 2 deletions(-) diff --git a/sys/arm64/arm64/exec_machdep.c b/sys/arm64/arm64/exec_machdep.c index 31191ec21602..67760850c56a 100644 --- a/sys/arm64/arm64/exec_machdep.c +++ b/sys/arm64/arm64/exec_machdep.c @@ -464,9 +464,10 @@ set_mcontext(struct thread *td, mcontext_t *mcp) #define PSR_13_MASK 0xfffffffful struct arm64_reg_context ctx; struct trapframe *tf = td->td_frame; + struct pcb *pcb; uint64_t spsr; vm_offset_t addr; - int error; + int error, seen_types; bool done; spsr = mcp->mc_gpregs.gp_spsr; @@ -512,7 +513,11 @@ set_mcontext(struct thread *td, mcontext_t *mcp) /* Read any register contexts we find */ if (mcp->mc_ptr != 0) { addr = mcp->mc_ptr; + pcb = td->td_pcb; + +#define CTX_TYPE_FLAG_SVE (1 << 0) + seen_types = 0; done = false; do { if (!__is_aligned(addr, @@ -524,6 +529,38 @@ set_mcontext(struct thread *td, mcontext_t *mcp) return (error); switch (ctx.ctx_id) { +#ifdef VFP + case ARM64_CTX_SVE: { + struct sve_context sve_ctx; + size_t buf_size; + + if ((seen_types & CTX_TYPE_FLAG_SVE) != 0) + return (EINVAL); + seen_types |= CTX_TYPE_FLAG_SVE; + + if (pcb->pcb_svesaved == NULL) + return (EINVAL); + + /* XXX: Check pcb_svesaved is valid */ + + buf_size = sve_buf_size(td); + /* Check the size is valid */ + if (ctx.ctx_size != + (sizeof(sve_ctx) + buf_size)) + return (EINVAL); + + memset(pcb->pcb_svesaved, 0, + sve_max_buf_size()); + + /* Copy the SVE registers from userspace */ + if (copyin((void *)(addr + sizeof(sve_ctx)), + pcb->pcb_svesaved, buf_size) != 0) + return (EINVAL); + + pcb->pcb_fpflags |= PCB_FP_SVEVALID; + break; + } +#endif case ARM64_CTX_END: done = true; break; @@ -533,6 +570,8 @@ set_mcontext(struct thread *td, mcontext_t *mcp) addr += ctx.ctx_size; } while (!done); + +#undef CTX_TYPE_FLAG_SVE } return (0); @@ -593,7 +632,7 @@ set_fpcontext(struct thread *td, mcontext_t *mcp) sizeof(mcp->mc_fpregs.fp_q)); curpcb->pcb_fpustate.vfp_fpcr = mcp->mc_fpregs.fp_cr; curpcb->pcb_fpustate.vfp_fpsr = mcp->mc_fpregs.fp_sr; - curpcb->pcb_fpflags = mcp->mc_fpregs.fp_flags & PCB_FP_USERMASK; + curpcb->pcb_fpflags = mcp->mc_fpregs.fp_flags & PCB_FP_STARTED; } #endif } @@ -613,6 +652,13 @@ sys_sigreturn(struct thread *td, struct sigreturn_args *uap) if (error != 0) return (error); + /* + * Sync the VFP and SVE registers. To be backwards compatible we + * use the VFP registers to restore the lower bits of the SVE + * register it aliases. + */ + vfp_to_sve_sync(td); + /* Restore signal mask. */ kern_sigprocmask(td, SIG_SETMASK, &uc.uc_sigmask, NULL, 0); @@ -638,9 +684,47 @@ sendsig_ctx_end(struct thread *td, vm_offset_t *addrp) return (true); } +static bool +sendsig_ctx_sve(struct thread *td, vm_offset_t *addrp) +{ + struct sve_context ctx; + struct pcb *pcb; + size_t buf_size; + vm_offset_t ctx_addr; + + pcb = td->td_pcb; + /* Do nothing if sve hasn't started */ + if (pcb->pcb_svesaved == NULL) + return (true); + + MPASS(pcb->pcb_svesaved != NULL); + + buf_size = sve_buf_size(td); + + /* Address for the full context */ + *addrp -= sizeof(ctx) + buf_size; + ctx_addr = *addrp; + + memset(&ctx, 0, sizeof(ctx)); + ctx.sve_ctx.ctx_id = ARM64_CTX_SVE; + ctx.sve_ctx.ctx_size = sizeof(ctx) + buf_size; + ctx.sve_vector_len = pcb->pcb_sve_len; + ctx.sve_flags = 0; + + /* Copy out the header and data */ + if (copyout(&ctx, (void *)ctx_addr, sizeof(ctx)) != 0) + return (false); + if (copyout(pcb->pcb_svesaved, (void *)(ctx_addr + sizeof(ctx)), + buf_size) != 0) + return (false); + + return (true); +} + typedef bool(*ctx_func)(struct thread *, vm_offset_t *); static const ctx_func ctx_funcs[] = { sendsig_ctx_end, /* Must be first to end the linked list */ + sendsig_ctx_sve, NULL, }; diff --git a/sys/arm64/include/ucontext.h b/sys/arm64/include/ucontext.h index dedbd061ec6b..a4f0ee243b3a 100644 --- a/sys/arm64/include/ucontext.h +++ b/sys/arm64/include/ucontext.h @@ -62,6 +62,14 @@ struct arm64_reg_context { }; #define ARM64_CTX_END 0xa5a5a5a5 +#define ARM64_CTX_SVE 0x00657673 + +struct sve_context { + struct arm64_reg_context sve_ctx; + __uint16_t sve_vector_len; + __uint16_t sve_flags; + __uint16_t sve_reserved[2]; +}; struct __mcontext { struct gpregs mc_gpregs; From nobody Mon Oct 21 15:05:12 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWr6ly0z5ZP24; Mon, 21 Oct 2024 15:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWr3Tm4z4fNH; Mon, 21 Oct 2024 15:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ct16RH/8KacMemrXOgO07yiHrmg6vkbzgpc3TfBwQzU=; b=iEzDJYvcDFDY/jpsa6pUfmU1fB92IrrF5xYm6LjIMhu68xT4Z8jL7kcc37FfhttFw2EPZB VxVpKAEwQT2uPnyaSfrjSnDzyNJ7sYxGe/xzCidZe0a5OoK6rCTGf09dkQMYIiwXFLrGb2 THWBgeERTO3Z2mWgikZnfGLR3Ac7syLbr54zoa3yf60XLxMzphs90pihMwuzy5epwO0IfC pOrsMUAXaysLAJpp9wtBJm9M3EDtcyrz5GBTa+9rtxS3wPgp+QrvaO0IDaLv7ckCLVD6GF 8AuU5oMht6g9K56tV+Cq1jesrCll/1JRn8Xp5v9cYu6wVhXXm5KlaU875wLBSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ct16RH/8KacMemrXOgO07yiHrmg6vkbzgpc3TfBwQzU=; b=jnvoJyy7VPng3YHJF8hTU9o6qQWs6HfaSD5fCxvaUkgr3CvHCvkzqGjFBKP65Rj+F8DQDP qZNEQYLw7U2q887UzGnWANVPD9HyQJbZrB8YgRUTPagzyUUhmFQstnjrb5uPQcy5xShKmi PoIdi6p1BPj/QcNkvqvqQUiRj5HcZDwxMYGyYQSddqsbkIUBHYioF8w89wWHVK52oYMjH9 ftJWBu7Od6u9X/9BfWS7NANGl9cV4YVcBdpwRLodNNw94lfUOC/XxLVYdp7+Ye59rJG1mT FdqZEVtl3B5u0GlIWG7/ZdnzuUXf2n/rnAxTYicZpNOGiAEtfrDUJWlNx53sQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523112; a=rsa-sha256; cv=none; b=Id6G4hj8+55Z7oW3W0BNKxtBsxj/zss0k0DLsyIpRujC5grf1I8L9WsbBQDbYBifK1lLqI 2cOoz06heb+eWEGayobZWVHYQgEgZGv7+83T8ldA5DNyIKBB3drEFIcJnvbacy8njAnif0 lcDZicCjy+Tg8bOvTOINZD9uhvpG4rglpxZHih3itoIpbiWl0vwTeZHbRZEew3E3V6ZfI2 Jv2xgHjnUaNp0vIU+i01pgCSpUHSy8Fic/gDVZYQqmCOvNm2An7a/0G3YZiYS5UsKZZuyd MBD3wN2oIpMRuDRmzkKzAfrabB8+3Io1kuE3fAlacXTY7rpHRsopDCg6tmbEkA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWr2RPVzZg0; Mon, 21 Oct 2024 15:05: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 49LF5Cnc047035; Mon, 21 Oct 2024 15:05:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5CQY047032; Mon, 21 Oct 2024 15:05:12 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:12 GMT Message-Id: <202410211505.49LF5CQY047032@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: aa594ddcc854 - stable/14 - arm64: Add an SVE sysarch List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: aa594ddcc85459ed342694816df26434e96ba88a Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=aa594ddcc85459ed342694816df26434e96ba88a commit aa594ddcc85459ed342694816df26434e96ba88a Author: Andrew Turner AuthorDate: 2024-09-27 13:37:10 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:26 +0000 arm64: Add an SVE sysarch To allow for user space to read the SVE vector length add a sysarch handler to return the value to userspace. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43308 (cherry picked from commit 87a58d931db7b40d8d225a7edb82b78937078b7f) --- sys/arm64/arm64/sys_machdep.c | 22 +++++++++++++++++++++- sys/arm64/include/sysarch.h | 3 +++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/sys/arm64/arm64/sys_machdep.c b/sys/arm64/arm64/sys_machdep.c index c50b745cfba0..aba864b9526e 100644 --- a/sys/arm64/arm64/sys_machdep.c +++ b/sys/arm64/arm64/sys_machdep.c @@ -29,14 +29,34 @@ #include #include +#include #include #include +#include #include +#include + int sysarch(struct thread *td, struct sysarch_args *uap) { + struct pcb *pcb; + unsigned long sve_len; + int error; + + switch (uap->op) { + case ARM64_GET_SVE_VL: + pcb = td->td_pcb; + sve_len = pcb->pcb_sve_len; + error = EINVAL; + if (sve_len != 0) + error = copyout(&sve_len, uap->parms, sizeof(sve_len)); + break; + default: + error = EINVAL; + break; + } - return (ENOTSUP); + return (error); } diff --git a/sys/arm64/include/sysarch.h b/sys/arm64/include/sysarch.h index 2bd45d384743..f72d3427602e 100644 --- a/sys/arm64/include/sysarch.h +++ b/sys/arm64/include/sysarch.h @@ -39,6 +39,9 @@ #ifndef _MACHINE_SYSARCH_H_ #define _MACHINE_SYSARCH_H_ +#define ARM64_GET_SVE_VL 0x200 +/* Reserved ARM64_SET_SVE_VL 0x201 */ + #ifndef _KERNEL __BEGIN_DECLS From nobody Mon Oct 21 15:05:13 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWt0XjYz5ZNSZ; Mon, 21 Oct 2024 15:05:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWs3hpdz4fRB; Mon, 21 Oct 2024 15:05:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523113; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LcOhJTVwBpnQW2X1GCOsei0+1EnSKFhajxBtyN1ZqsU=; b=FY8hMwQp1kNdgCFhBxuSd7d4Ebb4ILIahiYMtVpl6mY7E6U+uqWrC53mquADoairRlHgpW g5p6ye8Xj2kpIx6+aEhz4dIWdBdedM6jgNqjxXupt1EsP+MYdlEm9MqW8w8ph2OYjklDlA mHy8P5Y0Ci4yKn6uxIsBdcL/AVTSKGiX/WdfDk1IVpAnX/VINB/BocPDHXby0TGCAqKJiH pcoddQ1MzuxF8pLG4H6zJDu1QZw/hYYe8MStOOEGIuVoSrG/78DxkkshBxOaptr8xspCGm ZXeiy0KmnWS0SE4PF4aaRcypN1uwN+fdN5bZfQXmL0yf64/cSVF2l34a3hh6KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523113; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LcOhJTVwBpnQW2X1GCOsei0+1EnSKFhajxBtyN1ZqsU=; b=vG1Mc+REzBmWXP7O1OQL72bTRZ50H2VIRMEuK7GjYNtby6HS+OyI/KTwjCint8ZB5lBa2F tybfPB1IMMhpcgLH9q0ehzJ9g8OydJj8RIxAeSk7yN+2RuVNDNBXJBf5tUrzWLzUnifVH1 pD5R1jAOGjaa3D+q74qdFY+DQi5FIC+O5QZpPJe0xXNRZiq6wxs5v+i8mTzGQU0zqg9snO 62uGaADgM/OdekZXq8ygSdRe+tjfrtGZWPvysC70q468+UI/VZe3BUyNWE7Lu/ww0kWuR4 nHpI6X6dbZPcd0OBR+2xcJqvhThwcFNGVmHUOpOn62i+5bT6nAmhKtOwQimR2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523113; a=rsa-sha256; cv=none; b=Jp+AR4NYtmsc8WoLwncsA2IOESykgKvGW+4m9Zwdf/MCNlqh+hIKCYaJdqijM0UII6KGaN /raM6UyyiErORaA1NogRgjZ/kgVKcMNT63D22UyMMe656a1eLR+n6xGGoG9ev0jqe3htwj 64HJcnWo1w2NBLjaapivY+HEr5DoW2IEnkXhMaiAvJsIVJE93mxhfbTJ/ej2pG3kIlygrY DWTqpgTQS8cWq3UQH5OjACdua8QrmEmkX+11G+ReN8mMY/Uvm4Gz+JJ+KCtLS3euL8YrgI 9f0d5c7hPI/z/t0jPwfLQt1PQy/oe1wzyPO3gOEs6rfpFsLR048hlGjSmImYuw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWs3K0jzbDV; Mon, 21 Oct 2024 15:05: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 49LF5DrL047090; Mon, 21 Oct 2024 15:05:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5DPS047087; Mon, 21 Oct 2024 15:05:13 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:13 GMT Message-Id: <202410211505.49LF5DPS047087@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: f7caa6fb7489 - stable/14 - arm64: Support SVE in ptrace and core dumps List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f7caa6fb7489b7e9721f064e39050614ae0fc875 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=f7caa6fb7489b7e9721f064e39050614ae0fc875 commit f7caa6fb7489b7e9721f064e39050614ae0fc875 Author: Andrew Turner AuthorDate: 2024-09-27 13:37:17 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 arm64: Support SVE in ptrace and core dumps Add the NT_ARM_SVE note type and use it to access the SVE registers from ptrace. This allows userspace to modify the full SVE register values. Try to follow the Linux semantics to allow debuggers to use this with minimal changes. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43309 (cherry picked from commit aab60068943d733b0b4573e5481c543ab3d45a00) --- sys/arm64/arm64/vfp.c | 141 ++++++++++++++++++++++++++++++++++++++++++++++++ sys/arm64/include/reg.h | 13 +++++ sys/sys/elf_common.h | 1 + 3 files changed, 155 insertions(+) diff --git a/sys/arm64/arm64/vfp.c b/sys/arm64/arm64/vfp.c index d57927991c03..a3aa77ed6180 100644 --- a/sys/arm64/arm64/vfp.c +++ b/sys/arm64/arm64/vfp.c @@ -30,12 +30,14 @@ #ifdef VFP #include #include +#include #include #include #include #include #include #include +#include #include #include @@ -918,6 +920,145 @@ sve_init(const void *dummy __unused) } SYSINIT(sve, SI_SUB_SMP, SI_ORDER_ANY, sve_init, NULL); +static bool +get_arm64_sve(struct regset *rs, struct thread *td, void *buf, + size_t *sizep) +{ + struct svereg_header *header; + struct pcb *pcb; + size_t buf_size; + uint16_t sve_flags; + + pcb = td->td_pcb; + + /* If there is no SVE support in HW then we don't support NT_ARM_SVE */ + if (pcb->pcb_sve_len == 0) + return (false); + + sve_flags = 0; + if ((pcb->pcb_fpflags & PCB_FP_SVEVALID) == 0) { + /* If SVE hasn't been used yet provide the VFP registers */ + buf_size = sizeof(struct fpreg); + sve_flags |= SVEREG_FLAG_FP; + } else { + /* We have SVE registers */ + buf_size = sve_buf_size(td); + sve_flags |= SVEREG_FLAG_SVE; + KASSERT(pcb->pcb_svesaved != NULL, ("%s: no saved sve", + __func__)); + } + + if (buf != NULL) { + KASSERT(*sizep == sizeof(struct svereg_header) + buf_size, + ("%s: invalid size", __func__)); + + if (td == curthread && (pcb->pcb_fpflags & PCB_FP_STARTED) != 0) + vfp_save_state(td, pcb); + + header = buf; + memset(header, 0, sizeof(*header)); + + header->sve_size = sizeof(struct svereg_header) + buf_size; + header->sve_maxsize = sizeof(struct svereg_header) + + sve_max_buf_size(); + header->sve_vec_len = pcb->pcb_sve_len; + header->sve_max_vec_len = sve_max_vector_len; + header->sve_flags = sve_flags; + + if ((sve_flags & SVEREG_FLAG_REGS_MASK) == SVEREG_FLAG_FP) { + struct fpreg *fpregs; + + fpregs = (void *)(&header[1]); + memcpy(fpregs->fp_q, pcb->pcb_fpustate.vfp_regs, + sizeof(fpregs->fp_q)); + fpregs->fp_cr = pcb->pcb_fpustate.vfp_fpcr; + fpregs->fp_sr = pcb->pcb_fpustate.vfp_fpsr; + } else { + memcpy((void *)(&header[1]), pcb->pcb_svesaved, + buf_size); + } + } + *sizep = sizeof(struct svereg_header) + buf_size; + + return (true); +} + +static bool +set_arm64_sve(struct regset *rs, struct thread *td, void *buf, size_t size) +{ + struct svereg_header *header; + struct pcb *pcb; + size_t buf_size; + uint16_t sve_flags; + + pcb = td->td_pcb; + + /* If there is no SVE support in HW then we don't support NT_ARM_SVE */ + if (pcb->pcb_sve_len == 0) + return (false); + + sve_flags = 0; + if ((pcb->pcb_fpflags & PCB_FP_SVEVALID) == 0) { + /* + * If the SVE state is invalid it provide the FP registers. + * This may be beause it hasn't been used, or it has but + * was switched out in a system call. + */ + buf_size = sizeof(struct fpreg); + sve_flags |= SVEREG_FLAG_FP; + } else { + /* We have SVE registers */ + MPASS(pcb->pcb_svesaved != NULL); + buf_size = sve_buf_size(td); + sve_flags |= SVEREG_FLAG_SVE; + KASSERT(pcb->pcb_svesaved != NULL, ("%s: no saved sve", + __func__)); + } + + if (size != sizeof(struct svereg_header) + buf_size) + return (false); + + header = buf; + /* Sanity checks on the header */ + if (header->sve_size != sizeof(struct svereg_header) + buf_size) + return (false); + + if (header->sve_maxsize != sizeof(struct svereg_header) + + sve_max_buf_size()) + return (false); + + if (header->sve_vec_len != pcb->pcb_sve_len) + return (false); + + if (header->sve_max_vec_len != sve_max_vector_len) + return (false); + + if (header->sve_flags != sve_flags) + return (false); + + if ((sve_flags & SVEREG_FLAG_REGS_MASK) == SVEREG_FLAG_FP) { + struct fpreg *fpregs; + + fpregs = (void *)(&header[1]); + memcpy(pcb->pcb_fpustate.vfp_regs, fpregs->fp_q, + sizeof(fpregs->fp_q)); + pcb->pcb_fpustate.vfp_fpcr = fpregs->fp_cr; + pcb->pcb_fpustate.vfp_fpsr = fpregs->fp_sr; + } else { + /* Restore the SVE registers */ + memcpy(pcb->pcb_svesaved, (void *)(&header[1]), buf_size); + } + + return (true); +} + +static struct regset regset_arm64_sve = { + .note = NT_ARM_SVE, + .get = get_arm64_sve, + .set = set_arm64_sve, +}; +ELF_REGSET(regset_arm64_sve); + struct fpu_kern_ctx * fpu_kern_alloc_ctx(u_int flags) { diff --git a/sys/arm64/include/reg.h b/sys/arm64/include/reg.h index c699752197a8..4226385480e8 100644 --- a/sys/arm64/include/reg.h +++ b/sys/arm64/include/reg.h @@ -63,6 +63,19 @@ struct fpreg32 { int dummy; }; +#define SVEREG_FLAG_REGS_MASK 0x0001 +#define SVEREG_FLAG_FP 0x0000 +#define SVEREG_FLAG_SVE 0x0001 + +struct svereg_header { + __uint32_t sve_size; + __uint32_t sve_maxsize; + __uint16_t sve_vec_len; + __uint16_t sve_max_vec_len; + __uint16_t sve_flags; + __uint16_t sve_reserved; +}; + struct dbreg { __uint8_t db_debug_ver; __uint8_t db_nbkpts; diff --git a/sys/sys/elf_common.h b/sys/sys/elf_common.h index b9e82cb8fa35..0c7d7e2b2fc3 100644 --- a/sys/sys/elf_common.h +++ b/sys/sys/elf_common.h @@ -826,6 +826,7 @@ typedef struct { #define NT_X86_XSTATE 0x202 /* x86 XSAVE extended state. */ #define NT_ARM_VFP 0x400 /* ARM VFP registers */ #define NT_ARM_TLS 0x401 /* ARM TLS register */ +#define NT_ARM_SVE 0x405 /* ARM SVE registers */ #define NT_ARM_ADDR_MASK 0x406 /* arm64 address mask (e.g. for TBI) */ /* GNU note types. */ From nobody Mon Oct 21 15:05:15 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWw1H4Vz5ZNrj; Mon, 21 Oct 2024 15:05:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWv6Sy7z4fTk; Mon, 21 Oct 2024 15:05:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523115; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gYtwz7AD8FLK4icVLieLkRJ/qxPWOM9V9c21OSoXk+0=; b=HQ5/7Bd/7hjlhBszJHnHdQ7MA2ROEcfFqJf5ZYpKdVBI7jMc6TX1wPYDSX9xx9/CEO8bLZ ZBrhXq+1t4RPTeLc4ffIgSsJvPJer1oe+QHoZmSJcAulDMkvr5h7WsmumeJVHxDZCWFHf5 q3xePrVwFkNCFbnHprh7OU9eZU/+TTNhIzEfKAG2gE9tMJ4dWSSj9+V2oIviRMqcHtzWf1 cPoqc4LiXtCIvJjEdyEuGF4bj5fryBbXaCklmhJuRK2jP3KLJ+kkBErAPq6J/Flvby521q t3MpLJGLDctyMpayvWPWeaACQ/W6GF2oBFnw2rFphyu5ZraIiFDfAg1ougJefg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523115; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gYtwz7AD8FLK4icVLieLkRJ/qxPWOM9V9c21OSoXk+0=; b=i7D+bWYkIE02FK7E5QUzTyjBJYxofhxgF3ZU9OuJdw4pFkxOSpnS91pGsfJ+IOoRfIpHd3 FzQA2+qfpa59pTKzNCiGNniUvy5h0dPZkiBajaO5PJ2wDw8csM2gy/iTw5KvvDKrcOjr0T uyW9g3dFmg4tHW8vAHarPUPofRZGiRaZDQqNB3wWsm+8DI2AHmaZPxVLss2jWwHQoNex4Z aEwPIcjukG6eiPsuF42PuBYJe9r9bcyhfl5+nZBQj7NmorRY3gyQLXYh0Bdc4iEx5PZIzo hN7wMsn3k84GJ9G20KNGEHRYqGGRb16IhGmYkp2h0Xf8rD73aSkPOUw0QTMnhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523115; a=rsa-sha256; cv=none; b=i8B3NIs3yPEhRViGJ6AM/gBbnU8nAlzu3Jl9eJ5oDjtrLr6RlIV8aL4NSbdjrhU/2+S3bl DiqC1b/h+wh/dgubQrGLM+cmaKVKzIjC7UYXMiHl3dzc1HlOJVj2aC+idLsgP6Kfs+6NgW h0TU7bVhURkQYuJLv70RvSOcmCQ8YS1WgVDxaHMEauLUQJT81Y/ZeWpqgmelbJLEch9wPP N6V4K1W6NASCZqnDdmes55RDs8VNTep6WL9Q5V4opZoxJ4TuD8i+QrVkXF+uksmAKNmJmG n2aHl3kUudlCbF2pELswIF7WgP961LnsBjIGP/1D8RQz7iP6Lz5UNrBkhcVT+g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWv5Cgpzb4w; Mon, 21 Oct 2024 15:05:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LF5FCj047204; Mon, 21 Oct 2024 15:05:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5Ffo047201; Mon, 21 Oct 2024 15:05:15 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:15 GMT Message-Id: <202410211505.49LF5Ffo047201@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 1f9635e2c213 - stable/14 - arm64: Enable SVE in userspace List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1f9635e2c213368cfed3737970f3814fbb55a922 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=1f9635e2c213368cfed3737970f3814fbb55a922 commit 1f9635e2c213368cfed3737970f3814fbb55a922 Author: Andrew Turner AuthorDate: 2024-09-27 14:06:03 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 arm64: Enable SVE in userspace Report when SVE is present and allow it to be used by calling sve_restore_state on an SVE exception from userspace. Reviewed by: kib Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43310 (cherry picked from commit 205c1007be6d57b2eb8620f79384cb2299dde40e) --- sys/arm64/arm64/identcpu.c | 82 ++++++++++++++++++++++++++++++++++++++-------- sys/arm64/arm64/trap.c | 6 ++-- sys/arm64/include/armreg.h | 1 + 3 files changed, 74 insertions(+), 15 deletions(-) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 84ad2d0eb282..22978af219dc 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -1384,13 +1384,10 @@ static const struct mrs_field_value id_aa64pfr0_sve[] = { MRS_FIELD_VALUE_END, }; -#if 0 -/* Enable when we add SVE support */ static const struct mrs_field_hwcap id_aa64pfr0_sve_caps[] = { MRS_HWCAP(1, HWCAP_SVE, ID_AA64PFR0_SVE_IMPL), MRS_HWCAP_END }; -#endif static const struct mrs_field_value id_aa64pfr0_ras[] = { MRS_FIELD_VALUE(ID_AA64PFR0_RAS_NONE, ""), @@ -1464,7 +1461,8 @@ static const struct mrs_field id_aa64pfr0_fields[] = { MRS_FIELD(ID_AA64PFR0, AMU, false, MRS_EXACT, id_aa64pfr0_amu), MRS_FIELD(ID_AA64PFR0, MPAM, false, MRS_EXACT, id_aa64pfr0_mpam), MRS_FIELD(ID_AA64PFR0, SEL2, false, MRS_EXACT, id_aa64pfr0_sel2), - MRS_FIELD(ID_AA64PFR0, SVE, false, MRS_EXACT, id_aa64pfr0_sve), + MRS_FIELD_HWCAP_SPLIT(ID_AA64PFR0, SVE, false, MRS_LOWER, MRS_EXACT, + id_aa64pfr0_sve, id_aa64pfr0_sve_caps), MRS_FIELD(ID_AA64PFR0, RAS, false, MRS_EXACT, id_aa64pfr0_ras), MRS_FIELD(ID_AA64PFR0, GIC, false, MRS_EXACT, id_aa64pfr0_gic), MRS_FIELD_HWCAP(ID_AA64PFR0, AdvSIMD, true, MRS_LOWER, @@ -1581,59 +1579,117 @@ static const struct mrs_field_value id_aa64zfr0_f64mm[] = { MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_f64mm_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEF64MM, ID_AA64ZFR0_F64MM_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_f32mm[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, F32MM, NONE, IMPL), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_f32mm_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEF32MM, ID_AA64ZFR0_F32MM_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_i8mm[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, I8MM, NONE, IMPL), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_i8mm_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEI8MM, ID_AA64ZFR0_I8MM_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_sm4[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, SM4, NONE, IMPL), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_sm4_caps[] = { + MRS_HWCAP(2, HWCAP2_SVESM4, ID_AA64ZFR0_SM4_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_sha3[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, SHA3, NONE, IMPL), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_sha3_caps[] = { + MRS_HWCAP(2, HWCAP2_SVESHA3, ID_AA64ZFR0_SHA3_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_bf16[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, BF16, NONE, BASE), MRS_FIELD_VALUE(ID_AA64ZFR0_BF16_EBF, "BF16+EBF"), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_bf16_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEBF16, ID_AA64ZFR0_BF16_BASE), + MRS_HWCAP(2, HWCAP2_SVE_EBF16, ID_AA64ZFR0_BF16_EBF), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_bitperm[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, BitPerm, NONE, IMPL), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_bitperm_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEBITPERM, ID_AA64ZFR0_BitPerm_IMPL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_aes[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ZFR0, AES, NONE, BASE), MRS_FIELD_VALUE(ID_AA64ZFR0_AES_PMULL, "AES+PMULL"), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_aes_caps[] = { + MRS_HWCAP(2, HWCAP2_SVEAES, ID_AA64ZFR0_AES_BASE), + MRS_HWCAP(2, HWCAP2_SVEPMULL, ID_AA64ZFR0_AES_PMULL), + MRS_HWCAP_END, +}; + static const struct mrs_field_value id_aa64zfr0_svever[] = { MRS_FIELD_VALUE(ID_AA64ZFR0_SVEver_SVE1, "SVE1"), MRS_FIELD_VALUE(ID_AA64ZFR0_SVEver_SVE2, "SVE2"), + MRS_FIELD_VALUE(ID_AA64ZFR0_SVEver_SVE2P1, "SVE2P1"), MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64zfr0_svever_caps[] = { + MRS_HWCAP(2, HWCAP2_SVE2, ID_AA64ZFR0_SVEver_SVE2), + MRS_HWCAP(2, HWCAP2_SVE2P1, ID_AA64ZFR0_SVEver_SVE2P1), + MRS_HWCAP_END, +}; + static const struct mrs_field id_aa64zfr0_fields[] = { - MRS_FIELD(ID_AA64ZFR0, F64MM, false, MRS_EXACT, id_aa64zfr0_f64mm), - MRS_FIELD(ID_AA64ZFR0, F32MM, false, MRS_EXACT, id_aa64zfr0_f32mm), - MRS_FIELD(ID_AA64ZFR0, I8MM, false, MRS_EXACT, id_aa64zfr0_i8mm), - MRS_FIELD(ID_AA64ZFR0, SM4, false, MRS_EXACT, id_aa64zfr0_sm4), - MRS_FIELD(ID_AA64ZFR0, SHA3, false, MRS_EXACT, id_aa64zfr0_sha3), - MRS_FIELD(ID_AA64ZFR0, BF16, false, MRS_EXACT, id_aa64zfr0_bf16), - MRS_FIELD(ID_AA64ZFR0, BitPerm, false, MRS_EXACT, id_aa64zfr0_bitperm), - MRS_FIELD(ID_AA64ZFR0, AES, false, MRS_EXACT, id_aa64zfr0_aes), - MRS_FIELD(ID_AA64ZFR0, SVEver, false, MRS_EXACT, id_aa64zfr0_svever), + MRS_FIELD_HWCAP(ID_AA64ZFR0, F64MM, false, MRS_LOWER, + id_aa64zfr0_f64mm, id_aa64zfr0_f64mm_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, F32MM, false, MRS_LOWER, + id_aa64zfr0_f32mm, id_aa64zfr0_f32mm_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, I8MM, false, MRS_LOWER, id_aa64zfr0_i8mm, + id_aa64zfr0_i8mm_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, SM4, false, MRS_LOWER, id_aa64zfr0_sm4, + id_aa64zfr0_sm4_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, SHA3, false, MRS_LOWER, id_aa64zfr0_sha3, + id_aa64zfr0_sha3_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, BF16, false, MRS_LOWER, id_aa64zfr0_bf16, + id_aa64zfr0_bf16_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, BitPerm, false, MRS_LOWER, + id_aa64zfr0_bitperm, id_aa64zfr0_bitperm_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, AES, false, MRS_LOWER, id_aa64zfr0_aes, + id_aa64zfr0_aes_caps), + MRS_FIELD_HWCAP(ID_AA64ZFR0, SVEver, false, MRS_LOWER, + id_aa64zfr0_svever, id_aa64zfr0_svever_caps), MRS_FIELD_END, }; diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index 78582f5ac563..64a27b138a9a 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -635,8 +635,10 @@ do_el0_sync(struct thread *td, struct trapframe *frame) #endif break; case EXCP_SVE: - call_trapsignal(td, SIGILL, ILL_ILLTRP, (void *)frame->tf_elr, - exception); + /* Returns true if this thread can use SVE */ + if (!sve_restore_state(td)) + call_trapsignal(td, SIGILL, ILL_ILLTRP, + (void *)frame->tf_elr, exception); userret(td, frame); break; case EXCP_SVC32: diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 2b92c036ef1c..6a3db5adc930 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -1535,6 +1535,7 @@ #define ID_AA64ZFR0_SVEver_VAL(x) ((x) & ID_AA64ZFR0_SVEver_MASK #define ID_AA64ZFR0_SVEver_SVE1 (UL(0x0) << ID_AA64ZFR0_SVEver_SHIFT) #define ID_AA64ZFR0_SVEver_SVE2 (UL(0x1) << ID_AA64ZFR0_SVEver_SHIFT) +#define ID_AA64ZFR0_SVEver_SVE2P1 (UL(0x2) << ID_AA64ZFR0_SVEver_SHIFT) #define ID_AA64ZFR0_AES_SHIFT 4 #define ID_AA64ZFR0_AES_MASK (UL(0xf) << ID_AA64ZFR0_AES_SHIFT) #define ID_AA64ZFR0_AES_VAL(x) ((x) & ID_AA64ZFR0_AES_MASK From nobody Mon Oct 21 15:05:14 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWt6bTZz5ZNSb; Mon, 21 Oct 2024 15:05:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWt4fZQz4fRM; Mon, 21 Oct 2024 15:05:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523114; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4cQ5tXdfhKKUlLBq2QRYtTv04p6TpBjEGzSHMJ924YI=; b=K7sqxmjzxA9ib2q8BHwFPjXwPcH03ynCy3lxW+ekoDAiHde5FN3zqI2Z04n/kStAhCzV5y JO85oV6hmpF/341Dn6CPQi3hCkHOF14yGzOtQdpJ2dpPUCBrD1EcxvRs7aALXMTOuKH+hR 9Jtj2HbCGGa//LTa7+/C2hbXwb9+Z4QQd4jRZO+Qj5vlLVUXB/iMPLiirQiW/7Gmvsd3RB F6n62QYCqQgGLeywFwfsrdwR8I4WqrkRyF3FfW3KPtVgAv28mQyXXyw1eqc6gujRPkvLvK Q2PmWnrEplnhL4c7hMGK8U8VEP6huMfeN6sGFrko12a/TOvnIICDqL9/zFUjTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523114; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4cQ5tXdfhKKUlLBq2QRYtTv04p6TpBjEGzSHMJ924YI=; b=HfBu2BWhQhTFMF9iQgyVxgFB+6PwA0k+lJeqr5gW+9ub5dDA+FohVhT1QHNoCAz98VI9w1 5twKlj/8wJCVVCY+k8Y5z/uStIMBLb/1kU+7+PsAnIE+8LERC2XnG0xQVmhJ0817KABg5L n2ybdGJVNRSHjSQAqunJnyW1+Dc2MSbAfYe8nAOm2AmabYTnvk5xW2BiUQkgFQzfPVBZhW anryL/yxCHAgMB6fZfajtJe2maw/7hmyphwxXqBm6Rqq9jzSvoqBJrzG6UWy8n5jnMH+Qe +226XdFftWDkDO0Zzy4dc6VGQw5TpjW7IbR6rmtqAzN8kOHkXYRQboZ3MkyD7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523114; a=rsa-sha256; cv=none; b=TychaT+V+r2uWYu78HPWln7gYGegxEhKhkR+M1AwZPPRzbjeG+bZI79s42OQ0TYp3dqZpN YBUl/sfgaVVnCpljs8QQVXoPqHZbGXBkGmswpvfUT3u7non4K4ZjzxzpQ1uEwZkFMliCo6 Fgljfapfi0W6lA1X+ZyXyMGl9eca1R0oQANe9mDPshdukfQToSqxIr5haqxFbtm4g15nwc YqYVRKZt4h3WgEywrdZNSVQjV+mDi84EDei1AfVzN/tcoEqwpvJBsIOfo0t/0DEIfwzsum aG4e3fXVm0iN0I4KAC0KqaGMGAjOzoE1DiXqtmWSVaR6NZAJwuGtP7+zzNqLXw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWt4GXLzbL8; Mon, 21 Oct 2024 15:05: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 49LF5Ex8047144; Mon, 21 Oct 2024 15:05:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5EhO047141; Mon, 21 Oct 2024 15:05:14 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:14 GMT Message-Id: <202410211505.49LF5EhO047141@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: a16f10ab0aa7 - stable/14 - arm64: Don't trap SVE to EL2 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a16f10ab0aa76d88cc45cc01fae44b94d1873bbc Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=a16f10ab0aa76d88cc45cc01fae44b94d1873bbc commit a16f10ab0aa76d88cc45cc01fae44b94d1873bbc Author: Andrew Turner AuthorDate: 2024-09-27 13:41:08 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 arm64: Don't trap SVE to EL2 As with floating point instructions don't trap SVE instructions to the hypervisor. This lets us handle then in the kernel. Reviewed by: imp (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43303 (cherry picked from commit fe5ed2496e44aec018a6215175bba225b20d81fd) --- sys/arm64/include/hypervisor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/include/hypervisor.h b/sys/arm64/include/hypervisor.h index 602436d2a725..324b28673b14 100644 --- a/sys/arm64/include/hypervisor.h +++ b/sys/arm64/include/hypervisor.h @@ -50,7 +50,7 @@ /* CPTR_EL2 - Architecture feature trap register */ /* Valid if HCR_EL2.E2H == 0 */ #define CPTR_RES0 0x7fefc800 -#define CPTR_RES1 0x000033ff +#define CPTR_RES1 0x000032ff #define CPTR_TFP 0x00000400 /* Valid if HCR_EL2.E2H == 1 */ #define CPTR_FPEN 0x00300000 From nobody Mon Oct 21 15:05:16 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWx380Tz5ZNfc; Mon, 21 Oct 2024 15: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWx00D4z4ffY; Mon, 21 Oct 2024 15: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=1729523117; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7v4adu34jN91WUjLXhTcUE2CCBhNrsvwldfCmW5DI7A=; b=dxOvx0BAXwFSdwXMYuhSGFZS8tgjyjLRsvRj0JZQYq9fxU/fmiNJPRgk4TJTvR2ckG8sA3 6uKNAwEesTy2pXU4NeljW3o1tKUjTE6F1AemUPEg1nhSRYgViQv3DVRba336N14euVfwM+ L9wvQvMJp1Bx0onsWwnYWJjQcP/yz/BXsaYb8oDqNyXXCT7jdArOKkdtZy1C0EqeJbzjgn 0r87dtNIcL7282EOImNLVrAz+KvNnzNKtRL73YcPQOSoRwkx0alD/XPPV3NvxjOH3dkmif dbHvPS7WoZe9CEyBdvO7qoPyugaIXPNQ6CzNeb/DkFdOS5oWOcPV7SZgC1/SCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523117; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7v4adu34jN91WUjLXhTcUE2CCBhNrsvwldfCmW5DI7A=; b=OrgrOIlh3etMZCRnq5Hlvw7GfW9f8sRQlT6C1ZLLZ+eY9uRvGoPv/UGk8Y4kvFyGG4j0nt j33SlRzncPU/F8L4o9RKfptTxyXlK9MgYA7YYRgj+TIHLtKT5Vlw7qct53T3glSXhnwbgE 4KnK8W2T/U2Zqw9TJuBgJvhJg3gtcskg7gydhS/qCKOpKQnXrfIOxuDlgaAc4bkaUeD/9/ h0sHNmar/Muqkf4RStINcCnsXV/oQLL26qTFNwVz4VShc2uyv4b8PYSjebUNj9yJZm1Mc1 GTix7NmmRkin3pUhOsa2LCMhgAvfE8VomjsHSgM7JDHG5YHZXGbMR+JMk7j2Jw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523117; a=rsa-sha256; cv=none; b=uiMwNWhGD4FHVjSTNTxgDjr4d35zwLrKmu15GncmL1/2nSZpQ7ppnQqK5QhJLmtJJgdbFp JT/izfFzM9fDxI8i37dew6CAMGPSmtMHOy7VzLOJ4s7YdzcmbRa7QSs4ixUwDjir+xraT8 NfPIPq5oaOIw080vZIqvlrQ1Elg0urGZeXvjDd9YMcXKrn8Nqt1gem8j2FLgjwqdQ88nvT vNxHuMPbQz2rYctbzeDzzICvz9affnt9W6y3sxQh3R+ZDO7On1EWTcHzVdMfHqwPcLRhwj GunDhWjxQaHaRKVQNggneloSnL+6Rz8xh7MhdAz8fcfFQtsbLmqj1Q3xyXhZ8Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWw5wz6zbQm; Mon, 21 Oct 2024 15:05: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 49LF5GKd047246; Mon, 21 Oct 2024 15:05:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5Ggf047243; Mon, 21 Oct 2024 15:05:16 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:16 GMT Message-Id: <202410211505.49LF5Ggf047243@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: c0de8718a5c1 - stable/14 - arm64: Support HWCAP2_AFP and HWCAP2_RPRES List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c0de8718a5c1523c01bf30745a4be80784587fc1 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=c0de8718a5c1523c01bf30745a4be80784587fc1 commit c0de8718a5c1523c01bf30745a4be80784587fc1 Author: Andrew Turner AuthorDate: 2024-10-04 13:08:36 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 arm64: Support HWCAP2_AFP and HWCAP2_RPRES These add alternative behaviour to some floating-point instructions so don't need any kernel support and can just be exposed to userspace. Sponsored by: Arm Ltd (cherry picked from commit 48979e8def00b69a07880e7827af7e32d5e377ff) --- sys/arm64/arm64/identcpu.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 22978af219dc..d0b4f74c8a15 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -943,6 +943,11 @@ static const struct mrs_field_value id_aa64isar2_rpres[] = { MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64isar2_rpres_caps[] = { + MRS_HWCAP(2, HWCAP2_RPRES, ID_AA64ISAR2_RPRES_IMPL), + MRS_HWCAP_END +}; + static const struct mrs_field_value id_aa64isar2_wfxt[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64ISAR2, WFxT, NONE, IMPL), MRS_FIELD_VALUE_END, @@ -957,7 +962,8 @@ static const struct mrs_field id_aa64isar2_fields[] = { id_aa64isar2_apa3, id_aa64isar2_apa3_caps), MRS_FIELD_HWCAP(ID_AA64ISAR2, GPA3, false, MRS_EXACT, id_aa64isar2_gpa3, id_aa64isar2_gpa3_caps), - MRS_FIELD(ID_AA64ISAR2, RPRES, false, MRS_EXACT, id_aa64isar2_rpres), + MRS_FIELD_HWCAP(ID_AA64ISAR2, RPRES, false, MRS_LOWER, + id_aa64isar2_rpres, id_aa64isar2_rpres_caps), MRS_FIELD(ID_AA64ISAR2, WFxT, false, MRS_EXACT, id_aa64isar2_wfxt), MRS_FIELD_END, }; @@ -1100,6 +1106,11 @@ static const struct mrs_field_value id_aa64mmfr1_afp[] = { MRS_FIELD_VALUE_END, }; +static const struct mrs_field_hwcap id_aa64mmfr1_afp_caps[] = { + MRS_HWCAP(2, HWCAP2_AFP, ID_AA64MMFR1_AFP_IMPL), + MRS_HWCAP_END +}; + static const struct mrs_field_value id_aa64mmfr1_hcx[] = { MRS_FIELD_VALUE_NONE_IMPL(ID_AA64MMFR1, HCX, NONE, IMPL), MRS_FIELD_VALUE_END, @@ -1166,7 +1177,8 @@ static const struct mrs_field id_aa64mmfr1_fields[] = { MRS_FIELD(ID_AA64MMFR1, CMOVW, false, MRS_EXACT, id_aa64mmfr1_cmovw), MRS_FIELD(ID_AA64MMFR1, TIDCP1, false, MRS_EXACT, id_aa64mmfr1_tidcp1), MRS_FIELD(ID_AA64MMFR1, nTLBPA, false, MRS_EXACT, id_aa64mmfr1_ntlbpa), - MRS_FIELD(ID_AA64MMFR1, AFP, false, MRS_EXACT, id_aa64mmfr1_afp), + MRS_FIELD_HWCAP(ID_AA64MMFR1, AFP, false, MRS_LOWER, id_aa64mmfr1_afp, + id_aa64mmfr1_afp_caps), MRS_FIELD(ID_AA64MMFR1, HCX, false, MRS_EXACT, id_aa64mmfr1_hcx), MRS_FIELD(ID_AA64MMFR1, ETS, false, MRS_EXACT, id_aa64mmfr1_ets), MRS_FIELD(ID_AA64MMFR1, TWED, false, MRS_EXACT, id_aa64mmfr1_twed), From nobody Mon Oct 21 15:05:17 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWy4vmqz5ZNfh; Mon, 21 Oct 2024 15:05:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWy1Fr8z4fcL; Mon, 21 Oct 2024 15:05:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZljbcU5JPXKtlyUK5/WUjXqEBVOUgboiulGC2Z3Rvog=; b=ZQ5uklZsJsArJueaDZR4GrJOSJ0XfEgmtNk8VGnz5YQqSXzO0I2UIcerx3WnGbY0mz6abm cmZVw5r3AzvVRl8G1G7CB63nnoUwscYa6i0c1VEBcny4ofpqVKestrJOdURXNxBLYlJX8z T4iG3GnjzAWc+VtUmDHJ47peLscmjajIXxhaB7onSQQjjZhGjEY2tYE1rWq+5DOUnoY0BR y+n8oGFlx75AmI52h5Hl/htOfdFve5PFPmzE6ACwd8MhlYcQD3ZPevDp92N5ofBAGmverC N6yJ1/9RHOj2ZGzrOZdiAbuLJ0RyHZoHV8893bdDa8GerxXT7kM7wsH/PpbUdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZljbcU5JPXKtlyUK5/WUjXqEBVOUgboiulGC2Z3Rvog=; b=jKTwhrSL8KsbXhdGekeN1JpLCaRZkiHo2kmDu4FjDjhFOGZAvwo6v5hxDsPUvsBQlYo9Vk c2zYcQulSuI4VULqzjUcln1GrMcoWM2HPoa7Fz6W3UIXbz8TORKbThNRtrBOFjdrU+5kB2 iiBnsfMmAvqKOYgDzFAiq5GWQOmS+2TpcvRmKZIr62ufWI71UOLwTVBJVEYqz8cOIVO7b7 cAF3r5XgJKe+aYC6XB9TqzOT7h8kBt0T/7iGvtOzMqCWuQfC/IvAq5U4ObDhovaoGTQRA1 qs3xSqOTvgtqsWiOmGypQrtvpkvZ2Gg7zb+cxG9SXcfwHqD0g8CHY20L4r+X/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523118; a=rsa-sha256; cv=none; b=KKAvi7qgbMgPZP66AX9rgMnVbvkYvVnZnQAI8HynchJ2+GW2b/LH5KTTHLgjhlbvO/JvwY qXyDMacXjHupc13ojBObuuTXllFC+tMNzwAJfCjSEVgitNqTZ2poOzU0+QEM2IwNeDdUwp e8jyPOnGKsczEBuRkOgl+tg1U2Ea88YPdDoInYeE8Y9KaeB03viDy1tZ52bAS2UgvI/SLG Xy9/5YEVnDoBRxNaLlNYmeBj+PRaW9y1DfERMi8h6rkhvYcpN+u0Ul/BowBmUd7XUhTVB/ k34zROej0ElJD13ZaekOvDxZQ4gmlxgsM+HDVxw0wd0t0Zv9+i57qX5J/1v46Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWy0GPPzbDW; Mon, 21 Oct 2024 15:05:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LF5HSY047294; Mon, 21 Oct 2024 15: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 49LF5HQq047291; Mon, 21 Oct 2024 15:05:17 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:17 GMT Message-Id: <202410211505.49LF5HQq047291@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: ee7cb98d4cd0 - stable/14 - dev/psci: Create macros to simplify calling SMCCC List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ee7cb98d4cd0b53c3a7a1bd2cda476c1726232fc Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=ee7cb98d4cd0b53c3a7a1bd2cda476c1726232fc commit ee7cb98d4cd0b53c3a7a1bd2cda476c1726232fc Author: Andrew Turner AuthorDate: 2024-10-14 14:33:44 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 dev/psci: Create macros to simplify calling SMCCC When calling into SMCCC functions we often only need a few arguments. As the current function needs all 8 possible arguments to be set the unused values will be zero. Create a macro to pass in the used values, followed by enough zeros, then the result pointer. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46986 (cherry picked from commit e4c3536138f4a314dc26331b0a1488faae09aaf4) --- sys/dev/psci/smccc.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/sys/dev/psci/smccc.h b/sys/dev/psci/smccc.h index 96527f037d78..dd10fb8018ae 100644 --- a/sys/dev/psci/smccc.h +++ b/sys/dev/psci/smccc.h @@ -91,6 +91,38 @@ int arm_smccc_smc(register_t, register_t, register_t, register_t, register_t, int arm_smccc_hvc(register_t, register_t, register_t, register_t, register_t, register_t, register_t, register_t, struct arm_smccc_res *res); +#define arm_smccc_invoke_1(func, a0, res) \ + func(a0, 0, 0, 0, 0, 0, 0, 0, res) +#define arm_smccc_invoke_2(func, a0, a1, res) \ + func(a0, a1, 0, 0, 0, 0, 0, 0, res) +#define arm_smccc_invoke_3(func, a0, a1, a2, res) \ + func(a0, a1, a2, 0, 0, 0, 0, 0, res) +#define arm_smccc_invoke_4(func, a0, a1, a2, a3, res) \ + func(a0, a1, a2, a3, 0, 0, 0, 0, res) +#define arm_smccc_invoke_5(func, a0, a1, a2, a3, a4, res) \ + func(a0, a1, a2, a3, a4, 0, 0, 0, res) +#define arm_smccc_invoke_6(func, a0, a1, a2, a3, a4, a5, res) \ + func(a0, a1, a2, a3, a4, a5, 0, 0, res) +#define arm_smccc_invoke_7(func, a0, a1, a2, a3, a4, a5, a6, res) \ + func(a0, a1, a2, a3, a4, a5, a6, 0, res) +#define arm_smccc_invoke_8(func, a0, a1, a2, a3, a4, a5, a6, a7, res) \ + func(a0, a1, a2, a3, a4, a5, a6, a7, res) + +#define _arm_smccc_invoke_macro(_1, _2, _3, _4, _5, _6, _7, _8, NAME, ...) \ + NAME +#define _arm_smccc_invoke(func, a0, ...) \ + _arm_smccc_invoke_macro(__VA_ARGS__, arm_smccc_invoke_8, \ + arm_smccc_invoke_7, arm_smccc_invoke_6, arm_smccc_invoke_5, \ + arm_smccc_invoke_4, arm_smccc_invoke_3, arm_smccc_invoke_2, \ + arm_smccc_invoke_1)(func, a0, __VA_ARGS__) + +#define arm_smccc_invoke_hvc(a0, ...) \ + _arm_smccc_invoke(arm_smccc_hvc, a0, __VA_ARGS__) +#define arm_smccc_invoke_smc(a0, ...) \ + _arm_smccc_invoke(arm_smccc_smc, a0, __VA_ARGS__) +#define arm_smccc_invoke(a0, ...) \ + _arm_smccc_invoke(psci_callfn, a0, __VA_ARGS__) + struct arm_smccc_1_2_regs { register_t a0; register_t a1; From nobody Mon Oct 21 15:05:19 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJWz6vXcz5ZNyt; Mon, 21 Oct 2024 15:05:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJWz1l3Dz4fYC; Mon, 21 Oct 2024 15:05:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523119; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ncKcSXQhqaFpLAei4KplDIKbfCb0rNgq7t+fNwINdYk=; b=gi6T8YNFffrtt8fkrTiirmuNXGwTmddm1iSxgsc5etbbKBQBhDmcyN16K3g3jfmqmkeD9y foPdMYAfE6bm8ixHjl3PtOuQEHNHsUZCZuKJzxCVBDSGem8KMepPGax1IGKX5jIoDLLzql b58eL3A5lZZTkn8vD/h1PYy1lVlhwNoQW7NTQmSlCYOStC485SOy2KluCh11U9UcXjYTEy +mIrfATevCvnkRl/4WbiWQxsQnEPdm6impeuEgKGvZtnhZHb/tJibEIr9w7BznTfgzGClP VMd8VawfhYPFc/1yzzMoFlZdTmcHg+rJ/Rx4BHOdWfcgByULWc6wFPd3AXIkQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523119; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ncKcSXQhqaFpLAei4KplDIKbfCb0rNgq7t+fNwINdYk=; b=IwnLWeZ/mhLjcSv6yXUoJq5KDJI9fanARFuYNlMV6ZFAMEWZD3VmC9q3GPj9tX1v1GX/R7 1+FALvLKZniYgcJtijbYUEuZjQ6znf7LWVAT2IujnkZz1CBVyr6aSnue1iGBL/bx6bgrKN GwXK99MfssXTkUTmk7BIwYrb7PAxh9tEDbUUpwy7s26xW2ohSMHt3nFvQjKqaFKdDHJiCD rF9PpuiN0p/rbbAy26pmiogyexiW0Ob1KtpqOSLNdyalgUxiorKVBsollbaQNtIY2UErc+ lya/HPP0610CNqXMnMbh2MrxpampUCIdE6NEwMB0vWPFOcgHFliYAcTPnOFC5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523119; a=rsa-sha256; cv=none; b=eIYEIUUWV6kqaPhPNZtOFx7SaNu9YaHEqYJp94PBS+NQRKSNpwpWdnf7/v6yJeg39N2skt gNAG1Jvfa/GBquI4W8mJuvXW0Dn9d2RYmOirrOwuanrXVaN78yWyWcAUOIv4fpqq97Dugd gehea+TOnHUdenfnNvSCWifJWel08HTMb9nrNqBg3dwBtLGDJVCn6uO/POW3Qoew8Ed9ql +FXEeJ1Btan0NXp1mf7su/6Eg/gbBlokdIcyB+LuhxQ3BX/9AC086jI12k74eIkzolkiTK X6R8ynH53OCqbLESWYYKbLIMIvlNxNd56NBYWmPWWuaDE8SIGz5x7Gqsb8LRgA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJWz1Mb5zbQn; Mon, 21 Oct 2024 15:05:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LF5J7A047342; Mon, 21 Oct 2024 15:05:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5Jkd047339; Mon, 21 Oct 2024 15:05:19 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:19 GMT Message-Id: <202410211505.49LF5Jkd047339@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: 78b308e5a4a1 - stable/14 - sys: Use the new arm_smccc_invoke macros List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 78b308e5a4a15f1dbf52c289b1f1ad4f4b980184 Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=78b308e5a4a15f1dbf52c289b1f1ad4f4b980184 commit 78b308e5a4a15f1dbf52c289b1f1ad4f4b980184 Author: Andrew Turner AuthorDate: 2024-10-14 14:33:51 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 sys: Use the new arm_smccc_invoke macros Simplify the calls into the SMCCC firmware with the new arm_smccc_invoke* macros. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46987 (cherry picked from commit b9cd72b06d795a8c7b39df1f520e866ad7f11aa8) --- sys/arm/qualcomm/qcom_scm_legacy.c | 4 ++-- sys/arm64/nvidia/tegra210/tegra210_pmc.c | 4 ++-- sys/dev/firmware/xilinx/zynqmp_firmware.c | 2 +- sys/dev/hyperv/vmbus/aarch64/hyperv_machdep.c | 7 +++---- sys/dev/pci/pci_host_generic_den0115.c | 14 ++++++-------- sys/dev/psci/smccc.c | 6 +++--- 6 files changed, 17 insertions(+), 20 deletions(-) diff --git a/sys/arm/qualcomm/qcom_scm_legacy.c b/sys/arm/qualcomm/qcom_scm_legacy.c index 24c62c8181c3..e1c375c922af 100644 --- a/sys/arm/qualcomm/qcom_scm_legacy.c +++ b/sys/arm/qualcomm/qcom_scm_legacy.c @@ -74,8 +74,8 @@ qcom_scm_legacy_mp_set_cold_boot_address(vm_offset_t mp_entry_func) | QCOM_SCM_FLAG_COLDBOOT_CPU3; uint32_t scm_arg2 = pmap_kextract((vm_offset_t)mp_entry_func); - ret = arm_smccc_smc(scm_arg0, (uint32_t) &context_id, scm_arg1, - scm_arg2, 0, 0, 0, 0, &res); + ret = arm_smccc_invoke_smc(scm_arg0, (uint32_t) &context_id, scm_arg1, + scm_arg2, &res); if (ret == 0 && res.a0 == 0) return (0); diff --git a/sys/arm64/nvidia/tegra210/tegra210_pmc.c b/sys/arm64/nvidia/tegra210/tegra210_pmc.c index 5ae5c0e8092c..85c01d7ce7d6 100644 --- a/sys/arm64/nvidia/tegra210/tegra210_pmc.c +++ b/sys/arm64/nvidia/tegra210/tegra210_pmc.c @@ -191,7 +191,7 @@ WR4(struct tegra210_pmc_softc *sc, bus_size_t r, uint32_t v) struct arm_smccc_res res; if (sc->secure_access) { - arm_smccc_smc(PMC_SMC, PMC_SMC_WRITE, r, v, 0, 0, 0, 0, &res); + arm_smccc_invoke_smc(PMC_SMC, PMC_SMC_WRITE, r, v, &res); if (res.a0 != 0) device_printf(sc->dev," PMC SMC write failed: %lu\n", res.a0); @@ -206,7 +206,7 @@ RD4(struct tegra210_pmc_softc *sc, bus_size_t r) struct arm_smccc_res res; if (sc->secure_access) { - arm_smccc_smc(PMC_SMC, PMC_SMC_READ, r, 0, 0, 0, 0, 0, &res); + arm_smccc_invoke_smc(PMC_SMC, PMC_SMC_READ, r, &res); if (res.a0 != 0) device_printf(sc->dev," PMC SMC write failed: %lu\n", res.a0); diff --git a/sys/dev/firmware/xilinx/zynqmp_firmware.c b/sys/dev/firmware/xilinx/zynqmp_firmware.c index 8ee6c9a21377..a6b55a3528a1 100644 --- a/sys/dev/firmware/xilinx/zynqmp_firmware.c +++ b/sys/dev/firmware/xilinx/zynqmp_firmware.c @@ -105,7 +105,7 @@ zynqmp_call_smc(uint32_t id, uint32_t a0, uint32_t a1, uint32_t a2, uint32_t a3, args[0] = id | PM_SIP_SVC; args[1] = ((uint64_t)a1 << 32) | a0; args[2] = ((uint64_t)a3 << 32) | a2; - arm_smccc_smc(args[0], args[1], args[2], 0, 0, 0, 0, 0, &res); + arm_smccc_invoke_smc(args[0], args[1], args[2], &res); if (payload != NULL) { payload[0] = res.a0 & 0xFFFFFFFF; payload[1] = res.a0 >> 32; diff --git a/sys/dev/hyperv/vmbus/aarch64/hyperv_machdep.c b/sys/dev/hyperv/vmbus/aarch64/hyperv_machdep.c index dbb6aac2de31..e808cc081535 100644 --- a/sys/dev/hyperv/vmbus/aarch64/hyperv_machdep.c +++ b/sys/dev/hyperv/vmbus/aarch64/hyperv_machdep.c @@ -50,10 +50,10 @@ void arm_hv_set_vreg(u32 msr, u64 value) { - arm_smccc_hvc(HV_FUNC_ID, + arm_smccc_invoke_hvc(HV_FUNC_ID, HVCALL_SET_VP_REGISTERS | HV_HYPERCALL_FAST_BIT | HV_HYPERCALL_REP_COMP_1, - HV_PARTITION_ID_SELF, HV_VP_INDEX_SELF, msr, 0, value, 0, NULL); + HV_PARTITION_ID_SELF, HV_VP_INDEX_SELF, msr, 0, value, NULL); } void @@ -95,8 +95,7 @@ hypercall_md(volatile void *hc_addr, uint64_t in_val, uint64_t in_paddr, { struct arm_smccc_res res; - arm_smccc_hvc(HV_FUNC_ID, in_val, in_paddr, out_paddr, 0, 0, 0, 0, - &res); + arm_smccc_invoke_hvc(HV_FUNC_ID, in_val, in_paddr, out_paddr, &res); return (res.a0); } diff --git a/sys/dev/pci/pci_host_generic_den0115.c b/sys/dev/pci/pci_host_generic_den0115.c index cfef34824965..a14fe84039fe 100644 --- a/sys/dev/pci/pci_host_generic_den0115.c +++ b/sys/dev/pci/pci_host_generic_den0115.c @@ -124,8 +124,7 @@ pci_host_acpi_smccc_has_feature(uint32_t pci_func_id) { struct arm_smccc_res result; - if (psci_callfn(SMCCC_PCI_FEATURES, pci_func_id, 0, 0, 0, 0, 0, 0, - &result) < 0) { + if (arm_smccc_invoke(SMCCC_PCI_FEATURES, pci_func_id, &result) < 0) { return (false); } @@ -137,7 +136,7 @@ pci_host_acpi_smccc_pci_version(uint32_t *versionp) { struct arm_smccc_res result; - if (psci_callfn(SMCCC_PCI_VERSION, 0, 0, 0, 0, 0, 0, 0, &result) < 0) { + if (arm_smccc_invoke(SMCCC_PCI_VERSION, &result) < 0) { return (false); } @@ -185,8 +184,8 @@ pci_host_acpi_smccc_attach(device_t dev) return (error); if (pci_host_acpi_smccc_has_feature(SMCCC_PCI_GET_SEG_INFO) && - psci_callfn(SMCCC_PCI_GET_SEG_INFO, sc->base.ecam, 0, 0, 0, 0, 0, - 0, &result) == SMCCC_RET_SUCCESS) { + arm_smccc_invoke(SMCCC_PCI_GET_SEG_INFO, sc->base.ecam, + &result) == SMCCC_RET_SUCCESS) { start = SMCCC_PCI_SEG_START(result.a1); end = SMCCC_PCI_SEG_END(result.a1); @@ -215,8 +214,7 @@ pci_host_acpi_smccc_read_config(device_t dev, u_int bus, u_int slot, return (~0U); addr = (sc->base.ecam << 16) | (bus << 8) | (slot << 3) | (func << 0); - if (psci_callfn(SMCCC_PCI_READ, addr, reg, bytes, 0, 0, 0, 0, - &result) < 0) { + if (arm_smccc_invoke(SMCCC_PCI_READ, addr, reg, bytes, &result) < 0) { return (~0U); } @@ -240,7 +238,7 @@ pci_host_acpi_smccc_write_config(device_t dev, u_int bus, u_int slot, return; addr = (sc->base.ecam << 16) | (bus << 8) | (slot << 3) | (func << 0); - psci_callfn(SMCCC_PCI_WRITE, addr, reg, bytes, val, 0, 0, 0, &result); + arm_smccc_invoke(SMCCC_PCI_WRITE, addr, reg, bytes, val, &result); } static device_method_t generic_pcie_acpi_smccc_methods[] = { diff --git a/sys/dev/psci/smccc.c b/sys/dev/psci/smccc.c index 5c5e140abab1..e8a367bed7d6 100644 --- a/sys/dev/psci/smccc.c +++ b/sys/dev/psci/smccc.c @@ -79,7 +79,7 @@ smccc_arch_features(uint32_t smccc_func_id) if (smccc_version == SMCCC_VERSION_1_0) return (PSCI_RETVAL_NOT_SUPPORTED); - return (psci_call(SMCCC_ARCH_FEATURES, smccc_func_id, 0, 0)); + return (arm_smccc_invoke(SMCCC_ARCH_FEATURES, smccc_func_id, NULL)); } /* @@ -92,7 +92,7 @@ smccc_arch_workaround_1(void) KASSERT(smccc_version != SMCCC_VERSION_1_0, ("SMCCC arch workaround 1 called with an invalid SMCCC interface")); - return (psci_call(SMCCC_ARCH_WORKAROUND_1, 0, 0, 0)); + return (arm_smccc_invoke(SMCCC_ARCH_WORKAROUND_1, NULL)); } int @@ -101,5 +101,5 @@ smccc_arch_workaround_2(int enable) KASSERT(smccc_version != SMCCC_VERSION_1_0, ("SMCCC arch workaround 2 called with an invalid SMCCC interface")); - return (psci_call(SMCCC_ARCH_WORKAROUND_2, enable, 0, 0)); + return (arm_smccc_invoke(SMCCC_ARCH_WORKAROUND_2, enable, NULL)); } From nobody Mon Oct 21 15:05:20 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJX04TtWz5ZNc2; Mon, 21 Oct 2024 15:05:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJX02qNlz4fVn; Mon, 21 Oct 2024 15:05:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m2W4YmdXlgZMbUe4bLV1N7CvEjavrZvppzwhG9WB7rU=; b=lwOj4tnxcg8kSuMprbTCBsi4VSB8R8hoWcMU27STZ7lnnpyEWUhtEbL8uIyZeL2GeGLy37 LlIqCLCwP+uxgga/jyB4Nr8EsSc86DzGwGoXTuGzvkWjUOOAvouh1s7HHN9fEd2DEnDXjD HjpoyY3eWYKKp+E38WsEx33K69GyT1Z5M/bk6XlUlTjFp/55Rd00r20DhWlU3onMczdJMK /7J/RroxM+R3Bwr8NG64S+3pWX59W6mjFbED1ISQe3q+Duc433zsOmyrHQRWpXM0beGiQ1 5ieLxZ8EFpuFwzoza+b1gNKgxwcPmV73Ck3KgmNjYXNyX/XRvvxaq7IacIeqLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m2W4YmdXlgZMbUe4bLV1N7CvEjavrZvppzwhG9WB7rU=; b=gJq5nPkrIAYzXgaXpw1d4qFNvFeRhZNPcHYSwQk3Zkg7hKIPX83HTBbY8aQQnZLIfRy+9z Gy4DVT2EGU0A6ryZGYpvOuWtZc9ZKD25ss/s+uKLInzagrYOjXRmFsbopONhXo7WryeGA8 fmsIqIX/Drd4i7INb5ybYQ1kgAiAQtXdvdR5ufgwfa2bi6xNU8JJj8Akkg1NhPMJu6JGm4 DYR78geVNt9SDLQ5TDNnpQH1IdAHpyIQ6SUqSsF2abbK06vHF5X3cFTeXFSDR/wy5cW142 F/qvRs+3DGwpPmOk29n8YdLIbNVsAUi71e3Of4QNkpUGmjhKFT2Vi72qgbsDXA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523120; a=rsa-sha256; cv=none; b=D1/0TqoASsW6t7R1BTsM5XR8uOqustKfP6blZtsoPvTtC6WsfRa4NoANJJvjaWfdGTWcvY VSrZ7fGNc48hv0N3V3HF609RdowKui7G6evBp2hAEWUT0/IbKjf/TGPGanpP9RiLNfr2qD MxmTpnzovZ18EMj1wviZPxiXa+FcdwKFK2UbZaPAZ1PRH6SaDK9GpGyWyhyaDeHwghLBgT 4lwohSiaj19lQ2s7YOmSnVKOt91+IVXDVDfxYpx22pOqc/Ldng9WG1ilhmrQrl9v0KPh6m J6wOKBZNHiSpqrKIxHx9kX5ION+nnwuh+aUZUM/+58cgRX3k6DuaRXhJ2ngwkQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJX02L6Rzb1S; Mon, 21 Oct 2024 15:05: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 49LF5KoG047403; Mon, 21 Oct 2024 15:05:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LF5KFV047400; Mon, 21 Oct 2024 15:05:20 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:05:20 GMT Message-Id: <202410211505.49LF5KFV047400@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Turner Subject: git: ce5a07a9d2c5 - stable/14 - arm64: Stop trashing x28 in savectx List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ce5a07a9d2c58b65bbce5609834af63c5ff7e85d Auto-Submitted: auto-generated The branch stable/14 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=ce5a07a9d2c58b65bbce5609834af63c5ff7e85d commit ce5a07a9d2c58b65bbce5609834af63c5ff7e85d Author: Andrew Turner AuthorDate: 2024-10-15 08:30:17 +0000 Commit: Andrew Turner CommitDate: 2024-10-21 15:03:27 +0000 arm64: Stop trashing x28 in savectx While here make it return void, we don't set any useful return value and nothing checks for it. Sponsored by: Arm Ltd (cherry picked from commit a7c5c88cb29ff512467a6599f1b4d8e2b8817480) --- sys/arm64/arm64/swtch.S | 10 ++++------ sys/arm64/include/pcb.h | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/sys/arm64/arm64/swtch.S b/sys/arm64/arm64/swtch.S index 882bfd7cf05a..85752dd6fc86 100644 --- a/sys/arm64/arm64/swtch.S +++ b/sys/arm64/arm64/swtch.S @@ -265,13 +265,11 @@ ENTRY(savectx) mrs x6, tpidr_el0 stp x5, x6, [x0, #PCB_SP] - /* Store the VFP registers */ #ifdef VFP - mov x28, lr - bl vfp_save_state_savectx - mov lr, x28 -#endif - + /* Store the VFP registers */ + b vfp_save_state_savectx +#else ret +#endif END(savectx) diff --git a/sys/arm64/include/pcb.h b/sys/arm64/include/pcb.h index 273b53cdc6cf..c0feb1149cf5 100644 --- a/sys/arm64/include/pcb.h +++ b/sys/arm64/include/pcb.h @@ -85,7 +85,7 @@ struct pcb { #ifdef _KERNEL void makectx(struct trapframe *tf, struct pcb *pcb); -int savectx(struct pcb *pcb) __returns_twice; +void savectx(struct pcb *pcb) __returns_twice; #endif #endif /* !LOCORE */ From nobody Mon Oct 21 15:11:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfm0LvHz5ZP8H; Mon, 21 Oct 2024 15:11:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJfl5nzSz4lPP; Mon, 21 Oct 2024 15:11:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JQAVuTg4pUjvNYIaHDGh0TfiLiHB7+UPSSQgAiVyqPk=; b=cRJUYCXI9aqzgugoRyVGyHGhBgOkKsROSPdf8xJNc0uFwAWUhatbmaXXy37fn4qnOM7Fy3 JRaj2v3VnDl5hc/xhCmLfj5wdMvUqYwEJqX5LZj453zejZjmlYaY6C7Tl/uvsEr6p+t5wL YLiPtk/yjrxQGmgVuUESMza9M6SLkeo1dOOyPheEvObCg33cOWRQLK+WbnZ40UBXWHVOGu UMGnZ9Lwl1KXAotpMkiWbsSXRjcZa/jRI4DfxcuQrvD0gkyCFEIdR0AApyBkeWL9KZLZHL rc7K+8zOpJbfqixHukz3J5DGubsheMZ4gQC6ShRx9I2h4J2c2TkWzGcYYCkQYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JQAVuTg4pUjvNYIaHDGh0TfiLiHB7+UPSSQgAiVyqPk=; b=B9pBbYYhhdUBjbMhO+WFhzREvkbchlhsVv/IPEy9+cCnBXfhxICaE2FnsRo10HEgK4KI0F 7NDOwiQ4M9MnxnCxSsX5nJFFHQuJMSUoWUvH21V5gUm3Peua/bdrazQIffJq1xA0DdvI4x TQqA9hFUCP7SyfZiUcI5i4EEH2XPiCLr1JN7vjWJgr4aWWzlDgx1IwAr6KhPXbjQ3sfySc hCbO9zE66ABTSAfmpxDucErFncaDlODUvzUeOPuOiPNtV65vwyH3METnBY0p6/++FDporp FPaAb46cM/8i8fGQV4OVbDxRJ/HhwGO+NNJcrOSRm1zuMsdBqZSvCFQhDv1lJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523471; a=rsa-sha256; cv=none; b=A2FjZ3lzMwqEU+/KS56AujtyHFCooSejDLoH6WP0W3ju6yviQwDJeNPiG7fdArJG2jxgur hfaqKTP52dz7nibVCv7BplC4eXpnDuugHUSbqT4OvkvkCWbtBI8bZwAZA+e5fGSbsSxkNl 5k9ogK1Surng0s8t3p2Scz6MGsJjWkW59Emk324kWF69x/4lfnT+e1oiT6Tw/iit9AhMXT KLl6D72n1JR6Huq/dOD9/pDkUdZhU8J/M6EzRWIiS4WtRKJYazGnNBN0ug6BaqbkEGFwWN BuyQHglD0++NOJNOSjJSuAMo9F+W6d8oqPQo0YwePGSUc3qcam9RyzIA7lJ4ig== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfl55w3zb1p; Mon, 21 Oct 2024 15:11: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 49LFBBZB060458; Mon, 21 Oct 2024 15:11:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBBo7060455; Mon, 21 Oct 2024 15:11:11 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:11 GMT Message-Id: <202410211511.49LFBBo7060455@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 4c1441bba1d1 - stable/14 - igc: Add sysctl for DMA Coalesce List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4c1441bba1d1bcc5a8237c97f136bf7e3cc77058 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=4c1441bba1d1bcc5a8237c97f136bf7e3cc77058 commit 4c1441bba1d1bcc5a8237c97f136bf7e3cc77058 Author: Kevin Bowling AuthorDate: 2024-10-14 12:55:18 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:09:35 +0000 igc: Add sysctl for DMA Coalesce This feature can increase efficiency at the expense of latency It does not work well with the default interrupt delay, but expose the otherwise unconnected code in the driver in case people want to experiment. See https://www.intel.com/content/dam/support/us/en/documents/network/adapter/pro100/sb/466827_intel_r__dma_coalescing_white_paper_v003.pdf Sponsored by: BBOX.io (cherry picked from commit 68b1f5dc59368ce5175e3300bf95476ea5a560bc) --- sys/dev/igc/if_igc.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index d964fbe4cf91..da897d636cfe 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -141,6 +141,7 @@ static int igc_msix_link(void *); static void igc_handle_link(void *context); static int igc_set_flowcntl(SYSCTL_HANDLER_ARGS); +static int igc_sysctl_dmac(SYSCTL_HANDLER_ARGS); static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); @@ -490,6 +491,12 @@ igc_if_attach_pre(if_ctx_t ctx) CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, adapter, 0, igc_get_rs, "I", "Dump RS indexes"); + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "dmac", + CTLTYPE_INT | CTLFLAG_RW, adapter, 0, + igc_sysctl_dmac, "I", "DMA Coalesce"); + /* Determine hardware and mac info */ igc_identify_hardware(ctx); @@ -3030,6 +3037,55 @@ igc_set_flowcntl(SYSCTL_HANDLER_ARGS) return (error); } +/* + * Manage DMA Coalesce: + * Control values: + * 0/1 - off/on + * Legal timer values are: + * 250,500,1000-10000 in thousands + */ +static int +igc_sysctl_dmac(SYSCTL_HANDLER_ARGS) +{ + struct igc_adapter *sc = (struct igc_adapter *) arg1; + int error; + + error = sysctl_handle_int(oidp, &sc->dmac, 0, req); + + if ((error) || (req->newptr == NULL)) + return (error); + + switch (sc->dmac) { + case 0: + /* Disabling */ + break; + case 1: /* Just enable and use default */ + sc->dmac = 1000; + break; + case 250: + case 500: + case 1000: + case 2000: + case 3000: + case 4000: + case 5000: + case 6000: + case 7000: + case 8000: + case 9000: + case 10000: + /* Legal values - allow */ + break; + default: + /* Do nothing, illegal value */ + sc->dmac = 0; + return (EINVAL); + } + /* Reinit the interface */ + igc_if_init(sc->ctx); + return (error); +} + /* * Manage Energy Efficient Ethernet: * Control values: From nobody Mon Oct 21 15:11:12 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfn0zRnz5ZP14; Mon, 21 Oct 2024 15:11:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJfm6Vfdz4ldB; Mon, 21 Oct 2024 15:11:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ApNoJXJwNBhc86ls5yK9tUd1aoCxSwxlF3Ald+qI7U=; b=W4WllvbFXklDuOAhgcrS3Hp7apdR2Efh9Mnb1t22ncpyaqpQ6M7aPELgV7PGLs+SDh5u6f zYZYwpyRRXPvk1LCULKutRb2/sBLEeLlvLRZu0AkbzpksHbXKr4rVWn9rOQ7TaEnTNaAoD cYYd7xGXmd87oseDQS9ovwHmgdvrJnttr4hDOotXdGF+1l0BYIu+Qp1U89laokfroTLOvG xkQCgD9V8NuiwRAd2t7jap1EAlM9q6sJ/6pxiCCkU2pdJY/urKVMgJd9ajKunyhZ5u3xis RIzJIwf24zieQxfU4lCLFkMb8YNWZjlfqN5TH9Y9FP2v1s6lpdu8XJtIp7Q6Ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ApNoJXJwNBhc86ls5yK9tUd1aoCxSwxlF3Ald+qI7U=; b=MogdLnS7QHt4dthQIEQw48FfvzzP0YoPgv+KXwiIZyYYCOV4sXXojW8VlccF3iy8hio4ye LeNgLtbl3Z7+z7IdsYuJEpxsatfCM3vgJmbJkgSsjFyq3N4atc+/j9eQIQfJbG6C3gREtR iISEHAC4EF6JsSa/U7DOPfroZWTcShgXbaQEieNYySyli5/S6ot0hkBWvIoVWdsqdW+dXJ TLZeyDzQ0U1CduTeXHVlqmR1WD6tzZdIDtmzqwLgsxtOuaTO6f7IXv6TVxZUHHVojqzLr9 SDZqMvjj/bWwDU54X6/t+FL5eBGM9TdPfgaMP47wBqh3E5Z5U33cs4qOmAiI6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523472; a=rsa-sha256; cv=none; b=OaXu5Na/f+AyN70CZPoIq/D2zh1FGlpPRzcX7gBIi1NVwXOMwbKCtU4656muKzlYkIu12m GzxEgFfOe7zAe74VuQJ4P+Q5QkI3I87Cj0tro9QgCRb4xLHsvum8jVNQtuLyTYa0oGcA83 BeK1phbtu12h4grqA4DUwOyWbV7YzlxBUKBfeQBY+HfRUK6/+yog/hbeiOoKzZy1+VMgAb tBQj0QPVJHgD4rlUGtxxf9bELxqXExzIUyQFRc9l8lciTb2ws5Cx8EOv7xXFO5EVyOJg24 BjjJ7pT/ACwnb9Jg6eLnJl3mmPWQvmOcjaarW2lHqq8nLaZAvOzd57Q5u4Kr4A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfm669vzbR2; Mon, 21 Oct 2024 15:11: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 49LFBCZa060513; Mon, 21 Oct 2024 15:11:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBCkw060510; Mon, 21 Oct 2024 15:11:12 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:12 GMT Message-Id: <202410211511.49LFBCkw060510@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 1dae98bc4bfd - stable/14 - igc: Add sysctls for some missing MAC stats List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1dae98bc4bfdcdfa389e9b41098421316a26c87e Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=1dae98bc4bfdcdfa389e9b41098421316a26c87e commit 1dae98bc4bfdcdfa389e9b41098421316a26c87e Author: Kevin Bowling AuthorDate: 2024-10-14 13:07:41 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:09:51 +0000 igc: Add sysctls for some missing MAC stats Sponsored by: BBOX.io (cherry picked from commit 09526a771afc411e641a3d04c905824fe8afc627) --- sys/dev/igc/if_igc.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index da897d636cfe..b927b9e3b260 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -2491,6 +2491,10 @@ igc_update_stats_counters(struct igc_adapter *adapter) adapter->stats.roc += IGC_READ_REG(&adapter->hw, IGC_ROC); adapter->stats.rjc += IGC_READ_REG(&adapter->hw, IGC_RJC); + adapter->stats.mgprc += IGC_READ_REG(&adapter->hw, IGC_MGTPRC); + adapter->stats.mgpdc += IGC_READ_REG(&adapter->hw, IGC_MGTPDC); + adapter->stats.mgptc += IGC_READ_REG(&adapter->hw, IGC_MGTPTC); + adapter->stats.tor += IGC_READ_REG(&adapter->hw, IGC_TORH); adapter->stats.tot += IGC_READ_REG(&adapter->hw, IGC_TOTH); @@ -2731,6 +2735,9 @@ igc_add_hw_stats(struct igc_adapter *adapter) SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "missed_packets", CTLFLAG_RD, &adapter->stats.mpc, "Missed Packets"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "recv_length_errors", + CTLFLAG_RD, &adapter->stats.rlec, + "Receive Length Errors"); SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "recv_no_buff", CTLFLAG_RD, &adapter->stats.rnbc, "Receive No Buffers"); @@ -2767,6 +2774,18 @@ igc_add_hw_stats(struct igc_adapter *adapter) SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "xoff_txd", CTLFLAG_RD, &adapter->stats.xofftxc, "XOFF Transmitted"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "unsupported_fc_recvd", + CTLFLAG_RD, &adapter->stats.fcruc, + "Unsupported Flow Control Received"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_recvd", + CTLFLAG_RD, &adapter->stats.mgprc, + "Management Packets Received"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_drop", + CTLFLAG_RD, &adapter->stats.mgpdc, + "Management Packets Dropped"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_txd", + CTLFLAG_RD, &adapter->stats.mgptc, + "Management Packets Transmitted"); /* Packet Reception Stats */ SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "total_pkts_recvd", From nobody Mon Oct 21 15:11:13 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfp14n7z5ZPBW; Mon, 21 Oct 2024 15:11:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJfp09gvz4lXS; Mon, 21 Oct 2024 15:11:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=89XTAjcuGwvqYjHtAxCX7DRMyuHJzccYcnGclijUz/k=; b=gnWLJEu0Jm2J7f4UJzpzzoanwCrazWi6LQWKwel+bBd7uGWrkexOZlsgi8IxXh4Tfl/pCt 3YvNJyQggYGe1AhdviNsUuhkHrYfDH7vUj9M+3kc524ytzvgJ8B90/PvkApKdgDSx3a6We n2dGoE586IFFoYZPvvNQLTiRrg/K00oYrPesfyhdaSDPjH0oIGIftCQJ5x03PFR8fDYQtj pF2cAjuMX4ADpyougTPFHeKCeeqtipup6oZgQpKdbgwwnQKOmAeAUyvbzgkWHV3cEkFKls nUmHw6mHdSOBg9FM7AddzZaMXX5fnTtMDVKL4SQizOsRZcFGI8uhhX/muFUzYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=89XTAjcuGwvqYjHtAxCX7DRMyuHJzccYcnGclijUz/k=; b=N1C0wiIK2aeBW5aLzN50FjMnS0REUDSNGq9NFjro871e2KwEFWKLcm10BvBy0eFZ7fKzuo yOyT5vif1N/9HQ03Pll6rCaHExTm6DrPtWNksq/v4BOCn36V9FWMzCc5H0EIaw2xSwcPK8 MJE4JhCq1qqTNS9qGooMcDa+PjPBKIz811n51mnjpEYhwBMrvaLs2e3yiLp6KtReqSP2Jc 6/fwlKDJ8NxGfs/V6YvKNwMOLY5GsFWVUs56ztMiornhWrEpjmv8G8UpeIeBwcxeaFFfnt ZQc3Q/zM3PHSAKGk/JlmHiXOd+w6xeKBVSot6NJbIo4cl/pvV/OcTZo+DZQu8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523474; a=rsa-sha256; cv=none; b=q1aYfyE5SEqqAmdyzfz2e5i3HDVyLPOiBxH2wpO7PVXhk1kV+pHf4qIDYUvZBUwrt+GquD lzm80QGdm3UYPuTQE3SGIs+h85K3fBYR5y/5jgteSW63qD5C/3fTv1C3ieTDKwYUzh4kGD Gw+IqrIZWXlU1jwfffg3/RgBe/gTcZFZnx0rwwQZ/l/o/Ta0T3zTVTK2r6zfXTveseTB6V GEY8j0KAN2DfBDHTHkkdRgATXiA0mOqtFUHM7EN5CNQye8cbvMktg2H/HLHlgiveS18Z5J gAAJg6qyUggx1J8IYOcj0uOKIj5Uxcimm8aYZkfcdrkoVtsmEfgp4x/HRHu12g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfn6ffZzbP1; Mon, 21 Oct 2024 15:11: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 49LFBDo5060569; Mon, 21 Oct 2024 15:11:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBD2E060566; Mon, 21 Oct 2024 15:11:13 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:13 GMT Message-Id: <202410211511.49LFBD2E060566@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: e624987fe435 - stable/14 - igc: Rename 'struct adapter' to 'struct igc_softc' List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e624987fe43585124ac2b231a2208cc10c3b1c54 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=e624987fe43585124ac2b231a2208cc10c3b1c54 commit e624987fe43585124ac2b231a2208cc10c3b1c54 Author: Kevin Bowling AuthorDate: 2024-10-14 13:29:55 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:10:09 +0000 igc: Rename 'struct adapter' to 'struct igc_softc' Rename the 'struct adapter' to 'struct igc_softc' to avoid type ambiguity in things like kgdb and make sharing code with e1000 and ixgbe easier. Sponsored by: BBOX.io (cherry picked from commit 542f5d56317e94676cf19cb9d66207bf9a6b6758) --- sys/dev/igc/if_igc.c | 970 ++++++++++++++++++++++++------------------------- sys/dev/igc/if_igc.h | 28 +- sys/dev/igc/igc_txrx.c | 36 +- 3 files changed, 517 insertions(+), 517 deletions(-) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index b927b9e3b260..a55d8b6cbc9c 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -111,25 +111,25 @@ static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid); static void igc_if_multi_set(if_ctx_t ctx); static void igc_if_update_admin_status(if_ctx_t ctx); static void igc_if_debug(if_ctx_t ctx); -static void igc_update_stats_counters(struct igc_adapter *); -static void igc_add_hw_stats(struct igc_adapter *adapter); +static void igc_update_stats_counters(struct igc_softc *); +static void igc_add_hw_stats(struct igc_softc *sc); static int igc_if_set_promisc(if_ctx_t ctx, int flags); static void igc_setup_vlan_hw_support(if_ctx_t ctx); -static void igc_fw_version(struct igc_adapter *); +static void igc_fw_version(struct igc_softc *); static void igc_sbuf_fw_version(struct igc_fw_version *, struct sbuf *); -static void igc_print_fw_version(struct igc_adapter *); +static void igc_print_fw_version(struct igc_softc *); static int igc_sysctl_print_fw_version(SYSCTL_HANDLER_ARGS); static int igc_sysctl_nvm_info(SYSCTL_HANDLER_ARGS); -static void igc_print_nvm_info(struct igc_adapter *); +static void igc_print_nvm_info(struct igc_softc *); static int igc_sysctl_debug_info(SYSCTL_HANDLER_ARGS); static int igc_get_rs(SYSCTL_HANDLER_ARGS); -static void igc_print_debug_info(struct igc_adapter *); +static void igc_print_debug_info(struct igc_softc *); static int igc_is_valid_ether_addr(u8 *); -static void igc_neweitr(struct igc_adapter *, struct igc_rx_queue *, +static void igc_neweitr(struct igc_softc *, struct igc_rx_queue *, struct tx_ring *, struct rx_ring *); /* Management and WOL Support */ -static void igc_get_hw_control(struct igc_adapter *); -static void igc_release_hw_control(struct igc_adapter *); +static void igc_get_hw_control(struct igc_softc *); +static void igc_release_hw_control(struct igc_softc *); static void igc_get_wakeup(if_ctx_t ctx); static void igc_enable_wakeup(if_ctx_t ctx); @@ -146,7 +146,7 @@ static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); -static void igc_configure_queues(struct igc_adapter *adapter); +static void igc_configure_queues(struct igc_softc *sc); /********************************************************************* @@ -165,7 +165,7 @@ static device_method_t igc_methods[] = { }; static driver_t igc_driver = { - "igc", igc_methods, sizeof(struct igc_adapter), + "igc", igc_methods, sizeof(struct igc_softc), }; DRIVER_MODULE(igc, pci, igc_driver, 0, 0); @@ -208,7 +208,7 @@ static device_method_t igc_if_methods[] = { }; static driver_t igc_if_driver = { - "igc_if", igc_if_methods, sizeof(struct igc_adapter) + "igc_if", igc_if_methods, sizeof(struct igc_softc) }; /********************************************************************* @@ -295,8 +295,8 @@ static struct if_shared_ctx igc_sctx_init = { static int igc_get_regs(SYSCTL_HANDLER_ARGS) { - struct igc_adapter *adapter = (struct igc_adapter *)arg1; - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = (struct igc_softc *)arg1; + struct igc_hw *hw = &sc->hw; struct sbuf *sb; u32 *regs_buff; int rc; @@ -372,7 +372,7 @@ static int igc_get_regs(SYSCTL_HANDLER_ARGS) #ifdef DUMP_DESCS { - if_softc_ctx_t scctx = adapter->shared; + if_softc_ctx_t scctx = sc->shared; struct rx_ring *rxr = &rx_que->rxr; struct tx_ring *txr = &tx_que->txr; int ntxd = scctx->isc_ntxd[0]; @@ -434,7 +434,7 @@ igc_set_num_queues(if_ctx_t ctx) static int igc_if_attach_pre(if_ctx_t ctx) { - struct igc_adapter *adapter; + struct igc_softc *sc; if_softc_ctx_t scctx; device_t dev; struct igc_hw *hw; @@ -442,59 +442,59 @@ igc_if_attach_pre(if_ctx_t ctx) INIT_DEBUGOUT("igc_if_attach_pre: begin"); dev = iflib_get_dev(ctx); - adapter = iflib_get_softc(ctx); + sc = iflib_get_softc(ctx); - adapter->ctx = adapter->osdep.ctx = ctx; - adapter->dev = adapter->osdep.dev = dev; - scctx = adapter->shared = iflib_get_softc_ctx(ctx); - adapter->media = iflib_get_media(ctx); - hw = &adapter->hw; + sc->ctx = sc->osdep.ctx = ctx; + sc->dev = sc->osdep.dev = dev; + scctx = sc->shared = iflib_get_softc_ctx(ctx); + sc->media = iflib_get_media(ctx); + hw = &sc->hw; /* SYSCTL stuff */ SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "nvm", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_nvm_info, "I", "NVM Information"); + sc, 0, igc_sysctl_nvm_info, "I", "NVM Information"); - adapter->enable_aim = igc_enable_aim; + sc->enable_aim = igc_enable_aim; SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "enable_aim", CTLFLAG_RW, - &adapter->enable_aim, 0, + &sc->enable_aim, 0, "Interrupt Moderation (1=normal, 2=lowlatency)"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "fw_version", CTLTYPE_STRING | CTLFLAG_RD, - adapter, 0, igc_sysctl_print_fw_version, "A", + sc, 0, igc_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "debug", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_debug_info, "I", "Debug Information"); + sc, 0, igc_sysctl_debug_info, "I", "Debug Information"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "fc", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_set_flowcntl, "I", "Flow Control"); + sc, 0, igc_set_flowcntl, "I", "Flow Control"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "reg_dump", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, adapter, 0, + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, igc_get_regs, "A", "Dump Registers"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "rs_dump", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, adapter, 0, + CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, igc_get_rs, "I", "Dump RS indexes"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dmac", - CTLTYPE_INT | CTLFLAG_RW, adapter, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, igc_sysctl_dmac, "I", "DMA Coalesce"); /* Determine hardware and mac info */ @@ -559,13 +559,13 @@ igc_if_attach_pre(if_ctx_t ctx) * Set the frame limits assuming * standard ethernet sized frames. */ - scctx->isc_max_frame_size = adapter->hw.mac.max_frame_size = + scctx->isc_max_frame_size = sc->hw.mac.max_frame_size = ETHERMTU + ETHER_HDR_LEN + ETHERNET_FCS_SIZE; /* Allocate multicast array memory. */ - adapter->mta = malloc(sizeof(u8) * ETHER_ADDR_LEN * + sc->mta = malloc(sizeof(u8) * ETHER_ADDR_LEN * MAX_NUM_MULTICAST_ADDRESSES, M_DEVBUF, M_NOWAIT); - if (adapter->mta == NULL) { + if (sc->mta == NULL) { device_printf(dev, "Can not allocate multicast setup array\n"); error = ENOMEM; goto err_late; @@ -577,12 +577,12 @@ igc_if_attach_pre(if_ctx_t ctx) " due to SOL/IDER session.\n"); /* Sysctl for setting Energy Efficient Ethernet */ - adapter->hw.dev_spec._i225.eee_disable = igc_eee_setting; + sc->hw.dev_spec._i225.eee_disable = igc_eee_setting; SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "eee_control", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_eee, "I", + sc, 0, igc_sysctl_eee, "I", "Disable Energy Efficient Ethernet"); /* @@ -622,9 +622,9 @@ igc_if_attach_pre(if_ctx_t ctx) } /* Save the EEPROM/NVM versions */ - igc_fw_version(adapter); + igc_fw_version(sc); - igc_print_fw_version(adapter); + igc_print_fw_version(sc); /* * Get Wake-on-Lan and Management info for later use @@ -633,7 +633,7 @@ igc_if_attach_pre(if_ctx_t ctx) /* Enable only WOL MAGIC by default */ scctx->isc_capenable &= ~IFCAP_WOL; - if (adapter->wol != 0) + if (sc->wol != 0) scctx->isc_capenable |= IFCAP_WOL_MAGIC; iflib_set_mac(ctx, hw->mac.addr); @@ -641,10 +641,10 @@ igc_if_attach_pre(if_ctx_t ctx) return (0); err_late: - igc_release_hw_control(adapter); + igc_release_hw_control(sc); err_pci: igc_free_pci_resources(ctx); - free(adapter->mta, M_DEVBUF); + free(sc->mta, M_DEVBUF); return (error); } @@ -652,8 +652,8 @@ err_pci: static int igc_if_attach_post(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_hw *hw = &sc->hw; int error = 0; /* Setup OS specific network interface */ @@ -665,23 +665,23 @@ igc_if_attach_post(if_ctx_t ctx) igc_reset(ctx); /* Initialize statistics */ - igc_update_stats_counters(adapter); + igc_update_stats_counters(sc); hw->mac.get_link_status = true; igc_if_update_admin_status(ctx); - igc_add_hw_stats(adapter); + igc_add_hw_stats(sc); /* the driver can now take control from firmware */ - igc_get_hw_control(adapter); + igc_get_hw_control(sc); INIT_DEBUGOUT("igc_if_attach_post: end"); return (error); err_late: - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_free_pci_resources(ctx); igc_if_queues_free(ctx); - free(adapter->mta, M_DEVBUF); + free(sc->mta, M_DEVBUF); return (error); } @@ -698,13 +698,13 @@ err_late: static int igc_if_detach(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_detach: begin"); - igc_phy_hw_reset(&adapter->hw); + igc_phy_hw_reset(&sc->hw); - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_free_pci_resources(ctx); return (0); @@ -728,9 +728,9 @@ igc_if_shutdown(if_ctx_t ctx) static int igc_if_suspend(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_enable_wakeup(ctx); return (0); } @@ -747,7 +747,7 @@ static int igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) { int max_frame_size; - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); if_softc_ctx_t scctx = iflib_get_softc_ctx(ctx); IOCTL_DEBUGOUT("ioctl rcv'd: SIOCSIFMTU (Set Interface MTU)"); @@ -759,7 +759,7 @@ igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) return (EINVAL); } - scctx->isc_max_frame_size = adapter->hw.mac.max_frame_size = + scctx->isc_max_frame_size = sc->hw.mac.max_frame_size = mtu + ETHER_HDR_LEN + ETHER_CRC_LEN; return (0); } @@ -776,8 +776,8 @@ igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) static void igc_if_init(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - if_softc_ctx_t scctx = adapter->shared; + struct igc_softc *sc = iflib_get_softc(ctx); + if_softc_ctx_t scctx = sc->shared; if_t ifp = iflib_get_ifp(ctx); struct igc_tx_queue *tx_que; int i; @@ -785,17 +785,17 @@ igc_if_init(if_ctx_t ctx) INIT_DEBUGOUT("igc_if_init: begin"); /* Get the latest mac address, User can use a LAA */ - bcopy(if_getlladdr(ifp), adapter->hw.mac.addr, + bcopy(if_getlladdr(ifp), sc->hw.mac.addr, ETHER_ADDR_LEN); /* Put the address into the Receive Address Array */ - igc_rar_set(&adapter->hw, adapter->hw.mac.addr, 0); + igc_rar_set(&sc->hw, sc->hw.mac.addr, 0); /* Initialize the hardware */ igc_reset(ctx); igc_if_update_admin_status(ctx); - for (i = 0, tx_que = adapter->tx_queues; i < adapter->tx_num_queues; i++, tx_que++) { + for (i = 0, tx_que = sc->tx_queues; i < sc->tx_num_queues; i++, tx_que++) { struct tx_ring *txr = &tx_que->txr; txr->tx_rs_cidx = txr->tx_rs_pidx; @@ -809,7 +809,7 @@ igc_if_init(if_ctx_t ctx) } /* Setup VLAN support, basic and offload if available */ - IGC_WRITE_REG(&adapter->hw, IGC_VET, ETHERTYPE_VLAN); + IGC_WRITE_REG(&sc->hw, IGC_VET, ETHERTYPE_VLAN); /* Prepare transmit descriptors and buffers */ igc_initialize_transmit_unit(ctx); @@ -817,7 +817,7 @@ igc_if_init(if_ctx_t ctx) /* Setup Multicast table */ igc_if_multi_set(ctx); - adapter->rx_mbuf_sz = iflib_get_rx_mbuf_sz(ctx); + sc->rx_mbuf_sz = iflib_get_rx_mbuf_sz(ctx); igc_initialize_receive_unit(ctx); /* Set up VLAN support */ @@ -825,20 +825,20 @@ igc_if_init(if_ctx_t ctx) /* Don't lose promiscuous settings */ igc_if_set_promisc(ctx, if_getflags(ifp)); - igc_clear_hw_cntrs_base_generic(&adapter->hw); + igc_clear_hw_cntrs_base_generic(&sc->hw); - if (adapter->intr_type == IFLIB_INTR_MSIX) /* Set up queue routing */ - igc_configure_queues(adapter); + if (sc->intr_type == IFLIB_INTR_MSIX) /* Set up queue routing */ + igc_configure_queues(sc); /* this clears any pending interrupts */ - IGC_READ_REG(&adapter->hw, IGC_ICR); - IGC_WRITE_REG(&adapter->hw, IGC_ICS, IGC_ICS_LSC); + IGC_READ_REG(&sc->hw, IGC_ICR); + IGC_WRITE_REG(&sc->hw, IGC_ICS, IGC_ICS_LSC); /* the driver can now take control from firmware */ - igc_get_hw_control(adapter); + igc_get_hw_control(sc); /* Set Energy Efficient Ethernet */ - igc_set_eee_i225(&adapter->hw, true, true, true); + igc_set_eee_i225(&sc->hw, true, true, true); } enum eitr_latency_target { @@ -853,7 +853,7 @@ enum eitr_latency_target { * *********************************************************************/ static void -igc_neweitr(struct igc_adapter *sc, struct igc_rx_queue *que, +igc_neweitr(struct igc_softc *sc, struct igc_rx_queue *que, struct tx_ring *txr, struct rx_ring *rxr) { struct igc_hw *hw = &sc->hw; @@ -985,12 +985,12 @@ igc_set_next_eitr: int igc_intr(void *arg) { - struct igc_adapter *adapter = arg; - struct igc_hw *hw = &adapter->hw; - struct igc_rx_queue *que = &adapter->rx_queues[0]; - struct tx_ring *txr = &adapter->tx_queues[0].txr; + struct igc_softc *sc = arg; + struct igc_hw *hw = &sc->hw; + struct igc_rx_queue *que = &sc->rx_queues[0]; + struct tx_ring *txr = &sc->tx_queues[0].txr; struct rx_ring *rxr = &que->rxr; - if_ctx_t ctx = adapter->ctx; + if_ctx_t ctx = sc->ctx; u32 reg_icr; reg_icr = IGC_READ_REG(hw, IGC_ICR); @@ -1019,9 +1019,9 @@ igc_intr(void *arg) igc_handle_link(ctx); if (reg_icr & IGC_ICR_RXO) - adapter->rx_overruns++; + sc->rx_overruns++; - igc_neweitr(adapter, que, txr, rxr); + igc_neweitr(sc, que, txr, rxr); /* Reset state */ txr->tx_bytes = 0; @@ -1035,20 +1035,20 @@ igc_intr(void *arg) static int igc_if_rx_queue_intr_enable(if_ctx_t ctx, uint16_t rxqid) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *rxq = &adapter->rx_queues[rxqid]; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *rxq = &sc->rx_queues[rxqid]; - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, rxq->eims); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, rxq->eims); return (0); } static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_tx_queue *txq = &adapter->tx_queues[txqid]; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_tx_queue *txq = &sc->tx_queues[txqid]; - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, txq->eims); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, txq->eims); return (0); } @@ -1061,7 +1061,7 @@ static int igc_msix_que(void *arg) { struct igc_rx_queue *que = arg; - struct igc_adapter *sc = que->adapter; + struct igc_softc *sc = que->sc; struct tx_ring *txr = &sc->tx_queues[que->msix].txr; struct rx_ring *rxr = &que->rxr; @@ -1086,22 +1086,22 @@ igc_msix_que(void *arg) static int igc_msix_link(void *arg) { - struct igc_adapter *adapter = arg; + struct igc_softc *sc = arg; u32 reg_icr; - ++adapter->link_irq; - MPASS(adapter->hw.back != NULL); - reg_icr = IGC_READ_REG(&adapter->hw, IGC_ICR); + ++sc->link_irq; + MPASS(sc->hw.back != NULL); + reg_icr = IGC_READ_REG(&sc->hw, IGC_ICR); if (reg_icr & IGC_ICR_RXO) - adapter->rx_overruns++; + sc->rx_overruns++; if (reg_icr & (IGC_ICR_RXSEQ | IGC_ICR_LSC)) { - igc_handle_link(adapter->ctx); + igc_handle_link(sc->ctx); } - IGC_WRITE_REG(&adapter->hw, IGC_IMS, IGC_IMS_LSC); - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, adapter->link_mask); + IGC_WRITE_REG(&sc->hw, IGC_IMS, IGC_IMS_LSC); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, sc->link_mask); return (FILTER_HANDLED); } @@ -1110,9 +1110,9 @@ static void igc_handle_link(void *context) { if_ctx_t ctx = context; - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); - adapter->hw.mac.get_link_status = true; + sc->hw.mac.get_link_status = true; iflib_admin_intr_deferred(ctx); } @@ -1127,7 +1127,7 @@ igc_handle_link(void *context) static void igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_media_status: begin"); @@ -1136,13 +1136,13 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) ifmr->ifm_status = IFM_AVALID; ifmr->ifm_active = IFM_ETHER; - if (!adapter->link_active) { + if (!sc->link_active) { return; } ifmr->ifm_status |= IFM_ACTIVE; - switch (adapter->link_speed) { + switch (sc->link_speed) { case 10: ifmr->ifm_active |= IFM_10_T; break; @@ -1157,7 +1157,7 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) break; } - if (adapter->link_duplex == FULL_DUPLEX) + if (sc->link_duplex == FULL_DUPLEX) ifmr->ifm_active |= IFM_FDX; else ifmr->ifm_active |= IFM_HDX; @@ -1174,7 +1174,7 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) static int igc_if_media_change(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); struct ifmedia *ifm = iflib_get_media(ctx); INIT_DEBUGOUT("igc_if_media_change: begin"); @@ -1182,32 +1182,32 @@ igc_if_media_change(if_ctx_t ctx) if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER) return (EINVAL); - adapter->hw.mac.autoneg = DO_AUTO_NEG; + sc->hw.mac.autoneg = DO_AUTO_NEG; switch (IFM_SUBTYPE(ifm->ifm_media)) { case IFM_AUTO: - adapter->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT; + sc->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT; break; case IFM_2500_T: - adapter->hw.phy.autoneg_advertised = ADVERTISE_2500_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_2500_FULL; break; case IFM_1000_T: - adapter->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL; break; case IFM_100_TX: if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) - adapter->hw.phy.autoneg_advertised = ADVERTISE_100_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_100_FULL; else - adapter->hw.phy.autoneg_advertised = ADVERTISE_100_HALF; + sc->hw.phy.autoneg_advertised = ADVERTISE_100_HALF; break; case IFM_10_T: if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) - adapter->hw.phy.autoneg_advertised = ADVERTISE_10_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_10_FULL; else - adapter->hw.phy.autoneg_advertised = ADVERTISE_10_HALF; + sc->hw.phy.autoneg_advertised = ADVERTISE_10_HALF; break; default: - device_printf(adapter->dev, "Unsupported media type\n"); + device_printf(sc->dev, "Unsupported media type\n"); } igc_if_init(ctx); @@ -1218,12 +1218,12 @@ igc_if_media_change(if_ctx_t ctx) static int igc_if_set_promisc(if_ctx_t ctx, int flags) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); if_t ifp = iflib_get_ifp(ctx); u32 reg_rctl; int mcnt = 0; - reg_rctl = IGC_READ_REG(&adapter->hw, IGC_RCTL); + reg_rctl = IGC_READ_REG(&sc->hw, IGC_RCTL); reg_rctl &= ~(IGC_RCTL_SBP | IGC_RCTL_UPE); if (flags & IFF_ALLMULTI) mcnt = MAX_NUM_MULTICAST_ADDRESSES; @@ -1233,18 +1233,18 @@ igc_if_set_promisc(if_ctx_t ctx, int flags) /* Don't disable if in MAX groups */ if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) reg_rctl &= (~IGC_RCTL_MPE); - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); if (flags & IFF_PROMISC) { reg_rctl |= (IGC_RCTL_UPE | IGC_RCTL_MPE); /* Turn this on if you want to see bad packets */ if (igc_debug_sbp) reg_rctl |= IGC_RCTL_SBP; - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } else if (flags & IFF_ALLMULTI) { reg_rctl |= IGC_RCTL_MPE; reg_rctl &= ~IGC_RCTL_UPE; - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } return (0); } @@ -1272,7 +1272,7 @@ igc_copy_maddr(void *arg, struct sockaddr_dl *sdl, u_int idx) static void igc_if_multi_set(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); if_t ifp = iflib_get_ifp(ctx); u8 *mta; /* Multicast array memory */ u32 reg_rctl = 0; @@ -1280,12 +1280,12 @@ igc_if_multi_set(if_ctx_t ctx) IOCTL_DEBUGOUT("igc_set_multi: begin"); - mta = adapter->mta; + mta = sc->mta; bzero(mta, sizeof(u8) * ETHER_ADDR_LEN * MAX_NUM_MULTICAST_ADDRESSES); mcnt = if_foreach_llmaddr(ifp, igc_copy_maddr, mta); - reg_rctl = IGC_READ_REG(&adapter->hw, IGC_RCTL); + reg_rctl = IGC_READ_REG(&sc->hw, IGC_RCTL); if (if_getflags(ifp) & IFF_PROMISC) { reg_rctl |= (IGC_RCTL_UPE | IGC_RCTL_MPE); @@ -1300,9 +1300,9 @@ igc_if_multi_set(if_ctx_t ctx) reg_rctl &= ~(IGC_RCTL_UPE | IGC_RCTL_MPE); if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) - igc_update_mc_addr_list(&adapter->hw, mta, mcnt); + igc_update_mc_addr_list(&sc->hw, mta, mcnt); - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } /********************************************************************* @@ -1326,8 +1326,8 @@ igc_if_timer(if_ctx_t ctx, uint16_t qid) static void igc_if_update_admin_status(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_hw *hw = &sc->hw; device_t dev = iflib_get_dev(ctx); u32 link_check, thstat, ctrl; @@ -1351,36 +1351,36 @@ igc_if_update_admin_status(if_ctx_t ctx) } /* Now check for a transition */ - if (link_check && (adapter->link_active == 0)) { - igc_get_speed_and_duplex(hw, &adapter->link_speed, - &adapter->link_duplex); + if (link_check && (sc->link_active == 0)) { + igc_get_speed_and_duplex(hw, &sc->link_speed, + &sc->link_duplex); if (bootverbose) device_printf(dev, "Link is up %d Mbps %s\n", - adapter->link_speed, - ((adapter->link_duplex == FULL_DUPLEX) ? + sc->link_speed, + ((sc->link_duplex == FULL_DUPLEX) ? "Full Duplex" : "Half Duplex")); - adapter->link_active = 1; + sc->link_active = 1; iflib_link_state_change(ctx, LINK_STATE_UP, - IF_Mbps(adapter->link_speed)); - } else if (!link_check && (adapter->link_active == 1)) { - adapter->link_speed = 0; - adapter->link_duplex = 0; - adapter->link_active = 0; + IF_Mbps(sc->link_speed)); + } else if (!link_check && (sc->link_active == 1)) { + sc->link_speed = 0; + sc->link_duplex = 0; + sc->link_active = 0; iflib_link_state_change(ctx, LINK_STATE_DOWN, 0); } - igc_update_stats_counters(adapter); + igc_update_stats_counters(sc); } static void igc_if_watchdog_reset(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); /* * Just count the event; iflib(4) will already trigger a * sufficient reset of the controller. */ - adapter->watchdog_events++; + sc->watchdog_events++; } /********************************************************************* @@ -1392,12 +1392,12 @@ igc_if_watchdog_reset(if_ctx_t ctx) static void igc_if_stop(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_stop: begin"); - igc_reset_hw(&adapter->hw); - IGC_WRITE_REG(&adapter->hw, IGC_WUC, 0); + igc_reset_hw(&sc->hw); + IGC_WRITE_REG(&sc->hw, IGC_WUC, 0); } /********************************************************************* @@ -1409,22 +1409,22 @@ static void igc_identify_hardware(if_ctx_t ctx) { device_t dev = iflib_get_dev(ctx); - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); /* Make sure our PCI config space has the necessary stuff set */ - adapter->hw.bus.pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2); + sc->hw.bus.pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2); /* Save off the information about this board */ - adapter->hw.vendor_id = pci_get_vendor(dev); - adapter->hw.device_id = pci_get_device(dev); - adapter->hw.revision_id = pci_read_config(dev, PCIR_REVID, 1); - adapter->hw.subsystem_vendor_id = + sc->hw.vendor_id = pci_get_vendor(dev); + sc->hw.device_id = pci_get_device(dev); + sc->hw.revision_id = pci_read_config(dev, PCIR_REVID, 1); + sc->hw.subsystem_vendor_id = pci_read_config(dev, PCIR_SUBVEND_0, 2); - adapter->hw.subsystem_device_id = + sc->hw.subsystem_device_id = pci_read_config(dev, PCIR_SUBDEV_0, 2); /* Do Shared Code Init and Setup */ - if (igc_set_mac_type(&adapter->hw)) { + if (igc_set_mac_type(&sc->hw)) { device_printf(dev, "Setup init failure\n"); return; } @@ -1433,23 +1433,23 @@ igc_identify_hardware(if_ctx_t ctx) static int igc_allocate_pci_resources(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); device_t dev = iflib_get_dev(ctx); int rid; rid = PCIR_BAR(0); - adapter->memory = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + sc->memory = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); - if (adapter->memory == NULL) { + if (sc->memory == NULL) { device_printf(dev, "Unable to allocate bus resource: memory\n"); return (ENXIO); } - adapter->osdep.mem_bus_space_tag = rman_get_bustag(adapter->memory); - adapter->osdep.mem_bus_space_handle = - rman_get_bushandle(adapter->memory); - adapter->hw.hw_addr = (u8 *)&adapter->osdep.mem_bus_space_handle; + sc->osdep.mem_bus_space_tag = rman_get_bustag(sc->memory); + sc->osdep.mem_bus_space_handle = + rman_get_bushandle(sc->memory); + sc->hw.hw_addr = (u8 *)&sc->osdep.mem_bus_space_handle; - adapter->hw.back = &adapter->osdep; + sc->hw.back = &sc->osdep; return (0); } @@ -1462,20 +1462,20 @@ igc_allocate_pci_resources(if_ctx_t ctx) static int igc_if_msix_intr_assign(if_ctx_t ctx, int msix) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *rx_que = adapter->rx_queues; - struct igc_tx_queue *tx_que = adapter->tx_queues; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *rx_que = sc->rx_queues; + struct igc_tx_queue *tx_que = sc->tx_queues; int error, rid, i, vector = 0, rx_vectors; char buf[16]; /* First set up ring resources */ - for (i = 0; i < adapter->rx_num_queues; i++, rx_que++, vector++) { + for (i = 0; i < sc->rx_num_queues; i++, rx_que++, vector++) { rid = vector + 1; snprintf(buf, sizeof(buf), "rxq%d", i); error = iflib_irq_alloc_generic(ctx, &rx_que->que_irq, rid, IFLIB_INTR_RXTX, igc_msix_que, rx_que, rx_que->me, buf); if (error) { device_printf(iflib_get_dev(ctx), "Failed to allocate que int %d err: %d", i, error); - adapter->rx_num_queues = i + 1; + sc->rx_num_queues = i + 1; goto fail; } @@ -1492,14 +1492,14 @@ igc_if_msix_intr_assign(if_ctx_t ctx, int msix) rx_vectors = vector; vector = 0; - for (i = 0; i < adapter->tx_num_queues; i++, tx_que++, vector++) { + for (i = 0; i < sc->tx_num_queues; i++, tx_que++, vector++) { snprintf(buf, sizeof(buf), "txq%d", i); - tx_que = &adapter->tx_queues[i]; + tx_que = &sc->tx_queues[i]; iflib_softirq_alloc_generic(ctx, - &adapter->rx_queues[i % adapter->rx_num_queues].que_irq, + &sc->rx_queues[i % sc->rx_num_queues].que_irq, IFLIB_INTR_TX, tx_que, tx_que->me, buf); - tx_que->msix = (vector % adapter->rx_num_queues); + tx_que->msix = (vector % sc->rx_num_queues); /* * Set the bit to enable interrupt @@ -1512,26 +1512,26 @@ igc_if_msix_intr_assign(if_ctx_t ctx, int msix) /* Link interrupt */ rid = rx_vectors + 1; - error = iflib_irq_alloc_generic(ctx, &adapter->irq, rid, IFLIB_INTR_ADMIN, igc_msix_link, adapter, 0, "aq"); + error = iflib_irq_alloc_generic(ctx, &sc->irq, rid, IFLIB_INTR_ADMIN, igc_msix_link, sc, 0, "aq"); if (error) { device_printf(iflib_get_dev(ctx), "Failed to register admin handler"); goto fail; } - adapter->linkvec = rx_vectors; + sc->linkvec = rx_vectors; return (0); fail: - iflib_irq_free(ctx, &adapter->irq); - rx_que = adapter->rx_queues; - for (int i = 0; i < adapter->rx_num_queues; i++, rx_que++) + iflib_irq_free(ctx, &sc->irq); + rx_que = sc->rx_queues; + for (int i = 0; i < sc->rx_num_queues; i++, rx_que++) iflib_irq_free(ctx, &rx_que->que_irq); return (error); } static void -igc_configure_queues(struct igc_adapter *adapter) +igc_configure_queues(struct igc_softc *sc) { - struct igc_hw *hw = &adapter->hw; + struct igc_hw *hw = &sc->hw; struct igc_rx_queue *rx_que; struct igc_tx_queue *tx_que; u32 ivar = 0, newitr = 0; @@ -1543,10 +1543,10 @@ igc_configure_queues(struct igc_adapter *adapter) /* Turn on MSI-X */ /* RX entries */ - for (int i = 0; i < adapter->rx_num_queues; i++) { + for (int i = 0; i < sc->rx_num_queues; i++) { u32 index = i >> 1; ivar = IGC_READ_REG_ARRAY(hw, IGC_IVAR0, index); - rx_que = &adapter->rx_queues[i]; + rx_que = &sc->rx_queues[i]; if (i & 1) { ivar &= 0xFF00FFFF; ivar |= (rx_que->msix | IGC_IVAR_VALID) << 16; @@ -1557,10 +1557,10 @@ igc_configure_queues(struct igc_adapter *adapter) IGC_WRITE_REG_ARRAY(hw, IGC_IVAR0, index, ivar); } /* TX entries */ - for (int i = 0; i < adapter->tx_num_queues; i++) { + for (int i = 0; i < sc->tx_num_queues; i++) { u32 index = i >> 1; ivar = IGC_READ_REG_ARRAY(hw, IGC_IVAR0, index); - tx_que = &adapter->tx_queues[i]; + tx_que = &sc->tx_queues[i]; if (i & 1) { ivar &= 0x00FFFFFF; ivar |= (tx_que->msix | IGC_IVAR_VALID) << 24; @@ -1569,12 +1569,12 @@ igc_configure_queues(struct igc_adapter *adapter) ivar |= (tx_que->msix | IGC_IVAR_VALID) << 8; } IGC_WRITE_REG_ARRAY(hw, IGC_IVAR0, index, ivar); - adapter->que_mask |= tx_que->eims; + sc->que_mask |= tx_que->eims; } /* And for the link interrupt */ - ivar = (adapter->linkvec | IGC_IVAR_VALID) << 8; - adapter->link_mask = 1 << adapter->linkvec; + ivar = (sc->linkvec | IGC_IVAR_VALID) << 8; + sc->link_mask = 1 << sc->linkvec; IGC_WRITE_REG(hw, IGC_IVAR_MISC, ivar); /* Set the starting interrupt rate */ @@ -1583,8 +1583,8 @@ igc_configure_queues(struct igc_adapter *adapter) newitr |= IGC_EITR_CNT_IGNR; - for (int i = 0; i < adapter->rx_num_queues; i++) { - rx_que = &adapter->rx_queues[i]; + for (int i = 0; i < sc->rx_num_queues; i++) { + rx_que = &sc->rx_queues[i]; IGC_WRITE_REG(hw, IGC_EITR(rx_que->msix), newitr); } @@ -1594,34 +1594,34 @@ igc_configure_queues(struct igc_adapter *adapter) static void igc_free_pci_resources(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *que = adapter->rx_queues; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *que = sc->rx_queues; device_t dev = iflib_get_dev(ctx); /* Release all MSI-X queue resources */ *** 1508 LINES SKIPPED *** From nobody Mon Oct 21 15:11:14 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfq3cngz5ZPXx; Mon, 21 Oct 2024 15:11:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJfq23mfz4lPn; Mon, 21 Oct 2024 15:11:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523475; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/sRLMpiFbxPpr3vwVlTulWng7QNJtuZaxCQNn6g2gR0=; b=dYZ9taUBrxaMfkNyEv4f41Z1aY/fIyLx76Vm/ZaywlREWbirgzLcntQsFDnOK8s1uRhvuo OkobVwCSKJbje/1feHutsSdZmbOClFso0VttjNkrDdMCuIN8fQRkzElrdFkxlywhcDB0ov Vhf3ldy75ofwKAhdAWZXSHmJQRa+xms/Kel4hmt0LVPtZV8gTssrMzyrYtybmO5gzl0bGa Wrsj0fboWEM6EGGK8VDo73VDoZ6e6ikEex5dOeoFX5AvJDxSz5XLcqNh2/CwEBvgS6DCKP UdmYnqb4NPWEjKnrFezv4uyUtUIQ238i7avP0bjGSzXZjRAnha8C2Kt470gw2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523475; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/sRLMpiFbxPpr3vwVlTulWng7QNJtuZaxCQNn6g2gR0=; b=OkhHwykylYwjcWAelnK3zUFRegUVS3kPFx7EDI7wOaFrBO7RhpT6h6r2u246QUFM+Swa0i lCQ8kvfK3Mryy5H7qWFouVbIqSa74ggJj86Ckb3sCjnnQsGl4k8VO/gW13BJYXU5rQmFcV RRjLnmIEHwZL/SPyWCNdaBEbo8Jlgxxhj1ENsWgTHKqD/cLAwowMTIJtSO00OhUGB1ykBk Hf3tISpQkzdlPz30n5hWodrzAWQVnsfHpmS4fBvelC45R6az3of7XRlBRpo5904ooXcoWa z4HN026dre3EuBuDqASgqMjC2nOxxdSvh/77/i5XEnFYv/9eBZaP3r3BIWeUJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523475; a=rsa-sha256; cv=none; b=NOgopXruNMzhd7yKdOBS7Eddhdl9zv+5G6DSQ2nP0QJ8smrEfqEJ7FeoIbMnHAMAx2F0iy +etNwhz8LCLQLpGjH12fOA5jcuuQ+3EHIReSOHQ5R6C7w+TMoATa5CRsF8vnE2JOililB7 sie2c2GQIBZdYOOV6fOjnxCE0fYazjtaOIbd9ehADAKmmOpwrCGwylW6mA6fppeLdLBbpL 1WP6isH+Bsm1trPa2Zq7FGSZWyrccdw23+Y6mxkOAzbbpq4WOVW1ssIh7p1SMW8PzXLo3z jT6bXi50Kk6sQQUI3CkeNEQZ5YkZdztFD6Ouz1GANRFcpPmCpLUw9Hvg3YgJTw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfq0Yf3zbTP; Mon, 21 Oct 2024 15:11:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LFBEW4060610; Mon, 21 Oct 2024 15:11:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBEWb060607; Mon, 21 Oct 2024 15:11:14 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:14 GMT Message-Id: <202410211511.49LFBEWb060607@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: cd310c0135f2 - stable/14 - igc: Function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cd310c0135f2a5a9cf5e6447ea9e93835f72248d Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=cd310c0135f2a5a9cf5e6447ea9e93835f72248d commit cd310c0135f2a5a9cf5e6447ea9e93835f72248d Author: Kevin Bowling AuthorDate: 2024-10-14 13:49:19 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:10:28 +0000 igc: Function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 1b0e41ddffbf0ac84c88019df84dfd50ce9f7788) --- sys/dev/igc/if_igc.c | 86 ++++++++++++++++++++++++++-------------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index a55d8b6cbc9c..dd89b27e134c 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -72,49 +72,49 @@ static const pci_vendor_info_t igc_vendor_info_array[] = /********************************************************************* * Function prototypes *********************************************************************/ -static void *igc_register(device_t dev); -static int igc_if_attach_pre(if_ctx_t ctx); -static int igc_if_attach_post(if_ctx_t ctx); -static int igc_if_detach(if_ctx_t ctx); -static int igc_if_shutdown(if_ctx_t ctx); -static int igc_if_suspend(if_ctx_t ctx); -static int igc_if_resume(if_ctx_t ctx); - -static int igc_if_tx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs, uint64_t *paddrs, int ntxqs, int ntxqsets); -static int igc_if_rx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs, uint64_t *paddrs, int nrxqs, int nrxqsets); -static void igc_if_queues_free(if_ctx_t ctx); +static void *igc_register(device_t); +static int igc_if_attach_pre(if_ctx_t); +static int igc_if_attach_post(if_ctx_t); +static int igc_if_detach(if_ctx_t); +static int igc_if_shutdown(if_ctx_t); +static int igc_if_suspend(if_ctx_t); +static int igc_if_resume(if_ctx_t); + +static int igc_if_tx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static int igc_if_rx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static void igc_if_queues_free(if_ctx_t); static uint64_t igc_if_get_counter(if_ctx_t, ift_counter); -static void igc_if_init(if_ctx_t ctx); -static void igc_if_stop(if_ctx_t ctx); +static void igc_if_init(if_ctx_t); +static void igc_if_stop(if_ctx_t); static void igc_if_media_status(if_ctx_t, struct ifmediareq *); -static int igc_if_media_change(if_ctx_t ctx); -static int igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu); -static void igc_if_timer(if_ctx_t ctx, uint16_t qid); -static void igc_if_watchdog_reset(if_ctx_t ctx); -static bool igc_if_needs_restart(if_ctx_t ctx, enum iflib_restart_event event); - -static void igc_identify_hardware(if_ctx_t ctx); -static int igc_allocate_pci_resources(if_ctx_t ctx); -static void igc_free_pci_resources(if_ctx_t ctx); -static void igc_reset(if_ctx_t ctx); -static int igc_setup_interface(if_ctx_t ctx); -static int igc_setup_msix(if_ctx_t ctx); - -static void igc_initialize_transmit_unit(if_ctx_t ctx); -static void igc_initialize_receive_unit(if_ctx_t ctx); - -static void igc_if_intr_enable(if_ctx_t ctx); -static void igc_if_intr_disable(if_ctx_t ctx); -static int igc_if_rx_queue_intr_enable(if_ctx_t ctx, uint16_t rxqid); -static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid); -static void igc_if_multi_set(if_ctx_t ctx); -static void igc_if_update_admin_status(if_ctx_t ctx); -static void igc_if_debug(if_ctx_t ctx); +static int igc_if_media_change(if_ctx_t); +static int igc_if_mtu_set(if_ctx_t, uint32_t); +static void igc_if_timer(if_ctx_t, uint16_t); +static void igc_if_watchdog_reset(if_ctx_t); +static bool igc_if_needs_restart(if_ctx_t, enum iflib_restart_event); + +static void igc_identify_hardware(if_ctx_t); +static int igc_allocate_pci_resources(if_ctx_t); +static void igc_free_pci_resources(if_ctx_t); +static void igc_reset(if_ctx_t); +static int igc_setup_interface(if_ctx_t); +static int igc_setup_msix(if_ctx_t); + +static void igc_initialize_transmit_unit(if_ctx_t); +static void igc_initialize_receive_unit(if_ctx_t); + +static void igc_if_intr_enable(if_ctx_t); +static void igc_if_intr_disable(if_ctx_t); +static int igc_if_rx_queue_intr_enable(if_ctx_t, uint16_t); +static int igc_if_tx_queue_intr_enable(if_ctx_t, uint16_t); +static void igc_if_multi_set(if_ctx_t); +static void igc_if_update_admin_status(if_ctx_t); +static void igc_if_debug(if_ctx_t); static void igc_update_stats_counters(struct igc_softc *); -static void igc_add_hw_stats(struct igc_softc *sc); -static int igc_if_set_promisc(if_ctx_t ctx, int flags); -static void igc_setup_vlan_hw_support(if_ctx_t ctx); +static void igc_add_hw_stats(struct igc_softc *); +static int igc_if_set_promisc(if_ctx_t, int); +static void igc_setup_vlan_hw_support(if_ctx_t); static void igc_fw_version(struct igc_softc *); static void igc_sbuf_fw_version(struct igc_fw_version *, struct sbuf *); static void igc_print_fw_version(struct igc_softc *); @@ -130,10 +130,10 @@ static void igc_neweitr(struct igc_softc *, struct igc_rx_queue *, /* Management and WOL Support */ static void igc_get_hw_control(struct igc_softc *); static void igc_release_hw_control(struct igc_softc *); -static void igc_get_wakeup(if_ctx_t ctx); -static void igc_enable_wakeup(if_ctx_t ctx); +static void igc_get_wakeup(if_ctx_t); +static void igc_enable_wakeup(if_ctx_t); -int igc_intr(void *arg); +int igc_intr(void *); /* MSI-X handlers */ static int igc_if_msix_intr_assign(if_ctx_t, int); @@ -146,7 +146,7 @@ static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); -static void igc_configure_queues(struct igc_softc *sc); +static void igc_configure_queues(struct igc_softc *); /********************************************************************* From nobody Mon Oct 21 15:11:17 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfv5FDzz5ZPGK; Mon, 21 Oct 2024 15:11:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJft0y8Mz4ldk; Mon, 21 Oct 2024 15:11:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523478; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UrGdtDfmzXQC+82zjR0bJI2qN5Pl3/OrxeAPS72OhU8=; b=UFKfzYTLk5N59+irDWJPLzxc1hzkuR3hHc6F5lNPqSDHg9Or4zBKxW6OZB0dSDM4ZGlndJ O41ysS2FGEmmHo48PNuU3KV+CMeDqk6slaLlyEruSXt0x0seLh37R6BzH1v9Fmxun6GegA YPzW5epftLU4DoeXuL52+loj8a4gJk+JZOAYLTXhwDbiBGGFKJacN6tErSnKdHJXewEqAn zBQeHxzWTiBBvGKyvToMPkE6cgruWnuGnbwRt1CbRChb8XjsuoJqS5EsiVbGv2y2OVZh4j KvumsqOV3GSr5Oa6VbKgLsP9SgiCw5D69KKsPYpaVcx9ROS7PDvpGJ8myKWzRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523478; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UrGdtDfmzXQC+82zjR0bJI2qN5Pl3/OrxeAPS72OhU8=; b=DJWHOrNgG8zmjy5pW0K3dhNoYC++jFm/mmt1e4kDfSX48U8vStrQz2vIfgEIeFDPX7ERRF 5VDHtwW6wtMGWFedB5UTVwFYPDgJol5IP0xcwNaTg1LvKDTBzxBjIhZCnH301WQowBu3b6 TzOtfaKnYuHX2EqpkmrhwqUUikcyBuGWNWrw1BOtv3rirGbWwCN9vIZSECGW0E4hJ109yg Lz4TB5j0NidW1Xjarw+GQNOaZnuCLYBT9TDfbNgEv1BfyOd3EhmtCWOc9uMBMQKr/RHHrC ygpx6owbNgl3kGLAtbWwGYq7nqt/Hmd8JaeLrENm4IYZgOTmQesYQjo/S3CHYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523478; a=rsa-sha256; cv=none; b=ZGHa0hnorvxFr/2vyK7J49VNm4QzY2sE+lIERm+owBQdTH1MNAnZtxzyZvoIVGFWwKJNIE /H/xNunIwDk03dIzysHebyl8A9I71V0VzV085DkJITdJ4Qrmnh/B/jUDPnDr54sZm86FTA ID+0Z7AY9VHcgQQilA8W6j3lnTo5TlYOBCkqMqNaS9b0I+sMcst1yMIs1GyTUAaehPfkJU 9pqAzGWkJy9BIncZaf/Rw0g1jpHnAfi4fMnH/psjkVNczLtsdxpZHC5GqqlCsy7gZ4gHMH 8fH/PgCkyyfWFMJozphNLph8w/gDn5amTptjFoD5XW/CPxXtdlygEqKPLNqEyQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfs2V0YzbP2; Mon, 21 Oct 2024 15:11: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 49LFBHtB060710; Mon, 21 Oct 2024 15:11:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBHPo060707; Mon, 21 Oct 2024 15:11:17 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:17 GMT Message-Id: <202410211511.49LFBHPo060707@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 4608b5f80d29 - stable/14 - igc: txrx function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4608b5f80d29ecc414e490e75c44433b2c00f557 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=4608b5f80d29ecc414e490e75c44433b2c00f557 commit 4608b5f80d29ecc414e490e75c44433b2c00f557 Author: Kevin Bowling AuthorDate: 2024-10-14 16:10:10 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:10:57 +0000 igc: txrx function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 7763b194d8de6fe8034f754064449a7510ca16b9) --- sys/dev/igc/igc_txrx.c | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/sys/dev/igc/igc_txrx.c b/sys/dev/igc/igc_txrx.c index a95b34702e24..59f4725388ee 100644 --- a/sys/dev/igc/igc_txrx.c +++ b/sys/dev/igc/igc_txrx.c @@ -44,29 +44,27 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int igc_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void igc_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int igc_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); +static int igc_isc_txd_encap(void *, if_pkt_info_t); +static void igc_isc_txd_flush(void *, uint16_t, qidx_t); +static int igc_isc_txd_credits_update(void *, uint16_t, bool); -static void igc_isc_rxd_refill(void *arg, if_rxd_update_t iru); +static void igc_isc_rxd_refill(void *, if_rxd_update_t); -static void igc_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int igc_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); +static void igc_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int igc_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); -static int igc_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); +static int igc_isc_rxd_pkt_get(void *, if_rxd_info_t); -static int igc_tx_ctx_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); -static int igc_tso_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); +static int igc_tx_ctx_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int igc_tso_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); -static void igc_rx_checksum(uint32_t staterr, if_rxd_info_t ri, uint32_t ptype); -static int igc_determine_rsstype(uint16_t pkt_info); +static void igc_rx_checksum(uint32_t, if_rxd_info_t, uint32_t); +static int igc_determine_rsstype(uint16_t); -extern void igc_if_enable_intr(if_ctx_t ctx); -extern int igc_intr(void *arg); +extern void igc_if_enable_intr(if_ctx_t); +extern int igc_intr(void *); struct if_txrx igc_txrx = { .ift_txd_encap = igc_isc_txd_encap, From nobody Mon Oct 21 15:11:16 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJfr4GD2z5ZP16; Mon, 21 Oct 2024 15:11:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJfr1wcjz4lXr; Mon, 21 Oct 2024 15:11:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hA9WIZRTMdDl6M5DsD0A//m45cbmIXo6bGO5p7sMvp0=; b=etI+jS91eHIzxLgT68DPB1oe8g9ENe72sbZeWWny6a4uyq6oKQVfwbl9dADN/vV/mx/HYf sptF0TT5d6KX9bB1x4uwWqzNiRmjRqm8huK+Exbmm0j5JubwotRO+gAi7l9s+BTbzis/Y7 iYf5g9XWncqOEGzJ96qF0tSiO4XyJg0pTpwzWo6akG+B0ok3vHR3nrFlrj6/OyrxhziKsX T62AR+odqxvOHiAEFmq/YNghdzgYSu+voalgFo3ToWCgp5WuOxMPMhh6Pb+O6OYnIRc0Um ncRbFL8IO3JSTlPaeBQAuSR/DXAtTf+zgd8eh4Dtrk6FBG3icDsdGv1SpZUB5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729523476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hA9WIZRTMdDl6M5DsD0A//m45cbmIXo6bGO5p7sMvp0=; b=If43gLPMXRr5pXMYxMttoXOO8AX3R/VUEOqzzKT2cknqTMJZPCSv5ewspBdndZBBAXC58Y ca6NyX3++1AwgsptJiYEJJq9VI6n8avZX9Y8KnPOjy9ZZ1OMV0TXm4Vfh1O/8AudbG0Jgz RlIz/Rh8pKsbAjtL4uUw4NQkW0OfBC2bKx7o22xq7rCDs8fAOuzhkhlHZMRM1UTQFqbat7 6LXYO7x3/W5tkomUSrnC6BruDcDBlZzROOO7Jx/kqnAHGQtYdz3N/psHWPgQ3WDRbSeSIM 7C3OeaPQpUkanNZdcZX+oMNs+ZEPouGZLkp3cPFJhGzKPevJ5cEGZ5lihWtHtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729523476; a=rsa-sha256; cv=none; b=q+loCHyR+O6g6guefB+P5tfwUtC078UcbRV1NmCF0ESdVWqXJHrX+rF+L24EjX6PYcuts6 ddLjB2YRFurFPBTtW2QysQnMCqR1uWoL0NVvpfponCeNOnpmwBR6FYCv1VUyLNQyPjWDQB wvBTIsYnf0kMBEHxRv3X5Cx4TbmLSajsnstDdk/0aw49D9IM8XNkmgyArXC1lJHtfRnESh AyrRwk8C4cjmpxQRJsetsY5euVvq4oJdjebwPjOhherf/sDXmRMyZRIEtGS6KbtBNrxe+8 9T0TcNF6ymMwJtiMY7npTcsZkNkVjgBQ2zEkjjS2OmvhIOd/9VhLs4OqZOdfRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJfr1WJ3zbLL; Mon, 21 Oct 2024 15:11: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 49LFBGNT060662; Mon, 21 Oct 2024 15:11:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFBG4b060659; Mon, 21 Oct 2024 15:11:16 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:11:16 GMT Message-Id: <202410211511.49LFBG4b060659@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 10ad90dfd101 - stable/14 - e1000: txrx function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 10ad90dfd101a4bc6c3045530853c46c5716e63c Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=10ad90dfd101a4bc6c3045530853c46c5716e63c commit 10ad90dfd101a4bc6c3045530853c46c5716e63c Author: Kevin Bowling AuthorDate: 2024-10-14 16:07:29 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:10:43 +0000 e1000: txrx function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 9dc452b983f042aa9d2a2562517d44c1928ff42a) --- sys/dev/e1000/em_txrx.c | 39 ++++++++++++++++++--------------------- sys/dev/e1000/igb_txrx.c | 30 ++++++++++++++---------------- 2 files changed, 32 insertions(+), 37 deletions(-) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index 6e8fff07cd82..65ffcdfd67f6 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -43,29 +43,26 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, - uint32_t *txd_upper, uint32_t *txd_lower); -static int em_transmit_checksum_setup(struct e1000_softc *sc, - if_pkt_info_t pi, uint32_t *txd_upper, uint32_t *txd_lower); -static int em_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void em_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int em_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); -static void em_isc_rxd_refill(void *arg, if_rxd_update_t iru); -static void em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int em_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); -static int em_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); - -static void lem_isc_rxd_refill(void *arg, if_rxd_update_t iru); - -static int lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); -static int lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); +static int em_tso_setup(struct e1000_softc *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int em_transmit_checksum_setup(struct e1000_softc *, if_pkt_info_t, + uint32_t *, uint32_t *); +static int em_isc_txd_encap(void *, if_pkt_info_t); +static void em_isc_txd_flush(void *, uint16_t, qidx_t); +static int em_isc_txd_credits_update(void *, uint16_t, bool); +static void em_isc_rxd_refill(void *, if_rxd_update_t); +static void em_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int em_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); +static int em_isc_rxd_pkt_get(void *, if_rxd_info_t); + +static void lem_isc_rxd_refill(void *, if_rxd_update_t); + +static int lem_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); +static int lem_isc_rxd_pkt_get(void *, if_rxd_info_t); static void em_receive_checksum(uint16_t, uint8_t, if_rxd_info_t); -static int em_determine_rsstype(uint32_t pkt_info); -extern int em_intr(void *arg); +static int em_determine_rsstype(uint32_t); +extern int em_intr(void *); struct if_txrx em_txrx = { .ift_txd_encap = em_isc_txd_encap, diff --git a/sys/dev/e1000/igb_txrx.c b/sys/dev/e1000/igb_txrx.c index 82cbb37ce4cd..8b663d7e6d3e 100644 --- a/sys/dev/e1000/igb_txrx.c +++ b/sys/dev/e1000/igb_txrx.c @@ -42,29 +42,27 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int igb_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void igb_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int igb_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); +static int igb_isc_txd_encap(void *, if_pkt_info_t); +static void igb_isc_txd_flush(void *, uint16_t, qidx_t); +static int igb_isc_txd_credits_update(void *, uint16_t, bool); -static void igb_isc_rxd_refill(void *arg, if_rxd_update_t iru); +static void igb_isc_rxd_refill(void *, if_rxd_update_t); -static void igb_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int igb_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); +static void igb_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int igb_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); static int igb_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); -static int igb_tx_ctx_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); -static int igb_tso_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); +static int igb_tx_ctx_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int igb_tso_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); -static void igb_rx_checksum(uint32_t staterr, if_rxd_info_t ri, uint32_t ptype); -static int igb_determine_rsstype(uint16_t pkt_info); +static void igb_rx_checksum(uint32_t, if_rxd_info_t, uint32_t); +static int igb_determine_rsstype(uint16_t); -extern void igb_if_enable_intr(if_ctx_t ctx); -extern int em_intr(void *arg); +extern void igb_if_enable_intr(if_ctx_t); +extern int em_intr(void *); struct if_txrx igb_txrx = { .ift_txd_encap = igb_isc_txd_encap, From nobody Mon Oct 21 15:24:51 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyX0sr2z5ZQF7; Mon, 21 Oct 2024 15:24:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyX0Jhnz4pQt; Mon, 21 Oct 2024 15:24:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524292; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K0tTN8Y2rQKDQGhMZnZ8hkW7QTcihM72O3e3z0D+4zg=; b=SbtwfxHTa31Xls2UQcwNCi3X0khc+TA4AQ7Y+PP9fuV4XHD2zIWkVyjDkfLVpPobeqQVxw mrq8zjUF416SeRpFsPLo/CM3wyNAUUIerE8JIpr9BxRj2RQn7snM9POMnstva0YVM4J1xY 0z77gBLfvsjjCWnLR8lakK3H+7vBt+eKgt/3gaeAk2tGQCO/T8+GmaQ41px6JeD92D9j0g SGgz3Md4iKetUgieiDcpb/ccfrvMxDSgDVADYe4Dn8vZkZjldC2bOrPtHyyoEIvZ64m+hE e4NRXVu7JemOoZzrXMljL0X+WX58oKuzuZUu0Jsw1mhBaEvYwi/up4wcc1RNRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524292; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K0tTN8Y2rQKDQGhMZnZ8hkW7QTcihM72O3e3z0D+4zg=; b=sbhnfxghct0U3mHCZcC4/417yolwljThNCTVvimWxl2eJQhLJNW6HjQhCxv8TD2pBSheUk sL2NRU9TwzZfbwdra+rPmccgp33MaujGZu4Z/bRfCA7P+cYWs7sjbshIt8H83aBapli9tX hMXaciCbzQtGel9rgOahviPU/UwobgvVA49vgeyD2DkTm5KYIYwP/yNV7ajwdYcGg6bz+n gXOI3LPp2JIiGJ4L5YDY4BrcuR9YVASlWhqAZqFoH1URoYdY5x1nM0wsrTA+XDHgsMythn k2vz3Fee7k8eI/6+ENH6XwU3OAKFJVTSYMT48TAoWWdM8CcfhhjyvBwqjKB71A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524292; a=rsa-sha256; cv=none; b=cjPgxnHikz2+xaAn27BwUIvxD/+D+IPyYQzXBQZi+yVb5aPWUTNjYzLwISTdoOYNhqo/uJ CPmsarESVCusfM0+hUAeKcqF28VCKi8z1k0UcyxuiNd72lOs9+UirVX8fip/YUE399i5Yq YhUKZagHjorqnDPZW0D5aKlFKBbnguVXg9wabcubeCZDVIxVc9AsTcYzvIy71pJ/FK/YyJ rAz7JPicSfeSdKQAXfym2vvrqK5nxKrSSKZU+c0Iv+QVcKfxzuEJzF954tdOPv1Jl1mRt1 SHbwV+9JL3bKWtSZhkfCxMiHQQc9jlz7mAkDVtQpIbKasDBv0semyxziERM+nw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyW71pPzbYK; Mon, 21 Oct 2024 15:24: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 49LFOpCV083922; Mon, 21 Oct 2024 15:24:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOp3k083919; Mon, 21 Oct 2024 15:24:51 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:51 GMT Message-Id: <202410211524.49LFOp3k083919@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: dd8392810169 - stable/13 - igc: Add sysctl for DMA Coalesce List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: dd8392810169827e53586c1864c5d6b3be259605 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=dd8392810169827e53586c1864c5d6b3be259605 commit dd8392810169827e53586c1864c5d6b3be259605 Author: Kevin Bowling AuthorDate: 2024-10-14 12:55:18 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:11:52 +0000 igc: Add sysctl for DMA Coalesce This feature can increase efficiency at the expense of latency It does not work well with the default interrupt delay, but expose the otherwise unconnected code in the driver in case people want to experiment. See https://www.intel.com/content/dam/support/us/en/documents/network/adapter/pro100/sb/466827_intel_r__dma_coalescing_white_paper_v003.pdf Sponsored by: BBOX.io (cherry picked from commit 68b1f5dc59368ce5175e3300bf95476ea5a560bc) --- sys/dev/igc/if_igc.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index 7d95c2909b7a..d73b3a9aa510 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -141,6 +141,7 @@ static int igc_msix_link(void *); static void igc_handle_link(void *context); static int igc_set_flowcntl(SYSCTL_HANDLER_ARGS); +static int igc_sysctl_dmac(SYSCTL_HANDLER_ARGS); static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); @@ -491,6 +492,12 @@ igc_if_attach_pre(if_ctx_t ctx) CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, adapter, 0, igc_get_rs, "I", "Dump RS indexes"); + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "dmac", + CTLTYPE_INT | CTLFLAG_RW, adapter, 0, + igc_sysctl_dmac, "I", "DMA Coalesce"); + /* Determine hardware and mac info */ igc_identify_hardware(ctx); @@ -3031,6 +3038,55 @@ igc_set_flowcntl(SYSCTL_HANDLER_ARGS) return (error); } +/* + * Manage DMA Coalesce: + * Control values: + * 0/1 - off/on + * Legal timer values are: + * 250,500,1000-10000 in thousands + */ +static int +igc_sysctl_dmac(SYSCTL_HANDLER_ARGS) +{ + struct igc_adapter *sc = (struct igc_adapter *) arg1; + int error; + + error = sysctl_handle_int(oidp, &sc->dmac, 0, req); + + if ((error) || (req->newptr == NULL)) + return (error); + + switch (sc->dmac) { + case 0: + /* Disabling */ + break; + case 1: /* Just enable and use default */ + sc->dmac = 1000; + break; + case 250: + case 500: + case 1000: + case 2000: + case 3000: + case 4000: + case 5000: + case 6000: + case 7000: + case 8000: + case 9000: + case 10000: + /* Legal values - allow */ + break; + default: + /* Do nothing, illegal value */ + sc->dmac = 0; + return (EINVAL); + } + /* Reinit the interface */ + igc_if_init(sc->ctx); + return (error); +} + /* * Manage Energy Efficient Ethernet: * Control values: From nobody Mon Oct 21 15:24:52 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyY23hFz5ZQ66; Mon, 21 Oct 2024 15:24:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyY0rVGz4pSw; Mon, 21 Oct 2024 15:24:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524293; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bnmTLeSixU9QyWQbPkpSioJXrBJsP9uB8fU9WSw8mtE=; b=aJB9GSKqvg6qqFSdXQ/2j28wsYlxxBU01Go4RemBjrKuq8BjeASYJULxuczXh06xjyyxrX Hu4Elccw+vHjkzlTPFJtkIP5wjLNZelkpc0fA1zoykIYLZmBAkrNHLtXFhvfLyTwDBh/RR QoitACuW4M9AN6jt35ikHCU6n7vBn9r8wg8Vl0NBhMTMGhxK+5uNJdcnHD3Tol+3fLBSfA WL8evgfsg8flyWjElylZG9fbvT5Pknun37vATBfZDJK65ao6krbciOwq+zigcjKKEgUS8V Lzlk2nzJjX1o47K+gIjfAJA7F+vraHGq2zJqzAPhbQMDUWbVK8bTsz16d15JpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524293; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bnmTLeSixU9QyWQbPkpSioJXrBJsP9uB8fU9WSw8mtE=; b=eY1V0L7txvB9Mrrk9b1iL/b+mEpx2vwEoZaa9Y9g5Rtoqvx3BQ5K3PAmgSrjz+t0YnL6NL Jp73iHBspcadJZaU8Fp4Y/LFPaOT5/9jdU3InW0RPCBrbHerg0toE3m/7EBuIwC1HKOHtR B1qJJ06OhekEnV9QGP+yyKqRJE1PQraxcN6Csvd62T6YXry90yXLxAub8o8KVc02zXy3Ur vVjrHS/fgQ5ebygzl/7oRSihPPWmZ5UYRL5X4NTzkDl2XUwfNjVydecyTgj7sbtOOY18Y7 Z3H5smwdRUPaGJRkr8KQrOQmYRwzImBGD6CIo1HnYFNWk6MpoukVafWQlew4uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524293; a=rsa-sha256; cv=none; b=DhqBkZiVRBEKOCtLeyqb1lrJvElYqIMOUYo/zlzqRV85MXXXN7ibhZLUwuJDrh8w24ATb6 ChLImHDbkhnSyfTMmscg0Wh0JbkMqaeEhFikVpYO+nSBFNuSPtXRIKf9e18hxUsRBLW15f PrWxym+Jo5/a0toDBjWRRV/lEmIWRCJWkaYdSDTSPDmYVuGXFrd4qNch3g7AaCSjEkYU2b UsbfuCvhegPtx66tbVgycFILsWoIfjQp1s08doR+F2d4oGdpMHVI7KI/YUypAoCdVH/QkK RvqbwI9SYTOki+0zBW/WTPl6C2v3CiV1jzJJzgc5LBo1PaSx3kahnD7dIkr4qw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyY0S3jzbSS; Mon, 21 Oct 2024 15:24:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LFOqOZ083988; Mon, 21 Oct 2024 15:24:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOqwU083985; Mon, 21 Oct 2024 15:24:52 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:52 GMT Message-Id: <202410211524.49LFOqwU083985@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 05e687d5916a - stable/13 - igc: Add sysctls for some missing MAC stats List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 05e687d5916a83c1ba73edd0858e1939a21e1df7 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=05e687d5916a83c1ba73edd0858e1939a21e1df7 commit 05e687d5916a83c1ba73edd0858e1939a21e1df7 Author: Kevin Bowling AuthorDate: 2024-10-14 13:07:41 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:12:09 +0000 igc: Add sysctls for some missing MAC stats Sponsored by: BBOX.io (cherry picked from commit 09526a771afc411e641a3d04c905824fe8afc627) --- sys/dev/igc/if_igc.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index d73b3a9aa510..50f26e1d6541 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -2492,6 +2492,10 @@ igc_update_stats_counters(struct igc_adapter *adapter) adapter->stats.roc += IGC_READ_REG(&adapter->hw, IGC_ROC); adapter->stats.rjc += IGC_READ_REG(&adapter->hw, IGC_RJC); + adapter->stats.mgprc += IGC_READ_REG(&adapter->hw, IGC_MGTPRC); + adapter->stats.mgpdc += IGC_READ_REG(&adapter->hw, IGC_MGTPDC); + adapter->stats.mgptc += IGC_READ_REG(&adapter->hw, IGC_MGTPTC); + adapter->stats.tor += IGC_READ_REG(&adapter->hw, IGC_TORH); adapter->stats.tot += IGC_READ_REG(&adapter->hw, IGC_TOTH); @@ -2732,6 +2736,9 @@ igc_add_hw_stats(struct igc_adapter *adapter) SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "missed_packets", CTLFLAG_RD, &adapter->stats.mpc, "Missed Packets"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "recv_length_errors", + CTLFLAG_RD, &adapter->stats.rlec, + "Receive Length Errors"); SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "recv_no_buff", CTLFLAG_RD, &adapter->stats.rnbc, "Receive No Buffers"); @@ -2768,6 +2775,18 @@ igc_add_hw_stats(struct igc_adapter *adapter) SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "xoff_txd", CTLFLAG_RD, &adapter->stats.xofftxc, "XOFF Transmitted"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "unsupported_fc_recvd", + CTLFLAG_RD, &adapter->stats.fcruc, + "Unsupported Flow Control Received"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_recvd", + CTLFLAG_RD, &adapter->stats.mgprc, + "Management Packets Received"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_drop", + CTLFLAG_RD, &adapter->stats.mgpdc, + "Management Packets Dropped"); + SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "mgmt_pkts_txd", + CTLFLAG_RD, &adapter->stats.mgptc, + "Management Packets Transmitted"); /* Packet Reception Stats */ SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "total_pkts_recvd", From nobody Mon Oct 21 15:24:54 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyZ4nCRz5ZQ69; Mon, 21 Oct 2024 15:24:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyZ1sHkz4pWf; Mon, 21 Oct 2024 15:24:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rpHCo2fukT4wpDKN2qsxZ2QujnteB4P9Df/8ZTqhpbM=; b=vKOI1qqaTdyTgtW95jBO2aUV30knxLQgZtBVcEu/YRoTc15kzDcDo2MiSGnhWX78Aqb6JB R1t8J/Gwq714T4MmJ3VTSTEb/pq73V2pfKMU5PZpxX6By7bl0bh/eNN/PYM7nuNfssaWfT Km+mloAA3eYvgxMtblxNAE2f7V0hmCBoSJiVjadhbbKw5I8nJY5PrSDGtTOVUTXrsfRprR fiFCa8BlBCxwXCzTb0DBMwOBEm/WFYUtnDxbTGyEIsFwqPhOcyr19Zd0yyB3H7nJO6L29M gv8agNwoyCBt497mSk6m2B4tDcY7YKPy6tdy6oAuQE4lnJM5pkI7AfGRqbbanA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rpHCo2fukT4wpDKN2qsxZ2QujnteB4P9Df/8ZTqhpbM=; b=qlxObe1dBljBQJgykw9mgAnqzSd++uTDSCYlcN9c63rA+0+/v9p3Z7olPfvBKABBk2cNum NiY1q/HCmj7ajA6xSp/hfle8ifBing9kKztx2FICRVn9DtQrEqLIeppk/G5khh7thIXyvE E725Wbm/IUxRqoHk8ewl3AB1werKRVcLFflhFYCBjMl4Ef5j6ZqdO4H60QSvMdhhSNRnds pqZlLcE4O0zdNUqk10y+U0EltXg43upKtKxlgVtnDwamH/meK8cBrfG559OlGrQQ30WSJu mKCNs714qJseOphbk0oz5bD5SmPqMptH8+F3QYeN+hEhy/+y/HG3pWPu8ThHBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524294; a=rsa-sha256; cv=none; b=SDm4FqsyEmhJbmlCLxDhNfU6WUnwiIv6vt5oXXJ2buh4+RD5Fdu4ovYozSq141p9cPsxEK 9SYQVHbcnqI70p3hhTuw0jknmNWAqEEVDSypUCcpufUCDhF2+XMGyiq024Zo36IPuFTxQA CN9AfO06v9Glum/jlNHIzVM9IxfNe0+mmLDJnwb3x0UcUbnsVBKiCdxEw4apJVrZVOhxXr GAI016qdONOeDoTKo9NK/3nJpw2blU0m2pgevhOS/VTmUQlnOahm9utaND1k1iPNW9nUHH J7ciatqowe0JkaRJB1gVpshetJ+ra1i9OKWuCzMTQiLvfu1Z95jMg78h0qqs4w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyZ1N90zbST; Mon, 21 Oct 2024 15:24: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 49LFOsE2084036; Mon, 21 Oct 2024 15:24:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOsjB084033; Mon, 21 Oct 2024 15:24:54 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:54 GMT Message-Id: <202410211524.49LFOsjB084033@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 494fb534f20e - stable/13 - igc: Rename 'struct adapter' to 'struct igc_softc' List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 494fb534f20ebddf9135c550035fa4e86db26e32 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=494fb534f20ebddf9135c550035fa4e86db26e32 commit 494fb534f20ebddf9135c550035fa4e86db26e32 Author: Kevin Bowling AuthorDate: 2024-10-14 13:29:55 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:21:35 +0000 igc: Rename 'struct adapter' to 'struct igc_softc' Rename the 'struct adapter' to 'struct igc_softc' to avoid type ambiguity in things like kgdb and make sharing code with e1000 and ixgbe easier. MFC after: 1 week Sponsored by: BBOX.io (cherry picked from commit 542f5d56317e94676cf19cb9d66207bf9a6b6758) --- sys/dev/igc/if_igc.c | 970 ++++++++++++++++++++++++------------------------- sys/dev/igc/if_igc.h | 28 +- sys/dev/igc/igc_txrx.c | 36 +- 3 files changed, 517 insertions(+), 517 deletions(-) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index 50f26e1d6541..8d72eb9d2447 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -111,25 +111,25 @@ static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid); static void igc_if_multi_set(if_ctx_t ctx); static void igc_if_update_admin_status(if_ctx_t ctx); static void igc_if_debug(if_ctx_t ctx); -static void igc_update_stats_counters(struct igc_adapter *); -static void igc_add_hw_stats(struct igc_adapter *adapter); +static void igc_update_stats_counters(struct igc_softc *); +static void igc_add_hw_stats(struct igc_softc *sc); static int igc_if_set_promisc(if_ctx_t ctx, int flags); static void igc_setup_vlan_hw_support(if_ctx_t ctx); -static void igc_fw_version(struct igc_adapter *); +static void igc_fw_version(struct igc_softc *); static void igc_sbuf_fw_version(struct igc_fw_version *, struct sbuf *); -static void igc_print_fw_version(struct igc_adapter *); +static void igc_print_fw_version(struct igc_softc *); static int igc_sysctl_print_fw_version(SYSCTL_HANDLER_ARGS); static int igc_sysctl_nvm_info(SYSCTL_HANDLER_ARGS); -static void igc_print_nvm_info(struct igc_adapter *); +static void igc_print_nvm_info(struct igc_softc *); static int igc_sysctl_debug_info(SYSCTL_HANDLER_ARGS); static int igc_get_rs(SYSCTL_HANDLER_ARGS); -static void igc_print_debug_info(struct igc_adapter *); +static void igc_print_debug_info(struct igc_softc *); static int igc_is_valid_ether_addr(u8 *); -static void igc_neweitr(struct igc_adapter *, struct igc_rx_queue *, +static void igc_neweitr(struct igc_softc *, struct igc_rx_queue *, struct tx_ring *, struct rx_ring *); /* Management and WOL Support */ -static void igc_get_hw_control(struct igc_adapter *); -static void igc_release_hw_control(struct igc_adapter *); +static void igc_get_hw_control(struct igc_softc *); +static void igc_release_hw_control(struct igc_softc *); static void igc_get_wakeup(if_ctx_t ctx); static void igc_enable_wakeup(if_ctx_t ctx); @@ -146,7 +146,7 @@ static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); -static void igc_configure_queues(struct igc_adapter *adapter); +static void igc_configure_queues(struct igc_softc *sc); /********************************************************************* @@ -165,7 +165,7 @@ static device_method_t igc_methods[] = { }; static driver_t igc_driver = { - "igc", igc_methods, sizeof(struct igc_adapter), + "igc", igc_methods, sizeof(struct igc_softc), }; static devclass_t igc_devclass; @@ -209,7 +209,7 @@ static device_method_t igc_if_methods[] = { }; static driver_t igc_if_driver = { - "igc_if", igc_if_methods, sizeof(struct igc_adapter) + "igc_if", igc_if_methods, sizeof(struct igc_softc) }; /********************************************************************* @@ -296,8 +296,8 @@ static struct if_shared_ctx igc_sctx_init = { static int igc_get_regs(SYSCTL_HANDLER_ARGS) { - struct igc_adapter *adapter = (struct igc_adapter *)arg1; - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = (struct igc_softc *)arg1; + struct igc_hw *hw = &sc->hw; struct sbuf *sb; u32 *regs_buff; int rc; @@ -373,7 +373,7 @@ static int igc_get_regs(SYSCTL_HANDLER_ARGS) #ifdef DUMP_DESCS { - if_softc_ctx_t scctx = adapter->shared; + if_softc_ctx_t scctx = sc->shared; struct rx_ring *rxr = &rx_que->rxr; struct tx_ring *txr = &tx_que->txr; int ntxd = scctx->isc_ntxd[0]; @@ -435,7 +435,7 @@ igc_set_num_queues(if_ctx_t ctx) static int igc_if_attach_pre(if_ctx_t ctx) { - struct igc_adapter *adapter; + struct igc_softc *sc; if_softc_ctx_t scctx; device_t dev; struct igc_hw *hw; @@ -443,59 +443,59 @@ igc_if_attach_pre(if_ctx_t ctx) INIT_DEBUGOUT("igc_if_attach_pre: begin"); dev = iflib_get_dev(ctx); - adapter = iflib_get_softc(ctx); + sc = iflib_get_softc(ctx); - adapter->ctx = adapter->osdep.ctx = ctx; - adapter->dev = adapter->osdep.dev = dev; - scctx = adapter->shared = iflib_get_softc_ctx(ctx); - adapter->media = iflib_get_media(ctx); - hw = &adapter->hw; + sc->ctx = sc->osdep.ctx = ctx; + sc->dev = sc->osdep.dev = dev; + scctx = sc->shared = iflib_get_softc_ctx(ctx); + sc->media = iflib_get_media(ctx); + hw = &sc->hw; /* SYSCTL stuff */ SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "nvm", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_nvm_info, "I", "NVM Information"); + sc, 0, igc_sysctl_nvm_info, "I", "NVM Information"); - adapter->enable_aim = igc_enable_aim; + sc->enable_aim = igc_enable_aim; SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "enable_aim", CTLFLAG_RW, - &adapter->enable_aim, 0, + &sc->enable_aim, 0, "Interrupt Moderation (1=normal, 2=lowlatency)"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "fw_version", CTLTYPE_STRING | CTLFLAG_RD, - adapter, 0, igc_sysctl_print_fw_version, "A", + sc, 0, igc_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "debug", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_debug_info, "I", "Debug Information"); + sc, 0, igc_sysctl_debug_info, "I", "Debug Information"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "fc", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_set_flowcntl, "I", "Flow Control"); + sc, 0, igc_set_flowcntl, "I", "Flow Control"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "reg_dump", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, adapter, 0, + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, igc_get_regs, "A", "Dump Registers"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "rs_dump", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, adapter, 0, + CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, igc_get_rs, "I", "Dump RS indexes"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dmac", - CTLTYPE_INT | CTLFLAG_RW, adapter, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, igc_sysctl_dmac, "I", "DMA Coalesce"); /* Determine hardware and mac info */ @@ -560,13 +560,13 @@ igc_if_attach_pre(if_ctx_t ctx) * Set the frame limits assuming * standard ethernet sized frames. */ - scctx->isc_max_frame_size = adapter->hw.mac.max_frame_size = + scctx->isc_max_frame_size = sc->hw.mac.max_frame_size = ETHERMTU + ETHER_HDR_LEN + ETHERNET_FCS_SIZE; /* Allocate multicast array memory. */ - adapter->mta = malloc(sizeof(u8) * ETHER_ADDR_LEN * + sc->mta = malloc(sizeof(u8) * ETHER_ADDR_LEN * MAX_NUM_MULTICAST_ADDRESSES, M_DEVBUF, M_NOWAIT); - if (adapter->mta == NULL) { + if (sc->mta == NULL) { device_printf(dev, "Can not allocate multicast setup array\n"); error = ENOMEM; goto err_late; @@ -578,12 +578,12 @@ igc_if_attach_pre(if_ctx_t ctx) " due to SOL/IDER session.\n"); /* Sysctl for setting Energy Efficient Ethernet */ - adapter->hw.dev_spec._i225.eee_disable = igc_eee_setting; + sc->hw.dev_spec._i225.eee_disable = igc_eee_setting; SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "eee_control", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - adapter, 0, igc_sysctl_eee, "I", + sc, 0, igc_sysctl_eee, "I", "Disable Energy Efficient Ethernet"); /* @@ -623,9 +623,9 @@ igc_if_attach_pre(if_ctx_t ctx) } /* Save the EEPROM/NVM versions */ - igc_fw_version(adapter); + igc_fw_version(sc); - igc_print_fw_version(adapter); + igc_print_fw_version(sc); /* * Get Wake-on-Lan and Management info for later use @@ -634,7 +634,7 @@ igc_if_attach_pre(if_ctx_t ctx) /* Enable only WOL MAGIC by default */ scctx->isc_capenable &= ~IFCAP_WOL; - if (adapter->wol != 0) + if (sc->wol != 0) scctx->isc_capenable |= IFCAP_WOL_MAGIC; iflib_set_mac(ctx, hw->mac.addr); @@ -642,10 +642,10 @@ igc_if_attach_pre(if_ctx_t ctx) return (0); err_late: - igc_release_hw_control(adapter); + igc_release_hw_control(sc); err_pci: igc_free_pci_resources(ctx); - free(adapter->mta, M_DEVBUF); + free(sc->mta, M_DEVBUF); return (error); } @@ -653,8 +653,8 @@ err_pci: static int igc_if_attach_post(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_hw *hw = &sc->hw; int error = 0; /* Setup OS specific network interface */ @@ -666,23 +666,23 @@ igc_if_attach_post(if_ctx_t ctx) igc_reset(ctx); /* Initialize statistics */ - igc_update_stats_counters(adapter); + igc_update_stats_counters(sc); hw->mac.get_link_status = true; igc_if_update_admin_status(ctx); - igc_add_hw_stats(adapter); + igc_add_hw_stats(sc); /* the driver can now take control from firmware */ - igc_get_hw_control(adapter); + igc_get_hw_control(sc); INIT_DEBUGOUT("igc_if_attach_post: end"); return (error); err_late: - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_free_pci_resources(ctx); igc_if_queues_free(ctx); - free(adapter->mta, M_DEVBUF); + free(sc->mta, M_DEVBUF); return (error); } @@ -699,13 +699,13 @@ err_late: static int igc_if_detach(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_detach: begin"); - igc_phy_hw_reset(&adapter->hw); + igc_phy_hw_reset(&sc->hw); - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_free_pci_resources(ctx); return (0); @@ -729,9 +729,9 @@ igc_if_shutdown(if_ctx_t ctx) static int igc_if_suspend(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); - igc_release_hw_control(adapter); + igc_release_hw_control(sc); igc_enable_wakeup(ctx); return (0); } @@ -748,7 +748,7 @@ static int igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) { int max_frame_size; - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); if_softc_ctx_t scctx = iflib_get_softc_ctx(ctx); IOCTL_DEBUGOUT("ioctl rcv'd: SIOCSIFMTU (Set Interface MTU)"); @@ -760,7 +760,7 @@ igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) return (EINVAL); } - scctx->isc_max_frame_size = adapter->hw.mac.max_frame_size = + scctx->isc_max_frame_size = sc->hw.mac.max_frame_size = mtu + ETHER_HDR_LEN + ETHER_CRC_LEN; return (0); } @@ -777,8 +777,8 @@ igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu) static void igc_if_init(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - if_softc_ctx_t scctx = adapter->shared; + struct igc_softc *sc = iflib_get_softc(ctx); + if_softc_ctx_t scctx = sc->shared; struct ifnet *ifp = iflib_get_ifp(ctx); struct igc_tx_queue *tx_que; int i; @@ -786,17 +786,17 @@ igc_if_init(if_ctx_t ctx) INIT_DEBUGOUT("igc_if_init: begin"); /* Get the latest mac address, User can use a LAA */ - bcopy(if_getlladdr(ifp), adapter->hw.mac.addr, + bcopy(if_getlladdr(ifp), sc->hw.mac.addr, ETHER_ADDR_LEN); /* Put the address into the Receive Address Array */ - igc_rar_set(&adapter->hw, adapter->hw.mac.addr, 0); + igc_rar_set(&sc->hw, sc->hw.mac.addr, 0); /* Initialize the hardware */ igc_reset(ctx); igc_if_update_admin_status(ctx); - for (i = 0, tx_que = adapter->tx_queues; i < adapter->tx_num_queues; i++, tx_que++) { + for (i = 0, tx_que = sc->tx_queues; i < sc->tx_num_queues; i++, tx_que++) { struct tx_ring *txr = &tx_que->txr; txr->tx_rs_cidx = txr->tx_rs_pidx; @@ -810,7 +810,7 @@ igc_if_init(if_ctx_t ctx) } /* Setup VLAN support, basic and offload if available */ - IGC_WRITE_REG(&adapter->hw, IGC_VET, ETHERTYPE_VLAN); + IGC_WRITE_REG(&sc->hw, IGC_VET, ETHERTYPE_VLAN); /* Prepare transmit descriptors and buffers */ igc_initialize_transmit_unit(ctx); @@ -818,7 +818,7 @@ igc_if_init(if_ctx_t ctx) /* Setup Multicast table */ igc_if_multi_set(ctx); - adapter->rx_mbuf_sz = iflib_get_rx_mbuf_sz(ctx); + sc->rx_mbuf_sz = iflib_get_rx_mbuf_sz(ctx); igc_initialize_receive_unit(ctx); /* Set up VLAN support */ @@ -826,20 +826,20 @@ igc_if_init(if_ctx_t ctx) /* Don't lose promiscuous settings */ igc_if_set_promisc(ctx, if_getflags(ifp)); - igc_clear_hw_cntrs_base_generic(&adapter->hw); + igc_clear_hw_cntrs_base_generic(&sc->hw); - if (adapter->intr_type == IFLIB_INTR_MSIX) /* Set up queue routing */ - igc_configure_queues(adapter); + if (sc->intr_type == IFLIB_INTR_MSIX) /* Set up queue routing */ + igc_configure_queues(sc); /* this clears any pending interrupts */ - IGC_READ_REG(&adapter->hw, IGC_ICR); - IGC_WRITE_REG(&adapter->hw, IGC_ICS, IGC_ICS_LSC); + IGC_READ_REG(&sc->hw, IGC_ICR); + IGC_WRITE_REG(&sc->hw, IGC_ICS, IGC_ICS_LSC); /* the driver can now take control from firmware */ - igc_get_hw_control(adapter); + igc_get_hw_control(sc); /* Set Energy Efficient Ethernet */ - igc_set_eee_i225(&adapter->hw, true, true, true); + igc_set_eee_i225(&sc->hw, true, true, true); } enum eitr_latency_target { @@ -854,7 +854,7 @@ enum eitr_latency_target { * *********************************************************************/ static void -igc_neweitr(struct igc_adapter *sc, struct igc_rx_queue *que, +igc_neweitr(struct igc_softc *sc, struct igc_rx_queue *que, struct tx_ring *txr, struct rx_ring *rxr) { struct igc_hw *hw = &sc->hw; @@ -986,12 +986,12 @@ igc_set_next_eitr: int igc_intr(void *arg) { - struct igc_adapter *adapter = arg; - struct igc_hw *hw = &adapter->hw; - struct igc_rx_queue *que = &adapter->rx_queues[0]; - struct tx_ring *txr = &adapter->tx_queues[0].txr; + struct igc_softc *sc = arg; + struct igc_hw *hw = &sc->hw; + struct igc_rx_queue *que = &sc->rx_queues[0]; + struct tx_ring *txr = &sc->tx_queues[0].txr; struct rx_ring *rxr = &que->rxr; - if_ctx_t ctx = adapter->ctx; + if_ctx_t ctx = sc->ctx; u32 reg_icr; reg_icr = IGC_READ_REG(hw, IGC_ICR); @@ -1020,9 +1020,9 @@ igc_intr(void *arg) igc_handle_link(ctx); if (reg_icr & IGC_ICR_RXO) - adapter->rx_overruns++; + sc->rx_overruns++; - igc_neweitr(adapter, que, txr, rxr); + igc_neweitr(sc, que, txr, rxr); /* Reset state */ txr->tx_bytes = 0; @@ -1036,20 +1036,20 @@ igc_intr(void *arg) static int igc_if_rx_queue_intr_enable(if_ctx_t ctx, uint16_t rxqid) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *rxq = &adapter->rx_queues[rxqid]; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *rxq = &sc->rx_queues[rxqid]; - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, rxq->eims); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, rxq->eims); return (0); } static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_tx_queue *txq = &adapter->tx_queues[txqid]; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_tx_queue *txq = &sc->tx_queues[txqid]; - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, txq->eims); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, txq->eims); return (0); } @@ -1062,7 +1062,7 @@ static int igc_msix_que(void *arg) { struct igc_rx_queue *que = arg; - struct igc_adapter *sc = que->adapter; + struct igc_softc *sc = que->sc; struct tx_ring *txr = &sc->tx_queues[que->msix].txr; struct rx_ring *rxr = &que->rxr; @@ -1087,22 +1087,22 @@ igc_msix_que(void *arg) static int igc_msix_link(void *arg) { - struct igc_adapter *adapter = arg; + struct igc_softc *sc = arg; u32 reg_icr; - ++adapter->link_irq; - MPASS(adapter->hw.back != NULL); - reg_icr = IGC_READ_REG(&adapter->hw, IGC_ICR); + ++sc->link_irq; + MPASS(sc->hw.back != NULL); + reg_icr = IGC_READ_REG(&sc->hw, IGC_ICR); if (reg_icr & IGC_ICR_RXO) - adapter->rx_overruns++; + sc->rx_overruns++; if (reg_icr & (IGC_ICR_RXSEQ | IGC_ICR_LSC)) { - igc_handle_link(adapter->ctx); + igc_handle_link(sc->ctx); } - IGC_WRITE_REG(&adapter->hw, IGC_IMS, IGC_IMS_LSC); - IGC_WRITE_REG(&adapter->hw, IGC_EIMS, adapter->link_mask); + IGC_WRITE_REG(&sc->hw, IGC_IMS, IGC_IMS_LSC); + IGC_WRITE_REG(&sc->hw, IGC_EIMS, sc->link_mask); return (FILTER_HANDLED); } @@ -1111,9 +1111,9 @@ static void igc_handle_link(void *context) { if_ctx_t ctx = context; - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); - adapter->hw.mac.get_link_status = true; + sc->hw.mac.get_link_status = true; iflib_admin_intr_deferred(ctx); } @@ -1128,7 +1128,7 @@ igc_handle_link(void *context) static void igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_media_status: begin"); @@ -1137,13 +1137,13 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) ifmr->ifm_status = IFM_AVALID; ifmr->ifm_active = IFM_ETHER; - if (!adapter->link_active) { + if (!sc->link_active) { return; } ifmr->ifm_status |= IFM_ACTIVE; - switch (adapter->link_speed) { + switch (sc->link_speed) { case 10: ifmr->ifm_active |= IFM_10_T; break; @@ -1158,7 +1158,7 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) break; } - if (adapter->link_duplex == FULL_DUPLEX) + if (sc->link_duplex == FULL_DUPLEX) ifmr->ifm_active |= IFM_FDX; else ifmr->ifm_active |= IFM_HDX; @@ -1175,7 +1175,7 @@ igc_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr) static int igc_if_media_change(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); struct ifmedia *ifm = iflib_get_media(ctx); INIT_DEBUGOUT("igc_if_media_change: begin"); @@ -1183,32 +1183,32 @@ igc_if_media_change(if_ctx_t ctx) if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER) return (EINVAL); - adapter->hw.mac.autoneg = DO_AUTO_NEG; + sc->hw.mac.autoneg = DO_AUTO_NEG; switch (IFM_SUBTYPE(ifm->ifm_media)) { case IFM_AUTO: - adapter->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT; + sc->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT; break; case IFM_2500_T: - adapter->hw.phy.autoneg_advertised = ADVERTISE_2500_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_2500_FULL; break; case IFM_1000_T: - adapter->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL; break; case IFM_100_TX: if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) - adapter->hw.phy.autoneg_advertised = ADVERTISE_100_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_100_FULL; else - adapter->hw.phy.autoneg_advertised = ADVERTISE_100_HALF; + sc->hw.phy.autoneg_advertised = ADVERTISE_100_HALF; break; case IFM_10_T: if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) - adapter->hw.phy.autoneg_advertised = ADVERTISE_10_FULL; + sc->hw.phy.autoneg_advertised = ADVERTISE_10_FULL; else - adapter->hw.phy.autoneg_advertised = ADVERTISE_10_HALF; + sc->hw.phy.autoneg_advertised = ADVERTISE_10_HALF; break; default: - device_printf(adapter->dev, "Unsupported media type\n"); + device_printf(sc->dev, "Unsupported media type\n"); } igc_if_init(ctx); @@ -1219,12 +1219,12 @@ igc_if_media_change(if_ctx_t ctx) static int igc_if_set_promisc(if_ctx_t ctx, int flags) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); struct ifnet *ifp = iflib_get_ifp(ctx); u32 reg_rctl; int mcnt = 0; - reg_rctl = IGC_READ_REG(&adapter->hw, IGC_RCTL); + reg_rctl = IGC_READ_REG(&sc->hw, IGC_RCTL); reg_rctl &= ~(IGC_RCTL_SBP | IGC_RCTL_UPE); if (flags & IFF_ALLMULTI) mcnt = MAX_NUM_MULTICAST_ADDRESSES; @@ -1234,18 +1234,18 @@ igc_if_set_promisc(if_ctx_t ctx, int flags) /* Don't disable if in MAX groups */ if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) reg_rctl &= (~IGC_RCTL_MPE); - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); if (flags & IFF_PROMISC) { reg_rctl |= (IGC_RCTL_UPE | IGC_RCTL_MPE); /* Turn this on if you want to see bad packets */ if (igc_debug_sbp) reg_rctl |= IGC_RCTL_SBP; - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } else if (flags & IFF_ALLMULTI) { reg_rctl |= IGC_RCTL_MPE; reg_rctl &= ~IGC_RCTL_UPE; - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } return (0); } @@ -1273,7 +1273,7 @@ igc_copy_maddr(void *arg, struct sockaddr_dl *sdl, u_int idx) static void igc_if_multi_set(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); struct ifnet *ifp = iflib_get_ifp(ctx); u8 *mta; /* Multicast array memory */ u32 reg_rctl = 0; @@ -1281,12 +1281,12 @@ igc_if_multi_set(if_ctx_t ctx) IOCTL_DEBUGOUT("igc_set_multi: begin"); - mta = adapter->mta; + mta = sc->mta; bzero(mta, sizeof(u8) * ETHER_ADDR_LEN * MAX_NUM_MULTICAST_ADDRESSES); mcnt = if_foreach_llmaddr(ifp, igc_copy_maddr, mta); - reg_rctl = IGC_READ_REG(&adapter->hw, IGC_RCTL); + reg_rctl = IGC_READ_REG(&sc->hw, IGC_RCTL); if (if_getflags(ifp) & IFF_PROMISC) { reg_rctl |= (IGC_RCTL_UPE | IGC_RCTL_MPE); @@ -1301,9 +1301,9 @@ igc_if_multi_set(if_ctx_t ctx) reg_rctl &= ~(IGC_RCTL_UPE | IGC_RCTL_MPE); if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) - igc_update_mc_addr_list(&adapter->hw, mta, mcnt); + igc_update_mc_addr_list(&sc->hw, mta, mcnt); - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + IGC_WRITE_REG(&sc->hw, IGC_RCTL, reg_rctl); } /********************************************************************* @@ -1327,8 +1327,8 @@ igc_if_timer(if_ctx_t ctx, uint16_t qid) static void igc_if_update_admin_status(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_hw *hw = &adapter->hw; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_hw *hw = &sc->hw; device_t dev = iflib_get_dev(ctx); u32 link_check, thstat, ctrl; @@ -1352,36 +1352,36 @@ igc_if_update_admin_status(if_ctx_t ctx) } /* Now check for a transition */ - if (link_check && (adapter->link_active == 0)) { - igc_get_speed_and_duplex(hw, &adapter->link_speed, - &adapter->link_duplex); + if (link_check && (sc->link_active == 0)) { + igc_get_speed_and_duplex(hw, &sc->link_speed, + &sc->link_duplex); if (bootverbose) device_printf(dev, "Link is up %d Mbps %s\n", - adapter->link_speed, - ((adapter->link_duplex == FULL_DUPLEX) ? + sc->link_speed, + ((sc->link_duplex == FULL_DUPLEX) ? "Full Duplex" : "Half Duplex")); - adapter->link_active = 1; + sc->link_active = 1; iflib_link_state_change(ctx, LINK_STATE_UP, - IF_Mbps(adapter->link_speed)); - } else if (!link_check && (adapter->link_active == 1)) { - adapter->link_speed = 0; - adapter->link_duplex = 0; - adapter->link_active = 0; + IF_Mbps(sc->link_speed)); + } else if (!link_check && (sc->link_active == 1)) { + sc->link_speed = 0; + sc->link_duplex = 0; + sc->link_active = 0; iflib_link_state_change(ctx, LINK_STATE_DOWN, 0); } - igc_update_stats_counters(adapter); + igc_update_stats_counters(sc); } static void igc_if_watchdog_reset(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); /* * Just count the event; iflib(4) will already trigger a * sufficient reset of the controller. */ - adapter->watchdog_events++; + sc->watchdog_events++; } /********************************************************************* @@ -1393,12 +1393,12 @@ igc_if_watchdog_reset(if_ctx_t ctx) static void igc_if_stop(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); INIT_DEBUGOUT("igc_if_stop: begin"); - igc_reset_hw(&adapter->hw); - IGC_WRITE_REG(&adapter->hw, IGC_WUC, 0); + igc_reset_hw(&sc->hw); + IGC_WRITE_REG(&sc->hw, IGC_WUC, 0); } /********************************************************************* @@ -1410,22 +1410,22 @@ static void igc_identify_hardware(if_ctx_t ctx) { device_t dev = iflib_get_dev(ctx); - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); /* Make sure our PCI config space has the necessary stuff set */ - adapter->hw.bus.pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2); + sc->hw.bus.pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2); /* Save off the information about this board */ - adapter->hw.vendor_id = pci_get_vendor(dev); - adapter->hw.device_id = pci_get_device(dev); - adapter->hw.revision_id = pci_read_config(dev, PCIR_REVID, 1); - adapter->hw.subsystem_vendor_id = + sc->hw.vendor_id = pci_get_vendor(dev); + sc->hw.device_id = pci_get_device(dev); + sc->hw.revision_id = pci_read_config(dev, PCIR_REVID, 1); + sc->hw.subsystem_vendor_id = pci_read_config(dev, PCIR_SUBVEND_0, 2); - adapter->hw.subsystem_device_id = + sc->hw.subsystem_device_id = pci_read_config(dev, PCIR_SUBDEV_0, 2); /* Do Shared Code Init and Setup */ - if (igc_set_mac_type(&adapter->hw)) { + if (igc_set_mac_type(&sc->hw)) { device_printf(dev, "Setup init failure\n"); return; } @@ -1434,23 +1434,23 @@ igc_identify_hardware(if_ctx_t ctx) static int igc_allocate_pci_resources(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); + struct igc_softc *sc = iflib_get_softc(ctx); device_t dev = iflib_get_dev(ctx); int rid; rid = PCIR_BAR(0); - adapter->memory = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + sc->memory = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); - if (adapter->memory == NULL) { + if (sc->memory == NULL) { device_printf(dev, "Unable to allocate bus resource: memory\n"); return (ENXIO); } - adapter->osdep.mem_bus_space_tag = rman_get_bustag(adapter->memory); - adapter->osdep.mem_bus_space_handle = - rman_get_bushandle(adapter->memory); - adapter->hw.hw_addr = (u8 *)&adapter->osdep.mem_bus_space_handle; + sc->osdep.mem_bus_space_tag = rman_get_bustag(sc->memory); + sc->osdep.mem_bus_space_handle = + rman_get_bushandle(sc->memory); + sc->hw.hw_addr = (u8 *)&sc->osdep.mem_bus_space_handle; - adapter->hw.back = &adapter->osdep; + sc->hw.back = &sc->osdep; return (0); } @@ -1463,20 +1463,20 @@ igc_allocate_pci_resources(if_ctx_t ctx) static int igc_if_msix_intr_assign(if_ctx_t ctx, int msix) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *rx_que = adapter->rx_queues; - struct igc_tx_queue *tx_que = adapter->tx_queues; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *rx_que = sc->rx_queues; + struct igc_tx_queue *tx_que = sc->tx_queues; int error, rid, i, vector = 0, rx_vectors; char buf[16]; /* First set up ring resources */ - for (i = 0; i < adapter->rx_num_queues; i++, rx_que++, vector++) { + for (i = 0; i < sc->rx_num_queues; i++, rx_que++, vector++) { rid = vector + 1; snprintf(buf, sizeof(buf), "rxq%d", i); error = iflib_irq_alloc_generic(ctx, &rx_que->que_irq, rid, IFLIB_INTR_RXTX, igc_msix_que, rx_que, rx_que->me, buf); if (error) { device_printf(iflib_get_dev(ctx), "Failed to allocate que int %d err: %d", i, error); - adapter->rx_num_queues = i + 1; + sc->rx_num_queues = i + 1; goto fail; } @@ -1493,14 +1493,14 @@ igc_if_msix_intr_assign(if_ctx_t ctx, int msix) rx_vectors = vector; vector = 0; - for (i = 0; i < adapter->tx_num_queues; i++, tx_que++, vector++) { + for (i = 0; i < sc->tx_num_queues; i++, tx_que++, vector++) { snprintf(buf, sizeof(buf), "txq%d", i); - tx_que = &adapter->tx_queues[i]; + tx_que = &sc->tx_queues[i]; iflib_softirq_alloc_generic(ctx, - &adapter->rx_queues[i % adapter->rx_num_queues].que_irq, + &sc->rx_queues[i % sc->rx_num_queues].que_irq, IFLIB_INTR_TX, tx_que, tx_que->me, buf); - tx_que->msix = (vector % adapter->rx_num_queues); + tx_que->msix = (vector % sc->rx_num_queues); /* * Set the bit to enable interrupt @@ -1513,26 +1513,26 @@ igc_if_msix_intr_assign(if_ctx_t ctx, int msix) /* Link interrupt */ rid = rx_vectors + 1; - error = iflib_irq_alloc_generic(ctx, &adapter->irq, rid, IFLIB_INTR_ADMIN, igc_msix_link, adapter, 0, "aq"); + error = iflib_irq_alloc_generic(ctx, &sc->irq, rid, IFLIB_INTR_ADMIN, igc_msix_link, sc, 0, "aq"); if (error) { device_printf(iflib_get_dev(ctx), "Failed to register admin handler"); goto fail; } - adapter->linkvec = rx_vectors; + sc->linkvec = rx_vectors; return (0); fail: - iflib_irq_free(ctx, &adapter->irq); - rx_que = adapter->rx_queues; - for (int i = 0; i < adapter->rx_num_queues; i++, rx_que++) + iflib_irq_free(ctx, &sc->irq); + rx_que = sc->rx_queues; + for (int i = 0; i < sc->rx_num_queues; i++, rx_que++) iflib_irq_free(ctx, &rx_que->que_irq); return (error); } static void -igc_configure_queues(struct igc_adapter *adapter) +igc_configure_queues(struct igc_softc *sc) { - struct igc_hw *hw = &adapter->hw; + struct igc_hw *hw = &sc->hw; struct igc_rx_queue *rx_que; struct igc_tx_queue *tx_que; u32 ivar = 0, newitr = 0; @@ -1544,10 +1544,10 @@ igc_configure_queues(struct igc_adapter *adapter) /* Turn on MSI-X */ /* RX entries */ - for (int i = 0; i < adapter->rx_num_queues; i++) { + for (int i = 0; i < sc->rx_num_queues; i++) { u32 index = i >> 1; ivar = IGC_READ_REG_ARRAY(hw, IGC_IVAR0, index); - rx_que = &adapter->rx_queues[i]; + rx_que = &sc->rx_queues[i]; if (i & 1) { ivar &= 0xFF00FFFF; ivar |= (rx_que->msix | IGC_IVAR_VALID) << 16; @@ -1558,10 +1558,10 @@ igc_configure_queues(struct igc_adapter *adapter) IGC_WRITE_REG_ARRAY(hw, IGC_IVAR0, index, ivar); } /* TX entries */ - for (int i = 0; i < adapter->tx_num_queues; i++) { + for (int i = 0; i < sc->tx_num_queues; i++) { u32 index = i >> 1; ivar = IGC_READ_REG_ARRAY(hw, IGC_IVAR0, index); - tx_que = &adapter->tx_queues[i]; + tx_que = &sc->tx_queues[i]; if (i & 1) { ivar &= 0x00FFFFFF; ivar |= (tx_que->msix | IGC_IVAR_VALID) << 24; @@ -1570,12 +1570,12 @@ igc_configure_queues(struct igc_adapter *adapter) ivar |= (tx_que->msix | IGC_IVAR_VALID) << 8; } IGC_WRITE_REG_ARRAY(hw, IGC_IVAR0, index, ivar); - adapter->que_mask |= tx_que->eims; + sc->que_mask |= tx_que->eims; } /* And for the link interrupt */ - ivar = (adapter->linkvec | IGC_IVAR_VALID) << 8; - adapter->link_mask = 1 << adapter->linkvec; + ivar = (sc->linkvec | IGC_IVAR_VALID) << 8; + sc->link_mask = 1 << sc->linkvec; IGC_WRITE_REG(hw, IGC_IVAR_MISC, ivar); /* Set the starting interrupt rate */ @@ -1584,8 +1584,8 @@ igc_configure_queues(struct igc_adapter *adapter) newitr |= IGC_EITR_CNT_IGNR; - for (int i = 0; i < adapter->rx_num_queues; i++) { - rx_que = &adapter->rx_queues[i]; + for (int i = 0; i < sc->rx_num_queues; i++) { + rx_que = &sc->rx_queues[i]; IGC_WRITE_REG(hw, IGC_EITR(rx_que->msix), newitr); } @@ -1595,34 +1595,34 @@ igc_configure_queues(struct igc_adapter *adapter) static void igc_free_pci_resources(if_ctx_t ctx) { - struct igc_adapter *adapter = iflib_get_softc(ctx); - struct igc_rx_queue *que = adapter->rx_queues; + struct igc_softc *sc = iflib_get_softc(ctx); + struct igc_rx_queue *que = sc->rx_queues; device_t dev = iflib_get_dev(ctx); *** 1509 LINES SKIPPED *** From nobody Mon Oct 21 15:24:55 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyb5hKXz5ZPlQ; Mon, 21 Oct 2024 15:24:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyb2tv5z4plk; Mon, 21 Oct 2024 15:24:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=csrA3Lae3161DlkyIrOTpGPFd0LCLeE8l4r/OdIhWFs=; b=OprfajmJf7g/JLNP8Tc2Je6ZL9jYXZoi86dQkDMqoQYx5294KCFpLCOenrU3N+BdbAvYR5 Ng2SfYpdmJBwSHs10+L7m4ZNamt/bRZZzlKLRYUA55k+WxEUnD9M6rOxdSuBJqNqrGtsx8 Z4i0EnzOdX94wbIanu2+qEnvamB7h0kQ28vXBolJkYZmJGgHvHm3TDuLZgB96A0tYdOlgr 0xEJ3mrCF6eTwRNDSL/zIjjQOIP/I+CcLzG9h2TbhytAyUXfu9R5lKFA+qJzZWyG2QHPUn sWzpWRZqtw1IuA4zEXoF5httF58ITP/m6GQrjtRhXNuLCiIq9goO6Uuw03T5qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=csrA3Lae3161DlkyIrOTpGPFd0LCLeE8l4r/OdIhWFs=; b=owprTwxEqSKsDQULnhMf8AEvY9+6hY4qpxmIzoDqFsWZ41o3ZNDfjzI/BBKuixDcGBPs/E 0vx177IJchLKfi2V8ELM4QVmrQTcOOgw1nbguXUssNZzBjEZsRNvdaLTxNDXvAqdl3NvnI NJAEMSmW8hSwNP0kNvYpdLYpnUON7QZBtnrZ8itsfK/f1aAq6zsbY6jxyqT5lI4LWBFnUT HLpQZjOp4F4kk/ud5nC3QfbBDVqTZAhR/+h1juaVG6z5ZtsA7bxmDI+X4CfYrPaYFr+ktI bnxgj2SblEcfabkEgrffda/+TTyUweFEmmMRftCk/dWw1SEIiFoik5WwAH5QqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524295; a=rsa-sha256; cv=none; b=oHYeBPxThoo+vTCvBGV8ihLZO1Gvx+IS9ut8wDpEHBdchJyNTIGIV/DiDkYOsXoz5In+s6 4diVHiaNpbsDKoSyIRJCPiaA6IsD/5f6BrShZ7P9SQ1+ZqyjyeGmZ3Lc2IPns0k2yMWOVo vtnuPx0xJ8HZO2aJOsP12Q/Ps4y35a8cLOnRkpwXmI/1zwUyBdkZdeDic/XYMPRbdV3pfx vbFrfDBNWnoNTAA2ngqxUQ+7RdtUgh19opwwe2Fqcmz3WefTDOttTOGqLUCKwQ43LIlZAi jJVbTkS8tsT/VK+6+s+LWTJ3pGMq54aRJTpHo3ErmjvD7DDb0wwyWEvIMtT5gQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyb20f1zbVQ; Mon, 21 Oct 2024 15:24: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 49LFOt6T084082; Mon, 21 Oct 2024 15:24:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOtXx084079; Mon, 21 Oct 2024 15:24:55 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:55 GMT Message-Id: <202410211524.49LFOtXx084079@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: f04e3505ae91 - stable/13 - igc: Function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f04e3505ae915a71a0be4e8bf670a3e8b294c97d Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=f04e3505ae915a71a0be4e8bf670a3e8b294c97d commit f04e3505ae915a71a0be4e8bf670a3e8b294c97d Author: Kevin Bowling AuthorDate: 2024-10-14 13:49:19 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:21:41 +0000 igc: Function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 1b0e41ddffbf0ac84c88019df84dfd50ce9f7788) --- sys/dev/igc/if_igc.c | 86 ++++++++++++++++++++++++++-------------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index 8d72eb9d2447..1daec6e09694 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -72,49 +72,49 @@ static const pci_vendor_info_t igc_vendor_info_array[] = /********************************************************************* * Function prototypes *********************************************************************/ -static void *igc_register(device_t dev); -static int igc_if_attach_pre(if_ctx_t ctx); -static int igc_if_attach_post(if_ctx_t ctx); -static int igc_if_detach(if_ctx_t ctx); -static int igc_if_shutdown(if_ctx_t ctx); -static int igc_if_suspend(if_ctx_t ctx); -static int igc_if_resume(if_ctx_t ctx); - -static int igc_if_tx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs, uint64_t *paddrs, int ntxqs, int ntxqsets); -static int igc_if_rx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs, uint64_t *paddrs, int nrxqs, int nrxqsets); -static void igc_if_queues_free(if_ctx_t ctx); +static void *igc_register(device_t); +static int igc_if_attach_pre(if_ctx_t); +static int igc_if_attach_post(if_ctx_t); +static int igc_if_detach(if_ctx_t); +static int igc_if_shutdown(if_ctx_t); +static int igc_if_suspend(if_ctx_t); +static int igc_if_resume(if_ctx_t); + +static int igc_if_tx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static int igc_if_rx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static void igc_if_queues_free(if_ctx_t); static uint64_t igc_if_get_counter(if_ctx_t, ift_counter); -static void igc_if_init(if_ctx_t ctx); -static void igc_if_stop(if_ctx_t ctx); +static void igc_if_init(if_ctx_t); +static void igc_if_stop(if_ctx_t); static void igc_if_media_status(if_ctx_t, struct ifmediareq *); -static int igc_if_media_change(if_ctx_t ctx); -static int igc_if_mtu_set(if_ctx_t ctx, uint32_t mtu); -static void igc_if_timer(if_ctx_t ctx, uint16_t qid); -static void igc_if_watchdog_reset(if_ctx_t ctx); -static bool igc_if_needs_restart(if_ctx_t ctx, enum iflib_restart_event event); - -static void igc_identify_hardware(if_ctx_t ctx); -static int igc_allocate_pci_resources(if_ctx_t ctx); -static void igc_free_pci_resources(if_ctx_t ctx); -static void igc_reset(if_ctx_t ctx); -static int igc_setup_interface(if_ctx_t ctx); -static int igc_setup_msix(if_ctx_t ctx); - -static void igc_initialize_transmit_unit(if_ctx_t ctx); -static void igc_initialize_receive_unit(if_ctx_t ctx); - -static void igc_if_intr_enable(if_ctx_t ctx); -static void igc_if_intr_disable(if_ctx_t ctx); -static int igc_if_rx_queue_intr_enable(if_ctx_t ctx, uint16_t rxqid); -static int igc_if_tx_queue_intr_enable(if_ctx_t ctx, uint16_t txqid); -static void igc_if_multi_set(if_ctx_t ctx); -static void igc_if_update_admin_status(if_ctx_t ctx); -static void igc_if_debug(if_ctx_t ctx); +static int igc_if_media_change(if_ctx_t); +static int igc_if_mtu_set(if_ctx_t, uint32_t); +static void igc_if_timer(if_ctx_t, uint16_t); +static void igc_if_watchdog_reset(if_ctx_t); +static bool igc_if_needs_restart(if_ctx_t, enum iflib_restart_event); + +static void igc_identify_hardware(if_ctx_t); +static int igc_allocate_pci_resources(if_ctx_t); +static void igc_free_pci_resources(if_ctx_t); +static void igc_reset(if_ctx_t); +static int igc_setup_interface(if_ctx_t); +static int igc_setup_msix(if_ctx_t); + +static void igc_initialize_transmit_unit(if_ctx_t); +static void igc_initialize_receive_unit(if_ctx_t); + +static void igc_if_intr_enable(if_ctx_t); +static void igc_if_intr_disable(if_ctx_t); +static int igc_if_rx_queue_intr_enable(if_ctx_t, uint16_t); +static int igc_if_tx_queue_intr_enable(if_ctx_t, uint16_t); +static void igc_if_multi_set(if_ctx_t); +static void igc_if_update_admin_status(if_ctx_t); +static void igc_if_debug(if_ctx_t); static void igc_update_stats_counters(struct igc_softc *); -static void igc_add_hw_stats(struct igc_softc *sc); -static int igc_if_set_promisc(if_ctx_t ctx, int flags); -static void igc_setup_vlan_hw_support(if_ctx_t ctx); +static void igc_add_hw_stats(struct igc_softc *); +static int igc_if_set_promisc(if_ctx_t, int); +static void igc_setup_vlan_hw_support(if_ctx_t); static void igc_fw_version(struct igc_softc *); static void igc_sbuf_fw_version(struct igc_fw_version *, struct sbuf *); static void igc_print_fw_version(struct igc_softc *); @@ -130,10 +130,10 @@ static void igc_neweitr(struct igc_softc *, struct igc_rx_queue *, /* Management and WOL Support */ static void igc_get_hw_control(struct igc_softc *); static void igc_release_hw_control(struct igc_softc *); -static void igc_get_wakeup(if_ctx_t ctx); -static void igc_enable_wakeup(if_ctx_t ctx); +static void igc_get_wakeup(if_ctx_t); +static void igc_enable_wakeup(if_ctx_t); -int igc_intr(void *arg); +int igc_intr(void *); /* MSI-X handlers */ static int igc_if_msix_intr_assign(if_ctx_t, int); @@ -146,7 +146,7 @@ static int igc_sysctl_eee(SYSCTL_HANDLER_ARGS); static int igc_get_regs(SYSCTL_HANDLER_ARGS); -static void igc_configure_queues(struct igc_softc *sc); +static void igc_configure_queues(struct igc_softc *); /********************************************************************* From nobody Mon Oct 21 15:24:56 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyd2SDfz5ZPqH; Mon, 21 Oct 2024 15:24:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyc3GSGz4pns; Mon, 21 Oct 2024 15:24:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524296; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S6FSf7IOMCEeSyrwoPFXWNSN+D8MZe31maW6Zl9/Zh8=; b=ur0JRFbr66A5wz0PK1tfkTpEeq08btOwx4HZzl2pPf6psnpRCs1gC9RwPFo3dqbTD6CXfY fnxvHF155zE7nwSM6OkV4/lWtmFMUmZ4a9IUdNq5EHzPECQJsZo6qcijVV9z4n2ukAuJI2 tfBYINN643hSZjJHYapsP20qa0tdH6jUPehJDE8k+TJ9KjNxyMcVeQ707YtP491ZMrA8mB C28LpJscg/sWpkZhJMLODo+TsfQq7nNP3Wo6B+woLMCwuICt3ZFTLDXisGbbtI5JfjSKTv F21x1XDNWmNvIYx7ZGTWyxMAIfasHX70bp1Ix7l5djY5E+qkAcVdU9vM0/gfZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524296; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S6FSf7IOMCEeSyrwoPFXWNSN+D8MZe31maW6Zl9/Zh8=; b=JxK3qh2lOU4B9O39CXAkLg4kaJrWXneGlvVBJMqP1GUE/DQJDSc8chcu4HAO5SINd/ZtmF msvhFrJ1G0klUdA0SsJ6iqnuZIwVwGub5S5HUuptOi6v22kdwyGxi/JT32UrbPShbxerxO DWQ0wG1ZsWwEJOTNtvT/oGgtMRc2MDTMLDyESgozENN9KKMhfJpinuUB6RCWK36pEnu763 vvAJP966DrPE025pmZ3pQ+0ygsIzr3Sl6O9939TmG4x6/S1c8GDtMyW4U8KlHATVLHg6nw xtgKJFN9R56CcMMDflojvHP9kGuN2J2bQV6vCOskJ5mV9nZbm/h0HorsG+nTBw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524296; a=rsa-sha256; cv=none; b=YgevInTIoIGjfoW+a+sclJCGfTfjwbNc1NGnw8iijsuY7wf61HRphLkl3bg+MjzC79P6cN Khe7gH0bXllcp8p8yKdYZd5ZEpc95KZJvFau59NsP6Y+hr5GVl9D8ZrmC7quIeiWW9Cd8p 09NAyzfmctgLYDRycvhibV3v49DHqRjoqdRxxbaxeRBPfxnQtaYrLT5RiN20cB/Bm66iQa 2iTT3DXqHQ3Cnm7n3BiqJzqA9ouCQgNaAa123v7Yj6EdQC/5SzSoRQx4Wp2IPVGNqj4ho2 66zLUcnfTQxsIoMmsk+WUX1PjrGFt49kPenuoJj2P88k1QL1T9I21o/AYAJU9A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyc2Z48zbSV; Mon, 21 Oct 2024 15:24: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 49LFOuSg084127; Mon, 21 Oct 2024 15:24:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOu8L084124; Mon, 21 Oct 2024 15:24:56 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:56 GMT Message-Id: <202410211524.49LFOu8L084124@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 2b45f8eb33d1 - stable/13 - e1000: txrx function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2b45f8eb33d14584015fb31878f504ca4a6e28a8 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2b45f8eb33d14584015fb31878f504ca4a6e28a8 commit 2b45f8eb33d14584015fb31878f504ca4a6e28a8 Author: Kevin Bowling AuthorDate: 2024-10-14 16:07:29 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:21:54 +0000 e1000: txrx function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 9dc452b983f042aa9d2a2562517d44c1928ff42a) --- sys/dev/e1000/em_txrx.c | 39 ++++++++++++++++++--------------------- sys/dev/e1000/igb_txrx.c | 30 ++++++++++++++---------------- 2 files changed, 32 insertions(+), 37 deletions(-) diff --git a/sys/dev/e1000/em_txrx.c b/sys/dev/e1000/em_txrx.c index 6e8fff07cd82..65ffcdfd67f6 100644 --- a/sys/dev/e1000/em_txrx.c +++ b/sys/dev/e1000/em_txrx.c @@ -43,29 +43,26 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int em_tso_setup(struct e1000_softc *sc, if_pkt_info_t pi, - uint32_t *txd_upper, uint32_t *txd_lower); -static int em_transmit_checksum_setup(struct e1000_softc *sc, - if_pkt_info_t pi, uint32_t *txd_upper, uint32_t *txd_lower); -static int em_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void em_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int em_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); -static void em_isc_rxd_refill(void *arg, if_rxd_update_t iru); -static void em_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int em_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); -static int em_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); - -static void lem_isc_rxd_refill(void *arg, if_rxd_update_t iru); - -static int lem_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); -static int lem_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); +static int em_tso_setup(struct e1000_softc *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int em_transmit_checksum_setup(struct e1000_softc *, if_pkt_info_t, + uint32_t *, uint32_t *); +static int em_isc_txd_encap(void *, if_pkt_info_t); +static void em_isc_txd_flush(void *, uint16_t, qidx_t); +static int em_isc_txd_credits_update(void *, uint16_t, bool); +static void em_isc_rxd_refill(void *, if_rxd_update_t); +static void em_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int em_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); +static int em_isc_rxd_pkt_get(void *, if_rxd_info_t); + +static void lem_isc_rxd_refill(void *, if_rxd_update_t); + +static int lem_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); +static int lem_isc_rxd_pkt_get(void *, if_rxd_info_t); static void em_receive_checksum(uint16_t, uint8_t, if_rxd_info_t); -static int em_determine_rsstype(uint32_t pkt_info); -extern int em_intr(void *arg); +static int em_determine_rsstype(uint32_t); +extern int em_intr(void *); struct if_txrx em_txrx = { .ift_txd_encap = em_isc_txd_encap, diff --git a/sys/dev/e1000/igb_txrx.c b/sys/dev/e1000/igb_txrx.c index 82cbb37ce4cd..8b663d7e6d3e 100644 --- a/sys/dev/e1000/igb_txrx.c +++ b/sys/dev/e1000/igb_txrx.c @@ -42,29 +42,27 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int igb_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void igb_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int igb_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); +static int igb_isc_txd_encap(void *, if_pkt_info_t); +static void igb_isc_txd_flush(void *, uint16_t, qidx_t); +static int igb_isc_txd_credits_update(void *, uint16_t, bool); -static void igb_isc_rxd_refill(void *arg, if_rxd_update_t iru); +static void igb_isc_rxd_refill(void *, if_rxd_update_t); -static void igb_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int igb_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); +static void igb_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int igb_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); static int igb_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); -static int igb_tx_ctx_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); -static int igb_tso_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); +static int igb_tx_ctx_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int igb_tso_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); -static void igb_rx_checksum(uint32_t staterr, if_rxd_info_t ri, uint32_t ptype); -static int igb_determine_rsstype(uint16_t pkt_info); +static void igb_rx_checksum(uint32_t, if_rxd_info_t, uint32_t); +static int igb_determine_rsstype(uint16_t); -extern void igb_if_enable_intr(if_ctx_t ctx); -extern int em_intr(void *arg); +extern void igb_if_enable_intr(if_ctx_t); +extern int em_intr(void *); struct if_txrx igb_txrx = { .ift_txd_encap = igb_isc_txd_encap, From nobody Mon Oct 21 15:24:57 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXJyh3Ypfz5ZPqM; Mon, 21 Oct 2024 15:25:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXJyd4YfBz4q2H; Mon, 21 Oct 2024 15:24:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3tqDw2Hz/gZrdsZL8fu6c0bHHVNYeVXvd9sy4cFuFGM=; b=G+taSZ14sJysm7oKk1HBadGSXmh2Nms0Y9QknsSxMw60j/fcYsvL6FLX2khsyUdnqo0aXW YHEshgjngTViGlOCOWLZ/17FFu8JsoBthHnWniGFRXSxCUhTcOMaU1kAwonG0cv9MhdV5z iI0xkQt1vhfeM9W7UFQjcJawxqOc1ZKpehUVcED3JIVkxySvIWaWfKPEsmMGbTKIQregJ4 aoBJJSC8EUSKfYTP4BYZJlO214a1zAhR8ArjAWa5d0fMRm4johJDAVWfIDTrgF8IO83fs0 XFXVsEtCTLDAvLMSNzWk0TJ5xx1W0VZ7MJFGvzq8j0EcGF5/qmN2YfIxAaCoEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729524297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3tqDw2Hz/gZrdsZL8fu6c0bHHVNYeVXvd9sy4cFuFGM=; b=gE+dNTryhbanTdQm/3nU4rto950BrxHwGNdfPgIH5gJIfpuLTJVOzRp7vCzAgL2x6dGCG1 GD8vCtuueKgXGYxtP0zIu97qiTE055rsgXJuAFVnyi6ReU7kOwJXrNDEFX5jWImzc9C18M RqiWVtqXFH60zI2lH47nYIsGObWw/qiqVPiZwmEftc1YuW7GgB8pcJcJdTffMBl4L3lfnb GsnxKhGFh/sW4jq7Y3MoqDk1tI/KufpjrtO3Btyys6oXGypux2PJsvrIdMsysC7oWc4Vb4 rEtmxDBY/9AN3XxXf3/qUSme8lVOWYT3LaP7RhZzR/R42Dbe2MtsshyEcNCt9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729524297; a=rsa-sha256; cv=none; b=rZ8OxXpWh5KTG1psfL2XsPejVxUjkjZXdZbg8EmUgTRMOjvOA6zxuBgS60WlYPxZW+lSMX Pjv16LaOFuTJqK61ecoKfFmaVw3eCHK0ma2aJhwaDfTBYj0OtkZeoySH2I4lsbZQpLPG/U QVCxfJ6TAS8xtbDltNzbUFEIW70KmCgNxCbIbmK1ptS4bpL4Ifge0w0/3GeDLnd86gpk3E sOzOxwx1N1NQQfEW8Lqr7M4A6/UcOSJhWNRwx/lEaKgoXYm4rwZWls5g/sC+wtcSVWdocb cshOJKusUEOod6F3uvxKaUl/iEK51GPOaGnK60Dfx8JFGkysuTmFlNFk1yulMw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXJyd3TdJzbSW; Mon, 21 Oct 2024 15:24: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 49LFOvtW084169; Mon, 21 Oct 2024 15:24:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFOvp7084166; Mon, 21 Oct 2024 15:24:57 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:24:57 GMT Message-Id: <202410211524.49LFOvp7084166@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: fabc189f2adf - stable/13 - igc: txrx function prototype cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fabc189f2adfe339e713fbb0ee6847baa9f73b64 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=fabc189f2adfe339e713fbb0ee6847baa9f73b64 commit fabc189f2adfe339e713fbb0ee6847baa9f73b64 Author: Kevin Bowling AuthorDate: 2024-10-14 16:10:10 +0000 Commit: Kevin Bowling CommitDate: 2024-10-21 15:22:08 +0000 igc: txrx function prototype cleanup Drop variable names of function prototypes since the file is mixed in listing them or not and they fall out of sync. Sponsored by: BBOX.io (cherry picked from commit 7763b194d8de6fe8034f754064449a7510ca16b9) --- sys/dev/igc/igc_txrx.c | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/sys/dev/igc/igc_txrx.c b/sys/dev/igc/igc_txrx.c index a95b34702e24..59f4725388ee 100644 --- a/sys/dev/igc/igc_txrx.c +++ b/sys/dev/igc/igc_txrx.c @@ -44,29 +44,27 @@ /********************************************************************* * Local Function prototypes *********************************************************************/ -static int igc_isc_txd_encap(void *arg, if_pkt_info_t pi); -static void igc_isc_txd_flush(void *arg, uint16_t txqid, qidx_t pidx); -static int igc_isc_txd_credits_update(void *arg, uint16_t txqid, bool clear); +static int igc_isc_txd_encap(void *, if_pkt_info_t); +static void igc_isc_txd_flush(void *, uint16_t, qidx_t); +static int igc_isc_txd_credits_update(void *, uint16_t, bool); -static void igc_isc_rxd_refill(void *arg, if_rxd_update_t iru); +static void igc_isc_rxd_refill(void *, if_rxd_update_t); -static void igc_isc_rxd_flush(void *arg, uint16_t rxqid, uint8_t flid __unused, - qidx_t pidx); -static int igc_isc_rxd_available(void *arg, uint16_t rxqid, qidx_t idx, - qidx_t budget); +static void igc_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int igc_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); -static int igc_isc_rxd_pkt_get(void *arg, if_rxd_info_t ri); +static int igc_isc_rxd_pkt_get(void *, if_rxd_info_t); -static int igc_tx_ctx_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); -static int igc_tso_setup(struct tx_ring *txr, if_pkt_info_t pi, - uint32_t *cmd_type_len, uint32_t *olinfo_status); +static int igc_tx_ctx_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); +static int igc_tso_setup(struct tx_ring *, if_pkt_info_t, uint32_t *, + uint32_t *); -static void igc_rx_checksum(uint32_t staterr, if_rxd_info_t ri, uint32_t ptype); -static int igc_determine_rsstype(uint16_t pkt_info); +static void igc_rx_checksum(uint32_t, if_rxd_info_t, uint32_t); +static int igc_determine_rsstype(uint16_t); -extern void igc_if_enable_intr(if_ctx_t ctx); -extern int igc_intr(void *arg); +extern void igc_if_enable_intr(if_ctx_t); +extern int igc_intr(void *); struct if_txrx igc_txrx = { .ift_txd_encap = igc_isc_txd_encap, From nobody Mon Oct 21 15:47:06 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXKSC0wMqz5ZRXh; Mon, 21 Oct 2024 15:47:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXKSC0MHDz4tZV; Mon, 21 Oct 2024 15:47:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YwC8n1jBgBPV7A1/azSX4ydW2jYMpfv8mwbjdbnzTi4=; b=r5so6X5fBfErbzV8HV05kly6F+Oke9uP6MPd42vbPmvjP0ApLSHvW9wgKmyD0cB+3Y8pOg kALTEBrNAjqXslXfI30sNt0/e6eFcHHop7wCNjqT8dwV62MFk+V0ytWdj3g0nGGyfHurUh PEUZbtJUBgckhMsjMYcbUSV6eK9noF9cOwocGhDA9aedgS5ga2YpbN5vO+Clip4i4hJ7mt gRmIfm9orReLX3rBHSrPbKm1RNCcTASESzDroTqzg5bQcLEuSpMg/ZlKNOP0PKTPV8hBYI CRRtVnnbzpEkA4LXBKZPDTGEXZmbbCHWRiheic54trNaraChwqqkdHAh1PSQ9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YwC8n1jBgBPV7A1/azSX4ydW2jYMpfv8mwbjdbnzTi4=; b=h/MwoWbz/ZXZQeGLf4asKLcMcHWOUCUgwKXfSi8sNxogkolJ2ynjdhl79/PrIbOS0u8SNJ acoBX70ehCw0SHVl2K3yFrpAjgdL/v4L5l/JLYMTI5aRAxmSzQSALRthQnyltFJalRv0Us bODDKAqkYT6GTBJ/4tbqdL0ZMSjRqCqmAhT4ZTCAk8XAOihm1fnJTmRd8RpyJiY5R8AyaR B9i+vSTlAJwuWaLonIIYW25Je3Xqg1vak0MQjhKNl749KbK/UyysLbgBABXN1VWNT5XSoT Pac3JG4AaC/y/ZuEazmKoAGIl+MgcAXKG0czs3WGv7Lh0a/9JfUShN+YublTsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729525627; a=rsa-sha256; cv=none; b=xL4zCdRPrtjOJuir+DL013IqcHEExFldW3Mpzodjp0VjWdAlOFCsJ7jHRfkgbS2ccElCOW OsmNl3Y8E+yvERQDOe8iasPHjGngrrjU5qLVL3dE4QqLBNqmK1rnSKSHX8EnsQvUrxzLXT nZVWkql27HfZb/cf2rrRprOWQYcn/T+GFDcmdBbBMg0eB+7O0Qt10/7Iw0/mflnLUVnpRt SRqx7fmp8XTgLnKpoWJi375NISwgxcMQvw12EB38t2Y0HQtn9cRcP8ArcDZ97qWtM75dZL grjjTC92GPmZagoId1VQ+210bXUfk11u3wjgPPops5EwYv7CiJcbwoowH8bBxg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXKSB74rkzbvq; Mon, 21 Oct 2024 15:47: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 49LFl6vb021815; Mon, 21 Oct 2024 15:47:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFl69f021812; Mon, 21 Oct 2024 15:47:06 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:47:06 GMT Message-Id: <202410211547.49LFl69f021812@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 85f889aa9cda - stable/14 - freebsd-update(8): Explain conflicts in /etc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 85f889aa9cdad831a68b42050d1adb47d4eb960d Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=85f889aa9cdad831a68b42050d1adb47d4eb960d commit 85f889aa9cdad831a68b42050d1adb47d4eb960d Author: Graham Perrin AuthorDate: 2023-08-19 14:52:18 +0000 Commit: Ed Maste CommitDate: 2024-10-21 15:46:41 +0000 freebsd-update(8): Explain conflicts in /etc Unlike etcupdate(8), freebsd-update only prints the files with conflicts. It doesn't merge. PR: 204549 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/826 (cherry picked from commit a8c1ffca7a594733a91c1513d0185be174d1115f) --- usr.sbin/freebsd-update/freebsd-update.8 | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 0d50ac8822de..1960b0ee95fe 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -264,3 +264,12 @@ required. .Xr nextboot 8 .Sh AUTHORS .An Colin Percival Aq Mt cperciva@FreeBSD.org +.Sh BUGS +In patch level situations – for example, 13.2-RELEASE-p1 up to 13.2-RELEASE-p2: if any previous modification to a file in +.Pa /etc/ +will conflict with an available update, then +.Nm +will make no attempt to merge. +Instead: +.Nm +will print a list of affected locally-modified files. From nobody Mon Oct 21 15:47:08 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXKSD2fx4z5ZR12; Mon, 21 Oct 2024 15:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXKSD1Km9z4tWy; Mon, 21 Oct 2024 15:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjalPciVCQZ/fWj5KSeRgCHBi7zTLso9ZisLZBNvA90=; b=HBrWhA54GThFlPJPtdITWvCBauJTRu2AxibyPK443onvZYjhkIYdomXpTCO7tHA9bgHEvD lZAJGH3b0acgMbvSK+aN2BsffYu6Waj2lP8W17vpiPdNrsCBttkK8PVb4JKJCG6U0/tMjZ YmiqAIBH3FYGq6Bpli9SqRx/UnWtHUXxhgFLhzeslIRQkXLh045Fuo/YSMX407CZGS68P/ LVoawWGErqZNHTeOrSK/pSwK5BZa+tgydoaz52VcVta0CoO8y0WL4nd9DINnS5Ju6mb3RU FClcg/Ao1cJtV6VMIwkFoRr4ifquGHgXrOwxnqLcGFOp8ESmQX9fFJFWTtiIdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjalPciVCQZ/fWj5KSeRgCHBi7zTLso9ZisLZBNvA90=; b=JDL/VcdXtdzQvyp1M6ipYAF2ag4lH+tKD1Qqb6gfTdD0FsAZu5bq1qHPfAKUUH+/C6RDEP UR49Zbi6eVnrnlDXbLqPX5Hg4dkpw9+Wc+L1ypHsCNjY6M/Oyj2qvgtOJyOXNNOkreoUO9 PSLokZtpvP39/id5TCs5QYH+uoQiMypdWIekG84FhfeOmdIneZCrbja9KK7fmrPeTBRnpd g+4+ZkIbLt5u028CIS8UPNmUMruG4Q5aDV6dx8DBCj0hPKWhuEEYMg5TYiPYC4DT8MiXNO AVEHAwrDj0jB9W1A3w+Mv8cQlZ0uaP2/K6KWTxjrOp645kJZGUSk6dF4tV2Low== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729525628; a=rsa-sha256; cv=none; b=vBMTVZKaCALjtFl17oVLqSU5eOBopdTLa/yQWJLO14dszLAwXTHcIWnQN2Wvrl0hVX8Rzg YFPOF9tji0P5eIVOBfmoXAV82u1m8D9T4oNEUMxFEIwklAOkY21ju0Z720rro8njXWiFVK FoW8Zc1fQcElLvfV5Dv2Wbw/gzvs9r+oa6os/iTHKN2UXn63NoYVhkfv/U2pU0AEdqWgWI 9DFBDVEHfRGdLASGQcnTyxTHbpREzhZIy+TLlSF638SoEOnwoH6/rNzwqixMltreEnu/5D 2Pu7tNS7yI8DeDHbWPsI7FjMCh3lSqmy3535DLgEZKtabXQ5T3O6xURFpmRc9Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXKSD0x5CzbWN; Mon, 21 Oct 2024 15:47: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 49LFl8fP021860; Mon, 21 Oct 2024 15:47:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFl800021857; Mon, 21 Oct 2024 15:47:08 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:47:08 GMT Message-Id: <202410211547.49LFl800021857@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: e18ba5c5555a - stable/14 - freebsd-update(8): wrap to 80 columns List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e18ba5c5555a52e5603f0ce1f76b63f1ffe4b645 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e18ba5c5555a52e5603f0ce1f76b63f1ffe4b645 commit e18ba5c5555a52e5603f0ce1f76b63f1ffe4b645 Author: Graham Perrin AuthorDate: 2023-08-20 10:01:05 +0000 Commit: Ed Maste CommitDate: 2024-10-21 15:46:41 +0000 freebsd-update(8): wrap to 80 columns Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/826 (cherry picked from commit 4c1c516c1a0760de2c86c073e8e74e297a71b088) --- usr.sbin/freebsd-update/freebsd-update.8 | 62 ++++++++++++++------------------ 1 file changed, 27 insertions(+), 35 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 1960b0ee95fe..024185198342 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -82,8 +82,7 @@ e.g.: .Pp In particular, the .Fx -Security Team only builds updates for releases shipped in binary form -by the +Security Team only builds updates for releases shipped in binary form by the .Fx Release Engineering Team. .Sh OPTIONS @@ -149,8 +148,8 @@ from or similar using this flag, see: .Nm Cm cron .It Fl -currently-running Ar release -Do not detect the currently-running release; instead, assume that the -system is running the specified +Do not detect the currently-running release; instead, assume that the system is +running the specified .Ar release . This is most likely to be useful when upgrading jails. .El @@ -160,28 +159,26 @@ The can be any one of the following: .Bl -tag -width "rollback" .It Cm fetch -Based on the currently installed world and the configuration -options set, fetch all available binary updates. +Based on the currently installed world and the configuration options set, fetch +all available binary updates. .It Cm cron -Sleep a random amount of time between 1 and 3600 seconds, -then download updates as if the +Sleep a random amount of time between 1 and 3600 seconds, then download updates +as if the .Cm fetch command was used. -If updates are downloaded, an email will be sent -(to root or a different address if specified via the +If updates are downloaded, an email will be sent (to root or a different +address if specified via the .Fl t option or in the configuration file). -As the name suggests, this command is designed for running -from +As the name suggests, this command is designed for running from .Xr cron 8 ; -the random delay serves to minimize the probability that -a large number of machines will simultaneously attempt to -fetch updates. +the random delay serves to minimize the probability that a large number of +machines will simultaneously attempt to fetch updates. .It Cm upgrade Fetch files necessary for upgrading to a new release. -Before using this command, make sure that you read the -announcement and release notes for the new release in -case there are any special steps needed for upgrading. +Before using this command, make sure that you read the announcement and release +notes for the new release in case there are any special steps needed for +upgrading. Note that this command may require up to 500 MB of space in .Ar workdir depending on which components of the @@ -192,19 +189,15 @@ Check if there are fetched updates ready to install. Returns exit code 2 if there are no updates to install. .It Cm install Install the most recently fetched updates or upgrade. -Returns exit code 2 if there are no updates to install -and the +Returns exit code 2 if there are no updates to install and the .Cm fetch -command wasn't passed as an earlier argument in the same -invocation. +command wasn't passed as an earlier argument in the same invocation. .It Cm rollback Uninstall the most recently installed updates. .It Cm IDS -Compare the system against a "known good" index of the -installed release. +Compare the system against a "known good" index of the installed release. .It Cm showconfig -Show configuration options after parsing conffile and command -line options. +Show configuration options after parsing conffile and command line options. .El .Sh TIPS .Bl -bullet @@ -216,17 +209,15 @@ If your clock is set to local time, adding the line to .Pa /etc/crontab will check for updates every night. -If your clock is set to UTC, please pick a random time -other than 3AM, to avoid overly imposing an uneven load -on the server(s) hosting the updates. +If your clock is set to UTC, please pick a random time other than 3AM, to avoid +overly imposing an uneven load on the server(s) hosting the updates. .It In spite of its name, .Nm -IDS should not be relied upon as an "Intrusion Detection -System", since if the system has been tampered with -it cannot be trusted to operate correctly. -If you intend to use this command for intrusion-detection -purposes, make sure you boot from a secure disk (e.g., a CD). +IDS should not be relied upon as an "Intrusion Detection System", since if the +system has been tampered with it cannot be trusted to operate correctly. +If you intend to use this command for intrusion-detection purposes, make sure +you boot from a secure disk (e.g., a CD). .El .Sh ENVIRONMENT .Bl -tag -width "PAGER" @@ -265,7 +256,8 @@ required. .Sh AUTHORS .An Colin Percival Aq Mt cperciva@FreeBSD.org .Sh BUGS -In patch level situations – for example, 13.2-RELEASE-p1 up to 13.2-RELEASE-p2: if any previous modification to a file in +In patch level situations – for example, 13.2-RELEASE-p1 up to +13.2-RELEASE-p2: if any previous modification to a file in .Pa /etc/ will conflict with an available update, then .Nm From nobody Mon Oct 21 15:48:56 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXKVJ3y7Mz5ZRF0; Mon, 21 Oct 2024 15:48:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXKVJ319Wz4vKC; Mon, 21 Oct 2024 15:48:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525736; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B4NSgPJCWkC5UtL6f+88Qc6FsqBIVhOZrkfwWfvbKsc=; b=buaKiOIKIvWV7a9A0JMuIYIH1vswboh7JCMxmLtgNyYDY7ouJwrmrLG9RMSNPwG2IJL4o9 HQDuXzmlFcnjBLJPCGgpxQmRmf1sbwZpu8M9PMvikuPNhq5nI6Qalj7bnbfHvsTqaFMuas nHLTWpRWN1pqRQBZkPLoC8Q9Acv3HGAOQnIZ3/LDiFVLM8Wfy3nobvn/NM7tsvl1VXkR7+ CvcZwjQdh9ryxTK3sM36F5yCXJssn6x+h3cWYxWtzci8b3fbEAR502gRsJU7CxRwnum5pY DaQZjm4YrOXSFDJzYVIpFNWR6yCDpHUWTPK03IxFHVlUJojaAVA8j4m980R0rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525736; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B4NSgPJCWkC5UtL6f+88Qc6FsqBIVhOZrkfwWfvbKsc=; b=ng6g9TFSJFHt2nz8y/CdgKJsq4xJoatyHR7GXz/QpCZRY2XIv/1tGa9ERTycvPdUqjq534 VUpBeSOtPg+Xt2wgpY1vLQNthFxy9fuLy2JVG2QWbqdkXiso2jChVPz3gi/fQwBPVMeeeG pVw9wocbGn179CE0BCYlklD0b4p5f5KnNyJnhxyRKJreBAY/d63iy+khk2rTif0vJvr0VN 1Oe5G0UF7bhdv91wbqDBWyAG+fG9ZP/kU6hX4fHeArKb/ATQzXr0DdhEVcoJ5u0b+csJdS 5Whl6r1L7Eo9SmYrECMAeEf+v939WMgEriqN0wej2WgbV+A1QtOaf6FXa2HU3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729525736; a=rsa-sha256; cv=none; b=yjj3MNeZvhziY4h7DKoDknQDpgVF8wwoiFdAlOACjOJHKl8AE40UejFDZ/uSadIq1EA562 0zygSNQfkbiw/yZ/N4Ghz7MeJ4OCmj1kALaB6bPPOVHitbkLQikTG7/wLyNXpLCRIJKghZ dAMmkZpyisasf1Uujshx0eUx/TVoiJazLY77Z7ESNgn7qmMrqEoQyi/07/fzgldlfITlWm ix7drPSerenNC5HUOlSgWPw9lSG5PKlpFUsINyvJQMqF1YG6O2ZHYNbBnuHMPDf+spJtdc KmPgNySVyyLwkDtK7lrwl/vS4KmcUZJhHaPBE1vx5zgz23ZD2elA1bKtw0Jr1g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXKVJ2PRczbhy; Mon, 21 Oct 2024 15:48:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LFmu35022552; Mon, 21 Oct 2024 15:48:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFmuYJ022549; Mon, 21 Oct 2024 15:48:56 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:48:56 GMT Message-Id: <202410211548.49LFmuYJ022549@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: b9c3f49fac75 - stable/13 - freebsd-update(8): Explain conflicts in /etc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b9c3f49fac756f98555c516b54b680c625becb61 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=b9c3f49fac756f98555c516b54b680c625becb61 commit b9c3f49fac756f98555c516b54b680c625becb61 Author: Graham Perrin AuthorDate: 2023-08-19 14:52:18 +0000 Commit: Ed Maste CommitDate: 2024-10-21 15:48:45 +0000 freebsd-update(8): Explain conflicts in /etc Unlike etcupdate(8), freebsd-update only prints the files with conflicts. It doesn't merge. PR: 204549 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/826 (cherry picked from commit a8c1ffca7a594733a91c1513d0185be174d1115f) (cherry picked from commit 85f889aa9cdad831a68b42050d1adb47d4eb960d) --- usr.sbin/freebsd-update/freebsd-update.8 | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 0d50ac8822de..1960b0ee95fe 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -264,3 +264,12 @@ required. .Xr nextboot 8 .Sh AUTHORS .An Colin Percival Aq Mt cperciva@FreeBSD.org +.Sh BUGS +In patch level situations – for example, 13.2-RELEASE-p1 up to 13.2-RELEASE-p2: if any previous modification to a file in +.Pa /etc/ +will conflict with an available update, then +.Nm +will make no attempt to merge. +Instead: +.Nm +will print a list of affected locally-modified files. From nobody Mon Oct 21 15:48:57 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXKVK6CTYz5ZRCb; Mon, 21 Oct 2024 15:48:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXKVK4Jlyz4vMC; Mon, 21 Oct 2024 15:48:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejnsguXa12PqbsRpALWBk73cqwZuF8zfC9fzKZsNTH8=; b=GKbc+H5WDZXFDoIRjAo2TL09me9SSpucp/dSeE1ixOCxYn4nlWdqYW98tA/WfP5EE709cM EHHSVtzStMnffiPMeaUDlq0VqMnpYt4imgM/ArM4Tg7hKak9Nmj/Kv+vsQEQNyVHOeCGZX u3xF8BNuCt1pHFnKQ/9z6BqZFNW3ovho1kV/3N2fgCiPUsVcaQkZ25XhScmh76mLADfXyo uuYVxBokWHIfWz8VJKM9kA2OXmmGAgGm6QjIjRXnF2p9IKtlSWXapFqNTDjUXElgWDjIdR 0EyovIy8rrS/fomF+PdwTc09XuF6qFacZl9EMQsm1Utu3fJQYUUmhqlmudpHKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729525737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejnsguXa12PqbsRpALWBk73cqwZuF8zfC9fzKZsNTH8=; b=Hg0FNuQk+x7xRpTXahtKDJxbEtuAfYb0jb0YDM9r9AjKRv7pAX1xoQAxhlnmGaFGJyIBjZ xYYisb8yO97Rf77pjcwNkYHBbhR+SDbStp2O/+rVNIu95D7JuKzOQ329EB405cyt5PhyjJ IUBcDo3ORDvB0oXGW9enBKqKa3n9ls9bFBTvOdJ4GF6waBjr7cATDEbp/boaENhc4EeuCJ +4Gp6GSsfAk4Z2Xj6E8tNfMfQMvSifU6jfXbE4oqnjL8J/QX9zH3RJD86C8pAakeMHAcHx iaSiyb+IhQGHSQMx45mriI29R6GHa/iQod67kOt/KOoQsH+KPXc5o6f/fkNsDw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729525737; a=rsa-sha256; cv=none; b=sLS/eFYhHELR5s2yyxMVz27uysGpReZiFT7x5Aa8MvDTN2PkECr7OHElN551zU8WudKYdh nT9Z9ZyqLj02QPTl2ejBQzM7NSrsRsG+qe2f1LgLJpYlKtpz8V2ZniqnejuR1hXxPBjYSh pdABTuBunfsKqYquFWv46RBXNuJPZslhPDnnwvn5clDsPizJSY+VFANQKk8EGF6ffom+FW fH+yIixtsuIPv1VCZDsbY1bqW8WvVujYdTH37GYEYnVvmgSWeXg14/tG0d6qQ+uNmFSqqb 002YktPwg90uMkrjeaAS3wbDFRarDk1kgNCx2CJpKMoZ+h1U2xyOyaWMj7hOlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXKVK3Dd9zcDm; Mon, 21 Oct 2024 15:48:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LFmvV3022596; Mon, 21 Oct 2024 15:48:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LFmvf4022593; Mon, 21 Oct 2024 15:48:57 GMT (envelope-from git) Date: Mon, 21 Oct 2024 15:48:57 GMT Message-Id: <202410211548.49LFmvf4022593@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 9db8fd4c2adc - stable/13 - freebsd-update(8): wrap to 80 columns List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 9db8fd4c2adc9544e7bb2a5faccc90c99cdc2305 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=9db8fd4c2adc9544e7bb2a5faccc90c99cdc2305 commit 9db8fd4c2adc9544e7bb2a5faccc90c99cdc2305 Author: Graham Perrin AuthorDate: 2023-08-20 10:01:05 +0000 Commit: Ed Maste CommitDate: 2024-10-21 15:48:45 +0000 freebsd-update(8): wrap to 80 columns Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/826 (cherry picked from commit 4c1c516c1a0760de2c86c073e8e74e297a71b088) (cherry picked from commit e18ba5c5555a52e5603f0ce1f76b63f1ffe4b645) --- usr.sbin/freebsd-update/freebsd-update.8 | 62 ++++++++++++++------------------ 1 file changed, 27 insertions(+), 35 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 1960b0ee95fe..024185198342 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -82,8 +82,7 @@ e.g.: .Pp In particular, the .Fx -Security Team only builds updates for releases shipped in binary form -by the +Security Team only builds updates for releases shipped in binary form by the .Fx Release Engineering Team. .Sh OPTIONS @@ -149,8 +148,8 @@ from or similar using this flag, see: .Nm Cm cron .It Fl -currently-running Ar release -Do not detect the currently-running release; instead, assume that the -system is running the specified +Do not detect the currently-running release; instead, assume that the system is +running the specified .Ar release . This is most likely to be useful when upgrading jails. .El @@ -160,28 +159,26 @@ The can be any one of the following: .Bl -tag -width "rollback" .It Cm fetch -Based on the currently installed world and the configuration -options set, fetch all available binary updates. +Based on the currently installed world and the configuration options set, fetch +all available binary updates. .It Cm cron -Sleep a random amount of time between 1 and 3600 seconds, -then download updates as if the +Sleep a random amount of time between 1 and 3600 seconds, then download updates +as if the .Cm fetch command was used. -If updates are downloaded, an email will be sent -(to root or a different address if specified via the +If updates are downloaded, an email will be sent (to root or a different +address if specified via the .Fl t option or in the configuration file). -As the name suggests, this command is designed for running -from +As the name suggests, this command is designed for running from .Xr cron 8 ; -the random delay serves to minimize the probability that -a large number of machines will simultaneously attempt to -fetch updates. +the random delay serves to minimize the probability that a large number of +machines will simultaneously attempt to fetch updates. .It Cm upgrade Fetch files necessary for upgrading to a new release. -Before using this command, make sure that you read the -announcement and release notes for the new release in -case there are any special steps needed for upgrading. +Before using this command, make sure that you read the announcement and release +notes for the new release in case there are any special steps needed for +upgrading. Note that this command may require up to 500 MB of space in .Ar workdir depending on which components of the @@ -192,19 +189,15 @@ Check if there are fetched updates ready to install. Returns exit code 2 if there are no updates to install. .It Cm install Install the most recently fetched updates or upgrade. -Returns exit code 2 if there are no updates to install -and the +Returns exit code 2 if there are no updates to install and the .Cm fetch -command wasn't passed as an earlier argument in the same -invocation. +command wasn't passed as an earlier argument in the same invocation. .It Cm rollback Uninstall the most recently installed updates. .It Cm IDS -Compare the system against a "known good" index of the -installed release. +Compare the system against a "known good" index of the installed release. .It Cm showconfig -Show configuration options after parsing conffile and command -line options. +Show configuration options after parsing conffile and command line options. .El .Sh TIPS .Bl -bullet @@ -216,17 +209,15 @@ If your clock is set to local time, adding the line to .Pa /etc/crontab will check for updates every night. -If your clock is set to UTC, please pick a random time -other than 3AM, to avoid overly imposing an uneven load -on the server(s) hosting the updates. +If your clock is set to UTC, please pick a random time other than 3AM, to avoid +overly imposing an uneven load on the server(s) hosting the updates. .It In spite of its name, .Nm -IDS should not be relied upon as an "Intrusion Detection -System", since if the system has been tampered with -it cannot be trusted to operate correctly. -If you intend to use this command for intrusion-detection -purposes, make sure you boot from a secure disk (e.g., a CD). +IDS should not be relied upon as an "Intrusion Detection System", since if the +system has been tampered with it cannot be trusted to operate correctly. +If you intend to use this command for intrusion-detection purposes, make sure +you boot from a secure disk (e.g., a CD). .El .Sh ENVIRONMENT .Bl -tag -width "PAGER" @@ -265,7 +256,8 @@ required. .Sh AUTHORS .An Colin Percival Aq Mt cperciva@FreeBSD.org .Sh BUGS -In patch level situations – for example, 13.2-RELEASE-p1 up to 13.2-RELEASE-p2: if any previous modification to a file in +In patch level situations – for example, 13.2-RELEASE-p1 up to +13.2-RELEASE-p2: if any previous modification to a file in .Pa /etc/ will conflict with an available update, then .Nm From nobody Mon Oct 21 18:39:03 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGb4Yy2z5Zd1l; Mon, 21 Oct 2024 18:39:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGb3YD1z4Fcj; Mon, 21 Oct 2024 18:39:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535943; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PxMWUvEJqbaGZyCsL2WOf8SICL93lvwzjktg5MtJjUc=; b=Abuq9/jQpJS+BW52MyLjRdt8UHXId0z2p7RpR60NFr/81N26ddv4PNbzjIvM7n0iAQ8Vit 0vTgWFvaOAz2YtWRnnxw/HNVGKnaoF4PjTBgcaEQYmJ1+9S2BMBLT4E5czrqfmG7jgH8it 5El4YQnIk6AhJnB/8Posh/vo5/LU8mtcLKKOhHxqWWC2y8SHWMMg6UyeqVmFEeMHjybvEb d6mQSN9XvEGuSjpta0l1vYE1b0rBiDfHqVFRT+0wJ0nRZ6fuXAezgLl2F95foNRhVVo9z0 2XF/3HFjCdM6UnmH3YkhhXpDzUinwAXnxSIYbfctmMi3nuj+7xo1dtJXYrT00w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535943; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PxMWUvEJqbaGZyCsL2WOf8SICL93lvwzjktg5MtJjUc=; b=Bj4H+h2G3l2iGk3xxw2TwneooffMt3Y758ryUOQ7Mb/HNanp4xy66C3NLEHwwMlz8jm1xe jluHr+AYWAQdxZ8wTBUmNC583gghGQiAh0a8qvxfXnBYdobXr79wCXo+DLCIJDdYxMuD4D hUrIHhi+bH9xmdRrOehpniD4cAIQLHVC3TWl5ZEkKuq9buQWFICcRi+3vYgIlNFqNjZn2/ yduhRy7TpMmHWl5Ed+E0nGqcCThdA2pxfbxDZAY+yXfMYW9YjAz15nHjOR3/n8mkzjephE Oe39WXUbjtjhhxgpbNbbzaG36wkpPWybu7cdwiBiCqiv18puplSUPTGwkQczlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535943; a=rsa-sha256; cv=none; b=ad+yGbWEKq/8zW+R1KR/w8LokOEekxeob6yl6ARJgaTg1vuuKvGMrdyejp6qIGDn5mMDK6 /YBDcrAGLIg6k7OlwwmNrKjiMf0DT5uSKKYaxqyqK2/FGygXzVZQrG29VSDAwToW07frlg Z+8W1RqJtK4VsEpeqgRojXXjCQLZ9X0d20+jV8YMOrzMetZFtD0YRp1L+6cBmh8whnHKCj v1xWEPmTFETDHeCWanubuPhUL2T4wrpnl2SCAZAPQ+1YELcmRXdkqBOFAAEBYTCPrwwANX cIzPclNzFJZbJaMcqC+JOAmxe9AZreKWFd5mlRY2D3rw/x9yq4h+XpbN8XzkVg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGb32lrzhjH; Mon, 21 Oct 2024 18:39: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 49LId36J035768; Mon, 21 Oct 2024 18:39:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId3iH035765; Mon, 21 Oct 2024 18:39:03 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:03 GMT Message-Id: <202410211839.49LId3iH035765@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 032bd06d9858 - stable/14 - cxgbe(4): Tidy up t4_l2t.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 032bd06d985834b83057b1ca579a87dbe3fe608e Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=032bd06d985834b83057b1ca579a87dbe3fe608e commit 032bd06d985834b83057b1ca579a87dbe3fe608e Author: Navdeep Parhar AuthorDate: 2024-07-17 17:41:37 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 16:46:29 +0000 cxgbe(4): Tidy up t4_l2t.h Align the comment for if_t with the rest and remove the declaration of t4_l2t_set_switching, which was removed in 061bbaf7e7fe. No functional change. Sponsored by: Chelsio Communications (cherry picked from commit b3bbc6cc79a3b76d342b2a8fd68e5266eb50ff11) --- sys/dev/cxgbe/t4_l2t.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sys/dev/cxgbe/t4_l2t.h b/sys/dev/cxgbe/t4_l2t.h index be6337a60eab..36a41e459a5d 100644 --- a/sys/dev/cxgbe/t4_l2t.h +++ b/sys/dev/cxgbe/t4_l2t.h @@ -64,7 +64,7 @@ struct l2t_entry { uint32_t addr[4]; /* next hop IP or IPv6 address */ uint32_t iqid; /* iqid for reply to write_l2e */ struct sge_wrq *wrq; /* queue to use for write_l2e */ - if_t ifp; /* outgoing interface */ + if_t ifp; /* outgoing interface */ uint16_t smt_idx; /* SMT index */ uint16_t vlan; /* VLAN TCI (id: 0-11, prio: 13-15) */ struct l2t_entry *first; /* start of hash chain */ @@ -94,8 +94,6 @@ struct l2t_entry *t4_l2t_alloc_switching(struct adapter *, uint16_t, uint8_t, uint8_t *); struct l2t_entry *t4_l2t_alloc_tls(struct adapter *, struct sge_txq *, void *, int *, uint16_t, uint8_t, uint8_t *); -int t4_l2t_set_switching(struct adapter *, struct l2t_entry *, uint16_t, - uint8_t, uint8_t *); int t4_write_l2e(struct l2t_entry *, int); int do_l2t_write_rpl(struct sge_iq *, const struct rss_header *, struct mbuf *); From nobody Mon Oct 21 18:39:04 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGc5yl2z5ZcYC; Mon, 21 Oct 2024 18:39:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGc5QLNz4FLR; Mon, 21 Oct 2024 18:39:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535944; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XfcBgsAn58luW6hzIaWGsbqvFD7N7UgdUp2409cxEE4=; b=okQaAgB9TeXGQBCimpfPZwGdnobHIPJjyYbMOqopgll7yZ1mOnC5wwqhQfn+cZH5WIW1F1 etPNKBrWg2E4da7KMErjtOdilPQVj7nX4D+v8upV9FQl0wEx+0piflreJxpmbZIVMjw0KE OjxFPQtgRnmcMjfQVm1qeHWY9Ma90oeQ4E8qF0j3ohxOEeRC+naYp9s7RJ8IzLMAGUqIUe Rgq2Mh+mLxhv0swSjENxSlAeW2nG8r0IJ7uBPQOtP9UAIMzRe8Ew4KC/W+w9JAh4MWzRZJ GrHqDiyylNtPFhnQHiCCgUSmCK+f3f5UVsbMhlVPOk0xPp/3CoGdH5LFb2zyzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535944; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XfcBgsAn58luW6hzIaWGsbqvFD7N7UgdUp2409cxEE4=; b=jsHxZqHH0JT+bnkNAC+GB1t37p1K5vjKSJMFkwx5CjNeSb+mYVAb8CHFuEkzjmPf9GZopS C66mecxQDTEzbuOl4aSfCVFDUzvHHqqk3NJSHRRtOfWr5i0gglMLE2chw7mm4hU1c+smzf +qAbNE2vMIhVP83mGulUN90cKWZ4Oj4j46r8ejXPt/aWBZUhFDMssBnhrfCWZYJtIOG7ar bgLzsEictSZHYn3GeM8KkrY17X2JO08IDhQlNmzc9u3HD7V/BShfG/B0Gicf1tZImqmFWI WPQCtTeZ8qVi7pX5oaDAHmyDmkaDCRpo1EJLIolQz8xSocC5HZKz1l25uTT5Fg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535944; a=rsa-sha256; cv=none; b=ZwF5qgGI2X0dL/n0dH3tUCcMkmnR2u3u37uEzY/XgPD3zSUY+0I6RuviGXHqqQ+1SMeDD5 KOxM8dSLUkJSPxVn6/CP4xK3ve4bsucCSS7bzOnObAEt14YzH5zk2tShDKn7wBZEDoMXQ8 QjrDy6Q3RQGY3FmDaqeQjlgZJXCruIDb4ScD3TaFvRaCG0fPyGO8hx+FhmRirUzBs/oBcY lxiYDVwiHoSqfXGBbY/Jc+4tXSGqn4wmZecuq1K+vL4YgeGhjaIHqo9du1lG+6UST0eP8f F35ExqLqZpsP6O9xO6sjG2dvbx59Q2flWLEPD6uqHDDSLomQ/ljsWzhEVtJdVw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGc42vLzhYH; Mon, 21 Oct 2024 18:39: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 49LId4dW035832; Mon, 21 Oct 2024 18:39:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId4KG035829; Mon, 21 Oct 2024 18:39:04 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:04 GMT Message-Id: <202410211839.49LId4KG035829@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: c18966b3dce0 - stable/14 - cxgbe/t4_tom: Detach the toep from the tcpcb when entering TIME_WAIT. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c18966b3dce0e5110c79b23d290d453c22b49252 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=c18966b3dce0e5110c79b23d290d453c22b49252 commit c18966b3dce0e5110c79b23d290d453c22b49252 Author: Navdeep Parhar AuthorDate: 2024-07-17 05:23:33 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 16:46:29 +0000 cxgbe/t4_tom: Detach the toep from the tcpcb when entering TIME_WAIT. The kernel used to call tod_pcb_detach when entering TIME_WAIT but that seems to have changed, likely with the TIME_WAIT overhaul in the kernel some time ago. Catch up by having the driver perform the detach. The hardware does not handle TIME_WAIT so it's important to detach and let the kernel arm the 2MSL timer to deal with it. Reported by: Sony Arpita Das @ Chelsio Reviewed by: jhb Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D45990 (cherry picked from commit bbc326241d91ab2cee2ec2c5c0aa8a906480132f) --- sys/dev/cxgbe/tom/t4_cpl_io.c | 2 ++ sys/dev/cxgbe/tom/t4_tom.c | 2 +- sys/dev/cxgbe/tom/t4_tom.h | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index 0d42c89dcf93..0a40bbda3f3f 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -1393,6 +1393,7 @@ do_peer_close(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) case TCPS_FIN_WAIT_2: restore_so_proto(so, inp->inp_vflag & INP_IPV6); + t4_pcb_detach(NULL, tp); tcp_twstart(tp); INP_UNLOCK_ASSERT(inp); /* safe, we have a ref on the inp */ NET_EPOCH_EXIT(et); @@ -1454,6 +1455,7 @@ do_close_con_rpl(struct sge_iq *iq, const struct rss_header *rss, switch (tp->t_state) { case TCPS_CLOSING: /* see TCPS_FIN_WAIT_2 in do_peer_close too */ restore_so_proto(so, inp->inp_vflag & INP_IPV6); + t4_pcb_detach(NULL, tp); tcp_twstart(tp); release: INP_UNLOCK_ASSERT(inp); /* safe, we have a ref on the inp */ diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 3fe34c7c01a3..10ee78681365 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -359,7 +359,7 @@ release_offload_resources(struct toepcb *toep) * Also gets called when an offloaded active open fails and the TOM wants the * kernel to take the TCP PCB back. */ -static void +void t4_pcb_detach(struct toedev *tod __unused, struct tcpcb *tp) { #if defined(KTR) || defined(INVARIANTS) diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index 805d8bc0d644..fb74642d61f7 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -468,6 +468,7 @@ __be32 calc_options2(struct vi_info *, struct conn_params *); uint64_t select_ntuple(struct vi_info *, struct l2t_entry *); int negative_advice(int); int add_tid_to_history(struct adapter *, u_int); +void t4_pcb_detach(struct toedev *, struct tcpcb *); /* t4_connect.c */ void t4_init_connect_cpl_handlers(void); From nobody Mon Oct 21 18:39:05 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGf0VbSz5Zcqf; Mon, 21 Oct 2024 18:39:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGd5Vn2z4Fck; Mon, 21 Oct 2024 18:39:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535945; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=purmNPisT3LcWzQShj8z5zeMlzxNDyV0xefsd0yRc5g=; b=lncxcwPwTTSfoZht7Y5p7Ea1Jr3MAbm5Al7jddZACCxTdEqNHyyK9ZVtlgCGo6Vc0aJ7+M oTYModo8Abd7HG843uLh6lRxis1xW/dJ5sCuB5OEHEesTWfjLu0xGjejjbZkG6o4DZ+BHr y/+cMPaAEnlcgs3kN5NzO2tIqZnndmE3xiJdkPtlreoj+6wEqLyLo9OElJ7qtv/x+57s8L eYj1df4PcYCTECLaSWvaIbKPvxh4RseLUa3ieJP1ZQ7vXdbyaQNGXFKuJthm3pRjvohwGk 6vcNzzcusOdt/slzdSIiWOcwm3yCj967F6qrBk+qzkXjj4sHUPYuctziQmGSXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535945; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=purmNPisT3LcWzQShj8z5zeMlzxNDyV0xefsd0yRc5g=; b=MsluKs5PU2UdWO9V8GSl/ePHczcr+LjtsgoYuaW/IZl3zXvqHcf6qAIc94yRMhRgbugEj2 zgg+ejTcJ2HDSrMNtH7nLnJKNiRXIxcsd8bQ8GKWc6h9XtqFflsngqwoxo25LsFh1eAn93 2k5Vz4DmVCyjrlmc88w/l+JwudGwAoxj2d4aoCw9QoGu5zsBK/Ewej7NFKBFBOP09Qhw3K VtERVA5D6/6SB7WZoYJaDOYZp5WOJiq2XOU9zR7lWirBYTR1KFSfEIx1hmD6iMaZxTrz5E EAWoeFzWPMDJa3wJErDpS+AzCySiClZdejV+x3xjypEwD14Tt+91KWJPDB+ENA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535945; a=rsa-sha256; cv=none; b=wwshjIAiN/QM672528p0S5YpEG3miV8QKKzQ4FOdw1jJDIQWuJ2zFvvF/o5LytDsnG52Ht 6JKejR9pMEbfpWCGB3H1ZXE/yjWMRPgzxuoI3WK/gBmqirSNz3jsXW6QE86mRYx4uA1fe0 fxdp17Qx4/HOXDU2vTAT6vegkgTgtHsmuCQb70kO2nKr1On4YKFj0vtOY/+tC+gmlnfPJj 0ILsT2Tarv80aafWg9WHq+bdLHNPXhMNraa8Lcvd8BmO+xjZQF5H7gq7MtuQ33As5dvmDl 5vGMF06E+bWlCy2hfhel0ItUrF3WlZs2hpkVNbdVpMa0F71A86+cS3cv+KFkWQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGd5743zh5k; Mon, 21 Oct 2024 18:39: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 49LId5PG035893; Mon, 21 Oct 2024 18:39:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId5HZ035890; Mon, 21 Oct 2024 18:39:05 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:05 GMT Message-Id: <202410211839.49LId5HZ035890@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: e867a2503153 - stable/14 - cxgbe/t4_tom: Free up hardware resources when the final CPL is received. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e867a25031532f3e54d61a23c6057362c66a6584 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=e867a25031532f3e54d61a23c6057362c66a6584 commit e867a25031532f3e54d61a23c6057362c66a6584 Author: Navdeep Parhar AuthorDate: 2024-07-16 00:39:40 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 16:46:30 +0000 cxgbe/t4_tom: Free up hardware resources when the final CPL is received. Final CPL means the tid is done in the hardware and other resources associated with it can be freed right away. There is no need to wait for the kernel to detach the toepcb. Reviewed by: jhb MFC after: 1 week Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D45991 (cherry picked from commit 27479403a764cf3b97194887a1f819c1e35357aa) --- sys/dev/cxgbe/tom/t4_tom.c | 58 +++++++++++++++++++++++++++++++--------------- 1 file changed, 39 insertions(+), 19 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 10ee78681365..645822b6f781 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -97,6 +97,7 @@ static struct uld_info tom_uld_info = { }; static void release_offload_resources(struct toepcb *); +static void done_with_toepcb(struct toepcb *); static int alloc_tid_tabs(struct tid_info *); static void free_tid_tabs(struct tid_info *); static void free_tom_data(struct adapter *, struct tom_data *); @@ -311,12 +312,42 @@ release_offload_resources(struct toepcb *toep) KASSERT(!(toep->flags & TPF_CPL_PENDING), ("%s: %p has CPL pending.", __func__, toep)); - KASSERT(!(toep->flags & TPF_ATTACHED), - ("%s: %p is still attached.", __func__, toep)); CTR5(KTR_CXGBE, "%s: toep %p (tid %d, l2te %p, ce %p)", __func__, toep, tid, toep->l2te, toep->ce); + if (toep->l2te) { + t4_l2t_release(toep->l2te); + toep->l2te = NULL; + } + if (tid >= 0) { + remove_tid(sc, tid, toep->ce ? 2 : 1); + release_tid(sc, tid, toep->ctrlq); + toep->tid = -1; + } + if (toep->ce) { + t4_release_clip_entry(sc, toep->ce); + toep->ce = NULL; + } + if (toep->params.tc_idx != -1) + t4_release_cl_rl(sc, toep->vi->pi->port_id, toep->params.tc_idx); +} + +/* + * Both the driver and kernel are done with the toepcb. + */ +static void +done_with_toepcb(struct toepcb *toep) +{ + struct tom_data *td = toep->td; + + KASSERT(!(toep->flags & TPF_CPL_PENDING), + ("%s: %p has CPL pending.", __func__, toep)); + KASSERT(!(toep->flags & TPF_ATTACHED), + ("%s: %p is still attached.", __func__, toep)); + + CTR(KTR_CXGBE, "%s: toep %p (0x%x)", __func__, toep, toep->flags); + /* * These queues should have been emptied at approximately the same time * that a normal connection's socket's so_snd would have been purged or @@ -329,20 +360,9 @@ release_offload_resources(struct toepcb *toep) ddp_assert_empty(toep); #endif MPASS(TAILQ_EMPTY(&toep->aiotx_jobq)); - - if (toep->l2te) - t4_l2t_release(toep->l2te); - - if (tid >= 0) { - remove_tid(sc, tid, toep->ce ? 2 : 1); - release_tid(sc, tid, toep->ctrlq); - } - - if (toep->ce) - t4_release_clip_entry(sc, toep->ce); - - if (toep->params.tc_idx != -1) - t4_release_cl_rl(sc, toep->vi->pi->port_id, toep->params.tc_idx); + MPASS(toep->tid == -1); + MPASS(toep->l2te == NULL); + MPASS(toep->ce == NULL); mtx_lock(&td->toep_list_lock); TAILQ_REMOVE(&td->toep_list, toep, link); @@ -392,7 +412,7 @@ t4_pcb_detach(struct toedev *tod __unused, struct tcpcb *tp) toep->flags &= ~TPF_ATTACHED; if (!(toep->flags & TPF_CPL_PENDING)) - release_offload_resources(toep); + done_with_toepcb(toep); } /* @@ -988,9 +1008,9 @@ final_cpl_received(struct toepcb *toep) toep->flags &= ~(TPF_CPL_PENDING | TPF_WAITING_FOR_FINAL); mbufq_drain(&toep->ulp_pduq); mbufq_drain(&toep->ulp_pdu_reclaimq); - + release_offload_resources(toep); if (!(toep->flags & TPF_ATTACHED)) - release_offload_resources(toep); + done_with_toepcb(toep); if (!in_pcbrele_wlocked(inp)) INP_WUNLOCK(inp); From nobody Mon Oct 21 18:39:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGh2B85z5ZctK; Mon, 21 Oct 2024 18:39:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGh0xPXz4FnV; Mon, 21 Oct 2024 18:39:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535948; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=whXMhLxhUP3hlmblJ1zJ2QGK7ajC0/IZ/RgWGvFMlXA=; b=HsBoW7cmnFAP5C5qQ5Qt4aSFdI5PICdXmkkwUfioRvTK6mYxgeMbNTJazlgqbSx6b9SqDR xxv3ew4E7xEVCI9RyCURdFij/OU2onmHSfWz5661z5A6CWUfb5rUpj3+ZinJeEFwtCdDNi 9ZKR08jruxydlVyVXJURIwzk5NDERcBY3Mz6STCwCmP/+xwMhXr4sbcKFUTCh1fQ0JblpV j4IEwbbAq81XukucQjfBu93IwAsxcGPFGkPF4cQyYqNVg8jQGDa4lV/kTJ3huFrZJyt24k waee+6FxgH63hwrv63/3y3EtnM1TiJLn4W1ADwYdaLbiNkPWs5GJ4IgbOEdKrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535948; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=whXMhLxhUP3hlmblJ1zJ2QGK7ajC0/IZ/RgWGvFMlXA=; b=gS9nX9Y1+sJBp2mH/LberhJRAgzEeWhdTnAibLou9OB18H5oMXE9UhbME980tz+hTenM2w T3LIZ/WCa/zbrKlo+cC1MbCB5CK2oSRuCOkV8qz6JvJdaPR22vU1WE+slg3JvtZyU4NFor BHYqFtO/vcgLNNFz4Xf86lNADqKofhHGtbtOFcR4D0JKFkSSizfoIVuYXtFzuiiS8FDnP5 /yA80JJEoRGJ+c4v11KPWazv/RO7LoI2vXeJ6hbWr/A3FDMLI44EI0j53kV7e39PP0JZqM mvG+408pYOdcCR4OiMrGAsOG3xlCYvu6VcdwCD/rtk/gmZfBHp0XWIdRWnR0UQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535948; a=rsa-sha256; cv=none; b=okoqPVTvs393GmEL6Jhuo+L/jtS8FsKI2dWENkvSRUg4JYtJjGBVznZHvSYfBHugj6lt6R 3oYL/QYq/i0NcxLYcphJMODD11UvwGQ+Ddf93AEITIT4t09t5+bvv+My/pCLqee6+Q2iXp cyiEafigodQlV7nG1JBuv3DR0S2a/nrrfn90UjIJFCsqnCMThWDtkJvxvYZGRy1Dq7sRC5 HmY0UQzBHaaZBhMwNgMlPyL3K2k+CkhJkSqNNK/wAUJwVbyIn88lWbAfD+UBBRrXBhvuQ5 hu+h6z4ZXF9B8EzfJ6nm/EmfQp+9kQlS9Xzhh0e7sIOZglskRuIOh7WtrxSDYg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGh0FgYzhYJ; Mon, 21 Oct 2024 18:39: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 49LId7AZ036009; Mon, 21 Oct 2024 18:39:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId7mj036006; Mon, 21 Oct 2024 18:39:07 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:07 GMT Message-Id: <202410211839.49LId7mj036006@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 4f1b1077fbb9 - stable/14 - cxgbe(4): Changes to ULD list management. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4f1b1077fbb9062f9f54ccc1ccd07dc33e09b45d Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=4f1b1077fbb9062f9f54ccc1ccd07dc33e09b45d commit 4f1b1077fbb9062f9f54ccc1ccd07dc33e09b45d Author: Navdeep Parhar AuthorDate: 2024-07-06 20:43:17 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:00:26 +0000 cxgbe(4): Changes to ULD list management. * Convert t4_uld_list to an array. There will be at most 3 items in the list and it's simpler to track them in an array with a fixed slot for each ULD. * There is no need to refcount ULDs so stop doing that. * Add uld_ prefix to all members of uld_info. * Rename async_event to uld_stop to match its actual purpose. Call it for all ULDs and not just ULD_IWARP. Reviewed by: jhb Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D46029 (cherry picked from commit cf5e6370f15cffabbbf508083ba7d48ec8abfa79) --- sys/dev/cxgbe/cxgbei/cxgbei.c | 9 +- sys/dev/cxgbe/iw_cxgbe/device.c | 19 +++-- sys/dev/cxgbe/offload.h | 13 ++- sys/dev/cxgbe/t4_main.c | 177 +++++++++++++++++----------------------- sys/dev/cxgbe/tom/t4_tom.c | 9 +- 5 files changed, 97 insertions(+), 130 deletions(-) diff --git a/sys/dev/cxgbe/cxgbei/cxgbei.c b/sys/dev/cxgbe/cxgbei/cxgbei.c index 4ae0e4da717b..ccca45f5f761 100644 --- a/sys/dev/cxgbe/cxgbei/cxgbei.c +++ b/sys/dev/cxgbe/cxgbei/cxgbei.c @@ -898,9 +898,8 @@ cxgbei_deactivate_all(struct adapter *sc, void *arg __unused) } static struct uld_info cxgbei_uld_info = { - .uld_id = ULD_ISCSI, - .activate = cxgbei_activate, - .deactivate = cxgbei_deactivate, + .uld_activate = cxgbei_activate, + .uld_deactivate = cxgbei_deactivate, }; static int @@ -913,7 +912,7 @@ cxgbei_mod_load(void) t4_register_cpl_handler(CPL_RX_ISCSI_DDP, do_rx_iscsi_ddp); t4_register_cpl_handler(CPL_RX_ISCSI_CMP, do_rx_iscsi_cmp); - rc = t4_register_uld(&cxgbei_uld_info); + rc = t4_register_uld(&cxgbei_uld_info, ULD_ISCSI); if (rc != 0) return (rc); @@ -928,7 +927,7 @@ cxgbei_mod_unload(void) t4_iterate(cxgbei_deactivate_all, NULL); - if (t4_unregister_uld(&cxgbei_uld_info) == EBUSY) + if (t4_unregister_uld(&cxgbei_uld_info, ULD_ISCSI) == EBUSY) return (EBUSY); t4_register_cpl_handler(CPL_ISCSI_HDR, NULL); diff --git a/sys/dev/cxgbe/iw_cxgbe/device.c b/sys/dev/cxgbe/iw_cxgbe/device.c index fa886766e383..28d6d0f2d00c 100644 --- a/sys/dev/cxgbe/iw_cxgbe/device.c +++ b/sys/dev/cxgbe/iw_cxgbe/device.c @@ -259,13 +259,12 @@ static int c4iw_mod_load(void); static int c4iw_mod_unload(void); static int c4iw_activate(struct adapter *); static int c4iw_deactivate(struct adapter *); -static void c4iw_async_event(struct adapter *); +static int c4iw_stop(struct adapter *); static struct uld_info c4iw_uld_info = { - .uld_id = ULD_IWARP, - .activate = c4iw_activate, - .deactivate = c4iw_deactivate, - .async_event = c4iw_async_event, + .uld_activate = c4iw_activate, + .uld_deactivate = c4iw_deactivate, + .uld_stop = c4iw_stop, }; static int @@ -326,8 +325,8 @@ c4iw_deactivate(struct adapter *sc) return (0); } -static void -c4iw_async_event(struct adapter *sc) +static int +c4iw_stop(struct adapter *sc) { struct c4iw_dev *iwsc = sc->iwarp_softc; @@ -341,6 +340,8 @@ c4iw_async_event(struct adapter *sc) event.device = &iwsc->ibdev; ib_dispatch_event(&event); } + + return (0); } static void @@ -379,7 +380,7 @@ c4iw_mod_load(void) if (rc != 0) return (rc); - rc = t4_register_uld(&c4iw_uld_info); + rc = t4_register_uld(&c4iw_uld_info, ULD_IWARP); if (rc != 0) { c4iw_cm_term(); return (rc); @@ -398,7 +399,7 @@ c4iw_mod_unload(void) c4iw_cm_term(); - if (t4_unregister_uld(&c4iw_uld_info) == EBUSY) + if (t4_unregister_uld(&c4iw_uld_info, ULD_IWARP) == EBUSY) return (EBUSY); return (0); diff --git a/sys/dev/cxgbe/offload.h b/sys/dev/cxgbe/offload.h index a8b243b764c8..a55d6f45cabf 100644 --- a/sys/dev/cxgbe/offload.h +++ b/sys/dev/cxgbe/offload.h @@ -209,12 +209,9 @@ enum { struct adapter; struct port_info; struct uld_info { - SLIST_ENTRY(uld_info) link; - int refcount; - int uld_id; - int (*activate)(struct adapter *); - int (*deactivate)(struct adapter *); - void (*async_event)(struct adapter *); + int (*uld_activate)(struct adapter *); + int (*uld_deactivate)(struct adapter *); + int (*uld_stop)(struct adapter *); }; struct tom_tunables { @@ -242,8 +239,8 @@ struct tls_tunables { }; #ifdef TCP_OFFLOAD -int t4_register_uld(struct uld_info *); -int t4_unregister_uld(struct uld_info *); +int t4_register_uld(struct uld_info *, int); +int t4_unregister_uld(struct uld_info *, int); int t4_activate_uld(struct adapter *, int); int t4_deactivate_uld(struct adapter *, int); int uld_active(struct adapter *, int); diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 5bfcb2f4f8c2..60572d0c25e8 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -263,7 +263,7 @@ static struct sx t4_list_lock; SLIST_HEAD(, adapter) t4_list; #ifdef TCP_OFFLOAD static struct sx t4_uld_list_lock; -SLIST_HEAD(, uld_info) t4_uld_list; +struct uld_info *t4_uld_list[ULD_MAX + 1]; #endif /* @@ -864,7 +864,7 @@ static int release_clip_addr(struct adapter *, struct t4_clip_addr *); #ifdef TCP_OFFLOAD static int toe_capability(struct vi_info *, bool); static int t4_deactivate_all_uld(struct adapter *); -static void t4_async_event(struct adapter *); +static void stop_all_uld(struct adapter *); #endif #ifdef KERN_TLS static int ktls_capability(struct adapter *, bool); @@ -3616,7 +3616,7 @@ fatal_error_task(void *arg, int pending) int rc; #ifdef TCP_OFFLOAD - t4_async_event(sc); + stop_all_uld(sc); #endif if (atomic_testandclear_int(&sc->error_flags, ilog2(ADAP_CIM_ERR))) { dump_cim_regs(sc); @@ -12515,82 +12515,61 @@ toe_capability(struct vi_info *vi, bool enable) * Add an upper layer driver to the global list. */ int -t4_register_uld(struct uld_info *ui) +t4_register_uld(struct uld_info *ui, int id) { - int rc = 0; - struct uld_info *u; + int rc; + if (id < 0 || id > ULD_MAX) + return (EINVAL); sx_xlock(&t4_uld_list_lock); - SLIST_FOREACH(u, &t4_uld_list, link) { - if (u->uld_id == ui->uld_id) { - rc = EEXIST; - goto done; - } + if (t4_uld_list[id] != NULL) + rc = EEXIST; + else { + t4_uld_list[id] = ui; + rc = 0; } - - SLIST_INSERT_HEAD(&t4_uld_list, ui, link); - ui->refcount = 0; -done: sx_xunlock(&t4_uld_list_lock); return (rc); } int -t4_unregister_uld(struct uld_info *ui) +t4_unregister_uld(struct uld_info *ui, int id) { - int rc = EINVAL; - struct uld_info *u; + if (id < 0 || id > ULD_MAX) + return (EINVAL); sx_xlock(&t4_uld_list_lock); - - SLIST_FOREACH(u, &t4_uld_list, link) { - if (u == ui) { - if (ui->refcount > 0) { - rc = EBUSY; - goto done; - } - - SLIST_REMOVE(&t4_uld_list, ui, uld_info, link); - rc = 0; - goto done; - } - } -done: + MPASS(t4_uld_list[id] == ui); + t4_uld_list[id] = NULL; sx_xunlock(&t4_uld_list_lock); - return (rc); + return (0); } int t4_activate_uld(struct adapter *sc, int id) { int rc; - struct uld_info *ui; ASSERT_SYNCHRONIZED_OP(sc); if (id < 0 || id > ULD_MAX) return (EINVAL); - rc = EAGAIN; /* kldoad the module with this ULD and try again. */ - - sx_slock(&t4_uld_list_lock); - SLIST_FOREACH(ui, &t4_uld_list, link) { - if (ui->uld_id == id) { - if (!(sc->flags & FULL_INIT_DONE)) { - rc = adapter_init(sc); - if (rc != 0) - break; - } - - rc = ui->activate(sc); - if (rc == 0) { - setbit(&sc->active_ulds, id); - ui->refcount++; - } - break; - } + /* Adapter needs to be initialized before any ULD can be activated. */ + if (!(sc->flags & FULL_INIT_DONE)) { + rc = adapter_init(sc); + if (rc != 0) + return (rc); } + sx_slock(&t4_uld_list_lock); + if (t4_uld_list[id] == NULL) + rc = EAGAIN; /* load the KLD with this ULD and try again. */ + else { + rc = t4_uld_list[id]->uld_activate(sc); + if (rc == 0) + setbit(&sc->active_ulds, id); + } sx_sunlock(&t4_uld_list_lock); return (rc); @@ -12600,27 +12579,20 @@ int t4_deactivate_uld(struct adapter *sc, int id) { int rc; - struct uld_info *ui; ASSERT_SYNCHRONIZED_OP(sc); if (id < 0 || id > ULD_MAX) return (EINVAL); - rc = ENXIO; sx_slock(&t4_uld_list_lock); - - SLIST_FOREACH(ui, &t4_uld_list, link) { - if (ui->uld_id == id) { - rc = ui->deactivate(sc); - if (rc == 0) { - clrbit(&sc->active_ulds, id); - ui->refcount--; - } - break; - } + if (t4_uld_list[id] == NULL) + rc = ENXIO; + else { + rc = t4_uld_list[id]->uld_deactivate(sc); + if (rc == 0) + clrbit(&sc->active_ulds, id); } - sx_sunlock(&t4_uld_list_lock); return (rc); @@ -12629,25 +12601,20 @@ t4_deactivate_uld(struct adapter *sc, int id) static int t4_deactivate_all_uld(struct adapter *sc) { - int rc; - struct uld_info *ui; + int i, rc; rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4detuld"); if (rc != 0) return (ENXIO); - sx_slock(&t4_uld_list_lock); - - SLIST_FOREACH(ui, &t4_uld_list, link) { - if (isset(&sc->active_ulds, ui->uld_id)) { - rc = ui->deactivate(sc); - if (rc != 0) - break; - clrbit(&sc->active_ulds, ui->uld_id); - ui->refcount--; - } + for (i = 0; i <= ULD_MAX; i++) { + if (t4_uld_list[i] == NULL || !uld_active(sc, i)) + continue; + rc = t4_uld_list[i]->uld_deactivate(sc); + if (rc != 0) + break; + clrbit(&sc->active_ulds, i); } - sx_sunlock(&t4_uld_list_lock); end_synchronized_op(sc, 0); @@ -12655,30 +12622,30 @@ t4_deactivate_all_uld(struct adapter *sc) } static void -t4_async_event(struct adapter *sc) +stop_all_uld(struct adapter *sc) { - struct uld_info *ui; + int i; - if (begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4async") != 0) + if (begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4uldst") != 0) return; sx_slock(&t4_uld_list_lock); - SLIST_FOREACH(ui, &t4_uld_list, link) { - if (ui->uld_id == ULD_IWARP) { - ui->async_event(sc); - break; - } + for (i = 0; i <= ULD_MAX; i++) { + if (t4_uld_list[i] == NULL || !uld_active(sc, i) || + t4_uld_list[i]->uld_stop == NULL) + continue; + (void) t4_uld_list[i]->uld_stop(sc); } sx_sunlock(&t4_uld_list_lock); end_synchronized_op(sc, 0); } int -uld_active(struct adapter *sc, int uld_id) +uld_active(struct adapter *sc, int id) { - MPASS(uld_id >= 0 && uld_id <= ULD_MAX); + MPASS(id >= 0 && id <= ULD_MAX); - return (isset(&sc->active_ulds, uld_id)); + return (isset(&sc->active_ulds, id)); } #endif @@ -13170,7 +13137,6 @@ mod_event(module_t mod, int cmd, void *arg) callout_init(&fatal_callout, 1); #ifdef TCP_OFFLOAD sx_init(&t4_uld_list_lock, "T4/T5 ULDs"); - SLIST_INIT(&t4_uld_list); #endif #ifdef INET6 t4_clip_modload(); @@ -13199,9 +13165,20 @@ mod_event(module_t mod, int cmd, void *arg) case MOD_UNLOAD: sx_xlock(&mlu); if (--loaded == 0) { +#ifdef TCP_OFFLOAD + int i; +#endif int tries; taskqueue_free(reset_tq); + + tries = 0; + while (tries++ < 5 && t4_sge_extfree_refs() != 0) { + uprintf("%ju clusters with custom free routine " + "still is use.\n", t4_sge_extfree_refs()); + pause("t4unload", 2 * hz); + } + sx_slock(&t4_list_lock); if (!SLIST_EMPTY(&t4_list)) { rc = EBUSY; @@ -13210,20 +13187,14 @@ mod_event(module_t mod, int cmd, void *arg) } #ifdef TCP_OFFLOAD sx_slock(&t4_uld_list_lock); - if (!SLIST_EMPTY(&t4_uld_list)) { - rc = EBUSY; - sx_sunlock(&t4_uld_list_lock); - sx_sunlock(&t4_list_lock); - goto done_unload; - } -#endif - tries = 0; - while (tries++ < 5 && t4_sge_extfree_refs() != 0) { - uprintf("%ju clusters with custom free routine " - "still is use.\n", t4_sge_extfree_refs()); - pause("t4unload", 2 * hz); + for (i = 0; i <= ULD_MAX; i++) { + if (t4_uld_list[i] != NULL) { + rc = EBUSY; + sx_sunlock(&t4_uld_list_lock); + sx_sunlock(&t4_list_lock); + goto done_unload; + } } -#ifdef TCP_OFFLOAD sx_sunlock(&t4_uld_list_lock); #endif sx_sunlock(&t4_list_lock); diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 645822b6f781..f9d8dcd706b7 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -91,9 +91,8 @@ static int t4_tom_activate(struct adapter *); static int t4_tom_deactivate(struct adapter *); static struct uld_info tom_uld_info = { - .uld_id = ULD_TOM, - .activate = t4_tom_activate, - .deactivate = t4_tom_deactivate, + .uld_activate = t4_tom_activate, + .uld_deactivate = t4_tom_deactivate, }; static void release_offload_resources(struct toepcb *); @@ -2013,7 +2012,7 @@ t4_tom_mod_load(void) toe6_protosw.pr_ctloutput = t4_ctloutput_tom; toe6_protosw.pr_aio_queue = t4_aio_queue_tom; - return (t4_register_uld(&tom_uld_info)); + return (t4_register_uld(&tom_uld_info, ULD_TOM)); } static void @@ -2034,7 +2033,7 @@ t4_tom_mod_unload(void) { t4_iterate(tom_uninit, NULL); - if (t4_unregister_uld(&tom_uld_info) == EBUSY) + if (t4_unregister_uld(&tom_uld_info, ULD_TOM) == EBUSY) return (EBUSY); t4_tls_mod_unload(); From nobody Mon Oct 21 18:39:06 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGg471cz5ZcwT; Mon, 21 Oct 2024 18:39:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGf6vBfz4FlD; Mon, 21 Oct 2024 18:39:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yueS7QgRWadoWM42MzTh3V36VmfkVVI6Z9ND/xBlaSM=; b=A81K7cnr5ajEEpc3Vw7R2eaziFjfYKCfjuBbB03slrUyNzuylR9eCKr7WlYLb/QxTYwlbO P5AF2th1VE8lUdeW0sW87HDMZHIJwu2L2WRq+uPY7giFV99zrJCL7YpYSO8IKOgG9TtP4Y qIdstXao9Y0bfaRab6p1WB7N//XpLvlcmA/29HRJ3lx4ZJDi/JA/Hs8bAcl8TnR6IdOJHB DrTkBDzgbwaDS3gwuToAfBTouWTS9bJ+uKAnfucQ0f7mKcKm2lLiNyOAFoqf55cnB06WKK jSpRjnpqtYW6YQ7eHBBSsUuVGQr56DJ64nfcA9d7h3kT8NUPOIrm29X/bt3ciw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yueS7QgRWadoWM42MzTh3V36VmfkVVI6Z9ND/xBlaSM=; b=m65NP/5NIzqt8WZI+rFre00XVfJbR+8on4MIq7gYUv5yf8qlmXikBx1QgBnpliNK2t2v+w xy9eMASq87VUh/Yu4mxVgtAh3ckEJYAertfyLzk9KhxsH/8cd68fys4YJQtZhoYq0tTDYM ZhJNim0YgotGPCJ5zdg7zsB1ktcZLqdB4nA9F2JfrHJ0RwvX4rInWPhjGvV0JBObphiB5T k4Wfuk1oe58D94FbqVf8tXk1aASDVLfCSIDScAv8jBAhtAags6+bjLH4ZllxiBvn2MbHxY lwZyYnWtjULqvsrlDialFipBIWMCU3RZXFeG+9NnxVpDQIfq4J5Kr+LgKO/mVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535947; a=rsa-sha256; cv=none; b=EbmOLTTncYGKsIaW0J+Pb5anaOSaT0Z1Ft/2MwdOCqM4hZQFT5rgDTZfs6lB4YiGBz3Erd Fg2qaczcOMSohjqBjZOxtMMx6MiauSJIgxdSJTcw2y8VcaBtudb6mo86Hxa3ilY1Lu/iZs Q9HgtYbaZab3+XLlN8Udu6BfsWwITe8DnhXRcO3MwMZ0cDqRJlBsUX30+m34CmCTaeoyEk WKAslZEpW1mlpMnGa2Lm86htyqdG9BewsL3djlU1cgsHFArmSR6t8gDYMXj6OEo3a4jEAF xqtslxpmFVbEo0CG6yBf9NHN75j0NghAtxyJ5CIeJxySQ8sRlcrXZB3Jg8gtdw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGf6GvxzhSN; Mon, 21 Oct 2024 18:39: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 49LId6tG035961; Mon, 21 Oct 2024 18:39:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId6IS035958; Mon, 21 Oct 2024 18:39:06 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:06 GMT Message-Id: <202410211839.49LId6IS035958@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 85a5adf4ed39 - stable/14 - cxgbe(4): Make no assumptions about the start and size of the L2T table. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 85a5adf4ed39923fc70640a1fd26fb7aca120e3b Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=85a5adf4ed39923fc70640a1fd26fb7aca120e3b commit 85a5adf4ed39923fc70640a1fd26fb7aca120e3b Author: Navdeep Parhar AuthorDate: 2024-07-18 20:16:30 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 16:46:30 +0000 cxgbe(4): Make no assumptions about the start and size of the L2T table. Do not assume that the table starts at index 0 and is typically 4K in size. The only thing the driver needs to verify is that its use of F_SYNC_WR doesn't collide with the L2T hwidx range. Reviewed by: jhb Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D46028 (cherry picked from commit cfcfd3c7bf5b60da42b13ac5d8085c762613c302) --- sys/dev/cxgbe/t4_l2t.c | 17 +++++++++++------ sys/dev/cxgbe/t4_l2t.h | 2 -- sys/dev/cxgbe/t4_main.c | 6 +++--- sys/dev/cxgbe/tom/t4_tom_l2t.c | 21 +++++++++++++-------- 4 files changed, 27 insertions(+), 19 deletions(-) diff --git a/sys/dev/cxgbe/t4_l2t.c b/sys/dev/cxgbe/t4_l2t.c index 005dce826ccb..90f184f5e666 100644 --- a/sys/dev/cxgbe/t4_l2t.c +++ b/sys/dev/cxgbe/t4_l2t.c @@ -369,14 +369,19 @@ int do_l2t_write_rpl(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) { + struct adapter *sc = iq->adapter; const struct cpl_l2t_write_rpl *rpl = (const void *)(rss + 1); - unsigned int tid = GET_TID(rpl); - unsigned int idx = tid % L2T_SIZE; + const u_int hwidx = GET_TID(rpl) & ~(F_SYNC_WR | V_TID_QID(M_TID_QID)); + const bool sync = GET_TID(rpl) & F_SYNC_WR; - if (__predict_false(rpl->status != CPL_ERR_NONE)) { - log(LOG_ERR, - "Unexpected L2T_WRITE_RPL (%u) for entry at hw_idx %u\n", - rpl->status, idx); + MPASS(iq->abs_id == G_TID_QID(GET_TID(rpl))); + + if (__predict_false(hwidx < sc->vres.l2t.start) || + __predict_false(hwidx >= sc->vres.l2t.start + sc->vres.l2t.size) || + __predict_false(rpl->status != CPL_ERR_NONE)) { + CH_ERR(sc, "%s: hwidx %u, rpl %u, sync %u; L2T st %u, sz %u\n", + __func__, hwidx, rpl->status, sync, sc->vres.l2t.start, + sc->vres.l2t.size); return (EINVAL); } diff --git a/sys/dev/cxgbe/t4_l2t.h b/sys/dev/cxgbe/t4_l2t.h index 36a41e459a5d..991b4476eb61 100644 --- a/sys/dev/cxgbe/t4_l2t.h +++ b/sys/dev/cxgbe/t4_l2t.h @@ -35,8 +35,6 @@ #define V_SYNC_WR(x) ((x) << S_SYNC_WR) #define F_SYNC_WR V_SYNC_WR(1) -enum { L2T_SIZE = 4096 }; /* # of L2T entries */ - enum { L2T_STATE_VALID, /* entry is up to date */ L2T_STATE_STALE, /* entry may be used but needs revalidation */ diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index b60eda504b6b..5bfcb2f4f8c2 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -5264,9 +5264,9 @@ get_params__post_init(struct adapter *sc) } sc->vres.l2t.start = val[4]; sc->vres.l2t.size = val[5] - val[4] + 1; - KASSERT(sc->vres.l2t.size <= L2T_SIZE, - ("%s: L2 table size (%u) larger than expected (%u)", - __func__, sc->vres.l2t.size, L2T_SIZE)); + /* val[5] is the last hwidx and it must not collide with F_SYNC_WR */ + if (sc->vres.l2t.size > 0) + MPASS(fls(val[5]) <= S_SYNC_WR); sc->params.core_vdd = val[6]; param[0] = FW_PARAM_PFVF(IQFLINT_END); diff --git a/sys/dev/cxgbe/tom/t4_tom_l2t.c b/sys/dev/cxgbe/tom/t4_tom_l2t.c index c397196d9cca..ee442f023970 100644 --- a/sys/dev/cxgbe/tom/t4_tom_l2t.c +++ b/sys/dev/cxgbe/tom/t4_tom_l2t.c @@ -318,18 +318,23 @@ do_l2t_write_rpl2(struct sge_iq *iq, const struct rss_header *rss, { struct adapter *sc = iq->adapter; const struct cpl_l2t_write_rpl *rpl = (const void *)(rss + 1); - unsigned int tid = GET_TID(rpl); - unsigned int idx = tid % L2T_SIZE; + const u_int hwidx = GET_TID(rpl) & ~(F_SYNC_WR | V_TID_QID(M_TID_QID)); + const bool sync = GET_TID(rpl) & F_SYNC_WR; - if (__predict_false(rpl->status != CPL_ERR_NONE)) { - log(LOG_ERR, - "Unexpected L2T_WRITE_RPL (%u) for entry at hw_idx %u\n", - rpl->status, idx); + MPASS(iq->abs_id == G_TID_QID(GET_TID(rpl))); + + if (__predict_false(hwidx < sc->vres.l2t.start) || + __predict_false(hwidx >= sc->vres.l2t.start + sc->vres.l2t.size) || + __predict_false(rpl->status != CPL_ERR_NONE)) { + CH_ERR(sc, "%s: hwidx %u, rpl %u, sync %u; L2T st %u, sz %u\n", + __func__, hwidx, rpl->status, sync, sc->vres.l2t.start, + sc->vres.l2t.size); return (EINVAL); } - if (tid & F_SYNC_WR) { - struct l2t_entry *e = &sc->l2t->l2tab[idx - sc->vres.l2t.start]; + if (sync) { + const u_int idx = hwidx - sc->vres.l2t.start; + struct l2t_entry *e = &sc->l2t->l2tab[idx]; mtx_lock(&e->lock); if (e->state != L2T_STATE_SWITCHING) { From nobody Mon Oct 21 18:39:09 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGj3rV2z5ZctN; Mon, 21 Oct 2024 18:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGj1xCfz4FxB; Mon, 21 Oct 2024 18:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIgtfmVEIPLUh4nH3TmJnsNUKxwdIKyI4kqmoCRIGUQ=; b=s7zH0W/IeumIDkhFqNaupSq7dNZbQQWeFa1VBawXtJJuM3CnqcDXXi3Mwskan5Q1jTBwVE 5fCdQ0T3RT+F6cB4p1k/DLbVGoKh3ULf5yZWcKqgvVLMIKUqBrb+H6VpsLT0qdyqm/sPJA kpiXbbJ9LbvPjYmCJW9WqVn6P2fGK6Y5ZXTVPByhK8z/hJlewAdsZFuoAKvfnHEASsTfG9 zXfjKRNmEhDsqAqiMI20GfFVeQR1IovcoNte1ba65VzZddB8md6d0+9TEeFNIcMq7ajrMa BZSkGAAaOIDIagxtI7K6/0E4NY3tlgcheuV7p+tT3Ajy4JWL/9D+CRLIpz7cwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIgtfmVEIPLUh4nH3TmJnsNUKxwdIKyI4kqmoCRIGUQ=; b=NQ1pYgzqHzWXDAo/F5WcEZe87wP4emCuMsYa5ERwK0HvjLiP3AgNeg+RvD6mWiayryYeMs h3mmj+JxxjdYLSUQGPwB44UntfXZUZXadjhMxlsMmN9I55P+jkZL8iz3zq7TGz2K9+gAeB MkSiL65qQwWOrgvVkUw4NP7YcTMnYNgu2+w43HlYChIyU7pQr5JxyuLNY4EpKknquU8l/E iz33oMWJAZYXwBCxflTjdMidkPobBmhnM61jFBwQRGm5P4U7LmL+Pkql42wI5/wUXr+bT8 sxXIlPXjc0mVBbSKaqRl32vL8A+uPX0mwWMrjTRAAARiS8RpzK9ZDAj0DZcX4Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535949; a=rsa-sha256; cv=none; b=Tub50TVuFDtp/TxUd30Pot9RX1d1Jzq09ki5RIQ5cCt+DiezfOZ0BhGs46/nJ1I8fqgJ5G I1cRxFpaIU2tJpYWwH7fTA4RC4ytGir6Pt9y/1JuHDJWl94u+6BlYn/7enWn4ZqWElvV1U pbrcrtnE/Qaa6X7n9eqwRAb6JGqKVQ/Ml7RTxTSUyJV3m2eYI92/q01AeyWVxeQEAhVoxM r0V1rU1UukYHDVm7+lFaQvdri2i1EFWUqR2ZVR3di73Z2Cq/YTdzCMJ7cUt9inr7gLes1C DMwlOUXi2Z0QBs7aHMwT9kHk2mzYvb7jSmV9POy2Mn/77fZHrLgB4ifXPC9+vg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGj0qMrzhjJ; Mon, 21 Oct 2024 18:39:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LId9ED036066; Mon, 21 Oct 2024 18:39:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LId9dr036063; Mon, 21 Oct 2024 18:39:09 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:09 GMT Message-Id: <202410211839.49LId9dr036063@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 41e9881bf7a2 - stable/14 - cxgbe(4): Basic infrastructure for ULDs to participate in adapter reset. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 41e9881bf7a2e6c97327a4c331bba86e3a6b6ed2 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=41e9881bf7a2e6c97327a4c331bba86e3a6b6ed2 commit 41e9881bf7a2e6c97327a4c331bba86e3a6b6ed2 Author: Navdeep Parhar AuthorDate: 2024-07-08 17:42:49 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:01:06 +0000 cxgbe(4): Basic infrastructure for ULDs to participate in adapter reset. The suspend/resume/reset implementation in the base driver (LLD) currently works when only stateless features are in use. This commit adds basic infrastructure for stateful upper layer drivers (ULDs) to participate in suspend/resume/reset. * Add a uld_restart to indicate that the adapter has been restarted after a stop and the ULD should resume operations. * Move the existing functionality in t4_suspend/t4_resume to stop_lld and restart_lld. Use these and the new uld restart routines everywhere the adapter has to be stopped abruptly and restarted, namely: 1. PCIE bus suspend/resume/reset methods invoked by the kernel. 2. Manual internal-reset using driver sysctl. 3. Automatic internal-reset on a fatal error. * Implement an alternate internal-reset for use in VMs and for testing. Typical reset sequence is: stop_adapter(sc); stop_lld(sc); stop_all_uld(sc); set_adapter_hwstatus(sc, false); /* hw reset takes place here. */ restart_adapter(sc); restart_lld(sc); set_adapter_hwstatus(sc, true); restart_all_uld(sc); Sponsored by: Chelsio Communications (cherry picked from commit 5241b210a4e1029f3005faf82cd74965645c401b) --- sys/dev/cxgbe/adapter.h | 10 +- sys/dev/cxgbe/offload.h | 1 + sys/dev/cxgbe/t4_main.c | 334 ++++++++++++++++++++++++++---------------------- 3 files changed, 191 insertions(+), 154 deletions(-) diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h index 36529601dffa..0d731e736823 100644 --- a/sys/dev/cxgbe/adapter.h +++ b/sys/dev/cxgbe/adapter.h @@ -1122,11 +1122,19 @@ forwarding_intr_to_fwq(struct adapter *sc) static inline bool hw_off_limits(struct adapter *sc) { - int off_limits = atomic_load_int(&sc->error_flags) & HW_OFF_LIMITS; + const int off_limits = atomic_load_int(&sc->error_flags) & HW_OFF_LIMITS; return (__predict_false(off_limits != 0)); } +static inline bool +adapter_stopped(struct adapter *sc) +{ + const int stopped = atomic_load_int(&sc->error_flags) & ADAP_STOPPED; + + return (__predict_false(stopped != 0)); +} + static inline int mbuf_nsegs(struct mbuf *m) { diff --git a/sys/dev/cxgbe/offload.h b/sys/dev/cxgbe/offload.h index a55d6f45cabf..877fdb6b0a89 100644 --- a/sys/dev/cxgbe/offload.h +++ b/sys/dev/cxgbe/offload.h @@ -212,6 +212,7 @@ struct uld_info { int (*uld_activate)(struct adapter *); int (*uld_deactivate)(struct adapter *); int (*uld_stop)(struct adapter *); + int (*uld_restart)(struct adapter *); }; struct tom_tunables { diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 60572d0c25e8..2388f0863e77 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -861,10 +861,16 @@ static int read_i2c(struct adapter *, struct t4_i2c_data *); static int clear_stats(struct adapter *, u_int); static int hold_clip_addr(struct adapter *, struct t4_clip_addr *); static int release_clip_addr(struct adapter *, struct t4_clip_addr *); +static inline int stop_adapter(struct adapter *); +static inline void set_adapter_hwstatus(struct adapter *, const bool); +static int stop_lld(struct adapter *); +static inline int restart_adapter(struct adapter *); +static int restart_lld(struct adapter *); #ifdef TCP_OFFLOAD static int toe_capability(struct vi_info *, bool); -static int t4_deactivate_all_uld(struct adapter *); +static int deactivate_all_uld(struct adapter *); static void stop_all_uld(struct adapter *); +static void restart_all_uld(struct adapter *); #endif #ifdef KERN_TLS static int ktls_capability(struct adapter *, bool); @@ -1764,7 +1770,7 @@ t4_detach_common(device_t dev) sc = device_get_softc(dev); #ifdef TCP_OFFLOAD - rc = t4_deactivate_all_uld(sc); + rc = deactivate_all_uld(sc); if (rc) { device_printf(dev, "failed to detach upper layer drivers: %d\n", rc); @@ -1909,57 +1915,77 @@ t4_detach_common(device_t dev) return (0); } -static inline bool -ok_to_reset(struct adapter *sc) +static inline int +stop_adapter(struct adapter *sc) { - struct tid_info *t = &sc->tids; - struct port_info *pi; - struct vi_info *vi; - int i, j; - int caps = IFCAP_TOE | IFCAP_NETMAP | IFCAP_TXRTLMT; - - if (is_t6(sc)) - caps |= IFCAP_TXTLS; + if (atomic_testandset_int(&sc->error_flags, ilog2(ADAP_STOPPED))) { + CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x, EALREADY\n", + __func__, curthread, sc->flags, sc->error_flags); + return (EALREADY); + } + CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x\n", __func__, curthread, + sc->flags, sc->error_flags); + return (t4_shutdown_adapter(sc)); +} - ASSERT_SYNCHRONIZED_OP(sc); - MPASS(!(sc->flags & IS_VF)); +static inline int +restart_adapter(struct adapter *sc) +{ + uint32_t val; - for_each_port(sc, i) { - pi = sc->port[i]; - for_each_vi(pi, j, vi) { - if (if_getcapenable(vi->ifp) & caps) - return (false); - } + if (!atomic_testandclear_int(&sc->error_flags, ilog2(ADAP_STOPPED))) { + CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x, EALREADY\n", + __func__, curthread, sc->flags, sc->error_flags); + return (EALREADY); } + CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x\n", __func__, curthread, + sc->flags, sc->error_flags); + + MPASS(hw_off_limits(sc)); + MPASS((sc->flags & FW_OK) == 0); + MPASS((sc->flags & MASTER_PF) == 0); + MPASS(sc->reset_thread == NULL); - if (atomic_load_int(&t->tids_in_use) > 0) - return (false); - if (atomic_load_int(&t->stids_in_use) > 0) - return (false); - if (atomic_load_int(&t->atids_in_use) > 0) - return (false); - if (atomic_load_int(&t->ftids_in_use) > 0) - return (false); - if (atomic_load_int(&t->hpftids_in_use) > 0) - return (false); - if (atomic_load_int(&t->etids_in_use) > 0) - return (false); + /* + * The adapter is supposed to be back on PCIE with its config space and + * BARs restored to their state before reset. Register access via + * t4_read_reg BAR0 should just work. + */ + sc->reset_thread = curthread; + val = t4_read_reg(sc, A_PL_WHOAMI); + if (val == 0xffffffff || val == 0xeeeeeeee) { + CH_ERR(sc, "%s: device registers not readable.\n", __func__); + sc->reset_thread = NULL; + atomic_set_int(&sc->error_flags, ADAP_STOPPED); + return (ENXIO); + } + atomic_clear_int(&sc->error_flags, ADAP_FATAL_ERR); + atomic_add_int(&sc->incarnation, 1); + atomic_add_int(&sc->num_resets, 1); - return (true); + return (0); } -static inline int -stop_adapter(struct adapter *sc) +static inline void +set_adapter_hwstatus(struct adapter *sc, const bool usable) { - if (atomic_testandset_int(&sc->error_flags, ilog2(ADAP_STOPPED))) - return (1); /* Already stopped. */ - return (t4_shutdown_adapter(sc)); + mtx_lock(&sc->reg_lock); + if (usable) { + /* Must be marked reusable by the designated thread. */ + MPASS(sc->reset_thread == curthread); + atomic_clear_int(&sc->error_flags, HW_OFF_LIMITS); + } else { + /* Mark the adapter totally off limits. */ + atomic_set_int(&sc->error_flags, HW_OFF_LIMITS); + sc->flags &= ~(FW_OK | MASTER_PF); + sc->reset_thread = NULL; + } + mtx_unlock(&sc->reg_lock); } static int -t4_suspend(device_t dev) +stop_lld(struct adapter *sc) { - struct adapter *sc = device_get_softc(dev); struct port_info *pi; struct vi_info *vi; if_t ifp; @@ -1974,25 +2000,20 @@ t4_suspend(device_t dev) #endif int rc, i, j, k; - CH_ALERT(sc, "suspend requested\n"); - - rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4sus"); + /* + * XXX: Can there be a synch_op in progress that will hang because + * hardware has been stopped? We'll hang too and the solution will be + * to use a version of begin_synch_op that wakes up existing synch_op + * with errors. Maybe stop_adapter should do this wakeup? + * + * I don't think any synch_op could get stranded waiting for DMA or + * interrupt so I think we're okay here. Remove this comment block + * after testing. + */ + rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4slld"); if (rc != 0) return (ENXIO); - /* XXX: Can the kernel call suspend repeatedly without resume? */ - MPASS(!hw_off_limits(sc)); - - if (!ok_to_reset(sc)) { - /* XXX: should list what resource is preventing suspend. */ - CH_ERR(sc, "not safe to suspend.\n"); - rc = EBUSY; - goto done; - } - - /* No more DMA or interrupts. */ - stop_adapter(sc); - /* Quiesce all activity. */ for_each_port(sc, i) { pi = sc->port[i]; @@ -2069,25 +2090,33 @@ t4_suspend(device_t dev) callout_stop(&sc->cal_callout); callout_drain(&sc->cal_callout); - /* Mark the adapter totally off limits. */ - mtx_lock(&sc->reg_lock); - atomic_set_int(&sc->error_flags, HW_OFF_LIMITS); - sc->flags &= ~(FW_OK | MASTER_PF); - sc->reset_thread = NULL; - mtx_unlock(&sc->reg_lock); - if (t4_clock_gate_on_suspend) { t4_set_reg_field(sc, A_PMU_PART_CG_PWRMODE, F_MA_PART_CGEN | F_LE_PART_CGEN | F_EDC1_PART_CGEN | F_EDC0_PART_CGEN | F_TP_PART_CGEN | F_PDP_PART_CGEN | F_SGE_PART_CGEN, 0); } - CH_ALERT(sc, "suspend completed.\n"); -done: end_synchronized_op(sc, 0); return (rc); } +static int +t4_suspend(device_t dev) +{ + struct adapter *sc = device_get_softc(dev); + + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); + stop_adapter(sc); + stop_lld(sc); +#ifdef TCP_OFFLOAD + stop_all_uld(sc); +#endif + set_adapter_hwstatus(sc, false); + CH_ALERT(sc, "%s end (thread %p).\n", __func__, curthread); + + return (0); +} + struct adapter_pre_reset_state { u_int flags; uint16_t nbmcaps; @@ -2240,9 +2269,8 @@ compare_caps_and_params(struct adapter *sc, struct adapter_pre_reset_state *o) } static int -t4_resume(device_t dev) +restart_lld(struct adapter *sc) { - struct adapter *sc = device_get_softc(dev); struct adapter_pre_reset_state *old_state = NULL; struct port_info *pi; struct vi_info *vi; @@ -2250,37 +2278,18 @@ t4_resume(device_t dev) struct sge_txq *txq; int rc, i, j, k; - CH_ALERT(sc, "resume requested.\n"); - - rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4res"); + rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4rlld"); if (rc != 0) return (ENXIO); - MPASS(hw_off_limits(sc)); - MPASS((sc->flags & FW_OK) == 0); - MPASS((sc->flags & MASTER_PF) == 0); - MPASS(sc->reset_thread == NULL); - sc->reset_thread = curthread; - - /* Register access is expected to work by the time we're here. */ - if (t4_read_reg(sc, A_PL_WHOAMI) == 0xffffffff) { - CH_ERR(sc, "%s: can't read device registers\n", __func__); - rc = ENXIO; - goto done; - } - - /* Note that HW_OFF_LIMITS is cleared a bit later. */ - atomic_clear_int(&sc->error_flags, ADAP_FATAL_ERR | ADAP_STOPPED); /* Restore memory window. */ setup_memwin(sc); /* Go no further if recovery mode has been requested. */ if (TUNABLE_INT_FETCH("hw.cxgbe.sos", &i) && i != 0) { - CH_ALERT(sc, "recovery mode on resume.\n"); + CH_ALERT(sc, "%s: recovery mode during restart.\n", __func__); rc = 0; - mtx_lock(&sc->reg_lock); - atomic_clear_int(&sc->error_flags, HW_OFF_LIMITS); - mtx_unlock(&sc->reg_lock); + set_adapter_hwstatus(sc, true); goto done; } @@ -2346,9 +2355,7 @@ t4_resume(device_t dev) * want to access the hardware too. It is safe to do so. Note that * this thread is still in the middle of a synchronized_op. */ - mtx_lock(&sc->reg_lock); - atomic_clear_int(&sc->error_flags, HW_OFF_LIMITS); - mtx_unlock(&sc->reg_lock); + set_adapter_hwstatus(sc, true); if (sc->flags & FULL_INIT_DONE) { rc = adapter_full_init(sc); @@ -2437,95 +2444,101 @@ t4_resume(device_t dev) /* Reset all calibration */ t4_calibration_start(sc); - done: - if (rc == 0) { - sc->incarnation++; - CH_ALERT(sc, "resume completed.\n"); - } end_synchronized_op(sc, 0); free(old_state, M_CXGBE); return (rc); } static int -t4_reset_prepare(device_t dev, device_t child) +t4_resume(device_t dev) { struct adapter *sc = device_get_softc(dev); - CH_ALERT(sc, "reset_prepare.\n"); + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); + restart_adapter(sc); + restart_lld(sc); +#ifdef TCP_OFFLOAD + restart_all_uld(sc); +#endif + CH_ALERT(sc, "%s end (thread %p).\n", __func__, curthread); + return (0); } static int -t4_reset_post(device_t dev, device_t child) +t4_reset_prepare(device_t dev, device_t child) { struct adapter *sc = device_get_softc(dev); - CH_ALERT(sc, "reset_post.\n"); + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); return (0); } static int -reset_adapter(struct adapter *sc) +t4_reset_post(device_t dev, device_t child) { - int rc, oldinc, error_flags; - - CH_ALERT(sc, "reset requested.\n"); - - rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4rst1"); - if (rc != 0) - return (EBUSY); - - if (hw_off_limits(sc)) { - CH_ERR(sc, "adapter is suspended, use resume (not reset).\n"); - rc = ENXIO; - goto done; - } + struct adapter *sc = device_get_softc(dev); - if (!ok_to_reset(sc)) { - /* XXX: should list what resource is preventing reset. */ - CH_ERR(sc, "not safe to reset.\n"); - rc = EBUSY; - goto done; - } + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); + return (0); +} -done: - oldinc = sc->incarnation; - end_synchronized_op(sc, 0); - if (rc != 0) - return (rc); /* Error logged already. */ +static int +reset_adapter_with_pci_bus_reset(struct adapter *sc) +{ + int rc; - atomic_add_int(&sc->num_resets, 1); mtx_lock(&Giant); rc = BUS_RESET_CHILD(device_get_parent(sc->dev), sc->dev, 0); mtx_unlock(&Giant); - if (rc != 0) - CH_ERR(sc, "bus_reset_child failed: %d.\n", rc); - else { - rc = begin_synchronized_op(sc, NULL, SLEEP_OK, "t4rst2"); - if (rc != 0) - return (EBUSY); - error_flags = atomic_load_int(&sc->error_flags); - if (sc->incarnation > oldinc && error_flags == 0) { - CH_ALERT(sc, "bus_reset_child succeeded.\n"); - } else { - CH_ERR(sc, "adapter did not reset properly, flags " - "0x%08x, error_flags 0x%08x.\n", sc->flags, - error_flags); - rc = ENXIO; - } - end_synchronized_op(sc, 0); - } - return (rc); } +static int +reset_adapter_with_pl_rst(struct adapter *sc) +{ + stop_adapter(sc); + stop_lld(sc); +#ifdef TCP_OFFLOAD + stop_all_uld(sc); +#endif + set_adapter_hwstatus(sc, false); + + /* This is a t4_write_reg without the hw_off_limits check. */ + MPASS(sc->error_flags & HW_OFF_LIMITS); + bus_space_write_4(sc->bt, sc->bh, A_PL_RST, + F_PIORSTMODE | F_PIORST | F_AUTOPCIEPAUSE); + pause("pl_rst", 1 * hz); /* Wait 1s for reset */ + + restart_adapter(sc); + restart_lld(sc); +#ifdef TCP_OFFLOAD + restart_all_uld(sc); +#endif + + return (0); +} + static void reset_adapter_task(void *arg, int pending) { - /* XXX: t4_async_event here? */ - reset_adapter(arg); + struct adapter *sc = arg; + const int flags = sc->flags; + const int eflags = sc->error_flags; + int rc; + + if (pending > 1) + CH_ALERT(sc, "%s: pending %d\n", __func__, pending); + if (vm_guest == 0) + rc = reset_adapter_with_pci_bus_reset(sc); + else + rc = reset_adapter_with_pl_rst(sc); + if (rc != 0) { + CH_ERR(sc, "adapter did not reset properly, rc = %d, " + "flags 0x%08x -> 0x%08x, err_flags 0x%08x -> 0x%08x.\n", + rc, flags, sc->flags, eflags, sc->error_flags); + } } static int @@ -3615,9 +3628,6 @@ fatal_error_task(void *arg, int pending) struct adapter *sc = arg; int rc; -#ifdef TCP_OFFLOAD - stop_all_uld(sc); -#endif if (atomic_testandclear_int(&sc->error_flags, ilog2(ADAP_CIM_ERR))) { dump_cim_regs(sc); dump_cimla(sc); @@ -3625,8 +3635,8 @@ fatal_error_task(void *arg, int pending) } if (t4_reset_on_fatal_err) { - CH_ALERT(sc, "resetting on fatal error.\n"); - rc = reset_adapter(sc); + CH_ALERT(sc, "resetting adapter after fatal error.\n"); + rc = reset_adapter_with_pci_bus_reset(sc); if (rc == 0 && t4_panic_on_fatal_err) { CH_ALERT(sc, "reset was successful, " "system will NOT panic.\n"); @@ -12599,7 +12609,7 @@ t4_deactivate_uld(struct adapter *sc, int id) } static int -t4_deactivate_all_uld(struct adapter *sc) +deactivate_all_uld(struct adapter *sc) { int i, rc; @@ -12639,6 +12649,24 @@ stop_all_uld(struct adapter *sc) end_synchronized_op(sc, 0); } +static void +restart_all_uld(struct adapter *sc) +{ + int i; + + if (begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4uldre") != 0) + return; + sx_slock(&t4_uld_list_lock); + for (i = 0; i <= ULD_MAX; i++) { + if (t4_uld_list[i] == NULL || !uld_active(sc, i) || + t4_uld_list[i]->uld_restart == NULL) + continue; + (void) t4_uld_list[i]->uld_restart(sc); + } + sx_sunlock(&t4_uld_list_lock); + end_synchronized_op(sc, 0); +} + int uld_active(struct adapter *sc, int id) { From nobody Mon Oct 21 18:39:10 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGk45nBz5ZcwX; Mon, 21 Oct 2024 18:39: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGk2MLvz4Fgh; Mon, 21 Oct 2024 18:39:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535950; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vd40LtQelcIzY3YrYnSf619dbmJQ2zmD6j1r3A15mwA=; b=i/dO0UBz8ge4qokGdq7XDWOv/cPuO9EyJxtIpqZNzaoO+UIKaTspukmbNFPIvbyUhPF2AM VrKCr6qE7L2uyaB+w+SEzOZPoepAzuhexdHtQRE3BXgvCDH4phWbQ65xG4rLo7M2i6xYWR hnZRmZc3/43GobuLt06ZeocqgYCK6epK43G7TECa03tvlsAUpSeJ+SIO0YuFFOYXwSCFYO uZ5EYXUv2i13KHVvBWck3l6n5qSPJNYnrxV4Y/H2DOZisXOk5/MNuGodrDlEgYltp+EfW2 KW4dJ+2rPF5yRQn0OOIojaufy3hb4nwoSdrg3WXv2QG3a9Otj7yAG26F1EWM4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535950; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vd40LtQelcIzY3YrYnSf619dbmJQ2zmD6j1r3A15mwA=; b=jf8IhMaSvL/+cq4x0sGnaw1nI+50YA/IKkLNvlHGPL09+7u/BpCpaLP4l/NhbjcPJhfMqF SOQJiadtTYfiY0c33T0ExZM8cWoxEQ1HGi17V0On/v3X3xqSuDNnJ/ndnHKFVcIRClPwGw 9drGgf95ahSG+HjaCMtOJvZD0KLcwHhvukHSfTPf/i6VWQkKJFuM5wfsko6A4tcQzP75bl q9L+AFmVY8Ay5kKF3bMhOnHZVM4o/7lb2SmaJA3RXJuS66sv0aAFNzczplQTu6rhVXxACc glUAW9OEDe45NWw21xOV765sP7mzqbcmyJKn5aqzBZzSpOfH7lh3GsPmoxIUJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535950; a=rsa-sha256; cv=none; b=BNH529b9Pf2j3/d29LoPNA9xQrtaOLCph2aw1Fk3iI0ddQF2u/NJMvBG+CvPi05HRls66t 134rJeUNM++25IWUwYInYtYaeZBc34rz60ackto8DYlJ5kt6vcECBbEwtwTSj0WVqI7xfA tOngixLvzilcNPOwqcrCbZCimmJ8MF0ZNdkGnuG0q+umdIQuvX0f8yE7JI/QR+bKM8v3Va 3V0ncyShgHEQdWI8mLF/qhiWampTW3S6WtotzY+qHyys7NnhdnkMqmnIOjGtisMn5diEaP 2zPEvHWsBiOinopwHSZv5aqDILDesW9DZdPQGG+r8FgLb9tvJWKlTo6DewOZ5A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGk1wxNzhYK; Mon, 21 Oct 2024 18:39: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 49LIdAhL036128; Mon, 21 Oct 2024 18:39:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdA0I036125; Mon, 21 Oct 2024 18:39:10 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:10 GMT Message-Id: <202410211839.49LIdA0I036125@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: fb313ad44d51 - stable/14 - cxgbe(4): Stop and restart the atid allocator with the LLD. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: fb313ad44d5143cc03446bc239fd2437f0e03bd8 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=fb313ad44d5143cc03446bc239fd2437f0e03bd8 commit fb313ad44d5143cc03446bc239fd2437f0e03bd8 Author: Navdeep Parhar AuthorDate: 2024-07-12 23:53:22 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:01:50 +0000 cxgbe(4): Stop and restart the atid allocator with the LLD. atids are used by both filters and TOE and the atid table is in the base driver (LLD). New atids cannot be allocated when the allocator is stopped but existing ones can still be freed. It is expected that the owners of outstanding atids will release them in their own stop processing, before the adapter is restarted. Sponsored by: Chelsio Communications (cherry picked from commit fd3aca5b41968421f243b760ac5733f39f25cc56) --- sys/dev/cxgbe/offload.h | 1 + sys/dev/cxgbe/t4_main.c | 33 ++++++++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/offload.h b/sys/dev/cxgbe/offload.h index 877fdb6b0a89..b17056dc0338 100644 --- a/sys/dev/cxgbe/offload.h +++ b/sys/dev/cxgbe/offload.h @@ -151,6 +151,7 @@ struct tid_info { union aopen_entry *atid_tab; union aopen_entry *afree; u_int atids_in_use; + bool atid_alloc_stopped; /* High priority filters and normal filters share the lock and cv. */ struct mtx ftid_lock __aligned(CACHE_LINE_SIZE); diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 2388f0863e77..f1f1cccb93c2 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -780,6 +780,8 @@ static int t4_alloc_irq(struct adapter *, struct irq *, int rid, static int t4_free_irq(struct adapter *, struct irq *); static void t4_init_atid_table(struct adapter *); static void t4_free_atid_table(struct adapter *); +static void stop_atid_allocator(struct adapter *); +static void restart_atid_allocator(struct adapter *); static void get_regs(struct adapter *, struct t4_regdump *, uint8_t *); static void vi_refresh_stats(struct vi_info *); static void cxgbe_refresh_stats(struct vi_info *); @@ -2097,6 +2099,9 @@ stop_lld(struct adapter *sc) } end_synchronized_op(sc, 0); + + stop_atid_allocator(sc); + return (rc); } @@ -2447,6 +2452,9 @@ restart_lld(struct adapter *sc) done: end_synchronized_op(sc, 0); free(old_state, M_CXGBE); + + restart_atid_allocator(sc); + return (rc); } @@ -3941,6 +3949,7 @@ t4_init_atid_table(struct adapter *sc) mtx_init(&t->atid_lock, "atid lock", NULL, MTX_DEF); t->afree = t->atid_tab; t->atids_in_use = 0; + t->atid_alloc_stopped = false; for (i = 1; i < t->natids; i++) t->atid_tab[i - 1].next = &t->atid_tab[i]; t->atid_tab[t->natids - 1].next = NULL; @@ -3962,6 +3971,28 @@ t4_free_atid_table(struct adapter *sc) t->atid_tab = NULL; } +static void +stop_atid_allocator(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + + mtx_lock(&t->atid_lock); + t->atid_alloc_stopped = true; + mtx_unlock(&t->atid_lock); +} + +static void +restart_atid_allocator(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + + mtx_lock(&t->atid_lock); + KASSERT(t->atids_in_use == 0, + ("%s: %d atids still in use.", __func__, t->atids_in_use)); + t->atid_alloc_stopped = false; + mtx_unlock(&t->atid_lock); +} + int alloc_atid(struct adapter *sc, void *ctx) { @@ -3969,7 +4000,7 @@ alloc_atid(struct adapter *sc, void *ctx) int atid = -1; mtx_lock(&t->atid_lock); - if (t->afree) { + if (t->afree && !t->atid_alloc_stopped) { union aopen_entry *p = t->afree; atid = p - t->atid_tab; From nobody Mon Oct 21 18:39:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGl4Tkvz5Zcdd; Mon, 21 Oct 2024 18:39:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGl3QWSz4G0R; Mon, 21 Oct 2024 18:39:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ULQGTgAAf3kdMcN8bnQC0xJ3MIT06YkAy/Wc2kBBh2o=; b=p9O1gwv5lZ2ejBFJVxcYeWk002AVZViWnrj2a0S71QedeLLUStGpSHzYAus/s94gAUUbTS MUQNoyemC1iS2dm87rdT7slQJdWlmhjHjkdmmiwoEwp24lSROYbewG2guP+TR2o5qL0fmw KEfib2p/px1fS7xCvJGj9ve8Zb7EBlIdjj9HUwmrhAx78xo9rmf5K5a6i7idwqqtWpWB5k EWuOnPDFtXylJHjrlU4Da4+jDlbE5j3DLtXlmm/vkT7SExUnvsXgPnInINFnDVzP/tXofG ea/k6q/1Ngawoz1spcvsbwe/bwrRVCCGNSHty+DnerFmZ8s+SHYpkv7hoSgetQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ULQGTgAAf3kdMcN8bnQC0xJ3MIT06YkAy/Wc2kBBh2o=; b=ELPJHYnv2Fp4yZN7I7fCjny/0Giv323gxkXgxvzRGpp8UoWD69nF0O/6FAI0Xq0L0O2YWZ nLXtjTxwIjUNHNIfpJXrCouHEOMoJWG02nT9aNk10HViBwCjReD5t4WyYrleGFIYhkBiPb lNKTRBF5estSp1dsTYWOWel8fSyjwGPfRIGwB1W8dUvieuP5nq6uNadMFVUJX/cyTcM/cO meGjvAWqD0PW8MnCnBALyGyBT+xGknBkVV8DZT3F1hdLRlPb1j1WHDi6FWmnjyS/bmaZ2l cvouQkTerbsG8oE16LcgvqlKwmzCsusPp8ajmiHgW6WudwSOhHLuqFbXbo7xBw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535951; a=rsa-sha256; cv=none; b=RU7ktkbT5BQXkeWrtmx0G8Z6OJY/JNUfojlUp1syH9Ws3MZhac1pswF/bd1LD9CIvybdvs R9b7t4vg6woVhbB8qH7SzjtNEKN/dwVdZVAO4uy0/QJZzUvx5MT7BMOu1tMokWnZHFKpwE VgcjE1DlM30yn70udQNdSf483GcfGb7jP3UiId9LMp6CV8ev6XXjMavMcnzI72++DQNgRB Du1OEDle/WoOxTZ14F2jZA7eeYNwkFqggmt7Gt1HpuUD3AzbVZ7iZNbBCjw5McIyyIAurs StDcBCmW3ttwmYfhl/C+wVS03g7DstXu5pqR0yuSftUlQqgTthPmsmHT32lyNw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGl2zXvzhSP; Mon, 21 Oct 2024 18:39: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 49LIdBeG036186; Mon, 21 Oct 2024 18:39:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdBb7036183; Mon, 21 Oct 2024 18:39:11 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:11 GMT Message-Id: <202410211839.49LIdBb7036183@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: da45eba6d1de - stable/14 - cxgbe(4): Stop and restart the L2T allocator with the LLD. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: da45eba6d1de7fd334f1928258117d6b5b61f856 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=da45eba6d1de7fd334f1928258117d6b5b61f856 commit da45eba6d1de7fd334f1928258117d6b5b61f856 Author: Navdeep Parhar AuthorDate: 2024-07-19 16:40:44 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:02:17 +0000 cxgbe(4): Stop and restart the L2T allocator with the LLD. L2T entries are used by both filters and TOE and the L2T is shared between the base driver (LLD) and the TOM ULD. Add a flag to indicate that the L2T is stopped, which means: * t4_alloc_l2e and t4_l2t_alloc_switching will not allocate new entries. * t4_tom will ignore all ARP/NDP updates from the kernel. * Previously allocated L2T entries can still be freed. Sponsored by: Chelsio Communications (cherry picked from commit cd93fdee5c8bbdb00d10f8a1fa43f30f151a1ef7) --- sys/dev/cxgbe/t4_l2t.c | 36 +++++++++++++++++++++++++++++++++--- sys/dev/cxgbe/t4_l2t.h | 5 ++++- sys/dev/cxgbe/t4_main.c | 4 +++- sys/dev/cxgbe/tom/t4_tom_l2t.c | 7 +++++++ 4 files changed, 47 insertions(+), 5 deletions(-) diff --git a/sys/dev/cxgbe/t4_l2t.c b/sys/dev/cxgbe/t4_l2t.c index 90f184f5e666..b210003cfac0 100644 --- a/sys/dev/cxgbe/t4_l2t.c +++ b/sys/dev/cxgbe/t4_l2t.c @@ -73,7 +73,8 @@ t4_alloc_l2e(struct l2t_data *d) struct l2t_entry *end, *e, **p; rw_assert(&d->lock, RA_WLOCKED); - + if (__predict_false(d->l2t_stopped)) + return (NULL); if (!atomic_load_acq_int(&d->nfree)) return (NULL); @@ -291,7 +292,10 @@ t4_l2t_alloc_switching(struct adapter *sc, uint16_t vlan, uint8_t port, int rc; rw_wlock(&d->lock); - e = find_or_alloc_l2e(d, vlan, port, eth_addr); + if (__predict_false(d->l2t_stopped)) + e = NULL; + else + e = find_or_alloc_l2e(d, vlan, port, eth_addr); if (e) { if (atomic_load_acq_int(&e->refcnt) == 0) { mtx_lock(&e->lock); /* avoid race with t4_l2t_free */ @@ -333,6 +337,7 @@ t4_init_l2t(struct adapter *sc, int flags) return (ENOMEM); d->l2t_size = l2t_size; + d->l2t_stopped = false; d->rover = d->l2tab; atomic_store_rel_int(&d->nfree, l2t_size); rw_init(&d->lock, "L2T"); @@ -353,8 +358,9 @@ t4_init_l2t(struct adapter *sc, int flags) } int -t4_free_l2t(struct l2t_data *d) +t4_free_l2t(struct adapter *sc) { + struct l2t_data *d = sc->l2t; int i; for (i = 0; i < d->l2t_size; i++) @@ -365,6 +371,30 @@ t4_free_l2t(struct l2t_data *d) return (0); } +int +t4_stop_l2t(struct adapter *sc) +{ + struct l2t_data *d = sc->l2t; + + rw_wlock(&d->lock); + d->l2t_stopped = true; + rw_wunlock(&d->lock); + + return (0); +} + +int +t4_restart_l2t(struct adapter *sc) +{ + struct l2t_data *d = sc->l2t; + + rw_wlock(&d->lock); + d->l2t_stopped = false; + rw_wunlock(&d->lock); + + return (0); +} + int do_l2t_write_rpl(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) diff --git a/sys/dev/cxgbe/t4_l2t.h b/sys/dev/cxgbe/t4_l2t.h index 991b4476eb61..f8681a4ab556 100644 --- a/sys/dev/cxgbe/t4_l2t.h +++ b/sys/dev/cxgbe/t4_l2t.h @@ -79,6 +79,7 @@ struct l2t_entry { struct l2t_data { struct rwlock lock; u_int l2t_size; + bool l2t_stopped; volatile int nfree; /* number of free entries */ struct l2t_entry *rover;/* starting point for next allocation */ struct l2t_entry l2tab[]; @@ -86,7 +87,9 @@ struct l2t_data { int t4_init_l2t(struct adapter *, int); -int t4_free_l2t(struct l2t_data *); +int t4_free_l2t(struct adapter *); +int t4_stop_l2t(struct adapter *); +int t4_restart_l2t(struct adapter *); struct l2t_entry *t4_alloc_l2e(struct l2t_data *); struct l2t_entry *t4_l2t_alloc_switching(struct adapter *, uint16_t, uint8_t, uint8_t *); diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index f1f1cccb93c2..c02fe8372946 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -1847,7 +1847,7 @@ t4_detach_common(device_t dev) sc->msix_res); if (sc->l2t) - t4_free_l2t(sc->l2t); + t4_free_l2t(sc); if (sc->smt) t4_free_smt(sc->smt); t4_free_atid_table(sc); @@ -2101,6 +2101,7 @@ stop_lld(struct adapter *sc) end_synchronized_op(sc, 0); stop_atid_allocator(sc); + t4_stop_l2t(sc); return (rc); } @@ -2454,6 +2455,7 @@ done: free(old_state, M_CXGBE); restart_atid_allocator(sc); + t4_restart_l2t(sc); return (rc); } diff --git a/sys/dev/cxgbe/tom/t4_tom_l2t.c b/sys/dev/cxgbe/tom/t4_tom_l2t.c index ee442f023970..749e5704863e 100644 --- a/sys/dev/cxgbe/tom/t4_tom_l2t.c +++ b/sys/dev/cxgbe/tom/t4_tom_l2t.c @@ -380,6 +380,10 @@ t4_l2t_get(struct port_info *pi, if_t ifp, struct sockaddr *sa) hash = l2_hash(d, sa, if_getindex(ifp)); rw_wlock(&d->lock); + if (__predict_false(d->l2t_stopped)) { + e = NULL; + goto done; + } for (e = d->l2tab[hash].first; e; e = e->next) { if (l2_cmp(sa, e) == 0 && e->ifp == ifp && e->vlan == vtag && e->smt_idx == smt_idx) { @@ -429,6 +433,8 @@ t4_l2_update(struct toedev *tod, if_t ifp, struct sockaddr *sa, hash = l2_hash(d, sa, if_getindex(ifp)); rw_rlock(&d->lock); + if (__predict_false(d->l2t_stopped)) + goto done; for (e = d->l2tab[hash].first; e; e = e->next) { if (l2_cmp(sa, e) == 0 && e->ifp == ifp) { mtx_lock(&e->lock); @@ -439,6 +445,7 @@ t4_l2_update(struct toedev *tod, if_t ifp, struct sockaddr *sa, break; } } +done: rw_runlock(&d->lock); /* From nobody Mon Oct 21 18:39:12 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGn09S4z5Zctc; Mon, 21 Oct 2024 18:39:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGm4T5zz4FpQ; Mon, 21 Oct 2024 18:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZwwZQSxoqXf4+ZRVjxVbs+YrudIQ5vcx0xkYUtSxhHk=; b=oZL8GbnDASkc7ShA+Ae6U12H0OBeH+FKoPMWNOQtaoShHe4LHEeeiHL2XQdRLRYrkxxMcV h/UMX32Dm+gb2GwRGvdLtRtSIyz4mx0zmLjJHqaKQiMyVknOg+dJd8rnUBogsQa3+vXQwH zarcL4MDrplFkEeKjDMuAvVSBfKsK+R9Vv+w+XgqBlTeLQbGzZXDwPu6gKzkH/f8JKIfna QpwNa+F3u6HGeiFJIc0Yx8R6AKp0LKXS8x3n0H85kdrXfA84FV6k1p+VqHf6YPvhU8MLkj nXkpSeKNdBzOgavSKwRWAdPrkvpSLN6Up6tl1ZmtCPRqLgxoSIJ8Hdur9detcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535952; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZwwZQSxoqXf4+ZRVjxVbs+YrudIQ5vcx0xkYUtSxhHk=; b=VSYe5sJHd2GsCk85wDc3LXW3+3qdSUsmDc8UZR1IhoXr5hosCRfCNenfapbZA+Hay+9Mnu AjtB9ajonF7DDvCmlNtHEmr+rNmvu2aINsNdQYjSnHtCUXCqUQa9u2Geh0rvCP6hy8sv1k VPgDegD3IiDMTeZyJVaETO1stUUhC2XpuRZhvkXA61RKjbnJoA75IGt9zKcFyIR2HtOHun IfhYNOCcjwJpQNYTb6i89frHw9yoAR0e6SlOkjZoeFmWh8DMJ6bqdN+3eWeTPTLH14TU7E IwqTAbUWjcMK4SJKp4GfwSI9q7pIkVI//3in96uEACW3zKbrN0bGLV+co0w7Xw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535952; a=rsa-sha256; cv=none; b=IDph2D2E+UK4LYb7lvGbzBkHBQqsX1obEmo/M/fscovqJOPNALlfRlBvH5aqNKjuXU9Dqh c7G/H2sSbKRu1kVHk2ckkAqkj7Zfb2geMDadTgyny/U24kAznnNApLpsLUyaPei4p29Iv6 cOEOcJwxCAMb8Q6TtQ0oRsU8PaWoQ7rdwNAHfAUCM+4scUr1Pjp9MrksRjtQXDzrKEXEEg cmw0kG9Dkw0spxjHyIagENr8nOcs87UUJIA4ojQ3Zo2McEXdht4ijLBhx327mHy9bc89R2 IaNekbdqMYm7B8zGH5rS0c97K8Y/YnWI0fOvgEnxGZJ5Oy6q5z8gGvv4y9bEvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGm44gmzhQP; Mon, 21 Oct 2024 18:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdCNo036252; Mon, 21 Oct 2024 18:39:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdCpJ036249; Mon, 21 Oct 2024 18:39:12 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:12 GMT Message-Id: <202410211839.49LIdCpJ036249@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: fcda529bf01a - stable/14 - cxgbe/t4_tom: Track all synq entries in a per-adapter list. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: fcda529bf01aa1ad2dd44c5209b92992b5531f24 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=fcda529bf01aa1ad2dd44c5209b92992b5531f24 commit fcda529bf01aa1ad2dd44c5209b92992b5531f24 Author: Navdeep Parhar AuthorDate: 2024-07-20 19:38:42 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:02:37 +0000 cxgbe/t4_tom: Track all synq entries in a per-adapter list. Live tid entries in tid_tab are either full fledged connections or synq entries. toep_list tracks the connections already and this change adds a synqe_list to track the synq entries. These two lists can be used to enumerate and iterate over all live tids. Sponsored by: Chelsio Communications (cherry picked from commit 283333c0e329fd7aceff16fa3bf2b9892744d883) --- sys/dev/cxgbe/tom/t4_listen.c | 12 ++++++++++++ sys/dev/cxgbe/tom/t4_tom.c | 2 ++ sys/dev/cxgbe/tom/t4_tom.h | 2 ++ 3 files changed, 16 insertions(+) diff --git a/sys/dev/cxgbe/tom/t4_listen.c b/sys/dev/cxgbe/tom/t4_listen.c index d25c161d3f8d..6e8361734db7 100644 --- a/sys/dev/cxgbe/tom/t4_listen.c +++ b/sys/dev/cxgbe/tom/t4_listen.c @@ -849,6 +849,7 @@ do_close_server_rpl(struct sge_iq *iq, const struct rss_header *rss, static void done_with_synqe(struct adapter *sc, struct synq_entry *synqe) { + struct tom_data *td = sc->tom_softc; struct listen_ctx *lctx = synqe->lctx; struct inpcb *inp = lctx->inp; struct l2t_entry *e = &sc->l2t->l2tab[synqe->params.l2t_idx]; @@ -858,6 +859,9 @@ done_with_synqe(struct adapter *sc, struct synq_entry *synqe) ntids = inp->inp_vflag & INP_IPV6 ? 2 : 1; remove_tid(sc, synqe->tid, ntids); + mtx_lock(&td->toep_list_lock); + TAILQ_REMOVE(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); release_tid(sc, synqe->tid, lctx->ctrlq); t4_l2t_release(e); inp = release_synqe(sc, synqe); @@ -961,6 +965,7 @@ void t4_offload_socket(struct toedev *tod, void *arg, struct socket *so) { struct adapter *sc = tod->tod_softc; + struct tom_data *td = sc->tom_softc; struct synq_entry *synqe = arg; struct inpcb *inp = sotoinpcb(so); struct toepcb *toep = synqe->toep; @@ -976,6 +981,9 @@ t4_offload_socket(struct toedev *tod, void *arg, struct socket *so) toep->flags |= TPF_CPL_PENDING; update_tid(sc, synqe->tid, toep); synqe->flags |= TPF_SYNQE_EXPANDED; + mtx_lock(&td->toep_list_lock); + TAILQ_REMOVE(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); inp->inp_flowtype = (inp->inp_vflag & INP_IPV6) ? M_HASHTYPE_RSS_TCP_IPV6 : M_HASHTYPE_RSS_TCP_IPV4; inp->inp_flowid = synqe->rss_hash; @@ -1177,6 +1185,7 @@ do_pass_accept_req(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) { struct adapter *sc = iq->adapter; + struct tom_data *td = sc->tom_softc; struct toedev *tod; const struct cpl_pass_accept_req *cpl = mtod(m, const void *); unsigned int stid = G_PASS_OPEN_TID(be32toh(cpl->tos_stid)); @@ -1383,6 +1392,9 @@ found: REJECT_PASS_ACCEPT_REQ(true); } + mtx_lock(&td->toep_list_lock); + TAILQ_INSERT_TAIL(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); CTR6(KTR_CXGBE, "%s: stid %u, tid %u, synqe %p, opt0 %#016lx, opt2 %#08x", __func__, stid, tid, synqe, be64toh(opt0), be32toh(opt2)); diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index f9d8dcd706b7..fb92c88aa358 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -1831,6 +1831,7 @@ t4_tom_activate(struct adapter *sc) /* List of TOE PCBs and associated lock */ mtx_init(&td->toep_list_lock, "PCB list lock", NULL, MTX_DEF); TAILQ_INIT(&td->toep_list); + TAILQ_INIT(&td->synqe_list); /* Listen context */ mtx_init(&td->lctx_hash_lock, "lctx hash lock", NULL, MTX_DEF); @@ -1915,6 +1916,7 @@ t4_tom_deactivate(struct adapter *sc) mtx_lock(&td->toep_list_lock); if (!TAILQ_EMPTY(&td->toep_list)) rc = EBUSY; + MPASS(TAILQ_EMPTY(&td->synqe_list)); mtx_unlock(&td->toep_list_lock); mtx_lock(&td->lctx_hash_lock); diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index fb74642d61f7..0bc368fe3d56 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -269,6 +269,7 @@ struct synq_entry { struct listen_ctx *lctx; /* backpointer to listen ctx */ struct mbuf *syn; int flags; /* same as toepcb's tp_flags */ + TAILQ_ENTRY(synq_entry) link; /* synqe_list */ volatile int ok_to_respond; volatile u_int refcnt; int tid; @@ -329,6 +330,7 @@ struct tom_data { /* toepcb's associated with this TOE device */ struct mtx toep_list_lock; TAILQ_HEAD(, toepcb) toep_list; + TAILQ_HEAD(, synq_entry) synqe_list; struct mtx lctx_hash_lock; LIST_HEAD(, listen_ctx) *listen_hash; From nobody Mon Oct 21 18:39:13 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGn6l2pz5Zcdl; Mon, 21 Oct 2024 18:39:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGn5SBVz4Fvg; Mon, 21 Oct 2024 18:39:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535953; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N9Vw88g7p8ApH+rSFU0BaLPpeNBRJ7Xl3H2dlmzkxzU=; b=JOaLtAygNMSz19eTh92W105P94i24ilBwZfI8yrUvvUyygwUVF514MTVSchlFXlg1pEqeh DFtnEtsVKLB0r2AwwfhYca9nCC+AqeiPd/XR7pzLrYubqnQYV0vTWsIs8seKrH4LsKdB1D hgvy0Fer0bL4RTA5oXQ3TZ7bnjVI43SLBj95pkeeYd+BLkycgrs27h1NqUJqJGbj51Z/8I 90avBg2v1Cx3AYQQlZ5W8Pb56B1xX/KSaXQxW4Rxdpou1fHaveWCBwEmQGnF7Xe+c2sd7i FwsihB3ybMH1APxTmR36qRWnOsy4iFK+9V0LnhLmfIwu1ha580rHV7XUkA0njQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535953; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N9Vw88g7p8ApH+rSFU0BaLPpeNBRJ7Xl3H2dlmzkxzU=; b=aFo/wrc6IkXInI/yuifTIplKZDtXIwYT/to5nC5PvJCO6WQlawZbPddkdfiStVdaZJ9GW6 peyxtNtmcXqHGFl0hE1jahqzZsitcswQAQsTee5KP8lRh+8dZj13bwYHRFBCVP7XIKmZGx O4pL89yd4skV8Aalj0yH+lNAy7jipQ2wFF1QL/usIAjUtuAlGY6xjs9jN8nPvOejD0R8Od 6Ju52UDYGla7uTUotWmxEJ29fBEg72YGjRXSBTDlYYbUlP7rbcOGpOEGx/Cvb7bjd3ygPK eXvbLb2zJShKk23NZJ5DxfE6ylcIAWBVDZWp8U1ZvsQINTWPUviy6x/JOYuxCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535953; a=rsa-sha256; cv=none; b=W2zi8YW6zk/3WA80j42Q1Ku8mybpnIgLFstw+v0Zb5GYejP7eW446f8oTqq5p1N6rNOdR6 VLVtJww1nkFyH4cn+p4rTMrYfXP5hAuMFYl5Bkb9KB8rxIci3sEkCmkyh4VUWIqQeyfrrI TC8fll9KDjCoio4eVTc3vHFRJUcTQRFhpUO0turSAjXUUZyZIVE5c+YbjVUNB+ZMPwq0ff AkNqqPxGb3+5igy8WVM7MS5EBapppTkIo99/VCOzlUMMJEGP4rCeKwgcU/lmN/Th8DHQtM CnGfqXfBgKaRVPLSzT1BVvP5DFoq+zYal6+GJeYQrjTm0uOKPghy/iLELGsyFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGn51sszh86; Mon, 21 Oct 2024 18:39: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 49LIdDjq036300; Mon, 21 Oct 2024 18:39:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdDt1036297; Mon, 21 Oct 2024 18:39:13 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:13 GMT Message-Id: <202410211839.49LIdDt1036297@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: b836830270f5 - stable/14 - cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b836830270f5c736430fd9358dc26ffad1537a3f Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=b836830270f5c736430fd9358dc26ffad1537a3f commit b836830270f5c736430fd9358dc26ffad1537a3f Author: Navdeep Parhar AuthorDate: 2024-07-12 23:56:15 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:03:14 +0000 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. This allows the adapter to be suspended or reset even when stateful TOE is active, in some limited configurations. The LLD has already stopped the adapter hardware and all its queues by the time these ULD routines get called. The general approach in t4_tom is to purge the lookup tables immediately so that they are ready for operation by the time the adapter resumes, and park all the resources left hanging by the stopped hardware into separate "stranded" queues that can be dealt with at leisure. Outstanding active opens, live connections, and synq entries (for connections in the middle of the 3-way handshake) are all treated as if the hardware had reported an abrupt error for the tid. The servers/listeners are a bit different in that no error is reported. They're just noted as non-functional when the hardware stops and are recreated by the driver during restart. Sponsored by: Chelsio Communications (cherry picked from commit c1c524852f625cf5f420653f7850d1fe3ff6b4ca) --- sys/dev/cxgbe/offload.h | 1 + sys/dev/cxgbe/tom/t4_connect.c | 11 +- sys/dev/cxgbe/tom/t4_listen.c | 136 ++++++++++++++++-- sys/dev/cxgbe/tom/t4_tom.c | 314 ++++++++++++++++++++++++++++++++++------- sys/dev/cxgbe/tom/t4_tom.h | 19 ++- 5 files changed, 409 insertions(+), 72 deletions(-) diff --git a/sys/dev/cxgbe/offload.h b/sys/dev/cxgbe/offload.h index b17056dc0338..c13901ee1a59 100644 --- a/sys/dev/cxgbe/offload.h +++ b/sys/dev/cxgbe/offload.h @@ -146,6 +146,7 @@ struct tid_info { u_int stids_in_use; u_int nstids_free_head; /* # of available stids at the beginning */ struct stid_head stids; + bool stid_tab_stopped; struct mtx atid_lock __aligned(CACHE_LINE_SIZE); union aopen_entry *atid_tab; diff --git a/sys/dev/cxgbe/tom/t4_connect.c b/sys/dev/cxgbe/tom/t4_connect.c index 4e81f23dc267..1c98e70a4df5 100644 --- a/sys/dev/cxgbe/tom/t4_connect.c +++ b/sys/dev/cxgbe/tom/t4_connect.c @@ -110,15 +110,16 @@ done: } void -act_open_failure_cleanup(struct adapter *sc, u_int atid, u_int status) +act_open_failure_cleanup(struct adapter *sc, struct toepcb *toep, u_int status) { - struct toepcb *toep = lookup_atid(sc, atid); struct inpcb *inp = toep->inp; struct toedev *tod = &toep->td->tod; struct epoch_tracker et; - free_atid(sc, atid); - toep->tid = -1; + if (toep->tid >= 0) { + free_atid(sc, toep->tid); + toep->tid = -1; + } CURVNET_SET(toep->vnet); if (status != EAGAIN) @@ -158,7 +159,7 @@ do_act_open_rpl(struct sge_iq *iq, const struct rss_header *rss, release_tid(sc, GET_TID(cpl), toep->ctrlq); rc = act_open_rpl_status_to_errno(status); - act_open_failure_cleanup(sc, atid, rc); + act_open_failure_cleanup(sc, toep, rc); return (0); } diff --git a/sys/dev/cxgbe/tom/t4_listen.c b/sys/dev/cxgbe/tom/t4_listen.c index 6e8361734db7..897c5bcaab1e 100644 --- a/sys/dev/cxgbe/tom/t4_listen.c +++ b/sys/dev/cxgbe/tom/t4_listen.c @@ -88,6 +88,111 @@ static struct inpcb *release_lctx(struct adapter *, struct listen_ctx *); static void send_abort_rpl_synqe(struct toedev *, struct synq_entry *, int); +static int create_server6(struct adapter *, struct listen_ctx *); +static int create_server(struct adapter *, struct listen_ctx *); + +int +alloc_stid_tab(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + + MPASS(t->nstids > 0); + MPASS(t->stid_tab == NULL); + + t->stid_tab = malloc(t->nstids * sizeof(*t->stid_tab), M_CXGBE, + M_ZERO | M_NOWAIT); + if (t->stid_tab == NULL) + return (ENOMEM); + mtx_init(&t->stid_lock, "stid lock", NULL, MTX_DEF); + t->stids_in_use = 0; + TAILQ_INIT(&t->stids); + t->nstids_free_head = t->nstids; + + return (0); +} + +void +free_stid_tab(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + + KASSERT(t->stids_in_use == 0, + ("%s: %d tids still in use.", __func__, t->stids_in_use)); + + if (mtx_initialized(&t->stid_lock)) + mtx_destroy(&t->stid_lock); + free(t->stid_tab, M_CXGBE); + t->stid_tab = NULL; +} + +void +stop_stid_tab(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + struct tom_data *td = sc->tom_softc; + struct listen_ctx *lctx; + struct synq_entry *synqe; + int i, ntids; + + mtx_lock(&t->stid_lock); + t->stid_tab_stopped = true; + mtx_unlock(&t->stid_lock); + + mtx_lock(&td->lctx_hash_lock); + for (i = 0; i <= td->listen_mask; i++) { + LIST_FOREACH(lctx, &td->listen_hash[i], link) + lctx->flags &= ~(LCTX_RPL_PENDING | LCTX_SETUP_IN_HW); + } + mtx_unlock(&td->lctx_hash_lock); + + mtx_lock(&td->toep_list_lock); + TAILQ_FOREACH(synqe, &td->synqe_list, link) { + MPASS(sc->incarnation == synqe->incarnation); + MPASS(synqe->tid >= 0); + MPASS(synqe == lookup_tid(sc, synqe->tid)); + /* Remove tid from the lookup table immediately. */ + CTR(KTR_CXGBE, "%s: tid %d@%d STRANDED, removed from table", + __func__, synqe->tid, synqe->incarnation); + ntids = synqe->lctx->inp->inp_vflag & INP_IPV6 ? 2 : 1; + remove_tid(sc, synqe->tid, ntids); +#if 0 + /* synqe->tid is stale now but left alone for debug. */ + synqe->tid = -1; +#endif + } + MPASS(TAILQ_EMPTY(&td->stranded_synqe)); + TAILQ_CONCAT(&td->stranded_synqe, &td->synqe_list, link); + MPASS(TAILQ_EMPTY(&td->synqe_list)); + mtx_unlock(&td->toep_list_lock); +} + +void +restart_stid_tab(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + struct tom_data *td = sc->tom_softc; + struct listen_ctx *lctx; + int i; + + mtx_lock(&td->lctx_hash_lock); + for (i = 0; i <= td->listen_mask; i++) { + LIST_FOREACH(lctx, &td->listen_hash[i], link) { + MPASS((lctx->flags & (LCTX_RPL_PENDING | LCTX_SETUP_IN_HW)) == 0); + lctx->flags |= LCTX_RPL_PENDING; + if (lctx->inp->inp_vflag & INP_IPV6) + create_server6(sc, lctx); + else + create_server(sc, lctx); + } + } + mtx_unlock(&td->lctx_hash_lock); + + mtx_lock(&t->stid_lock); + t->stid_tab_stopped = false; + mtx_unlock(&t->stid_lock); + +} + static int alloc_stid(struct adapter *sc, struct listen_ctx *lctx, int isipv6) { @@ -107,7 +212,7 @@ alloc_stid(struct adapter *sc, struct listen_ctx *lctx, int isipv6) __func__, t->stid_base, t->nstids, n)); mtx_lock(&t->stid_lock); - if (n > t->nstids - t->stids_in_use) { + if (n > t->nstids - t->stids_in_use || t->stid_tab_stopped) { mtx_unlock(&t->stid_lock); return (-1); } @@ -632,12 +737,13 @@ t4_listen_stop(struct toedev *tod, struct tcpcb *tp) return (EINPROGRESS); } - destroy_server(sc, lctx); + if (lctx->flags & LCTX_SETUP_IN_HW) + destroy_server(sc, lctx); return (0); } static inline struct synq_entry * -alloc_synqe(struct adapter *sc __unused, struct listen_ctx *lctx, int flags) +alloc_synqe(struct adapter *sc, struct listen_ctx *lctx, int flags) { struct synq_entry *synqe; @@ -647,6 +753,7 @@ alloc_synqe(struct adapter *sc __unused, struct listen_ctx *lctx, int flags) synqe = malloc(sizeof(*synqe), M_CXGBE, flags); if (__predict_true(synqe != NULL)) { synqe->flags = TPF_SYNQE; + synqe->incarnation = sc->incarnation; refcount_init(&synqe->refcnt, 1); synqe->lctx = lctx; hold_lctx(lctx); /* Every synqe has a ref on its lctx. */ @@ -761,8 +868,9 @@ do_pass_open_rpl(struct sge_iq *iq, const struct rss_header *rss, __func__, stid, status, lctx->flags); lctx->flags &= ~LCTX_RPL_PENDING; - - if (status != CPL_ERR_NONE) + if (status == CPL_ERR_NONE) + lctx->flags |= LCTX_SETUP_IN_HW; + else log(LOG_ERR, "listener (stid %u) failed: %d\n", stid, status); #ifdef INVARIANTS @@ -856,13 +964,15 @@ done_with_synqe(struct adapter *sc, struct synq_entry *synqe) int ntids; INP_WLOCK_ASSERT(inp); - ntids = inp->inp_vflag & INP_IPV6 ? 2 : 1; - remove_tid(sc, synqe->tid, ntids); - mtx_lock(&td->toep_list_lock); - TAILQ_REMOVE(&td->synqe_list, synqe, link); - mtx_unlock(&td->toep_list_lock); - release_tid(sc, synqe->tid, lctx->ctrlq); + if (synqe->tid != -1) { + ntids = inp->inp_vflag & INP_IPV6 ? 2 : 1; + remove_tid(sc, synqe->tid, ntids); + mtx_lock(&td->toep_list_lock); + TAILQ_REMOVE(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); + release_tid(sc, synqe->tid, lctx->ctrlq); + } t4_l2t_release(e); inp = release_synqe(sc, synqe); if (inp) @@ -870,10 +980,8 @@ done_with_synqe(struct adapter *sc, struct synq_entry *synqe) } void -synack_failure_cleanup(struct adapter *sc, int tid) +synack_failure_cleanup(struct adapter *sc, struct synq_entry *synqe) { - struct synq_entry *synqe = lookup_tid(sc, tid); - INP_WLOCK(synqe->lctx->inp); done_with_synqe(sc, synqe); } diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index fb92c88aa358..58a77ff93c86 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -89,18 +89,23 @@ static int t4_tom_modevent(module_t, int, void *); /* ULD ops and helpers */ static int t4_tom_activate(struct adapter *); static int t4_tom_deactivate(struct adapter *); +static int t4_tom_stop(struct adapter *); +static int t4_tom_restart(struct adapter *); static struct uld_info tom_uld_info = { .uld_activate = t4_tom_activate, .uld_deactivate = t4_tom_deactivate, + .uld_stop = t4_tom_stop, + .uld_restart = t4_tom_restart, }; static void release_offload_resources(struct toepcb *); static void done_with_toepcb(struct toepcb *); -static int alloc_tid_tabs(struct tid_info *); -static void free_tid_tabs(struct tid_info *); +static int alloc_tid_tabs(struct adapter *); +static void free_tid_tabs(struct adapter *); static void free_tom_data(struct adapter *, struct tom_data *); static void reclaim_wr_resources(void *, int); +static void cleanup_stranded_tids(void *, int); struct toepcb * alloc_toepcb(struct vi_info *vi, int flags) @@ -135,6 +140,7 @@ alloc_toepcb(struct vi_info *vi, int flags) refcount_init(&toep->refcount, 1); toep->td = sc->tom_softc; + toep->incarnation = sc->incarnation; toep->vi = vi; toep->tid = -1; toep->tx_total = tx_credits; @@ -254,6 +260,7 @@ offload_socket(struct socket *so, struct toepcb *toep) /* Add the TOE PCB to the active list */ mtx_lock(&td->toep_list_lock); TAILQ_INSERT_HEAD(&td->toep_list, toep, link); + toep->flags |= TPF_IN_TOEP_LIST; mtx_unlock(&td->toep_list_lock); } @@ -298,6 +305,7 @@ undo_offload_socket(struct socket *so) panic("%s: inp freed.", __func__); mtx_lock(&td->toep_list_lock); + toep->flags &= ~TPF_IN_TOEP_LIST; TAILQ_REMOVE(&td->toep_list, toep, link); mtx_unlock(&td->toep_list_lock); } @@ -364,7 +372,10 @@ done_with_toepcb(struct toepcb *toep) MPASS(toep->ce == NULL); mtx_lock(&td->toep_list_lock); - TAILQ_REMOVE(&td->toep_list, toep, link); + if (toep->flags & TPF_IN_TOEP_LIST) { + toep->flags &= ~TPF_IN_TOEP_LIST; + TAILQ_REMOVE(&td->toep_list, toep, link); + } mtx_unlock(&td->toep_list_lock); free_toepcb(toep); @@ -1449,14 +1460,15 @@ negative_advice(int status) } static int -alloc_tid_tab(struct tid_info *t, int flags) +alloc_tid_tab(struct adapter *sc) { + struct tid_info *t = &sc->tids; MPASS(t->ntids > 0); MPASS(t->tid_tab == NULL); t->tid_tab = malloc(t->ntids * sizeof(*t->tid_tab), M_CXGBE, - M_ZERO | flags); + M_ZERO | M_NOWAIT); if (t->tid_tab == NULL) return (ENOMEM); atomic_store_rel_int(&t->tids_in_use, 0); @@ -1465,8 +1477,9 @@ alloc_tid_tab(struct tid_info *t, int flags) } static void -free_tid_tab(struct tid_info *t) +free_tid_tab(struct adapter *sc) { + struct tid_info *t = &sc->tids; KASSERT(t->tids_in_use == 0, ("%s: %d tids still in use.", __func__, t->tids_in_use)); @@ -1475,62 +1488,29 @@ free_tid_tab(struct tid_info *t) t->tid_tab = NULL; } -static int -alloc_stid_tab(struct tid_info *t, int flags) -{ - - MPASS(t->nstids > 0); - MPASS(t->stid_tab == NULL); - - t->stid_tab = malloc(t->nstids * sizeof(*t->stid_tab), M_CXGBE, - M_ZERO | flags); - if (t->stid_tab == NULL) - return (ENOMEM); - mtx_init(&t->stid_lock, "stid lock", NULL, MTX_DEF); - t->stids_in_use = 0; - TAILQ_INIT(&t->stids); - t->nstids_free_head = t->nstids; - - return (0); -} - static void -free_stid_tab(struct tid_info *t) +free_tid_tabs(struct adapter *sc) { - - KASSERT(t->stids_in_use == 0, - ("%s: %d tids still in use.", __func__, t->stids_in_use)); - - if (mtx_initialized(&t->stid_lock)) - mtx_destroy(&t->stid_lock); - free(t->stid_tab, M_CXGBE); - t->stid_tab = NULL; -} - -static void -free_tid_tabs(struct tid_info *t) -{ - - free_tid_tab(t); - free_stid_tab(t); + free_tid_tab(sc); + free_stid_tab(sc); } static int -alloc_tid_tabs(struct tid_info *t) +alloc_tid_tabs(struct adapter *sc) { int rc; - rc = alloc_tid_tab(t, M_NOWAIT); + rc = alloc_tid_tab(sc); if (rc != 0) goto failed; - rc = alloc_stid_tab(t, M_NOWAIT); + rc = alloc_stid_tab(sc); if (rc != 0) goto failed; return (0); failed: - free_tid_tabs(t); + free_tid_tabs(sc); return (rc); } @@ -1587,7 +1567,7 @@ free_tom_data(struct adapter *sc, struct tom_data *td) mtx_destroy(&td->toep_list_lock); free_tcb_history(sc, td); - free_tid_tabs(&sc->tids); + free_tid_tabs(sc); free(td, M_CXGBE); } @@ -1792,13 +1772,14 @@ reclaim_wr_resources(void *arg, int count) case CPL_ACT_OPEN_REQ6: atid = G_TID_TID(be32toh(OPCODE_TID(cpl))); CTR2(KTR_CXGBE, "%s: atid %u ", __func__, atid); - act_open_failure_cleanup(sc, atid, EHOSTUNREACH); + act_open_failure_cleanup(sc, lookup_atid(sc, atid), + EHOSTUNREACH); free(wr, M_CXGBE); break; case CPL_PASS_ACCEPT_RPL: tid = GET_TID(cpl); CTR2(KTR_CXGBE, "%s: tid %u ", __func__, tid); - synack_failure_cleanup(sc, tid); + synack_failure_cleanup(sc, lookup_tid(sc, tid)); free(wr, M_CXGBE); break; default: @@ -1809,6 +1790,83 @@ reclaim_wr_resources(void *arg, int count) } } +/* + * Based on do_abort_req. We treat an abrupt hardware stop as a connection + * abort from the hardware. + */ +static void +live_tid_failure_cleanup(struct adapter *sc, struct toepcb *toep, u_int status) +{ + struct inpcb *inp; + struct tcpcb *tp; + struct epoch_tracker et; + + MPASS(!(toep->flags & TPF_SYNQE)); + + inp = toep->inp; + CURVNET_SET(toep->vnet); + NET_EPOCH_ENTER(et); /* for tcp_close */ + INP_WLOCK(inp); + tp = intotcpcb(inp); + toep->flags |= TPF_ABORT_SHUTDOWN; + if ((inp->inp_flags & INP_DROPPED) == 0) { + struct socket *so = inp->inp_socket; + + if (so != NULL) + so_error_set(so, status); + tp = tcp_close(tp); + if (tp == NULL) + INP_WLOCK(inp); /* re-acquire */ + } + final_cpl_received(toep); + NET_EPOCH_EXIT(et); + CURVNET_RESTORE(); +} + +static void +cleanup_stranded_tids(void *arg, int count) +{ + TAILQ_HEAD(, toepcb) tlist = TAILQ_HEAD_INITIALIZER(tlist); + TAILQ_HEAD(, synq_entry) slist = TAILQ_HEAD_INITIALIZER(slist); + struct tom_data *td = arg; + struct adapter *sc = td_adapter(td); + struct toepcb *toep; + struct synq_entry *synqe; + + /* Clean up synq entries. */ + mtx_lock(&td->toep_list_lock); + TAILQ_SWAP(&td->stranded_synqe, &slist, synq_entry, link); + mtx_unlock(&td->toep_list_lock); + while ((synqe = TAILQ_FIRST(&slist)) != NULL) { + TAILQ_REMOVE(&slist, synqe, link); + MPASS(synqe->tid >= 0); /* stale, was kept around for debug */ + synqe->tid = -1; + synack_failure_cleanup(sc, synqe); + } + + /* Clean up in-flight active opens. */ + mtx_lock(&td->toep_list_lock); + TAILQ_SWAP(&td->stranded_atids, &tlist, toepcb, link); + mtx_unlock(&td->toep_list_lock); + while ((toep = TAILQ_FIRST(&tlist)) != NULL) { + TAILQ_REMOVE(&tlist, toep, link); + MPASS(toep->tid >= 0); /* stale, was kept around for debug */ + toep->tid = -1; + act_open_failure_cleanup(sc, toep, EHOSTUNREACH); + } + + /* Clean up live connections. */ + mtx_lock(&td->toep_list_lock); + TAILQ_SWAP(&td->stranded_tids, &tlist, toepcb, link); + mtx_unlock(&td->toep_list_lock); + while ((toep = TAILQ_FIRST(&tlist)) != NULL) { + TAILQ_REMOVE(&tlist, toep, link); + MPASS(toep->tid >= 0); /* stale, was kept around for debug */ + toep->tid = -1; + live_tid_failure_cleanup(sc, toep, ECONNABORTED); + } +} + /* * Ground control to Major TOM * Commencing countdown, engines on @@ -1832,6 +1890,9 @@ t4_tom_activate(struct adapter *sc) mtx_init(&td->toep_list_lock, "PCB list lock", NULL, MTX_DEF); TAILQ_INIT(&td->toep_list); TAILQ_INIT(&td->synqe_list); + TAILQ_INIT(&td->stranded_atids); + TAILQ_INIT(&td->stranded_tids); + TASK_INIT(&td->cleanup_stranded_tids, 0, cleanup_stranded_tids, td); /* Listen context */ mtx_init(&td->lctx_hash_lock, "lctx hash lock", NULL, MTX_DEF); @@ -1844,7 +1905,7 @@ t4_tom_activate(struct adapter *sc) TASK_INIT(&td->reclaim_wr_resources, 0, reclaim_wr_resources, td); /* TID tables */ - rc = alloc_tid_tabs(&sc->tids); + rc = alloc_tid_tabs(sc); if (rc != 0) goto done; @@ -1917,6 +1978,8 @@ t4_tom_deactivate(struct adapter *sc) if (!TAILQ_EMPTY(&td->toep_list)) rc = EBUSY; MPASS(TAILQ_EMPTY(&td->synqe_list)); + MPASS(TAILQ_EMPTY(&td->stranded_tids)); + mtx_unlock(&td->toep_list_lock); mtx_unlock(&td->toep_list_lock); mtx_lock(&td->lctx_hash_lock); @@ -1925,6 +1988,7 @@ t4_tom_deactivate(struct adapter *sc) mtx_unlock(&td->lctx_hash_lock); taskqueue_drain(taskqueue_thread, &td->reclaim_wr_resources); + taskqueue_drain(taskqueue_thread, &td->cleanup_stranded_tids); mtx_lock(&td->unsent_wr_lock); if (!STAILQ_EMPTY(&td->unsent_wr_list)) rc = EBUSY; @@ -1939,6 +2003,156 @@ t4_tom_deactivate(struct adapter *sc) return (rc); } +static void +stop_atids(struct adapter *sc) +{ + struct tom_data *td = sc->tom_softc; + struct tid_info *t = &sc->tids; + struct toepcb *toep; + int atid; + + /* + * Hashfilters and T6-KTLS are the only other users of atids but they're + * both mutually exclusive with TOE. That means t4_tom owns all the + * atids in the table. + */ + MPASS(!is_hashfilter(sc)); + if (is_t6(sc)) + MPASS(!(sc->flags & KERN_TLS_ON)); + + /* New atids are not being allocated. */ +#ifdef INVARIANTS + mtx_lock(&t->atid_lock); + MPASS(t->atid_alloc_stopped == true); + mtx_unlock(&t->atid_lock); +#endif + + /* + * In-use atids fall in one of these two categories: + * a) Those waiting for L2 resolution before being submitted to + * hardware. + * b) Those that have been submitted to hardware and are awaiting + * replies that will never arrive because the LLD is stopped. + */ + for (atid = 0; atid < t->natids; atid++) { + toep = lookup_atid(sc, atid); + if ((uintptr_t)toep >= (uintptr_t)&t->atid_tab[0] && + (uintptr_t)toep < (uintptr_t)&t->atid_tab[t->natids]) + continue; + MPASS(toep->tid == atid); + MPASS(toep->incarnation == sc->incarnation); + /* + * Take the atid out of the lookup table. toep->tid is stale + * after this but useful for debug. + */ + CTR(KTR_CXGBE, "%s: atid %d@%d STRANDED, removed from table", + __func__, atid, toep->incarnation); + free_atid(sc, toep->tid); +#if 0 + toep->tid = -1; +#endif + mtx_lock(&td->toep_list_lock); + TAILQ_INSERT_TAIL(&td->stranded_atids, toep, link); + mtx_unlock(&td->toep_list_lock); + } + MPASS(atomic_load_int(&t->atids_in_use) == 0); +} + +static void +stop_tids(struct adapter *sc) +{ + struct tom_data *td = sc->tom_softc; + struct toepcb *toep; +#ifdef INVARIANTS + struct tid_info *t = &sc->tids; +#endif + + /* + * The LLD's offload queues are stopped so do_act_establish and + * do_pass_accept_req cannot run and insert tids in parallel with this + * thread. stop_stid_tab has also run and removed the synq entries' + * tids from the table. The only tids in the table are for connections + * at or beyond ESTABLISHED that are still waiting for the final CPL. + */ + mtx_lock(&td->toep_list_lock); + TAILQ_FOREACH(toep, &td->toep_list, link) { + MPASS(sc->incarnation == toep->incarnation); + MPASS(toep->tid >= 0); + MPASS(toep == lookup_tid(sc, toep->tid)); + /* Remove tid from the lookup table immediately. */ + CTR(KTR_CXGBE, "%s: tid %d@%d STRANDED, removed from table", + __func__, toep->tid, toep->incarnation); + remove_tid(sc, toep->tid, toep->ce ? 2 : 1); +#if 0 + /* toep->tid is stale now but left alone for debug. */ + toep->tid = -1; +#endif + /* All toep in this list will get bulk moved to stranded_tids */ + toep->flags &= ~TPF_IN_TOEP_LIST; + } + MPASS(TAILQ_EMPTY(&td->stranded_tids)); + TAILQ_CONCAT(&td->stranded_tids, &td->toep_list, link); + MPASS(TAILQ_EMPTY(&td->toep_list)); + mtx_unlock(&td->toep_list_lock); + + MPASS(atomic_load_int(&t->tids_in_use) == 0); +} + +/* + * L2T is stable because + * 1. stop_lld stopped all new allocations. + * 2. stop_lld also stopped the tx wrq so nothing is enqueueing new WRs to the + * queue or to l2t_entry->wr_list. + * 3. t4_l2t_update is ignoring all L2 updates. + */ +static void +stop_tom_l2t(struct adapter *sc) +{ + struct l2t_data *d = sc->l2t; + struct l2t_entry *e; + int i; + + for (i = 0; i < d->l2t_size; i++) { + e = &d->l2tab[i]; + mtx_lock(&e->lock); + if (e->state == L2T_STATE_VALID) + e->state = L2T_STATE_RESOLVING; + if (!STAILQ_EMPTY(&e->wr_list)) + CXGBE_UNIMPLEMENTED("l2t e->wr_list"); + mtx_unlock(&e->lock); + } +} + +static int +t4_tom_stop(struct adapter *sc) +{ + struct tid_info *t = &sc->tids; + struct tom_data *td = sc->tom_softc; + + ASSERT_SYNCHRONIZED_OP(sc); + + stop_tom_l2t(sc); + if (atomic_load_int(&t->atids_in_use) > 0) + stop_atids(sc); + if (atomic_load_int(&t->stids_in_use) > 0) + stop_stid_tab(sc); + if (atomic_load_int(&t->tids_in_use) > 0) + stop_tids(sc); + taskqueue_enqueue(taskqueue_thread, &td->cleanup_stranded_tids); + + return (0); +} + +static int +t4_tom_restart(struct adapter *sc) +{ + ASSERT_SYNCHRONIZED_OP(sc); + + restart_stid_tab(sc); + + return (0); +} + static int t4_ctloutput_tom(struct socket *so, struct sockopt *sopt) { diff --git a/sys/dev/cxgbe/tom/t4_tom.h b/sys/dev/cxgbe/tom/t4_tom.h index 0bc368fe3d56..8debab4940b1 100644 --- a/sys/dev/cxgbe/tom/t4_tom.h +++ b/sys/dev/cxgbe/tom/t4_tom.h @@ -76,6 +76,7 @@ enum { TPF_TLS_RX_QUIESCING = (1 << 14), /* RX quiesced for TLS RX startup */ TPF_TLS_RX_QUIESCED = (1 << 15), /* RX quiesced for TLS RX startup */ TPF_WAITING_FOR_FINAL = (1<< 16), /* waiting for wakeup on final CPL */ + TPF_IN_TOEP_LIST = (1 << 17), /* toep is in the main td->toep_list */ }; enum { @@ -210,7 +211,7 @@ struct toepcb { struct tom_data *td; struct inpcb *inp; /* backpointer to host stack's PCB */ u_int flags; /* miscellaneous flags */ - TAILQ_ENTRY(toepcb) link; /* toep_list */ + TAILQ_ENTRY(toepcb) link; /* toep_list or stranded_toep_list */ int refcount; struct vnet *vnet; struct vi_info *vi; /* virtual interface */ @@ -220,6 +221,7 @@ struct toepcb { struct l2t_entry *l2te; /* L2 table entry used by this connection */ struct clip_entry *ce; /* CLIP table entry used by this tid */ int tid; /* Connection identifier */ + int incarnation; /* sc->incarnation when toepcb was allocated */ /* tx credit handling */ u_int tx_total; /* total tx WR credits (in 16B units) */ @@ -278,6 +280,7 @@ struct synq_entry { uint32_t ts; uint32_t rss_hash; __be16 tcp_opt; /* from cpl_pass_establish */ + int incarnation; struct toepcb *toep; struct conn_params params; @@ -285,6 +288,7 @@ struct synq_entry { /* listen_ctx flags */ #define LCTX_RPL_PENDING 1 /* waiting for a CPL_PASS_OPEN_RPL */ +#define LCTX_SETUP_IN_HW 2 /* stid entry is setup in hardware */ struct listen_ctx { LIST_ENTRY(listen_ctx) link; /* listen hash linkage */ @@ -331,6 +335,11 @@ struct tom_data { struct mtx toep_list_lock; TAILQ_HEAD(, toepcb) toep_list; TAILQ_HEAD(, synq_entry) synqe_list; + /* List of tids left stranded because hw stopped abruptly. */ + TAILQ_HEAD(, toepcb) stranded_atids; + TAILQ_HEAD(, toepcb) stranded_tids; + TAILQ_HEAD(, synq_entry) stranded_synqe; + struct task cleanup_stranded_tids; struct mtx lctx_hash_lock; LIST_HEAD(, listen_ctx) *listen_hash; @@ -477,7 +486,7 @@ void t4_init_connect_cpl_handlers(void); void t4_uninit_connect_cpl_handlers(void); int t4_connect(struct toedev *, struct socket *, struct nhop_object *, struct sockaddr *); -void act_open_failure_cleanup(struct adapter *, u_int, u_int); +void act_open_failure_cleanup(struct adapter *, struct toepcb *, u_int); /* t4_listen.c */ void t4_init_listen_cpl_handlers(void); @@ -492,7 +501,11 @@ int do_abort_req_synqe(struct sge_iq *, const struct rss_header *, int do_abort_rpl_synqe(struct sge_iq *, const struct rss_header *, struct mbuf *); void t4_offload_socket(struct toedev *, void *, struct socket *); -void synack_failure_cleanup(struct adapter *, int); +void synack_failure_cleanup(struct adapter *, struct synq_entry *); +int alloc_stid_tab(struct adapter *); +void free_stid_tab(struct adapter *); +void stop_stid_tab(struct adapter *); +void restart_stid_tab(struct adapter *); /* t4_cpl_io.c */ void aiotx_init_toep(struct toepcb *); From nobody Mon Oct 21 18:39:14 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGq1y0Mz5Zd25; Mon, 21 Oct 2024 18:39:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGp6dsTz4Fmm; Mon, 21 Oct 2024 18:39:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535954; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qBMgZn+smYuXwCssHcKq3d/9Lj/44bl+igdR0iIRwNU=; b=Wjfd4xfBSEx1r9qS8Ce7/vGKns9foWvQdQ4DGfVRVAKez9RfCh19wVGIKh9Sv71HAakpf4 /g6OVmFwz4oVupv842IepKd3EnEvrySVdWOtrT0aeJgqhKQUnhGCqO4gwO9jOzru4jt60N EGsXri5rmLXkwaoMUewiEWb9+2X5efRjJtJbxZlxz/6qnTXPah6SvJn7KUXV/OKrw2S3GL tEhCnLSFsAo3FqysTBaGafiD27D51pEbpxOFzoCYcxEyfZjEv4c1LLW58mHnBWVsMMdn8s MpSB0cV0p09FHk9Wchmg0wzHLhgxp/rwv3wJlWIMr/gjMH0OngdphKhuNeHtLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535954; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qBMgZn+smYuXwCssHcKq3d/9Lj/44bl+igdR0iIRwNU=; b=rcKv9ydEpDt5bLF1/OObI17T9x8nWtIx0P8w7d3ZURvfukkQBwIsB1MncdlfXjZzJe1q+1 FXfrFAquCUgPUIVGbDXUThUP3joO3efQGSBheiRVm1tw33NDrQJaLUaifcOtD0xMEHLpP5 3GbvnM7yHbFTYF2rqfL5b7d5LZec80oM3/vA56MuU7hMHoVfGP0kzBthPA7abYlIfiRgn/ atR/B6mLcj1h93JQFrqAyyUw2OiU7LBTeosj7OA5ngZZWH6YbY7Cg1dPJfdumM/N20RWOf oZLLxyjVujDrJX7pDMruI+Wei8e9aye9y0xbHMh9uaZy71g1Iz2d+l56ptdi1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535954; a=rsa-sha256; cv=none; b=Va9JvEbApZqHu4rOtBl/0v8WYHGK7k+mzGjtLQa19q7l+aLzDtskyGjdDF70UDqe0A35JZ 9oRkjdpcVly+P50Mv44jMWUs6+dHTcBagnEJAYP8Xa0dr/pXiTG1XqSPSU8liIyjTdtit2 i/Egp+d5thsyOkTWKuMUTQU2MXWN+hWC43fiecBeepRJBWr9/YONHhe201bD0fDiCDx7oU Yp6M0XAcNivO6bNS963fROTR4oWCmZDnqAFlHzpBO8ACrMO0NrWYxlHtKrnqOEH7yNv497 HwxSBK19eJjkzmocXyEWbS3SAQ8sF91VfJxk/w95CT2xqmR4xoNEs7yaUlaHGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGp69Btzh87; Mon, 21 Oct 2024 18:39: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 49LIdE30036350; Mon, 21 Oct 2024 18:39:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdE00036347; Mon, 21 Oct 2024 18:39:14 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:14 GMT Message-Id: <202410211839.49LIdE00036347@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 788088340cdc - stable/14 - cxgbe/iw_cxgbe: Add a placeholder uld_restart. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 788088340cdc0919c13cb8849614db69fa3324f8 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=788088340cdc0919c13cb8849614db69fa3324f8 commit 788088340cdc0919c13cb8849614db69fa3324f8 Author: Navdeep Parhar AuthorDate: 2024-07-07 00:15:22 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:03:34 +0000 cxgbe/iw_cxgbe: Add a placeholder uld_restart. Sponsored by: Chelsio Communications (cherry picked from commit f1c4ed150334ae2844810a58b7384cb0e3abe664) --- sys/dev/cxgbe/iw_cxgbe/device.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/dev/cxgbe/iw_cxgbe/device.c b/sys/dev/cxgbe/iw_cxgbe/device.c index 28d6d0f2d00c..279bdb20d511 100644 --- a/sys/dev/cxgbe/iw_cxgbe/device.c +++ b/sys/dev/cxgbe/iw_cxgbe/device.c @@ -260,11 +260,13 @@ static int c4iw_mod_unload(void); static int c4iw_activate(struct adapter *); static int c4iw_deactivate(struct adapter *); static int c4iw_stop(struct adapter *); +static int c4iw_restart(struct adapter *); static struct uld_info c4iw_uld_info = { .uld_activate = c4iw_activate, .uld_deactivate = c4iw_deactivate, .uld_stop = c4iw_stop, + .uld_restart = c4iw_restart, }; static int @@ -344,6 +346,12 @@ c4iw_stop(struct adapter *sc) return (0); } +static int +c4iw_restart(struct adapter *sc) +{ + return (0); +} + static void c4iw_activate_all(struct adapter *sc, void *arg __unused) { From nobody Mon Oct 21 18:39:15 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGr2t9pz5Zcqp; Mon, 21 Oct 2024 18:39:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGr11nJz4FyV; Mon, 21 Oct 2024 18:39:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cnwp2Wi+S+uKYHvNreMnx3ftqbhykSJXpj3H0uQp68E=; b=RfcC7VOQWggwqsETlLM2aKu1H/tQBMk4TvWryr/LAjrrhf5x9zK8ZktUU0YRi6DNY/m6u8 A7BBjUFxhwjelfilH9rtodIk8aQhKb9dSbmCJosha1Lx+wy0d41usYevs1/z6WXnZT7KIl WtYIHmBJ0ASeX767CMTrSNLcsYLMPxqTmf+rCs+6vCPF654/7bJnTHA9yJQpmj9naOvofM sKG7llEk3uInJN/dqIgbd/fajdRmS4t4/jLhVb40r/ILgA8jjewV7ig0NxAUAPAxxCOxmn zqKEQKQwdk5epTRAPCqWeQA29lUq/m9dI15aKw7ESiCt33c5hs6tLTwPI+j3bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cnwp2Wi+S+uKYHvNreMnx3ftqbhykSJXpj3H0uQp68E=; b=aOlQabZYqD4USzaDX46+YYAbl299x0MQrqlGeI0HQr16gJlSThQK+U6v27rtLEuiSyaasb O1SBQPPJEQvsSRKmWh4qwSkY+dk5KI/Kzt9sS6g43FH1ZNLU+cBwPiQqirGbl0kRecsSJD t/Tkk0/Nt5wi4iIxutt8n0OtED7Z137VeNkU7ro1pBxG7NKc6qM2X/GMgJL3LM2oKdVym7 2MQScVteVrKenpZk4epriDz1QoNGwmVDw8kTfpe6lxVOX44V1XgMLDLLwCvFOf6kaRGDSR kox/PA1s9g4/FqGU/PfaxIDecyXJFdanTSfZOg7JUzfqMy5NUy+aTCk25EIkYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535956; a=rsa-sha256; cv=none; b=N43Ht6SZ72XZalcOundVlmiRa0E9Q4fPlQoQVhP4JgWH+jqf6e114CTBgocqzBieahqdqJ StBKNosy6fKh7Y/UswkS1F6iWv9tmm6P7TTxfWaoPj8l6aPjIvbzSzD0inlehrxVPURk9p 6XYp7f7nilOr2zuZ0Uh+Zhbkxh5ZFDvdNiqqGCODI9xOpvC+4K9Ez48vpFlKx34fcx+vdH Dc5osqEFAFwcyTb1TdPphJhP9HGqa94fSuFa7UeyV2Hini9F4dvAmRXQcLK8ZlwjTlBa/5 uV2VtejIpyAr27K/WXC91iVFykyg/NcppHcZoAkiKqGDT4iquLf+sLMJRIYaLw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGr064pzhQQ; Mon, 21 Oct 2024 18:39: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 49LIdF9Y036395; Mon, 21 Oct 2024 18:39:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdFbq036392; Mon, 21 Oct 2024 18:39:15 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:15 GMT Message-Id: <202410211839.49LIdFbq036392@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 3b600c38d837 - stable/14 - cxgbe/t4_tom: bugfixes in stop/restart. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3b600c38d8379d88937997496a2de03c0196e4aa Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=3b600c38d8379d88937997496a2de03c0196e4aa commit 3b600c38d8379d88937997496a2de03c0196e4aa Author: Navdeep Parhar AuthorDate: 2024-07-25 01:43:54 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:05:39 +0000 cxgbe/t4_tom: bugfixes in stop/restart. 1. Remove toepcb from the toep_list on active open failure. 2. Purge the wr_list for an L2T entry on an adpater stop. Fixes: c1c524852f62 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. Sponsored by: Chelsio Communications (cherry picked from commit fef0e39f64a1db796ded8777dbee71fc287f6107) --- sys/dev/cxgbe/tom/t4_connect.c | 14 ++++++++++ sys/dev/cxgbe/tom/t4_listen.c | 3 +++ sys/dev/cxgbe/tom/t4_tom.c | 58 +++++++++++++++++++++++++----------------- 3 files changed, 52 insertions(+), 23 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_connect.c b/sys/dev/cxgbe/tom/t4_connect.c index 1c98e70a4df5..99e4c222996d 100644 --- a/sys/dev/cxgbe/tom/t4_connect.c +++ b/sys/dev/cxgbe/tom/t4_connect.c @@ -115,10 +115,17 @@ act_open_failure_cleanup(struct adapter *sc, struct toepcb *toep, u_int status) struct inpcb *inp = toep->inp; struct toedev *tod = &toep->td->tod; struct epoch_tracker et; + struct tom_data *td = sc->tom_softc; if (toep->tid >= 0) { free_atid(sc, toep->tid); toep->tid = -1; + mtx_lock(&td->toep_list_lock); + if (toep->flags & TPF_IN_TOEP_LIST) { + toep->flags &= ~TPF_IN_TOEP_LIST; + TAILQ_REMOVE(&td->toep_list, toep, link); + } + mtx_unlock(&td->toep_list_lock); } CURVNET_SET(toep->vnet); @@ -234,6 +241,7 @@ t4_connect(struct toedev *tod, struct socket *so, struct nhop_object *nh, struct sockaddr *nam) { struct adapter *sc = tod->tod_softc; + struct tom_data *td; struct toepcb *toep = NULL; struct wrqe *wr = NULL; if_t rt_ifp = nh->nh_ifp; @@ -380,6 +388,12 @@ t4_connect(struct toedev *tod, struct socket *so, struct nhop_object *nh, } offload_socket(so, toep); + /* Add the TOE PCB to the active list */ + td = toep->td; + mtx_lock(&td->toep_list_lock); + TAILQ_INSERT_TAIL(&td->toep_list, toep, link); + toep->flags |= TPF_IN_TOEP_LIST; + mtx_unlock(&td->toep_list_lock); NET_EPOCH_ENTER(et); rc = t4_l2t_send(sc, wr, toep->l2te); NET_EPOCH_EXIT(et); diff --git a/sys/dev/cxgbe/tom/t4_listen.c b/sys/dev/cxgbe/tom/t4_listen.c index 897c5bcaab1e..f91d193c0fed 100644 --- a/sys/dev/cxgbe/tom/t4_listen.c +++ b/sys/dev/cxgbe/tom/t4_listen.c @@ -1090,7 +1090,10 @@ t4_offload_socket(struct toedev *tod, void *arg, struct socket *so) update_tid(sc, synqe->tid, toep); synqe->flags |= TPF_SYNQE_EXPANDED; mtx_lock(&td->toep_list_lock); + /* Remove synqe from its list and add the TOE PCB to the active list. */ TAILQ_REMOVE(&td->synqe_list, synqe, link); + TAILQ_INSERT_TAIL(&td->toep_list, toep, link); + toep->flags |= TPF_IN_TOEP_LIST; mtx_unlock(&td->toep_list_lock); inp->inp_flowtype = (inp->inp_vflag & INP_IPV6) ? M_HASHTYPE_RSS_TCP_IPV6 : M_HASHTYPE_RSS_TCP_IPV4; diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 58a77ff93c86..9b1dcf304196 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -256,12 +256,6 @@ offload_socket(struct socket *so, struct toepcb *toep) toep->inp = inp; toep->flags |= TPF_ATTACHED; in_pcbref(inp); - - /* Add the TOE PCB to the active list */ - mtx_lock(&td->toep_list_lock); - TAILQ_INSERT_HEAD(&td->toep_list, toep, link); - toep->flags |= TPF_IN_TOEP_LIST; - mtx_unlock(&td->toep_list_lock); } void @@ -280,7 +274,6 @@ undo_offload_socket(struct socket *so) struct inpcb *inp = sotoinpcb(so); struct tcpcb *tp = intotcpcb(inp); struct toepcb *toep = tp->t_toe; - struct tom_data *td = toep->td; struct sockbuf *sb; INP_WLOCK_ASSERT(inp); @@ -303,11 +296,6 @@ undo_offload_socket(struct socket *so) toep->flags &= ~TPF_ATTACHED; if (in_pcbrele_wlocked(inp)) panic("%s: inp freed.", __func__); - - mtx_lock(&td->toep_list_lock); - toep->flags &= ~TPF_IN_TOEP_LIST; - TAILQ_REMOVE(&td->toep_list, toep, link); - mtx_unlock(&td->toep_list_lock); } static void @@ -331,6 +319,12 @@ release_offload_resources(struct toepcb *toep) remove_tid(sc, tid, toep->ce ? 2 : 1); release_tid(sc, tid, toep->ctrlq); toep->tid = -1; + mtx_lock(&td->toep_list_lock); + if (toep->flags & TPF_IN_TOEP_LIST) { + toep->flags &= ~TPF_IN_TOEP_LIST; + TAILQ_REMOVE(&td->toep_list, toep, link); + } + mtx_unlock(&td->toep_list_lock); } if (toep->ce) { t4_release_clip_entry(sc, toep->ce); @@ -346,8 +340,6 @@ release_offload_resources(struct toepcb *toep) static void done_with_toepcb(struct toepcb *toep) { - struct tom_data *td = toep->td; - KASSERT(!(toep->flags & TPF_CPL_PENDING), ("%s: %p has CPL pending.", __func__, toep)); KASSERT(!(toep->flags & TPF_ATTACHED), @@ -370,13 +362,7 @@ done_with_toepcb(struct toepcb *toep) MPASS(toep->tid == -1); MPASS(toep->l2te == NULL); MPASS(toep->ce == NULL); - - mtx_lock(&td->toep_list_lock); - if (toep->flags & TPF_IN_TOEP_LIST) { - toep->flags &= ~TPF_IN_TOEP_LIST; - TAILQ_REMOVE(&td->toep_list, toep, link); - } - mtx_unlock(&td->toep_list_lock); + MPASS((toep->flags & TPF_IN_TOEP_LIST) == 0); free_toepcb(toep); } @@ -2039,6 +2025,8 @@ stop_atids(struct adapter *sc) if ((uintptr_t)toep >= (uintptr_t)&t->atid_tab[0] && (uintptr_t)toep < (uintptr_t)&t->atid_tab[t->natids]) continue; + if (__predict_false(toep == NULL)) + continue; MPASS(toep->tid == atid); MPASS(toep->incarnation == sc->incarnation); /* @@ -2052,6 +2040,8 @@ stop_atids(struct adapter *sc) toep->tid = -1; #endif mtx_lock(&td->toep_list_lock); + toep->flags &= ~TPF_IN_TOEP_LIST; + TAILQ_REMOVE(&td->toep_list, toep, link); TAILQ_INSERT_TAIL(&td->stranded_atids, toep, link); mtx_unlock(&td->toep_list_lock); } @@ -2109,16 +2099,32 @@ static void stop_tom_l2t(struct adapter *sc) { struct l2t_data *d = sc->l2t; + struct tom_data *td = sc->tom_softc; struct l2t_entry *e; + struct wrqe *wr; int i; + /* + * This task cannot be enqueued because L2 state changes are not being + * processed. But if it's already scheduled or running then we need to + * wait for it to cleanup the atids in the unsent_wr_list. + */ + taskqueue_drain(taskqueue_thread, &td->reclaim_wr_resources); + MPASS(STAILQ_EMPTY(&td->unsent_wr_list)); + for (i = 0; i < d->l2t_size; i++) { e = &d->l2tab[i]; mtx_lock(&e->lock); if (e->state == L2T_STATE_VALID) e->state = L2T_STATE_RESOLVING; - if (!STAILQ_EMPTY(&e->wr_list)) - CXGBE_UNIMPLEMENTED("l2t e->wr_list"); + /* + * stop_atids is going to clean up _all_ atids in use, including + * these that were pending L2 resolution. Just discard the WRs. + */ + while ((wr = STAILQ_FIRST(&e->wr_list)) != NULL) { + STAILQ_REMOVE_HEAD(&e->wr_list, link); + free(wr, M_CXGBE); + } mtx_unlock(&e->lock); } } @@ -2140,6 +2146,12 @@ t4_tom_stop(struct adapter *sc) stop_tids(sc); taskqueue_enqueue(taskqueue_thread, &td->cleanup_stranded_tids); + /* + * L2T and atid_tab are restarted before t4_tom_restart so this assert + * is not valid in t4_tom_restart. This is the next best place for it. + */ + MPASS(STAILQ_EMPTY(&td->unsent_wr_list)); + return (0); } From nobody Mon Oct 21 18:39:17 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGs3kPyz5Zd03; Mon, 21 Oct 2024 18:39:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGs1gTzz4G5x; Mon, 21 Oct 2024 18:39:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qF0lBxiMX9TxoDpwu4V300Pxv+FuUMmYw87HhheNUe0=; b=RZ5Hh0Ya9x38WfhZ8PL8me4t+lscXOcBe6s5B8MLsU3sc7zwnvAO35DuyY1AsfU1lK4VFr w1YDVcYxqImIgxxsGgmdWE2m2XDueMbVMWk92TG8tYl7a//eGnQPgewmHbB5XQAj1/S834 3qsVTB6hkCE6cr3Tgkv/FZ9fw/YTHVwt5DvI+QIf/5trEXVlW7C/H5m+NyTqlx8rGe7IEE qVdh+5cu3tayvBq7Ak8xflhGigavy4err4J8Zp9Yj6NdugGBrwoQDuAX1wnxENzXgYO1l/ TybqLTXVjNQfaUpYE7jhbL8zGAOW4UM+kAlgCuJ44p0AwfeU2OxlMoRsaVMMIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qF0lBxiMX9TxoDpwu4V300Pxv+FuUMmYw87HhheNUe0=; b=jBdHOsLEVH24u7K1NXFzkwvHHcJai2R8r0HtXUk6jHT9KB8pz1jM7ar4/sVLskkEYCiVZA aLhiyDlRJciBkngE1Tn2XrkOaQTyI/zZrQKJQgBaQqEcmnZKZHM6HVbZaX5gF3woUUves9 UJN4Ktk0Y+1zsjV1KWDnaeiIQ67hCErIoxOFBvLt1zokJoPYJajR1XH8nfENFD/qF/bcJw dE5hBlInOsnmeMWhiawxrvpjlkwrW+9QiFnVtCuOIV59io7Dr1kTdOR2fM6L2iDCc7BPPD qO0pjwKZTdtOoKPsJX8iunpNsvOy13eHnvCyNE5A6JynAyYA1d7Kx20U9do4Vg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535957; a=rsa-sha256; cv=none; b=CKxd5IH6OU1HHxzcDgGIyvDrYxo6hwbdm6iCFAikSEReH/gXsagPtw6yd1Xikcx3J1V7oj qLdKrWVzULsQUlqxoQQfJ84OF+/DWrsLBq+w98ISN1OQ/r5dzAT19LK7xPTLdlrfljTLFD 4KM2fb2Cmoc91EiooHlhf0oO435gziIcQqZs3aerNKBIu/5ArQBrLbQwgkc8JCFkEwdyWr COvzrCa7n+Btpki2MdONeTUOKeM54t5mLOSKY/5pglUFmjGr6KfobrOKrLB/9GE77I0Lww gy6YOU8kZaloQn/vMvcvfLoIvkjwexNWZMo3KYAR9X05D2P2eA3mjXHmmW/IeQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGs16R7zhVj; Mon, 21 Oct 2024 18:39: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 49LIdHKK036449; Mon, 21 Oct 2024 18:39:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdHZq036446; Mon, 21 Oct 2024 18:39:17 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:17 GMT Message-Id: <202410211839.49LIdHZq036446@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 40162251383e - stable/14 - cxgbe/iw_cxgbe: Fix typo in assertion. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 40162251383edd4294a4f454c6c20d16e73497f4 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=40162251383edd4294a4f454c6c20d16e73497f4 commit 40162251383edd4294a4f454c6c20d16e73497f4 Author: Navdeep Parhar AuthorDate: 2024-07-22 17:19:58 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:05:56 +0000 cxgbe/iw_cxgbe: Fix typo in assertion. eanbled -> enabled (cherry picked from commit b5332809c633e7e37715f7823a8a8ee9799910a4) --- sys/dev/cxgbe/iw_cxgbe/device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/iw_cxgbe/device.c b/sys/dev/cxgbe/iw_cxgbe/device.c index 279bdb20d511..209d12767a1c 100644 --- a/sys/dev/cxgbe/iw_cxgbe/device.c +++ b/sys/dev/cxgbe/iw_cxgbe/device.c @@ -284,7 +284,7 @@ c4iw_activate(struct adapter *sc) } if (uld_active(sc, ULD_IWARP)) { - KASSERT(0, ("%s: RDMA already eanbled on sc %p", __func__, sc)); + KASSERT(0, ("%s: RDMA already enabled on sc %p", __func__, sc)); return (0); } From nobody Mon Oct 21 18:39:18 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGt5Jnyz5ZcYS; Mon, 21 Oct 2024 18:39:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGt454Nz4G49; Mon, 21 Oct 2024 18:39:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535958; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyJIGzfalcs1CJJj8ULUQKN9Hg9sCIlGos8XJWKL92o=; b=bG9o04NT7qjhaqvOgJrdH6i0g8kUDuFTE8kKdNeWf3sR26etvVGKVY3UZF6bB9ZFUmGeRX m7W1zL+BVsYGptdOUG3R03lRXGnHQHuK/66lulI4PMcw1ZfaKbVZ1G4oUfRjtovslEzRO1 sTHGVOoDWA7EnlURyX39ncl2rBDLUFjItCmrp7+C3ldg6q2X6T8pOvHYvAdv9zlT43VKiG OrimkrGNF7u3rT7Eeapbm8gmmQ0eUEjR8LeZa2PKJsM69iZIH+vEzMj3LKeu76nxpurzJ8 p3okw98INYMopu+I673lR17C4uDpcXOo56GCHtD53UHL7jUDXYOMR8DgolhEVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535958; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyJIGzfalcs1CJJj8ULUQKN9Hg9sCIlGos8XJWKL92o=; b=o4akQVjcB9fcqpBT5/84sktVW78Rjz3NVjWspn+n0Z6TEzlWrVO6FJqqUpOfJ4gWMb/YQY 1K0PxqfKrbcQoAZPIdRQDWIzCHPfKseN2b4ZIMFru9tKMiOsI9aXCm8iVMAYqbg3dhZlMe ee03JcwlaLqocWIInlehBCAmANv1NlO0kiTV/fDGUjMDwm+NjWRVkd71HX+IKOqIr2Q0JU W1hIbzHqprO2UMm4KOzSWDKdS/bSDRvTwLZ6o4nZ4go1DX9TfN+0sIZHGqmPWrue8SHJb9 yRGo0RV7wnc7SZvsb5gJp4aq9JNjZI4iF554is0O9/3aMKxsgbx4EAsCdpIK+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535958; a=rsa-sha256; cv=none; b=TLAMfgqdEBYkv9yUUlXXzSY8WCkj+C0b2GfbZfZAnDDdrKyyewaiB2oT4WlmiOE8H700TK tTPG9Z1kIPkdWKQnQAd0hNEGBmeHsPLYkJFK3Fu3aEGJ8py4AebSsHpnM2wBsFsHcCLLk/ x/LNOYJajKVv6+4Yy2pfFuqFhU6MaGZ9bfTspy1fX3Ef3WADb04EVdpkD0el+ZxuvftZcp bLgd0hkddWDyc5rjrgv02+Pb66jsNUhoDNTO9VZxc9QALrSGAdKYYw1saBGq9XkSy7nfNE ih9S4zkkRDM+V91h9XbVsMgJA0MW+I5F7jq3vfzRjvpOmubMKl+6uFq14Mef0A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGt2Gg8zh88; Mon, 21 Oct 2024 18:39:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdI0t036503; Mon, 21 Oct 2024 18:39:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdIEe036500; Mon, 21 Oct 2024 18:39:18 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:18 GMT Message-Id: <202410211839.49LIdIEe036500@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 888858a7bfbf - stable/14 - cxgbe(4): Stop work request queues in a reliable manner. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 888858a7bfbf3112ea314cc0d7f12d385c4c39de Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=888858a7bfbf3112ea314cc0d7f12d385c4c39de commit 888858a7bfbf3112ea314cc0d7f12d385c4c39de Author: Navdeep Parhar AuthorDate: 2024-07-31 19:27:18 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:06:19 +0000 cxgbe(4): Stop work request queues in a reliable manner. Clear the EQ_HW_ALLOCATED flag with the wrq lock held and discard all work requests, pending or new, when it's not set. Sponsored by: Chelsio Communications (cherry picked from commit 0a9d1da6e6cede5e9c0ff63240d724049ad72b5b) --- sys/dev/cxgbe/adapter.h | 5 ++++- sys/dev/cxgbe/t4_main.c | 20 +++++++++++++++++++- sys/dev/cxgbe/t4_sge.c | 15 ++++++++++++++- 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h index 0d731e736823..3922bd3909fe 100644 --- a/sys/dev/cxgbe/adapter.h +++ b/sys/dev/cxgbe/adapter.h @@ -1561,7 +1561,10 @@ t4_wrq_tx(struct adapter *sc, struct wrqe *wr) struct sge_wrq *wrq = wr->wrq; TXQ_LOCK(wrq); - t4_wrq_tx_locked(sc, wrq, wr); + if (__predict_true(wrq->eq.flags & EQ_HW_ALLOCATED)) + t4_wrq_tx_locked(sc, wrq, wr); + else + free(wr, M_CXGBE); TXQ_UNLOCK(wrq); } diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index c02fe8372946..4a9e64efcacf 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -2060,7 +2060,9 @@ stop_lld(struct adapter *sc) } #if defined(TCP_OFFLOAD) || defined(RATELIMIT) for_each_ofld_txq(vi, k, ofld_txq) { + TXQ_LOCK(&ofld_txq->wrq); ofld_txq->wrq.eq.flags &= ~EQ_HW_ALLOCATED; + TXQ_UNLOCK(&ofld_txq->wrq); } #endif for_each_rxq(vi, k, rxq) { @@ -2078,7 +2080,9 @@ stop_lld(struct adapter *sc) if (sc->flags & FULL_INIT_DONE) { /* Control queue */ wrq = &sc->sge.ctrlq[i]; + TXQ_LOCK(wrq); wrq->eq.flags &= ~EQ_HW_ALLOCATED; + TXQ_UNLOCK(wrq); quiesce_wrq(wrq); } } @@ -7049,8 +7053,22 @@ quiesce_txq(struct sge_txq *txq) static void quiesce_wrq(struct sge_wrq *wrq) { + struct wrqe *wr; - /* XXXTX */ + TXQ_LOCK(wrq); + while ((wr = STAILQ_FIRST(&wrq->wr_list)) != NULL) { + STAILQ_REMOVE_HEAD(&wrq->wr_list, link); +#ifdef INVARIANTS + wrq->nwr_pending--; + wrq->ndesc_needed -= howmany(wr->wr_len, EQ_ESIZE); +#endif + free(wr, M_CXGBE); + } + MPASS(wrq->nwr_pending == 0); + MPASS(wrq->ndesc_needed == 0); + wrq->nwr_pending = 0; + wrq->ndesc_needed = 0; + TXQ_UNLOCK(wrq); } static void diff --git a/sys/dev/cxgbe/t4_sge.c b/sys/dev/cxgbe/t4_sge.c index 614aa1f7508c..cc927f27d318 100644 --- a/sys/dev/cxgbe/t4_sge.c +++ b/sys/dev/cxgbe/t4_sge.c @@ -2921,6 +2921,10 @@ start_wrq_wr(struct sge_wrq *wrq, int len16, struct wrq_cookie *cookie) MPASS(ndesc > 0 && ndesc <= SGE_MAX_WR_NDESC); EQ_LOCK(eq); + if (__predict_false((eq->flags & EQ_HW_ALLOCATED) == 0)) { + EQ_UNLOCK(eq); + return (NULL); + } if (TAILQ_EMPTY(&wrq->incomplete_wrs) && !STAILQ_EMPTY(&wrq->wr_list)) drain_wrq_wr_list(sc, wrq); @@ -3016,7 +3020,10 @@ commit_wrq_wr(struct sge_wrq *wrq, void *w, struct wrq_cookie *cookie) F_FW_WR_EQUEQ); } - ring_eq_db(wrq->adapter, eq, ndesc); + if (__predict_true(eq->flags & EQ_HW_ALLOCATED)) + ring_eq_db(wrq->adapter, eq, ndesc); + else + IDXINCR(eq->dbidx, ndesc, eq->sidx); } else { MPASS(IDXDIFF(next->pidx, pidx, eq->sidx) == ndesc); next->pidx = pidx; @@ -3852,6 +3859,8 @@ alloc_ctrlq(struct adapter *sc, int idx) if (!(ctrlq->eq.flags & EQ_HW_ALLOCATED)) { MPASS(ctrlq->eq.flags & EQ_SW_ALLOCATED); + MPASS(ctrlq->nwr_pending == 0); + MPASS(ctrlq->ndesc_needed == 0); rc = alloc_eq_hwq(sc, NULL, &ctrlq->eq); if (rc != 0) { @@ -4556,6 +4565,7 @@ free_wrq(struct adapter *sc, struct sge_wrq *wrq) { free_eq(sc, &wrq->eq); MPASS(wrq->nwr_pending == 0); + MPASS(wrq->ndesc_needed == 0); MPASS(TAILQ_EMPTY(&wrq->incomplete_wrs)); MPASS(STAILQ_EMPTY(&wrq->wr_list)); bzero(wrq, sizeof(*wrq)); @@ -4850,6 +4860,9 @@ alloc_ofld_txq(struct vi_info *vi, struct sge_ofld_txq *ofld_txq, int idx) } if (!(eq->flags & EQ_HW_ALLOCATED)) { + MPASS(eq->flags & EQ_SW_ALLOCATED); + MPASS(ofld_txq->wrq.nwr_pending == 0); + MPASS(ofld_txq->wrq.ndesc_needed == 0); rc = alloc_eq_hwq(sc, vi, eq); if (rc != 0) { CH_ERR(vi, "failed to create hw ofld_txq%d: %d\n", idx, From nobody Mon Oct 21 18:39:19 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGv6CJ0z5Zd2C; Mon, 21 Oct 2024 18:39:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGv32H1z4G4M; Mon, 21 Oct 2024 18:39:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535959; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XqBZ9OBMNJLMKHTmJxYMREjf8pBzypslMRWvqF44um4=; b=tlDEGN9dtX7niPdQiSoH0Tq0eoPrCGjgHbe/pFfDF9DyvhHyWsVFMXMxzJBX67K8mNU/Zw E8ifqijk0rJsOc4xT0P566E4E7GR+Qsgu1MTfuiPjv4HGF5lnKki8MfCe3a8qzsQ8Ma7OP 4iYlynILeepWuCF0YatUR18b4x344E5EvI03kSTYnApBzHvMlCy0AF3ypjD29Akx5TYBGl w24suxWzPcwmua3MR6oKSXfXU4hIcfiL61Qvg8uPcN47eksB0xZhy3AxtkiC+dtmH/DBFT aLbGe21QJ1CVNFcedV/82cnReGXl85o6ARnYoSW4zcOkx5+VNcHM7WMfb+9Z1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535959; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XqBZ9OBMNJLMKHTmJxYMREjf8pBzypslMRWvqF44um4=; b=Jo1IjIPPlX5pgLDXDLipmXyrNDE/gFMYBChXF8Tfp3OYjYZfcBeu5OGlermSgTv9dfQSmZ V7CZYRQdDNGnSdZje2qJa7biBIQDgm+Kh0rq/qEUL1i+yKnlfCbT8Zdv4vxdziELAYOQls lOebABHp8bHyszj/Ijv1nvZPOspmeYhOl4kg3wEm6vkmYM+s0tgF4Tbmwid6+DobTkZPc8 9paIkLPCn5G4zM9rEB52sJAwH1RpadUlpsyecURXG5BcvluvFW/8VjlDDngmCDz/00alzH bz1eC66hg+btQK61kxqUagIQEsclL9PmbxL6VpSVnRkM7sUj6M6DswmlY32YDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535959; a=rsa-sha256; cv=none; b=VHfs42Ap1gBk2P+F5049CDwF2xmuMHwCv7Na4G/DzNwWMQl9OTF1FYE41d8w9CO+ur6gU2 UqYew1ZrGxO6A+eVKBB3KW9IhGD8VAd8z/34r0AFqqL4HYo0ceQsWhDWRUO3U1za4yrvOy fk1w9mUV07xXs3oZnrZ18EiCho6kTfdLpgySNDlMFFXRpU9ERbbVls9NcHJSk4W5dpAt7K piUFVOko41A0BeKtjiwWInfthArnULRzRmm/jkS225DHKRbkpLdX14aWI3y2n94iUYm7/Q +etyIk933VTEpGY7//iwcA76aRLjzpMCOIyDte+aV0sr+8tcxsWzqlPvQfrRFA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGv2fT3zh89; Mon, 21 Oct 2024 18:39:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdJGl036549; Mon, 21 Oct 2024 18:39:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdJJu036546; Mon, 21 Oct 2024 18:39:19 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:19 GMT Message-Id: <202410211839.49LIdJJu036546@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: ccd65f200cb1 - stable/14 - cxgbe(4): reset routine for general use. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ccd65f200cb12e1f6ebf11d59899d24f8e58b43a Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=ccd65f200cb12e1f6ebf11d59899d24f8e58b43a commit ccd65f200cb12e1f6ebf11d59899d24f8e58b43a Author: Navdeep Parhar AuthorDate: 2024-07-26 22:39:35 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:06:40 +0000 cxgbe(4): reset routine for general use. Add a reset_adapter wrapper that picks the most suitable reset routine internally. Use it in the fatal error handler as well as the sysctl based reset. Sponsored by: Chelsio Communications (cherry picked from commit d668a0b0abe4b079ac2a0d9cd0d7b71bd4a043c6) --- sys/dev/cxgbe/t4_main.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 4a9e64efcacf..7531168ca36d 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -2534,6 +2534,15 @@ reset_adapter_with_pl_rst(struct adapter *sc) return (0); } +static inline int +reset_adapter(struct adapter *sc) +{ + if (vm_guest == 0) + return (reset_adapter_with_pci_bus_reset(sc)); + else + return (reset_adapter_with_pl_rst(sc)); +} + static void reset_adapter_task(void *arg, int pending) { @@ -2544,10 +2553,7 @@ reset_adapter_task(void *arg, int pending) if (pending > 1) CH_ALERT(sc, "%s: pending %d\n", __func__, pending); - if (vm_guest == 0) - rc = reset_adapter_with_pci_bus_reset(sc); - else - rc = reset_adapter_with_pl_rst(sc); + rc = reset_adapter(sc); if (rc != 0) { CH_ERR(sc, "adapter did not reset properly, rc = %d, " "flags 0x%08x -> 0x%08x, err_flags 0x%08x -> 0x%08x.\n", @@ -3650,7 +3656,7 @@ fatal_error_task(void *arg, int pending) if (t4_reset_on_fatal_err) { CH_ALERT(sc, "resetting adapter after fatal error.\n"); - rc = reset_adapter_with_pci_bus_reset(sc); + rc = reset_adapter(sc); if (rc == 0 && t4_panic_on_fatal_err) { CH_ALERT(sc, "reset was successful, " "system will NOT panic.\n"); From nobody Mon Oct 21 18:39:20 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGw6dRKz5Zcwc; Mon, 21 Oct 2024 18:39:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGw47LFz4G4W; Mon, 21 Oct 2024 18:39:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535960; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Jju3y0c8R3wOwy+dFScvUCAPwqGSQmMNVfFIpq7wHc=; b=oB0ikBGz3vbL9IbT4hbtxYwmc1DeQzc9vyRU2R07TsXnX0yohPmKM7NHuzokmBR2mVJn1H JYbWo9XqBCsGSMNMF1um+u+0hQkqFulMA5OD+XP+0S0IEClJRLa/cKxRfjNObYO1Z3vKjK mi5TZ91/CmJ04vFtamsmmDPHGQlHcLC9wG9yGLj6S2N4LyE6HVbY1ucaGcJKvxHPq03G3O xkQ3YAYElKaqM5dGnMVAGmaqgSSscNmBHKhDBHcXRybJ1Mty2T6dKVxs/j9kXkz4wkkHpE WtcWnmSQgrlBafbZf/rzBlGkaG94LaP3PvjoU0BhozsLod/vg/KNoC4Kh96kCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535960; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Jju3y0c8R3wOwy+dFScvUCAPwqGSQmMNVfFIpq7wHc=; b=uLtUccAZudqSyIYBIO54ysEMZ/Is7tNByNId1Un8xNrQGwTcoXO+kj+g2pj/v6TXFykbmZ awfbem1mC5vELHLT6RJw39ZniWEVTX+mUyXfyoEdR/mAWQAIujjWJt116weTNtULzNwDdn 1HWO4gSer0psyIxXHp92MqgZJFK62nx3JSAjZ+m/V1ooGPZhi7XGA2zyre6c2w5T/iQJud YH5vBZ4JQeZh88rGv9Nxf3vuLZJYa45QyghwC91HoCcUoxHXduyJTn+Go01VTgJk3NT/Dz 1jLCWdxu0L4DpMIcAXoEtmryVVCgfBSsFXEXIHk84R7Y3g7/kAQZIUmFzrx+Dw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535960; a=rsa-sha256; cv=none; b=OZAsC+zgXI5ecWqNlWJj8a2ENwS81QhycxxUHI5xfU99x+LFpxtkCg7R5JPhpZYcMunJCL 08MZfttuLxSS6zthBWpCfejd93L2Mr5yJE+6gCoP7F3TefNuRdjWPRdfE+uTuFYd7uyf8g 6ZsEfEBFkE0yeFvdai3zA9+4ccOLXT3uMAVYpEN5T0kDk75MCz2ZPVscPx/xlTU7yxHidU hCEfwwjZddBH9Gi1tozIfnAZFYpLS3Scsbfo2TMB/ycPNS0be78AWDioglBSSWuYhbCK1A /JBXgXSmSrpFL1rf8fjxNYqIgvSu2RqTyZXTtooRchkXyb8At+l9NfmIBLixjQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGw3lSWzh8B; Mon, 21 Oct 2024 18:39: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 49LIdKUk036613; Mon, 21 Oct 2024 18:39:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdKHD036610; Mon, 21 Oct 2024 18:39:20 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:20 GMT Message-Id: <202410211839.49LIdKHD036610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: a7b24758d035 - stable/14 - cxgbe(4): Export the core suspend/resume functionality to other modules. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a7b24758d035a48cb3638e9a77db039361eb1c7a Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=a7b24758d035a48cb3638e9a77db039361eb1c7a commit a7b24758d035a48cb3638e9a77db039361eb1c7a Author: Navdeep Parhar AuthorDate: 2024-08-28 17:18:03 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:07:20 +0000 cxgbe(4): Export the core suspend/resume functionality to other modules. Sponsored by: Chelsio Communications (cherry picked from commit 1e584ca30e3a97eedf37368e7ad75c31f08be039) --- sys/dev/cxgbe/adapter.h | 2 ++ sys/dev/cxgbe/t4_main.c | 54 ++++++++++++++++++++++++++++--------------------- 2 files changed, 33 insertions(+), 23 deletions(-) diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h index 3922bd3909fe..2769277e8411 100644 --- a/sys/dev/cxgbe/adapter.h +++ b/sys/dev/cxgbe/adapter.h @@ -1392,6 +1392,8 @@ void release_tid(struct adapter *, int, struct sge_wrq *); int cxgbe_media_change(if_t); void cxgbe_media_status(if_t, struct ifmediareq *); void t4_os_cim_err(struct adapter *); +int suspend_adapter(struct adapter *); +int resume_adapter(struct adapter *); #ifdef KERN_TLS /* t6_kern_tls.c */ diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 7531168ca36d..f3841a23df71 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -2110,23 +2110,32 @@ stop_lld(struct adapter *sc) return (rc); } -static int -t4_suspend(device_t dev) +int +suspend_adapter(struct adapter *sc) { - struct adapter *sc = device_get_softc(dev); - - CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); stop_adapter(sc); stop_lld(sc); #ifdef TCP_OFFLOAD stop_all_uld(sc); #endif set_adapter_hwstatus(sc, false); - CH_ALERT(sc, "%s end (thread %p).\n", __func__, curthread); return (0); } +static int +t4_suspend(device_t dev) +{ + struct adapter *sc = device_get_softc(dev); + int rc; + + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); + rc = suspend_adapter(sc); + CH_ALERT(sc, "%s end (thread %p).\n", __func__, curthread); + + return (rc); +} + struct adapter_pre_reset_state { u_int flags; uint16_t nbmcaps; @@ -2464,20 +2473,28 @@ done: return (rc); } -static int -t4_resume(device_t dev) +int +resume_adapter(struct adapter *sc) { - struct adapter *sc = device_get_softc(dev); - - CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); restart_adapter(sc); restart_lld(sc); #ifdef TCP_OFFLOAD restart_all_uld(sc); #endif + return (0); +} + +static int +t4_resume(device_t dev) +{ + struct adapter *sc = device_get_softc(dev); + int rc; + + CH_ALERT(sc, "%s from thread %p.\n", __func__, curthread); + rc = resume_adapter(sc); CH_ALERT(sc, "%s end (thread %p).\n", __func__, curthread); - return (0); + return (rc); } static int @@ -2512,12 +2529,7 @@ reset_adapter_with_pci_bus_reset(struct adapter *sc) static int reset_adapter_with_pl_rst(struct adapter *sc) { - stop_adapter(sc); - stop_lld(sc); -#ifdef TCP_OFFLOAD - stop_all_uld(sc); -#endif - set_adapter_hwstatus(sc, false); + suspend_adapter(sc); /* This is a t4_write_reg without the hw_off_limits check. */ MPASS(sc->error_flags & HW_OFF_LIMITS); @@ -2525,11 +2537,7 @@ reset_adapter_with_pl_rst(struct adapter *sc) F_PIORSTMODE | F_PIORST | F_AUTOPCIEPAUSE); pause("pl_rst", 1 * hz); /* Wait 1s for reset */ - restart_adapter(sc); - restart_lld(sc); -#ifdef TCP_OFFLOAD - restart_all_uld(sc); -#endif + resume_adapter(sc); return (0); } From nobody Mon Oct 21 18:39:21 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGx6Fmcz5Zd2D; Mon, 21 Oct 2024 18:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGx59dqz4Fqp; Mon, 21 Oct 2024 18:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535961; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uA0on8Z4bPyZzzg8TEYWQukcQ0DRYVzjSzxBTkuj/FQ=; b=qfiuyYLKWDIvPb9YlVbwgXuXSIGvQFZ6y9Vyi2NdQn1fhtJXQ0J4vD7C94tV+cRLNX6Z4m Qr4Ju4OIS1PbA2E+t3x5brasA/TfyUwbWrrAhVUPZzkfglndrBy1h3mojYgbsTHZWK0LwU RDfWW3g5u+hsFPja6BKZ9AQ377++KgTJyiu6GPGGE2RcVwqri+ymgG7QwRdQVAwOSft2tU ycZgfpkNvj4r3fRGY2A8fAkQLspu7hyzLgWeQJ/XMVz+W4u7ZuG2/uZ1mmvdi2s7m+/46j gaFzN8l+ysi8sTp/WR1Rfzdjec2jO4XylSxNplADl+Kgupm9dmC9EU20XOha8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535961; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uA0on8Z4bPyZzzg8TEYWQukcQ0DRYVzjSzxBTkuj/FQ=; b=VDxSAV6+Vv169ylMPyCvAfV012Pp0wlWCjHKpplOpN4eTnGz5ni1IC/eJN3vzvgxubylLO jw9Scmt5E1OBUqOY6FXNLlJjm68FWiM+KnrKmD/L6bs6g/+ZDNY5VyMKOCO71/kmv67wPo lXZIgEML+SS+eH2yXuwJYOp01bbIPPAmlKMRtRhhAwW0c8g0DbWFPxXdUNkFrQXDI24Ups ZS040a6uC6VHI6FuTdcwbg2VGEeQRqSsMLX0pb9bRr3vCMtHEUDjnCsRx0+tbsubSWe14V 6GDhW2DBStkLZrRGKGwFugxcuqByjcxdRitszVHKsgVN1Xq4Y7M8OeehfJltkQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535961; a=rsa-sha256; cv=none; b=e628B0yUisQOihqyMg25oMRA4C2R9quq6ArsmsV6BtiSQvtnCb5uVu6o1pABOpNpVlY39D cwR2jmcfdbh9HCaJJI36mtAAspmSWkQrYB2xmUWriaxznfH9SPd5pRP9LDf3UWB5wSSkcy K+00/iUsOaitWqcJvE/347T6AeEJPB/8l01UzEQmNcpA6hbVOrMxH4qZPVEzBWz9abEFQc 7y8Z7dYIEmTEPsZG0vABVwAQgQnv+s7IO0yGXMiwtbIU/XHLWcSHM0k/QmkcIeWyD2+bBX NGNNMKyMnooiRq2drt0dZG5aSqlmZ0GcCk+8EmSIgzll7HnI9823xW++p1j6CA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGx4mzXzhjK; Mon, 21 Oct 2024 18:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdLUs036676; Mon, 21 Oct 2024 18:39:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdLXn036672; Mon, 21 Oct 2024 18:39:21 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:21 GMT Message-Id: <202410211839.49LIdLXn036672@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: cd2ae696295f - stable/14 - cxgbe/iw_cxgbe: Replace the fatal error flag with a stopped flag. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cd2ae696295f22db7ee72f528cea646c9c6cdcfb Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=cd2ae696295f22db7ee72f528cea646c9c6cdcfb commit cd2ae696295f22db7ee72f528cea646c9c6cdcfb Author: Navdeep Parhar AuthorDate: 2024-08-28 18:41:10 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:07:49 +0000 cxgbe/iw_cxgbe: Replace the fatal error flag with a stopped flag. Now that suspend/resume is supported by the base driver, a fatal error isn't the only reason that the RNIC can stop abruptly. Also, this state is no longer permanent as it's possible to resume operations after a stop. Rename the flag and associated routines to match the new state of affairs. Sponsored by: Chelsio Communications (cherry picked from commit 8254a276ad893ae2a1b35fcbbad255f06e29b8c6) --- sys/dev/cxgbe/iw_cxgbe/cm.c | 10 +++++----- sys/dev/cxgbe/iw_cxgbe/device.c | 11 ++++++++--- sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h | 10 +++++----- sys/dev/cxgbe/iw_cxgbe/mem.c | 2 +- 4 files changed, 19 insertions(+), 14 deletions(-) diff --git a/sys/dev/cxgbe/iw_cxgbe/cm.c b/sys/dev/cxgbe/iw_cxgbe/cm.c index 77158eb855df..2ca2fcb8041f 100644 --- a/sys/dev/cxgbe/iw_cxgbe/cm.c +++ b/sys/dev/cxgbe/iw_cxgbe/cm.c @@ -1089,7 +1089,7 @@ c4iw_so_upcall(struct socket *so, void *arg, int waitflag) * Wake up any threads waiting in rdma_init()/rdma_fini(), * with locks held. */ - if (so->so_error || (ep->com.dev->rdev.flags & T4_FATAL_ERROR)) + if (so->so_error || c4iw_stopped(&ep->com.dev->rdev)) c4iw_wake_up(&ep->com.wr_wait, -ECONNRESET); add_ep_to_req_list(ep, C4IW_EVENT_SOCKET); @@ -2717,8 +2717,8 @@ c4iw_create_listen(struct iw_cm_id *cm_id, int backlog) CTR3(KTR_IW_CXGBE, "%s: cm_id %p, backlog %s", __func__, cm_id, backlog); - if (c4iw_fatal_error(&dev->rdev)) { - CTR2(KTR_IW_CXGBE, "%s: cm_id %p, fatal error", __func__, + if (c4iw_stopped(&dev->rdev)) { + CTR2(KTR_IW_CXGBE, "%s: cm_id %p, stopped", __func__, cm_id); return -EIO; } @@ -2830,8 +2830,8 @@ int c4iw_ep_disconnect(struct c4iw_ep *ep, int abrupt, gfp_t gfp) rdev = &ep->com.dev->rdev; - if (c4iw_fatal_error(rdev)) { - CTR3(KTR_IW_CXGBE, "%s:ced1 fatal error %p %s", __func__, ep, + if (c4iw_stopped(rdev)) { + CTR3(KTR_IW_CXGBE, "%s:ced1 stopped %p %s", __func__, ep, states[ep->com.state]); if (ep->com.state != DEAD) { send_abort(ep); diff --git a/sys/dev/cxgbe/iw_cxgbe/device.c b/sys/dev/cxgbe/iw_cxgbe/device.c index 209d12767a1c..3c4d269f6c69 100644 --- a/sys/dev/cxgbe/iw_cxgbe/device.c +++ b/sys/dev/cxgbe/iw_cxgbe/device.c @@ -335,9 +335,8 @@ c4iw_stop(struct adapter *sc) if (iwsc) { struct ib_event event = {0}; - device_printf(sc->dev, - "iWARP driver received FATAL ERROR event.\n"); - iwsc->rdev.flags |= T4_FATAL_ERROR; + device_printf(sc->dev, "iWARP driver stopped.\n"); + iwsc->rdev.flags |= T4_IW_STOPPED; event.event = IB_EVENT_DEVICE_FATAL; event.device = &iwsc->ibdev; ib_dispatch_event(&event); @@ -349,6 +348,12 @@ c4iw_stop(struct adapter *sc) static int c4iw_restart(struct adapter *sc) { + struct c4iw_dev *iwsc = sc->iwarp_softc; + + if (iwsc) { + device_printf(sc->dev, "iWARP driver restarted.\n"); + iwsc->rdev.flags &= ~T4_IW_STOPPED; + } return (0); } diff --git a/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h b/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h index 5715b7e53863..ca2595b65b02 100644 --- a/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h +++ b/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h @@ -116,7 +116,7 @@ struct c4iw_dev_ucontext { }; enum c4iw_rdev_flags { - T4_FATAL_ERROR = (1<<0), + T4_IW_STOPPED = (1<<0), T4_STATUS_PAGE_DISABLED = (1<<1), }; @@ -167,9 +167,9 @@ struct c4iw_rdev { struct workqueue_struct *free_workq; }; -static inline int c4iw_fatal_error(struct c4iw_rdev *rdev) +static inline int c4iw_stopped(struct c4iw_rdev *rdev) { - return rdev->flags & T4_FATAL_ERROR; + return rdev->flags & T4_IW_STOPPED; } static inline int c4iw_num_stags(struct c4iw_rdev *rdev) @@ -214,7 +214,7 @@ c4iw_wait_for_reply(struct c4iw_rdev *rdev, struct c4iw_wr_wait *wr_waitp, int timedout = 0; struct timeval t1, t2; - if (c4iw_fatal_error(rdev)) { + if (c4iw_stopped(rdev)) { wr_waitp->ret = -EIO; goto out; } @@ -240,7 +240,7 @@ c4iw_wait_for_reply(struct c4iw_rdev *rdev, struct c4iw_wr_wait *wr_waitp, "seconds - tid %u qpid %u\n", func, device_get_nameunit(sc->dev), t2.tv_sec, t2.tv_usec, hwtid, qpid); - if (c4iw_fatal_error(rdev)) { + if (c4iw_stopped(rdev)) { wr_waitp->ret = -EIO; break; } diff --git a/sys/dev/cxgbe/iw_cxgbe/mem.c b/sys/dev/cxgbe/iw_cxgbe/mem.c index 5b8c7391514f..348cd3985e87 100644 --- a/sys/dev/cxgbe/iw_cxgbe/mem.c +++ b/sys/dev/cxgbe/iw_cxgbe/mem.c @@ -256,7 +256,7 @@ static int write_tpt_entry(struct c4iw_rdev *rdev, u32 reset_tpt_entry, u32 stag_idx; static atomic_t key; - if (c4iw_fatal_error(rdev)) + if (c4iw_stopped(rdev)) return -EIO; stag_state = stag_state > 0; From nobody Mon Oct 21 18:39:22 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPGz0rTDz5Zd2G; Mon, 21 Oct 2024 18:39:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPGy6CMhz4GHf; Mon, 21 Oct 2024 18:39:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535962; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ERtjKsgJnbH/MXG/yZdlskNQaibSyfjRezx9nswQ9L0=; b=uJBCrg2J9Y4bFUMGALpbb7DqA948yKTifzVofq+LOCE6N5bNpf7S5FIkg3Cq6jcK8JP6FX Z3OSDHPIhjdnuJ48RA/ZhabwUOsLKyKtlKqXSHSkOEe/vskHn4aRgPNB+UNawt2sv7cbGV 8EiVQLOtXcEJY5vZ24Uyx5jUds+ImHJNQTDkELLjD3ydaP6JaJ8Py5W/O3VDnzMDuL9fVa Q9ew4+I4qlO0opw3AuTuo84VwW7RYQXqtUp1XSnDYpBrRnDEVGYjswy5ouSZhCrreKNRWv 1/BBOi+aPojZntmV669U6ZDo3uFptlRpiIamYPfUdHnAFQ0fvsDOdUrsAZHwFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535962; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ERtjKsgJnbH/MXG/yZdlskNQaibSyfjRezx9nswQ9L0=; b=wcw0vwIUnhIZwugJ8gElRmOV7/pnDnGXz/+P/tcHiwME/i/dHsg9hr+sUkAhR7j5j56yvC 1tQhQKndOTAkN3dpoVRudyAXClN9xzLe8qF9BZISZdpnYHEYhKsJjWiK8TH73KZsapjVFV nSfkXl6OsjEUum/HDnhYW9iArGPKpdzALONrikkIokY4Wo9MtiE06URcSP1e0wDqeNBWbc sqAE1Bv3Qn7cn88mhs+IyM3zoL4Vqs1JO6YN+rc47Lc1bDsECIVIDrCpJ7mWOX4v+Rwk60 Wzeymkx+m4KLh6g9YO+Ag9Ll6d3YTEAl0db6qfGmz3LyzsJKgdcZ6Kdu55C+uA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535962; a=rsa-sha256; cv=none; b=IFDlbrEGGix8hKcyXxyvk6Ol3IiBvCZQG2hCHOGnQdttfTueBmGpTUmkczvIIhhELDb+lU D5uVTsyt8FB4XJNHUiJqSQLfbEM0VqwHiT9bbjPVWnfgDKNRACh+I2K1FXhfiWazoZ2waO RJWboVbknf33qGBjixTe0EfCIcxGU7ADUaagUdftPgCyRr7fQ2x+fQnp1zKraXknKI0tFc 590+D2UJp4gXN5LQqzFjyLNvZJXSTWRi2SZJi1hki/NxrIEhw9JiGGvXE11gxIbWQGnB0h RUbe5cFZ2acCbkYhOJntSUQ6ZUodHMoqhBnvBE6Cvoj4a5/QMPub0Tnz4KbZOA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGy5pZpzh8C; Mon, 21 Oct 2024 18:39:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdMlT036733; Mon, 21 Oct 2024 18:39:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdM6L036730; Mon, 21 Oct 2024 18:39:22 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:22 GMT Message-Id: <202410211839.49LIdM6L036730@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 11dc811bb86a - stable/14 - cxgbe/iw_cxgbe: Tidy up a couple of CTRs in c4iw_create_listen. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 11dc811bb86a704b3c426d5416cbe3befc3d8b0a Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=11dc811bb86a704b3c426d5416cbe3befc3d8b0a commit 11dc811bb86a704b3c426d5416cbe3befc3d8b0a Author: Navdeep Parhar AuthorDate: 2024-08-29 02:33:09 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:08:09 +0000 cxgbe/iw_cxgbe: Tidy up a couple of CTRs in c4iw_create_listen. backlog is an int and not a string. While here, fix an adjacent CTR that was spread over two lines even though it fits in one. Sponsored by: Chelsio Communications (cherry picked from commit 3f250bb6f05b57890215398767bbb8aa00c888f3) --- sys/dev/cxgbe/iw_cxgbe/cm.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/dev/cxgbe/iw_cxgbe/cm.c b/sys/dev/cxgbe/iw_cxgbe/cm.c index 2ca2fcb8041f..62961ca88aab 100644 --- a/sys/dev/cxgbe/iw_cxgbe/cm.c +++ b/sys/dev/cxgbe/iw_cxgbe/cm.c @@ -2715,11 +2715,10 @@ c4iw_create_listen(struct iw_cm_id *cm_id, int backlog) struct listen_port_info *port_info = NULL; int rc = 0; - CTR3(KTR_IW_CXGBE, "%s: cm_id %p, backlog %s", __func__, cm_id, + CTR3(KTR_IW_CXGBE, "%s: cm_id %p, backlog %d", __func__, cm_id, backlog); if (c4iw_stopped(&dev->rdev)) { - CTR2(KTR_IW_CXGBE, "%s: cm_id %p, stopped", __func__, - cm_id); + CTR2(KTR_IW_CXGBE, "%s: cm_id %p, stopped", __func__, cm_id); return -EIO; } lep = alloc_ep(sizeof(*lep), GFP_KERNEL); From nobody Mon Oct 21 18:39:23 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH00wSDz5Zcr9; Mon, 21 Oct 2024 18:39:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH006cpz4G95; Mon, 21 Oct 2024 18:39:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535964; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZLlJdjXbO/aDrE717pnobQ0fTaPEeqaRfRk9J9LOZQ8=; b=aXKuB7LI7lKqtGJpbbmKhh45f0QzOO7553nQ6Fbatpvjuk+HwkBgw1/WkT9lI+qfyJvnxR 1eL416IZVcdIO6sNA56a/XbCP0Z9h2Wkol/cDRl+rucBDzaCShDd5+HgmTkMwjxzsb4t6g 0Q03eXdvCe/iNcbm19LICVIqisySAXyO9mb92yj7cH/tq1hFbW4DfuJeSN4kJlgdvjfjhL kgrIlMxa60CEpViQji2l7iJrLNw0ESvmCKDMxqqMDvrGevKE9RmHGyZqk/wKeHy4CwKQMX nufNZ7GQ3bcCbykyzrnE/q4Mvfhl3gfqRPeMTm2Gq6U5tWuL988IZRZee3JaCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535964; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZLlJdjXbO/aDrE717pnobQ0fTaPEeqaRfRk9J9LOZQ8=; b=m8PaOJg3j5DdhRoJTGB75m+OGAmtwjRDE+MCc1BkdDXc6BZC0/M/Zx5sfW0XhvUd+FT369 3GoOXSWBQvQg2h1i6FGnyucYSr30jP2FlHXPE8DsKYZEI138jEg1ehRXo8ip8uu0ewJxtn eq2I73Ga70IOsW8ZSto6MKc8Swc815VUjxSIAHhbezqQfkmIGcLUz6C9uD700Qv05qnY9C mybM+cx+RGljQXDdlDsGS6AAIrLD3McCfv304FsemYuaL9ZvUbHtgyEsPydf7R9PqfgXET cDVjxpAX7I5Y9Q8G/OM8IOtMQebbABUf6CnMlqrJgpKsKAcssicHQaTd0IaVag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535964; a=rsa-sha256; cv=none; b=nlt/gDsBDEOnTYWbJSpasFWHF3myIHyS4Fm7Tn6FmXDpOgrqM+BL6DXqFYkfJopLRYgO42 ahI2SFEFpASB64rymhmZTwyl/1/XgsVE8RI7xWeSSZ4rAKcf7kJ9tJOx6mTxAzgJOZS31Y Vykq6lqGrg6dAwWHa+W8PFOFEBuVm4pLLDbGlWrcOuP3brXJOsBn5phTxJoAoElMHbVFft L5F36ixRlph2a2V88yy+NAf5wi33J0nFlvRO5bOELgobJ3eXsk1jFKtqIz3DoJLyEe4xa3 ldj3I8rztfGSWvQuh2BpR+cy3EMKRwoK9lwiiLdNyYiuZxKGUlcnFH3aZca3YQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPGz6qMnzhVk; Mon, 21 Oct 2024 18:39:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdNaM036781; Mon, 21 Oct 2024 18:39:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdNVG036778; Mon, 21 Oct 2024 18:39:23 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:23 GMT Message-Id: <202410211839.49LIdNVG036778@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 0366d0bd5028 - stable/14 - cxgbe/iw_cxgbe: c4iw_connect should return a negative errno. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0366d0bd50281cff65e3856f238e250dba39adfa Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=0366d0bd50281cff65e3856f238e250dba39adfa commit 0366d0bd50281cff65e3856f238e250dba39adfa Author: Navdeep Parhar AuthorDate: 2024-08-30 00:43:43 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:08:27 +0000 cxgbe/iw_cxgbe: c4iw_connect should return a negative errno. Avoid a pointless assignment while here. Sponsored by: Chelsio Communications (cherry picked from commit 3b4dcc0feb41120017381681d612d3cc21beb1d7) --- sys/dev/cxgbe/iw_cxgbe/cm.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/dev/cxgbe/iw_cxgbe/cm.c b/sys/dev/cxgbe/iw_cxgbe/cm.c index 62961ca88aab..cf4a8f1aa87b 100644 --- a/sys/dev/cxgbe/iw_cxgbe/cm.c +++ b/sys/dev/cxgbe/iw_cxgbe/cm.c @@ -2664,8 +2664,7 @@ int c4iw_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) CTR2(KTR_IW_CXGBE, "%s:cc7 %p", __func__, ep); printk(KERN_ERR MOD "%s - cannot find route.\n", __func__); - err = EHOSTUNREACH; - return err; + return -EHOSTUNREACH; } if (!(if_getcapenable(nh_ifp) & IFCAP_TOE) || From nobody Mon Oct 21 18:39:25 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH14Wrgz5Zd2L; Mon, 21 Oct 2024 18:39:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH111y8z4GLZ; Mon, 21 Oct 2024 18:39:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535965; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jIRtHyYYLiu9H6mZcF5+MvzPszJMFPRkuYWGqwbmITI=; b=kBJHp/rMbvYOVCc4lgR9+8JTkfMBbdetG2XFlAwpXyEMJOewp9mSB6FA2P8IcrdTCYEP2M 8PSHdFtzQkkD/mvXeKzBix1K6zsnQXPHZL3WZs+KvkE0hF85QdesAMyzQs6EnvdD37Gl+z CTJYcAwpWylpPYI6g5gJl5Wu/lckQCjDM+jjfESk32y+auZo3a/YfEeWVY7oNQFSbXhtnb yvWheWc4Z6LBIMeVPYyIhH5xeuqsKMXY3K6a2xMWmf4P9x4JUPOnCTUOm7OkV+JU4BWxmS QHwGiqvteVKh0v+Mb60C/Q1TC3VT9q8/kk8P/AnFDpLOm1LyRqMvuTMewZt7mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535965; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jIRtHyYYLiu9H6mZcF5+MvzPszJMFPRkuYWGqwbmITI=; b=kmNZg6ZMlDfpU3n4SBx9gAHkWdotqRZNc/DrxtIQggbXPAKzmQBhK5CIfkIXW/++rxW9OD v5UtbgtMQIfqIkjiSpq7uWfbAJOGG09dl6Ayv4tIKbrtKYA0Sug+4X9bJ1sQMtY1bLL6rQ vhLsLPhTWxooZh5Dp3zbeDcujazSJwwPi/0Z0c37LlE+F0W17GtqeI4MP1HkuUSIMc7vlG 3TXBN7cOLUi4Dopb1wqrcDLUSTur7L6DDHGgJUFfvFCvr+AOFdRmthp3RekIthbZdfjdoJ UlUt33ejeXmqsNA0sT56FkHfba+qpSCzwKARj0R1uoCe2/cfs+vKQmxr3KK+uQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535965; a=rsa-sha256; cv=none; b=wJ9kEWQaRZar4pCFi3Y12u5hDJCSHUxEPsKs8cLtIQvrxdCYnv2Vs8ugf96LdGo1Oa8I2M I+iDeaXO2xqkX1fvoxzif1qbo/5MLOjJVPnKcp+Jr5oEh1x2H3kxUg3Yreq59aZzhsIHY6 c1LueFdd01kpnaZc+wOBFB4Idsz3I4HTLnzoWs74P2QHzxJdKeDz8jY1B5DQkLpBkHdINn dJ8NSUiEZFj94lAqrb3vl06m6rcA8I9QGc3v1cWnjlc+qNNKbXzaYEPkmnVggxWDEJ8054 RX4SeLodm+G2ZEL1+NNcHHODj/kbNVRhPrSWZNfiPQ++9RxHE2OXiAFnu40Nbw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH10b1Fzh9W; Mon, 21 Oct 2024 18:39: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 49LIdPoG036843; Mon, 21 Oct 2024 18:39:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdPTq036840; Mon, 21 Oct 2024 18:39:25 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:25 GMT Message-Id: <202410211839.49LIdPTq036840@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: c7550138e5b5 - stable/14 - cxgbe/iw_cxgbe: Fail early in some callbacks when the RNIC is stopped. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c7550138e5b55f77bf5c8a7907c2f5f6134b4ddd Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=c7550138e5b55f77bf5c8a7907c2f5f6134b4ddd commit c7550138e5b55f77bf5c8a7907c2f5f6134b4ddd Author: Navdeep Parhar AuthorDate: 2024-08-30 00:23:16 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:08:56 +0000 cxgbe/iw_cxgbe: Fail early in some callbacks when the RNIC is stopped. Stop allocating new resources when the RNIC is stopped but continue to allow previously allocated resources to be freed. Note that t4_tom's uld_stop tears down all TOE connections, including those being used for iWARP, and that triggers the cleanup of iWARP resources. Fail post_send/post_recv early too to avoid the SQ doorbell. Sponsored by: Chelsio Communications (cherry picked from commit 9fdb683d92b36cbd20bbd8d61f0c1138f8348dd4) --- sys/dev/cxgbe/iw_cxgbe/cm.c | 2 ++ sys/dev/cxgbe/iw_cxgbe/cq.c | 4 ++++ sys/dev/cxgbe/iw_cxgbe/mem.c | 3 +++ sys/dev/cxgbe/iw_cxgbe/provider.c | 2 ++ sys/dev/cxgbe/iw_cxgbe/qp.c | 7 +++++++ 5 files changed, 18 insertions(+) diff --git a/sys/dev/cxgbe/iw_cxgbe/cm.c b/sys/dev/cxgbe/iw_cxgbe/cm.c index cf4a8f1aa87b..a343014f0b6d 100644 --- a/sys/dev/cxgbe/iw_cxgbe/cm.c +++ b/sys/dev/cxgbe/iw_cxgbe/cm.c @@ -2611,6 +2611,8 @@ int c4iw_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) CTR2(KTR_IW_CXGBE, "%s:ccB %p", __func__, cm_id); + if (__predict_false(c4iw_stopped(&dev->rdev))) + return -EIO; if ((conn_param->ord > c4iw_max_read_depth) || (conn_param->ird > c4iw_max_read_depth)) { diff --git a/sys/dev/cxgbe/iw_cxgbe/cq.c b/sys/dev/cxgbe/iw_cxgbe/cq.c index 9339d083cae3..197f2bcf8af0 100644 --- a/sys/dev/cxgbe/iw_cxgbe/cq.c +++ b/sys/dev/cxgbe/iw_cxgbe/cq.c @@ -106,6 +106,8 @@ create_cq(struct c4iw_rdev *rdev, struct t4_cq *cq, struct wrqe *wr; u64 cq_bar2_qoffset = 0; + if (__predict_false(c4iw_stopped(rdev))) + return -EIO; cq->cqid = c4iw_get_cqid(rdev, uctx); if (!cq->cqid) { ret = -ENOMEM; @@ -1037,6 +1039,8 @@ int c4iw_arm_cq(struct ib_cq *ibcq, enum ib_cq_notify_flags flags) unsigned long flag; chp = to_c4iw_cq(ibcq); + if (__predict_false(c4iw_stopped(chp->cq.rdev))) + return -EIO; spin_lock_irqsave(&chp->lock, flag); t4_arm_cq(&chp->cq, (flags & IB_CQ_SOLICITED_MASK) == IB_CQ_SOLICITED); diff --git a/sys/dev/cxgbe/iw_cxgbe/mem.c b/sys/dev/cxgbe/iw_cxgbe/mem.c index 348cd3985e87..4a1adc118b7c 100644 --- a/sys/dev/cxgbe/iw_cxgbe/mem.c +++ b/sys/dev/cxgbe/iw_cxgbe/mem.c @@ -621,6 +621,9 @@ struct ib_mr *c4iw_alloc_mr(struct ib_pd *pd, php = to_c4iw_pd(pd); rhp = php->rhp; + if (__predict_false(c4iw_stopped(&rhp->rdev))) + return ERR_PTR(-EIO); + if (mr_type != IB_MR_TYPE_MEM_REG || max_num_sg > t4_max_fr_depth(&rhp->rdev, use_dsgl)) return ERR_PTR(-EINVAL); diff --git a/sys/dev/cxgbe/iw_cxgbe/provider.c b/sys/dev/cxgbe/iw_cxgbe/provider.c index 729733a040d5..511caa436969 100644 --- a/sys/dev/cxgbe/iw_cxgbe/provider.c +++ b/sys/dev/cxgbe/iw_cxgbe/provider.c @@ -231,6 +231,8 @@ c4iw_allocate_pd(struct ib_pd *pd, struct ib_udata *udata) CTR4(KTR_IW_CXGBE, "%s: ibdev %p, pd %p, data %p", __func__, ibdev, pd, udata); rhp = (struct c4iw_dev *) ibdev; + if (__predict_false(c4iw_stopped(&rhp->rdev))) + return -EIO; pdid = c4iw_get_resource(&rhp->rdev.resource.pdid_table); if (!pdid) return -EINVAL; diff --git a/sys/dev/cxgbe/iw_cxgbe/qp.c b/sys/dev/cxgbe/iw_cxgbe/qp.c index 3aab07755101..0e374bc961c4 100644 --- a/sys/dev/cxgbe/iw_cxgbe/qp.c +++ b/sys/dev/cxgbe/iw_cxgbe/qp.c @@ -138,6 +138,9 @@ static int create_qp(struct c4iw_rdev *rdev, struct t4_wq *wq, struct wrqe *wr; u64 sq_bar2_qoffset = 0, rq_bar2_qoffset = 0; + if (__predict_false(c4iw_stopped(rdev))) + return -EIO; + wq->sq.qid = c4iw_get_qpid(rdev, uctx); if (!wq->sq.qid) return -ENOMEM; @@ -785,6 +788,8 @@ int c4iw_post_send(struct ib_qp *ibqp, const struct ib_send_wr *wr, qhp = to_c4iw_qp(ibqp); rdev = &qhp->rhp->rdev; + if (__predict_false(c4iw_stopped(rdev))) + return -EIO; spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); @@ -920,6 +925,8 @@ int c4iw_post_receive(struct ib_qp *ibqp, const struct ib_recv_wr *wr, u16 idx = 0; qhp = to_c4iw_qp(ibqp); + if (__predict_false(c4iw_stopped(&qhp->rhp->rdev))) + return -EIO; spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); From nobody Mon Oct 21 18:39:26 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH25N6Mz5Zd0N; Mon, 21 Oct 2024 18:39:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH23T9Fz4GJV; Mon, 21 Oct 2024 18:39:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535966; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=be6LBkm/z2lKTYZ8wtuUX5nf22OimBSOgp7AJiSMd4g=; b=anFPj7oDChsXIhCaD+QRWzaGGsB60rw+r75PtsxkKK19zgVOwCLmBoUuwNoiptNjn60/zO 8h5iDT9gIl5h4w1FfT64GfCnwhEh/z2Ish6Kd0RBTXzL5caA1lCurSU7JS3FRPp9KE/Bnz jh6uk8TqV6cbgBboXlT1B3a2PGM0gxZCH4LuvYVoBU0ushZZ916W8Cm0FYpLNYiQO2uKQ7 w/WoxsnJftCY7m1yfspG0ObO4Jj/m0Zq9zq9xbAcFyLOVUb7ZC37UHRsZEOVCHX+BAGu+2 o5cEYmpsIrKjmfhg3lWulus+JtwqgM81rV4HUxnjOu9bbFIvtal5K416fz1y7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535966; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=be6LBkm/z2lKTYZ8wtuUX5nf22OimBSOgp7AJiSMd4g=; b=Db3/0ZN6ZQW/L5t9z8ZUYCxh8Eki0Wq9OPYEXZiTbZkuqP5kUHt+V94afiyAF4iat+tmDF ZZf8+BxD//n1FvMbzoGShKS1SyDY3WkgpvT8RM3Fb9SGtoQRkBM/PAsFmV6U6VGcNWRRQ7 w3y5qqptu3sS55zFzLOMxXfnJSI96AhXxesXHkMfD96t9S9Jv3ZF6Z0fqb4wcEFbu1SeCu Mgk5TVRhPElVynUNyJwWnA5/ucKUjXP6flZiVAxMtk1kD+NboPbld23hhJMjcxGn5zMSTu wjT1SqkM9cGr4vEMyBdVmrNMwxBL+nPA/HAHFHb7Foow3/vWEbWQjECijAZGng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535966; a=rsa-sha256; cv=none; b=c3EFk1DcrFbR9u7Ci/2xXOSQXZli9s3V3yWCvVAdwDmy1jgmQiCkS24cKKHoIvZBdO6uK0 WjmWayvTACJZxbww/+rGya/97gpOHpfszIuHU1h1U9L0M9tAyeXrIHPZvBzIFNfcAmRcbU Q7Ag8C0RO7aNyxGt9wS5nBxLTxzqzfWWI4OE3TPjGPQYaXO9HiERf2rBmVbrvWlRkhva2m Ah2CdfuOKsSrSeZo10/nSCG+61NLOy351YUsv1v8J8A3/5FHPPEbzgPM0vGT9Y5Nd+DPFM LJDDd79ThFDgAlYAz0BqncD29Qxp3ge4wDAswqR7w7jJyM9kwb40k5cJ1zMnzg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH21rbczhVl; Mon, 21 Oct 2024 18:39:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdQ93036899; Mon, 21 Oct 2024 18:39:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdQHR036896; Mon, 21 Oct 2024 18:39:26 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:26 GMT Message-Id: <202410211839.49LIdQHR036896@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 3301201fc925 - stable/14 - cxgbe(4): Always report link-down on an abrupt stop. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3301201fc925a98b5ebdafe3f0cded5beef40d4f Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=3301201fc925a98b5ebdafe3f0cded5beef40d4f commit 3301201fc925a98b5ebdafe3f0cded5beef40d4f Author: Navdeep Parhar AuthorDate: 2024-09-05 02:28:09 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:09:14 +0000 cxgbe(4): Always report link-down on an abrupt stop. This fixes a regression in 5241b210a4e1 where the driver stopped reporting link down after a fatal error unless t4_reset_on_fatal_err was also set. Fixes: 5241b210a4e1 cxgbe(4): Basic infrastructure for ULDs to participate in adapter reset. Sponsored by: Chelsio Communications (cherry picked from commit 7aeec281b8b2620d7d88c9abdfadd7e20a485b9c) --- sys/dev/cxgbe/t4_main.c | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index f3841a23df71..4184900780a1 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -1920,6 +1920,9 @@ t4_detach_common(device_t dev) static inline int stop_adapter(struct adapter *sc) { + struct port_info *pi; + int i; + if (atomic_testandset_int(&sc->error_flags, ilog2(ADAP_STOPPED))) { CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x, EALREADY\n", __func__, curthread, sc->flags, sc->error_flags); @@ -1927,7 +1930,24 @@ stop_adapter(struct adapter *sc) } CH_ALERT(sc, "%s from %p, flags 0x%08x,0x%08x\n", __func__, curthread, sc->flags, sc->error_flags); - return (t4_shutdown_adapter(sc)); + t4_shutdown_adapter(sc); + for_each_port(sc, i) { + pi = sc->port[i]; + PORT_LOCK(pi); + if (pi->up_vis > 0 && pi->link_cfg.link_ok) { + /* + * t4_shutdown_adapter has already shut down all the + * PHYs but it also disables interrupts and DMA so there + * won't be a link interrupt. Update the state manually + * if the link was up previously and inform the kernel. + */ + pi->link_cfg.link_ok = false; + t4_os_link_changed(pi); + } + PORT_UNLOCK(pi); + } + + return (0); } static inline int @@ -2020,20 +2040,6 @@ stop_lld(struct adapter *sc) for_each_port(sc, i) { pi = sc->port[i]; pi->vxlan_tcam_entry = false; - - PORT_LOCK(pi); - if (pi->up_vis > 0) { - /* - * t4_shutdown_adapter has already shut down all the - * PHYs but it also disables interrupts and DMA so there - * won't be a link interrupt. So we update the state - * manually and inform the kernel. - */ - pi->link_cfg.link_ok = false; - t4_os_link_changed(pi); - } - PORT_UNLOCK(pi); - for_each_vi(pi, j, vi) { vi->xact_addr_filt = -1; mtx_lock(&vi->tick_mtx); From nobody Mon Oct 21 18:39:27 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH36ylpz5Zcty; Mon, 21 Oct 2024 18:39:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH33FrWz4GLp; Mon, 21 Oct 2024 18:39:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rQHALfZMw1voDocTbamXJb5OjDxXMY59N+cvS9QFNjE=; b=S1XJzfwMutZrCipKDtGqPzsDFC9ok7n7fSX2hQBXXX82aZ5vQRxSj1sjIB74NojxFtRXrW NpU0gHfgjyyng9QsY8LFlTxwVqlzcZNHPKv6R9keMkP66iezg3R5i1+APTf7L2KLFAzEoO 8iom6I2eWtHlna63xnq9HnvqW4xd+aoGThTFcIoQYbQ4sO5vVC5/ZE3CIJ6U4I+Ep8n2rT 7uN2u/tg/VH23u5btCh9d0b86LXDMgQSa07hsEvWHog1JiuwiS2R7MGcGbI2/7nZrJ+OkS 7+ri4V8FGywkZ1aSqXduITxJdW969DERu6Ud70azFGhVvD4yQ0T2nj9gNHDbwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rQHALfZMw1voDocTbamXJb5OjDxXMY59N+cvS9QFNjE=; b=YyCFshAV1LU0Wb45lT7SC3QR1KmK1BiU+YE8I+wJacVfVrRU2coWPI6TCbvmWAvmrUMA0W szz4UJTBjHbClHPIQo2wsNd864oHeSSGhKd8mUuVEiEULnIdZnY4HRMJcCHKekqjMasqOT 5zLJhK6+1FIuo5lnEU35+xHfZhrIO8rovvfK+26pZMxmjMyVe7/h/UYZ40pcx3YOLRi+rV PIXFVv+KU4FVDDQAIqPhPcGQ04Y5qgZRgOz8OPF2YnLhG2z61KRxCgvaWD9XzglKGZ4Eh9 qMzSC45R2KidnlD3cr20HsRix011wg10MGNwCudfIzdCs8y/3qk4BaSJ4H8qWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535967; a=rsa-sha256; cv=none; b=l9paxvVpnqKOPW900fj58eFxpu1QUsMZifnpja7QDnwSqqJIdPtNzPXC+4aOZ86eHGyjBK VbpGP3bu4X92Ju9JeEzuNHJAfzQjvu8o1+qi3xWgrLhNEuibO6NIHSH0pxTKrRHzkE6Hli cc/SYqfMJEmswXzlmXa1gb0uki/0vD1FGgY+XpYyLmNyJN7k8PeIogv7GmCvQ9UOl/L6AR BQZRonOuxR5/aZ18VT+8WlZYtzMjsXk33qCt7ycjbSxvlZq4CDttjgoxxf5V5wRA7vjNNU d78b2XaZShsSGDgOq52LERMi2kgeuv3jTUkWgSHisAWP934G5ZpObLnn0Dl41g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH32qdczhjL; Mon, 21 Oct 2024 18:39:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdReM036964; Mon, 21 Oct 2024 18:39:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdRah036961; Mon, 21 Oct 2024 18:39:27 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:27 GMT Message-Id: <202410211839.49LIdRah036961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: b5c08433224b - stable/14 - cxgbe/t4_tom: Add synq entry to the list before calling send_synack. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b5c08433224be47da8ce5d4ea66f17e58cfbf650 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=b5c08433224be47da8ce5d4ea66f17e58cfbf650 commit b5c08433224be47da8ce5d4ea66f17e58cfbf650 Author: Navdeep Parhar AuthorDate: 2024-09-06 06:21:59 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:09:37 +0000 cxgbe/t4_tom: Add synq entry to the list before calling send_synack. This fixes a panic where the peer's ack to the synack arrives on a different queue and do_pass_establish tries to remove the synqe from synqe_list before it has been added by do_pass_accept_req. Reported by: Sony Arpita Das @ Chelsio Fixes: 283333c0e329 cxgbe/t4_tom: Track all synq entries in a per-adapter list. Sponsored by: Chelsio Communications (cherry picked from commit 674cbf38f6d0a0b307e52c4265da9f077606b035) --- sys/dev/cxgbe/tom/t4_listen.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_listen.c b/sys/dev/cxgbe/tom/t4_listen.c index f91d193c0fed..8a39218a55ba 100644 --- a/sys/dev/cxgbe/tom/t4_listen.c +++ b/sys/dev/cxgbe/tom/t4_listen.c @@ -1494,18 +1494,20 @@ found: synqe->tid = tid; synqe->syn = m; m = NULL; + mtx_lock(&td->toep_list_lock); + TAILQ_INSERT_TAIL(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); if (send_synack(sc, synqe, opt0, opt2, tid) != 0) { remove_tid(sc, tid, ntids); m = synqe->syn; synqe->syn = NULL; + mtx_lock(&td->toep_list_lock); + TAILQ_REMOVE(&td->synqe_list, synqe, link); + mtx_unlock(&td->toep_list_lock); NET_EPOCH_EXIT(et); REJECT_PASS_ACCEPT_REQ(true); } - - mtx_lock(&td->toep_list_lock); - TAILQ_INSERT_TAIL(&td->synqe_list, synqe, link); - mtx_unlock(&td->toep_list_lock); CTR6(KTR_CXGBE, "%s: stid %u, tid %u, synqe %p, opt0 %#016lx, opt2 %#08x", __func__, stid, tid, synqe, be64toh(opt0), be32toh(opt2)); From nobody Mon Oct 21 18:39:28 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH45xxWz5Zc6q; Mon, 21 Oct 2024 18:39:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH44G8Lz4GLy; Mon, 21 Oct 2024 18:39:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=is8illmMqBRebcYT/V+27zA2SV/r5FJueM6hobSGezg=; b=KVH160/TU4TN/dgzzQs/5bHZhCIAflZRqPeBIMJ1l/zthj+rHZvQxpT1/0fgVfTWOiSrhg ge/e9eSVQhrkGkId3+ZFST1UbvBF1BKTQUkjiy//gKGoJ7FiijjaOXajFHN1VXKCqz41pu Tl8YE3Xzri3S69uU2Q7QCqQWh4iKZkZ7AEDy3PK6V/bXTttLtEMFuejJ4V6EYa1LkptXm3 oPET84q+2D72TpuqTZSzLZYvH5xXGqvMLuqdESW5+PVhftuahNKnp6/zxsp1nnpUkJuP7l mNd38n+CK6by+2wLI81BwITJKdAoFIFsZAchZVuKPEmty7c7Qh6hNBKZuVtZuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=is8illmMqBRebcYT/V+27zA2SV/r5FJueM6hobSGezg=; b=Dt3XTA2vv1MJGZCwEHYCJOaIS34pMAOsIPyBX3DDVl0KWCd/bMISzRvgjFGWn1uXPDGFrN nOQAbNqOscnzp5EXJHsO2yA/I4AZ/k+3z+GpXYUPxk32CUfvm0/VFOqC1NSz7TTPlrp+pV JHJokr6uCzrQrGAFCjwcoMRUigT0fttXbajkKAPoaYfFRCxTnvX8ktdTFZwA0VVfDx8ip6 FADRnEI2NBU0U6VeDNIm1OnCIk91vokQm/bQq2/8VIz62DKP+f3JThC3qjuui0h4ZzTBg7 oTE7My1Dv9WHLMOG1xEUbt8fUDIqxwm5QfHKBRrT6szMKy7BMyZB1efM3vftqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535968; a=rsa-sha256; cv=none; b=XAXisKXZ+i199dCmWaWb9zUOYumVPEfK9KyNhk6H6w48e7OhKm3RCdfvTR6Xu0WcdZJbwb kGzZryc/v4v/24B5QP0silvm3+deIfLWN5Jfp0beX1E0pKNMULoHepKFn60S3eiw8A0WdG mJewbCvsp8eUrIt0E75lrFxhhS+QIn8G+DS14jUx3gYmdaTgK3uKfB/rM4aj9R8KNeQJZn ncJ50IGlMGKw+E1e42AkP9ZvEOIj80OWR26HIf5QvWbua51C5vXl7D6RVd8cx1aI2wkLSN siGjWD7n54f4oWq165ZBFeBfDnvoARs9y1o2fXYcnvf8cX+wyf8/jvgcZJnvgw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH43tTTzhYL; Mon, 21 Oct 2024 18:39:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdSmM037030; Mon, 21 Oct 2024 18:39:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdSIL037027; Mon, 21 Oct 2024 18:39:28 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:28 GMT Message-Id: <202410211839.49LIdSIL037027@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 610ff48406ef - stable/14 - cxgbe/t4_tom: Demote STALE L2 table entries to RESOLVING in uld_stop. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 610ff48406ef779922298e3b9759fb0abb57e0eb Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=610ff48406ef779922298e3b9759fb0abb57e0eb commit 610ff48406ef779922298e3b9759fb0abb57e0eb Author: Navdeep Parhar AuthorDate: 2024-09-11 07:11:13 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:09:52 +0000 cxgbe/t4_tom: Demote STALE L2 table entries to RESOLVING in uld_stop. The STALE state means the L2T entry is valid in hardware but needs to be refreshed (ARP/NDP) in software. But stop/suspend wipes the hardware L2T and STALE entries need to be updated just like VALID entries to match actual hardware state. Fixes: c1c524852f62 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. Sponsored by: Chelsio Communications (cherry picked from commit 171e57967b3e53f0fb48116df5003ce17163295c) --- sys/dev/cxgbe/tom/t4_tom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 9b1dcf304196..356ac7edc134 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -2115,7 +2115,7 @@ stop_tom_l2t(struct adapter *sc) for (i = 0; i < d->l2t_size; i++) { e = &d->l2tab[i]; mtx_lock(&e->lock); - if (e->state == L2T_STATE_VALID) + if (e->state == L2T_STATE_VALID || e->state == L2T_STATE_STALE) e->state = L2T_STATE_RESOLVING; /* * stop_atids is going to clean up _all_ atids in use, including From nobody Mon Oct 21 18:39:29 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH573h9z5Zcv6; Mon, 21 Oct 2024 18:39:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH55JQCz4GK7; Mon, 21 Oct 2024 18:39:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hoDNgT4K8xOWIxtRMMaH7X2PHmwUDHd1YlGuN2vcrf4=; b=W8XLQAAFhS4HtWLsvzl9av/Jb3VV4h2ZW5lD1zDw9JE+ruMbaLt26iySGnqdlEFjTN5Pkg PVUZmQz2uSOLmP1WtHrZVxxfTbmnAXNI5On+vx6Hg0x405EZaAT3pL9tps82EMMitPBub5 3eAFE8lmmyedgnDKuaLmKj+7xZE6tRYzqTR9OSL8an9WRtvDLxoxw5qJ/67xiuVVzej4UN yVEvRj/sZTF1ShlbyMspgPQ99BxvumcwTyQEIy6ywslx/acaTWJw/p3ELA6mjF55OldN52 aavZ5CdDhD3kYUGfgj98+AGr6b9fyGtvs3GxqdoK2GifwVHJinwOZphuc45z7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hoDNgT4K8xOWIxtRMMaH7X2PHmwUDHd1YlGuN2vcrf4=; b=rP+hVH3rUD6seoTYVu6gZLsugUr1NYwpruCUA/Av2DjxIdFpR7X8L9g7IANFekJRG8U58H i6ntJbWFBY3B02JqwZMYNzXYL6jD88QAdfIGxEXf+3V832T4xouMKEtckYIZWXHHd4wQF7 sqj275Qkzefm2vh0F1nGgJAFzPh6qwu1W56tXxEQ13/kSHFnlJ9IMjm5K3vAOaIQSHjxJN 4LtSasEqd0TkkWPFO4fBmbFqot7WxtPGjtjPGlmgCLBrEjv6jImh1FczpjS1A7x6nVEPaV Qwi/BgbOkdboWfABt8VLZA7OezxTZu6Ee4SonxYZP4AGQOTURft3uUNaoZkx3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535969; a=rsa-sha256; cv=none; b=sG+GNKsCEymtfv+M/gCXUtb442v9bW6i+7yOxYreIvXL/HJ76hCMnouYNCzhWx9vUs56sG N1nX/mFAHlAMblJD+bTKXRJ4DvpexAOrioNpfQFQP2q1JPJd9nbISc4+BHL2JU4fKYd33S SWMpdbXIrZ2Nz83UuCMScGBxyHnHA0l//YDKOgBDZqm0m+Zt9hMYD7mQsChi2Tkf6aam8N vQx/yo36qfJOYXbcf3YmnablvywSvY1r+Y1sHkMYhCzx97EWA1GPmgf/Eylk8UAbnuEaBY w9OOknv7x4mvMAk+e/gjgUqGg0XvYVUh4tXcX5eyon4ocQ3nUnlYxIjWzUOxEw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH54wjYzhYM; Mon, 21 Oct 2024 18:39:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdTGN037094; Mon, 21 Oct 2024 18:39:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdTls037091; Mon, 21 Oct 2024 18:39:29 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:29 GMT Message-Id: <202410211839.49LIdTls037091@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 261c616077ac - stable/14 - cxgbe(4): Make sure that the tracing filters are usable after restart. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 261c616077acf134a5d8117f6e4cffbd5f970a35 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=261c616077acf134a5d8117f6e4cffbd5f970a35 commit 261c616077acf134a5d8117f6e4cffbd5f970a35 Author: Navdeep Parhar AuthorDate: 2024-09-11 08:01:38 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:13:47 +0000 cxgbe(4): Make sure that the tracing filters are usable after restart. The destination queue for tracing filters is destroyed during stop or suspend and the software state needs to reflect this. A new destination queue will be setup when the adapter resumes operation. Sponsored by: Chelsio Communications (cherry picked from commit d82cb5c608ae9aaced4cb459ca511e62c64dbf74) --- sys/dev/cxgbe/t4_main.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 4184900780a1..3223d32b5d36 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -2091,6 +2091,11 @@ stop_lld(struct adapter *sc) TXQ_UNLOCK(wrq); quiesce_wrq(wrq); } + + if (pi->flags & HAS_TRACEQ) { + pi->flags &= ~HAS_TRACEQ; + sc->traceq = -1; + } } if (sc->flags & FULL_INIT_DONE) { /* Firmware event queue */ From nobody Mon Oct 21 18:39:30 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH716tJz5ZcYq; Mon, 21 Oct 2024 18:39: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH65yRcz4GQ3; Mon, 21 Oct 2024 18:39:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PuDOSCYhTY1SRLEvZ7besxbVTk1RzQnO6I7N6pg83So=; b=CKuJTAdVpW72POJJnfS53Atf3mWbB9D3E4caYvHayIFNIgYfQ9fQ5JuIKMcgrggZv6aAG/ 9a06ZRjv/+yAInQ/aaLwgFHSKPxST3ApMpiAd1sE4OHGtirmkESpnntRbY6S01rrWYCygu kDGZKfoUXABbuEfr1aP0JyH2R9K7pm/f0AWah2QZ1ppszXX54R1xD8DmTfO1TiEvVyFZ5j GLuPUvKs+Enax6YkDx1l9SSdrtr53Eo4u0fFpctoLWCpx/gErVD3J2b3SgRFEEA3w9qemm 4TLyRr1zGb8qFWXym2avWDA5SMIe1Y626bV5oY3rEWKgpwQv5HdDtUuY/OKrfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PuDOSCYhTY1SRLEvZ7besxbVTk1RzQnO6I7N6pg83So=; b=X0z08/P9X9bXfWoZVcL5yP9YwE4or23nFinJuZjs/Gb10vSJxUG5n97TtV8Eut+NTWoMo5 80xEjMfqsXPES0AesfjZ5sZz9dGe514MwQhFmTGBPzB/FJ3+tUDJjsHMxW1bStcV5BCGsE /efD3muqkqnrVrhN4OdoRL1TwiAiTNvff+oA10coD6JdIQaww78aq5AJOoyyLWHQmm/6eu bQ+nt7EyCg82SxMEoHq7+SP7KWnF51yLsalGDHyTkWf2Ov/gRxpnHVK/ndz6bOA826qc6e CVMWBVbXNTDyon3NDFm1wUAu9PBQ1KhuSMwwtFCrkwJVPcgchUIOl/4C2aK+9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535970; a=rsa-sha256; cv=none; b=FD2Cys3FQHT+sEATw0OXNFsEDrQF7r7HOoMwFlPCoZ9XVPCCGilAXrXRCXhLLigj03GQER mkACE1EsL8eADX87/8rUEXHf8UTM1XxwiKJzJUHCrdM/ZaoA5BJR6OqMdyLKFAsbQA96Eq +M5gGsN4KajiFZEMJWdcIcdV9BumkXmx7K2FyMcCIZNzIUqKHKgGnaByvZo4J0Rnue+JRZ Dx6KDILMu6oQkr/NirelD9mavzE4LW9VvdL6HcYk5ulUjPSd1DvNK+10xYrFDH3doem8tq 9WfZ9fiOL98ys36GGhRrLgFU0xSH2t+2zAwWMMo+VvMgPJidsCdTgcZY6z81dQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH65ZlgzhQR; Mon, 21 Oct 2024 18:39:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49LIdUoo037153; Mon, 21 Oct 2024 18:39:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdUCM037149; Mon, 21 Oct 2024 18:39:30 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:30 GMT Message-Id: <202410211839.49LIdUCM037149@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 2c9c295f5e95 - stable/14 - cxgbe/t4_tom: completely avoid L2T entries during stop/suspend. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2c9c295f5e9555a642de6e9473bf3571f593f4c4 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=2c9c295f5e9555a642de6e9473bf3571f593f4c4 commit 2c9c295f5e9555a642de6e9473bf3571f593f4c4 Author: Navdeep Parhar AuthorDate: 2024-09-14 04:23:23 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:14:04 +0000 cxgbe/t4_tom: completely avoid L2T entries during stop/suspend. 1. Mark the L2T entry valid only if t4_write_l2e succeeds, which won't happen if the adapter is stopped. This prevents L2T entries from sometimes getting (re)promoted to VALID on Tx activity during stop. 2. Discard a work request immediately instead of enqueueing it to the arp queue if the adapter is stopped. Fixes: c1c524852f62 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. Sponsored by: Chelsio Communications (cherry picked from commit 07f47e8850d0639d474026b203013072aeb32c81) --- sys/dev/cxgbe/tom/t4_tom_l2t.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tom_l2t.c b/sys/dev/cxgbe/tom/t4_tom_l2t.c index 749e5704863e..be42a887323f 100644 --- a/sys/dev/cxgbe/tom/t4_tom_l2t.c +++ b/sys/dev/cxgbe/tom/t4_tom_l2t.c @@ -212,20 +212,18 @@ update_entry(struct adapter *sc, struct l2t_entry *e, uint8_t *lladdr, e->state = L2T_STATE_STALE; - } else { - - if (e->state == L2T_STATE_RESOLVING || - e->state == L2T_STATE_FAILED || - memcmp(e->dmac, lladdr, ETHER_ADDR_LEN)) { + } else if (e->state == L2T_STATE_RESOLVING || + e->state == L2T_STATE_FAILED || + memcmp(e->dmac, lladdr, ETHER_ADDR_LEN)) { - /* unresolved -> resolved; or dmac changed */ + /* unresolved -> resolved; or dmac changed */ - memcpy(e->dmac, lladdr, ETHER_ADDR_LEN); - e->vlan = vtag; - t4_write_l2e(e, 1); - } + memcpy(e->dmac, lladdr, ETHER_ADDR_LEN); + e->vlan = vtag; + if (t4_write_l2e(e, 1) == 0) + e->state = L2T_STATE_VALID; + } else e->state = L2T_STATE_VALID; - } } static int @@ -291,7 +289,10 @@ again: mtx_unlock(&e->lock); goto again; } - arpq_enqueue(e, wr); + if (adapter_stopped(sc)) + free(wr, M_CXGBE); + else + arpq_enqueue(e, wr); mtx_unlock(&e->lock); if (resolve_entry(sc, e) == EWOULDBLOCK) From nobody Mon Oct 21 18:39:31 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH81xn9z5Zd2V; Mon, 21 Oct 2024 18:39: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH774dHz4GKh; Mon, 21 Oct 2024 18:39:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T4qRN7CkXO8cKfsZIA/yNlFIThz+L6s9HIIdkgFFY4g=; b=eV4d0qihnJht2XWl2vU3bi/j5EgiALSfaQEBXOseQJDr65ZlriN8UwHsHYLsKO3X9IRJxD 2WItoStzcDTGv2EsvR9380r4yIR8HjHyO+S02nAKo2UvikN4TO87Q+hBK5T6TFYpR6mwaW LnqVSMM2UuTyoQ9LVZovolYjWZk4KuIqpnJKQS8zgpesFlkV9nmtIXookY7NLgZR2QzNX6 BoEeZEdw2lrkmaJ2Q8JMTLHnNyKSQwago2OzAgM7oMLtE44Lb8takJBNdjOWHYnNuKWYtz wbEjgOaDNm4sL4I4kdpJFa16biipoQnKvv2ox9t5gvn96U+LPIH0ez3UnWDPLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T4qRN7CkXO8cKfsZIA/yNlFIThz+L6s9HIIdkgFFY4g=; b=dw9cPSySix9Mk0Qp2q5786XqKmD5cvzuNR0mpISx0lcWUGbvtlTpjQOqraCfbwy8U+odla 0q7+EkkIrxo5wPYLJv4hHRD3LkOK74dXHfEhkmaziaSzWZkJwQkGm3fIoTAOIC1m8NhjQV P9KYWB8O/erQd+OhZGHCWVm2RPB7tYsXvR9iX22DxMOEbY10EfDUDG1/p46DhvDdMV7gyB XuVegF/cVlKa+O8R+CgJaRdfvR44LTr2FMme4zik0lqzzz3fByMw8jwnwhyw7i6iF6GEBq tDWkpZZO7qzvslRgNLwNQfwUqupe+rSzrCKbVvgE7WWXD4J7yMPXad/CiSvlEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535972; a=rsa-sha256; cv=none; b=bkl9PRMP3DwnxOuwvpfDIYRjbKBRqG6b8hFipLYPGalheplwn3xekk/VbXkqSLVA+yQmho VgD+53PLfrU543ccP0HHs3/DuCQ/1k4lrKa7vhOU6bHHx4ExZy4r44ateUItF7UQzOmRIZ WNprnUDFNgoxog4teY4uK1cHxBO9grt1O8zlqy17LLseTH28XpHiSpHnMf4Or9gh/6lxiG Wc+fuQEgo9Y6YRttDHxxi2i7u3wBzlHc/14zwiUYLyEHwICofsfqFxVLyZ/wUd9wqTyYMp rYDoPj8walirzTtpl97O3JujcfVpU2mA5r1FfF9t00uDL/6SR1JPWQylpoMJow== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH76gfWzh9X; Mon, 21 Oct 2024 18:39: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 49LIdV11037223; Mon, 21 Oct 2024 18:39:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdVZq037220; Mon, 21 Oct 2024 18:39:31 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:31 GMT Message-Id: <202410211839.49LIdVZq037220@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: b56fe21c6df2 - stable/14 - cxgbe/t4_tom: Do not set unresolved entries to STALE in t4_l2t_update. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b56fe21c6df2911f96263675298e19e9b8720366 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=b56fe21c6df2911f96263675298e19e9b8720366 commit b56fe21c6df2911f96263675298e19e9b8720366 Author: Navdeep Parhar AuthorDate: 2024-09-24 14:35:09 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:14:23 +0000 cxgbe/t4_tom: Do not set unresolved entries to STALE in t4_l2t_update. An L2 entry in the driver's hash was marked STALE unconditionally if it changed in the kernel when its driver refcount is 0. Fix the driver to do this for VALID entries only. Sponsored by: Chelsio Communications (cherry picked from commit 3883300afe0bff5c5658274c4d8cfe773d08343e) --- sys/dev/cxgbe/tom/t4_tom_l2t.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/tom/t4_tom_l2t.c b/sys/dev/cxgbe/tom/t4_tom_l2t.c index be42a887323f..8cc3e633444a 100644 --- a/sys/dev/cxgbe/tom/t4_tom_l2t.c +++ b/sys/dev/cxgbe/tom/t4_tom_l2t.c @@ -441,7 +441,8 @@ t4_l2_update(struct toedev *tod, if_t ifp, struct sockaddr *sa, mtx_lock(&e->lock); if (atomic_load_acq_int(&e->refcnt)) goto found; - e->state = L2T_STATE_STALE; + if (e->state == L2T_STATE_VALID) + e->state = L2T_STATE_STALE; mtx_unlock(&e->lock); break; } From nobody Mon Oct 21 18:39:32 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPH94057z5ZcvF; Mon, 21 Oct 2024 18:39:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPH90R1Kz4GDv; Mon, 21 Oct 2024 18:39:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535973; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=edtjtw6a5aDkQ6V3UPGy4UEG4ZTCmkVN77A5ae0Kq08=; b=xSiGoPjDENnUPQfMTdrhCP2LibQTpykCjfbwd4D7XJLVcdQaDgIjAc33uCHAog7bB2wVYU zOHtE7g0di43IvJd+MyntmieIQdtu7WLgf8JyAfrnYj+MLv085Hp9vV5tYxIZ8lTY9xN1b Aw/cB8PohV52rq98zbwCwW6PsJy3atXRA6pmOMZWB1AKdYFfikYjQhkboO266Dux+CPTDl Cb/yVJE41+FzDa46J7mr6zEailC5mOKLeFX8ySC/ajUs6T7BLcepTxKbBmev1om5BnBh/d WQKc/wwE+jfaToYzg5P3ddjEGWZyz9V1/CuK2JUmwZOyvRe4/axeBCGB32kH4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535973; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=edtjtw6a5aDkQ6V3UPGy4UEG4ZTCmkVN77A5ae0Kq08=; b=jZUr3EBaqZrOe9apfAZhM6qclAJrfenlslVGZSPDtiL/cfQwwNAePtzOCj0BVGzH8MFBOg oH62F93PbbcGlEmbPmhxgw8MdRb05mYIIu1atKQsxb/wuzMwOBXaZUG49IhSCFvupCQ1dc omKbwn8hHHDSRjhMXx9d2MY5BPG8079H8Vl5N5jT0Om83SQrca54MPaJDjizbZkGMwe51T JP0WWDdmvUV3s4q15XeUrMcUQ4yVJNgAFhArc9AuG3oJXygNHJ8sKumft4DsJNbSi6pIr6 vlxnhdcjt7taMWlZNJoqvLgE1bgRqEjOi83VvDKIix/NHBSwYCO++ld+bzLpFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535973; a=rsa-sha256; cv=none; b=olNj5ckXxDvuEAuUR5ok0+UbGprdXyL3Gi2LzrKgaB7Awha70+hqg0w5gQgkCm3Ktsj6rV RbrgZpXToUnXKPGgbPg76XFLQPFSrAaLkByDxLsn1O78V7ppK3jXfbxXtXlnCyYvBmMs0T LK4/1n1TDexDZdARaIOhQ7vWNudMwyPofzJ4zrKGQBPsficE64bSGbZeCZDe5LaORgDbxU A1wz4AJNtWPS5cbY0hyeZdOXAReBxhuUZOoR6qMHUDn6XRJUQKF0HtMwOWaSLxA9MOZzJb pzy2oqjQCl5XE07xn6BKZ9HE91poCc5CY/deKg43zyYO0h6I7/e5JhLEoB9Cmw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPH903R8zh8D; Mon, 21 Oct 2024 18:39: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 49LIdWJG037296; Mon, 21 Oct 2024 18:39:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdWIA037293; Mon, 21 Oct 2024 18:39:32 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:32 GMT Message-Id: <202410211839.49LIdWIA037293@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: b9f7a09c490f - stable/14 - cxgbe(4): Clobber all tracer state on stop and redo only traceq on restart. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b9f7a09c490f4eb6b9c179d1dfd756e236494998 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=b9f7a09c490f4eb6b9c179d1dfd756e236494998 commit b9f7a09c490f4eb6b9c179d1dfd756e236494998 Author: Navdeep Parhar AuthorDate: 2024-09-24 23:28:29 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:14:39 +0000 cxgbe(4): Clobber all tracer state on stop and redo only traceq on restart. Tracers have to be recreated after a restart but that's okay given that they are used for debugging only. Sponsored by: Chelsio Communications (cherry picked from commit ee3da604dd016439850dae77366796313e60f0e0) --- sys/dev/cxgbe/t4_main.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 3223d32b5d36..e33e732a7fa2 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -2095,6 +2095,8 @@ stop_lld(struct adapter *sc) if (pi->flags & HAS_TRACEQ) { pi->flags &= ~HAS_TRACEQ; sc->traceq = -1; + sc->tracer_valid = 0; + sc->tracer_enabled = 0; } } if (sc->flags & FULL_INIT_DONE) { @@ -2411,6 +2413,15 @@ restart_lld(struct adapter *sc) "interface: %d\n", rc); goto done; } + if (sc->traceq < 0 && IS_MAIN_VI(vi)) { + sc->traceq = sc->sge.rxq[vi->first_rxq].iq.abs_id; + t4_write_reg(sc, is_t4(sc) ? + A_MPS_TRC_RSS_CONTROL : + A_MPS_T5_TRC_RSS_CONTROL, + V_RSSCONTROL(pi->tx_chan) | + V_QUEUENUMBER(sc->traceq)); + pi->flags |= HAS_TRACEQ; + } ifp = vi->ifp; if (!(if_getdrvflags(ifp) & IFF_DRV_RUNNING)) From nobody Mon Oct 21 18:39:34 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPHB54rWz5Zcrd; Mon, 21 Oct 2024 18:39:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPHB1qZSz4GQg; Mon, 21 Oct 2024 18:39:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L71lVtnDghIqYfTqS34jccqsxpR5v1pF2vEUt/pLkfw=; b=vyI7SKfDVeLIyoKfJHUW8wQka013hDlVDy8beT9wq7eTmvSMWTqxNxn1cGOsbYi2NzetaE 0AfoSpr5pSZkIoWRf6r81/AX0UJSLzh9ZmDlj7CMKz1xYTPplYvPJo1Gj19mBPfPIWrL8T SA+ao+7lCVE9DHj4S82nkl4zdMge8ISgTHGokC2ZOuJz23pWYe8P8L3oW8fqlDNClg//AA NGd9s2GKc5BkFhH1M9ennrbkukHUdfnLLFcXZVRtOXo3xl5iu79+Ix9tTpC8J+hbK67EjR xKVNc482NxAgRjwcE/efkfSqW6f3dLjkawZDW/5MMkf5O0pJJmscyV1Wx/hccA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L71lVtnDghIqYfTqS34jccqsxpR5v1pF2vEUt/pLkfw=; b=cq1zjqGIsNUQxTd11/dxVgGYBfhM6lwLg5bHKwIV0FsvvmsYbAMTpwWyEnaKvvijOh7ISM GSC3kgPf/N9mCYSbu/jAlsQZriZyAVKMgTy4nisFy33rJFcPpfj+rj+i4zcXmuy2tKVtz+ YKsu9TqJwuicN2dNEpbZOEON1woPiu3GfTo9jMkhGaWco2hjm5mFN+QDTPA4nylc7Qh5KX 850FKQd7Ljb+YPhaqkIcT6NGT1J3PO4OzEIIOu8nFW2Auyv/nC7/PZm+tQ865GrOY4Qxbo pncFaqIZkuul4SSAkvNQ9hnL3BNf4OciZOQ+DHFWPNCI5Fk2ibcoPcBqDglvEA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535974; a=rsa-sha256; cv=none; b=pApA77loIcy+tUd3v8mT4RLZROEHdju770AMZMfPHCHSjvzZAKTNT5wwiF5mE4OQA6PtzN uoBwzE+svbAYkTroCuaCSGTrjqlirV/gCY4ruYQGpLyCEm256wsfbXDwLZ5ibfz5lbXDcs HG4qJ4/pklXfox8YIup+ejnFNgifSIgMbDvIb0ZhXNz5hc2KHEpI3D+DeJ1nrJrG42Lksk 6Zui2SzeFqKEeeItaQOwKM4NGh2h3JNXxxK5wnW5atXYfS1hoPtTYnxQDPSgR/lbq6IEpF 4cwt+tGIV4DGzhW44RFd7o+UV5mgcb8H5LV4BrY3Oij+Q3i9UUfIW5V3MAPTRg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPHB1KfZzh5l; Mon, 21 Oct 2024 18:39: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 49LIdYIV037352; Mon, 21 Oct 2024 18:39:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdY97037349; Mon, 21 Oct 2024 18:39:34 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:34 GMT Message-Id: <202410211839.49LIdY97037349@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 48473a98a993 - stable/14 - cxgbe/t4_tom: Remove duplicate unlock in t4_tom_deactivate. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 48473a98a99355eec1bd029c09cac3dcfeead7d0 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=48473a98a99355eec1bd029c09cac3dcfeead7d0 commit 48473a98a99355eec1bd029c09cac3dcfeead7d0 Author: Navdeep Parhar AuthorDate: 2024-09-29 20:04:30 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:14:56 +0000 cxgbe/t4_tom: Remove duplicate unlock in t4_tom_deactivate. Fixes: c1c524852f62 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM. Sponsored by: Chelsio Communications (cherry picked from commit cc110bbec6d23d8cff47733704c71de641d0c8e8) --- sys/dev/cxgbe/tom/t4_tom.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 356ac7edc134..d5b6b6ee2ce0 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -1966,7 +1966,6 @@ t4_tom_deactivate(struct adapter *sc) MPASS(TAILQ_EMPTY(&td->synqe_list)); MPASS(TAILQ_EMPTY(&td->stranded_tids)); mtx_unlock(&td->toep_list_lock); - mtx_unlock(&td->toep_list_lock); mtx_lock(&td->lctx_hash_lock); if (td->lctx_count > 0) From nobody Mon Oct 21 18:39:35 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPHC48v1z5Zcws; Mon, 21 Oct 2024 18:39:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPHC2m0qz4GdP; Mon, 21 Oct 2024 18:39:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4lYi8y1pcJlpPtMs9ZXvznZYDr+mpmSfx+2MZOFSrXA=; b=ijpZ9VBJ5rGNFjfWoJ94Mjumqa76lQkRTZz/Ezh6ObW6rtqm2ZS5MTfEsgwtKkIFBYpQMK LfsemJr6N8LIiOILwxjpIqYvUMJrGAs7sw9fhwwiyyYkT2FIu3QiosmIhL6sv34u0JveEl qsUicxygRGOYLWV5qKhC0vZALXw22XZ5R6WoUqpZZkZAayT6hKACHUGG0Hd6NtC4YL7oPm 8fovtVly8tFNXs9uXi2XMIgM/y9YOsC067LiDWi9xnxatjB2jW++bohW6kV4UFBGEZ5JZh GtiLVQvFdblBLhiTx+Np0dM9z94iUtNqrYf6xCd1IaBO8f5/zPyGokZlQ2W8qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4lYi8y1pcJlpPtMs9ZXvznZYDr+mpmSfx+2MZOFSrXA=; b=EGK/an5uMeRBw34rVpNTcjMm6sguplpvZHYatf40ih4YA8dtMB4zAM6vHjNdUoeuuig9WY PbOVhaBi8A7TT1vEmcB7Cev1lRFmVE7BG0KRnBcNm4xI2FTrmqc1gYEbYYB6eP4LzTQJkX DcjbvB/fa0tKRY08kygdDoGndkWXf8p4Pw/wBGSJRyw8rQiPoKbkya7vJLaL1ilFZenD3y zV4Va2cnhVM+vrtq4YjSZvYZAbXPssLW4dijxaMMhHvsPBBZhDduFptgOBG7oV2H5eX4UC owo0XMIH7WSMXhtUDpm289rzVTdykvJFiSPtbimlaWP8EWHju/PNBz6avB4ZPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535975; a=rsa-sha256; cv=none; b=ovp8dCVcvheEUH9bxDqQ96R5bOb9lEVzByyVQUhTbMjenRJT+TRHrQqNoecQGB/JbsnxP3 YeEdx+zSXKJIBFaVTN7vrFCWHgM5tRInSl1har7Eg/X/5PUyOImQAHKpCRx1utcClbT4So mTvnh5f/DB2T/9DJdaQs7+NZ/h+3oq9vhbc9a8ymy8W9ZlG4P4XJGcivieQq8vvp1CUP5m DQFSXbOLL6i2sWLqKW+7+6WxNF5WRay1jQDIjDIjR5siCsDDnn51Dj51rCuYNh6k2nmfqx R0BEVy/WgNzx6kLZ36IJHAz7ppRSqE8qLk509t19D4d3X/l2pbFy683P7fJo0w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPHC279SzhVm; Mon, 21 Oct 2024 18:39: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 49LIdZtZ037403; Mon, 21 Oct 2024 18:39:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdZQN037400; Mon, 21 Oct 2024 18:39:35 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:35 GMT Message-Id: <202410211839.49LIdZQN037400@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 0eea8754aefc - stable/14 - cxgbe(4): Allow t4_tom to be unloaded safely. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0eea8754aefc64ce862705a13215837f50ee8983 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=0eea8754aefc64ce862705a13215837f50ee8983 commit 0eea8754aefc64ce862705a13215837f50ee8983 Author: Navdeep Parhar AuthorDate: 2024-09-29 23:29:41 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:15:11 +0000 cxgbe(4): Allow t4_tom to be unloaded safely. * Disable IFCAP_TOE automatically on all ifnets on all adapters during unload. This is user-friendly and avoids panics due to stale ifnet state after t4_tom is unloaded. * Do not allow unload if tids are in use by the TOE on any adapter. Reported by: Bimal Abraham @ Chelsio Sponsored by: Chelsio Communications (cherry picked from commit 9ba8670a8b175de79ea087688f51595b4f2db862) --- sys/dev/cxgbe/adapter.h | 1 + sys/dev/cxgbe/t4_main.c | 22 +++++++++++----------- sys/dev/cxgbe/tom/t4_tom.c | 31 +++++++++++++++++++++++-------- 3 files changed, 35 insertions(+), 19 deletions(-) diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h index 2769277e8411..862a90e8a441 100644 --- a/sys/dev/cxgbe/adapter.h +++ b/sys/dev/cxgbe/adapter.h @@ -1394,6 +1394,7 @@ void cxgbe_media_status(if_t, struct ifmediareq *); void t4_os_cim_err(struct adapter *); int suspend_adapter(struct adapter *); int resume_adapter(struct adapter *); +int toe_capability(struct vi_info *, bool); #ifdef KERN_TLS /* t6_kern_tls.c */ diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index e33e732a7fa2..f4e6b41d9fb4 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -869,7 +869,6 @@ static int stop_lld(struct adapter *); static inline int restart_adapter(struct adapter *); static int restart_lld(struct adapter *); #ifdef TCP_OFFLOAD -static int toe_capability(struct vi_info *, bool); static int deactivate_all_uld(struct adapter *); static void stop_all_uld(struct adapter *); static void restart_all_uld(struct adapter *); @@ -12501,7 +12500,7 @@ t4_ioctl(struct cdev *dev, unsigned long cmd, caddr_t data, int fflag, } #ifdef TCP_OFFLOAD -static int +int toe_capability(struct vi_info *vi, bool enable) { int rc; @@ -12567,6 +12566,7 @@ toe_capability(struct vi_info *vi, bool enable) if (isset(&sc->offload_map, pi->port_id)) { /* TOE is enabled on another VI of this port. */ + MPASS(pi->uld_vis > 0); pi->uld_vis++; return (0); } @@ -12592,17 +12592,17 @@ toe_capability(struct vi_info *vi, bool enable) if (!uld_active(sc, ULD_ISCSI)) (void) t4_activate_uld(sc, ULD_ISCSI); - pi->uld_vis++; - setbit(&sc->offload_map, pi->port_id); + if (pi->uld_vis++ == 0) + setbit(&sc->offload_map, pi->port_id); } else { - pi->uld_vis--; - - if (!isset(&sc->offload_map, pi->port_id) || pi->uld_vis > 0) + if ((if_getcapenable(vi->ifp) & IFCAP_TOE) == 0) { + /* TOE is already disabled. */ return (0); - - KASSERT(uld_active(sc, ULD_TOM), - ("%s: TOM never initialized?", __func__)); - clrbit(&sc->offload_map, pi->port_id); + } + MPASS(isset(&sc->offload_map, pi->port_id)); + MPASS(pi->uld_vis > 0); + if (--pi->uld_vis == 0) + clrbit(&sc->offload_map, pi->port_id); } return (0); diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index d5b6b6ee2ce0..97cb380d0e71 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -1946,20 +1946,29 @@ done: static int t4_tom_deactivate(struct adapter *sc) { - int rc = 0; + int rc = 0, i, v; struct tom_data *td = sc->tom_softc; + struct vi_info *vi; ASSERT_SYNCHRONIZED_OP(sc); if (td == NULL) return (0); /* XXX. KASSERT? */ - if (sc->offload_map != 0) - return (EBUSY); /* at least one port has IFCAP_TOE enabled */ - if (uld_active(sc, ULD_IWARP) || uld_active(sc, ULD_ISCSI)) return (EBUSY); /* both iWARP and iSCSI rely on the TOE. */ + if (sc->offload_map != 0) { + for_each_port(sc, i) { + for_each_vi(sc->port[i], v, vi) { + toe_capability(vi, false); + if_setcapenablebit(vi->ifp, 0, IFCAP_TOE); + SETTOEDEV(vi->ifp, NULL); + } + } + MPASS(sc->offload_map == 0); + } + mtx_lock(&td->toep_list_lock); if (!TAILQ_EMPTY(&td->toep_list)) rc = EBUSY; @@ -2243,14 +2252,16 @@ t4_tom_mod_load(void) } static void -tom_uninit(struct adapter *sc, void *arg __unused) +tom_uninit(struct adapter *sc, void *arg) { + bool *ok_to_unload = arg; + if (begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4tomun")) return; /* Try to free resources (works only if no port has IFCAP_TOE) */ - if (uld_active(sc, ULD_TOM)) - t4_deactivate_uld(sc, ULD_TOM); + if (uld_active(sc, ULD_TOM) && t4_deactivate_uld(sc, ULD_TOM) != 0) + *ok_to_unload = false; end_synchronized_op(sc, 0); } @@ -2258,7 +2269,11 @@ tom_uninit(struct adapter *sc, void *arg __unused) static int t4_tom_mod_unload(void) { - t4_iterate(tom_uninit, NULL); + bool ok_to_unload = true; + + t4_iterate(tom_uninit, &ok_to_unload); + if (!ok_to_unload) + return (EBUSY); if (t4_unregister_uld(&tom_uld_info, ULD_TOM) == EBUSY) return (EBUSY); From nobody Mon Oct 21 18:39:36 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPHF0Szkz5Zc72; Mon, 21 Oct 2024 18:39:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPHD3T84z4GbD; Mon, 21 Oct 2024 18:39:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FdfD/7e71HKMNqcni3COR/2PAIeAIl/a1ScU7++8vHc=; b=TC39NbYvDqk8x6Y/hKb6ASa/dA48wdNQ/K5X75pcbGeRTiE7H21CLE0dJnk3CJsP/7Ga6Z 6xlSTEpYj3M8U6RUeq8XAymXighdX+EVe/MhASO5D5Ql2tDiMw+bTUQxjzUIO3QIg+ZBD9 3TUwAr3aeXPPxVpWq/q9F6HSOZtaQMRdFG6U+0iRuqAiJVEYnZ4VzBgzpNaLeutR0DBqNc L2xDAAR8Gq9Y7RHmvKzFRpT2JFirNoDKpyYm1lHFBZT8NhWXJJViXv9VYucnRJXrDzkKsN bEnFeg+T0QqO0LGQGOmgc+WODtu3/PJCzV6/Tm4qWrMxmFd6/5F0/3GL9dX8dQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729535976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FdfD/7e71HKMNqcni3COR/2PAIeAIl/a1ScU7++8vHc=; b=yoZUkl4bFP9m3JFbEq30ukIhxmp+5YzuWvw1n2ED5mb0YQyI+mM+JrnDjfmA3Tmvkf3RvK tpLg0M8TkwbgMlrV3DgreUgts5LVLu6u3BXHbgdmHjmi3H1Yi/Rv7UrJUXc61/7WSvRQ2R R91wCsCn1GSCp5PUnvTiIrnQqi2PDxzKwOcVwJwWKdEM/qlG7eclheI3s+Zamq8bIgQKPT 34luGSA0lCOtiSS+BbOEggtuqgbWQFwzwRDa9XR9oRoYtfY+Lz768n0CvAiIYup7LT9ode bohvWJBPTUuSGT8Cf2y4pOkCURX0fUsEz68OKpi8hTwAGkCxXQE9DdL1h48emA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729535976; a=rsa-sha256; cv=none; b=UgReJyMIeOvYJg/EwtI6DtBQtFNsy4c0DUC16tI/GH/g2L5x9EM4ylM4Uz6iEf9a9qMxeR wKf/rJ0jDZMdMJyXhNmKqWzdAJHJHP8NN3mV+aEK6X1UBJjcyYmjX5RTUqaHNAAUDYJcq1 uQd0VDFZbVLD6XYfu4wmq/KFLzjb/qa/aSsmytiGjUqjybDZrf5WOJsdpQzKgN39khj6hu PQT7rJ+L9Vc6WiLUf1Lpc3aZyZ9NvzdF4eHpvcNjeDsI71oCIlJtZPb3GwplxzMhY9FyQz yVrAVRbiUZYx3B0Hg9eyO/6D/H9JiDk3/mfl+/M8rpDTVu6jJyyJwS/1HZiNUQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPHD35Hgzh8F; Mon, 21 Oct 2024 18:39: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 49LIdaHM037457; Mon, 21 Oct 2024 18:39:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIdabl037454; Mon, 21 Oct 2024 18:39:36 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:39:36 GMT Message-Id: <202410211839.49LIdabl037454@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: 42d8f6b75933 - stable/14 - cxgbe(4): Use correct synchronization when marking the adapter offline. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 42d8f6b75933329aaa7fcffed3abc5c7bfb43cb2 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=42d8f6b75933329aaa7fcffed3abc5c7bfb43cb2 commit 42d8f6b75933329aaa7fcffed3abc5c7bfb43cb2 Author: Navdeep Parhar AuthorDate: 2024-10-04 18:11:22 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 17:15:33 +0000 cxgbe(4): Use correct synchronization when marking the adapter offline. adapter->flags are guarded by a synch_op, as noted in the comment in adapter.h where the flags are defined. Fixes: 5241b210a4e cxgbe(4): Basic infrastructure for ULDs to participate in adapter reset. Sponsored by: Chelsio Communications (cherry picked from commit 52e5a66eac22d24e29f204c5b65232378e71f4cf) --- sys/dev/cxgbe/t4_main.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index f4e6b41d9fb4..769d4778a8d2 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -1990,18 +1990,23 @@ restart_adapter(struct adapter *sc) static inline void set_adapter_hwstatus(struct adapter *sc, const bool usable) { - mtx_lock(&sc->reg_lock); if (usable) { /* Must be marked reusable by the designated thread. */ + ASSERT_SYNCHRONIZED_OP(sc); MPASS(sc->reset_thread == curthread); + mtx_lock(&sc->reg_lock); atomic_clear_int(&sc->error_flags, HW_OFF_LIMITS); + mtx_unlock(&sc->reg_lock); } else { /* Mark the adapter totally off limits. */ + begin_synchronized_op(sc, NULL, SLEEP_OK, "t4hwsts"); + mtx_lock(&sc->reg_lock); atomic_set_int(&sc->error_flags, HW_OFF_LIMITS); + mtx_unlock(&sc->reg_lock); sc->flags &= ~(FW_OK | MASTER_PF); sc->reset_thread = NULL; + end_synchronized_op(sc, 0); } - mtx_unlock(&sc->reg_lock); } static int From nobody Mon Oct 21 18:55:05 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPd56LgMz5ZdVh; Mon, 21 Oct 2024 18:55:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPd55QhJz4Q4Z; Mon, 21 Oct 2024 18:55:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729536905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AeBLDMQGVuJkj4NrKNqSNU+OzfiP7F8qckMDRTaGFxE=; b=MN0J2GsJz+nNHmfgPi8QO4INnc0gYwmWwxEHXgDUPaaH29zUAk4M8T2AVIn3BAOSwVCE84 wOCM+701Jmf7wcbiSFzhmAQTBcyuTDxs7cTki0nuWgVjwV+fKSMDvvvdQ1PEFcLMNXTuZb X4vBxOOWXugTFCrjcACrNCvc2EXQBWGX42wmvpHWG2WLUHsm/9rxLTtZ9PkfqNcnVr/wQL Nw7wGlf34SeORR49MFMUsyJHm1AoVhaKvQFGrZpU8rDUTad8qcZQ8LmTahPHwSv3qiD8Eh Fuv1XoCpUBHjR79+rmufX8PEHrOuR0JUrtmhcFMbDgPGXw+B4u/cy6ftch3mIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729536905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AeBLDMQGVuJkj4NrKNqSNU+OzfiP7F8qckMDRTaGFxE=; b=hI3vFb8UXr01Qy6NLpT92IMOc5iSL3n7gvVKFnZRMXoSiM3r4SO0r9OEhZQsLr7Bw/9F4e pW+EEUIlHLodQXWqYE6bpCIlfiVpcGTOBT6KrxvWfePOyyoZD+pu8WF5lrK3INpIj9iKde b7dQcY/53yDioiVT4AwPOtQBHJWEN/WBwT4LuWtwnLVtlWLoNlLGi1m9gPfd9Ncob3ECVu 3R7vimi+eSCnUkWfTANnLGa5F0GK+R05N+1iuVxW9qwIDKNtP32y4hF7ouCUEy3wdCxKip NonDcxWZWZnKIcSenbOZPxnLz7oLvaavqgOcpifIKZieYMrTkT5j/VVVLrMpWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729536905; a=rsa-sha256; cv=none; b=JMHe9IHuucXb5TqfHy8QPuVN5x9Cbld7kjZzJxM0dBORkmm/xi9CjEjxsEqjczjMJH720q C2K5xGFpaqp7PonMRFW0qg/5DIHNQvpyyJVL66cGEBXvgjmNCKs75GJYBGTemt2fWJgvaQ E7VLL1D60FJKpkjOMxB11NA4mqb9hhXVZoYLhJRXXT2GeSoGqZNyB9Isk/DtO080TNEMy1 H0ofvvhgj+fQo3rINR7Lsmi5KNQwxXzRiGdUHtxMlcgYrwTO1dhcj/TVsBjWwrQQOn2oRl ZG2DylhmABiq9Whw/s52SgbzqZzCIxjd3qdQjL914rtnO5eIjqxGaxKjV0rvtg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPd54vQrzj1p; Mon, 21 Oct 2024 18:55: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 49LIt5jC073260; Mon, 21 Oct 2024 18:55:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LIt5mo073257; Mon, 21 Oct 2024 18:55:05 GMT (envelope-from git) Date: Mon, 21 Oct 2024 18:55:05 GMT Message-Id: <202410211855.49LIt5mo073257@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Navdeep Parhar Subject: git: e42a182bb7f6 - stable/14 - cxgbe: Add a 'show t4 memdump' DDB command List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e42a182bb7f69d53ea35dfe22e16a1944c280066 Auto-Submitted: auto-generated The branch stable/14 has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=e42a182bb7f69d53ea35dfe22e16a1944c280066 commit e42a182bb7f69d53ea35dfe22e16a1944c280066 Author: John Baldwin AuthorDate: 2024-07-03 15:05:11 +0000 Commit: Navdeep Parhar CommitDate: 2024-10-21 18:49:27 +0000 cxgbe: Add a 'show t4 memdump' DDB command Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D45187 (cherry picked from commit 1edf61f395d98a5abb7d6f38e5e64722b4ddf351) --- sys/dev/cxgbe/t4_main.c | 76 ++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 66 insertions(+), 10 deletions(-) diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index 769d4778a8d2..3829ea6501cb 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -12939,30 +12939,26 @@ tweak_tunables(void) #ifdef DDB static void -t4_dump_tcb(struct adapter *sc, int tid) +t4_dump_mem(struct adapter *sc, u_int addr, u_int len) { - uint32_t base, i, j, off, pf, reg, save, tcb_addr, win_pos; + uint32_t base, j, off, pf, reg, save, win_pos; reg = PCIE_MEM_ACCESS_REG(A_PCIE_MEM_ACCESS_OFFSET, 2); save = t4_read_reg(sc, reg); base = sc->memwin[2].mw_base; - /* Dump TCB for the tid */ - tcb_addr = t4_read_reg(sc, A_TP_CMM_TCB_BASE); - tcb_addr += tid * TCB_SIZE; - if (is_t4(sc)) { pf = 0; - win_pos = tcb_addr & ~0xf; /* start must be 16B aligned */ + win_pos = addr & ~0xf; /* start must be 16B aligned */ } else { pf = V_PFNUM(sc->pf); - win_pos = tcb_addr & ~0x7f; /* start must be 128B aligned */ + win_pos = addr & ~0x7f; /* start must be 128B aligned */ } + off = addr - win_pos; t4_write_reg(sc, reg, win_pos | pf); t4_read_reg(sc, reg); - off = tcb_addr - win_pos; - for (i = 0; i < 4; i++) { + while (len > 0 && !db_pager_quit) { uint32_t buf[8]; for (j = 0; j < 8; j++, off += 4) buf[j] = htonl(t4_read_reg(sc, base + off)); @@ -12970,12 +12966,27 @@ t4_dump_tcb(struct adapter *sc, int tid) db_printf("%08x %08x %08x %08x %08x %08x %08x %08x\n", buf[0], buf[1], buf[2], buf[3], buf[4], buf[5], buf[6], buf[7]); + if (len <= sizeof(buf)) + len = 0; + else + len -= sizeof(buf); } t4_write_reg(sc, reg, save); t4_read_reg(sc, reg); } +static void +t4_dump_tcb(struct adapter *sc, int tid) +{ + uint32_t tcb_addr; + + /* Dump TCB for the tid */ + tcb_addr = t4_read_reg(sc, A_TP_CMM_TCB_BASE); + tcb_addr += tid * TCB_SIZE; + t4_dump_mem(sc, tcb_addr, TCB_SIZE); +} + static void t4_dump_devlog(struct adapter *sc) { @@ -13107,6 +13118,51 @@ DB_TABLE_COMMAND_FLAGS(show_t4, tcb, db_show_t4tcb, CS_OWN) t4_dump_tcb(device_get_softc(dev), tid); } + +DB_TABLE_COMMAND_FLAGS(show_t4, memdump, db_show_memdump, CS_OWN) +{ + device_t dev; + int radix, t; + bool valid; + + valid = false; + radix = db_radix; + db_radix = 10; + t = db_read_token(); + if (t == tIDENT) { + dev = device_lookup_by_name(db_tok_string); + t = db_read_token(); + if (t == tNUMBER) { + addr = db_tok_number; + t = db_read_token(); + if (t == tNUMBER) { + count = db_tok_number; + valid = true; + } + } + } + db_radix = radix; + db_skip_to_eol(); + if (!valid) { + db_printf("usage: show t4 memdump \n"); + return; + } + + if (dev == NULL) { + db_printf("device not found\n"); + return; + } + if (addr < 0) { + db_printf("invalid address\n"); + return; + } + if (count <= 0) { + db_printf("invalid length\n"); + return; + } + + t4_dump_mem(device_get_softc(dev), addr, count); +} #endif static eventhandler_tag vxlan_start_evtag; From nobody Mon Oct 21 19:05:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPrl3sbTz5ZfXq; Mon, 21 Oct 2024 19:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPrl3Qd9z4SSY; Mon, 21 Oct 2024 19:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537511; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ENDEbt5fnYirRrM5LFcEwJ3OEYq7aNri0SEz5OfL5KU=; b=QcH9KDXnwBFmS6YfLvi4xGwLwQuJwxXJ6pAfGXOSI4zAp8FGcyUj9JYQS9IyHbYWpSXuI+ eQAZMihamTazM8bBIZE6ydJndRlYOsywQx+kgMC5iDmAT2o5rVwJ8AtGQuFXw/TusAlEW9 PvzM6LwC6Uy6icfv8nvt/gLuIAtmT47104ZhrUzjrwNQyBzcbWMSDiYM2EcVupk5x8JK7S d1KC9zAHpdvnBNjYurHUEjEoZFH9OJjuGwgdC+6vUKWiAAsCZ5v262jfcPLVzchA5/PuhQ Mnh+EtRjFO7nOX1ApaTBnN6wYo9rFB9f3KNCEKJrGmkKn7Vhd/3Lkpl+5JXnXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537511; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ENDEbt5fnYirRrM5LFcEwJ3OEYq7aNri0SEz5OfL5KU=; b=v5jRYAHEycXJ8TQGGyK1yY3dJ4FkkrTa9Q3mLFXWKE1W4Vzlv25mIzopltt3czYWUKot4p OuYgmt1oohSnVKBxBdXVWsOcpg1KiTkeF5VDjxIlPbFPfPCpa/4qZTVtiDCJGQpQUxj2F6 Bb3+zJnOkHzvpKfaN/y+n+ccgjZrP0Q8X77B8zRrLa/pMz1o8JoqVvbzTYhc6R+D1jdYpN kPEK7iU3ADgqwGJGq0/Cns+jRXveqamGk/Zavg6R9dt5dihMuy5GU/mT1viHWTRKybZkMh h3bdnJ1JwtS3XUa9iGNXSDNn80y73pZxDEEu8j1HPh7ueMpKMmfTa6vfHPrp4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729537511; a=rsa-sha256; cv=none; b=YfZXb78HSalF9zd0XErNS+Nt8bAyxUpGAFHwuFJbeG0B2mQtqIDIkPg2bd5CDmNuRZsTZ0 hqXBa9pQqbV0pzL/d32vnAiZwc0gax2dtCVVZN+hlS+DpUsGvtHvRyDcILjRIopM1wIPir ttSwKqzAZ5ceT0hWTy25w/p/doI3pEdzMAdyaPvi8bSrG1VDbhk0QQX4JIr3X8NlXSCVmx TKnlZdT2Y6lcoPAeJXyaoS24Mit/TKcnA+IWftAobi1THOX9OfDKdwh2G9zqgHyEui/yeX PiivCegj021PvJ7oZsZw7nykMwHcBhuVBjiL075BgFswFeMdcz1voPXFWiCcBg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPrl2vdyzj8Y; Mon, 21 Oct 2024 19:05: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 49LJ5BrM092294; Mon, 21 Oct 2024 19:05:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LJ5BAa092291; Mon, 21 Oct 2024 19:05:11 GMT (envelope-from git) Date: Mon, 21 Oct 2024 19:05:11 GMT Message-Id: <202410211905.49LJ5BAa092291@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: ae9d96dd9f85 - stable/14 - ldd32: place in utilities-lib32 not utilities List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ae9d96dd9f8599a6fccf190ef6863f1c514a7a27 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ae9d96dd9f8599a6fccf190ef6863f1c514a7a27 commit ae9d96dd9f8599a6fccf190ef6863f1c514a7a27 Author: Isaac Freund AuthorDate: 2024-10-09 13:24:06 +0000 Commit: Ed Maste CommitDate: 2024-10-21 19:04:55 +0000 ldd32: place in utilities-lib32 not utilities The ldd32 binary is currently in the utilities package but belongs in utilities-lib32. This patch corrects the situation. PR: 249145 Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D47023 (cherry picked from commit 53bb5613a8a15363718b6e6de8d965bf9a2c5469) --- usr.bin/ldd32/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/ldd32/Makefile b/usr.bin/ldd32/Makefile index 59cfd50d6152..fb737cb15901 100644 --- a/usr.bin/ldd32/Makefile +++ b/usr.bin/ldd32/Makefile @@ -5,6 +5,7 @@ NEED_COMPAT= 32 PROG= ldd32 MAN= MLINKS= ldd.1 ldd32.1 +TAGS+= lib32 .PATH: ${SRCTOP}/usr.bin/ldd .include "${SRCTOP}/usr.bin/ldd/Makefile" From nobody Mon Oct 21 19:05:12 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPrm56vnz5ZfdX; Mon, 21 Oct 2024 19:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPrm4242z4Scm; Mon, 21 Oct 2024 19:05:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ja3WfkqdBHzTnc7IcGfpA3Ri5UP+tFhBQZJnWtkTb5k=; b=vqI8Q4IoMtyddnLWb19gz6U76N1n9i3uNcLg261Ph7ady8MPwDT7WQPRBKrMnTNb3PiZ32 cf9NLKJHRr8pB+ihVI/5h7Ef/8MJwSPadZXLU5C7f1c2ABPMGGhGF/2p5cuawG8EovUS7p E6GAH4c/W3raiDyHgx0OokbkCIDlWJ8pHZbhYDDEqHgsMpNSptTBm8XLXojzcHDxmGNNvw iWjX82fhQzpguKtE063K8JEuZITxi9UOMo7IdmR/3TrdXx8ZoT25hpDokj4NOsu7jSEjbR gBzDDjowpKC+++k7c1+9hDc9dxmXd/L+E+RMVU3VNxRxGXFcZ8H2em+Hdsrpug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ja3WfkqdBHzTnc7IcGfpA3Ri5UP+tFhBQZJnWtkTb5k=; b=PAADBxMVYNsSutmG2drplTF+92y2ognyKGyq8JWEJUpw4LJgQQ2L5Cpkws9VKVtbD739oB yw8wGC6zGd57yBc0R2VBC7TRhPQWkrC1mmQLjbIDd/afn2Zwvv2PVi/yaT9W12KesQCPZy J1rRWDObjUTQZyNqy77FA2mjQ5xjnl0nhHSSWcEY9ZAJJ/dfVd5nJyKehLIgNSK8EN5NrF 1RdW6MTNOx3FHlFMwECTLFfFNQ/PsJDmDBoqpVD6f9oZ3zQDj4z0spxzCQU75wW9hZbSKs H2yASiJ9yi6WdHRNjfv9+tboSfgaqVhWldh4EUrptg94Wb8fMF3tgqNP/hef3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729537512; a=rsa-sha256; cv=none; b=dGwWjsU5eJZgkrHKjHxXPRclbOSidi5ZJy2umQ1jTDYCv2QNA+dIuFSRsi8QKwhLyIXkJC xqZA7TbvJIHfhZkoiloPFrK4jTR7xBgiJF0F/GWtZWkND7qUwJlPTIYOpmh9GL+nKWC3XW B8jCrI4SesoLg75agMvFDO8RgpdG3gAFaRMfhhCxgabNZc22YBL4Z8as4gJCbxq5IXqZBV 3MLWXQdPc4OWjjGH66M7s3qQgcz5SbyvxS6JXA9QQRx3YSx3qvjQtziN3mieufijm9a8UA vRlHbu8TgELIbfCD2M4scKR0P95b7ko0DSZJq3k6kUvq483KiPG7of1iEhEHkg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPrm3drNzhmf; Mon, 21 Oct 2024 19:05: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 49LJ5CjH092364; Mon, 21 Oct 2024 19:05:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LJ5C4x092361; Mon, 21 Oct 2024 19:05:12 GMT (envelope-from git) Date: Mon, 21 Oct 2024 19:05:12 GMT Message-Id: <202410211905.49LJ5C4x092361@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 85b6bfaac925 - stable/14 - mk: honor TAGS for FILES in default group List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 85b6bfaac92551716cfece08137c3cb4d2261521 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=85b6bfaac92551716cfece08137c3cb4d2261521 commit 85b6bfaac92551716cfece08137c3cb4d2261521 Author: Isaac Freund AuthorDate: 2024-10-07 16:32:46 +0000 Commit: Ed Maste CommitDate: 2024-10-21 19:04:56 +0000 mk: honor TAGS for FILES in default group Currently the lib32 crt files (/usr/lib32/Scrt1.o etc.) are placed in the clibs-dev package rather than the clibs-dev-lib32 package. The /usr/lib32/dtrace/drti.o file is similarly placed in the dtrace package rather than the dtrace-lib32 package. Splitting shared libraries in /usr/lib32 into a -lib32 package is handled in bsd.lib.mk by adding "lib32" to TAGS. However bsd.files.mk ignores TAGS and only honors ${group}TAGS since 144c442. This patch changes the behavior of bsd.files.mk to honor TAGS if the default FILES group is used. This matches the handling of PACKAGE, which is also ignored unless the default FILES group is used. With this patch, both the clibs and dtrace package are split correctly. PR: 249145 Reviewed by: bapt Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46991 (cherry picked from commit d5e9faf1f3291d0af9dcdd53ccdaf0971e5d8f63) --- share/mk/bsd.files.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/share/mk/bsd.files.mk b/share/mk/bsd.files.mk index 517ecd44f2f3..a330a8dddbbd 100644 --- a/share/mk/bsd.files.mk +++ b/share/mk/bsd.files.mk @@ -39,6 +39,7 @@ STAGE_SETS+= ${group:C,[/*],_,g} .if ${group} == "FILES" FILESPACKAGE?= ${PACKAGE:Uutilities} +FILESTAGS+= ${TAGS} .endif .if defined(NO_ROOT) From nobody Mon Oct 21 19:09:30 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPxk3281z5ZfZ6; Mon, 21 Oct 2024 19:09:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPxk2NXMz4T3w; Mon, 21 Oct 2024 19:09:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jpwBjpvIVqdypjFue/9Lwu+RkgdfCawGjqRobi+gsXo=; b=hMBhifVf4LFMvJIORBxFYTU/8zNx7wFD/sehm6rcbk4Yjoo4diW6acEBzuHyGzXzHrBAbc NjSqx1ca6g8gF0JUSeygf7j1vEYfIHtLpGlkGvd1vCww2dN1OZVfKlgC2sRA13GimtnNv6 +zeSw6IKO40MywXSHrrsu8knbYzDWDJBbcF3mTua/PA2UD7BULBtP1RJJ/SEckXBKSDiel WKlU7RT7246ODgehsP7T1zf5/YwnyyAuYId/1L7MLd+1hqWZtk0ounTFUgqJT9muaXtR0O u2HyuqZi4sUviUVThxgSpBQZA6ymSUVaAFJNOE1j6Jv2WRmZaZqbKacW2ySjYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jpwBjpvIVqdypjFue/9Lwu+RkgdfCawGjqRobi+gsXo=; b=GerVLFm+NKYSH2d4P8DdCh54LMyQMkeV1l34fwaz7j5tUk2BCT2EHSHdj8Xh+jlSijMoRz XaFM9TWAIKDxrR7O2LZl78baBGRZzxSHp/elBR2syflKCJTV5Cr+EOM8TUgrpT1szm8ZHk fOw8UjlOpsyxkEev3J0ZsZDs7LoaxBoYpsm1/ijsBsYVrC7eXo55jfHmddfc//24094uYL mw20NcOSievhxBpCdqDGbo2UMSzprSpCgw/EvjAzp3Emj7nSvgKOBl+AYxcgmvfEPTwp9T gjAZcri85rv4d4ozx/3QBWAs1Fw2R4aW5AOHM8x7AzxQHWqxx/alWOU0ShJqxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729537770; a=rsa-sha256; cv=none; b=cFEGRR/tSsk0olfCrYhpc4iwORZHzX5lA4Qk4hlrZLOW/0Tp0r6oqWg3Ej2pLJmu7GnaXY YAO4MaZDP0iiwwJDtTVS6hYNPgM2RVg8z5m2vdpKalxW3Ni/+a54HYrrxbabQrQ6eaylKQ A6fZefcgJij9L1hPyNHu7ssySOWCsdfeOK9rVEIsuP6FfwTNziRiS3jV1q1Yby+WQOwd1e 4b928WttaOzbrLHs4q3cAnHdd+DNLDWRN8iazpAQuX1skAIUicP+Kx0996iiIkM8wECraf qBa98Ji6mCgDvsIC2MpPLXR2lYXMnpB9HvKYsD+9HwCAg0SS3OmzrN2HBn70GA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPxk1lPMzhC4; Mon, 21 Oct 2024 19:09: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 49LJ9U97093709; Mon, 21 Oct 2024 19:09:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LJ9UUC093706; Mon, 21 Oct 2024 19:09:30 GMT (envelope-from git) Date: Mon, 21 Oct 2024 19:09:30 GMT Message-Id: <202410211909.49LJ9UUC093706@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 273c500de2c8 - stable/14 - fdisk: add deprecation/removal notice to man page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 273c500de2c85f14a3971102aae29af765a5002f Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=273c500de2c85f14a3971102aae29af765a5002f commit 273c500de2c85f14a3971102aae29af765a5002f Author: Ed Maste AuthorDate: 2024-10-11 20:09:25 +0000 Commit: Ed Maste CommitDate: 2024-10-21 19:08:13 +0000 fdisk: add deprecation/removal notice to man page As of 2015 (commit b8c19fd71994) the fdisk man page claimed the command is obsolete, but had no explicit mention of removal. Add another note that follows our current deprecation notice format. Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D47067 (cherry picked from commit 255d2d9bbc3756c940462c61d3cd6fb7753aab2c) --- sbin/fdisk/fdisk.8 | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sbin/fdisk/fdisk.8 b/sbin/fdisk/fdisk.8 index 3c6a73318271..ea54a51a43ae 100644 --- a/sbin/fdisk/fdisk.8 +++ b/sbin/fdisk/fdisk.8 @@ -15,6 +15,22 @@ .Fl f Ar configfile .Op Fl itv .Op Ar disk +.Sh DEPRECATION NOTICE +.Nm +is deprecated and is not available in +.Fx 15.0 +or later. +Use +.Xr gpart 8 +instead +.Po +with the +.Cm MBR +partitioning scheme +.Pc , +or install the +.Pa freebsd-fdisk +port or package. .Sh PROLOGUE In order for the BIOS to boot the kernel, certain conventions must be adhered to. From nobody Mon Oct 21 19:09:31 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XXPxl58bSz5Zfhl; Mon, 21 Oct 2024 19:09: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XXPxl3WWGz4TKP; Mon, 21 Oct 2024 19:09:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537771; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LCY+9l61FIoy/C+PO0ONgdHtNPZsoXgzBs409osP9kQ=; b=Ee8xmTmfg8UWtrfyIBQ7NdBLdLPXk/jBuwWV9mmBUT2UiZmudSm6MtKsLtj7eUtvEozL/B 4y4yO17j3hCqgaHDX8g+Qk1CN2VlN5qO8v0dUbXcttmUTus+TE3QbnpN45acMEdqhRNKcG e1Z6JtqEfjGEdV9CRGqoCjp/26E3XqQawI9pW2tZ+c2iiTgB8LvxhtmKi9NGu+I0E203OB SwizajKbwKUq7/lP3kvi5nFLOlLEEjxniaw2r7IJen6RUTy2kbJsuZMCQPuR/zA5MrjdVK MAj8oBiO/3Klpn+MMlskeMIz1UZvQoVHHAOgIOaEfQTzUow76rTmdPZ1JrRlBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729537771; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LCY+9l61FIoy/C+PO0ONgdHtNPZsoXgzBs409osP9kQ=; b=vVU+YiHWCzL1+EjGQ0nOp3FPw+CI8F0ZUdznOdkem39Lk4zl2kbC5YnyHdZoUxpV9snotU /pM/cWvdWgCOKmeJtaEEnOkWDkbIDjjvOGQa1RjvQW4ETl0CpadgANyVLXUOP9MQH/dSCX xYPKMKmQF0XuhEUC/Ss1DZzBpFPNHxwXMNOcAklX2f+Aejhu5eAB4hTsXnFaOTejNHGTTH IjWBBkovjorhsq+9dwoPKvrHkQRtm/WPSonLppDO+TG4hquUVuaVB/9QincPcrMO82diIW WOpCTLunGZYOr8Yfvp0E1sq4bduI17/cSLl5qfyPd/ScNy92t6a9ppJ7I310Ew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729537771; a=rsa-sha256; cv=none; b=vH94qFUqSmnHvuVDhUbGVKM4eHRh2LAMqMTzSnOYvdxcUAZfbGfNZ9S3Plo6abe19bSqOm mzbRCbZb+YtnEEfDJpCSoEkOFHLRVhbI/Yl6hpy+44deZd9fMJqARUAsJoJNHY9HaJQpYc uEtFNcFt7Lve90TxEsClJucDVNnz9zBDGxFnehQuZxsGE8dIYMWVSYNOkQvYksi6+iCqpw tXZT0TX1p/LEFBguAj/lumSvcxdFeJE1dd+k75ZNdqz/Ki5Gy1Tfq5/C/EFgpQq7ugKss8 ZNaQUrNNgJiiUdgb8B44JALtXqAnSe+qEuKJj/PG+dLFgAOcgx9m8xkuZhol/A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XXPxl2hgSzhqS; Mon, 21 Oct 2024 19:09: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 49LJ9Vw7093768; Mon, 21 Oct 2024 19:09:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49LJ9V6r093765; Mon, 21 Oct 2024 19:09:31 GMT (envelope-from git) Date: Mon, 21 Oct 2024 19:09:31 GMT Message-Id: <202410211909.49LJ9V6r093765@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 3958be5c29da - stable/14 - fdisk: emit deprecation notice when run List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3958be5c29dab4abbd7f414f319e11b91db83269 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=3958be5c29dab4abbd7f414f319e11b91db83269 commit 3958be5c29dab4abbd7f414f319e11b91db83269 Author: Ed Maste AuthorDate: 2024-01-24 19:12:21 +0000 Commit: Ed Maste CommitDate: 2024-10-21 19:08:13 +0000 fdisk: emit deprecation notice when run Requested by: rgrimes Reviewed by: bapt Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D43585 (cherry picked from commit 86e66321bb18ffc242eac61ed2ae0543d71918a0) --- sbin/fdisk/fdisk.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sbin/fdisk/fdisk.c b/sbin/fdisk/fdisk.c index 6cfa2b510f22..a9295b0d1319 100644 --- a/sbin/fdisk/fdisk.c +++ b/sbin/fdisk/fdisk.c @@ -265,6 +265,10 @@ main(int argc, char *argv[]) int partition = -1; struct dos_partition *partp; + fprintf(stderr, + "WARNING: fdisk is deprecated and is not available in FreeBSD 15 or later.\n" + "Please use gpart instead.\n\n"); + while ((c = getopt(argc, argv, "BIab:f:ipqstuv1234")) != -1) switch (c) { case 'B': From nobody Wed Oct 23 07:24:28 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLCK1P5Gz5ZxC5; Wed, 23 Oct 2024 07:24:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLCK049dz477r; Wed, 23 Oct 2024 07:24:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668269; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yrzBSzjCoEBudgJwrxuqjybt/SzhedJI4C8f9Hu4vw8=; b=eUeJ2oS5enOfq0HN8NwgNiWwJwOFq5r9C7kY3SwKBBDyYOrkZxtrE90jbdQkv5xHvRDE+0 gjbWO9Hwo4ZWLa9hjrWcM+RiA0HSSulq9TBzyWMmGnoG/Tgr8UT81e9Rj8zw3+czyi333b ajmWLMRryjhl2OYz749I1KiZLd67iOYshOsiDkq0ABIYkCP4t+ls+pUqatyq5JMkr5pd59 vYZMMmfgDSb2q1br5Q7wNcXMv6N60BDNVuQkx5xpgpRTZYazQ/trQaUKkY6ufjf21aPB3k 0mdDB/OOmao7Z7RcTvuPwiZxtmSDOd+jxtLSMO5vfcR9+rL8YGLPv6lZ2N98qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668269; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yrzBSzjCoEBudgJwrxuqjybt/SzhedJI4C8f9Hu4vw8=; b=TnyxCkF5GViUJX6CCt5nmmt7HPLLdwNFkNoamUuF7GtiwwaaBMNkGFQ4AHf542ChNa/KKO kQ6aHAW6H+dwTTgliXW3KuouIbD4g3R3+wyLUVk5ayH3zTTFkTB4QGq4AN1/pRlkgddmBt YGW55blEsjldrv1v2MmwsJQcUbzj4ndTYsyfPdQddGuEwi6ahKI2vRcqskIuu+MvRgCIDE j9XtnBDusJLUX7Z/FH1anDT2YIN37MgNUN+13Plp1G2a49jsCG/OCQavUqc55lNZGJkTHA xkqI5PNPj1EkeMHUEFa8STgPW7S8utduemM4zCTFkYBDz1T8EQ0B9cG4APotyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668269; a=rsa-sha256; cv=none; b=SB6pC9DOuER9B1xtT/ubAhaGIcnjhpvK5x3UdKXn18LqVArvA5n6XK7tqEovY9RED6ZB/L tPi2F+8Gcfg+9HF19efaRCuvw564f7g8F9KkwZEH/JYo9JSlp5wCpSEIN7BsluCZrr9xN6 bPHMzXCeraVaWXx2MZGnPwU1YDnPdySHKOY0advbApwvpqguOBNCcXx6v2X6eOsouyHYSW 5SVVKnTgQ33vZI0KzOedB+bAh/kAMBjl7DM5wXG+MfkkUoRi6vdhTa8eVYRrVcUjye2x38 t/OGGRZrGIlnwR93Go6IFx/B752URBZnywFV1bnQHqqCOnThDVM2z9iDA9kYbg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLCJ6n51zpt1; Wed, 23 Oct 2024 07:24: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 49N7OSFm036269; Wed, 23 Oct 2024 07:24:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7OSu4036266; Wed, 23 Oct 2024 07:24:28 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:24:28 GMT Message-Id: <202410230724.49N7OSu4036266@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: eff7d958dda8 - stable/14 - genl: allow to monitor all know groups List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: eff7d958dda8542dc5be4ac6109d0da2055c0d02 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=eff7d958dda8542dc5be4ac6109d0da2055c0d02 commit eff7d958dda8542dc5be4ac6109d0da2055c0d02 Author: Baptiste Daroussin AuthorDate: 2024-10-07 09:45:21 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:24:09 +0000 genl: allow to monitor all know groups Add a special keyword "all" for the group name, which allows genl to monitor all groups in an existing family (cherry picked from commit 65e7a648693cc151990688f48c190df1c1fc858b) --- usr.bin/genl/genl.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/usr.bin/genl/genl.c b/usr.bin/genl/genl.c index e3acb872a39e..eaf20d20e890 100644 --- a/usr.bin/genl/genl.c +++ b/usr.bin/genl/genl.c @@ -197,6 +197,7 @@ monitor_mcast(int argc __unused, char **argv) struct _getfamily_attrs attrs; struct pollfd pfd; bool found = false; + bool all = false; void (*parser)(struct snl_state *ss, struct nlmsghdr *hdr); parser = parser_fallback; @@ -210,8 +211,10 @@ monitor_mcast(int argc __unused, char **argv) } if (!snl_get_genl_family_info(&ss, argv[0], &attrs)) errx(EXIT_FAILURE, "Unknown family '%s'", argv[0]); + if (strcmp(argv[1], "all") == 0) + all = true; for (uint32_t i = 0; i < attrs.mcast_groups.num_groups; i++) { - if (strcmp(attrs.mcast_groups.groups[i]->mcast_grp_name, + if (all || strcmp(attrs.mcast_groups.groups[i]->mcast_grp_name, argv[1]) == 0) { found = true; if (setsockopt(ss.fd, SOL_NETLINK, @@ -221,7 +224,8 @@ monitor_mcast(int argc __unused, char **argv) == -1) err(EXIT_FAILURE, "Cannot subscribe to command " "notify"); - break; + if (!all) + break; } } if (!found) From nobody Wed Oct 23 07:24:29 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLCL1Gydz5Zwrh; Wed, 23 Oct 2024 07:24:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLCK6PH0z46qM; Wed, 23 Oct 2024 07:24:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668269; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=68yMCiMWEevwY7yBR7ng0h6nBKSnslXEJ4gBXtiYCUw=; b=oVjlouJr1DxxVpWnLvmISPLQO3a5fM5ctEhfPymgPp6pCmrab9bjCzmu6Clrma4diac+2A 81el2dX0+6ZaVEYeHm/CVDo35w392V3K4t/nNIaG58070x8efr5Z/d99wA3c/KVa0Qao8Y 0WGtJ8jBK2uiiD94vCmxoPIzWWwo954ftsFemBy7HHJN7sqWhk6wvzKzkM63mHXzX4vA3+ /sz7IKT2gdSfNIwYLWNI5wgBr0e8nbHiR63bEbMfIwoT5OdTFsmkRdBuE7ZEyTpUWquIGD womQaPIf4bY4XZtXA+jcI4sjgyn7duTMgBRIcZm73BmTqBhg8eaWSo/04GFnSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668269; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=68yMCiMWEevwY7yBR7ng0h6nBKSnslXEJ4gBXtiYCUw=; b=AE4g4UuLaB6yTvOU1phh2M/euZ8oDNFrODRKB5wr5F6Dxd94dDQ8wWa6NvU5Ub4GUTyHw0 7stxpv2V3TdYG8PGfjQler4ujfbZsFz3U2TyB/BOOWCcBhlvpJw/8EHs2JhIvxT+xBGf1I oNN/lwUrmNTzHxoRn0/vO/XEGKrEQr9j6L5pkMf631wHpCeKCw55M7n2AcDtIKrtg7AP2k Tk/311JnRrlRBq57Xoq8YdoZbbHDuJOAlSvGDPc1TI/jgGjFKO7oSLqlI9f/4sAI0R+U5u X2AvRFYN8+LM8vKdKHyn8B9emJpGUzjWYfoxwZTKbIxpXy/EmP5PUZFr274QpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668269; a=rsa-sha256; cv=none; b=Gb/l3mlaUphAAB7nOz48VoficoSfgG5dSTdRqRkcbZdy4gimMtF6dZWzztq4u3xAzjafBt KMprKEuCOGWNNfyEXvW5jlz1VnJimc8gLQb0nYqanRs5uXO4P3evepKq7ZDgI9lpSJuOw0 pHB8CqKJlyTpvJzfKtyFyF8kCzNEf0e14bvDWBYAW6lyraRnfYM2yfqiWw5zjiI7ArCSqA MxVy4Xu3l4ixtAJjRdom3yKAVb36a7HyKoAMtdptzNyy4+FuJ0fV0ZhSPl63ryYm4ZWfYt QeZDJnvIB1Sgri8p1WQm6+84EVnYTVZt5oReJHbhAgvag6mjy9IdkMOIqIJePQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLCK5hlczpgL; Wed, 23 Oct 2024 07:24: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 49N7OTDI036341; Wed, 23 Oct 2024 07:24:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7OT9o036338; Wed, 23 Oct 2024 07:24:29 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:24:29 GMT Message-Id: <202410230724.49N7OT9o036338@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: c116dea0be45 - stable/14 - genl: subscribe to all if no group is provided List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c116dea0be45de2ebc7c7f519bdfc33c69571054 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=c116dea0be45de2ebc7c7f519bdfc33c69571054 commit c116dea0be45de2ebc7c7f519bdfc33c69571054 Author: Baptiste Daroussin AuthorDate: 2024-10-07 10:07:07 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:24:09 +0000 genl: subscribe to all if no group is provided the monitor command now subscribes too all groups if no "multicast group" is provided, this avoid potential collision with a group that could be named "all" (cherry picked from commit f45132db215be4d811e0efa0d01bcab72e4d0a59) --- usr.bin/genl/genl.1 | 13 +++++++++---- usr.bin/genl/genl.c | 6 +++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/usr.bin/genl/genl.1 b/usr.bin/genl/genl.1 index b3d66298eb00..8aafd24dd6f3 100644 --- a/usr.bin/genl/genl.1 +++ b/usr.bin/genl/genl.1 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd Oct 5, 2023 +.Dd Oct 5, 2024 .Dt GENL 1 .Os .Sh NAME @@ -35,7 +35,8 @@ .Pp .Nm Cm list .Pp -.Nm Cm monitor Ao family Ac Ao multicast group Ac +.Nm Cm monitor Ao family Ac +.Op multicast group .Sh DESCRIPTION The .Nm @@ -52,7 +53,7 @@ Id of the operation if any and associated capabilities .It multicast groups If of the available multicast group if any and it associated name .El -.It Cm monitor Ao family Ac Ao multicast group Ac +.It Cm monitor Ao family Ac Oo multicast group Oc Connect to the .Ar family protocol and subscribe to the @@ -60,7 +61,11 @@ protocol and subscribe to the then print the received messages in a readable format if the protocol is known. So far only .Qq nlctrl -is known. +and +.Qq nlsysevent +are known. If no +.Ar multicast group +are provided then all the groups are subsribed to. .El .Sh SEE ALSO .Xr genetlink 4 , diff --git a/usr.bin/genl/genl.c b/usr.bin/genl/genl.c index eaf20d20e890..88880c4bacbd 100644 --- a/usr.bin/genl/genl.c +++ b/usr.bin/genl/genl.c @@ -51,7 +51,7 @@ static struct commands { const char *usage; int (*cmd)(int argc, char **argv); } cmds[] = { - { "monitor", "monitor ", monitor_mcast }, + { "monitor", "monitor [multicast group]", monitor_mcast }, { "list", "list", list_families }, }; @@ -205,13 +205,13 @@ monitor_mcast(int argc __unused, char **argv) if (!snl_init(&ss, NETLINK_GENERIC)) err(EXIT_FAILURE, "snl_init()"); - if (argc != 2) { + if (argc < 1 || argc > 2) { usage(); return (EXIT_FAILURE); } if (!snl_get_genl_family_info(&ss, argv[0], &attrs)) errx(EXIT_FAILURE, "Unknown family '%s'", argv[0]); - if (strcmp(argv[1], "all") == 0) + if (argc == 1) all = true; for (uint32_t i = 0; i < attrs.mcast_groups.num_groups; i++) { if (all || strcmp(attrs.mcast_groups.groups[i]->mcast_grp_name, From nobody Wed Oct 23 07:24:30 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLCM29Lmz5ZxCC; Wed, 23 Oct 2024 07:24: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLCL6kWCz479L; Wed, 23 Oct 2024 07:24:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cQW8mS6G4/LOK49xLv0uRZ8yJWVXqlG5JVn3evMa+0Q=; b=jaNNyDiTmvQ6SKM/Q7aHQWdLI8yHGruGCuj9Y2Btd91LKNGSwwe9b6ESWP7J0NS0+XIPUK cHGXGOSFt7C3hlAyCRxL6PVyjEiNdN7pjX8mk3npyjzuStlZra01fjhtGqHaNa205yZORd 5VJrklt2KWLBf8wyzLYCSl6LqXN7zpuXAJEvZBniwutNVwuue5rl05D3vJVPe/D1oSRHth H0cvC98bck5BvJzNWkBUdlDsJC7HupH6O/tt+hTNtxcEwVuNSkTeW45ZmNmaGqs9Ed0ZWc rYpo8g/KHwwZdk6TQY+jk/0gDqEdILwmoYvPdXs5vHylJ4o9ML3yPzTTZ6VMfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cQW8mS6G4/LOK49xLv0uRZ8yJWVXqlG5JVn3evMa+0Q=; b=F4kHEkO8FGAVbVVbSnjQyHsc+aklCTpwu0FYCAENvAyTgPLub3E2jh2Id56f1F9WY3m+fc BuuU18xUfo9SxR5oQTjc0roCVodwSAeGq9R4xtVvxMkAWyxJZYaT4U5DI4Ezd9/uQNqWr1 judx3vjAL4Zc+ZdaPEtHXw/GlICY1UpMiHosEz4ILt8M/RzJ8tMZuuT4txh5y998d1R+Im mz6uxzjktwzEmYoDs37VFJXrzpD8/ys2UIVrxJyrXahV/VTVUuSPjtRfGffHJPqG1wwuw1 r/+GhljoUSUhdUpUudIb05mYOSaEFD/cP6v5OlHyykHd8CsrJ59I4CHh+VjCCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668270; a=rsa-sha256; cv=none; b=A66GqwMOmuAMZ8QK5MdZ6Q2qUNjjdCJ26MV+UlUrsjjsTkunQSJNyraTEwCwW78FapvNif oX/YKS5KOgN9jTZ6iOIayxfCdXJZB3WUlz0prEUZe6+RIeIaOkyUx5OTUu+sGeqhiNh2dY IJFi5P+3uT5Xj5sSUDHG7dEMGrHPQsqNhQHyYE6RCoHaA05E3I8sm/65u1OXLRLKbh/04I M67VZfgoasgy3XsaM3rB4D49oQZx+6PhRmOm2Q/1eUrZWHAJZzRwk0Scr1lo/DnVSlm/sl R/izUokNqCGGpCdrqpA8hInzygSZKVOHnmlFRE7jh3pcxpADLo29jG2v/ryjkQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLCL6LPTzpkt; Wed, 23 Oct 2024 07:24: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 49N7OUQ6036406; Wed, 23 Oct 2024 07:24:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7OUGM036403; Wed, 23 Oct 2024 07:24:30 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:24:30 GMT Message-Id: <202410230724.49N7OUGM036403@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: 58aca1634027 - stable/14 - genl(1): fix typo List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 58aca1634027fa469f8bcd4503803d8fee94393c Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=58aca1634027fa469f8bcd4503803d8fee94393c commit 58aca1634027fa469f8bcd4503803d8fee94393c Author: Baptiste Daroussin AuthorDate: 2024-10-07 10:08:29 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:24:09 +0000 genl(1): fix typo (cherry picked from commit 33938d88e35b88c5f28ca10aac89d871fc9edc3f) --- usr.bin/genl/genl.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/genl/genl.1 b/usr.bin/genl/genl.1 index 8aafd24dd6f3..9837744fa8e3 100644 --- a/usr.bin/genl/genl.1 +++ b/usr.bin/genl/genl.1 @@ -51,7 +51,7 @@ Lists all available generic netlink protocols, and presents its details: .It operations Id of the operation if any and associated capabilities .It multicast groups -If of the available multicast group if any and it associated name +Id of the available multicast group if any and it associated name .El .It Cm monitor Ao family Ac Oo multicast group Oc Connect to the From nobody Wed Oct 23 07:24:31 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLCN2Z10z5ZxS4; Wed, 23 Oct 2024 07:24: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLCN0Qpxz47JD; Wed, 23 Oct 2024 07:24:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668272; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwFx7m0g99/92ejXAqSzRcLZrP6g6RzkEq3lRd7ThDY=; b=aOyQ4Rjy7jafMda30PWjSEoJb6slrLLP0UO/m3+VpOV7TemIJNgcr+7BjPOMQuBY12SFWJ ggfAYjvaOguvg+ZfPXIknp+exUJIGZv/m7Ht5K5lrYZy+/e/sZMUEFLCCdivVtqTxIoqkd qnXmmCfjakvCwame755IhJSX9s6elDDBjReahxtFepw5zwMUIviIhDN0Bkgtmpvg0YjbSd BHI0UWN6G/Dko6XHBtXXYBpX4WbIltufMsux5SSQHheC/66OrAayblN0xwTD6jw8vhYiya 5xLfxXVX62KT99mW7/Y/LEw267UYc5yyG6Hp4bafMJycx5Gklyyt4svbR5VxPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668272; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwFx7m0g99/92ejXAqSzRcLZrP6g6RzkEq3lRd7ThDY=; b=C4lxXtEKg4bivlzMp5RtDAVzvKSu+6zMUGRDbGPSrOPmUO1kS7yoNiLfAid5Kl5iT21unU /z+yt+EascC2DWq6nEp4INi+V1HXWeDYT238cO3/aywvOOxKCRYJnOUlsDTdbbniXL48L7 7bkVBXQmGvUtLnG0gwSyIaNq67ddk+JyRGjXsJb7SOnT13HneIEL2xWJpke6Ni+vSZzcVd ISjQ8mgJNXJ+YrRhWTJG7aslAkB4NfWGUm0YSBxJFlMxoqAyDJMN8PtjWu0n+HefkxsrSR C+4cU4xjzS1uBzARaQX/0KSqKpxEcPhkEvQj3jCOF+IopX3PQ+UiLS8ASZjR1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668272; a=rsa-sha256; cv=none; b=Bt4luQsCnhOjfb1F4H3Gmw9jtD/y3I9HvYh9hvO2npnompHi6uphvmsWk8dUJhDKH/yHYu G4ADEX93UeMvYAUJPTH1xDGAMf4na+TgRi9T4V+xpAIVX60gZaW44nm5cEQ2HMYLlpyFL5 bSsvUQHaf2FqOllOaQQZXIShWLLSvKIWww8oPpSjaZjFREOa81PNFHooOQx1dBkTLNhu5S O96CKJih3aXAv1kn8PupFPgxiGDKaQL/2jpeZ/gv/nL+Btq821CigdR6DfE5lnDM+VbMaY kxvImZlkTeeub6HY38YoB+Sx4B4vhuDk5FiHiavBw+j8cRMnLcGGIDP5t/aINQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLCM6ld6zpXn; Wed, 23 Oct 2024 07:24: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 49N7OVx6036449; Wed, 23 Oct 2024 07:24:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7OVId036446; Wed, 23 Oct 2024 07:24:31 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:24:31 GMT Message-Id: <202410230724.49N7OVId036446@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: 379b9c6e7c68 - stable/14 - genl: add parser for nlsysevent List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 379b9c6e7c680d14fac511ad7d5f54ea95c35681 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=379b9c6e7c680d14fac511ad7d5f54ea95c35681 commit 379b9c6e7c680d14fac511ad7d5f54ea95c35681 Author: Baptiste Daroussin AuthorDate: 2024-10-07 09:43:50 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:24:09 +0000 genl: add parser for nlsysevent genl monitor nlsysevent is now able to print the messages received (cherry picked from commit 883722891aa92fc6033020c67ec7f2f0d9fedf95) --- usr.bin/genl/genl.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/usr.bin/genl/genl.c b/usr.bin/genl/genl.c index 88880c4bacbd..48c74fa20c81 100644 --- a/usr.bin/genl/genl.c +++ b/usr.bin/genl/genl.c @@ -40,10 +40,12 @@ #include #include #include +#include static int monitor_mcast(int argc, char **argv); static int list_families(int argc, char **argv); static void parser_nlctrl_notify(struct snl_state *ss, struct nlmsghdr *hdr); +static void parser_nlsysevent(struct snl_state *ss, struct nlmsghdr *hdr); static void parser_fallback(struct snl_state *ss, struct nlmsghdr *hdr); static struct commands { @@ -60,8 +62,25 @@ static struct mcast_parsers { void (*parser)(struct snl_state *ss, struct nlmsghdr *hdr); } mcast_parsers [] = { { "nlctrl", parser_nlctrl_notify }, + { "nlsysevent", parser_nlsysevent }, }; +struct nlevent { + const char *name; + const char *subsystem; + const char *type; + const char *data; +}; +#define _OUT(_field) offsetof(struct nlevent, _field) +static struct snl_attr_parser ap_nlevent_get[] = { + { .type = NLSE_ATTR_SYSTEM, .off = _OUT(name), .cb = snl_attr_get_string }, + { .type = NLSE_ATTR_SUBSYSTEM, .off = _OUT(subsystem), .cb = snl_attr_get_string }, + { .type = NLSE_ATTR_TYPE, .off = _OUT(type), .cb = snl_attr_get_string }, + { .type = NLSE_ATTR_DATA, .off = _OUT(data), .cb = snl_attr_get_string }, +}; +#undef _OUT +SNL_DECLARE_GENL_PARSER(nlevent_get_parser, ap_nlevent_get); + struct genl_ctrl_op { uint32_t id; uint32_t flags; @@ -183,6 +202,20 @@ parser_nlctrl_notify(struct snl_state *ss, struct nlmsghdr *hdr) dump_family(&family); } +void +parser_nlsysevent(struct snl_state *ss, struct nlmsghdr *hdr) +{ + struct nlevent ne = {}; + if (snl_parse_nlmsg(ss, hdr, &nlevent_get_parser, &ne)) { + printf("system=%s subsystem=%s type=%s", ne.name, ne.subsystem, ne.type); + if (ne.data) { + printf(" %s", ne.data); + if (ne.data[strlen(ne.data) -1] != '\n') + printf("\n"); + } + } +} + void parser_fallback(struct snl_state *ss __unused, struct nlmsghdr *hdr __unused) { @@ -209,6 +242,7 @@ monitor_mcast(int argc __unused, char **argv) usage(); return (EXIT_FAILURE); } + if (!snl_get_genl_family_info(&ss, argv[0], &attrs)) errx(EXIT_FAILURE, "Unknown family '%s'", argv[0]); if (argc == 1) From nobody Wed Oct 23 07:24:33 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLCP3HH7z5Zwrk; Wed, 23 Oct 2024 07:24:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLCP1S3tz47Cw; Wed, 23 Oct 2024 07:24:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668273; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kMVJHk4UdeyiiBm5CUIHtjWo8ovD1344KWKgE1+okJY=; b=fNKyukk/jMKrHopHjpu5maFWWbW8gR7XNPxBZVs8ytUL3x1c5WsFAkTDE4xmqsBfH+iRf+ W1nFo0M2h8jvO+2n0iSLb1zdqiVMHlllUUM+ZrcCQt5YZqNQ1vOlwuxei8DZkPvcl5C3PO E5lGioGhqNuQ6sV0Un5NuyCHLieMLss5Hzm+gjYSVycL6ZUQ1QtRT6A8geKPIBlxqg1jbT fZONMg08UdEjD+icTSZd3FbLfAk/pXR1ToSNXeb9F0j/Y2z2M+5znvwh5gi9zLno74/Rg4 KK6I9oOkl3j213NkQW6KzJh70bjKagQEFJsXJK9PKWE7/cxM7ZDtHpiAPfFokQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668273; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kMVJHk4UdeyiiBm5CUIHtjWo8ovD1344KWKgE1+okJY=; b=iyEhrrPdKZLyBvdKFrXmJuq8Q5/+36Bf5c6tl16x3OAzKp00GONonH5h4xgg9FlRz0B+zs xrnWWG3NMToKAxhQKulxbtaqgsDbe1qtzvxb99p0gms7hDqB83lnfBdd9qae3Bpb7Na+pD 6ZWZt6AIzDOyTGFOjjdVh0nqepWPVXyqoCTcv92dIRYooH7yKNADQumXfihyg9CuSwmg/9 As6ODEa2IysOvA6Zyn+KTcVqAQiRe3/q4YMuz3wiD6Tc2PRewy7IY4OJNsRIMiAiXUidYw k5ipTwXyjAYeUmPezqx/XfSHefOdwswvhUJsxASBQlttkpMw4JQ3hwQsQ6h2Ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668273; a=rsa-sha256; cv=none; b=gHiP51EMdbpe0LDMqPhG5eOIJXCzMuhzi1iuYjQkYfGcqs3mPnpGf/bFxkU77CsDaKp5/N KCmLk+/DaVBtvW0M8gOJ/v+HVO85Uc11rZhr6pj/xufhV6Qa7RZCTkByX3rAjpe/gGhmjt 7GF+/+CFMgfHpYZrilSDv1LnJUusEmSuc8eLTW39b8A3hm8f0obR6ZgVGnhaoiOYg3dbRi hbe61ZPelMJ07Jsu5aRDuaM8fFV7ucnSKlEmgZpUkayLVQyrjpHz1QNcBkvOoG3DwIY3zt awy8iMFrKG8vylgOBKhXY5KYA4hQK/JjIip9eYibx04mcmka0VCBbS2c14Yudg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLCP0bGfzpkv; Wed, 23 Oct 2024 07:24: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 49N7OXXP036486; Wed, 23 Oct 2024 07:24:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7OXBH036483; Wed, 23 Oct 2024 07:24:33 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:24:33 GMT Message-Id: <202410230724.49N7OXBH036483@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: 8610fcedb98b - stable/14 - genl: small cleanup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8610fcedb98bf6960c1bfd80084125016e1f8709 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=8610fcedb98bf6960c1bfd80084125016e1f8709 commit 8610fcedb98bf6960c1bfd80084125016e1f8709 Author: Baptiste Daroussin AuthorDate: 2024-10-07 13:28:54 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:24:09 +0000 genl: small cleanup Following up from another review using basically the same code: remove useless cast replace uint32_t with unsigned int. No functional changes expected (cherry picked from commit 782766a32d963587a6aac8521aedd132b68a9dab) --- usr.bin/genl/genl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.bin/genl/genl.c b/usr.bin/genl/genl.c index 48c74fa20c81..df2758c273f3 100644 --- a/usr.bin/genl/genl.c +++ b/usr.bin/genl/genl.c @@ -247,13 +247,13 @@ monitor_mcast(int argc __unused, char **argv) errx(EXIT_FAILURE, "Unknown family '%s'", argv[0]); if (argc == 1) all = true; - for (uint32_t i = 0; i < attrs.mcast_groups.num_groups; i++) { + for (unsigned int i = 0; i < attrs.mcast_groups.num_groups; i++) { if (all || strcmp(attrs.mcast_groups.groups[i]->mcast_grp_name, argv[1]) == 0) { found = true; if (setsockopt(ss.fd, SOL_NETLINK, NETLINK_ADD_MEMBERSHIP, - (void *)&attrs.mcast_groups.groups[i]->mcast_grp_id, + &attrs.mcast_groups.groups[i]->mcast_grp_id, sizeof(attrs.mcast_groups.groups[i]->mcast_grp_id)) == -1) err(EXIT_FAILURE, "Cannot subscribe to command " From nobody Wed Oct 23 07:25:55 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLDz2mncz5ZxfS; Wed, 23 Oct 2024 07:25:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLDz2G3Zz496D; Wed, 23 Oct 2024 07:25:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668355; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x0uu/oBIeCni2pbKA/YbsVk6hoYLFhSkv00OiNRwpCU=; b=BhRj5512rMp5WwWsdRmfSXBAP00FTY1oerOwnTxwWfRW+sqY7AH9F5UiEIL8rW/L1RpQMp 44bI4EA2LQKjI/F7m/WGo/Posc+CywNU3Qvu6Utv18MUPoypV6bNlmllUEzPxfBwkYFgg8 tagcphrAAMFa8jtNfOUdhk0hdCEstAoweogQ5WgchS3cywxSj9jYHweLM1z42NspuSgSTH r6LoBi8pz9k0x+2T6J6RyStfYPd0OCoJj3GYN2Cys1j7jTZWKogua4gJxQMiHInWKAVsNg q23KnVLYkYmOjQd6Zqkpn4KqIbG+Z8jxLq9be34l8ZNeOE/TWEDJp6CCtFMVrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668355; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x0uu/oBIeCni2pbKA/YbsVk6hoYLFhSkv00OiNRwpCU=; b=gBxhgp9xgHdG534v/4ObQwdWNYgRUMrBN3YrU9lbsuenMpuPUi4FDsSf7xMGgRPE3f2c9W 3BoHwtn7c8725MBzjqOemb/MNU9c+m5JsUdt8YX4cBSFLQdOTd/lyfhFIidzQp6PhFiD40 atxsweMfTA7G33mCKld8t8C1LrcIAE85qu1JNR/bb9U/1XMVXE4vvcjPBkoW0IFzBmrMHo y1UykXlyRsrQxltiVjz4R4SfxEISuYADWk+BHczVNDSwb5QKW2nWiflANf8avML5rW51/f gvJ6nRWDfOqA0xXghsoJfEAAbp2Q9luhndERxrkogWi3orsNMZ7d3hVYp7Q98g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668355; a=rsa-sha256; cv=none; b=NRXexGiU4cvhwpJgoi1/OHdMdjtJwk9q6OW3mjxPkvRYGxQZPSTxiaC+JlHa8mx4pz/Ygn 8X03iIDFeFx6FhW5RxVHZi+CPWC7rgfTXQYWAszGRcmjjk9r6zyInp+eTswWlmu+66KPyl 7Ak/Ao2g6W1R8CQDwlZaHPedkFrgGjXIRw/6iuNgMsUiB30GWLdKEzVRqiAcHy2XSYBA0+ sW9oMRcCswgVq51dEIu81N3kRAP/15OAV66UasPhIXK2c+oM9G+3dSmLzPBm7eNRIr2ZGf pkcaiBTWKdQS03EUVspCdVGaPeEd1n/25OAXSBk+7pWstxVqUdOCawnOQd5vLA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLDz1rl2zpTq; Wed, 23 Oct 2024 07:25: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 49N7PtTt037054; Wed, 23 Oct 2024 07:25:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7PtEM037051; Wed, 23 Oct 2024 07:25:55 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:25:55 GMT Message-Id: <202410230725.49N7PtEM037051@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: c1104a7d8e25 - stable/14 - pci_vendors: update to 2024-09-20 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c1104a7d8e254037336afff6c1d8cb9f885aa040 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=c1104a7d8e254037336afff6c1d8cb9f885aa040 commit c1104a7d8e254037336afff6c1d8cb9f885aa040 Author: Baptiste Daroussin AuthorDate: 2024-10-08 07:06:13 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:25:50 +0000 pci_vendors: update to 2024-09-20 (cherry picked from commit 8bfd7d5f507a1ee3d2836bf0a0502b218cd788c1) --- share/misc/pci_vendors | 412 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 346 insertions(+), 66 deletions(-) diff --git a/share/misc/pci_vendors b/share/misc/pci_vendors index f168678909c8..968338dd1099 100644 --- a/share/misc/pci_vendors +++ b/share/misc/pci_vendors @@ -1,8 +1,8 @@ # # List of PCI ID's # -# Version: 2024.06.23 -# Date: 2024-06-23 03:15:02 +# Version: 2024.09.20 +# Date: 2024-09-20 03:15:02 # # Maintained by Albert Pool, Martin Mares, and other volunteers from # the PCI ID Project at https://pci-ids.ucw.cz/. @@ -138,6 +138,10 @@ 1702 IS64PH ISDN Adapter 1703 ISDN Adapter (PCI Bus, DV, W) 1704 ISDN Adapter (PCI Bus, D, C) +0709 LJMicro Co., Ltd + 0101 GP101 + 0102 GP102 + 0201 GP201 0721 Sapphire, Inc. 0731 Jingjia Microelectronics Co Ltd 7200 JM7200 Series GPU @@ -183,6 +187,7 @@ 6666 MediaPress (MPEG2 encoder board) 07d1 D-Link System Inc 0824 T1042 [Freescale] +0911 Hantick 0925 VIA Technologies, Inc. (Wrong ID) 0a89 BREA Technologies Inc 0b0b Rhino Equipment Corp. @@ -1228,6 +1233,7 @@ 131b Kaveri [Radeon R4 Graphics] 131c Kaveri [Radeon R7 Graphics] 131d Kaveri [Radeon R6 Graphics] + 13c0 Granite Ridge [Radeon Graphics] 13e9 Ariel/Navi10Lite 13f9 Oberon/Navi12Lite 13fe Cyan Skillfish [BC-250] @@ -1237,6 +1243,7 @@ 1478 Navi 10 XL Upstream Port of PCI Express Switch 1479 Navi 10 XL Downstream Port of PCI Express Switch 1506 Mendocino + 150e Strix [Radeon 880M / 890M] 154c Kryptos [Radeon RX 350] 1462 7c28 MS-7C28 Motherboard 154e Garfield @@ -3963,6 +3970,7 @@ 1458 231d Radeon RX 5600 XT/REV 2.0 [Windforce 6GB OC] 148c 2398 AXRX 5700 XT 8GBD6-3DHE/OC [PowerColor Red Devil Radeon RX 5700 XT] 1682 5701 RX 5700 XT RAW II + 1849 5102 RX5700 CLD 8GO [ASRock Challenger D RX 5700 OC] 1849 5120 Radeon RX 5600 XT 1da2 e409 Sapphire Technology Limited Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] 1da2 e410 Sapphire NITRO+ RX 5700 XT @@ -4022,6 +4030,8 @@ 73e4 Navi 23 USB 73ef Navi 23 [Radeon RX 6650 XT / 6700S / 6800S] 1458 2405 Navi 23 [Radeon RX 6650 XT] +# This is the refreshed MSI MECH series card equipped with the same Navi 23 GPU as ID 5021 + 1462 5027 RX 6650XT MECH 2X 1849 5236 RX 6650 XT Challenger D OC 73f0 Navi 33 [Radeon RX 7600M XT] 73ff Navi 23 [Radeon RX 6600/6600 XT/6600M] @@ -4041,8 +4051,9 @@ 1da2 e457 PULSE AMD Radeon RX 6500 XT 7446 Navi 31 USB 7448 Navi 31 [Radeon Pro W7900] - 744c Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M] - 1002 0e3b RX 7900 GRE [XFX] + 744a Navi 31 [Radeon Pro W7900 Dual Slot] + 744c Navi 31 [Radeon RX 7900 XT/7900 XTX/7900 GRE/7900M] + 1002 0e3b RX 7900 XTX / RX 7900 GRE [XFX] 1043 0506 TUF Gaming Radeon RX 7900 XTX OC 1849 5304 Radeon RX 7900 XTX 1da2 471e PULSE RX 7900 XTX @@ -4050,15 +4061,21 @@ 1da2 e471 NITRO+ RX 7900 XTX Vapor-X 1eae 7901 RX-79XMERCB9 [SPEEDSTER MERC 310 RX 7900 XTX] 745e Navi 31 [Radeon Pro W7800] - 7460 7460 Navi32 GL-XL [AMD Radeon PRO V710] + 7460 Navi32 GL-XL [AMD Radeon PRO V710] + 7461 Navi 32 [AMD Radeon PRO V710] 7470 Navi 32 [Radeon PRO W7700] 747e Navi 32 [Radeon RX 7700 XT / 7800 XT] 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] 7483 Navi 33 [Radeon RX 7600M/7600M XT] + 7487 Navi 33 [Radeon Graphics] 7489 Navi 33 [Radeon Pro W7500] + 748b Navi 33 [Radeon Graphics] + 7499 Navi 33 [Radeon RX 7400/7300/Pro W7400] 74a0 Aqua Vanjaram [Instinct MI300A] 74a1 Aqua Vanjaram [Instinct MI300X] + 74b5 Aqua Vanjaram [Instinct MI300X VF] 7833 RS350 Host Bridge 7834 RS350 [Radeon 9100 PRO/XT IGP] 7835 RS350M [Mobility Radeon 9000 IGP] @@ -5177,6 +5194,12 @@ 1537 Kabini/Mullins PSP-Platform Security Processor 1538 Family 16h Processor Function 0 1539 Kabini P2P Bridge for PCIe Ports[4:0] +# AMD EPYC Turin CPU + 153a Family 1Ah (Models 00h-0Fh) Root Complex +# AMD EPYC Turin CPU + 153b Family 1Ah (Models 00h-0Fh) IOMMU +# AMD EPYC Turin CPU + 153d Family 1Ah (Models 00h-0Fh) PCIe Dummy Host Bridge 1540 Kryptos/Cato/Garfield/Garfield+/Arlene/Pooky HT Configuration 1541 Kryptos/Cato/Garfield/Garfield+/Arlene/Pooky Address Maps 1542 Kryptos/Cato/Garfield/Garfield+/Arlene/Pooky DRAM Configuration @@ -5193,6 +5216,10 @@ 154f Anubis Audio Processor 1550 Garfield+/Arlene/Pooky/Anubis SPLL Configuration 1553 Arlene/Pooky P2P Bridge for PCIE (3:0) +# AMD EPYC Turin CPU + 1555 Family 1Ah (Models 00h-0Fh) Internal PCIe GPP Bridge +# AMD EPYC Turin CPU + 1556 Family 1Ah (Models 00h-0Fh) PCIe Dummy Function 155b Anubis Root Complex 155c Anubis IOMMU 155d Anubis UMI PCIe Dummy Bridge @@ -8597,6 +8624,7 @@ 1093 72f7 PXIe-6535 1093 72f8 PXIe-6536 1093 72f9 PXIe-6537 + 1093 730a PXIe-5142 1093 7326 PCIe-6509 1093 736c PXIe-4140 1093 738b PXIe-5622 @@ -8666,6 +8694,7 @@ 1093 762e PXIe-5606 1093 7644 PXIe-4841 1093 764a PCIe-8237R-S + 1093 7652 PXIe-4080 1093 7658 PXIe-5162 (4CH) 1093 76ab PXIe-4322 1093 76ad PXIe-4112 @@ -8682,6 +8711,8 @@ 1093 76ce CVS-1459 1093 76d0 PXIe-5160 (2CH) 1093 76d1 PXIe-5160 (4CH) + 1093 76d8 PXIe-4081 + 1093 76d9 PXIe-4082 1093 76dc PXIe-4610 1093 76ec PXIe-2524 1093 76ed PXIe-2525 @@ -8719,6 +8750,8 @@ 1093 7790 PXIe-5170R (4CH) 1093 7791 PXIe-5170R (8CH) 1093 7793 PXIe-5171R (8CH) + 1093 7794 PXIe-5172 (4CH - 325T) + 1093 7795 PXIe-5172 (8CH - 410T) 1093 77a5 PXIe-6345 1093 77a6 PXIe-6355 1093 77a7 PXIe-6365 @@ -8742,18 +8775,44 @@ 1093 7802 PXIe-4302 1093 7803 PXIe-4303 1093 7805 PXIe-4305 + 1093 781e PXIe-4135 + 1093 7820 PXIe-5164 + 1093 783d PXIe-6570 + 1093 7851 PXIe-5172 (8CH - 325T) 1093 786f PXIe-4163 + 1093 7881 PXIe-5163 1093 788e PXIe-4304 + 1093 78d5 PXIe-5413 (1CH) + 1093 78d6 PXIe-5413 (2CH) + 1093 78d7 PXIe-5423 (1CH) + 1093 78d8 PXIe-5423 (2CH) + 1093 78d9 PXIe-5433 (1CH) + 1093 78da NI PXIe-5433 (2CH) 1093 78f8 NI FlexRIO Module (KU035) 1093 78f9 NI FlexRIO Module (KU040) 1093 78fa NI FlexRIO Module (KU060) 1093 78ff PXIe-4162 + 1093 792f PXIe-4190 + 1093 7935 PXIe-5111 + 1093 7936 PXIe-5110 1093 7995 PXIe-7911R 1093 7996 PXIe-7912R 1093 7997 PXIe-7915R + 1093 79cd PXIe-5113 1093 79d3 NI FlexRIO PCIe Module (KU035) 1093 79d4 NI FlexRIO PCIe Module (KU040) 1093 79d5 NI FlexRIO PCIe Module (KU060) + 1093 79f8 PXIe-6571 + 1093 7a16 PXIe-4147 + 1093 7a9a PXIe-4137 (40W) + 1093 7aa4 PXIe-4135 (40W) + 1093 7aca PXIe-4051 + 1093 7acb PXIe-4150 + 1093 7acc PXIe-4151 + 1093 7ae0 PXIe-4163 (10 pA) + 1093 7ae1 PXIe-4162 (10 pA) + 1093 7aef PXIe-4190 (500 kHz) + 1093 7b1f PXIe-6571 (8CH) c801 PCI-GPIB c811 PCI-GPIB+ c821 PXI-GPIB @@ -12950,7 +13009,7 @@ 2182 TU116 [GeForce GTX 1660 Ti] 2183 TU116 2184 TU116 [GeForce GTX 1660] - 2187 TU116 [GeForce GTX 1650 SUPER] + 2187 TU116 [GeForce GTX 1660 SUPER] 2188 TU116 [GeForce GTX 1650] 2189 TU116 [CMP 30HX] 2191 TU116M [GeForce GTX 1660 Ti Mobile] @@ -12993,6 +13052,7 @@ 22ba AD102 High Definition Audio Controller 22bc AD104 High Definition Audio Controller 22bd AD106M High Definition Audio Controller + 22be AD107 High Definition Audio Controller 2302 GH100 2313 GH100 [H100 CNX] 2321 GH100 [H100L 94GB] @@ -13007,6 +13067,7 @@ 2338 GH100 [H100 SXM5 96GB] 2339 GH100 [H100 SXM5 94GB] 233a GH100 [H800L 94GB] + 233b GH100 [H200 NVL] 233d GH100 [H100 96GB] 2342 GH100 [GH200 120GB / 480GB] 2343 GH100 @@ -13131,7 +13192,7 @@ 2709 AD103 [GeForce RTX 4070] 2717 GN21-X11 [GeForce RTX 4090 Laptop GPU] 2730 AD103GLM [RTX 5000 Ada Generation Laptop GPU] - 2757 GN21-X11 + 2757 GN21-X11 [GeForce RTX 4090 Laptop GPU] 2770 AD103GLM [RTX 5000 Ada Generation Embedded GPU] 2782 AD104 [GeForce RTX 4070 Ti] 2783 AD104 [GeForce RTX 4070 SUPER] @@ -13154,6 +13215,7 @@ 2805 AD106 [GeForce RTX 4060 Ti 16GB] 2808 AD106 [GeForce RTX 4060] 2820 AD106M [GeForce RTX 4070 Max-Q / Mobile] + 2822 AD106M [GeForce RTX 3050 A Laptop GPU] 2838 AD106GLM [RTX 3000 Ada Generation Laptop GPU] 2860 AD106M [GeForce RTX 4070 Max-Q / Mobile] 2878 AD106GLM [RTX 3000 Ada Generation Embedded GPU] @@ -13168,6 +13230,8 @@ 28e0 AD107M [GeForce RTX 4060 Max-Q / Mobile] 28e1 AD107M [GeForce RTX 4050 Max-Q / Mobile] 28f8 AD107GLM [RTX 2000 Ada Generation Embedded GPU] + 2900 GB100 + 2940 GB100 10df Emulex Corporation 0720 OneConnect NIC (Skyhawk) 103c 1934 FlexFabric 20Gb 2-port 650M Adapter @@ -13525,7 +13589,7 @@ 1043 16d5 U6V/U31J laptop 1043 81aa P5B 1043 82c6 M3A78 Series Motherboard - 1043 83a3 M4A785/P7P55 Motherboard + 1043 83a3 M4A785/P7P55/AT3IONT-I Motherboard 1043 8432 P8P67 and other motherboards 1043 8505 P8 series motherboard 1043 8554 H81M-C Motherboard @@ -13608,6 +13672,7 @@ 8821 RTL8821AE 802.11ac PCIe Wireless Network Adapter 8852 RTL8852AE 802.11ax PCIe Wireless Network Adapter a85a RTL8852AE WiFi 6 802.11ax PCIe Adapter + b520 RTL8852BE-VT PCIe 802.11ax Wireless Network Controller b723 RTL8723BE PCIe Wireless Network Adapter 10ec 8739 Dell Wireless 1801 17aa b736 Z50-75 @@ -13644,11 +13709,16 @@ 3fc5 RME Hammerfall DSP 3fc6 RME Hammerfall DSP MADI 5000 Alveo U200 XDMA Platform + 10ee 000e Alveo card 5004 Alveo U250 XDMA Platform + 10ee 000e Alveo card 5005 Alveo U250 500c Alveo U280 XDMA Platform + 10ee 000e Alveo card 5020 Alveo U50 XMDA Platform + 10ee 000e Alveo card 505c Alveo U55C + 10ee 000e Alveo card 5074 Alveo X3522, Quad Port, 10/25GbE Adaptable Accelerator Card 5084 Alveo X3522, Quad Port, 10/25GbE Low Latency Network Adapter 6987 SmartSSD @@ -13664,9 +13734,13 @@ 9234 SmartSSD 9434 SmartSSD d000 Alveo U200 Golden Image + 10ee 000e Alveo card d004 Alveo U250 Golden Image + 10ee 000e Alveo card d00c Alveo U280 Golden Image + 10ee 000e Alveo card d020 Alveo U50 Golden Image + 10ee 000e Alveo card d154 Copley Controls CAN card (PCI-CAN-02) # SED is assigned Xilinx PCI device IDs ebf0 through ebff ebf0 SED Systems Modulator/Demodulator @@ -15208,6 +15282,21 @@ 1137 021a VIC 1487 MLOM Ethernet NIC 1137 024a VIC 1495 PCIe Ethernet NIC 1137 024b VIC 1497 MLOM Ethernet NIC + 1137 02af VIC 1467 MLOM Ethernet NIC + 1137 02b0 VIC 1477 MLOM Ethernet NIC + 1137 02cf VIC 14425 MLOM Ethernet NIC + 1137 02d0 VIC 14825 Mezzanine Ethernet NIC + 1137 02db VIC 15231 MLOM Ethernet NIC + 1137 02dc VIC 15411 MLOM Ethernet NIC + 1137 02dd VIC 15428 MLOM Ethernet NIC + 1137 02de VIC 15420 MLOM Ethernet NIC + 1137 02df VIC 15230 MLOM Ethernet NIC + 1137 02e0 VIC 15427 MLOM Ethernet NIC + 1137 02e1 VIC 15422 Mezzanine Ethernet NIC + 1137 02e4 VIC 15235 PCIe Ethernet NIC + 1137 02e8 VIC 15238 MLOM Ethernet NIC + 1137 02f2 VIC 15425 PCIe Ethernet NIC + 1137 02f3 VIC 15237 MLOM Ethernet NIC 0044 VIC Ethernet NIC Dynamic 1137 0047 VIC P81E PCIe Ethernet NIC Dynamic 1137 0048 VIC M81KR Mezzanine Ethernet NIC Dynamic @@ -15254,6 +15343,7 @@ 1137 012e VIC 1227 PCIe Userspace NIC 1137 0137 VIC 1380 Mezzanine Userspace NIC 023e 1GigE I350 LOM + 02b7 VIC SR-IOV Ethernet VF 1138 Ziatech Corporation 8905 8905 [STD 32 Bridge] 1139 Dynamic Pictures, Inc @@ -15630,6 +15720,8 @@ 1170 Inventec Corporation 1171 Loughborough Sound Images Plc 1172 Altera Corporation +# Unknown card with Altera ACE EP1K50TC144-2 as the PCI interface and has 4 BNC inputs connected to 4 TL3016 Comparators and one TRS output connected to two LTC1650 DACs + 0004 PF5102 board 00a7 Stratix V 0530 Stratix IV 646c KT-500/KT-521 board @@ -16579,6 +16671,12 @@ 11f2 Picture Tel Japan K.K. 11f3 Keithley Metrabyte 0011 KPCI-PIO24 + 4200 42x0-SMU + 4205 4205-VPU + 4215 4200-VPU + 4216 422x-PxU + 4220 4200-CVU + 4221 4210-CVU 11f4 Kinetic Systems Corporation 2915 CAMAC controller 11f5 Computing Devices International @@ -17053,6 +17151,8 @@ 125d 1999 Allegro-1 AudioDrive 1989 ESS Modem 125d 1989 ESS Modem + 1990 ES1990S Canyon3D 2LE + 1992 ES1992S Canyon3D 2 1998 ES1983S Maestro-3i PCI Audio Accelerator 1028 00b1 Latitude C600 1028 00e5 Latitude C810 @@ -18552,6 +18652,7 @@ 0254 XR17V254 Quad UART PCI controller 0258 XR17V258 Octal UART PCI controller 0352 XR17V3521 Dual PCIe UART + 4c52 9252 LRUS9252H 2-Port RS232 Serial Adapter 13a9 Siemens Medical Systems, Ultrasound Group 13aa Broadband Networks Inc 13ab Arcom Control Systems Ltd @@ -20084,6 +20185,8 @@ f436 AVerTV Hybrid+FM 1462 Micro-Star International Co., Ltd. [MSI] 3483 MSI USB 3.0 (VIA VL80x-based xHCI USB Controller) +# This is MSI refreshed variant of their MECH series Navi 23 GPU card (73EF) + 5027 RX 6650XT MECH 2X 7c56 Realtek Ethernet controller RTL8111H aaf0 Radeon RX 580 Gaming X 8G 1463 Fast Corporation @@ -20877,7 +20980,7 @@ 14e4 d124 NetXtreme-E P2100D BCM57508 2x100G QSFP PCIE 14e4 d324 NetXtreme-E N2100D BCM57508 2x100G QSFP OCP3.0 Ethernet 14e4 df24 NetXtreme-E NGM2100D BCM57508 2x100G KR Mezz Ethernet - 1751 BCM57504 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet + 1751 BCM57504 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb Ethernet 1028 09d4 PowerEdge XR11/XR12 LOM 1028 0b1b PowerEdge XR5610 LOM 14e4 4250 NetXtreme-E Quad-port 25G SFP28 Ethernet PCIe4.0 x16 Adapter (BCM957504-P425G) @@ -21933,6 +22036,8 @@ 0223 CX8 PCIe Switch Family [ConnectX-8 PCIe Switch Secure Flash Recovery-RMA] 0224 CX9 Family [ConnectX-9 Flash Recovery] 0225 CX9 Family [ConnectX-9 Secure Flash Recovery-RMA] + 0226 CX10 Family [ConnectX-10 Flash Recovery] + 0227 CX10 Family [ConnectX-10 Secure Flash Recovery-RMA] 024e MT53100 [Spectrum-2, Flash recovery mode] 024f MT53100 [Spectrum-2, Secure Flash recovery mode] 0250 Spectrum-3, Flash recovery mode @@ -21953,12 +22058,13 @@ 0263 MT27710 [ConnectX-4 Lx Programmable Virtual Function] EN 0264 Innova-2 Flex Burn image 0270 Spectrum-5 in Flash Recovery Mode - 0271 Spectrum-4L, RMA + 0271 Spectrum-5 RMA 0274 Spectrum-6 in Flash Recovery Mode - 0275 Spectrum-4C RMA + 0275 Spectrum-6 RMA 0277 Spectrum-4TOR RMA 0278 Quantum-4 in Flash Recovery Mode 0279 Quantum-4 RMA + 027a Eros Chiplet 0281 NPS-600 Flash Recovery 0282 ArcusE Flash recovery 0283 ArcusE RMA @@ -22071,6 +22177,7 @@ 1023 CX8 Family [ConnectX-8] 1024 CX8 PCIe Switch Family [ConnectX-8 PCIe Switch] 1025 CX9 Family [ConnectX-9] + 1027 CX10 Family [ConnectX-10] 1974 MT28800 Family [ConnectX-5 PCIe Bridge] 1975 MT416842 Family [BlueField SoC PCIe Bridge] 1976 MT28908 Family [ConnectX-6 PCIe Bridge] @@ -22082,6 +22189,7 @@ 197c ConnectX/BlueField Family mlx5Gen PCIe Bridge [PCIe Bridge] 197d CX8 Family [ConnectX-8 PCIe Bridge] 197e CX9 Family [ConnectX-9 PCIe Bridge] + 197f CX10 Family [ConnectX-10 PCIe Bridge] 2020 MT2892 Family [ConnectX-6 Dx Emulated PCIe Bridge] 2021 MT42822 Family [BlueField-2 SoC Emulated PCIe Bridge] 2023 MT2910 Family [ConnectX-7 Emulated PCIe Bridge] @@ -22172,8 +22280,8 @@ cf6c MT53100 [Spectrum-2] cf70 Spectrum-3 cf80 Spectrum-4 - cf82 Spectrum-4L - cf84 Spectrum-4C + cf82 Spectrum-5 + cf84 Spectrum-6 d2f0 Quantum HDR (200Gbps) switch d2f2 Quantum-2 NDR (400Gbps) switch d2f4 Quantum-3 @@ -23616,6 +23724,7 @@ 0404 DOMINO Melody 0407 DOMINO Symphony 0408 DOMINO Symphony PCIe + 0814 Coaxlink Quad CXP-12 1809 Lumanate, Inc. 180c IEI Integration Corp 1813 Ambient Technologies Inc @@ -23913,6 +24022,7 @@ 01e5 NT100A01 Network Adapter 0215 NT400D11 Network Adapter 0225 NT40A11 Network Adapter + 0295 NT400D13 Network Adapter 18f6 NextIO 1000 [Nexsis] Switch Virtual P2P PCIe Bridge 1001 [Texsis] Switch Virtual P2P PCIe Bridge @@ -23966,7 +24076,8 @@ 2031 SC92031 PCI Fast Ethernet Adapter 8139 RTL8139D [Realtek] PCI 10/100BaseTX ethernet adaptor 1905 Micronas USA, Inc. -1912 Renesas Technology Corp. +# since the merger with NEC Electronics in 2010 +1912 Renesas Electronics Corp. 0002 SH7780 PCI Controller (PCIC) 0011 SH7757 PCIe End-Point [PBI] 0012 SH7757 PCIe-PCI Bridge [PPB] @@ -24460,12 +24571,17 @@ 19e5 d148 Hi1822 SP527 (2*16G FC) 19e5 d301 Hi1822 SP520 (2*16G FC) 19e5 d305 Hi1822 SP525 (2*16G FC) + 0204 Hi1822 Family (4*10GE) 0205 Hi1822 Family (2*100GE) 19e5 df27 Hi1822 MZ731 MEZZ (2*100GE) 0206 Hi1822 Family (2*25GE) 19e5 d138 Hi1822 SP582 (2*25GE) 19e5 d13a Hi1822 SC381 (2*25GE) 19e5 d145 Hi1822 SP586 (2*25GE) + 0208 Hi1822 Family (2*100GE) + 020b Hi1822 Family (4*25GE) + 020c Hi1822 Family (4*32G FC) + 020d Hi1822 Family (2*40GE) 0210 Hi1822 Family (4*25GE) 19e5 df2e Hi1822 MZ532 MEZZ (4*25GE) 0211 Hi1822 Family (4*25GE) @@ -24499,10 +24615,21 @@ 19e5 6213 NVMe SSD ES3500P V6 3840GB 2.5" U.2 19e5 6214 NVMe SSD ES3500P V6 7680GB 2.5" U.2 19e5 6215 NVMe SSD ES3500P V6 15360GB 2.5" U.2 + 3758 SP686C RAID Controller Card + 19e5 0185 RAID SP686C-M-16i 2G + 19e5 01a1 RAID SP686C-M-40i 2G + 19e5 01a4 RAID SP686C-M-16i 4G + 19e5 01a8 RAID SP686C-MH-32i 4G + 19e5 01ad RAID SP686C-M-40i 4G 375e Hi1822 Family Virtual Function 375f Hi1822 Family Virtual Function 379e Hi1822 Family Virtual Function 379f Hi1822 Family Virtual Function + 3858 SP186 HBA Controller Card + 19e5 0120 HBA SP186-M-32i + 19e5 0125 HBA SP186-M-40i + 19e5 0180 HBA SP186-M-16i + 19e5 0188 HBA SP186-M-8i a120 HiSilicon PCIe Root Port with Gen4 a121 HiSilicon PCI-PCI Bridge a122 HiSilicon Embedded DMA Engine @@ -24596,6 +24723,7 @@ 1a32 Quanta Microsystems, Inc 1a3b AzureWave 1112 AR9285 Wireless Network Adapter (PCI-Express) +1a3e Micro-Research Finland Oy 1a41 Tilera Corp. 0001 TILE64 processor 0002 TILEPro processor @@ -24963,7 +25091,7 @@ 1028 2151 BOSS-N1 Modular ET 1028 2196 ROR-N1 1028 2286 BOSS-N1 DC-MHS - 1028 2287 BOSS-N1 Modular + 1028 2287 BOSS-N1 Modular 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 @@ -25202,7 +25330,7 @@ 5012 FireCuda/IronWolf 510 SSD 5013 BarraCuda Q5 NVMe SSD (DRAM-less) 5016 FireCuda 520/IronWolf 525 SSD - 5018 FireCuda 530 SSD + 5018 E18 PCIe SSD 5019 BarraCuda PCIe SSD (DRAM-less) # 2TB 5021 FireCuda 520 SSD @@ -25254,7 +25382,7 @@ 1201 NG3 Series ARINC 429 Interface 1202 NG3 Series Avionics Discrete & Serial Interface 1203 NG3 Series Avionics Discrete Interface -1bd4 Inspur Electronic Information Industry Co., Ltd. +1bd4 IEIT SYSTEMS Co., Ltd 0911 Arria10_PCIe_F10A1150 1000 NS8600G1U160 NVME SSD 1001 NS8600G1U320 NVME SSD @@ -25328,6 +25456,7 @@ 0021 FD722 0022 FD788 0023 FD722-M2 + 0024 FD722 with bypass 1c28 Lite-On IT Corp. / Plextor 0122 M6e PCI Express SSD [Marvell 88SS9183] # previously Fiberblaze @@ -25437,7 +25566,39 @@ 284a PE8110 Series NVMe Solid State Drive 2a49 PE9110 Series NVMe Solid State Drive 2a59 PE9010 Series NVMe Solid State Drives - 2b59 PS10x0 Series NVMe Solid State Drives + 2b59 Px10x0 Series NVMe Solid State Drives + 1028 2295 NVMe ISE PS1010 RI U.2 1.92TB + 1028 2296 NVMe ISE PS1010 RI U.2 3.84TB + 1028 2297 NVMe ISE PS1010 RI U.2 7.68TB + 1028 2298 NVMe ISE PS1010 RI U.2 15.36TB + 1028 2299 NVMe ISE PS1030 MU U.2 1.6TB + 1028 229a NVMe ISE PS1030 MU U.2 3.2TB + 1028 229b NVMe ISE PS1030 MU U.2 6.4TB + 1028 229c NVMe ISE PS1030 MU U.2 12.8TB + 1028 22a7 NVMe ISE PS1010 RI E3.S 1.92TB + 1028 22a8 NVMe ISE PS1010 RI E3.S 3.84TB + 1028 22a9 NVMe ISE PS1010 RI E3.S 7.68TB + 1028 22aa NVMe ISE PS1010 RI E3.S 15.36TB + 1028 22ab NVMe ISE PS1030 MU E3.S 1.6TB + 1028 22ac NVMe ISE PS1030 MU E3.S 3.2TB + 1028 22ad NVMe ISE PS1030 MU E3.S 6.4TB + 1028 22ae NVMe ISE PS1030 MU E3.S 12.8TB + 1028 22dc NVMe FIPS PS1010 RI E3.S 1.92TB + 1028 22dd NVMe FIPS PS1010 RI E3.S 3.84TB + 1028 22de NVMe FIPS PS1010 RI E3.S 7.68TB + 1028 22df NVMe FIPS PS1010 RI E3.S 15.36TB + 1028 22e0 NVMe FIPS PS1030 MU E3.S 1.6TB + 1028 22e1 NVMe FIPS PS1030 MU E3.S 3.2TB + 1028 22e2 NVMe FIPS PS1030 MU E3.S 6.4TB + 1028 22e3 NVMe FIPS PS1030 MU E3.S 12.8TB + 1028 22f8 NVMe ISE PE1010 RI E3.S 1.92TB + 1028 22f9 NVMe ISE PE1010 RI E3.S 3.84TB + 1028 22fa NVMe ISE PE1010 RI E3.S 7.68TB + 1028 22fb NVMe ISE PE1010 RI E3.S 15.36TB + 1028 22fc NVMe ISE PE1030 MU E3.S 1.6TB + 1028 22fd NVMe ISE PE1030 MU E3.S 3.2TB + 1028 22fe NVMe ISE PE1030 MU E3.S 6.4TB + 1028 22ff NVMe ISE PE1030 MU E3.S 12.8TB 1c5f Beijing Memblaze Technology Co. Ltd. 000d PBlaze5 520/526 1c5f 0220 NVMe SSD PBlaze5 520 1920G AIC @@ -25676,7 +25837,7 @@ 0250 RMS-250 U.2 NVMe SSD 1ccf Zoom Corporation 0001 TAC-2 Thunderbolt Audio Converter -1cd2 SesKion GmbH +1cd2 Seskion GmbH 0301 Simulyzer-RT CompactPCI Serial DIO-1 card 0302 Simulyzer-RT CompactPCI Serial PSI5-ECU-1 card 0303 Simulyzer-RT CompactPCI Serial PSI5-SIM-1 card @@ -25685,6 +25846,9 @@ # supports 8x CAN (-FD) interfaces 0306 Simulyzer-RT CompactPCI Serial CAN-2 card (CAN-FD) 0307 Simulyzer-RT CompactPCI Serial DIO-2 card [Xilinx Zynq UltraScale+] + 0308 Simulyzer-RT CompactPCI Serial SENT-DIO-2 card +# 8-Channel ADC + 0309 Simulyzer-RT CompactPCI Serial SN-ADC card 1cd7 Nanjing Magewell Electronics Co., Ltd. 0002 Pro Capture AIO 0010 Pro Capture Endpoint @@ -25715,7 +25879,9 @@ 1cfd Mangstor 6300 MX6300 series PCIe x8 NVMe SSD 1d00 Pure Storage -1d05 Tongfang Hongkong Limited +1d05 AIstone Global Limited + 6027 B760-N2D5 motherboard + 7001 H610-N2 motherboard 1d0f Amazon.com, Inc. 7064 NeuronDevice (Inferentia) 7164 NeuronDevice (Trainium) @@ -25861,13 +26027,17 @@ 1d62 Nebbiolo Technologies 1d65 Imagine Communications Corp. 04de Taurus/McKinley -1d69 Celeno Communications +# nee Celeno Communications +1d69 Renesas Electronics Corp. 2432 CL2432 2440 CL2440 + 8000 CL80x0 Wireless Network Adapter + 8046 CL8046 Wireless Network Adapter 1d6a Aquantia Corp. 0001 AQC107 NBase-T/IEEE 802.3bz Ethernet Controller [AQtion] 4c52 6880 LREC6880BT Single-port 10Gb Ethernet Network Adapter 00b1 AQtion AQC100 NBase-T/IEEE 802.3an Ethernet Controller [Atlantic 10G] + 1043 874a XG-C100F 10GbE SFP+ Ethernet Adapter 00c0 Antigua NBase-T/IEEE 802.3an Ethernet Controller - Engineering Sample 04c0 AQtion AQC113 NBase-T/IEEE 802.3an Ethernet Controller [Antigua 10G] 4c52 1053 LRES1053PT Quad-port 10Gb Ethernet Network Adapter @@ -25935,6 +26105,7 @@ 1027 AR-P2P-DBG [P2P Debug Function] 1028 AR-P2P-ATR [P2P Actor Function] 1029 AR-P2P-UTL [P2P Utility Function] + 102a AR-TK242-FX2 [4x100GbE Gen5 Packet Capture-Replay Device] 4200 A5PL-E1-10GETI [10 GbE Ethernet Traffic Instrument] 1d72 Xiaomi 1d78 DERA Storage @@ -25996,6 +26167,14 @@ 1d78 7108 D7436 U.2 15mm 7.68TB NVMe SSD 1d78 7109 D7456 U.2 15mm 12.8TB NVMe SSD 1d78 710a D7436 U.2 15mm 15.36TB NVMe SSD + 1d78 7143 D7556 U.2 15mm 1.6TB dual port NVMe SSD + 1d78 7144 D7536 U.2 15mm 1.92TB dual port NVMe SSD + 1d78 7145 D7556 U.2 15mm 3.2TB dual port NVMe SSD + 1d78 7146 D7536 U.2 15mm 3.84TB dual port NVMe SSD + 1d78 7147 D7556 U.2 15mm 6.4TB dual port NVMe SSD + 1d78 7148 D7536 U.2 15mm 7.68TB dual port NVMe SSD + 1d78 7149 D7556 U.2 15mm 12.8TB dual port NVMe SSD + 1d78 714a D7536 U.2 15mm 15.36TB dual port NVMe SSD 1d78 7202 Aliflash V2 U.2 15mm 1.92TB NVMe SSD 1d78 7204 Aliflash V2 U.2 15mm 3.84TB NVMe SSD 1d78 7208 Aliflash V2 U.2 15mm 7.68TB NVMe SSD @@ -26023,7 +26202,7 @@ 3588 RK3588 1d89 YEESTOR Microelectronics Co., Ltd 0280 PCIe NVMe SSD -1d8f Enyx +1d8f Exegy 1d92 Abaco Systems Inc. 1d93 YADRO 1d94 Chengdu Haiguang IC Design Co., Ltd. @@ -26075,8 +26254,10 @@ 1d9b Meta Platforms, Inc. 0010 Networking DOM Engine 0011 IO Bridge + 0013 Host Network Interface 1da1 Teko Telecom S.r.l. 1da2 Sapphire Technology Limited + 475d Radeon RX 7800 XT [PULSE] e26a Radeon R7 250 e445 Sapphire Radeon RX 6700 1da3 Habana Labs Ltd. @@ -26144,7 +26325,14 @@ 1dbe 3001 Donghu-Z2 DC ZNS SSD U.2 4000GB 1dbe 3002 Donghu-Z2 DC ZNS SSD U.2 8000GB 5666 NVMe SSD Controller IG5666 - 5668 NVMe SSD Controller IG5668 + 5668 NVMe PCIe 5.0 DC SSD + 1dbe 5003 Dongting-N3 DC SSD U.2 3200GB + 1dbe 5004 Dongting-N3 DC SSD U.2 3840GB + 1dbe 5005 Dongting-N3 DC SSD U.2 6400GB + 1dbe 5006 Dongting-N3 DC SSD U.2 7680GB + 1dbe 5007 Dongting-N3 DC SSD U.2 12800GB + 1dbe 5008 Dongting-N3 DC SSD U.2 15360GB + 1dbe 5009 Dongting-N3 DC SSD U.2 25600GB 5669 NVMe SSD Controller IG5669 [Tacoma] 1dbf Guizhou Huaxintong Semiconductor Technology Co., Ltd 0401 StarDragon4800 PCI Express Root Port @@ -26407,7 +26595,17 @@ 1dee Biwin Storage Technology Co., Ltd. 2262 HP EX950 NVMe SSD 2263 HP EX900 NVMe SSD (DRAM-less) + 4121 PCIe 4.0 SP406/416 NVMe SSD + 1dee 0000 NVMe SSD SP416 800G 2.5" U.2 + 1dee 0001 NVMe SSD SP416 1.6T 2.5" U.2 + 1dee 0002 NVMe SSD SP416 3.2T 2.5" U.2 + 1dee 0003 NVMe SSD SP416 6.4T 2.5" U.2 + 1dee 0010 NVMe SSD SP406 960G 2.5" U.2 + 1dee 0011 NVMe SSD SP406 1.92T 2.5" U.2 + 1dee 0012 NVMe SSD SP406 3.84T 2.5" U.2 + 1dee 0013 NVMe SSD SP406 7.68T 2.5" U.2 5216 KingSpec NX series NVMe SSD (DRAM-less) + 7700 BIWIN NVMe SSD SP50Y/SP51Y 1def Ampere Computing, LLC e005 eMAG PCI Express Root Port 0 e006 eMAG PCI Express Root Port 1 @@ -26649,7 +26847,7 @@ 2263 270PM6, 270PM7 series NVMe SSD 1e3b DapuStor Corporation 0600 NVMe SSD Controller DP600 - 1e3b 0006 Enterprise NVMe SSD U.2 ODP 7.68TB (J5001) + 1e3b 0006 Enterprise NVMe SSD U.2 7.68TB (J5000) 1e3b 0010 Enterprise NVMe SSD U.2 3.84TB (R5102) 1e3b 0013 Enterprise NVMe SSD U.2 3.20TB (R5302) 1e3b 0030 Enterprise NVMe SSD U.2 3.84TB (J5100) @@ -26684,32 +26882,32 @@ 1e3b 0069 Enterprise NVMe SSD U.2 3.20TB (R5301D) 1e3b 006c Enterprise NVMe SSD U.2 1.92TB (R5101) 1e3b 006d Enterprise NVMe SSD U.2 1.60TB (J5301) - 1e3b 00b9 Enterprise NVMe SSD U.2 ODP 25.60TB (R5301)/(J5301) - 1e3b 00be Enterprise NVMe SSD U.2 ODP 30.72TB (R5101)/(J5101) - 1e3b 00c1 Enterprise NVMe SSD U.2 ODP 25.60TB (R5301D)/(J5301D) - 1e3b 00c4 Enterprise NVMe SSD U.2 ODP 30.72TB (R5101D)/(J5101D) - 1e3b 00c7 Enterprise NVMe SSD U.2 ODP 25.60TB (J5300) - 1e3b 00c8 Enterprise NVMe SSD U.2 ODP 30.72TB (J5100) - 1e3b 00c9 Enterprise NVMe SSD U.2 ODP 15.36TB (J5001) - 1e3b 00ca Enterprise NVMe SSD U.2 ODP 3.84TB (J5102) - 1e3b 00cb Enterprise NVMe SSD U.2 ODP 7.68TB (J5102) - 1e3b 00cc Enterprise NVMe SSD U.2 QDP 3.84TB (J5101) - 1e3b 00cd Enterprise NVMe SSD U.2 ODP 7.68TB (J5101) - 1e3b 00ce Enterprise NVMe SSD U.2 QDP 3.84TB (J5101D) - 1e3b 00cf Enterprise NVMe SSD U.2 ODP 7.68TB (J5101D) - 1e3b 00dc Enterprise NVMe SSD U.2 ODP 30.72TB with SAMSUNG 32GB DRAM (J5001) - 1e3b 00dd Enterprise NVMe SSD U.2 ODP 30.72TB with MT 32GB DRAM(J5001) - 1e3b 00de Enterprise NVMe SSD U.2 ODP 15.36TB with SK 16GB DRAM(J5001D) - 1e3b 00df Enterprise NVMe SSD U.2 ODP 30.72TB with SAMSUNG 32GB DRAM(J5001) - 1e3b 00e7 Enterprise NVMe SSD U.2 ODP 30.72TB with MT 32GB DRAM(J5001D) - 1e3b 00e8 Enterprise NVMe SSD U.2 QDP 3.20TB (J5301) - 1e3b 00e9 Enterprise NVMe SSD U.2 ODP 6.40TB (J5301) - 1e3b 00ea Enterprise NVMe SSD U.2 QDP 3.20TB (J5301D) - 1e3b 00eb Enterprise NVMe SSD U.2 ODP 6.40TB (J5301D) - 1e3b 00ec Enterprise NVMe SSD U.2 ODP 30.72TB with MT 32GB DRAM(J5101) - 1e3b 00ed Enterprise NVMe SSD U.2 ODP 30.72TB with MT 32GB DRAM(R5101) - 1e3b 00ee Enterprise NVMe SSD U.2 ODP 15.36B with SK 16GB DRAM(J5101) - 1e3b 00ef Enterprise NVMe SSD U.2 ODP 12.80TB with SK 16GB DRAM(J5301) + 1e3b 00b9 Enterprise NVMe SSD U.2 25.60TB + 1e3b 00be Enterprise NVMe SSD U.2 30.72TB + 1e3b 00c1 Enterprise NVMe SSD U.2 25.60TB + 1e3b 00c4 Enterprise NVMe SSD U.2 30.72TB + 1e3b 00c7 Enterprise NVMe SSD U.2 25.60TB (J5301) + 1e3b 00c8 Enterprise NVMe SSD U.2 30.72TB (J5000) + 1e3b 00c9 Enterprise NVMe SSD U.2 15.36TB (J5000) + 1e3b 00ca Enterprise NVMe SSD U.2 3.84TB (J5102) + 1e3b 00cb Enterprise NVMe SSD U.2 7.68TB (J5102) + 1e3b 00cc Enterprise NVMe SSD U.2 3.84TB (J5101) + 1e3b 00cd Enterprise NVMe SSD U.2 7.68TB (J5101) + 1e3b 00ce Enterprise NVMe SSD U.2 3.84TB (J5101D) + 1e3b 00cf Enterprise NVMe SSD U.2 7.68TB (J5101D) + 1e3b 00dc Enterprise NVMe SSD U.2 30.72TB (J5000) + 1e3b 00dd Enterprise NVMe SSD U.2 30.72TB(J5000) + 1e3b 00de Enterprise NVMe SSD U.2 15.36TB (J5000D) + 1e3b 00df Enterprise NVMe SSD U.2 30.72TB (J5000) + 1e3b 00e7 Enterprise NVMe SSD U.2 30.72TB (J5000D) + 1e3b 00e8 Enterprise NVMe SSD U.2 3.20TB (J5301) + 1e3b 00e9 Enterprise NVMe SSD U.2 6.40TB (J5301) + 1e3b 00ea Enterprise NVMe SSD U.2 3.20TB (J5301D) + 1e3b 00eb Enterprise NVMe SSD U.2 6.40TB (J5301D) + 1e3b 00ec Enterprise NVMe SSD U.2 30.72TB (J5101) + 1e3b 00ed NVMe SSD U.2 30.72TB (R5101) + 1e3b 00ee Enterprise NVMe SSD U.2 15.36B (J5101) + 1e3b 00ef Enterprise NVMe SSD U.2 12.80TB (J5301) 1e3b 00f0 Enterprise NVMe SSD U.2 0.40TB (X2900) 1e3b 00f1 Enterprise NVMe SSD U.2 0.80TB (X2900) 1e3b 00f2 Enterprise NVMe SSD U.2 1.60TB (X2900) @@ -26717,16 +26915,17 @@ 1e3b 00f5 Enterprise NVMe SSD U.2 0.40TB (X2900P) 1e3b 00f6 Enterprise NVMe SSD U.2 0.80TB (X2900P) 0800 DP800 - 1e3b 0001 Enterprise NVMe SSD U.2 QDP 3.84TB(R6100) - 1e3b 0007 Enterprise NVMe SSD U.2 ODP 15.36TB (R6100) + 1e3b 0001 Enterprise NVMe SSD U.2 3.84TB(R6100) + 1e3b 0007 Enterprise NVMe SSD U.2 15.36TB (R6100) 1e3b 000a Enterprise NVMe SSD U.2 3.20TB (R6300) 1e3b 000d Enterprise NVMe SSD U.2 6.40TB (R6300) 1e3b 0010 Enterprise NVMe SSD U.2 12.80TB (R6300) - 1e3b 0018 Enterprise NVMe SSD U.2 QDP 3.84TB (R6100C) - 1e3b 0019 Enterprise NVMe SSD U.2 ODP 7.68TB (R6100C) + 1e3b 0018 Enterprise NVMe SSD U.2 3.84TB (R6100C) + 1e3b 0019 Enterprise NVMe SSD U.2 7.68TB (R6100C) 1e3b 001a Enterprise NVMe SSD U.2 3.20TB (R6300C) 1e3b 001b Enterprise NVMe SSD U.2 6.40TB (R6300C) - 1e3b 001c Enterprise NVMe SSD U.2 ODP 7.68TB (R6100) + 1e3b 001c Enterprise NVMe SSD U.2 7.68TB (R6100) + 1e3b 001d Enterprise NVMe SSD U.2 3.84TB (R6101) 1098 Haishen3 NVMe SSD 1e3b 0001 Enterprise NVMe SSD U.2 0.8TB (H2100) 1e3b 0002 Enterprise NVMe SSD U.2 0.96TB (H2200) @@ -26793,6 +26992,7 @@ 1e4c GSI Technology 0010 Associative Processing Unit [Leda] 1e4c 0120 SE120 + 0020 Associative Processing Unit [Leda-2] 1e50 IP3 Tech (HK) Limited 1e52 Tenstorrent Inc 401e Wormhole @@ -26815,6 +27015,7 @@ 2864 Hailo-8 AI Processor 1e67 Untether AI 0002 runAI200 AI Inference Accelerator + 0004 speedAI240 AI Inference Accelerator 1e68 Jiangsu Xinsheng Intelligent Technology Co., Ltd 8111 EP2000Pro PCIe 3 NVMe SSD (DRAM-less) 1e6b Axiado Corp. @@ -26867,6 +27068,7 @@ 2a18 Video Transcode Controller 2a20 Cloud Intelligent Inference and Training Controller 2a22 Cloud Intelligent Inference Controller + 2a30 Cloud Video Transcode Controller 1ea7 Intelliprop, Inc 223a Typhon+ PCIe to Gen-Z Bridge 224a IPA-PE224A CXL to Gen-Z Bridge [Sphinx] @@ -26877,6 +27079,8 @@ 1001 EM120R-GL LTE Modem 1002 EM160R-GL LTE Modem 1eae XFX Limited +1eb0 Shenzhen Electrical Appliances CO. + 1901 NVMe SSD Controller (DRAM-less) 1eb1 VeriSilicon Inc 1001 Video Accelerator 1eb4 Quantum Nebula Microelectronics Technology Co.,Ltd. @@ -26928,10 +27132,7 @@ 2283 Patriot P300 NVMe SSD (DRAM-less) 1ed2 FuriosaAI, Inc. 0000 Warboy - 1111 RNGD - 0000 1111 RNGD-S - 0000 2222 RNGD VF - 0000 3333 RNGD-S VF + 0001 RNGD 2222 RNGD-S 1ed3 Yeston 1ed5 Moore Threads Technology Co.,Ltd @@ -26954,12 +27155,16 @@ 0222 MTT S3000 1ed5 0001 C3150 0223 G2S4 + 0225 MTT S3000E + 1ed5 0001 C3150 0251 G2N10 02ff MTT HDMI/DP Audio 0300 MTT S90 Engineering Sample 0301 MTT S90 + 0313 MTT X500 0323 MTT S4000 0327 MTT S4000 + 0328 MTT S4000 03ff MTT HDMI/DP Audio 1ed8 Digiteq Automotive 0101 FG4 PCIe Frame Grabber (T100) @@ -26972,7 +27177,26 @@ 1ee1 000b Airglow A430 NVMe SSD U.2 4.8TB 1ee1 0012 Airglow Z400 NVMe ZNS SSD U.2 5.76TB 1ee4 PETAIO INC - 1180 P8118 U.2 Single Port SSD + 1180 P8118 NVMe SSD Series + 1ee4 0015 NVMe SSD U.2 1.92TB (P8118E) + 1ee4 0016 NVMe SSD U.2 3.84TB (P8118E) + 1ee4 0017 NVMe SSD U.2 7.68TB (P8118E) + 1ee4 0025 NVMe SSD U.2 1.6TB (P8118E) + 1ee4 0026 NVMe SSD U.2 3.2TB (P8118E) + 1ee4 0027 NVMe SSD U.2 6.4TB (P8118E) + 1ee4 0115 NVMe SSD U.2 1.92TB (P8118Z) + 1ee4 0116 NVMe SSD U.2 3.84TB (P8118Z) + 1ee4 0117 NVMe SSD U.2 7.68TB (P8118Z) + 1ee4 0125 NVMe SSD U.2 1.6TB (P8118Z) + 1ee4 0126 NVMe SSD U.2 3.2TB (P8118Z) + 1ee4 0127 NVMe SSD U.2 6.4TB (P8118Z) + 1ee4 0215 NVMe SSD U.2 1.92TB (P8118X) + 1ee4 0216 NVMe SSD U.2 3.84TB (P8118X) + 1ee4 0217 NVMe SSD U.2 7.68TB (P8118X) + 1ee4 0225 NVMe SSD U.2 1.6TB (P8118X) + 1ee4 0226 NVMe SSD U.2 3.2TB (P8118X) + 1ee4 0227 NVMe SSD U.2 6.4TB (P8118X) + 1ee4 abcd NVMe SSD U.2 1ee9 SUSE LLC 1eec Viscore Technologies Ltd 0102 VSE250231S Dual-port 10Gb/25Gb Ethernet PCIe @@ -27028,6 +27252,8 @@ 5636 IG5636-Based NVMe SSD 1f0a Motorcomm Microelectronics. 6801 YT6801 Gigabit Ethernet Controller +1f0d DeGirum Corp. + 0100 AI Accelerator [ORCA] 1f0f NebulaMatrix Technology 1041 D1055AS vDPA Ethernet Controller 1f0f 0001 D1055AS vDPA Ethernet Controller @@ -27068,6 +27294,8 @@ # XConn XC50256 CXL2.0/PCIe5.0 switch c500 XC50256 1f17 Zettastone Technology +1f1c Sophgo Technologies Inc. + 1686 BM1684X [Sophon Series Deep Learning Accelerator] 1f24 xFusion Digital Technologies Co., Ltd. 1058 EP500/EP600 NVMe SSD 1f24 1114 EP500 NVMe SSD(RI) @@ -27151,9 +27379,18 @@ 1112 metaScale SmartNIC Virtual Function 1151 metaVisor DPU Physical Function 1152 metaVisor DPU Virtual Function +1f73 Shenzhen Quanxing Tech Co., Ltd. +1f7a Efinix, Inc. + 0100 Default ID for Titanium FPGA PCIe Interface (AXI) +1f99 Shenzhen Techwinsemi Technology Co., Ltd. +1f9d Axelera AI + 1100 Metis AIPU (rev 02) + 11aa Metis AIPU (rev 01) 1faa Hexaflake (Shanghai) Information Technology Co., Ltd. 0c10 Compass C10 PF 0c11 Compass C10 VF + 0c80 Compass2 C80 PF + 0c81 Compass2 C80 VF 1fab Unifabrix Ltd. 0000 Nexus Alpha IVPU 0100 NoX Gamma @@ -27260,6 +27497,7 @@ 1010 AWM 1 2000 AWM 2 2010 AWM 2-M +1fe1 Beijing Eswin Computing Technology Co., Ltd. 1fe4 HippStor Technology 1600 HP600 Series NVMe SSD 1fe4 0075 Enterprise NVMe SSD U.2 3.84TB(HP610) @@ -27304,9 +27542,20 @@ 5818 A5818 2036 Netforward Microelectronics Co., Ltd. 1618 NF1618 PCI Express Ethernet Controller + 2036 0860 NF1618 Family NX860 (2*25GE) + 2036 0861 NF1618 Family NX861 (4*25GE) + 2036 0862 NF1618 Family NX862 (2*50GE) + 2036 0863 NF1618 Family NX863 (2*100GE) + 2036 0864 NF1618 Family NX864 (1*200GE) 1619 NF1618 Family Virtual Function 2046 GXMICRO Technology (Shanghai) Co., Ltd. 2048 Beijing SpaceControl Technology Co.Ltd +2061 Unis Flash Memory + 4000 E4000 controller + 4100 E4100 controller +2063 Hubei Yangtze Mason Semiconductor Technology Co., Ltd. + 1406 ME7000 NVMe SSD +206d GigaIO Networks, Inc. 20f4 TRENDnet 2116 ZyDAS Technology Corp. 21b4 Hunan Goke Microelectronics Co., Ltd @@ -27317,6 +27566,7 @@ 1200 NVMe Streamer EP ERD 2304 Colorgraphic Communications Corp. *** 190 LINES SKIPPED *** From nobody Wed Oct 23 07:25:56 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLF04BYBz5ZwjC; Wed, 23 Oct 2024 07:25:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLF03JsMz497T; Wed, 23 Oct 2024 07:25:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668356; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pco4ZCKRNZj4FAQ1d+r9NTavdKQr7jjvprvpksGK1Cw=; b=jM9ODePG4AQH6oEDLL4nIPOK7VfoI1S6ZUaNTWQhvgy21ItcytWLd4oSGrx3Dw/E2D12f1 FfHzvwTwey83kDHQVQ/oS9+7NBKriOZXKT3IWZ1yygDbyn8pISszAeebEZWiSuhLbDAVwK he3xPBax1tpnBMrhJMsojTmeg0EreXhwzOLbXqzcNjclmdalGSOQxoM3CI1Fhq43RUogQo Y/gtSzX2s6hD29qBgeRqhgazl6ubFr1D5MA+BDpJSneECfEr+Q5d4ofEADTKziY7pCbU/j 17Crf2QOXJLH1tRI5pszW6Qka+HXTW87MGaPs7z5rX0TTX2lJCh+O2OZN2AJaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668356; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Pco4ZCKRNZj4FAQ1d+r9NTavdKQr7jjvprvpksGK1Cw=; b=ebg6fXAhqeis8+RCdiapiOd1i/0zhbAm0eTdMfmErHwOLjEOsrbN6AJa0JxjtUc78rZE+Y 25UPeeoDL3Lj0f9SyItm/yZATDlYdvyxys1KtPdIYgTJvZQgOHCmIzKidbPgSWfRqb7+a/ pj80NF2gNhL0R/VWifn+LQQZ84R5xt58OGGWjo+3D+odp7S/wjVs8eZsrWlPEz499fmGvX VCbc8RpyUdVXQBPNqFSLzqBuHeBaHovGpsgUsBJduUOyj5sQRaGr8X0SSb26Ng9O3Hg5hT suR9rfFoc4yvVPi1XacBLLueGGOth1AF6wyv61+CxDTGLbPjvVKkS2W/erdqSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668356; a=rsa-sha256; cv=none; b=jdFC0kFS4A2+who19oUK3DyhnPpXCgvRvw6rqI5lJjTvWybltCgVoGfkkR2yb0Y7UrlN/D eqZej5sCLkrbC0Ldetu1ykdXOFCQALBZ7BPN6Q+DIzrBvHNGRSLWL6vOWABomdPjavzkUv 82mxbfLImNmTbZRq9LKYCijEOsnX1NzaDBJZ+jTvZC3SygABStGgMcY518FgVL+PkQCbNN PvZFTNQXKZWCiH1zuE02hiD9wZPPNJ5kSNzjTESWEGRj5eOJAShnKxKBz+DJ5YxLOpXRgq bKnpWnPfPct7Hb0+01TsESxW4CAjBQUTm9hV7b4xK5kkqp/N/CO7En2IwKu+Dg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLF02smCzpXq; Wed, 23 Oct 2024 07:25: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 49N7Pu41037130; Wed, 23 Oct 2024 07:25:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7Pu4f037127; Wed, 23 Oct 2024 07:25:56 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:25:56 GMT Message-Id: <202410230725.49N7Pu4f037127@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: acd0487a7f1f - stable/14 - hier(7): fix manpage location in ports List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: acd0487a7f1fdbb9c38e777e4b4653ecaf34231a Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=acd0487a7f1fdbb9c38e777e4b4653ecaf34231a commit acd0487a7f1fdbb9c38e777e4b4653ecaf34231a Author: Baptiste Daroussin AuthorDate: 2024-10-10 13:00:41 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:25:50 +0000 hier(7): fix manpage location in ports Since 2020-01-15 the ports manpage are locate in /usr/local/share/man (cherry picked from commit 0fbfb22a2d4d542e2f3d5d0eadd37e0d132a3884) --- share/man/man7/hier.7 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/man/man7/hier.7 b/share/man/man7/hier.7 index 7d164b5683d6..82600ad7b53e 100644 --- a/share/man/man7/hier.7 +++ b/share/man/man7/hier.7 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 18, 2024 +.Dd October 10, 2024 .Dt HIER 7 .Os .Sh NAME @@ -499,9 +499,6 @@ local 32-bit compatability libraries local utility data files .It Pa libexec/ utilities executed by local utilities -.It Pa man/ -local manual pages; see -.Xr man 1 .It Pa sbin/ local administration utilities .It Pa share/ @@ -512,6 +509,9 @@ local documentation articles, books, FAQ, and handbooks available from the .Fx project +.It Pa share/man/ +local manual pages; see +.Xr man 1 .El .Pp .It Pa obj/ From nobody Wed Oct 23 07:25:57 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYLF16lSJz5ZxCP; Wed, 23 Oct 2024 07:25:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYLF14FQyz49CG; Wed, 23 Oct 2024 07:25:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wYueOi4dTv7UF1B1HKy+xsSmInnuUaZn5swKPb0xW44=; b=KaTZ/fNqrXiBQVpRQ5+En9M3EX1D6Ewu2B7FqhKT9MjlMR1z5t5z9ZE58sJEybk1C6pZ9f 70459d+6xlAg1cwgLV6ie6KGNVA46oD0MCbdwmbUFR3jRbFr42N+FAZWHyTIl4e/wE08E3 KQHJeZxDfrMm4vmlJbRUahRhfZPstYN5f5FI1NmMBhpjKvRzX0xyV/39Yt3PFmxUKphAP1 hpX2aZIDo1ZRDBf3AjFypwyyhbUUilll/7M3i3O2gLYZQr8bMoRIiQ4FGYmUnlKqGoY54S IVVKlBUEvPe8p+EJze3xo3roYVBlRW5dmeeLeS3RGK6MD1wBJ1gwFR0gMhf22g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729668357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wYueOi4dTv7UF1B1HKy+xsSmInnuUaZn5swKPb0xW44=; b=h7LKM9MqYwpSLNZzjVs8GhjGQ984zTmHZkxhP/FRy9RSSOQYFhmHI5ofmT7TMMl8NoP66A 8qpjgZMg3kPlLCd7VJARsOheSeoi0wHFLD8KhWgKCFa7MrjjnI2eY/3Q5L2BRUZqJ4J2UF 5fEh8FUoiexKRbblTw2/DC+x0Nm32bTN97WZ9O1HMyBrIaBCVthc77g4NVU+sTKpT6pbmz KjzhoRdo+Hue0VIlad+R/KXs0Twz5baiCctgKHhQme1PdYgM8LfkNLtwS2icDhSz5aafmb CyA3SmN//r2Ktv3wwHV+5AKifI1XeMcw1GMwRL9Fz4nSUCO8l8Tv/6h/ZWwG/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729668357; a=rsa-sha256; cv=none; b=jvdvzc3SC0PVrG62KC22z5TE8HYlzWZuP4ZOsoBWMCj+pMxIV5XWM9aaEV+hbe4LuuMlux xPydELV9z9N0ucCBSZEO9lo35Tm7nYEwXkF+QNPT7V7nFPXI9uqEXUJfPn7/rPYHDF66hJ HGi8PoHusZDaN6iYaIw1MHh8VWt2ClU/CmMcg9SpACbbBge2QsZNOCkEPMXRubzPAtKBWF WVr5u9KWxTKLA+xIQrIG/DN71Me6/uPLSs2o0VAM3KZPCxTpbtMfeNn++yCa+KgHPxCXwm Rj2p11HWCaRLsbHCGPSb9gjgjLLAYzz1A9M0Gr23ITTSLzl8Ebd5Df5uplmkTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYLF13sTCzpHQ; Wed, 23 Oct 2024 07:25: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 49N7PvtJ037183; Wed, 23 Oct 2024 07:25:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49N7PvwJ037180; Wed, 23 Oct 2024 07:25:57 GMT (envelope-from git) Date: Wed, 23 Oct 2024 07:25:57 GMT Message-Id: <202410230725.49N7PvwJ037180@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Baptiste Daroussin Subject: git: 6c1a174e4c0a - stable/14 - w(1): fix libxo output being locale dependant List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6c1a174e4c0a01a40aa1c06dfc07a37a31cabe33 Auto-Submitted: auto-generated The branch stable/14 has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=6c1a174e4c0a01a40aa1c06dfc07a37a31cabe33 commit 6c1a174e4c0a01a40aa1c06dfc07a37a31cabe33 Author: Baptiste Daroussin AuthorDate: 2024-10-14 07:37:46 +0000 Commit: Baptiste Daroussin CommitDate: 2024-10-23 07:25:50 +0000 w(1): fix libxo output being locale dependant by being locale dependant the json export is invalid in locales where the separator for float is a comma. The Json and the XML are invalid for login-time when days contains contains characters which are not unicode. Forcing locale to be C, makes this json and xml output valid and also identical accross locales, so reliable for parsers PR: 276304 Reported by: Vedran Miletic (cherry picked from commit bd490be57438a82c22d1274bc58d51142b63f4a0) --- usr.bin/w/w.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/usr.bin/w/w.c b/usr.bin/w/w.c index 93f17b0f4ae3..69ff8c33cbbf 100644 --- a/usr.bin/w/w.c +++ b/usr.bin/w/w.c @@ -144,14 +144,16 @@ main(int argc, char *argv[]) char buf[MAXHOSTNAMELEN], fn[MAXHOSTNAMELEN]; char *dot; - (void)setlocale(LC_ALL, ""); - use_ampm = (*nl_langinfo(T_FMT_AMPM) != '\0'); - use_comma = (*nl_langinfo(RADIXCHAR) != ','); argc = xo_parse_args(argc, argv); if (argc < 0) exit(1); + if (xo_get_style(NULL) == XO_STYLE_TEXT) { + setlocale(LC_ALL, ""); + } + use_ampm = (*nl_langinfo(T_FMT_AMPM) != '\0'); + use_comma = (*nl_langinfo(RADIXCHAR) != ','); /* Are we w(1) or uptime(1)? */ if (strcmp(basename(argv[0]), "uptime") == 0) { wcmd = 0; From nobody Wed Oct 23 18:05:26 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYcQt4vlbz5ZW47; Wed, 23 Oct 2024 18:05:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYcQt4JyWz57KR; Wed, 23 Oct 2024 18:05:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729706726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=se4nY/tZ+YpQAmn0jbcDbWoW+9f9vhQfV/U2ThY5O5E=; b=j/zfKLy/2DLGvPvm5OwgLs1OvruEj2VZEfFqDuGpoPb5kJ/Sq4Cq8wh74KUETA6iH+6myB 0nt7TDMYJnjE6NXNryku+kfQ99yBF6HFDHMpD4mTORHEyYi4BWAKpvYduK+dQStKP0g25f l94n0R1McSTqS8IGkGOKo/3gzECKB1C0PfKYJnKwGcLn9NABBcXHhfqPjj/hvcgXeS2F9r 8/IMH2XWnMGVdo7bsuU8fgmvwls7dy7sDiywLymZptjwWsZklOyBqLVBqFxHHvDPVCYSs/ dEAlVZCiC3JK80R9wJHFXj78pzjJfQwrIdotuRp33kMU5egM2mNZhxrxPMWPDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729706726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=se4nY/tZ+YpQAmn0jbcDbWoW+9f9vhQfV/U2ThY5O5E=; b=Yc4SfP9Z8x7qoy7XBvHyLssNQ8ZnMfVWBAVYohvdDVQ4mZKPrTdqZcOufGuJoLkj5iwbLM mwtT5xPBiqs1dKcQOV0MEa7/dQBpnaa6NxZkpw3+p7T2vsBN+TBG8LdhxjxLghz7kgfDnB Xg2xbRcNv5SIgW0354KMHGg5y0MzHvxRuTDFZbmoz/OzwGeKCdM+3mvfQ+AIVV+6SehDyJ xjTfXSFN0vT5bJKVnfwtDw4cvrrC9fsUdH8csbXsz6HemF7oimI9g98e5nEsiclOgaWoIT IIJl9nYNYE21kgbflbeB182mptCDWc37f+Tm17qGIKJVYpH3X3ew0YS4bg5fwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729706726; a=rsa-sha256; cv=none; b=YluUaOrkH7HjTj7XEKLk9VnCqlDeZQTY3L7eaG5353U76uR/e9QGM03axZRWVLYAocS5vK NRXLEGYWmRugiHfbUv9BWBXMakxFJBYXox09EXT7WaFiOGC1gcq/U78M4SvdOLzChh6jD4 dC9oN1p+/e6IJvrONoiHwnh/Mm9HtINJ2iz0LQ0nP4wNqmRLFNoWm4tf4ntkR6kz42X8XU UjDGHYe9uAh2xvaqc+NVg/LgRCbUF/44twofImf4fJsq2vx6dwZI2J71xDiaqosV0C2ykT i6CVKDiM0oU35918kBPz1+Vllg07dA9dnFKzuNZNX+Xu8dkDV+Tg7+Pg7JZnIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYcQt3wHxz17ww; Wed, 23 Oct 2024 18:05: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 49NI5QbO022241; Wed, 23 Oct 2024 18:05:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49NI5QLY022238; Wed, 23 Oct 2024 18:05:26 GMT (envelope-from git) Date: Wed, 23 Oct 2024 18:05:26 GMT Message-Id: <202410231805.49NI5QLY022238@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 5ae76ff5138e - stable/14 - la57: explain how the trampoline works List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5ae76ff5138e2ecbd2d740d75337d930360a6c6b Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5ae76ff5138e2ecbd2d740d75337d930360a6c6b commit 5ae76ff5138e2ecbd2d740d75337d930360a6c6b Author: Konstantin Belousov AuthorDate: 2024-10-20 15:47:50 +0000 Commit: Konstantin Belousov CommitDate: 2024-10-23 18:04:58 +0000 la57: explain how the trampoline works (cherry picked from commit 6244b9dc4a03e87246bad1c94067dfe54ff4cdbc) --- sys/amd64/amd64/locore.S | 61 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 41 insertions(+), 20 deletions(-) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index 1ed9085e655c..d39503adadf0 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -89,15 +89,36 @@ ENTRY(btext) 0: hlt jmp 0b -/* la57_trampoline(%rdi pml5) */ +/* + * void la57_trampoline(%rdi pml5) + * + * Entered in 4-level paging long mode on AP, hopefully returns alive in + * 5-level paging mode. The parameter is a pointer to a 5-level page + * table root. The passed 5-level page table, and the current 4-level page + * table, both must map the trampoline code page 1:1 physical, below 4G. + * The trampoline must be PIC because it is copied from kernel text into + * this page. + * + * The current paging level cannot be changed while paging is enabled, and + * paging cannot be disabled while in long mode. As consequence, code + * switches into the compat mode, then disables paging to descend into + * protected mode. There, the paging level bit CR4.LA57 can be changed, + * and code directly jumps back into long mode. + * + * Falling into the protected mode requires single-purpose GDT entries, + * which are provided by the private GDT. It is the caller's responsibility + * to + * - restore the GDT and %gsbase after the call + * - reset IDT back to long mode. + */ ENTRY(la57_trampoline) - movq %rsp,lst(%rip) - movq %rbx,lst+8(%rip) - movq %rbp,lst+0x10(%rip) + movq %rsp,lst(%rip) /* save registers into memeory */ + movq %rbx,lst+8(%rip) /* upper halves are not saved .. */ + movq %rbp,lst+0x10(%rip) /* by 64->32->64 switch */ movq %cr4,%rax - orq $CR4_LA57,%rax + orq $CR4_LA57,%rax /* 5-lvl %cr4 */ movq %rax,lst+0x18(%rip) - leaq la57_trampoline_end(%rip),%rsp + leaq la57_trampoline_end(%rip),%rsp /* priv stack */ movq %cr0,%rbp lgdtq la57_trampoline_gdt_desc(%rip) @@ -111,45 +132,45 @@ ENTRY(la57_trampoline) .code32 l1: movl $(3<<3),%eax - movl %eax,%ss + movl %eax,%ss /* 32bit paged, priv gdt and stack */ movl %cr4,%eax - andl $~(CR4_PGE | CR4_PCIDE),%eax + andl $~(CR4_PGE | CR4_PCIDE),%eax /* clear sensitive paging ctrls */ movl %eax,%cr4 movl %ebp,%eax - andl $~CR0_PG,%eax + andl $~CR0_PG,%eax /* protected mode */ movl %eax,%cr0 - movl $MSR_EFER,%ecx - rdmsr + movl $MSR_EFER,%ecx /* disable long mode bit */ + rdmsr /* to safer tweaking LA57 */ andl $~EFER_LME,%eax wrmsr - movl %cr4,%eax + movl %cr4,%eax /* finally safe to switch bit */ orl $CR4_LA57,%eax movl %eax,%cr4 - movl %edi,%cr3 + movl %edi,%cr3 /* and load the 5-level pgtable root */ rdmsr orl $EFER_LME,%eax - wrmsr + wrmsr /* prepare for ... */ - movl %ebp,%cr0 - jmp 1f + movl %ebp,%cr0 /* and jump back directly into long */ + jmp 1f /* mode from protected by enabling pg */ -1: pushl $(1<<3) +1: pushl $(1<<3) /* reload %cs */ pushl %ebx lretl .code64 -l2: movq lst(%rip),%rsp +l2: movq lst(%rip),%rsp /* back on C stack */ movq lst+8(%rip),%rbx movq lst+0x10(%rip),%rbp movq lst+0x18(%rip),%rax - movq %rax,%cr4 - retq + movq %rax,%cr4 /* re-enable paging controls */ + retq /* back to C */ .p2align 4,0 lst: .quad 0,0,0,0 ENTRY(la57_trampoline_gdt_desc) From nobody Thu Oct 24 01:07:32 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYnnw29hdz5Zsg9; Thu, 24 Oct 2024 01:07: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYnnw1dPqz4tgp; Thu, 24 Oct 2024 01:07:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729732052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ecQd4BdCtG8uCxJy4FkWHrr9Y5mNAoDNeBlOPqKgy/4=; b=yti7JFMs47E/WCzcbj9CGR83kRuugoVyO0VzRgHwOTonsAkenYegM+yKnZLDjsL0Tn9i3P 5bjTKHDH2h4OrshJ8kwAmSqESLwL/B4WM0elTI7XkDfXCxjCA3W3vUy56ujap40fZs9GoD KRmC0NGiVEduzERzClRrxhhh5PFpjPPzEz607wvVnx1+TMS7XroWKjRohr2NQtS2/WV1cJ 910iOGSIFeq9AsnT8QdN9eKaXiDWc3vNV0zkR6Y8VGGaclXmeZprAhO8YlcMgEzfkrDXOZ pxwHvLSaQnVqHUJ2xX57PRK+U14njlGBe9Hciu+a2Jo2zcREdNj3CcENOCkYwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729732052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ecQd4BdCtG8uCxJy4FkWHrr9Y5mNAoDNeBlOPqKgy/4=; b=Llba4hajWBSN3v7d7UVuqmbSqpLXhYp2yv4u2GyyC7v5ZZ9BYfASoYJLPKc54hUaOhVz+t RtbWV/8y7yZ+4757P8PVrc0aotERrpl8U0mfJWibuBPtYItrh9hRM4lHbG9x6+kmQZ0HiH gslfRL9knA6SGLwTYui3p/tUBjdYavPXilKftzsxNrb1vuwqqT/mfnlQa0+FWQNch33DAD ch0My+wWz7XGqYMR3i/k/bxDq15/LULmBW4Mwd4Vk/WpRsIwmkG6LwwxNoGg7KUhVrEKb+ 7nPbWDWLKvEI9HmWHBm2pya/g54ahXv78ZxuBY+LRvAv1wrikI6boWhwcXqgDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729732052; a=rsa-sha256; cv=none; b=jCnonBG2r3/Nmss6mJRzPs72lzwpml1PbsJ2Of2la1iWx+qUu+F9Glt3kJZeOOgY41YgZ8 0qPf2HjR2NcDNgCOkuEJhvxe+BFtieQTFIJODztpHT7e++dqxF+X1t2I7YNK70FerCYn7b upBMG6Lf0hlbvAtJOd3FvJ1dt9Bl/1JfOgehMOR02DygcyJw+DWT98CFdfagVaHp2/o25k aTz3rnag8YX31CfrfeG1PsUtvp9F9lmEQG2ouwLGrKRou1uHJjgOZJVUSkXtueKdPUELV0 GVIHQ3B+m/U2Txb2c9+Gjj20m543GPW/nKO0cqpmps1qyhmOX+YfLKiRdIXg7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYnnw1FM8zLQB; Thu, 24 Oct 2024 01:07: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 49O17Wc7001732; Thu, 24 Oct 2024 01:07:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O17WFB001729; Thu, 24 Oct 2024 01:07:32 GMT (envelope-from git) Date: Thu, 24 Oct 2024 01:07:32 GMT Message-Id: <202410240107.49O17WFB001729@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: f6e1add0c9d3 - stable/14 - nfsd: Fix handling of credentials with cr_ngroups == 0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f6e1add0c9d3a3629f6968cb02a031c1d78b24c5 Auto-Submitted: auto-generated The branch stable/14 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=f6e1add0c9d3a3629f6968cb02a031c1d78b24c5 commit f6e1add0c9d3a3629f6968cb02a031c1d78b24c5 Author: Rick Macklem AuthorDate: 2024-10-21 22:48:39 +0000 Commit: Rick Macklem CommitDate: 2024-10-24 01:06:26 +0000 nfsd: Fix handling of credentials with cr_ngroups == 0 There has been a documented case in the exports(5) man page forever, which specifies that the -maproot or -mapall may have a single user entry, followed by a ':'. This case is defined as specifying no groups (aka cr_ngroups == 0). This patch fixes the NFS server so that it handles this case correctly. After MFC'ng this patch to stable/13 and stable/14, I propose that this unusual case be deprecated and no longer allowed in FreeBSD15. At that point, this patch can be reverted. (cherry picked from commit caa309c8811d62a24cd07e3a1f6e9095eaf10c90) --- sys/fs/nfsserver/nfs_nfsdsubs.c | 5 ++--- sys/kern/kern_prot.c | 7 +++++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sys/fs/nfsserver/nfs_nfsdsubs.c b/sys/fs/nfsserver/nfs_nfsdsubs.c index d80826993f23..2fd877775c79 100644 --- a/sys/fs/nfsserver/nfs_nfsdsubs.c +++ b/sys/fs/nfsserver/nfs_nfsdsubs.c @@ -1620,7 +1620,7 @@ nfsrv_checkuidgid(struct nfsrv_descript *nd, struct nfsvattr *nvap) if (nd->nd_cred->cr_uid == 0) goto out; if ((NFSVNO_ISSETUID(nvap) && nvap->na_uid != nd->nd_cred->cr_uid) || - (NFSVNO_ISSETGID(nvap) && nvap->na_gid != nd->nd_cred->cr_gid && + (NFSVNO_ISSETGID(nvap) && !groupmember(nvap->na_gid, nd->nd_cred))) error = NFSERR_PERM; @@ -1679,8 +1679,7 @@ nfsrv_fixattr(struct nfsrv_descript *nd, vnode_t vp, } if (NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_OWNERGROUP) && NFSVNO_ISSETGID(nvap)) { - if (nvap->na_gid == nd->nd_cred->cr_gid || - groupmember(nvap->na_gid, nd->nd_cred)) { + if (groupmember(nvap->na_gid, nd->nd_cred)) { nd->nd_cred->cr_uid = 0; nva.na_gid = nvap->na_gid; change++; diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c index 7d28475b5db8..d7de7deb2c0c 100644 --- a/sys/kern/kern_prot.c +++ b/sys/kern/kern_prot.c @@ -1310,6 +1310,13 @@ bool groupmember(gid_t gid, struct ucred *cred) { + /* + * The nfsd server can use a credential with zero groups in it + * when certain mapped export credentials are specified via exports(5). + */ + if (cred->cr_ngroups == 0) + return (false); + if (gid == cred->cr_groups[0]) return (true); From nobody Thu Oct 24 01:14:22 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYnxp4mnHz5ZtD1; Thu, 24 Oct 2024 01:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYnxp42nqz4vWt; Thu, 24 Oct 2024 01:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729732462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vQTKpkiQyPlbboTfhV7Z2+1LMEtZCCM1pXL4Yqxl6LI=; b=DJbhFvMD6t4+QSdrLY9GFrq0iZUvS2VMe2KJ1aElXzRx3kLK0G3pjS9Kr9V6BWrku6MkBw Yki0tBtM+PwYORdEgBOBhRhymWvuB+FTVKwEiilfU6jb4lPxxUj4WVMyc8s7mO4qIed/Nk 0bdyB4xHuDHm2iOJgBL39AsfaK7Y5wY2J46ybKIrI1c69WIJJNSaPNMHORH8/jto2hgRrd bSv04dN4gnlHF0vjx8xdyivUZ1on9sFToFeBxXMYcBb4sbf5KXkVijulUqS15dOigzw33z SWvN2rEOp0+ic01+dcyLcJJsCEhIo4+66ysO6rNTWoVLesUYCCk3yb4hp2ELVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729732462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vQTKpkiQyPlbboTfhV7Z2+1LMEtZCCM1pXL4Yqxl6LI=; b=h61ev12aGVrQ/UiYrK4njqoXzLlUSF2vB33zUUGM+i85OwbZvyaaHExpF5JvVK6BeJxK0Y 4zk6CPE79sD2YKKwUojFKb/7Iww34GpFhNn9SaR3/YykHGHB5H9UZ9n1UAVWDN8KCye2pm cEvwEafvadXUbKxR4/S2Lq1IH5mep0PP8ieHxwGLpbZoRMDMnBxW25lV4Pyuc5AI4VEvLb /UDLkOJ0iB6rYYQYbkExr04/DwLhy8LcRKJ5hVsqqpN/zCdxG4cmr8aCkonnd74candpfv O2lyD1B8fEJTw8h3cLVEPcfiSzQDtQlqS5INW4H7YIi9WlI0A1SI9fd0dyN7qw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729732462; a=rsa-sha256; cv=none; b=XWXOwtu/DOP4g5Z+IAT34jhvx74eF/5HigJb5G3zQWUzdIUnyCWLlvrnWYQU3GnsxIwElV BF45W9o03+B/P00t2ngP7yvEpzz2fFY8cPoITCiUiAbpKGhVqyFTSDIXjTrNNFUABeO3qo 3kSh55TPGCftKPKLIVaz2Rq8b47fAearShtHluh53SWme5VNskjCuZmLQt8d4QBq9NQLRt MOSvoxdIQnAwU2FDDT3BuT4jRfXVcTtLVs/PATTOUE4+PYyBHzZFaQQD2lGMwEHq9cr9Bo HIqF1M88CyoT8oAI/xDveKs+s5cw8H1uEMqYEOe1UQuVG4FRQKhIxLbsKNxRFg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYnxp3dzrzLd2; Thu, 24 Oct 2024 01:14: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 49O1EMPR018872; Thu, 24 Oct 2024 01:14:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O1EMwr018869; Thu, 24 Oct 2024 01:14:22 GMT (envelope-from git) Date: Thu, 24 Oct 2024 01:14:22 GMT Message-Id: <202410240114.49O1EMwr018869@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: fcd20d3181a7 - stable/13 - nfsd: Fix handling of credentials with cr_ngroups == 0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fcd20d3181a7df9ebbb8d333db594a210194959f Auto-Submitted: auto-generated The branch stable/13 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=fcd20d3181a7df9ebbb8d333db594a210194959f commit fcd20d3181a7df9ebbb8d333db594a210194959f Author: Rick Macklem AuthorDate: 2024-10-21 22:48:39 +0000 Commit: Rick Macklem CommitDate: 2024-10-24 01:13:24 +0000 nfsd: Fix handling of credentials with cr_ngroups == 0 There has been a documented case in the exports(5) man page forever, which specifies that the -maproot or -mapall may have a single user entry, followed by a ':'. This case is defined as specifying no groups (aka cr_ngroups == 0). This patch fixes the NFS server so that it handles this case correctly. After MFC'ng this patch to stable/13 and stable/14, I propose that this unusual case be deprecated and no longer allowed in FreeBSD15. At that point, this patch can be reverted. (cherry picked from commit caa309c8811d62a24cd07e3a1f6e9095eaf10c90) --- sys/fs/nfsserver/nfs_nfsdsubs.c | 5 ++--- sys/kern/kern_prot.c | 7 +++++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sys/fs/nfsserver/nfs_nfsdsubs.c b/sys/fs/nfsserver/nfs_nfsdsubs.c index 0d7e4c73fe69..fa0222bbf3b2 100644 --- a/sys/fs/nfsserver/nfs_nfsdsubs.c +++ b/sys/fs/nfsserver/nfs_nfsdsubs.c @@ -1623,7 +1623,7 @@ nfsrv_checkuidgid(struct nfsrv_descript *nd, struct nfsvattr *nvap) if (nd->nd_cred->cr_uid == 0) goto out; if ((NFSVNO_ISSETUID(nvap) && nvap->na_uid != nd->nd_cred->cr_uid) || - (NFSVNO_ISSETGID(nvap) && nvap->na_gid != nd->nd_cred->cr_gid && + (NFSVNO_ISSETGID(nvap) && !groupmember(nvap->na_gid, nd->nd_cred))) error = NFSERR_PERM; @@ -1682,8 +1682,7 @@ nfsrv_fixattr(struct nfsrv_descript *nd, vnode_t vp, } if (NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_OWNERGROUP) && NFSVNO_ISSETGID(nvap)) { - if (nvap->na_gid == nd->nd_cred->cr_gid || - groupmember(nvap->na_gid, nd->nd_cred)) { + if (groupmember(nvap->na_gid, nd->nd_cred)) { nd->nd_cred->cr_uid = 0; nva.na_gid = nvap->na_gid; change++; diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c index 5dea43971e3d..abe989045fb8 100644 --- a/sys/kern/kern_prot.c +++ b/sys/kern/kern_prot.c @@ -1306,6 +1306,13 @@ int groupmember(gid_t gid, struct ucred *cred) { + /* + * The nfsd server can use a credential with zero groups in it + * when certain mapped export credentials are specified via exports(5). + */ + if (cred->cr_ngroups == 0) + return (0); + if (cred->cr_groups[0] == gid) return (1); From nobody Thu Oct 24 02:14:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqGl2WB8z5ZwbG; Thu, 24 Oct 2024 02:14:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqGl1blmz42VS; Thu, 24 Oct 2024 02:14:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736047; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=frf+DupAL0cJLrCfqhF2D/882DkXuRSK1lkN7LZ2J68=; b=CheU8Bwa12IhTVMQ2CHJV11dVvEFXVoFZteZXzNrjt7MoJypiei3KpsVDlJVYt28nWNn51 qobc1GUOY/qecyddtJCTzRl5tw4DxdnCvWF0wqPtdw5M2RFYLmhCEI4HbsCiY0Q4lTHzfC qdgq2zsRAoWWnL7zfh28SuiIH3/3WwqCImGnz45Yih0qCpi2naQYY+nee24YmYl14bf6Jh OmkrPOrAqI7AWSBpn0BS2lRvZDndB9C0pokegLv224tyFEykAMQpMzZpsf2x8tTHmPqk+3 SWG6ICa9YMyjlGJzRnXYzUbHHkhMbncY4C8q6pMv7XfxlgKQKTDE/6vNw8YaIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736047; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=frf+DupAL0cJLrCfqhF2D/882DkXuRSK1lkN7LZ2J68=; b=AXPR5LvLJhcVfohfTgDTr4htgFkrYIw1lW1GsQDZ+dLf39tX8MLnSD3Udb8Fk2BWEnNsKn XssmHpA4YSIWkL75SaehtQ+EQwwBqwyliObB8AgeKzmarGYR7JwfJUP6Dc8mWK7UquWC60 OUSTTTG65U0SRPsUs1iQyZEmI+Tw7g4JEDOedTB4fNe5NIkAzE7YRI7qKhXsb/rmIPEpRk HIwDWoPAT+jNfv6Yh4UCmzlL8+CHpLIeMGw2U3YGYojcOqLckMfveYj7LQXZ9xk6aFbYUE PACFsIU8PEzLOOANkKlw30NTyjX2eWAKfEiSxuPdkBCa+mv6eKPPHMZuhccb8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729736047; a=rsa-sha256; cv=none; b=kvU1F3ZI2YezyInyH/GQy+Xb4pDLoUnVA2xJTCr+n5dfK/A/jag5UZo2QVo5DYzhxDH9aM S3gDgKfyqwHofAnn6byGuMgY8wrKi2MHx/kVwEbmY5i9MCJNd0VjI/89foCBUvxpgK4Mc0 XDIrM50SCi85yXxrsiOUu2zs7vBGK7mF1Uv7bE572JMn3TKl2SDzNR5yg0Ekc80DqK83OX 9Sj/4GYGty6TXWVEyngAMGEVVLnSwc/RZg5wtM+hX5D57/hLKsE76niHGmTwAw1pBGC0/i on9o4zK2IKOfFITcBaVRHBZ9TL1sZp+jmwg5v0t72SrlYIyL0mJ1noXOv0eybg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqGl1CfDzNXZ; Thu, 24 Oct 2024 02:14: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 49O2E7fp029752; Thu, 24 Oct 2024 02:14:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2E7FS029749; Thu, 24 Oct 2024 02:14:07 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:14:07 GMT Message-Id: <202410240214.49O2E7FS029749@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Justin Hibbits Subject: git: 4f55ea6b5926 - stable/14 - loader/powerpc: Add some CAS support for newer POWER CPUs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4f55ea6b592647ac8718166c0053fac048cde602 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=4f55ea6b592647ac8718166c0053fac048cde602 commit 4f55ea6b592647ac8718166c0053fac048cde602 Author: Justin Hibbits AuthorDate: 2024-10-11 21:01:15 +0000 Commit: Justin Hibbits CommitDate: 2024-10-24 02:07:20 +0000 loader/powerpc: Add some CAS support for newer POWER CPUs * Add PVR bits for POWER10 and POWER11 * Initialize the `err` outvar, in case it's not touched on success by the hypervisor, to prevent spurious errors. (cherry picked from commit f2e62e601304cea927bbeea70c484030b8e9fe45) --- stand/powerpc/ofw/cas.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/stand/powerpc/ofw/cas.c b/stand/powerpc/ofw/cas.c index b112aae67d85..45fd4d8d567f 100644 --- a/stand/powerpc/ofw/cas.c +++ b/stand/powerpc/ofw/cas.c @@ -40,10 +40,13 @@ #define PVR_CPU_P8NVL 0x004c0000 #define PVR_CPU_P8 0x004d0000 #define PVR_CPU_P9 0x004e0000 +#define PVR_CPU_P10 0x00800000 +#define PVR_CPU_P11 0x00820000 #define PVR_CPU_MASK 0xffff0000 #define PVR_ISA_207 0x0f000004 #define PVR_ISA_300 0x0f000005 +#define PVR_ISA_31 0x0f000006 #define PVR_ISA_MASK 0xffffffff /* loader version of kernel's CPU_MAXSIZE */ @@ -122,7 +125,7 @@ struct opt_vec5 { } __packed; static struct ibm_arch_vec { - struct pvr pvr_list[7]; + struct pvr pvr_list[10]; uint8_t num_opts; struct opt_vec_ignore vec1; struct opt_vec_ignore vec2; @@ -135,8 +138,11 @@ static struct ibm_arch_vec { { htobe32(PVR_CPU_MASK), htobe32(PVR_CPU_P8E) }, { htobe32(PVR_CPU_MASK), htobe32(PVR_CPU_P8NVL) }, { htobe32(PVR_CPU_MASK), htobe32(PVR_CPU_P9) }, + { htobe32(PVR_CPU_MASK), htobe32(PVR_CPU_P10) }, + { htobe32(PVR_CPU_MASK), htobe32(PVR_CPU_P11) }, { htobe32(PVR_ISA_MASK), htobe32(PVR_ISA_207) }, { htobe32(PVR_ISA_MASK), htobe32(PVR_ISA_300) }, + { htobe32(PVR_ISA_MASK), htobe32(PVR_ISA_31) }, { 0, 0xffffffffu } /* terminator */ }, 4, /* num_opts (4 actually means 5 option vectors) */ @@ -185,7 +191,7 @@ ppc64_cas(void) { phandle_t pkg; ihandle_t inst; - cell_t err; + cell_t err = 0; uint8_t buf[16], idx, val; int i, len, rc, radix_mmu; const char *var; From nobody Thu Oct 24 02:14:08 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqGm4Hsmz5ZwbH; Thu, 24 Oct 2024 02:14:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqGm2xjbz42Pk; Thu, 24 Oct 2024 02:14:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oigBcfRQ0TVwLGX8GWi3L5KzQ25eJpIk/gDXPH80bHs=; b=YFQYZ9Jxwjd+bS+6J+fP7JcHZ8wyNv0mOLJedt0EC0Qe8gXeOrKasImk7+G7/7Tsmsf3nV L50omwkElEbZiGLZQA34ZUnyVz3wPcbp1hKZynjSDrjKStFwB8DFmtZGjSLcbEA7p5WVJl aoq/vzViob9YIKiPOj8hwVL+xcha+flPoFtwBVGDbl7noMWDpErlhPJC8+qBsSxDnqMQZs /WEHZFOyVGQuDMGsId5MGPxJ9BBjZX0wORz+mujTNcVJDFjlz1ckUxF+ogKcWEYvyJbvEM bliCsNGx3DveAvClpGYPNrA5jVTE8Pz7T9oDc5SrGZBOBLcxqAUFsDHP4UwoZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oigBcfRQ0TVwLGX8GWi3L5KzQ25eJpIk/gDXPH80bHs=; b=Ugw/p4OV4yByYo/06iC555yKlIstjqboOJQ0aajYRgMT71Jpfv1IZwOzDLFvqIpjwxakPC 0h5Eqt2C/hCc7h0kDZuixGfzQpZPVqya4dHjdKvCTe9etHO0Nai48sI3N9RSw6c/CZsYCH We+VYf74yu0CwRw7spP8aEbfFFqT38TntQPV+ZGw6CmiuP3iveACpoU/fkXJxtkH5TnEDG iAwomtwIrGY5XrR3hblaRs/PP3AYpDLgkaEX0JIs1OlPgcRIoeX3ZwTHb4JC/SSnfcCxqQ EoOjOKz9KqJWmYont57egEQXMAUJc1h4mxV2TQjfEJ0ixvxmZWX0zl1mLfoBZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729736048; a=rsa-sha256; cv=none; b=xt6JUpjPoIwx13tolPKxlhAPMn3QdqtgliPeizumJsdwbv+Sbx2lo8s1djxtlGVHtE0pNb RpbfPI7Q6xFGEFjFazFutsOrWmK5NivzOIZXW08vhS03of+GhVf1YEVanYZTjvkMUh1jKV S88Ip+eXvTqywqRc9EcGbMh3SVGSqttqBQOpz6fxbGH2Ijs4rdVbMcECBqeN2Av/2aN0Aj W6WW49vIm1QkDDbSMWZsxaNiWP9NxC/ft9g8HhHmJD3C/KgpUhaeeigGt3dPKgqn1dbzdu lDm8AXfpHlzga5nJ7IFpRlJtuWN7DkXzK0L35bTKzaq43TQAwoAS2GER84yMTg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqGm2Xm3zNXb; Thu, 24 Oct 2024 02:14: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 49O2E8E3029807; Thu, 24 Oct 2024 02:14:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2E8ss029804; Thu, 24 Oct 2024 02:14:08 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:14:08 GMT Message-Id: <202410240214.49O2E8ss029804@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Justin Hibbits Subject: git: f9f006df1535 - stable/14 - powerpc: Add nominal support for POWER10 and POWER11 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f9f006df1535dfcaa4764c3c4a67f66a05c7db7f Auto-Submitted: auto-generated The branch stable/14 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=f9f006df1535dfcaa4764c3c4a67f66a05c7db7f commit f9f006df1535dfcaa4764c3c4a67f66a05c7db7f Author: Justin Hibbits AuthorDate: 2024-10-11 21:03:12 +0000 Commit: Justin Hibbits CommitDate: 2024-10-24 02:07:20 +0000 powerpc: Add nominal support for POWER10 and POWER11 (cherry picked from commit 1e434da3b065ef96b389e5e0b604ae05a51e794e) --- sys/powerpc/include/cpu.h | 2 ++ sys/powerpc/include/spr.h | 2 ++ sys/powerpc/powerpc/cpu.c | 18 ++++++++++++++++++ 3 files changed, 22 insertions(+) diff --git a/sys/powerpc/include/cpu.h b/sys/powerpc/include/cpu.h index 02ff42877f0e..35b32566484c 100644 --- a/sys/powerpc/include/cpu.h +++ b/sys/powerpc/include/cpu.h @@ -90,6 +90,8 @@ extern u_long cpu_features2; #define PPC_FEATURE2_DARN 0x00200000 #define PPC_FEATURE2_SCV 0x00100000 #define PPC_FEATURE2_HTM_NOSUSPEND 0x00080000 +#define PPC_FEATURE2_ARCH_3_1 0x00040000 +#define PPC_FEATURE2_MMA 0x00020000 #define PPC_FEATURE_BITMASK \ "\20" \ diff --git a/sys/powerpc/include/spr.h b/sys/powerpc/include/spr.h index 751a9e8184b6..5bb3858b0fb5 100644 --- a/sys/powerpc/include/spr.h +++ b/sys/powerpc/include/spr.h @@ -220,7 +220,9 @@ #define IBMPOWER9 0x004e #define MPC860 0x0050 #define IBMCELLBE 0x0070 +#define IBMPOWER10 0x0080 #define MPC8240 0x0081 +#define IBMPOWER11 0x0082 #define PA6T 0x0090 #define IBM405GP 0x4011 #define IBM405L 0x4161 diff --git a/sys/powerpc/powerpc/cpu.c b/sys/powerpc/powerpc/cpu.c index 19907e3973e7..f73ed25c8924 100644 --- a/sys/powerpc/powerpc/cpu.c +++ b/sys/powerpc/powerpc/cpu.c @@ -192,6 +192,24 @@ static const struct cputab models[] = { PPC_FEATURE2_ISEL | PPC_FEATURE2_TAR | PPC_FEATURE2_HAS_VEC_CRYPTO | PPC_FEATURE2_ARCH_3_00 | PPC_FEATURE2_HAS_IEEE128 | PPC_FEATURE2_DARN, cpu_powerx_setup }, + { "IBM POWER10", IBMPOWER10, REVFMT_MAJMIN, + PPC_FEATURE_64 | PPC_FEATURE_HAS_ALTIVEC | PPC_FEATURE_HAS_FPU | + PPC_FEATURE_SMT | PPC_FEATURE_ICACHE_SNOOP | PPC_FEATURE_ARCH_2_05 | + PPC_FEATURE_ARCH_2_06 | PPC_FEATURE_HAS_VSX | PPC_FEATURE_TRUE_LE, + PPC_FEATURE2_ARCH_2_07 | PPC_FEATURE2_DSCR | PPC_FEATURE2_EBB | + PPC_FEATURE2_ISEL | PPC_FEATURE2_TAR | PPC_FEATURE2_HAS_VEC_CRYPTO | + PPC_FEATURE2_ARCH_3_00 | PPC_FEATURE2_HAS_IEEE128 | + PPC_FEATURE2_DARN | PPC_FEATURE2_ARCH_3_1 | PPC_FEATURE2_MMA, + cpu_powerx_setup }, + { "IBM POWER11", IBMPOWER11, REVFMT_MAJMIN, + PPC_FEATURE_64 | PPC_FEATURE_HAS_ALTIVEC | PPC_FEATURE_HAS_FPU | + PPC_FEATURE_SMT | PPC_FEATURE_ICACHE_SNOOP | PPC_FEATURE_ARCH_2_05 | + PPC_FEATURE_ARCH_2_06 | PPC_FEATURE_HAS_VSX | PPC_FEATURE_TRUE_LE, + PPC_FEATURE2_ARCH_2_07 | PPC_FEATURE2_DSCR | PPC_FEATURE2_EBB | + PPC_FEATURE2_ISEL | PPC_FEATURE2_TAR | PPC_FEATURE2_HAS_VEC_CRYPTO | + PPC_FEATURE2_ARCH_3_00 | PPC_FEATURE2_HAS_IEEE128 | + PPC_FEATURE2_DARN | PPC_FEATURE2_ARCH_3_1 | PPC_FEATURE2_MMA, + cpu_powerx_setup }, { "Motorola PowerPC 7400", MPC7400, REVFMT_MAJMIN, PPC_FEATURE_HAS_ALTIVEC | PPC_FEATURE_HAS_FPU, 0, cpu_6xx_setup }, { "Motorola PowerPC 7410", MPC7410, REVFMT_MAJMIN, From nobody Thu Oct 24 02:14:09 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqGn6Xqsz5ZwXw; Thu, 24 Oct 2024 02:14:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqGn3YRNz42dG; Thu, 24 Oct 2024 02:14:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736049; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MFdx4ABL7wirMOPvcERKTtCatOg9Hq8QlmoE0Lbx2Hw=; b=UIinYzll0ijQOyQe5rPJgZvoP88oUrdJj5LsknSzQtq+bLJKlTuhu+ek30cJrvBh8OLwXV gPcRIGi1prqMlzadT468qqPM8iXkS9QHCxXQCl/GUoI/e04/kYYrhqNTVf/R9pYEdU4YLM cWpoOn4R0J1dxwkRUj08elBsjRptQIBney1AGxUcGIY3zZ/pEFdObTyZEUR/sZZSzwpIv1 Z4sSrRClZDra8Cl5xzdPbaadh+pq0ZHEObTpPsUgfNIcxubH26/96pyih0vINLU3oiCIQs m/ndLIxZTspyQ6ycxnzKGePhB+T0STqnEVgEB+gZwFwefHjaDxNJx7RH8On6Pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729736049; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MFdx4ABL7wirMOPvcERKTtCatOg9Hq8QlmoE0Lbx2Hw=; b=ggdVv4hoMO8pIH8VA/qfgrUXY5GkUZnXl+zYuaL4+jRacITb/6f5qsiQxvTuh3oViUaZ7D jNJR/Sa5Gno0lZRW07J2nJl0rtDyb2sW3P763TcNkd4eqKRFK1UyKeM5Vm1ECr74TBQLzY 93TBnN/4CHHueIwrUyU+7XOl1+snSeCqRp5a0ZgbegohpIeFAW1fRiDld4UddyZpnbx3Vb Fd4sGmueYxGfuY/zAzhFJEl8a72zzWhlQQfzvYQoXEorCLFgoA69Xfs6CP7Z/fR/FTa3t7 pJdfIJwETvV9Q4jGn7Z2/xdSnxytCp+9pOf6ohfYLudatAUZiZ7We26zrtYP5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729736049; a=rsa-sha256; cv=none; b=SwAX51yP4t8sCH9SI/pINFQLSvV6vWtKkJqf1ZG5fWF0HhJrbXX58JB4dWvIFt7+lPUh/l fD2469xbQR/P3NhrhcBc4jbWTEUBqaY4gTBZfb/p2ZtEsWog+fsd+hxoW+sF2pc7qtilDt h15r40mBaJnZw/rUxbrLtiLJgBq0bag1O2x8L/sBRuAmlhIpVobKnSAjjmB0vMT+u2oIE4 zJUHt2vQ7mNAtNha1PAjCcSya6Hc5sbQhLYnGpqbDPydR/1Tnxo5VNywqxpAk/JrmyFdKf 80+2PPAFYtL/VCqKKujybq2p3CfUn1i4flP+d8TZb+ZbGJFINlgyGO2ftcSY8w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqGn38Q8zP1B; Thu, 24 Oct 2024 02:14:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49O2E9ku029848; Thu, 24 Oct 2024 02:14:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2E9e3029845; Thu, 24 Oct 2024 02:14:09 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:14:09 GMT Message-Id: <202410240214.49O2E9e3029845@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Justin Hibbits Subject: git: 8d455d3d0e9d - stable/14 - ps3: add elfv2 support List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8d455d3d0e9da2b9df1005a97a6bc94496096380 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=8d455d3d0e9da2b9df1005a97a6bc94496096380 commit 8d455d3d0e9da2b9df1005a97a6bc94496096380 Author: Chattrapat Sangmanee AuthorDate: 2024-09-09 08:38:28 +0000 Commit: Justin Hibbits CommitDate: 2024-10-24 02:08:00 +0000 ps3: add elfv2 support ps3 are broken since we moved to clang/elfv2. Fix this by updating the hypercall glue to the new ABI. Signed-off-by: Chattrapat Sangmanee Reviewed by: jhibbits MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1413 (cherry picked from commit 50a03971d3327f3ca5c2a1a96ec83c77b6a669c8) --- sys/powerpc/ps3/ps3-hv-asm.awk | 18 +- sys/powerpc/ps3/ps3-hvcall.S | 436 ++++++++++++++++++++--------------------- 2 files changed, 230 insertions(+), 224 deletions(-) diff --git a/sys/powerpc/ps3/ps3-hv-asm.awk b/sys/powerpc/ps3/ps3-hv-asm.awk index 91e114ba8e79..d3364a0c2bd7 100644 --- a/sys/powerpc/ps3/ps3-hv-asm.awk +++ b/sys/powerpc/ps3/ps3-hv-asm.awk @@ -12,6 +12,10 @@ BEGIN { } /HVCALL.*/ { + # Parameter save area + # 48 in elfv1, 32 in elfv2 + stack_offset = 32; + code = $2; ins = split($4, a, ",") outs = split($5, a, ",") @@ -19,7 +23,7 @@ BEGIN { printf("ASENTRY(%s)\n",$3); printf("\tmflr %%r0\n"); printf("\tstd %%r0,16(%%r1)\n"); - printf("\tstdu %%r1,-%d(%%r1)\n", 48+8*outs); + printf("\tstdu %%r1,-%d(%%r1)\n", stack_offset+8*outs); if ($4 == "UNUSED") ins = 0 @@ -27,10 +31,10 @@ BEGIN { # Save output reg addresses to the stack for (i = 0; i < outs; i++) { if (ins+i >= 8) { - printf("\tld %%r11,%d(%%r1)\n", 48+8*outs + 48 + 8*(i+ins)); - printf("\tstd %%r11,%d(%%r1)\n", 48+8*i); + printf("\tld %%r11,%d(%%r1)\n", stack_offset+8*outs + stack_offset + 8*(i+ins)); + printf("\tstd %%r11,%d(%%r1)\n", stack_offset+8*i); } else { - printf("\tstd %%r%d,%d(%%r1)\n", 3+ins+i, 48+8*i); + printf("\tstd %%r%d,%d(%%r1)\n", 3+ins+i, stack_offset+8*i); } } @@ -39,12 +43,14 @@ BEGIN { printf("\textsw %%r3,%%r3\n"); for (i = 0; i < outs; i++) { - printf("\tld %%r11,%d(%%r1)\n", 48+8*i); + printf("\tld %%r11,%d(%%r1)\n", stack_offset+8*i); printf("\tstd %%r%d,0(%%r11)\n", 4+i); } printf("\tld %%r1,0(%%r1)\n"); printf("\tld %%r0,16(%%r1)\n"); printf("\tmtlr %%r0\n"); - printf("\tblr\n\n"); + printf("\tblr\n"); + + printf("ASEND(%s)\n\n",$3); } diff --git a/sys/powerpc/ps3/ps3-hvcall.S b/sys/powerpc/ps3/ps3-hvcall.S index 99e503e2dcff..59dfe639ee61 100644 --- a/sys/powerpc/ps3/ps3-hvcall.S +++ b/sys/powerpc/ps3/ps3-hvcall.S @@ -1,4 +1,3 @@ - #include #define hc .long 0x44000022 @@ -6,15 +5,15 @@ ASENTRY(lv1_allocate_memory) mflr %r0 std %r0,16(%r1) - stdu %r1,-64(%r1) - std %r7,48(%r1) - std %r8,56(%r1) + stdu %r1,-48(%r1) + std %r7,32(%r1) + std %r8,40(%r1) li %r11,0 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -25,7 +24,7 @@ ASEND(lv1_allocate_memory) ASENTRY(lv1_write_htab_entry) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,1 hc extsw %r3,%r3 @@ -38,15 +37,15 @@ ASEND(lv1_write_htab_entry) ASENTRY(lv1_construct_virtual_address_space) mflr %r0 std %r0,16(%r1) - stdu %r1,-64(%r1) - std %r6,48(%r1) - std %r7,56(%r1) + stdu %r1,-48(%r1) + std %r6,32(%r1) + std %r7,40(%r1) li %r11,2 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -57,12 +56,12 @@ ASEND(lv1_construct_virtual_address_space) ASENTRY(lv1_get_virtual_address_space_id_of_ppe) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r4,48(%r1) + stdu %r1,-40(%r1) + std %r4,32(%r1) li %r11,4 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -73,24 +72,24 @@ ASEND(lv1_get_virtual_address_space_id_of_ppe) ASENTRY(lv1_query_logical_partition_address_region_info) mflr %r0 std %r0,16(%r1) - stdu %r1,-88(%r1) - std %r4,48(%r1) - std %r5,56(%r1) - std %r6,64(%r1) - std %r7,72(%r1) - std %r8,80(%r1) + stdu %r1,-72(%r1) + std %r4,32(%r1) + std %r5,40(%r1) + std %r6,48(%r1) + std %r7,56(%r1) + std %r8,64(%r1) li %r11,6 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) - ld %r11,64(%r1) + ld %r11,48(%r1) std %r6,0(%r11) - ld %r11,72(%r1) + ld %r11,56(%r1) std %r7,0(%r11) - ld %r11,80(%r1) + ld %r11,64(%r1) std %r8,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -101,7 +100,7 @@ ASEND(lv1_query_logical_partition_address_region_info) ASENTRY(lv1_select_virtual_address_space) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,7 hc extsw %r3,%r3 @@ -114,7 +113,7 @@ ASEND(lv1_select_virtual_address_space) ASENTRY(lv1_pause) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,9 hc extsw %r3,%r3 @@ -127,7 +126,7 @@ ASEND(lv1_pause) ASENTRY(lv1_destruct_virtual_address_space) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,10 hc extsw %r3,%r3 @@ -140,7 +139,7 @@ ASEND(lv1_destruct_virtual_address_space) ASENTRY(lv1_configure_irq_state_bitmap) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,11 hc extsw %r3,%r3 @@ -153,7 +152,7 @@ ASEND(lv1_configure_irq_state_bitmap) ASENTRY(lv1_connect_irq_plug_ext) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,12 hc extsw %r3,%r3 @@ -166,7 +165,7 @@ ASEND(lv1_connect_irq_plug_ext) ASENTRY(lv1_release_memory) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,13 hc extsw %r3,%r3 @@ -179,7 +178,7 @@ ASEND(lv1_release_memory) ASENTRY(lv1_put_iopte) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,15 hc extsw %r3,%r3 @@ -192,7 +191,7 @@ ASEND(lv1_put_iopte) ASENTRY(lv1_disconnect_irq_plug_ext) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,17 hc extsw %r3,%r3 @@ -205,12 +204,12 @@ ASEND(lv1_disconnect_irq_plug_ext) ASENTRY(lv1_construct_event_receive_port) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r3,48(%r1) + stdu %r1,-40(%r1) + std %r3,32(%r1) li %r11,18 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -221,7 +220,7 @@ ASEND(lv1_construct_event_receive_port) ASENTRY(lv1_destruct_event_receive_port) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,19 hc extsw %r3,%r3 @@ -234,7 +233,7 @@ ASEND(lv1_destruct_event_receive_port) ASENTRY(lv1_send_event_locally) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,24 hc extsw %r3,%r3 @@ -247,7 +246,7 @@ ASEND(lv1_send_event_locally) ASENTRY(lv1_end_of_interrupt) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,27 hc extsw %r3,%r3 @@ -260,7 +259,7 @@ ASEND(lv1_end_of_interrupt) ASENTRY(lv1_connect_irq_plug) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,28 hc extsw %r3,%r3 @@ -273,7 +272,7 @@ ASEND(lv1_connect_irq_plug) ASENTRY(lv1_disconnect_irq_plus) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,29 hc extsw %r3,%r3 @@ -286,7 +285,7 @@ ASEND(lv1_disconnect_irq_plus) ASENTRY(lv1_end_of_interrupt_ext) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,30 hc extsw %r3,%r3 @@ -299,7 +298,7 @@ ASEND(lv1_end_of_interrupt_ext) ASENTRY(lv1_did_update_interrupt_mask) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,31 hc extsw %r3,%r3 @@ -312,7 +311,7 @@ ASEND(lv1_did_update_interrupt_mask) ASENTRY(lv1_shutdown_logical_partition) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,44 hc extsw %r3,%r3 @@ -325,7 +324,7 @@ ASEND(lv1_shutdown_logical_partition) ASENTRY(lv1_destruct_logical_spe) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,54 hc extsw %r3,%r3 @@ -338,32 +337,32 @@ ASEND(lv1_destruct_logical_spe) ASENTRY(lv1_construct_logical_spe) mflr %r0 std %r0,16(%r1) - stdu %r1,-96(%r1) - std %r10,48(%r1) - ld %r11,208(%r1) + stdu %r1,-80(%r1) + std %r10,32(%r1) + ld %r11,176(%r1) + std %r11,40(%r1) + ld %r11,184(%r1) + std %r11,48(%r1) + ld %r11,192(%r1) std %r11,56(%r1) - ld %r11,216(%r1) + ld %r11,200(%r1) std %r11,64(%r1) - ld %r11,224(%r1) + ld %r11,208(%r1) std %r11,72(%r1) - ld %r11,232(%r1) - std %r11,80(%r1) - ld %r11,240(%r1) - std %r11,88(%r1) li %r11,57 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) - ld %r11,64(%r1) + ld %r11,48(%r1) std %r6,0(%r11) - ld %r11,72(%r1) + ld %r11,56(%r1) std %r7,0(%r11) - ld %r11,80(%r1) + ld %r11,64(%r1) std %r8,0(%r11) - ld %r11,88(%r1) + ld %r11,72(%r1) std %r9,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -374,7 +373,7 @@ ASEND(lv1_construct_logical_spe) ASENTRY(lv1_set_spe_interrupt_mask) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,61 hc extsw %r3,%r3 @@ -387,7 +386,7 @@ ASEND(lv1_set_spe_interrupt_mask) ASENTRY(lv1_disable_logical_spe) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,65 hc extsw %r3,%r3 @@ -400,7 +399,7 @@ ASEND(lv1_disable_logical_spe) ASENTRY(lv1_clear_spe_interrupt_status) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,66 hc extsw %r3,%r3 @@ -413,12 +412,12 @@ ASEND(lv1_clear_spe_interrupt_status) ASENTRY(lv1_get_spe_interrupt_status) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r5,48(%r1) + stdu %r1,-40(%r1) + std %r5,32(%r1) li %r11,67 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -429,12 +428,12 @@ ASEND(lv1_get_spe_interrupt_status) ASENTRY(lv1_get_logical_ppe_id) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r3,48(%r1) + stdu %r1,-40(%r1) + std %r3,32(%r1) li %r11,69 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -445,12 +444,12 @@ ASEND(lv1_get_logical_ppe_id) ASENTRY(lv1_get_logical_partition_id) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r3,48(%r1) + stdu %r1,-40(%r1) + std %r3,32(%r1) li %r11,74 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -461,12 +460,12 @@ ASEND(lv1_get_logical_partition_id) ASENTRY(lv1_get_spe_irq_outlet) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r5,48(%r1) + stdu %r1,-40(%r1) + std %r5,32(%r1) li %r11,78 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -477,7 +476,7 @@ ASEND(lv1_get_spe_irq_outlet) ASENTRY(lv1_set_spe_privilege_state_area_1_register) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,79 hc extsw %r3,%r3 @@ -490,15 +489,15 @@ ASEND(lv1_set_spe_privilege_state_area_1_register) ASENTRY(lv1_get_repository_node_value) mflr %r0 std %r0,16(%r1) - stdu %r1,-64(%r1) - std %r8,48(%r1) - std %r9,56(%r1) + stdu %r1,-48(%r1) + std %r8,32(%r1) + std %r9,40(%r1) li %r11,91 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -509,24 +508,24 @@ ASEND(lv1_get_repository_node_value) ASENTRY(lv1_read_htab_entries) mflr %r0 std %r0,16(%r1) - stdu %r1,-88(%r1) - std %r5,48(%r1) - std %r6,56(%r1) - std %r7,64(%r1) - std %r8,72(%r1) - std %r9,80(%r1) + stdu %r1,-72(%r1) + std %r5,32(%r1) + std %r6,40(%r1) + std %r7,48(%r1) + std %r8,56(%r1) + std %r9,64(%r1) li %r11,95 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) - ld %r11,64(%r1) + ld %r11,48(%r1) std %r6,0(%r11) - ld %r11,72(%r1) + ld %r11,56(%r1) std %r7,0(%r11) - ld %r11,80(%r1) + ld %r11,64(%r1) std %r8,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -537,7 +536,7 @@ ASEND(lv1_read_htab_entries) ASENTRY(lv1_set_dabr) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,96 hc extsw %r3,%r3 @@ -550,12 +549,12 @@ ASEND(lv1_set_dabr) ASENTRY(lv1_allocate_io_segment) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r6,48(%r1) + stdu %r1,-40(%r1) + std %r6,32(%r1) li %r11,116 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -566,7 +565,7 @@ ASEND(lv1_allocate_io_segment) ASENTRY(lv1_release_io_segment) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,117 hc extsw %r3,%r3 @@ -579,12 +578,12 @@ ASEND(lv1_release_io_segment) ASENTRY(lv1_construct_io_irq_outlet) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r4,48(%r1) + stdu %r1,-40(%r1) + std %r4,32(%r1) li %r11,120 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -595,7 +594,7 @@ ASEND(lv1_construct_io_irq_outlet) ASENTRY(lv1_destruct_io_irq_outlet) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,121 hc extsw %r3,%r3 @@ -608,12 +607,12 @@ ASEND(lv1_destruct_io_irq_outlet) ASENTRY(lv1_map_htab) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r4,48(%r1) + stdu %r1,-40(%r1) + std %r4,32(%r1) li %r11,122 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -624,7 +623,7 @@ ASEND(lv1_map_htab) ASENTRY(lv1_unmap_htab) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,123 hc extsw %r3,%r3 @@ -637,12 +636,12 @@ ASEND(lv1_unmap_htab) ASENTRY(lv1_get_version_info) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r3,48(%r1) + stdu %r1,-40(%r1) + std %r3,32(%r1) li %r11,127 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -653,19 +652,19 @@ ASEND(lv1_get_version_info) ASENTRY(lv1_insert_htab_entry) mflr %r0 std %r0,16(%r1) - stdu %r1,-72(%r1) - std %r9,48(%r1) - std %r10,56(%r1) - ld %r11,184(%r1) - std %r11,64(%r1) + stdu %r1,-56(%r1) + std %r9,32(%r1) + std %r10,40(%r1) + ld %r11,152(%r1) + std %r11,48(%r1) li %r11,158 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) - ld %r11,64(%r1) + ld %r11,48(%r1) std %r6,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -676,12 +675,12 @@ ASEND(lv1_insert_htab_entry) ASENTRY(lv1_read_virtual_uart) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r6,48(%r1) + stdu %r1,-40(%r1) + std %r6,32(%r1) li %r11,162 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -692,12 +691,12 @@ ASEND(lv1_read_virtual_uart) ASENTRY(lv1_write_virtual_uart) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r6,48(%r1) + stdu %r1,-40(%r1) + std %r6,32(%r1) li %r11,163 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -708,7 +707,7 @@ ASEND(lv1_write_virtual_uart) ASENTRY(lv1_set_virtual_uart_param) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,164 hc extsw %r3,%r3 @@ -721,12 +720,12 @@ ASEND(lv1_set_virtual_uart_param) ASENTRY(lv1_get_virtual_uart_param) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r5,48(%r1) + stdu %r1,-40(%r1) + std %r5,32(%r1) li %r11,165 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -737,12 +736,12 @@ ASEND(lv1_get_virtual_uart_param) ASENTRY(lv1_configure_virtual_uart) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r4,48(%r1) + stdu %r1,-40(%r1) + std %r4,32(%r1) li %r11,166 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -753,7 +752,7 @@ ASEND(lv1_configure_virtual_uart) ASENTRY(lv1_open_device) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,170 hc extsw %r3,%r3 @@ -766,7 +765,7 @@ ASEND(lv1_open_device) ASENTRY(lv1_close_device) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,171 hc extsw %r3,%r3 @@ -779,12 +778,12 @@ ASEND(lv1_close_device) ASENTRY(lv1_map_device_mmio_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r8,48(%r1) + stdu %r1,-40(%r1) + std %r8,32(%r1) li %r11,172 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -795,7 +794,7 @@ ASEND(lv1_map_device_mmio_region) ASENTRY(lv1_unmap_device_mmio_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,173 hc extsw %r3,%r3 @@ -808,12 +807,12 @@ ASEND(lv1_unmap_device_mmio_region) ASENTRY(lv1_allocate_device_dma_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r8,48(%r1) + stdu %r1,-40(%r1) + std %r8,32(%r1) li %r11,174 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -824,7 +823,7 @@ ASEND(lv1_allocate_device_dma_region) ASENTRY(lv1_free_device_dma_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,175 hc extsw %r3,%r3 @@ -837,7 +836,7 @@ ASEND(lv1_free_device_dma_region) ASENTRY(lv1_map_device_dma_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,176 hc extsw %r3,%r3 @@ -850,7 +849,7 @@ ASEND(lv1_map_device_dma_region) ASENTRY(lv1_unmap_device_dma_region) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,177 hc extsw %r3,%r3 @@ -863,12 +862,12 @@ ASEND(lv1_unmap_device_dma_region) ASENTRY(lv1_read_pci_config) mflr %r0 std %r0,16(%r1) - stdu %r1,-56(%r1) - std %r9,48(%r1) + stdu %r1,-40(%r1) + std %r9,32(%r1) li %r11,178 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -879,7 +878,7 @@ ASEND(lv1_read_pci_config) ASENTRY(lv1_write_pci_config) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,179 hc extsw %r3,%r3 @@ -892,7 +891,7 @@ ASEND(lv1_write_pci_config) ASENTRY(lv1_net_add_multicast_address) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,185 hc extsw %r3,%r3 @@ -905,7 +904,7 @@ ASEND(lv1_net_add_multicast_address) ASENTRY(lv1_net_remove_multicast_address) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,186 hc extsw %r3,%r3 @@ -918,7 +917,7 @@ ASEND(lv1_net_remove_multicast_address) ASENTRY(lv1_net_start_tx_dma) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,187 hc extsw %r3,%r3 @@ -931,7 +930,7 @@ ASEND(lv1_net_start_tx_dma) ASENTRY(lv1_net_stop_tx_dma) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,188 hc extsw %r3,%r3 @@ -944,7 +943,7 @@ ASEND(lv1_net_stop_tx_dma) ASENTRY(lv1_net_start_rx_dma) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,189 hc extsw %r3,%r3 @@ -957,7 +956,7 @@ ASEND(lv1_net_start_rx_dma) ASENTRY(lv1_net_stop_rx_dma) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,190 hc extsw %r3,%r3 @@ -970,7 +969,7 @@ ASEND(lv1_net_stop_rx_dma) ASENTRY(lv1_net_set_interrupt_status_indicator) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,191 hc extsw %r3,%r3 @@ -983,7 +982,7 @@ ASEND(lv1_net_set_interrupt_status_indicator) ASENTRY(lv1_net_set_interrupt_mask) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,193 hc extsw %r3,%r3 @@ -996,15 +995,15 @@ ASEND(lv1_net_set_interrupt_mask) ASENTRY(lv1_net_control) mflr %r0 std %r0,16(%r1) - stdu %r1,-64(%r1) - std %r9,48(%r1) - std %r10,56(%r1) + stdu %r1,-48(%r1) + std %r9,32(%r1) + std %r10,40(%r1) li %r11,194 hc extsw %r3,%r3 - ld %r11,48(%r1) + ld %r11,32(%r1) std %r4,0(%r11) - ld %r11,56(%r1) + ld %r11,40(%r1) std %r5,0(%r11) ld %r1,0(%r1) ld %r0,16(%r1) @@ -1015,7 +1014,7 @@ ASEND(lv1_net_control) ASENTRY(lv1_connect_interrupt_event_receive_port) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,197 hc extsw %r3,%r3 @@ -1028,7 +1027,7 @@ ASEND(lv1_connect_interrupt_event_receive_port) ASENTRY(lv1_disconnect_interrupt_event_receive_port) mflr %r0 std %r0,16(%r1) - stdu %r1,-48(%r1) + stdu %r1,-32(%r1) li %r11,198 *** 306 LINES SKIPPED *** From nobody Thu Oct 24 02:46:07 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqzg5rPhz5Zy1v; Thu, 24 Oct 2024 02:46:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqzg4Hrbz46tS; Thu, 24 Oct 2024 02:46:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X1G9duCNMvMc5ZI/PwfcBkJResZr8dcpUahteD+FGBA=; b=ZCdAi68ERU11DQJDGc14XuNBORaC2ZMZ6FAg0IaFu62bkqMK1HuaoKJmdR1GVYRoWyGZMv dh2gpBJc0x9b0qh7JE/ucEUgqUHLYh/hFx+TRENBACkUjBKv8cQNp81DCNp0Y2aQSqlU5Q bRnZDieEv7vdAfXYZcxeEYGjayYNp82TIUjqP/qpVlJbzQ/K80SXfzwwv/NLQMvGkR3z9Q tHYO89iZgprhFfBOEDYzP9I9EGFE9XCf0kxA9qm8OIoPra7TJIWdDGt0Eu1twa7ZMp0FKf tZzf4X6iImy9tQ9kCsyOqdeDGxUmibQy7sxLV0zTbBMND5PVOve5A0ufK1CciA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X1G9duCNMvMc5ZI/PwfcBkJResZr8dcpUahteD+FGBA=; b=t1ZziYkxe+5dQJ/NJqcBxCa8gWkpYxjvV2pCm7IxHoeq7YnN1od9hM5Oo2DJCCMD0rWKf6 jp1laSvZVGPjj4I94YYeLzaMgGrpmX6cgA5h+AZxJ/ee0Qif8txhPAWE9fPDd0ag9jwjnu 0ljhJW/vTNU6lDx+wZXLweuM6gTLcM9BCJy1OzGQdyvM4YkRHoBWcOIA8nowiZM+XD5P/6 xL2URJVy/VrkJDOJee6/47Ufn0AasgLznApkG/9hxszYzCLtYORq9cWGfHZoFrS2dZWSBY Wd53Ho9fHIZPOnMBfiJKDdaeJqSWfvrgj6QTB+l14Y581GbY09sZi5cy/dLN9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729737967; a=rsa-sha256; cv=none; b=xR0xOH9GRrCRPuUIZc1cAg43tS6K2YPuAokpI0ftPIOiB8TkKLcfmNtuPulQ1jH+jhkJH1 rh006PtZFZ86fxcdNNX1W0GpzB7gnNMGfLIvMIN0bqb/ws8UdxVlw0wRExLIcJLZwYD8mh yYr2VNdNeqrH4ITWbWpZok9i7zeg/3jfGXVTwznCZqWZYYzFNUcFGERiyDmu0/fD9SW1c7 yXZWdAnUqbsFaucZktE/AR3raM0hlF5GDP38tqBn1LX4nnN0qcqHPXwudCE8z9mwKu/rhh P8c6DfM978BX7BGiS0bytxYno/mwoiNLtJb1KrEdjLiqDlmaMCQOppgBZU7ibQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqzg3vN5zPPV; Thu, 24 Oct 2024 02:46: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 49O2k7Bt086119; Thu, 24 Oct 2024 02:46:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2k70e086116; Thu, 24 Oct 2024 02:46:07 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:46:07 GMT Message-Id: <202410240246.49O2k70e086116@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 858397f868c0 - stable/14 - apic: add ioapic_get_dev() method List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 858397f868c0372a074cd14736dabbb2fd0cb09a Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=858397f868c0372a074cd14736dabbb2fd0cb09a commit 858397f868c0372a074cd14736dabbb2fd0cb09a Author: Konstantin Belousov AuthorDate: 2024-10-12 22:52:44 +0000 Commit: Konstantin Belousov CommitDate: 2024-10-24 02:44:40 +0000 apic: add ioapic_get_dev() method (cherry picked from commit ea4e4449b85593025c2eb31bb642732971d96225) --- sys/x86/include/apicvar.h | 1 + sys/x86/x86/io_apic.c | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/sys/x86/include/apicvar.h b/sys/x86/include/apicvar.h index ac6a82659e34..61c726f150df 100644 --- a/sys/x86/include/apicvar.h +++ b/sys/x86/include/apicvar.h @@ -258,6 +258,7 @@ void lapic_handle_intr(int vector, struct trapframe *frame); void lapic_handle_timer(struct trapframe *frame); int ioapic_get_rid(u_int apic_id, uint16_t *ridp); +device_t ioapic_get_dev(u_int apic_id); extern int x2apic_mode; extern int lapic_eoi_suppression; diff --git a/sys/x86/x86/io_apic.c b/sys/x86/x86/io_apic.c index 4337d1adc8a9..525547f9482a 100644 --- a/sys/x86/x86/io_apic.c +++ b/sys/x86/x86/io_apic.c @@ -1081,6 +1081,22 @@ ioapic_get_rid(u_int apic_id, uint16_t *ridp) return (0); } +device_t +ioapic_get_dev(u_int apic_id) +{ + struct ioapic *io; + + mtx_lock_spin(&icu_lock); + STAILQ_FOREACH(io, &ioapic_list, io_next) { + if (io->io_hw_apic_id == apic_id) + break; + } + mtx_unlock_spin(&icu_lock); + if (io != NULL) + return (io->pci_dev); + return (NULL); +} + /* * A new-bus driver to consume the memory resources associated with * the APICs in the system. On some systems ACPI or PnPBIOS system From nobody Thu Oct 24 02:46:08 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqzj0XfHz5Zy1w; Thu, 24 Oct 2024 02:46:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqzh5bJHz46qN; Thu, 24 Oct 2024 02:46:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VwnRhVSosyjX+T5ezOsWhJkN3fgSmKM1+QTmPRS8KwM=; b=ka46aYji9nles4qaputEIQ9SRtdc4CmS8SxfXITs9+dGqga7SNwIAUq3nIugnkv0FYrWFd VAdyOSWOYsY2Fou0yd4yYByFuxq6tuOXfQjEDogQH7UZU1gqt3F0zIS3Af5RfgOPvEIrzk eEJ+AvNxEL26kvDP50uyO49J4mfi49jxuvIgz5giXwMnpmNtls8iz6mLVrkQPrnl5PMtXY ygho0q4bqhXwJy1v4wHk1n8SbU4I4KsIJbg3/Ln3rD9oOeYQSts3bswxLq6YQ0hNGeyz3E SWfNNORKnGSQZLYorDn5cWV2i7S8ZTSUOAaK0Ga4ArdNnamcgRBMt9KPeSLLpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VwnRhVSosyjX+T5ezOsWhJkN3fgSmKM1+QTmPRS8KwM=; b=ZN6m3AtC0UbA96oaoCWWd1hhh4xI95PgPWDgS8p0qe7B6fdngKnf8PhKBHqjUjKYLJA3+r VFrjgHKJiXXmzsWLlvhECAf2TYPXnUFeIbP/Fj3tk75cWYRP++u6f7dtd29Xt8dAMIEkU0 TOzoQ5TB4OctR7qvp+/sbIVIhi8ZcfVKdawV9zUz9/AqXAhJ1ezc68Kpi9QBN8SewCAe0K 2SW0yOMj/FiH/LhcCDsswBHqTJEJwA+NaCkQ8ZXTm934BLtsXvzMOuKyg5+Hrv2fhaqCYL dp4hT6WChyTzrpvIyAL/SD6bn05vCkDsRajaliDsXYCZyM0V1b7oEIR3hRzvpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729737968; a=rsa-sha256; cv=none; b=hb2OokaJdUiVgL5p+TZ6toS465gAh/EMpQvEqNSaO+6SRvlHAjIaQLUngv1uSz4A+BlvzQ BlCHNxPzMIGvT+LgrNqTSkMAin910k/kv6/EMLJ1zfy77Ypv0lsRg79NMjObt2FMxppibk tc9AW4FsrWd2bRszFQR1EPwQREDN/KKa1OpA8xE2WqsFS3D5BZmFY0i1CRBbOVrgb+/V2b U1Y0YPjgamD1xFUYewh/YtI0CRW4sO/8ZGN4iQJDf0R3s1w3uQht3voafedWg27QoJKJyQ Gt9Neg1tclvrMdbDNTHp8X7IrS7EN98aU+AleO2aqGai8k9xWRd9Cb/dW0/Zuw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqzh5CLMzPSW; Thu, 24 Oct 2024 02:46: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 49O2k8uH086165; Thu, 24 Oct 2024 02:46:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2k8vR086162; Thu, 24 Oct 2024 02:46:08 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:46:08 GMT Message-Id: <202410240246.49O2k8vR086162@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 2cda5031841f - stable/14 - device: add generic named per-device property List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2cda5031841fa3745486a0f5c08981d266742569 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=2cda5031841fa3745486a0f5c08981d266742569 commit 2cda5031841fa3745486a0f5c08981d266742569 Author: Konstantin Belousov AuthorDate: 2024-09-08 04:40:41 +0000 Commit: Konstantin Belousov CommitDate: 2024-10-24 02:44:40 +0000 device: add generic named per-device property (cherry picked from commit cb83af64f161b228171d6fb4f36d22493cefaa7f) --- sys/kern/subr_bus.c | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sys/sys/bus.h | 7 +++ 2 files changed, 127 insertions(+) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 5965b8941b54..9e6973f6174c 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -105,6 +105,16 @@ struct devclass { struct sysctl_oid *sysctl_tree; }; +struct device_prop_elm { + const char *name; + void *val; + void *dtr_ctx; + device_prop_dtr_t dtr; + LIST_ENTRY(device_prop_elm) link; +}; + +static void device_destroy_props(device_t dev); + /** * @brief Implementation of _device. * @@ -141,6 +151,7 @@ struct _device { u_int order; /**< order from device_add_child_ordered() */ void *ivars; /**< instance variables */ void *softc; /**< current driver's variables */ + LIST_HEAD(, device_prop_elm) props; struct sysctl_ctx_list sysctl_ctx; /**< state for sysctl variables */ struct sysctl_oid *sysctl_tree; /**< state for sysctl variables */ @@ -1350,6 +1361,7 @@ make_device(device_t parent, const char *name, int unit) dev->flags |= DF_QUIET | DF_QUIET_CHILDREN; dev->ivars = NULL; dev->softc = NULL; + LIST_INIT(&dev->props); dev->state = DS_NOTPRESENT; @@ -1489,6 +1501,7 @@ device_delete_child(device_t dev, device_t child) return (error); } + device_destroy_props(dev); if (child->devclass) devclass_delete_device(child->devclass, child); if (child->parent) @@ -5990,6 +6003,113 @@ dev_wired_cache_match(device_location_cache_t *dcp, device_t dev, return (strcmp(res->dln_path, cp) == 0); } +static struct device_prop_elm * +device_prop_find(device_t dev, const char *name) +{ + struct device_prop_elm *e; + + bus_topo_assert(); + + LIST_FOREACH(e, &dev->props, link) { + if (strcmp(name, e->name) == 0) + return (e); + } + return (NULL); +} + +int +device_set_prop(device_t dev, const char *name, void *val, + device_prop_dtr_t dtr, void *dtr_ctx) +{ + struct device_prop_elm *e, *e1; + + bus_topo_assert(); + + e = device_prop_find(dev, name); + if (e != NULL) + goto found; + + e1 = malloc(sizeof(*e), M_BUS, M_WAITOK); + e = device_prop_find(dev, name); + if (e != NULL) { + free(e1, M_BUS); + goto found; + } + + e1->name = name; + e1->val = val; + e1->dtr = dtr; + e1->dtr_ctx = dtr_ctx; + LIST_INSERT_HEAD(&dev->props, e1, link); + return (0); + +found: + LIST_REMOVE(e, link); + if (e->dtr != NULL) + e->dtr(dev, name, e->val, e->dtr_ctx); + e->val = val; + e->dtr = dtr; + e->dtr_ctx = dtr_ctx; + LIST_INSERT_HEAD(&dev->props, e, link); + return (EEXIST); +} + +int +device_get_prop(device_t dev, const char *name, void **valp) +{ + struct device_prop_elm *e; + + bus_topo_assert(); + + e = device_prop_find(dev, name); + if (e == NULL) + return (ENOENT); + *valp = e->val; + return (0); +} + +int +device_clear_prop(device_t dev, const char *name) +{ + struct device_prop_elm *e; + + bus_topo_assert(); + + e = device_prop_find(dev, name); + if (e == NULL) + return (ENOENT); + LIST_REMOVE(e, link); + if (e->dtr != NULL) + e->dtr(dev, e->name, e->val, e->dtr_ctx); + free(e, M_BUS); + return (0); +} + +static void +device_destroy_props(device_t dev) +{ + struct device_prop_elm *e; + + bus_topo_assert(); + + while ((e = LIST_FIRST(&dev->props)) != NULL) { + LIST_REMOVE_HEAD(&dev->props, link); + if (e->dtr != NULL) + e->dtr(dev, e->name, e->val, e->dtr_ctx); + free(e, M_BUS); + } +} + +void +device_clear_prop_alldev(const char *name) +{ + device_t dev; + + TAILQ_FOREACH(dev, &bus_data_devices, devlink) { + device_clear_prop(dev, name); + } +} + /* * APIs to manage deprecation and obsolescence. */ diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 581e81352be4..eecff0c7c03e 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -889,6 +889,13 @@ device_location_cache_t *dev_wired_cache_init(void); void dev_wired_cache_fini(device_location_cache_t *dcp); bool dev_wired_cache_match(device_location_cache_t *dcp, device_t dev, const char *at); +typedef void (*device_prop_dtr_t)(device_t dev, const char *name, void *val, + void *dtr_ctx); +int device_set_prop(device_t dev, const char *name, void *val, + device_prop_dtr_t dtr, void *dtr_ctx); +int device_get_prop(device_t dev, const char *name, void **valp); +int device_clear_prop(device_t dev, const char *name); +void device_clear_prop_alldev(const char *name); /** * Shorthand macros, taking resource argument From nobody Thu Oct 24 02:46:09 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqzk0Pd2z5ZyFS; Thu, 24 Oct 2024 02:46: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqzj6hVhz46yP; Thu, 24 Oct 2024 02:46:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ujPj4JbH13fgplFjJkp4Wu/xtt51fYqBV3qU3TerC3s=; b=f0lZ+muL6bWC31WWeGBoVkOII2g90Pr5WHh6pj9asqcoJTF6+5Swg5ooDkq5MLLsb+MWDs tpIj/XSLr+nbF+BrwCCYuziE42qO0Ua1mMC62mg11jUl0rxlfgxgB0+GNbj5bGIY3IPLPE TrK9wITQVrKJ4iYUABsqvGKmAtZLUaTSIWz3+YoweJHeSMT5dphACgPktJJqvCT03lL1AX 4xWzjisBA3ssCp0Np93JLmme+mlGpV8HaL2pTVq964EQzzto/9SWOJzmWD0LH7wC3ZKl2I rZqQ6Q7duB/wJyNNSRjRRnAEmJQAFSYaBr0hY7NbP+qR6H44gKg4CMf61ZADvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ujPj4JbH13fgplFjJkp4Wu/xtt51fYqBV3qU3TerC3s=; b=QzSySLSIJiwULjskwy666e+NKSEvvW45RkhSa5GL2XJ5ZhmrOMIT7raw07nPKoUXos662k bE0lOWIK63QetDKOzyIyv9Ce3Wf5HfhFAGaYrPUKU5/ctuuc2bSidFJImLxK2y27xyiKjn oY45Z5aU/5WnIobpD9w6hXADjiquF0ERfalhvcEeHcEkd4h7bMCgVlQCBbP0rzdgBLhFRV 2iYVYX6mdBZwyLEci0x5ubWO6HS5lUm54HyJbOSZT06R6Migitl3nwUD6NV4w1MxtUCqOe T1DlPdPB1QE6odBMmoSAJvWofKb/vtyJ1A6ITLke9hCw46kknPyusYnpy2Uc/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729737969; a=rsa-sha256; cv=none; b=gXLtqkerJh5s/xQi69e7M3LvI+DTQD48UKDJdSx0z9SMT/ZHqd/mMsMZaEM41mdXCmBgYU +DKdmaKMVhwBJysOR+KIv5MMjQ5FnO47x1H7xflNGui1iuCgUhID3DJutJapOJtyXmR8E3 eSb97gWObtOp/o5siYMHQaMz+xqHat9Wf4dHKBRQQsW0bBpEynyj2W6uco4D+jbUW89Y1G MQmCOHuzq16Lx53f6WEdPcejZBmbTZxVzzDwkOEXL9qXQGtWx5ePWvSjcLKSGsqr61Q/GS JXem+bheNZkTcPbl7XWQdhlyXIMc5btcSVCzxBtzSeLBLiaxqRqpcNh+fZLx0g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqzj6Hs5zPSX; Thu, 24 Oct 2024 02:46:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49O2k9If086229; Thu, 24 Oct 2024 02:46:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2k9K4086226; Thu, 24 Oct 2024 02:46:09 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:46:09 GMT Message-Id: <202410240246.49O2k9K4086226@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: ec8d60f0d9b7 - stable/14 - devices: report iommu data for the device in the dev. sysctl tree List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ec8d60f0d9b762880482e39f567db552c152d3a2 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ec8d60f0d9b762880482e39f567db552c152d3a2 commit ec8d60f0d9b762880482e39f567db552c152d3a2 Author: Konstantin Belousov AuthorDate: 2024-10-12 22:54:33 +0000 Commit: Konstantin Belousov CommitDate: 2024-10-24 02:44:40 +0000 devices: report iommu data for the device in the dev. sysctl tree (cherry picked from commit b08d332da035e11bfc9373f2d08244cb3e10cda4) --- sys/kern/subr_bus.c | 28 ++++++++++++++++++++++++++++ sys/sys/bus.h | 1 + sys/x86/iommu/intel_drv.c | 19 ++++++++++++++++--- sys/x86/iommu/iommu_utils.c | 13 +++++++++++++ sys/x86/iommu/x86_iommu.h | 1 + 5 files changed, 59 insertions(+), 3 deletions(-) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 9e6973f6174c..b87652fd32e8 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -29,6 +29,7 @@ #include #include "opt_bus.h" #include "opt_ddb.h" +#include "opt_iommu.h" #include #include @@ -60,6 +61,8 @@ #include #include +#include + #include SYSCTL_NODE(_hw, OID_AUTO, bus, CTLFLAG_RW | CTLFLAG_MPSAFE, NULL, @@ -261,6 +264,7 @@ enum { DEVICE_SYSCTL_LOCATION, DEVICE_SYSCTL_PNPINFO, DEVICE_SYSCTL_PARENT, + DEVICE_SYSCTL_IOMMU, }; static int @@ -268,7 +272,10 @@ device_sysctl_handler(SYSCTL_HANDLER_ARGS) { struct sbuf sb; device_t dev = (device_t)arg1; + device_t iommu; int error; + uint16_t rid; + const char *c; sbuf_new_for_sysctl(&sb, NULL, 1024, req); sbuf_clear_flags(&sb, SBUF_INCLUDENUL); @@ -289,6 +296,22 @@ device_sysctl_handler(SYSCTL_HANDLER_ARGS) case DEVICE_SYSCTL_PARENT: sbuf_cat(&sb, dev->parent ? dev->parent->nameunit : ""); break; + case DEVICE_SYSCTL_IOMMU: + iommu = NULL; + error = device_get_prop(dev, DEV_PROP_NAME_IOMMU, + (void **)&iommu); + c = ""; + if (error == 0 && iommu != NULL) { + sbuf_printf(&sb, "unit=%s", device_get_nameunit(iommu)); + c = " "; + } + rid = 0; +#ifdef IOMMU + iommu_get_requester(dev, &rid); +#endif + if (rid != 0) + sbuf_printf(&sb, "%srid=%#x", c, rid); + break; default: error = EINVAL; goto out; @@ -338,6 +361,11 @@ device_sysctl_init(device_t dev) CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, DEVICE_SYSCTL_PARENT, device_sysctl_handler, "A", "parent device"); + SYSCTL_ADD_PROC(&dev->sysctl_ctx, SYSCTL_CHILDREN(dev->sysctl_tree), + OID_AUTO, "%iommu", + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, + dev, DEVICE_SYSCTL_IOMMU, device_sysctl_handler, "A", + "iommu unit handling the device requests"); if (bus_get_domain(dev, &domain) == 0) SYSCTL_ADD_INT(&dev->sysctl_ctx, SYSCTL_CHILDREN(dev->sysctl_tree), OID_AUTO, "%domain", diff --git a/sys/sys/bus.h b/sys/sys/bus.h index eecff0c7c03e..5d5336591ea6 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -889,6 +889,7 @@ device_location_cache_t *dev_wired_cache_init(void); void dev_wired_cache_fini(device_location_cache_t *dcp); bool dev_wired_cache_match(device_location_cache_t *dcp, device_t dev, const char *at); +#define DEV_PROP_NAME_IOMMU "iommu-unit" typedef void (*device_prop_dtr_t)(device_t dev, const char *name, void *val, void *dtr_ctx); int device_set_prop(device_t dev, const char *name, void *val, diff --git a/sys/x86/iommu/intel_drv.c b/sys/x86/iommu/intel_drv.c index ebc77879480b..f4a1ec06b721 100644 --- a/sys/x86/iommu/intel_drv.c +++ b/sys/x86/iommu/intel_drv.c @@ -757,6 +757,7 @@ dmar_find(device_t dev, bool verbose) dmar_print_path(dev_busno, dev_path_len, dev_path); printf("\n"); } + iommu_device_set_iommu_prop(dev, unit->iommu.dev); return (unit); } @@ -826,16 +827,28 @@ dmar_find_nonpci(u_int id, u_int entry_type, uint16_t *rid) struct dmar_unit * dmar_find_hpet(device_t dev, uint16_t *rid) { + struct dmar_unit *unit; - return (dmar_find_nonpci(hpet_get_uid(dev), ACPI_DMAR_SCOPE_TYPE_HPET, - rid)); + unit = dmar_find_nonpci(hpet_get_uid(dev), ACPI_DMAR_SCOPE_TYPE_HPET, + rid); + if (unit != NULL) + iommu_device_set_iommu_prop(dev, unit->iommu.dev); + return (unit); } struct dmar_unit * dmar_find_ioapic(u_int apic_id, uint16_t *rid) { + struct dmar_unit *unit; + device_t apic_dev; - return (dmar_find_nonpci(apic_id, ACPI_DMAR_SCOPE_TYPE_IOAPIC, rid)); + unit = dmar_find_nonpci(apic_id, ACPI_DMAR_SCOPE_TYPE_IOAPIC, rid); + if (unit != NULL) { + apic_dev = ioapic_get_dev(apic_id); + if (apic_dev != NULL) + iommu_device_set_iommu_prop(apic_dev, unit->iommu.dev); + } + return (unit); } struct rmrr_iter_args { diff --git a/sys/x86/iommu/iommu_utils.c b/sys/x86/iommu/iommu_utils.c index 259c87403b07..479e8637ee8e 100644 --- a/sys/x86/iommu/iommu_utils.c +++ b/sys/x86/iommu/iommu_utils.c @@ -758,6 +758,19 @@ pglvl_page_size(int total_pglvl, int lvl) return (pg_sz[rlvl]); } +void +iommu_device_set_iommu_prop(device_t dev, device_t iommu) +{ + device_t iommu_dev; + int error; + + bus_topo_lock(); + error = device_get_prop(dev, DEV_PROP_NAME_IOMMU, (void **)&iommu_dev); + if (error == ENOENT) + device_set_prop(dev, DEV_PROP_NAME_IOMMU, iommu, NULL, NULL); + bus_topo_unlock(); +} + #ifdef DDB #include #include diff --git a/sys/x86/iommu/x86_iommu.h b/sys/x86/iommu/x86_iommu.h index 92ac993e7c9c..eb4a9907a5d6 100644 --- a/sys/x86/iommu/x86_iommu.h +++ b/sys/x86/iommu/x86_iommu.h @@ -188,6 +188,7 @@ int iommu_alloc_irq(struct iommu_unit *unit, int idx); void iommu_release_intr(struct iommu_unit *unit, int idx); void iommu_device_tag_init(struct iommu_ctx *ctx, device_t dev); +void iommu_device_set_iommu_prop(device_t dev, device_t iommu); int pglvl_pgtbl_pte_off(int pglvl, iommu_gaddr_t base, int lvl); vm_pindex_t pglvl_pgtbl_get_pindex(int pglvl, iommu_gaddr_t base, int lvl); From nobody Thu Oct 24 02:46:10 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYqzl2PT8z5ZyDh; Thu, 24 Oct 2024 02:46:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYqzl19tpz4749; Thu, 24 Oct 2024 02:46:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ND0hVDKEpKiXQWswvVZDIv9KpMQVsuGcKuzaMRt+8z4=; b=X2NzCV00SCi/xe/2V2rPMPeQjZ7tLx7B5P4710REw1OQysZ1Qi424KEtfQQ4Ge27GZYve+ 00OsjtHNNEf03Yt0Q76yFdlpPYeiYshY5F/zu+vgFaROPF+g9p2tETpgbnknTkc5NGSDEf Sx3uLZyRpwF5C6CcvbpWZB7QKOdAzRDFQ7avGUET8yShKFHDCGBgNlQPi9ylUsY/yqyDZK DvH8vH1kJO7J3DgZivbvsF6iwns5XP/kDBCgKiZZ0Nni02dXs6aOov6iivRHtN5E0ytDwd rwV/HbeMooXp0SKbsm5QAVU3/Pm3jQ2dZntim/DV20TyxHnRFZSdiIp9F/OacA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729737971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ND0hVDKEpKiXQWswvVZDIv9KpMQVsuGcKuzaMRt+8z4=; b=tH0p7ADaD0zuIYxlqmjN0ScbZO9B+RfSVUipyQlS4NOwvNfJsUUcHZ9/aGlZJA6kNXgCGp T4O7C04NvsNaf9ytQQ0AljnbwCYWSBmspGwhkF5jDc3D3Dvh3qY++m4S5ygnNYtftInB9M sd8LeYOSJ68n6zmhFPznrY6aCb9yOFrjwYdP46hUJgpEA1r1IwvwRTdJXS/6tmXeyPrkHm UuKscDY2uz0ESvAheqMQkY/UT1ZQeuG6KZ10b8B4T10FmcVj40zpz6pfw77uCTGCQ9CG7V zZXSQg1MHmCCvWV+IIXn64QzD3EnZ7LuGUXZ699gm8v71IEhi5q5gKIsX+9YzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729737971; a=rsa-sha256; cv=none; b=xtD5sj3iATWIRH926xoC6P1gV64x019OzemtW1neQyHCGFaW6eNAET7Q6EseJkMlSbaX6a +qtYs71l9rKeATPtQtFE7q1k8xZG2tkCGOwIYXDwF1RkzIfUgAYES4NYxYzb9HxNxRweNn YKU6C7fSlZ75FDG0eiqUuIej1x11nEFXzZbipH7HEZpDiQnKxUkM17pEhjYIOVUXm3R3Z1 70BM0UsDPE3iAq7O/m9VBeE1gkHcFlQtxLEWGDSJgewu4t07cGKhnCBqMkADOkBubsFC8y T0nX+Gt0q05OV1sRqZ388a0O0L9Fu2knqY0OHh2qTntDjgFyMCdDcSTRi++nFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYqzl0DvDzPSY; Thu, 24 Oct 2024 02:46: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 49O2kANF086296; Thu, 24 Oct 2024 02:46:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O2kALm086293; Thu, 24 Oct 2024 02:46:10 GMT (envelope-from git) Date: Thu, 24 Oct 2024 02:46:10 GMT Message-Id: <202410240246.49O2kALm086293@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: be2940e90864 - stable/14 - amd64: do not pass -z rodynamic to ld.bfd when building vdso List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: be2940e908642c3019ba8196430c2cb09f1dc532 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=be2940e908642c3019ba8196430c2cb09f1dc532 commit be2940e908642c3019ba8196430c2cb09f1dc532 Author: Konstantin Belousov AuthorDate: 2024-10-18 14:09:26 +0000 Commit: Konstantin Belousov CommitDate: 2024-10-24 02:44:40 +0000 amd64: do not pass -z rodynamic to ld.bfd when building vdso (cherry picked from commit 3b2cf9381ef86847603c3c94811f638660c417ae) --- sys/tools/amd64_ia32_vdso.sh | 7 ++++++- sys/tools/amd64_vdso.sh | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/sys/tools/amd64_ia32_vdso.sh b/sys/tools/amd64_ia32_vdso.sh index 59923749042f..85d2299b45d0 100644 --- a/sys/tools/amd64_ia32_vdso.sh +++ b/sys/tools/amd64_ia32_vdso.sh @@ -34,9 +34,14 @@ ${CC} -x assembler-with-cpp -DLOCORE -fPIC -nostdinc -c -m32 \ -o ia32_sigtramp.pico -I. -I"${S}" -include opt_global.h \ "${S}"/amd64/ia32/ia32_sigtramp.S +if ${LD} --version | ${AWK} '/^GNU ld/{exit 1}' ; then + RODYNAMIC="-z rodynamic" +else + RODYNAMIC="" +fi ${LD} --shared -Bsymbolic -soname="elf-vdso32.so.1" \ -T "${S}"/conf/vdso_amd64_ia32.ldscript \ - --eh-frame-hdr --no-undefined -z rodynamic -z norelro -nmagic \ + --eh-frame-hdr --no-undefined ${RODYNAMIC} -z norelro -nmagic \ --hash-style=sysv --fatal-warnings --strip-all \ -o elf-vdso32.so.1 ia32_sigtramp.pico diff --git a/sys/tools/amd64_vdso.sh b/sys/tools/amd64_vdso.sh index aec0694ebdb1..2a83ae874ab7 100644 --- a/sys/tools/amd64_vdso.sh +++ b/sys/tools/amd64_vdso.sh @@ -40,12 +40,17 @@ ${CC} -x assembler-with-cpp -DLOCORE -fPIC -nostdinc -c \ # # -z rodynamic is undocumented lld-specific option, seemingly required # for lld to avoid putting dynamic into dedicated writeable segment, -# despite ldscript placement. It is ignored by ld.bfd but ldscript +# despite ldscript placement. It is omitted for ld.bfd, but ldscript # alone is enough there. # +if ${LD} --version | ${AWK} '/^GNU ld/{exit 1}' ; then + RODYNAMIC="-z rodynamic" +else + RODYNAMIC="" +fi ${LD} --shared -Bsymbolic -soname="elf-vdso.so.1" \ -T "${S}"/conf/vdso_amd64.ldscript \ - --eh-frame-hdr --no-undefined -z rodynamic -z norelro -nmagic \ + --eh-frame-hdr --no-undefined ${RODYNAMIC} -z norelro -nmagic \ --hash-style=sysv --fatal-warnings --strip-all \ -o elf-vdso.so.1 sigtramp.pico From nobody Thu Oct 24 07:25:18 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XYy9q0YwKz5bB3D; Thu, 24 Oct 2024 07:25:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XYy9p6Yndz4Y05; Thu, 24 Oct 2024 07:25:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729754718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XVt1vYvXGnRMZNnMERzTgxaW85VfgFNzNlErIcqysBc=; b=ULpWtVfTqYtd6cI409+h85MIQ8mgMvmYst66wR9d0RGQglZbeRnPzLMDEOE3y7/9LxlkAP /RnlmhiHRhFQTrl/FpRhDjgIJcujVoYDya2HXy0+E9OuoCPM71MqdmJYZxShp+0TsWsqp/ 27kJL8bzndPza5ZJvnAwMiL673iK1lHatBW1X1xy/3r4cTzvKnkqocugnExwJhQWXBG/7d gzjgeZD1pb3oO8sgBBwE6fI1ql5MIamP8KuYWs0TCBITsGolyYLaDA2Q2NbdoVDbSYsJAM 8aCQXBv2t2QUckhXVxamRMZAuVEU2OGsgMV+lIw6bmcLcXJod20dvORZM3YLsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729754718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XVt1vYvXGnRMZNnMERzTgxaW85VfgFNzNlErIcqysBc=; b=JlHxa+iLsdUqsBLld0Wc6W1xl6M3ToVbOS26wEyn0OEOFVaIbHjIQ1x7r1NsyeQ239BUQ6 H6phhfH4ZymXeoC0faykjfxLxnHhGE1MIsP5Nrbunr4UORMLt2Z9eT7+WfOaCWl5Uq/oWG YDu9hIXsbDw0L/jx19n2j0GMtHHVvFb833U4MBirXWctF7HUjIHUH9dFvFP9Ap7rnSVNOf vMyceqKSY6IGGUeIhu6DN/Ks4OzLoV9iEewgypaQwSdWQrtt90+2VMpZd6k3Ddd0tepJKP 6UCe6ExZmkrrUnQF17Feoag2Zjzz4NBYqrxp7MuwNHL17RgoXzgTb2+/yeNRHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729754718; a=rsa-sha256; cv=none; b=w5nED1sWIr3vHmBnC5gDDzMs1Df6EE9FdKXDzMfHLh1d8QyX4K3tZtGSu8hCqk8elFOllw JdiZVJvZK3c4EsZvheDAtdZRouKP2nt7j+M2hvg8fpqHKR0vU8Jbq9t9DAWjZJ/Ss79Rro UNTbUQOCDwKwb6iVwqMUvhL08/h4MR9WDw/z1ukWyy6rCVkM9DQr6HoNQRLGYbJDy3VxTa 7m1h+YJkpv6cymHsvS020XQ2+JAli+E1gSSbrEfcbWx7AhL/W20h4e0y21hoR4HaDQ/yOC O4a4exgb46H3OIXeWNaPHjunImniHLoVNuZxFetdcwFk2iOPDWnmq4lD+5esqQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XYy9p62RDzYJ8; Thu, 24 Oct 2024 07:25:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49O7PI6h006683; Thu, 24 Oct 2024 07:25:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49O7PI0t006680; Thu, 24 Oct 2024 07:25:18 GMT (envelope-from git) Date: Thu, 24 Oct 2024 07:25:18 GMT Message-Id: <202410240725.49O7PI0t006680@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Emmanuel Vadot Subject: git: 089664a8db2e - stable/14 - linuxkpi: chase spinlock_t in DECLARE_WAIT_QUEUE_HEAD List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 089664a8db2e16493a4e976939c2237d43f81ada Auto-Submitted: auto-generated The branch stable/14 has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=089664a8db2e16493a4e976939c2237d43f81ada commit 089664a8db2e16493a4e976939c2237d43f81ada Author: Evgenii Khramtsov <2khramtsov@gmail.com> AuthorDate: 2024-08-27 11:21:39 +0000 Commit: Emmanuel Vadot CommitDate: 2024-10-24 07:24:52 +0000 linuxkpi: chase spinlock_t in DECLARE_WAIT_QUEUE_HEAD Remove member m to unbreak consumers, e.g. drm-kmod 5.10-lts branch. [...] /tmp/drm-kmod/drivers/gpu/drm/ttm/ttm_module.c:38:8: error: no member named 'm' in 'struct mtx' 38 | static DECLARE_WAIT_QUEUE_HEAD(exit_q); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/src/sys/compat/linuxkpi/common/include/linux/wait.h:113:33: note: expanded from macro 'DECLARE_WAIT_QUEUE_HEAD' 113 | MTX_SYSINIT(name, &(name).lock.m, spin_lock_name("wqhead"), MTX_DEF) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/src/sys/sys/mutex.h:528:4: note: expanded from macro 'MTX_SYSINIT' 528 | (mtx), \ | ^~~ /tmp/drm-kmod/drivers/gpu/drm/ttm/ttm_module.c:38:8: error: no member named 'm' in 'struct mtx' 38 | static DECLARE_WAIT_QUEUE_HEAD(exit_q); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/src/sys/compat/linuxkpi/common/include/linux/wait.h:113:33: note: expanded from macro 'DECLARE_WAIT_QUEUE_HEAD' 113 | MTX_SYSINIT(name, &(name).lock.m, spin_lock_name("wqhead"), MTX_DEF) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [...] Fixes: ae38a1a1bfdf ("linuxkpi: spinlock: Simplify code") MFC after: ? (cherry picked from commit 84f46335ab5da086c74032579799c0a74aa27447) --- sys/compat/linuxkpi/common/include/linux/wait.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/wait.h b/sys/compat/linuxkpi/common/include/linux/wait.h index b815050b6faa..309c7816aa7b 100644 --- a/sys/compat/linuxkpi/common/include/linux/wait.h +++ b/sys/compat/linuxkpi/common/include/linux/wait.h @@ -110,7 +110,7 @@ extern wait_queue_func_t default_wake_function; wait_queue_head_t name = { \ .task_list = LINUX_LIST_HEAD_INIT(name.task_list), \ }; \ - MTX_SYSINIT(name, &(name).lock.m, spin_lock_name("wqhead"), MTX_DEF) + MTX_SYSINIT(name, &(name).lock, spin_lock_name("wqhead"), MTX_DEF) #define init_waitqueue_head(wqh) do { \ mtx_init(&(wqh)->lock, spin_lock_name("wqhead"), \ From nobody Fri Oct 25 03:28:59 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZSth1kCRz5bBnj; Fri, 25 Oct 2024 03:29:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZSth1Nrbz4bZT; Fri, 25 Oct 2024 03: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=1729826940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1c9bwoSAj9FlNPS/h6Ls/jqBJU0H+4jdkmG7gLm5OK0=; b=uIV1tsGE0620aSbyw2ss2lLOt1299vUkvgPHqvuK3fiu2MaRm5+mJ4qh/bh3JejxoNxYl+ LFJ0iAFKuQMLPQmfErNIGAOa6eHrMvNo33VhqtQ0hjDLYgQhxKZx9gLqvb/KUXOnoRBTnW HavkYU70jpbkkQdL5eDSdm7UDm7jc29vKs3lQ2RtYcCvsvcn3vIoBVCplszg/MzqOTEom2 pWGYE5Psnwn9vhK0dtOwdXBaEY9dJhX29x5BFgQs6bP5yJS1slb8T8gVVHdv5yzLeSADaK oHca7TEhNsqOtv3jmcGRzX4KA+0qJbikKlAdHOY+XBg4hzZNzOCp/p1iFe9kKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1c9bwoSAj9FlNPS/h6Ls/jqBJU0H+4jdkmG7gLm5OK0=; b=kR755RTH6xd1zP6sI4brSdix4eYCZxaj84Oo4L7GoDKMWzfnhtG6T+WtxFWYq3O4Rhpjfq Zsfy+qQ+sfIFQZwuq468Bz/PKAdhQ1oJ6tOkiAIUpcL4ca8xxuK2rddoe2mT3r0aCAw5+C E89gVJrdOBzMmNVl/kw5B8mP+LBaIZg9mBVSernNVZh7nd75qPcFraqBTqvR/+3l4/SHV7 Em1aNgDKcSVapl041l0pyiR32AQgAHUV7gL2WySU97Ic5z4xMpIbkDl8epGVfPV2v1nvYR 1LEUpsRaGMmisLp1HDDbbjmGnKcpsd1PRC5JStdYFPtZWBvJJu8Mp4FpUHneng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729826940; a=rsa-sha256; cv=none; b=tZVkXTN8OGKEGw9ugQkuRsuTgJl2tdIX8SiY+rCojZEInfrnaLHrscDn8s48avGPzwYqKr MIHcQvYVa0Sjejt4rcuYS4jxlDY/kXHP2fXg90maEnRu3lH1uZdEGIPHGXd4UV2lNgQBGH A74Lf6mUg4JVZJqGKF4MdbdMkIfIgUjG4aqzkFChJi0QIuDe1Oh5oUftl9bynvDjYufnIB YcWvjwcRZ8Z/Htpf7WCh1zTASeESXUPPJPMr13pHNO6O8+0y/9eiQnbjg8H8zv/4cBwoo3 JfJNlHOTjdEbyfN1k19xkhjp1ZCzbzhyvnk3WvFCJyHGvNcyhwegAZOtJCb73w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZSth0zfhz18dr; Fri, 25 Oct 2024 03: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 49P3T0ZT030187; Fri, 25 Oct 2024 03: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 49P3Sx3D030177; Fri, 25 Oct 2024 03:28:59 GMT (envelope-from git) Date: Fri, 25 Oct 2024 03:28:59 GMT Message-Id: <202410250328.49P3Sx3D030177@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 0a096a7b3ae8 - stable/14 - unbound: Vendor import 1.22.0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0a096a7b3ae883d08f15bbfa26b33f7cda4aed40 Auto-Submitted: auto-generated The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=0a096a7b3ae883d08f15bbfa26b33f7cda4aed40 commit 0a096a7b3ae883d08f15bbfa26b33f7cda4aed40 Author: Cy Schubert AuthorDate: 2024-10-18 13:59:33 +0000 Commit: Cy Schubert CommitDate: 2024-10-25 03:28:45 +0000 unbound: Vendor import 1.22.0 Release notes at https://nlnetlabs.nl/news/2024/Oct/17/unbound-1.22.0-released/ Merge commit '0a6d797cf6eb751d7eb613900cd19803e05d905f' into main (cherry picked from commit 46d2f61818f594174cafe31ee338c6e083fa1876) --- contrib/unbound/Makefile.in | 19 +- contrib/unbound/aclocal.m4 | 292 +- contrib/unbound/cachedb/cachedb.c | 5 +- contrib/unbound/cachedb/redis.c | 29 +- contrib/unbound/config.h.in | 94 + contrib/unbound/configure | 769 +- contrib/unbound/configure.ac | 74 +- contrib/unbound/contrib/aaaa-filter-iterator.patch | 2 +- contrib/unbound/daemon/daemon.c | 10 + contrib/unbound/daemon/daemon.h | 3 + contrib/unbound/daemon/remote.c | 14 +- contrib/unbound/daemon/stats.c | 14 +- contrib/unbound/daemon/worker.c | 38 +- contrib/unbound/dns64/dns64.c | 5 +- contrib/unbound/dnstap/unbound-dnstap-socket.c | 24 +- contrib/unbound/doc/Changelog | 151 +- contrib/unbound/doc/README | 2 +- contrib/unbound/doc/example.conf.in | 26 +- contrib/unbound/doc/libunbound.3.in | 4 +- contrib/unbound/doc/unbound-anchor.8.in | 2 +- contrib/unbound/doc/unbound-checkconf.8.in | 2 +- contrib/unbound/doc/unbound-control.8.in | 10 +- contrib/unbound/doc/unbound-host.1.in | 2 +- contrib/unbound/doc/unbound.8.in | 4 +- contrib/unbound/doc/unbound.conf.5.in | 71 +- contrib/unbound/doc/unbound.doxygen | 8 +- contrib/unbound/install-sh | 174 +- contrib/unbound/iterator/iter_scrub.c | 45 +- contrib/unbound/iterator/iter_utils.c | 42 + contrib/unbound/iterator/iter_utils.h | 7 + contrib/unbound/iterator/iterator.c | 57 +- contrib/unbound/iterator/iterator.h | 2 +- contrib/unbound/libunbound/context.c | 2 +- contrib/unbound/libunbound/libworker.c | 16 + contrib/unbound/libunbound/unbound.h | 4 + contrib/unbound/ltmain.sh | 866 +- contrib/unbound/services/authzone.c | 39 +- contrib/unbound/services/cache/dns.c | 59 +- contrib/unbound/services/cache/dns.h | 3 +- contrib/unbound/services/cache/rrset.c | 10 +- contrib/unbound/services/listen_dnsport.c | 2534 +++++- contrib/unbound/services/listen_dnsport.h | 405 +- contrib/unbound/services/mesh.c | 13 +- contrib/unbound/services/mesh.h | 3 +- contrib/unbound/services/modstack.c | 2 +- contrib/unbound/services/rpz.c | 19 + .../unbound/smallapp/unbound-control-setup.sh.in | 2 +- contrib/unbound/smallapp/unbound-control.c | 6 + contrib/unbound/smallapp/unbound-host.c | 6 + contrib/unbound/smallapp/worker_cb.c | 16 + contrib/unbound/testcode/doqclient.c | 2701 +++++++ contrib/unbound/testcode/unitdoq.c | 84 + .../unbound/testdata/auth_tls.tdir/auth_tls.dsc | 16 + .../testdata/auth_tls.tdir/auth_tls.nsd.conf | 21 + .../unbound/testdata/auth_tls.tdir/auth_tls.post | 14 + .../unbound/testdata/auth_tls.tdir/auth_tls.pre | 47 + .../unbound/testdata/auth_tls.tdir/auth_tls.test | 48 + .../testdata/auth_tls.tdir/auth_tls.ub.conf | 22 + .../testdata/auth_tls.tdir/example.com.zone | 4 + .../unbound/testdata/auth_tls.tdir/nsd_server.key | 39 + .../unbound/testdata/auth_tls.tdir/nsd_server.pem | 22 + .../testdata/auth_tls.tdir/unbound_server.key | 39 + .../testdata/auth_tls.tdir/unbound_server.pem | 22 + .../auth_tls_failcert.tdir/auth_tls_failcert.dsc | 16 + .../auth_tls_failcert.nsd.conf | 21 + .../auth_tls_failcert.tdir/auth_tls_failcert.post | 14 + .../auth_tls_failcert.tdir/auth_tls_failcert.pre | 47 + .../auth_tls_failcert.tdir/auth_tls_failcert.test | 56 + .../auth_tls_failcert.ub.conf | 23 + .../auth_tls_failcert.tdir/example.com.zone | 4 + .../testdata/auth_tls_failcert.tdir/nsd_server.key | 39 + .../testdata/auth_tls_failcert.tdir/nsd_server.pem | 22 + .../auth_tls_failcert.tdir/unbound_server.key | 39 + .../auth_tls_failcert.tdir/unbound_server.pem | 22 + .../testdata/cookie_file.tdir/cookie_file.test | 6 +- contrib/unbound/testdata/dns64_prefetch_cache.rpl | 195 + .../doq_downstream.tdir/doq_downstream.conf | 21 + .../doq_downstream.tdir/doq_downstream.dsc | 16 + .../doq_downstream.tdir/doq_downstream.post | 13 + .../doq_downstream.tdir/doq_downstream.pre | 44 + .../doq_downstream.tdir/doq_downstream.test | 109 + .../doq_downstream.tdir/doq_downstream.testns | 13 + .../doq_downstream.tdir/unbound_server.key | 15 + .../doq_downstream.tdir/unbound_server.pem | 11 + contrib/unbound/testdata/iter_max_global_quota.rpl | 2236 ++++++ contrib/unbound/testdata/iter_unverified_glue.rpl | 188 + .../testdata/iter_unverified_glue_fallback.rpl | 138 + contrib/unbound/testdata/rpz_val_block.rpl | 643 ++ .../testdata/serve_expired_cached_servfail.rpl | 2 +- .../serve_expired_cached_servfail_refresh.rpl | 2 +- .../serve_expired_client_timeout_val_bogus.rpl | 317 + ...ired_client_timeout_val_insecure_delegation.rpl | 247 + .../unbound/testdata/serve_expired_ttl_reset.rpl | 102 + .../unbound/testdata/serve_expired_val_bogus.rpl | 316 + contrib/unbound/testdata/val_negcache_ttl.rpl | 188 + .../unbound/testdata/val_negcache_ttl_prefetch.rpl | 316 + contrib/unbound/util/alloc.c | 9 + contrib/unbound/util/config_file.c | 55 +- contrib/unbound/util/config_file.h | 23 + contrib/unbound/util/configlexer.c | 8484 ++++++++++---------- contrib/unbound/util/configlexer.lex | 11 +- contrib/unbound/util/configparser.c | 4713 +++++------ contrib/unbound/util/configparser.h | 296 +- contrib/unbound/util/configparser.y | 165 +- contrib/unbound/util/data/msgparse.h | 2 + contrib/unbound/util/data/msgreply.c | 47 +- contrib/unbound/util/data/msgreply.h | 39 +- contrib/unbound/util/data/packed_rrset.h | 3 + contrib/unbound/util/fptr_wlist.c | 17 + contrib/unbound/util/locks.h | 1 + contrib/unbound/util/log.c | 36 + contrib/unbound/util/log.h | 6 + contrib/unbound/util/module.h | 8 +- contrib/unbound/util/netevent.c | 2067 ++++- contrib/unbound/util/netevent.h | 164 + contrib/unbound/validator/val_neg.c | 6 +- contrib/unbound/validator/val_nsec3.c | 6 +- contrib/unbound/validator/validator.c | 81 +- contrib/unbound/validator/validator.h | 2 +- lib/libunbound/config.h | 8 +- 120 files changed, 22786 insertions(+), 7989 deletions(-) diff --git a/contrib/unbound/Makefile.in b/contrib/unbound/Makefile.in index 672435e01e9f..c262250ca2c5 100644 --- a/contrib/unbound/Makefile.in +++ b/contrib/unbound/Makefile.in @@ -179,11 +179,11 @@ testcode/unitlruhash.c testcode/unitmain.c testcode/unitmsgparse.c \ testcode/unitneg.c testcode/unitregional.c testcode/unitslabhash.c \ testcode/unitverify.c testcode/readhex.c testcode/testpkts.c testcode/unitldns.c \ testcode/unitecs.c testcode/unitauth.c testcode/unitzonemd.c \ -testcode/unittcpreuse.c +testcode/unittcpreuse.c testcode/unitdoq.c UNITTEST_OBJ=unitanchor.lo unitdname.lo unitlruhash.lo unitmain.lo \ unitmsgparse.lo unitneg.lo unitregional.lo unitslabhash.lo unitverify.lo \ readhex.lo testpkts.lo unitldns.lo unitecs.lo unitauth.lo unitzonemd.lo \ -unittcpreuse.lo +unittcpreuse.lo unitdoq.lo UNITTEST_OBJ_LINK=$(UNITTEST_OBJ) worker_cb.lo $(COMMON_OBJ) $(SLDNS_OBJ) \ $(COMPAT_OBJ) DAEMON_SRC=daemon/acl_list.c daemon/cachedump.c daemon/daemon.c \ @@ -242,6 +242,10 @@ DOHCLIENT_SRC=testcode/dohclient.c DOHCLIENT_OBJ=dohclient.lo DOHCLIENT_OBJ_LINK=$(DOHCLIENT_OBJ) worker_cb.lo $(COMMON_OBJ) $(COMPAT_OBJ) \ $(SLDNS_OBJ) +DOQCLIENT_SRC=testcode/doqclient.c +DOQCLIENT_OBJ=doqclient.lo +DOQCLIENT_OBJ_LINK=$(DOQCLIENT_OBJ) $(COMMON_OBJ) $(COMPAT_OBJ) \ +$(SLDNS_OBJ) PERF_SRC=testcode/perf.c PERF_OBJ=perf.lo PERF_OBJ_LINK=$(PERF_OBJ) worker_cb.lo $(COMMON_OBJ) $(COMPAT_OBJ) $(SLDNS_OBJ) @@ -288,7 +292,7 @@ ALL_SRC=$(COMMON_SRC) $(UNITTEST_SRC) $(DAEMON_SRC) \ $(CONTROL_SRC) $(UBANCHOR_SRC) $(PETAL_SRC) $(DNSTAP_SOCKET_SRC)\ $(PYTHONMOD_SRC) $(PYUNBOUND_SRC) $(WIN_DAEMON_THE_SRC) \ $(SVCINST_SRC) $(SVCUNINST_SRC) $(ANCHORUPD_SRC) $(SLDNS_SRC) \ - $(DOHCLIENT_SRC) $(READZONE_SRC) + $(DOHCLIENT_SRC) $(DOQCLIENT_SRC) $(READZONE_SRC) ALL_OBJ=$(COMMON_OBJ) $(UNITTEST_OBJ) $(DAEMON_OBJ) \ $(TESTBOUND_OBJ) $(LOCKVERIFY_OBJ) $(PKTVIEW_OBJ) \ @@ -297,7 +301,7 @@ ALL_OBJ=$(COMMON_OBJ) $(UNITTEST_OBJ) $(DAEMON_OBJ) \ $(CONTROL_OBJ) $(UBANCHOR_OBJ) $(PETAL_OBJ) $(DNSTAP_SOCKET_OBJ)\ $(COMPAT_OBJ) $(PYUNBOUND_OBJ) \ $(SVCINST_OBJ) $(SVCUNINST_OBJ) $(ANCHORUPD_OBJ) $(SLDNS_OBJ) \ - $(DOHCLIENT_OBJ) $(READZONE_OBJ) + $(DOHCLIENT_OBJ) $(DOQCLIENT_OBJ) $(READZONE_OBJ) COMPILE=$(LIBTOOL) --tag=CC --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS) @PTHREAD_CFLAGS_ONLY@ LINK=$(LIBTOOL) --tag=CC --mode=link $(CC) $(staticexe) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) @@ -334,7 +338,7 @@ rsrc_unbound_checkconf.o: $(srcdir)/winrc/rsrc_unbound_checkconf.rc config.h TEST_BIN=asynclook$(EXEEXT) delayer$(EXEEXT) \ lock-verify$(EXEEXT) memstats$(EXEEXT) perf$(EXEEXT) \ petal$(EXEEXT) pktview$(EXEEXT) streamtcp$(EXEEXT) \ - $(DNSTAP_SOCKET_TESTBIN) dohclient$(EXEEXT) \ + $(DNSTAP_SOCKET_TESTBIN) dohclient$(EXEEXT) doqclient$(EXEEXT) \ testbound$(EXEEXT) unittest$(EXEEXT) readzone$(EXEEXT) tests: all $(TEST_BIN) @@ -416,6 +420,9 @@ streamtcp$(EXEEXT): $(STREAMTCP_OBJ_LINK) dohclient$(EXEEXT): $(DOHCLIENT_OBJ_LINK) $(LINK) -o $@ $(DOHCLIENT_OBJ_LINK) $(SSLLIB) $(LIBS) +doqclient$(EXEEXT): $(DOQCLIENT_OBJ_LINK) + $(LINK) -o $@ $(DOQCLIENT_OBJ_LINK) $(SSLLIB) $(LIBS) + perf$(EXEEXT): $(PERF_OBJ_LINK) $(LINK) -o $@ $(PERF_OBJ_LINK) $(SSLLIB) $(LIBS) @@ -703,6 +710,8 @@ depend: # build rules ipset.lo ipset.o: $(srcdir)/ipset/ipset.c +doqclient.lo doqclient.o: $(srcdir)/testcode/doqclient.c +unitdoq.lo unitdoq.o: $(srcdir)/testcode/unitdoq.c # Dependencies dns.lo dns.o: $(srcdir)/services/cache/dns.c config.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h \ diff --git a/contrib/unbound/aclocal.m4 b/contrib/unbound/aclocal.m4 index 364e37267d00..bf3c57e2fd9f 100644 --- a/contrib/unbound/aclocal.m4 +++ b/contrib/unbound/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16.5 -*- Autoconf -*- +# generated automatically by aclocal 1.16.2 -*- Autoconf -*- -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,8 +14,7 @@ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # -# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software -# Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@ -46,7 +45,7 @@ m4_define([_LT_COPYING], [dnl # along with this program. If not, see . ]) -# serial 59 LT_INIT +# serial 58 LT_INIT # LT_PREREQ(VERSION) @@ -196,7 +195,6 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl -m4_require([_LT_DECL_FILECMD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl @@ -235,8 +233,8 @@ esac ofile=libtool can_build_shared=yes -# All known linkers require a '.a' archive for static linking (except MSVC and -# ICC, which need '.lib'). +# All known linkers require a '.a' archive for static linking (except MSVC, +# which needs '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld @@ -788,7 +786,7 @@ _LT_EOF # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? - $SED '$q' "$ltmain" >> "$cfgfile" \ + sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || @@ -1050,8 +1048,8 @@ int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD - echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD - $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF @@ -1075,12 +1073,17 @@ _LT_EOF _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) - case $MACOSX_DEPLOYMENT_TARGET,$host in - 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - *) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[[012]][[,.]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac @@ -1129,12 +1132,12 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES], output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], [ if test yes != "$lt_cv_apple_cc_single_mod"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else @@ -1248,8 +1251,7 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], -[m4_require([_LT_DECL_SED])dnl -AC_MSG_CHECKING([for sysroot]) +[AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot @@ -1266,7 +1268,7 @@ case $with_sysroot in #( fi ;; #( /*) - lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( @@ -1296,7 +1298,7 @@ ia64-*-hpux*) # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; @@ -1313,7 +1315,7 @@ ia64-*-hpux*) echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; @@ -1325,7 +1327,7 @@ ia64-*-hpux*) ;; esac else - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; @@ -1347,7 +1349,7 @@ mips64*-*linux*) echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; @@ -1355,7 +1357,7 @@ mips64*-*linux*) emul="${emul}64" ;; esac - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; @@ -1363,7 +1365,7 @@ mips64*-*linux*) emul="${emul}ltsmip" ;; esac - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; @@ -1383,14 +1385,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; @@ -1458,7 +1460,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) @@ -1497,22 +1499,9 @@ need_locks=$enable_libtool_lock m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} +: ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) - -# Use ARFLAGS variable as AR's operation code to sync the variable naming with -# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have -# higher priority because thats what people were doing historically (setting -# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS -# variable obsoleted/removed. - -test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} -lt_ar_flags=$AR_FLAGS -_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) - -# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override -# by AR_FLAGS because that was never working and AR_FLAGS is about to die. -_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], - [Flags to create an archive]) +_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no @@ -1731,7 +1720,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl lt_cv_sys_max_cmd_len=8192; ;; - bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -1774,7 +1763,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi @@ -2224,35 +2213,26 @@ m4_defun([_LT_CMD_STRIPLIB], striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -z "$STRIP"; then - AC_MSG_RESULT([no]) +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) else - if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - case $host_os in - darwin*) - # FIXME - insert some real tests, host_os isn't really good enough +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) - ;; - freebsd*) - if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - fi - ;; - *) + else AC_MSG_RESULT([no]) - ;; - esac - fi + fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) @@ -2575,7 +2555,7 @@ cygwin* | mingw* | pw32* | cegcc*) case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; @@ -2585,14 +2565,14 @@ m4_if([$1], [],[ ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; - *,cl* | *,icl*) - # Native MSVC or ICC + *,cl*) + # Native MSVC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' @@ -2611,7 +2591,7 @@ m4_if([$1], [],[ done IFS=$lt_save_ifs # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form @@ -2648,7 +2628,7 @@ m4_if([$1], [],[ ;; *) - # Assume MSVC and ICC wrapper + # Assume MSVC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; @@ -2681,7 +2661,7 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd* | dragonfly* | midnightbsd*) +freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then @@ -3483,7 +3463,7 @@ beos*) bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='$FILECMD -L' + lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; @@ -3517,14 +3497,14 @@ darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; -freebsd* | dragonfly* | midnightbsd*) +freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac @@ -3538,7 +3518,7 @@ haiku*) ;; hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' @@ -3585,7 +3565,7 @@ netbsd*) newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; @@ -3712,13 +3692,13 @@ else mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) - case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 @@ -3744,7 +3724,7 @@ else # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; @@ -3984,7 +3964,7 @@ esac if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" @@ -4002,20 +3982,20 @@ fi # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ @@ -4039,7 +4019,7 @@ for ac_symprfx in "" "_"; do if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++ or ICC, + # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ @@ -4057,9 +4037,9 @@ for ac_symprfx in "" "_"; do " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else - lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@ -4346,7 +4326,7 @@ m4_if([$1], [CXX], [ ;; esac ;; - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@ -4429,7 +4409,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4765,7 +4745,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4948,7 +4928,7 @@ m4_if([$1], [CXX], [ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) @@ -4956,7 +4936,7 @@ m4_if([$1], [CXX], [ ;; cygwin* | mingw* | cegcc*) case $cc_basename in - cl* | icl*) + cl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) @@ -5013,15 +4993,15 @@ dnl Note also adjust exclude_expsyms for C++ above. case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time + # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. + # Microsoft Visual C++. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) + # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd* | bitrig*) @@ -5073,7 +5053,7 @@ dnl Note also adjust exclude_expsyms for C++ above. _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no - case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in + case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -5185,7 +5165,6 @@ _LT_EOF emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; interix[[3-9]]*) @@ -5200,7 +5179,7 @@ _LT_EOF # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) @@ -5243,7 +5222,7 @@ _LT_EOF _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes @@ -5255,7 +5234,7 @@ _LT_EOF if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi @@ -5271,7 +5250,7 @@ _LT_EOF _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi @@ -5403,7 +5382,7 @@ _LT_EOF if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no @@ -5586,12 +5565,12 @@ _LT_EOF cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. + # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in - cl* | icl*) - # Native MSVC or ICC + cl*) + # Native MSVC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes @@ -5632,7 +5611,7 @@ _LT_EOF fi' ;; *) - # Assume MSVC and ICC wrapper + # Assume MSVC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. @@ -5680,7 +5659,7 @@ _LT_EOF ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes @@ -5891,7 +5870,6 @@ _LT_EOF emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; osf3*) @@ -6658,8 +6636,8 @@ if test yes != "$_lt_caught_CXX_error"; then cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in - ,cl* | no,cl* | ,icl* | no,icl*) - # Native MSVC or ICC + ,cl* | no,cl*) + # Native MSVC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' @@ -6757,7 +6735,6 @@ if test yes != "$_lt_caught_CXX_error"; then emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; dgux*) @@ -6788,7 +6765,7 @@ if test yes != "$_lt_caught_CXX_error"; then _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes @@ -6925,7 +6902,7 @@ if test yes != "$_lt_caught_CXX_error"; then # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in @@ -7065,13 +7042,13 @@ if test yes != "$_lt_caught_CXX_error"; then _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' @@ -8209,14 +8186,6 @@ _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) AC_SUBST([DLLTOOL]) ]) -# _LT_DECL_FILECMD -# ---------------- -# Check for a file(cmd) program that can be used to detect file type and magic -m4_defun([_LT_DECL_FILECMD], -[AC_CHECK_TOOL([FILECMD], [file], [:]) -_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) -])# _LD_DECL_FILECMD - # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates @@ -8396,8 +8365,8 @@ _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], # Helper functions for option handling. -*- Autoconf -*- # -# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free -# Software Foundation, Inc. +# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software +# Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives @@ -8828,7 +8797,7 @@ LT_OPTION_DEFINE([LTDL_INIT], [convenience], # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software +# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # @@ -8953,8 +8922,7 @@ m4_define([lt_dict_filter], # ltversion.m4 -- version numbers -*- Autoconf -*- # -# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, -# Inc. +# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@ -8963,23 +8931,23 @@ m4_define([lt_dict_filter], # @configure_input@ -# serial 4245 ltversion.m4 +# serial 4179 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.7]) -m4_define([LT_PACKAGE_REVISION], [2.4.7]) +m4_define([LT_PACKAGE_VERSION], [2.4.6]) +m4_define([LT_PACKAGE_REVISION], [2.4.6]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.7' -macro_revision='2.4.7' +[macro_version='2.4.6' +macro_revision='2.4.6' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- *** 39660 LINES SKIPPED *** From nobody Fri Oct 25 03:29:01 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZStj4HPHz5bCJP; Fri, 25 Oct 2024 03:29:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZStj3Ywdz4bfT; Fri, 25 Oct 2024 03: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=1729826941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cJEh1xaKIsmv4ng/dK1/SVcFu5qbjazzSH0t1KXjSFg=; b=CxSnaKjW06EbsC0aAOVATgEQCwjjcJGs8qDCJNZb4Lsmg4+oeN2MAaepvDeagwb7Ef+AuU 4hGBnA+rgv/dxk4xinejs54NixH9S67gWueiKHH68+kwkkIHwUBqIZK/K+Aqippxedx/8N UQaDq5YnZCMeq3CT7+3Fv3EenS41gJhHpPSTuEYvyScAn50T0+KpP0hSViQ0Kj14Q55Dzv pbRlh8Vg+bQ3HfVgvxV/LkWYZC7ra2oXlSnyQWfU5NtLwuHZQq5W5N5redKGeQdtrcFF3K f3ur+SIAlJFgfQCkTMS1xRikgRumDeUhOpJU5lHV8obrNz9JbEUCFcC4zptjYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cJEh1xaKIsmv4ng/dK1/SVcFu5qbjazzSH0t1KXjSFg=; b=ZYMsvkEVR6161JhBPAmif9TTqhggFR9/44tzJ43hHu/4ymfkhZ1gx9JQ1gEeoYYCKWLZIb ezCUIrO2HUwIOCEwV+pIC0SpRzx9jNRNoHmVNheRJjNg4gfmtHoDC0qDuU06VtazOROhHr Hfj22yEri2MXZ5fFyGHv9eOgi2Mebe2hRsf0qBhthH0z++S6/7dzrHtfAcDU+hVVvQN0jM lCbeHnBY/lY8uiCEaHwjr1Y24z4D1SVcoWh/pTu2pISEHksGX0/lcDEUtyncehHnY0dl97 qKLOg8ex77efVszdxkXjEg/sEnI4Jn1c6GfsAP3eil+IVQts4xQxJrgcfpJSpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729826941; a=rsa-sha256; cv=none; b=veqrRXqHw67RdJPwyrB8t7prGGWyf+4QQK1npxHlkjK1tADkqIV03Skqq0DF5ENxjLPDez F0w1lzPxuW6BWHL7er/WrzIfr+3TKmkc5xUksRo2Luk9eCT/tZbXglKTBWW0RgVixg+zE2 KE5m1mMYV06yOwplsdBukC+dKOgzFQxTF0g885yFj04Bhd4t9Zky6TtX7tJjxvx/gSDPwu Ku9Eb81iuDnKcGaG+RZCrXYQZfJJnjEJVyty4P4TORV/azSzwIlh48qZqJMPeVCtAdDjWU D+BsDMEPtsbZ2VO1q8K5UnhK//kPBj0F3SZ3wQyQG/b2Zjx6cxALm7qIHzU+rQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZStj2gjtz18Pg; Fri, 25 Oct 2024 03: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 49P3T1Rt030234; Fri, 25 Oct 2024 03: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 49P3T1A6030231; Fri, 25 Oct 2024 03:29:01 GMT (envelope-from git) Date: Fri, 25 Oct 2024 03:29:01 GMT Message-Id: <202410250329.49P3T1A6030231@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: b45cf7181e5b - stable/14 - unbound: Remove testcode and testdata List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b45cf7181e5bd1b866b8e1b067376c3820a3b455 Auto-Submitted: auto-generated The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=b45cf7181e5bd1b866b8e1b067376c3820a3b455 commit b45cf7181e5bd1b866b8e1b067376c3820a3b455 Author: Cy Schubert AuthorDate: 2024-10-18 14:14:41 +0000 Commit: Cy Schubert CommitDate: 2024-10-25 03:28:45 +0000 unbound: Remove testcode and testdata The testcode and testdata directories are not used by FreeBSD. Remove them. MFC after: 1 week (cherry picked from commit 0c2af19e78a0a8dbbf305b74c944b5758578ea30) --- contrib/unbound/testcode/doqclient.c | 2701 -------------------- contrib/unbound/testcode/unitdoq.c | 84 - contrib/unbound/testdata/00-lint.tdir/00-lint.pre | 14 - .../09-unbound-control.tdir/conf.bad_credentials | 5 - .../conf.spoofed_credentials | 5 - .../09-unbound-control.tdir/view_local_data | 4 - .../09-unbound-control.tdir/view_local_data_remove | 4 - .../testdata/acl_interface.tdir/rpz-nx.zone | 3 - .../testdata/acl_interface.tdir/rpz-one.zone | 3 - .../testdata/acl_interface.tdir/rpz-two.zone | 3 - .../unbound/testdata/auth_tls.tdir/auth_tls.dsc | 16 - .../testdata/auth_tls.tdir/auth_tls.nsd.conf | 21 - .../unbound/testdata/auth_tls.tdir/auth_tls.post | 14 - .../unbound/testdata/auth_tls.tdir/auth_tls.pre | 47 - .../unbound/testdata/auth_tls.tdir/auth_tls.test | 48 - .../testdata/auth_tls.tdir/auth_tls.ub.conf | 22 - .../testdata/auth_tls.tdir/example.com.zone | 4 - .../unbound/testdata/auth_tls.tdir/nsd_server.key | 39 - .../unbound/testdata/auth_tls.tdir/nsd_server.pem | 22 - .../testdata/auth_tls.tdir/unbound_server.key | 39 - .../testdata/auth_tls.tdir/unbound_server.pem | 22 - .../auth_tls_failcert.tdir/auth_tls_failcert.dsc | 16 - .../auth_tls_failcert.nsd.conf | 21 - .../auth_tls_failcert.tdir/auth_tls_failcert.post | 14 - .../auth_tls_failcert.tdir/auth_tls_failcert.pre | 47 - .../auth_tls_failcert.tdir/auth_tls_failcert.test | 56 - .../auth_tls_failcert.ub.conf | 23 - .../auth_tls_failcert.tdir/example.com.zone | 4 - .../testdata/auth_tls_failcert.tdir/nsd_server.key | 39 - .../testdata/auth_tls_failcert.tdir/nsd_server.pem | 22 - .../auth_tls_failcert.tdir/unbound_server.key | 39 - .../auth_tls_failcert.tdir/unbound_server.pem | 22 - contrib/unbound/testdata/cachedb_cached_ede.crpl | 91 - contrib/unbound/testdata/cachedb_expired.crpl | 324 --- .../testdata/cachedb_expired_client_timeout.crpl | 343 --- .../testdata/cachedb_expired_reply_ttl.crpl | 259 -- .../cachedb_no_store.tdir/cachedb_no_store.conf | 29 - .../cachedb_no_store.tdir/cachedb_no_store.dsc | 16 - .../cachedb_no_store.tdir/cachedb_no_store.post | 20 - .../cachedb_no_store.tdir/cachedb_no_store.pre | 36 - .../cachedb_no_store.servfail.testns | 8 - .../cachedb_no_store.tdir/cachedb_no_store.test | 132 - .../cachedb_no_store.tdir/cachedb_no_store.testns | 9 - .../unbound/testdata/cachedb_servfail_cname.crpl | 181 -- .../unbound/testdata/cachedb_subnet_change.crpl | 304 --- .../unbound/testdata/cachedb_subnet_expired.crpl | 322 --- .../testdata/cachedb_subnet_toecs_timeout.crpl | 229 -- contrib/unbound/testdata/cachedb_val_expired.crpl | 327 --- .../testdata/cookie_file.tdir/cookie_file.conf | 19 - .../testdata/cookie_file.tdir/cookie_file.dsc | 16 - .../testdata/cookie_file.tdir/cookie_file.pre | 24 - .../testdata/cookie_file.tdir/cookie_file.test | 250 -- contrib/unbound/testdata/disable_edns_do.rpl | 164 -- contrib/unbound/testdata/dns64_prefetch_cache.rpl | 195 -- .../doq_downstream.tdir/doq_downstream.conf | 21 - .../doq_downstream.tdir/doq_downstream.dsc | 16 - .../doq_downstream.tdir/doq_downstream.post | 13 - .../doq_downstream.tdir/doq_downstream.pre | 44 - .../doq_downstream.tdir/doq_downstream.test | 109 - .../doq_downstream.tdir/doq_downstream.testns | 13 - .../doq_downstream.tdir/unbound_server.key | 15 - .../doq_downstream.tdir/unbound_server.pem | 11 - .../unbound/testdata/edns_downstream_cookies.rpl | 235 -- contrib/unbound/testdata/fwd_name_lookup.rpl | 152 -- .../testdata/ip_ratelimit.tdir/ip_ratelimit.conf | 28 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.dsc | 16 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.post | 13 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.pre | 24 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.test | 165 -- .../testdata/ip_ratelimit.tdir/unbound_control.key | 39 - .../testdata/ip_ratelimit.tdir/unbound_control.pem | 22 - .../testdata/ip_ratelimit.tdir/unbound_server.key | 39 - .../testdata/ip_ratelimit.tdir/unbound_server.pem | 22 - .../unbound/testdata/iter_cname_minimise_nx.rpl | 245 -- contrib/unbound/testdata/iter_dname_ttl.rpl | 271 -- contrib/unbound/testdata/iter_failreply.rpl | 132 - .../testdata/iter_ghost_grandchild_delegation.rpl | 256 -- contrib/unbound/testdata/iter_ignore_empty.rpl | 248 -- contrib/unbound/testdata/iter_max_global_quota.rpl | 2236 ---------------- contrib/unbound/testdata/iter_nat64.rpl | 117 - contrib/unbound/testdata/iter_nat64_prefix.rpl | 119 - contrib/unbound/testdata/iter_nat64_prefix48.rpl | 118 - contrib/unbound/testdata/iter_scrub_rr_length.rpl | 298 --- contrib/unbound/testdata/iter_unverified_glue.rpl | 188 -- .../testdata/iter_unverified_glue_fallback.rpl | 138 - contrib/unbound/testdata/local_cnameother.rpl | 67 - .../testdata/root_zonemd.tdir/root_zonemd.conf | 34 - .../testdata/root_zonemd.tdir/root_zonemd.dsc | 16 - .../testdata/root_zonemd.tdir/root_zonemd.post | 14 - .../testdata/root_zonemd.tdir/root_zonemd.pre | 50 - .../testdata/root_zonemd.tdir/root_zonemd.test | 63 - .../testdata/root_zonemd.tdir/root_zonemd.testns | 9 - contrib/unbound/testdata/rpz_cached_cname.rpl | 122 - contrib/unbound/testdata/rpz_clientip_override.rpl | 269 -- contrib/unbound/testdata/rpz_cname_handle.rpl | 779 ------ contrib/unbound/testdata/rpz_cname_tag.rpl | 281 -- contrib/unbound/testdata/rpz_nsdname_override.rpl | 325 --- contrib/unbound/testdata/rpz_nsip_override.rpl | 332 --- contrib/unbound/testdata/rpz_passthru_clientip.rpl | 90 - contrib/unbound/testdata/rpz_qtype_cname.rpl | 120 - .../testdata/rpz_reload.tdir/example.org.zone | 2 - .../testdata/rpz_reload.tdir/rpz.example.com.zone | 6 - .../testdata/rpz_reload.tdir/rpz_reload.conf | 30 - .../testdata/rpz_reload.tdir/rpz_reload.dsc | 16 - .../testdata/rpz_reload.tdir/rpz_reload.post | 12 - .../testdata/rpz_reload.tdir/rpz_reload.pre | 26 - .../testdata/rpz_reload.tdir/rpz_reload.test | 109 - contrib/unbound/testdata/rpz_val_block.rpl | 643 ----- contrib/unbound/testdata/rrset_use_cached.rpl | 151 -- .../unbound/testdata/serve_expired_0ttl_nodata.rpl | 154 -- .../testdata/serve_expired_0ttl_nxdomain.rpl | 154 -- .../testdata/serve_expired_0ttl_servfail.rpl | 129 - .../testdata/serve_expired_cached_servfail.rpl | 130 - .../serve_expired_cached_servfail_refresh.rpl | 145 -- .../serve_expired_client_timeout_val_bogus.rpl | 317 --- ...ired_client_timeout_val_insecure_delegation.rpl | 247 -- .../unbound/testdata/serve_expired_ttl_reset.rpl | 102 - .../unbound/testdata/serve_expired_val_bogus.rpl | 316 --- .../stat_values.tdir/stat_values_cachedb.conf | 36 - .../stat_values_downstream_cookies.conf | 32 - contrib/unbound/testdata/subnet_cached_ede.crpl | 114 - .../unbound/testdata/subnet_cached_servfail.crpl | 167 -- contrib/unbound/testdata/subnet_cached_size.crpl | 308 --- .../unbound/testdata/subnet_global_prefetch.crpl | 236 -- .../subnet_global_prefetch_always_forward.crpl | 167 -- .../testdata/subnet_global_prefetch_expired.crpl | 241 -- contrib/unbound/testdata/subnet_prezero.crpl | 155 -- .../unbound/testdata/subnet_scopezero_noedns.crpl | 441 ---- contrib/unbound/testdata/ttl_max_negative.rpl | 206 -- contrib/unbound/testdata/ttl_min_negative.rpl | 204 -- contrib/unbound/testdata/val_any_negcache.rpl | 243 -- contrib/unbound/testdata/val_cnameqtype_qmin.rpl | 784 ------ contrib/unbound/testdata/val_dname_twice.rpl | 226 -- contrib/unbound/testdata/val_dnameqtype.rpl | 689 ----- contrib/unbound/testdata/val_dnameqtype_qmin.rpl | 859 ------- contrib/unbound/testdata/val_failure_dnskey.rpl | 348 --- contrib/unbound/testdata/val_negcache_ttl.rpl | 188 -- .../unbound/testdata/val_negcache_ttl_prefetch.rpl | 316 --- contrib/unbound/testdata/val_scrub_rr_length.rpl | 164 -- 139 files changed, 23468 deletions(-) diff --git a/contrib/unbound/testcode/doqclient.c b/contrib/unbound/testcode/doqclient.c deleted file mode 100644 index 1a2fd418359b..000000000000 --- a/contrib/unbound/testcode/doqclient.c +++ /dev/null @@ -1,2701 +0,0 @@ -/* - * testcode/doqclient.c - debug program. Perform multiple DNS queries using DoQ. - * - * Copyright (c) 2022, NLnet Labs. All rights reserved. - * - * This software is open source. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * Neither the name of the NLNET LABS nor the names of its contributors may - * be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * \file - * - * Simple DNS-over-QUIC client. For testing and debugging purposes. - * No authentication of TLS cert. - */ - -#include "config.h" -#ifdef HAVE_GETOPT_H -#include -#endif - -#ifdef HAVE_NGTCP2 -#include -#include -#ifdef HAVE_NGTCP2_NGTCP2_CRYPTO_QUICTLS_H -#include -#else -#include -#endif -#include -#include -#ifdef HAVE_TIME_H -#include -#endif -#include -#include "util/locks.h" -#include "util/net_help.h" -#include "sldns/sbuffer.h" -#include "sldns/str2wire.h" -#include "sldns/wire2str.h" -#include "util/data/msgreply.h" -#include "util/data/msgencode.h" -#include "util/data/msgparse.h" -#include "util/data/dname.h" -#include "util/random.h" -#include "util/ub_event.h" -struct doq_client_stream_list; -struct doq_client_stream; - -/** the local client data for the DoQ connection */ -struct doq_client_data { - /** file descriptor */ - int fd; - /** the event base for the events */ - struct ub_event_base* base; - /** the ub event */ - struct ub_event* ev; - /** the expiry timer */ - struct ub_event* expire_timer; - /** is the expire_timer added */ - int expire_timer_added; - /** the ngtcp2 connection information */ - struct ngtcp2_conn* conn; - /** random state */ - struct ub_randstate* rnd; - /** server connected to as a string */ - const char* svr; - /** the static secret */ - uint8_t* static_secret_data; - /** the static secret size */ - size_t static_secret_size; - /** destination address sockaddr */ - struct sockaddr_storage dest_addr; - /** length of dest addr */ - socklen_t dest_addr_len; - /** local address sockaddr */ - struct sockaddr_storage local_addr; - /** length of local addr */ - socklen_t local_addr_len; - /** SSL context */ - SSL_CTX* ctx; - /** SSL object */ - SSL* ssl; -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - /** the connection reference for ngtcp2_conn and userdata in ssl */ - struct ngtcp2_crypto_conn_ref conn_ref; -#endif - /** the quic version to use */ - uint32_t quic_version; - /** the last error */ -#ifdef HAVE_NGTCP2_CCERR_DEFAULT - struct ngtcp2_ccerr ccerr; -#else - struct ngtcp2_connection_close_error last_error; -#endif - /** the recent tls alert error code */ - uint8_t tls_alert; - /** the buffer for packet operations */ - struct sldns_buffer* pkt_buf; - /** The list of queries to start. They have no stream associated. - * Once they do, they move to the send list. */ - struct doq_client_stream_list* query_list_start; - /** The list of queries to send. They have a stream, and they are - * sending data. Data could also be received, like errors. */ - struct doq_client_stream_list* query_list_send; - /** The list of queries to receive. They have a stream, and the - * send is done, it is possible to read data. */ - struct doq_client_stream_list* query_list_receive; - /** The list of queries that are stopped. They have no stream - * active any more. Write and read are done. The query is done, - * and it may be in error and then have no answer or partial answer. */ - struct doq_client_stream_list* query_list_stop; - /** is there a blocked packet in the blocked_pkt buffer */ - int have_blocked_pkt; - /** store blocked packet, a packet that could not be sent on the - * nonblocking socket. */ - struct sldns_buffer* blocked_pkt; - /** ecn info for the blocked packet */ - struct ngtcp2_pkt_info blocked_pkt_pi; - /** the congestion control algorithm */ - ngtcp2_cc_algo cc_algo; - /** the transport parameters file, for early data transmission */ - const char* transport_file; - /** the tls session file, for session resumption */ - const char* session_file; - /** if early data is enabled for the connection */ - int early_data_enabled; - /** how quiet is the output */ - int quiet; - /** the configured port for the destination */ - int port; -}; - -/** the local client stream list, for appending streams to */ -struct doq_client_stream_list { - /** first and last members of the list */ - struct doq_client_stream* first, *last; -}; - -/** the local client data for a DoQ stream */ -struct doq_client_stream { - /** next stream in list, and prev in list */ - struct doq_client_stream* next, *prev; - /** the data buffer */ - uint8_t* data; - /** length of the data buffer */ - size_t data_len; - /** if the client query has a stream, that is active, associated with - * it. The stream_id is in stream_id. */ - int has_stream; - /** the stream id */ - int64_t stream_id; - /** data written position */ - size_t nwrite; - /** the data length for write, in network format */ - uint16_t data_tcplen; - /** if the write of the query data is done. That means the - * write channel has FIN, is closed for writing. */ - int write_is_done; - /** data read position */ - size_t nread; - /** the answer length, in network byte order */ - uint16_t answer_len; - /** the answer buffer */ - struct sldns_buffer* answer; - /** the answer is complete */ - int answer_is_complete; - /** the query has an error, it has no answer, or no complete answer */ - int query_has_error; - /** if the query is done */ - int query_is_done; -}; - -#ifndef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT -/** the quic method struct, must remain valid during the QUIC connection. */ -static SSL_QUIC_METHOD quic_method; -#endif - -/** Get the connection ngtcp2_conn from the ssl app data - * ngtcp2_crypto_conn_ref */ -static ngtcp2_conn* conn_ref_get_conn(ngtcp2_crypto_conn_ref* conn_ref) -{ - struct doq_client_data* data = (struct doq_client_data*) - conn_ref->user_data; - return data->conn; -} - -static void -set_app_data(SSL* ssl, struct doq_client_data* data) -{ -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - data->conn_ref.get_conn = &conn_ref_get_conn; - data->conn_ref.user_data = data; - SSL_set_app_data(ssl, &data->conn_ref); -#else - SSL_set_app_data(ssl, data); -#endif -} - -static struct doq_client_data* -get_app_data(SSL* ssl) -{ - struct doq_client_data* data; -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - data = (struct doq_client_data*)((struct ngtcp2_crypto_conn_ref*) - SSL_get_app_data(ssl))->user_data; -#else - data = (struct doq_client_data*) SSL_get_app_data(ssl); -#endif - return data; -} - - - -/** write handle routine */ -static void on_write(struct doq_client_data* data); -/** update the timer */ -static void update_timer(struct doq_client_data* data); -/** disconnect we are done */ -static void disconnect(struct doq_client_data* data); -/** fetch and write the transport file */ -static void early_data_write_transport(struct doq_client_data* data); - -/** usage of doqclient */ -static void usage(char* argv[]) -{ - printf("usage: %s [options] name type class ...\n", argv[0]); - printf(" sends the name-type-class queries over " - "DNS-over-QUIC.\n"); - printf("-s server IP address to send the queries to, " - "default: 127.0.0.1\n"); - printf("-p Port to connect to, default: %d\n", - UNBOUND_DNS_OVER_QUIC_PORT); - printf("-v verbose output\n"); - printf("-q quiet, short output of answer\n"); - printf("-x file transport file, for read/write of transport parameters.\n\t\tIf it exists, it is used to send early data. It is then\n\t\twritten to contain the last used transport parameters.\n\t\tAlso -y must be enabled for early data to succeed.\n"); - printf("-y file session file, for read/write of TLS session. If it exists,\n\t\tit is used for TLS session resumption. It is then written\n\t\tto contain the last session used.\n\t\tOn its own, without also -x, resumes TLS session.\n"); - printf("-h This help text\n"); - exit(1); -} - -/** get the dest address */ -static void -get_dest_addr(struct doq_client_data* data, const char* svr, int port) -{ - if(!ipstrtoaddr(svr, port, &data->dest_addr, &data->dest_addr_len)) { - printf("fatal: bad server specs '%s'\n", svr); - exit(1); - } -} - -/** open UDP socket to svr */ -static int -open_svr_udp(struct doq_client_data* data) -{ - int fd = -1; - int r; - fd = socket(addr_is_ip6(&data->dest_addr, data->dest_addr_len)? - PF_INET6:PF_INET, SOCK_DGRAM, 0); - if(fd == -1) { - perror("socket() error"); - exit(1); - } - r = connect(fd, (struct sockaddr*)&data->dest_addr, - data->dest_addr_len); - if(r < 0 && r != EINPROGRESS) { - perror("connect() error"); - exit(1); - } - fd_set_nonblock(fd); - return fd; -} - -/** get the local address of the connection */ -static void -get_local_addr(struct doq_client_data* data) -{ - memset(&data->local_addr, 0, sizeof(data->local_addr)); - data->local_addr_len = (socklen_t)sizeof(data->local_addr); - if(getsockname(data->fd, (struct sockaddr*)&data->local_addr, - &data->local_addr_len) == -1) { - perror("getsockname() error"); - exit(1); - } - log_addr(1, "local_addr", &data->local_addr, data->local_addr_len); - log_addr(1, "dest_addr", &data->dest_addr, data->dest_addr_len); -} - -static sldns_buffer* -make_query(char* qname, char* qtype, char* qclass) -{ - struct query_info qinfo; - struct edns_data edns; - sldns_buffer* buf = sldns_buffer_new(65553); - if(!buf) fatal_exit("out of memory"); - qinfo.qname = sldns_str2wire_dname(qname, &qinfo.qname_len); - if(!qinfo.qname) { - printf("cannot parse query name: '%s'\n", qname); - exit(1); - } - - qinfo.qtype = sldns_get_rr_type_by_name(qtype); - qinfo.qclass = sldns_get_rr_class_by_name(qclass); - qinfo.local_alias = NULL; - - qinfo_query_encode(buf, &qinfo); /* flips buffer */ - free(qinfo.qname); - sldns_buffer_write_u16_at(buf, 0, 0x0000); - sldns_buffer_write_u16_at(buf, 2, BIT_RD); - memset(&edns, 0, sizeof(edns)); - edns.edns_present = 1; - edns.bits = EDNS_DO; - edns.udp_size = 4096; - if(sldns_buffer_capacity(buf) >= - sldns_buffer_limit(buf)+calc_edns_field_size(&edns)) - attach_edns_record(buf, &edns); - return buf; -} - -/** create client stream structure */ -static struct doq_client_stream* -client_stream_create(struct sldns_buffer* query_data) -{ - struct doq_client_stream* str = calloc(1, sizeof(*str)); - if(!str) - fatal_exit("calloc failed: out of memory"); - str->data = memdup(sldns_buffer_begin(query_data), - sldns_buffer_limit(query_data)); - if(!str->data) - fatal_exit("alloc data failed: out of memory"); - str->data_len = sldns_buffer_limit(query_data); - str->stream_id = -1; - return str; -} - -/** free client stream structure */ -static void -client_stream_free(struct doq_client_stream* str) -{ - if(!str) - return; - free(str->data); - sldns_buffer_free(str->answer); - free(str); -} - -/** setup the stream to start the write process */ -static void -client_stream_start_setup(struct doq_client_stream* str, int64_t stream_id) -{ - str->has_stream = 1; - str->stream_id = stream_id; - str->nwrite = 0; - str->nread = 0; - str->answer_len = 0; - str->query_is_done = 0; - str->answer_is_complete = 0; - str->query_has_error = 0; - if(str->answer) { - sldns_buffer_free(str->answer); - str->answer = NULL; - } -} - -/** Return string for log purposes with query name. */ -static char* -client_stream_string(struct doq_client_stream* str) -{ - char* s; - size_t dname_len; - char dname[256], tpstr[32], result[256+32+16]; - uint16_t tp; - if(str->data_len <= LDNS_HEADER_SIZE) { - s = strdup("query_with_no_question"); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; - } - dname_len = dname_valid(str->data+LDNS_HEADER_SIZE, - str->data_len-LDNS_HEADER_SIZE); - if(!dname_len) { - s = strdup("query_dname_not_valid"); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; - } - (void)sldns_wire2str_dname_buf(str->data+LDNS_HEADER_SIZE, dname_len, - dname, sizeof(dname)); - tp = sldns_wirerr_get_type(str->data+LDNS_HEADER_SIZE, - str->data_len-LDNS_HEADER_SIZE, dname_len); - (void)sldns_wire2str_type_buf(tp, tpstr, sizeof(tpstr)); - snprintf(result, sizeof(result), "%s %s", dname, tpstr); - s = strdup(result); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; -} - -/** create query stream list */ -static struct doq_client_stream_list* -stream_list_create(void) -{ - struct doq_client_stream_list* list = calloc(1, sizeof(*list)); - if(!list) - fatal_exit("calloc failed: out of memory"); - return list; -} - -/** free the query stream list */ -static void -stream_list_free(struct doq_client_stream_list* list) -{ - struct doq_client_stream* str; - if(!list) - return; - str = list->first; - while(str) { - struct doq_client_stream* next = str->next; - client_stream_free(str); - str = next; - } - free(list); -} - -/** append item to list */ -static void -stream_list_append(struct doq_client_stream_list* list, - struct doq_client_stream* str) -{ - if(list->last) { - str->prev = list->last; - list->last->next = str; - } else { - str->prev = NULL; - list->first = str; - } - str->next = NULL; - list->last = str; -} - -/** delete the item from the list */ -static void -stream_list_delete(struct doq_client_stream_list* list, - struct doq_client_stream* str) -{ - if(str->next) { - str->next->prev = str->prev; - } else { - list->last = str->prev; - } - if(str->prev) { - str->prev->next = str->next; - } else { - list->first = str->next; - } - str->prev = NULL; - str->next = NULL; -} - -/** move the item from list1 to list2 */ -static void -stream_list_move(struct doq_client_stream* str, - struct doq_client_stream_list* list1, - struct doq_client_stream_list* list2) -{ - stream_list_delete(list1, str); - stream_list_append(list2, str); -} - -/** allocate stream data buffer, then answer length is complete */ -static void -client_stream_datalen_complete(struct doq_client_stream* str) -{ - verbose(1, "answer length %d", (int)ntohs(str->answer_len)); - str->answer = sldns_buffer_new(ntohs(str->answer_len)); - if(!str->answer) - fatal_exit("sldns_buffer_new failed: out of memory"); - sldns_buffer_set_limit(str->answer, ntohs(str->answer_len)); -} - -/** print the answer rrs */ -static void -print_answer_rrs(uint8_t* pkt, size_t pktlen) -{ - char buf[65535]; - char* str; - size_t str_len; - int i, qdcount, ancount; - uint8_t* data = pkt; - size_t data_len = pktlen; - int comprloop = 0; - if(data_len < LDNS_HEADER_SIZE) - return; - qdcount = LDNS_QDCOUNT(data); - ancount = LDNS_ANCOUNT(data); - data += LDNS_HEADER_SIZE; - data_len -= LDNS_HEADER_SIZE; - - for(i=0; iquery_has_error) { - char* logs = client_stream_string(str); - printf("%s has error, there is no answer\n", logs); - free(logs); - return; - } - if(sldns_buffer_limit(str->answer) < LDNS_HEADER_SIZE) { - char* logs = client_stream_string(str); - printf("%s received short packet, smaller than header\n", - logs); - free(logs); - return; - } - rcode = LDNS_RCODE_WIRE(sldns_buffer_begin(str->answer)); - if(rcode != 0) { - char* logs = client_stream_string(str); - char rc[16]; - (void)sldns_wire2str_rcode_buf(rcode, rc, sizeof(rc)); - printf("%s rcode %s\n", logs, rc); - free(logs); - return; - } - ancount = LDNS_ANCOUNT(sldns_buffer_begin(str->answer)); - if(ancount == 0) { - char* logs = client_stream_string(str); - printf("%s nodata answer\n", logs); - free(logs); - return; - } - print_answer_rrs(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); -} - -/** print the stream output answer */ -static void -client_stream_print_long(struct doq_client_data* data, - struct doq_client_stream* str) -{ - char* s; - if(str->query_has_error) { - char* logs = client_stream_string(str); - printf("%s has error, there is no answer\n", logs); - free(logs); - return; - } - s = sldns_wire2str_pkt(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); - printf("%s", (s?s:";sldns_wire2str_pkt failed\n")); - printf(";; SERVER: %s %d\n", data->svr, data->port); - free(s); -} - -/** the stream has completed the data */ -static void -client_stream_data_complete(struct doq_client_stream* str) -{ - verbose(1, "received all answer content"); - if(verbosity > 0) { - char* logs = client_stream_string(str); - char* s; - log_buf(1, "received answer", str->answer); - s = sldns_wire2str_pkt(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); - if(!s) verbose(1, "could not sldns_wire2str_pkt"); - else verbose(1, "query %s received:\n%s", logs, s); - free(s); - free(logs); - } - str->answer_is_complete = 1; -} - -/** the stream has completed but with an error */ -static void -client_stream_answer_error(struct doq_client_stream* str) -{ - if(verbosity > 0) { - char* logs = client_stream_string(str); - if(str->answer) - verbose(1, "query %s has an error. received %d/%d bytes.", - logs, (int)sldns_buffer_position(str->answer), - (int)sldns_buffer_limit(str->answer)); - else - verbose(1, "query %s has an error. received no data.", - logs); - free(logs); - } - str->query_has_error = 1; -} - -/** receive data for a stream */ -static void -client_stream_recv_data(struct doq_client_stream* str, const uint8_t* data, - size_t datalen) -{ - int got_data = 0; - /* read the tcplength uint16_t at the start of the DNS message */ - if(str->nread < 2) { - size_t to_move = datalen; - if(datalen > 2-str->nread) - to_move = 2-str->nread; - memmove(((uint8_t*)&str->answer_len)+str->nread, data, - to_move); - str->nread += to_move; - data += to_move; - datalen -= to_move; - if(str->nread == 2) { - /* we can allocate the data buffer */ - client_stream_datalen_complete(str); - } - } - /* if we have data bytes */ - if(datalen > 0) { - size_t to_write = datalen; - if(datalen > sldns_buffer_remaining(str->answer)) - to_write = sldns_buffer_remaining(str->answer); - if(to_write > 0) { - sldns_buffer_write(str->answer, data, to_write); - str->nread += to_write; - data += to_write; - datalen -= to_write; - got_data = 1; - } - } - /* extra received bytes after end? */ - if(datalen > 0) { - verbose(1, "extra bytes after end of DNS length"); - if(verbosity > 0) - log_hex("extradata", (void*)data, datalen); - } - /* are we done with it? */ - if(got_data && str->nread >= (size_t)(ntohs(str->answer_len))+2) { - client_stream_data_complete(str); - } -} - -/** receive FIN from remote end on client stream, no more data to be - * received on the stream. */ -static void -client_stream_recv_fin(struct doq_client_data* data, - struct doq_client_stream* str, int is_fin) -{ - if(verbosity > 0) { - char* logs = client_stream_string(str); - if(is_fin) - verbose(1, "query %s: received FIN from remote", logs); - else - verbose(1, "query %s: stream reset from remote", logs); - free(logs); - } - if(str->write_is_done) - stream_list_move(str, data->query_list_receive, - data->query_list_stop); - else - stream_list_move(str, data->query_list_send, - data->query_list_stop); - if(!str->answer_is_complete) { - client_stream_answer_error(str); - } - str->query_is_done = 1; - if(data->quiet) - client_stream_print_short(str); - else client_stream_print_long(data, str); - if(data->query_list_send->first==NULL && - data->query_list_receive->first==NULL) - disconnect(data); -} - -/** fill a buffer with random data */ -static void fill_rand(struct ub_randstate* rnd, uint8_t* buf, size_t len) -{ - if(RAND_bytes(buf, len) != 1) { - size_t i; - for(i=0; istatic_secret_data = malloc(len); - if(!data->static_secret_data) - fatal_exit("malloc failed: out of memory"); - data->static_secret_size = len; - fill_rand(data->rnd, data->static_secret_data, len); -} - -/** fill cid structure with random data */ -static void cid_randfill(struct ngtcp2_cid* cid, size_t datalen, - struct ub_randstate* rnd) -{ - uint8_t buf[32]; - if(datalen > sizeof(buf)) - datalen = sizeof(buf); - fill_rand(rnd, buf, datalen); - ngtcp2_cid_init(cid, buf, datalen); -} - -/** send buf on the client stream */ -static int -client_bidi_stream(struct doq_client_data* data, int64_t* ret_stream_id, - void* stream_user_data) -{ - int64_t stream_id; - int rv; - - /* open new bidirectional stream */ - rv = ngtcp2_conn_open_bidi_stream(data->conn, &stream_id, - stream_user_data); - if(rv != 0) { - if(rv == NGTCP2_ERR_STREAM_ID_BLOCKED) { - /* no bidi stream count for this new stream */ - return 0; - } - fatal_exit("could not ngtcp2_conn_open_bidi_stream: %s", - ngtcp2_strerror(rv)); - } - *ret_stream_id = stream_id; - return 1; -} - -/** See if we can start query streams, by creating bidirectional streams - * on the QUIC transport for them. */ -static void -query_streams_start(struct doq_client_data* data) -{ - while(data->query_list_start->first) { - struct doq_client_stream* str = data->query_list_start->first; - int64_t stream_id = 0; - if(!client_bidi_stream(data, &stream_id, str)) { - /* no more bidi streams allowed */ - break; - } - if(verbosity > 0) { - char* logs = client_stream_string(str); - verbose(1, "query %s start on bidi stream id %lld", - logs, (long long int)stream_id); - free(logs); - } - /* setup the stream to start */ - client_stream_start_setup(str, stream_id); - /* move the query entry to the send list to write it */ - stream_list_move(str, data->query_list_start, - data->query_list_send); - } -} - -/** the rand callback routine from ngtcp2 */ -static void rand_cb(uint8_t* dest, size_t destlen, - const ngtcp2_rand_ctx* rand_ctx) -{ - struct ub_randstate* rnd = (struct ub_randstate*) - rand_ctx->native_handle; - fill_rand(rnd, dest, destlen); -} - -/** the get_new_connection_id callback routine from ngtcp2 */ -static int get_new_connection_id_cb(struct ngtcp2_conn* ATTR_UNUSED(conn), - struct ngtcp2_cid* cid, uint8_t* token, size_t cidlen, void* user_data) -{ - struct doq_client_data* data = (struct doq_client_data*)user_data; - cid_randfill(cid, cidlen, data->rnd); - if(ngtcp2_crypto_generate_stateless_reset_token(token, - data->static_secret_data, data->static_secret_size, cid) != 0) - return NGTCP2_ERR_CALLBACK_FAILURE; - return 0; -} - -/** handle that early data is rejected */ -static void -early_data_is_rejected(struct doq_client_data* data) -{ *** 23476 LINES SKIPPED *** From nobody Fri Oct 25 03:29:50 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZSvf3VjRz5bCLm; Fri, 25 Oct 2024 03:29:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZSvf2n6Rz4cFg; Fri, 25 Oct 2024 03:29:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jmHx0FGVpei4lvBmz+U3GBGEA+iHNaEwfD8Jz0sfEJY=; b=QdmlE0uw7gQDbAlzCpzId0pWwDcUsqo8ylXQzNjKzaWplPmlnI218WXKHg08mY9aC2JDM2 2tgSshYv/+9OH4ofZr+rsQPV0icOBV/kn9KZmKyviuz0RnCvrzvOjGe+jPPbaAJdfxApHC SCLGRR3068GHI4aAMTiWbuoIO5Nd05RVBw1rcLAAtOT3lDQPxmyHjBVO3+BbNgBiBb9ALP N1neXVgHfeXghYyEusdJzwIsArXBMSSg/3GRN6E8hJ2WSu/9E4fYYKvIaVRCmPXQ5WABX+ WUHsDAdvtt1Qj4oM5WIx0WCqSSvQjYP4Q7/0LQM39BA5Tk9kBe4R9yLDfQVD6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jmHx0FGVpei4lvBmz+U3GBGEA+iHNaEwfD8Jz0sfEJY=; b=dVHuOEodz0+CNMFo/nZKx2c9ORqy7Y89BNABmCb/AEcqSnuBh2D1p+TKYJiDgF5+WwpKil pvPI8LRAm2AW7j/9QA7M/Vs6TiOOzA4bkmwc4f+dHhYePIggSr/px44K0rcWElp/UgfNkP vR71xHLKScqh/7lY3a/jN6lq3YuT4Y0ISsjAKKxPfeSfGLJS7N80MMLIB5NWABhNnI1Z/9 Zw2/jzzauRoIxOuZhapEH2Br7+tOZx0jVo1+lLv+xEld6CUEoVXHpHpdyrzYALyU+MZD8+ zVKZ9k+bTJOAMcExnjC8XiL1N4ZSw1c3684vCZVQqh4W2H3oQwDhirBHkLjBYw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729826990; a=rsa-sha256; cv=none; b=SDedPpM91eqRsePIj324m3do9857oH87XBJOzEUzCwJ6yvUZz8b2Gn0I8H5jUklm3/zBon tyDkU9x6FNJz+sxjXCQp8uai2wIglROZ1SZbUJaKqmMzTPvXhMKr5z9lXDXHVEq+0H1Lfw Eexc/xIOegRXUI9XblGXY4hFs506ZNpIOPkJxV5QRE+ZezauJrn1XNxhNCFYR3Y2EFt603 ddi09e6/Jtt6mvZ6f2g6fUb/4SvcwdsDtZIbUmSQ6aYkq5o6egFwz8RMKBZlFYeh7gCE9n eknSaV311Of8YrueylV5SqtuZS2s1FaDLQeHFRNYpRcZ2bYEMiEs2rZFqcP/Ew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZSvf2NzWz18sw; Fri, 25 Oct 2024 03:29: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 49P3ToTD030618; Fri, 25 Oct 2024 03:29:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49P3ToAx030615; Fri, 25 Oct 2024 03:29:50 GMT (envelope-from git) Date: Fri, 25 Oct 2024 03:29:50 GMT Message-Id: <202410250329.49P3ToAx030615@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: c78cc265cd39 - stable/13 - unbound: Move config.h to lib directory. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c78cc265cd39e4b2622b6b39169e01aec6e4d09e Auto-Submitted: auto-generated The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=c78cc265cd39e4b2622b6b39169e01aec6e4d09e commit c78cc265cd39e4b2622b6b39169e01aec6e4d09e Author: Dag-Erling Smørgrav AuthorDate: 2023-08-19 01:44:39 +0000 Commit: Cy Schubert CommitDate: 2024-10-25 03:29:15 +0000 unbound: Move config.h to lib directory. It was originally in contrib, and moved to usr.sbin in 6692aa840c1f; I always thought lib would make more sense but never got around to moving it. Reviewed by: cy Differential Revision: https://reviews.freebsd.org/D41504 (cherry picked from commit 2ba1d4970a06a1660b46f6fd99351d154b295683) --- contrib/unbound/freebsd-configure.sh | 1 + lib/libunbound/Makefile | 3 +-- {usr.sbin/unbound => lib/libunbound}/config.h | 0 usr.sbin/unbound/anchor/Makefile | 3 ++- usr.sbin/unbound/checkconf/Makefile | 3 ++- usr.sbin/unbound/control/Makefile | 3 ++- usr.sbin/unbound/daemon/Makefile | 3 ++- 7 files changed, 10 insertions(+), 6 deletions(-) diff --git a/contrib/unbound/freebsd-configure.sh b/contrib/unbound/freebsd-configure.sh index 7169bbcce732..cd45d4716320 100755 --- a/contrib/unbound/freebsd-configure.sh +++ b/contrib/unbound/freebsd-configure.sh @@ -39,3 +39,4 @@ cd $unbound --with-conf-file=/var/unbound/unbound.conf \ --with-run-dir=/var/unbound \ --with-username=unbound +mv config.h ../../lib/libunbound diff --git a/lib/libunbound/Makefile b/lib/libunbound/Makefile index 64261ebad998..a82cc1be4e45 100644 --- a/lib/libunbound/Makefile +++ b/lib/libunbound/Makefile @@ -11,8 +11,7 @@ LIB= unbound PRIVATELIB= PACKAGE= unbound -CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR} -CFLAGS+= -I${SRCTOP}/usr.sbin/unbound +CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR} -I${.CURDIR} SRCS= alloc.c as112.c authzone.c autotrust.c cachedb.c config_file.c \ configlexer.l configparser.y context.c dname.c dns.c dns64.c \ diff --git a/usr.sbin/unbound/config.h b/lib/libunbound/config.h similarity index 100% rename from usr.sbin/unbound/config.h rename to lib/libunbound/config.h diff --git a/usr.sbin/unbound/anchor/Makefile b/usr.sbin/unbound/anchor/Makefile index 01a7c53c8ae8..91ae1090415a 100644 --- a/usr.sbin/unbound/anchor/Makefile +++ b/usr.sbin/unbound/anchor/Makefile @@ -2,6 +2,7 @@ # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound +LIBUNBOUNDDIR=${SRCTOP}/lib/libunbound EXPATDIR= ${SRCTOP}/contrib/expat .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/smallapp ${UNBOUNDDIR}/doc @@ -9,7 +10,7 @@ EXPATDIR= ${SRCTOP}/contrib/expat PROG= local-unbound-anchor SRCS= unbound-anchor.c CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${EXPATDIR}/lib -CFLAGS+= -I${.CURDIR:H} -I${.CURDIR} +CFLAGS+= -I${LIBUNBOUNDDIR} -I${.CURDIR} LIBADD= unbound bsdxml ssl crypto pthread MAN= local-unbound-anchor.8 diff --git a/usr.sbin/unbound/checkconf/Makefile b/usr.sbin/unbound/checkconf/Makefile index 264f3b829fc4..c8d8397225b0 100644 --- a/usr.sbin/unbound/checkconf/Makefile +++ b/usr.sbin/unbound/checkconf/Makefile @@ -2,13 +2,14 @@ # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound +LIBUNBOUNDDIR=${SRCTOP}/lib/libunbound .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/smallapp ${UNBOUNDDIR}/util ${UNBOUNDDIR}/doc PROG= local-unbound-checkconf SRCS= ub_event.c unbound-checkconf.c worker_cb.c CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -CFLAGS+= -I${.CURDIR:H} -I${.CURDIR} +CFLAGS+= -I${LIBUNBOUNDDIR} -I${.CURDIR} LIBADD= unbound pthread MAN= local-unbound-checkconf.8 diff --git a/usr.sbin/unbound/control/Makefile b/usr.sbin/unbound/control/Makefile index b5340c0bca67..ad5f7eb21f09 100644 --- a/usr.sbin/unbound/control/Makefile +++ b/usr.sbin/unbound/control/Makefile @@ -2,13 +2,14 @@ # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound +LIBUNBOUNDDIR=${SRCTOP}/lib/libunbound .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/smallapp ${UNBOUNDDIR}/util ${UNBOUNDDIR}/doc PROG= local-unbound-control SRCS= ub_event.c unbound-control.c worker_cb.c CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -CFLAGS+= -I${.CURDIR:H} -I${.CURDIR} +CFLAGS+= -I${LIBUNBOUNDDIR} -I${.CURDIR} LIBADD= unbound crypto ssl pthread MAN= local-unbound-control.8 diff --git a/usr.sbin/unbound/daemon/Makefile b/usr.sbin/unbound/daemon/Makefile index ad0f5b2fb245..28b451aa5061 100644 --- a/usr.sbin/unbound/daemon/Makefile +++ b/usr.sbin/unbound/daemon/Makefile @@ -2,6 +2,7 @@ # Vendor sources and generated files LDNSDIR= ${SRCTOP}/contrib/ldns UNBOUNDDIR= ${SRCTOP}/contrib/unbound +LIBUNBOUNDDIR=${SRCTOP}/lib/libunbound .PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/daemon ${UNBOUNDDIR}/util ${UNBOUNDDIR}/util/shm_side ${UNBOUNDDIR}/doc @@ -9,7 +10,7 @@ PROG= local-unbound SRCS= acl_list.c cachedump.c daemon.c remote.c shm_main.c stats.c \ ub_event.c unbound.c worker.c CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -CFLAGS+= -I${.CURDIR:H} -I${.CURDIR} +CFLAGS+= -I${LIBUNBOUNDDIR} -I${.CURDIR} LIBADD= unbound util ssl crypto pthread MAN= local-unbound.8 local-unbound.conf.5 From nobody Fri Oct 25 03:29:51 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZSvh0Mqzz5bCHp; Fri, 25 Oct 2024 03:29:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZSvg6nPBz4bx4; Fri, 25 Oct 2024 03:29:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RhBwbEi4OEvybxSCg/W2P042e896aRavvPqCC3mtjUM=; b=l3cmgbFXxlYK0Cewl8zGw7ZuWACfn8pTqcDHTR46rBy6kKP6DEodMYTyGX3h728n0lOMzf U4O65O5QJMvet/AY7Dc95s3djtJPOKWhnTXtQcH1bCxBiNm1QGNk7s4yNJYLpbxSeuX2lH giSLQ6WSW4fy8drUnTCnZFM1N20IOQAPPZ64H0KhAtqUKu2uJexAsb81I2BA4DFTnUdB80 kpeVbGO6g5yu8EZxlHO387Gy7O8ezADHubSPGqGnEhCBxLv5VhrsPsjYoTeVX7SeE0/J/Z 1hz49GyGh4uRJzZL09ejcMZdUyjnqSioVo8Ko85mde+pppC2o1c3iVaX8Z43zQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RhBwbEi4OEvybxSCg/W2P042e896aRavvPqCC3mtjUM=; b=hMfz06DLlzpHmA4bl5Eqpff8VfURLdbmT84mEtBr3PCJS5ODCrhgbw16cbdfJEn1du/ChV wePafTwmVU8uxNycnPzztlEPVLVb2MA6AiRni838dVJ/4TNXK2h6C+pPpXVW8By9EqppUX aFVjPa1/YMAgSdxNtGRzi4z9/iTPYnkltGjex3ivRdi/2rS5bt8eVkEb4c14t2XOEkr+sS lF//c1EXugVkn+ZBjvUYjxhaP7j3NZyMCjqoc27ALN2lcd6XBn56M1FXvxLILItafiCzRS +YjXtos2fIFJ4l3FIRi5eWvM6c6Iao7i5QOvI07ynOjgH5Ty+jiRUkx2OceK+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729826991; a=rsa-sha256; cv=none; b=dlWsEYhUTXZL+jnBIrhTo2YTQNDKFTZxVYU6v1ldi+QfgCju1ML6UrU12Dg+gJ16iRP656 Vb58ILVCZEnW44AWCmq/39/gQBHSPwvC686uMajsGu0F+/e5FMYzg2shJmycdr9IuJCgKP 8jEHQbF9PZKbgERGVCGyYjyGqQJDfAzOY1hETEGW6PZ8CZwcTSa/DLdOonEkGzEjR4ZI4h 2+7MyTkhBCKw+rBgJWLzTjbdHqgcC8Uf2k5PxndYu1HotGD5XpRHtYKo1jVn4X+EryCmeB 0tDp4opc3WygDVSCQWoJvfRkfCt9g8wFjUfU2EV+3Hd4pDjhS1u5c/6Njwyeww== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZSvg6NrCz18sx; Fri, 25 Oct 2024 03:29: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 49P3Tpw1030663; Fri, 25 Oct 2024 03:29:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49P3TpRu030660; Fri, 25 Oct 2024 03:29:51 GMT (envelope-from git) Date: Fri, 25 Oct 2024 03:29:51 GMT Message-Id: <202410250329.49P3TpRu030660@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 741bb8476204 - stable/13 - unbound: Vendor import 1.22.0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 741bb84762042f82923c02b10f3874c7d8ad4819 Auto-Submitted: auto-generated The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=741bb84762042f82923c02b10f3874c7d8ad4819 commit 741bb84762042f82923c02b10f3874c7d8ad4819 Author: Cy Schubert AuthorDate: 2024-10-18 13:59:33 +0000 Commit: Cy Schubert CommitDate: 2024-10-25 03:29:15 +0000 unbound: Vendor import 1.22.0 Release notes at https://nlnetlabs.nl/news/2024/Oct/17/unbound-1.22.0-released/ MFC after: 1 week Merge commit '0a6d797cf6eb751d7eb613900cd19803e05d905f' into main (cherry picked from commit 46d2f61818f594174cafe31ee338c6e083fa1876) --- contrib/unbound/Makefile.in | 19 +- contrib/unbound/aclocal.m4 | 292 +- contrib/unbound/cachedb/cachedb.c | 5 +- contrib/unbound/cachedb/redis.c | 29 +- contrib/unbound/config.h.in | 94 + contrib/unbound/configure | 769 +- contrib/unbound/configure.ac | 74 +- contrib/unbound/contrib/aaaa-filter-iterator.patch | 2 +- contrib/unbound/daemon/daemon.c | 10 + contrib/unbound/daemon/daemon.h | 3 + contrib/unbound/daemon/remote.c | 14 +- contrib/unbound/daemon/stats.c | 14 +- contrib/unbound/daemon/worker.c | 38 +- contrib/unbound/dns64/dns64.c | 5 +- contrib/unbound/dnstap/unbound-dnstap-socket.c | 24 +- contrib/unbound/doc/Changelog | 151 +- contrib/unbound/doc/README | 2 +- contrib/unbound/doc/example.conf.in | 26 +- contrib/unbound/doc/libunbound.3.in | 4 +- contrib/unbound/doc/unbound-anchor.8.in | 2 +- contrib/unbound/doc/unbound-checkconf.8.in | 2 +- contrib/unbound/doc/unbound-control.8.in | 10 +- contrib/unbound/doc/unbound-host.1.in | 2 +- contrib/unbound/doc/unbound.8.in | 4 +- contrib/unbound/doc/unbound.conf.5.in | 71 +- contrib/unbound/doc/unbound.doxygen | 8 +- contrib/unbound/install-sh | 174 +- contrib/unbound/iterator/iter_scrub.c | 45 +- contrib/unbound/iterator/iter_utils.c | 42 + contrib/unbound/iterator/iter_utils.h | 7 + contrib/unbound/iterator/iterator.c | 57 +- contrib/unbound/iterator/iterator.h | 2 +- contrib/unbound/libunbound/context.c | 2 +- contrib/unbound/libunbound/libworker.c | 16 + contrib/unbound/libunbound/unbound.h | 4 + contrib/unbound/ltmain.sh | 866 +- contrib/unbound/services/authzone.c | 39 +- contrib/unbound/services/cache/dns.c | 59 +- contrib/unbound/services/cache/dns.h | 3 +- contrib/unbound/services/cache/rrset.c | 10 +- contrib/unbound/services/listen_dnsport.c | 2534 +++++- contrib/unbound/services/listen_dnsport.h | 405 +- contrib/unbound/services/mesh.c | 13 +- contrib/unbound/services/mesh.h | 3 +- contrib/unbound/services/modstack.c | 2 +- contrib/unbound/services/rpz.c | 19 + .../unbound/smallapp/unbound-control-setup.sh.in | 2 +- contrib/unbound/smallapp/unbound-control.c | 6 + contrib/unbound/smallapp/unbound-host.c | 6 + contrib/unbound/smallapp/worker_cb.c | 16 + contrib/unbound/testcode/doqclient.c | 2701 +++++++ contrib/unbound/testcode/unitdoq.c | 84 + .../unbound/testdata/auth_tls.tdir/auth_tls.dsc | 16 + .../testdata/auth_tls.tdir/auth_tls.nsd.conf | 21 + .../unbound/testdata/auth_tls.tdir/auth_tls.post | 14 + .../unbound/testdata/auth_tls.tdir/auth_tls.pre | 47 + .../unbound/testdata/auth_tls.tdir/auth_tls.test | 48 + .../testdata/auth_tls.tdir/auth_tls.ub.conf | 22 + .../testdata/auth_tls.tdir/example.com.zone | 4 + .../unbound/testdata/auth_tls.tdir/nsd_server.key | 39 + .../unbound/testdata/auth_tls.tdir/nsd_server.pem | 22 + .../testdata/auth_tls.tdir/unbound_server.key | 39 + .../testdata/auth_tls.tdir/unbound_server.pem | 22 + .../auth_tls_failcert.tdir/auth_tls_failcert.dsc | 16 + .../auth_tls_failcert.nsd.conf | 21 + .../auth_tls_failcert.tdir/auth_tls_failcert.post | 14 + .../auth_tls_failcert.tdir/auth_tls_failcert.pre | 47 + .../auth_tls_failcert.tdir/auth_tls_failcert.test | 56 + .../auth_tls_failcert.ub.conf | 23 + .../auth_tls_failcert.tdir/example.com.zone | 4 + .../testdata/auth_tls_failcert.tdir/nsd_server.key | 39 + .../testdata/auth_tls_failcert.tdir/nsd_server.pem | 22 + .../auth_tls_failcert.tdir/unbound_server.key | 39 + .../auth_tls_failcert.tdir/unbound_server.pem | 22 + .../testdata/cookie_file.tdir/cookie_file.test | 6 +- contrib/unbound/testdata/dns64_prefetch_cache.rpl | 195 + .../doq_downstream.tdir/doq_downstream.conf | 21 + .../doq_downstream.tdir/doq_downstream.dsc | 16 + .../doq_downstream.tdir/doq_downstream.post | 13 + .../doq_downstream.tdir/doq_downstream.pre | 44 + .../doq_downstream.tdir/doq_downstream.test | 109 + .../doq_downstream.tdir/doq_downstream.testns | 13 + .../doq_downstream.tdir/unbound_server.key | 15 + .../doq_downstream.tdir/unbound_server.pem | 11 + contrib/unbound/testdata/iter_max_global_quota.rpl | 2236 ++++++ contrib/unbound/testdata/iter_unverified_glue.rpl | 188 + .../testdata/iter_unverified_glue_fallback.rpl | 138 + contrib/unbound/testdata/rpz_val_block.rpl | 643 ++ .../testdata/serve_expired_cached_servfail.rpl | 2 +- .../serve_expired_cached_servfail_refresh.rpl | 2 +- .../serve_expired_client_timeout_val_bogus.rpl | 317 + ...ired_client_timeout_val_insecure_delegation.rpl | 247 + .../unbound/testdata/serve_expired_ttl_reset.rpl | 102 + .../unbound/testdata/serve_expired_val_bogus.rpl | 316 + contrib/unbound/testdata/val_negcache_ttl.rpl | 188 + .../unbound/testdata/val_negcache_ttl_prefetch.rpl | 316 + contrib/unbound/util/alloc.c | 9 + contrib/unbound/util/config_file.c | 55 +- contrib/unbound/util/config_file.h | 23 + contrib/unbound/util/configlexer.c | 8484 ++++++++++---------- contrib/unbound/util/configlexer.lex | 11 +- contrib/unbound/util/configparser.c | 4713 +++++------ contrib/unbound/util/configparser.h | 296 +- contrib/unbound/util/configparser.y | 165 +- contrib/unbound/util/data/msgparse.h | 2 + contrib/unbound/util/data/msgreply.c | 47 +- contrib/unbound/util/data/msgreply.h | 39 +- contrib/unbound/util/data/packed_rrset.h | 3 + contrib/unbound/util/fptr_wlist.c | 17 + contrib/unbound/util/locks.h | 1 + contrib/unbound/util/log.c | 36 + contrib/unbound/util/log.h | 6 + contrib/unbound/util/module.h | 8 +- contrib/unbound/util/netevent.c | 2067 ++++- contrib/unbound/util/netevent.h | 164 + contrib/unbound/validator/val_neg.c | 6 +- contrib/unbound/validator/val_nsec3.c | 6 +- contrib/unbound/validator/validator.c | 81 +- contrib/unbound/validator/validator.h | 2 +- lib/libunbound/config.h | 8 +- 120 files changed, 22786 insertions(+), 7989 deletions(-) diff --git a/contrib/unbound/Makefile.in b/contrib/unbound/Makefile.in index 672435e01e9f..c262250ca2c5 100644 --- a/contrib/unbound/Makefile.in +++ b/contrib/unbound/Makefile.in @@ -179,11 +179,11 @@ testcode/unitlruhash.c testcode/unitmain.c testcode/unitmsgparse.c \ testcode/unitneg.c testcode/unitregional.c testcode/unitslabhash.c \ testcode/unitverify.c testcode/readhex.c testcode/testpkts.c testcode/unitldns.c \ testcode/unitecs.c testcode/unitauth.c testcode/unitzonemd.c \ -testcode/unittcpreuse.c +testcode/unittcpreuse.c testcode/unitdoq.c UNITTEST_OBJ=unitanchor.lo unitdname.lo unitlruhash.lo unitmain.lo \ unitmsgparse.lo unitneg.lo unitregional.lo unitslabhash.lo unitverify.lo \ readhex.lo testpkts.lo unitldns.lo unitecs.lo unitauth.lo unitzonemd.lo \ -unittcpreuse.lo +unittcpreuse.lo unitdoq.lo UNITTEST_OBJ_LINK=$(UNITTEST_OBJ) worker_cb.lo $(COMMON_OBJ) $(SLDNS_OBJ) \ $(COMPAT_OBJ) DAEMON_SRC=daemon/acl_list.c daemon/cachedump.c daemon/daemon.c \ @@ -242,6 +242,10 @@ DOHCLIENT_SRC=testcode/dohclient.c DOHCLIENT_OBJ=dohclient.lo DOHCLIENT_OBJ_LINK=$(DOHCLIENT_OBJ) worker_cb.lo $(COMMON_OBJ) $(COMPAT_OBJ) \ $(SLDNS_OBJ) +DOQCLIENT_SRC=testcode/doqclient.c +DOQCLIENT_OBJ=doqclient.lo +DOQCLIENT_OBJ_LINK=$(DOQCLIENT_OBJ) $(COMMON_OBJ) $(COMPAT_OBJ) \ +$(SLDNS_OBJ) PERF_SRC=testcode/perf.c PERF_OBJ=perf.lo PERF_OBJ_LINK=$(PERF_OBJ) worker_cb.lo $(COMMON_OBJ) $(COMPAT_OBJ) $(SLDNS_OBJ) @@ -288,7 +292,7 @@ ALL_SRC=$(COMMON_SRC) $(UNITTEST_SRC) $(DAEMON_SRC) \ $(CONTROL_SRC) $(UBANCHOR_SRC) $(PETAL_SRC) $(DNSTAP_SOCKET_SRC)\ $(PYTHONMOD_SRC) $(PYUNBOUND_SRC) $(WIN_DAEMON_THE_SRC) \ $(SVCINST_SRC) $(SVCUNINST_SRC) $(ANCHORUPD_SRC) $(SLDNS_SRC) \ - $(DOHCLIENT_SRC) $(READZONE_SRC) + $(DOHCLIENT_SRC) $(DOQCLIENT_SRC) $(READZONE_SRC) ALL_OBJ=$(COMMON_OBJ) $(UNITTEST_OBJ) $(DAEMON_OBJ) \ $(TESTBOUND_OBJ) $(LOCKVERIFY_OBJ) $(PKTVIEW_OBJ) \ @@ -297,7 +301,7 @@ ALL_OBJ=$(COMMON_OBJ) $(UNITTEST_OBJ) $(DAEMON_OBJ) \ $(CONTROL_OBJ) $(UBANCHOR_OBJ) $(PETAL_OBJ) $(DNSTAP_SOCKET_OBJ)\ $(COMPAT_OBJ) $(PYUNBOUND_OBJ) \ $(SVCINST_OBJ) $(SVCUNINST_OBJ) $(ANCHORUPD_OBJ) $(SLDNS_OBJ) \ - $(DOHCLIENT_OBJ) $(READZONE_OBJ) + $(DOHCLIENT_OBJ) $(DOQCLIENT_OBJ) $(READZONE_OBJ) COMPILE=$(LIBTOOL) --tag=CC --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS) @PTHREAD_CFLAGS_ONLY@ LINK=$(LIBTOOL) --tag=CC --mode=link $(CC) $(staticexe) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) @@ -334,7 +338,7 @@ rsrc_unbound_checkconf.o: $(srcdir)/winrc/rsrc_unbound_checkconf.rc config.h TEST_BIN=asynclook$(EXEEXT) delayer$(EXEEXT) \ lock-verify$(EXEEXT) memstats$(EXEEXT) perf$(EXEEXT) \ petal$(EXEEXT) pktview$(EXEEXT) streamtcp$(EXEEXT) \ - $(DNSTAP_SOCKET_TESTBIN) dohclient$(EXEEXT) \ + $(DNSTAP_SOCKET_TESTBIN) dohclient$(EXEEXT) doqclient$(EXEEXT) \ testbound$(EXEEXT) unittest$(EXEEXT) readzone$(EXEEXT) tests: all $(TEST_BIN) @@ -416,6 +420,9 @@ streamtcp$(EXEEXT): $(STREAMTCP_OBJ_LINK) dohclient$(EXEEXT): $(DOHCLIENT_OBJ_LINK) $(LINK) -o $@ $(DOHCLIENT_OBJ_LINK) $(SSLLIB) $(LIBS) +doqclient$(EXEEXT): $(DOQCLIENT_OBJ_LINK) + $(LINK) -o $@ $(DOQCLIENT_OBJ_LINK) $(SSLLIB) $(LIBS) + perf$(EXEEXT): $(PERF_OBJ_LINK) $(LINK) -o $@ $(PERF_OBJ_LINK) $(SSLLIB) $(LIBS) @@ -703,6 +710,8 @@ depend: # build rules ipset.lo ipset.o: $(srcdir)/ipset/ipset.c +doqclient.lo doqclient.o: $(srcdir)/testcode/doqclient.c +unitdoq.lo unitdoq.o: $(srcdir)/testcode/unitdoq.c # Dependencies dns.lo dns.o: $(srcdir)/services/cache/dns.c config.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h \ diff --git a/contrib/unbound/aclocal.m4 b/contrib/unbound/aclocal.m4 index 364e37267d00..bf3c57e2fd9f 100644 --- a/contrib/unbound/aclocal.m4 +++ b/contrib/unbound/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16.5 -*- Autoconf -*- +# generated automatically by aclocal 1.16.2 -*- Autoconf -*- -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,8 +14,7 @@ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # -# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software -# Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@ -46,7 +45,7 @@ m4_define([_LT_COPYING], [dnl # along with this program. If not, see . ]) -# serial 59 LT_INIT +# serial 58 LT_INIT # LT_PREREQ(VERSION) @@ -196,7 +195,6 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl -m4_require([_LT_DECL_FILECMD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl @@ -235,8 +233,8 @@ esac ofile=libtool can_build_shared=yes -# All known linkers require a '.a' archive for static linking (except MSVC and -# ICC, which need '.lib'). +# All known linkers require a '.a' archive for static linking (except MSVC, +# which needs '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld @@ -788,7 +786,7 @@ _LT_EOF # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? - $SED '$q' "$ltmain" >> "$cfgfile" \ + sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || @@ -1050,8 +1048,8 @@ int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD - echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD - $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF @@ -1075,12 +1073,17 @@ _LT_EOF _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) - case $MACOSX_DEPLOYMENT_TARGET,$host in - 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - *) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[[012]][[,.]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac @@ -1129,12 +1132,12 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES], output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], [ if test yes != "$lt_cv_apple_cc_single_mod"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else @@ -1248,8 +1251,7 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], -[m4_require([_LT_DECL_SED])dnl -AC_MSG_CHECKING([for sysroot]) +[AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot @@ -1266,7 +1268,7 @@ case $with_sysroot in #( fi ;; #( /*) - lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( @@ -1296,7 +1298,7 @@ ia64-*-hpux*) # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; @@ -1313,7 +1315,7 @@ ia64-*-hpux*) echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; @@ -1325,7 +1327,7 @@ ia64-*-hpux*) ;; esac else - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; @@ -1347,7 +1349,7 @@ mips64*-*linux*) echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; @@ -1355,7 +1357,7 @@ mips64*-*linux*) emul="${emul}64" ;; esac - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; @@ -1363,7 +1365,7 @@ mips64*-*linux*) emul="${emul}ltsmip" ;; esac - case `$FILECMD conftest.$ac_objext` in + case `/usr/bin/file conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; @@ -1383,14 +1385,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; @@ -1458,7 +1460,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in + case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) @@ -1497,22 +1499,9 @@ need_locks=$enable_libtool_lock m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} +: ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) - -# Use ARFLAGS variable as AR's operation code to sync the variable naming with -# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have -# higher priority because thats what people were doing historically (setting -# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS -# variable obsoleted/removed. - -test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} -lt_ar_flags=$AR_FLAGS -_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) - -# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override -# by AR_FLAGS because that was never working and AR_FLAGS is about to die. -_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], - [Flags to create an archive]) +_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no @@ -1731,7 +1720,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl lt_cv_sys_max_cmd_len=8192; ;; - bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -1774,7 +1763,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi @@ -2224,35 +2213,26 @@ m4_defun([_LT_CMD_STRIPLIB], striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -z "$STRIP"; then - AC_MSG_RESULT([no]) +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) else - if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - case $host_os in - darwin*) - # FIXME - insert some real tests, host_os isn't really good enough +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) - ;; - freebsd*) - if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - fi - ;; - *) + else AC_MSG_RESULT([no]) - ;; - esac - fi + fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) @@ -2575,7 +2555,7 @@ cygwin* | mingw* | pw32* | cegcc*) case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; @@ -2585,14 +2565,14 @@ m4_if([$1], [],[ ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; - *,cl* | *,icl*) - # Native MSVC or ICC + *,cl*) + # Native MSVC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' @@ -2611,7 +2591,7 @@ m4_if([$1], [],[ done IFS=$lt_save_ifs # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form @@ -2648,7 +2628,7 @@ m4_if([$1], [],[ ;; *) - # Assume MSVC and ICC wrapper + # Assume MSVC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; @@ -2681,7 +2661,7 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd* | dragonfly* | midnightbsd*) +freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then @@ -3483,7 +3463,7 @@ beos*) bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='$FILECMD -L' + lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; @@ -3517,14 +3497,14 @@ darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; -freebsd* | dragonfly* | midnightbsd*) +freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac @@ -3538,7 +3518,7 @@ haiku*) ;; hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' @@ -3585,7 +3565,7 @@ netbsd*) newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=$FILECMD + lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; @@ -3712,13 +3692,13 @@ else mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) - case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 @@ -3744,7 +3724,7 @@ else # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; @@ -3984,7 +3964,7 @@ esac if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" @@ -4002,20 +3982,20 @@ fi # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ @@ -4039,7 +4019,7 @@ for ac_symprfx in "" "_"; do if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++ or ICC, + # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ @@ -4057,9 +4037,9 @@ for ac_symprfx in "" "_"; do " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else - lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@ -4346,7 +4326,7 @@ m4_if([$1], [CXX], [ ;; esac ;; - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@ -4429,7 +4409,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4765,7 +4745,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4948,7 +4928,7 @@ m4_if([$1], [CXX], [ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) @@ -4956,7 +4936,7 @@ m4_if([$1], [CXX], [ ;; cygwin* | mingw* | cegcc*) case $cc_basename in - cl* | icl*) + cl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) @@ -5013,15 +4993,15 @@ dnl Note also adjust exclude_expsyms for C++ above. case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time + # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. + # Microsoft Visual C++. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) + # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd* | bitrig*) @@ -5073,7 +5053,7 @@ dnl Note also adjust exclude_expsyms for C++ above. _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no - case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in + case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -5185,7 +5165,6 @@ _LT_EOF emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; interix[[3-9]]*) @@ -5200,7 +5179,7 @@ _LT_EOF # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) @@ -5243,7 +5222,7 @@ _LT_EOF _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes @@ -5255,7 +5234,7 @@ _LT_EOF if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi @@ -5271,7 +5250,7 @@ _LT_EOF _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi @@ -5403,7 +5382,7 @@ _LT_EOF if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no @@ -5586,12 +5565,12 @@ _LT_EOF cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. + # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in - cl* | icl*) - # Native MSVC or ICC + cl*) + # Native MSVC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes @@ -5632,7 +5611,7 @@ _LT_EOF fi' ;; *) - # Assume MSVC and ICC wrapper + # Assume MSVC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. @@ -5680,7 +5659,7 @@ _LT_EOF ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes @@ -5891,7 +5870,6 @@ _LT_EOF emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; osf3*) @@ -6658,8 +6636,8 @@ if test yes != "$_lt_caught_CXX_error"; then cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in - ,cl* | no,cl* | ,icl* | no,icl*) - # Native MSVC or ICC + ,cl* | no,cl*) + # Native MSVC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' @@ -6757,7 +6735,6 @@ if test yes != "$_lt_caught_CXX_error"; then emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' ;; dgux*) @@ -6788,7 +6765,7 @@ if test yes != "$_lt_caught_CXX_error"; then _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; - freebsd* | dragonfly* | midnightbsd*) + freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes @@ -6925,7 +6902,7 @@ if test yes != "$_lt_caught_CXX_error"; then # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in @@ -7065,13 +7042,13 @@ if test yes != "$_lt_caught_CXX_error"; then _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) - case `$CC -V 2>&1 | $SED 5q` in + case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' @@ -8209,14 +8186,6 @@ _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) AC_SUBST([DLLTOOL]) ]) -# _LT_DECL_FILECMD -# ---------------- -# Check for a file(cmd) program that can be used to detect file type and magic -m4_defun([_LT_DECL_FILECMD], -[AC_CHECK_TOOL([FILECMD], [file], [:]) -_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) -])# _LD_DECL_FILECMD - # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates @@ -8396,8 +8365,8 @@ _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], # Helper functions for option handling. -*- Autoconf -*- # -# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free -# Software Foundation, Inc. +# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software +# Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives @@ -8828,7 +8797,7 @@ LT_OPTION_DEFINE([LTDL_INIT], [convenience], # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software +# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # @@ -8953,8 +8922,7 @@ m4_define([lt_dict_filter], # ltversion.m4 -- version numbers -*- Autoconf -*- # -# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, -# Inc. +# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@ -8963,23 +8931,23 @@ m4_define([lt_dict_filter], # @configure_input@ -# serial 4245 ltversion.m4 +# serial 4179 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.7]) -m4_define([LT_PACKAGE_REVISION], [2.4.7]) +m4_define([LT_PACKAGE_VERSION], [2.4.6]) +m4_define([LT_PACKAGE_REVISION], [2.4.6]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.7' -macro_revision='2.4.7' +[macro_version='2.4.6' +macro_revision='2.4.6' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) *** 39662 LINES SKIPPED *** From nobody Fri Oct 25 03:29:52 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZSvj3Z55z5bCRc; Fri, 25 Oct 2024 03:29:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZSvj1yc4z4c4R; Fri, 25 Oct 2024 03:29:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sQXd42Md7rBEhaZRYunBtnnS8T5UjoK85qXpiTGRnz4=; b=Kr2OAGVZ03gltvd1zjPw/RY3P5KbCyQlWeRrRpz9ofZ9Zd8xhPSYX6hEu1qjtf0JwGkZY3 65rz28b4HTyWmxunl8KHqPUvVkNCGucWqqOTyY4zlXBW4iIDpBzxXf47zIMo4yEWLg08du apGCQTN5ogF0ib3IhsqYXC0F/YPKiHDWuFRueoGocG3piFZksdh5Jqyisn1dQJIDNnfvRZ eijDiPrKDUGyYlve0I9fbDX48G4tY+GrI2Isa78YdavqKhD3CM3YB4ocNRqnFHFGkib9jX 3TL0NoR4h9Pq2if0sG2g0Oq9V6wA4ROr5IP7A2xjrBacfKhm0m7fHHCoaubZQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729826993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sQXd42Md7rBEhaZRYunBtnnS8T5UjoK85qXpiTGRnz4=; b=DfXYkEQunAXXKxYHZdHdfECNZf7XkywpyMav0sx/OzodpPvsfGLm21wivt/F5LjZNq8QhY onKfooSmV5ODQoZxIPWy9q+zaN2EKZZ/sxgfu7wWkCFOp6FEXl5ewmawLEv7mouJ47WuYj PWOYnQumsOc0z1fZ7tE7D1ARLf/7M2Mo2VSoGxSo0i18zUx2bwaS0ABC0IUHdj5u58dsiD V9N+LQ4nnTqFk/6B2qXxNNS7qmQsfJ0phMdBY36fikrl5wcEJB926uik6mYf7ZrfPcb+EK y5SrgJTOA9TlktgY9NiejyvQddfNjCYOHsR9H0y4CIqPpIhnoLSDnNfX+yxgJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729826993; a=rsa-sha256; cv=none; b=VA4JAB+oIUd83/9T8vfofl2U1X8Dc/WN0M5FmmWzTom57ZLS/A7OplsuanytLIDjESxH23 Ekgwf3DCALewfSJceAsI09uIsj4owXR+7XAccFrhgMGutp10cyQum1zpBj47NKhMf3+EVs MVBAgm8PDPAfyiQYGkiyk1HiutXqLY+vzPWpuwAr5AzPYlLDqT7BfcWJgJLbhw3gU0dlr8 uonC54LvWJWhoP/T/Lqx1Cu9Weue1QPS72kJz2C9Mxw/Bgmdmkvg8u9O9P9FHiZLCGgPIN OU2QCM3s3l9GnVKwGR/V6RDaTCy8zqwOU2GuEuBU0j349et+ulbGaZU+8XVYvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZSvj1YsNz18h2; Fri, 25 Oct 2024 03:29: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 49P3Trp1030705; Fri, 25 Oct 2024 03:29:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49P3TqZT030702; Fri, 25 Oct 2024 03:29:52 GMT (envelope-from git) Date: Fri, 25 Oct 2024 03:29:52 GMT Message-Id: <202410250329.49P3TqZT030702@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 4a964120f57b - stable/13 - unbound: Remove testcode and testdata List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4a964120f57b6f2f8b74dd572bfa2681b30b1f36 Auto-Submitted: auto-generated The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=4a964120f57b6f2f8b74dd572bfa2681b30b1f36 commit 4a964120f57b6f2f8b74dd572bfa2681b30b1f36 Author: Cy Schubert AuthorDate: 2024-10-18 14:14:41 +0000 Commit: Cy Schubert CommitDate: 2024-10-25 03:29:15 +0000 unbound: Remove testcode and testdata The testcode and testdata directories are not used by FreeBSD. Remove them. MFC after: 1 week (cherry picked from commit 0c2af19e78a0a8dbbf305b74c944b5758578ea30) --- contrib/unbound/testcode/doqclient.c | 2701 -------------------- contrib/unbound/testcode/unitdoq.c | 84 - contrib/unbound/testdata/00-lint.tdir/00-lint.pre | 14 - .../09-unbound-control.tdir/conf.bad_credentials | 5 - .../conf.spoofed_credentials | 5 - .../09-unbound-control.tdir/view_local_data | 4 - .../09-unbound-control.tdir/view_local_data_remove | 4 - .../testdata/acl_interface.tdir/rpz-nx.zone | 3 - .../testdata/acl_interface.tdir/rpz-one.zone | 3 - .../testdata/acl_interface.tdir/rpz-two.zone | 3 - .../unbound/testdata/auth_tls.tdir/auth_tls.dsc | 16 - .../testdata/auth_tls.tdir/auth_tls.nsd.conf | 21 - .../unbound/testdata/auth_tls.tdir/auth_tls.post | 14 - .../unbound/testdata/auth_tls.tdir/auth_tls.pre | 47 - .../unbound/testdata/auth_tls.tdir/auth_tls.test | 48 - .../testdata/auth_tls.tdir/auth_tls.ub.conf | 22 - .../testdata/auth_tls.tdir/example.com.zone | 4 - .../unbound/testdata/auth_tls.tdir/nsd_server.key | 39 - .../unbound/testdata/auth_tls.tdir/nsd_server.pem | 22 - .../testdata/auth_tls.tdir/unbound_server.key | 39 - .../testdata/auth_tls.tdir/unbound_server.pem | 22 - .../auth_tls_failcert.tdir/auth_tls_failcert.dsc | 16 - .../auth_tls_failcert.nsd.conf | 21 - .../auth_tls_failcert.tdir/auth_tls_failcert.post | 14 - .../auth_tls_failcert.tdir/auth_tls_failcert.pre | 47 - .../auth_tls_failcert.tdir/auth_tls_failcert.test | 56 - .../auth_tls_failcert.ub.conf | 23 - .../auth_tls_failcert.tdir/example.com.zone | 4 - .../testdata/auth_tls_failcert.tdir/nsd_server.key | 39 - .../testdata/auth_tls_failcert.tdir/nsd_server.pem | 22 - .../auth_tls_failcert.tdir/unbound_server.key | 39 - .../auth_tls_failcert.tdir/unbound_server.pem | 22 - contrib/unbound/testdata/cachedb_cached_ede.crpl | 91 - contrib/unbound/testdata/cachedb_expired.crpl | 324 --- .../testdata/cachedb_expired_client_timeout.crpl | 343 --- .../testdata/cachedb_expired_reply_ttl.crpl | 259 -- .../cachedb_no_store.tdir/cachedb_no_store.conf | 29 - .../cachedb_no_store.tdir/cachedb_no_store.dsc | 16 - .../cachedb_no_store.tdir/cachedb_no_store.post | 20 - .../cachedb_no_store.tdir/cachedb_no_store.pre | 36 - .../cachedb_no_store.servfail.testns | 8 - .../cachedb_no_store.tdir/cachedb_no_store.test | 132 - .../cachedb_no_store.tdir/cachedb_no_store.testns | 9 - .../unbound/testdata/cachedb_servfail_cname.crpl | 181 -- .../unbound/testdata/cachedb_subnet_change.crpl | 304 --- .../unbound/testdata/cachedb_subnet_expired.crpl | 322 --- .../testdata/cachedb_subnet_toecs_timeout.crpl | 229 -- contrib/unbound/testdata/cachedb_val_expired.crpl | 327 --- .../testdata/cookie_file.tdir/cookie_file.conf | 19 - .../testdata/cookie_file.tdir/cookie_file.dsc | 16 - .../testdata/cookie_file.tdir/cookie_file.pre | 24 - .../testdata/cookie_file.tdir/cookie_file.test | 250 -- contrib/unbound/testdata/disable_edns_do.rpl | 164 -- contrib/unbound/testdata/dns64_prefetch_cache.rpl | 195 -- .../doq_downstream.tdir/doq_downstream.conf | 21 - .../doq_downstream.tdir/doq_downstream.dsc | 16 - .../doq_downstream.tdir/doq_downstream.post | 13 - .../doq_downstream.tdir/doq_downstream.pre | 44 - .../doq_downstream.tdir/doq_downstream.test | 109 - .../doq_downstream.tdir/doq_downstream.testns | 13 - .../doq_downstream.tdir/unbound_server.key | 15 - .../doq_downstream.tdir/unbound_server.pem | 11 - .../unbound/testdata/edns_downstream_cookies.rpl | 235 -- contrib/unbound/testdata/fwd_name_lookup.rpl | 152 -- .../testdata/ip_ratelimit.tdir/ip_ratelimit.conf | 28 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.dsc | 16 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.post | 13 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.pre | 24 - .../testdata/ip_ratelimit.tdir/ip_ratelimit.test | 165 -- .../testdata/ip_ratelimit.tdir/unbound_control.key | 39 - .../testdata/ip_ratelimit.tdir/unbound_control.pem | 22 - .../testdata/ip_ratelimit.tdir/unbound_server.key | 39 - .../testdata/ip_ratelimit.tdir/unbound_server.pem | 22 - .../unbound/testdata/iter_cname_minimise_nx.rpl | 245 -- contrib/unbound/testdata/iter_dname_ttl.rpl | 271 -- contrib/unbound/testdata/iter_failreply.rpl | 132 - .../testdata/iter_ghost_grandchild_delegation.rpl | 256 -- contrib/unbound/testdata/iter_ignore_empty.rpl | 248 -- contrib/unbound/testdata/iter_max_global_quota.rpl | 2236 ---------------- contrib/unbound/testdata/iter_nat64.rpl | 117 - contrib/unbound/testdata/iter_nat64_prefix.rpl | 119 - contrib/unbound/testdata/iter_nat64_prefix48.rpl | 118 - contrib/unbound/testdata/iter_scrub_rr_length.rpl | 298 --- contrib/unbound/testdata/iter_unverified_glue.rpl | 188 -- .../testdata/iter_unverified_glue_fallback.rpl | 138 - contrib/unbound/testdata/local_cnameother.rpl | 67 - .../testdata/root_zonemd.tdir/root_zonemd.conf | 34 - .../testdata/root_zonemd.tdir/root_zonemd.dsc | 16 - .../testdata/root_zonemd.tdir/root_zonemd.post | 14 - .../testdata/root_zonemd.tdir/root_zonemd.pre | 50 - .../testdata/root_zonemd.tdir/root_zonemd.test | 63 - .../testdata/root_zonemd.tdir/root_zonemd.testns | 9 - contrib/unbound/testdata/rpz_cached_cname.rpl | 122 - contrib/unbound/testdata/rpz_clientip_override.rpl | 269 -- contrib/unbound/testdata/rpz_cname_handle.rpl | 779 ------ contrib/unbound/testdata/rpz_cname_tag.rpl | 281 -- contrib/unbound/testdata/rpz_nsdname_override.rpl | 325 --- contrib/unbound/testdata/rpz_nsip_override.rpl | 332 --- contrib/unbound/testdata/rpz_passthru_clientip.rpl | 90 - contrib/unbound/testdata/rpz_qtype_cname.rpl | 120 - .../testdata/rpz_reload.tdir/example.org.zone | 2 - .../testdata/rpz_reload.tdir/rpz.example.com.zone | 6 - .../testdata/rpz_reload.tdir/rpz_reload.conf | 30 - .../testdata/rpz_reload.tdir/rpz_reload.dsc | 16 - .../testdata/rpz_reload.tdir/rpz_reload.post | 12 - .../testdata/rpz_reload.tdir/rpz_reload.pre | 26 - .../testdata/rpz_reload.tdir/rpz_reload.test | 109 - contrib/unbound/testdata/rpz_val_block.rpl | 643 ----- contrib/unbound/testdata/rrset_use_cached.rpl | 151 -- .../unbound/testdata/serve_expired_0ttl_nodata.rpl | 154 -- .../testdata/serve_expired_0ttl_nxdomain.rpl | 154 -- .../testdata/serve_expired_0ttl_servfail.rpl | 129 - .../testdata/serve_expired_cached_servfail.rpl | 130 - .../serve_expired_cached_servfail_refresh.rpl | 145 -- .../serve_expired_client_timeout_val_bogus.rpl | 317 --- ...ired_client_timeout_val_insecure_delegation.rpl | 247 -- .../unbound/testdata/serve_expired_ttl_reset.rpl | 102 - .../unbound/testdata/serve_expired_val_bogus.rpl | 316 --- .../stat_values.tdir/stat_values_cachedb.conf | 36 - .../stat_values_downstream_cookies.conf | 32 - contrib/unbound/testdata/subnet_cached_ede.crpl | 114 - .../unbound/testdata/subnet_cached_servfail.crpl | 167 -- contrib/unbound/testdata/subnet_cached_size.crpl | 308 --- .../unbound/testdata/subnet_global_prefetch.crpl | 236 -- .../subnet_global_prefetch_always_forward.crpl | 167 -- .../testdata/subnet_global_prefetch_expired.crpl | 241 -- contrib/unbound/testdata/subnet_prezero.crpl | 155 -- .../unbound/testdata/subnet_scopezero_noedns.crpl | 441 ---- contrib/unbound/testdata/ttl_max_negative.rpl | 206 -- contrib/unbound/testdata/ttl_min_negative.rpl | 204 -- contrib/unbound/testdata/val_any_negcache.rpl | 243 -- contrib/unbound/testdata/val_cnameqtype_qmin.rpl | 784 ------ contrib/unbound/testdata/val_dname_twice.rpl | 226 -- contrib/unbound/testdata/val_dnameqtype.rpl | 689 ----- contrib/unbound/testdata/val_dnameqtype_qmin.rpl | 859 ------- contrib/unbound/testdata/val_failure_dnskey.rpl | 348 --- contrib/unbound/testdata/val_negcache_ttl.rpl | 188 -- .../unbound/testdata/val_negcache_ttl_prefetch.rpl | 316 --- contrib/unbound/testdata/val_scrub_rr_length.rpl | 164 -- 139 files changed, 23468 deletions(-) diff --git a/contrib/unbound/testcode/doqclient.c b/contrib/unbound/testcode/doqclient.c deleted file mode 100644 index 1a2fd418359b..000000000000 --- a/contrib/unbound/testcode/doqclient.c +++ /dev/null @@ -1,2701 +0,0 @@ -/* - * testcode/doqclient.c - debug program. Perform multiple DNS queries using DoQ. - * - * Copyright (c) 2022, NLnet Labs. All rights reserved. - * - * This software is open source. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * Neither the name of the NLNET LABS nor the names of its contributors may - * be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * \file - * - * Simple DNS-over-QUIC client. For testing and debugging purposes. - * No authentication of TLS cert. - */ - -#include "config.h" -#ifdef HAVE_GETOPT_H -#include -#endif - -#ifdef HAVE_NGTCP2 -#include -#include -#ifdef HAVE_NGTCP2_NGTCP2_CRYPTO_QUICTLS_H -#include -#else -#include -#endif -#include -#include -#ifdef HAVE_TIME_H -#include -#endif -#include -#include "util/locks.h" -#include "util/net_help.h" -#include "sldns/sbuffer.h" -#include "sldns/str2wire.h" -#include "sldns/wire2str.h" -#include "util/data/msgreply.h" -#include "util/data/msgencode.h" -#include "util/data/msgparse.h" -#include "util/data/dname.h" -#include "util/random.h" -#include "util/ub_event.h" -struct doq_client_stream_list; -struct doq_client_stream; - -/** the local client data for the DoQ connection */ -struct doq_client_data { - /** file descriptor */ - int fd; - /** the event base for the events */ - struct ub_event_base* base; - /** the ub event */ - struct ub_event* ev; - /** the expiry timer */ - struct ub_event* expire_timer; - /** is the expire_timer added */ - int expire_timer_added; - /** the ngtcp2 connection information */ - struct ngtcp2_conn* conn; - /** random state */ - struct ub_randstate* rnd; - /** server connected to as a string */ - const char* svr; - /** the static secret */ - uint8_t* static_secret_data; - /** the static secret size */ - size_t static_secret_size; - /** destination address sockaddr */ - struct sockaddr_storage dest_addr; - /** length of dest addr */ - socklen_t dest_addr_len; - /** local address sockaddr */ - struct sockaddr_storage local_addr; - /** length of local addr */ - socklen_t local_addr_len; - /** SSL context */ - SSL_CTX* ctx; - /** SSL object */ - SSL* ssl; -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - /** the connection reference for ngtcp2_conn and userdata in ssl */ - struct ngtcp2_crypto_conn_ref conn_ref; -#endif - /** the quic version to use */ - uint32_t quic_version; - /** the last error */ -#ifdef HAVE_NGTCP2_CCERR_DEFAULT - struct ngtcp2_ccerr ccerr; -#else - struct ngtcp2_connection_close_error last_error; -#endif - /** the recent tls alert error code */ - uint8_t tls_alert; - /** the buffer for packet operations */ - struct sldns_buffer* pkt_buf; - /** The list of queries to start. They have no stream associated. - * Once they do, they move to the send list. */ - struct doq_client_stream_list* query_list_start; - /** The list of queries to send. They have a stream, and they are - * sending data. Data could also be received, like errors. */ - struct doq_client_stream_list* query_list_send; - /** The list of queries to receive. They have a stream, and the - * send is done, it is possible to read data. */ - struct doq_client_stream_list* query_list_receive; - /** The list of queries that are stopped. They have no stream - * active any more. Write and read are done. The query is done, - * and it may be in error and then have no answer or partial answer. */ - struct doq_client_stream_list* query_list_stop; - /** is there a blocked packet in the blocked_pkt buffer */ - int have_blocked_pkt; - /** store blocked packet, a packet that could not be sent on the - * nonblocking socket. */ - struct sldns_buffer* blocked_pkt; - /** ecn info for the blocked packet */ - struct ngtcp2_pkt_info blocked_pkt_pi; - /** the congestion control algorithm */ - ngtcp2_cc_algo cc_algo; - /** the transport parameters file, for early data transmission */ - const char* transport_file; - /** the tls session file, for session resumption */ - const char* session_file; - /** if early data is enabled for the connection */ - int early_data_enabled; - /** how quiet is the output */ - int quiet; - /** the configured port for the destination */ - int port; -}; - -/** the local client stream list, for appending streams to */ -struct doq_client_stream_list { - /** first and last members of the list */ - struct doq_client_stream* first, *last; -}; - -/** the local client data for a DoQ stream */ -struct doq_client_stream { - /** next stream in list, and prev in list */ - struct doq_client_stream* next, *prev; - /** the data buffer */ - uint8_t* data; - /** length of the data buffer */ - size_t data_len; - /** if the client query has a stream, that is active, associated with - * it. The stream_id is in stream_id. */ - int has_stream; - /** the stream id */ - int64_t stream_id; - /** data written position */ - size_t nwrite; - /** the data length for write, in network format */ - uint16_t data_tcplen; - /** if the write of the query data is done. That means the - * write channel has FIN, is closed for writing. */ - int write_is_done; - /** data read position */ - size_t nread; - /** the answer length, in network byte order */ - uint16_t answer_len; - /** the answer buffer */ - struct sldns_buffer* answer; - /** the answer is complete */ - int answer_is_complete; - /** the query has an error, it has no answer, or no complete answer */ - int query_has_error; - /** if the query is done */ - int query_is_done; -}; - -#ifndef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT -/** the quic method struct, must remain valid during the QUIC connection. */ -static SSL_QUIC_METHOD quic_method; -#endif - -/** Get the connection ngtcp2_conn from the ssl app data - * ngtcp2_crypto_conn_ref */ -static ngtcp2_conn* conn_ref_get_conn(ngtcp2_crypto_conn_ref* conn_ref) -{ - struct doq_client_data* data = (struct doq_client_data*) - conn_ref->user_data; - return data->conn; -} - -static void -set_app_data(SSL* ssl, struct doq_client_data* data) -{ -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - data->conn_ref.get_conn = &conn_ref_get_conn; - data->conn_ref.user_data = data; - SSL_set_app_data(ssl, &data->conn_ref); -#else - SSL_set_app_data(ssl, data); -#endif -} - -static struct doq_client_data* -get_app_data(SSL* ssl) -{ - struct doq_client_data* data; -#ifdef HAVE_NGTCP2_CRYPTO_QUICTLS_CONFIGURE_CLIENT_CONTEXT - data = (struct doq_client_data*)((struct ngtcp2_crypto_conn_ref*) - SSL_get_app_data(ssl))->user_data; -#else - data = (struct doq_client_data*) SSL_get_app_data(ssl); -#endif - return data; -} - - - -/** write handle routine */ -static void on_write(struct doq_client_data* data); -/** update the timer */ -static void update_timer(struct doq_client_data* data); -/** disconnect we are done */ -static void disconnect(struct doq_client_data* data); -/** fetch and write the transport file */ -static void early_data_write_transport(struct doq_client_data* data); - -/** usage of doqclient */ -static void usage(char* argv[]) -{ - printf("usage: %s [options] name type class ...\n", argv[0]); - printf(" sends the name-type-class queries over " - "DNS-over-QUIC.\n"); - printf("-s server IP address to send the queries to, " - "default: 127.0.0.1\n"); - printf("-p Port to connect to, default: %d\n", - UNBOUND_DNS_OVER_QUIC_PORT); - printf("-v verbose output\n"); - printf("-q quiet, short output of answer\n"); - printf("-x file transport file, for read/write of transport parameters.\n\t\tIf it exists, it is used to send early data. It is then\n\t\twritten to contain the last used transport parameters.\n\t\tAlso -y must be enabled for early data to succeed.\n"); - printf("-y file session file, for read/write of TLS session. If it exists,\n\t\tit is used for TLS session resumption. It is then written\n\t\tto contain the last session used.\n\t\tOn its own, without also -x, resumes TLS session.\n"); - printf("-h This help text\n"); - exit(1); -} - -/** get the dest address */ -static void -get_dest_addr(struct doq_client_data* data, const char* svr, int port) -{ - if(!ipstrtoaddr(svr, port, &data->dest_addr, &data->dest_addr_len)) { - printf("fatal: bad server specs '%s'\n", svr); - exit(1); - } -} - -/** open UDP socket to svr */ -static int -open_svr_udp(struct doq_client_data* data) -{ - int fd = -1; - int r; - fd = socket(addr_is_ip6(&data->dest_addr, data->dest_addr_len)? - PF_INET6:PF_INET, SOCK_DGRAM, 0); - if(fd == -1) { - perror("socket() error"); - exit(1); - } - r = connect(fd, (struct sockaddr*)&data->dest_addr, - data->dest_addr_len); - if(r < 0 && r != EINPROGRESS) { - perror("connect() error"); - exit(1); - } - fd_set_nonblock(fd); - return fd; -} - -/** get the local address of the connection */ -static void -get_local_addr(struct doq_client_data* data) -{ - memset(&data->local_addr, 0, sizeof(data->local_addr)); - data->local_addr_len = (socklen_t)sizeof(data->local_addr); - if(getsockname(data->fd, (struct sockaddr*)&data->local_addr, - &data->local_addr_len) == -1) { - perror("getsockname() error"); - exit(1); - } - log_addr(1, "local_addr", &data->local_addr, data->local_addr_len); - log_addr(1, "dest_addr", &data->dest_addr, data->dest_addr_len); -} - -static sldns_buffer* -make_query(char* qname, char* qtype, char* qclass) -{ - struct query_info qinfo; - struct edns_data edns; - sldns_buffer* buf = sldns_buffer_new(65553); - if(!buf) fatal_exit("out of memory"); - qinfo.qname = sldns_str2wire_dname(qname, &qinfo.qname_len); - if(!qinfo.qname) { - printf("cannot parse query name: '%s'\n", qname); - exit(1); - } - - qinfo.qtype = sldns_get_rr_type_by_name(qtype); - qinfo.qclass = sldns_get_rr_class_by_name(qclass); - qinfo.local_alias = NULL; - - qinfo_query_encode(buf, &qinfo); /* flips buffer */ - free(qinfo.qname); - sldns_buffer_write_u16_at(buf, 0, 0x0000); - sldns_buffer_write_u16_at(buf, 2, BIT_RD); - memset(&edns, 0, sizeof(edns)); - edns.edns_present = 1; - edns.bits = EDNS_DO; - edns.udp_size = 4096; - if(sldns_buffer_capacity(buf) >= - sldns_buffer_limit(buf)+calc_edns_field_size(&edns)) - attach_edns_record(buf, &edns); - return buf; -} - -/** create client stream structure */ -static struct doq_client_stream* -client_stream_create(struct sldns_buffer* query_data) -{ - struct doq_client_stream* str = calloc(1, sizeof(*str)); - if(!str) - fatal_exit("calloc failed: out of memory"); - str->data = memdup(sldns_buffer_begin(query_data), - sldns_buffer_limit(query_data)); - if(!str->data) - fatal_exit("alloc data failed: out of memory"); - str->data_len = sldns_buffer_limit(query_data); - str->stream_id = -1; - return str; -} - -/** free client stream structure */ -static void -client_stream_free(struct doq_client_stream* str) -{ - if(!str) - return; - free(str->data); - sldns_buffer_free(str->answer); - free(str); -} - -/** setup the stream to start the write process */ -static void -client_stream_start_setup(struct doq_client_stream* str, int64_t stream_id) -{ - str->has_stream = 1; - str->stream_id = stream_id; - str->nwrite = 0; - str->nread = 0; - str->answer_len = 0; - str->query_is_done = 0; - str->answer_is_complete = 0; - str->query_has_error = 0; - if(str->answer) { - sldns_buffer_free(str->answer); - str->answer = NULL; - } -} - -/** Return string for log purposes with query name. */ -static char* -client_stream_string(struct doq_client_stream* str) -{ - char* s; - size_t dname_len; - char dname[256], tpstr[32], result[256+32+16]; - uint16_t tp; - if(str->data_len <= LDNS_HEADER_SIZE) { - s = strdup("query_with_no_question"); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; - } - dname_len = dname_valid(str->data+LDNS_HEADER_SIZE, - str->data_len-LDNS_HEADER_SIZE); - if(!dname_len) { - s = strdup("query_dname_not_valid"); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; - } - (void)sldns_wire2str_dname_buf(str->data+LDNS_HEADER_SIZE, dname_len, - dname, sizeof(dname)); - tp = sldns_wirerr_get_type(str->data+LDNS_HEADER_SIZE, - str->data_len-LDNS_HEADER_SIZE, dname_len); - (void)sldns_wire2str_type_buf(tp, tpstr, sizeof(tpstr)); - snprintf(result, sizeof(result), "%s %s", dname, tpstr); - s = strdup(result); - if(!s) - fatal_exit("strdup failed: out of memory"); - return s; -} - -/** create query stream list */ -static struct doq_client_stream_list* -stream_list_create(void) -{ - struct doq_client_stream_list* list = calloc(1, sizeof(*list)); - if(!list) - fatal_exit("calloc failed: out of memory"); - return list; -} - -/** free the query stream list */ -static void -stream_list_free(struct doq_client_stream_list* list) -{ - struct doq_client_stream* str; - if(!list) - return; - str = list->first; - while(str) { - struct doq_client_stream* next = str->next; - client_stream_free(str); - str = next; - } - free(list); -} - -/** append item to list */ -static void -stream_list_append(struct doq_client_stream_list* list, - struct doq_client_stream* str) -{ - if(list->last) { - str->prev = list->last; - list->last->next = str; - } else { - str->prev = NULL; - list->first = str; - } - str->next = NULL; - list->last = str; -} - -/** delete the item from the list */ -static void -stream_list_delete(struct doq_client_stream_list* list, - struct doq_client_stream* str) -{ - if(str->next) { - str->next->prev = str->prev; - } else { - list->last = str->prev; - } - if(str->prev) { - str->prev->next = str->next; - } else { - list->first = str->next; - } - str->prev = NULL; - str->next = NULL; -} - -/** move the item from list1 to list2 */ -static void -stream_list_move(struct doq_client_stream* str, - struct doq_client_stream_list* list1, - struct doq_client_stream_list* list2) -{ - stream_list_delete(list1, str); - stream_list_append(list2, str); -} - -/** allocate stream data buffer, then answer length is complete */ -static void -client_stream_datalen_complete(struct doq_client_stream* str) -{ - verbose(1, "answer length %d", (int)ntohs(str->answer_len)); - str->answer = sldns_buffer_new(ntohs(str->answer_len)); - if(!str->answer) - fatal_exit("sldns_buffer_new failed: out of memory"); - sldns_buffer_set_limit(str->answer, ntohs(str->answer_len)); -} - -/** print the answer rrs */ -static void -print_answer_rrs(uint8_t* pkt, size_t pktlen) -{ - char buf[65535]; - char* str; - size_t str_len; - int i, qdcount, ancount; - uint8_t* data = pkt; - size_t data_len = pktlen; - int comprloop = 0; - if(data_len < LDNS_HEADER_SIZE) - return; - qdcount = LDNS_QDCOUNT(data); - ancount = LDNS_ANCOUNT(data); - data += LDNS_HEADER_SIZE; - data_len -= LDNS_HEADER_SIZE; - - for(i=0; iquery_has_error) { - char* logs = client_stream_string(str); - printf("%s has error, there is no answer\n", logs); - free(logs); - return; - } - if(sldns_buffer_limit(str->answer) < LDNS_HEADER_SIZE) { - char* logs = client_stream_string(str); - printf("%s received short packet, smaller than header\n", - logs); - free(logs); - return; - } - rcode = LDNS_RCODE_WIRE(sldns_buffer_begin(str->answer)); - if(rcode != 0) { - char* logs = client_stream_string(str); - char rc[16]; - (void)sldns_wire2str_rcode_buf(rcode, rc, sizeof(rc)); - printf("%s rcode %s\n", logs, rc); - free(logs); - return; - } - ancount = LDNS_ANCOUNT(sldns_buffer_begin(str->answer)); - if(ancount == 0) { - char* logs = client_stream_string(str); - printf("%s nodata answer\n", logs); - free(logs); - return; - } - print_answer_rrs(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); -} - -/** print the stream output answer */ -static void -client_stream_print_long(struct doq_client_data* data, - struct doq_client_stream* str) -{ - char* s; - if(str->query_has_error) { - char* logs = client_stream_string(str); - printf("%s has error, there is no answer\n", logs); - free(logs); - return; - } - s = sldns_wire2str_pkt(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); - printf("%s", (s?s:";sldns_wire2str_pkt failed\n")); - printf(";; SERVER: %s %d\n", data->svr, data->port); - free(s); -} - -/** the stream has completed the data */ -static void -client_stream_data_complete(struct doq_client_stream* str) -{ - verbose(1, "received all answer content"); - if(verbosity > 0) { - char* logs = client_stream_string(str); - char* s; - log_buf(1, "received answer", str->answer); - s = sldns_wire2str_pkt(sldns_buffer_begin(str->answer), - sldns_buffer_limit(str->answer)); - if(!s) verbose(1, "could not sldns_wire2str_pkt"); - else verbose(1, "query %s received:\n%s", logs, s); - free(s); - free(logs); - } - str->answer_is_complete = 1; -} - -/** the stream has completed but with an error */ -static void -client_stream_answer_error(struct doq_client_stream* str) -{ - if(verbosity > 0) { - char* logs = client_stream_string(str); - if(str->answer) - verbose(1, "query %s has an error. received %d/%d bytes.", - logs, (int)sldns_buffer_position(str->answer), - (int)sldns_buffer_limit(str->answer)); - else - verbose(1, "query %s has an error. received no data.", - logs); - free(logs); - } - str->query_has_error = 1; -} - -/** receive data for a stream */ -static void -client_stream_recv_data(struct doq_client_stream* str, const uint8_t* data, - size_t datalen) -{ - int got_data = 0; - /* read the tcplength uint16_t at the start of the DNS message */ - if(str->nread < 2) { - size_t to_move = datalen; - if(datalen > 2-str->nread) - to_move = 2-str->nread; - memmove(((uint8_t*)&str->answer_len)+str->nread, data, - to_move); - str->nread += to_move; - data += to_move; - datalen -= to_move; - if(str->nread == 2) { - /* we can allocate the data buffer */ - client_stream_datalen_complete(str); - } - } - /* if we have data bytes */ - if(datalen > 0) { - size_t to_write = datalen; - if(datalen > sldns_buffer_remaining(str->answer)) - to_write = sldns_buffer_remaining(str->answer); - if(to_write > 0) { - sldns_buffer_write(str->answer, data, to_write); - str->nread += to_write; - data += to_write; - datalen -= to_write; - got_data = 1; - } - } - /* extra received bytes after end? */ - if(datalen > 0) { - verbose(1, "extra bytes after end of DNS length"); - if(verbosity > 0) - log_hex("extradata", (void*)data, datalen); - } - /* are we done with it? */ - if(got_data && str->nread >= (size_t)(ntohs(str->answer_len))+2) { - client_stream_data_complete(str); - } -} - -/** receive FIN from remote end on client stream, no more data to be - * received on the stream. */ -static void -client_stream_recv_fin(struct doq_client_data* data, - struct doq_client_stream* str, int is_fin) -{ - if(verbosity > 0) { - char* logs = client_stream_string(str); - if(is_fin) - verbose(1, "query %s: received FIN from remote", logs); - else - verbose(1, "query %s: stream reset from remote", logs); - free(logs); - } - if(str->write_is_done) - stream_list_move(str, data->query_list_receive, - data->query_list_stop); - else - stream_list_move(str, data->query_list_send, - data->query_list_stop); - if(!str->answer_is_complete) { - client_stream_answer_error(str); - } - str->query_is_done = 1; - if(data->quiet) - client_stream_print_short(str); - else client_stream_print_long(data, str); - if(data->query_list_send->first==NULL && - data->query_list_receive->first==NULL) - disconnect(data); -} - -/** fill a buffer with random data */ -static void fill_rand(struct ub_randstate* rnd, uint8_t* buf, size_t len) -{ - if(RAND_bytes(buf, len) != 1) { - size_t i; - for(i=0; istatic_secret_data = malloc(len); - if(!data->static_secret_data) - fatal_exit("malloc failed: out of memory"); - data->static_secret_size = len; - fill_rand(data->rnd, data->static_secret_data, len); -} - -/** fill cid structure with random data */ -static void cid_randfill(struct ngtcp2_cid* cid, size_t datalen, - struct ub_randstate* rnd) -{ - uint8_t buf[32]; - if(datalen > sizeof(buf)) - datalen = sizeof(buf); - fill_rand(rnd, buf, datalen); - ngtcp2_cid_init(cid, buf, datalen); -} - -/** send buf on the client stream */ -static int -client_bidi_stream(struct doq_client_data* data, int64_t* ret_stream_id, - void* stream_user_data) -{ - int64_t stream_id; - int rv; - - /* open new bidirectional stream */ - rv = ngtcp2_conn_open_bidi_stream(data->conn, &stream_id, - stream_user_data); - if(rv != 0) { - if(rv == NGTCP2_ERR_STREAM_ID_BLOCKED) { - /* no bidi stream count for this new stream */ - return 0; - } - fatal_exit("could not ngtcp2_conn_open_bidi_stream: %s", - ngtcp2_strerror(rv)); - } - *ret_stream_id = stream_id; - return 1; -} - -/** See if we can start query streams, by creating bidirectional streams - * on the QUIC transport for them. */ -static void -query_streams_start(struct doq_client_data* data) -{ - while(data->query_list_start->first) { - struct doq_client_stream* str = data->query_list_start->first; - int64_t stream_id = 0; - if(!client_bidi_stream(data, &stream_id, str)) { - /* no more bidi streams allowed */ - break; - } - if(verbosity > 0) { - char* logs = client_stream_string(str); - verbose(1, "query %s start on bidi stream id %lld", - logs, (long long int)stream_id); - free(logs); - } - /* setup the stream to start */ - client_stream_start_setup(str, stream_id); - /* move the query entry to the send list to write it */ - stream_list_move(str, data->query_list_start, - data->query_list_send); - } -} - -/** the rand callback routine from ngtcp2 */ -static void rand_cb(uint8_t* dest, size_t destlen, - const ngtcp2_rand_ctx* rand_ctx) -{ - struct ub_randstate* rnd = (struct ub_randstate*) - rand_ctx->native_handle; - fill_rand(rnd, dest, destlen); -} - -/** the get_new_connection_id callback routine from ngtcp2 */ -static int get_new_connection_id_cb(struct ngtcp2_conn* ATTR_UNUSED(conn), - struct ngtcp2_cid* cid, uint8_t* token, size_t cidlen, void* user_data) -{ - struct doq_client_data* data = (struct doq_client_data*)user_data; - cid_randfill(cid, cidlen, data->rnd); - if(ngtcp2_crypto_generate_stateless_reset_token(token, - data->static_secret_data, data->static_secret_size, cid) != 0) - return NGTCP2_ERR_CALLBACK_FAILURE; - return 0; -} - -/** handle that early data is rejected */ -static void -early_data_is_rejected(struct doq_client_data* data) -{ *** 23476 LINES SKIPPED *** From nobody Fri Oct 25 11:33:22 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZgdZ2nqzz5Zcq3; Fri, 25 Oct 2024 11:33:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZgdZ2JQmz47gd; Fri, 25 Oct 2024 11:33:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729856002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XQDmhfmS8pDw3qlaLBLVzKDKJ1nvTIDlWaKLImGkbkw=; b=YvCws2amamsPONN46ZLHDWRZaQ9H+h8r5lJNYfLa+aXUWbZzeYf3xWrm/+Yhtt4yRphV6I wBYAaLLtN0R3n+0TAaycKkZ67fkILpULRlOp78BJ7CifDPrS77Oa5iCCi8Zab8KxzxEQmf BDdDhRokIeO7Ws8SiIq2ZUAOCCOQDMYLWG8FUmRHiQCR/+YxsrmEZyYJzsS8XoEWqHtoFb bwYPeQhbox4WmdhnqGwQFRT7DWNzJpN+yjOoXN4U3asSkazvik29Whs/3gCQc308qKOSWM 2Ly79KORwLm6KKyvoxoYFDbD+1OHpMCdH9cdU3E8U2CB/2Qz498zk3jjZLgI/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729856002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XQDmhfmS8pDw3qlaLBLVzKDKJ1nvTIDlWaKLImGkbkw=; b=E4/pKNpELIR87Uc7SQJoKcMFLgIEywliYpPvdGSkJXJDLIg8r/7W2mWb6TmeiTagswjwXy 1jD/39Clm/cMDMsvjB7dgJZLfL8/Iobj2SSbR/bxjyzSJU9cCcUP6ZnILq5hbv+BaCzbx5 S0zwMWjTIzUjIR/Qgz9nCMSD6d6ONZDXxHLtKasLVdKdRvDVIfG5EQ5ACR41q/z37I4AR/ 6/zMPJEhWLaaxoT356kQ20fLDH5QgZMRQ3HHXqwblwAK2de9+JOUUsmZCJC5bTrstVuwic YnarIVgVKYMQyMqT2uPzc8JGDsddCtrPCkvbQ8g+7cSlxDVX9ZPeM8S6aLd3nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729856002; a=rsa-sha256; cv=none; b=SsLC1i7582wXRefTZcV3x8RRoVBe7xqba6o1OZiJRxQCLfCrw0T5RAJsoD8do/e/5UmT7G AnM/NHL6OKhV9zaY2t03KS50Q7OeKQnP58B+P80AG+0S+SDP0bSd5/izZhYbFvseu8VhY9 X3ar+kdfAOibPBquTgwJaFqxfMgtc0sqv3QOv0/gOK22sOSUA1PX5/PYcrCeDQco7q3T9p 3jg0hJA0ay4ej3+1x4ncelaOpirAWfmrwfzvXW6k36bda+Lr9nzdYmSCPS/PXWrY9aQVDT gAwJ8IfnvgroILa99Vewb1VdHA+ju+GdOr8PBJtucpNcKea25NAPofZDFFC9pg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZgdZ1RhnzPQF; Fri, 25 Oct 2024 11:33: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 49PBXM5R038050; Fri, 25 Oct 2024 11:33:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49PBXMgi038047; Fri, 25 Oct 2024 11:33:22 GMT (envelope-from git) Date: Fri, 25 Oct 2024 11:33:22 GMT Message-Id: <202410251133.49PBXMgi038047@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 7224e9f2d4af - stable/14 - mididump(1): Initial revision List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7224e9f2d4af666550d93cf565db22b1f577f593 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=7224e9f2d4af666550d93cf565db22b1f577f593 commit 7224e9f2d4af666550d93cf565db22b1f577f593 Author: Christos Margiolis AuthorDate: 2024-10-18 08:42:12 +0000 Commit: Christos Margiolis CommitDate: 2024-10-25 11:30:26 +0000 mididump(1): Initial revision A new utility which dumps MIDI 1.0 events in real-time. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D46418 (cherry picked from commit f57efe95cc25ae527c632d4ffcf064799f922216) (cherry picked from commit b8007cfdb72c1be27d1d93937886fd60f21915ab) (cherry picked from commit feb9ba2993cf6aefa49b7b17ca49c52210c26035) (cherry picked from commit 53314e34d5e8e7f781ab990805b22f7a56bc0580) --- usr.bin/Makefile | 1 + usr.bin/mididump/Makefile | 8 ++ usr.bin/mididump/mididump.1 | 80 +++++++++++ usr.bin/mididump/mididump.c | 320 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 409 insertions(+) diff --git a/usr.bin/Makefile b/usr.bin/Makefile index 61834d33cabc..58945f7ecb18 100644 --- a/usr.bin/Makefile +++ b/usr.bin/Makefile @@ -90,6 +90,7 @@ SUBDIR= alias \ mandoc \ mdo \ mesg \ + mididump \ ministat \ mkdep \ mkfifo \ diff --git a/usr.bin/mididump/Makefile b/usr.bin/mididump/Makefile new file mode 100644 index 000000000000..758bbb3a1189 --- /dev/null +++ b/usr.bin/mididump/Makefile @@ -0,0 +1,8 @@ +.include + +PROG= mididump +SRCS= ${PROG}.c +MAN= ${PROG}.1 +LIBADD+= m + +.include diff --git a/usr.bin/mididump/mididump.1 b/usr.bin/mididump/mididump.1 new file mode 100644 index 000000000000..7b2bc649eb24 --- /dev/null +++ b/usr.bin/mididump/mididump.1 @@ -0,0 +1,80 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 The FreeBSD Foundation +.\" +.\" Portions of this software were developed by Christos Margiolis +.\" under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd September 14, 2024 +.Dt MIDIDUMP 1 +.Os +.Sh NAME +.Nm mididump +.Nd dump MIDI events +.Sh SYNOPSIS +.Nm +.Op Fl t +.Ar device +.Sh DESCRIPTION +The +.Nm +utility is used to dump MIDI 1.0 events in real-time. +.Pp +The options are as follows: +.Bl -tag -width "-t" +.It Fl t +Print "Timing Clock" events. +These events are not printed by default, as they tend to clutter output. +.El +.Pp +The +.Ar device +argument corresponds to the MIDI device (e.g. +.Pa /dev/umidi0.0 ) . +.Sh SEE ALSO +.Rs +.%T Summary of MIDI 1.0 Messages +.%U https://midi.org/summary-of-midi-1-0-messages +.Re +.Rs +.%T Expanded MIDI 1.0 Messages List (Status Bytes) +.%U https://midi.org/expanded-midi-1-0-messages-list +.Re +.Rs +.%T Standard MIDI-File Format Spec. 1.1, updated +.%U https://www.music.mcgill.ca/~ich/classes/mumt306/StandardMIDIfileformat.html +.Re +.Rs +.%T MIDI CC List for Continuous Controllers +.%U https://anotherproducer.com/online-tools-for-musicians/midi-cc-list/ +.Re +.Sh AUTHORS +The +.Nm +utility was implemented by +.An Christos Margiolis Aq Mt christos@FreeBSD.org +under sponsorship from the +.Fx +Foundation. diff --git a/usr.bin/mididump/mididump.c b/usr.bin/mididump/mididump.c new file mode 100644 index 000000000000..8ebcce547ac4 --- /dev/null +++ b/usr.bin/mididump/mididump.c @@ -0,0 +1,320 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 The FreeBSD Foundation + * + * This software was developed by Christos Margiolis + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#define NOTE2OCTAVE(n) (n / 12 - 1) +#define NOTE2FREQ(n) (440 * pow(2.0f, ((float)n - 69) / 12)) +#define CHAN_MASK 0x0f + +static struct note { + const char *name; + const char *alt; +} notes[] = { + { "C", NULL }, + { "C#", "Db" }, + { "D", NULL }, + { "D#", "Eb" }, + { "E", NULL }, + { "F", NULL }, + { "F#", "Gb" }, + { "G", NULL }, + { "G#", "Ab" }, + { "A", NULL }, + { "A#", "Bb" }, + { "B", NULL }, +}; + +/* Hardcoded values are not defined in sys/soundcard.h. */ +static const char *ctls[] = { + [CTL_BANK_SELECT] = "Bank Select", + [CTL_MODWHEEL] = "Modulation Wheel", + [CTL_BREATH] = "Breath Controller", + [0x03] = "Undefined", + [CTL_FOOT] = "Foot Pedal", + [CTL_PORTAMENTO_TIME] = "Portamento Time", + [CTL_DATA_ENTRY] = "Data Entry", + [CTL_MAIN_VOLUME] = "Volume", + [CTL_BALANCE] = "Balance", + [0x09] = "Undefined", + [CTL_PAN] = "Pan", + [CTL_EXPRESSION] = "Expression", + [0x0c] = "Effect Controller 1", + [0x0d] = "Effect Controller 2", + [0x0e] = "Undefined", + [0x0f] = "Undefined", + [CTL_GENERAL_PURPOSE1] = "General Purpose 1", + [CTL_GENERAL_PURPOSE2] = "General Purpose 2", + [CTL_GENERAL_PURPOSE3] = "General Purpose 3", + [CTL_GENERAL_PURPOSE4] = "General Purpose 4", + [0x14 ... 0x1f] = "Undefined", + [0x20 ... 0x3f] = "LSB Controller", + [CTL_DAMPER_PEDAL] = "Damper Pedal (Sustain)", + [CTL_PORTAMENTO] = "Portamento", + [CTL_SOSTENUTO] = "Sostenuto Pedal", + [CTL_SOFT_PEDAL] = "Soft Pedal", + [0x44] = "Legato Foot-Switch", + [CTL_HOLD2] = "Hold 2", + [0x46] = "Sound Controller 1", + [0x47] = "Sound Controller 2", + [0x48] = "Sound Controller 3", + [0x49] = "Sound Controller 4", + [0x4a] = "Sound Controller 5", + [0x4b] = "Sound Controller 6", + [0x4c] = "Sound Controller 7", + [0x4d] = "Sound Controller 8", + [0x4e] = "Sound Controller 9", + [0x4f] = "Sound Controller 10", + [CTL_GENERAL_PURPOSE5] = "General Purpose 5", + [CTL_GENERAL_PURPOSE6] = "General Purpose 6", + [CTL_GENERAL_PURPOSE7] = "General Purpose 7", + [CTL_GENERAL_PURPOSE8] = "General Purpose 8", + [0x54] = "Portamento CC", + [0x55 ... 0x57] = "Undefined", + [0x58] = "Hi-Res Velocity Prefix", + [0x59 ... 0x5a] = "Undefined", + [CTL_EXT_EFF_DEPTH] = "Effect 1 Depth", + [CTL_TREMOLO_DEPTH] = "Effect 2 Depth", + [CTL_CHORUS_DEPTH] = "Effect 3 Depth", + [CTL_DETUNE_DEPTH] = "Effect 4 Depth", + [CTL_PHASER_DEPTH] = "Effect 5 Depth", + [CTL_DATA_INCREMENT] = "Data Increment", + [CTL_DATA_DECREMENT] = "Data Decrement", + [CTL_NONREG_PARM_NUM_LSB] = "NRPN (LSB)", + [CTL_NONREG_PARM_NUM_MSB] = "NRPN (MSB)", + [CTL_REGIST_PARM_NUM_LSB] = "RPN (LSB)", + [CTL_REGIST_PARM_NUM_MSB] = "RPN (MSB)", + [0x66 ... 0x77] = "Undefined", + /* Channel mode messages */ + [0x78] = "All Sound Off", + [0x79] = "Reset All Controllers", + [0x7a] = "Local On/Off Switch", + [0x7b] = "All Notes Off", + [0x7c] = "Omni Mode Off", + [0x7d] = "Omni Mode On", + [0x7e] = "Mono Mode", + [0x7f] = "Poly Mode", +}; + +static void __dead2 +usage(void) +{ + fprintf(stderr, "usage: %s [-t] device\n", getprogname()); + exit(1); +} + +static uint8_t +read_byte(int fd) +{ + uint8_t byte; + + if (read(fd, &byte, sizeof(byte)) < (ssize_t)sizeof(byte)) + err(1, "read"); + + return (byte); +} + +int +main(int argc, char *argv[]) +{ + struct note *pn; + char buf[16]; + int fd, ch, tflag = 0; + uint8_t event, chan, b1, b2; + + while ((ch = getopt(argc, argv, "t")) != -1) { + switch (ch) { + case 't': + tflag = 1; + break; + case '?': /* FALLTHROUGH */ + default: + usage(); + } + } + argc -= optind; + argv += optind; + + if (argc < 1) + usage(); + + if ((fd = open(*argv, O_RDONLY)) < 0) + err(1, "open(%s)", *argv); + + for (;;) { + event = read_byte(fd); + if (!(event & 0x80)) + continue; + chan = (event & CHAN_MASK) + 1; + + switch (event) { + case 0x80 ... 0x8f: /* FALLTHROUGH */ + case 0x90 ... 0x9f: + b1 = read_byte(fd); + b2 = read_byte(fd); + pn = ¬es[b1 % nitems(notes)]; + snprintf(buf, sizeof(buf), "%s%d", pn->name, + NOTE2OCTAVE(b1)); + if (pn->alt != NULL) { + snprintf(buf + strlen(buf), sizeof(buf), + "/%s%d", pn->alt, NOTE2OCTAVE(b1)); + } + printf("Note %-3s channel=%d, " + "note=%d (%s, %.2fHz), velocity=%d\n", + (event >= 0x80 && event <= 0x8f) ? "off" : "on", + chan, b1, buf, NOTE2FREQ(b1), b2); + break; + case 0xa0 ... 0xaf: + b1 = read_byte(fd); + b2 = read_byte(fd); + printf("Polyphonic aftertouch channel=%d, note=%d, " + "pressure=%d\n", + chan, b1, b2); + break; + case 0xb0 ... 0xbf: + b1 = read_byte(fd); + b2 = read_byte(fd); + if (b1 > nitems(ctls) - 1) + break; + printf("Control/Mode change channel=%d, " + "control=%d (%s), value=%d", + chan, b1, ctls[b1], b2); + if (b1 >= 0x40 && b1 <= 0x45) { + if (b2 <= 63) + printf(" (off)"); + else + printf(" (on)"); + } + if (b1 == 0x7a) { + if (b2 == 0) + printf(" (off)"); + else if (b2 == 127) + printf(" (on"); + } + putchar('\n'); + break; + case 0xc0 ... 0xcf: + b1 = read_byte(fd); + printf("Program change channel=%d, " + "program=%d\n", + chan, b1); + break; + case 0xd0 ... 0xdf: + b1 = read_byte(fd); + printf("Channel aftertouch channel=%d, " + "pressure=%d\n", + chan, b1); + break; + case 0xe0 ... 0xef: + /* TODO Improve */ + b1 = read_byte(fd); + b2 = read_byte(fd); + printf("Pitch bend channel=%d, change=%d\n", + chan, b1 | b2 << 7); + break; + case 0xf0: + printf("SysEx vendorid="); + b1 = read_byte(fd); + printf("0x%02x", b1); + if (b1 == 0) { + printf(" 0x%02x 0x%02x", + read_byte(fd), read_byte(fd)); + } + printf(" data="); + for (;;) { + b1 = read_byte(fd); + printf("0x%02x ", b1); + /* End of SysEx (EOX) */ + if (b1 == 0xf7) + break; + } + putchar('\n'); + break; + case 0xf2: + b1 = read_byte(fd); + b2 = read_byte(fd); + printf("Song position pointer ptr=%d\n", + b1 | b2 << 7); + break; + case 0xf3: + b1 = read_byte(fd); + printf("Song select song=%d\n", b1); + break; + case 0xf6: + printf("Tune request\n"); + break; + case 0xf7: + printf("End of SysEx (EOX)\n"); + break; + case 0xf8: + if (tflag) + printf("Timing clock\n"); + break; + case 0xfa: + printf("Start\n"); + break; + case 0xfb: + printf("Continue\n"); + break; + case 0xfc: + printf("Stop\n"); + break; + case 0xfe: + printf("Active sensing\n"); + break; + case 0xff: + printf("System reset\n"); + break; + case 0xf1: /* TODO? MIDI time code qtr. frame */ + case 0xf4: /* Undefined (reserved) */ + case 0xf5: + case 0xf9: + case 0xfd: + break; + default: + printf("Unknown event type: 0x%02x\n", event); + break; + } + } + + close(fd); + + return (0); +} From nobody Fri Oct 25 15:58:44 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZnWm6hvrz5ZrG3; Fri, 25 Oct 2024 15:58:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZnWm67Dgz4b11; Fri, 25 Oct 2024 15:58:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729871924; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2JF7t1G8ItdG4VoAm0WI1CylCZ9iUT1o4SfNryjoI24=; b=EnkuaINtkYA00WDrwzP3qZsM2lwoT1QyDLFktLOnkS0g2NdIW3XzSX4s9XJmxj97oMM31a b5oT1J1BlWVgPLYlCdtX/p5md080vGgy1wyZsReGWE4SO5uKIuNROBH/0uFtBu0Or8jZ9n MzqafCo9qQeNiFwliFLkI0HDEyMUwwAmiwcsR4BHu8CPK7ADLriT48SR4UOFI+z28obrrl 5uqn4gdmHqb5zn1N1k63PGseCtEP0TuMVZpkvyWLseNcUlUJzljA+1ZrGSTggPbBeBKOeh W5Sl4akr77lkSQNx2eJpHXTlSSJDtk4lbSRoiDoWWqRnI4pfXdKHd0E17Wk5XA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729871924; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2JF7t1G8ItdG4VoAm0WI1CylCZ9iUT1o4SfNryjoI24=; b=OjeT0jYXjWJSp2qdJW9s3cFKiOPZs1x1X82DFLXHWD4Zggr/hOSkDgj6I9sqK21w1sP5Dc dYFWwIL0CAFg9gOUm+jTaIBeR3I+tIo2lFxZH5wpHMJwmJBhWMGjYINyDrkXTdyE4ZfqD+ /AtMxobTlaSg432HvafLQkpCkTTwTU/OQfdc6ie68rhFJWCiR0yiYKrrkRagGOrvCMNjeH Z+Nhi6o0sTOrlp1Uou2slAia5SvoVWUaYu9hyOAOhm0Nol1RowkFaclR+ufWivhzTFDp+e SarbkCVTTlmt66CtcMSvQC+LaNdLpYbCI5e6N6Tp8lHS10QRAjK/advlFxyhbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729871924; a=rsa-sha256; cv=none; b=lQui9E/oy7OaycNluJkEPeNsar8YWffBWbI2vhSerBxA/ICX93+7qv6D2Hv45+UaZ1Vl3Z JDnaEKlRgeWGeiVwm9ryzP/GDYUQnX9wq2ODW09iH96ZtwphcUETkG22dFtA2g3l4mUNbt XtiTm0puYNijRKpK+W5w0jols1Dx7vQwYAzXSJhrFajsXhZm3p7YN73kVgoyWfoZ9WQeLS Xe3E8yydfJ1NZcjHbpulQWX+UOwSHeXqqaEWlmVYtvuP1o+Rd64ZAGWt9LN3CDyFzZdpIG hK20VHUuBkbpfEQhI7o98XeXzQHl6cMvG5OmzyDdIkIaITy0KC4xKuY+qbdydQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZnWm5c2FzXVW; Fri, 25 Oct 2024 15:58: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 49PFwikI003091; Fri, 25 Oct 2024 15:58:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49PFwiZQ003088; Fri, 25 Oct 2024 15:58:44 GMT (envelope-from git) Date: Fri, 25 Oct 2024 15:58:44 GMT Message-Id: <202410251558.49PFwiZQ003088@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 2a0d3dd35197 - stable/14 - sysctl(8): Fix typo in comment List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2a0d3dd35197d7220c43efb281f85f37cc7019f8 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=2a0d3dd35197d7220c43efb281f85f37cc7019f8 commit 2a0d3dd35197d7220c43efb281f85f37cc7019f8 Author: Hao-Yu Hou AuthorDate: 2023-12-30 09:36:11 +0000 Commit: Zhenlei Huang CommitDate: 2024-10-25 15:57:04 +0000 sysctl(8): Fix typo in comment Line214: combind -> combine Reviewed by: zlei Event: Advanced UNIX Programming Course (Fall’23) at NTHU Request: https://github.com/freebsd/freebsd-src/pull/966 (cherry picked from commit 2e8ad2b698498a1c380d0d6fc5792b2c56926801) --- sbin/sysctl/sysctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/sysctl/sysctl.c b/sbin/sysctl/sysctl.c index 7ed7be95c9a5..df388e41c560 100644 --- a/sbin/sysctl/sysctl.c +++ b/sbin/sysctl/sysctl.c @@ -212,7 +212,7 @@ main(int argc, char **argv) argc -= optind; argv += optind; - /* Nflag is name only and doesn't make sense to combind with these */ + /* Nflag is name only and doesn't make sense to combine with these */ /* TODO: few other combinations do not make sense but come back later */ if (Nflag && (lflag || nflag)) usage(); From nobody Fri Oct 25 15:58:45 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XZnWp3hgmz5ZqqY; Fri, 25 Oct 2024 15: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XZnWp1MRQz4ZpJ; Fri, 25 Oct 2024 15: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=1729871926; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j86+V4ht3ExZ6jn/aw9El5ZvJFco79SvH6xTgWLGomc=; b=q6OiuUMi6TrQIdBrZZ/MS+37wQ30TY2mDf2utz3la8ZcAfH4TmSt1pAzIkG2G1DDyDdcKG 8Mh/mjdIRuGkNS4RVrsNh1qycvx6JDuWCfGlb4RjF5nH4+QeVnPdQdw5sF0u+diHtjUlMU l6UAWr6gLr0BlA7s+uUE1ufmHrNFbI9BzoP8x0somRnGeB8iqiY+z9zVNlBA0oE4yPfuNA IMtMe1KOs15gL92ykLKis2TyFJWBLlKvI8kZU9cMSidG6j+6TdbbNzb2br9v0/C+R1MMaG tGayM6mixgMFPraPzDT10XQ0epg2tHFTKjZHxE+4jTF3Dpa/w8eqbH66+dw5fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729871926; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j86+V4ht3ExZ6jn/aw9El5ZvJFco79SvH6xTgWLGomc=; b=BsNLqYMaHWXATSLw7zykg21bEVsGr9NQ4VlNCWC9JkEnYhlU63wdFUNiwKN54SJ9DUlFTI AtTrIBpOPxYTeduSfgYVpYEdKjW71qgGnjtwx9g/1/iZhdn10ufEiCxFchRUmC08EJInXE 0A3/15OrVESUPesGGZwWis9MUkcKFWu0WnSuoBw4NTdAJNT1KGjVt08Q8pF73JYplI69YY aTX9U2ZMtbjM2GK13eIApdb2Pmn+L/A6IxE1az8fkh24a3Qc/qR7Wc1RGKS0OlcM9e5m6H 1ZhoiCN7Ql/gPOSBeYGRMJN0dIRREKn8ytWajjm+aoD+/6JaiRd8PTFdTaKJCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729871926; a=rsa-sha256; cv=none; b=r6oDEecb947rslMoIVDoRzTsZrS5lN2G2V++SuqLX97ToTwcUsM6UFjnmBECCTjbFb8DLL Maer35NvRNKCmlbpLGVqlJ0fbpOhh4Xe/IbnYwFLBbrH0s5GMqt7OCIwiGDyQwjVDVSDu2 7N3Rm0DnQ/ju6NRCpCNFLqwcFZhAPMAQXEA34zLYlz0PbabU9gLUWAfTIaUpSt7Tzq7ybM erIdTjwDYxylIQ+dnRUs2dfbT6HkipZJFvDETHR3tN8HbHFCaMalRcubAen7jBhGgcOOlO 8MGGy/ZmFlPg5lf6TFdHxwofSjgqs7MI+PhQkB9MvvwdvgOM45n+831PDQRVKw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XZnWn6bTczXVX; Fri, 25 Oct 2024 15:58: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 49PFwjmx003133; Fri, 25 Oct 2024 15:58:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49PFwjdp003130; Fri, 25 Oct 2024 15:58:45 GMT (envelope-from git) Date: Fri, 25 Oct 2024 15:58:45 GMT Message-Id: <202410251558.49PFwjdp003130@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: bbd018d0aaaf - stable/14 - ping(8): Fix typo in ping6.c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bbd018d0aaaf24148c5e23b23802fa7f3cec734e Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=bbd018d0aaaf24148c5e23b23802fa7f3cec734e commit bbd018d0aaaf24148c5e23b23802fa7f3cec734e Author: Hao-Yu Hou AuthorDate: 2023-12-30 09:59:27 +0000 Commit: Zhenlei Huang CommitDate: 2024-10-25 15:57:05 +0000 ping(8): Fix typo in ping6.c Line 703 & 863: kerel -> kernel Line 2110: resposne -> response Event: Advanced UNIX Programming Course (Fall’23) at NTHU. Pull Request: https://github.com/freebsd/freebsd-src/pull/967 (cherry picked from commit e9866ce84f41bf8a5122713b027d1af05cbbb5b3) --- sbin/ping/ping6.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbin/ping/ping6.c b/sbin/ping/ping6.c index 10deb57ad6bc..afbaba33e4f7 100644 --- a/sbin/ping/ping6.c +++ b/sbin/ping/ping6.c @@ -713,7 +713,7 @@ ping6(int argc, char *argv[]) } /* - * let the kerel pass extension headers of incoming packets, + * let the kernel pass extension headers of incoming packets, * for privileged socket options */ if ((options & F_VERBOSE) != 0) { @@ -873,7 +873,7 @@ ping6(int argc, char *argv[]) } #endif /*ICMP6_FILTER*/ - /* let the kerel pass extension headers of incoming packets */ + /* let the kernel pass extension headers of incoming packets */ if ((options & F_VERBOSE) != 0) { int opton = 1; @@ -2120,7 +2120,7 @@ pr_nodeaddr(struct icmp6_nodeinfo *ni, int nilen) /* * In icmp-name-lookups 05 and later, TTL of each returned address - * is contained in the resposne. We try to detect the version + * is contained in the response. We try to detect the version * by the length of the data, but note that the detection algorithm * is incomplete. We assume the latest draft by default. */ From nobody Sat Oct 26 12:59:59 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XbKW34tv0z5Zjyt; Sat, 26 Oct 2024 12:59:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XbKW341Qqz4H7m; Sat, 26 Oct 2024 12:59:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729947599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P9SeMhLiRpP8TB8SSgj0MHrzGsYIyb7zm++jN56Yflw=; b=KZVkVUyMwsVrz+JujAr/v8d0h+kZIYQP+CXJr3dfTZZE8ej51CKeOK8YxqsIGHhktSqWkh 80HUzfwRPcB5vOMSf2FeYavelMWtbb6GCgJBkJq+f2Cpgvj6ofid3c52RhN1qEn1C1B8Di ypKSiUxyowt9432An9yNkuNwoVBvMeqKk55QmVHpIFE9kBDScwCliAQsRZDcWbGwSVx1bp LhxK2r+jmfye3BMBhVtipsAq3itiMy5fGnfc/KwDXm37EHIHpx0Y9xBCyyKt7gmkqPbl9E KK2wIFcHVM5qG2pWcq9Tqt19upOVE7Sg4wl8rZ1zH/3iyA7/pUdeV10wFpSGrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729947599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P9SeMhLiRpP8TB8SSgj0MHrzGsYIyb7zm++jN56Yflw=; b=f30ekdsD/krOHS0Is6Ygo32f5JGDteLTsZogcsnTnSnlwJBLMdkrSNyHiMFgwUheRz4Z7+ 97IeC86wk3DWaCpxLEVifBvA8SmeIs3e2tolRW4AFmz1X/4HcR4kHAz0VE/1btjIdM0KNH beXTHthmEGrBCC2IVvOPkRInHQ3xQqaRpj4aNhH/a+S/i0XBR7IuT3/1aqjaagfbPMhSwQ RExN8/Xj7ugtLJdlRdCRD6qS1oDMF1TIRtQCKRN39fwZ0Hu+K+NCqju8fYmK+fV19wG+zJ POLoV2Ra+RX1F4ovOZHVaNQ2pRhQ6vcAK0OEVf+rgXu/WPkGph/4iAVjy+CJuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729947599; a=rsa-sha256; cv=none; b=uU1HhjXctvvNz9Fqrmqp0r3vKarwLZzC8TLGpfDlS7Q+uLMZXOoYVP0prdOXEM6K9rtMdz 0oCzI/JHy0iQI7HmnG/hawcIAT6r7bgFRZHcdvmDUSBi3Hl5xUoCm3MftvZ/WmMCwwYmqV z0CAkZzwrUb7KpeL4eLp3se2H8SoWMP5XQT7FHlk9CCd5/092LpZfOKAUlURZW9EIj6NVu 3EOyE9wKeGCUgA1vTPWx8TvhewbS8wtDkZL0gN1hpC2LImndkTYMqsEKFnOApD1O9+ScYE v2mz2QBl8khiKTe/j6uSB+tpkgm/UU0uwneXWsQZPkC+dwmNf/Piiw9lbh3q0g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XbKW33N6xz19gH; Sat, 26 Oct 2024 12:59:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49QCxx7V062613; Sat, 26 Oct 2024 12:59:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49QCxxA8062610; Sat, 26 Oct 2024 12:59:59 GMT (envelope-from git) Date: Sat, 26 Oct 2024 12:59:59 GMT Message-Id: <202410261259.49QCxxA8062610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: b947b53f0f9f - stable/14 - vm_page: Fix a logic bug in vm_page_unwire_managed() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b947b53f0f9fc7a9ab265dfaf1548e1a1d96e2f3 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b947b53f0f9fc7a9ab265dfaf1548e1a1d96e2f3 commit b947b53f0f9fc7a9ab265dfaf1548e1a1d96e2f3 Author: Mark Johnston AuthorDate: 2024-10-07 20:50:49 +0000 Commit: Mark Johnston CommitDate: 2024-10-26 12:58:50 +0000 vm_page: Fix a logic bug in vm_page_unwire_managed() When releasing a page reference, we have logic for various cases, based on the value of the counter. But, the implementation fails to take into account the possibility that the VPRC_BLOCKED flag is set, which is ORed into the counter for short windows when removing mappings of a page. If the flag is set while the last reference is being released, we may fail to add the page to a page queue when the last wiring reference is released. Fix the problem by performing comparisons with VPRC_BLOCKED masked off. While here, add a related assertion. Reviewed by: dougm, kib Tested by: pho MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D46944 (cherry picked from commit c59166e5b4e8821556a3d23af7bd17ca556f2e22) --- sys/vm/vm_page.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 7c3083de42de..3713fe17dd13 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -4090,10 +4090,13 @@ vm_page_unwire_managed(vm_page_t m, uint8_t nqueue, bool noreuse) */ old = atomic_load_int(&m->ref_count); do { + u_int count; + KASSERT(VPRC_WIRE_COUNT(old) > 0, ("vm_page_unwire: wire count underflow for page %p", m)); - if (old > VPRC_OBJREF + 1) { + count = old & ~VPRC_BLOCKED; + if (count > VPRC_OBJREF + 1) { /* * The page has at least one other wiring reference. An * earlier iteration of this loop may have called @@ -4102,7 +4105,7 @@ vm_page_unwire_managed(vm_page_t m, uint8_t nqueue, bool noreuse) */ if ((vm_page_astate_load(m).flags & PGA_DEQUEUE) == 0) vm_page_aflag_set(m, PGA_DEQUEUE); - } else if (old == VPRC_OBJREF + 1) { + } else if (count == VPRC_OBJREF + 1) { /* * This is the last wiring. Clear PGA_DEQUEUE and * update the page's queue state to reflect the @@ -4111,7 +4114,7 @@ vm_page_unwire_managed(vm_page_t m, uint8_t nqueue, bool noreuse) * clear leftover queue state. */ vm_page_release_toq(m, nqueue, noreuse); - } else if (old == 1) { + } else if (count == 1) { vm_page_aflag_clear(m, PGA_DEQUEUE); } } while (!atomic_fcmpset_rel_int(&m->ref_count, &old, old - 1)); @@ -4387,6 +4390,8 @@ vm_page_try_blocked_op(vm_page_t m, void (*op)(vm_page_t)) do { KASSERT(old != 0, ("vm_page_try_blocked_op: page %p has no references", m)); + KASSERT((old & VPRC_BLOCKED) == 0, + ("vm_page_try_blocked_op: page %p blocks wirings", m)); if (VPRC_WIRE_COUNT(old) != 0) return (false); } while (!atomic_fcmpset_int(&m->ref_count, &old, old | VPRC_BLOCKED)); From nobody Sun Oct 27 02:27:20 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XbgQc41lKz5bScN; Sun, 27 Oct 2024 02: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XbgQc3Pdgz42tr; Sun, 27 Oct 2024 02: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=1729996040; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M+cZcGp0BUBucfvC7BfNs9usstxD+iawqa+bpCahoXw=; b=dMgOjo7Gasfwkfr7YF8ySAKgShySMyRo2kfP9hY1w1TtCTnZBT6kSSGSRn7qmZBFn+6wUp iyobJ1vJXOiWvQbaL242oM25zMsa4F8qHlo5C9jBXJDNJ8mWkmuu28uJ2GV1UpoIBeBVwa dmdfXzv4/I+2lGqKV7v6j3q5MwCoPpnwTydT5K77jnStl+vSBANolBaWu3rCz8W9Xq+Hk3 dgsytizq3Y1ASuLv5MF/PLzMiiMcPpm56pnclZ0q46R+feUNp9JXE9QPGkD8nQ/pPChMjE 8SDJSQ6AC6ncCmI16WETdwLfRUduVRXs8FTVc1dPtRLLwQ/IKF+ISn5R/eTqGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1729996040; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M+cZcGp0BUBucfvC7BfNs9usstxD+iawqa+bpCahoXw=; b=LDKifh5pqCq4ZiGkxV1TPLMd64YpVFC4SIn3d/Bnegg+4TT5270A0ZWksmQ3BE1rOCh2Ga FdS5GqWCK+ADniuouaX5NQbJQkhWi0XsxTdV4f3DIwOb9XzChURjF5X/rbMWsDCCBJ5tqQ albwq/CEbb/Ot8HvPRzvTN7mxz7nqOUUNgVn9jEhc4f3i51VbzPTWOAxZwfdzbjPM/hC1T VtCniT7zm8jJcnHlVl6E0JCCXFENxJdpak3S9a4fopi80uVFnyeKgjH+vC9O3URcFqm5Pc GVCfJMQ5Pzau3XH8xMfCToQI584RcNQITTi4ZoK+WS13+iActLmgUTXjvFS8fw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1729996040; a=rsa-sha256; cv=none; b=vYeybROT4mqevtn6q3yBAqFtmYoW3MtAxX5xSt1vhKG1nOkKzaOXKPx6AvArgA4Yx4rLzh LTSVCrdes5fmaLdTRSZYWN1+QHtTBt/L3HzQ5chZ6ym9uwCK37KvVB+iZId2XfgtMzOQ8b bZrSGTRuGz6YC0dc+zEC0u/Fckhqc9eylYNshlZ5Zfoqc2fs5G/0PmL35ngN5AI5bYFC7b 0zBVqo8VSGyVG8nS9kaN2yZqJYfrmhp816orCw4xsHmi/8VZbDZZiCrwT3CjQpXPmhX465 HgzzjtZ0jMQahilg3cVcsKhOLHhEYzRCL06cNx0ZArCmNrfdaa6oTX6892ADWw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XbgQc2phdzbrd; Sun, 27 Oct 2024 02: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 49R2RKK7064914; Sun, 27 Oct 2024 02: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 49R2RKgI064911; Sun, 27 Oct 2024 02:27:20 GMT (envelope-from git) Date: Sun, 27 Oct 2024 02:27:20 GMT Message-Id: <202410270227.49R2RKgI064911@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 02bddce58c71 - stable/14 - e1000: Move I219 LM19/V19 to ADL List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 02bddce58c71f43a440e3c7df75e90889a460aed Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=02bddce58c71f43a440e3c7df75e90889a460aed commit 02bddce58c71f43a440e3c7df75e90889a460aed Author: Kevin Bowling AuthorDate: 2024-10-24 03:31:17 +0000 Commit: Kevin Bowling CommitDate: 2024-10-27 02:27:10 +0000 e1000: Move I219 LM19/V19 to ADL This roughly corresponds to Linux 9d9e5347b035412daa844f884b94a05bac94f864 For FreeBSD this is currently not expected to cause any difference in behavior because we do not have the MTP force smbus changes for modern standby. Sponsored by: BBOX.io (cherry picked from commit 77b70ad751dfe3b115112252a5b96f504fcc2e0a) --- sys/dev/e1000/e1000_api.c | 4 ++-- sys/dev/e1000/e1000_hw.h | 4 ++-- sys/dev/e1000/if_em.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/dev/e1000/e1000_api.c b/sys/dev/e1000/e1000_api.c index cace8e563331..6c6cb999f29f 100644 --- a/sys/dev/e1000/e1000_api.c +++ b/sys/dev/e1000/e1000_api.c @@ -338,6 +338,8 @@ s32 e1000_set_mac_type(struct e1000_hw *hw) case E1000_DEV_ID_PCH_ADL_I219_V16: case E1000_DEV_ID_PCH_ADL_I219_LM17: case E1000_DEV_ID_PCH_ADL_I219_V17: + case E1000_DEV_ID_PCH_ADL_I219_LM19: + case E1000_DEV_ID_PCH_ADL_I219_V19: case E1000_DEV_ID_PCH_RPL_I219_LM22: case E1000_DEV_ID_PCH_RPL_I219_V22: case E1000_DEV_ID_PCH_RPL_I219_LM23: @@ -346,8 +348,6 @@ s32 e1000_set_mac_type(struct e1000_hw *hw) break; case E1000_DEV_ID_PCH_MTP_I219_LM18: case E1000_DEV_ID_PCH_MTP_I219_V18: - case E1000_DEV_ID_PCH_MTP_I219_LM19: - case E1000_DEV_ID_PCH_MTP_I219_V19: case E1000_DEV_ID_PCH_LNL_I219_LM20: case E1000_DEV_ID_PCH_LNL_I219_V20: case E1000_DEV_ID_PCH_LNL_I219_LM21: diff --git a/sys/dev/e1000/e1000_hw.h b/sys/dev/e1000/e1000_hw.h index f17877f3e463..b4a9592cd89b 100644 --- a/sys/dev/e1000/e1000_hw.h +++ b/sys/dev/e1000/e1000_hw.h @@ -172,8 +172,8 @@ struct e1000_hw; #define E1000_DEV_ID_PCH_ADL_I219_V17 0x1A1D #define E1000_DEV_ID_PCH_MTP_I219_LM18 0x550A #define E1000_DEV_ID_PCH_MTP_I219_V18 0x550B -#define E1000_DEV_ID_PCH_MTP_I219_LM19 0x550C -#define E1000_DEV_ID_PCH_MTP_I219_V19 0x550D +#define E1000_DEV_ID_PCH_ADL_I219_LM19 0x550C +#define E1000_DEV_ID_PCH_ADL_I219_V19 0x550D #define E1000_DEV_ID_PCH_LNL_I219_LM20 0x550E #define E1000_DEV_ID_PCH_LNL_I219_V20 0x550F #define E1000_DEV_ID_PCH_LNL_I219_LM21 0x5510 diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 22578a3d8655..0b99f1b06130 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -193,8 +193,8 @@ static const pci_vendor_info_t em_vendor_info_array[] = PVID(0x8086, E1000_DEV_ID_PCH_ADL_I219_V17, "Intel(R) I219-V ADL(17)"), PVID(0x8086, E1000_DEV_ID_PCH_MTP_I219_LM18, "Intel(R) I219-LM MTP(18)"), PVID(0x8086, E1000_DEV_ID_PCH_MTP_I219_V18, "Intel(R) I219-V MTP(18)"), - PVID(0x8086, E1000_DEV_ID_PCH_MTP_I219_LM19, "Intel(R) I219-LM MTP(19)"), - PVID(0x8086, E1000_DEV_ID_PCH_MTP_I219_V19, "Intel(R) I219-V MTP(19)"), + PVID(0x8086, E1000_DEV_ID_PCH_ADL_I219_LM19, "Intel(R) I219-LM ADL(19)"), + PVID(0x8086, E1000_DEV_ID_PCH_ADL_I219_V19, "Intel(R) I219-V ADL(19)"), PVID(0x8086, E1000_DEV_ID_PCH_LNL_I219_LM20, "Intel(R) I219-LM LNL(20)"), PVID(0x8086, E1000_DEV_ID_PCH_LNL_I219_V20, "Intel(R) I219-V LNL(20)"), PVID(0x8086, E1000_DEV_ID_PCH_LNL_I219_LM21, "Intel(R) I219-LM LNL(21)"), From nobody Sun Oct 27 09:35:34 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbrwk4vQDz5ZZPc; Sun, 27 Oct 2024 09:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbrwk4dpZz4fJ2; Sun, 27 Oct 2024 09:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730021734; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M+fhiBM2+v1tba9M02lIhDO6ZJQmrekgZ/IvjAOF7zg=; b=liNfPRCpO6xUEZCxiv0MmQZAqYQNQflxMTJPQyH/kQjNa+RZGpUiZo3caBsUzM9hcQwa0f sqPxobFbfXSxvy6pg5sx5Qv6JtLg70rsz96QSiyketsKwo9buwaD5+iuoUu1sqHpZxaZEs 1yg79AXfQUdY34B1mstkwrmmiV4mDnh5z/u/tRCjqnQgLQl//sx2f2Zr4rj/lrWQeWHdeo 1s97jHUPZtNRCNa9tHAEvyoBt8G8mJ5b+gMvRNtbIBppik25qFrrzLFmy3X3jJRwGWTIcu OcMIjxDdknIzR9Tz0TyNmxU72z66Q9SpAI96gCGxwRn/q6AN7ZkPAqjd2yJryA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730021734; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M+fhiBM2+v1tba9M02lIhDO6ZJQmrekgZ/IvjAOF7zg=; b=ZyskgVKUkUQm7Su7quQVXsiFM59qSOCL2BgqVawcGytDy/YvuqI2DzqRlkysKhtTdE5ffH x1LFXjn+iHK+X6zqNf3LgNWyRdtPgTEc0jVdo9zQ/RTlwpoleoHOgtkwFey5yaAlipXQvv Gu4C/+uXLl4XGCJ7qi3+2joYTx/nXqzux/HYlqNNm0UO5ULTy+4WqIIMitZ772LaQe5vXD wQmTb5c8YwZ+u3gRSMJh88DG81ENxXYFaXASkbNICFKthWcUXyArRITIc4vv5l9G59D+HB s1RwvlyoJouNg9nhSQwVz2Q5HbDI1gRilElFEol2E3BoBl1b/ja8uBoTnP7PKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730021734; a=rsa-sha256; cv=none; b=fa4RdI5FaVM5Uub4iEXF0l3u7Rer9mq9ACKL4rfhlhxJWe9/wqMvguI1V1HqQ0DEN1OIXz fD/A6MVVN87R4ZT9xVmy9HYtfsbirP5XgDWjJagWI373jnJDEMHb6mBc3z1F5wj5GCae5N d8sYfmHZ73yoxBOvITsGL+zApua0mP8f//I0P9iWC2tbWKq0pDbhGY8cvPtCusy3yKKSMA nBF6MLcIhnDoO/2Dwxp6ocJcQBtxXQEkPRL7mvTCEqk6KyYgnoz9oH/j/EmPVDbtcbXtrA sXXtCGjKNVpvvjs/+F+1m7caG7UC/Ye7bnyAw3dz1Ij72iWssCPlhC9m1YFbRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbrwk3wbNzq1B; Sun, 27 Oct 2024 09:35: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 49R9ZYLx059098; Sun, 27 Oct 2024 09:35:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49R9ZYuu059095; Sun, 27 Oct 2024 09:35:34 GMT (envelope-from git) Date: Sun, 27 Oct 2024 09:35:34 GMT Message-Id: <202410270935.49R9ZYuu059095@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 2ae238160f20 - stable/14 - libarchive: merge from vendor branch List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2ae238160f205576f465cbbed2c397774bea3976 Auto-Submitted: auto-generated The branch stable/14 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=2ae238160f205576f465cbbed2c397774bea3976 commit 2ae238160f205576f465cbbed2c397774bea3976 Author: Martin Matuska AuthorDate: 2024-10-20 08:22:09 +0000 Commit: Martin Matuska CommitDate: 2024-10-27 08:45:34 +0000 libarchive: merge from vendor branch Libarchive 3.7.7 Security fixes: #2158 rpm: calculate huge header sizes correctly #2160 util: fix out of boundary access in mktemp functions #2168 uu: stop processing if lines are too long #2174 lzop: prevent integer overflow #2172 rar4: protect copy_from_lzss_window_to_unp() (CVE-2024-20696) #2175 unzip: unify EOF handling #2179 rar4: fix out of boundary access with large files #2203 rar4: fix OOB access with unicode filenames #2210 rar4: add boundary checks to rgb filter #2248 rar4: fix OOB in delta filter #2249 rar4: fix OOB in audio filter #2256 fix multiple vulnerabilities identified by SAST #2258 cpio: ignore out-of-range gid/uid/size/ino and harden AFIO parsing #2265 rar5: clear 'data ready' cache on window buffer reallocs #2269 rar4: fix CVE-2024-26256 (CVE-2024-26256) #2330 iso: be more cautious about parsing ISO-9660 timestamps #2343 tar: clean up linkpath between entries #2364 tar: don't crash on truncated tar archives #2366 gzip: prevent a hang when processing a malformed gzip inside a gzip #2377 tar: fix two leaks in tar header parsing Important bugfixes: #2096 rar5: report encrypted entries #2150 xar: fix another infinite loop and expat error handling #2173 shar: check strdup return value #2161 lha: fix integer truncation on 32-bit systems #2338 tar: fix memory leaks when processing symlinks or parsing pax headers #2245 7zip: fix issue when skipping first file in 7zip archive that is a multiple of 65536 bytes #2252 7-zip: read/write symlink paths as UTF-8 #2259 rar5: don't try to read rediculously long names #2290 ar: fix archive entries having no type #2360 tar: fix truncation of entry pathnames in specific archives CVE: CVE-2024-20696, CVE-2024-26256 (cherry picked from commit bd66c1b43e33540205dbc1187c2f2a15c58b57ba) --- contrib/libarchive/NEWS | 6 + contrib/libarchive/cat/bsdcat.1 | 26 +- contrib/libarchive/cat/bsdcat.c | 22 +- contrib/libarchive/cat/bsdcat.h | 22 +- contrib/libarchive/cat/bsdcat_platform.h | 24 +- contrib/libarchive/cat/cmdline.c | 22 +- contrib/libarchive/cat/test/test.h | 22 +- contrib/libarchive/cat/test/test_0.c | 22 +- contrib/libarchive/cat/test/test_empty_gz.c | 22 +- contrib/libarchive/cat/test/test_empty_lz4.c | 22 +- contrib/libarchive/cat/test/test_empty_xz.c | 22 +- contrib/libarchive/cat/test/test_empty_zstd.c | 22 +- contrib/libarchive/cat/test/test_error.c | 22 +- contrib/libarchive/cat/test/test_error_mixed.c | 22 +- contrib/libarchive/cat/test/test_expand_Z.c | 22 +- contrib/libarchive/cat/test/test_expand_bz2.c | 22 +- contrib/libarchive/cat/test/test_expand_gz.c | 22 +- contrib/libarchive/cat/test/test_expand_lz4.c | 22 +- contrib/libarchive/cat/test/test_expand_mixed.c | 22 +- contrib/libarchive/cat/test/test_expand_plain.c | 22 +- contrib/libarchive/cat/test/test_expand_xz.c | 22 +- contrib/libarchive/cat/test/test_expand_zstd.c | 22 +- contrib/libarchive/cat/test/test_help.c | 22 +- contrib/libarchive/cat/test/test_stdin.c | 22 +- contrib/libarchive/cat/test/test_version.c | 22 +- contrib/libarchive/cpio/bsdcpio.1 | 24 +- contrib/libarchive/cpio/cmdline.c | 76 +- contrib/libarchive/cpio/cpio.c | 70 +- contrib/libarchive/cpio/cpio.h | 30 +- contrib/libarchive/cpio/cpio_platform.h | 22 +- contrib/libarchive/cpio/test/test.h | 22 +- contrib/libarchive/cpio/test/test_0.c | 22 +- contrib/libarchive/cpio/test/test_basic.c | 22 +- contrib/libarchive/cpio/test/test_cmdline.c | 22 +- contrib/libarchive/cpio/test/test_extract_cpio_Z.c | 22 +- .../cpio/test/test_extract_cpio_absolute_paths.c | 53 + .../libarchive/cpio/test/test_extract_cpio_bz2.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_grz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_gz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lrz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lz4.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lzma.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lzo.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_xz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_zstd.c | 22 +- contrib/libarchive/cpio/test/test_format_newc.c | 28 +- contrib/libarchive/cpio/test/test_gcpio_compat.c | 22 +- contrib/libarchive/cpio/test/test_missing_file.c | 22 +- contrib/libarchive/cpio/test/test_option_0.c | 22 +- contrib/libarchive/cpio/test/test_option_B_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_C_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_J_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_L_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_Z_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_a.c | 22 +- .../libarchive/cpio/test/test_option_b64encode.c | 22 +- contrib/libarchive/cpio/test/test_option_c.c | 30 +- contrib/libarchive/cpio/test/test_option_d.c | 24 +- contrib/libarchive/cpio/test/test_option_f.c | 22 +- contrib/libarchive/cpio/test/test_option_grzip.c | 22 +- contrib/libarchive/cpio/test/test_option_help.c | 22 +- contrib/libarchive/cpio/test/test_option_l.c | 22 +- contrib/libarchive/cpio/test/test_option_lrzip.c | 22 +- contrib/libarchive/cpio/test/test_option_lz4.c | 22 +- contrib/libarchive/cpio/test/test_option_lzma.c | 22 +- contrib/libarchive/cpio/test/test_option_lzop.c | 22 +- contrib/libarchive/cpio/test/test_option_m.c | 22 +- .../libarchive/cpio/test/test_option_passphrase.c | 22 +- contrib/libarchive/cpio/test/test_option_t.c | 29 +- contrib/libarchive/cpio/test/test_option_u.c | 22 +- .../libarchive/cpio/test/test_option_uuencode.c | 22 +- contrib/libarchive/cpio/test/test_option_version.c | 22 +- contrib/libarchive/cpio/test/test_option_xz.c | 22 +- contrib/libarchive/cpio/test/test_option_y.c | 22 +- contrib/libarchive/cpio/test/test_option_z.c | 22 +- contrib/libarchive/cpio/test/test_option_zstd.c | 22 +- contrib/libarchive/cpio/test/test_owner_parse.c | 112 +- .../libarchive/cpio/test/test_passthrough_dotdot.c | 22 +- .../cpio/test/test_passthrough_reverse.c | 22 +- contrib/libarchive/libarchive/archive.h | 4 +- contrib/libarchive/libarchive/archive_acl.c | 71 +- .../libarchive/libarchive/archive_acl_private.h | 2 + contrib/libarchive/libarchive/archive_crc32.h | 5 + contrib/libarchive/libarchive/archive_cryptor.c | 4 +- .../libarchive/archive_cryptor_private.h | 2 +- contrib/libarchive/libarchive/archive_entry.c | 300 ++- contrib/libarchive/libarchive/archive_entry.h | 8 +- .../libarchive/archive_entry_link_resolver.c | 15 + .../libarchive/libarchive/archive_entry_perms.3 | 1 + .../libarchive/libarchive/archive_entry_private.h | 4 +- .../libarchive/libarchive/archive_entry_sparse.c | 2 +- .../libarchive/libarchive/archive_entry_xattr.c | 2 +- contrib/libarchive/libarchive/archive_hmac.c | 2 +- .../libarchive/libarchive/archive_hmac_private.h | 2 +- contrib/libarchive/libarchive/archive_match.c | 2 +- .../libarchive/archive_openssl_evp_private.h | 2 +- .../libarchive/archive_openssl_hmac_private.h | 2 +- contrib/libarchive/libarchive/archive_ppmd7.c | 2 +- contrib/libarchive/libarchive/archive_ppmd8.c | 7 +- contrib/libarchive/libarchive/archive_private.h | 6 +- contrib/libarchive/libarchive/archive_read.c | 8 +- .../libarchive/archive_read_append_filter.c | 8 +- .../libarchive/archive_read_disk_entry_from_file.c | 1 + .../libarchive/archive_read_disk_posix.c | 2 +- .../libarchive/libarchive/archive_read_extract2.c | 2 +- .../libarchive/libarchive/archive_read_open_fd.c | 2 +- .../libarchive/libarchive/archive_read_open_file.c | 2 +- .../libarchive/archive_read_open_filename.c | 4 +- .../libarchive/archive_read_open_memory.c | 2 +- .../libarchive/archive_read_support_filter_bzip2.c | 4 +- .../archive_read_support_filter_compress.c | 2 +- .../libarchive/archive_read_support_filter_gzip.c | 18 +- .../libarchive/archive_read_support_filter_lz4.c | 6 +- .../libarchive/archive_read_support_filter_lzop.c | 5 +- .../archive_read_support_filter_program.c | 6 +- .../libarchive/archive_read_support_filter_rpm.c | 45 +- .../libarchive/archive_read_support_filter_uu.c | 16 +- .../libarchive/archive_read_support_filter_xz.c | 4 +- .../libarchive/archive_read_support_filter_zstd.c | 4 +- .../libarchive/archive_read_support_format_7zip.c | 93 +- .../libarchive/archive_read_support_format_ar.c | 10 +- .../libarchive/archive_read_support_format_cab.c | 12 +- .../libarchive/archive_read_support_format_cpio.c | 32 +- .../archive_read_support_format_iso9660.c | 305 ++- .../libarchive/archive_read_support_format_lha.c | 11 +- .../libarchive/archive_read_support_format_mtree.c | 2 +- .../libarchive/archive_read_support_format_rar.c | 128 +- .../libarchive/archive_read_support_format_rar5.c | 171 +- .../libarchive/archive_read_support_format_raw.c | 2 +- .../libarchive/archive_read_support_format_tar.c | 2221 +++++++++++++------- .../libarchive/archive_read_support_format_xar.c | 32 +- .../libarchive/archive_read_support_format_zip.c | 45 +- contrib/libarchive/libarchive/archive_string.c | 86 +- contrib/libarchive/libarchive/archive_util.c | 16 +- contrib/libarchive/libarchive/archive_write.c | 19 +- .../archive_write_add_filter_b64encode.c | 6 +- .../libarchive/archive_write_add_filter_bzip2.c | 5 +- .../libarchive/archive_write_add_filter_compress.c | 4 +- .../libarchive/archive_write_add_filter_gzip.c | 3 +- .../libarchive/archive_write_add_filter_uuencode.c | 2 +- .../libarchive/archive_write_add_filter_xz.c | 5 +- .../libarchive/archive_write_add_filter_zstd.c | 3 +- .../libarchive/archive_write_disk_posix.c | 16 +- .../libarchive/libarchive/archive_write_open_fd.c | 2 +- .../libarchive/archive_write_open_file.c | 2 +- .../libarchive/archive_write_open_filename.c | 2 +- .../libarchive/archive_write_open_memory.c | 2 +- .../libarchive/archive_write_set_format_7zip.c | 16 +- .../libarchive/archive_write_set_format_ar.c | 6 +- .../archive_write_set_format_cpio_binary.c | 5 +- .../archive_write_set_format_cpio_newc.c | 2 +- .../libarchive/archive_write_set_format_cpio_odc.c | 5 +- .../libarchive/archive_write_set_format_gnutar.c | 6 +- .../libarchive/archive_write_set_format_iso9660.c | 2 +- .../libarchive/archive_write_set_format_pax.c | 24 +- .../libarchive/archive_write_set_format_raw.c | 2 +- .../libarchive/archive_write_set_format_shar.c | 10 +- .../libarchive/archive_write_set_format_ustar.c | 8 +- .../libarchive/archive_write_set_format_v7tar.c | 4 +- .../libarchive/archive_write_set_format_xar.c | 26 +- .../libarchive/archive_write_set_format_zip.c | 10 +- .../libarchive/test/test_7zip_filename_encoding.c | 100 + contrib/libarchive/libarchive/test/test_ar_mode.c | 40 + .../libarchive/test/test_archive_match_time.c | 60 +- .../libarchive/libarchive/test/test_archive_read.c | 63 + .../test/test_archive_read_multiple_data_objects.c | 23 +- .../libarchive/test/test_archive_string.c | 2 +- .../test/test_archive_string_conversion.c | 135 ++ .../test/test_archive_write_add_filter_by_name.c | 2 +- .../libarchive/libarchive/test/test_compat_lzip.c | 2 +- .../test/test_compat_solaris_pax_sparse.c | 2 +- contrib/libarchive/libarchive/test/test_entry.c | 14 +- .../test/test_gnutar_filename_encoding.c | 102 + .../libarchive/test/test_link_resolver.c | 45 + .../libarchive/test/test_pax_filename_encoding.c | 152 ++ .../test/test_read_filter_gzip_recursive.c | 50 + .../test/test_read_filter_gzip_recursive.gz.uu | 19 + .../libarchive/test/test_read_format_7zip.c | 44 + .../test_read_format_7zip_extract_second.7z.uu | 11 + .../libarchive/test/test_read_format_cpio_afio.c | 30 +- .../libarchive/test/test_read_format_huge_rpm.c | 50 + .../test/test_read_format_huge_rpm.rpm.uu | 244 +++ .../test/test_read_format_iso_3.iso.Z.uu | 40 + .../libarchive/test/test_read_format_iso_Z.c | 122 +- .../libarchive/test/test_read_format_mtree.c | 2 +- .../test/test_read_format_rar4_encrypted.rar.uu | 10 + ...est_read_format_rar4_encrypted_filenames.rar.uu | 14 + .../test_read_format_rar4_solid_encrypted.rar.uu | 11 + ...ad_format_rar4_solid_encrypted_filenames.rar.uu | 13 + .../libarchive/test/test_read_format_rar5.c | 39 +- ...read_format_rar5_data_ready_pointer_leak.rar.uu | 28 + .../test/test_read_format_rar5_encrypted.rar.uu | 12 + ...est_read_format_rar5_encrypted_filenames.rar.uu | 19 + .../test_read_format_rar5_solid_encrypted.rar.uu | 14 + ...ad_format_rar5_solid_encrypted_filenames.rar.uu | 18 + .../test/test_read_format_rar_encryption.c | 176 ++ .../libarchive/test/test_read_format_tar.c | 2 +- .../test/test_read_format_tar_pax_large_attr.c | 65 + .../test_read_format_tar_pax_large_attr.tar.Z.uu | 149 ++ .../libarchive/test/test_read_format_xar.c | 37 +- ..._read_format_xar_duplicate_filename_node.xar.uu | 14 + .../libarchive/test/test_read_format_zip_nested.c | 2 +- ...t_read_format_zip_traditional_encryption_data.c | 2 +- .../test/test_read_format_zip_winzip_aes.c | 2 +- .../test/test_read_format_zip_winzip_aes_large.c | 2 +- .../libarchive/test/test_read_truncated_filter.c | 4 +- .../libarchive/libarchive/test/test_sparse_basic.c | 17 +- .../libarchive/libarchive/test/test_tar_large.c | 2 +- .../libarchive/test/test_ustar_filename_encoding.c | 102 + .../test/test_write_disk_secure_noabsolutepaths.c | 88 + .../libarchive/test/test_write_filter_b64encode.c | 4 +- .../libarchive/test/test_write_filter_bzip2.c | 4 +- .../libarchive/test/test_write_filter_compress.c | 4 +- .../libarchive/test/test_write_filter_gzip.c | 4 +- .../test/test_write_filter_gzip_timestamp.c | 4 +- .../libarchive/test/test_write_filter_lrzip.c | 4 +- .../libarchive/test/test_write_filter_lz4.c | 8 +- .../libarchive/test/test_write_filter_lzip.c | 4 +- .../libarchive/test/test_write_filter_lzma.c | 4 +- .../libarchive/test/test_write_filter_lzop.c | 4 +- .../libarchive/test/test_write_filter_uuencode.c | 4 +- .../libarchive/test/test_write_filter_xz.c | 4 +- .../libarchive/test/test_write_filter_zstd.c | 12 +- .../test/test_write_format_iso9660_filename.c | 2 +- .../libarchive/test/test_write_format_zip.c | 6 +- .../test/test_write_format_zip_entry_size_unset.c | 2 +- .../libarchive/test/test_write_format_zip_large.c | 2 +- .../libarchive/test/test_write_format_zip_stream.c | 5 + .../test/test_write_format_zip_windows_path.c | 100 + .../libarchive/test/test_zip_filename_encoding.c | 95 + contrib/libarchive/tar/bsdtar.1 | 24 +- contrib/libarchive/tar/bsdtar.c | 25 +- contrib/libarchive/tar/bsdtar.h | 22 +- contrib/libarchive/tar/bsdtar_platform.h | 24 +- contrib/libarchive/tar/cmdline.c | 22 +- contrib/libarchive/tar/creation_set.c | 24 +- contrib/libarchive/tar/read.c | 22 +- contrib/libarchive/tar/subst.c | 22 +- contrib/libarchive/tar/test/test.h | 22 +- contrib/libarchive/tar/test/test_0.c | 22 +- contrib/libarchive/tar/test/test_basic.c | 22 +- contrib/libarchive/tar/test/test_copy.c | 58 +- contrib/libarchive/tar/test/test_empty_mtree.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_Z.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_bz2.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_grz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_gz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lrz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lz4.c | 22 +- .../libarchive/tar/test/test_extract_tar_lzma.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lzo.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_xz.c | 22 +- .../libarchive/tar/test/test_extract_tar_zstd.c | 22 +- contrib/libarchive/tar/test/test_format_newc.c | 22 +- contrib/libarchive/tar/test/test_help.c | 22 +- contrib/libarchive/tar/test/test_leading_slash.c | 22 +- contrib/libarchive/tar/test/test_missing_file.c | 22 +- contrib/libarchive/tar/test/test_option_C_mtree.c | 30 +- contrib/libarchive/tar/test/test_option_C_upper.c | 22 +- contrib/libarchive/tar/test/test_option_H_upper.c | 40 +- contrib/libarchive/tar/test/test_option_L_upper.c | 40 +- contrib/libarchive/tar/test/test_option_O_upper.c | 22 +- contrib/libarchive/tar/test/test_option_P.c | 82 + contrib/libarchive/tar/test/test_option_T_upper.c | 22 +- contrib/libarchive/tar/test/test_option_U_upper.c | 22 +- contrib/libarchive/tar/test/test_option_X_upper.c | 22 +- contrib/libarchive/tar/test/test_option_a.c | 22 +- contrib/libarchive/tar/test/test_option_acls.c | 22 +- contrib/libarchive/tar/test/test_option_b.c | 22 +- .../libarchive/tar/test/test_option_b64encode.c | 22 +- contrib/libarchive/tar/test/test_option_exclude.c | 22 +- .../libarchive/tar/test/test_option_exclude_vcs.c | 24 +- contrib/libarchive/tar/test/test_option_fflags.c | 24 +- .../libarchive/tar/test/test_option_gid_gname.c | 22 +- contrib/libarchive/tar/test/test_option_group.c | 22 +- contrib/libarchive/tar/test/test_option_grzip.c | 22 +- .../libarchive/tar/test/test_option_ignore_zeros.c | 31 +- contrib/libarchive/tar/test/test_option_j.c | 22 +- contrib/libarchive/tar/test/test_option_k.c | 22 +- .../tar/test/test_option_keep_newer_files.c | 22 +- contrib/libarchive/tar/test/test_option_lrzip.c | 22 +- contrib/libarchive/tar/test/test_option_lz4.c | 22 +- contrib/libarchive/tar/test/test_option_lzma.c | 22 +- contrib/libarchive/tar/test/test_option_lzop.c | 22 +- contrib/libarchive/tar/test/test_option_n.c | 22 +- .../libarchive/tar/test/test_option_newer_than.c | 22 +- contrib/libarchive/tar/test/test_option_nodump.c | 22 +- .../libarchive/tar/test/test_option_older_than.c | 22 +- contrib/libarchive/tar/test/test_option_owner.c | 22 +- .../libarchive/tar/test/test_option_passphrase.c | 22 +- contrib/libarchive/tar/test/test_option_q.c | 22 +- contrib/libarchive/tar/test/test_option_r.c | 22 +- contrib/libarchive/tar/test/test_option_s.c | 22 +- .../libarchive/tar/test/test_option_safe_writes.c | 22 +- .../libarchive/tar/test/test_option_uid_uname.c | 22 +- contrib/libarchive/tar/test/test_option_uuencode.c | 22 +- contrib/libarchive/tar/test/test_option_xattrs.c | 24 +- contrib/libarchive/tar/test/test_option_xz.c | 22 +- contrib/libarchive/tar/test/test_option_z.c | 22 +- contrib/libarchive/tar/test/test_option_zstd.c | 22 +- contrib/libarchive/tar/test/test_patterns.c | 22 +- contrib/libarchive/tar/test/test_print_longpath.c | 22 +- contrib/libarchive/tar/test/test_stdio.c | 22 +- .../libarchive/tar/test/test_strip_components.c | 22 +- contrib/libarchive/tar/test/test_symlink_dir.c | 22 +- contrib/libarchive/tar/test/test_version.c | 22 +- contrib/libarchive/tar/util.c | 42 +- contrib/libarchive/tar/write.c | 35 +- contrib/libarchive/test_utils/test_common.h | 5 +- contrib/libarchive/test_utils/test_main.c | 101 +- contrib/libarchive/unzip/bsdunzip.1 | 25 +- contrib/libarchive/unzip/bsdunzip.c | 49 +- contrib/libarchive/unzip/bsdunzip.h | 22 +- contrib/libarchive/unzip/bsdunzip_platform.h | 24 +- contrib/libarchive/unzip/cmdline.c | 22 +- contrib/libarchive/unzip/la_getline.c | 26 +- contrib/libarchive/unzip/test/test.h | 22 +- contrib/libarchive/unzip/test/test_0.c | 22 +- contrib/libarchive/unzip/test/test_C.c | 23 +- contrib/libarchive/unzip/test/test_I.c | 40 +- contrib/libarchive/unzip/test/test_L.c | 23 +- contrib/libarchive/unzip/test/test_P_encryption.c | 25 +- contrib/libarchive/unzip/test/test_Z1.c | 23 +- contrib/libarchive/unzip/test/test_basic.c | 23 +- contrib/libarchive/unzip/test/test_d.c | 23 +- contrib/libarchive/unzip/test/test_doubledash.c | 23 +- contrib/libarchive/unzip/test/test_glob.c | 23 +- contrib/libarchive/unzip/test/test_j.c | 23 +- contrib/libarchive/unzip/test/test_n.c | 25 +- contrib/libarchive/unzip/test/test_not_exist.c | 25 +- contrib/libarchive/unzip/test/test_o.c | 25 +- contrib/libarchive/unzip/test/test_p.c | 23 +- contrib/libarchive/unzip/test/test_q.c | 23 +- contrib/libarchive/unzip/test/test_singlefile.c | 23 +- contrib/libarchive/unzip/test/test_t.c | 23 +- contrib/libarchive/unzip/test/test_t_bad.c | 23 +- contrib/libarchive/unzip/test/test_version.c | 22 +- contrib/libarchive/unzip/test/test_x.c | 23 +- lib/libarchive/tests/Makefile | 24 + usr.bin/cpio/tests/Makefile | 1 + usr.bin/tar/tests/Makefile | 1 + 343 files changed, 5857 insertions(+), 5333 deletions(-) diff --git a/contrib/libarchive/NEWS b/contrib/libarchive/NEWS index ebdbb2a978ec..6af50e4e4033 100644 --- a/contrib/libarchive/NEWS +++ b/contrib/libarchive/NEWS @@ -1,3 +1,9 @@ +Oct 13, 2024: libarchive 3.7.7 released + +Sep 23, 2024: libarchive 3.7.6 released + +Sep 13, 2024: libarchive 3.7.5 released + Apr 26, 2024: libarchive 3.7.4 released Apr 08, 2024: libarchive 3.7.3 released diff --git a/contrib/libarchive/cat/bsdcat.1 b/contrib/libarchive/cat/bsdcat.1 index 9fa66d60e1e6..b34a0c1c988d 100644 --- a/contrib/libarchive/cat/bsdcat.1 +++ b/contrib/libarchive/cat/bsdcat.1 @@ -1,26 +1,8 @@ -.\" Copyright (c) 2011-2014, Mike Kazantsev -.\" All rights reserved. .\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. +.\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. +.\" Copyright (c) 2011-2014, Mike Kazantsev +.\" All rights reserved. .\" .Dd March 1, 2014 .Dt BSDCAT 1 @@ -39,7 +21,7 @@ expands files to standard output. .Nm typically takes a filename as an argument or reads standard input when used in a pipe. -In both cases decompressed data it written to standard output. +In both cases decompressed data is written to standard output. .Sh EXAMPLES To decompress a file: .Pp diff --git a/contrib/libarchive/cat/bsdcat.c b/contrib/libarchive/cat/bsdcat.c index 19d3de65cea4..731621fa9b75 100644 --- a/contrib/libarchive/cat/bsdcat.c +++ b/contrib/libarchive/cat/bsdcat.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2011-2014, Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "bsdcat_platform.h" diff --git a/contrib/libarchive/cat/bsdcat.h b/contrib/libarchive/cat/bsdcat.h index 504757a44040..6726f78e8453 100644 --- a/contrib/libarchive/cat/bsdcat.h +++ b/contrib/libarchive/cat/bsdcat.h @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014, Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef BSDCAT_H_INCLUDED diff --git a/contrib/libarchive/cat/bsdcat_platform.h b/contrib/libarchive/cat/bsdcat_platform.h index 78a6113e6f01..940214f2ecd6 100644 --- a/contrib/libarchive/cat/bsdcat_platform.h +++ b/contrib/libarchive/cat/bsdcat_platform.h @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2007 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* @@ -58,7 +40,7 @@ #define __LA_NORETURN __attribute__((__noreturn__)) #elif defined(_MSC_VER) #define __LA_NORETURN __declspec(noreturn) -#else +#else #define __LA_NORETURN #endif diff --git a/contrib/libarchive/cat/cmdline.c b/contrib/libarchive/cat/cmdline.c index 851b63de06e5..8ecd74aa95e4 100644 --- a/contrib/libarchive/cat/cmdline.c +++ b/contrib/libarchive/cat/cmdline.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2008 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* diff --git a/contrib/libarchive/cat/test/test.h b/contrib/libarchive/cat/test/test.h index ec83d476b6b8..b852437ca430 100644 --- a/contrib/libarchive/cat/test/test.h +++ b/contrib/libarchive/cat/test/test.h @@ -1,26 +1,8 @@ /* + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2006 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* Every test program should #include "test.h" as the first thing. */ diff --git a/contrib/libarchive/cat/test/test_0.c b/contrib/libarchive/cat/test/test_0.c index c806c24356c0..07f5fc60cf35 100644 --- a/contrib/libarchive/cat/test/test_0.c +++ b/contrib/libarchive/cat/test/test_0.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2007 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_gz.c b/contrib/libarchive/cat/test/test_empty_gz.c index 6181f93b4d28..0ca835627bf5 100644 --- a/contrib/libarchive/cat/test/test_empty_gz.c +++ b/contrib/libarchive/cat/test/test_empty_gz.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_lz4.c b/contrib/libarchive/cat/test/test_empty_lz4.c index 9d98e9cfd390..ed4f2894fb4f 100644 --- a/contrib/libarchive/cat/test/test_empty_lz4.c +++ b/contrib/libarchive/cat/test/test_empty_lz4.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_xz.c b/contrib/libarchive/cat/test/test_empty_xz.c index 368ffb574e50..591ab2410ce4 100644 --- a/contrib/libarchive/cat/test/test_empty_xz.c +++ b/contrib/libarchive/cat/test/test_empty_xz.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_zstd.c b/contrib/libarchive/cat/test/test_empty_zstd.c index c2d5ea106fa1..b0f25bf1cacd 100644 --- a/contrib/libarchive/cat/test/test_empty_zstd.c +++ b/contrib/libarchive/cat/test/test_empty_zstd.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2017 Sean Purcell * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_error.c b/contrib/libarchive/cat/test/test_error.c index 918af01be2dc..3e1a74a38820 100644 --- a/contrib/libarchive/cat/test/test_error.c +++ b/contrib/libarchive/cat/test/test_error.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_error_mixed.c b/contrib/libarchive/cat/test/test_error_mixed.c index 7d94fce467aa..01cb9f0520dd 100644 --- a/contrib/libarchive/cat/test/test_error_mixed.c +++ b/contrib/libarchive/cat/test/test_error_mixed.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_Z.c b/contrib/libarchive/cat/test/test_expand_Z.c index d48d4972ebee..f34f38ce0385 100644 --- a/contrib/libarchive/cat/test/test_expand_Z.c +++ b/contrib/libarchive/cat/test/test_expand_Z.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_bz2.c b/contrib/libarchive/cat/test/test_expand_bz2.c index 82f074b341c8..8f3bb3f24a46 100644 --- a/contrib/libarchive/cat/test/test_expand_bz2.c +++ b/contrib/libarchive/cat/test/test_expand_bz2.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_gz.c b/contrib/libarchive/cat/test/test_expand_gz.c index 18b715c66ebb..1f6f1cfddbac 100644 --- a/contrib/libarchive/cat/test/test_expand_gz.c +++ b/contrib/libarchive/cat/test/test_expand_gz.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_lz4.c b/contrib/libarchive/cat/test/test_expand_lz4.c index 1b1d2106459d..efc2baad59ed 100644 --- a/contrib/libarchive/cat/test/test_expand_lz4.c +++ b/contrib/libarchive/cat/test/test_expand_lz4.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012, 2014 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, *** 18475 LINES SKIPPED *** From nobody Sun Oct 27 09:35:35 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbrwl5qrfz5ZZTJ; Sun, 27 Oct 2024 09:35:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbrwl5JK8z4fJ3; Sun, 27 Oct 2024 09:35:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730021735; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VzXM5kupzPHOrv/JudvBWl5ZOngrOeBqtES1Er3Kbcc=; b=TT7Tzv9Lf2leWw2xkGodg4IBwg/Xa+H+Ukhinx/Cu1803tc9yrJldOU6i4a2s3VaVQsJ6m InebUn2uvkVti7ll/YSI8Y2fOsJA6V4gW1oaWXA1BVb2uegQRanWTBW2VfaYLYjfwYBNxX fRS6b7KKCIKeOSIZs7fyWlStq3c13SgCaR6OCfFgerPuyitBjhJcITiaF8WfS5+ddXYJfB x7FibDblnBMNyO1mEMs4GS5oRQ5dBYzELRn1znbxjMrhBd6XdffqSc+kWki3pXUqYOCfRS w3wVROMBoJk6mYOYohwIaeGWBfLejBcIIb9kJYB+8RfpCV7pjoRNNnxsBwiezQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730021735; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VzXM5kupzPHOrv/JudvBWl5ZOngrOeBqtES1Er3Kbcc=; b=Db1AVs3j6P9f1i1HXpPhQAESUfKThkL4MVy9bOtLVyXhuYEXJAQNVYTONCiyA+yd/zyCIQ j/5rSnV+asdUgkfVLKQ4zyWi3TcnTMXUNKKHkFnjRDnQnDhusgAD0gJOCSOhQ7VXVIF1Kx rej8gumSUf873vjRNeVj1GQJFI/M4NejIt9g0t5CvrQ2CL6hNjCNrQXJmpktVGlhiKwG0G 0uQTqmMeiMXXTo5TzqV7lCTbXAKMw2aPslzl0+r82uvROYiZ+76sQZ+lIedZoCoehV2zaA 8j5Du+aJVKqZAOJ/z0IgHrJ0WY51iSEUT8MkL2D2N3Hq/8gBapaRkCk94AsPqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730021735; a=rsa-sha256; cv=none; b=edmvojO/AYIOnPPrc3IcMkYnwfKCBBFdjOAx71edkYghT9TyPFsltNeEIP7OEV6+XCqc6u rxEvGo6qeVCLswugdpMemw0YyKEdIgq6QdJlTWlwQ2uY+vTkHZU26zpvumVly3z3e93bEJ QVNbHQAX7vpaP8JdDS0tKeLFSKNM+t70z7KNLMc/A7szSZtsVqOT1htZitoUh4RdOzaFo/ XhIF5UMldCykmtBciGxZqJ+8Srd1yxAXWYIy4xs6mnP511b9qR5Byp/yP95wXo6qKTcpUS 3xrp9Q3LzsbmTF/x4JHTXgwk6y53ZSLqy952ikuJ3/+Jqx5Aa9mN4+TaktFb/w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbrwl4vGYzpdM; Sun, 27 Oct 2024 09:35: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 49R9ZZgN059167; Sun, 27 Oct 2024 09:35:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49R9ZZg0059164; Sun, 27 Oct 2024 09:35:35 GMT (envelope-from git) Date: Sun, 27 Oct 2024 09:35:35 GMT Message-Id: <202410270935.49R9ZZg0059164@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: b21c677ed28a - stable/14 - libarchive: backport PR #2386 (fixes output of one test) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b21c677ed28a8e4c0be2fb0e114ea902fa3271c2 Auto-Submitted: auto-generated The branch stable/14 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=b21c677ed28a8e4c0be2fb0e114ea902fa3271c2 commit b21c677ed28a8e4c0be2fb0e114ea902fa3271c2 Author: Martin Matuska AuthorDate: 2024-10-21 12:35:18 +0000 Commit: Martin Matuska CommitDate: 2024-10-27 08:45:56 +0000 libarchive: backport PR #2386 (fixes output of one test) (cherry picked from commit 6c40282284d6eab20256914648cdec39acb2c52a) --- contrib/libarchive/tar/test/test_option_P.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/libarchive/tar/test/test_option_P.c b/contrib/libarchive/tar/test/test_option_P.c index e63da3e0875c..953d9f58991c 100644 --- a/contrib/libarchive/tar/test/test_option_P.c +++ b/contrib/libarchive/tar/test/test_option_P.c @@ -55,7 +55,7 @@ DEFINE_TEST(test_extract_tar_absolute_paths) UNLINK(temp_absolute_file_name); // Extracting the archive without -P / --absolute-paths should strip leading drive letter or slash - r = systemf("%s -xf test.tar", testprog); + r = systemf("%s -xf test.tar 2>test.err", testprog); assertEqualInt(r, 0); assertFileNotExists(temp_absolute_file_name); From nobody Sun Oct 27 10:51:51 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbtcl4vTsz5ZfCj; Sun, 27 Oct 2024 10:51:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbtcl4dWGz4lm2; Sun, 27 Oct 2024 10:51:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tOHerBpzJfb9ASx/Z2XgFJ622tVe4ek4JE+z569agf0=; b=haMPg3QG11JGDyhzcF2RaZpFvVXw7Ou/cYJQJekMdxRYQWQf99y1Q3TFtmxWEdCMwTZgN3 sROrjbKPzqoAs1k1MFJyx8rduynpTKJCoUVficXSZLUkFFCFdtQy56oq4k7yqUWFULFdzq XXhJ2YKyybWxvx9zq3XIi9ABIHAD3Swe4Zj1Tbi6dRkz8OymNR/p38t2mlmIE1NJ+YU84v MZ+PrDLsznUiqKtxK5v/KTTWU5Kifk08idSdeVa0lSGZ9XoEI9dtsZIZxWcc+zVExlsdYG e+KEf3cMnRWVaN6u7V7mafgjv7usulDfjL8xeAFH926zhC7l8aLY58D0b+iZgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026311; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tOHerBpzJfb9ASx/Z2XgFJ622tVe4ek4JE+z569agf0=; b=s7lJlKZ5p0jUNwFvJVCrNGywW1kJMi1vZ4zVeTh8LckiYZyksRS6Guq41dKZe5fyuJINeN FfqoMmPyUDt+NHu9f2de6AAQICtCI3JPigthp/1vZa+YkQ5XXxnRNjbg9bjGU1mHFd+7Fq mMwX1rM7j9C+NZefOC170mR8J5qO6JYhAKNtU384CogsDrvapc/hM1BhT0Hrp8kbsCnm2x 86RVWojHjtA27+s2q3x1fJSpC/6Mw+M0BUmCWQFGrShxqlPLolCER9HjDxyf1tg/zUarbj tZXG/HNLkMZoqPEjnjryEay1T9hObWqiNoY6Cgul90FMErrO+zxJNlSYVEv4Ag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026311; a=rsa-sha256; cv=none; b=duNB4wxO01u9XMdXU4dIjhjZMZU/xPyzxqaSanS4cgCk0wwbJXVvADwr57oRWicob+5RSV uS3fiwJBWX74TenElq32AJpDU8TTdh9zijcE6CDJBR3fjsmv5d5O9Zz75WldfzY2WXzfQz //zj4PBqUkJ+5xhAOYB6S8mbM39pkUxdpc126EWGIMIGze01iR0Y3Gpl/+slcxfTDoqM9o +uiL/QGWTpeXSggj6tS1Wx7jlKGPBK9CxpYesiCPWHHhRcAzeHvSbYwBs54PF+9eHcpjHL ADhlYJa9tVx7Lp9gQNSSf4I5StZ0zgOdb8jMoqRi5A84Avk7pQzwCKxJn8pXPw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbtcl4D46zrgd; Sun, 27 Oct 2024 10:51: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 49RAppok002117; Sun, 27 Oct 2024 10:51:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RAppC5002114; Sun, 27 Oct 2024 10:51:51 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:51:51 GMT Message-Id: <202410271051.49RAppC5002114@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 6c7993ffba96 - stable/13 - libarchive: merge from vendor branch List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6c7993ffba96f56e5416a2726e5f2de209fecec7 Auto-Submitted: auto-generated The branch stable/13 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=6c7993ffba96f56e5416a2726e5f2de209fecec7 commit 6c7993ffba96f56e5416a2726e5f2de209fecec7 Author: Martin Matuska AuthorDate: 2024-10-20 08:22:09 +0000 Commit: Martin Matuska CommitDate: 2024-10-27 09:43:05 +0000 libarchive: merge from vendor branch Libarchive 3.7.7 Security fixes: #2158 rpm: calculate huge header sizes correctly #2160 util: fix out of boundary access in mktemp functions #2168 uu: stop processing if lines are too long #2174 lzop: prevent integer overflow #2172 rar4: protect copy_from_lzss_window_to_unp() (CVE-2024-20696) #2175 unzip: unify EOF handling #2179 rar4: fix out of boundary access with large files #2203 rar4: fix OOB access with unicode filenames #2210 rar4: add boundary checks to rgb filter #2248 rar4: fix OOB in delta filter #2249 rar4: fix OOB in audio filter #2256 fix multiple vulnerabilities identified by SAST #2258 cpio: ignore out-of-range gid/uid/size/ino and harden AFIO parsing #2265 rar5: clear 'data ready' cache on window buffer reallocs #2269 rar4: fix CVE-2024-26256 (CVE-2024-26256) #2330 iso: be more cautious about parsing ISO-9660 timestamps #2343 tar: clean up linkpath between entries #2364 tar: don't crash on truncated tar archives #2366 gzip: prevent a hang when processing a malformed gzip inside a gzip #2377 tar: fix two leaks in tar header parsing Important bugfixes: #2096 rar5: report encrypted entries #2150 xar: fix another infinite loop and expat error handling #2173 shar: check strdup return value #2161 lha: fix integer truncation on 32-bit systems #2338 tar: fix memory leaks when processing symlinks or parsing pax headers #2245 7zip: fix issue when skipping first file in 7zip archive that is a multiple of 65536 bytes #2252 7-zip: read/write symlink paths as UTF-8 #2259 rar5: don't try to read rediculously long names #2290 ar: fix archive entries having no type #2360 tar: fix truncation of entry pathnames in specific archives CVE: CVE-2024-20696, CVE-2024-26256 (cherry picked from commit bd66c1b43e33540205dbc1187c2f2a15c58b57ba) --- contrib/libarchive/NEWS | 6 + contrib/libarchive/cat/bsdcat.1 | 26 +- contrib/libarchive/cat/bsdcat.c | 22 +- contrib/libarchive/cat/bsdcat.h | 22 +- contrib/libarchive/cat/bsdcat_platform.h | 24 +- contrib/libarchive/cat/cmdline.c | 22 +- contrib/libarchive/cat/test/test.h | 22 +- contrib/libarchive/cat/test/test_0.c | 22 +- contrib/libarchive/cat/test/test_empty_gz.c | 22 +- contrib/libarchive/cat/test/test_empty_lz4.c | 22 +- contrib/libarchive/cat/test/test_empty_xz.c | 22 +- contrib/libarchive/cat/test/test_empty_zstd.c | 22 +- contrib/libarchive/cat/test/test_error.c | 22 +- contrib/libarchive/cat/test/test_error_mixed.c | 22 +- contrib/libarchive/cat/test/test_expand_Z.c | 22 +- contrib/libarchive/cat/test/test_expand_bz2.c | 22 +- contrib/libarchive/cat/test/test_expand_gz.c | 22 +- contrib/libarchive/cat/test/test_expand_lz4.c | 22 +- contrib/libarchive/cat/test/test_expand_mixed.c | 22 +- contrib/libarchive/cat/test/test_expand_plain.c | 22 +- contrib/libarchive/cat/test/test_expand_xz.c | 22 +- contrib/libarchive/cat/test/test_expand_zstd.c | 22 +- contrib/libarchive/cat/test/test_help.c | 22 +- contrib/libarchive/cat/test/test_stdin.c | 22 +- contrib/libarchive/cat/test/test_version.c | 22 +- contrib/libarchive/cpio/bsdcpio.1 | 24 +- contrib/libarchive/cpio/cmdline.c | 76 +- contrib/libarchive/cpio/cpio.c | 70 +- contrib/libarchive/cpio/cpio.h | 30 +- contrib/libarchive/cpio/cpio_platform.h | 22 +- contrib/libarchive/cpio/test/test.h | 22 +- contrib/libarchive/cpio/test/test_0.c | 22 +- contrib/libarchive/cpio/test/test_basic.c | 22 +- contrib/libarchive/cpio/test/test_cmdline.c | 22 +- contrib/libarchive/cpio/test/test_extract_cpio_Z.c | 22 +- .../cpio/test/test_extract_cpio_absolute_paths.c | 53 + .../libarchive/cpio/test/test_extract_cpio_bz2.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_grz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_gz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lrz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lz4.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lzma.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_lzo.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_xz.c | 22 +- .../libarchive/cpio/test/test_extract_cpio_zstd.c | 22 +- contrib/libarchive/cpio/test/test_format_newc.c | 28 +- contrib/libarchive/cpio/test/test_gcpio_compat.c | 22 +- contrib/libarchive/cpio/test/test_missing_file.c | 22 +- contrib/libarchive/cpio/test/test_option_0.c | 22 +- contrib/libarchive/cpio/test/test_option_B_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_C_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_J_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_L_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_Z_upper.c | 22 +- contrib/libarchive/cpio/test/test_option_a.c | 22 +- .../libarchive/cpio/test/test_option_b64encode.c | 22 +- contrib/libarchive/cpio/test/test_option_c.c | 30 +- contrib/libarchive/cpio/test/test_option_d.c | 24 +- contrib/libarchive/cpio/test/test_option_f.c | 22 +- contrib/libarchive/cpio/test/test_option_grzip.c | 22 +- contrib/libarchive/cpio/test/test_option_help.c | 22 +- contrib/libarchive/cpio/test/test_option_l.c | 22 +- contrib/libarchive/cpio/test/test_option_lrzip.c | 22 +- contrib/libarchive/cpio/test/test_option_lz4.c | 22 +- contrib/libarchive/cpio/test/test_option_lzma.c | 22 +- contrib/libarchive/cpio/test/test_option_lzop.c | 22 +- contrib/libarchive/cpio/test/test_option_m.c | 22 +- .../libarchive/cpio/test/test_option_passphrase.c | 22 +- contrib/libarchive/cpio/test/test_option_t.c | 29 +- contrib/libarchive/cpio/test/test_option_u.c | 22 +- .../libarchive/cpio/test/test_option_uuencode.c | 22 +- contrib/libarchive/cpio/test/test_option_version.c | 22 +- contrib/libarchive/cpio/test/test_option_xz.c | 22 +- contrib/libarchive/cpio/test/test_option_y.c | 22 +- contrib/libarchive/cpio/test/test_option_z.c | 22 +- contrib/libarchive/cpio/test/test_option_zstd.c | 22 +- contrib/libarchive/cpio/test/test_owner_parse.c | 112 +- .../libarchive/cpio/test/test_passthrough_dotdot.c | 22 +- .../cpio/test/test_passthrough_reverse.c | 22 +- contrib/libarchive/libarchive/archive.h | 4 +- contrib/libarchive/libarchive/archive_acl.c | 71 +- .../libarchive/libarchive/archive_acl_private.h | 2 + contrib/libarchive/libarchive/archive_crc32.h | 5 + contrib/libarchive/libarchive/archive_cryptor.c | 4 +- .../libarchive/archive_cryptor_private.h | 2 +- contrib/libarchive/libarchive/archive_entry.c | 300 ++- contrib/libarchive/libarchive/archive_entry.h | 8 +- .../libarchive/archive_entry_link_resolver.c | 15 + .../libarchive/libarchive/archive_entry_perms.3 | 1 + .../libarchive/libarchive/archive_entry_private.h | 4 +- .../libarchive/libarchive/archive_entry_sparse.c | 2 +- .../libarchive/libarchive/archive_entry_xattr.c | 2 +- contrib/libarchive/libarchive/archive_hmac.c | 2 +- .../libarchive/libarchive/archive_hmac_private.h | 2 +- contrib/libarchive/libarchive/archive_match.c | 2 +- .../libarchive/archive_openssl_evp_private.h | 2 +- .../libarchive/archive_openssl_hmac_private.h | 2 +- contrib/libarchive/libarchive/archive_ppmd7.c | 2 +- contrib/libarchive/libarchive/archive_ppmd8.c | 7 +- contrib/libarchive/libarchive/archive_private.h | 6 +- contrib/libarchive/libarchive/archive_read.c | 8 +- .../libarchive/archive_read_append_filter.c | 8 +- .../libarchive/archive_read_disk_entry_from_file.c | 1 + .../libarchive/archive_read_disk_posix.c | 2 +- .../libarchive/libarchive/archive_read_extract2.c | 2 +- .../libarchive/libarchive/archive_read_open_fd.c | 2 +- .../libarchive/libarchive/archive_read_open_file.c | 2 +- .../libarchive/archive_read_open_filename.c | 4 +- .../libarchive/archive_read_open_memory.c | 2 +- .../libarchive/archive_read_support_filter_bzip2.c | 4 +- .../archive_read_support_filter_compress.c | 2 +- .../libarchive/archive_read_support_filter_gzip.c | 18 +- .../libarchive/archive_read_support_filter_lz4.c | 6 +- .../libarchive/archive_read_support_filter_lzop.c | 5 +- .../archive_read_support_filter_program.c | 6 +- .../libarchive/archive_read_support_filter_rpm.c | 45 +- .../libarchive/archive_read_support_filter_uu.c | 16 +- .../libarchive/archive_read_support_filter_xz.c | 4 +- .../libarchive/archive_read_support_filter_zstd.c | 4 +- .../libarchive/archive_read_support_format_7zip.c | 93 +- .../libarchive/archive_read_support_format_ar.c | 10 +- .../libarchive/archive_read_support_format_cab.c | 12 +- .../libarchive/archive_read_support_format_cpio.c | 32 +- .../archive_read_support_format_iso9660.c | 305 ++- .../libarchive/archive_read_support_format_lha.c | 11 +- .../libarchive/archive_read_support_format_mtree.c | 2 +- .../libarchive/archive_read_support_format_rar.c | 128 +- .../libarchive/archive_read_support_format_rar5.c | 171 +- .../libarchive/archive_read_support_format_raw.c | 2 +- .../libarchive/archive_read_support_format_tar.c | 2221 +++++++++++++------- .../libarchive/archive_read_support_format_xar.c | 32 +- .../libarchive/archive_read_support_format_zip.c | 45 +- contrib/libarchive/libarchive/archive_string.c | 86 +- contrib/libarchive/libarchive/archive_util.c | 16 +- contrib/libarchive/libarchive/archive_write.c | 19 +- .../archive_write_add_filter_b64encode.c | 6 +- .../libarchive/archive_write_add_filter_bzip2.c | 5 +- .../libarchive/archive_write_add_filter_compress.c | 4 +- .../libarchive/archive_write_add_filter_gzip.c | 3 +- .../libarchive/archive_write_add_filter_uuencode.c | 2 +- .../libarchive/archive_write_add_filter_xz.c | 5 +- .../libarchive/archive_write_add_filter_zstd.c | 3 +- .../libarchive/archive_write_disk_posix.c | 16 +- .../libarchive/libarchive/archive_write_open_fd.c | 2 +- .../libarchive/archive_write_open_file.c | 2 +- .../libarchive/archive_write_open_filename.c | 2 +- .../libarchive/archive_write_open_memory.c | 2 +- .../libarchive/archive_write_set_format_7zip.c | 16 +- .../libarchive/archive_write_set_format_ar.c | 6 +- .../archive_write_set_format_cpio_binary.c | 5 +- .../archive_write_set_format_cpio_newc.c | 2 +- .../libarchive/archive_write_set_format_cpio_odc.c | 5 +- .../libarchive/archive_write_set_format_gnutar.c | 6 +- .../libarchive/archive_write_set_format_iso9660.c | 2 +- .../libarchive/archive_write_set_format_pax.c | 24 +- .../libarchive/archive_write_set_format_raw.c | 2 +- .../libarchive/archive_write_set_format_shar.c | 10 +- .../libarchive/archive_write_set_format_ustar.c | 8 +- .../libarchive/archive_write_set_format_v7tar.c | 4 +- .../libarchive/archive_write_set_format_xar.c | 26 +- .../libarchive/archive_write_set_format_zip.c | 10 +- .../libarchive/test/test_7zip_filename_encoding.c | 100 + contrib/libarchive/libarchive/test/test_ar_mode.c | 40 + .../libarchive/test/test_archive_match_time.c | 60 +- .../libarchive/libarchive/test/test_archive_read.c | 63 + .../test/test_archive_read_multiple_data_objects.c | 23 +- .../libarchive/test/test_archive_string.c | 2 +- .../test/test_archive_string_conversion.c | 135 ++ .../test/test_archive_write_add_filter_by_name.c | 2 +- .../libarchive/libarchive/test/test_compat_lzip.c | 2 +- .../test/test_compat_solaris_pax_sparse.c | 2 +- contrib/libarchive/libarchive/test/test_entry.c | 14 +- .../test/test_gnutar_filename_encoding.c | 102 + .../libarchive/test/test_link_resolver.c | 45 + .../libarchive/test/test_pax_filename_encoding.c | 152 ++ .../test/test_read_filter_gzip_recursive.c | 50 + .../test/test_read_filter_gzip_recursive.gz.uu | 19 + .../libarchive/test/test_read_format_7zip.c | 44 + .../test_read_format_7zip_extract_second.7z.uu | 11 + .../libarchive/test/test_read_format_cpio_afio.c | 30 +- .../libarchive/test/test_read_format_huge_rpm.c | 50 + .../test/test_read_format_huge_rpm.rpm.uu | 244 +++ .../test/test_read_format_iso_3.iso.Z.uu | 40 + .../libarchive/test/test_read_format_iso_Z.c | 122 +- .../libarchive/test/test_read_format_mtree.c | 2 +- .../test/test_read_format_rar4_encrypted.rar.uu | 10 + ...est_read_format_rar4_encrypted_filenames.rar.uu | 14 + .../test_read_format_rar4_solid_encrypted.rar.uu | 11 + ...ad_format_rar4_solid_encrypted_filenames.rar.uu | 13 + .../libarchive/test/test_read_format_rar5.c | 39 +- ...read_format_rar5_data_ready_pointer_leak.rar.uu | 28 + .../test/test_read_format_rar5_encrypted.rar.uu | 12 + ...est_read_format_rar5_encrypted_filenames.rar.uu | 19 + .../test_read_format_rar5_solid_encrypted.rar.uu | 14 + ...ad_format_rar5_solid_encrypted_filenames.rar.uu | 18 + .../test/test_read_format_rar_encryption.c | 176 ++ .../libarchive/test/test_read_format_tar.c | 2 +- .../test/test_read_format_tar_pax_large_attr.c | 65 + .../test_read_format_tar_pax_large_attr.tar.Z.uu | 149 ++ .../libarchive/test/test_read_format_xar.c | 37 +- ..._read_format_xar_duplicate_filename_node.xar.uu | 14 + .../libarchive/test/test_read_format_zip_nested.c | 2 +- ...t_read_format_zip_traditional_encryption_data.c | 2 +- .../test/test_read_format_zip_winzip_aes.c | 2 +- .../test/test_read_format_zip_winzip_aes_large.c | 2 +- .../libarchive/test/test_read_truncated_filter.c | 4 +- .../libarchive/libarchive/test/test_sparse_basic.c | 17 +- .../libarchive/libarchive/test/test_tar_large.c | 2 +- .../libarchive/test/test_ustar_filename_encoding.c | 102 + .../test/test_write_disk_secure_noabsolutepaths.c | 88 + .../libarchive/test/test_write_filter_b64encode.c | 4 +- .../libarchive/test/test_write_filter_bzip2.c | 4 +- .../libarchive/test/test_write_filter_compress.c | 4 +- .../libarchive/test/test_write_filter_gzip.c | 4 +- .../test/test_write_filter_gzip_timestamp.c | 4 +- .../libarchive/test/test_write_filter_lrzip.c | 4 +- .../libarchive/test/test_write_filter_lz4.c | 8 +- .../libarchive/test/test_write_filter_lzip.c | 4 +- .../libarchive/test/test_write_filter_lzma.c | 4 +- .../libarchive/test/test_write_filter_lzop.c | 4 +- .../libarchive/test/test_write_filter_uuencode.c | 4 +- .../libarchive/test/test_write_filter_xz.c | 4 +- .../libarchive/test/test_write_filter_zstd.c | 12 +- .../test/test_write_format_iso9660_filename.c | 2 +- .../libarchive/test/test_write_format_zip.c | 6 +- .../test/test_write_format_zip_entry_size_unset.c | 2 +- .../libarchive/test/test_write_format_zip_large.c | 2 +- .../libarchive/test/test_write_format_zip_stream.c | 5 + .../test/test_write_format_zip_windows_path.c | 100 + .../libarchive/test/test_zip_filename_encoding.c | 95 + contrib/libarchive/tar/bsdtar.1 | 24 +- contrib/libarchive/tar/bsdtar.c | 25 +- contrib/libarchive/tar/bsdtar.h | 22 +- contrib/libarchive/tar/bsdtar_platform.h | 24 +- contrib/libarchive/tar/cmdline.c | 22 +- contrib/libarchive/tar/creation_set.c | 24 +- contrib/libarchive/tar/read.c | 22 +- contrib/libarchive/tar/subst.c | 22 +- contrib/libarchive/tar/test/test.h | 22 +- contrib/libarchive/tar/test/test_0.c | 22 +- contrib/libarchive/tar/test/test_basic.c | 22 +- contrib/libarchive/tar/test/test_copy.c | 58 +- contrib/libarchive/tar/test/test_empty_mtree.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_Z.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_bz2.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_grz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_gz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lrz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lz.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lz4.c | 22 +- .../libarchive/tar/test/test_extract_tar_lzma.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_lzo.c | 22 +- contrib/libarchive/tar/test/test_extract_tar_xz.c | 22 +- .../libarchive/tar/test/test_extract_tar_zstd.c | 22 +- contrib/libarchive/tar/test/test_format_newc.c | 22 +- contrib/libarchive/tar/test/test_help.c | 22 +- contrib/libarchive/tar/test/test_leading_slash.c | 22 +- contrib/libarchive/tar/test/test_missing_file.c | 22 +- contrib/libarchive/tar/test/test_option_C_mtree.c | 30 +- contrib/libarchive/tar/test/test_option_C_upper.c | 22 +- contrib/libarchive/tar/test/test_option_H_upper.c | 40 +- contrib/libarchive/tar/test/test_option_L_upper.c | 40 +- contrib/libarchive/tar/test/test_option_O_upper.c | 22 +- contrib/libarchive/tar/test/test_option_P.c | 82 + contrib/libarchive/tar/test/test_option_T_upper.c | 22 +- contrib/libarchive/tar/test/test_option_U_upper.c | 22 +- contrib/libarchive/tar/test/test_option_X_upper.c | 22 +- contrib/libarchive/tar/test/test_option_a.c | 22 +- contrib/libarchive/tar/test/test_option_acls.c | 22 +- contrib/libarchive/tar/test/test_option_b.c | 22 +- .../libarchive/tar/test/test_option_b64encode.c | 22 +- contrib/libarchive/tar/test/test_option_exclude.c | 22 +- .../libarchive/tar/test/test_option_exclude_vcs.c | 24 +- contrib/libarchive/tar/test/test_option_fflags.c | 24 +- .../libarchive/tar/test/test_option_gid_gname.c | 22 +- contrib/libarchive/tar/test/test_option_group.c | 22 +- contrib/libarchive/tar/test/test_option_grzip.c | 22 +- .../libarchive/tar/test/test_option_ignore_zeros.c | 31 +- contrib/libarchive/tar/test/test_option_j.c | 22 +- contrib/libarchive/tar/test/test_option_k.c | 22 +- .../tar/test/test_option_keep_newer_files.c | 22 +- contrib/libarchive/tar/test/test_option_lrzip.c | 22 +- contrib/libarchive/tar/test/test_option_lz4.c | 22 +- contrib/libarchive/tar/test/test_option_lzma.c | 22 +- contrib/libarchive/tar/test/test_option_lzop.c | 22 +- contrib/libarchive/tar/test/test_option_n.c | 22 +- .../libarchive/tar/test/test_option_newer_than.c | 22 +- contrib/libarchive/tar/test/test_option_nodump.c | 22 +- .../libarchive/tar/test/test_option_older_than.c | 22 +- contrib/libarchive/tar/test/test_option_owner.c | 22 +- .../libarchive/tar/test/test_option_passphrase.c | 22 +- contrib/libarchive/tar/test/test_option_q.c | 22 +- contrib/libarchive/tar/test/test_option_r.c | 22 +- contrib/libarchive/tar/test/test_option_s.c | 22 +- .../libarchive/tar/test/test_option_safe_writes.c | 22 +- .../libarchive/tar/test/test_option_uid_uname.c | 22 +- contrib/libarchive/tar/test/test_option_uuencode.c | 22 +- contrib/libarchive/tar/test/test_option_xattrs.c | 24 +- contrib/libarchive/tar/test/test_option_xz.c | 22 +- contrib/libarchive/tar/test/test_option_z.c | 22 +- contrib/libarchive/tar/test/test_option_zstd.c | 22 +- contrib/libarchive/tar/test/test_patterns.c | 22 +- contrib/libarchive/tar/test/test_print_longpath.c | 22 +- contrib/libarchive/tar/test/test_stdio.c | 22 +- .../libarchive/tar/test/test_strip_components.c | 22 +- contrib/libarchive/tar/test/test_symlink_dir.c | 22 +- contrib/libarchive/tar/test/test_version.c | 22 +- contrib/libarchive/tar/util.c | 42 +- contrib/libarchive/tar/write.c | 35 +- contrib/libarchive/test_utils/test_common.h | 5 +- contrib/libarchive/test_utils/test_main.c | 101 +- contrib/libarchive/unzip/bsdunzip.1 | 25 +- contrib/libarchive/unzip/bsdunzip.c | 49 +- contrib/libarchive/unzip/bsdunzip.h | 22 +- contrib/libarchive/unzip/bsdunzip_platform.h | 24 +- contrib/libarchive/unzip/cmdline.c | 22 +- contrib/libarchive/unzip/la_getline.c | 26 +- contrib/libarchive/unzip/test/test.h | 22 +- contrib/libarchive/unzip/test/test_0.c | 22 +- contrib/libarchive/unzip/test/test_C.c | 23 +- contrib/libarchive/unzip/test/test_I.c | 40 +- contrib/libarchive/unzip/test/test_L.c | 23 +- contrib/libarchive/unzip/test/test_P_encryption.c | 25 +- contrib/libarchive/unzip/test/test_Z1.c | 23 +- contrib/libarchive/unzip/test/test_basic.c | 23 +- contrib/libarchive/unzip/test/test_d.c | 23 +- contrib/libarchive/unzip/test/test_doubledash.c | 23 +- contrib/libarchive/unzip/test/test_glob.c | 23 +- contrib/libarchive/unzip/test/test_j.c | 23 +- contrib/libarchive/unzip/test/test_n.c | 25 +- contrib/libarchive/unzip/test/test_not_exist.c | 25 +- contrib/libarchive/unzip/test/test_o.c | 25 +- contrib/libarchive/unzip/test/test_p.c | 23 +- contrib/libarchive/unzip/test/test_q.c | 23 +- contrib/libarchive/unzip/test/test_singlefile.c | 23 +- contrib/libarchive/unzip/test/test_t.c | 23 +- contrib/libarchive/unzip/test/test_t_bad.c | 23 +- contrib/libarchive/unzip/test/test_version.c | 22 +- contrib/libarchive/unzip/test/test_x.c | 23 +- lib/libarchive/tests/Makefile | 24 + usr.bin/cpio/tests/Makefile | 1 + usr.bin/tar/tests/Makefile | 1 + 343 files changed, 5857 insertions(+), 5333 deletions(-) diff --git a/contrib/libarchive/NEWS b/contrib/libarchive/NEWS index ebdbb2a978ec..6af50e4e4033 100644 --- a/contrib/libarchive/NEWS +++ b/contrib/libarchive/NEWS @@ -1,3 +1,9 @@ +Oct 13, 2024: libarchive 3.7.7 released + +Sep 23, 2024: libarchive 3.7.6 released + +Sep 13, 2024: libarchive 3.7.5 released + Apr 26, 2024: libarchive 3.7.4 released Apr 08, 2024: libarchive 3.7.3 released diff --git a/contrib/libarchive/cat/bsdcat.1 b/contrib/libarchive/cat/bsdcat.1 index 9fa66d60e1e6..b34a0c1c988d 100644 --- a/contrib/libarchive/cat/bsdcat.1 +++ b/contrib/libarchive/cat/bsdcat.1 @@ -1,26 +1,8 @@ -.\" Copyright (c) 2011-2014, Mike Kazantsev -.\" All rights reserved. .\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. +.\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. +.\" Copyright (c) 2011-2014, Mike Kazantsev +.\" All rights reserved. .\" .Dd March 1, 2014 .Dt BSDCAT 1 @@ -39,7 +21,7 @@ expands files to standard output. .Nm typically takes a filename as an argument or reads standard input when used in a pipe. -In both cases decompressed data it written to standard output. +In both cases decompressed data is written to standard output. .Sh EXAMPLES To decompress a file: .Pp diff --git a/contrib/libarchive/cat/bsdcat.c b/contrib/libarchive/cat/bsdcat.c index 19d3de65cea4..731621fa9b75 100644 --- a/contrib/libarchive/cat/bsdcat.c +++ b/contrib/libarchive/cat/bsdcat.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2011-2014, Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "bsdcat_platform.h" diff --git a/contrib/libarchive/cat/bsdcat.h b/contrib/libarchive/cat/bsdcat.h index 504757a44040..6726f78e8453 100644 --- a/contrib/libarchive/cat/bsdcat.h +++ b/contrib/libarchive/cat/bsdcat.h @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014, Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef BSDCAT_H_INCLUDED diff --git a/contrib/libarchive/cat/bsdcat_platform.h b/contrib/libarchive/cat/bsdcat_platform.h index 78a6113e6f01..940214f2ecd6 100644 --- a/contrib/libarchive/cat/bsdcat_platform.h +++ b/contrib/libarchive/cat/bsdcat_platform.h @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2007 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* @@ -58,7 +40,7 @@ #define __LA_NORETURN __attribute__((__noreturn__)) #elif defined(_MSC_VER) #define __LA_NORETURN __declspec(noreturn) -#else +#else #define __LA_NORETURN #endif diff --git a/contrib/libarchive/cat/cmdline.c b/contrib/libarchive/cat/cmdline.c index 851b63de06e5..8ecd74aa95e4 100644 --- a/contrib/libarchive/cat/cmdline.c +++ b/contrib/libarchive/cat/cmdline.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2008 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* diff --git a/contrib/libarchive/cat/test/test.h b/contrib/libarchive/cat/test/test.h index ec83d476b6b8..b852437ca430 100644 --- a/contrib/libarchive/cat/test/test.h +++ b/contrib/libarchive/cat/test/test.h @@ -1,26 +1,8 @@ /* + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2006 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* Every test program should #include "test.h" as the first thing. */ diff --git a/contrib/libarchive/cat/test/test_0.c b/contrib/libarchive/cat/test/test_0.c index c806c24356c0..07f5fc60cf35 100644 --- a/contrib/libarchive/cat/test/test_0.c +++ b/contrib/libarchive/cat/test/test_0.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2003-2007 Tim Kientzle * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_gz.c b/contrib/libarchive/cat/test/test_empty_gz.c index 6181f93b4d28..0ca835627bf5 100644 --- a/contrib/libarchive/cat/test/test_empty_gz.c +++ b/contrib/libarchive/cat/test/test_empty_gz.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_lz4.c b/contrib/libarchive/cat/test/test_empty_lz4.c index 9d98e9cfd390..ed4f2894fb4f 100644 --- a/contrib/libarchive/cat/test/test_empty_lz4.c +++ b/contrib/libarchive/cat/test/test_empty_lz4.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_xz.c b/contrib/libarchive/cat/test/test_empty_xz.c index 368ffb574e50..591ab2410ce4 100644 --- a/contrib/libarchive/cat/test/test_empty_xz.c +++ b/contrib/libarchive/cat/test/test_empty_xz.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Sebastian Freundt * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_empty_zstd.c b/contrib/libarchive/cat/test/test_empty_zstd.c index c2d5ea106fa1..b0f25bf1cacd 100644 --- a/contrib/libarchive/cat/test/test_empty_zstd.c +++ b/contrib/libarchive/cat/test/test_empty_zstd.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2017 Sean Purcell * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_error.c b/contrib/libarchive/cat/test/test_error.c index 918af01be2dc..3e1a74a38820 100644 --- a/contrib/libarchive/cat/test/test_error.c +++ b/contrib/libarchive/cat/test/test_error.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_error_mixed.c b/contrib/libarchive/cat/test/test_error_mixed.c index 7d94fce467aa..01cb9f0520dd 100644 --- a/contrib/libarchive/cat/test/test_error_mixed.c +++ b/contrib/libarchive/cat/test/test_error_mixed.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_Z.c b/contrib/libarchive/cat/test/test_expand_Z.c index d48d4972ebee..f34f38ce0385 100644 --- a/contrib/libarchive/cat/test/test_expand_Z.c +++ b/contrib/libarchive/cat/test/test_expand_Z.c @@ -1,26 +1,8 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_bz2.c b/contrib/libarchive/cat/test/test_expand_bz2.c index 82f074b341c8..8f3bb3f24a46 100644 --- a/contrib/libarchive/cat/test/test_expand_bz2.c +++ b/contrib/libarchive/cat/test/test_expand_bz2.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_gz.c b/contrib/libarchive/cat/test/test_expand_gz.c index 18b715c66ebb..1f6f1cfddbac 100644 --- a/contrib/libarchive/cat/test/test_expand_gz.c +++ b/contrib/libarchive/cat/test/test_expand_gz.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "test.h" diff --git a/contrib/libarchive/cat/test/test_expand_lz4.c b/contrib/libarchive/cat/test/test_expand_lz4.c index 1b1d2106459d..efc2baad59ed 100644 --- a/contrib/libarchive/cat/test/test_expand_lz4.c +++ b/contrib/libarchive/cat/test/test_expand_lz4.c @@ -1,27 +1,9 @@ /*- + * SPDX-License-Identifier: BSD-2-Clause + * * Copyright (c) 2014 Mike Kazantsev * Copyright (c) 2012, 2014 Michihiro NAKAJIMA * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, *** 18475 LINES SKIPPED *** From nobody Sun Oct 27 10:51:52 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbtcm6C8mz5Zf8G; Sun, 27 Oct 2024 10:51:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbtcm59Srz4m7b; Sun, 27 Oct 2024 10:51:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jHyhjGTFKg1sMh18Rak5wL8Alzsi3N5WWbIqoYL7NzM=; b=IsulLeGmQQZr8aDyYyZ+zQRgs9olm7+7bToS1umwXDhMwShv95KS0vaZGpU/45zQur/0h9 mh5kF/R90NDuQVBTvbpg9MB2+8dNoQiecFtH0p1wg4ISL84CwNS872yp61Q8Gh2TclPKrh GW5c72WYOwTDY29q6wHj1amnQkJ+IRQKKgn2SO4SyCYRpkDrMii6tBSjttKBVkE2gFyvR4 xMjj4yG/yGLQ05DQ0SZNHAf2b3y82o+HbU3M7TsdorC6udOrM7/4HmdvwTC7Izs9B5HKeO j+jdxYCBUC29b4xK2X6LVv30J+QsxaVRHzmcH3BzsU8o2qUvM+cdAqynFlJg9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jHyhjGTFKg1sMh18Rak5wL8Alzsi3N5WWbIqoYL7NzM=; b=nXygpekQatn8YYcR+Oz1yFgbyFYGpeoY/EESFRC4ZUYAcij4LSaxg1qBskyunE62YFUK3x FoJ13ZYoyCKCFj9gEsrtcR+X7wf1/DHSJF3qhLkHnossR63yq6SLsEYxJ+PFFBSxSpDklK aLCTeONXlbY5lyp+jLvibqCPoEB/CA0ew6ZCE6n3e/2rOzT+hnpkszd45Ww34D+nDfw3+d l1VgNr4OkUQyWj8IUdR+FnAhfcdtHCDRmPFF/+H9vsJUgLkRhaExxpxS1sd1fYpiV15giG wMGTuerOnY41dIzJj+PUL0DD9cqpLq/tZnEmEvZBUW2HEJt1lKPqQV10d9Rj7Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026312; a=rsa-sha256; cv=none; b=QBlWT4ydxWIjW/QathkrpU4SoI1DwR3KEQd7Xw/H1NgIoqwHE/4EhsZUot1U2tt7tyBO6v qNiS3fdW3U0T+EEVsFHBVXQi3SYEsyPgCSMjLapouKUrA4m+K0pmkTX9Pn7wxC2G8ZDYBT iLEi/RO+QIxyyDXWx5Po6dXD1SPogFaRFq95wwQXIiADqN40580lBCqG+W9KYoYjEztUxW YgkNCogh59FTmpJk24kVsKhAYUo7gRcUk0ARZHAlkvxgPuUUF9r8M6UC97MLF6BmCXHOrq 9tWCFrOK2fxq5WDMFIdSFKyg3mcPP3Wmsz1l1QXGSKfMHHFm3G68Y5jY6HZf1A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbtcm4mJ3zrgf; Sun, 27 Oct 2024 10:51: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 49RApqsf002331; Sun, 27 Oct 2024 10:51:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RApqAI002317; Sun, 27 Oct 2024 10:51:52 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:51:52 GMT Message-Id: <202410271051.49RApqAI002317@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 120e685333d8 - stable/13 - libarchive: backport PR #2386 (fixes output of one test) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 120e685333d806d184bb2c7b33420c5fed6cd13e Auto-Submitted: auto-generated The branch stable/13 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=120e685333d806d184bb2c7b33420c5fed6cd13e commit 120e685333d806d184bb2c7b33420c5fed6cd13e Author: Martin Matuska AuthorDate: 2024-10-21 12:35:18 +0000 Commit: Martin Matuska CommitDate: 2024-10-27 09:43:16 +0000 libarchive: backport PR #2386 (fixes output of one test) (cherry picked from commit 6c40282284d6eab20256914648cdec39acb2c52a) --- contrib/libarchive/tar/test/test_option_P.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/libarchive/tar/test/test_option_P.c b/contrib/libarchive/tar/test/test_option_P.c index e63da3e0875c..953d9f58991c 100644 --- a/contrib/libarchive/tar/test/test_option_P.c +++ b/contrib/libarchive/tar/test/test_option_P.c @@ -55,7 +55,7 @@ DEFINE_TEST(test_extract_tar_absolute_paths) UNLINK(temp_absolute_file_name); // Extracting the archive without -P / --absolute-paths should strip leading drive letter or slash - r = systemf("%s -xf test.tar", testprog); + r = systemf("%s -xf test.tar 2>test.err", testprog); assertEqualInt(r, 0); assertFileNotExists(temp_absolute_file_name); From nobody Sun Oct 27 10:56:36 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XbtkF0sBxz5ZfDc; Sun, 27 Oct 2024 10:56:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XbtkF08YVz4mdq; Sun, 27 Oct 2024 10:56:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3Ua9qc9eL8lzNN8I15ODUWJxtTCiqjXfC+5aa+nT6cs=; b=GziNZK2ZSgtLa3FQsRJ2LznHf68IeAyLCX0pRmVBEDyXKg3ps4/h7MhnOK80w6L4BZChL4 VaKt9oTk4tQ9vcCBhgZ2MN2zS9iHha2n/nc49TLdwXl6omwvzpPZZv4DgTynC/W/qoQ7M6 546fj77+T1+9Zd6T6k9IHGME7WhQovI2KB6RCELNA63t2OuNK0UWf8yiTqNiipE7iM+4+N Tmd0sSJVYwI0Xe/oPA8bqKi4361Bj2Vq6OG/fG6tPGjd+AbsUC57SdhrjLQLK/21MjZv16 LWOvlLXnATrS+nU0amWmMu+f332fk+fRgjQbsk7GTGMUo0qBOJc1Q6T3vEYiyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3Ua9qc9eL8lzNN8I15ODUWJxtTCiqjXfC+5aa+nT6cs=; b=cwm+lP2iJMy/rgTB2Y/n9UMTeD/L1nPMltuGWeP4HHDvht03Vxygmalku7jflRsHXb0mXx 3X/jhMQR/+M3AQIktHdOZNbcOlZLbTT2HRnxurpWm3oZ8gn6uy/3thEyO5n58/gh0k4cPx koh3BKjkQveLwDbQQdDh901q61319uRplCHxcuV/2WRP1BWNZCj8Km1Sezp7HXaZh1ZREe gVxrf/ZXvC/OQZEgUMICRMDwxcZrmZdjTUNLyBg+nO7l0Re7B6ooh2LKI3IrY7qEWaY9qm QCJhB1WfER9Uy02ZdWMnKukNQ5cixJ42BSmeuwm0bmAE/T9o0LHej+Z+8zrzGQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026597; a=rsa-sha256; cv=none; b=bjeNsnnDehidfnH0UaKnPHQJYZb3Lh6Ky9Xx1BZ7jCOaC91XdSqQ6xos8zbqAWNS2dADF9 UoiubX7TMZRjLufqQATdtnvow8uBgQFg8xl4HQw+6RukQXry48uFCY3P3zoplVPcgvdAIN TiuCWBU3qiHoYEL+0BW80i85th2Yw6CSTld0wEDEGrd1VYpJNvXYwqcWQC7YlEnNN5uyUy klAXByGMhbzp7M7wATgnV0roUH5U/o7FkgVWTp17ZZa0guQtiHoPA58UTwOUOs7/c6kWZU OryfaE6pVXJMCD0bRYwUXV8rEzXQN8X04WY6uZ/t/4iGYonNeFDiZRdD9bNsiA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XbtkD6jjtzrf7; Sun, 27 Oct 2024 10:56: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 49RAuaUF008060; Sun, 27 Oct 2024 10:56:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RAuaFi008058; Sun, 27 Oct 2024 10:56:36 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:56:36 GMT Message-Id: <202410271056.49RAuaFi008058@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 7905f6f1c7e9 - stable/14 - Fix enum warning in ath_hal's ar9002 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7905f6f1c7e948350fab2195ddf64f37fc3e1d5e Auto-Submitted: auto-generated The branch stable/14 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=7905f6f1c7e948350fab2195ddf64f37fc3e1d5e commit 7905f6f1c7e948350fab2195ddf64f37fc3e1d5e Author: Dimitry Andric AuthorDate: 2024-07-31 09:43:50 +0000 Commit: Dimitry Andric CommitDate: 2024-10-27 10:53:01 +0000 Fix enum warning in ath_hal's ar9002 This fixes a clang 19 warning: sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c:57:32: error: comparison of different enumeration types ('HAL_BOOL' and 'HAL_ANT_SETTING') [-Werror,-Wenum-compare] 57 | (AH5212(ah)->ah_diversity != HAL_ANT_VARIABLE)) { | ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~ The `ah_diversity` field of `struct ath_hal_5212` is of type `HAL_BOOL`, not the enum type `HAL_ANT_SETTING`. In other code, `ah_diversity` is set to `AH_TRUE` whenever the related field `ah_antControl` is set to `HAL_ANT_VARIABLE`. It is not entirely clear to me what the intended statement is here: the test as it is written now compares the enum value 0 to `ah_diversity`, so in effect it enables the following block whenever `ah_diversity` is `AH_TRUE`. Write it like that, to avoid the compiler warning. MFC after: 3 days (cherry picked from commit 36d486cc2ecdb9c290dba65bd5668b7e50d0d822) --- sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c b/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c index 01a224cbbfe9..fb2700771ffa 100644 --- a/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c +++ b/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c @@ -54,7 +54,7 @@ ar9285BTCoexAntennaDiversity(struct ath_hal *ah) !! (ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ENABLE)); if ((ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ALLOW) || - (AH5212(ah)->ah_diversity != HAL_ANT_VARIABLE)) { + (AH5212(ah)->ah_diversity == AH_TRUE)) { if ((ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ENABLE) && (AH5212(ah)->ah_antControl == HAL_ANT_VARIABLE)) { /* Enable antenna diversity */ From nobody Sun Oct 27 10:56:37 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XbtkG2Lpwz5ZfvS; Sun, 27 Oct 2024 10:56:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XbtkG1rGVz4msp; Sun, 27 Oct 2024 10:56:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ZTSE4xiITkFBFKM96lycZIpNLZc1ws2a/mJ4aeRRGI=; b=oS8YgHIiFWD3xiAdrpPdLjZe8AHVoF9FOr+6+lQpMsUO+1VDRU+cvzmdWqHVt+uW+zRi6v GKhw/345zhZGwwYl2T+niIXpTQQqHLGFvb5VpcXAId79Sb0+rF/OCguGUNlIZrlhxDG0pu N/XoKQmjFNmSskyHD5BlRk4N6V99Ex7PmY7S8qm+0z0h5QKraU8cCHs4zTz6a+g+mljiEB b9CN8ZkvU27rDtFTN4vmouOkCCWA0eVagU0Zf53P/E/gMYYN3PtWVSDt9DJGVB0YUeZY05 xT065zabbZiu2gciwgAe51nCnCiLiphCCRCcLxO47Rb8YFyYJsXNECPX2ysBPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ZTSE4xiITkFBFKM96lycZIpNLZc1ws2a/mJ4aeRRGI=; b=oGlWLUWWW745uCcxDpnAl6t1dqV1DHQAR8UyR9Axh5Tax0n+YlmYjliX9zHagfnJN1zyPJ mtpZOg4k10J6INogqN8tFo7uOvoPq+piq/omTJIteh5jLTIxh3lduLr7hqKk/WDkTWAIpW M9f+xl/Uqn7rAm6GwG3KI3da4IKqQEsk63/X4nPnW2cWUYzm64uk42Gr3RNKjHnhQhzysf betUQy0MylLugVdqwegGsmpYW11fafb7utygifXwv+1sEe12Iui7yUpWHlaMcgTTFJzmw0 qPX2al5WVFkKpiRzKIV0x9iKhFkN7F52RbRb3mpNmyNj4OcZXdiJ0cvZ5Hdf3A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026598; a=rsa-sha256; cv=none; b=InUKsSjIS0dGtinyHhbkKkeTLZlJqng4ooTqLV8DxRsCKi/uAKE9JOjFcNLfOZ+Ty1+Fjn GCnYFIhqX0YpSlueMy/RXcdTVBwGRq+0CnOsJH/fiX3tdjGVKyHMF/FF7vHP2kF5FZrpzN eKwzYRbIXSHW9wCcsllrlcs3frPboAcr2kzPg0kWDQnGAKEp7yD8aXdeYI/28WRW7WdKFR fzDNd6d+HUGhpz1fnTiEULOFCiHE9jGwDpW6bG3jUjnL4q6wV5pI9WEM8TQft2KgPoi1px JJ3U7iNTRQmLoBgzDpxRCxY50FAciAiDwxLMpKKo6GtAYkB6uXrhXK2v7Yp6Mw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XbtkG0Zvkzrw1; Sun, 27 Oct 2024 10:56:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49RAubBr008118; Sun, 27 Oct 2024 10:56:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RAubt3008115; Sun, 27 Oct 2024 10:56:37 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:56:37 GMT Message-Id: <202410271056.49RAubt3008115@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 6fb9a8e75844 - stable/14 - Fix buildworld with gcc 13 after llvm-19 import List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6fb9a8e758449b2b5502b18a1c43f54688830bc8 Auto-Submitted: auto-generated The branch stable/14 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=6fb9a8e758449b2b5502b18a1c43f54688830bc8 commit 6fb9a8e758449b2b5502b18a1c43f54688830bc8 Author: Dimitry Andric AuthorDate: 2024-10-24 21:42:36 +0000 Commit: Dimitry Andric CommitDate: 2024-10-27 10:53:18 +0000 Fix buildworld with gcc 13 after llvm-19 import It turns out the new libc++ 19 headers result in a -Werror warning from gcc 13: In file included from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/shared_ptr.h:31: /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/uninitialized_algorithms.h: In instantiation of 'constexpr void std::__1::__uninitialized_allocator_relocate(_Alloc&, _Tp*, _Tp*, _Tp*) [with _Alloc = allocator >; _Tp = basic_string]': /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/vector:1052:42: required from 'void std::__1::vector<_Tp, _Alloc>::__swap_out_circular_buffer(std::__1::__split_buffer<_Tp, _Allocator&>&) [with _Tp = std::__1::basic_string; _Allocator = std::__1::allocator >]' /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/vector:1469:31: required from 'void std::__1::vector<_Tp, _Alloc>::reserve(size_type) [with _Tp = std::__1::basic_string; _Allocator = std::__1::allocator >; size_type = long unsigned int]' /usr/src/freebsd/src/contrib/googletest/googletest/src/gtest.cc:795:27: required from here /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/uninitialized_algorithms.h:645:21: error: 'void* __builtin_memcpy(void*, const void*, long unsigned int)' writing to an object of type 'std::__1::__remove_const_t >' {aka 'class std::__1::basic_string'} with no trivial copy-assignment; use copy-assignment or copy-initialization instead o[-Werror=class-memaccess] 645 | __builtin_memcpy(const_cast<__remove_const_t<_Tp>*>(__result), __first, sizeof(_Tp) * (__last - __first)); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__system_error/error_category.h:15, from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__system_error/error_code.h:18, from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__ostream/basic_ostream.h:16: /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/string:752:7: note: 'std::__1::__remove_const_t >' {aka 'class std::__1::basic_string'} declared here 752 | class basic_string { | ^~~~~~~~~~~~ Since this is all benign, turn off errors for -Wclass-memaccess. PR: 280562 MFC after: 3 days (cherry picked from commit a3a88aa132605c5d42153a419c0e129296dec467) --- share/mk/bsd.sys.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index 7d0e632973e4..a1be8a8a2225 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -217,6 +217,7 @@ CWARNFLAGS+= -Wno-error=aggressive-loop-optimizations \ -Wno-error=restrict \ -Wno-error=sizeof-pointer-memaccess \ -Wno-error=stringop-truncation +CXXWARNFLAGS+= -Wno-error=class-memaccess .endif # GCC 9.2.0 From nobody Sun Oct 27 10:59:04 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbtn45R76z5ZfsC; Sun, 27 Oct 2024 10:59:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbtn44qCDz4nN6; Sun, 27 Oct 2024 10:59:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026744; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zg7/CWe0LMso/9Bj5xiHwyLXvpYMFKhMnaytlLXcx+U=; b=ZmlKYA5KAxxhDfdapPYlEdYW88Y4I3a1uhjIcM2ItbMJrBYG34rvXoO9KIkesR/q4ACyNV et1y+2dwCyNBOiFxjCRX4RAXCMUgcGt/IkQNxS9PLrUI0DhHtq7VztjpuQHB1wznzcBrfx zDRb/8t8PMUIYbNoXrvmxhGmMCVQtkt0U4Bh7vLUPq4DLtByMVizk694reJ6ouO1DxpaDi jQKDiNjbIv3M4jYbZDpJMeZT5C0cac6+ejeBviu/0wqWmpEGAwougJPM3ZTHUHZoi25OoY 71Jt/rdJdrwd35dR06sTUkPW3kMihBNK7oSBQw1bic2/jkHPZUGTRHo/x5Sstg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026744; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zg7/CWe0LMso/9Bj5xiHwyLXvpYMFKhMnaytlLXcx+U=; b=jSaCfhh/T/m8MPZFYw/mgNKAdbPJQMVrCvzvBFEuHpouBjTgwDoe0JbVQxEsZU5Z7YM0PQ FVCbLH6v/Ps95R3YBuhhJme2X0mRiSwhm73ya2Dt8jp2XaCw51rzOA7OEIJPKY0zaylJWq TJiMHLmen9zo6XY/lXRUqUSxfaYnh6a3F0Tl+ONni9wmsCFTYwFMW4cxJa53EKDXhr3UYh yKlpg3Kl5yfjyH9dtdXb5a55cbE8deVbXZsUPdj4CKOX3m7Sld/ZO6Nxgd9pXTYBEg38bm 61SlNnK+2JsFpOth/Ejty+AnuxrVVGD9BWQ7AWjqtGngeYoQu1n9rGR8zRGoYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026744; a=rsa-sha256; cv=none; b=Ks75pCFf3sgAS0GCAHYq1QSY6JPoZinBcol1vhftRqovXG4Xzz0QGRWEZUKC0FBHYVhNtx NN3DZ2Or51ugVo/o6v0i/C9vFPs28Qxlyvl3mHXyVt/C2uigBuI1Vm7aQU2olmvrXYxqMA ewyu73YlnogGl/t/OxaHxmaulH+m0hGFxmWRvSLw2agPJzQKo5vyvtPg7Pmr/W8xIe/4Ck ZZnDzLT895B/aWzxoXH/k65hOki562qP+HpSFJkHjx995n9z6vubc8LRePv7JZjl5ax9f6 4zriEzuH8NSJ8OR9ZT/p1SUuXN3ByaFykYYgRQEZj9AKPbQFbwBrmaYvAPmzJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbtn44DpLzr9l; Sun, 27 Oct 2024 10:59: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 49RAx4x4008981; Sun, 27 Oct 2024 10:59:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RAx4Y3008978; Sun, 27 Oct 2024 10:59:04 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:59:04 GMT Message-Id: <202410271059.49RAx4Y3008978@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 3ecf2aa39a5a - stable/13 - Fix enum warning in ath_hal's ar9002 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3ecf2aa39a5a3fc32012d4cfc3da45a97ce94c91 Auto-Submitted: auto-generated The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=3ecf2aa39a5a3fc32012d4cfc3da45a97ce94c91 commit 3ecf2aa39a5a3fc32012d4cfc3da45a97ce94c91 Author: Dimitry Andric AuthorDate: 2024-07-31 09:43:50 +0000 Commit: Dimitry Andric CommitDate: 2024-10-27 10:58:36 +0000 Fix enum warning in ath_hal's ar9002 This fixes a clang 19 warning: sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c:57:32: error: comparison of different enumeration types ('HAL_BOOL' and 'HAL_ANT_SETTING') [-Werror,-Wenum-compare] 57 | (AH5212(ah)->ah_diversity != HAL_ANT_VARIABLE)) { | ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~ The `ah_diversity` field of `struct ath_hal_5212` is of type `HAL_BOOL`, not the enum type `HAL_ANT_SETTING`. In other code, `ah_diversity` is set to `AH_TRUE` whenever the related field `ah_antControl` is set to `HAL_ANT_VARIABLE`. It is not entirely clear to me what the intended statement is here: the test as it is written now compares the enum value 0 to `ah_diversity`, so in effect it enables the following block whenever `ah_diversity` is `AH_TRUE`. Write it like that, to avoid the compiler warning. MFC after: 3 days (cherry picked from commit 36d486cc2ecdb9c290dba65bd5668b7e50d0d822) --- sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c b/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c index 01a224cbbfe9..fb2700771ffa 100644 --- a/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c +++ b/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c @@ -54,7 +54,7 @@ ar9285BTCoexAntennaDiversity(struct ath_hal *ah) !! (ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ENABLE)); if ((ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ALLOW) || - (AH5212(ah)->ah_diversity != HAL_ANT_VARIABLE)) { + (AH5212(ah)->ah_diversity == AH_TRUE)) { if ((ahp->ah_btCoexFlag & HAL_BT_COEX_FLAG_ANT_DIV_ENABLE) && (AH5212(ah)->ah_antControl == HAL_ANT_VARIABLE)) { /* Enable antenna diversity */ From nobody Sun Oct 27 10:59:05 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xbtn60Jtdz5ZfpQ; Sun, 27 Oct 2024 10:59:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xbtn5689Nz4nLJ; Sun, 27 Oct 2024 10:59:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026745; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gykHNhzQP2jn/VPj3/8Ki2i9TP0tIt3rEqaJIX6BfjI=; b=liwyIEyRXGbW0rBgV4FWtay69jYzdPpEDM2+OVSbpa6RHs0TmeG2N4f06dEMb//dO/FppX WLJRWGJdxSpP7k021W3sf0bwWDjfCr3enNs/aYyMufy7xlmKGa5qTLkkb6lfj2r8eOTPVQ +fKbRJM848CVd6oah9lRZNwwi0IrsLn9FRtHCABz3wQ+HJUUGLMTRpxGeU4txaqSLFJ8eo TaDSMqIDulDZ4m4XMQtIgFeP0eEyO3Pddy5By4BfvWBw7tbJHMuXE2agI9aj65LHyY/t5Z CpJYv49HshOSIyVuQ5qCE55tuSghYu6zwjp2GZoS4dsLzmyU6gkYyR2KoXSVwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730026745; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gykHNhzQP2jn/VPj3/8Ki2i9TP0tIt3rEqaJIX6BfjI=; b=lNWVy6hatXhLb+stfcCSqbS1q2iQ0RQ6gxBDVaGKqsdrUDgrOZdAexW6Z+KHjf9NB5jSbx KmIpkInvtDicN/OpENnqjWpEVR+ujnZuUt9NihXkHsWpt8yAmiG4pdqDnLyLREZh8pC/Pw ZWFJtFjw2FLYT99ReSAFn34vLoDLuOxcgaod8i9xos0TexZtUPqZj7gm0zmoEHYaelHtru vBBlrlehYzqm8CmWpde2ixvyFQI6V4HkYPJUlMFNAEiDbBn8xpPUWUIbXyvc7fBIP1PFa0 1dySR6iSf55/ncrPv/RxIyct3GKejJ7ILgODHU/eE/xI/Vdz5v6jA2l+lt1WFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730026745; a=rsa-sha256; cv=none; b=dPrEHaGSEZbFtZVL20RwjhOMwgySAEluK31pvY40a0jgfDNJBheQYxZxE9vPggeucZWwKQ 1IsWMBYcEwBxau2PoaBuenmdMR/qcAcxQ4AkXs5wnIPm2NRYsybg+w37Muzr469mQaV+PR ZoERw7fi05R1X2dI2u2R7Uie7S+ze1wycu36mBa+/HYtr5OwLz7o/w1hynSXYLlfGgG8mz OjGWCwVgzb/IPvVS4aszjBuCUY81xiH3yqjPHTpLToOMIt5Z5OMTYuekQ38Fd7T8Hl1fDI 9NUPmS+sVak8WrRj7tT/2XQMCfpNuM3kA6p0tG2GC0/BbLL5Uuf+Hma6QXPDOA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xbtn55Ykpzrc6; Sun, 27 Oct 2024 10:59: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 49RAx5ha009033; Sun, 27 Oct 2024 10:59:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RAx5ZA009030; Sun, 27 Oct 2024 10:59:05 GMT (envelope-from git) Date: Sun, 27 Oct 2024 10:59:05 GMT Message-Id: <202410271059.49RAx5ZA009030@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 737111920ce3 - stable/13 - Fix buildworld with gcc 13 after llvm-19 import List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 737111920ce3ccd82d93af765e38e51f3a2d359d Auto-Submitted: auto-generated The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=737111920ce3ccd82d93af765e38e51f3a2d359d commit 737111920ce3ccd82d93af765e38e51f3a2d359d Author: Dimitry Andric AuthorDate: 2024-10-24 21:42:36 +0000 Commit: Dimitry Andric CommitDate: 2024-10-27 10:58:37 +0000 Fix buildworld with gcc 13 after llvm-19 import It turns out the new libc++ 19 headers result in a -Werror warning from gcc 13: In file included from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/shared_ptr.h:31: /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/uninitialized_algorithms.h: In instantiation of 'constexpr void std::__1::__uninitialized_allocator_relocate(_Alloc&, _Tp*, _Tp*, _Tp*) [with _Alloc = allocator >; _Tp = basic_string]': /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/vector:1052:42: required from 'void std::__1::vector<_Tp, _Alloc>::__swap_out_circular_buffer(std::__1::__split_buffer<_Tp, _Allocator&>&) [with _Tp = std::__1::basic_string; _Allocator = std::__1::allocator >]' /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/vector:1469:31: required from 'void std::__1::vector<_Tp, _Alloc>::reserve(size_type) [with _Tp = std::__1::basic_string; _Allocator = std::__1::allocator >; size_type = long unsigned int]' /usr/src/freebsd/src/contrib/googletest/googletest/src/gtest.cc:795:27: required from here /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__memory/uninitialized_algorithms.h:645:21: error: 'void* __builtin_memcpy(void*, const void*, long unsigned int)' writing to an object of type 'std::__1::__remove_const_t >' {aka 'class std::__1::basic_string'} with no trivial copy-assignment; use copy-assignment or copy-initialization instead o[-Werror=class-memaccess] 645 | __builtin_memcpy(const_cast<__remove_const_t<_Tp>*>(__result), __first, sizeof(_Tp) * (__last - __first)); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__system_error/error_category.h:15, from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__system_error/error_code.h:18, from /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/__ostream/basic_ostream.h:16: /usr/obj/usr/src/freebsd/src/amd64.amd64/tmp/usr/include/c++/v1/string:752:7: note: 'std::__1::__remove_const_t >' {aka 'class std::__1::basic_string'} declared here 752 | class basic_string { | ^~~~~~~~~~~~ Since this is all benign, turn off errors for -Wclass-memaccess. PR: 280562 MFC after: 3 days (cherry picked from commit a3a88aa132605c5d42153a419c0e129296dec467) --- share/mk/bsd.sys.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index e1afc641cdaa..83d3004adf90 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -221,6 +221,7 @@ CWARNFLAGS+= -Wno-error=aggressive-loop-optimizations \ -Wno-error=restrict \ -Wno-error=sizeof-pointer-memaccess \ -Wno-error=stringop-truncation +CXXWARNFLAGS+= -Wno-error=class-memaccess .endif # GCC 9.2.0 From nobody Sun Oct 27 16:33:08 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2BY1QLcz5bBxx; Sun, 27 Oct 2024 16:33:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2BY0fGgz4PLH; Sun, 27 Oct 2024 16:33:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Kg1YLQpvbHbq3R+P4C1frPNcvbeyusBwZem1z0R1fHc=; b=Rwj+cHGD5c9fkjrb4wbYxT1PFyBFpcEmaq475ANDyp8YzpgXbUg/mMv+AZJR7GIgekOPP7 Qz70U8JT8sB8tqyCezykfN5+k+6gKAnjLXfDb0n2RrazkDGB16eZ0R5Ui8YFhRP5V78GSu FKFv6yGbXNT164rgmmQ5UJYVlS+b/8Edg+VT0uFqkiaSzsmsMI54E91BEM9dV7lB0kbk8D Y2GhoOA42lqdmn6dgDKk0ESOdz/tRJc9XJW6K4kCTDCTRLpQfTaUK2dPveopL8Cwg72AE7 dmA/IUJsI10rnlLO6yvjtV4SeKUdIvoGqNwXl3hTv9m580QaL4HOoB6l7F6IRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Kg1YLQpvbHbq3R+P4C1frPNcvbeyusBwZem1z0R1fHc=; b=C8KR9vOiaovO32omsnezxvM/dv3rQoIbEBPhuo77McWoBrqAfZn68ffbwwpU4M18o4157O TAb37NORrSg1eMnyPZHMF61iZz5ksZstfx9Nvm4j5Y2ucBz0mfFPejv1J/q1ZerefThMuJ oUdl9lxrKUhNbWlyB9Fw0OXkCgm98RP0RKTKiKtnTkyKBr6W2ZaT6PgXvK++Wm9XRh124l LgLjZkL6ZGl+gc5SAhInY8tl0aNcxJnUGct6Niz82mC0mR9Q1AqhenAnq34Q6kYU+PRl9/ dzYUtpv4C1sBJ35qRUc0aEYD5RbTfSA8UyNo14QXV0VOfShqV4lylz0QLQ/5uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046789; a=rsa-sha256; cv=none; b=EhxH/YrSko3BVyK5/3ck82TI+kobMcT5M90M49XwgpuUM5yG5bpsVSCJyujj4JlOoRQo5t ixz+OI6qPSrh3zAvPQupNoT3+jxOimjzRe1aFOIcWW6YUfRelMnXLvdqjuPMhk+wjO45jM l39LXTs8IAiC60Z5MnYyjXB/weBFjou0SZ260q9+hB32ts0BY3u6OvQvp4sVvShbUiqWoL 7MzXW62DWQAuQn7y/zqIPilpNiaAAn4jJ9HUCumJuQHoKOBmlezjM0b5erbujssDzz8KKm +cl7WfJooHIyRT54Cqls4GQlaOjJy3m8rjoVJe3UAOPohXzPNcB06EV15um8FQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2BX71c3z12mL; Sun, 27 Oct 2024 16:33: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 49RGX8Ie035323; Sun, 27 Oct 2024 16:33:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGX8gX035319; Sun, 27 Oct 2024 16:33:08 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:08 GMT Message-Id: <202410271633.49RGX8gX035319@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: ace5484e48c9 - stable/14 - sound: Call DSP_REGISTERED before PCM_DETACHING List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ace5484e48c9c8585cf914963912ee1ebf35327a Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=ace5484e48c9c8585cf914963912ee1ebf35327a commit ace5484e48c9c8585cf914963912ee1ebf35327a Author: Christos Margiolis AuthorDate: 2024-10-24 11:37:01 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:16 +0000 sound: Call DSP_REGISTERED before PCM_DETACHING DSP_REGISTERED first checks if the softc is not null, through PCM_REGISTERED, which in turn calls PCM_ALIVE, whereas PCM_DETACHING accesses the softc flags directly. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch, markj, emaste Differential Revision: https://reviews.freebsd.org/D47195 (cherry picked from commit 9693241188aa6882166b091d9006f9d0affeda7e) --- sys/dev/sound/pcm/dsp.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index d4f7e3d6e63f..6573dfaabf2f 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -196,7 +196,7 @@ dsp_close(void *data) d = priv->sc; /* At this point pcm_unregister() will destroy all channels anyway. */ - if (PCM_DETACHING(d)) + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) goto skip; PCM_GIANT_ENTER(d); @@ -301,7 +301,7 @@ dsp_open(struct cdev *i_dev, int flags, int mode, struct thread *td) return (ENODEV); d = i_dev->si_drv1; - if (PCM_DETACHING(d) || !PCM_REGISTERED(d)) + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) return (EBADF); priv = malloc(sizeof(*priv), M_DEVBUF, M_WAITOK | M_ZERO); @@ -485,7 +485,7 @@ dsp_io_ops(struct dsp_cdevpriv *priv, struct uio *buf) ("%s(): io train wreck!", __func__)); d = priv->sc; - if (PCM_DETACHING(d) || !DSP_REGISTERED(d)) + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) return (EBADF); PCM_GIANT_ENTER(d); @@ -704,7 +704,7 @@ dsp_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode, return (err); d = priv->sc; - if (PCM_DETACHING(d) || !DSP_REGISTERED(d)) + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) return (EBADF); PCM_GIANT_ENTER(d); @@ -1823,7 +1823,7 @@ dsp_poll(struct cdev *i_dev, int events, struct thread *td) if ((err = devfs_get_cdevpriv((void **)&priv)) != 0) return (err); d = priv->sc; - if (PCM_DETACHING(d) || !DSP_REGISTERED(d)) { + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) { /* XXX many clients don't understand POLLNVAL */ return (events & (POLLHUP | POLLPRI | POLLIN | POLLRDNORM | POLLOUT | POLLWRNORM)); @@ -1905,7 +1905,7 @@ dsp_mmap_single(struct cdev *i_dev, vm_ooffset_t *offset, if ((err = devfs_get_cdevpriv((void **)&priv)) != 0) return (err); d = priv->sc; - if (PCM_DETACHING(d) || !DSP_REGISTERED(d)) + if (!DSP_REGISTERED(d) || PCM_DETACHING(d)) return (EINVAL); PCM_GIANT_ENTER(d); From nobody Sun Oct 27 16:33:10 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2BZ2h2hz5bBb1; Sun, 27 Oct 2024 16: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2BZ1F42z4PCr; Sun, 27 Oct 2024 16: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=1730046790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sZlTP04RjlbeG+Xr9fEnBuGXhFs/W3jTr8znqtR+svk=; b=dYZMwZx7HHMwzLRDq1Jl0n6nLxqf23R7IEL1xMQ5EHT1vJffsuPmjt1YvvsOi2iJLlrZQU TUy/ik4IQK/8pYFte0sgBvni/BNZjs61ia43AEigkgsGw3CswGvXxfhqweFt9jN8XHdHHi D2SWIpsTnghlQV+tMTiPQBGo6P+pgOk1lFLqzFW2zWGDAMipTwBaJ/Na7xZSGONKiN72cu o8BzsX+gWgGKCfSjoY6Q8DaS2/32aLJ1boJEA75DR64jo0o2BqlnRjT6nRnzPWyyF9soy3 /0/MA6eHe6+zIAziIwCunm2OAINGJK6Te6Rx7qK7PpzZBaxCUAZ5K1Ira1t5fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046790; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sZlTP04RjlbeG+Xr9fEnBuGXhFs/W3jTr8znqtR+svk=; b=x2xeHieYU2Z8GIkKGKwDrykIM+Ptg9k2ZJUUe96CYe7+gKhm/az12aKAiW2VdzQQOoLzqd 9ahhsX30UpxrxVhK9WcfzShjHuN4PvQYscpEPl3xwSTUH1D8cIjojsFq2Zd1Um4Q8aKTPk ai7nfFwfb1HBF3XA+zst9UH9I/aWAG0arkdV4fC10gyvh4DD6EFpX4Zx35Gw8R51HxqbNJ AilssQmp2RahiZXIu+ufK5PYYdiNSSoaJUgNTRXYMqBywvdhySltz2bMK/6dMuhoqOmpup ktmmy8GweHxnyA+yOLnGdwFQtjUB5w7SskYkzITw9NgXE4Y59r99X/kJuBXvBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046790; a=rsa-sha256; cv=none; b=eaTPvqxKegf+JgglWV8tzlSFLI0PhRA/jmXTmBfHmebPcqsnX+2GxgVSi0cRA1LSjpdA3g yaxRTU/JvySoFeckWDoLAs7/7WOut8cVCtvbTi6Bf/ZpSOX+hhkbIzHfxsBFEYrGHTRhkr eszB9J/eRfVYA24ECRlqZAWJ9q1XlVJ98zJTt4e31F1LUgJrhP8toRBoaycm2likuocSoh dSwaG93DkdPmJMARwNVjD0lGeLOXhP185uqSNb5t9UFQuaU3sACEA8rffUmp+gXjniM0rw hWmFej5QV/aoCMgtlV2PFSG8alkbkTAEP5FfcBhc6AGX9ZHuvendZ2l3vgeNRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2BZ0rGyz12K9; Sun, 27 Oct 2024 16: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 49RGXATH035366; Sun, 27 Oct 2024 16:33:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGXAfj035363; Sun, 27 Oct 2024 16:33:10 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:10 GMT Message-Id: <202410271633.49RGXAfj035363@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 32a2994b4487 - stable/14 - sound: Use DSP_REGISTERED in dsp_clone() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 32a2994b4487d9de5190982fd88cbc6d57414cdb Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=32a2994b4487d9de5190982fd88cbc6d57414cdb commit 32a2994b4487d9de5190982fd88cbc6d57414cdb Author: Christos Margiolis AuthorDate: 2024-10-24 11:37:10 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:16 +0000 sound: Use DSP_REGISTERED in dsp_clone() DSP_REGISTERED calls PCM_REGISTERED, and already contains all the checks we are doing. No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch, markj Differential Revision: https://reviews.freebsd.org/D47196 (cherry picked from commit bb5e3ac1a7b71480a50fc0c813c916a3d058336c) --- sys/dev/sound/pcm/dsp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 6573dfaabf2f..92bfb4d58b86 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -1967,7 +1967,7 @@ found: * have returned already, meaning it will have set snd_unit to -1, and * thus devclass_get_softc() will return NULL here. */ - if (d != NULL && PCM_REGISTERED(d) && d->dsp_dev != NULL) { + if (DSP_REGISTERED(d)) { *dev = d->dsp_dev; dev_ref(*dev); } From nobody Sun Oct 27 16:33:11 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2Bb5BPQz5bC1P; Sun, 27 Oct 2024 16:33:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2Bb2Hp0z4PbJ; Sun, 27 Oct 2024 16:33:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046791; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zakRV+kbWkTpPmYd1v+VacJb3hIqBBBUHqMbFvB9aEM=; b=GjoRyeMUuDuEDAiU9/KMlBAd0P+kM9BuZ6fkh/3dOLTuMHimxHMTMBGuEEm5d/aCtInVmj 6VKYm+J2iSVh+gDEBoiKBakNQ2XXU+LUqb1ntEvXhfZtEIdLXrPBJbQ5lDUAHvv5utrOyY TRypbSSzJKTk01l/YNWSUr0JNneDKzOM++Tbqzus1LMaLQLKbJ//HvvykKjuPgiYttT5OE yR32zzI/QppaRadBmrXWzrm8BCPz90aOEZLfIyZ9gHzpvRGuGAI7NwcP0GSYyBCJQXcDXp +89XdJcrLJ3Nx0kbe+0ZdtJQVlrDwRbzsS3iJ6BR8EN5mlkR1RosDwe0rKvCaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046791; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zakRV+kbWkTpPmYd1v+VacJb3hIqBBBUHqMbFvB9aEM=; b=b86kDKuhlyruIAVEotUQWv4SERbbTCrbSYGx7IgbJIYQY10v8XWeton3onxnvz09tTk4tR 710ZMMFyLaw12JqgEFGm6l4QJQh/WOQCY29s1/jFt0ybUYefphffZ2UoEXd15vtTOSMp8B HqIXLkGlJkiJSkie74cmvu9kPuIBrQ/EgXSwEvh9oG+esPkCFtfVENT9+gpQs1Ljsgg7/q XifG03czrhOsKiSMMbceNeIMkbk6ZMcSPaCV2Gsf4vZrJFxbZPY6bm1gJ8dOQO0diiKCqW ZvBwUwedQwY2lNVXMRemt7Ip/RqRnhZ1yih3nZ5u2Vl2bW3MnxC1M5f6ohA40w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046791; a=rsa-sha256; cv=none; b=X6ZkEZg/vwJRaiND6ibru18DPRJAR4YMhZpLkUqusoyCItjeuaMnbHckWKgWjWUBm7iWri 8BgFHLTQZsD/vgilvW2fgCd/Jkc7PH1nA629a/3Fs5mVeQWCdTn00bR68lenXiyBF8aguI udMtVHhyv95Ai409eUqwT583eHtR02Wy0UPFW34FBacIEVDmCYIz16MavOkpJ/ku7VmJDH u5nvvRSw4fijefCeqJhfkke2xR/mJVHOse39qZv4knlFyYiGTMC6n4AxTUjkK6NBTvEyjW s+Ob38Vaw1ZY8XGAOLM2xLpMP22GqsNfjjA3jHgMks3I+5XAktruAsZhCpAKUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2Bb1sskz12Xv; Sun, 27 Oct 2024 16:33:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 49RGXB1I035406; Sun, 27 Oct 2024 16:33:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGXBwc035403; Sun, 27 Oct 2024 16:33:11 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:11 GMT Message-Id: <202410271633.49RGXBwc035403@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 26524f063fca - stable/14 - sound: Change PCMDIR_* numbering List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 26524f063fca6d6ab981e08911078f6e59f00f14 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=26524f063fca6d6ab981e08911078f6e59f00f14 commit 26524f063fca6d6ab981e08911078f6e59f00f14 Author: Christos Margiolis AuthorDate: 2024-10-24 11:37:17 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:17 +0000 sound: Change PCMDIR_* numbering Needed by a follow-up patch, so that channels can be sorted properly. This change does not affect the behavior of any subsystem. While here, change to an enum. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch, markj Differential Revision: https://reviews.freebsd.org/D47198 (cherry picked from commit a4111e9dc7225618fa8d2af64d866cf0b0aebd56) --- sys/dev/sound/pcm/channel.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index d146f51120d8..13efbef15d8b 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -335,10 +335,12 @@ extern int chn_latency_profile; extern int report_soft_formats; extern int report_soft_matrix; -#define PCMDIR_PLAY 1 -#define PCMDIR_PLAY_VIRTUAL 2 -#define PCMDIR_REC -1 -#define PCMDIR_REC_VIRTUAL -2 +enum { + PCMDIR_PLAY = 1, + PCMDIR_PLAY_VIRTUAL, + PCMDIR_REC, + PCMDIR_REC_VIRTUAL, +}; #define PCMTRIG_START 1 #define PCMTRIG_EMLDMAWR 2 From nobody Sun Oct 27 16:33:12 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2Bc5Ydfz5bBsV; Sun, 27 Oct 2024 16:33:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2Bc2yxzz4P9q; Sun, 27 Oct 2024 16:33:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6CmRCF/GzF4+J9eDKYU2XJsq+6Vafijum3XmcpdaBkQ=; b=xXe67/l+qMHAK86BdPIjCS8fzaZfOxhwYcIDGN9jnm4nPRiFqUmRicaUn950b8z8AZaf8t nTGrOalxI2hVpN47Dhh4/KMlBoLle3aH5ONy2whsj399zlxjySnB1spdrE5zR3mB66URvl rh9LXlkLpU5NZqXlo00UkLYw4RR68KyA8gLkwR5rTzNfAse9dIjpoeKWdRMg/jLjNhvGCd S8omQuBpo/Y5d2zP9+k4sZnOnOPhy3gClYtwjxpb//0h5Ik6mFww2CbSi9uvFov20F4L4k SHQ4Z46hXpSIqHGpjBYpcB22VIcUyzG3AzZVtQict15FswSwr4FYDByxsEeoqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6CmRCF/GzF4+J9eDKYU2XJsq+6Vafijum3XmcpdaBkQ=; b=ExeBhX4d24xGamK5hf5qlH8PDCcjOiieAhXWaIhFd7lVhU7rhRm0PuUoT5R8RErnNiT+A8 6LEcWx2HhGUCA/TBMRVpSV0yKEjeUFaEc2KzdrhNXmZRN/USh30AwPrsU42+F5KUuOS9eE 0ZUB3ACGcBkgi38oyCck5wf+pNKhDOs7Azakvv/C2qfEQa9QjSkoM4GL+lgB5jBI62DcsS GZ2GtpHsCCg2cdbM+rvvRBm6Va9bGgmMob28L4tkdueSlSt0ZClzNzLb93q0pM7JhiN7ZK MWtq4TV74QA66Ew0gizVdU7FLtWwxMQt2YJtZI5zfH2MHXW/xSVotIDO4k531A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046792; a=rsa-sha256; cv=none; b=C+gQLgQr7UPykkkRTvS4lPvrI7ihDWcr8l9xtbuMnMaiOf8fXMCJW0/QR9mI3nAxTnBdkH 6F70TCATPE8v3w/4eT7fXsq48MTU+XKYlT/l1FK+UKWo3ZRzh+mSM0vWLQt9FCOw5BLzgZ jEmmJSVo2DeA6oHB6ULYoTEvsAu6bu0cxgqcWs9psE4r6nlGzx1PhAbRDmTEaEVYZfNIHl PBGPDGZt4ueoyXkdrx/HdeihtvJAKzFG0EsbKFosKyMumZyzLgjATyrr8LBfch7nz5W3rA q8TA22p5BziP+fVeoOZ9tORLlWdNgCP7sJs904WitV39i+nUHDgsx4ac1zAbVA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2Bc2Zkmz12Xw; Sun, 27 Oct 2024 16:33: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 49RGXCMF035459; Sun, 27 Oct 2024 16:33:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGXCcu035456; Sun, 27 Oct 2024 16:33:12 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:12 GMT Message-Id: <202410271633.49RGXCcu035456@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: f3449b1a2115 - stable/14 - sound: Untangle dsp_cdevs[] and dsp_unit2name() confusion List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f3449b1a2115ed0f680568b8e0d647b8595f5a92 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=f3449b1a2115ed0f680568b8e0d647b8595f5a92 commit f3449b1a2115ed0f680568b8e0d647b8595f5a92 Author: Christos Margiolis AuthorDate: 2024-10-24 11:37:23 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:23 +0000 sound: Untangle dsp_cdevs[] and dsp_unit2name() confusion Before de8c0d15a64fa ("sound: Get rid of snd_clone and use DEVFS_CDEVPRIV(9)"), sound(4) would create one device for each allocated channel. The device names would be chosen from dsp_cdevs[], and created with dsp_unit2name(). Additionally, dsp_cdevs[] was also used to match these devices names, as well as OSSv4 aliases in dsp_clone(). Since sound(4) does not create separate devices for each channel anymore, the meaning and use dsp_cdevs[] has changed. Part of it no longer corresponds to devices at all, but instead is used to create channel names, and another part is used to match only OSSv4 aliases in dsp_clone(). To address this confusion, separate dsp_cdevs[] into a dsp_aliases[] array, and move dsp_unit2name() to pcm/channel.c and rename it to chn_mkname(). While here, get rid of the SND_DEV_DSPHW_* channel types, and simply use the existing PCMDIR_* constants as the channel types. There is no need to duplicate the same meaning twice. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D47199 (cherry picked from commit 802c78f5194e4524faa30ea57adbf00f28fc72c6) (cherry picked from commit b1bb6934bb8774dd96be76d88e6824e49b613549) --- sys/dev/sound/pcm/channel.c | 70 +++++++---- sys/dev/sound/pcm/channel.h | 1 + sys/dev/sound/pcm/dsp.c | 290 +++++++++++++++++++------------------------- sys/dev/sound/pcm/dsp.h | 1 - sys/dev/sound/pcm/sound.h | 4 - sys/dev/sound/pcm/vchan.c | 11 +- 6 files changed, 175 insertions(+), 202 deletions(-) diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index 6b8f00f9aa83..7bcd841d541f 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -1161,13 +1161,13 @@ static struct unrhdr * chn_getunr(struct snddev_info *d, int type) { switch (type) { - case SND_DEV_DSPHW_PLAY: + case PCMDIR_PLAY: return (d->p_unr); - case SND_DEV_DSPHW_VPLAY: + case PCMDIR_PLAY_VIRTUAL: return (d->vp_unr); - case SND_DEV_DSPHW_REC: + case PCMDIR_REC: return (d->r_unr); - case SND_DEV_DSPHW_VREC: + case PCMDIR_REC_VIRTUAL: return (d->vr_unr); default: __assert_unreachable(); @@ -1175,6 +1175,37 @@ chn_getunr(struct snddev_info *d, int type) } +char * +chn_mkname(char *buf, size_t len, struct pcm_channel *c) +{ + const char *str; + + KASSERT(buf != NULL && len != 0, + ("%s(): bogus buf=%p len=%zu", __func__, buf, len)); + + switch (c->type) { + case PCMDIR_PLAY: + str = "play"; + break; + case PCMDIR_PLAY_VIRTUAL: + str = "virtual_play"; + break; + case PCMDIR_REC: + str = "record"; + break; + case PCMDIR_REC_VIRTUAL: + str = "virtual_record"; + break; + default: + __assert_unreachable(); + } + + snprintf(buf, len, "dsp%d.%s.%d", + device_get_unit(c->dev), str, c->unit); + + return (buf); +} + struct pcm_channel * chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, int dir, void *devinfo) @@ -1183,27 +1214,19 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, struct feeder_class *fc; struct snd_dbuf *b, *bs; char buf[CHN_NAMELEN]; - int i, direction, type; + int i, direction; PCM_BUSYASSERT(d); PCM_LOCKASSERT(d); switch (dir) { case PCMDIR_PLAY: - direction = PCMDIR_PLAY; - type = SND_DEV_DSPHW_PLAY; - break; case PCMDIR_PLAY_VIRTUAL: direction = PCMDIR_PLAY; - type = SND_DEV_DSPHW_VPLAY; break; case PCMDIR_REC: - direction = PCMDIR_REC; - type = SND_DEV_DSPHW_REC; - break; case PCMDIR_REC_VIRTUAL: direction = PCMDIR_REC; - type = SND_DEV_DSPHW_VREC; break; default: device_printf(d->dev, @@ -1222,7 +1245,7 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, CHN_INIT(c, children); CHN_INIT(c, children.busy); c->direction = direction; - c->type = type; + c->type = dir; c->unit = alloc_unr(chn_getunr(d, c->type)); c->format = SND_FORMAT(AFMT_U8, 1, 0); c->speed = DSP_DEFAULT_SPEED; @@ -1234,8 +1257,7 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, c->parentchannel = parent; c->dev = d->dev; c->trigger = PCMTRIG_STOP; - - strlcpy(c->name, dsp_unit2name(buf, sizeof(buf), c), sizeof(c->name)); + strlcpy(c->name, chn_mkname(buf, sizeof(buf), c), sizeof(c->name)); c->matrix = *feeder_matrix_id_map(SND_CHN_MATRIX_1_0); c->matrix.id = SND_CHN_MATRIX_PCMCHANNEL; @@ -1303,16 +1325,16 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, CHN_INSERT_SORT_ASCEND(d, c, channels.pcm); switch (c->type) { - case SND_DEV_DSPHW_PLAY: + case PCMDIR_PLAY: d->playcount++; break; - case SND_DEV_DSPHW_VPLAY: + case PCMDIR_PLAY_VIRTUAL: d->pvchancount++; break; - case SND_DEV_DSPHW_REC: + case PCMDIR_REC: d->reccount++; break; - case SND_DEV_DSPHW_VREC: + case PCMDIR_REC_VIRTUAL: d->rvchancount++; break; default: @@ -1354,16 +1376,16 @@ chn_kill(struct pcm_channel *c) CHN_REMOVE(d, c, channels.pcm); switch (c->type) { - case SND_DEV_DSPHW_PLAY: + case PCMDIR_PLAY: d->playcount--; break; - case SND_DEV_DSPHW_VPLAY: + case PCMDIR_PLAY_VIRTUAL: d->pvchancount--; break; - case SND_DEV_DSPHW_REC: + case PCMDIR_REC: d->reccount--; break; - case SND_DEV_DSPHW_VREC: + case PCMDIR_REC_VIRTUAL: d->rvchancount--; break; default: diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index 13efbef15d8b..6c6692fa8bc2 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -260,6 +260,7 @@ int chn_sync(struct pcm_channel *c, int threshold); int chn_flush(struct pcm_channel *c); int chn_poll(struct pcm_channel *c, int ev, struct thread *td); +char *chn_mkname(char *buf, size_t len, struct pcm_channel *c); struct pcm_channel *chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, int dir, void *devinfo); void chn_kill(struct pcm_channel *c); diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 92bfb4d58b86..7d80a82d31c8 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -164,25 +164,6 @@ dsp_unlock_chans(struct dsp_cdevpriv *priv, uint32_t prio) #define DSP_F_READ(x) ((x) & FREAD) #define DSP_F_WRITE(x) ((x) & FWRITE) -static const struct { - int type; - char *name; - char *sep; - char *alias; -} dsp_cdevs[] = { - { SND_DEV_DSP, "dsp", ".", NULL }, - { SND_DEV_DSPHW_PLAY, "dsp", ".play.", NULL }, - { SND_DEV_DSPHW_VPLAY, "dsp", ".virtual_play.", NULL }, - { SND_DEV_DSPHW_REC, "dsp", ".record.", NULL }, - { SND_DEV_DSPHW_VREC, "dsp", ".virtual_record.", NULL }, - /* Low priority, OSSv4 aliases. */ - { SND_DEV_DSP, "dsp_ac3", ".", "dsp" }, - { SND_DEV_DSP, "dsp_mmap", ".", "dsp" }, - { SND_DEV_DSP, "dsp_multich", ".", "dsp" }, - { SND_DEV_DSP, "dsp_spdifout", ".", "dsp" }, - { SND_DEV_DSP, "dsp_spdifin", ".", "dsp" }, -}; - static void dsp_close(void *data) { @@ -1941,6 +1922,14 @@ dsp_mmap_single(struct cdev *i_dev, vm_ooffset_t *offset, return (0); } +static const char *dsp_aliases[] = { + "dsp_ac3", + "dsp_mmap", + "dsp_multich", + "dsp_spdifout", + "dsp_spdifin", +}; + static void dsp_clone(void *arg, struct ucred *cred, char *name, int namelen, struct cdev **dev) @@ -1952,9 +1941,8 @@ dsp_clone(void *arg, struct ucred *cred, char *name, int namelen, return; if (strcmp(name, "dsp") == 0 && dsp_basename_clone) goto found; - for (i = 0; i < nitems(dsp_cdevs); i++) { - if (dsp_cdevs[i].alias != NULL && - strcmp(name, dsp_cdevs[i].name) == 0) + for (i = 0; i < nitems(dsp_aliases); i++) { + if (strcmp(name, dsp_aliases[i]) == 0) goto found; } return; @@ -1994,26 +1982,6 @@ dsp_sysuninit(void *p) SYSINIT(dsp_sysinit, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, dsp_sysinit, NULL); SYSUNINIT(dsp_sysuninit, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, dsp_sysuninit, NULL); -char * -dsp_unit2name(char *buf, size_t len, struct pcm_channel *ch) -{ - size_t i; - - KASSERT(buf != NULL && len != 0, - ("bogus buf=%p len=%ju", buf, (uintmax_t)len)); - - for (i = 0; i < nitems(dsp_cdevs); i++) { - if (ch->type != dsp_cdevs[i].type || dsp_cdevs[i].alias != NULL) - continue; - snprintf(buf, len, "%s%d%s%d", - dsp_cdevs[i].name, device_get_unit(ch->dev), - dsp_cdevs[i].sep, ch->unit); - return (buf); - } - - return (NULL); -} - static void dsp_oss_audioinfo_unavail(oss_audioinfo *ai, int unit) { @@ -2233,7 +2201,6 @@ dsp_oss_engineinfo(struct cdev *i_dev, oss_audioinfo *ai) struct snddev_info *d; uint32_t fmts; int i, nchan, *rates, minch, maxch, unit; - char *devname, buf[CHN_NAMELEN]; /* * If probing the device that received the ioctl, make sure it's a @@ -2244,9 +2211,7 @@ dsp_oss_engineinfo(struct cdev *i_dev, oss_audioinfo *ai) return (EINVAL); ch = NULL; - devname = NULL; nchan = 0; - bzero(buf, sizeof(buf)); /* * Search for the requested audio device (channel). Start by @@ -2267,147 +2232,142 @@ dsp_oss_engineinfo(struct cdev *i_dev, oss_audioinfo *ai) CHN_FOREACH(ch, d, channels.pcm) { CHN_UNLOCKASSERT(ch); CHN_LOCK(ch); - if (ai->dev == -1) { - if (devfs_foreach_cdevpriv(i_dev, - dsp_oss_engineinfo_cb, ch) != 0) { - devname = dsp_unit2name(buf, - sizeof(buf), ch); - } - } else if (ai->dev == nchan) - devname = dsp_unit2name(buf, sizeof(buf), ch); - if (devname != NULL) + if ((ai->dev == -1 && devfs_foreach_cdevpriv( + i_dev, dsp_oss_engineinfo_cb, ch) != 0) || + ai->dev == nchan) break; CHN_UNLOCK(ch); ++nchan; } - if (devname != NULL) { - /* - * At this point, the following synchronization stuff - * has happened: - * - a specific PCM device is locked. - * - a specific audio channel has been locked, so be - * sure to unlock when exiting; - */ + if (ch == NULL) { + PCM_UNLOCK(d); + continue; + } - caps = chn_getcaps(ch); + /* + * At this point, the following synchronization stuff + * has happened: + * - a specific PCM device is locked. + * - a specific audio channel has been locked, so be + * sure to unlock when exiting; + */ - /* - * With all handles collected, zero out the user's - * container and begin filling in its fields. - */ - bzero((void *)ai, sizeof(oss_audioinfo)); + caps = chn_getcaps(ch); - ai->dev = nchan; - strlcpy(ai->name, ch->name, sizeof(ai->name)); + /* + * With all handles collected, zero out the user's + * container and begin filling in its fields. + */ + bzero((void *)ai, sizeof(oss_audioinfo)); - if ((ch->flags & CHN_F_BUSY) == 0) - ai->busy = 0; - else - ai->busy = (ch->direction == PCMDIR_PLAY) ? OPEN_WRITE : OPEN_READ; + ai->dev = nchan; + strlcpy(ai->name, ch->name, sizeof(ai->name)); - ai->pid = ch->pid; - strlcpy(ai->cmd, ch->comm, sizeof(ai->cmd)); + if ((ch->flags & CHN_F_BUSY) == 0) + ai->busy = 0; + else + ai->busy = (ch->direction == PCMDIR_PLAY) ? OPEN_WRITE : OPEN_READ; - /* - * These flags stolen from SNDCTL_DSP_GETCAPS handler. - * Note, however, that a single channel operates in - * only one direction, so PCM_CAP_DUPLEX is out. - */ - /** - * @todo @c SNDCTL_AUDIOINFO::caps - Make drivers keep - * these in pcmchan::caps? - */ - ai->caps = PCM_CAP_REALTIME | PCM_CAP_MMAP | PCM_CAP_TRIGGER | - ((ch->flags & CHN_F_VIRTUAL) ? PCM_CAP_VIRTUAL : 0) | - ((ch->direction == PCMDIR_PLAY) ? PCM_CAP_OUTPUT : PCM_CAP_INPUT); + ai->pid = ch->pid; + strlcpy(ai->cmd, ch->comm, sizeof(ai->cmd)); - /* - * Collect formats supported @b natively by the - * device. Also determine min/max channels. - */ - minch = INT_MAX; - maxch = 0; - fmts = 0; - for (i = 0; caps->fmtlist[i]; i++) { - fmts |= AFMT_ENCODING(caps->fmtlist[i]); - minch = min(AFMT_CHANNEL(caps->fmtlist[i]), minch); - maxch = max(AFMT_CHANNEL(caps->fmtlist[i]), maxch); - } + /* + * These flags stolen from SNDCTL_DSP_GETCAPS handler. + * Note, however, that a single channel operates in + * only one direction, so PCM_CAP_DUPLEX is out. + */ + /** + * @todo @c SNDCTL_AUDIOINFO::caps - Make drivers keep + * these in pcmchan::caps? + */ + ai->caps = PCM_CAP_REALTIME | PCM_CAP_MMAP | PCM_CAP_TRIGGER | + ((ch->flags & CHN_F_VIRTUAL) ? PCM_CAP_VIRTUAL : 0) | + ((ch->direction == PCMDIR_PLAY) ? PCM_CAP_OUTPUT : PCM_CAP_INPUT); - if (ch->direction == PCMDIR_PLAY) - ai->oformats = fmts; - else - ai->iformats = fmts; - - /** - * @note - * @c magic - OSSv4 docs: "Reserved for internal use - * by OSS." - * - * @par - * @c card_number - OSSv4 docs: "Number of the sound - * card where this device belongs or -1 if this - * information is not available. Applications - * should normally not use this field for any - * purpose." - */ - ai->card_number = unit; - /** - * @todo @c song_name - depends first on - * SNDCTL_[GS]ETSONG @todo @c label - depends - * on SNDCTL_[GS]ETLABEL - * @todo @c port_number - routing information? - */ - ai->port_number = unit; - ai->mixer_dev = (d->mixer_dev != NULL) ? unit : -1; - /** - * @note - * @c legacy_device - OSSv4 docs: "Obsolete." - */ - ai->legacy_device = unit; - snprintf(ai->devnode, sizeof(ai->devnode), "/dev/dsp%d", unit); - ai->enabled = device_is_attached(d->dev) ? 1 : 0; - /** - * @note - * @c flags - OSSv4 docs: "Reserved for future use." - * - * @note - * @c binding - OSSv4 docs: "Reserved for future use." - * - * @todo @c handle - haven't decided how to generate - * this yet; bus, vendor, device IDs? - */ + /* + * Collect formats supported @b natively by the + * device. Also determine min/max channels. + */ + minch = INT_MAX; + maxch = 0; + fmts = 0; + for (i = 0; caps->fmtlist[i]; i++) { + fmts |= AFMT_ENCODING(caps->fmtlist[i]); + minch = min(AFMT_CHANNEL(caps->fmtlist[i]), minch); + maxch = max(AFMT_CHANNEL(caps->fmtlist[i]), maxch); + } - if ((ch->flags & CHN_F_EXCLUSIVE) || - (pcm_getflags(d->dev) & SD_F_BITPERFECT)) { - ai->min_rate = caps->minspeed; - ai->max_rate = caps->maxspeed; - } else { - ai->min_rate = feeder_rate_min; - ai->max_rate = feeder_rate_max; - } + if (ch->direction == PCMDIR_PLAY) + ai->oformats = fmts; + else + ai->iformats = fmts; + + /** + * @note + * @c magic - OSSv4 docs: "Reserved for internal use + * by OSS." + * + * @par + * @c card_number - OSSv4 docs: "Number of the sound + * card where this device belongs or -1 if this + * information is not available. Applications + * should normally not use this field for any + * purpose." + */ + ai->card_number = unit; + /** + * @todo @c song_name - depends first on + * SNDCTL_[GS]ETSONG @todo @c label - depends + * on SNDCTL_[GS]ETLABEL + * @todo @c port_number - routing information? + */ + ai->port_number = unit; + ai->mixer_dev = (d->mixer_dev != NULL) ? unit : -1; + /** + * @note + * @c legacy_device - OSSv4 docs: "Obsolete." + */ + ai->legacy_device = unit; + snprintf(ai->devnode, sizeof(ai->devnode), "/dev/dsp%d", unit); + ai->enabled = device_is_attached(d->dev) ? 1 : 0; + /** + * @note + * @c flags - OSSv4 docs: "Reserved for future use." + * + * @note + * @c binding - OSSv4 docs: "Reserved for future use." + * + * @todo @c handle - haven't decided how to generate + * this yet; bus, vendor, device IDs? + */ - ai->min_channels = minch; - ai->max_channels = maxch; + if ((ch->flags & CHN_F_EXCLUSIVE) || + (pcm_getflags(d->dev) & SD_F_BITPERFECT)) { + ai->min_rate = caps->minspeed; + ai->max_rate = caps->maxspeed; + } else { + ai->min_rate = feeder_rate_min; + ai->max_rate = feeder_rate_max; + } - ai->nrates = chn_getrates(ch, &rates); - if (ai->nrates > OSS_MAX_SAMPLE_RATES) - ai->nrates = OSS_MAX_SAMPLE_RATES; + ai->min_channels = minch; + ai->max_channels = maxch; - for (i = 0; i < ai->nrates; i++) - ai->rates[i] = rates[i]; - - ai->next_play_engine = 0; - ai->next_rec_engine = 0; + ai->nrates = chn_getrates(ch, &rates); + if (ai->nrates > OSS_MAX_SAMPLE_RATES) + ai->nrates = OSS_MAX_SAMPLE_RATES; - CHN_UNLOCK(ch); - } + for (i = 0; i < ai->nrates; i++) + ai->rates[i] = rates[i]; + + ai->next_play_engine = 0; + ai->next_rec_engine = 0; + CHN_UNLOCK(ch); PCM_UNLOCK(d); - if (devname != NULL) - return (0); + return (0); } /* Exhausted the search -- nothing is locked, so return. */ diff --git a/sys/dev/sound/pcm/dsp.h b/sys/dev/sound/pcm/dsp.h index 7559e855d4e1..1eab42ca91c8 100644 --- a/sys/dev/sound/pcm/dsp.h +++ b/sys/dev/sound/pcm/dsp.h @@ -35,7 +35,6 @@ extern struct cdevsw dsp_cdevsw; int dsp_make_dev(device_t); void dsp_destroy_dev(device_t); -char *dsp_unit2name(char *, size_t, struct pcm_channel *); int dsp_oss_audioinfo(struct cdev *, oss_audioinfo *, bool); int dsp_oss_engineinfo(struct cdev *, oss_audioinfo *); diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index f96638081cb9..126b3411b035 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -225,10 +225,6 @@ enum { SND_DEV_MIDIN, /* Raw midi access */ SND_DEV_DSP, /* Digitized voice /dev/dsp */ SND_DEV_STATUS, /* /dev/sndstat */ - SND_DEV_DSPHW_PLAY, /* specific playback channel */ - SND_DEV_DSPHW_VPLAY, /* specific virtual playback channel */ - SND_DEV_DSPHW_REC, /* specific record channel */ - SND_DEV_DSPHW_VREC, /* specific virtual record channel */ }; #define DSP_DEFAULT_SPEED 8000 diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index 4da6f83dc0a2..c9db9d79847b 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -886,14 +886,9 @@ vchan_sync(struct pcm_channel *c) c->flags |= CHN_F_DIRTY; #ifdef SND_DEBUG - if (snd_passthrough_verbose != 0) { - char *devname, buf[CHN_NAMELEN]; - - devname = dsp_unit2name(buf, sizeof(buf), c); - device_printf(c->dev, - "%s(%s/%s) %s() -> re-sync err=%d\n", - __func__, (devname != NULL) ? devname : "dspX", c->comm, - caller, ret); + if (snd_passthrough_verbose) { + device_printf(c->dev, "%s(%s/%s) %s() -> re-sync err=%d\n", + __func__, c->name, c->comm, caller, ret); } #endif From nobody Sun Oct 27 16:33:13 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2Bd65DNz5bBSH; Sun, 27 Oct 2024 16:33:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2Bd3w9cz4PgB; Sun, 27 Oct 2024 16:33:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dLqrpQE/wtTsFHEEdgl1cVqUU/XXIVZl4Wt8tWtnG3k=; b=qa7F2JT77Nfcp5zvYGISrQmgrPXOyxvmhRvT0qBa7xNh9PvDxSl26bjYIsjN9P4Kt1N2Tp SkAeTtFhVuccN+3ISXWL9Rh7nS2TA7Hshg3tpM0qzmbfR4Zx/T5PcffSYIPNu1OfW0N9K3 TbHspS1kqxepelW3lxeRb2bmelLKZ49B42wgtpeBWlyHVWEP1kYDyhy//b3WAUBFUYjJ83 3TxR+h1ra5/1gZljY5u1Miii2klgObqrAhuztQKknTDnWPlMJiH2nhW8a88jAxIwSJMEZQ jInxpnbKpmXEoAg7hD2Awi4Pe25xydLxGIuF/kzHUvN27kRugcpH0XMRne9uOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dLqrpQE/wtTsFHEEdgl1cVqUU/XXIVZl4Wt8tWtnG3k=; b=K1Gafbe99LiV+4RWe+X5AEnTwZuym3EzkRDsIzC7RUYqLtbSKTQDlSfUo1pQjrF9DbC+MV qTVFoX4aDNzT5eqbRI4LWjv0qQss5V8q5c4fR4mrXJ6bjY+YTaL3StlaFS8q22VZ0ZywGB 6pGLN8klslvcV1OK++jNTzmhHe++FKQSYteTgFn9TvT1n5BnMnYGJ4YhobtLBBssmwtudS n0YVPbdDZGeoHOD/LCGQKYWf8pvf+qcEpWKT4bXaFv4jc3ppl8y4xsb2c3lk4bo0fP8d0i zrbdD+p3p0kND76SkKKRT1SrXj0pxM31h+xYTnQr2o9h3Hhum3cNJM3RKc1LiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046793; a=rsa-sha256; cv=none; b=pIJBeWgMg01/7CCOmqVp6ZDyX4d40F776gAT5zzS/s9NG3ey1W1+juHbA0BBMsRqccjhGm 5p0RkuC+6ErC3xeAUyCu4XpLJZTbI04p8DhqENJrD4vEcheA9uRvnBfBdcDK7ElIPx+6H1 005sodYGLvky63LUbCnaK+zb2F83XV9/WyJ1KOrasb/DDaZzK7aRpnprZ8ega3+6W7mEy+ 1Ym1AqfkWC1tqZDgLaD6EM8wx/bm4p0vd+osfjncDiv2W0ERCEBSA2r7tyATANkFqFOsFu j0xDHHRTplFhCq2HCP3cCwAzLwMgOOuA0G9gPe9zOJaT78y4Eh8+VzxhGOYFiw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2Bd3XY7z12kJ; Sun, 27 Oct 2024 16:33: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 49RGXDvx035516; Sun, 27 Oct 2024 16:33:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGXDrr035513; Sun, 27 Oct 2024 16:33:13 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:13 GMT Message-Id: <202410271633.49RGXDrr035513@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: bf3a355a874a - stable/14 - sound: Remove redundant refcount checks in vchan_setnew() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bf3a355a874abfcf7ab77bff84bc355ef79ef0a6 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=bf3a355a874abfcf7ab77bff84bc355ef79ef0a6 commit bf3a355a874abfcf7ab77bff84bc355ef79ef0a6 Author: Christos Margiolis AuthorDate: 2024-10-25 11:36:51 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:30 +0000 sound: Remove redundant refcount checks in vchan_setnew() When adding a new vchan, we are looking for a parent channel which either already has vchans (i.e CHN_F_HAS_VCHAN), or does not, but is also not being used (i.e !CHN_F_BUSY). Since CHN_F_BUSY essentially tells us if the channel is currently being used or not, there is no need to check if the channel's refcount is 0 as well. When removing a vchan, we first check if we have only 1 vchan allocated that is also being used (so we cannot remove it at the moment), and then we check if the vchan is not busy and remove it. Again, checking CHN_F_BUSY is enough. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D47268 (cherry picked from commit 43c0b593c2c3b2c07009c031a0e7e8190a45b31a) --- sys/dev/sound/pcm/vchan.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index c9db9d79847b..ed13a3c55961 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -928,7 +928,6 @@ vchan_setnew(struct snddev_info *d, int direction, int newcnt) CHN_LOCK(c); if (c->direction == direction && ((c->flags & CHN_F_HAS_VCHAN) || (vcnt == 0 && - c->refcount < 1 && !(c->flags & (CHN_F_BUSY | CHN_F_VIRTUAL))))) { /* * Reuse hw channel with vchans already @@ -987,12 +986,11 @@ vchan_setnew(struct snddev_info *d, int direction, int newcnt) } CHN_FOREACH_SAFE(ch, c, nch, children) { CHN_LOCK(ch); - if (vcnt == 1 && c->refcount > 0) { + if (vcnt == 1 && ch->flags & CHN_F_BUSY) { CHN_UNLOCK(ch); break; } - if (!(ch->flags & CHN_F_BUSY) && - ch->refcount < 1) { + if (!(ch->flags & CHN_F_BUSY)) { err = vchan_destroy(ch); if (err == 0) vcnt--; From nobody Sun Oct 27 16:33:14 2024 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Xc2Bf5xxZz5bBsX; Sun, 27 Oct 2024 16:33:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xc2Bf4c1sz4PPk; Sun, 27 Oct 2024 16:33:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3fdS7wGyZHhNCWMUjx2RMsZGddYQUiwVEei2JlZ5lMQ=; b=W7jfEDwYF+8pqCj6EZggZROuAUuSm9ARDaO89B/rTbD4miTin2h7Deea9WBl40BlfvY3Kj XvWgW4Qq5GjSWCwPIs2YarldzAi2Ua0bjWibk2Gg2nL4fgMK5MTSjgcbUur2Qv8m3ajwZq PA8quZOdhJKEBUFeld2D4gp+FBV4S3cEktwCQ5Ayef2sX+Hku/lcCuXdvduhU+0ykYan5j WolrkgkK1rcf4TWCQcDeW1+0gHxQV9hW1QtfW71VJYIc9ZBO+7bRJ2F+7AR5MSOylf3f4o FFsewdGn1UzkCY2roqxHTbtM323DL25nlRAxxQMNbuW9Fs39Xsc5JZtyb37aGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730046794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3fdS7wGyZHhNCWMUjx2RMsZGddYQUiwVEei2JlZ5lMQ=; b=E4CyjxEEoTELRZhizrR/dB+PfSrJzUsyWM5IVIIwbqUUOMCs3Stgaw57K1U5AGuGpiMwWU kamDxhYZsMsHCq9cnnBG+zCbRKaK7pBgx7AxCWyDlo9mIDfKNXI4Zj2+A0/G6L6UWSOESL b+V6gNaQhl8eIGggIAMk+uhfhBjxj+3HnHn9uFUXZEjS/OP0Eju3Gvvkz2vv7MGAGVz+cV dY2duc3gv+tgZUz62ajMk0sDxid0h49tnf/B7sf4cC2nh0xfoxA8DyX05GoKynlEiOAroO Xbs294dv+O930xBdtfLhkJjwiO+8G4cTSnREXuNk52g3vBpR38FRoTPAa7eLpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730046794; a=rsa-sha256; cv=none; b=bZWUM36UYpvTJaUAdzpS3KVBKpHwaGv3S+2r0mP2J8JOVf2xoSWabUNH1UwVuL+0LaRhTJ a/FKLuMUfQNtWMhIEtnMSL0vzhCZ7YnLMIfWsC1GrQsmqtDCOuubhjUh3JcK0NaHAihWPa FkQEB2z6DsXWBLmYohuPjxSGWp+cxxNJ7xloC+Tp1oIfkb3j3HrQH9x4Ckp+9sK7lYM6om mXFYyO6HUYetGRG38v/TOvR7gZ0KF4iCyVR7fDKiWLKA4sv7dqHe+wltNfCV436iqHi396 OnRgHnndhjSKfeH8WTejCniZ0soNiIWTN8Gxjy7YHZZQpLEMFOGcS4u0PtZO8w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xc2Bf4Cc6z12KB; Sun, 27 Oct 2024 16:33: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 49RGXEBl035567; Sun, 27 Oct 2024 16:33:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 49RGXEwX035564; Sun, 27 Oct 2024 16:33:14 GMT (envelope-from git) Date: Sun, 27 Oct 2024 16:33:14 GMT Message-Id: <202410271633.49RGXEwX035564@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 6bfac3b2a335 - stable/14 - sound: Retire channel refcount List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6bfac3b2a335c4fb133f670e7b484ea13072882c Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=6bfac3b2a335c4fb133f670e7b484ea13072882c commit 6bfac3b2a335c4fb133f670e7b484ea13072882c Author: Christos Margiolis AuthorDate: 2024-10-25 11:36:59 +0000 Commit: Christos Margiolis CommitDate: 2024-10-27 16:32:30 +0000 sound: Retire channel refcount No longer used. Sponsored by: The FreeBSD Foundation MFC after: 2 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D47269 (cherry picked from commit 9a6cf27583ffc13bb0a7c5be0704ba0d2f3b834d) --- sys/dev/sound/pcm/channel.c | 13 ------------- sys/dev/sound/pcm/channel.h | 2 -- sys/dev/sound/pcm/dsp.c | 29 ++++------------------------- 3 files changed, 4 insertions(+), 40 deletions(-) diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index 7bcd841d541f..eb70e910f51d 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -1435,19 +1435,6 @@ chn_release(struct pcm_channel *c) return (0); } -int -chn_ref(struct pcm_channel *c, int ref) -{ - PCM_BUSYASSERT(c->parentsnddev); - CHN_LOCKASSERT(c); - KASSERT((c->refcount + ref) >= 0, - ("%s(): new refcount will be negative", __func__)); - - c->refcount += ref; - - return (c->refcount); -} - int chn_setvolume_multi(struct pcm_channel *c, int vc, int left, int right, int center) diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index 6c6692fa8bc2..0788fbe42a5a 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -84,7 +84,6 @@ struct pcm_channel { kobj_t methods; pid_t pid; - int refcount; struct pcm_feeder *feeder; u_int32_t align; @@ -266,7 +265,6 @@ struct pcm_channel *chn_init(struct snddev_info *d, struct pcm_channel *parent, void chn_kill(struct pcm_channel *c); void chn_shutdown(struct pcm_channel *c); int chn_release(struct pcm_channel *c); -int chn_ref(struct pcm_channel *c, int ref); int chn_reset(struct pcm_channel *c, u_int32_t fmt, u_int32_t spd); int chn_setvolume_multi(struct pcm_channel *c, int vc, int left, int right, int center); diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 7d80a82d31c8..6a59bcfc1ade 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -168,9 +168,9 @@ static void dsp_close(void *data) { struct dsp_cdevpriv *priv = data; - struct pcm_channel *rdch, *wrch, *volch; + struct pcm_channel *rdch, *wrch; struct snddev_info *d; - int sg_ids, rdref, wdref; + int sg_ids; if (priv == NULL) return; @@ -188,22 +188,6 @@ dsp_close(void *data) rdch = priv->rdch; wrch = priv->wrch; - volch = priv->volch; - - rdref = -1; - wdref = -1; - - if (volch != NULL) { - if (volch == rdch) - rdref--; - else if (volch == wrch) - wdref--; - else { - CHN_LOCK(volch); - chn_ref(volch, -1); - CHN_UNLOCK(volch); - } - } if (rdch != NULL) CHN_REMOVE(d, rdch, channels.pcm.opened); @@ -231,7 +215,6 @@ dsp_close(void *data) free_unr(pcmsg_unrhdr, sg_ids); CHN_LOCK(rdch); - chn_ref(rdch, rdref); chn_abort(rdch); /* won't sleep */ rdch->flags &= ~(CHN_F_RUNNING | CHN_F_MMAP | CHN_F_DEAD | CHN_F_EXCLUSIVE); @@ -249,7 +232,6 @@ dsp_close(void *data) free_unr(pcmsg_unrhdr, sg_ids); CHN_LOCK(wrch); - chn_ref(wrch, wdref); chn_flush(wrch); /* may sleep */ wrch->flags &= ~(CHN_F_RUNNING | CHN_F_MMAP | CHN_F_DEAD | CHN_F_EXCLUSIVE); @@ -382,7 +364,6 @@ dsp_open(struct cdev *i_dev, int flags, int mode, struct thread *td) rdch->flags |= CHN_F_NBIO; if (flags & O_EXCL) rdch->flags |= CHN_F_EXCLUSIVE; - chn_ref(rdch, 1); chn_vpc_reset(rdch, SND_VOL_C_PCM, 0); CHN_UNLOCK(rdch); } @@ -402,11 +383,10 @@ dsp_open(struct cdev *i_dev, int flags, int mode, struct thread *td) if (!DSP_F_DUPLEX(flags)) { if (rdch != NULL) { /* - * Lock, deref and release previously - * created record channel + * Lock, and release previously created + * record channel */ CHN_LOCK(rdch); - chn_ref(rdch, -1); chn_release(rdch); } PCM_RELEASE_QUICK(d); @@ -419,7 +399,6 @@ dsp_open(struct cdev *i_dev, int flags, int mode, struct thread *td) wrch->flags |= CHN_F_NBIO; if (flags & O_EXCL) wrch->flags |= CHN_F_EXCLUSIVE; - chn_ref(wrch, 1); chn_vpc_reset(wrch, SND_VOL_C_PCM, 0); CHN_UNLOCK(wrch); }