X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/4b6190b935dd75d8ddd514a05c7c7343e32c0cdc..refs/heads/nov/revmap:/lunaix-os/includes/lunaix/ds/waitq.h?ds=inline diff --git a/lunaix-os/includes/lunaix/ds/waitq.h b/lunaix-os/includes/lunaix/ds/waitq.h index 4014d05..4469e1c 100644 --- a/lunaix-os/includes/lunaix/ds/waitq.h +++ b/lunaix-os/includes/lunaix/ds/waitq.h @@ -20,9 +20,27 @@ waitq_empty(waitq_t* waitq) return llist_empty(&waitq->waiters); } +static inline void +waitq_cancel_wait(waitq_t* waitq) +{ + llist_delete(&waitq->waiters); +} + +void +prepare_to_wait(waitq_t* waitq); + +void +try_wait(); + +void +try_wait_check_stall(); + void pwait(waitq_t* queue); +void +pwait_check_stall(waitq_t* queue); + void pwake_one(waitq_t* queue);