[MPICH2-dev] MPI_Alloc_mem() mpich2-0.94b1

William Gropp gropp at mcs.anl.gov
Wed Sep 10 10:36:33 CDT 2003


At 01:10 PM 9/9/2003 -0700, Doug Gilmore wrote:
>I noticed a problem in MPI_Alloc_mem() while running example that
>uses RMA.  The following change seems appropriate.

Thanks!
Bill


>Doug
>
>*** alloc_mem.c.~1.1.1.5~       Tue Sep  9 12:04:06 2003
>--- alloc_mem.c Tue Sep  9 12:03:17 2003
>***************
>*** 55,60 ****
>--- 55,61 ----
>       static const char FCNAME[] = "MPI_Alloc_mem";
>       int mpi_errno = MPI_SUCCESS;
>       MPID_MPI_STATE_DECL(MPID_STATE_MPI_ALLOC_MEM);
>+     void *ap;
>
>       MPID_MPI_FUNC_ENTER(MPID_STATE_MPI_ALLOC_MEM);
>   #   ifdef HAVE_ERROR_CHECKING
>***************
>*** 79,89 ****
>   #   endif /* HAVE_ERROR_CHECKING */
>
>       /* FIXME: This should be MPID_Mem_alloc */
>!     baseptr = MPIU_Malloc(size);
>!     if (!baseptr) {
>           mpi_errno = MPIR_Err_create_code( MPI_SUCCESS, 
> MPIR_ERR_RECOVERABLE, FCNAME, __LINE__, MPI_ERR_NO_MEM, "**allocmem", 0 );
>           return mpi_errno;
>       }
>
>       MPID_MPI_FUNC_EXIT(MPID_STATE_MPI_ALLOC_MEM);
>       return MPI_SUCCESS;
>--- 80,91 ----
>   #   endif /* HAVE_ERROR_CHECKING */
>
>       /* FIXME: This should be MPID_Mem_alloc */
>!     ap = MPIU_Malloc(size);
>!     if (!ap) {
>           mpi_errno = MPIR_Err_create_code( MPI_SUCCESS, 
> MPIR_ERR_RECOVERABLE, FCNAME, __LINE__, MPI_ERR_NO_MEM, "**allocmem", 0 );
>           return mpi_errno;
>       }
>+     *(void **)baseptr = ap;
>
>       MPID_MPI_FUNC_EXIT(MPID_STATE_MPI_ALLOC_MEM);
>       return MPI_SUCCESS;




More information about the mpich2-dev mailing list