Fixes for races between reset, remove and close in idpf.

Patch 1 lets a reset racing with remove tear NAPI down in
idpf_detach_and_close() by dropping the IDPF_REMOVE_IN_PROG early return
from idpf_stop(), and tests IDPF_VPORT_UP under RTNL. Seen in testing,
trace in the commit message.

Patch 2 skips empty netdev slots in idpf_detach_and_close(). Reproduced
on a reset with FW reporting more max vports than default vports.

Testing: Patches 1 and 2 reproduced as described. Both are not HW
specific.

Changes in v3:
- Removed patches 3 an 4 from the previous series as there were some
  issues discovered in testing and review that will require more work,
  and a likely a refactor more suitable for -next.

v2: 
https://lore.kernel.org/intel-wired-lan/[email protected]/

v1: 
https://lore.kernel.org/all/[email protected]/

Emil Tantilov (2):
  idpf: fix possible race on remove during a reset
  idpf: skip empty netdev slots when detaching for a reset

 drivers/net/ethernet/intel/idpf/idpf_lib.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

-- 
2.37.3

Reply via email to