Hi

On Fri, Jul 12, 2024 at 10:25 AM Ani Sinha <anisi...@redhat.com> wrote:
>
> Guest and host formats in struct FWCfgVMCoreInfo are written in little endian
> format. However, the hypervisor host might be big endian. We need to do
> appropriate conversions between the formats before comparing the values. Fix 
> it.
>

Looks right, but that shouldn't matter since the comparison is with 0.

Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com>

> Signed-off-by: Ani Sinha <anisi...@redhat.com>
> ---
>  hw/misc/vmcoreinfo.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/hw/misc/vmcoreinfo.c b/hw/misc/vmcoreinfo.c
> index 833773ade5..e00df95e29 100644
> --- a/hw/misc/vmcoreinfo.c
> +++ b/hw/misc/vmcoreinfo.c
> @@ -21,9 +21,10 @@
>  static void fw_cfg_vmci_write(void *dev, off_t offset, size_t len)
>  {
>      VMCoreInfoState *s = VMCOREINFO(dev);
> +    uint16_t guest_format = le16_to_cpu(s->vmcoreinfo.guest_format);
>
>      s->has_vmcoreinfo = offset == 0 && len == sizeof(s->vmcoreinfo)
> -        && s->vmcoreinfo.guest_format != FW_CFG_VMCOREINFO_FORMAT_NONE;
> +        && guest_format != FW_CFG_VMCOREINFO_FORMAT_NONE;
>  }
>
>  static void vmcoreinfo_reset(void *dev)
> --
> 2.42.0
>


Reply via email to