This driver is emitting unhandled interrupt warnings. I don't have a clue why - the code looks right. This is the second or third driver which has been discovered to do this (boomerang_interrupt() is another). 25-akpm/sound/pci/via82xx.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff -puN sound/pci/via82xx.c~irqreturn-snd-via-fix sound/pci/via82xx.c --- 25/sound/pci/via82xx.c~irqreturn-snd-via-fix Mon Jun 2 14:33:20 2003 +++ 25-akpm/sound/pci/via82xx.c Mon Jun 2 14:33:20 2003 @@ -596,8 +596,13 @@ static irqreturn_t snd_via82xx_interrupt spin_unlock(&chip->reg_lock); if (chip->rmidi) /* check mpu401 interrupt */ - return snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); - return IRQ_NONE; + snd_mpu401_uart_interrupt(irq, + chip->rmidi->private_data, regs); + /* + * We really should return IRQ_NONE here, but for some reason + * this "can't happen" patch actually happens. + */ + return IRQ_HANDLED; } // _skip_sgd: _