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-devel

Re: [Xen-devel] Linux 3.0.0 dom0_mem= not working

On Thu, Aug 04, 2011 at 12:07:41AM +0200, Daniel Musketa wrote:
> 2011/8/3 Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>:
> > On Mon, Aug 01, 2011 at 11:59:41PM +0200, Daniel Musketa wrote:
> >> Hello,
> >>
> >> when I boot linux-3.0.0 on xen-4.0.2.gz with dom0_mem=4000M I only get
> >> 313M of RAM in dom0.
> >
> [...]
> > .. on the Linux stanze, add 'mem=4G'. Can you try that?
> 
> I did. dmesg output with "mem=4000M" in dom0's /proc/cmdline is attached.

Aha. It is your E820 that is causing this funny thing.
> 
> Thanks,
> Daniel

> [    0.000000]  Xen: 000000008f64f000 - 000000008f6e7000 (ACPI data)
> [    0.000000]  Xen: 000000008f6e7000 - 000000008f6f1000 (ACPI NVS)
> [    0.000000]  Xen: 000000008f6f1000 - 000000008f6f2000 (ACPI data)
> [    0.000000]  Xen: 000000008f6f2000 - 000000008f7cf000 (ACPI NVS)
> [    0.000000]  Xen: 000000008f7cf000 - 000000008f800000 (ACPI data)
> [    0.000000]  Xen: 000000008f800000 - 0000000090000000 (reserved)
> [    0.000000]  Xen: 00000000a0000000 - 00000000b0000000 (reserved)
> [    0.000000]  Xen: 00000000fc000000 - 00000000fd000000 (reserved)
> [    0.000000]  Xen: 00000000fec00000 - 00000000fec01000 (reserved)
> [    0.000000]  Xen: 00000000fec90000 - 00000000fec91000 (reserved)
> [    0.000000]  Xen: 00000000fed1c000 - 00000000fed44000 (reserved)
> [    0.000000]  Xen: 00000000fee00000 - 00000000fee01000 (reserved)
> [    0.000000]  Xen: 00000000ff800000 - 0000000100000000 (reserved)
> [    0.000000]  Xen: 0000000100000000 - 00000006ca000000 (usable)

So this is what the E820 sees (well, there is somet more stuff above the ACPI 
data but your buffer ran out)


> [    0.000000] e820 remove range: 00000000fa000000 - ffffffffffffffff (usable)
> [    0.000000] bootconsole [xenboot0] enabled
> [    0.000000] NX (Execute Disable) protection: active
> [    0.000000] user-defined physical RAM map:
> [    0.000000]  user: 0000000000000000 - 0000000000099000 (usable)
> [    0.000000]  user: 0000000000099800 - 0000000000100000 (reserved)
> [    0.000000]  user: 0000000000100000 - 000000008c3a0000 (usable)

So if you look here, you can see hte usable section being from 1MB up
to 2352MB (duh!) That is what the BIOS has setup.

> [    0.000000]  user: 000000008c3a0000 - 000000008c47b000 (ACPI NVS)
> [    0.000000]  user: 000000008c47b000 - 000000008c560000 (ACPI data)
> [    0.000000]  user: 000000008c560000 - 000000008d960000 (ACPI NVS)
> [    0.000000]  user: 000000008d960000 - 000000008f602000 (ACPI data)
> [    0.000000]  user: 000000008f602000 - 000000008f64f000 (reserved)
> [    0.000000]  user: 000000008f64f000 - 000000008f6e7000 (ACPI data)
> [    0.000000]  user: 000000008f6e7000 - 000000008f6f1000 (ACPI NVS)
> [    0.000000]  user: 000000008f6f1000 - 000000008f6f2000 (ACPI data)
> [    0.000000]  user: 000000008f6f2000 - 000000008f7cf000 (ACPI NVS)
> [    0.000000]  user: 000000008f7cf000 - 000000008f800000 (ACPI data)
> [    0.000000]  user: 000000008f800000 - 0000000090000000 (reserved)
> [    0.000000]  user: 00000000a0000000 - 00000000b0000000 (reserved)
> [    0.000000]  user: 00000000fc000000 - 00000000fd000000 (reserved)
> [    0.000000]  user: 00000000fec00000 - 00000000fec01000 (reserved)
> [    0.000000]  user: 00000000fec90000 - 00000000fec91000 (reserved)
> [    0.000000]  user: 00000000fed1c000 - 00000000fed44000 (reserved)
> [    0.000000]  user: 00000000fee00000 - 00000000fee01000 (reserved)
> [    0.000000]  user: 00000000ff800000 - 0000000100000000 (reserved)

and since we asked the E820 to truncate any entry above the 4G, that is the
reason you don't see the rest. (if you look at the other E820 without
the mem=X you will see that)


Anyhow, other machines usually have the E820 with more usuable regions so
that when you do 'mem=4G' you actually get around 3.5GB or so - hence the
general 'try mem=4G'.

Anyhow, in your special case you need 'mem=6G' for you to see 4GB.
Kind of non-intuitive.

We really need to fix this ...


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

<Prev in Thread] Current Thread [Next in Thread>