m_phlog_base_s Struct Reference

#include <phlog_base.h>

List of all members.

Public Attributes

uint64_t buffer [CHUNK_SIZE/sizeof(uint64_t)]
uint64_t buffer_count
uint64_t * nvphlog
m_phlog_base_nvmd_tnvmd
uint64_t head
uint64_t tail
uint64_t read_index
uint64_t pad1 [8]
uint64_t stat_wait_for_trunc
uint64_t stat_wait_time_for_trunc


Detailed Description

The volatile representation of the physical log

To allow a consumer read metadata and values without locking we need to ensure that writes are atomic. x86 guarantees atomicity of word writes if the words are aligned. All fields are word-sized so that when the whole structure is word aligned, each field is word-aligned.

Definition at line 102 of file phlog_base.h.


Member Data Documentation

uint64_t m_phlog_base_s::buffer[CHUNK_SIZE/sizeof(uint64_t)]

software buffer to collect log writes till we form a complete chunk

Definition at line 103 of file phlog_base.h.

uint64_t m_phlog_base_s::buffer_count

number of valid words in the buffer

Definition at line 104 of file phlog_base.h.

Referenced by m_phlog_base_init().

m_phlog_base_nvmd_t* m_phlog_base_s::nvmd

points to the non-volatile metadata

Definition at line 106 of file phlog_base.h.

Referenced by m_phlog_base_init(), and m_phlog_base_truncate_async().

uint64_t* m_phlog_base_s::nvphlog

points to the non-volatile physical log

Definition at line 105 of file phlog_base.h.

Referenced by m_phlog_base_init().

uint64_t m_phlog_base_s::pad1[8]

some padding to avoid having statistics in the same cacheline with metadata

Definition at line 112 of file phlog_base.h.

uint64_t m_phlog_base_s::stat_wait_for_trunc

number of times waited for asynchronous truncation

Definition at line 113 of file phlog_base.h.

Referenced by m_phlog_base_init().

uint64_t m_phlog_base_s::stat_wait_time_for_trunc

total time waited for asynchronous truncation

Definition at line 114 of file phlog_base.h.

Referenced by m_phlog_base_init().


The documentation for this struct was generated from the following file:
Generated on Sat Apr 23 11:43:36 2011 for Mnemosyne by  doxygen 1.4.7