 if (status == 0xffffffff) { printk(KERN_ERR DRV_NAME ": IRQ status == 0xffffffff, " "PCI fault or device removal?\n"); goto out; } 
static irqreturn_t sil24_interrupt(int irq, void *dev_instance, struct pt_regs *regs){	struct ata_host_set *host_set = dev_instance;	struct sil24_host_priv *hpriv = host_set->private_data;	unsigned handled = 0;	u32 status;	int i;	status = readl(hpriv->host_base + HOST_IRQ_STAT);	if (!(status & IRQ_STAT_4PORTS))		goto out;	spin_lock(&host_set->lock);	for (i = 0; i < host_set->n_ports; i++)		if (status & (1 << i)) {			struct ata_port *ap = host_set->ports[i];			if (ap && !(ap->flags & ATA_FLAG_PORT_DISABLED)) {				sil24_host_intr(host_set->ports[i]);				handled++;			} else				printk(KERN_ERR DRV_NAME				       ": interrupt from disabled port %d\n", i);		}	spin_unlock(&host_set->lock); out:	return IRQ_RETVAL(handled);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/06460aeaa26ed4a86b92c8451365d3f48abd3786/sata_sil24.c/buggy/drivers/scsi/sata_sil24.c