From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Ian Campbell <Ian.Campbell@eu.citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>,
Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>
Subject: Re: Re: [PATCH 0 of 3] Patches for PCI passthrough with modified E820 (v3) - resent.
Date: Tue, 10 May 2011 11:51:47 -0400 [thread overview]
Message-ID: <20110510155147.GA17563@dumpdata.com> (raw)
In-Reply-To: <1305041579.26692.291.camel@zakaz.uk.xensource.com>
> > > > > > > > This has been tested with 2.6.18 (RHEL5), 2.6.27(SLES11), 2.6.36, 2.6.37, 2.6.38,
> > > > > > > > and 2.6.39 kernels. Also tested with PV NetBSD 5.1.
> > > > >
> > > > > They all saw the full amount of RAM? Since the domain builder does not
> > > >
> > > > Correct. So if the guest had 6GB passed in, roughly 3GB ended below the
> > > > 4GB mark, and then rest - 3GB got stuck behind the 4GB.
> > >
> > > Do you happen to know what caused that to work? I wasn't aware of any
> > > code which moved the p2m around based on e820 in older guests (and I
> > > can't find any right now) and I didn't think the builder itself paid any
> > > attention to the e820 either.
> >
> > Correct. The build does not pay any attention to it. But the Xen setup code
> > in the older kernels (or perhaps it is the balloon code itself), does inflate
> > back to what was deflated.
>
> I'm not concerned with the ballooned case, I'm thinking of the normal
> "boot with all memory" case. If the builder has populated 0..4G with RAM
> but the E820 says 0..3G,4G..5G (i.e. an IO hole at 3G..4G) then somebody
> must move the mfns from pfn-space 3G..4G to 4G..5G, mustn't they? Or at
> least deallocate the ones in 3G..4G so that ballooning will subsequently
> take over.
Right - and in the case of RHEL5, SLES11 ..
>
> > The PVOPS did not do that (argh, I didn't say
> > that in the earlier email - sorry about misleading you about that).
> >
> > But just to make sure I am not feeding false information let me re-run this
> > with an RHEL5 guest and double-check.
>
.. the kernels do all the magic stuff. I provided 4G to the guest, with a PCI
device (and hence enabled the E820 patches), and while the bootup at the start
initially finds:
Linux version 2.6.18-194.el5xen (mockbuild@builder10.centos.org) (gcc version 4.
1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Fri Apr 2 15:34:40 EDT 2010
BIOS-provided physical RAM map:
Xen: 0000000000000000 - 00000000bffb0000 (usable)
Xen: 00000000bffb0000 - 00000000bffbe000 (ACPI data)
Xen: 00000000bffbe000 - 00000000bffe0000 (ACPI NVS)
Xen: 00000000bffe0000 - 00000000c0000000 (reserved)
Xen: 00000000fec00000 - 00000000fec01000 (reserved)
Xen: 00000000fee00000 - 00000000fee01000 (reserved)
Xen: 00000000fff00000 - 0000000100000000 (reserved)
Xen: 0000000100000000 - 0000000140850000 (usable)
..
Memory: 3026548k/5251392k available (2512k kernel code, 118176k reserved, 1396k
..
when it finished booting, I found that 4GBs are available:
[root@g-rhel5-amd64 ~]# cat /proc/meminfo | grep MemTotal
MemTotal: 4186112 kB
With the PVOPS one, it does almost all of the same thing except
it does not balloon back to the initial size (4GB), so the user
has to manually inflate. But that seems like a Linux kernel feature
is missing: I get the same thing when my 8GB machine boots the PVOPS kernel.
I end up with 6GB (no dom0_mem thing). If I try to 'inflate' past the 6GB it
ignores me - while if I boot with the older Xen-O-Linux I get 8GB to Dom0.
NetBSD seems to do the same thing as RHEL5, SLES11 (note, I could not actually
give it 4096MB, b/c the NetBSD unstable kernel would crash - irregardless if
a PCI device was passed in. But passing in 3900MB made it work). With 3900MB
and a PCI device (so with a modified E820), the guest told me I've
3891 MB free (the rest seem to be used by the kernel).
next prev parent reply other threads:[~2011-05-10 15:51 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-04 14:17 [PATCH 0 of 3] Patches for PCI passthrough with modified E820 (v3) - resent Konrad Rzeszutek Wilk
2011-05-04 14:17 ` [PATCH 1 of 3] tools: Add xc_domain_set_memory_map and xc_get_machine_memory_map calls (x86, amd64 only) Konrad Rzeszutek Wilk
2011-05-04 14:17 ` [PATCH 2 of 3] libxl: Add support for passing in the machine's E820 for PCI passthrough Konrad Rzeszutek Wilk
2011-05-10 8:29 ` Ian Campbell
2011-05-10 14:56 ` Konrad Rzeszutek Wilk
2011-05-17 15:10 ` Ian Jackson
2011-05-17 16:00 ` Konrad Rzeszutek Wilk
2011-05-17 16:05 ` Ian Campbell
2011-05-04 14:17 ` [PATCH 3 of 3] libxl: Convert E820_UNUSABLE and E820_RAM to E820_UNUSABLE as appropriate Konrad Rzeszutek Wilk
2011-05-09 9:00 ` [PATCH 0 of 3] Patches for PCI passthrough with modified E820 (v3) - resent Ian Campbell
2011-05-09 21:01 ` Konrad Rzeszutek Wilk
2011-05-10 8:30 ` Ian Campbell
2011-05-10 14:53 ` Konrad Rzeszutek Wilk
2011-05-10 15:09 ` Ian Campbell
2011-05-10 15:27 ` Konrad Rzeszutek Wilk
2011-05-10 15:32 ` Ian Campbell
2011-05-10 15:51 ` Konrad Rzeszutek Wilk [this message]
2011-05-11 7:49 ` Ian Campbell
2011-05-12 17:41 ` Konrad Rzeszutek Wilk
2011-05-13 8:47 ` Ian Campbell
2011-05-13 13:57 ` Konrad Rzeszutek Wilk
2011-05-17 16:02 ` Konrad Rzeszutek Wilk
2011-05-17 16:07 ` Ian Campbell
2011-05-17 16:34 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110510155147.GA17563@dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=Ian.Campbell@eu.citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=Stefano.Stabellini@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).