Merge pull request #115 from shefty/master

Updates to provider interface
configure.ac: remove "--disable-libcheck"

--disable-libcheck is a very bad idea.  If you build valgrind support
without <valgrind/memcheck.h>, then fi.h won't compile.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
Merge pull request #116 from jsquyres/topic/disable-disable-libcheck

configure.ac: remove "--disable-libcheck"
prov/psm: bug fix: rma segfault when mr is invalid

Signed-off-by: Jianxin Xiong <jianxin.xiong@intel.com>
ibverbs: rename provider-specific symbols to be "fi_ibv_*"

This clearly delineates between symbols here in this provider and
symbols that belong to libibverbs.

As a bonus side-effect, some provider symbols that began with "__"
(which are in the compiler's namespace) were eliminated.
include: naming convention for 'direct' files

In direct mode, include 'fi_direct_eq_domain.h'

Signed-off-by: Sayantan Sur <sayantan.sur@intel.com>
man: Fix missing update to fi_fdomain call

Takes domain attributes as input, not fi_info.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Merge pull request #124 from shefty/master

man: Fix missing update to fi_fdomain call
Merge pull request #121 from j-xiong/master

prov/psm: bug fix: rma segfault when mr is invalid
Merge pull request #122 from sayantansur/direct-eq

include: naming convention for 'direct' files
include: direct_eq.h not direct_eq_domain.h

The direct file name for fi_eq.h should be fi_direct_eq.h,
not fi_direct_eq_domain.h

Signed-off-by: Sayantan Sur <sayantan.sur@intel.com>
Merge pull request #125 from sayantansur/direct-eq2

include: direct_eq.h not direct_eq_domain.h
Merge pull request #119 from jsquyres/topic/rename-ibv-to-fi_ibv

ibverbs: rename provider-specific symbols to be "fi_ibv_*"
verbs: rename "ibverbs" provider to be "verbs"

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
Merge pull request #126 from jsquyres/topic/rename-ibverbs-to-verbs

verbs: rename "ibverbs" provider to be "verbs"
Enable modular building of selected providers, disabled by default.

0, 1, 2, or 3 (all) providers can be built as loadable.
Any combination of loadable/built-in/not built should work, ie:

$ # build into libfabric.so: psm, sockets
$ # dlopen: libibverbs-fi.so, $libdir/libfabric/*fi.so
$ ./configure –enable-verbs=dl

$ # build libfabric.so: nothing
$ # dlopen: lib{sockets,psm,ibverbs}-fi.so, $libdir/libfabric/*fi.so
$ ./configure –enable-verbs=dl --enable-sockets=dl --enable-psm=dl

$ # everything built in as normal
$ # dlopen: $libdir/libfabric/*fi.so, if exists
$ ./configure

Addressed issues from review:

Remove debugging printf, remove commented out ini/fini calls.
Remove missed merge conflict from rebase.
Don't export non public utility functions, except for fi_version_register for dynamically loaded modules.

Compile seperate object for utility functions, include in libfabric.so for built-in providers, and have modular providers build it in.