class StackDepot

Defined at line 42 of file ../../third_party/scudo/src/stack_depot.h

Public Methods

void init (u32 RingSz, u32 TabSz)

Defined at line 95 of file ../../third_party/scudo/src/stack_depot.h

bool isValid (uptr BufSize)

Ensure that RingSize, RingMask and TabMask are set up in a way that

all accesses are within range of BufSize.

Defined at line 105 of file ../../third_party/scudo/src/stack_depot.h

u32 insert (uptr * Begin, uptr * End)

Insert hash of the stack trace [Begin, End) into the stack depot, and

return the hash.

Defined at line 133 of file ../../third_party/scudo/src/stack_depot.h

bool find (u32 Hash, uptr * RingPosPtr, uptr * SizePtr)

Look up a stack trace by hash. Returns true if successful. The trace may be

accessed via operator[] passing indexes between *RingPosPtr and

*RingPosPtr + *SizePtr.

Defined at line 164 of file ../../third_party/scudo/src/stack_depot.h

u64 at (uptr RingPos)

Defined at line 189 of file ../../third_party/scudo/src/stack_depot.h

void disable ()

This is done for the purpose of fork safety in multithreaded programs and

does not fully disable StackDepot. In particular, find() still works and

only insert() is blocked.

Defined at line 197 of file ../../third_party/scudo/src/stack_depot.h

void enable ()

Defined at line 199 of file ../../third_party/scudo/src/stack_depot.h