Fixes #3860: Move r29479 to v1.7 branch (Add support for routable ROCE)

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

r29479 [[BR]]
Add support for routable ROCE where different subnet_id is a valid to proceed with MPI routing.
(can happen in the same LAN)
developed by vasily, reviewed by miked
cmr=v1.7.4:reviewer=ompi-gk1.7
Fixes #3857: Move r29463 to v1.7 branch (Fix the IN_PLACE detection for)

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

r29463 [[BR]]
Fix the IN_PLACE detection for Fortran SCATTER and SCATTERV.

Thanks to Charles Gerlach for identifying the issue.

Oddly, this issue exists in trunk and v1.7, but ''not'' in the v1.6
tree (!).

cmr=v1.7.4:reviewer=hjelmn
Fixes #3863: move various usnic BTL fixes to the v1.7 branch

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

r29480 [[BR]]
Trivial comment change

r29482 [[BR]]
usnic: refactor usnic_stats_callback

Pull the bulk of the functionality out into a new routine,
ompi_btl_usnic_print_stats, which can be used in other debugging
contexts.  This also lets us eliminate the module->final_stats state
tracking.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

r29483 [[BR]]
usnic: add ompi_btl_usnic_component_debug helper

This new routine can be called in exceptional situations, either
conditionally in BTL code or from a debugger, to help with debugging in
cases where MSGDEBUG1/2 or stats logging are impractical but more detail
is needed.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

r29484 [[BR]]
usnic: fix several memory leaks

- some free lists simply were not being OBJ_DESTRUCTed, so they never
  freed their internal memory

- channel->recv_segs.ctx was being assigned in a way that got clobbered
  by ompi_free_list_init_new, so the cleanup code that relied on it
  being set never ran

- numerous other ".ctx" assignments were similarly ineffectual and were
  not being consumed, so I deleted them

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

r29485 [[BR]]
usnic: correctly clean up verbs resources

Due to deallocation ordering (and an entirely missed deallocation), we
were leaking modest amounts of memory inside libusnic_verbs.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>
Fixes #3864: move memory leak fixes to v1.7 branch

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

r29486 [[BR]]
rcache/vma: fix module finalization memory leaks

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

r29487 [[BR]]
mpool/rdma: fix memory leak at module finalize

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>
Fixes #3865: Move r29492 to v1.7 branch

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

r29488 [[BR]]
opal: support __attribute__((__noinline__))

First cut does not attempt any "cross-check".  As we discover compilers
which complain about __noinline__, we will add specific cross checks to
handle those cases.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

r29492 [[BR]]
fix compile error introduced by r29488

Apologies for the breakage, I did my test build in the wrong window...

No reviewer.

cmr=v1.7.4:ticket=3865