From 9c67d5b45a9e5a8d6d6b10bdfc84a4121af98917 Mon Sep 17 00:00:00 2001 From: "Eric W. Biederman" Date: Wed, 4 Oct 2006 02:16:49 -0700 Subject: [PATCH] --- yaml --- r: 38430 b: refs/heads/master c: 23d0b8b053391afe15c9667d80de77ca88e18b8b h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/asm-x86_64/hardirq.h | 3 +++ trunk/include/linux/hardirq.h | 7 ++++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index e87c091376e2..0e78f72f9868 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 323a01c50832749d23664954f91df6fc43e73975 +refs/heads/master: 23d0b8b053391afe15c9667d80de77ca88e18b8b diff --git a/trunk/include/asm-x86_64/hardirq.h b/trunk/include/asm-x86_64/hardirq.h index 64a65ce2f41f..95d5e090ed89 100644 --- a/trunk/include/asm-x86_64/hardirq.h +++ b/trunk/include/asm-x86_64/hardirq.h @@ -6,6 +6,9 @@ #include #include +/* 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 --git a/trunk/include/linux/hardirq.h b/trunk/include/linux/hardirq.h index 50d8b5744cf6..612472aaa79c 100644 --- a/trunk/include/linux/hardirq.h +++ b/trunk/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