Skip to content

Commit

Permalink
coroutine-lock: add missing coroutine_fn annotation to prototypes
Browse files Browse the repository at this point in the history
The functions are marked coroutine_fn in the definition.

Signed-off-by: Alberto Faria <afaria@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20221013123711.620631-7-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
  • Loading branch information
albertofaria authored and kevmw committed Oct 27, 2022
1 parent 16bb776 commit d63f006
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions include/qemu/coroutine.h
Expand Up @@ -276,7 +276,7 @@ void qemu_co_rwlock_init(CoRwlock *lock);
* of a parallel writer, control is transferred to the caller of the current
* coroutine.
*/
void qemu_co_rwlock_rdlock(CoRwlock *lock);
void coroutine_fn qemu_co_rwlock_rdlock(CoRwlock *lock);

/**
* Write Locks the CoRwlock from a reader. This is a bit more efficient than
Expand All @@ -285,28 +285,28 @@ void qemu_co_rwlock_rdlock(CoRwlock *lock);
* to the caller of the current coroutine; another writer might run while
* @qemu_co_rwlock_upgrade blocks.
*/
void qemu_co_rwlock_upgrade(CoRwlock *lock);
void coroutine_fn qemu_co_rwlock_upgrade(CoRwlock *lock);

/**
* Downgrades a write-side critical section to a reader. Downgrading with
* @qemu_co_rwlock_downgrade never blocks, unlike @qemu_co_rwlock_unlock
* followed by @qemu_co_rwlock_rdlock. This makes it more efficient, but
* may also sometimes be necessary for correctness.
*/
void qemu_co_rwlock_downgrade(CoRwlock *lock);
void coroutine_fn qemu_co_rwlock_downgrade(CoRwlock *lock);

/**
* Write Locks the mutex. If the lock cannot be taken immediately because
* of a parallel reader, control is transferred to the caller of the current
* coroutine.
*/
void qemu_co_rwlock_wrlock(CoRwlock *lock);
void coroutine_fn qemu_co_rwlock_wrlock(CoRwlock *lock);

/**
* Unlocks the read/write lock and schedules the next coroutine that was
* waiting for this lock to be run.
*/
void qemu_co_rwlock_unlock(CoRwlock *lock);
void coroutine_fn qemu_co_rwlock_unlock(CoRwlock *lock);

typedef struct QemuCoSleep {
Coroutine *to_wake;
Expand Down

0 comments on commit d63f006

Please sign in to comment.