[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b33c1fbe-a7b5-f5b0-5dc6-f017f5cfc7f4@amd.com>
Date: Mon, 11 Apr 2022 13:55:20 -0500
From: Tom Lendacky <thomas.lendacky@....com>
To: Dave Hansen <dave.hansen@...el.com>, Borislav Petkov <bp@...en8.de>
Cc: "Kirill A. Shutemov" <kirill@...temov.name>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Andy Lutomirski <luto@...nel.org>,
Sean Christopherson <seanjc@...gle.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Joerg Roedel <jroedel@...e.de>,
Ard Biesheuvel <ardb@...nel.org>,
Andi Kleen <ak@...ux.intel.com>,
Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@...ux.intel.com>,
David Rientjes <rientjes@...gle.com>,
Vlastimil Babka <vbabka@...e.cz>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
Paolo Bonzini <pbonzini@...hat.com>,
Ingo Molnar <mingo@...hat.com>,
Varad Gautam <varad.gautam@...e.com>,
Dario Faggioli <dfaggioli@...e.com>,
Brijesh Singh <brijesh.singh@....com>,
Mike Rapoport <rppt@...nel.org>,
David Hildenbrand <david@...hat.com>, x86@...nel.org,
linux-mm@...ck.org, linux-coco@...ts.linux.dev,
linux-efi@...r.kernel.org, linux-kernel@...r.kernel.org,
Mike Rapoport <rppt@...ux.ibm.com>
Subject: Re: [PATCHv4 1/8] mm: Add support for unaccepted memory
On 4/11/22 11:27, Dave Hansen wrote:
> On 4/11/22 08:55, Borislav Petkov wrote:
>> On Sun, Apr 10, 2022 at 11:41:57PM -0700, Dave Hansen wrote:
>>> Let's just call out the possible (probable?) need for new ABI here.
>>> Maybe it will cue folks who care to speak up.
>> Err, why would you teach the user to go poke at some arbitrary sysfs
>> nodes when the accepting code can simply issue a printk from time to
>> time
>>
>> "Guest unnaccepted memory progress: XX%. This slows down operations at the moment."
>
> I guess that's not a horrible place to start. It's also not *horribly*
> different from how guests work today. If hosts lazily allocate RAM,
> they'll see largely the same kind of behavior.
>
> What ends up determining how much memory is pre-accepted versus being
> done from the guest? Is that just a normal part of setting up a TDX
> guest, like from the qemu cmdline? Or, is there some convention with
> the virtual firmware?
With SNP, some memory will be accepted as part of the LAUNCH_UPDATE
sequences that the hypervisor performs, but that is not all of the guest
memory. Once the guest is started, the (initial implementation of) OVMF
SNP support will accept (PVALIDATE) all of the remaining guest memory.
When the kernel boots, there isn't any unaccepted memory.
Once support is available in the kernel for unaccepted memory, then OVMF
could be updated to only accept a limited amount of memory and pass the
information about the unaccepted memory to the kernel through the EFI
memory map.
The approaches would have to be measured to see which ends up being the
best one. The GHCB specification allows for lots of memory to be accepted
in a single VMGEXIT (world switch) vs performing a VMGEXIT for each 2MB of
memory being accepted.
Thanks,
Tom
Powered by blists - more mailing lists