android_kernel_xiaomi_sdm845/arch/powerpc/platforms
Paul Mackerras 3a8247cc2c powerpc: Only demote individual slices rather than whole process
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 <paulus@samba.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2008-07-01 11:27:57 +10:00
..
8xx [POWERPC] CPM: Always use new binding. 2008-04-17 01:01:40 -05:00
40x [POWERPC] 4xx: Create common ppc4xx_reset_system() in ppc4xx_soc.c 2008-04-02 20:44:56 -05:00
44x powerpc/4xx: Sam440ep support 2008-06-11 08:32:49 -04:00
52xx mpc52xx_gpio iomem annotations 2008-06-04 08:06:02 -07:00
82xx Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2008-04-21 15:50:49 -07:00
83xx powerpc/83xx: new board support: MPC8360E-RDK 2008-06-10 11:11:17 -05:00
85xx Merge branch 'linux-2.6' 2008-06-30 10:16:50 +10:00
86xx [POWERPC] 86xx: Enable MSI support for MPC8610HPCD board 2008-06-02 14:44:24 -05:00
512x [POWERPC] Remove unused CONFIG_WANT_DEVICE_TREE 2008-02-14 22:11:03 +11:00
cell powerpc/cell: Disable ptcal in case of crash kdump 2008-06-30 22:30:58 +10:00
chrp [POWERPC] Move xmon_irq() declaration into xmon.h 2008-05-14 22:31:54 +10:00
embedded6xx powerpc: Add C2K to configuration 2008-06-09 13:42:29 +10:00
iseries powerpc: use non-racy method for proc entries creation 2008-04-29 08:06:22 -07:00
maple [POWERPC] Fix sparse warnings in arch/powerpc/kernel 2008-05-14 22:31:59 +10:00
pasemi i2c: Switch pasemi to the new device/driver matching scheme 2008-05-18 20:49:40 +02:00
powermac [POWERPC] Move xmon_irq() declaration into xmon.h 2008-05-14 22:31:54 +10:00
prep [POWERPC] Split several platforms into their respective Kconfig file 2007-03-22 10:07:32 -05:00
ps3 [POWERPC] PS3: Fix memory hotplug 2008-05-23 16:15:29 +10:00
pseries powerpc/pseries: Call pseries_kexec_setup only on pseries 2008-06-30 22:30:57 +10:00
fsl_uli1575.c [POWERPC] Fix interrupt routing and setup of ULI M1575 on FSL boards 2007-08-17 13:22:16 -05:00
Kconfig [POWERPC] celleb: Move the files for celleb base support 2008-04-24 21:08:13 +10:00
Kconfig.cputype powerpc: Only demote individual slices rather than whole process 2008-07-01 11:27:57 +10:00
Makefile [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00