Home
last modified time | relevance | path

Searched refs:fqdir (Results 1 – 12 of 12) sorted by relevance

/Linux-v5.4/include/net/
Dinet_frag.h9 struct fqdir { struct
94 struct fqdir *fqdir; member
115 int fqdir_init(struct fqdir **fqdirp, struct inet_frags *f, struct net *net);
117 static inline void fqdir_pre_exit(struct fqdir *fqdir) in fqdir_pre_exit() argument
119 fqdir->high_thresh = 0; /* prevent creation of new frags */ in fqdir_pre_exit()
120 fqdir->dead = true; in fqdir_pre_exit()
122 void fqdir_exit(struct fqdir *fqdir);
126 struct inet_frag_queue *inet_frag_find(struct fqdir *fqdir, void *key);
139 static inline long frag_mem_limit(const struct fqdir *fqdir) in frag_mem_limit() argument
141 return atomic_long_read(&fqdir->mem); in frag_mem_limit()
[all …]
Dipv6_frag.h70 if (fq->q.fqdir->dead) in ip6frag_expire_frag_queue()
/Linux-v5.4/net/ipv4/
Dinet_fragment.c150 struct fqdir *fqdir = container_of(work, struct fqdir, destroy_work); in fqdir_work_fn() local
151 struct inet_frags *f = fqdir->f; in fqdir_work_fn()
153 rhashtable_free_and_destroy(&fqdir->rhashtable, inet_frags_free_cb, NULL); in fqdir_work_fn()
164 kfree(fqdir); in fqdir_work_fn()
167 int fqdir_init(struct fqdir **fqdirp, struct inet_frags *f, struct net *net) in fqdir_init()
169 struct fqdir *fqdir = kzalloc(sizeof(*fqdir), GFP_KERNEL); in fqdir_init() local
172 if (!fqdir) in fqdir_init()
174 fqdir->f = f; in fqdir_init()
175 fqdir->net = net; in fqdir_init()
176 res = rhashtable_init(&fqdir->rhashtable, &fqdir->f->rhash_params); in fqdir_init()
[all …]
Dip_fragment.c85 struct net *net = q->fqdir->net; in ip4_frag_init()
91 qp->peer = q->fqdir->max_dist ? in ip4_frag_init()
143 net = qp->q.fqdir->net; in ip_expire()
147 if (qp->q.fqdir->dead) in ip_expire()
216 q = inet_frag_find(net->ipv4.fqdir, &key); in ip_find()
227 unsigned int max = qp->q.fqdir->max_dist; in ip_frag_too_far()
242 __IP_INC_STATS(qp->q.fqdir->net, IPSTATS_MIB_REASMFAILS); in ip_frag_too_far()
251 if (!mod_timer(&qp->q.timer, jiffies + qp->q.fqdir->timeout)) { in ip_frag_reinit()
257 sub_frag_mem_limit(qp->q.fqdir, sum_truesize); in ip_frag_reinit()
274 struct net *net = qp->q.fqdir->net; in ip_frag_queue()
[all …]
Dproc.c71 atomic_read(&net->ipv4.fqdir->rhashtable.nelems), in sockstat_seq_show()
72 frag_mem_limit(net->ipv4.fqdir)); in sockstat_seq_show()
/Linux-v5.4/net/ipv6/netfilter/
Dnf_conntrack_reasm.c89 table[0].data = &net->nf_frag.fqdir->timeout; in nf_ct_frag6_sysctl_register()
90 table[1].data = &net->nf_frag.fqdir->low_thresh; in nf_ct_frag6_sysctl_register()
91 table[1].extra2 = &net->nf_frag.fqdir->high_thresh; in nf_ct_frag6_sysctl_register()
92 table[2].data = &net->nf_frag.fqdir->high_thresh; in nf_ct_frag6_sysctl_register()
93 table[2].extra1 = &net->nf_frag.fqdir->low_thresh; in nf_ct_frag6_sysctl_register()
94 table[2].extra2 = &init_net.nf_frag.fqdir->high_thresh; in nf_ct_frag6_sysctl_register()
145 ip6frag_expire_frag_queue(fq->q.fqdir->net, fq); in nf_ct_frag6_expire()
161 q = inet_frag_find(net->nf_frag.fqdir, &key); in fq_find()
274 add_frag_mem_limit(fq->q.fqdir, skb->truesize); in nf_ct_frag6_queue()
490 res = fqdir_init(&net->nf_frag.fqdir, &nf_frags, net); in nf_ct_net_init()
[all …]
/Linux-v5.4/net/ipv6/
Dreassembly.c78 ip6frag_expire_frag_queue(fq->q.fqdir->net, fq); in ip6_frag_expire()
97 q = inet_frag_find(net->ipv6.fqdir, &key); in fq_find()
197 add_frag_mem_limit(fq->q.fqdir, skb->truesize); in ip6_frag_queue()
251 struct net *net = fq->q.fqdir->net; in ip6_frag_reasm()
442 table[0].data = &net->ipv6.fqdir->high_thresh; in ip6_frags_ns_sysctl_register()
443 table[0].extra1 = &net->ipv6.fqdir->low_thresh; in ip6_frags_ns_sysctl_register()
444 table[1].data = &net->ipv6.fqdir->low_thresh; in ip6_frags_ns_sysctl_register()
445 table[1].extra2 = &net->ipv6.fqdir->high_thresh; in ip6_frags_ns_sysctl_register()
446 table[2].data = &net->ipv6.fqdir->timeout; in ip6_frags_ns_sysctl_register()
509 res = fqdir_init(&net->ipv6.fqdir, &ip6_frags, net); in ipv6_frags_init_net()
[all …]
Dproc.c47 atomic_read(&net->ipv6.fqdir->rhashtable.nelems), in sockstat6_seq_show()
48 frag_mem_limit(net->ipv6.fqdir)); in sockstat6_seq_show()
/Linux-v5.4/net/ieee802154/6lowpan/
Dreassembly.c77 q = inet_frag_find(ieee802154_lowpan->fqdir, &key); in fq_find()
137 add_frag_mem_limit(fq->q.fqdir, skb->truesize); in lowpan_frag_queue()
375 table[0].data = &ieee802154_lowpan->fqdir->high_thresh; in lowpan_frags_ns_sysctl_register()
376 table[0].extra1 = &ieee802154_lowpan->fqdir->low_thresh; in lowpan_frags_ns_sysctl_register()
377 table[1].data = &ieee802154_lowpan->fqdir->low_thresh; in lowpan_frags_ns_sysctl_register()
378 table[1].extra2 = &ieee802154_lowpan->fqdir->high_thresh; in lowpan_frags_ns_sysctl_register()
379 table[2].data = &ieee802154_lowpan->fqdir->timeout; in lowpan_frags_ns_sysctl_register()
448 res = fqdir_init(&ieee802154_lowpan->fqdir, &lowpan_frags, net); in lowpan_frags_init_net()
452 ieee802154_lowpan->fqdir->high_thresh = IPV6_FRAG_HIGH_THRESH; in lowpan_frags_init_net()
453 ieee802154_lowpan->fqdir->low_thresh = IPV6_FRAG_LOW_THRESH; in lowpan_frags_init_net()
[all …]
/Linux-v5.4/include/net/netns/
Dipv6.h61 struct fqdir *fqdir; member
119 struct fqdir *fqdir; member
Dieee802154_6lowpan.h19 struct fqdir *fqdir; member
Dipv4.h75 struct fqdir *fqdir; member