Skip to content

Commit 77addc5

Browse files
paravmellanoxjgunthorpe
authored andcommitted
RDMA/core: Rename rdma_copy_addr to rdma_copy_src_l2_addr
Now that rdma_copy_addr() only copies the source addresses and all callers are interested in copying only source addresses, simplify it to drop the destination address argument. Given that it only copies source layer2 addresses, rename it to rdma_copy_src_l2_addr for better code readability. Signed-off-by: Parav Pandit <parav@mellanox.com> Reviewed-by: Daniel Jurgens <danielj@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
1 parent a362ea1 commit 77addc5

File tree

4 files changed

+19
-15
lines changed

4 files changed

+19
-15
lines changed

drivers/infiniband/core/addr.c

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -219,18 +219,24 @@ int rdma_addr_size_kss(struct __kernel_sockaddr_storage *addr)
219219
}
220220
EXPORT_SYMBOL(rdma_addr_size_kss);
221221

222-
void rdma_copy_addr(struct rdma_dev_addr *dev_addr,
223-
const struct net_device *dev,
224-
const unsigned char *dst_dev_addr)
222+
/**
223+
* rdma_copy_src_l2_addr - Copy netdevice source addresses
224+
* @dev_addr: Destination address pointer where to copy the addresses
225+
* @dev: Netdevice whose source addresses to copy
226+
*
227+
* rdma_copy_src_l2_addr() copies source addresses from the specified netdevice.
228+
* This includes unicast address, broadcast address, device type and
229+
* interface index.
230+
*/
231+
void rdma_copy_src_l2_addr(struct rdma_dev_addr *dev_addr,
232+
const struct net_device *dev)
225233
{
226234
dev_addr->dev_type = dev->type;
227235
memcpy(dev_addr->src_dev_addr, dev->dev_addr, MAX_ADDR_LEN);
228236
memcpy(dev_addr->broadcast, dev->broadcast, MAX_ADDR_LEN);
229-
if (dst_dev_addr)
230-
memcpy(dev_addr->dst_dev_addr, dst_dev_addr, MAX_ADDR_LEN);
231237
dev_addr->bound_dev_if = dev->ifindex;
232238
}
233-
EXPORT_SYMBOL(rdma_copy_addr);
239+
EXPORT_SYMBOL(rdma_copy_src_l2_addr);
234240

235241
static struct net_device *
236242
rdma_find_ndev_for_src_ip_rcu(struct net *net, const struct sockaddr *src_in)
@@ -271,15 +277,15 @@ int rdma_translate_ip(const struct sockaddr *addr,
271277
dev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if);
272278
if (!dev)
273279
return -ENODEV;
274-
rdma_copy_addr(dev_addr, dev, NULL);
280+
rdma_copy_src_l2_addr(dev_addr, dev);
275281
dev_put(dev);
276282
return 0;
277283
}
278284

279285
rcu_read_lock();
280286
dev = rdma_find_ndev_for_src_ip_rcu(dev_addr->net, addr);
281287
if (!IS_ERR(dev))
282-
rdma_copy_addr(dev_addr, dev, NULL);
288+
rdma_copy_src_l2_addr(dev_addr, dev);
283289
rcu_read_unlock();
284290
return PTR_ERR_OR_ZERO(dev);
285291
}
@@ -484,7 +490,7 @@ static int rdma_set_src_addr(const struct dst_entry *dst,
484490
if (dst->dev->flags & IFF_LOOPBACK)
485491
ret = rdma_translate_ip(dst_in, dev_addr);
486492
else
487-
rdma_copy_addr(dev_addr, dst->dev, NULL);
493+
rdma_copy_src_l2_addr(dev_addr, dst->dev);
488494
return ret;
489495
}
490496

drivers/infiniband/core/cma.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1900,7 +1900,7 @@ cma_ib_new_conn_id(const struct rdma_cm_id *listen_id,
19001900
rt->path_rec[1] = *ib_event->param.req_rcvd.alternate_path;
19011901

19021902
if (net_dev) {
1903-
rdma_copy_addr(&rt->addr.dev_addr, net_dev, NULL);
1903+
rdma_copy_src_l2_addr(&rt->addr.dev_addr, net_dev);
19041904
} else {
19051905
if (!cma_protocol_roce(listen_id) &&
19061906
cma_any_addr(cma_src_addr(id_priv))) {
@@ -1950,7 +1950,7 @@ cma_ib_new_udp_id(const struct rdma_cm_id *listen_id,
19501950
goto err;
19511951

19521952
if (net_dev) {
1953-
rdma_copy_addr(&id->route.addr.dev_addr, net_dev, NULL);
1953+
rdma_copy_src_l2_addr(&id->route.addr.dev_addr, net_dev);
19541954
} else {
19551955
if (!cma_any_addr(cma_src_addr(id_priv))) {
19561956
ret = cma_translate_addr(cma_src_addr(id_priv),

drivers/infiniband/core/core_priv.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,5 +340,7 @@ int rdma_addr_find_l2_eth_by_grh(const union ib_gid *sgid,
340340
const union ib_gid *dgid,
341341
u8 *dmac, const struct net_device *ndev,
342342
int *hoplimit);
343+
void rdma_copy_src_l2_addr(struct rdma_dev_addr *dev_addr,
344+
const struct net_device *dev);
343345

344346
#endif /* _CORE_PRIV_H */

include/rdma/ib_addr.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,10 +105,6 @@ int rdma_resolve_ip(struct sockaddr *src_addr, const struct sockaddr *dst_addr,
105105

106106
void rdma_addr_cancel(struct rdma_dev_addr *addr);
107107

108-
void rdma_copy_addr(struct rdma_dev_addr *dev_addr,
109-
const struct net_device *dev,
110-
const unsigned char *dst_dev_addr);
111-
112108
int rdma_addr_size(const struct sockaddr *addr);
113109
int rdma_addr_size_in6(struct sockaddr_in6 *addr);
114110
int rdma_addr_size_kss(struct __kernel_sockaddr_storage *addr);

0 commit comments

Comments
 (0)