diff --git a/xen-all.c b/xen-all.c index 972cffd5ba7c8b3da678fb566a680c9839319de1..10d53d168c664dc6de4786abf16f66374e4f0f2e 100644 --- a/xen-all.c +++ b/xen-all.c @@ -190,6 +190,14 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr) xen_pfn_t *pfn_list; int i; + if (runstate_check(RUN_STATE_INMIGRATE)) { + /* RAM already populated in Xen */ + fprintf(stderr, "%s: do not alloc "RAM_ADDR_FMT + " bytes of ram at "RAM_ADDR_FMT" when runstate is INMIGRATE\n", + __func__, size, ram_addr); + return; + } + if (mr == &ram_memory) { return; }