aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xg_private.h
diff options
context:
space:
mode:
authorcl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>2006-05-11 17:30:50 +0100
committercl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>2006-05-11 17:30:50 +0100
commit15efc30a115d80da597e88dabfd8bd4914645b35 (patch)
treec4a7c7ae0ccdaed8897c7f7e1690c30932ae1158 /tools/libxc/xg_private.h
parent7e8cc1fb7f2b24c6c7724c231f72219f8034041a (diff)
downloadxen-15efc30a115d80da597e88dabfd8bd4914645b35.tar.gz
xen-15efc30a115d80da597e88dabfd8bd4914645b35.tar.bz2
xen-15efc30a115d80da597e88dabfd8bd4914645b35.zip
Add support to domain builders for loading kernels with physical addresses in the elf paddr and entry fields.
Add a new __xen_guest header field to distinguish between kernels with the previous use of the paddr field and the new use. Add a new __xen_guest header field to control the kernel entry point, since the elf header entry field now points to a physical address. This header field is also useful for supporting alternative entry points in kernel images which run both on xen and native. Also add a kernel config option to control whether the resulting kernel should include compatibility code to run on Xen 3.0.2 or whether such code such be left out, resulting in a kernel which will only run on newer Xen versions. Default to having compatibility enabled. Kernels built with the new use of the elf header fields would otherwise not work on Xen versions prior to this changeset. Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
Diffstat (limited to 'tools/libxc/xg_private.h')
-rw-r--r--tools/libxc/xg_private.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/libxc/xg_private.h b/tools/libxc/xg_private.h
index f7e8efac5b..4284e0f79b 100644
--- a/tools/libxc/xg_private.h
+++ b/tools/libxc/xg_private.h
@@ -136,8 +136,11 @@ struct domain_setup_info
unsigned long v_kernend;
unsigned long v_kernentry;
- unsigned int load_symtab;
+ unsigned long elf_paddr_offset;
+
unsigned int pae_kernel;
+
+ unsigned int load_symtab;
unsigned long symtab_addr;
unsigned long symtab_len;