kernel_optimize_test/arch/mips
Will Deacon 5d3a551c28 mm: hugetlb: add arch hook for clearing page flags before entering pool
The core page allocator ensures that page flags are zeroed when freeing
pages via free_pages_check.  A number of architectures (ARM, PPC, MIPS)
rely on this property to treat new pages as dirty with respect to the data
cache and perform the appropriate flushing before mapping the pages into
userspace.

This can lead to cache synchronisation problems when using hugepages,
since the allocator keeps its own pool of pages above the usual page
allocator and does not reset the page flags when freeing a page into the
pool.

This patch adds a new architecture hook, arch_clear_hugepage_flags, so
that architectures which rely on the page flags being in a particular
state for fresh allocations can adjust the flags accordingly when a page
is freed into the pool.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Cc: Michal Hocko <mhocko@suse.cz>
Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-09 16:22:24 +09:00
..
alchemy MIPS: MTX-1: Add udelay to mtx1_pci_idsel 2012-08-17 10:57:27 +02:00
ar7 arch: Use eth_random_addr 2012-07-16 22:39:25 -07:00
ath79 MIPS: ath79: Use correct IRQ number for the OHCI controller on AR7240 2012-08-17 10:57:27 +02:00
bcm47xx MIPS: BCM47xx: Fix BCMA_DRIVER_PCI_HOSTMODE config dependencies 2012-07-19 11:23:43 +02:00
bcm63xx sections: fix section conflicts in arch/mips 2012-10-06 03:04:39 +09:00
boot MIPS: Enable vmlinuz for JZ4740 2012-07-23 13:56:21 +01:00
cavium-octeon Merge 3.6-rc6 into tty-next 2012-09-16 17:31:36 -07:00
cobalt MIPS: Mark cascade and low level interrupts IRQF_NO_THREAD 2011-09-21 17:52:15 +02:00
configs netfilter: remove xt_NOTRACK 2012-09-03 13:36:40 +02:00
dec MIPS: DEC: use IS_ENABLED() 2012-07-23 13:55:54 +01:00
emma Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
fw MIPS: Remove all -Wall and almost all -Werror usage from arch/mips. 2012-05-21 15:09:36 +01:00
include mm: hugetlb: add arch hook for clearing page flags before entering pool 2012-10-09 16:22:24 +09:00
jazz Merge branch 'next/generic' into mips-for-linux-next 2012-01-11 15:41:47 +01:00
jz4740 MIPS: JZ4740: reset: Initialize hibernate wakeup counters. 2012-07-23 13:56:20 +01:00
kernel Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2012-10-08 07:56:10 +09:00
lantiq MIPS: Lantiq: Platform specific CLK fixup 2012-08-01 17:58:09 +02:00
lasat Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
lib MIPS: Unify memcpy.S and memcpy-inatomic.S 2012-07-23 13:55:55 +01:00
loongson MIPS: Loongson 2: Sort out clock managment. 2012-08-01 18:10:06 +02:00
loongson1 MIPS: Loongson 1: more clk support and add select HAVE_CLK 2012-08-01 17:59:23 +02:00
math-emu Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
mipssim Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
mm MIPS: mm: Add compound tail page _mapcount when mapped 2012-08-27 16:10:21 +02:00
mti-malta Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2012-09-22 12:47:53 -07:00
netlogic Merge branches 'next/generic', 'next/alchemy', 'next/bcm63xx', 'next/cavium', 'next/jz4740', 'next/lantiq', 'next/loongson1b' and 'next/netlogic' into mips-for-linux-next 2012-07-25 16:37:46 +02:00
oprofile Merge branches 'next/generic', 'next/alchemy', 'next/bcm63xx', 'next/cavium', 'next/jz4740', 'next/lantiq', 'next/loongson1b' and 'next/netlogic' into mips-for-linux-next 2012-07-25 16:37:46 +02:00
pci sections: fix section conflicts in arch/mips 2012-10-06 03:04:39 +09:00
pmc-sierra PCI changes for the 3.6 merge window: 2012-07-24 16:17:07 -07:00
pnx833x MIPS: PNX833x: use IS_ENABLED() macro 2012-07-23 13:55:53 +01:00
pnx8550 MIPS: irq: Remove IRQF_DISABLED 2011-12-07 22:03:45 +00:00
power
powertv Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2012-07-24 10:01:50 -07:00
rb532 - More robust parsing especially of xattr data in JFFS2 2012-06-01 16:55:42 -07:00
sgi-ip22 Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
sgi-ip27 mips: zero out pg_data_t when it's allocated 2012-07-31 18:42:49 -07:00
sgi-ip32 Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
sibyte documentation: remove references to cpu_*_map. 2012-03-29 15:38:31 +10:30
sni serial: Add note about migration to driver SCCNXP 2012-09-05 13:24:40 -07:00
txx9 MIPS: txx9: Fix redefinition of clk_* by adding select HAVE_CLK 2012-08-01 17:59:15 +02:00
vr41xx Disintegrate asm/system.h for MIPS 2012-03-28 18:30:02 +01:00
wrppmc
Kbuild
Kbuild.platforms MIPS: Loongson 1B: Add board support 2012-07-25 16:17:24 +02:00
Kconfig Kconfig: clean up the long arch list for the DEBUG_KMEMLEAK config option 2012-10-09 16:22:14 +09:00
Kconfig.debug Fix typo in various Kconfig file 2012-04-16 14:40:08 +02:00
Makefile kbuild: Fix gcc -x syntax 2012-10-03 09:03:24 +02:00