Lines Matching refs:tin

19 	struct fq_tin *tin = flow->tin;
22 tin->backlog_bytes -= bytes;
23 tin->backlog_packets -= packets;
31 if (flow == &tin->default_flow) {
32 list_del_init(&tin->tin_list);
67 struct fq_tin *tin = flow->tin;
82 free_func(fq, tin, flow, skb);
91 struct fq_tin *tin,
101 head = &tin->new_flows;
103 head = &tin->old_flows;
113 &tin->old_flows);
117 skb = dequeue_func(fq, tin, flow);
120 if ((head == &tin->new_flows) &&
121 !list_empty(&tin->old_flows)) {
122 list_move_tail(&flow->flowchain, &tin->old_flows);
125 flow->tin = NULL;
131 tin->tx_bytes += skb->len;
132 tin->tx_packets++;
145 struct fq_tin *tin, u32 idx,
153 if (flow->tin && flow->tin != tin) {
154 flow = &tin->default_flow;
155 tin->collisions++;
159 if (!flow->tin)
160 tin->flows++;
167 struct fq_tin *tin;
184 list_for_each_entry(tin, &fq->tin_backlog, tin_list) {
185 unsigned int cur_len = tin->default_flow.backlog;
190 flow = &tin->default_flow;
198 struct fq_tin *tin, u32 idx,
208 flow = fq_flow_classify(fq, tin, idx, skb);
211 if (flow != &tin->default_flow)
213 else if (list_empty(&tin->tin_list))
214 list_add(&tin->tin_list, &fq->tin_backlog);
217 flow->tin = tin;
221 tin->backlog_bytes += skb->len;
222 tin->backlog_packets++;
231 &tin->new_flows);
243 flow->tin->overlimit++;
258 struct fq_tin *tin = flow->tin;
264 if (!filter_func(fq, tin, flow, skb, filter_data))
269 free_func(fq, tin, flow, skb);
274 struct fq_tin *tin,
283 list_for_each_entry(flow, &tin->new_flows, flowchain)
285 list_for_each_entry(flow, &tin->old_flows, flowchain)
293 struct fq_tin *tin = flow->tin;
297 free_func(fq, tin, flow, skb);
301 if (list_empty(&tin->new_flows) &&
302 list_empty(&tin->old_flows))
303 list_del_init(&tin->tin_list);
306 flow->tin = NULL;
312 struct fq_tin *tin,
319 head = &tin->new_flows;
321 head = &tin->old_flows;
330 WARN_ON_ONCE(!list_empty(&tin->tin_list));
331 WARN_ON_ONCE(tin->backlog_bytes);
332 WARN_ON_ONCE(tin->backlog_packets);
341 static void fq_tin_init(struct fq_tin *tin)
343 INIT_LIST_HEAD(&tin->new_flows);
344 INIT_LIST_HEAD(&tin->old_flows);
345 INIT_LIST_HEAD(&tin->tin_list);
346 fq_flow_init(&tin->default_flow);