if (unlikely(drv_stat & (ATA_ERR | ATA_BUSY | ATA_DRQ))) { 
if (unlikely(drv_stat & (ATA_BUSY | ATA_DRQ))) ata_to_sense_error(qc, drv_stat); else if (unlikely(drv_stat & ATA_ERR)) { 
static int atapi_qc_complete(struct ata_queued_cmd *qc, u8 drv_stat){	struct scsi_cmnd *cmd = qc->scsicmd;	if (unlikely(drv_stat & (ATA_ERR | ATA_BUSY | ATA_DRQ))) {		DPRINTK("request check condition\n");		cmd->result = SAM_STAT_CHECK_CONDITION;		qc->scsidone(cmd);		return 1;	} else {		u8 *scsicmd = cmd->cmnd;		if (scsicmd[0] == INQUIRY) {			u8 *buf = NULL;			unsigned int buflen;			buflen = ata_scsi_rbuf_get(cmd, &buf);			buf[2] = 0x5;			buf[3] = (buf[3] & 0xf0) | 2;			ata_scsi_rbuf_put(cmd, buf);		}		cmd->result = SAM_STAT_GOOD;	}	qc->scsidone(cmd);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/a15dbeb4772626a015337dea06da67095aec3862/libata-scsi.c/clean/drivers/scsi/libata-scsi.c