This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Re: memsize for HVM save/restore

To: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Subject: [Xen-devel] Re: memsize for HVM save/restore
From: "Zhai, Edwin" <edwin.zhai@xxxxxxxxx>
Date: Mon, 26 Mar 2007 11:13:18 +0800
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Ewan Mellor <ewan@xxxxxxxxxxxxx>, "Zhai, Edwin" <edwin.zhai@xxxxxxxxx>
Delivery-date: Sun, 25 Mar 2007 20:18:09 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C22AE3C4.C2D9%Keir.Fraser@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20070324113720.GX21485@xxxxxxxxxxxxxxxxxxxxxx> <C22AE3C4.C2D9%Keir.Fraser@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.11
On Sat, Mar 24, 2007 at 02:18:44PM +0000, Keir Fraser wrote:
> On 24/3/07 11:37, "Zhai, Edwin" <edwin.zhai@xxxxxxxxx> wrote:
> > But then qemu broke, because it also require the memsize to locate the share
> > page. We can't use the previous method, as it requires a lot of changes in
> > qemu.
> Doesn't your new 'general layout' patch put the PFNs of xenstore, ioreq,
> buffered_ioreq in the saved image, and restore in xc_hvm_restore? Qemu-dm


> should obtain the addresses via HVMOP_get_param.
> You do not need the memsize parameter.

I don't think so.
Besides locating PFNs, memsize is also used in QEMU for other purpose, such as 
bitmap allocation, dev init and map_foreign*. So memsize is a must for qemu 

See following code in xc_hvm_build:
if ( v_end > HVM_BELOW_4G_RAM_END )
    shared_page_nr = (HVM_BELOW_4G_RAM_END >> PAGE_SHIFT) - 1;
    shared_page_nr = (v_end >> PAGE_SHIFT) - 1;

So it's impossible to get memsize by saved PFNs when restore a big memory guest.

>  -- Keir

best rgds,

Xen-devel mailing list