This is aim to reduce more space in page_alloc.c, also do some cleanup, no functional changes intended. This is based on next-20230515. v2: - drop move of __pageblock_pfn_to_page(), suggested by Huang Ying - move __show_mem() below the __show_free_areas() in patch4 - add new patch13 - add RB from Mike Kefeng Wang (13): mm: page_alloc: move mirrored_kernelcore into mm_init.c mm: page_alloc: move init_on_alloc/free() into mm_init.c mm: page_alloc: move set_zone_contiguous() into mm_init.c mm: page_alloc: collect mem statistic into show_mem.c mm: page_alloc: squash page_is_consistent() mm: page_alloc: remove alloc_contig_dump_pages() stub mm: page_alloc: split out FAIL_PAGE_ALLOC mm: page_alloc: split out DEBUG_PAGEALLOC mm: page_alloc: move mark_free_page() into snapshot.c mm: page_alloc: move pm_* function into power mm: vmscan: use gfp_has_io_fs() mm: page_alloc: move sysctls into it own fils mm: page_alloc: move is_check_pages_enabled() into page_alloc.c include/linux/fault-inject.h | 9 + include/linux/gfp.h | 15 +- include/linux/memory_hotplug.h | 3 - include/linux/mm.h | 87 ++-- include/linux/mmzone.h | 21 - include/linux/suspend.h | 9 +- kernel/power/main.c | 27 ++ kernel/power/power.h | 5 + kernel/power/snapshot.c | 52 +++ kernel/sysctl.c | 67 --- lib/Makefile | 2 +- lib/show_mem.c | 37 -- mm/Makefile | 4 +- mm/debug_page_alloc.c | 59 +++ mm/fail_page_alloc.c | 66 +++ mm/internal.h | 21 +- mm/mm_init.c | 32 ++ mm/page_alloc.c | 799 ++++----------------------------- mm/show_mem.c | 429 ++++++++++++++++++ mm/swapfile.c | 1 + mm/vmscan.c | 2 +- 21 files changed, 857 insertions(+), 890 deletions(-) delete mode 100644 lib/show_mem.c create mode 100644 mm/debug_page_alloc.c create mode 100644 mm/fail_page_alloc.c create mode 100644 mm/show_mem.c -- 2.35.3