Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1714693

[PATCH v2 00/12] genirq/irqchip: Effective affinity fixups

From Marc Zyngier <marc.zyngier@arm.com>
Newsgroups linux.kernel
Subject [PATCH v2 00/12] genirq/irqchip: Effective affinity fixups
Date 2017-08-18 10:40 +0200
Message-ID <ufKYV-Zv-5@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


4.13 contains a number of updates to the core IRQ code to deal with
things like the effective affinity. This series attempts to fix a
number of small things that are now breaking:

1) The core code assumes that CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK
   being defined implies that *all* interrupts have an effective
   affinity, while it may not be the case (I may have compiled in an
   irqchip driver that has this property, yet none of my interrupts are
   routed through it).

2) A large number of our irqchips are effectively single target (they
   will pick one CPU in the affinity list), and yet do not update the
   effective affinity cpumask.

(1) is solved by checking that the interrupt has a non-empty effective
affinity mask when reporting it, and use the notional affinity mask
instead if the effective one is empty.

(2) is just a matter of updating the effective affinity when required,
and to mark the interrupts as "single target". I've kept them separate
so that people can directly pick the irqchip they are interested in,
but these 10 patches could as well be squashed into a single one.

I've lightly tested the ARM GIC stuff, and that's it. I'd appreciate
some feedback from the platform maintainers, specially for the more
exotic architectures such as metag and xtensa.

Thanks,

	M.

* From v1:
  - Don't assume that an interrupt not being single-target means that
    it doesn't use the effective affinity, and check the full mask
    instead (Thomas Gleixner)
  - Fix MIPS GIC patch, where the affinity registered was the notional
    one instead of the effective one (Paul Burton)

Marc Zyngier (12):
  genirq: Restrict effective affinity to interrupts actually using it
  genirq/proc: Use the the accessor to report the effective affinity
  irqchip/gic: Report that effective affinity is a single target
  irqchip/gic-v3: Report that effective affinity is a single target
  irqchip/gic-v3-its: Report that effective affinity is a single target
  irqchip/armada-370-xp: Report that effective affinity is a single
    target
  irqchip/bcm-6345-l1: Report that effective affinity is a single target
  irqchip/bcm-7038-l1: Report that effective affinity is a single target
  irqchip/metag-ext: Report that effective affinity is a single target
  irqchip/hip04: Report that effective affinity is a single target
  irqchip/mips-gic: Report that effective affinity is a single target
  irqchip/xtensa-mx: Report that effective affinity is a single target

 arch/arm/mach-hisi/Kconfig          |  1 +
 arch/metag/Kconfig                  |  1 +
 drivers/irqchip/Kconfig             |  7 +++++++
 drivers/irqchip/irq-armada-370-xp.c |  3 +++
 drivers/irqchip/irq-bcm6345-l1.c    |  3 +++
 drivers/irqchip/irq-bcm7038-l1.c    |  3 +++
 drivers/irqchip/irq-gic-v3-its.c    |  7 ++++++-
 drivers/irqchip/irq-gic-v3.c        |  3 +++
 drivers/irqchip/irq-gic.c           |  3 +++
 drivers/irqchip/irq-hip04.c         |  3 +++
 drivers/irqchip/irq-metag-ext.c     |  4 ++++
 drivers/irqchip/irq-mips-gic.c      | 10 +++++++---
 drivers/irqchip/irq-xtensa-mx.c     |  6 +++++-
 include/linux/irq.h                 |  5 ++++-
 kernel/irq/proc.c                   |  2 +-
 15 files changed, 54 insertions(+), 7 deletions(-)

-- 
2.11.0

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v2 00/12] genirq/irqchip: Effective affinity fixups Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:40 +0200
  [PATCH v2 05/12] irqchip/gic-v3-its: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:40 +0200
    [tip:irq/core] irqchip/gic-v3-its: Report that effective affinity  is a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 04/12] irqchip/gic-v3: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:40 +0200
    [tip:irq/core] irqchip/gic-v3: Report that effective affinity is a  single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 02/12] genirq/proc: Use the the accessor to report the effective affinity Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:40 +0200
    [tip:irq/core] genirq/proc: Use the the accessor to report the  effective affinity tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 11/12] irqchip/mips-gic: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/mips-gic: Report that effective affinity is  a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 09/12] irqchip/metag-ext: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/metag-ext: Report that effective affinity is  a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 07/12] irqchip/bcm-6345-l1: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/bcm-6345-l1: Report that effective affinity  is a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 01/12] genirq: Restrict effective affinity to interrupts actually using it Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] genirq: Restrict effective affinity to interrupts  actually using it tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 03/12] irqchip/gic: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/gic: Report that effective affinity is a  single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 10/12] irqchip/hip04: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/hip04: Report that effective affinity is a  single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 12/12] irqchip/xtensa-mx: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/xtensa-mx: Report that effective affinity is  a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 08/12] irqchip/bcm-7038-l1: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/bcm-7038-l1: Report that effective affinity  is a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200
  [PATCH v2 06/12] irqchip/armada-370-xp: Report that effective affinity is a single target Marc Zyngier <marc.zyngier@arm.com> - 2017-08-18 10:50 +0200
    [tip:irq/core] irqchip/armada-370-xp: Report that effective  affinity is a single target tip-bot for Marc Zyngier <tipbot@zytor.com> - 2017-08-18 11:10 +0200

csiph-web