fabric: Add missing wait/poll set classes

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Export fi_register_provider

Rename fi_version_register and export it from the library.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Define scalable endpoints

Scalable endpoints are endpoints that support multiple send and
receive queues (contexts).

Introduce the concept of transmit and receive contexts
(generalizations of send/receive queues).  Allow applications to
request that multiple contexts be associated with a single endpoint.

An endpoint has a single transport address, but the contexts allow
for multiple threads to process requests in parallel without
ordering or synchronization constraints.

This requires additional domain, endpoint, and AV attributes.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
prov/psm: more fix for the configuration script

Previously the "auto" setting would fail when PSM is not present.

Signed-off-by: Jianxin Xiong <jianxin.xiong@intel.com>
Merge pull request #136 from j-xiong/master

prov/psm: more fix for the configuration script
Merge remote branch 'upstream/master'
Merge pull request #137 from shefty/master

Add missing class and rename provider register export
fabric: Rename EQ condread to sread and remove cond param

An EQ is for control events.  There isn't a requirement
to support a condition on the blocking read call.  Remove
the cond variable and rename the read call.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Rename CQ condread to sread to match EQ

The blocking EQ read call was renamed to sread, synchronous read.
Modify the CQ condread call to match.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Add event type parameter to EQ ops

Move the event type from the top of the various event
structures to its own parameter.  This simplifies the
interface for the applications.  An event parameter is
added to the EQ read, sread, and write calls.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Add CM protocol to EP protocol defines

IB is braindead and has an out of band connection protocol
that isn't required to be used.  For EPs with IB
protocols, we need to include the CM protocol as part of
the definition in order to ensure interoperability.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Remove FI_BLOCK flag

It is no longer used as part of the interface.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
man/fi_getinfo: Describe provider returning multiple fi_info's

Indicate that providers may return multiple fi_info structures,
and that the order of the returned data indicates a specific
priority.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Merge branch 'dev'
Configury updates to fix verbs provider.
Merge pull request #142 from soniczhao/master

Configury updates to fix building of the verbs provider.
Merge remote branch 'upstream/master' into dev
Merge branch 'master' into dev
fabric: Really remove FI_BLOCK flag

Previous patch removed the use, now remove the flag.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Rename fi_fdomain() to just fi_domain

The 'f' is not needed and may cause people to curse when
reading it.  It's just a domain.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>