WSL2-Linux-Kernel/drivers/irqchip
Samuel Holland c775a52461 genirq: Add and use an irq_data_update_affinity helper
[ Upstream commit 073352e951 ]

Some architectures and irqchip drivers modify the cpumask returned by
irq_data_get_affinity_mask, usually by copying in to it. This is
problematic for uniprocessor configurations, where the affinity mask
should be constant, as it is known at compile time.

Add and use a setter for the affinity mask, following the pattern of
irq_data_update_effective_affinity. This allows the getter function to
return a const cpumask pointer.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> # Xen bits
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220701200056.46555-7-samuel@sholland.org
Stable-dep-of: feabecaff5 ("genirq/ipi: Fix NULL pointer deref in irq_data_get_affinity_mask()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-03-11 13:57:31 +01:00
..
Kconfig genirq: GENERIC_IRQ_IPI depends on SMP 2022-08-17 14:23:01 +02:00
Makefile
alphascale_asm9260-icoll.h
exynos-combiner.c
irq-al-fic.c
irq-alpine-msi.c irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains 2023-03-10 09:39:14 +01:00
irq-apple-aic.c
irq-armada-370-xp.c irqchip/armada-370-xp: Do not touch Performance Counter Overflow on A375, A38x, A39x 2022-06-09 10:23:26 +02:00
irq-aspeed-i2c-ic.c irqchip/aspeed-i2c-ic: Fix irq_of_parse_and_map() return value 2022-06-09 10:22:54 +02:00
irq-aspeed-scu-ic.c irqchip/aspeed-scu-ic: Fix irq_of_parse_and_map() return value 2022-06-09 10:22:54 +02:00
irq-aspeed-vic.c
irq-ath79-cpu.c
irq-ath79-misc.c
irq-ativic32.c
irq-atmel-aic-common.c
irq-atmel-aic-common.h
irq-atmel-aic.c
irq-atmel-aic5.c
irq-bcm2835.c
irq-bcm2836.c
irq-bcm6345-l1.c genirq: Add and use an irq_data_update_affinity helper 2023-03-11 13:57:31 +01:00
irq-bcm7038-l1.c
irq-bcm7120-l2.c irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts 2023-03-10 09:39:18 +01:00
irq-brcmstb-l2.c irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts 2023-03-10 09:39:18 +01:00
irq-clps711x.c
irq-crossbar.c
irq-csky-apb-intc.c
irq-csky-mpintc.c
irq-davinci-aintc.c
irq-davinci-cp-intc.c
irq-digicolor.c
irq-dw-apb-ictl.c
irq-ftintc010.c
irq-gic-common.c
irq-gic-common.h
irq-gic-pm.c irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe() 2022-12-31 13:14:03 +01:00
irq-gic-realview.c irqchip/gic/realview: Fix refcount leak in realview_gic_of_init 2022-06-22 14:22:02 +02:00
irq-gic-v2m.c
irq-gic-v3-its-fsl-mc-msi.c
irq-gic-v3-its-pci-msi.c
irq-gic-v3-its-platform-msi.c
irq-gic-v3-its.c irqchip/gic-v3: Always trust the managed affinity provided by the core code 2022-12-02 17:41:11 +01:00
irq-gic-v3-mbi.c
irq-gic-v3.c irqchip/gic-v3: Refactor ISB + EOIR at ack time 2022-07-12 16:35:08 +02:00
irq-gic-v4.c
irq-gic.c irqchip/gic, gic-v3: Prevent GSI to SGI translations 2022-04-13 20:59:28 +02:00
irq-goldfish-pic.c
irq-hip04.c
irq-i8259.c
irq-idt3243x.c
irq-imgpdc.c
irq-imx-gpcv2.c
irq-imx-intmux.c
irq-imx-irqsteer.c
irq-ingenic-tcu.c
irq-ingenic.c
irq-ixp4xx.c
irq-jcore-aic.c
irq-keystone.c
irq-loongson-htpic.c
irq-loongson-htvec.c
irq-loongson-liointc.c
irq-loongson-pch-msi.c
irq-loongson-pch-pic.c
irq-lpc32xx.c
irq-ls-extirq.c
irq-ls-scfg-msi.c
irq-ls1x.c
irq-madera.c
irq-mbigen.c
irq-meson-gpio.c
irq-mips-cpu.c
irq-mips-gic.c irqchip/mips-gic: Check the return value of ioremap() in gic_of_init() 2022-08-17 14:23:01 +02:00
irq-mmp.c
irq-mscc-ocelot.c
irq-mst-intc.c
irq-mtk-cirq.c
irq-mtk-sysirq.c
irq-mvebu-gicp.c irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe 2023-03-10 09:39:14 +01:00
irq-mvebu-icu.c
irq-mvebu-odmi.c
irq-mvebu-pic.c
irq-mvebu-sei.c
irq-mxs.c
irq-nvic.c irqchip/nvic: Release nvic_base upon failure 2022-04-08 14:23:56 +02:00
irq-omap-intc.c
irq-ompic.c
irq-or1k-pic.c irqchip: or1k-pic: Undefine mask_ack for level triggered hardware 2022-07-21 21:24:40 +02:00
irq-orion.c
irq-owl-sirq.c
irq-partition-percpu.c
irq-pic32-evic.c
irq-pruss-intc.c
irq-rda-intc.c
irq-realtek-rtl.c irqchip/realtek-rtl: Fix refcount leak in map_interrupts 2022-06-22 14:22:02 +02:00
irq-renesas-h8s.c
irq-renesas-h8300h.c
irq-renesas-intc-irqpin.c
irq-renesas-irqc.c
irq-renesas-rza1.c
irq-riscv-intc.c
irq-sa11x0.c
irq-sifive-plic.c irqchip/sifive-plic: Add missing thead,c900-plic match string 2022-02-23 12:03:17 +01:00
irq-sl28cpld.c
irq-sni-exiu.c irqchip/exiu: Fix acknowledgment of edge triggered interrupts 2022-06-09 10:22:54 +02:00
irq-st.c
irq-stm32-exti.c
irq-sun4i.c
irq-sun6i-r.c
irq-sunxi-nmi.c
irq-tb10x.c
irq-tegra.c irqchip/tegra: Fix overflow implicit truncation warnings 2022-08-25 11:40:32 +02:00
irq-ti-sci-inta.c
irq-ti-sci-intr.c irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe 2023-03-10 09:39:14 +01:00
irq-ts4800.c
irq-uniphier-aidet.c
irq-versatile-fpga.c
irq-vf610-mscm-ir.c
irq-vic.c
irq-vt8500.c
irq-wpcm450-aic.c irqchip/wpcm450: Fix memory leak in wpcm450_aic_of_init() 2022-12-31 13:14:03 +01:00
irq-xilinx-intc.c
irq-xtensa-mx.c irqchip: irq-xtensa-mx: fix initial IRQ affinity 2022-06-09 10:23:26 +02:00
irq-xtensa-pic.c
irq-zevio.c
irqchip.c irqchip: Fix refcount leak in platform_irqchip_probe 2023-03-10 09:39:14 +01:00
qcom-irq-combiner.c
qcom-pdc.c irqchip/qcom-pdc: Fix broken locking 2022-04-08 14:23:55 +02:00
spear-shirq.c