[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <518351D2.9050806@linux.vnet.ibm.com>
Date: Fri, 03 May 2013 13:57:38 +0800
From: Xiao Guangrong <xiaoguangrong@...ux.vnet.ibm.com>
To: Takuya Yoshikawa <takuya.yoshikawa@...il.com>
CC: mtosatti@...hat.com, gleb@...hat.com, avi.kivity@...il.com,
linux-kernel@...r.kernel.org, kvm@...r.kernel.org
Subject: Re: [PATCH v4 3/6] KVM: MMU: introduce kvm_clear_all_lpage_info
On 05/03/2013 10:15 AM, Takuya Yoshikawa wrote:
> On Sat, 27 Apr 2013 11:13:19 +0800
> Xiao Guangrong <xiaoguangrong@...ux.vnet.ibm.com> wrote:
>
>> This function is used to reset the large page info of all guest pages
>> which will be used in later patch
>>
>> Signed-off-by: Xiao Guangrong <xiaoguangrong@...ux.vnet.ibm.com>
>> ---
>> arch/x86/kvm/x86.c | 25 +++++++++++++++++++++++++
>> arch/x86/kvm/x86.h | 2 ++
>> 2 files changed, 27 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
>> index 52b4e97..8e4494c 100644
>> --- a/arch/x86/kvm/x86.c
>> +++ b/arch/x86/kvm/x86.c
>> @@ -6951,6 +6951,31 @@ static void memslot_set_lpage_disallowed(struct kvm_memory_slot *slot,
>> }
>> }
>>
>> +static void clear_memslot_lpage_info(struct kvm_memory_slot *slot)
>> +{
>> + int i;
>> +
>> + for (i = 1; i < KVM_NR_PAGE_SIZES; ++i) {
>> + int lpages;
>> + int level = i + 1;
>> +
>> + lpages = gfn_to_index(slot->base_gfn + slot->npages - 1,
>> + slot->base_gfn, level) + 1;
>> +
>> + memset(slot->arch.lpage_info[i - 1], 0,
>> + sizeof(*slot->arch.lpage_info[i - 1]));
>> + memslot_set_lpage_disallowed(slot, slot->npages, i, lpages);
>
> This does something other than clearing.
Aha, this API *clears* the count set by kvm mmu. It is meaningful enough,
i think.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists