range_in_vma_desc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… range_in_vma_desc(9)

okay so bestie, welcome to the Kernel API Manual β€” this one's a lil function from the kernel called range_in_vma_desc, and honestly? she's a vibe check in function form. πŸŽ€


✨ NAME ✨

range_in_vma_desc β€” is the specified [@start, @end) range a subset of the VMA described by @desc, a VMA descriptor?

like, that's literally the whole question she answers. is your range inside the VMA or not. no cap. πŸ’–


✨ SYNOPSIS ✨

bool range_in_vma_desc (const struct vm_area_desc *desc , unsigned long
start , unsigned long end );

she takes a desc, a start, and an end, and she gives you back a bool. that's it, that's the whole signature, icon behavior only. πŸ¦‹


✨ ARGUMENTS ✨

  • desc β€” the VMA descriptor against which we want to check [start, end). this is the reference point, the main character of the operation, the thing everything gets compared to. πŸ‘‘
  • start β€” the start of the range we wish to check. inclusive, bestie. she's in there starting at start. ⭐
  • end β€” the exclusive end of the range we wish to check. yeah, exclusive β€” so end itself is not part of the range, it's the wall right after it. classic half-open interval slay. πŸ’…

✨ RETURN ✨

true if [start, end) is a subset of [desc->start, desc->end), false otherwise.

that's it. true or false. she does not elaborate, she does not add a third option, she does not do "maybe". 🌸 strict subset-checking queen behavior, fr fr. πŸ”₯


✨ SEE ALSO ✨

kernel file ./include/linux/mm.h β€” and okay, breathe, because this list is LONG and every single one of these is staying, no skipping, no "etc." energy:

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_set_kernel(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), clear_pages(9)

like I said. the whole squad. no one gets left behind. 🫢


that's the page bestie!! this one came from the kernel file ./include/linux, dated October 2026, and that's genuinely the entire manual β€” short, sweet, and lowkey perfect. go check your ranges, stay hydrated, and remember: exclusive end means exclusive. mwah πŸ’œβœ¨πŸŽ€

πŸ“¦ where this page comes from