[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Remove old version of xen xlilo patch
# HG changeset patch # User djm@xxxxxxxxxxxxxxx # Node ID ea1214123c2f8b27f0afa31c9fe8627b3783e221 # Parent d0a2b36f72f26c7ef4fb855215ede6aaa8ef8af3 Remove old version of xen xlilo patch diff -r d0a2b36f72f2 -r ea1214123c2f xen/arch/ia64/tools/xelilo/xen4elilo.patch --- a/xen/arch/ia64/tools/xelilo/xen4elilo.patch Thu Nov 17 13:21:18 2005 +++ /dev/null Thu Nov 17 13:23:14 2005 @@ -1,187 +0,0 @@ -<Sign-Off: Fred.Yang@xxxxxxxxx> -diff -r f2309ac2648a xen/arch/ia64/xen/dom_fw.c ---- a/xen/arch/ia64/xen/dom_fw.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/dom_fw.c Tue Sep 20 20:10:36 2005 -@@ -686,6 +686,12 @@ - bp->console_info.orig_x = 0; - bp->console_info.orig_y = 24; - bp->fpswa = 0; -+ bp->initrd_start = (dom0_start+dom0_size) - -+ (PAGE_ALIGN(ia64_boot_param->initrd_size) + 4*1024*1024); -+ bp->initrd_size = ia64_boot_param->initrd_size; -+ printf(" initrd start %0xlx", bp->initrd_start); -+ printf(" initrd size %0xlx", bp->initrd_size); -+ - - return bp; - } -diff -r f2309ac2648a xen/arch/ia64/xen/domain.c ---- a/xen/arch/ia64/xen/domain.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/domain.c Tue Sep 20 20:10:36 2005 -@@ -830,6 +830,7 @@ - unsigned long pkern_start; - unsigned long pkern_entry; - unsigned long pkern_end; -+ unsigned long pinitrd_start = 0; - unsigned long ret, progress = 0; - - //printf("construct_dom0: starting\n"); -@@ -848,12 +849,6 @@ - alloc_start = dom0_start; - alloc_end = dom0_start + dom0_size; - d->tot_pages = d->max_pages = dom0_size/PAGE_SIZE; -- image_start = __va(ia64_boot_param->initrd_start); -- image_len = ia64_boot_param->initrd_size; --//printk("image_start=%lx, image_len=%lx\n",image_start,image_len); --//printk("First word of image: %lx\n",*(unsigned long *)image_start); -- --//printf("construct_dom0: about to call parseelfimage\n"); - dsi.image_addr = (unsigned long)image_start; - dsi.image_len = image_len; - rc = parseelfimage(&dsi); -@@ -890,11 +885,18 @@ - return -EINVAL; - } - -+ if(initrd_start&&initrd_len){ -+ pinitrd_start=(dom0_start+dom0_size) - -+ (PAGE_ALIGN(initrd_len) + 4*1024*1024); -+ -+ memcpy(__va(pinitrd_start),initrd_start,initrd_len); -+ } -+ - printk("METAPHYSICAL MEMORY ARRANGEMENT:\n" - " Kernel image: %lx->%lx\n" - " Entry address: %lx\n" -- " Init. ramdisk: (NOT IMPLEMENTED YET)\n", -- pkern_start, pkern_end, pkern_entry); -+ " Init. ramdisk: %lx len %lx\n", -+ pkern_start, pkern_end, pkern_entry, pinitrd_start, initrd_len); - - if ( (pkern_end - pkern_start) > (d->max_pages * PAGE_SIZE) ) - { -diff -r f2309ac2648a xen/arch/ia64/xen/xensetup.c ---- a/xen/arch/ia64/xen/xensetup.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/xensetup.c Tue Sep 20 20:10:36 2005 -@@ -153,7 +153,8 @@ - void *heap_start; - int i; - unsigned long max_mem, nr_pages, firsthole_start; -- unsigned long dom0_memory_start, dom0_memory_end; -+ unsigned long dom0_memory_start, dom0_memory_size; -+ unsigned long dom0_initrd_start, dom0_initrd_size; - unsigned long initial_images_start, initial_images_end; - - running_on_sim = is_platform_hp_ski(); -@@ -191,7 +192,18 @@ - efi_memmap_walk(xen_find_first_hole, &firsthole_start); - - initial_images_start = xenheap_phys_end; -- initial_images_end = initial_images_start + ia64_boot_param->initrd_size; -+ initial_images_end = initial_images_start + -+ PAGE_ALIGN(ia64_boot_param->domain_size); -+ -+ /* also reserve space for initrd */ -+ if (ia64_boot_param->initrd_start && ia64_boot_param->initrd_size) -+ initial_images_end += PAGE_ALIGN(ia64_boot_param->initrd_size); -+ else { -+ /* sanity cleanup */ -+ ia64_boot_param->initrd_size = 0; -+ ia64_boot_param->initrd_start = 0; -+ } -+ - - /* Later may find another memory trunk, even away from xen image... */ - if (initial_images_end > firsthole_start) { -@@ -203,11 +215,21 @@ - - /* This copy is time consuming, but elilo may load Dom0 image - * within xenheap range */ -- printk("ready to move Dom0 to 0x%lx...", initial_images_start); -+ printk("ready to move Dom0 to 0x%lx with len %lx...", initial_images_start, -+ ia64_boot_param->domain_size); -+ - memmove(__va(initial_images_start), -+ __va(ia64_boot_param->domain_start), -+ ia64_boot_param->domain_size); -+// ia64_boot_param->domain_start = initial_images_start; -+ -+ printk("ready to move initrd to 0x%lx with len %lx...", -+ initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size), -+ ia64_boot_param->initrd_size); -+ memmove(__va(initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size)), -+ - __va(ia64_boot_param->initrd_start), - ia64_boot_param->initrd_size); -- ia64_boot_param->initrd_start = initial_images_start; - printk("Done\n"); - - /* first find highest page frame number */ -@@ -335,23 +357,26 @@ - * above our heap. The second module, if present, is an initrd ramdisk. - */ - printk("About to call construct_dom0()\n"); -- dom0_memory_start = __va(ia64_boot_param->initrd_start); -- dom0_memory_end = ia64_boot_param->initrd_size; -- if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_end, -- 0, -- 0, -+ dom0_memory_start = __va(initial_images_start); -+ dom0_memory_size = ia64_boot_param->domain_size; -+ dom0_initrd_start = __va(initial_images_start + -+ PAGE_ALIGN(ia64_boot_param->domain_size)); -+ dom0_initrd_size = ia64_boot_param->initrd_size; -+ -+ if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_size, -+ dom0_initrd_start,dom0_initrd_size, - 0) != 0) - panic("Could not set up DOM0 guest OS\n"); - #ifdef CLONE_DOMAIN0 - { - int i; -- dom0_memory_start = __va(ia64_boot_param->initrd_start); -- dom0_memory_end = ia64_boot_param->initrd_size; -+ dom0_memory_start = __va(ia64_boot_param->domain_start); -+ dom0_memory_size = ia64_boot_param->domain_size; -+ - for (i = 0; i < CLONE_DOMAIN0; i++) { - printk("CONSTRUCTING DOMAIN0 CLONE #%d\n",i+1); -- if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_end, -- 0, -- 0, -+ if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_size, -+ dom0_initrd_start,dom0_initrd_size, - 0) != 0) - panic("Could not set up DOM0 clone %d\n",i); - } -@@ -359,8 +384,14 @@ - #endif - - /* The stash space for the initial kernel image can now be freed up. */ -- init_domheap_pages(ia64_boot_param->initrd_start, -- ia64_boot_param->initrd_start + ia64_boot_param->initrd_size); -+ init_domheap_pages(ia64_boot_param->domain_start, -+ ia64_boot_param->domain_size); -+ /* throw away initrd area passed from elilo */ -+ if (ia64_boot_param->initrd_size) { -+ init_domheap_pages(ia64_boot_param->initrd_start, -+ ia64_boot_param->initrd_size); -+ } -+ - if (!running_on_sim) // slow on ski and pages are pre-initialized to zero - scrub_heap_pages(); - -diff -r f2309ac2648a xen/include/asm-ia64/linux-xen/asm/system.h ---- a/xen/include/asm-ia64/linux-xen/asm/system.h Tue Sep 20 19:03:25 2005 -+++ b/xen/include/asm-ia64/linux-xen/asm/system.h Tue Sep 20 20:10:36 2005 -@@ -56,6 +56,10 @@ - __u64 fpswa; /* physical address of the fpswa interface */ - __u64 initrd_start; - __u64 initrd_size; -+//for loading initrd for dom0 -+ __u64 domain_start; /* virtual address where the boot time domain begins */ -+ __u64 domain_size; /* how big is the boot domain */ -+ - } *ia64_boot_param; - - /* _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |