linux/drivers/net/ethernet/intel/fm10k
Jeff Kirsher 9de15bda37 fm10k: don't handle mailbox events in iov_event path and always process mailbox
Since we already schedule the service task, we can just wait for this
task to handle the mailbox events from the VF. This reduces some complex
code flow, and makes it so we have a single path for handling the VF
messages. There is a possibility that we have a slight delay in handling
VF messages, but it should be minimal.

The result of tx_complete and !rx_ready is insufficient to determine
whether we need to process the mailbox. There is a possible race
condition whereby the VF fills up the mbmem for us, but we have already
recently processed the mailboxes in the interrupt. During this time,
the interrupt is disabled. Thus, our Rx FIFO is empty, but the mbmem now
has data in it. Since we continually check whether Rx FIFO is empty, we
then never call process. This results in the possibility to prevent PF
from handling the VF mailbox messages.

Instead, just call process every time, despite the fact that we may or
may not have anything to process for the VF. There should be minimal
overhead for doing this, and it resolves an issue where the VF never
comes up due to never getting response for its SET_LPORT_STATE message.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Acked-by: Matthew Vick <matthew.vick@intel.com>
Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-04-14 15:47:28 -07:00
..
fm10k_common.c fm10k: Resolve various spelling errors and checkpatch warnings 2015-03-03 01:07:23 -08:00
fm10k_common.h fm10k: Add support for ptp to hw specific files 2014-09-23 03:59:22 -07:00
fm10k_dcbnl.c fm10k: fix unused warnings 2015-04-14 15:23:36 -07:00
fm10k_debugfs.c fm10k: fix unused warnings 2015-04-14 15:23:36 -07:00
fm10k_ethtool.c fm10k: expose tx_timeout_count as an ethtool stat 2015-04-14 15:37:28 -07:00
fm10k_iov.c fm10k: don't handle mailbox events in iov_event path and always process mailbox 2015-04-14 15:47:28 -07:00
fm10k_main.c fm10k: use separate workqueue for fm10k driver 2015-04-14 15:38:06 -07:00
fm10k_mbx.c fm10k: Correct spelling mistake 2015-04-14 15:07:06 -07:00
fm10k_mbx.h fm10k: Add support for PF <-> VF mailbox 2014-09-23 03:59:20 -07:00
fm10k_netdev.c fm10k: allow creation of VLAN on default vid 2015-04-14 15:34:33 -07:00
fm10k_pci.c fm10k: don't handle mailbox events in iov_event path and always process mailbox 2015-04-14 15:47:28 -07:00
fm10k_pf.c fm10k: Set PF queues to unlimited bandwidth during virtualization 2015-04-14 15:37:42 -07:00
fm10k_pf.h fm10k: Add support for SR-IOV to PF core files 2014-09-23 03:59:21 -07:00
fm10k_ptp.c fm10k: fix unused warnings 2015-04-14 15:23:36 -07:00
fm10k_tlv.c fm10k: Resolve various spelling errors and checkpatch warnings 2015-03-03 01:07:23 -08:00
fm10k_tlv.h fm10k: Add support for mailbox 2014-09-23 03:59:14 -07:00
fm10k_type.h fm10k: Resolve various spelling errors and checkpatch warnings 2015-03-03 01:07:23 -08:00
fm10k_vf.c fm10k: Have the VF get the default VLAN during init 2015-04-14 15:07:27 -07:00
fm10k_vf.h fm10k: Add support for ptp to hw specific files 2014-09-23 03:59:22 -07:00
fm10k.h fm10k: use separate workqueue for fm10k driver 2015-04-14 15:38:06 -07:00
Makefile fm10k: Add support for PTP 2014-09-23 03:59:23 -07:00