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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux