qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 6/9] i386/pc: Skip initialization of system FW when using IGV


From: Roy Hopkins
Subject: Re: [PATCH 6/9] i386/pc: Skip initialization of system FW when using IGVM
Date: Wed, 27 Mar 2024 14:13:53 +0000
User-agent: Evolution 3.50.2

On Wed, 2024-03-27 at 18:58 +0530, Ani Sinha wrote:
> 
> 
> > On 27 Feb 2024, at 20:20, Roy Hopkins <roy.hopkins@suse.com> wrote:
> > 
> > When using an IGVM file the configuration of the system firmware is
> > defined by IGVM directives contained in the file. Therefore the default
> > system firmware should not be initialized when an IGVM file has been
> > provided.
> > 
> > This commit checks to see if an IGVM file has been provided and, if it
> > has then the standard system firmware initialization is skipped and any
> > prepared flash devices are cleaned up.
> > 
> > Signed-off-by: Roy Hopkins <roy.hopkins@suse.com>
> > ---
> > hw/i386/pc.c | 12 ++++++++++--
> > 1 file changed, 10 insertions(+), 2 deletions(-)
> > 
> > diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> > index f8eb684a49..17bb211708 100644
> > --- a/hw/i386/pc.c
> > +++ b/hw/i386/pc.c
> > @@ -63,6 +63,7 @@
> > #include "e820_memory_layout.h"
> > #include "trace.h"
> > #include CONFIG_DEVICES
> > +#include "exec/confidential-guest-support.h"
> > 
> > #ifdef CONFIG_XEN_EMU
> > #include "hw/xen/xen-legacy-backend.h"
> > @@ -1023,8 +1024,15 @@ void pc_memory_init(PCMachineState *pcms,
> >         }
> >     }
> > 
> > -    /* Initialize PC system firmware */
> > -    pc_system_firmware_init(pcms, rom_memory);
> > +    /*
> > +     * If this is a confidential guest configured using IGVM then the IGVM
> > +     * configuration will include the system firmware. In this case do not
> > +     * initialise PC system firmware.
> > +     */
> > +    if (!cgs_is_igvm(machine->cgs)) {
> > +        /* Initialize PC system firmware */
> > +        pc_system_firmware_init(pcms, rom_memory);
> > +    }
> 
> Ok so this makes QEMU mot load the default fw as provided in the QEMU command
> line. It does not specify how the packaged fw specified within IGVM would be
> processed and loaded. Am I understanding this right?
>  
Yes. Although as suggested by Daniel, I've now changed this so if firmware is
specified on the command line in conflict with the IGVM file then an error is
displayed. The IGVM file itself describes how the firmware binary is populated
into guest memory and launched.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]