Skip to content

irq/core: Fix and expand the irq affinity descriptor

Dou Liyang linux-pci lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 6 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3genirq/core: Add a new interrupt affinity descriptordrivers/pci/msi.c include/linux/interrupt.h include/linux/irq.h +7 more+56 -360 replies
2/3irq/affinity: Add is_managed into struct irq_affinity_descinclude/linux/interrupt.h kernel/irq/affinity.c kernel/irq/irqdesc.c+15 -21 reply
3/3irq/affinity: Fix a possible breakagekernel/irq/affinity.c+7 -42 replies

Reviews trailers per patch

None of the 3 patches has a Reviewed-by or Acked-by.

PatchSumit Saxena
SeriesT-b
1/3
2/3
3/3

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

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

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(-)
Signature · 1 line
2.17.2