RTEMS: rtems_record_client_per_cpu Struct Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Data Fields
rtems_record_client_per_cpu Struct Reference
API » Tracing » Event Recording

## Data Fields
struct {
uint64_t bt
uint32_t time_at_bt
uint32_t time_last
uint32_t time_accumulated
} | uptime
| Event time to uptime maintenance.
uint32_t | tail [2]
| The current or previous ring buffer tail.
uint32_t | head [2]
| The current or previous ring buffer head.
size_t | tail_head_index
| The index of the tail and head members.
uint32_t | overflow
| Count of lost items due to ring buffer overflows.
bool | hold_back
| If true, then hold back items for overflow or initial ramp up processing.
rtems_record_item_64 * | items
| Storage for hold back items.
size_t | item_index
| The index for the next hold back item.

## Field Documentation

## ◆ head

uint32_t rtems_record_client_per_cpu::head[2]

The current or previous ring buffer head.

Indexed by the tail_head_index member.

## ◆ items

rtems_record_item_64* rtems_record_client_per_cpu::items

Storage for hold back items.

In case of a ring buffer overflow, the rtems_record_drain() will push the complete ring buffer content to the client. While the items are processed by the client, new items may overwrite some items being processed. The overwritten items can be detected in the following iteration once the next tail/head information is pushed to the client.

In case of the initial ramp up, the items are stored in the hold back buffer to determine the uptime of the first event.

## ◆ tail

uint32_t rtems_record_client_per_cpu::tail[2]

The current or previous ring buffer tail.

Indexed by the tail_head_index member.

## ◆ tail_head_index

size_t rtems_record_client_per_cpu::tail_head_index

The index of the tail and head members.

This index is used to maintain the current and previous tail/head positions to detect ring buffer overflows.

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

- cpukit/include/rtems/recordclient.h