From: Gerd Knorr Subject: [patch] resend: fix domain builder for >4GB PAE Date: Wed, 10 Aug 2005 14:36:15 +0200 Message-ID: <20050810123614.GB3174@bytesex> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Hi, Without that patch the domain builder BUG()s due to truncated physical addresses (found by Scott Parish). Gerd Index: xen/arch/x86/domain_build.c =================================================================== --- xen.orig/arch/x86/domain_build.c 2005-08-10 13:18:54.673749233 +0200 +++ xen/arch/x86/domain_build.c 2005-08-10 14:01:06.245527407 +0200 @@ -78,8 +78,8 @@ int construct_dom0(struct domain *d, unsigned long pfn, mfn; unsigned long nr_pages; unsigned long nr_pt_pages; - unsigned long alloc_start; - unsigned long alloc_end; + physaddr_t alloc_start; + physaddr_t alloc_end; unsigned long count; struct pfn_info *page = NULL; start_info_t *si; @@ -219,8 +219,8 @@ int construct_dom0(struct domain *d, panic("Insufficient contiguous RAM to build kernel image.\n"); printk("PHYSICAL MEMORY ARRANGEMENT:\n" - " Dom0 alloc.: %p->%p", - _p(alloc_start), _p(alloc_end)); + " Dom0 alloc.: %llx->%llx", + (u64)alloc_start, (u64)alloc_end); if ( d->tot_pages < nr_pages ) printk(" (%lu pages to be allocated)", nr_pages - d->tot_pages);