Xen
Xen is an open-source virtualization hypervisor.
www.xenproject.org
Activity Earlier In The Year
- x86/intel: workaround several MONITOR/MWAIT errata
Roger Pau Monne: There are several errata on Intel regarding the usage of the MONITOR/MWAIT instructions, all having in common that stores to the monitored region might not wake up the CPU.
Fix them by forcing the sending of an IPI for the affected models.
The Ice Lake issue has been reproduced internally on XenServer hardware, and the fix does seem to prevent it. - xen/riscv: Increase XEN_VIRT_SIZE
Oleksii Kurochko: A randconfig job failed with the following issue: riscv64-linux-gnu-ld: Xen too large for early-boot assumptions
The reason is that enabling the UBSAN config increased the size of the Xen binary.
Increase XEN_VIRT_SIZE to reserve enough space, allowing both UBSAN and GCOV to be enabled together, with some slack for future growth.
Additionally, add checks to verify that XEN_VIRT_START is 1GB-aligned and XEN_VIRT_SIZE is 2MB-aligned to reduce the number of page tables needed for the initial mapping. - CI: Add Arm64/Arm32 MPU build jobs
Michal Orzel: Just like for RISCV and PPC, the earlier we enable the CI build the better. - xen/riscv: implement basic aplic_preinit()
Oleksii Kurochko: Introduce preinitialization stuff for the RISC-V Advanced Platform-Level Interrupt Controller (APLIC) in Xen:- Implementing the APLIC pre-initialization function (`aplic_preinit()`), ensuring that only one APLIC instance is supported in S mode. - xen/riscv: implement software page table walking
Oleksii Kurochko: RISC-V doesn't have hardware feature to ask MMU to translate - radix-tree: don't left-shift negative values
Jan Beulich: Any (signed) integer is okay to pass into radix_tree_int_to_ptr(), yet left shifting negative values is UB. - xen/x86: add CPPC feature flag for AMD processors
Penny Zheng: Add Collaborative Processor Performance Control feature flag for AMD processors.
amd-cppc is the AMD CPU performance scaling driver that introduces a new CPU frequency control mechanism on modern AMD APU and CPU series. - x86/MCE-telem: adjust cookie definition
Jan Beulich: struct mctelem_ent is opaque outside of mcetelem.c; the cookie abstraction exists - afaict - just to achieve this opaqueness. - misra: add deviation for MISRA C Rule R11.8
Alessandro Zucchelli: Rule 11.8 states as following: "A cast shall not remove any `const' or `volatile' qualification from the type pointed to by a pointer".
Function `__hvm_copy' in `xen/arch/x86/hvm/hvm.c' is a double-use function, where the parameter needs to not be const because it can be set for write or not. - tools/xl: add suspend and resume subcommands
zithro / Cyril Rébert: The xl command doesn't provide suspend/resume, so add them : xl suspend <Domain> xl resume <Domain>