From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [Qemu-devel] Re: [PATCH v2 4/9] provide in-kernel apic Date: Thu, 08 Oct 2009 09:26:35 -0500 Message-ID: <4ACDF69B.5000000@codemonkey.ws> References: <1254953315-5761-1-git-send-email-glommer@redhat.com> <1254953315-5761-2-git-send-email-glommer@redhat.com> <1254953315-5761-3-git-send-email-glommer@redhat.com> <1254953315-5761-4-git-send-email-glommer@redhat.com> <1254953315-5761-5-git-send-email-glommer@redhat.com> <4ACDEF42.6020706@us.ibm.com> <4ACDF297.9010303@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Anthony Liguori , Glauber Costa , qemu-devel@nongnu.org, kvm-devel To: Avi Kivity Return-path: Received: from fg-out-1718.google.com ([72.14.220.152]:38488 "EHLO fg-out-1718.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754828AbZJHO2y (ORCPT ); Thu, 8 Oct 2009 10:28:54 -0400 Received: by fg-out-1718.google.com with SMTP id 22so1881501fge.1 for ; Thu, 08 Oct 2009 07:27:06 -0700 (PDT) In-Reply-To: <4ACDF297.9010303@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Avi Kivity wrote: > On 10/08/2009 03:55 PM, Anthony Liguori wrote: >> >> You should probably just setup VMState such that it directly saves >> kvm_lapic_state and then have the pre/post functions call the kernel >> ioctls to sync it. There's not a whole lot of point switching the >> state between two different structures. > > It ensures the two models are compatible. Since they're the same > device from the point of view of the guest, there's no reason for them > to have different representations or to be incompatible. The problem is, the in-kernel apic is not part of the qemu source tree. If we add a field to the qemu apic, then we would break the in-kernel apic and vice-versa. It's far easier to just have the in-kernel apic as a separate model. Most importantly though, the code should reflect how things behave. It's extremely difficult to look at the apic code and figure out what bits are used and what bits aren't used when the in-kernel apic is enabled. Regards, Anthony Liguori