OSHMEM: spml ikrit: hardware rdma endpoint

Create additional endpoint that is capable of true
one sided RDMA transfers.

MXM atomics component now uses this endpoint
(cherry picked from commit 1bcc88cfb1a0868e733802d343ddf16ffd2b93a0)
OSHMEM: spml ikrit: improve mxm transport sanity check

Do not allow combination of transports that is not compliant with
shmem spec. Especially do not allow mix of hw and software atomic
ops

(cherry picked from commit 74ab30b73855fdb4559ccdcdd4cae6545ac75236)
OSHMEM: spml ikrit: hw rdma channel is disabled by default
(cherry picked from commit 643e64497d531830111ed7a1ddf5bebceea9d4a3)
Adding a new OPAL hash table routine. Please read the algorithm description in opal/class/opal_hash_table.c for more precise details on the design and implementation. This algorithm was contributed by David Linden of H.P. in partnership with Mellanox Technologies. This contribution achieves two objectives:

1. It's actually hashing now, whereas the old OPAL hash table was not. Thus, it is a bug fix for and, as such, should be included in the 1.8 series.

2. It is dynamic and can grow and shrink the number of buckets in accordance with job size, whereas the old OPAL hash table had a fixed number of buckets which resulted in poor retrieval performance at large scale.

This scheme has been deployed in the field on very large H.P./Mellanox systems and has been demonstrated to significantly decrease job startup time (~ 20% improvement) when launching applications directly with srun in SLURM environments. However, neither SLURM nor direct launch are prerequisites to take advanatge of this change as any entity that utilizes OPAL hash table objects can benefit (at least partically) from this contribution.

On Nov. 3 2014 I amended this commit to include a missing prototype.

On Nov. 4 2014 I amended this commit in my local topic branch to include @rhc54 cleanup of the ompi debugger symbols in the OPAL hash table code.
OSHMEM: spml ikrit: remove empty lines in helpfile
(cherry picked from commit 1f2ab43ba90734b99ffc9acf85a49ec9cf17b621)
OSHMEM: fixes 'improve mxm transport sanity check'

The code that actually checks for valid transport combos
somehow did not make it to the original commit:

74ab30b73855fdb4559ccdcdd4cae6545ac75236
(cherry picked from commit d06fb853500c3d3de4ba6521df34dcfa60bfa33c)
OSHMEM: spml ikrit: code style fixes

added missing {} around one line blocks in if()
openib btl: add Soft iWARP device to the ini file

This enables IBM's software iWARP provider.  With this driver you can
run iWARP/RDMA over any ethernet NIC.  Useful for testing OMPI RDMA
logic without requiring an expensive RDMA adapter/infrastructure.

The Soft iWARP code is at: https://www.gitorious.org/softiwarp

Cherry-picked from open-mpi/mpi@7316a887546acad2010c27087a403bf7dfe04dc6
Check for the presence of setenv. If it is present, then use it in opal_setenv when setting values in the environ

Port of open-mpi/ompi@0726388

@jsquyres please review
OSHMEM: spml ikrit: use opal_setenv instead of setenv
check-help-strings cleanup

This commit was SVN r32490.
(cherry picked from commit 03fbd9a12db5b88e9b13e3453194b1a847e9f4e6)
OSHMEM: sshmem mmap: removed unused help topics
(cherry picked from commit 5a63b96351d7fff93d231f7deaab2d1baf3a4632)
mtl mxm: fix typo in help topic name

Fixes typo introduced in 1a5ff6df43562de119c868bca29470823b1595ec
Pull over two cleanups from the master:

open-mpi/ompi@2c9987b7d18ea6b50ad8233d8d99565bc6fd644e
open-mpi/ompi@4e4920a0fdb36e4baa3e2322f1664d75a58cab79
Turn off message coalescing to avoid segfaults until a better fix can be provided
Remove invalid NEWS item
configure.ac: fix typo in subroutine name

Prevents (harmless) error from showing up in configure output
configury: have git clones build debugging by default

This list of meta-info dirs was not updated when we moved OMPI to git.
Make sure CUDA init called during BTL init
Doh - if we can't output an entire block, then we need to adjust the number of bytes remaining to be output or else we will output duplicate bytes when next we are able to write.