STRUCT VIRTIO_SND(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay bestie, welcome to the struct virtio_snd(9) page from the Kernel API Manual πŸ’– and it's literally all about the VirtIO sound card device.

struct virtio_snd β€” VirtIO sound card device. that's the name, that's the vibe, periodt πŸ’…


🌸 SYNOPSIS 🌸

okay so here's the whole struct in all its glory β€” character for character, no edits, no cap:

       struct virtio_snd {
           struct virtio_device *vdev;
           struct virtio_snd_queue queues[VIRTIO_SND_VQ_MAX];
           struct snd_card *card;
           struct list_head ctl_msgs;
           struct virtio_snd_event *event_msgs;
           struct list_head pcm_list;
           struct virtio_jack *jacks;
           u32 njacks;
           struct virtio_pcm_substream *substreams;
           u32 nsubstreams;
           struct virtio_snd_chmap_info *chmaps;
           u32 nchmaps;
           struct virtio_snd_ctl_info *kctl_infos;
           struct virtio_kctl *kctls;
           u32 nkctls;
        };

πŸ’… Members πŸ’…

these are the little fields inside the struct, and yes every single one is getting its moment, because we don't skip members in this house 🫢

  • vdev β€” Underlying virtio device. literally the device underneath, slay ✨
  • queues β€” Virtqueue wrappers. the wrappers, iconic πŸŽ€
  • card β€” ALSA sound card. your ALSA sound card, main character energy πŸ’–
  • ctl_msgs β€” Pending control request list. the list of pending control requests, no cap πŸ“‹
  • event_msgs β€” Device events. device events, periodt πŸ¦‹
  • pcm_list β€” VirtIO PCM device list. the VirtIO PCM device list, yup 🌸
  • jacks β€” VirtIO jacks. VirtIO jacks!! πŸ’œ
  • njacks β€” Number of jacks. the number of jacks, counting them fr fr πŸ”’
  • substreams β€” VirtIO PCM substreams. VirtIO PCM substreams, highkey obsessed πŸ”₯
  • nsubstreams β€” Number of PCM substreams. number of PCM substreams, got it bestie πŸ’…
  • chmaps β€” VirtIO channel maps. VirtIO channel maps, map it out 🌈
  • nchmaps β€” Number of channel maps. number of channel maps, yes ⭐
  • kctl_infos β€” VirtIO control element information. VirtIO control element information, info dump but make it cute πŸ’–
  • kctls β€” VirtIO control elements. VirtIO control elements, they're giving control πŸ‘‘
  • nkctls β€” Number of control elements. number of control elements, final count πŸŽ€

πŸ¦‹ SEE ALSO πŸ¦‹

go peek at these, iykyk:

  • Kernel file ./sound/virtio/virtio_card.h β€” struct virtio_snd_queue(9), struct virtio_kctl(9)

okay that's it bestie!! source ./sound/virtio, date October 2026, and the struct virtio_snd(9) tag β€” mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from