STRUCT VDUSE_VQ_STATE_PACKED(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct vduse_vq_state_packed(9) β€” Kernel API Manual πŸ¦‹

okay bestie, so this page is literally called struct vduse_vq_state_packed(9) and it lives in the Kernel API Manual, and it's giving "packed virtqueue state" and nothing else β€” she's focused, she's minimal, she's an icon πŸ’…


✨ NAME ✨

struct vduse_vq_state_packed β€” packed virtqueue state, no cap πŸŽ€


✨ SYNOPSIS ✨

struct vduse_vq_state_packed {
    __u16 last_avail_counter;
    __u16 last_avail_idx;
    __u16 last_used_counter;
    __u16 last_used_idx;
 };

that's the whole struct, she's four __u16s and a dream 🫢


✨ Members ✨

  • last_avail_counter β€” the last driver ring wrap counter that the device has observed πŸ‘€ like that's the number the device saw, periodt.
  • last_avail_idx β€” the device available index, fr fr.
  • last_used_counter β€” the device ring wrap counter 🌸 that one's the device's own.
  • last_used_idx β€” the used index, and yes it's literally just called "used index" 😭 she keeps it simple.
ngl these four are the whole personality of the struct β€” counter/idx for avail, counter/idx for used πŸ’–

🌈 SEE ALSO 🌈

Kernel file ./include/uapi/linux/vduse.h β€” and honestly the whole friend group shows up here, so let's list the squad, no skipping, we love a complete roster πŸ‘‘

  • 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_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_vq_state(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 entire vduse extended universe and struct vduse_vq_state_split(9) is literally her sibling β€” the split one vs the packed one, sibling rivalry but make it kernel πŸ’€


and that's the page!! 🌟 this one comes to you from ./include/uapi/linux, dated October 2026, under the very long and very dramatic title struct vduse...state_packed(9) β€” mwah, bye bestie πŸ’œπŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from