Use more consistent locking when reading/writing the adapter->state field. This patch set fixes a race condition during ibmvnic_open() where the adapter could be left in the PROBED state if a reset occurs at the wrong time. This can cause networking to not come up during boot and potentially require manual intervention in bringing up applications that depend on the network.
Changelog[v2] [Address comments from Jakub Kicinski] - Fix up commit log for patch 5/7 and drop unnecessary variable - Format Fixes line properly (no wrapping, no blank lines) Sukadev Bhattiprolu (7): ibmvnic: restore state in change-param reset ibmvnic: update reset function prototypes ibmvnic: avoid allocating rwi entries ibmvnic: switch order of checks in ibmvnic_reset ibmvnic: serialize access to work queue ibmvnic: check adapter->state under state_lock ibmvnic: add comments about state_lock drivers/net/ethernet/ibm/ibmvnic.c | 347 ++++++++++++++++++++--------- drivers/net/ethernet/ibm/ibmvnic.h | 70 +++++- 2 files changed, 306 insertions(+), 111 deletions(-) -- 2.26.2