linux_dsm_epyc7002/drivers/net/ethernet/emulex/benet
Sathya Perla 0b545a6291 be2net: fix a possible events_get() race on BE2
On BE2 chip, an interrupt being raised even when EQ is in un-armed state has
been observed a few times.  This is not expected and has never been
observed on BE3/Lancer chips.

As a consequence, be_msix()::events_get() and be_poll()::events_get()
can race and notify an EQ wrongly causing a CEV UE. The other possible
side-effect would be traffic stalling because after notifying EQ,
napi_schedule() is ignored as NAPI is already running.

This patch fixes this issue by counting events only in be_poll().

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-11-23 14:26:08 -05:00
..
be_cmds.c be2net: fix access to SEMAPHORE reg 2012-11-07 16:59:52 -05:00
be_cmds.h be2net: fix wrong usage of adapter->generation 2012-11-07 16:59:52 -05:00
be_ethtool.c be2net: Fix ethtool get_settings output for VF 2012-10-21 22:15:36 -04:00
be_hw.h be2net: fix access to SEMAPHORE reg 2012-11-07 16:59:52 -05:00
be_main.c be2net: fix a possible events_get() race on BE2 2012-11-23 14:26:08 -05:00
be_roce.c be2net: remove roce on lancer 2012-11-07 16:59:52 -05:00
be_roce.h be2net: Add functionality to support RoCE driver 2012-05-08 11:17:47 -07:00
be.h be2net: remove adapter->eq_next_idx 2012-11-07 16:59:53 -05:00
Kconfig net: Remove bogus dependencies on INET 2012-11-19 19:13:59 -05:00
Makefile be2net: Add functionality to support RoCE driver 2012-05-08 11:17:47 -07:00