Lines Matching full:routes
31 struct phonet_routes routes; member
259 /* Remove left-over Phonet routes */ in phonet_route_autodel()
261 mutex_lock(&pnn->routes.lock); in phonet_route_autodel()
263 if (rcu_access_pointer(pnn->routes.table[i]) == dev) { in phonet_route_autodel()
264 RCU_INIT_POINTER(pnn->routes.table[i], NULL); in phonet_route_autodel()
267 mutex_unlock(&pnn->routes.lock); in phonet_route_autodel()
314 mutex_init(&pnn->routes.lock); in phonet_init_net()
360 struct phonet_routes *routes = &pnn->routes; in phonet_route_add() local
364 mutex_lock(&routes->lock); in phonet_route_add()
365 if (routes->table[daddr] == NULL) { in phonet_route_add()
366 rcu_assign_pointer(routes->table[daddr], dev); in phonet_route_add()
370 mutex_unlock(&routes->lock); in phonet_route_add()
377 struct phonet_routes *routes = &pnn->routes; in phonet_route_del() local
380 mutex_lock(&routes->lock); in phonet_route_del()
381 if (rcu_access_pointer(routes->table[daddr]) == dev) in phonet_route_del()
382 RCU_INIT_POINTER(routes->table[daddr], NULL); in phonet_route_del()
385 mutex_unlock(&routes->lock); in phonet_route_del()
397 struct phonet_routes *routes = &pnn->routes; in phonet_route_get_rcu() local
401 dev = rcu_dereference(routes->table[daddr]); in phonet_route_get_rcu()
408 struct phonet_routes *routes = &pnn->routes; in phonet_route_output() local
413 dev = rcu_dereference(routes->table[daddr]); in phonet_route_output()