/* * Front-end function called by the Fortran MPI-2 API functions to get * attributes. */ int ompi_attr_get_fortran_mpi2(opal_hash_table_t *attr_hash, int key, MPI_Aint *attribute, int *flag) { attribute_value_t *val = NULL; int ret; ret = get_value(attr_hash, key, &val, flag); if (MPI_SUCCESS == ret && 1 == *flag) { *attribute = translate_to_fortran_mpi2(val); } return ret; }
/* * Front-end function called by the Fortran MPI-2 API functions to get * attributes. */ int ompi_attr_get_fortran_mpi2(opal_hash_table_t *attr_hash, int key, MPI_Aint *attribute, int *flag) { attribute_value_t *val = NULL; int ret; OPAL_THREAD_LOCK(&attribute_lock); ret = get_value(attr_hash, key, &val, flag); if (MPI_SUCCESS == ret && 1 == *flag) { *attribute = translate_to_fortran_mpi2(val); } opal_atomic_wmb(); OPAL_THREAD_UNLOCK(&attribute_lock); return ret; }