[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH for-8.1 0/6] Fix endianness issues in the intel-iommu device
From: |
Thomas Huth |
Subject: |
[PATCH for-8.1 0/6] Fix endianness issues in the intel-iommu device |
Date: |
Wed, 2 Aug 2023 15:57:17 +0200 |
The intel-iommu device is currently unusable on big endian hosts.
When doing something like this on a s390x host:
wget
https://download.fedoraproject.org/pub/fedora/linux/releases/38/Server/x86_64/images/Fedora-Server-KVM-38-1.6.x86_64.qcow2
./qemu-system-x86_64 -M q35 -device intel-iommu -m 2G \
-hda ~/Fedora-Server-KVM-38-1.6.x86_64.qcow2 -trace "vtd_*"
... the guest kernel crashes during boot, complaining about some
problems with the iommu, and you can see clearly in the traces that
some values are wrong when compared to running this on a x86 host.
After spending quite some time hunting down the problems one by one,
I think I now found them all - at least I can successfully boot the
above kernel after I applied these patches.
Thomas Huth (6):
hw/i386/intel_iommu: Fix trivial endianness problems
hw/i386/intel_iommu: Fix endianness problems related to
VTD_IR_TableEntry
hw/i386/intel_iommu: Fix struct VTDInvDescIEC on big endian hosts
hw/i386/intel_iommu: Fix index calculation in
vtd_interrupt_remap_msi()
hw/i386/x86-iommu: Fix endianness issue in
x86_iommu_irq_to_msi_message()
include/hw/i386/x86-iommu: Fix struct X86IOMMU_MSIMessage for big
endian hosts
hw/i386/intel_iommu_internal.h | 9 ++++++
include/hw/i386/intel_iommu.h | 50 ++++++++++++++++++----------------
include/hw/i386/x86-iommu.h | 50 ++++++++++++++++++----------------
hw/i386/intel_iommu.c | 23 ++++++++++------
hw/i386/x86-iommu.c | 2 +-
5 files changed, 76 insertions(+), 58 deletions(-)
--
2.39.3
- [PATCH for-8.1 0/6] Fix endianness issues in the intel-iommu device,
Thomas Huth <=
- [PATCH 2/6] hw/i386/intel_iommu: Fix endianness problems related to VTD_IR_TableEntry, Thomas Huth, 2023/08/02
- [PATCH 1/6] hw/i386/intel_iommu: Fix trivial endianness problems, Thomas Huth, 2023/08/02
- [PATCH 3/6] hw/i386/intel_iommu: Fix struct VTDInvDescIEC on big endian hosts, Thomas Huth, 2023/08/02
- [PATCH 4/6] hw/i386/intel_iommu: Fix index calculation in vtd_interrupt_remap_msi(), Thomas Huth, 2023/08/02
- [PATCH 5/6] hw/i386/x86-iommu: Fix endianness issue in x86_iommu_irq_to_msi_message(), Thomas Huth, 2023/08/02
- [PATCH 6/6] include/hw/i386/x86-iommu: Fix struct X86IOMMU_MSIMessage for big endian hosts, Thomas Huth, 2023/08/02