[Rust-VMM] rust-vmm sync meeting

Daniel Verkamp dverkamp at chromium.org
Tue Mar 9 21:57:03 UTC 2021


Yes, that sounds good - I just noticed that there is an existing issue for
a vmm-fdt crate, so we can coordinate there:
https://github.com/rust-vmm/community/issues/87

Thanks,
-- Daniel

On Tue, Mar 9, 2021 at 2:35 AM Florescu, Andreea <fandree at amazon.com> wrote:

> ​That's super nice!
>
> We can do some experiments and check if the FDT crate from crosvm also
> works in Firecracker and Cloud Hypervisor.
>
>
> Would you be interested in having fdt as a rust-vmm crate? If yes, we can
> open an issue and discuss about the design there.
>
>
> Thanks,
>
> Andreea
> ------------------------------
> *From:* Daniel Verkamp <dverkamp at chromium.org>
> *Sent:* Tuesday, March 9, 2021 12:59 AM
> *To:* Dylan Reid
> *Cc:* Florescu, Andreea; Barbu, Iulian; Loghin, Laura; Ochescu, Catalin;
> Horobeanu, Dan; Iordache, Alexandra; Agache, Alexandru; meet at chime.aws;
> pin+2352511775 at chime.aws; rust-vmm at lists.opendev.org; M. Dodson; Ceyhun
> Ertürk; Catangiu, Adrian Costin; Zach Reizner; Wise, Bob; Liguori, Anthony;
> Trilok Soni; luka.perkov at sartura.hr; Brendan Burns; Alex Bennée
> *Subject:* RE: [EXTERNAL] rust-vmm sync meeting
>
>
> *CAUTION*: This email originated from outside of the organization. Do not
> click links or open attachments unless you can confirm the sender and know
> the content is safe.
>
> The core of the Rust FDT interface mentioned by Dylan is here:
> https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2713569/8/arch/src/fdt.rs
>
> I intentionally avoided any dependencies on external crates (except
> thiserror, which could easily be eliminated if desired), so it should be
> easy to extract it into its own crate.
>
> It is functionally complete (for the functionality needed in crosvm, at
> least) - I have some related work in progress to read the host system's
> devicetree from the kernel, but that should not be necessary for most use
> cases.
>
> The API was designed to be similar to the C libfdt API to make it easy to
> replace our existing usage, but if it's going to be used outside crosvm, it
> would be good to get feedback from potential users on the design - please
> take a look if you're interested.
>
>
> On Mon, Mar 8, 2021 at 8:20 AM Dylan Reid <dgreid at google.com> wrote:
>
>>
>>
>> On Mon, Mar 8, 2021 at 2:09 AM Florescu, Andreea <fandree at amazon.com>
>> wrote:
>>
>>> Thanks everyone for joining!
>>>
>>>
>>> Here are the meeting minutes:
>>>
>>>    - Logging: https://github.com/rust-vmm/vhost-user-backend/issues/4
>>>
>>>
>>>    - whats the idomatic way to do logging across the various crates?
>>>
>>>
>>>    - typically people use the log crate and build on top of it:
>>>    https://crates.io/crates/log
>>>
>>>
>>>    - alternative proposal: hide all logging & metrics behind an
>>>    interface that defines relevant events
>>>
>>>
>>>    - example of usage:
>>>    https://github.com/rust-vmm/vm-superio/blob/c9ecf106d4d8d38fdc8e91e254a7f7890fbe6c60/src/serial.rs#L112
>>>
>>>
>>>    - for now this is used only for metrics
>>>
>>>
>>>    - CH is using a macro for events:
>>>    https://github.com/cloud-hypervisor/cloud-hypervisor/blob/master/event_monitor/src/lib.rs
>>>
>>>
>>>    - let's use this issue to continue the discussion:
>>>    https://github.com/rust-vmm/community/issues/104
>>>
>>>
>>>    - for debugging & developing we can use the log crate
>>>
>>>
>>>    - also an open question about metrics (what/where/how many/how
>>>    filtered)
>>>
>>>
>>>    - Public roadmap for 2021:
>>>
>>>
>>>    - https://github.com/orgs/rust-vmm/projects/3
>>>
>>>
>>>    - Use label: "roadmap 2021"
>>>
>>>
>>>    - Search for roadmap issues:
>>>    https://github.com/search?q=org%3Arust-vmm+label%3A%22roadmap+2021%22&type=issues
>>>
>>>
>>>    - Branching policy for crates and release lifecycle management
>>>
>>>
>>>    - we've been doing branch releases for security vulnerabilities
>>>
>>>
>>>    - we do not have a policy for releases (how long do we support them)?
>>>
>>>
>>>    - QEMU:
>>>
>>>
>>>    - dev on master
>>>
>>>
>>>    - before releases they're looking more into what gets into master
>>>    (i.e. only bug fixes)
>>>
>>>
>>>    - release branch
>>>
>>>
>>>    - 3 release/year
>>>
>>>
>>>    - CH:
>>>
>>>
>>>    - release every 6 weeks
>>>
>>>
>>>    - use dependabot
>>>
>>>
>>>    - does not support older versions of CH (only support for latest
>>>    version)
>>>
>>>
>>>    - Proposal:
>>>
>>>
>>>    - Handle releases on a case by case basis
>>>
>>>
>>>    - Proposal for branches: branch when need to (i.e. breaking changes
>>>    & security releases)
>>>
>>>
>>>    - fandree@ add this to the community readme
>>>
>>>
>>>    - master support?
>>>
>>>
>>>    - only when there is a new change that is needed or when crates are
>>>    not published
>>>
>>>
>>>    - releases on demand to support different projects (release just a
>>>    versioned tag on master, ad-hoc branch for security backports on a release
>>>    tag)
>>>
>>>
>>>    - obviously master tries to stay stable with CI keeping tests green
>>>    - cost of a release should be small
>>>
>>>
>>>    - kvm-bindings
>>>
>>>
>>>    - CH tried to autogenerate new bindings, and it did not work
>>>
>>>
>>>    - we need to add documentation (if it does not exist) on how to
>>>    generate them
>>>
>>>
>>>    - State of AArch64 support?
>>>
>>>
>>>    - crate support should be complete: kvm-ioctls, linux-loader; used
>>>    in production Firecracker & Cloud Hypervisor
>>>
>>>
>>>    - removing dependency on libfdt options:
>>>
>>>
>> Daniel started cleaning up the FDT implementation in crosvm recently:
>> https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2713569
>> That might be a good starting point. It still has some work to do IIRC.
>> If it looks useful, we can move it to a separate crate as it's currently in
>> that aarch64 code.
>>
>>
>>>    - rust crate for generating the DT (only static FDT)
>>>
>>>
>>>    - ACPI: there is a push to use it by default
>>>
>>>
>>>    - adding support to vmm-reference for ARM:
>>>    https://github.com/rust-vmm/vmm-reference/issues/90
>>>
>>>
>>>    - Support for other hypervisors (!KVM):
>>>
>>>
>>>    - did not have time to discuss this; we'll discuss it at the next
>>>    sync meeting
>>>
>>>
>>> ------------------------------
>>> *From:* Florescu, Andreea
>>> *Sent:* Wednesday, March 3, 2021 3:19 PM
>>> *To:* Barbu, Iulian; Loghin, Laura; Ochescu, Catalin; Horobeanu, Dan;
>>> Iordache, Alexandra; Agache, Alexandru; meet at chime.aws;
>>> pin+2352511775 at chime.aws; rust-vmm at lists.opendev.org
>>> *Cc:* M. Dodson; Ceyhun Ertürk; Catangiu, Adrian Costin; Zach Reizner;
>>> Wise, Bob; Liguori, Anthony; Trilok Soni; Dylan Reid;
>>> luka.perkov at sartura.hr; Brendan Burns; Alex Bennée
>>> *Subject:* rust-vmm sync meeting
>>> *When:* Monday, March 8, 2021 11:00 AM-12:00 PM.
>>> *Where:*
>>>
>>> Meeting Agenda: https://etherpad.opendev.org/p/rust-vmm-sync-2021
>>> ==============Conference Bridge Information==============
>>> You have been invited to an online meeting, powered by Amazon Chime.
>>> *Chime meeting ID: 2352511775*
>>> *Join via Chime clients (manually): Select 'Meetings > Join a Meeting',
>>> and enter 2352511775*
>>> *Join via Chime clients (auto-call): If you invite auto-call as
>>> attendee, Chime will call you when the meeting starts, select 'Answer'*
>>> *Join via browser screen share: https://chime.aws/2352511775
>>> <https://chime.aws/2352511775>*
>>> *Join via phone (US): +1-929-432-4463,,,2352511775#
>>> <+1-929-432-4463,,,2352511775#>*
>>> *Join via phone (US toll-free): +1-855-552-4463,,,2352511775#
>>> <+1-855-552-4463,,,2352511775#>*
>>> *International dial-in: https://chime.aws/dialinnumbers/
>>> <https://chime.aws/dialinnumbers/>*
>>> *In-room video system: Ext: 62000, Meeting PIN: 2352511775#*
>>> =================================================
>>>
>>>
>>> ================Before your meeting:================
>>>
>>>    - Learn how to use the touch panel
>>>    <https://it.amazon.com/en/help/articles/use-the-meeting-room-touch-panel>.
>>>
>>>    - Prefer a video? Watch these touch panel how-to videos
>>>    <https://broadcast.amazon.com/videos/98363>.
>>>    - Find out more about room layouts
>>>    <https://it.amazon.com/en/help/articles/conference-room-configurations>.
>>>
>>>    - Get more information at it.amazon.com/meetings
>>>    <https://it.amazon.com/en/servicecatalog/meetings>.
>>>
>>> ================================================
>>>
>>> Created with Amazon Meetings <https://meetings.amazon.com> (fandree@, edit
>>> this series
>>> <https://meetings.amazon.com/#/meeting/new?entryID=Meetings-1614777141769-fandree-ef276bd02425fd937ae7c9d0a2756544>
>>> )
>>>
>>>
>>> Amazon Development Center (Romania) S.R.L. registered office: 27A Sf.
>>> Lazar Street, UBC5, floor 2, Iasi, Iasi County, 700045, Romania. Registered
>>> in Romania. Registration number J22/2621/2005.
>>>
>>
> Amazon Development Center (Romania) S.R.L. registered office: 27A Sf.
> Lazar Street, UBC5, floor 2, Iasi, Iasi County, 700045, Romania. Registered
> in Romania. Registration number J22/2621/2005.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opendev.org/pipermail/rust-vmm/attachments/20210309/4f506e6e/attachment-0001.html>


More information about the Rust-vmm mailing list