Skip to content

Commit ec95dff

Browse files
nfontdavem330
authored andcommitted
ibmvnic: queue reset when CRQ gets closed during reset
While handling a driver reset we get a H_CLOSED return trying to send a CRQ event. When this occurs we need to queue up another reset attempt. Without doing this we see instances where the driver is left in a closed state because the reset failed and there is no further attempts to reset the driver. Signed-off-by: Nathan Fontenot <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 583133b commit ec95dff

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

drivers/net/ethernet/ibm/ibmvnic.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2914,8 +2914,12 @@ static int ibmvnic_send_crq(struct ibmvnic_adapter *adapter,
29142914
cpu_to_be64(u64_crq[1]));
29152915

29162916
if (rc) {
2917-
if (rc == H_CLOSED)
2917+
if (rc == H_CLOSED) {
29182918
dev_warn(dev, "CRQ Queue closed\n");
2919+
if (adapter->resetting)
2920+
ibmvnic_reset(adapter, VNIC_RESET_FATAL);
2921+
}
2922+
29192923
dev_warn(dev, "Send error (rc=%d)\n", rc);
29202924
}
29212925

0 commit comments

Comments
 (0)