ptdesc_set_kernel(9)
π ptdesc_set_kernel(9) π
okay so you're reading the Kernel API Manual bestie, welcome, this one's a tiny little function but it's important, iykyk.
β¨ NAME β¨
ptdesc_set_kernel β marks a ptdesc as the kind that's used to map the kernel π
πΈ SYNOPSIS πΈ
void ptdesc_set_kernel (struct ptdesc *ptdesc );
π ARGUMENTS π
ptdescβ the ptdesc you're marking, that's it, that's the whole argument, love that for us π«Ά
π¦ DESCRIPTION π¦
so, kernel page tables? they lowkey need special handling, like they're the main character and everyone else is just living in their world π .
this function sets a flag, and the flag is basically telling the handling code: "hey bestie, this ptdesc is NOT for userspace" β¨. so the code that handles it knows exactly what vibe it's dealing with and doesn't get confused. no cap.
ngl it does one thing and it does it well. iconic behaviour fr fr π
π SEE ALSO π
- Kernel file
./include/linux/mm.h folio_page_idx(9)vma_flag_t(9)fault_flag_allow_retry_first(9)vma_kernel_pagesize(9)folio_order(9)folio_reset_order(9)folio_mapcount(9)folio_mapped(9)thp_order(9)thp_size(9)folio_get(9)folio_put(9)folio_put_refs(9)folios_put(9)vma_flags_is_cow_mapping(9)vma_is_cow_mapping(9)vma_desc_is_cow_mapping(9)folio_pfn(9)folio_mk_pte(9)folio_mk_pmd(9)folio_mk_pud(9)folio_maybe_dma_pinned(9)is_zero_page(9)is_zero_folio(9)folio_nr_pages(9)folio_next(9)folio_shift(9)folio_size(9)folio_maybe_mapped_shared(9)folio_expected_ref_count(9)zap_vma(9)ptdesc_address(9)ptdesc_clear_kernel(9)ptdesc_test_kernel(9)pagetable_alloc(9)pagetable_free(9)vma_lookup(9)vma_start_pgoff(9)vma_end_pgoff(9)vma_last_pgoff(9)vma_start_anon_pgoff(9)vma_end_anon_pgoff(9)vma_last_anon_pgoff(9)mmap_action_remap(9)mmap_action_remap_full(9)mmap_action_ioremap(9)mmap_action_ioremap_full(9)mmap_action_simple_ioremap(9)mmap_action_map_kernel_pages(9)mmap_action_map_kernel_pages_full(9)range_is_subset(9)range_in_vma(9)range_in_vma_desc(9)clear_pages(9)
and that's the whole page bestie, go forth and mark your ptdescs πβ¨ this lil gem lives in ./include/linux and dropped in October 2026 β periodt, 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