viortc_feed_vq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… viortc_feed_vq β€” ok so this is from the Kernel API Manual, section 9, and it's lowkey iconic

✨ NAME ✨

viortc_feed_vq β€” makes a device write-only buffer available. that's it. that's the whole thing. she hands the buffer over and it's live 🫢


🌸 SYNOPSIS 🌸

int viortc_feed_vq (struct viortc_dev *viortc , struct virtqueue *vq ,
       void *buf , unsigned int buf_len , void *data );

like look at her. five arguments. return type int. no notes. πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

okay bestie let's go through these one by one because every single one matters, no cap:

  • viortc β€” the device data. the whole vibe of the device lives in here.
  • vq β€” the notification virtqueue. this is the queue that gets the notif. ⭐
  • buf β€” the buffer itself. the actual thing.
  • buf_len β€” the buffer capacity, and it's measured in bytes (important! don't come at me with your other units).
  • data β€” a token that identifies the buffer. literally its little name tag so everyone knows who she is. 🏷️

πŸ¦‹ CONTEXT πŸ¦‹

⚠️ real talk: the caller must prevent concurrent access to vq. that's on you, not on her. no concurrent access, periodt. πŸ”₯

πŸ’œ RETURN πŸ’œ

  • Zero on success πŸŽ‰
  • a negative error code otherwise 😭 (so like, check it fr fr)

🧚 SEE ALSO 🧚

okay this list is honestly giving main character energy, so many icons in one place:

Kernel file ./drivers/virtio/virtio_rtc_driver.c, plus: struct viortc_vq(9), struct viortc_dev(9), struct viortc_msg(9), viortc_class_from_dev(9), viortc_alarms_supported(9), viortc_msg_init(9), viortc_msg_release(9), viortc_do_cb(9), viortc_requestq_hdlr(9), viortc_cb_requestq(9), viortc_alarmq_hdlr(9), viortc_cb_alarmq(9), viortc_get_resp_errno(9), viortc_msg_xfer(9), VIORTC_DECLARE_MSG_HDL_ONSTACK(9), VIORTC_MSG(9), VIORTC_MSG_INIT(9), VIORTC_MSG_WRITE(9), VIORTC_MSG_READ(9), viortc_read(9), viortc_read_cross(9), viortc_cfg(9), viortc_clock_cap(9), viortc_cross_cap(9), viortc_read_alarm(9), viortc_set_alarm(9), viortc_set_alarm_enabled(9), viortc_init_rtc_class_clock(9), viortc_init_ptp_clock(9), viortc_init_clock(9), viortc_clocks_deinit(9), viortc_clocks_init(9), viortc_populate_vq(9), viortc_alloc_vq_bufs(9), viortc_init_vqs(9), viortc_probe(9), viortc_remove(9)

like. that's the whole friend group. read them. iykyk. 🌈


okay that's the page!! stay hydrated, watch your vq for concurrent access, and remember β€” this one came out of ./drivers/virtio, dated October 2026. mwah πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from