From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "Wei Liu" <wl@xen.org>, "Roger Pau Monné" <roger.pau@citrix.com>,
"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 3/4] x86/PVH: improve Dom0 memory size calculation
Date: Tue, 31 Aug 2021 17:30:07 +0200 [thread overview]
Message-ID: <67c30a53-b0cd-44b8-c446-6b6cdf0e740f@suse.com> (raw)
In-Reply-To: <abb0e218-d02f-a1f4-2d48-3d3d3c681b06@citrix.com>
On 31.08.2021 16:07, Andrew Cooper wrote:
> On 30/08/2021 14:03, Jan Beulich wrote:
>> Assuming that the accounting for IOMMU page tables will also take care
>> of the P2M needs was wrong: dom0_paging_pages() can determine a far
>> higher value, high enough for the system to run out of memory while
>> setting up Dom0. Hence in the case of shared page tables the larger of
>> the two values needs to be used (without shared page tables the sum of
>> both continues to be applicable).
>
> I'm afraid that I can't follow this at all.
>
> What causes the system to run out of RAM while constructing dom0?
Without any "dom0_mem=" we set aside 128Mb. In my .config that was in
use I default to "dom0_mem=-255". Yet this was still far from enough to
cover the gap between the original IOMMU page table accounting and the
value returned from dom0_paging_pages(). Since this is what also gets
used to actually populate Dom0's P2M pool, with the P2M pool populated
there wasn't enough RAM anymore to reach the Dom0 size which
dom0_compute_nr_pages() did establish.
Putting it in a simplified formula, what we did so far when sharing
page tables was
RAM = total - IOMMU
but what we need is
RAM = total - max(IOMMU, P2M)
In the non-shared case we already correctly did
RAM = total - (IOMMU + P2M)
Jan
next prev parent reply other threads:[~2021-08-31 15:30 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-30 13:01 [PATCH 0/4] x86/PVH: Dom0 building adjustments Jan Beulich
2021-08-30 13:02 ` [PATCH 1/4] x86/PVH: de-duplicate mappings for first Mb of Dom0 memory Jan Beulich
2021-08-31 13:02 ` Andrew Cooper
2021-08-31 13:14 ` Jan Beulich
2021-08-31 13:19 ` Jan Beulich
2021-08-31 13:27 ` Andrew Cooper
2021-08-31 13:36 ` Jan Beulich
2021-09-01 11:49 ` Andrew Cooper
2021-09-01 8:41 ` Roger Pau Monné
2021-08-30 13:02 ` [PATCH 2/4] x86/P2M: relax guarding of MMIO entries Jan Beulich
2021-08-31 13:16 ` Jan Beulich
2021-08-31 13:16 ` Andrew Cooper
2021-08-31 13:26 ` Jan Beulich
2021-08-31 15:25 ` Andrew Cooper
2021-08-31 15:38 ` Jan Beulich
2021-09-01 8:08 ` Jan Beulich
2021-09-01 8:50 ` Roger Pau Monné
2021-09-01 9:53 ` Jan Beulich
2021-09-01 13:48 ` Roger Pau Monné
2021-09-01 14:05 ` Jan Beulich
2021-09-01 12:47 ` Andrew Cooper
2021-09-01 13:08 ` Jan Beulich
2021-09-06 19:53 ` Andrew Cooper
2021-09-07 6:27 ` Jan Beulich
2021-08-30 13:03 ` [PATCH 3/4] x86/PVH: improve Dom0 memory size calculation Jan Beulich
2021-08-31 14:07 ` Andrew Cooper
2021-08-31 15:30 ` Jan Beulich [this message]
2021-08-30 13:03 ` [PATCH 4/4] x86/PV: properly set shadow allocation for Dom0 Jan Beulich
2021-08-31 13:47 ` Andrew Cooper
2021-08-31 14:25 ` Jan Beulich
2021-08-31 21:08 ` Tim Deegan
2021-08-31 8:53 ` [PATCH 0/4] x86/PVH: Dom0 building adjustments Jan Beulich
2021-09-01 13:56 ` Roger Pau Monné
2021-09-01 14:19 ` Jan Beulich
2021-09-01 14:25 ` Jan Beulich
2021-09-01 16:13 ` Roger Pau Monné
2021-09-02 6:30 ` Jan Beulich
2021-09-01 15:06 ` Jan Beulich
2021-09-01 15:24 ` Juergen Gross
2021-09-01 15:51 ` Jan Beulich
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=67c30a53-b0cd-44b8-c446-6b6cdf0e740f@suse.com \
--to=jbeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=roger.pau@citrix.com \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.