29 lines
738 B
C
29 lines
738 B
C
|
#ifndef JEMALLOC_INTERNAL_WITNESS_STRUCTS_H
|
||
|
#define JEMALLOC_INTERNAL_WITNESS_STRUCTS_H
|
||
|
|
||
|
struct witness_s {
|
||
|
/* Name, used for printing lock order reversal messages. */
|
||
|
const char *name;
|
||
|
|
||
|
/*
|
||
|
* Witness rank, where 0 is lowest and UINT_MAX is highest. Witnesses
|
||
|
* must be acquired in order of increasing rank.
|
||
|
*/
|
||
|
witness_rank_t rank;
|
||
|
|
||
|
/*
|
||
|
* If two witnesses are of equal rank and they have the samp comp
|
||
|
* function pointer, it is called as a last attempt to differentiate
|
||
|
* between witnesses of equal rank.
|
||
|
*/
|
||
|
witness_comp_t *comp;
|
||
|
|
||
|
/* Opaque data, passed to comp(). */
|
||
|
void *opaque;
|
||
|
|
||
|
/* Linkage for thread's currently owned locks. */
|
||
|
ql_elm(witness_t) link;
|
||
|
};
|
||
|
|
||
|
#endif /* JEMALLOC_INTERNAL_WITNESS_STRUCTS_H */
|