On Sun, Nov 6, 2016 at 6:11 PM, STeve Andre' <and...@msu.edu> wrote: > On 11/06/16 20:35, Philip Guenther wrote: >> >> On Sun, Nov 6, 2016 at 4:42 PM, Friedrich Locke >> <friedrich.lo...@gmail.com> wrote: >> ... >>> >>> Does OBSD "see" all the 96*128G memory available ? >> >> >> We only allocate a single PML4 slot for the direct map on amd64, so >> it's currently limited to seeing 2^39 == 512GB. >> >> To expand that, the size and base-slot/address of the direct map >> really need to be made variable, based on the number of physical >> address bits supported by the CPU (as found by CPUID), preferably then >> clamped by the range of the actual memory installed, and then set up >> in locore.S and pmap.c > > Thanks for the explanation of the memory limit. I'm not needing a > system with more than 512G yet, but how much of a project would it > be to dynamically expand to whatever?
Meh, not large. Simply doubling the space supported to 1TB would be an easy first step and -- given someone with a machine to test it -- should work out any kinks in the use of the direct map. 40 physical bits in the professed default for long mode, so it's really what the default should be. Doing the second step to full dynamic would then be about getting the ASM right when values are not longer constant. Philip Guenther