[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] intel_iommu: allow updating FEADDR and FEUADDR with
From: |
Marek Marczykowski-Górecki |
Subject: |
[Qemu-devel] [PATCH] intel_iommu: allow updating FEADDR and FEUADDR with one 64bit write |
Date: |
Wed, 24 Jan 2018 15:18:48 +0100 |
Allow updating those two adjacent 32bit fields with one 64bit write.
This fixes qemu crash when booting Xen inside.
See discussion on Xen side of the thing here:
http://xen.markmail.org/message/6mrmemrnmhxvaxba
Signed-off-by: Marek Marczykowski-Górecki <address@hidden>
---
hw/i386/intel_iommu.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 2e841cde27..d214dce277 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -2129,8 +2129,12 @@ static void vtd_mem_write(void *opaque, hwaddr addr,
/* Fault Event Address Register, 32-bit */
case DMAR_FEADDR_REG:
- assert(size == 4);
- vtd_set_long(s, addr, val);
+ assert(size == 4 || size == 8);
+ if (size == 4) {
+ vtd_set_long(s, addr, val);
+ } else {
+ vtd_set_quad(s, addr, val);
+ }
break;
/* Fault Event Upper Address Register, 32-bit */
--
2.13.6
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [PATCH] intel_iommu: allow updating FEADDR and FEUADDR with one 64bit write,
Marek Marczykowski-Górecki <=