Xen Project 4.22 Release Notes
Overview
Xen Project 4.22.0 was released on 30 of July 2026.
Xen Project 4.22.0 is the work of 8 months of development.
New Feature Highlights
The list of new features can be found on the following page: Xen Project 4.22 Feature List
You can find information on support status (including security support) for various features in SUPPORT.md and Hypervisor Support Matrix.
Documentation is available online: Xen 4.22 Documentation
Build Requirements
Xen requires gcc v5.1 or later (x86), gcc 5.1 or later (arm32), or gcc 5.1 or later (arm64), gcc 12.2 or later (riscv64).
Build
First of all you will have to get the Xen 4.22 source code, which you can either download through our release tarball (including signature) from our download page. Alternatively, you can get the source in the following way:
- With a recent enough git (>= 1.7.8.2) just clone and checkout the proper tag (RELEASE-4.22.0) from the xen.git repo directly:
git clone -b RELEASE-4.22.0 https://xenbits.xenproject.org/git-http/xen.git
Build instructions can be found at Compiling Xen From Source or Compiling Xen From Source on NetBSD.
Changes affecting downstreams and users
- Users of XEN_DOMCTL_createdomain/xc_domain_create() must now pass DOMID_ANY to obtain an automatically allocated domid. The prior sentinel values (0 since the start of Xen, and DOMID_INVALID since Xen 4.21) now no longer represent a wildcard input.
- Enable pf-fixup option by default for PVH dom0.
- The libxenguest bzImage loader now uses the system liblz4 library.
- Support for per-domain Xenstore quota in C xenstored (includes xenstore-stubdom), libxl and xl.
- Support for Xenstore watch depth feature in C xenstored (includes xenstore-stubdom).
- Support for Bus Lock Threshold on AMD Zen5 and later CPUs, used by Xen to mitigate (by rate-limiting) the system wide impact of an HVM guest misusing atomic instructions.
- Support for CPIO microcode in discrete multiboot modules.
- Introduce get-core-temp command to xenpm to query CPU temperatures on Intel platforms.
- The cpuid_mask_* command line options for legacy CPUs. These were deprecated in Xen 4.7 and noted not to work correctly with AMD CPUs from 2011 onwards, nor work at all with Intel CPUs from 2012.
- The SYSCTL_get_cpu_levelling_caps sysctl. This is not known to have been used by any toolstack.
- Xenoprofile support. Oprofile themselves removed support for Xen in 2014 prior to the version 1.0 release, and there has been no development since before then in Xen.
- Cross-vendor support; guests can now only be configured as the same vendor as the host CPU. When added back in 2009, with enough trickery Intel and AMD CPUs could be made to be compatible enough to live migrate a guest, but the vendors have been diverging since then in ways that Xen cannot compensate for, and the advent of speculative security issues has put to rest any possibility of this being a viable option.
- Removed xenpm tool on non-x86 platforms as it doesn't actually provide anything useful outside of x86.
- Removed the XEN_FSIMAGE_FSDIR environment variable.
Known issues
While we do the utmost to make the release perfect, there are always fixes which are not quite complete on time. We will add those here. So if you run into trouble, please check this section.
