2025-06 Update and Notes
Summary of Month
Plans / Highlights
RFC2 for virtio-msg was sent to the virtio spec upstream list
Virtio-msg presentation was done at LF OSS-NA in Denver
The kernel and QEMU implementations were aligned with the RFCv2 spec
Issues
HVAC Demo1 should have been declared done in March. Moved the remaining item (port to VPR 5050A board) to Demo2.
Progress was a little slow as Bill is out 1 week in June (OSS NA in Dever)
Meeting June 5
Bill, Bertrand, Arnaud, Peter Hilber, Dan, Alex, Viresh, Sumit, Lina, Lei
Peter: former OpenSynergy, using MMIO today but don’t like trap and emulate.
Peter: Would be nice to have VM images that can “just works” on QEMU and other environments (OpenSynergy or gunyah hypervisor)
High level Review of Sprint Notes
Review of Notification doc and discussion of out of band notifications and of polling
Armelle: Android test bench is available
AI Summary: (take with a grain of salt)
The team discussed progress on the Virtio Loopback project, implementation of Virtio message on FFA, and various technical aspects of device drivers and transport mechanisms. They explored different notification methods, interrupt handling, and polling strategies for device drivers and hypervisor environments. The group also addressed implementation details for out-of-band notifications, data structures in the specification, and potential approaches for implementing Virtio message bus support.
Next Steps:
Bill to merge his existing PR version of the Virtio message spec to main and create a new PR for further cleanup.
Bill’s existing PR version has descriptions of in-band, out-of-band, and polling notification methods. Group to review.
Bertrand to publish the FFA spec internally, with plans for public release later (September?).
Viresh to focus on developing upstream-friendly kernel patches for core of Virtio-msg part of the kernel work.
Bill to provide Viresh with information on required changes to align with the latest spec updates.
Armelle to share Google's Qemu and test bench running Virtio message over FFA with Peter.
Bill to send an email to the mailing list when the new PR for the spec is ready.
Meeting June 19
Bill, Bertrand, Arnaud, Peter Hilber, Dan, Alex, Viresh, Lei
Bill will be presenting next week at OSS NA
Viresh asked what version of the spec he should aling to. Bill said that PR #20 would be the basis of RFC2 and should be used now
Bill has made the edits requested by Bertrand and Arnaud (PR#20).
Bill decided to remove the “all virtqueue” option for EVENT_{AVAIL,USED} (also part of PR#20) as it does not cover all cases, can be implemented by a loop in the bus for all cases, and is practical to do in the kernel today. He acknowledged that it requires the bus to understand the transport’s layers instance data but the kernel does not do strict data hiding like that. If we really need it, it can be added later.
Bertrand said he was planning to use that option but will figure something out and was ok with the removal at least for now
This removes Arnaud’s questions issues with these sections as well
Bill will rebase (squash) all work on rfc1 branch and make new rfc2 branch and then send practice RFC later today (DONE)
Viresh asked when it would be OK to send his work to upstream kernel (probably as RFC at first)
Bertram wants Viresh to align to a new (internal) FF-A spec that he will publish next week, after that it is OK
(First version of FF-A spec w/ virtio-msg will be public in ~September. OK to proceed before that.)
Bill discussed Edgar’s work on a single QEMU demo mode for virtio-msg
QEMU will provide PCIe card with MMRs for doorbells, MSIX, SRAM in a BARx and will be RC DMA capable
QEMU will run native code to run device side virtio-msg-amp via the PCIe card resources
Initially this will use Edgar’s queue format (used in AMD demo today) but will align to Bill’s queue format later
Viresh said he had virtio-loopback working,
Right now the kernel interface will the device model access to any memory the device model asks for. We need to fix this but this is a start
One solution would be to use the reserved memory pool model but he needs to figure out a way to use that w/o DTB
He agreed to publish a wiki page on how to run it (DONE)
Bill said he would include it in the demos repo in July
Viresh asked if virtio-msg-amp should be included in his kernel RFC
Bill said not yet as it needs to change a good bit
Bertrand plans to present at Xen Summit 2025
San Jose, AMD Xilinx office, Sept 15 to 17
Bill will attend
Maybe Edgar will present also?
Bill said he plans to work on the AMP data structures
Implement them in kernel
Make a start of the formal spec (as an Appendix to virtio spec for now, may or may not go upstream)
Bus messages to:
Allow OoB notifications to be selected at run time by each side
Add new bus level shared memory areas
Bertrand’s first FFA spec (1.0? Sept) will only do direct and indirect messages but the next (1.1?) will want to use in memory FIFOs etc so will want to reference the AMP data structures
Bertrand will start FFA 1.1 work before 1.0 is publicly released so would like to see Bill’s work sooner rather than later
Bill asked if we should mention the FF-A spec and date in the RFC2 cover letter?
Bill: is we say September people may ignore the RFC and wait till September
Bertrand: yes mention FFA spec but don’t mention a date
[Bill added this to RFC cover letter along with AMD data structures and mentioned we are working toward aligned implementations and PATCH v1]
Linux Foundation Open Source Summit, North America
Bill’s Virtio-msg presentation:
Manni’s presentation on Virtio-msg for Qualcomm smartnic PCI card