LVC21-314: VirtIO on Xen hypervisor (Arm)

Session Abstract

The motivation of supporting VirtIO on Xen (Arm) is quite clear. There is an increasing interest and requirement to have flexible, generic and standardized cross-hypervisor solution for I/O virtualization in the automotive and embedded areas. Providing a standardized interface and device models for device para-virtualization in hypervisor environments, the VirtIO interface allows us to move Guest domains among different hypervisor systems without further modification at the Guest side. Xen hasn’t supported VirtIO on Arm so far, this is a significant gap in the list of supported features and this gap needs to be filled. In this talk I will briefly describe the possible approach of implementing virtio-mmio on Xen (Arm) using Xen's IOREQ Server (I/O Request Server) feature to forward guest MMIO access to a DM (device model) which could be used to implement a virtio-mmio backend or even mediator outside of the hypervisor. I will outline the advantages and disadvantages of this approach as well as open questions/concerns regarding security, performance in the proposed approach and possible steps for the improvement. Also I am going to demonstrate a PoC on Arm64 based board powered by Xen with Guest running on VirtIO block device instead of a traditional Xen PV block device without any specific modifications to the Guest OS.

Session Speakers

Oleksandr Tyshchenko

EPAM (Lead Software Engineer at EPAM Systems)

Oleksandr Tyshchenko is an embedded software engineer from EPAM Systems. He studied radio-electronics at National Technical University of Ukraine 'Kyiv Polytechnic Institute' and graduated in 2002. Oleksandr has over 17 years of software development experience. He has participated in a wide range of embedded projects related to the different markers: avionic, fuel industry, mobile and automotive. Now he mainly specializes in Linux BSP and different virtualization questions on Xen (Arm), mainly in Power Management and IOMMU topics. Oleksandr is XEN Open Source contributor.

The motivation of supporting VirtIO on Xen (Arm) is quite clear. There is an increasing interest and requirement to have flexible, generic and standardized cross-hypervisor solution for I/O virtualization in the automotive and embedded areas. Providing a standardized interface and device models for device para-virtualization in hypervisor environments, the VirtIO interface allows us to move Guest domains among different hypervisor systems without further modification at the Guest side. Xen hasn’t supported VirtIO on Arm so far, this is a significant gap in the list of supported features and this gap needs to be filled.

In this talk I will briefly describe the possible approach of implementing virtio-mmio on Xen (Arm) using Xen’s IOREQ Server (I/O Request Server) feature to forward guest MMIO access to a DM (device model) which could be used to implement a virtio-mmio backend or even mediator outside of the hypervisor. I will outline the advantages and disadvantages of this approach as well as open questions/concerns regarding security, performance in the proposed approach and possible steps for the improvement. Also I am going to demonstrate a PoC on Arm64 based board powered by Xen with Guest running on VirtIO block device instead of a traditional Xen PV block device without any specific modifications to the Guest OS.

comments powered by Disqus

Recent Posts

Other Posts

Sign up. Receive Updates. Stay informed.

Sign up to our mailing list to receive updates on the latest Linaro Connect news!