OpenCloudOS-Kernel/arch/sh/mm
Naoya Horiguchi c177c81e09 hugetlb: restrict hugepage_migration_support() to x86_64
Currently hugepage migration is available for all archs which support
pmd-level hugepage, but testing is done only for x86_64 and there're
bugs for other archs.  So to avoid breaking such archs, this patch
limits the availability strictly to x86_64 until developers of other
archs get interested in enabling this feature.

Simply disabling hugepage migration on non-x86_64 archs is not enough to
fix the reported problem where sys_move_pages() hits the BUG_ON() in
follow_page(FOLL_GET), so let's fix this by checking if hugepage
migration is supported in vma_migratable().

Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Reported-by: Michael Ellerman <mpe@ellerman.id.au>
Tested-by: Michael Ellerman <mpe@ellerman.id.au>
Acked-by: Hugh Dickins <hughd@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: David Miller <davem@davemloft.net>
Cc: <stable@vger.kernel.org>	[3.12+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-06-04 16:53:51 -07:00
..
Kconfig memblock: kill "config MAX_ACTIVE_REGIONS" 2013-04-18 13:03:53 +10:00
Makefile sh64: Fix up caller-save register settings for fast-path. 2012-05-14 16:46:07 +09:00
alignment.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
asids-debugfs.c sh: provide generic arch_debugfs_dir. 2010-09-24 04:04:26 +09:00
cache-debugfs.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
cache-sh2.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
cache-sh2a.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
cache-sh3.c sh: Mass ctrl_in/outX to __raw_read/writeX conversion. 2010-01-26 12:58:40 +09:00
cache-sh4.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
cache-sh5.c tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
cache-sh7705.c sh: Assume new page cache pages have dirty dcache lines. 2010-12-01 15:39:51 +09:00
cache-shx3.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
cache.c sh: prefix sh-specific "CCR" and "CCR2" by "SH_" 2014-03-04 07:55:49 -08:00
consistent.c SH: adapt for dma_map_ops changes 2012-03-28 16:36:37 +02:00
extable_32.c sh: Split out extable.c _32 and _64 variants. 2008-01-28 13:18:44 +09:00
extable_64.c sh: comment tidying for sh64->sh migration. 2008-01-28 13:18:58 +09:00
fault.c arch: mm: pass userspace fault flag to generic fault handler 2013-09-12 15:38:01 -07:00
flush-sh4.c sh: fix up fallout from system.h disintegration. 2012-03-30 19:29:57 +09:00
gup.c sh: lockless get_user_pages_fast() 2010-10-27 16:43:08 +09:00
hugetlbpage.c hugetlb: restrict hugepage_migration_support() to x86_64 2014-06-04 16:53:51 -07:00
init.c mm: use pgdat_end_pfn() to simplify the code in arch 2013-11-13 12:09:03 +09:00
ioremap.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ioremap_fixed.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
kmap.c sh: Assume new page cache pages have dirty dcache lines. 2010-12-01 15:39:51 +09:00
mmap.c Merge branch 'akpm' (Andrew's patchbomb) 2012-12-11 18:05:37 -08:00
nommu.c sh: stub __flush_tlb_global() definition for nommu. 2010-08-16 14:53:01 +09:00
numa.c lmb: rename to memblock 2010-07-14 17:14:00 +10:00
pgtable.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pmb.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
sram.c sh: fix up fallout from system.h disintegration. 2012-03-30 19:29:57 +09:00
tlb-debugfs.c sh: provide generic arch_debugfs_dir. 2010-09-24 04:04:26 +09:00
tlb-pteaex.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
tlb-sh3.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
tlb-sh4.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
tlb-sh5.c sh: delete __cpuinit usage from all sh files 2013-07-14 19:36:53 -04:00
tlb-urb.c sh: update the TLB replacement counter for entry wiring. 2010-03-26 11:37:16 +09:00
tlbex_32.c sh: Enable shared page fault handler for _32/_64. 2012-05-14 15:33:28 +09:00
tlbex_64.c sh64: Set additional fault code values. 2012-05-14 17:46:49 +09:00
tlbflush_32.c sh: Provide a global TLB flush for U/I-TLB clear. 2010-07-02 15:44:09 +09:00
tlbflush_64.c sh64: Migrate to __update_tlb() API. 2012-05-14 15:52:28 +09:00
uncached.c sh: nommu: use 32-bit phys mode. 2010-11-04 12:32:24 +09:00