STRUCT DRM_PANFROST_WAIT_BO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct drm_panfrost_wait_bo(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” yes we're in the kernel docs now, and yes it's iconic. today's main character is struct drm_panfrost_wait_bo, and honestly? she's a little struct with one job and she does it flawlessly. πŸŽ€


🌸 NAME 🌸

struct drm_panfrost_wait_bo β€” the ioctl argument you use when you wanna wait for the last DRM_PANFROST_SUBMIT on a BO to finish. like, actually finish. no vibes-based guessing, just waiting. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

struct drm_panfrost_wait_bo {
    __u32 handle;
    __u32 pad;
    __s64 timeout_ns;
 };

(that weird extra space before the closing brace? yeah, it's in the original, we don't touch it, we respect it πŸ’…)


🌈 Members 🌈

  • handle β€” the handle for the object you're waiting on. this is the "who am I waiting for" of the whole situation 🫢
  • pad β€” padding, and it must be zero-filled. not like "eh probably zero", it's a must. don't be the person who forgets. 😭
  • timeout_ns β€” the absolute number of nanoseconds to wait. absolute, bestie. nanoseconds. that's so much precision and we love that for us ⭐

πŸ’œ Description πŸ’œ

so here's the tea πŸ“ β€” this is genuinely useful when multiple processes might be rendering to the same BO and you need to wait for all of that rendering to be completed. not some of it. all of it. no cap. once everything's done, then you can do your thing. it's giving responsible synchronization. πŸ‘‘


πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./include/uapi/drm/panfrost_drm.h
  • struct drm_panfrost_submit(9)
  • struct drm_panfrost_create_bo(9)
  • struct drm_panfrost_mmap_bo(9)
  • struct drm_panfrost_set_label_bo(9)
  • struct drm_panfrost_sync_bo(9)

go read them, they're all in the same friend group, iykyk πŸ’…βœ¨


okay that's the whole page, bestie, and you ate it up. πŸ’– this one lives at ./include/uapi/drm, dated October 2026, and it's filed under struct drm_panfrost_wait_bo(9) β€” mwah, slay, periodt. πŸ§šπŸŽ€πŸŒŸ

πŸ“¦ where this page comes from