From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L0cc6-00044R-PX for qemu-devel@nongnu.org; Thu, 13 Nov 2008 08:52:03 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L0cc5-00043y-6W for qemu-devel@nongnu.org; Thu, 13 Nov 2008 08:52:02 -0500 Received: from [199.232.76.173] (port=32914 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L0cc4-00043t-Lz for qemu-devel@nongnu.org; Thu, 13 Nov 2008 08:52:00 -0500 Received: from rv-out-0708.google.com ([209.85.198.241]:30583) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L0cc4-0002En-9E for qemu-devel@nongnu.org; Thu, 13 Nov 2008 08:52:00 -0500 Received: by rv-out-0708.google.com with SMTP id f25so850661rvb.22 for ; Thu, 13 Nov 2008 05:51:57 -0800 (PST) Message-ID: Date: Thu, 13 Nov 2008 14:51:57 +0100 From: "andrzej zaborowski" Subject: Re: [Qemu-devel] [PATCH][RFC] Split non-TCG bits out of exec.c In-Reply-To: <1226527840-14183-1-git-send-email-aliguori@us.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1226527840-14183-1-git-send-email-aliguori@us.ibm.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Carsten Otte , Anthony Liguori , Hollis Blanchard , kvm-devel , Paul Brook 2008/11/12 Anthony Liguori : > Unlike kqemu, KVM does not use TCG at all when accelerating QEMU. Having TCG > present is not a problem when using KVM on x86. x86 already has TCG host and > target support and it's quite convenient to be able to disable/enable KVM and > compare it to TCG when debugging. > > KVM also supports architectures that do not have TCG host and target support > such as ia64, s390, and PPC[1]. For these architectures, TCG is an inhibitor > for upstream inclusion. > > TCG is pretty well isolated in QEMU so building these targets without TCG > should be easy enough. This breaks down in exec.c though. There is a lot of > TCG specific code in exec.c, but also a lot of code that KVM needs. > > This patch moves the non-TCG specific bits of exec.c into a separate file, > exec-all.c. This makes it relatively easy to build QEMU without TCG support. > More patches will come to complete this work but the exec.c bits are probably > 95% of what is needed. > > The remaining bits are some general cleanups where layering has been violated > and the introduction of a new -kvm subtarget, similar to -softmmu or > -linux-user. Is this going a bit in the opposite direction to where QEMUAccel is going? What Fabrice suggests seems to be like QEMUAccel, with TCG treated as another accelerator. BTW It would be great if before merging a change like this you review/merge the patches submitted to the list that might touch the same area so as not to break them (such as Jan Kiszka's single-stepping/watchpoint fixes). Cheers