Comment 14 for bug 530071

Revision history for this message
Colin Watson (cjwatson) wrote :

Exactly. Here's the relevant bit of code in drivers/usb/storage/scsiglue.c:

                /* Some devices report a SCSI revision level above 2 but are
                 * unable to handle the REPORT LUNS command (for which
                 * support is mandatory at level 3). Since we already have
                 * a Get-Max-LUN request, we won't lose much by setting the
                 * revision level down to 2. The only devices that would be
                 * affected are those with sparse LUNs. */
                if (sdev->scsi_level > SCSI_2)
                        sdev->sdev_target->scsi_level =
                                        sdev->scsi_level = SCSI_2;

I suspect this predates widespread use of large physical sectors, and needs to be revised.