On Mon, Dec 04, 2006 at 03:32:20PM -0800, Darrick J. Wong wrote: > The Quantum GoVault SATAPI removable disk device returns ATA_ERR in > response to a REPORT LUNS packet. If this happens to an ATAPI device > that is attached to a SAS controller (this is the case with sas_ata), > the device does not load because SCSI won't touch a "SCSI device" > that won't report its LUNs. Since most ATAPI devices don't support > multiple LUNs anyway, we might as well fake a response like we do for > ATA devices. If the REPORT LUNS fails, we should fall back to a sequential scan. Is (or why isn't) the error propagated back to scsi? > Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> > --- > > drivers/ata/libata-scsi.c | 9 +++++++-- > 1 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c > index 47ea111..5ecf260 100644 > --- a/drivers/ata/libata-scsi.c > +++ b/drivers/ata/libata-scsi.c > @@ -2833,8 +2833,13 @@ static inline int __ata_scsi_queuecmd(st > rc = ata_scsi_translate(dev, cmd, done, xlat_func); > else > ata_scsi_simulate(dev, cmd, done); > - } else > - rc = ata_scsi_translate(dev, cmd, done, atapi_xlat); > + } else { > + /* Simulate REPORT LUNS for ATAPI devices */ > + if (cmd->cmnd[0] == REPORT_LUNS) > + ata_scsi_simulate(dev, cmd, done); > + else > + rc = ata_scsi_translate(dev, cmd, done, atapi_xlat); > + } > > return rc; > } -- Patrick Mansfield - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html