From nobody Tue Aug 25 00:31:44 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 4hTTHP100tz6pN5D for ; Tue, 25 Aug 2026 00:31: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hTTHN4xRJz49pQ for ; Tue, 25 Aug 2026 00:31:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787617904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B9QHcKXGZ21Chi1UsrETORRwEAlqR7hsGlTljGfCgkQ=; b=FnCX8bKEPHtBw+42ppAhN0bX+9Yvi1rp9AmnyXfyKP8RIi4hsCmpFCvOUBxhyUNX4x1rkV Uca21Wkw8d+65SA7ASxAzq3T1mWgorh2SI5t+OzwpQjyu4fZ9tMTIhQTd5wDUxmDC7K1En g9hUpdMAvaCwmkGkzkd5DjNX1we6nffIDxZw2rx1H/SawxPAXp81qC9gvadstZrHF9uwGy /72FfCWMC2rFDTOf7HOT4blafuUPmsitvqGn0oNNWsiXLgkum3MQlkR10y4kQn1DW1DtZz TdNBpp/4lMpElOzAk0p4tCux6iykqVKJOZb87BaobC0laYN8SCChMBJZnwGRzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787617904; a=rsa-sha256; cv=none; b=J+BAJvOrwW2WttQMotZmi4PrrPs8WVZXXhmJVrFP8/65tKmCXetX+vWoEPOuk6sZ1n+noF dX2IMUmqmEGIGW/dXiq/6I0XAm+KW+UvkJyJLfYCUbNohjwUJpnxU10LbXFUybkay5xMH6 bUYudlBWEqFGo7LKJvSRmKzBck46abiyaWBm+cAHvUA3DIJbyPGqi0JvhTTz3tZa0hamjR I4VyScerh5Apb+6rhYyhXx1cfOcHzigdvW6xEr6EfM50W5NhZNkm3/QKoFovC+vCeKu7TT OlZ08jfxJsbW3ODFQkkKG6DWXXs/5K818qROOx0mkvNroXiANQoYwPQzleFhUw== 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=1787617904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B9QHcKXGZ21Chi1UsrETORRwEAlqR7hsGlTljGfCgkQ=; b=g5jiGWcAEbLNzk1o1uvo/sBT6byUrZz+lX7JKRmXQt6ylheYPYb5rf3WZERQnkqd4tNC0E cfhjxAgc7ipmHjk4mihIT8rO4R4Cr+asmFp1Tox856ghfrasGedXX9Ui29UdfZpjyIHyiM 2GS4wARSWl/aXlgkChhggMlgjCTwPpGwCGEDuU35ZSPHK03kyM88da3R5T+KXCc2iMr44N hnry1EF7rzxe8a7VyqIiTGYUcncn8QG/jwDFmgdRT1uWAzbiVNLw4HrqjRhQ18mVIW5MkE 0JqWpbquvp+4O4ZD7+9PTIIsdnOQ97PodatAAjmj71yxZNFEfeGlgc/HORuxDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hTTHN3hlfzC0C for ; Tue, 25 Aug 2026 00:31:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f93d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 25 Aug 2026 00:31:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 2c545fcf56db - stable/15 - 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/15 X-Git-Reftype: branch X-Git-Commit: 2c545fcf56dbacec8597fae9b59b2fc5e3ccb3cd Auto-Submitted: auto-generated Date: Tue, 25 Aug 2026 00:31:44 +0000 Message-Id: <6a8ce270.3f93d.3d2721d1@gitrepo.freebsd.org> The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2c545fcf56dbacec8597fae9b59b2fc5e3ccb3cd commit 2c545fcf56dbacec8597fae9b59b2fc5e3ccb3cd Author: Kevin Bowling AuthorDate: 2026-08-11 19:34:29 +0000 Commit: Kevin Bowling CommitDate: 2026-08-25 00:29:16 +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);