diff options
author | Alex Zeffertt <alex.zeffertt@eu.citrix.com> | 2012-02-09 18:33:30 +0000 |
---|---|---|
committer | Alex Zeffertt <alex.zeffertt@eu.citrix.com> | 2012-02-09 18:33:30 +0000 |
commit | 6a2de353a969bdcb448ea977eca39401be312051 (patch) | |
tree | 34a84e2f65370b5eb1d7a44b9de51195c733e398 /tools/libxc/xc_dom.h | |
parent | 9b4964de7c6fa69a28688685bc9531f9408cf58b (diff) | |
download | xen-6a2de353a969bdcb448ea977eca39401be312051.tar.gz xen-6a2de353a969bdcb448ea977eca39401be312051.tar.bz2 xen-6a2de353a969bdcb448ea977eca39401be312051.zip |
lib{xc,xl}: Seed grant tables with xenstore and console grants
This patch claims one reserved grant entry for the console and another
for the xenstore. It modifies the builder to fill in the grant table
entries for the console and the xenstore.
Previous versions of this patch have been sent to xen-devel. See
http://lists.xensource.com/archives/html/xen-devel/2008-07/msg00610.html
http://lists.xensource.com/archives/html/xen-devel/2009-03/msg01491.html
Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
Signed-off-by: Alex Zeffertt <alex.zeffertt@eu.citrix.com>
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Diffstat (limited to 'tools/libxc/xc_dom.h')
-rw-r--r-- | tools/libxc/xc_dom.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tools/libxc/xc_dom.h b/tools/libxc/xc_dom.h index e72f066f5d..2aef64af26 100644 --- a/tools/libxc/xc_dom.h +++ b/tools/libxc/xc_dom.h @@ -18,6 +18,9 @@ #define INVALID_P2M_ENTRY ((xen_pfn_t)-1) +/* Scrach PFN for temporary mappings in HVM */ +#define SCRATCH_PFN_GNTTAB 0xFFFFE + /* --- typedefs and structs ---------------------------------------- */ typedef uint64_t xen_vaddr_t; @@ -107,6 +110,8 @@ struct xc_dom_image { unsigned long flags; unsigned int console_evtchn; unsigned int xenstore_evtchn; + domid_t console_domid; + domid_t xenstore_domid; xen_pfn_t shared_info_mfn; xc_interface *xch; @@ -200,6 +205,17 @@ void *xc_dom_boot_domU_map(struct xc_dom_image *dom, xen_pfn_t pfn, xen_pfn_t count); int xc_dom_boot_image(struct xc_dom_image *dom); int xc_dom_compat_check(struct xc_dom_image *dom); +int xc_dom_gnttab_init(struct xc_dom_image *dom); +int xc_dom_gnttab_hvm_seed(xc_interface *xch, domid_t domid, + xen_pfn_t console_gmfn, + xen_pfn_t xenstore_gmfn, + domid_t console_domid, + domid_t xenstore_domid); +int xc_dom_gnttab_seed(xc_interface *xch, domid_t domid, + xen_pfn_t console_gmfn, + xen_pfn_t xenstore_gmfn, + domid_t console_domid, + domid_t xenstore_domid); /* --- debugging bits ---------------------------------------------- */ |