qemu-e2k/include/block
Paolo Bonzini 5b8bb3595a async: add aio_bh_schedule_oneshot
qemu_bh_delete is already clearing bh->scheduled at the same time
as it's setting bh->deleted.  Since it's not using any memory
barriers, there is no synchronization going on for bh->deleted,
and this makes the bh->deleted checks superfluous in aio_compute_timeout,
aio_bh_poll and aio_ctx_check.

Just remove them, and put the (bh->scheduled && bh->deleted) combo
to work in a new function aio_bh_schedule_oneshot.  The new function
removes the need to save the QEMUBH pointer between the creation
and the execution of the bottom half.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2016-10-07 13:34:07 +02:00
..
accounting.h
aio.h async: add aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
block_backup.h
block_int.h
block.h
blockjob.h
dirty-bitmap.h
nbd.h
qapi.h
raw-aio.h
scsi.h
snapshot.h
thread-pool.h
throttle-groups.h
write-threshold.h