qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] New kvm-related qemu patch queue


From: Avi Kivity
Subject: [Qemu-devel] New kvm-related qemu patch queue
Date: Sun, 10 Jan 2010 14:02:27 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091209 Fedora/3.0-4.fc12 Thunderbird/3.0

In order to improve qemu.git kvm integration quality wrt performance, features, and reliability Marcelo and I will begin to maintain a patch queue based on qemu.git containing kvm-related patches. We will review and apply patches to this queue, test them using the same test suite that is used for qemu-kvm.git, and regularly submit them for inclusion in qemu.git, mimicking the relationship between kvm.git and Linus' linux-2.6.git.

One of the problems of qemu.git kvm support is that it is a clean reimplementation, and thus some of the nuances that were carefully ironed out in qemu-kvm.git are lost. To that end, we would like to change the process of adding features as follows:

- first, the feature in qemu-kvm.git master is morphed to a form suitable for merging into qemu.git - when that has been accomplished, the feature is broken into patches and merged into the patch queue

This process ensures that important details are not lost: the morphing step attempts to preserve all the nuances, and it is much easier to spot a behaviour change in a review than to spot a missing behaviour in a new feature. This was successfully used to merge i386 and x86_64 arch support in Linux.

Some qemu-kvm.git features (primarily support for very old kernels) can be dropped, simplifying the convergence process.

Over time, qemu-kvm.git master will converge with qemu.git master and all that will remain is the patch queue.

Features in qemu-kvm.git not present in qemu.git include:
- smp support
- in-kernel irqchip
- in-kernel pit
- tpr patching
- device assignment
- kvm paravirtualization
- boot=on (extboot, or a real option rom)
- test suite
- ia64
- signalfd support

Many others are implemented differently in the two trees.

The patch queue will appear as a branch 'uq/master' (for 'upstream queue); if necessary branches for the stable series will also be created.

In order to get a kvm feature into qemu.git, please observe the following process:

- post a patch series against qemu-kvm.git/master that implements the feature, or changes an existing feature to use qemu.git infrastructure - once that's merged, post a patch series against qemu-kvm.git/uq/master that brings the same code into qemu.git.

The new branch will be subject to the same automatic testing that qemu-kvm.git is.

Please post patches to both qemu-devel and kvm mailing lists.

This won't work for all features, so we'll have to feel our way and make decisions on a case by case basis.


--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]