2025-06 Update and Notes

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)

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