KVM Virtualization's storage stack has been improved with the addition of virtio-SCSI (a storage architecture for KVM based on SCSI) capabilities. Virtio-SCSI provides the ability to connect directly to SCSI LUNs and significantly improves scalability compared to virtio-blk. The advantage of virtio-SCSI is that it is capable of handling hundreds of devices compared to virtio-blk which can only handle approximately 25 devices and exhausts PCI slots.
Virtio-SCSI is now capable of inheriting the feature set of the target device with the ability to:
attach a virtual hard drive or CD through the virtio-scsi controller,
pass-through a physical SCSI device from the host to the guest via the QEMU scsi-block device,
and allow the usage of hundreds of devices per guest; an improvement from the ~25-device limit of virtio-blk.
virtio-scsi was introduced in Red Hat Enterprise Linux 6.3 as Technology Preview and is being promoted to fully supported in Red Hat Enterprise Linux 6.4. Windows guests (excluding Windows XP) are also supported with the latest virtio-win drivers.
Support for Intel's Next-generation Core Processor
Red Hat Enterprise Linux 6.4 adds support for Intel's next-generation Core processor to qemu-kvm so that KVM guests can utilize new features this processor provides, most important of which are: Advanced Vector Extensions 2 (AVX2), Bit-Manipulation Instructions 1 (BMI1), Bit-Manipulation Instructions 2 (BMI2), Hardware Lock Elision (HLE), Restricted Transactional Memory (RTM), Process-Context Identifier (PCID), Invalidate Process-Context Identifier (INVPCID), Fused Multiply-Add (FMA), Big-Endian Move instruction (MOVBE), F Segment and G Segment BASE instruction (FSGSBASE), Supervisor Mode Execution Prevention (SMEP), Enhanced REP MOVSB/STOSB (ERMS).
Support for AMD Opteron 4xxx Series CPU
The AMD Opteron 4xxx series processor is now supported by qemu-kvm. This allows new features of this processor series to be exposed to KVM guests, such as: the F16C instruction set, Trailing Bit Manipulation, Bit-Manipulation Instructions 1 (BMI1) decimate functions, and the Fused Multiply-Add (FMA) instruction set.
Guest Live Migration Using USB Forwarding via SPICE
In Red Hat Enterprise Linux 6.4, KVM supports live migration of guests using USB forwarding via SPICE, while maintaining existing USB device redirection for all configured devices.
Live Migration of Guests Using USB Devices
In Red Hat Enterprise Linux 6.4, KVM supports live migration of guests with USB devices. The following devices are supported: Enhanced Host Controller Interface (EHCI) and Universal Host Controller Interface (UHCI) local passthrough and emulated devices such as storage devices, mice, keyboards, hubs, and others.
QEMU Guest Agent Updated
The QEMU guest agent (provided by the qemu-guest-agent package) is now fully supported in Red Hat Enterprise Linux 6.4. It has been updated to upstream version 1.1, and includes the following notable enhancements and bug fixes:
guest-suspend-ram commands can now be used to suspend to RAM or to disk on a Windows system.
guest-network-get-interfaces command can now be used to acquire network interface information in Linux.
This update provides file system freeze support improvements and fixes.
This update includes various documentation fixes and small improvements.
Paravirtualized End-of-Interrupt Indication (PV-EOI)
Hosts and guests running Red Hat Enterprise Linux 6.3 and older require two VM exits (context switches from a VM to a Hypervisor) for each interrupt: one to inject the interrupt, and another to signal the end of the interrupt. When both host and guest systems are updated to Red Hat Enterprise Linux 6.4 or newer, they can negotiate a paravirtualized end-of-interrupt feature and only require one switch per interrupt. Consequently, using Red Hat Enterprise Linux 6.4 or newer as both a host and a guest, number of exits is reduced by half for interrupt-intensive workloads, such as incoming network traffic with a virtio network device. This leads to significant reduction in host CPU utilization for such workloads. Note that only edge interrupts are enhanced: for example e1000 networking uses level interrupts and was not improved.
Configurable Sound Pass-through
A sound device can now be detected as a
microphone or a
speaker in the guest system (in addition to being detected as
line-out). Sound devices can now function properly in guest applications that accept only certain types of input for voice recording and audio.
Inclusion of, and Guest Installation Support for, Microsoft Hyper-V Drivers
Integrated Red Hat Enterprise Linux guest installation, and Hyper-V para-virtualized device support in Red Hat Enterprise Linux 6.4 on Microsoft Hyper-V allows users to run Red Hat Enterprise Linux 6.4 as a guest on top of Microsoft Hyper-V hypervisors. The following Hyper-V drivers and a clock source have been added to the kernel shipped with Red Hat Enterprise Linux 6.4:
a network driver (
a storage driver (
an HID-compliant mouse driver (
a VMbus driver (
a util driver (
an IDE disk driver (
a balloon driver (
a clock source (i386, AMD64/Intel 64:
Red Hat Enterprise Linux 6.4 also includes support for Hyper-V as a clock source and a guest Hyper-V Key-Value Pair (KVP) daemon (
hypervkvpd) that passes basic information, such as the guest IP, the FQDN, OS name, and OS release number, to the host through VMbus. An IP injection functionality is also provided which allows you to change the IP address of a guest from the host via the
On Red Hat Enterprise Linux 6.4 guests, the
balloon driver, a basic driver for the dynamic memory management functionality supported on Hyper-V hosts, was added. The
balloon driver is used to dynamically remove memory from a virtual machine. In the current implementation of the balloon driver for Linux, only the ballooning functionality is implemented, not the hot-add functionality.