Skip to content

Commit 001164f

Browse files
Venkatesh Emparalamartinkpetersen
authored andcommitted
scsi: smartpqi: Enhance WWID logging logic
Log the extended WWID for NVMe devices and for devices that have the firmware feature bit "PQI_FIRMWARE_FEATURE_RPL_EXTENDED_FORMAT_4_5" enabled. Log 8-bytes otherwise. Reviewed-by: Scott Teel <scott.teel@microchip.com> Reviewed-by: Scott Benesh <scott.benesh@microchip.com> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com> Signed-off-by: Venkatesh Emparala <Venkatesh.Emparala@microchip.com> Signed-off-by: Don Brace <don.brace@microchip.com> Link: https://lore.kernel.org/r/20250423183229.538572-4-don.brace@microchip.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 01b8bdd commit 001164f

File tree

1 file changed

+18
-5
lines changed

1 file changed

+18
-5
lines changed

drivers/scsi/smartpqi/smartpqi_init.c

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2011,18 +2011,31 @@ static void pqi_dev_info(struct pqi_ctrl_info *ctrl_info,
20112011
PQI_DEV_INFO_BUFFER_LENGTH - count,
20122012
"-:-");
20132013

2014-
if (pqi_is_logical_device(device))
2014+
if (pqi_is_logical_device(device)) {
20152015
count += scnprintf(buffer + count,
20162016
PQI_DEV_INFO_BUFFER_LENGTH - count,
20172017
" %08x%08x",
20182018
*((u32 *)&device->scsi3addr),
20192019
*((u32 *)&device->scsi3addr[4]));
2020-
else
2020+
} else if (ctrl_info->rpl_extended_format_4_5_supported) {
2021+
if (device->device_type == SA_DEVICE_TYPE_NVME)
2022+
count += scnprintf(buffer + count,
2023+
PQI_DEV_INFO_BUFFER_LENGTH - count,
2024+
" %016llx%016llx",
2025+
get_unaligned_be64(&device->wwid[0]),
2026+
get_unaligned_be64(&device->wwid[8]));
2027+
else
2028+
count += scnprintf(buffer + count,
2029+
PQI_DEV_INFO_BUFFER_LENGTH - count,
2030+
" %016llx",
2031+
get_unaligned_be64(&device->wwid[0]));
2032+
} else {
20212033
count += scnprintf(buffer + count,
20222034
PQI_DEV_INFO_BUFFER_LENGTH - count,
2023-
" %016llx%016llx",
2024-
get_unaligned_be64(&device->wwid[0]),
2025-
get_unaligned_be64(&device->wwid[8]));
2035+
" %016llx",
2036+
get_unaligned_be64(&device->wwid[0]));
2037+
}
2038+
20262039

20272040
count += scnprintf(buffer + count, PQI_DEV_INFO_BUFFER_LENGTH - count,
20282041
" %s %.8s %.16s ",

0 commit comments

Comments
 (0)