From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M0Fbg-0002IN-7P for qemu-devel@nongnu.org; Sat, 02 May 2009 09:50:20 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M0FbZ-0002Fy-St for qemu-devel@nongnu.org; Sat, 02 May 2009 09:50:18 -0400 Received: from [199.232.76.173] (port=42452 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M0FbZ-0002Fq-ME for qemu-devel@nongnu.org; Sat, 02 May 2009 09:50:13 -0400 Received: from yx-out-1718.google.com ([74.125.44.156]:9579) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M0FbZ-000332-6j for qemu-devel@nongnu.org; Sat, 02 May 2009 09:50:13 -0400 Received: by yx-out-1718.google.com with SMTP id 6so1565506yxn.82 for ; Sat, 02 May 2009 06:50:12 -0700 (PDT) Message-ID: <49FC4F90.1030901@codemonkey.ws> Date: Sat, 02 May 2009 08:50:08 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH 0/8] kvm: Fixes, cleanups and live migration References: <20090501211717.24514.23246.stgit@mchn012c.ww002.siemens.net> <49FB7A40.1020005@us.ibm.com> <20090502074041.GB7198@redhat.com> In-Reply-To: <20090502074041.GB7198@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: Anthony Liguori , Jan Kiszka , Avi Kivity , qemu-devel@nongnu.org Gleb Natapov wrote: > On Fri, May 01, 2009 at 05:40:00PM -0500, Anthony Liguori wrote: > >> Jan Kiszka wrote: >> >>> Besides refreshed versions of my already posted fixes and cleanups for >>> KVM, this series comes with patches to enable live migration in KVM >>> mode. If there is still some migration bit missing compared to qemu-kvm, >>> please let me know. >>> >>> >> In qemu-kvm, we also save: >> >> MSR_IA32_TSC >> mp_state >> interrupt_bitmap >> >> In QEMU, we probably should just emulate MSR_IA32_TSC and then we can >> reuse that for save/restore. >> >> interrupt_bitmap is a bit more tricky. It only ever can have one bit >> set AFAICT but I don't see anything that we're currently saving that >> maps to it which leads me to wonder why KVM needs it and QEMU doesn't. >> >> > KVM stores pending interrupt there (interrupt that is not in irq chip > already but not yet injected to vcpu). I have patch (not yet submitted) > that removes the use of interrupt_bitmap from kernel. It recreated only > for migration bits. My plan is to change migration bits too, but it is > trickier if we want to keep backwards compatibility. No need to > introduce interrupt_bitmap in qemu upstream IMO. We need to migrate > pending interrupt though. The info that should be migrated it interrupt > vector, interrupt type (soft/hw) and instruction length (needed for > injection of soft interrupts on VMX). > I think the right thing to do with this is introduce a kvm-cpu savevm that stores this information since it isn't relevant to TCG. I think it's arguable whether you want instruction length there (can you get it reliably on SVM?). If we did that, v1 could be interrupt_bitmap and then v2 can be this new data layout. Regards, Anthony Liguori > -- > Gleb. > > >