drm_mm_for_...ode_in_range(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so this is the drm_mm_for_...ode_in_range(9) page from the Kernel API Manual, and the actual star of the show is drm_mm_for_each_node_in_range β€” an iterator to walk over a range of allocated nodes. periodt. ✨

🌸 SYNOPSIS 🌸

drm_mm_for_each_node_in_range (node__ , mm__ , start__ , end__ );

πŸŽ€ ARGUMENTS πŸŽ€

  • node__ β€” the drm_mm_node structure to assign to in each iteration step. this is the little guy getting updated every loop, bestie.
  • mm__ β€” the drm_mm allocator to walk. it's giving main character allocator energy.
  • start__ β€” starting offset; the first node will overlap this.
  • end__ β€” ending offset; the last node will start before this (but may overlap). yes, overlap is allowed, no cap.

πŸ¦‹ DESCRIPTION πŸ¦‹

This iterator walks over all nodes in the range allocator that lie between start and end. It is implemented similarly to list_for_each, but using the internal interval tree to accelerate the search for the starting node, and so it is not safe against removal of elements. do not be out here deleting stuff mid-walk, bestie 😭

It assumes that end is within (or is the upper limit of) the drm_mm allocator.

🚨 warning time: if [start, end] are beyond the range of the drm_mm, the iterator may walk over the special _unallocated_ drm_mm.head_node, and may even continue indefinitely. that's the β€œwhy is my loop not ending” vibe check nobody wants πŸ’€

🌈 SEE ALSO 🌈


okay that's the whole page, bestie 🫢 β€” source/version ./include/drm, date October 2026, and page title drm_mm_for_...ode_in_range(9). go walk ur nodes responsibly πŸ’…βœ¨

πŸ“¦ where this page comes from