Blob Blame History Raw
From 785a2b1036273f6b7f78740cc4b0f32ffc9846f5 Mon Sep 17 00:00:00 2001
From: Lijun Pan <ljp@linux.ibm.com>
Date: Thu, 17 Sep 2020 21:12:46 -0500
Subject: [PATCH] Revert "ibmvnic: remove never executed if statement"

References: bsc#1184114 ltc#192237 bsc#1179243 ltc#189290
Patch-mainline: v5.10-rc1
Git-commit: 785a2b1036273f6b7f78740cc4b0f32ffc9846f5

This reverts commit 550f4d46aff6fe57c9b1c6719c3c9de2237d7ac2.

adapter->from_passive_init may be changed in ibmvnic_handle_crq
while ibmvnic_reset_init is waiting for the completion of
adapter->init_done.

Signed-off-by: Lijun Pan <ljp@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Michal Suchanek <msuchanek@suse.de>
---
 drivers/net/ethernet/ibm/ibmvnic.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c
index e2a3c4bf00c9..6d320be47e60 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -5047,6 +5047,12 @@ static int ibmvnic_reset_init(struct ibmvnic_adapter *adapter, bool reset)
 		return adapter->init_done_rc;
 	}
 
+	if (adapter->from_passive_init) {
+		adapter->state = VNIC_OPEN;
+		adapter->from_passive_init = false;
+		return -1;
+	}
+
 	if (reset &&
 	    test_bit(0, &adapter->resetting) && !adapter->wait_for_reset &&
 	    adapter->reset_reason != VNIC_RESET_MOBILITY) {
-- 
2.26.2