On Wed, Dec 4, 2024 at 5:34 AM Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > > From: Arnd Bergmann <arnd@xxxxxxxx> > > The HIGHMEM64G support was added in linux-2.3.25 to support (then) > high-end Pentium Pro and Pentium III Xeon servers with more than 4GB of > addressing, NUMA and PCI-X slots started appearing. > > I have found no evidence of this ever being used in regular dual-socket > servers or consumer devices, all the users seem obsolete these days, > even by i386 standards: > > - Support for NUMA servers (NUMA-Q, IBM x440, unisys) was already > removed ten years ago. > > - 4+ socket non-NUMA servers based on Intel 450GX/450NX, HP F8 and > ServerWorks ServerSet/GrandChampion could theoretically still work > with 8GB, but these were exceptionally rare even 20 years ago and > would have usually been equipped with than the maximum amount of > RAM. > > - Some SKUs of the Celeron D from 2004 had 64-bit mode fused off but > could still work in a Socket 775 mainboard designed for the later > Core 2 Duo and 8GB. Apparently most BIOSes at the time only allowed > 64-bit CPUs. > > - In the early days of x86-64 hardware, there was sometimes the need > to run a 32-bit kernel to work around bugs in the hardware drivers, > or in the syscall emulation for 32-bit userspace. This likely still > works but there should never be a need for this any more. > > Removing this also drops the need for PHYS_ADDR_T_64BIT and SWIOTLB. > PAE mode is still required to get access to the 'NX' bit on Atom > 'Pentium M' and 'Core Duo' CPUs. 8GB of memory is still useful for 32-bit guest VMs. Brian Gerst