Lines Matching +full:1 +full:q

25 	u8  prio2band[TC_PRIO_MAX+1];
33 struct prio_sched_data *q = qdisc_priv(sch); in prio_classify() local
41 fl = rcu_dereference_bh(q->filter_list); in prio_classify()
57 return q->queues[q->prio2band[band & TC_PRIO_MAX]]; in prio_classify()
61 band = TC_H_MIN(band) - 1; in prio_classify()
62 if (band >= q->bands) in prio_classify()
63 return q->queues[q->prio2band[0]]; in prio_classify()
65 return q->queues[band]; in prio_classify()
89 sch->q.qlen++; in prio_enqueue()
99 struct prio_sched_data *q = qdisc_priv(sch); in prio_peek() local
102 for (prio = 0; prio < q->bands; prio++) { in prio_peek()
103 struct Qdisc *qdisc = q->queues[prio]; in prio_peek()
113 struct prio_sched_data *q = qdisc_priv(sch); in prio_dequeue() local
116 for (prio = 0; prio < q->bands; prio++) { in prio_dequeue()
117 struct Qdisc *qdisc = q->queues[prio]; in prio_dequeue()
122 sch->q.qlen--; in prio_dequeue()
134 struct prio_sched_data *q = qdisc_priv(sch); in prio_reset() local
136 for (prio = 0; prio < q->bands; prio++) in prio_reset()
137 qdisc_reset(q->queues[prio]); in prio_reset()
139 sch->q.qlen = 0; in prio_reset()
157 TC_PRIO_MAX + 1); in prio_offload()
170 struct prio_sched_data *q = qdisc_priv(sch); in prio_destroy() local
172 tcf_block_put(q->block); in prio_destroy()
174 for (prio = 0; prio < q->bands; prio++) in prio_destroy()
175 qdisc_put(q->queues[prio]); in prio_destroy()
181 struct prio_sched_data *q = qdisc_priv(sch); in prio_tune() local
183 int oldbands = q->bands, i; in prio_tune()
201 TC_H_MAKE(sch->handle, i + 1), in prio_tune()
212 q->bands = qopt->bands; in prio_tune()
213 memcpy(q->prio2band, qopt->priomap, TC_PRIO_MAX+1); in prio_tune()
215 for (i = q->bands; i < oldbands; i++) in prio_tune()
216 qdisc_tree_flush_backlog(q->queues[i]); in prio_tune()
218 for (i = oldbands; i < q->bands; i++) { in prio_tune()
219 q->queues[i] = queues[i]; in prio_tune()
220 if (q->queues[i] != &noop_qdisc) in prio_tune()
221 qdisc_hash_add(q->queues[i], true); in prio_tune()
226 for (i = q->bands; i < oldbands; i++) in prio_tune()
227 qdisc_put(q->queues[i]); in prio_tune()
234 struct prio_sched_data *q = qdisc_priv(sch); in prio_init() local
240 err = tcf_block_get(&q->block, &q->filter_list, sch, extack); in prio_init()
266 struct prio_sched_data *q = qdisc_priv(sch); in prio_dump() local
271 opt.bands = q->bands; in prio_dump()
272 memcpy(&opt.priomap, q->prio2band, TC_PRIO_MAX + 1); in prio_dump()
285 return -1; in prio_dump()
291 struct prio_sched_data *q = qdisc_priv(sch); in prio_graft() local
293 unsigned long band = arg - 1; in prio_graft()
304 *old = qdisc_replace(sch, new, &q->queues[band]); in prio_graft()
321 struct prio_sched_data *q = qdisc_priv(sch); in prio_leaf() local
322 unsigned long band = arg - 1; in prio_leaf()
324 return q->queues[band]; in prio_leaf()
329 struct prio_sched_data *q = qdisc_priv(sch); in prio_find() local
332 if (band - 1 >= q->bands) in prio_find()
343 static void prio_unbind(struct Qdisc *q, unsigned long cl) in prio_unbind() argument
350 struct prio_sched_data *q = qdisc_priv(sch); in prio_dump_class() local
353 tcm->tcm_info = q->queues[cl-1]->handle; in prio_dump_class()
360 struct prio_sched_data *q = qdisc_priv(sch); in prio_dump_class_stats() local
363 cl_q = q->queues[cl - 1]; in prio_dump_class_stats()
367 return -1; in prio_dump_class_stats()
374 struct prio_sched_data *q = qdisc_priv(sch); in prio_walk() local
380 for (prio = 0; prio < q->bands; prio++) { in prio_walk()
385 if (arg->fn(sch, prio + 1, arg) < 0) { in prio_walk()
386 arg->stop = 1; in prio_walk()
396 struct prio_sched_data *q = qdisc_priv(sch); in prio_tcf_block() local
400 return q->block; in prio_tcf_block()