summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorVernon Yang <yanglincheng@kylinos.cn>2026-09-09 10:58:02 +0800
committerAndrew Morton <akpm@linux-foundation.org>2026-10-06 17:38:56 -0700
commitba2f1f92ddfabd340c9248fd2380104f717ee8b1 (patch)
treee3494963ce91975776d692490359d9046b9f1e8a /include/linux
parent942c8ec27aa4ffc587511650718349964e1696e6 (diff)
mm: khugepaged: fix folio is used after pte_unmap_unlock()
After the page table lock has dropped, the folio can be freed concurrently. The trace_mm_khugepaged_scan_pmd() is left with a dangling folio pointer. So using the folio_pfn() before dropping the page table lock, closing use-after-free window. And other pre-existing bug, When the `for (i = 0; i < HPAGE_PMD_NR; i++)` iteration to terminate and the folio operation preceding is normal, but pfn will be incorrect. so we really only trace the PFN if it really was problematic. Link: https://lore.kernel.org/20260909025804.3233645-3-vernon2gm@gmail.com Fixes: 7d2eba0557c1 ("mm: add tracepoint for scanning pages") Signed-off-by: Vernon Yang <yanglincheng@kylinos.cn> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: David Hildenbrand (Arm) <david@kernel.org> Acked-by: Lorenzo Stoakes (ARM) <ljs@kernel.org> Cc: Barry Song <baohua@kernel.org> Cc: Dev Jain <dev.jain@arm.com> Cc: Lance Yang <lance.yang@linux.dev> Cc: Ryan Roberts <ryan.roberts@arm.com> Cc: Zach O'Keefe <zokeefe@google.com> Cc: <stable@vger.kernel.org>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions