Re: [PATCH] scsi: smartpqi: Enable sas_address sys fs for SATA device type.

From: Ma, Jiping
Date: Wed Oct 13 2021 - 20:44:35 EST


ping

Thanks,

Jiping

On 10/11/2021 10:46 AM, Jiping Ma wrote:
Current version:
/sys/devices/pci0000:36/0000:36:02.0/0000:3b:00.0/host0/scsi_host/host0$
find -name sas_address -print -exec cat {} \;
./port-0:3/end_device-0:3/sas_device/end_device-0:3/sas_address
0x0000000000000000
./port-0:3/end_device-0:3/target0:0:2/0:0:2:0/sas_address
cat: ./port-0:3/end_device-0:3/target0:0:2/0:0:2:0/sas_address:
No such device
./port-0:1/end_device-0:1/target0:0:0/0:0:0:0/sas_address
cat: ./port-0:1/end_device-0:1/target0:0:0/0:0:0:0/sas_address:
No such device
./port-0:1/end_device-0:1/sas_device/end_device-0:1/sas_address
0x0000000000000000
./port-0:4/end_device-0:4/sas_device/end_device-0:4/sas_address
0x0000000000000000
./port-0:4/end_device-0:4/target0:0:3/0:0:3:0/sas_address
cat: ./port-0:4/end_device-0:4/target0:0:3/0:0:3:0/sas_address:
No such device
./port-0:2/end_device-0:2/sas_device/end_device-0:2/sas_address
0x0000000000000000
./port-0:2/end_device-0:2/target0:0:1/0:0:1:0/sas_address
cat: ./port-0:2/end_device-0:2/target0:0:1/0:0:1:0/sas_address:
No such device

After patch applied:
/sys/devices/pci0000:36/0000:36:02.0/0000:3b:00.0/host0/scsi_host/host0$
find -name sas_address -print -exec cat {} \;
./port-0:3/end_device-0:3/sas_device/end_device-0:3/sas_address
0x31402ec001d92985
./port-0:3/end_device-0:3/target0:0:2/0:0:2:0/sas_address
0x31402ec001d92985
./port-0:1/end_device-0:1/target0:0:0/0:0:0:0/sas_address
0x31402ec001d92983
./port-0:1/end_device-0:1/sas_device/end_device-0:1/sas_address
0x31402ec001d92983
./port-0:4/end_device-0:4/sas_device/end_device-0:4/sas_address
0x31402ec001d92986
./port-0:4/end_device-0:4/target0:0:3/0:0:3:0/sas_address
0x31402ec001d92986
./port-0:2/end_device-0:2/sas_device/end_device-0:2/sas_address
0x31402ec001d92984
./port-0:2/end_device-0:2/target0:0:1/0:0:1:0/sas_address
0x31402ec001d92984

Signed-off-by: Jiping Ma <jiping.ma2@xxxxxxxxxxxxx>
---
drivers/scsi/smartpqi/smartpqi_init.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index ecb2af3f43ca..df16e0a27a41 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -2101,6 +2101,7 @@ static inline void pqi_mask_device(u8 *scsi3addr)
static inline bool pqi_is_device_with_sas_address(struct pqi_scsi_dev *device)
{
switch (device->device_type) {
+ case SA_DEVICE_TYPE_SATA:
case SA_DEVICE_TYPE_SAS:
case SA_DEVICE_TYPE_EXPANDER_SMP:
case SA_DEVICE_TYPE_SES: