1
1

Merge pull request #234 from bureddy/master

OSHMEM: Fix application abort
Этот коммит содержится в:
bureddy 2014-10-14 13:07:10 -07:00
родитель 0219c87039 cbb3e95ce9
Коммит 3d77abaa1f
4 изменённых файлов: 21 добавлений и 1 удалений

Просмотреть файл

@ -98,6 +98,10 @@ fi
AC_DEFINE_UNQUOTED(OSHMEM_PARAM_CHECK, $shmem_param_check,
[Whether we want to check OSHMEM parameters always or never])
#
# check for on_exit
#
AC_CHECK_FUNCS([on_exit])
#
# OSHMEM profiling support

Просмотреть файл

@ -197,6 +197,7 @@ static void* shmem_opal_thread(void* argc)
#endif
int inGlobalExit;
int inGlobalExit_Status;
static void sighandler__SIGUSR1(int signum)
{

Просмотреть файл

@ -22,10 +22,15 @@
#include "oshmem/shmem/c/profile/defines.h"
#endif
extern int inGlobalExit_Status;
void shmem_finalize(void)
{
OPAL_CR_FINALIZE_LIBRARY();
if (inGlobalExit_Status != 0)
{
return;
}
oshmem_shmem_finalize();
}

Просмотреть файл

@ -29,12 +29,19 @@
#include "oshmem/shmem/c/profile/defines.h"
#endif
extern int inGlobalExit_Status;
void start_pes(int npes)
{
/* spec says that npes are ignored for now */
shmem_init();
}
static void shmem_onexit(int exitcode, void *arg)
{
inGlobalExit_Status = exitcode;
}
void shmem_init(void)
{
int err = OSHMEM_SUCCESS;
@ -56,5 +63,8 @@ void shmem_init(void)
}
OPAL_CR_INIT_LIBRARY();
#if HAVE_ON_EXIT
on_exit(shmem_onexit, NULL);
#endif
}