![]() |
RTEMS 6.1
|
Files | |
| file | stackchk.h |
| This header file provides the Stack Checker API. | |
| file | check.c |
| This file contains the Stack Overflow Check user extension set. | |
Data Structures | |
| struct | rtems_stack_checker_info |
| Stack information provided by the stack checker. More... | |
Macros | |
| #define | RTEMS_STACK_CHECKER_EXTENSION |
| Stack Checker Extension Set Definition. | |
Typedefs | |
| typedef void(* | rtems_stack_checker_visitor) (const rtems_stack_checker_info *info, void *arg) |
| Visitor routines invoked by rtems_stack_checker_iterate() shall have this type. | |
| typedef void(* | Stack_checker_Reporter_handler) (const rtems_tcb *running, bool pattern_ok) |
| The Stack Checker Reporter Initialization Handler. | |
Functions | |
| bool | rtems_stack_checker_is_blown (void) |
| Checks if current task is blown its stack. | |
| void | rtems_stack_checker_report_usage (void) |
| Print the stack usage report using printk. | |
| void | rtems_stack_checker_report_usage_with_plugin (const rtems_printer *printer) |
| Print the stack usage report using caller's routine. | |
| void | rtems_stack_checker_iterate (rtems_stack_checker_visitor visit, void *arg) |
| Iterates over all stacks used by the system and invokes the visitor routine for each stack. | |
| bool | rtems_stack_checker_create_extension (rtems_tcb *running, rtems_tcb *the_thread) |
| Stack Checker Task Create Extension. | |
| void | rtems_stack_checker_begin_extension (rtems_tcb *executing) |
| void | rtems_stack_checker_switch_extension (rtems_tcb *running, rtems_tcb *heir) |
| Stack Checker Task Context Switch Extension. | |
| void | rtems_stack_checker_reporter_quiet (const rtems_tcb *running, bool pattern_ok) |
| A Quiet Version of Stack Checker Reporter. | |
| void | rtems_stack_checker_reporter_print_details (const rtems_tcb *running, bool pattern_ok) |
| The Default Function to Report a Blown Stack. | |
Variables | |
| const Stack_checker_Reporter_handler | Stack_checker_Reporter |
| The Stack Checker Reporter Initialization Handler. | |
| #define RTEMS_STACK_CHECKER_EXTENSION |
Stack Checker Extension Set Definition.
This macro defines the user extension handler set for the stack checker. This macro is normally only used by confdefs.h.
| typedef void(* rtems_stack_checker_visitor) (const rtems_stack_checker_info *info, void *arg) |
Visitor routines invoked by rtems_stack_checker_iterate() shall have this type.
| [in] | info | is the stack information. |
| [in] | arg | is the argument passed to rtems_stack_checker_iterate(). |
| typedef void(* Stack_checker_Reporter_handler) (const rtems_tcb *running, bool pattern_ok) |
The Stack Checker Reporter Initialization Handler.
| [in] | running | running points to the currently executing thread which is being context switched out. |
| [in] | pattern_ok | bool variable to check if the pattern is still valid or not. |
Stack Checker Task Create Extension.
This method is the task create extension for the stack checker.
| [in] | running | points to the currently executing task |
| [in] | the_thread | points to the newly created task |
| bool rtems_stack_checker_is_blown | ( | void | ) |
Checks if current task is blown its stack.
This method is used to determine if the current stack pointer of the currently executing task is within bounds.
| This | method returns true if the currently executing task has blown its stack. |
| void rtems_stack_checker_iterate | ( | rtems_stack_checker_visitor | visit, |
| void * | arg | ||
| ) |
Iterates over all stacks used by the system and invokes the visitor routine for each stack.
This method prints a stack usage report for the curently executing task.
| [in] | visitor | is the visitor routine invoked for each stack. |
| [in] | arg | is the argument passed to each visitor routine invocation during the iteration. |
| void rtems_stack_checker_report_usage | ( | void | ) |
Print the stack usage report using printk.
This method prints a stack usage report for the curently executing task.
| void rtems_stack_checker_report_usage_with_plugin | ( | const rtems_printer * | printer | ) |
Print the stack usage report using caller's routine.
This method prints a stack usage report for the curently executing task.
| [in] | context | is the context to pass to the print handler |
| [in] | is the print handler |
| void rtems_stack_checker_reporter_print_details | ( | const rtems_tcb * | running, |
| bool | pattern_ok | ||
| ) |
The Default Function to Report a Blown Stack.
| [in] | running | running points to the currently executing thread which is being context switched out. |
| [in] | pattern_ok | bool variable to check if the pattern is still valid or not |
| void rtems_stack_checker_reporter_quiet | ( | const rtems_tcb * | running, |
| bool | pattern_ok | ||
| ) |
A Quiet Version of Stack Checker Reporter.
| [in] | running | running points to the currently executing thread which is being context switched out. |
| [in] | pattern_ok | bool variable to check if the pattern is still valid or not |
Stack Checker Task Context Switch Extension.
This method is the task context switch extension for the stack checker.
| [in] | running | points to the currently executing task which is being context switched out |
| [in] | heir | points to the heir task which we are switching to |
|
extern |
The Stack Checker Reporter Initialization Handler.
Application provided via <rtems/confdefs.h>