android_kernel_xiaomi_sm8450/arch
Alexandre Ghiti a861bbce27 sh: advertise gigantic page support
Patch series "Fix free/allocation of runtime gigantic pages", v8.

This series fixes sh and sparc that did not advertise their gigantic page
support and then were not able to allocate and free those pages at
runtime.  It renames MEMORY_ISOLATION && COMPACTION || CMA condition into
the more accurate CONTIG_ALLOC, since it allows the definition of
alloc_contig_range function.

Finally, it then fixes the wrong definition of ARCH_HAS_GIGANTIC_PAGE
config that, without MEMORY_ISOLATION && COMPACTION || CMA defined, did
not allow architectures to free boottime allocated gigantic pages although
unrelated.

This patch (of 4):

sh actually supports gigantic pages and selecting ARCH_HAS_GIGANTIC_PAGE
allows it to allocate and free gigantic pages at runtime.

At least sdk7786_defconfig exposes such a configuration with huge pages of
64MB, pages of 4KB and MAX_ORDER = 11: HPAGE_SHIFT (26) - PAGE_SHIFT (12)
= 14 >= MAX_ORDER (11)

Link: http://lkml.kernel.org/r/20190327063626.18421-2-alex@ghiti.fr
Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Rich Felker <dalias@libc.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: "H . Peter Anvin" <hpa@zytor.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Andy Lutomirsky <luto@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Mike Kravetz <mike.kravetz@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-05-14 09:47:47 -07:00
..
alpha init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
arc init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
arm initramfs: move the legacy keepinitrd parameter to core code 2019-05-14 09:47:47 -07:00
arm64 initramfs: move the legacy keepinitrd parameter to core code 2019-05-14 09:47:47 -07:00
c6x init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
csky DMA mapping updates for 5.2 2019-05-09 08:40:55 -07:00
h8300 init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
hexagon hexagon: switch over to generic free_initmem() 2019-05-14 09:47:47 -07:00
ia64 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2019-05-07 22:03:58 -07:00
m68k initramfs: provide a generic free_initrd_mem implementation 2019-05-14 09:47:47 -07:00
microblaze init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
mips initramfs: poison freed initrd memory 2019-05-14 09:47:47 -07:00
nds32 init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
nios2 init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
openrisc init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
parisc initramfs: provide a generic free_initrd_mem implementation 2019-05-14 09:47:47 -07:00
powerpc initramfs: provide a generic free_initrd_mem implementation 2019-05-14 09:47:47 -07:00
riscv riscv: switch over to generic free_initmem() 2019-05-14 09:47:47 -07:00
s390 initramfs: poison freed initrd memory 2019-05-14 09:47:47 -07:00
sh sh: advertise gigantic page support 2019-05-14 09:47:47 -07:00
sparc init: free_initmem: poison freed init memory 2019-05-14 09:47:47 -07:00
um initramfs: provide a generic free_initrd_mem implementation 2019-05-14 09:47:47 -07:00
unicore32 init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
x86 mm/gup: change GUP fast to use flags rather than a write 'bool' 2019-05-14 09:47:46 -07:00
xtensa init: provide a generic free_initmem implementation 2019-05-14 09:47:47 -07:00
.gitignore
Kconfig initramfs: move the legacy keepinitrd parameter to core code 2019-05-14 09:47:47 -07:00