Lines Matching refs:sch
55 static int dsmark_graft(struct Qdisc *sch, unsigned long arg, in dsmark_graft() argument
58 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_graft()
61 __func__, sch, p, new, old); in dsmark_graft()
64 new = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops, in dsmark_graft()
65 sch->handle); in dsmark_graft()
70 sch_tree_lock(sch); in dsmark_graft()
75 sch_tree_unlock(sch); in dsmark_graft()
80 static struct Qdisc *dsmark_leaf(struct Qdisc *sch, unsigned long arg) in dsmark_leaf() argument
82 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_leaf()
86 static unsigned long dsmark_get(struct Qdisc *sch, u32 classid) in dsmark_get() argument
89 __func__, sch, qdisc_priv(sch), classid); in dsmark_get()
94 static unsigned long dsmark_bind_filter(struct Qdisc *sch, in dsmark_bind_filter() argument
97 return dsmark_get(sch, classid); in dsmark_bind_filter()
100 static void dsmark_put(struct Qdisc *sch, unsigned long cl) in dsmark_put() argument
112 static int dsmark_change(struct Qdisc *sch, u32 classid, u32 parent, in dsmark_change() argument
115 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_change()
122 __func__, sch, p, classid, parent, *arg); in dsmark_change()
151 static int dsmark_delete(struct Qdisc *sch, unsigned long arg) in dsmark_delete() argument
153 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_delete()
164 static void dsmark_walk(struct Qdisc *sch, struct qdisc_walker *walker) in dsmark_walk() argument
166 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_walk()
170 __func__, sch, p, walker); in dsmark_walk()
179 if (walker->fn(sch, i + 1, walker) < 0) { in dsmark_walk()
189 static inline struct tcf_proto __rcu **dsmark_find_tcf(struct Qdisc *sch, in dsmark_find_tcf() argument
192 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_find_tcf()
198 static int dsmark_enqueue(struct sk_buff *skb, struct Qdisc *sch) in dsmark_enqueue() argument
200 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_enqueue()
203 pr_debug("%s(skb %p,sch %p,[qdisc %p])\n", __func__, skb, sch, p); in dsmark_enqueue()
228 if (TC_H_MAJ(skb->priority) == sch->handle) in dsmark_enqueue()
261 qdisc_qstats_drop(sch); in dsmark_enqueue()
265 sch->q.qlen++; in dsmark_enqueue()
270 qdisc_drop(skb, sch); in dsmark_enqueue()
274 static struct sk_buff *dsmark_dequeue(struct Qdisc *sch) in dsmark_dequeue() argument
276 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_dequeue()
280 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p); in dsmark_dequeue()
286 qdisc_bstats_update(sch, skb); in dsmark_dequeue()
287 sch->q.qlen--; in dsmark_dequeue()
316 static struct sk_buff *dsmark_peek(struct Qdisc *sch) in dsmark_peek() argument
318 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_peek()
320 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p); in dsmark_peek()
325 static unsigned int dsmark_drop(struct Qdisc *sch) in dsmark_drop() argument
327 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_drop()
330 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p); in dsmark_drop()
337 sch->q.qlen--; in dsmark_drop()
342 static int dsmark_init(struct Qdisc *sch, struct nlattr *opt) in dsmark_init() argument
344 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_init()
351 pr_debug("%s(sch %p,[qdisc %p],opt %p)\n", __func__, sch, p, opt); in dsmark_init()
385 p->q = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops, sch->handle); in dsmark_init()
396 static void dsmark_reset(struct Qdisc *sch) in dsmark_reset() argument
398 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_reset()
400 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p); in dsmark_reset()
402 sch->q.qlen = 0; in dsmark_reset()
405 static void dsmark_destroy(struct Qdisc *sch) in dsmark_destroy() argument
407 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_destroy()
409 pr_debug("%s(sch %p,[qdisc %p])\n", __func__, sch, p); in dsmark_destroy()
416 static int dsmark_dump_class(struct Qdisc *sch, unsigned long cl, in dsmark_dump_class() argument
419 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_dump_class()
422 pr_debug("%s(sch %p,[qdisc %p],class %ld\n", __func__, sch, p, cl); in dsmark_dump_class()
427 tcm->tcm_handle = TC_H_MAKE(TC_H_MAJ(sch->handle), cl - 1); in dsmark_dump_class()
444 static int dsmark_dump(struct Qdisc *sch, struct sk_buff *skb) in dsmark_dump() argument
446 struct dsmark_qdisc_data *p = qdisc_priv(sch); in dsmark_dump()