The Pedigree Project  0.1
Public Types | Public Member Functions | Public Attributes | List of all members
Cache::CachePage Struct Reference
+ Collaboration diagram for Cache::CachePage:

Public Types

enum  Status { Editing, EditTransition, ChecksumChanging, ChecksumStable }
 Current page status.
 

Public Member Functions

bool checkChecksum (uint64_t other[2]) const
 Check the checksum against another.
 
bool checkZeroChecksum () const
 Check for an unset checksum.
 

Public Attributes

uintptr_t key
 Key for this page.
 
uintptr_t location
 The location of this page in memory.
 
size_t refcnt
 
uint64_t checksum [2]
 Checksum of the page's contents (for dirty detection).
 
bool checksumChanging
 Marker to check that a page's contents are in flux.
 
enum Cache::CachePage::Status status
 
CachePagepNext
 Linked list components for LRU.
 
CachePagepPrev
 

Detailed Description

Definition at line 121 of file Cache.h.

Member Data Documentation

size_t Cache::CachePage::refcnt

Reference count to handle release() being called with multiple threads having access to the page.

Definition at line 131 of file Cache.h.

Referenced by Cache::empty(), Cache::evict(), Cache::insert(), Cache::lookup(), Cache::pin(), and Cache::release().


The documentation for this struct was generated from the following files: