STRUCT VDUSE_VQ_STATE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct vduse_vq_state(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸŽ€ β€” today's main character is struct vduse_vq_state, and it's literally the virtqueue state. no cap. πŸ’…


🌸 NAME 🌸

struct vduse_vq_state β€” virtqueue state πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

struct vduse_vq_state {
    __u32 index;
    union {
      struct vduse_vq_state_split split;
      struct vduse_vq_state_packed packed;
    };
 };

like, that's the whole vibe. copy it exactly, don't touch it, she's perfect already ✨


πŸ‘‘ Members πŸ‘‘

  • index β€” the virtqueue index πŸ“ (which virtqueue we're talking about, iykyk)
  • {unnamed_union} β€” anonymous. that's it. that's the whole description. she has no name and she doesn't need one πŸ™ˆ
  • split β€” split virtqueue state 🧚 (the split-flavoured state, living inside that anonymous union)
  • packed β€” packed virtqueue state πŸ”₯ (the packed-flavoured one, same union, different vibe)
lowkey important: split and packed are in an anonymous union together, so it's one or the other in there β€” not both chilling at the same time. 🫢

🌈 SEE ALSO 🌈

bestie, the rabbit hole is deep and honestly we're going. source file is Kernel file ./include/uapi/linux/vduse.h β€” go read it, it's giving lore ⭐

  • struct vduse_dev_config(9)
  • struct vduse_iotlb_entry(9)
  • struct vduse_config_data(9)
  • struct vduse_vq_config(9)
  • struct vduse_vq_state_split(9)
  • struct vduse_vq_state_packed(9)
  • struct vduse_vq_group_asid(9)
  • struct vduse_vq_info(9)
  • struct vduse_vq_eventfd(9)
  • struct vduse_iova_umem(9)
  • struct vduse_iova_info(9)
  • struct vduse_iotlb_entry_v2(9)
  • enum vduse_req_type(9)
  • struct vduse_dev_status(9)
  • struct vduse_iova_range(9)
  • struct vduse_iova_range_v2(9)
  • struct vduse_vq_ready(9)
  • struct vduse_dev_request(9)
  • struct vduse_dev_response(9)

like… that's the whole friend group 😭 every single one of them, tagged, slay πŸ’œ


mwah πŸ’‹ that's a wrap! this iconic little page ships from ./include/uapi/linux, dated October 2026, and it's filed under struct vduse_vq_state(9) β€” periodt. πŸ«Άβœ¨πŸŽ€

πŸ“¦ where this page comes from