pfnmap_untrack(9)
π pfnmap_untrack β kernel API manual, but make it make sense
Okay bestie, welcome to pfnmap_untrack(9), the little kernel function that's giving "cleanup crew" energy. β¨ It's the counterpart to tracking a pfn range β you tracked it, now let's untrack it. Iconic.
πΈ NAME πΈ
pfnmap_untrack β untrack a pfn range π
β¨ SYNOPSIS β¨
void pfnmap_untrack (unsigned long pfn , unsigned long size );
That's it. Two args, no return value. Lowkey the most chill signature ever. π¦
π«Ά ARGUMENTS π«Ά
pfnβ the start of the pfn range. This is where the party starts, fr fr. πsizeβ the size of the pfn range in bytes. Read that again: bytes, not pfns, not pages. Bytes. Don't get it twisted. π
π DESCRIPTION π
Untrack a pfn range previously tracked through pfnmap_track. That's the whole vibe β it's the undo button for tracking, no cap. You tracked it before, so now you untrack it. Periodt. π
π SEE ALSO π
Kernel file ./include/linux/pgtable.h β and honestly the whole friend group is here, so let's list them all because every single one of them ate:
lazy_mmu_mode_enable(9)lazy_mmu_mode_disable(9)__task_lazy_mmu_mode_pause(9)lazy_mmu_mode_pause(9)__task_lazy_mmu_mode_resume(9)lazy_mmu_mode_resume(9)pte_batch_hint(9)set_ptes(9)clear_young_dirty_ptes(9)get_and_clear_full_ptes(9)get_and_clear_ptes(9)clear_full_ptes(9)clear_ptes(9)clear_nonpresent_ptes(9)ptep_try_set(9)flush_tlb_before_set(9)wrprotect_ptes(9)clear_flush_young_ptes(9)test_and_clear_young_ptes(9)modify_prot_start_ptes(9)modify_prot_commit_ptes(9)pfnmap_setup_cachemode(9)pfnmap_track(9)β the other half of this situationship πpfnmap_setup_cachemode_pfn(9)
This page lives in ./include/linux and it's dated October 2026 β that's the source, the version, and the date all wrapped up with a bow. π Go untrack those ranges, bestie, you got this. ππβ
π¦ 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