Lines Matching defs:sch

58 	struct Qdisc *sch;
80 static unsigned int fq_pie_classify(struct sk_buff *skb, struct Qdisc *sch,
83 struct fq_pie_sched_data *q = qdisc_priv(sch);
88 if (TC_H_MAJ(skb->priority) == sch->handle &&
129 static int fq_pie_qdisc_enqueue(struct sk_buff *skb, struct Qdisc *sch,
132 struct fq_pie_sched_data *q = qdisc_priv(sch);
141 idx = fq_pie_classify(skb, sch, &ret);
144 qdisc_qstats_drop(sch);
156 if (unlikely(qdisc_qlen(sch) >= sch->limit)) {
163 if (!pie_drop_early(sch, &q->p_params, &sel_flow->vars,
183 sch->qstats.backlog += pkt_len;
184 sch->q.qlen++;
201 qdisc_qstats_drop(sch);
235 static struct sk_buff *fq_pie_qdisc_dequeue(struct Qdisc *sch)
237 struct fq_pie_sched_data *q = qdisc_priv(sch);
262 sch->qstats.backlog -= pkt_len;
263 sch->q.qlen--;
264 qdisc_bstats_update(sch, skb);
284 static int fq_pie_change(struct Qdisc *sch, struct nlattr *opt,
287 struct fq_pie_sched_data *q = qdisc_priv(sch);
300 sch_tree_lock(sch);
305 sch->limit = limit;
362 while (sch->q.qlen > sch->limit) {
363 struct sk_buff *skb = fq_pie_qdisc_dequeue(sch);
369 qdisc_tree_reduce_backlog(sch, num_dropped, len_dropped);
371 sch_tree_unlock(sch);
375 sch_tree_unlock(sch);
383 struct Qdisc *sch = q->sch;
387 root_lock = qdisc_lock(qdisc_root_sleeping(sch));
410 static int fq_pie_init(struct Qdisc *sch, struct nlattr *opt,
413 struct fq_pie_sched_data *q = qdisc_priv(sch);
418 sch->limit = 10 * 1024;
419 q->p_params.limit = sch->limit;
420 q->quantum = psched_mtu(qdisc_dev(sch));
421 q->sch = sch;
431 err = fq_pie_change(sch, opt, extack);
437 err = tcf_block_get(&q->block, &q->filter_list, sch, extack);
464 static int fq_pie_dump(struct Qdisc *sch, struct sk_buff *skb)
466 struct fq_pie_sched_data *q = qdisc_priv(sch);
474 if (nla_put_u32(skb, TCA_FQ_PIE_LIMIT, sch->limit) ||
499 static int fq_pie_dump_stats(struct Qdisc *sch, struct gnet_dump *d)
501 struct fq_pie_sched_data *q = qdisc_priv(sch);
513 sch_tree_lock(sch);
519 sch_tree_unlock(sch);
524 static void fq_pie_reset(struct Qdisc *sch)
526 struct fq_pie_sched_data *q = qdisc_priv(sch);
543 static void fq_pie_destroy(struct Qdisc *sch)
545 struct fq_pie_sched_data *q = qdisc_priv(sch);