Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] [patch] Invalid MPI_Status for null or inactive request
From: Kawashima, Takahiro (t-kawashima_at_[hidden])
Date: 2012-10-04 21:16:40

Hi Eugene,

> > I found some bugs in Open MPI and attach a patch to fix them.
> >
> > The bugs are:
> >
> > (1) MPI_SOURCE of MPI_Status for a null request must be MPI_ANY_SOURCE.
> >
> > (2) MPI_Status for an inactive request must be an empty status.
> >
> > (3) Possible BUS errors on sparc64 processors.
> >
> > r23554 fixed possible BUS errors on sparc64 processors.
> > But the fix seems to be insufficient.
> >
> > We should use OMPI_STATUS_SET macro for all user-supplied
> > MPI_Status objects.
> Regarding #3, see also a trac 3218. I'm putting a fix back today. Sorry
> for the delay. One proposed solution was extending the use of the
> OMPI_STATUS_SET macros, but I think the consensus was to fix the problem
> in the Fortran layer. Indeed, the Fortran layer already routinely
> converts between Fortran and C statuses. The problem was that we started
> introducing optimizations to bypass the Fortran-to-C conversion and that
> optimization was employed too liberally (e..g, in situations that would
> introduce the alignment errors you're describing). My patch will clean
> that up. I'll try to put it back in the next few hours.

Sorry, I didn't notice the ticket 3218.
Now I've confirmed your commit r27403.
Your modification is better for my issue (3).

With r27403, my patch for issue (1) and (2) needs modification.
I'll re-send modified patch in a few hours.


Takahiro Kawashima,
MPI development team,