diff options
author | Bartosz Golaszewski | 2018-11-09 18:21:32 +0100 |
---|---|---|
committer | Marc Zyngier | 2018-12-13 10:35:31 +0100 |
commit | 06459901d55ee2f690b8e1fe084fb03061d617cf (patch) | |
tree | 80ca6e836924930684dfaa8ee308267ad71e5e5e /drivers/irqchip | |
parent | platform-msi: Free descriptors in platform_msi_domain_free() (diff) | |
download | kernel-qcow2-linux-06459901d55ee2f690b8e1fe084fb03061d617cf.tar.gz kernel-qcow2-linux-06459901d55ee2f690b8e1fe084fb03061d617cf.tar.xz kernel-qcow2-linux-06459901d55ee2f690b8e1fe084fb03061d617cf.zip |
irq/irq_sim: Store multiple interrupt offsets in a bitmap
Two threads can try to fire the irq_sim with different offsets and will
end up fighting for the irq_work asignment. Thomas Gleixner suggested a
solution based on a bitfield where we set a bit for every offset
associated with an interrupt that should be fired and then iterate over
all set bits in the interrupt handler.
This is a slightly modified solution using a bitmap so that we don't
impose a limit on the number of interrupts one can allocate with
irq_sim.
Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'drivers/irqchip')
0 files changed, 0 insertions, 0 deletions