OSDN Git Service

kernel: Don't allow IRQ affinity masks to have more than one CPU
authorSultan Alsawaf <sultan@kerneltoast.com>
Sun, 26 May 2019 05:48:20 +0000 (22:48 -0700)
committer0ranko0P <ranko0p@outlook.com>
Sat, 7 Dec 2019 10:01:16 +0000 (18:01 +0800)
commit8ff4e11e8e00245438aa437c8b25292e627cc847
tree03d64aabe89c8b52f469126c4bb32a2de07e09e5
parent420f0a5483c030c58d0a91f49976c20c9bd95911
kernel: Don't allow IRQ affinity masks to have more than one CPU

Even with an affinity mask that has multiple CPUs set, IRQs always run
on the first CPU in their affinity mask. Drivers that register an IRQ
affinity notifier (such as pm_qos) will therefore have an incorrect
assumption of where an IRQ is affined.

Fix the IRQ affinity mask deception by forcing it to only contain one
set CPU.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
kernel/irq/manage.c