From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NxiU6-0008Aa-Du for qemu-devel@nongnu.org; Fri, 02 Apr 2010 11:08:34 -0400 Received: from [140.186.70.92] (port=52955 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NxiU5-00087D-8F for qemu-devel@nongnu.org; Fri, 02 Apr 2010 11:08:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NxiU3-0005mK-Mo for qemu-devel@nongnu.org; Fri, 02 Apr 2010 11:08:33 -0400 Received: from mail-pw0-f45.google.com ([209.85.160.45]:56959) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NxiU3-0005m8-Hg for qemu-devel@nongnu.org; Fri, 02 Apr 2010 11:08:31 -0400 Received: by pwi6 with SMTP id 6so1705745pwi.4 for ; Fri, 02 Apr 2010 08:08:30 -0700 (PDT) Message-ID: <4BB6086B.2080009@codemonkey.ws> Date: Fri, 02 Apr 2010 10:08:27 -0500 From: Anthony Liguori MIME-Version: 1.0 References: <4BB4FED5.2080508@codemonkey.ws> <4BB606BE.9000508@redhat.com> In-Reply-To: <4BB606BE.9000508@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH 1/2] Move KVM init to arch_init.c, compile vl.c once List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Blue Swirl , qemu-devel On 04/02/2010 10:01 AM, Paolo Bonzini wrote: > On 04/01/2010 10:27 PM, Blue Swirl wrote: >> It will not be safe to use kvm_enabled() in vl.c, so there needs to be >> a target dependent helper. The call to kvm_init could remain in vl.c, >> likewise it's not strictly needed to move kvm_allowed to arch_init.c. > > Not really, because kvm_allowed _can_ be used from once-compiled > files. The attached patch makes kvm-all.c be compiled always, even if > !CONFIG_KVM; functions that require kvm are almost always omitted for > now (so checking kvm_enabled() is required to call them). However, > kvm_init is stubbed so that vl.c can call it. > > In the future we could add more stubbing and ultimately do this > unconditionally: > > #define kvm_enabled() kvm_allowed > > With this patch vl.c can already be compiled once, but I did not > include it because it would conflict with my balloon.c series; I'm > doing enough rebasing these days. Also, qemu-kvm is a bit behind qemu > and all these patches are nightmares for the merges, so it's better > IMO if things are left to calm down a bit. Having kvm-all.c compile with and without CONFIG_KVM is pretty ugly IMHO. Is compiling vl.c once really that important of a goal? Wouldn't it be better to split bits out of vl.c and have those compile once? Ideally, vl.c should be so small that compiling per-target shouldn't matter. Regards, Anthony Liguori >> They just caused problems with the poisoning check in patch 2/2. > > Poisoning kvm_enabled is right, but poisoning kvm_allowed is overkill. > > Paolo