1. A Quick Peak at Xen Project 4.6
What's In the Latest Release
Russell Pavlicek
Xen Project Evangelist
2. What's the Focus of 4.6?
● Code Quality
● Enablement of Security Appliances
● Hardening Security Features
● Predictable Release Cycle
● Make the Cloud Run Faster & More Predictably
● Increase of just 6 thousand lines of code
3. Hypervisor General Updates
● VM event subsystem
– Redesigned to allow for zero-footprint guest introspection for security applications
● Improved XSM (Xen Security Modules, aka FLASK) support
– Now has a default working policy, always tested
– Target is to eventually have XSM enabled by default
● Virtual Trusted Platform (vTPM) 2.0 support
– Exposes hardware TPM to guest VMs
● Grant table scalability improvement
– Finer grain locks improve scalability, increasing throughput by as much as 100%
● Use ticket lock to improve fairness
– New logic allows for scaling to thousands of VMs per host
● Removal of SEDF scheduler
– Removing unused cruft from code base keeps us lean and mean
● Move Mini-OS out of Xen Project code base
– Being maintained separately to assist the Unikernel community and to keep codebase small
4. X86-Specific Hypervisor Updates
●
Intel alternate P2M
– Enables zero-footprint VM introspection & faster NFV
● Intel page modification logging
– Offloads page dirty logging to hardware, improving performance
●
Intel cache allocation technology
– Higher performance for NFV, real-time, and video-on-demand workloads
●
Intel memory bandwidth monitoring
– Allows admins to identify memory bandwidth saturation, so VMs can be migrated
● Intel reserve memory region reporting
– Allow for safe device passthrough
●
Virtual performance monitoring unit support
– Allows use of Linux perf tool (still requires modifications)
●
Virtual NUMA for HVM guests
– Additions to prior release makes NUMA for HVM guests functional
5. ARM-Specific Hypervisor Updates
● VCPUs increased from 8 to 128
● Passthrough for non-PCI devices
● ARM GICv2 on GICv3 support
● 32 bit userspace in 64 bit guest support
● OVMF for ARM
● New platform support
– Several new ARM boards are supported
6. Toolstack Updates
● Libxc / libxl migration v2
– A more flexible migration schema which will power other capabilities
● Remus (HA) based on migration v2
● Libxl async operation cancellation support
– Libvirt can now cancel long-running async operations
● Improved SPICE/QXL support
● AHCI disk controller support
● Host I/O topology querying interface
– Allows upper layers to find out the I/O technology of the host's hardware
● Import Xenalyze in-tree
– Analyzes the trace buffer; now it will be properly maintained
● 64K page ARM guest support
7. FreeBSD Support
● Experimental PVH Dom0 & DomU support
● Removal of classic i386 PV port
● Blkfront indirect descriptor support
● Removal of old broken FreeBSD-specific
blkfront/blkback extensions
● ARM32 & ARM64 guest support in progress
8. New Test Lab!
Xen Project has a new test lab funded by the Advisory Board. Currently it has 24
hosts and is going to expand in the future. Xen Project code quality benefits
tremendously from this larger capacity and more test coverage. Number of test
cases almost doubled during 4.6 cycle. Some interesting test cases:
● XSM
● Stubdomains
● Libvirt
● Migration across Xen Project versions
● Test with different disk formats (e.g., QCOW2, VHD, raw)
More test cases are in the pipeline, including test case for OpenStack's devstack,
performance tests, FreeBSD Dom0 etc.
9. Ecosystem Improvements
● Project Raisin
– A play on the phrase “Raise Xen”; an easier way to build and
package the software. Includes a test suite.
● OpenStack CI (Continuous Integration) loop is running!
– Makes sure that the hypervisor is always ready for OpenStack
● Xen Project now in OpenStack hypervisor quality group
B
– We had been in group C
– Goal is to progress to group A soon
10. Where Can I Get It?
● The Hub of the Xen Project Universe:
– http://www.XenProject.org/
– In footer: Resources > Downloads > Xen Project
Archives
– When it is released, the tarball will be there
– Also, a blog with links to github will appear on
http://blog.XenProject.org/ early next week