From: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Hello all.
The purpose of this patch series is to add missing virtio-mmio bits to Xen toolstack on Arm.
The Virtio support for toolstack [1] was postponed as the main target was to upstream IOREQ/DM
support on Arm in the first place. Now, we already have IOREQ support in, so we can resume Virtio
enabling work. You can find previous discussions at [2].
Patch series [3] is based on recent "staging branch"
(608531a0cc34a5bc096ccf585e16f182b5ed83e1 MAINTAINERS: Resign from my maintainership roles)
and tested on Renesas Salvator-X board + H3 ES3.0 SoC (Arm64) with virtio-mmio disk backend [4]
running in Driver domain and unmodified Linux Guest running on existing virtio-blk driver (frontend).
No issues were observed. Guest domain 'reboot/destroy' use-cases work properly.
Any feedback/help would be highly appreciated.
[1]
https://lore.kernel.org/xen-devel/1610488352-18494-24-git-send-email-olekstysh@gmail.com/
https://lore.kernel.org/xen-devel/1610488352-18494-25-git-send-email-olekstysh@gmail.com/
[2]
https://lists.xenproject.org/archives/html/xen-devel/2021-01/msg02403.html
https://lists.xenproject.org/archives/html/xen-devel/2021-01/msg02536.html
https://lore.kernel.org/xen-devel/1621626361-29076-1-git-send-email-olekstysh@gmail.com/
[3] https://github.com/otyshchenko1/xen/commits/libxl_virtio1
[4] https://github.com/xen-troops/virtio-disk/commits/ioreq_ml3
Julien Grall (1):
libxl: Introduce basic virtio-mmio support on Arm
Oleksandr Tyshchenko (1):
libxl: Add support for Virtio disk configuration
docs/man/xl-disk-configuration.5.pod.in | 27 +
tools/golang/xenlight/helpers.gen.go | 6 +
tools/golang/xenlight/types.gen.go | 4 +
tools/include/libxl.h | 6 +
tools/libs/light/libxl_arm.c | 131 ++++-
tools/libs/light/libxl_device.c | 38 +-
tools/libs/light/libxl_disk.c | 99 +++-
tools/libs/light/libxl_types.idl | 4 +
tools/libs/light/libxl_types_internal.idl | 1 +
tools/libs/light/libxl_utils.c | 2 +
tools/libs/util/libxlu_disk_l.c | 881 +++++++++++++++---------------
tools/libs/util/libxlu_disk_l.h | 2 +-
tools/libs/util/libxlu_disk_l.l | 1 +
tools/xl/xl_block.c | 11 +
xen/include/public/arch-arm.h | 7 +
15 files changed, 772 insertions(+), 448 deletions(-)
--
2.7.4