IB/core: Add IP to GID netlink offload
authorMark Bloch <markb@mellanox.com>
Thu, 19 May 2016 14:12:36 +0000 (17:12 +0300)
committerDoug Ledford <dledford@redhat.com>
Tue, 24 May 2016 18:44:04 +0000 (14:44 -0400)
commitae43f8286730d1f2d241c34601df59f6d2286ac4
treebeb629a68629c69511355426f91dde307908f2cb
parent735c631ae99d4b6cffc9e2774258329c526daa65
IB/core: Add IP to GID netlink offload

There is an assumption that rdmacm is used only between nodes
in the same IB subnet, this why ARP resolution can be used to turn
IP to GID in rdmacm.

When dealing with IB communication between subnets this assumption
is no longer valid. ARP resolution will get us the next hop device
address and not the peer node's device address.

To solve this issue, we will check user space if it can provide the
GID of the peer node, and fail if not.

We add a sequence number to identify each request and fill in the GID
upon answer from userspace.

Signed-off-by: Mark Bloch <markb@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/core/addr.c
drivers/infiniband/core/core_priv.h
drivers/infiniband/core/device.c