From: Tony Luck The "Badness in iosapic_unregister_intr at arch/ia64/kernel/iosapic.c:851" messages are caused by a missing call to free_irq() in the mpt/fusion driver. Signed-off-by: Andrew Morton --- drivers/message/fusion/mptbase.c | 2 ++ 1 files changed, 2 insertions(+) diff -puN drivers/message/fusion/mptbase.c~mpt-fusion-free-irq-in-suspend drivers/message/fusion/mptbase.c --- devel/drivers/message/fusion/mptbase.c~mpt-fusion-free-irq-in-suspend 2005-07-26 17:24:23.000000000 -0700 +++ devel-akpm/drivers/message/fusion/mptbase.c 2005-07-26 17:24:23.000000000 -0700 @@ -1384,6 +1384,8 @@ mpt_suspend(struct pci_dev *pdev, pm_mes /* Clear any lingering interrupt */ CHIPREG_WRITE32(&ioc->chip->IntStatus, 0); + free_irq(ioc->pci_irq, ioc); + pci_disable_device(pdev); pci_set_power_state(pdev, device_state); _