From nobody Tue Aug 25 00:42:53 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4hTTXG25yTz6pNkV for ; Tue, 25 Aug 2026 00:42: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hTTXF4LZtz3GDq for ; Tue, 25 Aug 2026 00:42:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787618573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dj1k9Zzn3BbYlf2xI1xZ7kEaKGCoPAQ2pJpGvbuMJl8=; b=luCY9grvVVSOikh5DJEcR2fmb4qIefBULPcyog8X91AAgI1WxpsMDsmkwEhNew6Tvbw5rO UBnewYWvFq13dZRof2dm7KvmtsbLN962IYZF8w+yitKO1NeJYIPhmCPhkFdWhw3n61xN9c wQQTuuoMiahal9j2kKUbcZ4onqYPoYc9OTADWCb7JbFBJ5C4dp2euI2J/5nzkf98NVlRNB +wvdk4dW3W4RNokIsuH1bZ/k+OiDV4wd04VSi/c6pnDtuiGELez2mVY3nl55bm1MAJyOfu bH3XWP5uUznuWwpY73bZtRnMLhJPDLa++ywYujOs4a6pRvd6IcqyCo7HFMJ1pw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787618573; a=rsa-sha256; cv=none; b=tjYElsO4MS8ewiQU6sk/Cdo0UkN6wVy1ZcsGc30jDEn434j/tPjm/it13D6tt6I3Tm8ArX IV91Kk5J6HwR7JhjtgMRibmNbygZ3fEjNwUzCkBuqf6WSPANr8hEpxoqfAQlrHODk9uDmz /fhpX78HOgeytq6sFFNAZULv3eRkAn1MsSK6NrvY+Bz8ISJ1yTVvTh3tdNJYbY5KZI/FoT 55gmNPgjpXRdaieQfr9bfvjBtXkikhMggTnBDnwjUTaGa60y8tGHu/NrhADbz1elw9E2kU JHShx3+xZCo6AGJtdlxsTWC49y3WfgrEjD7eQbUvKqUcrtCH3LANtpKP19VwqQ== 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=1787618573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dj1k9Zzn3BbYlf2xI1xZ7kEaKGCoPAQ2pJpGvbuMJl8=; b=dhzsGrpJyVS9LdKbKnYqsBqPYc72yemGCM/hRuhfyvZPW/mXjj5zWBiCtgSIw4ABGEO/g3 SFoHJ9XVy7da8NgTW/axHwIv2tYTY52DA5L0C3G1z73B+L0BtA4oGQctXMtp3nOSW+WT7D RPo0Msv3HGXw7puT9M3L2Yvk3usab3s42UAkRsAJhuVlz+4n/k2MuiuRktJHQtpzSqGIc7 8CdEuxWrLYbmaMLZZZHCBHvLu9rZQ+JoBhRKc5MMOmuabmjRE2iKc7kDr6vElkemySYtSd to3OVFKXZ69q+Fv7ZXWC2IQiMCCVsTm/vBIzBDZLfhR1UcQRRiZz6kWV8v0Caw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hTTXF2jWLzCWR for ; Tue, 25 Aug 2026 00:42:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 406c7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 25 Aug 2026 00:42:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 56b862b57d92 - stable/14 - igc: Check PHY control register reads List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list 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: 56b862b57d920e5802ec789d25e6f5100822c5ba Auto-Submitted: auto-generated Date: Tue, 25 Aug 2026 00:42:53 +0000 Message-Id: <6a8ce50d.406c7.1410ab40@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=56b862b57d920e5802ec789d25e6f5100822c5ba commit 56b862b57d920e5802ec789d25e6f5100822c5ba Author: Kevin Bowling AuthorDate: 2026-08-11 19:34:29 +0000 Commit: Kevin Bowling CommitDate: 2026-08-25 00:41:00 +0000 igc: Check PHY control register reads Do not modify a zero-initialized PHY control value when its preceding read failed. Leave the PHY unchanged when the void power helpers cannot read its current state. This follows the defensive checks added to the corresponding e1000 helpers. (cherry picked from commit 1121aaa0758baf04bed6f16d4157116b49c25000) --- sys/dev/igc/igc_phy.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/sys/dev/igc/igc_phy.c b/sys/dev/igc/igc_phy.c index 13dac1066f27..24ecefb2c625 100644 --- a/sys/dev/igc/igc_phy.c +++ b/sys/dev/igc/igc_phy.c @@ -906,10 +906,15 @@ s32 igc_phy_hw_reset_generic(struct igc_hw *hw) **/ void igc_power_up_phy_copper(struct igc_hw *hw) { + s32 ret_val; u16 mii_reg = 0; /* The PHY will retain its settings across a power down/up cycle */ - hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); + ret_val = hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); + if (ret_val) { + DEBUGOUT("Error reading PHY control register\n"); + return; + } mii_reg &= ~MII_CR_POWER_DOWN; hw->phy.ops.write_reg(hw, PHY_CONTROL, mii_reg); usec_delay(300); @@ -925,10 +930,15 @@ void igc_power_up_phy_copper(struct igc_hw *hw) **/ void igc_power_down_phy_copper(struct igc_hw *hw) { + s32 ret_val; u16 mii_reg = 0; /* The PHY will retain its settings across a power down/up cycle */ - hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); + ret_val = hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); + if (ret_val) { + DEBUGOUT("Error reading PHY control register\n"); + return; + } mii_reg |= MII_CR_POWER_DOWN; hw->phy.ops.write_reg(hw, PHY_CONTROL, mii_reg); msec_delay(1);