Lines Matching full:routes
31 struct phonet_routes routes; member
258 /* Remove left-over Phonet routes */ in phonet_route_autodel()
260 mutex_lock(&pnn->routes.lock); in phonet_route_autodel()
262 if (rcu_access_pointer(pnn->routes.table[i]) == dev) { in phonet_route_autodel()
263 RCU_INIT_POINTER(pnn->routes.table[i], NULL); in phonet_route_autodel()
266 mutex_unlock(&pnn->routes.lock); in phonet_route_autodel()
313 mutex_init(&pnn->routes.lock); in phonet_init_net()
359 struct phonet_routes *routes = &pnn->routes; in phonet_route_add() local
363 mutex_lock(&routes->lock); in phonet_route_add()
364 if (routes->table[daddr] == NULL) { in phonet_route_add()
365 rcu_assign_pointer(routes->table[daddr], dev); in phonet_route_add()
369 mutex_unlock(&routes->lock); in phonet_route_add()
376 struct phonet_routes *routes = &pnn->routes; in phonet_route_del() local
379 mutex_lock(&routes->lock); in phonet_route_del()
380 if (rcu_access_pointer(routes->table[daddr]) == dev) in phonet_route_del()
381 RCU_INIT_POINTER(routes->table[daddr], NULL); in phonet_route_del()
384 mutex_unlock(&routes->lock); in phonet_route_del()
396 struct phonet_routes *routes = &pnn->routes; in phonet_route_get_rcu() local
400 dev = rcu_dereference(routes->table[daddr]); in phonet_route_get_rcu()
407 struct phonet_routes *routes = &pnn->routes; in phonet_route_output() local
412 dev = rcu_dereference(routes->table[daddr]); in phonet_route_output()