Lines Matching defs:sch
64 static int dsmark_graft(struct Qdisc *sch, unsigned long arg,
68 struct dsmark_qdisc_data *p = qdisc_priv(sch);
70 pr_debug("%s(sch %p,[qdisc %p],new %p,old %p)\n",
71 __func__, sch, p, new, old);
74 new = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops,
75 sch->handle, NULL);
80 *old = qdisc_replace(sch, new, &p->q);
84 static struct Qdisc *dsmark_leaf(struct Qdisc *sch, unsigned long arg)
86 struct dsmark_qdisc_data *p = qdisc_priv(sch);
90 static unsigned long dsmark_find(struct Qdisc *sch, u32 classid)
95 static unsigned long dsmark_bind_filter(struct Qdisc *sch,
98 pr_debug("%s(sch %p,[qdisc %p],classid %x)\n",
99 __func__, sch, qdisc_priv(sch), classid);
101 return dsmark_find(sch, classid);
104 static void dsmark_unbind_filter(struct Qdisc *sch, unsigned long cl)
116 static int dsmark_change(struct Qdisc *sch, u32 classid, u32 parent,
120 struct dsmark_qdisc_data *p = qdisc_priv(sch);
125 pr_debug("%s(sch %p,[qdisc %p],classid %x,parent %x), arg 0x%lx\n",
126 __func__, sch, p, classid, parent, *arg);
153 static int dsmark_delete(struct Qdisc *sch, unsigned long arg)
155 struct dsmark_qdisc_data *p = qdisc_priv(sch);
166 static void dsmark_walk(struct Qdisc *sch, struct qdisc_walker *walker)
168 struct dsmark_qdisc_data *p = qdisc_priv(sch);
171 pr_debug("%s(sch %p,[qdisc %p],walker %p)\n",
172 __func__, sch, p, walker);
181 if (walker->fn(sch, i + 1, walker) < 0) {
191 static struct tcf_block *dsmark_tcf_block(struct Qdisc *sch, unsigned long cl,
194 struct dsmark_qdisc_data *p = qdisc_priv(sch);
201 static int dsmark_enqueue(struct sk_buff *skb, struct Qdisc *sch,
205 struct dsmark_qdisc_data *p = qdisc_priv(sch);
208 pr_debug("%s(skb %p,sch %p,[qdisc %p])\n", __func__, skb, sch, p);
239 if (TC_H_MAJ(skb->priority) == sch->handle)
273 qdisc_qstats_drop(sch);
277 sch->qstats.backlog += len;
278 sch->q.qlen++;
283 qdisc_drop(skb, sch, to_free);
287 static struct sk_buff *dsmark_dequeue(struct Qdisc *sch)
289 struct dsmark_qdisc_data *p = qdisc_priv(sch);
293 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p);
299 qdisc_bstats_update(sch, skb);
300 qdisc_qstats_backlog_dec(sch, skb);
301 sch->q.qlen--;
330 static struct sk_buff *dsmark_peek(struct Qdisc *sch)
332 struct dsmark_qdisc_data *p = qdisc_priv(sch);
334 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p);
339 static int dsmark_init(struct Qdisc *sch, struct nlattr *opt,
342 struct dsmark_qdisc_data *p = qdisc_priv(sch);
349 pr_debug("%s(sch %p,[qdisc %p],opt %p)\n", __func__, sch, p, opt);
354 err = tcf_block_get(&p->block, &p->filter_list, sch, extack);
390 p->q = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops, sch->handle,
404 static void dsmark_reset(struct Qdisc *sch)
406 struct dsmark_qdisc_data *p = qdisc_priv(sch);
408 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p);
413 static void dsmark_destroy(struct Qdisc *sch)
415 struct dsmark_qdisc_data *p = qdisc_priv(sch);
417 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p);
425 static int dsmark_dump_class(struct Qdisc *sch, unsigned long cl,
428 struct dsmark_qdisc_data *p = qdisc_priv(sch);
431 pr_debug("%s(sch %p,[qdisc %p],class %ld\n", __func__, sch, p, cl);
436 tcm->tcm_handle = TC_H_MAKE(TC_H_MAJ(sch->handle), cl - 1);
453 static int dsmark_dump(struct Qdisc *sch, struct sk_buff *skb)
455 struct dsmark_qdisc_data *p = qdisc_priv(sch);