drm_mm_for_each_hole(9)
π NAME β drm_mm_for_each_hole(9) π
okay so welcome to the Kernel API Manual, bestie β this page is about drm_mm_for_each_hole, and itβs literally an iterator to walk over all holes. Slay. π
β¨
β¨ SYNOPSIS β¨
drm_mm_for_each_hole (pos , mm , hole_start , hole_end );
π ARGUMENTS π
posβ adrm_mm_nodeused internally to track progress πmmβ thedrm_mmallocator to walk πΆββοΈhole_startβ aulongvariable to assign the hole start to on each iteration βhole_endβ aulongvariable to assign the hole end to on each iteration π
π¦ DESCRIPTION π¦
This iterator walks over all holes in the range allocator. It is implemented with list_for_each, so it is not save against removal of elements β yes, thatβs the wording, bestie, and the vibe check is very much βdo not expect removal-proof behavior.β π
entry is used internally and will not reflect a real drm_mm_node for the very first hole. Hence users of this iterator may not access it. No cap: do not go poking at entry. π
Implementation Note: We need to inlinelist_for_each_entryin order to be able to sethole_startandhole_endon each iteration while keeping the macro sane.
π SEE ALSO π
Kernel file: ./include/drm/drm_mm.h
enum drm_mm_insert_mode(9)struct drm_mm_node(9)struct drm_mm(9)struct drm_mm_scan(9)drm_mm_node_allocated(9)drm_mm_initialized(9)drm_mm_hole_follows(9)drm_mm_hole_node_start(9)drm_mm_hole_node_end(9)drm_mm_nodes(9)drm_mm_for_each_node(9)drm_mm_for_each_node_safe(9)drm_mm_insert_node_generic(9)drm_mm_insert_node(9)drm_mm_clean(9)drm_mm_for_each_node_in_range(9)drm_mm_scan_init(9)
okay bye bestie β this page is drm_mm_for_each_hole(9), coming at you from ./include/drm, October 2026. 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