2010-04-11 20:07:39 +04:00
|
|
|
/*
|
|
|
|
* Copyright 2010, Ingo Weinhold, ingo_weinhold@gmx.de.
|
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef _SYSTEM_USER_MUTEX_DEFS_H
|
|
|
|
#define _SYSTEM_USER_MUTEX_DEFS_H
|
|
|
|
|
|
|
|
|
2023-06-13 19:43:00 +03:00
|
|
|
// flags passed to _kern_mutex_{un}block
|
2023-06-19 23:40:33 +03:00
|
|
|
// (same uint32 also used for B_TIMEOUT, etc.)
|
2023-06-13 19:43:00 +03:00
|
|
|
#define B_USER_MUTEX_SHARED 0x40000000
|
|
|
|
// Mutex is in shared memory.
|
2010-04-11 20:07:39 +04:00
|
|
|
#define B_USER_MUTEX_UNBLOCK_ALL 0x80000000
|
|
|
|
// All threads currently waiting on the mutex will be unblocked. The mutex
|
|
|
|
// state will be locked.
|
|
|
|
|
|
|
|
|
|
|
|
// mutex value flags
|
|
|
|
#define B_USER_MUTEX_LOCKED 0x01
|
|
|
|
#define B_USER_MUTEX_WAITING 0x02
|
|
|
|
#define B_USER_MUTEX_DISABLED 0x04
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* _SYSTEM_USER_MUTEX_DEFS_H */
|