qemu-e2k/include/block
Kevin Wolf 1b3ff9feb9 block: GRAPH_RDLOCK for functions only called by co_wrappers
The generated coroutine wrappers already take care to take the lock in
the non-coroutine path, and assume that the lock is already taken in the
coroutine path.

The only thing we need to do for the wrapped function is adding the
GRAPH_RDLOCK annotation. Doing so also allows us to mark the
corresponding callbacks in BlockDriver as GRAPH_RDLOCK_PTR.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20221207131838.239125-19-kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2022-12-15 16:08:23 +01:00
..
accounting.h block: pass OnOffAuto instead of bool to block_acct_setup() 2022-09-30 18:02:30 +02:00
aio_task.h
aio-wait.h aio-wait.h: introduce AIO_WAIT_WHILE_UNLOCKED 2022-10-07 12:11:41 +02:00
aio.h graph-lock: Introduce a lock to protect block graph operations 2022-12-15 16:07:43 +01:00
block_backup.h
block_int-common.h block: GRAPH_RDLOCK for functions only called by co_wrappers 2022-12-15 16:08:23 +01:00
block_int-global-state.h block: assert that graph read and writes are performed correctly 2022-12-15 16:08:23 +01:00
block_int-io.h block: Remove subtree drains 2022-12-15 16:07:42 +01:00
block_int.h graph-lock: Introduce a lock to protect block graph operations 2022-12-15 16:07:43 +01:00
block-common.h block-coroutine-wrapper.py: introduce annotations that take the graph rdlock 2022-12-15 16:08:23 +01:00
block-copy.h block-copy: add coroutine_fn annotations 2022-12-15 16:07:43 +01:00
block-global-state.h block: Factor out bdrv_drain_all_begin_nopoll() 2022-12-15 16:07:43 +01:00
block-hmp-cmds.h monitor: add missing coroutine_fn annotation 2022-10-27 20:14:11 +02:00
block-io.h block: use co_wrapper_mixed_bdrv_rdlock in functions taking the rdlock 2022-12-15 16:08:23 +01:00
block.h include/block/block: split header into I/O and global state API 2022-03-04 18:18:25 +01:00
blockjob_int.h include/block/blockjob_int.h: split header into I/O and GS API 2022-03-04 18:18:25 +01:00
blockjob.h blockjob: remove unused functions 2022-10-07 12:11:41 +02:00
dirty-bitmap.h block/dirty-bitmap: convert coroutine-only functions to co_wrapper 2022-12-15 16:07:43 +01:00
export.h
fuse.h
graph-lock.h Mark assert_bdrv_graph_readable/writable() GRAPH_RD/WRLOCK 2022-12-15 16:08:23 +01:00
nbd.h nbd: remove incorrect coroutine_fn annotations 2022-10-07 12:11:40 +02:00
nvme.h nvme: Fix misleading macro when mixed with ternary operator 2022-07-15 10:40:33 +02:00
qapi.h
qdict.h include: move qdict_{crumple,flatten} declarations 2022-04-21 17:03:51 +04:00
raw-aio.h linux-aio: add dev_max_batch parameter to laio_io_unplug() 2021-11-02 13:03:35 +01:00
replication.h replication: move include out of root directory 2021-05-26 14:49:46 +02:00
reqlist.h block/reqlist: add reqlist_wait_all() 2022-03-07 09:33:30 +01:00
snapshot.h include/block/snapshot: global state API + assertions 2022-03-04 18:18:25 +01:00
thread-pool.h util/event-loop-base: Introduce options to set the thread pool size 2022-05-09 10:43:23 +01:00
throttle-groups.h block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes 2021-02-03 08:14:00 -06:00
write-threshold.h write-threshold: deal with includes 2021-05-14 16:14:10 +02:00