On Thu, 29 Oct 2020 18:08:45 +0100, mwilck@xxxxxxxx wrote: > The current implementation of scsi_vpd_lun_id() uses the designator > length as an implicit measure of priority. This works most of the > time, but not always. For example, some Hitachi storage arrays return > this in VPD 0x83: > > VPD INQUIRY: Device Identification page > Designation descriptor number 1, descriptor length: 24 > designator_type: T10 vendor identification, code_set: ASCII > associated with the Addressed logical unit > vendor id: HITACHI > vendor specific: 5030C3502025 > Designation descriptor number 2, descriptor length: 6 > designator_type: vendor specific [0x0], code_set: Binary > associated with the Target port > vendor specific: 08 03 > Designation descriptor number 3, descriptor length: 20 > designator_type: NAA, code_set: Binary > associated with the Addressed logical unit > NAA 6, IEEE Company_id: 0x60e8 > Vendor Specific Identifier: 0x7c35000 > Vendor Specific Identifier Extension: 0x30c35000002025 > [0x60060e8007c350000030c35000002025] > > [...] Applied to 5.11/scsi-queue, thanks! [1/2] scsi: core: Fix VPD LUN ID designator priorities https://git.kernel.org/mkp/scsi/c/2e4209b3806c [2/2] scsi: core: Replace while-loop by for-loop in scsi_vpd_lun_id() https://git.kernel.org/mkp/scsi/c/16d6317ea438 -- Martin K. Petersen Oracle Linux Engineering