Re: KVM: MMU: Tracking guest writes through EPT entries ?

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

 



On Mon, Jul 30, 2012 at 10:49 PM, Xiao Guangrong
<xiaoguangrong@xxxxxxxxxxxxxxxxxx> wrote:
> On 07/31/2012 01:18 AM, Sunil wrote:
>> Hello List,
>>
>> I am a KVM newbie and studying KVM mmu code.
>>
>> On the existing guest, I am trying to track all guest writes by
>> marking page table entry as read-only in EPT entry [ I am using Intel
>> machine with vmx and ept support ]. Looks like EPT support re-uses
>> shadow page table(SPT) code and hence some of SPT routines.
>>
>> I was thinking of below possible approach. Use pte_list_walk() to
>> traverse through list of sptes and use mmu_spte_update()  to flip the
>> PT_WRITABLE_MASK flag. But all SPTEs are not part of any single list;
>> but on separate lists (based on gfn, page level, memory_slot). So,
>> recording all the faulted guest GFN and then using above method work ?
>>
>
> There are two ways to write-protect all sptes:
> - use kvm_mmu_slot_remove_write_access() on all memslots
> - walk the shadow page cache to get the shadow pages in the highest level
>   (level = 4 on EPT), then write-protect its entries.
>
> If you just want to do it for the specified gfn, you can use
> rmap_write_protect().
>
> Just inquisitive, what is your purpose? :)
>


Thanks Xiao !

Just hands on with virtualization hardware. Trying to preserve guest
state after migration.

--
Sunl
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux