Ten Years of KVM: Article on LWN.net

As promised in the earlier post, I’ve written an article on some of the history and the journey of the KVM project:


I was initially going to just do a writeup on this blog, but I asked the folks at LWN if they were interested.. and they were!  This is my first article for LWN.  I’ve followed the site and the excellent content for a really long time, and now I’m very thrilled to also be an author.

Ten Years of KVM

We recently celebrated 25 years of Linux on the 25th anniversary of the famous email Linus sent to announce the start of the Linux project.  Going by the same yardstick, today marks the 10th anniversary of the KVM project — Avi Kivity first announced the project on the 19th Oct, 2006 by this posting on LKML:


The first patchset added support for hardware virtualization on Linux for the Intel CPUs.  Support for AMD CPUs followed soon:


KVM was subsequently merged in the upstream kernel on the 10th December 2006 (commit 6aa8b732ca01c3d7a54e93f4d701b8aabbe60fb7).  Linux 2.6.20, released on 4 Feb 2007 was the first kernel release to include KVM.

KVM has come a long way in these 10 years.  I’m writing a detailed post about some of the history of the KVM project — stay tuned for that. [Update 3 Nov 2016: I’ve written that article now at LWN.net: https://lwn.net/Articles/705160/]

Till then, cheers!

FOSSASIA 2016 talk: Virtualization and Containers

I did a talk earlier today at the wonderful venue of the Science Centre Singapore at FOSSASIA 2016, titled ‘Virtualization and Containers.’ Over the last few years, several “cool new” and “next big thing” technologies have been introduced to the world, and these buzzwords leave people all dazed and confused.

One of my aims for this talk was to introduce people to the concepts behind virtualization and containers, explain that these aren’t really new technologies, and why there’s so much interest in them of late.

I also think there’s a lot of misinformation spread around these topics, so this was also an attempt to set some facts straight.

The slides are here, and I will post an update with the link to the video.

Edit: video is up.

FOSDEM 2016 Talk: Live Migration of Virtual Machines From The Bottom Up

I just did a talk titled ‘Live Migration of Virtual Machines From The Bottom Up‘ at the FOSDEM conference in Brussels, Belgium.  The slides are available at this location.

The talk introduced the KVM stack (Linux, KVM, QEMU, libvirt) and live migration; introduced ways the higher layers (especially oVirt and OpenStack) use KVM and migration, and what challenges the KVM team faces in working with varying use-cases and new features added to make migration work, and work faster.

There was a video recording, I will post the link to it in a separate post.

Update: video recording available at this location.

SCaLE14x Talk: KVM Weather Report

I did a talk titled ‘KVM Weather Report‘ at the SCaLE conference in Pasadena, California yesterday.  The slides are available at this location.

The talk introduced the KVM stack (Linux, KVM, QEMU, libvirt); briefly went over some features and the communities around the projects, and discussed some of the new features added to the KVM stack in the last year.

Next up is my talk on live migration of VMs at FOSDEM in Belgium.

QEMU Maintainer Interviews for the 2.5 release

Hot on the heels of the QEMU 2.4 release, we have QEMU version 2.5 releasing today.

QEMU creates the virtual machine which guest operating systems run on top off.  QEMU also handles host-specific things, like the storage and networking on the host.

Given the wide scope of this project, there are several changes that many contributors add to each release.  To repeat the success with the 2.4 release video, I asked maintainers to record segments for the 2.5 release as well.  A few maintainers and contributors chipped in with videos, and a few updated the ChangeLog page, and added new feature pages.  Thanks to all who pitched in!

Continue reading “QEMU Maintainer Interviews for the 2.5 release”

QEMU Maintainers on the 2.4 Release

QEMU is the software that creates virtual hardware which guest operating systems run on top of.  All (well, almost all — see note below[*]) the hardware that a guest OS has access to is actually written to some specifications in software — i.e. no physical hardware is involved.  For the QEMU/KVM hypervisor, most of these devices are written in the QEMU source repository.  A few devices are part of the KVM code in the Linux kernel.  QEMU also handles a lot of host-specific stuff, like storage and networking for the virtual machines.

[* Exception: physical hardware devices assigned to guests.]

Many contributors to the QEMU and KVM projects meet at the annual KVM Forum conference to talk about new features, new developments, what changed since the last conference, etc.

The QEMU project released version 2.4 just a week before the 2015 edition of KVM Forum.  I thought that was a good opportunity to gather a few developers and maintainers, and get them on video where we can see them speak about the improvements they made in the 2.4 release, and what we can expect in the 2.5 release.

Continue reading “QEMU Maintainers on the 2.4 Release”

Going to KVM Forum 2015


In its 8th edition, the KVM Forum is moving back to North America this year, co-located with LinuxCon NA in Seattle.  It starts with a KVM + Xen hackathon and the (invite-only) QEMU Summit on the 18th August, followed by talks and BOFs on the 19th, 20th, and the 21st.  The schedule is here.  To add all talks to your calendar, use this ics.  The KVM Forum wiki page will have information on live streaming of talks, videos, slides, etc.

If you’re going to be around, please come up and say hi!