RTEMS CPU Kit with SuperCore  4.10.99.0
stackchk.h
Go to the documentation of this file.
1 
13 /*
14  * COPYRIGHT (c) 1989-2009.
15  * On-Line Applications Research Corporation (OAR).
16  *
17  * The license and distribution terms for this file may be
18  * found in the file LICENSE in this distribution or at
19  * http://www.rtems.org/license/LICENSE.
20  */
21 
22 #ifndef _RTEMS_STACKCHK_H
23 #define _RTEMS_STACKCHK_H
24 
25 #include <stdbool.h> /* bool */
26 
27 #include <rtems/score/percpu.h> /* Thread_Control */
28 #include <rtems/bspIo.h>
29 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
50 bool rtems_stack_checker_is_blown( void );
51 
61 
74  void *context,
75  rtems_printk_plugin_t print
76 );
77 
78 /*************************************************************
79  *************************************************************
80  ** Prototyped only so the user extension can be installed **
81  *************************************************************
82  *************************************************************/
83 
96  Thread_Control *running,
97  Thread_Control *the_thread
98 );
99 
110  Thread_Control *the_thread
111 );
112 
125  Thread_Control *running,
126  Thread_Control *heir
127 );
128 
135 #define RTEMS_STACK_CHECKER_EXTENSION \
136 { \
137  rtems_stack_checker_create_extension, /* rtems_task_create */ \
138  0, /* rtems_task_start */ \
139  0, /* rtems_task_restart */ \
140  0, /* rtems_task_delete */ \
141  rtems_stack_checker_switch_extension, /* task_switch */ \
142  rtems_stack_checker_begin_extension, /* task_begin */ \
143  0, /* task_exitted */ \
144  0 /* rtems_stack_checker_fatal_extension */, /* fatal */ \
145 }
146 
147 #ifdef __cplusplus
148 }
149 #endif
150 
151 #endif
152 /* end of include file */
void rtems_stack_checker_switch_extension(Thread_Control *running, Thread_Control *heir)
Stack Checker Task Context Switch Extension.
bool rtems_stack_checker_create_extension(Thread_Control *running, Thread_Control *the_thread)
Stack Checker Task Create Extension.
void rtems_stack_checker_report_usage(void)
Print the stack usage report using printk.
This include file defines the per CPU information required by RTEMS.
void rtems_stack_checker_begin_extension(Thread_Control *the_thread)
Stack Checker Task Begin Extension.
void rtems_stack_checker_report_usage_with_plugin(void *context, rtems_printk_plugin_t print)
Print the stack usage report using caller's routine.
bool rtems_stack_checker_is_blown(void)
Checks if current task is blown its stack.
Interface to Kernel Print Methods.
This structure defines the Thread Control Block (TCB).
Definition: thread.h:574