On Wed, 2008-06-18 at 15:29 +1000, Paul Mackerras wrote:
> At present, if we have a kernel with a 64kB page size, and some
> process maps something that has to be mapped with 4kB pages (such as a
> cache-inhibited mapping on POWER5+, or the eHCA infiniband queue-pair
> pages), we change the process to use 4kB pages everywhere.  This hurts
> the performance of HPC programs that access eHCA from userspace.
> 
> With this patch, the kernel will only demote the slice(s) containing
> the eHCA or cache-inhibited mappings, leaving the remaining slices
> able to use 64kB hardware pages.
> 
> This also changes the slice_get_unmapped_area code so that it is
> willing to place a 64k-page mapping into (or across) a 4k-page slice
> if there is no better alternative, i.e. if the program specified
> MAP_FIXED or if there is not sufficient space available in slices that
> are either empty or already have 64k-page mappings in them.
> 
> Signed-off-by: Paul Mackerras <[EMAIL PROTECTED]>
> ---

Acked-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]>

(pending some torture testing of course :-)

Ben.


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to