Support VirtIO in AGL

Support VirtIO in AGL

Members: 

*Note: If anyone would like drop from this member list, please remove your name or alternatively contact @Jerry, Zhao Jiancong

Company

Member

Company

Member

Panasonic

@Jerry, Zhao Jiancong (Current EG Lead)

Linux Foundation

@Walt Miner @Jan-Simon Moeller

ARM

Matt Spencer

Carmeq

@Laurent Cremmer

Mark Silberberger
Nicolas Blazevic

Tuxera

@Joel Catala (Deactivated)

@Eva Rio

Linaro

Francois Ozog

Mike Holmes

Leonardo Garcia

OpenSynergy

@Mikhail Golubev (Deactivated)

Konsulko

@Scott Murray

ADIT

@Kenji Hosokawa
@Naoko Tanibata

@Eugen Friedrich (ADITG/SW1)

AGL Google Summer of Code (GSoC) 2020 student

@Parth Dode

@Jakub Lužný 

Collabora

@Daniel Stone

@Marius Vlad

Renesas

@Stephen Lawrence (Unlicensed)

Role of AGL in Virtualization Standardization

  • OASIS(VirtIO 1.1): general standard on virtio specification

  • GENIVI - AVPS: automotive-centered specification

  • AGL: coding & implementation for real automotive use (more close to real product)

Virtualization EG Roadmap in 2020

  • Support VirtIO in AGL

    • Multi-VM VirtIO PoC 

    • AGL Virtualization White Paper Update

    • VirtIO Frontend Integration in AGL

*Note: Anyone would like to propose other activities for EG, please write down here and state your name beside.

Sub-activities

Multi-VM VirtIO PoC

  • Purpose: To show the features and evaluate performance for VirtIO automotive use

  • Define common specification, architecture and evaluation items for the EG PoC

    • Discussion on VirtIO Devices to be used in different automotive use cases (IVI, IC, Telematics)

      • what virtual devices should be used

      • how the virtual devices should be used (pass-through/front-end/back-end)

  • Implementation

    • HW:

      • Emulator: QEMU 

      • SoC: TBD

        • Options:

          • Renesas M3/H3 (H3 is hard to get for some members)

          • Qualcomm Board

          • QEMU x86

          • other companies' SoC

      • HW: TBD

        • Options:

          • Renesas Reference Board

          • LEGO

          • ...

    • SW: 

      • Hypervisor: Any OSS/commercial hypervisor that supports VirtIO

      • Front-end Device Driver: Open Source

      • Back-end Device Driver: Proprietary for most of the case (QEMU has open source backend) 

    • How:

      • idea: break down to several PoCs with incremental features

        • step 1: common/basic feature only (only 1 guest VM, only simple virtio devices such as virtio-blk, virtio-net)

        • step 2: more advanced feature

    • Who:

      • option 1: voluntary implementation from members (PoC in the name of the company/community) → option 1 selected

        • Volunteer 1: OpenSynergy (@Mikhail Golubev (Deactivated) )

          • Hardware: LEGO Renesas Board (AGL Reference HW)

          • Hypervisor: COQOS Hypervisor

          • VM: 1 AGL Backend (HH 8.x) & 1 AGL Frontend (HH 8.x) => think about updating to Jellyfish

          • virtio devices: blk, net, input, gpu(2d), gpu(3d? → may be passthrough)

        • Volunteer 2: Linaro (@Former user (Deleted))

          • Hardware: 96Board

          • Hypervisor: Xen Hypervisor

          • VM: TBD

          • virtio devices

      • option 2: get funding support from Linux Foundation (PoC in the name of AGL community)

    • Potential Target Event:
      @Walt Miner to check if possible to present PoCs in the name of Virtualization EG (ALS, AMM)

      • 2020.12 AGL ALS → held virtually on December 2~4 (option selected. will attend in the form of virt-eg)

        • @Jerry, Zhao Jiancong to send a title and abstract for the talk to @Walt Miner  (by Sep 23, 2020)

      • 2021.1 CES2021 → AGL will not attend CES2021

      • 2021.3 AGL AMM

Update on AGL Virtualization White Paper

  • Purpose:

    • A summary of virtio discussion in AGL Virtualization EG

    • To update original contents in the white paper published 2 years ago

    • To include new topics such as standardization in automotive virtualization (virtio) in the whitepaper

  • Previous AGL Virtualization White Paper: https://www.automotivelinux.org/blog/2018/06/20/agl-publishes-virtualization-white-paper/

  • Possible Topics:

    • Role of AGL in virtualization standardization (compared with other OSS promoting community such as GENIVI, OASIS)

    • Device Virtualization (VirtIO) Related

      • What is VirtIO and why it is important

      • How VirtIO can be used in automotive (uses cases in IC, IVI, Telematics)

      • Sample VirtIO-based architecture

      • Performance Indicator/Criteria for different virtual devices. Possible open source tools for the evaluation.

    • Future of Standardization in Virtualization of Automotive (such as virtio-backend standardization)

Status: Pending @Walt Miner  to find the editable version of previous whitepaper

VirtIO Frontend Integration In AGL

  • Activity Leader: @Mikhail Golubev (Deactivated)

  • Yocto layer to enable user to choose whether to use VirtIO or not.

  • Introduce virtio-blk, net, console, random generator, gpu2d&3d in AGL K

    • release date: Feb 12, 2021 

    • release candidate 1: Nov 20, 2020 

    • release candidate 2: Dec 2, 2020 
      (ddl to include new feature in to AGL K is RC2)

  • Introduce other standardized and upstream available virtio devices in AGL L

VirtIO Backend Standardization Discussion

Pending to find a volunteer to lead the activity

Members: 

*Note: If anyone would like drop from this member list, please remove your name or alternatively contact @Jerry, Zhao Jiancong

Company

Member

Company

Member

Panasonic

@Jerry, Zhao Jiancong (Current EG Lead)

Linux Foundation

@Walt Miner @Jan-Simon Moeller

ARM

Matt Spencer

Carmeq

@Laurent Cremmer

Mark Silberberger
Nicolas Blazevic

Tuxera

@Joel Catala (Deactivated)

@Eva Rio

Linaro

Francois Ozog

Mike Holmes

Leonardo Garcia

OpenSynergy

@Mikhail Golubev (Deactivated)

Konsulko

@Scott Murray

ADIT

@Kenji Hosokawa
@Naoko Tanibata

@Eugen Friedrich (ADITG/SW1)

AGL Google Summer of Code (GSoC) 2020 student

@Parth Dode

@Jakub Lužný 

Collabora

@Daniel Stone

@Marius Vlad

Renesas

@Stephen Lawrence (Unlicensed)

Role of AGL in Virtualization Standardization

  • OASIS(VirtIO 1.1): general standard on virtio specification

  • GENIVI - AVPS: automotive-centered specification

  • AGL: coding & implementation for real automotive use (more close to real product)

Virtualization EG Roadmap in 2020

  • Support VirtIO in AGL

    • Multi-VM VirtIO PoC 

    • AGL Virtualization White Paper Update

    • VirtIO Frontend Integration in AGL

*Note: Anyone would like to propose other activities for EG, please write down here and state your name beside.

Sub-activities

Multi-VM VirtIO PoC

  • Purpose: To show the features and evaluate performance for VirtIO automotive use

  • Define common specification, architecture and evaluation items for the EG PoC

    • Discussion on VirtIO Devices to be used in different automotive use cases (IVI, IC, Telematics)

      • what virtual devices should be used

      • how the virtual devices should be used (pass-through/front-end/back-end)

  • Implementation

    • HW:

      • Emulator: QEMU 

      • SoC: TBD

        • Options:

          • Renesas M3/H3 (H3 is hard to get for some members)

          • Qualcomm Board

          • QEMU x86

          • other companies' SoC

      • HW: TBD

        • Options:

          • Renesas Reference Board

          • LEGO

          • ...

    • SW: 

      • Hypervisor: Any OSS/commercial hypervisor that supports VirtIO

      • Front-end Device Driver: Open Source

      • Back-end Device Driver: Proprietary for most of the case (QEMU has open source backend) 

    • How:

      • idea: break down to several PoCs with incremental features

        • step 1: common/basic feature only (only 1 guest VM, only simple virtio devices such as virtio-blk, virtio-net)

        • step 2: more advanced feature

    • Who:

      • option 1: voluntary implementation from members (PoC in the name of the company/community) → option 1 selected

        • Volunteer 1: OpenSynergy (@Mikhail Golubev (Deactivated) )

          • Hardware: LEGO Renesas Board (AGL Reference HW)

          • Hypervisor: COQOS Hypervisor

          • VM: 1 AGL Backend (HH 8.x) & 1 AGL Frontend (HH 8.x) => think about updating to Jellyfish

          • virtio devices: blk, net, input, gpu(2d), gpu(3d? → may be passthrough)

        • Volunteer 2: Linaro (@Former user (Deleted))

          • Hardware: 96Board

          • Hypervisor: Xen Hypervisor

          • VM: TBD

          • virtio devices

      • option 2: get funding support from Linux Foundation (PoC in the name of AGL community)

    • Potential Target Event:
      @Walt Miner to check if possible to present PoCs in the name of Virtualization EG (ALS, AMM)

      • 2020.12 AGL ALS → held virtually on December 2~4 (option selected. will attend in the form of virt-eg)

        • @Jerry, Zhao Jiancong to send a title and abstract for the talk to @Walt Miner  (by Sep 23, 2020)

      • 2021.1 CES2021 → AGL will not attend CES2021

      • 2021.3 AGL AMM

Update on AGL Virtualization White Paper

  • Purpose:

    • A summary of virtio discussion in AGL Virtualization EG

    • To update original contents in the white paper published 2 years ago

    • To include new topics such as standardization in automotive virtualization (virtio) in the whitepaper

  • Previous AGL Virtualization White Paper: https://www.automotivelinux.org/blog/2018/06/20/agl-publishes-virtualization-white-paper/

  • Possible Topics:

    • Role of AGL in virtualization standardization (compared with other OSS promoting community such as GENIVI, OASIS)

    • Device Virtualization (VirtIO) Related

      • What is VirtIO and why it is important

      • How VirtIO can be used in automotive (uses cases in IC, IVI, Telematics)

      • Sample VirtIO-based architecture

      • Performance Indicator/Criteria for different virtual devices. Possible open source tools for the evaluation.

    • Future of Standardization in Virtualization of Automotive (such as virtio-backend standardization)

Status: Pending @Walt Miner  to find the editable version of previous whitepaper

VirtIO Frontend Integration In AGL

  • Activity Leader: @Mikhail Golubev (Deactivated)

  • Yocto layer to enable user to choose whether to use VirtIO or not.

  • Introduce virtio-blk, net, console, random generator, gpu2d&3d in AGL K

    • release date: Feb 12, 2021 

    • release candidate 1: Nov 20, 2020 

    • release candidate 2: Dec 2, 2020 
      (ddl to include new feature in to AGL K is RC2)

  • Introduce other standardized and upstream available virtio devices in AGL L

VirtIO Backend Standardization Discussion

Pending to find a volunteer to lead the activity