Patch "ibmvnic: clear fop when retrying probe" has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    ibmvnic: clear fop when retrying probe

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     ibmvnic-clear-fop-when-retrying-probe.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit f506ab7d60835d4fb1d03a52e783b22c0304636e
Author: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxx>
Date:   Thu Feb 24 22:23:57 2022 -0800

    ibmvnic: clear fop when retrying probe
    
    [ Upstream commit f628ad531b4f34fdba0984255b4a2850dd369513 ]
    
    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: 5a18e1e0c193 ("ibmvnic: Fix failover case for non-redundant configuration")
    Signed-off-by: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxx>
    Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c
index 70267bd73429..9f4f40564d74 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -5612,6 +5612,11 @@ static int ibmvnic_probe(struct vio_dev *dev, const struct vio_device_id *id)
 	do {
 		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);
 		if (rc) {
 			dev_err(&dev->dev, "Couldn't initialize crq. rc=%d\n",



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux