28120be5d6
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: Paul Walmsley <paul@booyaka.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org> |
||
---|---|---|
.. | ||
datafab.c | ||
datafab.h | ||
debug.c | ||
debug.h | ||
dpcm.c | ||
dpcm.h | ||
freecom.c | ||
freecom.h | ||
initializers.c | ||
initializers.h | ||
isd200.c | ||
isd200.h | ||
jumpshot.c | ||
jumpshot.h | ||
Kconfig | ||
Makefile | ||
onetouch.c | ||
onetouch.h | ||
protocol.c | ||
protocol.h | ||
scsiglue.c | ||
scsiglue.h | ||
sddr09.c | ||
sddr09.h | ||
sddr55.c | ||
sddr55.h | ||
shuttle_usbat.c | ||
shuttle_usbat.h | ||
transport.c | ||
transport.h | ||
unusual_devs.h | ||
usb.c | ||
usb.h |