1
1
openmpi/ompi/peruse/peruse_module.c
Nathan Hjelm 4d92c9989e more c99 updates
This commit does two things. It removes checks for C99 required
headers (stdlib.h, string.h, signal.h, etc). Additionally it removes
definitions for required C99 types (intptr_t, int64_t, int32_t, etc).

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
2015-06-25 10:14:13 -06:00

86 строки
2.1 KiB
C

/* -*- Mode: C; c-basic-offset:4 ; -*- */
/*
* Copyright (c) 2004-2007 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* Copyright (c) 2004-2007 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
# include <stdlib.h>
#include "mpi.h"
#include "ompi/peruse/peruse.h"
#include "ompi/peruse/peruse-internal.h"
#include "ompi/constants.h"
static opal_list_t peruse_handle_list;
static opal_mutex_t peruse_handle_list_lock;
int ompi_peruse_initialized = 0;
int ompi_peruse_finalized = 0;
static void ompi_peruse_handle_construct (ompi_peruse_handle_t* p)
{
OBJ_CONSTRUCT (&(p->lock), opal_mutex_t);
p->active = 0;
p->event = PERUSE_EVENT_INVALID;
p->type = PERUSE_TYPE_INVALID;
p->comm = MPI_COMM_NULL;
/* p->file = MPI_FILE_NULL */
/* p->win = MPI_WIN_NULL; */
p->fn = NULL;
p->param = NULL;
OPAL_THREAD_LOCK (&peruse_handle_list_lock);
opal_list_append (&peruse_handle_list, (opal_list_item_t*)p);
OPAL_THREAD_UNLOCK (&peruse_handle_list_lock);
}
static void ompi_peruse_handle_destruct (ompi_peruse_handle_t* p)
{
OPAL_THREAD_LOCK (&peruse_handle_list_lock);
opal_list_remove_item (&peruse_handle_list, (opal_list_item_t*)p);
OPAL_THREAD_UNLOCK (&peruse_handle_list_lock);
OBJ_DESTRUCT (&(p->lock));
}
OBJ_CLASS_INSTANCE(
ompi_peruse_handle_t,
opal_list_item_t,
ompi_peruse_handle_construct,
ompi_peruse_handle_destruct);
int ompi_peruse_init (void)
{
if (ompi_peruse_initialized)
return OMPI_SUCCESS;
ompi_peruse_initialized = 1;
OBJ_CONSTRUCT (&peruse_handle_list, opal_list_t);
OBJ_CONSTRUCT (&peruse_handle_list_lock, opal_mutex_t);
return OMPI_SUCCESS;
}
int ompi_peruse_finalize (void)
{
if (!ompi_peruse_initialized)
return OMPI_SUCCESS;
ompi_peruse_finalized = 1;
OBJ_DESTRUCT (&peruse_handle_list);
OBJ_DESTRUCT (&peruse_handle_list_lock);
return OMPI_SUCCESS;
}