From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2607:f8b0:4001:c0b::241; helo=mail-it0-x241.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-it0-x241.google.com (mail-it0-x241.google.com [IPv6:2607:f8b0:4001:c0b::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id A221F220D4C1E for ; Fri, 1 Dec 2017 00:38:14 -0800 (PST) Received: by mail-it0-x241.google.com with SMTP id f143so1663926itb.0 for ; Fri, 01 Dec 2017 00:42:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=N5sZSjx1nt+6dooXK8aMzAAAhiuU9Qb2sj2lEinpJ/4=; b=VPnLTjAVVHX+AhHxb/YxWAWJ/+/kIeEWgseryRR3jrDqL+2Knsq/oEiN4ixzfFo4xd oj0orWPAsNJoZJEcmiVVwEcctYiqlMdj+1x03wfTL26FWBmaHMoto5iJlM9ESm97kZ0k iPSMojWGaeHd30jDpwhtwe2Dc22OeRsikbJ14= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=N5sZSjx1nt+6dooXK8aMzAAAhiuU9Qb2sj2lEinpJ/4=; b=pST/Na7mTRfk1pgOSGQv0v2NbEyGfexMtynNCau8Z0cb3C9Zgrdpx1gNxOMF9lK1KA qaJHWOtAmgyzUiNMWRrVzOH1PhcXCDYtZaGaLW+mNdYjbkCdkIvicc6D8wPVkLYxyJzI eIKBtqdDZXIvy++8M7c5NmKptmHncSTG/T0hNc9eDjL0lnoFWXH4Vl/E/axmwU/StGoZ PHWYU5IP45LeCe43hBfasfLtDzw+myFhSZpo4sWMwQUUbbht2Ppz9n/iBgNIoPHh3q5Z 3lTzcKLL41CP4XLKZsFjwlm53mQ2VsAcr6jLP5YoI5xT+ZMEGAVWeAOyTBelN0k4hnjA 0Mfw== X-Gm-Message-State: AJaThX41S9MVC7cuN0RfoqeR82xhJLqTCb4mtq6SjcWU1Tv4eOdESoop Liytp57VWtvuSlybjud3z+V39McOIpWc+29zzvj1Ug== X-Google-Smtp-Source: AGs4zMYsyExum59VkwtN+O+5r0Q5JAswB2sIG65OvKbWHxjb1TPuZ5uBYnCre6NvebxtN7nXdui4PAA5nmIbTt4jmw4= X-Received: by 10.36.78.212 with SMTP id r203mr924308ita.58.1512117759874; Fri, 01 Dec 2017 00:42:39 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.104.16 with HTTP; Fri, 1 Dec 2017 00:42:39 -0800 (PST) In-Reply-To: <151206841527.2995.813353909213222112@jljusten-skl> References: <20171130163029.19743-1-lersek@redhat.com> <151206841527.2995.813353909213222112@jljusten-skl> From: Ard Biesheuvel Date: Fri, 1 Dec 2017 08:42:39 +0000 Message-ID: To: Jordan Justen Cc: Laszlo Ersek , edk2-devel-01 , Anthony Perard , Julien Grall Subject: Re: [PATCH v2 0/8] OvmfPkg: add the Variable PEIM, defragment the UEFI memmap X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Dec 2017 08:38:14 -0000 Content-Type: text/plain; charset="UTF-8" On 30 November 2017 at 19:00, Jordan Justen wrote: > As I recall, this enables a modest (non-essential) improvement in > fragmentation, at the cost of more ways to configure OVMF to hang > during boot. (With info available via debugcon.) > > I would prefer if were able to always fallback and continue boot. > Later, after GOP has started we could visibly warn the user that they > haven't properly enabled SMM and/or flash. > > If we had a way to do this, I would be in favor of displaying an error > message and delaying for 30 seconds before booting if flash has not > been enabled. (Or, if SMM was enabled in the build, but not set on the > command line.) > > At that point, I think we could start to transition to making flash an > boot requirement for OVMF. But first we need to be able to visibly > warn the user why they are not able to boot. > That doesn't argue against this series, does it? AFAICT it only argues against building OVMF with a non-default value for MEM_VARSTORE_EMU_ENABLE > On 2017-11-30 08:30:21, Laszlo Ersek wrote: >> Repo: https://github.com/lersek/edk2.git >> Branch: memmap_defrag_v2 >> >> This version is identical to the v1 seres I posted in March. Some >> patches of the v1 series have been committed. I've been rebasing and >> using the rest since, and am now posting it as v2. References: >> >> * https://bugzilla.tianocore.org/show_bug.cgi?id=386 >> >> * http://mid.mail-archive.com/20170314233246.17864-1-lersek@redhat.com >> https://lists.01.org/pipermail/edk2-devel/2017-March/008525.html >> >> * http://mid.mail-archive.com/20170327080544.24748-1-jordan.l.justen@intel.com >> https://lists.01.org/pipermail/edk2-devel/2017-March/009049.html >> >> Cc: Anthony Perard >> Cc: Ard Biesheuvel >> Cc: Jordan Justen >> Cc: Julien Grall >> >> Thanks >> Laszlo >> >> Laszlo Ersek (8): >> OvmfPkg: introduce PcdMemVarstoreEmuEnable feature flag >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe: check PcdMemVarstoreEmuEnable >> OvmfPkg: conditionally disable reserved memory varstore emulation at >> build >> OvmfPkg: introduce FlashNvStorageAddressLib >> OvmfPkg: include FaultTolerantWritePei and VariablePei >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe: don't set flash PCDs if SMM or >> no-emu >> OvmfPkg/PlatformPei: remedy UEFI memory map fragmentation >> OvmfPkg/README: document MEM_VARSTORE_EMU_ENABLE and memmap defrag >> >> OvmfPkg/Library/FlashNvStorageAddressLib/FlashNvStorageAddressLib.c | 53 +++++++ >> OvmfPkg/Library/FlashNvStorageAddressLib/FlashNvStorageAddressLib.inf | 48 +++++++ >> OvmfPkg/OvmfPkg.dec | 6 + >> OvmfPkg/OvmfPkgIa32.dsc | 15 +- >> OvmfPkg/OvmfPkgIa32.fdf | 8 +- >> OvmfPkg/OvmfPkgIa32X64.dsc | 15 +- >> OvmfPkg/OvmfPkgIa32X64.fdf | 8 +- >> OvmfPkg/OvmfPkgX64.dsc | 15 +- >> OvmfPkg/OvmfPkgX64.fdf | 8 +- >> OvmfPkg/PlatformPei/MemTypeInfo.c | 151 ++++++++++++++++++++ >> OvmfPkg/PlatformPei/Platform.c | 26 +--- >> OvmfPkg/PlatformPei/Platform.h | 5 + >> OvmfPkg/PlatformPei/PlatformPei.inf | 3 + >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf | 1 + >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf | 1 + >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockService.c | 58 +++++--- >> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlash.c | 1 + >> OvmfPkg/README | 10 ++ >> 18 files changed, 385 insertions(+), 47 deletions(-) >> create mode 100644 OvmfPkg/Library/FlashNvStorageAddressLib/FlashNvStorageAddressLib.c >> create mode 100644 OvmfPkg/Library/FlashNvStorageAddressLib/FlashNvStorageAddressLib.inf >> create mode 100644 OvmfPkg/PlatformPei/MemTypeInfo.c >> >> -- >> 2.14.1.3.gb7cf6e02401b >>