Hi, On Sat, Mar 27, 2021 at 10:13:22PM +0100, Mateusz Jonczyk wrote: > W dniu 27.03.2021 o 21:32, Mateusz Jonczyk pisze: > > Hello, > > > > There are some netbooks with Intel Atom processors that have 64-bit > > support disabled by BIOS. Theoretically, the processor supports 64-bit > > operation, but BIOS allows only 32-bit code to run. > > > > I wonder whether the 64-bit mode is really disabled in the CPU or only > > hidden in the CPUID flags. If the latter, the computer could be made to > > run a 64-bit kernel. > > > > Similarly, there are some Pentium M processors that support PAE > > (Physical Address Extensions), but do not show this in CPUID. They could > > be made to run distributions that require PAE with the "forcepae" kernel > > command line parameter. > > > > I would like to ask people with such netbooks to try to run a 64-bit kernel > > with this patch applied. > > > > When a patched 64-bit kernel is run in `qemu-system-i386`, the virtual > > machine restarts instantly. Without this patch in such a case a 64-bit > > kernel hangs indefinitely (inside .Lno_longmode in head_64.S). > > I have made two mistakes: > - I left commented out code, > - I have commented out lines with '#'. The code compiled though. > > Attaching corrected patch, please excuse me.
FWIW I tested on my ASUS 1025C which runs on an Atom N2600 forced to 32-bit. I had already tried in the past but wanted to give it a try again in case I'd have missed anything. Sadly it didn't work, I'm still getting the "requires an x86-64 CPU" message. Given these machines were really cheap, I've always suspected that they employ cheaper, low-grade CPUs, possibly having been subject to reduced tests where x86_64-specific parts were not even verified and might be defective. This may explain why they forcefully disable long mode there, but that's just speculation. Cheers, Willy