aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuval Shaia <yuval.shaia@oracle.com>2017-11-07 03:49:09 -0500
committerDoug Ledford <dledford@redhat.com>2017-11-13 16:18:33 -0500
commite08ce2e82b2fc5cdd07de170e8b9e8327625005c (patch)
treec50073db51acafba25828ba92fdfa2b299ecf9e5
parent8b10ba783c9d0c69d53e7d78ff7f2cd921f80729 (diff)
RDMA/core: Make function rdma_copy_addr return void
Function returns zero - make it void. While there make struct net_device const. Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> Reviewed-by: Parav Pandit <parav@mellanox.com> Reviewed-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
-rw-r--r--drivers/infiniband/core/addr.c27
-rw-r--r--drivers/infiniband/core/cma.c8
-rw-r--r--include/rdma/ib_addr.h5
3 files changed, 19 insertions, 21 deletions
diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c
index d2f74721b3ba..f4e8185bccd3 100644
--- a/drivers/infiniband/core/addr.c
+++ b/drivers/infiniband/core/addr.c
@@ -229,8 +229,9 @@ void rdma_addr_unregister_client(struct rdma_addr_client *client)
229} 229}
230EXPORT_SYMBOL(rdma_addr_unregister_client); 230EXPORT_SYMBOL(rdma_addr_unregister_client);
231 231
232int rdma_copy_addr(struct rdma_dev_addr *dev_addr, struct net_device *dev, 232void rdma_copy_addr(struct rdma_dev_addr *dev_addr,
233 const unsigned char *dst_dev_addr) 233 const struct net_device *dev,
234 const unsigned char *dst_dev_addr)
234{ 235{
235 dev_addr->dev_type = dev->type; 236 dev_addr->dev_type = dev->type;
236 memcpy(dev_addr->src_dev_addr, dev->dev_addr, MAX_ADDR_LEN); 237 memcpy(dev_addr->src_dev_addr, dev->dev_addr, MAX_ADDR_LEN);
@@ -238,7 +239,6 @@ int rdma_copy_addr(struct rdma_dev_addr *dev_addr, struct net_device *dev,
238 if (dst_dev_addr) 239 if (dst_dev_addr)
239 memcpy(dev_addr->dst_dev_addr, dst_dev_addr, MAX_ADDR_LEN); 240 memcpy(dev_addr->dst_dev_addr, dst_dev_addr, MAX_ADDR_LEN);
240 dev_addr->bound_dev_if = dev->ifindex; 241 dev_addr->bound_dev_if = dev->ifindex;
241 return 0;
242} 242}
243EXPORT_SYMBOL(rdma_copy_addr); 243EXPORT_SYMBOL(rdma_copy_addr);
244 244
@@ -247,15 +247,14 @@ int rdma_translate_ip(const struct sockaddr *addr,
247 u16 *vlan_id) 247 u16 *vlan_id)
248{ 248{
249 struct net_device *dev; 249 struct net_device *dev;
250 int ret = -EADDRNOTAVAIL;
251 250
252 if (dev_addr->bound_dev_if) { 251 if (dev_addr->bound_dev_if) {
253 dev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if); 252 dev = dev_get_by_index(dev_addr->net, dev_addr->bound_dev_if);
254 if (!dev) 253 if (!dev)
255 return -ENODEV; 254 return -ENODEV;
256 ret = rdma_copy_addr(dev_addr, dev, NULL); 255 rdma_copy_addr(dev_addr, dev, NULL);
257 dev_put(dev); 256 dev_put(dev);
258 return ret; 257 return 0;
259 } 258 }
260 259
261 switch (addr->sa_family) { 260 switch (addr->sa_family) {
@@ -264,9 +263,9 @@ int rdma_translate_ip(const struct sockaddr *addr,
264 ((const struct sockaddr_in *)addr)->sin_addr.s_addr); 263 ((const struct sockaddr_in *)addr)->sin_addr.s_addr);
265 264
266 if (!dev) 265 if (!dev)
267 return ret; 266 return -EADDRNOTAVAIL;
268 267
269 ret = rdma_copy_addr(dev_addr, dev, NULL); 268 rdma_copy_addr(dev_addr, dev, NULL);
270 dev_addr->bound_dev_if = dev->ifindex; 269 dev_addr->bound_dev_if = dev->ifindex;
271 if (vlan_id) 270 if (vlan_id)
272 *vlan_id = rdma_vlan_dev_vlan_id(dev); 271 *vlan_id = rdma_vlan_dev_vlan_id(dev);
@@ -279,7 +278,7 @@ int rdma_translate_ip(const struct sockaddr *addr,
279 if (ipv6_chk_addr(dev_addr->net, 278 if (ipv6_chk_addr(dev_addr->net,
280 &((const struct sockaddr_in6 *)addr)->sin6_addr, 279 &((const struct sockaddr_in6 *)addr)->sin6_addr,
281 dev, 1)) { 280 dev, 1)) {
282 ret = rdma_copy_addr(dev_addr, dev, NULL); 281 rdma_copy_addr(dev_addr, dev, NULL);
283 dev_addr->bound_dev_if = dev->ifindex; 282 dev_addr->bound_dev_if = dev->ifindex;
284 if (vlan_id) 283 if (vlan_id)
285 *vlan_id = rdma_vlan_dev_vlan_id(dev); 284 *vlan_id = rdma_vlan_dev_vlan_id(dev);
@@ -290,7 +289,7 @@ int rdma_translate_ip(const struct sockaddr *addr,
290 break; 289 break;
291#endif 290#endif
292 } 291 }
293 return ret; 292 return 0;
294} 293}
295EXPORT_SYMBOL(rdma_translate_ip); 294EXPORT_SYMBOL(rdma_translate_ip);
296 295
@@ -336,7 +335,7 @@ static int dst_fetch_ha(struct dst_entry *dst, struct rdma_dev_addr *dev_addr,
336 const void *daddr) 335 const void *daddr)
337{ 336{
338 struct neighbour *n; 337 struct neighbour *n;
339 int ret; 338 int ret = 0;
340 339
341 n = dst_neigh_lookup(dst, daddr); 340 n = dst_neigh_lookup(dst, daddr);
342 341
@@ -346,7 +345,7 @@ static int dst_fetch_ha(struct dst_entry *dst, struct rdma_dev_addr *dev_addr,
346 neigh_event_send(n, NULL); 345 neigh_event_send(n, NULL);
347 ret = -ENODATA; 346 ret = -ENODATA;
348 } else { 347 } else {
349 ret = rdma_copy_addr(dev_addr, dst->dev, n->ha); 348 rdma_copy_addr(dev_addr, dst->dev, n->ha);
350 } 349 }
351 rcu_read_unlock(); 350 rcu_read_unlock();
352 351
@@ -494,7 +493,9 @@ static int addr_resolve_neigh(struct dst_entry *dst,
494 if (!(dst->dev->flags & IFF_NOARP)) 493 if (!(dst->dev->flags & IFF_NOARP))
495 return fetch_ha(dst, addr, dst_in, seq); 494 return fetch_ha(dst, addr, dst_in, seq);
496 495
497 return rdma_copy_addr(addr, dst->dev, NULL); 496 rdma_copy_addr(addr, dst->dev, NULL);
497
498 return 0;
498} 499}
499 500
500static int addr_resolve(struct sockaddr *src_in, 501static int addr_resolve(struct sockaddr *src_in,
diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index fa79c7076ccd..1fdb473b5df7 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -1846,9 +1846,7 @@ static struct rdma_id_private *cma_new_conn_id(struct rdma_cm_id *listen_id,
1846 rt->path_rec[1] = *ib_event->param.req_rcvd.alternate_path; 1846 rt->path_rec[1] = *ib_event->param.req_rcvd.alternate_path;
1847 1847
1848 if (net_dev) { 1848 if (net_dev) {
1849 ret = rdma_copy_addr(&rt->addr.dev_addr, net_dev, NULL); 1849 rdma_copy_addr(&rt->addr.dev_addr, net_dev, NULL);
1850 if (ret)
1851 goto err;
1852 } else { 1850 } else {
1853 if (!cma_protocol_roce(listen_id) && 1851 if (!cma_protocol_roce(listen_id) &&
1854 cma_any_addr(cma_src_addr(id_priv))) { 1852 cma_any_addr(cma_src_addr(id_priv))) {
@@ -1894,9 +1892,7 @@ static struct rdma_id_private *cma_new_udp_id(struct rdma_cm_id *listen_id,
1894 goto err; 1892 goto err;
1895 1893
1896 if (net_dev) { 1894 if (net_dev) {
1897 ret = rdma_copy_addr(&id->route.addr.dev_addr, net_dev, NULL); 1895 rdma_copy_addr(&id->route.addr.dev_addr, net_dev, NULL);
1898 if (ret)
1899 goto err;
1900 } else { 1896 } else {
1901 if (!cma_any_addr(cma_src_addr(id_priv))) { 1897 if (!cma_any_addr(cma_src_addr(id_priv))) {
1902 ret = cma_translate_addr(cma_src_addr(id_priv), 1898 ret = cma_translate_addr(cma_src_addr(id_priv),
diff --git a/include/rdma/ib_addr.h b/include/rdma/ib_addr.h
index b2a10c762304..18c564f60e93 100644
--- a/include/rdma/ib_addr.h
+++ b/include/rdma/ib_addr.h
@@ -125,8 +125,9 @@ int rdma_resolve_ip_route(struct sockaddr *src_addr,
125 125
126void rdma_addr_cancel(struct rdma_dev_addr *addr); 126void rdma_addr_cancel(struct rdma_dev_addr *addr);
127 127
128int rdma_copy_addr(struct rdma_dev_addr *dev_addr, struct net_device *dev, 128void rdma_copy_addr(struct rdma_dev_addr *dev_addr,
129 const unsigned char *dst_dev_addr); 129 const struct net_device *dev,
130 const unsigned char *dst_dev_addr);
130 131
131int rdma_addr_size(struct sockaddr *addr); 132int rdma_addr_size(struct sockaddr *addr);
132 133