Fixes #4422: Move r31140 to v1.7 branch (OSHMEM: Fix mmap compatibility issue)

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

r31140 [[BR]]
OSHMEM: Fix mmap compatibility issue

Using MAP_ANONYMOUS brings different interpretation of fd, offset arguuments of mmap()
Linux:
The mapping is not backed by any file; the fd and offset arguments are ignored.
Mac:
Map anonymous memory not associated with any specific file.  The offset argument is
ignored.  Mac OS X specific: the file descriptor used for creating MAP_ANON regions
can be used to pass some Mach VM flags, and can be specified as -1 if no such flags
are associated with the region
FreeBSD:
Map anonymous memory not associated with any specific file.  The file
descriptor used for creating MAP_ANON must be -1.  The offset   argument must be 0.

fixed by Igor, reviewed by Mike

Refs #4399

cmr=v1.7.5:reviewer=ompi-rm1.7
Fixes #4424: Move r31145 to v1.7 branch (Fix segv in MPI_Graph_create_undef_c Intel)

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

r31145 [[BR]]
Fix segv in MPI_Graph_create_undef_c Intel test.

When you call MPI_Graph_create with a old_comm of size N, and pass
nnodes=(N=1), then the Nth proc is supposed to get MPI_COMM_NULL out.
The code in this base function didn't properly handle the proc(s) that
are supposed to get MPI_COMM_NULL out.

cmr=v1.7.5:reviewer=hjelmn
Fixes #4425: Move r31146, r31148 to v1.7 branch (Fix comment in r31146)

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

r31146 [[BR]]
Protect against 0-byte allocations in carte_create and cart_sub.

cmr=v1.7.5:reviewer=jsquyres

r31148 [[BR]]
Fix comment in r31146

cmr=v1.7.5:ticket=#4425