You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/include/hw
Zhenzhong Duan 43b8c43397 intel_iommu: Handle PASID cache invalidation
Adds a new entry VTDPASIDCacheEntry in VTDAddressSpace to cache the pasid
entry and track PASID usage and future PASID tagged DMA address translation
support in vIOMMU.

When guest triggers pasid cache invalidation, QEMU will capture it and
update or invalidate pasid cache.

vIOMMU emulator could figure out the reason by fetching latest guest pasid
entry in memory and compare it with cached PASID entry if it's valid.

Signed-off-by: Yi Liu <yi.l.liu@intel.com>
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Yi Liu <yi.l.liu@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20251017093602.525338-2-zhenzhong.duan@intel.com>
5 days ago
..
acpi qapi/acpi-hest: add an interface to do generic CPER error injection 1 month ago
adc hw/adc: Remove MAX111X device 1 year ago
arm hw/arm/aspeed: Rename and export connect_serial_hds_to_uarts() as aspeed_connect_serial_hds_to_uarts() 1 week ago
audio audio: move audio.h under include/qemu/ 2 weeks ago
block block: enable stats-intervals for storage devices 2 weeks ago
char * char: rename CharBackend->CharFrontend 2 weeks ago
core exec/cpu: Declare cpu_memory_rw_debug() in 'hw/core/cpu.h' and document 2 weeks ago
cpu
cxl hw/cxl: mailbox-utils: 0x5604 - FMAPI Initiate DC Add 4 months ago
display audio: move audio.h under include/qemu/ 2 weeks ago
dma include/hw/dma/xlnx_dpdma: Remove dependency on console.h 6 months ago
firmware hw/smbios: allow clearing the VM bit in SMBIOS table 0 1 month ago
fsi include/system: Move exec/memory.h to system/memory.h 7 months ago
gpio hw/gpio/aspeed: Fix definition of AspeedGPIOClass 5 months ago
hyperv include/hw/hyperv: Add MSHV ABI header definitions 1 month ago
i2c include/hw: replace FSF postal address with licenses URL 5 months ago
i386 intel_iommu: Handle PASID cache invalidation 5 days ago
ide include/system: Move exec/ioport.h to system/ioport.h 7 months ago
input qom: remove redundant typedef when use OBJECT_DECLARE_SIMPLE_TYPE 2 weeks ago
intc hw/int/loongarch: Include missing 'system/memory.h' header 2 weeks ago
ipack hw/ipack: Remove legacy qemu_allocate_irqs() use 10 months ago
ipmi include/system: Move exec/memory.h to system/memory.h 7 months ago
isa audio: move audio.h under include/qemu/ 2 weeks ago
loongarch hw/loongarch/virt: Sort order by hardware device base address 1 month ago
m68k include/system: Move exec/memory.h to system/memory.h 7 months ago
mem include/system: Move exec/memory.h to system/memory.h 7 months ago
mips include/system: Move exec/memory.h to system/memory.h 7 months ago
misc * char: rename CharBackend->CharFrontend 2 weeks ago
net hw/hppa: Enable LASI i82596 network on 715 machine 1 week ago
nubus include/system: Move exec/address-spaces.h to system/address-spaces.h 7 months ago
nvram hw/core/register: remove the calls to `register_finalize_block' 3 weeks ago
openrisc hw/openrisc: Support monitor dumpdtb command 9 months ago
pci hw/nvme: connect SPDM over NVMe Security Send/Recv 2 weeks ago
pci-bridge hw/pci-bridge/cxl-upstream: Add properties to control link speed and width 1 year ago
pci-host qom: remove redundant typedef when use OBJECT_DECLARE_SIMPLE_TYPE 2 weeks ago
ppc ppc/spapr: Cleanup MSI IRQ number handling 2 weeks ago
remote include/system: Move exec/memory.h to system/memory.h 7 months ago
riscv hw/riscv: Widen OpenSBI dynamic info struct 2 weeks ago
rtc
rx
s390x hw/s390x/ccw: Remove SCLPDevice::increment_size field 3 weeks ago
scsi qom: remove redundant typedef when use OBJECT_DECLARE_SIMPLE_TYPE 2 weeks ago
sd hw/sd/sdcard: Remove support for spec v1.10 2 months ago
sensor
sh4 include/system: Move exec/memory.h to system/memory.h 7 months ago
southbridge x86: ich9: fix default value of 'No Reboot' bit in GCS 1 month ago
sparc
ssi hw/ssi: Document ssi_transfer() method 2 months ago
timer hw/pcspk: use explicitly the required PIT types 3 weeks ago
tricore include/system: Move exec/address-spaces.h to system/address-spaces.h 7 months ago
uefi hw/uefi: Include missing 'system/memory.h' header 2 weeks ago
usb hw/usb/hcd-dwc3: Align global registers size with Linux 9 months ago
vfio qom: remove redundant typedef when use OBJECT_DECLARE_SIMPLE_TYPE 2 weeks ago
virtio * char: rename CharBackend->CharFrontend 2 weeks ago
vmapple hw/vmapple/virtio-blk: Add support for apple virtio-blk 8 months ago
watchdog
xen hw/xen: Avoid non-inclusive language in params.h 2 weeks ago
xtensa include/system: Move exec/memory.h to system/memory.h 7 months ago
boards.h hw/boards: Introduce DEFINE_MACHINE_WITH_INTERFACE_ARRAY() macro 3 weeks ago
clock.h clock: clear callback on unparent 11 months ago
elf_ops.h.inc
fw-path-provider.h
hotplug.h
hw.h meson: Only allow CONFIG_USER_ONLY from certain source sets 7 months ago
irq.h hw/irq: New qemu_init_irq_child() function 2 months ago
loader-fit.h hw/mips/boston: Support dumpdtb monitor commands 9 months ago
loader.h hw/core/loader: capture Error from load_image_targphys 2 weeks ago
nmi.h
or-irq.h
platform-bus.h
ptimer.h
qdev-clock.h
qdev-core.h hw/qdev: Have qdev_get_gpio_out_connector() take const DeviceState arg 2 weeks ago
qdev-dma.h
qdev-properties-system.h audio: remove QEMUSoundCard 2 weeks ago
qdev-properties.h qdev: Change PropertyInfo method print() to return malloc'ed string 2 weeks ago
register.h hw/core/register: remove the `register_finalize_block' function 3 weeks ago
registerfields.h
resettable.h reset: Add RESET_TYPE_WAKEUP 1 year ago
stream.h
sysbus.h hw/sysbus: Have various helpers take a const SysBusDevice argument 2 weeks ago
usb.h include/system: Move exec/memory.h to system/memory.h 7 months ago
vmstate-if.h