]> git.baikalelectronics.ru Git - kernel.git/commit
ice: restore VF MSI-X state during PCI reset
authorNick Nunley <nicholas.d.nunley@intel.com>
Mon, 13 Jul 2020 20:53:07 +0000 (13:53 -0700)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Wed, 29 Jul 2020 15:38:55 +0000 (08:38 -0700)
commit136fb2c0515a1e974e4aab0c72f26384b765b7a0
tree111d1ed6d2bbc8d8f5f6472ddbf749e5b431e3b7
parent934f51cb0d0a286803e4ad1d3baa60255b725a3e
ice: restore VF MSI-X state during PCI reset

During a PCI FLR the MSI-X Enable flag in the VF PCI MSI-X capability
register will be cleared. This can lead to issues when a VF is
assigned to a VM because in these cases the VF driver receives no
indication of the PF PCI error/reset and additionally it is incapable
of restoring the cleared flag in the hypervisor configuration space
without fully reinitializing the driver interrupt functionality.

Since the VF driver is unable to easily resolve this condition on its own,
restore the VF MSI-X flag during the PF PCI reset handling.

Signed-off-by: Nick Nunley <nicholas.d.nunley@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_main.c
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h