Mem Namespace Reference

Memory Management.

Classes

class  AllocatorProxy
 
class  Meter
 

Functions

void Init ()
 
void Report ()
 
void Stats (StoreEntry *)
 
void CleanIdlePools (void *unused)
 
void Report (std::ostream &)
 
void PoolReport (const MemPoolStats *mp_st, const MemPoolMeter *AllMeter, std::ostream &)
 
void ZeroSensitiveMemory (void *dst, const size_t len)
 

Function Documentation

◆ CleanIdlePools()

void Mem::CleanIdlePools ( void *  unused)

◆ Init()

void Mem::Init ( void  )

Then initialize all pools.

Starting with generic 2kB - 64kB buffr pools, then specific object types.
It does not hurt much to have a lot of pools since sizeof(MemPool) is small; someday we will figure out what to do with all the entries here that are never used or used only once; perhaps we should simply use malloc() for those? @?@

Definition at line 425 of file old_api.cc.

References GetPool(), MEM_16K_BUF, MEM_2K_BUF, MEM_32K_BUF, MEM_4K_BUF, MEM_64K_BUF, MEM_8K_BUF, MEM_DREAD_CTRL, MEM_DWRITE_Q, MEM_MD5_DIGEST, memDataInit(), Mgr::RegisterAction(), MemAllocator::setChunkSize(), SQUID_MD5_DIGEST_LENGTH, and Stats().

Referenced by testRock::commonInit(), commonInit(), testUfs::commonInit(), fake_auth_setup(), testHttp1Parser::globalSetup(), main(), testCacheManager::setUp(), testDiskIO::setUp(), testEvent::setUp(), testHttpReply::setUp(), testHttpRequest::setUp(), testPackableStream::setUp(), testString::setUp(), testUriScheme::setUp(), testURL::setUp(), SquidMain(), and testSBuf::testSBufConstructDestructAfterMemInit().

◆ PoolReport()

◆ Report() [1/2]

void Mem::Report ( )

◆ Report() [2/2]

◆ Stats()

void Mem::Stats ( StoreEntry sentry)

◆ ZeroSensitiveMemory()

void Mem::ZeroSensitiveMemory ( void *  dst,
const size_t  len 
)
inline

zeros the given memory area while disallowing the compiler to skip (i.e. optimize away) this cleanup, unlike a regular call to std::memset() or alike

Definition at line 19 of file Sensitive.h.

References assert.

Referenced by nmasldap_get_password(), and nmasldap_get_simple_pwd().

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors