The MSI affinity is automanaged and it can be set before starting the associated IRQ.
( Should we simply remove the irqd_is_started() test ? ) Cc: Thomas Gleixner <t...@linutronix.de> Signed-off-by: Cédric Le Goater <c...@kaod.org> --- arch/powerpc/sysdev/xive/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/sysdev/xive/common.c b/arch/powerpc/sysdev/xive/common.c index 96737938e8e3..3485baf9ec8c 100644 --- a/arch/powerpc/sysdev/xive/common.c +++ b/arch/powerpc/sysdev/xive/common.c @@ -710,7 +710,7 @@ static int xive_irq_set_affinity(struct irq_data *d, return -EINVAL; /* Don't do anything if the interrupt isn't started */ - if (!irqd_is_started(d)) + if (!irqd_is_started(d) && !irqd_affinity_is_managed(d)) return IRQ_SET_MASK_OK; /* -- 2.26.3