From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: boris.ostrovsky@oracle.com, lersek@redhat.com, aaron.young@oracle.com
Subject: [PATCH v2 0/7] x86: fix cpu hotplug with secure boot
Date: Tue, 18 Aug 2020 08:22:01 -0400 [thread overview]
Message-ID: <20200818122208.1243901-1-imammedo@redhat.com> (raw)
v2:
- AML: clean is_inserted flag only after SMI callback
- make x-smi-cpu-hotunplug false by default
- massage error hint on not supported unplug
v1:
- fix typos and some phrases (Laszlo)
- add unplug check (Laszlo)
- redo AML scan logic to avoid race when adding multiple CPUs
CPU hotplug with Secure Boot was not really supported and firmware wasn't aware
of hotplugged CPUs (which might lead to guest crashes). During 4.2 we introduced
locked SMI handler RAM arrea to make sure that guest OS wasn't able to inject
its own SMI handler and OVMF added initial CPU hotplug support.
This series is QEMU part of that support which lets QMVF tell QEMU that
CPU hotplug with SMI broadcast enabled is supported so that QEMU would be able
to prevent hotplug in case it's not supported and trigger SMI on hotplug when
it's necessary.
Igor Mammedov (7):
x86: lpc9: let firmware negotiate 'CPU hotplug with SMI' features
x86: cphp: prevent guest crash on CPU hotplug when broadcast SMI is in
use
x86: cpuhp: refuse cpu hot-unplug request earlier if not supported
acpi: add aml_land() and aml_break() primitives
tests: acpi: mark to be changed tables in
bios-tables-test-allowed-diff
x68: acpi: trigger SMI before sending hotplug Notify event to OSPM
tests: acpi: update acpi blobs with new AML
include/hw/acpi/aml-build.h | 2 +
include/hw/acpi/cpu.h | 1 +
include/hw/i386/ich9.h | 4 ++
include/hw/i386/pc.h | 3 ++
hw/acpi/aml-build.c | 16 ++++++
hw/acpi/cpu.c | 80 ++++++++++++++++++++++++++++--
hw/acpi/ich9.c | 24 ++++++++-
hw/i386/acpi-build.c | 35 ++++++++++++-
hw/i386/pc.c | 17 ++++++-
hw/i386/pc_piix.c | 1 +
hw/i386/pc_q35.c | 1 +
hw/isa/lpc_ich9.c | 16 ++++++
tests/data/acpi/pc/DSDT | Bin 4934 -> 5009 bytes
tests/data/acpi/pc/DSDT.acpihmat | Bin 6258 -> 6334 bytes
tests/data/acpi/pc/DSDT.bridge | Bin 6793 -> 6868 bytes
tests/data/acpi/pc/DSDT.cphp | Bin 5397 -> 5473 bytes
tests/data/acpi/pc/DSDT.dimmpxm | Bin 6587 -> 6663 bytes
tests/data/acpi/pc/DSDT.ipmikcs | Bin 5006 -> 5081 bytes
tests/data/acpi/pc/DSDT.memhp | Bin 6293 -> 6368 bytes
tests/data/acpi/pc/DSDT.numamem | Bin 4940 -> 5015 bytes
tests/data/acpi/q35/DSDT | Bin 7678 -> 7753 bytes
tests/data/acpi/q35/DSDT.acpihmat | Bin 9002 -> 9078 bytes
tests/data/acpi/q35/DSDT.bridge | Bin 7695 -> 7770 bytes
tests/data/acpi/q35/DSDT.cphp | Bin 8141 -> 8217 bytes
tests/data/acpi/q35/DSDT.dimmpxm | Bin 9331 -> 9407 bytes
tests/data/acpi/q35/DSDT.ipmibt | Bin 7753 -> 7828 bytes
tests/data/acpi/q35/DSDT.memhp | Bin 9037 -> 9112 bytes
tests/data/acpi/q35/DSDT.mmio64 | Bin 8808 -> 8883 bytes
tests/data/acpi/q35/DSDT.numamem | Bin 7684 -> 7759 bytes
tests/data/acpi/q35/DSDT.tis | Bin 8283 -> 8358 bytes
30 files changed, 192 insertions(+), 8 deletions(-)
--
2.26.2
next reply other threads:[~2020-08-18 12:24 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-18 12:22 Igor Mammedov [this message]
2020-08-18 12:22 ` [PATCH v2 1/7] x86: lpc9: let firmware negotiate 'CPU hotplug with SMI' features Igor Mammedov
2020-08-19 8:39 ` Laszlo Ersek
2020-08-19 8:51 ` Laszlo Ersek
2020-08-19 8:58 ` Cornelia Huck
2020-08-19 9:14 ` Laszlo Ersek
2020-08-19 12:37 ` Igor Mammedov
2020-08-20 14:56 ` [PATCH v3 " Igor Mammedov
2020-08-21 13:46 ` Laszlo Ersek
2020-08-24 11:00 ` [PATCH v4 1/6] " Igor Mammedov
2020-08-25 12:28 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 2/7] x86: cphp: prevent guest crash on CPU hotplug when broadcast SMI is in use Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 3/7] x86: cpuhp: refuse cpu hot-unplug request earlier if not supported Igor Mammedov
2020-08-25 12:50 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 4/7] acpi: add aml_land() and aml_break() primitives Igor Mammedov
2020-08-18 13:03 ` Philippe Mathieu-Daudé
2020-08-25 13:01 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 5/7] tests: acpi: mark to be changed tables in bios-tables-test-allowed-diff Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 6/7] x68: acpi: trigger SMI before sending hotplug Notify event to OSPM Igor Mammedov
2020-08-25 17:25 ` Laszlo Ersek
2020-08-26 9:23 ` Igor Mammedov
2020-08-26 9:24 ` Laszlo Ersek
2020-08-26 11:55 ` Igor Mammedov
2020-08-26 15:12 ` Laszlo Ersek
2020-08-26 13:32 ` Laszlo Ersek
2020-08-26 13:32 ` Laszlo Ersek
2020-08-26 14:10 ` Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 7/7] tests: acpi: update acpi blobs with new AML Igor Mammedov
2020-08-18 12:56 ` [PATCH v2 0/7] x86: fix cpu hotplug with secure boot no-reply
2020-08-18 13:01 ` Philippe Mathieu-Daudé
2020-08-18 13:39 ` no-reply
2020-08-18 14:07 ` Philippe Mathieu-Daudé
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-all 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=20200818122208.1243901-1-imammedo@redhat.com \
--to=imammedo@redhat.com \
--cc=aaron.young@oracle.com \
--cc=boris.ostrovsky@oracle.com \
--cc=lersek@redhat.com \
--cc=qemu-devel@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).