[PATCH] ppc44x: support for 256K PAGE_SIZE
Segher Boessenkool
segher at kernel.crashing.org
Tue Oct 23 23:59:31 EST 2007
>>>> The following patch adds support for 256KB PAGE_SIZE on ppc44x-
>>>> based boards.
>>>> The applications to be run on the kernel with 256KB PAGE_SIZE have
>>>> to be
>>>> built using the modified version of binutils, where the MAXPAGESIZE
>>>> definition is set to 0x40000 (as opposite to standard 0x10000).
>>>
>>> Have you measured the performance using a 64kB page size? If so, how
>>> does it compare with the 256kB page size?
>>
>> I was wondering about this as well? Isn't this technically in
>> violation of the ABI?
>
> No it isn't the violation.
>
> As stated in "System V ABI. PowerPC processor supplement"
> (on which the "Linux Standard Base Core Specification for PPC32"
> is based): " ... Virtual addresses and file offsets for the PowerPC
> processor family
> segments are congruent modulo 64 Kbytes (0x10000) or larger powers of
> 2...".
>
> So, 256 Kbytes is just a larger case.
If I understand you correctly, the only problem with existing binaries
is that the ELF segments are aligned to 64kB, but not necessarily to
256kB. Couldn't you handle this as a special case, for example by
mapping the "ends" of such an unaligned segment with normal 4kB pages?
That way, a new binutils isn't required to get a big part of the
benefit,
and importantly, existing shared library binaries will work with your
apps.
Segher
More information about the Linuxppc-dev
mailing list