2020-10-15 Project Stratos Sync Meeting notes


  • Mike
  • Arnd
  • Massami
  • Shashi
  • Alex
  • Bill
  • Mathieu
  • Matt  (Arm)
  • Stefano (Xilinx)
  • Mark
  • Joakim
  • Jean-Phillip
  • Illias
  • Bill
  • Randy
  • Sumit
  • Bogdan (NXP)
  • Srivatsa (QC)
  • Ruchika
  • Souvick
  • Diana (NXP)
  • Ed Doxat (Arm)
  • Pratik
  • Vincent


  • Get a view of the  engineering support available to work on Stratos

Discussion items

Update on the demo progress

Masami : Booted Xen Dom0 with video - on Synquaser - how can we enabe virtio-video, virti-io video != virtio-gpu  is 3d capable - Alex has this almost working and will send the details on.

Alex : is this the AGL image, can't boot their kernel, steffano said we need Xen console. Been trying to build since yesterday

Steffano : config-xen ths tiggers other options.  if you have two consoles you can tell Dom0 use the second one, to start guest you need config-xen

Alex How many patches 1 for Xen in kernel, Masami - I can share it,  Alex Grub ?  no changes.  Alex need this for Machiatobin

Alex : Gave AGL meeting an overview, appeared happy, wil update slides on Stratos homepage.

Update on RPMB patches

Not huge change - posted, some requests for support for EMMC probing - Illias uncovered the issues, reached out to Ulf to find ways to make things easier.

Did not start on re-implementation using Rust vhost-user libs.

Illias : we can look at kernel but, you expect the same driver as host vs support  1/2 the MMC calls,  I have uboot patches, Alex I want to put it in the spec vs just change the driver

Introduction to cheri and some thoughts on its relevance to Stratos


Workign with Arm : been running 10 years

Steffano : cherification is adding  capabilities : Joakim yes

Arnd : not sensible to try with Linux, it cant work with t 128 bits

Lots of questions about what happens to pointers across security boundaries (sycalls into kernels, pointers between device/driver, moving to secure world etc).

Please ping Joakim if you have questions

Some resourses 

Kevin Brodsky's talk giving answers to many of Arnd's questions statements
- https://youtu.be/CFweo8YFevg?t=7214
- https://www.linuxplumbersconf.org/event/7/contributions/654/

The current state of  VirtIO-MMU / Limited Memory Sharing


Arnd: discussed 3 different approaches - do they all suck? Which to start prototyping?

Option 1: host manages shared memory, use swiotlb to force use of shared memory

Option 2: guest uses IOMMU, signals pages meant for access, no copying, expensive transactions updating iommu?

Option 3: new virtquue design, shared memory part of queue (inline).

Steffano: can we increase the size of the queue? Arnd: it involves changing the binary layout of the queue

Steffano: had to increase ring size for 9pfs implementation - needed to go to 2Mb (up from 512K)

Arnd: having large queues risks cache thrashing.

Alex: Does swiotlb always imply copying Arnd: yes

Stefano: what about virtio managing page allocation?

Alex: sees the complexities with existing devices, talked about video - size it for "known" memory bandwidth

Stefano: what about expanding option 3 but allowing bigger sizes queus appropriate to the device?

Arnd: Option 3 has s simplicity, but offers a allocation per device.

Srivista: our implementation currently is closer to option 1

Arnd: so which option to implement, or do we see if QC can share their implementation

Alex: I'm leaning towards 3 which could then be expanded to larger queue sizes for given devices. We could then compare with QC swiotlb approach

What is the development platform ?

Action items