ibmvnic: track pending login
authorSukadev Bhattiprolu <sukadev@linux.ibm.com>
Thu, 26 Nov 2020 00:04:29 +0000 (18:04 -0600)
committerJakub Kicinski <kuba@kernel.org>
Sat, 28 Nov 2020 21:26:48 +0000 (13:26 -0800)
commit76cdc5c5d99ce4856ad0ac38facc33b52fa64f77
tree91d4c4e7920964ac7c4afa7f31c9f288132182d5
parentf15fde9d47b887b406f5e76490d601cfc26643c9
ibmvnic: track pending login

If after ibmvnic sends a LOGIN it gets a FAILOVER, it is possible that
the worker thread will start reset process and free the login response
buffer before it gets a (now stale) LOGIN_RSP. The ibmvnic tasklet will
then try to access the login response buffer and crash.

Have ibmvnic track pending logins and discard any stale login responses.

Fixes: 032c5e82847a ("Driver for IBM System i/p VNIC protocol")
Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/ibm/ibmvnic.c
drivers/net/ethernet/ibm/ibmvnic.h