Lines Matching refs:sitn

97 	struct sit_net *sitn = net_generic(net, sit_net_id);  in ipip6_tunnel_lookup()  local
100 for_each_ip_tunnel_rcu(t, sitn->tunnels_r_l[h0 ^ h1]) { in ipip6_tunnel_lookup()
108 for_each_ip_tunnel_rcu(t, sitn->tunnels_r[h0]) { in ipip6_tunnel_lookup()
115 for_each_ip_tunnel_rcu(t, sitn->tunnels_l[h1]) { in ipip6_tunnel_lookup()
122 t = rcu_dereference(sitn->tunnels_wc[0]); in ipip6_tunnel_lookup()
128 static struct ip_tunnel __rcu **__ipip6_bucket(struct sit_net *sitn, in __ipip6_bucket() argument
144 return &sitn->tunnels[prio][h]; in __ipip6_bucket()
147 static inline struct ip_tunnel __rcu **ipip6_bucket(struct sit_net *sitn, in ipip6_bucket() argument
150 return __ipip6_bucket(sitn, &t->parms); in ipip6_bucket()
153 static void ipip6_tunnel_unlink(struct sit_net *sitn, struct ip_tunnel *t) in ipip6_tunnel_unlink() argument
158 for (tp = ipip6_bucket(sitn, t); in ipip6_tunnel_unlink()
168 static void ipip6_tunnel_link(struct sit_net *sitn, struct ip_tunnel *t) in ipip6_tunnel_link() argument
170 struct ip_tunnel __rcu **tp = ipip6_bucket(sitn, t); in ipip6_tunnel_link()
176 static void ipip6_tunnel_clone_6rd(struct net_device *dev, struct sit_net *sitn) in ipip6_tunnel_clone_6rd() argument
181 if (dev == sitn->fb_tunnel_dev || !sitn->fb_tunnel_dev) { in ipip6_tunnel_clone_6rd()
187 struct ip_tunnel *t0 = netdev_priv(sitn->fb_tunnel_dev); in ipip6_tunnel_clone_6rd()
197 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_tunnel_create() local
212 ipip6_tunnel_clone_6rd(dev, sitn); in ipip6_tunnel_create()
216 ipip6_tunnel_link(sitn, t); in ipip6_tunnel_create()
232 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_tunnel_locate() local
234 for (tp = __ipip6_bucket(sitn, parms); in ipip6_tunnel_locate()
474 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id); in ipip6_tunnel_uninit() local
476 if (dev == sitn->fb_tunnel_dev) { in ipip6_tunnel_uninit()
477 RCU_INIT_POINTER(sitn->tunnels_wc[0], NULL); in ipip6_tunnel_uninit()
479 ipip6_tunnel_unlink(sitn, tunnel); in ipip6_tunnel_uninit()
1102 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_tunnel_update() local
1104 ipip6_tunnel_unlink(sitn, t); in ipip6_tunnel_update()
1110 ipip6_tunnel_link(sitn, t); in ipip6_tunnel_update()
1174 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_tunnel_ioctl() local
1184 if (dev == sitn->fb_tunnel_dev) { in ipip6_tunnel_ioctl()
1235 if (dev != sitn->fb_tunnel_dev && cmd == SIOCCHGTUNNEL) { in ipip6_tunnel_ioctl()
1266 if (dev == sitn->fb_tunnel_dev) { in ipip6_tunnel_ioctl()
1275 if (t == netdev_priv(sitn->fb_tunnel_dev)) in ipip6_tunnel_ioctl()
1285 if (dev == sitn->fb_tunnel_dev) in ipip6_tunnel_ioctl()
1297 if (dev == sitn->fb_tunnel_dev) in ipip6_tunnel_ioctl()
1334 ipip6_tunnel_clone_6rd(dev, sitn); in ipip6_tunnel_ioctl()
1422 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_fb_tunnel_init() local
1430 rcu_assign_pointer(sitn->tunnels_wc[0], tunnel); in ipip6_fb_tunnel_init()
1617 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_changelink() local
1624 if (dev == sitn->fb_tunnel_dev) in ipip6_changelink()
1769 struct sit_net *sitn = net_generic(net, sit_net_id); in ipip6_dellink() local
1771 if (dev != sitn->fb_tunnel_dev) in ipip6_dellink()
1813 struct sit_net *sitn = net_generic(net, sit_net_id); in sit_destroy_tunnels() local
1826 t = rtnl_dereference(sitn->tunnels[prio][h]); in sit_destroy_tunnels()
1842 struct sit_net *sitn = net_generic(net, sit_net_id); in sit_init_net() local
1846 sitn->tunnels[0] = sitn->tunnels_wc; in sit_init_net()
1847 sitn->tunnels[1] = sitn->tunnels_l; in sit_init_net()
1848 sitn->tunnels[2] = sitn->tunnels_r; in sit_init_net()
1849 sitn->tunnels[3] = sitn->tunnels_r_l; in sit_init_net()
1854 sitn->fb_tunnel_dev = alloc_netdev(sizeof(struct ip_tunnel), "sit0", in sit_init_net()
1857 if (!sitn->fb_tunnel_dev) { in sit_init_net()
1861 dev_net_set(sitn->fb_tunnel_dev, net); in sit_init_net()
1862 sitn->fb_tunnel_dev->rtnl_link_ops = &sit_link_ops; in sit_init_net()
1866 sitn->fb_tunnel_dev->features |= NETIF_F_NETNS_LOCAL; in sit_init_net()
1868 err = register_netdev(sitn->fb_tunnel_dev); in sit_init_net()
1872 ipip6_tunnel_clone_6rd(sitn->fb_tunnel_dev, sitn); in sit_init_net()
1873 ipip6_fb_tunnel_init(sitn->fb_tunnel_dev); in sit_init_net()
1875 t = netdev_priv(sitn->fb_tunnel_dev); in sit_init_net()
1877 strcpy(t->parms.name, sitn->fb_tunnel_dev->name); in sit_init_net()
1881 ipip6_dev_free(sitn->fb_tunnel_dev); in sit_init_net()
1882 free_netdev(sitn->fb_tunnel_dev); in sit_init_net()