Lines Matching refs:net
93 int ip_frag_mem(struct net *net) in ip_frag_mem() argument
95 return sum_frag_mem_limit(&net->ipv4.frags); in ip_frag_mem()
140 struct netns_ipv4 *ipv4 = container_of(q->net, struct netns_ipv4, in ip4_frag_init()
142 struct net *net = container_of(ipv4, struct net, ipv4); in ip4_frag_init() local
154 inet_getpeer_v4(net->ipv4.peers, arg->iph->saddr, arg->vif, 1) : in ip4_frag_init()
198 struct net *net; in ip_expire() local
201 net = container_of(qp->q.net, struct net, ipv4.frags); in ip_expire()
209 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMFAILS); in ip_expire()
216 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMTIMEOUT); in ip_expire()
222 head->dev = dev_get_by_index_rcu(net, qp->iif); in ip_expire()
253 static struct ipq *ip_find(struct net *net, struct iphdr *iph, in ip_find() argument
266 q = inet_frag_find(&net->ipv4.frags, &ip4_frags, &arg, hash); in ip_find()
293 struct net *net; in ip_frag_too_far() local
295 net = container_of(qp->q.net, struct net, ipv4.frags); in ip_frag_too_far()
296 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMFAILS); in ip_frag_too_far()
307 if (!mod_timer(&qp->q.timer, jiffies + qp->q.net->timeout)) { in ip_frag_reinit()
320 sub_frag_mem_limit(qp->q.net, sum_truesize); in ip_frag_reinit()
466 sub_frag_mem_limit(qp->q.net, free_it->truesize); in ip_frag_queue()
490 add_frag_mem_limit(qp->q.net, skb->truesize); in ip_frag_queue()
527 struct net *net = container_of(qp->q.net, struct net, ipv4.frags); in ip_frag_reasm() local
597 add_frag_mem_limit(qp->q.net, clone->truesize); in ip_frag_reasm()
612 sub_frag_mem_limit(qp->q.net, head->truesize); in ip_frag_reasm()
640 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMOKS); in ip_frag_reasm()
652 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMFAILS); in ip_frag_reasm()
657 int ip_defrag(struct net *net, struct sk_buff *skb, u32 user) in ip_defrag() argument
663 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMREQDS); in ip_defrag()
667 qp = ip_find(net, ip_hdr(skb), user, vif); in ip_defrag()
680 IP_INC_STATS_BH(net, IPSTATS_MIB_REASMFAILS); in ip_defrag()
686 struct sk_buff *ip_check_defrag(struct net *net, struct sk_buff *skb, u32 user) in ip_check_defrag() argument
715 if (ip_defrag(net, skb, user)) in ip_check_defrag()
776 static int __net_init ip4_frags_ns_ctl_register(struct net *net) in ip4_frags_ns_ctl_register() argument
782 if (!net_eq(net, &init_net)) { in ip4_frags_ns_ctl_register()
787 table[0].data = &net->ipv4.frags.high_thresh; in ip4_frags_ns_ctl_register()
788 table[0].extra1 = &net->ipv4.frags.low_thresh; in ip4_frags_ns_ctl_register()
790 table[1].data = &net->ipv4.frags.low_thresh; in ip4_frags_ns_ctl_register()
791 table[1].extra2 = &net->ipv4.frags.high_thresh; in ip4_frags_ns_ctl_register()
792 table[2].data = &net->ipv4.frags.timeout; in ip4_frags_ns_ctl_register()
795 if (net->user_ns != &init_user_ns) in ip4_frags_ns_ctl_register()
799 hdr = register_net_sysctl(net, "net/ipv4", table); in ip4_frags_ns_ctl_register()
803 net->ipv4.frags_hdr = hdr; in ip4_frags_ns_ctl_register()
807 if (!net_eq(net, &init_net)) in ip4_frags_ns_ctl_register()
813 static void __net_exit ip4_frags_ns_ctl_unregister(struct net *net) in ip4_frags_ns_ctl_unregister() argument
817 table = net->ipv4.frags_hdr->ctl_table_arg; in ip4_frags_ns_ctl_unregister()
818 unregister_net_sysctl_table(net->ipv4.frags_hdr); in ip4_frags_ns_ctl_unregister()
827 static int ip4_frags_ns_ctl_register(struct net *net) in ip4_frags_ns_ctl_register() argument
832 static void ip4_frags_ns_ctl_unregister(struct net *net) in ip4_frags_ns_ctl_unregister() argument
841 static int __net_init ipv4_frags_init_net(struct net *net) in ipv4_frags_init_net() argument
859 net->ipv4.frags.high_thresh = 4 * 1024 * 1024; in ipv4_frags_init_net()
860 net->ipv4.frags.low_thresh = 3 * 1024 * 1024; in ipv4_frags_init_net()
866 net->ipv4.frags.timeout = IP_FRAG_TIME; in ipv4_frags_init_net()
868 res = inet_frags_init_net(&net->ipv4.frags); in ipv4_frags_init_net()
871 res = ip4_frags_ns_ctl_register(net); in ipv4_frags_init_net()
873 inet_frags_uninit_net(&net->ipv4.frags); in ipv4_frags_init_net()
877 static void __net_exit ipv4_frags_exit_net(struct net *net) in ipv4_frags_exit_net() argument
879 ip4_frags_ns_ctl_unregister(net); in ipv4_frags_exit_net()
880 inet_frags_exit_net(&net->ipv4.frags, &ip4_frags); in ipv4_frags_exit_net()