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] [POWERPC] Boot Module freeing

To: xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
Subject: [XenPPC] [xenppc-unstable] [POWERPC] Boot Module freeing
From: Xen patchbot-xenppc-unstable <patchbot-xenppc-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 18 Aug 2006 13:40:35 +0000
Delivery-date: Fri, 18 Aug 2006 06:50:03 -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 bcba998e95575602fe3953bdc5ee19bc383740bc
# Parent  b10e48a5d1e3b8a14619f52a09851f20769a46cc
[POWERPC] Boot Module freeing

 - Fix bad logic that frees the modules anyway.
 - Allow for the absence of a Dom0 to continue exectution until its
   time to load it, usefull for debugging bringup code.

Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
---
 xen/arch/powerpc/domain_build.c |    5 +++++
 xen/arch/powerpc/setup.c        |    7 ++++++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff -r b10e48a5d1e3 -r bcba998e9557 xen/arch/powerpc/domain_build.c
--- a/xen/arch/powerpc/domain_build.c   Fri Aug 18 05:17:14 2006 -0400
+++ b/xen/arch/powerpc/domain_build.c   Fri Aug 18 05:39:01 2006 -0400
@@ -118,13 +118,18 @@ int construct_dom0(struct domain *d,
     BUG_ON(d->domain_id != 0);
     BUG_ON(d->vcpu[0] == NULL);
 
+    if (image_len == 0)
+        panic("No Dom0 image supplied\n");
+
     cpu_init_vcpu(v);
 
     memset(&dsi, 0, sizeof(struct domain_setup_info));
     dsi.image_addr = image_start;
     dsi.image_len  = image_len;
 
+    printk("Trying Dom0 as 64bit ELF\n");
     if ((rc = parseelfimage(&dsi)) != 0) {
+        printk("Trying Dom0 as 32bit ELF\n");
         if ((rc = parseelfimage_32(&dsi)) != 0)
             return rc;
         am64 = 0;
diff -r b10e48a5d1e3 -r bcba998e9557 xen/arch/powerpc/setup.c
--- a/xen/arch/powerpc/setup.c  Fri Aug 18 05:17:14 2006 -0400
+++ b/xen/arch/powerpc/setup.c  Fri Aug 18 05:39:01 2006 -0400
@@ -326,6 +326,9 @@ static void __init __start_xen(multiboot
     for (i = 0; i < mbi->mods_count; i++) {
         u32 s;
 
+        if(mod[i].mod_end == mod[i].mod_start)
+            continue;
+
         s = ALIGN_DOWN(mod[i].mod_start, PAGE_SIZE);
 
         if (mod[i].mod_start > (ulong)_start &&
@@ -337,7 +340,9 @@ static void __init __start_xen(multiboot
         if (s < freemem) 
             panic("module addresses must assend\n");
 
-        freemem = free_xenheap(freemem, s);
+        free_xenheap(freemem, s);
+        freemem = ALIGN_UP(mod[i].mod_end, PAGE_SIZE);
+        
     }
 
     /* the rest of the xenheap, starting at the end of modules */

_______________________________________________
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] [POWERPC] Boot Module freeing, Xen patchbot-xenppc-unstable <=