linux/arch
Oscar Salvador 8e2df191ae x86/vmemmap: drop handling of 4K unaligned vmemmap range
Patch series "Cleanup and fixups for vmemmap handling", v6.

This series contains cleanups to remove dead code that handles unaligned
cases for 4K and 1GB pages (patch#1 and patch#2) when removing the vemmmap
range, and a fix (patch#3) to handle the case when two vmemmap ranges
intersect the same PMD.

This patch (of 4):

remove_pte_table() is prepared to handle the case where either the start
or the end of the range is not PAGE aligned.  This cannot actually happen:

__populate_section_memmap enforces the range to be PMD aligned, so as long
as the size of the struct page remains multiple of 8, the vmemmap range
will be aligned to PAGE_SIZE.

Drop the dead code and place a VM_BUG_ON in vmemmap_{populate,free} to
catch nasty cases.  Note that the VM_BUG_ON is placed in there because
vmemmap_{populate,free= } is the gate of all removing and freeing page
tables logic.

Link: https://lkml.kernel.org/r/20210309214050.4674-1-osalvador@suse.de
Link: https://lkml.kernel.org/r/20210309214050.4674-2-osalvador@suse.de
Signed-off-by: Oscar Salvador <osalvador@suse.de>
Suggested-by: David Hildenbrand <david@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
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: Michal Hocko <mhocko@kernel.org>
Cc: Zi Yan <ziy@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-04-30 11:20:38 -07:00
..
alpha Kbuild updates for v5.13 2021-04-29 14:24:39 -07:00
arc
arm mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
arm64 mm/memtest: add ARCH_USE_MEMTEST 2021-04-30 11:20:36 -07:00
csky mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
h8300
hexagon
ia64 ia64: module: fix symbolizer crash on fdescr 2021-04-30 11:20:35 -07:00
m68k \n 2021-04-29 10:51:29 -07:00
microblaze Microblaze patches for 5.13-rc1 2021-04-29 11:36:47 -07:00
mips mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
nds32 nds32: flush_dcache_page: use page_mapping_file to avoid races with swapoff 2021-04-09 14:54:23 -07:00
nios2 mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
openrisc
parisc \n 2021-04-29 10:51:29 -07:00
powerpc mm/memtest: add ARCH_USE_MEMTEST 2021-04-30 11:20:36 -07:00
riscv riscv: keep interrupts disabled for BREAKPOINT exception 2021-04-15 21:32:40 -07:00
s390 Networking changes for 5.13. 2021-04-29 11:57:23 -07:00
sh mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
sparc mm: move page_mapping_file to pagemap.h 2021-04-30 11:20:37 -07:00
um printk changes for 5.13 2021-04-27 18:09:44 -07:00
x86 x86/vmemmap: drop handling of 4K unaligned vmemmap range 2021-04-30 11:20:38 -07:00
xtensa mm/memtest: add ARCH_USE_MEMTEST 2021-04-30 11:20:36 -07:00
.gitignore
Kconfig Kbuild updates for v5.13 2021-04-29 14:24:39 -07:00