The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=d7f7fb0dacf2fe05b1a6d5184d86422bb1395281
commit d7f7fb0dacf2fe05b1a6d5184d86422bb1395281 Author: Kevin Bowling <[email protected]> AuthorDate: 2026-08-16 06:58:18 +0000 Commit: Kevin Bowling <[email protected]> CommitDate: 2026-08-30 01:28:03 +0000 igb: Reinitialize through iflib after media changes A media change can require a complete controller reset. Resetting the controller directly from the admin task leaves iflib rings, filters, and interface state programmed for the pre-reset controller. Request an iflib reset for every media change. This already was done when SR-IOV was active; use the same lifecycle for the ordinary PF case. Sponsored by: BBOX.io (cherry picked from commit 6248e7de9d6c0f14294afc5792170a68de6a3b53) --- sys/dev/e1000/if_em.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 10a2e97a8c02..b1b4fb6f6b1a 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -2992,7 +2992,9 @@ em_if_update_admin_status(if_ctx_t ctx) hw->mac.type >= igb_mac_min) { hw->dev_spec._82575.media_changed = false; sc->flags |= IGB_MEDIA_RESET; - em_reset(ctx); + iflib_request_reset(ctx); + iflib_admin_intr_deferred(ctx); + reset_requested = true; } /* Only do TSO on gigabit for older chips due to errata */ if (hw->mac.type < igb_mac_min)
