23 #ifndef _RTEMS_PROFILING_H 24 #define _RTEMS_PROFILING_H 184 #define RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS 4 323 uint32_t indentation_level,
324 const char *indentation
uint32_t processor_index
The processor index of this profiling data.
Definition: profiling.h:110
rtems_profiling_header header
The profiling data header.
Definition: profiling.h:208
uint32_t max_interrupt_time
The maximum time spent to process a single sequence of nested interrupts in nanoseconds.
Definition: profiling.h:160
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:218
SMP lock profiling data.
Definition: profiling.h:204
Type of per-CPU profiling data.
Definition: profiling.h:71
rtems_profiling_smp_lock smp_lock
SMP lock profiling data if indicated by the header.
Definition: profiling.h:283
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:123
uint32_t max_interrupt_delay
The maximum interrupt delay in nanoseconds if supported by the hardware.
Definition: profiling.h:148
uint64_t total_section_time
Total lock section time in nanoseconds.
Definition: profiling.h:251
uint32_t max_thread_dispatch_disabled_time
The maximum time of disabled thread dispatching in nanoseconds.
Definition: profiling.h:115
const char * name
The lock name.
Definition: profiling.h:213
Collection of profiling data.
Definition: profiling.h:269
#define RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS
Count of lock contention counters for SMP lock profiling.
Definition: profiling.h:184
rtems_profiling_header header
Header to specify the actual profiling data.
Definition: profiling.h:273
uint64_t total_interrupt_time
Total time of interrupt processing in nanoseconds.
Definition: profiling.h:178
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:294
rtems_profiling_header header
The profiling data header.
Definition: profiling.h:105
Per-CPU profiling data.
Definition: profiling.h:101
uint64_t total_acquire_time
Total lock acquire time in nanoseconds.
Definition: profiling.h:241
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:134
uint64_t interrupt_count
Count of times when the interrupt nest level changes from zero to one.
Definition: profiling.h:168
rtems_profiling_per_cpu per_cpu
Per-CPU profiling data if indicated by the header.
Definition: profiling.h:278
uint64_t usage_count
The count of lock uses.
Definition: profiling.h:230
Type of SMP lock profiling data.
Definition: profiling.h:78
uint32_t max_section_time
The maximum lock section time in nanoseconds.
Definition: profiling.h:223
rtems_profiling_type
Type of profiling data.
Definition: profiling.h:65