]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
genirq/affinity: Add irq_update_affinity_desc()
authorJohn Garry <john.garry@huawei.com>
Wed, 2 Dec 2020 10:36:53 +0000 (18:36 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Oct 2025 11:35:38 +0000 (13:35 +0200)
commit15b6388739b2b937f46bbca8adfec6a449976f2c
tree0e56f6d6f59407af63654db8e1b113ff285e4a65
parenta84c8af1319d2b47ab2bdece061d4e10bd1627dd
genirq/affinity: Add irq_update_affinity_desc()

[ Upstream commit 1d3aec89286254487df7641c30f1b14ad1d127a5 ]

Add a function to allow the affinity of an interrupt be switched to
managed, such that interrupts allocated for platform devices may be
managed.

This new interface has certain limitations, and attempts to use it in the
following circumstances will fail:
- For when the kernel is configured for generic IRQ reservation mode (in
  config GENERIC_IRQ_RESERVATION_MODE). The reason being that it could
  conflict with managed vs. non-managed interrupt accounting.
- The interrupt is already started, which should not be the case during
  init
- The interrupt is already configured as managed, which means double init

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/1606905417-183214-2-git-send-email-john.garry@huawei.com
Stable-dep-of: 915470e1b44e ("i40e: fix IRQ freeing in i40e_vsi_request_irq_msix error path")
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/linux/interrupt.h
kernel/irq/manage.c