[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [RFC v2 0/6] hw/arm: Add support for non-contiguous iova regi
From: |
Shameer Kolothum |
Subject: |
[Qemu-arm] [RFC v2 0/6] hw/arm: Add support for non-contiguous iova regions |
Date: |
Wed, 16 May 2018 16:20:20 +0100 |
When the kernel reports valid iova ranges as non-contiguous,
memory should be allocated to Guest in such a way that
reserved regions(holes) are not visible by Guest.
This series retrieves the valid iova ranges based on the new
proposed VFIO interface for kernel [1]. It then populates the
first 1GB ram as a non-pluggable dimm and rest as a pc-dimm if
the valid iova ranges are non-contiguous.
Patch #3 of this series is loosely based on an earlier attempt
by Kwangwoo Lee to add hotplug/pc-dimm support to arm64[2]
RFC v1[3] --> RFCv2
-Based on new VFIO kernel interface
-Part of Mem modelled as pc-dimm
-Rebased to qemu 2.12.0
[1] https://lkml.org/lkml/2018/4/18/293
[2] https://lists.gnu.org/archive/html/qemu-devel/2016-07/msg04600.html
[3] https://lists.gnu.org/archive/html/qemu-devel/2017-11/msg02412.html
Shameer Kolothum (6):
hw/vfio: Retrieve valid iova ranges from kernel
hw/arm/virt: Enable dynamic generation of guest RAM memory regions
hw/arm/virt: Add pc-dimm mem hotplug framework
hw/arm: Changes required to accommodate non-contiguous DT mem nodes
hw/arm: ACPI SRAT changes to accommodate non-contiguous mem
hw/arm: Populate non-contiguous memory regions
default-configs/aarch64-softmmu.mak | 1 +
hw/arm/boot.c | 91 ++++++---
hw/arm/virt-acpi-build.c | 24 ++-
hw/arm/virt.c | 367 +++++++++++++++++++++++++++++++++++-
hw/vfio/common.c | 108 ++++++++++-
include/hw/arm/arm.h | 12 ++
include/hw/arm/virt.h | 3 +
include/hw/vfio/vfio-common.h | 7 +
linux-headers/linux/vfio.h | 23 +++
9 files changed, 589 insertions(+), 47 deletions(-)
--
2.7.4
- [Qemu-arm] [RFC v2 0/6] hw/arm: Add support for non-contiguous iova regions,
Shameer Kolothum <=