Skip to content

Commit 48079e7

Browse files
sukadevdavem330
authored andcommitted
ibmvnic: don't spin in tasklet
ibmvnic_tasklet() continuously spins waiting for responses to all capability requests. It does this to avoid encountering an error during initialization of the vnic. However if there is a bug in the VIOS and we do not receive a response to one or more queries the tasklet ends up spinning continuously leading to hard lock ups. If we fail to receive a message from the VIOS it is reasonable to timeout the login attempt rather than spin indefinitely in the tasklet. Fixes: 249168a ("ibmvnic: Make CRQ interrupt tasklet wait for all capabilities crqs") Signed-off-by: Sukadev Bhattiprolu <[email protected]> Reviewed-by: Dany Madden <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 151b6a5 commit 48079e7

File tree

1 file changed

+0
-6
lines changed

1 file changed

+0
-6
lines changed

drivers/net/ethernet/ibm/ibmvnic.c

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5499,12 +5499,6 @@ static void ibmvnic_tasklet(struct tasklet_struct *t)
54995499
ibmvnic_handle_crq(crq, adapter);
55005500
crq->generic.first = 0;
55015501
}
5502-
5503-
/* remain in tasklet until all
5504-
* capabilities responses are received
5505-
*/
5506-
if (!adapter->wait_capability)
5507-
done = true;
55085502
}
55095503
/* if capabilities CRQ's were sent in this tasklet, the following
55105504
* tasklet must wait until all responses are received

0 commit comments

Comments
 (0)