diff options
author | Matthew Wilcox (Oracle) <willy@infradead.org> | 2022-04-06 08:41:39 -0400 |
---|---|---|
committer | Matthew Wilcox (Oracle) <willy@infradead.org> | 2022-04-07 09:43:41 -0400 |
commit | 83a8441f8d8e2e47e9bf2aead3aca625ab95d5ad (patch) | |
tree | 45c1465bb7ca23e8ff8520c827f39aca9cb5d0e4 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | 3e732ebf7316ac83e8562db7e64cc68aec390a18 (diff) |
mm/huge_memory: Avoid calling pmd_page() on a non-leaf PMD
Calling try_to_unmap() with TTU_SPLIT_HUGE_PMD and a folio that's not
mapped by a PMD causes oopses on arm64 because we now call page_folio()
on an invalid page. pmd_page() returns a valid page for non-leaf PMDs on
some architectures, so this bug escaped testing before now. Fix this bug
by delaying the call to pmd_page() until after we know the PMD is a leaf.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=215804
Fixes: af28a988b313 ("mm/huge_memory: Convert __split_huge_pmd() to take a folio")
Reported-by: Zorro Lang <zlang@redhat.com>
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Tested-by: Zorro Lang <zlang@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions