Currently on Arm the desc->affinity mask of an irq is never updated, which makes it hard to know the actual affinity of an interrupt.
Fix this by updating the field in irq_set_affinity. Signed-off-by: Mykyta Poturai <[email protected]> v3->v4: * patch introduced --- xen/arch/arm/irq.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c index 73e58a5108..28b40331f7 100644 --- a/xen/arch/arm/irq.c +++ b/xen/arch/arm/irq.c @@ -219,7 +219,10 @@ static inline struct domain *irq_get_domain(struct irq_desc *desc) void irq_set_affinity(struct irq_desc *desc, const cpumask_t *mask) { if ( desc != NULL ) + { + cpumask_copy(desc->affinity, mask); desc->handler->set_affinity(desc, mask); + } } int request_irq(unsigned int irq, unsigned int irqflags, -- 2.51.2
