Re: [PATCH] net: usb: cdc_ether: add quirk for AMI BMC stale link events

From: patchwork-bot+netdevbpf

Date: Wed Aug 05 2026 - 21:26:24 EST


Hello:

This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@xxxxxxxxxx>:

On Thu, 30 Jul 2026 13:13:41 +0800 you wrote:
> On AMD Genoa/Turin platforms the BMC-provided USB-Ethernet gadget
> (American Megatrends, VID 0x046b PID 0xffb0) intermittently fails to
> respond to ARP after AC cold boot. usbmon captures a stale
> NETWORK_CONNECTION(off) immediately followed by
> NETWORK_CONNECTION(on) on the interrupt endpoint (~130us apart)
> after enumeration. Because alloc_netdev() leaves
> __LINK_STATE_NOCARRIER cleared, netif_carrier_ok() returns true
> when the spurious OFF arrives, so usbnet_cdc_status() cannot
> recognise it as redundant and schedules EVENT_LINK_CHANGE.
> __handle_link_change() then calls unlink_urbs(), killing ~60 rx
> URBs whose payload has already been DMA'd into memory — xHCI trace
> confirms them completing as -ECONNRESET with non-zero residual
> length. rx_complete() drops these unconditionally. The following
> ON restores the carrier and re-submits URBs, but the ARP reply is
> already lost; the interface looks "up but silent" until ifdown/ifup.
>
> [...]

Here is the summary with links:
- net: usb: cdc_ether: add quirk for AMI BMC stale link events
https://git.kernel.org/netdev/net-next/c/089ca284afb0

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html