[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <19D0D50E9B1D0A40A9F0323DBFA04ACC023B0C86@USRV-EXCH4.na.uis.unisys.com>
Date: Mon, 7 Aug 2006 11:11:25 -0500
From: "Protasevich, Natalie" <Natalie.Protasevich@...SYS.com>
To: "Randy.Dunlap" <rdunlap@...otime.net>,
"Eric W. Biederman" <ebiederm@...ssion.com>
Cc: "Andrew Morton" <akpm@...l.org>, "Andi Kleen" <ak@...e.de>,
<linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] x86_64: Make NR_IRQS configurable in Kconfig
> > Currrently on a SMP system we can theoretically support
> > NR_CPUS*224 irqs. Unfortunately our data structures don't
> cope will
> > with that many irqs, nor does hardware typically provide
> that many irq
> > sources.
> >
> > With the number of cores starting to follow Moores law, and
> the apicid
> > limits being raised beyond an 8bit number trying to track
> our current
> > maximum with our current data structures would be fatal and
> wasteful.
> >
> > So this patch decouples the number of irqs we support from
> the number
> > of cpus. We can revisit this decision once someone reworks the
> > current data structures.
> >
> > Signed-off-by: Eric W. Biederman <ebiederm@...ssion.com>
> > ---
> > arch/x86_64/Kconfig | 13 +++++++++++++
> > include/asm-x86_64/irq.h | 3 ++-
> > 2 files changed, 15 insertions(+), 1 deletions(-)
> >
> > diff --git a/arch/x86_64/Kconfig b/arch/x86_64/Kconfig index
> > 7598d99..d744e5b 100644
> > --- a/arch/x86_64/Kconfig
> > +++ b/arch/x86_64/Kconfig
> > @@ -384,6 +384,19 @@ config NR_CPUS
> > This is purely to save memory - each supported CPU requires
> > memory in the static kernel configuration.
> >
> > +config NR_IRQS
> > + int "Maximum number of IRQs (224-4096)"
> > + range 256 4096
> > + depends on SMP
> > + default "4096"
> > + help
> > + This allows you to specify the maximum number of IRQs
> which this
> > + kernel will support. Current maximum is 4096 IRQs as that
> > + is slightly larger than has observed in the field.
> > +
> > + This is purely to save memory - each supported IRQ requires
> > + memory in the static kernel configuration.
>
> If (a) "nor does hardware typically provide that many irq sources"
> and (b) "This is purely to save memory", why is the default
> 4096 instead of something smaller?
>
4k being a humble maximum is definitely a relative term here, but on the
system with "only" 64 or 128 processors the cpu*224 would be much higher
:) However, maybe CONFIG_TINY that Andi suggested would leverage this
number also. What do you think, Eric?
--Natalie
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists