46#ifdef LOSCFG_KERNEL_SPINDEP
49#ifdef LOSCFG_KERNEL_MUXDEP
52#ifdef LOSCFG_KERNEL_SEMDEP
55#ifdef LOSCFG_PTHREAD_MUXDEP
70#ifdef LOSCFG_KERNEL_LOCKDEP
73#define LOCKDEP_GET_ADDR(lockDep, index) ((lockDep)->heldLocks[(index)].lockAddr)
76#define MAX_LOCK_DEPTH 16U
80 LOCKDEP_ERR_DOUBLE_LOCK,
81 LOCKDEP_ERR_DEAD_LOCK,
82 LOCKDEP_ERR_UNLOCK_WITHOUT_LOCK,
97 HeldLocks heldLocks[MAX_LOCK_DEPTH];
118#ifdef LOSCFG_KERNEL_SPINDEP
119extern VOID OsLockdepClearSpinlocks(
VOID);
120#define LOCKDEP_CHECK_INIT(lock) do { \
121 OsLockDepCheckInit(LOCK_SPIN, &lock->lockCheck, 0); \
122 lock->lockCheck.name = "spinlock"; \
124#define LOCKDEP_CHECK_IN(lock) OsLockDepCheckIn(LOCK_SPIN, &lock->lockCheck, 0)
125#define LOCKDEP_RECORD(lock) OsLockDepRecord(LOCK_SPIN, &lock->lockCheck, 0)
126#define LOCKDEP_CHECK_OUT(lock) OsLockDepCheckOut(LOCK_SPIN, &lock->lockCheck, 0)
127#define LOCKDEP_CLEAR_LOCKS() OsLockdepClearSpinlocks()
129#define LOCKDEP_CHECK_INIT(lock)
130#define LOCKDEP_CHECK_IN(lock)
131#define LOCKDEP_RECORD(lock)
132#define LOCKDEP_CHECK_OUT(lock)
133#define LOCKDEP_CLEAR_LOCKS()
LockType
Definition los_lockdep.h:45
@ LOCK_TYPE_MAX
Definition los_lockdep.h:58
void OsLockDepRecord(enum LockType type, LosLockCheck *lock, UINT32 id)
void OsLockDepCheckDeInit(enum LockType type, LosLockCheck *lock, UINT32 id)
void OsLockDepCheckIn(enum LockType type, LosLockCheck *lock, UINT32 id)
void OsLockDepCheckOut(enum LockType type, LosLockCheck *lock, UINT32 id)
void OsLockDepCheckInit(enum LockType type, LosLockCheck *lock, UINT32 id)
signed int INT32
Definition los_typedef.h:55
unsigned long long UINT64
Definition los_typedef.h:72
#define VOID
Definition los_typedef.h:88
unsigned int UINT32
Definition los_typedef.h:52
char CHAR
Definition los_typedef.h:58
osal_u8 type
Definition oal_net.h:0
Definition los_lockdep.h:62
CHAR * name
Definition los_lockdep.h:65
enum LockType type
Definition los_lockdep.h:63
void * owner
Definition los_lockdep.h:67
UINT32 id
Definition los_lockdep.h:64
UINT32 cpuId
Definition los_lockdep.h:66