From: "Craig I. Hagan" <hagan@amazon.com>
To: Tony Nguyen <anthony.l.nguyen@intel.com>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
"David S . Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
<intel-wired-lan@lists.osuosl.org>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <stable@vger.kernel.org>,
Fabio Sabai <sabfabio@amazon.com>,
Matt Vollrath <tactii@gmail.com>
Subject: [PATCH iwl-net v3] e1000e: restore jumbo config after DMoff exit
Date: Mon, 28 Sep 2026 21:05:52 +0000 [thread overview]
Message-ID: <20260928210552.13266-1-hagan@amazon.com> (raw)
In-Reply-To: <b6db5335-cb5c-4a91-b823-1a114fce75a1@gmail.com>
On an I219 (pch_spt+) at jumbo MTU, after a link partner reset (e.g. a
switch reboot) the interface can come back up unable to pass traffic until
it is manually reset. Observed on I219-LM (8086:15b7) at MTU 9000.
When the MAC exits the DMoff state on link-up, the watchdog resets only
the PHY. A bare PHY reset does not re-run the jumbo-frame workaround
(e1000_lv_jumbo_workaround_ich8lan), so the jumbo configuration is left
unapplied and traffic stalls. This was seen with NIC runtime PM disabled;
if runtime PM were enabled, the device should go through a full reset on
resume, avoiding this issue.
Request a full reset (FLAG_RESTART_NOW) instead of the bare PHY reset when
the MAC exits DMoff, so the normal reset path re-applies the jumbo-frame
configuration.
Fixes: def4ec6dce39 ("e1000e: PCIm function state support")
Cc: stable@vger.kernel.org
Reported-by: Fabio Sabai <sabfabio@amazon.com>
Closes: https://github.com/systemd/systemd/issues/25925
Suggested-by: Matt Vollrath <tactii@gmail.com>
Reviewed-by: Matt Vollrath <tactii@gmail.com>
Tested-by: Matt Vollrath <tactii@gmail.com>
Assisted-by: LLM
Signed-off-by: Craig I. Hagan <hagan@amazon.com>
---
v3: Correct the Fixes: tag to def4ec6dce39 ("e1000e: PCIm function
state support"), which introduced the DMoff-exit bare PHY reset;
2e7256f12cdb only added a pre-condition. This lets stable reach
the affected trees (v5.3+, including 5.4/5.10). Add Reviewed-by/
Tested-by from Matt Vollrath.
v2: Rework per review: request a full reset on DMoff exit so the
jumbo-frame workaround is re-applied (root cause identified by
Matt Vollrath); drop the diagnostic e_info. v1:
https://lore.kernel.org/netdev/20260923235832.473-1-hagan@amazon.com/
drivers/net/ethernet/intel/e1000e/netdev.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
index 844f31ab3..df7da86a8 100644
--- a/drivers/net/ethernet/intel/e1000e/netdev.c
+++ b/drivers/net/ethernet/intel/e1000e/netdev.c
@@ -5264,9 +5264,11 @@ static void e1000_watchdog_task(struct work_struct *work)
usleep_range(10000, 20000);
pcim_state = er32(STATUS);
- /* Checking if MAC exited DMoff state */
- if (!(pcim_state & E1000_STATUS_PCIM_STATE))
- e1000_phy_hw_reset(&adapter->hw);
+ /* MAC exited DMoff; do a full reset. */
+ if (!(pcim_state & E1000_STATUS_PCIM_STATE)) {
+ adapter->flags |= FLAG_RESTART_NOW;
+ goto link_up;
+ }
}
}
--
2.47.3
next prev parent reply other threads:[~2026-09-28 21:05 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-23 23:58 [PATCH iwl-net] e1000e: fix flow control stuck off after link partner reset Craig I. Hagan
2026-09-24 18:07 ` Matt Vollrath
2026-09-26 13:27 ` Craig I. Hagan
2026-09-27 16:26 ` Matt Vollrath
2026-09-28 17:02 ` [PATCH iwl-net v2] e1000e: restore jumbo config after DMoff exit Craig I. Hagan
2026-09-28 19:23 ` Matt Vollrath
2026-09-28 21:05 ` Craig I. Hagan [this message]
2026-09-29 7:05 ` [PATCH iwl-net v3] " Loktionov, Aleksandr
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260928210552.13266-1-hagan@amazon.com \
--to=hagan@amazon.com \
--cc=andrew+netdev@lunn.ch \
--cc=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=przemyslaw.kitszel@intel.com \
--cc=sabfabio@amazon.com \
--cc=stable@vger.kernel.org \
--cc=tactii@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.