qemu-cr16/hw
Stefan Hajnoczi 3b11003fa6 virtio: support irqfd in virtio_notify_config()
virtio_error() calls virtio_notify_config() to inject a VIRTIO
Configuration Change Notification. This doesn't work from IOThreads
because the BQL is not held and the interrupt code path requires the
BQL.

Follow the same approach as virtio_notify() and use ->config_notifier
(an irqfd) when called from the IOThread.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Message-ID: <20250922220149.498967-4-stefanha@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2025-10-05 09:01:08 -04:00
..
9pfs 9pfs: Stop including gstrfuncs.h 2025-09-18 21:21:29 +02:00
acpi acpi/generic_event_device.c: enable use_hest_addr for QEMU 10.x 2025-10-05 08:06:32 -04:00
adc
alpha
arm smbios: cap DIMM size to 2Tb as workaround for broken Windows 2025-10-05 09:01:08 -04:00
audio hw/audio/via-ac97: skip automatic zero-init of large array 2025-06-12 13:40:15 -04:00
avr
block virtio: unify virtio_notify_irqfd() and virtio_notify() 2025-10-05 09:01:08 -04:00
char First RISC-V PR for 10.2 2025-10-03 04:57:12 -07:00
core smbios: cap DIMM size to 2Tb as workaround for broken Windows 2025-10-05 09:01:08 -04:00
cpu
cxl hw/cxl: Convert cxl_fmws_link() to Error 2025-09-30 14:43:53 +02:00
display error: Kill @error_warn 2025-10-01 08:33:24 +02:00
dma hw/dma/xlnx_csu_dma: skip automatic zero-init of large array 2025-06-12 13:40:15 -04:00
fsi
gpio hw/gpio/pca9554: Avoid leak in pca9554_set_pin() 2025-09-02 17:57:05 +02:00
hppa qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
hyperv hv-balloon: hw/core/register: Do not unparent in instance_finalize() 2025-09-24 09:23:20 +02:00
i2c hw/arm: Replace TABs for spaces in OMAP board and device code 2025-05-14 14:29:47 +01:00
i386 intel_iommu: Add PRI operations support 2025-10-05 09:01:08 -04:00
ide hw/ide/ich.c: Use qemu_init_irq_child() to avoid memory leak 2025-09-02 17:57:05 +02:00
input treewide: use qemu_set_blocking instead of g_unix_set_fd_nonblocking 2025-09-19 12:46:07 +01:00
intc hw/intc: Save timers array in RISC-V mtimer VMState 2025-10-03 13:15:14 +10:00
ipack qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
ipmi qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
isa x86: ich9: fix default value of 'No Reboot' bit in GCS 2025-10-05 09:01:08 -04:00
loongarch hw/loongarch: Implement DINTC plug/unplug interfaces 2025-09-28 17:31:04 +08:00
m68k hw: add compat machines for 10.2 2025-08-27 07:07:53 +02:00
mem hw/cxl: mailbox-utils: 0x5604 - FMAPI Initiate DC Add 2025-07-15 02:56:40 -04:00
microblaze hw/microblaze: Add missing FDT dependency 2025-07-15 00:24:26 +02:00
mips hw/mips/malta: Silence warning from ubsan 2025-09-09 09:34:45 +02:00
misc Error reporting patches for 2025-09-30 2025-10-01 15:02:18 -07:00
net pcie_sriov: Fix broken MMIO accesses from SR-IOV VFs 2025-10-05 09:01:08 -04:00
nubus
nvme pcie_sriov: Fix broken MMIO accesses from SR-IOV VFs 2025-10-05 09:01:08 -04:00
nvram hw/nvram/aspeed_otp: Add OTP programming semantics and tracing 2025-09-29 18:00:20 +02:00
openrisc add cpu_test_interrupt()/cpu_set_interrupt() helpers and use them tree wide 2025-08-29 12:48:14 +02:00
pci pcie: Add a way to get the outstanding page request allocation (pri) from the config space. 2025-10-05 09:01:08 -04:00
pci-bridge hw/arm/smmu-common: Check SMMU has PCIe Root Complex association 2025-09-16 17:31:54 +01:00
pci-host hw/pci-host/aspeed: Disable Root Device and place Root Port at 00:00.0 to AST2700 2025-09-29 18:00:20 +02:00
ppc ppc/spapr: init lrdr-capapcity phys with ram size if maxmem not provided 2025-09-28 23:45:28 +05:30
remote hw/remote/vfio-user: Clean up error reporting 2025-09-30 14:43:53 +02:00
riscv hw/riscv/riscv-iommu: Fixup PDT Nested Walk 2025-10-03 13:15:14 +10:00
rtc hw/rtc/mc146818rtc: Drop pre-v3 migration stream support 2025-04-30 20:44:20 +02:00
rx
s390x hw/vfio/types.h: rename TYPE_VFIO_PCI_BASE to TYPE_VFIO_PCI_DEVICE 2025-09-25 17:55:20 +02:00
scsi virtio: unify virtio_notify_irqfd() and virtio_notify() 2025-10-05 09:01:08 -04:00
sd hw/sd/sdhci: Do not unparent in instance_finalize() 2025-09-24 09:23:20 +02:00
sensor qemu: Declare all load/store helper in 'qemu/bswap.h' 2025-07-15 02:56:39 -04:00
sh4 include: Remove 'exec/exec-all.h' 2025-04-30 12:45:05 -07:00
smbios hw/smbios: allow clearing the VM bit in SMBIOS table 0 2025-10-05 08:17:08 -04:00
sparc
sparc64 qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
ssi hw/ssi/aspeed_smc: Fix incorrect FMC_WDT2 register read on AST1030 2025-08-04 09:07:38 +02:00
timer hpet: guard IRQ handling with BQL 2025-09-17 19:00:58 +02:00
tpm qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
tricore
uefi hw/uefi: open json file in binary mode 2025-08-12 08:03:16 +02:00
ufs hw/ufs/lu: skip automatic zero-init of large array 2025-06-12 13:40:16 -04:00
usb hw/usb/hcd-uhci: don't assert for SETUP to non-0 endpoint 2025-09-25 11:06:27 +01:00
vfio hw/vfio: Use uint64_t for IOVA mapping size in vfio_container_dma_*map 2025-10-02 10:41:23 +02:00
vfio-user hw/vfio: Use uint64_t for IOVA mapping size in vfio_container_dma_*map 2025-10-02 10:41:23 +02:00
virtio virtio: support irqfd in virtio_notify_config() 2025-10-05 09:01:08 -04:00
vmapple qemu: Declare all load/store helper in 'qemu/bswap.h' 2025-07-15 02:56:39 -04:00
watchdog qom: Make InterfaceInfo[] uses const 2025-04-25 17:00:41 +02:00
xen hw/xen: Do not unparent in instance_finalize() 2025-09-24 09:23:20 +02:00
xenpv
xtensa
Kconfig vfio-user: add vfio-user class and container 2025-06-26 08:55:38 +02:00
meson.build hw/meson: enter target hw first 2025-09-02 17:57:05 +02:00