Fixes #3591: Move r28439 to v1.7 branch (MPI-2.2 COMM_SELF attribute destruction ordering)

---svn-pre-commit-ignore-below---

r28439 [[BR]]
Implement MPI-2.2 functionality of deleting attributes on
MPI_COMM_SELF in reverse order during MPI_FINALIZE (well, actually,
''all'' attributes are now deleted in reverse order whenever a
communicator is destructed).

Also revamped a few things in the MPI attribute implementation:

 * use a One Big Lock philosophy for making the implementation thread
   safe (vs. the pair of locks we were using before).  One Big Lock is
   quite a bit simpler and has fewer corner cases; the code for
   attributes is still complicated, but is definitely less complex
   than it used to be.
 * The COPY_ATTR_CALLBACKS and DELETE_ATTR_CALLBACKS macros no longer
   return; they simply set a value if something went wrong.  Then we
   check this value after the macros complete.  This simplifies
   unlocking, etc.
 * Added write barriers right before releasing locks to ensure memory
   consistency.
 * Fixed a bunch of typos in comments, and some indenting.

Many thanks to KAWASHIMA Takahiro who contributed the original patch
for attribute destruction ordering, and who helped test/debug/evolve
the patch to its final form.

Fixes #3123.

cmr:v1.7.2:reviewer=bosilca
Fixes #3588: Move status fixes to v1.7

---svn-pre-commit-ignore-below---

r27403 [[BR]]
Ensure that MPI_Status objects have proper alignment:
- fix the Fortran layer to use new macros to convert Fortran-to-C status
- change the C internals to pull out old OMPI_SET_STATUS* macros

Also, change name of "status" argument in topo_test_f.c to "topo_type".


r28431 [[BR]]
Correctly handle the invalid status for null and inactive
requests. This patch fixes #3475.

CMR v1.6, v1.7
Fixes #3602: Move r28489 to v1.7 branch (register MXM to memhooks)

---svn-pre-commit-ignore-below---

r28489 [[BR]]
Fix data corruption in MXM by registering to OPAL memory release hooks and removing any mappings created by mxm
Bump to 1.7.2rc1
Set svn:ignore
Add missing header file from #3588 / r28507
1.7.2rc1 has been released; on to 1.7.2rc2
Refs #3280: Move LAMA to v1.7 branch (rollup)

Add configure.m4 file for lama, which somehow got missed in the rollup
CMR #3280.  Got verbal/IM approval from Ralph to simply commit this as
an addendum to the original #3280 CMR.
Fixes #3605: Move VT v5.14.4 changes to v1.7

---svn-pre-commit-ignore-below---

r28494 [[BR]]
Changes to VT:
 * general:
	* incremented version number to 5.14.4
	* fixed Coverity CIDs: 72002, 72099, 72273, 710580, 710664, 710665, 710666
 * VT libs:
	* fixed "incompatible declaration" errors when building against an MPI-3 implementation. Since MPI-3 the C keyword "const" is added to all relevant MPI API parameters (e.g. MPI_Send(void* sendbuf, ...) -> MPI_Send(const void* sendbuf, ...)). Prepending the macro CONST to these parameters which is defined either to "const" (if MPI-3) or to nothing (if MPI-1/2).
	* fixed potential buffer overflow when reading the filter file
	* CUDA tracing:
		* enabled access to CUPTI counters for CUDA tracing via CUPTI
		* enabled GPU memory usage tracing independent of the CUDA API
		* enabled recording of CUDA synchronization and implicit synchronization in blocking CUDA memory copies for CUDA tracing via CUPTI
		* enabled recording of synchronous peer-to-peer CUDA memory copies for CUDA tracing via CUPTI
		* consider CUDA data transfers as not idle for option 'pure_idle'
		* fixed identification of the CUDA device ID for CUDA tracing via CUPTI
		* fixed region filtering for applications using the CUDA runtime API wrapper
 * compiler wrappers: add path to mpi.h to the PDT parser command and preprocessor flags

r28524 [[BR]]
Changes to VT:
	* fixed compiler warnings when compiling for 32-bit
	* MPI wrapper generator scripts:
		* removed non-posix call to length(array)
		* exit scripts if any statement returns a non-true return value (set -e)
Fixes #3606: Move lama typo fix to v1.7

---svn-pre-commit-ignore-below---

r28532 [[BR]]
Minor type fix (they're both enums/ints, so the compiler previously
silently cast them).
Fixes #3608: Move ddt dt_desc fix to v1.7

---svn-pre-commit-ignore-below---

r28535 [[BR]]
Fix issue identified by Takahiro Kawashima regarding the overwriting
of the OPAL datatype descriptions upon MPI_Init. Now each layer (OPAL
and OMPI) uses it's own descriptions for the predefined datatypes,
thus preventing over-writing of the other layer data description.
Fixes #3607: Move r28533 to v1.7 branch

---svn-pre-commit-ignore-below---

r28533 [[BR]]
fix a correctness issue by returning an error if waitall fails and invoking the mpi error handler

cmr:v1.7.2:reviewer=jsquyres
1.7.2rc2 has been released; on to 1.7.2rc3