On 24.06.2012 23:44, Christoph Egger wrote: > On 24.06.12 20:31, Jean-Yves Migeon wrote: > >> Module Name: src >> Committed By: jym >> Date: Sun Jun 24 18:31:53 UTC 2012 >> >> Modified Files: >> src/sys/arch/xen/include: xenpmap.h >> src/sys/arch/xen/x86: xen_pmap.c >> >> Log Message: >> Enable the map/unmap recursive mapping functions for all Xen ports for >> save/restore. >> >> For an unknown reason (to me) Xen refuses to update VM translations >> when the entry is pointing back to itself (which is precisely >> what our recursive VM model does). So enable the functions that take >> care of this, which will avoid all sort of memory corruption upon restore >> leading domU to trample upon itself. > > Please report this Xen behaviour to xen-devel.
It has always been a tricky step anyway; it already happened with PAE. I am not even sure that Xen is at fault. IIRC the translations fixup step is done by the low level tools upon restore, not the hypervisor directly. IMHO correcting the fixup step will never be possible nor perfect anyway; save operation is like a snapshot: it loses all the history of how the mappings were created. It can get accepted by hypervisor when you validate it in a given order, and not when done it is done in another. -- Jean-Yves Migeon jeanyves.mig...@free.fr