[PATCH 0/3] irq/core: Fix and expand the irq affinity descriptor

From: Dou Liyang
Date: Tue Dec 04 2018 - 10:51:59 EST


Now, Spreading the interrupt affinity info by a cpumask pointer is not
enough, meets a problem[1] and hard to expand in the future.

Fix it by:

+-----------------------------------+
| |
| struct cpumask *affinity |
| |
+-----------------------------------+
|
+------------------v-------------------+
| |
| struct irq_affinity_desc { |
| struct cpumask mask; |
| unsigned int is_managed : 1; |
| }; |
| |
+--------------------------------------+

[1]:https://marc.info/?l=linux-kernel&m=153543887027997&w=2

Dou Liyang (3):
genirq/affinity: Add a new interrupt affinity descriptor
irq/affinity: Add is_managed into struct irq_affinity_desc
irq/affinity: Fix a possible breakage

drivers/pci/msi.c | 9 ++++-----
include/linux/interrupt.h | 15 +++++++++++++--
include/linux/irq.h | 6 ++++--
include/linux/irqdomain.h | 6 ++++--
include/linux/msi.h | 4 ++--
kernel/irq/affinity.c | 38 +++++++++++++++++++++++++-------------
kernel/irq/devres.c | 4 ++--
kernel/irq/irqdesc.c | 25 +++++++++++++++++--------
kernel/irq/irqdomain.c | 4 ++--
kernel/irq/msi.c | 7 ++++---
10 files changed, 77 insertions(+), 41 deletions(-)

--
2.17.2