From: Thomas Huth Date: Wed, 2 Aug 2023 13:57:22 +0000 (+0200) Subject: hw/i386/x86-iommu: Fix endianness issue in x86_iommu_irq_to_msi_message() X-Git-Tag: qemu-xen-4.20.0~600^2~3 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=37cf5cecb039a063c0abe3b51ae30f969e73aa84;p=qemu-xen.git hw/i386/x86-iommu: Fix endianness issue in x86_iommu_irq_to_msi_message() The values in "msg" are assembled in host endian byte order (the other field are also not swapped), so we must not swap the __addr_head here. Signed-off-by: Thomas Huth Message-Id: <20230802135723.178083-6-thuth@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Peter Xu --- diff --git a/hw/i386/x86-iommu.c b/hw/i386/x86-iommu.c index 01d11325a6..726e9e1d16 100644 --- a/hw/i386/x86-iommu.c +++ b/hw/i386/x86-iommu.c @@ -63,7 +63,7 @@ void x86_iommu_irq_to_msi_message(X86IOMMUIrq *irq, MSIMessage *msg_out) msg.redir_hint = irq->redir_hint; msg.dest = irq->dest; msg.__addr_hi = irq->dest & 0xffffff00; - msg.__addr_head = cpu_to_le32(0xfee); + msg.__addr_head = 0xfee; /* Keep this from original MSI address bits */ msg.__not_used = irq->msi_addr_last_bits;