1. "mem=nopentium" is actually only supported on x86_32. On all other platforms, "mem=nopentium" is not recognized at all, and gets handled the same as "mem=blahblah" or any junk string: as if "mem=0" (zero) was specified. So on amd64 ...
2. Specifying "mem=0" (or any junk string, as above) surprisingly is not detected as being a nutty idea... the kernel dutifully configures itself with *zero* bytes of memory (!), resulting in the panic.
The attached patches correct the problem (I'll send them upstream).
Here's the fix:
1. "mem=nopentium" is actually only supported on x86_32. On all other platforms, "mem=nopentium" is not recognized at all, and gets handled the same as "mem=blahblah" or any junk string: as if "mem=0" (zero) was specified. So on amd64 ...
2. Specifying "mem=0" (or any junk string, as above) surprisingly is not detected as being a nutty idea... the kernel dutifully configures itself with *zero* bytes of memory (!), resulting in the panic.
The attached patches correct the problem (I'll send them upstream).