]> xenbits.xensource.com Git - people/sstabellini/xen-unstable.git/.git/commit
When enabling log dirty mode, it sets all guest's memory to readonly.
authorYang Zhang <yang.z.zhang@Intel.com>
Thu, 13 Feb 2014 15:50:22 +0000 (15:50 +0000)
committerTim Deegan <tim@xen.org>
Thu, 13 Feb 2014 15:50:22 +0000 (15:50 +0000)
commit077fc1c04d70ef1748ac2daa6622b3320a1a004c
treecb8f3b87bf807dc8d6203444303c44f51b2a17d3
parent0e251a8371574b905d37d7650d1d625caf0f1181
When enabling log dirty mode, it sets all guest's memory to readonly.
And in HAP enabled domain, it modifies all EPT entries to clear write bit
to make sure it is readonly. This will cause problem if VT-d shares page
table with EPT: the device may issue a DMA write request, then VT-d engine
tells it the target memory is readonly and result in VT-d fault.

Currnetly, there are two places will enable log dirty mode: migration and vram
tracking. Migration with device assigned is not allowed, so it is ok. For vram,
it doesn't need to set all memory to readonly. Only track the vram range is enough.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Acked-by: Tim Deegan <tim@xen.org>
xen/arch/x86/mm/hap/hap.c
xen/arch/x86/mm/paging.c
xen/arch/x86/mm/shadow/common.c
xen/include/asm-x86/domain.h
xen/include/asm-x86/paging.h
xen/include/asm-x86/shadow.h