On Wed, Mar 15, 2017 at 04:01:19PM +0000, Igor Druzhinin wrote: > Saving/restoring the physmap to/from xenstore was introduced to > QEMU majorly in order to cover up the VRAM region restore issue. > The sequence of restore operations implies that we should know > the effective guest VRAM address *before* we have the VRAM region > restored (which happens later). Unfortunately, in Xen environment > VRAM memory does actually belong to a guest - not QEMU itself - > which means the position of this region is unknown beforehand and > can't be mapped into QEMU address space immediately. > > Previously, recreating xenstore keys, holding the physmap, by the > toolstack helped to get this information in place at the right > moment ready to be consumed by QEMU to map the region properly. > > The extraneous complexity of having those keys transferred by the > toolstack and unnecessary redundancy prompted us to propose a > solution which doesn't require any extra data in xenstore. The idea > is to defer the VRAM region mapping till the point we actually know > the effective address and able to map it. To that end, we initially > just skip the mapping request for the framebuffer if we unable to > map it now. Then, after the memory region restore phase, we perform > the mapping again, this time successfully, and update the VRAM region > metadata accordingly. > > Signed-off-by: Igor Druzhinin <igor.druzhi...@citrix.com>
I've tried to migrate a guest with this patch, but once migrated, the screen is black (via VNC, keyboard is working fine). I haven't try to migrate a guest from QEMU without this patch to a QEMU with it. -- Anthony PERARD