Lines Matching refs:net
131 void ip6_expire_frag_queue(struct net *net, struct frag_queue *fq, in ip6_expire_frag_queue() argument
144 dev = dev_get_by_index_rcu(net, fq->iif); in ip6_expire_frag_queue()
148 IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMFAILS); in ip6_expire_frag_queue()
153 IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMTIMEOUT); in ip6_expire_frag_queue()
176 struct net *net; in ip6_frag_expire() local
179 net = container_of(fq->q.net, struct net, ipv6.frags); in ip6_frag_expire()
181 ip6_expire_frag_queue(net, fq, &ip6_frags); in ip6_frag_expire()
185 fq_find(struct net *net, __be32 id, const struct in6_addr *src, in fq_find() argument
201 q = inet_frag_find(&net->ipv6.frags, &ip6_frags, &arg, hash); in fq_find()
215 struct net *net = dev_net(skb_dst(skb)->dev); in ip6_frag_queue() local
226 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), in ip6_frag_queue()
261 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), in ip6_frag_queue()
364 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), in ip6_frag_queue()
382 struct net *net = container_of(fq->q.net, struct net, ipv6.frags); in ip6_frag_reasm() local
505 IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMOKS); in ip6_frag_reasm()
518 IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMFAILS); in ip6_frag_reasm()
528 struct net *net = dev_net(skb_dst(skb)->dev); in ipv6_frag_rcv() local
533 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), IPSTATS_MIB_REASMREQDS); in ipv6_frag_rcv()
549 IP6_INC_STATS_BH(net, in ipv6_frag_rcv()
557 fq = fq_find(net, fhdr->identification, &hdr->saddr, &hdr->daddr, in ipv6_frag_rcv()
571 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), IPSTATS_MIB_REASMFAILS); in ipv6_frag_rcv()
576 IP6_INC_STATS_BH(net, ip6_dst_idev(skb_dst(skb)), in ipv6_frag_rcv()
631 static int __net_init ip6_frags_ns_sysctl_register(struct net *net) in ip6_frags_ns_sysctl_register() argument
637 if (!net_eq(net, &init_net)) { in ip6_frags_ns_sysctl_register()
642 table[0].data = &net->ipv6.frags.high_thresh; in ip6_frags_ns_sysctl_register()
643 table[0].extra1 = &net->ipv6.frags.low_thresh; in ip6_frags_ns_sysctl_register()
645 table[1].data = &net->ipv6.frags.low_thresh; in ip6_frags_ns_sysctl_register()
646 table[1].extra2 = &net->ipv6.frags.high_thresh; in ip6_frags_ns_sysctl_register()
647 table[2].data = &net->ipv6.frags.timeout; in ip6_frags_ns_sysctl_register()
650 if (net->user_ns != &init_user_ns) in ip6_frags_ns_sysctl_register()
654 hdr = register_net_sysctl(net, "net/ipv6", table); in ip6_frags_ns_sysctl_register()
658 net->ipv6.sysctl.frags_hdr = hdr; in ip6_frags_ns_sysctl_register()
662 if (!net_eq(net, &init_net)) in ip6_frags_ns_sysctl_register()
668 static void __net_exit ip6_frags_ns_sysctl_unregister(struct net *net) in ip6_frags_ns_sysctl_unregister() argument
672 table = net->ipv6.sysctl.frags_hdr->ctl_table_arg; in ip6_frags_ns_sysctl_unregister()
673 unregister_net_sysctl_table(net->ipv6.sysctl.frags_hdr); in ip6_frags_ns_sysctl_unregister()
674 if (!net_eq(net, &init_net)) in ip6_frags_ns_sysctl_unregister()
692 static int ip6_frags_ns_sysctl_register(struct net *net) in ip6_frags_ns_sysctl_register() argument
697 static void ip6_frags_ns_sysctl_unregister(struct net *net) in ip6_frags_ns_sysctl_unregister() argument
711 static int __net_init ipv6_frags_init_net(struct net *net) in ipv6_frags_init_net() argument
713 net->ipv6.frags.high_thresh = IPV6_FRAG_HIGH_THRESH; in ipv6_frags_init_net()
714 net->ipv6.frags.low_thresh = IPV6_FRAG_LOW_THRESH; in ipv6_frags_init_net()
715 net->ipv6.frags.timeout = IPV6_FRAG_TIMEOUT; in ipv6_frags_init_net()
717 inet_frags_init_net(&net->ipv6.frags); in ipv6_frags_init_net()
719 return ip6_frags_ns_sysctl_register(net); in ipv6_frags_init_net()
722 static void __net_exit ipv6_frags_exit_net(struct net *net) in ipv6_frags_exit_net() argument
724 ip6_frags_ns_sysctl_unregister(net); in ipv6_frags_exit_net()
725 inet_frags_exit_net(&net->ipv6.frags, &ip6_frags); in ipv6_frags_exit_net()