Changelog: v4: - Addressed review comments from David Rientjes - Added Acks. v3: - Resolved a regression introduced in previous version, where page collapse in khugepaged would cause crash on boot. - Addressed comments from Anshuman Khandual regarding commit log. v2: - Addressed simplification comments from Wei Xu - Added Review-by/Tested-by's from Zi Yan and Wei Xu Two fixes: mm/debug_vm_pgtable: remove pte entry from the page table - remove a pte entry from the page table at the end of debug_vm_pgtable pte test mm/khugepaged: unify collapse pmd clear, flush and free mm/page_table_check: check entries at pmd levels - check pmd level in page_table_check for PTE regular entries prior to freeing. repro.c: https://gist.github.com/soleen/fdcd501d5df103976245fe84e9535087 config: https://gist.github.com/soleen/8a56f923c2fea9ce9c75b4e2517d4162 qemu_script: https://gist.github.com/soleen/f4be4795826b7ab1a51ae659582e179c base image: https://storage.googleapis.com/syzkaller/wheezy.img https://storage.googleapis.com/syzkaller/wheezy.img.key Small cleanup: mm/page_table_check: use unsigned long for page counters and cleanup Previous versions: v1: https://lore.kernel.org/all/20220120042513.1648831-1-pasha.tatashin@xxxxxxxxxx v2: https://lore.kernel.org/all/20220120191250.2671557-1-pasha.tatashin@xxxxxxxxxx v3: https://lore.kernel.org/all/20220126060514.1574935-1-pasha.tatashin@xxxxxxxxxx Pasha Tatashin (4): mm/debug_vm_pgtable: remove pte entry from the page table mm/page_table_check: use unsigned long for page counters and cleanup mm/khugepaged: unify collapse pmd clear, flush and free mm/page_table_check: check entries at pmd levels include/linux/page_table_check.h | 18 ++++++++++ mm/debug_vm_pgtable.c | 2 ++ mm/khugepaged.c | 37 ++++++++++++--------- mm/page_table_check.c | 56 ++++++++++++++++---------------- 4 files changed, 69 insertions(+), 44 deletions(-) -- 2.35.0.rc0.227.g00780c9af4-goog