Ensure the debugger symbols are loaded into orterun prior to orte_init so they are found by attaching debuggers.
This commit was SVN r23368.
Этот коммит содержится в:
родитель
cc9b768fdb
Коммит
2193ace464
@ -9,8 +9,8 @@
|
|||||||
/** @file:
|
/** @file:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef MCA_ALARM_BASE_H
|
#ifndef MCA_DEBUGGER_BASE_H
|
||||||
#define MCA_ALARM_BASE_H
|
#define MCA_DEBUGGER_BASE_H
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* includes
|
* includes
|
||||||
|
@ -41,19 +41,6 @@
|
|||||||
|
|
||||||
#include "orte/mca/debugger/base/base.h"
|
#include "orte/mca/debugger/base/base.h"
|
||||||
|
|
||||||
/* instance the standard MPIR interfaces */
|
|
||||||
struct MPIR_PROCDESC *MPIR_proctable = NULL;
|
|
||||||
int MPIR_proctable_size = 0;
|
|
||||||
volatile int MPIR_being_debugged = 0;
|
|
||||||
volatile int MPIR_debug_state = 0;
|
|
||||||
volatile int MPIR_i_am_starter = 0;
|
|
||||||
volatile int MPIR_partial_attach_ok = 1;
|
|
||||||
volatile char MPIR_executable_path[MPIR_MAX_PATH_LENGTH];
|
|
||||||
volatile char MPIR_server_arguments[MPIR_MAX_ARG_LENGTH];
|
|
||||||
volatile int MPIR_forward_output = 0;
|
|
||||||
volatile int MPIR_forward_comm = 0;
|
|
||||||
char MPIR_attach_fifo[MPIR_MAX_PATH_LENGTH];
|
|
||||||
|
|
||||||
#define DUMP_INT(X) fprintf(stderr, " %s = %d\n", # X, X);
|
#define DUMP_INT(X) fprintf(stderr, " %s = %d\n", # X, X);
|
||||||
|
|
||||||
void orte_debugger_base_dump(void)
|
void orte_debugger_base_dump(void)
|
||||||
|
@ -38,6 +38,20 @@ opal_list_t orte_debugger_base_components_available;
|
|||||||
|
|
||||||
orte_debugger_base_module_t orte_debugger;
|
orte_debugger_base_module_t orte_debugger;
|
||||||
|
|
||||||
|
/* instance the standard MPIR interfaces */
|
||||||
|
struct MPIR_PROCDESC *MPIR_proctable = NULL;
|
||||||
|
int MPIR_proctable_size = 0;
|
||||||
|
volatile int MPIR_being_debugged = 0;
|
||||||
|
volatile int MPIR_debug_state = 0;
|
||||||
|
volatile int MPIR_i_am_starter = 0;
|
||||||
|
volatile int MPIR_partial_attach_ok = 1;
|
||||||
|
volatile char MPIR_executable_path[MPIR_MAX_PATH_LENGTH];
|
||||||
|
volatile char MPIR_server_arguments[MPIR_MAX_ARG_LENGTH];
|
||||||
|
volatile int MPIR_forward_output = 0;
|
||||||
|
volatile int MPIR_forward_comm = 0;
|
||||||
|
char MPIR_attach_fifo[MPIR_MAX_PATH_LENGTH];
|
||||||
|
|
||||||
|
|
||||||
#if ORTE_DISABLE_FULL_SUPPORT
|
#if ORTE_DISABLE_FULL_SUPPORT
|
||||||
int orte_debugger_base_open(void)
|
int orte_debugger_base_open(void)
|
||||||
{
|
{
|
||||||
|
@ -537,6 +537,21 @@ int orterun(int argc, char *argv[])
|
|||||||
/* Setup MCA params */
|
/* Setup MCA params */
|
||||||
orte_register_params();
|
orte_register_params();
|
||||||
|
|
||||||
|
/* force the debugger symbols to be included in orterun.
|
||||||
|
* this is required since the symbols are instantiated in
|
||||||
|
* the orte library, yet they need to be accessed
|
||||||
|
* prior to orte_init when a debugger wants to launch
|
||||||
|
* us
|
||||||
|
*/
|
||||||
|
MPIR_proctable = NULL;
|
||||||
|
if (0 == MPIR_being_debugged);
|
||||||
|
if (0 == MPIR_debug_state);
|
||||||
|
if (0 == MPIR_i_am_starter);
|
||||||
|
if (1 == MPIR_partial_attach_ok);
|
||||||
|
if (0 == MPIR_forward_output);
|
||||||
|
if (0 == MPIR_forward_comm);
|
||||||
|
memset((char*)MPIR_attach_fifo, 0, MPIR_MAX_PATH_LENGTH);
|
||||||
|
|
||||||
/* Check for some "global" command line params */
|
/* Check for some "global" command line params */
|
||||||
parse_globals(argc, argv, &cmd_line);
|
parse_globals(argc, argv, &cmd_line);
|
||||||
OBJ_DESTRUCT(&cmd_line);
|
OBJ_DESTRUCT(&cmd_line);
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user