net: ena: add detection and recovery mechanism for handling missed/misrouted MSI-X
authorNetanel Belgazal <netanel@amazon.com>
Thu, 28 Dec 2017 21:31:30 +0000 (21:31 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 2 Jan 2018 19:35:12 +0000 (14:35 -0500)
commit8510e1a3d16c7e4e2b47c9675b18725407c616b7
treebb5285244774553c8ea08da5f24a89496d787e73
parentacfbf3ca313edd550f0139fe70509cb3b0b38932
net: ena: add detection and recovery mechanism for handling missed/misrouted MSI-X

A mechanism for detection of stuck Rx/Tx rings due to missed or
misrouted interrupts.
Check if there are unhandled completion descriptors before the first
MSI-X interrupt arrived.
The check is per queue and per interrupt vector.
Once such condition is detected, driver and device reset is scheduled.

Signed-off-by: Netanel Belgazal <netanel@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amazon/ena/ena_eth_com.c
drivers/net/ethernet/amazon/ena/ena_eth_com.h
drivers/net/ethernet/amazon/ena/ena_netdev.c
drivers/net/ethernet/amazon/ena/ena_netdev.h
drivers/net/ethernet/amazon/ena/ena_regs_defs.h