From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f74.google.com (mail-pj1-f74.google.com [209.85.216.74]) by mx.groups.io with SMTP id smtpd.web10.1459.1664823251590268754 for ; Mon, 03 Oct 2022 11:54:11 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@google.com header.s=20210112 header.b=hPlCvhFs; spf=pass (domain: flex--dionnaglaze.bounces.google.com, ip: 209.85.216.74, mailfrom: 30i87ywskbt8ejpoobhmb0fhpphmf.dpnefwfmfel3.hspvqt.jp@flex--dionnaglaze.bounces.google.com) Received: by mail-pj1-f74.google.com with SMTP id v5-20020a17090abb8500b0020a76ded27eso4546553pjr.3 for ; Mon, 03 Oct 2022 11:54:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date; bh=l8+iE4R/XCE22/5+3+fsaQpWonjnLMO7DpJ3JevLWRA=; b=hPlCvhFsqZh+09ih+Wzml87XOeNBpu2ICDRIvawh4vVGBiVynrRWKaVZp5a12tnZoB f8LYjMiM2u8x7f9l3y7LIGP4Q9dLQuck41n0fsCMgIG9qYkVfzWIrBGobkgbZ7dRpYq/ sn/P3FS3r3jB9VQzgSuYBdgjstwWLhCxBvZ3Ug+D52M840xE49ZLRzzw4Z3nyL3c2ObT qhMZ59egBs/74XPXVHHGalGFQido2z+0VXiEYMjfRciV93DZNP68QSyvHeDR7t+nvuvV 6eUDcfD8k/KJ2FncrAkQJeyYIJVq5oPNLkB2a350rnhcQDYmgNYuv2Fx6QTHehRvfyd7 iTKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date; bh=l8+iE4R/XCE22/5+3+fsaQpWonjnLMO7DpJ3JevLWRA=; b=1u/gb+4nfwoA5UL/GRpUL9tAfnyV0WdFTsxQXsLe9Polw+SyoS5nwNml6inr5mtGuC zQaeid9BFLbBbgZHEUy5zjbKHKLgw64Q3sueEVbsnff9XnFNOFYLI06yqvvtZylQr2S2 Hajmk3SD805i7dgyGCdYMQW0A0XKBo5Q2am3INnAI1DZ2Nh4rVLYQdasyOYuQt5EIwPz emb8JvCZrMCmjTN9wuBy4MUlFvhjdI1X0W7d8TfLJFOePK/cszWJiKYJy4pRxRGwliuX F6EOgm8SsjP1mRCj0rIbQlCz+q19t83emCzCc/XfQhlY0ne8Fp+NSwSGKbPag7eZide+ t4zQ== X-Gm-Message-State: ACrzQf0JMLR5JIqrhTqzpQ7uBip09wK8ADwxeYKWQMQTNPbAZEZHHtAV zgrO1WrdtOjcR6X+arFFjnF9cEioJpVDlZ2wSPN2LAjuoOpVlYj+/7Cx8kHijgYwMr8uHk26YB8 5U8sslJEx7ruf7aNm9zs3RIneIQxbCZLmiYdOBXnGwmGB5uWO/0sQFYRlFTqK7/a6KMtOqNNc X-Google-Smtp-Source: AMsMyM7oiScnd6k1b1T2fAt2n5+7dilJMjJTabDA48lKy0gTbv/RnglBa5WU+uDI52tbS9V9MlTjuNZ/FrGUR0SAlQ== X-Received: from dionnaglaze.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:2ee6]) (user=dionnaglaze job=sendgmr) by 2002:a17:90b:350b:b0:202:8495:6275 with SMTP id ls11-20020a17090b350b00b0020284956275mr13779254pjb.216.1664823250931; Mon, 03 Oct 2022 11:54:10 -0700 (PDT) Date: Mon, 3 Oct 2022 18:53:52 +0000 In-Reply-To: <20221003185352.3969999-1-dionnaglaze@google.com> Mime-Version: 1.0 References: <20221003185352.3969999-1-dionnaglaze@google.com> X-Mailer: git-send-email 2.38.0.rc1.362.ged0d419d3c-goog Message-ID: <20221003185352.3969999-8-dionnaglaze@google.com> Subject: [PATCH v6 7/7] OvmfPkg/PlatformPei: SEV-SNP make >=4GB unaccepted From: "Dionna Glaze" To: devel@edk2.groups.io Cc: Dionna Glaze , Ard Biescheuvel , "Min M. Xu" , Gerd Hoffmann , James Bottomley , Tom Lendacky , Jiewen Yao , Erdem Aktas Content-Type: text/plain; charset="UTF-8" Instead of eagerly accepting all memory in PEI, only accept memory under the 4GB address. This allows a loaded image to use the ACCEPT_ALL_UNACCEPTED_MEMORY_PROTOCOL to disable the accept behavior and indicate that it can interpret the memory type accordingly. This classification is safe since ExitBootServices will accept and reclassify the memory as conventional if the disable protocol is not used. Cc: Ard Biescheuvel Cc: "Min M. Xu" Cc: Gerd Hoffmann Cc: James Bottomley Cc: Tom Lendacky Cc: Jiewen Yao Cc: Erdem Aktas Signed-off-by: Dionna Glaze --- OvmfPkg/PlatformPei/AmdSev.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/OvmfPkg/PlatformPei/AmdSev.c b/OvmfPkg/PlatformPei/AmdSev.c index 385562b44c..2a52d6f491 100644 --- a/OvmfPkg/PlatformPei/AmdSev.c +++ b/OvmfPkg/PlatformPei/AmdSev.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -63,6 +64,10 @@ AmdSevSnpInitialize ( for (Hob.Raw = GetHobList (); !END_OF_HOB_LIST (Hob); Hob.Raw = GET_NEXT_HOB (Hob)) { if ((Hob.Raw != NULL) && (GET_HOB_TYPE (Hob) == EFI_HOB_TYPE_RESOURCE_DESCRIPTOR)) { ResourceHob = Hob.ResourceDescriptor; + if (ResourceHob->PhysicalStart >= SIZE_4GB) { + ResourceHob->ResourceType = EFI_RESOURCE_MEMORY_UNACCEPTED; + continue; + } if (ResourceHob->ResourceType == EFI_RESOURCE_SYSTEM_MEMORY) { MemEncryptSevSnpPreValidateSystemRam ( -- 2.38.0.rc1.362.ged0d419d3c-goog