aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/radix-tree/maple.c
diff options
context:
space:
mode:
authorMuchun Song <[email protected]>2023-03-23 02:50:03 +0000
committerAndrew Morton <[email protected]>2023-03-28 22:24:32 +0000
commit1f2803b2660f4b04d48d065072c0ae0c9ca255fd (patch)
tree2c910d40709646893afef8ee0e804d86b42b2790 /tools/testing/radix-tree/maple.c
parentmm: kfence: fix PG_slab and memcg_data clearing (diff)
downloadkernel-1f2803b2660f4b04d48d065072c0ae0c9ca255fd.tar.gz
kernel-1f2803b2660f4b04d48d065072c0ae0c9ca255fd.zip
mm: kfence: fix handling discontiguous page
The struct pages could be discontiguous when the kfence pool is allocated via alloc_contig_pages() with CONFIG_SPARSEMEM and !CONFIG_SPARSEMEM_VMEMMAP. This may result in setting PG_slab and memcg_data to a arbitrary address (may be not used as a struct page), which in the worst case might corrupt the kernel. So the iteration should use nth_page(). Link: https://lkml.kernel.org/r/[email protected] Fixes: 0ce20dd84089 ("mm: add Kernel Electric-Fence infrastructure") Signed-off-by: Muchun Song <[email protected]> Reviewed-by: Marco Elver <[email protected]> Reviewed-by: Kefeng Wang <[email protected]> Cc: Alexander Potapenko <[email protected]> Cc: Dmitry Vyukov <[email protected]> Cc: Jann Horn <[email protected]> Cc: SeongJae Park <[email protected]> Cc: <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'tools/testing/radix-tree/maple.c')
0 files changed, 0 insertions, 0 deletions