Lines Matching defs:sitn
104 struct sit_net *sitn = net_generic(net, sit_net_id);
107 for_each_ip_tunnel_rcu(t, sitn->tunnels_r_l[h0 ^ h1]) {
115 for_each_ip_tunnel_rcu(t, sitn->tunnels_r[h0]) {
122 for_each_ip_tunnel_rcu(t, sitn->tunnels_l[h1]) {
129 t = rcu_dereference(sitn->tunnels_wc[0]);
135 static struct ip_tunnel __rcu **__ipip6_bucket(struct sit_net *sitn,
151 return &sitn->tunnels[prio][h];
154 static inline struct ip_tunnel __rcu **ipip6_bucket(struct sit_net *sitn,
157 return __ipip6_bucket(sitn, &t->parms);
160 static void ipip6_tunnel_unlink(struct sit_net *sitn, struct ip_tunnel *t)
165 for (tp = ipip6_bucket(sitn, t);
175 static void ipip6_tunnel_link(struct sit_net *sitn, struct ip_tunnel *t)
177 struct ip_tunnel __rcu **tp = ipip6_bucket(sitn, t);
183 static void ipip6_tunnel_clone_6rd(struct net_device *dev, struct sit_net *sitn)
188 if (dev == sitn->fb_tunnel_dev || !sitn->fb_tunnel_dev) {
194 struct ip_tunnel *t0 = netdev_priv(sitn->fb_tunnel_dev);
204 struct sit_net *sitn = net_generic(net, sit_net_id);
219 ipip6_tunnel_clone_6rd(dev, sitn);
221 ipip6_tunnel_link(sitn, t);
237 struct sit_net *sitn = net_generic(net, sit_net_id);
239 for (tp = __ipip6_bucket(sitn, parms);
510 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id);
512 if (dev == sitn->fb_tunnel_dev) {
513 RCU_INIT_POINTER(sitn->tunnels_wc[0], NULL);
515 ipip6_tunnel_unlink(sitn, tunnel);
1141 struct sit_net *sitn = net_generic(net, sit_net_id);
1143 ipip6_tunnel_unlink(sitn, t);
1149 ipip6_tunnel_link(sitn, t);
1468 struct sit_net *sitn = net_generic(net, sit_net_id);
1475 rcu_assign_pointer(sitn->tunnels_wc[0], tunnel);
1665 struct sit_net *sitn = net_generic(net, sit_net_id);
1672 if (dev == sitn->fb_tunnel_dev)
1817 struct sit_net *sitn = net_generic(net, sit_net_id);
1819 if (dev != sitn->fb_tunnel_dev)
1861 struct sit_net *sitn = net_generic(net, sit_net_id);
1874 t = rtnl_dereference(sitn->tunnels[prio][h]);
1890 struct sit_net *sitn = net_generic(net, sit_net_id);
1894 sitn->tunnels[0] = sitn->tunnels_wc;
1895 sitn->tunnels[1] = sitn->tunnels_l;
1896 sitn->tunnels[2] = sitn->tunnels_r;
1897 sitn->tunnels[3] = sitn->tunnels_r_l;
1902 sitn->fb_tunnel_dev = alloc_netdev(sizeof(struct ip_tunnel), "sit0",
1905 if (!sitn->fb_tunnel_dev) {
1909 dev_net_set(sitn->fb_tunnel_dev, net);
1910 sitn->fb_tunnel_dev->rtnl_link_ops = &sit_link_ops;
1914 sitn->fb_tunnel_dev->features |= NETIF_F_NETNS_LOCAL;
1916 err = register_netdev(sitn->fb_tunnel_dev);
1920 ipip6_tunnel_clone_6rd(sitn->fb_tunnel_dev, sitn);
1921 ipip6_fb_tunnel_init(sitn->fb_tunnel_dev);
1923 t = netdev_priv(sitn->fb_tunnel_dev);
1925 strcpy(t->parms.name, sitn->fb_tunnel_dev->name);
1929 free_netdev(sitn->fb_tunnel_dev);