RDMA/cm: Revert association of an RDMA device when binding to loopback
authorSean Hefty <sean.hefty@intel.com>
Tue, 9 Feb 2010 00:41:15 +0000 (16:41 -0800)
committerRoland Dreier <rolandd@cisco.com>
Wed, 10 Feb 2010 20:00:48 +0000 (12:00 -0800)
commit8523c0480979080e8088e40f25459e5b2d19f621
tree31bfb1ffba9d39dea55177f8e7308f45f3d272a3
parent3c8ad49b015eb115fbd6982f56d530f53cf57f84
RDMA/cm: Revert association of an RDMA device when binding to loopback

Revert the following change from commit 6f8372b6 ("RDMA/cm: fix
loopback address support")

   The defined behavior of rdma_bind_addr is to associate an RDMA
   device with an rdma_cm_id, as long as the user specified a non-
   zero address.  (ie they weren't just trying to reserve a port)
   Currently, if the loopback address is passed to rdma_bind_addr,
   no device is associated with the rdma_cm_id.  Fix this.

It turns out that important apps such as Open MPI depend on
rdma_bind_addr() NOT associating any RDMA device when binding to a
loopback address.  Open MPI is being updated to deal with this, but at
least until a new Open MPI release is available, maintain the previous
behavior: allow rdma_bind_addr() to succeed, but do not bind to a
device.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Acked-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/core/cma.c