1.4. LCB Statistics

The LCBD maintains several different counters for various events that occur at the driver level. For each type of counter the LCBD provides an interface for retrieving the counter and for clearing the counter.

1.4.1. Hardware Statistics

The LCBD will maintain a count of the number of interrupts received. The interface to this counter is shown below:

int LCB_getIrqCount(LCB *lcb, unsigned short *count);

int LCB_clearIrqCount(LCB *lcb);

In addition the LCB defines four PCI/DMA errors that can occur. The LCBD maintains 16-bit counters for each of the possible error types and provides an interface for retrieving and clearing these counters. These functions are shown below.

int LCB_getErrCount(LCB *lcb, LCB_ErrorType err, unsigned short *count);

int LCB_clearErrCount(LCB *lcb, LATp_ErrorType err);

The LCB_ErrorType parameter is an enumerated type having four possible values, one for each of the four possible error types. The possible errors are:

1.4.2. LATp I/O Statistics

LATp defines 16-bit transmitter statistics and receiver statistics for all nodes on a fabric [huffer2]. The LCBD maintains these statistics for the LCB's communications on the command/response fabric and the event fabric. Functions for retrieving and clearing these statistics are declared below.

int LCB_getStats(LCB *lcb, LATp_FABRIC fabric, unsigned short *rx_Stats, unsigned short *tx_Stats);

int LCB_clearStats(LCB *lcb, LATp_FABRIC fabric);

The fabric parameter is an enumerated type having two possible values, one for each of the two fabrics the LCB supports.