George, I reported the bug three months ago. Your commit r27880 resolved one of the bugs reported by me, in another approach.
http://www.open-mpi.org/community/lists/devel/2012/10/11555.php But other bugs are still open. "(1) MPI_SOURCE of MPI_Status for a null request must be MPI_ANY_SOURCE." in my previous mail is not fixed yet. This can be fixed by my patch (ompi/mpi/c/wait.c and ompi/request/request.c part only) attached in my another mail. http://www.open-mpi.org/community/lists/devel/2012/10/11561.php "(2) MPI_Status for an inactive request must be an empty status." in my previous mail is partially fixed. MPI_Wait is fixed by your r27880. But MPI_Waitall and MPI_Testall should be fixed. Codes similar to your r27880 should be inserted to ompi_request_default_wait_all and ompi_request_default_test_all. You can confirm the fixes by the test program status.c attached in my previous mail. Run with -n 2. http://www.open-mpi.org/community/lists/devel/2012/10/11555.php Regards, Takahiro Kawashima, MPI development team, Fujitsu > To be honest it was hanging in one of my repos for some time. If I'm not > mistaken it is somehow related to one active ticket (but I couldn't find the > info). It might be good to push it upstream. > > George. > > On Jan 22, 2013, at 16:27 , "Jeff Squyres (jsquyres)" <jsquy...@cisco.com> > wrote: > > > George -- > > > > Is there any reason not to CMR this to v1.6 and v1.7? > > > > > > On Jan 21, 2013, at 6:35 AM, svn-commit-mai...@open-mpi.org wrote: > > > >> Author: bosilca (George Bosilca) > >> Date: 2013-01-21 06:35:42 EST (Mon, 21 Jan 2013) > >> New Revision: 27880 > >> URL: https://svn.open-mpi.org/trac/ompi/changeset/27880 > >> > >> Log: > >> My understanding is that an MPI_WAIT() on an inactive request should > >> return the empty status (MPI 3.0 page 52 line 46). > >> > >> Text files modified: > >> trunk/ompi/request/req_wait.c | 3 +++ > >> > >> 1 files changed, 3 insertions(+), 0 deletions(-) > >> > >> Modified: trunk/ompi/request/req_wait.c > >> ============================================================================== > >> --- trunk/ompi/request/req_wait.c Sat Jan 19 19:33:42 2013 (r27879) > >> +++ trunk/ompi/request/req_wait.c 2013-01-21 06:35:42 EST (Mon, 21 Jan > >> 2013) (r27880) > >> @@ -61,6 +61,9 @@ > >> } > >> if( req->req_persistent ) { > >> if( req->req_state == OMPI_REQUEST_INACTIVE ) { > >> + if (MPI_STATUS_IGNORE != status) { > >> + *status = ompi_status_empty; > >> + } > >> return OMPI_SUCCESS; > >> } > >> req->req_state = OMPI_REQUEST_INACTIVE;