qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Laszlo Ersek" <lersek@redhat.com>,
	"Brijesh Singh" <brijesh.singh@amd.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Sergio Lopez" <slp@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Connor Kuehl" <ckuehl@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	"James Bottomley" <jejb@linux.ibm.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	"Markus Armbruster" <armbru@redhat.com>,
	"Dov Murik" <dovmurik@linux.ibm.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"Igor Mammedov" <imammedo@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Eric Blake" <eblake@redhat.com>
Subject: [PATCH v2 00/23] target/i386/sev: Housekeeping (OVMF + SEV-disabled binaries)
Date: Wed, 16 Jun 2021 22:43:05 +0200	[thread overview]
Message-ID: <20210616204328.2611406-1-philmd@redhat.com> (raw)

Hi,

While testing James & Dov patch:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg810571.html
I wasted some time trying to figure out how OVMF was supposed to
behave until realizing the binary I was using was built without SEV
support... Then wrote this series to help other developers to not
hit the same problem.

Some SEV patches I was following have been queued on Eduardo's
'x86-next' tree, so I used his tree as base, and included David and
Connor patches to reduce merge conflicts.

Patches 1-16 are SEV related,
patches 17-23 are OVMF related.

Special comment for Laszlo: Please don't review this version,
wait for the respin (hoping the SEV cleanup patch get accepted,
the respin will be focused on OVMF).

Based-on: https://gitlab.com/ehabkost/qemu/-/commits/x86-next/
Supersedes: <20210610064556.1421620-1-philmd@redhat.com>

Connor Kuehl (1):
  MAINTAINERS: Add Connor Kuehl as reviewer for AMD SEV

Dr. David Alan Gilbert (1):
  target/i386/sev: sev_get_attestation_report use g_autofree

Philippe Mathieu-Daudé (21):
  qapi/misc-target: Wrap long 'SEV Attestation Report' long lines
  qapi/misc-target: Group SEV QAPI definitions
  target/i386/monitor: Return QMP error when SEV is disabled in build
  target/i386/cpu: Add missing 'qapi/error.h' header
  target/i386/sev_i386.h: Remove unused headers
  target/i386/sev: Remove sev_get_me_mask()
  target/i386/sev: Mark unreachable code with g_assert_not_reached()
  target/i386/sev: Restrict SEV to system emulation
  target/i386/sev: Move qmp_query_sev_attestation_report() to sev.c
  target/i386/sev: Move qmp_sev_inject_launch_secret() to sev.c
  target/i386/sev: Move qmp_query_sev_capabilities() to sev.c
  target/i386/sev: Move qmp_query_sev_launch_measure() to sev.c
  target/i386/sev: Move qmp_query_sev() & hmp_info_sev() to sev.c
  monitor: Restrict 'info sev' to x86 targets
  hw/i386/acpi-common: Remove unused includes
  hw/i386: Rename acpi-build.c -> acpi-pc.c
  hw/i386: Move pc_madt_cpu_entry() to acpi-pc.c
  hw/acpi: Do not restrict ACPI core routines to x86 architecture
  hw/i386: Introduce X86_FW_OVMF Kconfig symbol
  hw/acpi/Kconfig: Add missing Kconfig dependencies (build error)
  hw/i386/Kconfig: Add missing Kconfig dependency (runtime error)

 qapi/misc-target.json               |  78 ++++++++--------
 include/hw/i386/pc.h                |   1 +
 include/monitor/hmp-target.h        |   1 +
 include/monitor/hmp.h               |   1 -
 target/i386/sev_i386.h              |  11 ---
 hw/i386/acpi-common.c               |  45 ----------
 hw/i386/{acpi-build.c => acpi-pc.c} |  39 ++++++++
 hw/i386/pc_sysfw.c                  | 107 ----------------------
 hw/i386/pc_sysfw_ovmf-stubs.c       |  26 ++++++
 hw/i386/pc_sysfw_ovmf.c             | 135 ++++++++++++++++++++++++++++
 target/i386/cpu.c                   |   1 +
 target/i386/monitor.c               |  91 -------------------
 target/i386/sev-stub.c              |  49 +---------
 target/i386/sev-sysemu-stub.c       |  69 ++++++++++++++
 target/i386/sev.c                   | 130 +++++++++++++++++++++------
 MAINTAINERS                         |   8 ++
 hw/acpi/Kconfig                     |   4 +
 hw/acpi/meson.build                 |   3 +-
 hw/i386/Kconfig                     |   5 ++
 hw/i386/meson.build                 |   4 +-
 target/i386/meson.build             |   4 +-
 21 files changed, 443 insertions(+), 369 deletions(-)
 rename hw/i386/{acpi-build.c => acpi-pc.c} (98%)
 create mode 100644 hw/i386/pc_sysfw_ovmf-stubs.c
 create mode 100644 hw/i386/pc_sysfw_ovmf.c
 create mode 100644 target/i386/sev-sysemu-stub.c

-- 
2.31.1




             reply	other threads:[~2021-06-16 20:46 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-16 20:43 Philippe Mathieu-Daudé [this message]
2021-06-16 20:43 ` [PATCH v2 01/23] MAINTAINERS: Add Connor Kuehl as reviewer for AMD SEV Philippe Mathieu-Daudé
2021-08-30 14:18   ` Philippe Mathieu-Daudé
2021-08-30 14:21     ` Connor Kuehl
2021-06-16 20:43 ` [PATCH v2 02/23] qapi/misc-target: Wrap long 'SEV Attestation Report' long lines Philippe Mathieu-Daudé
2021-06-24 11:04   ` Dr. David Alan Gilbert
2021-08-30 15:07   ` Markus Armbruster
2021-08-30 15:08     ` Markus Armbruster
2021-06-16 20:43 ` [PATCH v2 03/23] qapi/misc-target: Group SEV QAPI definitions Philippe Mathieu-Daudé
2021-06-24  6:13   ` Dov Murik
2021-06-24  7:52     ` Philippe Mathieu-Daudé
2021-08-30 15:11   ` Markus Armbruster
2021-06-16 20:43 ` [PATCH v2 04/23] target/i386/monitor: Return QMP error when SEV is disabled in build Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 05/23] target/i386/cpu: Add missing 'qapi/error.h' header Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 06/23] target/i386/sev_i386.h: Remove unused headers Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 07/23] target/i386/sev: Remove sev_get_me_mask() Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 08/23] target/i386/sev: Mark unreachable code with g_assert_not_reached() Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 09/23] target/i386/sev: sev_get_attestation_report use g_autofree Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 10/23] target/i386/sev: Restrict SEV to system emulation Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 11/23] target/i386/sev: Move qmp_query_sev_attestation_report() to sev.c Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 12/23] target/i386/sev: Move qmp_sev_inject_launch_secret() " Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 13/23] target/i386/sev: Move qmp_query_sev_capabilities() " Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 14/23] target/i386/sev: Move qmp_query_sev_launch_measure() " Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 15/23] target/i386/sev: Move qmp_query_sev() & hmp_info_sev() " Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 16/23] monitor: Restrict 'info sev' to x86 targets Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 17/23] hw/i386/acpi-common: Remove unused includes Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 18/23] hw/i386: Rename acpi-build.c -> acpi-pc.c Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 19/23] hw/i386: Move pc_madt_cpu_entry() to acpi-pc.c Philippe Mathieu-Daudé
2021-06-18 11:37   ` Igor Mammedov
2021-06-19  8:45     ` Philippe Mathieu-Daudé
2021-06-19 21:32       ` Michael S. Tsirkin
2021-06-21  8:41         ` Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 20/23] hw/acpi: Do not restrict ACPI core routines to x86 architecture Philippe Mathieu-Daudé
2021-06-17 20:40   ` Michael S. Tsirkin
2021-07-20 13:24     ` Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 21/23] hw/i386: Introduce X86_FW_OVMF Kconfig symbol Philippe Mathieu-Daudé
2021-07-12 14:38   ` Philippe Mathieu-Daudé
2021-06-16 20:43 ` [PATCH v2 22/23] hw/acpi/Kconfig: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
2021-06-17  5:20   ` Gerd Hoffmann
2021-06-16 20:43 ` [PATCH v2 23/23] hw/i386/Kconfig: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
2021-06-17  5:21   ` Gerd Hoffmann
2021-06-17 20:42 ` [PATCH v2 00/23] target/i386/sev: Housekeeping (OVMF + SEV-disabled binaries) Michael S. Tsirkin
2021-06-18 11:46   ` Igor Mammedov
2021-06-18 12:53     ` Michael S. Tsirkin
2021-06-23 21:37 ` Laszlo Ersek

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=20210616204328.2611406-1-philmd@redhat.com \
    --to=philmd@redhat.com \
    --cc=armbru@redhat.com \
    --cc=brijesh.singh@amd.com \
    --cc=ckuehl@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=dovmurik@linux.ibm.com \
    --cc=eblake@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=jejb@linux.ibm.com \
    --cc=kraxel@redhat.com \
    --cc=lersek@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=slp@redhat.com \
    /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).