/* Return value: 0 on success / non-zero on failure  */
static irqreturn_t __devinit ipr_test_intr(int irq, void *devp)
/* Return value: 0 on success / non-zero on failure  */
static irqreturn_t __devinit ipr_test_intr(int irq, void *devp)
{
	struct ipr_ioa_cfg *ioa_cfg = (struct ipr_ioa_cfg *)devp;
	unsigned long lock_flags = 0;
	irqreturn_t rc = IRQ_HANDLED;
	spin_lock_irqsave(ioa_cfg->host->host_lock, lock_flags);
	ioa_cfg->msi_received = 1;
	wake_up(&ioa_cfg->msi_wait_q);
	spin_unlock_irqrestore(ioa_cfg->host->host_lock, lock_flags);
	return rc;
}