From nobody Mon Sep 23 04:51: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 4XBrDG69zYz5WYY3; Mon, 23 Sep 2024 04:51: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 4XBrDG4lnpz4hRT; Mon, 23 Sep 2024 04:51:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067070; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GxKE9qbVld103G0ymvtYXgNxnHPrx1cbDYi2mXYD57I=; b=iPnOODKgieHHSb8e7+mMy7H1UvPjDYhYiPuVzdavckbicsB1QKIoNtAqrkKksmBeBb6HrY gbavmyhDzrghfajKxX0luuAcSzhHEK/YmtvuqIRm3fV33aDZXkblWd9yq1nAkHBupp6ipC iWtLcbO0uS4X1UDYWyqsvevSU+c8Gei6mA2Na0/Uoxl6d84NGDFMJpxC3IaOqoB7lGHfEF DVZ7ekqEyTzAShBiKLgJK6pWjzebeQp90kqmZbkeaej0lmFISLCGDJ9MUdF6Ss4j7x6wSN u4iFA64FlDUoeCmbyyOomQhPjLeY7Ec58J+LL7pSW3Z7bYz89WBBlCBjC06nHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727067070; a=rsa-sha256; cv=none; b=uEa0UypUEIyjIYftDzYrmOjtaroWAC0r7Nnpfz4zvR1lzdN000Dl93jmIYUyrxWqh5Jsii MbQ47TO2DbiVjNVmXRE/YueqIYaxQeQNE+TZi9ogAP95x4gyq8imm9zBjH6NiiZQ//dTFX 2oROqaVEJaiJEKvdRfuYDqqgmxQU95nBEWfKR6U65nX9qPFbzUbXk/cIHGM5rjtRItOpe6 trEu/SW+GWywYNdUcnQOHwdkeHHUIadABqc1tCmJ49gEYkk1NZ3EG39z4taA+bfBEn7pM3 h5ybyJpPJSefy2RYTleDt/UyAWNTNjUM7nMa6L2ZdV56YntBBHoHYYXy/ohyOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067070; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GxKE9qbVld103G0ymvtYXgNxnHPrx1cbDYi2mXYD57I=; b=qfVrP9cYjC9R9Xa9hKTmD6pYztlh7MEdFb20zsSXdpOKVXnEBBGPKZVfWgG6aBBIIp5VEt e6bQlKmjrpFATfCaT6xFsyvU3+U8mW6mclaY6OD8DiDT7Bkyw9MaGH1aBeqanjICSOnwWT ZFiExF1beJbX4t9bw5RrE5pjoMWTAX9qyIgk2LvCDjdC5fBNdzLG3ir9+NeMmm9s7syRBG Gbp9iXCqxpjN5e1n13V6dTWq0Fxc0g0uzJnbz5Yx5IqY2DFrOPo/sWIJ4J/M5933C4fzVi frajdrleoHWEmMEckq93bqwh1r6U4Pm+CG+fi4P7QZct2CF36oRp7KTTdPufuQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XBrDG4MM6zXcs; Mon, 23 Sep 2024 04:51: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 48N4pAlg069191; Mon, 23 Sep 2024 04:51:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48N4pAn5069188; Mon, 23 Sep 2024 04:51:10 GMT (envelope-from git) Date: Mon, 23 Sep 2024 04:51:10 GMT Message-Id: <202409230451.48N4pAn5069188@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 82db15028e43 - stable/14 - bluetooth(3): Fix two typos in source code comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 82db15028e434076e30db683958792741306c8c7 Auto-Submitted: auto-generated The branch stable/14 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=82db15028e434076e30db683958792741306c8c7 commit 82db15028e434076e30db683958792741306c8c7 Author: Gordon Bergling AuthorDate: 2024-09-20 18:00:04 +0000 Commit: Gordon Bergling CommitDate: 2024-09-23 04:50:34 +0000 bluetooth(3): Fix two typos in source code comments - s/conficts/conflicts/ (cherry picked from commit 9046ecff409c45205aad34ef8d959d79dd20cf8f) --- sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c index 8fc64bb70929..f232b3d390bc 100644 --- a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c +++ b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c @@ -789,7 +789,7 @@ ng_btsocket_l2cap_process_l2ca_cfg_req_rsp(struct ng_mesg *msg, if (op->result == NG_L2CAP_SUCCESS) { /* * XXX FIXME Actually set flush and link timeout. - * Set QoS here if required. Resolve conficts (flush_timo). + * Set QoS here if required. Resolve conflicts (flush_timo). * Save incoming MTU (peer's outgoing MTU) and outgoing flow * spec. */ @@ -991,7 +991,7 @@ ng_btsocket_l2cap_process_l2ca_cfg_ind(struct ng_mesg *msg, /* * XXX FIXME Actually set flush and link timeout. Set QoS here if - * required. Resolve conficts (flush_timo). Note outgoing MTU (peer's + * required. Resolve conflicts (flush_timo). Note outgoing MTU (peer's * incoming MTU) and incoming flow spec. */ From nobody Mon Sep 23 04:51: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 4XBrDJ0Gjsz5WYkn; Mon, 23 Sep 2024 04:51: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 4XBrDH5NRXz4hDT; Mon, 23 Sep 2024 04:51:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067071; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KLREmnhfeVbMxjLWcGjUkNZO726TeBUXF/9fjr8tppU=; b=vQIs0eYRnSnZ+32kxEC+KzF/TbPCFZTw6jL47KUmLcjh6/Q5Cuxt1BNLy7D+A5brUpPVD0 De10WYMK7lHEAPRkmY4nGnxGHKYwCUxfyA6lEBcw8h28HtlCvpiIVLzlL/ktf57CSLp1BS SQ3eNALH3FOEcXb4DzpGGZNGrWAJAfQlWg1krYcCY5ClpcWyBllvfU5FTkPrHdptI7BCKO PPe3qpxDdLhH7nZyF11BWHgceX3uHyBAA29azToPgpLKmj9nxb/A9I0OApDB9RedONhoRg iRW6cS+Vt7ZGvapovGGYw51fhnl+benAb2zQtYpqXVFOpqqLPWJ2ocSgMdOpXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727067071; a=rsa-sha256; cv=none; b=YKXw5Ni99f3SVQ1jG4qglQcfIPv4ua16qT9mPwGBt+RM7Rkf3sfqyp05SeXgF53NlgfEig 1nrpMydMKpDLU71G+wmow+dz14mdfgvW6+4UubAJuM0qkl4EzhvxGWpIPIEdU2Q45fzz/T UEl+bTm8pH/LA4AstdWsYpoKU22g/4PxD4v4O5xj0go11rjkwKPk08UxjCyI0lXBR1G08I qiRaKo5z/nMIkr9mPdPtyceqyEp+3eC1wTy6lSWcRvmInrAXeDgkdd2XRAyDWyzyfKMwyY 0s+lpD0EcjBeOhp4wkRgYqKgDvasWJ/kzaAPtUSmeSPCjo9EaJBGowvihDGZgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067071; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KLREmnhfeVbMxjLWcGjUkNZO726TeBUXF/9fjr8tppU=; b=Be2QA9NUb7Jw0FvrcgudfcCj/+yz2lp1dXIDMz74TlnxhcjA/XutxoEOpzAkhRx7u+O6II Y1PoDhyoAjzRYX3Pf1xg1FVhKBt0hZfLvPFObeQJl+hsEGNfviFY8i5zU2MXKEnoI9VuTB nycZiwG9Q41hZ5nFOIEnmHPJCuVZd4fqgiabDyaTE3S3SOBM1YRIvYXhG+QZ7DKdPtUzrQ GHcsdbbNAvJQO8s2uDsC2bstyjMxYLE558n/xGNr2FzH7EBqlAgxUnhkB0JWjrfGgU6lFA Ndob+KWmGCmMFPgSnfE0HQMg49O74B2rov2LtlC9wyAEe1in3un+aFZ0gONmag== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XBrDH501lzXct; Mon, 23 Sep 2024 04:51: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 48N4pBur069245; Mon, 23 Sep 2024 04:51:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48N4pBkP069242; Mon, 23 Sep 2024 04:51:11 GMT (envelope-from git) Date: Mon, 23 Sep 2024 04:51:11 GMT Message-Id: <202409230451.48N4pBkP069242@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: c22bc90d4e32 - stable/14 - arm64: Fix a typo in a source code 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: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c22bc90d4e329471d800580530a61e62bfbdda13 Auto-Submitted: auto-generated The branch stable/14 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=c22bc90d4e329471d800580530a61e62bfbdda13 commit c22bc90d4e329471d800580530a61e62bfbdda13 Author: Gordon Bergling AuthorDate: 2024-09-20 16:53:42 +0000 Commit: Gordon Bergling CommitDate: 2024-09-23 04:50:56 +0000 arm64: Fix a typo in a source code comment - s/parametes/parameters/ (cherry picked from commit cc4997907714ec22498a454736974abfbc123beb) --- sys/arm64/arm64/machdep.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/arm64/machdep.c b/sys/arm64/arm64/machdep.c index ea2b7e9da2ee..cdc812269542 100644 --- a/sys/arm64/arm64/machdep.c +++ b/sys/arm64/arm64/machdep.c @@ -889,7 +889,7 @@ initarm(struct arm64_bootparams *abp) boot_el = abp->boot_el; hcr_el2 = abp->hcr_el2; - /* Parse loader or FDT boot parametes. Determine last used address. */ + /* Parse loader or FDT boot parameters. Determine last used address. */ lastaddr = parse_boot_param(abp); /* Find the kernel address */ From nobody Mon Sep 23 04:51: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 4XBrDk5lK5z5WYvm; Mon, 23 Sep 2024 04:51: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 4XBrDk3J7qz4hgJ; Mon, 23 Sep 2024 04:51:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgZbaBARPwj+PNvSyeFqwVyQEmgG/GDgp3p22Su6p50=; b=Ds7L1RAOcyiES5ALT2DkrLsa5N++w4+SAhCkKsFySZzKDH4XMJwtbpS+osTMlkg1nhQisE g+X1Kjw+NMw/q4QJQaIZunRTDbucHrgFhwHQOF0YAbaJZPDtmv/d0MKcpGbPcXQRJhTjd4 xLIZ8PNcrlf5426fcTRPvFoI4yG3rQRxk0yJnZSM7iBqySiQ4u+QGUsLq7vokZQkOBWL8R zWOscPSiZbSBRgRTPv6Lfv8JFE0NPL51efE5yDKwvdi32dDSyQ5fQtp1PLsU9+HYa+PWNV unxWEJuYKhoVepZY95cwbQRw3TFEFtDSOGV3OtMTIZLhfgyAKCQL1yJdwXMyFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727067094; a=rsa-sha256; cv=none; b=idGAJi7A/eZqnrOSgITXmvcbzEBd0PKYym5mzZ1W9fzlX01ugJwHk8ByIk7bB2aT/Zigg4 7iCNrL5U8/qi0XWt2DPuxVwffW8ORAAEehib9bHWkfMTlbwY7HRBoAPkAKi4PvBKRaaLhm SvNO70iiIstLy2HNA5zSbCD2ow480DST6F/1W75LHQ043v23bmVIsdJaaogG4xXBzOxYGN Swubm9PsbQ1fhJ+wT01wYpO7gEVqyCk1G2vgoVdg5FQxbj59VGgYCd9Kz9RQbXwW2QeFbT BzNjk6RBr+cspbdWT1RzhpcBUWlfTsLuvKF2S27+YeSXdW33Zm/KsEUs8o604w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgZbaBARPwj+PNvSyeFqwVyQEmgG/GDgp3p22Su6p50=; b=VdqQZvywJdYJVz12loTOu7r3IyfwTeBZnePqWvMPgTlHbKO2I7XFmpk/uzUcLNH+UmNj47 Q9KWDJIXSHFGledwjAx6mFGZSwp0Tf/2z94YlD4IkVHWiynwvjUOB18oFQg2JX24VXT6u3 V6oG199O5tdh3CAnA+W9VqdaZ1JZkUK2K7f3l9Pm/Zs6K7bALWBO4GL8FNZ8F2ssKoDYYI pmEfVXLvqwAUE5ihmvL/tlC+WmvEW8wmIeSjFFdWAyydEifebpIpQ+iFU9TeGBJvCAWvo6 2gFZrM+R3B/6eDqmaDd9kjmQiSMhiHlhW7jtgCjcXcWmvO2+pRBGephYUWSQoQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XBrDk2vwjzXM8; Mon, 23 Sep 2024 04:51: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 48N4pYD8069462; Mon, 23 Sep 2024 04:51:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48N4pYup069459; Mon, 23 Sep 2024 04:51:34 GMT (envelope-from git) Date: Mon, 23 Sep 2024 04:51:34 GMT Message-Id: <202409230451.48N4pYup069459@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 590a0f0d67a2 - stable/13 - arm64: Fix a typo in a source code 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: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 590a0f0d67a287f085a679fa2a32f5aaf44b4680 Auto-Submitted: auto-generated The branch stable/13 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=590a0f0d67a287f085a679fa2a32f5aaf44b4680 commit 590a0f0d67a287f085a679fa2a32f5aaf44b4680 Author: Gordon Bergling AuthorDate: 2024-09-20 16:53:42 +0000 Commit: Gordon Bergling CommitDate: 2024-09-23 04:51:19 +0000 arm64: Fix a typo in a source code comment - s/parametes/parameters/ (cherry picked from commit cc4997907714ec22498a454736974abfbc123beb) --- sys/arm64/arm64/machdep.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/arm64/machdep.c b/sys/arm64/arm64/machdep.c index 5c786a58f046..52471a7c1fa4 100644 --- a/sys/arm64/arm64/machdep.c +++ b/sys/arm64/arm64/machdep.c @@ -759,7 +759,7 @@ initarm(struct arm64_bootparams *abp) boot_el = abp->boot_el; - /* Parse loader or FDT boot parametes. Determine last used address. */ + /* Parse loader or FDT boot parameters. Determine last used address. */ lastaddr = parse_boot_param(abp); /* Find the kernel address */ From nobody Mon Sep 23 04:51: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 4XBrDm0bn7z5WYsc; Mon, 23 Sep 2024 04:51: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 4XBrDl4KVSz4hlx; Mon, 23 Sep 2024 04:51:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067095; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SY7id2u8UzSu1WZ8u8byVhQFPJpYUgHdv51Q0QuMhGw=; b=d0LoSzrpsRZykkv7bMnlHHP+OpGy0/0NinUY8jn4QhRyVbrEVOr/uVgNNqZi9G2Pbj4GKC EwnMXqsyt4NC6v2fJnOW564CnkEC8gklwEfAM640nzF+Jzl5rZnx/hfKzEEdx6XNWtpxYn y6GvN4Han5ahwNPvC02arBGnbKn/vSMlcytsVcZyQfX70ev1KZij1XXKFvYLGi4nvBaAA+ tE6dhR4itrhy9m7W/aNxR4cxAuTvddsceI/D8rdexIXN+K0fHBen2vY3MPGBE5R8Wt/Ji5 MlLjRnFZPOG4tsGmwBd4VHKyBPGSSzeIKoOGF71QAck0lTRFOFhgeWQoSbLQJg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727067095; a=rsa-sha256; cv=none; b=OhjnALJ0mrYAXmbCRcwRRTNw7ahf01Vwv+cum0w2xFThRU1yE1Lt8nXdkyZK1dCjuudZa4 PC3dOHoaB381SL4+MTocFsGG2Qwcjnqz7bfFBGFQOqw4pDkrAOd3GMSlJb1YiB9j7COYYv vH6pn+pBvFbHhNm7UC+oED/Xyk40zXSsyUeiYHtC3H56/31bpv1LXOqf6TtkyzdmT5IAKU iRP30eIYCJJAAT3MhAhxWyIZS21gXm3jF3yHMBvZhGuByXqFdBdO1NAijZPfiXF2B22M3C j8hrFJpAmnGfxF4twBF91iFrFILfjIwy/+1B2fQUl208YsPBtJVGUXC57EItgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727067095; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SY7id2u8UzSu1WZ8u8byVhQFPJpYUgHdv51Q0QuMhGw=; b=HS9ae7amluy7SCD/mIJlytueB4QCTh5XHchbSnVXrqABmKLSodD2qtrkXdjB6nkksUCP+E PNw47jtkYR/VYvMJ+sXFJBL+lp54WWcIl+Dp7dhzw1v1nTdbRawJPEQYrrlt8crIiflQL5 zgkKUtPNDL/YM7aR7bxzzJKOMkJc88FYcU0LA/rgr9E5goctnbLbfaMIxE1D8ZCsw9hTRF 5IsgEEbuQ2Zwa+kz6cW3jLihM7XxMhiUn3fvW7SSTqy3XGOzxywuC8tBqE+pdUAtvR4rEc Gn7tHPPJ5zpp9hKGDnsLg9wbLT+fSCZhrCmV0i1pJv78HedvIEmflVZrh3xOUQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XBrDl3ln5zXQx; Mon, 23 Sep 2024 04:51: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 48N4pZio069520; Mon, 23 Sep 2024 04:51:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48N4pZ1D069517; Mon, 23 Sep 2024 04:51:35 GMT (envelope-from git) Date: Mon, 23 Sep 2024 04:51:35 GMT Message-Id: <202409230451.48N4pZ1D069517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 0a389bc09bda - stable/13 - bluetooth(3): Fix two typos in source code comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 0a389bc09bdab3a8174876e971f88eefe3a693ab Auto-Submitted: auto-generated The branch stable/13 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=0a389bc09bdab3a8174876e971f88eefe3a693ab commit 0a389bc09bdab3a8174876e971f88eefe3a693ab Author: Gordon Bergling AuthorDate: 2024-09-20 18:00:04 +0000 Commit: Gordon Bergling CommitDate: 2024-09-23 04:51:26 +0000 bluetooth(3): Fix two typos in source code comments - s/conficts/conflicts/ (cherry picked from commit 9046ecff409c45205aad34ef8d959d79dd20cf8f) --- sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c index 9814d9e0bceb..f5fd0605faee 100644 --- a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c +++ b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c @@ -789,7 +789,7 @@ ng_btsocket_l2cap_process_l2ca_cfg_req_rsp(struct ng_mesg *msg, if (op->result == NG_L2CAP_SUCCESS) { /* * XXX FIXME Actually set flush and link timeout. - * Set QoS here if required. Resolve conficts (flush_timo). + * Set QoS here if required. Resolve conflicts (flush_timo). * Save incoming MTU (peer's outgoing MTU) and outgoing flow * spec. */ @@ -991,7 +991,7 @@ ng_btsocket_l2cap_process_l2ca_cfg_ind(struct ng_mesg *msg, /* * XXX FIXME Actually set flush and link timeout. Set QoS here if - * required. Resolve conficts (flush_timo). Note outgoing MTU (peer's + * required. Resolve conflicts (flush_timo). Note outgoing MTU (peer's * incoming MTU) and incoming flow spec. */ From nobody Mon Sep 23 13:03: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 4XC38V6y0Fz52Fxh; Mon, 23 Sep 2024 13:03: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XC38V5K5Vz400j; Mon, 23 Sep 2024 13:03:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a3eAH1B2ASk6I+6TSyOaG8pZ4oRyXBsQOGlmdM67fzo=; b=fphdJLlBm5an2wjN37aROF3NIJjGZH0bTNQTvZzU4Q0yafqOFr61EsJtmuo89ZPTeg1vKD 6ENQIF2JBOnKX3ITNr7bQewEiv+m3UCTg5mIXajHK0SmxTQ9n76fOipR7PxkfvBGWXkjIb HXf0MNhwdb5m3Mhpr+cO05oG+RXh29p5xBAfgfOXgH+mExd4wdSfnYO9Ot7MEnC3Gk5tB8 RhXhgaAN7rsCzIxWST4MLZJwf11S1UvEUHNGT8BdrUA5wn5pJrAp5x3mdGmvmvNTtb0eYa 8DLmsTsaboFep952JaIHyNXcUiPUaYkZ/chvQiyrdeob+EWETQiHDmrjQeYW4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096618; a=rsa-sha256; cv=none; b=I+FHBfBwddogWwH384CPAfv36Rh4ttzTscRdXEuwTECdoXSbyLtBGPoxVBea48/i//P/xs cOVusEr0YZInVlt+aAPSxkoIrSI0C2ykJPYq3Eg/rsyc1LeMdxNVhan1wLr9vVeaxvSiZe AVwvyNmUKz03atHxbuz1FvdZK0Jo03uv0F+4zkCFwyQGX5MMrBT37Y2xa7ZWo7PIGIEH2u Y5HDN5YyQVwWF/YgPKe/MvWevTM/BAB82iy9dAiZFfFsjamGMmRxMY5miT95n4XgyaEmUg UF6EWggRkMjUARlV9ALAqTrjcPIiCwIIxBdAEdUZl4yLq5obgO8kCBH1qGCMlA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096618; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a3eAH1B2ASk6I+6TSyOaG8pZ4oRyXBsQOGlmdM67fzo=; b=lgojKuOv4K6gpgeOEU99RDA+5ruTSyy9i0NzwuEpDRh1uOW5glXptd80jh7IyfBp9JhrEc T4DTvGK0kDMWRnxWkX3ogXxm5VUkD3vdHxW+kK6iEEWdsxk871r/KrhUkwFWvIriveQem4 bGjATohATrjhU/mEtMRiVYhsnUMUbJIJDqDwvKOmhvHqJG25knrQelBXD7Y6voGfPKpZFE MuCwQGM0J2ibyYHXPbQXtbbzDfomKV+6N81df2oTV67O9VI+1jry0KGA6QuFnQPZ8NlINA VG8q3ClKexJco2SkDZar0OIf/8VYV3Dl5TciI8VMf5yTWT1+uYrJAKhtPASx0A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38V4wqMzmf1; Mon, 23 Sep 2024 13:03:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48ND3cRh006778; Mon, 23 Sep 2024 13:03:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3cmU006775; Mon, 23 Sep 2024 13:03:38 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:38 GMT Message-Id: <202409231303.48ND3cmU006775@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: 6f357a211afe - stable/14 - VOP_ATTRIB.9: switch to Fa/Fc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6f357a211afe937503f6cc289126a3a0cb3deda7 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6f357a211afe937503f6cc289126a3a0cb3deda7 commit 6f357a211afe937503f6cc289126a3a0cb3deda7 Author: Konstantin Belousov AuthorDate: 2024-09-20 07:24:26 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 VOP_ATTRIB.9: switch to Fa/Fc (cherry picked from commit 66fcbd9556b0053253a945638ae360ffc9040c82) --- share/man/man9/VOP_ATTRIB.9 | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/share/man/man9/VOP_ATTRIB.9 b/share/man/man9/VOP_ATTRIB.9 index a3bf2c0f8898..d7c55bd683d8 100644 --- a/share/man/man9/VOP_ATTRIB.9 +++ b/share/man/man9/VOP_ATTRIB.9 @@ -37,12 +37,26 @@ .In sys/param.h .In sys/vnode.h .Ft int -.Fn VOP_GETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" +.Fo VOP_GETATTR +.Fa struct vnode *vp +.Fa flags +.Fa struct vattr *vap +.Fa struct ucred *cred +.Fc .Ft int -.Fn VOP_SETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" +.Fo VOP_SETATTR +.Fa struct vnode *vp +.Fa struct vattr *vap +.Fa struct ucred *cred +.Fc .Ft int -.Fn VOP_STAT "struct vnode *vp" "struct stat *sb" "struct ucred *active_cred" \ -"struct ucred *file_cred" +.Fo VOP_STAT +.Fa struct vnode *vp +.Fa struct stat *sb +.Fa flags +.Fa struct ucred *active_cred +.Fa struct ucred *file_cred +.Fc .Sh DESCRIPTION These entry points manipulate various attributes of a file or directory, including file permissions, owner, group, size, From nobody Mon Sep 23 13:03:39 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 4XC38X1kTxz52Fxj; Mon, 23 Sep 2024 13:03: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 4XC38W6QVQz40QN; Mon, 23 Sep 2024 13:03:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JXlCOQaTLEklqGUAGAyFaXWdCuLh3uM737eFzzzdi0U=; b=btyO06dfRvYvMQ2I/XsCalg3nXLoC1rAgb0PkepB04KDaTKLKwb7A+63tG4qdkA03cEjfW p/RVI/0D1sHLQHEoEt61F2fcJHp9CnvSE75ZFfyLSEXeCGSsP/VDjUT0whZTV1UhJ3N6tC c80c+76+w07sFjPpiQuyLhY9kAlrPT+Qz8pox8Hkrlv1Jyc2V2Df+E8PYqVRICV2w1eJV4 KHsiS+rg/Bz81A04eo4Rxef268TiBeld4dsx0L/IyRVDj7HJuLajY3ztswk5HaQPNp8sey LSNoreEtnrhDCzi1jGveEOphlhFCRzpe0mH11wbz5p1u8ITfLOYL0NVb3bDpSw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096619; a=rsa-sha256; cv=none; b=cxMtrObMfUi+7Nih/Pb8NYnJizkOa8Cy3rdLp6FQy0Hb0cfSrhbUHNmSxfX96YrzUV8Y7U z6NeEsLgcfFsZzkGZMI2Sy/MveawHbSzz8MDQ3NNQC+AKqMbBNOkn45qkFh9IY/r2e+5fp w9EdB6CRXFFS+AsldewVyH1m8R23rbiD8zd1i7pgFoEe6wxzBop56EPznz+3DTIN8gUAuf RlEv7MqqQNKh5yw+ur4u7wRp/b5/vub3IIbokR8rDrV5iuq0/UH9xhY1moRRGiLNWVN6cs QNOjTpI3Lta2qyVJheF7fd2wDxJcMkM9eGNc9KdVLTsKRr9CUP+ZmFvpJDIDuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JXlCOQaTLEklqGUAGAyFaXWdCuLh3uM737eFzzzdi0U=; b=NxHy4Q3bmeeztz9mkyQ/VbJxED1F0R8LFrrTXCQ94ouS5LvcgKHZxIjeqN/IzgXmFCtROt vSl3BuOEzNk9TkULKjK2kpDKJbD8a1iQYjLBrkHKn4q7oF8g/77Z2hWLsBjWdD4Y0e7U2k 4pBEvCGpdDeek4hMGVhmigh0e0u6F1LoZjfULltrS3MWM+yWHoQTh/+xdsrNLVWXRkGydK NYHjQJwP3S2Qu3KsX9gg1O98Sp6I3uXYteshzt0gFhNyv1omUAWjOG0rXjwPCPV2u/nx/k Z8ZURZLF8qlY0Qov4PeRcXCN/xLTgqxcH7na4KBcGGwZMBq8xulQEwA+/eWiYQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38W61v0zmgs; Mon, 23 Sep 2024 13:03: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 48ND3dMO006838; Mon, 23 Sep 2024 13:03:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3dta006835; Mon, 23 Sep 2024 13:03:39 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:39 GMT Message-Id: <202409231303.48ND3dta006835@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: 0eec03f113a4 - stable/14 - amd64 pmap: be more verbose around entering and leaving LA57 trampoline List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 0eec03f113a4de0f9bd2aca2d4620e9d1b4c8d1f Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0eec03f113a4de0f9bd2aca2d4620e9d1b4c8d1f commit 0eec03f113a4de0f9bd2aca2d4620e9d1b4c8d1f Author: Konstantin Belousov AuthorDate: 2021-11-06 06:10:16 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 pmap: be more verbose around entering and leaving LA57 trampoline (cherry picked from commit 2912c2fbd44072b7372c24dd34392c01f5104497) --- sys/amd64/amd64/pmap.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index f23488a2174d..bd8be74d3022 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2247,6 +2247,10 @@ pmap_bootstrap_la57(void *arg __unused) la57_trampoline_gdt - la57_trampoline + VM_PAGE_TO_PHYS(m_code); la57_tramp = (void (*)(uint64_t))VM_PAGE_TO_PHYS(m_code); invlpg((vm_offset_t)la57_tramp); + if (bootverbose) { + printf("entering LA57 trampoline at %#lx\n", + (vm_offset_t)la57_tramp); + } la57_tramp(KPML5phys); /* @@ -2261,6 +2265,9 @@ pmap_bootstrap_la57(void *arg __unused) (struct system_segment_descriptor *)&__pcpu[0].pc_gdt[GPROC0_SEL]); ltr(GSEL(GPROC0_SEL, SEL_KPL)); + if (bootverbose) + printf("LA57 trampoline returned, CR4 %#lx\n", rcr4()); + /* * Now unmap the trampoline, and free the pages. * Clear pml5 entry used for 1:1 trampoline mapping. From nobody Mon Sep 23 13:03: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 4XC38Y1Bfyz52Ftx; Mon, 23 Sep 2024 13:03: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 4XC38Y05jlz40BY; Mon, 23 Sep 2024 13:03:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XzZUBwhyWgMZouywcPAcf1Vo8WvOBmngtEH4bvaMnqI=; b=wDGtWdax1fGM0QLgeHzPyKoVXhcG0PbkRxytK6uKdo2hy7Gurrrq5lpvGZkSzn7BOhYsPb ZULqek8a9GV8xONVmU8dZh+5YK2tYaCtF9S+3ion8Tz76ex6t2dRxFczoDwtK+1/8x/R9A rn5f82AKdWWJfoMqUzy8jCo8hH8e1BZ+ytv9Ur0F5/YnkdX+OwVPszlcjkX9vvFz4topWE zADRbJIR1MAq+70h1Wi8xUuC5N0GCPeEvYA3CYSpwx3yUKfyM0hzkikzGeEdkzRGTHHCpP Iv2kmiCntrjCKrq8+HR6YxErYW9NsctMyMNJcKwu0xWHsN/HkXaT/m9OlBvu4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096621; a=rsa-sha256; cv=none; b=kcfHjkJJzAynUrfqgKTtSuAXiy5zB/NAOIm6Veb19KN9HQAVubFTmQRPQEl0RN8ZgkRNt1 NEIQ8QuAtmhvTd7YqXU11LimLLcbtKH2zaISSdTwnSG7XwMSc9O4lcat3YuNcZKhgW4nsx TeLPuvylDqqNJe6M8vjPLww68Sor+IltKgsk/HN15fFExhRKjam1yJvsxETbk2DwexQGmr KDEgXXDbM/94eaDCrWEoQd+CFeRQ63X3nnALW1gTTC8oJhdrRrnQcJUkJRgr7TPFoo31A1 nUjWDorxDnT06qzHPk+OzZmHc+qDlG2P1uh4wyC9Xde+ZQv0qWk4TD340wW7aw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XzZUBwhyWgMZouywcPAcf1Vo8WvOBmngtEH4bvaMnqI=; b=Npc+UMLBfqSFIlIXU9vEW92GEhRw8ZdaHLuQyI3P++kHhmEHXfxcLYpTk539B9/gHqCqIV LJ8SOgBfTHWZpCbb2fhHE0ZTe1/hHSPStnE1Q5nL+IoXzueLAISciZGA+J1aGvh4tjmBeW ZEvI+z2NgOBUhIm/MWlv9Zh16BTKlyJIG7L+5AEYskPcK2iXEDxdwDWPLuNP+du2tV0LBW NWm3iEq7/Ewmt8gMRlYAQZl8uc5hHfntKlbkDpytVhZ/t/Fr8aoV0tMmbwCItCZ6l2vh5J osC64BL8xksbx3pGpyE5H1VDnXC0/BWek1rsM56bwA0bwkeYYeQCPMF50bi8dQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38X6qV4zmgt; Mon, 23 Sep 2024 13:03: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 48ND3epu006895; Mon, 23 Sep 2024 13:03:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3eU3006892; Mon, 23 Sep 2024 13:03:40 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:40 GMT Message-Id: <202409231303.48ND3eU3006892@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: 1c341830359f - stable/14 - amd64 pmap: flush whole TLB after LA57 trampoline is installed List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 1c341830359fa25f49bfaadd55328a43e86cb476 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=1c341830359fa25f49bfaadd55328a43e86cb476 commit 1c341830359fa25f49bfaadd55328a43e86cb476 Author: Konstantin Belousov AuthorDate: 2021-11-06 06:11:57 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 pmap: flush whole TLB after LA57 trampoline is installed (cherry picked from commit 787259bfe56478b9aa0699f2516d00722b9cc309) --- sys/amd64/amd64/pmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index bd8be74d3022..9058fa405771 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2246,7 +2246,7 @@ pmap_bootstrap_la57(void *arg __unused) *(u_long *)(v_code + 2 + (la57_trampoline_gdt_desc - la57_trampoline)) = la57_trampoline_gdt - la57_trampoline + VM_PAGE_TO_PHYS(m_code); la57_tramp = (void (*)(uint64_t))VM_PAGE_TO_PHYS(m_code); - invlpg((vm_offset_t)la57_tramp); + pmap_invalidate_all(kernel_pmap); if (bootverbose) { printf("entering LA57 trampoline at %#lx\n", (vm_offset_t)la57_tramp); From nobody Mon Sep 23 13:03: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 4XC38Z2khQz52FTy; Mon, 23 Sep 2024 13:03:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XC38Z14bcz40SV; Mon, 23 Sep 2024 13:03:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Ahnsxgnc2CMh2z/zTa6u0Oe3tveStCGdZRnJUCt3t0=; b=U60IxjlH41DGlIDkOIlnrn4vBaXbZwrwFosc70Cwhb+1CSCl4NuNxMz3df9o99/4dPVgBp zJj6qgL3mPa3JIdGahCNLEXoU+fJHaeEf9i62EhTs+f7SH5w9zy9M5/a1wEfTShZ1lLQkA KfHUGpmTB0pVz9keCUog0lJD3M9hFyLA5zQfLtlUqlU3ssYzzff9NyNk47bYVMfo51bYk4 dtFeLVa5b0wffSjg4XTnfQr+GNsPqhrVODK3nNVoSB+kHx+JwzhRzafsCtYYF0tMuHhNoe tTgKbdGh17qcJgFU6EyF5SiVhnK9fW5Qc0r/wKGxQb2V3QqC7J8xqUUvtSRdYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096622; a=rsa-sha256; cv=none; b=uzbMe+9kCIqcyA7Ue2lU0TFCRqdqvWgUMEG5xhttWFIJ2wGRzBiiyDdzmvbjMGl9RTdami 40gwjYCDfSfTDlB46KQsqaEIfbEdZlZPrnLcyKP1KowDmXbVcnPnrK9uUxeghqOkvDSrDg 6nBWRCrvBRbFtjnrgPpLc28zzTUNmI+oEIyonLg+OWmYJpqt4uUePiz5uDB9+im41q8RU8 DthT9ah/Ad0YPXGDxmrwkjeQttvGsMaZLSMvnujWEF5PfcUn0a8b1FMfmLnvv/JRH/wIt0 8vVfWPOoEFFIKj4iMaEM66E7fzYA5hIqogv2iWEY8m21UGqjhtNhGKDktUr23A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Ahnsxgnc2CMh2z/zTa6u0Oe3tveStCGdZRnJUCt3t0=; b=RdLQclhOh0g9PnOLkIHRcFRIyUVR6kDB9IkvbXycKxIua4xGW+iIp6E/Fm/yMKBEqlUG6i 5ynEjoH23ENYKPrwfWDrAFvkSmeVD/34amCr2zI9RQuPnVKTRdSjpJrQZUKd/BKP9/biJv OEDt5mjPaOtxv/yonEc1fcpbYLwHOBeKOUdaHsarQ1sEMrIfM29HJK2Krn8NsKwaoePzMK Zk9HcFwTxkc1YKwoKdHtt5AO7n4PP6xYc/zyGPjxdqy2UM4xeRHOjesvZrqMLChwPRQBTw zWjPmSDZZuxQp62VYO5vdpuGSeQmrtftoq87xVvvT05+xZRza/SDM8v+1FTSQg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38Z0h6TzldK; Mon, 23 Sep 2024 13:03: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 48ND3ffk006949; Mon, 23 Sep 2024 13:03:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3fIG006946; Mon, 23 Sep 2024 13:03:41 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:41 GMT Message-Id: <202409231303.48ND3fIG006946@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: 8179f2a7753d - stable/14 - amd64 la57_trampoline: jump immediately after re-enabling paging List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 8179f2a7753d51767d7dcaae53f8ba0d1dcdf8db Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=8179f2a7753d51767d7dcaae53f8ba0d1dcdf8db commit 8179f2a7753d51767d7dcaae53f8ba0d1dcdf8db Author: Konstantin Belousov AuthorDate: 2022-09-17 01:35:20 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 la57_trampoline: jump immediately after re-enabling paging (cherry picked from commit 180c8ab079950acb15c6629ce293055ea0117b39) --- sys/amd64/amd64/locore.S | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index e52d36125afd..a51e5047fe54 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -119,8 +119,9 @@ l1: movl $(3<<3),%eax movl %edi,%cr3 movl %edx,%cr0 + jmp 1f - pushl $(1<<3) +1: pushl $(1<<3) pushl %ebx lretl .code64 From nobody Mon Sep 23 13:03:43 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 4XC38b3h8Rz52FKW; Mon, 23 Sep 2024 13:03: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 4XC38b1lQlz40NV; Mon, 23 Sep 2024 13:03:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9Ll8Es/HOa/sZ2qRF8WCnWeC3r5X6EHkDg/TmtoVB/I=; b=fwKCgVCBaR8IL19IL+EIebP3OA/LAY+oju6+5cAMllxk730liKySm+M5idBDBBbbt45fQr TNbcAu/MvyL+MONSdhX+6tkoT7PQdiRwy3/Rt9IGPAJ7FxCA+QfZsI4lhJswVDujWp0lkF FLx94ApN1rAWd1LWzO3VTWyFiRV+iIyJs6ua3M6hnBwftt1zjDBhQhiZYSLxUdhx3SlR+5 TMPHwVugRIzaXXSUWBdQePgJFhNlWwtUkIJ+0pd5ysMimJXBtwM3/RGYPpxbNCjcMxJGvW Lyx7YLZodgodnaEb/ko99tjNR46FAMUUKyIax4+IVGQQe5/ld+HcEzGJ+Mt9BQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096623; a=rsa-sha256; cv=none; b=hIOfQ9oboCgEwQaUnhrOd2/YkYX91cB6SoFBdqT2JaezB5PV0mgSnG8aUS+oXgOHoaiSb3 pKfagAwvq0rU1/QIg1tuuGiHc76dCwh716CavVQvVhw+OxOxTRcljtJabwrL/DJ+Vb9U6C T2u8L45QwP2LZw/oytD1OXEDXDoBjU/OoSLtiFTIwPiKsvE8TKLflkBXY9lJIBtLcSrdoh /1FyCoHar6gTATmIpdIFz7Cu6wrc/qyCNcV3ekq6dE+DCiW90idnWGkuhV6l3rMVRLe74N bcOzavdbIQUQ/Mnh2KgQa379X6Zs9vDcyaTpr1BKcyvXRee/fb0jFhqW95hQUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9Ll8Es/HOa/sZ2qRF8WCnWeC3r5X6EHkDg/TmtoVB/I=; b=ZVY48Si2j8ifEEjcq7ONLw2Yu/aqxCwTaeUFdadnB5zoNH4HrXuPoTOB9TewdMY4v+Twzf CYWYo4BkSsX1l/+NeCYfF2pB/iDYg/GyGZIh3hc60Fm+RCu5Wu1UjdesXN59vMWApPm/xk qbKf4m75zOzrAXascGbiPQHAKBBY0MJqpSn8Y05sH0I+4/3lUxm6wT5PTIOaPlRxb4l07f 8elK+Ww0Yuri6S3NZToencrdf7+AI2S4BQzbOfE9cVfSRxdyzggWXvKlj3pPJuqVEap3uB kZIIFAuWxBRIHg0Bt7KYwDWHFB009VAV78VAUjdfMNFuKap3FTCSaFXm0jLI2g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38b1M1jzmkM; Mon, 23 Sep 2024 13:03:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48ND3hTp007005; Mon, 23 Sep 2024 13:03:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3htw007002; Mon, 23 Sep 2024 13:03:43 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:43 GMT Message-Id: <202409231303.48ND3htw007002@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: 7a1723912e4f - stable/14 - amd64 la57_trampoline: stop using %rdx to remember original %cr0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 7a1723912e4fd97726c6fa55a9f86b7b4772af64 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7a1723912e4fd97726c6fa55a9f86b7b4772af64 commit 7a1723912e4fd97726c6fa55a9f86b7b4772af64 Author: Konstantin Belousov AuthorDate: 2024-09-11 00:35:43 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 la57_trampoline: stop using %rdx to remember original %cr0 (cherry picked from commit 9a49c98bafbea2a896f72defe7d9f2b65a474c41) --- sys/amd64/amd64/locore.S | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index a51e5047fe54..86db0f76b22b 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -93,9 +93,10 @@ ENTRY(btext) ENTRY(la57_trampoline) movq %rsp,%r11 movq %rbx,%r10 + movq %rbp,%r9 leaq la57_trampoline_end(%rip),%rsp - movq %cr0,%rdx + movq %cr0,%rbp lgdtq la57_trampoline_gdt_desc(%rip) pushq $(2<<3) @@ -109,7 +110,7 @@ ENTRY(la57_trampoline) l1: movl $(3<<3),%eax movl %eax,%ss - movl %edx,%eax + movl %ebp,%eax andl $~CR0_PG,%eax movl %eax,%cr0 @@ -118,7 +119,7 @@ l1: movl $(3<<3),%eax movl %eax,%cr4 movl %edi,%cr3 - movl %edx,%cr0 + movl %ebp,%cr0 jmp 1f 1: pushl $(1<<3) @@ -128,6 +129,7 @@ l1: movl $(3<<3),%eax l2: movq %r11,%rsp movq %r10,%rbx + movq %r9,%rbp retq .p2align 4,0 ENTRY(la57_trampoline_gdt_desc) From nobody Mon Sep 23 13:03: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 4XC38c5Kc8z52Fv1; Mon, 23 Sep 2024 13:03: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 4XC38c2kxgz40CK; Mon, 23 Sep 2024 13:03:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lcjBsMcpiKbHcUYi+lLtj+DTz6w0FMv5gokel8hrdCM=; b=DUdsaslcUAJxkq+q8YXK/+cd374k2KyC0ypY3CFRPjTmVpzxlcvDdkBlhF4O7kOHG+javv bLSeqxBN8v1FT8ke/ZHnjCPLqagdfWvm3LA4cHPhOeV24C6wXvXNg3eQzrsMwduZJycBTO 5Ze6dTpCBZVKE+ifqFzfgFEWH2FytS31bylXC48n9RH/jKODVOCran9JkazXeunq/XoncZ oo6lwVOGkkDpAyZXEfQVIJZsG4mLFjE4pJY5U4E6UTsq4vlOa4pb13yMTDncMFHM9p4zlD G/ib6dIzTk8UNgTMEhVwKr9uOOGq7ihXwG2IzeWDU4rVQ2tLjDpph+zcbawcfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096624; a=rsa-sha256; cv=none; b=u2yERjNYxkxoG0ujyKHqzeHKlMNVnN9zJvDLplZE3MP78OkhqqEzBNbtOqMQq7XIop4tNH m2jDonJmQ1lfkLLfNZCnfuqfkM5Bcl9I9Pb07QQUFmIktNU2MGwTvx4aRJLzZtOHTcxbok poLE8w9NxiWwVyeZ+gavXOwB9441VTbfYMmdrbfBMxWjTksXSHG1uLI+Lhf66M4mEiAshp 7Ko+mITYRbYwb7qkOhwaNt8luNJyniCN49mhDWnzbUoBgWlNOMoC7oRrc0AR787amyf8Cd 8COtMkOzZZKNeg07X+E7dHnew4sGJBChY30PTAXMSkFCdjPb/ypmiqaRIA2ujg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lcjBsMcpiKbHcUYi+lLtj+DTz6w0FMv5gokel8hrdCM=; b=PGpnSJQs+4UokXWcX6o4+K/KkvKOEXu7PlcLby4YMpLgCuuaYKOMOwKwYxXsWrST1tCakU 7pqrzycUx7IlTqgRbcb6kme2ul/4MBFdj36Z7gZeF+lunpAze6erIFlCHwwe7aOgrvW4Su d7sAe2mBY1wf+XsO91XsFL+3yrlkW9Zhxjh69GSpqzvp1N4YQksN8qMPVdCEs58CeiKLaj VWuSnbdJtfaull2kQdLEPLY4bBC98c/hLxJY51XBwWrsLPKuJwHbx5Uwea3gVrsMqV9j/w 4EqGlusHZSAHsL9fKTb/xS3RR3ZOD7sIOloUdOQucvljp+dzoIX4QrgHZs9AIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38c2MSGzmJv; Mon, 23 Sep 2024 13:03: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 48ND3i5b007053; Mon, 23 Sep 2024 13:03:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3iPG007050; Mon, 23 Sep 2024 13:03:44 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:44 GMT Message-Id: <202409231303.48ND3iPG007050@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: 3f79c8c46f24 - stable/14 - amd64 la57_trampoline: disable EFER.LME around setting CR4.LA57 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 3f79c8c46f24f2b87569444a034e1aa08ead2dbd Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3f79c8c46f24f2b87569444a034e1aa08ead2dbd commit 3f79c8c46f24f2b87569444a034e1aa08ead2dbd Author: Konstantin Belousov AuthorDate: 2024-09-11 00:39:30 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 la57_trampoline: disable EFER.LME around setting CR4.LA57 (cherry picked from commit b7ea2b69ef666ee8cdc6dcc814d610df0a7f0999) --- sys/amd64/amd64/locore.S | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index 86db0f76b22b..9a991402cdc2 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -114,11 +114,21 @@ l1: movl $(3<<3),%eax andl $~CR0_PG,%eax movl %eax,%cr0 + movl $MSR_EFER,%ecx + rdmsr + andl $~EFER_LME,%eax + wrmsr + movl %cr4,%eax orl $CR4_LA57,%eax movl %eax,%cr4 movl %edi,%cr3 + + rdmsr + orl $EFER_LME,%eax + wrmsr + movl %ebp,%cr0 jmp 1f From nobody Mon Sep 23 13:03: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 4XC38d70Gpz52FcZ; Mon, 23 Sep 2024 13:03: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 4XC38d3khzz40Lm; Mon, 23 Sep 2024 13:03:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096625; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2zLbkji5V14cWSoteJVvH4wPP7QYewXLWMMEUygqyos=; b=bnSMEeevn/LlOpfcQgxKH/I5RGx7KyQ2KKMwUms4hU1Qu8LkYU/oPQxmWK9XtBvVKuf/1J Fh69ame7LBEpTFdoB8l5SalslaC4NrKREhODq7Y8MjBJ1JJSm/nsYUDpzeDvjx2c8Ip4xX n3y7DSTWJCsWglhVVgByesTtYlAAnX4RxLR+no9iLQdjkyzn0t/Tyr3T95nZZQuVbDpk7Y 98Cxw42iMcIAgLvn17qjkYpalhdsu5WTzCSY6rAE43eDgve6nqhY0ClV+SG/vfw/4nus4M P1C66XPI1KNliQaovvn9fq0V1XgPaCfB5qnn770V+EF+/ehEyz8AHkiOinZCIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096625; a=rsa-sha256; cv=none; b=UeNvnDktrj7vNcIX6kQ3DUQ4LdiDf1ZE8ZSgHe1h0SG3KcH5LZMoyg1HEq5Y+C4/qjuVB6 XmjrnEbhRFpl0iU+ABhvSbBmEwNfyzMbZwWlaVRNyMioABCjzXHS7Wwv8sEtfempd2BhEQ RHTFrHh4C6DDOhTME1RmB528MtAZRi/VM4niqPpPWybrHTHhho8CocamrIOZep450ggLkH SNYD8Pub18aO8psafRLG0OKFLAxNESnV/r91Bh/R1JhAN5hkioCTKNqzakhJIW2+nRNNvO FTYTKFrMMTFxGB7Rpd868TMNRM2p7VFFoIbkn9sFKyJhpJV9g78obD15JS/T2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096625; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2zLbkji5V14cWSoteJVvH4wPP7QYewXLWMMEUygqyos=; b=n5/3pY0/4pBoAn5FY4lh0GdTUmssh2avZ6m4NWilvrHQW7pERQIXTYanqaSzvBW6S343xy KWi76VOl3MGgirkUdzsE9zDLyicCz5cQte0+8Eazg0pboTL6Tfww+I06d5GL1aYEh5/a9m VDWTFxMb+hLNj+tPOyTLcnMCcMq+uBP3/Gj7h2YmWt0C2swhqZ+EDjMbiSpgxeqM05NoGF KMW8yqL12r73Of5SfFSZvE+iba7dpR9latK3/SbhzDhtLJZRcPjeEaPpAkRkX5BmNzNjLO 72cx3fLdJkd/HI2agHCHvtL0w48GI/sWTGraLa2toVyIpOPCNyfjDDViK1IguA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38d36vNzmCy; Mon, 23 Sep 2024 13:03: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 48ND3jrW007116; Mon, 23 Sep 2024 13:03:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3jne007113; Mon, 23 Sep 2024 13:03:45 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:45 GMT Message-Id: <202409231303.48ND3jne007113@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: cdcaf2e07354 - stable/14 - amd64 la57_trampoline: turn off global pages and PCID before turning off paging List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: cdcaf2e07354ca74539aecb5f23f0ed35b3c7260 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=cdcaf2e07354ca74539aecb5f23f0ed35b3c7260 commit cdcaf2e07354ca74539aecb5f23f0ed35b3c7260 Author: Konstantin Belousov AuthorDate: 2024-09-12 02:42:23 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 la57_trampoline: turn off global pages and PCID before turning off paging (cherry picked from commit 1be58e67eb24024bc808357771579d396679ecb0) --- sys/amd64/amd64/locore.S | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index 9a991402cdc2..d05f38dbba05 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -94,6 +94,8 @@ ENTRY(la57_trampoline) movq %rsp,%r11 movq %rbx,%r10 movq %rbp,%r9 + movq %cr4,%r8 + orl $CR4_LA57,%r8d leaq la57_trampoline_end(%rip),%rsp movq %cr0,%rbp @@ -110,6 +112,10 @@ ENTRY(la57_trampoline) l1: movl $(3<<3),%eax movl %eax,%ss + movl %cr4,%eax + andl $~(CR4_PGE | CR4_PCIDE),%eax + movl %eax,%cr4 + movl %ebp,%eax andl $~CR0_PG,%eax movl %eax,%cr0 @@ -140,6 +146,7 @@ l1: movl $(3<<3),%eax l2: movq %r11,%rsp movq %r10,%rbx movq %r9,%rbp + movq %r8,%cr4 retq .p2align 4,0 ENTRY(la57_trampoline_gdt_desc) From nobody Mon Sep 23 13:03: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 4XC38f6VvJz52Fcb; Mon, 23 Sep 2024 13:03: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 4XC38f51wmz40RJ; Mon, 23 Sep 2024 13:03:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbhqiOFpgFT4p4kn9lLrJ9JbGFY3mF6KHhcJRmyubM8=; b=wjj+o1Ypacmz/dk3DcP2Qucm7J/8GXeSEjdNdwrIp0Ysu5GUqzyp7cZD8p3ckOXN6jeRWZ /jkIrurqiKEkghmRgiWb6uyMmufYqvL2U0dWpknCas5FO+9mkWvZj/lCt8c+0eOErqwrCf XCCH/XUI9tEK6ocqqJoRpx/52m+KWSRi5uJi5EFjuc2qXK4TLyUDcpmkZtkdrZZmPdT4X3 gNrqnf0VekMZkBzYMjnKtWIoHyV28Bg0kgmaJj5WK5tK7g8TKfRW7q4ijKFIh5gWdu7yB9 qXQjHOHTdkCwEfm+TAM/siAvKPQ540HbfQoKtYUKlt/mReu7HbTbyq6Bd9BuOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096626; a=rsa-sha256; cv=none; b=CM0GbOqgBxnto0br7libom+LSFSlcoxH/BoqKKaCY0YAwmcIYZEksxRXVmIw9VMWXWoM79 NN0CJOT/aXeVpUjN1iRrKYP5uz2GeaYEl43wquQwsNYbpyjok6tlW5KpvlVKMR3vPdg+bD QcNjW/PAkMY5WdqvyR6tIoa0Q97F/vy9DKcMMg3cRaBUUgpRIoAt+ZEYOI0VC6e8QnZsEz CKugs95JictfzyxslvKlDV+n3rd38pPufMeTBDk1ylzPDbaRSC8rNjVlhuAADGA6Dk2o8J qS1GJM07yaQ4n44HHDpciFe9G506kB0VaLnGzAhHoPdTbpfHx/iIiXDa27RRBw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbhqiOFpgFT4p4kn9lLrJ9JbGFY3mF6KHhcJRmyubM8=; b=TBId2YJxLh2njFeO9K1A6IsP7/5dLqsHNs/iww2DUWLFHDKHjva2EOa7Zz32FuIgkBJ41V rf9sYLFoLocINkoiSshAL31U76MSqMxqLtf8HqotaQlyTV031v2r7Oeq7+AkXTCraO3fXn xCLo88URc3ZIMnpaVTkX+YXClfA+I3THlfbheQZsMALsjmIEp1tvySl6q9eQaSR5GZz3O5 WyyYozupGqziHqoVFseXUKexUnQTU7KtziZ1ZhTbTAX8Evdp44QWp/TjpVdF/i2fM6Cwah dtkQ3rZG1VdMvM0vQN1oVkf7CDIadOGdi45quFP8mtLv5AQhME6ZcYoSw1pCRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38f4X1gzmJw; Mon, 23 Sep 2024 13:03: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 48ND3kE3007176; Mon, 23 Sep 2024 13:03:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3kq4007174; Mon, 23 Sep 2024 13:03:46 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:46 GMT Message-Id: <202409231303.48ND3kq4007174@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: 371dcd4c3554 - stable/14 - amd64 la57_trampoline: lgdt descriptor is always 10 bytes in long mode List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 371dcd4c355481860e21f4bfa7f62a12ce1986ec Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=371dcd4c355481860e21f4bfa7f62a12ce1986ec commit 371dcd4c355481860e21f4bfa7f62a12ce1986ec Author: Konstantin Belousov AuthorDate: 2024-09-12 03:33:48 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:06 +0000 amd64 la57_trampoline: lgdt descriptor is always 10 bytes in long mode (cherry picked from commit 687b896f8ea58e67c3a0bfbd3af3041733e57dcf) --- sys/amd64/amd64/locore.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index d05f38dbba05..3df3dd722f45 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -151,7 +151,7 @@ l2: movq %r11,%rsp .p2align 4,0 ENTRY(la57_trampoline_gdt_desc) .word la57_trampoline_end - la57_trampoline_gdt - .long 0 /* filled by pmap_bootstrap_la57 */ + .long 0, 0 /* filled by pmap_bootstrap_la57 */ .p2align 4,0 ENTRY(la57_trampoline_gdt) .long 0x00000000 /* null desc */ From nobody Mon Sep 23 13:03: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 4XC38h2kdHz52Fsd; Mon, 23 Sep 2024 13:03: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 4XC38g6Tfgz40XF; Mon, 23 Sep 2024 13:03:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9IDWK11m326kUBPhUSDnHAb15nZkqO13VaFCYOhFfYY=; b=u7v2+yXdelAfG3DU5/1832r1piVS6appY67lsE5AhUbNhxxGeThWNbx0GZ3RbkVccNdrbg j4HyYYaLFnO2Tojpj/FrbL54sLYpyo9WZ6ggE6XPzF/EuQdSI0EUukUrH/499zvIOigTr+ N4YgykBVgeVA7lRsvzqsLcoitB8njq/TYI3V1vUonpuW2vkD73YhjB1H2rt47p1w43JQD+ UzoNfKufZEFUYFvb72GAEybhRUJsMcmz0sfbzpKksgJc000tBsqzW7nCS3bJdb6Vyo5cF6 b+l/tWpzibajDcQNEcKArH8+W1r2IlwaEjDSQALozAU1m9EhmNMjL9QukCJ68A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096627; a=rsa-sha256; cv=none; b=xx4tuDEFxe1vFg86l1zEknyx3Kpuup2KHL2WGvPyt8MI3ob/6S78aN/l/QCHHOEiSEpPQc npBbCkph02CS97saYSYuhclvTkTHeO++u487wIRrKqHIhjul5ugFcYrR68pn2iATWsXUCo nScb1+1FoNqgnvBSIJ+AslIlG9rXBYLwtA/5w6IYLlvyX2kUDf6fI6djIV3Dhp7yN1VqNo fWiTY5g0tGN5SNjLE1OH3kH+VfPQQrnIWyhcoUVJ8f4TUUDE36Uxm+5CdMSX7OOcFy/RjG Qmc1EI7vqCr2NW0NbhwEvu5sT5WFc3JHdo9yJEvZ0RLGPXRWJUV8QueQPBux6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9IDWK11m326kUBPhUSDnHAb15nZkqO13VaFCYOhFfYY=; b=sMkWPo0fhnbasIofF2MOHkenEtEiPkbTeH+DwzbV0nJUBTIvK3tinyy44Mm1WYO76z8Ye1 Ogp8e6a0R6xO93rkhV7M9x/e3cBCs1m0evYtSGOzagsbZzDHUWKD/j4ERdbDY6ajQNNE/a fGQv981m4eqhr+74MmCwFyhRAe5oAFsyyboW2+oUqHjoWiMeKbTsDIBv5my+V074uzvZAg OkeL+Xr0F6WLwLa/tMGi9H2rUsnGpk5rTLMwsDm9D4N6g6GhR/cQdh1NFfren6LYChGjZg p7zhBfrzLwZzmklU9cvgRAMfOG8/00kh/Q9YuJjpm/ldobng047qxhQ4GHpj/Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38g5J1gzmD0; Mon, 23 Sep 2024 13:03: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 48ND3lbk007223; Mon, 23 Sep 2024 13:03:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3lD0007220; Mon, 23 Sep 2024 13:03:47 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:47 GMT Message-Id: <202409231303.48ND3lD0007220@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: 2e6e9d154100 - stable/14 - amd64 la57_trampoline: save registers in memory List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 2e6e9d154100f7bede90f2041cb3a897871f0766 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=2e6e9d154100f7bede90f2041cb3a897871f0766 commit 2e6e9d154100f7bede90f2041cb3a897871f0766 Author: Konstantin Belousov AuthorDate: 2024-09-12 05:43:44 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 amd64 la57_trampoline: save registers in memory (cherry picked from commit 280e50461a1f638088e7a0b9116976821c374b56) --- sys/amd64/amd64/locore.S | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index 3df3dd722f45..1ed9085e655c 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -91,11 +91,12 @@ ENTRY(btext) /* la57_trampoline(%rdi pml5) */ ENTRY(la57_trampoline) - movq %rsp,%r11 - movq %rbx,%r10 - movq %rbp,%r9 - movq %cr4,%r8 - orl $CR4_LA57,%r8d + movq %rsp,lst(%rip) + movq %rbx,lst+8(%rip) + movq %rbp,lst+0x10(%rip) + movq %cr4,%rax + orq $CR4_LA57,%rax + movq %rax,lst+0x18(%rip) leaq la57_trampoline_end(%rip),%rsp movq %cr0,%rbp @@ -143,12 +144,14 @@ l1: movl $(3<<3),%eax lretl .code64 -l2: movq %r11,%rsp - movq %r10,%rbx - movq %r9,%rbp - movq %r8,%cr4 +l2: movq lst(%rip),%rsp + movq lst+8(%rip),%rbx + movq lst+0x10(%rip),%rbp + movq lst+0x18(%rip),%rax + movq %rax,%cr4 retq .p2align 4,0 +lst: .quad 0,0,0,0 ENTRY(la57_trampoline_gdt_desc) .word la57_trampoline_end - la57_trampoline_gdt .long 0, 0 /* filled by pmap_bootstrap_la57 */ From nobody Mon Sep 23 13:03: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 4XC38j4RZ0z52Fgm; Mon, 23 Sep 2024 13:03:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XC38j1PJTz40VM; Mon, 23 Sep 2024 13:03:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096629; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QZAJgOEE0Ec77eEmnPHUwoaXPGg2ztngfp+zR8+rVI0=; b=uR7jo/wjGIiXEF3RMaroSZz371MUd9yLOwkqktqdpKPIMPst8d2NIbnE4S0/5SAPsFgPNq OyVwk678gG1BQ/zJX2vGKIFe2pL36mlQhUO+Xw8ZbitOzsaE/o8pZ3o+MeqaVQp3/JZbzY 9E6RDCxeoOU3cPkCUKHMi9XTYpJEcBF76yuYUdwl8XguaRRj13n2jSeLE9lEblgqin/EQO dakGIxyd2VSbPTbmp+tkttQUnTTF1hjqJP05HbOVKsjJvwwUJ6wWqzTxyxeJWRcHG9L9OF 4ESx/rVZzhPtoc21SbKDIMxj+msvAJGQN9MHqvvp5HHQtff1CiI6NuOfEMRxbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096629; a=rsa-sha256; cv=none; b=T3p97NGY2C9VEphB6ZtWOn4i15sd1SCZVnXpi9xywl3Cc04Fl8FKcmeS3ca8AKbBZRrt5B QCEfuRxMzBwE8y9azCu/ZEhcBaFq5PwJdT4p/iW+LD7SSXD4rMqJh1O8G18xCu7HZK+Ep6 yoro8iPQQhEAip/f+VM4betSZfxcly1m3JfDTLoNRU3h+dJ0gosoMTXSeVF+qC+A89VWsH ulnPonH0C8qfah+ViQpzpGtPYygpDUTR/40A8PBiwl17wpwT6eMqTa7MQydt9CBYhmUmfw P/LZFg7SKHQQ2N0IjrLa42m3hOA5ORNa/iGCSnLIVBsO9iZtkoex5XHy1f/zbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096629; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QZAJgOEE0Ec77eEmnPHUwoaXPGg2ztngfp+zR8+rVI0=; b=P67nvHb0XvZ/gNRD0lXU70iYnLM7XDIJ+ub8fr93FrIemFCxepi/awvNNpJmqY4VC/ewu+ S9W6CzyI0+Kc+ZKVpSxo4EbxIFa8fKwL23oBbiW95YRTfxz76L7EozNu612wi4ZPp94QzX tOm9ZEM5eca+jmpsDoDH+Gv84OFjsaKlNjrCpdBnkWA9xnD/UknRd26240djPKVtfVxkp3 fhAMN417HQv98BSeibCLj0VHwNVzVR4QZylt25NiYtgqo6TJ5N0ikPOcXJiuZ9dsNNCzZT Sur85S1VjFgJ2Mlq89akZJst/wUrBKTDJy+TSdmsNV4btCYK8EPN1SMfTIhErw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38h6HyfzmVX; Mon, 23 Sep 2024 13:03: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 48ND3mJa007293; Mon, 23 Sep 2024 13:03:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3m6B007290; Mon, 23 Sep 2024 13:03:48 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:48 GMT Message-Id: <202409231303.48ND3m6B007290@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: e6fa60a77bfb - stable/14 - la57: do not set global bit for PML5 entry List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e6fa60a77bfb8d43feb53bd5f6d7153332f91ad2 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e6fa60a77bfb8d43feb53bd5f6d7153332f91ad2 commit e6fa60a77bfb8d43feb53bd5f6d7153332f91ad2 Author: Konstantin Belousov AuthorDate: 2024-09-14 17:15:51 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 la57: do not set global bit for PML5 entry (cherry picked from commit 678bc2281c3727e920604545240d9115de3d1bd3) --- sys/amd64/amd64/pmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 9058fa405771..0db1af00874c 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2227,7 +2227,7 @@ pmap_bootstrap_la57(void *arg __unused) * entering all existing kernel mappings into level 5 table. */ v_pml5[pmap_pml5e_index(UPT_MAX_ADDRESS)] = KPML4phys | X86_PG_V | - X86_PG_RW | X86_PG_A | X86_PG_M | pg_g; + X86_PG_RW | X86_PG_A | X86_PG_M; /* * Add pml5 entry for 1:1 trampoline mapping after LA57 is turned on. From nobody Mon Sep 23 13:03: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 4XC38l3vhtz52G0q; Mon, 23 Sep 2024 13:03: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XC38l23Qkz40jB; Mon, 23 Sep 2024 13:03:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096631; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R8LNFc64yD+4djFQbruhJobRitlle2ZZXsZfoDAdYt0=; b=CRcupks6M1LM05y6N9PvGxOAH3nvQ7thy6tZcGIkWYrLRlVHtzCqrC9uVTP6XSFjzbfaV9 jSlbqE7FYjQXBBq435CRdjXhT3sWW3YSUeuCNR4FfgqiDyQGqkUDiS06RzLQ/iROjT3nJe eN+/QPsOHuLJiIhmspTuSE/Zf83+0xFRwhedN4+mICJ1HmBb0rP7FT9HLumyI3XtnwO10N zCncj24ito6jV19OnrDZOJCJoGtyabclwFkoUspXCQFeLpAxDB+F/tGkvlJhC6kS+zLj+k WYXmiZ3rJ3VlZBqNfi6ETwp+XdWa40Frl7yB3aHnfLWOqdxdi8ZcwYQHddU9Rw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096631; a=rsa-sha256; cv=none; b=KtiF5f1sxUFKZ7ann7RrPpkR5hh7MuDeBiIJXPnVe9FyRcKBW9uRnxGH++3MhFKgHc/TC0 zipkUEGF0wJdO4pON45AahUkU+/zvPVbiq6odHAZIqNILeOxGYL2XHQHqtCN56y/VBCWCu JwtDee86vKHEasxM4DvCzD5u5mSF5kHzyc69q5mwBHzrhGMRYBHaA1lIr6BBlpAGQMnTCF ND1FYTwaPJLdo6xT/3lwxvS0jHHp5AZ5OMfq1gSiDsu5/xve5jrr5HYXHbjoS6rCtodjsy LABZKB+c/W/PUmrVWwhK0xetVLTFUZbnH300bTXhJBYjwfCbagLSpcpxEklIfQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096631; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R8LNFc64yD+4djFQbruhJobRitlle2ZZXsZfoDAdYt0=; b=TfvLvrEMwet5BtcP++E0HpOa2BuXIoISt7L8gaOWcOXxjZs4yqPbRf6AEslo3U+8TJJyZn xBBrPrpTgqZAofoWnUsiMMM5tE+GQPu2THHql6whn5o9jrXtHyVywNtwuPRAqs8dRc3wYl l8LIpJb/+KMgDPNEZDZ4ibXDOFWn+kJnlkXhG3umYo4UtpAMJ6/g4E8JEfW0qFLqZJszTB wRDe+2WHTvzkrRetlkHbAebh1T4oXBWeKhP02MO1cuthbPhXe23iD9IlxO2XPJ+3MRlz81 irxZwME5LD1RDAPBaZkQs/E5CNc1LKYEY69Lar1GB2cYNi1s4cvPBBbFaEbgrg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38l1f19zmf2; Mon, 23 Sep 2024 13:03: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 48ND3p2v007395; Mon, 23 Sep 2024 13:03:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3p0r007392; Mon, 23 Sep 2024 13:03:51 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:51 GMT Message-Id: <202409231303.48ND3p0r007392@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: 6a0a7c6a052e - stable/14 - amd64 pmap: do not set PG_G for usermode pmap pml5 kernel entry List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6a0a7c6a052e662bad2ae40dc166c0ad6c58d019 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6a0a7c6a052e662bad2ae40dc166c0ad6c58d019 commit 6a0a7c6a052e662bad2ae40dc166c0ad6c58d019 Author: Konstantin Belousov AuthorDate: 2024-09-16 17:57:23 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 amd64 pmap: do not set PG_G for usermode pmap pml5 kernel entry (cherry picked from commit 4f82af24f1113a7df224daded227d4e9de582c0b) --- sys/amd64/amd64/pmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 72929f98a0cb..567382f9924f 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -4371,7 +4371,7 @@ pmap_pinit_pml5(vm_page_t pml5pg) * entering all existing kernel mappings into level 5 table. */ pm_pml5[pmap_pml5e_index(UPT_MAX_ADDRESS)] = KPML4phys | X86_PG_V | - X86_PG_RW | X86_PG_A | X86_PG_M | pg_g | + X86_PG_RW | X86_PG_A | X86_PG_M | pmap_cache_bits(kernel_pmap, VM_MEMATTR_DEFAULT, FALSE); /* @@ -4408,7 +4408,7 @@ pmap_pinit_pml5_pti(vm_page_t pml5pgu) */ pm_pml5u[pmap_pml5e_index(UPT_MAX_ADDRESS)] = pmap_kextract((vm_offset_t)pti_pml4) | - X86_PG_V | X86_PG_RW | X86_PG_A | X86_PG_M | pg_g | + X86_PG_V | X86_PG_RW | X86_PG_A | X86_PG_M | pmap_cache_bits(kernel_pmap, VM_MEMATTR_DEFAULT, FALSE); } From nobody Mon Sep 23 13:03: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 4XC38k1WBZz52G0m; Mon, 23 Sep 2024 13:03: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 4XC38k0jRBz40Z0; Mon, 23 Sep 2024 13:03:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096630; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ihcb+P2aTIcyaziy97tuCDhu4/aCGR12Vynmqi6twys=; b=h75JRocyy64Wo/HI7uIWg/VisXOjUOkEyLNCwYWIYQv7c+KbyOHJ+xnKjw/hAlPe4H+jDv JJqF7MEmB7oAbN3SE70IZ3QTseqKAi0fgKGlWsbK7qQd/mjKI2gHQ3mblhGeVkVRmEpRkB CQ7LTX/UPIXMo/OUDr3oRctJZDcROpx3d3BSuPxIUGyc80guTuSCVuZaLwKBc4gLwvwGAv V7vG5aaCOh0Pfp2FM7bft7MU+5kjTMhikLhINxIwqRIw7TC3ixTDcM/KaT0IKzrjrkZnhk cyDYpS54xyjXHBtTU4RFBAWGRfusEuu2BvubbF677GzNhl5lzfEnnHQ9VI4s7Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096630; a=rsa-sha256; cv=none; b=TZqNt6oIGnWuOcrZDjTDg+fB6b6YEMmeKyXRrcYA03Gy0CIYc1G/gqPHyV/yADUpIhYFk/ inL7PTk8QU4pbOdneQD2lHP11o3Ls29jZHKQyN342aG41YWow5QCP0n6MT57eHIZVyNudX FL3jQ+1DCGefVndpwK+IESgVbIqae1NpSqb8IGuFDLbDgOFp6sZHsjjjHLGuLJuJvH5Wu6 Lz5OjUv+eVrRTL/pr4uAONvIDTTiXatVBMCYdBfY946tPOUmM3qDuAe+8TpCO+wcnRod7f /yGnKRIvdvbpuLTNSqemJGGMBMGNavBLcshCqJpKF2PQPsyHTTh20+8evCsgsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096630; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ihcb+P2aTIcyaziy97tuCDhu4/aCGR12Vynmqi6twys=; b=ugznFP2YO7XwdDwY6d3f2RnipwjkVdXvSBl8GRaTZ3zrpv1Z1j+sqpiXAP1FilgccxKzQK XMijNh3f2eHUH7bemCXT6kToB7ukHzkchPiQ+b7lHCA3ZSz7XH4aeTfONIgOZ2e8IP7nZI uM9THPxFnb7+C7Ptj5doZXrVjBhyGJVwopS5qO032nVJRvhLMzft2EG5+WWDLMkKjXUaQA zfe3B4NKQWVCcBoLuXKNPVuQ8j+sQtz3AHdBLWKTAfFNEgFDUENLtsk+9W2Z5fBIhaHuJ2 IIo3E1VXZXePDZnQvj2HOjeOCToIVKayYhHBJorQyhp3gh1Cp6WVsHMnxieFgA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38k0KPYzmVY; Mon, 23 Sep 2024 13:03: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 48ND3nlt007329; Mon, 23 Sep 2024 13:03:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3nZe007326; Mon, 23 Sep 2024 13:03:49 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:49 GMT Message-Id: <202409231303.48ND3nZe007326@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: ad6b949da57e - stable/14 - pmap_bootstrap_la57(): reload IDT List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ad6b949da57ea6a34a4aaaf721fe36fad053d14a Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ad6b949da57ea6a34a4aaaf721fe36fad053d14a commit ad6b949da57ea6a34a4aaaf721fe36fad053d14a Author: Konstantin Belousov AuthorDate: 2024-09-16 16:36:31 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 pmap_bootstrap_la57(): reload IDT (cherry picked from commit bbb00b1719f11c58efd5375aebc30ccd13bf0906) --- sys/amd64/amd64/pmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 0db1af00874c..72929f98a0cb 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2264,6 +2264,7 @@ pmap_bootstrap_la57(void *arg __unused) ssdtosyssd(&gdt_segs[GPROC0_SEL], (struct system_segment_descriptor *)&__pcpu[0].pc_gdt[GPROC0_SEL]); ltr(GSEL(GPROC0_SEL, SEL_KPL)); + lidt(&r_idt); if (bootverbose) printf("LA57 trampoline returned, CR4 %#lx\n", rcr4()); From nobody Mon Sep 23 13:03: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 4XC38m5wyMz52Fgq; Mon, 23 Sep 2024 13:03: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 4XC38m3C0vz40jK; Mon, 23 Sep 2024 13:03:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096632; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xxQ5GJjv76ZDI9LTjbCqIilyLPQll5jsHUydGc+LvLI=; b=RH/bH1jY69yfomYXKBnM5pfbNOWn2ZEPVksmCazlSu2NJv0EeQErLv2MEbYbZN1evWNm/D L0eChhPKpWLM+CRQH4qbUZgLS4GOUudoz9LEJEGDrDPva1eSPI5MbOkaF5ru3H41GyMty3 d7DVp7huuv4NVZ5gPr+qoOzlZeroBaq1858kNEAKJK16yvzBM9RVvsdVnMZFKIeOlyiZsD wZgtYvJ/6FBtkVRHWSkg0IX4BjMkwezSJxMOUrbe+ut250X+3Zibx7uNQR7LUgMhvMOn9s Xc2GUvHPqMW1fJa6ql4zzS+GGBMQrQP94BDvz6XGwZkF06KqmoMAUsfo4zGpIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096632; a=rsa-sha256; cv=none; b=DdEGk+GiwxKfK2w3dGU23xV75EC8/MQ1xubPvSbGF9rIVyIUHIxdBNe7IQrDiVaZd5uHb3 lI/TGfUvhszxYBB9Db4ls333OA2Ky607K4ngn7LTqpQCYhTFKGPJmNRJ15gZoRyD/LwMz+ xESE73XJgxCxHcDyWsFmAaNi+6N+nuK4ga7WDjI0yuX26wcxxL9NZTYTE/stAdQkKJSznI HdjtKz0ORolbfPWme8i42RRdZVw915CX90tDpjm85H+85QpEGqx7vr0CRevvpTx4yaFFlM ksO3cmNbp2niitEjyNcGsWKgosodLYB7KeQWjWlzAoY1zYSZgLwCOE1Xzhb1yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096632; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xxQ5GJjv76ZDI9LTjbCqIilyLPQll5jsHUydGc+LvLI=; b=NCI18H3fT9uq5+S/Sv405UVH2G4MuPIRxYpmtU3ftm8DrEGkYSZ/nUKVL4DcuPTWvZhaKo QG4hEsT0QrRVRr0EP9bZAFfiDI2xRgEVwC+7vZu+MAxdpyWDv4252TvUYZZ/Kuu4Ra5fYS Hx/RU3l+Pzt0gQ9Yq97mbMgAuTl3z14pyrmtYfw9qTaank/bcQWVYLMGtqyfrztJOKnttP EuLtqC7wK7X3Zaar4SpRBw3ELYxCRhKICK9/fs6I5od5+JrQymSM9LiiN4LDoXLx50sK1P oA/yHDK8FogsZmExxtK3RkQyKPPilubnOW2BWzvOfq8Qv5+wacVLgJp1nT4HGQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38m2mTtzmVZ; Mon, 23 Sep 2024 13:03: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 48ND3qXo007448; Mon, 23 Sep 2024 13:03:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3qVn007445; Mon, 23 Sep 2024 13:03:52 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:52 GMT Message-Id: <202409231303.48ND3qVn007445@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: 1ed40b45066d - stable/14 - amd64: pml5 entries do not support PAT bits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1ed40b45066dedea10fb306da8ca258bd7d69a40 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=1ed40b45066dedea10fb306da8ca258bd7d69a40 commit 1ed40b45066dedea10fb306da8ca258bd7d69a40 Author: Konstantin Belousov AuthorDate: 2024-09-16 18:34:47 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 amd64: pml5 entries do not support PAT bits (cherry picked from commit e134cd9580ad62e87c8e8678bdbc45936b11ee86) --- sys/amd64/amd64/pmap.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 567382f9924f..9e6196de2e89 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -4371,15 +4371,13 @@ pmap_pinit_pml5(vm_page_t pml5pg) * entering all existing kernel mappings into level 5 table. */ pm_pml5[pmap_pml5e_index(UPT_MAX_ADDRESS)] = KPML4phys | X86_PG_V | - X86_PG_RW | X86_PG_A | X86_PG_M | - pmap_cache_bits(kernel_pmap, VM_MEMATTR_DEFAULT, FALSE); + X86_PG_RW | X86_PG_A | X86_PG_M; /* * Install self-referential address mapping entry. */ pm_pml5[PML5PML5I] = VM_PAGE_TO_PHYS(pml5pg) | - X86_PG_RW | X86_PG_V | X86_PG_M | X86_PG_A | - pmap_cache_bits(kernel_pmap, VM_MEMATTR_DEFAULT, FALSE); + X86_PG_RW | X86_PG_V | X86_PG_M | X86_PG_A; } static void @@ -4408,8 +4406,7 @@ pmap_pinit_pml5_pti(vm_page_t pml5pgu) */ pm_pml5u[pmap_pml5e_index(UPT_MAX_ADDRESS)] = pmap_kextract((vm_offset_t)pti_pml4) | - X86_PG_V | X86_PG_RW | X86_PG_A | X86_PG_M | - pmap_cache_bits(kernel_pmap, VM_MEMATTR_DEFAULT, FALSE); + X86_PG_V | X86_PG_RW | X86_PG_A | X86_PG_M; } /* Allocate a page table page and do related bookkeeping */ From nobody Mon Sep 23 13:03:53 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 4XC38p0HVQz52Fcs; Mon, 23 Sep 2024 13:03: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 4XC38n4Txsz40jk; Mon, 23 Sep 2024 13:03:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096633; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fnhcO8zvkxwDUQewWIycChQqfgeCHl4E9DeW+XiyEqU=; b=hHb4LHpVouYdS0wbLuv10l0cE1oRmmAGBBgF6Axdfh7smzB2sBBR5X5hirvaw7MuSjwTV1 8EBtQlqp3wPkIT13znOiSAoUFuq+ZJ0xH7dQ2PKNjou9+IV+Ld+fAYL81AYA1280JZ71k2 ag0mMpSsWxV9Pqfs8iP4JgVrTlxwWj4jOAW7/TkTBZjqozyEKGnYDhemje0qGhdQ6odY3q FVhkDK9LEmV8DslGWtR1oJb1AJHtQ85L4fHbhC8WJO543N9/PfWK0r37b4cRmrdnWYuhFN ss5WHn+JgPSUCLVImEWD9kEQkIWbQA6n3C0+kT+ucmBj4zJqWEzfr1IaF6IAuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727096633; a=rsa-sha256; cv=none; b=NVD18RBSAypxs/csr2hEvbnhoqJ6VTvehJVV/4XxsJZ4U5g+cmKkLo/fopsvI4G0G/USB4 1U20vazgMlwBK4OYBRH8ds2veRDYMc4fcAiYbAbRu9e7VrkPGyux/C/Ts2GeE5OuHoT5i2 PtK3x/GIulSKSk7/tsMxhKeal1zwDMnocMMlYwteVwnUEAmkvpNyAb1qwgvu9jFh1IrJcc y4krQDUmfJUs3X2ZPMM8qz+xAkK7LVW3wpHL0nCTW5/1Fg3izeQLogWvJ7mr9TZKMna05E 03Qmh0/7tgbZAVrOQBLl68cp88V5uSWfleYatB19yD47NCg5XjxxY7cOSb2Dmg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727096633; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fnhcO8zvkxwDUQewWIycChQqfgeCHl4E9DeW+XiyEqU=; b=N7ZmBXM31v7BuMsENgMAf/qbPvFZ3sNPfXZWrIB18gjrDxrBW74hA/d+ATh/isPwEmcCzM i1hKa+AxTt7ILNomkrfif6KvAMp6W+Yo1vTTsEgkiHEFDHLR4WnLIkVU4vgWiMFyd64sCe zJYiWekBfipOAh3wJVcEP76tCybj+ysojORL32wfWM3+RPAUcb07ZsvMgqbnbWDbasFTXc ldrNAK4JRSxDeUqfh0+28Zp19ZJiEqyzzETqCiSZVIfWKNcEwNz3TJmRmTGFFGiHO/gOhE zcw3KuRppRcKtmn6tvv2SajQNxmLQm8UZq+cZsLhj9M1pyPg9KUpQgAFC0uoNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XC38n40NVzmf3; Mon, 23 Sep 2024 13:03: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 48ND3rlf007498; Mon, 23 Sep 2024 13:03:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48ND3r15007495; Mon, 23 Sep 2024 13:03:53 GMT (envelope-from git) Date: Mon, 23 Sep 2024 13:03:53 GMT Message-Id: <202409231303.48ND3r15007495@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: 73f2b9f05a6b - stable/14 - sysarch: improve checks for max user address List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 73f2b9f05a6b613e9aa6829101d63ec4e5a2d200 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=73f2b9f05a6b613e9aa6829101d63ec4e5a2d200 commit 73f2b9f05a6b613e9aa6829101d63ec4e5a2d200 Author: Konstantin Belousov AuthorDate: 2024-09-16 19:55:06 +0000 Commit: Konstantin Belousov CommitDate: 2024-09-23 13:03:07 +0000 sysarch: improve checks for max user address (cherry picked from commit 666303f5980896346c455bc949e49952220d02b7) --- sys/amd64/amd64/sys_machdep.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/amd64/amd64/sys_machdep.c b/sys/amd64/amd64/sys_machdep.c index aae3743f0e91..39c89e2aad87 100644 --- a/sys/amd64/amd64/sys_machdep.c +++ b/sys/amd64/amd64/sys_machdep.c @@ -48,6 +48,7 @@ #include #include #include +#include #include #include @@ -316,7 +317,7 @@ sysarch(struct thread *td, struct sysarch_args *uap) case AMD64_SET_FSBASE: error = copyin(uap->parms, &a64base, sizeof(a64base)); if (error == 0) { - if (a64base < VM_MAXUSER_ADDRESS) { + if (a64base < curproc->p_sysent->sv_maxuser) { set_pcb_flags(pcb, PCB_FULL_IRET); pcb->pcb_fsbase = a64base; td->td_frame->tf_fs = _ufssel; @@ -334,7 +335,7 @@ sysarch(struct thread *td, struct sysarch_args *uap) case AMD64_SET_GSBASE: error = copyin(uap->parms, &a64base, sizeof(a64base)); if (error == 0) { - if (a64base < VM_MAXUSER_ADDRESS) { + if (a64base < curproc->p_sysent->sv_maxuser) { set_pcb_flags(pcb, PCB_FULL_IRET); pcb->pcb_gsbase = a64base; td->td_frame->tf_gs = _ugssel; From nobody Mon Sep 23 21:33: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 4XCGSX5NVhz5WXvh; Mon, 23 Sep 2024 21:33: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 4XCGSX4gF1z4kpr; Mon, 23 Sep 2024 21:33:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727127196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dM6E3FUZ/TQQWs/5N8PW5FpipfuZvfNBHxrmVjvdGto=; b=ioFJdun4xhYIbI+lkHfhrCfH/U5/YpzIdRG0L8fU0Kqe5wYfSeY7QWlvTB1Haqi37Htu0S 3AyJ5lPGuSafNM6fNmw1jVjiibSmRZ2qIaDkSpZGYuAVCBj+OBn6x5oKMUuO/0f4ZQQYBB pO4vYvk7LOQ/gtDju6Q6/F362szIMPmQcaZYTdbi2083vTUFJlmg19LfZAylJcW/XrW+N+ Xez69qA0svgJm6wLkZos1TXS67SjQJ+1yH+r5s1qAE8qkx09o1TTn7pHsSHybT6WTaTrdW 6aqRy6NQd4i1w+DZCSipShbbccfO3VO8zRmRRcVYeQJi4bRvV/LEnhJAj8bHgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727127196; a=rsa-sha256; cv=none; b=R/C0njNEXAZZIkPpg+Lxtq4nGgp4ADV9GPXdGwuHk4I/8lZs6XXt4SSNDOH5QMSKslZ9VQ y5BSe0yn5nB+mAUf8ug/2OzBl0i6EeLFp71Dvx8FG1J/buk6xKMIuxL7xUxldnaP4S1d22 WY+cnOnOBorHg+maEJEyZkhu6rYQhpwupVCaQoLFOnr/M5tj4ECVz7HFBSe3Z2mdu8Nc8Q /87dQjqqCOpXOg+0VAF0CNC7UsXi5ItBGQ93ZjMGLAzx+1XZJnd4Qz5RRFrTpdg778Pyjo aW08tXXiQ41xas9X+L7PAs31YdynIOxoL4b24kG3+87XvgnP3stpMIX0RR8PZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727127196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dM6E3FUZ/TQQWs/5N8PW5FpipfuZvfNBHxrmVjvdGto=; b=iGpBOaX0p3ySNeLyxZ1DGfiPNqDodEurhIj2rGJIVPaSDPoZVwB3Zx/MtE33L0p9HaXYlY gi63HmCrc+ZsKJ3WqfKBN9ZKFmKME/su7cefTREsZCZ6uRKWaq3F20Hko//YMo+8dgdHvs DzEKcgyKBh+YKNrkV89IiILFfAKbjAxTiUtF3gTQQLkEkgNrgsv04enoVNjCxuC0ZYFFr0 yINyMYACEeV0MSNubt1ZFzIehruANtP6oZHlTdZEkTuTU55H0YCzqIBwa1pF3YZIDL+3zB ZXunVaZplsz9Jn/V1dmTQFcxiqVvat+NlvfAMT40OK0ChMk7rUxG/0t4ERBhNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCGSX4CYTz11N8; Mon, 23 Sep 2024 21:33: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 48NLXGRL075281; Mon, 23 Sep 2024 21:33:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48NLXGBo075278; Mon, 23 Sep 2024 21:33:16 GMT (envelope-from git) Date: Mon, 23 Sep 2024 21:33:16 GMT Message-Id: <202409232133.48NLXGBo075278@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: 5dd89e6b6777 - stable/13 - pf: use AF_INET6 when comparing IPv6 addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 5dd89e6b6777f40dd0fe329b64470e25f7a5784b Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=5dd89e6b6777f40dd0fe329b64470e25f7a5784b commit 5dd89e6b6777f40dd0fe329b64470e25f7a5784b Author: Kristof Provost AuthorDate: 2024-08-28 13:40:42 +0000 Commit: Kristof Provost CommitDate: 2024-09-23 15:09:37 +0000 pf: use AF_INET6 when comparing IPv6 addresses Reviewed by: zlei MFC after: 1 week Obtained from: OpenBSD, henning , cf7c0bf78a Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D46576 (cherry picked from commit 50ecaf1bd46a834c4fdaf483eb39df7bb62501e3) --- sys/netpfil/pf/pf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index f940950a2479..810966f88a89 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -6821,10 +6821,10 @@ pf_test_state_other(struct pf_kstate **state, int direction, struct pfi_kkif *ki #endif /* INET */ #ifdef INET6 case AF_INET6: - if (PF_ANEQ(pd->src, &nk->addr[pd->sidx], AF_INET)) + if (PF_ANEQ(pd->src, &nk->addr[pd->sidx], AF_INET6)) PF_ACPY(pd->src, &nk->addr[pd->sidx], pd->af); - if (PF_ANEQ(pd->dst, &nk->addr[pd->didx], AF_INET)) + if (PF_ANEQ(pd->dst, &nk->addr[pd->didx], AF_INET6)) PF_ACPY(pd->dst, &nk->addr[pd->didx], pd->af); #endif /* INET6 */ } From nobody Mon Sep 23 21:33: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 4XCGSY2bm1z5WY38; Mon, 23 Sep 2024 21:33: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 4XCGSY1mqqz4ktn; Mon, 23 Sep 2024 21:33:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727127197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0aOVRGO0P36ECIxf0hDN9p8+E09OZpvKjOwxbwTC+Jw=; b=kg6XNGFwc95Q2WMq9d1a+1dMbD/DxUApOjCpf1sESDiQ1D/5ATEF8zbQSxg41wav9OVZ0L CzB7n0A68Zm8f2p0iamrV6C2euattxJkaxz+MRckZjlbIos2ustigoBIjK82lbJFLgJS7n 7vHThEZYFsAEzBbAMeGwX1zI9bg9uEIibUjcw8RrpwXHLoNR3+vsH/zylNi1JIS4d8G+hf AHAUDoQGkc5mkralkB4C8/0FO28e/mEmP7Bui8VJ9uI6kO/cUvrg9OpocPvonR7Qt79nv4 rheKKx0IAIjLQtad9GSdHIS2ITMRspINxVkmLleHAIHR7Vcag+e/+dMybMO6iA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727127197; a=rsa-sha256; cv=none; b=qt6POby7oPh43j6o3pgc8rz4xiwswxlYDCcy5ahtQMhJszoVKhFWeKRE5vn2bVhA7ieb2x 7ZXsyLqslQGkmpZy4la2uhj36gOlg816WXWdePVo7xiGMiQKquFugb8MwyHEdzI4udyjNe yK6IylOZAkhgMulXvt4tufHTQ5GHzN+9C9ZWjO1Nw/BFlHqUwRxqq+nAjU+80gUgKD/L1F vh1JfJnfxjlKHPJ9JTllhmONp1vkqvS3EpMZ02I86VsWWzl5VEeGxhPhk2Ze0NkUXentz4 j3Sum+fU/IRy3CS0Jm0BUPGuarpn7psN1pwLi2XiN65bIxapmI8/vWgivlSMuw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727127197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0aOVRGO0P36ECIxf0hDN9p8+E09OZpvKjOwxbwTC+Jw=; b=mzlzxSbC0JCybhABs3rpDwUIMzIiwNnBoQg4rEusx/h/RhIgfxg5ji+EstyWUAgf21lcL4 qSouyM7k1GONuSMBnZMJUto7gC4Pn0CiS2AKe/lFzmImXVYahAP9vwXeAnY0X3487r1sda gG5v9l0FUjF8cKyvsAofWpg386aMfi0JdPE54rYPOiUFFWJRmHN6mnt5n58qtF8A1WAYBJ gOPsaUYEEI2kKYtnDhaOz5F0sI+LU/viYxTDb+Wxb4GNfDeLgXFDZ6Jfl+EPLZtE0eCeOa 9Rq5ypQoOL/mVD5pxT24/5pBKp6h+xlF/TLNW+iDpEnrAVU0dnhCz86f+jHmbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCGSY1N94z12HS; Mon, 23 Sep 2024 21:33: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 48NLXHI6075385; Mon, 23 Sep 2024 21:33:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48NLXHK4075382; Mon, 23 Sep 2024 21:33:17 GMT (envelope-from git) Date: Mon, 23 Sep 2024 21:33:17 GMT Message-Id: <202409232133.48NLXHK4075382@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: c5a9d5ff0c0c - stable/14 - pf: use AF_INET6 when comparing IPv6 addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: c5a9d5ff0c0cca6b4650e7853580ae3dbd623fd6 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=c5a9d5ff0c0cca6b4650e7853580ae3dbd623fd6 commit c5a9d5ff0c0cca6b4650e7853580ae3dbd623fd6 Author: Kristof Provost AuthorDate: 2024-08-28 13:40:42 +0000 Commit: Kristof Provost CommitDate: 2024-09-23 15:09:42 +0000 pf: use AF_INET6 when comparing IPv6 addresses Reviewed by: zlei MFC after: 1 week Obtained from: OpenBSD, henning , cf7c0bf78a Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D46576 (cherry picked from commit 50ecaf1bd46a834c4fdaf483eb39df7bb62501e3) --- sys/netpfil/pf/pf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index f4ee8fb3344a..d6541bc6627b 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -7413,10 +7413,10 @@ pf_test_state_other(struct pf_kstate **state, struct pfi_kkif *kif, #endif /* INET */ #ifdef INET6 case AF_INET6: - if (PF_ANEQ(pd->src, &nk->addr[pd->sidx], AF_INET)) + if (PF_ANEQ(pd->src, &nk->addr[pd->sidx], AF_INET6)) PF_ACPY(pd->src, &nk->addr[pd->sidx], pd->af); - if (PF_ANEQ(pd->dst, &nk->addr[pd->didx], AF_INET)) + if (PF_ANEQ(pd->dst, &nk->addr[pd->didx], AF_INET6)) PF_ACPY(pd->dst, &nk->addr[pd->didx], pd->af); #endif /* INET6 */ } From nobody Tue Sep 24 04:15: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 4XCRPC5Kyjz5XFrw; Tue, 24 Sep 2024 04:15: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 4XCRPC4bBGz4QL3; Tue, 24 Sep 2024 04:15:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727151359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VqNnb+qGpZkr8I9TLUjDiQVBRBm3Xlk0vS71S2STa/A=; b=ZMBYUgqjClvuhhX+FhC9f3T09gGZnzOlPetdRIgTdyo2umaZYVKQuwaFHFbRb+S8nmb/mI MetqN9lRaLu3anZ1cnc6BHvdmv9yF8cEaV0dEkmacisqP0INI5NdX3qhDDv1C2hrDzRZ0p CDDVNzLcXmG53KY//OyWBD5SWrUY7hCIToa5IVSveCTxa/EdzdXC4IHMzodE9VvMa0GJwP 6O1KOZHjuzpf6gcjbr8wpNkIU2/e5KU9vnPfSbHKHWYX12BtKXoZwz4sIN5hlGAVPh0TvQ M1QEUCCKVmajP7l5EYK1u0YJF0JCEmzqeWmBKWaQTQAldGD3q9qndPQZ/Vd4bQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727151359; a=rsa-sha256; cv=none; b=mk9SUfODdwVtfqFV4dFeQwVGX8ZAzuEgsoDnKZCoFSGIv8bGePJObGqnwgBVhgprCe+3+n GZNFjIU8fX8BhtJX4quyb6uMfUFTj4dTdtjwcEZ4pkTctDPqPzIVTUazxH8KAk0d5/Knbo ACP0td0La7iqrQrYRO0hQtlLMYbsKULhW2O4mWMEJk5Mpty4xJUmZhtuIJ8VlbXaQxFeLI qOKrDpu0wiuNrTvuztNFpCkxuzwN2oIfyvCg6bvEpjOyQgzgR/W4/J7h1/+X/7lDhBEPhy ZjzJAmUOvFL8Ma1QGqB/r3IV0WTCACTWX2k8KJ6l4IBCMBmlTToD7rvRr21edw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727151359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VqNnb+qGpZkr8I9TLUjDiQVBRBm3Xlk0vS71S2STa/A=; b=o4o0vVET3+4jJIVGODTOSbSc1VrZlb45qXG4RXzR4uu5uQTg+iIRKGOqygEnnpngj2Vw3Y yoGD+GnNBNISk+QeFc3Ek9tYYqDaM+zKx7r2LtnB3DUQXcCsVu3qJ3RtxEzQlpd21bgtIP Mn2lyi/nFQ9PJ0Q50eLnlrlPvon/BeomYYzop908ocJZNQRPwy4rKPF5zE5mosWYTj9/GG jLiosICsIbqtV7Xh0s8vepSaALRPDF+c2KYMjkAhEY5YlbNXl7ExOpWAnaqk5PTZRpqNVC 9PTzdeo+HZ6Wa1vimeMuESGxn1OsSq6ST67edNXCb8f85Hbsfz5tZd41vnC3mw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCRPC4BVnzDn5; Tue, 24 Sep 2024 04:15: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 48O4Fx2Y059035; Tue, 24 Sep 2024 04:15:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O4FxUX059032; Tue, 24 Sep 2024 04:15:59 GMT (envelope-from git) Date: Tue, 24 Sep 2024 04:15:59 GMT Message-Id: <202409240415.48O4FxUX059032@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: 87841ead405f - stable/13 - kernel: Fix defining of .init_array and .fini_array sections List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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/13 X-Git-Reftype: branch X-Git-Commit: 87841ead405f7b380cbe18963d02c28ff0163ba2 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=87841ead405f7b380cbe18963d02c28ff0163ba2 commit 87841ead405f7b380cbe18963d02c28ff0163ba2 Author: Zhenlei Huang AuthorDate: 2024-09-02 04:26:47 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 04:15:25 +0000 kernel: Fix defining of .init_array and .fini_array sections These input sections can have decimal numbers as the priority suffix. Clang emits the '%u' form, while SORT is an alias for SORT_BY_NAME, hence will result in wrong order of constructors / destructors in output sections. Fix by using the correct sorting command SORT_BY_INIT_PRIORITY instead [1]. The functions referenced by section .fini_array is in the normal order, but been executed in the reverse order. The order is same with .init_array section. Currently these sections are not used, there should be no functional change. Note: As for the .ctors and .dtors sections, both Clang and GCC emit the priority suffix in the form of '%05u', so there is no semantic difference between SORT_BY_NAME and SORT_BY_INIT_PRIORITY for those sections [2]. This fix is extracted from a bigger patch [3] of hselasky, with additional fix for .fini_array section. 1. https://sourceware.org/binutils/docs/ld/Input-Section-Wildcards.html 2. https://reviews.llvm.org/D91187 3. https://reviews.freebsd.org/D40467 Reviewed by: imp (previous version) Obtained from: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D45194 (cherry picked from commit e15b5ba77d693609c9a452d1b0a1cdd5eb29350d) (cherry picked from commit 1d94490aee5c8353ed08909bbd00af7cfb48a8dc) --- sys/conf/ldscript.amd64 | 4 ++-- sys/conf/ldscript.i386 | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/conf/ldscript.amd64 b/sys/conf/ldscript.amd64 index 9c6e603a5753..72dc573f113e 100644 --- a/sys/conf/ldscript.amd64 +++ b/sys/conf/ldscript.amd64 @@ -93,15 +93,15 @@ SECTIONS .init_array : { PROVIDE_HIDDEN (__init_array_start = .); - KEEP (*(SORT(.init_array.*))) + KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*))) KEEP (*(.fini_array)) - KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } _start_ctors = .; diff --git a/sys/conf/ldscript.i386 b/sys/conf/ldscript.i386 index 6563ed2cd623..c46a9910eb3b 100644 --- a/sys/conf/ldscript.i386 +++ b/sys/conf/ldscript.i386 @@ -87,15 +87,15 @@ SECTIONS .init_array : { PROVIDE_HIDDEN (__init_array_start = .); - KEEP (*(SORT(.init_array.*))) + KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*))) KEEP (*(.init_array)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*))) KEEP (*(.fini_array)) - KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); } _start_ctors = .; From nobody Tue Sep 24 04:32: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 4XCRlq11zNz5XGY5; Tue, 24 Sep 2024 04:32: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 4XCRlq0Twmz4RbQ; Tue, 24 Sep 2024 04:32:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152327; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QOa2M6qmSjEf1s8ZwC7zCk7nnCIEEaieM4BgC9/tZJg=; b=w013aVGXWQECcdFSzkwVhKvNpyleNuLWtvwBS+/ekdXyQpsB9HuMQA5U+mlWCAsphs6rAD mmxhfd+lwltV15AenYWRcf35Kw422MPuMmeUOusqGI1l9SK31O99IRnTZL7ae/3yfEBzn6 4AwfklpqU0OCjLyC3mhGD+rIxi2fX9Luprbu6JX108FrfJEJALwI/XwPaA7dlFwEYQiZ/f jSJ0dZpRgAYxq7YVUGoLHqhWl1Xnn4k9gTX69yZJ8HMDY9jlTIEXDfVAaMigVUhifHyfOc iSeZ5qLc0wkf5Hq06ISdYkaCCTc4PFCZo7ZhXjUCgjth+WkAffHFQFweiTcMkw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727152327; a=rsa-sha256; cv=none; b=qFebwmkgZoj2sAwZ+dSRrOBegvPBYAQon4sxgiCz0eM4dO/EmIzm31+YutHodtHzpWhpCA StVIOnrT4KYfXglQUcUI6dM9jb8WSP0JMuQKTRt6x8AH/YGi6WEEfxkRWdai7XnJy8VzQd gw6MM+R5buZe/bmPP/nKtMRrdgMjG2YEiSHsYAkOM54bVSOlJnoNHXMr6kz+kJYp0Ll/yy +QZ+7B0px/R97ew/vxOpfkkWwkNOm4vgfcR7TzEIFfpfflG3e7LhMJs5tFqQayhfgTqw3x DGhBmh4+4+BwNqjSGgTg4y1SmoKqWVFqcKkwQ3tsb+FXuweJFJnAB2GXt7AbiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152327; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QOa2M6qmSjEf1s8ZwC7zCk7nnCIEEaieM4BgC9/tZJg=; b=IHX6I6EmOw4GPfXn7+38AGBfaykpvL6BgnX1PCB9WKkOrTz7rL2hVYiLyti6CqoIyudkOK UpnBxxzc+/NCL7MLqB/CVlnbOiQaZHOh9IT8l+xGI7RNrPy0d3IpXXnfXshjBTbVUl5xo+ XuZ5ffVq17aH7YMMJfNqL/exxoFzTiEIDf9ycRwTsL0Lx6O1LzQRrBvfknWeOnAWji4bI5 D9h5csaOoX6P+OSEaWxHvA78CxF4rmI68pDj6dp/rzCYTS4O9WHKZebtUXrnxB1pSPccVp BvlL3i7ZvvgepzJZj41mtHBFxRlIpjsAQGC3lGGeNW7IhwbuUT3whkU1BEcVqQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCRlq05L2zF5G; Tue, 24 Sep 2024 04:32: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 48O4W6wW091849; Tue, 24 Sep 2024 04:32:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O4W6wt091846; Tue, 24 Sep 2024 04:32:06 GMT (envelope-from git) Date: Tue, 24 Sep 2024 04:32:06 GMT Message-Id: <202409240432.48O4W6wt091846@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: 6c2430c72b4c - stable/14 - bpf: Add IfAPI analogue for bpf_peers_present() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6c2430c72b4c3516752b7541b100847522ab2225 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=6c2430c72b4c3516752b7541b100847522ab2225 commit 6c2430c72b4c3516752b7541b100847522ab2225 Author: Justin Hibbits AuthorDate: 2023-10-04 20:56:52 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 04:30:48 +0000 bpf: Add IfAPI analogue for bpf_peers_present() An interface's bpf could feasibly not exist, in which case bpf_peers_present() would panic from a NULL pointer dereference. Solve this by adding a new IfAPI that could deal with a NULL bpf, if such could occur in the network stack. Reviewed by: zlei Sponsored by: Juniper Networks, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D42082 (cherry picked from commit 8f31b879ecaf9e738dba631df4606742ee404e8e) bpf: Prefer the boolean form when calling bpf_peers_present() Reviewed by: markj, kp, #network MFC with: 8f31b879ecaf Differential Revision: https://reviews.freebsd.org/D45509 (cherry picked from commit 89204d9dcbe28558fae65936a0e93f44d926b88f) --- sys/dev/firewire/if_fwip.c | 4 ++-- sys/dev/hyperv/netvsc/if_hn.c | 4 ++-- sys/dev/my/if_my.c | 2 +- sys/dev/usb/usb_pf.c | 4 +--- sys/net/bpf.c | 12 ++++++++++++ sys/net/bpf.h | 1 + 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/sys/dev/firewire/if_fwip.c b/sys/dev/firewire/if_fwip.c index 91a27800f308..6350ec9cb56e 100644 --- a/sys/dev/firewire/if_fwip.c +++ b/sys/dev/firewire/if_fwip.c @@ -778,7 +778,7 @@ fwip_stream_input(struct fw_xferq *xferq) * Record the sender ID for possible BPF usage. */ src = ntohl(p[1]) >> 16; - if (bpf_peers_present(if_getbpf(ifp))) { + if (bpf_peers_present_if(ifp)) { mtag = m_tag_alloc(MTAG_FIREWIRE, MTAG_FIREWIRE_SENDER_EUID, 2*sizeof(uint32_t), M_NOWAIT); @@ -878,7 +878,7 @@ fwip_unicast_input(struct fw_xfer *xfer) goto done; } - if (bpf_peers_present(if_getbpf(ifp))) { + if (bpf_peers_present_if(ifp)) { /* * Record the sender ID for possible BPF usage. */ diff --git a/sys/dev/hyperv/netvsc/if_hn.c b/sys/dev/hyperv/netvsc/if_hn.c index 41be4226e592..9f51f5b32199 100644 --- a/sys/dev/hyperv/netvsc/if_hn.c +++ b/sys/dev/hyperv/netvsc/if_hn.c @@ -3263,7 +3263,7 @@ hn_txpkt(if_t ifp, struct hn_tx_ring *txr, struct hn_txdesc *txd) int error, send_failed = 0, has_bpf; again: - has_bpf = bpf_peers_present(if_getbpf(ifp)); + has_bpf = bpf_peers_present_if(ifp); if (has_bpf) { /* * Make sure that this txd and any aggregated txds are not @@ -5973,7 +5973,7 @@ hn_transmit(if_t ifp, struct mbuf *m) omcast = (m->m_flags & M_MCAST) != 0; if (sc->hn_xvf_flags & HN_XVFFLAG_ACCBPF) { - if (bpf_peers_present(if_getbpf(ifp))) { + if (bpf_peers_present_if(ifp)) { m_bpf = m_copypacket(m, M_NOWAIT); if (m_bpf == NULL) { /* diff --git a/sys/dev/my/if_my.c b/sys/dev/my/if_my.c index 3de394f424a2..6064c9de46c3 100644 --- a/sys/dev/my/if_my.c +++ b/sys/dev/my/if_my.c @@ -1146,7 +1146,7 @@ my_rxeof(struct my_softc * sc) * broadcast packet, multicast packet, matches our ethernet * address or the interface is in promiscuous mode. */ - if (bpf_peers_present(if_getbpf(ifp))) { + if (bpf_peers_present_if(ifp)) { bpf_mtap_if(ifp, m); if (if_getflags(ifp) & IFF_PROMISC && (bcmp(eh->ether_dhost, if_getlladdr(sc->my_ifp), diff --git a/sys/dev/usb/usb_pf.c b/sys/dev/usb/usb_pf.c index 3b03e80db489..0e7a75d04d6a 100644 --- a/sys/dev/usb/usb_pf.c +++ b/sys/dev/usb/usb_pf.c @@ -402,9 +402,7 @@ usbpf_xfertap(struct usb_xfer *xfer, int type) bus = xfer->xroot->bus; /* sanity checks */ - if (bus->ifp == NULL || if_getbpf(bus->ifp) == NULL) - return; - if (!bpf_peers_present(if_getbpf(bus->ifp))) + if (bus->ifp == NULL || !bpf_peers_present_if(bus->ifp)) return; totlen = usbpf_xfer_precompute_size(xfer, type); diff --git a/sys/net/bpf.c b/sys/net/bpf.c index 61eb674a7c0a..e65d890f891b 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -2879,6 +2879,12 @@ bpfdetach(struct ifnet *ifp) BPF_UNLOCK(); } +bool +bpf_peers_present_if(struct ifnet *ifp) +{ + return (bpf_peers_present(ifp->if_bpf)); +} + /* * Get a list of available data link type of the interface. */ @@ -3162,6 +3168,12 @@ bpfdetach(struct ifnet *ifp) { } +bool +bpf_peers_present_if(struct ifnet *ifp) +{ + return (false); +} + u_int bpf_filter(const struct bpf_insn *pc, u_char *p, u_int wirelen, u_int buflen) { diff --git a/sys/net/bpf.h b/sys/net/bpf.h index 7b76129aec94..ed3239971db5 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -428,6 +428,7 @@ void bpf_mtap2_if(struct ifnet *, void *, u_int, struct mbuf *); void bpfattach(struct ifnet *, u_int, u_int); void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); void bpfdetach(struct ifnet *); +bool bpf_peers_present_if(struct ifnet *); #ifdef VIMAGE int bpf_get_bp_params(struct bpf_if *, u_int *, u_int *); #endif From nobody Tue Sep 24 04:32: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 4XCRlr36bMz5XG62; Tue, 24 Sep 2024 04:32: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 4XCRlr1DFmz4RMt; Tue, 24 Sep 2024 04:32:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152328; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6emypY/I/Eof+NVPxj82QCc080qIyiyIzYXyIa7EfHY=; b=qBw6rWkN73yx0NEtKQ28I9YkwjmJFoEWeGUXSM56Vo370CJT1EBiXKa0X4qWuW+PNQnM38 2YtakDehFNCQFLSXb82VujPo7IUvnRvXY8mWrPGoA1npi4/lpd/heS+YPqJzC6v+p45q+r 9RSUErvA4FlAWFC/IjoWW9cXP+8WP0x1qbP034a8N4soroXSiMkxZYJBwlm7r0NwrreQLw FWEJF43eUVzvTpGOJn3hm16Im2W/Y7reVpEBvRtcs9Pjo/a5LuS51987heI8VEf62V5fOf xZRRaYLLIHx3TMGon4wxTmExGnKMSCBi39461wluvnCQ7xHmSQ5I+NrpmshTeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727152328; a=rsa-sha256; cv=none; b=F42ijOEeVaJFUOvpaszqpsbqfRfR30i+Vm1lrTIB8F5Dq+LwCeZPcJc8aYs6X3VTk/crOL 6bEN8n55e0BY3aBhmYAa7WoculBbRjarxLuDE3ZJe5cylXveNAKni7rjjgEXrpAcnPy9b8 9jqJ6QWPfnUwqd15DjRDhijlQ/2HawOGhjmj+vFwGjbu1kPjP46oMMRct50O3xDg9hoCDK EDyPDUwh9fxnjaSeeOnNrv2Get8LBN8rcO9p8zxdfUAtwdKKLgV1Lz91LEpQFlGevYk6Ed 3dBqCvSY1ZHS3Wgspk/eUPgX4pH3wnYMnv08bIE1S2RGqRxsOKIxp1cylxWf3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152328; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6emypY/I/Eof+NVPxj82QCc080qIyiyIzYXyIa7EfHY=; b=hTAj/fSebkw77OeiCuQLLya2MSWoHLJv3bIXjVhTYAYPa7JioXvqPAivb9FX7B39+uXWoS bhPcvAUDOg/xsVqdGH0V+H7d+u6FjnxwiPBmTqoaw7oo4ZI1fVHQ7MoRGuxliqQiTL3hC4 kWPeL1CCWJwMQSzfUbOxnZRuNri2d32pPfwv6M4qMwCiHJhZO3CREpgg1ervnRTMifjBXZ l+9C55Lm6NAo9BCmm4xBQQsFHDFb2hhHZsKwfAMIEkqdhcQXmRabOSSguN9pYae4r/8sH/ GlqYGXCXZtHC8wAsvuDDStxDgTv0eQmcFXbC73AM0Gh1JGlNHp/bZV3gV9KXmQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCRlr0rLVzF5K; Tue, 24 Sep 2024 04:32: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 48O4W8aV092937; Tue, 24 Sep 2024 04:32:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O4W8Lw092934; Tue, 24 Sep 2024 04:32:08 GMT (envelope-from git) Date: Tue, 24 Sep 2024 04:32:08 GMT Message-Id: <202409240432.48O4W8Lw092934@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: 4bf231d10070 - stable/14 - bpf: Update a 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: 4bf231d100702021ae38aafa0583d50d2ba94f70 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4bf231d100702021ae38aafa0583d50d2ba94f70 commit 4bf231d100702021ae38aafa0583d50d2ba94f70 Author: Zhenlei Huang AuthorDate: 2024-09-10 10:03:32 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 04:30:49 +0000 bpf: Update a comment This comment was introduced by fix [1], later the fix was refined by change [2], and the context of the usage of `m_get2()` and `m_getjcl()` got lost, then the comment became obscure. Update to reflect the current behavior. 1. f13da24715a7 net/bpf: Fix writing of buffer bigger than PAGESIZE 2. a051ca72e281 Introduce m_get3() Fixes: a051ca72e281 Introduce m_get3() MFC after: 3 days (cherry picked from commit 343bf78e487190557889c8ba53d8080b268867f7) --- sys/net/bpf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index e65d890f891b..c8b2f30dd6bd 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -649,7 +649,7 @@ bpf_movein(struct uio *uio, int linktype, struct ifnet *ifp, struct mbuf **mp, if (len < hlen || len - hlen > ifp->if_mtu) return (EMSGSIZE); - /* Allocate a mbuf for our write, since m_get2 fails if len >= to MJUMPAGESIZE, use m_getjcl for bigger buffers */ + /* Allocate a mbuf, up to MJUM16BYTES bytes, for our write. */ m = m_get3(len, M_WAITOK, MT_DATA, M_PKTHDR); if (m == NULL) return (EIO); From nobody Tue Sep 24 04:32: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 4XCRls6jthz5XGRK; Tue, 24 Sep 2024 04:32: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 4XCRls2Sm6z4RQC; Tue, 24 Sep 2024 04:32:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152329; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+xwQuevP4coXettCN7/dO960j+5ZE1DX8AXMNuSr2x8=; b=J0JEOcJoxHKdNbX++gqkxfYCvU8sjOZvaGqP1y62fD2MgtDHrQ1yn20v6M3+W9QsVtv58J viydj8wgIPwhoZ8na+TqAovFmBkUwWWgzahyx/wX/3fxzMm2Hc+87SnazWxp0LhcuBkg0A mx09Gh0r3+0LFzutazH1GWidhYpBqx5DNMsCoOIDv+VDDC/Qb0z0TWeZuhbrjT4IaKsaYI k0TgidpD3Jj43vAZYz2M2Ljy+lWqDgG1PgxDg7yl7mbzwMVyqCA1tSLndd7ggMETmGRhPB hwlhIsxN011+JW3+YOsPjXg2oBhhkzhUzJme924legX54qxLG4b/PNSp63I08g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727152329; a=rsa-sha256; cv=none; b=ISh5BJfzh+MCRRngadO4ieWiURNuH/yVbf1oguf/Q3BIMmHYzt5dboYoVhllQedALk+2Xn G1bW1r2CwRDKWSlxYgd3ForfcT6X4scO5c8HRbyv8xbP0utQnOESMzfMWEIt+xStFrd6Y0 IXZCA+J7l5/lj4zSioE8xSb097dZw/uxOpSUteH05jELy+0SG+GsOTPO4Lq1jxH4QUDrSA +ghlwX7wRrXQS7YeqAeNUAjw0QJtIS/V7BRaAcLjKT6vSOahlgfFWvHl9iDWb18x0TutVY s03MD4zIoghqBpxJEZwIyYsqF8tQliYZmtrvku14wc/oZqXnGSyyxbERtSpBMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152329; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+xwQuevP4coXettCN7/dO960j+5ZE1DX8AXMNuSr2x8=; b=xRCCiarwrgCtB+ygQW4bnH7ojz1Aawk7mALzGUKFSvDohI0FI8QL3m/9THdEmBmYPqif8O mffzjQ21VIhiQG4DG6i55oXCQDWXj9Qsfo8/c7HbY29fQgRKLt+50BoAWPXc8QOF3RfdVC V15ITdV2xpkOGnSp/ZLdmmHiortp9hLX2L81G3ZbdMn24IvM9zTXYTKhLG6V5mdU/ASIGo w673knhipxkS1zFGStkdXO2J4Vxw08oWsxQo5/A3xKAHGQAHZ+XGFIollOP2e1MJt3UKJp WTnzN4t2vQVI1FZix6400r1se1Ddfo97wcOcxILBa+/MkY9RnKiyGSnv4/IGiQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCRls1vgnz1CyS; Tue, 24 Sep 2024 04:32: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 48O4W9AZ092995; Tue, 24 Sep 2024 04:32:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O4W9hx092992; Tue, 24 Sep 2024 04:32:09 GMT (envelope-from git) Date: Tue, 24 Sep 2024 04:32:09 GMT Message-Id: <202409240432.48O4W9hx092992@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: e8ced9914389 - stable/14 - bpf: Add a comment on the large `#ifdef _KERNEL` block List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: e8ced991438950c49d7acca5d393209bbc143a38 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e8ced991438950c49d7acca5d393209bbc143a38 commit e8ced991438950c49d7acca5d393209bbc143a38 Author: Zhenlei Huang AuthorDate: 2024-09-20 10:06:22 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 04:30:49 +0000 bpf: Add a comment on the large `#ifdef _KERNEL` block This improves readability a little. MFC after: 3 days (cherry picked from commit e30b58846003a54df028686363b5abed59897779) --- sys/net/bpf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net/bpf.h b/sys/net/bpf.h index ed3239971db5..b2dc1ea90bd1 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -451,7 +451,7 @@ bpf_peers_present(struct bpf_if *bpf) bpf_mtap_if((_ifp), (_m)) #define BPF_MTAP2(_ifp,_data,_dlen,_m) \ bpf_mtap2_if((_ifp), (_data), (_dlen), (_m)) -#endif +#endif /* _KERNEL */ /* * Number of scratch memory words (for BPF_LD|BPF_MEM and BPF_ST). From nobody Tue Sep 24 04:32: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 4XCRlv0DKpz5XGRL; Tue, 24 Sep 2024 04:32: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 4XCRlt3F5Fz4RkP; Tue, 24 Sep 2024 04:32:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zwq5cSbk3QqIlpBkFeTwPcA4wyCsXEqHeTpiQaKxooA=; b=fSqrvqwG+rrd2gHjlEoNhBREg2jnR7xZm6wmLP5/0Q6j6xFZkFUHjHoo3ULCNMA2hGtm2t J4qzyTVMdzJRDyYrJxBg6fqz20F7tbqnBurlfzL2LrFypVxtyHUoiQKhEdmjS4k211lbHY e7UhAiR/D1fOpucEFXDBXII2ic9nKvwLdm0BS0t3p/vYpB99KzAcjxiJcZiYt7AaCr1JDd vB0kMWFUHRiXXRfHykS5IUX0iR+LFVbB7Tr4BYovyHKHyjo/Ehd2jImAcSYXIDeUf1AEFw PP9nDsZxeFd4uh8PjqyaHIrruEvMjfVX/doXPXEhI4uOZ7UmW/Erg7mHULE5lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727152330; a=rsa-sha256; cv=none; b=xc05Uw3gvJMUjgcqSzi3IDbpdl6vzYCdSv1SkYJkGWAdQONmdbdBXFod7sAIoMAXAUOgzD yyh1ZCsxeBrheUWSXROoGVFTTU5DgRA9hf/PgnYyLWSvsxlgB7aZpyIC4/wiqIAVMebvc/ m/Y15qlqN6ODcopzdd4ykuJ2r3OX/Ijpmyw5DCu3O9dkHcKgbQiJtxgC/ozhwudcVtPbGn oro9zGZsOhSxdapN2ZDUi1Wl/aG6K3o33wmR5kIrR6gsN6Wj6s9r4ew4X0oWsyHMMVCXm6 nQobam5mPw3CmtuHtpu+H2jJOZZdic5dSRvPs10cmoFsbMXBVzvm26OiD1a3ow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727152330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zwq5cSbk3QqIlpBkFeTwPcA4wyCsXEqHeTpiQaKxooA=; b=J87EnJhO6UHucBE1wDOEsNGoeD/Do41xGAincMs1/vrmYeOS+dKSabbocGxUOsPl6zn3jU sah4mwYsBFhaEvXzkxkvS7kVrVuFOqSN6pdH4np35JPyNgcGkCzvs0LH/DToqRIGv10EeL g0x/gBKplQRMViYG23kNDhZaHLJTyOHFsNiFZPSFI+KucEMXLYirNFzagKtyfjSnFBXO1/ +qq88vYxescjzZKy+JdO22OxRIXICdpEkgFHLpjwwcrUEBIHTxKKhf60cCve2DYu7v3cR4 ZHR0fqVLXsux58FMUWTUoEMNaEN5kGX3YrPoBuNW2vVixt+eW2kzqrihWVauyA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCRlt2pG8zF1v; Tue, 24 Sep 2024 04:32: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 48O4WAYh093045; Tue, 24 Sep 2024 04:32:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O4WAjx093042; Tue, 24 Sep 2024 04:32:10 GMT (envelope-from git) Date: Tue, 24 Sep 2024 04:32:10 GMT Message-Id: <202409240432.48O4WAjx093042@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: f97d0c91eefc - stable/14 - bpf: Some style and white space 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: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f97d0c91eefc8568a11ad47f910cdd9dc7826a72 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=f97d0c91eefc8568a11ad47f910cdd9dc7826a72 commit f97d0c91eefc8568a11ad47f910cdd9dc7826a72 Author: Zhenlei Huang AuthorDate: 2024-09-20 10:06:22 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 04:30:50 +0000 bpf: Some style and white space cleanup MFC after: 3 days (cherry picked from commit 1baf6164e4d671ca1547a3096d8ce8fe69ed4e5c) --- sys/net/bpf.c | 14 +++++++------- sys/net/bpf.h | 44 ++++++++++++++++++++++---------------------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index c8b2f30dd6bd..c0631591a10e 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -174,7 +174,7 @@ struct bpf_dltlist32 { #define BIOCSETFNR32 _IOW('B', 130, struct bpf_program32) #endif -#define BPF_LOCK() sx_xlock(&bpf_sx) +#define BPF_LOCK() sx_xlock(&bpf_sx) #define BPF_UNLOCK() sx_xunlock(&bpf_sx) #define BPF_LOCK_ASSERT() sx_assert(&bpf_sx, SA_XLOCKED) /* @@ -1024,7 +1024,7 @@ bpfread(struct cdev *dev, struct uio *uio, int ioflag) d->bd_state = BPF_IDLE; while (d->bd_hbuf_in_use) { error = mtx_sleep(&d->bd_hbuf_in_use, &d->bd_lock, - PRINET|PCATCH, "bd_hbuf", 0); + PRINET | PCATCH, "bd_hbuf", 0); if (error != 0) { BPFD_UNLOCK(d); return (error); @@ -1067,7 +1067,7 @@ bpfread(struct cdev *dev, struct uio *uio, int ioflag) BPFD_UNLOCK(d); return (EWOULDBLOCK); } - error = msleep(d, &d->bd_lock, PRINET|PCATCH, + error = msleep(d, &d->bd_lock, PRINET | PCATCH, "bpf", d->bd_rtout); if (error == EINTR || error == ERESTART) { BPFD_UNLOCK(d); @@ -2134,7 +2134,7 @@ bpfpoll(struct cdev *dev, int events, struct thread *td) if (devfs_get_cdevpriv((void **)&d) != 0 || d->bd_bif == NULL) return (events & - (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM)); + (POLLHUP | POLLIN | POLLRDNORM | POLLOUT | POLLWRNORM)); /* * Refresh PID associated with this descriptor. @@ -3108,7 +3108,7 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) return (error); } -SYSINIT(bpfdev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE,bpf_drvinit,NULL); +SYSINIT(bpfdev, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, bpf_drvinit, NULL); #else /* !DEV_BPF && !NETGRAPH_BPF */ @@ -3177,13 +3177,13 @@ bpf_peers_present_if(struct ifnet *ifp) u_int bpf_filter(const struct bpf_insn *pc, u_char *p, u_int wirelen, u_int buflen) { - return -1; /* "no filter" behaviour */ + return (-1); /* "no filter" behaviour */ } int bpf_validate(const struct bpf_insn *f, int len) { - return 0; /* false */ + return (0); /* false */ } #endif /* !DEV_BPF && !NETGRAPH_BPF */ diff --git a/sys/net/bpf.h b/sys/net/bpf.h index b2dc1ea90bd1..991d50bcd68c 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -58,7 +58,7 @@ struct ifnet; * BPF_ALIGNMENT. */ #define BPF_ALIGNMENT sizeof(long) -#define BPF_WORDALIGN(x) (((x)+(BPF_ALIGNMENT-1))&~(BPF_ALIGNMENT-1)) +#define BPF_WORDALIGN(x) (((x) + (BPF_ALIGNMENT - 1)) & ~(BPF_ALIGNMENT - 1)) #define BPF_MAXINSNS 512 #define BPF_MAXBUFSIZE 0x80000 @@ -370,8 +370,8 @@ struct bpf_insn { /* * Macros for insn array initializers. */ -#define BPF_STMT(code, k) { (u_short)(code), 0, 0, k } -#define BPF_JUMP(code, k, jt, jf) { (u_short)(code), jt, jf, k } +#define BPF_STMT(code, k) { (u_short)(code), 0, 0, k } +#define BPF_JUMP(code, k, jt, jf) { (u_short)(code), jt, jf, k } /* * Structure to retrieve available DLTs for the interface. @@ -417,24 +417,24 @@ struct bpf_if_ext { struct bpfd_list bif_dlist; /* descriptor list */ }; -void bpf_bufheld(struct bpf_d *d); -int bpf_validate(const struct bpf_insn *, int); -void bpf_tap(struct bpf_if *, u_char *, u_int); -void bpf_tap_if(struct ifnet *, u_char *, u_int); -void bpf_mtap(struct bpf_if *, struct mbuf *); -void bpf_mtap_if(struct ifnet *, struct mbuf *); -void bpf_mtap2(struct bpf_if *, void *, u_int, struct mbuf *); -void bpf_mtap2_if(struct ifnet *, void *, u_int, struct mbuf *); -void bpfattach(struct ifnet *, u_int, u_int); -void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); -void bpfdetach(struct ifnet *); -bool bpf_peers_present_if(struct ifnet *); +void bpf_bufheld(struct bpf_d *d); +int bpf_validate(const struct bpf_insn *, int); +void bpf_tap(struct bpf_if *, u_char *, u_int); +void bpf_tap_if(struct ifnet *, u_char *, u_int); +void bpf_mtap(struct bpf_if *, struct mbuf *); +void bpf_mtap_if(struct ifnet *, struct mbuf *); +void bpf_mtap2(struct bpf_if *, void *, u_int, struct mbuf *); +void bpf_mtap2_if(struct ifnet *, void *, u_int, struct mbuf *); +void bpfattach(struct ifnet *, u_int, u_int); +void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); +void bpfdetach(struct ifnet *); +bool bpf_peers_present_if(struct ifnet *); #ifdef VIMAGE -int bpf_get_bp_params(struct bpf_if *, u_int *, u_int *); +int bpf_get_bp_params(struct bpf_if *, u_int *, u_int *); #endif -void bpfilterattach(int); -u_int bpf_filter(const struct bpf_insn *, u_char *, u_int, u_int); +void bpfilterattach(int); +u_int bpf_filter(const struct bpf_insn *, u_char *, u_int, u_int); static __inline bool bpf_peers_present(struct bpf_if *bpf) @@ -445,11 +445,11 @@ bpf_peers_present(struct bpf_if *bpf) return (!CK_LIST_EMPTY(&ext->bif_dlist)); } -#define BPF_TAP(_ifp,_pkt,_pktlen) \ - bpf_tap_if((_ifp), (_pkt), (_pktlen)) -#define BPF_MTAP(_ifp,_m) \ +#define BPF_TAP(_ifp, _pkt, _pktlen) \ + bpf_tap_if((_ifp), (_pkt), (_pktlen)) +#define BPF_MTAP(_ifp, _m) \ bpf_mtap_if((_ifp), (_m)) -#define BPF_MTAP2(_ifp,_data,_dlen,_m) \ +#define BPF_MTAP2(_ifp, _data, _dlen, _m) \ bpf_mtap2_if((_ifp), (_data), (_dlen), (_m)) #endif /* _KERNEL */ From nobody Tue Sep 24 05:03: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 4XCSRq4D2xz5XJ6s; Tue, 24 Sep 2024 05:03: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 4XCSRq3hf9z4WgG; Tue, 24 Sep 2024 05:03:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727154199; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s/StfHfumnzDkLwv3+GPMMCVNgYz+qQAFAetCEFNjbM=; b=V1O7TWYHoIFIlPm4p83LW+CIMyIpt2CivCXtcTOq+7ZMg+hSnhv41k9SreZzOUvD+78ic3 xOeSW5IJMH+zXNFFBYqvSigf9nL3tNgFcg04waMOOP5fihRmxwTob9Kyj4fmxviw8WMT/H n6ewHwJWyE3rjExgo6q+fkrE/NgOnxBAwjtVtlNwOxzVwzNda5WY8OYh4UHlgV8s1wOTO7 QLc8UufkyMD6kKGyGwMvn1jHF+5KZjficd2BMIcvUmAmNlqqM7xJQuMQJv3lssbSme8S4M M020hjc7NTKwOkdiLXfrDQc1wG4+AltprGkgF4BYm5WZwTiFpUBS8EGwQljpGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727154199; a=rsa-sha256; cv=none; b=aFwz0WLz8K/qKk3rSERKrB9pd6Rk60LAPlizNKMLtu9YPSj1xk27E1tVtieD4bQ1k63oY6 PZDHWEXG6QJtC8qPpTENxSDaLV0q0jPSIXd4XU8ZzcJZT1b3II+d0Aloxqw/PCWzwCpSHy vEfsaQLthJHor0fEXqG6maooid0yPeWqV0gH8hMs/uDW0x7KQI254ohWjPr90vhBhcQ+pa IG+ZYJUMEwMMUsVvlzJU2Qp1NbtpgXg1/91fhZeRjKjyha+i0RYEM3oLWMB7dkRweyS9D8 DY6ObAOIxRTDw9UJZVf/YDsWtsg2qBsEgpXHLiuGKQVJAZmKVpuLpOtBzspXCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727154199; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s/StfHfumnzDkLwv3+GPMMCVNgYz+qQAFAetCEFNjbM=; b=izLSzkfiOZx3pERcAXQIbKP6Dmoy00qrqdDaT8SyFXTRb5vnMAneH+UntCJzVUz+O9/MwS QZ+xRwpEY9C4NoKnYu0auEsoI7F3PrubyyKKbrFpqLvOwDf3klzJ1bpEehFOoGhFMnCXjs +Zp/PbXLaOdlM4rD/D+sElB6nYmLlHYvaDO3hCK1X21zvzAIhGghomQ0ns79VzfX7rzoPu qVxvcv1fZR8y61A6lBwl1cXFi0WS39oO7XuLeEFMlx13dg9gW5XnPic7EU36i+n2rP5qbd TExWvEj/ITTqIAv2zgGwxyK4goWGlRGNZj1jaGXqsEHV+yoqBsSP39ctbqngPw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCSRq3HhkzFqZ; Tue, 24 Sep 2024 05:03: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 48O53JOp046317; Tue, 24 Sep 2024 05:03:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O53JDD046314; Tue, 24 Sep 2024 05:03:19 GMT (envelope-from git) Date: Tue, 24 Sep 2024 05:03:19 GMT Message-Id: <202409240503.48O53JDD046314@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: 7ba975426834 - stable/13 - bpf: Add a comment on the large `#ifdef _KERNEL` block List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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/13 X-Git-Reftype: branch X-Git-Commit: 7ba9754268344da81b697df04ef3d05441022be0 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=7ba9754268344da81b697df04ef3d05441022be0 commit 7ba9754268344da81b697df04ef3d05441022be0 Author: Zhenlei Huang AuthorDate: 2024-09-20 10:06:22 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 05:02:29 +0000 bpf: Add a comment on the large `#ifdef _KERNEL` block This improves readability a little. MFC after: 3 days (cherry picked from commit e30b58846003a54df028686363b5abed59897779) (cherry picked from commit e8ced991438950c49d7acca5d393209bbc143a38) --- sys/net/bpf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net/bpf.h b/sys/net/bpf.h index 347b764735d0..2fe8b6a78647 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -456,7 +456,7 @@ bpf_peers_present(struct bpf_if *bpf) bpf_mtap2((_ifp)->if_bpf,(_data),(_dlen),(_m)); \ } \ } while (0) -#endif +#endif /* _KERNEL */ /* * Number of scratch memory words (for BPF_LD|BPF_MEM and BPF_ST). From nobody Tue Sep 24 05:03: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 4XCSRr5j4vz5XJ6w; Tue, 24 Sep 2024 05:03: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 4XCSRr54wNz4WgH; Tue, 24 Sep 2024 05:03:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727154200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HLkQ6yp0Zlq1zrdbuj77jbrMMglZ3kbhdAepOfKt54k=; b=l/FxWQDxWMcf6wpookaV1xq7i1Pli+hlLexZ+VUJyb0iSsXVD4kA6j/WssHRRzlRplFuXN 73FcF5b8hxkSnCI34UTEc4p+qRRQ+LKG6lpiM8jZjS7r2NMIEgaErzS3XFnwmzSyhqDcW4 nZ8I+aZSf7uh6PYdxPA8kVZ7TK7gEWT49ODWwWsQLNKB2HKVUoxtwO20mq+fSLN9Venzi3 jQ390OGDRl0FKCv2bMb1CIaj8QL58mm5wS4292ZV8m/R4TH7HBgpxCX/hY9eSQPauJ3nbz So8HYCYijNdgo3lhDhP5NOCDTpH+k1WAJWdrXeTJ4nW/NaUNx1D3M+X+Zge+ng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727154200; a=rsa-sha256; cv=none; b=NOF3ITlsnUxwP2d1W2U6aexeoYB6QInlJ/xVU0R4oMdfbRo5g3F9h4iGs14a7CSggkMlPR El6zxA9e9gZtdetFPstIQGrmoTn2SOgQAAa+n9j6tydDw3x9JuEGx6rCmtRBnoXMCnRPQP I0FfIMScT3Oor0ysgn0rNq1jCHXpvQfqzrMKgFPbk0WvyXuFvaeNgope6KT7tLHmuS9aWJ kT7greaWa5XZhuqLaKmoX2QzvN8vE9wUhejXhw4gyFzy9xw3vw/eCwA9tExIBPKr6u5/xD EMO85VRvqLsXrW6mZee9gLTnphInQgBHvqXHZVyj1ABCZS/OOEHKk4/jA5gDTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727154200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HLkQ6yp0Zlq1zrdbuj77jbrMMglZ3kbhdAepOfKt54k=; b=m630VeiaF4uofqo7TrlpCrFr5jpi2yQmlg3lIItUk4jQu0nLQec4SVAWyFw8Jnn+3LjBMb Nn4XEOm9Ozt+HTfSrmX2wkFlDxjGY+8AR9QwoKVTeaKQIeOwZPXXgUsxElOFtoD3k/rPNJ nWTWnXb1612NwDjl9atZ7WPX21v9x+5EkIioODRGJKApxbvbG6KkV21gyFyL+S6PcAc3P1 fA91uauqr9IOeUW+kcTayD7VHjS9ITMeSBcEvIx6taJERidXPxXaQcZppdiydejgLXz5hK YcV9A4Z6jfx10rY+VoWobAmBBu2wDDFPlh7XwV/5jr39Y34wNDIn8EH3n5A5eQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCSRr4J6MzFqb; Tue, 24 Sep 2024 05:03: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 48O53KsL046365; Tue, 24 Sep 2024 05:03:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48O53K1t046362; Tue, 24 Sep 2024 05:03:20 GMT (envelope-from git) Date: Tue, 24 Sep 2024 05:03:20 GMT Message-Id: <202409240503.48O53K1t046362@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: 7b657faa655c - stable/13 - bpf: Some style and white space 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: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7b657faa655ceba6965a8873add57b079b910690 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=7b657faa655ceba6965a8873add57b079b910690 commit 7b657faa655ceba6965a8873add57b079b910690 Author: Zhenlei Huang AuthorDate: 2024-09-20 10:06:22 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-24 05:02:29 +0000 bpf: Some style and white space cleanup MFC after: 3 days (cherry picked from commit 1baf6164e4d671ca1547a3096d8ce8fe69ed4e5c) (cherry picked from commit f97d0c91eefc8568a11ad47f910cdd9dc7826a72) --- sys/net/bpf.c | 19 +++++++++++-------- sys/net/bpf.h | 54 +++++++++++++++++++++++++++--------------------------- 2 files changed, 38 insertions(+), 35 deletions(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index 7aa1dfd302f4..b7c964ac8ac4 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -173,7 +173,7 @@ struct bpf_dltlist32 { #define BIOCSETFNR32 _IOW('B', 130, struct bpf_program32) #endif -#define BPF_LOCK() sx_xlock(&bpf_sx) +#define BPF_LOCK() sx_xlock(&bpf_sx) #define BPF_UNLOCK() sx_xunlock(&bpf_sx) #define BPF_LOCK_ASSERT() sx_assert(&bpf_sx, SA_XLOCKED) /* @@ -641,7 +641,10 @@ bpf_movein(struct uio *uio, int linktype, struct ifnet *ifp, struct mbuf **mp, if (len < hlen || len - hlen > ifp->if_mtu) return (EMSGSIZE); - /* Allocate a mbuf for our write, since m_get2 fails if len >= to MJUMPAGESIZE, use m_getjcl for bigger buffers */ + /* + * Allocate a mbuf for our write, since m_get2 fails if len >= to + * MJUMPAGESIZE, use m_getjcl for bigger buffers + */ if (len < MJUMPAGESIZE) m = m_get2(len, M_WAITOK, MT_DATA, M_PKTHDR); else if (len <= MJUM9BYTES) @@ -1019,7 +1022,7 @@ bpfread(struct cdev *dev, struct uio *uio, int ioflag) d->bd_state = BPF_IDLE; while (d->bd_hbuf_in_use) { error = mtx_sleep(&d->bd_hbuf_in_use, &d->bd_lock, - PRINET|PCATCH, "bd_hbuf", 0); + PRINET | PCATCH, "bd_hbuf", 0); if (error != 0) { BPFD_UNLOCK(d); return (error); @@ -1062,7 +1065,7 @@ bpfread(struct cdev *dev, struct uio *uio, int ioflag) BPFD_UNLOCK(d); return (EWOULDBLOCK); } - error = msleep(d, &d->bd_lock, PRINET|PCATCH, + error = msleep(d, &d->bd_lock, PRINET | PCATCH, "bpf", d->bd_rtout); if (error == EINTR || error == ERESTART) { BPFD_UNLOCK(d); @@ -2129,7 +2132,7 @@ bpfpoll(struct cdev *dev, int events, struct thread *td) if (devfs_get_cdevpriv((void **)&d) != 0 || d->bd_bif == NULL) return (events & - (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM)); + (POLLHUP | POLLIN | POLLRDNORM | POLLOUT | POLLWRNORM)); /* * Refresh PID associated with this descriptor. @@ -3039,7 +3042,7 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) return (error); } -SYSINIT(bpfdev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE,bpf_drvinit,NULL); +SYSINIT(bpfdev, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, bpf_drvinit, NULL); #else /* !DEV_BPF && !NETGRAPH_BPF */ @@ -3087,13 +3090,13 @@ bpfdetach(struct ifnet *ifp) u_int bpf_filter(const struct bpf_insn *pc, u_char *p, u_int wirelen, u_int buflen) { - return -1; /* "no filter" behaviour */ + return (-1); /* "no filter" behaviour */ } int bpf_validate(const struct bpf_insn *f, int len) { - return 0; /* false */ + return (0); /* false */ } #endif /* !DEV_BPF && !NETGRAPH_BPF */ diff --git a/sys/net/bpf.h b/sys/net/bpf.h index 2fe8b6a78647..d6213ebd10f4 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -57,7 +57,7 @@ typedef u_int64_t bpf_u_int64; * BPF_ALIGNMENT. */ #define BPF_ALIGNMENT sizeof(long) -#define BPF_WORDALIGN(x) (((x)+(BPF_ALIGNMENT-1))&~(BPF_ALIGNMENT-1)) +#define BPF_WORDALIGN(x) (((x) + (BPF_ALIGNMENT - 1)) & ~(BPF_ALIGNMENT - 1)) #define BPF_MAXINSNS 512 #define BPF_MAXBUFSIZE 0x80000 @@ -369,8 +369,8 @@ struct bpf_insn { /* * Macros for insn array initializers. */ -#define BPF_STMT(code, k) { (u_short)(code), 0, 0, k } -#define BPF_JUMP(code, k, jt, jf) { (u_short)(code), jt, jf, k } +#define BPF_STMT(code, k) { (u_short)(code), 0, 0, k } +#define BPF_JUMP(code, k, jt, jf) { (u_short)(code), jt, jf, k } /* * Structure to retrieve available DLTs for the interface. @@ -416,20 +416,20 @@ struct bpf_if_ext { struct bpfd_list bif_dlist; /* descriptor list */ }; -void bpf_bufheld(struct bpf_d *d); -int bpf_validate(const struct bpf_insn *, int); -void bpf_tap(struct bpf_if *, u_char *, u_int); -void bpf_mtap(struct bpf_if *, struct mbuf *); -void bpf_mtap2(struct bpf_if *, void *, u_int, struct mbuf *); -void bpfattach(struct ifnet *, u_int, u_int); -void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); -void bpfdetach(struct ifnet *); +void bpf_bufheld(struct bpf_d *d); +int bpf_validate(const struct bpf_insn *, int); +void bpf_tap(struct bpf_if *, u_char *, u_int); +void bpf_mtap(struct bpf_if *, struct mbuf *); +void bpf_mtap2(struct bpf_if *, void *, u_int, struct mbuf *); +void bpfattach(struct ifnet *, u_int, u_int); +void bpfattach2(struct ifnet *, u_int, u_int, struct bpf_if **); +void bpfdetach(struct ifnet *); #ifdef VIMAGE -int bpf_get_bp_params(struct bpf_if *, u_int *, u_int *); +int bpf_get_bp_params(struct bpf_if *, u_int *, u_int *); #endif -void bpfilterattach(int); -u_int bpf_filter(const struct bpf_insn *, u_char *, u_int, u_int); +void bpfilterattach(int); +u_int bpf_filter(const struct bpf_insn *, u_char *, u_int, u_int); static __inline bool bpf_peers_present(struct bpf_if *bpf) @@ -440,21 +440,21 @@ bpf_peers_present(struct bpf_if *bpf) return (!CK_LIST_EMPTY(&ext->bif_dlist)); } -#define BPF_TAP(_ifp,_pkt,_pktlen) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) \ - bpf_tap((_ifp)->if_bpf, (_pkt), (_pktlen)); \ +#define BPF_TAP(_ifp, _pkt, _pktlen) do { \ + if (bpf_peers_present((_ifp)->if_bpf)) \ + bpf_tap((_ifp)->if_bpf, (_pkt), (_pktlen)); \ } while (0) -#define BPF_MTAP(_ifp,_m) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) { \ - M_ASSERTVALID(_m); \ - bpf_mtap((_ifp)->if_bpf, (_m)); \ - } \ +#define BPF_MTAP(_ifp, _m) do { \ + if (bpf_peers_present((_ifp)->if_bpf)) { \ + M_ASSERTVALID(_m); \ + bpf_mtap((_ifp)->if_bpf, (_m)); \ + } \ } while (0) -#define BPF_MTAP2(_ifp,_data,_dlen,_m) do { \ - if (bpf_peers_present((_ifp)->if_bpf)) { \ - M_ASSERTVALID(_m); \ - bpf_mtap2((_ifp)->if_bpf,(_data),(_dlen),(_m)); \ - } \ +#define BPF_MTAP2(_ifp, _data, _dlen, _m) do { \ + if (bpf_peers_present((_ifp)->if_bpf)) { \ + M_ASSERTVALID(_m); \ + bpf_mtap2((_ifp)->if_bpf, (_data), (_dlen), (_m)); \ + } \ } while (0) #endif /* _KERNEL */ From nobody Tue Sep 24 16:34:24 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 4XClnF1DGkz5Y2wK; Tue, 24 Sep 2024 16:34: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 4XClnD6wg2z4NvH; Tue, 24 Sep 2024 16:34:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727195664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/pw6HPer7zpEghLxL3j5xqTqNQJ0ocViJCAWcrUEOuc=; b=p2eTBnAY7fkTrjcZ3olXMelHwDsXe/jUqMKIFiemxayuxaKi5OmORfu1RGCyTX1Bf9Hclu hRvaGx44VYaZ0y6N5aXx+BqrmXpyW6aXJkqNv7f8KWARP6MTDxF9adSSi9KjeQUGYQUPgg xUo+ASiiu/osKcVQ5Rixp86cm9wvVroemiX+2zS+qGlVy3NlSubF+x/cUgmdl2w4TGXs/V Y3xbaUL7wn0us657N3XfiacMe+e5yGDEpIlfkDafGaR3dRulmziHdYLD+sAYZrh+zUWo2P SmKsyUvXr6/CMpm0LqDQ0Fw3MLz/fSL9txJUqyO+d8oIR5F2AUbyuPc6hpOzOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727195664; a=rsa-sha256; cv=none; b=agb0+YjIHCKLiP+Ws4bE1h63Fd8Ls5bCzsFd25h8MFK9jaCtCoNv/KwQOPtdsmoXk6seOC r8DJbsHtlEKeP8NufWoLIO2kihAiszD7QLD47uHYI2D6IkQQMhupLXac+kVmPJT3g9+5ok iN/AGk1nm0ujZ0amWnpz7Up+dmsoRum5YjUWTpR1k0L/29ASiUwfiWD73CNWum0U7wE6np /gl695RozXypbFrwv3OF+lMyAjSv8BIyxfhi79+U4FV+FUc+StV10DzllwE5Y5WcLAcqal Er7Zd5k/46u9bcYOm8SNuAcjWJSDW45NFdMHVF6/jvFUL6r18F97gRJof1ESyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727195664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/pw6HPer7zpEghLxL3j5xqTqNQJ0ocViJCAWcrUEOuc=; b=vKn0LNITthVUq71fKMOn3FOuGt2L+mDnu0S4UkJUd3dixNTVy9ugkPr/cbZOX50Nyc0hTU 4hdgybVeJh+O72jev+Ar3h06mWq7kzZ9G6D2hAaiE5vxq9qCuhB8Zkwju8qyr+6fE7sJxw bVdUSIvj6B6KOwy9nfrScVNVyt7yeiJOSzbglAcNXW3T3hP3Le2Kf2VosRcxsazmsoUQ2U 7mz0wmkSMoYg7g+ugk/1L8IVs9n2QbEI5feMvgMCuVVsHbbRY1Hewe9rcMb8Bxlutw9qTx pEUA5Jl8fCSn8nC4Y9Ab48QFb3x7VqGTxQeytt83dg3F8kDteGjhhVY92fdV8A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XClnD6X79zcW3; Tue, 24 Sep 2024 16:34:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48OGYOn1024424; Tue, 24 Sep 2024 16:34:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OGYOtC024421; Tue, 24 Sep 2024 16:34:24 GMT (envelope-from git) Date: Tue, 24 Sep 2024 16:34:24 GMT Message-Id: <202409241634.48OGYOtC024421@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Stefan =?utf-8?Q?E=C3=9Fer?= Subject: git: bb18c65a9177 - stable/13 - vendor/bc: upgrade to version 7.0.2 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: se X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bb18c65a917749ff42c0d610f1e311a47bfaac7f Auto-Submitted: auto-generated The branch stable/13 has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=bb18c65a917749ff42c0d610f1e311a47bfaac7f commit bb18c65a917749ff42c0d610f1e311a47bfaac7f Author: Stefan Eßer AuthorDate: 2024-09-18 05:55:46 +0000 Commit: Stefan Eßer CommitDate: 2024-09-24 16:34:16 +0000 vendor/bc: upgrade to version 7.0.2 This update fixes exiting from an interactive bc session with ^D on FreeBSD and Linux when using editline. This bug was caused by the macOS fix for editline in version 7.0.0, which has been reverted in this version. Reported by: mack@macktronics.com (cherry picked from commit c2c85f88902d18d2e9702381f1628112e15a5c3c) (cherry picked from commit 9b04aee86ccd58a6f3c936e0cd95bb9305a69848) --- contrib/bc/NEWS.md | 8 ++++++++ contrib/bc/include/history.h | 24 ++++++++++++++++++++++++ contrib/bc/include/version.h | 2 +- contrib/bc/manuals/bc/A.1 | 6 +++--- contrib/bc/manuals/bc/A.1.md | 4 ++-- contrib/bc/manuals/bc/E.1 | 2 +- contrib/bc/manuals/bc/EH.1 | 2 +- contrib/bc/manuals/bc/EHN.1 | 2 +- contrib/bc/manuals/bc/EN.1 | 2 +- contrib/bc/manuals/bc/H.1 | 6 +++--- contrib/bc/manuals/bc/H.1.md | 4 ++-- contrib/bc/manuals/bc/HN.1 | 6 +++--- contrib/bc/manuals/bc/HN.1.md | 4 ++-- contrib/bc/manuals/bc/N.1 | 6 +++--- contrib/bc/manuals/bc/N.1.md | 4 ++-- contrib/bc/src/history.c | 13 ++++++++++++- 16 files changed, 69 insertions(+), 26 deletions(-) diff --git a/contrib/bc/NEWS.md b/contrib/bc/NEWS.md index 8156b673ce04..e3b1f9ecb7bc 100644 --- a/contrib/bc/NEWS.md +++ b/contrib/bc/NEWS.md @@ -1,5 +1,13 @@ # News +## 7.0.2 + +This is a production release that fixes `Ctrl+d` on FreeBSD and Linux when using +`editline`. + +This bug was caused by the macOS fix in `7.0.0`. Unfortunately, this means that +macOS does not respond properly to `Ctrl+d`. + ## 7.0.1 This is a production release that fixes a warning using GCC on FreeBSD. diff --git a/contrib/bc/include/history.h b/contrib/bc/include/history.h index 460524bd7b87..13f6dc6e985c 100644 --- a/contrib/bc/include/history.h +++ b/contrib/bc/include/history.h @@ -120,6 +120,30 @@ typedef struct BcHistory extern const char bc_history_editrc[]; extern const size_t bc_history_editrc_len; +#ifdef __APPLE__ + +/** + * Returns true if the line is a valid line, false otherwise. + * @param line The line. + * @param len The length of the line. + * @return True if the line is valid, false otherwise. + */ +#define BC_HISTORY_INVALID_LINE(line, len) \ + ((line) == NULL && ((len) == -1 || errno == EINTR)) + +#else // __APPLE__ + +/** + * Returns true if the line is a valid line, false otherwise. + * @param line The line. + * @param len The length of the line. + * @return True if the line is valid, false otherwise. + */ +#define BC_HISTORY_INVALID_LINE(line, len) \ + ((line) == NULL && (len) == -1 && errno == EINTR) + +#endif // __APPLE__ + #else // BC_ENABLE_EDITLINE #if BC_ENABLE_READLINE diff --git a/contrib/bc/include/version.h b/contrib/bc/include/version.h index 4d2f6acfb433..a4fb8def5024 100644 --- a/contrib/bc/include/version.h +++ b/contrib/bc/include/version.h @@ -37,6 +37,6 @@ #define BC_VERSION_H /// The current version. -#define VERSION 7.0.1 +#define VERSION 7.0.2 #endif // BC_VERSION_H diff --git a/contrib/bc/manuals/bc/A.1 b/contrib/bc/manuals/bc/A.1 index 4750598b55fc..adeb62f82e6a 100644 --- a/contrib/bc/manuals/bc/A.1 +++ b/contrib/bc/manuals/bc/A.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/A.1.md b/contrib/bc/manuals/bc/A.1.md index 56f7c52fb2cd..e89305b1af44 100644 --- a/contrib/bc/manuals/bc/A.1.md +++ b/contrib/bc/manuals/bc/A.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/E.1 b/contrib/bc/manuals/bc/E.1 index 62b18165fe92..e2f1b034e69a 100644 --- a/contrib/bc/manuals/bc/E.1 +++ b/contrib/bc/manuals/bc/E.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EH.1 b/contrib/bc/manuals/bc/EH.1 index 69f28e875990..c132a0b76a49 100644 --- a/contrib/bc/manuals/bc/EH.1 +++ b/contrib/bc/manuals/bc/EH.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EHN.1 b/contrib/bc/manuals/bc/EHN.1 index fb453b05363d..e3395b1cc20d 100644 --- a/contrib/bc/manuals/bc/EHN.1 +++ b/contrib/bc/manuals/bc/EHN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EN.1 b/contrib/bc/manuals/bc/EN.1 index 4833e3e70ddc..c1ccbec567ec 100644 --- a/contrib/bc/manuals/bc/EN.1 +++ b/contrib/bc/manuals/bc/EN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/H.1 b/contrib/bc/manuals/bc/H.1 index 4787435ae052..9dc46ee50dee 100644 --- a/contrib/bc/manuals/bc/H.1 +++ b/contrib/bc/manuals/bc/H.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/H.1.md b/contrib/bc/manuals/bc/H.1.md index aa313cd14b63..fbc0658d8171 100644 --- a/contrib/bc/manuals/bc/H.1.md +++ b/contrib/bc/manuals/bc/H.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/HN.1 b/contrib/bc/manuals/bc/HN.1 index 73c243310d5c..7b4577f2dbd3 100644 --- a/contrib/bc/manuals/bc/HN.1 +++ b/contrib/bc/manuals/bc/HN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/HN.1.md b/contrib/bc/manuals/bc/HN.1.md index dc537ffe4cfa..015035c14daf 100644 --- a/contrib/bc/manuals/bc/HN.1.md +++ b/contrib/bc/manuals/bc/HN.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/N.1 b/contrib/bc/manuals/bc/N.1 index f66ae06d9c3a..193e0d15f6fb 100644 --- a/contrib/bc/manuals/bc/N.1 +++ b/contrib/bc/manuals/bc/N.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/N.1.md b/contrib/bc/manuals/bc/N.1.md index ad1e603392ae..859c32e3e774 100644 --- a/contrib/bc/manuals/bc/N.1.md +++ b/contrib/bc/manuals/bc/N.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/src/history.c b/contrib/bc/src/history.c index 6ae9785d9a79..32a19f71d777 100644 --- a/contrib/bc/src/history.c +++ b/contrib/bc/src/history.c @@ -264,7 +264,18 @@ bc_history_line(BcHistory* h, BcVec* vec, const char* prompt) errno = EINTR; // Get the line. - while (line == NULL && (len == -1 || errno == EINTR)) + // + // XXX: Why have a macro here? Because macOS needs to be special. Honestly, + // it's starting to feel special like Windows at this point. Anyway, the + // second SIGWINCH signal of multiple will return a valid line length on + // macOS, so we need to allow for that on macOS. However, FreeBSD's editline + // is different and will mess up the terminal if we do it that way. + // + // There is one limitation with this, however: Ctrl+D won't work on macOS. + // But it's because of macOS that this problem exists, and I can't really do + // anything about it. So macOS should fix their broken editline; once they + // do, I'll fix Ctrl+D on macOS. + while (BC_HISTORY_INVALID_LINE(line, len)) { line = el_gets(h->el, &len); bc_history_use_prompt = false; From nobody Tue Sep 24 16:34: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 4XClnM73XWz5Y2wL; Tue, 24 Sep 2024 16:34: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 4XClnM61GSz4NsY; Tue, 24 Sep 2024 16:34:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727195671; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1fjE9g6N3HprdFCYjOJjuol610BUEBzRrslz/QWAwa8=; b=ut0CnBKiAruN+vp6pZBaLGopSDHdAGdgaMOiJeCDr9rWi15WU6765jTEXw8akx431r7Bqq fs6KUwRcZF+qZaSb40O3gQCRBAW0nnhDQRt7KDjHHbXxNKfDpIDoURvNDAnarRCjmx3BF5 Wgt+urwek3LPD1DVbRGiUSHZuoZLOeK7H5Q4AeKkb/XcPKMlKpDybh1Sz7RyVT/FPOzNTc LEilnLNOtPQJBuPLIPA25uj0m/gdZwNelT8kQikcL2Fm9Q9k2nLOX3ESahMLvypvvMjTSB UVlSFjWy4Oo7FDDng7RVod7sdzQpxtCJoe9eq31jM8r9U8+l762x8g3pbZLOSw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727195671; a=rsa-sha256; cv=none; b=c3YC+y+3s2jjpZPxS0GRaW7VEmMJitQBz30e6X+TzUbblmZtUZXAh1T6htVqSy1L0Le3So hOcQb4VBlNMIvbLbyMWwf5uim3m+XaLpHdXGCl9M60PTswtTmn1OmNyI2ev5vHZwsWrGkR EeePZelPVYR6Fm19tR7Nojs91EJBWoXLfsM4vnhji2F77/TpbTz832pD4Tya64N4S596Pc SCnn0xXqBL7uqgFrZTQgpRKJJjeyCN/Qy88qM6KQblnW1bjnc6HeyjWVQ+b2AK6qdziPHx wtu9sVSBtM76Wr+zYQkeIbqFtDVIlMNn6sqogOeoo5yOqS3V+pIQMEbhXe7FJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727195671; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1fjE9g6N3HprdFCYjOJjuol610BUEBzRrslz/QWAwa8=; b=PQhecmrtbTDSdNmGjR1LHH4pFl2yxo9yxl7HixeOsFZmH7MXBZ7MSuQnohVobK5AUnF5Qa /E0uiGi8kLX5iMNaY/bjU8pQPpEANUSY6VzrkXII06bJrX503a+wYm3V/r2tZnxFJZe+ph lYLYBtEOI6kKQs2VDiTRuaaEBMY9KniLv3s9wQR0DK5pPMX5YDTMquMVCuN3aVVuXNnB/8 K2uAKyDxVCT84peKaZQn/ol+joTjL1yRswlsab/cB1jra7nYVc6LnWLvTuZnpyV4UPJlbX HlIkJEUU8OpF5BSNGRXw+pHDWQqfqi0xB7ltJ2rbHNYCpYVADpyLf4FPPRWuxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XClnM4Bw8zcG4; Tue, 24 Sep 2024 16:34: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 48OGYVfA024571; Tue, 24 Sep 2024 16:34:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OGYVYa024568; Tue, 24 Sep 2024 16:34:31 GMT (envelope-from git) Date: Tue, 24 Sep 2024 16:34:31 GMT Message-Id: <202409241634.48OGYVYa024568@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Stefan =?utf-8?Q?E=C3=9Fer?= Subject: git: 90ea553a0d30 - stable/14 - vendor/bc: upgrade to version 7.0.2 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: se X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 90ea553a0d309acc3bdb50a3fe2ed0449c8d7e4c Auto-Submitted: auto-generated The branch stable/14 has been updated by se: URL: https://cgit.FreeBSD.org/src/commit/?id=90ea553a0d309acc3bdb50a3fe2ed0449c8d7e4c commit 90ea553a0d309acc3bdb50a3fe2ed0449c8d7e4c Author: Stefan Eßer AuthorDate: 2024-09-18 05:55:46 +0000 Commit: Stefan Eßer CommitDate: 2024-09-24 16:33:30 +0000 vendor/bc: upgrade to version 7.0.2 This update fixes exiting from an interactive bc session with ^D on FreeBSD and Linux when using editline. This bug was caused by the macOS fix for editline in version 7.0.0, which has been reverted in this version. Reported by: mack@macktronics.com (cherry picked from commit c2c85f88902d18d2e9702381f1628112e15a5c3c) (cherry picked from commit 9b04aee86ccd58a6f3c936e0cd95bb9305a69848) --- contrib/bc/NEWS.md | 8 ++++++++ contrib/bc/include/history.h | 24 ++++++++++++++++++++++++ contrib/bc/include/version.h | 2 +- contrib/bc/manuals/bc/A.1 | 6 +++--- contrib/bc/manuals/bc/A.1.md | 4 ++-- contrib/bc/manuals/bc/E.1 | 2 +- contrib/bc/manuals/bc/EH.1 | 2 +- contrib/bc/manuals/bc/EHN.1 | 2 +- contrib/bc/manuals/bc/EN.1 | 2 +- contrib/bc/manuals/bc/H.1 | 6 +++--- contrib/bc/manuals/bc/H.1.md | 4 ++-- contrib/bc/manuals/bc/HN.1 | 6 +++--- contrib/bc/manuals/bc/HN.1.md | 4 ++-- contrib/bc/manuals/bc/N.1 | 6 +++--- contrib/bc/manuals/bc/N.1.md | 4 ++-- contrib/bc/src/history.c | 13 ++++++++++++- 16 files changed, 69 insertions(+), 26 deletions(-) diff --git a/contrib/bc/NEWS.md b/contrib/bc/NEWS.md index 8156b673ce04..e3b1f9ecb7bc 100644 --- a/contrib/bc/NEWS.md +++ b/contrib/bc/NEWS.md @@ -1,5 +1,13 @@ # News +## 7.0.2 + +This is a production release that fixes `Ctrl+d` on FreeBSD and Linux when using +`editline`. + +This bug was caused by the macOS fix in `7.0.0`. Unfortunately, this means that +macOS does not respond properly to `Ctrl+d`. + ## 7.0.1 This is a production release that fixes a warning using GCC on FreeBSD. diff --git a/contrib/bc/include/history.h b/contrib/bc/include/history.h index 460524bd7b87..13f6dc6e985c 100644 --- a/contrib/bc/include/history.h +++ b/contrib/bc/include/history.h @@ -120,6 +120,30 @@ typedef struct BcHistory extern const char bc_history_editrc[]; extern const size_t bc_history_editrc_len; +#ifdef __APPLE__ + +/** + * Returns true if the line is a valid line, false otherwise. + * @param line The line. + * @param len The length of the line. + * @return True if the line is valid, false otherwise. + */ +#define BC_HISTORY_INVALID_LINE(line, len) \ + ((line) == NULL && ((len) == -1 || errno == EINTR)) + +#else // __APPLE__ + +/** + * Returns true if the line is a valid line, false otherwise. + * @param line The line. + * @param len The length of the line. + * @return True if the line is valid, false otherwise. + */ +#define BC_HISTORY_INVALID_LINE(line, len) \ + ((line) == NULL && (len) == -1 && errno == EINTR) + +#endif // __APPLE__ + #else // BC_ENABLE_EDITLINE #if BC_ENABLE_READLINE diff --git a/contrib/bc/include/version.h b/contrib/bc/include/version.h index 4d2f6acfb433..a4fb8def5024 100644 --- a/contrib/bc/include/version.h +++ b/contrib/bc/include/version.h @@ -37,6 +37,6 @@ #define BC_VERSION_H /// The current version. -#define VERSION 7.0.1 +#define VERSION 7.0.2 #endif // BC_VERSION_H diff --git a/contrib/bc/manuals/bc/A.1 b/contrib/bc/manuals/bc/A.1 index 4750598b55fc..adeb62f82e6a 100644 --- a/contrib/bc/manuals/bc/A.1 +++ b/contrib/bc/manuals/bc/A.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/A.1.md b/contrib/bc/manuals/bc/A.1.md index 56f7c52fb2cd..e89305b1af44 100644 --- a/contrib/bc/manuals/bc/A.1.md +++ b/contrib/bc/manuals/bc/A.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/E.1 b/contrib/bc/manuals/bc/E.1 index 62b18165fe92..e2f1b034e69a 100644 --- a/contrib/bc/manuals/bc/E.1 +++ b/contrib/bc/manuals/bc/E.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EH.1 b/contrib/bc/manuals/bc/EH.1 index 69f28e875990..c132a0b76a49 100644 --- a/contrib/bc/manuals/bc/EH.1 +++ b/contrib/bc/manuals/bc/EH.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EHN.1 b/contrib/bc/manuals/bc/EHN.1 index fb453b05363d..e3395b1cc20d 100644 --- a/contrib/bc/manuals/bc/EHN.1 +++ b/contrib/bc/manuals/bc/EHN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/EN.1 b/contrib/bc/manuals/bc/EN.1 index 4833e3e70ddc..c1ccbec567ec 100644 --- a/contrib/bc/manuals/bc/EN.1 +++ b/contrib/bc/manuals/bc/EN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME diff --git a/contrib/bc/manuals/bc/H.1 b/contrib/bc/manuals/bc/H.1 index 4787435ae052..9dc46ee50dee 100644 --- a/contrib/bc/manuals/bc/H.1 +++ b/contrib/bc/manuals/bc/H.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/H.1.md b/contrib/bc/manuals/bc/H.1.md index aa313cd14b63..fbc0658d8171 100644 --- a/contrib/bc/manuals/bc/H.1.md +++ b/contrib/bc/manuals/bc/H.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/HN.1 b/contrib/bc/manuals/bc/HN.1 index 73c243310d5c..7b4577f2dbd3 100644 --- a/contrib/bc/manuals/bc/HN.1 +++ b/contrib/bc/manuals/bc/HN.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/HN.1.md b/contrib/bc/manuals/bc/HN.1.md index dc537ffe4cfa..015035c14daf 100644 --- a/contrib/bc/manuals/bc/HN.1.md +++ b/contrib/bc/manuals/bc/HN.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/manuals/bc/N.1 b/contrib/bc/manuals/bc/N.1 index f66ae06d9c3a..193e0d15f6fb 100644 --- a/contrib/bc/manuals/bc/N.1 +++ b/contrib/bc/manuals/bc/N.1 @@ -25,7 +25,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.TH "BC" "1" "January 2024" "Gavin D. Howard" "General Commands Manual" +.TH "BC" "1" "August 2024" "Gavin D. Howard" "General Commands Manual" .nh .ad l .SH NAME @@ -1731,7 +1731,7 @@ Functions\f[R] subsection below). .RE .TP \f[B]frand(p)\f[R] -Generates a pseudo\-random integer between \f[B]0\f[R] (inclusive) and +Generates a pseudo\-random number between \f[B]0\f[R] (inclusive) and \f[B]1\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. If \f[B]p\f[R] is not \f[B]0\f[R], then calling this function will @@ -1740,7 +1740,7 @@ If \f[B]p\f[R] is \f[B]0\f[R], then \f[B]0\f[R] is returned, and \f[B]seed\f[R] is \f[I]not\f[R] changed. .TP \f[B]ifrand(i, p)\f[R] -Generates a pseudo\-random integer that is between \f[B]0\f[R] +Generates a pseudo\-random number that is between \f[B]0\f[R] (inclusive) and the truncated absolute value of \f[B]i\f[R] (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of \f[B]p\f[R]. diff --git a/contrib/bc/manuals/bc/N.1.md b/contrib/bc/manuals/bc/N.1.md index ad1e603392ae..859c32e3e774 100644 --- a/contrib/bc/manuals/bc/N.1.md +++ b/contrib/bc/manuals/bc/N.1.md @@ -1433,7 +1433,7 @@ The extended library is a **non-portable extension**. **frand(p)** -: Generates a pseudo-random integer between **0** (inclusive) and **1** +: Generates a pseudo-random number between **0** (inclusive) and **1** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If **p** is not **0**, then calling this function will change the value of **seed**. If **p** is **0**, @@ -1441,7 +1441,7 @@ The extended library is a **non-portable extension**. **ifrand(i, p)** -: Generates a pseudo-random integer that is between **0** (inclusive) and the +: Generates a pseudo-random number that is between **0** (inclusive) and the truncated absolute value of **i** (exclusive) with the number of decimal digits after the decimal point equal to the truncated absolute value of **p**. If the absolute value of **i** is greater than or equal to **2**, and diff --git a/contrib/bc/src/history.c b/contrib/bc/src/history.c index 6ae9785d9a79..32a19f71d777 100644 --- a/contrib/bc/src/history.c +++ b/contrib/bc/src/history.c @@ -264,7 +264,18 @@ bc_history_line(BcHistory* h, BcVec* vec, const char* prompt) errno = EINTR; // Get the line. - while (line == NULL && (len == -1 || errno == EINTR)) + // + // XXX: Why have a macro here? Because macOS needs to be special. Honestly, + // it's starting to feel special like Windows at this point. Anyway, the + // second SIGWINCH signal of multiple will return a valid line length on + // macOS, so we need to allow for that on macOS. However, FreeBSD's editline + // is different and will mess up the terminal if we do it that way. + // + // There is one limitation with this, however: Ctrl+D won't work on macOS. + // But it's because of macOS that this problem exists, and I can't really do + // anything about it. So macOS should fix their broken editline; once they + // do, I'll fix Ctrl+D on macOS. + while (BC_HISTORY_INVALID_LINE(line, len)) { line = el_gets(h->el, &len); bc_history_use_prompt = false; From nobody Tue Sep 24 17:16: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 4XCmjb00M6z5Y4m1; Tue, 24 Sep 2024 17:16:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XCmjZ6dTJz4Tf6; Tue, 24 Sep 2024 17:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727198178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UfeN/zeaIX4ez5ZNGBPbsBeiY4Du/Tn6IsjFnYscwKo=; b=EyXBj3RbK50UwE2YcNY2uY2KVTfXec9YcQAwp7nriswPpq65WRmVyJzvBl/dsHQ+R8vT51 Q8qJ5N5eDaod+F/KLV9Ad7DmyoEo6cdVtKEMg+PKO8vozaODfKkbpaw54Rc6SpuCwjyCSV gyZHeDKh1dR/UjSt7i8paxX+Io29fM4SQij0trUd3lfmNtDv1qRSdFT5Ps+R8NzGqDLoWt +blrPlTS1NZspPrY6/TbbNVf4/BNoT3G8P5Cw1MrIZIwAzru7FKVfn8E34jkzo3jNfidmC sC1CPZFtcm9XjdYW9XbDQSDOwsxrLeq0kqadwGmXBIGKIdD6ps7kecdMwajwaw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727198178; a=rsa-sha256; cv=none; b=kbXM0aCUsh6x5bDTXeLK9xvpGqHCGJ2G4dxK/n4E5nJcluWEkO8qymGymNbMZChF4Pbl84 FGUgJJXPAIELQZBEBByo2fyMseX/YPH8JOHDTH8aV8cbONEKwwT6cElxf+4JS93Dfoao4G +EiWcYCalodDF+TeEAtB3a882ZD+Dj6r1GQOBylOXnNny9FMgbrfzGD/Oxw7qceJT+KdWw FOulsk7vxIrRCb2eG4u2n9XpjHDmncQ1NgVL5mZGJYfAUN6I8VNAVRA2xqT6TLEyS9RFgd ua565dlPo7FH3mA971mRIgAmOqRXTAl10vqpe+namNAxnThf+ksWC6M9dZFgeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727198178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UfeN/zeaIX4ez5ZNGBPbsBeiY4Du/Tn6IsjFnYscwKo=; b=UccnU5nohgfVG+CDX9G0ApSU1r21Uwff8CI+3oBnxA6hSnXxZhCDkxeZj2+ISiYAaj3R3o FQsi23TksxS3G+bVNaR+mEY9JJvw/SZVBmYsCRM4OrEkYz1VfvEKDCCt09PVJZKfMw0v0b E8jMKuV3ord+2vAY0CQl96mCLO4FvZylOkMmPmkDEHAda3ek+5ohFmB8JKapH2noYiLQLv vBYzkBXy7z0Him6gWMN31m8sfkAqAGSKGdRTRe0OPS8yytv8HZswlWMOACjlgpVs7I3pnl Zp+5MFDmLDx/27qX5ZCfb//eyX4X1emBVQipRSq+1qZMuR4IvciDF1G8TRNJjQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCmjZ5pq5zd38; Tue, 24 Sep 2024 17:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48OHGIFS093522; Tue, 24 Sep 2024 17:16:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OHGI1w093519; Tue, 24 Sep 2024 17:16:18 GMT (envelope-from git) Date: Tue, 24 Sep 2024 17:16:18 GMT Message-Id: <202409241716.48OHGI1w093519@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jamie Gritton Subject: git: 80c5d78d90e6 - stable/14 - MFC jail: unbreak the zfs.mount_snapshot option List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 80c5d78d90e65042cf7364b79f5afd3a0509c92e Auto-Submitted: auto-generated The branch stable/14 has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=80c5d78d90e65042cf7364b79f5afd3a0509c92e commit 80c5d78d90e65042cf7364b79f5afd3a0509c92e Author: Jamie Gritton AuthorDate: 2024-09-19 19:49:01 +0000 Commit: Jamie Gritton CommitDate: 2024-09-24 17:14:22 +0000 MFC jail: unbreak the zfs.mount_snapshot option The change of its description from integer to boolean didn't actually change it to a boolean, but only made it impossible to set as either a boolean or an integer. Rather than make it work as a boolean parameter should, just revert to the old (working) integer parameter, and change the documentation to match. PR: 274263 Reported by: andrew.hotlab at hotmail (cherry picked from commit ae1a0648b05acf798816e7b83b3c10856de5c8e5) --- sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c | 2 +- usr.sbin/jail/jail.8 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c index 9b56d15f1095..a972c720dfdb 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c @@ -100,7 +100,7 @@ static struct zfs_jailparam zfs_jailparam0 = { static int zfs_jailparam_slot; SYSCTL_JAIL_PARAM_SYS_NODE(zfs, CTLFLAG_RW, "Jail ZFS parameters"); -SYSCTL_JAIL_PARAM(_zfs, mount_snapshot, CTLTYPE_INT | CTLFLAG_RW, "B", +SYSCTL_JAIL_PARAM(_zfs, mount_snapshot, CTLTYPE_INT | CTLFLAG_RW, "I", "Allow mounting snapshots in the .zfs directory for unjailed datasets"); SYSCTL_NODE(_vfs_zfs, OID_AUTO, version, CTLFLAG_RD, 0, "ZFS versions"); diff --git a/usr.sbin/jail/jail.8 b/usr.sbin/jail/jail.8 index 75a0b86eed4c..7fc5357adfd3 100644 --- a/usr.sbin/jail/jail.8 +++ b/usr.sbin/jail/jail.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 12, 2024 +.Dd September 19, 2024 .Dt JAIL 8 .Os .Sh NAME @@ -763,8 +763,8 @@ Allow access to SYSV IPC semaphore and shared memory primitives, in the same manner as .Va sysvmsg . .It Va zfs.mount_snapshot -Allow jailed users to access the contents of ZFS snapshots under the -filesystem's +When set to 1, jailed users may access the contents of ZFS snapshots +under the filesystem's .Pa .zfs directory. If From nobody Tue Sep 24 17:18: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 4XCmmg375vz5Y4x0; Tue, 24 Sep 2024 17:18: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 4XCmmg2fQYz4V6m; Tue, 24 Sep 2024 17:18:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727198339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=C0ANDk8n8G/LUM2I7SHZjHGhgm8hrgY1BXsXgf4CA4g=; b=HXjmi5xj5iK74zvdLqkHudlevvuPtDebZB8jzaJDy2lMjad6UzyZ4A9LoB6PPGLSq/krsq WXBdB4gEfxeyNJ6E7g1+u3ZTV0IdlBL3Z9LyuKnnootKK6WoY5WMhzsDShViPTVlDB4C0u 2U/Z32huiAPCYDyR12HqMpaXsIoIHbU/cnck8eIu9nHdHDsbUCTiYHI3rVkVFwOskmtkU3 Zz3x09QtQm1frlmFdXbGYF0CzePe5jIJcxwUsnfSpYN+nXLFCPv1iSittVAXnhIVIjXGzo dEtAVgoFjOuHX6YSYAvQCOJwgoC8kNZhJjTJniq02vqAO49qiwMhFJ5oMeuO6A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727198339; a=rsa-sha256; cv=none; b=aUPa5lR7+8uT8gSXDST9tBAMcAIIhr7BwU393MrKeqx754osrVdYVFQslFjSFVyAOR4ux/ UIsBdYL9hho6qEKsnDRIjuJEBNoO0KMLBQnsUXDfMRtKE8cI9kaUsdNovpyFtv7CI37HKb 3+jUW7uXzWF9w7o5v4MfVhlnSPn3f9ErgQa3JlVWJrC1yj3K17MxB1SfN47I0OMUIXoW+H 0/ELtBVp3wIK2NmlvER0oT7djZFps2jFoNOkfQyseqr1VHdLah2Ffrznmq5R386cQZvxmK rgCRn9kkXQIgTGZsWIqJhgWNnDSSu5sAc8woBrOzVL6OmrxmKVkrjfmNDHhz1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727198339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=C0ANDk8n8G/LUM2I7SHZjHGhgm8hrgY1BXsXgf4CA4g=; b=sJERU1dJNg0GkyxM13Uxhj9YAs2Tbb5ITWy12XbrzYrU+284cIrWzBz/GpkvPy4cZSWmi2 dtIXsiRB1UsDWtW624+G6MIa2QQzgQTWAx/Kz6xJfZU2h8PAk1Hm7QnBCgYKICYmamoSLs I5TOFJB7nUOVe/YCeve4ntqyU6+A6lrA/K7AXBwqrOB9VYj9+TaakgdaPhOm/SipyKNxG3 pUerWamGsqVZ8MHDYosCoV99+wvd2x7hl3oLHAzOABogCSxEELECIMkzjYLMk0mx9f7R1c 0gnY90gFjN11/R6aeWw9j6YVbTX/QFmqXyYkqecY61RbgEWv5Gu0mZf35RZWXQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCmmg2FkqzdXm; Tue, 24 Sep 2024 17:18: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 48OHIxgI094014; Tue, 24 Sep 2024 17:18:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OHIxWQ094011; Tue, 24 Sep 2024 17:18:59 GMT (envelope-from git) Date: Tue, 24 Sep 2024 17:18:59 GMT Message-Id: <202409241718.48OHIxWQ094011@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jamie Gritton Subject: git: f616b13bb35a - stable/13 - MFC jail: unbreak the zfs.mount_snapshot option List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f616b13bb35a5ffcc904d5282f09d93fe9d3a305 Auto-Submitted: auto-generated The branch stable/13 has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=f616b13bb35a5ffcc904d5282f09d93fe9d3a305 commit f616b13bb35a5ffcc904d5282f09d93fe9d3a305 Author: Jamie Gritton AuthorDate: 2024-09-19 19:49:01 +0000 Commit: Jamie Gritton CommitDate: 2024-09-24 17:18:41 +0000 MFC jail: unbreak the zfs.mount_snapshot option The change of its description from integer to boolean didn't actually change it to a boolean, but only made it impossible to set as either a boolean or an integer. Rather than make it work as a boolean parameter should, just revert to the old (working) integer parameter, and change the documentation to match. PR: 274263 Reported by: andrew.hotlab at hotmail (cherry picked from commit ae1a0648b05acf798816e7b83b3c10856de5c8e5) --- sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c | 2 +- usr.sbin/jail/jail.8 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c index 42c8287a7c03..33581d018256 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vfsops.c @@ -102,7 +102,7 @@ static struct zfs_jailparam zfs_jailparam0 = { static int zfs_jailparam_slot; SYSCTL_JAIL_PARAM_SYS_NODE(zfs, CTLFLAG_RW, "Jail ZFS parameters"); -SYSCTL_JAIL_PARAM(_zfs, mount_snapshot, CTLTYPE_INT | CTLFLAG_RW, "B", +SYSCTL_JAIL_PARAM(_zfs, mount_snapshot, CTLTYPE_INT | CTLFLAG_RW, "I", "Allow mounting snapshots in the .zfs directory for unjailed datasets"); SYSCTL_NODE(_vfs_zfs, OID_AUTO, version, CTLFLAG_RD, 0, "ZFS versions"); diff --git a/usr.sbin/jail/jail.8 b/usr.sbin/jail/jail.8 index b66e3464dc5e..18dd54aa9b68 100644 --- a/usr.sbin/jail/jail.8 +++ b/usr.sbin/jail/jail.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 24, 2024 +.Dd September 19, 2024 .Dt JAIL 8 .Os .Sh NAME @@ -759,8 +759,8 @@ Allow access to SYSV IPC semaphore and shared memory primitives, in the same manner as .Va sysvmsg . .It Va zfs.mount_snapshot -Allow jailed users to access the contents of ZFS snapshots under the -filesystem's +When set to 1, jailed users may access the contents of ZFS snapshots +under the filesystem's .Pa .zfs directory. If From nobody Tue Sep 24 17:30:43 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 4XCn2D38KCz5Y5ch; Tue, 24 Sep 2024 17:30: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 4XCn2D0sMFz4W8Q; Tue, 24 Sep 2024 17:30:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727199044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vsOa0opbTzo5gg8DyMLCvfZJJBMlXIje4f4rEr6QowE=; b=s1uzPIz3gYwUfijYzDkN6KRsMTa6yb3X+S2DHC+lkNXGjLTF5VUe2QmEHWL/VjKLM1dHde gFIKDGSUmXqBgtomrH0ICSFIpMnP8lk5VS8kEJU5K2ReZey4KgyLd9FHZBliKxmLYPfBao xDdCdtvsQsJgoBZ29A+NtF0BYYuRVGMrwravyl6OTJMehi6s4J4h/56TqXUKfGALx5cNeG YZHXumrtxI/O4P4OFW3AjYUV/Xvu/KeWukbD8KwoCJ1VTnK46X9ffAcdoIcmBWdDAJPZ8l BPdE7v/qRQ10aXJf94UppnpSx6tessYPpaH2HGE1oFn8TjQvOHDvpYZPF+IQ6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727199044; a=rsa-sha256; cv=none; b=bZLBMTsHWQ0qwTrf3ZHjr3RvpIXGf5oRdPigh6CvuhMexIbPW7Ap2/SkDqyU4ZPkhQKsH9 4jMLXtp3HVcEBnF278VJL1Elfw/CcaAth5Y2NiwkD4sbE+HTDQjEMxNLSAtsiOhMrjK/I/ j4CrD9mmRFWGS2Y3/kEDt0pnY3QI1/FgfPlafM0HUa5PzQHPBSzBc/nkey1Cgp4PSe1A15 JPg3PwnUeuxgil8PpH+aDGukr9PEquFDdkuRv+crC4A/z69mux9xPWRD4RaySzszx5NgLp fO/6/SlkR/SWCeGFqgZgkLLqiHdNWNNkFE5czZA/CBbnMc9JT0uxrH1zmbVD3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727199044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vsOa0opbTzo5gg8DyMLCvfZJJBMlXIje4f4rEr6QowE=; b=SN9Dgqo37Ck5UVwTRAN1xRspuAD8LTGH4d/Vv9rS+rIHSdLH2Xq+KjQk9KxRAH2NgKdGLu SOuh1X4p4MmdZq1E8ruCdbEsdRaIlMOn+ZqWJMdOzfzt1i2EzOWD4eF8K/DYZDkJEkKkF8 jZrxwWCtZBUnfwh+vkINkq27iZxwsmiVCcI3O7NwKD5WpiHrBN6NlaNxsh/VfUpjCEWbXt WycAupKLU+yVI7KYoBx8ZHd2A7g1ComUU4GYkWf7GvpgRxV4A6hRuEHQ8hps0GUgCRihew KB31itoSgBdG5rtMhN/v/H/IezA567pgDL9GkYDlEKFGaN1Lbf2ylzyx9m35fQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCn2D08qXzdc9; Tue, 24 Sep 2024 17:30: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 48OHUhHv019821; Tue, 24 Sep 2024 17:30:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OHUhra019818; Tue, 24 Sep 2024 17:30:43 GMT (envelope-from git) Date: Tue, 24 Sep 2024 17:30:43 GMT Message-Id: <202409241730.48OHUhra019818@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: 9b8df84c23ed - stable/14 - src.conf.5: regen for ZFS_TESTS knob List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 9b8df84c23ed741b53cb1c765c5bf1d8919ce858 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=9b8df84c23ed741b53cb1c765c5bf1d8919ce858 commit 9b8df84c23ed741b53cb1c765c5bf1d8919ce858 Author: Ed Maste AuthorDate: 2024-09-24 17:28:30 +0000 Commit: Ed Maste CommitDate: 2024-09-24 17:30:34 +0000 src.conf.5: regen for ZFS_TESTS knob (cherry picked from commit a6c8ab4f45496d0e7e49ef8ae0c44f39caefd1fa) Fixes: 20191b71bae1 ("src.conf: Add a MK_ZFS_TESTS knob") Sponsored by: The FreeBSD Foundation --- share/man/man5/src.conf.5 | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 11801456716c..b868b5265763 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd August 27, 2024 +.Dd September 24, 2024 .Dt SRC.CONF 5 .Os .Sh NAME @@ -342,6 +342,8 @@ When set, it enforces these options: .Va WITHOUT_LOADER_ZFS .It .Va WITHOUT_ZFS +.It +.Va WITHOUT_ZFS_TESTS .El .It Va WITHOUT_CLANG Do not build the Clang C/C++ compiler during the regular phase of the build. @@ -452,6 +454,8 @@ When set, it enforces these options: .Va WITHOUT_UNBOUND .It .Va WITHOUT_ZFS +.It +.Va WITHOUT_ZFS_TESTS .El .Pp When set, these options are also in effect: @@ -1422,6 +1426,8 @@ When set, it enforces these options: .Va WITHOUT_UNBOUND .It .Va WITHOUT_ZFS +.It +.Va WITHOUT_ZFS_TESTS .El .Pp When set, these options are also in effect: @@ -1698,6 +1704,8 @@ When set, it enforces these options: .Bl -item -compact .It .Va WITHOUT_DTRACE_TESTS +.It +.Va WITHOUT_ZFS_TESTS .El .Pp When set, these options are also in effect: @@ -1848,6 +1856,14 @@ or .Xr zfs 8 . Also disable ZFS support in utilities and libraries which implement ZFS-specific functionality. +When set, it enforces these options: +.Pp +.Bl -item -compact +.It +.Va WITHOUT_ZFS_TESTS +.El +.It Va WITHOUT_ZFS_TESTS +Do not build and install the legacy ZFS test suite. .It Va WITHOUT_ZONEINFO Do not build the timezone database. When set, it enforces these options: From nobody Tue Sep 24 17:30: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 4XCn2R2lKcz5Y5Tl; Tue, 24 Sep 2024 17:30: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 4XCn2R1zsFz4WW0; Tue, 24 Sep 2024 17:30:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727199055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d9SwjTV2rPKjXekxNr4yp+bDmYuVLBRaDlJZGdRlXPs=; b=kMZbOWJILs4jvcJ0JyLQxX/2THCIBaxYc9SVG+QZ4gQFfBZhdDYI31T65uzmVwU5cCX6Kr 5a9OqYpQt4i52TiBlF+bARx1JoylSYvbROENPXAyq9SOWzVBf3nofyNAx0JygG8nqLf4p+ h9PHlD1VImpIGDhJ1HmHqNKZwBUTsiG8GroytDy0S7q7JaWgtP0KMvbYJmF3/6uIToarUL s5yhOEOkYdngioZZ60SyhDeBJcVvoLAf26xBdEmPKHBjkDuqybcpLHon3WU0MuueeAyHxv hMcMjfmin60VE3r1Jncv/O8jqXgczajCCONiv6FYmfIxLXXjc82Itjbczt2ooQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727199055; a=rsa-sha256; cv=none; b=p27doA6TC8yWBQ9/QXpvjby7yVUibIGdXPrDVQaPngk2W+4Teu+6Dj/LC5Lz5x2N2c2XIp UjcdwuH986KKNj4EJdDmwTwgQ+fWWn/GluC+s9+DglitOzmREmfTSKJ3Y0Fjn5e7kzoWAJ F6TBhvq+IGiKOxvwMrT/m6OhM/wFOteoEaEEwycNqYyX0ytYRhv6je4csXir2LrhqZcfSt sUrvblVbKdtwqqsyw8M+Vg3OnRPcDAsb5taNmlmILY3Jqilb2dM6N1Wo0UGdpykMhVyd4j kbRNSW2QR4DFGgkO1plMAw2lNC/TxFfvT3YI2oIhJZXZjWrQCJowd2sa+OFwPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727199055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d9SwjTV2rPKjXekxNr4yp+bDmYuVLBRaDlJZGdRlXPs=; b=YKWvK+Jt7zMIh3vB9gdY+d3ljyKlCT627pgXV81VwKYong/eHEDvBmrR8APYzpT1kN6ZQl Ig/so9+cBakVq10yYbCSv1cfQwsxRLs8nwWS2Cdaq+2YUw2nc4AdrS7VLoTOc+MH10XvKI IAPkxP7NPtjGVlMEX5mlHYMUckddv4dsa0ww8Bx5hXcwoTqCa2S+m2W7K2rxjFuDUAO8tf 2XKqKJADUyvOg3jlJ1LHOCszgtI0VOSkYZjFs2LGavM4de6YeuIz4PHlHo1ij8TwDHh8ZJ QJMv33RFqrZ/LK3mPNWXuQ3EuQtcAwPb72I1AHkxcgqlpxGaejR4SK76CwLqFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCn2R1bzzzdcJ; Tue, 24 Sep 2024 17:30: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 48OHUtGb021032; Tue, 24 Sep 2024 17:30:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OHUtFe021029; Tue, 24 Sep 2024 17:30:55 GMT (envelope-from git) Date: Tue, 24 Sep 2024 17:30:55 GMT Message-Id: <202409241730.48OHUtFe021029@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: 6a645bb3535c - stable/14 - bhyve: validate corb->wp to avoid infinite loop List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6a645bb3535cb73b1f20db652c9e3893f26a986e Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=6a645bb3535cb73b1f20db652c9e3893f26a986e commit 6a645bb3535cb73b1f20db652c9e3893f26a986e Author: Ed Maste AuthorDate: 2024-09-19 18:57:42 +0000 Commit: Ed Maste CommitDate: 2024-09-24 17:30:35 +0000 bhyve: validate corb->wp to avoid infinite loop Guests must set HDAC_CORBWP less than corb->size. Treat invalid values as an error rather than entering an infinite loop. Reported by: Synacktiv Reviewed by: markj Security: HYP-12 Sponsored by: The Alpha-Omega Project Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46134 (cherry picked from commit a305f44d1404fbf386bb2b50ab7233ce9eabe0bb) --- usr.sbin/bhyve/pci_hda.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usr.sbin/bhyve/pci_hda.c b/usr.sbin/bhyve/pci_hda.c index 6f0c1b6cfba9..58481af71a4c 100644 --- a/usr.sbin/bhyve/pci_hda.c +++ b/usr.sbin/bhyve/pci_hda.c @@ -789,6 +789,11 @@ hda_corb_run(struct hda_softc *sc) int err; corb->wp = hda_get_reg_by_offset(sc, HDAC_CORBWP); + if (corb->wp >= corb->size) { + DPRINTF("Invalid HDAC_CORBWP %u >= size %u", corb->wp, + corb->size); + return (-1); + } while (corb->rp != corb->wp && corb->run) { corb->rp++; From nobody Tue Sep 24 22:53: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 4XCwBK4yghz5WC4d; Tue, 24 Sep 2024 22:53: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 4XCwBK4Nzgz4GW3; Tue, 24 Sep 2024 22:53:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727218393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jZLXrUi/dOIWic/x0lsSTQeuOTI88MD1gWnK3s0uG7I=; b=bQFGdVrrfPN5ICgTG4JNz1oMLTZzccUJE7cGaj69KQErxIXbw5oa142dbNNv43+4Qn7Wmr ZFxpkRktW6e7R21cZQCNluYTSpPGvPFaKkdzbM1B5V0OtDveaVygQwjU8r1KOCO8exLFhP vn9rxWrk+yQvrY0Utf7BM+OeuXRk/QK6fDTFoT/CMky3tov7eFi8fkjHa+Qmw7+R6k5YB5 DF32oD8jBoTqvmE3qO9ourMpbF1L566SVFLnXpb+Qr5bqRu3aKOLx15sOy35UJI+4S9uOP Fzn0sOOxT6KVMdTG7QFO3SO0E1wxBvp7P6DuwuA1a7cSWM2dYp12F9jHfJe0LA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727218393; a=rsa-sha256; cv=none; b=Py62jUzJAV2fCUQYZwz/rYtux6b3LUMA5FWBVTTq3uAzjg4KM3aiO+JNS+NWu303CLO76m CWzEbLiwZ7hjU4bowKr1Uwdioxkv9vzY1j3XFjabNDLcf055uHzTnFD0kX7cDdYnoOmP3T oViiMk/jM+i54Fc2YRqXkSg7Nbd93KiOh2b5DEk5u+L+GL01V/Wg8gmHPCeN/XWBPpZqvr tXZDPyN8nVUtoJ9pe801pokH9TjZX7sghka5img/PR9+XWy7SRIa7Qd1tMn9dS+HoidULE lKB1OIX7Z9h9rczKSmPopxCHgjjLFN/xWAq3S8uXR+ckUzTMZrtGoqRboYV7Kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727218393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jZLXrUi/dOIWic/x0lsSTQeuOTI88MD1gWnK3s0uG7I=; b=uTK7cSwhyFSB8MU6p1QSGbTWg9M1qN5ogCJw3PpwpIBjlTvbTNCieot2D8ZEK5GBDHVYZ2 pNvihVFLD5TVn/KCc09bC5/fymY7M4lpdxxXk5fDvGlQJ7izpGmG4Xb1ADIIAFamtc5Qnt 0YCN0rXf8CWoyakOMIQsnLwq63EfYVWVCHhE6OnJBKmETSNR3e97lavW4ShYBeKRowLM2V mDxA849Gp+mVtD5TZYhYXFKRoLl8DexkmYldTZzRznQuEYZ3iIWVo8dg8yO8ic2pH4Pmrs sql0Uf2oyZgRSI1qt1ui4sVQn+fTBhxqqfDEBh7tffZw2eekU4/pJIKolpQd5A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XCwBK40DJznXF; Tue, 24 Sep 2024 22:53: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 48OMrD4c072485; Tue, 24 Sep 2024 22:53:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48OMrDh7072482; Tue, 24 Sep 2024 22:53:13 GMT (envelope-from git) Date: Tue, 24 Sep 2024 22:53:13 GMT Message-Id: <202409242253.48OMrDh7072482@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: 867aaad5c2bf - stable/13 - bhyve: validate corb->wp to avoid infinite loop List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 867aaad5c2bfdd8326fc805964e711ccfbb18d1e Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=867aaad5c2bfdd8326fc805964e711ccfbb18d1e commit 867aaad5c2bfdd8326fc805964e711ccfbb18d1e Author: Ed Maste AuthorDate: 2024-09-19 18:57:42 +0000 Commit: Ed Maste CommitDate: 2024-09-24 17:31:09 +0000 bhyve: validate corb->wp to avoid infinite loop Guests must set HDAC_CORBWP less than corb->size. Treat invalid values as an error rather than entering an infinite loop. Reported by: Synacktiv Reviewed by: markj Security: HYP-12 Sponsored by: The Alpha-Omega Project Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46134 (cherry picked from commit a305f44d1404fbf386bb2b50ab7233ce9eabe0bb) (cherry picked from commit 6a645bb3535cb73b1f20db652c9e3893f26a986e) --- usr.sbin/bhyve/pci_hda.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usr.sbin/bhyve/pci_hda.c b/usr.sbin/bhyve/pci_hda.c index 7d824d7a1fd8..fd47abebaa42 100644 --- a/usr.sbin/bhyve/pci_hda.c +++ b/usr.sbin/bhyve/pci_hda.c @@ -787,6 +787,11 @@ hda_corb_run(struct hda_softc *sc) int err; corb->wp = hda_get_reg_by_offset(sc, HDAC_CORBWP); + if (corb->wp >= corb->size) { + DPRINTF("Invalid HDAC_CORBWP %u >= size %u", corb->wp, + corb->size); + return (-1); + } while (corb->rp != corb->wp && corb->run) { corb->rp++; From nobody Wed Sep 25 16:50: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 4XDN595lkBz5XS3Q; Wed, 25 Sep 2024 16:50:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDN5957xTz4YG5; Wed, 25 Sep 2024 16:50:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y1ItIJ5flIyqPz1PpDWg78S03c1csmxHRSyHXffaReQ=; b=aPYTtT1yz28Aq/MWJ82b9/uzUL/TjyPBvz5/7aGFMcZyl7yvQe7XFoxGi3vAbPCTFnWrQq eHxSw66xXZ3Q0ClzkIEkSnRqa8xYUcHTtHoDqbWeOziFeMZ3EdOVvJlFNLSBwLQjkoQFlD r2WcSjAh6p50q+kOUsqWwNc11+xKUc8nQ/BerfAhKowBBTKf1H/llC7vVOU9D5YObTsUee FSI4f2BqMfYYwSUptCtLHaPtZlt+iFNC4tEqXcCVY4JfmxZT6AamyiC2RvAj1w2qMCUN5x cWdCQk6ABlihO9FXqSqL7f3eru5vFROXc1+IyexhqlErYAKq0HHRBezU74GnDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y1ItIJ5flIyqPz1PpDWg78S03c1csmxHRSyHXffaReQ=; b=l4uG579FX6XTQNRLCa1gTedFxpcBpYLZ58WIPh7nL03yPeSVzPI7A4l1pf/uzHMK0XG08N ZS/kRQvm/YewHtCbTLBP++LBt7/Qx8pYRP3BKRHTSZX/erBhtR5B8YzRVBvVFVJOsMkWQV PMPh2mAmgOaFEHeqKYDqAGQ4X2mq/cy4nXcJpD/n9Zvmcd1rHALrzLLQ20VIVnEDVQrp0y HMuBrtYk2ehewxKZBvWIUpzZrT8vt4Fb5yY0XiunqWuucirvYE+g/Wah7a5rHKYdOpsdjF UPQojxrys7Q86fn9Pboovh2qe6vHuL6MnZw1lSQjK9T9ZyxIJ2JGnsP/GcVs/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727283021; a=rsa-sha256; cv=none; b=bmmcZtGZFFBRmq46fJ3lDcC8tSDqltsn0eeX56X+OYMpSoynt3zEatwnQ/Xfu2Aerm8RaK DiP0qwP6afY4IGU3ggiQfT8kUSBIbA0hfpFuZ7K3Zy+DZLU/nmMlDiOw0j4q4cXaclwtMY 8SodFRbt5icLDRWLuxqQ1TvwNp3X4/RBYlFNSoru3z0Q5R+tqY2XmcmvNryiayjfWsXOmf ZBD5xOQzxd3CPv1aUY5fbzrqHfWlEa/gL4ujWUO53yzkLtYlhxkjAp+auFKjU9SR1Lni5/ nsqJjACANZMvduVB6+LMRwsHgQbK9HF0LAVEJUYNpuiZjk2zG0/bb0ZkL3BwyQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDN594QjQzLCZ; Wed, 25 Sep 2024 16:50:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48PGoL9q004754; Wed, 25 Sep 2024 16:50:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48PGoLCA004751; Wed, 25 Sep 2024 16:50:21 GMT (envelope-from git) Date: Wed, 25 Sep 2024 16:50:21 GMT Message-Id: <202409251650.48PGoLCA004751@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: d01a9cceefbc - stable/14 - Add some AMD device IDs. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: d01a9cceefbc072aef212c640d8558768853545e Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=d01a9cceefbc072aef212c640d8558768853545e commit d01a9cceefbc072aef212c640d8558768853545e Author: Dmitry Luhtionov AuthorDate: 2024-06-07 15:00:09 +0000 Commit: Ed Maste CommitDate: 2024-09-25 13:17:26 +0000 Add some AMD device IDs. (cherry picked from commit 4cc4b5e2b5f85f136169069559108ed7fff351f9) --- sys/dev/ahci/ahci_pci.c | 3 +++ sys/dev/sound/pci/hda/hdac.c | 1 + sys/dev/sound/pci/hda/hdac.h | 1 + sys/dev/usb/controller/xhci_pci.c | 3 +++ 4 files changed, 8 insertions(+) diff --git a/sys/dev/ahci/ahci_pci.c b/sys/dev/ahci/ahci_pci.c index 3d4a7d7c7400..7451cc387011 100644 --- a/sys/dev/ahci/ahci_pci.c +++ b/sys/dev/ahci/ahci_pci.c @@ -73,6 +73,9 @@ static const struct { {0x43b61022, 0x00, "AMD X399", 0}, {0x43b51022, 0x00, "AMD 300 Series", 0}, /* X370 */ {0x43b71022, 0x00, "AMD 300 Series", 0}, /* B350 */ + {0x43c81022, 0x00, "AMD 400 Series", 0}, /* B450 */ + {0x43eb1022, 0x00, "AMD 500 Series", 0}, + {0x43f61022, 0x00, "AMD 600 Series", 0}, /* X670 */ {0x78001022, 0x00, "AMD Hudson-2", 0}, {0x78011022, 0x00, "AMD Hudson-2", 0}, {0x78021022, 0x00, "AMD Hudson-2", 0}, diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 64243e9d6227..336602b6bbf4 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -194,6 +194,7 @@ static const struct { { HDA_ATI_RV940, "ATI RV940", 0, 0 }, { HDA_ATI_RV970, "ATI RV970", 0, 0 }, { HDA_ATI_R1000, "ATI R1000", 0, 0 }, + { HDA_ATI_OLAND, "ATI Oland", 0, 0 }, { HDA_ATI_KABINI, "ATI Kabini", 0, 0 }, { HDA_ATI_TRINITY, "ATI Trinity", 0, 0 }, { HDA_AMD_X370, "AMD X370", 0, 0 }, diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index abb6148c3369..4b4bd70f800f 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -179,6 +179,7 @@ #define HDA_ATI_RV930 HDA_MODEL_CONSTRUCT(ATI, 0xaa90) #define HDA_ATI_RV910 HDA_MODEL_CONSTRUCT(ATI, 0xaa98) #define HDA_ATI_R1000 HDA_MODEL_CONSTRUCT(ATI, 0xaaa0) +#define HDA_ATI_OLAND HDA_MODEL_CONSTRUCT(ATI, 0xaab0) #define HDA_ATI_KABINI HDA_MODEL_CONSTRUCT(ATI, 0x9840) #define HDA_ATI_TRINITY HDA_MODEL_CONSTRUCT(ATI, 0x9902) #define HDA_ATI_ALL HDA_MODEL_CONSTRUCT(ATI, 0xffff) diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c index 359f14bb1e3c..3afb9fa8c6ef 100644 --- a/sys/dev/usb/controller/xhci_pci.c +++ b/sys/dev/usb/controller/xhci_pci.c @@ -100,6 +100,9 @@ xhci_pci_match(device_t self) return ("AMD Starship USB 3.0 controller"); case 0x149c1022: return ("AMD Matisse USB 3.0 controller"); + case 0x15e01022: + case 0x15e11022: + return ("AMD Raven USB 3.1 controller"); case 0x43ba1022: return ("AMD X399 USB 3.0 controller"); case 0x43b91022: /* X370 */ From nobody Wed Sep 25 16:50: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 4XDN5C06Nhz5XRxr; Wed, 25 Sep 2024 16:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDN5B5mvBz4YLx; Wed, 25 Sep 2024 16:50:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=guy/uvytq14L0QhfBpnOEB9MpCumtuT14c74lZfbYRg=; b=mIueqCi7iDWapfW/VbzZ8UBIxkcfKWvebRQLmlUAAFzMs9ApEZV8b7LNG5PshsMGoTYXkk tXq5+yX3A9K4VHSNHR9kNdkIUrDMBFLyeMq/YxDg7r5dlB7hqtkL1Qo1nlueK27aT73u4Q mwU3vGe/NnAAGhi09YZlVMQQ3KQVz7id8Uetmsrstojk8mb4jU+lFQ76TU4fniri6uFCo2 ojQl/Secu3NEV0WqtmYO7GoOu5IjtGnTzEbVg4lFxek1RB/6H/WnTjZuF8ipGdDX+BH5Q0 u2G5HpYGQX8o3rRrHKYJJi70yS7yUsjkq6mZk7lsGmEyeWEx1hen4jSRzxc1ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=guy/uvytq14L0QhfBpnOEB9MpCumtuT14c74lZfbYRg=; b=kriDfA2AFljB+SVR0PSp3OeazkYzLlKZOG+1yXlTNTtiu2xw66ZUe5Kz/5tLb0MIQyek33 6d0a6BWD+pawOcemNFB/X28lAS7pQewacABW9daViyUABJDO08lyY265eSwfmJkDotiiG1 8Tbxwno4dgSV9mr1CrsGOpk1cDGfShfRjVGL6VCewoaAhgvRAx/Pf8jkz2b8wWNaTpF4Fv mzeP6NuaiR61y2Pe2bmqy9rBnvXfJfctQerDqGCx9RvLQE5/IMbkofXkaQMyy/XTXxSEZn Ou2tGUDIo1a1T/rWVxDT+w0dMr1o5AA2Ez8zgARY74HxX7Hy3I9K6C2tAecC6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727283022; a=rsa-sha256; cv=none; b=GpyReQZHt7De7dorHUsQohJ0NsxTsnRoNqAmxjG4yNcHht6ksaOAGpj5aMtuiKSf6fyHo1 JzYaFKvuJRSdvrbPjKb5mj+x1qS8ujGEd9Vrm5cXwzr6ptruE5bINtHIwuiy1VugwyFrcx X56yVSsrIQk7gNbA0tqIxbicsYUneJhfcBfHlwZT9tDBVev6jNJ0VDhdnPSWVfXtvpB4bn k2FduKuZetFxtBfnmMBi2ffUmtseraP8hliNHI6di9RLgyuZHXS39U2pLbcpHxLVLJYYAh Ej4jsppjwvqVUrFyIQIyQfHZo/iA67vSiFNkrZdMaink/J8JnHOSTKdC+tD92A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDN5B5NL0zLCb; Wed, 25 Sep 2024 16:50:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48PGoM0C004798; Wed, 25 Sep 2024 16:50:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48PGoMtx004794; Wed, 25 Sep 2024 16:50:22 GMT (envelope-from git) Date: Wed, 25 Sep 2024 16:50:22 GMT Message-Id: <202409251650.48PGoMtx004794@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: 5754008f8511 - stable/14 - hda: remove duplicate codec defines List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 5754008f8511ba95d84a35a1a91ff4e0682dee99 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=5754008f8511ba95d84a35a1a91ff4e0682dee99 commit 5754008f8511ba95d84a35a1a91ff4e0682dee99 Author: Pavel Timofeev AuthorDate: 2024-09-22 10:40:36 +0000 Commit: Ed Maste CommitDate: 2024-09-25 13:17:26 +0000 hda: remove duplicate codec defines Reviewed by: emaste Fixes: 35e492f3bd41 ("Update list of Conexant and Realtek codecs.") Differential Revision: https://reviews.freebsd.org/D45965 (cherry picked from commit 4004e1752ec7992eeace7f0318d2ca3fc7ba9e03) --- sys/dev/sound/pci/hda/hdac.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index 4b4bd70f800f..5e66e8eaed59 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -586,8 +586,6 @@ #define HDA_CODEC_ALC295 HDA_CODEC_CONSTRUCT(REALTEK, 0x0295) #define HDA_CODEC_ALC298 HDA_CODEC_CONSTRUCT(REALTEK, 0x0298) #define HDA_CODEC_ALC299 HDA_CODEC_CONSTRUCT(REALTEK, 0x0299) -#define HDA_CODEC_ALC292 HDA_CODEC_CONSTRUCT(REALTEK, 0x0292) -#define HDA_CODEC_ALC295 HDA_CODEC_CONSTRUCT(REALTEK, 0x0295) #define HDA_CODEC_ALC300 HDA_CODEC_CONSTRUCT(REALTEK, 0x0300) #define HDA_CODEC_ALC623 HDA_CODEC_CONSTRUCT(REALTEK, 0x0623) #define HDA_CODEC_ALC660 HDA_CODEC_CONSTRUCT(REALTEK, 0x0660) From nobody Wed Sep 25 16:51: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 4XDN622Z3Bz5XRmw; Wed, 25 Sep 2024 16:51: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 4XDN621tBDz4Yny; Wed, 25 Sep 2024 16:51:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bSBQwOzkPxiGdO0tZwvtxz6H6oowOm3FW+4jFf4hm5k=; b=pq3V5qWE7M6aCVQnscw7hrEI8wrHO/+37J24fyjMJXIuun3C+eooNLcV+DDcR652N7t2oL 1RnUUzo/Yr2bFEj8lQM/LC3Upw61a+KxA89PdoObiJoLqVpTvwO7wH1ZJQkxaI5CWxa/8+ m7qOKYygyigrKPmrOp2YViN01UR15Rt9UPNTWPOL+SDzvSQK1LKcQEjWJN4k+BHCiE37Mb jfvib8z9lle0SP7h3tgTq38t0F2RAwpPvcyydAQa+4UxCc+CHCd7IrtEt1COFzYAWr5M+M SrHXvoyjwHJEZZoa4f8VJWu+EkbUYdHWDq6vI5yJy0AEL04IJY13+fS3DjMvnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727283066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bSBQwOzkPxiGdO0tZwvtxz6H6oowOm3FW+4jFf4hm5k=; b=RDb6E4jE8dIhVeyrKSKH2cLVOPZQMmmahDLtxwWdfsnDVy40+bH2zP5TyvnClxY0MBejyW vA71px10/w/xxKcf13gcCKDSFj80jJesAA/7oUhSKMEj8rYmSLtgmtHcOsMV81pyQVpTjF szJthFKpr7Aqak3J+wHwpwu/tqeZ1EFNmx+/MVUwIUc63ME6fkPBakCHSd9BB3J4kmAU7P OYEjKh/oWksyRijjKLGnGa+B6DTj1eqp4RwDaCdZgP2uRCr7YnEe9/Tfy4qJ3xwYEnAZIf pdLUqYJH8FDQPrAHW+2Xmri63rYPbyhIym3eDX66f010keC/alpfJ4MwCjuV/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727283066; a=rsa-sha256; cv=none; b=UyPtQ8djC+ubxHsoDwXvw5bnwc83koRa4fssiwT84d9vJJultKKD9u/mCWEC5XwSxhXNMO QmdSOU9gIts7CIXFDqUwl2dx2aFuNni0Jcd6hgH/SO92liyvTNy+N/uU6wglrAqKbOiUVm yL7TquG2VGWmt9ZLPkRE5jWrT1Kv/PMIOpl6O808Jh6pl/yVqbLy8wUbzapcoCSWk69MCA pYXmFRI+g92/9f9R/oHe6tQTYeJQdPx3qfb1rTIbtnFYCDp7tb1HePqXMAkqRhBOalMELn /i/wv9u1kNJdCV2su0Ov1W5YurhTdH7VXPxHxJWfhjOOkgVswYoFr5qFPV2wTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDN6219KczKsC; Wed, 25 Sep 2024 16:51: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 48PGp6rU005035; Wed, 25 Sep 2024 16:51:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48PGp6dV005032; Wed, 25 Sep 2024 16:51:06 GMT (envelope-from git) Date: Wed, 25 Sep 2024 16:51:06 GMT Message-Id: <202409251651.48PGp6dV005032@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: 39f39a96569d - stable/14 - bhyve: simplify slot validation in xHCI emulation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 39f39a96569dc9f8ca9fc8ee351d3d6edabfb631 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=39f39a96569dc9f8ca9fc8ee351d3d6edabfb631 commit 39f39a96569dc9f8ca9fc8ee351d3d6edabfb631 Author: Pierre Pronchery AuthorDate: 2024-09-18 18:52:04 +0000 Commit: Ed Maste CommitDate: 2024-09-25 16:50:41 +0000 bhyve: simplify slot validation in xHCI emulation This is a follow-up to commit e72d86ad9c62 ("bhyve: improve input validation in pci_xhci") -- introducing a helper for slot validation. Co-authored-by: John Baldwin Reviewed by: markj, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46696 (cherry picked from commit f505f9a842eb3e75e16e6c7c6f67d5b592b1bc65) --- usr.sbin/bhyve/pci_xhci.c | 90 +++++++++++++++++------------------------------ 1 file changed, 32 insertions(+), 58 deletions(-) diff --git a/usr.sbin/bhyve/pci_xhci.c b/usr.sbin/bhyve/pci_xhci.c index 77b17d525bdd..43f30c85d85f 100644 --- a/usr.sbin/bhyve/pci_xhci.c +++ b/usr.sbin/bhyve/pci_xhci.c @@ -348,6 +348,7 @@ static void pci_xhci_update_ep_ring(struct pci_xhci_softc *sc, struct pci_xhci_dev_emu *dev, struct pci_xhci_dev_ep *devep, struct xhci_endp_ctx *ep_ctx, uint32_t streamid, uint64_t ringaddr, int ccs); +static int pci_xhci_validate_slot(uint32_t slot); static void pci_xhci_set_evtrb(struct xhci_trb *evtrb, uint64_t port, uint32_t errcode, @@ -849,17 +850,14 @@ pci_xhci_cmd_disable_slot(struct pci_xhci_softc *sc, uint32_t slot) DPRINTF(("pci_xhci disable slot %u", slot)); - cmderr = XHCI_TRB_ERROR_NO_SLOTS; - if (sc->portregs == NULL) + if (sc->portregs == NULL) { + cmderr = XHCI_TRB_ERROR_NO_SLOTS; goto done; + } - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; - goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } dev = XHCI_SLOTDEV_PTR(sc, slot); if (dev) { @@ -867,7 +865,6 @@ pci_xhci_cmd_disable_slot(struct pci_xhci_softc *sc, uint32_t slot) cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; } else { dev->dev_slotstate = XHCI_ST_DISABLED; - cmderr = XHCI_TRB_ERROR_SUCCESS; /* TODO: reset events and endpoints */ } } else @@ -886,19 +883,16 @@ pci_xhci_cmd_reset_device(struct pci_xhci_softc *sc, uint32_t slot) uint32_t cmderr; int i; - cmderr = XHCI_TRB_ERROR_NO_SLOTS; - if (sc->portregs == NULL) + if (sc->portregs == NULL) { + cmderr = XHCI_TRB_ERROR_NO_SLOTS; goto done; + } DPRINTF(("pci_xhci reset device slot %u", slot)); - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; - goto done; - } dev = XHCI_SLOTDEV_PTR(sc, slot); if (!dev || dev->dev_slotstate == XHCI_ST_DISABLED) @@ -928,8 +922,6 @@ pci_xhci_cmd_reset_device(struct pci_xhci_softc *sc, uint32_t slot) ep_ctx->dwEpCtx0 = FIELD_REPLACE( ep_ctx->dwEpCtx0, XHCI_ST_EPCTX_DISABLED, 0x7, 0); } - - cmderr = XHCI_TRB_ERROR_SUCCESS; } pci_xhci_reset_slot(sc, slot); @@ -953,8 +945,6 @@ pci_xhci_cmd_address_device(struct pci_xhci_softc *sc, uint32_t slot, islot_ctx = &input_ctx->ctx_slot; ep0_ctx = &input_ctx->ctx_ep[1]; - cmderr = XHCI_TRB_ERROR_SUCCESS; - DPRINTF(("pci_xhci: address device, input ctl: D 0x%08x A 0x%08x,", input_ctx->ctx_input.dwInCtx0, input_ctx->ctx_input.dwInCtx1)); DPRINTF((" slot %08x %08x %08x %08x", @@ -972,13 +962,9 @@ pci_xhci_cmd_address_device(struct pci_xhci_softc *sc, uint32_t slot, goto done; } - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; - goto done; - } /* assign address to slot */ dev_ctx = pci_xhci_get_dev_ctx(sc, slot); @@ -1042,17 +1028,11 @@ pci_xhci_cmd_config_ep(struct pci_xhci_softc *sc, uint32_t slot, uint32_t cmderr; int i; - cmderr = XHCI_TRB_ERROR_SUCCESS; - DPRINTF(("pci_xhci config_ep slot %u", slot)); - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; - goto done; - } dev = XHCI_SLOTDEV_PTR(sc, slot); assert(dev != NULL); @@ -1175,15 +1155,9 @@ pci_xhci_cmd_reset_ep(struct pci_xhci_softc *sc, uint32_t slot, DPRINTF(("pci_xhci: reset ep %u: slot %u", epid, slot)); - cmderr = XHCI_TRB_ERROR_SUCCESS; - - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; - goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } dev = XHCI_SLOTDEV_PTR(sc, slot); assert(dev != NULL); @@ -1272,15 +1246,9 @@ pci_xhci_cmd_set_tr(struct pci_xhci_softc *sc, uint32_t slot, uint32_t cmderr, epid; uint32_t streamid; - cmderr = XHCI_TRB_ERROR_SUCCESS; - - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; - goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } dev = XHCI_SLOTDEV_PTR(sc, slot); assert(dev != NULL); @@ -1362,7 +1330,6 @@ pci_xhci_cmd_eval_ctx(struct pci_xhci_softc *sc, uint32_t slot, islot_ctx = &input_ctx->ctx_slot; ep0_ctx = &input_ctx->ctx_ep[1]; - cmderr = XHCI_TRB_ERROR_SUCCESS; DPRINTF(("pci_xhci: eval ctx, input ctl: D 0x%08x A 0x%08x,", input_ctx->ctx_input.dwInCtx0, input_ctx->ctx_input.dwInCtx1)); DPRINTF((" slot %08x %08x %08x %08x", @@ -1380,13 +1347,9 @@ pci_xhci_cmd_eval_ctx(struct pci_xhci_softc *sc, uint32_t slot, goto done; } - if (slot == 0) { - cmderr = XHCI_TRB_ERROR_TRB; - goto done; - } else if (slot > XHCI_MAX_SLOTS) { - cmderr = XHCI_TRB_ERROR_SLOT_NOT_ON; + cmderr = pci_xhci_validate_slot(slot); + if (cmderr != XHCI_TRB_ERROR_SUCCESS) goto done; - } /* assign address to slot; in this emulation, slot_id = address */ dev_ctx = pci_xhci_get_dev_ctx(sc, slot); @@ -1723,6 +1686,17 @@ pci_xhci_update_ep_ring(struct pci_xhci_softc *sc, } } +static int +pci_xhci_validate_slot(uint32_t slot) +{ + if (slot == 0) + return (XHCI_TRB_ERROR_TRB); + else if (slot > XHCI_MAX_SLOTS) + return (XHCI_TRB_ERROR_SLOT_NOT_ON); + else + return (XHCI_TRB_ERROR_SUCCESS); +} + /* * Outstanding transfer still in progress (device NAK'd earlier) so retry * the transfer again to see if it succeeds. From nobody Wed Sep 25 20:43: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 4XDTGG58G1z5XhM8; Wed, 25 Sep 2024 20:43: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 4XDTGG4fpnz57KC; Wed, 25 Sep 2024 20:43:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727297014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ouaQ/BzkOhYszB4umkm/NPnK/zmYwaAcfwEJlpF1+g4=; b=j6IhdhZ/tGsOSwmgl9S5oa83S5+7LmlzksCvuPs6MeXPv90tfw2ULVy5Vkmwz8vrNQX0t1 v7wn3bPJsoaMIkMioqCeAkY+ZXdI3x9tazNZu4NoROYeH0XBaOj8HJqM7beeLbJGLT64X7 hGn+sa1Hv+rQAQWmtZ3UC/PhUOkntfW+ve9zqCxo+uz3JO//VknK47NmrVGa7t5UnL1SOg o42Y473d5HB39FAiLaSLlcvX/AMEOveboa+76kVUGrbKDvvB8kYqia4LHu2etDwql/T8A6 DHEH3jTJ59mqLnN7nAxWdRqmBzyc1kFeVNpR7uVzafyu6Ddp51cpdVJ6023AUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727297014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ouaQ/BzkOhYszB4umkm/NPnK/zmYwaAcfwEJlpF1+g4=; b=fFS3Ze2iQNEBK+tr/NfY0aCYjsURTd6JE3QuKu4Vd5c0U8OZTxoJVCDu2ELMazpGm5M6RM 8DxRTMGKFWUV03hd8f3RUHiXs6VMY5ghyU2Xcxxmf/isyPAA1YkZXFLVEANq+Z/VhWZ1wS Gos4zP1SroEF9yziG5AvVwKLOF1HDPO1biaLGfM0+qADa9XqK/z2C0bfPieQcCPeAvKUfF GjpBZjoqybQLjDlRRRiV6zHzElUEhZqiS0QMIQS5lAeeBKQ5zXxPPX163DGA+Pon+84Whn hc17Zhga0N98TTdw+QBdB6WXBCJOxgwZa1YcNmLweRl+NZf0OuwqQ63pWXjveg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727297014; a=rsa-sha256; cv=none; b=dtrYgEffeP1vEzydABKbJ7U8CmQAC2O1nr4xedR3Qd1TjjeQMAhUlc7vdSOY5PcA+ALlYX H43MR5G7V8Hv/kQdK/ZkFZh/zRkFAnsU0Q/4QwE+LoMYM50BTopMV44FKH1PpbDtfPYgga KUUoffdIqhs4WHSNfzBHQ7zphVoxkvYJAp/AiqRG6NQj8OWtxxGVfOfdQTmcgeklcdi+pf cdkSCoue6RTzFva6xKZWT4t7LW9dnkdBOcn9Wbd7vhE1+KgkqaYgBxw/gXqNS8Q5r+QcJo Oe+O8NGpZ7MtTnQkHeLdaB8MeEazt0PKdq0+h5y3zcLTSZps0SU63rmwoKuJHA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDTGG4FsKzS9L; Wed, 25 Sep 2024 20:43: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 48PKhYHE003321; Wed, 25 Sep 2024 20:43:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48PKhYeD003318; Wed, 25 Sep 2024 20:43:34 GMT (envelope-from git) Date: Wed, 25 Sep 2024 20:43:34 GMT Message-Id: <202409252043.48PKhYeD003318@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 4f4860c9b07c - stable/14 - regex: mixed sets are misidentified as singletons List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4f4860c9b07cc10cb6acbe6fbd71db45e344d2e6 Auto-Submitted: auto-generated The branch stable/14 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=4f4860c9b07cc10cb6acbe6fbd71db45e344d2e6 commit 4f4860c9b07cc10cb6acbe6fbd71db45e344d2e6 Author: Bill Sommerfeld AuthorDate: 2023-12-21 03:46:14 +0000 Commit: Kyle Evans CommitDate: 2024-09-25 20:42:25 +0000 regex: mixed sets are misidentified as singletons Fix "singleton" function used by regcomp() to turn character set matches into exact character matches if a character set has exactly one element. The underlying cset representation is complex; most critically it records"small" characters (codepoint less than either 128 or 256 depending on locale) in a bit vector, and "wide" characters in a secondary array. Unfortunately the "singleton" function uses to identify singleton sets treated a cset as a singleton if either the "small" or the "wide" sets had exactly one element (it would then ignore the other set). The easiest way to demonstrate this bug: $ export LANG=C.UTF-8 $ echo 'a' | grep '[abà]' It should match (and print "a") but instead it doesn't match because the single accented character in the set is misinterpreted as a singleton. PR: 281710 Reviewed by: kevans, yuripv Obtained from: illumos (cherry picked from commit 8f7ed58a15556bf567ff876e1999e4fe4d684e1d) --- lib/libc/regex/regcomp.c | 25 ++++++++++++++++++----- lib/libc/tests/regex/multibyte.sh | 43 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 62 insertions(+), 6 deletions(-) diff --git a/lib/libc/regex/regcomp.c b/lib/libc/regex/regcomp.c index 55f96a2ccbd2..eae4d02657e8 100644 --- a/lib/libc/regex/regcomp.c +++ b/lib/libc/regex/regcomp.c @@ -1591,17 +1591,32 @@ singleton(cset *cs) { wint_t i, s, n; + /* Exclude the complicated cases we don't want to deal with */ + if (cs->nranges != 0 || cs->ntypes != 0 || cs->icase != 0) + return (OUT); + + if (cs->nwides > 1) + return (OUT); + + /* Count the number of characters present in the bitmap */ for (i = n = 0; i < NC; i++) if (CHIN(cs, i)) { n++; s = i; } - if (n == 1) - return (s); - if (cs->nwides == 1 && cs->nranges == 0 && cs->ntypes == 0 && - cs->icase == 0) + + if (n > 1) + return (OUT); + + if (n == 1) { + if (cs->nwides == 0) + return (s); + else + return (OUT); + } + if (cs->nwides == 1) return (cs->wides[0]); - /* Don't bother handling the other cases. */ + return (OUT); } diff --git a/lib/libc/tests/regex/multibyte.sh b/lib/libc/tests/regex/multibyte.sh index a736352bf0a2..18323f500a2b 100755 --- a/lib/libc/tests/regex/multibyte.sh +++ b/lib/libc/tests/regex/multibyte.sh @@ -1,4 +1,3 @@ - atf_test_case bmpat bmpat_head() { @@ -45,8 +44,50 @@ icase_body() echo $c | atf_check -o "inline:$c\n" sed -ne "/$a/Ip" } +atf_test_case mbset cleanup +mbset_head() +{ + atf_set "descr" "Check multibyte sets matching" +} +mbset_body() +{ + export LC_CTYPE="C.UTF-8" + + # This involved an erroneously implemented optimization which reduces + # single-element sets to an exact match with a single codepoint. + # Match sets record small-codepoint characters in a bitmap and + # large-codepoint characters in an array; the optimization would falsely + # trigger if either the bitmap or the array was a singleton, ignoring + # the members of the other side of the set. + # + # To exercise this, we construct sets which have one member of one side + # and one or more of the other, and verify that all members can be + # found. + printf "a" > mbset; atf_check -o not-empty sed -ne '/[aà]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[aà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "á" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "b" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[aà]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[aà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "á" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset + printf "b" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset +} +mbset_cleanup() +{ + rm -f mbset +} + atf_init_test_cases() { atf_add_test_case bmpat atf_add_test_case icase + atf_add_test_case mbset } From nobody Wed Sep 25 20:43: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 4XDTGN3PNCz5Xh7b; Wed, 25 Sep 2024 20:43: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 4XDTGN2wxWz57hF; Wed, 25 Sep 2024 20:43:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727297020; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FnISa9ytgg+lV8TNpbUfXZG0FGmnDUx6H/8vFcYHedw=; b=b15GTIcM/sVieR4VODY+nadUZGU6RpxdvdfqJtrFNM1woW2+mptJB/Q8tWASssqORPB8BW zM/3/VhLAhJw84uJ9DdOao2IqgCU3psZEC2jRbkTV/BpTn2mRV4z6a5g+oWVdF1bX4tesk 0SkRoWu5bLmGYK9u+MCkoXfbAAR4KqfVERLmn6OS5OdyLE8LzbeX8r6L9K0n3h9XFIjCq7 TbkBzgYdysjrbt3dXybgoZkDxUDIW3VRdV0CrcuR6JUD37f1Zt4mVZrf4x66L1UfySmvv9 1L2Fl0QHz/qftCZhTwrIY4P9eoYwLiwLnqNpxKy3BzqYBiTnMyn1AZV3wZL8cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727297020; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FnISa9ytgg+lV8TNpbUfXZG0FGmnDUx6H/8vFcYHedw=; b=j3kNtMwVnU3p43/NCxi5YYCBwaDzzW/mizzfAn9g77WhNnQjiJn0FuHfnl9TcIM7vuV/On b7EALs4vK0sYduY+Lbt5FJToaQlOfCxduY3atkZVjY1wf+BUZZB3Di5TRVTJQYi8pYR1gX Mgt/+M8CW/5PyDWp7m5HafqAeMS/dkU6kWI276X6ruX+p8G7EWsmpnyT+GlLTcvqxlWV1r hcFQ4B0XEoY6IfmsrsASjXZkOJqlNFKMzxUTuTbjm6hvSjUWDDlhKoVmDOFAzixqm8jGUp CDItp+aM02mPs4fZto1L7CYlZmVBrUY7/xnYgyTcI9JXOg9lvkN5MCeb7enK2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727297020; a=rsa-sha256; cv=none; b=WRwGK2sAhhmcd9wdU4zwhTKvFzG3WG1Q/Oan0m/lTqG4XzDfE+zCjBiR+s05d8n1f+4MO/ PFRHJCEcSTykC5orEMJhPacBAx23nPyvvDz8ZhKMQExDP0vTUsfVH7rBSG4uL3Nwd/OQ/d rpWCzR3CpNDFIJKUjhI1ugxV0lFmVPG/4JLCov/1S0QnmXV+N8585JsgNBmN+j1EyM4Xkm Mx5bb0aEaIkuN8Oqy80Eei/qW+4OOo+LJxtqJWTLjS0O7oSCSgIgnZfiO9Ky5/7Ja8/QwG +4f2EahOs27yCrml+q72c0w896I0FpsyZNhpwsZ66HJ3ievYtVm4Sr3Kdow33A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDTGN2Y9JzS9M; Wed, 25 Sep 2024 20:43: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 48PKheeb003478; Wed, 25 Sep 2024 20:43:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48PKhett003475; Wed, 25 Sep 2024 20:43:40 GMT (envelope-from git) Date: Wed, 25 Sep 2024 20:43:40 GMT Message-Id: <202409252043.48PKhett003475@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: d96ce6d00070 - stable/13 - regex: mixed sets are misidentified as singletons List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d96ce6d000703f3f57d9214b741e16cc7741d77e Auto-Submitted: auto-generated The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=d96ce6d000703f3f57d9214b741e16cc7741d77e commit d96ce6d000703f3f57d9214b741e16cc7741d77e Author: Bill Sommerfeld AuthorDate: 2023-12-21 03:46:14 +0000 Commit: Kyle Evans CommitDate: 2024-09-25 20:42:28 +0000 regex: mixed sets are misidentified as singletons Fix "singleton" function used by regcomp() to turn character set matches into exact character matches if a character set has exactly one element. The underlying cset representation is complex; most critically it records"small" characters (codepoint less than either 128 or 256 depending on locale) in a bit vector, and "wide" characters in a secondary array. Unfortunately the "singleton" function uses to identify singleton sets treated a cset as a singleton if either the "small" or the "wide" sets had exactly one element (it would then ignore the other set). The easiest way to demonstrate this bug: $ export LANG=C.UTF-8 $ echo 'a' | grep '[abà]' It should match (and print "a") but instead it doesn't match because the single accented character in the set is misinterpreted as a singleton. PR: 281710 Reviewed by: kevans, yuripv Obtained from: illumos (cherry picked from commit 8f7ed58a15556bf567ff876e1999e4fe4d684e1d) --- lib/libc/regex/regcomp.c | 25 ++++++++++++++++++----- lib/libc/tests/regex/multibyte.sh | 43 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 62 insertions(+), 6 deletions(-) diff --git a/lib/libc/regex/regcomp.c b/lib/libc/regex/regcomp.c index 42fa1b99e58e..2897052fa0f8 100644 --- a/lib/libc/regex/regcomp.c +++ b/lib/libc/regex/regcomp.c @@ -1592,17 +1592,32 @@ singleton(cset *cs) { wint_t i, s, n; + /* Exclude the complicated cases we don't want to deal with */ + if (cs->nranges != 0 || cs->ntypes != 0 || cs->icase != 0) + return (OUT); + + if (cs->nwides > 1) + return (OUT); + + /* Count the number of characters present in the bitmap */ for (i = n = 0; i < NC; i++) if (CHIN(cs, i)) { n++; s = i; } - if (n == 1) - return (s); - if (cs->nwides == 1 && cs->nranges == 0 && cs->ntypes == 0 && - cs->icase == 0) + + if (n > 1) + return (OUT); + + if (n == 1) { + if (cs->nwides == 0) + return (s); + else + return (OUT); + } + if (cs->nwides == 1) return (cs->wides[0]); - /* Don't bother handling the other cases. */ + return (OUT); } diff --git a/lib/libc/tests/regex/multibyte.sh b/lib/libc/tests/regex/multibyte.sh index a736352bf0a2..18323f500a2b 100755 --- a/lib/libc/tests/regex/multibyte.sh +++ b/lib/libc/tests/regex/multibyte.sh @@ -1,4 +1,3 @@ - atf_test_case bmpat bmpat_head() { @@ -45,8 +44,50 @@ icase_body() echo $c | atf_check -o "inline:$c\n" sed -ne "/$a/Ip" } +atf_test_case mbset cleanup +mbset_head() +{ + atf_set "descr" "Check multibyte sets matching" +} +mbset_body() +{ + export LC_CTYPE="C.UTF-8" + + # This involved an erroneously implemented optimization which reduces + # single-element sets to an exact match with a single codepoint. + # Match sets record small-codepoint characters in a bitmap and + # large-codepoint characters in an array; the optimization would falsely + # trigger if either the bitmap or the array was a singleton, ignoring + # the members of the other side of the set. + # + # To exercise this, we construct sets which have one member of one side + # and one or more of the other, and verify that all members can be + # found. + printf "a" > mbset; atf_check -o not-empty sed -ne '/[aà]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[aà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "á" > mbset; atf_check -o not-empty sed -ne '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "b" > mbset; atf_check -o not-empty sed -ne '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[aà]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[aà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "á" > mbset; atf_check -o not-empty sed -Ene '/[aàá]/p' mbset + printf "à" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset + printf "a" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset + printf "b" > mbset; atf_check -o not-empty sed -Ene '/[abà]/p' mbset +} +mbset_cleanup() +{ + rm -f mbset +} + atf_init_test_cases() { atf_add_test_case bmpat atf_add_test_case icase + atf_add_test_case mbset } From nobody Thu Sep 26 00:49: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 4XDZkC32KLz5XxXV; Thu, 26 Sep 2024 00:49: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 4XDZkC2MK2z4Gmv; Thu, 26 Sep 2024 00:49:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727311779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4k5t0h9wxw0OO/tJNV5oWdDzeeBcuYMvDo5/0oASuls=; b=ViD8knIfNfBWq1xNLZ761An9rahiHlTZMLl5xjIF2phoRKx+BeOF1HBGe78PO11yyeituL X2q/fkiA/3NyZ85Tt2tmxQJq5cjaI3vvf+INRzVYNtnIMFu54GochHN/nAO4qrcQ5zR8U6 YR4m7dD4RKrQHkOmklaWOgRvJhK7T2n9y+3Cp7d1VWklAgDgxMLENUJCnTka2BZmz6ldq+ a2Xji1NdO/v2SRFTFIn9RwyDOoG9mKeEGrzd5JvUO8kuNp6qcQ4VsBWBJGOn/RNNrzqKG6 Xt5ol+B7ANQwHIqflBRqv9OuSdgUFknnSN7wVxZtji9dDnXiFYMdwI3PqgZ4rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727311779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4k5t0h9wxw0OO/tJNV5oWdDzeeBcuYMvDo5/0oASuls=; b=XMeKSW+teVRWEjvC1PB+em8whHmlX4zIwcbnb/jCf+88GoBi5U3vldlGTAEU5Sp/6JuMfx HbQzwp+xvWoRhgqs8V77eM4IotFonklQDeZ6jbIDdCHozul7TQX0MGuDCM0JXIZ+il4gPv 8zITsxLRu0wdKQjxqc6fl1nhR6XcJj4sNi0JxQQHrTDd+PxPswDJWRuTSAsHoX3XjDDZvE obWYGguVkcH+ijEnUPKw5AlfFVpgPaUIDETAEzEM+VV6MTzW9u1MyIRg2eimO+FYwrDzBW p5PdvxRNvxLy7w3DGWqFeefbxG93zG8m6JsJoJGb7arPGOhA7RCqa97SakInOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727311779; a=rsa-sha256; cv=none; b=ckQmSSg7UoN6MsK0IP2NsiSjNnf4VdcSvgxjWwaM1NR2gCrE/ERaMgTm+7PbsCJczWc1v/ +8zq4Mi917SMdRXWVCxNXneoHEf7KdbGbRI+/HlAPiKeFiIfjtGeS3vdY+pNOgsm6b53jl AVvpUspUHcvnAp/jhzgW3KPxONHVVqnB3tVZWeqdumq5wBtKiED/DVMfBhNWHjA0dXHeam rrzlxcuC/LLpjPAyWLYJW0/HqHcVYK3SHAAcG+997gs0h7cFgoIWsl18Wy0f/t8pNhs5IH XSKqIl4LGmI3ZRp0uHoNbDdli16030JqN4HH1LaPdxw3VIrzh0HsSbnr6faklw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDZkB6pNGzbWK; Thu, 26 Sep 2024 00:49: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 48Q0ncbL010216; Thu, 26 Sep 2024 00:49:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q0nc8Q010213; Thu, 26 Sep 2024 00:49:38 GMT (envelope-from git) Date: Thu, 26 Sep 2024 00:49:38 GMT Message-Id: <202409260049.48Q0nc8Q010213@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Motin Subject: git: 8748daf670ee - stable/14 - ure(4): Add ID for LAN port in Thinkpad OneLink+ dock List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8748daf670eec754b5e926d107ca1f347cca6948 Auto-Submitted: auto-generated The branch stable/14 has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=8748daf670eec754b5e926d107ca1f347cca6948 commit 8748daf670eec754b5e926d107ca1f347cca6948 Author: Alexander Motin AuthorDate: 2024-09-19 01:55:24 +0000 Commit: Alexander Motin CommitDate: 2024-09-26 00:49:31 +0000 ure(4): Add ID for LAN port in Thinkpad OneLink+ dock That's a pretty old dock for Thinkpad X1 Carbon Gen4 and few others. MFC after: 1 week (cherry picked from commit a1bb5bdb0ab69bc3ce1f6051b6abc0cbaab83faa) --- sys/dev/usb/net/if_ure.c | 1 + sys/dev/usb/usbdevs | 1 + 2 files changed, 2 insertions(+) diff --git a/sys/dev/usb/net/if_ure.c b/sys/dev/usb/net/if_ure.c index 26fe17bb072e..55444030869c 100644 --- a/sys/dev/usb/net/if_ure.c +++ b/sys/dev/usb/net/if_ure.c @@ -102,6 +102,7 @@ static const STRUCT_USB_HOST_ID ure_devs[] = { URE_DEV(LENOVO, TBT3LANGEN2, 0), URE_DEV(LENOVO, ONELINK, 0), URE_DEV(LENOVO, RTL8153_04, URE_FLAG_8153), + URE_DEV(LENOVO, ONELINKPLUS, URE_FLAG_8153), URE_DEV(LENOVO, USBCLAN, 0), URE_DEV(LENOVO, USBCLANGEN2, 0), URE_DEV(LENOVO, USBCLANHYBRID, 0), diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs index 39bfd258502b..66695c195492 100644 --- a/sys/dev/usb/usbdevs +++ b/sys/dev/usb/usbdevs @@ -2831,6 +2831,7 @@ product LENOVO ETHERNET 0x7203 USB 2.0 Ethernet product LENOVO RTL8153 0x7205 USB 3.0 Ethernet product LENOVO ONELINK 0x720a USB 3.0 Ethernet product LENOVO RTL8153_04 0x720c USB 3.0 Ethernet +product LENOVO ONELINKPLUS 0x3054 LAN port in Thinkpad OneLink+ dock product LENOVO TBT3LAN 0x3069 LAN port in Thinkpad TB3 dock product LENOVO USBCLAN 0x3062 LAN port in Thinkpad USB-C dock product LENOVO TBT3LANGEN2 0x3082 LAN port in Thinkpad TB3 dock gen2 From nobody Thu Sep 26 00:50: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 4XDZlG58J9z5XxGb; Thu, 26 Sep 2024 00:50:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDZlG4cpKz4GmH; Thu, 26 Sep 2024 00:50:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727311834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ne68vmF+eULWm4vqDdudTjuX2VRogCH+hQSgS6VWFNA=; b=QpIgTRuQy9bmySWJs6aj3R8PBQoobSPC+ymwTvGm+SLkfRGqsQ8XTc9pR7ZsmkQexBjFU/ uG9YAwqxw2BgDpcNJNOz5Y4saJQ7D4u/kgbCdrEL8f4W+teSJy4gXVeiOJfPo4Mm6z45of O6og+58XAYFPMknTr5CIiXyHKVR1N5fLBh9514HVgEvkO2lunpKRTO+9UXFZcJV6CgdehI b7PEhsfjXYA3O58YFxUAL5hjtbNDgNpWws+s7Y2sHAt1O3pZ/fioZMX9Wm+UfZY3eIuNXR iEXjsSObven5JHeMOGjoVJT8x31L6+l6NlaJ7YSjoMzR6uzXEa0Jw6fH2rzXeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727311834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ne68vmF+eULWm4vqDdudTjuX2VRogCH+hQSgS6VWFNA=; b=BGf3w/4y2oE6ve7NwxY6pKBx7MismQ/OiTAdWMBAAWzDInY4OaAP938LxBFvAHgXIHYkUd 5CUm/fxD8z9AP3+LbNnESyV/WrRCX10bQgmkrndTotIH9EHBYOuxitsG6DYP0w+y0ObPHp 2QwdAvfKbpmal/RlfPb5zVO17UuA91MwBHI5unaE64ZIQd5dsgxjjN2VUqSsWs3SkKv2kD fu5gcd/RVkksGoClqirgJPAS+HDtEG/btshqR8WM6FTIVY9MuPe70igAEcVyMpy7g14MeC RnJUcnVzr7ZEk2k6ZftsEcMtrkejot9tqtfkebeHsel6Psj6/ICAr3/3Ldn+Iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727311834; a=rsa-sha256; cv=none; b=M5GERh7Vf98gQPnu71lAtyJQX8RpqKNaSEIJf952fOl0RRUMLUnxvuw+/GY7r4MqKDIgm1 IEH7JYo6GQyPl55GLOvHAV5ZKqelhUNgDwfZ/kyF2pKSs7znQKXgyLrkFfUPlClITdX01a 1hhKiUpMeF9Xj1YVgS2+DAVPS8GQNU4ytbXHTTYtEnvgCyxDjIhB5MswUQ/NqHlYTGgSJp m1Lxed5UHeVuD5NpZdNyaR/0iygL1Gaanu2ppkBQfMflU7xfGjBX2y3/ewpaOllJwQMp1P AU+5gdqGI1ZhfpD4M1rRtuo5sMnzFnO44iBQJWk7ZrTT//Ve5mMNQF3EuVUIgg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDZlG47q5zbCm; Thu, 26 Sep 2024 00:50:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48Q0oYG1019016; Thu, 26 Sep 2024 00:50:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q0oYYd019013; Thu, 26 Sep 2024 00:50:34 GMT (envelope-from git) Date: Thu, 26 Sep 2024 00:50:34 GMT Message-Id: <202409260050.48Q0oYYd019013@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alexander Motin Subject: git: d89090334a32 - stable/13 - ure(4): Add ID for LAN port in Thinkpad OneLink+ dock List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mav X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d89090334a32bf99dd93caf329ce55a024b815e8 Auto-Submitted: auto-generated The branch stable/13 has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=d89090334a32bf99dd93caf329ce55a024b815e8 commit d89090334a32bf99dd93caf329ce55a024b815e8 Author: Alexander Motin AuthorDate: 2024-09-19 01:55:24 +0000 Commit: Alexander Motin CommitDate: 2024-09-26 00:50:09 +0000 ure(4): Add ID for LAN port in Thinkpad OneLink+ dock That's a pretty old dock for Thinkpad X1 Carbon Gen4 and few others. MFC after: 1 week (cherry picked from commit a1bb5bdb0ab69bc3ce1f6051b6abc0cbaab83faa) --- sys/dev/usb/net/if_ure.c | 1 + sys/dev/usb/usbdevs | 1 + 2 files changed, 2 insertions(+) diff --git a/sys/dev/usb/net/if_ure.c b/sys/dev/usb/net/if_ure.c index 385c19654884..1104798b1c4d 100644 --- a/sys/dev/usb/net/if_ure.c +++ b/sys/dev/usb/net/if_ure.c @@ -102,6 +102,7 @@ static const STRUCT_USB_HOST_ID ure_devs[] = { URE_DEV(LENOVO, TBT3LANGEN2, 0), URE_DEV(LENOVO, ONELINK, 0), URE_DEV(LENOVO, RTL8153_04, URE_FLAG_8153), + URE_DEV(LENOVO, ONELINKPLUS, URE_FLAG_8153), URE_DEV(LENOVO, USBCLAN, 0), URE_DEV(LENOVO, USBCLANGEN2, 0), URE_DEV(LENOVO, USBCLANHYBRID, 0), diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs index 0ce6092c423e..76270f596295 100644 --- a/sys/dev/usb/usbdevs +++ b/sys/dev/usb/usbdevs @@ -2829,6 +2829,7 @@ product LENOVO ETHERNET 0x7203 USB 2.0 Ethernet product LENOVO RTL8153 0x7205 USB 3.0 Ethernet product LENOVO ONELINK 0x720a USB 3.0 Ethernet product LENOVO RTL8153_04 0x720c USB 3.0 Ethernet +product LENOVO ONELINKPLUS 0x3054 LAN port in Thinkpad OneLink+ dock product LENOVO TBT3LAN 0x3069 LAN port in Thinkpad TB3 dock product LENOVO USBCLAN 0x3062 LAN port in Thinkpad USB-C dock product LENOVO TBT3LANGEN2 0x3082 LAN port in Thinkpad TB3 dock gen2 From nobody Thu Sep 26 03:29: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 4XDfH12sXyz5Y6d0; Thu, 26 Sep 2024 03:29:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDfH11CZKz4VmG; Thu, 26 Sep 2024 03:29:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mMwN9j6TRTURc+1dSJnu6kPAW1/Levp+aYWzuj4rVDs=; b=bh6wN70rbNuiX+Gb2SE8YI5xh/38FHxQre228I8qd564Aq59p+uwadzXrqRu8diE91lXWn 4+2rW8fPrWKE8wgpRNlITjUgVANLTaAvN4LnoC1zjtnkUMLhRwmYE38oyf6y99PYZOAEbJ rqZdXf1nmjv/3G68TgwesEViZiqgmn1ZSbg9GI/EX9FUfMEIUa2Rfor77uS/7/i1LP48fJ n44Np/5jyq8uiAYki2KmgAI29DDroVb1o5ORUAso9yTgchEhn+VcdhABcLKystHefOknFo OPGZSaJvWoObvirs4f7R71DxeKGaU0yNIBYSb71LuEC6S+ugf0XV7XOIcLNEcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mMwN9j6TRTURc+1dSJnu6kPAW1/Levp+aYWzuj4rVDs=; b=jYuzqjLMN6uWAUbUw5SQhnbmedAe4YoJHTPfDV01rxFbn6d4BbBwQC9o/RItp2KEVux1KR bs2cQ0tXNO7bz3BvCggLCAnkf2SshTNQGtqhNGS1BZqaZyr4k/xzv/I9dzVTyUjlhfxdWm F+2MleQeS6af3iCiL/KXYblUSLCAlolxKsvOA6KoZLoyuPajhriBG/P9VewUMKuC6cgLze KqzkRMOUIBp/i+3l3tAo55Sm9mEwR1Pu86Y4ppvlV+h4WEYnVCmNt48DCXkcW7QwR2V+Y7 DDNAqa9X7UkBIKjUj3dGMnzsAd75uI8ghJEWq/gZWbklCiHagHVOciRRsIviIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321389; a=rsa-sha256; cv=none; b=PBVqe3nw/1fN09HUdZcwLjEXMJj3zljPuKkuHeYnIzGBbY49bWuZ/fID6KqWSrco8zM6Mh rli8i1kBLe/0pXkeSNKvjbmb1TZxLS7ysqprNd59rAdIwQqajUZyMX6TeA33hcpldiVVL5 zVUUVqTx8mMaZd9MAreUFhZO9uXYESxek4yuj9+0VhErSwmbMeVeQ4Qu89t7VgBRoP3lR1 ZLSgQ2lzs3US9F3NrSFQH/JQi77TmWbk2hYZ1R8SGXj9G9m/Bxk98japacynMOctMiWu1b j7dqMwXQDIV3lq1z5qSmdzRhIIpUGBobmCJtl2nw32YlLN/jl79OfHcltoHY0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfH05SKXzgfd; Thu, 26 Sep 2024 03:29: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 48Q3TmBd082609; Thu, 26 Sep 2024 03:29:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3TmeS082606; Thu, 26 Sep 2024 03:29:48 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:29:48 GMT Message-Id: <202409260329.48Q3TmeS082606@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: ee5cdcc50d36 - stable/14 - e1000: fix link power down List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ee5cdcc50d36a9059da2c3bfff49521909ea1bd5 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=ee5cdcc50d36a9059da2c3bfff49521909ea1bd5 commit ee5cdcc50d36a9059da2c3bfff49521909ea1bd5 Author: Anatoly Burakov AuthorDate: 2024-09-19 05:38:32 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:27:57 +0000 e1000: fix link power down DPDK commit message net/e1000/base: fix link power down Current code is a result of work to reduce duplication between various device models. However, the logic that was replaced did not exactly match the new logic, and as a result the link power down was not working correctly for some NICs, and the link remained up even when the interface is down. Fix it to correctly power down the link under all circumstances that were supported by old logic. Fixes: 44dddd1 ("net/e1000/base: remove duplicated codes") Cc: stable@dpdk.org Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (a8218d0) (cherry picked from commit 811912c46b5886f1aa3bb7a51a6ec1270bc947a8) --- sys/dev/e1000/e1000_base.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/e1000/e1000_base.c b/sys/dev/e1000/e1000_base.c index ff810821d9e9..d83dc48c4d4d 100644 --- a/sys/dev/e1000/e1000_base.c +++ b/sys/dev/e1000/e1000_base.c @@ -137,7 +137,7 @@ void e1000_power_down_phy_copper_base(struct e1000_hw *hw) return; /* If the management interface is not enabled, then power down */ - if (phy->ops.check_reset_block(hw)) + if (!(e1000_enable_mng_pass_thru(hw) || phy->ops.check_reset_block(hw))) e1000_power_down_phy_copper(hw); } From nobody Thu Sep 26 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 4XDfH449Nrz5Y6P2; Thu, 26 Sep 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 4XDfH41bXcz4WJ5; Thu, 26 Sep 2024 03:29:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321392; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FvjPdEbOgGMzgzA+iN0Bc3FtWdOyDumK4PvifI5n7CM=; b=ZAlMyACtRza+fV8E7JqkNOqy/NBN42WY6L9itBkUVtPtxV7jf70Ify15sQECxVJlO/5KLW QMeyMatvjOn/NwdZeD5dY0d96l5NXWiALCaYZsOwLFmCqkebu86LzsTNDdlV1OCpijdogj /r9EsEnQ7GSh5cb3dWtI0k4CrsTbrVqKUzzYTIVUD84Ilv8DU4dy0s24PgtITO0UtPsIc0 9xR/COWv4j15ay862IFpe2GE2/jJ3L8GcczgIo+7uDt+wxSn6/V/G3xVP2kf30so14nJiW PM9/G6OwM/uoYFMyDZ3RVqpKM5JhOPSeyswJvorohHQgPrzzRRnba3cpsIOdsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321392; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FvjPdEbOgGMzgzA+iN0Bc3FtWdOyDumK4PvifI5n7CM=; b=WsWIqAFHhZIr8YET1K1lh9S2tN6EpTi64NqmksKEsY2aJalm0qQmH9ebV5QxD6WoM8hLc8 qlTLXElV9h4zhCseIyDSfUqVO6AMB/euj8u6NHGARtCVSwg3yA1G0UNmjaK3zv4Fz69a4Y G70HEOuF1r1kkBL//AwZkVOv8pMOgpKkyYOvQoCi1lrcDUbUrnz6+mf0cnXqozArZwTvgu 8aoZ1C0J2eMKcj51uEil2tFYGB8zf6OJ2QRr8mJBiUtxBp3okhi8P8CO9MqGmNdkJt5/tt fAccYvXg04H2EhpVVcuH8X4QbWc0zSIC6UCt3aT6lrMCKKGbR0SKut+vam+JSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321392; a=rsa-sha256; cv=none; b=Sn8ibT36+ldJUQk45vpEIwz/mElb5AyrVpuvEkBE2giRnz8ilPg3vOkVSWySgdgle5Eb9j 0cb8uY39RBVLcRUr13DkKfvU6souAzaTRxUFlCiSRrmojeKPjNd6Ej7/cLJNXX+ySEgd2Y 0uyuo0y6Ic2pqzusz0QGFsmEoELKn6kz8ZbwevVcT2qZK6FXkrjbC7ItvfQ/Gwoxjrszes vjeeOvjedsshjGol/qRoJZQ9E6xLx1w6RJVr9QyoUqEOY8mnKpo0OUHseqB0Sz8+vcwINV j3erf9D2zgtQJyXSQKUpKnZ6YgnwNpbuPh6eObTclZdst9bOC8gnqnAuAeyDvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfH4142XzgQL; Thu, 26 Sep 2024 03:29: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 48Q3TqRe082749; Thu, 26 Sep 2024 03:29:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3TqYL082746; Thu, 26 Sep 2024 03:29:52 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:29:52 GMT Message-Id: <202409260329.48Q3TqYL082746@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: a23401dd1afd - stable/14 - ixgbe: fix PHY ID for X550 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: a23401dd1afdf7b2617bf09072781580b12d587c Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a23401dd1afdf7b2617bf09072781580b12d587c commit a23401dd1afdf7b2617bf09072781580b12d587c Author: Radoslaw Tyl AuthorDate: 2024-09-19 20:42:14 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:28:47 +0000 ixgbe: fix PHY ID for X550 DPDK commit message net/ixgbe/base: fix PHY ID for X550 Function ixgbe_get_phy_type_from_id() for X550_PHY_ID2 and X550_PHY_ID3 always return ixgbe_phy_unknown instead of ixgbe_phy_aq because phy ID's last 4 bits are always masked, and should not be taken into account when selecting phy type. This patch adds default PHY ID for X550 devices with mask on last 4 bits (0xFFFFFFF0), and fixes the switch statement to use it. Fixes: 58ddc80 ("ixgbe/base: add new X550 PHY ids") Cc: stable@dpdk.org Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Alice Michael Obtained from: DPDK (a9f5a3b) (cherry picked from commit 9b56dfd27c64fcaf2dfbaa1eb3e2bd2b163fa56c) --- sys/dev/ixgbe/ixgbe_phy.c | 3 +-- sys/dev/ixgbe/ixgbe_type.h | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index f4bee6c34f53..00f396283879 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -462,8 +462,7 @@ enum ixgbe_phy_type ixgbe_get_phy_type_from_id(u32 phy_id) case TN1010_PHY_ID: phy_type = ixgbe_phy_tn; break; - case X550_PHY_ID2: - case X550_PHY_ID3: + case X550_PHY_ID: case X540_PHY_ID: phy_type = ixgbe_phy_aq; break; diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index deb68fa03312..1b447f42f17a 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -1696,6 +1696,7 @@ struct ixgbe_dmac_config { #define TN1010_PHY_ID 0x00A19410 #define TNX_FW_REV 0xB #define X540_PHY_ID 0x01540200 +#define X550_PHY_ID 0x01540220 #define X550_PHY_ID2 0x01540223 #define X550_PHY_ID3 0x01540221 #define X557_PHY_ID 0x01540240 From nobody Thu Sep 26 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 4XDfH33mDtz5Y6mR; Thu, 26 Sep 2024 03:29: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDfH31WPgz4W9Z; Thu, 26 Sep 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=1727321391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aK/4owFrdnAQyLhe2325otgqVY2trPbuwkgYko9zWJc=; b=xRl7k3Mv2R5MBWRxhtyktNHorkAUENDIyvO2L9WXUe9cdSq5UVIOV3PU14hzlCjo4lgPmR g2kBkPAL2iykHh4/6Nwp5DCczGsDNRgXBgvCo1kdkP6dZY6UbkcGaZHQGPrXmkYCUrg4na X/osnWnggBXNTtCHv4djtHnyoHt4dhq0tg4jcygvLB++otn9vCW2xH5M7z7xuZqGxEwbK3 xqoEKKpQKokFaCx2uBxwdnqgDUb6w9SV0yu7GHnfliwHiCxsyOz+5TmtbF3G0aychZvYSE VY3xe7iR2ZaAfrwh/zqRWzQ1Om+20gU1BHPdzDeqGYXeb4sRPSCoeQSkdvhpHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aK/4owFrdnAQyLhe2325otgqVY2trPbuwkgYko9zWJc=; b=IbOKZQDcY+tD+/eYqqbzxmkHXtUyFI34bb3QeHP0MokgH3i9ucrKs35Ecg7fu2zmlj9Iq2 CV53HlimBQ3CZ62LdppAWBKZyYZlm0kCO35RBnA12esR3gXs/ieDgrurqXf7BXB2KICwm4 MKwbOAH3hj+lE1xfJzziYhezw+jm6k9lohqk/TDpIPtF27o6AmmpqF1JW9f/q8h7N2rtmH tynG7VS6WuZ8Z8Hm+1lXxc8NKSsvtrid1BEphP5ronfntPXSQeTmmsfjIfXIsnLPDS0CwI N43E5OkcDoTW63fpUImr04BwvcOfG7YGTkJEZnhJpRb1FjNE3Nn+gJUEfE5Pxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321391; a=rsa-sha256; cv=none; b=KRdABsRNAzNczxx0pCME04HWrlxvZ1QXVVdF75iF67Aw0x8oZqjzkQgmNpDauoCoM+ZB7c c/QVbTjgyFXbKdJfgAoJ7J9s5o4YADove2EFAGehAh3GmR8O+pAWhyRdfcvXgDA+4kFCHT pAPhMwm9AID+svZqjEUvmqJehigI9v9gaL2UGmYFjGbyrByED45KvsTOonfic+rGUKpDGJ 1f9Q/d9/BOwBaFyWYEA2MNn20OkEl1fvhXWqQW/tq0VOv0myarYojahcxzraIOglLxxH1f BJIPUPJTFjZ81afV7QHE7LpXyWKUVYSywTI+mqqsNqsUZ6SAJ1QB17ehbmm5Bw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfH30MLrzgff; Thu, 26 Sep 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 48Q3TogF082699; Thu, 26 Sep 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 48Q3ToJN082696; Thu, 26 Sep 2024 03:29:50 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:29:50 GMT Message-Id: <202409260329.48Q3ToJN082696@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: cced5c203046 - stable/14 - ixv: fix x550 VF link speed reported List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: cced5c203046549221e13eea66565bab1d11bae3 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=cced5c203046549221e13eea66565bab1d11bae3 commit cced5c203046549221e13eea66565bab1d11bae3 Author: Piotr Skajewski AuthorDate: 2024-09-19 20:31:45 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:28:30 +0000 ixv: fix x550 VF link speed reported DPDK commit message net/ixgbe/base: fix 5G link speed reported on VF When 5000 Base-T was set on PF the VF reported 100 Base-T. This patch changes ixgbe_check_mac_link_vf function where there was an incorrect conditional which checks using PF mac types, now it is correctly using VF mac types. Fixes: 12e2090 ("net/ixgbe/base: include new speeds in VFLINK interpretation") Cc: stable@dpdk.org Signed-off-by: Piotr Skajewski Reviewed-by: Radoslaw Tyl Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Obtained from: DPDK (9eb7fdb) (cherry picked from commit ab92cab02633580f763a38a329a5b25050bb4fbf) --- sys/dev/ixgbe/ixgbe_vf.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_vf.c b/sys/dev/ixgbe/ixgbe_vf.c index 91df9b7dd1c3..beef259de339 100644 --- a/sys/dev/ixgbe/ixgbe_vf.c +++ b/sys/dev/ixgbe/ixgbe_vf.c @@ -642,7 +642,7 @@ s32 ixgbe_check_mac_link_vf(struct ixgbe_hw *hw, ixgbe_link_speed *speed, switch (links_reg & IXGBE_LINKS_SPEED_82599) { case IXGBE_LINKS_SPEED_10G_82599: *speed = IXGBE_LINK_SPEED_10GB_FULL; - if (hw->mac.type >= ixgbe_mac_X550) { + if (hw->mac.type >= ixgbe_mac_X550_vf) { if (links_reg & IXGBE_LINKS_SPEED_NON_STD) *speed = IXGBE_LINK_SPEED_2_5GB_FULL; } @@ -652,7 +652,7 @@ s32 ixgbe_check_mac_link_vf(struct ixgbe_hw *hw, ixgbe_link_speed *speed, break; case IXGBE_LINKS_SPEED_100_82599: *speed = IXGBE_LINK_SPEED_100_FULL; - if (hw->mac.type == ixgbe_mac_X550) { + if (hw->mac.type == ixgbe_mac_X550_vf) { if (links_reg & IXGBE_LINKS_SPEED_NON_STD) *speed = IXGBE_LINK_SPEED_5GB_FULL; } @@ -660,7 +660,7 @@ s32 ixgbe_check_mac_link_vf(struct ixgbe_hw *hw, ixgbe_link_speed *speed, case IXGBE_LINKS_SPEED_10_X550EM_A: *speed = IXGBE_LINK_SPEED_UNKNOWN; /* Since Reserved in older MAC's */ - if (hw->mac.type >= ixgbe_mac_X550) + if (hw->mac.type >= ixgbe_mac_X550_vf) *speed = IXGBE_LINK_SPEED_10_FULL; break; default: From nobody Thu Sep 26 03:29:53 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 4XDfH55jSkz5Y6b5; Thu, 26 Sep 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 4XDfH532MNz4W4b; Thu, 26 Sep 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=1727321393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OL4E1Gn9uNNxa7WlF2QlCeUEWLcpVO1DvKqsKlaC4eM=; b=wQ2/FeMr70+RGW90qtrmCkhItpLg0sLWmz9Kj+52N11JHwC+v5l9/p0LkosDr9zPgieYM+ lkvjNmvILzxf6A7+KewCRfPuMRpymJbncOq2eyMhacwZV7EyBtQD7HCob9u0rwXTrK6i1O Yg/gz0gyI4k8+3M6hoSygUyW4Tidxtobgbo5Fi2QeUQlhKzwroyyjZ2cl/cM9wsz7pCfSL ZvuDtos6vWdkrTc+wRglr8WfVDi6aZNr0B5bs3n3yfD8Bsih9x57DN3kqvo+XRUuDc3j8Z aTObBvqNdQH12gvKmi7kUafEjjJ3Iw7Xgk/qo/KRQyl6EOJ+F8m1shNVu/lJUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OL4E1Gn9uNNxa7WlF2QlCeUEWLcpVO1DvKqsKlaC4eM=; b=Vgkwud8NONtVQ+WCvsyoR9KC2K949efJFpqjUM8yOJ5/sZj0dZhAAjz0IOpAHdQRi4Zed9 UHC7IL8hIlNt0ZKJRAW8qe8LpNDLr50VaE3+Bo8EW5AbQ8vtnMKmAryO/89qaMt2d5f2yK 20geLYQ0K55KorLebKC1P2xpkqRZCTODt/lhlaW8DgykNAH6ZpF3NjpzGvyHHL0MaDDIk3 O7KAPanG5IaAdNObxUwDYacH3D2WH9JhxmkrQBIjtb7cu7jrDWE9EnLBSUa9pHWU2F/7l2 NKUwYy3G0KK+w00ZV3iPfJ0Wy91wceh/0vOP4Qnq8xKs2SdUnCUJuqDtXbD/Ng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321393; a=rsa-sha256; cv=none; b=WOF1+PyEw2Tkms46JaZXxUM/f1rU/LhVpykG4QqnSBu41oWu9nUByWmsJLjxPoBy822BB+ YVweFnFjmV+B4Mh57soYzLY6zOr9/9OXh0HvuYFMm8/xEAmISds2gvf0lutm2xFq628AYS eAGHvAjv3rVw9YKxx+w5z5/vpS1RHTe4zpr8PK9uaxibje1E/Pu/JQse4T+BF1GDoumM2z n8/u2t5rXj7E7DLECcrjukvvta+Ibd7AGMRGzyaOTwFCsD5DDT26zvYDRroLYyKFLU9Es6 tM676qT5DQH14s0kIMuIKRid6Tjhi89k63arRj3pIQDMGMNIEDSur2bylhJHpw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfH524VMzg6x; Thu, 26 Sep 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 48Q3Trk9082800; Thu, 26 Sep 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 48Q3Tr6s082797; Thu, 26 Sep 2024 03:29:53 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:29:53 GMT Message-Id: <202409260329.48Q3Tr6s082797@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: d7364cb43fa3 - stable/14 - ixgbe: rename VF message type 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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d7364cb43fa34cc2d8d9741a1ef760a20227d3d2 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=d7364cb43fa34cc2d8d9741a1ef760a20227d3d2 commit d7364cb43fa34cc2d8d9741a1ef760a20227d3d2 Author: Jakub Chylkowski AuthorDate: 2024-09-19 21:02:06 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:29:02 +0000 ixgbe: rename VF message type macros DPDK commit message There is name similarity within IXGBE_VT_MSGTYPE_ACK and PFMAILBOX.ACK / VFMAILBOX.ACK which may cause confusion. Rename MSGTYPE macros to SUCCESS and FAILURE as they are not specified in datasheet and now will be easily distinguishable. Signed-off-by: Jakub Chylkowski Reviewed-by: Marek Zalfresso-jundzillo Reviewed-by: Alice Michael Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Tested-by: Piotr Skajewski Tested-by: Alice Michael Obtained from: DPDK (4f675c9) (cherry picked from commit 10746040820ee5186caf4d4d61cf88196ec213ba) --- sys/dev/ixgbe/if_sriov.c | 10 +++++----- sys/dev/ixgbe/ixgbe_mbx.h | 14 +++++++------- sys/dev/ixgbe/ixgbe_vf.c | 34 ++++++++++++++++++---------------- 3 files changed, 30 insertions(+), 28 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 7cdd287b85bf..a16092c9f688 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -107,14 +107,14 @@ static inline void ixgbe_send_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_ACK); + ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void ixgbe_send_vf_nack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_NACK); + ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); } static inline void @@ -362,9 +362,9 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (ixgbe_validate_mac_addr(vf->ether_addr) == 0) { ixgbe_set_rar(&sc->hw, vf->rar_index, vf->ether_addr, vf->pool, true); - ack = IXGBE_VT_MSGTYPE_ACK; + ack = IXGBE_VT_MSGTYPE_SUCCESS; } else - ack = IXGBE_VT_MSGTYPE_NACK; + ack = IXGBE_VT_MSGTYPE_FAILURE; ixgbe_vf_enable_transmit(sc, vf); ixgbe_vf_enable_receive(sc, vf); @@ -556,7 +556,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) return; } - resp[0] = IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_ACK | + resp[0] = IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_SUCCESS | IXGBE_VT_MSGTYPE_CTS; num_queues = ixgbe_vf_queues(sc->iov_mode); diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 47b9327bb896..fa407c4969d1 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -68,14 +68,14 @@ /* If it's a IXGBE_VF_* msg then it originates in the VF and is sent to the * PF. The reverse is true if it is IXGBE_PF_*. - * Message ACK's are the value or'd with 0xF0000000 + * Message results are the value or'd with 0xF0000000 */ -#define IXGBE_VT_MSGTYPE_ACK 0x80000000 /* Messages below or'd with - * this are the ACK */ -#define IXGBE_VT_MSGTYPE_NACK 0x40000000 /* Messages below or'd with - * this are the NACK */ -#define IXGBE_VT_MSGTYPE_CTS 0x20000000 /* Indicates that VF is still - * clear to send requests */ +#define IXGBE_VT_MSGTYPE_SUCCESS 0x80000000 /* Messages or'd with this + * have succeeded */ +#define IXGBE_VT_MSGTYPE_FAILURE 0x40000000 /* Messages or'd with this + * have failed */ +#define IXGBE_VT_MSGTYPE_CTS 0x20000000 /* Indicates that VF is still + * clear to send requests */ #define IXGBE_VT_MSGINFO_SHIFT 16 /* bits 23:16 are used for extra info for certain messages */ #define IXGBE_VT_MSGINFO_MASK (0xFF << IXGBE_VT_MSGINFO_SHIFT) diff --git a/sys/dev/ixgbe/ixgbe_vf.c b/sys/dev/ixgbe/ixgbe_vf.c index beef259de339..4624c2b5c0a3 100644 --- a/sys/dev/ixgbe/ixgbe_vf.c +++ b/sys/dev/ixgbe/ixgbe_vf.c @@ -223,11 +223,11 @@ s32 ixgbe_reset_hw_vf(struct ixgbe_hw *hw) if (ret_val) return ret_val; - if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK) && - msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_SUCCESS) && + msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_INVALID_MAC_ADDR; - if (msgbuf[0] == (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK)) + if (msgbuf[0] == (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_SUCCESS)) memcpy(hw->mac.perm_addr, addr, IXGBE_ETH_LENGTH_OF_ADDRESS); hw->mac.mc_filter_type = msgbuf[IXGBE_VF_MC_TYPE_WORD]; @@ -356,9 +356,9 @@ s32 ixgbe_set_rar_vf(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - /* if nacked the address was rejected, use "perm_addr" */ + /* if we had failure, the address was rejected, use "perm_addr" */ if (!ret_val && - (msgbuf[0] == (IXGBE_VF_SET_MAC_ADDR | IXGBE_VT_MSGTYPE_NACK))) { + (msgbuf[0] == (IXGBE_VF_SET_MAC_ADDR | IXGBE_VT_MSGTYPE_FAILURE))) { ixgbe_get_mac_addr_vf(hw, hw->mac.addr); return IXGBE_ERR_MBX; } @@ -447,7 +447,7 @@ s32 ixgbevf_update_xcast_mode(struct ixgbe_hw *hw, int xcast_mode) return err; msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - if (msgbuf[0] == (IXGBE_VF_UPDATE_XCAST_MODE | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] == (IXGBE_VF_UPDATE_XCAST_MODE | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_FEATURE_NOT_SUPPORTED; return IXGBE_SUCCESS; } @@ -470,7 +470,7 @@ s32 ixgbe_get_link_state_vf(struct ixgbe_hw *hw, bool *link_state) err = ixgbevf_write_msg_read_ack(hw, msgbuf, msgbuf, 2); - if (err || (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK)) { + if (err || (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE)) { ret_val = IXGBE_ERR_MBX; } else { ret_val = IXGBE_SUCCESS; @@ -503,10 +503,10 @@ s32 ixgbe_set_vfta_vf(struct ixgbe_hw *hw, u32 vlan, u32 vind, msgbuf[0] |= vlan_on << IXGBE_VT_MSGINFO_SHIFT; ret_val = ixgbevf_write_msg_read_ack(hw, msgbuf, msgbuf, 2); - if (!ret_val && (msgbuf[0] & IXGBE_VT_MSGTYPE_ACK)) + if (!ret_val && (msgbuf[0] & IXGBE_VT_MSGTYPE_SUCCESS)) return IXGBE_SUCCESS; - return ret_val | (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK); + return ret_val | (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE); } /** @@ -571,7 +571,7 @@ s32 ixgbevf_set_uc_addr_vf(struct ixgbe_hw *hw, u32 index, u8 *addr) if (!ret_val) { msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - if (msgbuf[0] == (msgbuf_chk | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] == (msgbuf_chk | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_OUT_OF_MEM; } @@ -674,8 +674,10 @@ s32 ixgbe_check_mac_link_vf(struct ixgbe_hw *hw, ixgbe_link_speed *speed, goto out; if (!(in_msg & IXGBE_VT_MSGTYPE_CTS)) { - /* msg is not CTS and is NACK we must have lost CTS status */ - if (in_msg & IXGBE_VT_MSGTYPE_NACK) + /* msg is not CTS and is FAILURE, + * we must have lost CTS status. + */ + if (in_msg & IXGBE_VT_MSGTYPE_FAILURE) ret_val = -1; goto out; } @@ -713,7 +715,7 @@ s32 ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size) if (retval) return retval; if ((msgbuf[0] & IXGBE_VF_SET_LPE) && - (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK)) + (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_MBX; return 0; @@ -739,7 +741,7 @@ int ixgbevf_negotiate_api_version(struct ixgbe_hw *hw, int api) msg[0] &= ~IXGBE_VT_MSGTYPE_CTS; /* Store value and return 0 on success */ - if (msg[0] == (IXGBE_VF_API_NEGOTIATE | IXGBE_VT_MSGTYPE_ACK)) { + if (msg[0] == (IXGBE_VF_API_NEGOTIATE | IXGBE_VT_MSGTYPE_SUCCESS)) { hw->api_version = api; return 0; } @@ -775,11 +777,11 @@ int ixgbevf_get_queues(struct ixgbe_hw *hw, unsigned int *num_tcs, msg[0] &= ~IXGBE_VT_MSGTYPE_CTS; /* - * if we we didn't get an ACK there must have been + * if we we didn't get a SUCCESS there must have been * some sort of mailbox error so we should treat it * as such */ - if (msg[0] != (IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_ACK)) + if (msg[0] != (IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_SUCCESS)) return IXGBE_ERR_MBX; /* record and validate values from message */ From nobody Thu Sep 26 03:29: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 4XDfH663JVz5Y6mZ; Thu, 26 Sep 2024 03:29: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 4XDfH63yPRz4WBt; Thu, 26 Sep 2024 03:29:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321394; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lwbaDDnjTlnhIvjAAwMotT7plUtEKZ+5nK5yclxV72Q=; b=qTYrTfm4vt/LDShECbKaSDARr6C5jKd1t5wXYbdGaKK0GBAZ+SG3LZQLErM1sEdsBpiSmh wfGrqNdkzXX1g9kp+1FOAA2WyVd350LJ2SR+Qe2ce39HJi3aMSrnwmDqE15jPcURRj+Xap VpgGezdeQuIiMdcIivbH13eUYs2hGp18l+ARMo73I2X8usLjb+pmOFcLJrmmE2UBE+GKX+ HwoDx16AWQ4jOalj7fdqH0SScBNlDnYeYwsLj92O8H6fmPRyafFWOxUJS2V8jZFsOgFkcv IMe4awzEhtuYTZJMmdERUgwhW/B0qU4Kkag6TqumAi36N8ML2PcH5OLXwSZzcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321394; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lwbaDDnjTlnhIvjAAwMotT7plUtEKZ+5nK5yclxV72Q=; b=HtiQp34Wz+jpibmd8BAUH/eFXNPKuTxSj6Fp/8G9MA5fOPcVyyCZUmLNsjRAFhGNwkvu+q 8Jt1cLr2ZBLcDERWWxq//QD1JdJgVM37dKoqviEQWT+OoDUqeZl/aLW8iYJ8vuBce67+UE DCbSD8jH9DP25hElTtUGpVjVH6+Xw16YkiyiMsP/ZhXM5Auf0rNd8JkICQyOvuOcozFGKB 4NRUxp4AymjsrnTCGpn4UrPlEEX+/C2Yk3jyEiTDjare6OrM0MkBzuD8oQUPtJKF407DhJ uwvn+4Epfr0fjCR4jvqg8dY/0O/tAQlBfM92yMGO/uB2nq2Rx4mjQaoYKuOm3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321394; a=rsa-sha256; cv=none; b=hqjtVEXkFr5pZJvDTeBoilSqwUBZVyyun84XJINlqfLx2MARVeyhPnlDU6j+FVSUAQcKZz OCIS+gt94D4rcV/AMipoGeyy0Mu3tArM4X1WqqTyDUkX0zSAvPt5OtCpXZai+eSgo39fu9 prD3td8q3c6A1tCT+ag0RDCmiREH5xUDrsRnaI3JkW07wSaFfEIpw98XvrVWVk5UdSvMjo C4jDOgrqt4T120RNnDyMk+fdRfbSqZZTH+s6dqBHXPgt2P3RU4DUT4krSh+kNStzzbqMr0 Vt6L/w5ORhCXZRN28zWKrZYFSLSXyc2SHcJVa0JQEJ+o/LVpNQirN6MaVjSVWg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfH635HSzg3l; Thu, 26 Sep 2024 03:29: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 48Q3TsNv082852; Thu, 26 Sep 2024 03:29:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3Ts4s082849; Thu, 26 Sep 2024 03:29:54 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:29:54 GMT Message-Id: <202409260329.48Q3Ts4s082849@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: 89011d8c4ddf - stable/14 - ixgbe: correct register names to match datasheet List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 89011d8c4ddf9ad7a4d7c3fc970be2d9029caa1e Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=89011d8c4ddf9ad7a4d7c3fc970be2d9029caa1e commit 89011d8c4ddf9ad7a4d7c3fc970be2d9029caa1e Author: Jakub Chylkowski AuthorDate: 2024-09-19 23:25:09 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:29:18 +0000 ixgbe: correct register names to match datasheet DPDK commit message net/ixgbe/base: correct registers names to match datasheet Some of mailbox-related registers have different names than it is specified in datasheet. Correct these names to correspond to their datasheet counterparts. Additionally, several calculations are changed to no longer use magic numbers but dedicated macros instead. Signed-off-by: Jakub Chylkowski Reviewed-by: Marek Zalfresso-jundzillo Reviewed-by: Alice Michael Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Tested-by: Piotr Skajewski Tested-by: Alice Michael Obtained from: DPDK (10fd55e) (cherry picked from commit b3c7fde6fe9113f849232604523878b4b68df0cc) --- sys/dev/ixgbe/ixgbe_mbx.c | 30 +++++++++++++++--------------- sys/dev/ixgbe/ixgbe_mbx.h | 8 ++++---- sys/dev/ixgbe/ixgbe_type.h | 11 ++++++----- 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index d12aadea7097..c8f839fce85a 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -527,12 +527,12 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) { - u32 mbvficr = IXGBE_READ_REG(hw, IXGBE_MBVFICR(index)); + u32 pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); s32 ret_val = IXGBE_ERR_MBX; - if (mbvficr & mask) { + if (pfmbicr & mask) { ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_MBVFICR(index), mask); + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), mask); } return ret_val; @@ -547,13 +547,13 @@ static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) **/ static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) { + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); + s32 index = IXGBE_PFMBICR_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; - s32 index = IXGBE_MBVFICR_INDEX(vf_number); - u32 vf_bit = vf_number % 16; DEBUGFUNC("ixgbe_check_for_msg_pf"); - if (!ixgbe_check_for_bit_pf(hw, IXGBE_MBVFICR_VFREQ_VF1 << vf_bit, + if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFREQ_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; hw->mbx.stats.reqs++; @@ -571,13 +571,13 @@ static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) **/ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) { + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); + s32 index = IXGBE_PFMBICR_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; - s32 index = IXGBE_MBVFICR_INDEX(vf_number); - u32 vf_bit = vf_number % 16; DEBUGFUNC("ixgbe_check_for_ack_pf"); - if (!ixgbe_check_for_bit_pf(hw, IXGBE_MBVFICR_VFACK_VF1 << vf_bit, + if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFACK_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; hw->mbx.stats.acks++; @@ -595,22 +595,22 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) **/ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) { - u32 reg_offset = (vf_number < 32) ? 0 : 1; - u32 vf_shift = vf_number % 32; - u32 vflre = 0; + u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_number); + u32 index = IXGBE_PFVFLRE_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; + u32 vflre = 0; DEBUGFUNC("ixgbe_check_for_rst_pf"); switch (hw->mac.type) { case ixgbe_mac_82599EB: - vflre = IXGBE_READ_REG(hw, IXGBE_VFLRE(reg_offset)); + vflre = IXGBE_READ_REG(hw, IXGBE_PFVFLRE(index)); break; case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: case ixgbe_mac_X540: - vflre = IXGBE_READ_REG(hw, IXGBE_VFLREC(reg_offset)); + vflre = IXGBE_READ_REG(hw, IXGBE_PFVFLREC(index)); break; default: break; @@ -618,7 +618,7 @@ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) if (vflre & (1 << vf_shift)) { ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_VFLREC(reg_offset), (1 << vf_shift)); + IXGBE_WRITE_REG(hw, IXGBE_PFVFLREC(index), (1 << vf_shift)); hw->mbx.stats.rsts++; } diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index fa407c4969d1..fc4d58e1c0db 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -60,10 +60,10 @@ #define IXGBE_PFMAILBOX_PFU 0x00000008 /* PF owns the mailbox buffer */ #define IXGBE_PFMAILBOX_RVFU 0x00000010 /* Reset VFU - used when VF stuck */ -#define IXGBE_MBVFICR_VFREQ_MASK 0x0000FFFF /* bits for VF messages */ -#define IXGBE_MBVFICR_VFREQ_VF1 0x00000001 /* bit for VF 1 message */ -#define IXGBE_MBVFICR_VFACK_MASK 0xFFFF0000 /* bits for VF acks */ -#define IXGBE_MBVFICR_VFACK_VF1 0x00010000 /* bit for VF 1 ack */ +#define IXGBE_PFMBICR_VFREQ_MASK 0x0000FFFF /* bits for VF messages */ +#define IXGBE_PFMBICR_VFREQ_VF1 0x00000001 /* bit for VF 1 message */ +#define IXGBE_PFMBICR_VFACK_MASK 0xFFFF0000 /* bits for VF acks */ +#define IXGBE_PFMBICR_VFACK_VF1 0x00010000 /* bit for VF 1 ack */ /* If it's a IXGBE_VF_* msg then it originates in the VF and is sent to the diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index 1b447f42f17a..2fc500c9329c 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -483,8 +483,14 @@ struct ixgbe_nvm_version { #define IXGBE_PFMAILBOX(_i) (0x04B00 + (4 * (_i))) /* 64 total */ /* 64 Mailboxes, 16 DW each */ #define IXGBE_PFMBMEM(_i) (0x13000 + (64 * (_i))) +#define IXGBE_PFMBICR_INDEX(_i) ((_i) >> 4) +#define IXGBE_PFMBICR_SHIFT(_i) ((_i) % 16) #define IXGBE_PFMBICR(_i) (0x00710 + (4 * (_i))) /* 4 total */ #define IXGBE_PFMBIMR(_i) (0x00720 + (4 * (_i))) /* 4 total */ +#define IXGBE_PFVFLRE(_i) ((((_i) & 1) ? 0x001C0 : 0x00600)) +#define IXGBE_PFVFLREC(_i) (0x00700 + ((_i) * 4)) +#define IXGBE_PFVFLRE_INDEX(_i) ((_i) >> 5) +#define IXGBE_PFVFLRE_SHIFT(_i) ((_i) % 32) #define IXGBE_VFRE(_i) (0x051E0 + ((_i) * 4)) #define IXGBE_VFTE(_i) (0x08110 + ((_i) * 4)) #define IXGBE_VMECM(_i) (0x08790 + ((_i) * 4)) @@ -2899,11 +2905,6 @@ enum { #define IXGBE_RX_DESC_SPECIAL_PRI_SHIFT 0x000D /* Priority in upper 3 of 16 */ #define IXGBE_TX_DESC_SPECIAL_PRI_SHIFT IXGBE_RX_DESC_SPECIAL_PRI_SHIFT -/* SR-IOV specific macros */ -#define IXGBE_MBVFICR_INDEX(vf_number) (vf_number >> 4) -#define IXGBE_MBVFICR(_i) (0x00710 + ((_i) * 4)) -#define IXGBE_VFLRE(_i) (((_i & 1) ? 0x001C0 : 0x00600)) -#define IXGBE_VFLREC(_i) (0x00700 + ((_i) * 4)) /* Translated register #defines */ #define IXGBE_PVFCTRL(P) (0x00300 + (4 * (P))) #define IXGBE_PVFSTATUS(P) (0x00008 + (0 * (P))) From nobody Thu Sep 26 03:33: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 4XDfMN2Kh8z5Y73K; Thu, 26 Sep 2024 03:33: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 4XDfMN1TlPz4YBy; Thu, 26 Sep 2024 03:33:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321616; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O5lqTD++AiHmG/hjAu7TzH+RmehVub7DAJZ54Wb5jlM=; b=kFvi2vpqfqAPiOa+4H+Y7cx/UUN3v9FAh1r8Sd83kvstsX35FDNrQMj8Lclbl9iVibqv9O K4cggF2WWvLkHhSF9rXb8G18950T47c2unu99lBwaSoZm8vG0C+oNC/oW7hvvqMrtNDjxS CV4YoAOkcVFqMeU7q/DRXCWa7E1Iu75m3U76jHGjpgLN7EjDLF0wRRtAd/9egiDMWVr8/J ZMyKaUdsV3cEHjOd6aBWwyq2bJOR/KmxcOg4pSh3PnmjKxgtFs/v+ZUBFnJO4R0xpyeF0U NizA+Wr7AJBsz1B7FYLrPzPxjnqordAaPZVvfqJ72AiCnPP6m5QtKeuzMnz4mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321616; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O5lqTD++AiHmG/hjAu7TzH+RmehVub7DAJZ54Wb5jlM=; b=g+zvsWUmPZi80x0OplZEwsC8WaJ/chAlndObjWXbvFQlwcguLIJFfk0C0wEIf84ls4gp+E 6TqqabKk3dbS01w4Kmm1BCq7TVsiJZqRUgL6mC9kg+wjyWp5+ttrFI7rXWSGhpluTpMFMg gE3eS6wPz0hMDoSezoqlvLqF9NHHvONxqaZfcqi8yRbZZz1GkhRy8ViXwfOPeR5yAN5Tk/ Q+mIwYwcafUUxzCHVQrWRHZdfkghn07dU5MwyqFVh95mULySeYFnmNXKtq3MpoLY0lpXMa K5cEWv+QEwty0h7XzKpe8J5BqNzN5UxEWXon2tyMDvEPZyrtHfIsMe/K7aQwRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321616; a=rsa-sha256; cv=none; b=LO94d9KA1m0PorUfnUKGvY9Jr+moQk7kBmntQ1ymWv+O0CRn6Uiy36A03EwA6Rw87dm2B+ wGjrqK+0+3ORh32be8G7dt6SSsdXPawBKMc7X8OhSOhWkjN77y2cuPf1Xcpaft5U4qUjYC DP3mO6eeNbYTP3eHaDlAyETRLl7pBaJQ5OD9RjZE8ngAFQw+IzYTwD2kJNQJSwKmZYMNqi EU94iJiOBw2lL7rSX4PfckMDwA+L/QQQv3XE6ob+3bFAWEd+b1zGBViJXE1RYVtpjds6e2 PW3hyc0Os1ZII1RTnwQ0GKXay4AVup5+neMfqFQREiThHtvaqOZBam+Ie3kMkg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfMN14qYzgg1; Thu, 26 Sep 2024 03:33: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 48Q3Xax4099035; Thu, 26 Sep 2024 03:33:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3XaSg099031; Thu, 26 Sep 2024 03:33:36 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:33:36 GMT Message-Id: <202409260333.48Q3XaSg099031@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: 6f5092ed7503 - stable/13 - e1000: fix link power down List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6f5092ed7503608984447ee973decbdef8a7715f Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=6f5092ed7503608984447ee973decbdef8a7715f commit 6f5092ed7503608984447ee973decbdef8a7715f Author: Anatoly Burakov AuthorDate: 2024-09-19 05:38:32 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:32:06 +0000 e1000: fix link power down DPDK commit message net/e1000/base: fix link power down Current code is a result of work to reduce duplication between various device models. However, the logic that was replaced did not exactly match the new logic, and as a result the link power down was not working correctly for some NICs, and the link remained up even when the interface is down. Fix it to correctly power down the link under all circumstances that were supported by old logic. Fixes: 44dddd1 ("net/e1000/base: remove duplicated codes") Cc: stable@dpdk.org Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (a8218d0) (cherry picked from commit 811912c46b5886f1aa3bb7a51a6ec1270bc947a8) --- sys/dev/e1000/e1000_base.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/e1000/e1000_base.c b/sys/dev/e1000/e1000_base.c index ff810821d9e9..d83dc48c4d4d 100644 --- a/sys/dev/e1000/e1000_base.c +++ b/sys/dev/e1000/e1000_base.c @@ -137,7 +137,7 @@ void e1000_power_down_phy_copper_base(struct e1000_hw *hw) return; /* If the management interface is not enabled, then power down */ - if (phy->ops.check_reset_block(hw)) + if (!(e1000_enable_mng_pass_thru(hw) || phy->ops.check_reset_block(hw))) e1000_power_down_phy_copper(hw); } From nobody Thu Sep 26 03:33:39 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 4XDfMR6kgPz5Y6Pc; Thu, 26 Sep 2024 03:33: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 4XDfMR4Ss9z4XnT; Thu, 26 Sep 2024 03:33:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3I9Ym/HxY5BSeCGkWgZZ+qiskCV9urTE6psXI6s8oQ=; b=F4Covo4SibsrhezLHPZlca476gzXJoNEGI8Vt1CNBwCFFLCD1YHJDvaNR+9B6Kt/MyIKCN tCxJDOLoeXLb7YZBlzJBQnrkDhYST4J7Ux5nVldCPYlFhQBLEUEEYo4g2xJZ3bVl7n9T31 ydEpC3ivBdpSJ+3qG+NrJLJnzdlvS/4t/BokGGrw/6uYdF0FMNWSZ8LgJ6ZJS1LAdcEoBP mU63aLBtGjPwmI6M057OGbpKyVRmwG0dlVyIPbA47aqYDXeObWZAeALJ+6eid6JZeZFG3g VLEwGGTLNgyWANXcxOlXS/NHezSighkwM0PWBFowVT9pzNielF5xbYopU58JSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3I9Ym/HxY5BSeCGkWgZZ+qiskCV9urTE6psXI6s8oQ=; b=KQ5Nmnf3AYtOsBm6lij2H2ijr81VlCKV7eykf6TkJuvdZ+iy8MwO1uf7ObGlpcGFIAlfjr d21uGtv60vhN+FwTA7dFbX2M24qK87gPd96Iqm4GZHBLHlPRCzW5jqnUF99AGwcXrvtW78 oEkRzXk+fJ7ZxpminSx6fDTO9gXx1F6bTPo529Uugquh5Krn+2PY7P/4TGbVtqdrQUfQQ6 +zUcmQLz9qITlq6J8A2GS6EDgFa2JWzQ9S3moDM2TSC86+yU2vVoYwK2zbIldAIEfm3+Ny MS5REMX9aLbU8lHS9cGCkt5O068sDkGndRSJELXCcn9mvmjJ1I+HlsmmYcZnJg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321619; a=rsa-sha256; cv=none; b=ABReks4ahrELqYUzTRWOJGecT6HOgOYen8hpCoEyjQ7fsID5yES5KHKB9LIDX9u3BjCti/ gTzdu1xRKXpaPoDa0hy1zAzdho6Vc5DlmHrTEwm58b3VrlxvQOkt+cTOhgAdnQ4jL68TQZ 58O/X5d5IkoT4MfOVqsuUgktPFWErYjSzOBTdlzZAf9Tes8pcfMk1fTQUqpSoMyhuxMG7d ILvCzGuyZKjbfxIsxhH1l6S/I6XYklmMNElBbocyvucP00cdzMXzM7Gs9QgzglLsvwyCHS MBFnL9W4/gAiAmefZBAgt3JK8WPY7z7Y7CCe7k7yB+rYjQORATb+GN1TCDBKPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfMR44M9zgq1; Thu, 26 Sep 2024 03:33: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 48Q3Xdm1099178; Thu, 26 Sep 2024 03:33:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3Xd8B099175; Thu, 26 Sep 2024 03:33:39 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:33:39 GMT Message-Id: <202409260333.48Q3Xd8B099175@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: 0097d7ec6bc4 - stable/13 - ixgbe: fix PHY ID for X550 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 0097d7ec6bc46a441fb13b703c1ea0388d6033c8 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=0097d7ec6bc46a441fb13b703c1ea0388d6033c8 commit 0097d7ec6bc46a441fb13b703c1ea0388d6033c8 Author: Radoslaw Tyl AuthorDate: 2024-09-19 20:42:14 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:32:48 +0000 ixgbe: fix PHY ID for X550 DPDK commit message net/ixgbe/base: fix PHY ID for X550 Function ixgbe_get_phy_type_from_id() for X550_PHY_ID2 and X550_PHY_ID3 always return ixgbe_phy_unknown instead of ixgbe_phy_aq because phy ID's last 4 bits are always masked, and should not be taken into account when selecting phy type. This patch adds default PHY ID for X550 devices with mask on last 4 bits (0xFFFFFFF0), and fixes the switch statement to use it. Fixes: 58ddc80 ("ixgbe/base: add new X550 PHY ids") Cc: stable@dpdk.org Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Alice Michael Obtained from: DPDK (a9f5a3b) (cherry picked from commit 9b56dfd27c64fcaf2dfbaa1eb3e2bd2b163fa56c) --- sys/dev/ixgbe/ixgbe_phy.c | 3 +-- sys/dev/ixgbe/ixgbe_type.h | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index f4bee6c34f53..00f396283879 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -462,8 +462,7 @@ enum ixgbe_phy_type ixgbe_get_phy_type_from_id(u32 phy_id) case TN1010_PHY_ID: phy_type = ixgbe_phy_tn; break; - case X550_PHY_ID2: - case X550_PHY_ID3: + case X550_PHY_ID: case X540_PHY_ID: phy_type = ixgbe_phy_aq; break; diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index deb68fa03312..1b447f42f17a 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -1696,6 +1696,7 @@ struct ixgbe_dmac_config { #define TN1010_PHY_ID 0x00A19410 #define TNX_FW_REV 0xB #define X540_PHY_ID 0x01540200 +#define X550_PHY_ID 0x01540220 #define X550_PHY_ID2 0x01540223 #define X550_PHY_ID3 0x01540221 #define X557_PHY_ID 0x01540240 From nobody Thu Sep 26 03:33: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 4XDfMT0Y2lz5Y6bV; Thu, 26 Sep 2024 03:33: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 4XDfMS713Tz4Y6v; Thu, 26 Sep 2024 03:33:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PYTB+WExkS4Ge+bcIQmzi8VK5KlWnqZhGnt8ZTv2+B4=; b=sYREsz7lrSc8VockXd3sABwOw1IEdNG0cL1dq+BqzsfmpOdNTI9pnrAHZSs8eghfutgR+W 4svvlKW4jiI3af9iT7o0v7ZVtWqSHK8PtswBiKSB9I+/uLO8vlg120yR75As/bddxpnorB U+ioTuOto7moVlSAcSUMHoRhWFhYLeGvYXUL6eSdMAc0PLw9ahu8cHEEJFl9h9EwU59u0D KADX+YO/bGPjGMYg4xbAW+/LQcSaYQtATPQDRuvc0TYwhqbsD1k3xVk9OTZLX4X3+UGl5R YGInRrtT7U7PJoO0YPo0rNTcsdoY7Y18z6zX9Y2R+oiSmkCAgXMUkLSijnZAcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PYTB+WExkS4Ge+bcIQmzi8VK5KlWnqZhGnt8ZTv2+B4=; b=dFyX00LzjLewPfwwLxsD4H7OQ8FGAdX/TwJX8Z4PE5QlE5bvHvrjIVNuboKY+nG7TXToFu C9vmterWss9MGhlFFkm+kteY3OMHr9jESOQcf9qvXCY2ISdJbKaCLgQT6Vx+sTDy4DKFh4 s6N25OJ1S4U0DSoaHzvWDd/wzBs8LdZrfUv8II/6hHPpPF0KXb86omyJnQc9EMvsx0PMz/ FXQotpp+88qZCugGeHn9et9K8mtXNib5QLomWi8Fb+AVK47idod8c6XYx/tFDM16wlPvHt bu+nNv0LgnK33qUoVlBViMU159GX/nFMk81jSOXmvEfTW9s2OLV5Hv+ssvS9og== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321621; a=rsa-sha256; cv=none; b=gHIyxOQ5XAhKa+kY/CASJ+1pHu9JTmiLkkqboQq2/aNBP/TjVXYKMbYc8yngAAL10+Op32 LMvMZCf2suWACbmK7TqBRIejpld5lEnafJqG6lMx+bfFSIOuhWy6sBjrubiYJ4PhydOOdL hLIykqzrwEoZsSgWMZDaatf7bTXJ/ta7Jv3OvxChL4nswekG+HwnW7s4AUJ+k5i2q0OBz3 9JrDjnLX9fGEy6ozfhCIfnVnXWSTLfyLa1ogMwsjgH5+BJTsApWiNhm269yjdb3LEaD9TV 1DFazJyf0WcYI0XG3wPpPj/Vc/vI5asGOIrSlRffHMZYOTYVV7UaMBVgATSLzg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfMS55Dvzgm7; Thu, 26 Sep 2024 03:33: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 48Q3XewP099223; Thu, 26 Sep 2024 03:33:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3XeEl099220; Thu, 26 Sep 2024 03:33:40 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:33:40 GMT Message-Id: <202409260333.48Q3XeEl099220@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: 2e256578e7d8 - stable/13 - ixgbe: rename VF message type 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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2e256578e7d8a81051b3a96b92f6d3140d884156 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2e256578e7d8a81051b3a96b92f6d3140d884156 commit 2e256578e7d8a81051b3a96b92f6d3140d884156 Author: Jakub Chylkowski AuthorDate: 2024-09-19 21:02:06 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:33:03 +0000 ixgbe: rename VF message type macros DPDK commit message There is name similarity within IXGBE_VT_MSGTYPE_ACK and PFMAILBOX.ACK / VFMAILBOX.ACK which may cause confusion. Rename MSGTYPE macros to SUCCESS and FAILURE as they are not specified in datasheet and now will be easily distinguishable. Signed-off-by: Jakub Chylkowski Reviewed-by: Marek Zalfresso-jundzillo Reviewed-by: Alice Michael Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Tested-by: Piotr Skajewski Tested-by: Alice Michael Obtained from: DPDK (4f675c9) (cherry picked from commit 10746040820ee5186caf4d4d61cf88196ec213ba) --- sys/dev/ixgbe/if_sriov.c | 10 +++++----- sys/dev/ixgbe/ixgbe_mbx.h | 14 +++++++------- sys/dev/ixgbe/ixgbe_vf.c | 34 ++++++++++++++++++---------------- 3 files changed, 30 insertions(+), 28 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index cc6243848f67..794f2e0365f5 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -107,14 +107,14 @@ static inline void ixgbe_send_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_ACK); + ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void ixgbe_send_vf_nack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_NACK); + ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); } static inline void @@ -362,9 +362,9 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (ixgbe_validate_mac_addr(vf->ether_addr) == 0) { ixgbe_set_rar(&sc->hw, vf->rar_index, vf->ether_addr, vf->pool, true); - ack = IXGBE_VT_MSGTYPE_ACK; + ack = IXGBE_VT_MSGTYPE_SUCCESS; } else - ack = IXGBE_VT_MSGTYPE_NACK; + ack = IXGBE_VT_MSGTYPE_FAILURE; ixgbe_vf_enable_transmit(sc, vf); ixgbe_vf_enable_receive(sc, vf); @@ -556,7 +556,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) return; } - resp[0] = IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_ACK | + resp[0] = IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_SUCCESS | IXGBE_VT_MSGTYPE_CTS; num_queues = ixgbe_vf_queues(sc->iov_mode); diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 47b9327bb896..fa407c4969d1 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -68,14 +68,14 @@ /* If it's a IXGBE_VF_* msg then it originates in the VF and is sent to the * PF. The reverse is true if it is IXGBE_PF_*. - * Message ACK's are the value or'd with 0xF0000000 + * Message results are the value or'd with 0xF0000000 */ -#define IXGBE_VT_MSGTYPE_ACK 0x80000000 /* Messages below or'd with - * this are the ACK */ -#define IXGBE_VT_MSGTYPE_NACK 0x40000000 /* Messages below or'd with - * this are the NACK */ -#define IXGBE_VT_MSGTYPE_CTS 0x20000000 /* Indicates that VF is still - * clear to send requests */ +#define IXGBE_VT_MSGTYPE_SUCCESS 0x80000000 /* Messages or'd with this + * have succeeded */ +#define IXGBE_VT_MSGTYPE_FAILURE 0x40000000 /* Messages or'd with this + * have failed */ +#define IXGBE_VT_MSGTYPE_CTS 0x20000000 /* Indicates that VF is still + * clear to send requests */ #define IXGBE_VT_MSGINFO_SHIFT 16 /* bits 23:16 are used for extra info for certain messages */ #define IXGBE_VT_MSGINFO_MASK (0xFF << IXGBE_VT_MSGINFO_SHIFT) diff --git a/sys/dev/ixgbe/ixgbe_vf.c b/sys/dev/ixgbe/ixgbe_vf.c index beef259de339..4624c2b5c0a3 100644 --- a/sys/dev/ixgbe/ixgbe_vf.c +++ b/sys/dev/ixgbe/ixgbe_vf.c @@ -223,11 +223,11 @@ s32 ixgbe_reset_hw_vf(struct ixgbe_hw *hw) if (ret_val) return ret_val; - if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK) && - msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_SUCCESS) && + msgbuf[0] != (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_INVALID_MAC_ADDR; - if (msgbuf[0] == (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_ACK)) + if (msgbuf[0] == (IXGBE_VF_RESET | IXGBE_VT_MSGTYPE_SUCCESS)) memcpy(hw->mac.perm_addr, addr, IXGBE_ETH_LENGTH_OF_ADDRESS); hw->mac.mc_filter_type = msgbuf[IXGBE_VF_MC_TYPE_WORD]; @@ -356,9 +356,9 @@ s32 ixgbe_set_rar_vf(struct ixgbe_hw *hw, u32 index, u8 *addr, u32 vmdq, msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - /* if nacked the address was rejected, use "perm_addr" */ + /* if we had failure, the address was rejected, use "perm_addr" */ if (!ret_val && - (msgbuf[0] == (IXGBE_VF_SET_MAC_ADDR | IXGBE_VT_MSGTYPE_NACK))) { + (msgbuf[0] == (IXGBE_VF_SET_MAC_ADDR | IXGBE_VT_MSGTYPE_FAILURE))) { ixgbe_get_mac_addr_vf(hw, hw->mac.addr); return IXGBE_ERR_MBX; } @@ -447,7 +447,7 @@ s32 ixgbevf_update_xcast_mode(struct ixgbe_hw *hw, int xcast_mode) return err; msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - if (msgbuf[0] == (IXGBE_VF_UPDATE_XCAST_MODE | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] == (IXGBE_VF_UPDATE_XCAST_MODE | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_FEATURE_NOT_SUPPORTED; return IXGBE_SUCCESS; } @@ -470,7 +470,7 @@ s32 ixgbe_get_link_state_vf(struct ixgbe_hw *hw, bool *link_state) err = ixgbevf_write_msg_read_ack(hw, msgbuf, msgbuf, 2); - if (err || (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK)) { + if (err || (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE)) { ret_val = IXGBE_ERR_MBX; } else { ret_val = IXGBE_SUCCESS; @@ -503,10 +503,10 @@ s32 ixgbe_set_vfta_vf(struct ixgbe_hw *hw, u32 vlan, u32 vind, msgbuf[0] |= vlan_on << IXGBE_VT_MSGINFO_SHIFT; ret_val = ixgbevf_write_msg_read_ack(hw, msgbuf, msgbuf, 2); - if (!ret_val && (msgbuf[0] & IXGBE_VT_MSGTYPE_ACK)) + if (!ret_val && (msgbuf[0] & IXGBE_VT_MSGTYPE_SUCCESS)) return IXGBE_SUCCESS; - return ret_val | (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK); + return ret_val | (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE); } /** @@ -571,7 +571,7 @@ s32 ixgbevf_set_uc_addr_vf(struct ixgbe_hw *hw, u32 index, u8 *addr) if (!ret_val) { msgbuf[0] &= ~IXGBE_VT_MSGTYPE_CTS; - if (msgbuf[0] == (msgbuf_chk | IXGBE_VT_MSGTYPE_NACK)) + if (msgbuf[0] == (msgbuf_chk | IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_OUT_OF_MEM; } @@ -674,8 +674,10 @@ s32 ixgbe_check_mac_link_vf(struct ixgbe_hw *hw, ixgbe_link_speed *speed, goto out; if (!(in_msg & IXGBE_VT_MSGTYPE_CTS)) { - /* msg is not CTS and is NACK we must have lost CTS status */ - if (in_msg & IXGBE_VT_MSGTYPE_NACK) + /* msg is not CTS and is FAILURE, + * we must have lost CTS status. + */ + if (in_msg & IXGBE_VT_MSGTYPE_FAILURE) ret_val = -1; goto out; } @@ -713,7 +715,7 @@ s32 ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size) if (retval) return retval; if ((msgbuf[0] & IXGBE_VF_SET_LPE) && - (msgbuf[0] & IXGBE_VT_MSGTYPE_NACK)) + (msgbuf[0] & IXGBE_VT_MSGTYPE_FAILURE)) return IXGBE_ERR_MBX; return 0; @@ -739,7 +741,7 @@ int ixgbevf_negotiate_api_version(struct ixgbe_hw *hw, int api) msg[0] &= ~IXGBE_VT_MSGTYPE_CTS; /* Store value and return 0 on success */ - if (msg[0] == (IXGBE_VF_API_NEGOTIATE | IXGBE_VT_MSGTYPE_ACK)) { + if (msg[0] == (IXGBE_VF_API_NEGOTIATE | IXGBE_VT_MSGTYPE_SUCCESS)) { hw->api_version = api; return 0; } @@ -775,11 +777,11 @@ int ixgbevf_get_queues(struct ixgbe_hw *hw, unsigned int *num_tcs, msg[0] &= ~IXGBE_VT_MSGTYPE_CTS; /* - * if we we didn't get an ACK there must have been + * if we we didn't get a SUCCESS there must have been * some sort of mailbox error so we should treat it * as such */ - if (msg[0] != (IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_ACK)) + if (msg[0] != (IXGBE_VF_GET_QUEUES | IXGBE_VT_MSGTYPE_SUCCESS)) return IXGBE_ERR_MBX; /* record and validate values from message */ From nobody Thu Sep 26 03:33: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 4XDfMT6tK6z5Y6kf; Thu, 26 Sep 2024 03:33: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 4XDfMT6Gg2z4YC2; Thu, 26 Sep 2024 03:33:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VsX4OWPepYMeA0enmMEZumK6gFAXUXGWq1u11DzNhsI=; b=DNjKRQH6diy3tgQXUMBwbZiQ9xBvPf66EREE4DuUaS4yM7EM2Wpl2QjSNaRsHSAwrGAMJS 4Jrl527VDnxjTp98V3MUh9o3pHS/2iGr2ADXeSZT+Wxhi2bZx9IMQRZqpBeOnmAIv6pMMz UAzS9fgaL6hZgVOV7YuvtdspzYsn8yS5jjPt3mC8iulKmdideSm4qBNGpqGuxoql3mTHP+ d7hxReP6wLzUsnSMOcEb1go23Z34I6R+w3yg9wGG9PbipSTW6Hu3F/Mj71+hB47dlPm9Oi ewoGc2gwixvfd+uIrK15vhjBgPFU+H93YCumr8cBkwep2V7VL8CwdcXD4kIUpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727321621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VsX4OWPepYMeA0enmMEZumK6gFAXUXGWq1u11DzNhsI=; b=wNhpJjm1RRZHCuCAiWJXxbEttdyuTi89f8ctUwYXibMDqfDTFh75G8o115ny+MD6mOUFXY JpGbMVtGHfl2/0f3vI6cI2hRRI4lzwNZPpEFFrh99K2nVEZbqIuZJQgk75Yqbhw/fajlrz kVHLgm9TuOSBJwIk9tCY7EtTE8beTDtHdcBHn890860ziB/8sF/TTGQZ8biiUE8372jw6E 7a7ot8eYxYRHME/WtgNoiKe/Pb+mGUf4VrPsCwWSW/wMVggcFOBT8caW+V2t/T2kUvvVF7 LrjJ2/hKCiyPbmWcZI4MjTcME7pZbM0ex+APIH/QvrQhAjpARf8HRas52Tm2Xg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727321621; a=rsa-sha256; cv=none; b=O+8WhBvNzSIaKty+7XXdYDEZ4LlghU5ejE9HutjaKAciArTn/6016Ku8hKGyQSu8jp0JvB J26Hq4FlWqG29XifPjKp9z3wd1GpZ0MrAQoe4OaYsUhIRAeHjJPCKoipoejtIbQiZ+TZHa HBbpflWWhQlqhSyxsLUTe4tnZalt3urCFk6YXI0+OXZP7oIUP/Qrh60cmGP5jy8vD4jHs8 yYBYS3b459mp1qa9r56wTrksftm1W85LF3hLdRBku88yGQycpxzZusgBYhiqDHvLrBuwMs pYMBTjLJS+eat2qtyVasQZwRvMgvdhlkgRgT8ahDNbqCeYaQa3PPrg1NAriIfA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDfMT5t2hzgy1; Thu, 26 Sep 2024 03:33: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 48Q3Xfrn099271; Thu, 26 Sep 2024 03:33:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q3Xfoi099268; Thu, 26 Sep 2024 03:33:41 GMT (envelope-from git) Date: Thu, 26 Sep 2024 03:33:41 GMT Message-Id: <202409260333.48Q3Xfoi099268@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: 172cd7eab18e - stable/13 - ixgbe: correct register names to match datasheet List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 172cd7eab18ee27de94d843a740a1240968ae8e8 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=172cd7eab18ee27de94d843a740a1240968ae8e8 commit 172cd7eab18ee27de94d843a740a1240968ae8e8 Author: Jakub Chylkowski AuthorDate: 2024-09-19 23:25:09 +0000 Commit: Kevin Bowling CommitDate: 2024-09-26 03:33:17 +0000 ixgbe: correct register names to match datasheet DPDK commit message net/ixgbe/base: correct registers names to match datasheet Some of mailbox-related registers have different names than it is specified in datasheet. Correct these names to correspond to their datasheet counterparts. Additionally, several calculations are changed to no longer use magic numbers but dedicated macros instead. Signed-off-by: Jakub Chylkowski Reviewed-by: Marek Zalfresso-jundzillo Reviewed-by: Alice Michael Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Tested-by: Piotr Skajewski Tested-by: Alice Michael Obtained from: DPDK (10fd55e) (cherry picked from commit b3c7fde6fe9113f849232604523878b4b68df0cc) --- sys/dev/ixgbe/ixgbe_mbx.c | 30 +++++++++++++++--------------- sys/dev/ixgbe/ixgbe_mbx.h | 8 ++++---- sys/dev/ixgbe/ixgbe_type.h | 11 ++++++----- 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index d12aadea7097..c8f839fce85a 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -527,12 +527,12 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) { - u32 mbvficr = IXGBE_READ_REG(hw, IXGBE_MBVFICR(index)); + u32 pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); s32 ret_val = IXGBE_ERR_MBX; - if (mbvficr & mask) { + if (pfmbicr & mask) { ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_MBVFICR(index), mask); + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), mask); } return ret_val; @@ -547,13 +547,13 @@ static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) **/ static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) { + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); + s32 index = IXGBE_PFMBICR_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; - s32 index = IXGBE_MBVFICR_INDEX(vf_number); - u32 vf_bit = vf_number % 16; DEBUGFUNC("ixgbe_check_for_msg_pf"); - if (!ixgbe_check_for_bit_pf(hw, IXGBE_MBVFICR_VFREQ_VF1 << vf_bit, + if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFREQ_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; hw->mbx.stats.reqs++; @@ -571,13 +571,13 @@ static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) **/ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) { + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); + s32 index = IXGBE_PFMBICR_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; - s32 index = IXGBE_MBVFICR_INDEX(vf_number); - u32 vf_bit = vf_number % 16; DEBUGFUNC("ixgbe_check_for_ack_pf"); - if (!ixgbe_check_for_bit_pf(hw, IXGBE_MBVFICR_VFACK_VF1 << vf_bit, + if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFACK_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; hw->mbx.stats.acks++; @@ -595,22 +595,22 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) **/ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) { - u32 reg_offset = (vf_number < 32) ? 0 : 1; - u32 vf_shift = vf_number % 32; - u32 vflre = 0; + u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_number); + u32 index = IXGBE_PFVFLRE_INDEX(vf_number); s32 ret_val = IXGBE_ERR_MBX; + u32 vflre = 0; DEBUGFUNC("ixgbe_check_for_rst_pf"); switch (hw->mac.type) { case ixgbe_mac_82599EB: - vflre = IXGBE_READ_REG(hw, IXGBE_VFLRE(reg_offset)); + vflre = IXGBE_READ_REG(hw, IXGBE_PFVFLRE(index)); break; case ixgbe_mac_X550: case ixgbe_mac_X550EM_x: case ixgbe_mac_X550EM_a: case ixgbe_mac_X540: - vflre = IXGBE_READ_REG(hw, IXGBE_VFLREC(reg_offset)); + vflre = IXGBE_READ_REG(hw, IXGBE_PFVFLREC(index)); break; default: break; @@ -618,7 +618,7 @@ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) if (vflre & (1 << vf_shift)) { ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_VFLREC(reg_offset), (1 << vf_shift)); + IXGBE_WRITE_REG(hw, IXGBE_PFVFLREC(index), (1 << vf_shift)); hw->mbx.stats.rsts++; } diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index fa407c4969d1..fc4d58e1c0db 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -60,10 +60,10 @@ #define IXGBE_PFMAILBOX_PFU 0x00000008 /* PF owns the mailbox buffer */ #define IXGBE_PFMAILBOX_RVFU 0x00000010 /* Reset VFU - used when VF stuck */ -#define IXGBE_MBVFICR_VFREQ_MASK 0x0000FFFF /* bits for VF messages */ -#define IXGBE_MBVFICR_VFREQ_VF1 0x00000001 /* bit for VF 1 message */ -#define IXGBE_MBVFICR_VFACK_MASK 0xFFFF0000 /* bits for VF acks */ -#define IXGBE_MBVFICR_VFACK_VF1 0x00010000 /* bit for VF 1 ack */ +#define IXGBE_PFMBICR_VFREQ_MASK 0x0000FFFF /* bits for VF messages */ +#define IXGBE_PFMBICR_VFREQ_VF1 0x00000001 /* bit for VF 1 message */ +#define IXGBE_PFMBICR_VFACK_MASK 0xFFFF0000 /* bits for VF acks */ +#define IXGBE_PFMBICR_VFACK_VF1 0x00010000 /* bit for VF 1 ack */ /* If it's a IXGBE_VF_* msg then it originates in the VF and is sent to the diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index 1b447f42f17a..2fc500c9329c 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -483,8 +483,14 @@ struct ixgbe_nvm_version { #define IXGBE_PFMAILBOX(_i) (0x04B00 + (4 * (_i))) /* 64 total */ /* 64 Mailboxes, 16 DW each */ #define IXGBE_PFMBMEM(_i) (0x13000 + (64 * (_i))) +#define IXGBE_PFMBICR_INDEX(_i) ((_i) >> 4) +#define IXGBE_PFMBICR_SHIFT(_i) ((_i) % 16) #define IXGBE_PFMBICR(_i) (0x00710 + (4 * (_i))) /* 4 total */ #define IXGBE_PFMBIMR(_i) (0x00720 + (4 * (_i))) /* 4 total */ +#define IXGBE_PFVFLRE(_i) ((((_i) & 1) ? 0x001C0 : 0x00600)) +#define IXGBE_PFVFLREC(_i) (0x00700 + ((_i) * 4)) +#define IXGBE_PFVFLRE_INDEX(_i) ((_i) >> 5) +#define IXGBE_PFVFLRE_SHIFT(_i) ((_i) % 32) #define IXGBE_VFRE(_i) (0x051E0 + ((_i) * 4)) #define IXGBE_VFTE(_i) (0x08110 + ((_i) * 4)) #define IXGBE_VMECM(_i) (0x08790 + ((_i) * 4)) @@ -2899,11 +2905,6 @@ enum { #define IXGBE_RX_DESC_SPECIAL_PRI_SHIFT 0x000D /* Priority in upper 3 of 16 */ #define IXGBE_TX_DESC_SPECIAL_PRI_SHIFT IXGBE_RX_DESC_SPECIAL_PRI_SHIFT -/* SR-IOV specific macros */ -#define IXGBE_MBVFICR_INDEX(vf_number) (vf_number >> 4) -#define IXGBE_MBVFICR(_i) (0x00710 + ((_i) * 4)) -#define IXGBE_VFLRE(_i) (((_i & 1) ? 0x001C0 : 0x00600)) -#define IXGBE_VFLREC(_i) (0x00700 + ((_i) * 4)) /* Translated register #defines */ #define IXGBE_PVFCTRL(P) (0x00300 + (4 * (P))) #define IXGBE_PVFSTATUS(P) (0x00008 + (0 * (P))) From nobody Thu Sep 26 05:20: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 4XDhky3tkvz5YDNT; Thu, 26 Sep 2024 05:20:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XDhky1rymz4hKR; Thu, 26 Sep 2024 05:20:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=49h9VNTBQOcpCiaG5GwXfkD6r7eyQvlD5Jnr8Txx204=; b=ew/NzZ0C9+M1xG+kPSzgN8EV749tQdhPfEOmCKnlMUy8ondJOfhSR85E2eLJSSqBsdCtRK jpK9OkTI9P4XtYcO9PEjoVJCPnNRaM3POSspgKWLAMHrrSu4qmS/8CJJp6DM6Fm3kC4iTJ pg7qDIJ3vbd+0C8V65algCmI9TYYjQHbhToxWVkzBAYqFIF6mFe2728clyrjKijtpQQEAH rKS1ZStLngB3xGh4fmOQKi55HwsAyIqiWjswD3099GriUix0AoP0RuTrivIQAFVWw9nQ+9 9RuS6zAzUmBMWAGYG2e5V60SvMrJEfUoiQwsKapDuVY1upiyGdTB84rTZtUznQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=49h9VNTBQOcpCiaG5GwXfkD6r7eyQvlD5Jnr8Txx204=; b=AXs6bND/1uACyzAq+vYpzUBqATLdHnEXf7ZzxEG/bpEQ+8YmGYxpD6GKSK6KO4cVLbrliG Y7sUjx6I5APG2tiXHjIDdI0Nt1/XE3KyWOMauT6gLP+T7YsVF5c1wh8jprJAuhRPWZOP5A c6WDx0irRiooGYUdqvX5NyJouQrluM35synoCyaGR/EG+YFl+siwED9PRENioTBnutkS15 g4l4Bdv9zrfJDRRiR5jbFGOIVEf1T5cdYAKUgHXLXxq4jWjrJanbsCR3WYOojn7IueadWQ MeQ8pSS/0LR5BsA+G7KdSh4uUAUKgQ/dbXKhJJOJK5QY1JNeR+vPLYzwkPGVfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727328042; a=rsa-sha256; cv=none; b=xkuCekGv3bDxa6E8Zd0IDerHAyOAzRQx2uScTcEdOdfXtQELOrpNmuF+SenRUJl9TJ6GHX dtQxsPCrd8EUFFqmM9ZRQ79Snf7BXUVsCJchgQEKpYZuS2DHYqwvS0fa1XGsPM/HrtohVe RJZzk8ZsLsE1wM5GpzBnTLS5tSlxbLz7YNrjVFJGPc0y8Erb4WZW90ELs/F8ixfLBssGS5 Ajpx4+oJA+a6/GgxmBAVTIYiMY+s/1mBbOJqFdJH9Ki47yAqSXDttmWHNoB+Qqb4IhTdoe cE/beCRWD8uLk9cXSuPrNQ0l9pf2JpAYAce72lvJvwATmTQTvBdMdFpdxxsd0w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDhky1S5RzkN2; Thu, 26 Sep 2024 05:20: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 48Q5Kgn8079678; Thu, 26 Sep 2024 05:20:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q5Kgh4079675; Thu, 26 Sep 2024 05:20:42 GMT (envelope-from git) Date: Thu, 26 Sep 2024 05:20:42 GMT Message-Id: <202409260520.48Q5Kgh4079675@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: 2f3af838e6fc - stable/14 - iflib: Correct indentation according to style(9) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 2f3af838e6fc42d672cadde7cff43163b69fc167 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=2f3af838e6fc42d672cadde7cff43163b69fc167 commit 2f3af838e6fc42d672cadde7cff43163b69fc167 Author: Stephen J. Kiernan AuthorDate: 2024-04-16 18:35:57 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-26 05:19:00 +0000 iflib: Correct indentation according to style(9) The indentation style for the SYSCTL_* macros used was not matching KNF. Reported by: jhb Differential Revision: https://reviews.freebsd.org/D44811 (cherry picked from commit e4a0c92e7aea50654290e3082668932cea16b64f) --- sys/net/iflib.c | 277 +++++++++++++++++++++++++++----------------------------- 1 file changed, 135 insertions(+), 142 deletions(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 84a42b76dc68..c6a01624436c 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -583,13 +583,15 @@ static SYSCTL_NODE(_net, OID_AUTO, iflib, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, */ static int iflib_min_tx_latency = 0; SYSCTL_INT(_net_iflib, OID_AUTO, min_tx_latency, CTLFLAG_RW, - &iflib_min_tx_latency, 0, "minimize transmit latency at the possible expense of throughput"); + &iflib_min_tx_latency, 0, + "minimize transmit latency at the possible expense of throughput"); static int iflib_no_tx_batch = 0; SYSCTL_INT(_net_iflib, OID_AUTO, no_tx_batch, CTLFLAG_RW, - &iflib_no_tx_batch, 0, "minimize transmit latency at the possible expense of throughput"); + &iflib_no_tx_batch, 0, + "minimize transmit latency at the possible expense of throughput"); static int iflib_timer_default = 1000; SYSCTL_INT(_net_iflib, OID_AUTO, timer_default, CTLFLAG_RW, - &iflib_timer_default, 0, "number of ticks between iflib_timer calls"); + &iflib_timer_default, 0, "number of ticks between iflib_timer calls"); #if IFLIB_DEBUG_COUNTERS @@ -602,31 +604,31 @@ static int iflib_fl_refills; static int iflib_fl_refills_large; static int iflib_tx_frees; -SYSCTL_INT(_net_iflib, OID_AUTO, tx_seen, CTLFLAG_RD, - &iflib_tx_seen, 0, "# TX mbufs seen"); -SYSCTL_INT(_net_iflib, OID_AUTO, tx_sent, CTLFLAG_RD, - &iflib_tx_sent, 0, "# TX mbufs sent"); -SYSCTL_INT(_net_iflib, OID_AUTO, tx_encap, CTLFLAG_RD, - &iflib_tx_encap, 0, "# TX mbufs encapped"); -SYSCTL_INT(_net_iflib, OID_AUTO, tx_frees, CTLFLAG_RD, - &iflib_tx_frees, 0, "# TX frees"); -SYSCTL_INT(_net_iflib, OID_AUTO, rx_allocs, CTLFLAG_RD, - &iflib_rx_allocs, 0, "# RX allocations"); -SYSCTL_INT(_net_iflib, OID_AUTO, fl_refills, CTLFLAG_RD, - &iflib_fl_refills, 0, "# refills"); +SYSCTL_INT(_net_iflib, OID_AUTO, tx_seen, CTLFLAG_RD, &iflib_tx_seen, 0, + "# TX mbufs seen"); +SYSCTL_INT(_net_iflib, OID_AUTO, tx_sent, CTLFLAG_RD, &iflib_tx_sent, 0, + "# TX mbufs sent"); +SYSCTL_INT(_net_iflib, OID_AUTO, tx_encap, CTLFLAG_RD, &iflib_tx_encap, 0, + "# TX mbufs encapped"); +SYSCTL_INT(_net_iflib, OID_AUTO, tx_frees, CTLFLAG_RD, &iflib_tx_frees, 0, + "# TX frees"); +SYSCTL_INT(_net_iflib, OID_AUTO, rx_allocs, CTLFLAG_RD, &iflib_rx_allocs, 0, + "# RX allocations"); +SYSCTL_INT(_net_iflib, OID_AUTO, fl_refills, CTLFLAG_RD, &iflib_fl_refills, 0, + "# refills"); SYSCTL_INT(_net_iflib, OID_AUTO, fl_refills_large, CTLFLAG_RD, - &iflib_fl_refills_large, 0, "# large refills"); + &iflib_fl_refills_large, 0, "# large refills"); static int iflib_txq_drain_flushing; static int iflib_txq_drain_oactive; static int iflib_txq_drain_notready; SYSCTL_INT(_net_iflib, OID_AUTO, txq_drain_flushing, CTLFLAG_RD, - &iflib_txq_drain_flushing, 0, "# drain flushes"); + &iflib_txq_drain_flushing, 0, "# drain flushes"); SYSCTL_INT(_net_iflib, OID_AUTO, txq_drain_oactive, CTLFLAG_RD, - &iflib_txq_drain_oactive, 0, "# drain oactives"); + &iflib_txq_drain_oactive, 0, "# drain oactives"); SYSCTL_INT(_net_iflib, OID_AUTO, txq_drain_notready, CTLFLAG_RD, - &iflib_txq_drain_notready, 0, "# drain notready"); + &iflib_txq_drain_notready, 0, "# drain notready"); static int iflib_encap_load_mbuf_fail; static int iflib_encap_pad_mbuf_fail; @@ -634,13 +636,13 @@ static int iflib_encap_txq_avail_fail; static int iflib_encap_txd_encap_fail; SYSCTL_INT(_net_iflib, OID_AUTO, encap_load_mbuf_fail, CTLFLAG_RD, - &iflib_encap_load_mbuf_fail, 0, "# busdma load failures"); + &iflib_encap_load_mbuf_fail, 0, "# busdma load failures"); SYSCTL_INT(_net_iflib, OID_AUTO, encap_pad_mbuf_fail, CTLFLAG_RD, - &iflib_encap_pad_mbuf_fail, 0, "# runt frame pad failures"); + &iflib_encap_pad_mbuf_fail, 0, "# runt frame pad failures"); SYSCTL_INT(_net_iflib, OID_AUTO, encap_txq_avail_fail, CTLFLAG_RD, - &iflib_encap_txq_avail_fail, 0, "# txq avail failures"); + &iflib_encap_txq_avail_fail, 0, "# txq avail failures"); SYSCTL_INT(_net_iflib, OID_AUTO, encap_txd_encap_fail, CTLFLAG_RD, - &iflib_encap_txd_encap_fail, 0, "# driver encap failures"); + &iflib_encap_txd_encap_fail, 0, "# driver encap failures"); static int iflib_task_fn_rxs; static int iflib_rx_intr_enables; @@ -652,22 +654,22 @@ static int iflib_rxd_flush; static int iflib_verbose_debug; -SYSCTL_INT(_net_iflib, OID_AUTO, task_fn_rx, CTLFLAG_RD, - &iflib_task_fn_rxs, 0, "# task_fn_rx calls"); +SYSCTL_INT(_net_iflib, OID_AUTO, task_fn_rx, CTLFLAG_RD, &iflib_task_fn_rxs, 0, + "# task_fn_rx calls"); SYSCTL_INT(_net_iflib, OID_AUTO, rx_intr_enables, CTLFLAG_RD, - &iflib_rx_intr_enables, 0, "# RX intr enables"); -SYSCTL_INT(_net_iflib, OID_AUTO, fast_intrs, CTLFLAG_RD, - &iflib_fast_intrs, 0, "# fast_intr calls"); -SYSCTL_INT(_net_iflib, OID_AUTO, rx_unavail, CTLFLAG_RD, - &iflib_rx_unavail, 0, "# times rxeof called with no available data"); + &iflib_rx_intr_enables, 0, "# RX intr enables"); +SYSCTL_INT(_net_iflib, OID_AUTO, fast_intrs, CTLFLAG_RD, &iflib_fast_intrs, 0, + "# fast_intr calls"); +SYSCTL_INT(_net_iflib, OID_AUTO, rx_unavail, CTLFLAG_RD, &iflib_rx_unavail, 0, + "# times rxeof called with no available data"); SYSCTL_INT(_net_iflib, OID_AUTO, rx_ctx_inactive, CTLFLAG_RD, - &iflib_rx_ctx_inactive, 0, "# times rxeof called with inactive context"); -SYSCTL_INT(_net_iflib, OID_AUTO, rx_if_input, CTLFLAG_RD, - &iflib_rx_if_input, 0, "# times rxeof called if_input"); -SYSCTL_INT(_net_iflib, OID_AUTO, rxd_flush, CTLFLAG_RD, - &iflib_rxd_flush, 0, "# times rxd_flush called"); + &iflib_rx_ctx_inactive, 0, "# times rxeof called with inactive context"); +SYSCTL_INT(_net_iflib, OID_AUTO, rx_if_input, CTLFLAG_RD, &iflib_rx_if_input, + 0, "# times rxeof called if_input"); +SYSCTL_INT(_net_iflib, OID_AUTO, rxd_flush, CTLFLAG_RD, &iflib_rxd_flush, 0, + "# times rxd_flush called"); SYSCTL_INT(_net_iflib, OID_AUTO, verbose_debug, CTLFLAG_RW, - &iflib_verbose_debug, 0, "enable verbose debugging"); + &iflib_verbose_debug, 0, "enable verbose debugging"); #define DBG_COUNTER_INC(name) atomic_add_int(&(iflib_ ## name), 1) static void @@ -6845,42 +6847,41 @@ iflib_add_device_sysctl_pre(if_ctx_t ctx) ctx_list = device_get_sysctl_ctx(dev); child = SYSCTL_CHILDREN(device_get_sysctl_tree(dev)); - ctx->ifc_sysctl_node = node = SYSCTL_ADD_NODE(ctx_list, child, OID_AUTO, "iflib", - CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "IFLIB fields"); + ctx->ifc_sysctl_node = node = SYSCTL_ADD_NODE(ctx_list, child, + OID_AUTO, "iflib", CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, + "IFLIB fields"); oid_list = SYSCTL_CHILDREN(node); SYSCTL_ADD_CONST_STRING(ctx_list, oid_list, OID_AUTO, "driver_version", - CTLFLAG_RD, ctx->ifc_sctx->isc_driver_version, - "driver version"); + CTLFLAG_RD, ctx->ifc_sctx->isc_driver_version, "driver version"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "override_ntxqs", - CTLFLAG_RWTUN, &ctx->ifc_sysctl_ntxqs, 0, - "# of txqs to use, 0 => use default #"); + CTLFLAG_RWTUN, &ctx->ifc_sysctl_ntxqs, 0, + "# of txqs to use, 0 => use default #"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "override_nrxqs", - CTLFLAG_RWTUN, &ctx->ifc_sysctl_nrxqs, 0, - "# of rxqs to use, 0 => use default #"); + CTLFLAG_RWTUN, &ctx->ifc_sysctl_nrxqs, 0, + "# of rxqs to use, 0 => use default #"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "override_qs_enable", - CTLFLAG_RWTUN, &ctx->ifc_sysctl_qs_eq_override, 0, - "permit #txq != #rxq"); + CTLFLAG_RWTUN, &ctx->ifc_sysctl_qs_eq_override, 0, + "permit #txq != #rxq"); SYSCTL_ADD_INT(ctx_list, oid_list, OID_AUTO, "disable_msix", - CTLFLAG_RWTUN, &ctx->ifc_softc_ctx.isc_disable_msix, 0, - "disable MSI-X (default 0)"); + CTLFLAG_RWTUN, &ctx->ifc_softc_ctx.isc_disable_msix, 0, + "disable MSI-X (default 0)"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "rx_budget", - CTLFLAG_RWTUN, &ctx->ifc_sysctl_rx_budget, 0, - "set the RX budget"); + CTLFLAG_RWTUN, &ctx->ifc_sysctl_rx_budget, 0, "set the RX budget"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "tx_abdicate", - CTLFLAG_RWTUN, &ctx->ifc_sysctl_tx_abdicate, 0, - "cause TX to abdicate instead of running to completion"); + CTLFLAG_RWTUN, &ctx->ifc_sysctl_tx_abdicate, 0, + "cause TX to abdicate instead of running to completion"); ctx->ifc_sysctl_core_offset = CORE_OFFSET_UNSPECIFIED; SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "core_offset", - CTLFLAG_RDTUN, &ctx->ifc_sysctl_core_offset, 0, - "offset to start using cores at"); + CTLFLAG_RDTUN, &ctx->ifc_sysctl_core_offset, 0, + "offset to start using cores at"); SYSCTL_ADD_U8(ctx_list, oid_list, OID_AUTO, "separate_txrx", - CTLFLAG_RDTUN, &ctx->ifc_sysctl_separate_txrx, 0, - "use separate cores for TX and RX"); + CTLFLAG_RDTUN, &ctx->ifc_sysctl_separate_txrx, 0, + "use separate cores for TX and RX"); SYSCTL_ADD_U8(ctx_list, oid_list, OID_AUTO, "use_logical_cores", - CTLFLAG_RDTUN, &ctx->ifc_sysctl_use_logical_cores, 0, - "try to make use of logical cores for TX and RX"); + CTLFLAG_RDTUN, &ctx->ifc_sysctl_use_logical_cores, 0, + "try to make use of logical cores for TX and RX"); SYSCTL_ADD_U16(ctx_list, oid_list, OID_AUTO, "use_extra_msix_vectors", CTLFLAG_RDTUN, &ctx->ifc_sysctl_extra_msix_vectors, 0, "attempt to reserve the given number of extra MSI-X vectors during driver load for the creation of additional interfaces later"); @@ -6932,77 +6933,71 @@ iflib_add_device_sysctl_post(if_ctx_t ctx) CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "Queue Name"); queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_INT(ctx_list, queue_list, OID_AUTO, "cpu", - CTLFLAG_RD, - &txq->ift_task.gt_cpu, 0, "cpu this queue is bound to"); + CTLFLAG_RD, &txq->ift_task.gt_cpu, 0, + "cpu this queue is bound to"); #if MEMORY_LOGGING SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "txq_dequeued", - CTLFLAG_RD, - &txq->ift_dequeued, "total mbufs freed"); + CTLFLAG_RD, &txq->ift_dequeued, "total mbufs freed"); SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "txq_enqueued", - CTLFLAG_RD, - &txq->ift_enqueued, "total mbufs enqueued"); + CTLFLAG_RD, &txq->ift_enqueued, "total mbufs enqueued"); #endif SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "mbuf_defrag", - CTLFLAG_RD, - &txq->ift_mbuf_defrag, "# of times m_defrag was called"); + CTLFLAG_RD, &txq->ift_mbuf_defrag, + "# of times m_defrag was called"); SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "m_pullups", - CTLFLAG_RD, - &txq->ift_pullups, "# of times m_pullup was called"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "mbuf_defrag_failed", - CTLFLAG_RD, - &txq->ift_mbuf_defrag_failed, "# of times m_defrag failed"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "no_desc_avail", - CTLFLAG_RD, - &txq->ift_no_desc_avail, "# of times no descriptors were available"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "tx_map_failed", - CTLFLAG_RD, - &txq->ift_map_failed, "# of times DMA map failed"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "txd_encap_efbig", - CTLFLAG_RD, - &txq->ift_txd_encap_efbig, "# of times txd_encap returned EFBIG"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "no_tx_dma_setup", - CTLFLAG_RD, - &txq->ift_no_tx_dma_setup, "# of times map failed for other than EFBIG"); + CTLFLAG_RD, &txq->ift_pullups, + "# of times m_pullup was called"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "mbuf_defrag_failed", CTLFLAG_RD, + &txq->ift_mbuf_defrag_failed, "# of times m_defrag failed"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "no_desc_avail", CTLFLAG_RD, &txq->ift_no_desc_avail, + "# of times no descriptors were available"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "tx_map_failed", CTLFLAG_RD, &txq->ift_map_failed, + "# of times DMA map failed"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "txd_encap_efbig", CTLFLAG_RD, &txq->ift_txd_encap_efbig, + "# of times txd_encap returned EFBIG"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "no_tx_dma_setup", CTLFLAG_RD, &txq->ift_no_tx_dma_setup, + "# of times map failed for other than EFBIG"); SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, "txq_pidx", - CTLFLAG_RD, - &txq->ift_pidx, 1, "Producer Index"); + CTLFLAG_RD, &txq->ift_pidx, 1, "Producer Index"); SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, "txq_cidx", - CTLFLAG_RD, - &txq->ift_cidx, 1, "Consumer Index"); - SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, "txq_cidx_processed", - CTLFLAG_RD, - &txq->ift_cidx_processed, 1, "Consumer Index seen by credit update"); + CTLFLAG_RD, &txq->ift_cidx, 1, "Consumer Index"); + SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, + "txq_cidx_processed", CTLFLAG_RD, &txq->ift_cidx_processed, + 1, "Consumer Index seen by credit update"); SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, "txq_in_use", - CTLFLAG_RD, - &txq->ift_in_use, 1, "descriptors in use"); - SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "txq_processed", - CTLFLAG_RD, - &txq->ift_processed, "descriptors procesed for clean"); + CTLFLAG_RD, &txq->ift_in_use, 1, "descriptors in use"); + SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, + "txq_processed", CTLFLAG_RD, &txq->ift_processed, + "descriptors procesed for clean"); SYSCTL_ADD_UQUAD(ctx_list, queue_list, OID_AUTO, "txq_cleaned", - CTLFLAG_RD, - &txq->ift_cleaned, "total cleaned"); + CTLFLAG_RD, &txq->ift_cleaned, "total cleaned"); SYSCTL_ADD_PROC(ctx_list, queue_list, OID_AUTO, "ring_state", CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, __DEVOLATILE(uint64_t *, &txq->ift_br->state), 0, mp_ring_state_handler, "A", "soft ring state"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_enqueues", - CTLFLAG_RD, &txq->ift_br->enqueues, - "# of enqueues to the mp_ring for this queue"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_drops", - CTLFLAG_RD, &txq->ift_br->drops, - "# of drops in the mp_ring for this queue"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_starts", - CTLFLAG_RD, &txq->ift_br->starts, - "# of normal consumer starts in the mp_ring for this queue"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_stalls", - CTLFLAG_RD, &txq->ift_br->stalls, - "# of consumer stalls in the mp_ring for this queue"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_restarts", - CTLFLAG_RD, &txq->ift_br->restarts, - "# of consumer restarts in the mp_ring for this queue"); - SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, "r_abdications", - CTLFLAG_RD, &txq->ift_br->abdications, - "# of consumer abdications in the mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_enqueues", CTLFLAG_RD, &txq->ift_br->enqueues, + "# of enqueues to the mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_drops", CTLFLAG_RD, &txq->ift_br->drops, + "# of drops in the mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_starts", CTLFLAG_RD, &txq->ift_br->starts, + "# of normal consumer starts in mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_stalls", CTLFLAG_RD, &txq->ift_br->stalls, + "# of consumer stalls in the mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_restarts", CTLFLAG_RD, &txq->ift_br->restarts, + "# of consumer restarts in the mp_ring for this queue"); + SYSCTL_ADD_COUNTER_U64(ctx_list, queue_list, OID_AUTO, + "r_abdications", CTLFLAG_RD, &txq->ift_br->abdications, + "# of consumer abdications in the mp_ring for this queue"); } if (scctx->isc_nrxqsets > 100) @@ -7017,44 +7012,42 @@ iflib_add_device_sysctl_post(if_ctx_t ctx) CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "Queue Name"); queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_INT(ctx_list, queue_list, OID_AUTO, "cpu", - CTLFLAG_RD, - &rxq->ifr_task.gt_cpu, 0, "cpu this queue is bound to"); + CTLFLAG_RD, &rxq->ifr_task.gt_cpu, 0, + "cpu this queue is bound to"); if (sctx->isc_flags & IFLIB_HAS_RXCQ) { - SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, "rxq_cq_cidx", - CTLFLAG_RD, - &rxq->ifr_cq_cidx, 1, "Consumer Index"); + SYSCTL_ADD_U16(ctx_list, queue_list, OID_AUTO, + "rxq_cq_cidx", CTLFLAG_RD, &rxq->ifr_cq_cidx, 1, + "Consumer Index"); } for (j = 0, fl = rxq->ifr_fl; j < rxq->ifr_nfl; j++, fl++) { snprintf(namebuf, NAME_BUFLEN, "rxq_fl%d", j); - fl_node = SYSCTL_ADD_NODE(ctx_list, queue_list, OID_AUTO, namebuf, - CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "freelist Name"); + fl_node = SYSCTL_ADD_NODE(ctx_list, queue_list, + OID_AUTO, namebuf, CTLFLAG_RD | CTLFLAG_MPSAFE, + NULL, "freelist Name"); fl_list = SYSCTL_CHILDREN(fl_node); SYSCTL_ADD_U16(ctx_list, fl_list, OID_AUTO, "pidx", - CTLFLAG_RD, - &fl->ifl_pidx, 1, "Producer Index"); + CTLFLAG_RD, &fl->ifl_pidx, 1, "Producer Index"); SYSCTL_ADD_U16(ctx_list, fl_list, OID_AUTO, "cidx", - CTLFLAG_RD, - &fl->ifl_cidx, 1, "Consumer Index"); + CTLFLAG_RD, &fl->ifl_cidx, 1, "Consumer Index"); SYSCTL_ADD_U16(ctx_list, fl_list, OID_AUTO, "credits", - CTLFLAG_RD, - &fl->ifl_credits, 1, "credits available"); + CTLFLAG_RD, &fl->ifl_credits, 1, + "credits available"); SYSCTL_ADD_U16(ctx_list, fl_list, OID_AUTO, "buf_size", - CTLFLAG_RD, - &fl->ifl_buf_size, 1, "buffer size"); + CTLFLAG_RD, &fl->ifl_buf_size, 1, "buffer size"); #if MEMORY_LOGGING - SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, "fl_m_enqueued", - CTLFLAG_RD, - &fl->ifl_m_enqueued, "mbufs allocated"); - SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, "fl_m_dequeued", - CTLFLAG_RD, - &fl->ifl_m_dequeued, "mbufs freed"); - SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, "fl_cl_enqueued", - CTLFLAG_RD, - &fl->ifl_cl_enqueued, "clusters allocated"); - SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, "fl_cl_dequeued", - CTLFLAG_RD, - &fl->ifl_cl_dequeued, "clusters freed"); + SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, + "fl_m_enqueued", CTLFLAG_RD, &fl->ifl_m_enqueued, + "mbufs allocated"); + SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, + "fl_m_dequeued", CTLFLAG_RD, &fl->ifl_m_dequeued, + "mbufs freed"); + SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, + "fl_cl_enqueued", CTLFLAG_RD, &fl->ifl_cl_enqueued, + "clusters allocated"); + SYSCTL_ADD_UQUAD(ctx_list, fl_list, OID_AUTO, + "fl_cl_dequeued", CTLFLAG_RD, &fl->ifl_cl_dequeued, + "clusters freed"); #endif } } From nobody Thu Sep 26 05:20: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 4XDhl04vdDz5YDHx; Thu, 26 Sep 2024 05:20: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 4XDhl03XkVz4hgk; Thu, 26 Sep 2024 05:20:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qazafNn+OL6j/nB/BLo9hmZlH28Gwqxdo/fB0eXK+nY=; b=lBp+pzhSFNRglvCRU6RYBJS/WbXYc9VTfPc/or5YAzHQhjv7QTGGnAup+MVibldcm2+8Xo 9c2ldxUgxXrYqdl8+NY+/Y4NmSAxxsIjnn738lvwecWGb4izYRSvIy78Cu4FJUU3Yoqe2D sceF8b4/eAaYvcX2aZ86N+my3lk4y/vKVGxG1F7P5/24UkKbVfl0A6vvfNKxgPKq/J5lxt /9jx4dzHPBUXglRue4rT+R53Id4BO0TXgjJTSYObj8AHxAE9KqQWmsyRkRRZihyxj1uPFg lPdhD1XFzJHGbM8dr6W13ylW7fyOHzjldllCGfyUVGO2PpgzwlYr6TQEf08WyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qazafNn+OL6j/nB/BLo9hmZlH28Gwqxdo/fB0eXK+nY=; b=fod13ofIyyU6iz2xKvbH2L2wWZ/wbP33SSA5c+Mddfp7pMbsCBwvp1uDjObNg5xJD/fHus yCgPYTuv7DibRdChItgxEzgMSUreYbuYiR4Lz5FZ8468FYjoSb+/G2VwhEV7V619GTJtyE xLmQCqfsFuzSzLlvJ75kLZkjmNwDwneg9lRuOm5qJizgEPYDTZhAyh5MM5rsdNvS9qZ5mh Nf0f5a5eTnDV12ksiGnCI8HFNbPg6r3twsI0aMwUJs4ShIsa3VZN/zArMqw4A/yV07ZgeD 84DGRDdfmGa0XIarwD+gQcg1yytk601IhHIpt+ajsskph9wfF5en2JRSY9+MUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727328044; a=rsa-sha256; cv=none; b=xCPi0uDJTajByRbhFm7qTwG7/nE6CX0kO82UfOrslUqnFoyjes/EUncI0lfGI14bjblI51 OIKVl3bEDTN4fkOJAICv9DOSbURx76WwW4WShLJxdf3Qu2L1w6lsgElO/QDhkvm/VINmR3 Xi7Il43JARKSEpK7S7SNCKuuEmiVbX6xztajTfXNBKi9ikDJsImh1BLb20CCD/L5rU4V8p BbIY4e+PyIlyjVHJSNGkgwTo9/M8FksJHPX6PymuU+lNf0kPe80v9q7EuaUWwd7ayiRNRH 51FB1JoXBV2SpnAVnSbOARXV1ZYxsse3S7TxeA8UyemEdwcUwxfzRUQ+tjrGcg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDhl037dczjxX; Thu, 26 Sep 2024 05:20: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 48Q5Kit2079775; Thu, 26 Sep 2024 05:20:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q5Kinn079772; Thu, 26 Sep 2024 05:20:44 GMT (envelope-from git) Date: Thu, 26 Sep 2024 05:20:44 GMT Message-Id: <202409260520.48Q5Kinn079772@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: 647860bff214 - stable/14 - iflib: Many style fixes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 647860bff21446419dee923b07490fd4a6cd181a Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=647860bff21446419dee923b07490fd4a6cd181a commit 647860bff21446419dee923b07490fd4a6cd181a Author: Zhenlei Huang AuthorDate: 2024-09-22 02:07:39 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-26 05:19:01 +0000 iflib: Many style fixes MFC after: 3 days (cherry picked from commit fa7045f99cdb2b699205653f42f3fe78597880a7) --- sys/net/iflib.c | 296 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 148 insertions(+), 148 deletions(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 63a2f6be5b5e..8cb0d0610a21 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -126,8 +126,8 @@ */ static MALLOC_DEFINE(M_IFLIB, "iflib", "ifnet library"); -#define IFLIB_RXEOF_MORE (1U << 0) -#define IFLIB_RXEOF_EMPTY (2U << 0) +#define IFLIB_RXEOF_MORE (1U << 0) +#define IFLIB_RXEOF_EMPTY (2U << 0) struct iflib_txq; typedef struct iflib_txq *iflib_txq_t; @@ -200,16 +200,16 @@ struct iflib_ctx { qidx_t ifc_sysctl_ntxds[8]; qidx_t ifc_sysctl_nrxds[8]; struct if_txrx ifc_txrx; -#define isc_txd_encap ifc_txrx.ift_txd_encap -#define isc_txd_flush ifc_txrx.ift_txd_flush -#define isc_txd_credits_update ifc_txrx.ift_txd_credits_update -#define isc_rxd_available ifc_txrx.ift_rxd_available -#define isc_rxd_pkt_get ifc_txrx.ift_rxd_pkt_get -#define isc_rxd_refill ifc_txrx.ift_rxd_refill -#define isc_rxd_flush ifc_txrx.ift_rxd_flush -#define isc_legacy_intr ifc_txrx.ift_legacy_intr -#define isc_txq_select ifc_txrx.ift_txq_select -#define isc_txq_select_v2 ifc_txrx.ift_txq_select_v2 +#define isc_txd_encap ifc_txrx.ift_txd_encap +#define isc_txd_flush ifc_txrx.ift_txd_flush +#define isc_txd_credits_update ifc_txrx.ift_txd_credits_update +#define isc_rxd_available ifc_txrx.ift_rxd_available +#define isc_rxd_pkt_get ifc_txrx.ift_rxd_pkt_get +#define isc_rxd_refill ifc_txrx.ift_rxd_refill +#define isc_rxd_flush ifc_txrx.ift_rxd_flush +#define isc_legacy_intr ifc_txrx.ift_legacy_intr +#define isc_txq_select ifc_txrx.ift_txq_select +#define isc_txq_select_v2 ifc_txrx.ift_txq_select_v2 eventhandler_tag ifc_vlan_attach_event; eventhandler_tag ifc_vlan_detach_event; @@ -272,12 +272,12 @@ iflib_get_extra_msix_vectors_sysctl(if_ctx_t ctx) return (ctx->ifc_sysctl_extra_msix_vectors); } -#define IP_ALIGNED(m) ((((uintptr_t)(m)->m_data) & 0x3) == 0x2) -#define CACHE_PTR_INCREMENT (CACHE_LINE_SIZE/sizeof(void*)) -#define CACHE_PTR_NEXT(ptr) ((void *)(((uintptr_t)(ptr)+CACHE_LINE_SIZE-1) & (CACHE_LINE_SIZE-1))) +#define IP_ALIGNED(m) ((((uintptr_t)(m)->m_data) & 0x3) == 0x2) +#define CACHE_PTR_INCREMENT (CACHE_LINE_SIZE / sizeof(void *)) +#define CACHE_PTR_NEXT(ptr) ((void *)(((uintptr_t)(ptr) + CACHE_LINE_SIZE - 1) & (CACHE_LINE_SIZE - 1))) -#define LINK_ACTIVE(ctx) ((ctx)->ifc_link_state == LINK_STATE_UP) -#define CTX_IS_VF(ctx) ((ctx)->ifc_sctx->isc_flags & IFLIB_IS_VF) +#define LINK_ACTIVE(ctx) ((ctx)->ifc_link_state == LINK_STATE_UP) +#define CTX_IS_VF(ctx) ((ctx)->ifc_sctx->isc_flags & IFLIB_IS_VF) typedef struct iflib_sw_rx_desc_array { bus_dmamap_t *ifsd_map; /* bus_dma maps for packet */ @@ -325,9 +325,9 @@ typedef struct iflib_sw_tx_desc_array { #define IFC_NETMAP_TX_IRQ 0x80000000 -#define CSUM_OFFLOAD (CSUM_IP_TSO|CSUM_IP6_TSO|CSUM_IP| \ - CSUM_IP_UDP|CSUM_IP_TCP|CSUM_IP_SCTP| \ - CSUM_IP6_UDP|CSUM_IP6_TCP|CSUM_IP6_SCTP) +#define CSUM_OFFLOAD (CSUM_IP_TSO | CSUM_IP6_TSO | CSUM_IP | \ + CSUM_IP_UDP | CSUM_IP_TCP | CSUM_IP_SCTP | \ + CSUM_IP6_UDP | CSUM_IP6_TCP | CSUM_IP6_SCTP) struct iflib_txq { qidx_t ift_in_use; @@ -455,11 +455,11 @@ struct iflib_rxq { uint8_t ifr_ntxqirq; uint8_t ifr_txqid[IFLIB_MAX_TX_SHARED_INTR]; uint8_t ifr_fl_offset; - struct lro_ctrl ifr_lc; + struct lro_ctrl ifr_lc; struct grouptask ifr_task; struct callout ifr_watchdog; struct iflib_filter_info ifr_filter_info; - iflib_dma_info_t ifr_ifdi; + iflib_dma_info_t ifr_ifdi; /* dynamically allocate if any drivers need a value substantially larger than this */ struct if_rxd_frag ifr_frags[IFLIB_MAX_RX_SEGS] __aligned(CACHE_LINE_SIZE); @@ -483,8 +483,8 @@ typedef struct if_rxsd { #define RXD_INFO_SIZE 8 #define PKT_TYPE uint32_t #endif -#define PKT_LOOP_BOUND ((PKT_INFO_SIZE/3)*3) -#define RXD_LOOP_BOUND ((RXD_INFO_SIZE/4)*4) +#define PKT_LOOP_BOUND ((PKT_INFO_SIZE / 3) * 3) +#define RXD_LOOP_BOUND ((RXD_INFO_SIZE / 4) * 4) typedef struct if_pkt_info_pad { PKT_TYPE pkt_val[PKT_INFO_SIZE]; @@ -507,7 +507,7 @@ pkt_info_zero(if_pkt_info_t pi) #ifndef __LP64__ pi_pad->pkt_val[6] = 0; pi_pad->pkt_val[7] = 0; pi_pad->pkt_val[8] = 0; pi_pad->pkt_val[9] = 0; pi_pad->pkt_val[10] = 0; -#endif +#endif } static inline void @@ -519,12 +519,12 @@ rxd_info_zero(if_rxd_info_t ri) ri_pad = (if_rxd_info_pad_t)ri; for (i = 0; i < RXD_LOOP_BOUND; i += 4) { ri_pad->rxd_val[i] = 0; - ri_pad->rxd_val[i+1] = 0; - ri_pad->rxd_val[i+2] = 0; - ri_pad->rxd_val[i+3] = 0; + ri_pad->rxd_val[i + 1] = 0; + ri_pad->rxd_val[i + 2] = 0; + ri_pad->rxd_val[i + 3] = 0; } #ifdef __LP64__ - ri_pad->rxd_val[RXD_INFO_SIZE-1] = 0; + ri_pad->rxd_val[RXD_INFO_SIZE - 1] = 0; #endif } @@ -532,19 +532,19 @@ rxd_info_zero(if_rxd_info_t ri) * Only allow a single packet to take up most 1/nth of the tx ring */ #define MAX_SINGLE_PACKET_FRACTION 12 -#define IF_BAD_DMA (bus_addr_t)-1 +#define IF_BAD_DMA ((bus_addr_t)-1) -#define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) +#define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) -#define CTX_LOCK_INIT(_sc) sx_init(&(_sc)->ifc_ctx_sx, "iflib ctx lock") -#define CTX_LOCK(ctx) sx_xlock(&(ctx)->ifc_ctx_sx) -#define CTX_UNLOCK(ctx) sx_xunlock(&(ctx)->ifc_ctx_sx) -#define CTX_LOCK_DESTROY(ctx) sx_destroy(&(ctx)->ifc_ctx_sx) +#define CTX_LOCK_INIT(_sc) sx_init(&(_sc)->ifc_ctx_sx, "iflib ctx lock") +#define CTX_LOCK(ctx) sx_xlock(&(ctx)->ifc_ctx_sx) +#define CTX_UNLOCK(ctx) sx_xunlock(&(ctx)->ifc_ctx_sx) +#define CTX_LOCK_DESTROY(ctx) sx_destroy(&(ctx)->ifc_ctx_sx) -#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) -#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) -#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) -#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) +#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) +#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) +#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) +#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) #define CALLOUT_LOCK(txq) mtx_lock(&txq->ift_mtx) #define CALLOUT_UNLOCK(txq) mtx_unlock(&txq->ift_mtx) @@ -579,7 +579,7 @@ static SYSCTL_NODE(_net, OID_AUTO, iflib, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "iflib driver parameters"); /* - * XXX need to ensure that this can't accidentally cause the head to be moved backwards + * XXX need to ensure that this can't accidentally cause the head to be moved backwards */ static int iflib_min_tx_latency = 0; SYSCTL_INT(_net_iflib, OID_AUTO, min_tx_latency, CTLFLAG_RW, @@ -721,7 +721,7 @@ static void iflib_stop(if_ctx_t ctx); static void iflib_if_init_locked(if_ctx_t ctx); static void iflib_free_intr_mem(if_ctx_t ctx); #ifndef __NO_STRICT_ALIGNMENT -static struct mbuf * iflib_fixup_rx(struct mbuf *m); +static struct mbuf *iflib_fixup_rx(struct mbuf *m); #endif static SLIST_HEAD(cpu_offset_list, cpu_offset) cpu_offsets = @@ -745,7 +745,7 @@ iflib_num_rx_descs(if_ctx_t ctx) if_shared_ctx_t sctx = ctx->ifc_sctx; uint16_t first_rxq = (sctx->isc_flags & IFLIB_HAS_RXCQ) ? 1 : 0; - return scctx->isc_nrxd[first_rxq]; + return (scctx->isc_nrxd[first_rxq]); } static int @@ -755,7 +755,7 @@ iflib_num_tx_descs(if_ctx_t ctx) if_shared_ctx_t sctx = ctx->ifc_sctx; uint16_t first_txq = (sctx->isc_flags & IFLIB_HAS_TXCQ) ? 1 : 0; - return scctx->isc_ntxd[first_txq]; + return (scctx->isc_ntxd[first_txq]); } #ifdef DEV_NETMAP @@ -851,7 +851,7 @@ iflib_netmap_config(struct netmap_adapter *na, struct nm_config_info *info) info->num_tx_rings, info->num_rx_rings, info->num_tx_descs, info->num_rx_descs, info->rx_buf_maxsize); - return 0; + return (0); } static int @@ -925,7 +925,7 @@ netmap_fl_refill(iflib_rxq_t rxq, struct netmap_kring *kring, bool init) MPASS(i < IFLIB_MAX_RX_REFRESH); if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ - return netmap_ring_reinit(kring); + return (netmap_ring_reinit(kring)); fl->ifl_bus_addrs[i] = paddr + nm_get_offset(kring, slot); @@ -1268,7 +1268,7 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int flags) if (n) { /* update the state variables */ if (netmap_no_pendintr && !force_update) { /* diagnostics */ - iflib_rx_miss ++; + iflib_rx_miss++; iflib_rx_miss_bufs += n; } kring->nr_hwtail = nm_i; @@ -1406,7 +1406,7 @@ prefetch2cachelines(void *x) { __asm volatile("prefetcht0 %0" :: "m" (*(unsigned long *)x)); #if (CACHE_LINE_SIZE < 128) - __asm volatile("prefetcht0 %0" :: "m" (*(((unsigned long *)x)+CACHE_LINE_SIZE/(sizeof(unsigned long))))); + __asm volatile("prefetcht0 %0" :: "m" (*(((unsigned long *)x) + CACHE_LINE_SIZE / (sizeof(unsigned long))))); #endif } #else @@ -1474,7 +1474,7 @@ iflib_dma_alloc_align(if_ctx_t ctx, int size, int align, iflib_dma_info_t dma, i goto fail_0; } - err = bus_dmamem_alloc(dma->idi_tag, (void**) &dma->idi_vaddr, + err = bus_dmamem_alloc(dma->idi_tag, (void **)&dma->idi_vaddr, BUS_DMA_NOWAIT | BUS_DMA_COHERENT | BUS_DMA_ZERO, &dma->idi_map); if (err) { device_printf(dev, @@ -1743,8 +1743,8 @@ iflib_txsd_alloc(iflib_txq_t txq) NULL, /* lockfunc */ NULL, /* lockfuncarg */ &txq->ift_buf_tag))) { - device_printf(dev,"Unable to allocate TX DMA tag: %d\n", err); - device_printf(dev,"maxsize: %ju nsegments: %d maxsegsize: %ju\n", + device_printf(dev, "Unable to allocate TX DMA tag: %d\n", err); + device_printf(dev, "maxsize: %ju nsegments: %d maxsegsize: %ju\n", (uintmax_t)sctx->isc_tx_maxsize, nsegments, (uintmax_t)sctx->isc_tx_maxsegsize); goto fail; } @@ -1954,7 +1954,7 @@ iflib_rxsd_alloc(iflib_rxq_t rxq) device_t dev = ctx->ifc_dev; iflib_fl_t fl; bus_addr_t lowaddr; - int err; + int err; MPASS(scctx->isc_nrxd[0] > 0); MPASS(scctx->isc_nrxd[rxq->ifr_fl_offset] > 0); @@ -2304,8 +2304,8 @@ iflib_fl_setup(iflib_fl_t fl) bit_nclear(fl->ifl_rx_bitmap, 0, fl->ifl_size - 1); /* - ** Free current RX buffer structs and their mbufs - */ + * Free current RX buffer structs and their mbufs + */ iflib_fl_bufs_free(fl); /* Now replenish the mbufs */ MPASS(fl->ifl_credits == 0); @@ -2435,7 +2435,7 @@ iflib_timer(void *arg) GROUPTASK_ENQUEUE(&txq->ift_task); sctx->isc_pause_frames = 0; - if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) + if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) callout_reset_on(&txq->ift_timer, iflib_timer_default, iflib_timer, txq, txq->ift_timer.c_cpu); return; @@ -2446,7 +2446,7 @@ iflib_timer(void *arg) txq->ift_id, TXQ_AVAIL(txq), txq->ift_pidx); STATE_LOCK(ctx); if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); - ctx->ifc_flags |= (IFC_DO_WATCHDOG|IFC_DO_RESET); + ctx->ifc_flags |= (IFC_DO_WATCHDOG | IFC_DO_RESET); iflib_admin_intr_deferred(ctx); STATE_UNLOCK(ctx); } @@ -2670,8 +2670,8 @@ calc_next_rxd(iflib_fl_t fl, int cidx) if (__predict_false(size == 0)) return (start); - cur = start + size*cidx; - end = start + size*nrxd; + cur = start + size * cidx; + end = start + size * nrxd; next = CACHE_PTR_NEXT(cur); return (next < end ? next : start); } @@ -2683,19 +2683,19 @@ prefetch_pkts(iflib_fl_t fl, int cidx) int nrxd = fl->ifl_size; caddr_t next_rxd; - nextptr = (cidx + CACHE_PTR_INCREMENT) & (nrxd-1); + nextptr = (cidx + CACHE_PTR_INCREMENT) & (nrxd - 1); prefetch(&fl->ifl_sds.ifsd_m[nextptr]); prefetch(&fl->ifl_sds.ifsd_cl[nextptr]); next_rxd = calc_next_rxd(fl, cidx); prefetch(next_rxd); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 1) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 2) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 3) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 4) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 1) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 2) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 3) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 4) & (nrxd-1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 1) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 2) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 3) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 4) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 1) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 2) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 3) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 4) & (nrxd - 1)]); } static struct mbuf * @@ -2720,7 +2720,7 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, bool unload, if_rxsd_t sd, #endif if (rxq->ifr_ctx->ifc_flags & IFC_PREFETCH) prefetch_pkts(fl, cidx); - next = (cidx + CACHE_PTR_INCREMENT) & (fl->ifl_size-1); + next = (cidx + CACHE_PTR_INCREMENT) & (fl->ifl_size - 1); prefetch(&fl->ifl_sds.ifsd_map[next]); map = fl->ifl_sds.ifsd_map[cidx]; @@ -2768,7 +2768,7 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, bool unload, if_rxsd_t sd, if (unload && irf->irf_len != 0) bus_dmamap_unload(fl->ifl_buf_tag, map); - fl->ifl_cidx = (fl->ifl_cidx + 1) & (fl->ifl_size-1); + fl->ifl_cidx = (fl->ifl_cidx + 1) & (fl->ifl_size - 1); if (__predict_false(fl->ifl_cidx == 0)) fl->ifl_gen = 0; bit_clear(fl->ifl_rx_bitmap, cidx); @@ -2812,7 +2812,7 @@ assemble_segments(iflib_rxq_t rxq, if_rxd_info_t ri, if_rxsd_t sd, int *pf_rv) continue; } if (mh == NULL) { - flags = M_PKTHDR|M_EXT; + flags = M_PKTHDR | M_EXT; mh = mt = m; padlen = ri->iri_pad; } else { @@ -2913,16 +2913,16 @@ iflib_check_lro_possible(struct mbuf *m, bool v4_forwarding, bool v6_forwarding) eh = mtod(m, struct ether_header *); switch (eh->ether_type) { #if defined(INET6) - case htons(ETHERTYPE_IPV6): - return (!v6_forwarding); + case htons(ETHERTYPE_IPV6): + return (!v6_forwarding); #endif -#if defined (INET) - case htons(ETHERTYPE_IP): - return (!v4_forwarding); +#if defined(INET) + case htons(ETHERTYPE_IP): + return (!v4_forwarding); #endif } - return false; + return (false); } #else static void @@ -3058,8 +3058,8 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) mt = mf = NULL; } } - if ((m->m_pkthdr.csum_flags & (CSUM_L4_CALC|CSUM_L4_VALID)) == - (CSUM_L4_CALC|CSUM_L4_VALID)) { + if ((m->m_pkthdr.csum_flags & (CSUM_L4_CALC | CSUM_L4_VALID)) == + (CSUM_L4_CALC | CSUM_L4_VALID)) { if (lro_possible && tcp_lro_rx(&rxq->ifr_lc, m, 0) == 0) continue; } @@ -3102,15 +3102,15 @@ err: return (0); } -#define TXD_NOTIFY_COUNT(txq) (((txq)->ift_size / (txq)->ift_update_freq)-1) +#define TXD_NOTIFY_COUNT(txq) (((txq)->ift_size / (txq)->ift_update_freq) - 1) static inline qidx_t txq_max_db_deferred(iflib_txq_t txq, qidx_t in_use) { qidx_t notify_count = TXD_NOTIFY_COUNT(txq); qidx_t minthresh = txq->ift_size / 8; - if (in_use > 4*minthresh) + if (in_use > 4 * minthresh) return (notify_count); - if (in_use > 2*minthresh) + if (in_use > 2 * minthresh) return (notify_count >> 1); if (in_use > minthresh) return (notify_count >> 3); @@ -3122,21 +3122,21 @@ txq_max_rs_deferred(iflib_txq_t txq) { qidx_t notify_count = TXD_NOTIFY_COUNT(txq); qidx_t minthresh = txq->ift_size / 8; - if (txq->ift_in_use > 4*minthresh) + if (txq->ift_in_use > 4 * minthresh) return (notify_count); - if (txq->ift_in_use > 2*minthresh) + if (txq->ift_in_use > 2 * minthresh) return (notify_count >> 1); if (txq->ift_in_use > minthresh) return (notify_count >> 2); return (2); } -#define M_CSUM_FLAGS(m) ((m)->m_pkthdr.csum_flags) -#define M_HAS_VLANTAG(m) (m->m_flags & M_VLANTAG) +#define M_CSUM_FLAGS(m) ((m)->m_pkthdr.csum_flags) +#define M_HAS_VLANTAG(m) (m->m_flags & M_VLANTAG) -#define TXQ_MAX_DB_DEFERRED(txq, in_use) txq_max_db_deferred((txq), (in_use)) -#define TXQ_MAX_RS_DEFERRED(txq) txq_max_rs_deferred(txq) -#define TXQ_MAX_DB_CONSUMED(size) (size >> 4) +#define TXQ_MAX_DB_DEFERRED(txq, in_use) txq_max_db_deferred((txq), (in_use)) +#define TXQ_MAX_RS_DEFERRED(txq) txq_max_rs_deferred(txq) +#define TXQ_MAX_DB_CONSUMED(size) (size >> 4) /* forward compatibility for cxgb */ #define FIRST_QSET(ctx) 0 @@ -3441,7 +3441,7 @@ iflib_parse_header(iflib_txq_t txq, if_pkt_info_t pi, struct mbuf **mp) } } if ((sctx->isc_flags & IFLIB_NEED_ZERO_CSUM) && (pi->ipi_csum_flags & CSUM_IP)) - ip->ip_sum = 0; + ip->ip_sum = 0; break; } @@ -3541,8 +3541,8 @@ calc_next_txd(iflib_txq_t txq, int cidx, uint8_t qid) if (__predict_false(size == 0)) return (start); - cur = start + size*cidx; - end = start + size*ntxd; + cur = start + size * cidx; + end = start + size * ntxd; next = CACHE_PTR_NEXT(cur); return (next < end ? next : start); } @@ -3569,7 +3569,7 @@ iflib_ether_pad(device_t dev, struct mbuf **m_head, uint16_t min_frame_size) device_printf(dev, "cannot pad short frame, m_dup() failed"); DBG_COUNTER_INC(encap_pad_mbuf_fail); DBG_COUNTER_INC(tx_frees); - return ENOMEM; + return (ENOMEM); } m_freem(*m_head); *m_head = new_head; @@ -3588,7 +3588,7 @@ iflib_ether_pad(device_t dev, struct mbuf **m_head, uint16_t min_frame_size) return (ENOBUFS); } - return 0; + return (0); } static int @@ -3620,7 +3620,7 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) cidx = txq->ift_cidx; pidx = txq->ift_pidx; if (ctx->ifc_flags & IFC_PREFETCH) { - next = (cidx + CACHE_PTR_INCREMENT) & (ntxd-1); + next = (cidx + CACHE_PTR_INCREMENT) & (ntxd - 1); if (!(ctx->ifc_flags & IFLIB_HAS_TXCQ)) { next_txd = calc_next_txd(txq, cidx, 0); prefetch(next_txd); @@ -3629,7 +3629,7 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) /* prefetch the next cache line of mbuf pointers and flags */ prefetch(&txq->ift_sds.ifsd_m[next]); prefetch(&txq->ift_sds.ifsd_map[next]); - next = (cidx + CACHE_LINE_SIZE) & (ntxd-1); + next = (cidx + CACHE_LINE_SIZE) & (ntxd - 1); } map = txq->ift_sds.ifsd_map[pidx]; ifsd_m = txq->ift_sds.ifsd_m; @@ -3650,13 +3650,13 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) err = iflib_ether_pad(ctx->ifc_dev, m_headp, scctx->isc_min_frame_size); if (err) { DBG_COUNTER_INC(encap_txd_encap_fail); - return err; + return (err); } } m_head = *m_headp; pkt_info_zero(&pi); - pi.ipi_mflags = (m_head->m_flags & (M_VLANTAG|M_BCAST|M_MCAST)); + pi.ipi_mflags = (m_head->m_flags & (M_VLANTAG | M_BCAST | M_MCAST)); pi.ipi_pidx = pidx; pi.ipi_qsidx = txq->ift_id; pi.ipi_len = m_head->m_pkthdr.len; @@ -3762,7 +3762,7 @@ defrag: txq->ift_gen = 1; } /* - * drivers can need as many as + * drivers can need as many as * two sentinels */ MPASS(ndesc <= pi.ipi_nsegs + 2); @@ -3814,7 +3814,7 @@ iflib_tx_desc_free(iflib_txq_t txq, int n) cidx = txq->ift_cidx; gen = txq->ift_gen; qsize = txq->ift_size; - mask = qsize-1; + mask = qsize - 1; ifsd_m = txq->ift_sds.ifsd_m; do_prefetch = (txq->ift_ctx->ifc_flags & IFC_PREFETCH); @@ -3895,17 +3895,17 @@ _ring_peek_one(struct ifmp_ring *r, int cidx, int offset, int remaining) struct mbuf **items; size = r->size; - next = (cidx + CACHE_PTR_INCREMENT) & (size-1); + next = (cidx + CACHE_PTR_INCREMENT) & (size - 1); items = __DEVOLATILE(struct mbuf **, &r->items[0]); - prefetch(items[(cidx + offset) & (size-1)]); + prefetch(items[(cidx + offset) & (size - 1)]); if (remaining > 1) { prefetch2cachelines(&items[next]); - prefetch2cachelines(items[(cidx + offset + 1) & (size-1)]); - prefetch2cachelines(items[(cidx + offset + 2) & (size-1)]); - prefetch2cachelines(items[(cidx + offset + 3) & (size-1)]); + prefetch2cachelines(items[(cidx + offset + 1) & (size - 1)]); + prefetch2cachelines(items[(cidx + offset + 2) & (size - 1)]); + prefetch2cachelines(items[(cidx + offset + 3) & (size - 1)]); } - return (__DEVOLATILE(struct mbuf **, &r->items[(cidx + offset) & (size-1)])); + return (__DEVOLATILE(struct mbuf **, &r->items[(cidx + offset) & (size - 1)])); } static void @@ -3955,9 +3955,9 @@ iflib_txq_drain(struct ifmp_ring *r, uint32_t cidx, uint32_t pidx) */ DBG_COUNTER_INC(txq_drain_flushing); for (i = 0; i < avail; i++) { - if (__predict_true(r->items[(cidx + i) & (r->size-1)] != (void *)txq)) - m_freem(r->items[(cidx + i) & (r->size-1)]); - r->items[(cidx + i) & (r->size-1)] = NULL; + if (__predict_true(r->items[(cidx + i) & (r->size - 1)] != (void *)txq)) + m_freem(r->items[(cidx + i) & (r->size - 1)]); + r->items[(cidx + i) & (r->size - 1)] = NULL; } return (avail); } @@ -4187,7 +4187,7 @@ _task_fn_admin(void *context) do_reset = (ctx->ifc_flags & IFC_DO_RESET); do_watchdog = (ctx->ifc_flags & IFC_DO_WATCHDOG); in_detach = (ctx->ifc_flags & IFC_IN_DETACH); - ctx->ifc_flags &= ~(IFC_DO_RESET|IFC_DO_WATCHDOG); + ctx->ifc_flags &= ~(IFC_DO_RESET | IFC_DO_WATCHDOG); STATE_UNLOCK(ctx); if ((!running && !oactive) && !(ctx->ifc_sctx->isc_flags & IFLIB_ADMIN_ALWAYS_RUN)) @@ -4343,7 +4343,7 @@ iflib_if_transmit(if_t ifp, struct mbuf *m) } while (next != NULL); if (count > nitems(marr)) - if ((mp = malloc(count*sizeof(struct mbuf *), M_IFLIB, M_NOWAIT)) == NULL) { + if ((mp = malloc(count * sizeof(struct mbuf *), M_IFLIB, M_NOWAIT)) == NULL) { /* XXX check nextpkt */ m_freem(m); /* XXX simplify for now */ @@ -4482,11 +4482,11 @@ iflib_if_ioctl(if_t ifp, u_long command, caddr_t data) avoid_reset = true; #endif /* - ** Calling init results in link renegotiation, - ** so we avoid doing it when possible. - */ + * Calling init results in link renegotiation, + * so we avoid doing it when possible. + */ if (avoid_reset) { - if_setflagbits(ifp, IFF_UP,0); + if_setflagbits(ifp, IFF_UP, 0); if (!(if_getdrvflags(ifp) & IFF_DRV_RUNNING)) reinit = 1; #ifdef INET @@ -4588,7 +4588,7 @@ iflib_if_ioctl(if_t ifp, u_long command, caddr_t data) mask &= ctx->ifc_softc_ctx.isc_capabilities | IFCAP_MEXTPG; setmask = 0; #ifdef TCP_OFFLOAD - setmask |= mask & (IFCAP_TOE4|IFCAP_TOE6); + setmask |= mask & (IFCAP_TOE4 | IFCAP_TOE6); #endif setmask |= (mask & IFCAP_FLAGS); setmask |= (mask & IFCAP_WOL); @@ -4913,15 +4913,15 @@ find_child_with_core(int cpu, struct cpu_group *grp) int i; if (grp->cg_children == 0) - return -1; + return (-1); MPASS(grp->cg_child); for (i = 0; i < grp->cg_children; i++) { if (CPU_ISSET(cpu, &grp->cg_child[i].cg_mask)) - return i; + return (i); } - return -1; + return (-1); } @@ -4938,7 +4938,7 @@ find_l2_neighbor(int cpu) grp = cpu_top; if (grp == NULL) - return -1; + return (-1); /* * Find the smallest CPU group that contains the given core. @@ -4957,7 +4957,7 @@ find_l2_neighbor(int cpu) /* Must share L2. */ if (grp->cg_level > CG_SHARE_L2 || grp->cg_level == CG_SHARE_NONE) - return -1; + return (-1); /* * Select the first member of the set that isn't the reference @@ -5198,10 +5198,10 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct int err, msix, rid; int num_txd, num_rxd; - ctx = malloc(sizeof(* ctx), M_IFLIB, M_WAITOK|M_ZERO); + ctx = malloc(sizeof(*ctx), M_IFLIB, M_WAITOK | M_ZERO); if (sc == NULL) { - sc = malloc(sctx->isc_driver->size, M_IFLIB, M_WAITOK|M_ZERO); + sc = malloc(sctx->isc_driver->size, M_IFLIB, M_WAITOK | M_ZERO); device_set_softc(dev, ctx); ctx->ifc_flags |= IFC_SC_ALLOCATED; } @@ -5285,7 +5285,7 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct } if (scctx->isc_rss_table_size == 0) scctx->isc_rss_table_size = 64; - scctx->isc_rss_table_mask = scctx->isc_rss_table_size-1; + scctx->isc_rss_table_mask = scctx->isc_rss_table_size - 1; GROUPTASK_INIT(&ctx->ifc_admin_task, 0, _task_fn_admin, ctx); /* XXX format name */ @@ -5302,16 +5302,16 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct MPASS(CPU_COUNT(&ctx->ifc_cpus) > 0); /* - ** Now set up MSI or MSI-X, should return us the number of supported - ** vectors (will be 1 for a legacy interrupt and MSI). - */ + * Now set up MSI or MSI-X, should return us the number of supported + * vectors (will be 1 for a legacy interrupt and MSI). + */ if (sctx->isc_flags & IFLIB_SKIP_MSIX) { msix = scctx->isc_vectors; } else if (scctx->isc_msix_bar != 0) - /* - * The simple fact that isc_msix_bar is not 0 does not mean we - * we have a good value there that is known to work. - */ + /* + * The simple fact that isc_msix_bar is not 0 does not mean we + * we have a good value there that is known to work. + */ msix = iflib_msix_init(ctx); else { scctx->isc_vectors = 1; @@ -5583,7 +5583,7 @@ iflib_device_suspend(device_t dev) IFDI_SUSPEND(ctx); CTX_UNLOCK(ctx); - return bus_generic_suspend(dev); + return (bus_generic_suspend(dev)); } int iflib_device_shutdown(device_t dev) @@ -5594,7 +5594,7 @@ iflib_device_shutdown(device_t dev) IFDI_SHUTDOWN(ctx); CTX_UNLOCK(ctx); - return bus_generic_suspend(dev); + return (bus_generic_suspend(dev)); } int @@ -5981,20 +5981,20 @@ iflib_queues_alloc(if_ctx_t ctx) goto err_rx_desc; } - for (j = 0, fl = rxq->ifr_fl; j < rxq->ifr_nfl; j++, fl++) + for (j = 0, fl = rxq->ifr_fl; j < rxq->ifr_nfl; j++, fl++) fl->ifl_rx_bitmap = bit_alloc(fl->ifl_size, M_IFLIB, M_WAITOK); } /* TXQs */ - vaddrs = malloc(sizeof(caddr_t)*ntxqsets*ntxqs, M_IFLIB, M_WAITOK); - paddrs = malloc(sizeof(uint64_t)*ntxqsets*ntxqs, M_IFLIB, M_WAITOK); + vaddrs = malloc(sizeof(caddr_t) * ntxqsets * ntxqs, M_IFLIB, M_WAITOK); + paddrs = malloc(sizeof(uint64_t) * ntxqsets * ntxqs, M_IFLIB, M_WAITOK); for (i = 0; i < ntxqsets; i++) { iflib_dma_info_t di = ctx->ifc_txqs[i].ift_ifdi; for (j = 0; j < ntxqs; j++, di++) { - vaddrs[i*ntxqs + j] = di->idi_vaddr; - paddrs[i*ntxqs + j] = di->idi_paddr; + vaddrs[i * ntxqs + j] = di->idi_vaddr; + paddrs[i * ntxqs + j] = di->idi_paddr; } } if ((err = IFDI_TX_QUEUES_ALLOC(ctx, vaddrs, paddrs, ntxqs, ntxqsets)) != 0) { @@ -6009,14 +6009,14 @@ iflib_queues_alloc(if_ctx_t ctx) free(paddrs, M_IFLIB); /* RXQs */ - vaddrs = malloc(sizeof(caddr_t)*nrxqsets*nrxqs, M_IFLIB, M_WAITOK); - paddrs = malloc(sizeof(uint64_t)*nrxqsets*nrxqs, M_IFLIB, M_WAITOK); + vaddrs = malloc(sizeof(caddr_t) * nrxqsets * nrxqs, M_IFLIB, M_WAITOK); + paddrs = malloc(sizeof(uint64_t) * nrxqsets * nrxqs, M_IFLIB, M_WAITOK); for (i = 0; i < nrxqsets; i++) { iflib_dma_info_t di = ctx->ifc_rxqs[i].ifr_ifdi; for (j = 0; j < nrxqs; j++, di++) { - vaddrs[i*nrxqs + j] = di->idi_vaddr; - paddrs[i*nrxqs + j] = di->idi_paddr; + vaddrs[i * nrxqs + j] = di->idi_vaddr; + paddrs[i * nrxqs + j] = di->idi_paddr; } } if ((err = IFDI_RX_QUEUES_ALLOC(ctx, vaddrs, paddrs, nrxqs, nrxqsets)) != 0) { @@ -6517,7 +6517,7 @@ void iflib_config_gtask_deinit(struct grouptask *gtask) { - taskqgroup_detach(qgroup_if_config_tqg, gtask); + taskqgroup_detach(qgroup_if_config_tqg, gtask); } void @@ -6742,11 +6742,11 @@ msi: scctx->isc_ntxqsets = 1; scctx->isc_vectors = vectors; if (vectors == 1 && pci_alloc_msi(dev, &vectors) == 0) { - device_printf(dev,"Using an MSI interrupt\n"); + device_printf(dev, "Using an MSI interrupt\n"); scctx->isc_intr = IFLIB_INTR_MSI; } else { scctx->isc_vectors = 1; - device_printf(dev,"Using a Legacy interrupt\n"); + device_printf(dev, "Using a Legacy interrupt\n"); scctx->isc_intr = IFLIB_INTR_LEGACY; } @@ -6779,7 +6779,7 @@ mp_ring_state_handler(SYSCTL_HANDLER_ARGS) state[0], state[1], state[2], ring_state); rc = sbuf_finish(sb); sbuf_delete(sb); - return(rc); + return (rc); } enum iflib_ndesc_handler { @@ -6798,7 +6798,7 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) int nqs, rc, i; nqs = 8; - switch(type) { + switch (type) { case IFLIB_NTXD_HANDLER: ndesc = ctx->ifc_sysctl_ntxds; if (ctx->ifc_sctx) @@ -6816,7 +6816,7 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) if (nqs == 0) nqs = 8; - for (i=0; i<8; i++) { + for (i = 0; i < 8; i++) { if (i >= nqs) break; if (i) @@ -6826,14 +6826,14 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) rc = sysctl_handle_string(oidp, buf, sizeof(buf), req); if (rc || req->newptr == NULL) - return rc; + return (rc); for (i = 0, next = buf, p = strsep(&next, " ,"); i < 8 && p; i++, p = strsep(&next, " ,")) { ndesc[i] = strtoul(p, NULL, 10); } - return(rc); + return (rc); } #define NAME_BUFLEN 32 From nobody Thu Sep 26 05:20:43 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 4XDhkz5pn0z5YD6K; Thu, 26 Sep 2024 05:20: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 4XDhkz2sdXz4hKS; Thu, 26 Sep 2024 05:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ae2Nx1oNrACxDDSfkKXGlpjDTVz4n/rvJM0qblJXRHc=; b=Qkkmnv+t8sjlXeSGVsmDqui4fQ2+9pz77dzJ3dHgJmfArEAOsFvVxFGLlbLXcLA4kIByHY BfLKpIEJahiuTf2igKjsU9h8fGBF+lTyl8gy5P+KUlRMgwM8CURsEqy9KmOARiGrDJYSv6 aPTL2WwcvfSm0LUDBizV0CL42gguZ2FuDKDUimTwJTlqVu7rQZb6Vp/g6QgLOboCZSa//v KxccahRbleqJ+znpLz7ScQ/M2GzxYRHlDgLX/AuboBBNy8+DqXwqTzNNRu6vHAhUqWvm11 9Bg6UZolofXgTFukR4rIQ21X1xUEFmseO1YrTL8G+qDQZk/Wiw7y5l6IzmEBqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727328043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ae2Nx1oNrACxDDSfkKXGlpjDTVz4n/rvJM0qblJXRHc=; b=GEs05Y425O98pDg33ZOaTNjZjqCS2xm+eeSnqpEtiL3x6S44MhW+xeJnq1kdkL/2Yfj/r8 gYkKwpg3/1nZ0iCMjJDWz6CDl7W+L4MVn4SWLbTlsUuDDIflIa3AbqqxcCEX0vnubjtayg Id1Dcs8/ts/1pil1xLqJhNoJsiFgClDs/bNnbINTgB8ZZZSD5tjybSRj0pPTWABKqmV53U 9cXo3J5/moYX42N9xZLF12/2oqCzvxFFwwcBhge3lMCYjPsTeCRBvGkHz/nRwCubHo+E9q PVM00ngqliYegVctMjJWx+UCIbMEPgOQ7VypPUyX40hpnjgspXqFLoMf8g2mqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727328043; a=rsa-sha256; cv=none; b=u0fO8zPmRPjUO5jh0eqZ536DoQJ6KV5/20ohKmD+WZxKS53eZBONz+FF/cK81PuI7lrm6q eNjLfu5F1Xr9ESqL3g99/ekcSTFpo58OfRiESIGnxQZ+DCuXTrhA4CsCy/4JmwviYo/ynS Wd4OinBPFpLlSXEDWPKAyAbQOZAmVISDv7EoAl/BJYQAmRMvJ5PDSP7sZXIGiH+Ue+AGdH 4SckHmEoGIDxHbIx8h4BKGYUfw636x/GsqnUMRM95fXzAFtviqVzzrQiYHFIIoI9nzWba7 d9Qig9oKEEF2Ie1KC378TudQIc7dT8JYsGGx7QEknioTiGBHmSqAC6xKoW4B8g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDhkz2ThkzjNM; Thu, 26 Sep 2024 05:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48Q5Kh8J079730; Thu, 26 Sep 2024 05:20:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48Q5KhgK079727; Thu, 26 Sep 2024 05:20:43 GMT (envelope-from git) Date: Thu, 26 Sep 2024 05:20:43 GMT Message-Id: <202409260520.48Q5KhgK079727@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: a8eb9e3844da - stable/14 - iflib: Prefer C99's __func__ over GCC's __FUNCTION__ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: a8eb9e3844dacbf2c3d7e8e85b7fe23c2ea7f7eb Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=a8eb9e3844dacbf2c3d7e8e85b7fe23c2ea7f7eb commit a8eb9e3844dacbf2c3d7e8e85b7fe23c2ea7f7eb Author: Zhenlei Huang AuthorDate: 2024-09-22 02:07:38 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-26 05:19:01 +0000 iflib: Prefer C99's __func__ over GCC's __FUNCTION__ MFC after: 3 days (cherry picked from commit b90ba458dcaecc4041e008b99fde003bc9867a0d) --- sys/net/iflib.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index c6a01624436c..63a2f6be5b5e 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -3874,7 +3874,7 @@ iflib_completed_tx_reclaim(iflib_txq_t txq, int thresh) if (reclaim <= thresh /* + MAX_TX_DESC(txq->ift_ctx) */) { #ifdef INVARIANTS if (iflib_verbose_debug) { - printf("%s processed=%ju cleaned=%ju tx_nsegments=%d reclaim=%d thresh=%d\n", __FUNCTION__, + printf("%s processed=%ju cleaned=%ju tx_nsegments=%d reclaim=%d thresh=%d\n", __func__, txq->ift_processed, txq->ift_cleaned, txq->ift_ctx->ifc_softc_ctx.isc_tx_nsegments, reclaim, thresh); } @@ -3980,7 +3980,7 @@ iflib_txq_drain(struct ifmp_ring *r, uint32_t cidx, uint32_t pidx) count = MIN(avail, TX_BATCH_SIZE); #ifdef INVARIANTS if (iflib_verbose_debug) - printf("%s avail=%d ifc_flags=%x txq_avail=%d ", __FUNCTION__, + printf("%s avail=%d ifc_flags=%x txq_avail=%d ", __func__, avail, ctx->ifc_flags, TXQ_AVAIL(txq)); #endif do_prefetch = (ctx->ifc_flags & IFC_PREFETCH); From nobody Thu Sep 26 10:02: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 4XDq032kt5z5X4fp; Thu, 26 Sep 2024 10:02: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 4XDq030kp6z48v3; Thu, 26 Sep 2024 10:02:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727344947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOP8VQwyKXIuW7qGC83p2+/US1QSehYmCjW/5gsrC00=; b=lHsXz+LJV3S5PGVgT5B8qYNJT81jG+f/WRxkxWG/NJWNvi7mM0TSEYmpOJXAHYtiV+1Gvb 49t6KDnG5vsS5KLzDcODpAtlNcJhpWki0b2eL2YgUBLNQWO8dmEjKxymAjoucI0O9nlix1 cELy6qUiQ7ZNihU37iIcfE2jaEKFvmvZk4B3PaIVRIU+pFjHhYu8uStOtT/jYWdGkx0i4F Gd/5cETKVHCz7zNI4NhWObRht35+inqOAMVkxzC4T9l5sSCIOWJYUze9citVt4RWoWn3Ni 2e2K1ZeysywPvOO0S545sI4M2BUznMEauwfkX52BDXji3jU19OGrJxkFhfMqxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727344947; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOP8VQwyKXIuW7qGC83p2+/US1QSehYmCjW/5gsrC00=; b=SxYM5mWErsVk5UDsk2NNc6OGqw07sqxzDCvsrGm2ZlheAkUYJl9DzY7QyxOxo6286pC3Kd 9RtaJgpAfbVizHR7n58F3dDz+XaHa6hcHjgXpKQ61nanH3lPK3a1fuSM6WLGyszUWeX1ao rDIpO65bcpEXPTxorAQUnGEgyTrr7z2Idvqss0ByaEQG1cYYdcGFHF2yWEB3XUBEVKBCEf Gr1I0QfzqlMHwYowIVqCma8Hpu5uH1AaPkGBXi+LD0phsVLuj8XQDds7HQJ+KHM+KWwLaj 1yiGhSmoeH/+PX3a6/sR0l1gcYCXVoo3J8/uZyk84s48j+tY0+GyoHxRQYvTFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727344947; a=rsa-sha256; cv=none; b=WfmkKEW8f6lEPJbSJ2XiMQkejF+ZkkF6//E6EGTl7uxy/D3061d/m42RMcEMghedaK+YLe L5/LHSd6x+PtnLOSwyurKpE0d1KHjg7in8DHFEuN4cDfo/KwPvB/xpbSqyMNMH+ZDsIVEA LfkBpFJgHYnNXmElxq1sd7g37ZKZXmf4Z+W0TpEwkIXmSVbpHGSxtDA1xOCiWSiKrC1n1L gG9Gc9HF0UrMQUfY7m4h7TaspCFFzQ+XU7deag7lC/R4XDXmJVLsFGD/4xQYTyuuaPFnZw 0a60hunONFcjpmv8ma9iHE3ftnp6/pUqVXMox1FdSozNWqIl8Ihu1/u15pxw8A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDq0272V3zsY2; Thu, 26 Sep 2024 10:02: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 48QA2QWX061899; Thu, 26 Sep 2024 10:02:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48QA2QnL061896; Thu, 26 Sep 2024 10:02:26 GMT (envelope-from git) Date: Thu, 26 Sep 2024 10:02:26 GMT Message-Id: <202409261002.48QA2QnL061896@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: bf154c499e84 - stable/13 - iflib: Many style fixes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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/13 X-Git-Reftype: branch X-Git-Commit: bf154c499e84a6703180b60aac2481100ffd4c67 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=bf154c499e84a6703180b60aac2481100ffd4c67 commit bf154c499e84a6703180b60aac2481100ffd4c67 Author: Zhenlei Huang AuthorDate: 2024-09-22 02:07:39 +0000 Commit: Zhenlei Huang CommitDate: 2024-09-26 10:00:19 +0000 iflib: Many style fixes MFC after: 3 days (cherry picked from commit fa7045f99cdb2b699205653f42f3fe78597880a7) (cherry picked from commit 647860bff21446419dee923b07490fd4a6cd181a) --- sys/net/iflib.c | 296 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 148 insertions(+), 148 deletions(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 6ab307c8cca7..252fb3b529ed 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -126,8 +126,8 @@ */ MALLOC_DEFINE(M_IFLIB, "iflib", "ifnet library"); -#define IFLIB_RXEOF_MORE (1U << 0) -#define IFLIB_RXEOF_EMPTY (2U << 0) +#define IFLIB_RXEOF_MORE (1U << 0) +#define IFLIB_RXEOF_EMPTY (2U << 0) struct iflib_txq; typedef struct iflib_txq *iflib_txq_t; @@ -200,16 +200,16 @@ struct iflib_ctx { qidx_t ifc_sysctl_ntxds[8]; qidx_t ifc_sysctl_nrxds[8]; struct if_txrx ifc_txrx; -#define isc_txd_encap ifc_txrx.ift_txd_encap -#define isc_txd_flush ifc_txrx.ift_txd_flush -#define isc_txd_credits_update ifc_txrx.ift_txd_credits_update -#define isc_rxd_available ifc_txrx.ift_rxd_available -#define isc_rxd_pkt_get ifc_txrx.ift_rxd_pkt_get -#define isc_rxd_refill ifc_txrx.ift_rxd_refill -#define isc_rxd_flush ifc_txrx.ift_rxd_flush -#define isc_legacy_intr ifc_txrx.ift_legacy_intr -#define isc_txq_select ifc_txrx.ift_txq_select -#define isc_txq_select_v2 ifc_txrx.ift_txq_select_v2 +#define isc_txd_encap ifc_txrx.ift_txd_encap +#define isc_txd_flush ifc_txrx.ift_txd_flush +#define isc_txd_credits_update ifc_txrx.ift_txd_credits_update +#define isc_rxd_available ifc_txrx.ift_rxd_available +#define isc_rxd_pkt_get ifc_txrx.ift_rxd_pkt_get +#define isc_rxd_refill ifc_txrx.ift_rxd_refill +#define isc_rxd_flush ifc_txrx.ift_rxd_flush +#define isc_legacy_intr ifc_txrx.ift_legacy_intr +#define isc_txq_select ifc_txrx.ift_txq_select +#define isc_txq_select_v2 ifc_txrx.ift_txq_select_v2 eventhandler_tag ifc_vlan_attach_event; eventhandler_tag ifc_vlan_detach_event; @@ -278,12 +278,12 @@ iflib_get_extra_msix_vectors_sysctl(if_ctx_t ctx) return (ctx->ifc_sysctl_extra_msix_vectors); } -#define IP_ALIGNED(m) ((((uintptr_t)(m)->m_data) & 0x3) == 0x2) -#define CACHE_PTR_INCREMENT (CACHE_LINE_SIZE/sizeof(void*)) -#define CACHE_PTR_NEXT(ptr) ((void *)(((uintptr_t)(ptr)+CACHE_LINE_SIZE-1) & (CACHE_LINE_SIZE-1))) +#define IP_ALIGNED(m) ((((uintptr_t)(m)->m_data) & 0x3) == 0x2) +#define CACHE_PTR_INCREMENT (CACHE_LINE_SIZE / sizeof(void *)) +#define CACHE_PTR_NEXT(ptr) ((void *)(((uintptr_t)(ptr) + CACHE_LINE_SIZE - 1) & (CACHE_LINE_SIZE - 1))) -#define LINK_ACTIVE(ctx) ((ctx)->ifc_link_state == LINK_STATE_UP) -#define CTX_IS_VF(ctx) ((ctx)->ifc_sctx->isc_flags & IFLIB_IS_VF) +#define LINK_ACTIVE(ctx) ((ctx)->ifc_link_state == LINK_STATE_UP) +#define CTX_IS_VF(ctx) ((ctx)->ifc_sctx->isc_flags & IFLIB_IS_VF) typedef struct iflib_sw_rx_desc_array { bus_dmamap_t *ifsd_map; /* bus_dma maps for packet */ @@ -316,9 +316,9 @@ typedef struct iflib_sw_tx_desc_array { #define IFLIB_RESTART_BUDGET 8 -#define CSUM_OFFLOAD (CSUM_IP_TSO|CSUM_IP6_TSO|CSUM_IP| \ - CSUM_IP_UDP|CSUM_IP_TCP|CSUM_IP_SCTP| \ - CSUM_IP6_UDP|CSUM_IP6_TCP|CSUM_IP6_SCTP) +#define CSUM_OFFLOAD (CSUM_IP_TSO | CSUM_IP6_TSO | CSUM_IP | \ + CSUM_IP_UDP | CSUM_IP_TCP | CSUM_IP_SCTP | \ + CSUM_IP6_UDP | CSUM_IP6_TCP | CSUM_IP6_SCTP) struct iflib_txq { qidx_t ift_in_use; @@ -446,11 +446,11 @@ struct iflib_rxq { uint8_t ifr_ntxqirq; uint8_t ifr_txqid[IFLIB_MAX_TX_SHARED_INTR]; uint8_t ifr_fl_offset; - struct lro_ctrl ifr_lc; + struct lro_ctrl ifr_lc; struct grouptask ifr_task; struct callout ifr_watchdog; struct iflib_filter_info ifr_filter_info; - iflib_dma_info_t ifr_ifdi; + iflib_dma_info_t ifr_ifdi; /* dynamically allocate if any drivers need a value substantially larger than this */ struct if_rxd_frag ifr_frags[IFLIB_MAX_RX_SEGS] __aligned(CACHE_LINE_SIZE); @@ -474,8 +474,8 @@ typedef struct if_rxsd { #define RXD_INFO_SIZE 8 #define PKT_TYPE uint32_t #endif -#define PKT_LOOP_BOUND ((PKT_INFO_SIZE/3)*3) -#define RXD_LOOP_BOUND ((RXD_INFO_SIZE/4)*4) +#define PKT_LOOP_BOUND ((PKT_INFO_SIZE / 3) * 3) +#define RXD_LOOP_BOUND ((RXD_INFO_SIZE / 4) * 4) typedef struct if_pkt_info_pad { PKT_TYPE pkt_val[PKT_INFO_SIZE]; @@ -498,7 +498,7 @@ pkt_info_zero(if_pkt_info_t pi) #ifndef __LP64__ pi_pad->pkt_val[6] = 0; pi_pad->pkt_val[7] = 0; pi_pad->pkt_val[8] = 0; pi_pad->pkt_val[9] = 0; pi_pad->pkt_val[10] = 0; -#endif +#endif } static device_method_t iflib_pseudo_methods[] = { @@ -520,12 +520,12 @@ rxd_info_zero(if_rxd_info_t ri) ri_pad = (if_rxd_info_pad_t)ri; for (i = 0; i < RXD_LOOP_BOUND; i += 4) { ri_pad->rxd_val[i] = 0; - ri_pad->rxd_val[i+1] = 0; - ri_pad->rxd_val[i+2] = 0; - ri_pad->rxd_val[i+3] = 0; + ri_pad->rxd_val[i + 1] = 0; + ri_pad->rxd_val[i + 2] = 0; + ri_pad->rxd_val[i + 3] = 0; } #ifdef __LP64__ - ri_pad->rxd_val[RXD_INFO_SIZE-1] = 0; + ri_pad->rxd_val[RXD_INFO_SIZE - 1] = 0; #endif } @@ -533,19 +533,19 @@ rxd_info_zero(if_rxd_info_t ri) * Only allow a single packet to take up most 1/nth of the tx ring */ #define MAX_SINGLE_PACKET_FRACTION 12 -#define IF_BAD_DMA (bus_addr_t)-1 +#define IF_BAD_DMA ((bus_addr_t)-1) -#define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) +#define CTX_ACTIVE(ctx) ((if_getdrvflags((ctx)->ifc_ifp) & IFF_DRV_RUNNING)) -#define CTX_LOCK_INIT(_sc) sx_init(&(_sc)->ifc_ctx_sx, "iflib ctx lock") -#define CTX_LOCK(ctx) sx_xlock(&(ctx)->ifc_ctx_sx) -#define CTX_UNLOCK(ctx) sx_xunlock(&(ctx)->ifc_ctx_sx) -#define CTX_LOCK_DESTROY(ctx) sx_destroy(&(ctx)->ifc_ctx_sx) +#define CTX_LOCK_INIT(_sc) sx_init(&(_sc)->ifc_ctx_sx, "iflib ctx lock") +#define CTX_LOCK(ctx) sx_xlock(&(ctx)->ifc_ctx_sx) +#define CTX_UNLOCK(ctx) sx_xunlock(&(ctx)->ifc_ctx_sx) +#define CTX_LOCK_DESTROY(ctx) sx_destroy(&(ctx)->ifc_ctx_sx) -#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) -#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) -#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) -#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) +#define STATE_LOCK_INIT(_sc, _name) mtx_init(&(_sc)->ifc_state_mtx, _name, "iflib state lock", MTX_DEF) +#define STATE_LOCK(ctx) mtx_lock(&(ctx)->ifc_state_mtx) +#define STATE_UNLOCK(ctx) mtx_unlock(&(ctx)->ifc_state_mtx) +#define STATE_LOCK_DESTROY(ctx) mtx_destroy(&(ctx)->ifc_state_mtx) #define CALLOUT_LOCK(txq) mtx_lock(&txq->ift_mtx) #define CALLOUT_UNLOCK(txq) mtx_unlock(&txq->ift_mtx) @@ -588,7 +588,7 @@ static SYSCTL_NODE(_net, OID_AUTO, iflib, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "iflib driver parameters"); /* - * XXX need to ensure that this can't accidentally cause the head to be moved backwards + * XXX need to ensure that this can't accidentally cause the head to be moved backwards */ static int iflib_min_tx_latency = 0; SYSCTL_INT(_net_iflib, OID_AUTO, min_tx_latency, CTLFLAG_RW, @@ -729,7 +729,7 @@ static void _iflib_pre_assert(if_softc_ctx_t scctx); static void iflib_if_init_locked(if_ctx_t ctx); static void iflib_free_intr_mem(if_ctx_t ctx); #ifndef __NO_STRICT_ALIGNMENT -static struct mbuf * iflib_fixup_rx(struct mbuf *m); +static struct mbuf *iflib_fixup_rx(struct mbuf *m); #endif static SLIST_HEAD(cpu_offset_list, cpu_offset) cpu_offsets = @@ -753,7 +753,7 @@ iflib_num_rx_descs(if_ctx_t ctx) if_shared_ctx_t sctx = ctx->ifc_sctx; uint16_t first_rxq = (sctx->isc_flags & IFLIB_HAS_RXCQ) ? 1 : 0; - return scctx->isc_nrxd[first_rxq]; + return (scctx->isc_nrxd[first_rxq]); } static int @@ -763,7 +763,7 @@ iflib_num_tx_descs(if_ctx_t ctx) if_shared_ctx_t sctx = ctx->ifc_sctx; uint16_t first_txq = (sctx->isc_flags & IFLIB_HAS_TXCQ) ? 1 : 0; - return scctx->isc_ntxd[first_txq]; + return (scctx->isc_ntxd[first_txq]); } #ifdef DEV_NETMAP @@ -859,7 +859,7 @@ iflib_netmap_config(struct netmap_adapter *na, struct nm_config_info *info) info->num_tx_rings, info->num_rx_rings, info->num_tx_descs, info->num_rx_descs, info->rx_buf_maxsize); - return 0; + return (0); } static int @@ -932,7 +932,7 @@ netmap_fl_refill(iflib_rxq_t rxq, struct netmap_kring *kring, bool init) MPASS(i < IFLIB_MAX_RX_REFRESH); if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ - return netmap_ring_reinit(kring); + return (netmap_ring_reinit(kring)); fl->ifl_rxd_idxs[i] = nic_i; @@ -1272,7 +1272,7 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int flags) if (n) { /* update the state variables */ if (netmap_no_pendintr && !force_update) { /* diagnostics */ - iflib_rx_miss ++; + iflib_rx_miss++; iflib_rx_miss_bufs += n; } kring->nr_hwtail = nm_i; @@ -1409,7 +1409,7 @@ prefetch2cachelines(void *x) { __asm volatile("prefetcht0 %0" :: "m" (*(unsigned long *)x)); #if (CACHE_LINE_SIZE < 128) - __asm volatile("prefetcht0 %0" :: "m" (*(((unsigned long *)x)+CACHE_LINE_SIZE/(sizeof(unsigned long))))); + __asm volatile("prefetcht0 %0" :: "m" (*(((unsigned long *)x) + CACHE_LINE_SIZE / (sizeof(unsigned long))))); #endif } #else @@ -1463,7 +1463,7 @@ iflib_dma_alloc_align(if_ctx_t ctx, int size, int align, iflib_dma_info_t dma, i goto fail_0; } - err = bus_dmamem_alloc(dma->idi_tag, (void**) &dma->idi_vaddr, + err = bus_dmamem_alloc(dma->idi_tag, (void **)&dma->idi_vaddr, BUS_DMA_NOWAIT | BUS_DMA_COHERENT | BUS_DMA_ZERO, &dma->idi_map); if (err) { device_printf(dev, @@ -1729,8 +1729,8 @@ iflib_txsd_alloc(iflib_txq_t txq) NULL, /* lockfunc */ NULL, /* lockfuncarg */ &txq->ift_buf_tag))) { - device_printf(dev,"Unable to allocate TX DMA tag: %d\n", err); - device_printf(dev,"maxsize: %ju nsegments: %d maxsegsize: %ju\n", + device_printf(dev, "Unable to allocate TX DMA tag: %d\n", err); + device_printf(dev, "maxsize: %ju nsegments: %d maxsegsize: %ju\n", (uintmax_t)sctx->isc_tx_maxsize, nsegments, (uintmax_t)sctx->isc_tx_maxsegsize); goto fail; } @@ -1939,7 +1939,7 @@ iflib_rxsd_alloc(iflib_rxq_t rxq) if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; device_t dev = ctx->ifc_dev; iflib_fl_t fl; - int err; + int err; MPASS(scctx->isc_nrxd[0] > 0); MPASS(scctx->isc_nrxd[rxq->ifr_fl_offset] > 0); @@ -2287,8 +2287,8 @@ iflib_fl_setup(iflib_fl_t fl) bit_nclear(fl->ifl_rx_bitmap, 0, fl->ifl_size - 1); /* - ** Free current RX buffer structs and their mbufs - */ + * Free current RX buffer structs and their mbufs + */ iflib_fl_bufs_free(fl); /* Now replenish the mbufs */ MPASS(fl->ifl_credits == 0); @@ -2418,7 +2418,7 @@ iflib_timer(void *arg) GROUPTASK_ENQUEUE(&txq->ift_task); sctx->isc_pause_frames = 0; - if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) + if (if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING) callout_reset_on(&txq->ift_timer, iflib_timer_default, iflib_timer, txq, txq->ift_timer.c_cpu); return; @@ -2429,7 +2429,7 @@ iflib_timer(void *arg) txq->ift_id, TXQ_AVAIL(txq), txq->ift_pidx); STATE_LOCK(ctx); if_setdrvflagbits(ctx->ifc_ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); - ctx->ifc_flags |= (IFC_DO_WATCHDOG|IFC_DO_RESET); + ctx->ifc_flags |= (IFC_DO_WATCHDOG | IFC_DO_RESET); iflib_admin_intr_deferred(ctx); STATE_UNLOCK(ctx); } @@ -2648,8 +2648,8 @@ calc_next_rxd(iflib_fl_t fl, int cidx) if (__predict_false(size == 0)) return (start); - cur = start + size*cidx; - end = start + size*nrxd; + cur = start + size * cidx; + end = start + size * nrxd; next = CACHE_PTR_NEXT(cur); return (next < end ? next : start); } @@ -2661,19 +2661,19 @@ prefetch_pkts(iflib_fl_t fl, int cidx) int nrxd = fl->ifl_size; caddr_t next_rxd; - nextptr = (cidx + CACHE_PTR_INCREMENT) & (nrxd-1); + nextptr = (cidx + CACHE_PTR_INCREMENT) & (nrxd - 1); prefetch(&fl->ifl_sds.ifsd_m[nextptr]); prefetch(&fl->ifl_sds.ifsd_cl[nextptr]); next_rxd = calc_next_rxd(fl, cidx); prefetch(next_rxd); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 1) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 2) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 3) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_m[(cidx + 4) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 1) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 2) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 3) & (nrxd-1)]); - prefetch(fl->ifl_sds.ifsd_cl[(cidx + 4) & (nrxd-1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 1) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 2) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 3) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_m[(cidx + 4) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 1) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 2) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 3) & (nrxd - 1)]); + prefetch(fl->ifl_sds.ifsd_cl[(cidx + 4) & (nrxd - 1)]); } static struct mbuf * @@ -2699,7 +2699,7 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, bool unload, if_rxsd_t sd, #endif if (rxq->ifr_ctx->ifc_flags & IFC_PREFETCH) prefetch_pkts(fl, cidx); - next = (cidx + CACHE_PTR_INCREMENT) & (fl->ifl_size-1); + next = (cidx + CACHE_PTR_INCREMENT) & (fl->ifl_size - 1); prefetch(&fl->ifl_sds.ifsd_map[next]); map = fl->ifl_sds.ifsd_map[cidx]; @@ -2746,7 +2746,7 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, bool unload, if_rxsd_t sd, if (unload && irf->irf_len != 0) bus_dmamap_unload(fl->ifl_buf_tag, map); - fl->ifl_cidx = (fl->ifl_cidx + 1) & (fl->ifl_size-1); + fl->ifl_cidx = (fl->ifl_cidx + 1) & (fl->ifl_size - 1); if (__predict_false(fl->ifl_cidx == 0)) fl->ifl_gen = 0; bit_clear(fl->ifl_rx_bitmap, cidx); @@ -2790,7 +2790,7 @@ assemble_segments(iflib_rxq_t rxq, if_rxd_info_t ri, if_rxsd_t sd, int *pf_rv) continue; } if (mh == NULL) { - flags = M_PKTHDR|M_EXT; + flags = M_PKTHDR | M_EXT; mh = mt = m; padlen = ri->iri_pad; } else { @@ -2889,16 +2889,16 @@ iflib_check_lro_possible(struct mbuf *m, bool v4_forwarding, bool v6_forwarding) eh = mtod(m, struct ether_header *); switch (eh->ether_type) { #if defined(INET6) - case htons(ETHERTYPE_IPV6): - return (!v6_forwarding); + case htons(ETHERTYPE_IPV6): + return (!v6_forwarding); #endif -#if defined (INET) - case htons(ETHERTYPE_IP): - return (!v4_forwarding); +#if defined(INET) + case htons(ETHERTYPE_IP): + return (!v4_forwarding); #endif } - return false; + return (false); } #else static void @@ -3034,8 +3034,8 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) mt = mf = NULL; } } - if ((m->m_pkthdr.csum_flags & (CSUM_L4_CALC|CSUM_L4_VALID)) == - (CSUM_L4_CALC|CSUM_L4_VALID)) { + if ((m->m_pkthdr.csum_flags & (CSUM_L4_CALC | CSUM_L4_VALID)) == + (CSUM_L4_CALC | CSUM_L4_VALID)) { if (lro_possible && tcp_lro_rx(&rxq->ifr_lc, m, 0) == 0) continue; } @@ -3078,15 +3078,15 @@ err: return (0); } -#define TXD_NOTIFY_COUNT(txq) (((txq)->ift_size / (txq)->ift_update_freq)-1) +#define TXD_NOTIFY_COUNT(txq) (((txq)->ift_size / (txq)->ift_update_freq) - 1) static inline qidx_t txq_max_db_deferred(iflib_txq_t txq, qidx_t in_use) { qidx_t notify_count = TXD_NOTIFY_COUNT(txq); qidx_t minthresh = txq->ift_size / 8; - if (in_use > 4*minthresh) + if (in_use > 4 * minthresh) return (notify_count); - if (in_use > 2*minthresh) + if (in_use > 2 * minthresh) return (notify_count >> 1); if (in_use > minthresh) return (notify_count >> 3); @@ -3098,21 +3098,21 @@ txq_max_rs_deferred(iflib_txq_t txq) { qidx_t notify_count = TXD_NOTIFY_COUNT(txq); qidx_t minthresh = txq->ift_size / 8; - if (txq->ift_in_use > 4*minthresh) + if (txq->ift_in_use > 4 * minthresh) return (notify_count); - if (txq->ift_in_use > 2*minthresh) + if (txq->ift_in_use > 2 * minthresh) return (notify_count >> 1); if (txq->ift_in_use > minthresh) return (notify_count >> 2); return (2); } -#define M_CSUM_FLAGS(m) ((m)->m_pkthdr.csum_flags) -#define M_HAS_VLANTAG(m) (m->m_flags & M_VLANTAG) +#define M_CSUM_FLAGS(m) ((m)->m_pkthdr.csum_flags) +#define M_HAS_VLANTAG(m) (m->m_flags & M_VLANTAG) -#define TXQ_MAX_DB_DEFERRED(txq, in_use) txq_max_db_deferred((txq), (in_use)) -#define TXQ_MAX_RS_DEFERRED(txq) txq_max_rs_deferred(txq) -#define TXQ_MAX_DB_CONSUMED(size) (size >> 4) +#define TXQ_MAX_DB_DEFERRED(txq, in_use) txq_max_db_deferred((txq), (in_use)) +#define TXQ_MAX_RS_DEFERRED(txq) txq_max_rs_deferred(txq) +#define TXQ_MAX_DB_CONSUMED(size) (size >> 4) /* forward compatibility for cxgb */ #define FIRST_QSET(ctx) 0 @@ -3417,7 +3417,7 @@ iflib_parse_header(iflib_txq_t txq, if_pkt_info_t pi, struct mbuf **mp) } } if ((sctx->isc_flags & IFLIB_NEED_ZERO_CSUM) && (pi->ipi_csum_flags & CSUM_IP)) - ip->ip_sum = 0; + ip->ip_sum = 0; break; } @@ -3517,8 +3517,8 @@ calc_next_txd(iflib_txq_t txq, int cidx, uint8_t qid) if (__predict_false(size == 0)) return (start); - cur = start + size*cidx; - end = start + size*ntxd; + cur = start + size * cidx; + end = start + size * ntxd; next = CACHE_PTR_NEXT(cur); return (next < end ? next : start); } @@ -3545,7 +3545,7 @@ iflib_ether_pad(device_t dev, struct mbuf **m_head, uint16_t min_frame_size) device_printf(dev, "cannot pad short frame, m_dup() failed"); DBG_COUNTER_INC(encap_pad_mbuf_fail); DBG_COUNTER_INC(tx_frees); - return ENOMEM; + return (ENOMEM); } m_freem(*m_head); *m_head = new_head; @@ -3564,7 +3564,7 @@ iflib_ether_pad(device_t dev, struct mbuf **m_head, uint16_t min_frame_size) return (ENOBUFS); } - return 0; + return (0); } static int @@ -3596,7 +3596,7 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) cidx = txq->ift_cidx; pidx = txq->ift_pidx; if (ctx->ifc_flags & IFC_PREFETCH) { - next = (cidx + CACHE_PTR_INCREMENT) & (ntxd-1); + next = (cidx + CACHE_PTR_INCREMENT) & (ntxd - 1); if (!(ctx->ifc_flags & IFLIB_HAS_TXCQ)) { next_txd = calc_next_txd(txq, cidx, 0); prefetch(next_txd); @@ -3605,7 +3605,7 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) /* prefetch the next cache line of mbuf pointers and flags */ prefetch(&txq->ift_sds.ifsd_m[next]); prefetch(&txq->ift_sds.ifsd_map[next]); - next = (cidx + CACHE_LINE_SIZE) & (ntxd-1); + next = (cidx + CACHE_LINE_SIZE) & (ntxd - 1); } map = txq->ift_sds.ifsd_map[pidx]; ifsd_m = txq->ift_sds.ifsd_m; @@ -3626,13 +3626,13 @@ iflib_encap(iflib_txq_t txq, struct mbuf **m_headp) err = iflib_ether_pad(ctx->ifc_dev, m_headp, scctx->isc_min_frame_size); if (err) { DBG_COUNTER_INC(encap_txd_encap_fail); - return err; + return (err); } } m_head = *m_headp; pkt_info_zero(&pi); - pi.ipi_mflags = (m_head->m_flags & (M_VLANTAG|M_BCAST|M_MCAST)); + pi.ipi_mflags = (m_head->m_flags & (M_VLANTAG | M_BCAST | M_MCAST)); pi.ipi_pidx = pidx; pi.ipi_qsidx = txq->ift_id; pi.ipi_len = m_head->m_pkthdr.len; @@ -3738,7 +3738,7 @@ defrag: txq->ift_gen = 1; } /* - * drivers can need as many as + * drivers can need as many as * two sentinels */ MPASS(ndesc <= pi.ipi_nsegs + 2); @@ -3790,7 +3790,7 @@ iflib_tx_desc_free(iflib_txq_t txq, int n) cidx = txq->ift_cidx; gen = txq->ift_gen; qsize = txq->ift_size; - mask = qsize-1; + mask = qsize - 1; ifsd_m = txq->ift_sds.ifsd_m; do_prefetch = (txq->ift_ctx->ifc_flags & IFC_PREFETCH); @@ -3871,17 +3871,17 @@ _ring_peek_one(struct ifmp_ring *r, int cidx, int offset, int remaining) struct mbuf **items; size = r->size; - next = (cidx + CACHE_PTR_INCREMENT) & (size-1); + next = (cidx + CACHE_PTR_INCREMENT) & (size - 1); items = __DEVOLATILE(struct mbuf **, &r->items[0]); - prefetch(items[(cidx + offset) & (size-1)]); + prefetch(items[(cidx + offset) & (size - 1)]); if (remaining > 1) { prefetch2cachelines(&items[next]); - prefetch2cachelines(items[(cidx + offset + 1) & (size-1)]); - prefetch2cachelines(items[(cidx + offset + 2) & (size-1)]); - prefetch2cachelines(items[(cidx + offset + 3) & (size-1)]); + prefetch2cachelines(items[(cidx + offset + 1) & (size - 1)]); + prefetch2cachelines(items[(cidx + offset + 2) & (size - 1)]); + prefetch2cachelines(items[(cidx + offset + 3) & (size - 1)]); } - return (__DEVOLATILE(struct mbuf **, &r->items[(cidx + offset) & (size-1)])); + return (__DEVOLATILE(struct mbuf **, &r->items[(cidx + offset) & (size - 1)])); } static void @@ -3931,9 +3931,9 @@ iflib_txq_drain(struct ifmp_ring *r, uint32_t cidx, uint32_t pidx) */ DBG_COUNTER_INC(txq_drain_flushing); for (i = 0; i < avail; i++) { - if (__predict_true(r->items[(cidx + i) & (r->size-1)] != (void *)txq)) - m_freem(r->items[(cidx + i) & (r->size-1)]); - r->items[(cidx + i) & (r->size-1)] = NULL; + if (__predict_true(r->items[(cidx + i) & (r->size - 1)] != (void *)txq)) + m_freem(r->items[(cidx + i) & (r->size - 1)]); + r->items[(cidx + i) & (r->size - 1)] = NULL; } return (avail); } @@ -4163,7 +4163,7 @@ _task_fn_admin(void *context) do_reset = (ctx->ifc_flags & IFC_DO_RESET); do_watchdog = (ctx->ifc_flags & IFC_DO_WATCHDOG); in_detach = (ctx->ifc_flags & IFC_IN_DETACH); - ctx->ifc_flags &= ~(IFC_DO_RESET|IFC_DO_WATCHDOG); + ctx->ifc_flags &= ~(IFC_DO_RESET | IFC_DO_WATCHDOG); STATE_UNLOCK(ctx); if ((!running && !oactive) && !(ctx->ifc_sctx->isc_flags & IFLIB_ADMIN_ALWAYS_RUN)) @@ -4317,7 +4317,7 @@ iflib_if_transmit(if_t ifp, struct mbuf *m) } while (next != NULL); if (count > nitems(marr)) - if ((mp = malloc(count*sizeof(struct mbuf *), M_IFLIB, M_NOWAIT)) == NULL) { + if ((mp = malloc(count * sizeof(struct mbuf *), M_IFLIB, M_NOWAIT)) == NULL) { /* XXX check nextpkt */ m_freem(m); /* XXX simplify for now */ @@ -4456,11 +4456,11 @@ iflib_if_ioctl(if_t ifp, u_long command, caddr_t data) avoid_reset = true; #endif /* - ** Calling init results in link renegotiation, - ** so we avoid doing it when possible. - */ + * Calling init results in link renegotiation, + * so we avoid doing it when possible. + */ if (avoid_reset) { - if_setflagbits(ifp, IFF_UP,0); + if_setflagbits(ifp, IFF_UP, 0); if (!(if_getdrvflags(ifp) & IFF_DRV_RUNNING)) reinit = 1; #ifdef INET @@ -4562,7 +4562,7 @@ iflib_if_ioctl(if_t ifp, u_long command, caddr_t data) mask &= ctx->ifc_softc_ctx.isc_capabilities | IFCAP_MEXTPG; setmask = 0; #ifdef TCP_OFFLOAD - setmask |= mask & (IFCAP_TOE4|IFCAP_TOE6); + setmask |= mask & (IFCAP_TOE4 | IFCAP_TOE6); #endif setmask |= (mask & IFCAP_FLAGS); setmask |= (mask & IFCAP_WOL); @@ -4887,15 +4887,15 @@ find_child_with_core(int cpu, struct cpu_group *grp) int i; if (grp->cg_children == 0) - return -1; + return (-1); MPASS(grp->cg_child); for (i = 0; i < grp->cg_children; i++) { if (CPU_ISSET(cpu, &grp->cg_child[i].cg_mask)) - return i; + return (i); } - return -1; + return (-1); } @@ -4912,7 +4912,7 @@ find_l2_neighbor(int cpu) grp = cpu_top; if (grp == NULL) - return -1; + return (-1); /* * Find the smallest CPU group that contains the given core. @@ -4931,7 +4931,7 @@ find_l2_neighbor(int cpu) /* Must share L2. */ if (grp->cg_level > CG_SHARE_L2 || grp->cg_level == CG_SHARE_NONE) - return -1; + return (-1); /* * Select the first member of the set that isn't the reference @@ -5172,10 +5172,10 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct int err, msix, rid; int num_txd, num_rxd; - ctx = malloc(sizeof(* ctx), M_IFLIB, M_WAITOK|M_ZERO); + ctx = malloc(sizeof(*ctx), M_IFLIB, M_WAITOK | M_ZERO); if (sc == NULL) { - sc = malloc(sctx->isc_driver->size, M_IFLIB, M_WAITOK|M_ZERO); + sc = malloc(sctx->isc_driver->size, M_IFLIB, M_WAITOK | M_ZERO); device_set_softc(dev, ctx); ctx->ifc_flags |= IFC_SC_ALLOCATED; } @@ -5257,7 +5257,7 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct } if (scctx->isc_rss_table_size == 0) scctx->isc_rss_table_size = 64; - scctx->isc_rss_table_mask = scctx->isc_rss_table_size-1; + scctx->isc_rss_table_mask = scctx->isc_rss_table_size - 1; GROUPTASK_INIT(&ctx->ifc_admin_task, 0, _task_fn_admin, ctx); /* XXX format name */ @@ -5274,16 +5274,16 @@ iflib_device_register(device_t dev, void *sc, if_shared_ctx_t sctx, if_ctx_t *ct MPASS(CPU_COUNT(&ctx->ifc_cpus) > 0); /* - ** Now set up MSI or MSI-X, should return us the number of supported - ** vectors (will be 1 for a legacy interrupt and MSI). - */ + * Now set up MSI or MSI-X, should return us the number of supported + * vectors (will be 1 for a legacy interrupt and MSI). + */ if (sctx->isc_flags & IFLIB_SKIP_MSIX) { msix = scctx->isc_vectors; } else if (scctx->isc_msix_bar != 0) - /* - * The simple fact that isc_msix_bar is not 0 does not mean we - * we have a good value there that is known to work. - */ + /* + * The simple fact that isc_msix_bar is not 0 does not mean we + * we have a good value there that is known to work. + */ msix = iflib_msix_init(ctx); else { scctx->isc_vectors = 1; @@ -5786,7 +5786,7 @@ iflib_device_suspend(device_t dev) IFDI_SUSPEND(ctx); CTX_UNLOCK(ctx); - return bus_generic_suspend(dev); + return (bus_generic_suspend(dev)); } int iflib_device_shutdown(device_t dev) @@ -5797,7 +5797,7 @@ iflib_device_shutdown(device_t dev) IFDI_SHUTDOWN(ctx); CTX_UNLOCK(ctx); - return bus_generic_suspend(dev); + return (bus_generic_suspend(dev)); } int @@ -6205,20 +6205,20 @@ iflib_queues_alloc(if_ctx_t ctx) goto err_rx_desc; } - for (j = 0, fl = rxq->ifr_fl; j < rxq->ifr_nfl; j++, fl++) + for (j = 0, fl = rxq->ifr_fl; j < rxq->ifr_nfl; j++, fl++) fl->ifl_rx_bitmap = bit_alloc(fl->ifl_size, M_IFLIB, M_WAITOK); } /* TXQs */ - vaddrs = malloc(sizeof(caddr_t)*ntxqsets*ntxqs, M_IFLIB, M_WAITOK); - paddrs = malloc(sizeof(uint64_t)*ntxqsets*ntxqs, M_IFLIB, M_WAITOK); + vaddrs = malloc(sizeof(caddr_t) * ntxqsets * ntxqs, M_IFLIB, M_WAITOK); + paddrs = malloc(sizeof(uint64_t) * ntxqsets * ntxqs, M_IFLIB, M_WAITOK); for (i = 0; i < ntxqsets; i++) { iflib_dma_info_t di = ctx->ifc_txqs[i].ift_ifdi; for (j = 0; j < ntxqs; j++, di++) { - vaddrs[i*ntxqs + j] = di->idi_vaddr; - paddrs[i*ntxqs + j] = di->idi_paddr; + vaddrs[i * ntxqs + j] = di->idi_vaddr; + paddrs[i * ntxqs + j] = di->idi_paddr; } } if ((err = IFDI_TX_QUEUES_ALLOC(ctx, vaddrs, paddrs, ntxqs, ntxqsets)) != 0) { @@ -6233,14 +6233,14 @@ iflib_queues_alloc(if_ctx_t ctx) free(paddrs, M_IFLIB); /* RXQs */ - vaddrs = malloc(sizeof(caddr_t)*nrxqsets*nrxqs, M_IFLIB, M_WAITOK); - paddrs = malloc(sizeof(uint64_t)*nrxqsets*nrxqs, M_IFLIB, M_WAITOK); + vaddrs = malloc(sizeof(caddr_t) * nrxqsets * nrxqs, M_IFLIB, M_WAITOK); + paddrs = malloc(sizeof(uint64_t) * nrxqsets * nrxqs, M_IFLIB, M_WAITOK); for (i = 0; i < nrxqsets; i++) { iflib_dma_info_t di = ctx->ifc_rxqs[i].ifr_ifdi; for (j = 0; j < nrxqs; j++, di++) { - vaddrs[i*nrxqs + j] = di->idi_vaddr; - paddrs[i*nrxqs + j] = di->idi_paddr; + vaddrs[i * nrxqs + j] = di->idi_vaddr; + paddrs[i * nrxqs + j] = di->idi_paddr; } } if ((err = IFDI_RX_QUEUES_ALLOC(ctx, vaddrs, paddrs, nrxqs, nrxqsets)) != 0) { @@ -6745,7 +6745,7 @@ void iflib_config_gtask_deinit(struct grouptask *gtask) { - taskqgroup_detach(qgroup_if_config_tqg, gtask); + taskqgroup_detach(qgroup_if_config_tqg, gtask); } void @@ -6970,11 +6970,11 @@ msi: scctx->isc_ntxqsets = 1; scctx->isc_vectors = vectors; if (vectors == 1 && pci_alloc_msi(dev, &vectors) == 0) { - device_printf(dev,"Using an MSI interrupt\n"); + device_printf(dev, "Using an MSI interrupt\n"); scctx->isc_intr = IFLIB_INTR_MSI; } else { scctx->isc_vectors = 1; - device_printf(dev,"Using a Legacy interrupt\n"); + device_printf(dev, "Using a Legacy interrupt\n"); scctx->isc_intr = IFLIB_INTR_LEGACY; } @@ -7007,7 +7007,7 @@ mp_ring_state_handler(SYSCTL_HANDLER_ARGS) state[0], state[1], state[2], ring_state); rc = sbuf_finish(sb); sbuf_delete(sb); - return(rc); + return (rc); } enum iflib_ndesc_handler { @@ -7026,7 +7026,7 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) int nqs, rc, i; nqs = 8; - switch(type) { + switch (type) { case IFLIB_NTXD_HANDLER: ndesc = ctx->ifc_sysctl_ntxds; if (ctx->ifc_sctx) @@ -7044,7 +7044,7 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) if (nqs == 0) nqs = 8; - for (i=0; i<8; i++) { + for (i = 0; i < 8; i++) { if (i >= nqs) break; if (i) @@ -7054,14 +7054,14 @@ mp_ndesc_handler(SYSCTL_HANDLER_ARGS) rc = sysctl_handle_string(oidp, buf, sizeof(buf), req); if (rc || req->newptr == NULL) - return rc; + return (rc); for (i = 0, next = buf, p = strsep(&next, " ,"); i < 8 && p; i++, p = strsep(&next, " ,")) { ndesc[i] = strtoul(p, NULL, 10); } - return(rc); + return (rc); } #define NAME_BUFLEN 32 From nobody Thu Sep 26 14:47: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 4XDxK00zZxz5XNs2; Thu, 26 Sep 2024 14:47: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 4XDxK00TF6z4f5k; Thu, 26 Sep 2024 14:47:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727362052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MJhXwBfqVrmd+8ntgpeYgdAT7tbsp4jZbcqL4wAYdpc=; b=pSLg/ifa1YTPxxKUNJ5MMCdlZ19f00Ze2M3oK0zJqTs1Ydj/EYCo25gh8DCWSTI5Zow2n8 WvSpMPt1enOMEAWaf2s2F/xueoYrxyEoXBBB2nm4kNnOeXwglz8b1JfgNJhyQUp6do+LHN 1GBJ2a+x9/7ld3zi/N6RHGAdHQMqH0leIAzrAVwLBz8XpIb49KkUY+4amMLc1ghRhus7N9 9I9Ca9pFe6cwLtwNRKpnhkoVpIueySmbPuyHtvPQEHb12xyEfVxzqeSzuQi93ge09Ly2pB csNkKHlH5Oesx9km2zahXrlHbesagIKf4kkemAUDdrRr8Z2LS9wP0PTcucfkzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727362052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MJhXwBfqVrmd+8ntgpeYgdAT7tbsp4jZbcqL4wAYdpc=; b=cyr2vVWJ50RffKgNBqvat6yEUtym49UWn3dAB4xkQJfIRzBiES9iPYy/fDqTQp8T+5aJK9 0j+otB5LMXsdmSN3c0XrsDQSxysGUu5eV73hd0uTIFrAUfSTmeadN/YrGnpErVy+9XQybr uhCgHdRuHdq/W4azeTxYdgsys98U0CI8E269X9+a95MRx5Upp6lorc8l4LsgOTOTNpe+7Y 3Rjma2Mof4yUxWF9d/ihuq0JMHz5PXFGz6xAOedJjZ27EXSuneTbS7a4K+5OK/UB0KSHwp ZN9TTxwXaHu2crYUimrvhUoel7ZTQ90n/2jQLUth+gi9If506CVsTdqjaJ+TGQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727362052; a=rsa-sha256; cv=none; b=gM0jPKspOzX2+JqrcI4fJi52Yjt7lXMHAVTMBB+VZN9Hz2A1SVNDj+PKOaFVp57U6kW80R 4coGRxpkmorV5nWR1OgE0P2ORC+J05Xu2j1SrxMVyoJ/728GxNJ79AKyBWHXuHELS2kItl bhkoRPOJelSnuzob4IChgL+S88rRHh7Pd12SRUgsvyZAK7gZtqC6Rn5iAzMvZy0XYeQrm7 hMckUU9rM9ihGkwAe31iLVpzuxs3zz2jBUpFoiMALuyCRmo5eD7Gija0P0TwVMf484Jykc omON9jdvQGhc4tZeV5mZ0WFkAAA+OGcXpH+2Ora8of8tUJtiX4tIdb+hqBBkOg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XDxK0002sz119K; Thu, 26 Sep 2024 14:47: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 48QElVqc036936; Thu, 26 Sep 2024 14:47:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48QElVSq036933; Thu, 26 Sep 2024 14:47:31 GMT (envelope-from git) Date: Thu, 26 Sep 2024 14:47:31 GMT Message-Id: <202409261447.48QElVSq036933@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: ddbbc129ae0f - stable/14 - faccessat(2): Honor AT_SYMLINK_NOFOLLOW List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ddbbc129ae0fc35cef2834b308097ae1490176e3 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ddbbc129ae0fc35cef2834b308097ae1490176e3 commit ddbbc129ae0fc35cef2834b308097ae1490176e3 Author: Fernando Apesteguía AuthorDate: 2024-08-11 15:43:04 +0000 Commit: Ed Maste CommitDate: 2024-09-26 13:13:50 +0000 faccessat(2): Honor AT_SYMLINK_NOFOLLOW Make the system call honor `AT_SYMLINK_NOFOLLOW`. Also enable this from `linux_faccessat2` where the issue arised the first time. Update manual pages accordingly. PR: 275295 Reported by: kenrap@kennethraplee.com Approved by: kib@ Differential Revision: https://reviews.freebsd.org/D46267 (cherry picked from commit 5ab6ed93cd3680f8b69dd4d05823f4740a2bdef9) --- bin/ln/symlink.7 | 5 ++--- lib/libc/sys/access.2 | 8 +++++--- sys/compat/linux/linux_file.c | 6 ++++-- sys/kern/vfs_syscalls.c | 7 ++++--- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/bin/ln/symlink.7 b/bin/ln/symlink.7 index 5c5d0a64026c..28d9908f2053 100644 --- a/bin/ln/symlink.7 +++ b/bin/ln/symlink.7 @@ -26,9 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" @(#)symlink.7 8.3 (Berkeley) 3/31/94 -.\" -.Dd February 16, 2015 +.Dd August 11, 2024 .Dt SYMLINK 7 .Os .Sh NAME @@ -146,6 +144,7 @@ unless given the .Dv AT_SYMLINK_NOFOLLOW flag: .Xr chflagsat 2 , +.Xr faccessat 2 , .Xr fchmodat 2 , .Xr fchownat 2 , .Xr fstatat 2 diff --git a/lib/libc/sys/access.2 b/lib/libc/sys/access.2 index 8595444720b1..94a13dcc4dcf 100644 --- a/lib/libc/sys/access.2 +++ b/lib/libc/sys/access.2 @@ -25,9 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" @(#)access.2 8.2 (Berkeley) 4/1/94 -.\" -.Dd May 21, 2024 +.Dd August 11, 2024 .Dt ACCESS 2 .Os .Sh NAME @@ -156,6 +154,10 @@ If is equal to .Dv AT_FDCWD , operate on the current working directory. +.It Dv AT_SYMLINK_NOFOLLOW +If +.Fa path +names a symbolic link, access of the symbolic link is evaluated. .El .Pp Even if a process's real or effective user has appropriate privileges diff --git a/sys/compat/linux/linux_file.c b/sys/compat/linux/linux_file.c index 1279490ae8be..1341df8bc7fc 100644 --- a/sys/compat/linux/linux_file.c +++ b/sys/compat/linux/linux_file.c @@ -636,8 +636,8 @@ linux_faccessat2(struct thread *td, struct linux_faccessat2_args *args) { int flags, unsupported; - /* XXX. AT_SYMLINK_NOFOLLOW is not supported by kern_accessat */ - unsupported = args->flags & ~(LINUX_AT_EACCESS | LINUX_AT_EMPTY_PATH); + unsupported = args->flags & ~(LINUX_AT_EACCESS | LINUX_AT_EMPTY_PATH | + LINUX_AT_SYMLINK_NOFOLLOW); if (unsupported != 0) { linux_msg(td, "faccessat2 unsupported flag 0x%x", unsupported); return (EINVAL); @@ -647,6 +647,8 @@ linux_faccessat2(struct thread *td, struct linux_faccessat2_args *args) AT_EACCESS; flags |= (args->flags & LINUX_AT_EMPTY_PATH) == 0 ? 0 : AT_EMPTY_PATH; + flags |= (args->flags & LINUX_AT_SYMLINK_NOFOLLOW) == 0 ? 0 : + AT_SYMLINK_NOFOLLOW; return (linux_do_accessat(td, args->dfd, args->filename, args->amode, flags)); } diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 0915751785f4..fbb1e1cdda92 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -2153,7 +2153,8 @@ kern_accessat(struct thread *td, int fd, const char *path, struct nameidata nd; int error; - if ((flag & ~(AT_EACCESS | AT_RESOLVE_BENEATH | AT_EMPTY_PATH)) != 0) + if ((flag & ~(AT_EACCESS | AT_RESOLVE_BENEATH | AT_EMPTY_PATH | + AT_SYMLINK_NOFOLLOW)) != 0) return (EINVAL); if (amode != F_OK && (amode & ~(R_OK | W_OK | X_OK)) != 0) return (EINVAL); @@ -2173,8 +2174,8 @@ kern_accessat(struct thread *td, int fd, const char *path, } else usecred = cred; AUDIT_ARG_VALUE(amode); - NDINIT_ATRIGHTS(&nd, LOOKUP, FOLLOW | LOCKSHARED | LOCKLEAF | - AUDITVNODE1 | at2cnpflags(flag, AT_RESOLVE_BENEATH | + NDINIT_ATRIGHTS(&nd, LOOKUP, LOCKSHARED | LOCKLEAF | + AUDITVNODE1 | at2cnpflags(flag, AT_RESOLVE_BENEATH | AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH), pathseg, path, fd, &cap_fstat_rights); if ((error = namei(&nd)) != 0) goto out; From nobody Fri Sep 27 03:36: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 4XFGMw3crcz5XPxQ; Fri, 27 Sep 2024 03:36: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 4XFGMw3JHRz4nSd; Fri, 27 Sep 2024 03:36:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ByA/cbrOwigKbSYdDcRQ53mF1dxuGn8fi6xViKFSITk=; b=klD+26wxh0oXl/2TjHr711zzpb2+GldBKQeA+jSpEaUEKjAI+Yw9pdiexCrmKb7sDYdGBe 3Z7LPFKhUANFYzHBx/W0LmrsS5NJZjizeDWjQlGyGiz6pcwJh0LPxFh3jw1MhwcgpkIzQL W4RhP1pbAzz9IZ/BHohMg3Z2BRKdZyzWFMl+XEACVUL4d7vi5zZAD1NFPym+4qOliJ4/p+ NCbmNQ/1EJ3cL6UnsKwJddV1JLkzzf73VTlFumwDac3bwOxFLf9OTbPsA3JSXw5jpyP4EM jKijd0EGGrGxNJfwkCgtCgDYndmuEjEW8Qk/d5WceGOojPMyleKEarWCqnqQvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ByA/cbrOwigKbSYdDcRQ53mF1dxuGn8fi6xViKFSITk=; b=RZ3UZmOEgKrnbRhuS4mG/ygyOrshjL9419kZ9Xh/5UVEU8w1WmQnzCbFmQPynTd7OOgLro ptjGStoylk7jT2Yw7G7wJA9Ziur2WgI2SW3U8wgFg2y7Z8TxSElRVvkE7wpoAOcrM1OOtI bEXQ3FxeXF7z0Pbkow1EwuNyK4yNRSoWm4SQlyQuDAVEoNBc81xNb/SRcUkAvOEkYB1hlC Xpa/sQSgEHgt5567iHp153/DOcbgi87FYD8Zs85QGN7zaYEkFLwawUztEKWWQoVRk/O82w AVrwlA1DzeDmAxEeqT29xbhBwcdkcgfz3W0Leaj5raN68XQnXsrcm8iVU/Hl6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408172; a=rsa-sha256; cv=none; b=J9gtmmoaUAoo4FbJCccc6qvQ7Eifwx5MjTsurDt4ZdLttK9y+HV8+slRYWBHKd0ofOhc9l ilctkUteweBmsvtye4RcD20icaQMl6vAEavKRBw7gMZx50M4ha+d+pS0qf/Xg/x7ziQIgZ DZOAiyfy5fuXOOEmcD9Ny4M3cjAVMLIqLeht1mL7ezUybA3kpTUGwlUyqdyVijRaBib8DM X5+MoLTHyTTGg4Kohixd4vOJouez6DaxjnKQH68AAmMvkMJGSwJ7HzGvT3W9IWm786NGSp PUh9O3kw02ZflmkJbYrdBEnKRiCPcNlQ5Kyq1rCBagNPaHVxGPix+wZypz1LHg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGMw2v8czNx1; Fri, 27 Sep 2024 03:36: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 48R3aBgI038780; Fri, 27 Sep 2024 03:36:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aBPD038777; Fri, 27 Sep 2024 03:36:11 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:11 GMT Message-Id: <202409270336.48R3aBPD038777@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: 8abae0be0fce - stable/14 - ixgbe: introduce new mailbox API List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 8abae0be0fcec059dba0682def252995f38bc300 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=8abae0be0fcec059dba0682def252995f38bc300 commit 8abae0be0fcec059dba0682def252995f38bc300 Author: Jakub Chylkowski AuthorDate: 2024-09-20 02:30:39 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:32:06 +0000 ixgbe: introduce new mailbox API DPDK commit message Current mailbox API does not work as described in documentation and is prone to errors (for example, it is doing locks on read). Introduce new mailbox API and provide compatibility functions with old API. New error codes have been introduced: - IXGBE_ERR_CONFIG - ixgbe_mbx_operations is not correctly set - IXGBE_ERR_TIMEOUT - mailbox operation, e.g. poll for message, timedout - IXGBE_ERR_MBX_NOMSG - no message available on read In addition, some refactoring has been done: mailbox structures were defined twice: in ixgbe_type.h and ixgbe_vf.h. Move them into ixgbe_mbx.h as this header is dedicated for mailbox. Signed-off-by: Jakub Chylkowski Reviewed-by: Alice Michael Reviewed-by: Piotr Pietruszewski Tested-by: Alice Michael Tested-by: Piotr Skajewski Obtained from: DPDK (6d243d2) Reapply message This reverts commit d80c12ba682a6f23791f3d6e657f9e603b152aa2. (cherry picked from commit 7234c3099947d202702e98d844ecd2d649c834d2) --- sys/dev/ixgbe/if_ix.c | 8 +- sys/dev/ixgbe/ixgbe_82599.c | 4 +- sys/dev/ixgbe/ixgbe_mbx.c | 839 ++++++++++++++++++++++++++++++++------------ sys/dev/ixgbe/ixgbe_mbx.h | 59 +++- sys/dev/ixgbe/ixgbe_type.h | 32 +- sys/dev/ixgbe/ixgbe_vf.c | 42 ++- sys/dev/ixgbe/ixgbe_x540.c | 4 +- 7 files changed, 699 insertions(+), 289 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 17f1f73a526e..f2b41e19a15e 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -879,6 +879,7 @@ ixgbe_if_attach_pre(if_ctx_t ctx) struct ixgbe_hw *hw; int error = 0; u32 ctrl_ext; + size_t i; INIT_DEBUGOUT("ixgbe_attach: begin"); @@ -928,8 +929,11 @@ ixgbe_if_attach_pre(if_ctx_t ctx) goto err_pci; } - if (hw->mbx.ops.init_params) - hw->mbx.ops.init_params(hw); + /* 82598 Does not support SR-IOV, initialize everything else */ + if (hw->mac.type >= ixgbe_mac_82599_vf) { + for (i = 0; i < sc->num_vfs; i++) + hw->mbx.ops[i].init_params(hw); + } hw->allow_unsupported_sfp = allow_unsupported_sfp; diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index 8c3df0fd4f59..70b4cdc5c6ca 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -324,6 +324,7 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw) struct ixgbe_phy_info *phy = &hw->phy; struct ixgbe_eeprom_info *eeprom = &hw->eeprom; s32 ret_val; + u16 i; DEBUGFUNC("ixgbe_init_ops_82599"); @@ -385,7 +386,8 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw) mac->arc_subsystem_valid = !!(IXGBE_READ_REG(hw, IXGBE_FWSM_BY_MAC(hw)) & IXGBE_FWSM_MODE_MASK); - hw->mbx.ops.init_params = ixgbe_init_mbx_params_pf; + for (i = 0; i < 64; i++) + hw->mbx.ops[i].init_params = ixgbe_init_mbx_params_pf; /* EEPROM */ eeprom->ops.read = ixgbe_read_eeprom_82599; diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index c8f839fce85a..0a0c5abde157 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -35,6 +35,9 @@ #include "ixgbe_type.h" #include "ixgbe_mbx.h" +static s32 ixgbe_poll_for_msg(struct ixgbe_hw *hw, u16 mbx_id); +static s32 ixgbe_poll_for_ack(struct ixgbe_hw *hw, u16 mbx_id); + /** * ixgbe_read_mbx - Reads a message from the mailbox * @hw: pointer to the HW structure @@ -47,42 +50,91 @@ s32 ixgbe_read_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_read_mbx"); /* limit read to size of mailbox */ - if (size > mbx->size) + if (size > mbx->size) { + ERROR_REPORT3(IXGBE_ERROR_ARGUMENT, + "Invalid mailbox message size %u, changing to %u", + size, mbx->size); + size = mbx->size; + } + + if (mbx->ops[mbx_id].read) + return mbx->ops[mbx_id].read(hw, msg, size, mbx_id); + + return IXGBE_ERR_CONFIG; +} + +/** + * ixgbe_poll_mbx - Wait for message and read it from the mailbox + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to read + * + * returns SUCCESS if it successfully read message from buffer + **/ +s32 ixgbe_poll_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + s32 ret_val; + + DEBUGFUNC("ixgbe_poll_mbx"); + + if (!mbx->ops[mbx_id].read || !mbx->ops[mbx_id].check_for_msg || + !mbx->timeout) + return IXGBE_ERR_CONFIG; + + /* limit read to size of mailbox */ + if (size > mbx->size) { + ERROR_REPORT3(IXGBE_ERROR_ARGUMENT, + "Invalid mailbox message size %u, changing to %u", + size, mbx->size); size = mbx->size; + } - if (mbx->ops.read) - ret_val = mbx->ops.read(hw, msg, size, mbx_id); + ret_val = ixgbe_poll_for_msg(hw, mbx_id); + /* if ack received read message, otherwise we timed out */ + if (!ret_val) + return mbx->ops[mbx_id].read(hw, msg, size, mbx_id); return ret_val; } /** - * ixgbe_write_mbx - Write a message to the mailbox + * ixgbe_write_mbx - Write a message to the mailbox and wait for ACK * @hw: pointer to the HW structure * @msg: The message buffer * @size: Length of buffer * @mbx_id: id of mailbox to write * - * returns SUCCESS if it successfully copied message into the buffer + * returns SUCCESS if it successfully copied message into the buffer and + * received an ACK to that message within specified period **/ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_SUCCESS; + s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_write_mbx"); + /* + * exit if either we can't write, release + * or there is no timeout defined + */ + if (!mbx->ops[mbx_id].write || !mbx->ops[mbx_id].check_for_ack || + !mbx->ops[mbx_id].release || !mbx->timeout) + return IXGBE_ERR_CONFIG; + if (size > mbx->size) { - ret_val = IXGBE_ERR_MBX; + ret_val = IXGBE_ERR_PARAM; ERROR_REPORT2(IXGBE_ERROR_ARGUMENT, - "Invalid mailbox message size %d", size); - } else if (mbx->ops.write) - ret_val = mbx->ops.write(hw, msg, size, mbx_id); + "Invalid mailbox message size %u", size); + } else { + ret_val = mbx->ops[mbx_id].write(hw, msg, size, mbx_id); + } return ret_val; } @@ -97,12 +149,12 @@ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_msg"); - if (mbx->ops.check_for_msg) - ret_val = mbx->ops.check_for_msg(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_msg) + ret_val = mbx->ops[mbx_id].check_for_msg(hw, mbx_id); return ret_val; } @@ -117,12 +169,12 @@ s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id) s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_ack"); - if (mbx->ops.check_for_ack) - ret_val = mbx->ops.check_for_ack(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_ack) + ret_val = mbx->ops[mbx_id].check_for_ack(hw, mbx_id); return ret_val; } @@ -137,12 +189,12 @@ s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id) s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_rst"); - if (mbx->ops.check_for_rst) - ret_val = mbx->ops.check_for_rst(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_rst) + ret_val = mbx->ops[mbx_id].check_for_rst(hw, mbx_id); return ret_val; } @@ -161,22 +213,23 @@ static s32 ixgbe_poll_for_msg(struct ixgbe_hw *hw, u16 mbx_id) DEBUGFUNC("ixgbe_poll_for_msg"); - if (!countdown || !mbx->ops.check_for_msg) - goto out; + if (!countdown || !mbx->ops[mbx_id].check_for_msg) + return IXGBE_ERR_CONFIG; - while (countdown && mbx->ops.check_for_msg(hw, mbx_id)) { + while (countdown && mbx->ops[mbx_id].check_for_msg(hw, mbx_id)) { countdown--; if (!countdown) break; usec_delay(mbx->usec_delay); } - if (countdown == 0) + if (countdown == 0) { ERROR_REPORT2(IXGBE_ERROR_POLLING, - "Polling for VF%d mailbox message timedout", mbx_id); + "Polling for VF%u mailbox message timedout", mbx_id); + return IXGBE_ERR_TIMEOUT; + } -out: - return countdown ? IXGBE_SUCCESS : IXGBE_ERR_MBX; + return IXGBE_SUCCESS; } /** @@ -193,115 +246,71 @@ static s32 ixgbe_poll_for_ack(struct ixgbe_hw *hw, u16 mbx_id) DEBUGFUNC("ixgbe_poll_for_ack"); - if (!countdown || !mbx->ops.check_for_ack) - goto out; + if (!countdown || !mbx->ops[mbx_id].check_for_ack) + return IXGBE_ERR_CONFIG; - while (countdown && mbx->ops.check_for_ack(hw, mbx_id)) { + while (countdown && mbx->ops[mbx_id].check_for_ack(hw, mbx_id)) { countdown--; if (!countdown) break; usec_delay(mbx->usec_delay); } - if (countdown == 0) + if (countdown == 0) { ERROR_REPORT2(IXGBE_ERROR_POLLING, - "Polling for VF%d mailbox ack timedout", mbx_id); + "Polling for VF%u mailbox ack timedout", mbx_id); + return IXGBE_ERR_TIMEOUT; + } -out: - return countdown ? IXGBE_SUCCESS : IXGBE_ERR_MBX; + return IXGBE_SUCCESS; } /** - * ixgbe_read_posted_mbx - Wait for message notification and receive message + * ixgbe_read_mailbox_vf - read VF's mailbox register * @hw: pointer to the HW structure - * @msg: The message buffer - * @size: Length of buffer - * @mbx_id: id of mailbox to write * - * returns SUCCESS if it successfully received a message notification and - * copied it into the receive buffer. + * This function is used to read the mailbox register dedicated for VF without + * losing the read to clear status bits. **/ -s32 ixgbe_read_posted_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static u32 ixgbe_read_mailbox_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; - - DEBUGFUNC("ixgbe_read_posted_mbx"); - - if (!mbx->ops.read) - goto out; + u32 vf_mailbox = IXGBE_READ_REG(hw, IXGBE_VFMAILBOX); - ret_val = ixgbe_poll_for_msg(hw, mbx_id); + vf_mailbox |= hw->mbx.vf_mailbox; + hw->mbx.vf_mailbox |= vf_mailbox % IXGBE_VFMAILBOX_R2C_BITS; - /* if ack received read message, otherwise we timed out */ - if (!ret_val) - ret_val = mbx->ops.read(hw, msg, size, mbx_id); -out: - return ret_val; + return vf_mailbox; } -/** - * ixgbe_write_posted_mbx - Write a message to the mailbox, wait for ack - * @hw: pointer to the HW structure - * @msg: The message buffer - * @size: Length of buffer - * @mbx_id: id of mailbox to write - * - * returns SUCCESS if it successfully copied message into the buffer and - * received an ack to that message within delay * timeout period - **/ -s32 ixgbe_write_posted_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static void ixgbe_clear_msg_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; - - DEBUGFUNC("ixgbe_write_posted_mbx"); - - /* exit if either we can't write or there isn't a defined timeout */ - if (!mbx->ops.write || !mbx->timeout) - goto out; - - /* send msg */ - ret_val = mbx->ops.write(hw, msg, size, mbx_id); + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - /* if msg sent wait until we receive an ack */ - if (!ret_val) - ret_val = ixgbe_poll_for_ack(hw, mbx_id); -out: - return ret_val; + if (vf_mailbox & IXGBE_VFMAILBOX_PFSTS) { + hw->mbx.stats.reqs++; + hw->mbx.vf_mailbox &= ~IXGBE_VFMAILBOX_PFSTS; + } } -/** - * ixgbe_init_mbx_ops_generic - Initialize MB function pointers - * @hw: pointer to the HW structure - * - * Setups up the mailbox read and write message function pointers - **/ -void ixgbe_init_mbx_ops_generic(struct ixgbe_hw *hw) +static void ixgbe_clear_ack_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - mbx->ops.read_posted = ixgbe_read_posted_mbx; - mbx->ops.write_posted = ixgbe_write_posted_mbx; + if (vf_mailbox & IXGBE_VFMAILBOX_PFACK) { + hw->mbx.stats.acks++; + hw->mbx.vf_mailbox &= ~IXGBE_VFMAILBOX_PFACK; + } } -/** - * ixgbe_read_v2p_mailbox - read v2p mailbox - * @hw: pointer to the HW structure - * - * This function is used to read the v2p mailbox without losing the read to - * clear status bits. - **/ -static u32 ixgbe_read_v2p_mailbox(struct ixgbe_hw *hw) +static void ixgbe_clear_rst_vf(struct ixgbe_hw *hw) { - u32 v2p_mailbox = IXGBE_READ_REG(hw, IXGBE_VFMAILBOX); - - v2p_mailbox |= hw->mbx.v2p_mailbox; - hw->mbx.v2p_mailbox |= v2p_mailbox & IXGBE_VFMAILBOX_R2C_BITS; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - return v2p_mailbox; + if (vf_mailbox & (IXGBE_VFMAILBOX_RSTI | IXGBE_VFMAILBOX_RSTD)) { + hw->mbx.stats.rsts++; + hw->mbx.vf_mailbox &= ~(IXGBE_VFMAILBOX_RSTI | + IXGBE_VFMAILBOX_RSTD); + } } /** @@ -314,15 +323,12 @@ static u32 ixgbe_read_v2p_mailbox(struct ixgbe_hw *hw) **/ static s32 ixgbe_check_for_bit_vf(struct ixgbe_hw *hw, u32 mask) { - u32 v2p_mailbox = ixgbe_read_v2p_mailbox(hw); - s32 ret_val = IXGBE_ERR_MBX; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - if (v2p_mailbox & mask) - ret_val = IXGBE_SUCCESS; + if (vf_mailbox & mask) + return IXGBE_SUCCESS; - hw->mbx.v2p_mailbox &= ~mask; - - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -334,17 +340,13 @@ static s32 ixgbe_check_for_bit_vf(struct ixgbe_hw *hw, u32 mask) **/ static s32 ixgbe_check_for_msg_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_msg_vf"); - if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFSTS)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.reqs++; - } + if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFSTS)) + return IXGBE_SUCCESS; - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -356,17 +358,16 @@ static s32 ixgbe_check_for_msg_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_check_for_ack_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_ack_vf"); if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFACK)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.acks++; + /* TODO: should this be autocleared? */ + ixgbe_clear_ack_vf(hw); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -378,18 +379,17 @@ static s32 ixgbe_check_for_ack_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_check_for_rst_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_rst_vf"); - if (!ixgbe_check_for_bit_vf(hw, (IXGBE_VFMAILBOX_RSTD | - IXGBE_VFMAILBOX_RSTI))) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.rsts++; + if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_RSTI | + IXGBE_VFMAILBOX_RSTD)) { + /* TODO: should this be autocleared? */ + ixgbe_clear_rst_vf(hw); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -400,20 +400,114 @@ static s32 ixgbe_check_for_rst_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_obtain_mbx_lock_vf(struct ixgbe_hw *hw) { + struct ixgbe_mbx_info *mbx = &hw->mbx; + int countdown = mbx->timeout; s32 ret_val = IXGBE_ERR_MBX; + u32 vf_mailbox; DEBUGFUNC("ixgbe_obtain_mbx_lock_vf"); - /* Take ownership of the buffer */ - IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_VFU); + if (!mbx->timeout) + return IXGBE_ERR_CONFIG; - /* reserve mailbox for vf use */ - if (ixgbe_read_v2p_mailbox(hw) & IXGBE_VFMAILBOX_VFU) - ret_val = IXGBE_SUCCESS; + while (countdown--) { + /* Reserve mailbox for VF use */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_VFU; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* Verify that VF is the owner of the lock */ + if (ixgbe_read_mailbox_vf(hw) & IXGBE_VFMAILBOX_VFU) { + ret_val = IXGBE_SUCCESS; + break; + } + + /* Wait a bit before trying again */ + usec_delay(mbx->usec_delay); + } + + if (ret_val != IXGBE_SUCCESS) { + ERROR_REPORT1(IXGBE_ERROR_INVALID_STATE, + "Failed to obtain mailbox lock"); + ret_val = IXGBE_ERR_TIMEOUT; + } return ret_val; } +/** + * ixgbe_release_mbx_lock_dummy - release mailbox lock + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to read + **/ +static void ixgbe_release_mbx_lock_dummy(struct ixgbe_hw *hw, u16 mbx_id) +{ + UNREFERENCED_2PARAMETER(hw, mbx_id); + + DEBUGFUNC("ixgbe_release_mbx_lock_dummy"); +} + +/** + * ixgbe_release_mbx_lock_vf - release mailbox lock + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to read + **/ +static void ixgbe_release_mbx_lock_vf(struct ixgbe_hw *hw, u16 mbx_id) +{ + u32 vf_mailbox; + + UNREFERENCED_1PARAMETER(mbx_id); + + DEBUGFUNC("ixgbe_release_mbx_lock_vf"); + + /* Return ownership of the buffer */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox &= ~IXGBE_VFMAILBOX_VFU; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); +} + +/** + * ixgbe_write_mbx_vf_legacy - Write a message to the mailbox + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to write + * + * returns SUCCESS if it successfully copied message into the buffer + **/ +static s32 ixgbe_write_mbx_vf_legacy(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) +{ + s32 ret_val; + u16 i; + + UNREFERENCED_1PARAMETER(mbx_id); + DEBUGFUNC("ixgbe_write_mbx_vf_legacy"); + + /* lock the mailbox to prevent pf/vf race condition */ + ret_val = ixgbe_obtain_mbx_lock_vf(hw); + if (ret_val) + return ret_val; + + /* flush msg and acks as we are overwriting the message buffer */ + ixgbe_check_for_msg_vf(hw, 0); + ixgbe_clear_msg_vf(hw); + ixgbe_check_for_ack_vf(hw, 0); + ixgbe_clear_ack_vf(hw); + + /* copy the caller specified message to the mailbox memory buffer */ + for (i = 0; i < size; i++) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_VFMBMEM, i, msg[i]); + + /* update stats */ + hw->mbx.stats.msgs_tx++; + + /* interrupt the PF to tell it a message has been sent */ + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_REQ); + + return IXGBE_SUCCESS; +} + /** * ixgbe_write_mbx_vf - Write a message to the mailbox * @hw: pointer to the HW structure @@ -426,6 +520,7 @@ static s32 ixgbe_obtain_mbx_lock_vf(struct ixgbe_hw *hw) static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { + u32 vf_mailbox; s32 ret_val; u16 i; @@ -436,11 +531,11 @@ static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* lock the mailbox to prevent pf/vf race condition */ ret_val = ixgbe_obtain_mbx_lock_vf(hw); if (ret_val) - goto out_no_write; + goto out; /* flush msg and acks as we are overwriting the message buffer */ - ixgbe_check_for_msg_vf(hw, 0); - ixgbe_check_for_ack_vf(hw, 0); + ixgbe_clear_msg_vf(hw); + ixgbe_clear_ack_vf(hw); /* copy the caller specified message to the mailbox memory buffer */ for (i = 0; i < size; i++) @@ -449,15 +544,22 @@ static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* update stats */ hw->mbx.stats.msgs_tx++; - /* Drop VFU and interrupt the PF to tell it a message has been sent */ - IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_REQ); + /* interrupt the PF to tell it a message has been sent */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_REQ; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* if msg sent wait until we receive an ack */ + ixgbe_poll_for_ack(hw, mbx_id); + +out: + hw->mbx.ops[mbx_id].release(hw, mbx_id); -out_no_write: return ret_val; } /** - * ixgbe_read_mbx_vf - Reads a message from the inbox intended for vf + * ixgbe_read_mbx_vf_legacy - Reads a message from the inbox intended for vf * @hw: pointer to the HW structure * @msg: The message buffer * @size: Length of buffer @@ -465,19 +567,19 @@ out_no_write: * * returns SUCCESS if it successfully read message from buffer **/ -static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static s32 ixgbe_read_mbx_vf_legacy(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) { - s32 ret_val = IXGBE_SUCCESS; + s32 ret_val; u16 i; - DEBUGFUNC("ixgbe_read_mbx_vf"); + DEBUGFUNC("ixgbe_read_mbx_vf_legacy"); UNREFERENCED_1PARAMETER(mbx_id); /* lock the mailbox to prevent pf/vf race condition */ ret_val = ixgbe_obtain_mbx_lock_vf(hw); if (ret_val) - goto out_no_read; + return ret_val; /* copy the message from the mailbox memory buffer */ for (i = 0; i < size; i++) @@ -489,34 +591,73 @@ static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* update stats */ hw->mbx.stats.msgs_rx++; -out_no_read: - return ret_val; + return IXGBE_SUCCESS; +} + +/** + * ixgbe_read_mbx_vf - Reads a message from the inbox intended for vf + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to read + * + * returns SUCCESS if it successfully read message from buffer + **/ +static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) +{ + u32 vf_mailbox; + s32 ret_val; + u16 i; + + DEBUGFUNC("ixgbe_read_mbx_vf"); + UNREFERENCED_1PARAMETER(mbx_id); + + /* check if there is a message from PF */ + ret_val = ixgbe_check_for_msg_vf(hw, 0); + if (ret_val != IXGBE_SUCCESS) + return IXGBE_ERR_MBX_NOMSG; + + ixgbe_clear_msg_vf(hw); + + /* copy the message from the mailbox memory buffer */ + for (i = 0; i < size; i++) + msg[i] = IXGBE_READ_REG_ARRAY(hw, IXGBE_VFMBMEM, i); + + /* Acknowledge receipt */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_ACK; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* update stats */ + hw->mbx.stats.msgs_rx++; + + return IXGBE_SUCCESS; } /** * ixgbe_init_mbx_params_vf - set initial values for vf mailbox * @hw: pointer to the HW structure * - * Initializes the hw->mbx struct to correct values for vf mailbox + * Initializes single set the hw->mbx struct to correct values for vf mailbox + * Set of legacy functions is being used here */ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) { struct ixgbe_mbx_info *mbx = &hw->mbx; - /* start mailbox as timed out and let the reset_hw call set the timeout - * value to begin communications */ - mbx->timeout = 0; + mbx->timeout = IXGBE_VF_MBX_INIT_TIMEOUT; mbx->usec_delay = IXGBE_VF_MBX_INIT_DELAY; mbx->size = IXGBE_VFMAILBOX_SIZE; - mbx->ops.read = ixgbe_read_mbx_vf; - mbx->ops.write = ixgbe_write_mbx_vf; - mbx->ops.read_posted = ixgbe_read_posted_mbx; - mbx->ops.write_posted = ixgbe_write_posted_mbx; - mbx->ops.check_for_msg = ixgbe_check_for_msg_vf; - mbx->ops.check_for_ack = ixgbe_check_for_ack_vf; - mbx->ops.check_for_rst = ixgbe_check_for_rst_vf; + /* VF has only one mailbox connection, no need for more IDs */ + mbx->ops[0].release = ixgbe_release_mbx_lock_dummy; + mbx->ops[0].read = ixgbe_read_mbx_vf_legacy; + mbx->ops[0].write = ixgbe_write_mbx_vf_legacy; + mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; + mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; + mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; @@ -525,54 +666,110 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) mbx->stats.rsts = 0; } +/** + * ixgbe_upgrade_mbx_params_vf - set initial values for vf mailbox + * @hw: pointer to the HW structure + * + * Initializes the hw->mbx struct to correct values for vf mailbox + */ +void ixgbe_upgrade_mbx_params_vf(struct ixgbe_hw *hw) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + + mbx->timeout = IXGBE_VF_MBX_INIT_TIMEOUT; + mbx->usec_delay = IXGBE_VF_MBX_INIT_DELAY; + + mbx->size = IXGBE_VFMAILBOX_SIZE; + + /* VF has only one mailbox connection, no need for more IDs */ + mbx->ops[0].release = ixgbe_release_mbx_lock_vf; + mbx->ops[0].read = ixgbe_read_mbx_vf; + mbx->ops[0].write = ixgbe_write_mbx_vf; + mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; + mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; + mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; + mbx->ops[0].clear = NULL; + + mbx->stats.msgs_tx = 0; + mbx->stats.msgs_rx = 0; + mbx->stats.reqs = 0; + mbx->stats.acks = 0; + mbx->stats.rsts = 0; +} + +static void ixgbe_clear_msg_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); + u32 pfmbicr; + + pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); + + if (pfmbicr & (IXGBE_PFMBICR_VFREQ_VF1 << vf_shift)) + hw->mbx.stats.reqs++; + + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), + IXGBE_PFMBICR_VFREQ_VF1 << vf_shift); +} + +static void ixgbe_clear_ack_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); + u32 pfmbicr; + + pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); + + if (pfmbicr & (IXGBE_PFMBICR_VFACK_VF1 << vf_shift)) + hw->mbx.stats.acks++; + + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), + IXGBE_PFMBICR_VFACK_VF1 << vf_shift); +} + static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) { u32 pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); - s32 ret_val = IXGBE_ERR_MBX; if (pfmbicr & mask) { - ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), mask); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** * ixgbe_check_for_msg_pf - checks to see if the VF has sent mail * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); - s32 index = IXGBE_PFMBICR_INDEX(vf_number); - s32 ret_val = IXGBE_ERR_MBX; + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); DEBUGFUNC("ixgbe_check_for_msg_pf"); if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFREQ_VF1 << vf_shift, - index)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.reqs++; - } + index)) + return IXGBE_SUCCESS; - return ret_val; + return IXGBE_ERR_MBX; } /** * ixgbe_check_for_ack_pf - checks to see if the VF has ACKed * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); - s32 index = IXGBE_PFMBICR_INDEX(vf_number); + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_check_for_ack_pf"); @@ -580,7 +777,8 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFACK_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; - hw->mbx.stats.acks++; + /* TODO: should this be autocleared? */ + ixgbe_clear_ack_pf(hw, vf_id); } return ret_val; @@ -589,14 +787,14 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) /** * ixgbe_check_for_rst_pf - checks to see if the VF has reset * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_number); - u32 index = IXGBE_PFVFLRE_INDEX(vf_number); + u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_id); + u32 index = IXGBE_PFVFLRE_INDEX(vf_id); s32 ret_val = IXGBE_ERR_MBX; u32 vflre = 0; @@ -628,121 +826,268 @@ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) /** * ixgbe_obtain_mbx_lock_pf - obtain mailbox lock * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * return SUCCESS if we obtained the mailbox lock **/ -static s32 ixgbe_obtain_mbx_lock_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_obtain_mbx_lock_pf(struct ixgbe_hw *hw, u16 vf_id) { + struct ixgbe_mbx_info *mbx = &hw->mbx; *** 667 LINES SKIPPED *** From nobody Fri Sep 27 03:36: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 4XFGMx32KRz5XQLY; Fri, 27 Sep 2024 03:36: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 4XFGMx1dRRz4nDC; Fri, 27 Sep 2024 03:36:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c5nX3tvJZSkfzk6B+izK1fzjYG+khnreJHSnk1TI29s=; b=RMyyBKMbVafNZkzF+PrgAxq1QMFg+5Jeguxzjfx6mX8HgRwXlPZKnZtBjhxeCnyW1V1dnG MJ2/hZ9P9F+SGKHQP52Xd8esZ5xphUxiMv5MU84x60Gp3Eo/EFu1873psCBAn8W8FnkjMz zBBxW5CDtkgA4pwmBoModpSoMg/aOvfcJJdqOdUrFQWqJa+Ptb1Ei4CrIwNMAWoXj92rs1 fajVMWjpLui5FxNTq0MgTnZpCHGy7C7e+DljnlhZjSxaqBlnkiAmC71WdW6H4z6NA/dehr 3pkmZ/uWIO3KEUD3YpaYiC/et52NoR6i0Bvj8Jy6a1nqaSDpX3SUz1sBA73whA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c5nX3tvJZSkfzk6B+izK1fzjYG+khnreJHSnk1TI29s=; b=pw9y4kGgPiHOzymhe6m6pxpMHi9t1TWIVQBfxqB1Y6dWDDoXKywNoZNoxrAo2ppKU9V71N 3cGzrd+LjW2DVhW9EdnbuqsACNDWu2y5cG+9lvJixjGtw0b3iFPEVaUAZAHdHVX+nQJfV8 SAh4EBkTOGNE3h2XaASqqFaMaL+BVJ7nleD99N8o4MwflMk5l52TsH39u/6+SH5uhDCjE4 J6qhJY2S93RXNEX7KqYi28x0/Lz+5BlWvL4pfykbXdChdK5Oj1Umf6aCfHo1K+3yIOTxnl I9qtRxdNSflMXcqO0y10zqdG5wK39XiIYxzrZMN02di1CSRNfU8Sk9ko6r6yxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408173; a=rsa-sha256; cv=none; b=L+sEcjSh4TOp6fd3kO+Mm1Zl0KUDn7pSAXQNL+V3+ConNf+Ecuok8N6UMBPHLb+C9oe1WK Q9s6tIBJ7G17xIEZ3NKxCGC9JuhXlYvaq3tei+Ait8SJCSSyErx7K8vqv60QmtRsJFWYx3 ffRESDStxPfWvP5XfD4t+xRY01ue5tNdAk+Ita4JsfMlnzFkH2vlZUpLJTFOreh75MAxqM Vz4XWAohodo+UsI1FjOf8mBEAegLE2nrQ3CyojqxZAxZl7tGrzZHgZcx9kkXDEoOYXaiQ9 An0SlMvlCIhFzq5B3sFdaCLLfoftfYUB5N7AJNVz4b6kolPUpg55paZCI/9F2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGMx0x34zNx2; Fri, 27 Sep 2024 03:36: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 48R3aDLF038828; Fri, 27 Sep 2024 03:36:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aD9l038825; Fri, 27 Sep 2024 03:36:13 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:13 GMT Message-Id: <202409270336.48R3aD9l038825@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: 004a73f51df4 - stable/14 - ixgbe: increase DCB BW calculation for MTU List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 004a73f51df49fd4f17148f123f7776fb35de3ab Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=004a73f51df49fd4f17148f123f7776fb35de3ab commit 004a73f51df49fd4f17148f123f7776fb35de3ab Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:42:39 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:32:25 +0000 ixgbe: increase DCB BW calculation for MTU Change max credit and credit refill to a maximum possible value, 9128. Too small values cause the incorrect calculation of the bandwidth limits to each traffic class for frames larger than 4088 bytes. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Tested-by: Piotr Skajewski Obtained from: DPDK (440823f) (cherry picked from commit 1b80ac6fa64eaa575b99521cbd71a3780bf5139b) --- sys/dev/ixgbe/ixgbe_dcb.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_dcb.h b/sys/dev/ixgbe/ixgbe_dcb.h index b31dfae0cdfa..54decd4d081d 100644 --- a/sys/dev/ixgbe/ixgbe_dcb.h +++ b/sys/dev/ixgbe/ixgbe_dcb.h @@ -40,9 +40,9 @@ /* DCB defines */ /* DCB credit calculation defines */ #define IXGBE_DCB_CREDIT_QUANTUM 64 -#define IXGBE_DCB_MAX_CREDIT_REFILL 200 /* 200 * 64B = 12800B */ +#define IXGBE_DCB_MAX_CREDIT_REFILL 511 /* 0x1FF * 64B = 32704B */ #define IXGBE_DCB_MAX_TSO_SIZE (32 * 1024) /* Max TSO pkt size in DCB*/ -#define IXGBE_DCB_MAX_CREDIT (2 * IXGBE_DCB_MAX_CREDIT_REFILL) +#define IXGBE_DCB_MAX_CREDIT 4095 /* Maximum credit supported: 256KB * 1024 / 64B */ /* 513 for 32KB TSO packet */ #define IXGBE_DCB_MIN_TSO_CREDIT \ From nobody Fri Sep 27 03:36: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 4XFGMz02npz5XQ1M; Fri, 27 Sep 2024 03:36: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 4XFGMy2RXlz4nDK; Fri, 27 Sep 2024 03:36:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UIOIpm/SJWFkIiKlexGZuKp2YyJ/wNIZSvn9OcKwqWw=; b=K28h8l9AHACY8CxNSKIT1kVNn2t6UIgi/dQRFnm+fcdEINkL53RclCCwEdeJlAeEB2UQR3 XZlFwPs3cn4U/+PVldC413VQmdJJxEbHvuB5LNWdyv+yHG/I8yaq/g5kfOW6Kko8151sgf fJBIJyU8zCovam9ugp7XByXcnKUfP3+C8oXCAzlN54mNPe9UZt4zvu4WGJdcH+QLzNHU45 hsn5UwLjWPgmi5SpSsx2/R4FYUvz5Tph+itbPYffyw0neef3gibGXAJbffhU3dxkX/TjpL L/r0bf4zBZdtYlicebkocAMcqwPJBSrzTwd3mje285CY6AYHWi5Zblb9HDCU0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UIOIpm/SJWFkIiKlexGZuKp2YyJ/wNIZSvn9OcKwqWw=; b=iuUTcXnImDf49UYMPDq0YjcXM1mukn5PkNUWIAbDWuekrNR6Rb/Zwav+9IGGVdOVR3OriC jP+9nDaEOayI0TJeBaMqPPhkyzzQcV0zsKTxww1pI7lf+wH1yC7ISIedDQ+ADCN67bq4cB 0cygzuwJO6Qw9u5ozLSPDmPIJ/pAJ4TaSodYaRhc3fdmLloLqDcTN8/2CPMwFyVCFLRVz/ wYSGNBvBCK42j93zPsMS97o2mgS/vtqq5Gd63ZK/Lb0yUHRte1fiOJypJO/YuTEQnuRiPX +HCpU7uarqNHbpfCw9nGYcStGqKQjhvPjg9YxTUWzVf0yXln86e1HzVZkRYp+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408174; a=rsa-sha256; cv=none; b=CnZ4SEXKsoOPrVOrpuhnEs1ZeyQ+/96ay2TaP/Wob8OnZZLNo61mChg5tchcfXJInJvdk5 8qSAHBh6S6PmUiIr+OtcKWDzmY1shYiJWpUQVLXU/+9LcH8tGRLk2bkW8yyHsud/rDMhm7 CAxtb89M4CyevGolPnP6FR/zWbgVIKZZbxMUzV+oNwnamRVp0Hs4nXMj3QMXNm+cVJeOx5 NdhHh+yXV0u1hI989PoCKYyCoDZ/maNeWbBxuDDyR6Gy1sf3DfLylfzZokQkMDe07hS6zM Yc/IvE9UEB386ePyGYEBzW2YOAugUidi12sWzp3o+aIZTihfzPM/ZU8poFsNXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGMy1ycMzNyY; Fri, 27 Sep 2024 03:36: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 48R3aExx038869; Fri, 27 Sep 2024 03:36:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aEFN038866; Fri, 27 Sep 2024 03:36:14 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:14 GMT Message-Id: <202409270336.48R3aEFN038866@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: dc3f0089b141 - stable/14 - ixgbe: improve function comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: dc3f0089b14134f3eb0646de2cdf7ff57f39b2db Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=dc3f0089b14134f3eb0646de2cdf7ff57f39b2db commit dc3f0089b14134f3eb0646de2cdf7ff57f39b2db Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:50:23 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:32:39 +0000 ixgbe: improve function comments Some function comments have mismatches between actual function names and function name in comments, which causes warnings with kernel-doc. Fix comments to match function names. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Obtained from: DPDK (7b5bc85) (cherry picked from commit edef2769483b29457f028a508ea96fc1099a0a21) --- sys/dev/ixgbe/ixgbe_82599.c | 2 +- sys/dev/ixgbe/ixgbe_api.c | 2 +- sys/dev/ixgbe/ixgbe_common.c | 11 ++++++----- sys/dev/ixgbe/ixgbe_dcb.c | 2 +- sys/dev/ixgbe/ixgbe_phy.c | 2 +- sys/dev/ixgbe/ixgbe_x550.c | 12 ++++++------ 6 files changed, 16 insertions(+), 15 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index 70b4cdc5c6ca..a1d8b299bf80 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -1537,7 +1537,7 @@ u32 ixgbe_atr_compute_sig_hash_82599(union ixgbe_atr_hash_dword input, } /** - * ixgbe_atr_add_signature_filter_82599 - Adds a signature hash filter + * ixgbe_fdir_add_signature_filter_82599 - Adds a signature hash filter * @hw: pointer to hardware structure * @input: unique input dword * @common: compressed common input dword diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index eded950e2881..7767e9a5571c 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -904,7 +904,7 @@ s32 ixgbe_validate_eeprom_checksum(struct ixgbe_hw *hw, u16 *checksum_val) } /** - * ixgbe_eeprom_update_checksum - Updates the EEPROM checksum + * ixgbe_update_eeprom_checksum - Updates the EEPROM checksum * @hw: pointer to hardware structure **/ s32 ixgbe_update_eeprom_checksum(struct ixgbe_hw *hw) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 6c1396ad964f..a7adf079f248 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -3866,14 +3866,15 @@ s32 ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) } /** + * ixgbe_set_vmdq_san_mac_generic - Associate default VMDq pool index with + * a rx address + * @hw: pointer to hardware struct + * @vmdq: VMDq pool index + * * This function should only be involved in the IOV mode. * In IOV mode, Default pool is next pool after the number of * VFs advertized and not 0. * MPSAR table needs to be updated for SAN_MAC RAR [hw->mac.san_mac_rar_index] - * - * ixgbe_set_vmdq_san_mac - Associate default VMDq pool index with a rx address - * @hw: pointer to hardware struct - * @vmdq: VMDq pool index **/ s32 ixgbe_set_vmdq_san_mac_generic(struct ixgbe_hw *hw, u32 vmdq) { @@ -4880,7 +4881,7 @@ static const u8 ixgbe_emc_therm_limit[4] = { }; /** - * ixgbe_get_thermal_sensor_data - Gathers thermal sensor data + * ixgbe_get_thermal_sensor_data_generic - Gathers thermal sensor data * @hw: pointer to hardware structure * * Returns the thermal sensor data structure diff --git a/sys/dev/ixgbe/ixgbe_dcb.c b/sys/dev/ixgbe/ixgbe_dcb.c index 0ebc5456eda5..29ee3117edcb 100644 --- a/sys/dev/ixgbe/ixgbe_dcb.c +++ b/sys/dev/ixgbe/ixgbe_dcb.c @@ -293,7 +293,7 @@ void ixgbe_dcb_unpack_map_cee(struct ixgbe_dcb_config *cfg, int direction, } /** - * ixgbe_dcb_config - Struct containing DCB settings. + * ixgbe_dcb_check_config_cee - Struct containing DCB settings. * @dcb_config: Pointer to DCB config structure * * This function checks DCB rules for DCB settings. diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index 00f396283879..c2f23179476b 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -587,7 +587,7 @@ void ixgbe_restart_auto_neg(struct ixgbe_hw *hw) } /** - * ixgbe_read_phy_mdi - Reads a value from a specified PHY register without + * ixgbe_read_phy_reg_mdi - Reads a value from a specified PHY register without * the SWFW lock * @hw: pointer to hardware structure * @reg_addr: 32 bit address of PHY register to read diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index ad7e7abd7a12..65a87883025e 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -750,7 +750,7 @@ static s32 ixgbe_setup_fw_link(struct ixgbe_hw *hw) } /** - * ixgbe_fc_autoneg_fw _ Set up flow control for FW-controlled PHYs + * ixgbe_fc_autoneg_fw - Set up flow control for FW-controlled PHYs * @hw: pointer to hardware structure * * Called at init time to set up flow control. @@ -1876,7 +1876,7 @@ void ixgbe_init_mac_link_ops_X550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_link_capabilities_x550em - Determines link capabilities + * ixgbe_get_link_capabilities_X550em - Determines link capabilities * @hw: pointer to hardware structure * @speed: pointer to link speed * @autoneg: true when autoneg or autotry is enabled @@ -3236,7 +3236,7 @@ out: } /** - * ixgbe_write_ee_hostif_X550 - Write EEPROM word using hostif + * ixgbe_write_ee_hostif_data_X550 - Write EEPROM word using hostif * @hw: pointer to hardware structure * @offset: offset of word in the EEPROM to write * @data: word write to the EEPROM @@ -3704,7 +3704,7 @@ u64 ixgbe_get_supported_physical_layer_X550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_bus_info_x550em - Set PCI bus info + * ixgbe_get_bus_info_X550em - Set PCI bus info * @hw: pointer to hardware structure * * Sets bus link width and speed to unknown because X550em is @@ -3769,7 +3769,7 @@ void ixgbe_disable_rx_x550(struct ixgbe_hw *hw) } /** - * ixgbe_enter_lplu_x550em - Transition to low power states + * ixgbe_enter_lplu_t_x550em - Transition to low power states * @hw: pointer to hardware structure * * Configures Low Power Link Up on transition to low power states @@ -3877,7 +3877,7 @@ s32 ixgbe_enter_lplu_t_x550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_lcd_x550em - Determine lowest common denominator + * ixgbe_get_lcd_t_x550em - Determine lowest common denominator * @hw: pointer to hardware structure * @lcd_speed: pointer to lowest common link speed * From nobody Fri Sep 27 03:36: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 4XFGMz750Sz5XQNh; Fri, 27 Sep 2024 03:36: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 4XFGMz3cH3z4nT5; Fri, 27 Sep 2024 03:36:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408175; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=irmxpzdfC5Xjkj6wuxk/fWaAMH0KXAlauy2u1po0hPA=; b=yNqeSgoTmJiZcW8GveOE4OLkOGLd6/5xxjSyjlIU1F3StKh9M9cEZFObDZVy2rZzNN87WS 9D2z/5EcaxXI4ke17kox+CNbEsomkqbdjRPJBCLukX11Ci7TcILqmUmPKwbttDYrVJVgnq CvmmhaGDNTnNxfGANFTgLYh8L9cY/GYdjEmAcXl1S2FTO9vvER3bgfmZrmkf6402m9UpVr c8zdsQX/EVjMQoC0GxvnIqInl094tR0dSW/ccet6q8pcqEsymTPNjrXU7W38ht7HOX8+Nb LKoaQxG14IwNucwTuOP8Pp1hRsdmfnZhiDTnjwf/Dqn73XleEYpuw+2bIe7Njg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408175; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=irmxpzdfC5Xjkj6wuxk/fWaAMH0KXAlauy2u1po0hPA=; b=a/MVWQipqFrx60AstA80j59JymsTyJnHWS4x+HemKc4pHLbHWOg1fAOaqHGssi++Nzr6hg fJ10Wt/txuNul4F1XJjjOwrtPy17P+NgRGW6LBLZroYlWcArs/7+n20LlTHzwyeFAQPhVT hQpAjJjyBZnDwLVn/jLko8Ip92K3GQGgHm6o1WIyXcLY4rLh3MYbhllVjDJaf9N7w/tSe9 iU4VD/oXeeSmzJoXxbFt1GyTIcylfS1EpOfLXRnEsBsDekplSvZV4+Yls+4ESTfecgXI7V lRm1N0KFLgd1KvzWmILfdttnUYCXtRMbkz+jZoRksXpIuf0/sKHr1kMzlS/wgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408175; a=rsa-sha256; cv=none; b=RPUiafbep6+W2B9Iitk2sRMTRBg2fcktINw4SuqNRma16vH2qhqZgTp9Lf74G17mQ4Fo55 5bYCWYzVbQawPkrLJoYPnP2sZohadQeD51L62Lg2SiIviQD8c/sS5o2olfF6EuEo4aAt1B YdBh3PXCYgFohoVsLqSkmAGSI8gXXlNHor9Y4JuRMhEimHUSBISbFMZzo8PUGZx6jl08cs UqXZKCwjQIoCUcFnNYNhNa0TW+cwDwb0VpE0FjWIl6VWT8gsa/0QLBcaOzbx/rZN9kH8CO KadhoVj6nCy35olwz4ZWK5BBO89dVZXQilDyRDAvnjrVFpnUUJ4g0dMGQZJzKQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGMz2zrGzP1s; Fri, 27 Sep 2024 03:36: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 48R3aFJ8038927; Fri, 27 Sep 2024 03:36:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aFSl038924; Fri, 27 Sep 2024 03:36:15 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:15 GMT Message-Id: <202409270336.48R3aFSl038924@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: 3e34560b17c7 - stable/14 - ixgbe: add reset count field to HW struct List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 3e34560b17c7209982dada156851ff4944426411 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=3e34560b17c7209982dada156851ff4944426411 commit 3e34560b17c7209982dada156851ff4944426411 Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:54:21 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:32:53 +0000 ixgbe: add reset count field to HW struct DPDK commit message net/ixgbe/base: add reset count field to HW struct Add fw_rst_cnt to store the number of resets after fw update. This value is required to detect if the EICR.MNG event occurred after firmware update reset. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Obtained from: DPDK (9ab0e9c) (cherry picked from commit 224f7ab8b4706653c7d3f78e624bc36c97679f30) --- sys/dev/ixgbe/ixgbe_type.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index ccfce45500d9..56d4863c8e07 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -4201,6 +4201,7 @@ struct ixgbe_hw { bool allow_unsupported_sfp; bool wol_enabled; bool need_crosstalk_fix; + u32 fw_rst_cnt; }; #define ixgbe_call_func(hw, func, params, error) \ From nobody Fri Sep 27 03:36: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 4XFGN10pPzz5XQ63; Fri, 27 Sep 2024 03:36: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 4XFGN041MQz4n9x; Fri, 27 Sep 2024 03:36:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HfprpT0MyESskz+NAflFNVHGHViSuKQjrXLXb3XJH5w=; b=f9XVtw0X6z0vsWnHiVxGlNkwfRi5ZzFnx2TPnLMdowkaLElNhqEHRGM4jZJwBgaXIF2lQ0 Z1ihqRzYPtLX4MuJ83VGC8XT0BnnQLGyzimyIPLB3ZwdN4Gtbo4d027oTx4KwHRsxHVztQ emkLiH4VDmB7aYOSBGDpB5iKmppQaSKFoTN7648qYXPzpApT9iB+Gnd6nVS+9znC4Csk/H lNDpGRuBPbwy+nQZwV+HtDev8l4y4S/x0U1N3CPEdV5sCSrAkStR+eQso4B+0Q7wWjdPNX /IeO7m7O5xGHV09bLY38kYgQM8pAKjcoVsVGcpSHpbfpl6tk7hlwOJtjNsTSIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HfprpT0MyESskz+NAflFNVHGHViSuKQjrXLXb3XJH5w=; b=U/ATmymk5z8HjpioqL4avYgjsueMpoydKDiOn/n9Mn3ZizhPEJYJ/JTP/UzZeSCuoNDO2J /XWKyOaBMTBqZ1n1gy6xgmYJbtAlcB02YRivrXygqQlIXnk+xp6nkNj+E5uycrhmuh0FM+ 5rbFuQK82grGKlsgKiu4OHH6ryBULcAOjBy+Noi7qTB8c2vnYpH6aYKhxXiZHZW/7yoB5t mylaH8iCpyu0ALzSwSppmIa8Hk0kTlniiQhlCbdJkTBfrcpTWzxmZR0ijUeV/F9rlaN1Pk SrE5YpzYLEm6l+3ChTKWhVVty0atq8/UeM+ouF8Jh0zOjjUnsPmup/Ug7u8juA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408176; a=rsa-sha256; cv=none; b=lIX+txgHrw0Ml0Ub1Z804YKWKuC6kYut7V2aip+iX+gzyEcytE3FmJLn5bBo90sIApS+jM MAsmyIsVq0yLZNfaAAKNX5H67u8t0a80BXZoot2/YK9cF3HfKWTrfkBfaXCGh1wEdE/x+r vxVRoAoUry92Rwr7YmsZT2YnNnyJqDnwv9bFTNygrOJHUEjAbdZxcZqs5hyzWg5pvlKKWz W4b9hzNI2BrBZZCELzVEV7b5ollET0gup0aHllVsJcb6EiAEISElHlEqYLtnGluN8c0Ui+ pYBpkuidK+RF9sN1PEWDAhfST36OCTh0Nig4gQVr87bfj7XqTSRV8/oG8gRqbA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN03bMDzP57; Fri, 27 Sep 2024 03:36: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 48R3aGRN038978; Fri, 27 Sep 2024 03:36:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aGhD038975; Fri, 27 Sep 2024 03:36:16 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:16 GMT Message-Id: <202409270336.48R3aGhD038975@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: c7bdf0c5e19b - stable/14 - ixgbe: Remove Atom C3000 HIC FW access List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: c7bdf0c5e19bcf5ec0a6c591646f35ca5dd7b4dc Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c7bdf0c5e19bcf5ec0a6c591646f35ca5dd7b4dc commit c7bdf0c5e19bcf5ec0a6c591646f35ca5dd7b4dc Author: Marek Mical AuthorDate: 2024-09-20 02:59:05 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:33:17 +0000 ixgbe: Remove Atom C3000 HIC FW access DPDK commit message net/ixgbe/base: replace HIC with direct register access Unify FW access method to direct register read/writes across all Atom(R) C3000 products. Atom(R) C3000 fiber exhibited an issue with the Host Interface Command execution being locked when another LAN function attempted to acquire the SWFW sync on Manageability Host. This resulted in HIC atomicity break and bogus data being read since the other LAN function cleared all semaphores on timeout whereas HIC execution continued after unlock. Direct register IOSF access showed higher stability and reliability. Signed-off-by: Marek Mical Reviewed-by: Krzysztof Galazka Reviewed-by: Eryk Rybak Reviewed-by: Francis Racicot Reviewed-by: Alice Michael Obtained from: DPDK (e947f1e) (cherry picked from commit f56311e37d4c39b1deab6aa8523f3332c29e1ad3) --- sys/dev/ixgbe/ixgbe_x550.c | 76 ++-------------------------------------------- sys/dev/ixgbe/ixgbe_x550.h | 4 --- 2 files changed, 2 insertions(+), 78 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 65a87883025e..8fe8d037cf31 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -799,14 +799,8 @@ s32 ixgbe_init_ops_X550EM_a(struct ixgbe_hw *hw) /* Start with generic X550EM init */ ret_val = ixgbe_init_ops_X550EM(hw); - if (hw->device_id == IXGBE_DEV_ID_X550EM_A_SGMII || - hw->device_id == IXGBE_DEV_ID_X550EM_A_SGMII_L) { - mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550; - mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550; - } else { - mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550a; - mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550a; - } + mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550; + mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550; mac->ops.acquire_swfw_sync = ixgbe_acquire_swfw_sync_X550a; mac->ops.release_swfw_sync = ixgbe_release_swfw_sync_X550a; @@ -1287,72 +1281,6 @@ s32 ixgbe_put_phy_token(struct ixgbe_hw *hw) return IXGBE_ERR_FW_RESP_INVALID; } -/** - * ixgbe_write_iosf_sb_reg_x550a - Writes a value to specified register - * of the IOSF device - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @device_type: 3 bit device type - * @data: Data to write to the register - **/ -s32 ixgbe_write_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 data) -{ - struct ixgbe_hic_internal_phy_req write_cmd; - s32 status; - UNREFERENCED_1PARAMETER(device_type); - - memset(&write_cmd, 0, sizeof(write_cmd)); - write_cmd.hdr.cmd = FW_INT_PHY_REQ_CMD; - write_cmd.hdr.buf_len = FW_INT_PHY_REQ_LEN; - write_cmd.hdr.checksum = FW_DEFAULT_CHECKSUM; - write_cmd.port_number = hw->bus.lan_id; - write_cmd.command_type = FW_INT_PHY_REQ_WRITE; - write_cmd.address = IXGBE_CPU_TO_BE16(reg_addr); - write_cmd.write_data = IXGBE_CPU_TO_BE32(data); - - status = ixgbe_host_interface_command(hw, (u32 *)&write_cmd, - sizeof(write_cmd), - IXGBE_HI_COMMAND_TIMEOUT, false); - - return status; -} - -/** - * ixgbe_read_iosf_sb_reg_x550a - Reads specified register of the IOSF device - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @device_type: 3 bit device type - * @data: Pointer to read data from the register - **/ -s32 ixgbe_read_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 *data) -{ - union { - struct ixgbe_hic_internal_phy_req cmd; - struct ixgbe_hic_internal_phy_resp rsp; - } hic; - s32 status; - UNREFERENCED_1PARAMETER(device_type); - - memset(&hic, 0, sizeof(hic)); - hic.cmd.hdr.cmd = FW_INT_PHY_REQ_CMD; - hic.cmd.hdr.buf_len = FW_INT_PHY_REQ_LEN; - hic.cmd.hdr.checksum = FW_DEFAULT_CHECKSUM; - hic.cmd.port_number = hw->bus.lan_id; - hic.cmd.command_type = FW_INT_PHY_REQ_READ; - hic.cmd.address = IXGBE_CPU_TO_BE16(reg_addr); - - status = ixgbe_host_interface_command(hw, (u32 *)&hic.cmd, - sizeof(hic.cmd), - IXGBE_HI_COMMAND_TIMEOUT, true); - - /* Extract the register value from the response. */ - *data = IXGBE_BE32_TO_CPU(hic.rsp.read_data); - - return status; -} - /** * ixgbe_disable_mdd_X550 * @hw: pointer to hardware structure diff --git a/sys/dev/ixgbe/ixgbe_x550.h b/sys/dev/ixgbe/ixgbe_x550.h index 245e128266aa..45e4cad9f1f7 100644 --- a/sys/dev/ixgbe/ixgbe_x550.h +++ b/sys/dev/ixgbe/ixgbe_x550.h @@ -69,10 +69,6 @@ s32 ixgbe_set_fw_drv_ver_x550(struct ixgbe_hw *hw, u8 maj, u8 min, u8 build, u8 ver, u16 len, const char *str); s32 ixgbe_get_phy_token(struct ixgbe_hw *); s32 ixgbe_put_phy_token(struct ixgbe_hw *); -s32 ixgbe_write_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 data); -s32 ixgbe_read_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 *data); void ixgbe_disable_mdd_X550(struct ixgbe_hw *hw); void ixgbe_enable_mdd_X550(struct ixgbe_hw *hw); void ixgbe_mdd_event_X550(struct ixgbe_hw *hw, u32 *vf_bitmap); From nobody Fri Sep 27 03:36: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 4XFGN21r7dz5XPw9; Fri, 27 Sep 2024 03:36: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 4XFGN14xQfz4nbT; Fri, 27 Sep 2024 03:36:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408177; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zcW97EfNQgN7weJJVt+pxRJVlEzuYgkESg2H/nsH6Mk=; b=CYJuifvs8bEyaPMnqgmnlq561LjxoPLYWkdHYhnsXCt3c0phjsp5K1a8tvwnlQbejkBd/8 Pfwzomkq1803WR82zSB3c/dGRAY3mC39aOEL/y2z0+h58cdQdw40iEn4Qzi07Nfb1ESmob 94UZNM0+3oNw0JbOdHo8qyiZwtX+CvOUq6SDgrUuNRsRfPLa162dTXtFZhyHN2m//hVsSV l1hadmQqzLPP4FM5x7mfJ5qRaf0FA6dB5C1SLCykU7jyYdHgSbaF5roSASniAVQO6nDcfe vUhg/7E0W/gsdRcQw6E75s9mE8uXNFFSbrBZ9w788Cmz/7d8VZJDdnEFoXQCeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408177; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zcW97EfNQgN7weJJVt+pxRJVlEzuYgkESg2H/nsH6Mk=; b=uZn9RrpbohcajGkRJxOSGWuE0yvWllT3r+oNj7ydaHqFoz/y7wtLIzhl6k8Uq924RdxyS7 7xW7HF6Ek5nptySXMEzXisnr8jYRqV74z2kVln+kVMsbBqLnvAgtZaAsrp+iZqs0QywuCe teUDS6CjVpxdPOzCbNuN8DXxWhI9JD+kYo/jxnBkQVKA+/ESnM8K6OlIhbzP+vt47B3rOt 6jSHfCYgwxIRRjJjEtVAVhFreeXHxufWzm+IwUcXhKr4mQNfCbyQD3XLjoA5JAxy2e4w32 neLokNNXj1b0SUauFPTiPhePEidZx6tiNxiKmncUdCpStQxCZ7JFIpXhOWFMkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408177; a=rsa-sha256; cv=none; b=uIYy+Sjx6dXJn1iHVnmmwyRPhhXTx3lx2ARODCYnIdoh/XZzf48j0v/OBJE3YfCIyLYiuW LYLGos1ORL2QnUuZUPKY7vMs72ZWOCWdFVxOMaL5akitqJyZ6gM7cGUNRxw1Fq+wL/XLZQ W6vLsfilphgp5kqZzY4prrWUKOHNvd4Y4SNeSkAGxPQX5HMHewLl5vVBiGQ9UGLq3U26RT nxKOK7uF3/RNXoMT9BWgj8ll6QpnfqXJLY2bK/8jH74fuCQSkcglR0bimt7NoyKZxU5/qP u12bdacTVJqyOO0wccE1Ycdlym1UDsqRXBElKbzSuRHgm44HuzkDbRv0ci4fFg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN14PbNzP58; Fri, 27 Sep 2024 03:36: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 48R3aHD6039020; Fri, 27 Sep 2024 03:36:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aHaO039017; Fri, 27 Sep 2024 03:36:17 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:17 GMT Message-Id: <202409270336.48R3aHaO039017@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: fc143df91260 - stable/14 - ixgbe: replace implicit fall-through comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: fc143df912602c4609dac52358f5ea29f19a7bda Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=fc143df912602c4609dac52358f5ea29f19a7bda commit fc143df912602c4609dac52358f5ea29f19a7bda Author: Piotr Skajewski AuthorDate: 2024-09-20 03:12:41 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:33:33 +0000 ixgbe: replace implicit fall-through comments DPDK commit message Convert all "fall-through" comments to actual code. This aligns the code with the kernel which no longer allows implicit fallthrough. Signed-off-by: Piotr Skajewski Reviewed-by: Alice Michael Obtained from: DPDK (ae8211f) (cherry picked from commit 50455f73c28114c665551cba267ec964491ccf21) --- sys/dev/ixgbe/ixgbe_82599.c | 8 ++++++-- sys/dev/ixgbe/ixgbe_common.c | 10 ++++++---- sys/dev/ixgbe/ixgbe_x550.c | 11 +++++++---- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index a1d8b299bf80..1ecab83a4e92 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -1759,7 +1759,9 @@ s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *hw, case 0x0000: /* mask VLAN ID */ fdirm |= IXGBE_FDIRM_VLANID; - /* FALLTHROUGH */ + /* mask VLAN priority */ + fdirm |= IXGBE_FDIRM_VLANP; + break; case 0x0FFF: /* mask VLAN priority */ fdirm |= IXGBE_FDIRM_VLANP; @@ -2049,7 +2051,9 @@ s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, DEBUGOUT(" Error on src/dst port\n"); return IXGBE_ERR_CONFIG; } - /* FALLTHROUGH */ + input_mask->formatted.flow_type = IXGBE_ATR_L4TYPE_IPV6_MASK | + IXGBE_ATR_L4TYPE_MASK; + break; case IXGBE_ATR_FLOW_TYPE_TCPV4: case IXGBE_ATR_FLOW_TYPE_TUNNELED_TCPV4: case IXGBE_ATR_FLOW_TYPE_UDPV4: diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index a7adf079f248..ff422a01c741 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -268,8 +268,8 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw) if (ret_val != IXGBE_SUCCESS) goto out; - /* only backplane uses autoc */ - /* FALLTHROUGH */ + reg = IXGBE_READ_REG(hw, IXGBE_PCS1GANA); + break; case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: @@ -4779,8 +4779,10 @@ void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int num_pb, u32 headroom, rxpktsize <<= IXGBE_RXPBSIZE_SHIFT; for (; i < (num_pb / 2); i++) IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); - /* configure remaining packet buffers */ - /* FALLTHROUGH */ + rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; + for (; i < num_pb; i++) + IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); + break; case PBA_STRATEGY_EQUAL: rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; for (; i < num_pb; i++) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 8fe8d037cf31..961d5c285e51 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -355,8 +355,7 @@ static s32 ixgbe_identify_phy_x550em(struct ixgbe_hw *hw) /* set up for CS4227 usage */ ixgbe_setup_mux_ctl(hw); ixgbe_check_cs4227(hw); - /* Fallthrough */ - + return ixgbe_identify_sfp_module_X550em(hw); case IXGBE_DEV_ID_X550EM_A_SFP_N: return ixgbe_identify_sfp_module_X550em(hw); break; @@ -1869,7 +1868,9 @@ s32 ixgbe_get_link_capabilities_X550em(struct ixgbe_hw *hw, break; } } - /* fall through */ + *speed = IXGBE_LINK_SPEED_10GB_FULL | + IXGBE_LINK_SPEED_1GB_FULL; + break; default: *speed = IXGBE_LINK_SPEED_10GB_FULL | IXGBE_LINK_SPEED_1GB_FULL; @@ -3589,7 +3590,9 @@ u64 ixgbe_get_supported_physical_layer_X550em(struct ixgbe_hw *hw) break; } } - /* fall through */ + physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_KR | + IXGBE_PHYSICAL_LAYER_1000BASE_KX; + break; case ixgbe_phy_x550em_xfi: physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_KR | IXGBE_PHYSICAL_LAYER_1000BASE_KX; From nobody Fri Sep 27 03:36: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 4XFGN315kSz5XQSr; Fri, 27 Sep 2024 03:36: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 4XFGN25xTCz4nbY; Fri, 27 Sep 2024 03:36:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=36AFJX//FldsnrbkvbSeK+Oblw/xlgc3cJsL+URNyq8=; b=P/LK4sIOEaVxLioZidncbenQHhgQONly1A9D+bnGZPJZOEgYQkAD70pEBkaqjiz/ECeu89 ju3pDRLusp8Rk+xG4AAW+DrYCpy6POOXIB8WpmKXwiemmX+D9tv1meCO+LFL8+VUJ8oTon 9zQx9avIjQ/mgKPM5Jb/ImqnckVgmECHSTbK0ONg+gyc5WM64zFPA5X3yDxi7Ajv2ic0Ih FTh/FL28uEBK1PCyN3a470fPhGatPesEY6sMdfdNHDucb+s9rYcbS5FvvvXuVd5MECgw83 9vEuvKB+JBRL77xOni9hTqKUmBTtjao5HAtwLcvQXGWuHVcsMMjdA+/9dA0uxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=36AFJX//FldsnrbkvbSeK+Oblw/xlgc3cJsL+URNyq8=; b=AR62KatUKx/czKH+ZaFL9Wd4bk/W4/gPoBeQkRy+CSXmt7qW4y6ZU7v4+KaWJ4WNt90yc/ zI/ADBFIWao29QR2Cl29Wu3jJKrNcpnhFN4OVkErW2rDlcA6WHXT1Dtj2ITWznGmN5SHkP HwGml2jz+9ipKQiz8CAluYPs72jKBZFbd008z13qTvfjXkEoK34CZJ0DptMz69xeDFC2/3 1VZdMPtZSci7RxnvZKT9NTMXZ9ww7lSaKtXluGn+uOk1xRqu1yoSosQGKAPjsuAPjfGLYC qIkHgNvMSLt1pfRVF2oy66Rhb1NZrclOgsq0hgyX+2Fx5EI9QiDYQsW+CRV3rA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408178; a=rsa-sha256; cv=none; b=kVLdb+sOoxLO/EgqZchDssEgRbxSBc6uAYiGtWFdNP4Z9JVBWWP4SE/fa4XthRnHeCDYEH lkX1vrczg6fkE8l3f9lX8suvl3UgeJrrxaM+EJbaMLCGZiZ0LVMeusB2IS/WfiwLkrSiXV MFQB8haY8wxXmsCcYrRjuoscj2nCmwypHh+mnO6b0Iu+GeohPn9QL3CwGeWag1YfAcbF/w O2/+hyDpY7WsCvgIoErX7tmJ6njYmeDor5RCeWJiQ7FmUnCsyGzl8OsGJ+lFuwYI/lI3QP KWnE3DAd+fyjHWfmX1arB5GEKUCZ7SnYLNtXOcFsilcztPyCIf1CzW1dTe9yvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN25W9VzNyZ; Fri, 27 Sep 2024 03:36: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 48R3aIUt039065; Fri, 27 Sep 2024 03:36:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aIG9039062; Fri, 27 Sep 2024 03:36:18 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:18 GMT Message-Id: <202409270336.48R3aIG9039062@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: ccd265610908 - stable/14 - ixgbe: use primary and block terminology List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ccd26561090812a4ead648487d51eac2e9a07aab Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=ccd26561090812a4ead648487d51eac2e9a07aab commit ccd26561090812a4ead648487d51eac2e9a07aab Author: Marcin Jurczak AuthorDate: 2024-09-20 03:18:00 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:33:47 +0000 ixgbe: use primary and block terminology DPDK commit message net/ixgbe/base: replace non-inclusive language This patch removes non-inclusive language from code, user interface and comments. Signed-off-by: Marcin Jurczak Reviewed-by: Alice Michael Obtained from: DPDK (f12a4bd) (cherry picked from commit 4530d49e68d331e9168d3a216d8a4b8e0d547578) --- sys/dev/ixgbe/ixgbe_common.c | 34 +++++++++++++++++----------------- sys/dev/ixgbe/ixgbe_common.h | 2 +- sys/dev/ixgbe/ixgbe_type.h | 10 +++++----- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index ff422a01c741..7cf9b8d05127 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -171,7 +171,7 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: - /* flow control autoneg black list */ + /* flow control autoneg block list */ switch (hw->device_id) { case IXGBE_DEV_ID_X550EM_A_SFP: case IXGBE_DEV_ID_X550EM_A_SFP_N: @@ -1146,10 +1146,10 @@ s32 ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) msec_delay(2); /* - * Prevent the PCI-E bus from hanging by disabling PCI-E master + * Prevent the PCI-E bus from hanging by disabling PCI-E primary * access and verify no pending requests */ - return ixgbe_disable_pcie_master(hw); + return ixgbe_disable_pcie_primary(hw); } /** @@ -3208,32 +3208,32 @@ static u32 ixgbe_pcie_timeout_poll(struct ixgbe_hw *hw) } /** - * ixgbe_disable_pcie_master - Disable PCI-express master access + * ixgbe_disable_pcie_primary - Disable PCI-express primary access * @hw: pointer to hardware structure * - * Disables PCI-Express master access and verifies there are no pending - * requests. IXGBE_ERR_MASTER_REQUESTS_PENDING is returned if master disable - * bit hasn't caused the master requests to be disabled, else IXGBE_SUCCESS - * is returned signifying master requests disabled. + * Disables PCI-Express primary access and verifies there are no pending + * requests. IXGBE_ERR_PRIMARY_REQUESTS_PENDING is returned if primary disable + * bit hasn't caused the primary requests to be disabled, else IXGBE_SUCCESS + * is returned signifying primary requests disabled. **/ -s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) +s32 ixgbe_disable_pcie_primary(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 i, poll; u16 value; - DEBUGFUNC("ixgbe_disable_pcie_master"); + DEBUGFUNC("ixgbe_disable_pcie_primary"); /* Always set this bit to ensure any future transactions are blocked */ IXGBE_WRITE_REG(hw, IXGBE_CTRL, IXGBE_CTRL_GIO_DIS); - /* Exit if master requests are blocked */ + /* Exit if primary requests are blocked */ if (!(IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_GIO) || IXGBE_REMOVED(hw->hw_addr)) goto out; - /* Poll for master request bit to clear */ - for (i = 0; i < IXGBE_PCI_MASTER_DISABLE_TIMEOUT; i++) { + /* Poll for primary request bit to clear */ + for (i = 0; i < IXGBE_PCI_PRIMARY_DISABLE_TIMEOUT; i++) { usec_delay(100); if (!(IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_GIO)) goto out; @@ -3241,13 +3241,13 @@ s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) /* * Two consecutive resets are required via CTRL.RST per datasheet - * 5.2.5.3.2 Master Disable. We set a flag to inform the reset routine - * of this need. The first reset prevents new master requests from + * 5.2.5.3.2 Primary Disable. We set a flag to inform the reset routine + * of this need. The first reset prevents new primary requests from * being issued by our device. We then must wait 1usec or more for any * remaining completions from the PCIe bus to trickle in, and then reset * again to clear out any effects they may have had on our device. */ - DEBUGOUT("GIO Master Disable bit didn't clear - requesting resets\n"); + DEBUGOUT("GIO Primary Disable bit didn't clear - requesting resets\n"); hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED; if (hw->mac.type >= ixgbe_mac_X550) @@ -3269,7 +3269,7 @@ s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) ERROR_REPORT1(IXGBE_ERROR_POLLING, "PCIe transaction pending bit also did not clear.\n"); - status = IXGBE_ERR_MASTER_REQUESTS_PENDING; + status = IXGBE_ERR_PRIMARY_REQUESTS_PENDING; out: return status; diff --git a/sys/dev/ixgbe/ixgbe_common.h b/sys/dev/ixgbe/ixgbe_common.h index a55003b4cfe4..0ff5c60d40af 100644 --- a/sys/dev/ixgbe/ixgbe_common.h +++ b/sys/dev/ixgbe/ixgbe_common.h @@ -118,7 +118,7 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw); s32 ixgbe_validate_mac_addr(u8 *mac_addr); s32 ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u32 mask); void ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u32 mask); -s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw); +s32 ixgbe_disable_pcie_primary(struct ixgbe_hw *hw); s32 prot_autoc_read_generic(struct ixgbe_hw *hw, bool *, u32 *reg_val); s32 prot_autoc_write_generic(struct ixgbe_hw *hw, u32 reg_val, bool locked); diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index 56d4863c8e07..f34bf8dace64 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -1488,7 +1488,7 @@ struct ixgbe_dmac_config { #define IXGBE_PSRTYPE_RQPL_SHIFT 29 /* CTRL Bit Masks */ -#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Master Disable bit */ +#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Primary Disable bit */ #define IXGBE_CTRL_LNK_RST 0x00000008 /* Link Reset. Resets everything. */ #define IXGBE_CTRL_RST 0x04000000 /* Reset (SW) */ #define IXGBE_CTRL_RST_MASK (IXGBE_CTRL_LNK_RST | IXGBE_CTRL_RST) @@ -2136,7 +2136,7 @@ enum { /* STATUS Bit Masks */ #define IXGBE_STATUS_LAN_ID 0x0000000C /* LAN ID */ #define IXGBE_STATUS_LAN_ID_SHIFT 2 /* LAN ID Shift*/ -#define IXGBE_STATUS_GIO 0x00080000 /* GIO Master Ena Status */ +#define IXGBE_STATUS_GIO 0x00080000 /* GIO Primary Ena Status */ #define IXGBE_STATUS_LAN_ID_0 0x00000000 /* LAN ID 0 */ #define IXGBE_STATUS_LAN_ID_1 0x00000004 /* LAN ID 1 */ @@ -2546,8 +2546,8 @@ enum { #define IXGBE_PCIDEVCTRL2_4_8s 0xd #define IXGBE_PCIDEVCTRL2_17_34s 0xe -/* Number of 100 microseconds we wait for PCI Express master disable */ -#define IXGBE_PCI_MASTER_DISABLE_TIMEOUT 800 +/* Number of 100 microseconds we wait for PCI Express primary disable */ +#define IXGBE_PCI_PRIMARY_DISABLE_TIMEOUT 800 /* Check whether address is multicast. This is little-endian specific check.*/ #define IXGBE_IS_MULTICAST(Address) \ @@ -4221,7 +4221,7 @@ struct ixgbe_hw { #define IXGBE_ERR_ADAPTER_STOPPED -9 #define IXGBE_ERR_INVALID_MAC_ADDR -10 #define IXGBE_ERR_DEVICE_NOT_SUPPORTED -11 -#define IXGBE_ERR_MASTER_REQUESTS_PENDING -12 +#define IXGBE_ERR_PRIMARY_REQUESTS_PENDING -12 #define IXGBE_ERR_INVALID_LINK_SETTINGS -13 #define IXGBE_ERR_AUTONEG_NOT_COMPLETE -14 #define IXGBE_ERR_RESET_FAILED -15 From nobody Fri Sep 27 03:36: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 4XFGN41ymWz5XQSw; Fri, 27 Sep 2024 03:36:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFGN4092Gz4nbn; Fri, 27 Sep 2024 03:36:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408180; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WjxJk7yDirKDx1/M97zxoxf9AQo3GqMkGplCGa0ltVQ=; b=w8VzlfEpoL/m954fhqxRe/Nl8+7KZlR6vJ2De683yJdH9Qq4FF2ExeyDbBFx9/6/Xfo/oP MnK0aMJq9qZAVvJfBTN+qZuxZGcp+h/2zgld+qiKwiZgleyui4ex+9E6BWE/k/obXqXPj8 FxrOgZvf5qk3iCqUk4ZrNR0eZg9A1qjCrx5xGafCKxBDGSJ3YVPA0LcMkRYhyzYpMPYgf5 nRChK7N4AAASs14/w5AkVfiyBXnZrBNG0I6H/1B5NpH09B529l2O6JMMHZKpNIg2v5Z/xS xpX5jb++nzwz27JpIgUa09PXqAb7yFTsy0/UWOk1F9NlGnhCarmY16QXyGoK2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408180; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WjxJk7yDirKDx1/M97zxoxf9AQo3GqMkGplCGa0ltVQ=; b=VNZ4CiKtGqk5bH+gUvu010jh50AlVtJyjc7i16Rt+9l4PPPeksyW9ONUqmccu795JietYd aPEpV2Xmpp+GOA+M8kcT0P76TK1OprMnbPBpA5V78ZDICCmozWvQEEOnGg7SLlQ5yb9llJ Z87UP6BLg0coG4qyUvYML57BjGAoX1z6O9DKLa4wYkENW+E5A293qv/xwKzvzzrwwnpZC+ ajBDqSpwv66nteZam78j0ajxUA4c1WH6xJmZN7pYZuq1b9AsC4H4gABAZsDSIrr8qPE1Yi V4ji5P8Eyv5bjAfg23e1XvFUSpsBLziBv66qLfbu/u18QJS83ls37Q74PzHKDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408180; a=rsa-sha256; cv=none; b=NPustT3j7nVFOq7YIYTnxEMLuPP8tX3ACMXJEIkkIqpXHA5xcun6PSZVMw4Zbe2FM8NLnv Bp3a+NYg1qctEup9LC8vkCSXCV97N47f5vTDFAZL+lzaLl/I0VovtnmCknVNrr/CUkmsiq OmA7yu5UcTk55ilpZkEa0RKLQC/0yoNTvqIiIZfqiOFF+7JHhZ1jzLpMa94I9zQTMljzA6 Wa3XHbmU61ttKOfv9RsragLy7kz7/CUKZffpuhgsj3VIZ0NKrp/2iGqrbA3KNqWZQ2Gouu 1ZT1RjOHcpZQURirCSWycxr4KSl5hhI2Se65l7/3uuX33wk3HyzVv5kQTD/YLQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN36GtnzPVD; Fri, 27 Sep 2024 03:36: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 48R3aJkk039110; Fri, 27 Sep 2024 03:36:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aJOF039107; Fri, 27 Sep 2024 03:36:19 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:19 GMT Message-Id: <202409270336.48R3aJOF039107@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: a160f29c69be - stable/14 - ixgbe: remove circular dependency in ixgbe_mbx.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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a160f29c69be620b2b6b4e02aa00c1b573e3989b Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a160f29c69be620b2b6b4e02aa00c1b573e3989b commit a160f29c69be620b2b6b4e02aa00c1b573e3989b Author: Barbara Skobiej AuthorDate: 2024-09-20 03:22:35 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:34:00 +0000 ixgbe: remove circular dependency in ixgbe_mbx.h DPDK commit message net/ixgbe/base: remove circular header dependency Including one header file in second header file should be avoided, so fix it by forward declaring the struct instead. Signed-off-by: Barbara Skobiej Obtained from: DPDK (0bc2af5) (cherry picked from commit 3167854b9d2188c4039239f741870e044b7507ac) --- sys/dev/ixgbe/ixgbe_mbx.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 7a982ce89f93..3a9bd34a137f 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -35,7 +35,7 @@ #ifndef _IXGBE_MBX_H_ #define _IXGBE_MBX_H_ -#include "ixgbe_type.h" +struct ixgbe_hw; struct ixgbe_mbx_operations { void (*init_params)(struct ixgbe_hw *hw); From nobody Fri Sep 27 03:36: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 4XFGN53vQ4z5XQLh; Fri, 27 Sep 2024 03:36: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 4XFGN50frwz4nfC; Fri, 27 Sep 2024 03:36:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7ts6ZxJ2KaBnp+fH6bUROG7psSO27fhP/ptQhGstGec=; b=FFMqTn3eemRbpRlli1fd6N6kzfe3dU9sJvr6vQiE/23dm1LFn6Z6Ik6sMc0BqretETcANV vRQ0hGDfrkhSAEjYi4DyPRXI3eIRw0WZTNkkJVjX6GxSDp6rPUkt/sRWkHZrxHC+MI/WOY xXSc1j0IHk6pS9ieKqDij+Y6CotLAK4Ld392VtFGvCge8UKcjeSy6bv01gV9rsZXocOFKc WHaiadcsOIFyg8qkIxETV3EHHInQaJlBJNiViFeP7QtDJRa2WeeBqC3NsdVuREVznJk2hc /XywsWjAi5BtpnG1hpTQ0kKVEf9jX680UFKn3apj1uJnfRA+3h8Bj6dud3gVow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7ts6ZxJ2KaBnp+fH6bUROG7psSO27fhP/ptQhGstGec=; b=jM0/uQ6+5BS2gsXtQXULGXf7EMPzdq0SLJpe3JgIRipdtqX4b8I4Yvvqq9Pg6qEN9bxR8U VEbWLp1RcrplhG94k4e0bkhFpi7/mxNTIgRzzAx8A/M+KqLoFEcHeCSqkNAvXoaSj87cc1 uou9eaa6R17XAZR3zsBB7CpHzFGde6yR1IHOPyWhV9I51rSLm7xHYh4EXiFgETpzxfdxFr 8OSF5DAAv+b4jmOp3Fxw2DmY6f2aWZiJxwszRAtWw9bwtrxLIMZkPHKLSu131cVg66LU0+ /5k2YhHe+Z8II/LqbILUa5wlb0SxhuZOV7fiwxlpgdNtj/vnlV8etZZaTc+MuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408181; a=rsa-sha256; cv=none; b=ETXwJstE3yznFQGfAHKEE5g6OdndVQ65ANDGtxjf4DrwTr+ZopuxrUiP4/kImnY1dF7RMK peXedfu0imoemuLsynNZHzLPRTnaHiFZP3jatHSA00ZtgWHY10BVsQczTpFpgsYTQ8w8da R9A9TFjyaTsLw7u0y3BJ6rXzxgSKxrtvC5S9Q/o40Hzla6h1R7CvMP5QZE3dIxKLMqJZEe +/fhySlWbMsUB02U4+cgHjCHKR+ke5xxKOE0F1sDPg75bHiUYLEsDRAXcJSb/DpfG90FYl TdZKc2ybiP64kRRL7Kq2rRDhQwyaeSTGoJeRCAS9JGpnLgfKZz8Sslw3ZYf6YQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN50D95zP59; Fri, 27 Sep 2024 03:36: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 48R3aKuP039154; Fri, 27 Sep 2024 03:36:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aKIg039151; Fri, 27 Sep 2024 03:36:20 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:20 GMT Message-Id: <202409270336.48R3aKIg039151@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: 64945a6b4b9e - stable/14 - ixgbe: add missing QV defines List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 64945a6b4b9e130a37db2d6d86048d93754badbc Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=64945a6b4b9e130a37db2d6d86048d93754badbc commit 64945a6b4b9e130a37db2d6d86048d93754badbc Author: Barbara Skobiej AuthorDate: 2024-09-20 03:27:21 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:34:14 +0000 ixgbe: add missing QV defines DPDK commit message net/ixgbe/base: add missing QV defines This patch adds missing QV defines: - offset of ANVM data - Immediate Field module pointer offset - 2.5GBASE-T and 5GBASE-T physical layer types for X550 Signed-off-by: Barbara Skobiej Signed-off-by: Jan Sokolowski Obtained from: DPDK (a730b83) (cherry picked from commit bfa48c32bc4099cb58b9fe7efab7f376475539ef) --- sys/dev/ixgbe/ixgbe_type.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index f34bf8dace64..dbcc6544133e 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -3105,6 +3105,7 @@ enum ixgbe_fdir_pballoc_type { #define FW_SHADOW_RAM_DUMP_LEN 0 #define FW_DEFAULT_CHECKSUM 0xFF /* checksum always 0xFF */ #define FW_NVM_DATA_OFFSET 3 +#define FW_ANVM_DATA_OFFSET 3 #define FW_MAX_READ_BUFFER_SIZE 1024 #define FW_DISABLE_RXEN_CMD 0xDE #define FW_DISABLE_RXEN_LEN 0x1 @@ -3176,6 +3177,8 @@ enum ixgbe_fdir_pballoc_type { #define FW_PHY_INFO_ID_HI_MASK 0xFFFF0000u #define FW_PHY_INFO_ID_LO_MASK 0x0000FFFFu +#define IXGBE_SR_IMMEDIATE_VALUES_PTR 0x4E + /* Host Interface Command Structures */ #pragma pack(push, 1) @@ -3479,6 +3482,8 @@ typedef u64 ixgbe_physical_layer; #define IXGBE_PHYSICAL_LAYER_1000BASE_SX 0x04000 #define IXGBE_PHYSICAL_LAYER_10BASE_T 0x08000 #define IXGBE_PHYSICAL_LAYER_2500BASE_KX 0x10000 +#define IXGBE_PHYSICAL_LAYER_2500BASE_T 0x20000 +#define IXGBE_PHYSICAL_LAYER_5000BASE_T 0x40000 /* Flow Control Data Sheet defined values * Calculation and defines taken from 802.1bb Annex O From nobody Fri Sep 27 03:36: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 4XFGN62z7Mz5XQ3g; Fri, 27 Sep 2024 03:36: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 4XFGN6252Sz4nhw; Fri, 27 Sep 2024 03:36:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DMBBw0cqhkPxr4BgT+G1wOP3XWbPD59DHtfq/jiIZqk=; b=ecKt45Rr5LfaoNDwLh55EGNMPDA3HU6KtxvjwILaTl17LhD81gfTv1/8M694rw6S3Na2DF RBG+4yK5zWKZBukCu2G6OPmCdvGTGVk3PWAHYpFPVLWMpTMIURM0rlVInyFVUrsEEZgSnH l/7+AsWhDOsCSapEjrkFMyMjer7znnhCNOeDs6BgQshHKtxvxIRc5tPo6OCRqmgd93L0fQ ayhi+jNRdGiHsEB7x2prcGiF4qThZy5ror+rA5+9oD614USAPYr6wGn5k8CjRQtcWphQ6A IFOQ+UF93cBW6WY0SQl2uf/jN7rTlg9sGsWGBEluTuzhD8UaFTbC8pJAz5iGJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DMBBw0cqhkPxr4BgT+G1wOP3XWbPD59DHtfq/jiIZqk=; b=PrR/YN30Q6BhMHkT+/k+57DkaWl/R8YYk9TdN/x5kBKN8kjCu4ZJfOGOU0i8YHWrOffkCg 9LwuV+yBKVEiqyMXmLZ2wFWJkTOTjvWMDwno2RxOUcRQaJiA1KHQ/yhU2gotNDV+zsd6L+ AQjkc/YYuX+wmEYJij/cRNyEciNRu/KPgfTI9A7+F0seNDidA3n/nA+hfWpnlNN6mX1VLn vLce0r8BjbCrJZ5U5bizW/tXsaDCH66TOniMzer8Vaz3SMWwjuIEdt3m8q3FwFSmrvyypL vUU/zmv8KhxH8eUlQGQDoAZuuzoEdQ1CM+j93jZ38tRxyjUCtqRcdTAF/rHjXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408182; a=rsa-sha256; cv=none; b=LMnUIfV7A9kqIZlXFKzx7jAZEL4Dj9yuR+mjc04ty3li7GDtynNYHVDFf9sPrTReT5/M4Z JuIex/X5LCNGCrsJxQTf1PJyfQqI+zNsQE1oPkeCC3ROJw64ZGoTf7tahBB0GochpUNmVD KNDdbVnZC2xssBjZxk9erlH1YNCtuknyWRL5SYu/mHZv4CrbIGbiaAW0sJDiiO01W7q0dx uFOQ7EbJ7/YIcBNlnhuOXQZb9Os0ewskgxvgNEKZVvzlzP8kVaEgGMaW6N8dHmQRZTu067 NuvZk6ZoDGzoyyQ2zCPKmFNje5YZHv1kRVWrfqc/mR4b9y0UUu85QnzpCs1Gkg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN610SFzP5B; Fri, 27 Sep 2024 03:36: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 48R3aMjG039202; Fri, 27 Sep 2024 03:36:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aMHr039199; Fri, 27 Sep 2024 03:36:22 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:22 GMT Message-Id: <202409270336.48R3aMHr039199@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: 2bff788d32d1 - stable/14 - ixgbe: improve Atom C3000 SWFW semaphore acq List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 2bff788d32d12ceb1e82866234b183aef30dc697 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2bff788d32d12ceb1e82866234b183aef30dc697 commit 2bff788d32d12ceb1e82866234b183aef30dc697 Author: Barbara Skobiej AuthorDate: 2024-09-20 03:29:36 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:34:27 +0000 ixgbe: improve Atom C3000 SWFW semaphore acq DPDK commit message net/ixgbe/base: improve SWFW semaphore acquisition HWSW semaphore acquisition in Atom C3000 NIC is a two stage process. Each time two semaphore acquisitions are required. Each second semaphore failure requires re-acquisition of first semaphore. This patch decouples the two acquisitions preventing potentially hundreds of thousands of unnecessary loop iterations. Signed-off-by: Barbara Skobiej Obtained from: DPDK (99f960c) (cherry picked from commit cc9944183187308a71489651b11342d293aac7d1) --- sys/dev/ixgbe/ixgbe_x550.c | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 961d5c285e51..ba72b5d1366e 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -4242,36 +4242,39 @@ static s32 ixgbe_acquire_swfw_sync_X550a(struct ixgbe_hw *hw, u32 mask) DEBUGFUNC("ixgbe_acquire_swfw_sync_X550a"); - while (--retries) { - status = IXGBE_SUCCESS; - if (hmask) - status = ixgbe_acquire_swfw_sync_X540(hw, hmask); - if (status) { - DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n", - status); - return status; - } - if (!(mask & IXGBE_GSSR_TOKEN_SM)) - return IXGBE_SUCCESS; + status = IXGBE_SUCCESS; + if (hmask) + status = ixgbe_acquire_swfw_sync_X540(hw, hmask); + + if (status) { + DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n", status); + return status; + } + + if (!(mask & IXGBE_GSSR_TOKEN_SM)) + return IXGBE_SUCCESS; + while (--retries) { status = ixgbe_get_phy_token(hw); - if (status == IXGBE_ERR_TOKEN_RETRY) - DEBUGOUT1("Could not acquire PHY token, Status = %d\n", - status); if (status == IXGBE_SUCCESS) return IXGBE_SUCCESS; - if (hmask) - ixgbe_release_swfw_sync_X540(hw, hmask); - if (status != IXGBE_ERR_TOKEN_RETRY) { - DEBUGOUT1("Unable to retry acquiring the PHY token, Status = %d\n", - status); + DEBUGOUT1("Retry acquiring the PHY token failed, Status = %d\n", status); + if (hmask) + ixgbe_release_swfw_sync_X540(hw, hmask); return status; } + + if (status == IXGBE_ERR_TOKEN_RETRY) + DEBUGOUT1("Could not acquire PHY token, Status = %d\n", + status); } + if (hmask) + ixgbe_release_swfw_sync_X540(hw, hmask); + DEBUGOUT1("Semaphore acquisition retries failed!: PHY ID = 0x%08X\n", hw->phy.id); return status; From nobody Fri Sep 27 03:36: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 4XFGN751Thz5XQQV; Fri, 27 Sep 2024 03:36: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 4XFGN72ksgz4nZ7; Fri, 27 Sep 2024 03:36:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OlZ/IB5wD112JsDPzN1Cmgn+1fhcWQIVbpIqz/745do=; b=Aa1AGHkA8PSQG0+uY/RzTBmIWNeh2Lj47HOYHbMu2V6dMpEyM0Eo8fzifDZTGyTeQjkVbb wq75RaahIKUWA1y/bgeFRuRaD+lXtgG+unj5wdMwTyzvve6imM3GEAa5Lw7XNqW4WrcA1Z 8t2vWtPqXG43zZeJC/IvDZXUQf0Q+MC/HAlsMOqFTajwa/ydy7kBbf/JxY0fiXhdswqysZ xJzKg1ZELtVhZk3v8ucVs6ykOkSHvCUYvNwebUHqYU5pBNE5iU+8AfGu9i1fL9TZh/Q9TU GiV8oX8uBBxvQLUMlqiO3exCJtaTg17V8zKZ6qdg1z7KV3/0YGWCWy913WzmzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OlZ/IB5wD112JsDPzN1Cmgn+1fhcWQIVbpIqz/745do=; b=N3fC1E51AAHlhNSjZvLp8dwb3vOU7LgBE41sTnsMZAGMzG2FI7UBNC8IfrBBdsidPZTFx8 r3O+rp2+wJLUBX//odTw2vFujcbyFr0b2Llw72tGBBi+6g4SxDDbgiG5P3aK6f7X92/Cg/ cIBrG8Nt9zca9i1/o+lcgjA+DfR1O0w4zcOLWjCq8m+BvzH0GCkM+QpXR19iujX5avIDjV i3pYZzxTg5C3lMgQosnCi9Cef2ZAq4DYmlv3yr0I821kjezgJsKlHbNQtWaMPdJu68OwQF 5waTL+620p7WYeg7OUTJD0+ETGjJatr2wGt0srxaMXtw4Ocn7ENM8GXwV9VlEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408183; a=rsa-sha256; cv=none; b=rSc43hM2yxOiFjkXKjmurWXL1Zue/B3DNrcdL/tIkkIdgq7BdyFdLTz0HIMXxVymtxIHnl aphR+Mdy2ZWUz4Z1lu9UA43BwhgTQObsClQGrYJZEm7cbrpAGRATKfSFCElTfXsJWfcbiG 8vMfvmks4eBk2y7r+RsEU3KCYhttPawvRW/dXLeLGyFcj9VCMF651YcDL2usIsvSWBHNn1 eagJatzhXa3o0dhFaXa4QrOwJr8djqsa1s5NsuO4cYkEh39J2mnzgvSDpY92JnTYninBm+ 0I8PcmXxpJzc/meHSwukRa5yNxnuK9CveAlT62Xpd0BsVD1P/kOClIasYOqf8A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN729VXzNx3; Fri, 27 Sep 2024 03:36: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 48R3aNrb039261; Fri, 27 Sep 2024 03:36:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aNiY039258; Fri, 27 Sep 2024 03:36:23 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:23 GMT Message-Id: <202409270336.48R3aNiY039258@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: 0ea3d1ca5e27 - stable/14 - ixgbe: prevent PBA read over eeprom word size List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 0ea3d1ca5e27b0af2573e0d7ca83ba5d113ed1c5 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=0ea3d1ca5e27b0af2573e0d7ca83ba5d113ed1c5 commit 0ea3d1ca5e27b0af2573e0d7ca83ba5d113ed1c5 Author: Dawid Zielinski AuthorDate: 2024-09-20 03:33:37 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:34:39 +0000 ixgbe: prevent PBA read over eeprom word size DPDK commit message net/ixgbe/base: prevent untrusted loop bound Added length check against EEPROM size in words to prevent untrusted loop bound reported by static code analysis. Signed-off-by: Dawid Zielinski Obtained from: DPDK (6b58617) (cherry picked from commit 25771c8c1ae606436823854de01fc2b23178e353) --- sys/dev/ixgbe/ixgbe_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 7cf9b8d05127..7643d4028529 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -713,7 +713,7 @@ s32 ixgbe_read_pba_string_generic(struct ixgbe_hw *hw, u8 *pba_num, return ret_val; } - if (length == 0xFFFF || length == 0) { + if (length == 0xFFFF || length == 0 || length > hw->eeprom.word_size) { DEBUGOUT("NVM PBA number section invalid length\n"); return IXGBE_ERR_PBA_SECTION; } From nobody Fri Sep 27 03:36:24 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 4XFGN84pSCz5XPxj; Fri, 27 Sep 2024 03:36: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 4XFGN83tn5z4nfk; Fri, 27 Sep 2024 03:36:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408184; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1eFN6YxNtOOaryyDU7hezHfipeYUoKx438w/3BqcNNw=; b=R1GXm12JHxNpqkhw9Ncg3bHpX4MIvJaDu/ZLa0/MMrzlq7jSPZ0mUH4Jv4FAKseLy6SmLs /tBWxNLQDyi7Z+wliywOTxRWim9KeOdOcPpxIDQHAlBF/uq86GIqp7kYP4Hs7+4m8BsKrN kOyWClI0QJ3AQ+wBcu5yAklh8/WOLnaDXj8TlTHF3jbNeDKnbtJBrSB/RMBjOq3eFEdGOC 4tMGIF/ElVBitUmToJRlBuiu8YdscvMuPpaZUmLBUw2zZk4bFjCaZGHeP+ioRYdu2yYlEp yhOTycCtH9YyO00WafLbTN+/NN7ehtw5BXOhFDwQ2t47SCD68PgLAC7L1WU6ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408184; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1eFN6YxNtOOaryyDU7hezHfipeYUoKx438w/3BqcNNw=; b=yzuCkIEwVPktKXIYhQjNe+qw8p0ES4vsIj2BnT1dfC0QXEBK20/HzDQja1EzTHIDPCnFIr rusiWWtmGwBR+4piPqNl0c09ji4zfCj2nw3NEPBB9VfoOuKLG3mrIJ1sz0xYNNhrCcAmUP e1E12kuYTEdZvvMtSpxWllX7JnYUCpblRJ3oLEvmaC1Zlwdu0bJlpRzXca2JD4tSqITRL1 RZeJIlhxk9UQc0REl2eoctGBiCvfHN0n2M1Wlrzl0PdLIriq2Cx5D4RBXLUgS0T5tREeFF tjDPJIm9ACvntGgH4klOiTAghhED4vnFTb46fBU+VoLcgh006V4Y6HLTGx/MKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408184; a=rsa-sha256; cv=none; b=R0doOIGRVvPtLJkP4pg7JLpreoHS62dWQQPoi96Nhlk55kV4b+bIyFMoVB+IKml7+Gz/M3 GINvPNk69lWbfBvq+ekCh8kmcT1Uo4BvXoy4K+N8pzJgcGF9PO9TK4BrRkqd60nqD4vX8L XxXi+2YdRvmfhn2uuJ6V9TKR6el+vFyqbeyYm06lNLOzdCcCNjTrFDdvXh3N3L3l9bGIT0 72r7JwgSyAvj9WP/87CSWjJgQpB9rq2jJq9oWFpFa/StFzpM5J6NoSF5nuJQFSLkyKCnj6 T4zhNg31Xf11dcMR1Ofwm9/arb+tlpikbLRf8b1299XdxIAMgYPfAOcs3m7NLg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN83R9rzP5C; Fri, 27 Sep 2024 03:36:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48R3aOcc039303; Fri, 27 Sep 2024 03:36:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aOB1039300; Fri, 27 Sep 2024 03:36:24 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:24 GMT Message-Id: <202409270336.48R3aOB1039300@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: 744014e62d6e - stable/14 - ixgbe: remove unused function prototypes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 744014e62d6ee5bd16c8ad92293b51e377c5df77 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=744014e62d6ee5bd16c8ad92293b51e377c5df77 commit 744014e62d6ee5bd16c8ad92293b51e377c5df77 Author: Chinh Cao AuthorDate: 2024-09-20 03:36:14 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:34:51 +0000 ixgbe: remove unused function prototypes DPDK commit message net/ixgbe/base: remove unused function prototypes There are some function prototypes that were introduced at some point but were never implemented, so remove them. Signed-off-by: Chinh Cao Obtained from: DPDK (e9cc1b4) (cherry picked from commit 420c984470270e0f7200124d8015236584aef243) --- sys/dev/ixgbe/ixgbe_api.h | 1 - sys/dev/ixgbe/ixgbe_x550.h | 1 - 2 files changed, 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_api.h b/sys/dev/ixgbe/ixgbe_api.h index 9134971d9c98..33c1cd1baeaf 100644 --- a/sys/dev/ixgbe/ixgbe_api.h +++ b/sys/dev/ixgbe/ixgbe_api.h @@ -148,7 +148,6 @@ u64 ixgbe_get_supported_physical_layer(struct ixgbe_hw *hw); s32 ixgbe_enable_rx_dma(struct ixgbe_hw *hw, u32 regval); s32 ixgbe_disable_sec_rx_path(struct ixgbe_hw *hw); s32 ixgbe_enable_sec_rx_path(struct ixgbe_hw *hw); -s32 ixgbe_mng_fw_enabled(struct ixgbe_hw *hw); s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw); s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 fdirctrl); s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 fdirctrl, diff --git a/sys/dev/ixgbe/ixgbe_x550.h b/sys/dev/ixgbe/ixgbe_x550.h index 45e4cad9f1f7..8bff5e3d2bf6 100644 --- a/sys/dev/ixgbe/ixgbe_x550.h +++ b/sys/dev/ixgbe/ixgbe_x550.h @@ -103,7 +103,6 @@ s32 ixgbe_write_phy_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, u16 phy_data); s32 ixgbe_setup_fc_fiber_x550em_a(struct ixgbe_hw *hw); s32 ixgbe_setup_fc_backplane_x550em_a(struct ixgbe_hw *hw); -s32 ixgbe_setup_fc_sgmii_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_fiber_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_backplane_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_sgmii_x550em_a(struct ixgbe_hw *hw); From nobody Fri Sep 27 03:36: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 4XFGNB0Cz2z5XQ3l; Fri, 27 Sep 2024 03:36: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 4XFGN94pMNz4nrd; Fri, 27 Sep 2024 03:36:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lvjmdwODhyYoJ0QEJGBln7erkYj3vNveV153QuGF3qc=; b=MmollUnMY4dp9/l7WmsX6sZjaHrxOtnyyhrrccgLh2OizEgbIuyEuEaIhQHn5DWG0dP7xi Jv69hvz9Si9I3cpHZN+pFRnqQSEJH9N+aOH6rvCcq6wrt6utZiw1hdyrfuHjaOIIsvgrEA DJteabWaAA5D1/7GGBuIN9bYUGOjjxTE0bGEfMtPbsH8yrfUoxeQ5XJG91c2jrcEMAMg8a MYQmhwyOrvEJES5DT0ElVdcSCbeLYNA/zDwGoq8a43Xu5GcX/I77U8/RVR7IO2woMbIF0t jrfMUXcJskxWFESWoklM5rTH/K8SgxAki7URgcUSiomDx4QuVgNvOPMpV7Qqcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lvjmdwODhyYoJ0QEJGBln7erkYj3vNveV153QuGF3qc=; b=t5ivy9paKnQ5vb/BLkU2ik1rvvVdTYwT1qz9pQppZTo2jSHABCBpgzxqGrDkck8W5b2XWC +DJKv4zpMdlfo9mZJqUkw9PT6qsCeIY5P5vUVA25IYeAbeBhBSPS+hUq+SaoGUB2FVpePV f9XTnJY+g8/T18wsaG3HAZrTSRRY2XK5EalfdQsfzIvIjPKnl+Mz4g4gJeSoPCETN45Wvu u2EOLUIjKGZ5Ealv39N8YWCnDZ+/1aknRoB4frOaNMp3HUrLusLrk7iKOnx1zmDVxlK8zp dzEXj8edo2e3P73SHBCh4J3fmFdb0ZcCZsiDN/Hl2QgkItlEMdNg4Qmq/Io+NQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408185; a=rsa-sha256; cv=none; b=aEX2CgKoCTbEyT/0LAC1BHJEwrPCjbVDnvuiK+c8tneRo8uU3DZ8tWsXGNWoz2GftFrOeL DrOre3e5IYLTf7+yLBr6EfCi0fISlIIL102uqyVagVzEHRFYcArqQkBl6DIY7+3mAz1yNG gCOTSGtI8J8XWwXCJ/8VVSgrRiN9YPpgdXiGl4IRAV8m03Vx4JyOwmE0TKI1Jx3eNHB8h4 C7/tVXnI3jGviGsR2T8+0+uS5eVwBZe7zYlUFYNEkEbrHKQeYkmSPFqf8ZXGUbr3cNFzCP 1BgsBIqLstK26wqrYRLirRLPOynbLre42cxtsvdQCS5GEjMLadvix8JrTT/TTQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGN94QblzNx4; Fri, 27 Sep 2024 03:36: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 48R3aP3i039345; Fri, 27 Sep 2024 03:36:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aPKg039342; Fri, 27 Sep 2024 03:36:25 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:25 GMT Message-Id: <202409270336.48R3aPKg039342@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: dcf7b92d48b6 - stable/14 - ixgbe: fix compilation for VF List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: dcf7b92d48b6db30851b8b73cff8c8ef34f8f97a Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=dcf7b92d48b6db30851b8b73cff8c8ef34f8f97a commit dcf7b92d48b6db30851b8b73cff8c8ef34f8f97a Author: Doug Moore AuthorDate: 2024-09-20 07:54:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:35:06 +0000 ixgbe: fix compilation for VF The mailbox API changed in version 15 and these array ops were left out of the recent code import as applicable to FreeBSD. Reported by: vishwin, yasu Differential Revision: https://reviews.freebsd.org/D46708 (cherry picked from commit 267f223f622fdbf779cc43b5a564bb02e2b59ecd) --- sys/dev/ixgbe/if_sriov.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index a16092c9f688..112c34849e65 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -100,7 +100,7 @@ ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - sc->hw.mbx.ops.write(&sc->hw, &msg, 1, vf->pool); + sc->hw.mbx.ops[0].write(&sc->hw, &msg, 1, vf->pool); } static inline void @@ -374,7 +374,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; - hw->mbx.ops.write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); + hw->mbx.ops[0].write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); } /* ixgbe_vf_reset_msg */ @@ -565,7 +565,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[IXGBE_VF_TRANS_VLAN] = (vf->default_vlan != 0); resp[IXGBE_VF_DEF_QUEUE] = 0; - hw->mbx.ops.write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); + hw->mbx.ops[0].write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); } /* ixgbe_vf_get_queues */ @@ -582,7 +582,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = hw->mbx.ops.read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = hw->mbx.ops[0].read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); if (error != 0) return; @@ -643,13 +643,13 @@ ixgbe_handle_mbx(void *context) vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) { - if (hw->mbx.ops.check_for_rst(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_rst(hw, vf->pool) == 0) ixgbe_process_vf_reset(sc, vf); - if (hw->mbx.ops.check_for_msg(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_msg(hw, vf->pool) == 0) ixgbe_process_vf_msg(ctx, vf); - if (hw->mbx.ops.check_for_ack(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_ack(hw, vf->pool) == 0) ixgbe_process_vf_ack(sc, vf); } } From nobody Fri Sep 27 03:36: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 4XFGNB6yZ3z5XQ3m; Fri, 27 Sep 2024 03:36: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 4XFGNB5dFdz4nb4; Fri, 27 Sep 2024 03:36:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HqG1IgzZ+d+YxVIzm9RgOGZP29qhxe/0GVrquvunU6M=; b=nU8vzXLh2Hup16MOGYx7M/QI31K1Ied6GIMeNXoD+x42eNB1TQX94NU2Az9R5ehsCiJf/i VhkrWaYoPWMoLHUPS99Lk71y9GCO/boJat+F6px30YPt5/MfdxnI6FVsf/hfcrw0PdhY9t de07KqautUh6Lx53roGyjmXDxSGzoOJ8M+6faHJ6fFzbSge8vqRzFtNzaRMk35TQ8eyf9R 1YxgSPMNqXJGC8UC8JLRgL+U/jVuRozJktBXY4EECBqYyNniRcjGMOvsOba9vsLdAEwWNu mEO2Q358Tcsupdk/idg0Fbp3XHDXQYLC7/wushzhf/9n2F6H4FECOxfyS0xpdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HqG1IgzZ+d+YxVIzm9RgOGZP29qhxe/0GVrquvunU6M=; b=h4GYG9lmB1Hz3j3auk/XG0O2fFdX3n2IBDaNlnGmEf5Xgpr8Ib9fGaepYZ3JceGV+gbV5t swkEO2BuT6i9QRxW5LzbR2/Z4uMao5mvWk7b8N251zDwg5bS/k0RGsbNknrLBWQ5VFUP3T IihWudXrc3Gh/m96sbu0W0WtE5lYVlMrqC/YDbzczIoOgVc8gael4BdLYXF4lmtGUPi8cP VmZZD8uGX6nxc0aA/8Ax20JHWBt8VTfeEmzlJS6ehowqTaQtAGU83+xEZqVcyPbnKMwZMC Pqa1oInokjwVK+h8tpxWPQ5OLoMvRfvWYUF0YnNJn88/k8pVnDI2WwUFFfhpwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408186; a=rsa-sha256; cv=none; b=ND37+c0/W6kKjs41J3vE8ytLyGX/zeQo8md+mAlDeC33cDx96ZAcejWCzkpv+GG+ALHZes 9EboXqubcWxfdFq3a1YnilOxJTfFaSXI+zeE/qtGRPXldGt8bUamFB7L+AIFZ813QsLRnD YqoXryt3raW+isuqaNHsQP5zrKGIeo7u5DMWWI4RVa4A+WVyNMi4ZaCtFgZOg8BVVW4v/F Sk5qXvR+FGS7SRoCCBTw0GVvKKXOG4kGvy6KmLWcz7EhzduzOM7NY3XxNxH8P3wI++zZpC gwXzWWVeMY0ETc4rx5Rl2oRLL7CgRtzePEA5gCuRWR2q3cVcoNgMK5Apgk0fvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGNB56DDzNx5; Fri, 27 Sep 2024 03:36: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 48R3aQZi039400; Fri, 27 Sep 2024 03:36:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3aQ6k039396; Fri, 27 Sep 2024 03:36:26 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:36:26 GMT Message-Id: <202409270336.48R3aQ6k039396@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: 6828020a6b9a - stable/14 - ixgbe: update if_sriov to use the new mailbox apis List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6828020a6b9a869ccc15c02fa9571357b3bcc2a6 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=6828020a6b9a869ccc15c02fa9571357b3bcc2a6 commit 6828020a6b9a869ccc15c02fa9571357b3bcc2a6 Author: Kevin Bowling AuthorDate: 2024-09-21 03:26:42 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:35:24 +0000 ixgbe: update if_sriov to use the new mailbox apis This fixes a page fault when creating VFs and updates to the new mailbox API and naming conventions. The functionality works to the same level that it did before my recent changes. In particular on my 82599 it creates both passthru and ixv interfaces. In either case, the PF seems to lose the ability to pass traffic. The ixv driver fails to attach. These issues are present with or without my updates. If you use SR-IOV on ixgbe I would be interested in hearing what does or does not work for you. (cherry picked from commit 36c516b31136f645472c12d8597534656272acd6) --- sys/dev/ixgbe/if_sriov.c | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 112c34849e65..eab5ff8f5da0 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -100,18 +100,18 @@ ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - sc->hw.mbx.ops[0].write(&sc->hw, &msg, 1, vf->pool); + ixgbe_write_mbx(&sc->hw, &msg, 1, vf->pool); } static inline void -ixgbe_send_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_success(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void -ixgbe_send_vf_nack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_failure(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); @@ -121,7 +121,7 @@ static inline void ixgbe_process_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf) { if (!(vf->flags & IXGBE_VF_CTS)) - ixgbe_send_vf_nack(sc, vf, 0); + ixgbe_send_vf_failure(sc, vf, 0); } static inline boolean_t @@ -374,7 +374,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; - hw->mbx.ops[0].write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); + ixgbe_write_mbx(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); } /* ixgbe_vf_reset_msg */ @@ -387,12 +387,12 @@ ixgbe_vf_set_mac(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) /* Check that the VF has permission to change the MAC address. */ if (!(vf->flags & IXGBE_VF_CAP_MAC) && ixgbe_vf_mac_changed(vf, mac)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } if (ixgbe_validate_mac_addr(mac) != 0) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } @@ -401,7 +401,7 @@ ixgbe_vf_set_mac(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) ixgbe_set_rar(&sc->hw, vf->rar_index, vf->ether_addr, vf->pool, true); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_mac */ @@ -435,7 +435,7 @@ ixgbe_vf_set_mc_addr(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 *msg) vmolr |= IXGBE_VMOLR_ROMPE; IXGBE_WRITE_REG(&sc->hw, IXGBE_VMOLR(vf->pool), vmolr); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_mc_addr */ @@ -451,18 +451,18 @@ ixgbe_vf_set_vlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) tag = msg[1] & IXGBE_VLVF_VLANID_MASK; if (!(vf->flags & IXGBE_VF_CAP_VLAN)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } /* It is illegal to enable vlan tag 0. */ if (tag == 0 && enable != 0) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } ixgbe_set_vfta(hw, tag, vf->pool, enable, false); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_vlan */ @@ -477,7 +477,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (vf_max_size < ETHER_CRC_LEN) { /* We intentionally ACK invalid LPE requests. */ - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -485,7 +485,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (vf_max_size > IXGBE_MAX_FRAME_SIZE) { /* We intentionally ACK invalid LPE requests. */ - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -507,7 +507,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) IXGBE_WRITE_REG(hw, IXGBE_MHADD, mhadd); } - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_lpe */ @@ -516,7 +516,7 @@ ixgbe_vf_set_macvlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) { //XXX implement this - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); } /* ixgbe_vf_set_macvlan */ @@ -529,11 +529,11 @@ ixgbe_vf_api_negotiate(struct ixgbe_softc *sc, struct ixgbe_vf *vf, case IXGBE_API_VER_1_0: case IXGBE_API_VER_1_1: vf->api_ver = msg[1]; - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); break; default: vf->api_ver = IXGBE_API_VER_UNKNOWN; - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); break; } } /* ixgbe_vf_api_negotiate */ @@ -552,7 +552,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) switch (msg[0]) { case IXGBE_API_VER_1_0: case IXGBE_API_VER_UNKNOWN: - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } @@ -565,7 +565,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[IXGBE_VF_TRANS_VLAN] = (vf->default_vlan != 0); resp[IXGBE_VF_DEF_QUEUE] = 0; - hw->mbx.ops[0].write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); + ixgbe_write_mbx(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); } /* ixgbe_vf_get_queues */ @@ -582,7 +582,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = hw->mbx.ops[0].read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = ixgbe_read_mbx(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); if (error != 0) return; @@ -595,7 +595,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) } if (!(vf->flags & IXGBE_VF_CTS)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -622,7 +622,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) ixgbe_vf_get_queues(sc, vf, msg); break; default: - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); } } /* ixgbe_process_vf_msg */ From nobody Fri Sep 27 03:41: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 4XFGV551T8z5XQft; Fri, 27 Sep 2024 03:41: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 4XFGV54pRtz4rqf; Fri, 27 Sep 2024 03:41:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408493; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XkONyva/zBrzBZqm6r0zy4N8lpoTOsY48JQ2OiTlb4U=; b=mmutAsD9cDN1ymM1VquriVt5fsRi/G6SQftFMkwW1wmXUQa7lSCfEa+F6sOH1IGw2jLbuE LgUj3Fnzc8nDuQ8Rax2cRV8oZ3c8otkuPNpImLCRlp0q0k9r8U7JjTxOKXfXe0WcAHzrom Dxn0YwcuSdxVvuAZZ5y7Xo9T9YZo0wi5QG3/L1q496UAcc1e9Z3J3rpRZiHBUW1IOrjLJS CeoLWtXpics6j2pX7UOTwEMBsTEoCnTCpdb9o316Fb0KnoXjB2EFprt1Ginu06RZT3YiiL Gyeqz0fXCRxZSLymPo6wjL6YM+THbPwZMc5LZUqZFqszzg0U8dSBR0vz2hn+Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408493; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XkONyva/zBrzBZqm6r0zy4N8lpoTOsY48JQ2OiTlb4U=; b=wga5aUzkFehqXGVnmUcgN2aUWqvnRDloil609XE7+H1MfEmL/mYRj7A6XaExAvk8dRC+Jc NG91Xu89wLptOv6BXi7FxJzFhSCEaMLe42tCjAxNAdhT16NIsyyG+uiD9TYgiTgJpTlwbm zlAm9nkbS/8IkTfXg8tkq/9nS2nX26kA8RLPLF6yC3HpVcdRpSnst2AlBIA/1PUaStHiV0 8m5obJX4Qu6VQ01OhKTRYKmjZUPsHlmgHR9L6JBZratglh2G8ETTZJiq+NxjwES1grGoEB Lb8Pw5o0Hh4dJYlbjhtk9o+4NtV6AROrtos+NXPnahLLVFMef6/QAVpEBIQxlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408493; a=rsa-sha256; cv=none; b=YnHsl8lx2wHrsZD5KFFBys6qipTRouXaNEGgv3WPuIXXYr5a0iesdYp+UZSvxrZkTPPgcG +PqLVbXHMZjof4giSZTRS3hBnr14rWmcVWClFSMsvlwdBkb2jiKCuuwdX0UwkukUd+4m9F GqisQMQbLhlM1K/MK/tNdt4/h22U3LEVHgN13GtjUpx6lGA0zqz4E8QH+AQE06QtupzSUu 1eFAmTSjxZTrCZWChHMlObLtc8LYc90BrmJFMFgGk81mK+PrOd9bg+q8HCxWHqDQ61bq5r TzA4TRKXc/Pin4tveFUG15bmBzDSus0xhXYNfi8/oCt7HaI86jljoXjNS31awQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGV54PWDzP5X; Fri, 27 Sep 2024 03:41: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 48R3fXgQ055184; Fri, 27 Sep 2024 03:41:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fXYD055181; Fri, 27 Sep 2024 03:41:33 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:33 GMT Message-Id: <202409270341.48R3fXYD055181@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: 1b7b58a07a65 - stable/13 - ixgbe: introduce new mailbox API List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 1b7b58a07a65506f2b4d38bc0567874c4794f312 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=1b7b58a07a65506f2b4d38bc0567874c4794f312 commit 1b7b58a07a65506f2b4d38bc0567874c4794f312 Author: Jakub Chylkowski AuthorDate: 2024-09-20 02:30:39 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:38:29 +0000 ixgbe: introduce new mailbox API DPDK commit message Current mailbox API does not work as described in documentation and is prone to errors (for example, it is doing locks on read). Introduce new mailbox API and provide compatibility functions with old API. New error codes have been introduced: - IXGBE_ERR_CONFIG - ixgbe_mbx_operations is not correctly set - IXGBE_ERR_TIMEOUT - mailbox operation, e.g. poll for message, timedout - IXGBE_ERR_MBX_NOMSG - no message available on read In addition, some refactoring has been done: mailbox structures were defined twice: in ixgbe_type.h and ixgbe_vf.h. Move them into ixgbe_mbx.h as this header is dedicated for mailbox. Signed-off-by: Jakub Chylkowski Reviewed-by: Alice Michael Reviewed-by: Piotr Pietruszewski Tested-by: Alice Michael Tested-by: Piotr Skajewski Obtained from: DPDK (6d243d2) Reapply message This reverts commit d80c12ba682a6f23791f3d6e657f9e603b152aa2. (cherry picked from commit 7234c3099947d202702e98d844ecd2d649c834d2) --- sys/dev/ixgbe/if_ix.c | 8 +- sys/dev/ixgbe/ixgbe_82599.c | 4 +- sys/dev/ixgbe/ixgbe_mbx.c | 839 ++++++++++++++++++++++++++++++++------------ sys/dev/ixgbe/ixgbe_mbx.h | 59 +++- sys/dev/ixgbe/ixgbe_type.h | 32 +- sys/dev/ixgbe/ixgbe_vf.c | 42 ++- sys/dev/ixgbe/ixgbe_x540.c | 4 +- 7 files changed, 699 insertions(+), 289 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index e265fa77ba4b..e9e5ae980b42 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -880,6 +880,7 @@ ixgbe_if_attach_pre(if_ctx_t ctx) struct ixgbe_hw *hw; int error = 0; u32 ctrl_ext; + size_t i; INIT_DEBUGOUT("ixgbe_attach: begin"); @@ -929,8 +930,11 @@ ixgbe_if_attach_pre(if_ctx_t ctx) goto err_pci; } - if (hw->mbx.ops.init_params) - hw->mbx.ops.init_params(hw); + /* 82598 Does not support SR-IOV, initialize everything else */ + if (hw->mac.type >= ixgbe_mac_82599_vf) { + for (i = 0; i < sc->num_vfs; i++) + hw->mbx.ops[i].init_params(hw); + } hw->allow_unsupported_sfp = allow_unsupported_sfp; diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index 8c3df0fd4f59..70b4cdc5c6ca 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -324,6 +324,7 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw) struct ixgbe_phy_info *phy = &hw->phy; struct ixgbe_eeprom_info *eeprom = &hw->eeprom; s32 ret_val; + u16 i; DEBUGFUNC("ixgbe_init_ops_82599"); @@ -385,7 +386,8 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw *hw) mac->arc_subsystem_valid = !!(IXGBE_READ_REG(hw, IXGBE_FWSM_BY_MAC(hw)) & IXGBE_FWSM_MODE_MASK); - hw->mbx.ops.init_params = ixgbe_init_mbx_params_pf; + for (i = 0; i < 64; i++) + hw->mbx.ops[i].init_params = ixgbe_init_mbx_params_pf; /* EEPROM */ eeprom->ops.read = ixgbe_read_eeprom_82599; diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index c8f839fce85a..0a0c5abde157 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -35,6 +35,9 @@ #include "ixgbe_type.h" #include "ixgbe_mbx.h" +static s32 ixgbe_poll_for_msg(struct ixgbe_hw *hw, u16 mbx_id); +static s32 ixgbe_poll_for_ack(struct ixgbe_hw *hw, u16 mbx_id); + /** * ixgbe_read_mbx - Reads a message from the mailbox * @hw: pointer to the HW structure @@ -47,42 +50,91 @@ s32 ixgbe_read_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_read_mbx"); /* limit read to size of mailbox */ - if (size > mbx->size) + if (size > mbx->size) { + ERROR_REPORT3(IXGBE_ERROR_ARGUMENT, + "Invalid mailbox message size %u, changing to %u", + size, mbx->size); + size = mbx->size; + } + + if (mbx->ops[mbx_id].read) + return mbx->ops[mbx_id].read(hw, msg, size, mbx_id); + + return IXGBE_ERR_CONFIG; +} + +/** + * ixgbe_poll_mbx - Wait for message and read it from the mailbox + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to read + * + * returns SUCCESS if it successfully read message from buffer + **/ +s32 ixgbe_poll_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + s32 ret_val; + + DEBUGFUNC("ixgbe_poll_mbx"); + + if (!mbx->ops[mbx_id].read || !mbx->ops[mbx_id].check_for_msg || + !mbx->timeout) + return IXGBE_ERR_CONFIG; + + /* limit read to size of mailbox */ + if (size > mbx->size) { + ERROR_REPORT3(IXGBE_ERROR_ARGUMENT, + "Invalid mailbox message size %u, changing to %u", + size, mbx->size); size = mbx->size; + } - if (mbx->ops.read) - ret_val = mbx->ops.read(hw, msg, size, mbx_id); + ret_val = ixgbe_poll_for_msg(hw, mbx_id); + /* if ack received read message, otherwise we timed out */ + if (!ret_val) + return mbx->ops[mbx_id].read(hw, msg, size, mbx_id); return ret_val; } /** - * ixgbe_write_mbx - Write a message to the mailbox + * ixgbe_write_mbx - Write a message to the mailbox and wait for ACK * @hw: pointer to the HW structure * @msg: The message buffer * @size: Length of buffer * @mbx_id: id of mailbox to write * - * returns SUCCESS if it successfully copied message into the buffer + * returns SUCCESS if it successfully copied message into the buffer and + * received an ACK to that message within specified period **/ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_SUCCESS; + s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_write_mbx"); + /* + * exit if either we can't write, release + * or there is no timeout defined + */ + if (!mbx->ops[mbx_id].write || !mbx->ops[mbx_id].check_for_ack || + !mbx->ops[mbx_id].release || !mbx->timeout) + return IXGBE_ERR_CONFIG; + if (size > mbx->size) { - ret_val = IXGBE_ERR_MBX; + ret_val = IXGBE_ERR_PARAM; ERROR_REPORT2(IXGBE_ERROR_ARGUMENT, - "Invalid mailbox message size %d", size); - } else if (mbx->ops.write) - ret_val = mbx->ops.write(hw, msg, size, mbx_id); + "Invalid mailbox message size %u", size); + } else { + ret_val = mbx->ops[mbx_id].write(hw, msg, size, mbx_id); + } return ret_val; } @@ -97,12 +149,12 @@ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_msg"); - if (mbx->ops.check_for_msg) - ret_val = mbx->ops.check_for_msg(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_msg) + ret_val = mbx->ops[mbx_id].check_for_msg(hw, mbx_id); return ret_val; } @@ -117,12 +169,12 @@ s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id) s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_ack"); - if (mbx->ops.check_for_ack) - ret_val = mbx->ops.check_for_ack(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_ack) + ret_val = mbx->ops[mbx_id].check_for_ack(hw, mbx_id); return ret_val; } @@ -137,12 +189,12 @@ s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id) s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id) { struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; + s32 ret_val = IXGBE_ERR_CONFIG; DEBUGFUNC("ixgbe_check_for_rst"); - if (mbx->ops.check_for_rst) - ret_val = mbx->ops.check_for_rst(hw, mbx_id); + if (mbx->ops[mbx_id].check_for_rst) + ret_val = mbx->ops[mbx_id].check_for_rst(hw, mbx_id); return ret_val; } @@ -161,22 +213,23 @@ static s32 ixgbe_poll_for_msg(struct ixgbe_hw *hw, u16 mbx_id) DEBUGFUNC("ixgbe_poll_for_msg"); - if (!countdown || !mbx->ops.check_for_msg) - goto out; + if (!countdown || !mbx->ops[mbx_id].check_for_msg) + return IXGBE_ERR_CONFIG; - while (countdown && mbx->ops.check_for_msg(hw, mbx_id)) { + while (countdown && mbx->ops[mbx_id].check_for_msg(hw, mbx_id)) { countdown--; if (!countdown) break; usec_delay(mbx->usec_delay); } - if (countdown == 0) + if (countdown == 0) { ERROR_REPORT2(IXGBE_ERROR_POLLING, - "Polling for VF%d mailbox message timedout", mbx_id); + "Polling for VF%u mailbox message timedout", mbx_id); + return IXGBE_ERR_TIMEOUT; + } -out: - return countdown ? IXGBE_SUCCESS : IXGBE_ERR_MBX; + return IXGBE_SUCCESS; } /** @@ -193,115 +246,71 @@ static s32 ixgbe_poll_for_ack(struct ixgbe_hw *hw, u16 mbx_id) DEBUGFUNC("ixgbe_poll_for_ack"); - if (!countdown || !mbx->ops.check_for_ack) - goto out; + if (!countdown || !mbx->ops[mbx_id].check_for_ack) + return IXGBE_ERR_CONFIG; - while (countdown && mbx->ops.check_for_ack(hw, mbx_id)) { + while (countdown && mbx->ops[mbx_id].check_for_ack(hw, mbx_id)) { countdown--; if (!countdown) break; usec_delay(mbx->usec_delay); } - if (countdown == 0) + if (countdown == 0) { ERROR_REPORT2(IXGBE_ERROR_POLLING, - "Polling for VF%d mailbox ack timedout", mbx_id); + "Polling for VF%u mailbox ack timedout", mbx_id); + return IXGBE_ERR_TIMEOUT; + } -out: - return countdown ? IXGBE_SUCCESS : IXGBE_ERR_MBX; + return IXGBE_SUCCESS; } /** - * ixgbe_read_posted_mbx - Wait for message notification and receive message + * ixgbe_read_mailbox_vf - read VF's mailbox register * @hw: pointer to the HW structure - * @msg: The message buffer - * @size: Length of buffer - * @mbx_id: id of mailbox to write * - * returns SUCCESS if it successfully received a message notification and - * copied it into the receive buffer. + * This function is used to read the mailbox register dedicated for VF without + * losing the read to clear status bits. **/ -s32 ixgbe_read_posted_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static u32 ixgbe_read_mailbox_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; - - DEBUGFUNC("ixgbe_read_posted_mbx"); - - if (!mbx->ops.read) - goto out; + u32 vf_mailbox = IXGBE_READ_REG(hw, IXGBE_VFMAILBOX); - ret_val = ixgbe_poll_for_msg(hw, mbx_id); + vf_mailbox |= hw->mbx.vf_mailbox; + hw->mbx.vf_mailbox |= vf_mailbox % IXGBE_VFMAILBOX_R2C_BITS; - /* if ack received read message, otherwise we timed out */ - if (!ret_val) - ret_val = mbx->ops.read(hw, msg, size, mbx_id); -out: - return ret_val; + return vf_mailbox; } -/** - * ixgbe_write_posted_mbx - Write a message to the mailbox, wait for ack - * @hw: pointer to the HW structure - * @msg: The message buffer - * @size: Length of buffer - * @mbx_id: id of mailbox to write - * - * returns SUCCESS if it successfully copied message into the buffer and - * received an ack to that message within delay * timeout period - **/ -s32 ixgbe_write_posted_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static void ixgbe_clear_msg_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; - s32 ret_val = IXGBE_ERR_MBX; - - DEBUGFUNC("ixgbe_write_posted_mbx"); - - /* exit if either we can't write or there isn't a defined timeout */ - if (!mbx->ops.write || !mbx->timeout) - goto out; - - /* send msg */ - ret_val = mbx->ops.write(hw, msg, size, mbx_id); + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - /* if msg sent wait until we receive an ack */ - if (!ret_val) - ret_val = ixgbe_poll_for_ack(hw, mbx_id); -out: - return ret_val; + if (vf_mailbox & IXGBE_VFMAILBOX_PFSTS) { + hw->mbx.stats.reqs++; + hw->mbx.vf_mailbox &= ~IXGBE_VFMAILBOX_PFSTS; + } } -/** - * ixgbe_init_mbx_ops_generic - Initialize MB function pointers - * @hw: pointer to the HW structure - * - * Setups up the mailbox read and write message function pointers - **/ -void ixgbe_init_mbx_ops_generic(struct ixgbe_hw *hw) +static void ixgbe_clear_ack_vf(struct ixgbe_hw *hw) { - struct ixgbe_mbx_info *mbx = &hw->mbx; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - mbx->ops.read_posted = ixgbe_read_posted_mbx; - mbx->ops.write_posted = ixgbe_write_posted_mbx; + if (vf_mailbox & IXGBE_VFMAILBOX_PFACK) { + hw->mbx.stats.acks++; + hw->mbx.vf_mailbox &= ~IXGBE_VFMAILBOX_PFACK; + } } -/** - * ixgbe_read_v2p_mailbox - read v2p mailbox - * @hw: pointer to the HW structure - * - * This function is used to read the v2p mailbox without losing the read to - * clear status bits. - **/ -static u32 ixgbe_read_v2p_mailbox(struct ixgbe_hw *hw) +static void ixgbe_clear_rst_vf(struct ixgbe_hw *hw) { - u32 v2p_mailbox = IXGBE_READ_REG(hw, IXGBE_VFMAILBOX); - - v2p_mailbox |= hw->mbx.v2p_mailbox; - hw->mbx.v2p_mailbox |= v2p_mailbox & IXGBE_VFMAILBOX_R2C_BITS; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - return v2p_mailbox; + if (vf_mailbox & (IXGBE_VFMAILBOX_RSTI | IXGBE_VFMAILBOX_RSTD)) { + hw->mbx.stats.rsts++; + hw->mbx.vf_mailbox &= ~(IXGBE_VFMAILBOX_RSTI | + IXGBE_VFMAILBOX_RSTD); + } } /** @@ -314,15 +323,12 @@ static u32 ixgbe_read_v2p_mailbox(struct ixgbe_hw *hw) **/ static s32 ixgbe_check_for_bit_vf(struct ixgbe_hw *hw, u32 mask) { - u32 v2p_mailbox = ixgbe_read_v2p_mailbox(hw); - s32 ret_val = IXGBE_ERR_MBX; + u32 vf_mailbox = ixgbe_read_mailbox_vf(hw); - if (v2p_mailbox & mask) - ret_val = IXGBE_SUCCESS; + if (vf_mailbox & mask) + return IXGBE_SUCCESS; - hw->mbx.v2p_mailbox &= ~mask; - - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -334,17 +340,13 @@ static s32 ixgbe_check_for_bit_vf(struct ixgbe_hw *hw, u32 mask) **/ static s32 ixgbe_check_for_msg_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_msg_vf"); - if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFSTS)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.reqs++; - } + if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFSTS)) + return IXGBE_SUCCESS; - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -356,17 +358,16 @@ static s32 ixgbe_check_for_msg_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_check_for_ack_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_ack_vf"); if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_PFACK)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.acks++; + /* TODO: should this be autocleared? */ + ixgbe_clear_ack_vf(hw); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -378,18 +379,17 @@ static s32 ixgbe_check_for_ack_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_check_for_rst_vf(struct ixgbe_hw *hw, u16 mbx_id) { - s32 ret_val = IXGBE_ERR_MBX; - UNREFERENCED_1PARAMETER(mbx_id); DEBUGFUNC("ixgbe_check_for_rst_vf"); - if (!ixgbe_check_for_bit_vf(hw, (IXGBE_VFMAILBOX_RSTD | - IXGBE_VFMAILBOX_RSTI))) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.rsts++; + if (!ixgbe_check_for_bit_vf(hw, IXGBE_VFMAILBOX_RSTI | + IXGBE_VFMAILBOX_RSTD)) { + /* TODO: should this be autocleared? */ + ixgbe_clear_rst_vf(hw); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** @@ -400,20 +400,114 @@ static s32 ixgbe_check_for_rst_vf(struct ixgbe_hw *hw, u16 mbx_id) **/ static s32 ixgbe_obtain_mbx_lock_vf(struct ixgbe_hw *hw) { + struct ixgbe_mbx_info *mbx = &hw->mbx; + int countdown = mbx->timeout; s32 ret_val = IXGBE_ERR_MBX; + u32 vf_mailbox; DEBUGFUNC("ixgbe_obtain_mbx_lock_vf"); - /* Take ownership of the buffer */ - IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_VFU); + if (!mbx->timeout) + return IXGBE_ERR_CONFIG; - /* reserve mailbox for vf use */ - if (ixgbe_read_v2p_mailbox(hw) & IXGBE_VFMAILBOX_VFU) - ret_val = IXGBE_SUCCESS; + while (countdown--) { + /* Reserve mailbox for VF use */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_VFU; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* Verify that VF is the owner of the lock */ + if (ixgbe_read_mailbox_vf(hw) & IXGBE_VFMAILBOX_VFU) { + ret_val = IXGBE_SUCCESS; + break; + } + + /* Wait a bit before trying again */ + usec_delay(mbx->usec_delay); + } + + if (ret_val != IXGBE_SUCCESS) { + ERROR_REPORT1(IXGBE_ERROR_INVALID_STATE, + "Failed to obtain mailbox lock"); + ret_val = IXGBE_ERR_TIMEOUT; + } return ret_val; } +/** + * ixgbe_release_mbx_lock_dummy - release mailbox lock + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to read + **/ +static void ixgbe_release_mbx_lock_dummy(struct ixgbe_hw *hw, u16 mbx_id) +{ + UNREFERENCED_2PARAMETER(hw, mbx_id); + + DEBUGFUNC("ixgbe_release_mbx_lock_dummy"); +} + +/** + * ixgbe_release_mbx_lock_vf - release mailbox lock + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to read + **/ +static void ixgbe_release_mbx_lock_vf(struct ixgbe_hw *hw, u16 mbx_id) +{ + u32 vf_mailbox; + + UNREFERENCED_1PARAMETER(mbx_id); + + DEBUGFUNC("ixgbe_release_mbx_lock_vf"); + + /* Return ownership of the buffer */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox &= ~IXGBE_VFMAILBOX_VFU; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); +} + +/** + * ixgbe_write_mbx_vf_legacy - Write a message to the mailbox + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to write + * + * returns SUCCESS if it successfully copied message into the buffer + **/ +static s32 ixgbe_write_mbx_vf_legacy(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) +{ + s32 ret_val; + u16 i; + + UNREFERENCED_1PARAMETER(mbx_id); + DEBUGFUNC("ixgbe_write_mbx_vf_legacy"); + + /* lock the mailbox to prevent pf/vf race condition */ + ret_val = ixgbe_obtain_mbx_lock_vf(hw); + if (ret_val) + return ret_val; + + /* flush msg and acks as we are overwriting the message buffer */ + ixgbe_check_for_msg_vf(hw, 0); + ixgbe_clear_msg_vf(hw); + ixgbe_check_for_ack_vf(hw, 0); + ixgbe_clear_ack_vf(hw); + + /* copy the caller specified message to the mailbox memory buffer */ + for (i = 0; i < size; i++) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_VFMBMEM, i, msg[i]); + + /* update stats */ + hw->mbx.stats.msgs_tx++; + + /* interrupt the PF to tell it a message has been sent */ + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_REQ); + + return IXGBE_SUCCESS; +} + /** * ixgbe_write_mbx_vf - Write a message to the mailbox * @hw: pointer to the HW structure @@ -426,6 +520,7 @@ static s32 ixgbe_obtain_mbx_lock_vf(struct ixgbe_hw *hw) static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id) { + u32 vf_mailbox; s32 ret_val; u16 i; @@ -436,11 +531,11 @@ static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* lock the mailbox to prevent pf/vf race condition */ ret_val = ixgbe_obtain_mbx_lock_vf(hw); if (ret_val) - goto out_no_write; + goto out; /* flush msg and acks as we are overwriting the message buffer */ - ixgbe_check_for_msg_vf(hw, 0); - ixgbe_check_for_ack_vf(hw, 0); + ixgbe_clear_msg_vf(hw); + ixgbe_clear_ack_vf(hw); /* copy the caller specified message to the mailbox memory buffer */ for (i = 0; i < size; i++) @@ -449,15 +544,22 @@ static s32 ixgbe_write_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* update stats */ hw->mbx.stats.msgs_tx++; - /* Drop VFU and interrupt the PF to tell it a message has been sent */ - IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, IXGBE_VFMAILBOX_REQ); + /* interrupt the PF to tell it a message has been sent */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_REQ; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* if msg sent wait until we receive an ack */ + ixgbe_poll_for_ack(hw, mbx_id); + +out: + hw->mbx.ops[mbx_id].release(hw, mbx_id); -out_no_write: return ret_val; } /** - * ixgbe_read_mbx_vf - Reads a message from the inbox intended for vf + * ixgbe_read_mbx_vf_legacy - Reads a message from the inbox intended for vf * @hw: pointer to the HW structure * @msg: The message buffer * @size: Length of buffer @@ -465,19 +567,19 @@ out_no_write: * * returns SUCCESS if it successfully read message from buffer **/ -static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, - u16 mbx_id) +static s32 ixgbe_read_mbx_vf_legacy(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) { - s32 ret_val = IXGBE_SUCCESS; + s32 ret_val; u16 i; - DEBUGFUNC("ixgbe_read_mbx_vf"); + DEBUGFUNC("ixgbe_read_mbx_vf_legacy"); UNREFERENCED_1PARAMETER(mbx_id); /* lock the mailbox to prevent pf/vf race condition */ ret_val = ixgbe_obtain_mbx_lock_vf(hw); if (ret_val) - goto out_no_read; + return ret_val; /* copy the message from the mailbox memory buffer */ for (i = 0; i < size; i++) @@ -489,34 +591,73 @@ static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, /* update stats */ hw->mbx.stats.msgs_rx++; -out_no_read: - return ret_val; + return IXGBE_SUCCESS; +} + +/** + * ixgbe_read_mbx_vf - Reads a message from the inbox intended for vf + * @hw: pointer to the HW structure + * @msg: The message buffer + * @size: Length of buffer + * @mbx_id: id of mailbox to read + * + * returns SUCCESS if it successfully read message from buffer + **/ +static s32 ixgbe_read_mbx_vf(struct ixgbe_hw *hw, u32 *msg, u16 size, + u16 mbx_id) +{ + u32 vf_mailbox; + s32 ret_val; + u16 i; + + DEBUGFUNC("ixgbe_read_mbx_vf"); + UNREFERENCED_1PARAMETER(mbx_id); + + /* check if there is a message from PF */ + ret_val = ixgbe_check_for_msg_vf(hw, 0); + if (ret_val != IXGBE_SUCCESS) + return IXGBE_ERR_MBX_NOMSG; + + ixgbe_clear_msg_vf(hw); + + /* copy the message from the mailbox memory buffer */ + for (i = 0; i < size; i++) + msg[i] = IXGBE_READ_REG_ARRAY(hw, IXGBE_VFMBMEM, i); + + /* Acknowledge receipt */ + vf_mailbox = ixgbe_read_mailbox_vf(hw); + vf_mailbox |= IXGBE_VFMAILBOX_ACK; + IXGBE_WRITE_REG(hw, IXGBE_VFMAILBOX, vf_mailbox); + + /* update stats */ + hw->mbx.stats.msgs_rx++; + + return IXGBE_SUCCESS; } /** * ixgbe_init_mbx_params_vf - set initial values for vf mailbox * @hw: pointer to the HW structure * - * Initializes the hw->mbx struct to correct values for vf mailbox + * Initializes single set the hw->mbx struct to correct values for vf mailbox + * Set of legacy functions is being used here */ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) { struct ixgbe_mbx_info *mbx = &hw->mbx; - /* start mailbox as timed out and let the reset_hw call set the timeout - * value to begin communications */ - mbx->timeout = 0; + mbx->timeout = IXGBE_VF_MBX_INIT_TIMEOUT; mbx->usec_delay = IXGBE_VF_MBX_INIT_DELAY; mbx->size = IXGBE_VFMAILBOX_SIZE; - mbx->ops.read = ixgbe_read_mbx_vf; - mbx->ops.write = ixgbe_write_mbx_vf; - mbx->ops.read_posted = ixgbe_read_posted_mbx; - mbx->ops.write_posted = ixgbe_write_posted_mbx; - mbx->ops.check_for_msg = ixgbe_check_for_msg_vf; - mbx->ops.check_for_ack = ixgbe_check_for_ack_vf; - mbx->ops.check_for_rst = ixgbe_check_for_rst_vf; + /* VF has only one mailbox connection, no need for more IDs */ + mbx->ops[0].release = ixgbe_release_mbx_lock_dummy; + mbx->ops[0].read = ixgbe_read_mbx_vf_legacy; + mbx->ops[0].write = ixgbe_write_mbx_vf_legacy; + mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; + mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; + mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; @@ -525,54 +666,110 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) mbx->stats.rsts = 0; } +/** + * ixgbe_upgrade_mbx_params_vf - set initial values for vf mailbox + * @hw: pointer to the HW structure + * + * Initializes the hw->mbx struct to correct values for vf mailbox + */ +void ixgbe_upgrade_mbx_params_vf(struct ixgbe_hw *hw) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + + mbx->timeout = IXGBE_VF_MBX_INIT_TIMEOUT; + mbx->usec_delay = IXGBE_VF_MBX_INIT_DELAY; + + mbx->size = IXGBE_VFMAILBOX_SIZE; + + /* VF has only one mailbox connection, no need for more IDs */ + mbx->ops[0].release = ixgbe_release_mbx_lock_vf; + mbx->ops[0].read = ixgbe_read_mbx_vf; + mbx->ops[0].write = ixgbe_write_mbx_vf; + mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; + mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; + mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; + mbx->ops[0].clear = NULL; + + mbx->stats.msgs_tx = 0; + mbx->stats.msgs_rx = 0; + mbx->stats.reqs = 0; + mbx->stats.acks = 0; + mbx->stats.rsts = 0; +} + +static void ixgbe_clear_msg_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); + u32 pfmbicr; + + pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); + + if (pfmbicr & (IXGBE_PFMBICR_VFREQ_VF1 << vf_shift)) + hw->mbx.stats.reqs++; + + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), + IXGBE_PFMBICR_VFREQ_VF1 << vf_shift); +} + +static void ixgbe_clear_ack_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); + u32 pfmbicr; + + pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); + + if (pfmbicr & (IXGBE_PFMBICR_VFACK_VF1 << vf_shift)) + hw->mbx.stats.acks++; + + IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), + IXGBE_PFMBICR_VFACK_VF1 << vf_shift); +} + static s32 ixgbe_check_for_bit_pf(struct ixgbe_hw *hw, u32 mask, s32 index) { u32 pfmbicr = IXGBE_READ_REG(hw, IXGBE_PFMBICR(index)); - s32 ret_val = IXGBE_ERR_MBX; if (pfmbicr & mask) { - ret_val = IXGBE_SUCCESS; - IXGBE_WRITE_REG(hw, IXGBE_PFMBICR(index), mask); + return IXGBE_SUCCESS; } - return ret_val; + return IXGBE_ERR_MBX; } /** * ixgbe_check_for_msg_pf - checks to see if the VF has sent mail * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_msg_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); - s32 index = IXGBE_PFMBICR_INDEX(vf_number); - s32 ret_val = IXGBE_ERR_MBX; + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); DEBUGFUNC("ixgbe_check_for_msg_pf"); if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFREQ_VF1 << vf_shift, - index)) { - ret_val = IXGBE_SUCCESS; - hw->mbx.stats.reqs++; - } + index)) + return IXGBE_SUCCESS; - return ret_val; + return IXGBE_ERR_MBX; } /** * ixgbe_check_for_ack_pf - checks to see if the VF has ACKed * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_number); - s32 index = IXGBE_PFMBICR_INDEX(vf_number); + u32 vf_shift = IXGBE_PFMBICR_SHIFT(vf_id); + s32 index = IXGBE_PFMBICR_INDEX(vf_id); s32 ret_val = IXGBE_ERR_MBX; DEBUGFUNC("ixgbe_check_for_ack_pf"); @@ -580,7 +777,8 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) if (!ixgbe_check_for_bit_pf(hw, IXGBE_PFMBICR_VFACK_VF1 << vf_shift, index)) { ret_val = IXGBE_SUCCESS; - hw->mbx.stats.acks++; + /* TODO: should this be autocleared? */ + ixgbe_clear_ack_pf(hw, vf_id); } return ret_val; @@ -589,14 +787,14 @@ static s32 ixgbe_check_for_ack_pf(struct ixgbe_hw *hw, u16 vf_number) /** * ixgbe_check_for_rst_pf - checks to see if the VF has reset * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * returns SUCCESS if the VF has set the Status bit or else ERR_MBX **/ -static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_id) { - u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_number); - u32 index = IXGBE_PFVFLRE_INDEX(vf_number); + u32 vf_shift = IXGBE_PFVFLRE_SHIFT(vf_id); + u32 index = IXGBE_PFVFLRE_INDEX(vf_id); s32 ret_val = IXGBE_ERR_MBX; u32 vflre = 0; @@ -628,121 +826,268 @@ static s32 ixgbe_check_for_rst_pf(struct ixgbe_hw *hw, u16 vf_number) /** * ixgbe_obtain_mbx_lock_pf - obtain mailbox lock * @hw: pointer to the HW structure - * @vf_number: the VF index + * @vf_id: the VF index * * return SUCCESS if we obtained the mailbox lock **/ -static s32 ixgbe_obtain_mbx_lock_pf(struct ixgbe_hw *hw, u16 vf_number) +static s32 ixgbe_obtain_mbx_lock_pf(struct ixgbe_hw *hw, u16 vf_id) { + struct ixgbe_mbx_info *mbx = &hw->mbx; *** 667 LINES SKIPPED *** From nobody Fri Sep 27 03:41: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 4XFGV66WKBz5XQZM; Fri, 27 Sep 2024 03:41: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 4XFGV65VNqz4s3Y; Fri, 27 Sep 2024 03:41:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408494; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t7wDVv/Mkbc3LjO+ImJ+CbBRPqygDxpMQfsheW/PTlE=; b=n/UbBsbkRlo54CGZ8mHT1QV+IL0ZW9giKjf1zADzXbsXxpG1VvkiwbLT7SmEzh3NwjHcvN f6Nx7tJO0CKelCROSKGR9U8FEyEBagQczTmA6jDxVz0Lr9BYvnHpXO+3Zm2u8lg5++9jZR 9utLnaUQvg8Jvuk1FWwXRWh4yd+LIzlJnuGQuJRL6I1HZkQO1Yo0GIg5uz9r9ixH1rb19U 9dsT6Lld/SMqzBq8zuTN7sMCAQaOM5gG+qeE5C8dGTedtpvdheP4GZZCrywtHj21DylFk0 mwuQUlkFPt5E5nojpZIrqvEm7GL7cMegA05tTlb0hGaVFTFwOLCu5IE9+UExKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408494; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t7wDVv/Mkbc3LjO+ImJ+CbBRPqygDxpMQfsheW/PTlE=; b=kykYTatz8SQprE0Ux1WsQlGuquJXOhroeZwnhtqBmpyUU3AKZ4uLkVriph6kW9zWelaAAt PqjNMn+QcNTGhLB6Uh4QiTVkyoyDRo9X15x7X4K/BmUWN0PjUcj0sdvLtthGX4pkYyTdRh JBqJACUEs9gjzZjzfGxrs5ghHCiY8QFgWBaU887xqjmCFGC0EkPcogVfBiqTcAXiMyUjkp /9oJz/Jl+C0iyqh/RGOn/X/uw/LEXYeA59hMuza/Ew+1OkpvbT+QXfzlo/k272v87mXWKx K2AeawffS41qiLzN1PlxEnIciA6A07nU/UlI0PqWnRtoMbKC4MJxCHy+rPSjbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408494; a=rsa-sha256; cv=none; b=mqZiLBKgA13cf8HvM6eZQaLcb2KpPabpQPIJ7mSC7lNb8uMmecvYLd6t8dxTGpGyHvZG85 cJ7b+ErjwmBz843Eg4mHlb5z5OWqgFqMs7NsWSzxxc9jQj6wPZsWgJ6LbqdVbkJI4/xr/b KUxJ4njrjUtcMCJBGA3gzV1t7G2/w2At4MX5nYrAWdtxPi61trCAOtARxSbHlopHSLm4fq GsRjoz8vW6qPZnCJj73wxRAbFRQfYaO0jtLH8xEjb3oDyiJtnsZFQzi8jVVoZFr2NSr6ww rok9BdaYbsa+nzo/PQ9j1C2gioFSMDIrzcoGHrx45pJVxWUMoMFTJav13NQrPg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGV655rqzPb6; Fri, 27 Sep 2024 03:41: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 48R3fYYu055232; Fri, 27 Sep 2024 03:41:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fYF0055229; Fri, 27 Sep 2024 03:41:34 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:34 GMT Message-Id: <202409270341.48R3fYF0055229@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: 980e6b7fd537 - stable/13 - ixgbe: increase DCB BW calculation for MTU List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 980e6b7fd537665a3ff72f1e03b2a902abf6b876 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=980e6b7fd537665a3ff72f1e03b2a902abf6b876 commit 980e6b7fd537665a3ff72f1e03b2a902abf6b876 Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:42:39 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:38:50 +0000 ixgbe: increase DCB BW calculation for MTU Change max credit and credit refill to a maximum possible value, 9128. Too small values cause the incorrect calculation of the bandwidth limits to each traffic class for frames larger than 4088 bytes. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Tested-by: Piotr Skajewski Obtained from: DPDK (440823f) (cherry picked from commit 1b80ac6fa64eaa575b99521cbd71a3780bf5139b) --- sys/dev/ixgbe/ixgbe_dcb.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_dcb.h b/sys/dev/ixgbe/ixgbe_dcb.h index b31dfae0cdfa..54decd4d081d 100644 --- a/sys/dev/ixgbe/ixgbe_dcb.h +++ b/sys/dev/ixgbe/ixgbe_dcb.h @@ -40,9 +40,9 @@ /* DCB defines */ /* DCB credit calculation defines */ #define IXGBE_DCB_CREDIT_QUANTUM 64 -#define IXGBE_DCB_MAX_CREDIT_REFILL 200 /* 200 * 64B = 12800B */ +#define IXGBE_DCB_MAX_CREDIT_REFILL 511 /* 0x1FF * 64B = 32704B */ #define IXGBE_DCB_MAX_TSO_SIZE (32 * 1024) /* Max TSO pkt size in DCB*/ -#define IXGBE_DCB_MAX_CREDIT (2 * IXGBE_DCB_MAX_CREDIT_REFILL) +#define IXGBE_DCB_MAX_CREDIT 4095 /* Maximum credit supported: 256KB * 1024 / 64B */ /* 513 for 32KB TSO packet */ #define IXGBE_DCB_MIN_TSO_CREDIT \ From nobody Fri Sep 27 03:41: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 4XFGV83MS6z5XQfx; Fri, 27 Sep 2024 03:41: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 4XFGV76swvz4rqq; Fri, 27 Sep 2024 03:41:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408496; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8AFfFW/DuPOT0LaahT+5FqkL1sMBMYXq9XZz93449rE=; b=Wc/NMnSuWczxcXDPfo7VRB6CLZqgCfOVef7ZQa+21Dph2FBD3j4F77DvBSczsJfDfN4LN/ OMwPxPazc4khjACy8d6lEV3iCDcoeEAMNLDIy06I6lYj61L1u1KeUu6/4Vs5u73soYLaG3 TG7nuTCUAeG1HLWGzwC2emb86Asm57rdxrZNmE2XNSfJdvUFsTqvVXNyaWHX1Yo/2Rps5V YKqwc8zOepULeHlN1V6jDq/vJzLSa7YRNnnD6ej3TPb58G/2jiWNM1pCUDp6X5MlxDDr9O H6R3mpcehxY4hjlBYPV8cbihsgZg9lY0AjUAuTWSrmTMijuQp2OGQ65CqG5Trw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408496; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8AFfFW/DuPOT0LaahT+5FqkL1sMBMYXq9XZz93449rE=; b=su2SNufviwNyaphKT4bGelSiwjMP/FVwA1LmskyC0Sp6PnCZHgDu2RCmdo3V3FyHAA0P9E Pz8SqRbgefROY2zIIhXSR+CxuPa16tOYgEC3CTp26sj2cQ9JU2QqLLf/KU7qCYv72sTksK UzmQrBJgu1BjIA5izty27zWgAkJNiWZeQtu1834bp1XfrRadJTxk6BHCiA4g85ARnT/7E0 C3PGqrbDbNj2ZQvP9/sz3Y1NVCCAGF5ANCblyvMom2fH/C2SWPSGc6yXhs3OJ4lCQhW61h +AZePM9UtLNo/G0x4Z26UPI4OwEzyO2c7ceB3ubDIukOi7X2Kqyv8nndGoMCqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408496; a=rsa-sha256; cv=none; b=R2nuiYuD9gDbwd1+lefe2/Vl3XiW3YsDrXgg5WTNAY5cCpB58LGNffLMRKcNtDa3yLatLu zkVpcYCcI+cpiWsfaZyNtzZaBo+Cp+LHonNo3NPiEDOZEesKfpAw1wvzZb7p62+Cu5Vbqy NtMqa7G+CBcvOuteHS/HkekrDS17d6Cy1GpjItggm7HIqpinc2+VzfXk+oRrEwJZ+OcjAw JKeGj96itce8ZqC7YV3J9cNo2WtFSbzPQTCpa2QLBgGxXkyIHixwL8M9IgOA68ypj5MP1W PogTg6V8T7CRqegfoeiydJoyNCWJ4iZCWVxKP+mAXomLROwxUr7ubPI6cpANHA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGV76RJZzPkM; Fri, 27 Sep 2024 03:41: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 48R3fZtG055280; Fri, 27 Sep 2024 03:41:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fZLE055277; Fri, 27 Sep 2024 03:41:35 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:35 GMT Message-Id: <202409270341.48R3fZLE055277@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: 8bb9fe07c7da - stable/13 - ixgbe: improve function comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 8bb9fe07c7daaf8a3d88aa3578cbd5e6e55bbeba Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=8bb9fe07c7daaf8a3d88aa3578cbd5e6e55bbeba commit 8bb9fe07c7daaf8a3d88aa3578cbd5e6e55bbeba Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:50:23 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:39:01 +0000 ixgbe: improve function comments Some function comments have mismatches between actual function names and function name in comments, which causes warnings with kernel-doc. Fix comments to match function names. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Obtained from: DPDK (7b5bc85) (cherry picked from commit edef2769483b29457f028a508ea96fc1099a0a21) --- sys/dev/ixgbe/ixgbe_82599.c | 2 +- sys/dev/ixgbe/ixgbe_api.c | 2 +- sys/dev/ixgbe/ixgbe_common.c | 11 ++++++----- sys/dev/ixgbe/ixgbe_dcb.c | 2 +- sys/dev/ixgbe/ixgbe_phy.c | 2 +- sys/dev/ixgbe/ixgbe_x550.c | 12 ++++++------ 6 files changed, 16 insertions(+), 15 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index 70b4cdc5c6ca..a1d8b299bf80 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -1537,7 +1537,7 @@ u32 ixgbe_atr_compute_sig_hash_82599(union ixgbe_atr_hash_dword input, } /** - * ixgbe_atr_add_signature_filter_82599 - Adds a signature hash filter + * ixgbe_fdir_add_signature_filter_82599 - Adds a signature hash filter * @hw: pointer to hardware structure * @input: unique input dword * @common: compressed common input dword diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index eded950e2881..7767e9a5571c 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -904,7 +904,7 @@ s32 ixgbe_validate_eeprom_checksum(struct ixgbe_hw *hw, u16 *checksum_val) } /** - * ixgbe_eeprom_update_checksum - Updates the EEPROM checksum + * ixgbe_update_eeprom_checksum - Updates the EEPROM checksum * @hw: pointer to hardware structure **/ s32 ixgbe_update_eeprom_checksum(struct ixgbe_hw *hw) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 6c1396ad964f..a7adf079f248 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -3866,14 +3866,15 @@ s32 ixgbe_set_vmdq_generic(struct ixgbe_hw *hw, u32 rar, u32 vmdq) } /** + * ixgbe_set_vmdq_san_mac_generic - Associate default VMDq pool index with + * a rx address + * @hw: pointer to hardware struct + * @vmdq: VMDq pool index + * * This function should only be involved in the IOV mode. * In IOV mode, Default pool is next pool after the number of * VFs advertized and not 0. * MPSAR table needs to be updated for SAN_MAC RAR [hw->mac.san_mac_rar_index] - * - * ixgbe_set_vmdq_san_mac - Associate default VMDq pool index with a rx address - * @hw: pointer to hardware struct - * @vmdq: VMDq pool index **/ s32 ixgbe_set_vmdq_san_mac_generic(struct ixgbe_hw *hw, u32 vmdq) { @@ -4880,7 +4881,7 @@ static const u8 ixgbe_emc_therm_limit[4] = { }; /** - * ixgbe_get_thermal_sensor_data - Gathers thermal sensor data + * ixgbe_get_thermal_sensor_data_generic - Gathers thermal sensor data * @hw: pointer to hardware structure * * Returns the thermal sensor data structure diff --git a/sys/dev/ixgbe/ixgbe_dcb.c b/sys/dev/ixgbe/ixgbe_dcb.c index 0ebc5456eda5..29ee3117edcb 100644 --- a/sys/dev/ixgbe/ixgbe_dcb.c +++ b/sys/dev/ixgbe/ixgbe_dcb.c @@ -293,7 +293,7 @@ void ixgbe_dcb_unpack_map_cee(struct ixgbe_dcb_config *cfg, int direction, } /** - * ixgbe_dcb_config - Struct containing DCB settings. + * ixgbe_dcb_check_config_cee - Struct containing DCB settings. * @dcb_config: Pointer to DCB config structure * * This function checks DCB rules for DCB settings. diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index 00f396283879..c2f23179476b 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -587,7 +587,7 @@ void ixgbe_restart_auto_neg(struct ixgbe_hw *hw) } /** - * ixgbe_read_phy_mdi - Reads a value from a specified PHY register without + * ixgbe_read_phy_reg_mdi - Reads a value from a specified PHY register without * the SWFW lock * @hw: pointer to hardware structure * @reg_addr: 32 bit address of PHY register to read diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 710c33247938..1b0999258713 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -750,7 +750,7 @@ static s32 ixgbe_setup_fw_link(struct ixgbe_hw *hw) } /** - * ixgbe_fc_autoneg_fw _ Set up flow control for FW-controlled PHYs + * ixgbe_fc_autoneg_fw - Set up flow control for FW-controlled PHYs * @hw: pointer to hardware structure * * Called at init time to set up flow control. @@ -1876,7 +1876,7 @@ void ixgbe_init_mac_link_ops_X550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_link_capabilities_x550em - Determines link capabilities + * ixgbe_get_link_capabilities_X550em - Determines link capabilities * @hw: pointer to hardware structure * @speed: pointer to link speed * @autoneg: true when autoneg or autotry is enabled @@ -3236,7 +3236,7 @@ out: } /** - * ixgbe_write_ee_hostif_X550 - Write EEPROM word using hostif + * ixgbe_write_ee_hostif_data_X550 - Write EEPROM word using hostif * @hw: pointer to hardware structure * @offset: offset of word in the EEPROM to write * @data: word write to the EEPROM @@ -3704,7 +3704,7 @@ u64 ixgbe_get_supported_physical_layer_X550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_bus_info_x550em - Set PCI bus info + * ixgbe_get_bus_info_X550em - Set PCI bus info * @hw: pointer to hardware structure * * Sets bus link width and speed to unknown because X550em is @@ -3769,7 +3769,7 @@ void ixgbe_disable_rx_x550(struct ixgbe_hw *hw) } /** - * ixgbe_enter_lplu_x550em - Transition to low power states + * ixgbe_enter_lplu_t_x550em - Transition to low power states * @hw: pointer to hardware structure * * Configures Low Power Link Up on transition to low power states @@ -3877,7 +3877,7 @@ s32 ixgbe_enter_lplu_t_x550em(struct ixgbe_hw *hw) } /** - * ixgbe_get_lcd_x550em - Determine lowest common denominator + * ixgbe_get_lcd_t_x550em - Determine lowest common denominator * @hw: pointer to hardware structure * @lcd_speed: pointer to lowest common link speed * From nobody Fri Sep 27 03:41: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 4XFGV91pHcz5XQWH; Fri, 27 Sep 2024 03:41: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 4XFGV90K11z4rw4; Fri, 27 Sep 2024 03:41:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408497; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bhEE4gloQ4MM5F6Ki+rj2t0OkTjCa/BsaQhWe3Li6cQ=; b=ndovU3z2IM6thV43fOw8OwA7EMCaZ1w5/Ckp+amCKoHdNpbHlZuDhAiC8NvekmD1Cl8skm H2l0vtj08diDh3D7/OISASAqn4FZHMoxVcQFARfhL93NB4NIjhVOvEH2eVlbhgOqnn6D2P 7dIkEU7HxL5506LJXh7M9xpIRpTnfxjD+rwN80zJN6EvYvBgzfurl92JSFZMinh/Cx9LJE IAAty/JKpDbaarNYsp3j4O28m65sfD7rp7ekQvF6TSibfrISGFn+jCyXGnH8QiqC0LA5Yp J7FR/g58mouj5l8s87O8Zch0GKh4IoS4hmHQ1MuABuNLYnxfrRQwnoKpIlVveA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408497; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bhEE4gloQ4MM5F6Ki+rj2t0OkTjCa/BsaQhWe3Li6cQ=; b=gYRgv54LdqYHX2eF5uA76NWPgOyUZsK6zZbI5s8xdTxNUgkNMLh+7PQzkx77mkk6CzcKnz SCQhnn9qbsqOVf1HbSbr9R1XZshI5sPRoxkV7t9mpkMLxdx6Ynw3qzhpi0Cj0TZByFbOap M90UgwGH42RNsuD9NJITuePYusF/w8bI5skrV1NuZIlxo5qjEqyP3sZMEAOWfK+HbA09/W qlwlc6zTDxx1sxAk9wCohd+cHpC2CaHjDMnGnA2orYimob3GORmM8lx+UpPnE6kt7LPDVy MaORQAcABlvGvyWAu2s0zM/MxyUZmRIvFkyywHMkoYdYGZgSPGS6tht1U6ZrcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408497; a=rsa-sha256; cv=none; b=o9tOAJpaFuBOhyNGxN+iZuciLsFSE36MA/Dg893VWu5o6OCdUvd7czfGFPedN25R9Ez7nw MVMNJTPb7N/BfTISkhiOgl+lzeWauMS27HzsmIm3yu0qCYeoUe8lfQCP8NUYSS2ssr3R0F /k+Q/Xx5vbzXhn/v3MemQkGWFyUigSCnTfqWD1itofEVGKWuPppW6565zaFLPFRLdxYCwl dQVzH19CuxQgFDHAuk/1R/ZgAE6+EpLGnefkVTOCqTZXOKqqo1R5C6qCObOSjRCgisQcNr WpdiO7cmMvCyxo8MHOzTx5/ItM/7QBGlHKPowML0PZq68v2nOP49FQkj92eDmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGV870XyzP2H; Fri, 27 Sep 2024 03:41: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 48R3fahR055345; Fri, 27 Sep 2024 03:41:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fasx055342; Fri, 27 Sep 2024 03:41:36 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:36 GMT Message-Id: <202409270341.48R3fasx055342@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: 0243ac046ff7 - stable/13 - ixgbe: add reset count field to HW struct List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 0243ac046ff77b79566197a7c8587872adc3a2b9 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=0243ac046ff77b79566197a7c8587872adc3a2b9 commit 0243ac046ff77b79566197a7c8587872adc3a2b9 Author: Radoslaw Tyl AuthorDate: 2024-09-20 02:54:21 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:39:13 +0000 ixgbe: add reset count field to HW struct DPDK commit message net/ixgbe/base: add reset count field to HW struct Add fw_rst_cnt to store the number of resets after fw update. This value is required to detect if the EICR.MNG event occurred after firmware update reset. Signed-off-by: Radoslaw Tyl Reviewed-by: Piotr Skajewski Reviewed-by: Slawomir Mrozowicz Reviewed-by: Alice Michael Obtained from: DPDK (9ab0e9c) (cherry picked from commit 224f7ab8b4706653c7d3f78e624bc36c97679f30) --- sys/dev/ixgbe/ixgbe_type.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index ccfce45500d9..56d4863c8e07 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -4201,6 +4201,7 @@ struct ixgbe_hw { bool allow_unsupported_sfp; bool wol_enabled; bool need_crosstalk_fix; + u32 fw_rst_cnt; }; #define ixgbe_call_func(hw, func, params, error) \ From nobody Fri Sep 27 03:41: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 4XFGVB3GJlz5XQvX; Fri, 27 Sep 2024 03:41: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFGVB1K8yz4s98; Fri, 27 Sep 2024 03:41:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408498; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SsZBgObCWfj/gPQReGxB6L3GHhlY0WzF/wxXtP9UJ5I=; b=BHVuNyjEw9/+v+ES4P/a1rw5XpVTfd1a+EFcG8wAd6H9arkQcM5V8TFpF9bz2kI+cTOx8d VNGjZ0PEDEDH34MP2DoFydVqgquvlfik5/rHSjuzKXywxFiUUgEpRJUJbFhlMsUBFYNXU5 Pa0HFt5689NQItA5MophyGuMiUn/JKOGqTvG9sk42VGkrQtbARH11UN4c+j/hIJlBonOcG 1K7dbPBOpt+Hj7f4Wz5SLQ+BibjMwBiXlsYh6WXjNfVfT6T0NK0RU8XmVXnyjRCMR84hIN 5XYOkPFpJ3kV9AhKyG/d+fGR61FThb/aj2A4tZHFekFWp1exWDRJSBBQNWVHaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408498; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SsZBgObCWfj/gPQReGxB6L3GHhlY0WzF/wxXtP9UJ5I=; b=Ak6LL0HkKO1NUz5kUBv5ywmUOAfUHZIwC3p76iUZsDAmrRhNOhuSoa6WiW++Ijtl12kKT9 Nat7rh1PNgNzttShAM89g/0BSN8wD7rCCXCmPi5KADw0OcueCXEfiLJJmxAgxNbas1Jzez wyfW8ASBMyprB47p7Rxs7wMz1BAJhWimgUisw7rcXBAxEEOaeqg+ZDoVOTBWDzf858pmlE AHVC8tXZ4xQEKNtaF+x+5mDbjBWAQiVGFBPiZRN0To+MXSbg54kzigdnj8BoUPbTidfCff TOi1lfZibJG1wnUKhPlkQCJGqkJQOARpSdhZYgBgmq6YdjaQ20StO6XAU+Bf9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408498; a=rsa-sha256; cv=none; b=CpBRh1wi7ShbDB5263cNR9+aBCadOBFXaEN4TQzxFRujhJIRAoElXuxb+sSyF9taFxQ6/0 ZO5kgRS3SXXgWHVNlpd4XYITZSlnAFyirqF9B6bu0SbKLDSx7a5NQQX/x5OJ/zQ/PRjtZC rqWt7ksIUvQxBn3r44IhrTm3WUi4GzKLLHyJvTZ62B3WelUnjaLBTPaZMhq44u8XwgF7ki oXcpDN2OFGlwNLCnYuc/sat4HcFWIAWHinHn1bvADUqExpBwUUO8xSxx2puZM5rXWDElZr PeX61+Aqtfvwv1bLucsaAzHjZdvrvY5D8XE+crandsUi4ENLfdwHMYJrEG+doQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVB0vqmzPb9; Fri, 27 Sep 2024 03:41: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 48R3fc1E055395; Fri, 27 Sep 2024 03:41:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fcF3055392; Fri, 27 Sep 2024 03:41:38 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:38 GMT Message-Id: <202409270341.48R3fcF3055392@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: cc9bb638837a - stable/13 - ixgbe: Remove Atom C3000 HIC FW access List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: cc9bb638837aa940a0e0fd5a15562dc72a522eeb Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=cc9bb638837aa940a0e0fd5a15562dc72a522eeb commit cc9bb638837aa940a0e0fd5a15562dc72a522eeb Author: Marek Mical AuthorDate: 2024-09-20 02:59:05 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:39:26 +0000 ixgbe: Remove Atom C3000 HIC FW access DPDK commit message net/ixgbe/base: replace HIC with direct register access Unify FW access method to direct register read/writes across all Atom(R) C3000 products. Atom(R) C3000 fiber exhibited an issue with the Host Interface Command execution being locked when another LAN function attempted to acquire the SWFW sync on Manageability Host. This resulted in HIC atomicity break and bogus data being read since the other LAN function cleared all semaphores on timeout whereas HIC execution continued after unlock. Direct register IOSF access showed higher stability and reliability. Signed-off-by: Marek Mical Reviewed-by: Krzysztof Galazka Reviewed-by: Eryk Rybak Reviewed-by: Francis Racicot Reviewed-by: Alice Michael Obtained from: DPDK (e947f1e) (cherry picked from commit f56311e37d4c39b1deab6aa8523f3332c29e1ad3) --- sys/dev/ixgbe/ixgbe_x550.c | 76 ++-------------------------------------------- sys/dev/ixgbe/ixgbe_x550.h | 4 --- 2 files changed, 2 insertions(+), 78 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 1b0999258713..b9a5c08b2d51 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -799,14 +799,8 @@ s32 ixgbe_init_ops_X550EM_a(struct ixgbe_hw *hw) /* Start with generic X550EM init */ ret_val = ixgbe_init_ops_X550EM(hw); - if (hw->device_id == IXGBE_DEV_ID_X550EM_A_SGMII || - hw->device_id == IXGBE_DEV_ID_X550EM_A_SGMII_L) { - mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550; - mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550; - } else { - mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550a; - mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550a; - } + mac->ops.read_iosf_sb_reg = ixgbe_read_iosf_sb_reg_x550; + mac->ops.write_iosf_sb_reg = ixgbe_write_iosf_sb_reg_x550; mac->ops.acquire_swfw_sync = ixgbe_acquire_swfw_sync_X550a; mac->ops.release_swfw_sync = ixgbe_release_swfw_sync_X550a; @@ -1287,72 +1281,6 @@ s32 ixgbe_put_phy_token(struct ixgbe_hw *hw) return IXGBE_ERR_FW_RESP_INVALID; } -/** - * ixgbe_write_iosf_sb_reg_x550a - Writes a value to specified register - * of the IOSF device - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @device_type: 3 bit device type - * @data: Data to write to the register - **/ -s32 ixgbe_write_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 data) -{ - struct ixgbe_hic_internal_phy_req write_cmd; - s32 status; - UNREFERENCED_1PARAMETER(device_type); - - memset(&write_cmd, 0, sizeof(write_cmd)); - write_cmd.hdr.cmd = FW_INT_PHY_REQ_CMD; - write_cmd.hdr.buf_len = FW_INT_PHY_REQ_LEN; - write_cmd.hdr.checksum = FW_DEFAULT_CHECKSUM; - write_cmd.port_number = hw->bus.lan_id; - write_cmd.command_type = FW_INT_PHY_REQ_WRITE; - write_cmd.address = IXGBE_CPU_TO_BE16(reg_addr); - write_cmd.write_data = IXGBE_CPU_TO_BE32(data); - - status = ixgbe_host_interface_command(hw, (u32 *)&write_cmd, - sizeof(write_cmd), - IXGBE_HI_COMMAND_TIMEOUT, false); - - return status; -} - -/** - * ixgbe_read_iosf_sb_reg_x550a - Reads specified register of the IOSF device - * @hw: pointer to hardware structure - * @reg_addr: 32 bit PHY register to write - * @device_type: 3 bit device type - * @data: Pointer to read data from the register - **/ -s32 ixgbe_read_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 *data) -{ - union { - struct ixgbe_hic_internal_phy_req cmd; - struct ixgbe_hic_internal_phy_resp rsp; - } hic; - s32 status; - UNREFERENCED_1PARAMETER(device_type); - - memset(&hic, 0, sizeof(hic)); - hic.cmd.hdr.cmd = FW_INT_PHY_REQ_CMD; - hic.cmd.hdr.buf_len = FW_INT_PHY_REQ_LEN; - hic.cmd.hdr.checksum = FW_DEFAULT_CHECKSUM; - hic.cmd.port_number = hw->bus.lan_id; - hic.cmd.command_type = FW_INT_PHY_REQ_READ; - hic.cmd.address = IXGBE_CPU_TO_BE16(reg_addr); - - status = ixgbe_host_interface_command(hw, (u32 *)&hic.cmd, - sizeof(hic.cmd), - IXGBE_HI_COMMAND_TIMEOUT, true); - - /* Extract the register value from the response. */ - *data = IXGBE_BE32_TO_CPU(hic.rsp.read_data); - - return status; -} - /** * ixgbe_disable_mdd_X550 * @hw: pointer to hardware structure diff --git a/sys/dev/ixgbe/ixgbe_x550.h b/sys/dev/ixgbe/ixgbe_x550.h index 245e128266aa..45e4cad9f1f7 100644 --- a/sys/dev/ixgbe/ixgbe_x550.h +++ b/sys/dev/ixgbe/ixgbe_x550.h @@ -69,10 +69,6 @@ s32 ixgbe_set_fw_drv_ver_x550(struct ixgbe_hw *hw, u8 maj, u8 min, u8 build, u8 ver, u16 len, const char *str); s32 ixgbe_get_phy_token(struct ixgbe_hw *); s32 ixgbe_put_phy_token(struct ixgbe_hw *); -s32 ixgbe_write_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 data); -s32 ixgbe_read_iosf_sb_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, - u32 device_type, u32 *data); void ixgbe_disable_mdd_X550(struct ixgbe_hw *hw); void ixgbe_enable_mdd_X550(struct ixgbe_hw *hw); void ixgbe_mdd_event_X550(struct ixgbe_hw *hw, u32 *vf_bitmap); From nobody Fri Sep 27 03:41:39 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 4XFGVC4RR7z5XQxw; Fri, 27 Sep 2024 03:41: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 4XFGVC2RFwz4rsp; Fri, 27 Sep 2024 03:41:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2E2bDRS1/eHkzNaYyPisati1q+aKwusKVd2oRjTVK3U=; b=VbgWEt+GVesjUvpYYDUBf/1mwUeb4wVZKFa392Y147AdBbkiq/DSkKlLMbvs7BPzPPeeES G/BvqxFnZKzneQQhtORGl4pldDmeLAoBFDDoIo6A6fR76hsEe23z3ue01OUJ6hauTmGeo+ 4AaiiI5MuN5d3Y6QBlfzX6yJpb0XAt1GUrAERy/4W4IxX3tuTJngzaSdrLXrsxL0n66kI7 DwMU1UIKOKoGXtuFcAFG0lmprbGzRUykNJjkyecFrDCSCvdEmLcSA/mfPsDqlf1t6CtpxI CeybQFFM4jgWB32da8Z8L84Xb228OWqrJNaZcwn0fv5PsbcOhqB24Ce8+TCS2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2E2bDRS1/eHkzNaYyPisati1q+aKwusKVd2oRjTVK3U=; b=YMxvWcZmaO5f1CeRQyehBMfHx9I7rSfSruARXDTmHowBdoRuaM+QeQfpt6iOBUCHvyQEXK vXnyhAI8PlZTL/DV5SGrCjliVCzYh35UwonKcFbvWpyT8nr41JjxysMpabcfPStaG8KxU6 BRYS/ROmsKTqIpR+shup8Ww9kSfPKXolEmv1NuHFZy8CpORcmglf2dOX+36QWeNN/1tOJQ 3jX4Q7LNuqf3OTRYMSMGF5wbH/78rClHF6uMWy0iEYt6LvmarN6rSbvAgJDLrvod0DiAoT j2isMm0+dwrm5KfLW+lOxAMOsB8vK1sYruzG7pLyaltjQ22panNLT0ep6Yr6Ng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408499; a=rsa-sha256; cv=none; b=mdPOOS9i3/z6tER0iQmmm6JbeqhSkvrA44Gf6V5EwUcL/BqCuosQomBIEUO/UXSchynqgr y/hPSoILRDFzelBalEnAb7cLQjj4ovFakDguJ0ngjst2XJEk2kI87mFyjU0ouXQqshNNF2 WuhAaJkrxL9k8HdzDg92VCFH8XHjmRJMr1hYhWwuS0k2HEVwvqGpFYCAI2ZMH/hRd+739k RqO/CFGGsXcslOCLembWpwzl4XM3nbXZlBlluynvEmgndUVKl0WIUvgd3WyeH9ugHzwrE4 xZt3NLgHUSMIWtl/EXFTFwF0S00fJ2myxmEqgtkNXerY14ovMioq9tD515f2PQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVC1szMzPbB; Fri, 27 Sep 2024 03:41: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 48R3fdGd055437; Fri, 27 Sep 2024 03:41:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fdk5055434; Fri, 27 Sep 2024 03:41:39 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:39 GMT Message-Id: <202409270341.48R3fdk5055434@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: 2ef13a10a8ee - stable/13 - ixgbe: replace implicit fall-through comments List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 2ef13a10a8eee5ee1f4ff33b5575aff044c3cd99 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2ef13a10a8eee5ee1f4ff33b5575aff044c3cd99 commit 2ef13a10a8eee5ee1f4ff33b5575aff044c3cd99 Author: Piotr Skajewski AuthorDate: 2024-09-20 03:12:41 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:39:39 +0000 ixgbe: replace implicit fall-through comments DPDK commit message Convert all "fall-through" comments to actual code. This aligns the code with the kernel which no longer allows implicit fallthrough. Signed-off-by: Piotr Skajewski Reviewed-by: Alice Michael Obtained from: DPDK (ae8211f) (cherry picked from commit 50455f73c28114c665551cba267ec964491ccf21) --- sys/dev/ixgbe/ixgbe_82599.c | 8 ++++++-- sys/dev/ixgbe/ixgbe_common.c | 10 ++++++---- sys/dev/ixgbe/ixgbe_x550.c | 11 +++++++---- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index a1d8b299bf80..1ecab83a4e92 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -1759,7 +1759,9 @@ s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *hw, case 0x0000: /* mask VLAN ID */ fdirm |= IXGBE_FDIRM_VLANID; - /* FALLTHROUGH */ + /* mask VLAN priority */ + fdirm |= IXGBE_FDIRM_VLANP; + break; case 0x0FFF: /* mask VLAN priority */ fdirm |= IXGBE_FDIRM_VLANP; @@ -2049,7 +2051,9 @@ s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_hw *hw, DEBUGOUT(" Error on src/dst port\n"); return IXGBE_ERR_CONFIG; } - /* FALLTHROUGH */ + input_mask->formatted.flow_type = IXGBE_ATR_L4TYPE_IPV6_MASK | + IXGBE_ATR_L4TYPE_MASK; + break; case IXGBE_ATR_FLOW_TYPE_TCPV4: case IXGBE_ATR_FLOW_TYPE_TUNNELED_TCPV4: case IXGBE_ATR_FLOW_TYPE_UDPV4: diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index a7adf079f248..ff422a01c741 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -268,8 +268,8 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw) if (ret_val != IXGBE_SUCCESS) goto out; - /* only backplane uses autoc */ - /* FALLTHROUGH */ + reg = IXGBE_READ_REG(hw, IXGBE_PCS1GANA); + break; case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: @@ -4779,8 +4779,10 @@ void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int num_pb, u32 headroom, rxpktsize <<= IXGBE_RXPBSIZE_SHIFT; for (; i < (num_pb / 2); i++) IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); - /* configure remaining packet buffers */ - /* FALLTHROUGH */ + rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; + for (; i < num_pb; i++) + IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); + break; case PBA_STRATEGY_EQUAL: rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; for (; i < num_pb; i++) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index b9a5c08b2d51..275a3ff8c808 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -355,8 +355,7 @@ static s32 ixgbe_identify_phy_x550em(struct ixgbe_hw *hw) /* set up for CS4227 usage */ ixgbe_setup_mux_ctl(hw); ixgbe_check_cs4227(hw); - /* Fallthrough */ - + return ixgbe_identify_sfp_module_X550em(hw); case IXGBE_DEV_ID_X550EM_A_SFP_N: return ixgbe_identify_sfp_module_X550em(hw); break; @@ -1869,7 +1868,9 @@ s32 ixgbe_get_link_capabilities_X550em(struct ixgbe_hw *hw, break; } } - /* fall through */ + *speed = IXGBE_LINK_SPEED_10GB_FULL | + IXGBE_LINK_SPEED_1GB_FULL; + break; default: *speed = IXGBE_LINK_SPEED_10GB_FULL | IXGBE_LINK_SPEED_1GB_FULL; @@ -3589,7 +3590,9 @@ u64 ixgbe_get_supported_physical_layer_X550em(struct ixgbe_hw *hw) break; } } - /* fall through */ + physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_KR | + IXGBE_PHYSICAL_LAYER_1000BASE_KX; + break; case ixgbe_phy_x550em_xfi: physical_layer = IXGBE_PHYSICAL_LAYER_10GBASE_KR | IXGBE_PHYSICAL_LAYER_1000BASE_KX; From nobody Fri Sep 27 03:41: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 4XFGVD4c3Zz5XQ5Q; Fri, 27 Sep 2024 03:41: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 4XFGVD3D0jz4s2L; Fri, 27 Sep 2024 03:41:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408500; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sjHjfHNr9OTsfp2FQAE23032J6GeDzA+LKhGtp7EADY=; b=c5ct8+O3BYM8TUrlGPO5q3hpDWvy4CEXeBN0xT2fNxYLH5MRHP1gQbOeCKnQ+e5imBINRt phbuKt3nFZ0NMkAZDWICsINX5nSzx0HbRXRp67VtX8+hROqKec4014RSpqjnwCULQmoRIa TCAuxJPaIpynfAW0WugtIU6NgRUY2nQGs792j/vakZluB0HxEcWWYok2KMCrLm5rjdOP+I /Iw3R9zB+1Q818/6U+WpNGt+YQGUntEjMZOye2C4rdomvsgDoLhQeOHZTi29pd2896SrkK 36DDIHox7MjTR8jQ5qiQ3BGb49uVoGt+uoOWvQcyL5+/9EJ2Uazbpvlv++zvXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408500; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sjHjfHNr9OTsfp2FQAE23032J6GeDzA+LKhGtp7EADY=; b=AU1YOzkKejhGwcgIKDb4DUOU0E6iGY5opw2dfOKcBde03G1/x47YzR9jriTWpp9iATrUS/ W2EG//6T42D6rsODg4MkMhP2w+jzP8VBjJa9n+UVGdCzzXqnS6QCXnDCf3p+cVTFASWBWr pP/PaMauEdBXNxXQk8/64SHOKDhnCx4J8AvgnXKIKvpVnzK6oYAdNGJWCHr+yYO+NvcWLr Y5fAfo3/f4EbtR5ydzoWaYgOHAe/rwLOAF4um0+AYlbE8KndPlXkiPT2Q90p8Se2bV6YFq j8jFtGeCdIWJVFeNezh1GqOCcWPj8E1Xm7CJwgvZ1RZAgXnykwHJlL5UzegQtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408500; a=rsa-sha256; cv=none; b=J0RdZ1T2FqXha49+5gTIC62c/uX/9wPSWAIGxzvlum/FTzKLhJ+8uEyp2481O5c0EHAkvM eMn0ANLf277IkgPzoRq45GSXVEue2Lpc3kfgEV/Y6KFibXnVsp/LOnCKjK9we8F/K285Pc 8TeZvROyIBfYDHmfz1XDsz+nfwsyCKOr97DESmaRGmm2yUgT6oDYk9h/aEz1O3LY++HS2A eQ7Oqzdmtm4SzP96xqUsJxmajlLMpX0tbBAsN/MOsGmEBmVULXzykN4NBHclc78Xr0Z5XY uQ5D6LppmhbYCdv4/A8cAhyTV+/mXGthjgDG9p6PUujxOzwfAkW2QS1MahoyVQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVD2rBTzP5d; Fri, 27 Sep 2024 03:41: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 48R3feJe055482; Fri, 27 Sep 2024 03:41:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fePM055479; Fri, 27 Sep 2024 03:41:40 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:40 GMT Message-Id: <202409270341.48R3fePM055479@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: ea1afe5766c9 - stable/13 - ixgbe: use primary and block terminology List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ea1afe5766c97477c1ed010b1e1606ee8b5ddc9d Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=ea1afe5766c97477c1ed010b1e1606ee8b5ddc9d commit ea1afe5766c97477c1ed010b1e1606ee8b5ddc9d Author: Marcin Jurczak AuthorDate: 2024-09-20 03:18:00 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:39:53 +0000 ixgbe: use primary and block terminology DPDK commit message net/ixgbe/base: replace non-inclusive language This patch removes non-inclusive language from code, user interface and comments. Signed-off-by: Marcin Jurczak Reviewed-by: Alice Michael Obtained from: DPDK (f12a4bd) (cherry picked from commit 4530d49e68d331e9168d3a216d8a4b8e0d547578) --- sys/dev/ixgbe/ixgbe_common.c | 34 +++++++++++++++++----------------- sys/dev/ixgbe/ixgbe_common.h | 2 +- sys/dev/ixgbe/ixgbe_type.h | 10 +++++----- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index ff422a01c741..7cf9b8d05127 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -171,7 +171,7 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw) case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: - /* flow control autoneg black list */ + /* flow control autoneg block list */ switch (hw->device_id) { case IXGBE_DEV_ID_X550EM_A_SFP: case IXGBE_DEV_ID_X550EM_A_SFP_N: @@ -1146,10 +1146,10 @@ s32 ixgbe_stop_adapter_generic(struct ixgbe_hw *hw) msec_delay(2); /* - * Prevent the PCI-E bus from hanging by disabling PCI-E master + * Prevent the PCI-E bus from hanging by disabling PCI-E primary * access and verify no pending requests */ - return ixgbe_disable_pcie_master(hw); + return ixgbe_disable_pcie_primary(hw); } /** @@ -3208,32 +3208,32 @@ static u32 ixgbe_pcie_timeout_poll(struct ixgbe_hw *hw) } /** - * ixgbe_disable_pcie_master - Disable PCI-express master access + * ixgbe_disable_pcie_primary - Disable PCI-express primary access * @hw: pointer to hardware structure * - * Disables PCI-Express master access and verifies there are no pending - * requests. IXGBE_ERR_MASTER_REQUESTS_PENDING is returned if master disable - * bit hasn't caused the master requests to be disabled, else IXGBE_SUCCESS - * is returned signifying master requests disabled. + * Disables PCI-Express primary access and verifies there are no pending + * requests. IXGBE_ERR_PRIMARY_REQUESTS_PENDING is returned if primary disable + * bit hasn't caused the primary requests to be disabled, else IXGBE_SUCCESS + * is returned signifying primary requests disabled. **/ -s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) +s32 ixgbe_disable_pcie_primary(struct ixgbe_hw *hw) { s32 status = IXGBE_SUCCESS; u32 i, poll; u16 value; - DEBUGFUNC("ixgbe_disable_pcie_master"); + DEBUGFUNC("ixgbe_disable_pcie_primary"); /* Always set this bit to ensure any future transactions are blocked */ IXGBE_WRITE_REG(hw, IXGBE_CTRL, IXGBE_CTRL_GIO_DIS); - /* Exit if master requests are blocked */ + /* Exit if primary requests are blocked */ if (!(IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_GIO) || IXGBE_REMOVED(hw->hw_addr)) goto out; - /* Poll for master request bit to clear */ - for (i = 0; i < IXGBE_PCI_MASTER_DISABLE_TIMEOUT; i++) { + /* Poll for primary request bit to clear */ + for (i = 0; i < IXGBE_PCI_PRIMARY_DISABLE_TIMEOUT; i++) { usec_delay(100); if (!(IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_GIO)) goto out; @@ -3241,13 +3241,13 @@ s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) /* * Two consecutive resets are required via CTRL.RST per datasheet - * 5.2.5.3.2 Master Disable. We set a flag to inform the reset routine - * of this need. The first reset prevents new master requests from + * 5.2.5.3.2 Primary Disable. We set a flag to inform the reset routine + * of this need. The first reset prevents new primary requests from * being issued by our device. We then must wait 1usec or more for any * remaining completions from the PCIe bus to trickle in, and then reset * again to clear out any effects they may have had on our device. */ - DEBUGOUT("GIO Master Disable bit didn't clear - requesting resets\n"); + DEBUGOUT("GIO Primary Disable bit didn't clear - requesting resets\n"); hw->mac.flags |= IXGBE_FLAGS_DOUBLE_RESET_REQUIRED; if (hw->mac.type >= ixgbe_mac_X550) @@ -3269,7 +3269,7 @@ s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw) ERROR_REPORT1(IXGBE_ERROR_POLLING, "PCIe transaction pending bit also did not clear.\n"); - status = IXGBE_ERR_MASTER_REQUESTS_PENDING; + status = IXGBE_ERR_PRIMARY_REQUESTS_PENDING; out: return status; diff --git a/sys/dev/ixgbe/ixgbe_common.h b/sys/dev/ixgbe/ixgbe_common.h index a55003b4cfe4..0ff5c60d40af 100644 --- a/sys/dev/ixgbe/ixgbe_common.h +++ b/sys/dev/ixgbe/ixgbe_common.h @@ -118,7 +118,7 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw); s32 ixgbe_validate_mac_addr(u8 *mac_addr); s32 ixgbe_acquire_swfw_sync(struct ixgbe_hw *hw, u32 mask); void ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u32 mask); -s32 ixgbe_disable_pcie_master(struct ixgbe_hw *hw); +s32 ixgbe_disable_pcie_primary(struct ixgbe_hw *hw); s32 prot_autoc_read_generic(struct ixgbe_hw *hw, bool *, u32 *reg_val); s32 prot_autoc_write_generic(struct ixgbe_hw *hw, u32 reg_val, bool locked); diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index 56d4863c8e07..f34bf8dace64 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -1488,7 +1488,7 @@ struct ixgbe_dmac_config { #define IXGBE_PSRTYPE_RQPL_SHIFT 29 /* CTRL Bit Masks */ -#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Master Disable bit */ +#define IXGBE_CTRL_GIO_DIS 0x00000004 /* Global IO Primary Disable bit */ #define IXGBE_CTRL_LNK_RST 0x00000008 /* Link Reset. Resets everything. */ #define IXGBE_CTRL_RST 0x04000000 /* Reset (SW) */ #define IXGBE_CTRL_RST_MASK (IXGBE_CTRL_LNK_RST | IXGBE_CTRL_RST) @@ -2136,7 +2136,7 @@ enum { /* STATUS Bit Masks */ #define IXGBE_STATUS_LAN_ID 0x0000000C /* LAN ID */ #define IXGBE_STATUS_LAN_ID_SHIFT 2 /* LAN ID Shift*/ -#define IXGBE_STATUS_GIO 0x00080000 /* GIO Master Ena Status */ +#define IXGBE_STATUS_GIO 0x00080000 /* GIO Primary Ena Status */ #define IXGBE_STATUS_LAN_ID_0 0x00000000 /* LAN ID 0 */ #define IXGBE_STATUS_LAN_ID_1 0x00000004 /* LAN ID 1 */ @@ -2546,8 +2546,8 @@ enum { #define IXGBE_PCIDEVCTRL2_4_8s 0xd #define IXGBE_PCIDEVCTRL2_17_34s 0xe -/* Number of 100 microseconds we wait for PCI Express master disable */ -#define IXGBE_PCI_MASTER_DISABLE_TIMEOUT 800 +/* Number of 100 microseconds we wait for PCI Express primary disable */ +#define IXGBE_PCI_PRIMARY_DISABLE_TIMEOUT 800 /* Check whether address is multicast. This is little-endian specific check.*/ #define IXGBE_IS_MULTICAST(Address) \ @@ -4221,7 +4221,7 @@ struct ixgbe_hw { #define IXGBE_ERR_ADAPTER_STOPPED -9 #define IXGBE_ERR_INVALID_MAC_ADDR -10 #define IXGBE_ERR_DEVICE_NOT_SUPPORTED -11 -#define IXGBE_ERR_MASTER_REQUESTS_PENDING -12 +#define IXGBE_ERR_PRIMARY_REQUESTS_PENDING -12 #define IXGBE_ERR_INVALID_LINK_SETTINGS -13 #define IXGBE_ERR_AUTONEG_NOT_COMPLETE -14 #define IXGBE_ERR_RESET_FAILED -15 From nobody Fri Sep 27 03:41: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 4XFGVF5TXGz5XQg0; Fri, 27 Sep 2024 03:41: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 4XFGVF4LTnz4s2c; Fri, 27 Sep 2024 03:41:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408501; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOQ4946PDmJJ1jIyo7BX3C5KWHX8hXMafNqjonh9CMg=; b=m0mUnupHLen2Bcuwv8JHiFhIBjsm2Q/qHtUPIFPQKSVxNpqrFOlJjP2VScVT+Zheh/SDuT 5psL/TiWRq7vmBAJ0Hm2HQnMEYAAKm/yhQyyAxCl/mPovpCWVlol2qxHvB8OER+tKLpiyg /v8q52iMJszzgSplFvYuX3YegiTTBMmCNh6eXfuWdnu4m+uuVzVZGt7kRVVpLMgEA+3WDE zEnMsphwieviAWeMvtKrUBL+2+OazBQwuNwOLfzQJQu3HvUhBJ6AYb6STp+dvlw4LRq131 +UnaX1IkUCqQ8QXVwE/AQmF+H06S6elvg6fNWt1dhnFcn8rjaS59FOZy4oFFiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408501; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOQ4946PDmJJ1jIyo7BX3C5KWHX8hXMafNqjonh9CMg=; b=NNIQ3/dGqLoRopjhbrGsY/OWTfVL3O+7mRJwICYIzBnAGHSvUXuvSdFi8FAixuPfiWQ0q1 BYMrGSBydmzE9YxRPtqDSrR4QrmVMZh7zegKxUpCagsLvy5L+Ga4ajAx2dkd/DHgyuSekH mS0kjSY/JRnVkpGnY5BoSbyK97ZvdnocDszO0qSSRXxprtU+dtrqnrDHRWl4jhq2LOjcGL uGo0tXLMlsTxFRmWGenKJYtz+WVBY2chTDpVQzYOSLH7lh9m0dAgxW7d6GDzZAH5u1Hhon QiQFV+O1W9ZDBMRFYLilfeykfeRIcYaCUPv1GXXMEi03gx00oPLowsJiPShA6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408501; a=rsa-sha256; cv=none; b=i23Ob17n9UO2zcDFWitBGE9jy+E3XEv+DBBow36DArsSzZvDwEcrIMIvTugQ7J8gsTF6mQ PrE5SRPBFz8i3YdjstUaQ/VZ7i8zd+ShFxC8fEEqz52BA1shPaqH37Z0FqDZvo5vCbtYSV iEtFhAolrVOAeJAe0/u3aR2Z/PDySDhZW/bO3LpiPHa2hWQ3KjmWEX/H4RDcxEJBvWJ0w+ X6O2p9CEahVwQipRp7brrkedia2oaovtagIhx8S7rwS4GFxSYsL0WwzW8l7S87PejuJZaM V411f6rSPKP8FMZSZT9mBvLvBL5MW1/aROlfJeiCLdh+9DMpec5ta6n6sgKGaQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVF3rZNzP2L; Fri, 27 Sep 2024 03:41: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 48R3ffdV055527; Fri, 27 Sep 2024 03:41:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3ffPZ055524; Fri, 27 Sep 2024 03:41:41 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:41 GMT Message-Id: <202409270341.48R3ffPZ055524@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: f4f5b965273e - stable/13 - ixgbe: remove circular dependency in ixgbe_mbx.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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f4f5b965273e1115479bdfde90d4ae918e874a3b Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=f4f5b965273e1115479bdfde90d4ae918e874a3b commit f4f5b965273e1115479bdfde90d4ae918e874a3b Author: Barbara Skobiej AuthorDate: 2024-09-20 03:22:35 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:40:06 +0000 ixgbe: remove circular dependency in ixgbe_mbx.h DPDK commit message net/ixgbe/base: remove circular header dependency Including one header file in second header file should be avoided, so fix it by forward declaring the struct instead. Signed-off-by: Barbara Skobiej Obtained from: DPDK (0bc2af5) (cherry picked from commit 3167854b9d2188c4039239f741870e044b7507ac) --- sys/dev/ixgbe/ixgbe_mbx.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 7a982ce89f93..3a9bd34a137f 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -35,7 +35,7 @@ #ifndef _IXGBE_MBX_H_ #define _IXGBE_MBX_H_ -#include "ixgbe_type.h" +struct ixgbe_hw; struct ixgbe_mbx_operations { void (*init_params)(struct ixgbe_hw *hw); From nobody Fri Sep 27 03:41: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 4XFGVH0RzMz5XQy6; Fri, 27 Sep 2024 03:41: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 4XFGVG5DhVz4s9y; Fri, 27 Sep 2024 03:41:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408502; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fCoRgEAzSxR5cvjq1PzN4sD5r7F0gl3KWR4A+JUobTs=; b=bl3sqw0JFeFXRzHwFb6yTbWS5T1UxgqXtHh7VLIugG+8FaaSDuv/JGlfzUkDQWFhrJt3UP DOAumhPy6ksyzNTIuZRY05gkmjvzmWCFJgJF6vADY4ww+ChH7CkZ0sKlJiNEB9FXKA8Jgt m5BSqOStPJtpQOZXgh1/vCRemu+aoPreb2PZmIOIXxDk5qy5yy8B28TiIwka46WC3uxlFg ewr0e2IS3m1UfTtTiPkJ4JY5Dxw6ruDWWvsIrcLEV0hjd4Y0vExcx8tCem+GnzZ06S9fzN zKi75ZgSQvqdmaLRJiAApNuClFUn3qr/UlTpXIr/yb/oNbwGfyG6wYzLJ5zLHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408502; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fCoRgEAzSxR5cvjq1PzN4sD5r7F0gl3KWR4A+JUobTs=; b=REZss/pxr1Ax/Op7j2p24qCAAS9stqyamT/3Dz3UzrxfLIOIvDm4v086TxGpeVot5wnFSA TOX6ZfWUdQo+sMDudUdNLjGvR0iTSqBaUdbIQO4u5Lqhz3UympBEhCaXyg7WAVNVWBCSvT JN9DCNE20kh50SW6vKFkqtcDlaFLRCh8o2dflg4LC0cw7ksHXk1M3h7L31ehzPUEuMve0+ 9VEdhf+v1+fDidI7ST0R+CvdtwsOStpoMWgNwLzo9HvAoxHnmhN3oRBlf3CEvRt1LWrxYk rxoMQpZxdJ+TLcDpFWQaA7Yyal9OPhsu1R70z3YT3Wo3g9GdH65nqLlI8pZulQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408502; a=rsa-sha256; cv=none; b=kQKM4N7kUAiqgizmdNc098s+k01GVWi+ze2Iu0M0Vwphf6Dx1O00MJ5+/4D50FJo0Rp6N/ LEU434sNWYVLjlZ5eR7NOnFiocsHwQhkRUjSTMiPlX1tgfyO1voQ3hXwE/rtaQemt4QOs5 7XJjoGazHyJiqNTKs/r17LMkjiH3v6rkHHB/lG+AnFqymCDk4Srb9UeOyaRJOHb0p+IJgF uBrWvMqKJV+UShiyNU04//Dlt+z6oZSXToA7qCGMi9KCbLyB5nQqYESiOXNq6eBN114ZFG 6Dqfx3pBoTtSjOshMzzmcX2RKs1yEcqL1cEJGDySdwmpfTCTlsg7Lh7SFb0/LA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVG4s5nzPj6; Fri, 27 Sep 2024 03:41: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 48R3fgFo055575; Fri, 27 Sep 2024 03:41:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fgl1055572; Fri, 27 Sep 2024 03:41:42 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:42 GMT Message-Id: <202409270341.48R3fgl1055572@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: c282c2929859 - stable/13 - ixgbe: add missing QV defines List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: c282c2929859a4f1b72c65b095b54804c731a27c Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c282c2929859a4f1b72c65b095b54804c731a27c commit c282c2929859a4f1b72c65b095b54804c731a27c Author: Barbara Skobiej AuthorDate: 2024-09-20 03:27:21 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:40:20 +0000 ixgbe: add missing QV defines DPDK commit message net/ixgbe/base: add missing QV defines This patch adds missing QV defines: - offset of ANVM data - Immediate Field module pointer offset - 2.5GBASE-T and 5GBASE-T physical layer types for X550 Signed-off-by: Barbara Skobiej Signed-off-by: Jan Sokolowski Obtained from: DPDK (a730b83) (cherry picked from commit bfa48c32bc4099cb58b9fe7efab7f376475539ef) --- sys/dev/ixgbe/ixgbe_type.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index f34bf8dace64..dbcc6544133e 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -3105,6 +3105,7 @@ enum ixgbe_fdir_pballoc_type { #define FW_SHADOW_RAM_DUMP_LEN 0 #define FW_DEFAULT_CHECKSUM 0xFF /* checksum always 0xFF */ #define FW_NVM_DATA_OFFSET 3 +#define FW_ANVM_DATA_OFFSET 3 #define FW_MAX_READ_BUFFER_SIZE 1024 #define FW_DISABLE_RXEN_CMD 0xDE #define FW_DISABLE_RXEN_LEN 0x1 @@ -3176,6 +3177,8 @@ enum ixgbe_fdir_pballoc_type { #define FW_PHY_INFO_ID_HI_MASK 0xFFFF0000u #define FW_PHY_INFO_ID_LO_MASK 0x0000FFFFu +#define IXGBE_SR_IMMEDIATE_VALUES_PTR 0x4E + /* Host Interface Command Structures */ #pragma pack(push, 1) @@ -3479,6 +3482,8 @@ typedef u64 ixgbe_physical_layer; #define IXGBE_PHYSICAL_LAYER_1000BASE_SX 0x04000 #define IXGBE_PHYSICAL_LAYER_10BASE_T 0x08000 #define IXGBE_PHYSICAL_LAYER_2500BASE_KX 0x10000 +#define IXGBE_PHYSICAL_LAYER_2500BASE_T 0x20000 +#define IXGBE_PHYSICAL_LAYER_5000BASE_T 0x40000 /* Flow Control Data Sheet defined values * Calculation and defines taken from 802.1bb Annex O From nobody Fri Sep 27 03:41:43 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 4XFGVJ1JTmz5XQg2; Fri, 27 Sep 2024 03:41: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 4XFGVH6N7Rz4sLB; Fri, 27 Sep 2024 03:41:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YoAimCH19Ld6c1l3vBrh9AZRa64J4cDMdfFsk7x5Pn8=; b=PMP2vlrqn8QguAINCzjm6ZWFBcwmYJRl3dZcjiluC0XB9rhO4SKFztmgessL/Klg80iwKB nNZX06wLvBdPD/3IuGhwprEEAJOXA7cWX7kJ5xa2zXb4ouyIai+htWkpZSwsiJPyAKwDjb l1ABURxPgt5ApCDYra0R3KAlZIA2ElGrNFrNCFr79Tv5KP416Uzs7DsOx6oZVhkdmv5o0O m7Y4ikkFQ+JC+D0X0MySex7uHyymPs8yUs8xSWpOHsK14T/xB/kvtu2KF5iFCeAYVX6bc/ WqVv6msZhn7iCatMeRpfpWTvMnifO54dj/7Q/6p9+e62OpZ6XIZUAbAvjxzhJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YoAimCH19Ld6c1l3vBrh9AZRa64J4cDMdfFsk7x5Pn8=; b=pCX7g7YsJh+eJw5qiJskr6r3WnUE/5qXLjmFuYA34d901rS/xl5oWW9EJ+0A5OlIiFqug6 wKLLk2zTxurpuAVRCphJ1zciOVlO85Cs1dGJDMhiUlL9pJtrv363dphby309efYo3ykSzw TpdOYxoRiSdvp4SqihsMgkc6sP8lLGjlC3lgB5kEBOHubnec/NnPHg0/li2NB40Qy/wZnN 7hFDYByfWB8tNZ0pqv2zQD73uiTzAF678URgtgXppubWTS8DPExOLzdYd2iBUh/fkLGBg9 bqML3jMHeP8F5pBpjtumVqZHObsthSrwFqZ8xyXTGbd88AVL4OEu5iPnvxOmyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408503; a=rsa-sha256; cv=none; b=WVhmEaKnthACUXXadxJTgCXZU8Lt23wJ9c3RNCazj6lrMwbu90knpXOSJnzEYyPEPGUocC MTS7XALrLeI38CpKCoib9qYYbH2FhU0bjJVevWBK1fyvToqwxwJu2ppmVsezw0xw55Dmxw uvuf7bgQ9aHwyKxDtcpGsMxKA6MfKSHWyk2ampBLxxmSiXxgHxtGoqrZNbZtyAf6LYSJA7 BwXSSCQwcsay7d9EiVVuD0IlnFkPRzYFJVt73QANWyi7A1Y6mpPO3MR+Nkr7i/welFaOU6 rbrGfxHRBgSUhjLBUmxEpFkaFHMq3lXcvVEChnOOGG2Gq6bdRAxFof6NV2ujyw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVH5syczPJj; Fri, 27 Sep 2024 03:41:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48R3fhEV055623; Fri, 27 Sep 2024 03:41:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fhWM055620; Fri, 27 Sep 2024 03:41:43 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:43 GMT Message-Id: <202409270341.48R3fhWM055620@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: e4b9ac53e3ae - stable/13 - ixgbe: improve Atom C3000 SWFW semaphore acq List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: e4b9ac53e3ae3d8c36d8a19e5ed826bcac90faa4 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=e4b9ac53e3ae3d8c36d8a19e5ed826bcac90faa4 commit e4b9ac53e3ae3d8c36d8a19e5ed826bcac90faa4 Author: Barbara Skobiej AuthorDate: 2024-09-20 03:29:36 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:40:32 +0000 ixgbe: improve Atom C3000 SWFW semaphore acq DPDK commit message net/ixgbe/base: improve SWFW semaphore acquisition HWSW semaphore acquisition in Atom C3000 NIC is a two stage process. Each time two semaphore acquisitions are required. Each second semaphore failure requires re-acquisition of first semaphore. This patch decouples the two acquisitions preventing potentially hundreds of thousands of unnecessary loop iterations. Signed-off-by: Barbara Skobiej Obtained from: DPDK (99f960c) (cherry picked from commit cc9944183187308a71489651b11342d293aac7d1) --- sys/dev/ixgbe/ixgbe_x550.c | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c index 275a3ff8c808..2c9ead8fd247 100644 --- a/sys/dev/ixgbe/ixgbe_x550.c +++ b/sys/dev/ixgbe/ixgbe_x550.c @@ -4242,36 +4242,39 @@ static s32 ixgbe_acquire_swfw_sync_X550a(struct ixgbe_hw *hw, u32 mask) DEBUGFUNC("ixgbe_acquire_swfw_sync_X550a"); - while (--retries) { - status = IXGBE_SUCCESS; - if (hmask) - status = ixgbe_acquire_swfw_sync_X540(hw, hmask); - if (status) { - DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n", - status); - return status; - } - if (!(mask & IXGBE_GSSR_TOKEN_SM)) - return IXGBE_SUCCESS; + status = IXGBE_SUCCESS; + if (hmask) + status = ixgbe_acquire_swfw_sync_X540(hw, hmask); + + if (status) { + DEBUGOUT1("Could not acquire SWFW semaphore, Status = %d\n", status); + return status; + } + + if (!(mask & IXGBE_GSSR_TOKEN_SM)) + return IXGBE_SUCCESS; + while (--retries) { status = ixgbe_get_phy_token(hw); - if (status == IXGBE_ERR_TOKEN_RETRY) - DEBUGOUT1("Could not acquire PHY token, Status = %d\n", - status); if (status == IXGBE_SUCCESS) return IXGBE_SUCCESS; - if (hmask) - ixgbe_release_swfw_sync_X540(hw, hmask); - if (status != IXGBE_ERR_TOKEN_RETRY) { - DEBUGOUT1("Unable to retry acquiring the PHY token, Status = %d\n", - status); + DEBUGOUT1("Retry acquiring the PHY token failed, Status = %d\n", status); + if (hmask) + ixgbe_release_swfw_sync_X540(hw, hmask); return status; } + + if (status == IXGBE_ERR_TOKEN_RETRY) + DEBUGOUT1("Could not acquire PHY token, Status = %d\n", + status); } + if (hmask) + ixgbe_release_swfw_sync_X540(hw, hmask); + DEBUGOUT1("Semaphore acquisition retries failed!: PHY ID = 0x%08X\n", hw->phy.id); return status; From nobody Fri Sep 27 03:41: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 4XFGVK1hmjz5XQsx; Fri, 27 Sep 2024 03:41: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 4XFGVK0F8Nz4s5Q; Fri, 27 Sep 2024 03:41:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BLlPJxK85BibQaRTvLCdGFRbmBiTo8ScIOJ5zUybc6c=; b=IDxLGE8g1yC6dtBiXmqrXCzQscYqGeeKmLh8VQJMe7uK+tCqJt1o+77VhSjLU2/orwg+ea CJJjqYr2PGP4TV9diYFQMC2R50MPT+al38MqiptkhrVSvBd24BnWj1AbNwTwigsN2e3GS8 IM3Fj1BazMd4lNNsQto5LZmBFlOCsGZs5LbBcGoKqvxsLTt8Z4MPAVJ0tBAZdeuhb0EZfM oxfOsGVR/mWFovHAZ8cegqIjk2vXIUxP0yqqkREdCyGpuSPOEQ4eyeycc5Cas1pGRZSvgx 8vdzsyu/8Mvx2eGnKsOUu8JA4YXwJ/sDIhUUixQRSxkzlzEN3okWSrZGifTxNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BLlPJxK85BibQaRTvLCdGFRbmBiTo8ScIOJ5zUybc6c=; b=E3q7XOlrFb/StoXBXYEfHg0uhPhiIfYrD1F4BsW7NIjKID/6vJcVv7N5OfJRI44i07qrH9 tl1/VrpQLTVC+Z3ENxuDzgdBD2ETNijwzyeNCoRAbix/6ZQVYus9oINoXcELDuaMp+0NBg Y0TilicH8APAmgJQCyjgEiSVbjbiQd75J92ab6DvveRUwtVwaoZsy2+qw+up9yYTd0+9OG pX03oFYh3kGnHFSJ8NVTIKgYqiB+de8uaALfuvGdvu2PSB/sZYSvcyaTGgwYOJMC9pZT8l R0OiiRdtXgdMTPwVtD4zuM/x9BstMnOQfjCXsvn+CHI+ArEwlm/1z7cfvdgoxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408505; a=rsa-sha256; cv=none; b=i06/CcV2Yna8e+BTAmZyk9xjiFnyokDaogWJ7k3ydmYrX+ITD+n9RMGy1JV1l3qzv6+jER 8PMTmTEgj5UktDlmdsKTVvaQtRMFIr5o1yKcIWFlSeJogZJMb5/dH5Io3rvxLY7ExGgn0b wTk8diiU7ZttFax4aGIlrzg7DElYo4laBojIakLfzra8J+JC9Xsb6FQrg9QW9oK4TWi49F WNcN2sdw+1UUVv5U+xzybSCFRIwIo1BkofahojSzbh3+J496cTfesxMjwzgjLgvm5X6zY7 3tsT5sQ3k6GHcj8w6DAz1Bot2fS9kBPJZxXISVpM8Wt3wUVl/RyhoOUL9YubIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVJ6z9dzPbD; Fri, 27 Sep 2024 03:41: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 48R3fiDq055674; Fri, 27 Sep 2024 03:41:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fibF055671; Fri, 27 Sep 2024 03:41:44 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:44 GMT Message-Id: <202409270341.48R3fibF055671@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: 78cb32166d50 - stable/13 - ixgbe: prevent PBA read over eeprom word size List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 78cb32166d501dd867cced689fc9308798569b1f Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=78cb32166d501dd867cced689fc9308798569b1f commit 78cb32166d501dd867cced689fc9308798569b1f Author: Dawid Zielinski AuthorDate: 2024-09-20 03:33:37 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:40:43 +0000 ixgbe: prevent PBA read over eeprom word size DPDK commit message net/ixgbe/base: prevent untrusted loop bound Added length check against EEPROM size in words to prevent untrusted loop bound reported by static code analysis. Signed-off-by: Dawid Zielinski Obtained from: DPDK (6b58617) (cherry picked from commit 25771c8c1ae606436823854de01fc2b23178e353) --- sys/dev/ixgbe/ixgbe_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 7cf9b8d05127..7643d4028529 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -713,7 +713,7 @@ s32 ixgbe_read_pba_string_generic(struct ixgbe_hw *hw, u8 *pba_num, return ret_val; } - if (length == 0xFFFF || length == 0) { + if (length == 0xFFFF || length == 0 || length > hw->eeprom.word_size) { DEBUGOUT("NVM PBA number section invalid length\n"); return IXGBE_ERR_PBA_SECTION; } From nobody Fri Sep 27 03:41: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 4XFGVM36P2z5XQt2; Fri, 27 Sep 2024 03:41: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 4XFGVM22B5z4sDn; Fri, 27 Sep 2024 03:41:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=533xaT1GmfRLGfYA/Gy6zHYbpC4MwhASnLzI4omhS64=; b=ZyaVYY3AX/H+emyfbFCvWyVpUXMyCb6xAwVNiDybZXRBygaKCw/XrWJNeVtKlUCQw7SBXG gn/AvNAhvtnMwXD9zWcIV8nEEQzJSHwl61Q372V9dcKlgqfZTlGddajX2cylGb2peLHlnu En5g3ufCigxdqI/DwEs3DNI8O7jeqgHAuilzAvqj7lafaX3/K955fDX5uxhe+OaJx4ULUM zLJyelwBi97FQsNKorcNwWlg46PZfjOD6W64Sn0C74XgwGTGe5ShKIu+c6syrE1Bb2z8dF UrDLw7B3/nInoBwDjftLj4tb4gPLMimRP6zDZFxL8SLspCL/5PaJkPCWHdtczA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=533xaT1GmfRLGfYA/Gy6zHYbpC4MwhASnLzI4omhS64=; b=dMKnTHR0+uevoToYNaHr/UuviZQsQsG8TfF2hbm74tAxZlQLyRwSopefDQJ1kEfcKromr5 EvqPWHxBys8HQ6ZJwgba1ld7eJ7N4kLeWV99YGtBbNGG3xaaLBd9LJC8gVjngvRN9FO2dX nZktLKGoXI1FQQRc0dVy9Zc7gFYX5Bd3K0xJE137xlLkZrp8VwTNl0toYHj1EZobiS9WCR 11ldZdgSIN/1FdomSmvij4uNZHdYSsDzUtQPkaCyZQRB5HKeRQqFAQpFSV0QWzr43CUymc ENO2okTzyPiheyOR7NA4ijfeSDfgkzKlF4jp00hqyBsNpWK8a7fymDNggccHPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408507; a=rsa-sha256; cv=none; b=rz1ru5LIi99I9p+fG3Uw1iQ4hRFeW8itjGfjQMAxmmB7ZcUjys1fSBIuEEnjqOhGioCVzE b8uGaa6DScpJG8V6TGelir07WhI7wefbqiWC392hsScL1mjaiN5UU1+ZmVhiuNG3bKrie/ Yxd+nwfiJd30k2WWwBhrKuHXx5MCpW3iamTHuE3asOq1nQM+JWdWguakPA8J9+Kjo8kuSD FUkjG0nc6gTka/Grv25Lo1DnDMklpdFy70yogzo6ZHCIXpX6u445uQjy8CbDWd6Uoh97U5 fhwzw1eVLw8DwNTUS7OYLsbjoNHU4z5gseMbU4ArxB0s8ZI+YyVPTbA8Zm6MVg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVM1MfdzPH2; Fri, 27 Sep 2024 03:41: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 48R3fl7M055758; Fri, 27 Sep 2024 03:41:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fl5o055755; Fri, 27 Sep 2024 03:41:47 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:47 GMT Message-Id: <202409270341.48R3fl5o055755@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: ed31e4eca057 - stable/13 - ixgbe: fix compilation for VF List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: ed31e4eca0570b19106f9f0d77010fb2f9b0e8e1 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=ed31e4eca0570b19106f9f0d77010fb2f9b0e8e1 commit ed31e4eca0570b19106f9f0d77010fb2f9b0e8e1 Author: Doug Moore AuthorDate: 2024-09-20 07:54:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:41:08 +0000 ixgbe: fix compilation for VF The mailbox API changed in version 15 and these array ops were left out of the recent code import as applicable to FreeBSD. Reported by: vishwin, yasu Differential Revision: https://reviews.freebsd.org/D46708 (cherry picked from commit 267f223f622fdbf779cc43b5a564bb02e2b59ecd) --- sys/dev/ixgbe/if_sriov.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 794f2e0365f5..b9d8fb2ee2fb 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -100,7 +100,7 @@ ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - sc->hw.mbx.ops.write(&sc->hw, &msg, 1, vf->pool); + sc->hw.mbx.ops[0].write(&sc->hw, &msg, 1, vf->pool); } static inline void @@ -374,7 +374,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; - hw->mbx.ops.write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); + hw->mbx.ops[0].write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); } /* ixgbe_vf_reset_msg */ @@ -565,7 +565,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[IXGBE_VF_TRANS_VLAN] = (vf->default_vlan != 0); resp[IXGBE_VF_DEF_QUEUE] = 0; - hw->mbx.ops.write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); + hw->mbx.ops[0].write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); } /* ixgbe_vf_get_queues */ @@ -582,7 +582,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = hw->mbx.ops.read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = hw->mbx.ops[0].read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); if (error != 0) return; @@ -643,13 +643,13 @@ ixgbe_handle_mbx(void *context) vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) { - if (hw->mbx.ops.check_for_rst(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_rst(hw, vf->pool) == 0) ixgbe_process_vf_reset(sc, vf); - if (hw->mbx.ops.check_for_msg(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_msg(hw, vf->pool) == 0) ixgbe_process_vf_msg(ctx, vf); - if (hw->mbx.ops.check_for_ack(hw, vf->pool) == 0) + if (hw->mbx.ops[0].check_for_ack(hw, vf->pool) == 0) ixgbe_process_vf_ack(sc, vf); } } From nobody Fri Sep 27 03:41: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 4XFGVL29qsz5XQmh; Fri, 27 Sep 2024 03:41: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 4XFGVL0h13z4s7P; Fri, 27 Sep 2024 03:41:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pkyKHewjHN30OI8m/Z2aGoR12eQosC2fj4PB8ROGehA=; b=Yh+UdXUwujJPVxE1qzjiOshFi5zQTydEfv9HqJuRzOIR1FzOfO03nxzBTq+n9cMlkyAUP6 YMlNkcDszrhzr+p1FRPcdf/q7SHxqS8P3D6McBOTo28oAmXrYQWOxqPKwufyoaCKLO7pu4 gQTELXdL+dBVvfI22hyUB6OofjGigMrozRq28fdMUUfneHsiXJn/MPt8PGDYUAQb+SJ0Uf kCYT7QghsDx3KleD7iApR+NdkUQzMHl6wmuwXTTB7ijC0Lslt6yMoIQ7mYXK8TGfVXipi+ jxJfRHhM4d8NH8H5nab9vFGHW0HQv9m/B59am+nSDmb/VMg9ghRMGjodUF+zxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pkyKHewjHN30OI8m/Z2aGoR12eQosC2fj4PB8ROGehA=; b=spQgZ56t6CClj7UF1ATUoXwGWNM5tFovxh0k0oR2UsoSiKM3EcUzZctGV3tWJdlWP5zQ61 8vl+CnK/a9qdjtWb4UOBOPKMiLsyrQ7r5ZSIHEZeieSpQNHfGWDwAd/SdxZppbacsF4mro eXgJtXdQPTIgltJLR1TAoTsZ7ruJYaB/Hts9NkBgeCGu9pEdV+w0BQCL6vfvs04GjE2G6p 9DS7WbwWxCUoE2IGFeGtOcPLEoAcCLp0KS+o9uApAqmDHN/pgnyeZS39MjbKLYXRNEYUoj PVohfeWZk/+qjygoJz05Oma1FBJr4ISuhhAKA9iCghffNXGxSPj6sg/dYJ+0VQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408506; a=rsa-sha256; cv=none; b=md2Fpedk43MiT6r+Sy9GUiQJshx1cif1pNBDYLOQU3+S4PWwi9W36fzQfEpbY+usp4euQ7 ExYOxUiVW8loLBhWpPrNmWjqGXH3cZD7KGCe3D8qfnrF0aw0fhRx6sssnXmRe8S1tacGVE yqmNNBanTFxkECw6M7jT0IDl6YKfSO2RaG67+dBYACxniJbpsg3c3QtPiqpBjfp4L60ihi BRtrV5ix9IsxaSH0pwEu+VS4rHS9XES6ghjIP/tUBEbxAlYvkPK3CBMToAMJC7jjYNHlUE rpp0bJBxU73iahI7DUxgaG+UyM4hoBa7aHmRQU+t2mu4+zLP4KNazTvRYn/gzw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVL0G56zPj8; Fri, 27 Sep 2024 03:41: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 48R3fjRE055716; Fri, 27 Sep 2024 03:41:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fjCP055713; Fri, 27 Sep 2024 03:41:45 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:45 GMT Message-Id: <202409270341.48R3fjCP055713@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: 6111b7ba5f18 - stable/13 - ixgbe: remove unused function prototypes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 6111b7ba5f1827130056155b78875cfc7e0f2d7c Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=6111b7ba5f1827130056155b78875cfc7e0f2d7c commit 6111b7ba5f1827130056155b78875cfc7e0f2d7c Author: Chinh Cao AuthorDate: 2024-09-20 03:36:14 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:40:56 +0000 ixgbe: remove unused function prototypes DPDK commit message net/ixgbe/base: remove unused function prototypes There are some function prototypes that were introduced at some point but were never implemented, so remove them. Signed-off-by: Chinh Cao Obtained from: DPDK (e9cc1b4) (cherry picked from commit 420c984470270e0f7200124d8015236584aef243) --- sys/dev/ixgbe/ixgbe_api.h | 1 - sys/dev/ixgbe/ixgbe_x550.h | 1 - 2 files changed, 2 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_api.h b/sys/dev/ixgbe/ixgbe_api.h index 9134971d9c98..33c1cd1baeaf 100644 --- a/sys/dev/ixgbe/ixgbe_api.h +++ b/sys/dev/ixgbe/ixgbe_api.h @@ -148,7 +148,6 @@ u64 ixgbe_get_supported_physical_layer(struct ixgbe_hw *hw); s32 ixgbe_enable_rx_dma(struct ixgbe_hw *hw, u32 regval); s32 ixgbe_disable_sec_rx_path(struct ixgbe_hw *hw); s32 ixgbe_enable_sec_rx_path(struct ixgbe_hw *hw); -s32 ixgbe_mng_fw_enabled(struct ixgbe_hw *hw); s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw); s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 fdirctrl); s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 fdirctrl, diff --git a/sys/dev/ixgbe/ixgbe_x550.h b/sys/dev/ixgbe/ixgbe_x550.h index 45e4cad9f1f7..8bff5e3d2bf6 100644 --- a/sys/dev/ixgbe/ixgbe_x550.h +++ b/sys/dev/ixgbe/ixgbe_x550.h @@ -103,7 +103,6 @@ s32 ixgbe_write_phy_reg_x550a(struct ixgbe_hw *hw, u32 reg_addr, u32 device_type, u16 phy_data); s32 ixgbe_setup_fc_fiber_x550em_a(struct ixgbe_hw *hw); s32 ixgbe_setup_fc_backplane_x550em_a(struct ixgbe_hw *hw); -s32 ixgbe_setup_fc_sgmii_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_fiber_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_backplane_x550em_a(struct ixgbe_hw *hw); void ixgbe_fc_autoneg_sgmii_x550em_a(struct ixgbe_hw *hw); From nobody Fri Sep 27 03:41: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 4XFGVN6XJhz5XQ5f; Fri, 27 Sep 2024 03:41: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 4XFGVN3VFCz4sJr; Fri, 27 Sep 2024 03:41:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TSomqu326zDVwOU9GJFLyZVRy6xXZGFZV2PBC8GvGw8=; b=kXhm1tufnSA6Gjj4pkZKzUDcMSDeDJCmdCUTCdG6nvhcKJNuNaQ59n/6nZMygozToUpEZY 7+m3Z2PzJJMoAsZ/GrbKFpfxrtWlfty7sQ++vu7I3uGbjHSvjJz2yw1PPyQ6g6fW7iATFE NdjRaIw+oG21dgWVjZgHKNBpeEVXXHhmsnFRV0tfPH7AfIPIQK57Syd0+S+Vk2lOd9gD76 GzJxb7eMusgpTJDFW1R8UBfsAOy423XJbInYSHwoXAUT7KljKmkFtYcfp7LseogBO5sKgF X+VjuyK0QVgh5zsGkpUL5AzqId3ARqX9xjZubWEQ56GsattB3h8j1HMNZg1gPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727408508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TSomqu326zDVwOU9GJFLyZVRy6xXZGFZV2PBC8GvGw8=; b=ajYQIYeiIIplrtpZFBC+F3+2aU0QMjl0HALi5gxQbSwvRSbvE7h9CgZ6Lu5TiE/BnAQJuZ 7mLr95eTcnB3V4TEZ5bbay7syWQhQXD5CcLArrg+qTSHwlCBmPmrrDT2tbfX+UIubPV5YD WlejAHeMJ9JEoXqDQdK/8yX8yz7Fd4ZRuJrGyrSSrgQolZbiU7EcvNNqN2EdP+1tWEsZyv Esgx7k9umMtKOCh26QcE6IiI78WZuesctEwDI6CwqJ1bRGZlFYH4oAUiXN0EYyHmigWcOS bLbesoqZSn/RQyEKB0IiRqIafxJnkYJB6x3o6EvMqPJGQqXEOxWcmo6fJ/h0Ug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727408508; a=rsa-sha256; cv=none; b=aZtOh5OdHARg6X2vXLe6OMFwClxYq83j/QeXjo1Ybx82eEqKn6rxZvcjTHyr4Y9BAjMsbc t7EXxV/wsFtzsp8AyAln+GZMM6ENSO5PBeq/JGu8fBJKbGpomP7RKRxSMvTlohrhxoCMKO 61Gsulmalj2pkmpIEW2rnhWTCl12FQsOMh0+uQJ+chirOBXtil4ZlgabRenq9WjT/BTlRL q4Df0yOMyAoLM9/xrZg6ERr5yOr7DdpZ5kptH+XEvzYgIbUtmgYwB+GGRgKlW6oq+SWYAY pseB905othc0LwSVjYSqWLeB/4Lx+sW8gOTHTVFW7rNZgdTm7ZacwfxIgI2QfQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFGVN2jw1zPJm; Fri, 27 Sep 2024 03:41: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 48R3fmKK055818; Fri, 27 Sep 2024 03:41:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48R3fmZQ055815; Fri, 27 Sep 2024 03:41:48 GMT (envelope-from git) Date: Fri, 27 Sep 2024 03:41:48 GMT Message-Id: <202409270341.48R3fmZQ055815@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: 44473083c0a7 - stable/13 - ixgbe: update if_sriov to use the new mailbox apis List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 44473083c0a76fab3b38a066bba6d206f556deca Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=44473083c0a76fab3b38a066bba6d206f556deca commit 44473083c0a76fab3b38a066bba6d206f556deca Author: Kevin Bowling AuthorDate: 2024-09-21 03:26:42 +0000 Commit: Kevin Bowling CommitDate: 2024-09-27 03:41:22 +0000 ixgbe: update if_sriov to use the new mailbox apis This fixes a page fault when creating VFs and updates to the new mailbox API and naming conventions. The functionality works to the same level that it did before my recent changes. In particular on my 82599 it creates both passthru and ixv interfaces. In either case, the PF seems to lose the ability to pass traffic. The ixv driver fails to attach. These issues are present with or without my updates. If you use SR-IOV on ixgbe I would be interested in hearing what does or does not work for you. MFC after: 6 days (cherry picked from commit 36c516b31136f645472c12d8597534656272acd6) --- sys/dev/ixgbe/if_sriov.c | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index b9d8fb2ee2fb..0b94c8626b0e 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -100,18 +100,18 @@ ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - sc->hw.mbx.ops[0].write(&sc->hw, &msg, 1, vf->pool); + ixgbe_write_mbx(&sc->hw, &msg, 1, vf->pool); } static inline void -ixgbe_send_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_success(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void -ixgbe_send_vf_nack(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_failure(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); @@ -121,7 +121,7 @@ static inline void ixgbe_process_vf_ack(struct ixgbe_softc *sc, struct ixgbe_vf *vf) { if (!(vf->flags & IXGBE_VF_CTS)) - ixgbe_send_vf_nack(sc, vf, 0); + ixgbe_send_vf_failure(sc, vf, 0); } static inline boolean_t @@ -374,7 +374,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; - hw->mbx.ops[0].write(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); + ixgbe_write_mbx(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); } /* ixgbe_vf_reset_msg */ @@ -387,12 +387,12 @@ ixgbe_vf_set_mac(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) /* Check that the VF has permission to change the MAC address. */ if (!(vf->flags & IXGBE_VF_CAP_MAC) && ixgbe_vf_mac_changed(vf, mac)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } if (ixgbe_validate_mac_addr(mac) != 0) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } @@ -401,7 +401,7 @@ ixgbe_vf_set_mac(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) ixgbe_set_rar(&sc->hw, vf->rar_index, vf->ether_addr, vf->pool, true); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_mac */ @@ -435,7 +435,7 @@ ixgbe_vf_set_mc_addr(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 *msg) vmolr |= IXGBE_VMOLR_ROMPE; IXGBE_WRITE_REG(&sc->hw, IXGBE_VMOLR(vf->pool), vmolr); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_mc_addr */ @@ -451,18 +451,18 @@ ixgbe_vf_set_vlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) tag = msg[1] & IXGBE_VLVF_VLANID_MASK; if (!(vf->flags & IXGBE_VF_CAP_VLAN)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } /* It is illegal to enable vlan tag 0. */ if (tag == 0 && enable != 0) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } ixgbe_set_vfta(hw, tag, vf->pool, enable, false); - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_vlan */ @@ -477,7 +477,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (vf_max_size < ETHER_CRC_LEN) { /* We intentionally ACK invalid LPE requests. */ - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -485,7 +485,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) if (vf_max_size > IXGBE_MAX_FRAME_SIZE) { /* We intentionally ACK invalid LPE requests. */ - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -507,7 +507,7 @@ ixgbe_vf_set_lpe(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) IXGBE_WRITE_REG(hw, IXGBE_MHADD, mhadd); } - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); } /* ixgbe_vf_set_lpe */ @@ -516,7 +516,7 @@ ixgbe_vf_set_macvlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) { //XXX implement this - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); } /* ixgbe_vf_set_macvlan */ @@ -529,11 +529,11 @@ ixgbe_vf_api_negotiate(struct ixgbe_softc *sc, struct ixgbe_vf *vf, case IXGBE_API_VER_1_0: case IXGBE_API_VER_1_1: vf->api_ver = msg[1]; - ixgbe_send_vf_ack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); break; default: vf->api_ver = IXGBE_API_VER_UNKNOWN; - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); break; } } /* ixgbe_vf_api_negotiate */ @@ -552,7 +552,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) switch (msg[0]) { case IXGBE_API_VER_1_0: case IXGBE_API_VER_UNKNOWN: - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); return; } @@ -565,7 +565,7 @@ ixgbe_vf_get_queues(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) resp[IXGBE_VF_TRANS_VLAN] = (vf->default_vlan != 0); resp[IXGBE_VF_DEF_QUEUE] = 0; - hw->mbx.ops[0].write(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); + ixgbe_write_mbx(hw, resp, IXGBE_VF_GET_QUEUES_RESP_LEN, vf->pool); } /* ixgbe_vf_get_queues */ @@ -582,7 +582,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = hw->mbx.ops[0].read(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = ixgbe_read_mbx(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); if (error != 0) return; @@ -595,7 +595,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) } if (!(vf->flags & IXGBE_VF_CTS)) { - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_success(sc, vf, msg[0]); return; } @@ -622,7 +622,7 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) ixgbe_vf_get_queues(sc, vf, msg); break; default: - ixgbe_send_vf_nack(sc, vf, msg[0]); + ixgbe_send_vf_failure(sc, vf, msg[0]); } } /* ixgbe_process_vf_msg */ From nobody Fri Sep 27 22:15: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 4XFlCC3CZ5z5XKCK; Fri, 27 Sep 2024 22:15:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFlCC27Vbz4kPx; Fri, 27 Sep 2024 22:15:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727475319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lIjx3FQBj3/YLwX7RWO0/3yvljvCZXOyAiFYkqScNxY=; b=ZUnXMdgnDisXDY0ZQQe0+qpEvQd7xtuBMxu9psAGGnKeQ7NPCVTBFKFPeIhIevUfQFmBip H5ao040r6moBiErc0wc0FCrjNV8MjLk2sdvgFAGi6ChTVA2PwHHcUtWDS7lMLhWvz521ra 3xrSqUuFLUj5z0hjcl1Loz0i6eOLm96u3VbmutbeAQKVwPf0KpD0eSQcKbjjTbNNcmem3p nV4vhY0Jx63h/HhjjMWYehS5O556iZx0LRngdjPQGJ6pdvzDVDyocqYvhI4Ys2ZSihM3Wr rTXRG4W3HpmvwmRTDN5hZZO4Q3OnMSKFmyQ95774MWA7o4tHCfq8YpmHxejGNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727475319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lIjx3FQBj3/YLwX7RWO0/3yvljvCZXOyAiFYkqScNxY=; b=ERehpbb0Tpkfneo3XtZk7SlHSn7eaDt2BD/c5dGib96DgFJQGDMVpJjNBB5RHXjH/qqRDJ eOsPAV707+WElQ6creau5kjtfBRbzFKYtfttMLEh5IXsLnrPt0Vhp6A7rwLiTB/JwMPDo/ 48FLSXVKw02F1pGNaRPHNO6EvZLcl0XAnmtJbkjuINnq7e7dgHbIqT5FYKKqkFT94nTa3R dfkwdRrAH5zLSIzVPIMy2UJvw09SBDQkbhbrPrn6A7hdGA0vPwDjsyFm39qN6K08vuD1xS 1rkeQpZ8knSLkp6retzYvaR0wCnFe95UiqUvzP39vdj54JQYxhXYJMoQxS+43Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727475319; a=rsa-sha256; cv=none; b=ZVjzAoNfou+KiFpcUiKwc5VCIYFAKwI9R9sUISuNWhuE5BcwThisNCt8ehR36Yl5sj5tlm Uoh3N2xh4T1sOrGKHyjbOveGbHJSBQSTScYauNVlM2aaC2SYk+wztBOh0LRUuqysiHOiIc jRxRfj1TNZ3702QXg+QvR7da9ICtwqmBeHrZadjLJxpe8Lp1pxEHkxChJVt57MXnvXqoQS ccDwYeUU45XwxJBsiTQI7RQNkEhzU7J2qmuRQifD/WbgKrrpa5Zs0w8zk6jQqCXp7NXf1T 3DbqXMzknJ6vTpe+SIdcAWAtKOi1fsnlj5+xsuHTs+gSV+N/pDzPOYuhIpCpwA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFlCC1fGKzyMb; Fri, 27 Sep 2024 22:15:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48RMFJks038842; Fri, 27 Sep 2024 22:15:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48RMFJqY038839; Fri, 27 Sep 2024 22:15:19 GMT (envelope-from git) Date: Fri, 27 Sep 2024 22:15:19 GMT Message-Id: <202409272215.48RMFJqY038839@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: c09ca8f43de1 - stable/14 - mountd: Add check for "=" after exports(5) options List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c09ca8f43de12fecf701920675b793cbafba58c5 Auto-Submitted: auto-generated The branch stable/14 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=c09ca8f43de12fecf701920675b793cbafba58c5 commit c09ca8f43de12fecf701920675b793cbafba58c5 Author: Rick Macklem AuthorDate: 2024-09-06 23:41:12 +0000 Commit: Rick Macklem CommitDate: 2024-09-27 22:13:49 +0000 mountd: Add check for "=" after exports(5) options Some exports(5) options take a "=arg" component that provides an argument value for the option. Others do not. Without this patch, if "=arg" was provided for an option that did not take an argument value, the "=arg" was simply ignored. This could result in confusion w.r.t. what was being exported, as noted by the Problem Report. This patch adds a check for "=arg" for the options that do not take an argument value and fails the exports line if one is found. PR: 281003 (cherry picked from commit 3df987c99d1194a0e43a84853e934aa0c0ab09db) --- usr.sbin/mountd/mountd.c | 44 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/usr.sbin/mountd/mountd.c b/usr.sbin/mountd/mountd.c index 6583bfbc0ffb..fa270f3a42d4 100644 --- a/usr.sbin/mountd/mountd.c +++ b/usr.sbin/mountd/mountd.c @@ -2827,7 +2827,7 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, { char *cpoptarg, *cpoptend; char *cp, *endcp, *cpopt, savedc, savedc2; - int allflag, usedarg; + int allflag, usedarg, fnd_equal; savedc2 = '\0'; cpopt = *cpp; @@ -2838,14 +2838,18 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, while (cpopt && *cpopt) { allflag = 1; usedarg = -2; + fnd_equal = 0; if ((cpoptend = strchr(cpopt, ','))) { *cpoptend++ = '\0'; - if ((cpoptarg = strchr(cpopt, '='))) + if ((cpoptarg = strchr(cpopt, '='))) { *cpoptarg++ = '\0'; + fnd_equal = 1; + } } else { - if ((cpoptarg = strchr(cpopt, '='))) + if ((cpoptarg = strchr(cpopt, '='))) { *cpoptarg++ = '\0'; - else { + fnd_equal = 1; + } else { *cp = savedc; nextfield(&cp, &endcp); **endcpp = '\0'; @@ -2858,6 +2862,10 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, } } if (!strcmp(cpopt, "ro") || !strcmp(cpopt, "o")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXRDONLY; } else if (cpoptarg && (!strcmp(cpopt, "maproot") || !(allflag = strcmp(cpopt, "mapall")) || @@ -2896,15 +2904,31 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, usedarg++; opt_flags |= OP_NET; } else if (!strcmp(cpopt, "alldirs")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } opt_flags |= OP_ALLDIRS; } else if (!strcmp(cpopt, "public")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXPUBLIC; } else if (!strcmp(cpopt, "webnfs")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXPUBLIC|MNT_EXRDONLY|MNT_EXPORTANON); opt_flags |= OP_MAPALL; } else if (cpoptarg && !strcmp(cpopt, "index")) { ep->ex_indexfile = strdup(cpoptarg); } else if (!strcmp(cpopt, "quiet")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } opt_flags |= OP_QUIET; } else if (cpoptarg && !strcmp(cpopt, "sec")) { if (parsesec(cpoptarg, ep)) @@ -2912,10 +2936,22 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, opt_flags |= OP_SEC; usedarg++; } else if (!strcmp(cpopt, "tls")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXTLS; } else if (!strcmp(cpopt, "tlscert")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXTLS | MNT_EXTLSCERT); } else if (!strcmp(cpopt, "tlscertuser")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXTLS | MNT_EXTLSCERT | MNT_EXTLSCERTUSER); } else { From nobody Fri Sep 27 22:19: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 4XFlJP016kz5XKM4; Fri, 27 Sep 2024 22:19:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFlJN69cZz4lpy; Fri, 27 Sep 2024 22:19:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727475588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iTWKZgn8VkfO2ENLdRWG8rYB1pbzCNyPXn5Q16gNlI0=; b=H80QXd8oiyriFHs6KfgD4kqLVOv4xPFBgy014GM/xtdXNt9k8IWwENwY5TJSpAZBm0SpDj IqyFfl7wsSrx3w9GmlI9hIZadOurvvevhouvBS5LENCilLpXFaa0ndUYPzGDXRZiXExZIr 4WqaUDbbF2vRSKbdL9tRZRXBuVPvGdUkmebu4Iq7EUcqtsuzo2zKXnKB8x5o0toGITLAfY s1IPvN1NSoubYYQCTjUqzRPbPgKImh6e2PbyrEfIAqF9ZTu5aExNYdLGW+VCGEm+19EbrL 1SBh1wzJBDIdi8mlIcURVmg9mr1EjY+oDPrxkVgGS4s1GWGI/DmWj09/Ri1nzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727475588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iTWKZgn8VkfO2ENLdRWG8rYB1pbzCNyPXn5Q16gNlI0=; b=i9HgQTIgem02tNU/dRnomYO/H8Ib5fV9hc1wM/DKPCu/c5lreaDJNMLuL6s1NiiPfLZlb4 Axr9kEbdtQpFmYagOvS4jkAGCAOiBgf4FJrWL8FqeknHbNif353djzMk7NP5drt0i4x0l2 LuUWeJGjFhGprMM67fShuL2pieE7d44Qe/nGox+6K8EZcbcjNARdFMhcGjtsiB5iDyptDp k9VGE4voo4XWXyUgy8oUBHTLN1E2zBifV0yMd8nRzPb13R7402i9qXOMUesVnZ2GFAAe3e fhsCH77/mRhYSsxhXKYTzZf92YIYaPpZwvCy6m3QzPstGEJDMYmdgqs3/4T8kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727475588; a=rsa-sha256; cv=none; b=B7SZnF5WKvqm/oLP5a+2UUPUwHR4h+OxJcnhOLl4gelHdkZBwd5Mbev21PhauA8tvsIgv0 ZJD2SYyJGYkrv15//db+10/qYW0oWC4i5HXxL1iWodU4sdJaNjB9/jVAFQ07RURhjOtumw hC9i/MBs8P0gukLgWvVQ0LtTVWt0ExCmUDHqCDbJsc09dEXhr41FAhoyl9fsET91R/iypZ cvk21/QP91OT4xR/aKvXf/qtAbPAC709bq7BlNF09sUlA53v+0GSdKBJrLsKICJ2BNrtYL +SS3WDFk7bYKcO3Fv+Kh7ct37uEAeFsDlED01ngN57Ev7FYtwdPyygJmkBRINA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFlJN59KzzyN8; Fri, 27 Sep 2024 22:19: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 48RMJm9D039842; Fri, 27 Sep 2024 22:19:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48RMJmmC039839; Fri, 27 Sep 2024 22:19:48 GMT (envelope-from git) Date: Fri, 27 Sep 2024 22:19:48 GMT Message-Id: <202409272219.48RMJmmC039839@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: 132f5d03d358 - stable/13 - mountd: Add check for "=" after exports(5) options List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 132f5d03d358d89d4030de9173cd6ca5b4b48d68 Auto-Submitted: auto-generated The branch stable/13 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=132f5d03d358d89d4030de9173cd6ca5b4b48d68 commit 132f5d03d358d89d4030de9173cd6ca5b4b48d68 Author: Rick Macklem AuthorDate: 2024-09-06 23:41:12 +0000 Commit: Rick Macklem CommitDate: 2024-09-27 22:18:46 +0000 mountd: Add check for "=" after exports(5) options Some exports(5) options take a "=arg" component that provides an argument value for the option. Others do not. Without this patch, if "=arg" was provided for an option that did not take an argument value, the "=arg" was simply ignored. This could result in confusion w.r.t. what was being exported, as noted by the Problem Report. This patch adds a check for "=arg" for the options that do not take an argument value and fails the exports line if one is found. PR: 281003 (cherry picked from commit 3df987c99d1194a0e43a84853e934aa0c0ab09db) --- usr.sbin/mountd/mountd.c | 44 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/usr.sbin/mountd/mountd.c b/usr.sbin/mountd/mountd.c index eba59ebf00a4..492d7a5e3647 100644 --- a/usr.sbin/mountd/mountd.c +++ b/usr.sbin/mountd/mountd.c @@ -2784,7 +2784,7 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, { char *cpoptarg, *cpoptend; char *cp, *endcp, *cpopt, savedc, savedc2; - int allflag, usedarg; + int allflag, usedarg, fnd_equal; savedc2 = '\0'; cpopt = *cpp; @@ -2795,14 +2795,18 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, while (cpopt && *cpopt) { allflag = 1; usedarg = -2; + fnd_equal = 0; if ((cpoptend = strchr(cpopt, ','))) { *cpoptend++ = '\0'; - if ((cpoptarg = strchr(cpopt, '='))) + if ((cpoptarg = strchr(cpopt, '='))) { *cpoptarg++ = '\0'; + fnd_equal = 1; + } } else { - if ((cpoptarg = strchr(cpopt, '='))) + if ((cpoptarg = strchr(cpopt, '='))) { *cpoptarg++ = '\0'; - else { + fnd_equal = 1; + } else { *cp = savedc; nextfield(&cp, &endcp); **endcpp = '\0'; @@ -2815,6 +2819,10 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, } } if (!strcmp(cpopt, "ro") || !strcmp(cpopt, "o")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXRDONLY; } else if (cpoptarg && (!strcmp(cpopt, "maproot") || !(allflag = strcmp(cpopt, "mapall")) || @@ -2853,15 +2861,31 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, usedarg++; opt_flags |= OP_NET; } else if (!strcmp(cpopt, "alldirs")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } opt_flags |= OP_ALLDIRS; } else if (!strcmp(cpopt, "public")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXPUBLIC; } else if (!strcmp(cpopt, "webnfs")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXPUBLIC|MNT_EXRDONLY|MNT_EXPORTANON); opt_flags |= OP_MAPALL; } else if (cpoptarg && !strcmp(cpopt, "index")) { ep->ex_indexfile = strdup(cpoptarg); } else if (!strcmp(cpopt, "quiet")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } opt_flags |= OP_QUIET; } else if (cpoptarg && !strcmp(cpopt, "sec")) { if (parsesec(cpoptarg, ep)) @@ -2869,10 +2893,22 @@ do_opt(char **cpp, char **endcpp, struct exportlist *ep, struct grouplist *grp, opt_flags |= OP_SEC; usedarg++; } else if (!strcmp(cpopt, "tls")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= MNT_EXTLS; } else if (!strcmp(cpopt, "tlscert")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXTLS | MNT_EXTLSCERT); } else if (!strcmp(cpopt, "tlscertuser")) { + if (fnd_equal == 1) { + syslog(LOG_ERR, "= after op: %s", cpopt); + return (1); + } *exflagsp |= (MNT_EXTLS | MNT_EXTLSCERT | MNT_EXTLSCERTUSER); } else { From nobody Sat Sep 28 03:52: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 4XFthH0Tkxz5Xh6d; Sat, 28 Sep 2024 03:52: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 4XFthG74ztz4RMp; Sat, 28 Sep 2024 03:52:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495551; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nCNCtmq46naWwsO6+LGsaiOnRa8psv7bQ8kfLK4uap4=; b=TeNntmLSMin4c/Q5Imqlt8G9OPhAM/T5LPiZdFPxGJimPVVmBxIInuIYXhXOVB/IRgbybA gm9u3BuomDFOJz3pbyYLzfpGA9l9TIEXuYJeNaRX5ALyvwOdUUspoDjkbtmAhGJGu9BmrE +XgTREml98v8CVLUoDky4nc/eqmEQ49UrAeFwukejWCFaFX2/3mKiKnni3qiOgWP8HHWT1 Jw4mQcRo5p+GHoP7sdWsfW0eSlRGM/MRflPH2vlR7URKkzBn5JKk19InI6g4eLDdp8LR41 LBbQn9/tuI6tN27/ZAKSJS2SnJWZbRm94Uied+NvXFkq/b+qTRU3CCH/QS2b0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495551; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nCNCtmq46naWwsO6+LGsaiOnRa8psv7bQ8kfLK4uap4=; b=N6HWnnrrymgJi7A/rem1Kljf1M2nbGVNZlWlAWwJWfYrbRrjApZKfBMn/02KlJ9EVaNfEZ 8RvuTnCrASDKDUP2SqOZSmkCoWPDP3BQFFsCBKfRjRq1lvWgBsqfo3TXdFj5h82kD65FLt Ka6XWNeVMOvu486cZ+7kjNdJB+o0MfZa7k2w539V/5Ar6Iabi2K3vHyf2Zm4Z3f6JmSm0e vx0vjwmhv5TBZ7/8NuuM17JdTZMDx8EHKhjd4Py1s0ewLvct0cbMae0VRGvbXALbJ2sNrR HYSOIK4fj6VVr1phRiDDmdo+T+9DTQk+BKcN35iGIpU4kSplYMLrLjf5tikyjg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727495551; a=rsa-sha256; cv=none; b=cgJ6Hg187+HNBnbvEmuQMt6VA57LexdBYnAnPZWr3M8deVrhSIIWt03jCuFX9UekySPs7W RgXqllUiPnub74nwWugpHJIwSzeIwUf2Z5PTV24K/Ijp6UzD3vpEt4EDXqYursHBn817+k 3gIJOeM3x6b1ZlYmzNFbPzskejxe4S9q3/oFz3XkoqhKREJY9bhLEO7jwoKmFqEMlNMVFC 7Y7vz4m8/GWdBICd5o8ptBeBnjf+v43pYIjnp25sC4p3OJ4xXbfarVmqZi/dMtoopsLLhG lLGvvcI2i+YPie8r4iKnzbHCoXe0sRW4o5pcd1AuZ9BE9rcHCU0KBNbtoPiLkQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFthG6h8cz17xT; Sat, 28 Sep 2024 03:52: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 48S3qUKj014439; Sat, 28 Sep 2024 03:52:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S3qUAk014436; Sat, 28 Sep 2024 03:52:30 GMT (envelope-from git) Date: Sat, 28 Sep 2024 03:52:30 GMT Message-Id: <202409280352.48S3qUAk014436@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: cc43f991ab3e - stable/14 - openssl: Import OpenSSL 3.0.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: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cc43f991ab3e46ec16f3f1395160805f01bf932e Auto-Submitted: auto-generated The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=cc43f991ab3e46ec16f3f1395160805f01bf932e commit cc43f991ab3e46ec16f3f1395160805f01bf932e Author: Enji Cooper AuthorDate: 2024-09-08 04:30:17 +0000 Commit: Enji Cooper CommitDate: 2024-09-28 03:50:47 +0000 openssl: Import OpenSSL 3.0.15. This release incorporates the following bug fixes and mitigations: - Fixed possible denial of service in X.509 name checks ([CVE-2024-6119]) - Fixed possible buffer overread in SSL_select_next_proto() ([CVE-2024-5535]) Release notes can be found at: https://openssl-library.org/news/openssl-3.0-notes/index.html Co-authored-by: gordon MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D46602 Merge commit '108164cf95d9594884c2dcccba2691335e6f221b' (cherry picked from commit a7148ab39c03abd4d1a84997c70bf96f15dd2a09) Update config/build info for OpenSSL 3.0.15 This is a companion commit to the OpenSSL 3.0.15 update. `opensslv.h` was regenerated via the following process: ``` cd crypto/openssl ./config git reset --hard gmake include/openssl/opensslv.h ``` `Makefile.inc` has been updated to match. MFC after: 1 week MFC with: a7148ab39c03abd4d1a84997c70bf96f15dd2a09 Differential Revision: https://reviews.freebsd.org/D46603 (cherry picked from commit cc717b574d7faa2e0b2de1a985076286cef74187) sys/crypto/openssl: update powerpc* ASM This change updates the crypto powerpc* ASM via the prescribed process documented in `crypto/openssl/FREEBSD-upgrade`. This change syncs the ASM with 3.0.15's generated ASM. MFC after: 1 week MFC with: a7148ab39c03abd4d1a84997c70bf96f15dd2a09 MFC with: cc717b574d7faa2e0b2de1a985076286cef74187 Differential Revision: https://reviews.freebsd.org/D46604 (cherry picked from commit 77864b545b0aaa91bc78b1156c477825007a6233) --- crypto/openssl/CHANGES.md | 34 ++ crypto/openssl/CONTRIBUTING.md | 6 +- crypto/openssl/Configurations/10-main.conf | 36 ++ crypto/openssl/Configurations/15-ios.conf | 2 +- crypto/openssl/Configure | 10 +- crypto/openssl/FAQ.md | 6 - crypto/openssl/INSTALL.md | 4 +- crypto/openssl/NEWS.md | 15 + crypto/openssl/VERSION.dat | 4 +- crypto/openssl/apps/cms.c | 4 +- crypto/openssl/apps/dgst.c | 9 +- crypto/openssl/apps/lib/opt.c | 4 +- crypto/openssl/apps/lib/s_cb.c | 3 +- crypto/openssl/apps/smime.c | 4 +- crypto/openssl/crypto/aes/asm/aesp8-ppc.pl | 147 ++++-- crypto/openssl/crypto/aes/build.info | 4 + crypto/openssl/crypto/asn1/a_d2i_fp.c | 5 +- crypto/openssl/crypto/asn1/a_mbstr.c | 14 +- crypto/openssl/crypto/asn1/a_strex.c | 11 +- crypto/openssl/crypto/asn1/a_verify.c | 4 +- crypto/openssl/crypto/asn1/tasn_fre.c | 8 +- crypto/openssl/crypto/bio/bf_readbuff.c | 7 +- crypto/openssl/crypto/bio/bio_addr.c | 12 +- crypto/openssl/crypto/cmp/cmp_vfy.c | 4 +- crypto/openssl/crypto/conf/conf_def.c | 4 +- crypto/openssl/crypto/conf/conf_lib.c | 5 +- crypto/openssl/crypto/conf/conf_sap.c | 4 +- crypto/openssl/crypto/context.c | 4 +- crypto/openssl/crypto/ec/ecdsa_ossl.c | 12 +- crypto/openssl/crypto/engine/eng_table.c | 8 +- crypto/openssl/crypto/evp/ctrl_params_translate.c | 5 +- crypto/openssl/crypto/evp/digest.c | 4 +- crypto/openssl/crypto/evp/names.c | 36 +- crypto/openssl/crypto/evp/pmeth_lib.c | 11 +- crypto/openssl/crypto/o_str.c | 6 +- crypto/openssl/crypto/pkcs12/p12_crt.c | 17 +- crypto/openssl/crypto/pkcs7/pk7_doit.c | 45 +- crypto/openssl/crypto/property/property.c | 55 +- crypto/openssl/crypto/rand/randfile.c | 13 +- crypto/openssl/crypto/rsa/rsa_oaep.c | 4 +- crypto/openssl/crypto/x509/v3_utl.c | 2 +- crypto/openssl/crypto/x509/x_name.c | 6 +- crypto/openssl/doc/HOWTO/certificates.txt | 2 +- crypto/openssl/doc/fingerprints.txt | 3 - crypto/openssl/doc/man1/openssl-enc.pod.in | 13 +- .../doc/man1/openssl-passphrase-options.pod | 24 +- crypto/openssl/doc/man1/openssl-s_client.pod.in | 8 +- crypto/openssl/doc/man1/openssl-s_server.pod.in | 7 +- .../doc/man1/openssl-verification-options.pod | 4 +- crypto/openssl/doc/man3/ASN1_INTEGER_new.pod | 3 +- crypto/openssl/doc/man3/ASYNC_WAIT_CTX_new.pod | 5 +- crypto/openssl/doc/man3/BIO_ADDR.pod | 3 +- crypto/openssl/doc/man3/BIO_ADDRINFO.pod | 4 +- crypto/openssl/doc/man3/BIO_f_base64.pod | 26 +- crypto/openssl/doc/man3/BIO_meth_new.pod | 4 +- crypto/openssl/doc/man3/BN_add.pod | 22 +- crypto/openssl/doc/man3/BN_generate_prime.pod | 5 +- crypto/openssl/doc/man3/BN_set_bit.pod | 9 +- crypto/openssl/doc/man3/BUF_MEM_new.pod | 3 +- crypto/openssl/doc/man3/CRYPTO_THREAD_run_once.pod | 12 +- crypto/openssl/doc/man3/CTLOG_STORE_new.pod | 4 +- crypto/openssl/doc/man3/CTLOG_new.pod | 4 +- crypto/openssl/doc/man3/CT_POLICY_EVAL_CTX_new.pod | 5 +- crypto/openssl/doc/man3/DH_meth_new.pod | 4 +- crypto/openssl/doc/man3/DSA_SIG_new.pod | 3 +- crypto/openssl/doc/man3/DSA_meth_new.pod | 4 +- crypto/openssl/doc/man3/ECDSA_SIG_new.pod | 3 +- crypto/openssl/doc/man3/ENGINE_add.pod | 5 +- crypto/openssl/doc/man3/EVP_ASYM_CIPHER_free.pod | 4 +- crypto/openssl/doc/man3/EVP_CIPHER_meth_new.pod | 3 +- crypto/openssl/doc/man3/EVP_DigestInit.pod | 10 +- crypto/openssl/doc/man3/EVP_EncodeInit.pod | 4 +- crypto/openssl/doc/man3/EVP_EncryptInit.pod | 19 +- crypto/openssl/doc/man3/EVP_KEM_free.pod | 3 +- crypto/openssl/doc/man3/EVP_KEYEXCH_free.pod | 4 +- crypto/openssl/doc/man3/EVP_KEYMGMT.pod | 3 +- crypto/openssl/doc/man3/EVP_MD_meth_new.pod | 3 +- crypto/openssl/doc/man3/EVP_PKEY_ASN1_METHOD.pod | 4 +- crypto/openssl/doc/man3/EVP_PKEY_meth_new.pod | 4 +- crypto/openssl/doc/man3/EVP_RAND.pod | 4 +- crypto/openssl/doc/man3/EVP_SIGNATURE.pod | 4 +- crypto/openssl/doc/man3/HMAC.pod | 4 +- crypto/openssl/doc/man3/MD5.pod | 15 +- crypto/openssl/doc/man3/NCONF_new_ex.pod | 4 +- crypto/openssl/doc/man3/OCSP_REQUEST_new.pod | 3 +- crypto/openssl/doc/man3/OCSP_cert_to_id.pod | 3 +- crypto/openssl/doc/man3/OCSP_response_status.pod | 3 +- crypto/openssl/doc/man3/OPENSSL_LH_COMPFUNC.pod | 4 +- crypto/openssl/doc/man3/OPENSSL_init_crypto.pod | 3 +- crypto/openssl/doc/man3/OPENSSL_malloc.pod | 5 +- crypto/openssl/doc/man3/OPENSSL_secure_malloc.pod | 8 +- crypto/openssl/doc/man3/OSSL_CMP_CTX_new.pod | 8 +- crypto/openssl/doc/man3/OSSL_CMP_SRV_CTX_new.pod | 3 +- crypto/openssl/doc/man3/OSSL_CMP_validate_msg.pod | 9 +- crypto/openssl/doc/man3/OSSL_DECODER.pod | 3 +- crypto/openssl/doc/man3/OSSL_DECODER_CTX.pod | 3 +- .../doc/man3/OSSL_DECODER_CTX_new_for_pkey.pod | 4 +- crypto/openssl/doc/man3/OSSL_ENCODER.pod | 3 +- crypto/openssl/doc/man3/OSSL_ENCODER_CTX.pod | 3 +- crypto/openssl/doc/man3/OSSL_HTTP_REQ_CTX.pod | 3 +- crypto/openssl/doc/man3/OSSL_LIB_CTX.pod | 4 +- crypto/openssl/doc/man3/OSSL_PARAM_BLD.pod | 3 +- crypto/openssl/doc/man3/OSSL_PARAM_dup.pod | 3 +- crypto/openssl/doc/man3/OSSL_SELF_TEST_new.pod | 3 +- crypto/openssl/doc/man3/OSSL_STORE_INFO.pod | 3 +- crypto/openssl/doc/man3/OSSL_STORE_LOADER.pod | 23 +- crypto/openssl/doc/man3/OSSL_STORE_SEARCH.pod | 3 +- .../openssl/doc/man3/PEM_read_bio_PrivateKey.pod | 6 +- crypto/openssl/doc/man3/RAND_set_DRBG_type.pod | 4 +- crypto/openssl/doc/man3/RSA_meth_new.pod | 4 +- crypto/openssl/doc/man3/SCT_new.pod | 8 +- .../doc/man3/SSL_CTX_set_alpn_select_cb.pod | 28 +- .../openssl/doc/man3/SSL_CTX_set_cipher_list.pod | 4 +- .../doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod | 8 +- crypto/openssl/doc/man3/TS_RESP_CTX_new.pod | 3 +- crypto/openssl/doc/man3/X509V3_get_d2i.pod | 3 +- crypto/openssl/doc/man3/X509_LOOKUP.pod | 3 +- crypto/openssl/doc/man3/X509_LOOKUP_meth_new.pod | 3 +- crypto/openssl/doc/man3/X509_STORE_new.pod | 3 +- crypto/openssl/doc/man3/X509_dup.pod | 2 +- crypto/openssl/doc/man3/X509_new.pod | 7 +- crypto/openssl/doc/man3/d2i_X509.pod | 6 +- crypto/openssl/doc/man7/EVP_KEYEXCH-DH.pod | 11 +- crypto/openssl/doc/man7/EVP_PKEY-DH.pod | 62 +-- crypto/openssl/doc/man7/ossl_store.pod | 9 +- crypto/openssl/fuzz/bignum.c | 9 +- crypto/openssl/include/crypto/aes_platform.h | 4 +- crypto/openssl/include/crypto/bn.h | 2 +- crypto/openssl/include/openssl/opensslv.h | 10 +- crypto/openssl/include/openssl/tls1.h | 4 +- crypto/openssl/providers/fips-sources.checksums | 18 +- crypto/openssl/providers/fips.checksum | 2 +- .../implementations/encode_decode/decode_der2key.c | 35 +- .../openssl/providers/implementations/rands/drbg.c | 5 + crypto/openssl/ssl/bio_ssl.c | 4 +- crypto/openssl/ssl/ssl_lib.c | 63 ++- crypto/openssl/ssl/ssl_sess.c | 34 +- crypto/openssl/ssl/statem/extensions.c | 14 +- crypto/openssl/ssl/statem/extensions_clnt.c | 29 +- crypto/openssl/ssl/statem/extensions_srvr.c | 34 +- crypto/openssl/ssl/statem/statem_lib.c | 6 +- crypto/openssl/ssl/t1_lib.c | 2 + crypto/openssl/test/build.info | 6 +- crypto/openssl/test/crltest.c | 65 ++- crypto/openssl/test/endecode_test.c | 22 +- crypto/openssl/test/evp_byname_test.c | 40 ++ crypto/openssl/test/evp_extra_test.c | 21 + crypto/openssl/test/helpers/handshake.c | 8 +- crypto/openssl/test/hexstr_test.c | 11 +- crypto/openssl/test/prov_config_test.c | 9 +- crypto/openssl/test/provider_fallback_test.c | 14 +- crypto/openssl/test/provider_internal_test.c | 4 +- crypto/openssl/test/provider_test.c | 3 +- crypto/openssl/test/recipes/03-test_fipsinstall.t | 44 +- crypto/openssl/test/recipes/04-test_conf.t | 3 +- .../recipes/04-test_conf_data/oversized_line.cnf | 3 + .../recipes/04-test_conf_data/oversized_line.txt | 4 + crypto/openssl/test/recipes/25-test_eai_data.t | 2 +- crypto/openssl/test/recipes/30-test_evp_byname.t | 16 + .../test/recipes/30-test_evp_data/evppkey_dsa.txt | 6 +- .../recipes/30-test_evp_data/evppkey_ecdsa.txt | 3 +- .../30-test_evp_data/evppkey_rsa_common.txt | 3 +- crypto/openssl/test/recipes/70-test_npn.t | 73 +++ crypto/openssl/test/ssl-tests/08-npn.cnf | 553 ++++++++++++--------- crypto/openssl/test/ssl-tests/08-npn.cnf.in | 37 +- crypto/openssl/test/ssl-tests/09-alpn.cnf | 66 ++- crypto/openssl/test/ssl-tests/09-alpn.cnf.in | 35 +- crypto/openssl/test/sslapitest.c | 370 +++++++++++++- crypto/openssl/util/check-format-commit.sh | 171 +++++++ crypto/openssl/util/check-format-test-negatives.c | 5 +- crypto/openssl/util/check-format.pl | 13 +- crypto/openssl/util/perl/OpenSSL/Test/Utils.pm | 18 +- crypto/openssl/util/perl/TLSProxy/Message.pm | 11 +- crypto/openssl/util/perl/TLSProxy/NextProto.pm | 54 ++ crypto/openssl/util/perl/TLSProxy/Proxy.pm | 3 +- secure/lib/libcrypto/Makefile.inc | 4 +- sys/crypto/openssl/powerpc/aesp8-ppc.S | 143 ++++-- sys/crypto/openssl/powerpc/poly1305-ppc.S | 64 +-- sys/crypto/openssl/powerpc64/aesp8-ppc.S | 143 ++++-- sys/crypto/openssl/powerpc64/poly1305-ppc.S | 64 +-- sys/crypto/openssl/powerpc64le/aesp8-ppc.S | 143 ++++-- sys/crypto/openssl/powerpc64le/poly1305-ppc.S | 64 +-- 182 files changed, 2697 insertions(+), 1062 deletions(-) diff --git a/crypto/openssl/CHANGES.md b/crypto/openssl/CHANGES.md index 19e0fd6e25a5..e41181b5bbb0 100644 --- a/crypto/openssl/CHANGES.md +++ b/crypto/openssl/CHANGES.md @@ -28,6 +28,30 @@ breaking changes, and mappings for the large list of deprecated functions. [Migration guide]: https://github.com/openssl/openssl/tree/master/doc/man7/migration_guide.pod +### Changes between 3.0.14 and 3.0.15 [3 Sep 2024] + + * Fixed possible denial of service in X.509 name checks. + + Applications performing certificate name checks (e.g., TLS clients checking + server certificates) may attempt to read an invalid memory address when + comparing the expected name with an `otherName` subject alternative name of + an X.509 certificate. This may result in an exception that terminates the + application program. + + ([CVE-2024-6119]) + + *Viktor Dukhovni* + + * Fixed possible buffer overread in SSL_select_next_proto(). + + Calling the OpenSSL API function SSL_select_next_proto with an empty + supported client protocols buffer may cause a crash or memory contents + to be sent to the peer. + + ([CVE-2024-5535]) + + *Matt Caswell* + ### Changes between 3.0.13 and 3.0.14 [4 Jun 2024] * Fixed potential use after free after SSL_free_buffers() is called. @@ -70,6 +94,14 @@ breaking changes, and mappings for the large list of deprecated functions. *Tomáš Mráz* + * Improved EC/DSA nonce generation routines to avoid bias and timing + side channel leaks. + + Thanks to Florian Sieck from Universität zu Lübeck and George Pantelakis + and Hubert Kario from Red Hat for reporting the issues. + + *Tomáš Mráz and Paul Dale* + * Fixed an issue where some non-default TLS server configurations can cause unbounded memory growth when processing TLSv1.3 sessions. An attacker may exploit certain server configurations to trigger unbounded memory growth that @@ -19890,6 +19922,8 @@ ndif +[CVE-2024-6119]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-6119 +[CVE-2024-5535]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-5535 [CVE-2024-4741]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4741 [CVE-2024-4603]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4603 [CVE-2024-2511]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-2511 diff --git a/crypto/openssl/CONTRIBUTING.md b/crypto/openssl/CONTRIBUTING.md index fec6616e21fe..cced15347d05 100644 --- a/crypto/openssl/CONTRIBUTING.md +++ b/crypto/openssl/CONTRIBUTING.md @@ -3,7 +3,7 @@ HOW TO CONTRIBUTE TO OpenSSL Please visit our [Getting Started] page for other ideas about how to contribute. - [Getting Started]: + [Getting Started]: Development is done on GitHub in the [openssl/openssl] repository. @@ -77,8 +77,8 @@ guidelines: Clean builds via GitHub Actions are required. They are started automatically whenever a PR is created or updated by committers. - [coding style]: https://www.openssl.org/policies/technical/coding-style.html - [documentation policy]: https://openssl.org/policies/technical/documentation-policy.html + [coding style]: https://openssl-library.org/policies/technical/coding-style/ + [documentation policy]: https://openssl-library.org/policies/technical/documentation-policy/ 5. When at all possible, code contributions should include tests. These can either be added to an existing test, or completely new. Please see diff --git a/crypto/openssl/Configurations/10-main.conf b/crypto/openssl/Configurations/10-main.conf index 1155d9859c56..e74adb50cc3c 100644 --- a/crypto/openssl/Configurations/10-main.conf +++ b/crypto/openssl/Configurations/10-main.conf @@ -1264,6 +1264,25 @@ my %targets = ( AR => add("-X32"), RANLIB => add("-X32"), }, + # To enable openxl compiler for aix + # If 17.1 openxl runtime is available, -latomic can be used + # instead of -DBROKEN_CLANG_ATOMICS + "aix-clang" => { + inherit_from => [ "aix-common" ], + CC => "ibm-clang", + CFLAGS => picker(debug => "-O0 -g", + release => "-O"), + cflags => combine("-Wno-implicit-function-declaration -mcmodel=large -DBROKEN_CLANG_ATOMICS", + threads("-pthread")), + ex_libs => add(threads("-pthread")), + bn_ops => "BN_LLONG RC4_CHAR", + asm_arch => 'ppc32', + perlasm_scheme => "aix32", + shared_cflag => "-fpic", + shared_ldflag => add("-shared"), + AR => add("-X32"), + RANLIB => add("-X32"), + }, "aix64-cc" => { inherit_from => [ "aix-common" ], CC => "cc", @@ -1282,6 +1301,23 @@ my %targets = ( AR => add("-X64"), RANLIB => add("-X64"), }, + "aix64-clang" => { + inherit_from => [ "aix-common" ], + CC => "ibm-clang", + CFLAGS => picker(debug => "-O0 -g", + release => "-O"), + cflags => combine("-maix64 -Wno-implicit-function-declaration -mcmodel=large", + threads("-pthread")), + ex_libs => add(threads("-pthread")), + bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", + asm_arch => 'ppc64', + perlasm_scheme => "aix64", + shared_cflag => "-fpic", + shared_ldflag => add("-shared"), + shared_extension => "64.so.\$(SHLIB_VERSION_NUMBER)", + AR => add("-X64"), + RANLIB => add("-X64"), + }, # SIEMENS BS2000/OSD: an EBCDIC-based mainframe "BS2000-OSD" => { diff --git a/crypto/openssl/Configurations/15-ios.conf b/crypto/openssl/Configurations/15-ios.conf index 81e3d68bc7f0..84c9cfeb3a14 100644 --- a/crypto/openssl/Configurations/15-ios.conf +++ b/crypto/openssl/Configurations/15-ios.conf @@ -10,7 +10,7 @@ my %targets = ( template => 1, inherit_from => [ "darwin-common" ], sys_id => "iOS", - disable => [ "shared", "async" ], + disable => [ "async" ], }, "ios-xcrun" => { inherit_from => [ "ios-common" ], diff --git a/crypto/openssl/Configure b/crypto/openssl/Configure index 40c03ad0af32..0c60d1da1659 100755 --- a/crypto/openssl/Configure +++ b/crypto/openssl/Configure @@ -178,7 +178,6 @@ my @gcc_devteam_warn = qw( # -Wextended-offsetof -- no, needed in CMS ASN1 code my @clang_devteam_warn = qw( -Wno-unknown-warning-option - -Wswitch-default -Wno-parentheses-equality -Wno-language-extension-token -Wno-extended-offsetof @@ -1583,7 +1582,7 @@ if (!$disabled{makedepend}) { disable('unavailable', 'makedepend') unless $config{makedep_scheme}; } -if (!$disabled{asm} && !$predefined_C{__MACH__} && $^O ne 'VMS') { +if (!$disabled{asm} && !$predefined_C{__MACH__} && $^O ne 'VMS' && !$predefined_C{_AIX}) { # probe for -Wa,--noexecstack option... if ($predefined_C{__clang__}) { # clang has builtin assembler, which doesn't recognize --help, @@ -3407,6 +3406,13 @@ sub absolutedir { return rel2abs($dir); } + # realpath() on Windows seems to check if the directory actually exists, + # which isn't what is wanted here. All we want to know is if a directory + # spec is absolute, not if it exists. + if ($^O eq "MSWin32") { + return rel2abs($dir); + } + # We use realpath() on Unix, since no other will properly clean out # a directory spec. use Cwd qw/realpath/; diff --git a/crypto/openssl/FAQ.md b/crypto/openssl/FAQ.md deleted file mode 100644 index 30f5010ce3a4..000000000000 --- a/crypto/openssl/FAQ.md +++ /dev/null @@ -1,6 +0,0 @@ -Frequently Asked Questions (FAQ) -================================ - -The [Frequently Asked Questions][FAQ] are now maintained on the OpenSSL homepage. - - [FAQ]: https://www.openssl.org/docs/faq.html diff --git a/crypto/openssl/INSTALL.md b/crypto/openssl/INSTALL.md index c0dae491c94d..47d64b1a39d8 100644 --- a/crypto/openssl/INSTALL.md +++ b/crypto/openssl/INSTALL.md @@ -1164,7 +1164,7 @@ Configure OpenSSL ### Automatic Configuration In previous version, the `config` script determined the platform type and -compiler and then called `Configure`. Starting with this release, they are +compiler and then called `Configure`. Starting with version 3.0, they are the same. #### Unix / Linux / macOS @@ -1618,7 +1618,7 @@ More about our support resources can be found in the [SUPPORT] file. ### Configuration Errors -If the `./Configure` or `./Configure` command fails with an error message, +If the `./config` or `./Configure` command fails with an error message, read the error message carefully and try to figure out whether you made a mistake (e.g., by providing a wrong option), or whether the script is working incorrectly. If you think you encountered a bug, please diff --git a/crypto/openssl/NEWS.md b/crypto/openssl/NEWS.md index fb231bcd8459..e0a81703ee8d 100644 --- a/crypto/openssl/NEWS.md +++ b/crypto/openssl/NEWS.md @@ -18,6 +18,19 @@ OpenSSL Releases OpenSSL 3.0 ----------- +### Major changes between OpenSSL 3.0.14 and OpenSSL 3.0.15 [3 Sep 2024] + +OpenSSL 3.0.15 is a security patch release. The most severe CVE fixed in this +release is Moderate. + +This release incorporates the following bug fixes and mitigations: + + * Fixed possible denial of service in X.509 name checks + ([CVE-2024-6119]) + + * Fixed possible buffer overread in SSL_select_next_proto() + ([CVE-2024-5535]) + ### Major changes between OpenSSL 3.0.13 and OpenSSL 3.0.14 [4 Jun 2024] * Fixed potential use after free after SSL_free_buffers() is called @@ -1482,6 +1495,8 @@ OpenSSL 0.9.x +[CVE-2024-6119]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-6119 +[CVE-2024-5535]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-5535 [CVE-2024-4741]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4741 [CVE-2024-4603]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4603 [CVE-2024-2511]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-2511 diff --git a/crypto/openssl/VERSION.dat b/crypto/openssl/VERSION.dat index 5de9bf3d01ba..0942ddc200ca 100644 --- a/crypto/openssl/VERSION.dat +++ b/crypto/openssl/VERSION.dat @@ -1,7 +1,7 @@ MAJOR=3 MINOR=0 -PATCH=14 +PATCH=15 PRE_RELEASE_TAG= BUILD_METADATA= -RELEASE_DATE="4 Jun 2024" +RELEASE_DATE="3 Sep 2024" SHLIB_VERSION=3 diff --git a/crypto/openssl/apps/cms.c b/crypto/openssl/apps/cms.c index 3994cb0fcd58..abb9f196a760 100644 --- a/crypto/openssl/apps/cms.c +++ b/crypto/openssl/apps/cms.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2023 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-2024 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -132,7 +132,7 @@ const OPTIONS cms_options[] = { {"binary", OPT_BINARY, '-', "Treat input as binary: do not translate to canonical form"}, {"crlfeol", OPT_CRLFEOL, '-', - "Use CRLF as EOL termination instead of CR only" }, + "Use CRLF as EOL termination instead of LF only" }, {"asciicrlf", OPT_ASCIICRLF, '-', "Perform CRLF canonicalisation when signing"}, diff --git a/crypto/openssl/apps/dgst.c b/crypto/openssl/apps/dgst.c index 3f02af0d5738..51383bec26ca 100644 --- a/crypto/openssl/apps/dgst.c +++ b/crypto/openssl/apps/dgst.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -478,7 +478,7 @@ int dgst_main(int argc, char **argv) static void show_digests(const OBJ_NAME *name, void *arg) { struct doall_dgst_digests *dec = (struct doall_dgst_digests *)arg; - const EVP_MD *md = NULL; + EVP_MD *md = NULL; /* Filter out signed digests (a.k.a signature algorithms) */ if (strstr(name->name, "rsa") != NULL || strstr(name->name, "RSA") != NULL) @@ -490,8 +490,7 @@ static void show_digests(const OBJ_NAME *name, void *arg) /* Filter out message digests that we cannot use */ md = EVP_MD_fetch(app_get0_libctx(), name->name, app_get0_propq()); if (md == NULL) { - md = EVP_get_digestbyname(name->name); - if (md == NULL) + if (EVP_get_digestbyname(name->name) == NULL) return; } @@ -502,6 +501,8 @@ static void show_digests(const OBJ_NAME *name, void *arg) } else { BIO_printf(dec->bio, " "); } + + EVP_MD_free(md); } /* diff --git a/crypto/openssl/apps/lib/opt.c b/crypto/openssl/apps/lib/opt.c index d56964dbe7ba..88db9ad6947b 100644 --- a/crypto/openssl/apps/lib/opt.c +++ b/crypto/openssl/apps/lib/opt.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2021 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2024 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -616,7 +616,7 @@ int opt_uintmax(const char *value, ossl_uintmax_t *result) opt_number_error(value); return 0; } - *result = (ossl_intmax_t)m; + *result = (ossl_uintmax_t)m; errno = oerrno; return 1; } diff --git a/crypto/openssl/apps/lib/s_cb.c b/crypto/openssl/apps/lib/s_cb.c index 7881c1667626..6440b496099e 100644 --- a/crypto/openssl/apps/lib/s_cb.c +++ b/crypto/openssl/apps/lib/s_cb.c @@ -649,7 +649,7 @@ void msg_cb(int write_p, int version, int content_type, const void *buf, (void)BIO_flush(bio); } -static STRINT_PAIR tlsext_types[] = { +static const STRINT_PAIR tlsext_types[] = { {"server name", TLSEXT_TYPE_server_name}, {"max fragment length", TLSEXT_TYPE_max_fragment_length}, {"client certificate URL", TLSEXT_TYPE_client_certificate_url}, @@ -688,6 +688,7 @@ static STRINT_PAIR tlsext_types[] = { {"psk kex modes", TLSEXT_TYPE_psk_kex_modes}, {"certificate authorities", TLSEXT_TYPE_certificate_authorities}, {"post handshake auth", TLSEXT_TYPE_post_handshake_auth}, + {"early_data", TLSEXT_TYPE_early_data}, {NULL} }; diff --git a/crypto/openssl/apps/smime.c b/crypto/openssl/apps/smime.c index 52b4a01c232f..651294e46daa 100644 --- a/crypto/openssl/apps/smime.c +++ b/crypto/openssl/apps/smime.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2021 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-2024 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -118,7 +118,7 @@ const OPTIONS smime_options[] = { "Do not load certificates from the default certificates store"}, {"nochain", OPT_NOCHAIN, '-', "set PKCS7_NOCHAIN so certificates contained in the message are not used as untrusted CAs" }, - {"crlfeol", OPT_CRLFEOL, '-', "Use CRLF as EOL termination instead of CR only"}, + {"crlfeol", OPT_CRLFEOL, '-', "Use CRLF as EOL termination instead of LF only"}, OPT_R_OPTIONS, OPT_V_OPTIONS, diff --git a/crypto/openssl/crypto/aes/asm/aesp8-ppc.pl b/crypto/openssl/crypto/aes/asm/aesp8-ppc.pl index 60cf86f52aed..f7f78d04b0e1 100755 --- a/crypto/openssl/crypto/aes/asm/aesp8-ppc.pl +++ b/crypto/openssl/crypto/aes/asm/aesp8-ppc.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2014-2024 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the Apache License 2.0 (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -99,11 +99,12 @@ rcon: .long 0x1b000000, 0x1b000000, 0x1b000000, 0x1b000000 ?rev .long 0x0d0e0f0c, 0x0d0e0f0c, 0x0d0e0f0c, 0x0d0e0f0c ?rev .long 0,0,0,0 ?asis +.long 0x0f102132, 0x43546576, 0x8798a9ba, 0xcbdcedfe Lconsts: mflr r0 bcl 20,31,\$+4 mflr $ptr #vvvvv "distance between . and rcon - addi $ptr,$ptr,-0x48 + addi $ptr,$ptr,-0x58 mtlr r0 blr .long 0 @@ -2405,7 +2406,7 @@ ___ my $key_=$key2; my ($x00,$x10,$x20,$x30,$x40,$x50,$x60,$x70)=map("r$_",(0,3,26..31)); $x00=0 if ($flavour =~ /osx/); -my ($in0, $in1, $in2, $in3, $in4, $in5 )=map("v$_",(0..5)); +my ($in0, $in1, $in2, $in3, $in4, $in5)=map("v$_",(0..5)); my ($out0, $out1, $out2, $out3, $out4, $out5)=map("v$_",(7,12..16)); my ($twk0, $twk1, $twk2, $twk3, $twk4, $twk5)=map("v$_",(17..22)); my $rndkey0="v23"; # v24-v25 rotating buffer for first found keys @@ -2460,6 +2461,18 @@ _aesp8_xts_encrypt6x: li $x70,0x70 mtspr 256,r0 + # Reverse eighty7 to 0x010101..87 + xxlor 2, 32+$eighty7, 32+$eighty7 + vsldoi $eighty7,$tmp,$eighty7,1 # 0x010101..87 + xxlor 1, 32+$eighty7, 32+$eighty7 + + # Load XOR contents. 0xf102132435465768798a9bacbdcedfe + mr $x70, r6 + bl Lconsts + lxvw4x 0, $x40, r6 # load XOR contents + mr r6, $x70 + li $x70,0x70 + subi $rounds,$rounds,3 # -4 in total lvx $rndkey0,$x00,$key1 # load key schedule @@ -2502,69 +2515,77 @@ Load_xts_enc_key: ?vperm v31,v31,$twk5,$keyperm lvx v25,$x10,$key_ # pre-load round[2] + # Switch to use the following codes with 0x010101..87 to generate tweak. + # eighty7 = 0x010101..87 + # vsrab tmp, tweak, seven # next tweak value, right shift 7 bits + # vand tmp, tmp, eighty7 # last byte with carry + # vaddubm tweak, tweak, tweak # left shift 1 bit (x2) + # xxlor vsx, 0, 0 + # vpermxor tweak, tweak, tmp, vsx + vperm $in0,$inout,$inptail,$inpperm subi $inp,$inp,31 # undo "caller" vxor $twk0,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vand $tmp,$tmp,$eighty7 vxor $out0,$in0,$twk0 - vxor $tweak,$tweak,$tmp + xxlor 32+$in1, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in1 lvx_u $in1,$x10,$inp vxor $twk1,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in1,$in1,$in1,$leperm vand $tmp,$tmp,$eighty7 vxor $out1,$in1,$twk1 - vxor $tweak,$tweak,$tmp + xxlor 32+$in2, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in2 lvx_u $in2,$x20,$inp andi. $taillen,$len,15 vxor $twk2,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in2,$in2,$in2,$leperm vand $tmp,$tmp,$eighty7 vxor $out2,$in2,$twk2 - vxor $tweak,$tweak,$tmp + xxlor 32+$in3, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in3 lvx_u $in3,$x30,$inp sub $len,$len,$taillen vxor $twk3,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in3,$in3,$in3,$leperm vand $tmp,$tmp,$eighty7 vxor $out3,$in3,$twk3 - vxor $tweak,$tweak,$tmp + xxlor 32+$in4, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in4 lvx_u $in4,$x40,$inp subi $len,$len,0x60 vxor $twk4,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in4,$in4,$in4,$leperm vand $tmp,$tmp,$eighty7 vxor $out4,$in4,$twk4 - vxor $tweak,$tweak,$tmp + xxlor 32+$in5, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in5 lvx_u $in5,$x50,$inp addi $inp,$inp,0x60 vxor $twk5,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in5,$in5,$in5,$leperm vand $tmp,$tmp,$eighty7 vxor $out5,$in5,$twk5 - vxor $tweak,$tweak,$tmp + xxlor 32+$in0, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in0 vxor v31,v31,$rndkey0 mtctr $rounds @@ -2590,6 +2611,8 @@ Loop_xts_enc6x: lvx v25,$x10,$key_ # round[4] bdnz Loop_xts_enc6x + xxlor 32+$eighty7, 1, 1 # 0x010101..87 + subic $len,$len,96 # $len-=96 vxor $in0,$twk0,v31 # xor with last round key vcipher $out0,$out0,v24 @@ -2599,7 +2622,6 @@ Loop_xts_enc6x: vaddubm $tweak,$tweak,$tweak vcipher $out2,$out2,v24 vcipher $out3,$out3,v24 - vsldoi $tmp,$tmp,$tmp,15 vcipher $out4,$out4,v24 vcipher $out5,$out5,v24 @@ -2607,7 +2629,8 @@ Loop_xts_enc6x: vand $tmp,$tmp,$eighty7 vcipher $out0,$out0,v25 vcipher $out1,$out1,v25 - vxor $tweak,$tweak,$tmp + xxlor 32+$in1, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in1 vcipher $out2,$out2,v25 vcipher $out3,$out3,v25 vxor $in1,$twk1,v31 @@ -2618,13 +2641,13 @@ Loop_xts_enc6x: and r0,r0,$len vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vcipher $out0,$out0,v26 vcipher $out1,$out1,v26 vand $tmp,$tmp,$eighty7 vcipher $out2,$out2,v26 vcipher $out3,$out3,v26 - vxor $tweak,$tweak,$tmp + xxlor 32+$in2, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in2 vcipher $out4,$out4,v26 vcipher $out5,$out5,v26 @@ -2638,7 +2661,6 @@ Loop_xts_enc6x: vaddubm $tweak,$tweak,$tweak vcipher $out0,$out0,v27 vcipher $out1,$out1,v27 - vsldoi $tmp,$tmp,$tmp,15 vcipher $out2,$out2,v27 vcipher $out3,$out3,v27 vand $tmp,$tmp,$eighty7 @@ -2646,7 +2668,8 @@ Loop_xts_enc6x: vcipher $out5,$out5,v27 addi $key_,$sp,$FRAME+15 # rewind $key_ - vxor $tweak,$tweak,$tmp + xxlor 32+$in3, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in3 vcipher $out0,$out0,v28 vcipher $out1,$out1,v28 vxor $in3,$twk3,v31 @@ -2655,7 +2678,6 @@ Loop_xts_enc6x: vcipher $out2,$out2,v28 vcipher $out3,$out3,v28 vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vcipher $out4,$out4,v28 vcipher $out5,$out5,v28 lvx v24,$x00,$key_ # re-pre-load round[1] @@ -2663,7 +2685,8 @@ Loop_xts_enc6x: vcipher $out0,$out0,v29 vcipher $out1,$out1,v29 - vxor $tweak,$tweak,$tmp + xxlor 32+$in4, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in4 vcipher $out2,$out2,v29 vcipher $out3,$out3,v29 vxor $in4,$twk4,v31 @@ -2673,14 +2696,14 @@ Loop_xts_enc6x: vcipher $out5,$out5,v29 lvx v25,$x10,$key_ # re-pre-load round[2] vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vcipher $out0,$out0,v30 vcipher $out1,$out1,v30 vand $tmp,$tmp,$eighty7 vcipher $out2,$out2,v30 vcipher $out3,$out3,v30 - vxor $tweak,$tweak,$tmp + xxlor 32+$in5, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in5 vcipher $out4,$out4,v30 vcipher $out5,$out5,v30 vxor $in5,$twk5,v31 @@ -2690,7 +2713,6 @@ Loop_xts_enc6x: vcipherlast $out0,$out0,$in0 lvx_u $in0,$x00,$inp # load next input block vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vcipherlast $out1,$out1,$in1 lvx_u $in1,$x10,$inp vcipherlast $out2,$out2,$in2 @@ -2703,7 +2725,10 @@ Loop_xts_enc6x: vcipherlast $out4,$out4,$in4 le?vperm $in2,$in2,$in2,$leperm lvx_u $in4,$x40,$inp - vxor $tweak,$tweak,$tmp + xxlor 10, 32+$in0, 32+$in0 + xxlor 32+$in0, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in0 + xxlor 32+$in0, 10, 10 vcipherlast $tmp,$out5,$in5 # last block might be needed # in stealing mode le?vperm $in3,$in3,$in3,$leperm @@ -2736,6 +2761,8 @@ Loop_xts_enc6x: mtctr $rounds beq Loop_xts_enc6x # did $len-=96 borrow? + xxlor 32+$eighty7, 2, 2 # 0x870101..01 + addic. $len,$len,0x60 beq Lxts_enc6x_zero cmpwi $len,0x20 @@ -3112,6 +3139,18 @@ _aesp8_xts_decrypt6x: li $x70,0x70 mtspr 256,r0 + # Reverse eighty7 to 0x010101..87 + xxlor 2, 32+$eighty7, 32+$eighty7 + vsldoi $eighty7,$tmp,$eighty7,1 # 0x010101..87 + xxlor 1, 32+$eighty7, 32+$eighty7 + + # Load XOR contents. 0xf102132435465768798a9bacbdcedfe + mr $x70, r6 + bl Lconsts + lxvw4x 0, $x40, r6 # load XOR contents + mr r6, $x70 + li $x70,0x70 + subi $rounds,$rounds,3 # -4 in total lvx $rndkey0,$x00,$key1 # load key schedule @@ -3159,64 +3198,64 @@ Load_xts_dec_key: vxor $twk0,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 vand $tmp,$tmp,$eighty7 vxor $out0,$in0,$twk0 - vxor $tweak,$tweak,$tmp + xxlor 32+$in1, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in1 lvx_u $in1,$x10,$inp vxor $twk1,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in1,$in1,$in1,$leperm vand $tmp,$tmp,$eighty7 vxor $out1,$in1,$twk1 - vxor $tweak,$tweak,$tmp + xxlor 32+$in2, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in2 lvx_u $in2,$x20,$inp andi. $taillen,$len,15 vxor $twk2,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in2,$in2,$in2,$leperm vand $tmp,$tmp,$eighty7 vxor $out2,$in2,$twk2 - vxor $tweak,$tweak,$tmp + xxlor 32+$in3, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in3 lvx_u $in3,$x30,$inp sub $len,$len,$taillen vxor $twk3,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in3,$in3,$in3,$leperm vand $tmp,$tmp,$eighty7 vxor $out3,$in3,$twk3 - vxor $tweak,$tweak,$tmp + xxlor 32+$in4, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in4 lvx_u $in4,$x40,$inp subi $len,$len,0x60 vxor $twk4,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak - vsldoi $tmp,$tmp,$tmp,15 le?vperm $in4,$in4,$in4,$leperm vand $tmp,$tmp,$eighty7 vxor $out4,$in4,$twk4 - vxor $tweak,$tweak,$tmp + xxlor 32+$in5, 0, 0 + vpermxor $tweak, $tweak, $tmp, $in5 lvx_u $in5,$x50,$inp addi $inp,$inp,0x60 vxor $twk5,$tweak,$rndkey0 vsrab $tmp,$tweak,$seven # next tweak value vaddubm $tweak,$tweak,$tweak *** 8393 LINES SKIPPED *** From nobody Sat Sep 28 03:55: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 4XFtlB2P2yz5XhDY; Sat, 28 Sep 2024 03:55: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 4XFtlB1q2Zz4Rp1; Sat, 28 Sep 2024 03:55:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SJV6EyIWFDO4IrqOf3Pem/Oy1O/QWYRsvkpKyhWbOJI=; b=qB89BGdmf1yjHgScydGLAJewY7rU8zPNpphSNWD43fH8eIrDxMmLuWphTNjELS5HKW1LuP mp8iC5BH/qVQ2xMhfH7Le0uQEQXuw7VPrfktdx3U9JBYeAMjSBTaoSOFHOFSMkByFRk8tC YdcMgSZX1+GzMq558xW+vdFrlne60KuUWVrtrSrewWVLdSL2qEI9kv2voI/CMGwwIp4n+j dHoy7UsTmsX7ebawnWx22iv/GPwk9iQBiF7vms3PehZIICqzIIkSx4UtOdT1Gnz6s+e9ve K2E1FjhWAmwzFgb807eL+GGhmXkDGrSlEku1rpeGZIp+DmQA+Erp3UBUiE+amg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SJV6EyIWFDO4IrqOf3Pem/Oy1O/QWYRsvkpKyhWbOJI=; b=o1Sv4WeDqgRO6UUYSNLRoV3BNA9wFAGCDyRetx1CamHBHofYn0etp1bWG/zh58nGG4R+N2 NbojY4/kZ99eMfEh7AWd64gVzFXYik/WnVVg4IOPOqRhah5OyzDVdySNmgJyuOVml1jigH J243BnXHvdLOfYMKVzEsTZkt1fP5bki1ACY+uQjiU3rTem7YhtnXJRalDuNxRfz6FEO3RL r802vCAXlEAQe7Zw6zHr1vdMz1VZrc87bjH5wGMvxzFbKIX5uNs6jl7h/7eyhpmuRC3OEc gUn420gOckNBn5GvnzWFl8d+fFqJ+185RuYPTkXXGhRXKprtZbQIA0QEK18vfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727495702; a=rsa-sha256; cv=none; b=xrMKaAxKRrTJnjgDfVtVInlvzZ9nN32MdZacMK3O26Zo3Fn6nQltwMBypW7GH7YV7SaGA8 jrhDqeWMCNFW+Q5yBjzoN95Bhw6ngMck2+DwB7PgClvk96Cdst9Lj78KGixaF7yopMTQho FXdUXsa/37mLRv4U4PmuCUL7oPJvLDwa0R91LBjb2fmUwnkRKhMScbAPZXgqufHrd0u/vF wmhC488pj5IINfAiZLSZZ27UwxNZmytlqy6cgOdHOJpMx36R/AzWBxJILWFiX76Ubj1hqh YzmmAl4QJMTFmEVW3nnazicN8+MPV0BniuD85NV8rxoRYDBDkm1O7gL7+uRl0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFtlB1G2Hz17RM; Sat, 28 Sep 2024 03:55: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 48S3t2Ao015021; Sat, 28 Sep 2024 03:55:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S3t285015018; Sat, 28 Sep 2024 03:55:02 GMT (envelope-from git) Date: Sat, 28 Sep 2024 03:55:02 GMT Message-Id: <202409280355.48S3t285015018@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: c2dca1b5607f - stable/14 - radlib: fix a memory leak in `is_valid_request` List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c2dca1b5607fa4c69d5357c717c3b2dd359e2f26 Auto-Submitted: auto-generated The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=c2dca1b5607fa4c69d5357c717c3b2dd359e2f26 commit c2dca1b5607fa4c69d5357c717c3b2dd359e2f26 Author: Enji Cooper AuthorDate: 2024-06-04 20:01:55 +0000 Commit: Enji Cooper CommitDate: 2024-09-28 03:54:48 +0000 radlib: fix a memory leak in `is_valid_request` Call `HMAC_CTX_free` if returning early from `is_valid_request` when processing `Message-Authenticator` tags. Reported by: Coverity MFC after: 1 week Fixes: 8d5c7813061d ("libradius: Fix input validation bugs") Differential Revision: https://reviews.freebsd.org/D45488 (cherry picked from commit 77c04f3eb12a560eb61252c817e4147bc0178e43) --- lib/libradius/radlib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/libradius/radlib.c b/lib/libradius/radlib.c index 2049468f455f..cd1f1df1b234 100644 --- a/lib/libradius/radlib.c +++ b/lib/libradius/radlib.c @@ -321,8 +321,10 @@ is_valid_request(struct rad_handle *h) hctx = HMAC_CTX_new(); while (pos < len - 2) { alen = h->in[pos + 1]; - if (alen < 2) + if (alen < 2) { + HMAC_CTX_free(hctx); return (0); + } if (h->in[pos] == RAD_MESSAGE_AUTHENTIC) { if (len - pos < MD5_DIGEST_LENGTH + 2) { HMAC_CTX_free(hctx); From nobody Sat Sep 28 03:57: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 4XFtpY5bfwz5XhTK; Sat, 28 Sep 2024 03:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFtpY3fQdz4S2B; Sat, 28 Sep 2024 03:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495877; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T1dFEVazFRCF6B+uX+VKfndhQyvX5p5hbsVsBG3KLSI=; b=VRkXBfQq4Ho0OSiW54QCnc/UgOfVDVDe6WX7G/KQLaARmIFxxDTNdLr6yGvXo7N14Sejyu dzyHpAMYZYIAZMLn5/60sduaxRns84KY6iwKwPPpgGZm/MsYx6paob66klz8Zo3/WrFwKV WbMf601E07IGx4Lcs1jWXi7mm8pz0aMwyHCj8ooCtFcaaYVaUt+vrk8jv6WVCCXXnvJfmg yePcCSERQv/nslTcOPR3voh9olvct2d4SkfPorQ66VbhGZbCi/tT0QmHtRF0VdOpj4d/fA xXaO0aHzceUiz48A7zyq7FfbkLB2rOGIo4CPfrl/ebbAXRLj0x+uTukt1KjLAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495877; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T1dFEVazFRCF6B+uX+VKfndhQyvX5p5hbsVsBG3KLSI=; b=bhSd2ULYK0ZMpCbCBM8mv+lvA+GBy9JV3iDZt0KGx0AlQPeTiRQq/WJqWCWbhWL7fbbVQ3 0HrdUH4m/s6HBNlRmionpxFzzWiFKrJKBwqmQPsJsy3mgoG4yflUbKkAvhQ0StQOCH2CQX bvPuL/1I/oIzA46JjqPjzQRhbLbNSs5jZPL3CUf6oS5KRQkbRIehfG7S3Y+Co1BHFyxGXv 6i3y2ylAm39Aanjb4ankZgcQcm/9e4xX6mVAssMRdpHZnsGYkUhocz2eiu8Wsf3jwlrxvM UG/IgIh7Zj5bcZbrQdr1oYeOswie50inkfduIPvdCzVjaaNypbO2olrJC/3Tow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727495877; a=rsa-sha256; cv=none; b=BNoVRZE4z5OJIejIPCYDNQuMAajBsjv16iUaKACDBh76P+rfavk9nUfPjwG2exC7rH9kCo uX+PtoyEIlPihE3LFDvpF2N8Pl1G9h9PpX6y34AMYWHPhgiOwz+xMnT6UGE9c9mF8sfwLr M7SlCyfV055WbNMy8BWNZ8m36YzuZQiVdfG75vg6w1OOnmQ/c0fIXZjn5GJADKxLGXBbhJ /vw9lWB9nolGBCnFJyrTAdiSffY1vw0EaO0VMbHyfnSDtfYsvqyDG1mcR2eyFjO4frxVlv vTFEErICYJDtPc6xi4i9VW5tRI+mF4vwZHF9WlrtsA2B0AAnR6Y16rbEQDwnRg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFtpY2m4rz17gG; Sat, 28 Sep 2024 03:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S3vvrP015504; Sat, 28 Sep 2024 03:57:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S3vvVW015501; Sat, 28 Sep 2024 03:57:57 GMT (envelope-from git) Date: Sat, 28 Sep 2024 03:57:57 GMT Message-Id: <202409280357.48S3vvVW015501@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: c6961c90fd2a - stable/14 - lib/libcrypt: remove trailing whitespace List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c6961c90fd2a320a0e4da1771dc47a1fe8f56b0b Auto-Submitted: auto-generated The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=c6961c90fd2a320a0e4da1771dc47a1fe8f56b0b commit c6961c90fd2a320a0e4da1771dc47a1fe8f56b0b Author: Enji Cooper AuthorDate: 2023-10-28 01:10:39 +0000 Commit: Enji Cooper CommitDate: 2024-09-28 03:57:45 +0000 lib/libcrypt: remove trailing whitespace No functional change intended. MFC after: 2 weeks (cherry picked from commit 8ef8da882ff475e3da3bde57d97593a68f7d97b2) --- lib/libcrypt/crypt-nthash.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/libcrypt/crypt-nthash.c b/lib/libcrypt/crypt-nthash.c index 28c832dd6f9f..8bd880e625cc 100644 --- a/lib/libcrypt/crypt-nthash.c +++ b/lib/libcrypt/crypt-nthash.c @@ -57,17 +57,17 @@ crypt_nthash(const char *pw, const char *salt __unused, char *buffer) u_char hash[MD4_SIZE]; const char *s; MD4_CTX ctx; - - bzero(unipw, sizeof(unipw)); + + bzero(unipw, sizeof(unipw)); /* convert to unicode (thanx Archie) */ unipwLen = 0; for (s = pw; unipwLen < sizeof(unipw) / 2 && *s; s++) unipw[unipwLen++] = htons(*s << 8); - + /* Compute MD4 of Unicode password */ MD4Init(&ctx); MD4Update(&ctx, (u_char *)unipw, unipwLen*sizeof(u_int16_t)); - MD4Final(hash, &ctx); + MD4Final(hash, &ctx); buffer = stpcpy(buffer, magic); *buffer++ = '$'; From nobody Sat Sep 28 03:58: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 4XFtq71ZdTz5Xh7V; Sat, 28 Sep 2024 03:58:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XFtq70vhSz4SPG; Sat, 28 Sep 2024 03:58:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GRLu89pVLzfebJBOx2k/WOwThsKQHFTnV+BuQMPXeJs=; b=fIyAuKqQyIZqbxt/8k2q1MRUku/0/TLiG1fc1SQpsUtR+aYK/bHy9WewDzCF/N9qy+HPvi zSFnc+KSLcvj8qYG2P45QXtUH/7cTzi4fFV5Vq2p1o9gcUIsePgKwerpzDabR+rXBqZJHv mk5hBaAe3YxhkNUlRYOLcTIJVDcsJgBP/dG4aKTB3KaUUHAeGUx0t1nOU1ES0GchKex7YO mPcBVdzD2mQYRRS0CJK/eXkrrurDQnmGIyv7EZ5TzG6N7IKNWQIGdbLljD3SLe7PIY/4L+ bAeTKdtIE8VXauXlrDJRuVVCzijlr3M1N032LTidlkiHw9A51KSoJG4WuZzvPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727495907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GRLu89pVLzfebJBOx2k/WOwThsKQHFTnV+BuQMPXeJs=; b=fbTnCF8SCQRsLk7YnibCTh+N/klhkn333Tiou3UUQx7XIKk7o/hXFyas7t6nQCDSR+d+S5 Ehyn/sGopxBFkimaSkaTA9fKgJNm0MbQ79pvqmdhaES9Fybs7wdRdHQWbrI28XVV0rfSBE n13OZ98gtZjKcZAA8RX/hJ450ccOsh8/PoVtW/sQabY9jxz6tlgkzBr8+Q0pTsJXCGc27U z7ZzlxgqZFhNvn+9upAczjUJ2eWPTgL3oUxBMUK4kP3ew6a3/vLPEg4+bI+LmyonFrS+2O a5FBdnYtQvWKrGqwiB5H7VBKKBR8ybtPURwhohMc/SIUs3Fuip0twLKyTV1+pg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727495907; a=rsa-sha256; cv=none; b=qjFylgu1eeGtPvtZK0g5NjQmDMAt4tKjmDY05Mw3LMA0W2yG70Eu1fsRINlMxGBtOaZxmh XswvxOVnb198yhd5k/W+f4uYMKa86EL5T/56g+sTPVVBrHgy7DDJiGkZcKviqhAmEA2nDA IBraK56TqxCQAbnHd2vL+GezFc8e/iwcHSYtS1ESGeYAcL0YLIeLQb1pmDwCKpkSVGLu8E TLoRXmOYnQMTeWYQlagtDBRFyMUYjsP1uchyknqpkdCDvHGhsW/c3zLMdYsW4QRUUCaND7 kZ/Udee0sWv42z4dP36/Ht7NBREiXi5rXpZb9PeTCDXVWj8NVo09X5MINB0hzw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XFtq70WdPz187x; Sat, 28 Sep 2024 03:58:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S3wQEJ015698; Sat, 28 Sep 2024 03:58:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S3wQt1015695; Sat, 28 Sep 2024 03:58:26 GMT (envelope-from git) Date: Sat, 28 Sep 2024 03:58:26 GMT Message-Id: <202409280358.48S3wQt1015695@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: c931eed5bc43 - stable/14 - lib/libcrypt: another trivial style change List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c931eed5bc4346fac88a4a7224f26f280ecd11be Auto-Submitted: auto-generated The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=c931eed5bc4346fac88a4a7224f26f280ecd11be commit c931eed5bc4346fac88a4a7224f26f280ecd11be Author: Enji Cooper AuthorDate: 2023-10-28 01:56:41 +0000 Commit: Enji Cooper CommitDate: 2024-09-28 03:58:19 +0000 lib/libcrypt: another trivial style change Normalize on hard tabs. I didn't catch this before pushing the previous commit. No functional changes intended. MFC after: 2 weeks MFC with: 8ef8da882ff475e3da3bde57d97593a68f7d97b2 (cherry picked from commit 61b15e6dfc963a0c67dbaeae7f4590674976111f) --- lib/libcrypt/crypt-nthash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libcrypt/crypt-nthash.c b/lib/libcrypt/crypt-nthash.c index 8bd880e625cc..cc9dbf7533cd 100644 --- a/lib/libcrypt/crypt-nthash.c +++ b/lib/libcrypt/crypt-nthash.c @@ -65,7 +65,7 @@ crypt_nthash(const char *pw, const char *salt __unused, char *buffer) unipw[unipwLen++] = htons(*s << 8); /* Compute MD4 of Unicode password */ - MD4Init(&ctx); + MD4Init(&ctx); MD4Update(&ctx, (u_char *)unipw, unipwLen*sizeof(u_int16_t)); MD4Final(hash, &ctx); From nobody Sat Sep 28 09:23: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 4XG21k4pL9z5Y2sL; Sat, 28 Sep 2024 09:23: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 4XG21k3sNpz4qHr; Sat, 28 Sep 2024 09:23:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9JWwhcfwoQ2tV3m1iWGpEPCS/K0GlJ4tA1inJDPtxUw=; b=Qe9j8rfSRyjgQIMD8nkFi6tMDHnB5EpT0Y3HhpAkxRvcNccEsgYVES3jzTwFIkq/GwUe/l aWsMQtDDPSu+IBHjyONfMlbRToHW6134WUl/qCAN0h0RdpZtHYKPGKGalMF5Mmj7bNrDS0 pGLUQkp2vfrP2shkEBhZgHQH6EZIv9aOi/2zwKBvL7j+MR1scX7C84xMkPbbmrafDEHBu7 Hmj65eQqsn4P3PB2faM3o73mUMzmx8uqY1rj1GEj1eieDblPH36fNPG9iwOxJkRNJeSgC8 iuUpz05QMNeMvkH/6thzFCU9d8LlmepUe5ssVbu8mNPAhmW0luOp10u4rgEs3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9JWwhcfwoQ2tV3m1iWGpEPCS/K0GlJ4tA1inJDPtxUw=; b=PVQnSPvFmECIO9xRaMaW4Gigz7Q07NCi7sKeNuwJI6KOKksp3TyLXIgjJMv2oDmcjA+MWV k4hmgGDsMr4Ss/xnNBiPDpc9+AXdHLYhdPiZ46HMtK9dhgF/qQOdKVHWMZsbCoc7AdUjdA 1OX3IQBmauvwkidzO1CNJ60WwPBrRKoUYwQ9EXFQW25xlvH68EBQQlh7FLvpEBMIG4xRKY noDuSf6ymAfgLXAuoG+9NRBVBfd23llwku/RL47gcR8xeMdhJ0V4mc5wop+xStITZKmykE fAVlEoz6fHHuC1/O9VLjm5b/fnHEhyEzSdll99O6fnrJHZbOwT1n6s+nvyensQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515386; a=rsa-sha256; cv=none; b=npG1Ef2X1VtACqS2kyUAViZv1I1zAlkRkY1rP6yPZzNV7U/am67wSgmbPtSNpn5RxW8ArB N+4nWulJQvRuOAHgLWYXRZkpCnCYAoMijoBPxFjaxekXw/rJA5UKabkEE4aRp66M4y4cWq hnPYs6NaVrGiFUXhToA5NA1OZTGLFi1gTfQjvkeB7Mq130g+A8H2V+DJIXbtcQSCXV6Zsp TSCApchf6V/Z4F/WiJmsvYtv872SPRdRhqUj41KynY8hZR0c+R4V7zsaR4XJavBeP0AwEB 02rzC5xxdb1Kl9serE+dm3YILfrTessBilvOXlgkG7+cHAuZhHtAuVNPSgVkfQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21k3QR1zK6s; Sat, 28 Sep 2024 09:23: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 48S9N6Q1076046; Sat, 28 Sep 2024 09:23:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9N6BA076043; Sat, 28 Sep 2024 09:23:06 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:06 GMT Message-Id: <202409280923.48S9N6BA076043@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: a0d55936c9da - stable/14 - e1000: Update igb driver version to 2.5.28-fbsd List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: a0d55936c9da931147655e9ff48d1b3b1a1f8e73 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a0d55936c9da931147655e9ff48d1b3b1a1f8e73 commit a0d55936c9da931147655e9ff48d1b3b1a1f8e73 Author: Kevin Bowling AuthorDate: 2024-09-21 06:27:54 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:21:39 +0000 e1000: Update igb driver version to 2.5.28-fbsd Bump to the current out of tree driver version since we only have some gratuitous changes. (cherry picked from commit ddfec1fb6814088abc5805f45c4a18c5731d51b9) --- sys/dev/e1000/e1000_base.c | 3 ++- sys/dev/e1000/e1000_i210.c | 14 +++++++------- sys/dev/e1000/e1000_phy.c | 2 +- sys/dev/e1000/if_em.c | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/sys/dev/e1000/e1000_base.c b/sys/dev/e1000/e1000_base.c index d83dc48c4d4d..ae44a0b91aac 100644 --- a/sys/dev/e1000/e1000_base.c +++ b/sys/dev/e1000/e1000_base.c @@ -162,7 +162,8 @@ void e1000_rx_fifo_flush_base(struct e1000_hw *hw) rfctl |= E1000_RFCTL_IPV6_EX_DIS; E1000_WRITE_REG(hw, E1000_RFCTL, rfctl); - if (!(E1000_READ_REG(hw, E1000_MANC) & E1000_MANC_RCV_TCO_EN)) + if (hw->mac.type != e1000_82575 || + !(E1000_READ_REG(hw, E1000_MANC) & E1000_MANC_RCV_TCO_EN)) return; /* Disable all Rx queues */ diff --git a/sys/dev/e1000/e1000_i210.c b/sys/dev/e1000/e1000_i210.c index c7ca56914dba..4005034d7d31 100644 --- a/sys/dev/e1000/e1000_i210.c +++ b/sys/dev/e1000/e1000_i210.c @@ -362,7 +362,7 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, E1000_INVM_RECORD_SIZE_IN_BYTES); u32 buffer[E1000_INVM_SIZE]; s32 status = -E1000_ERR_INVM_VALUE_NOT_FOUND; - u16 version = 0; + u16 nvm_version = 0; DEBUGFUNC("e1000_read_invm_version"); @@ -379,14 +379,14 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, /* Check if we have first version location used */ if ((i == 1) && ((*record & E1000_INVM_VER_FIELD_ONE) == 0)) { - version = 0; + nvm_version = 0; status = E1000_SUCCESS; break; } /* Check if we have second version location used */ else if ((i == 1) && ((*record & E1000_INVM_VER_FIELD_TWO) == 0)) { - version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; + nvm_version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; status = E1000_SUCCESS; break; } @@ -397,7 +397,7 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, else if ((((*record & E1000_INVM_VER_FIELD_ONE) == 0) && ((*record & 0x3) == 0)) || (((*record & 0x3) != 0) && (i != 1))) { - version = (*next_record & E1000_INVM_VER_FIELD_TWO) + nvm_version = (*next_record & E1000_INVM_VER_FIELD_TWO) >> 13; status = E1000_SUCCESS; break; @@ -408,16 +408,16 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, */ else if (((*record & E1000_INVM_VER_FIELD_TWO) == 0) && ((*record & 0x3) == 0)) { - version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; + nvm_version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; status = E1000_SUCCESS; break; } } if (status == E1000_SUCCESS) { - invm_ver->invm_major = (version & E1000_INVM_MAJOR_MASK) + invm_ver->invm_major = (nvm_version & E1000_INVM_MAJOR_MASK) >> E1000_INVM_MAJOR_SHIFT; - invm_ver->invm_minor = version & E1000_INVM_MINOR_MASK; + invm_ver->invm_minor = nvm_version & E1000_INVM_MINOR_MASK; } /* Read Image Type */ for (i = 1; i < invm_blocks; i++) { diff --git a/sys/dev/e1000/e1000_phy.c b/sys/dev/e1000/e1000_phy.c index 0aaf32125bbe..634f48171c3e 100644 --- a/sys/dev/e1000/e1000_phy.c +++ b/sys/dev/e1000/e1000_phy.c @@ -1037,7 +1037,7 @@ static s32 e1000_set_master_slave_mode(struct e1000_hw *hw) break; case e1000_ms_auto: phy_data &= ~CR_1000T_MS_ENABLE; - /* FALLTHROUGH */ + break; default: break; } diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 690d6dfa3218..3d815348f5ec 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -37,7 +37,7 @@ * Driver version: *********************************************************************/ static const char em_driver_version[] = "7.7.8-fbsd"; -static const char igb_driver_version[] = "2.5.19-fbsd"; +static const char igb_driver_version[] = "2.5.28-fbsd"; /********************************************************************* * PCI Device ID Table From nobody Sat Sep 28 09:23: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 4XG21l5qf7z5Y2sM; Sat, 28 Sep 2024 09:23: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 4XG21l4nRkz4qMt; Sat, 28 Sep 2024 09:23:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515387; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J+87+ks+trFKhE5z49gzqCVfd7Q6Sk5Pr1gh8iAxA9U=; b=u9T5IWJxMbrHFA8rtWfviLEtB7wN1KBCW+dVqAkUSVeoBbaz2OlpClx/cE4U837oMJpVEL OfKq2qE8I8x2dJ2MS4gTjhYIOBr/LJyjy6z8pXkQNugLVvkXh41zVf6PIFizEbTCiF6ZiD roR43/fSFIZ1AePrXQ6IDge01cwu4nE509O491Os47diJ++ZsfSLOtC6BkirNt+2j5vSG7 hgfmblSOVGmPa85zfL/6qUObuPlCGHGrzUj37txpHE3DsupHCoJfLlRddlYX4NspHjTTZs f8DyoYv7rVJzPoubYk5TS5Excsa8n6PO4kmNeh/cx2YAJ1GMXmWWFCl+Kwlgsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515387; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J+87+ks+trFKhE5z49gzqCVfd7Q6Sk5Pr1gh8iAxA9U=; b=DENHcK0qC2NFCnv8VQTIhEOKwk0TMWvJW70VGdOKpPjaSngRRz8C3duF4x60kAV5B7APPO 5sSBb5RUWvV1aDhQLxfW3bUcYNEiBRYxSbKaoGV53uDpqxGtNjaYUMbq/MOnPUx4j7efhp MU0M0vMUHNPyzsXNi1/qjnqJfkbIHf45fW0NIwNPPSICr8rVc4ea9g9cQ9QA8z/A8nl3qY Ka0u8FQDpkK8x8580TqdVr5z3s2IBdB3kTSs+n1BKrf51RfG+jGqYCEqL+rR1JEoTTu58s YGoWDj17mZ+m0IbgMFxzsBK8G51eXl2kwtbN4pjQwLull/Xiz3iXjZDvdOsTqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515387; a=rsa-sha256; cv=none; b=jnBlnPsQq5xhygIKLR8DLDWlsOKi4PagU71QurmEFHBx25Bdksujo/Nepnpi7/HSsPMbOk KdPCb/dWVCRpQ1YQtdJy5aoigcy5qdYF2e+zaKv3J5t/CnzcQ6NJJ3LfgoB27arHseC9r3 hCDzltfq7ghrpVC3uo3uMbwFfd8s0IguKBop5Or5egpGZ+e3gkulVK0rtqhx2/e/5xKb06 mfHNVOS+NDA2Tl4Ra3RsyiR3T26zot1Yr53hUGsjVhShgx60QJKC/n8YVtj3bX1+hncXwC 8bhyqcKnllIEyv8x/MKW98QKW1Q08P6vRnrKYERkrHXtgloOUdQINiMKfEx0ng== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21l4PR9zK6t; Sat, 28 Sep 2024 09:23: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 48S9N7ci076088; Sat, 28 Sep 2024 09:23:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9N7qc076085; Sat, 28 Sep 2024 09:23:07 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:07 GMT Message-Id: <202409280923.48S9N7qc076085@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: 1091dcca0e82 - stable/14 - ixgbe: update if_bypass to ix-3.3.38 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 1091dcca0e8280d0932b3d31389ffe28fd2934d3 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=1091dcca0e8280d0932b3d31389ffe28fd2934d3 commit 1091dcca0e8280d0932b3d31389ffe28fd2934d3 Author: Kevin Bowling AuthorDate: 2024-09-21 09:39:54 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:21:39 +0000 ixgbe: update if_bypass to ix-3.3.38 Bring if_bypass up to date with changes in the out of tree driver Drop NEEDGIANT as the sysctl handlers have internal mutex for state changes. (cherry picked from commit c41a0eeea0d69264317401dd3fac46be160081b5) --- sys/dev/ixgbe/if_bypass.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/sys/dev/ixgbe/if_bypass.c b/sys/dev/ixgbe/if_bypass.c index e9ea77dfb49c..166150d75cc6 100644 --- a/sys/dev/ixgbe/if_bypass.c +++ b/sys/dev/ixgbe/if_bypass.c @@ -530,8 +530,7 @@ ixgbe_bp_wd_reset(SYSCTL_HANDLER_ARGS) error = IXGBE_BYPASS_FW_WRITE_FAILURE; break; } - error = hw->mac.ops.bypass_rw(hw, BYPASS_PAGE_CTL1, &reset_wd); - if (error != 0) { + if (hw->mac.ops.bypass_rw(hw, BYPASS_PAGE_CTL1, &reset_wd)) { error = IXGBE_ERR_INVALID_ARGUMENT; break; } @@ -745,8 +744,7 @@ ixgbe_bypass_init(struct ixgbe_softc *sc) */ SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), - OID_AUTO, "bypass_log", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "bypass_log", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, sc, 0, ixgbe_bp_log, "I", "Bypass Log"); /* All other setting are hung from the 'bypass' node */ @@ -757,39 +755,39 @@ ixgbe_bypass_init(struct ixgbe_softc *sc) bp_list = SYSCTL_CHILDREN(bp_node); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "version", CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + OID_AUTO, "version", CTLTYPE_INT | CTLFLAG_RD, sc, 0, ixgbe_bp_version, "I", "Bypass Version"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "state", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "state", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_set_state, "I", "Bypass State"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "timeout", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "timeout", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_timeout, "I", "Bypass Timeout"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "main_on", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "main_on", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_main_on, "I", "Bypass Main On"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "main_off", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "main_off", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_main_off, "I", "Bypass Main Off"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "aux_on", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "aux_on", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_aux_on, "I", "Bypass Aux On"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "aux_off", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "aux_off", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_aux_off, "I", "Bypass Aux Off"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "wd_set", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "wd_set", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_wd_set, "I", "Set BP Watchdog"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "wd_reset", CTLTYPE_INT | CTLFLAG_WR | CTLFLAG_NEEDGIANT, + OID_AUTO, "wd_reset", CTLTYPE_INT | CTLFLAG_WR, sc, 0, ixgbe_bp_wd_reset, "S", "Bypass WD Reset"); sc->feat_en |= IXGBE_FEATURE_BYPASS; From nobody Sat Sep 28 09:23: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 4XG21p326jz5Y2ky; Sat, 28 Sep 2024 09:23: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 4XG21p0Hdfz4qTD; Sat, 28 Sep 2024 09:23:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515390; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7567SeHyhI50F+EKHdqKU2RRGtvZfYGz7WS3rI0B3EM=; b=WtVdzUH9UFImy6R9G8ceC6soc5eQBOZYiUjObyNQV0JWzw7pJvF3vcWbmzMnAgB7qSuAOX ZK5Dfm6ekWFx+1ZMansAu8OhfL0W9HZQMCaJGVu7oKZP5yT3IiBexXG0k+zG3Szy3d6xy3 T0gRk9n49JG4dN/b46IMSyoXepyp5ltEnT7WBzxkPWSAi/oj9Ug87sxE77pQKVA48Uqn8j 8Bvf4rUtSaWhQmk0lv8q/Z7fXLC2painaSOOivsYcxQiX+yEsrQijJOfxD1MHXl3Xfxrpo 6lWkJCm3G2w+P4tiBZ8cThvvAnd+IKR8EkNLAIYRSUH5e7eqnoU7emt/4KEqvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515390; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7567SeHyhI50F+EKHdqKU2RRGtvZfYGz7WS3rI0B3EM=; b=gZ3Mn2fCEiLptLWY2D945RFktEhQVNekSaGFBICAH/YsHrBURF9bSu52oSwMtMgPPszfG6 XfYSTNuhXTS0hHzXwpfAoFvWbqpGd2uawCzsBEguk2/dXwnLdVs6TP3qS8avCDr1fqNdqm IRFALd7c0UxkOtRC3QBVN/vslPD1OOF3hNDT090fAf4M7w2P9hXp91csiEpIZNGnWE6Q1x MG/lWYDf6jh/Q61dr8Hbr8a+r7Je60bSACr7mb56IAykS8Q5SLy/ovAukBUHsZUZ2kVejg 47IMgCQbKVNq/gEyl39iZcmahVfFmqPw2EeewwZjb2zp2WxCckdl3Wg2/0IFSw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515390; a=rsa-sha256; cv=none; b=YNQduhF9WQthvBEpqz49cipWmXknlahnFUfbhIhUoC1uVYZG35cY67EpgTt1IJ9JSAmx0u CAbJGd/39QzWzDxC8SW+lK3vgdG25stg6rr4FzQHBmKTMlDERk/o+u0jX2kNCnalglKz4h OkonO/vBZDWMd7P30LRxI66ztJ9dGc8j/1MC3r8eJ1s1Tfmjx9lgCKk5Q/BkSdxzwqrlIQ QqFJwOXfdr0yVCDUZKFLckYr5IcdvQ3Yru4j+8CGZERNPj3Se12iY3Hcwysnuy3m51ZiL2 QxnXbgy4dG4bJQLh/zrgj6l+iNoRLvHv+/lsNHp3zbEW9l8nykkK2LW6qOqODg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21n6P0zzJVL; Sat, 28 Sep 2024 09:23: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 48S9N9GM076185; Sat, 28 Sep 2024 09:23:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9N9ad076182; Sat, 28 Sep 2024 09:23:09 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:09 GMT Message-Id: <202409280923.48S9N9ad076182@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: 09c658172a03 - stable/14 - ixgbe: update ixgbe_mbx with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 09c658172a03ffae272092527ee43b39adbb6e17 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=09c658172a03ffae272092527ee43b39adbb6e17 commit 09c658172a03ffae272092527ee43b39adbb6e17 Author: Kevin Bowling AuthorDate: 2024-09-21 09:47:11 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:22:01 +0000 ixgbe: update ixgbe_mbx with ix-3.3.38 changes (cherry picked from commit 0acea458f82d95b75193bf6ce6321906032abf40) --- sys/dev/ixgbe/ixgbe_mbx.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ sys/dev/ixgbe/ixgbe_mbx.h | 1 + 2 files changed, 45 insertions(+) diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index 0a0c5abde157..5f1f64e02b82 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -199,6 +199,26 @@ s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id) return ret_val; } +/** + * ixgbe_clear_mbx - Clear Mailbox Memory + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to write + * + * Set VFMBMEM of given VF to 0x0. + **/ +s32 ixgbe_clear_mbx(struct ixgbe_hw *hw, u16 mbx_id) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + s32 ret_val = IXGBE_ERR_CONFIG; + + DEBUGFUNC("ixgbe_clear_mbx"); + + if (mbx->ops[mbx_id].clear) + ret_val = mbx->ops[mbx_id].clear(hw, mbx_id); + + return ret_val; +} + /** * ixgbe_poll_for_msg - Wait for message notification * @hw: pointer to the HW structure @@ -658,6 +678,7 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; + mbx->ops[0].clear = NULL; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; @@ -1054,6 +1075,27 @@ static s32 ixgbe_read_mbx_pf(struct ixgbe_hw *hw, u32 *msg, u16 size, return IXGBE_SUCCESS; } +/** + * ixgbe_clear_mbx_pf - Clear Mailbox Memory + * @hw: pointer to the HW structure + * @vf_id: the VF index + * + * Set VFMBMEM of given VF to 0x0. + **/ +static s32 ixgbe_clear_mbx_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u16 mbx_size = hw->mbx.size; + u16 i; + + if (vf_id > 63) + return IXGBE_ERR_PARAM; + + for (i = 0; i < mbx_size; ++i) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf_id), i, 0x0); + + return IXGBE_SUCCESS; +} + /** * ixgbe_init_mbx_params_pf_id - set initial values for pf mailbox * @hw: pointer to the HW structure @@ -1072,6 +1114,7 @@ void ixgbe_init_mbx_params_pf_id(struct ixgbe_hw *hw, u16 vf_id) mbx->ops[vf_id].check_for_msg = ixgbe_check_for_msg_pf; mbx->ops[vf_id].check_for_ack = ixgbe_check_for_ack_pf; mbx->ops[vf_id].check_for_rst = ixgbe_check_for_rst_pf; + mbx->ops[vf_id].clear = ixgbe_clear_mbx_pf; } /** @@ -1147,6 +1190,7 @@ void ixgbe_upgrade_mbx_params_pf(struct ixgbe_hw *hw, u16 vf_id) mbx->ops[vf_id].check_for_msg = ixgbe_check_for_msg_pf; mbx->ops[vf_id].check_for_ack = ixgbe_check_for_ack_pf; mbx->ops[vf_id].check_for_rst = ixgbe_check_for_rst_pf; + mbx->ops[vf_id].clear = ixgbe_clear_mbx_pf; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 3a9bd34a137f..e6519963242e 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -195,6 +195,7 @@ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id); s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id); s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id); s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id); +s32 ixgbe_clear_mbx(struct ixgbe_hw *hw, u16 vf_number); void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw); void ixgbe_upgrade_mbx_params_vf(struct ixgbe_hw *hw); void ixgbe_init_mbx_params_pf(struct ixgbe_hw *hw); From nobody Sat Sep 28 09:23: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 4XG21n4j3Sz5Y2sN; Sat, 28 Sep 2024 09:23: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 4XG21n0Zt7z4qT1; Sat, 28 Sep 2024 09:23:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=88uPV2HDgumSgDcT1i5BlQ+TAxTRpnbOEs3mpapnpH4=; b=owAWj0hSaIOiT2dK8cyfGEAMNj4dF5ksbcWPYHB8s71jewEk2lFDKKLjPWo/zlczj/Svr5 ZUa4A09kGwD6WrOnnIdLVJJu6GVJWB6+unT7rUR3iCLC8VLAbYvcSYYPId4tr0vMI+HHfl MX4HjY1YziNXZGh4u2oRyR2P4FsvZmq6RNODY7KtxY8QgdVaou6ktfI5uUPCKr1i/ICDRR WtDcNA9Wd0l/af08dkuUauuBokwXi7npyxof1bIJ/gfLnXMc09N+IZpEJEdHp76EgGIcge l+dM/4lUOLMz3Rp1oZi8UFJhAqv/LKMWoqzg4lDWDVpattoRAt+C/tkdSOLRLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=88uPV2HDgumSgDcT1i5BlQ+TAxTRpnbOEs3mpapnpH4=; b=Kxe0Ld56P022ZOBgWeile/IXx33H535bWg8wTI8D6bEBn78g5Dv2PtRPCuVxrG0525Exi5 FHKT1rsOgCncof8Nb5gsoy8O4qhfPz1erhKLXI/+RrhYPqeG9ncTwnMXNEiaUInL/aFA06 dE27C80tBBg7NvF9q23w2zzR6rvmQFvFuU7yPbR/Qipin5ArSCWhlbmRQARIhbUDkenDmr RZUjOnSNouTNaOG1H093Ybfr9sJR5hxPnuPTrD0Bkv+EMC2L2+8M2V9ESrJMIsnuZYqxvv VWzlTsTDTuikJUXT8Qjl0q5qLo/bOqgzPp+BNDBu2580LW2DeqPV5kTbrD8RVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515389; a=rsa-sha256; cv=none; b=RG/+cjiyoZqMu1/uOGo6FDGqWIxJYq8e6tR8Oh4K68z45whohsOSZmcAmGLhRVmmeQ+3dH WYGOSKnL0T49namujjBfvv18gaR27vH9NbfotaQmKetFgARJcDoEHYNM/C8409bzv04dUM 65UrXD7C+bZP05YjxGvkqV9WLy1KzEVj9Xt+RwlQZM/ZctaF5Jkm85qyp294//YMS2a3ra fn4i7SOPSEtu224v+TgTp6dn8VN+3+CTfgxDSxijgGnduMuGLPGCMcqISdOdPbvzItO9Ph 7i5Ryxs83plCrCPTIaAVzskSL7A6A39qdPDe94AKbM9ihEM2P78jMLN9ZEoX4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21m5X4FzK6v; Sat, 28 Sep 2024 09:23: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 48S9N8uC076138; Sat, 28 Sep 2024 09:23:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9N8J8076135; Sat, 28 Sep 2024 09:23:08 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:08 GMT Message-Id: <202409280923.48S9N8J8076135@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: af9d02f4da5f - stable/14 - ixgbe: update ixgbe_phy with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: af9d02f4da5f5c8139f5ae67a7afc5fcb0d01e02 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=af9d02f4da5f5c8139f5ae67a7afc5fcb0d01e02 commit af9d02f4da5f5c8139f5ae67a7afc5fcb0d01e02 Author: Kevin Bowling AuthorDate: 2024-09-21 09:45:12 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:21:46 +0000 ixgbe: update ixgbe_phy with ix-3.3.38 changes (cherry picked from commit e06918b94ac44448272a9d6747dcdba142e18b58) --- sys/dev/ixgbe/ixgbe_phy.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index c2f23179476b..e3f311473c38 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -1487,6 +1487,11 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) hw->phy.type = ixgbe_phy_sfp_intel; break; default: + if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) + hw->phy.type = ixgbe_phy_sfp_passive_unknown; + else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) + hw->phy.type = ixgbe_phy_sfp_active_unknown; + else hw->phy.type = ixgbe_phy_sfp_unknown; break; } @@ -1495,10 +1500,6 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) /* Allow any DA cable vendor */ if (cable_tech & (IXGBE_SFF_DA_PASSIVE_CABLE | IXGBE_SFF_DA_ACTIVE_CABLE)) { - if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) - hw->phy.type = ixgbe_phy_sfp_passive_unknown; - else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) - hw->phy.type = ixgbe_phy_sfp_active_unknown; status = IXGBE_SUCCESS; goto out; } From nobody Sat Sep 28 09:23: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 4XG21q3rF8z5Y2Yw; Sat, 28 Sep 2024 09:23: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 4XG21q0bF6z4qJQ; Sat, 28 Sep 2024 09:23:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PG9cUgpo51XNCg/36Ajcd22m4wyBUHRGPxwP+PG6LsM=; b=QziRX05GipylpT6xYv7lN2JYnP8huCDr1ADWrOTQvUfGyriVPNbPbBGOzaiw/QLdHiTQKq RzIFYKFtJ8g00hkenI894AYz8s+T6TlWP2AQssY2RXhwkNWD5nPYSjxTcR48Fn5N7WffAa sx5EMCVuwe88wM7HPUK8OR34IiL7IsXCGtxwvKrutANUySDmXa1b0tVsILPqBgHI1OSZ/7 Vi8qJB0OCfh7TDtNvYqVoTZH/ezs6oCP/TpJX5RMNOoRV33kRfdMlGI5XwKVyL9WCyo39W Rp0ZMWp4IeVqmu/t0AFSPDtlUrKeWpVIV00GpJGCKzrrWYw2RTFRDZlbCGt0ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PG9cUgpo51XNCg/36Ajcd22m4wyBUHRGPxwP+PG6LsM=; b=arMZfAbF8wHl8TKqRTueXMzQC6YXmtk0+H/M/MxyBkq4OwOa17YMO7TgspOUDWuPTBZFOT tl3xH74B/N0OgMtize5kx9mHd+2W1AFgzgIwDPwzkw4JAAYHPZrZRiCG7zFgvIdtUn9rel rTAjIKX2DQZbRyFUqYw/jcZRmlQOwvFJo1wT7185ceh9qRQo7fItBtx3fx0ES6svHCFqJV OHEB+keaReWW2uheRDO9fzS4ePhQxcDWNI27XWo+Zs3+iF1nNEpoNnhujWHVyUkSJwU/xI 5RHf//Ffr9L35TSwS9HmRO2AcKI9r5ikHSUlmtLOxKi10Hc7doX61Pc3QkWImg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515391; a=rsa-sha256; cv=none; b=qyVlXC18ZBKRJ8luFFpKb7MD7hVMHdIDyjcgvFgJOheyjN4XcQUcX1okX/auvOC0BRvyL1 mMqaqkcWcW43s57ufB9tSAL9ofyLNlx8QV0ReBQ5r7hBWi/STpp1RxCC6+KmingMtgspGT sJuu515TIGpeNeGJV0Xu0JPks+ynuAqgcOjzFW2VatzjW6DFzlTM9nWdqS+IhGdNXDmWu/ tJhVvSwLFSlfXmNaEu/sG4f86aI4B6MUbI1ml8FxfLEgWypr84eKXq09bSkOtzEmzGEnwQ HM7hDA86v4tCSASjAiv/oteSjvqaUMmglLNxfcdqGgliSoAwAqgABd2Nd1FcOQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21q09pbzJgS; Sat, 28 Sep 2024 09:23: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 48S9NAjp076239; Sat, 28 Sep 2024 09:23:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9NAVo076236; Sat, 28 Sep 2024 09:23:10 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:10 GMT Message-Id: <202409280923.48S9NAVo076236@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: b8c2ff930b39 - stable/14 - ixgbe: update if_ix and ixgbe api with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b8c2ff930b397951a158ce150a5c6f8b2c533cf6 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=b8c2ff930b397951a158ce150a5c6f8b2c533cf6 commit b8c2ff930b397951a158ce150a5c6f8b2c533cf6 Author: Kevin Bowling AuthorDate: 2024-09-21 09:51:24 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:22:15 +0000 ixgbe: update if_ix and ixgbe api with ix-3.3.38 changes (cherry picked from commit f72de14ea13259db78b06c50da6c864dea698668) --- sys/dev/ixgbe/if_ix.c | 172 ++++++++++++++++++++++++++++++++++------- sys/dev/ixgbe/ixgbe.h | 4 + sys/dev/ixgbe/ixgbe_api.c | 19 ++++- sys/dev/ixgbe/ixgbe_api.h | 1 + sys/dev/ixgbe/ixgbe_common.c | 161 +++++++++++++++++++++++++++++++++++++- sys/dev/ixgbe/ixgbe_common.h | 3 + sys/dev/ixgbe/ixgbe_features.h | 1 + sys/dev/ixgbe/ixgbe_rss.h | 1 + sys/dev/ixgbe/ixgbe_type.h | 52 +++++++++++++ 9 files changed, 378 insertions(+), 36 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index f2b41e19a15e..74bde3497279 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -172,6 +172,7 @@ static void ixgbe_add_media_types(if_ctx_t); static void ixgbe_update_stats_counters(struct ixgbe_softc *); static void ixgbe_config_link(if_ctx_t); static void ixgbe_get_slot_info(struct ixgbe_softc *); +static void ixgbe_fw_mode_timer(void *); static void ixgbe_check_wol_support(struct ixgbe_softc *); static void ixgbe_enable_rx_drop(struct ixgbe_softc *); static void ixgbe_disable_rx_drop(struct ixgbe_softc *); @@ -1141,6 +1142,17 @@ ixgbe_if_attach_post(if_ctx_t ctx) /* Add sysctls */ ixgbe_add_device_sysctls(ctx); + /* Init recovery mode timer and state variable */ + if (sc->feat_en & IXGBE_FEATURE_RECOVERY_MODE) { + sc->recovery_mode = 0; + + /* Set up the timer callout */ + callout_init(&sc->fw_mode_timer, true); + + /* Start the task */ + callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, 0); + } + return (0); err: return (error); @@ -1639,10 +1651,10 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, txr, 0, + CTLTYPE_UINT | CTLFLAG_RD, txr, 0, ixgbe_sysctl_tdh_handler, "IU", "Transmit Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, txr, 0, + CTLTYPE_UINT | CTLFLAG_RD, txr, 0, ixgbe_sysctl_tdt_handler, "IU", "Transmit Descriptor Tail"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tso_tx", CTLFLAG_RD, &txr->tso_tx, "TSO"); @@ -1659,7 +1671,7 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "interrupt_rate", - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RW, &sc->rx_queues[i], 0, ixgbe_sysctl_interrupt_rate_handler, "IU", "Interrupt Rate"); @@ -1667,10 +1679,10 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) CTLFLAG_RD, &(sc->rx_queues[i].irqs), "irqs on this queue"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, rxr, 0, + CTLTYPE_UINT | CTLFLAG_RD, rxr, 0, ixgbe_sysctl_rdh_handler, "IU", "Receive Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, rxr, 0, + CTLTYPE_UINT | CTLFLAG_RD, rxr, 0, ixgbe_sysctl_rdt_handler, "IU", "Receive Descriptor Tail"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_packets", CTLFLAG_RD, &rxr->rx_packets, "Queue Packets Received"); @@ -1799,6 +1811,10 @@ ixgbe_sysctl_tdh_handler(SYSCTL_HANDLER_ARGS) if (!txr) return (0); + + if (atomic_load_acq_int(&txr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&txr->sc->hw, IXGBE_TDH(txr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1822,6 +1838,9 @@ ixgbe_sysctl_tdt_handler(SYSCTL_HANDLER_ARGS) if (!txr) return (0); + if (atomic_load_acq_int(&txr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&txr->sc->hw, IXGBE_TDT(txr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1845,6 +1864,9 @@ ixgbe_sysctl_rdh_handler(SYSCTL_HANDLER_ARGS) if (!rxr) return (0); + if (atomic_load_acq_int(&rxr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&rxr->sc->hw, IXGBE_RDH(rxr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1868,6 +1890,9 @@ ixgbe_sysctl_rdt_handler(SYSCTL_HANDLER_ARGS) if (!rxr) return (0); + if (atomic_load_acq_int(&rxr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&rxr->sc->hw, IXGBE_RDT(rxr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -2158,6 +2183,7 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) { uint32_t newitr = 0; struct rx_ring *rxr = &que->rxr; + /* FIXME struct tx_ring *txr = ... ->txr; */ /* * Do Adaptive Interrupt Moderation: @@ -2173,12 +2199,18 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) que->eitr_setting = 0; /* Idle, do nothing */ if (rxr->bytes == 0) { + /* FIXME && txr->bytes == 0 */ return; } - if ((rxr->bytes) && (rxr->packets)) { - newitr = (rxr->bytes / rxr->packets); - } + if ((rxr->bytes) && (rxr->packets)) + newitr = rxr->bytes / rxr->packets; + /* FIXME for transmit accounting + * if ((txr->bytes) && (txr->packets)) + * newitr = txr->bytes/txr->packets; + * if ((rxr->bytes) && (rxr->packets)) + * newitr = max(newitr, (rxr->bytes / rxr->packets)); + */ newitr += 24; /* account for hardware frame, crc */ /* set an upper boundary */ @@ -2201,6 +2233,8 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) que->eitr_setting = newitr; /* Reset state */ + /* FIXME txr->bytes = 0; */ + /* FIXME txr->packets = 0; */ rxr->bytes = 0; rxr->packets = 0; @@ -2658,6 +2692,9 @@ ixgbe_sysctl_interrupt_rate_handler(SYSCTL_HANDLER_ARGS) int error; unsigned int reg, usec, rate; + if (atomic_load_acq_int(&que->sc->recovery_mode)) + return (EPERM); + reg = IXGBE_READ_REG(&que->sc->hw, IXGBE_EITR(que->msix)); usec = ((reg & 0x0FF8) >> 3); if (usec > 0) @@ -2697,12 +2734,12 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) /* Sysctls for all devices */ SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fc", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_flowcntl, "I", IXGBE_SYSCTL_DESC_SET_FC); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "advertise_speed", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_advertise, "I", IXGBE_SYSCTL_DESC_ADV_SPEED); @@ -2711,35 +2748,35 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) &sc->enable_aim, 0, "Interrupt Moderation"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fw_version", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, ixgbe_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); #ifdef IXGBE_DEBUG /* testing sysctls (for all devices) */ SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "power_state", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_power_state, "I", "PCI Power State"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "print_rss_config", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, ixgbe_sysctl_print_rss_config, "A", "Prints RSS Configuration"); #endif /* for X550 series devices */ if (hw->mac.type >= ixgbe_mac_X550) SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "dmac", - CTLTYPE_U16 | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_U16 | CTLFLAG_RW, sc, 0, ixgbe_sysctl_dmac, "I", "DMA Coalesce"); /* for WoL-capable devices */ if (hw->device_id == IXGBE_DEV_ID_X550EM_X_10G_T) { SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "wol_enable", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_wol_enable, "I", "Enable/Disable Wake on LAN"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "wufc", - CTLTYPE_U32 | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_U32 | CTLFLAG_RW, sc, 0, ixgbe_sysctl_wufc, "I", "Enable/Disable Wake Up Filters"); } @@ -2754,20 +2791,20 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) phy_list = SYSCTL_CHILDREN(phy_node); SYSCTL_ADD_PROC(ctx_list, phy_list, OID_AUTO, "temp", - CTLTYPE_U16 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_U16 | CTLFLAG_RD, sc, 0, ixgbe_sysctl_phy_temp, "I", "Current External PHY Temperature (Celsius)"); SYSCTL_ADD_PROC(ctx_list, phy_list, OID_AUTO, "overtemp_occurred", - CTLTYPE_U16 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_U16 | CTLFLAG_RD, sc, 0, ixgbe_sysctl_phy_overtemp_occurred, "I", "External PHY High Temperature Event Occurred"); } if (sc->feat_cap & IXGBE_FEATURE_EEE) { SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "eee_state", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_eee_state, "I", "EEE Power Save State"); } } /* ixgbe_add_device_sysctls */ @@ -2831,6 +2868,8 @@ ixgbe_if_detach(if_ctx_t ctx) ctrl_ext &= ~IXGBE_CTRL_EXT_DRV_LOAD; IXGBE_WRITE_REG(&sc->hw, IXGBE_CTRL_EXT, ctrl_ext); + callout_drain(&sc->fw_mode_timer); + ixgbe_free_pci_resources(ctx); free(sc->mta, M_IXGBE); @@ -3497,6 +3536,34 @@ ixgbe_if_timer(if_ctx_t ctx, uint16_t qid) } /* ixgbe_if_timer */ +/************************************************************************ + * ixgbe_fw_mode_timer - FW mode timer routine + ************************************************************************/ +static void +ixgbe_fw_mode_timer(void *arg) +{ + struct ixgbe_softc *sc = arg; + struct ixgbe_hw *hw = &sc->hw; + + if (ixgbe_fw_recovery_mode(hw)) { + if (atomic_cmpset_acq_int(&sc->recovery_mode, 0, 1)) { + /* Firmware error detected, entering recovery mode */ + device_printf(sc->dev, "Firmware recovery mode detected. Limiting" + " functionality. Refer to the Intel(R) Ethernet Adapters" + " and Devices User Guide for details on firmware recovery" + " mode.\n"); + + if (hw->adapter_stopped == FALSE) + ixgbe_if_stop(sc->ctx); + } + } else + atomic_cmpset_acq_int(&sc->recovery_mode, 1, 0); + + + callout_reset(&sc->fw_mode_timer, hz, + ixgbe_fw_mode_timer, sc); +} /* ixgbe_fw_mode_timer */ + /************************************************************************ * ixgbe_sfp_probe * @@ -3948,7 +4015,7 @@ ixgbe_intr(void *arg) } /* Check for fan failure */ - if ((hw->device_id == IXGBE_DEV_ID_82598AT) && + if ((sc->feat_en & IXGBE_FEATURE_FAN_FAIL) && (eicr & IXGBE_EICR_GPI_SDP1)) { device_printf(sc->dev, "\nCRITICAL: FAN FAILURE!! REPLACE IMMEDIATELY!!\n"); @@ -4142,6 +4209,9 @@ ixgbe_sysctl_advertise(SYSCTL_HANDLER_ARGS) int error, advertise; sc = (struct ixgbe_softc *)arg1; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + advertise = sc->advertise; error = sysctl_handle_int(oidp, &advertise, 0, req); @@ -4493,6 +4563,9 @@ ixgbe_sysctl_print_rss_config(SYSCTL_HANDLER_ARGS) int error = 0, reta_size; u32 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + buf = sbuf_new_for_sysctl(NULL, NULL, 128, req); if (!buf) { device_printf(dev, "Could not allocate sbuf for output.\n"); @@ -4548,6 +4621,9 @@ ixgbe_sysctl_phy_temp(SYSCTL_HANDLER_ARGS) struct ixgbe_hw *hw = &sc->hw; u16 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + if (hw->device_id != IXGBE_DEV_ID_X550EM_X_10G_T) { device_printf(iflib_get_dev(sc->ctx), "Device has no supported external thermal sensor.\n"); @@ -4580,6 +4656,9 @@ ixgbe_sysctl_phy_overtemp_occurred(SYSCTL_HANDLER_ARGS) struct ixgbe_hw *hw = &sc->hw; u16 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + if (hw->device_id != IXGBE_DEV_ID_X550EM_X_10G_T) { device_printf(iflib_get_dev(sc->ctx), "Device has no supported external thermal sensor.\n"); @@ -4617,6 +4696,9 @@ ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS) int curr_eee, new_eee, error = 0; s32 retval; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + curr_eee = new_eee = !!(sc->feat_en & IXGBE_FEATURE_EEE); error = sysctl_handle_int(oidp, &new_eee, 0, req); @@ -4681,15 +4763,20 @@ ixgbe_init_device_features(struct ixgbe_softc *sc) sc->feat_cap |= IXGBE_FEATURE_BYPASS; break; case ixgbe_mac_X550: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_TEMP_SENSOR; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; break; case ixgbe_mac_X550EM_x: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; + if (sc->hw.device_id == IXGBE_DEV_ID_X550EM_X_KR) + sc->feat_cap |= IXGBE_FEATURE_EEE; break; case ixgbe_mac_X550EM_a: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; sc->feat_cap &= ~IXGBE_FEATURE_LEGACY_IRQ; @@ -4725,6 +4812,9 @@ ixgbe_init_device_features(struct ixgbe_softc *sc) /* Thermal Sensor */ if (sc->feat_cap & IXGBE_FEATURE_TEMP_SENSOR) sc->feat_en |= IXGBE_FEATURE_TEMP_SENSOR; + /* Recovery mode */ + if (sc->feat_cap & IXGBE_FEATURE_RECOVERY_MODE) + sc->feat_en |= IXGBE_FEATURE_RECOVERY_MODE; /* Enabled via global sysctl... */ /* Flow Director */ @@ -4776,14 +4866,42 @@ static void ixgbe_sbuf_fw_version(struct ixgbe_hw *hw, struct sbuf *buf) { struct ixgbe_nvm_version nvm_ver = {0}; - uint16_t phyfw = 0; - int status; const char *space = ""; + ixgbe_get_nvm_version(hw, &nvm_ver); /* NVM version */ ixgbe_get_oem_prod_version(hw, &nvm_ver); /* OEM's NVM version */ - ixgbe_get_orom_version(hw, &nvm_ver); /* Option ROM */ ixgbe_get_etk_id(hw, &nvm_ver); /* eTrack identifies a build in Intel's SCM */ - status = ixgbe_get_phy_firmware_version(hw, &phyfw); + ixgbe_get_orom_version(hw, &nvm_ver); /* Option ROM */ + + /* FW version */ + if ((nvm_ver.phy_fw_maj == 0x0 && + nvm_ver.phy_fw_min == 0x0 && + nvm_ver.phy_fw_id == 0x0) || + (nvm_ver.phy_fw_maj == 0xF && + nvm_ver.phy_fw_min == 0xFF && + nvm_ver.phy_fw_id == 0xF)) { + /* If major, minor and id numbers are set to 0, + * reading FW version is unsupported. If major number + * is set to 0xF, minor is set to 0xFF and id is set + * to 0xF, this means that number read is invalid. */ + } else + sbuf_printf(buf, "fw %d.%d.%d ", + nvm_ver.phy_fw_maj, nvm_ver.phy_fw_min, nvm_ver.phy_fw_id); + + /* NVM version */ + if ((nvm_ver.nvm_major == 0x0 && + nvm_ver.nvm_minor == 0x0 && + nvm_ver.nvm_id == 0x0) || + (nvm_ver.nvm_major == 0xF && + nvm_ver.nvm_minor == 0xFF && + nvm_ver.nvm_id == 0xF)) { + /* If major, minor and id numbers are set to 0, + * reading NVM version is unsupported. If major number + * is set to 0xF, minor is set to 0xFF and id is set + * to 0xF, this means that number read is invalid. */ + } else + sbuf_printf(buf, "nvm %x.%02x.%x ", + nvm_ver.nvm_major, nvm_ver.nvm_minor, nvm_ver.nvm_id); if (nvm_ver.oem_valid) { sbuf_printf(buf, "NVM OEM V%d.%d R%d", nvm_ver.oem_major, @@ -4798,13 +4916,9 @@ ixgbe_sbuf_fw_version(struct ixgbe_hw *hw, struct sbuf *buf) } if (nvm_ver.etk_id != ((NVM_VER_INVALID << NVM_ETK_SHIFT) | - NVM_VER_INVALID)) { + NVM_VER_INVALID | 0xFFFFFFFF)) { sbuf_printf(buf, "%seTrack 0x%08x", space, nvm_ver.etk_id); - space = " "; } - - if (phyfw != 0 && status == IXGBE_SUCCESS) - sbuf_printf(buf, "%sPHY FW V%d", space, phyfw); } /* ixgbe_sbuf_fw_version */ /************************************************************************ diff --git a/sys/dev/ixgbe/ixgbe.h b/sys/dev/ixgbe/ixgbe.h index 3dae3aeebaa1..ae202b72390b 100644 --- a/sys/dev/ixgbe/ixgbe.h +++ b/sys/dev/ixgbe/ixgbe.h @@ -434,6 +434,10 @@ struct ixgbe_softc { /* Bypass */ struct ixgbe_bp_data bypass; + /* Firmware error check */ + int recovery_mode; + struct callout fw_mode_timer; + /* Misc stats maintained by the driver */ unsigned long dropped_pkts; unsigned long mbuf_header_failed; diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index 7767e9a5571c..4c50f10ed92e 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -1133,6 +1133,19 @@ s32 ixgbe_set_vlvf(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on, IXGBE_NOT_IMPLEMENTED); } +/** + * ixgbe_toggle_txdctl - Toggle VF's queues + * @hw: pointer to hardware structure + * @vind: VMDq pool index + * + * Enable and disable each queue in VF. + */ +s32 ixgbe_toggle_txdctl(struct ixgbe_hw *hw, u32 vind) +{ + return ixgbe_call_func(hw, hw->mac.ops.toggle_txdctl, (hw, + vind), IXGBE_NOT_IMPLEMENTED); +} + /** * ixgbe_fc_enable - Enable flow control * @hw: pointer to hardware structure @@ -1417,15 +1430,15 @@ s32 ixgbe_bypass_rw(struct ixgbe_hw *hw, u32 cmd, u32 *status) /** * ixgbe_bypass_valid_rd - Verify valid return from bit-bang. + * @hw: pointer to hardware structure + * @in_reg: The register cmd for the bit-bang read. + * @out_reg: The register returned from a bit-bang read. * * If we send a write we can't be sure it took until we can read back * that same register. It can be a problem as some of the fields may * for valid reasons change inbetween the time wrote the register and * we read it again to verify. So this function check everything we * can check and then assumes it worked. - * - * @u32 in_reg - The register cmd for the bit-bang read. - * @u32 out_reg - The register returned from a bit-bang read. **/ bool ixgbe_bypass_valid_rd(struct ixgbe_hw *hw, u32 in_reg, u32 out_reg) { diff --git a/sys/dev/ixgbe/ixgbe_api.h b/sys/dev/ixgbe/ixgbe_api.h index 33c1cd1baeaf..b81510dacb95 100644 --- a/sys/dev/ixgbe/ixgbe_api.h +++ b/sys/dev/ixgbe/ixgbe_api.h @@ -131,6 +131,7 @@ s32 ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, s32 ixgbe_set_vlvf(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on, u32 *vfta_delta, u32 vfta, bool vlvf_bypass); +s32 ixgbe_toggle_txdctl(struct ixgbe_hw *hw, u32 vind); s32 ixgbe_fc_enable(struct ixgbe_hw *hw); s32 ixgbe_setup_fc(struct ixgbe_hw *hw); s32 ixgbe_set_fw_drv_ver(struct ixgbe_hw *hw, u8 maj, u8 min, u8 build, diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 7643d4028529..df7ab90e72ab 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -133,6 +133,7 @@ s32 ixgbe_init_ops_generic(struct ixgbe_hw *hw) mac->ops.init_uta_tables = NULL; mac->ops.enable_rx = ixgbe_enable_rx_generic; mac->ops.disable_rx = ixgbe_disable_rx_generic; + mac->ops.toggle_txdctl = ixgbe_toggle_txdctl_generic; /* Flow Control */ mac->ops.fc_enable = ixgbe_fc_enable_generic; @@ -4138,6 +4139,62 @@ s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) return IXGBE_SUCCESS; } + +/** + * ixgbe_toggle_txdctl_generic - Toggle VF's queues + * @hw: pointer to hardware structure + * @vf_number: VF index + * + * Enable and disable each queue in VF. + */ +s32 ixgbe_toggle_txdctl_generic(struct ixgbe_hw *hw, u32 vf_number) +{ + u8 queue_count, i; + u32 offset, reg; + + if (vf_number > 63) + return IXGBE_ERR_PARAM; + + /* + * Determine number of queues by checking + * number of virtual functions + */ + reg = IXGBE_READ_REG(hw, IXGBE_GCR_EXT); + switch (reg & IXGBE_GCR_EXT_VT_MODE_MASK) { + case IXGBE_GCR_EXT_VT_MODE_64: + queue_count = 2; + break; + case IXGBE_GCR_EXT_VT_MODE_32: + queue_count = 4; + break; + case IXGBE_GCR_EXT_VT_MODE_16: + queue_count = 8; + break; + default: + return IXGBE_ERR_CONFIG; + } + + /* Toggle queues */ + for (i = 0; i < queue_count; ++i) { + /* Calculate offset of current queue */ + offset = queue_count * vf_number + i; + + /* Enable queue */ + reg = IXGBE_READ_REG(hw, IXGBE_PVFTXDCTL(offset)); + reg |= IXGBE_TXDCTL_ENABLE; + IXGBE_WRITE_REG(hw, IXGBE_PVFTXDCTL(offset), reg); + IXGBE_WRITE_FLUSH(hw); + + /* Disable queue */ + reg = IXGBE_READ_REG(hw, IXGBE_PVFTXDCTL(offset)); + reg &= ~IXGBE_TXDCTL_ENABLE; + IXGBE_WRITE_REG(hw, IXGBE_PVFTXDCTL(offset), reg); + IXGBE_WRITE_FLUSH(hw); + } + + return IXGBE_SUCCESS; +} + /** * ixgbe_need_crosstalk_fix - Determine if we need to do cross talk fix * @hw: pointer to hardware structure @@ -5151,15 +5208,14 @@ s32 ixgbe_bypass_rw_generic(struct ixgbe_hw *hw, u32 cmd, u32 *status) /** * ixgbe_bypass_valid_rd_generic - Verify valid return from bit-bang. + * @in_reg: The register cmd for the bit-bang read. + * @out_reg: The register returned from a bit-bang read. * * If we send a write we can't be sure it took until we can read back * that same register. It can be a problem as some of the fields may * for valid reasons change inbetween the time wrote the register and * we read it again to verify. So this function check everything we * can check and then assumes it worked. - * - * @u32 in_reg - The register cmd for the bit-bang read. - * @u32 out_reg - The register returned from a bit-bang read. **/ bool ixgbe_bypass_valid_rd_generic(u32 in_reg, u32 out_reg) { @@ -5210,7 +5266,7 @@ bool ixgbe_bypass_valid_rd_generic(u32 in_reg, u32 out_reg) * ixgbe_bypass_set_generic - Set a bypass field in the FW CTRL Regiter. * * @hw: pointer to hardware structure - * @cmd: The control word we are setting. + * @ctrl: The control word we are setting. * @event: The event we are setting in the FW. This also happens to * be the mask for the event we are setting (handy) * @action: The action we set the event to in the FW. This is in a @@ -5395,6 +5451,103 @@ void ixgbe_get_etk_id(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver) } } +/** + * ixgbe_get_nvm_version - Return version of NVM and its components + * + * @hw: pointer to hardware structure + * @nvm_ver: pointer to output structure + * + * irrelevant component fields will return 0, read errors will return 0xff + **/ +void ixgbe_get_nvm_version(struct ixgbe_hw *hw, + struct ixgbe_nvm_version *nvm_ver) +{ + u16 word, phy_ver; + + DEBUGFUNC("ixgbe_get_nvm_version"); + + memset(nvm_ver, 0, sizeof(struct ixgbe_nvm_version)); + + /* eeprom version is mac-type specific */ + switch (hw->mac.type) { + case ixgbe_mac_82598EB: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_82598, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = ((word & NVM_EEP_MINOR_MASK) + >> NVM_EEP_MIN_SHIFT); + nvm_ver->nvm_id = (word & NVM_EEP_ID_MASK); + break; + case ixgbe_mac_X540: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = ((word & NVM_EEP_MINOR_MASK) + >> NVM_EEP_MIN_SHIFT); + nvm_ver->nvm_id = (word & NVM_EEP_ID_MASK); + break; + + case ixgbe_mac_X550: + case ixgbe_mac_X550EM_x: + case ixgbe_mac_X550EM_a: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = (word & NVM_EEP_X550_MINOR_MASK); + + break; + default: + break; + } + + /* phy version is mac-type specific */ + switch (hw->mac.type) { + case ixgbe_mac_X540: + case ixgbe_mac_X550: + case ixgbe_mac_X550EM_x: + case ixgbe_mac_X550EM_a: + /* intel phy firmware version */ + if (ixgbe_read_eeprom(hw, NVM_EEP_PHY_OFF_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->phy_fw_maj = ((word & NVM_PHY_MAJOR_MASK) + >> NVM_PHY_MAJ_SHIFT); + nvm_ver->phy_fw_min = ((word & NVM_PHY_MINOR_MASK) + >> NVM_PHY_MIN_SHIFT); + nvm_ver->phy_fw_id = (word & NVM_PHY_ID_MASK); + break; + default: + break; + } + + ixgbe_get_etk_id(hw, nvm_ver); + + /* devstarter image */ + if (ixgbe_read_eeprom(hw, NVM_DS_OFFSET, &word)) + word = NVM_VER_INVALID; + nvm_ver->devstart_major = ((word & NVM_DS_MAJOR_MASK) >> NVM_DS_SHIFT); + nvm_ver->devstart_minor = (word & NVM_DS_MINOR_MASK); + + /* OEM customization word */ + if (ixgbe_read_eeprom(hw, NVM_OEM_OFFSET, &nvm_ver->oem_specific)) + nvm_ver->oem_specific = NVM_VER_INVALID; + + /* vendor (not intel) phy firmware version */ + if (ixgbe_get_phy_firmware_version(hw, &phy_ver)) + phy_ver = NVM_VER_INVALID; + nvm_ver->phy_vend_maj = ((phy_ver & NVM_PHYVEND_MAJOR_MASK) + >> NVM_PHYVEND_SHIFT); + nvm_ver->phy_vend_min = (phy_ver & NVM_PHYVEND_MINOR_MASK); + + /* Option Rom may or may not be present. Start with pointer */ + ixgbe_get_orom_version(hw, nvm_ver); + return; +} /** * ixgbe_dcb_get_rtrup2tc_generic - read rtrup2tc reg diff --git a/sys/dev/ixgbe/ixgbe_common.h b/sys/dev/ixgbe/ixgbe_common.h index 0ff5c60d40af..a2da9c834f8f 100644 --- a/sys/dev/ixgbe/ixgbe_common.h +++ b/sys/dev/ixgbe/ixgbe_common.h @@ -141,6 +141,7 @@ s32 ixgbe_set_vlvf_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlvf_bypass); s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw); s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan, bool vlvf_bypass); +s32 ixgbe_toggle_txdctl_generic(struct ixgbe_hw *hw, u32 vind); s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, @@ -195,6 +196,8 @@ void ixgbe_get_oem_prod_version(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver); void ixgbe_get_orom_version(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver); +void ixgbe_get_nvm_version(struct ixgbe_hw *hw, + struct ixgbe_nvm_version *nvm_ver); void ixgbe_disable_rx_generic(struct ixgbe_hw *hw); void ixgbe_enable_rx_generic(struct ixgbe_hw *hw); s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, diff --git a/sys/dev/ixgbe/ixgbe_features.h b/sys/dev/ixgbe/ixgbe_features.h index ed35a6ed458c..0cef334a185f 100644 --- a/sys/dev/ixgbe/ixgbe_features.h +++ b/sys/dev/ixgbe/ixgbe_features.h @@ -56,6 +56,7 @@ #define IXGBE_FEATURE_EEE (u32)(1 << 11) #define IXGBE_FEATURE_LEGACY_IRQ (u32)(1 << 12) #define IXGBE_FEATURE_NEEDS_CTXD (u32)(1 << 13) +#define IXGBE_FEATURE_RECOVERY_MODE (u32)(1 << 15) /* Check for OS support. Undefine features if not included in the OS */ #ifndef PCI_IOV diff --git a/sys/dev/ixgbe/ixgbe_rss.h b/sys/dev/ixgbe/ixgbe_rss.h index c00273587aaa..84c802671195 100644 --- a/sys/dev/ixgbe/ixgbe_rss.h +++ b/sys/dev/ixgbe/ixgbe_rss.h @@ -48,6 +48,7 @@ #define RSS_HASHTYPE_RSS_IPV6_EX (1 << 5) #define RSS_HASHTYPE_RSS_TCP_IPV6_EX (1 << 6) #define RSS_HASHTYPE_RSS_UDP_IPV4 (1 << 7) +#define RSS_HASHTYPE_RSS_UDP_IPV4_EX (1 << 8) #define RSS_HASHTYPE_RSS_UDP_IPV6 (1 << 9) #define RSS_HASHTYPE_RSS_UDP_IPV6_EX (1 << 10) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index dbcc6544133e..a414e27142ec 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -202,6 +202,10 @@ #define IXGBE_FLA_X550EM_x IXGBE_FLA #define IXGBE_FLA_X550EM_a 0x15F68 #define IXGBE_FLA_BY_MAC(_hw) IXGBE_BY_MAC((_hw), FLA) +#define IXGBE_FLA_FL_SIZE_SHIFT_X540 17 +#define IXGBE_FLA_FL_SIZE_SHIFT_X550 12 +#define IXGBE_FLA_FL_SIZE_MASK_X540 (0x7 << IXGBE_FLA_FL_SIZE_SHIFT_X540) +#define IXGBE_FLA_FL_SIZE_MASK_X550 (0x7 << IXGBE_FLA_FL_SIZE_SHIFT_X550) #define IXGBE_EEMNGCTL 0x10110 #define IXGBE_EEMNGDATA 0x10114 @@ -284,6 +288,41 @@ #define IXGBE_I2C_CLK_OE_N_EN_BY_MAC(_hw) IXGBE_BY_MAC((_hw), I2C_CLK_OE_N_EN) #define IXGBE_I2C_CLOCK_STRETCHING_TIMEOUT 500 +/* NVM component version fields */ +#define NVM_VERSZ_LONG 64 +#define NVM_VERSZ_SHORT 32 +#define NVM_VER_LONG \ + "DS_%x.%x NVM_%x.%02x.%x PHY_%x.%02x.%x OEM_%04x EtkId_%x OR_%x.%x.%x\n" +#define NVM_VER_SHORT1 "%02x.%02x %x %x.%x.%x\n" +#define NVM_VER_SHORT2 "%02x.%02x.%x %x.%02x.%x %x %x.%x.%x\n" + +#define NVM_EEP_MAJOR_MASK 0xF000 +#define NVM_EEP_MINOR_MASK 0xFF0 +#define NVM_EEP_ID_MASK 0xF +#define NVM_EEP_MAJ_SHIFT 12 +#define NVM_EEP_MIN_SHIFT 4 + +#define NVM_EEP_OFFSET_82598 0x2A +#define NVM_EEP_OFFSET_X540 0x18 +#define NVM_EEP_X550_MINOR_MASK 0xFF +#define NVM_EEP_PHY_OFF_X540 0x19 +#define NVM_PHY_MAJOR_MASK 0xF000 +#define NVM_PHY_MINOR_MASK 0xFF0 +#define NVM_PHY_ID_MASK 0xF +#define NVM_PHY_MAJ_SHIFT 12 +#define NVM_PHY_MIN_SHIFT 4 + +#define NVM_DS_OFFSET 0x29 +#define NVM_DS_MAJOR_MASK 0xF000 +#define NVM_DS_MINOR_MASK 0xF +#define NVM_DS_SHIFT 12 + +#define NVM_OEM_OFFSET 0x2A + +#define NVM_PHYVEND_MAJOR_MASK 0xFF00 +#define NVM_PHYVEND_MINOR_MASK 0xFF +#define NVM_PHYVEND_SHIFT 8 + #define IXGBE_I2C_THERMAL_SENSOR_ADDR 0xF8 #define IXGBE_EMC_INTERNAL_DATA 0x00 #define IXGBE_EMC_INTERNAL_THERM_LIMIT 0x20 @@ -344,6 +383,16 @@ struct ixgbe_nvm_version { u16 or_build; u8 or_patch; + u8 phy_fw_maj; + u16 phy_fw_min; + u8 phy_fw_id; + + u8 devstart_major; + u8 devstart_minor; + u16 oem_specific; + + u8 phy_vend_maj; + u8 phy_vend_min; }; /* Interrupt Registers */ @@ -1443,6 +1492,7 @@ struct ixgbe_dmac_config { #define IXGBE_BARCTRL_FLSIZE 0x0700 #define IXGBE_BARCTRL_FLSIZE_SHIFT 8 #define IXGBE_BARCTRL_CSRSIZE 0x2000 +#define IXGBE_BARCTRL_CSRSIZE_SHIFT 13 /* RSCCTL Bit Masks */ #define IXGBE_RSCCTL_RSCEN 0x01 @@ -3414,6 +3464,7 @@ struct ixgbe_adv_tx_context_desc { #define IXGBE_ADVTXD_POPTS_RSV 0x00002000 /* POPTS Reserved */ #define IXGBE_ADVTXD_PAYLEN_SHIFT 14 /* Adv desc PAYLEN shift */ #define IXGBE_ADVTXD_MACLEN_SHIFT 9 /* Adv ctxt desc mac len shift */ +#define IXGBE_ADVTXD_MACLEN_MASK (0x7F << IXGBE_ADVTXD_MACLEN_SHIFT) /* Adv ctxt desc mac len mask */ #define IXGBE_ADVTXD_VLAN_SHIFT 16 /* Adv ctxt vlan tag shift */ #define IXGBE_ADVTXD_TUCMD_IPV4 0x00000400 /* IP Packet Type: 1=IPv4 */ #define IXGBE_ADVTXD_TUCMD_IPV6 0x00000000 /* IP Packet Type: 0=IPv6 */ @@ -4030,6 +4081,7 @@ struct ixgbe_mac_operations { s32 (*init_uta_tables)(struct ixgbe_hw *); void (*set_mac_anti_spoofing)(struct ixgbe_hw *, bool, int); void (*set_vlan_anti_spoofing)(struct ixgbe_hw *, bool, int); + s32 (*toggle_txdctl)(struct ixgbe_hw *hw, u32 vf_index); s32 (*update_xcast_mode)(struct ixgbe_hw *, int); s32 (*set_rlpml)(struct ixgbe_hw *, u16); From nobody Sat Sep 28 09:23: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 4XG21r34z8z5Y34P; Sat, 28 Sep 2024 09:23: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 4XG21r22Nwz4qTs; Sat, 28 Sep 2024 09:23:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515392; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OZAwCZNRDMIi7xLfAbIyog1fwq7oVa1xIeqrj0JTxY4=; b=jzoPDMWPP97P9TQZ/9Lr4F8CfA49XtLlby0yIoTjnVxyZ2S5WEFGWJavBktYn8mArfeF9V 1s5r8rV0K+Z6UBMVZv8XCF//pK9I73bhStBtnFSS5dEjhrZRG0fB1xUQafOQYOw2dprFWw lgDBDKJUYlognj/mTdo3SxeerYU+cD/VQ+47Q/TzHRrwTqSAWBwJ3FNKsIlHSTPThA/SDL TL+uIsTBJuxEhaetj7S0VlqaZ7Pf+915uCP7TQBrcLuFmrcI3mu2wfXjSLQyXSdlUnGKKw cqyz6+I/EJtm+5g9TDl1CrJYgJFbDk5Tw3LqIJGig+Wyo4/gQLaGPuLngon3Yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515392; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OZAwCZNRDMIi7xLfAbIyog1fwq7oVa1xIeqrj0JTxY4=; b=EVGpvzm3GXpkNqGdiGzc7WulLisEcpg/2dwDdXYxOYPzfUCmxU2KFvn50KUNLfCvig5Pdv sToDi3/Rz0elcl+pp/v7AG7nlNBy0bZ985fVG5vgMgyBzd3jtCHcuU1Xos2FJ6daONktfs AFD6xC44Nv+14HxjH56hnSdGtdxh6tft3fd7xfxLxfcmbhR/dYGCGhY1a6kPNvHrqjwotn 7ek1WkxiQb4HLlSAdhF45so8uEeIRm7VIT3jhudxTdFPixpvkjNT8dD9Dap0p+/uZ8fVLw tFFPRZSGwP11pBPLdvzBe1Cp1KaSa3l/bv01HRhfUkdExZ6Zf0Kf0C+n4aYo2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515392; a=rsa-sha256; cv=none; b=tm+lvrdNg5KKwZre5n+oIAGGpMKDaO1ROZ89Zb61gOcwWEv7fZkknNteVa3RbXqlZrby2k DGtS9l8h7+MkjAlon7L+fqk4/m8OzNwnG7LQnQo6OdRPiBNDvvNeiKjRA3/ryoAkTKxtU8 FXHQejKYqo0TmQyTxDkkbaOeY9m5HOjcghwmxJUpeNTT7oCKP2nFIyMKCDfj1LGY1bFG+f zqplvBXe/oMz94wXKOVoZpWoG5OzuK4UpbHbsy2LdZ8zeiQzN3oyUDHoZR/Thhm3sqV+0O xVTsL6s6QoeD9LrfhERVsFZ4OLTGm0EHaKHGeBq4J1+61LTSyJCaGnaitOQnWA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21r0nYgzJgT; Sat, 28 Sep 2024 09:23: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 48S9NCHc076284; Sat, 28 Sep 2024 09:23:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9NCY6076281; Sat, 28 Sep 2024 09:23:12 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:12 GMT Message-Id: <202409280923.48S9NCY6076281@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: e9e57ee70bfa - stable/14 - ixgbe: update if_sriov with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e9e57ee70bfac510c0efa9af7900540e489dacec Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=e9e57ee70bfac510c0efa9af7900540e489dacec commit e9e57ee70bfac510c0efa9af7900540e489dacec Author: Kevin Bowling AuthorDate: 2024-09-21 09:56:19 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:22:27 +0000 ixgbe: update if_sriov with ix-3.3.38 changes There are some critical fixes here. The PF must communicate with each VF slot (vf->pool), only VFs shall use 0 for everything. IXGBE_FEATURE_SRIOV needs to be set before calling ixgbe_if_init(). With these changes, ixv(4) now attaches to VFs, but after bringing up VFs, the PF and VF still are not correctly passing traffic. (cherry picked from commit b6cd053e6da9bb8f77d2c6069260e52bbd53fa4a) --- sys/dev/ixgbe/if_sriov.c | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index eab5ff8f5da0..6a2dad4bca42 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -95,26 +95,26 @@ ixgbe_align_all_queue_indices(struct ixgbe_softc *sc) /* Support functions for SR-IOV/VF management */ static inline void -ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_msg(struct ixgbe_hw *hw, struct ixgbe_vf *vf, u32 msg) { if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - ixgbe_write_mbx(&sc->hw, &msg, 1, vf->pool); + hw->mbx.ops[vf->pool].write(hw, &msg, 1, vf->pool); } static inline void ixgbe_send_vf_success(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); + ixgbe_send_vf_msg(&sc->hw, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void ixgbe_send_vf_failure(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); + ixgbe_send_vf_msg(&sc->hw, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); } static inline void @@ -210,7 +210,7 @@ ixgbe_ping_all_vfs(struct ixgbe_softc *sc) for (int i = 0; i < sc->num_vfs; i++) { vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) - ixgbe_send_vf_msg(sc, vf, IXGBE_PF_CONTROL_MSG); + ixgbe_send_vf_msg(&sc->hw, vf, IXGBE_PF_CONTROL_MSG); } } /* ixgbe_ping_all_vfs */ @@ -254,6 +254,17 @@ ixgbe_vf_set_default_vlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, IXGBE_WRITE_REG(hw, IXGBE_VMVIR(vf->pool), vmvir); } /* ixgbe_vf_set_default_vlan */ +static void +ixgbe_clear_vfmbmem(struct ixgbe_softc *sc, struct ixgbe_vf *vf) +{ + struct ixgbe_hw *hw = &sc->hw; + uint32_t vf_index = IXGBE_VF_INDEX(vf->pool); + uint16_t mbx_size = hw->mbx.size; + uint16_t i; + + for (i = 0; i < mbx_size; ++i) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf_index), i, 0x0); +} /* ixgbe_clear_vfmbmem */ static boolean_t ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) @@ -310,6 +321,8 @@ ixgbe_process_vf_reset(struct ixgbe_softc *sc, struct ixgbe_vf *vf) // XXX clear multicast addresses ixgbe_clear_rar(&sc->hw, vf->rar_index); + ixgbe_clear_vfmbmem(sc, vf); + ixgbe_toggle_txdctl(&sc->hw, IXGBE_VF_INDEX(vf->pool)); vf->api_ver = IXGBE_API_VER_UNKNOWN; } /* ixgbe_process_vf_reset */ @@ -371,7 +384,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) vf->flags |= IXGBE_VF_CTS; - resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; + resp[0] = IXGBE_VF_RESET | ack; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; ixgbe_write_mbx(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); @@ -582,7 +595,8 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = ixgbe_read_mbx(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = hw->mbx.ops[vf->pool].read(hw, msg, IXGBE_VFMAILBOX_SIZE, + vf->pool); if (error != 0) return; @@ -643,13 +657,13 @@ ixgbe_handle_mbx(void *context) vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) { - if (hw->mbx.ops[0].check_for_rst(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_rst(hw, vf->pool) == 0) ixgbe_process_vf_reset(sc, vf); - if (hw->mbx.ops[0].check_for_msg(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_msg(hw, vf->pool) == 0) ixgbe_process_vf_msg(ctx, vf); - if (hw->mbx.ops[0].check_for_ack(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_ack(hw, vf->pool) == 0) ixgbe_process_vf_ack(sc, vf); } } @@ -698,8 +712,10 @@ ixgbe_if_iov_init(if_ctx_t ctx, u16 num_vfs, const nvlist_t *config) } sc->num_vfs = num_vfs; - ixgbe_if_init(sc->ctx); + ixgbe_init_mbx_params_pf(&sc->hw); + sc->feat_en |= IXGBE_FEATURE_SRIOV; + ixgbe_if_init(sc->ctx); return (retval); @@ -769,7 +785,7 @@ ixgbe_init_vf(struct ixgbe_softc *sc, struct ixgbe_vf *vf) ixgbe_vf_enable_transmit(sc, vf); ixgbe_vf_enable_receive(sc, vf); - ixgbe_send_vf_msg(sc, vf, IXGBE_PF_CONTROL_MSG); + ixgbe_send_vf_msg(&sc->hw, vf, IXGBE_PF_CONTROL_MSG); } /* ixgbe_init_vf */ void From nobody Sat Sep 28 09:23: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 4XG21s3lmJz5Y396; Sat, 28 Sep 2024 09:23: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 4XG21s2ZC2z4qNs; Sat, 28 Sep 2024 09:23:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vfx2iuC5QSuHrU0pHdLabzZVEPMTyGjCzydUgVLtx9I=; b=jSqBXeON+egllnIBtCTLy7XRXr0yUhCrD2FRu8tneFsG7kLnOQ1Cha0owJ4mZHUz47YuEA Mlr5h2NA2B+5vQ0noyG53Jdrpcr3Q70f9L1ckmHGz/bzsn/qV16IBKUy6d6OPX0qFlRwjI qqcEabcerXaPQ7qfEf6GGWy7/dmrX/fiyinazqbam4Ir90jCg3ikijQyezx8Bt3CA9/lPI rZ/yg/9e9AM/aqUGzCLdiCWCuI6BvqXfKWYHSogVNR6flBsUyhlCjzNvhIxscLOI/Htbtm qH7EeP8HlwluMDU/7y+FTQqWkbNAc8TLUxs8gSer6V4b9XuioFSTdO5L3teiLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vfx2iuC5QSuHrU0pHdLabzZVEPMTyGjCzydUgVLtx9I=; b=T4s+brY9TUNcm8c4Z9Arl87VpAkpGQGI09s4mUvR7bo1KhrPM53DcrYD9x/vi38N4YyWDT whvTmTYGhksSdxpJ5GP1zYr/1ltULVdDlQ/9RdnFL77KIko74aaHWnVY2QkxFVDfFVhnCO 8EALJP0FCxkUh8GXQtwQy39ZBTWC199MJDb0V5kUESRVwXvNfnxploQhuRBk0EuvO6kf2j 12tsQDjldTVMsLH4Y0IG0JbqtfDI5sL620B072FWCyKgli93Ak6rGB1dp5Z6aywEly5X69 SrNkoPO4aorc+sqzLYGi7x+bXoqk3hVHRNhpAWMtThvKHF4xCBt62rtYtTEkUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515393; a=rsa-sha256; cv=none; b=bFUzY77HOmnlbN4esPPtBp9s3AZNO86YId1jO2UGfv4vtQdsfH16lftNwYEeAtOXn4bHfg tR17iHwf/NIpFF70iDGa2TKwRnLD3KSrpMrjde47Rl8qboamGhgBj0oajYwXIqhA9pkMhD /9YZZByqCmfOxg55PUwD47aKJRfLH8LMvw+b1STbPCwmYqfZ2NDd7WfZUxckKipuxhjx4L Lmg+28mlxO9Zb4bF//sXyCJCUSz40oASasK4byR1sFVQJPiuRimDoxQ8/dfV5se3XcIJu0 /2yn2AX0Q41p2o91P/dzJqA0NJO5mgJGbqCk/m2Icfg0kbe2vrkSCSOWi8oo/Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG21s29ryzJrK; Sat, 28 Sep 2024 09:23: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 48S9ND4g076325; Sat, 28 Sep 2024 09:23:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9ND7r076322; Sat, 28 Sep 2024 09:23:13 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:23:13 GMT Message-Id: <202409280923.48S9ND7r076322@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: edf4f6a6ecd4 - stable/14 - ixgbe: fix fw_recovery_mode callout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: edf4f6a6ecd402c1aafb76f131b507f90191da19 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=edf4f6a6ecd402c1aafb76f131b507f90191da19 commit edf4f6a6ecd402c1aafb76f131b507f90191da19 Author: Kevin Bowling AuthorDate: 2024-09-21 11:10:11 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:22:42 +0000 ixgbe: fix fw_recovery_mode callout Need to pass the softc in with the callout arg (cherry picked from commit a924b5ee6a1b4456b5bde979bb9e15d18726de4f) --- sys/dev/ixgbe/if_ix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 74bde3497279..80f288a4ccf0 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -1150,7 +1150,7 @@ ixgbe_if_attach_post(if_ctx_t ctx) callout_init(&sc->fw_mode_timer, true); /* Start the task */ - callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, 0); + callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, sc); } return (0); From nobody Sat Sep 28 09:26: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 4XG25B5hC1z5Y37j; Sat, 28 Sep 2024 09:26:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG25B55bMz4s68; Sat, 28 Sep 2024 09:26:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515566; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+kk7FKllKclOht/KaL9GzAAewi3CkyQKtzPBmSlgpLg=; b=FTh77R+8Kw0B5fuFrMAwFVXbsGZkrAtxYwKLMvo01/mBlfEtFs0CD53wSXp7K8jNKuvMtu mbeHVtoleBAZEvjmZQvKofIdkpxygPKrwBbPz4Gnuceb1LnFZ0xzyOYTAkfxzvneNDkd3m 3JhE5vZbpAAyeYMDbgt15SDxYqbhhwZnm+MDJ4ksa+u69dEehv2Hll/4MIEdcZ8qtCLzjo lRqGmpg5KLqddO9pdkfEgPRYIjZtspTo9DY9O2Cg9nd/snCJhL+ssaMbkpxENA9w/HFSSk nd7bKpnI55lQqoBFhJqjge5umWBI/Qr6qTEHv0igvtbveeKyDHNIMDeKJqOveQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515566; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+kk7FKllKclOht/KaL9GzAAewi3CkyQKtzPBmSlgpLg=; b=ffBp4WObEp7/O3wYBSxGcGaTJd3v4T2rsNrHBaIdJVYqNGVOAe71aC7OuNp+o9YnhOFCdG 2Eb9/R3JnaoIp7baz/mbl8x0965p7cq4w6i0/V49B+ntxYBrZHWfYVYLPuU+tSKNJNyMfi /1tcvbDDixF4l2Fq4yW8X8BWvyFVHMp1YXrsuBqhnbo+S/owL41m8Dcex57rUSxbOftJfE FuCPbKBUJw6hBv7BokkvDcTPXGsro6e5eUj9SPFMCRnzYg3jy7BXQOG8L3iDhJJqgMCBlx DeB5vmfES8Pd+4BU9lxgx+jcKLBqlfPK1OEuFrU4crJmu4pMPcYfdtOtDsdCxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515566; a=rsa-sha256; cv=none; b=Ur871geYFKzzGDOwkWKctxyo43RbRqUPMjHbveMXGwKKqPH81nwnhh8m3VGscpYocbbs0a faTROt3eUY6DLl1QrsXoVOQWHbquprNpdBz3G1IvbACnAA+OjWv87u+0YAuENAMf5/TJod 6nwHZaqWan5d//OpSHTXr9tnuYjf1BqVfY8blM5w+9nf0EZCJGHiFJCBcYW3Im2plnjCQD BZpWu0i9cSw8ys9YfHgnHb4VsplNRTIkCD4etAuhH6K0Ucvl5NcFQMKadqD4S/BUvBSagw 9y9bHu1cL56gcfdKlsnkywA7UU0SzaatDeUYNQjaBgSKwvEjc0QjygKk2slBTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25B4YRTzK43; Sat, 28 Sep 2024 09:26:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9Q6bI077002; Sat, 28 Sep 2024 09:26:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9Q6Pj076999; Sat, 28 Sep 2024 09:26:06 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:06 GMT Message-Id: <202409280926.48S9Q6Pj076999@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: a446e9481531 - stable/13 - e1000: Update igb driver version to 2.5.28-fbsd List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: a446e9481531807cdb4aa3427a339f0b8aa7970f Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a446e9481531807cdb4aa3427a339f0b8aa7970f commit a446e9481531807cdb4aa3427a339f0b8aa7970f Author: Kevin Bowling AuthorDate: 2024-09-21 06:27:54 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:24:09 +0000 e1000: Update igb driver version to 2.5.28-fbsd Bump to the current out of tree driver version since we only have some gratuitous changes. (cherry picked from commit ddfec1fb6814088abc5805f45c4a18c5731d51b9) --- sys/dev/e1000/e1000_base.c | 3 ++- sys/dev/e1000/e1000_i210.c | 14 +++++++------- sys/dev/e1000/e1000_phy.c | 2 +- sys/dev/e1000/if_em.c | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/sys/dev/e1000/e1000_base.c b/sys/dev/e1000/e1000_base.c index d83dc48c4d4d..ae44a0b91aac 100644 --- a/sys/dev/e1000/e1000_base.c +++ b/sys/dev/e1000/e1000_base.c @@ -162,7 +162,8 @@ void e1000_rx_fifo_flush_base(struct e1000_hw *hw) rfctl |= E1000_RFCTL_IPV6_EX_DIS; E1000_WRITE_REG(hw, E1000_RFCTL, rfctl); - if (!(E1000_READ_REG(hw, E1000_MANC) & E1000_MANC_RCV_TCO_EN)) + if (hw->mac.type != e1000_82575 || + !(E1000_READ_REG(hw, E1000_MANC) & E1000_MANC_RCV_TCO_EN)) return; /* Disable all Rx queues */ diff --git a/sys/dev/e1000/e1000_i210.c b/sys/dev/e1000/e1000_i210.c index c7ca56914dba..4005034d7d31 100644 --- a/sys/dev/e1000/e1000_i210.c +++ b/sys/dev/e1000/e1000_i210.c @@ -362,7 +362,7 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, E1000_INVM_RECORD_SIZE_IN_BYTES); u32 buffer[E1000_INVM_SIZE]; s32 status = -E1000_ERR_INVM_VALUE_NOT_FOUND; - u16 version = 0; + u16 nvm_version = 0; DEBUGFUNC("e1000_read_invm_version"); @@ -379,14 +379,14 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, /* Check if we have first version location used */ if ((i == 1) && ((*record & E1000_INVM_VER_FIELD_ONE) == 0)) { - version = 0; + nvm_version = 0; status = E1000_SUCCESS; break; } /* Check if we have second version location used */ else if ((i == 1) && ((*record & E1000_INVM_VER_FIELD_TWO) == 0)) { - version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; + nvm_version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; status = E1000_SUCCESS; break; } @@ -397,7 +397,7 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, else if ((((*record & E1000_INVM_VER_FIELD_ONE) == 0) && ((*record & 0x3) == 0)) || (((*record & 0x3) != 0) && (i != 1))) { - version = (*next_record & E1000_INVM_VER_FIELD_TWO) + nvm_version = (*next_record & E1000_INVM_VER_FIELD_TWO) >> 13; status = E1000_SUCCESS; break; @@ -408,16 +408,16 @@ s32 e1000_read_invm_version(struct e1000_hw *hw, */ else if (((*record & E1000_INVM_VER_FIELD_TWO) == 0) && ((*record & 0x3) == 0)) { - version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; + nvm_version = (*record & E1000_INVM_VER_FIELD_ONE) >> 3; status = E1000_SUCCESS; break; } } if (status == E1000_SUCCESS) { - invm_ver->invm_major = (version & E1000_INVM_MAJOR_MASK) + invm_ver->invm_major = (nvm_version & E1000_INVM_MAJOR_MASK) >> E1000_INVM_MAJOR_SHIFT; - invm_ver->invm_minor = version & E1000_INVM_MINOR_MASK; + invm_ver->invm_minor = nvm_version & E1000_INVM_MINOR_MASK; } /* Read Image Type */ for (i = 1; i < invm_blocks; i++) { diff --git a/sys/dev/e1000/e1000_phy.c b/sys/dev/e1000/e1000_phy.c index dcce60fc50d5..4e2afc43a684 100644 --- a/sys/dev/e1000/e1000_phy.c +++ b/sys/dev/e1000/e1000_phy.c @@ -1037,7 +1037,7 @@ static s32 e1000_set_master_slave_mode(struct e1000_hw *hw) break; case e1000_ms_auto: phy_data &= ~CR_1000T_MS_ENABLE; - /* FALLTHROUGH */ + break; default: break; } diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 5c62eef489d2..b1883d5cc9ab 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -37,7 +37,7 @@ * Driver version: *********************************************************************/ static const char em_driver_version[] = "7.7.8-fbsd"; -static const char igb_driver_version[] = "2.5.19-fbsd"; +static const char igb_driver_version[] = "2.5.28-fbsd"; /********************************************************************* * PCI Device ID Table From nobody Sat Sep 28 09:26: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 4XG25C6vS1z5Y2tk; Sat, 28 Sep 2024 09:26: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 4XG25C6B5kz4s1j; Sat, 28 Sep 2024 09:26:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515567; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hnbsP/Z6xdEGiU+lactcjYUv6XoLh7qIXva9HiDRYnc=; b=aElHjO/JQfm1WJ9hAKoE03peuLLjNcv6Aq62/9WVqjmTrjnf8coznZ9D/KWK+ePZhIsqoG YidFb4QvpkeXmzttpFi16YAD1ZFRNnRk0nHCSuCBC6QUm3DvNLWawYd83dUe1vQQWlYqiW SRDZjZ50yYrFD3LGBn1K/3fw8r1PSrAK2R0k0tn4L5p2svKkLqFgn4Sv8geYgBNTx0QguK KLzUQGmr2D2QYMhWlMxxZxz73To8KRjli4sThCRFjuDAudUiDE5b1r4hvJIS+JpC9tIWdT X11Udd4+5yqozfRHIXxQ+zeaC5y7XvV7ZdDyPl/PCgyTAeA9CHfkTiiyaBV0TQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515567; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hnbsP/Z6xdEGiU+lactcjYUv6XoLh7qIXva9HiDRYnc=; b=ilLGDPurUcJUxh0gQENgDLvyT2VxmTFaq0lY8yOZ8sv0mAPHjI9v6QhtDqN2dhZvkRW0r8 u0oMT/xsekHlerM1LpHYp8LzMnqH0nGRorpxSn7aOfUSNYe9Li+zHW5HpWcGOEuetHdhLB ULef8yGr6GBF/CmlrBdmcyyixzrf530fSRUvhqvXQ7rtJ5GJrs+/3QULc4O+FA06JOavgy wmgDM5z9ZA/6Zs3pBbQTb9XmGww9JMPW0hiK9Nhu29x+AvhFlGjCPJCt7fuTKzbOOMElEO pdlzS9YeobWU/gBHQmzXF72kc8xrex97bu0ImartEohCzhnzvQqsYfO1ZJVZRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515567; a=rsa-sha256; cv=none; b=vwpqyJyH9+XahDqf6c0do0zN77CJSK+4YFLntfPRo6kkcIdNqPDKoUAYE2BueaHQth3QTz 6+w424WyWrCLYPfjdxLrnQVWH6ywCfDXwb6zw5Te887G1Vb8bcoA7aEzFCh+gtqVOZsgCG 17+Slv9T12qv/40bm/wqCqwgXLUI8YEKK4Uc2wNybeXgnIuxapfFRRs81rLRuDfTSSRhvM YMMq3qD5X8fNftvmqzD8XmW9UuImfwOxU02SDLXs9Zi+Fzo8sLeyXlOGAPZXfe3DqwxBQf crzWja1tIRFg2wIGAX3TZILIneV/IaURT44Pko8zp0WCAKmLVlroQaMWmFTGlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25C5S9PzJdD; Sat, 28 Sep 2024 09:26: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 48S9Q7Zi077044; Sat, 28 Sep 2024 09:26:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9Q7dc077041; Sat, 28 Sep 2024 09:26:07 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:07 GMT Message-Id: <202409280926.48S9Q7dc077041@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: 5121d1b91209 - stable/13 - ixgbe: update if_bypass to ix-3.3.38 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 5121d1b9120958f7c14dc8e2db779bf73c1f9fcf Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=5121d1b9120958f7c14dc8e2db779bf73c1f9fcf commit 5121d1b9120958f7c14dc8e2db779bf73c1f9fcf Author: Kevin Bowling AuthorDate: 2024-09-21 09:39:54 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:24:31 +0000 ixgbe: update if_bypass to ix-3.3.38 Bring if_bypass up to date with changes in the out of tree driver Drop NEEDGIANT as the sysctl handlers have internal mutex for state changes. (cherry picked from commit c41a0eeea0d69264317401dd3fac46be160081b5) --- sys/dev/ixgbe/if_bypass.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/sys/dev/ixgbe/if_bypass.c b/sys/dev/ixgbe/if_bypass.c index e9ea77dfb49c..166150d75cc6 100644 --- a/sys/dev/ixgbe/if_bypass.c +++ b/sys/dev/ixgbe/if_bypass.c @@ -530,8 +530,7 @@ ixgbe_bp_wd_reset(SYSCTL_HANDLER_ARGS) error = IXGBE_BYPASS_FW_WRITE_FAILURE; break; } - error = hw->mac.ops.bypass_rw(hw, BYPASS_PAGE_CTL1, &reset_wd); - if (error != 0) { + if (hw->mac.ops.bypass_rw(hw, BYPASS_PAGE_CTL1, &reset_wd)) { error = IXGBE_ERR_INVALID_ARGUMENT; break; } @@ -745,8 +744,7 @@ ixgbe_bypass_init(struct ixgbe_softc *sc) */ SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), - OID_AUTO, "bypass_log", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "bypass_log", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, sc, 0, ixgbe_bp_log, "I", "Bypass Log"); /* All other setting are hung from the 'bypass' node */ @@ -757,39 +755,39 @@ ixgbe_bypass_init(struct ixgbe_softc *sc) bp_list = SYSCTL_CHILDREN(bp_node); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "version", CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + OID_AUTO, "version", CTLTYPE_INT | CTLFLAG_RD, sc, 0, ixgbe_bp_version, "I", "Bypass Version"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "state", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "state", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_set_state, "I", "Bypass State"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "timeout", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "timeout", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_timeout, "I", "Bypass Timeout"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "main_on", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "main_on", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_main_on, "I", "Bypass Main On"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "main_off", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "main_off", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_main_off, "I", "Bypass Main Off"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "aux_on", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "aux_on", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_aux_on, "I", "Bypass Aux On"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "aux_off", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "aux_off", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_aux_off, "I", "Bypass Aux Off"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "wd_set", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + OID_AUTO, "wd_set", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_bp_wd_set, "I", "Set BP Watchdog"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), bp_list, - OID_AUTO, "wd_reset", CTLTYPE_INT | CTLFLAG_WR | CTLFLAG_NEEDGIANT, + OID_AUTO, "wd_reset", CTLTYPE_INT | CTLFLAG_WR, sc, 0, ixgbe_bp_wd_reset, "S", "Bypass WD Reset"); sc->feat_en |= IXGBE_FEATURE_BYPASS; From nobody Sat Sep 28 09:26: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 4XG25F1f2tz5Y2tl; Sat, 28 Sep 2024 09:26:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG25D6xQ8z4rwl; Sat, 28 Sep 2024 09:26:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515569; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BU0Z5suMuFOunzIzv5Teu4vWkICOGd9VpJcSAQuoKt0=; b=CyBB1IdXiu8mil/EccUQOgjVXfVAIMismqO3weyMrWqFuMYnawDAvn6O8KzL2ZnBWw0lpg YwENV8pMIsgyG1aptJqAVKCCo89mBz2b7WqJtyIBNgwyJ7bq3WT20BJSF2aaltsNllgVL5 PZmynC5um9mFJC53cFGOy04qC/bSJrZFBj/m/A4hrutL2Ne8l8r8qz6kzJ5TlPbQHdsXxE AXLK3EWh7nEJh3RkrAyekdaY7b4LuEQ0I6qwlfWbLBXd2N8JxF34XREJeEhokouEZgTgmZ qizsiR6d9yVGLQ23h5Tm7yW/N+WtVMQsCZ5ahlQ4BGTi282yQ20KRLiAlNjAkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515569; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BU0Z5suMuFOunzIzv5Teu4vWkICOGd9VpJcSAQuoKt0=; b=mFTitbw4tqbbrnn2mnPCuDbclVBDlmcBGSa2Zk0LMmxlak8A1Wy1Z5HgQpzmp+P9fayY8A dIbr49rU66/nso40g2AmaCNiWuUcJE5bt1z3hhCrc4yk3l0jPU3BG/YmvXRRm6hTiaSIYp aMhXku9Oo94+DtyF43ENZklGglUdEVozvj2q9vDXKa0ms1Gbtz1FTheICSbgJhMVT8pJZi HexQb4e6rtcAgXJxq5NA5LCOTDe9dtR2HWi9UU+KtaB1fJLf623YhlxqdW8EPW+to+VOac a4HW0Y/gZEyRi53u9jYyPHHufcRg0qyj4DMf74dkPx6FkDRlFnjPx3wx6b0fow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515569; a=rsa-sha256; cv=none; b=KXH+f5WbSL5wqOEQlPPj/5AVy7mMFKzsxpFZGdw/kzAjeFvYJY2FHffbkLI/rSeRzb0x3X c2o6dRJscGQ33pBkW8heayTABXCTf2AsjcGDuS7U7CWHmwMfgM1/TOSZVFx2ujzdLwCDdP 0CrhRqCIJHUF1Jz8cTNQF0VSG34f5Kn0GBjPLkiWF9rqZxlGZryKdQYbufaryb7+boGfkn s2XTtW+d9wzajnkk+SqLv7vEtMcV/OE0cORhhfw0Ae4t7ZK5S73uZHMAsjgieBRDRzMD16 e+ejwusqLS/d2Uq1VKsLV+n+/AP1tV0AH2mdjgu7N73ubo7MPpTsgg560nWcew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25D6Mx2zK71; Sat, 28 Sep 2024 09:26:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9Q87L077089; Sat, 28 Sep 2024 09:26:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9Q8Fs077086; Sat, 28 Sep 2024 09:26:08 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:08 GMT Message-Id: <202409280926.48S9Q8Fs077086@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: b1dadbcebdfd - stable/13 - ixgbe: update ixgbe_phy with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b1dadbcebdfd3e711f792f9aa8cbaeb063e1ce91 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=b1dadbcebdfd3e711f792f9aa8cbaeb063e1ce91 commit b1dadbcebdfd3e711f792f9aa8cbaeb063e1ce91 Author: Kevin Bowling AuthorDate: 2024-09-21 09:45:12 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:24:44 +0000 ixgbe: update ixgbe_phy with ix-3.3.38 changes (cherry picked from commit e06918b94ac44448272a9d6747dcdba142e18b58) --- sys/dev/ixgbe/ixgbe_phy.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index c2f23179476b..e3f311473c38 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -1487,6 +1487,11 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) hw->phy.type = ixgbe_phy_sfp_intel; break; default: + if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) + hw->phy.type = ixgbe_phy_sfp_passive_unknown; + else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) + hw->phy.type = ixgbe_phy_sfp_active_unknown; + else hw->phy.type = ixgbe_phy_sfp_unknown; break; } @@ -1495,10 +1500,6 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) /* Allow any DA cable vendor */ if (cable_tech & (IXGBE_SFF_DA_PASSIVE_CABLE | IXGBE_SFF_DA_ACTIVE_CABLE)) { - if (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) - hw->phy.type = ixgbe_phy_sfp_passive_unknown; - else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) - hw->phy.type = ixgbe_phy_sfp_active_unknown; status = IXGBE_SUCCESS; goto out; } From nobody Sat Sep 28 09:26: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 4XG25G3hpDz5Y3BQ; Sat, 28 Sep 2024 09:26: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 4XG25G1Cdcz4s4x; Sat, 28 Sep 2024 09:26:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515570; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IqHr9WswOV0kIX8n0AonxEpqLRDZ6Fm9eBEaRd/vSnw=; b=H05AgNGsXsOolo4EHoBwRB6s/PJRxdPB7Ji5Y2tU6euOJa+LtuI+LXMjHzqVoPAcfY+E7W rmaGP+lL170DZgJeUYIWvjsTxEUXt9WZrzdV2zjLSI/VRkk5zZv1UgEyukAOFqzvlnwYnA ohQwCUOvQ42z3ctnZ0L4gjnZ/pWg9Ysi1E82RHOAhMARQJBWZmR1EpHfmdM0kfMLXFDDXu NNoP9g4XHIuk4WjOChG6KVqaTNYbE2Dl6A2FTXVD2uOBr7vuhCnNTbgOOssAgR0yaT4t0O aWFFOEJzR39kkb88Ul84gmfPFf6AsL664ldeddBwgiC1Uk/fvC5AHFoPFHQlrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515570; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IqHr9WswOV0kIX8n0AonxEpqLRDZ6Fm9eBEaRd/vSnw=; b=UboW/JfgWcg8YnGTx1XLESWZZoMKQwXJWNd0Tz2Hk0E/xuXwN7p9LuPPuWXgzW8rVg3vK0 imirqfSOdEnXvs/Sl5Tqt0b/JvDdlcKT7T8RJo0kYD+sEMlskbEU7DtQd/j+fa09x6ZPu2 EKqWnf0FuAyo5SQtBTz8viE1qcfYGlzj88UvtzL45g0CK3Sqd8MVhfc0k2LiPmeGKIkGeq DC7NKBbZOOtPa3HaZLGO5PP5XNxlsBnLq2D2pSG60911iYJFo59T/VqRjU8MAlYLX3ypA8 NHkE3pMyxNxRjZ9UjOqedZOECviRBAzbRjSGH5qOJhtbCWPsFE1mxjUiFMPPXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515570; a=rsa-sha256; cv=none; b=v0+86FANKqy99f88GKJF7jJxUdHldzAtSFHbR22nH7FG/RTTtrSWccacmCreLeUtVTT2Zz bD+b75PBTTbjsHzrFlzTJ/kFPb86cj+DM4oBIAw2LppiBSrYbFhehwUzNHR+ruSMgj4I1/ XnXJdqNfJ8pTpIqgBIl7nQVSK2T6i/slFDSFHffR2H7mGdYW2W7W36M7vFVM2zLhpf4FgU SxfZ67XeeNp7DCdSudqhCmGEktu/xgga7QIyBvy9gUln/UbV69Xyorf+Po1xgTMPBsET6K 2/JjaL3kFwLqta4eGq2Xxvu9JaK51dKRzhy3Bg+MfpkRM2BRggix5GEQdkFGuA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25G0SjHzK44; Sat, 28 Sep 2024 09:26:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9Q9AS077134; Sat, 28 Sep 2024 09:26:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9Q9NW077131; Sat, 28 Sep 2024 09:26:09 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:09 GMT Message-Id: <202409280926.48S9Q9NW077131@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: fa00169e26ff - stable/13 - ixgbe: update ixgbe_mbx with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fa00169e26ff91ae1aa62a00f6a5a57068442a2e Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=fa00169e26ff91ae1aa62a00f6a5a57068442a2e commit fa00169e26ff91ae1aa62a00f6a5a57068442a2e Author: Kevin Bowling AuthorDate: 2024-09-21 09:47:11 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:24:57 +0000 ixgbe: update ixgbe_mbx with ix-3.3.38 changes (cherry picked from commit 0acea458f82d95b75193bf6ce6321906032abf40) --- sys/dev/ixgbe/ixgbe_mbx.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ sys/dev/ixgbe/ixgbe_mbx.h | 1 + 2 files changed, 45 insertions(+) diff --git a/sys/dev/ixgbe/ixgbe_mbx.c b/sys/dev/ixgbe/ixgbe_mbx.c index 0a0c5abde157..5f1f64e02b82 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.c +++ b/sys/dev/ixgbe/ixgbe_mbx.c @@ -199,6 +199,26 @@ s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id) return ret_val; } +/** + * ixgbe_clear_mbx - Clear Mailbox Memory + * @hw: pointer to the HW structure + * @mbx_id: id of mailbox to write + * + * Set VFMBMEM of given VF to 0x0. + **/ +s32 ixgbe_clear_mbx(struct ixgbe_hw *hw, u16 mbx_id) +{ + struct ixgbe_mbx_info *mbx = &hw->mbx; + s32 ret_val = IXGBE_ERR_CONFIG; + + DEBUGFUNC("ixgbe_clear_mbx"); + + if (mbx->ops[mbx_id].clear) + ret_val = mbx->ops[mbx_id].clear(hw, mbx_id); + + return ret_val; +} + /** * ixgbe_poll_for_msg - Wait for message notification * @hw: pointer to the HW structure @@ -658,6 +678,7 @@ void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw) mbx->ops[0].check_for_msg = ixgbe_check_for_msg_vf; mbx->ops[0].check_for_ack = ixgbe_check_for_ack_vf; mbx->ops[0].check_for_rst = ixgbe_check_for_rst_vf; + mbx->ops[0].clear = NULL; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; @@ -1054,6 +1075,27 @@ static s32 ixgbe_read_mbx_pf(struct ixgbe_hw *hw, u32 *msg, u16 size, return IXGBE_SUCCESS; } +/** + * ixgbe_clear_mbx_pf - Clear Mailbox Memory + * @hw: pointer to the HW structure + * @vf_id: the VF index + * + * Set VFMBMEM of given VF to 0x0. + **/ +static s32 ixgbe_clear_mbx_pf(struct ixgbe_hw *hw, u16 vf_id) +{ + u16 mbx_size = hw->mbx.size; + u16 i; + + if (vf_id > 63) + return IXGBE_ERR_PARAM; + + for (i = 0; i < mbx_size; ++i) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf_id), i, 0x0); + + return IXGBE_SUCCESS; +} + /** * ixgbe_init_mbx_params_pf_id - set initial values for pf mailbox * @hw: pointer to the HW structure @@ -1072,6 +1114,7 @@ void ixgbe_init_mbx_params_pf_id(struct ixgbe_hw *hw, u16 vf_id) mbx->ops[vf_id].check_for_msg = ixgbe_check_for_msg_pf; mbx->ops[vf_id].check_for_ack = ixgbe_check_for_ack_pf; mbx->ops[vf_id].check_for_rst = ixgbe_check_for_rst_pf; + mbx->ops[vf_id].clear = ixgbe_clear_mbx_pf; } /** @@ -1147,6 +1190,7 @@ void ixgbe_upgrade_mbx_params_pf(struct ixgbe_hw *hw, u16 vf_id) mbx->ops[vf_id].check_for_msg = ixgbe_check_for_msg_pf; mbx->ops[vf_id].check_for_ack = ixgbe_check_for_ack_pf; mbx->ops[vf_id].check_for_rst = ixgbe_check_for_rst_pf; + mbx->ops[vf_id].clear = ixgbe_clear_mbx_pf; mbx->stats.msgs_tx = 0; mbx->stats.msgs_rx = 0; diff --git a/sys/dev/ixgbe/ixgbe_mbx.h b/sys/dev/ixgbe/ixgbe_mbx.h index 3a9bd34a137f..e6519963242e 100644 --- a/sys/dev/ixgbe/ixgbe_mbx.h +++ b/sys/dev/ixgbe/ixgbe_mbx.h @@ -195,6 +195,7 @@ s32 ixgbe_write_mbx(struct ixgbe_hw *hw, u32 *msg, u16 size, u16 mbx_id); s32 ixgbe_check_for_msg(struct ixgbe_hw *hw, u16 mbx_id); s32 ixgbe_check_for_ack(struct ixgbe_hw *hw, u16 mbx_id); s32 ixgbe_check_for_rst(struct ixgbe_hw *hw, u16 mbx_id); +s32 ixgbe_clear_mbx(struct ixgbe_hw *hw, u16 vf_number); void ixgbe_init_mbx_params_vf(struct ixgbe_hw *hw); void ixgbe_upgrade_mbx_params_vf(struct ixgbe_hw *hw); void ixgbe_init_mbx_params_pf(struct ixgbe_hw *hw); From nobody Sat Sep 28 09:26: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 4XG25H3nV6z5Y3DD; Sat, 28 Sep 2024 09:26:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG25H1pxjz4s8c; Sat, 28 Sep 2024 09:26:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515571; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nEmPEEq1pq4kwoVAf05z6NEK20K+wONN0WOXbjGwPYE=; b=dzYa7p8pThIQgtgxXPPMgwjhJE3shLhQAD6RMHo+XknIiUwwy1y3ccqGIlQL+BXtVG8MBy YDBRF0fB6Qm6XyDdXdQWmCtPp32Oa4eAnEAHQ35k784+0pApkB7QuWn1Kvbq1+K4ijKlyw cHhGa6pW9eH/zMl/zZFcRvf6zmgS5ngbgk5ZLIzxM4LM/o+S1DmwSOYrjvdWj33TEkyF1E pnRjmzOshhYSvuM6z3/36Vj+32z8U0wkcf25D1EURyZHlP27IduGdOmaips2K5Z3o4lv2K /Qk9aFSz0WARFXKip5yvmSJtkx7YW68YHHZ/wKQY70/Z/ATKZq57idkkqypbCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515571; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nEmPEEq1pq4kwoVAf05z6NEK20K+wONN0WOXbjGwPYE=; b=jwPhPc70KjEQwmajYUe8UJEl6vbDiKQagwDeG87I72V3fsyfTBizEWiWbv84xcHhE9pcis uAJ7oEIaL+6R+SlL8707ko7gnPykFpx0SC8jsdplAyJAQTT0D9476O97P8FCX5QTFxQVE3 +cp/YJbnQpLnUUtYl/AgfE+P4TBle3KUDF3OdH/eyo+PGqMh8aqztzPNGJFUkxonaFlFBf rhG2STA4rLmVsrMAQ+OmCR1q9IwVdj8ke+KDSnLpGOmrZ7kwbnU2coyHyxA85jw/4Kxvr7 vr07m1uy42SoyJlVZsYoU9Hn8r82H+i8SKTbVr2xuUK7LN4D1+T1YArFnT7zoQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515571; a=rsa-sha256; cv=none; b=RtObB/6O2Lrn4adY6CGWBryPe4Un9aVe3zhbZ31hMqZwmYzPOWIhwXW+yiJUXK4Qjlr9Qq 9jfdCxlYL1+i53V6uiLuDsu7+r5rU4b5Re9ca6/hgJ2AaQ4Uc5HsA5BsMPcpMqOeaSBwVJ YYbkBzy88tcp4AIfikS4/Zhi80rf7l4yum26MaaEzFbpygs0bCfHe04lLUS1M7VZCIqa/B PswH6C1w631anv1aA21fFza1xk7Cra0F2fMnThd1N0nBPkuDqC3Jc6+W74iz/zFmpr0keG Mgg9iWPUrGzU3ZOqf0nBIEV2Cwe2mK4W21TJstBzJwuAV5aN16t7NZv2hZ7YpQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25H11bjzJVP; Sat, 28 Sep 2024 09:26: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 48S9QBfa077188; Sat, 28 Sep 2024 09:26:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9QBVO077185; Sat, 28 Sep 2024 09:26:11 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:11 GMT Message-Id: <202409280926.48S9QBVO077185@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: 78d9eb6de856 - stable/13 - ixgbe: update if_ix and ixgbe api with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 78d9eb6de85606c9350f25e6973205a0fc466e67 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=78d9eb6de85606c9350f25e6973205a0fc466e67 commit 78d9eb6de85606c9350f25e6973205a0fc466e67 Author: Kevin Bowling AuthorDate: 2024-09-21 09:51:24 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:25:11 +0000 ixgbe: update if_ix and ixgbe api with ix-3.3.38 changes (cherry picked from commit f72de14ea13259db78b06c50da6c864dea698668) --- sys/dev/ixgbe/if_ix.c | 172 ++++++++++++++++++++++++++++++++++------- sys/dev/ixgbe/ixgbe.h | 4 + sys/dev/ixgbe/ixgbe_api.c | 19 ++++- sys/dev/ixgbe/ixgbe_api.h | 1 + sys/dev/ixgbe/ixgbe_common.c | 161 +++++++++++++++++++++++++++++++++++++- sys/dev/ixgbe/ixgbe_common.h | 3 + sys/dev/ixgbe/ixgbe_features.h | 1 + sys/dev/ixgbe/ixgbe_rss.h | 1 + sys/dev/ixgbe/ixgbe_type.h | 52 +++++++++++++ 9 files changed, 378 insertions(+), 36 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index e9e5ae980b42..2af927996aca 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -172,6 +172,7 @@ static void ixgbe_add_media_types(if_ctx_t); static void ixgbe_update_stats_counters(struct ixgbe_softc *); static void ixgbe_config_link(if_ctx_t); static void ixgbe_get_slot_info(struct ixgbe_softc *); +static void ixgbe_fw_mode_timer(void *); static void ixgbe_check_wol_support(struct ixgbe_softc *); static void ixgbe_enable_rx_drop(struct ixgbe_softc *); static void ixgbe_disable_rx_drop(struct ixgbe_softc *); @@ -1142,6 +1143,17 @@ ixgbe_if_attach_post(if_ctx_t ctx) /* Add sysctls */ ixgbe_add_device_sysctls(ctx); + /* Init recovery mode timer and state variable */ + if (sc->feat_en & IXGBE_FEATURE_RECOVERY_MODE) { + sc->recovery_mode = 0; + + /* Set up the timer callout */ + callout_init(&sc->fw_mode_timer, true); + + /* Start the task */ + callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, 0); + } + return (0); err: return (error); @@ -1645,10 +1657,10 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, txr, 0, + CTLTYPE_UINT | CTLFLAG_RD, txr, 0, ixgbe_sysctl_tdh_handler, "IU", "Transmit Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, txr, 0, + CTLTYPE_UINT | CTLFLAG_RD, txr, 0, ixgbe_sysctl_tdt_handler, "IU", "Transmit Descriptor Tail"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tso_tx", CTLFLAG_RD, &txr->tso_tx, "TSO"); @@ -1665,7 +1677,7 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "interrupt_rate", - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RW, &sc->rx_queues[i], 0, ixgbe_sysctl_interrupt_rate_handler, "IU", "Interrupt Rate"); @@ -1673,10 +1685,10 @@ ixgbe_add_hw_stats(struct ixgbe_softc *sc) CTLFLAG_RD, &(sc->rx_queues[i].irqs), "irqs on this queue"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, rxr, 0, + CTLTYPE_UINT | CTLFLAG_RD, rxr, 0, ixgbe_sysctl_rdh_handler, "IU", "Receive Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, rxr, 0, + CTLTYPE_UINT | CTLFLAG_RD, rxr, 0, ixgbe_sysctl_rdt_handler, "IU", "Receive Descriptor Tail"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_packets", CTLFLAG_RD, &rxr->rx_packets, "Queue Packets Received"); @@ -1805,6 +1817,10 @@ ixgbe_sysctl_tdh_handler(SYSCTL_HANDLER_ARGS) if (!txr) return (0); + + if (atomic_load_acq_int(&txr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&txr->sc->hw, IXGBE_TDH(txr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1828,6 +1844,9 @@ ixgbe_sysctl_tdt_handler(SYSCTL_HANDLER_ARGS) if (!txr) return (0); + if (atomic_load_acq_int(&txr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&txr->sc->hw, IXGBE_TDT(txr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1851,6 +1870,9 @@ ixgbe_sysctl_rdh_handler(SYSCTL_HANDLER_ARGS) if (!rxr) return (0); + if (atomic_load_acq_int(&rxr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&rxr->sc->hw, IXGBE_RDH(rxr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -1874,6 +1896,9 @@ ixgbe_sysctl_rdt_handler(SYSCTL_HANDLER_ARGS) if (!rxr) return (0); + if (atomic_load_acq_int(&rxr->sc->recovery_mode)) + return (EPERM); + val = IXGBE_READ_REG(&rxr->sc->hw, IXGBE_RDT(rxr->me)); error = sysctl_handle_int(oidp, &val, 0, req); if (error || !req->newptr) @@ -2145,6 +2170,7 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) { uint32_t newitr = 0; struct rx_ring *rxr = &que->rxr; + /* FIXME struct tx_ring *txr = ... ->txr; */ /* * Do Adaptive Interrupt Moderation: @@ -2160,12 +2186,18 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) que->eitr_setting = 0; /* Idle, do nothing */ if (rxr->bytes == 0) { + /* FIXME && txr->bytes == 0 */ return; } - if ((rxr->bytes) && (rxr->packets)) { - newitr = (rxr->bytes / rxr->packets); - } + if ((rxr->bytes) && (rxr->packets)) + newitr = rxr->bytes / rxr->packets; + /* FIXME for transmit accounting + * if ((txr->bytes) && (txr->packets)) + * newitr = txr->bytes/txr->packets; + * if ((rxr->bytes) && (rxr->packets)) + * newitr = max(newitr, (rxr->bytes / rxr->packets)); + */ newitr += 24; /* account for hardware frame, crc */ /* set an upper boundary */ @@ -2188,6 +2220,8 @@ ixgbe_perform_aim(struct ixgbe_softc *sc, struct ix_rx_queue *que) que->eitr_setting = newitr; /* Reset state */ + /* FIXME txr->bytes = 0; */ + /* FIXME txr->packets = 0; */ rxr->bytes = 0; rxr->packets = 0; @@ -2645,6 +2679,9 @@ ixgbe_sysctl_interrupt_rate_handler(SYSCTL_HANDLER_ARGS) int error; unsigned int reg, usec, rate; + if (atomic_load_acq_int(&que->sc->recovery_mode)) + return (EPERM); + reg = IXGBE_READ_REG(&que->sc->hw, IXGBE_EITR(que->msix)); usec = ((reg & 0x0FF8) >> 3); if (usec > 0) @@ -2684,12 +2721,12 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) /* Sysctls for all devices */ SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fc", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_flowcntl, "I", IXGBE_SYSCTL_DESC_SET_FC); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "advertise_speed", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_advertise, "I", IXGBE_SYSCTL_DESC_ADV_SPEED); @@ -2698,35 +2735,35 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) &sc->enable_aim, 0, "Interrupt Moderation"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fw_version", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, ixgbe_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); #ifdef IXGBE_DEBUG /* testing sysctls (for all devices) */ SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "power_state", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_power_state, "I", "PCI Power State"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "print_rss_config", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, ixgbe_sysctl_print_rss_config, "A", "Prints RSS Configuration"); #endif /* for X550 series devices */ if (hw->mac.type >= ixgbe_mac_X550) SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "dmac", - CTLTYPE_U16 | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_U16 | CTLFLAG_RW, sc, 0, ixgbe_sysctl_dmac, "I", "DMA Coalesce"); /* for WoL-capable devices */ if (hw->device_id == IXGBE_DEV_ID_X550EM_X_10G_T) { SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "wol_enable", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_wol_enable, "I", "Enable/Disable Wake on LAN"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "wufc", - CTLTYPE_U32 | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + CTLTYPE_U32 | CTLFLAG_RW, sc, 0, ixgbe_sysctl_wufc, "I", "Enable/Disable Wake Up Filters"); } @@ -2741,20 +2778,20 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) phy_list = SYSCTL_CHILDREN(phy_node); SYSCTL_ADD_PROC(ctx_list, phy_list, OID_AUTO, "temp", - CTLTYPE_U16 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_U16 | CTLFLAG_RD, sc, 0, ixgbe_sysctl_phy_temp, "I", "Current External PHY Temperature (Celsius)"); SYSCTL_ADD_PROC(ctx_list, phy_list, OID_AUTO, "overtemp_occurred", - CTLTYPE_U16 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_U16 | CTLFLAG_RD, sc, 0, ixgbe_sysctl_phy_overtemp_occurred, "I", "External PHY High Temperature Event Occurred"); } if (sc->feat_cap & IXGBE_FEATURE_EEE) { SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "eee_state", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, ixgbe_sysctl_eee_state, "I", "EEE Power Save State"); } } /* ixgbe_add_device_sysctls */ @@ -2818,6 +2855,8 @@ ixgbe_if_detach(if_ctx_t ctx) ctrl_ext &= ~IXGBE_CTRL_EXT_DRV_LOAD; IXGBE_WRITE_REG(&sc->hw, IXGBE_CTRL_EXT, ctrl_ext); + callout_drain(&sc->fw_mode_timer); + ixgbe_free_pci_resources(ctx); free(sc->mta, M_IXGBE); @@ -3484,6 +3523,34 @@ ixgbe_if_timer(if_ctx_t ctx, uint16_t qid) } /* ixgbe_if_timer */ +/************************************************************************ + * ixgbe_fw_mode_timer - FW mode timer routine + ************************************************************************/ +static void +ixgbe_fw_mode_timer(void *arg) +{ + struct ixgbe_softc *sc = arg; + struct ixgbe_hw *hw = &sc->hw; + + if (ixgbe_fw_recovery_mode(hw)) { + if (atomic_cmpset_acq_int(&sc->recovery_mode, 0, 1)) { + /* Firmware error detected, entering recovery mode */ + device_printf(sc->dev, "Firmware recovery mode detected. Limiting" + " functionality. Refer to the Intel(R) Ethernet Adapters" + " and Devices User Guide for details on firmware recovery" + " mode.\n"); + + if (hw->adapter_stopped == FALSE) + ixgbe_if_stop(sc->ctx); + } + } else + atomic_cmpset_acq_int(&sc->recovery_mode, 1, 0); + + + callout_reset(&sc->fw_mode_timer, hz, + ixgbe_fw_mode_timer, sc); +} /* ixgbe_fw_mode_timer */ + /************************************************************************ * ixgbe_sfp_probe * @@ -3935,7 +4002,7 @@ ixgbe_intr(void *arg) } /* Check for fan failure */ - if ((hw->device_id == IXGBE_DEV_ID_82598AT) && + if ((sc->feat_en & IXGBE_FEATURE_FAN_FAIL) && (eicr & IXGBE_EICR_GPI_SDP1)) { device_printf(sc->dev, "\nCRITICAL: FAN FAILURE!! REPLACE IMMEDIATELY!!\n"); @@ -4129,6 +4196,9 @@ ixgbe_sysctl_advertise(SYSCTL_HANDLER_ARGS) int error, advertise; sc = (struct ixgbe_softc *)arg1; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + advertise = sc->advertise; error = sysctl_handle_int(oidp, &advertise, 0, req); @@ -4480,6 +4550,9 @@ ixgbe_sysctl_print_rss_config(SYSCTL_HANDLER_ARGS) int error = 0, reta_size; u32 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + buf = sbuf_new_for_sysctl(NULL, NULL, 128, req); if (!buf) { device_printf(dev, "Could not allocate sbuf for output.\n"); @@ -4535,6 +4608,9 @@ ixgbe_sysctl_phy_temp(SYSCTL_HANDLER_ARGS) struct ixgbe_hw *hw = &sc->hw; u16 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + if (hw->device_id != IXGBE_DEV_ID_X550EM_X_10G_T) { device_printf(iflib_get_dev(sc->ctx), "Device has no supported external thermal sensor.\n"); @@ -4567,6 +4643,9 @@ ixgbe_sysctl_phy_overtemp_occurred(SYSCTL_HANDLER_ARGS) struct ixgbe_hw *hw = &sc->hw; u16 reg; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + if (hw->device_id != IXGBE_DEV_ID_X550EM_X_10G_T) { device_printf(iflib_get_dev(sc->ctx), "Device has no supported external thermal sensor.\n"); @@ -4604,6 +4683,9 @@ ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS) int curr_eee, new_eee, error = 0; s32 retval; + if (atomic_load_acq_int(&sc->recovery_mode)) + return (EPERM); + curr_eee = new_eee = !!(sc->feat_en & IXGBE_FEATURE_EEE); error = sysctl_handle_int(oidp, &new_eee, 0, req); @@ -4668,15 +4750,20 @@ ixgbe_init_device_features(struct ixgbe_softc *sc) sc->feat_cap |= IXGBE_FEATURE_BYPASS; break; case ixgbe_mac_X550: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_TEMP_SENSOR; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; break; case ixgbe_mac_X550EM_x: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; + if (sc->hw.device_id == IXGBE_DEV_ID_X550EM_X_KR) + sc->feat_cap |= IXGBE_FEATURE_EEE; break; case ixgbe_mac_X550EM_a: + sc->feat_cap |= IXGBE_FEATURE_RECOVERY_MODE; sc->feat_cap |= IXGBE_FEATURE_SRIOV; sc->feat_cap |= IXGBE_FEATURE_FDIR; sc->feat_cap &= ~IXGBE_FEATURE_LEGACY_IRQ; @@ -4712,6 +4799,9 @@ ixgbe_init_device_features(struct ixgbe_softc *sc) /* Thermal Sensor */ if (sc->feat_cap & IXGBE_FEATURE_TEMP_SENSOR) sc->feat_en |= IXGBE_FEATURE_TEMP_SENSOR; + /* Recovery mode */ + if (sc->feat_cap & IXGBE_FEATURE_RECOVERY_MODE) + sc->feat_en |= IXGBE_FEATURE_RECOVERY_MODE; /* Enabled via global sysctl... */ /* Flow Director */ @@ -4763,14 +4853,42 @@ static void ixgbe_sbuf_fw_version(struct ixgbe_hw *hw, struct sbuf *buf) { struct ixgbe_nvm_version nvm_ver = {0}; - uint16_t phyfw = 0; - int status; const char *space = ""; + ixgbe_get_nvm_version(hw, &nvm_ver); /* NVM version */ ixgbe_get_oem_prod_version(hw, &nvm_ver); /* OEM's NVM version */ - ixgbe_get_orom_version(hw, &nvm_ver); /* Option ROM */ ixgbe_get_etk_id(hw, &nvm_ver); /* eTrack identifies a build in Intel's SCM */ - status = ixgbe_get_phy_firmware_version(hw, &phyfw); + ixgbe_get_orom_version(hw, &nvm_ver); /* Option ROM */ + + /* FW version */ + if ((nvm_ver.phy_fw_maj == 0x0 && + nvm_ver.phy_fw_min == 0x0 && + nvm_ver.phy_fw_id == 0x0) || + (nvm_ver.phy_fw_maj == 0xF && + nvm_ver.phy_fw_min == 0xFF && + nvm_ver.phy_fw_id == 0xF)) { + /* If major, minor and id numbers are set to 0, + * reading FW version is unsupported. If major number + * is set to 0xF, minor is set to 0xFF and id is set + * to 0xF, this means that number read is invalid. */ + } else + sbuf_printf(buf, "fw %d.%d.%d ", + nvm_ver.phy_fw_maj, nvm_ver.phy_fw_min, nvm_ver.phy_fw_id); + + /* NVM version */ + if ((nvm_ver.nvm_major == 0x0 && + nvm_ver.nvm_minor == 0x0 && + nvm_ver.nvm_id == 0x0) || + (nvm_ver.nvm_major == 0xF && + nvm_ver.nvm_minor == 0xFF && + nvm_ver.nvm_id == 0xF)) { + /* If major, minor and id numbers are set to 0, + * reading NVM version is unsupported. If major number + * is set to 0xF, minor is set to 0xFF and id is set + * to 0xF, this means that number read is invalid. */ + } else + sbuf_printf(buf, "nvm %x.%02x.%x ", + nvm_ver.nvm_major, nvm_ver.nvm_minor, nvm_ver.nvm_id); if (nvm_ver.oem_valid) { sbuf_printf(buf, "NVM OEM V%d.%d R%d", nvm_ver.oem_major, @@ -4785,13 +4903,9 @@ ixgbe_sbuf_fw_version(struct ixgbe_hw *hw, struct sbuf *buf) } if (nvm_ver.etk_id != ((NVM_VER_INVALID << NVM_ETK_SHIFT) | - NVM_VER_INVALID)) { + NVM_VER_INVALID | 0xFFFFFFFF)) { sbuf_printf(buf, "%seTrack 0x%08x", space, nvm_ver.etk_id); - space = " "; } - - if (phyfw != 0 && status == IXGBE_SUCCESS) - sbuf_printf(buf, "%sPHY FW V%d", space, phyfw); } /* ixgbe_sbuf_fw_version */ /************************************************************************ diff --git a/sys/dev/ixgbe/ixgbe.h b/sys/dev/ixgbe/ixgbe.h index fb0dba242702..798fb2dcd796 100644 --- a/sys/dev/ixgbe/ixgbe.h +++ b/sys/dev/ixgbe/ixgbe.h @@ -434,6 +434,10 @@ struct ixgbe_softc { /* Bypass */ struct ixgbe_bp_data bypass; + /* Firmware error check */ + int recovery_mode; + struct callout fw_mode_timer; + /* Misc stats maintained by the driver */ unsigned long dropped_pkts; unsigned long mbuf_header_failed; diff --git a/sys/dev/ixgbe/ixgbe_api.c b/sys/dev/ixgbe/ixgbe_api.c index 7767e9a5571c..4c50f10ed92e 100644 --- a/sys/dev/ixgbe/ixgbe_api.c +++ b/sys/dev/ixgbe/ixgbe_api.c @@ -1133,6 +1133,19 @@ s32 ixgbe_set_vlvf(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on, IXGBE_NOT_IMPLEMENTED); } +/** + * ixgbe_toggle_txdctl - Toggle VF's queues + * @hw: pointer to hardware structure + * @vind: VMDq pool index + * + * Enable and disable each queue in VF. + */ +s32 ixgbe_toggle_txdctl(struct ixgbe_hw *hw, u32 vind) +{ + return ixgbe_call_func(hw, hw->mac.ops.toggle_txdctl, (hw, + vind), IXGBE_NOT_IMPLEMENTED); +} + /** * ixgbe_fc_enable - Enable flow control * @hw: pointer to hardware structure @@ -1417,15 +1430,15 @@ s32 ixgbe_bypass_rw(struct ixgbe_hw *hw, u32 cmd, u32 *status) /** * ixgbe_bypass_valid_rd - Verify valid return from bit-bang. + * @hw: pointer to hardware structure + * @in_reg: The register cmd for the bit-bang read. + * @out_reg: The register returned from a bit-bang read. * * If we send a write we can't be sure it took until we can read back * that same register. It can be a problem as some of the fields may * for valid reasons change inbetween the time wrote the register and * we read it again to verify. So this function check everything we * can check and then assumes it worked. - * - * @u32 in_reg - The register cmd for the bit-bang read. - * @u32 out_reg - The register returned from a bit-bang read. **/ bool ixgbe_bypass_valid_rd(struct ixgbe_hw *hw, u32 in_reg, u32 out_reg) { diff --git a/sys/dev/ixgbe/ixgbe_api.h b/sys/dev/ixgbe/ixgbe_api.h index 33c1cd1baeaf..b81510dacb95 100644 --- a/sys/dev/ixgbe/ixgbe_api.h +++ b/sys/dev/ixgbe/ixgbe_api.h @@ -131,6 +131,7 @@ s32 ixgbe_set_vfta(struct ixgbe_hw *hw, u32 vlan, s32 ixgbe_set_vlvf(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlan_on, u32 *vfta_delta, u32 vfta, bool vlvf_bypass); +s32 ixgbe_toggle_txdctl(struct ixgbe_hw *hw, u32 vind); s32 ixgbe_fc_enable(struct ixgbe_hw *hw); s32 ixgbe_setup_fc(struct ixgbe_hw *hw); s32 ixgbe_set_fw_drv_ver(struct ixgbe_hw *hw, u8 maj, u8 min, u8 build, diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c index 7643d4028529..df7ab90e72ab 100644 --- a/sys/dev/ixgbe/ixgbe_common.c +++ b/sys/dev/ixgbe/ixgbe_common.c @@ -133,6 +133,7 @@ s32 ixgbe_init_ops_generic(struct ixgbe_hw *hw) mac->ops.init_uta_tables = NULL; mac->ops.enable_rx = ixgbe_enable_rx_generic; mac->ops.disable_rx = ixgbe_disable_rx_generic; + mac->ops.toggle_txdctl = ixgbe_toggle_txdctl_generic; /* Flow Control */ mac->ops.fc_enable = ixgbe_fc_enable_generic; @@ -4138,6 +4139,62 @@ s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw) return IXGBE_SUCCESS; } + +/** + * ixgbe_toggle_txdctl_generic - Toggle VF's queues + * @hw: pointer to hardware structure + * @vf_number: VF index + * + * Enable and disable each queue in VF. + */ +s32 ixgbe_toggle_txdctl_generic(struct ixgbe_hw *hw, u32 vf_number) +{ + u8 queue_count, i; + u32 offset, reg; + + if (vf_number > 63) + return IXGBE_ERR_PARAM; + + /* + * Determine number of queues by checking + * number of virtual functions + */ + reg = IXGBE_READ_REG(hw, IXGBE_GCR_EXT); + switch (reg & IXGBE_GCR_EXT_VT_MODE_MASK) { + case IXGBE_GCR_EXT_VT_MODE_64: + queue_count = 2; + break; + case IXGBE_GCR_EXT_VT_MODE_32: + queue_count = 4; + break; + case IXGBE_GCR_EXT_VT_MODE_16: + queue_count = 8; + break; + default: + return IXGBE_ERR_CONFIG; + } + + /* Toggle queues */ + for (i = 0; i < queue_count; ++i) { + /* Calculate offset of current queue */ + offset = queue_count * vf_number + i; + + /* Enable queue */ + reg = IXGBE_READ_REG(hw, IXGBE_PVFTXDCTL(offset)); + reg |= IXGBE_TXDCTL_ENABLE; + IXGBE_WRITE_REG(hw, IXGBE_PVFTXDCTL(offset), reg); + IXGBE_WRITE_FLUSH(hw); + + /* Disable queue */ + reg = IXGBE_READ_REG(hw, IXGBE_PVFTXDCTL(offset)); + reg &= ~IXGBE_TXDCTL_ENABLE; + IXGBE_WRITE_REG(hw, IXGBE_PVFTXDCTL(offset), reg); + IXGBE_WRITE_FLUSH(hw); + } + + return IXGBE_SUCCESS; +} + /** * ixgbe_need_crosstalk_fix - Determine if we need to do cross talk fix * @hw: pointer to hardware structure @@ -5151,15 +5208,14 @@ s32 ixgbe_bypass_rw_generic(struct ixgbe_hw *hw, u32 cmd, u32 *status) /** * ixgbe_bypass_valid_rd_generic - Verify valid return from bit-bang. + * @in_reg: The register cmd for the bit-bang read. + * @out_reg: The register returned from a bit-bang read. * * If we send a write we can't be sure it took until we can read back * that same register. It can be a problem as some of the fields may * for valid reasons change inbetween the time wrote the register and * we read it again to verify. So this function check everything we * can check and then assumes it worked. - * - * @u32 in_reg - The register cmd for the bit-bang read. - * @u32 out_reg - The register returned from a bit-bang read. **/ bool ixgbe_bypass_valid_rd_generic(u32 in_reg, u32 out_reg) { @@ -5210,7 +5266,7 @@ bool ixgbe_bypass_valid_rd_generic(u32 in_reg, u32 out_reg) * ixgbe_bypass_set_generic - Set a bypass field in the FW CTRL Regiter. * * @hw: pointer to hardware structure - * @cmd: The control word we are setting. + * @ctrl: The control word we are setting. * @event: The event we are setting in the FW. This also happens to * be the mask for the event we are setting (handy) * @action: The action we set the event to in the FW. This is in a @@ -5395,6 +5451,103 @@ void ixgbe_get_etk_id(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver) } } +/** + * ixgbe_get_nvm_version - Return version of NVM and its components + * + * @hw: pointer to hardware structure + * @nvm_ver: pointer to output structure + * + * irrelevant component fields will return 0, read errors will return 0xff + **/ +void ixgbe_get_nvm_version(struct ixgbe_hw *hw, + struct ixgbe_nvm_version *nvm_ver) +{ + u16 word, phy_ver; + + DEBUGFUNC("ixgbe_get_nvm_version"); + + memset(nvm_ver, 0, sizeof(struct ixgbe_nvm_version)); + + /* eeprom version is mac-type specific */ + switch (hw->mac.type) { + case ixgbe_mac_82598EB: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_82598, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = ((word & NVM_EEP_MINOR_MASK) + >> NVM_EEP_MIN_SHIFT); + nvm_ver->nvm_id = (word & NVM_EEP_ID_MASK); + break; + case ixgbe_mac_X540: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = ((word & NVM_EEP_MINOR_MASK) + >> NVM_EEP_MIN_SHIFT); + nvm_ver->nvm_id = (word & NVM_EEP_ID_MASK); + break; + + case ixgbe_mac_X550: + case ixgbe_mac_X550EM_x: + case ixgbe_mac_X550EM_a: + /* version of eeprom section */ + if (ixgbe_read_eeprom(hw, NVM_EEP_OFFSET_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->nvm_major = ((word & NVM_EEP_MAJOR_MASK) + >> NVM_EEP_MAJ_SHIFT); + nvm_ver->nvm_minor = (word & NVM_EEP_X550_MINOR_MASK); + + break; + default: + break; + } + + /* phy version is mac-type specific */ + switch (hw->mac.type) { + case ixgbe_mac_X540: + case ixgbe_mac_X550: + case ixgbe_mac_X550EM_x: + case ixgbe_mac_X550EM_a: + /* intel phy firmware version */ + if (ixgbe_read_eeprom(hw, NVM_EEP_PHY_OFF_X540, &word)) + word = NVM_VER_INVALID; + nvm_ver->phy_fw_maj = ((word & NVM_PHY_MAJOR_MASK) + >> NVM_PHY_MAJ_SHIFT); + nvm_ver->phy_fw_min = ((word & NVM_PHY_MINOR_MASK) + >> NVM_PHY_MIN_SHIFT); + nvm_ver->phy_fw_id = (word & NVM_PHY_ID_MASK); + break; + default: + break; + } + + ixgbe_get_etk_id(hw, nvm_ver); + + /* devstarter image */ + if (ixgbe_read_eeprom(hw, NVM_DS_OFFSET, &word)) + word = NVM_VER_INVALID; + nvm_ver->devstart_major = ((word & NVM_DS_MAJOR_MASK) >> NVM_DS_SHIFT); + nvm_ver->devstart_minor = (word & NVM_DS_MINOR_MASK); + + /* OEM customization word */ + if (ixgbe_read_eeprom(hw, NVM_OEM_OFFSET, &nvm_ver->oem_specific)) + nvm_ver->oem_specific = NVM_VER_INVALID; + + /* vendor (not intel) phy firmware version */ + if (ixgbe_get_phy_firmware_version(hw, &phy_ver)) + phy_ver = NVM_VER_INVALID; + nvm_ver->phy_vend_maj = ((phy_ver & NVM_PHYVEND_MAJOR_MASK) + >> NVM_PHYVEND_SHIFT); + nvm_ver->phy_vend_min = (phy_ver & NVM_PHYVEND_MINOR_MASK); + + /* Option Rom may or may not be present. Start with pointer */ + ixgbe_get_orom_version(hw, nvm_ver); + return; +} /** * ixgbe_dcb_get_rtrup2tc_generic - read rtrup2tc reg diff --git a/sys/dev/ixgbe/ixgbe_common.h b/sys/dev/ixgbe/ixgbe_common.h index 0ff5c60d40af..a2da9c834f8f 100644 --- a/sys/dev/ixgbe/ixgbe_common.h +++ b/sys/dev/ixgbe/ixgbe_common.h @@ -141,6 +141,7 @@ s32 ixgbe_set_vlvf_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind, bool vlvf_bypass); s32 ixgbe_clear_vfta_generic(struct ixgbe_hw *hw); s32 ixgbe_find_vlvf_slot(struct ixgbe_hw *hw, u32 vlan, bool vlvf_bypass); +s32 ixgbe_toggle_txdctl_generic(struct ixgbe_hw *hw, u32 vind); s32 ixgbe_check_mac_link_generic(struct ixgbe_hw *hw, ixgbe_link_speed *speed, @@ -195,6 +196,8 @@ void ixgbe_get_oem_prod_version(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver); void ixgbe_get_orom_version(struct ixgbe_hw *hw, struct ixgbe_nvm_version *nvm_ver); +void ixgbe_get_nvm_version(struct ixgbe_hw *hw, + struct ixgbe_nvm_version *nvm_ver); void ixgbe_disable_rx_generic(struct ixgbe_hw *hw); void ixgbe_enable_rx_generic(struct ixgbe_hw *hw); s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, diff --git a/sys/dev/ixgbe/ixgbe_features.h b/sys/dev/ixgbe/ixgbe_features.h index ed35a6ed458c..0cef334a185f 100644 --- a/sys/dev/ixgbe/ixgbe_features.h +++ b/sys/dev/ixgbe/ixgbe_features.h @@ -56,6 +56,7 @@ #define IXGBE_FEATURE_EEE (u32)(1 << 11) #define IXGBE_FEATURE_LEGACY_IRQ (u32)(1 << 12) #define IXGBE_FEATURE_NEEDS_CTXD (u32)(1 << 13) +#define IXGBE_FEATURE_RECOVERY_MODE (u32)(1 << 15) /* Check for OS support. Undefine features if not included in the OS */ #ifndef PCI_IOV diff --git a/sys/dev/ixgbe/ixgbe_rss.h b/sys/dev/ixgbe/ixgbe_rss.h index c00273587aaa..84c802671195 100644 --- a/sys/dev/ixgbe/ixgbe_rss.h +++ b/sys/dev/ixgbe/ixgbe_rss.h @@ -48,6 +48,7 @@ #define RSS_HASHTYPE_RSS_IPV6_EX (1 << 5) #define RSS_HASHTYPE_RSS_TCP_IPV6_EX (1 << 6) #define RSS_HASHTYPE_RSS_UDP_IPV4 (1 << 7) +#define RSS_HASHTYPE_RSS_UDP_IPV4_EX (1 << 8) #define RSS_HASHTYPE_RSS_UDP_IPV6 (1 << 9) #define RSS_HASHTYPE_RSS_UDP_IPV6_EX (1 << 10) diff --git a/sys/dev/ixgbe/ixgbe_type.h b/sys/dev/ixgbe/ixgbe_type.h index dbcc6544133e..a414e27142ec 100644 --- a/sys/dev/ixgbe/ixgbe_type.h +++ b/sys/dev/ixgbe/ixgbe_type.h @@ -202,6 +202,10 @@ #define IXGBE_FLA_X550EM_x IXGBE_FLA #define IXGBE_FLA_X550EM_a 0x15F68 #define IXGBE_FLA_BY_MAC(_hw) IXGBE_BY_MAC((_hw), FLA) +#define IXGBE_FLA_FL_SIZE_SHIFT_X540 17 +#define IXGBE_FLA_FL_SIZE_SHIFT_X550 12 +#define IXGBE_FLA_FL_SIZE_MASK_X540 (0x7 << IXGBE_FLA_FL_SIZE_SHIFT_X540) +#define IXGBE_FLA_FL_SIZE_MASK_X550 (0x7 << IXGBE_FLA_FL_SIZE_SHIFT_X550) #define IXGBE_EEMNGCTL 0x10110 #define IXGBE_EEMNGDATA 0x10114 @@ -284,6 +288,41 @@ #define IXGBE_I2C_CLK_OE_N_EN_BY_MAC(_hw) IXGBE_BY_MAC((_hw), I2C_CLK_OE_N_EN) #define IXGBE_I2C_CLOCK_STRETCHING_TIMEOUT 500 +/* NVM component version fields */ +#define NVM_VERSZ_LONG 64 +#define NVM_VERSZ_SHORT 32 +#define NVM_VER_LONG \ + "DS_%x.%x NVM_%x.%02x.%x PHY_%x.%02x.%x OEM_%04x EtkId_%x OR_%x.%x.%x\n" +#define NVM_VER_SHORT1 "%02x.%02x %x %x.%x.%x\n" +#define NVM_VER_SHORT2 "%02x.%02x.%x %x.%02x.%x %x %x.%x.%x\n" + +#define NVM_EEP_MAJOR_MASK 0xF000 +#define NVM_EEP_MINOR_MASK 0xFF0 +#define NVM_EEP_ID_MASK 0xF +#define NVM_EEP_MAJ_SHIFT 12 +#define NVM_EEP_MIN_SHIFT 4 + +#define NVM_EEP_OFFSET_82598 0x2A +#define NVM_EEP_OFFSET_X540 0x18 +#define NVM_EEP_X550_MINOR_MASK 0xFF +#define NVM_EEP_PHY_OFF_X540 0x19 +#define NVM_PHY_MAJOR_MASK 0xF000 +#define NVM_PHY_MINOR_MASK 0xFF0 +#define NVM_PHY_ID_MASK 0xF +#define NVM_PHY_MAJ_SHIFT 12 +#define NVM_PHY_MIN_SHIFT 4 + +#define NVM_DS_OFFSET 0x29 +#define NVM_DS_MAJOR_MASK 0xF000 +#define NVM_DS_MINOR_MASK 0xF +#define NVM_DS_SHIFT 12 + +#define NVM_OEM_OFFSET 0x2A + +#define NVM_PHYVEND_MAJOR_MASK 0xFF00 +#define NVM_PHYVEND_MINOR_MASK 0xFF +#define NVM_PHYVEND_SHIFT 8 + #define IXGBE_I2C_THERMAL_SENSOR_ADDR 0xF8 #define IXGBE_EMC_INTERNAL_DATA 0x00 #define IXGBE_EMC_INTERNAL_THERM_LIMIT 0x20 @@ -344,6 +383,16 @@ struct ixgbe_nvm_version { u16 or_build; u8 or_patch; + u8 phy_fw_maj; + u16 phy_fw_min; + u8 phy_fw_id; + + u8 devstart_major; + u8 devstart_minor; + u16 oem_specific; + + u8 phy_vend_maj; + u8 phy_vend_min; }; /* Interrupt Registers */ @@ -1443,6 +1492,7 @@ struct ixgbe_dmac_config { #define IXGBE_BARCTRL_FLSIZE 0x0700 #define IXGBE_BARCTRL_FLSIZE_SHIFT 8 #define IXGBE_BARCTRL_CSRSIZE 0x2000 +#define IXGBE_BARCTRL_CSRSIZE_SHIFT 13 /* RSCCTL Bit Masks */ #define IXGBE_RSCCTL_RSCEN 0x01 @@ -3414,6 +3464,7 @@ struct ixgbe_adv_tx_context_desc { #define IXGBE_ADVTXD_POPTS_RSV 0x00002000 /* POPTS Reserved */ #define IXGBE_ADVTXD_PAYLEN_SHIFT 14 /* Adv desc PAYLEN shift */ #define IXGBE_ADVTXD_MACLEN_SHIFT 9 /* Adv ctxt desc mac len shift */ +#define IXGBE_ADVTXD_MACLEN_MASK (0x7F << IXGBE_ADVTXD_MACLEN_SHIFT) /* Adv ctxt desc mac len mask */ #define IXGBE_ADVTXD_VLAN_SHIFT 16 /* Adv ctxt vlan tag shift */ #define IXGBE_ADVTXD_TUCMD_IPV4 0x00000400 /* IP Packet Type: 1=IPv4 */ #define IXGBE_ADVTXD_TUCMD_IPV6 0x00000000 /* IP Packet Type: 0=IPv6 */ @@ -4030,6 +4081,7 @@ struct ixgbe_mac_operations { s32 (*init_uta_tables)(struct ixgbe_hw *); void (*set_mac_anti_spoofing)(struct ixgbe_hw *, bool, int); void (*set_vlan_anti_spoofing)(struct ixgbe_hw *, bool, int); + s32 (*toggle_txdctl)(struct ixgbe_hw *hw, u32 vf_index); s32 (*update_xcast_mode)(struct ixgbe_hw *, int); s32 (*set_rlpml)(struct ixgbe_hw *, u16); From nobody Sat Sep 28 09:26: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 4XG25J3Z3Cz5Y2jQ; Sat, 28 Sep 2024 09:26:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG25J2JmLz4s7F; Sat, 28 Sep 2024 09:26:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2EHziPwX23LrMl+rbv0s525hbncMQtX+BpeJeRl7Pfo=; b=QaTxtIh0ifjLjGmTNDCODnwGdbXkkG/Tt20LYwVcSk6zs6OoZgH5gx2s0Gg2Jx1adLRqcO tZq/wWzHeAPs3ODnjXp8Uz/P1b8ScIuzjHH9dzobuNZbtqFTXz7FyfMjmTECe3MIJ3cqnp IHlTAPyt9J50O7OuMPDmIMUFvLZki6M2imoLQNYIMfIUr+jdx7lL3rXwjxTET/z2cF7Gau Er8d9DfCFDEjV0RBpfBicmVBDpnvVUodWV1oIVal26DI7kOEH3j4iGawbSev6aiyOGYaJE o7+SSpC2ukD8JGreeKZYIFbPE2Mw+DaymkIDYKE1Oaf+2qh46KCDkmffcGAaSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2EHziPwX23LrMl+rbv0s525hbncMQtX+BpeJeRl7Pfo=; b=ilaZ6j6zCS5qB/yKSulqj4yuCA3sZHeY9XoXvD9TPim0befeAYrc0r2iSb84UImJXYWwaE QTuJbHtoedgpG9rxBEofoLVgBm5yrvljmrm96eMULaErX6foscD1RoIuako926Hh/UoSaZ qZMNwQ9f4T3+lm76jgMjkoLEUB4iz5XX/RdjnQoQUl/YrnjAtRAGrx+Oi1DbI9wKYA3Zd2 Aa8JnWABDx1gQwvEBeWKkkDSRHNRaXWYxkAC2hRkMkfKMeTznpy9aTZXEoGYXkOeNU4S/I ciMR3UGxX+s16BPqfcOae/W53zF1DlEuWwXytQTzq1QnL29c15tuHu5Jy1Sv/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515572; a=rsa-sha256; cv=none; b=RGNt5uEot/2ly+HNKIo2UTe+7xRHETlYBRlplMd8AakRTFm9m0NMGPUGjFnVM3RmYabwW5 bHcVzalUBj/7sqsdRx62LZ6rkvPewJeEfDIVFI4/zUekx0hYB4Vi2bQF/Ul1jbcO5TBZnD EC0E7Z02ywOC73iz0LaBqAA+nVOCmpp5FbYfoir86tjSK9L32S53KuHLts/HLa5kuPrced XAzaSJoHWp5TKHx9ZbY31auv8cG1GSkOfzxKgBlkA0YEPqY8BYJVyDcX4eEYQKKONK80YU eOD26GIg9ILcBNQfors474fKN6YQx4KyZYMBMOoAtISuZjZPs9dYbQOngbmtEg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25J1rTqzJrM; Sat, 28 Sep 2024 09:26:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9QC3k077240; Sat, 28 Sep 2024 09:26:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9QCgM077237; Sat, 28 Sep 2024 09:26:12 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:12 GMT Message-Id: <202409280926.48S9QCgM077237@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: deea1953820e - stable/13 - ixgbe: update if_sriov with ix-3.3.38 changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: deea1953820ef658e919ebcd86cb5939910d07de Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=deea1953820ef658e919ebcd86cb5939910d07de commit deea1953820ef658e919ebcd86cb5939910d07de Author: Kevin Bowling AuthorDate: 2024-09-21 09:56:19 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:25:23 +0000 ixgbe: update if_sriov with ix-3.3.38 changes There are some critical fixes here. The PF must communicate with each VF slot (vf->pool), only VFs shall use 0 for everything. IXGBE_FEATURE_SRIOV needs to be set before calling ixgbe_if_init(). With these changes, ixv(4) now attaches to VFs, but after bringing up VFs, the PF and VF still are not correctly passing traffic. (cherry picked from commit b6cd053e6da9bb8f77d2c6069260e52bbd53fa4a) --- sys/dev/ixgbe/if_sriov.c | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 0b94c8626b0e..4ee0784ba74a 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -95,26 +95,26 @@ ixgbe_align_all_queue_indices(struct ixgbe_softc *sc) /* Support functions for SR-IOV/VF management */ static inline void -ixgbe_send_vf_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) +ixgbe_send_vf_msg(struct ixgbe_hw *hw, struct ixgbe_vf *vf, u32 msg) { if (vf->flags & IXGBE_VF_CTS) msg |= IXGBE_VT_MSGTYPE_CTS; - ixgbe_write_mbx(&sc->hw, &msg, 1, vf->pool); + hw->mbx.ops[vf->pool].write(hw, &msg, 1, vf->pool); } static inline void ixgbe_send_vf_success(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); + ixgbe_send_vf_msg(&sc->hw, vf, msg | IXGBE_VT_MSGTYPE_SUCCESS); } static inline void ixgbe_send_vf_failure(struct ixgbe_softc *sc, struct ixgbe_vf *vf, u32 msg) { msg &= IXGBE_VT_MSG_MASK; - ixgbe_send_vf_msg(sc, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); + ixgbe_send_vf_msg(&sc->hw, vf, msg | IXGBE_VT_MSGTYPE_FAILURE); } static inline void @@ -210,7 +210,7 @@ ixgbe_ping_all_vfs(struct ixgbe_softc *sc) for (int i = 0; i < sc->num_vfs; i++) { vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) - ixgbe_send_vf_msg(sc, vf, IXGBE_PF_CONTROL_MSG); + ixgbe_send_vf_msg(&sc->hw, vf, IXGBE_PF_CONTROL_MSG); } } /* ixgbe_ping_all_vfs */ @@ -254,6 +254,17 @@ ixgbe_vf_set_default_vlan(struct ixgbe_softc *sc, struct ixgbe_vf *vf, IXGBE_WRITE_REG(hw, IXGBE_VMVIR(vf->pool), vmvir); } /* ixgbe_vf_set_default_vlan */ +static void +ixgbe_clear_vfmbmem(struct ixgbe_softc *sc, struct ixgbe_vf *vf) +{ + struct ixgbe_hw *hw = &sc->hw; + uint32_t vf_index = IXGBE_VF_INDEX(vf->pool); + uint16_t mbx_size = hw->mbx.size; + uint16_t i; + + for (i = 0; i < mbx_size; ++i) + IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf_index), i, 0x0); +} /* ixgbe_clear_vfmbmem */ static boolean_t ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) @@ -310,6 +321,8 @@ ixgbe_process_vf_reset(struct ixgbe_softc *sc, struct ixgbe_vf *vf) // XXX clear multicast addresses ixgbe_clear_rar(&sc->hw, vf->rar_index); + ixgbe_clear_vfmbmem(sc, vf); + ixgbe_toggle_txdctl(&sc->hw, IXGBE_VF_INDEX(vf->pool)); vf->api_ver = IXGBE_API_VER_UNKNOWN; } /* ixgbe_process_vf_reset */ @@ -371,7 +384,7 @@ ixgbe_vf_reset_msg(struct ixgbe_softc *sc, struct ixgbe_vf *vf, uint32_t *msg) vf->flags |= IXGBE_VF_CTS; - resp[0] = IXGBE_VF_RESET | ack | IXGBE_VT_MSGTYPE_CTS; + resp[0] = IXGBE_VF_RESET | ack; bcopy(vf->ether_addr, &resp[1], ETHER_ADDR_LEN); resp[3] = hw->mac.mc_filter_type; ixgbe_write_mbx(hw, resp, IXGBE_VF_PERMADDR_MSG_LEN, vf->pool); @@ -582,7 +595,8 @@ ixgbe_process_vf_msg(if_ctx_t ctx, struct ixgbe_vf *vf) hw = &sc->hw; - error = ixgbe_read_mbx(hw, msg, IXGBE_VFMAILBOX_SIZE, vf->pool); + error = hw->mbx.ops[vf->pool].read(hw, msg, IXGBE_VFMAILBOX_SIZE, + vf->pool); if (error != 0) return; @@ -643,13 +657,13 @@ ixgbe_handle_mbx(void *context) vf = &sc->vfs[i]; if (vf->flags & IXGBE_VF_ACTIVE) { - if (hw->mbx.ops[0].check_for_rst(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_rst(hw, vf->pool) == 0) ixgbe_process_vf_reset(sc, vf); - if (hw->mbx.ops[0].check_for_msg(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_msg(hw, vf->pool) == 0) ixgbe_process_vf_msg(ctx, vf); - if (hw->mbx.ops[0].check_for_ack(hw, vf->pool) == 0) + if (hw->mbx.ops[vf->pool].check_for_ack(hw, vf->pool) == 0) ixgbe_process_vf_ack(sc, vf); } } @@ -698,8 +712,10 @@ ixgbe_if_iov_init(if_ctx_t ctx, u16 num_vfs, const nvlist_t *config) } sc->num_vfs = num_vfs; - ixgbe_if_init(sc->ctx); + ixgbe_init_mbx_params_pf(&sc->hw); + sc->feat_en |= IXGBE_FEATURE_SRIOV; + ixgbe_if_init(sc->ctx); return (retval); @@ -769,7 +785,7 @@ ixgbe_init_vf(struct ixgbe_softc *sc, struct ixgbe_vf *vf) ixgbe_vf_enable_transmit(sc, vf); ixgbe_vf_enable_receive(sc, vf); - ixgbe_send_vf_msg(sc, vf, IXGBE_PF_CONTROL_MSG); + ixgbe_send_vf_msg(&sc->hw, vf, IXGBE_PF_CONTROL_MSG); } /* ixgbe_init_vf */ void From nobody Sat Sep 28 09:26: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 4XG25L0rNFz5Y36P; Sat, 28 Sep 2024 09:26: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 4XG25K4r6lz4s5S; Sat, 28 Sep 2024 09:26:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gCs3j7OqP+8P933fetQ6kI8+Am60LeTuEimO5JRONHM=; b=upsZRbqfw4nB8NnmBwuCUSARIPuTPoyoYPcVLsAOndymG2eI8MzCH3EzuMWT6/EMEAHw/b pY1remULCmjfL581KbHxaEyjl1jXu7rYZ6XaaAMXAW155+CtZmNln4wYXui9Vov1rhw6+b EsmHbFO5q1vezclPO8+TJLVI6qY6ZbByZbbR/+7IUwpreQZIHoPJfRePgwKfqraNTO4Jhj oOww0ckeIrMIYEttBfbjfpqjxgqX3h7ahZos+JaAs3Xx0vT2ccVKEx1MjTuY0/wPZ/Qc4s 2YMGd0EEBldrbOv08H83Coio/4SfSw+inL8G94AzsoahMfLbk9k7+cB1TQhucw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727515573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gCs3j7OqP+8P933fetQ6kI8+Am60LeTuEimO5JRONHM=; b=ZcNj+3Be0RV7oPq+Pe2JDkzZr978mooFLljC/IvLrqmZik5UotJYcoSx3NJYyRW1uUc70p BQhgPGOgudr4stEyTELk6K454a41K0E6KDKaqvEmL5MbqijtROSi31dTNhoAXTuOInRYkC wZT5OqyHiXklEu4capgl6HjWnCz6536OrNP8Q6mc6tWOGaiDuha3rDYTsVfM0RpjLK11er x23QIHpIC+/37LDli6iCRliqo8+mH0dvt+Mt+ryKyA3GpyiH1l7sMCVcQjnA2vBqn1tfTJ 4tkhTMaKfUnFSbu8JUIZ/SHwtfI8iFcEahNaG6JcapWCLckNe83zbm6Eqhv3dQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727515573; a=rsa-sha256; cv=none; b=ZeLUGj8/V8x7Iw6MHJ14bVVN/+4J+XFc+lrZtP/afDf+6aehONhOZ1RjL2rM8CWMl1HmYm lrE9OOvCoSbhx58dCl8huqjpFRy/PjfOoq3l3Z62BB8yATWbI4wgEqvyh0k7XwFoQ15SMH PNzTwOM3vcXjCIeIxcZ1gjWA4bOjEduSnJ3iCisuMCLSzAIQ9hZDPCJs2L21HI1NkiH7aO NZMaSzIm9FAc/46QYQRLKTnAJj52fZJMe7y3rhxUMjHYgztXsFeELUIIwKep5mSChsybeL j+eHQ14PIuViuBYfyPryLgnfN8XIY9o5Idsio6cSuyXGsQZppb/Q5T7pLiY18w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG25K2nkxzK45; Sat, 28 Sep 2024 09:26:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9QDe8077280; Sat, 28 Sep 2024 09:26:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9QDbD077277; Sat, 28 Sep 2024 09:26:13 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:26:13 GMT Message-Id: <202409280926.48S9QDbD077277@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: 76e57cf9ded8 - stable/13 - ixgbe: fix fw_recovery_mode callout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 76e57cf9ded8df8263a7b0e5eac56840821a0634 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=76e57cf9ded8df8263a7b0e5eac56840821a0634 commit 76e57cf9ded8df8263a7b0e5eac56840821a0634 Author: Kevin Bowling AuthorDate: 2024-09-21 11:10:11 +0000 Commit: Kevin Bowling CommitDate: 2024-09-28 09:25:43 +0000 ixgbe: fix fw_recovery_mode callout Need to pass the softc in with the callout arg (cherry picked from commit a924b5ee6a1b4456b5bde979bb9e15d18726de4f) --- sys/dev/ixgbe/if_ix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 2af927996aca..23e378ba70c6 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -1151,7 +1151,7 @@ ixgbe_if_attach_post(if_ctx_t ctx) callout_init(&sc->fw_mode_timer, true); /* Start the task */ - callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, 0); + callout_reset(&sc->fw_mode_timer, hz, ixgbe_fw_mode_timer, sc); } return (0); From nobody Sat Sep 28 10:38: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 4XG3hF0dH6z5X8V5; Sat, 28 Sep 2024 10:38: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 4XG3hD6yHQz46VJ; Sat, 28 Sep 2024 10:38:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jFMtQ1z1NWufItF3k5M31mO5Wn0FiBcUPyJIakvCLoY=; b=dtWqJh3c3Km4RvtQA/lWggPPeoy+jS403Ihw6tw7uT+hjXtwa4qAZobcDUEeSielAjRZ03 T6HU9AS/hR4jUpM5EvsapChMFQ8tqan6By2mCxpyToRx8zQQP+unTLGO31UIBJ0cAsjGB+ r70On2DhpKXbSsHm7C67mRaBtOedHy2La0c0/Gj7IN8BMcF4q1NbSyCmlZFX/dlskkWmB9 t77I8WLZBmCgo/xGAWkdUiZghMtpxvrkH7V8duST7k9eOJ4WwcWaFBVAI1hHvPaXVX2n7+ EUfKCH6B6Q3DVWbxpROtszHj1B0nA+NPELk9vDfuFfBOYvBDs3p1GZGTimBcDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jFMtQ1z1NWufItF3k5M31mO5Wn0FiBcUPyJIakvCLoY=; b=vSfA9vaZwojcwvUTMt1iwW4La3JxWz5Y2x4H53Cq5R4DfOmreA947Ex5koqKCae3mJtRWj vy73NFDCYChwWLvX67ukMCJjkaW7S/a7nwmZQvrzSFmvrz+oFG6s2+aZoDWO/QDw3RgvsT uAhd2c1gMN4o+XKZUiLZGy4TP7jtMTEAliETfMP9nAnZDFo4s0cMT+/dkpN4ut4rfDwFwN LMgFTWvsxs63nVR1MSrrETmtNErlEAfZxjX8ECI+Ut1YhCIxFwJqo3dn/xem7nR7QaH+hN oYDE+3FoB+04rugMS78oBrd9Xx7wTMwtEMB+bvgnKo71v1NZzXzXHdLjqX5WwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519885; a=rsa-sha256; cv=none; b=QlYv/rLLfYyHNjqiLIJQylICcaaj0Q9jSFbbB6nmOZBxOT0rJDh6kxGXYDcTwnINFFsGNQ 75lbCIsj4fv5zHuRVZkO9w1bkCkk2heJOiia5BUPizaDMOSQuSvtt4JRpV29xiq4qseG+a j1F9hME+/h96kjpWJWi9qmjGZn1gH53W0JnXZ6LV1iQlrL/QBhZxyJtQnvNZBMruxSe8Hu ai9GHTIlkT+TLh64FKvq2DWmp+0N8wd9RrYBVcCkU/JlhzqjXAfKCCa+ErRony/zA0Dymg huLNRwqsc9A2bWskT7PgaCSZVjVhOmlDFjMTFxIkJE1qcYBoVJH07hd7EjsqmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hD686vzKyx; Sat, 28 Sep 2024 10:38: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 48SAc4LK097335; Sat, 28 Sep 2024 10:38:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAc4M7097332; Sat, 28 Sep 2024 10:38:04 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:04 GMT Message-Id: <202409281038.48SAc4M7097332@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ff26fd77ee44 - stable/14 - libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ff26fd77ee44de1b2a4c0a527deb6eb44c2fa238 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ff26fd77ee44de1b2a4c0a527deb6eb44c2fa238 commit ff26fd77ee44de1b2a4c0a527deb6eb44c2fa238 Author: Bjoern A. Zeeb AuthorDate: 2024-06-10 11:34:25 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:11 +0000 libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate Checking the first nibble of the IPv6 address to be 0 and then excluding two well known cases (v4-mapped, loopback) leaves us with more cases where the first nibble could be 0, e.g., the RFC 6052, 2.1 Well-Known Prefix 64:ff9b::/96. It is not practical to track them all and it is not clear what lead to this special casing originally, so remove them. While here also remove the IN6_IS_ADDR_LINKLOCAL() + NI_NUMERICHOST case as link-local address resolution does exist. We do leave the IN6_IS_ADDR_MULTICAST() case for now as I could not find any references to any official reverse lookups for these. Adding comments for more case (and some historic behaviour) in order to make it easier to follow the logic. PR: 279618 Fixes: 6cb9418289f90 Reviewed by: hrs Differential Revision: https://reviews.freebsd.org/D45547 (cherry picked from commit c179937b986ec3959d89bfeb8eed0a6f58a28649) --- lib/libc/net/getnameinfo.c | 54 +++++++++++++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/lib/libc/net/getnameinfo.c b/lib/libc/net/getnameinfo.c index 7ab490abb67f..01bceaa98fce 100644 --- a/lib/libc/net/getnameinfo.c +++ b/lib/libc/net/getnameinfo.c @@ -229,24 +229,44 @@ getnameinfo_inet(const struct afd *afd, case AF_INET6: { const struct sockaddr_in6 *sin6; + sin6 = (const struct sockaddr_in6 *)sa; - switch (sin6->sin6_addr.s6_addr[0]) { - case 0x00: - if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) - ; - else if (IN6_IS_ADDR_LOOPBACK(&sin6->sin6_addr)) - ; - else - flags |= NI_NUMERICHOST; - break; - default: - if (IN6_IS_ADDR_LINKLOCAL(&sin6->sin6_addr)) { - flags |= NI_NUMERICHOST; - } - else if (IN6_IS_ADDR_MULTICAST(&sin6->sin6_addr)) - flags |= NI_NUMERICHOST; - break; - } + + /* + * https://pubs.opengroup.org/onlinepubs/9699919799/functions/getnameinfo.html + * "[IP6] [Option Start] If the socket address structure + * contains an IPv4-mapped IPv6 address or an IPv4-compatible + * IPv6 address, the implementation shall extract the embedded + * IPv4 address and lookup the node name for that IPv4 address. + * [Option End]" + * => getipnodebyaddr() handles this case for us. + * => in case of NI_NUMERICHOST being set, inet_ntop[6] will + * handle it too. + * + * "If the address is the IPv6 unspecified address ( "::" ), + * a lookup shall not be performed and the behavior shall be + * the same as when the node's name cannot be located." + * => getipnodebyaddr() handles this case for us. + * => in case of NI_NUMERICHOST being set, + * ip6_parsenumeric() -> inet_ntop[6] will handle it too. + */ + + /* + * We used to exclude link-local from lookups. + * Even though calles in the resolver chain may not (yet) + * properly deal with them, we no longer do as for link-local + * there is a path to resolve these. See: + * RFC 6303 4.5. IPv6 Link-Local Addresses + * RFC 6762 4. Reverse Address Mapping + * + * XXX For IPv6 MC the only reference found was + * https://www.ietf.org/archive/id/draft-michaelson-as112-ipv6-02.html + * but there are also no "empty zone"s for x.0.f.f.ip6.arpa + * in DNS servers. Keep catching it here for now and + * do not attempt name resolution but return the address string. + */ + if (IN6_IS_ADDR_MULTICAST(&sin6->sin6_addr)) + flags |= NI_NUMERICHOST; } break; #endif From nobody Sat Sep 28 10:38: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 4XG3hG2Tw5z5X8PZ; Sat, 28 Sep 2024 10:38: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 4XG3hG0JWrz46mX; Sat, 28 Sep 2024 10:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w25uqO8mHEL3yboGbCV7ioUkf64JMjLIRnz6K0etaBA=; b=sN15J0B5+Ee2ZSA2pMst1QbBNHVmzWcTvvhCN2c5zfJnELUo+/e6xafKJeLJ0JETRtc/4u FMrx0eQi439Uc6VpUvtBiGrtUCah57dT7quHyFYbAKiXX562EYmnTQyf9505OBn2aB3HSV GFAUMi0a27ZeCnrJohMnnMese+XbFnp8F3Z2AuRl+hsia6AJKjyBkLg4q2YQzeu2O92/Pj rKHkidNJLlwIzH7/sYithOPcwsq5crjPTzemSltDUoHUmxFGOe4/1XFPi4Qzc2sLHb6csS E4pTm2H5tE98M8zfhnkInaaRzByAlsEtWSEeP4+Kahgc/RetDOUzQgToiBKyJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w25uqO8mHEL3yboGbCV7ioUkf64JMjLIRnz6K0etaBA=; b=B3cheRH/j2AodYc0/IOPXtY4lEY4Y1plWj148sFezTE/3DYWpWtS5q3tyS2q6jQt4llktL qlxzIV78SdhCOf2XXI3U0GBI6+OpQkTgCfGmGFknNBpUqkQ6lqQjiU+QHSUtCPxVNi2/q8 mbnNkBNPcsRR8Mg/+RoR3aGj8KChq+Q83u08B6M+wv14ZA6R2tPf3DvrGwV71/+dI6wiqe sG5/LU1oqWX+GdwJF+OCYOxhejGf3tDuDqACCOmlZJnh80T4pwk3f91l9PWYYiBmRVOyrz mllq1sRLlEKYWpI4jnZUFdZ1417NeaJd80MqnoBzWz1GFd75zJ0B5jooQSo/lA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519886; a=rsa-sha256; cv=none; b=X0mDOWIJZ1AEkWpS74rx8JxVhfywkZALaT5tAmBmVQ/LLnvsl9RWDbXe7c4b2yK+xtdCaX +Djxfzd8jTR8zn7jqd5fKWkZKdQzw2Zx7oFqNvIvqn3y6xysgHj0Nax5o8DU1SYfOjLsQb GGfn/3aYY1hGlB6hax46gTrycXljypREr921PBIZGDw4qC5kQ8cCvM8FUcxY+e3/744NUn wYJQdDpS/hSRUiNB7N5u9f6oZVRwNqTrI1ESv78cRu2VXBtvdj4EAAthiaOfiZz+4TFcQr B/4zk8C5WMgH8PHFBLCQfd+nD5qD5xUmmaeOcidC9oby/dtMAwNY7XXu9VD/7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hF6sS8zLYp; Sat, 28 Sep 2024 10:38: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 48SAc5hh097395; Sat, 28 Sep 2024 10:38:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAc5vE097392; Sat, 28 Sep 2024 10:38:05 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:05 GMT Message-Id: <202409281038.48SAc5vE097392@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d60a0ffecfdf - stable/14 - rc: network.subr update consitency with older change (v6/v4 order) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d60a0ffecfdf6f29ff52c9b71d2d5b6d2a34fddb Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d60a0ffecfdf6f29ff52c9b71d2d5b6d2a34fddb commit d60a0ffecfdf6f29ff52c9b71d2d5b6d2a34fddb Author: Bjoern A. Zeeb AuthorDate: 2024-09-04 19:03:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:11 +0000 rc: network.subr update consitency with older change (v6/v4 order) As of 1b5be7204eaeeaf58eefdebe5b308f90792c693b we setup parts of IPv6 before IPv4 if configured. For consistency change a case in ifn_start() calling ipv6_up() before ipv4_up() and reverse in ifn_stop(). Reviewed by: zlei Differential Revision: https://reviews.freebsd.org/D33426 (cherry picked from commit ed4d2a54fc7a0397c2042f496f176305ca03ebdd) --- libexec/rc/network.subr | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/network.subr b/libexec/rc/network.subr index 257643f48ba5..931fbec19a60 100644 --- a/libexec/rc/network.subr +++ b/libexec/rc/network.subr @@ -46,8 +46,8 @@ ifn_start() ifscript_up ${ifn} && cfg=0 ifconfig_up ${ifn} && cfg=0 if ! noafif $ifn; then - afexists inet && ipv4_up ${ifn} && cfg=0 afexists inet6 && ipv6_up ${ifn} && cfg=0 + afexists inet && ipv4_up ${ifn} && cfg=0 fi childif_create ${ifn} && cfg=0 @@ -67,8 +67,8 @@ ifn_stop() [ -z "$ifn" ] && err 1 "ifn_stop called without an interface" if ! noafif $ifn; then - afexists inet6 && ipv6_down ${ifn} && cfg=0 afexists inet && ipv4_down ${ifn} && cfg=0 + afexists inet6 && ipv6_down ${ifn} && cfg=0 fi ifconfig_down ${ifn} && cfg=0 ifscript_down ${ifn} && cfg=0 From nobody Sat Sep 28 10:38: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 4XG3hH4Mcpz5X8Xc; Sat, 28 Sep 2024 10:38: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 4XG3hH1vKlz46mr; Sat, 28 Sep 2024 10:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X5nX1q2pgdpJCzoBMRKEdsSy4P/btljbx250/e9vO/U=; b=vnjEqQdyiHenkasE9YKUz6pkOy4bcEE8hRADyWeF5Npoyz5Qe2aa1R3XRXurnviETy1Gcw Y0X3kerT5qdQyrJEdOZ5n3WHx5ZwLQ3HbH8mNwvpTaaNxw28zJEERM7SnsvrD8+i5PccRr p2+bDd7U0xuGbHtIKGv4wlccw26RJkY0Ktq97e/NwHKBk8yYRKOqZmN/SW4yoKxR9JHNlu eDkB7xxALG1Zbwoav0QOvVovYZK0LUpl8hW6ZlGFVrkzGP0Lw1/HC9aaC3dz6A5cMoZ28e fWAoD0Fl2ise4nZcJmgWK9m0pxRx9/bTgQvb/sGewq18vaBhWQ8CikSAqhmH1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X5nX1q2pgdpJCzoBMRKEdsSy4P/btljbx250/e9vO/U=; b=Be5qa/c2hpEZVvBqdCkX2reZU+ecKwUYXiBkHYrN9NRqbwGtFYVkps7Ya/ea2XUgpls9Xx kyXlW89CfRT/2qEUERTVc9QYuOsq4w0Y/+C2jUYWYxgeEP8My6kndjmh2sw66LDDpD+hhc ybeImbZC0jkVv2tS3+9vRE5qouOUOs7tTosmb/cYB79hSgJh3YvM5HdbSri6xUO0CzAFK5 pvGkIC3GvrZ2p84jQBHV8dCKhfAWmigQtvzX4jbUeRfju6bT/aHAjFPTd2upEjeQSJOGSn X952aOMBaWSCgjSI3sKQBl8RF97x4L6iL3FjPsNqXqhYSvX0FyGg2MexQBEhLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519887; a=rsa-sha256; cv=none; b=h2uit+aFemNR3D+rWgk0wbDXfSKDPpJolyyMhOO8CluvwrOQRJJYUJD3oHs5Ny5bs+rrP6 yMV/lfYDyne3YYpiyNp3hjE9ngz0qEG8bS9nSrszYXKVzj1cgmF2UXuLJQfnap97sKEiQY Y1HTHRQhhzvRC06rIIiZJtCSk5y2vWSJIDTbRHpZZ43HE4ZfvnldWza4VhbXZlnwiZFLfJ E54Hanzzd0IlysUpxIUBdpFG9PAFiuNReS5odu7Xrp1qo/daxb+JEsyV9/pxnZSQOw5Xg0 z7lteHQyFgwxg0IMCJumZjUjyruzI4Vn7ntZNjSqz/eASk2oNHn1MJvOzYCkYg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hH12YRzLrB; Sat, 28 Sep 2024 10:38: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 48SAc7DL097444; Sat, 28 Sep 2024 10:38:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAc7Eq097440; Sat, 28 Sep 2024 10:38:07 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:07 GMT Message-Id: <202409281038.48SAc7Eq097440@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6f58191b301d - stable/14 - mmccam: fix mmcsd disk aliases List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6f58191b301df3a43aea40c2c98d62f8178e2b60 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6f58191b301df3a43aea40c2c98d62f8178e2b60 commit 6f58191b301df3a43aea40c2c98d62f8178e2b60 Author: Bjoern A. Zeeb AuthorDate: 2024-01-21 19:56:27 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:11 +0000 mmccam: fix mmcsd disk aliases For EXT_CSD_PART_CONFIG_ACC_BOOT and possibly others with suffixes we fail to create proper disk aliases (symlinks), which shows up as g_dev_taste: make_dev_alias_p() failed (name=mmcsd0, error=17) In this case we ended up with the followng two: /dev/mmcsd0 -> sdda0 /dev/mmcsd1 -> sdda0boot1 Note that (i) it should be mmcsd0boot1 and not mmcsd1 and that (ii) there is no mmcsd0boot0 (failed above as it tried to create a second mmcsd0). Adjust the code (using a highly simplified version--compared to my original approach--suggested by imp) using an extended format string with (sdda/mmcsd) prefix as first argument to create proper names. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D43538 (cherry picked from commit a84d91d81a6f3eeb4949c4fb3440e0634f2b953a) --- sys/cam/mmc/mmc_da.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/sys/cam/mmc/mmc_da.c b/sys/cam/mmc/mmc_da.c index 0809de6e0764..de6e89a4da38 100644 --- a/sys/cam/mmc/mmc_da.c +++ b/sys/cam/mmc/mmc_da.c @@ -89,9 +89,11 @@ typedef enum { SDDA_STATE_PART_SWITCH, } sdda_state; -#define SDDA_FMT_BOOT "sdda%dboot" -#define SDDA_FMT_GP "sdda%dgp" -#define SDDA_FMT_RPMB "sdda%drpmb" +/* Purposefully ignore a '%d' argument to snprintf in SDDA_FMT! */ +#define SDDA_FMT "%s" +#define SDDA_FMT_BOOT "%s%dboot" +#define SDDA_FMT_GP "%s%dgp" +#define SDDA_FMT_RPMB "%s%drpmb" #define SDDA_LABEL_ENH "enh" #define SDDA_PART_NAMELEN (16 + 1) @@ -1481,7 +1483,7 @@ finish_hs_tests: sdda_process_mmc_partitions(periph, start_ccb); } else if (mmcp->card_features & CARD_FEATURE_MEMORY) { /* For SD[HC] cards, just add one partition that is the whole card */ - if (sdda_add_part(periph, 0, "sdda", + if (sdda_add_part(periph, 0, SDDA_FMT, periph->unit_number, mmc_get_media_size(periph), sdda_get_read_only(periph, start_ccb)) == false) @@ -1526,7 +1528,7 @@ sdda_add_part(struct cam_periph *periph, u_int type, const char *name, part->type = type; part->ro = ro; part->sc = sc; - snprintf(part->name, sizeof(part->name), name, periph->unit_number); + snprintf(part->name, sizeof(part->name), name, "sdda", periph->unit_number); /* * Due to the nature of RPMB partition it doesn't make much sense @@ -1593,8 +1595,11 @@ sdda_add_part(struct cam_periph *periph, u_int type, const char *name, part->disk->d_fwsectors = 0; part->disk->d_fwheads = 0; - if (sdda_mmcsd_compat) - disk_add_alias(part->disk, "mmcsd"); + if (sdda_mmcsd_compat) { + char cname[SDDA_PART_NAMELEN]; /* This equals the mmcsd namelen. */ + snprintf(cname, sizeof(cname), name, "mmcsd", periph->unit_number); + disk_add_alias(part->disk, cname); + } /* * Acquire a reference to the periph before we register with GEOM. @@ -1683,7 +1688,7 @@ sdda_process_mmc_partitions(struct cam_periph *periph, union ccb *ccb) * data area in case partitions are supported. */ ro = sdda_get_read_only(periph, ccb); - sdda_add_part(periph, EXT_CSD_PART_CONFIG_ACC_DEFAULT, "sdda", + sdda_add_part(periph, EXT_CSD_PART_CONFIG_ACC_DEFAULT, SDDA_FMT, periph->unit_number, mmc_get_media_size(periph), ro); sc->part_curr = EXT_CSD_PART_CONFIG_ACC_DEFAULT; From nobody Sat Sep 28 10:38: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 4XG3hJ4Rm9z5X85F; Sat, 28 Sep 2024 10:38: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 4XG3hJ2QLDz46kj; Sat, 28 Sep 2024 10:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519888; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j3fkGKtDZP9DIj/bO/3nn0fyg8FnoUuImTJy8NVlPJA=; b=EiWWm/9JnQf3AfpUSZ8MSLYosV6OHD3tCACeS6STcpt5v3lQoE/DCMRZd+juopGO3DnAX7 y1nsmIIGjypoD3sKLAQcUyHdvDAsgyHfE57VlFidlyYVpUsJjotudU2OwNbrAjFIlDdrWn ImGV9kMXicsk19KzTMoMq1WKwoDNJ3oj/HjWS2lh3xsKYv1CTwJFYmil6LS6zFWWvdpTS+ 3Ny0ho1mmwmqNVlSh5BpyvKcQ6dra0YM3MfSgVoQYabPNVGUMGAldQj3hAZD1kjHaWSOl7 nHpmZy+ND+Fx8T1oRnJpwrWIm1vH7iOZ6VLdbnco3ZuwoGDHCDZBK02v3sl/Wg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519888; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j3fkGKtDZP9DIj/bO/3nn0fyg8FnoUuImTJy8NVlPJA=; b=ErgV9YRtPD4Mc9KYB6Xh97mvmWkM6JPIg5ke0S+zvYPgZyIA0kP2x62lril8QY5km2VqiL q97YBwB6PG3yzhDl3mYzztYfjE4ms8QjfDHuLQ17na0LqCCdkn2TlkP0Gq5i5+YPDPrz+H yqsDSL22BI4AMLKotkW5zk2+Zhiw3XYhPKREjamu+tnj7KN96AmmyvBYPPO/xeCbzgs3dM +8sV3+T0xbbk+qOfWuierD4mbFnEnemj9u/Bkt5TsfUaCP0/61BcivbczuEa1mK7VJjse9 Szlhh3CewsFoajr1SCLzoThU3wHJyh64bTAKkIBnN2+HilCyxv4ld6yULBhV1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519888; a=rsa-sha256; cv=none; b=U4kaR9Dkhqy60fgxyVsRnjqzzJeFrmSXu7IEsTSXHU2UoXkRFLFELldTtaK1aopI+1FZ43 LX2OfkAa9nuhSzl6pu3P6E4uMjrYCx00Ugc/SYc2TRywsY7fI9T+W2Dkaga8jg6ZpQWP5Z a9vYgrurPzUFQSxtA9bsxd2pyyYoVNTMIDHqrbGjCTVySM2fMOYB+SOwa4wYD+W7iEofk9 wdExWxiNVFjkHxipl5tVrBUGXDfe4npv8DmbpdwnYsnODRJ4JSlcShqfOYQEOtyFiqztD/ ReLQgTGtkIAEbSw4Tk3s9kNQt/c64VsPhfx6kpw/iX7D5d+SKj16lG+OuyGE5Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hJ1l7gzLt3; Sat, 28 Sep 2024 10:38: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 48SAc82W097498; Sat, 28 Sep 2024 10:38:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAc8LH097495; Sat, 28 Sep 2024 10:38:08 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:08 GMT Message-Id: <202409281038.48SAc8LH097495@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1eb6c9cfc9b0 - stable/14 - malloc(9): extend contigmalloc(9) by a "slab cookie" List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1eb6c9cfc9b0aa4d3bcef342faed25391c421b24 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1eb6c9cfc9b0aa4d3bcef342faed25391c421b24 commit 1eb6c9cfc9b0aa4d3bcef342faed25391c421b24 Author: Bjoern A. Zeeb AuthorDate: 2024-06-30 19:00:44 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:11 +0000 malloc(9): extend contigmalloc(9) by a "slab cookie" Extend kern_malloc.c internals to also cover contigmalloc(9) by a "slab cookie" and not just malloc/malloc_large. This allows us to call free(9) even on contigmalloc(9) addresses and deprecate contigfree(9). Update the contigmalloc(9) man page accordingly. The way this is done (free(9) working for contigmalloc) will hide the UMA/VM bits from a consumer which may otherwise need to know whether the original allocation was by malloc or contigmalloc by looking at the cookie (likely via an accessor function). This simplifies the implementation of consumers of mixed environments a lot. This is preliminary work to allow LinuxKPI to be adjusted to better play by the rules Linux puts out for various allocations. Most of this was described/explained to me by jhb. One may observe that realloc(9) is currently unchanged (and contrary to [contig]malloc/[contig]free an implementation may need access the "slab cookie" information given it will likely be implementation dependent which allocation type to use if size changes beyond the usable size of the initial allocation). Described by: jhb Sponsored by: The FreeBSD Foundation Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D45812 (cherry picked from commit 9e6544dd6e02c46b805d11ab925c4f3b18ad7a4b) --- share/man/man9/contigmalloc.9 | 9 ++- sys/kern/kern_malloc.c | 128 +++++++++++++++++++++++++++++++++--------- 2 files changed, 108 insertions(+), 29 deletions(-) diff --git a/share/man/man9/contigmalloc.9 b/share/man/man9/contigmalloc.9 index f52cb7bde0ed..9e7086885870 100644 --- a/share/man/man9/contigmalloc.9 +++ b/share/man/man9/contigmalloc.9 @@ -23,7 +23,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 30, 2018 +.Dd July 22, 2024 .Dt CONTIGMALLOC 9 .Os .Sh NAME @@ -113,6 +113,13 @@ function deallocates memory allocated by a previous call to .Fn contigmalloc or .Fn contigmalloc_domainset . +Its use is deprecated in favor of +.Xr free 9 +which no longer requires the caller to know the +.Fa size +and also accepts +.Dv NULL +as an address. .Sh IMPLEMENTATION NOTES The .Fn contigmalloc diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 08530b2a8930..90fc88480a40 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -118,6 +118,16 @@ dtrace_malloc_probe_func_t __read_mostly dtrace_malloc_probe; #define DEBUG_REDZONE_ARG #endif +typedef enum { + SLAB_COOKIE_SLAB_PTR = 0x0, + SLAB_COOKIE_MALLOC_LARGE = 0x1, + SLAB_COOKIE_CONTIG_MALLOC = 0x2, +} slab_cookie_t; +#define SLAB_COOKIE_MASK 0x3 +#define SLAB_COOKIE_SHIFT 2 +#define GET_SLAB_COOKIE(_slab) \ + ((slab_cookie_t)(uintptr_t)(_slab) & SLAB_COOKIE_MASK) + /* * When realloc() is called, if the new size is sufficiently smaller than * the old size, realloc() will allocate a new, smaller block to avoid @@ -453,6 +463,21 @@ malloc_type_freed(struct malloc_type *mtp, unsigned long size) * If M_NOWAIT is set, this routine will not block and return NULL if * the allocation fails. */ +#define IS_CONTIG_MALLOC(_slab) \ + (GET_SLAB_COOKIE(_slab) == SLAB_COOKIE_CONTIG_MALLOC) +#define CONTIG_MALLOC_SLAB(_size) \ + ((void *)(((_size) << SLAB_COOKIE_SHIFT) | SLAB_COOKIE_CONTIG_MALLOC)) +static inline size_t +contigmalloc_size(uma_slab_t slab) +{ + uintptr_t va; + + KASSERT(IS_CONTIG_MALLOC(slab), + ("%s: called on non-contigmalloc allocation: %p", __func__, slab)); + va = (uintptr_t)slab; + return (va >> SLAB_COOKIE_SHIFT); +} + void * contigmalloc(unsigned long size, struct malloc_type *type, int flags, vm_paddr_t low, vm_paddr_t high, unsigned long alignment, @@ -462,8 +487,11 @@ contigmalloc(unsigned long size, struct malloc_type *type, int flags, ret = (void *)kmem_alloc_contig(size, flags, low, high, alignment, boundary, VM_MEMATTR_DEFAULT); - if (ret != NULL) + if (ret != NULL) { + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)ret, NULL, CONTIG_MALLOC_SLAB(size)); malloc_type_allocated(type, round_page(size)); + } return (ret); } @@ -476,25 +504,28 @@ contigmalloc_domainset(unsigned long size, struct malloc_type *type, ret = (void *)kmem_alloc_contig_domainset(ds, size, flags, low, high, alignment, boundary, VM_MEMATTR_DEFAULT); - if (ret != NULL) + if (ret != NULL) { + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)ret, NULL, CONTIG_MALLOC_SLAB(size)); malloc_type_allocated(type, round_page(size)); + } return (ret); } /* - * contigfree: + * contigfree (deprecated). * * Free a block of memory allocated by contigmalloc. * * This routine may not block. */ void -contigfree(void *addr, unsigned long size, struct malloc_type *type) +contigfree(void *addr, unsigned long size __unused, struct malloc_type *type) { - - kmem_free(addr, size); - malloc_type_freed(type, round_page(size)); + free(addr, type); } +#undef IS_CONTIG_MALLOC +#undef CONTIG_MALLOC_SLAB #ifdef MALLOC_DEBUG static int @@ -564,22 +595,19 @@ malloc_dbg(caddr_t *vap, size_t *sizep, struct malloc_type *mtp, /* * Handle large allocations and frees by using kmem_malloc directly. */ -static inline bool -malloc_large_slab(uma_slab_t slab) -{ - uintptr_t va; - - va = (uintptr_t)slab; - return ((va & 1) != 0); -} - +#define IS_MALLOC_LARGE(_slab) \ + (GET_SLAB_COOKIE(_slab) == SLAB_COOKIE_MALLOC_LARGE) +#define MALLOC_LARGE_SLAB(_size) \ + ((void *)(((_size) << SLAB_COOKIE_SHIFT) | SLAB_COOKIE_MALLOC_LARGE)) static inline size_t malloc_large_size(uma_slab_t slab) { uintptr_t va; va = (uintptr_t)slab; - return (va >> 1); + KASSERT(IS_MALLOC_LARGE(slab), + ("%s: called on non-malloc_large allocation: %p", __func__, slab)); + return (va >> SLAB_COOKIE_SHIFT); } static caddr_t __noinline @@ -591,8 +619,8 @@ malloc_large(size_t size, struct malloc_type *mtp, struct domainset *policy, size = roundup(size, PAGE_SIZE); va = kmem_malloc_domainset(policy, size, flags); if (va != NULL) { - /* The low bit is unused for slab pointers. */ - vsetzoneslab((uintptr_t)va, NULL, (void *)((size << 1) | 1)); + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)va, NULL, MALLOC_LARGE_SLAB(size)); uma_total_inc(size); } malloc_type_allocated(mtp, va == NULL ? 0 : size); @@ -615,6 +643,8 @@ free_large(void *addr, size_t size) kmem_free(addr, size); uma_total_dec(size); } +#undef IS_MALLOC_LARGE +#undef MALLOC_LARGE_SLAB /* * malloc: @@ -916,18 +946,30 @@ free(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated.\n", + panic("free: address %p(%p) has not been allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (__predict_true(!malloc_large_slab(slab))) { + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); #endif uma_zfree_arg(zone, addr, slab); - } else { + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); free_large(addr, size); + break; + case SLAB_COOKIE_CONTIG_MALLOC: + size = contigmalloc_size(slab); + kmem_free(addr, size); + size = round_page(size); + break; + default: + panic("%s: addr %p slab %p with unknown cookie %d", __func__, + addr, slab, GET_SLAB_COOKIE(slab)); + /* NOTREACHED */ } malloc_type_freed(mtp, size); } @@ -959,7 +1001,8 @@ zfree(void *addr, struct malloc_type *mtp) panic("free: address %p(%p) has not been allocated.\n", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (__predict_true(!malloc_large_slab(slab))) { + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); @@ -967,11 +1010,22 @@ zfree(void *addr, struct malloc_type *mtp) kasan_mark(addr, size, size, 0); explicit_bzero(addr, size); uma_zfree_arg(zone, addr, slab); - } else { + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); kasan_mark(addr, size, size, 0); explicit_bzero(addr, size); free_large(addr, size); + break; + case SLAB_COOKIE_CONTIG_MALLOC: + size = round_page(contigmalloc_size(slab)); + explicit_bzero(addr, size); + kmem_free(addr, size); + break; + default: + panic("%s: addr %p slab %p with unknown cookie %d", __func__, + addr, slab, GET_SLAB_COOKIE(slab)); + /* NOTREACHED */ } malloc_type_freed(mtp, size); } @@ -1018,10 +1072,20 @@ realloc(void *addr, size_t size, struct malloc_type *mtp, int flags) ("realloc: address %p out of range", (void *)addr)); /* Get the size of the original block */ - if (!malloc_large_slab(slab)) + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): alloc = zone->uz_size; - else + break; + case SLAB_COOKIE_MALLOC_LARGE: alloc = malloc_large_size(slab); + break; + default: +#ifdef INVARIANTS + panic("%s: called for addr %p of unsupported allocation type; " + "slab %p cookie %d", __func__, addr, slab, GET_SLAB_COOKIE(slab)); +#endif + return (NULL); + } /* Reuse the original block if appropriate */ if (size <= alloc && @@ -1103,10 +1167,18 @@ malloc_usable_size(const void *addr) panic("malloc_usable_size: address %p(%p) is not allocated.\n", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (!malloc_large_slab(slab)) + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; - else + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); + break; + default: + __assert_unreachable(); + size = 0; + break; + } #endif /* From nobody Sat Sep 28 10:38: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 4XG3hK6JZPz5X8M1; Sat, 28 Sep 2024 10:38: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 4XG3hK3gRTz46kw; Sat, 28 Sep 2024 10:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h+0qmLGeosD9dKZtIqtgJjCicL0zuuxSQkPWK9FD8LU=; b=qE/0x+87mPGs2oyzPRBeI7p3YMMnuAMcD6BIVbvAIC6kjt5CIPz+/O3vorP9tkm/bJEpBU 9fUOFMuNlxi9F5x7z7mRuddlH88sa7CK9WW47MAVhSRG7NMOCA+6gnWOlSHGkI7WaQVeH+ TwJtar5MWtvpcl3ca73rpBg/B0ZjVPO2e8SB32p0JjoNJhiVJsnP/EON7eM4rGdpzHTgSN ZmmyOeOH7ap5y45oDWVjqusGHTVz7XrYdrxlnRQDSHbdTz9RRjwDJMoGfS0b3lKFJgg0W6 j7WIqOOxiY2CmWZ0yZZVKsM+PsY9H62i9GpftF09tFoL5ZbQZLRbf8j1wRuO6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h+0qmLGeosD9dKZtIqtgJjCicL0zuuxSQkPWK9FD8LU=; b=ctKvV2ZgGTyxmaI8SZGoQ/szOaqaUR9XNDeBQxCFTRHfwGMS1XqT43f8Plagb60JsqV84D QJZPV+aMPJ+Lid4Mq+DN04ZD1dA069ECxsBwztMx9eLTCRVe8y/rXZR0sfxZIDawOUNt3K GmKwBoZu/H2jv9dXpx4Qdvos6BKO86Yv9yUIVu7XKWjHiP7vblWw3cgewG7/Zh+MTcLbQ0 ZzV/pYm7vMUbmVduLC8bZY/24I5+dkoXh1nQKFhtE/M3I/AgPj5KUer+tBRm97pZ7ML2jY GNd7jx4jtasw8iqbZSiLuCzUua0/f8JKD6R5Ic94Ln3qaT/IGvilzrhrvUHsww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519889; a=rsa-sha256; cv=none; b=qHLoKN+v3EjekeLIPxygsqhbiYJ/EGjRtdd6pEZ3VtCxYZKakz6JiO7MiQ8w1sGdQQZIV+ nki8fbcbFR2OgazJdyxjPCr8XngVFAddtPfahW7Lvi8kyHaFPFhWbbTel51M8/vWxm/QUg ZAnZi1y6wkoqpBrtyD/UOgKqoxwqGBljeLfe++vagW7ghh0DMZU0cP5Puy/t6gty4Ld2mQ TnGHSpF0euqc9DEI0u28BwQ5rusewjxfimVsxiBlhqmw7cIqCP30bx18UNpW/RJfM+VVKx 1NXUO7mwPHAx0f/PhXKTiFq4ZZ3bGbttwhL3Cn2P8PEpA/6SAfo6ZbqoQkGQ1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hK2n2PzLc1; Sat, 28 Sep 2024 10:38: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 48SAc9TF097549; Sat, 28 Sep 2024 10:38:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAc9iG097546; Sat, 28 Sep 2024 10:38:09 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:09 GMT Message-Id: <202409281038.48SAc9iG097546@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1364bc30deec - stable/14 - kern_malloc: remove '.' and '\n' from KASSERT/panic List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1364bc30deec992a3aee2bcec0ad4a3ceb0b8934 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1364bc30deec992a3aee2bcec0ad4a3ceb0b8934 commit 1364bc30deec992a3aee2bcec0ad4a3ceb0b8934 Author: Bjoern A. Zeeb AuthorDate: 2024-07-23 18:27:46 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:11 +0000 kern_malloc: remove '.' and '\n' from KASSERT/panic KASSERT and panic calls should not have a '.' at the end of the message and do not need '\n'. Remove these. No functional changes. Reported by: markj (during review of D45812) Sponsored by: The FreeBSD Foundation Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D46093 (cherry picked from commit c0df224ba5b1fe6257dd197f8298bf59fb6e520f) --- sys/kern/kern_malloc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 90fc88480a40..403f5fe11455 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -715,7 +715,7 @@ malloc_domain(size_t *sizep, int *indxp, struct malloc_type *mtp, int domain, size = *sizep; KASSERT(size <= kmem_zmax && (flags & M_EXEC) == 0, - ("malloc_domain: Called with bad flag / size combination.")); + ("malloc_domain: Called with bad flag / size combination")); if (size & KMEM_ZMASK) size = (size & ~KMEM_ZMASK) + KMEM_ZBASE; indx = kmemsize[size >> KMEM_ZSHIFT]; @@ -998,7 +998,7 @@ zfree(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated.\n", + panic("free: address %p(%p) has not been allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { @@ -1164,7 +1164,7 @@ malloc_usable_size(const void *addr) #else vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("malloc_usable_size: address %p(%p) is not allocated.\n", + panic("malloc_usable_size: address %p(%p) is not allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { From nobody Sat Sep 28 10:38: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 4XG3hL6qKrz5X8M5; Sat, 28 Sep 2024 10:38: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 4XG3hL4Rb9z46SL; Sat, 28 Sep 2024 10:38:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519890; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MKT34wffquTaHjsFqNJ+HG9WS7cOMWkV8ZiryTqMeoM=; b=Hkz+srYkJl7bTgmBbZciw4bMHqZngtPUKBFq6Jo5Is9HieDIE1MK5/EqJcLfLZbebWdDTo NlK/2hv+yfIt0hdxBo6pcGGrwQiFoayCgqOLYs0+gjnstk11rhHoTAbNVWN7PwvHxQ+CBi tP2BbnBCE4XA+qWMeCAXhcsoJQAvvGvy9XFnr2GNACYc3gKZYErAtFpY4f3f61COPv5WhY fpQ2cP201AwWaLIC7ufs+OmZhF7oe0cUwRZYNyqDyS4cagi+0NtUozsxs249eWdJtdNwKS ezh33cW4cZxcYGTPV/PmaSNIAmUXPYWwTCWl9WOOHBLUIIWzQk9G0y7QA3YBCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519890; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MKT34wffquTaHjsFqNJ+HG9WS7cOMWkV8ZiryTqMeoM=; b=p0Eu15sAzMv0fwoV2XifF4+OFdJDd1H0jGyLH5ZwTKdFgUoR1F5T/u1lbXh7dTAHhZ43m5 AoYoEQzntAxHf/o808TGb4Jq9FwqivkDOwu02kNaIExKX5b+4cr54jg79LSfpzdKRyvMf1 sysGz5Xzwm5wP76I9sxZBMw+3jm0jQJ5KjyNFF290/FigtRv68/+9HOq3sMfb2yh39vn44 GLqxiSJJmwpyjl28Is08sdZj91+yEQEhb7si5xfDBPqtOmWgSzlc1mLu5XtczwMLyY2rt7 1gkiyWaHPgiiloo7NOoBJPVn9QEXg60udUVcz+Daiw7PB8FwFQ/C1VYwFPV8dg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519890; a=rsa-sha256; cv=none; b=KgJJK5xfdD6t1p12KWSa/bHGqsd/4hc9ypvIaYY7aAppQK2KzavTK5p4YotzgmPbeh60XP FPmH2eMgwdAnb0+/YdxW04VQY8Yluf0PIgRGDzrdcdopmycrAeJBYgFnOn8fienYA01b0U j0FUmC7AxlXVX9xpgAWFagCVzmN5cGAXIYp50A6CXG9uXewOv2+hlY0v/K1zeo6tqoysmL 33T6ia+AZqegBQc3P+wT14eNvOXFxuDVvh6mBE9brSKRziwZ7bGDnW36IZWX6/RGgoQY3g +aTLpYV2k1wL6WuX2QFVNKB4nNxmCKOfghcF3PtiyPGCTVctYhsdXKaf/TSVWg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hL3pRDzKyy; Sat, 28 Sep 2024 10:38: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 48SAcAOo097609; Sat, 28 Sep 2024 10:38:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcA1Z097606; Sat, 28 Sep 2024 10:38:10 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:10 GMT Message-Id: <202409281038.48SAcA1Z097606@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 87d3af98590b - stable/14 - kern_malloc: fold free and zfree together into one __always_inline func List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 87d3af98590bbf09509822ec94c596d69f53411e Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=87d3af98590bbf09509822ec94c596d69f53411e commit 87d3af98590bbf09509822ec94c596d69f53411e Author: Bjoern A. Zeeb AuthorDate: 2024-07-24 15:56:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:12 +0000 kern_malloc: fold free and zfree together into one __always_inline func free() and zfree() are essentially the same copy and pasted code with the extra explicit_bzero() (and formerly kasan) calls. Add a bool to add the extra functionality and make both functions a wrapper around the common code and let the compiler do the optimization based on the bool input when inlining. No functional changes intended. Suggested by: kib (in D45812) Sponsored by: The FreeBSD Foundation Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D46101 And the fix from Olivier Certner (olce): kern_malloc: Restore working KASAN runtime after free() and zfree() folding In the zfree() case, the explicit_bzero() calls zero all the allocation, including the redzone which malloc() has marked as invalid. So calling kasan_mark() before those is in fact necessary. This fixes a crash at boot when 'ldconfig' is run and tries to get random bytes through getrandom() (relevant part of the stack is read_random_uio() -> zfree() -> explicit_bzero()) for kernels with KASAN compiled in. Approved by: markj (mentor) Fixes: 4fab5f005482 ("kern_malloc: fold free and zfree together into one __always_inline func") Sponsored by: The FreeBSD Foundation (cherry picked from commit 4fab5f005482aa88bc0f7d7a0a5e81b436869112) (cherry picked from commit 28391f188ca18b6251ba46040adf81946b0ccb03) --- sys/kern/kern_malloc.c | 94 +++++++++++++++++--------------------------------- 1 file changed, 31 insertions(+), 63 deletions(-) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 403f5fe11455..3fef90b5fa82 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -922,15 +922,8 @@ free_dbg(void **addrp, struct malloc_type *mtp) } #endif -/* - * free: - * - * Free a block of memory allocated by malloc. - * - * This routine may not block. - */ -void -free(void *addr, struct malloc_type *mtp) +static __always_inline void +_free(void *addr, struct malloc_type *mtp, bool dozero) { uma_zone_t zone; uma_slab_t slab; @@ -946,8 +939,8 @@ free(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated", - addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); + panic("%s(%d): address %p(%p) has not been allocated", __func__, + dozero, addr, (void *)((uintptr_t)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { case __predict_true(SLAB_COOKIE_SLAB_PTR): @@ -955,79 +948,54 @@ free(void *addr, struct malloc_type *mtp) #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); #endif + if (dozero) { + kasan_mark(addr, size, size, 0); + explicit_bzero(addr, size); + } uma_zfree_arg(zone, addr, slab); break; case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); + if (dozero) { + kasan_mark(addr, size, size, 0); + explicit_bzero(addr, size); + } free_large(addr, size); break; case SLAB_COOKIE_CONTIG_MALLOC: - size = contigmalloc_size(slab); + size = round_page(contigmalloc_size(slab)); + if (dozero) + explicit_bzero(addr, size); kmem_free(addr, size); - size = round_page(size); break; default: - panic("%s: addr %p slab %p with unknown cookie %d", __func__, - addr, slab, GET_SLAB_COOKIE(slab)); + panic("%s(%d): addr %p slab %p with unknown cookie %d", + __func__, dozero, addr, slab, GET_SLAB_COOKIE(slab)); /* NOTREACHED */ } malloc_type_freed(mtp, size); } /* - * zfree: - * - * Zero then free a block of memory allocated by malloc. - * + * free: + * Free a block of memory allocated by malloc/contigmalloc. * This routine may not block. */ void -zfree(void *addr, struct malloc_type *mtp) +free(void *addr, struct malloc_type *mtp) { - uma_zone_t zone; - uma_slab_t slab; - u_long size; - -#ifdef MALLOC_DEBUG - if (free_dbg(&addr, mtp) != 0) - return; -#endif - /* free(NULL, ...) does nothing */ - if (addr == NULL) - return; - - vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); - if (slab == NULL) - panic("free: address %p(%p) has not been allocated", - addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); + _free(addr, mtp, false); +} - switch (GET_SLAB_COOKIE(slab)) { - case __predict_true(SLAB_COOKIE_SLAB_PTR): - size = zone->uz_size; -#if defined(INVARIANTS) && !defined(KASAN) - free_save_type(addr, mtp, size); -#endif - kasan_mark(addr, size, size, 0); - explicit_bzero(addr, size); - uma_zfree_arg(zone, addr, slab); - break; - case SLAB_COOKIE_MALLOC_LARGE: - size = malloc_large_size(slab); - kasan_mark(addr, size, size, 0); - explicit_bzero(addr, size); - free_large(addr, size); - break; - case SLAB_COOKIE_CONTIG_MALLOC: - size = round_page(contigmalloc_size(slab)); - explicit_bzero(addr, size); - kmem_free(addr, size); - break; - default: - panic("%s: addr %p slab %p with unknown cookie %d", __func__, - addr, slab, GET_SLAB_COOKIE(slab)); - /* NOTREACHED */ - } - malloc_type_freed(mtp, size); +/* + * zfree: + * Zero then free a block of memory allocated by malloc/contigmalloc. + * This routine may not block. + */ +void +zfree(void *addr, struct malloc_type *mtp) +{ + _free(addr, mtp, true); } /* From nobody Sat Sep 28 10:38: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 4XG3hN092jz5X8V8; Sat, 28 Sep 2024 10:38: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 4XG3hM56mwz46nw; Sat, 28 Sep 2024 10:38:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519891; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lgB+JCkDwmwMXRIzb1t6fLICgcQUSlKO/TEQiD1jycU=; b=JyUVDjXDKryd98QFUFCwgTfNDvZEYNcCD/Vopvy8kScugqkzRwXSTg0ZTF8oXmXyzD82pI vqYuTXPRamLSr5E4HdtdEbKXZal5tMSqKaVPIBuSN7KeYYXWwhZslOXZskMwhw9DBAImHG LSevK0/jriE6NIzwNsfIdtiHhvr8ES4kQLt2jHZrNkJlu6zrx5+VBBqhHiaKakKuODwZe4 Ll8qgvy7XsCzKIgC4oPgbgeQ8m/nxwG6z3TKHGZykRDXYCKHbMo/kZTR9VSsztKM1WcuHK KYZOZ2sy6uoLr5dzdDIT5p5tIS0hyS1nsvCySra8TEml947UDVcwQRJklgTJqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519891; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lgB+JCkDwmwMXRIzb1t6fLICgcQUSlKO/TEQiD1jycU=; b=bG5ICZz+DWpwStDV3VimgF/94m+9i12p2il22DjTsbjH4KYNbjeqGj9KGGyU/8KoflmWFG roWltxUJEVoqkQn0501CPB0xsMmgf+JVb7VpJ69jKWTlPFeE941mm8nUCvR8/7TPk43kyz EHH9t2BpVNKf6/9pdvGn2BTliIor7hdVKnPY1gzPBKIv2nNRRfWdu4xXLzYCSqxjhhW+UI xT+JSrJUbpTT1i68yS/HJJCILjS/0rcgKRvpYJPv2JG++iE+QGMteI5eJ/KVeW5AmciD6f PZEibO3QZxk7K10euypyyddc3PqxkCLCj1/tjuiHPTEDjxbcihRGn4USmz+IoA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519891; a=rsa-sha256; cv=none; b=wcb1UMSPzWkQOEiMxkfFq9jztnNaFHH0r0l9zlxopXHEmQpc+qQHr2TEObtO0TQHI7vuNE B12IuKXTLpfOeGxQduQ5oDUCDHLoZUaWTkX+WBoTxGhUmWTsEg3DNNWT+vhaaNAfsPaC7F n87gC4LPyEDN2p7PU7lJWnUnPaI3HNykpQ2pZzKAmWGbszB9+59fD+Jwty6IZmWPH9RUGP pOyWXMdA/sRz++GG578Gt0MWOHNZXqCrM40tCYHFSYRcZDJ+SyBczjsdXIhEfE52ku7X+3 smKATuS58IkVA1tGhcUEuYYcihXtItay2qjpvG79Dt8GzS45YXKg4wvsoyzfcQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hM4Jg2zLc2; Sat, 28 Sep 2024 10:38: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 48SAcBQA097660; Sat, 28 Sep 2024 10:38:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcBeR097657; Sat, 28 Sep 2024 10:38:11 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:11 GMT Message-Id: <202409281038.48SAcBeR097657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: f9edc5b3f687 - stable/14 - LinuxKPI: move __kmalloc from slab.h to slab.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: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f9edc5b3f687ad0cd01ee4cac664a95d21413f3c Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f9edc5b3f687ad0cd01ee4cac664a95d21413f3c commit f9edc5b3f687ad0cd01ee4cac664a95d21413f3c Author: Bjoern A. Zeeb AuthorDate: 2024-06-30 20:37:07 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:12 +0000 LinuxKPI: move __kmalloc from slab.h to slab.c In order to allow the allocator to change in the future move it into the implementation file from being an inline function in the header. While here factor out the size calculation and add a comment as-to why this is done. We will need the size (_s) in the future to make a decision on how to allocate. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D45815 (cherry picked from commit 1f7df757017404011732196e65981d9325f7a89f) --- sys/compat/linuxkpi/common/include/linux/slab.h | 9 ++------- sys/compat/linuxkpi/common/src/linux_slab.c | 11 +++++++++++ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/slab.h b/sys/compat/linuxkpi/common/include/linux/slab.h index 3f2d1621e148..07c16884b00e 100644 --- a/sys/compat/linuxkpi/common/include/linux/slab.h +++ b/sys/compat/linuxkpi/common/include/linux/slab.h @@ -92,6 +92,8 @@ struct linux_kmem_cache; #define ZERO_OR_NULL_PTR(x) ((x) == NULL || (x) == ZERO_SIZE_PTR) extern void *lkpi_kmalloc(size_t size, gfp_t flags); +void *lkpi___kmalloc(size_t size, gfp_t flags); +#define __kmalloc(_s, _f) lkpi___kmalloc(_s, _f) static inline gfp_t linux_check_m_flags(gfp_t flags) @@ -108,13 +110,6 @@ linux_check_m_flags(gfp_t flags) return (flags & GFP_NATIVE_MASK); } -static inline void * -__kmalloc(size_t size, gfp_t flags) -{ - return (malloc(MAX(size, sizeof(struct llist_node)), M_KMALLOC, - linux_check_m_flags(flags))); -} - static inline void * kmalloc_node(size_t size, gfp_t flags, int node) { diff --git a/sys/compat/linuxkpi/common/src/linux_slab.c b/sys/compat/linuxkpi/common/src/linux_slab.c index 68117d1c9fa7..72b35fee9214 100644 --- a/sys/compat/linuxkpi/common/src/linux_slab.c +++ b/sys/compat/linuxkpi/common/src/linux_slab.c @@ -207,6 +207,17 @@ linux_kmem_cache_destroy(struct linux_kmem_cache *c) free(c, M_KMALLOC); } +void * +lkpi___kmalloc(size_t size, gfp_t flags) +{ + size_t _s; + + /* sizeof(struct llist_node) is used for kfree_async(). */ + _s = MAX(size, sizeof(struct llist_node)); + + return (malloc(_s, M_KMALLOC, linux_check_m_flags(flags))); +} + struct lkpi_kmalloc_ctx { size_t size; gfp_t flags; From nobody Sat Sep 28 10:38: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 4XG3hP0hKbz5X8M9; Sat, 28 Sep 2024 10:38: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 4XG3hN62BJz46v0; Sat, 28 Sep 2024 10:38:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519892; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9eCmaYVkICN94cnTkAHU6s0U8mBTQlJOPZV4QAtXJKU=; b=eBG0lS0DcmnIBQ6SM+grcWYnBjxQwHhMW2ZnwuoCAkoU6vEM85ZYD8CExlX2emcWqO46vB iE0mc4FXa/UXCpU4duRQUIF7eVypiwZ+bBWQMEDDl3UgVV+hADMALENW6qiFK1TN/B7Gxl FbJSZIJ0Vq9lxHqxEDqrjwua5lmhRbiBGqTtEFKFWVKeInkQKgU6MvH8eE0uNRniSUXs1N t56t4O68trv3JrhHFRVGBN5j9ESKSi592bB+pU+fM6xW8GNXBIQVbouKvTNywKE73S4Ddq 9kahuWIzNv6chhkxITaSgCVUG6yCUyhfahWu+JrPmqqvapp3hAVuzbBIn8pfrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519892; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9eCmaYVkICN94cnTkAHU6s0U8mBTQlJOPZV4QAtXJKU=; b=bCy06abwmx2Q11xzDcgPTCA2NqBthTIJV8Sf+kgYMkrAvt8KdGr/eEFNT83hsDhdrW1khs HKNJnfLtUZc5B2XsNgIdKlzt8XuUflK0QATgSKWR7M+VpZjFbUOoFtQpSQzZDsEjXhH+Cx aqBpqZaQ2XTFVIE5Cb+/H1yoZIvYBI/UeqcT+3XmEGZSU5wt6to+0hj98Dguh8EFmo+NCq ZTNVTo9Hosnf/FyszyG2RqVBJdvfwx03Y6YSBFirjR95ZCN2qeuOUC2h8jAQo6LlcrqUNk j00+L6kmRxBKu+LETctyC2ZlGutrb0jLjhEs36W5AjCsDmDF5xPSjfvTJE9KOQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519892; a=rsa-sha256; cv=none; b=cZjQCtoCNIp/lvTu33Y2ZppHcRPHM5FOkWKUn7Q4jmUzWSqLWLBk/OtyZeWJ8reOkBt1nR rt9MjB9IZgd8PhMzruE8jr5MU5JhWXDB5MygVeZREgDn0cavslTMlcNjQTsZR6jz16mgyD WZKxqVGNm3iid9ZMj7HmBpW04XO4ZFzeR6Bi9WE8IYqRUdS/OFNYWhNBYg7zz814Z+HQC+ 667ox0s8dKdfgUOYlsYSgBBV+LyOIOdfZBcSTP0lhdbcFL1uXLPi1DCvMDwP+IoEAwnmnS qFytF8PALMjVDAqJIBfwEeIEVdTPQIlNY7D+thsuqGl0kC2qCqIgrjS4mPOfJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hN5fF9zLrC; Sat, 28 Sep 2024 10:38: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 48SAcCLf097717; Sat, 28 Sep 2024 10:38:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcC4K097714; Sat, 28 Sep 2024 10:38:12 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:12 GMT Message-Id: <202409281038.48SAcC4K097714@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: af034dcbb242 - stable/14 - LinuxKPI: 802.11 compile in debugging based on IEEE80211 debugging List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: af034dcbb24248f940595d56fab332d008376a99 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=af034dcbb24248f940595d56fab332d008376a99 commit af034dcbb24248f940595d56fab332d008376a99 Author: Bjoern A. Zeeb AuthorDate: 2024-04-06 21:17:58 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:12 +0000 LinuxKPI: 802.11 compile in debugging based on IEEE80211 debugging If IEEE80211 debugging is turned on in kernel configs also turn on LinuxKPI 802.11 and SKB debugging (sysctls) to have them available. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45820 (cherry picked from commit 59d262fe969af5a8a83f0ccd7586c9bd2c8fb1f3) --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 8 ++++++++ sys/compat/linuxkpi/common/src/linux_80211.h | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index ee3f427aa6e9..d3839820d3d5 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -46,7 +46,15 @@ #include #include +#include "opt_wlan.h" + +/* Currently this is only used for wlan so we can depend on that. */ +#if defined(IEEE80211_DEBUG) && !defined(SKB_DEBUG) +#define SKB_DEBUG +#endif + /* #define SKB_DEBUG */ + #ifdef SKB_DEBUG #define DSKB_TODO 0x01 #define DSKB_IMPROVE 0x02 diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index a48cf719c693..80be87ebe231 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -42,6 +42,12 @@ #ifndef _LKPI_SRC_LINUX_80211_H #define _LKPI_SRC_LINUX_80211_H +#include "opt_wlan.h" + +#if defined(IEEE80211_DEBUG) && !defined(LINUXKPI_DEBUG_80211) +#define LINUXKPI_DEBUG_80211 +#endif + /* #define LINUXKPI_DEBUG_80211 */ #ifndef D80211_TODO From nobody Sat Sep 28 10:38: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 4XG3hQ3RmWz5X8VG; Sat, 28 Sep 2024 10:38: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 4XG3hQ146wz46rJ; Sat, 28 Sep 2024 10:38:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519894; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=469mfj5l/9CS50hPT28kW0EXZxtMdOH17CBL19rcBzg=; b=MWd9tNVOZKz9bP8LLsz0P1sqF43weXS+1Cand7KUr4a+XlxIomDlVtAFHZ30SS+Wr7XaFz FLG9fM+sSwyKEHNZgpeUR+oBoB86JqJeYnso9Ox9m8/avEhmf2NPEeYeexI6K7arkjJ58/ Tv78jJwNc26tLcHMmzHcKCPWm8/0rq2pEnX/jnIMW4ecZmWxsnMbtSHtpp8WessFblZT1I 3vystWkxI70DxIW9dGcoAWxdMY5xMmbMSDowevGqVoGMEmucIyDWykTKaV6lXZVBm23gTX 4FBDaExTqV4l9meORnvmxEpnvhmWo0khyBj72HBfG4ZN5wDfE7SVuNXKJbYHGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519894; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=469mfj5l/9CS50hPT28kW0EXZxtMdOH17CBL19rcBzg=; b=Y05KpBX3NI6I/zjfNm/hSbfkl312M6DCIrC3AZ5Ahvmaxmw2QmxgpdDXVxcpFpJbv6BJgW qaabJIdEw1K3IV+nvP/p5OHhBFXRT9gXtszQoX3A9gaG7yQaNxiBXVEa4SB8WJGtoRWFUy I6lLU8DUBnJ46UrV1Yzw/zEI07yb04f0NgsuUUINbJc2Ew3eIUFBskRYG3D14bw2eOq0n7 W9PJ4ILO0Gz35r/Qgek43cWy9hNd6qnn5S7VR+/UbmDPs8nRqwGgmMPMr5ogf7jokpjTsK K8DRA1AUe2WypioaDBzQADZgNodlnVyLXO3TnfzOu2BpiMEMDSfSsSjL4md8Uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519894; a=rsa-sha256; cv=none; b=U84s4nH5Oce7jBpy1MTFZZIpUrFVUhxKkrN0K/GH0LzK2i3aIFtA/8G64OUV3MEmloCd28 K2bFJHC7jfVePSy8At2vTrSuhb0t3uc4+QIwTmub1oaThYlSEOawUDuh2m97ELoseAc5FR 4Lm3T/bXoqo3jbI6Q7Zq75fu5fIb9U3+gJcSPdf9f/Ltc4Q3Wtd1qdMcukP1F8AuExji5K X25S4TNP7vUBJ5gIhUXtyNL0sfTiEDY5RJxDQTZVqIOrmqVEByDEdR4YxyvBpF+jsOSCwJ O5waFTvHzvDt7AtVZefe0wbl1KycWzdZbACTEzX5HsDNk67G3NrCRYU4GFj8gw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hP6VpKzLrD; Sat, 28 Sep 2024 10:38: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 48SAcDNL097780; Sat, 28 Sep 2024 10:38:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcDlU097777; Sat, 28 Sep 2024 10:38:13 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:13 GMT Message-Id: <202409281038.48SAcDlU097777@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e9624aa3f2f8 - stable/14 - net80211: scan/internal: change boolean argument from int to bool List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e9624aa3f2f8b370c42141b83c4b71bf06832142 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e9624aa3f2f8b370c42141b83c4b71bf06832142 commit e9624aa3f2f8b370c42141b83c4b71bf06832142 Author: Bjoern A. Zeeb AuthorDate: 2024-06-30 21:16:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:12 +0000 net80211: scan/internal: change boolean argument from int to bool ieee80211_probe_curchan() passes a "force" argument which is bool. Make it such. Adjust the (*sc_scan_probe_curchan)() KPI to bool as well. This is all a big NOP as the only implementor of this function, ieee80211_swscan_probe_curchan(), does not use the argument at all. I came across this when pondering a different scan implementation. Rather than dropping the change remove the argument from the function, and push the cleanup out given it is purely net80211 internal code (the argument may have reason for existance in the future). Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45816 (cherry picked from commit 9776aba34576596cbe49084457ee40730fec55a2) --- sys/net80211/ieee80211_adhoc.c | 2 +- sys/net80211/ieee80211_hostap.c | 2 +- sys/net80211/ieee80211_mesh.c | 2 +- sys/net80211/ieee80211_scan.c | 2 +- sys/net80211/ieee80211_scan.h | 4 ++-- sys/net80211/ieee80211_scan_sw.c | 4 ++-- sys/net80211/ieee80211_sta.c | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/net80211/ieee80211_adhoc.c b/sys/net80211/ieee80211_adhoc.c index 7455500a91ab..021f2af2b0f9 100644 --- a/sys/net80211/ieee80211_adhoc.c +++ b/sys/net80211/ieee80211_adhoc.c @@ -767,7 +767,7 @@ adhoc_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m0, * XXX check if the beacon we recv'd gives * us what we need and suppress the probe req */ - ieee80211_probe_curchan(vap, 1); + ieee80211_probe_curchan(vap, true); ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN; } ieee80211_add_scan(vap, rxchan, &scan, wh, diff --git a/sys/net80211/ieee80211_hostap.c b/sys/net80211/ieee80211_hostap.c index 52832c308c7d..983668a43d4c 100644 --- a/sys/net80211/ieee80211_hostap.c +++ b/sys/net80211/ieee80211_hostap.c @@ -1816,7 +1816,7 @@ hostap_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m0, * XXX check if the beacon we recv'd gives * us what we need and suppress the probe req */ - ieee80211_probe_curchan(vap, 1); + ieee80211_probe_curchan(vap, true); ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN; } ieee80211_add_scan(vap, ic->ic_curchan, &scan, wh, diff --git a/sys/net80211/ieee80211_mesh.c b/sys/net80211/ieee80211_mesh.c index 477527b34529..82208b8b6f7b 100644 --- a/sys/net80211/ieee80211_mesh.c +++ b/sys/net80211/ieee80211_mesh.c @@ -1881,7 +1881,7 @@ mesh_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m0, int subtype, * XXX check if the beacon we recv'd gives * us what we need and suppress the probe req */ - ieee80211_probe_curchan(vap, 1); + ieee80211_probe_curchan(vap, true); ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN; } ieee80211_add_scan(vap, rxchan, &scan, wh, diff --git a/sys/net80211/ieee80211_scan.c b/sys/net80211/ieee80211_scan.c index 4e5958e82cc8..04fee33f48f1 100644 --- a/sys/net80211/ieee80211_scan.c +++ b/sys/net80211/ieee80211_scan.c @@ -513,7 +513,7 @@ ieee80211_scan_done(struct ieee80211vap *vap) * then we'll transmit a probe request. */ void -ieee80211_probe_curchan(struct ieee80211vap *vap, int force) +ieee80211_probe_curchan(struct ieee80211vap *vap, bool force) { struct ieee80211com *ic = vap->iv_ic; diff --git a/sys/net80211/ieee80211_scan.h b/sys/net80211/ieee80211_scan.h index a33864b102e2..1afe767ef052 100644 --- a/sys/net80211/ieee80211_scan.h +++ b/sys/net80211/ieee80211_scan.h @@ -104,7 +104,7 @@ struct ieee80211_scan_methods { void (*sc_cancel_anyscan)(struct ieee80211vap *); void (*sc_scan_next)(struct ieee80211vap *); void (*sc_scan_done)(struct ieee80211vap *); - void (*sc_scan_probe_curchan)(struct ieee80211vap *, int); + void (*sc_scan_probe_curchan)(struct ieee80211vap *, bool); void (*sc_add_scan)(struct ieee80211vap *, struct ieee80211_channel *, const struct ieee80211_scanparams *, @@ -179,7 +179,7 @@ void ieee80211_cancel_scan(struct ieee80211vap *); void ieee80211_cancel_anyscan(struct ieee80211vap *); void ieee80211_scan_next(struct ieee80211vap *); void ieee80211_scan_done(struct ieee80211vap *); -void ieee80211_probe_curchan(struct ieee80211vap *, int); +void ieee80211_probe_curchan(struct ieee80211vap *, bool); struct ieee80211_channel *ieee80211_scan_pickchannel(struct ieee80211com *, int); struct ieee80211_scanparams; diff --git a/sys/net80211/ieee80211_scan_sw.c b/sys/net80211/ieee80211_scan_sw.c index 62f6bf24d42a..e1d6b2779cf0 100644 --- a/sys/net80211/ieee80211_scan_sw.c +++ b/sys/net80211/ieee80211_scan_sw.c @@ -522,7 +522,7 @@ ieee80211_swscan_scan_done(struct ieee80211vap *vap) * then we'll transmit a probe request. */ static void -ieee80211_swscan_probe_curchan(struct ieee80211vap *vap, int force) +ieee80211_swscan_probe_curchan(struct ieee80211vap *vap, bool force __unused) { struct ieee80211com *ic = vap->iv_ic; struct ieee80211_scan_state *ss = ic->ic_scan; @@ -569,7 +569,7 @@ scan_curchan(struct ieee80211_scan_state *ss, unsigned long maxdwell) maxdwell); IEEE80211_LOCK(ic); if (ss->ss_flags & IEEE80211_SCAN_ACTIVE) - ieee80211_probe_curchan(vap, 0); + ieee80211_probe_curchan(vap, false); taskqueue_enqueue_timeout(ic->ic_tq, &SCAN_PRIVATE(ss)->ss_scan_curchan, maxdwell); IEEE80211_UNLOCK(ic); diff --git a/sys/net80211/ieee80211_sta.c b/sys/net80211/ieee80211_sta.c index 042f5636be29..e48c6e084eb3 100644 --- a/sys/net80211/ieee80211_sta.c +++ b/sys/net80211/ieee80211_sta.c @@ -1694,7 +1694,7 @@ sta_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m0, int subtype, * XXX check if the beacon we recv'd gives * us what we need and suppress the probe req */ - ieee80211_probe_curchan(vap, 1); + ieee80211_probe_curchan(vap, true); ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN; } ieee80211_add_scan(vap, rxchan, &scan, wh, From nobody Sat Sep 28 10:38: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 4XG3hR4Dvpz5X8Xw; Sat, 28 Sep 2024 10:38: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 4XG3hR1LCWz471k; Sat, 28 Sep 2024 10:38:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519895; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=POjrCKpRaOTuBayVNJ0CV3d2+gP9q1C6mun/HTCVUIM=; b=EU7U7XQXSvvg/IimxqhpZdH5v1/LU0u43+50aGHDcAj5cR8LtQHEg6Qvo1/BI9Pz3BPNCE Y52I9tI4hnPwPKuSfqHcN3YqTPiEacXbi5K+uZwZvmLwCr13ylV5t1NBjGZdFdKVCaEj/L 5zV7qJR0XlePI9Y51X/x+2v8zWnMJkS4J3DPA6v7dlRkrxUuO4iAKN5AeGHdA41X9PDFFW mv6HJK9ZLNIBwLaWLGn/HY4wIt5p6fBasz13bpLA44uNmbsdFGinnoRtIgId6AI3cmIJQT /O3Dyr6wHnA+PIPkgOi39p60PKr0VW8ivzUxj/SFDp+bwaTwKY3hJ87K7L3egg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519895; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=POjrCKpRaOTuBayVNJ0CV3d2+gP9q1C6mun/HTCVUIM=; b=J7vfKv708qtJTjzBbd3IjAAjZAyI2JxCO2TlEoEKBhl9J6qjTljPa3UcJKevwq83dt3EYw z0vGJmsf1m0xfDPRIHB/ZqE00bmemPr88aNzAJ7P6v3QnWPKvYCwEXId1DVpkCB0bUtslL sa9pzmyTx7dZaGKU7slrnZhuK86ETzJcpH3lGlsknfsvGO8qdb6SEVCpAz58TEkSNeaDuc Ncj/HE1CfIr4sRBeToPEe6QLt5hdswwkV9cLQJ+WC9Ug+kYOcuYeOWTLcR1uUbvuvc9D95 ksxNBsZPZu9IucWEgURxxtkSEoPKWKUZ1HW+BQ1iC+d/B47jzTXAYB/9iCyPhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519895; a=rsa-sha256; cv=none; b=hfjmPMuE8vOAwLSJkpS+ay02Rh7RoV3KHnWOAPqBUCsCWvgrEsAIviZDREh8Xw+ajUaPC/ +8Ma5VXpz0j8Xezij7c/bWuiGSJ4T8u33P2RHA9wVi6hkFdYbhiI2NEqgABhMQJsJO0GGW ZBfdJS47xg8bq91I3EcEpHHdpgPT/c5Gx/hNROcOkmDt1UsKeOQ/LeFoYtY21PO/81eefB ylRkw7iyT0SvF70pkA1yme5xiTCcI2Vz0Y/4OppKVl5DS0ZPzNkY8fFOGBp6PTIJ04BCxZ DM/Ti9001RGdv9DgkDhHSk1nKVA/u9qpofRccY7h4NOUIKRHrtj0Lru3a4AvgQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hR0g8SzLwb; Sat, 28 Sep 2024 10:38: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 48SAcEC8097831; Sat, 28 Sep 2024 10:38:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcE6N097828; Sat, 28 Sep 2024 10:38:14 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:14 GMT Message-Id: <202409281038.48SAcE6N097828@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d506ab946dea - stable/14 - LinuxKPI/lindebugfs: stop panicing in lindebugfs, fix simple_read_from_buffer List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d506ab946dea5f9692b9f3da5d7a20e9fd59b9ba Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d506ab946dea5f9692b9f3da5d7a20e9fd59b9ba commit d506ab946dea5f9692b9f3da5d7a20e9fd59b9ba Author: Bjoern A. Zeeb AuthorDate: 2024-06-27 12:19:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:12 +0000 LinuxKPI/lindebugfs: stop panicing in lindebugfs, fix simple_read_from_buffer Trying to use lindebugfs for debugging wirless drivers two issues became apparent: (a) a panic in lindebugfs calling a hard coded release function if the caller had not provided one. This seems to be based on assumptions that no longer hold up. Remove the hard coded release function to prevent panics. (b) In LinuxKPI simple_read_from_buffer() would call copy_to_user() but buffers weren't setup for this (lindebugfs copies data from its own buffer) and then pseudofs will do another copyout to the user on this; remove the copy_to_user() and simply copy the data over to the provided buffer; this works for as long as the only consumers remain debugfs callers (which currently seems to be the case). [the only out-of-tree consumers I am aware off are two drm-kmod drivers/gpu/drm/amd/pm/* debugfs functions I cannot test]. Sponsored by: The FreeBSD Foundation Tested by: jfree Differential Revision: https://reviews.freebsd.org/D45755 (cherry picked from commit 5668c22a13c6befa9b8486387d38457c40ce7af4) --- sys/compat/lindebugfs/lindebugfs.c | 2 -- sys/compat/linuxkpi/common/include/linux/fs.h | 22 +++++++++++++--------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index c1678c0f3421..eab89d9d13a5 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -154,8 +154,6 @@ debugfs_fill(PFS_FILL_ARGS) if (d->dm_fops->release) d->dm_fops->release(&vn, &lf); - else - single_release(&vn, &lf); if (rc < 0) { #ifdef INVARIANTS diff --git a/sys/compat/linuxkpi/common/include/linux/fs.h b/sys/compat/linuxkpi/common/include/linux/fs.h index 74288f9cd461..3e7e71a0713c 100644 --- a/sys/compat/linuxkpi/common/include/linux/fs.h +++ b/sys/compat/linuxkpi/common/include/linux/fs.h @@ -354,9 +354,8 @@ static inline ssize_t simple_read_from_buffer(void __user *dest, size_t read_size, loff_t *ppos, void *orig, size_t buf_size) { - void *read_pos = ((char *) orig) + *ppos; + void *p, *read_pos = ((char *) orig) + *ppos; size_t buf_remain = buf_size - *ppos; - ssize_t num_read; if (buf_remain < 0 || buf_remain > buf_size) return -EINVAL; @@ -364,13 +363,18 @@ simple_read_from_buffer(void __user *dest, size_t read_size, loff_t *ppos, if (read_size > buf_remain) read_size = buf_remain; - /* copy_to_user returns number of bytes NOT read */ - num_read = read_size - copy_to_user(dest, read_pos, read_size); - if (num_read == 0) - return -EFAULT; - *ppos += num_read; - - return (num_read); + /* + * XXX At time of commit only debugfs consumers could be + * identified. If others will use this function we may + * have to revise this: normally we would call copy_to_user() + * here but lindebugfs will return the result and the + * copyout is done elsewhere for us. + */ + p = memcpy(dest, read_pos, read_size); + if (p != NULL) + *ppos += read_size; + + return (read_size); } MALLOC_DECLARE(M_LSATTR); From nobody Sat Sep 28 10:38: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 4XG3hS59DNz5X8Pq; Sat, 28 Sep 2024 10:38: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 4XG3hS32Lvz4776; Sat, 28 Sep 2024 10:38:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519896; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zpkgp0W/vdWPjmWdWTWJKHBztTABiZz7kZpNVITUUtk=; b=FG977BGUOi5MD+zN/BoXBkSbeqj4qE9XMXn6lZOrZExrNy5TwJqKKbDDXX3AocxfU590uK IvZsY2VWra0rKPi8cxqbivcumqekEIdJjjyz3BNpxC29y+KrX//2A0nDuyIbU8KyzTMrkE UN2ktVMLyGMkVNMGHCd50e492J0SMXR31oM10jbJy5wuQGibx6un4l7B6pbJh/yb7TJead 67FpuS7sBYMwg8UN6TmGOsi3uP7/6YBH6Zle1gOgPJr83QLl9yQwtfrzS11YDy8N9d/JLb KuPOH2EMPuBVRuqEox3ZZ8k04uVyjeFfnAx0xn+nCMJlcL9d6eywuppBHmM2KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519896; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zpkgp0W/vdWPjmWdWTWJKHBztTABiZz7kZpNVITUUtk=; b=jFkRFppuacjJujJluPXIA9cS2udeuZgYizCT2FbY2Cf3VJY+EGYrdJIOjM2FtIXhv3fzWI 4hXFhFQcdPddqjGqXEF4md6hGF/wuES7io7qLv+1J7NJbJhBmr1ekeG1GL7uz7xKX6bh+b QUCkVk1cqwsMCC0lDNpAGmZRCkni8DtzBiHd1oet+OGi5ZEZ8i8IlKCQFbs0gk27PhJpDU MkGa86CGJL/RinPfA67Ih0XAQmc1TPmO3AAMvu84WTRzgJ2cBN+jfXIflkPLkqLbgff6fj iTs+5ehmImSxGpdNKQ+1+L0n2TX0ORXYkyZTl9KK2C/E9RuBXAUrHIJwwljhqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519896; a=rsa-sha256; cv=none; b=dELr6gNDsQ0NdVeHOiU1vg9HfrHElRJFC45nBjS+Ckvz1P6+Dap0kCpiKoUYVqGndlqNxL cpSx4Qa2J//w/TDd8qSNfiojudAOHLO/VhrhKpShD6SmJwlSjjplMqc9nFiGDwPIkE12yX g1YAqf8z0cvqmoeH9vuUd/jV4ZuFAu56aXvrD0TPXJuEkgJqdgC7nsuo3H7tFyhH6rzHYR l3tR/MUCI6SmZjDdsqmFkMHgczUhRouHJO5lDs0y+srp3REmF3oEGjdwDvtJYcp5S2hfW+ OhmZ/gY1Aw6/0YbWoSwRK/WKPjqnSrEWbDm/PrZol17QWx1K0CFZXtgtNRh5mg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hS1N8SzLc3; Sat, 28 Sep 2024 10:38: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 48SAcGJG097882; Sat, 28 Sep 2024 10:38:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcG4t097879; Sat, 28 Sep 2024 10:38:16 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:16 GMT Message-Id: <202409281038.48SAcG4t097879@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 78556119d502 - stable/14 - LinuxKPI: 802.11: consistently spell TRACE-RX: as such List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 78556119d502f15de0ea7140e87dd24285f1ffb3 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=78556119d502f15de0ea7140e87dd24285f1ffb3 commit 78556119d502f15de0ea7140e87dd24285f1ffb3 Author: Bjoern A. Zeeb AuthorDate: 2024-06-05 22:31:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: 802.11: consistently spell TRACE-RX: as such We have TRACE in one place and TRACE-RX in another. Spell it "TRACE-RX: %s: ..." everywhere. Helps with pattern matching. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45818 (cherry picked from commit bd206a6f4a87214ae8c1b32f1051b07362080361) --- sys/compat/linuxkpi/common/src/linux_80211.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index ca8db481347e..948d96bd64ac 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -4997,7 +4997,7 @@ lkpi_80211_lhw_rxq_rx_one(struct lkpi_hw *lhw, struct mbuf *m) #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_RX) - printf("TRACE %s: handled frame type %#0x\n", __func__, ok); + printf("TRACE-RX: %s: handled frame type %#0x\n", __func__, ok); #endif } @@ -5012,8 +5012,8 @@ lkpi_80211_lhw_rxq_task(void *ctx, int pending) #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_RX) - printf("%s:%d lhw %p pending %d mbuf_qlen %d\n", - __func__, __LINE__, lhw, pending, mbufq_len(&lhw->rxq)); + printf("TRACE-RX: %s: lhw %p pending %d mbuf_qlen %d\n", + __func__, lhw, pending, mbufq_len(&lhw->rxq)); #endif mbufq_init(&mq, IFQ_MAXLEN); @@ -5095,7 +5095,7 @@ linuxkpi_ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb, /* Implement a dump_rxcb() !!! */ if (linuxkpi_debug_80211 & D80211_TRACE_RX) - printf("TRACE %s: RXCB: %ju %ju %u, %#0x, %u, %#0x, %#0x, " + printf("TRACE-RX: %s: RXCB: %ju %ju %u, %#0x, %u, %#0x, %#0x, " "%u band %u, %u { %d %d %d %d }, %d, %#x %#x %#x %#x %u %u %u\n", __func__, (uintmax_t)rx_status->boottime_ns, @@ -5182,7 +5182,7 @@ no_trace_beacons: #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_RX) - printf("TRACE %s: sta %p lsta %p state %d ni %p vap %p%s\n", + printf("TRACE-RX: %s: sta %p lsta %p state %d ni %p vap %p%s\n", __func__, sta, lsta, (lsta != NULL) ? lsta->state : -1, ni, vap, is_beacon ? " beacon" : ""); #endif From nobody Sat Sep 28 10:38: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 4XG3hT6ggpz5X8KS; Sat, 28 Sep 2024 10:38: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 4XG3hT4jVrz474y; Sat, 28 Sep 2024 10:38:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TEJo1l21HoRGRVFcVjpBieqwKdP5af9JEg2eqkjOyEY=; b=en7Sh1/kmtQQtpagp/hOfJuw9LKpvl9xkA0+tmmfaKtMWW4etqw/z+l7X0rCbWTDATItwJ nS/dbn2tt9YCR8hxIWa5Vn5eu0BjVf2UUpks0fNeYAPeHVHE0YhK2Yh5ymSSdUwrBrUYtS rZW7VnJu02V+GjmIQantUVXHPxGREth5g+pk3dUK4jcIvr5+cq8OBFr4V5Kk7mEbV8TuY+ QzALQvN50KRU4y+hswe2zb4XNbuL8U0Wzama8n4BC+WtknMVtgt6QD+G/6OPqW/LgOB4ZC KTwOv0Qjk0yKwGzj1rewbZR+VLI4OiyxIQymDfVuXrW/ajEp1ot3F2JWfJpn8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TEJo1l21HoRGRVFcVjpBieqwKdP5af9JEg2eqkjOyEY=; b=ZQhhNrHemBjo0oV7bChG9bJW6hiooWiqw8iNYZxpdguDP6xEUcaen07xXgA2Qp+kemNQ78 01GhzsUbmgRLe/To4YOjRo5wmUyWOqpCxKv5XXtLYd66mtJ2lSEKXBz63Kzch+oM2q7F/F dZnlfMwePBrSzyzl4spuQg02uz2Brrs1LDVpQR0VldFXth7hgERW4MktQRD4/ftE2cAMQr U4qaa65G9BtRZ1yiSmENzoGE6URCfLZhpAE27yvdMB9jlfKW5WPuP4xHcgP23A0QpmyS1I 3uioCpKDFnVVa/VFmNu9rBeaMl1wzNqH/4TBnty3/T/UDAgs5R4bLQSrskECjg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519897; a=rsa-sha256; cv=none; b=Du29IWLfy8RD5bUivqfSAdmmzaxio8h6A90eb63gKwZJoAytuTYmsetOd0+ae4WgBPH8B/ wAz7l3+CUHRsrT9SrAi2O+ZxNgVVbgCuQMuwpgXe/xQQTAr3YWOGRjygIiY/1fe8+K6CGa dMi4j/4iM3MnVcN01e4PA0lszLcShIqtm7Ra+mY7gDNXCueMwdIt8Y8NODtcweVgVq/Awj Jvi+t0v1gjYmDnI4x8UNXtvsAZ8A+c1JfmssJwI59pcr0boWl8Yt1F0GNCJGupBiA+gRUJ iiN7JW+eO+T2G9kz5ENdMpNc0B/yVp5VJayrs2LH/nL8fhchxHEdHWP5xvaieQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hT2NC2zL00; Sat, 28 Sep 2024 10:38: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 48SAcHqJ097928; Sat, 28 Sep 2024 10:38:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcHuI097925; Sat, 28 Sep 2024 10:38:17 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:17 GMT Message-Id: <202409281038.48SAcHuI097925@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 52fdc7dacef9 - stable/14 - LinuxKPI: 802.11: implement ieee80211_sn_*() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 52fdc7dacef94d34b53993163bba844735347ede Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=52fdc7dacef94d34b53993163bba844735347ede commit 52fdc7dacef94d34b53993163bba844735347ede Author: Bjoern A. Zeeb AuthorDate: 2024-06-05 22:12:56 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: 802.11: implement ieee80211_sn_*() Implement ieee80211_sn_*() using the equivalent net80211 macros. We need those implemented for at least 11n. While here also sort all the BA functions together next to the "sn" functions. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45819 (cherry picked from commit db8b3578627b5be93eba019ab2bbe3c03f7366f4) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 77 +++++++++++------------ 1 file changed, 38 insertions(+), 39 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 6a477ae5c32a..c102ada6def2 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -2077,6 +2077,32 @@ ieee80211_cqm_rssi_notify(struct ieee80211_vif *vif, TODO(); } +/* -------------------------------------------------------------------------- */ + +static inline bool +ieee80211_sn_less(uint16_t sn1, uint16_t sn2) +{ + return (IEEE80211_SEQ_BA_BEFORE(sn1, sn2)); +} + +static inline uint16_t +ieee80211_sn_inc(uint16_t sn) +{ + return (IEEE80211_SEQ_INC(sn)); +} + +static inline uint16_t +ieee80211_sn_add(uint16_t sn, uint16_t a) +{ + return (IEEE80211_SEQ_ADD(sn, a)); +} + +static inline uint16_t +ieee80211_sn_sub(uint16_t sa, uint16_t sb) +{ + return (IEEE80211_SEQ_SUB(sa, sb)); +} + static __inline void ieee80211_mark_rx_ba_filtered_frames(struct ieee80211_sta *sta, uint8_t tid, uint32_t ssn, uint64_t bitmap, uint16_t received_mpdu) @@ -2084,33 +2110,35 @@ ieee80211_mark_rx_ba_filtered_frames(struct ieee80211_sta *sta, uint8_t tid, TODO(); } -static __inline bool -ieee80211_sn_less(uint16_t sn1, uint16_t sn2) +static __inline void +ieee80211_stop_rx_ba_session(struct ieee80211_vif *vif, uint32_t x, uint8_t *addr) { TODO(); - return (false); } -static __inline uint16_t -ieee80211_sn_inc(uint16_t sn) +static __inline void +ieee80211_rx_ba_timer_expired(struct ieee80211_vif *vif, uint8_t *addr, + uint8_t tid) { TODO(); - return (sn + 1); } -static __inline uint16_t -ieee80211_sn_add(uint16_t sn, uint16_t a) +static __inline void +ieee80211_start_rx_ba_session_offl(struct ieee80211_vif *vif, uint8_t *addr, + uint8_t tid) { TODO(); - return (sn + a); } static __inline void -ieee80211_stop_rx_ba_session(struct ieee80211_vif *vif, uint32_t x, uint8_t *addr) +ieee80211_stop_rx_ba_session_offl(struct ieee80211_vif *vif, uint8_t *addr, + uint8_t tid) { TODO(); } +/* -------------------------------------------------------------------------- */ + static __inline void ieee80211_rate_set_vht(struct ieee80211_tx_rate *r, uint32_t f1, uint32_t f2) { @@ -2143,27 +2171,12 @@ ieee80211_unreserve_tid(struct ieee80211_sta *sta, uint8_t tid) TODO(); } -static __inline void -ieee80211_rx_ba_timer_expired(struct ieee80211_vif *vif, uint8_t *addr, - uint8_t tid) -{ - TODO(); -} - static __inline void ieee80211_send_eosp_nullfunc(struct ieee80211_sta *sta, uint8_t tid) { TODO(); } -static __inline uint16_t -ieee80211_sn_sub(uint16_t sa, uint16_t sb) -{ - - return ((sa - sb) & - (IEEE80211_SEQ_SEQ_MASK >> IEEE80211_SEQ_SEQ_SHIFT)); -} - static __inline void ieee80211_sta_block_awake(struct ieee80211_hw *hw, struct ieee80211_sta *sta, bool disable) @@ -2459,20 +2472,6 @@ ieee80211_report_low_ack(struct ieee80211_sta *sta, int x) TODO(); } -static __inline void -ieee80211_start_rx_ba_session_offl(struct ieee80211_vif *vif, uint8_t *addr, - uint8_t tid) -{ - TODO(); -} - -static __inline void -ieee80211_stop_rx_ba_session_offl(struct ieee80211_vif *vif, uint8_t *addr, - uint8_t tid) -{ - TODO(); -} - static __inline void ieee80211_tx_rate_update(struct ieee80211_hw *hw, struct ieee80211_sta *sta, struct ieee80211_tx_info *info) From nobody Sat Sep 28 10:38: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 4XG3hW0scdz5X8bD; Sat, 28 Sep 2024 10:38: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 4XG3hV5TjSz46wr; Sat, 28 Sep 2024 10:38:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+IzAdofVJ06Vlhiw2TsaI5scSCgDoTsiI2gPp7qTtsw=; b=trXxIVCegGlKWkamZhVJDGdo4yidWhayhgBsMv8T52yyBzzwmh3L6pTHGiY/z8IJ3lwfox E/hXsWMkUW/sn5HDLpZW//y6Tv0JKSzWEAn0XE3fCsbkLxZneaYRWJN4qnAGq3DgsAupan B57Kv0LGtWbGu/NXDMZAVOK+OoBS7Hm4BxiUHc9RXFCTRPLoxFkKiNStubkkT7ZTUxaMjd XwL3OZ6JEG+tOaDW0/YiCLl/6hHVMnUMnnMxKaICr7N+8ZMt1gt+N9ahEK+gkZAQMBm+Uf kUgyBu07wgO0Xy6drTEAOs9tETX/3UBcTdOx4Wvysj30s6hAEyZrae/4yxayig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+IzAdofVJ06Vlhiw2TsaI5scSCgDoTsiI2gPp7qTtsw=; b=n2DMwcpRswBtbJDk5LjPC+WpbIkBpcyPB5UtHCO4zdibKvZgyaYkMsE6oVKM3Wzw+snSdw fxg5g+Q1IR3wT1RnOH/mMalQ+GEP371X77PTIJQBN89ONLxk5bxUIWD6rDkeTObALI8Dzb zDkqYOEAao3b3zUHv5BpqFG8Fryl0u1ejvpcL2FRZkOACLi17dcJ1XeNe0dQu/RxaLvQ6w Sa367mA0NedTmo2WXKChBh6n2pVyiTcmX5OsIqX/WMJoOmjXDvJY0P7mbR7IGdRYsCMTnA lFd8J/cMqb72XZZelo7uhc8YcTVHrRJ1NwTZRJTnatO6b+V3Z2OoK1+0hTWPFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519898; a=rsa-sha256; cv=none; b=gOr0C86VlyCRVDHaKew96eJa7s8Tt2NX02yYHjgpPsY7E+Pa8fO3cDIzM2TonEVl3aRk2y 0WK+0zJQJ0edvO76yM7C84LKAfzMfZtv4WxkZcHaNM/lUfNDnwqxIcbjq1/3SxT960fqGs 0bNQ5LGynmmvteTi2tronPDe+yVPN3pk19pcnHgR4v9Xj1UcYShJJ8R24GnKnVxnoHMGEc 37yXFHiF8R7A7o+Bk9Q/BxAwAzBdj7fePgYEMvNUnQLIEzu35xD1UCMZvt6FkMlKwoMxd/ x21TI2m/K2SdpS5CLe4N5soZiyV1fGXOthrjm3grHYWpOlU5ZLuyWCEZAtN6AQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hV3RZyzLwc; Sat, 28 Sep 2024 10:38: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 48SAcI3T097977; Sat, 28 Sep 2024 10:38:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcICF097974; Sat, 28 Sep 2024 10:38:18 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:18 GMT Message-Id: <202409281038.48SAcICF097974@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 314069ff8c35 - stable/14 - LinuxKPI: 802.11: support manual lladdr changes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 314069ff8c35ff4f2824746b6301da7fe5b48f4e Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=314069ff8c35ff4f2824746b6301da7fe5b48f4e commit 314069ff8c35ff4f2824746b6301da7fe5b48f4e Author: Bjoern A. Zeeb AuthorDate: 2024-07-25 07:53:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: 802.11: support manual lladdr changes Allow a user to change the "ether" address by ifconfig while a VAP is not UP. Compared to net80211 (given we have no callback) we register an eventhandler per-vif (a global one would force us to use hacks to derive if a vap is indeed also a lkpi_80211 vif). Sponsored by: The FreeBSD Foundation PR: 277356 Tested by: lwhsu Differential Revision: https://reviews.freebsd.org/D46121 (cherry picked from commit 4aff4048f5b1b6ab0b905726853ba6083e37cc37) --- sys/compat/linuxkpi/common/src/linux_80211.c | 30 ++++++++++++++++++++++++++++ sys/compat/linuxkpi/common/src/linux_80211.h | 1 + 2 files changed, 31 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 948d96bd64ac..a4b5545e0c3c 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2751,6 +2751,32 @@ lkpi_ic_wme_update(struct ieee80211com *ic) return (0); /* unused */ } +/* + * Change link-layer address on the vif (if the vap is not started/"UP"). + * This can happen if a user changes 'ether' using ifconfig. + * The code is based on net80211/ieee80211_freebsd.c::wlan_iflladdr() but + * we do use a per-[l]vif event handler to be sure we exist as we + * cannot assume that from every vap derives a vif and we have a hard + * time checking based on net80211 information. + */ +static void +lkpi_vif_iflladdr(void *arg, struct ifnet *ifp) +{ + struct epoch_tracker et; + struct ieee80211_vif *vif; + + NET_EPOCH_ENTER(et); + /* NB: identify vap's by if_init; left as an extra check. */ + if (ifp->if_init != ieee80211_init || (ifp->if_flags & IFF_UP) != 0) { + NET_EPOCH_EXIT(et); + return; + } + + vif = arg; + IEEE80211_ADDR_COPY(vif->bss_conf.addr, IF_LLADDR(ifp)); + NET_EPOCH_EXIT(et); +} + static struct ieee80211vap * lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], int unit, enum ieee80211_opmode opmode, int flags, @@ -2799,6 +2825,8 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], vif->bss_conf.vif = vif; /* vap->iv_myaddr is not set until net80211::vap_setup or vap_attach. */ IEEE80211_ADDR_COPY(vif->bss_conf.addr, mac); + lvif->lvif_ifllevent = EVENTHANDLER_REGISTER(iflladdr_event, + lkpi_vif_iflladdr, vif, EVENTHANDLER_PRI_ANY); vif->bss_conf.link_id = 0; /* Non-MLO operation. */ vif->bss_conf.chandef.width = NL80211_CHAN_WIDTH_20_NOHT; vif->bss_conf.use_short_preamble = false; /* vap->iv_flags IEEE80211_F_SHPREAMBLE */ @@ -2972,6 +3000,8 @@ lkpi_ic_vap_delete(struct ieee80211vap *vap) lhw = ic->ic_softc; hw = LHW_TO_HW(lhw); + EVENTHANDLER_DEREGISTER(iflladdr_event, lvif->lvif_ifllevent); + LKPI_80211_LHW_LVIF_LOCK(lhw); TAILQ_REMOVE(&lhw->lvif_head, lvif, lvif_entry); LKPI_80211_LHW_LVIF_UNLOCK(lhw); diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index 80be87ebe231..7675a8b6cebf 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -165,6 +165,7 @@ struct lkpi_sta { struct lkpi_vif { TAILQ_ENTRY(lkpi_vif) lvif_entry; struct ieee80211vap iv_vap; + eventhandler_tag lvif_ifllevent; struct mtx mtx; struct wireless_dev wdev; From nobody Sat Sep 28 10:38: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 4XG3hX18qHz5X8Py; Sat, 28 Sep 2024 10:38: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 4XG3hW50ryz475c; Sat, 28 Sep 2024 10:38:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RlVAhMsBxvkiqjl3Xx6VpHtV//o/6ycx22vqFjaSk9Q=; b=O0QYlAI7SpYfcjcelP1FokWyX8nwf4tNX4ne81r4IxkNi0iex9abC/vIt8rh9o78qYchn6 ckBhD3J5VdnR2QOlOizcTNd3BSQ5Mt1J+QWEExaC4LfZKS1JX5EF2ZOtNrmcZHedMIbfUW ozmEPfK7Ho4MgBfOh3ZNYxuPDEglOEYnJ9hmr2GqDV4Vm2PDp9gW2qWWH/+EDsrv2muMCy Y+GNfSbvgJ3DlSQmN/PT+bKKr9yCGs7vBuZFlfkry7OjXZqqf/Pgvmff4IMO98BOTGNmd+ iB0F8SOVYhRDOyflRCaYlw6xZ8z/UsOPYfT3+HIi6D54TD6o9nj1vSaFliRPSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RlVAhMsBxvkiqjl3Xx6VpHtV//o/6ycx22vqFjaSk9Q=; b=UiRpYVTf5OS8cy+1HS47qy/rqISIjyvd+lLzyKLnL7ATXSPsvuJSQEGushss35Np5wzf6U vpV+B3otfQGAT7NydSVu/2ZBm7pT91fjCEBXiVQuo1Z8U1oz5yTMO5/aUNkKdi5nL8E+6C +A9NgSRaEH+oo+HY6iLv5IXyAEJiHuUlsMXZtiTWPIUHPZ1KIIohVeQF1cdsy9Ae3L65BS deiZXzfN60a8Az+oMZlbem0bGyQB7l722OuRP/ESZlKqLRxwZnHw/Nc/VY4q08Kb3hfMwq DQrs2FBWxR/jpVQsDXdy6xKwOTrqsVgmq7IvslCZ3hxnb4c8a2QT5MyrQq27Eg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519899; a=rsa-sha256; cv=none; b=E41KaTB/etcCA3Eb2Agcpmk8xUc6yzjMpIsJ97fwhaC/dH8xM0IpTC0mHVm1T7tyHYxk3T 6WHyS1p6tg6Nw9OBDgkXpmMYySQ3MhgSCcF+fOWCoOGcgGDr1m1kMPfLka1U+GgY+NA9Z/ H2eHp9ASlHpFUWNzdrqCDHoFg07XuP2DQEVwPgry88gETYW4DZQaUbFIW/VHET6OQSwjeB 7dFqDvuL0mpqgFUYzXze0G/+p8RaAOiQAuw+RXdlNRp718b+T6RWn8QhuXzMh6dwrg/Jt6 LCbDvesO/qn9YZnhGv+JjaDlk7QpId/tnmDJpHX9gYnzyejLLyN0tgeywzUfdA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hW420TzLc4; Sat, 28 Sep 2024 10:38: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 48SAcJV6098022; Sat, 28 Sep 2024 10:38:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcJLG098019; Sat, 28 Sep 2024 10:38:19 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:19 GMT Message-Id: <202409281038.48SAcJLG098019@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d5025c491639 - stable/14 - LinuxKPI: add get_random_u8() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d5025c4916393771c2759331c4308c7e4d11efc7 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d5025c4916393771c2759331c4308c7e4d11efc7 commit d5025c4916393771c2759331c4308c7e4d11efc7 Author: Bjoern A. Zeeb AuthorDate: 2024-08-27 21:20:09 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: add get_random_u8() Add a get_random_u8() implementation following the u36 and u64 versions. We'll likely want to macro-ify them in the future and add all the types which makes sense just to be done. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46464 (cherry picked from commit f29e915bc0d216a87f222a208caeb2172c93e4ea) --- sys/compat/linuxkpi/common/include/linux/random.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/random.h b/sys/compat/linuxkpi/common/include/linux/random.h index 808c5bc55974..893ee2b7b728 100644 --- a/sys/compat/linuxkpi/common/include/linux/random.h +++ b/sys/compat/linuxkpi/common/include/linux/random.h @@ -54,6 +54,15 @@ get_random_int(void) return (val); } +static inline uint8_t +get_random_u8(void) +{ + uint8_t val; + + get_random_bytes(&val, sizeof(val)); + return (val); +} + #define get_random_u32() get_random_int() /* From nobody Sat Sep 28 10:38: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 4XG3hY2y0Cz5X8MJ; Sat, 28 Sep 2024 10:38: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 4XG3hX5zVcz475y; Sat, 28 Sep 2024 10:38:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519900; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FaShbjKYbXv/NFOwo8py2xkg0uEJglaFJnMd3ANmxW8=; b=T14rr2nSxMSHafGptlabkEb0s2LP9tdgSSBoAg6dC1C506yOdYeYIwyhQUgb6gIpsm5fYf yR61XsguWi5R2unISq2VwlKcmHlTwsySLRJ0R02kD8OB9Wp+5djwAth1adUuBB7hbP3RZw gRgtNQV0kPR9r0dPoVOh9i34+1t92c4iHy6dhDm6q2T9SLENfkuzXjmiPalEdlQcvu3K4m 3wad3UbdEw2tCqFNeQDVP8T41bneOLyfydSF/Vs42daAPcP8f4jCE044OdGywFANSNXKi1 CTsqr9iGSLv5A+cesx/DzUt33Si1/7wqoKNQBNrMsaxq2tDx0CIpnRwsdiTjBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519900; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FaShbjKYbXv/NFOwo8py2xkg0uEJglaFJnMd3ANmxW8=; b=ijKCglvq/UjLGLMDY9it7QvfcsoIAkpSJhu1NIIc4QQlhbjVuu6T1U/wBp4odzn/8XWMj1 HqapfgbuG06zvkQBWOLAj0vIRn0FySwLzt6Okwsa0fCQ7Iu4w/cayctzt2hodPZ5ozO3ub p0UhONdVbzjwfaorFt7esfuzsJsvCxsjgTztaU9uV1K3Vh/dsVOEf7roJhquKaGlNDcnLY k0gVStibLB84t7X3mx+PLQ5tpYbjqP3KluCnOvTXaZ6OAX+6QYjPFMpiyoHTdNI0EVo3Jq hDRFublJZkrQVBui53AhBazzvgEIF+X1VOcUnxj/T+kGar2triN7x/bgLu31ZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519900; a=rsa-sha256; cv=none; b=enJiq9B/oWqUcsDZsQDL5Gq8QiF7tDLwUBfezZCaQEZbBwlVIX57hYjgc8Gv4YzR4iKhyW bOTmJpwpXNK6cvwJUHv8Z5SpIt1sqV4H0EuB/oBdT5ATqCRoeIneG8b2gZoZDXLLs94bqz 9/mfYBTyo0/HvLQgpJL3vZCq5S7y75RbZiTcGl7xSiG5fxjp7eMShgeNxfcOTIPGQKjBnV VsscJ5NAEbU2JuEEpGrlwQFeUmz8+tRRMQXGQ/vGz6pEIPF9KJE2op7O9SNY8dTAq376qp 49WHJxYNLkXaoWEZV7qc7+j1tIDoUq14H8DuVP8P/tWBMGry8Ba6ODQQn2eNuA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hX53z0zLt4; Sat, 28 Sep 2024 10:38: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 48SAcKdG098067; Sat, 28 Sep 2024 10:38:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcK96098064; Sat, 28 Sep 2024 10:38:20 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:20 GMT Message-Id: <202409281038.48SAcK96098064@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 8e5f4f5f75a7 - stable/14 - LinuxKPI: add ENAVAIL error code List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8e5f4f5f75a7348a86470916bab9107f53040242 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=8e5f4f5f75a7348a86470916bab9107f53040242 commit 8e5f4f5f75a7348a86470916bab9107f53040242 Author: Bjoern A. Zeeb AuthorDate: 2024-08-27 21:05:09 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: add ENAVAIL error code Used by an updated wireless driver. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46461 (cherry picked from commit 8adb745dc9716e769ef0f7e993cea8a07735d5d8) --- sys/compat/linuxkpi/common/include/linux/errno.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/errno.h b/sys/compat/linuxkpi/common/include/linux/errno.h index ea258587c6f7..d634675d43d0 100644 --- a/sys/compat/linuxkpi/common/include/linux/errno.h +++ b/sys/compat/linuxkpi/common/include/linux/errno.h @@ -68,5 +68,6 @@ #define ENOMEDIUM 532 #define ENOSR 533 #define ELNRNG 534 +#define ENAVAIL 535 #endif /* _LINUXKPI_LINUX_ERRNO_H_ */ From nobody Sat Sep 28 10:38: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 4XG3hZ1g0Zz5X8SP; Sat, 28 Sep 2024 10:38: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 4XG3hZ0NJLz478N; Sat, 28 Sep 2024 10:38:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V+f5eIHsxfffamSiQWy7q68i0postq8ehqfWb9SLEBw=; b=mMY2rePhrcCTsWFbX5dfgrN9XsKOcvtvpacRtjvnUz3ajdYiTcZxw7TN6cGUyYZPYcsSjw FCqibg1+dsDbLugOl4geq/jjHeFtnVuDfK0bEHl5Vp98W4GTR4zodev1sdbfIyo18gML0V CNfTNEX2BQVLzaOKAkmfIOuDBBlNUmSy0bVtU15RLAEzkSjI/vHyBnhf04oU9OI2DabIC8 nAXxkLBv7XdOcozWO+xkQSVZgt6Z3SiThSOJdiyWYJAvM/ecEEJALJjAR5otSZO+I2zVG1 Hs5UQQDPM000PMBydOW4T1G2lOlPbAOlzN2WKvv3P0WVS1nFVefA5AsbOmhOCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V+f5eIHsxfffamSiQWy7q68i0postq8ehqfWb9SLEBw=; b=Yi0Z1V4gXf6uOJH81QD5svLaQjZT/aD3XoYBlXeJTJroGNrypztqD94LstUR+aRTa/kqqO Tey9tFZomJ8+XwJ7t9cAhwx8/RpqzeDCXMJ2ssj4tAX+1d9M444TRiweMgi8TdHSHrE4/5 Q7mG57Sj5h1zWScD6yTQIO0wCGepPUrBBX345vDMwDWRWB2F9l6dGeHIF0epVfctoSDDNZ La7psEm1LUePQAElkCbFZVGqbseGGFFRMxUJCbCFQiYfh70+yvMvRUHs3NTDf+myu6iaZ1 Vme8yBX0pxYsPFnhblq3H9EJmmJrzYzaPPpfhIHKBnAHtaoss4XawcJWA7yuhw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519902; a=rsa-sha256; cv=none; b=u6uKLMqwPiNpR7mXO5mP6J/0ISiiHW684fDe333mjGfSdNuUVYT/yT+3NXezN/aD9lRkt5 mnbJ7kcan4iPn1sfzxY25Smn3rIp60HFudzF8zhLrkUsm7Js8qTk9daO8q8MKz3TNMYDzA SCkXyJfvhREnXvKG2ZOvxQlfRdUo5yGHoNAa1UXhAE6K9vJlvGwfrDurjXj3wbj+Y63Mr/ y4G/qh8m8uMasIJLPrvyz+xLo67xQ6dqyuJtaNUhJ909fUkiDPr34PbnH5dRbTgcSQ3SN/ CXkyi18QJ1ZyR7uiV8ZDbkEQ9dqz0N8+rq8VWh37mLEbDNmgpnRgjmG87PfK/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 4XG3hY67QyzLNG; Sat, 28 Sep 2024 10:38: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 48SAcLhR098107; Sat, 28 Sep 2024 10:38:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcL5o098104; Sat, 28 Sep 2024 10:38:21 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:21 GMT Message-Id: <202409281038.48SAcL5o098104@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6dedd620cfe3 - stable/14 - LinuxKPI: add eth_hdr() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6dedd620cfe35b6a0a637132c772c5f2c7c2b40b Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6dedd620cfe35b6a0a637132c772c5f2c7c2b40b commit 6dedd620cfe35b6a0a637132c772c5f2c7c2b40b Author: Bjoern A. Zeeb AuthorDate: 2024-08-27 21:07:52 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:13 +0000 LinuxKPI: add eth_hdr() Add an implementation of eth_hdr() needed by a wireless driver. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46462 (cherry picked from commit 273cf7d36336eeed5fc2ad42e5e12a36e36650a0) --- sys/compat/linuxkpi/common/include/linux/if_ether.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/if_ether.h b/sys/compat/linuxkpi/common/include/linux/if_ether.h index 3735ad2f5527..6676e8fc142f 100644 --- a/sys/compat/linuxkpi/common/include/linux/if_ether.h +++ b/sys/compat/linuxkpi/common/include/linux/if_ether.h @@ -34,6 +34,7 @@ #define _LINUXKPI_LINUX_IF_ETHER_H_ #include +#include #include @@ -69,4 +70,13 @@ struct ethhdr { uint16_t h_proto; } __packed; +static inline struct ethhdr * +eth_hdr(const struct sk_buff *skb) +{ + struct ethhdr *hdr; + + hdr = (struct ethhdr *)skb_mac_header(skb); + return (hdr); +} + #endif /* _LINUXKPI_LINUX_IF_ETHER_H_ */ From nobody Sat Sep 28 10:38: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 4XG3hb34jyz5X8SS; Sat, 28 Sep 2024 10:38: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 4XG3hb0Lysz470R; Sat, 28 Sep 2024 10:38:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W9URgyKzT0eMv7evW5XZfydzb7C/8atQ64obH8el3O0=; b=eOWTMybI9LovldsHZx2C5+fP4ZbEPwK8LzGn/hx7sWgYIq7FJAlYTN1lXUY80KiUZUsDUK JM5HDPDTSLXCzG2lv/ywrS2YoErug1Z6L4uuthAgKynKP5dfvWPszJo/ud7Un6wGZGfaZr 3V4AinoS/MnOKUryt8V1wmqKqS8fBmxrFikNQVxHPTdDcFb9RGQxqdIab1VorUjvwL1FNH et0sKV5xe/nSdhftCBu9vXDCyYOQraotcG6/Ta+oyYk8sNHm0FAHrIPzqnRttGkxJlJjyb Esaub69IvcsiyLXpH3Ah/BkoMDHIcWbYbNadGz2zrlZBJZ/9XrzwsWig/ml9nQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W9URgyKzT0eMv7evW5XZfydzb7C/8atQ64obH8el3O0=; b=yTWGl1k5jk4AEECFtaqbWUjhk8KFFaQlqtxigZYyM+8kvSDsitORNNa7xDnZ7AU0i4YPOn /u6QIfN9j9Hb8UPk8RmdKBu/uHeZfElWuVMd3i59Jqp5KJ6ovq1rPFg2JI/rUkzVOHdUmb yU7fVLATApkRHLkISoWFhW/j6Fb8sB2ZOQ1ySPisuUerfNHactPa3vGIxFZGVuy6JvrJkO KcYeJk/UNv7gjgmlRTcPll3WBlBMtdVFQL+qh543jtnUgk+qL6Z///F/6mtzKfoo1MBObw fwk53NcLJMcG0O9CiBu0ojvgV7v9D4NlT1cmZGNq1tRkL071SQK9cdtlD0VxQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519903; a=rsa-sha256; cv=none; b=CRAn7RVTB15uVeHS5Y9JzCHBHL8vKtpwDPFvs6rAeGApfPJFT56dftoZB4ogw8L2h8XZqX qzJ/b50ae6f/nmAtYY3d4Pn+ptwLDa+DMLA/dNdPmeSA540eQzlAabRGBv8VEk6k0SMNve EUY1NxZ099ieENvAOJx4aR3oBy0orSS06gVIjKirmgLoNp3j2BIWXrWHrQyzG39b5gRpXL Jxg9hB+8rHNHadrImQPFXYd9iY1Kgc5f8rpdZQdapl/V8xTJEUynU4MqosviNvK6O5ZqXD kWfmoLggCM4ec/AhVtcnJPmfk6RaZ0h6adD3lrLxk9GhgFIhnY3i5HedqiZ6AQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hZ74f7zLrF; Sat, 28 Sep 2024 10:38: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 48SAcMsm098146; Sat, 28 Sep 2024 10:38:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcMw5098143; Sat, 28 Sep 2024 10:38:22 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:22 GMT Message-Id: <202409281038.48SAcMw5098143@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: cedae002cba4 - stable/14 - LinuxKPI: add no_printk List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cedae002cba47fbeb5e0de2393eb3a4673590019 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=cedae002cba47fbeb5e0de2393eb3a4673590019 commit cedae002cba47fbeb5e0de2393eb3a4673590019 Author: Bjoern A. Zeeb AuthorDate: 2024-08-27 21:12:08 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:14 +0000 LinuxKPI: add no_printk Add a version of no_printk(), which seems to be there to have format string checking while never calling the printk. It seems a very weird thing and it needs a return code and for some reason my initial while (0) { } version hadn't worked while porting over new code but could have been further downstream format string problems. if (0) seems to do the job though I would have expected that to more likely simply get optimised out without any futher format checking. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46463 (cherry picked from commit 1847e63d63f440cfcb2f4ee2c2ee8990f0272d88) --- sys/compat/linuxkpi/common/include/linux/printk.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/printk.h b/sys/compat/linuxkpi/common/include/linux/printk.h index 933d5aa6f94a..3840a6e5fb8a 100644 --- a/sys/compat/linuxkpi/common/include/linux/printk.h +++ b/sys/compat/linuxkpi/common/include/linux/printk.h @@ -125,4 +125,11 @@ print_hex_dump_bytes(const char *prefix_str, const int prefix_type, #define pr_info_ratelimited(fmt, ...) \ printk_ratelimited(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) +#define no_printk(fmt, ...) \ +({ \ + if (0) \ + printk(pr_fmt(fmt), ##__VA_ARGS__); \ + 0; \ +}) + #endif /* _LINUXKPI_LINUX_PRINTK_H_ */ From nobody Sat Sep 28 10:38:24 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 4XG3hc60kCz5X8MP; Sat, 28 Sep 2024 10:38: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 4XG3hc1mMCz47FS; Sat, 28 Sep 2024 10:38:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s/bO9JY/ixDi82/5I6MDhdrujR4SxdyaIfqEebxREqo=; b=tQj50mH48YVD0wfZX+xMcrTqVdapdNPMQI+S7IVFJwMyjpDNyPifGLWPRVm3TaFV+eUBCX Yk6ACl5PNr41xp/UbD10EtCNVX4H2X4dv9KOkSYx1SfUQj0S2vZEa/FQgLr2L89jtSlSD6 0wutxfer3XcypyBwgCAZ94ukbotBAZV1VrE15eTHPXayFiXbUJKLEUimSKCciM8GscOEU0 gmX52zJvyRK32Dsdn4pixUu/GmlCQs4D+4nFIF33oaUg0aUB4EYavluWXpij70ohIzEUD+ 2/87H3rcCyaiMOO8zlgtPiB+r9ChNxsrshqtTlsAVZp6uQ5WjwMuTZnio69YYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=s/bO9JY/ixDi82/5I6MDhdrujR4SxdyaIfqEebxREqo=; b=gjBnAKEgrS9ZLy9eQRj3TLk9EvtIOqu2TJpnTU/AAKxsa84CSjRjOzXtuDtF5jnE/fNQ8d w1WxOzaheR/VQsPMhwcYVFVKRnnBfajPZxH5UTLhwa7JYYKuGiWSu2nOON2orhWKMHFwN4 4XMkwhOFIEts5/wDnCVYG4VTz9KYvI3kwsZPyyRzIioqQo5D3bitmVkniLiWKxPI+HHMyd /MTLvDw5f9vTxc4/GHuI2RAb6ksuLTU4TDcLpfRgshXfR6KSeK4An4TVaTBggGQaA2Rdrc SGvdujFNoHzeuoQiMcSMGfy9tWGy+3PyKFyYWeobAWhFRbg/0t3yMMTBcArodw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519904; a=rsa-sha256; cv=none; b=T8dw5S3r9QbPIHmG5F1X4rrOnc9zyhX01c78hh6jfsNQpIR87JgIcrxodRlxBNzxeT1YwQ 1HAHeiFtmvynAQNSpPdPRfcM/OCjQcjxozUN9sqFDYa9mRLIluShRt+XKhYhLn57YN7Ka0 zNj/rFNqEvlibnT9hcXAxqr8kcMxmVt37PpNNWtYxEEHEcTrLtDZ6l7bW8mneHbIVldNw7 nem93chJXCQin5Kqw5umGIbuxvIr9vf9LEzbxcH2CXrN5nB3TtK/zK1wrEW8F7uEcnrcfo pqJgxuhe/ZBykOB2kdnLk2oWglkRDYqUSPn734+UGjHg5KDWnzappz1vS2S4SQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hc0vZ9zLnR; Sat, 28 Sep 2024 10:38:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48SAcOon098205; Sat, 28 Sep 2024 10:38:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcOAQ098202; Sat, 28 Sep 2024 10:38:24 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:24 GMT Message-Id: <202409281038.48SAcOAQ098202@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e138f36f6422 - stable/14 - LinuxKPI: add general module_driver(), use it for module_pci_driver() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e138f36f6422212ac8b459ecfb2f0677404a3a7d Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e138f36f6422212ac8b459ecfb2f0677404a3a7d commit e138f36f6422212ac8b459ecfb2f0677404a3a7d Author: Bjoern A. Zeeb AuthorDate: 2024-08-28 14:21:33 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:14 +0000 LinuxKPI: add general module_driver(), use it for module_pci_driver() Factor out module_pci_driver() from 366d68f283793 into a general module_driver() so other bus attachments can also use the same kind of macro without duplicating all the lines. Redefine module_pci_driver() using the new general macro. No functional changes intended. Sponsored by: The FreeBSD Foundation Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D46467 (cherry picked from commit f5c7feee7129dc88a2e5dc3ce0a075cb5e4f534a) --- .../linuxkpi/common/include/linux/device/driver.h | 33 ++++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/pci.h | 21 ++------------ 2 files changed, 36 insertions(+), 18 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/device/driver.h b/sys/compat/linuxkpi/common/include/linux/device/driver.h new file mode 100644 index 000000000000..03b510c9c8b7 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/device/driver.h @@ -0,0 +1,33 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2021 Bjoern A. Zeeb + * Copyright (c) 2024 The FreeBSD Foundation + * + * Portions of this software were developed by Björn Zeeb + * under sponsorship from the FreeBSD Foundation. + */ + +#ifndef LINUXKPI_LINUX_DEVICE_DRIVER_H +#define LINUXKPI_LINUX_DEVICE_DRIVER_H + +#include +#include + +#define module_driver(_drv, _regf, _unregf) \ +static inline int \ +__CONCAT(__CONCAT(_, _drv), _init)(void) \ +{ \ + return (_regf(&(_drv))); \ +} \ + \ +static inline void \ +__CONCAT(__CONCAT(_, _drv), _exit)(void) \ +{ \ + _unregf(&(_drv)); \ +} \ + \ +module_init(__CONCAT(__CONCAT(_, _drv), _init)); \ +module_exit(__CONCAT(__CONCAT(_, _drv), _exit)) + +#endif /* LINUXKPI_LINUX_DEVICE_DRIVER_H */ diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index f9b60ae186b5..73882b312db5 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -36,6 +36,7 @@ #define CONFIG_PCI_MSI #include +#include #include #include @@ -274,24 +275,8 @@ extern spinlock_t pci_lock; #define __devexit_p(x) x -#define module_pci_driver(_driver) \ - \ -static inline int \ -_pci_init(void) \ -{ \ - \ - return (linux_pci_register_driver(&_driver)); \ -} \ - \ -static inline void \ -_pci_exit(void) \ -{ \ - \ - linux_pci_unregister_driver(&_driver); \ -} \ - \ -module_init(_pci_init); \ -module_exit(_pci_exit) +#define module_pci_driver(_drv) \ + module_driver(_drv, linux_pci_register_driver, linux_pci_unregister_driver) struct msi_msg { uint32_t data; From nobody Sat Sep 28 10:38: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 4XG3hd60wZz5X85c; Sat, 28 Sep 2024 10:38: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 4XG3hd5NJbz47VB; Sat, 28 Sep 2024 10:38:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n6f4cjDQkUvlgWwTLBmos52KOx0EakTGDbhfafvX5jM=; b=BSb47zv10v1xFo5JZalLJek3XQ6hBf70W8V6kSeH6FgoYLIgf1nPNkqV6mgPfA3omcHL9z T5i67shyUx1AlOk6dp5r53wZb453dw36cuGQqGGfhep9SE/I7s+5wiyXq4wHIIIzlcLx3Y oNpTpGu/2/UzO63KWUGN/ajta874H8hr8gw7f45g92UlsmoadsG7itm1+xv9BanULkcbo0 XUXYIZUi0JQJQl573rkVKJB2oHqz4vn1A9zAug3RGUFWeLfHaUTakKl1IFiv+DlJqT/WS+ uUXgqVcKdtuzHw+TuWqv7JWf1XJalkKB4x2eqezm6H5SUc4v/ZR5IIdkusjnHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n6f4cjDQkUvlgWwTLBmos52KOx0EakTGDbhfafvX5jM=; b=VlFW3jlJp1kc1YMzOUByOj+KkJ0uL3vsziXdjdIKVsdfc3Gw/Y9JpdYOxfbVBz2JNFkHo7 zMmKPVsqz/omsf62Erv9nxaWTjDH7BiCgECOehTGwah8k++giyA4Wvk3cMjyvo3nA1t986 ciRfqsEA6Pk51YKFdE8JdyJ5Rkh1gXhnxKQqR+cRl2BXQPEoZg9G427Up76lMIyBiYwU0h CeV2RWL2KfUvzGWLFh4BoCQ47NPkdSUo9XrIFUluOL6Ox5utuUTnmncnY4sguV4YCtLOCY /peiB2PjOBa9DnJFJk/zRorX64y698ZNYXRfOo8/OuaeHxZoWrXDphhCrpg64Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519905; a=rsa-sha256; cv=none; b=eiOl1AU0RdB9PHF2pNQoL5VKxe3M9V/s76GsnRZ4K27Wc/SJ+69bGGuKTs31K3kFHMIZWM btirMY9laghITFyjF/qh35RcCoOT+uIxklPGHrBg4/XAhBXKq5g8NBnla7jjGe6jh3i0eW FryCdWdSygLjPEelb6aEFLk7d0vI7l9enZMaJpBYrOMWqY5I3h+p30ZA4+B+xe23qWEw6Z FdZGAxJSLDIELmIG1E2eAInAFycJXRo6FukBR8qwq6CJ2mjsaNgqeI/8rtKGEzGSxT8zJB 49yzy09LzAaTsszeUR1WJf123N7U/5yN4UhRJ52CMR5AiQNF++MqyhRA/Egitg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hd1zVtzLYq; Sat, 28 Sep 2024 10:38: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 48SAcP5T098252; Sat, 28 Sep 2024 10:38:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcP48098249; Sat, 28 Sep 2024 10:38:25 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:25 GMT Message-Id: <202409281038.48SAcP48098249@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 286250daf5a3 - stable/14 - LinuxKPI: add pci_err() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 286250daf5a335f111a897333888f68f4f6220e7 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=286250daf5a335f111a897333888f68f4f6220e7 commit 286250daf5a335f111a897333888f68f4f6220e7 Author: Bjoern A. Zeeb AuthorDate: 2024-09-12 20:40:59 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:14 +0000 LinuxKPI: add pci_err() Add pci_err() as a wrapper to dev_err() as needed by an updated driver. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46660 (cherry picked from commit 01e1131e4a20ea377d580ecce210aa86726e71c6) --- sys/compat/linuxkpi/common/include/linux/pci.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index 73882b312db5..aa756c6e5b09 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -367,6 +367,9 @@ struct msi_desc *lkpi_pci_msi_desc_alloc(int); struct device *lkpi_pci_find_irq_dev(unsigned int irq); int _lkpi_pci_enable_msi_range(struct pci_dev *pdev, int minvec, int maxvec); +#define pci_err(pdev, fmt, ...) \ + dev_err(&(pdev)->dev, fmt, __VA_ARGS__) + static inline bool dev_is_pci(struct device *dev) { From nobody Sat Sep 28 10:38: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 4XG3hf6pMZz5X8QD; Sat, 28 Sep 2024 10:38: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 4XG3hf3cKdz47Pv; Sat, 28 Sep 2024 10:38:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lzuv0TSbTGa6if2HwrQH2GbN4U1A4yqxhCcxPEb6Q34=; b=wChNzvNYtK6fiuSf5mhgGkf/40lykUNHJfHPSMXIedyi5SckIZGOWq1OVOJr8QoEhi3UWc j80ONKvEEzCPTgVwcmm8sXxpEsAlWBMV1WhAM6CzIN8Xm1iA63t1xAgUT1F2tUWaYGkejo XUkbbBBjGFLj1osVqbMCe1UVCB6GQOwmKB5H3AYiHXGSDh2W3pCoiSz/7oB9ZcIjAR34Rk YqD8PMzO1EtkI0mYNTH1GG/RufJokn1T/msgeteGbgy9Z8s+OxaBx0TnkBZNRJh4QVCHJi oX13s+Zut7uLwE5Ak1K5b4TUMd9MV8anG5o6gz4JX4uU8+cpsPeAQ0OdMTVkOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lzuv0TSbTGa6if2HwrQH2GbN4U1A4yqxhCcxPEb6Q34=; b=YAL7ny0FGZ/poOsf9TErDxmXCb1ll5Rb69C9SNoL44HFndyGC7Z5IlzRFUxUCVQwIo4q4a FNocDHjH3YfrFB2jOYHwbWlyLxV4UIf9SYd1cgj31N+KmLum89tmTTWkQasuaTfggjhrZk WNTnroJvgUDIbsKVOzsGPmWIztKZSnPVWVchAg4niCQ4FXAeGPXg9YUi0LqUzEMGEaPgHw WyqZPhq3ovREkkWg31S8j2x/uIWIhUEHSEXfRpf78LfpFDC/IwUbZmg/aQWkkmez5HYMp4 enWAjw+j1W/DQ7r7Vq2yhoPUGck6KzihQ9/njedS03y1biMn/sqVMnW0tL1fAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519906; a=rsa-sha256; cv=none; b=GAEuJAzqIzGWMj7mD1r1tPptRPjjvZGZYUJS6f+NRZOQWa2D3SCSVCChM4i7nZIVugsS1a 2ROBmCH020upavuH2pb5vPGt9SJ1VMBmM2FhxGxTrw7dKlLSSov3rx++gQqO6GT2v8LKVu yFXyyQvnKCxaQOgC8XnmcVd70ONkXpHPTdVA1pI2qyf/LVG2ffOBOF1hqdXW3CnRNhXMpX TncfHqu9FI55GOokY+iGiOOstf1qPYmnN/aLx8BFfzQ+7KmtALV9gw8K17fMTMXeESnuR5 59wQ7U08Mgxer4E/+5KoztGqURaHoyyQhN3eiFU15+KoxGZ8lfSIgeeQGGIXuw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hf34kfzLt5; Sat, 28 Sep 2024 10:38: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 48SAcQKj098300; Sat, 28 Sep 2024 10:38:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcQN0098297; Sat, 28 Sep 2024 10:38:26 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:26 GMT Message-Id: <202409281038.48SAcQN0098297@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ea18ffdf6e91 - stable/14 - LinuxKPI: add more fields to mhi.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: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ea18ffdf6e91a42fa07be355c0c1afb7ff7bace6 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ea18ffdf6e91a42fa07be355c0c1afb7ff7bace6 commit ea18ffdf6e91a42fa07be355c0c1afb7ff7bace6 Author: Bjoern A. Zeeb AuthorDate: 2024-09-12 20:44:06 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:14 +0000 LinuxKPI: add more fields to mhi.h Add more fields required by updated wireless drivers to mhi.h. Sponsored by: The FreeBSD Foundation (cherry picked from commit c12e3a05252ac9f43a6db379f88e4b4a07c06d46) --- sys/compat/linuxkpi/common/include/linux/mhi.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/mhi.h b/sys/compat/linuxkpi/common/include/linux/mhi.h index 2e0b74f29def..24b3205d6f5a 100644 --- a/sys/compat/linuxkpi/common/include/linux/mhi.h +++ b/sys/compat/linuxkpi/common/include/linux/mhi.h @@ -75,6 +75,8 @@ struct mhi_controller { void *regs; int *irq; const char *fw_image; + const u8 *fw_data; + size_t fw_sz; bool fbc_download; size_t rddm_size; From nobody Sat Sep 28 10:38: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 4XG3hh0BZ7z5X8Vc; Sat, 28 Sep 2024 10:38: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 4XG3hg4dxnz47Rk; Sat, 28 Sep 2024 10:38:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ecns0IU7H7lfDINptqhhXwXfJ47rDhgzTo4l2Y7JUyE=; b=pvlnZEjigxIVog8g2G7jXHzmg+Axn1K+7fvo+J+TOhhzN4E8D5LjwWLITmbjQsFXJRuk7J CEAT7ijOyPECEWsaSp6cBE/p8mMVU/7f/lAng12iB+nBNY06k80Ax8Qc28YStTHvOPJt6D UvDEsb0L49rbJYvvYQlaQc9t5MCOYiqWOgDZZoRi5yxJceHEVcZ3r+gx5hBJYp2TPfbWz2 RK5RFawERqUeddKVx5UoZH1gbxFn9eAaZFfcfm5jHCWEMOtq9XRrStb9SqvwvqblA2jiUw 7E2Q1GDu99T8l4LsoKNYHxf0hoSlW8IL8wRE9yF1jPFX9oAt1QDTLfaynSAOpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519907; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ecns0IU7H7lfDINptqhhXwXfJ47rDhgzTo4l2Y7JUyE=; b=axuuKe8MqmKvpmNIT8O4D8lkVKLQ3Y1yGv2gayWOS9CReH9yp1TSYViJNK3h9AA/wzS2Fa 7710rtE8P7spBHftwK5wCOPrTgIrIStO2HE54W+FZahXl9bnkDvkiiWPzmyTYsUEzvV6bI NxUG4l9YcfogfopRlQeERgYnBHr0ALUQ9F/8iCDKzcudZDo93+O6FkSeFzyTiSkrue/2RT wFly+hTnMdL6PKZ0ruLexFb0MbqCxeCuCWyhSQZirzq2swuwdxL1Uhg7lK9mBr+vhrMI32 yQSV0RobGh7PKi07VZsMC1fkX2YTyNtSk47uuUOnxd6Y2aWSl47Sb+ZhUT7XOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519907; a=rsa-sha256; cv=none; b=h8z6f+36rqq/6OarMwE8O3PMaHyrvNEYkth2DNzMwmfTs3A+awSrG5zh/GwoE2VvmEN1SZ oAkn9bSdwGGEh9XBQ9sexDV2NYsRC3Gf3eyd+XSAF81v518EmYciKyHlF+n0lUPfwWmyEj mzx6n6rNJzYaF1CRgpBxi9pyzBh9qt0Yxw6b7+kzEM/0evmSh0One8ueoraZgjl1kNABu3 hOp5yTzuKCyUdawkyuso2+1dkF+i18NSZPAqQRe3tbA5Eguv8JQe5Udw735HgVDeW7a9Mk 3eH6M8HScMdtHTcs74I9mcsU1PkBK+IRh8X5ENcS06+YTigjUR+zgZAhn0WVaw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hg4G99zLt6; Sat, 28 Sep 2024 10:38: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 48SAcRmE098348; Sat, 28 Sep 2024 10:38:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcRPF098345; Sat, 28 Sep 2024 10:38:27 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:27 GMT Message-Id: <202409281038.48SAcRPF098345@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: f00e737be055 - stable/14 - LinuxKPI; add more defintions to netdevice.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: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f00e737be0558f4bc8ae858783ab8cadf519ec69 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f00e737be0558f4bc8ae858783ab8cadf519ec69 commit f00e737be0558f4bc8ae858783ab8cadf519ec69 Author: Bjoern A. Zeeb AuthorDate: 2024-09-12 20:46:22 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:14 +0000 LinuxKPI; add more defintions to netdevice.h Add new enums to netdevice.h (including one which is referenced but no value of it is used in a driver so we have to add a "dummy" value to avoid an empty enum). Sponsored by: The FreeBSD Foundation (cherry picked from commit 6ed447b51a9d6cf22aae2dfba6efce3922ae6d57) --- sys/compat/linuxkpi/common/include/linux/netdevice.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/netdevice.h b/sys/compat/linuxkpi/common/include/linux/netdevice.h index 3d2b309909b4..dde3ad07dec2 100644 --- a/sys/compat/linuxkpi/common/include/linux/netdevice.h +++ b/sys/compat/linuxkpi/common/include/linux/netdevice.h @@ -75,6 +75,10 @@ struct wireless_dev; /* net/cfg80211.h */ #define NET_NAME_UNKNOWN 0 +enum net_addr_assign_type { + NET_ADDR_RANDOM, +}; + enum netdev_tx { NETDEV_TX_OK = 0, }; @@ -95,6 +99,10 @@ enum net_device_reg_state { NETREG_REGISTERED, }; +enum tc_setup_type { + TC_SETUP_MAX_DUMMY, +}; + struct net_device_ops { int (*ndo_open)(struct net_device *); int (*ndo_stop)(struct net_device *); @@ -122,6 +130,7 @@ struct net_device { unsigned long tx_errors; unsigned long tx_packets; } stats; + enum net_addr_assign_type addr_assign_type; enum net_device_reg_state reg_state; const struct ethtool_ops *ethtool_ops; const struct net_device_ops *netdev_ops; From nobody Sat Sep 28 10:38: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 4XG3hj1rFxz5X8YC; Sat, 28 Sep 2024 10:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG3hh6BsJz47Kr; Sat, 28 Sep 2024 10:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lO2HL0LCgI0rD5LNlJnqi34PaLqHY7hYq5TL4KItynE=; b=WRCAXeaRRWmrn+nKmq3RvWnXEvAcZK7zL4sQySyeeS239HD8LuX7+7yydtRS1jFfvWLRAp sB04FGUBmFwe5VeECWxhnQFS4/b0JINpCuV0fIv7wwDrA0N/clpYuuN2KTgmKM3o8levr2 Ot20O3AoUD2uQEkszO22osjKS3+Ss/Tzk8Kv8cphxrcfIR/zk2SETI28wlFXveTwTTZ0oS HLf1bYIUJBymrA9iNXS7C66F3G+g6IWJTJ+QeyhtIDy1BhYnP05PKL7i8am3yVfCJPO2P5 hsLXO3stG6qOhPaHaXipviEpgPDrmncLVSBpBm5meSY1f6Hmnuv2C3325B3sRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lO2HL0LCgI0rD5LNlJnqi34PaLqHY7hYq5TL4KItynE=; b=eqrxgEljv57Qe+H9SVkCxuh9WwsPczP7xo7vJF6aCnGBAlruqOl7gnGTUbS+rlWk/5uS5r 3q8UAF5DLueEPKXGFbin5WTDaHxcl+2W0MxqzqxyKCkodjSZCHYhqUAQatWWXFTjmuuo5e tuTauYj6SyA2dEtBrNzrCK1GbZKNI4O9bwlRfQ0jrXj+0joV/lUpg1IlTD6MT/rzgjfkpZ bZX5XKrIBJEGBgoEBs6oTFoHS3niCICXVg4/D+4oyMMm9XIBazN0mags76iO/feESicHwz bBk8I/jnKHKoTcVLln+q3OojAvECEBcpvjo72sWNJ1vTBkAMCzu6g3prLnI3jQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519908; a=rsa-sha256; cv=none; b=VMZPHm19Ha2YYexlIruVE5QvQQ5ZeZkOTAuQcALpFC14bXgxsKi4IFyEEg2WcIe/ISVuGy 5BAIrj4yDkWmh8CXMQuOlA4neME/asN+K502teuFOejGozeilHmHUXzfEFNUUGFcYjOKVo yjd3EZkuhv9o5J6cqLgIKBAQDDZ5kWALscTukPCswELq8qUTL+gQiUPn5Ct1jnlI1rzzVv qx5/M3VVfcK5khB84T537vvTtCT2aRaCucMZXp9IuF449cNhsNa4C6twTNnahvHCBjOXIA euAI6bxUABQJ9Jx8noPjGXyXjbTViTVGhuJ+ERDBBZJOT/ox+FWGZVNv7yud6g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hh5T9xzLNH; Sat, 28 Sep 2024 10:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48SAcSV2098393; Sat, 28 Sep 2024 10:38:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcSjV098390; Sat, 28 Sep 2024 10:38:28 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:28 GMT Message-Id: <202409281038.48SAcSjV098390@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 5ea0b0130112 - stable/14 - LinuxKPI: some additions for mt76 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5ea0b01301121cb9da9a05431bb8ce34a5743428 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5ea0b01301121cb9da9a05431bb8ce34a5743428 commit 5ea0b01301121cb9da9a05431bb8ce34a5743428 Author: Bjoern A. Zeeb AuthorDate: 2024-09-12 23:08:57 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:15 +0000 LinuxKPI: some additions for mt76 Add changes required for later mt76 drivers. Sponsored by: The FreeBSD Foundation (cherry picked from commit 4b972f77a16f9a217c211c8c4f28a41eca98554e) --- sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h | 1 + sys/compat/linuxkpi/common/include/net/page_pool.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h index b0aec2d4afbd..74038f0e7520 100644 --- a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h +++ b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h @@ -42,6 +42,7 @@ struct mtk_wed_device { #define mtk_wed_device_ppe_check(_dev, _skb, _reason, _entry) \ do {} while (0) #define mtk_wed_device_stop(_dev) do { } while(0) +#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { } while(0) static inline bool mtk_wed_device_active(struct mtk_wed_device *dev __unused) diff --git a/sys/compat/linuxkpi/common/include/net/page_pool.h b/sys/compat/linuxkpi/common/include/net/page_pool.h index 82dbeff82167..2dc8f74b31f3 100644 --- a/sys/compat/linuxkpi/common/include/net/page_pool.h +++ b/sys/compat/linuxkpi/common/include/net/page_pool.h @@ -29,6 +29,7 @@ #include /* pr_debug */ #include #include +#include struct device; @@ -41,6 +42,7 @@ struct page_pool_params { uint32_t offset; int nid; /* NUMA */ enum dma_data_direction dma_dir; + struct napi_struct *napi; }; struct page_pool { From nobody Sat Sep 28 10:38: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 4XG3hk3K5Nz5X8Vj; Sat, 28 Sep 2024 10:38: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 4XG3hk08Kkz47c4; Sat, 28 Sep 2024 10:38:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6TjIXQJIYOa2Nvj6B68BKEz6JOnDE6EjKkRiMYg+c0=; b=mYiC1MpFP8NazaAH1Vt5KhJW4XaJEkq9hgehlUfaqHofVAYY1+R7mB/X4MkNZSZyQK+Rb9 EmIrMpLhWnRgKbFUEdkrCp86X6qK2cbrvMTb5OHklC+K+0O5EWDqorX5vcDJczY5H38W2B 0M9NN25jaGoqggTAcY6/01+w1K2gc1hENUVNru9b8pntKrEZVmsGJgnPuNDTUkxfzGWTz/ npAPRgWeO4V6oyHjKx6TnsB3X73J+5ot2y4ME2UP6oHf+3A0qgsqEvA4kAY7gv9cowZcti E6wJbKfZjDAdTi6r0nxw36b+geyQ1n57cVo80+rUPaZdqqMFGNV3A8d3pcUitw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727519910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6TjIXQJIYOa2Nvj6B68BKEz6JOnDE6EjKkRiMYg+c0=; b=JwC4c7u+HrEKtIA98tVVlqfFNX4V2c4iHz2+w4Zd+24EaCrhZWtcHQaYk1fwK++H+U3jDs YQwRSbRGLebrOwjtuEcFP4SGCQVhmCfoe46S7VHTFOXaxd+PNRHbncpbVEPF0wRImr40A8 5jfs9CHzSxv7JqRTSSR8yQIspowd9hQwEM+cxN81XPT5SrTpNzqgMs37s9wZRn/CUcOw03 gRBkdoD1Ul655JWI2JDYsi18kKfaDm3+IOviZ8oI7A+/m6ZqE0ebD8VcXANI5JxywKFnQB pMRB4c4807R4Hi0oty/lMCsrOW1pHcfC/IrkztonzUm4VGgu7r2jAORh54PMMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727519910; a=rsa-sha256; cv=none; b=CSOZQWGFoqJKJjGB0Id2i7pS4ZXDeTeN6+0gtB+gHBBIELyOvHB4uHrBvKH4tTlXAxrZYb na/G5DGJWCYTYeTsQ4TAxhTi+E07jzFKmrMaKtJmUqwKq44AjlahQJOUY+BD8JBKiEBfCQ Ejiv/5BM2DDsfqciqxTwxM/6wVPW/RZlFAWrHGDgAtdCIT61dyQPNPcZA0ARQ45m3MHnXL IwkPwixaY927AAvlTUsW8IeCSAp/xGWD/V+4XwkpShjjjaTadus2hEM0zjnLGUF+O5RZVO /QKX4/3bjoE2qu1n2gBEteH5SBGDPedEMh28FqzhNl/WZpBkqsfusqeedAjXvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG3hj6HnDzLwd; Sat, 28 Sep 2024 10:38: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 48SAcTpP098457; Sat, 28 Sep 2024 10:38:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SAcTER098454; Sat, 28 Sep 2024 10:38:29 GMT (envelope-from git) Date: Sat, 28 Sep 2024 10:38:29 GMT Message-Id: <202409281038.48SAcTER098454@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 70da94bb52ec - stable/14 - LinuxKPI: 802.11: add futher defines to ieee80211.h and nl80211.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: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 70da94bb52eccfc4c341b6b08a73725b649c3992 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=70da94bb52eccfc4c341b6b08a73725b649c3992 commit 70da94bb52eccfc4c341b6b08a73725b649c3992 Author: Bjoern A. Zeeb AuthorDate: 2024-09-12 20:34:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 10:35:15 +0000 LinuxKPI: 802.11: add futher defines to ieee80211.h and nl80211.h Upstream new defines, enum values, etc. for coming driver updates which are non-conflicting with the current state. The only notable change is the rename of the enum ieee80211_ap_reg_power but the enum name had not been used so far by any driver in the tree (only in mac80211.h) but an updated version of ath11k does use it so we need to correct our initial naming. Sponsored by: The FreeBSD Foundation (cherry picked from commit c1c989588df67396392edceb0e7e7028abc06c49) --- .../linuxkpi/common/include/linux/ieee80211.h | 63 ++++++++++++++++++++-- sys/compat/linuxkpi/common/include/linux/nl80211.h | 18 ++++++- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 3 files changed, 76 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index aa1a0a4f3c5f..9a43a571d390 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2023 The FreeBSD Foundation + * Copyright (c) 2020-2024 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -33,6 +33,7 @@ #include #include +#include #include #include @@ -125,8 +126,9 @@ enum wlan_ht_cap_sm_ps { WLAN_HT_CAP_SM_PS_DISABLED, }; -#define WLAN_MAX_KEY_LEN 32 /* TODO FIXME brcmfmac */ -#define WLAN_PMKID_LEN 16 /* TODO FIXME brcmfmac */ +#define WLAN_MAX_KEY_LEN 32 +#define WLAN_PMKID_LEN 16 +#define WLAN_PMK_LEN_SUITE_B_192 48 #define WLAN_KEY_LEN_WEP40 5 #define WLAN_KEY_LEN_WEP104 13 @@ -178,6 +180,7 @@ enum ieee80211_min_mpdu_start_spacing { #define IEEE80211_STYPE_CTS IEEE80211_FC0_SUBTYPE_CTS #define IEEE80211_STYPE_RTS IEEE80211_FC0_SUBTYPE_RTS #define IEEE80211_STYPE_ACTION IEEE80211_FC0_SUBTYPE_ACTION +#define IEEE80211_STYPE_DATA IEEE80211_FC0_SUBTYPE_DATA #define IEEE80211_STYPE_QOS_DATA IEEE80211_FC0_SUBTYPE_QOS_DATA #define IEEE80211_STYPE_QOS_NULLFUNC IEEE80211_FC0_SUBTYPE_QOS_NULL #define IEEE80211_STYPE_QOS_CFACK 0xd0 /* XXX-BZ reserved? */ @@ -277,6 +280,8 @@ enum ieee80211_ac_numbers { #define IEEE80211_HT_MCS_MASK_LEN 10 #define IEEE80211_MLD_MAX_NUM_LINKS 15 +#define IEEE80211_MLD_CAP_OP_TID_TO_LINK_MAP_NEG_SUPP 0x0060 +#define IEEE80211_MLD_CAP_OP_TID_TO_LINK_MAP_NEG_SUPP_SAME 1 struct ieee80211_mcs_info { uint8_t rx_mask[IEEE80211_HT_MCS_MASK_LEN]; @@ -328,6 +333,7 @@ enum ieee80211_chanctx_change_flags { IEEE80211_CHANCTX_CHANGE_RX_CHAINS = BIT(2), IEEE80211_CHANCTX_CHANGE_WIDTH = BIT(3), IEEE80211_CHANCTX_CHANGE_CHANNEL = BIT(4), + IEEE80211_CHANCTX_CHANGE_PUNCTURING = BIT(5), }; enum ieee80211_frame_release_type { @@ -543,6 +549,7 @@ struct ieee80211_mgmt { } wnm_timing_msr; } u; } action; + DECLARE_FLEX_ARRAY(uint8_t, body); } u; }; @@ -567,6 +574,8 @@ struct ieee80211_rts { /* net80211::ieee80211_frame_rts */ #define IEEE80211_SEQ_TO_SN(_seqn) (((_seqn) & IEEE80211_SEQ_SEQ_MASK) >> \ IEEE80211_SEQ_SEQ_SHIFT) +#define IEEE80211_SN_TO_SEQ(_sn) (((_sn) << IEEE80211_SEQ_SEQ_SHIFT) & \ + IEEE80211_SEQ_SEQ_MASK) /* Time unit (TU) to .. See net80211: IEEE80211_DUR_TU */ #define TU_TO_JIFFIES(_tu) (usecs_to_jiffies(_tu) * 1024) @@ -640,10 +649,10 @@ struct ieee80211_trigger { /* Table 9-29c-Trigger Type subfield encoding */ enum { IEEE80211_TRIGGER_TYPE_BASIC = 0x0, + IEEE80211_TRIGGER_TYPE_MU_BAR = 0x2, #if 0 /* Not seen yet. */ BFRP = 0x1, - MU-BAR = 0x2, MU-RTS = 0x3, BSRP = 0x4, GCR MU-BAR = 0x5, @@ -654,6 +663,12 @@ enum { IEEE80211_TRIGGER_TYPE_MASK = 0xf }; +#define IEEE80211_TRIGGER_ULBW_MASK 0xc0000 +#define IEEE80211_TRIGGER_ULBW_20MHZ 0x0 +#define IEEE80211_TRIGGER_ULBW_40MHZ 0x1 +#define IEEE80211_TRIGGER_ULBW_80MHZ 0x2 +#define IEEE80211_TRIGGER_ULBW_160_80P80MHZ 0x3 + /* 802.11-2020, Figure 9-687-Control field format; 802.11ax-2021 */ #define IEEE80211_TWT_CONTROL_NEG_TYPE_BROADCAST BIT(3) #define IEEE80211_TWT_CONTROL_RX_DISABLED BIT(4) @@ -694,12 +709,50 @@ struct ieee80211_bssid_index { int bssid_index; }; -enum ieee80211_reg_ap_power { +enum ieee80211_ap_reg_power { + IEEE80211_REG_UNSET_AP, IEEE80211_REG_LPI_AP, IEEE80211_REG_SP_AP, IEEE80211_REG_VLP_AP, }; +/* + * 802.11ax-2021, Table 9-277-Meaning of Maximum Transmit Power Count subfield + * if Maximum Transmit Power Interpretation subfield is 1 or 3 + */ +#define IEEE80211_MAX_NUM_PWR_LEVEL 8 + +/* + * 802.11ax-2021, Table 9-275a-Maximum Transmit Power Interpretation subfield + * encoding (4) * Table E-12-Regulatory Info subfield encoding in the + * United States (2) + */ +#define IEEE80211_TPE_MAX_IE_NUM 8 + +/* 802.11ax-2021, 9.4.2.161 Transmit Power Envelope element */ +struct ieee80211_tx_pwr_env { + uint8_t tx_power_info; + uint8_t tx_power[IEEE80211_MAX_NUM_PWR_LEVEL]; +}; + +/* 802.11ax-2021, Figure 9-617-Transmit Power Information field format */ +/* These are field masks (3bit/3bit/2bit). */ +#define IEEE80211_TX_PWR_ENV_INFO_COUNT 0x07 +#define IEEE80211_TX_PWR_ENV_INFO_INTERPRET 0x38 +#define IEEE80211_TX_PWR_ENV_INFO_CATEGORY 0xc0 + +/* + * 802.11ax-2021, Table 9-275a-Maximum Transmit Power Interpretation subfield + * encoding + */ +enum ieee80211_tx_pwr_interpretation_subfield_enc { + IEEE80211_TPE_LOCAL_EIRP, + IEEE80211_TPE_LOCAL_EIRP_PSD, + IEEE80211_TPE_REG_CLIENT_EIRP, + IEEE80211_TPE_REG_CLIENT_EIRP_PSD, +}; + + /* net80211: IEEE80211_IS_CTL() */ static __inline bool ieee80211_is_ctl(__le16 fc) diff --git a/sys/compat/linuxkpi/common/include/linux/nl80211.h b/sys/compat/linuxkpi/common/include/linux/nl80211.h index 5b43ff675e19..6916957731e2 100644 --- a/sys/compat/linuxkpi/common/include/linux/nl80211.h +++ b/sys/compat/linuxkpi/common/include/linux/nl80211.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2023 The FreeBSD Foundation + * Copyright (c) 2020-2024 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -80,6 +80,10 @@ enum nl80211_reg_rule_flags { NL80211_RRF_NO_OFDM = BIT(10), NL80211_RRF_NO_320MHZ = BIT(11), NL80211_RRF_NO_EHT = BIT(12), + NL80211_RRF_DFS_CONCURRENT = BIT(13), + NL80211_RRF_NO_6GHZ_VLP_CLIENT = BIT(14), + NL80211_RRF_NO_6GHZ_AFC_CLIENT = BIT(15), + NL80211_RRF_PSD = BIT(16), }; #define NL80211_RRF_NO_HT40 (NL80211_RRF_NO_HT40MINUS|NL80211_RRF_NO_HT40PLUS) @@ -230,6 +234,13 @@ enum nl80211_ext_feature { NL80211_EXT_FEATURE_BEACON_PROTECTION, NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT, NL80211_EXT_FEATURE_PUNCT, + NL80211_EXT_FEATURE_DFS_CONCURRENT, + NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS, + NL80211_EXT_FEATURE_SPP_AMSDU_SUPPORT, + NL80211_EXT_FEATURE_SECURE_LTF, + NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE, + NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK, + NL80211_EXT_FEATURE_SAE_OFFLOAD_AP, /* Keep this last. */ NUM_NL80211_EXT_FEATURES @@ -241,6 +252,7 @@ enum nl80211_sta_info { NL80211_STA_INFO_BEACON_SIGNAL_AVG, NL80211_STA_INFO_BSS_PARAM, NL80211_STA_INFO_CHAIN_SIGNAL, + NL80211_STA_INFO_CHAIN_SIGNAL_AVG, NL80211_STA_INFO_CONNECTED_TIME, NL80211_STA_INFO_INACTIVE_TIME, NL80211_STA_INFO_SIGNAL, @@ -416,6 +428,10 @@ enum nl80211_user_reg_hint_type { NL80211_USER_REG_HINT_USER, }; +enum nl80211_hidden_ssid { + NL80211_HIDDEN_SSID_NOT_IN_USE, +}; + #define NL80211_KCK_LEN 16 #define NL80211_KCK_EXT_LEN 24 #define NL80211_KEK_LEN 16 diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index c102ada6def2..29fb335a8db9 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -303,7 +303,7 @@ struct ieee80211_bss_conf { int16_t txpower; uint32_t basic_rates; int mcast_rate[NUM_NL80211_BANDS]; - enum ieee80211_reg_ap_power power_type; + enum ieee80211_ap_reg_power power_type; struct cfg80211_bitrate_mask beacon_tx_rate; struct mac80211_fils_discovery fils_discovery; struct ieee80211_chanctx_conf *chanctx_conf; From nobody Sat Sep 28 21:52: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 4XGLf35ZXZz5Xtcf; Sat, 28 Sep 2024 21:52: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 4XGLf356tcz44QM; Sat, 28 Sep 2024 21:52:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f7JcX1nxkQnCj12J8qZF95cUikg+kEvbRs+Edo8hDQI=; b=NM7vGQVFIthi8LnljmLyXvGMGhBDNGeU49UBDgf57y1VmJ2rWH3EtEbW52VlYb3q4DCxF1 T6MsBVfFeROZM4iYNpsqonO5ETZjZOfW41YLUshf5P9m0sETvReHqGdNd5F4dC3lDP6+Tx rZ5IOuAbbtKM81/kA7Vtlx7eIcxKYSOMIl+dGMewXEFyivPGi7yy50Y55BEbip3r+AgG5Q K84QED593DkL6erFWXNszOqwAczKlaXGFBplfDaZVoZk363Yuou6reEQCC71S6fFqbvuEC 2jiGYJb1+d8A3wLKF8fDHS7kPQyGzcHMtXGPy/E/zEWpDgXrs9DrxPXduKvWrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f7JcX1nxkQnCj12J8qZF95cUikg+kEvbRs+Edo8hDQI=; b=VL8kvJt5TYMi75PDBBAkytw6ss6Q5A/VGQGAgl7TNSAWlD9Q7vzqUUbeLrKuvL3vjBRiON ofZlH5gbQC2ZP1DDKwyR2antTZ1P64jfpZjNrna3TY/QJBEWW4fAOUlU7D10G2i53L44OE 9wpbf33Mi2+3xrpcNFf+F3++KSp0lF35FDPTS5YDbBN8ONReSM5FqS7J25QfBFWJqMPxhY 9u43haQex71avKN5iOkQu2X7hzdbDtbNdFOo2uK5e2g1B7mZ7BRyUopTX2M+SpZzowUcnB m0NjHHnZNL5ojz3UD95reWi+KkUjRt2xKBw9S9dXXvQMdeP/dq+KpzzVBgansQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560331; a=rsa-sha256; cv=none; b=FL2kGUVPC7Wz/60inqG9AByOcw2CNcGUKt5Rnc4+6VhbX7aFH/AOtUZfFwjVhWpB7S87LW c8scXsKs0jhd626hpfXIariIXlBeA+oGVLQI8szi1JOCNJrBBXacBvj5bhmJGI4yAv+I1E KM8k1j87lx4bzHsXlG5Z3PbbVJwJ4Z9qp6ye1AbrJwgpUe1qIpsXUYzN8sHWdx5DPydTET N8QLa9dO6aTG9uLQIx6BzM+roVtsZUfYIVFcgBNDS3rPjeah/cHLUs/1GSLQ9USVPblMGr HN3pweCrfehUtRW8Zf4ffUm7I4nBXFy8l/mc5+Gut4MimYrCO+C2gxEfo5vKyA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf34ksczjLF; Sat, 28 Sep 2024 21:52: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 48SLqBpL051208; Sat, 28 Sep 2024 21:52:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqBfX051205; Sat, 28 Sep 2024 21:52:11 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:11 GMT Message-Id: <202409282152.48SLqBfX051205@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: e131c310c697 - stable/13 - libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e131c310c697aea2106728a7619cd0d41ba0d9ff Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e131c310c697aea2106728a7619cd0d41ba0d9ff commit e131c310c697aea2106728a7619cd0d41ba0d9ff Author: Bjoern A. Zeeb AuthorDate: 2024-06-10 11:34:25 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 11:07:44 +0000 libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate Checking the first nibble of the IPv6 address to be 0 and then excluding two well known cases (v4-mapped, loopback) leaves us with more cases where the first nibble could be 0, e.g., the RFC 6052, 2.1 Well-Known Prefix 64:ff9b::/96. It is not practical to track them all and it is not clear what lead to this special casing originally, so remove them. While here also remove the IN6_IS_ADDR_LINKLOCAL() + NI_NUMERICHOST case as link-local address resolution does exist. We do leave the IN6_IS_ADDR_MULTICAST() case for now as I could not find any references to any official reverse lookups for these. Adding comments for more case (and some historic behaviour) in order to make it easier to follow the logic. PR: 279618 Fixes: 6cb9418289f90 Reviewed by: hrs Differential Revision: https://reviews.freebsd.org/D45547 (cherry picked from commit c179937b986ec3959d89bfeb8eed0a6f58a28649) --- lib/libc/net/getnameinfo.c | 54 +++++++++++++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/lib/libc/net/getnameinfo.c b/lib/libc/net/getnameinfo.c index 7ef7fe64e961..fcd9c71051d6 100644 --- a/lib/libc/net/getnameinfo.c +++ b/lib/libc/net/getnameinfo.c @@ -230,24 +230,44 @@ getnameinfo_inet(const struct afd *afd, case AF_INET6: { const struct sockaddr_in6 *sin6; + sin6 = (const struct sockaddr_in6 *)sa; - switch (sin6->sin6_addr.s6_addr[0]) { - case 0x00: - if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) - ; - else if (IN6_IS_ADDR_LOOPBACK(&sin6->sin6_addr)) - ; - else - flags |= NI_NUMERICHOST; - break; - default: - if (IN6_IS_ADDR_LINKLOCAL(&sin6->sin6_addr)) { - flags |= NI_NUMERICHOST; - } - else if (IN6_IS_ADDR_MULTICAST(&sin6->sin6_addr)) - flags |= NI_NUMERICHOST; - break; - } + + /* + * https://pubs.opengroup.org/onlinepubs/9699919799/functions/getnameinfo.html + * "[IP6] [Option Start] If the socket address structure + * contains an IPv4-mapped IPv6 address or an IPv4-compatible + * IPv6 address, the implementation shall extract the embedded + * IPv4 address and lookup the node name for that IPv4 address. + * [Option End]" + * => getipnodebyaddr() handles this case for us. + * => in case of NI_NUMERICHOST being set, inet_ntop[6] will + * handle it too. + * + * "If the address is the IPv6 unspecified address ( "::" ), + * a lookup shall not be performed and the behavior shall be + * the same as when the node's name cannot be located." + * => getipnodebyaddr() handles this case for us. + * => in case of NI_NUMERICHOST being set, + * ip6_parsenumeric() -> inet_ntop[6] will handle it too. + */ + + /* + * We used to exclude link-local from lookups. + * Even though calles in the resolver chain may not (yet) + * properly deal with them, we no longer do as for link-local + * there is a path to resolve these. See: + * RFC 6303 4.5. IPv6 Link-Local Addresses + * RFC 6762 4. Reverse Address Mapping + * + * XXX For IPv6 MC the only reference found was + * https://www.ietf.org/archive/id/draft-michaelson-as112-ipv6-02.html + * but there are also no "empty zone"s for x.0.f.f.ip6.arpa + * in DNS servers. Keep catching it here for now and + * do not attempt name resolution but return the address string. + */ + if (IN6_IS_ADDR_MULTICAST(&sin6->sin6_addr)) + flags |= NI_NUMERICHOST; } break; #endif From nobody Sat Sep 28 21:52: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 4XGLf50c3Nz5Xtcg; Sat, 28 Sep 2024 21:52: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 4XGLf45qjyz44ky; Sat, 28 Sep 2024 21:52:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nxiw/HH3wuhg5NVNZZs4RnR3MN3LbDc+H9+DHjrFzCk=; b=H3svt7BrZkRutJBLCeS9R9Li1iZRolf58q7xDQex4Fj4/fizFEQES7ebljLnUQO1nepCYi Q/nWRMNvbAvdbcWhg0HdVKAIR/4EZL0d38rKk2o4y9ZK8iFt8ffQufjgDAQwha554hSNUC nmo3W04cYlkAv2G4KopfhijS9/rjEWPwSJd9hS0WQuUOwRrFKlkXEJkMAkIHG8zPMgmDZn 33d1NQrIu4hy3FKQv7jHTgycF3k0HFSOUnIcW3OMF3yNwT7t/QFb8jz6q/uUmn2lZVwgTB g6hMTASRqKtTNvuf0MJ6EJPdUgmskglHOc5/heaZEyZ97NM+5hnXCa2YzkxXRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nxiw/HH3wuhg5NVNZZs4RnR3MN3LbDc+H9+DHjrFzCk=; b=ZS8TbMkv3yt85QZJdYKL6EWMEANmnVfaSMkzBNj1euMN83HG6wx/zzlAefkGe896L0GkD4 ziXwYOdzPt3SDKmuLuwBVZU5aSHhLdUE/1x1VNadyB2nBDyoNYUOihxDKiTeE+kEDdbX6e Q5OEiaVIKoMy/ij+/Z3YvW7c13Wrdhf0lIMvgLqUNXcB6jDU94FN2VQFTXf9aZ1XEJY1SU b8yfok7ivZ+a6G7YolKPBKu0CqhpORCIuFsWrYd297cYrn2+3ilFO7C/5Mx8PV34cSV2vH LkPoS5Ednb4iyGCc6HRe/wD3AC4hsf8s1JNLk/04iQceSIO+OzllcNge1jwAWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560332; a=rsa-sha256; cv=none; b=fS02juls69dwaB8E4dOSQGu8B7Wjztf/0v1mkvlUQdy8i8124myuJXjOJSk92jKkxwBN57 FB8aeIKSUxaR3WWSCMBRY/Zer+gBDmrWxatVALzVyKfYim1C00c3v1QIDT2eb73NKgsF7f qBc33aCX4dcM0x5cbRvLtmLM4Jii5GDqFBiEekVb2laizdM2uiXptXS8Krs3b9LB7xx6Qb 8mhXI5MzDpULd82ioAP453wBo9+mCe+gZC6H5rfFMi20UEkS5hdh3WvPRlyddy1IsooGtB ejcY1BLXcNGFPTSIIVF9Yk+RVdrtjSMwX9e25vuoEQnlY8SHFuU9xRKXwN3n8g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf45SBKzhmK; Sat, 28 Sep 2024 21:52: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 48SLqC3E051496; Sat, 28 Sep 2024 21:52:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqC6x051493; Sat, 28 Sep 2024 21:52:12 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:12 GMT Message-Id: <202409282152.48SLqC6x051493@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 267ad286efd8 - stable/13 - rc: network.subr update consitency with older change (v6/v4 order) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 267ad286efd8454e08916e0bb30f76954100d379 Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=267ad286efd8454e08916e0bb30f76954100d379 commit 267ad286efd8454e08916e0bb30f76954100d379 Author: Bjoern A. Zeeb AuthorDate: 2024-09-04 19:03:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 11:07:58 +0000 rc: network.subr update consitency with older change (v6/v4 order) As of 1b5be7204eaeeaf58eefdebe5b308f90792c693b we setup parts of IPv6 before IPv4 if configured. For consistency change a case in ifn_start() calling ipv6_up() before ipv4_up() and reverse in ifn_stop(). Reviewed by: zlei Differential Revision: https://reviews.freebsd.org/D33426 (cherry picked from commit ed4d2a54fc7a0397c2042f496f176305ca03ebdd) --- libexec/rc/network.subr | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/network.subr b/libexec/rc/network.subr index 257643f48ba5..931fbec19a60 100644 --- a/libexec/rc/network.subr +++ b/libexec/rc/network.subr @@ -46,8 +46,8 @@ ifn_start() ifscript_up ${ifn} && cfg=0 ifconfig_up ${ifn} && cfg=0 if ! noafif $ifn; then - afexists inet && ipv4_up ${ifn} && cfg=0 afexists inet6 && ipv6_up ${ifn} && cfg=0 + afexists inet && ipv4_up ${ifn} && cfg=0 fi childif_create ${ifn} && cfg=0 @@ -67,8 +67,8 @@ ifn_stop() [ -z "$ifn" ] && err 1 "ifn_stop called without an interface" if ! noafif $ifn; then - afexists inet6 && ipv6_down ${ifn} && cfg=0 afexists inet && ipv4_down ${ifn} && cfg=0 + afexists inet6 && ipv6_down ${ifn} && cfg=0 fi ifconfig_down ${ifn} && cfg=0 ifscript_down ${ifn} && cfg=0 From nobody Sat Sep 28 21:52: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 4XGLf62fqXz5Xtcm; Sat, 28 Sep 2024 21:52: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 4XGLf60QQvz44YR; Sat, 28 Sep 2024 21:52:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oN0bmZBOQEbTHom5ufBX5rOftmRKyOb9f0DhkbhS71k=; b=dUxL+VepUhYBXq32rpoPeywUlO0ekqFvIdehV6v4oeFpZcX0rYsL+Bk1s7xDon/XXCinAo zaBdbQLfhJgC/XHe3emA8EE7wObad5dsOQTkCnBds30p+nK2aWWyzi3n0+JfUbGOLIdptA 9bQAaCNfh41636oPv/82okU2EjLsxIccec+sNe6cu4m21JYRW6A2YKBIAEWiGyrKVOYFDz 9kGe1fnCb+q4c+dPAx3ELTYASJvXSo9LkOQdGLrW0N/l8n2T843F5B75olFuQ5lJDR3+Qh B3hnofZB+3SPtFAgaCMc7vfN/QaCy5giqCmkaZ+1e5ALhNIs7R5bo9JUkRkDEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oN0bmZBOQEbTHom5ufBX5rOftmRKyOb9f0DhkbhS71k=; b=A2oWRh6zHP07kHNy4nvZN1dkOAOAYE7KIVOWwBMQ+8qIWF+GAB9/4kKgCjk7IXlHDFkDOQ 1BX8M1t6DMGMuMBj+Ee8JlSb6UIp0h0yhoVacntF/TxF5JrA7cHy80wHumAenebuCRwP8R GxfGxwRxpPZNbRUv5tTzprQOvNiZAGqc2r8VS7IuvTb+q/d/geXmeXnSquu5siof9ZmcOw IVIP5HnpCzsQUF6bvtogotj9aIUWPo1+TXNBalv25do/xkDHihF4NPuBJwVtPF58VaZ7Ek ykqsl4xoU/q8Y5sm/2/ydJLTIU+8Md+4A9EkZFL+pZeQ5DZTaqelwANawZGphA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560334; a=rsa-sha256; cv=none; b=sj3jBeIrfEmEme/ICA/LaaRJ0eCMQMq+IM8ZpppHPu01GY0UfqKoBvJ6IDChZVfCKNY0Zx 5EDzbaIoLv3uLfzTrMKUt4wTTIyBpr74uWxQwl8hqwZe5kUWjmUBI7zPop40yE8PQGvXwD 04t8EViHlPVpXdxAnPort9nc3VMK2zPmiOhRZBm27kxOHBpacDvqT9Q5a8C0cFVEjSjuTQ oMVFqoBDWeKwr0lvYjNX5mnbElgnIx4Mq77MdVYoEK+XLvdconvQB15LSIf4x9sGpGw/Wx bJvNYRL+R3vSvzroKwc6xzAm5w9wTDt4DG4t4AUqB4KY9aLfMPnnBB1buJb7lQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf56mKLzjLH; Sat, 28 Sep 2024 21:52: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 48SLqD7X051546; Sat, 28 Sep 2024 21:52:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqDju051543; Sat, 28 Sep 2024 21:52:13 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:13 GMT Message-Id: <202409282152.48SLqDju051543@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 0f629ec68f19 - stable/13 - mmccam: fix mmcsd disk aliases List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 0f629ec68f19415ce0d0651df9fb18cf8eb003ae Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0f629ec68f19415ce0d0651df9fb18cf8eb003ae commit 0f629ec68f19415ce0d0651df9fb18cf8eb003ae Author: Bjoern A. Zeeb AuthorDate: 2024-01-21 19:56:27 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 11:08:04 +0000 mmccam: fix mmcsd disk aliases For EXT_CSD_PART_CONFIG_ACC_BOOT and possibly others with suffixes we fail to create proper disk aliases (symlinks), which shows up as g_dev_taste: make_dev_alias_p() failed (name=mmcsd0, error=17) In this case we ended up with the followng two: /dev/mmcsd0 -> sdda0 /dev/mmcsd1 -> sdda0boot1 Note that (i) it should be mmcsd0boot1 and not mmcsd1 and that (ii) there is no mmcsd0boot0 (failed above as it tried to create a second mmcsd0). Adjust the code (using a highly simplified version--compared to my original approach--suggested by imp) using an extended format string with (sdda/mmcsd) prefix as first argument to create proper names. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D43538 (cherry picked from commit a84d91d81a6f3eeb4949c4fb3440e0634f2b953a) --- sys/cam/mmc/mmc_da.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/sys/cam/mmc/mmc_da.c b/sys/cam/mmc/mmc_da.c index 7400f2387add..18d686735082 100644 --- a/sys/cam/mmc/mmc_da.c +++ b/sys/cam/mmc/mmc_da.c @@ -89,9 +89,11 @@ typedef enum { SDDA_STATE_PART_SWITCH, } sdda_state; -#define SDDA_FMT_BOOT "sdda%dboot" -#define SDDA_FMT_GP "sdda%dgp" -#define SDDA_FMT_RPMB "sdda%drpmb" +/* Purposefully ignore a '%d' argument to snprintf in SDDA_FMT! */ +#define SDDA_FMT "%s" +#define SDDA_FMT_BOOT "%s%dboot" +#define SDDA_FMT_GP "%s%dgp" +#define SDDA_FMT_RPMB "%s%drpmb" #define SDDA_LABEL_ENH "enh" #define SDDA_PART_NAMELEN (16 + 1) @@ -1480,7 +1482,7 @@ finish_hs_tests: sdda_process_mmc_partitions(periph, start_ccb); } else if (mmcp->card_features & CARD_FEATURE_MEMORY) { /* For SD[HC] cards, just add one partition that is the whole card */ - if (sdda_add_part(periph, 0, "sdda", + if (sdda_add_part(periph, 0, SDDA_FMT, periph->unit_number, mmc_get_media_size(periph), sdda_get_read_only(periph, start_ccb)) == false) @@ -1525,7 +1527,7 @@ sdda_add_part(struct cam_periph *periph, u_int type, const char *name, part->type = type; part->ro = ro; part->sc = sc; - snprintf(part->name, sizeof(part->name), name, periph->unit_number); + snprintf(part->name, sizeof(part->name), name, "sdda", periph->unit_number); /* * Due to the nature of RPMB partition it doesn't make much sense @@ -1592,8 +1594,11 @@ sdda_add_part(struct cam_periph *periph, u_int type, const char *name, part->disk->d_fwsectors = 0; part->disk->d_fwheads = 0; - if (sdda_mmcsd_compat) - disk_add_alias(part->disk, "mmcsd"); + if (sdda_mmcsd_compat) { + char cname[SDDA_PART_NAMELEN]; /* This equals the mmcsd namelen. */ + snprintf(cname, sizeof(cname), name, "mmcsd", periph->unit_number); + disk_add_alias(part->disk, cname); + } /* * Acquire a reference to the periph before we register with GEOM. @@ -1682,7 +1687,7 @@ sdda_process_mmc_partitions(struct cam_periph *periph, union ccb *ccb) * data area in case partitions are supported. */ ro = sdda_get_read_only(periph, ccb); - sdda_add_part(periph, EXT_CSD_PART_CONFIG_ACC_DEFAULT, "sdda", + sdda_add_part(periph, EXT_CSD_PART_CONFIG_ACC_DEFAULT, SDDA_FMT, periph->unit_number, mmc_get_media_size(periph), ro); sc->part_curr = EXT_CSD_PART_CONFIG_ACC_DEFAULT; From nobody Sat Sep 28 21:52: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 4XGLf737kFz5XtfN; Sat, 28 Sep 2024 21:52: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 4XGLf713qkz44nQ; Sat, 28 Sep 2024 21:52:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lEK0vnUZSALcac3zPYOhq8eVQEMX5ggo7/yzo3jOhHo=; b=at8l2ytETIl/V+aeRYJDcjo1qb1khq8v5hNCrDmcgh0Vxhs3nku4ZkpWVDiyQ2pTMEWNeG klWtifewvcRNhDhUEsEL8xrLrgdzBaBnXQPRzivcaHHlrtBtSf8C+s2Qo5CBFJikBEPDAV JGsaKmNQEiByh9ioBZJuv71FHUM39Xq/Jp54xg6kkRXzOTwPofEMWm8yRk9yX7eVxjFXpv myJnIvTaMdYOzFHXvr459l0Wm0SYdHUIdSsRwslhedMNR7TG0dvO3rl20Sd5AOPC5I2uEa fwV1Ke3Z084JsazAzPdH23zCP/9XrTDSzyApbo6zEARw5B9uERMlm4FcHyhUUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lEK0vnUZSALcac3zPYOhq8eVQEMX5ggo7/yzo3jOhHo=; b=hozK1C6JqSRqruGiqk81tRdga0ci0Ms4eGYa+reZvLAxumU6vqaf07MAduiWIoGei1qjcU OIaJFckV2KOiVqMCM8kKFXe0Buxwv2iwca8Pq3n7ndmF9cgpEb1uSZc4D6E4LoBl4P+VdG XueljWccCL1GzAVZPh829X4ZHDD2hjeus4OlRT6DV5qXLVFCC4Dnkwn/kadqPFvodG6cR1 rVUcH4egqTJwugEcphbhR7/hZzV0iIywc+2U3FZXyv+QGj3dFF20zynx5u/mGnTcO4UPxN b6IZX9NYrYvDLp8XBF5wRUpMzEH9IyjShBbolfXICngXgs2m0i8M68S4ROLlHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560335; a=rsa-sha256; cv=none; b=Ol0t+QmxB5NFJU9ACqx+SkjlOznYNYZ3h7boeufh4bCDw1aBOKhziL9ohSHwpRScYx6MMF rhhDOil/o3nadSQ/DDi/3EzAx2y+8CnTBU99LZnT8+eEbk3TDvK85EwzXjKKG+WcS6Qugx 0ADD1H6cq0uFnSgt8jW+Bmqgd4MbaFQdlL/jzlMlIk2NezjnjoUsvAymJ6hDwSgZenbCWv uIPpNSIeguep9fUNey1nFIgTqjkTfwiHVI5gWpQcWqBO1Bl8aAbXkHXbDNbTsEyt7PIwIT 6CDMrN36zfREGxrA0ZiEPnxSAxiUELGVUhYuU94xw4TBJPAiRRpndQYWDwmYnw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf70YYnzjLJ; Sat, 28 Sep 2024 21:52: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 48SLqEW6051598; Sat, 28 Sep 2024 21:52:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqEds051595; Sat, 28 Sep 2024 21:52:14 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:14 GMT Message-Id: <202409282152.48SLqEds051595@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d2587a699e37 - stable/13 - malloc(9): extend contigmalloc(9) by a "slab cookie" List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d2587a699e37868909b279b109bb0a379c077c5b Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d2587a699e37868909b279b109bb0a379c077c5b commit d2587a699e37868909b279b109bb0a379c077c5b Author: Bjoern A. Zeeb AuthorDate: 2024-06-30 19:00:44 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 18:39:34 +0000 malloc(9): extend contigmalloc(9) by a "slab cookie" Extend kern_malloc.c internals to also cover contigmalloc(9) by a "slab cookie" and not just malloc/malloc_large. This allows us to call free(9) even on contigmalloc(9) addresses and deprecate contigfree(9). Update the contigmalloc(9) man page accordingly. The way this is done (free(9) working for contigmalloc) will hide the UMA/VM bits from a consumer which may otherwise need to know whether the original allocation was by malloc or contigmalloc by looking at the cookie (likely via an accessor function). This simplifies the implementation of consumers of mixed environments a lot. This is preliminary work to allow LinuxKPI to be adjusted to better play by the rules Linux puts out for various allocations. Most of this was described/explained to me by jhb. One may observe that realloc(9) is currently unchanged (and contrary to [contig]malloc/[contig]free an implementation may need access the "slab cookie" information given it will likely be implementation dependent which allocation type to use if size changes beyond the usable size of the initial allocation). Described by: jhb Sponsored by: The FreeBSD Foundation Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D45812 (cherry picked from commit 9e6544dd6e02c46b805d11ab925c4f3b18ad7a4b) --- share/man/man9/contigmalloc.9 | 9 ++- sys/kern/kern_malloc.c | 128 +++++++++++++++++++++++++++++++++--------- 2 files changed, 108 insertions(+), 29 deletions(-) diff --git a/share/man/man9/contigmalloc.9 b/share/man/man9/contigmalloc.9 index f52cb7bde0ed..9e7086885870 100644 --- a/share/man/man9/contigmalloc.9 +++ b/share/man/man9/contigmalloc.9 @@ -23,7 +23,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 30, 2018 +.Dd July 22, 2024 .Dt CONTIGMALLOC 9 .Os .Sh NAME @@ -113,6 +113,13 @@ function deallocates memory allocated by a previous call to .Fn contigmalloc or .Fn contigmalloc_domainset . +Its use is deprecated in favor of +.Xr free 9 +which no longer requires the caller to know the +.Fa size +and also accepts +.Dv NULL +as an address. .Sh IMPLEMENTATION NOTES The .Fn contigmalloc diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 0720c36740ee..1a00e184c83f 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -117,6 +117,16 @@ dtrace_malloc_probe_func_t __read_mostly dtrace_malloc_probe; #define DEBUG_REDZONE_ARG #endif +typedef enum { + SLAB_COOKIE_SLAB_PTR = 0x0, + SLAB_COOKIE_MALLOC_LARGE = 0x1, + SLAB_COOKIE_CONTIG_MALLOC = 0x2, +} slab_cookie_t; +#define SLAB_COOKIE_MASK 0x3 +#define SLAB_COOKIE_SHIFT 2 +#define GET_SLAB_COOKIE(_slab) \ + ((slab_cookie_t)(uintptr_t)(_slab) & SLAB_COOKIE_MASK) + /* * When realloc() is called, if the new size is sufficiently smaller than * the old size, realloc() will allocate a new, smaller block to avoid @@ -452,6 +462,21 @@ malloc_type_freed(struct malloc_type *mtp, unsigned long size) * If M_NOWAIT is set, this routine will not block and return NULL if * the allocation fails. */ +#define IS_CONTIG_MALLOC(_slab) \ + (GET_SLAB_COOKIE(_slab) == SLAB_COOKIE_CONTIG_MALLOC) +#define CONTIG_MALLOC_SLAB(_size) \ + ((void *)(((_size) << SLAB_COOKIE_SHIFT) | SLAB_COOKIE_CONTIG_MALLOC)) +static inline size_t +contigmalloc_size(uma_slab_t slab) +{ + uintptr_t va; + + KASSERT(IS_CONTIG_MALLOC(slab), + ("%s: called on non-contigmalloc allocation: %p", __func__, slab)); + va = (uintptr_t)slab; + return (va >> SLAB_COOKIE_SHIFT); +} + void * contigmalloc(unsigned long size, struct malloc_type *type, int flags, vm_paddr_t low, vm_paddr_t high, unsigned long alignment, @@ -461,8 +486,11 @@ contigmalloc(unsigned long size, struct malloc_type *type, int flags, ret = (void *)kmem_alloc_contig(size, flags, low, high, alignment, boundary, VM_MEMATTR_DEFAULT); - if (ret != NULL) + if (ret != NULL) { + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)ret, NULL, CONTIG_MALLOC_SLAB(size)); malloc_type_allocated(type, round_page(size)); + } return (ret); } @@ -475,25 +503,28 @@ contigmalloc_domainset(unsigned long size, struct malloc_type *type, ret = (void *)kmem_alloc_contig_domainset(ds, size, flags, low, high, alignment, boundary, VM_MEMATTR_DEFAULT); - if (ret != NULL) + if (ret != NULL) { + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)ret, NULL, CONTIG_MALLOC_SLAB(size)); malloc_type_allocated(type, round_page(size)); + } return (ret); } /* - * contigfree: + * contigfree (deprecated). * * Free a block of memory allocated by contigmalloc. * * This routine may not block. */ void -contigfree(void *addr, unsigned long size, struct malloc_type *type) +contigfree(void *addr, unsigned long size __unused, struct malloc_type *type) { - - kmem_free((vm_offset_t)addr, size); - malloc_type_freed(type, round_page(size)); + free(addr, type); } +#undef IS_CONTIG_MALLOC +#undef CONTIG_MALLOC_SLAB #ifdef MALLOC_DEBUG static int @@ -563,22 +594,19 @@ malloc_dbg(caddr_t *vap, size_t *sizep, struct malloc_type *mtp, /* * Handle large allocations and frees by using kmem_malloc directly. */ -static inline bool -malloc_large_slab(uma_slab_t slab) -{ - uintptr_t va; - - va = (uintptr_t)slab; - return ((va & 1) != 0); -} - +#define IS_MALLOC_LARGE(_slab) \ + (GET_SLAB_COOKIE(_slab) == SLAB_COOKIE_MALLOC_LARGE) +#define MALLOC_LARGE_SLAB(_size) \ + ((void *)(((_size) << SLAB_COOKIE_SHIFT) | SLAB_COOKIE_MALLOC_LARGE)) static inline size_t malloc_large_size(uma_slab_t slab) { uintptr_t va; va = (uintptr_t)slab; - return (va >> 1); + KASSERT(IS_MALLOC_LARGE(slab), + ("%s: called on non-malloc_large allocation: %p", __func__, slab)); + return (va >> SLAB_COOKIE_SHIFT); } static caddr_t __noinline @@ -592,8 +620,8 @@ malloc_large(size_t *size, struct malloc_type *mtp, struct domainset *policy, sz = roundup(*size, PAGE_SIZE); kva = kmem_malloc_domainset(policy, sz, flags); if (kva != 0) { - /* The low bit is unused for slab pointers. */ - vsetzoneslab(kva, NULL, (void *)((sz << 1) | 1)); + /* Use low bits unused for slab pointers. */ + vsetzoneslab((uintptr_t)kva, NULL, MALLOC_LARGE_SLAB(sz)); uma_total_inc(sz); *size = sz; } @@ -618,6 +646,8 @@ free_large(void *addr, size_t size) kmem_free((vm_offset_t)addr, size); uma_total_dec(size); } +#undef IS_MALLOC_LARGE +#undef MALLOC_LARGE_SLAB /* * malloc: @@ -908,18 +938,30 @@ free(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated.\n", + panic("free: address %p(%p) has not been allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (__predict_true(!malloc_large_slab(slab))) { + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); #endif uma_zfree_arg(zone, addr, slab); - } else { + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); free_large(addr, size); + break; + case SLAB_COOKIE_CONTIG_MALLOC: + size = contigmalloc_size(slab); + kmem_free((vm_offset_t)addr, size); + size = round_page(size); + break; + default: + panic("%s: addr %p slab %p with unknown cookie %d", __func__, + addr, slab, GET_SLAB_COOKIE(slab)); + /* NOTREACHED */ } malloc_type_freed(mtp, size); } @@ -951,7 +993,8 @@ zfree(void *addr, struct malloc_type *mtp) panic("free: address %p(%p) has not been allocated.\n", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (__predict_true(!malloc_large_slab(slab))) { + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); @@ -959,11 +1002,22 @@ zfree(void *addr, struct malloc_type *mtp) kasan_mark(addr, size, size, 0); explicit_bzero(addr, size); uma_zfree_arg(zone, addr, slab); - } else { + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); kasan_mark(addr, size, size, 0); explicit_bzero(addr, size); free_large(addr, size); + break; + case SLAB_COOKIE_CONTIG_MALLOC: + size = round_page(contigmalloc_size(slab)); + explicit_bzero(addr, size); + kmem_free((vm_offset_t)addr, size); + break; + default: + panic("%s: addr %p slab %p with unknown cookie %d", __func__, + addr, slab, GET_SLAB_COOKIE(slab)); + /* NOTREACHED */ } malloc_type_freed(mtp, size); } @@ -1010,10 +1064,20 @@ realloc(void *addr, size_t size, struct malloc_type *mtp, int flags) ("realloc: address %p out of range", (void *)addr)); /* Get the size of the original block */ - if (!malloc_large_slab(slab)) + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): alloc = zone->uz_size; - else + break; + case SLAB_COOKIE_MALLOC_LARGE: alloc = malloc_large_size(slab); + break; + default: +#ifdef INVARIANTS + panic("%s: called for addr %p of unsupported allocation type; " + "slab %p cookie %d", __func__, addr, slab, GET_SLAB_COOKIE(slab)); +#endif + return (NULL); + } /* Reuse the original block if appropriate */ if (size <= alloc && @@ -1095,10 +1159,18 @@ malloc_usable_size(const void *addr) panic("malloc_usable_size: address %p(%p) is not allocated.\n", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); - if (!malloc_large_slab(slab)) + switch (GET_SLAB_COOKIE(slab)) { + case __predict_true(SLAB_COOKIE_SLAB_PTR): size = zone->uz_size; - else + break; + case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); + break; + default: + __assert_unreachable(); + size = 0; + break; + } #endif return (size); } From nobody Sat Sep 28 21:52: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 4XGLf83T3Nz5XtnP; Sat, 28 Sep 2024 21:52: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 4XGLf8217Vz44lb; Sat, 28 Sep 2024 21:52:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WYMfXVmktpv7BodVPLpSeT/qUACcrs+YrgBwNdeIp9I=; b=DZDFJON/7DuvZCZJPUeWBeI6vapX/b8lUhKmtoSf3CSJnT+mCZZXLuAkcTGBGIS9dIkSG6 95UxevOTPGZXfdGVOSp1fFYprg2GigM4HahhI6xzsX7Vg5UNURNiyrLz5oBVG5HhYFbBZi 4MGo7zlHUSWiK7cjvYj/4HS/zq2hKTn2ta7u4FNWfARYomZ/4l+VtTLgetiyLGoXliIIgF l0MCKF8zDB8sZ75QB2Li/GOxaM6F7LuaCLqEE43DRcxXwaZ0BOVOxDHI6eey2Ypmbmziuq iZzaEtc8P5OsTyt6uDGIQY0Y94nClEnK6vUMiqxLJkorRIAVDx/+8XiBZQbQzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WYMfXVmktpv7BodVPLpSeT/qUACcrs+YrgBwNdeIp9I=; b=gCTlS4RvMNMXr57xlzozBXFOba+0LHkEUEUD093+FnctpHdNZYqB786r8L5XY6gnCmcVQT nXmX9UhFb+GcpawF3pURf74YGShX5lcBGqSyI8QA5G2bg+ELnRJtS12cnPrXDUI79tax4y ZwUWsBA7qiwtK6WZgtYwPjG8NzcJiBekb6FaMIconDmeg3o/tqswSXYLYN4RPGTmrJEYBU Ra6FTWzzqgXgyUujYlSgoDrnhIHYXjT4WYc1G10oEjczz3LtyHe9Xur6fhcXJ94zIaxNRh gj97eX2IJzCXamFHtPtqQDZEF05keG26AWZVrL7LD4EavWBL3FOYcj2z37iIrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560336; a=rsa-sha256; cv=none; b=AXWynyyeIEOctfr9LXwY5rq+r5aN56Msvq1dUuZDVXQnrzzQrw/km6BcfInzeJvNxIek4H mq7rvqy0XXurf7bu2OEfXYzaR61XQBJ38xZJMn1yYmZcUHPaF2eOSSgoVgEs9Z8R7jX3+x OeolEM3XAxPqG5jyUhK+9E5rjfXTvxBtbYD3VA3bwjqoksT9d9gy43jEWFuIDYp8RViSmO fu9nPhkMVFZvAAYM9EmH1CJdfqq8bOoFtf6bbVttAkrJnizW9nsfE54EQ4lpdQog2/mfti g2MDuM9hG8n1Q7wVdyVSPnI2PO2+FhcDB78fsNl5ty/m7xpRqgzQQKCER00WSQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf81bWRzhpW; Sat, 28 Sep 2024 21:52: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 48SLqGLb051649; Sat, 28 Sep 2024 21:52:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqGPH051646; Sat, 28 Sep 2024 21:52:16 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:16 GMT Message-Id: <202409282152.48SLqGPH051646@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ef3fefe03103 - stable/13 - kern_malloc: remove '.' and '\n' from KASSERT/panic List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ef3fefe0310355cfe89a7e48acbb353915ffb2f9 Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ef3fefe0310355cfe89a7e48acbb353915ffb2f9 commit ef3fefe0310355cfe89a7e48acbb353915ffb2f9 Author: Bjoern A. Zeeb AuthorDate: 2024-07-23 18:27:46 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 19:29:06 +0000 kern_malloc: remove '.' and '\n' from KASSERT/panic KASSERT and panic calls should not have a '.' at the end of the message and do not need '\n'. Remove these. No functional changes. Reported by: markj (during review of D45812) Sponsored by: The FreeBSD Foundation Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D46093 (cherry picked from commit c0df224ba5b1fe6257dd197f8298bf59fb6e520f) --- sys/kern/kern_malloc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 1a00e184c83f..6a36f982cc78 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -713,7 +713,7 @@ malloc_domain(size_t *sizep, int *indxp, struct malloc_type *mtp, int domain, size = *sizep; KASSERT(size <= kmem_zmax && (flags & M_EXEC) == 0, - ("malloc_domain: Called with bad flag / size combination.")); + ("malloc_domain: Called with bad flag / size combination")); if (size & KMEM_ZMASK) size = (size & ~KMEM_ZMASK) + KMEM_ZBASE; indx = kmemsize[size >> KMEM_ZSHIFT]; @@ -990,7 +990,7 @@ zfree(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated.\n", + panic("free: address %p(%p) has not been allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { @@ -1156,7 +1156,7 @@ malloc_usable_size(const void *addr) #else vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("malloc_usable_size: address %p(%p) is not allocated.\n", + panic("malloc_usable_size: address %p(%p) is not allocated", addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { From nobody Sat Sep 28 21:52: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 4XGLf9423Rz5XtqV; Sat, 28 Sep 2024 21:52: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 4XGLf93BlTz44R6; Sat, 28 Sep 2024 21:52:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WU/uvUN9sZ5+QA72Mnk/Ob5LCK/LW4b8N1k0CgEb8EA=; b=B4VGs8MhK0S9EFGAblbMjxdOEj8KXY7bX8cuEx4UZgz2TrqIL/81mlxyDnJSlpIwW/IC4H arrLTzmxixoZWNQxcii4xZEYSTu93wXaDeInXLbaOSecVXCP75Bm4warJQXjg7beekqia6 3VgFN7rIZUsFzfiiVaj2PciTodKfCKM4x3LUwN++OPThsdyETm6bjQn5bw+3Pe2j2MpbXB SZODmwC/AS+atGOdZ9wddkve5iAHXhGpYdQ+y+7OKvmzXMvVhm1zAYY1Btj39Yw6r45ENt t8KYVYV1IDyoP63O8qKQv4W+wj7JkOEYeJKPRgPMIHSVB999NNvP9ndxjfeLQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727560337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WU/uvUN9sZ5+QA72Mnk/Ob5LCK/LW4b8N1k0CgEb8EA=; b=fwj1fg3J6PgvkkeyLIPe4txNu1oYayrIL046gtbIIUV6fqZI8k7bu2wELhPuezFrPAefb9 090paG/lUn9EnQ6EoNkwvzxgHFdeFdIN88SjTERM6ZJmX41PLpU2/a0ifvEdhxTWJBKQew +6HgpE7AIQ2GrkprnMGRj1JiMZ0TXOdSLM3qgR0MBd3RpdapqNFEDll9yDM8bBDTHPzfH8 iKpgHE9TZzMHYUP+nCXSEzhQxn/1HhL6ErDn1rCyOTfsStFufVRcDG7U5VP3QjSktV8sQX gBFkA0vXksrmeKQPbIAAT7ZnbIrLb1vKhFPSz21Me/RyHG4qSxpEEtucpN3O2w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727560337; a=rsa-sha256; cv=none; b=e22SJ4ISG+xeJwmSfD2q5KVWlkj1zotkXNSgHAsDnrlcqxrfeFDv1Tt2NCdlI02IPcxogI TCcvZ2p8xay2raUxgUa+bYKjkO1L4TlYsmkFzFMscE2tAbDSmyvXlLy5Nx8roTmgO69xIH +Zvb/gUhfWJJcyUIWeKJy7vUXZ8LQ/iVnpeqfAdO39FQmCo3UEXmgBBY++sVNbwGJ1gb2s +Yr6yRTjM+rTGS4I3GnTOYEdWZ/9iBGcmWc7TetXYQQat2DMoQtjUKa8eddBL25mOTQu1j UcanvG8mb8LACKGdxCPWsl0dyHPEcaRoVcwrlaono77rbn8XeWvhBc9QCy3UnQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGLf92MT3zhpX; Sat, 28 Sep 2024 21:52: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 48SLqHKi051709; Sat, 28 Sep 2024 21:52:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48SLqHsW051706; Sat, 28 Sep 2024 21:52:17 GMT (envelope-from git) Date: Sat, 28 Sep 2024 21:52:17 GMT Message-Id: <202409282152.48SLqHsW051706@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: d7670d965c3f - stable/13 - kern_malloc: fold free and zfree together into one __always_inline func List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d7670d965c3fc3dcb36162a5054356524b3fd4ce Auto-Submitted: auto-generated The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d7670d965c3fc3dcb36162a5054356524b3fd4ce commit d7670d965c3fc3dcb36162a5054356524b3fd4ce Author: Bjoern A. Zeeb AuthorDate: 2024-07-24 15:56:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-09-28 19:33:43 +0000 kern_malloc: fold free and zfree together into one __always_inline func free() and zfree() are essentially the same copy and pasted code with the extra explicit_bzero() (and formerly kasan) calls. Add a bool to add the extra functionality and make both functions a wrapper around the common code and let the compiler do the optimization based on the bool input when inlining. No functional changes intended. Suggested by: kib (in D45812) Sponsored by: The FreeBSD Foundation Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D46101 And the fix from Olivier Certner (olce): kern_malloc: Restore working KASAN runtime after free() and zfree() folding In the zfree() case, the explicit_bzero() calls zero all the allocation, including the redzone which malloc() has marked as invalid. So calling kasan_mark() before those is in fact necessary. This fixes a crash at boot when 'ldconfig' is run and tries to get random bytes through getrandom() (relevant part of the stack is read_random_uio() -> zfree() -> explicit_bzero()) for kernels with KASAN compiled in. Approved by: markj (mentor) Fixes: 4fab5f005482 ("kern_malloc: fold free and zfree together into one __always_inline func") MFC with: 4fab5f005482 Sponsored by: The FreeBSD Foundation (cherry picked from commit 4fab5f005482aa88bc0f7d7a0a5e81b436869112) (cherry picked from commit 28391f188ca18b6251ba46040adf81946b0ccb03) --- sys/kern/kern_malloc.c | 94 +++++++++++++++++--------------------------------- 1 file changed, 31 insertions(+), 63 deletions(-) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 6a36f982cc78..4669e072c966 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -914,15 +914,8 @@ free_dbg(void **addrp, struct malloc_type *mtp) } #endif -/* - * free: - * - * Free a block of memory allocated by malloc. - * - * This routine may not block. - */ -void -free(void *addr, struct malloc_type *mtp) +static __always_inline void +_free(void *addr, struct malloc_type *mtp, bool dozero) { uma_zone_t zone; uma_slab_t slab; @@ -938,8 +931,8 @@ free(void *addr, struct malloc_type *mtp) vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); if (slab == NULL) - panic("free: address %p(%p) has not been allocated", - addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); + panic("%s(%d): address %p(%p) has not been allocated", __func__, + dozero, addr, (void *)((uintptr_t)addr & (~UMA_SLAB_MASK))); switch (GET_SLAB_COOKIE(slab)) { case __predict_true(SLAB_COOKIE_SLAB_PTR): @@ -947,79 +940,54 @@ free(void *addr, struct malloc_type *mtp) #if defined(INVARIANTS) && !defined(KASAN) free_save_type(addr, mtp, size); #endif + if (dozero) { + kasan_mark(addr, size, size, 0); + explicit_bzero(addr, size); + } uma_zfree_arg(zone, addr, slab); break; case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); + if (dozero) { + kasan_mark(addr, size, size, 0); + explicit_bzero(addr, size); + } free_large(addr, size); break; case SLAB_COOKIE_CONTIG_MALLOC: - size = contigmalloc_size(slab); + size = round_page(contigmalloc_size(slab)); + if (dozero) + explicit_bzero(addr, size); kmem_free((vm_offset_t)addr, size); - size = round_page(size); break; default: - panic("%s: addr %p slab %p with unknown cookie %d", __func__, - addr, slab, GET_SLAB_COOKIE(slab)); + panic("%s(%d): addr %p slab %p with unknown cookie %d", + __func__, dozero, addr, slab, GET_SLAB_COOKIE(slab)); /* NOTREACHED */ } malloc_type_freed(mtp, size); } /* - * zfree: - * - * Zero then free a block of memory allocated by malloc. - * + * free: + * Free a block of memory allocated by malloc/contigmalloc. * This routine may not block. */ void -zfree(void *addr, struct malloc_type *mtp) +free(void *addr, struct malloc_type *mtp) { - uma_zone_t zone; - uma_slab_t slab; - u_long size; - -#ifdef MALLOC_DEBUG - if (free_dbg(&addr, mtp) != 0) - return; -#endif - /* free(NULL, ...) does nothing */ - if (addr == NULL) - return; - - vtozoneslab((vm_offset_t)addr & (~UMA_SLAB_MASK), &zone, &slab); - if (slab == NULL) - panic("free: address %p(%p) has not been allocated", - addr, (void *)((u_long)addr & (~UMA_SLAB_MASK))); + _free(addr, mtp, false); +} - switch (GET_SLAB_COOKIE(slab)) { - case __predict_true(SLAB_COOKIE_SLAB_PTR): - size = zone->uz_size; -#if defined(INVARIANTS) && !defined(KASAN) - free_save_type(addr, mtp, size); -#endif - kasan_mark(addr, size, size, 0); - explicit_bzero(addr, size); - uma_zfree_arg(zone, addr, slab); - break; - case SLAB_COOKIE_MALLOC_LARGE: - size = malloc_large_size(slab); - kasan_mark(addr, size, size, 0); - explicit_bzero(addr, size); - free_large(addr, size); - break; - case SLAB_COOKIE_CONTIG_MALLOC: - size = round_page(contigmalloc_size(slab)); - explicit_bzero(addr, size); - kmem_free((vm_offset_t)addr, size); - break; - default: - panic("%s: addr %p slab %p with unknown cookie %d", __func__, - addr, slab, GET_SLAB_COOKIE(slab)); - /* NOTREACHED */ - } - malloc_type_freed(mtp, size); +/* + * zfree: + * Zero then free a block of memory allocated by malloc/contigmalloc. + * This routine may not block. + */ +void +zfree(void *addr, struct malloc_type *mtp) +{ + _free(addr, mtp, true); } /* From nobody Sun Sep 29 03:56: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 4XGVkl18rWz5YGYq; Sun, 29 Sep 2024 03:56: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 4XGVkl0Bfxz4YQl; Sun, 29 Sep 2024 03:56:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WDFPPW2V0jkjADqSwInMZ7GtVrStSptZeW7IFXeQe0E=; b=tiNCtEiQFHfYO9Nr/b52IMuW1MXGoT88KVfaoEtQIHBjgYbqQVXK3HfAm366TfFkuExrgS /wd+nZTsb+lwWFJiPuVVdEcST7snRsmfxYAqFsSyp0dyOX4yEiGX36xpHdYGhI1Tn0MOs4 1W/VDx3AvsHurWI0ZnxF+360opr1dY4/dE20F7pYoqUoUZO4SqnGf9QTMdSsmzgx4qFlr5 9Jgwa4ayrBZ0z2E4fPcf3Z9sHbazs0QGweFa7EwI6saTC8wqoX6maFTYrg6Q6R9Z6GUSuo 5kKK8nSdgzSeiM5or0MMdfIyhEWsT2FeWPb/aO81tuDRIPilX+lRpT4wyjJ4dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WDFPPW2V0jkjADqSwInMZ7GtVrStSptZeW7IFXeQe0E=; b=SgZnE9rzfXKEqch0mCbzVCLSOJtnQ/BNGm8pRDn4m7L0zb/KzQ7AIWuQpGqxh7W7brc19G xRItljd3gFm1Gp/jHTlEOD9R7rPWZefJftW9uxH2/oisLxhVoekC4JG4OJ2/vqElAh10VW km7JIGo/ZZ9RhVc1GIenaBUoO7FX1YPIgMsFLbfDS6NoooRrxmlrqXHiA8K/YJ92HobB22 f7UdX0pmOurZkAa5YrjVK641p0hZAXqMgQ/Vwhvw2iOCkcfY3JfUaOa8iUVaC0NMjH9lOI CUvgV/46pOtI4VEKifPrZDsJhkvCXtdjA4JDtWyMiWvxehUkNFQE/fNJXmsz4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582207; a=rsa-sha256; cv=none; b=svzvcpvxdtlllPQ1PVVit+XdX6BV6KsH3Hpkhc/FEBh7XeBT4UY0FQKtzwyQiYLPD23KzA xMe7NHJ3ivkklNnAkqTGkwnay9jn8BrhNQEQBUFwx6JwR30DamTK+ZCzTw5T8t6n4XNPcz MxC7JZRFh3cyMHoZQSpQ6981usAgyqVnhOessB8+Q33vFR/cQyBL3K+T75v4HT+PwO54FI pKNaIfrLkpZ0psPJXYwfnLAtJ1gQB65xROoCN0VNXU1TZ1prfm5aIyFiC89wAgjyGbmc0d hWnk9aF/aacs4cKbbJIbFqylLqV8JP6/C85YUytI8kZLDn5XdTHtMZZkEiQb0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVkk6tmSztJQ; Sun, 29 Sep 2024 03:56: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 48T3ukso062317; Sun, 29 Sep 2024 03:56:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3ukhG062314; Sun, 29 Sep 2024 03:56:46 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:56:46 GMT Message-Id: <202409290356.48T3ukhG062314@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: 1dd49c09eff5 - stable/14 - e1000: remove NEEDGIANT from a couple sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1dd49c09eff52bf088a966b2002e0a127211eeba Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=1dd49c09eff52bf088a966b2002e0a127211eeba commit 1dd49c09eff52bf088a966b2002e0a127211eeba Author: Kevin Bowling AuthorDate: 2024-09-22 03:52:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:56:34 +0000 e1000: remove NEEDGIANT from a couple sysctls These are internally locked already (cherry picked from commit f6e1b567921187b9331bd71c86e94cf232dd7761) --- sys/dev/e1000/if_em.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 3d815348f5ec..768522a821bd 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -831,11 +831,11 @@ em_if_attach_pre(if_ctx_t ctx) child = SYSCTL_CHILDREN(device_get_sysctl_tree(dev)); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "nvm", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, em_sysctl_nvm_info, "I", "NVM Information"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fw_version", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, em_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); From nobody Sun Sep 29 03:56: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 4XGVkm1zmSz5YGbJ; Sun, 29 Sep 2024 03:56: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 4XGVkm16VSz4YSv; Sun, 29 Sep 2024 03:56:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qxcth0hVdTeObDaJn5w7yCfCpUUsfcovARbJLVIA0xM=; b=FUKElMJRUfovtDNIR7dtxcHOvNyItuN6IjY/mLcSlqh+IbjcFRP9ivrItUmvI4RnsJfZXa uP8t0u+vI8r23CotnhK6SXKlPFEH13p0m81pWD9pA5ezno8XG6nmIDbjkaZL4j+EBqtL7b rhTLO+owdExkcKlWy3kF/J2LLnh0+/qOCiZ6J2MchIjsGxw/xHoY0+l1+0a/Y3GeFXWIVx g2Yx7eyJkdsxbQzV4PMs2aNzTe3iqCQgLKrM48bzHx6XWZ4y8Ey1piXQQ6u30L1FgfmfPb epxhaKe8IhZQOpv66q6ozBR0u2x8CKhSOb2dBPr4rguKeSHMerZpnBfNOhX8fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qxcth0hVdTeObDaJn5w7yCfCpUUsfcovARbJLVIA0xM=; b=i62vr+nVrIsQq/35LrD6iMc9GZD5DeSM7IJjrgMw5/cUjSjvcm2HFxOah9XGUj9UD7RbSZ /mbAerZdz1vCqgdQpdWkiH+ETyrMSkWhxsybqAEpccnzS8EQ0x+p8EGZMRnP0mAxLgK8mq IjVtBGThvY9NeQ3z3xUyz1Z7ovN97FCVWZZ21H3XpsHGQKmILpxlmE9y7ooNvL1yKPM6dL NyxZo4aeBLhz5IZN0gAmQbNEWNFrq6WvW7/AZG6aqiUpKxDsYsVAbOxKWlQX83+/v1hJEp S2W9ZmvdoR+MlLkPVm6v+DDZZJa6rFFb9U78UsKc7areLINNI9wELEBGtqtohg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582208; a=rsa-sha256; cv=none; b=YuKTmN3kTCnnHOoxk4UHlgeSCE+v8qBknMoZtMCUdEAlZ4kL8Km7HjD07o2FjJBHV9cP0n MmDwUUmkFFjLkrrUvYsPOfkWVCrGJVE1bBNvMZgGeBFnga1JNLPCPwxSgLybUhsEIGR8lo pxK44J8WHW1bBeuWVLu+kvRiSumgIMCa6SWHXmve+I3zPpSUKEU9VHHyCSq894nryB3ZaU eKDeGHRvb0KGh+UwXDUH1o96CQCuQDCNdxv3FhgsFN83f0MgwEdAZXhcsz1ZJUSSiWVe/n RsPoJpXQc77JoBUvjC5g7v1kKwMYSVIwBzHD49l6qJw4u9TJifXD0mDU3eRWKQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVkm0kfTztLW; Sun, 29 Sep 2024 03:56: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 48T3umTo062368; Sun, 29 Sep 2024 03:56:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3umtW062365; Sun, 29 Sep 2024 03:56:48 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:56:48 GMT Message-Id: <202409290356.48T3umtW062365@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: 0c730611ed73 - stable/14 - ixgbe: fix misleading indentation in ixgbe_phy List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 0c730611ed731a8e7483ad26864396897e666e70 Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=0c730611ed731a8e7483ad26864396897e666e70 commit 0c730611ed731a8e7483ad26864396897e666e70 Author: Kevin Bowling AuthorDate: 2024-09-22 03:57:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:56:34 +0000 ixgbe: fix misleading indentation in ixgbe_phy (cherry picked from commit e3a6e916dbbade2d4047e127c371ee0d0a25a294) --- sys/dev/ixgbe/ixgbe_phy.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index e3f311473c38..da7d16a514d0 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -1492,7 +1492,7 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) hw->phy.type = ixgbe_phy_sfp_active_unknown; else - hw->phy.type = ixgbe_phy_sfp_unknown; + hw->phy.type = ixgbe_phy_sfp_unknown; break; } } From nobody Sun Sep 29 03:56: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 4XGVkn5kPfz5YGdg; Sun, 29 Sep 2024 03:56:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XGVkn2krxz4YR8; Sun, 29 Sep 2024 03:56:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J5OAFfqvY6emkLBsFXT/qeTKImhftC5+nwSB+cOwJaI=; b=WETeWoSBXZxMtsz4Lu5xv4zg/BsFiFnVdrL3TNq71/UeCQqp4nuQMV1t4njqLEf3vdp6We x9QycaErLKMsN9dHngjv4h3POzGqMdER4bRcUzNVhEfoRZnZRVD6fvm2sWPjKutTLnjdtO MqVJ5LVEsZDPc7OKu+oWs7AR1pSdYVeiz8ZUVAJzE3Rab+TjCNSEkcjtVbQy2+1lgDkMBK 8rTko7nhtxT7a4FqGkeMrVmCt7iX0HlPxgmF1o3PGO/P24STjjxzTTflY1c+ekV9xgoRCu OCSxPJdEQqgB+EiIXguHaAOeNz7lN4T9HUE8CvAggju0zC8ww8KwLeurshetfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J5OAFfqvY6emkLBsFXT/qeTKImhftC5+nwSB+cOwJaI=; b=Rsms8EV12f4IuiKBwGtLwcqBoK0TJE0g93Z8APtlgHWKM/Sh1fixKHg1iPeH+Gx7RR7DtD qYrrvfvuJv+uc387Mjo/aQITcqpxZaR+LuMapdhdP8aBiCFeeykP8ZqjCw0eOqoqd51t4f zP95OADkocLHKCbt9Z+/pY8K7s9Hrgxea7LzSW3oLuVQIpvnaiN/rICojRQ2q3o7uDEsUs j+5isPy3gQzkj3oM3Dhf8A0f2utGngVIwWcRHNhbJpSWjoYLtW/xpy0SthzDuo7DnwFqqa QJcTcPO0Kz7dpNglKpzWRArcw2w3645hw/B0VnfYRyi3kQWg9uPITNR7KE6Ejw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582209; a=rsa-sha256; cv=none; b=ZlmV9qIpOXM+9Qad1KwXIrQfrqDfgaBSUjiSyxWSsKgOE3DhKYluRdrqN/KnLcdNNK8VdF 7iI0W3sMHluuWddDBoXF9C41wCRaPOIw7dkPD7YEWaEiOo4d2F4rEq4dJw0Zg4MtSIUSQF I84oL6fUDXz9i0+l8RXDfYHf/ZMP45oGDuEEmGqrAgqK2Tbhesl80Mm6nL2zT+J1xcvRuZ 1jBGWzg9OXsyt90tR+XbugBIUQcytAjeAZbh5FmF7WCF4kseuxlCG4ctUkyYbulV/gaMgg E2eDgtIE8vIz/O1dVTA7wY0VbhILG445vNbzjsN2QNq+dxbVl9LKmNlV89Et8g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVkn2498ztLX; Sun, 29 Sep 2024 03:56: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 48T3unKX062415; Sun, 29 Sep 2024 03:56:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3uniG062412; Sun, 29 Sep 2024 03:56:49 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:56:49 GMT Message-Id: <202409290356.48T3uniG062412@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: c16093be8a1a - stable/14 - e1000: drop NEEDGIANT on em_sysctl_reg_handler uses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: c16093be8a1a777e8277e72fce3dfbe0cf13b38c Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c16093be8a1a777e8277e72fce3dfbe0cf13b38c commit c16093be8a1a777e8277e72fce3dfbe0cf13b38c Author: Kevin Bowling AuthorDate: 2024-09-22 04:04:38 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:56:34 +0000 e1000: drop NEEDGIANT on em_sysctl_reg_handler uses These are simple singular diagnostic register reads (cherry picked from commit c11a0649b97281699e39d0fc82818f235c1dfb87) --- sys/dev/e1000/if_em.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 768522a821bd..8d140979fbcd 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -4433,11 +4433,11 @@ em_add_hw_stats(struct e1000_softc *sc) CTLFLAG_RD, &sc->watchdog_events, "Watchdog timeouts"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "device_control", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_CTRL, em_sysctl_reg_handler, "IU", "Device Control Register"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_control", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RCTL, em_sysctl_reg_handler, "IU", "Receiver Control Register"); SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "fc_high_water", @@ -4455,11 +4455,11 @@ em_add_hw_stats(struct e1000_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_TDH(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_TDT(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", @@ -4475,11 +4475,11 @@ em_add_hw_stats(struct e1000_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RDH(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RDT(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", From nobody Sun Sep 29 03:56: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 4XGVkp6Lc0z5YGQF; Sun, 29 Sep 2024 03:56: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 4XGVkp3mdbz4YRT; Sun, 29 Sep 2024 03:56:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7jcsI6y1dLqd1wcA6c6wqAEaIbTGcatN7FIjyK7+n+I=; b=SAvpJJVQ9NvhX/aZKk5P4fGPHx16xmBRP7VRMIrO0FmvQmE9NKV8VvGIcix8hBZa2rcPl0 xzoy7UV+wQfB1aXYOxdWojcni7fNWWy0KjTkpY1/noY+LF2Q42H6xYVR4xR+IbegvKPE90 j5FUP2To2AcAwaK8SED7e7AN9DvY1wpTQ5lFB9d5et7qpBPdENFgPkGRrNt4ntZFeTs4h4 tJclk/yTGuyz1uelNpmuYcq8bA5mIDvZZpEjgZEWFsW5hTMh/ZB+BU3QtfMd19k3RJhp4W gfSuwoVHJxP6Ija7fDOoDw4pUMebBcepDgWaA4y8Cq4HqUKLvMFIO86YFflRTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7jcsI6y1dLqd1wcA6c6wqAEaIbTGcatN7FIjyK7+n+I=; b=OV7hB7uYZBLCBuHRTBljr6Idl578dWdT5IQJk8oOFG3Zy67HHWulhxMztu4iJp4QwBLRxu gbVbl/DWpi4mm4Uo6lR1whSRsR66aFAmYbezcIq3v1w/PPXACeKVyZAzMOphdz5TkJj1Hz ylTseX+M8aS+nah8hr03ToBkRP5BZhaKZP3DZ+UUSRflo+VbIi5TQlnpzn6IUuT4NpgzBn 9Y1vdQDt4wb429l8danFTzRcUIHVeEQ2UNwO7oxFENBtubqFbCpzvc0bPgTnHRsSn/Hcer c1tanTWlpB6lYcA0a1WIJgoL0nqmuIDz/TTKhFzH38ZQsqmijAkHMOilr85dMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582210; a=rsa-sha256; cv=none; b=TB9etzbTig3aTKjY9M2nSYXhdjP+SNqo/aTtvSHvOHSNpo6UPqDfZCD5dLbK5hYMETcNSv CEhTPxQkyZWsVErriY3wOc09GzscTXwVZKsHEQWAzHxSlK6KcG++EeNXn4929uULdiU6kw dFN2NmVRRgvg3aI/rm2tftbqU8Xsrzzrw0OhQLk9Dv93+8LIFA/PEPAmJy9yMpBR+EtGu/ gDNMg8OiocR3U7N/OJMS3izYZPgj0n+4g9wieGnN0yDYVK7w0UNSYnY1yn2pxRS87cYcon Cxq6XwlEQqVHh1vQqDYEgBsb1MSd3LDn1x0e+iXpFQ++XM7jQ5I2kOlaH7PkmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVkp30QQztJR; Sun, 29 Sep 2024 03:56: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 48T3uot5062461; Sun, 29 Sep 2024 03:56:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3uo2Z062458; Sun, 29 Sep 2024 03:56:50 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:56:50 GMT Message-Id: <202409290356.48T3uo2Z062458@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: a112b062e068 - stable/14 - e1000: drop NEEDGIANT from em_sysctl_debug_info 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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a112b062e0680c41c5978ae976dc77d0ed117b4d Auto-Submitted: auto-generated The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a112b062e0680c41c5978ae976dc77d0ed117b4d commit a112b062e0680c41c5978ae976dc77d0ed117b4d Author: Kevin Bowling AuthorDate: 2024-09-22 04:17:30 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:56:34 +0000 e1000: drop NEEDGIANT from em_sysctl_debug_info use The write is only used to toggle the debug print function and this is otherwise stateless. (cherry picked from commit 5f6964d9fbf663f85ee60dae7dfff153b82759d8) --- sys/dev/e1000/if_em.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 8d140979fbcd..e2d8535143ef 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -840,7 +840,7 @@ em_if_attach_pre(if_ctx_t ctx) "Prints FW/NVM Versions"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "debug", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, em_sysctl_debug_info, "I", "Debug Information"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fc", From nobody Sun Sep 29 03:58: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 4XGVmP1kHsz5YGp8; Sun, 29 Sep 2024 03:58: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 4XGVmN743Fz4ZyR; Sun, 29 Sep 2024 03:58:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582293; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a29MvWevWiWAABpG02DbmbppUBpvFk8Oh70l8CfXAp8=; b=YrO3+p+8uoWFxXmueR0TOUdFdmdfUt4ajTU/G7d7Yf2DbM2H5ZXbV6qfHiQOqAkVuuZQ51 +xrqxZlaHReh7b2zFyxxBmXMLru3uTKUCkCsgKvSAQ6OJ1WXNDA9pbZV1pzK1kduYsFZ9a ObkTpOWzE9WnHYjZT5RZ0qcdpZbPfUg95JGK3RHNlBiuJDwrpR7gx48YAmZLxR9EtUaDVS b/hbXwA/EnA5fj4SgrvtmzouFaU2eZ96UJLnRSpHqNdVc3CwVoT2gKHz2/oCmJN/v/Ryg1 qTN0E7cG81kQKH3O3qIbaBoiw1TFV2W0eyNPCEbtHY3wzYkodJNXwtMLsCxJDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582293; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a29MvWevWiWAABpG02DbmbppUBpvFk8Oh70l8CfXAp8=; b=V0Z6MuCpvlm/y2YsuJiGGC4k4t9vdFNLBTRlFre+g9wqywf5WP8mv5XwJM13KbMaf4SlDS rOD0Idmro4zyNk5Op7P2gqxdMEeg2FSK+72u6Gte9fVLfAdGQm6Zkhfk7YqeZ0Yuq5RrY1 UdwmImFQFlzFEAj+VO+pvU5QMceOCpsJzEJOwaZY+ED/2LPxJWN0TuCsF3Cl6Z3Yi/ULHr +INmVv9hFn0JIHtUpTYkI9/OtdZZL/BVqs4SysoZfcTSRhocL2dvEE5VySJ+cCYrlIGlWk l+TwWtul8Sv07dKyZMz+OOAMml+d2YGoAMDPGB6CcS49ac4tlWH9EO/GizDhiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582293; a=rsa-sha256; cv=none; b=XwyGo5m6KHH+3ifqYTuhIiEblKVpODcT6VxO1Dg+3l4rh18CDaScEKZbVZ7ik9krVAIt9f pM+SoeQiRswANZb/rlUpBOyC0eHMfZJ9HOaIC/C6wGMlXyz1FdN9r5mmfBJRXiG/d9HpeL uWzHtRbYWoOwfK/XoXCA7T2AfBHfwwEDMUABqEanCnrR0mM4iVQKc/3T4zEoNgUjuXOAxH FFtD0E9QNLeJWf1g6e+xJUAmLPtB1b8lM3nKufz7SEJh/i3sfA0TUAdqM30RtsFmd0doqt +hGM83+r6h6ReTCQZmaxq95zeNRrwgLjnNnHppr8Ddl9keF9n+HvF8o/FOGpUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVmN6dg3ztJY; Sun, 29 Sep 2024 03:58: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 48T3wC4T062839; Sun, 29 Sep 2024 03:58:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3wCVQ062836; Sun, 29 Sep 2024 03:58:12 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:58:12 GMT Message-Id: <202409290358.48T3wCVQ062836@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: d7fcaeca4cec - stable/13 - ixgbe: fix misleading indentation in ixgbe_phy List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: d7fcaeca4cec899fe0f73ded3253b365d3baab9f Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=d7fcaeca4cec899fe0f73ded3253b365d3baab9f commit d7fcaeca4cec899fe0f73ded3253b365d3baab9f Author: Kevin Bowling AuthorDate: 2024-09-22 03:57:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:57:31 +0000 ixgbe: fix misleading indentation in ixgbe_phy (cherry picked from commit e3a6e916dbbade2d4047e127c371ee0d0a25a294) --- sys/dev/ixgbe/ixgbe_phy.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index e3f311473c38..da7d16a514d0 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -1492,7 +1492,7 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) else if (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE) hw->phy.type = ixgbe_phy_sfp_active_unknown; else - hw->phy.type = ixgbe_phy_sfp_unknown; + hw->phy.type = ixgbe_phy_sfp_unknown; break; } } From nobody Sun Sep 29 03:58: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 4XGVmN0395z5YGfT; Sun, 29 Sep 2024 03:58: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 4XGVmM68GZz4Zvw; Sun, 29 Sep 2024 03:58:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EqxBwf6Gotr8U7jCacmzUMwQE/U5lqGiM29/DYbV62Q=; b=rg98wg+x951unMAoSKuTqQPVRHKkXcrsiortTXPh7SI2bE65qc7/zqJrXho+FFu6TTSz5y UQWV5hyHcPADJABMD6U5WWhJhUI/V+qdci3+YtPdcrgTAIpWHVqFVkoDQBbD/f77TqaAew 8pI+Mfx5O+tBzyL+RrbN+8NidVabSlAOVOEoNxyXgT8qIkx7LOiL1EP/lDAbg7thKCCImD zCWccPbLZSQ7zBCsP14uRKy7a0XhzrZtLWCv4Fxf99RKAXDDm/0hZhGBIV3A7gYTSCGzvG 8mvxDe8XPnA7ixZusg5yNeYDqjQZTzdlA93WVwG4OvwBW68Gg7nXKP4gkXQ7iA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EqxBwf6Gotr8U7jCacmzUMwQE/U5lqGiM29/DYbV62Q=; b=G+ncOmoxVVPZ6uzjsYuJ8ppBLcRn2s6ZN8Lsw4oL2FNTNmZuh+3ces2ftsBhZFTxRXaxeB W1W/Lnk/Hk5MiNMurTWOsW8+y2nIKCzM+y5yKwwAdwK2KLh4fC4eNhhvRUKcPivoDrnFe6 PFc9W4NL6qklEQP3hw1lH8SAYVHJsJUAv0PyFEVA0Lu5bGFEBrS9QLzP5p4q5HUJob9lg6 Z6nZ252YaIKTCVaOi1mMYBGDkmancaU7RHdBPBKmGBzZOejWMYUTqG/0wtlG9cZNtIxiwk Jb4mHTgwz8ueR/gUyFdpwHVrRE07t9TqLgxnU8P6chGsJodGG4GAPMThwYtFJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582291; a=rsa-sha256; cv=none; b=CCfk/uXldQpSJGqvYnlHEsK2p4Th3MvHhtXHD0uYvDiBT2zRn9ILUGieyzCZLqktUfOGNb WvfpEzwoar7QOjlQAv8G6B2OEgLgSW91kgP8SBt7FXH3vo4sDgNly88MPQGqt3mZJ1WMtf P02ay5Z5pzUBYbtmS9oWditAP7GA0FjKbbbdQkpsvip4yn2xsliCm4KWoig6/qpNBj0egi xoYFuh+7k+jqCuMWq72D2OQU1UAjMZsa7MUdFmElPmEJv+ldZxjHckn0m5VWPk97QOp1F6 Us37PxJUHQfdXmVEJAuPo1Q6DdbnOiSBYmaB/jClKy9UC2ke2hdmGByB6RcfYQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVmM5dvvztHF; Sun, 29 Sep 2024 03:58: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 48T3wBcS062794; Sun, 29 Sep 2024 03:58:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3wBxK062791; Sun, 29 Sep 2024 03:58:11 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:58:11 GMT Message-Id: <202409290358.48T3wBxK062791@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: 3a2190633618 - stable/13 - e1000: remove NEEDGIANT from a couple sysctls List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3a21906336185ca5d71744a59c0dc996f0d5d152 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=3a21906336185ca5d71744a59c0dc996f0d5d152 commit 3a21906336185ca5d71744a59c0dc996f0d5d152 Author: Kevin Bowling AuthorDate: 2024-09-22 03:52:48 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:57:18 +0000 e1000: remove NEEDGIANT from a couple sysctls These are internally locked already (cherry picked from commit f6e1b567921187b9331bd71c86e94cf232dd7761) --- sys/dev/e1000/if_em.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index b1883d5cc9ab..873f06cc272f 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -833,11 +833,11 @@ em_if_attach_pre(if_ctx_t ctx) child = SYSCTL_CHILDREN(device_get_sysctl_tree(dev)); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "nvm", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, em_sysctl_nvm_info, "I", "NVM Information"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fw_version", - CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_STRING | CTLFLAG_RD, sc, 0, em_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); From nobody Sun Sep 29 03:58: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 4XGVmQ2b2nz5YGjV; Sun, 29 Sep 2024 03:58: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 4XGVmQ0j6hz4ZwR; Sun, 29 Sep 2024 03:58:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TqcNr42g6CMC5GTdXJkPkrJlocJgyZTHe8LwzcGreok=; b=a1FS9dk3JAT+2PZixPbaYG2FM19mt8vrX6AfgU9hIFw/TDXmZkrzHO2cgJf01+Hj25vOTo LW67+LkRvD4PDmitGBmk61hfv9HUvJ/e7vVJycYsXAfHBm0hT8Zk2w0+/pYHcAEoz51FP3 9bjuM7aD3r1QJ/SqEoEtcZbURCX3+vgfnJvzbOh7S94jVa8p1BW/UyH4/GIcsDWPeKOJV4 P27dIh3gWygMZeTscBf38C9TuuW57DWp7dTnr3DFzX5ahfC5Qy5npaDUym3AEHr3knLMXp P0wlGgGbfVCHLqFYOim6SfGxeI494nAWhPDNreRG8ygvfEnw+6Jng9QRIl28WQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TqcNr42g6CMC5GTdXJkPkrJlocJgyZTHe8LwzcGreok=; b=mug3VI6NX1uDUt/xayrS06C4XhY2L4FfJJtDkODqm7GX05m064IVymJfDXwaCKYyr6jwZG 9ovO4kT2mmoEQX8gu0FL8bsA0f/8bnOmuNhHVLu1EZbtm55YAEO50rrASdN9fhamw9NmzX UKzCBhZuGT98JlY1I4auquphvjGvpBX+TXM1syb9gXBGl1ct4J+k0jWnDZR/XJsCOW6gFQ +hAJctgsniCmS5APr6CNI77iWAVXELaAtSt+oZ/ZfYpeTdBtA+rvB3qJDS9ZyDOqVVZa6A e93QPrum29JxVtVEuA5Q/6kTrNOIGVX8pcT3rUjEyGjtQ1/xmQXmbPbRFxBqpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582294; a=rsa-sha256; cv=none; b=W7KKirEUQu2DvHb5oo4GFkZ8TaXsr/zo5CTPVlBhJ2es/CwzfI7Nt4ufqAMFzgsErSNgQi JWy8kLv8aH+hpKaLNP8tYi9fCL29EKwYTNKpG6thoZ0jQnMC6iWrD0YcAY7ciEisX3/oz2 NhVVTgVoMRqju5O1U8F1/g+xvy/MkCFEEjGBJsvsL1cy63SAMKyAvjQW5mS4mqQ1dvSRDs jql6wtrwq0A05flKdOBvuoTj8hUbGYatD4qjAUe+hNe774dbIy53E/R90ST2teG6LpEhVG bYdhHetskJgVYeRhsRlDy+qpY+enp9RloeQUYolk/nS0lkJOUjQ0qlmahAbRRA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVmQ0Fxrzt6T; Sun, 29 Sep 2024 03:58: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 48T3wDRR062888; Sun, 29 Sep 2024 03:58:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3wDcp062884; Sun, 29 Sep 2024 03:58:13 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:58:13 GMT Message-Id: <202409290358.48T3wDcp062884@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: 61e8ea9c6b2f - stable/13 - e1000: drop NEEDGIANT on em_sysctl_reg_handler uses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 61e8ea9c6b2f186267ad1745a6d8c3b9f1793790 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=61e8ea9c6b2f186267ad1745a6d8c3b9f1793790 commit 61e8ea9c6b2f186267ad1745a6d8c3b9f1793790 Author: Kevin Bowling AuthorDate: 2024-09-22 04:04:38 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:57:42 +0000 e1000: drop NEEDGIANT on em_sysctl_reg_handler uses These are simple singular diagnostic register reads (cherry picked from commit c11a0649b97281699e39d0fc82818f235c1dfb87) --- sys/dev/e1000/if_em.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 873f06cc272f..156a5640a06e 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -4435,11 +4435,11 @@ em_add_hw_stats(struct e1000_softc *sc) CTLFLAG_RD, &sc->watchdog_events, "Watchdog timeouts"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "device_control", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_CTRL, em_sysctl_reg_handler, "IU", "Device Control Register"); SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_control", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RCTL, em_sysctl_reg_handler, "IU", "Receiver Control Register"); SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "fc_high_water", @@ -4457,11 +4457,11 @@ em_add_hw_stats(struct e1000_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_TDH(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_TDT(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", @@ -4477,11 +4477,11 @@ em_add_hw_stats(struct e1000_softc *sc) queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RDH(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", - CTLTYPE_UINT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, + CTLTYPE_UINT | CTLFLAG_RD, sc, E1000_RDT(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", From nobody Sun Sep 29 03:58: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 4XGVmR4Zlcz5YGsd; Sun, 29 Sep 2024 03:58: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 4XGVmR1YDLz4b03; Sun, 29 Sep 2024 03:58:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7aCfugGqkDJcPgAtN7A/A2+7guE/dZnK6Oj5DywnrXQ=; b=HMcODV9UWzd+cEJdy58MK0tWikIMWEpa6+iv1y9jWKB3BDYfPMXTnk/AhCH+4U4r5unKRj j7bkTnSYSHLCMKTsnzk4DGH2b0nTVbUMt3PahP+uGQFUm/ditt0hpy8SdSTy67PhntHH9/ d7JFL6srilZp3en3ajbYfKakUiJuYMP9KUgBW1A6/IZORk+1viSBqIhmcbrZYgm9gEJCtR ruWoJDqbx6bUdIYo1lRE5fj+XiKM9nQiM5YGa/KREAq6e+dFIDGdPd9NSseDzAHVUTmnSw WoEewQfm3eEvvZzdetL7SRifQ3ITAu2fSFrj2jaa3jyzEiT2jWCZEkzaGTkOjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7aCfugGqkDJcPgAtN7A/A2+7guE/dZnK6Oj5DywnrXQ=; b=A0E1l8dtg3jC3TjWEiABu3gei5tSCZlZD8l9YJGq25bcRszqycXxyt8CCI70LkArAYN6fV pnkwDSOdHhDef26PeN8pbtsTWRSZY4p3E/1V/xvBCE/tUOz+Snh3orRVsLdTVa37CuJIQK xSLrYXssW/S+GKGtjjZP9e7bVZ3VwV4OFYIjEd5g4JvCkX67UNg6HGuW+xIWF91Re/KsV2 cJA+8RtYAM3nY7Oh8cya/2zLH+1NUlzsQcVXZ1z0+5Vmlre8F9az6UVNWiP4DpBMYrwK9j ttc3A305WiL8KhGYEcMfENy5JCRelbQbIOayLAEy1sqAwFhLyEHn22evrqbxXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582295; a=rsa-sha256; cv=none; b=sk6CmN1K9TRv2lv2Y5Sd+SrTwsQPaicl1vB93s6pPvo1CsMXjxOiU3i7vdNLLKU/D7r5N4 8EQ/H2L+LvE9h8r8y5rde8FgsAg67crJNCG2XOzkokGE7ZX6vndXkCVDOa84Dgt492o65b gUzmHo0/3+XTUyNdoCkSGQzWzIjO3eC9wmtXQp45UsQ7uHl3gIY71AFvHwNdM2CuwuvQXp 6MZmEUzOzVcUlgr2/ift0cbnyCU7+fxtbAWTix22AODmifT/qy0mXv0Yqi0pCDCECBtCK0 W/J6GeOHTumjudrrJPoyPMSH639rzw382DVRiS/Tu1QtVUzar6h5lRoHokNqkQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVmR13KNzsw3; Sun, 29 Sep 2024 03:58: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 48T3wF8i062937; Sun, 29 Sep 2024 03:58:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T3wFRe062934; Sun, 29 Sep 2024 03:58:15 GMT (envelope-from git) Date: Sun, 29 Sep 2024 03:58:15 GMT Message-Id: <202409290358.48T3wFRe062934@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: 70d1a43c724e - stable/13 - e1000: drop NEEDGIANT from em_sysctl_debug_info 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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 70d1a43c724e00e6ce8d2454515cc68853460225 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=70d1a43c724e00e6ce8d2454515cc68853460225 commit 70d1a43c724e00e6ce8d2454515cc68853460225 Author: Kevin Bowling AuthorDate: 2024-09-22 04:17:30 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:57:54 +0000 e1000: drop NEEDGIANT from em_sysctl_debug_info use The write is only used to toggle the debug print function and this is otherwise stateless. (cherry picked from commit 5f6964d9fbf663f85ee60dae7dfff153b82759d8) --- sys/dev/e1000/if_em.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 156a5640a06e..bf612d465ef0 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -842,7 +842,7 @@ em_if_attach_pre(if_ctx_t ctx) "Prints FW/NVM Versions"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "debug", - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, + CTLTYPE_INT | CTLFLAG_RW, sc, 0, em_sysctl_debug_info, "I", "Debug Information"); SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "fc", From nobody Sun Sep 29 04:01:53 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 4XGVrd42sRz5YGcr; Sun, 29 Sep 2024 04:01: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 4XGVrd3S61z4c84; Sun, 29 Sep 2024 04:01:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582513; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BWu6Mnf60W66DDFf8iDhxH4FVl7Rp+fABAAivY6wt0Y=; b=yVsb6mdd0RuwhwoXZcdl5I48R/dXNsFBQVfQMVzxstpPWoQ/0dzgcwa8TnNfNhgkMux+0b nZQ0TZWhsx60udPmaNUSikKjJUwPtdEdgpDoku/18TUtHwZP6WrESql9+Zkgv5E6kB+9wh tsPVugxVSFSlsycWWSXdTMK9mPnHgr3XXx/3+pQ8MHmtfnXqkI2O6mHaAvROlcD7t5zIuR Tz1el+niWLqjZXMWfiA+pIAU1FinYwSaXlyeHSoTjQFxhMrJ9V2IEXkqV2SVr2g5HTXebn bnEKVeClXU931eD8wRaEn/6kt8FpBezvIHkJoZgHNFfBO82v+0gN0KLJuVc9gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582513; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BWu6Mnf60W66DDFf8iDhxH4FVl7Rp+fABAAivY6wt0Y=; b=igJXVys9cMHu1JsioHSRehqARruDSE4CmfcVvCQttMn8/Whxt1knqh60e7vsjfF7tVFt/L 63IuT7v/kQIgenqYu2j5XRiA9HeNSn9d+EtwxsEJhQGvb4HZzYMBxq/RWaA7RYpxVJi+JW 9LXwlFDE1tOpApR8cW1COsUodrnmHXrZA9cnVeobGk5YFVs/n//UE3fqE4WznqAt7IUlfC hfTSBqa8FIRq/YkXlinjUu7iIwefw4CE3Po0DZ8yA9Rgq8Nzax53aGA+Y0doHc6i6SDzbH WXAVw5snenmXG+ZKT78Wf4GuB8pLqsySMpIqVJ/yqhwHJZT4tocq3W/2gi2kCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582513; a=rsa-sha256; cv=none; b=UHqqrOA46d25w4XiKM69CrCD8+kE4NIDZZhH71RiWUJRuPdvF8wfccydJ2WnUe+Cwm9Js+ YPWYS9/5/Gc93ObMIifsCn79VTy/Hx+v2cBzsUfwIme0p6TFn+vweZ/Aas30IcGqw/WS6R PvLnx5bhdLHYkA7VG6whS+B/hcsvNukXWvjJr/BIKV2OXdPktvcHM8jOxI1+78GWVIVyCg nfZ4x6FQFAxcnjKFS0BuzohvDCeqlpZTDd6MVhMUS9V8sc9oy9joJlpBI0alM1hbZNyarf koTnLy9LTuKRfsyoTAtSNjGjT1ko95DU/5p6MG2P3TQb6SPcqm+iV6tKnykkQQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVrd33h5zswb; Sun, 29 Sep 2024 04:01: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 48T41r51080304; Sun, 29 Sep 2024 04:01:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41rsT080301; Sun, 29 Sep 2024 04:01:53 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:53 GMT Message-Id: <202409290401.48T41rsT080301@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: 06c854adc984 - stable/13 - qlxgbe: Remove pointer printing in ql_ioctl.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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 06c854adc98472b9e51cb064446d9f664edba5f4 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=06c854adc98472b9e51cb064446d9f664edba5f4 commit 06c854adc98472b9e51cb064446d9f664edba5f4 Author: Fuqian AuthorDate: 2024-05-28 05:18:52 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:58:54 +0000 qlxgbe: Remove pointer printing in ql_ioctl.c PR: 238653 (cherry picked from commit a58b4ee025fcac480e44e1f56acffe2feacc5845) --- sys/dev/qlxgbe/ql_ioctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/qlxgbe/ql_ioctl.c b/sys/dev/qlxgbe/ql_ioctl.c index 06dda731ed4f..85e41888d289 100644 --- a/sys/dev/qlxgbe/ql_ioctl.c +++ b/sys/dev/qlxgbe/ql_ioctl.c @@ -652,8 +652,8 @@ ql_slowpath_log(qla_host_t *ha, qla_sp_log_t *log) log->num_entries = ha->hw.sp_log_num_entries; } device_printf(ha->pci_dev, - "%s: exit [rval = %d][%p, next_idx = %d, %d entries, %d bytes]\n", - __func__, rval, log->buffer, log->next_idx, log->num_entries, size); + "%s: exit [rval = %d][next_idx = %d, %d entries, %d bytes]\n", + __func__, rval, log->next_idx, log->num_entries, size); mtx_unlock(&ha->sp_log_lock); return (rval); From nobody Sun Sep 29 04:01: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 4XGVrf5LtCz5YGsq; Sun, 29 Sep 2024 04:01: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 4XGVrf4SBzz4cVD; Sun, 29 Sep 2024 04:01:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3nCpH39+bek8a/lLvU9ODqKnZUL+/Do1DrfVHFKlu+o=; b=ITbPrTNA9tNHMzYM6UXBw5APSq5+zuGeYxJKnKXmVcx1QmztGo3C+w/mB9+GlhyID6aJjx EzRF4ErH2PpgnlyWevPBbM8UYbJSDWI9dzXh/KDSfJ9TmLWrTeoUorWJrojNggfrKVZi3o LiPjH/K8ZTObNGBNr98GBqTGZ+BsMhwnMb7sQb5YhBqOm+fsICf+Sy109Br3FBLpTFENQO i4BkaOaQpI93kpYmkgeuHir3xQFa83/Yu53gEYwi51hamC9u7SmP9RcB45aPJY7OkS/yUQ /Y0f74cEMAnJmXCaUDrsvqHPG0yZ8nt9dfsiHkLKjXwYZH0Oz58vCWDIuijTVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3nCpH39+bek8a/lLvU9ODqKnZUL+/Do1DrfVHFKlu+o=; b=RaHg2np+MbLCiK8pSDYW1WuFW3qf7JNae8xVOQxmFXJ2g7FOfDzXbwmAr9iUa8vmllRe7a xaw00iys55FfvtHvXJ2ppSs6iENrcynRXhkqDZY59DMPRHRBbFo4LcLbwQBtYMR5KwQPSf twxXYsDFKBiPUcYxXLvG6dcDMIBLRrGD2Brj9a3/zSk0BSt03hL5Ind+YREXfmwoCqtvHd TnnBuwUAGWhQacG7hu8QOz25zYX6lxP9hAkMMwsMoP748Epox/n6Fh0FcFJPGxWZE1N5UE L4tjOnxl/07ZPln3eIyuIxOkOEOQdy6WW7KE064vg6GYYQaNKGFX5l3GjsAvuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582514; a=rsa-sha256; cv=none; b=EcWkWn/77c+zmYuEQCEX00e+PNd7ZvgstGvcOcden1ktKeLNZP2/djMfuAQxSsdnfvRjn9 IUJEbbUpKMp1eb5uluHEAR7fZqx9+bN+lHQZY2IVU8Q80D6YPgVkR4NauGmG8eWdP14GuK aGbmO0VKsJZeEJdGu/8ptYh5pub7L4yUqpFM2MdF3km433J610h2ttfyoseSFIUF6PO16R zL8CvA/2I+enXoO51cHxeJlLZBu0y4Y1tAU8Oy085NdLG3RO3IZQPtT+9rQZi6jA9ez2pX LDdCBTrRwJ+NvFgcOLbLuM4jG2ESSXqlRRaDZjYerASwBUv02HP3QpHD7/ekaQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVrf44T0ztK7; Sun, 29 Sep 2024 04:01: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 48T41sk1080349; Sun, 29 Sep 2024 04:01:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41stC080346; Sun, 29 Sep 2024 04:01:54 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:54 GMT Message-Id: <202409290401.48T41stC080346@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: eee19d438424 - stable/13 - qlxgbe: fix debug prints in ql_os.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: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: eee19d4384241fe47281da90b56cec91348636c8 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=eee19d4384241fe47281da90b56cec91348636c8 commit eee19d4384241fe47281da90b56cec91348636c8 Author: Fuqian Huang AuthorDate: 2024-05-28 05:31:03 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:59:10 +0000 qlxgbe: fix debug prints in ql_os.c QL_DPRINT2 checks the debug level first and then prints. Replace device_printf with QL_DPRINT2 to check debug level first before printing out the kernel pointers. PR: 238655 (cherry picked from commit 3d6c7ee87e9d7f3c8f617c3803af3effa8eb8a16) --- sys/dev/qlxgbe/ql_os.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/dev/qlxgbe/ql_os.c b/sys/dev/qlxgbe/ql_os.c index c1fbdf60c0aa..5e241f11b938 100644 --- a/sys/dev/qlxgbe/ql_os.c +++ b/sys/dev/qlxgbe/ql_os.c @@ -326,7 +326,7 @@ static int qla_pci_attach(device_t dev) { qla_host_t *ha = NULL; - uint32_t rsrc_len; + uint32_t rsrc_len __unused; int i; uint32_t num_rcvq = 0; @@ -409,10 +409,10 @@ qla_pci_attach(device_t dev) __func__); goto qla_pci_attach_err; } - device_printf(dev, "%s: ha %p pci_func 0x%x rsrc_count 0x%08x" + QL_DPRINT2(ha, (dev, "%s: ha %p pci_func 0x%x rsrc_count 0x%08x" " msix_count 0x%x pci_reg %p pci_reg1 %p num_rcvq = %d\n", __func__, ha, ha->pci_func, rsrc_len, ha->msix_count, - ha->pci_reg, ha->pci_reg1, num_rcvq); + ha->pci_reg, ha->pci_reg1, num_rcvq)); if ((ha->msix_count < 64) || (num_rcvq != 32)) { if (ha->hw.num_sds_rings > 15) { @@ -1279,9 +1279,9 @@ qla_send(qla_host_t *ha, struct mbuf **m_headp, uint32_t txr_idx, "mbuf = %p\n", __func__, __LINE__, txr_idx, tx_idx,\ ha->tx_ring[txr_idx].tx_buf[tx_idx].m_head)); - device_printf(ha->pci_dev, "%s [%d]: txr_idx = %d tx_idx = %d " + QL_DPRINT2(ha, (ha->pci_dev, "%s [%d]: txr_idx = %d tx_idx = %d " "mbuf = %p\n", __func__, __LINE__, txr_idx, tx_idx, - ha->tx_ring[txr_idx].tx_buf[tx_idx].m_head); + ha->tx_ring[txr_idx].tx_buf[tx_idx].m_head)); if (m_head) m_freem(m_head); From nobody Sun Sep 29 04:01: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 4XGVrh02T6z5YGl3; Sun, 29 Sep 2024 04:01: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 4XGVrg557xz4c5L; Sun, 29 Sep 2024 04:01:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582515; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ATABQh8ysEftMvMakaUEVjNirc+E+lAdZa4mabF0NH8=; b=L6LUlLiJmmu6B/93ZqyzJjXoP4zYErdRuhL8Oc24+fH3SMyK1kpjbdWqBzXQ40E1fyDO4T B0OC5lHa5syefGkQslw1L8DpbETXFSzMdftXISWkJp1LXrupWPyJ+rEgr4n5/tZLw4M3OH 3RytmDJXA0yRzh4Pfl/vHR7k+E9dxtIL6m2hMtwKn3oQpeVAg511a+4HAgysCssCnIi/R2 Zgx5nhSJFtizB1AemTTxvqf0OcdyJtVY1V+GYOpUe2Jc29KxYza2iS868mJMJNjecATyCU 5D5LMlO8NMV8KFzaICHCrh9/oC2XqCCPkJJhONVlxl0mn6E2K6ImlM0RZLKnLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582515; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ATABQh8ysEftMvMakaUEVjNirc+E+lAdZa4mabF0NH8=; b=SsbjLBgUetigsnotTu5kIxYk+Ul+2oesjbKRb/5HPTh9ODbMHonafmiJiiw1wP1yufImC2 YyYxX7HkE7fgERM7uzRh1ujAMpE7TxYRKcnNWoOMfiuDiEq7+fuCOuRHdhwaadS+Vsgoaa TMHcKVYao6rn5iIG4KufFaYU+NSmuKaggTROr3J84cGK3y2SfHXL1XfDLuEqoYYnyr19jX 1mlwm112Ti0uYnhsyICe5C9/6pfhjnjg1lcFC/4SvnQ/Yca02FCQgSDrEnlMBoRdG1nAuj 6QU/ECXDrSEXDgZk8bdEt41mxRqMaxKpZIE6A+tWAwfk6gkmxcdpNXDv3P5U0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582515; a=rsa-sha256; cv=none; b=r9aaAYkFCWi4FfeVxxX3IlKbQ2t0jxQuqtEA2SqZ+euEsZotl25qqDVFtdF+FHSgaVidZx +fpRor8IpS9J4citA535OgZcj3by3VR9Tj/q6O9jZVldr2NkxhCAM7dira6/b/KalgYZXK 2lAR2D+nqOTTOmSVUssVFbPQbDs+9IYRLvCpCrGo5Xp/4W2DO0N6ZG2QyQEIsO5Ahab9oV d2MPn+ypGbSbJYbVAUYx4TmbQa5BP8u0n9xAtPkx0jDiuixg8Y6xdRvUfEUiG0j2e7ENAW NXJxgnHTfp0v9bZT5C/n8L4KZdIAf3euP4G9nMj00/ucbFhv+pvhQaFMJBE3+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 4XGVrg4frqztHh; Sun, 29 Sep 2024 04:01: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 48T41tU2080391; Sun, 29 Sep 2024 04:01:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41t5r080388; Sun, 29 Sep 2024 04:01:55 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:55 GMT Message-Id: <202409290401.48T41t5r080388@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: 73f5d59061ab - stable/13 - qlxge: replace device_printf with QL_DPRINT2 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 73f5d59061ab5f4d8a7e0bc0fb6483a21c2d99cb Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=73f5d59061ab5f4d8a7e0bc0fb6483a21c2d99cb commit 73f5d59061ab5f4d8a7e0bc0fb6483a21c2d99cb Author: Fuqian Huang AuthorDate: 2024-05-28 05:40:12 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:59:23 +0000 qlxge: replace device_printf with QL_DPRINT2 QL_DPRINT2 checks the debug level first before printing. Replace device_printf with QL_DPRINT2 to check debug level first before printing out the kernel pointers. PR: 238656 (cherry picked from commit ae389777583dca0e354fdd43aca3413e209160f4) --- sys/dev/qlxge/qls_os.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/dev/qlxge/qls_os.c b/sys/dev/qlxge/qls_os.c index b4d4c20350ac..0da1c3153caf 100644 --- a/sys/dev/qlxge/qls_os.c +++ b/sys/dev/qlxge/qls_os.c @@ -162,20 +162,20 @@ qls_sysctl_get_drvr_stats(SYSCTL_HANDLER_ARGS) ha = (qla_host_t *)arg1; for (i = 0; i < ha->num_tx_rings; i++) { - device_printf(ha->pci_dev, + QL_DPRINT2((ha->pci_dev, "%s: tx_ring[%d].tx_frames= %p\n", __func__, i, - (void *)ha->tx_ring[i].tx_frames); + (void *)ha->tx_ring[i].tx_frames)); - device_printf(ha->pci_dev, + QL_DPRINT2((ha->pci_dev, "%s: tx_ring[%d].tx_tso_frames= %p\n", __func__, i, - (void *)ha->tx_ring[i].tx_tso_frames); + (void *)ha->tx_ring[i].tx_tso_frames)); - device_printf(ha->pci_dev, + QL_DPRINT2((ha->pci_dev, "%s: tx_ring[%d].tx_vlan_frames= %p\n", __func__, i, - (void *)ha->tx_ring[i].tx_vlan_frames); + (void *)ha->tx_ring[i].tx_vlan_frames)); device_printf(ha->pci_dev, "%s: tx_ring[%d].txr_free= 0x%08x\n", @@ -199,15 +199,15 @@ qls_sysctl_get_drvr_stats(SYSCTL_HANDLER_ARGS) } for (i = 0; i < ha->num_rx_rings; i++) { - device_printf(ha->pci_dev, + QL_DPRINT2((ha->pci_dev, "%s: rx_ring[%d].rx_int= %p\n", __func__, i, - (void *)ha->rx_ring[i].rx_int); + (void *)ha->rx_ring[i].rx_int)); - device_printf(ha->pci_dev, + QL_DPRINT2((ha->pci_dev, "%s: rx_ring[%d].rss_int= %p\n", __func__, i, - (void *)ha->rx_ring[i].rss_int); + (void *)ha->rx_ring[i].rss_int)); device_printf(ha->pci_dev, "%s: rx_ring[%d].lbq_next= 0x%08x\n", @@ -385,9 +385,9 @@ qls_pci_attach(device_t dev) ha->msix_count = qls_get_msix_count(ha); - device_printf(dev, "\n%s: ha %p pci_func 0x%x msix_count 0x%x" + QL_DPRINT2((dev, "\n%s: ha %p pci_func 0x%x msix_count 0x%x" " pci_reg %p pci_reg1 %p\n", __func__, ha, - ha->pci_func, ha->msix_count, ha->pci_reg, ha->pci_reg1); + ha->pci_func, ha->msix_count, ha->pci_reg, ha->pci_reg1)); if (pci_alloc_msix(dev, &ha->msix_count)) { device_printf(dev, "%s: pci_alloc_msi[%d] failed\n", __func__, From nobody Sun Sep 29 04:01: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 4XGVrj2YGwz5YGsr; Sun, 29 Sep 2024 04:01: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 4XGVrh61Xpz4cP3; Sun, 29 Sep 2024 04:01:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hFedaG3m5HGajs7GC2HQ04V2+jODvf1zV+MHpnGubxM=; b=Zqho8BTFRUR/U0vMs79ehciAGsYWXRGlAXyWdv7GfRQfHO1aoro4pOAMUr7Dp0H85V+qIn Yf5d3H94o5YAnF0Rjh+O5giRks3+l81O95Z4l1WnTEqpCD6AoArr65UBMWakgOgV9ZuWr2 VwWHU1Wvpmkp1oDVW19qIY5lIGUF/kuPQ3ebKOpKUFnqrlE/eHdvVGPEMeXx0gg6LU9Jt3 m9pIXlc6gLgZ2XXJYzf5t/aal350FcnY0XAT2ekN4vl6oE/LyDdJ55ugiE/4rP1cYl4RdH UGa6lO5OoYQZIDKIAYxbftypsyNzkjFZ8XDydDDl+g8d86v+Ava1FhbwGkdY2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hFedaG3m5HGajs7GC2HQ04V2+jODvf1zV+MHpnGubxM=; b=oJkvCJxMyuV3Ru6hI1AFUZmTjN6Gxki7RaBd41g383wUEJDrRmH7Txqa+XPOgb7b3IC38W Sr+0CqOuRFoTcD1uH0fzjQnB5e9Mys3FDDCyC9nSXNY4hpN52iGujbbmF+wKshAlLfxMZl C4evhAMncVua16wf0Rcf6+V0wqHgGfp4+FKoGer+m/QzRkqW5LMy9srTGTzxWSSpHcneaP AuCxSDTtcMufeISnLZM5wlz0IxY51F8cX+RpNlv4naPNim3o0cfxIyMhj6Y974vfOuSfZW MBRrQ3UVXu1dkDv19nlagUO/CYvioVIP36jAE8Psm2xgTN/nsp1amJq24axx2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582516; a=rsa-sha256; cv=none; b=t1H5Kp+AncVXGMHIPHlrjv9qw4aRVuMU2WCvyzbvULUUw4iCnum5Ee1D6EqXo0V0x5xOB7 hCObSAfJQElCeUY0wzcdbBKKEvEefLnhKlCgARRidQGJzU7VazpwXj5t4DXNoa4LUjEmKp oMHvKZRdheFy/o3seOp3gDEAAtzlnmjGSN1ps37YooYfys0dc2xoUR6VYgQs/ZRbWtfApg RY87WjGsjrTYL/8SkFqE8ddlH/guY9fyFljiQYVC2rv7VxuOfg2yHS4S6G85ltbW/VZmLY c70D6QwRjbJz5oLwKCjBdeXfmRhUMKnJPuuR3z//pXU4ohi80t1TG3EgrN9tgg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVrh5MN1ztZm; Sun, 29 Sep 2024 04:01: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 48T41u5P080437; Sun, 29 Sep 2024 04:01:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41uNm080434; Sun, 29 Sep 2024 04:01:56 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:56 GMT Message-Id: <202409290401.48T41uNm080434@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: 288ad162e68c - stable/13 - qlnx: qlnxe: Fix kernel address leakage List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 288ad162e68cb239069b2886ee887e6ca0ac2b7a Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=288ad162e68cb239069b2886ee887e6ca0ac2b7a commit 288ad162e68cb239069b2886ee887e6ca0ac2b7a Author: Fuqian Huang AuthorDate: 2024-05-28 05:45:52 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 03:59:36 +0000 qlnx: qlnxe: Fix kernel address leakage In function qlnx_rdma_deregister_if, the address of object rdma_if will be printed out. rdma_if is the address of a global variable qlnxr_drv, which is passed from dev/qlnx/qlnxr/qlnxr_os.c A kernel address leakage happens. Fix this by removing the printf statement. PR: 238646 (cherry picked from commit 9370f49ad1c4625cd73c4d84d3e42ed3e20fabbf) --- sys/dev/qlnx/qlnxe/qlnx_rdma.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sys/dev/qlnx/qlnxe/qlnx_rdma.c b/sys/dev/qlnx/qlnxe/qlnx_rdma.c index 522ef74cf9ce..e5b7c1a62e01 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_rdma.c +++ b/sys/dev/qlnx/qlnxe/qlnx_rdma.c @@ -256,8 +256,6 @@ qlnx_rdma_deregister_if(qlnx_rdma_if_t *rdma_if) int ret = 0; qlnx_host_t *ha; - printf("%s: enter rdma_if = %p\n", __func__, rdma_if); - if (mtx_initialized(&qlnx_rdma_dev_lock)) { mtx_lock(&qlnx_rdma_dev_lock); @@ -288,7 +286,6 @@ qlnx_rdma_deregister_if(qlnx_rdma_if_t *rdma_if) mtx_unlock(&qlnx_rdma_dev_lock); } - printf("%s: exit rdma_if = %p\n", __func__, rdma_if); return (ret); } From nobody Sun Sep 29 04:01: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 4XGVrk2xBrz5YGjm; Sun, 29 Sep 2024 04:01: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 4XGVrj6pmjz4cDj; Sun, 29 Sep 2024 04:01:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bcxMpNpp50wXVmTwf12bGahCaK21tj++NnZevYzZ+wY=; b=cFEaUQ8jDhCYCuDbiEtRkMx+LuWg2b18JRiWhgIjlqbFtR+qmddmz/ixO3v5pSHdrTZv7Z G7W+b+f2tZE+41M0GrJGrINOj3/o8CJ03yGZ3x2ZoIlrtWLg2vH1yLu8m7OiP8+IsGsVS0 qQv4hAjxI1EQeXZwn2AimBlYrb3b4AtlLiX1EIZBgaTxVQDYf08WPGyBDkNBVWBEq4yuLJ zVKoJHYvSIGSvfW60wQ4BW5+k95rNtEbbb1SZAhveHRZkp/jyh90cHxoFvh8sAcYTZSJwt osso/5/2i1BSTb+m5b1ErXfBqg8qaaABZhXpW352JlE2HO6X/lUamnWea6cSoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bcxMpNpp50wXVmTwf12bGahCaK21tj++NnZevYzZ+wY=; b=kBhpt76s7LPw0iYc1/wqfDiexWH63TYe1uYoVXDOoPUubdPBhNmPDyBUf6PBe6DwD1406A FyrhNLr0JRUFIQIFhMGfZCIcunxZ2d0pzO9oxXiuaP57PnDBMSxkja0YD9qhTPjYmohJc6 7QiUeFqPhYDAu10MsmYRkhIsZfUkMzq/uA6u+940eLfPWrD8gryr8FyH+kziDdS2ftdzpu eiPo+/Y7FhaHQz2fGjjaWC1T7hVLG/RnS9AV3jkRHyx4n0NTBl5KjvQRx5FsSSlTml+j19 gPubxpsxNoltmJacnSMhOePsp2EbauTlmPVwdGNHaM6bBzjJkIs49TEuOwIg/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582518; a=rsa-sha256; cv=none; b=Bpdtg/YDdGP44mwBwdoA/pCVexy7+ZV8xV/kT+aIjzeDAPwi71hRTNs6iQ0jUOJYjZRV4m dayzaNWYdAIkch89BQyI/ncHbXFMSLG2NdMgfEs6jESJq6bfiEk976HwTkEldg3seJtEO5 EzluV7ceIPmBdyn15Ynb5vSB179WXLoREH1zPlhqY+0n4N6UoVhHMDmufE+HIxKgzksSQM 6oSqvaxdtPasqhPkiue5zUELwEJ8a03fgoWeA5mrnaNilX+C0r05q9rfbBsdIpo6ci2sT5 AVt/KV6CTdXQ49Wa9X6gKUWSJnyFj1uRCw15MfnXe1KX9OvUlAnTUQD50DqOxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVrj6QhtztWF; Sun, 29 Sep 2024 04:01: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 48T41vn6080486; Sun, 29 Sep 2024 04:01:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41voB080483; Sun, 29 Sep 2024 04:01:57 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:57 GMT Message-Id: <202409290401.48T41voB080483@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: a648b36e63ca - stable/13 - qlnxe: Fix multiple locking issues List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: a648b36e63ca8c91e32a3383463b7dd50054c58b Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a648b36e63ca8c91e32a3383463b7dd50054c58b commit a648b36e63ca8c91e32a3383463b7dd50054c58b Author: Keith Reynolds AuthorDate: 2024-05-28 06:41:05 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 04:01:08 +0000 qlnxe: Fix multiple locking issues Multiple issues are reported with WITNESS and code inspection of the locking and lock initialization. PR: 278084 (cherry picked from commit 1c45a62a2f667b45ec10a92ad58ff5a34e68b569) --- sys/dev/qlnx/qlnxe/bcm_osal.h | 8 +++---- sys/dev/qlnx/qlnxe/ecore.h | 1 + sys/dev/qlnx/qlnxe/ecore_mcp.c | 48 +++++++++++++++++++++--------------------- sys/dev/qlnx/qlnxe/ecore_mcp.h | 6 +++--- sys/dev/qlnx/qlnxe/qlnx_def.h | 2 +- sys/dev/qlnx/qlnxe/qlnx_os.c | 9 ++++---- sys/dev/qlnx/qlnxe/qlnx_os.h | 4 ++-- 7 files changed, 40 insertions(+), 38 deletions(-) diff --git a/sys/dev/qlnx/qlnxe/bcm_osal.h b/sys/dev/qlnx/qlnxe/bcm_osal.h index 33b78f11ede3..dd5419d40c3a 100644 --- a/sys/dev/qlnx/qlnxe/bcm_osal.h +++ b/sys/dev/qlnx/qlnxe/bcm_osal.h @@ -81,7 +81,7 @@ extern void qlnx_dma_free_coherent(void *ecore_dev, void *v_addr, bus_addr_t phys, uint32_t size); extern void qlnx_link_update(void *p_hwfn); -extern void qlnx_barrier(void *p_hwfn); +extern void qlnx_barrier(void *p_dev); extern void *qlnx_zalloc(uint32_t size); @@ -223,14 +223,14 @@ typedef struct osal_list_t #define OSAL_SPIN_LOCK_ALLOC(p_hwfn, mutex) #define OSAL_SPIN_LOCK_DEALLOC(mutex) mtx_destroy(mutex) #define OSAL_SPIN_LOCK_INIT(lock) {\ - mtx_init(lock, __func__, MTX_NETWORK_LOCK, MTX_SPIN); \ + mtx_init(lock, __func__, "OSAL spin lock", MTX_SPIN); \ } #define OSAL_SPIN_UNLOCK(lock) {\ - mtx_unlock(lock); \ + mtx_unlock_spin(lock); \ } #define OSAL_SPIN_LOCK(lock) {\ - mtx_lock(lock); \ + mtx_lock_spin(lock); \ } #define OSAL_MUTEX_ALLOC(p_hwfn, mutex) diff --git a/sys/dev/qlnx/qlnxe/ecore.h b/sys/dev/qlnx/qlnxe/ecore.h index 5db691b94420..0eaa4c632e05 100644 --- a/sys/dev/qlnx/qlnxe/ecore.h +++ b/sys/dev/qlnx/qlnxe/ecore.h @@ -789,6 +789,7 @@ struct ecore_dev { u8 dp_level; char name[NAME_SIZE]; void *dp_ctx; + void *ha; enum ecore_dev_type type; /* Translate type/revision combo into the proper conditions */ diff --git a/sys/dev/qlnx/qlnxe/ecore_mcp.c b/sys/dev/qlnx/qlnxe/ecore_mcp.c index d94c7382edc5..ab14b1eb5186 100644 --- a/sys/dev/qlnx/qlnxe/ecore_mcp.c +++ b/sys/dev/qlnx/qlnxe/ecore_mcp.c @@ -191,17 +191,17 @@ enum _ecore_status_t ecore_mcp_free(struct ecore_hwfn *p_hwfn) OSAL_FREE(p_hwfn->p_dev, p_hwfn->mcp_info->mfw_mb_cur); OSAL_FREE(p_hwfn->p_dev, p_hwfn->mcp_info->mfw_mb_shadow); - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->cmd_lock); OSAL_LIST_FOR_EACH_ENTRY_SAFE(p_cmd_elem, p_tmp, &p_hwfn->mcp_info->cmd_list, list, struct ecore_mcp_cmd_elem) { ecore_mcp_cmd_del_elem(p_hwfn, p_cmd_elem); } - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); #ifdef CONFIG_ECORE_LOCK_ALLOC - OSAL_SPIN_LOCK_DEALLOC(&p_hwfn->mcp_info->cmd_lock); - OSAL_SPIN_LOCK_DEALLOC(&p_hwfn->mcp_info->link_lock); + OSAL_MUTEX_DEALLOC(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_DEALLOC(&p_hwfn->mcp_info->link_lock); #endif } @@ -308,18 +308,18 @@ enum _ecore_status_t ecore_mcp_cmd_init(struct ecore_hwfn *p_hwfn, /* Initialize the MFW spinlocks */ #ifdef CONFIG_ECORE_LOCK_ALLOC - if (OSAL_SPIN_LOCK_ALLOC(p_hwfn, &p_info->cmd_lock)) { + if (OSAL_MUTEX_LOCK_ALLOC(p_hwfn, &p_info->cmd_lock)) { OSAL_FREE(p_hwfn->p_dev, p_hwfn->mcp_info); return ECORE_NOMEM; } - if (OSAL_SPIN_LOCK_ALLOC(p_hwfn, &p_info->link_lock)) { - OSAL_SPIN_LOCK_DEALLOC(&p_info->cmd_lock); + if (OSAL_MUTEX_ALLOC(p_hwfn, &p_info->link_lock)) { + OSAL_MUTEX_DEALLOC(&p_info->cmd_lock); OSAL_FREE(p_hwfn->p_dev, p_hwfn->mcp_info); return ECORE_NOMEM; } #endif - OSAL_SPIN_LOCK_INIT(&p_info->cmd_lock); - OSAL_SPIN_LOCK_INIT(&p_info->link_lock); + OSAL_MUTEX_INIT(&p_info->cmd_lock); + OSAL_MUTEX_INIT(&p_info->link_lock); OSAL_LIST_INIT(&p_info->cmd_list); @@ -381,7 +381,7 @@ enum _ecore_status_t ecore_mcp_reset(struct ecore_hwfn *p_hwfn, } /* Ensure that only a single thread is accessing the mailbox */ - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->cmd_lock); org_mcp_reset_seq = ecore_rd(p_hwfn, p_ptt, MISCS_REG_GENERIC_POR_0); @@ -407,7 +407,7 @@ enum _ecore_status_t ecore_mcp_reset(struct ecore_hwfn *p_hwfn, rc = ECORE_AGAIN; } - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); return rc; } @@ -551,7 +551,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, * The spinlock stays locked until the command is sent. */ - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->cmd_lock); if (!ecore_mcp_has_pending_cmd(p_hwfn)) break; @@ -562,7 +562,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, else if (rc != ECORE_AGAIN) goto err; - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); if (ECORE_MB_FLAGS_IS_SET(p_mb_params, CAN_SLEEP)) { OSAL_MSLEEP(msecs); } else { @@ -588,7 +588,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, } __ecore_mcp_cmd_and_union(p_hwfn, p_ptt, p_mb_params, seq_num); - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); /* Wait for the MFW response */ do { @@ -602,7 +602,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, } else { OSAL_UDELAY(usecs); } - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->cmd_lock); if (p_cmd_elem->b_is_completed) break; @@ -613,7 +613,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, else if (rc != ECORE_AGAIN) goto err; - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); OSAL_MFW_CMD_PREEMPT(p_hwfn); } while (++cnt < max_retries); @@ -623,9 +623,9 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, p_mb_params->cmd, p_mb_params->param); ecore_mcp_print_cpu_info(p_hwfn, p_ptt); - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->cmd_lock); ecore_mcp_cmd_del_elem(p_hwfn, p_cmd_elem); - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); if (!ECORE_MB_FLAGS_IS_SET(p_mb_params, AVOID_BLOCK)) ecore_mcp_cmd_set_blocking(p_hwfn, true); @@ -634,7 +634,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, } ecore_mcp_cmd_del_elem(p_hwfn, p_cmd_elem); - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); DP_VERBOSE(p_hwfn, ECORE_MSG_SP, "MFW mailbox: response 0x%08x param 0x%08x [after %d.%03d ms]\n", @@ -647,7 +647,7 @@ _ecore_mcp_cmd_and_union(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt, return ECORE_SUCCESS; err: - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->cmd_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->cmd_lock); return rc; } @@ -1439,7 +1439,7 @@ static void ecore_mcp_handle_link_change(struct ecore_hwfn *p_hwfn, u32 status = 0; /* Prevent SW/attentions from doing this at the same time */ - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->link_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->link_lock); p_link = &p_hwfn->mcp_info->link_output; OSAL_MEMSET(p_link, 0, sizeof(*p_link)); @@ -1585,7 +1585,7 @@ static void ecore_mcp_handle_link_change(struct ecore_hwfn *p_hwfn, OSAL_LINK_UPDATE(p_hwfn, p_ptt); out: - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->link_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->link_lock); } enum _ecore_status_t ecore_mcp_set_link(struct ecore_hwfn *p_hwfn, @@ -1774,7 +1774,7 @@ ecore_mcp_update_bw(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt) struct public_func shmem_info; u32 resp = 0, param = 0; - OSAL_SPIN_LOCK(&p_hwfn->mcp_info->link_lock); + OSAL_MUTEX_ACQUIRE(&p_hwfn->mcp_info->link_lock); ecore_mcp_get_shmem_func(p_hwfn, p_ptt, &shmem_info, MCP_PF_ID(p_hwfn)); @@ -1787,7 +1787,7 @@ ecore_mcp_update_bw(struct ecore_hwfn *p_hwfn, struct ecore_ptt *p_ptt) ecore_configure_pf_max_bandwidth(p_hwfn->p_dev, p_info->bandwidth_max); - OSAL_SPIN_UNLOCK(&p_hwfn->mcp_info->link_lock); + OSAL_MUTEX_RELEASE(&p_hwfn->mcp_info->link_lock); /* Acknowledge the MFW */ ecore_mcp_cmd(p_hwfn, p_ptt, DRV_MSG_CODE_BW_UPDATE_ACK, 0, &resp, diff --git a/sys/dev/qlnx/qlnxe/ecore_mcp.h b/sys/dev/qlnx/qlnxe/ecore_mcp.h index c94583cdfba3..edb1f9083467 100644 --- a/sys/dev/qlnx/qlnxe/ecore_mcp.h +++ b/sys/dev/qlnx/qlnxe/ecore_mcp.h @@ -51,10 +51,10 @@ struct ecore_mcp_info { /* List for mailbox commands which were sent and wait for a response */ osal_list_t cmd_list; - /* Spinlock used for protecting the access to the mailbox commands list + /* Lock used for protecting the access to the mailbox commands list * and the sending of the commands. */ - osal_spinlock_t cmd_lock; + osal_mutex_t cmd_lock; /* Flag to indicate whether sending a MFW mailbox command is blocked */ bool b_block_cmd; @@ -62,7 +62,7 @@ struct ecore_mcp_info { /* Spinlock used for syncing SW link-changes and link-changes * originating from attention context. */ - osal_spinlock_t link_lock; + osal_mutex_t link_lock; /* Address of the MCP public area */ u32 public_base; diff --git a/sys/dev/qlnx/qlnxe/qlnx_def.h b/sys/dev/qlnx/qlnxe/qlnx_def.h index c63efd19d794..276804c08ab5 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_def.h +++ b/sys/dev/qlnx/qlnxe/qlnx_def.h @@ -391,7 +391,7 @@ struct qlnx_host { int msix_count; - struct mtx hw_lock; + struct sx hw_lock; /* debug */ diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c index d098694ba19a..8e97321e15dd 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.c +++ b/sys/dev/qlnx/qlnxe/qlnx_os.c @@ -785,7 +785,7 @@ qlnx_pci_attach(device_t dev) ha->pci_dev = dev; - mtx_init(&ha->hw_lock, "qlnx_hw_lock", MTX_NETWORK_LOCK, MTX_DEF); + sx_init(&ha->hw_lock, "qlnx_hw_lock"); ha->flags.lock_init = 1; @@ -1232,6 +1232,7 @@ qlnx_init_hw(qlnx_host_t *ha) int rval = 0; struct ecore_hw_prepare_params params; + ha->cdev.ha = ha; ecore_init_struct(&ha->cdev); /* ha->dp_module = ECORE_MSG_PROBE | @@ -1376,7 +1377,7 @@ qlnx_release(qlnx_host_t *ha) pci_release_msi(dev); if (ha->flags.lock_init) { - mtx_destroy(&ha->hw_lock); + sx_destroy(&ha->hw_lock); } if (ha->pci_reg) @@ -5488,11 +5489,11 @@ qlnx_zalloc(uint32_t size) } void -qlnx_barrier(void *p_hwfn) +qlnx_barrier(void *p_dev) { qlnx_host_t *ha; - ha = (qlnx_host_t *)((struct ecore_hwfn *)p_hwfn)->p_dev; + ha = ((struct ecore_dev *) p_dev)->ha; bus_barrier(ha->pci_reg, 0, 0, BUS_SPACE_BARRIER_WRITE); } diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.h b/sys/dev/qlnx/qlnxe/qlnx_os.h index f5711d9e0295..71ccb256ea0c 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.h +++ b/sys/dev/qlnx/qlnxe/qlnx_os.h @@ -140,8 +140,8 @@ MALLOC_DECLARE(M_QLNXBUF); /* * Locks */ -#define QLNX_LOCK(ha) mtx_lock(&ha->hw_lock) -#define QLNX_UNLOCK(ha) mtx_unlock(&ha->hw_lock) +#define QLNX_LOCK(ha) sx_xlock(&ha->hw_lock) +#define QLNX_UNLOCK(ha) sx_xunlock(&ha->hw_lock) /* * structure encapsulating a DMA buffer From nobody Sun Sep 29 04:01: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 4XGVrl3Qgvz5YGfn; Sun, 29 Sep 2024 04:01: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 4XGVrl1qThz4cT2; Sun, 29 Sep 2024 04:01:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O5MIK8/VrzMebD2HuJ1KAiYxbnExHDv90SAFdT4y/eE=; b=qxbkjd0vVDuGIpcB6aJUiZC2P4WfUxTJzIiN9gxUN4XJnhNK65uJY5kz4EWGmPYHzy+U3v oAWmw7h38mZk+9xiVGp7m2aWiOoG1Kj7za5LC3nhwEQ/17rJo4pz16IOtfGEqkxL723noW NTYa4KU0lkLl5ANzfVi0PKMOkmSBfP2zOEHo8yiROhsgQm2KSoiDR3VuYiA6yprRra6plE SQZamSwH87ah+xAEOl8ApmeHAw7jQPxs0zo+t4jlDTHl0ayA1MCNdU5wnSWPP474c9kvlb ympm8hJ63sB+15/cMHoiTu5c3z8L4jzk9eux4z3fPuH783R45LzkuJm1DAwODg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727582519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O5MIK8/VrzMebD2HuJ1KAiYxbnExHDv90SAFdT4y/eE=; b=ANc3iXtYwY/6xx9sJZvbEBHi15jTAPmlUJPQ5ZZHA74BNQ0lf6854j1ZvVRctVrMx2FBxg QCHPfwNtA5gre21zjvEZwJG0EUCIGiTxx0otA5pesvwjGk+DKpPKa+i3g4CdXB9Ahu0WYo 7O/f1+oDztOMVb6dCuGXyTPSEp5Iqt8WLPSAAIQDPC2IyPiiNctlM3sJnz85T4PcdDd5RP CFkpWrBE4JjW/YSuEcYwDEFCctYJj5oREbTJCvCogYju4z8017D00rfnFEM4HkciDHRMiT wICIh69iAyfaS65v/DtuOcAHBvBP9HUj0jMU/R3QH5mzsnN1mXxHHS+Bc8x7PQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727582519; a=rsa-sha256; cv=none; b=WLAHDdZkjM3omGK40aWluW0TV0QGkd4myzDkf0nYZUDjtUHqkWdwgq6/apvGSQsxl78DWa FXHcLHse5D4gmRBAEErySUWvE1V8pf1G6jd8nrxSEeqMVQ4nlS/tuZFKvrIN26gNHVb+ee qvIEeGyRagDgGBGC+YwN/hF0JyZZ3WPdKZH9ZoV6DcsaxTJ/Z0VgsYsZy+KSai7M6KZZzF P+a3tF4h+KuU43rP1OU5RvlSd/Ne3Eg6bDKx5pm5lS7YnZ8On4/+XMJx/yhztFnBQs3URw 54kdOudXFqMPcV/gmdj/4xduJZ9m8Z3ZScIel9n/cqEGFwy4Qq3r9E5XUgd2gQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGVrl0fLwzsh9; Sun, 29 Sep 2024 04:01: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 48T41w7e080532; Sun, 29 Sep 2024 04:01:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48T41whm080529; Sun, 29 Sep 2024 04:01:58 GMT (envelope-from git) Date: Sun, 29 Sep 2024 04:01:58 GMT Message-Id: <202409290401.48T41whm080529@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: 03f291611464 - stable/13 - qlnxe: Allow MAC address override List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 03f2916114647def8b68f1a7f4aee65aec5632c7 Auto-Submitted: auto-generated The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=03f2916114647def8b68f1a7f4aee65aec5632c7 commit 03f2916114647def8b68f1a7f4aee65aec5632c7 Author: Keith Reynolds AuthorDate: 2024-08-05 19:10:18 +0000 Commit: Kevin Bowling CommitDate: 2024-09-29 04:01:28 +0000 qlnxe: Allow MAC address override The qlnxe driver always sets the NIC's rx mac address to the card's default MAC, ignoring any MAC address set via ifconfig. PR: 278085 (cherry picked from commit 792226e53023cb09566cb78b2135b052e9b62e0e) --- sys/dev/qlnx/qlnxe/qlnx_os.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c index 8e97321e15dd..6887d84a0ce9 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.c +++ b/sys/dev/qlnx/qlnxe/qlnx_os.c @@ -7179,8 +7179,17 @@ qlnx_set_rx_mode(qlnx_host_t *ha) { int rc = 0; uint8_t filter; + const struct ifnet *ifp = ha->ifp; + struct sockaddr_dl *sdl; - rc = qlnx_set_ucast_rx_mac(ha, ECORE_FILTER_REPLACE, ha->primary_mac); + if (ifp->if_type == IFT_ETHER && ifp->if_addr != NULL && + ifp->if_addr->ifa_addr != NULL) { + sdl = (struct sockaddr_dl *) ifp->if_addr->ifa_addr; + + rc = qlnx_set_ucast_rx_mac(ha, ECORE_FILTER_REPLACE, LLADDR(sdl)); + } else { + rc = qlnx_set_ucast_rx_mac(ha, ECORE_FILTER_REPLACE, ha->primary_mac); + } if (rc) return rc; From nobody Sun Sep 29 15:25: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 4XGp142KXwz5XpJn; Sun, 29 Sep 2024 15:25: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 4XGp141kS7z4kcG; Sun, 29 Sep 2024 15:25:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lwr3LL1FodNBjkflKzWPYpr+O1blrZSyXQia6PBo7J4=; b=SlSRLpMnJWsYWRAu9/MLEU/DX7MZdzItLq+vFJhLUiaiBBS50xljrf3PozVCeAIRRQ1Jf+ NnVFyTdBVGvqwC4EsyZfgWI0Abfh037KWfM1nagvtTTgC3n7F7X9QJp8tc3I5i4GfXFs00 Iyq+gPrD42RTTednCKYTZiFmxBJcTRWnLGRZYIizOjeP09eGu6eRrSFHVzUoApKkmosHb7 EbK1UKDPk2AxNfk3Ar+Hde41Jb7HBulDus9g8RIdpI480tYDDXZ8BeInr9uilsGzXHE39V B10nbUYKoYscxc6HvpgSg3h6vF/4DEmV78EDHNqM0oSga8O2eCesVVX+j4m4VA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lwr3LL1FodNBjkflKzWPYpr+O1blrZSyXQia6PBo7J4=; b=XNAdViMryxM9vq4Ad8uqGvACVCQQJyq5079RfUri/dY/28thY52UYFOD2dVq0urnZxXWkz SWU6zNOHb3kqZI7GY3nfL57+tZFmMPkiXGPP6YrogK5PpO0/icsaptnidRwENa22HEW9ov bRg+HyBayv66Yb4jJR6CrUeTqQaunpmV6Vu8vTPhd3gtkLLdAEmtweUEE777ljoADLmM5K jd4EbIwnGnoP8QDdeI+rcpIF3psav6I3ZFIVjLnBTBup6meytWL1wrvhdX9VE/7ztyQ1RV VZCAefWEk6I6t2b6Oz6lBYoT7QGkCe0U2bCdtGOBWT6Ud2aV8objm6UobmFy6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623512; a=rsa-sha256; cv=none; b=YTVMiD/iW3FQFJ45K3YVKzjkEjU8I66tqnl4kApiQNRhdI5dqe5jSuulvm0qLAZn9nj04w J2pG/knmzuxL/vbgg7ERZoCQlh6jGjxV5KqWXp2oeBqHe/F+XxH4nM+NEURJ/zfjiDTWEE XKqIc55PHLsVk+gwVmYOVZFNaR6HCVlirvHuYosv3Ni19d02vDvir3O6vNklCN0Byt57t4 ZpKntHwAIZNik4QAykwzMwO+theany+lJaxypmIjKbqPd6bOF8z7gm0HV1O5u+aTwZxDgb qY4tZnh7QbmSXZz8r7t58lJxVoIVGIU9Hy27Hxm7FVZJwGxeCfbw1+tdBIvUXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1417BqzF9p; Sun, 29 Sep 2024 15:25: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 48TFPCFY030280; Sun, 29 Sep 2024 15:25:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPCEu030276; Sun, 29 Sep 2024 15:25:12 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:12 GMT Message-Id: <202409291525.48TFPCEu030276@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 0e9cdcc5141e - stable/14 - random: Avoid magic numbers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0e9cdcc5141e82ac3d9fa8331c3a4ed19933afa9 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0e9cdcc5141e82ac3d9fa8331c3a4ed19933afa9 commit 0e9cdcc5141e82ac3d9fa8331c3a4ed19933afa9 Author: Colin Percival AuthorDate: 2024-09-18 05:12:04 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 random: Avoid magic numbers Move RANDOM_FORTUNA_{NPOOLS,DEFPOOLSIZE} from fortuna.c to fortuna.h and use RANDOM_FORTUNA_DEFPOOLSIZE in random_harvestq.c rather than having a magic (albeit explained in a comment) number. The NPOOLS value will be used in a later commit. Reviewed by: cem MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46693 (cherry picked from commit 32fce09268ddd97efb4412529ba57293554c5985) --- sys/dev/random/fortuna.c | 2 -- sys/dev/random/fortuna.h | 4 ++++ sys/dev/random/random_harvestq.c | 9 +++++---- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/dev/random/fortuna.c b/sys/dev/random/fortuna.c index 11b2dcde1db8..ec27acc63b29 100644 --- a/sys/dev/random/fortuna.c +++ b/sys/dev/random/fortuna.c @@ -72,8 +72,6 @@ #include /* Defined in FS&K */ -#define RANDOM_FORTUNA_NPOOLS 32 /* The number of accumulation pools */ -#define RANDOM_FORTUNA_DEFPOOLSIZE 64 /* The default pool size/length for a (re)seed */ #define RANDOM_FORTUNA_MAX_READ (1 << 20) /* Max bytes from AES before rekeying */ #define RANDOM_FORTUNA_BLOCKS_PER_KEY (1 << 16) /* Max blocks from AES before rekeying */ CTASSERT(RANDOM_FORTUNA_BLOCKS_PER_KEY * RANDOM_BLOCKSIZE == diff --git a/sys/dev/random/fortuna.h b/sys/dev/random/fortuna.h index cb4683514989..7378edb9238c 100644 --- a/sys/dev/random/fortuna.h +++ b/sys/dev/random/fortuna.h @@ -27,6 +27,10 @@ #ifndef SYS_DEV_RANDOM_FORTUNA_H_INCLUDED #define SYS_DEV_RANDOM_FORTUNA_H_INCLUDED +/* Defined in FS&K */ +#define RANDOM_FORTUNA_NPOOLS 32 /* The number of accumulation pools */ +#define RANDOM_FORTUNA_DEFPOOLSIZE 64 /* The default pool size/length for a (re)seed */ + #ifdef _KERNEL typedef struct mtx mtx_t; #define RANDOM_RESEED_INIT_LOCK(x) mtx_init(&fortuna_state.fs_mtx, "reseed mutex", NULL, MTX_DEF) diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index 09b81950281b..cb01f7b77195 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -55,6 +55,7 @@ #include #include +#include #include #include #include @@ -260,8 +261,8 @@ random_sources_feed(void) * stuck for a few seconds with random_kthread gradually collecting a * small chunk of entropy every 1 / RANDOM_KTHREAD_HZ seconds. * - * The value 64 below is RANDOM_FORTUNA_DEFPOOLSIZE, i.e. chosen to - * fill Fortuna's pools in the default configuration. With another + * We collect RANDOM_FORTUNA_DEFPOOLSIZE bytes per pool, i.e. enough + * to fill Fortuna's pools in the default configuration. With another * PRNG or smaller pools for Fortuna, we might collect more entropy * than needed to fill the pools, but this is harmless; alternatively, * a different PRNG, larger pools, or fast entropy sources which are @@ -271,8 +272,8 @@ random_sources_feed(void) * try again for a large amount of entropy. */ if (!p_random_alg_context->ra_seeded()) - npools = howmany(p_random_alg_context->ra_poolcount * 64, - sizeof(entropy)); + npools = howmany(p_random_alg_context->ra_poolcount * + RANDOM_FORTUNA_DEFPOOLSIZE, sizeof(entropy)); /* * Step over all of live entropy sources, and feed their output From nobody Sun Sep 29 15:25: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 4XGp152sPSz5XnrW; Sun, 29 Sep 2024 15:25: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 4XGp152R1wz4kWj; Sun, 29 Sep 2024 15:25:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623513; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VxJ40hmI8AOJwtr2NQYyfHRHv/Osg9l0n/5YS8DVJ3Q=; b=Y4kVhMz9MYGcRLHSLL9USpyLRWleI1rr99Hx289R1WlPKTRu8eEaskSVE9Rl/JFIx1hwwB /5SrtmR8XRksk1eP+KlWZqRa1AgMGHPwW6mjaiPhh/kmG5keQFtGtG3VTQCyNyZ6VU+87Z d92vH80Pfnlp0fHVG5abZY0+78v2GfyXGY2H42SVHWJ+L8spHuT/UWxnEIdByL9b56+Yhp 5Bn1d7RIEgMER3FHIS8SR4ud6V+UzaimlqIW4CcBeOzTVOoyg0hCvtSka6y4zZz2Ls4nSF p2lGzgkGaZffxnV3ysUpvWH4Fa01SVixVTyfpKziNRf2mMkoTudI/teQNfrNMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623513; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VxJ40hmI8AOJwtr2NQYyfHRHv/Osg9l0n/5YS8DVJ3Q=; b=f53Clvr5Z5SmwE9BBzkjDydcJ3ahQQKlJ8UN7CDdoFz19KueVRi+g8h4YW7A5X6leogE+P DNndpeiq31bRSDiAURSOqADX0Aq1DtXHIMf6IPcvhOyElbRNuu39+qRzfSAzGFUrWpaTT3 n242GGf963Q4pIB/DuOQe4WFQ63bihLB7vTxMn07uiK+j++cZ+TAS26IZbr3S759SR7T77 jHbzW69dT09QGP68nmBBdL8KX4wfR4UfVaA/e0pVJTcrvIRt+VestyoDs6cVVqwOmcBLLZ 5vkGwFOn47ORA26v5IM03fHXDebiOGPt5nre+L30V444EPdVCJeviojCpNIguw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623513; a=rsa-sha256; cv=none; b=XBXKyxMUsKoQAbwYpNilt36X5DBNAx6rht1DERs2lc/OmnT2d7vplaBZZoIlIkxuJHx++z Fdpl4IWq69jA2wb32QohBrHK77ZRtS2VgFoyxuibY1GU7cMiETN7c6Zs4oUcDP3dmbt0uW O4uvbrL3/ErGtOTolp7NQb5DpWbcd+xVjOqFtjJc27xZMBsQXnU1QgdSBUikR3qrJN/Txa dHRZeDm8V9ZpG5NAuQniAk7VMDoOSOE735YbU0H8svXgvhydc3TONdeY4PD+aESYErJbYf Dqf5np3iM3dCN4lk04UHmWGL43Wm30+oqTB+WjVBMlLKN7PIDYQlyRKX8M3lJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1522vdzFDB; Sun, 29 Sep 2024 15:25: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 48TFPDk9030331; Sun, 29 Sep 2024 15:25:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPDG4030328; Sun, 29 Sep 2024 15:25:13 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:13 GMT Message-Id: <202409291525.48TFPDG4030328@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: a9f473632607 - stable/14 - loader: Add TSLOG to interpreter built-ins List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a9f47363260761a4f90609dc54d115715c907db9 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a9f47363260761a4f90609dc54d115715c907db9 commit a9f47363260761a4f90609dc54d115715c907db9 Author: Colin Percival AuthorDate: 2024-09-18 11:01:41 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 loader: Add TSLOG to interpreter built-ins Wrap each call to a built-in command with TSENTER/TSEXIT to make it easier to see where time is going in the loader. MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46630 (cherry picked from commit 58ec2d0d4a3c3bcf741d9694dc7696c7b4e753b9) --- stand/common/interp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stand/common/interp.c b/stand/common/interp.c index c6ac01ea099b..ead7eb136879 100644 --- a/stand/common/interp.c +++ b/stand/common/interp.c @@ -189,7 +189,9 @@ interp_builtin_cmd(int argc, char *argv[]) cmd = interp_lookup_cmd(argv[0]); if (cmd != NULL && cmd->c_fn) { + TSENTER2(argv[0]); result = cmd->c_fn(argc, argv); + TSEXIT(); } else { command_errmsg = "unknown command"; } From nobody Sun Sep 29 15:25: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 4XGp1660j2z5XpCh; Sun, 29 Sep 2024 15:25: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 4XGp163zYnz4krZ; Sun, 29 Sep 2024 15:25:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vqt0Rdzjznk3+98s9qYbtttqrgCCSr3Qg9UCrUoZLQk=; b=qks9Nka7Az3ZCRNDfRH+0ul9p1+uOTzZsL16+IN8NS7ZP3RQWxW1E/er+QpJgcW26dHl4f cjq6OD3d3kQmZ5WJwI82bYWUZbymRCbyJ/T4b8m2j98D9qEgsk4ey8f0JWAIgG5PnG7Epg sDYXpaAlH0HzKNP1nYOSs8nFLUlqpF6AemH0AVHCHbxOKMEUQMEN3ooXSabXeooHHjqNBL wypUsnLrQsLPh9Zcf75/zaWOCi/nfufn2CdlYEN+ayRC8csEsY9DQ7C4Ranc3gC2cV2W0p hjMawFNSKLB4pAkZUcC2n7TVnfd+6KlG6ZkEGq0k4ORDXASN/wUqD/MuFAYh3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vqt0Rdzjznk3+98s9qYbtttqrgCCSr3Qg9UCrUoZLQk=; b=NvwWZlqm1GpB3Dq6LG+4s6wRoWZsddMlg2XT0GADz++z7n1yel6XObs0qFm8xvy8itJm8X 8qKi7Dn7E4BBnTLdv26lDCY0XHRHX/gheL66SkYii8UPzLU9YKWAtn3oQSWOEf2NQsBHd1 7UBybyPnkV7N6nKGPUxJ7nG14Or9Z1JWs+RwWwoAfMSq1Q2lzx7yW0LJ6N3TfD8b6mUnB1 JAP3DKGFQ+UAIS4Pl/9F6jZTh1o/46KwB9se6GcY672FYsGfO/0IlFfitVx7vgFN6f3mKd IMcFBmmjQiBmi47kLw3X607AzmuW0JpB0I+sn7qscP8yZiWZAmaKxDnxUDWn5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623514; a=rsa-sha256; cv=none; b=WnFGDZTNL9fERBY74aWVsBI75daqpsydjLb5PkPrUX2g9dVU+ItNujlhA2b6eMt6zYKr0x DSWyaIla441XscEA7X7W4NKaVbRQcsd/8BDwIwSrSWn9NlJRri/N2mcO3N0dfLDyBwGuwZ sJu9Jf6+l3QDtG8ZmmTe+uSQHgml7V2VNyc4ltdhfCqHTigzcCs3o/1gdtZnx8bbnfJC/e /VeBNI34s4nvY1bLf/PM2q2go5Lfs2NmjeAkyUslWm1muyvhRYYwIEN2OEV5dlJv4YymwQ Kb6GFUw51fGrDokVFGQ2BeoWgV1rnXN+m7xYNM8bxs6bKUzGDLZmopaOtk7gTQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1633drzDc5; Sun, 29 Sep 2024 15:25: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 48TFPEku030376; Sun, 29 Sep 2024 15:25:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPEwu030373; Sun, 29 Sep 2024 15:25:14 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:14 GMT Message-Id: <202409291525.48TFPEwu030373@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 0d348c621f4e - stable/14 - loader: Instrument EFI GetRNG with TSLOG List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0d348c621f4e79278073b5ad4c9ca90a0e999f02 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0d348c621f4e79278073b5ad4c9ca90a0e999f02 commit 0d348c621f4e79278073b5ad4c9ca90a0e999f02 Author: Colin Percival AuthorDate: 2024-09-18 11:01:55 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 loader: Instrument EFI GetRNG with TSLOG On some systems, the EFI GetRNG is slow. Make it show up in flamecharts. MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46631 (cherry picked from commit b58fe4eb29fbd3236df0f7fdfad4393d2536dbb5) --- stand/efi/loader/main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index e4d62f2e940c..27fdb3bfefc9 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -1267,7 +1267,9 @@ command_seed_entropy(int argc, char *argv[]) return (CMD_ERROR); } + TSENTER2("rng->GetRNG"); status = rng->GetRNG(rng, NULL, size, (UINT8 *)buf); + TSEXIT(); if (status != EFI_SUCCESS) { free(buf); command_errmsg = "GetRNG failed"; From nobody Sun Sep 29 15:25: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 4XGp176KM5z5XpGg; Sun, 29 Sep 2024 15:25: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 4XGp174gntz4kpm; Sun, 29 Sep 2024 15:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623515; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mKfhh/pD7zw7qz/D4Ft8CriW8j71lTfY5q02iFPYT5s=; b=k7U4AWEW1/7TW0u4exv+gTFXN9Q2pd91Hxw2kO0R00qcdnygUYxhj8Q+vKWsQ/7J0f5p3u NC7xy4pX3plC8y4axfavmBN2sJIl/5z6AbaXARm503Bln62leJ2Koc3VqsYDpKpobmhXWX vfkb02/uRzI/CqPF0OP/ZbzCOQpd7Kg0h3WbufFhxwFdj/gd0Vjm/yt4hg4Wxb0I2IDfHQ Z8Msvah9Q9VjP/C3u+9UrgpRIUlpWbLym+yJfd4m16mfQ9fw6BqXbE4mYeWSRKqcbdNUgg /kpigRBIdbkvkZolmTSr5GqZLB7UCY7Pk0DC0TP8P5TIRNRWESLETvM15vNZhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623515; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mKfhh/pD7zw7qz/D4Ft8CriW8j71lTfY5q02iFPYT5s=; b=FTdGApQG4nmd+px1pcUIhG7i+a+iS5TFZn6cKFrZ7qGdYKMMPMTc9srWZzUZBFCf7ZRUwc JbMgLCTR68Y3lKXEHIhg/kG9KSPutedNp/xJaBEkrrCl30aaLhQzjoO5TMmr7Jyg+c7FxX Oekx6ePPJePX+hbLxHSfW3W7yjksKZd/jQ93SeFyAeyjScnn3nPCSfNMzR8+SIddMXb0I5 fc7u0BblIhFV8xBqmlIM6HTbJ6Gt9joi/5t5iMivazZh8v3dV5qufuzTCseEElhnNJZxxo CNvEq4/Wo2WOUP1chqNdT+vCqtBHp5ky7w7B3AZMmdWHWwFgbRtTPEFcgi/Pqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623515; a=rsa-sha256; cv=none; b=fZcPa1/b2TxXyr0WX1njCDaQXMR79XRLKL7pQ5ktrZMUDW28EOs3ui2nljcUexzoZOw30A gOURoD4SpAn1wAFEcIGNCM7UNFZSO2FAS6pQyA+X5R2oPKoEPGM/kHe/THjKDXuheadz9z iZvrFT76d6M16gJBpOm6NRVj77l4ccnQ5HoKcDELDRaAwcbiV+FEYnoQ5C7MRxM6PyXjxY 8WrM2OEeImdwFb14quYDJq39Lv0IoceYa73kysH1fiWKzrc72iXvPdNLVv0r35ih1Lsp5Q yU7Aleq8owWTWOMoIpLIwoC3zbVb6BxZf5039JEXvkcM7sI46g77HJzi8+V33g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1744g6z1CxR; Sun, 29 Sep 2024 15:25: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 48TFPFhT030423; Sun, 29 Sep 2024 15:25:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPFs9030420; Sun, 29 Sep 2024 15:25:15 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:15 GMT Message-Id: <202409291525.48TFPFs9030420@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 0a8ff1989681 - stable/14 - loader: Make EFI entropy size configurable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0a8ff1989681f476b9da87a309db25aecd7881c1 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0a8ff1989681f476b9da87a309db25aecd7881c1 commit 0a8ff1989681f476b9da87a309db25aecd7881c1 Author: Colin Percival AuthorDate: 2024-09-18 11:02:01 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 loader: Make EFI entropy size configurable Add a new loader variable entropy_efi_seed_size which defaults to 2048; if not defined (e.g. if the /boot/lua/ is updated but /boot/defaults/ isn't) the same 2048 default will be used. Reviewed by: Val Packett MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46632 (cherry picked from commit f4a69a933cd645e384b337db5ef2ccf41a1ddd5b) --- stand/defaults/loader.conf | 8 ++++++-- stand/lua/core.lua | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/stand/defaults/loader.conf b/stand/defaults/loader.conf index a5d27b96b6ba..c3de7cdfb74b 100644 --- a/stand/defaults/loader.conf +++ b/stand/defaults/loader.conf @@ -48,8 +48,12 @@ entropy_cache_type="boot_entropy_cache" # Required for the kernel to find # the boot-time entropy cache. This # must not change value even if the # _name above does change! -entropy_efi_seed="YES" # Set this to NO to disable loading - # entropy from the UEFI hardware random number generator API +entropy_efi_seed="YES" # Set this to NO to disable loading + # entropy from the UEFI hardware + # random number generator API +entropy_efi_seed_size="2048" # Set this to a different value to + # change the amount of entropy + # requested from EFI ### RAM Blacklist configuration ############################ ram_blacklist_load="NO" # Set this to YES to load a file diff --git a/stand/lua/core.lua b/stand/lua/core.lua index 7b7560ddc820..72b19462ae5c 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -369,7 +369,8 @@ end function core.loadEntropy() if core.isUEFIBoot() then if (loader.getenv("entropy_efi_seed") or "no"):lower() == "yes" then - loader.perform("efi-seed-entropy") + local seedsize = loader.getenv("entropy_efi_seed_size") or "2048" + loader.perform("efi-seed-entropy " .. seedsize) end end end From nobody Sun Sep 29 15:25: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 4XGp186hj6z5XpB3; Sun, 29 Sep 2024 15:25: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 4XGp185DmJz4krs; Sun, 29 Sep 2024 15:25:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x/9uA4bmZSCOaYkn/gFf7y20mENH5N5J0162FmkvpMM=; b=lZApWUoEJHpdiA6IAeIimpPmQJC53imQF1PG6D54YnU8yfZY3gIijOOulH5U1Tm/43i2g3 +sU7tttBtHGgsX63nmPt9ByzXV0lorJUraQNgCHEfmq+lso8V4T4IM5m4Bn25+IcK0KIXs SRq/kI3bjlYNLwfUmxX8Rpg/yd7JvDmB9vfn/2giD8GrKMsnGbsvGFNn2ujfBrQiTYTVji Sz6mt50BCrQTamnJqQ2IzhRKxbEx/6pRaNHNf3rhTC8iSPMvvlV4Z8gj6mjNm/onA2I4kT LeNT8sJ82c/aecKOjGyBCCAWPtChM4QWEp3DDsHGPrFXIfhzE4LU378FdocZ3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x/9uA4bmZSCOaYkn/gFf7y20mENH5N5J0162FmkvpMM=; b=ZGvfiOvnkeJ4ZtmtoLZridA4jk5ohr0Cmrvu+Tzc8MpFpN4IpMpE7mlfF0yeAfvZnNp+Cm UIF43u93gu65uHttq4Nj/w0vNQviTAx26Kjuz3nthPvpp5+E9o1CxSAz1Prby3wOa3Rajb h0wL/0DfRbCjIVe2Zsa02PNIsSo0fnuhIkMIWAG/taQIWQYr9PdKQnOjdKIkmCeYSQv1Cr uL6STodhfep9c/0lKdbDRg5gr0AyVv5/ubc1Qjq4lyTg0vOArxdNOoXWb311cyYl8eiXFO BrYxWP2AIyRueeFIVhqdVJ4Z64iQ9Nmk3P399Y5ZNg7pNQIIxwBu982hw3EzcQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623516; a=rsa-sha256; cv=none; b=WQ1xnDKcN0ICreZd63GT1Hir6ExnvK3VI4dHOPj0R8bT69cqxqo5JH+C7HOlbUt2StAN7F VtsliJPoh71o9kN8wRQPeFdhzaSf9aHDoVoFCZolxH/O/RLBH/5tg0fzWIX079plppZWCx gtFW36fsd35HtoaHgdvZx5YiULFW0lWFzb86CRNQuor6rZ6qYAO5xrR9uXHhpjEm7ng72P t9XDUTpUhxrWWz3g8ApeBTfK7UV42bINfBMyuEM8ZFu1KPOYOi6Q/19keq+FhUGiGXwFWw n5tSVCgc1/xLkC0A8QUIUbpKicGiMy0F9BBZ3OdzchAOeVczFWZUrmEKI8VCQA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp184gjLzFGj; Sun, 29 Sep 2024 15:25: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 48TFPGjR030462; Sun, 29 Sep 2024 15:25:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPGEC030459; Sun, 29 Sep 2024 15:25:16 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:16 GMT Message-Id: <202409291525.48TFPGEC030459@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 8d2d49bdb5ce - stable/14 - pkcs5v2: Add pkcs5v2_genkey_raw function List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8d2d49bdb5ce070a5e954baa59ad6a7d0e3514cd Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=8d2d49bdb5ce070a5e954baa59ad6a7d0e3514cd commit 8d2d49bdb5ce070a5e954baa59ad6a7d0e3514cd Author: Colin Percival AuthorDate: 2024-09-18 11:02:05 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 pkcs5v2: Add pkcs5v2_genkey_raw function This is like pkcs5v2_genkey but takes a "passphrase" as a buffer and length rather than a NUL-terminated string. Reviwed by: pjd MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46633 (cherry picked from commit 8ce291a335bc751e7a89691eebfb9f9da65b82ac) --- sys/geom/eli/pkcs5v2.c | 13 +++++++++++-- sys/geom/eli/pkcs5v2.h | 3 +++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/geom/eli/pkcs5v2.c b/sys/geom/eli/pkcs5v2.c index ea3be36865b0..4ea5ea12634a 100644 --- a/sys/geom/eli/pkcs5v2.c +++ b/sys/geom/eli/pkcs5v2.c @@ -52,13 +52,22 @@ void pkcs5v2_genkey(uint8_t *key, unsigned keylen, const uint8_t *salt, size_t saltsize, const char *passphrase, u_int iterations) { + + pkcs5v2_genkey_raw(key, keylen, salt, saltsize, passphrase, + strlen(passphrase), iterations); +} + +void +pkcs5v2_genkey_raw(uint8_t *key, unsigned keylen, const uint8_t *salt, + size_t saltsize, const uint8_t *passphrase, size_t passlen, + u_int iterations) +{ uint8_t md[SHA512_MDLEN], saltcount[saltsize + sizeof(uint32_t)]; uint8_t *counter, *keyp; - u_int i, bsize, passlen; + u_int i, bsize; uint32_t count; struct hmac_ctx startpoint, ctx; - passlen = strlen(passphrase); bzero(key, keylen); bcopy(salt, saltcount, saltsize); counter = saltcount + saltsize; diff --git a/sys/geom/eli/pkcs5v2.h b/sys/geom/eli/pkcs5v2.h index f271f17a68c1..02e3fac02fe7 100644 --- a/sys/geom/eli/pkcs5v2.h +++ b/sys/geom/eli/pkcs5v2.h @@ -30,6 +30,9 @@ #define _PKCS5V2_H_ void pkcs5v2_genkey(uint8_t *key, unsigned keylen, const uint8_t *salt, size_t saltsize, const char *passphrase, u_int iterations); +void pkcs5v2_genkey_raw(uint8_t *key, unsigned keylen, const uint8_t *salt, + size_t saltsize, const uint8_t *passphrase, size_t passlen, + u_int iterations); #ifndef _KERNEL int pkcs5v2_calculate(int usecs); #endif From nobody Sun Sep 29 15:25: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 4XGp1B2Btbz5XpCl; Sun, 29 Sep 2024 15:25: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 4XGp1965LGz4l32; Sun, 29 Sep 2024 15:25:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623517; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mGmTRRai800NPkGxQSyqey1+zTWcrDU49EsPm9zoAOU=; b=Qsgj/6DuGt8VeBeWx+kqEzQzNqMz7thJ5w9vqQUTnYM3q/Smk/fF2YZL6sLaPa1/rCBqgp 7Pt7LLMjNvEnclDphYbqSb7pMdiE8umnbEOkbAfqLTzXgN33IQG0qICYBADT1lGNKs05Ho pZDEU+qD13c+Sf4bTGAvbJr9mGWl4x8fLieQI8LLYyGdTYhR7gBmhMpu5snw4n4pTdUgul lCZ3j9DGvFvh02NbJ6IWxNzlCGAayz8dTg7zuC1OPkTPIK42F/2AjDHUNay2/L6RjJ1LzJ FuXYdwHtsO+oLQvuzP3l2i2i6AzrGY1ecV5wvArL8OEFJRnhz3vNiXqwKR+EZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623517; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mGmTRRai800NPkGxQSyqey1+zTWcrDU49EsPm9zoAOU=; b=OP3Rsrfbv8P6VC/rg6QKorCyOMyQzSrFpRXqTRezprb0l2YGEWqnEmRNRla/sJDapS7Fg1 ycD3i1vyx7/7NccLyaKLXyEbVEUNsRWuciC7N+x4quX/jPdoI1w2gQUNkIucs5rga/h2zn TNPuYypiRKYmlAfOOzgO6Y9bVGsctGgxD9dJgyAHV2af3d7b2fug8dMqAT5zQ1Tn7lw1fQ K9DNHnGtvhJQl40e3BPAiPb+qeq4vMvSyz82b9lklpfm2gKeTidlbCdhB7J8QPy9QKk+xD Dp1hySUE+pw1RYAeVjZfNmtoqdMvRVuPo9Tk6y2vLLubjW3yjY5IZImEZp1D+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623517; a=rsa-sha256; cv=none; b=WSB7Z8PuQPfd91pxblZlBoxZlHXEZXSVNlzVhcYnTsRe8Fujj4sh6Y0UTQ5WhEnKGjefIA TqABVZfjWPWInVD/6kGV3oJh8NyhqDa0OyICrNDIX0Mr/rgKc3aAGH0zoscZCR1e5A3E0V e2CsssZAFIE1DUi2aI2EI8QswlJ7vo77dDibEXiSIC710ARAIXTuILywkuKYLTv25GVGlv +jkIJi1jdem7K0GHLNGmLotzjW22J/m0rbRYbYu66IcChXapehHcrQUSa2Fs61Ng+ppXGn 3PhmBkKWQZO1T5BdzslqV+a34U0rWaM/G1SXHGfrjIm2mJpTMryqZ1i1Ea+OaA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp195N3qz1CxS; Sun, 29 Sep 2024 15:25: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 48TFPHEr030504; Sun, 29 Sep 2024 15:25:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPHb7030501; Sun, 29 Sep 2024 15:25:17 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:17 GMT Message-Id: <202409291525.48TFPHb7030501@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: f216bddf84e6 - stable/14 - loader: Make pkcs5v2 unconditionally available List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f216bddf84e67b80bb0f55fcc93dde0c7a557f60 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f216bddf84e67b80bb0f55fcc93dde0c7a557f60 commit f216bddf84e67b80bb0f55fcc93dde0c7a557f60 Author: Colin Percival AuthorDate: 2024-09-18 11:02:08 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 loader: Make pkcs5v2 unconditionally available This was previously only available if GELI support was included, but I want to use it for processing entropy from EFI Reviewed by: imp MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46634 (cherry picked from commit 925f15731e3480fe80f580a2f7463cb5210a95c8) --- stand/libsa/Makefile | 4 ++++ stand/libsa/geli/Makefile.inc | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/stand/libsa/Makefile b/stand/libsa/Makefile index bc85a3dcb0de..1b37812a3226 100644 --- a/stand/libsa/Makefile +++ b/stand/libsa/Makefile @@ -164,6 +164,10 @@ CFLAGS.bzipfs.c+= -I${SRCTOP}/contrib/bzip2 -DBZ_NO_STDIO -DBZ_NO_COMPRESS .PATH: ${SYSDIR}/libkern SRCS+= explicit_bzero.c crc32_libkern.c +# Bits from GELI which are reused elsewhere +.PATH: ${SYSDIR}/geom/eli +SRCS+= g_eli_hmac.c pkcs5v2.c + # Maybe GELI .if ${MK_LOADER_GELI} == "yes" .include "${SASRC}/geli/Makefile.inc" diff --git a/stand/libsa/geli/Makefile.inc b/stand/libsa/geli/Makefile.inc index 07600d5287bd..8300359a465a 100644 --- a/stand/libsa/geli/Makefile.inc +++ b/stand/libsa/geli/Makefile.inc @@ -21,10 +21,8 @@ SRCS+= ${i} .endfor SRCS+= geliboot.c \ geliboot_crypto.c \ - g_eli_hmac.c \ g_eli_key.c \ g_eli_key_cache.c \ - pkcs5v2.c \ # aes .PATH: ${SYSDIR}/opencrypto From nobody Sun Sep 29 15: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 4XGp1C4S8nz5XpGn; Sun, 29 Sep 2024 15: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 4XGp1C0Vztz4ksK; Sun, 29 Sep 2024 15:25:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6x/izbytoxOqTnNSqq+HFWhp6yXZsxRMo/qzmDld/A=; b=smMaBKZo+1O4/oVXnqDnrKo75ffJ+L4UUBm/YDkvZu+fN8EfJ3QMAThk33uukFKYs8GiwF JOL+Y1MeWrF251p1yOmusszhFT2twHoHV3SkpiA2pQv3b5ESK1WU3cfFQcITS/EjYbun3t DChHWMTV7Igbc7AYM2G6Sl/WIqhulekVqi3dFw4L/O5bQ7WUIgyYEijr0vypprymXsrMgH or9Z/4bYJrbByp6NPWMSc7pj/x0HhMa4PRC9bO0DRYpMxaIn2s3gctqkWYA58sC8Oal5AN 2ohu6BoW7yLkS1tuQi1Gyc1FzPsD7AgfD+eCov/m7dkuad4Eb6p3TomsVtVWGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6x/izbytoxOqTnNSqq+HFWhp6yXZsxRMo/qzmDld/A=; b=crnWcLKcd37O71RwCIsntvG4Ns8+IIM03ooeK1LqNkrwju3MlSvNyWoK2nDK4ZnOXwBfvv 4tBdwepoc4QXKJlH/P4yrl11U1WsDOVbJow6fIEchNpUiPlKdz5N8ej1bCffQZnQuqqzHO 3qF0pqyq/SBQDtUe6TjARy6hJc52uf0t4wEiW7XsyaHtbf1Sfh+JKVe7XcXaSvkULlvj3M zS76i2nt9+j0WxSAyN2dqtkQJ1O+tKwtjcJrioj0sYESqbFELAZ83ZXJLKKyShlOMY0PsZ uXEvt1A2HTKIxM0Z/IXJzYL0eOYcv/gQGlvU8ICi7JGcmmt224FYHNegxZddgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623519; a=rsa-sha256; cv=none; b=uBTN8KyCSYP10IDkvYPQZYDuOJQF04n6XFdOEdSXHMOYBD2ko9PdTzYJQdWIwLjdneudzP zi5vTstb3kt1AX464ofrscEQ0f7uSJyKA5y92ahfcx28oWd+4f90jvip2tTYm3elzy7RLs xKcpZq8dFUzkHGpM9FIXsAGM/yFsNrXgJSn9aXyEIJp50AaegGwFFf+N8nFdnW0xVjJTnd SL/UrYrN6nUgdWN1MUPmOBQllqivlohxTFDgxgKEQZW7E3EJO84znBavm3c4cAhfFPl0Rz oFmBbB60/tSjzA24ICGPWLcojzFAIIqfre3sbBD98LDcQJnO5jF4ffLsh4DtWg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1B6k3zzFGk; Sun, 29 Sep 2024 15: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 48TFPIl1030561; Sun, 29 Sep 2024 15: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 48TFPI2c030558; Sun, 29 Sep 2024 15:25:18 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:18 GMT Message-Id: <202409291525.48TFPI2c030558@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: f470543a65b1 - stable/14 - loader: Expand EFI entropy if < 2048 bytes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f470543a65b14cbf2fec4e69b924d66068e182f4 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=f470543a65b14cbf2fec4e69b924d66068e182f4 commit f470543a65b14cbf2fec4e69b924d66068e182f4 Author: Colin Percival AuthorDate: 2024-09-18 11:02:12 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 loader: Expand EFI entropy if < 2048 bytes The EFI RNG on some platforms takes a long time if we request 2048 bytes of entropy, so we would like to request less; but our kernel Fortuna RNG needs to be fed 2048 bytes in order to consider itself "fully seeded". If we have between 64 bytes (the size of a single Fortuna pool and enough to guarantee cryptographic security) and 2048 bytes (what Fortuna wants) then the boot process will hang waiting for more entropy despite in fact having enough to operate securely. Since 64 bytes of entropy is plenty to be cryptographically secure (an attack of cost ~ 2^128 is infeasible, which implies a mere 16 bytes of entropy), use PBKDF2 (aka pkcs5v2_genkey_raw) to spread the entropy across 2048 bytes. This is secure since PBKDF2 has the property that every subset of output bytes has within O(1) of the maximum possible amount of entropy. Reviewed by: pjd MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46635 (cherry picked from commit c8ebbd28aa91705aea3a67b06018ea6aef5aa6e4) --- stand/efi/loader/main.c | 39 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 27fdb3bfefc9..324150f7c8c7 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -56,6 +56,9 @@ #include #include +#include +#include + #include "efizfs.h" #include "framebuffer.h" @@ -1249,11 +1252,27 @@ command_seed_entropy(int argc, char *argv[]) { EFI_STATUS status; EFI_RNG_PROTOCOL *rng; - unsigned int size = 2048; + unsigned int size_efi = RANDOM_FORTUNA_DEFPOOLSIZE * RANDOM_FORTUNA_NPOOLS; + unsigned int size = RANDOM_FORTUNA_DEFPOOLSIZE * RANDOM_FORTUNA_NPOOLS; + void *buf_efi; void *buf; if (argc > 1) { - size = strtol(argv[1], NULL, 0); + size_efi = strtol(argv[1], NULL, 0); + + /* Don't *compress* the entropy we get from EFI. */ + if (size_efi > size) + size = size_efi; + + /* + * If the amount of entropy we get from EFI is less than the + * size of a single Fortuna pool -- i.e. not enough to ensure + * that Fortuna is safely seeded -- don't expand it since we + * don't want to trick Fortuna into thinking that it has been + * safely seeded when it has not. + */ + if (size_efi < RANDOM_FORTUNA_DEFPOOLSIZE) + size = size_efi; } status = BS->LocateProtocol(&rng_guid, NULL, (VOID **)&rng); @@ -1267,20 +1286,34 @@ command_seed_entropy(int argc, char *argv[]) return (CMD_ERROR); } + if ((buf_efi = malloc(size_efi)) == NULL) { + free(buf); + command_errmsg = "out of memory"; + return (CMD_ERROR); + } + TSENTER2("rng->GetRNG"); - status = rng->GetRNG(rng, NULL, size, (UINT8 *)buf); + status = rng->GetRNG(rng, NULL, size_efi, (UINT8 *)buf_efi); TSEXIT(); if (status != EFI_SUCCESS) { + free(buf_efi); free(buf); command_errmsg = "GetRNG failed"; return (CMD_ERROR); } + if (size_efi < size) + pkcs5v2_genkey_raw(buf, size, "", 0, buf_efi, size_efi, 1); + else + memcpy(buf, buf_efi, size); if (file_addbuf("efi_rng_seed", "boot_entropy_platform", size, buf) != 0) { + free(buf_efi); free(buf); return (CMD_ERROR); } + explicit_bzero(buf_efi, size_efi); + free(buf_efi); free(buf); return (CMD_OK); } From nobody Sun Sep 29 15:25: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 4XGp1D4Dzjz5XpPQ; Sun, 29 Sep 2024 15:25: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 4XGp1D0xNFz4kvS; Sun, 29 Sep 2024 15:25:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623520; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VD3EVe5gdPFt0z44VP0vU+Hqbb/moGkpQcf/Hdd8Ebc=; b=m7c0cUjAslHV1Fxbu/C44knjawvnY2OX22+teBdjJtJNC7WTLKyMUf1M6vc0QZhtCax2NJ iDWF2J2ugPMt9fsNbN+xV4ErCZVoC0caNSJaYVpLuNGt1LhSiA0L5DvkUD2hzWEQHIb1G8 hhCLZ9+fznq4MvnwCr5CUNkcPfE07ZMqmR98xCCnjEoRA4Q6jKOrI3kGnZZeVzfsrfRnCY sq3TAmkW51IIBXRgYmWG9Atoex/TczEMOWv48RQh+/SZURmENEv9mbp5qobZgCphYoz1jQ vQKxFpcPzOxQUnHUhIbYO+fT1vqOeFzMDgI/ktz4DAF9XNLkfAY6tg0b3/zqug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623520; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VD3EVe5gdPFt0z44VP0vU+Hqbb/moGkpQcf/Hdd8Ebc=; b=Q0GEO+biQ58t069FCfYxnvDlaJmN+kDvYLGOId9loV/tMM81LXtRim1gAJ/lzADGFsO/0W gDHBzIbBOTj/X38SMWZ5akgE2OmNJHK3FJJ+k4md25sojuWgWpJfoROXlXuWGBTMHPlH1g JR0qs1hQnFJl1HSp4zyqa9N5ZchfO9L7SVrRd2vS7Fa6ppGMCBE7jNfYa6csAENMSF1u7x k41Ogt9AV8s0yWpVmiuQ7VjGc41uzqvXihDRHhc6OayngnXTRWpF3fer3Avr7y+2KHjKZz NYTAnCa8OFfdYy97kYfJ+QlRaiyAbXcZcz65IIIuQUYIe4VCbyLF4/fMxdc1bg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623520; a=rsa-sha256; cv=none; b=o7ryuMJQ3LQdLNERcZw/Aneh9NeRJSIbJYs3a7x7ljQowh7Yex9Lqeuo3yQnA2P+D9XbZY wnc5490t6zUKY2g0Y9OSF54Bn4HSVPtA2aob9JW/YblR4zsVWWX8Q6t90NqJhuFVF6Yv0a toJNmFq1BxDH4qB0wCbzkO+od5zvmalzCX2Ef0MHs53ElN6ddOELAwgI5zw+Yl+4HxMgaP zdD4bOfwMz0kHWOcze+a8+XX92vkcPwr+EuUAoJs3aQncWfdBNDZN4/iJqFFCYBb//b0em DkJimJ5bOaGLtjGDvZnzeaUW6GClzBkRCr/rGM9z+EYp+ro6ZEhzdYnm+1VrHA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1D0Pm0z1Cvf; Sun, 29 Sep 2024 15:25: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 48TFPJLf030603; Sun, 29 Sep 2024 15:25:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPJFP030600; Sun, 29 Sep 2024 15:25:19 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:19 GMT Message-Id: <202409291525.48TFPJFP030600@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: 82ade8ed7e70 - stable/14 - EC2: Set entropy_efi_seed_size to 64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 82ade8ed7e70ad99aa5a35b6947de06a2efe3257 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=82ade8ed7e70ad99aa5a35b6947de06a2efe3257 commit 82ade8ed7e70ad99aa5a35b6947de06a2efe3257 Author: Colin Percival AuthorDate: 2024-09-18 11:02:15 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:52 +0000 EC2: Set entropy_efi_seed_size to 64 This dramatically improves boot speeds on Graviton 2 instances. MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46636 (cherry picked from commit 714a6d436819d446e01d1e4741fbe1089a23fe57) --- release/tools/ec2.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index 2cca5fa713af..522aaa400520 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -38,6 +38,10 @@ ec2_common() { echo 'autoboot_delay="-1"' >> ${DESTDIR}/boot/loader.conf echo 'beastie_disable="YES"' >> ${DESTDIR}/boot/loader.conf + # The EFI RNG on Graviton 2 is particularly slow if we ask for the + # default 2048 bytes of entropy; ask for 64 bytes instead. + echo 'entropy_efi_seed_size="64"' >> ${DESTDIR}/boot/loader.conf + # Tell gptboot not to wait 3 seconds for a keypress which will # never arrive. printf -- "-n\n" > ${DESTDIR}/boot.config From nobody Sun Sep 29 15:25: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 4XGp1F3p0Fz5Xp7c; Sun, 29 Sep 2024 15:25: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 4XGp1F1wjvz4ksf; Sun, 29 Sep 2024 15:25:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623521; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2B0kMQ2MXmEG97w5+T25hUTpCBDH/RdfuOa8VLPKm/4=; b=wONyybwC5+yMwjZlxrHf4LjyctyAhbU8OLPKtKmAh/bW/QKVQOQq3M/pYO+PTf6ssgyE3p It7ZsojcDqt8S2IL5duWwNrjeVAGDMf8yGC220w4AG+x155f2Z8525hoA2OAYIRx2izkFk /k/F5W2cao7NtbqeryEd2G2+reYehdiYfU1zTj/NxEVoV3y3VhpfiWD96BS+nszjTwibUB oZMBJVKF7CUUsTVhjJ8LlgBAKB1RCmuhDY5V4wpun7oKgN6vjxhaMztE0qYyd9asMEGCmP FWubp19SOQhFOQksIlEODcSpnb5lz8jHciEUrrex+GkPsjABqdeJtPE4Xi/Vxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727623521; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2B0kMQ2MXmEG97w5+T25hUTpCBDH/RdfuOa8VLPKm/4=; b=qs+yaxzw3s41bosS0rWrpd+DK0mV9Px0ilCEcSAa81lfz2iIlsDtloFqVXtOeu0Kbkmqwu ax8LZSi+WMbdbi8U/EJW4hVXHK6Kdy9qk2sQ09lUWOi1VQfx2iaRLDUfsV7+CQcR/sv47M DpfJTq2HViAMq8jLoxPVIJGun3k8ESdBRLe9pI1WWi3h/BzS/YKZZ5f7BqOCUOHkynqBiW FTf++Dt8LKEbBo/uJVmOwXu8bOjQqymmyQJm1jFFZAtFFi9cfiaMjc8BHdTYwY0YQuRyYE w589sVuyoq6d/5bgJJBtYX9oNx9AAiK3yI86olW0OWBvp8yUfsU5wP/nrVntTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727623521; a=rsa-sha256; cv=none; b=PP340z9EH2YC6owoqTSz/z26omA8qbzg4QvsgokK8PkTpqAJKIFIJlMKvD51O3ODVYT9N3 mkahVNWh9QG7F0WFS3TJrSsM9wK3XLueMhfP7Omj9hWPS8HY1uYD+F65c1cA7M0AAn/ntm ZlyMtHALN6o0gZfPsOl5E9YSnSP+eZ+goPoYPV478S2SrPUUA07k5vPYxmPiQNW9DLUtnH fXk4b4ZRVMBRqVL+QKClqozXLbfATCE6KQeOPdIcoufDoQJvVDt4E3ZrcL/jjOBDjHZdVS 632QXQ/XFK986luKXSPxfE8uf/bZIbGKkQEg4rSZEjoC7Jek7sWlwjZSmQiwWA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGp1F1XydzFDC; Sun, 29 Sep 2024 15:25: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 48TFPL2N030651; Sun, 29 Sep 2024 15:25:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TFPLtE030648; Sun, 29 Sep 2024 15:25:21 GMT (envelope-from git) Date: Sun, 29 Sep 2024 15:25:21 GMT Message-Id: <202409291525.48TFPLtE030648@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: a651978fc40c - stable/14 - loader: Load platform entropy even without menu List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a651978fc40c97b8b9538d64bf0adaedccbb2727 Auto-Submitted: auto-generated The branch stable/14 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a651978fc40c97b8b9538d64bf0adaedccbb2727 commit a651978fc40c97b8b9538d64bf0adaedccbb2727 Author: Colin Percival AuthorDate: 2024-09-18 11:02:20 +0000 Commit: Colin Percival CommitDate: 2024-09-29 15:24:53 +0000 loader: Load platform entropy even without menu In 5c73b3e0a3db calls to core.loadEntropy were added to core.boot and core.autoboot; but neither of those is invoked if we disable the "beastie" menu. Add a core.loadEntropy call to the no-menu path. Reviewed by: imp MFC after: 1 week Sponsored by: Amazon Fixes: 5c73b3e0a3db ("Add support for getting early entropy from UEFI") Differential Revision: https://reviews.freebsd.org/D46637 (cherry picked from commit 74a28cf6e7f66c7c12fd25ee8231eeedf756bf08) --- stand/lua/loader.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stand/lua/loader.lua b/stand/lua/loader.lua index 454cd7e6332f..0874239db587 100644 --- a/stand/lua/loader.lua +++ b/stand/lua/loader.lua @@ -54,4 +54,6 @@ if not core.isMenuSkipped() then else -- Load kernel/modules before we go config.loadelf() + -- Load platform entropy if possible + core.loadEntropy() end From nobody Sun Sep 29 19:25: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 4XGvLX73Vlz5X5X1; Sun, 29 Sep 2024 19:25: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 4XGvLX6V1Jz4Kpp; Sun, 29 Sep 2024 19:25:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727637940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=12aeIUt7+EtU6AGnXzgwIgK1mFzWK4ayzB1NYWTUqts=; b=c/vOfErfIICnNcp7AVPfBq2zuyPvw+slYZP/ozN9EqJyM/lG4I9zNSzOIhr4wBKxh9JUOt 06I5TSrBT2hGGta1mVFooadNNXuxockzwhhyhQZ7/r3k9/PiiclFxWz62b78zL5zgSs6ra LhIfzJ3sC+Lj0TCOf3rR6o+aTPiwH5/sHnHJ/A43TO/hpqVRc1bQuvcQLlixfNQ4Ufq2bP eTrWidg/hv1Qp20wIuwTEkl3gp5pdsbOqt2t03rWQWf9x/IvcxvN3Wu1fSPyL3phyPpJAM JEXUFw+BXYmG5VIO6/aXtR4nBGyNT7NeQpOLvoqnNdSuXJT2CwUGyEtI2tsfiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727637940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=12aeIUt7+EtU6AGnXzgwIgK1mFzWK4ayzB1NYWTUqts=; b=g1VOOQ1QSF/jGTKTo/OidjAjVSwSBKvMiUqu4zH9vCWArAaS1RJkGffucmGtGoTa/x/sc7 9bNs4DYz9clpDqjdubQ/GH8q9JDNKewoqPViOAQ9C2WENWo1N8GS6aouQdo5QkKNMdND5Q nd2W33hjHQ51I5DzuV9cpEvUYZ1IjH6Tmw+9y1q0+rND2t3KUvu4Hocn45gL/1uFvuTnh3 q05KMFI/C4cIMZYqy68tj/oRKZ2lXu+h1gbxhxZ3zi/PWJJvfBGtihpkfDX0Xyk7xAMcS3 ApWEI66TgVkse0pgsE1T+IaiXfEQhZoU3RfD8BkvpR/OedMWHsfXxDfACFM7uA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727637940; a=rsa-sha256; cv=none; b=IrrYyiUKHwYmZpa/lDKXaRSVzj24ortY5Joei5M5Cs9jruSyoWQ6oha4G85/OOOruLwXB4 ln8XfVLqcd4SF4S/lmGdg+Qety4Mz6ywvo7J1ijwIAWtgtY0/G6MIvQyacQcjSSC5yYb/x lrXRePAtT4Vx7nCaLP+T83D06AJKlHFvWoRcKaTs/7rTGVUYdrAysZ3RWifBBeWH3KnR8f /gVU317HWxSB0Ba5F7nNjDeXLcJmMhTwhGbGucA//wEFE4MpCuTkC3ScqEhwD7YsqggaYN fM5vO0TKayCrtwArhFTTWrVfs4enJoG9qYjLTkw1NEwhbR93RcsGRVQIzMddXQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGvLX5z08zLmb; Sun, 29 Sep 2024 19:25: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 48TJPeI1037852; Sun, 29 Sep 2024 19:25:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TJPe5m037849; Sun, 29 Sep 2024 19:25:40 GMT (envelope-from git) Date: Sun, 29 Sep 2024 19:25:40 GMT Message-Id: <202409291925.48TJPe5m037849@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: b26edf615c91 - stable/13 - libpfctl: ensure we return useful error codes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: b26edf615c91768fe88bee98d70b55c8bf68fef1 Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=b26edf615c91768fe88bee98d70b55c8bf68fef1 commit b26edf615c91768fe88bee98d70b55c8bf68fef1 Author: Kristof Provost AuthorDate: 2024-09-20 09:36:22 +0000 Commit: Kristof Provost CommitDate: 2024-09-29 18:29:44 +0000 libpfctl: ensure we return useful error codes Return errno rather than -1 on error. This allows pfctl to report much more useful errors. Reported by: Alexander Leidinger MFC after: 1 week (cherry picked from commit 93e96359c980ccf318fe089b30b863f7c910b622) --- lib/libpfctl/libpfctl.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/lib/libpfctl/libpfctl.c b/lib/libpfctl/libpfctl.c index f5ddbba79bfd..ddad467c3644 100644 --- a/lib/libpfctl/libpfctl.c +++ b/lib/libpfctl/libpfctl.c @@ -1035,8 +1035,12 @@ pfctl_clear_rules(int dev, const char *anchorname) ret = ioctl(dev, DIOCXBEGIN, &trans); if (ret != 0) - return (ret); - return ioctl(dev, DIOCXCOMMIT, &trans); + return (errno); + ret = ioctl(dev, DIOCXCOMMIT, &trans); + if (ret != 0) + return (errno); + + return (0); } int @@ -1070,8 +1074,12 @@ pfctl_clear_nat(int dev, const char *anchorname) ret = ioctl(dev, DIOCXBEGIN, &trans); if (ret != 0) - return (ret); - return ioctl(dev, DIOCXCOMMIT, &trans); + return (errno); + ret = ioctl(dev, DIOCXCOMMIT, &trans); + if (ret != 0) + return (errno); + + return (0); } static int @@ -1117,7 +1125,10 @@ pfctl_set_syncookies(int dev, const struct pfctl_syncookies *s) ret = ioctl(dev, DIOCSETSYNCOOKIES, &nv); free(nv.data); - return (ret); + if (ret != 0) + return (errno); + + return (0); } int @@ -1225,7 +1236,7 @@ pfctl_table_set_addrs(int dev, struct pfr_table *tbl, struct pfr_addr io.pfrio_size = size; io.pfrio_size2 = (size2 != NULL) ? *size2 : 0; if (ioctl(dev, DIOCRSETADDRS, &io)) - return (-1); + return (errno); if (nadd != NULL) *nadd = io.pfrio_nadd; if (ndel != NULL) @@ -1253,7 +1264,7 @@ int pfctl_table_get_addrs(int dev, struct pfr_table *tbl, struct pfr_addr *addr, io.pfrio_esize = sizeof(*addr); io.pfrio_size = *size; if (ioctl(dev, DIOCRGETADDRS, &io)) - return (-1); + return (errno); *size = io.pfrio_size; return (0); } From nobody Sun Sep 29 19:25: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 4XGvLY4R99z5X5kY; Sun, 29 Sep 2024 19:25: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 4XGvLY3rrGz4LB6; Sun, 29 Sep 2024 19:25:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727637941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dbC+Xs9Z8V46ygccKzZX3Q0+hJ7VkaS7uTqxCfE2ECY=; b=xnpD5Qg4d4qmxxjmgnOObI91UpSTIr8BnCu/HBAqbcIjkqUNcTzgQ3GKxO5Y2kEC8A7sKw A9b5dJ2aSXcSOvTZLOqeiFqyit6iY3QHPFopPYiInkSB3eiaK6cjfmzgFkuj7fKU2WFXQw gjX/FlxXdh/QOyApNZgqYN7XS4y3Q+sQtwi+d1P3nIqim+hKHSc1ZHJZO9atjlv9p50/zn gW4Q+KORobRdYodKWmpQf8ew9Hy9o0GfKPq3gzFo9kgDu6f5zA4B6GpqCJN/5UyKtZKon0 FHyB9V3awWkdQ/fk2trIUnsqaHweukvXDNuZexvpZQcXGYZFODDlzp5ritGF9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727637941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dbC+Xs9Z8V46ygccKzZX3Q0+hJ7VkaS7uTqxCfE2ECY=; b=iSCu4DK8IrCPBp1Ek+j8as77Euz9+PORKvOlxFAqqHUXE5+Gh7gWStcXRLD0675S5zhfDB FOrKtr9lFEJQuFx+g8eYqAORUi222KzHDPDu1d6kRFV0I7Nm9QA914cI0lXO3wccBaj3A5 LDN39a3lmYqH+FJA+0FE+lhmZOQQ1o8qYUIknsHqazGAWKXc5gmKseN6zXqoPBSZwTTnTx NgxD/P8+I1/joZw51cjgrL21ZlRTPPGFjyUN3XbTP3/Vx0+U3r8Lt4XBIyRneE/T7CZZQM i8HZgPzBfbKEmzh5N9upam0g9DLTWMRWNeeCKGYETXmjAN2vfBDTLKpNGX5sEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727637941; a=rsa-sha256; cv=none; b=Qw5s3dJFFyP5Mv6naa3NdZv0sEbxJf/YjN/Xsb/0I8ypx55TpGE0XBN96FcCh/GCXMdrUx B2sND+U2tHsNFueKpWybBCPbd9dUd4G6IpVBnBUT78hPbDSPqKA9Uu6sHMIr1JqiVVVobu lzVv1TmniGE4TPZxsaXATAjrdIlwJ1viEdXtiMUZkPkjVlTZEyEkdYO2Wfwh+OlgFFsLVU Vi515w+N/1A84sueLBMAHAPyhVGv7YzEVJiFRGuC/3y6BRZoWnOGlwg5DtNZZhX/HnJr0U Ugy7YO9qsg+QjiT71deABNWfeFdQW0yETrxMnSPVuSgJHpU2ptgwFdzdvJXepA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGvLY3SFSzMHD; Sun, 29 Sep 2024 19:25: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 48TJPfBp037956; Sun, 29 Sep 2024 19:25:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TJPfWG037953; Sun, 29 Sep 2024 19:25:41 GMT (envelope-from git) Date: Sun, 29 Sep 2024 19:25:41 GMT Message-Id: <202409291925.48TJPfWG037953@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: e3a9f4123f76 - stable/14 - libpfctl: ensure we return useful error codes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: e3a9f4123f76205d0b85715f3f60aa1d9dc02887 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=e3a9f4123f76205d0b85715f3f60aa1d9dc02887 commit e3a9f4123f76205d0b85715f3f60aa1d9dc02887 Author: Kristof Provost AuthorDate: 2024-09-20 09:36:22 +0000 Commit: Kristof Provost CommitDate: 2024-09-29 18:29:50 +0000 libpfctl: ensure we return useful error codes Return errno rather than -1 on error. This allows pfctl to report much more useful errors. Reported by: Alexander Leidinger MFC after: 1 week (cherry picked from commit 93e96359c980ccf318fe089b30b863f7c910b622) --- lib/libpfctl/libpfctl.c | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/lib/libpfctl/libpfctl.c b/lib/libpfctl/libpfctl.c index 7dc375717acc..d2e23ea2496e 100644 --- a/lib/libpfctl/libpfctl.c +++ b/lib/libpfctl/libpfctl.c @@ -1337,8 +1337,12 @@ pfctl_clear_rules(int dev, const char *anchorname) ret = ioctl(dev, DIOCXBEGIN, &trans); if (ret != 0) - return (ret); - return ioctl(dev, DIOCXCOMMIT, &trans); + return (errno); + ret = ioctl(dev, DIOCXCOMMIT, &trans); + if (ret != 0) + return (errno); + + return (0); } int @@ -1372,9 +1376,14 @@ pfctl_clear_nat(int dev, const char *anchorname) ret = ioctl(dev, DIOCXBEGIN, &trans); if (ret != 0) - return (ret); - return ioctl(dev, DIOCXCOMMIT, &trans); + return (errno); + ret = ioctl(dev, DIOCXCOMMIT, &trans); + if (ret != 0) + return (errno); + + return (0); } + int pfctl_clear_eth_rules(int dev, const char *anchorname) { @@ -1396,8 +1405,12 @@ pfctl_clear_eth_rules(int dev, const char *anchorname) ret = ioctl(dev, DIOCXBEGIN, &trans); if (ret != 0) - return (ret); - return ioctl(dev, DIOCXCOMMIT, &trans); + return (errno); + ret = ioctl(dev, DIOCXCOMMIT, &trans); + if (ret != 0) + return (errno); + + return (0); } static int @@ -1451,7 +1464,10 @@ pfctl_set_syncookies(int dev, const struct pfctl_syncookies *s) ret = ioctl(dev, DIOCSETSYNCOOKIES, &nv); free(nv.data); - return (ret); + if (ret != 0) + return (errno); + + return (0); } int @@ -1559,7 +1575,7 @@ pfctl_table_set_addrs(int dev, struct pfr_table *tbl, struct pfr_addr io.pfrio_size = size; io.pfrio_size2 = (size2 != NULL) ? *size2 : 0; if (ioctl(dev, DIOCRSETADDRS, &io)) - return (-1); + return (errno); if (nadd != NULL) *nadd = io.pfrio_nadd; if (ndel != NULL) @@ -1587,7 +1603,7 @@ int pfctl_table_get_addrs(int dev, struct pfr_table *tbl, struct pfr_addr *addr, io.pfrio_esize = sizeof(*addr); io.pfrio_size = *size; if (ioctl(dev, DIOCRGETADDRS, &io)) - return (-1); + return (errno); *size = io.pfrio_size; return (0); } From nobody Sun Sep 29 22:37: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 4XGzbq11Y2z5XK6s; Sun, 29 Sep 2024 22:37: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 4XGzbp74wyz4gWX; Sun, 29 Sep 2024 22:37:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727649447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=efmfeMs0krmne+JSXirEoI+y7jZ544ay+iTlf+h0A54=; b=WWSXG0dFtQnM/j0OEoXemwGdDBDh13XABtVLRoONppfFMS+0jBNbsy2Em7mFp2P02twLp4 yV3eePhibpG83Mv3zwflI1M2054Ci8hI7Xv2rWPXUnxuWdHepLMvBkLXdKwn/NipQDVr7H Q7CO2HhAF78cMYclruP3HalxDzsXLMCKm2kSYtUkk6qyARueLcfgbC1RU6vTvlJP00ngJU B5h1OxOZW0grpL53U8ZCOCx8LSr26L2SXbHtK1WXpKFSd65LiRb5W+yPJ6jXGfLRwTWtRb pxUvg+IBOerJHc6dupIzTn1ks+tkRid1BDgJ8948HSJves4p4ASGxTG44cSNQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727649447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=efmfeMs0krmne+JSXirEoI+y7jZ544ay+iTlf+h0A54=; b=X1Ab6P/kCOHOVVrHdSM+oEQWwdjznN9GR4/OlPlfi82AAenHZZmRXuM9BZu7MgytM8h7ji UzWYfZdLXfdwnApPx2h50uzREVUt9MVeEH6tZZ8NhoC+KWKHGrcK+g+nNAJPtSr/bh8EHS II0KOk9Qo4IPJnnHbN2JlQiBN5mFNLTMaiVpapCi2QT5R6pmMNge5bewbatj9nm7njkCGw 1aG05NKzC5ay/+dICqduSauom6zdFcqbKfnCiVkd+b28OuD68iZG5x4vTiVaAPj54YkxrT YOgMgVuOiQRcCJ+6K7P3G/YauhvmjOC+6vh37HPz90TWA3wD0k2OTogbAz1PRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727649447; a=rsa-sha256; cv=none; b=HFBMx5YsufjRV1rslyrYV+pv9fLVugt3arpELLjSWlboq4kR0QsCT3DLf1P0++OTjzs90R nD8bXXJ6YVvD8My2KwsLnR/FVXETrQSDVe6KJnMHYvu3y2bVMjx3w0eOdElKKXLrHoaPXg w8DxrLN8m9K/aooKNzspkWV+rWKIg4noy8ty3ehMKqexs48w3NwFhqzujktafDR7WFBu5I iT6y7k9XdoqGwCTbezb4LAV+TY3q070fRuBS4ve26Sjh9Eh0QEavc1UEIoSTxfWtoiRD1U WqMgpIiE/SZAjWW/vUpB6QMsdtS0wpt3+/HCu+8d7mjTzZ7y0bSJLisk3bcDXw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XGzbp6gpXzRsD; Sun, 29 Sep 2024 22:37: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 48TMbQ9b059112; Sun, 29 Sep 2024 22:37:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48TMbQ2x059109; Sun, 29 Sep 2024 22:37:26 GMT (envelope-from git) Date: Sun, 29 Sep 2024 22:37:26 GMT Message-Id: <202409292237.48TMbQ2x059109@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: 99d3ce80ba07 - stable/14 - linuxulator: ignore AT_NO_AUTOMOUNT for all stat variants List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-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: 99d3ce80ba07e751226a7ff07afc51ad2d79ccce Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=99d3ce80ba07e751226a7ff07afc51ad2d79ccce commit 99d3ce80ba07e751226a7ff07afc51ad2d79ccce Author: Ed Maste AuthorDate: 2024-09-19 21:11:19 +0000 Commit: Ed Maste CommitDate: 2024-09-29 22:37:02 +0000 linuxulator: ignore AT_NO_AUTOMOUNT for all stat variants Commit ff39d74aa99a ignored AT_NO_AUTOMOUNT for statx(), but did not change fstat64() or newfstatat(), which also take an equivalent flags argument. Add a linux_to_bsd_stat_flags() helper and use it in all three places. PR: 281526 Reviewed by: trasz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46711 (cherry picked from commit 3cf834d069d1dcdbe464ea74624930eaf916715d) --- sys/compat/linux/linux_stats.c | 65 +++++++++++++++++++++++------------------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c index 6c032cc569f8..03783d466211 100644 --- a/sys/compat/linux/linux_stats.c +++ b/sys/compat/linux/linux_stats.c @@ -485,6 +485,31 @@ linux_ustat(struct thread *td, struct linux_ustat_args *args) } #endif +/* + * Convert Linux stat flags to BSD flags. Return value indicates successful + * conversion (no unknown flags). + */ +static bool +linux_to_bsd_stat_flags(int linux_flags, int *out_flags) +{ + int flags, unsupported; + + unsupported = linux_flags & ~(LINUX_AT_SYMLINK_NOFOLLOW | + LINUX_AT_EMPTY_PATH | LINUX_AT_NO_AUTOMOUNT); + if (unsupported != 0) { + *out_flags = unsupported; + return (false); + } + + flags = 0; + if (linux_flags & LINUX_AT_SYMLINK_NOFOLLOW) + flags |= AT_SYMLINK_NOFOLLOW; + if (linux_flags & LINUX_AT_EMPTY_PATH) + flags |= AT_EMPTY_PATH; + *out_flags = flags; + return (true); +} + #if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32)) static int @@ -561,21 +586,16 @@ linux_fstat64(struct thread *td, struct linux_fstat64_args *args) int linux_fstatat64(struct thread *td, struct linux_fstatat64_args *args) { - int error, dfd, flag, unsupported; + int error, dfd, flags; struct stat buf; - unsupported = args->flag & ~(LINUX_AT_SYMLINK_NOFOLLOW | LINUX_AT_EMPTY_PATH); - if (unsupported != 0) { - linux_msg(td, "fstatat64 unsupported flag 0x%x", unsupported); + if (!linux_to_bsd_stat_flags(args->flag, &flags)) { + linux_msg(td, "fstatat64 unsupported flags 0x%x", flags); return (EINVAL); } - flag = (args->flag & LINUX_AT_SYMLINK_NOFOLLOW) ? - AT_SYMLINK_NOFOLLOW : 0; - flag |= (args->flag & LINUX_AT_EMPTY_PATH) ? - AT_EMPTY_PATH : 0; dfd = (args->dfd == LINUX_AT_FDCWD) ? AT_FDCWD : args->dfd; - error = linux_kern_statat(td, flag, dfd, args->pathname, + error = linux_kern_statat(td, flags, dfd, args->pathname, UIO_USERSPACE, &buf); if (error == 0) error = stat64_copyout(&buf, args->statbuf); @@ -588,22 +608,16 @@ linux_fstatat64(struct thread *td, struct linux_fstatat64_args *args) int linux_newfstatat(struct thread *td, struct linux_newfstatat_args *args) { - int error, dfd, flag, unsupported; + int error, dfd, flags; struct stat buf; - unsupported = args->flag & ~(LINUX_AT_SYMLINK_NOFOLLOW | LINUX_AT_EMPTY_PATH); - if (unsupported != 0) { - linux_msg(td, "fstatat unsupported flag 0x%x", unsupported); + if (!linux_to_bsd_stat_flags(args->flag, &flags)) { + linux_msg(td, "fstatat unsupported flags 0x%x", flags); return (EINVAL); } - flag = (args->flag & LINUX_AT_SYMLINK_NOFOLLOW) ? - AT_SYMLINK_NOFOLLOW : 0; - flag |= (args->flag & LINUX_AT_EMPTY_PATH) ? - AT_EMPTY_PATH : 0; - dfd = (args->dfd == LINUX_AT_FDCWD) ? AT_FDCWD : args->dfd; - error = linux_kern_statat(td, flag, dfd, args->pathname, + error = linux_kern_statat(td, flags, dfd, args->pathname, UIO_USERSPACE, &buf); if (error == 0) error = newstat_copyout(&buf, args->statbuf); @@ -688,21 +702,14 @@ statx_copyout(struct stat *buf, void *ubuf) int linux_statx(struct thread *td, struct linux_statx_args *args) { - int error, dirfd, flags, unsupported; + int error, dirfd, flags; struct stat buf; - unsupported = args->flags & ~(LINUX_AT_SYMLINK_NOFOLLOW | - LINUX_AT_EMPTY_PATH | LINUX_AT_NO_AUTOMOUNT); - if (unsupported != 0) { - linux_msg(td, "statx unsupported flags 0x%x", unsupported); + if (!linux_to_bsd_stat_flags(args->flags, &flags)) { + linux_msg(td, "statx unsupported flags 0x%x", flags); return (EINVAL); } - flags = (args->flags & LINUX_AT_SYMLINK_NOFOLLOW) ? - AT_SYMLINK_NOFOLLOW : 0; - flags |= (args->flags & LINUX_AT_EMPTY_PATH) ? - AT_EMPTY_PATH : 0; - dirfd = (args->dirfd == LINUX_AT_FDCWD) ? AT_FDCWD : args->dirfd; error = linux_kern_statat(td, flags, dirfd, args->pathname, UIO_USERSPACE, &buf);