OpenMPI  0.1.1
errmgr_private.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana
3  * University Research and Technology
4  * Corporation. All rights reserved.
5  * Copyright (c) 2004-2005 The University of Tennessee and The University
6  * of Tennessee Research Foundation. All rights
7  * reserved.
8  * Copyright (c) 2004-2010 High Performance Computing Center Stuttgart,
9  * University of Stuttgart. All rights reserved.
10  * Copyright (c) 2004-2005 The Regents of the University of California.
11  * All rights reserved.
12  * Copyright (c) 2010-2011 Oak Ridge National Labs. All rights reserved.
13  * $COPYRIGHT$
14  *
15  * Additional copyrights may follow
16  *
17  * $HEADER$
18  */
19 /** @file:
20  */
21 
22 #ifndef ORTE_MCA_ERRMGR_PRIVATE_H
23 #define ORTE_MCA_ERRMGR_PRIVATE_H
24 
25 /*
26  * includes
27  */
28 #include "orte_config.h"
29 #include "orte/constants.h"
30 #include "orte/types.h"
31 
32 #ifdef HAVE_UNISTD_H
33 #include <unistd.h>
34 #endif /* HAVE_UNISTD_H */
35 
36 #include "opal/dss/dss_types.h"
37 #include "orte/mca/plm/plm_types.h"
39 
40 #include "orte/mca/errmgr/errmgr.h"
41 
42 /*
43  * Functions for use solely within the ERRMGR framework
44  */
45 BEGIN_C_DECLS
46 
47 /* define a struct to hold framework-global values */
48 typedef struct {
49  int output;
50  bool initialized;
52 
53 ORTE_DECLSPEC extern orte_errmgr_base_t orte_errmgr_base;
54 
55 /* Define the ERRMGR command flag */
56 typedef uint8_t orte_errmgr_cmd_flag_t;
57 #define ORTE_ERRMGR_CMD OPAL_UINT8
58 
59 /* define some commands */
60 #define ORTE_ERRMGR_ABORT_PROCS_REQUEST_CMD 0x01
61 #define ORTE_ERRMGR_REGISTER_CALLBACK_CMD 0x02
62 
63 /* declare the base default module */
64 ORTE_DECLSPEC extern orte_errmgr_base_module_t orte_errmgr_default_fns;
65 
66 /*
67  * Base functions
68  */
69 ORTE_DECLSPEC void orte_errmgr_base_log(int error_code, char *filename, int line);
70 
71 ORTE_DECLSPEC void orte_errmgr_base_abort(int error_code, char *fmt, ...)
72  __opal_attribute_format__(__printf__, 2, 3)
73  __opal_attribute_noreturn__;
74 ORTE_DECLSPEC int orte_errmgr_base_abort_peers(orte_process_name_t *procs,
75  orte_std_cntr_t num_procs);
76 
77 ORTE_DECLSPEC int orte_errmgr_base_update_state(orte_jobid_t job,
78  orte_job_state_t jobstate,
79  orte_process_name_t *proc_name,
80  orte_proc_state_t state,
81  pid_t pid,
82  orte_exit_code_t exit_code);
83 
84 ORTE_DECLSPEC void orte_errmgr_base_register_migration_warning(struct timeval *tv);
85 
86 END_C_DECLS
87 #endif
uint32_t orte_jobid_t
Set the allowed range for ids in each space.
Definition: types.h:76
Definition: types.h:146
int32_t orte_std_cntr_t
Supported datatypes for messaging and storage operations.
Definition: types.h:34
Definition: errmgr.h:287
Buffer management types.
The Open RTE Error and Recovery Manager (ErrMgr)
Global params for OpenRTE.
Definition: errmgr_private.h:48