aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Allen <jallen@linux.vnet.ibm.com>2018-02-06 17:21:49 -0500
committerDavid S. Miller <davem@davemloft.net>2018-02-07 21:55:33 -0500
commit3468656fd7599b0cb1092bb1ee717d1a984e93ee (patch)
treeb108619b336c402dd64f460ec45de024e5c73e6f
parentbc6d33c8d93f5999920e97a8c6330b8910053d4f (diff)
ibmvnic: Fix rx queue cleanup for non-fatal resets
At some point, a check was added to exit the polling routine during resets. This makes sense for most reset conditions, but for a non-fatal error, we expect the polling routine to continue running to properly clean up the rx queues. This patch checks if we are performing a non-fatal reset and if we are, continues normal polling operation. Signed-off-by: John Allen <jallen@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/ibm/ibmvnic.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c
index afaf29b201dc..8dc8fc503750 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -1831,7 +1831,8 @@ restart_poll:
1831 u16 offset; 1831 u16 offset;
1832 u8 flags = 0; 1832 u8 flags = 0;
1833 1833
1834 if (unlikely(adapter->resetting)) { 1834 if (unlikely(adapter->resetting &&
1835 adapter->reset_reason != VNIC_RESET_NON_FATAL)) {
1835 enable_scrq_irq(adapter, adapter->rx_scrq[scrq_num]); 1836 enable_scrq_irq(adapter, adapter->rx_scrq[scrq_num]);
1836 napi_complete_done(napi, frames_processed); 1837 napi_complete_done(napi, frames_processed);
1837 return frames_processed; 1838 return frames_processed;