On Mon, Jan 05, 2026 at 04:47:22PM -0500, Stefan Hajnoczi wrote: > Dear QEMU and KVM communities, > QEMU will apply for the Google Summer of Code internship > program again this year. Regular contributors can submit project > ideas that they'd like to mentor by replying to this email by > January 30th. >
Hello, We came up with the following idea. Thanks. === virtio-rtc vhost-user device === '''Summary:''' Implement virtio-rtc device as a vhost-device-user Implement virtio-rtc device using the vhost-user-device framework. The goal of this project is to implement a virtio-rtc device as a vhost-user-device. At the moment, there is no open implementation of a virtio-rtc device, even though a virtio-rtc driver exists and appears to be tested against a closed device implementation. This project aims to fill that gap by providing a fully open and spec-aligned device. The virtio-rtc device provides access to real-time clocks, such as UTC or TAI, or physical time elapsed since a given epoch. The driver can read the time using simple or more accurate methods and may optionally set an alarm. The work starts with understanding the virtio-rtc device as described in the virtio specification, as well as studying the existing virtio-rtc driver. In parallel, an existing vhost-user-device implementation can be used as a reference to design and write the new device. The device will be implemented in Rust and must follow the virtio specification closely. The project also includes debugging interoperability issues, identifying possible mismatches between the driver and the specification, and submitting the final implementation to the vhost-device project. High-level tasks: - Study the virtio-rtc specification and understand the existing virtio-rtc driver. Also, it may help study the QEMU implementation of the rtc clock. - Design and implement the virtio-rtc device as a vhost-user-device in Rust. Existing vhost-user-devices may help to get inspiration. This step also requires adding the glue code in QEMU to support this device. - Build and test the virtio-rtc driver. - Test, debug, and submit the new device to the vhost-device project. '''Links:''' * Linux Driver Series: https://lore.kernel.org/all/[email protected]/ * vhost-device repo: https://github.com/rust-vmm/vhost-device * VirtIO 1.4 specification: https://github.com/oasis-tcs/virtio-spec/tree/virtio-1.4/device-types/rtc '''Details:''' * Skill level: intermediate * Language: C/Rust * Mentors: Matias Ezequiel Vara Larsen <[email protected]>, Francesco Valla <[email protected]> and Stefano Garzarella <[email protected]>
