[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [RFC PATCH 0/4] arm: Implement ARM DEN 0057A PV time interface
This series proposes the standard PV time implementation as per ARM DEN 0057A. The first three commits are preparatory work, where no functional changes are intended. The motivation: The VCPUOP_register_runstate_memory_area hypercall is still actively used, e.g., in the Linux arm64. When KPTI is enabled, the area was not registered from the beginning due to the VA not always being valid. In such cases, Linux could fall back to using the standard PV time interface (ARM DEN 0057A), but this interface has not been implemented in Xen for arm64. Meanwhile, the VCPUOP_register_runstate_phys_area was introduced, though it's unclear whether this would be used in Linux arm64, nor when it will be prevalent amongst every possible downstream domain Linux variant even if so. And of course Linux is not an only option for the Xen arm64. Therefore, implementing the standard way of sharing PV time may be generically beneficial, reducing reliance on specially crafted hypercalls, the usage of which by guest VMs is not always guaranteed. Note that the PV_TIME_ST interface communicates with IPA (GPA), not GVA. Koichiro Den (4): xen/arm: Add wrapper find_unused_regions xen/arm: Move make_hypervisor_node() xen/arm: Move make_resv_memory_node() xen/arm: Implement standard PV time interface as per ARM DEN 0057A xen/arch/arm/domain.c | 30 +++++ xen/arch/arm/domain_build.c | 168 +++++++++++++++++++++--- xen/arch/arm/include/asm/domain.h | 17 +++ xen/arch/arm/include/asm/smccc.h | 12 ++ xen/arch/arm/vsmc.c | 38 ++++++ xen/common/device-tree/dom0less-build.c | 2 +- xen/common/device-tree/static-shmem.c | 40 ------ xen/include/xen/fdt-domain-build.h | 2 + xen/include/xen/static-shmem.h | 9 -- 9 files changed, 248 insertions(+), 70 deletions(-) -- 2.48.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |