STRUCT DRM_MSM_VM_BIND_OP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct drm_msm_vm_bind_op(9) πŸ¦‹

okay bestie, welcome to the Kernel API Manual β€” yes we're reading kernel headers for fun now, this is who we are πŸ’…


✨ NAME ✨

struct drm_msm_vm_bind_op β€” literally the bind/unbind op to run πŸŽ€


🌸 SYNOPSIS 🌸

struct drm_msm_vm_bind_op {
    __u32 op;
    __u32 handle;
    __u64 obj_offset;
    __u64 iova;
    __u64 range;
    __u32 flags;
    __u32 pad;
 };

look at her. seven fields. main character energy, no notes πŸ‘‘


πŸ’– Members πŸ’–

  • op β€” one of the MSM_VM_BIND_OP_x values. this is the "what are we even doing here" field 🫢
  • handle β€” the GEM object handle. MBZ for UNMAP or MAP_NULL β€” so if you're unmapping, don't be cute, leave it at zero.
  • obj_offset β€” offset into the GEM object. also MBZ for UNMAP or MAP_NULL. same vibe check as above ✨
  • iova β€” the address to operate on. this is the "where" of it all πŸ“
  • range β€” the number of bites to to map/unmap 😭 (the manpage really said "bites" and honestly? we're keeping her. it's how many of them to map/unmap).
  • flags β€” a bitmask of MSM_VM_BIND_OP_FLAG_x. stack 'em, mask 'em, slay.
  • pad β€” MBZ. must be zero. do not touch. do not decorate. zero. πŸ”₯
ngl the recurring theme here is MBZ, so if you were looking for a place to be creative with your values… this is not it bestie πŸ™ˆ

🧚 SEE ALSO 🧚

  • Kernel file ./include/uapi/drm/msm_drm.h
  • struct drm_msm_vm_bind(9) β€” her sister struct, go say hi πŸ’œ

and that's the whole page, icon. shoutout to ./include/uapi/drm β€” dated October 2026 β€” for the source and version on this one, fr fr. struct drm_msm_vm_bind_op(9) ate and left no crumbs πŸ“πŸ’«

πŸ“¦ where this page comes from