Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions ompi/errhandler/errcode-internal.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ static ompi_errcode_intern_t ompi_err_rma_attach_intern;
static ompi_errcode_intern_t ompi_err_rma_range_intern;
static ompi_errcode_intern_t ompi_err_rma_conflict_intern;
static ompi_errcode_intern_t ompi_err_win_intern;
static ompi_errcode_intern_t ompi_err_rma_flavor_intern;

static void ompi_errcode_intern_construct(ompi_errcode_intern_t* errcode);
static void ompi_errcode_intern_destruct(ompi_errcode_intern_t* errcode);
Expand Down Expand Up @@ -250,6 +251,14 @@ int ompi_errcode_intern_init (void)
opal_pointer_array_set_item(&ompi_errcodes_intern, ompi_err_win_intern.index,
&ompi_err_win_intern);

OBJ_CONSTRUCT(&ompi_err_rma_flavor_intern, ompi_errcode_intern_t);
ompi_err_rma_flavor_intern.code = OMPI_ERR_RMA_FLAVOR;
ompi_err_rma_flavor_intern.mpi_code = MPI_ERR_RMA_FLAVOR;
ompi_err_rma_flavor_intern.index = pos++;
strncpy(ompi_err_rma_flavor_intern.errstring, "OMPI_ERR_RMA_FLAVOR", OMPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_errcodes_intern, ompi_err_rma_flavor_intern.index,
&ompi_err_rma_flavor_intern);

ompi_errcode_intern_lastused=pos;
return OMPI_SUCCESS;
}
Expand Down Expand Up @@ -279,6 +288,7 @@ int ompi_errcode_intern_finalize(void)
OBJ_DESTRUCT(&ompi_err_rma_range_intern);
OBJ_DESTRUCT(&ompi_err_rma_conflict_intern);
OBJ_DESTRUCT(&ompi_err_win_intern);
OBJ_DESTRUCT(&ompi_err_rma_flavor_intern);

OBJ_DESTRUCT(&ompi_errcodes_intern);
return OMPI_SUCCESS;
Expand Down
1 change: 1 addition & 0 deletions ompi/include/ompi/constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ enum {
OMPI_ERR_RMA_RANGE = OMPI_ERR_BASE - 5,
OMPI_ERR_RMA_CONFLICT = OMPI_ERR_BASE - 6,
OMPI_ERR_WIN = OMPI_ERR_BASE - 7,
OMPI_ERR_RMA_FLAVOR = OMPI_ERR_BASE - 8,
};

#define OMPI_ERR_MAX (OMPI_ERR_BASE - 100)
Expand Down
13 changes: 8 additions & 5 deletions ompi/mpi/c/win_get_info.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@

static const char FUNC_NAME[] = "MPI_Win_get_info";

static void _win_info_set (ompi_info_t *info, const char *key, int set)
{
ompi_info_set (info, key, set ? "true" : "false");
}

int MPI_Win_get_info(MPI_Win win, MPI_Info *info_used)
{
Expand All @@ -50,11 +54,10 @@ int MPI_Win_get_info(MPI_Win win, MPI_Info *info_used)

if (OMPI_SUCCESS == ret && *info_used) {
/* set standard info keys based on what the OSC module is using */
if (win->w_flags & OMPI_WIN_NO_LOCKS) {
ompi_info_set (*info_used, "no_locks", "true");
} else {
ompi_info_set (*info_used, "no_locks", "false");
}

_win_info_set (*info_used, "no_locks", win->w_flags & OMPI_WIN_NO_LOCKS);
_win_info_set (*info_used, "same_size", win->w_flags & OMPI_WIN_SAME_SIZE);
_win_info_set (*info_used, "same_disp_unit", win->w_flags & OMPI_WIN_SAME_DISP);
}

OMPI_ERRHANDLER_RETURN(ret, win, ret, FUNC_NAME);
Expand Down
2 changes: 2 additions & 0 deletions ompi/win/win.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ BEGIN_C_DECLS
#define OMPI_WIN_FREED 0x00000001
#define OMPI_WIN_INVALID 0x00000002
#define OMPI_WIN_NO_LOCKS 0x00000004
#define OMPI_WIN_SAME_DISP 0x00000008
#define OMPI_WIN_SAME_SIZE 0x00000010

OMPI_DECLSPEC extern opal_pointer_array_t ompi_mpi_windows;

Expand Down