[staging/TDVF] lazy accept configurability for cross-technology usage?

Dionna Glaze

Hi y'all, I'm Dionna. I work at Google on Confidential VMs. I've been following the lazy accept patch series for TDVF. Min Xu has seen me fork it in an RFC to AMD's OVMF.

What I'm wondering about is TDX_MEM_PARTIAL_ACCEPT and how it's a build-time fixed Pcd. Have y'all considered making partial acceptance a VMM-configurable value with a cross-technology-agreed-upon QemuFwCfg endpoint? I ask because there's a good chance Linux will say SEV-SNP is "supported" without requiring Kirill's patches [1] for lazy accept plus another yet-to-be-sent patch enabling SEV-SNP[2], and we get into a "does your OS support this EFI feature?" problem that isn't a fun problem to solve from a cloud provider's and OS image provider's perspective.

I'm planning on pursuing this configuration endpoint anyway while we figure out whether this is worth pushing deadlines, but I figured I'd ask here to see if y'all were open to a "minimum preaccepted memory" configuration that would be usable for TDVF as well, so it's not just an AMD thing. The unaccepted memory type isn't technology-specific, so I figured this shouldn't be either.

-Dionna Glaze

[1] https://patches.linaro.org/project/linux-efi/list/?series=175939
[2] https://github.com/deeglaze/amdese-linux/commit/e778dfbc81a4079f9efb08c5b9e248f47aca2d8d