From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f73.google.com (mail-pj1-f73.google.com [209.85.216.73]) by mx.groups.io with SMTP id smtpd.web10.63536.1674694620156262360 for ; Wed, 25 Jan 2023 16:57:00 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@google.com header.s=20210112 header.b=Yy8eW9Dy; spf=pass (domain: flex--dionnaglaze.bounces.google.com, ip: 209.85.216.73, mailfrom: 328_rywskbeylqwvviotihmowwotm.kwulmdmtmlsk.ozwcxa.qw@flex--dionnaglaze.bounces.google.com) Received: by mail-pj1-f73.google.com with SMTP id f7-20020a17090a9b0700b0022c0e9362a3so1348978pjp.5 for ; Wed, 25 Jan 2023 16:57:00 -0800 (PST) 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:message-id:reply-to; bh=2lGdwUkSrYHtBySSTfQ2A9cY+XMOmoQymwkYOdtT15o=; b=Yy8eW9DyXkczI4N22NV2B5tYtHMMFUD/QyT6hn5Xsj0t4z3PQC61TG2FCRAwCtTUEn 2SJHrQdR48QZF0AMMFAaVvbwngslCfKZDgVdByiGmbg5DIaBrX3jY2/AlOz47JilOW+8 p/5cDzJaP39vxngfJcvLjLE/4qS8GEmIlqqmLUqOVIZqPYxHZE6jgergqRtNb/folnzs elwIb2KMDdfWulWlPadAtCEcejF4Ohlx/3FVgFofhBtcOiiPoG31N+FY5YWEm34f9+y8 gTsJ2xDdAtIJ63hHUzZnRgJdRV57Kbj/CTdXa77cHrGU5JI7BuUZnTIzq78J7XiWchwj qXBQ== 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:message-id:reply-to; bh=2lGdwUkSrYHtBySSTfQ2A9cY+XMOmoQymwkYOdtT15o=; b=aWbksrk12xlMWBF1L5Sz1xstYBg014MGx/+Wcx9GWUZ6vWacjTKIyJkFXcG9gt2CQU TWYJet1AJz4tZ/KX/qPcNlKuu+lhsvJh2zmjFD7kIeDaHCUYl+JA0G0erF5ukuiQW+37 UhrASaHDTSl5SiyLPtySPpzKndgS9SfCb6xsQ2Po4HLI0QVRQNpH3fsgbUnm9LhrwDEl LOpIpkVv1uObWFVL0DZs34IIY0HSkvNjPE6rvuiteL+22kKD+bwKTo0MzKlCs9OuC4z1 60EBjIzT3TCtksw7rm9IjiIRyLi+mdUN/+AW/fj1MgfXf35XuwW0Eu7Vcu6Ds/IjMdZp wpHg== X-Gm-Message-State: AFqh2kq3xEwumgsKDXyWD7whs0MvPQY2mnJnCwfi9Dn4Q3vv1cZiq1no ar4n92Ugah8TYiMZPloR9ZHA6I1WcUuOOWe/q2EINsfvVX/oF0nqG9FXNYLSYWN6R/BI5DSzgh3 Zn3g5Ymh0OOMoTa9HGOBaqhFcwaCJG8X5tqPqlWqoZefmD0uNis2rK87eVt12ARHTFyvgFn5O X-Google-Smtp-Source: AMrXdXve5Fvf3oTUkhAmdXiIURtvdOqZYCvGyQs40wSn5XOhDi6p5YT9s7PdXJ6iz0obDS6rtTvosBHoADdy4k7TZg== X-Received: from dionnaglaze.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:2ee6]) (user=dionnaglaze job=sendgmr) by 2002:a05:6a00:1302:b0:589:bd89:3651 with SMTP id j2-20020a056a00130200b00589bd893651mr4147951pfu.28.1674694619504; Wed, 25 Jan 2023 16:56:59 -0800 (PST) Date: Thu, 26 Jan 2023 00:56:47 +0000 In-Reply-To: <20230126005647.3019225-1-dionnaglaze@google.com> Mime-Version: 1.0 References: <20230126005647.3019225-1-dionnaglaze@google.com> X-Mailer: git-send-email 2.39.1.456.gfc5497dd1b-goog Message-ID: <20230126005647.3019225-5-dionnaglaze@google.com> Subject: [PATCH v10 4/4] 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 MEMORY_ACCEPTANCE_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 e4e7b72e67..7d824cc282 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 = BZ3937_EFI_RESOURCE_MEMORY_UNACCEPTED; + continue; + } if (ResourceHob->ResourceType == EFI_RESOURCE_SYSTEM_MEMORY) { MemEncryptSevSnpPreValidateSystemRam ( -- 2.39.1.456.gfc5497dd1b-goog