Messages in this thread | ![/](/images/icornerl.gif) | | Date | Tue, 25 Aug 2020 20:34:02 +0200 | From | Borislav Petkov <> | Subject | Re: [PATCH] x86/mce: Increase maximum number of banks to 64 |
| |
On Mon, Aug 24, 2020 at 10:11:05AM -0500, Yazen Ghannam wrote: > Thanks. Yeah, they're identical: > text data bss dec hex filename > 15710076 13519306 5398528 34627910 2106146 vmlinux-32banks > 15710076 13519306 5398528 34627910 2106146 vmlinux-64banks
So I went crazy here and built allmodconfigs for hypothetical CPUs which support up to 4K MCA banks:
text data bss dec hex filename 24618040 27211906 35409988 87239934 5332cfe vmlinux-32banks 24618040 27211906 35409988 87239934 5332cfe vmlinux-64banks 24618040 27211906 35409988 87239934 5332cfe vmlinux-128banks
For the first three - up to 128 banks, the sizes don't change.
24618000 27216002 35401796 87235798 5331cd6 vmlinux-256banks
Somewhere after 128 banks, it grows the data section but by exactly 4K, i.e., one more page:
27216002 - 27211906 = 4096
The last page is not full, of course.
27216002 % 4096 = 2178 27211906 % 4096 = 2178
24618000 27220098 35401796 87239894 5332cd6 vmlinux-512banks
The same happens here.
27220098 - 27216002 = 4096 27220098 % 4096 = 2178
And so on:
24618000 27228290 35393604 87239894 5332cd6 vmlinux-1024banks 24618000 27244674 35377220 87239894 5332cd6 vmlinux-2048banks 24618000 27277442 35344452 87239894 5332cd6 vmlinux-4Kbanks
So what I think happens is, the first 128 banks fit within the same .data section page thus vmlinux doesn't increase.
I guess there might be a .config which could cause that data increase when the 32->64 banks move won't fit in the last .data page. It depends on where those ~2K you computed and I snipped, land.
But since most kernels are allmodconfig builds, I guess we should be fine.
So yeah, I guess we can take this one after you summarize the findings of this thread in v2's commit message. :-)
Thx.
-- Regards/Gruss, Boris.
https://people.kernel.org/tglx/notes-about-netiquette
| ![\](/images/icornerr.gif) |