All of lore.kernel.org
 help / color / mirror / Atom feed
From: Igor Mammedov <imammedo@redhat.com>
To: Oliver Steffen <osteffen@redhat.com>
Cc: qemu-devel@nongnu.org,
	Richard Henderson <richard.henderson@linaro.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Ani Sinha <anisinha@redhat.com>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Luigi Leonardi <leonardi@redhat.com>,
	Zhao Liu <zhao1.liu@intel.com>,
	Joerg Roedel <joerg.roedel@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	kvm@vger.kernel.org, Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Subject: Re: [PATCH v3 0/6] igvm: Supply MADT via IGVM parameter
Date: Mon, 12 Jan 2026 13:34:32 +0100	[thread overview]
Message-ID: <20260112133432.0a1fb87f@imammedo-mac> (raw)
In-Reply-To: <20260109143413.293593-1-osteffen@redhat.com>

On Fri,  9 Jan 2026 15:34:07 +0100
Oliver Steffen <osteffen@redhat.com> wrote:

> When launching using an IGVM file, supply a copy of the MADT (part of the ACPI
> tables) via an IGVM parameter (IGVM_VHY_MADT) to the guest, in addition to the
> regular fw_cfg mechanism.

I've had some questions wrt using MADT in previous version,
and possible ways to avoid issues.
not of those where addressed though.

So questions stay the same, see:
https://patchew.org/QEMU/20251211103136.1578463-1-osteffen@redhat.com/#20251219140933.7b102fc5@imammedo

> 
> The IGVM parameter can be consumed by Coconut SVSM [1], instead of relying on
> the fw_cfg interface, which has caused problems before due to unexpected access
> [2,3]. Using IGVM parameters is the default way for Coconut SVSM; switching
> over would allow removing specialized code paths for QEMU in Coconut.
> 
> In any case OVMF, which runs after SVSM has already been initialized, will
> continue reading all ACPI tables via fw_cfg and provide fixed up ACPI data to
> the OS as before.
> 
> This series makes ACPI table building more generic by making the BIOS linker
> optional. This allows the MADT to be generated outside of the ACPI build
> context. A new function (acpi_build_madt_standalone()) is added for that. With
> that, the IGVM MADT parameter field can be filled with the MADT data during
> processing of the IGVM file.
> 
> Generating the MADT twice (IGVM processing and ACPI table building) seems
> acceptable, since there is no infrastructure to obtain the MADT out of the ACPI
> table memory area during IGVM processing.
> 
> [1] https://github.com/coconut-svsm/svsm/pull/858
> [2] https://gitlab.com/qemu-project/qemu/-/issues/2882
> [3] https://github.com/coconut-svsm/svsm/issues/646
> 
> v3:
> - Pass the machine state into IGVM file processing context instead of MADT data
> - Generate MADT from inside the IGVM backend
> - Refactor: Extract common code for finding IGVM parameter from IGVM parameter handlers
> - Add NULL pointer check for igvm_get_buffer()
> 
> v2:
> - Provide more context in the message of the main commit
> - Document the madt parameter of IgvmCfgClass::process()
> - Document why no MADT data is provided the process call in sev.c
> 
> Based-on: <20251118122133.1695767-1-kraxel@redhat.com>
> Signed-off-by: Oliver Steffen <osteffen@redhat.com>
> 
> Oliver Steffen (6):
>   hw/acpi: Make BIOS linker optional
>   hw/acpi: Add standalone function to build MADT
>   igvm: Add missing NULL check
>   igvm: Add common function for finding parameter entries
>   igvm: Pass machine state to IGVM file processing
>   igvm: Fill MADT IGVM parameter field
> 
>  backends/igvm-cfg.c       |   2 +-
>  backends/igvm.c           | 169 +++++++++++++++++++++++++-------------
>  hw/acpi/aml-build.c       |   7 +-
>  hw/i386/acpi-build.c      |   8 ++
>  hw/i386/acpi-build.h      |   2 +
>  include/system/igvm-cfg.h |   3 +-
>  include/system/igvm.h     |   3 +-
>  target/i386/sev.c         |   2 +-
>  8 files changed, 132 insertions(+), 64 deletions(-)
> 


      parent reply	other threads:[~2026-01-12 12:34 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-09 14:34 [PATCH v3 0/6] igvm: Supply MADT via IGVM parameter Oliver Steffen
2026-01-09 14:34 ` [PATCH v3 1/6] hw/acpi: Make BIOS linker optional Oliver Steffen
2026-01-12  9:47   ` Gerd Hoffmann
2026-01-09 14:34 ` [PATCH v3 2/6] hw/acpi: Add standalone function to build MADT Oliver Steffen
2026-01-09 14:34 ` [PATCH v3 3/6] igvm: Add missing NULL check Oliver Steffen
2026-01-09 17:37   ` Luigi Leonardi
2026-01-12  9:41     ` Gerd Hoffmann
2026-01-12  9:49       ` Luigi Leonardi
2026-01-12  9:57         ` Gerd Hoffmann
2026-01-13  9:36           ` Oliver Steffen
2026-01-13  7:21   ` Ani Sinha
2026-01-13  9:04     ` Oliver Steffen
2026-01-09 14:34 ` [PATCH v3 4/6] igvm: Add common function for finding parameter entries Oliver Steffen
2026-01-12  9:43   ` Gerd Hoffmann
2026-01-09 14:34 ` [PATCH v3 5/6] igvm: Pass machine state to IGVM file processing Oliver Steffen
2026-01-12  9:09   ` Luigi Leonardi
2026-01-09 14:34 ` [PATCH v3 6/6] igvm: Fill MADT IGVM parameter field Oliver Steffen
2026-01-12  9:57   ` Luigi Leonardi
2026-01-12 12:34 ` Igor Mammedov [this message]

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=20260112133432.0a1fb87f@imammedo-mac \
    --to=imammedo@redhat.com \
    --cc=anisinha@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=joerg.roedel@amd.com \
    --cc=kraxel@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=leonardi@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mst@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=osteffen@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=sgarzare@redhat.com \
    --cc=zhao1.liu@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.