Re: [PATCH v2 4/9] hw/misc/vmlaunchupdate: add api header

Gerd Hoffman <[email protected]>
Newsgroups gmane.comp.emulators.qemu
Message-ID <[email protected]>
  Hi,

> +/* disable vmlaunchupdate interface */
> +#define VM_LAUNCHUPDATE_CTL_DISABLE            (1 << 0)
> +/* revert to the original host provided igvm */
> +#define VM_LAUNCHUPDATE_CTL_HOST_IGVM          (1 << 1)

Hmm, I think these bits need a more verbose comment, especially the
combination of the two ...

HOST_IGVM=0 DISABLE=0

Supplied IGVM file replaces the firmware permanently.  Updating the
firmware again is possible.

HOST_IGVM=0 DISABLE=1

Supplied IGVM file replaces the firmware permanently.  Updating the
firmware again is not possible.

HOST_IGVM=1 DISABLE=0

Supplied IGVM file replaces the firmware for one reset.  Resetting
again will switch back to the original firmware.  Updating the
firmware again is possible.

HOST_IGVM=1 DISABLE=1

Supplied IGVM file replaces the firmware for one reset.  Resetting
again will switch back to the original firmware.  Updating the
firmware again is NOT possible.

Question:  How long will the 'disable' flag be active?  Specifically
will switching back to the original firmware also clear the 'disable'
flag?  Which I think makes sense.

Another question: What happens when using HOST_IGVM=0 first and later
on HOST_IGVM=1?

> +typedef struct {
> +    /* api version */
> +    uint16_t version;
> +
> +    /*
> +     * The guest can read this in order to determine if loading new IGVM
> +     * succeeded.
> +     */
> +    uint16_t status;

uint32_t _padding;

> +
> +    /* VMM capabilities, read-only. */
> +    uint64_t capabilities;
> +    /* control bits, see VMFWUPDATE_CTL_* */
> +    uint64_t control;

take care,
  Gerd

PS: you should cc alex for v3
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.