spin_unlock_irqrestore(&host_set->lock, flags); 
static void pdc_eng_timeout(struct ata_port *ap){	u8 drv_stat;	struct ata_queued_cmd *qc;	DPRINTK("ENTER\n");	qc = ata_qc_from_tag(ap, ap->active_tag);	if (!qc) {		printk(KERN_ERR "ata%u: BUG: timeout without command\n",		       ap->id);		goto out;	}	/* hack alert!  We cannot use the supplied completion	 * function from inside the ->eh_strategy_handler() thread.	 * libata is the only user of ->eh_strategy_handler() in	 * any kernel, so the default scsi_done() assumes it is	 * not being called from the SCSI EH.	 */	qc->scsidone = scsi_finish_command;	switch (qc->tf.protocol) {	case ATA_PROT_DMA:	case ATA_PROT_NODATA:		printk(KERN_ERR "ata%u: command timeout\n", ap->id);		ata_qc_complete(qc, ata_wait_idle(ap) | ATA_ERR);		break;	default:		drv_stat = ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 1000);		printk(KERN_ERR "ata%u: unknown timeout, cmd 0x%x stat 0x%x\n",		       ap->id, qc->tf.command, drv_stat);		ata_qc_complete(qc, drv_stat);		break;	}out:	DPRINTK("EXIT\n");}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b8f6153ee421014f42b620238f4203a4106db309/sata_sx4.c/clean/drivers/scsi/sata_sx4.c