2015-06-09 03:32:22

by Xiao Guangrong

[permalink] [raw]
Subject: Re: [PATCH v2 09/13] KVM: x86: pass kvm_mmu_page to gfn_to_rmap



On 05/28/2015 01:05 AM, Paolo Bonzini wrote:
> This is always available (with one exception in the auditing code).
> Later we will also use the role to look up the right memslots array.

> return;
> @@ -191,11 +191,15 @@ static void audit_write_protection(struct kvm *kvm, struct kvm_mmu_page *sp)
> unsigned long *rmapp;
> u64 *sptep;
> struct rmap_iterator iter;
> + struct kvm_memslots *slots;
> + struct kvm_memory_slot *slot;
>
> if (sp->role.direct || sp->unsync || sp->role.invalid)
> return;
>
> - rmapp = gfn_to_rmap(kvm, sp->gfn, PT_PAGE_TABLE_LEVEL);
> + slots = kvm_memslots(kvm);
> + slot = __gfn_to_memslot(slots, sp->gfn);
> + rmapp = __gfn_to_rmap(sp->gfn, PT_PAGE_TABLE_LEVEL, slot);
>

Why @sp is not available here?


2015-06-17 08:16:00

by Paolo Bonzini

[permalink] [raw]
Subject: Re: [PATCH v2 09/13] KVM: x86: pass kvm_mmu_page to gfn_to_rmap



On 09/06/2015 05:28, Xiao Guangrong wrote:
>>
>> - rmapp = gfn_to_rmap(kvm, sp->gfn, PT_PAGE_TABLE_LEVEL);
>> + slots = kvm_memslots(kvm);
>> + slot = __gfn_to_memslot(slots, sp->gfn);
>> + rmapp = __gfn_to_rmap(sp->gfn, PT_PAGE_TABLE_LEVEL, slot);
>>
>
> Why @sp is not available here?

Because the function forces the level to be PT_PAGE_TABLE_LEVEL rather
than sp->level.

Paolo

2015-06-18 04:46:01

by Xiao Guangrong

[permalink] [raw]
Subject: Re: [PATCH v2 09/13] KVM: x86: pass kvm_mmu_page to gfn_to_rmap



On 06/17/2015 04:15 PM, Paolo Bonzini wrote:
>
>
> On 09/06/2015 05:28, Xiao Guangrong wrote:
>>>
>>> - rmapp = gfn_to_rmap(kvm, sp->gfn, PT_PAGE_TABLE_LEVEL);
>>> + slots = kvm_memslots(kvm);
>>> + slot = __gfn_to_memslot(slots, sp->gfn);
>>> + rmapp = __gfn_to_rmap(sp->gfn, PT_PAGE_TABLE_LEVEL, slot);
>>>
>>
>> Why @sp is not available here?
>
> Because the function forces the level to be PT_PAGE_TABLE_LEVEL rather
> than sp->level.

Oh, right, thanks for your explanation. :)

Reviewed-by: Xiao Guangrong <[email protected]>