The patch titled genirq: irq: generalize the check for HARDIRQ_BITS has been removed from the -mm tree. Its filename is genirq-irq-generalize-the-check-for-hardirq_bits.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: genirq: irq: generalize the check for HARDIRQ_BITS From: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> This patch adds support for systems that cannot receive every interrupt on a single cpu simultaneously, in the check to see if we have enough HARDIRQ_BITS. MAX_HARDIRQS_PER_CPU becomes the count of the maximum number of hardare generated interrupts per cpu. On architectures that support per cpu interrupt delivery this can be a significant space savings and scalability bonus. This patch adds support for systems that cannot receive every interrupt on Signed-off-by: Eric W. Biederman <ebiederm@xxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Cc: Rajesh Shah <rajesh.shah@xxxxxxxxx> Cc: Andi Kleen <ak@xxxxxx> Cc: "Protasevich, Natalie" <Natalie.Protasevich@xxxxxxxxxx> Cc: "Luck, Tony" <tony.luck@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/asm-x86_64/hardirq.h | 3 +++ include/linux/hardirq.h | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff -puN include/asm-x86_64/hardirq.h~genirq-irq-generalize-the-check-for-hardirq_bits include/asm-x86_64/hardirq.h --- a/include/asm-x86_64/hardirq.h~genirq-irq-generalize-the-check-for-hardirq_bits +++ a/include/asm-x86_64/hardirq.h @@ -6,6 +6,9 @@ #include <asm/pda.h> #include <asm/apic.h> +/* We can have at most NR_VECTORS irqs routed to a cpu at a time */ +#define MAX_HARDIRQS_PER_CPU NR_VECTORS + #define __ARCH_IRQ_STAT 1 #define local_softirq_pending() read_pda(__softirq_pending) diff -puN include/linux/hardirq.h~genirq-irq-generalize-the-check-for-hardirq_bits include/linux/hardirq.h --- a/include/linux/hardirq.h~genirq-irq-generalize-the-check-for-hardirq_bits +++ a/include/linux/hardirq.h @@ -28,11 +28,16 @@ #ifndef HARDIRQ_BITS #define HARDIRQ_BITS 12 + +#ifndef MAX_HARDIRQS_PER_CPU +#define MAX_HARDIRQS_PER_CPU NR_IRQS +#endif + /* * The hardirq mask has to be large enough to have space for potentially * all IRQ sources in the system nesting on a single CPU. */ -#if (1 << HARDIRQ_BITS) < NR_IRQS +#if (1 << HARDIRQ_BITS) < MAX_HARDIRQS_PER_CPU # error HARDIRQ_BITS is too low! #endif #endif _ Patches currently in -mm which might be from ebiederm@xxxxxxxxxxxx are origin.patch git-scsi-misc.patch insert-local-and-io-apics-into-resource-map.patch i386-distinguish-absolute-symbols.patch i386-define-__pa_symbol.patch i386-setupc-reserve-kernel-memory-starting-from-_text.patch i386-config_physical_start-cleanup.patch make-linux-elfh-safe-to-be-included-in-assembly-files.patch elf-add-elfosabi_standalone-to-elfh.patch kallsyms-generate-relocatable-symbols.patch i386-relocatable-kernel-support.patch genirq-clean-up-irq-flow-type-naming.patch pidhash-temporary-debug-checks.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html