[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5] x86/PVH: improve Dom0 memory size calculation


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Tue, 14 Dec 2021 11:48:00 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OLfnLl9EECw5E4w32OxKKkKw3mpoSaT52z724tt1lkU=; b=DBhJM3BLWnZJsiLYX83p1qv/58fN3KO12DfklJ+S/V6t/S9qjqtrundoZQMEXQD9ZLvvYxpnqtzzdyZ2lBe7cQHp7OI2JWgFB+Mr4N9w/jjjDVucKlMSMjIgbcICXK8LmF3AL6FC724bERQF2D32Jc9C/312R2PtvZcRV068Ml0aQ4ZH+oHasAjpjD2/LZMU5lXbmhXaJMUgFdM2SqWbHSe7gLaLUEzt5DYg4hRYbvYT1AR4VYjBR9fXWwfgI7IgeVhatvAw3+6MW2kf96Rgff9FXdwXxgNHLYtdvMBBbLc7YaQSHLQsgg5sVdMdVneIbivvZ6xw8q98nphANqiaIw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UO7mZqPc+Vd+a2exR3ujj+nteqJFKhPe5BkdpLVpEnCzGXX1hMHpEUbv0++5bNWDTPnBzXg4jZm05qAAyWFu6pJhDpPWJ+Pp9xCTLdcl1NXS8qynbN4IhVA5mOT/7xmurFzpkOxphmMDin/1FrqFHd2Q5/sAKKmVnb0JoodgtaGt/KLt40MxnjR0SC0B9IbGMSubrsLFeDcAGncWQ48M/qOm7a1tc9VMwSzvs4T6LcuQ62Qt1PWicBvDdnqEGcyJVnTxfTNbudpYyQ/p+YPfoH8DL0ViHcmNtI81KaDsGhFJ7FnkPHA1y4exFb4sFonWqX20Yx3duYVYY8vZzo0/pg==
  • Authentication-results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Tue, 14 Dec 2021 10:48:17 +0000
  • Ironport-data: A9a23:a5wQcqM3xBTWop7vrR16kMFynXyQoLVcMsEvi/4bfWQNrUoqgmEBn 2pJXj3Sa6mKMWOjfownPY+29BwGuZXRxtBlGQto+SlhQUwRpJueD7x1DKtR0wB+jCHnZBg6h ynLQoCYdKjYdpJYz/uUGuCJQUNUjMlkfZKhTr6UUsxNbVU8En5400s/w7RRbrNA2rBVPSvc4 bsenOWHULOV82Yc3rU8sv/rRLtH5ZweiRtA1rAMTakjUGz2zhH5OKk3N6CpR0YUd6EPdgKMq 0Qv+5nilo/R109F5tpICd8XeGVSKlLZFVDmZna7x8FOK/WNz8A/+v9TCRYSVatYowygs/Uh8 c4djNu9ezoQIKfeu8kZTDANRkmSPYUekFPGCX22sMjVxEzaaXr8hf5pCSnaP6VBpLwxWzsXs 6VFdnZdNXhvhMrvqF6/YvNrick5atHiIasUu216zCGfBvEjKXzGa/ibtI8CgWpp7ixINd39R MgdaRM1Vgr/eyd0NllPDrxvwej90xETdBUH8QnI9MLb+VP70whZwLXrdt3PdbSiVchT20qVu G/C12D4GQ0BcsySzyKf9XChjfOJmjn0MKoQHrCl8v9hgHWI23ceThYRUDOGTeKR0xDkHYgFc gpNp3Ro/fNaGFGXosfVZjSUhS69pU4lHNdiLtQk4hOu567LylPMboQbdQJpZNsjvc4wYDUl0 F6Vgt/kbQBSXK2ppWG1renN827rUcQBBSpbPHJfE1NZizX2iNhr1kqnczp1LEKiYjQZ8xnUy ivCkiUxjq57YSUjh/TipgCvb95BS/H0ou8JCuf/AjLNAuBRPtfNi2mUBb7zt6kowGGxFAbpg ZT8s5LChN3i9LnU/MB3fM0DHauy+9GOOyDGjFhkEvEJrmr2qiL5JNgNvm4vdC+F1/ronxezP yc/XisLu/du0IaCN/crM+pd9ex0pUQfKTgVfq+NNYcfCnSAXASG4DtvdSatM5PFyyARfVUEE c7DK66EVC9CYYw+lWbeb7pMidcDm3FlrUuOFM+T8vhS+efHDJJjYexeawXmgyFQxP7snTg5B P4DbZbXkEsGD7WlCsQVmKZKRW03wbEALcmeg+Rcd/KZIxogH2ckCvTLxqgmdZAjlKNQ/tokN FnnMqOB4Fag13DBNyuQbXVvNOHmUZpl9CppNi0wJ1e4nXMkZN/3vqsYcpI2e5gh9fBikqEoH 6VUJZ3YD6QdUCnD9hQccYL58N5oeiO0iF/cJCGiejU+IcJtHlSb5t/+cwLz3yASFS7r59Amq rit21qDE5oOTghvFujMb/erww/jtHQRgrsqDUDJPsNSaAPn940zc379ifo+IsctLxTfx2TFi 1bKUElA/eSU+t076tjEg6yAvryFKeomExoIBXTf4Ja3KTLeojipz7hfXbvaZjvaTm71pvmvP L0H0/HmPfQbt19WqI4gQa1zxKcz6taz9b9XygNoQCfCY1ixU+4yJ3CH2Y9Et7FXx68fsgyzA xrd9t5fMLSPGcXkDF9Oe1Z1MrXdjakZymvI8PA4AETm/ysmrrOIXHJbMwSIlCEAfqB+N5kow Lt5tcMbg+BlZsHG7jpSYvhoylmx
  • Ironport-hdrordr: A9a23:sB4kNa0nOeqn7DA5al8h7wqjBGokLtp133Aq2lEZdPUMSL38qy iv9M536faGskd0ZJhAo6H7BEDuexLhHPJOirX5eI3SPjUO21HYUb2Kj7GD/9SIIUSXygce79 YCT0EUMrHN5C1B4/oSlzPWLz9P+rO6GeuT9IDjJj9WPGdXg/8M1XYBNu5Zf3cGPzWuK6BJbK ah2g==
  • Ironport-sdr: IdhPWkE1m2RWgaZTLNFlw8FD2mHIU+tquF9ZMval0BYd9Pv8wP/yjYEfqpuMEkIju4IYcV+f8f DNsKfCP9s/PCm+x0IkKrYqnsCOpaI+A47XBjZ+Ny3ssNQSps1NfKuVlWX/vRZ5v5QaekmkE2iA VxaAIvEiDxbFVPWzu54AlSmHXOgAk8CGjslpSGaxYQ8ukeNY7xvX6KvamBP7BEaNdt4vVHxqqs gqSaJUdOYBk7z/JmXoejFBCxyph3TcMeIy8gMZjoQUbqC55rnyQCKivV5+lugWMRJ1sBq5l3Y1 3eGx5PE01QOYXa17qm23H/UY
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Fri, Dec 03, 2021 at 11:27:20AM +0100, 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).
> 
> To not further complicate the logic, eliminate the up-to-2-iteration
> loop in favor of doing a few calculations twice (before and after
> calling dom0_paging_pages()). While this will lead to slightly too high
> a value in "cpu_pages", it is deemed better to account a few too many
> than a few too little.
> 
> As a result the calculation is now deemed good enough to no longer
> warrant the warning message, which therefore gets dropped.
> 
> Also uniformly use paging_mode_enabled(), not is_hvm_domain().
> 
> While there also account for two further aspects in the PV case: With
> "iommu=dom0-passthrough" no IOMMU page tables would get allocated, so
> none need accounting for. And if shadow mode is to be enabled (including
> only potentially, because of "pv-l1tf=dom0"), setting aside a suitable
> amount for the P2M pool to get populated is also necessary (i.e. similar
> to the non-shared-page-tables case of PVH).
> 
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

Thanks, Roger.



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.