gve: Recover from queue stall due to missed IRQ
authorJohn Fraker <jfraker@google.com>
Mon, 11 Oct 2021 15:36:47 +0000 (08:36 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Nov 2021 13:04:07 +0000 (14:04 +0100)
commita9fbeb5bbc4699f13b7d10bcfce4b842eb9a9e37
tree76204264d0d3cee328e50662d478ac2540ddf13b
parent9e4f708df65e7da7a1a5677ee2f8205bef89e36b
gve: Recover from queue stall due to missed IRQ

[ Upstream commit 87a7f321bb6a45e54b7d6c90d032ee5636a6ad97 ]

Don't always reset the driver on a TX timeout. Attempt to
recover by kicking the queue in case an IRQ was missed.

Fixes: 9e5f7d26a4c08 ("gve: Add workqueue and reset support")
Signed-off-by: John Fraker <jfraker@google.com>
Signed-off-by: David Awogbemila <awogbemila@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/google/gve/gve.h
drivers/net/ethernet/google/gve/gve_adminq.h
drivers/net/ethernet/google/gve/gve_main.c