diff options
author | Liu Jinsong <jinsong.liu@intel.com> | 2012-12-06 10:47:22 +0000 |
---|---|---|
committer | Liu Jinsong <jinsong.liu@intel.com> | 2012-12-06 10:47:22 +0000 |
commit | b7a98e60d4516b1a2a0d5cda0773bab960d208d4 (patch) | |
tree | c5f495bced25bbbf7c0fba3473c8cfa6a963c884 /tools/libxc/xenctrl.h | |
parent | d7942d1dbe5d98cef71c00c51f2826eefb9273d0 (diff) | |
download | xen-b7a98e60d4516b1a2a0d5cda0773bab960d208d4.tar.gz xen-b7a98e60d4516b1a2a0d5cda0773bab960d208d4.tar.bz2 xen-b7a98e60d4516b1a2a0d5cda0773bab960d208d4.zip |
X86/vMCE: handle broken page with regard to migration
At the sender
xc_domain_save has a key point: 'to query the types of all the pages
with xc_get_pfn_type_batch'
1) if broken page occur before the key point, migration will be fine
since proper pfn_type and pfn number will be transferred to the
target and then take appropriate action;
2) if broken page occur after the key point, whole system will crash
and no need care migration any more;
At the target
Target will populates pages for guest. As for the case of broken page,
we prefer to keep the type of the page for the sake of seamless migration.
Target will set p2m as p2m_ram_broken for broken page. If guest access
the broken page again it will kill itself as expected.
Suggested-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
Diffstat (limited to 'tools/libxc/xenctrl.h')
-rw-r--r-- | tools/libxc/xenctrl.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h index 7eb57430c3..1cd13c1b34 100644 --- a/tools/libxc/xenctrl.h +++ b/tools/libxc/xenctrl.h @@ -575,6 +575,17 @@ int xc_domain_getinfolist(xc_interface *xch, xc_domaininfo_t *info); /** + * This function set p2m for broken page + * &parm xch a handle to an open hypervisor interface + * @parm domid the domain id which broken page belong to + * @parm pfn the pfn number of the broken page + * @return 0 on success, -1 on failure + */ +int xc_set_broken_page_p2m(xc_interface *xch, + uint32_t domid, + unsigned long pfn); + +/** * This function returns information about the context of a hvm domain * @parm xch a handle to an open hypervisor interface * @parm domid the domain to get information from |