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

From: H. Peter Anvin
Date: Fri Jul 03 2009 - 15:53:29 EST


Michael S. Zick wrote:
>
> Good point: (1<<(32-PAGE_SIFT)) would handle other than 4k pages.
>
> I just hardcoded it as a working example of the change from setting
> the page table size by design rather than numeric error.
>

As Jeremy pointed out, it's not wrong as written. gas by design uses
arbitrary-precision arithmetic, and even if it didn't, it would still be
correct: (1 << 32) would collapse to 0, so all the rest of the
calculations would still be right.

Any way you can dump out this value from the vmlinux file (nm vmlinux |
grep MAPPING_BEYOND_END) in both cases? What version of as/binutils do
you have installed?

> And yes, it has 512Mbyte of ram, so 1/2Mbyte page table sounds right to me.

/proc/cpuinfo, please?

-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/