The latest ELF changes have a null pointer dereference bug when you
have neither an elf notes section nor a __xen_guest_string. This patch
checks for the existence of the __xen_guest_string prior to using it.
Please apply. Thanks,
Alex
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
---
- Remove debugging statements.
- Cope better with archtectures where neither ELF notes or __xen_guest
are needed or required.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
- use 64-bit integral types for addresses in struct domain_start_info
- use stroull() to parse 64-bit values
- remove redundant _p(a) definition and add a comment
- printf format changes for the new types
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Necessary if a long is a different size to addresses in elf
file being parsed.
From: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
pae_pgdir_above_4gb tp guests that have enabled this vmassist.
Control tools ensure all PAE page directories are below 4GB
unless the vmassist is enabled (triggered via an extended-cr3
option in guest Elf header).
Signed-off-by: Keir Fraser <keir@xensource.com>
This avoids using zero to indicate 'undefined'. Instead we use
an explicit boolean to indicate whether suitable defaults should
be used. As well as making the logic clearer (I believe) it also
avoids problems if anyone ever explicitly specifies virt_base
(and also elf_paddr_offset) as zero.
Signed-off-by: Keir Fraser <keir@xensource.com>
to prevent xend crashign (when Aravindh's latest patch is
applied) and breaks ia64. Also, ensure we set a reasonable
default for elf_paddr_offset.
Signed-off-by: Keir Fraser <keir@xensource.com>
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>
xc_private.h, xc_linux_build.c, Makefile:
Add support for loading ``bin'' format images, as used by ReactOS.
Move image probing/parsing/loading code out of domain builder to allow
multiple image formats without having to duplicate the domain building
code.
xc_load_elf.c, xc_load_bin.c:
new file
xc_vmx_build.c:
Cleanup.
Signed-Off-By: Ge van Geldorp <gvg@reactos.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>