KVM-65 was released today. The most interesting feature in this release is support for the S/390 architecture, more specifically, the System z9 line of mainframes. On x86, the most interesting change is the separation of timer and I/O completion handling into a separate thread (these used to be serviced by the same thread that executed vcpu 0). The change should result in improved responsiveness and better smp performance.
As Anthony Liguori puts it:
“The s390 is the grand-daddy of virtualization. Everything started there. In so many ways, everything we’re doing with x86 virtualization is just playing catch-up. The new exciting features like hardware virtualization support and hardware paging support have been in s390 forever.”
“s390 clearly has a very mature hypervisor. What many people may not know though is that it’s normal to run two hypervisors at any given time on s390. At the bottom level, there’s PR/SM which divides the machine into rather coarse partitions. Within a PR/SM partition, you can run z/OS or Linux. You can also run z/VM within a PR/SM partition. z/VM is another hypervisor that allows for much more sophisticated features like memory overcommit and processor overcommit. The user has the ability to decide how much hypervisor they need to maximize the efficiency of their workloads.”
These are the changes from KVM-64:
- fix hotplug build for non-x86
- ignore reads from the apic EOI register
- fixes Linux 2.6.25-rclate bootup problems
- compile fixes
- fix ftruncate() on hugetlbfs use on older Linux hosts
- endianness fix virtio-block
- fixes virtio-blk on ppc
- refactor in-kernel PIT to be a separate device
- separate thread for I/O completions and timers
- fix vmmouse smp
- fix loading uninitialized variable into apic registers
- fixes apic being disabled on smp Linux guests running X
- disable kvm clock on Voyager or SGI Visual WS
- s390 support
- fix large pages
- speedup msr processing on Intel via msr bitmap
- add slab shrinker support
- reduces nonswappable footprint under memory pressure
- code cleanup
- vm refcounting
- only mark a page as accessed if it was really accessed by the guest
- drop slots_lock while in guest mode
- fixes long latencies with iothread
- prepopulate guest pages only after write-protecting them
- fixes smp race leading to guest spinning
[Source: Tales of a Code Monkey]
Leave a Reply