Re: [PATCH v10 4/6] arm: KVM: Add initial dirty page locking infrastructure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/10/2014 08:13 PM, Christoffer Dall wrote:
> On Thu, Sep 04, 2014 at 10:25:43AM -0700, Mario Smarduch wrote:
>> On 09/03/2014 08:29 PM, wanghaibin wrote:
>>> On 2014/9/4 7:01, Mario Smarduch wrote:
>>>
>>>> On 09/02/2014 07:42 PM, wanghaibin wrote:
>>>>> On 2014/8/27 8:04, Mario Smarduch wrote:
>>>>>
> 
> [...]
> 
>>>>>
>>>>>
>>>>> About CONFIG_ARM , I suggest cancle this limmit..
>>>>> I just implement a few interfaces for ARM64 , and tested this patch using VNC, it's work.
>>>>>
>>>> Yes I was planing to do that once ARMv7 and generic/arch split for
>>>> dirty log and tlb flush functions are settled. I realize at this time 
>>>> ARMv8 just needs it's own tlb flush and it's done. But I need a strong 
>>>> test case before claiming ARMv8 support
>>>>
>>>> I have some ideas on testing it but migration is probably most
>>>> reliable and the only use case really.
>>>>
>>>> Can you elaborate on your test environment for ARMv8 (you could
>>>> email off-line if too long, also thanks for testing!). 
> 
> 
> I don't mind merging this code for ARMv7 only.  For sure, Mario you
> would need to test your setup with ARMv8 carefully before we could merge
> this for v8, and we should revisit the pud_huge considerations for
> ARMv8, although I suspect we're alright given we have similar code in
> clear_pud_entry().

Yes a definitive test is needed to validate ARMv8 logging.
Migration with a busy environment (lmbench, random dirty)
does that on ARMv7. I'll work with wanhaibin check his environment,
and start looking through QEMU ARMv8 migration status.

> 
>>>>
>>>>>
>>>>> I think this code should be :
>>>>>
>>>>> 		if (!pud_none(*pud)) {    /* check the *pud valid first */
>>>>> 			BUG_ON(kvm_pud_huge(*pud));
>>>>> 			stage2_wp_pmd_range(pud, addr, next);
>>>>> 		}
>>>>
>>>> I may be missing something here but not sure how the update improves
>>>> anything? Definitely follow-up if I'm off on this.
>>>>
> 
> [...]
> 
>>>
>>> So, maybe this problem is that:
>>> 	the first: we should check the *pud is valid/none or not.
>>> 	the second: check the *pud is huge or not.
>> I see check for huge pud only if pud is not NULL, sounds good.
> 
> Yes, please make this change so this doesn't bite us later when we add
> ARMv8 support (whenever that is, now or later).
Will do.
> 
>>
>> You also bring up a use case for dirty page logging (other then
>> migration), it appears QEMU VNC server uses it for screen updates
>> on client.
>>
> It would be good to test the v7 path with this as well if possible.
> 
> -Christoffer
> 

_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm




[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux