From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Tian, Kevin" Subject: RE: [PATCH 07/31] nVMX: Introduce vmcs02: VMCS used to run L2 Date: Tue, 24 May 2011 09:03:25 +0800 Message-ID: <625BA99ED14B2D499DC4E29D8138F1505C9BEF06E5@shsmsx502.ccr.corp.intel.com> References: <1305575004-nyh@il.ibm.com> <201105161947.p4GJlUJb001735@rice.haifa.ibm.com> <625BA99ED14B2D499DC4E29D8138F1505C9BEEFE29@shsmsx502.ccr.corp.intel.com> <20110522082949.GA1116@fermat.math.technion.ac.il> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 8BIT Cc: "kvm@vger.kernel.org" , "gleb@redhat.com" , "avi@redhat.com" To: Nadav Har'El Return-path: Received: from mga01.intel.com ([192.55.52.88]:17826 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757948Ab1EXBDa convert rfc822-to-8bit (ORCPT ); Mon, 23 May 2011 21:03:30 -0400 In-Reply-To: <20110522082949.GA1116@fermat.math.technion.ac.il> Content-Language: en-US Sender: kvm-owner@vger.kernel.org List-ID: > From: Nadav Har'El [mailto:nyh@math.technion.ac.il] > Sent: Sunday, May 22, 2011 4:30 PM > > Hi, > > On Fri, May 20, 2011, Tian, Kevin wrote about "RE: [PATCH 07/31] nVMX: > Introduce vmcs02: VMCS used to run L2": > > Possibly we can maintain the vmcs02 pool along with L1 VMCLEAR ops, which > > is similar to the hardware behavior regarding to cleared and launched state. > > If you set VMCS02_POOL_SIZE to a large size, and L1, like typical hypervisors, > only keeps around a few VMCSs (and VMCLEARs the ones it will not use again), > then we'll only have a few vmcs02: handle_vmclear() removes from the pool the > vmcs02 that L1 explicitly told us it won't need again. yes > > > > +struct saved_vmcs { > > > + struct vmcs *vmcs; > > > + int cpu; > > > + int launched; > > > +}; > > > > "saved" looks a bit misleading here. It's simply a list of all active vmcs02 > tracked > > by kvm, isn't it? > > I have rewritten this part of the code, based on Avi's and Marcelo's requests, > and the new name for this structure is "loaded_vmcs", i.e., a structure > describing where a VMCS was loaded. great, I'll take a look at your new code. Thanks Kevin