[PATCH 1/6] powerpc: Make NR_IRQS a CONFIG option
Grant Likely
grant.likely at secretlab.ca
Thu Oct 15 05:59:51 EST 2009
On Tue, Oct 13, 2009 at 11:44 PM, Michael Ellerman
<michael at ellerman.id.au> wrote:
> The irq_desc array consumes quite a lot of space, and for systems
> that don't need or can't have 512 irqs it's just wasted space.
>
> The first 16 are reserved for ISA, so the minimum of 32 is really
> 16 - and no one has asked for more than 512 so leave that as the
> maximum.
Does it really make sense to have this as a user twiddlable value?
Especially when many users just don't have the background to know what
an appropriate value is here and will get it wrong? I believe your
sparse IRQ patch has a bigger impact anyway on systems where memory is
tight.
g.
>
> Signed-off-by: Michael Ellerman <michael at ellerman.id.au>
> ---
> arch/powerpc/Kconfig | 10 ++++++++++
> arch/powerpc/include/asm/irq.h | 4 ++--
> 2 files changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 10a0a54..2230e75 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -56,6 +56,16 @@ config IRQ_PER_CPU
> bool
> default y
>
> +config NR_IRQS
> + int "Number of virtual interrupt numbers"
> + range 32 512
> + default "512"
> + help
> + This defines the number of virtual interrupt numbers the kernel
> + can manage. Virtual interrupt numbers are what you see in
> + /proc/interrupts. If you configure your system to have too few,
> + drivers will fail to load or worse - handle with care.
> +
> config STACKTRACE_SUPPORT
> bool
> default y
> diff --git a/arch/powerpc/include/asm/irq.h b/arch/powerpc/include/asm/irq.h
> index bbcd1aa..b83fcc8 100644
> --- a/arch/powerpc/include/asm/irq.h
> +++ b/arch/powerpc/include/asm/irq.h
> @@ -34,8 +34,8 @@ extern atomic_t ppc_n_lost_interrupts;
> */
> #define NO_IRQ_IGNORE ((unsigned int)-1)
>
> -/* Total number of virq in the platform (make it a CONFIG_* option ? */
> -#define NR_IRQS 512
> +/* Total number of virq in the platform */
> +#define NR_IRQS CONFIG_NR_IRQS
>
> /* Number of irqs reserved for the legacy controller */
> #define NUM_ISA_INTERRUPTS 16
> --
> 1.6.2.1
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev
>
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
More information about the Linuxppc-dev
mailing list