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/hw/block
Stefan Hajnoczi 1e9181dc52 virtio: unify virtio_notify_irqfd() and virtio_notify()
The difference between these two functions:
- virtio_notify() uses the interrupt code path (MSI or classic IRQs)
- virtio_notify_irqfd() uses guest notifiers (irqfds)

virtio_notify() can only be called with the BQL held because the
interrupt code path requires the BQL. Device models use
virtio_notify_irqfd() from IOThreads since the BQL is not held.

The two functions can be unified by pushing down the if
(qemu_in_iothread()) check from virtio-blk and virtio-scsi into core
virtio code. This is in preparation for the next commit that will add
irqfd support to virtio_notify_config() and where it's unattractive to
introduce another irqfd-only API for device model callers.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Message-ID: <20250922220149.498967-3-stefanha@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
3 weeks ago
..
dataplane include: Rename sysemu/ -> system/ 10 months ago
Kconfig hw/block: Drop unused nand.c 5 months ago
block.c pflash: fix cpr 7 months ago
cdrom.c
fdc-internal.h hw/block/fdc-sysbus: Move iomem from FDCtrl to FDCtrlSysBus 2 years ago
fdc-isa.c qom: Make InterfaceInfo[] uses const 6 months ago
fdc-sysbus.c qom: Have class_init() take a const data argument 6 months ago
fdc.c qom: Have class_init() take a const data argument 6 months ago
hd-geometry.c qemu: Declare all load/store helper in 'qemu/bswap.h' 3 months ago
m25p80.c qom: Constify TypeInfo::class_data 6 months ago
m25p80_sfdp.c hw/block/m25p80: Add SFDP table for w25q80bl flash 1 year ago
m25p80_sfdp.h hw/block/m25p80: Add SFDP table for w25q80bl flash 1 year ago
meson.build hw/virtio: Build various files once 3 months ago
pflash_cfi01.c qom: Have class_init() take a const data argument 6 months ago
pflash_cfi02.c qom: Have class_init() take a const data argument 6 months ago
swim.c qom: Have class_init() take a const data argument 6 months ago
trace-events hw/pflash: implement update buffer for block writes 2 years ago
trace.h
vhost-user-blk.c vhost-user-blk: add an option to skip GET_VRING_BASE for force shutdown 3 months ago
virtio-blk-common.c virtio-blk: add zoned storage emulation for zoned devices 2 years ago
virtio-blk.c virtio: unify virtio_notify_irqfd() and virtio_notify() 3 weeks ago
xen-block.c qom: Have class_init() take a const data argument 6 months ago
xen_blkif.h