RTEMS CPU Kit with SuperCore  4.11.3
Macros | Functions | Variables
check.c File Reference

Stack Overflow Check User Extension SetNOTE: This extension set automatically determines at initialization time whether the stack for this CPU grows up or down and installs the correct extension routines for that direction. More...

#include <rtems.h>
#include <inttypes.h>
#include <string.h>
#include <stdlib.h>
#include <rtems/bspIo.h>
#include <rtems/stackchk.h>
#include <rtems/score/percpu.h>
#include "internal.h"
Include dependency graph for check.c:

Macros

#define DONT_USE_FATAL_EXTENSION
 
#define Stack_check_Get_pattern(_the_stack)
 
#define Stack_check_Calculate_used(_low, _size, _high_water)   ((char *)(_high_water) - (char *)(_low))
 
#define Stack_check_usable_stack_start(_the_stack)   ((_the_stack)->area)
 
#define Stack_check_Get_pattern_area(_the_stack)   (Stack_check_Control *) Stack_check_Get_pattern( _the_stack )
 
#define Stack_check_usable_stack_size(_the_stack)   ((_the_stack)->size - sizeof(Stack_check_Control))
 
#define Stack_check_Dope_stack(_stack)   memset((_stack)->area, BYTE_PATTERN, (_stack)->size)
 

Functions

bool rtems_stack_checker_create_extension (Thread_Control *running, Thread_Control *the_thread)
 Stack Checker Task Create Extension. More...
 
void rtems_stack_checker_begin_extension (Thread_Control *the_thread)
 Stack Checker Task Begin Extension. More...
 
void Stack_check_report_blown_task (Thread_Control *running, bool pattern_ok)
 
void rtems_stack_checker_switch_extension (Thread_Control *running, Thread_Control *heir)
 Stack Checker Task Context Switch Extension. More...
 
bool rtems_stack_checker_is_blown (void)
 Checks if current task is blown its stack. More...
 
void rtems_stack_checker_report_usage_with_plugin (void *context, rtems_printk_plugin_t print)
 Print the stack usage report using caller's routine. More...
 
void rtems_stack_checker_report_usage (void)
 Print the stack usage report using printk. More...
 

Variables

Stack_check_Control Stack_check_Pattern
 
Stack_Control Stack_check_Interrupt_stack
 

Detailed Description

Stack Overflow Check User Extension Set

NOTE: This extension set automatically determines at initialization time whether the stack for this CPU grows up or down and installs the correct extension routines for that direction.

Macro Definition Documentation

◆ Stack_check_Get_pattern

#define Stack_check_Get_pattern (   _the_stack)
Value:
((char *)(_the_stack)->area + \
(_the_stack)->size - sizeof( Stack_check_Control ) )
Definition: internal.h:43