Xen 4.2 Release Notes
Overview
New Features
High level features include:
- Security:
- Support for Intel Supervisor Mode Execution Protection (SEMP), which prevents the execution usermode of pages by the Xen hypervisor, making many application-to-hypervisor exploits much harder.
- Various Xen Security Modules (XSM) / Flask improvements. The XSM framework and the Xen Flask security module is an application of the Flask architecture to the Xen hypervisor.
- Scalability:
- Up to 256 Host CPUs for 64 bit HV
- Multiple PCI segment support
- Prefer oxenstored when present. Oxenstored is faster, more scalable and more reliable than the C xenstored. In particular the transaction model in oxenstored does not involve taking a complete copy of the database and aborting on any (even non-conflicting) other change. For more detail on the design, implementation and a performance comparisaon see this paper.
- Also see: Xen 4.2 Limits
- Performance
- PCI pass-through for Linux Guests (see "Xen 4.2: XL and PCI pass-through")
- AMD SVM DecodeAssist support
- Remus memory image compression
- Scheduler improvements (sched_ratelimit_us and tslice_ms; see "new commands" and "Xen 4.2: CPUPOOLS")
- Support for native EFI booting
- Libvchan interdomain communications library is now in Xen mainline
- XL improvements
- XEND is now formally deprecated
- For a feature comparisan between XL and XEND see "XL vs Xend Feature Comparison".
- Documentation improvements (e.g. "man pages", and lots of improvements to the Xen wiki)
- RAS (Reliability, Availability and Serviceability):
- Enhanced Machine Check Architecture (MCA) support to include more failure types
- APEI support (ACPI Platform Error Interface)
A more complete list of new features and changes is available at Xen 4.2
Default Toolstack
XL is now the default toolstack supplied with Xen. Please see the XL page for guidance on migrating from Xend.
The previous Xend toolstack is now formally deprecated and should be expected to be removed in the 4.3 timescale. Therefore it is strongly recommended that users evaluate Xen 4.2 with XL for their use case and report any omissions or blockers such that they can be addressed for 4.3.
Build Requirements
The requirements for building Xen are documented in the README file in the Xen source tree.
Some additional build dependencies have been added since Xen 4.1:
- libyajl
- glib
- pkg-config
- markdown (optional)
In addition Xen will now prefer to use the system wide libaio if it is available. If libaio is not installed then an intree version will be used. Users are strongly encouraged to install their distribution's version of libaio.
An additional step has also been added to the build process. It is now necessary to run:
$ ./configure
before building the tools (e.g. make tools, make world, make dist etc).
As a consequence of this change Xen now defaults to installing libraries into /usr/lib by default. Users on systems which use /usr/lib64 for 64-bit libraries should use the --libdir option. e.g:
$ ./configure --libdir=/usr/lib64
Known issues
XL's default configuration is not compatible with driver domains. To use driver domains with XL you should set run_hotplug_scripts=0 in /etc/xen/xl.conf.
On systems running a 32-bit hypervisor xl info will report incorrectly report large values for sharing_used_memory and sharing_freed_memory. Memory sharing is not supported on the 32-bit hypervisor and these should read zero.