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

RE: [Xen-devel] Switching from writeable pagetabletoshadowlog-dirtyat runtime

> We found that in 32-bit code, the shadow_fault() do one more 
> thing than 64-bit code. 
> The following code in file shadow32.c checks the L1 page 
> table with RW bit removed and make the shadow with RW bit, it 
> does not inject the fault to guest.
> Does this is a work-around for switch from writable pagetable 
> to shadow mode enable?
> Does this code makes sense to the writeable pagetable, and 
> then may be one reason that 32bit log-dirty code can work?

Yep, the code you highlight is in shadow32 to support writable pagetable
emulation when in shadow mode.

My original shadow mode implementation didn't need special case code to
handle writable pagetables as the shadow fault handler was called after
the writeable pagetable handler in the main page fault handler: the
writeable pagetable fault was handled but then eecution was allowed to
drop through into the shadow fault handler, propagating the change into
the shadow pagetable without having to take another fault. It may be
possible to do something similar to remove the special case, but I'm
less familiar with the current code.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.