Lines Matching defs:sitn
106 struct sit_net *sitn = net_generic(net, sit_net_id);
109 for_each_ip_tunnel_rcu(t, sitn->tunnels_r_l[h0 ^ h1]) {
117 for_each_ip_tunnel_rcu(t, sitn->tunnels_r[h0]) {
124 for_each_ip_tunnel_rcu(t, sitn->tunnels_l[h1]) {
131 t = rcu_dereference(sitn->tunnels_wc[0]);
138 __ipip6_bucket(struct sit_net *sitn, struct ip_tunnel_parm_kern *parms)
153 return &sitn->tunnels[prio][h];
156 static inline struct ip_tunnel __rcu **ipip6_bucket(struct sit_net *sitn,
159 return __ipip6_bucket(sitn, &t->parms);
162 static void ipip6_tunnel_unlink(struct sit_net *sitn, struct ip_tunnel *t)
167 for (tp = ipip6_bucket(sitn, t);
177 static void ipip6_tunnel_link(struct sit_net *sitn, struct ip_tunnel *t)
179 struct ip_tunnel __rcu **tp = ipip6_bucket(sitn, t);
185 static void ipip6_tunnel_clone_6rd(struct net_device *dev, struct sit_net *sitn)
190 if (dev == sitn->fb_tunnel_dev || !sitn->fb_tunnel_dev) {
196 struct ip_tunnel *t0 = netdev_priv(sitn->fb_tunnel_dev);
205 struct sit_net *sitn = net_generic(t->net, sit_net_id);
220 ipip6_tunnel_clone_6rd(dev, sitn);
222 ipip6_tunnel_link(sitn, t);
239 struct sit_net *sitn = net_generic(net, sit_net_id);
241 for (tp = __ipip6_bucket(sitn, parms);
516 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id);
518 if (dev == sitn->fb_tunnel_dev) {
519 RCU_INIT_POINTER(sitn->tunnels_wc[0], NULL);
521 ipip6_tunnel_unlink(sitn, tunnel);
1146 struct sit_net *sitn = net_generic(net, sit_net_id);
1148 ipip6_tunnel_unlink(sitn, t);
1154 ipip6_tunnel_link(sitn, t);
1471 struct sit_net *sitn = net_generic(net, sit_net_id);
1478 rcu_assign_pointer(sitn->tunnels_wc[0], tunnel);
1613 struct sit_net *sitn = net_generic(net, sit_net_id);
1620 if (dev == sitn->fb_tunnel_dev)
1766 struct sit_net *sitn = net_generic(net, sit_net_id);
1768 if (dev != sitn->fb_tunnel_dev)
1809 struct sit_net *sitn = net_generic(net, sit_net_id);
1822 t = rtnl_net_dereference(net, sitn->tunnels[prio][h]);
1838 struct sit_net *sitn = net_generic(net, sit_net_id);
1842 sitn->tunnels[0] = sitn->tunnels_wc;
1843 sitn->tunnels[1] = sitn->tunnels_l;
1844 sitn->tunnels[2] = sitn->tunnels_r;
1845 sitn->tunnels[3] = sitn->tunnels_r_l;
1850 sitn->fb_tunnel_dev = alloc_netdev(sizeof(struct ip_tunnel), "sit0",
1853 if (!sitn->fb_tunnel_dev) {
1857 dev_net_set(sitn->fb_tunnel_dev, net);
1858 sitn->fb_tunnel_dev->rtnl_link_ops = &sit_link_ops;
1862 sitn->fb_tunnel_dev->netns_immutable = true;
1864 t = netdev_priv(sitn->fb_tunnel_dev);
1867 err = register_netdev(sitn->fb_tunnel_dev);
1871 ipip6_tunnel_clone_6rd(sitn->fb_tunnel_dev, sitn);
1872 ipip6_fb_tunnel_init(sitn->fb_tunnel_dev);
1874 strcpy(t->parms.name, sitn->fb_tunnel_dev->name);
1878 free_netdev(sitn->fb_tunnel_dev);