Skip to content
  • dave wysochanski's avatar
    [SCSI] Don't add scsi_device for devices that return PQ=1, PDT=0x1f · 84961f28
    dave wysochanski authored
    
    
    Some targets may return slight variations of PQ and PDT to indicate
    no LUN mapped.  USB UFI setting PDT=0x1f but having reserved bits for
    PQ is one example, and NetApp targets returning PQ=1 and PDT=0x1f is
    another.  Both instances seem like reasonable responses according to
    SPC-3 and UFI specs.
    
    The current scsi_probe_and_add_lun() code adds a scsi_device
    for targets that return PQ=1 and PDT=0x1f.  This causes LUNs of type
    "UNKNOWN" to show up in /proc/scsi/scsi when no LUNs are mapped.
    In addition, subsequent rescans fail to recognize LUNs that may be
    added on the target, unless preceded by a write to the delete attribute
    of the "UNKNOWN" LUN.
    
    This patch addresses this problem by skipping over the scsi_add_lun()
    when PQ=1,PDT=0x1f is encountered, and just returns
    SCSI_SCAN_TARGET_PRESENT.
    
    Signed-off-by: default avatarDave Wysochanski <davidw@netapp.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    84961f28