• Paul Walmsley's avatar
    [PATCH] USB Storage: Force starget->scsi_level in usb-storage scsiglue.c · 28120be5
    Paul Walmsley authored
    When the usb-storage module forces sdev->scsi_level to SCSI_2, it should
    also force starget->scsi_level to the same value.  Otherwise, the SCSI
    layer may attempt to issue SCSI-3 commands to the device, such as REPORT
    LUNS, which it cannot handle.  This can prevent the device from working
    with Linux.
    
    The AMS Venus DS3 DS2316SU2S SATA-to-SATA+USB enclosure, based on the
    Oxford Semiconductor OXU921S chip, requires this patch to function
    correctly on Linux.  The enclosure reports a SCSI-3 SPC-2 command set
    level, but does not correctly handle the REPORT LUNS SCSI command -
    probably due to a bug in its firmware.
    
    It seems likely that other USB storage enclosures with similar bugs will
    also benefit from this patch.
    
    Tony Lindgren <tony@atomide.com> collaborated in the development of this
    patch.
    Signed-off-by: default avatarPaul Walmsley <paul@booyaka.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    28120be5
scsiglue.c 15.2 KB