Messages in this thread | | | Date | Tue, 08 Apr 2008 07:56:01 -0700 | From | Mike Travis <> | Subject | Re: [PATCH 1/2] boot: increase stack size for kernel boot loader decompressor |
| |
Ingo Molnar wrote: > * Alexander van Heukelum <heukelum@mailshack.com> wrote: > >> I did see that the malloc space that the inflate code is using is >> taken from _after_ the end of the bss. I don't see how this is >> protected from being used/overwritten. Changing the stack size changes >> the memory layout a bit... maybe you were so unlucky to create a >> vmlinux image that was just barely smaller than some threshold and >> increasing the stack size made the decompression/relocation area be >> located somewhere else? >> >> Test patch follows. > > that's a really interesting theory. > > FWIIW, i've been booting allyesconfig bzImages for a long time (with > only minimal amount of drivers disabled - mostly old ISA ones that > assume the presence of the real hardware), and they boot and work fine > on both 32-bit and 64-bit typical whitebox PCs. That means huge bzImages > that decompresses into a ~41 MB kernel image. I'd expect that to be a > rather severe test of the decompressor. > > Ingo
Well admittedly, I did discover this problem way early in booting up a 4k NR_CPU kernel (obviously ;-). Once it booted, I haven't revisited that problem again. I wonder if it's a pathological case of a single bitstream that causes expansion instead of compression? Note I was using the akpm2 config script with NR_CPUS=4096 and NODES_SHIFT=9 (plus some other tweaks specific to our AMD and Intel boxes.)
Thanks, Mike
| |