I have a working stack with proposal 5. I was using a version of grub that didn't use Linux's EFI handover protocol, and I wasn't signalling the unaccepted memory behavior at the right place (before EBS). Many thanks to everyone who contributed to this discussion and brought some creative ideas to the table. Thanks especially to Ard, for multiple consultations. With proposal 5, we won't need any control plane annotation for disabling unaccepted memory, and users will always get safe behavior. I'll have patches out to OVMF (based on this patch series) and to Linux shortly. On Mon, Aug 15, 2022 at 11:47 PM Gerd Hoffmann wrote: > Hi, > > > 3. fw_cfg > > - Add new fw_cfg item (opt/ovmf/AcceptAllMemory) to indicate how to > handle the unaccepted memory. > > > True - accept all the memory > > > False - don't accept the memory > > > Default - It allows the firmware to choose depending on various > factors. > > - Glaze has submit the patch > https://lore.kernel.org/all/20220620223300.1555849-1-dionnaglaze@google.com/ > > > Proposal 3) only works for QEMU because of fw_cfg. > > Well, while that is true for the patch at hand it doesn't have to be > that way. We can also simply store the config option in a EFI variable. > Wire up a HII configuration so it can be changed via firmware setup. > Allow setting the EFI variable from fw_cfg, so qemu users can set that > on the qemu command line too (and possibly have similar mechanisms for > other hypervisors, hello cloudhv). > > > I wonder if lazy-accept feature can be split into 2 stages. > > 1. In first stage there is a config option to indicate if lazy-accept is > enabled or not. > > 2. In the second stage the automatic negotiation is introduced so that > lazy-accept is enabled or not by the negotiation result. > > Absolutely. That is one of the reasons why I suggested to have a > true/false/default config option instead of just true/false. > > When the first stage is implemented "default" behavior would be fixed > (either hard-coded or a compile-time option). > > When the second stage is implemented "default" behavior would be > dynamic, depending on the negotiation result. > > take care, > Gerd > > -- -Dionna Glaze, PhD (she/her)