34 |
* macros. They take one argument: a name string. |
* macros. They take one argument: a name string. |
35 |
* |
* |
36 |
* $Log$ |
* $Log$ |
37 |
|
* Revision 1.19 2002/05/28 23:55:58 roland |
38 |
|
* 2002-05-28 Roland McGrath <roland@frob.com> |
39 |
|
* |
40 |
|
* * cthreads.h (hurd_condition_wait, condition_implies, |
41 |
|
* condition_unimplies): Restore decls lost in merge. |
42 |
|
* (mutex_clear): Define as mutex_init instead of bogon (lost in merge). |
43 |
|
* |
44 |
* Revision 1.18 2002/05/27 02:50:10 roland |
* Revision 1.18 2002/05/27 02:50:10 roland |
45 |
* 2002-05-26 Roland McGrath <roland@frob.com> |
* 2002-05-26 Roland McGrath <roland@frob.com> |
46 |
* |
* |
396 |
MACRO_END |
MACRO_END |
397 |
#define mutex_set_name(m, x) ((m)->name = (x)) |
#define mutex_set_name(m, x) ((m)->name = (x)) |
398 |
#define mutex_name(m) ((m)->name != 0 ? (m)->name : "?") |
#define mutex_name(m) ((m)->name != 0 ? (m)->name : "?") |
399 |
#define mutex_clear(m) /* nop */??? |
#define mutex_clear(m) mutex_init(m) |
400 |
#define mutex_free(m) free((m)) |
#define mutex_free(m) free((m)) |
401 |
|
|
402 |
#define mutex_try_lock(m) spin_try_lock(&(m)->held) |
#define mutex_try_lock(m) spin_try_lock(&(m)->held) |
491 |
extern void cond_broadcast(condition_t _cond); |
extern void cond_broadcast(condition_t _cond); |
492 |
|
|
493 |
extern void condition_wait(condition_t _cond, mutex_t _mutex); |
extern void condition_wait(condition_t _cond, mutex_t _mutex); |
494 |
|
extern int hurd_condition_wait(condition_t _cond, mutex_t _mutex); |
495 |
|
|
496 |
|
extern void condition_implies(condition_t _implicator, |
497 |
|
condition_t _implicatand); |
498 |
|
extern void condition_unimplies(condition_t _implicator, |
499 |
|
condition_t _implicatand); |
500 |
|
|
501 |
/* |
/* |
502 |
* Threads. |
* Threads. |