On Wed, Aug 06, 2025 at 07:31:05AM +0700, Ammar Faizi wrote:
The commit referenced in the Fixes tag causes usbnet to malfunction (identified via git bisect). Post-commit, my external RJ45 LAN cable fails to connect. Linus also reported the same issue after pulling that commit.
The code has a logic error: netif_carrier_on() is only called when the link is already on. Fix this by moving the netif_carrier_on() call outside the if-statement entirely. This ensures it is always called when EVENT_LINK_CARRIER_ON is set and properly clears it regardless of the link state.
Cc: stable@vger.kernel.org Cc: Armando Budianto sprite@gnuweeb.org Reviewed-by: Simon Horman horms@kernel.org Suggested-by: Linus Torvalds torvalds@linux-foundation.org Link: https://lore.kernel.org/all/CAHk-=wjqL4uF0MG_c8+xHX1Vv8==sPYQrtzbdA3kzi96284... Closes: https://lore.kernel.org/netdev/CAHk-=wjKh8X4PT_mU1kD4GQrbjivMfPn-_hXa6han_BT... Closes: https://lore.kernel.org/netdev/0752dee6-43d6-4e1f-81d2-4248142cccd2@gnuweeb.... Fixes: 0d9cfc9b8cb1 ("net: usbnet: Avoid potential RCU stall on LINK_CHANGE event") Signed-off-by: Ammar Faizi ammarfaizi2@gnuweeb.org
FTR, this patch was applied directly by Linus:
- net: usbnet: Fix the wrong netif_carrier_on() call https://git.kernel.org/torvalds/c/8466d393700f