* Fix for two problems introduced by r10661:
1. ensure to use the key ''after'' it is initialized (sigh).
1. handle the case where we free the attrkey before it is fully
initialized (i.e., some other error causes us to free it). In
this case, don't try to remove the key from the hash map,
because it won't exist.
* More accurate zeroing in the keyval constructor
(ompi_attrkey_item_constructor)
* Widen the scope of the alock such that the attrkey destructor does
not need to acquire it. Instead, assume that the caller already
has it.
* Add a comment about why the keyval may get destroyed as the result
of deleting an attribute (so that I don't have to figure it out
again the next time I read this code :-) )
This commit was SVN r10664.
The following SVN revision numbers were found above:
r10661 --> open-mpi/ompi@fdba2c9df0
thread safety. This is likely to be only the first of multiple steps
for complete thread safety in the MPI attribute code. All tests
[continue to] pass the intel and ibm attribute tests.
Also renamed a variable from "attr" to "attrkey" to reflect that it's
a keyval, not an attribute.
This commit was SVN r10661.
to use the appropriate macro for all the Fortran .TRUE. handling, or
things get misinterpeted and, with some compilers, it will look like
the attribute wasn't copied properly.
This commit was SVN r9536.
is the last one on the list and as on C the caller "make it right" this addition
will not affect the way we handle the user defined copy functions. Only the C
version of the function has this additional parameter. As it represent the pointer
to the newly created MPI object It hold the key to allow us to modify the new
object (communicator, window or type) depending on some key stored on the initial
communicator.
This commit was SVN r9371.
- move files out of toplevel include/ and etc/, moving it into the
sub-projects
- rather than including config headers with <project>/include,
have them as <project>
- require all headers to be included with a project prefix, with
the exception of the config headers ({opal,orte,ompi}_config.h
mpi.h, and mpif.h)
This commit was SVN r8985.
complete, but stable enough that it will have no impact on general development,
so into the trunk it goes. Changes in this commit include:
- Remove the --with option for disabling MPI-2 onesided support. It
complicated code, and has no real reason for existing
- add a framework osc (OneSided Communication) for encapsulating
all the MPI-2 onesided functionality
- Modify the MPI interface functions for the MPI-2 onesided chapter
to properly call the underlying framework and do the required
error checking
- Created an osc component pt2pt, which is layered over the BML/BTL
for communication (although it also uses the PML for long message
transfers). Currently, all support functions, all communication
functions (Put, Get, Accumulate), and the Fence synchronization
function are implemented. The PWSC active synchronization
functions and Lock/Unlock passive synchronization functions are
still not implemented
This commit was SVN r8836.