RTEMS
Files | Functions
Profiling Support

Profiling support. More...

Files

file  profiling.h
 Profiling Support API.
 

Functions

static void _Profiling_Thread_dispatch_disable (Per_CPU_Control *cpu, uint32_t previous_thread_dispatch_disable_level)
 Disables the thread dispatch if the previous thread dispatch disable level is zero. More...
 
static void _Profiling_Thread_dispatch_disable_critical (Per_CPU_Control *cpu, uint32_t previous_thread_dispatch_disable_level, const ISR_lock_Context *lock_context)
 Disables the thread dispatch. More...
 
static void _Profiling_Thread_dispatch_enable (Per_CPU_Control *cpu, uint32_t new_thread_dispatch_disable_level)
 Enables the thread dispatch. More...
 
static void _Profiling_Update_max_interrupt_delay (Per_CPU_Control *cpu, CPU_Counter_ticks interrupt_delay)
 Updates the maximum interrupt delay. More...
 
void _Profiling_Outer_most_interrupt_entry_and_exit (Per_CPU_Control *cpu, CPU_Counter_ticks interrupt_entry_instant, CPU_Counter_ticks interrupt_exit_instant)
 Updates the interrupt profiling statistics. More...
 

Detailed Description

Profiling support.

Function Documentation

◆ _Profiling_Outer_most_interrupt_entry_and_exit()

void _Profiling_Outer_most_interrupt_entry_and_exit ( Per_CPU_Control cpu,
CPU_Counter_ticks  interrupt_entry_instant,
CPU_Counter_ticks  interrupt_exit_instant 
)

Updates the interrupt profiling statistics.

Must be called with the interrupt stack and before the thread dispatch disable level is decremented.

Parameters
cpuThe cpu control.
interrupt_entry_instantThe instant that the interrupt occured.
interrupt_exit_instantThe instant in which the interrupt was exited.

◆ _Profiling_Thread_dispatch_disable()

static void _Profiling_Thread_dispatch_disable ( Per_CPU_Control cpu,
uint32_t  previous_thread_dispatch_disable_level 
)
inlinestatic

Disables the thread dispatch if the previous thread dispatch disable level is zero.

Parameters
[out]cpuThe cpu control.
previous_thread_dispatch_disable_levelThe dispatch disable level of the previous thread.

Definition at line 51 of file profiling.h.

◆ _Profiling_Thread_dispatch_disable_critical()

static void _Profiling_Thread_dispatch_disable_critical ( Per_CPU_Control cpu,
uint32_t  previous_thread_dispatch_disable_level,
const ISR_lock_Context lock_context 
)
inlinestatic

Disables the thread dispatch.

Only if the previous thread dispatch disable level is zero. This method also takes into account the lock_context.

Parameters
[out]cpuThe cpu control.
previous_thread_dispatch_disable_levelThe dispatch disable level of the previous thread.
lock_contextThe lock context.

Definition at line 80 of file profiling.h.

◆ _Profiling_Thread_dispatch_enable()

static void _Profiling_Thread_dispatch_enable ( Per_CPU_Control cpu,
uint32_t  new_thread_dispatch_disable_level 
)
inlinestatic

Enables the thread dispatch.

Only if the new_thread_dispatch_disable_level is 0.

Parameters
[out]cpuThe cpu control.
new_thread_dispatch_disable_levelThe dispatch disable level of the new thread.

Definition at line 109 of file profiling.h.

◆ _Profiling_Update_max_interrupt_delay()

static void _Profiling_Update_max_interrupt_delay ( Per_CPU_Control cpu,
CPU_Counter_ticks  interrupt_delay 
)
inlinestatic

Updates the maximum interrupt delay.

Parameters
[out]cpuThe cpu control.
interrupt_delayThe new interrupt delay.

Definition at line 141 of file profiling.h.