Merge branch irq/affinity-nosmp into irq/plic-masking
authorMarc Zyngier <maz@kernel.org>
Sun, 10 Jul 2022 08:49:44 +0000 (09:49 +0100)
committerMarc Zyngier <maz@kernel.org>
Sun, 10 Jul 2022 08:49:44 +0000 (09:49 +0100)
commit4f4b8f8f95f2f4055a7725283ba144a16e05f2bb
tree05e1e66c4e4f8db694e2f17492b8242bb04624a0
parentee4aae577721035b21fcb9f9359825e9626edcfd
parent9167fd5d5549bcea6d4735a270908da2a3475f3a
Merge branch irq/affinity-nosmp into irq/plic-masking

* irq/affinity-nosmp:
  : .
  : non-SMP IRQ affinity fixes courtesy of Samuel Holland:
  :
  : "This series solves some inconsistency with how IRQ affinity masks are
  : handled between SMP and non-SMP configurations.
  :
  : In non-SMP configs, an IRQ's true affinity is always cpumask_of(0), so
  : irq_{,data_}get_affinity_mask now return that, instead of returning an
  : uninitialized per-IRQ cpumask. This change makes iterating over the
  : affinity mask do the right thing in both SMP and non-SMP configurations.
  :
  : To accomplish that:
  :  - patches 1-3 disable some library code that was broken anyway on !SMP
  :  - patches 4-7 refactor the code so that irq_{,data_}get_affinity_mask
  :    can return a const cpumask, since that is what cpumask_of provides
  :  - patch 8 drops the per-IRQ cpumask and replaces it with cpumask_of(0)"
  : .
  PCI: hv: Take a const cpumask in hv_compose_msi_req_get_cpu()
  genirq: Provide an IRQ affinity mask in non-SMP configs
  genirq: Return a const cpumask from irq_data_get_affinity_mask
  genirq: Add and use an irq_data_update_affinity helper
  genirq: Refactor accessors to use irq_data_get_affinity_mask
  genirq: Drop redundant irq_init_effective_affinity
  genirq: GENERIC_IRQ_EFFECTIVE_AFF_MASK depends on SMP
  genirq: GENERIC_IRQ_IPI depends on SMP
  irqchip/mips-gic: Only register IPI domain when SMP is enabled

Signed-off-by: Marc Zyngier <maz@kernel.org>