On Thu, 27 Feb 2025 at 17:12, Roy Hopkins <roy.hopk...@randomman.co.uk> wrote:
>
> On Thu, 2025-02-27 at 16:32 +0100, Stefano Garzarella wrote:
> > Hi Roy,
> >
> > On Thu, Feb 27, 2025 at 01:38:08PM +0000, Roy Hopkins wrote:
> > > Here is v7 of the set of patches to add support for IGVM files to
> > > QEMU.  This is
> > > based on commit 40efe733e10cc00e4fb4f9f5790a28e744e63c62 of qemu.
> >
> > Thanks again for this work!
> >
> > I noticed that the last patch for this series is missing, also
> > patchew
> > didn't receive it:
> >
> > https://patchew.org/QEMU/cover.1740663410.git.roy.hopk...@randomman.co.uk/
> >
> > If you're using git-publish you can do:
> >
> > $ git publish --skip 16 -S \
> >      -R cover.1740663410.git.roy.hopk...@randomman.co.uk
> >
> > Thanks,
> > Stefano
> >
>
> Thanks Stefano. I had all sorts of problems getting git send-mail to
> send using my mail service provider. I've sorted it now and sent the
> missing patch.

Yeah, now the other attempts of patch 16 have also arrived xD

On Monday I'll go through the series, test it and come back!

Thanks,
Stefano

>
> Regards,
> Roy
>
> > >
> > > Firstly, apologies for the amount of time between the last version
> > > and this one.
> > > I moved roles to a different company and, although I always planned
> > > to see this
> > > patch series to completion, it took a while before I found time to
> > > setup a
> > > development environment and be in a position to send a new version.
> > > I will
> > > continue this series using a personal email address for now, hence
> > > the change
> > > to the author and signed-off-by emails.
> > >
> > > The only changes in this version are to rebase on the current
> > > master branch and
> > > update commit metadata, including Signed-Off-By and Author emails
> > > for my
> > > replacement email address, and to include the final Reviewed-By
> > > that were added
> > > in the last review. There were no requested changes on the previous
> > > version [1]
> > > so I believe this series is ready to merge.
> > >
> > > As always, thanks to those that have been following along,
> > > reviewing and testing
> > > this series. This v7 patch series is also available on github: [2]
> > >
> > > For testing IGVM support in QEMU you need to generate an IGVM file
> > > that is
> > > configured for the platform you want to launch. You can use the
> > > `buildigvm`
> > > test tool [3] to allow generation of IGVM files for all currently
> > > supported
> > > platforms. Patch 11/17 contains information on how to generate an
> > > IGVM file
> > > using this tool.
> > >
> > > Changes in v7:
> > >
> > > * Update version numbers for IGVM support to 10.0
> > > * Add Reviewed-by to relevant commits.
> > > * Update Author email and sign-offs to my new email address
> > >
> > > Patch summary:
> > >
> > > 1-11: Add support and documentation for processing IGVM files for
> > > SEV, SEV-ES,
> > > SEV-SNP and native platforms.
> > >
> > > 12-15: Processing of policy and SEV-SNP ID_BLOCK from IGVM file.
> > >
> > > 16: Add pre-processing of IGVM file to support synchronization of
> > > 'SEV_FEATURES'
> > > from IGVM VMSA to KVM.
> > >
> > > [1] Link to v6:
> > > https://lore.kernel.org/qemu-devel/cover.1727341768.git.roy.hopk...@suse.com/
> > >
> > > [2] v7 patches also available here:
> > > https://github.com/roy-hopkins/qemu/tree/igvm_master_v7
> > >
> > > [3] `buildigvm` tool v0.2.0
> > > https://github.com/roy-hopkins/buildigvm/releases/tag/v0.2.0
> > >
> > > Roy Hopkins (16):
> > >  meson: Add optional dependency on IGVM library
> > >  backends/confidential-guest-support: Add functions to support IGVM
> > >  backends/igvm: Add IGVM loader and configuration
> > >  hw/i386: Add igvm-cfg object and processing for IGVM files
> > >  i386/pc_sysfw: Ensure sysfw flash configuration does not conflict
> > > with
> > >    IGVM
> > >  sev: Update launch_update_data functions to use Error handling
> > >  target/i386: Allow setting of R_LDTR and R_TR with
> > >    cpu_x86_load_seg_cache()
> > >  i386/sev: Refactor setting of reset vector and initial CPU state
> > >  i386/sev: Implement ConfidentialGuestSupport functions for SEV
> > >  docs/system: Add documentation on support for IGVM
> > >  docs/interop/firmware.json: Add igvm to FirmwareDevice
> > >  backends/confidential-guest-support: Add set_guest_policy()
> > > function
> > >  backends/igvm: Process initialization sections in IGVM file
> > >  backends/igvm: Handle policy for SEV guests
> > >  i386/sev: Add implementation of CGS set_guest_policy()
> > >  sev: Provide sev_features flags from IGVM VMSA to KVM_SEV_INIT2
> > >
> > > backends/confidential-guest-support.c       |  43 +
> > > backends/igvm-cfg.c                         |  52 ++
> > > backends/igvm.c                             | 967
> > > ++++++++++++++++++++
> > > backends/igvm.h                             |  23 +
> > > backends/meson.build                        |   5 +
> > > docs/interop/firmware.json                  |  30 +-
> > > docs/system/i386/amd-memory-encryption.rst  |   2 +
> > > docs/system/igvm.rst                        | 173 ++++
> > > docs/system/index.rst                       |   1 +
> > > hw/i386/pc.c                                |  12 +
> > > hw/i386/pc_piix.c                           |  10 +
> > > hw/i386/pc_q35.c                            |  10 +
> > > hw/i386/pc_sysfw.c                          |  31 +-
> > > include/hw/i386/x86.h                       |   3 +
> > > include/system/confidential-guest-support.h |  88 ++
> > > include/system/igvm-cfg.h                   |  47 +
> > > meson.build                                 |   8 +
> > > meson_options.txt                           |   2 +
> > > qapi/qom.json                               |  17 +
> > > qemu-options.hx                             |  28 +
> > > scripts/meson-buildoptions.sh               |   3 +
> > > target/i386/cpu.h                           |   9 +-
> > > target/i386/sev.c                           | 850 +++++++++++++++--
> > > target/i386/sev.h                           | 124 +++
> > > 24 files changed, 2454 insertions(+), 84 deletions(-)
> > > create mode 100644 backends/igvm-cfg.c
> > > create mode 100644 backends/igvm.c
> > > create mode 100644 backends/igvm.h
> > > create mode 100644 docs/system/igvm.rst
> > > create mode 100644 include/system/igvm-cfg.h
> > >
> > > --
> > > 2.43.0
> > >
> >
>


Reply via email to