Message ID | 20210330105004.20413-1-sreekanth.reddy@broadcom.com |
---|---|
State | New |
Headers | show |
Series | mpt3sas: only one vSES is handy even IOC has multi vSES | expand |
On Tue, 30 Mar 2021 16:20:04 +0530, Sreekanth Reddy wrote: > Whenever the driver is adding the vSES to virtual-phys list then > the driver is reinitializing this list every time. Hence those > vSES devices which were added earlier to this same list are lost. > So, Even though multiple vSES devices are configured in IOC; > but while scanning the vSES devices driver finds only one vSES device > in the list and hence adds only that device to SML. > So, don't reinitialize this list every time a new vSES device is > added to it. Applied to 5.13/scsi-queue, thanks! [1/1] mpt3sas: only one vSES is handy even IOC has multi vSES https://git.kernel.org/mkp/scsi/c/4c51f9569651 -- Martin K. Petersen Oracle Linux Engineering
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c index 6aa6de729187..ae1973878cc7 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c +++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c @@ -6483,6 +6483,9 @@ _scsih_alloc_vphy(struct MPT3SAS_ADAPTER *ioc, u8 port_id, u8 phy_num) if (!vphy) return NULL; + if (!port->vphys_mask) + INIT_LIST_HEAD(&port->vphys_list); + /* * Enable bit corresponding to HBA phy number on its * parent hba_port object's vphys_mask field. @@ -6490,7 +6493,6 @@ _scsih_alloc_vphy(struct MPT3SAS_ADAPTER *ioc, u8 port_id, u8 phy_num) port->vphys_mask |= (1 << phy_num); vphy->phy_mask |= (1 << phy_num); - INIT_LIST_HEAD(&port->vphys_list); list_add_tail(&vphy->list, &port->vphys_list); ioc_info(ioc,
Whenever the driver is adding the vSES to virtual-phys list then the driver is reinitializing this list every time. Hence those vSES devices which were added earlier to this same list are lost. So, Even though multiple vSES devices are configured in IOC; but while scanning the vSES devices driver finds only one vSES device in the list and hence adds only that device to SML. So, don't reinitialize this list every time a new vSES device is added to it. Cc: stable@vger.kernel.org #v5.11.10+ Signed-off-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com> --- drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)