linux/drivers/net/ethernet/intel/i40e
Mitch Williams 6c1b5bff5a i40e: guard against vf message races
When disabling and enabling VFs on a live system with the VF driver
loaded, it's possible to receive an admin queue message from the VF
driver at an inconvenient time, e.g. when the associated data structures
aren't present or configured. This causes a rather inconvenient panic.

To guard against this, we change the order of when we set num_alloc_vfs
when turning off SR-IOV, and then gate processing of any VF messages
based upon that value. Likewise, when enabling VFs, we shut off the
relevant interrupt until configuration is complete.

Change-Id: I0c172c056616c2bebd78bbc807ab446eb484deea
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Sibai Li <sibai.li@intel.com>
Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2014-01-04 22:37:57 -08:00
..
i40e_adminq_cmd.h i40e: Implementation of VXLAN ndo's 2014-01-03 20:11:44 -08:00
i40e_adminq.c i40e: make functions static and remove dead code 2013-12-17 22:42:49 -08:00
i40e_adminq.h i40e: simplify aq head-tail-len setups 2013-12-05 23:12:58 -08:00
i40e_alloc.h i40e: init code and hardware support 2013-09-11 02:12:25 -07:00
i40e_common.c i40e: fix mac address checking 2014-01-04 22:13:45 -08:00
i40e_debugfs.c i40e: Dump the whole NVM, not half 2014-01-04 22:06:20 -08:00
i40e_diag.c i40e: trivial fixes 2013-12-16 00:49:22 -08:00
i40e_diag.h i40e: loopback info and set loopback fix 2013-12-10 01:27:30 -08:00
i40e_ethtool.c i40e: Change the ethtool NVM read method to use AQ 2014-01-04 22:22:26 -08:00
i40e_hmc.c i40e: trivial fixes 2013-12-16 00:49:22 -08:00
i40e_hmc.h i40e: init code and hardware support 2013-09-11 02:12:25 -07:00
i40e_lan_hmc.c i40e: init code and hardware support 2013-09-11 02:12:25 -07:00
i40e_lan_hmc.h i40e: sync header files with hardware 2013-12-05 23:25:17 -08:00
i40e_main.c i40e: fix mac address checking 2014-01-04 22:13:45 -08:00
i40e_nvm.c i40e: init code and hardware support 2013-09-11 02:12:25 -07:00
i40e_osdep.h i40e: driver core headers 2013-09-11 01:58:15 -07:00
i40e_prototype.h i40e: fix mac address checking 2014-01-04 22:13:45 -08:00
i40e_register.h i40e: whitespace 2013-12-06 16:41:50 -08:00
i40e_status.h i40e: init code and hardware support 2013-09-11 02:12:25 -07:00
i40e_txrx.c i40e: fix constant cast issues 2014-01-04 22:31:22 -08:00
i40e_txrx.h i40e: make a define from a large constant 2014-01-03 21:14:12 -08:00
i40e_type.h i40e: Rx checksum offload for VXLAN 2014-01-03 20:20:09 -08:00
i40e_virtchnl_pf.c i40e: guard against vf message races 2014-01-04 22:37:57 -08:00
i40e_virtchnl_pf.h i40e: refactor VF reset flow 2014-01-03 20:35:39 -08:00
i40e_virtchnl.h i40e: implement virtual device interface 2013-09-11 02:04:56 -07:00
i40e.h i40e: Dump the whole NVM, not half 2014-01-04 22:06:20 -08:00
Makefile i40e: include i40e in kernel proper 2013-09-11 02:28:40 -07:00