source: rtems/c/src/exec/score/headers/interr.h @ 60b791ad

4.104.114.84.95
Last change on this file since 60b791ad was 60b791ad, checked in by Joel Sherrill <joel.sherrill@…>, on 02/17/98 at 23:46:28

updated copyright to 1998

  • Property mode set to 100644
File size: 2.2 KB
RevLine 
[3a4ae6c]1/*  interr.h
2 *
3 *  This include file contains constants and prototypes related
4 *  to the Internal Error Handler.
5 *
6 *
[60b791ad]7 *  COPYRIGHT (c) 1989-1998.
[3a4ae6c]8 *  On-Line Applications Research Corporation (OAR).
[03f2154e]9 *  Copyright assigned to U.S. Government, 1994.
[3a4ae6c]10 *
[98e4ebf5]11 *  The license and distribution terms for this file may be
12 *  found in the file LICENSE in this distribution or at
[03f2154e]13 *  http://www.OARcorp.com/rtems/license.html.
[3a4ae6c]14 *
[8bdcfc4]15 *  $Id$
[3a4ae6c]16 */
17
18#ifndef __RTEMS_INTERNAL_ERROR_h
19#define __RTEMS_INTERNAL_ERROR_h
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25/*
26 *  This type lists the possible sources from which an error
27 *  can be reported.
28 */
29
30typedef enum {
31  INTERNAL_ERROR_CORE,
[7640525]32  INTERNAL_ERROR_RTEMS_API,
33  INTERNAL_ERROR_POSIX_API
[3a4ae6c]34} Internal_errors_Source;
35
36/*
37 *  A list of errors which are generated internally by the executive core.
38 */
39
40typedef enum {
41  INTERNAL_ERROR_NO_CONFIGURATION_TABLE,
42  INTERNAL_ERROR_NO_CPU_TABLE,
43  INTERNAL_ERROR_INVALID_WORKSPACE_ADDRESS,
44  INTERNAL_ERROR_TOO_LITTLE_WORKSPACE,
45  INTERNAL_ERROR_WORKSPACE_ALLOCATION,
46  INTERNAL_ERROR_INTERRUPT_STACK_TOO_SMALL,
47  INTERNAL_ERROR_THREAD_EXITTED,
48  INTERNAL_ERROR_INCONSISTENT_MP_INFORMATION,
49  INTERNAL_ERROR_INVALID_NODE,
50  INTERNAL_ERROR_NO_MPCI,
51  INTERNAL_ERROR_BAD_PACKET,
52  INTERNAL_ERROR_OUT_OF_PACKETS,
53  INTERNAL_ERROR_OUT_OF_GLOBAL_OBJECTS,
54  INTERNAL_ERROR_OUT_OF_PROXIES,
[a155b3c]55  INTERNAL_ERROR_INVALID_GLOBAL_ID,
56  INTERNAL_ERROR_BAD_STACK_HOOK
[3a4ae6c]57} Internal_errors_Core_list;
58
59/*
60 *  This type holds the fatal error information.
61 */
62 
63typedef struct {
64  Internal_errors_Source  the_source;
65  boolean                 is_internal;
66  unsigned32              the_error;
67} Internal_errors_Information;
68
69/*
70 *  When a fatal error occurs, the error information is stored here.
71 */
72
[c627b2a3]73SCORE_EXTERN Internal_errors_Information Internal_errors_What_happened;
[3a4ae6c]74
75/*
76 *  _Internal_error_Occurred
77 *
78 *  DESCRIPTION:
79 *
80 *  This routine is invoked when the application or the executive itself
81 *  determines that a fatal error has occurred.
82 */
83
84void volatile _Internal_error_Occurred(
85  Internal_errors_Source  the_source,
86  boolean                 is_internal,
87  unsigned32              the_error
88);
89
90#ifdef __cplusplus
91}
92#endif
93
94#endif
95/* end of include file */
Note: See TracBrowser for help on using the repository browser.