WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ppc-devel

[XenPPC] [xenppc-unstable] [ppc] struct domain_setup_info should be 64bi

To: xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
Subject: [XenPPC] [xenppc-unstable] [ppc] struct domain_setup_info should be 64bit neutral
From: Xen patchbot-xenppc-unstable <patchbot-xenppc-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 28 Jun 2006 19:20:42 +0000
Delivery-date: Wed, 28 Jun 2006 12:24:51 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ppc-devel-request@lists.xensource.com?subject=help>
List-id: Xen PPC development <xen-ppc-devel.lists.xensource.com>
List-post: <mailto:xen-ppc-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ppc-devel>, <mailto:xen-ppc-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ppc-devel>, <mailto:xen-ppc-devel-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-ppc-devel-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
# Node ID 239f82b1208e2c41fa815709ccf9ebcce24104f9
# Parent  f623f56678244308cd489c40bf7e940b285bf8cd
[ppc] struct domain_setup_info should be 64bit neutral

This patch was sent upstream.
Need to allow a 32 bit loader to load a 64bit image.
Also allows for a missing device tree, because it could be embedded.

Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
---
 tools/libxc/xc_ppc_linux_build.c |   16 ++++++++--------
 tools/libxc/xg_private.h         |   18 +++++++++---------
 2 files changed, 17 insertions(+), 17 deletions(-)

diff -r f623f5667824 -r 239f82b1208e tools/libxc/xc_ppc_linux_build.c
--- a/tools/libxc/xc_ppc_linux_build.c  Wed Jun 28 15:16:48 2006 -0400
+++ b/tools/libxc/xc_ppc_linux_build.c  Wed Jun 28 15:18:54 2006 -0400
@@ -257,11 +257,11 @@ static int load_kernel(
     (load_funcs.loadimage)(kernel_img, kernel_size, xc_handle, domid,
             page_array, dsi);
 
-    VERBOSE(printf("  v_start     %lx\n", dsi->v_start));
-    VERBOSE(printf("  v_end       %lx\n", dsi->v_end));
-    VERBOSE(printf("  v_kernstart %lx\n", dsi->v_kernstart));
-    VERBOSE(printf("  v_kernend   %lx\n", dsi->v_kernend));
-    VERBOSE(printf("  v_kernentry %lx\n", dsi->v_kernentry));
+    VERBOSE(printf("  v_start     %llx\n", dsi->v_start));
+    VERBOSE(printf("  v_end       %llx\n", dsi->v_end));
+    VERBOSE(printf("  v_kernstart %llx\n", dsi->v_kernstart));
+    VERBOSE(printf("  v_kernend   %llx\n", dsi->v_kernend));
+    VERBOSE(printf("  v_kernentry %llx\n", dsi->v_kernentry));
 
 out:
     free(kernel_img);
@@ -376,7 +376,8 @@ int xc_linux_build(int xc_handle,
     }
     kern_addr = 0;
 
-    if (load_initrd(xc_handle, domid, page_array, initrd_name, &initrd_base,
+    if (initrd_name && initrd_name[0] != '\0' &&
+        load_initrd(xc_handle, domid, page_array, initrd_name, &initrd_base,
                 &initrd_len)) {
         rc = -1;
         goto out;
@@ -385,8 +386,7 @@ int xc_linux_build(int xc_handle,
 
     dtb_addr = (16 << 20);
     if (load_dtb(xc_handle, domid, "DomU.dtb", dtb_addr, &dsi, page_array)) {
-        rc = -1;
-        goto out;
+        dtb_addr = 0;
     }
 
     si_addr = create_start_info(&si, store_evtchn, console_evtchn);
diff -r f623f5667824 -r 239f82b1208e tools/libxc/xg_private.h
--- a/tools/libxc/xg_private.h  Wed Jun 28 15:16:48 2006 -0400
+++ b/tools/libxc/xg_private.h  Wed Jun 28 15:18:54 2006 -0400
@@ -132,13 +132,13 @@ typedef unsigned long l4_pgentry_t;
 
 struct domain_setup_info
 {
-    unsigned long v_start;
-    unsigned long v_end;
-    unsigned long v_kernstart;
-    unsigned long v_kernend;
-    unsigned long v_kernentry;
-
-    unsigned long elf_paddr_offset;
+    uint64_t v_start;
+    uint64_t v_end;
+    uint64_t v_kernstart;
+    uint64_t v_kernend;
+    uint64_t v_kernentry;
+
+    uint64_t elf_paddr_offset;
 
 #define PAEKERN_no           0
 #define PAEKERN_yes          1
@@ -146,8 +146,8 @@ struct domain_setup_info
     unsigned int  pae_kernel;
 
     unsigned int  load_symtab;
-    unsigned long symtab_addr;
-    unsigned long symtab_len;
+    unsigned int  symtab_addr;
+    unsigned int  symtab_len;
 
     /* __xen_guest info string for convenient loader parsing. */
     char *xen_guest_string;

_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [XenPPC] [xenppc-unstable] [ppc] struct domain_setup_info should be 64bit neutral, Xen patchbot-xenppc-unstable <=