summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorVernon Yang <yanglincheng@kylinos.cn>2026-09-09 10:58:03 +0800
committerAndrew Morton <akpm@linux-foundation.org>2026-10-06 17:38:56 -0700
commit9010383e71e6ce75fcd3c8f87133c8ce6c0e6ab4 (patch)
tree04098300624ae74ce6e6744c0318e7875e06f6c3 /include/linux
parentba2f1f92ddfabd340c9248fd2380104f717ee8b1 (diff)
mm: khugepaged: fix folio is used after folio_put/unlock()
On the rollback path, folio_put() has already dropped the last reference of new_folio. On the success path, new_folio is already unlocked and can be freed concurrently. The trace_mm_khugepaged_collapse_file() is left with a dangling folio pointer. So using the folio_pfn() before dropping the reference, closing use-after-free window. Link: https://lore.kernel.org/20260909025804.3233645-4-vernon2gm@gmail.com Fixes: 4c9473e87e75 ("mm/khugepaged: add tracepoint to collapse_file()") 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