From nobody Mon Aug 24 00:58:37 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 4hSswt4hHtz6q2YQ for ; Mon, 24 Aug 2026 00:58: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hSswt0kn1z461y for ; Mon, 24 Aug 2026 00:58:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787533118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L8ecL8TwPmgIfP5h0n4iqxVizKX6YwLuTGz06T0TbMI=; b=ObmX2z87FuCzj9fvIv89Gi3Zj4m5Y172kPflvnWqsR3E2M32pmPnMIMBmDHQyhM3z9iuba bUZEXFY5JoXfNXK5ek5PqzISZ98E0h3GHlkQo1WuOH2U2VPw3BhHVhXmjbDXzilSjIp4Tp 3/Oqe+GyL2TwssCzFPqF627XTiQgzr9YZSV7rVBKfARrYwASxg+3WKM4srpFRw+dVAxDaY l8g0feZw3MPn+7lK/a2OQhnOYPd5RNT+s21yQBn72aZBuDoSObdYYu/ONS4J9ZpJCbwsHO 1Lsm21V8mp6fO2pC0O3aELBf8WU68q3sMCGJ1+AYYMOXHwFb131WzHU04DvWeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787533118; a=rsa-sha256; cv=none; b=XHryr7n6FSCrnKrmABSeHvkKjfWDyYqZebQDkKo0bDSWPORLmtyYNlRRRtcS6DH2qj3zle ZXkBQcpJGSITlS/qeEyoXWsHM8LRDZvwIUuSRwEYhjNOqH85JQAVzUhhI/B0CaFM+qNKRY 5m7oTtdoVwXlkHqzR8zWi4O55znSS1BZHHM1WwRMXsVMx0TgnuuAliURZcM9q1PTzv1IXT b0PTSIL7UoAM7wbC89gGisde4d7GyLop7tk51pmdY8TZNn9fVZUyXpBSuT+FuBxYapHbnc 4GwlxfiARvgVCJ/uRh/NzMr7G0tRvEiPPOYsi39uY6Z1i/9I/zuCWOsNG62ikw== 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=1787533118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L8ecL8TwPmgIfP5h0n4iqxVizKX6YwLuTGz06T0TbMI=; b=s/UHx+zuRrsSapSlSUxWhWFJCGGD8D2k6y3px93gYZvCSONZ3SRpwPQpDeq2oSUcGBhEzn 6SCZKFT8D7tKFhimHxdAQjIASdvK7FGWXDBIWWppHuOzHgP4w+c1FZKPdDHB5w/6D9qDWP DBGw5J26J3sYAqYOYmliGBC2ngK9Dc0k2hu8s/caq12fhhfyoU4jL8kOovVES6BpPyTyx0 GEBlVCIaMZJ1ymbUtCoWuBsqjnLuuOtgiQQNeMB748xY3Tob0wFVINBq8Z+WtGsieqm68J 8BUj5WOoFAU0kDepxiMgivPJF03qmVY5YF0gBjXa0A0RBgkcMV6eu+OzJQYI2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hSsws6WnMzjLg for ; Mon, 24 Aug 2026 00:58:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32252 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 24 Aug 2026 00:58:37 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: d1e26c2153c9 - stable/14 - ice: Report initialization failures to iflib 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: d1e26c2153c9c149c4e8124558110b1fd0a0664d Auto-Submitted: auto-generated Date: Mon, 24 Aug 2026 00:58:37 +0000 Message-Id: <6a8b973d.32252.4b00f20a@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=d1e26c2153c9c149c4e8124558110b1fd0a0664d commit d1e26c2153c9c149c4e8124558110b1fd0a0664d Author: Kevin Bowling AuthorDate: 2026-08-09 09:38:21 +0000 Commit: Kevin Bowling CommitDate: 2026-08-24 00:55:53 +0000 ice: Report initialization failures to iflib The primary and mirror-VSI ifdi_init callbacks can return early when reset state or hardware queue and filter setup prevents initialization. Iflib then marks the interface running and enables interrupts although the driver did not finish bringing it up. Report each non-detach failure through iflib_init_failed(). Keep the existing ice reset and subinterface-reinitialization machinery responsible for scheduling recovery. (cherry picked from commit dcdc00a41d3e4be0e75eb625cd3a23d5a927ed15) --- sys/dev/ice/if_ice_iflib.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/sys/dev/ice/if_ice_iflib.c b/sys/dev/ice/if_ice_iflib.c index a844df9d5a4a..2c06aa1020e5 100644 --- a/sys/dev/ice/if_ice_iflib.c +++ b/sys/dev/ice/if_ice_iflib.c @@ -2043,16 +2043,16 @@ ice_if_init(if_ctx_t ctx) return; if (ice_test_state(&sc->state, ICE_STATE_RECOVERY_MODE)) - return; + goto err_init_failed; if (ice_test_state(&sc->state, ICE_STATE_RESET_FAILED)) { device_printf(sc->dev, "request to start interface cannot be completed as the device failed to reset\n"); - return; + goto err_init_failed; } if (ice_test_state(&sc->state, ICE_STATE_PREPARED_FOR_RESET)) { device_printf(sc->dev, "request to start interface while device is prepared for impending reset\n"); - return; + goto err_init_failed; } ice_update_rx_mbuf_sz(sc); @@ -2063,7 +2063,7 @@ ice_if_init(if_ctx_t ctx) device_printf(dev, "LAA address change failed, err %s\n", ice_err_str(err)); - return; + goto err_init_failed; } /* Initialize software Tx tracking values */ @@ -2074,7 +2074,7 @@ ice_if_init(if_ctx_t ctx) device_printf(dev, "Unable to configure the main VSI for Tx: %s\n", ice_err_str(err)); - return; + goto err_init_failed; } err = ice_cfg_vsi_for_rx(&sc->pf_vsi); @@ -2131,6 +2131,8 @@ err_stop_rx: ice_control_all_rx_queues(&sc->pf_vsi, false); err_cleanup_tx: ice_vsi_disable_tx(&sc->pf_vsi); +err_init_failed: + iflib_init_failed(ctx); } /** @@ -4274,20 +4276,20 @@ ice_subif_if_init(if_ctx_t ctx) return; if (ice_test_state(&sc->state, ICE_STATE_RECOVERY_MODE)) - return; + goto err_init_failed; if (ice_test_state(&sc->state, ICE_STATE_RESET_FAILED)) { device_printf(dev, "request to start interface cannot be completed as the parent device %s failed to reset\n", device_get_nameunit(sc->dev)); - return; + goto err_init_failed; } if (ice_test_state(&sc->state, ICE_STATE_PREPARED_FOR_RESET)) { device_printf(dev, "request to start interface cannot be completed while parent device %s is prepared for impending reset\n", device_get_nameunit(sc->dev)); - return; + goto err_init_failed; } /* XXX: Equiv to ice_update_rx_mbuf_sz */ @@ -4301,7 +4303,7 @@ ice_subif_if_init(if_ctx_t ctx) device_printf(dev, "Unable to configure subif VSI for Tx: %s\n", ice_err_str(err)); - return; + goto err_init_failed; } err = ice_cfg_vsi_for_rx(vsi); @@ -4328,6 +4330,8 @@ ice_subif_if_init(if_ctx_t ctx) err_cleanup_tx: ice_vsi_disable_tx(vsi); +err_init_failed: + iflib_init_failed(ctx); } /**