Re: [PATCH] x86: set PAE PHYSICAL_MASK_SHIFT to match 64-bit

Jan Beulich
2008-06-06T08:13:41Z

>>> Jeremy Fitzhardinge <jeremy@goop.org> 06.06.08 09:59 >>>
>Andi Kleen wrote:
>> Jeremy Fitzhardinge <jeremy@goop.org> writes:
>>
>>> The 46-bit mask used in 64-bit seems pretty arbitrary.
>>>
>>
>> The rationale for the 46 bits is that the kernel needs roughly 4x as
>> much virtual space as physical space and the virtual space is limited
>> to 48bits.
>>
>> To be exact 47 bits is always user space and the 47 bits remaining
>> for the kernel are split into half, with one half for the direct mapping
>> and the other half for random mappings. With some pushing you could
>> extend it to 46.5 bits or so, but beyond that you'll be in trouble.
>>
>
>Why's that? Is the issue the amount of memory needed for pagetables and
>page structures if you did have more than 2^48 bytes of physical memory?

No, it's the fact that the 1:1 mapping needs as much virtual space as
the physical range covered (including all holes).

Jan