diff options
author | Peter Maydell | 2016-07-14 12:48:46 +0200 |
---|---|---|
committer | Peter Maydell | 2016-07-14 12:48:46 +0200 |
commit | 9358450e98ed4a5350df4754863d116ff2e6186c (patch) | |
tree | c151c42717ff86db6b01c9b596eda9d9c9703ac2 /util/qemu-coroutine-lock.c | |
parent | Merge remote-tracking branch 'remotes/rth/tags/pull-rth-20160712' into staging (diff) | |
parent | Merge remote-tracking branch 'mreitz/tags/pull-block-for-kevin-2016-07-13' in... (diff) | |
download | qemu-9358450e98ed4a5350df4754863d116ff2e6186c.tar.gz qemu-9358450e98ed4a5350df4754863d116ff2e6186c.tar.xz qemu-9358450e98ed4a5350df4754863d116ff2e6186c.zip |
Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging
Block layer patches
# gpg: Signature made Wed 13 Jul 2016 12:46:17 BST
# gpg: using RSA key 0x7F09B272C88F2FD6
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>"
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74 56FE 7F09 B272 C88F 2FD6
* remotes/kevin/tags/for-upstream: (34 commits)
iotests: Make 157 actually format-agnostic
vvfat: Fix qcow write target driver specification
hmp: show all of snapshot info on every block dev in output of 'info snapshots'
hmp: use snapshot name to determine whether a snapshot is 'fully available'
qemu-iotests: Test naming of throttling groups
blockdev: Fix regression with the default naming of throttling groups
vmdk: fix metadata write regression
Improve block job rate limiting for small bandwidth values
qcow2: Fix qcow2_get_cluster_offset()
qemu-io: Use correct range limitations
qcow2: Avoid making the L1 table too big
qemu-img: Use strerror() for generic resize error
block: Remove BB options from blockdev-add
qemu-iotests: Test setting WCE with qdev
block/qdev: Allow configuring rerror/werror with qdev properties
commit: Fix use of error handling policy
block/qdev: Allow configuring WCE with qdev properties
block/qdev: Allow node name for drive properties
coroutine: move entry argument to qemu_coroutine_create
test-coroutine: prepare for the next patch
...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'util/qemu-coroutine-lock.c')
-rw-r--r-- | util/qemu-coroutine-lock.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/util/qemu-coroutine-lock.c b/util/qemu-coroutine-lock.c index da37ca7f95..22aa9abb30 100644 --- a/util/qemu-coroutine-lock.c +++ b/util/qemu-coroutine-lock.c @@ -31,13 +31,13 @@ void qemu_co_queue_init(CoQueue *queue) { - QTAILQ_INIT(&queue->entries); + QSIMPLEQ_INIT(&queue->entries); } void coroutine_fn qemu_co_queue_wait(CoQueue *queue) { Coroutine *self = qemu_coroutine_self(); - QTAILQ_INSERT_TAIL(&queue->entries, self, co_queue_next); + QSIMPLEQ_INSERT_TAIL(&queue->entries, self, co_queue_next); qemu_coroutine_yield(); assert(qemu_in_coroutine()); } @@ -55,9 +55,9 @@ void qemu_co_queue_run_restart(Coroutine *co) Coroutine *next; trace_qemu_co_queue_run_restart(co); - while ((next = QTAILQ_FIRST(&co->co_queue_wakeup))) { - QTAILQ_REMOVE(&co->co_queue_wakeup, next, co_queue_next); - qemu_coroutine_enter(next, NULL); + while ((next = QSIMPLEQ_FIRST(&co->co_queue_wakeup))) { + QSIMPLEQ_REMOVE_HEAD(&co->co_queue_wakeup, co_queue_next); + qemu_coroutine_enter(next); } } @@ -66,13 +66,13 @@ static bool qemu_co_queue_do_restart(CoQueue *queue, bool single) Coroutine *self = qemu_coroutine_self(); Coroutine *next; - if (QTAILQ_EMPTY(&queue->entries)) { + if (QSIMPLEQ_EMPTY(&queue->entries)) { return false; } - while ((next = QTAILQ_FIRST(&queue->entries)) != NULL) { - QTAILQ_REMOVE(&queue->entries, next, co_queue_next); - QTAILQ_INSERT_TAIL(&self->co_queue_wakeup, next, co_queue_next); + while ((next = QSIMPLEQ_FIRST(&queue->entries)) != NULL) { + QSIMPLEQ_REMOVE_HEAD(&queue->entries, co_queue_next); + QSIMPLEQ_INSERT_TAIL(&self->co_queue_wakeup, next, co_queue_next); trace_qemu_co_queue_next(next); if (single) { break; @@ -97,19 +97,19 @@ bool qemu_co_enter_next(CoQueue *queue) { Coroutine *next; - next = QTAILQ_FIRST(&queue->entries); + next = QSIMPLEQ_FIRST(&queue->entries); if (!next) { return false; } - QTAILQ_REMOVE(&queue->entries, next, co_queue_next); - qemu_coroutine_enter(next, NULL); + QSIMPLEQ_REMOVE_HEAD(&queue->entries, co_queue_next); + qemu_coroutine_enter(next); return true; } bool qemu_co_queue_empty(CoQueue *queue) { - return QTAILQ_FIRST(&queue->entries) == NULL; + return QSIMPLEQ_FIRST(&queue->entries) == NULL; } void qemu_co_mutex_init(CoMutex *mutex) |