STRUCT DRM_MSM_VM_BIND(9)
π NAME
ok so struct drm_msm_vm_bind β bestie, it's literally the input of &DRM_IOCTL_MSM_VM_BIND π
This page is from the Kernel API Manual, section 9, and the whole thing is about struct drm_msm_vm_bind(9). Yes the struct name is the manpage name. Iconic behaviour, no notes π
β¨ SYNOPSIS
struct drm_msm_vm_bind {
__u32 flags;
__u32 nr_ops;
__s32 fence_fd;
__u32 queue_id;
__u64 in_syncobjs;
__u64 out_syncobjs;
__u32 nr_in_syncobjs;
__u32 nr_out_syncobjs;
__u32 syncobj_stride;
__u32 op_stride;
union {
struct drm_msm_vm_bind_op op;
__u64 ops;
};
};
ok look at all those fields π every single one of them is here, I did not skip a single line, we are thorough in this house β¨
π MEMBERS
flagsβ an in param, and it's a bitmask ofMSM_VM_BIND_x. Bitmask bestie, so it's giving "combine your faves" πnr_opsβ the number of bind ops in this ioctl. so like, how many ops are we doing? that's the number π₯fence_fdβ the in/out fence fd, seeMSM_VM_BIND_FENCE_FD_IN/OUT. it's doing both jobs, main character energy fr fr πqueue_idβ an in param, the submitqueue id. which queue are we talking to, that's the one πin_syncobjsβ an in param, a ptr to array ofdrm_msm_syncobjπ¦out_syncobjsβ an in param, a ptr to array ofdrm_msm_syncobjπ¦ (yes it's also a pointer to an array, twinning within_syncobjs, periodt)nr_in_syncobjsβ an in param, number of entries inin_syncobj. that's how many there are, ngl π’nr_out_syncobjsβ an in param, number of entries inout_syncobj. again: the count πΈsyncobj_strideβ an in param, the stride of the syncobj arrays. stride betch πop_strideβ thesizeofeachstruct drm_msm_vm_bind_opinops. lowkey important for walking that array π§{unnamed_union}β it's anonymous. no name. unnamed. mysterious. we love a mystery πopβ used ifnum_ops == 1. one single op, solo outing πopsβ userptr to array ofdrm_msm_vm_bind_opifnum_ops > 1. now you're a group chat π₯
heads up bestie: the union is anonymous, so you just reach straight in there. no silly middle name needed β¨
π SEE ALSO
- Kernel file
./include/uapi/drm/msm_drm.h struct drm_msm_vm_bind_op(9)β go read that one next, it's the sequel π«Ά
ok that's the whole page, you ate that π this came from the Kernel file ./include/uapi/drm, dated October 2026, and it's the struct drm_msm_vm_bind(9) page β go forth and bind your VM, bestie, slay π¦β¨π
π¦ 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