From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH RFC 1/2] kvm: Handle undercommitted guest case in PLE handler Date: Wed, 03 Oct 2012 16:56:57 +0200 Message-ID: <506C5239.4080209@redhat.com> References: <5060851E.1030404@redhat.com> <506166B4.4010207@linux.vnet.ibm.com> <5061713D.5060406@redhat.com> <50641356.5070008@redhat.com> <506540C7.9070105@linux.vnet.ibm.com> <50680049.5020206@redhat.com> <20120930110755.GB1009@redhat.com> <50682945.3060309@redhat.com> <20121003141739.GA15253@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Gleb Natapov , Jiannan Ouyang , Peter Zijlstra , Rik van Riel , "H. Peter Anvin" , Ingo Molnar , Marcelo Tosatti , Srikar , "Nikunj A. Dadhania" , KVM , chegu vinod , "Andrew M. Theurer" , LKML , Srivatsa Vaddagiri To: Raghavendra K T Return-path: In-Reply-To: <20121003141739.GA15253@linux.vnet.ibm.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 10/03/2012 04:17 PM, Raghavendra K T wrote: > * Avi Kivity [2012-09-30 13:13:09]: > >> On 09/30/2012 01:07 PM, Gleb Natapov wrote: >> > On Sun, Sep 30, 2012 at 10:18:17AM +0200, Avi Kivity wrote: >> >> On 09/28/2012 08:16 AM, Raghavendra K T wrote: >> >> > >> >> >> >> >> >> +struct pv_sched_info { >> >> >> + unsigned long sched_bitmap; >> >> > >> >> > Thinking, whether we need something similar to cpumask here? >> >> > Only thing is we are representing guest (v)cpumask. >> >> > >> >> >> >> DECLARE_BITMAP(sched_bitmap, KVM_MAX_VCPUS) >> >> >> > vcpu_id can be greater than KVM_MAX_VCPUS. >> >> Use the index into the vcpu table as the bitmap index then. In fact >> it's better because then the lookup to get the vcpu pointer is trivial. > > Did you mean, while setting the bitmap, > > we should do > for (i = 1..n) > if (kvm->vcpus[i] == vcpu) set ith position in bitmap? You can store i in the vcpu itself: set_bit(vcpu->index, &kvm->preempted); > > I just wanted to know whether there is any easy way to convert from > vcpu pointer to index in kvm vcpu table. > -- error compiling committee.c: too many arguments to function