With the Linux kernel now limiting 32-bit systems to 4GB of memory even with the “HIGHMEM” Kconfig option, an issue was uncovered where if the system was still populated with more memory than addressable by 32-bit systems, the kernel would crash. With the Linux 6.15-rc4 kernel due out on Sunday, this issue will be addressed.
Due to a clean-up of the HIGHMEM code in Linux 6.15, it turns out 32-bit systems in some configurations would end up crashing after hitting the first page above 4GB due to being unallocated.
The fix set to be merged this weekend to Linux Git will now ensure such memory blocks are discarded for high memory not addressable now by 32-bit systems.
” – Fix 32-bit kernel boot crash if passed physical memory with more than 32 address bits
– Fix Xen PV crash
– Work around build bug in certain limited build environments
– Fix CTEST instruction decoding in insn_decoder_test”
It’s a small but important fix to avoid kernel crashes with any remaining 32-bit systems out there that are populated with more than 4GB of memory. The fix is part of this week’s x86 fixes for Linux 6.15 Git ahead of the Linux 6.15-rc4 release due out tomorrow.