Messages in this thread | | | Date | Mon, 31 Oct 2022 08:38:01 +0800 | Subject | Re: [PATCH -next] genirq: Add SPARSE_NR_IRQS Kconfig option | From | chenlifu <> |
| |
在 2022/10/18 9:22, chenlifu 写道: > 在 2022/9/30 16:58, Chen Lifu 写道: >> On a large-scale multi-core and NUMA platform, more than 1024 cores and >> 16 NUMA nodes for example, even if SPASE_IRQ is selected to increase the >> number of interrupt numbers by 8196 base on NR_IRQS, the interrupt >> numbers >> requirement cannot be met. Therefore, make the number of sparse interrupt >> numbers configurable. >> >> Signed-off-by: Chen Lifu <chenlifu@huawei.com> >> --- >> kernel/irq/Kconfig | 8 ++++++++ >> kernel/irq/internals.h | 2 +- >> 2 files changed, 9 insertions(+), 1 deletion(-) >> >> diff --git a/kernel/irq/Kconfig b/kernel/irq/Kconfig >> index db3d174c53d4..b517b820e329 100644 >> --- a/kernel/irq/Kconfig >> +++ b/kernel/irq/Kconfig >> @@ -123,10 +123,18 @@ config SPARSE_IRQ >> ( Sparse irqs can also be beneficial on NUMA boxes, as they >> spread >> out the interrupt descriptors in a more NUMA-friendly way. ) >> If you don't know what to do here, say N. >> +config SPARSE_NR_IRQS >> + int "Number of sparse interrupt numbers" >> + depends on SPARSE_IRQ >> + default 8196 >> + help >> + This defines the maximum number of interrupt numbers >> + that can be dynamically expanded. >> + >> config GENERIC_IRQ_DEBUGFS >> bool "Expose irq internals in debugfs" >> depends on DEBUG_FS >> select GENERIC_IRQ_INJECTION >> default n >> diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h >> index f09c60393e55..ab8ac93c60e6 100644 >> --- a/kernel/irq/internals.h >> +++ b/kernel/irq/internals.h >> @@ -10,11 +10,11 @@ >> #include <linux/kernel_stat.h> >> #include <linux/pm_runtime.h> >> #include <linux/sched/clock.h> >> #ifdef CONFIG_SPARSE_IRQ >> -# define IRQ_BITMAP_BITS (NR_IRQS + 8196) >> +# define IRQ_BITMAP_BITS (NR_IRQS + CONFIG_SPARSE_NR_IRQS) >> #else >> # define IRQ_BITMAP_BITS NR_IRQS >> #endif >> #define istate core_internal_state__do_not_mess_with_it > > Friendly ping ...
Friendly ping ...
| |