Lines Matching refs:net_dev
1105 static bool validate_ipv4_net_dev(struct net_device *net_dev, in validate_ipv4_net_dev() argument
1123 fl4.flowi4_iif = net_dev->ifindex; in validate_ipv4_net_dev()
1128 err = fib_lookup(dev_net(net_dev), &fl4, &res, 0); in validate_ipv4_net_dev()
1129 ret = err == 0 && FIB_RES_DEV(res) == net_dev; in validate_ipv4_net_dev()
1135 static bool validate_ipv6_net_dev(struct net_device *net_dev, in validate_ipv6_net_dev() argument
1142 struct rt6_info *rt = rt6_lookup(dev_net(net_dev), &dst_addr->sin6_addr, in validate_ipv6_net_dev()
1143 &src_addr->sin6_addr, net_dev->ifindex, in validate_ipv6_net_dev()
1150 ret = rt->rt6i_idev->dev == net_dev; in validate_ipv6_net_dev()
1159 static bool validate_net_dev(struct net_device *net_dev, in validate_net_dev() argument
1171 validate_ipv4_net_dev(net_dev, daddr4, saddr4); in validate_net_dev()
1175 validate_ipv6_net_dev(net_dev, daddr6, saddr6); in validate_net_dev()
1188 struct net_device *net_dev; in cma_get_net_dev() local
1197 net_dev = ib_get_net_dev_by_params(req->device, req->port, req->pkey, in cma_get_net_dev()
1199 if (!net_dev) in cma_get_net_dev()
1202 if (!validate_net_dev(net_dev, listen_addr, src_addr)) { in cma_get_net_dev()
1203 dev_put(net_dev); in cma_get_net_dev()
1207 return net_dev; in cma_get_net_dev()
1269 const struct net_device *net_dev, in cma_match_net_dev() argument
1274 if (!net_dev) in cma_match_net_dev()
1281 (net_eq(dev_net(net_dev), addr->dev_addr.net) && in cma_match_net_dev()
1282 addr->dev_addr.bound_dev_if == net_dev->ifindex); in cma_match_net_dev()
1290 const struct net_device *net_dev) in cma_find_listener() argument
1300 cma_match_net_dev(&id_priv->id, net_dev, req->port)) in cma_find_listener()
1306 cma_match_net_dev(&id_priv_dev->id, net_dev, req->port)) in cma_find_listener()
1317 struct net_device **net_dev) in cma_id_from_event() argument
1328 *net_dev = cma_get_net_dev(ib_event, &req); in cma_id_from_event()
1329 if (IS_ERR(*net_dev)) { in cma_id_from_event()
1330 if (PTR_ERR(*net_dev) == -EAFNOSUPPORT) { in cma_id_from_event()
1332 *net_dev = NULL; in cma_id_from_event()
1336 *net_dev = NULL; in cma_id_from_event()
1338 return ERR_CAST(*net_dev); in cma_id_from_event()
1342 bind_list = cma_ps_find(*net_dev ? dev_net(*net_dev) : &init_net, in cma_id_from_event()
1345 id_priv = cma_find_listener(bind_list, cm_id, ib_event, &req, *net_dev); in cma_id_from_event()
1346 if (IS_ERR(id_priv) && *net_dev) { in cma_id_from_event()
1347 dev_put(*net_dev); in cma_id_from_event()
1348 *net_dev = NULL; in cma_id_from_event()
1602 struct net_device *net_dev) in cma_new_conn_id() argument
1635 if (net_dev) { in cma_new_conn_id()
1636 ret = rdma_copy_addr(&rt->addr.dev_addr, net_dev, NULL); in cma_new_conn_id()
1663 struct net_device *net_dev) in cma_new_udp_id() argument
1683 if (net_dev) { in cma_new_udp_id()
1684 ret = rdma_copy_addr(&id->route.addr.dev_addr, net_dev, NULL); in cma_new_udp_id()
1731 struct net_device *net_dev; in cma_req_handler() local
1734 listen_id = cma_id_from_event(cm_id, ib_event, &net_dev); in cma_req_handler()
1752 conn_id = cma_new_udp_id(&listen_id->id, ib_event, net_dev); in cma_req_handler()
1757 conn_id = cma_new_conn_id(&listen_id->id, ib_event, net_dev); in cma_req_handler()
1795 if (net_dev) in cma_req_handler()
1796 dev_put(net_dev); in cma_req_handler()
1812 if (net_dev) in cma_req_handler()
1813 dev_put(net_dev); in cma_req_handler()