Changeset 7ac4ae9 in rtems


Ignore:
Timestamp:
Sep 13, 2006, 4:22:24 PM (14 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
5c1023a0
Parents:
aba8a85
Message:

2006-09-13 Joel Sherrill <joel@…>

  • libmisc/stackchk/check.c, libmisc/stackchk/internal.h, libmisc/stackchk/stackchk.h: Move stack to first class citizen status. Include it in User Manual and rename to start with rtems_.
Location:
cpukit
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    raba8a85 r7ac4ae9  
     12006-09-13      Joel Sherrill <joel@OARcorp.com>
     2
     3        * libmisc/stackchk/check.c, libmisc/stackchk/internal.h,
     4        libmisc/stackchk/stackchk.h: Move stack to first class citizen
     5        status. Include it in User Manual and rename to start with rtems_.
     6
    172006-09-11      Joel Sherrill <joel@OARcorp.com>
    28
  • cpukit/libmisc/stackchk/check.c

    raba8a85 r7ac4ae9  
    77 *         extension routines for that direction.
    88 *
    9  *  COPYRIGHT (c) 1989-1999.
     9 *  COPYRIGHT (c) 1989-2006.
    1010 *  On-Line Applications Research Corporation (OAR).
    1111 *
     
    5656 */
    5757
    58 rtems_extensions_table Stack_check_Extension_table = {
    59   Stack_check_Create_extension,     /* rtems_task_create  */
    60   0,                                /* rtems_task_start   */
    61   0,                                /* rtems_task_restart */
    62   0,                                /* rtems_task_delete  */
    63   Stack_check_Switch_extension,     /* task_switch  */
    64   Stack_check_Begin_extension,      /* task_begin   */
    65   0,                                /* task_exitted */
     58rtems_extensions_table rtems_stack_checker_extension_table = {
     59  rtems_stack_checker_create_extension,     /* rtems_task_create  */
     60  0,                                        /* rtems_task_start   */
     61  0,                                        /* rtems_task_restart */
     62  0,                                        /* rtems_task_delete  */
     63  rtems_stack_checker_switch_extension,     /* task_switch  */
     64  rtems_stack_checker_begin_extension,      /* task_begin   */ 0,                                /* task_exitted */
    6665#ifdef DONT_USE_FATAL_EXTENSION
    67   0,                                /* fatal        */
     66  0,                                        /* fatal        */
    6867#else
    69   Stack_check_Fatal_extension,      /* fatal        */
     68  rtems_stack_checker_fatal_extension,      /* fatal        */
    7069#endif
    7170};
     
    125124 */
    126125
    127 void Stack_check_Dump_usage( void );
     126void rtems_stack_checker_dump_usage( void );
    128127
    129128/*
     
    142141/*PAGE
    143142 *
    144  *  Stack_check_Initialize
     143 *  rtems_stack_checker_initialize
    145144 */
    146145
    147146static int   stack_check_initialized = 0;
    148147
    149 void Stack_check_Initialize( void )
     148void rtems_stack_checker_initialize( void )
    150149{
    151150#if 0
     
    203202   */
    204203#if 0
    205   if (_Thread_Executing)
    206   {
    207       Stack_check_Create_extension(_Thread_Executing, _Thread_Executing);
     204  if (_Thread_Executing) {
     205      rtems_stack_checker_create_extension(
     206        _Thread_Executing,
     207        _Thread_Executing
     208      );
    208209  }
    209210#endif
     
    219220      for ( i=1 ; i <= information->maximum ; i++ ) {
    220221        the_thread = (Thread_Control *)information->local_table[ i ];
    221         Stack_check_Create_extension( the_thread, the_thread );
     222        rtems_stack_checker_create_extension( the_thread, the_thread );
    222223      }
    223224    }
     
    247248     * we fatal error.
    248249     */
    249   atexit(Stack_check_Dump_usage);
     250  atexit(rtems_stack_checker_dump_usage);
    250251#endif
    251252#endif
     
    256257/*PAGE
    257258 *
    258  *  Stack_check_Create_extension
    259  */
    260 
    261 boolean Stack_check_Create_extension(
     259 *  rtems_stack_checker_create_extension
     260 */
     261
     262boolean rtems_stack_checker_create_extension(
    262263  Thread_Control *running,
    263264  Thread_Control *the_thread
     
    265266{
    266267    if (!stack_check_initialized)
    267       Stack_check_Initialize();
     268      rtems_stack_checker_initialize();
    268269
    269270    if (the_thread /* XXX && (the_thread != _Thread_Executing) */ )
     
    275276/*PAGE
    276277 *
    277  *  Stack_check_Begin_extension
    278  */
    279 
    280 void Stack_check_Begin_extension(
     278 *  rtems_stack_checker_Begin_extension
     279 */
     280
     281void rtems_stack_checker_begin_extension(
    281282  Thread_Control *the_thread
    282283)
     
    285286
    286287  if (!stack_check_initialized)
    287     Stack_check_Initialize();
     288    rtems_stack_checker_initialize();
    288289
    289290  if ( the_thread->Object.id == 0 )        /* skip system tasks */
     
    355356/*PAGE
    356357 *
    357  *  Stack_check_Switch_extension
    358  */
    359 
    360 void Stack_check_Switch_extension(
     358 *  rtems_stack_checker_switch_extension
     359 */
     360
     361void rtems_stack_checker_switch_extension(
    361362  Thread_Control *running,
    362363  Thread_Control *heir
    363364)
    364365{
     366  void *pattern;
    365367  if ( running->Object.id == 0 )        /* skip system tasks */
    366368    return;
    367 
    368   if (0 != memcmp( (void *) Stack_check_Get_pattern_area( &running->Start.Initial_stack)->pattern,
    369                   (void *) Stack_check_Pattern.pattern,
    370                   PATTERN_SIZE_BYTES))
    371   {
     369  pattern = (void *)
     370    Stack_check_Get_pattern_area(&running->Start.Initial_stack)->pattern;
     371
     372  if (0 != memcmp( pattern,
     373            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES)) {
    372374      Stack_check_Blown_task = running;
    373375      Stack_check_report_blown_task();
     
    413415/*PAGE
    414416 *
    415  *  Stack_check_Dump_threads_usage
     417 *  Stack_check_Dump_threads_usage(
    416418 *  Try to print out how much stack was actually used by the task.
    417419 *
     
    496498/*PAGE
    497499 *
    498  *  Stack_check_Fatal_extension
    499  */
    500 
    501 void Stack_check_Fatal_extension(
     500 *  rtems_stack_checker_fatal_extension
     501 */
     502
     503void rtems_stack_checker_fatal_extension(
    502504    Internal_errors_Source  source,
    503505    boolean                 is_internal,
     
    507509#ifndef DONT_USE_FATAL_EXTENSION
    508510    if (status == 0)
    509         Stack_check_Dump_usage();
    510 #endif
    511 }
    512 
    513 
    514 /*PAGE
    515  *
    516  *  Stack_check_Dump_usage
    517  */
    518 
    519 void Stack_check_Dump_usage( void )
     511        rtems_stack_checker_dump_usage();
     512#endif
     513}
     514
     515
     516/*PAGE
     517 *
     518 *  rtems_stack_checker_dump_usage
     519 */
     520
     521void rtems_stack_checker_dump_usage( void )
    520522{
    521523  uint32_t             i;
  • cpukit/libmisc/stackchk/internal.h

    raba8a85 r7ac4ae9  
    44 *  for the RTEMS stack checker.
    55 *
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2006.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4747
    4848/*
    49  *  Stack_check_Create_extension
     49 *  rtems_stack_checker_create_extension
    5050 */
    5151
    52 boolean Stack_check_Create_extension(
     52boolean rtems_stack_checker_create_extension(
    5353  Thread_Control *running,
    5454  Thread_Control *the_thread
     
    5656
    5757/*
    58  *  Stack_check_Begin_extension
     58 *  rtems_stack_checker_begin_extension
    5959 */
    6060
    61 void Stack_check_Begin_extension(
     61void rtems_stack_checker_begin_extension(
    6262  Thread_Control *the_thread
    6363);
    6464
    6565/*
    66  *  Stack_check_Switch_extension
     66 *  rtems_stack_checker_switch_extension
    6767 */
    6868
    69 void Stack_check_Switch_extension(
     69void rtems_stack_checker_switch_extension(
    7070  Thread_Control *running,
    7171  Thread_Control *heir
     
    7373
    7474/*
    75  *  Stack_check_Fatal_extension
     75 *  rtems_stack_checker_fatal_extension
    7676 */
    7777
    78 void Stack_check_Fatal_extension(
     78void rtems_stack_checker_fatal_extension(
    7979    Internal_errors_Source  source,
    8080    boolean                 is_internal,
     
    8383
    8484/*
    85  *  Stack_check_Dump_usage
     85 *  rtems_stack_checker_dump_usage
    8686 */
    8787
    88 void Stack_check_Dump_usage( void );
     88void rtems_stack_checker_dump_usage( void );
    8989
    9090#ifdef __cplusplus
  • cpukit/libmisc/stackchk/stackchk.h

    raba8a85 r7ac4ae9  
    44 *  and install the stack checker mechanism.
    55 *
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2006.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    1414 */
    1515
    16 #ifndef __STACK_CHECK_h
    17 #define __STACK_CHECK_h
     16#ifndef __RTEMS_STACK_CHECKER_h
     17#define __RTEMS_STACK_CHECKER_h
    1818
    1919#ifdef __cplusplus
     
    2222
    2323/*
    24  *  Stack_check_Initialize
     24 *  rtems_stack_checker_initialize
    2525 */
    2626
    27 void Stack_check_Initialize( void );
     27void rtems_stack_checker_initialize( void );
    2828
    2929/*
    30  *  Stack_check_Dump_usage
     30 *  rtems_stack_checker_Dump_usage
    3131 */
    3232
    33 void Stack_check_Dump_usage( void );
     33void rtems_stack_checker_dump_usage( void );
    3434
    3535/*
    36  *  Stack_check_Create_extension
     36 *  rtems_stack_checker_create_extension
    3737 */
    3838
    39 boolean Stack_check_Create_extension(
     39boolean rtems_stack_checker_create_extension(
    4040  Thread_Control *running,
    4141  Thread_Control *the_thread
     
    4343
    4444/*
    45  *  Stack_check_Begin_extension
     45 *  rtems_stack_checker_begin_extension
    4646 */
    4747
    48 void Stack_check_Begin_extension(
     48void rtems_stack_checker_begin_extension(
    4949  Thread_Control *the_thread
    5050);
    5151
    5252/*
    53  *  Stack_check_Switch_extension
     53 *  rtems_stack_checker_switch_extension
    5454 */
    5555
    56 void Stack_check_Switch_extension(
     56void rtems_stack_checker_switch_extension(
    5757  Thread_Control *running,
    5858  Thread_Control *heir
     
    6363 */
    6464
    65 #define STACK_CHECKER_EXTENSION \
     65#define RTEMS_STACK_CHECKER_EXTENSION \
    6666{ \
    67   Stack_check_Create_extension,        /* rtems_task_create  */ \
    68   0,                                   /* rtems_task_start   */ \
    69   0,                                   /* rtems_task_restart */ \
    70   0,                                   /* rtems_task_delete  */ \
    71   Stack_check_Switch_extension,        /* task_switch  */ \
    72   Stack_check_Begin_extension,         /* task_begin   */ \
    73   0,                                   /* task_exitted */ \
    74   0 /* Stack_check_Fatal_extension */, /* fatal        */ \
     67  rtems_stack_checker_create_extension,        /* rtems_task_create  */ \
     68  0,                                           /* rtems_task_start   */ \
     69  0,                                           /* rtems_task_restart */ \
     70  0,                                           /* rtems_task_delete  */ \
     71  rtems_stack_checker_switch_extension,        /* task_switch  */ \
     72  rtems_stack_checker_begin_extension,         /* task_begin   */ \
     73  0,                                           /* task_exitted */ \
     74  0 /* rtems_stack_checker_fatal_extension */, /* fatal        */ \
    7575}
    7676
Note: See TracChangeset for help on using the changeset viewer.