> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > [email protected] > Sent: 29 December 2025 01:10 > To: [email protected] > Cc: Nguyen, Anthony L <[email protected]>; Kitszel, Przemyslaw > <[email protected]>; [email protected]; [email protected]; > [email protected]; [email protected]; Keller, Jacob E > <[email protected]>; [email protected]; Mohammad Heib > <[email protected]>; Loktionov, Aleksandr <[email protected]> > Subject: [Intel-wired-lan] [PATCH net v3 2/2] ice: drop > udp_tunnel_get_rx_info() call from ndo_open() > > From: Mohammad Heib <[email protected]> > > The ice driver calls udp_tunnel_get_rx_info() during ice_open_internal(). > This is redundant because UDP tunnel RX offload state is preserved across > device down/up cycles. The udp_tunnel core handles synchronization > automatically when required. > > Furthermore, recent changes in the udp_tunnel infrastructure require querying > RX info while holding the udp_tunnel lock. Calling it directly from the > ndo_open path violates this requirement, triggering the following lockdep > warning: > > Call Trace: > <TASK> > ice_open_internal+0x253/0x350 [ice] > __udp_tunnel_nic_assert_locked+0x86/0xb0 [udp_tunnel] > __dev_open+0x2f5/0x880 > __dev_change_flags+0x44c/0x660 > netif_change_flags+0x80/0x160 > devinet_ioctl+0xd21/0x15f0 > inet_ioctl+0x311/0x350 > sock_ioctl+0x114/0x220 > __x64_sys_ioctl+0x131/0x1a0 > ... > </TASK> > > Remove the redundant and unsafe call to udp_tunnel_get_rx_info() from > ice_open_internal() to resolve the locking violation > > Fixes: 1ead7501094c ("udp_tunnel: remove rtnl_lock dependency") > Signed-off-by: Mohammad Heib <[email protected]> > Reviewed-by: Aleksandr Loktionov <[email protected]> > --- > drivers/net/ethernet/intel/ice/ice_main.c | 3 --- > 1 file changed, 3 deletions(-) >
Tested-by: Rinitha S <[email protected]> (A Contingent worker at Intel)
