DPRINTK("ENTER\n"); 
printk(KERN_WARNING "ata%u: handling error/timeout\n", ap->id); 
static void ahci_eng_timeout(struct ata_port *ap){	struct ata_host_set *host_set = ap->host_set;	void __iomem *mmio = host_set->mmio_base;	void __iomem *port_mmio = ahci_port_base(mmio, ap->port_no);	struct ata_queued_cmd *qc;	unsigned long flags;	DPRINTK("ENTER\n");	spin_lock_irqsave(&host_set->lock, flags);	qc = ata_qc_from_tag(ap, ap->active_tag);	if (!qc) {		printk(KERN_ERR "ata%u: BUG: timeout without command\n",		       ap->id);	} else {		ahci_intr_error(ap, readl(port_mmio + PORT_IRQ_STAT));		/* 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;		ata_qc_complete(qc, AC_ERR_OTHER);	}	spin_unlock_irqrestore(&host_set->lock, flags);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/9f68a24853dd37d18f2cfa979cf4e131f5a10e8f/ahci.c/buggy/drivers/scsi/ahci.c