XCB_DRI3_SET_DRM_DEVICE_IN_USE_CHECKED(3)

πŸ“¦
version 1.17.0 Β· 2 versions
  • 1.17.0 Β· alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 1.15 Β· debian bookworm, ubuntu noble
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’… xcb_dri3_set_drm_device_in_use β€” the xcb_dri3_set_drm_device_in_use(3) page, but make it make sense

okay bestie, gather round, because we're reading a manual page together and honestly? this one is a lil mysterious even to me. it lives in section 3 of the manual (that's the library-calls girlies), and it's brought to you by libxcb, the X protocol binding that talks to your X server. let's get into it πŸ¦‹


✨ NAME ✨

xcb_dri3_set_drm_device_in_use β€” and that's literally all the NAME section gives us, no cap. it's a DRI3 request, it involves a DRM device, and it's "in use". the rest is vibes and faith πŸ™ˆ


🌸 SYNOPSIS 🌸

first things first, you gotta pull in the header:

#include <xcb/dri3.h>

πŸŽ€ Request function

xcb_void_cookie_t xcb_dri3_set_drm_device_in_use(xcb_connection_t *conn,
       xcb_window_t window, uint32_t drmMajor, uint32_t drmMinor);

that's the whole function signature, character for character, don't @ me πŸ’–


πŸ‘‘ REQUEST ARGUMENTS πŸ‘‘

here's what you're handing over, one by one:

  • conn β€” your XCB connection to X11. the whole line to the server, your main character communication channel ✨
  • window β€” TODO: NOT YET DOCUMENTED. yeah. the docs said "we'll get to it". they did not get to it 😭
  • drmMajor β€” TODO: NOT YET DOCUMENTED. same energy. it's a uint32_t and that's all we're officially told πŸ’€
  • drmMinor β€” TODO: NOT YET DOCUMENTED. also a uint32_t, also undocumented, also we move 🫢
not me reading three whole TODO notices in a row. the documentation is giving "group project, everyone did their part except the part where anyone did their part" πŸ™ˆ

πŸ’œ DESCRIPTION πŸ’œ

so… the DESCRIPTION section? it's empty. genuinely, truly, completely empty. nothing. a beautiful blank space where prose should be. the vibe check came back inconclusive, bestie 🌈

(no guessing from me β€” if the manpage won't say it, I won't invent it. that's the rule πŸ’…)


⭐ RETURN VALUE ⭐

it hands you back an xcb_void_cookie_t. it's a void cookie, so there's no juicy payload riding along in it β€” but errors, if any show up, have to be handled over in the event loop. that's the deal, fr fr πŸ”₯

now, if you'd rather deal with errors directly instead of waiting around in the event loop, use xcb_dri3_set_drm_device_in_use_checked β€” that's your girl for that job. and for the full rundown on how any of this cookie business works, go read xcb-requests(3). it's all there ✨


πŸ“ ERRORS πŸ“

good news, gorgeous: this request does never generate any errors. that's it. that's the section. no errors, no drama, no surprise plot twists. iconic behaviour honestly πŸ‘‘


🌈 SEE ALSO 🌈

(…nothing here either. the SEE ALSO section is a ghost. empty. we're on our own, bestie, but we're on our own together 🫢)


🧚 AUTHOR 🧚

this page was generated from dri3.xml β€” yes, machine-generated, which explains a lot about the TODO situation ngl. if you spot something wrong and want corrections and improvements, hit up xcb@lists.freedesktop.org. they take emails, they take feedback, they take vibes πŸ’Œ


and that's the whole page, babes πŸ’–

cute lil sign-off for the footer girlies: this is X Version 11, shipping with libxcb 1.17.0. read it, love it, and remember β€” when the docs say TODO, the bestie says "we'll figure it out" πŸ’…βœ¨πŸŒΈ