提交 f628ad53 编写于 作者: S Sukadev Bhattiprolu 提交者: David S. Miller

ibmvnic: clear fop when retrying probe

Clear ->failover_pending flag that may have been set in the previous
pass of registering CRQ. If we don't clear, a subsequent ibmvnic_open()
call would be misled into thinking a failover is pending and assuming
that the reset worker thread would open the adapter. If this pass of
registering the CRQ succeeds (i.e there is no transport event), there
wouldn't be a reset worker thread.

This would leave the adapter unconfigured and require manual intervention
to bring it up during boot.

Fixes: 5a18e1e0 ("ibmvnic: Fix failover case for non-redundant configuration")
Signed-off-by: NSukadev Bhattiprolu <sukadev@linux.ibm.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 ae16bf15
...@@ -5811,6 +5811,11 @@ static int ibmvnic_probe(struct vio_dev *dev, const struct vio_device_id *id) ...@@ -5811,6 +5811,11 @@ static int ibmvnic_probe(struct vio_dev *dev, const struct vio_device_id *id)
do { do {
reinit_init_done(adapter); reinit_init_done(adapter);
/* clear any failovers we got in the previous pass
* since we are reinitializing the CRQ
*/
adapter->failover_pending = false;
rc = init_crq_queue(adapter); rc = init_crq_queue(adapter);
if (rc) { if (rc) {
dev_err(&dev->dev, "Couldn't initialize crq. rc=%d\n", dev_err(&dev->dev, "Couldn't initialize crq. rc=%d\n",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册