Subversion Repositories HelenOS-historic

Rev

Rev 1375 | Rev 1702 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1375 Rev 1502
Line 50... Line 50...
50
    int missed_wakeups; /**< Number of waitq_wakeup() calls that didn't find a thread to wake up. */
50
    int missed_wakeups; /**< Number of waitq_wakeup() calls that didn't find a thread to wake up. */
51
    link_t head;        /**< List of sleeping threads for wich there was no missed_wakeup. */
51
    link_t head;        /**< List of sleeping threads for wich there was no missed_wakeup. */
52
};
52
};
53
 
53
 
54
#define waitq_sleep(wq) \
54
#define waitq_sleep(wq) \
55
    waitq_sleep_timeout((wq),SYNCH_NO_TIMEOUT,SYNCH_BLOCKING)
55
    waitq_sleep_timeout((wq),SYNCH_NO_TIMEOUT,SYNCH_FLAGS_NONE)
56
 
56
 
57
extern void waitq_initialize(waitq_t *wq);
57
extern void waitq_initialize(waitq_t *wq);
58
extern int waitq_sleep_timeout(waitq_t *wq, __u32 usec, int nonblocking);
58
extern int waitq_sleep_timeout(waitq_t *wq, __u32 usec, int flags);
59
extern ipl_t waitq_sleep_prepare(waitq_t *wq);
59
extern ipl_t waitq_sleep_prepare(waitq_t *wq);
60
extern int waitq_sleep_timeout_unsafe(waitq_t *wq, __u32 usec, int nonblocking);
60
extern int waitq_sleep_timeout_unsafe(waitq_t *wq, __u32 usec, int flags);
61
extern void waitq_sleep_finish(waitq_t *wq, int rc, ipl_t ipl);
61
extern void waitq_sleep_finish(waitq_t *wq, int rc, ipl_t ipl);
62
extern void waitq_wakeup(waitq_t *wq, bool all);
62
extern void waitq_wakeup(waitq_t *wq, bool all);
63
extern void _waitq_wakeup_unsafe(waitq_t *wq, bool all);
63
extern void _waitq_wakeup_unsafe(waitq_t *wq, bool all);
64
extern void waitq_interrupt_sleep(thread_t *t);
64
extern void waitq_interrupt_sleep(thread_t *t);
65
 
65