linux/mm
Anshuman Khandual 08978fc3b0 mm/ptdump: split effective_prot() into level specific callbacks
Last argument in effective_prot() is u64 assuming pxd_val() returned value
(all page table levels) is 64 bit.  pxd_val() is very platform specific
and its type should not be assumed in generic MM.

Split effective_prot() into individual page table level specific callbacks
which accepts corresponding pxd_t argument instead and then the
subscribing platform (only x86) just derive pxd_val() from the entries as
required and proceed as earlier.

Link: https://lkml.kernel.org/r/20250407053113.746295-3-anshuman.khandual@arm.com
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-05-11 17:48:19 -07:00
..
damon mm/damon/core: simplify control flow in damon_register_ops() 2025-04-01 15:17:10 -07:00
kasan hardening fixes for v6.15-rc3 2025-04-18 13:20:20 -07:00
kfence kfence: skip __GFP_THISNODE allocations on NUMA systems 2025-02-01 03:53:26 -08:00
kmsan dma: kmsan: export kmsan_handle_dma() for modules 2025-03-05 21:36:14 -08:00
Kconfig Disable SLUB_TINY for build testing 2025-04-06 10:00:04 -07:00
Kconfig.debug mm: rename GENERIC_PTDUMP and PTDUMP_CORE 2025-03-17 00:05:32 -07:00
Makefile mm: rename GENERIC_PTDUMP and PTDUMP_CORE 2025-03-17 00:05:32 -07:00
backing-dev.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
balloon_compaction.c balloon_compaction: update the NR_BALLOON_PAGES state 2025-03-21 22:03:13 -07:00
bootmem_info.c mm/sparse: allow for alternate vmemmap section init at boot 2025-03-16 22:06:27 -07:00
cma.c mm/cma: report base address of single range correctly 2025-04-11 17:32:39 -07:00
cma.h mm/cma: using per-CMA locks to improve concurrent allocation performance 2025-03-21 22:03:10 -07:00
cma_debug.c mm, cma: support multiple contiguous ranges, if requested 2025-03-16 22:06:25 -07:00
cma_sysfs.c mm/cma: export total and free number of pages for CMA areas 2025-03-16 22:06:24 -07:00
compaction.c mm: page_alloc: tighten up find_suitable_fallback() 2025-05-11 17:48:18 -07:00
debug.c mm/debug: fix parameter passed to page_mapcount_is_type() 2025-05-11 17:48:17 -07:00
debug_page_alloc.c
debug_page_ref.c
debug_vm_pgtable.c mm: remove mk_huge_pte() 2025-05-11 17:48:04 -07:00
dmapool.c
dmapool_test.c
early_ioremap.c mm/early_ioremap: add null pointer checks to prevent NULL-pointer dereference 2025-01-13 22:40:59 -08:00
execmem.c execmem: add API for temporal remapping as RW and restoring ROX afterwards 2025-02-03 11:46:02 +01:00
fadvise.c
fail_page_alloc.c
failslab.c
filemap.c mm: fix filemap_get_folios_contig returning batches of identical folios 2025-04-11 17:32:40 -07:00
folio-compat.c mm: Remove grab_cache_page_write_begin() 2025-03-04 17:02:25 +00:00
gup.c mm/gup: fix wrongly calculated returned value in fault_in_safe_writeable() 2025-04-17 20:10:07 -07:00
gup_test.c
gup_test.h
highmem.c
hmm.c mm: allow compound zone device pages 2025-03-17 22:06:39 -07:00
huge_memory.c mm: add folio_mk_pmd() 2025-05-11 17:48:04 -07:00
hugetlb.c mm/compaction: use folio in hugetlb pathway 2025-05-11 17:48:08 -07:00
hugetlb_cgroup.c page_counter: track failcnt only for legacy cgroups 2025-03-17 00:05:35 -07:00
hugetlb_cma.c mm/hugetlb: move hugetlb CMA code in to its own file 2025-03-16 22:06:31 -07:00
hugetlb_cma.h mm/hugetlb: move hugetlb CMA code in to its own file 2025-03-16 22:06:31 -07:00
hugetlb_vmemmap.c mm, hugetlb: increment the number of pages to be reset on HVO 2025-04-17 20:10:08 -07:00
hugetlb_vmemmap.h mm/hugetlb: do pre-HVO for bootmem allocated pages 2025-03-16 22:06:29 -07:00
hwpoison-inject.c
init-mm.c mm: replace vm_lock and detached flag with a reference count 2025-03-16 22:06:20 -07:00
internal.h mm: page_alloc: tighten up find_suitable_fallback() 2025-05-11 17:48:18 -07:00
interval_tree.c
io-mapping.c
ioremap.c mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long 2025-03-16 22:06:23 -07:00
khugepaged.c mm: add folio_mk_pmd() 2025-05-11 17:48:04 -07:00
kmemleak.c mm: kmemleak: add support for dumping physical and __percpu object info 2025-03-16 22:06:08 -07:00
ksm.c mm/ksm: handle device-exclusive entries correctly in write_protect_page() 2025-03-16 22:05:58 -07:00
list_lru.c mm/list_lru: make the case where mlru is NULL as unlikely 2025-03-17 00:05:32 -07:00
maccess.c kasan: migrate copy_user_test to kunit 2024-11-11 00:26:44 -08:00
madvise.c mm/madvise: remove len parameter of madvise_do_behavior() 2025-03-17 22:07:04 -07:00
mapping_dirty_helpers.c
memblock.c memblock: Accept allocated memory before use in memblock_double_array() 2025-05-09 08:53:12 +03:00
memcontrol-v1.c mm: memcontrol: fix swap counter leak from offline cgroup 2025-04-17 20:10:06 -07:00
memcontrol-v1.h memcg: move do_memsw_account() to CONFIG_MEMCG_V1 2025-03-21 22:03:11 -07:00
memcontrol.c memcg: manually inline replace_stock_objcg 2025-05-11 17:48:12 -07:00
memfd.c mm/memfd: fix spelling and grammatical issues 2025-03-16 22:06:04 -07:00
memory-failure.c mm: memory-failure: enhance comments for return value of memory_failure() 2025-03-17 22:07:05 -07:00
memory-tiers.c
memory.c mm: add kernel-doc comment for free_pgd_range() 2025-05-11 17:48:14 -07:00
memory_hotplug.c mm/memory_hotplug: fix call folio_test_large with tail page in do_migrate_range 2025-04-01 15:17:12 -07:00
mempolicy.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
mempool.c
memremap.c device/dax: properly refcount device dax pages when mapping 2025-03-17 22:06:41 -07:00
memtest.c
migrate.c mm/migrate: fix sleep in atomic for large folios and buffer heads 2025-04-22 18:16:08 +02:00
migrate_device.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
mincore.c mm/mincore: improve performance by adding an unlikely hint 2025-03-16 22:06:32 -07:00
mlock.c mm: allow compound zone device pages 2025-03-17 22:06:39 -07:00
mm_init.c mm/page_alloc: fix race condition in unaccepted memory handling 2025-05-11 17:26:07 -07:00
mm_slot.h
mmap.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
mmap_lock.c mm: mmap_lock: optimize mmap_lock tracepoints 2025-01-13 22:40:34 -08:00
mmu_gather.c mm/mmu_gather: update comment on RCU freeing 2025-03-16 22:06:12 -07:00
mmu_notifier.c
mmzone.c
mprotect.c mm: convert folio_likely_mapped_shared() to folio_maybe_mapped_shared() 2025-03-17 22:06:46 -07:00
mremap.c mm/mremap: do not set vrm->vma NULL immediately prior to checking it 2025-04-01 15:17:09 -07:00
mseal.c mseal: remove can_do_mseal() 2025-01-13 22:40:51 -08:00
msync.c
nommu.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
numa.c mm/memblock: add memblock_alloc_or_panic interface 2025-01-25 20:22:38 -08:00
numa_emulation.c mm/fake-numa: allow later numa node hotplug 2025-01-25 20:22:29 -08:00
numa_memblks.c mm/fake-numa: allow later numa node hotplug 2025-01-25 20:22:29 -08:00
oom_kill.c mm/oom_kill: fix trivial typo in comment 2025-03-16 22:05:55 -07:00
page-writeback.c mm: fix ratelimit_pages update error in dirty_ratio_handler() 2025-05-11 17:48:01 -07:00
page_alloc.c mm: page_alloc: tighten up find_suitable_fallback() 2025-05-11 17:48:18 -07:00
page_counter.c page_counter: track failcnt only for legacy cgroups 2025-03-17 00:05:35 -07:00
page_ext.c mm: page_ext: add an iteration API for page extensions 2025-03-17 22:06:57 -07:00
page_frag_cache.c mm/page_alloc: export free_frozen_pages() instead of free_unref_page() 2025-01-13 22:40:31 -08:00
page_idle.c mm/page_idle: handle device-exclusive entries correctly in page_idle_clear_pte_refs_one() 2025-03-16 22:05:59 -07:00
page_io.c page_io: zswap: do not crash the kernel on decompression failure 2025-03-17 22:06:50 -07:00
page_isolation.c mm: page_isolation: avoid calling folio_hstate() without hugetlb_lock 2025-04-01 15:14:43 -07:00
page_owner.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
page_poison.c
page_reporting.c
page_reporting.h
page_table_check.c mm: page_table_check: use new iteration API 2025-03-17 22:06:57 -07:00
page_vma_mapped.c mm: make page_mapped_in_vma() hugetlb walk aware 2025-03-16 22:06:42 -07:00
pagewalk.c mm: pagewalk: add the ability to install PTEs 2024-11-11 00:26:44 -08:00
percpu-internal.h
percpu-km.c
percpu-stats.c
percpu-vm.c
percpu.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
pgalloc-track.h
pgtable-generic.c mm: add RCU annotation to pte_offset_map(_lock) 2024-12-18 19:04:43 -08:00
process_vm_access.c
pt_reclaim.c mm: pgtable: reclaim empty PTE page in madvise(MADV_DONTNEED) 2025-01-13 22:40:48 -08:00
ptdump.c mm/ptdump: split effective_prot() into level specific callbacks 2025-05-11 17:48:19 -07:00
readahead.c Revert "fanotify: disable readahead if we have pre-content watches" 2025-03-13 16:31:12 +01:00
rmap.c mm: stop maintaining the per-page mapcount of large folios (CONFIG_NO_PAGE_MAPCOUNT) 2025-03-17 22:06:48 -07:00
rodata_test.c mm/rodata_test: verify test data is unchanged, rather than non-zero 2025-01-13 22:40:38 -08:00
secretmem.c add a string-to-qstr constructor 2025-01-27 19:25:45 -05:00
shmem.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
shmem_quota.c
show_mem.c mm/show_mem: optimize si_meminfo_node by reducing redundant code 2025-05-11 17:48:08 -07:00
shrinker.c
shrinker_debug.c mm/shrinker: fix name consistency issue in shrinker_debugfs_rename() 2025-03-17 00:05:40 -07:00
shuffle.c
shuffle.h
slab.h Merge branch 'slab/for-6.15/kfree_rcu_tiny' into slab/for-next 2025-03-20 10:33:38 +01:00
slab_common.c A treewide hrtimer timer cleanup 2025-03-25 10:54:15 -07:00
slub.c mm, slab: clean up slab->obj_exts always 2025-04-24 19:19:40 +02:00
sparse-vmemmap.c mm/hugetlb: do pre-HVO for bootmem allocated pages 2025-03-16 22:06:29 -07:00
sparse.c drivers/base/memory: improve add_boot_memory_block() 2025-03-17 22:07:01 -07:00
swap.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
swap.h - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
swap_cgroup.c mm: swap_cgroup: remove double initialization of locals 2025-03-17 22:06:58 -07:00
swap_state.c mm, swap: simplify folio swap allocation 2025-03-16 22:06:44 -07:00
swapfile.c mm: swap: replace cluster_swap_free_nr() with swap_entries_put_[map/cache]() 2025-05-11 17:48:14 -07:00
truncate.c mm/truncate: use folio_split() in truncate operation 2025-03-17 22:07:00 -07:00
usercopy.c mm: security: Check early if HARDENED_USERCOPY is enabled 2025-02-28 11:51:31 -08:00
userfaultfd.c mm: add folio_mk_pte() 2025-05-11 17:48:03 -07:00
util.c Summary 2025-03-26 21:02:05 -07:00
vma.c mm/vma: add give_up_on_oom option on modify/merge, use in uffd release 2025-04-11 17:32:37 -07:00
vma.h mm/vma: add give_up_on_oom option on modify/merge, use in uffd release 2025-04-11 17:32:37 -07:00
vma_internal.h mm/vma: move brk() internals to mm/vma.c 2025-01-13 22:40:42 -08:00
vmalloc.c memcg: vmalloc: simplify MEMCG_VMALLOC updates 2025-05-11 17:48:10 -07:00
vmpressure.c
vmscan.c mm: vmscan: fix kswapd exit condition in defrag_mode 2025-04-17 20:10:09 -07:00
vmstat.c - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
workingset.c mm/mglru: rework workingset protection 2025-01-25 20:22:39 -08:00
zpdesc.h zsmalloc: cleanup headers includes 2025-05-11 17:48:16 -07:00
zpool.c zsmalloc: prefer the the original page's node for compressed data 2025-05-11 17:48:06 -07:00
zsmalloc.c zsmalloc: cleanup headers includes 2025-05-11 17:48:16 -07:00
zswap.c zsmalloc: prefer the the original page's node for compressed data 2025-05-11 17:48:06 -07:00