diff options
author | Sukadev Bhattiprolu <sukadev@linux.ibm.com> | 2022-02-24 22:23:56 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-02-25 10:57:47 +0000 |
commit | ae16bf15374d8b055e040ac6f3f1147ab1c9bb7d (patch) | |
tree | ff8e4ffa2a78fcf66f828e321003c42b3d07c7a1 /crypto/seed.c | |
parent | 570425f8c7c18b14fa8a2a58a0adb431968ad118 (diff) | |
download | linux-stable-ae16bf15374d8b055e040ac6f3f1147ab1c9bb7d.tar.gz linux-stable-ae16bf15374d8b055e040ac6f3f1147ab1c9bb7d.tar.bz2 linux-stable-ae16bf15374d8b055e040ac6f3f1147ab1c9bb7d.zip |
ibmvnic: init init_done_rc earlier
We currently initialize the ->init_done completion/return code fields
before issuing a CRQ_INIT command. But if we get a transport event soon
after registering the CRQ the taskslet may already have recorded the
completion and error code. If we initialize here, we might overwrite/
lose that and end up issuing the CRQ_INIT only to timeout later.
If that timeout happens during probe, we will leave the adapter in the
DOWN state rather than retrying to register/init the CRQ.
Initialize the completion before registering the CRQ so we don't lose
the notification.
Fixes: 032c5e82847a ("Driver for IBM System i/p VNIC protocol")
Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'crypto/seed.c')
0 files changed, 0 insertions, 0 deletions