[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48CC2C12.4080302@goop.org>
Date: Sat, 13 Sep 2008 14:09:38 -0700
From: Jeremy Fitzhardinge <jeremy@...p.org>
To: roberto@...it.it
CC: jeremy@...source.com, linux-kernel@...r.kernel.org,
Mirko Iannella <mirko@...it.it>, Ingo Molnar <mingo@...e.hu>,
Alex Nixon <alex.nixon@...rix.com>
Subject: Re: Fix for xen guest with mem > 3.7G
Roberto De Ioris wrote:
> Xen domU kernel 2.6.26 and 2.6.27-rc cannot allocate
> more than 3.7GB of ram on my PAE systems (compiled
> with gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)).
>
> I have found the problem is in function xen_memory_setup (in
> arch/x86/xen/setup.c).
>
> It set max_pfn as 'unsigned long' but add_memory_region()
> takes 'unsigned long long'.
>
> I do not know if it is a compiler problem but this is the simple fix
> (works on my systems):
>
Thanks very much for the patch. We have a more general fix for this in
Ingo's tip.git tree, but I overlooked that this particular problem
affected current -rc.
Ingo, this is fixed by the phys_addr_t + PFN_PHYS() patches. Should we
send them up to Linus, or do an ad-hoc fix in this one place?
Thanks,
J
> --- setup.c.orig 2008-09-13 21:12:56.000000000 +0200
> +++ setup.c 2008-09-13 20:35:29.000000000 +0200
> @@ -36,7 +36,7 @@
>
> char * __init xen_memory_setup(void)
> {
> - unsigned long max_pfn = xen_start_info->nr_pages;
> + unsigned long long max_pfn = xen_start_info->nr_pages;
>
> e820.nr_map = 0;
> add_memory_region(0, LOWMEMSIZE(), E820_RAM);
>
>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists