> -----Original Message----- > From: Petr Oros <[email protected]> > Sent: Friday, October 2, 2026 6:08 AM > To: [email protected] > Cc: Oros, Petr <[email protected]>; Nguyen, Anthony L > <[email protected]>; Kitszel, Przemyslaw > <[email protected]>; Andrew Lunn <[email protected]>; David S. > Miller <[email protected]>; Eric Dumazet <[email protected]>; Jakub > Kicinski <[email protected]>; Paolo Abeni <[email protected]>; Lobakin, > Aleksander <[email protected]>; Alexei Starovoitov > <[email protected]>; Daniel Borkmann <[email protected]>; Jesper Dangaard > Brouer <[email protected]>; John Fastabend <[email protected]>; > Stanislav Fomichev <[email protected]>; Henry Tieman > > <[email protected]>; Anirudh Venkataramanan > <[email protected]>; Michal Swiatkowski > <[email protected]>; Jesse Brandeburg <[email protected]>; > Preethi Banala <[email protected]>; Kiran Patil > <[email protected]>; Dan Nowlin <[email protected]>; Stephen Hemminger > <[email protected]>; [email protected]; > [email protected]; [email protected] > Subject: [PATCH iwl-net 08/10] ice: detect a PF reset that does not complete > > ice_pf_reset() polls PFGEN_CTRL.PFSWR for up to ICE_GLOBAL_CFG_LOCK_TIMEOUT + > ICE_PF_RESET_WAIT_COUNT iterations, but the timeout check after the loop > still compares the counter with ICE_PF_RESET_WAIT_COUNT alone. When the reset > never completes the loop ends with cnt == 5300, the check does not match and > the function returns success with PFSWR still set. A reset that completes > just when the counter reaches ICE_PF_RESET_WAIT_COUNT is reported as a > failure instead. > > Check the PFSWR bit read last instead of the loop counter, the same way > i40e_pf_reset() does after its poll loop. > > Fixes: c9a12d6d2091 ("ice: Increase timeout after PFR") > Assisted-by: LLM > Signed-off-by: Petr Oros <[email protected]> > --- > drivers/net/ethernet/intel/ice/ice_common.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-)
Tested-by: Alexander Nowlin <[email protected]>
