Re: [Bug Fix]: Do 32-bit table calculations in pre-processor

From: H. Peter Anvin
Date: Fri Jul 03 2009 - 15:19:57 EST


Michael S. Zick wrote:
>>
>> The PGTABLE reservation seems much too big. I think 1 page should be
>> sufficient for a system with large pages. Even if not, 0x6d000 is way
>> too large. And they symptoms of failing to reserve the initial
>> pagetable are pretty non-subtle.
>>
>
> Random system halts, deadlocks with interrupts disabled?
> Yup, that sounds familiar.
>
> If I ever get more than a stopped machine with a glowing power light;
> I will be certain to share.
>

Let's see... on a non-PSE system we may need one PDE and one PTE page
per 4 MB, up to 1 GB, for a total of 256 pages or 1 MB of memory, so in
that sense 0x6d000 (109 pages) doesn't sound at all unreasonable
(non-PSE system with 512 MB of RAM?)

However, we shouldn't have to do this kind of hacks with
MAPPING_BEYOND_END, and we *certainly* shouldn't do it by implicitly
hard-coding the value of PAGE_SHIFT.

-hpa

--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/