summaryrefslogtreecommitdiffstats
path: root/schedsim/shell/schedsim_priority/wrap_thread_dispatch.c
diff options
context:
space:
mode:
Diffstat (limited to 'schedsim/shell/schedsim_priority/wrap_thread_dispatch.c')
-rw-r--r--schedsim/shell/schedsim_priority/wrap_thread_dispatch.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/schedsim/shell/schedsim_priority/wrap_thread_dispatch.c b/schedsim/shell/schedsim_priority/wrap_thread_dispatch.c
index 5a72bcb..60ce916 100644
--- a/schedsim/shell/schedsim_priority/wrap_thread_dispatch.c
+++ b/schedsim/shell/schedsim_priority/wrap_thread_dispatch.c
@@ -30,14 +30,18 @@ void Init__wrap__Thread_Dispatch()
void check_heir_and_executing(void)
{
- if ( last_heir != _Thread_Heir )
- PRINT_HEIR();
+ uint32_t level;
- if ( last_executing != _Thread_Executing )
- PRINT_EXECUTING();
+ _ISR_Disable_without_giant( level );
+ if ( last_heir != _Thread_Heir )
+ PRINT_HEIR();
- last_heir = _Thread_Heir;
- last_executing = _Thread_Executing;
+ if ( last_executing != _Thread_Executing )
+ PRINT_EXECUTING();
+
+ last_heir = _Thread_Heir;
+ last_executing = _Thread_Executing;
+ _ISR_Enable_without_giant( level );
}
void __wrap__Thread_Dispatch(void)