[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 0/4] virtio-iommu: Support VIRTIO_IOMMU_F_BYPASS_CONFIG
|
From: |
Jean-Philippe Brucker |
|
Subject: |
[PATCH v3 0/4] virtio-iommu: Support VIRTIO_IOMMU_F_BYPASS_CONFIG |
|
Date: |
Mon, 14 Feb 2022 12:43:52 +0000 |
Replace the VIRTIO_IOMMU_F_BYPASS feature with
VIRTIO_IOMMU_F_BYPASS_CONFIG, which enables a config space bit to switch
global bypass on and off.
Add a boot-bypass option, which defaults to 'on' to be in line with
other vIOMMUs and to allow running firmware/bootloader that are unaware
of the IOMMU. x86 doesn't need a workaround to boot with virtio-iommu
anymore.
Since v2 [1]:
* Added the new bypass bits to the migration stream.
As discussed on the v2 thread, we assume that cross-version
compatibility is not required for live migration at the moment, so we
only increase the version number. Patch 2 says: "We add the bypass
field to the migration stream without introducing subsections, based
on the assumption that this virtio-iommu device isn't being used in
production enough to require cross-version migration at the moment
(all previous version required workarounds since they didn't support
ACPI and boot-bypass)."
[1]
https://lore.kernel.org/qemu-devel/20220127142940.671333-1-jean-philippe@linaro.org/
Jean-Philippe Brucker (4):
linux-headers: update to v5.17-rc1
virtio-iommu: Default to bypass during boot
virtio-iommu: Support bypass domain
tests/qtest/virtio-iommu-test: Check bypass config
include/hw/virtio/virtio-iommu.h | 1 +
include/standard-headers/asm-x86/kvm_para.h | 1 +
include/standard-headers/drm/drm_fourcc.h | 11 ++
include/standard-headers/linux/ethtool.h | 1 +
include/standard-headers/linux/fuse.h | 60 +++++++-
include/standard-headers/linux/pci_regs.h | 142 +++++++++---------
include/standard-headers/linux/virtio_gpio.h | 72 +++++++++
include/standard-headers/linux/virtio_i2c.h | 47 ++++++
include/standard-headers/linux/virtio_iommu.h | 8 +-
.../standard-headers/linux/virtio_pcidev.h | 65 ++++++++
include/standard-headers/linux/virtio_scmi.h | 24 +++
linux-headers/asm-generic/unistd.h | 5 +-
linux-headers/asm-mips/unistd_n32.h | 2 +
linux-headers/asm-mips/unistd_n64.h | 2 +
linux-headers/asm-mips/unistd_o32.h | 2 +
linux-headers/asm-powerpc/unistd_32.h | 2 +
linux-headers/asm-powerpc/unistd_64.h | 2 +
linux-headers/asm-riscv/bitsperlong.h | 14 ++
linux-headers/asm-riscv/mman.h | 1 +
linux-headers/asm-riscv/unistd.h | 44 ++++++
linux-headers/asm-s390/unistd_32.h | 2 +
linux-headers/asm-s390/unistd_64.h | 2 +
linux-headers/asm-x86/kvm.h | 16 +-
linux-headers/asm-x86/unistd_32.h | 1 +
linux-headers/asm-x86/unistd_64.h | 1 +
linux-headers/asm-x86/unistd_x32.h | 1 +
linux-headers/linux/kvm.h | 17 +++
hw/virtio/virtio-iommu.c | 99 ++++++++++--
tests/qtest/virtio-iommu-test.c | 2 +
hw/virtio/trace-events | 4 +-
30 files changed, 561 insertions(+), 90 deletions(-)
create mode 100644 include/standard-headers/linux/virtio_gpio.h
create mode 100644 include/standard-headers/linux/virtio_i2c.h
create mode 100644 include/standard-headers/linux/virtio_pcidev.h
create mode 100644 include/standard-headers/linux/virtio_scmi.h
create mode 100644 linux-headers/asm-riscv/bitsperlong.h
create mode 100644 linux-headers/asm-riscv/mman.h
create mode 100644 linux-headers/asm-riscv/unistd.h
--
2.35.1
- [PATCH v3 0/4] virtio-iommu: Support VIRTIO_IOMMU_F_BYPASS_CONFIG,
Jean-Philippe Brucker <=
- [PATCH v3 2/4] virtio-iommu: Default to bypass during boot, Jean-Philippe Brucker, 2022/02/14
- [PATCH v3 1/4] linux-headers: update to v5.17-rc1, Jean-Philippe Brucker, 2022/02/14
- [PATCH v3 4/4] tests/qtest/virtio-iommu-test: Check bypass config, Jean-Philippe Brucker, 2022/02/14
- [PATCH v3 3/4] virtio-iommu: Support bypass domain, Jean-Philippe Brucker, 2022/02/14
- Re: [PATCH v3 0/4] virtio-iommu: Support VIRTIO_IOMMU_F_BYPASS_CONFIG, Cornelia Huck, 2022/02/14
- Re: [PATCH v3 0/4] virtio-iommu: Support VIRTIO_IOMMU_F_BYPASS_CONFIG, Eric Auger, 2022/02/15