RDMA/ucma: Support querying when IB paths are not reversible
authorSean Hefty <sean.hefty@intel.com>
Wed, 29 May 2013 17:09:27 +0000 (10:09 -0700)
committerRoland Dreier <roland@purestorage.com>
Fri, 21 Jun 2013 06:35:40 +0000 (23:35 -0700)
commitac53b264b2f39e89781e3b855008123dfdb44aea
treec72f7ee7aed7071da300d1f5cb52b0767b949ef5
parent2e08b5879e9244fa893fe09f5b887f72f4e6c29b
RDMA/ucma: Support querying when IB paths are not reversible

The current query_route call can return up to two path records.  The
assumption being that one is the primary path, with optional support
for an alternate path.  In both cases, the paths are assumed to be
reversible and are used to send CM MADs.

With the ability to manually set IB path data, the rdma cm can
eventually be capable of using up to 6 paths per connection:

forward primary, reverse primary,
forward alternate, reverse alternate,
reversible primary path for CM MADs
reversible alternate path for CM MADs.

(It is unclear at this time if IB routing will complicate this)  In
order to handle more flexible routing topologies, add a new command to
report any number of paths.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/core/ucma.c
include/uapi/rdma/rdma_user_cm.h