[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <b9b5f82f-c59b-4816-b745-31080c6cdf78@linux.vnet.ibm.com>
Date: Mon, 19 Jun 2017 11:27:53 -0500
From: John Allen <jallen@...ux.vnet.ibm.com>
To: netdev@...r.kernel.org
Cc: Nathan Fontenot <nfont@...ux.vnet.ibm.com>,
Thomas Falcon <tlfalcon@...ux.vnet.ibm.com>
Subject: [PATCH net-next] ibmvnic: Return from ibmvnic_resume if not in
VNIC_OPEN state
If the ibmvnic driver is not in the VNIC_OPEN state, return from
ibmvnic_resume callback. If we are not in the VNIC_OPEN state, interrupts
may not be initialized and directly calling the interrupt handler will
cause a crash.
Signed-off-by: John Allen <jallen@...ux.vnet.ibm.com>
---
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c
index 722daf5..0135095 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -3859,6 +3859,9 @@ static int ibmvnic_resume(struct device *dev)
struct ibmvnic_adapter *adapter = netdev_priv(netdev);
int i;
+ if (adapter->state != VNIC_OPEN)
+ return 0;
+
/* kick the interrupt handlers just in case we lost an interrupt */
for (i = 0; i < adapter->req_rx_queues; i++)
ibmvnic_interrupt_rx(adapter->rx_scrq[i]->irq,
Powered by blists - more mailing lists