Re: [PATCH] x86_64: resize NR_IRQS for large machines (re-submit)

From: Ingo Molnar
Date: Wed Mar 26 2008 - 17:24:55 EST



* Alan Mayer <ajm@xxxxxxx> wrote:

> On machines with very large numbers of cpus, tables that are
> dimensioned by NR_IRQS get very large, especially the irq_desc table.
> They are also very sparsely used. When the cpu count is >
> MAX_IO_APICS, use MAX_IO_APICS to set NR_IRQS, otherwise use NR_CPUS.

thanks Alan, applied this in place of the other patch.

this bit is still ugly:

> -#define NR_IRQS (NR_VECTORS + (32 *NR_CPUS))
> +#if NR_CPUS < MAX_IO_APICS
> +#define NR_IRQS (NR_VECTORS + (32 * NR_CPUS))
> +#else
> +#define NR_IRQS (NR_VECTORS + (32 * MAX_IO_APICS))
> +#endif
> #define NR_IRQ_VECTORS NR_IRQS

but it doesnt really depart from the current status quo of huge
[NR_IRQS] arrays either. Patches that make NR_IRQS a variable are
welcome :)

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/