source: rtems/cpukit/score/include/rtems/score/interr.h @ 8bdcfc4

4.104.114.84.95
Last change on this file since 8bdcfc4 was 8bdcfc4, checked in by Joel Sherrill <joel.sherrill@…>, on Dec 19, 1995 at 8:26:32 PM

changes remerged after disk crash -- history lost

  • Property mode set to 100644
File size: 2.2 KB
Line 
1/*  interr.h
2 *
3 *  This include file contains constants and prototypes related
4 *  to the Internal Error Handler.
5 *
6 *
7 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
8 *  On-Line Applications Research Corporation (OAR).
9 *  All rights assigned to U.S. Government, 1994.
10 *
11 *  This material may be reproduced by or for the U.S. Government pursuant
12 *  to the copyright license under the clause at DFARS 252.227-7013.  This
13 *  notice must appear in all copies of this file and its derivatives.
14 *
15 *  $Id$
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,
32  INTERNAL_ERROR_RTEMS_API
33} Internal_errors_Source;
34
35/*
36 *  A list of errors which are generated internally by the executive core.
37 */
38
39typedef enum {
40  INTERNAL_ERROR_NO_CONFIGURATION_TABLE,
41  INTERNAL_ERROR_NO_CPU_TABLE,
42  INTERNAL_ERROR_INVALID_WORKSPACE_ADDRESS,
43  INTERNAL_ERROR_TOO_LITTLE_WORKSPACE,
44  INTERNAL_ERROR_WORKSPACE_ALLOCATION,
45  INTERNAL_ERROR_INTERRUPT_STACK_TOO_SMALL,
46  INTERNAL_ERROR_THREAD_EXITTED,
47  INTERNAL_ERROR_INCONSISTENT_MP_INFORMATION,
48  INTERNAL_ERROR_INVALID_NODE,
49  INTERNAL_ERROR_NO_MPCI,
50  INTERNAL_ERROR_BAD_PACKET,
51  INTERNAL_ERROR_OUT_OF_PACKETS,
52  INTERNAL_ERROR_OUT_OF_GLOBAL_OBJECTS,
53  INTERNAL_ERROR_OUT_OF_PROXIES,
54  INTERNAL_ERROR_INVALID_GLOBAL_ID
55} Internal_errors_Core_list;
56
57/*
58 *  This type holds the fatal error information.
59 */
60 
61typedef struct {
62  Internal_errors_Source  the_source;
63  boolean                 is_internal;
64  unsigned32              the_error;
65} Internal_errors_Information;
66
67/*
68 *  When a fatal error occurs, the error information is stored here.
69 */
70
71EXTERN Internal_errors_Information Internal_errors_What_happened;
72
73/*
74 *  _Internal_error_Occurred
75 *
76 *  DESCRIPTION:
77 *
78 *  This routine is invoked when the application or the executive itself
79 *  determines that a fatal error has occurred.
80 */
81
82void volatile _Internal_error_Occurred(
83  Internal_errors_Source  the_source,
84  boolean                 is_internal,
85  unsigned32              the_error
86);
87
88#ifdef __cplusplus
89}
90#endif
91
92#endif
93/* end of include file */
Note: See TracBrowser for help on using the repository browser.