diff --git a/arch/powerpc/platforms/pseries/xics.c b/arch/powerpc/platforms/pseries/xics.c index b854e7f1001c..f1df942072bb 100644 --- a/arch/powerpc/platforms/pseries/xics.c +++ b/arch/powerpc/platforms/pseries/xics.c @@ -752,6 +752,7 @@ skip_gserver_check: void xics_request_IPIs(void) { unsigned int ipi; + int rc; ipi = irq_create_mapping(xics_host, XICS_IPI); BUG_ON(ipi == NO_IRQ); @@ -762,11 +763,12 @@ void xics_request_IPIs(void) */ set_irq_handler(ipi, handle_percpu_irq); if (firmware_has_feature(FW_FEATURE_LPAR)) - request_irq(ipi, xics_ipi_action_lpar, IRQF_DISABLED, - "IPI", NULL); + rc = request_irq(ipi, xics_ipi_action_lpar, IRQF_DISABLED, + "IPI", NULL); else - request_irq(ipi, xics_ipi_action_direct, IRQF_DISABLED, - "IPI", NULL); + rc = request_irq(ipi, xics_ipi_action_direct, IRQF_DISABLED, + "IPI", NULL); + BUG_ON(rc); } #endif /* CONFIG_SMP */