This wasn't to start a debate about which allocation method is the perfect solution. I am perfectly happy with the new default, the part that is broken is to take away the user's option to reassign the affinity. That is a bug and it needs to be fixed!
Well, I would really want to wait for Thomas/Christoph to reply, but this simple change fixed it for me: -- diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 573dc52b0806..eccd06be5e44 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -146,8 +146,7 @@ bool irq_can_set_affinity_usr(unsigned int irq) { struct irq_desc *desc = irq_to_desc(irq); - return __irq_can_set_affinity(desc) && - !irqd_affinity_is_managed(&desc->irq_data); + return __irq_can_set_affinity(desc); } /** --