Re: [PATCH] x86_64: Make NR_IRQS configurable in Kconfig

From: H. Peter Anvin
Date: Mon Aug 07 2006 - 13:50:10 EST


Eric W. Biederman wrote:
"H. Peter Anvin" <hpa@xxxxxxxxx> writes:

Eric W. Biederman wrote:
a) Because I would like to flush out bugs.
b) Because I want a default that works for everyone.
c) Because with MSI we have a potential for large irq counts on most systems.
d) Because anyone who disagrees with me can send a patch and fix
the default.
e) Because with the default number of cpus we can very close to needing
this many irqs in the worst case.
f) This is much better than previous to my patch and setting NR_CPUS=255
and getting 8K IRQS.
g) Because I probably should have been more inventive than copying the
NR_IRQS text, but when I did the wording sounded ok to me.

Why not simply reserve 224*NR_CPUS IRQs? If you have 256 CPUs allocating 64K
IRQs should hardly matter :)

Well there is this little matter of 224*NR_CPUS*NR_CPUS counters at that point
that I think would be prohibitive for most sane people. Taking 224K of per cpu
memory in 256 different per cpu areas.

Still what is 56MB when you have a terrabyte of RAM. :)


However, 99.99% of all systems have 16 or fewer CPU cores. Your solution with its proposed default eats more memory for any system with fewer than 19 CPUs.

Furthermore, you don't need 224*NR_CPUS*NR_CPUS counters. If an IRQ is only mapped into one CPU's space it can only be taken on that CPU, thus you only need 224*NR_CPUS counters.

-hpa
-
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/