From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NTx7U-0008QC-AV for qemu-devel@nongnu.org; Sun, 10 Jan 2010 07:42:12 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NTx7P-0008LE-ME for qemu-devel@nongnu.org; Sun, 10 Jan 2010 07:42:12 -0500 Received: from [199.232.76.173] (port=49150 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NTx7P-0008L0-Gt for qemu-devel@nongnu.org; Sun, 10 Jan 2010 07:42:07 -0500 Received: from mx20.gnu.org ([199.232.41.8]:61959) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NTx7P-0005CJ-2V for qemu-devel@nongnu.org; Sun, 10 Jan 2010 07:42:07 -0500 Received: from mx1.redhat.com ([209.132.183.28]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NTwVA-0001mD-Sb for qemu-devel@nongnu.org; Sun, 10 Jan 2010 07:02:37 -0500 Message-ID: <4B49C1D3.1070308@redhat.com> Date: Sun, 10 Jan 2010 14:02:27 +0200 From: Avi Kivity MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] New kvm-related qemu patch queue List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel , KVM list 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.