aboutsummaryrefslogtreecommitdiff
path: root/hw/i386
diff options
context:
space:
mode:
authorClément Mathieu--Drif <clement.mathieu--drif@eviden.com>2024-07-09 14:26:08 +0000
committerMichael S. Tsirkin <mst@redhat.com>2024-07-21 14:45:40 -0400
commita3c8d7e38550c3d5a46e6fa94ffadfa625a4861d (patch)
tree0f2cb8d18b8e4e63f24f40014dc31c74c3518164 /hw/i386
parent9b6083465fb8311f2410615f8303a41f580a2a20 (diff)
downloadqemu-a3c8d7e38550c3d5a46e6fa94ffadfa625a4861d.zip
qemu-a3c8d7e38550c3d5a46e6fa94ffadfa625a4861d.tar.gz
qemu-a3c8d7e38550c3d5a46e6fa94ffadfa625a4861d.tar.bz2
intel_iommu: fix FRCD construction macro
The constant must be unsigned, otherwise the two's complement overrides the other fields when a PASID is present. Fixes: 1b2b12376c8a ("intel-iommu: PASID support") Signed-off-by: Clément Mathieu--Drif <clement.mathieu--drif@eviden.com> Reviewed-by: Yi Liu <yi.l.liu@intel.com> Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com> Reviewed-by: Minwoo Im <minwoo.im@samsung.com> Message-Id: <20240709142557.317271-2-clement.mathieu--drif@eviden.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/i386')
-rw-r--r--hw/i386/intel_iommu_internal.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/i386/intel_iommu_internal.h b/hw/i386/intel_iommu_internal.h
index f8cf99b..cbc4030 100644
--- a/hw/i386/intel_iommu_internal.h
+++ b/hw/i386/intel_iommu_internal.h
@@ -267,7 +267,7 @@
/* For the low 64-bit of 128-bit */
#define VTD_FRCD_FI(val) ((val) & ~0xfffULL)
#define VTD_FRCD_PV(val) (((val) & 0xffffULL) << 40)
-#define VTD_FRCD_PP(val) (((val) & 0x1) << 31)
+#define VTD_FRCD_PP(val) (((val) & 0x1ULL) << 31)
#define VTD_FRCD_IR_IDX(val) (((val) & 0xffffULL) << 48)
/* DMA Remapping Fault Conditions */