Re: [PATCH 0/5] x86: Impplement support for unaccepted memory
From: Dave Hansen <hidden>
Date: 2021-08-10 14:09:22
Also in:
linux-mm, lkml
On 8/9/21 11:26 PM, Kirill A. Shutemov wrote:
UEFI Specification version 2.9 introduces concept of memory acceptance: Some Virtual Machine platforms, such as Intel TDX or AMD SEV-SNP, requiring memory to be accepted before it can be used by the guest. Accepting happens via a protocol specific for the Virtrual Machine platform. Accepting memory is costly and it makes VMM allocate memory for the accepted guest physical address range. We don't want to accept all memory upfront.
This could use a bit more explanation. Any VM is likely to *eventually* touch all its memory, so it's not like a VMM has a long-term advantage by delaying this. So, it must have to do with resource use at boot. Is this to help boot times? I had expected this series, but I also expected it to be connected to CONFIG_DEFERRED_STRUCT_PAGE_INIT somehow. Could you explain a bit how this problem is different and demands a totally orthogonal solution? For instance, what prevents us from declaring: "Memory is accepted at the time that its 'struct page' is initialized" ? Then, we use all the infrastructure we already have for DEFERRED_STRUCT_PAGE_INIT. This series isn't too onerous, but I do want to make sure that we're not reinventing the wheel.