From: "Laszlo Ersek" <lersek@redhat.com>
To: devel@edk2.groups.io
Cc: "Ard Biesheuvel" <ard.biesheuvel@arm.com>,
"Eric Dong" <eric.dong@intel.com>,
"Jordan Justen" <jordan.l.justen@intel.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Rahul Kumar" <rahul1.kumar@intel.com>,
"Ray Ni" <ray.ni@intel.com>, "Star Zeng" <star.zeng@intel.com>
Subject: [PATCH 0/3] UefiCpuPkg, OvmfPkg: do not allocate useless register tables for S3 resume
Date: Tue, 12 Jan 2021 20:19:31 +0100 [thread overview]
Message-ID: <20210112191934.12459-1-lersek@redhat.com> (raw)
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3159
Repo: https://pagure.io/lersek/edk2.git
Branch: remove-cpu-reg-table-alloc-3159
OvmfPkg/CpuS3DataDxe and UefiCpuPkg/CpuS3DataDxe allocate the
RegisterTable and PreSmmInitRegisterTable arrays in ACPI_CPU_DATA just
so every processor in the system can have its own empty register table,
matched by APIC ID, at S3 resume. This has never been useful.
Given recent commit e992cc3f4859 ("UefiCpuPkg PiSmmCpuDxeSmm: Reduce
SMRAM consumption in CpuS3.c", 2021-01-11), i.e., the NULL-check in the
IsRegisterTableEmpty() function, we should now set both RegisterTable
and PreSmmInitRegisterTable in ACPI_CPU_DATA to NULL, in the
CpuS3DataDxe drivers. That will simplify the drivers, save some normal
RAM in them, and accordingly, save some SMRAM in PiSmmCpuDxeSmm too.
The first patch in the series also updates the documentation of
ACPI_CPU_DATA (which, arguably, should have been done in commit
e992cc3f4859).
Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Thanks
Laszlo
Laszlo Ersek (3):
UefiCpuPkg/AcpiCpuData: update comments on register table fields
UefiCpuPkg/CpuS3DataDxe: do not allocate useless register tables
OvmfPkg/CpuS3DataDxe: do not allocate useless register tables
OvmfPkg/CpuS3DataDxe/CpuS3Data.c | 70 +-------------------
OvmfPkg/CpuS3DataDxe/CpuS3DataDxe.inf | 1 -
UefiCpuPkg/CpuS3DataDxe/CpuS3Data.c | 32 ---------
UefiCpuPkg/Include/AcpiCpuData.h | 4 ++
4 files changed, 5 insertions(+), 102 deletions(-)
base-commit: ebfe2d3eb5ac7fd92d74011edb31303a181920c7
--
2.19.1.3.g30247aa5d201
next reply other threads:[~2021-01-12 19:19 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-12 19:19 Laszlo Ersek [this message]
2021-01-12 19:19 ` [PATCH 1/3] UefiCpuPkg/AcpiCpuData: update comments on register table fields Laszlo Ersek
2021-01-13 5:00 ` Ni, Ray
2021-01-15 9:28 ` Philippe Mathieu-Daudé
2021-01-15 9:34 ` Laszlo Ersek
2021-01-12 19:19 ` [PATCH 2/3] UefiCpuPkg/CpuS3DataDxe: do not allocate useless register tables Laszlo Ersek
2021-01-13 6:12 ` Ni, Ray
2021-01-13 7:16 ` Zeng, Star
2021-01-13 8:12 ` Ni, Ray
2021-01-13 8:40 ` Zeng, Star
2021-01-13 9:16 ` Laszlo Ersek
2021-01-14 1:55 ` Zeng, Star
2021-01-14 17:35 ` Laszlo Ersek
2021-01-15 8:33 ` [edk2-devel] " Ni, Ray
2021-01-15 8:37 ` Laszlo Ersek
2021-01-19 12:52 ` Ni, Ray
2021-01-19 13:48 ` Laszlo Ersek
2021-01-13 9:10 ` Laszlo Ersek
2021-01-12 19:19 ` [PATCH 3/3] OvmfPkg/CpuS3DataDxe: " Laszlo Ersek
2021-01-14 12:53 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210112191934.12459-1-lersek@redhat.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox