23 #ifndef _RTEMS_PROFILING_H 24 #define _RTEMS_PROFILING_H 186 #define RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS 4 325 uint32_t indentation_level,
326 const char *indentation
uint32_t processor_index
The processor index of this profiling data.
Definition: profiling.h:112
rtems_profiling_header header
The profiling data header.
Definition: profiling.h:210
uint32_t max_interrupt_time
The maximum time spent to process a single sequence of nested interrupts in nanoseconds.
Definition: profiling.h:162
int rtems_profiling_report_xml(const char *name, const rtems_printer *printer, uint32_t indentation_level, const char *indentation)
Reports profiling data as XML.
Definition: profilingreportxml.c:272
uint32_t max_acquire_time
The maximum lock acquire time in nanoseconds.
Definition: profiling.h:220
SMP lock profiling data.
Definition: profiling.h:206
Type of per-CPU profiling data.
Definition: profiling.h:73
rtems_profiling_smp_lock smp_lock
SMP lock profiling data if indicated by the header.
Definition: profiling.h:285
uint64_t thread_dispatch_disabled_count
Count of times when the thread dispatch disable level changes from zero to one in thread context.
Definition: profiling.h:125
uint32_t max_interrupt_delay
The maximum interrupt delay in nanoseconds if supported by the hardware.
Definition: profiling.h:150
uint64_t total_section_time
Total lock section time in nanoseconds.
Definition: profiling.h:253
uint32_t max_thread_dispatch_disabled_time
The maximum time of disabled thread dispatching in nanoseconds.
Definition: profiling.h:117
const char * name
The lock name.
Definition: profiling.h:215
Collection of profiling data.
Definition: profiling.h:271
#define RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS
Count of lock contention counters for SMP lock profiling.
Definition: profiling.h:186
rtems_profiling_header header
Header to specify the actual profiling data.
Definition: profiling.h:275
uint64_t total_interrupt_time
Total time of interrupt processing in nanoseconds.
Definition: profiling.h:180
void rtems_profiling_iterate(rtems_profiling_visitor visitor, void *visitor_arg)
Iterates through all profiling data of the system.
Definition: profilingiterate.c:141
void(* rtems_profiling_visitor)(void *arg, const rtems_profiling_data *data)
Visitor function for the profiling iteration.
Definition: profiling.h:296
rtems_profiling_header header
The profiling data header.
Definition: profiling.h:107
Per-CPU profiling data.
Definition: profiling.h:103
uint64_t total_acquire_time
Total lock acquire time in nanoseconds.
Definition: profiling.h:243
User print interface to the bspIO print plug in.
uint64_t total_thread_dispatch_disabled_time
Total time of disabled thread dispatching in nanoseconds.
Definition: profiling.h:136
uint64_t interrupt_count
Count of times when the interrupt nest level changes from zero to one.
Definition: profiling.h:170
rtems_profiling_per_cpu per_cpu
Per-CPU profiling data if indicated by the header.
Definition: profiling.h:280
uint64_t usage_count
The count of lock uses.
Definition: profiling.h:232
Type of SMP lock profiling data.
Definition: profiling.h:80
uint32_t max_section_time
The maximum lock section time in nanoseconds.
Definition: profiling.h:225
rtems_profiling_type
Type of profiling data.
Definition: profiling.h:67