qemu/stubs
Stefan Hajnoczi 195801d700 system/cpus: rename qemu_mutex_lock_iothread() to bql_lock()
The Big QEMU Lock (BQL) has many names and they are confusing. The
actual QemuMutex variable is called qemu_global_mutex but it's commonly
referred to as the BQL in discussions and some code comments. The
locking APIs, however, are called qemu_mutex_lock_iothread() and
qemu_mutex_unlock_iothread().

The "iothread" name is historic and comes from when the main thread was
split into into KVM vcpu threads and the "iothread" (now called the main
loop thread). I have contributed to the confusion myself by introducing
a separate --object iothread, a separate concept unrelated to the BQL.

The "iothread" name is no longer appropriate for the BQL. Rename the
locking APIs to:
- void bql_lock(void)
- void bql_unlock(void)
- bool bql_locked(void)

There are more APIs with "iothread" in their names. Subsequent patches
will rename them. There are also comments and documentation that will be
updated in later patches.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Paul Durrant <paul@xen.org>
Acked-by: Fabiano Rosas <farosas@suse.de>
Acked-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Acked-by: Peter Xu <peterx@redhat.com>
Acked-by: Eric Farman <farman@linux.ibm.com>
Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Acked-by: Hyman Huang <yong.huang@smartx.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20240102153529.486531-2-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2024-01-08 10:45:43 -05:00
..
bdrv-next-monitor-owned.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
blk-commit-all.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
blk-exp-close-all.c block: move block exports to libblockdev 2020-10-23 13:42:16 +01:00
blockdev-close-all-bdrv-states.c
change-state-handler.c sysemu: Split sysemu/runstate.h off sysemu/sysemu.h 2019-08-16 13:37:36 +02:00
cmos.c stubs/cmos: Use correct include 2020-09-01 09:10:58 +02:00
colo-compare.c configure: add --disable-colo-proxy option 2023-05-18 18:40:50 +02:00
colo.c stubs/colo.c: spelling 2023-08-07 13:52:59 +03:00
cpu-get-clock.c cpu-timers, icount: new modules 2020-10-05 16:41:22 +02:00
cpu-synchronize-state.c cpus: prepare new CpusAccel cpu accelerator interface 2020-10-05 16:41:22 +02:00
cpus-get-virtual-clock.c cpus: prepare new CpusAccel cpu accelerator interface 2020-10-05 16:41:22 +02:00
dump.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
error-printf.c Move error_printf_unless_qmp() with monitor unit 2022-04-21 17:09:09 +04:00
fdset.c monitor: simplify functions for getting a dup'd fdset entry 2020-09-16 10:33:48 +01:00
fw_cfg.c hw/nvram/fw_cfg: Add fw_cfg_arch_key_name() 2019-05-23 14:10:31 +02:00
gdbstub.c gdbstub: Introduce GDBFeature structure 2023-10-11 08:46:33 +01:00
get-vm-name.c include: move qemu_get_vm_name() to sysemu.h 2022-04-06 14:31:43 +02:00
graph-lock.c async: Register/unregister aiocontext in graph lock list 2022-12-15 16:07:43 +01:00
icount.c replay: notify vCPU when BH is scheduled 2022-06-06 09:26:53 +02:00
io_uring.c stubs: add stubs for io_uring interface 2020-01-30 20:59:41 +00:00
iothread-lock-block.c main-loop.h: introduce qemu_in_main_thread() 2022-03-04 18:18:15 +01:00
iothread-lock.c system/cpus: rename qemu_mutex_lock_iothread() to bql_lock() 2024-01-08 10:45:43 -05:00
is-daemonized.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
isa-bus.c stubs: add isa_create_simple 2020-07-06 17:01:11 +02:00
linux-aio.c linux-aio: properly bubble up errors from initialization 2018-06-27 13:06:34 +01:00
memory_device.c memory-device,vhost: Support automatic decision on the number of memslots 2023-10-12 14:15:22 +02:00
meson.build hw/remote: move stub vfu_object_set_bus_irq out of stubs/ 2023-10-18 10:01:01 +02:00
migr-blocker.c migration: per-mode blockers 2023-11-01 16:13:59 +01:00
module-opts.c modules: use modinfo for qemu opts load 2021-07-09 18:20:27 +02:00
monitor-core.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
monitor.c hmp: Fail gracefully if chardev is already in use 2020-03-06 17:21:28 +01:00
pci-bus.c stubs: add pci_create_simple 2020-07-06 17:01:11 +02:00
physmem.c stubs: add qemu_ram_block_from_host() and qemu_ram_get_fd() 2022-10-26 14:56:42 -04:00
qdev.c qapi qdev qom: Elide redundant has_FOO in generated C 2022-12-14 20:05:07 +01:00
qemu-timer-notify-cb.c cpu-timers, icount: new modules 2020-10-05 16:41:22 +02:00
qmp-command-available.c remove preconfig state 2020-12-15 12:51:48 -05:00
qmp-quit.c chardev: don't exit() straight away on C-a x 2021-11-04 10:32:01 +00:00
qtest.c cpu-timers, icount: new modules 2020-10-05 16:41:22 +02:00
ram-block.c util/vfio-helpers.c: Use ram_block_discard_disable() in qemu_vfio_open_pci() 2020-11-16 13:22:17 -05:00
ramfb.c hw/vfio: add ramfb migration support 2023-10-18 10:10:49 +02:00
replay-tools.c chardev: src buffer const for write functions 2022-09-29 14:38:05 +04:00
replay.c replay: Extract core API to 'exec/replay-core.h' 2023-02-27 22:29:01 +01:00
runstate-check.c sysemu: Split sysemu/runstate.h off sysemu/sysemu.h 2019-08-16 13:37:36 +02:00
semihost-all.c stubs: split semihosting_get_target from system only stubs 2023-03-07 20:44:09 +00:00
semihost.c * util/log: re-allow switching away from stderr log file 2023-10-09 10:11:18 -04:00
sysbus.c
target-get-monitor-def.c
target-monitor-defs.c
trace-control.c trace: remove code that depends on setting vcpu 2023-06-01 11:05:05 -04:00
usb-dev-stub.c qapi: introduce x-query-usb QMP command 2021-11-02 15:55:14 +00:00
uuid.c qapi: Restrict query-uuid command to machine code 2020-09-29 15:41:35 +02:00
virtio-md-pci.c pc: Factor out (un)plug handling of virtio-md-pci devices 2023-07-12 09:27:27 +02:00
vm-stop.c sysemu: Split sysemu/runstate.h off sysemu/sysemu.h 2019-08-16 13:37:36 +02:00
vmstate.c cpu: Move CPUClass::vmsd to SysemuCPUOps 2021-05-26 15:33:59 -07:00
win32-kbd-hook.c ui/win32-kbd-hook: handle AltGr in a hook procedure 2020-05-19 09:06:44 +02:00
xen-hw-stub.c include/hw/xen/xen: Rename xen_piix3_set_irq() to xen_intx_set_irq() 2023-06-07 15:07:10 +01:00