qemu-coroutine: remove qatomic_mb_read()
Replace with an explicit barrier and a comment. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
4592eaf387
commit
512c90c90e
@ -127,9 +127,13 @@ void qemu_aio_coroutine_enter(AioContext *ctx, Coroutine *co)
|
||||
Coroutine *to = QSIMPLEQ_FIRST(&pending);
|
||||
CoroutineAction ret;
|
||||
|
||||
/* Cannot rely on the read barrier for to in aio_co_wake(), as there are
|
||||
* callers outside of aio_co_wake() */
|
||||
const char *scheduled = qatomic_mb_read(&to->scheduled);
|
||||
/*
|
||||
* Read to before to->scheduled; pairs with qatomic_cmpxchg in
|
||||
* qemu_co_sleep(), aio_co_schedule() etc.
|
||||
*/
|
||||
smp_read_barrier_depends();
|
||||
|
||||
const char *scheduled = qatomic_read(&to->scheduled);
|
||||
|
||||
QSIMPLEQ_REMOVE_HEAD(&pending, co_queue_next);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user