walk_page_range_debug(9)
π¦ walk_page_range_debug(9) π¦
okay so bestie, real talk β this is a page from the Kernel API Manual, and it's the debugging-only cousin of walk_page_range. Buckle up π
β¨ NAME β¨
walk_page_range_debug β walk a range of pagetables not backed by a vma π
πΈ SYNOPSIS πΈ
int walk_page_range_debug (struct mm_struct *mm , unsigned long start ,
unsigned long end , const struct mm_walk_ops *ops , pgd_t *pgd , void
*private );
like, yes, that's a lot of arguments. she's high-maintenance. we love her anyway π
π ARGUMENTS π
mmβ themm_structrepresenting the target process of the page table walk. she's the main character of this whole operation β¨startβ start address of the virtual address range πendβ end address of the virtual address range πopsβ the operation to call during the walk. your callbacks live here π«Άpgdβ the pgd to walk, if it's different frommm->pgd. alternate route, iykyk πprivateβ private data for callbacks' usage. your little secret stash π
π DESCRIPTION π
So, this function is similar to walk_page_range, except β and this is the whole vibe β it can walk any page tables, even if they're not backed by VMAs. no cap. it just goes there π₯
Because 'unusual' entries may be walked, this function will also not lock the PTEs for the pte_entry callback. literally just out here raw-dogging the page tables π (affectionate).
β οΈ ok so important: this is for debugging purposes ONLY. do not build your whole thing on this. fr fr. it's giving "temporary" and "you will regret this in six months" π
Also the mmap write lock must be held. like, mandatory. hold it. don't ask questions πΈ
β SEE ALSO β
- Kernel file
./mm/pagewalk.c walk_page_range(9)walk_kernel_page_table_range(9)walk_page_mapping(9)folio_walk_start(9)
and that's the whole page, bestie π§ββοΈ go forth and debug responsibly. you got this πβ¨
sign-off ~ this iconic little number comes to you from ./mm, dated October 2026, and its title is walk_page_range_debug(9) in case you forgot already π mwah π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms