OpenSDN source code
KSyncBridgeMemory Class Reference

#include <ksync_bridge_table.h>

Inheritance diagram for KSyncBridgeMemory:
Collaboration diagram for KSyncBridgeMemory:

Public Member Functions

 KSyncBridgeMemory (KSync *ksync, uint32_t minor_id)
 
virtual ~KSyncBridgeMemory ()
 
virtual void InitTest ()
 
virtual void Shutdown ()
 
virtual int get_entry_size ()
 
virtual bool IsInactiveEntry (uint32_t idx, uint8_t &gen_id)
 
virtual void SetTableSize ()
 
virtual int EncodeReq (nl_client *nl, uint32_t attr_len)
 
virtual void CreateProtoAuditEntry (uint32_t index, uint8_t gen_id)
 
vr_bridge_entry * GetBridgeEntry (uint32_t idx)
 
- Public Member Functions inherited from KSyncMemory
 KSyncMemory (KSync *ksync, uint32_t minor_id)
 
virtual ~KSyncMemory ()
 
virtual void Init ()
 
void InitMem (void *hpmem)
 
bool AuditProcess ()
 
void MapSharedMemory ()
 
void GetTableSize ()
 
int GetKernelTableSize ()
 
void UnmapMemTest ()
 
virtual void DecrementHoldFlowCounter ()
 
virtual void IncrementHoldFlowCounter ()
 
virtual void UpdateAgentHoldFlowCounter ()
 
KSync * ksync () const
 
void set_major_devid (int id)
 
void set_table_size (int count)
 
void set_table_path (const std::string &path)
 
uint32_t audit_timeout () const
 
void Mmap (bool unlink, void *khpmem, bool kernel_mode)
 
uint32_t table_entries_count ()
 

Private Attributes

vr_bridge_entry * bridge_table_
 

Additional Inherited Members

- Static Public Attributes inherited from KSyncMemory
static const uint32_t kAuditSweepTime = 180
 
static const uint32_t kAuditYieldTimer = 100
 
static const uint32_t kAuditTimeout = (5 * 1000 * 1000)
 
static const uint32_t kAuditYieldMax = (1024)
 
static const uint32_t kAuditYieldMin = (100)
 
- Protected Attributes inherited from KSyncMemory
KSync * ksync_
 
void * table_
 
std::string table_path_
 
int major_devid_
 
int minor_devid_
 
int table_size_
 
uint32_t table_entries_count_
 
Timer * audit_timer_
 
uint32_t audit_timeout_
 
uint32_t audit_yield_
 
uint32_t audit_interval_
 
uint32_t audit_idx_
 
std::list< AuditEntry > audit_list_
 

Detailed Description

Definition at line 18 of file ksync_bridge_table.h.

Constructor & Destructor Documentation

◆ KSyncBridgeMemory()

KSyncBridgeMemory::KSyncBridgeMemory ( KSync *  ksync,
uint32_t  minor_id 
)

Definition at line 41 of file ksync_bridge_table.cc.

◆ ~KSyncBridgeMemory()

KSyncBridgeMemory::~KSyncBridgeMemory ( )
virtual

Definition at line 46 of file ksync_bridge_table.cc.

Member Function Documentation

◆ CreateProtoAuditEntry()

void KSyncBridgeMemory::CreateProtoAuditEntry ( uint32_t  index,
uint8_t  gen_id 
)
virtual

Implements KSyncMemory.

Definition at line 74 of file ksync_bridge_table.cc.

Here is the call graph for this function:

◆ EncodeReq()

int KSyncBridgeMemory::EncodeReq ( nl_client *  nl,
uint32_t  attr_len 
)
virtual

Implements KSyncMemory.

Definition at line 49 of file ksync_bridge_table.cc.

◆ get_entry_size()

int KSyncBridgeMemory::get_entry_size ( )
virtual

Implements KSyncMemory.

Definition at line 115 of file ksync_bridge_table.cc.

◆ GetBridgeEntry()

vr_bridge_entry * KSyncBridgeMemory::GetBridgeEntry ( uint32_t  idx)

Definition at line 94 of file ksync_bridge_table.cc.

◆ InitTest()

void KSyncBridgeMemory::InitTest ( )
virtual

Reimplemented from KSyncMemory.

Definition at line 101 of file ksync_bridge_table.cc.

Here is the call graph for this function:

◆ IsInactiveEntry()

bool KSyncBridgeMemory::IsInactiveEntry ( uint32_t  idx,
uint8_t &  gen_id 
)
virtual

Implements KSyncMemory.

Definition at line 63 of file ksync_bridge_table.cc.

Here is the call graph for this function:

◆ SetTableSize()

void KSyncBridgeMemory::SetTableSize ( )
virtual

Reimplemented from KSyncMemory.

Definition at line 119 of file ksync_bridge_table.cc.

◆ Shutdown()

void KSyncBridgeMemory::Shutdown ( void  )
virtual

Reimplemented from KSyncMemory.

Definition at line 110 of file ksync_bridge_table.cc.

Here is the call graph for this function:

Member Data Documentation

◆ bridge_table_

vr_bridge_entry* KSyncBridgeMemory::bridge_table_
private

Definition at line 32 of file ksync_bridge_table.h.


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