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

Jeremy Fitzhardinge
2008-06-06T08:00:18Z

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?

> It's not arbitrary at all.
I didn't say it was. That was the introduction to my explanation of why
I didn't think it was arbitrary. Of course, if there had been a comment
there explaining the rationale, I wouldn't have had to make one up...

J