Lines Matching refs:prio

104 	u32			prio;		/* these two are used only by leaves... */  member
278 struct htb_class *cl, int prio) in htb_add_to_id_tree() argument
285 c = rb_entry(parent, struct htb_class, node[prio]); in htb_add_to_id_tree()
292 rb_link_node(&cl->node[prio], parent, p); in htb_add_to_id_tree()
293 rb_insert_color(&cl->node[prio], root); in htb_add_to_id_tree()
351 int prio = ffz(~mask); in htb_add_class_to_row() local
352 mask &= ~(1 << prio); in htb_add_class_to_row()
353 htb_add_to_id_tree(&q->hlevel[cl->level].hprio[prio].row, cl, prio); in htb_add_class_to_row()
382 int prio = ffz(~mask); in htb_remove_class_from_row() local
383 struct htb_prio *hprio = &hlevel->hprio[prio]; in htb_remove_class_from_row()
385 mask &= ~(1 << prio); in htb_remove_class_from_row()
386 if (hprio->ptr == cl->node + prio) in htb_remove_class_from_row()
389 htb_safe_rb_erase(cl->node + prio, &hprio->row); in htb_remove_class_from_row()
391 m |= 1 << prio; in htb_remove_class_from_row()
411 int prio = ffz(~m); in htb_activate_prios() local
412 m &= ~(1 << prio); in htb_activate_prios()
414 if (p->un.inner.clprio[prio].feed.rb_node) in htb_activate_prios()
418 mask &= ~(1 << prio); in htb_activate_prios()
420 htb_add_to_id_tree(&p->un.inner.clprio[prio].feed, cl, prio); in htb_activate_prios()
447 int prio = ffz(~m); in htb_deactivate_prios() local
448 m &= ~(1 << prio); in htb_deactivate_prios()
450 if (p->un.inner.clprio[prio].ptr == cl->node + prio) { in htb_deactivate_prios()
455 p->un.inner.clprio[prio].last_ptr_id = cl->common.classid; in htb_deactivate_prios()
456 p->un.inner.clprio[prio].ptr = NULL; in htb_deactivate_prios()
459 htb_safe_rb_erase(cl->node + prio, in htb_deactivate_prios()
460 &p->un.inner.clprio[prio].feed); in htb_deactivate_prios()
462 if (!p->un.inner.clprio[prio].feed.rb_node) in htb_deactivate_prios()
463 mask |= 1 << prio; in htb_deactivate_prios()
561 cl->prio_activity = 1 << cl->prio; in htb_activate()
757 static struct rb_node *htb_id_find_next_upper(int prio, struct rb_node *n, in htb_id_find_next_upper() argument
763 rb_entry(n, struct htb_class, node[prio]); in htb_id_find_next_upper()
782 static struct htb_class *htb_lookup_leaf(struct htb_prio *hprio, const int prio) in htb_lookup_leaf() argument
802 htb_id_find_next_upper(prio, sp->root, *sp->pid); in htb_lookup_leaf()
823 cl = rb_entry(*sp->pptr, struct htb_class, node[prio]); in htb_lookup_leaf()
826 clp = &cl->un.inner.clprio[prio]; in htb_lookup_leaf()
839 static struct sk_buff *htb_dequeue_tree(struct htb_sched *q, const int prio, in htb_dequeue_tree() argument
845 struct htb_prio *hprio = &hlevel->hprio[prio]; in htb_dequeue_tree()
848 start = cl = htb_lookup_leaf(hprio, prio); in htb_dequeue_tree()
865 if ((q->row_mask[level] & (1 << prio)) == 0) in htb_dequeue_tree()
868 next = htb_lookup_leaf(hprio, prio); in htb_dequeue_tree()
881 htb_next_rb_node(level ? &cl->parent->un.inner.clprio[prio].ptr: in htb_dequeue_tree()
882 &q->hlevel[0].hprio[prio].ptr); in htb_dequeue_tree()
883 cl = htb_lookup_leaf(hprio, prio); in htb_dequeue_tree()
892 htb_next_rb_node(level ? &cl->parent->un.inner.clprio[prio].ptr : in htb_dequeue_tree()
893 &q->hlevel[0].hprio[prio].ptr); in htb_dequeue_tree()
947 int prio = ffz(m); in htb_dequeue() local
949 m |= 1 << prio; in htb_dequeue()
950 skb = htb_dequeue_tree(q, prio, level); in htb_dequeue()
1115 opt.prio = cl->prio; in htb_dump_class()
1359 int prio; in htb_change_class() local
1411 for (prio = 0; prio < TC_HTB_NUMPRIO; prio++) in htb_change_class()
1412 RB_CLEAR_NODE(&cl->node[prio]); in htb_change_class()
1499 if ((cl->prio = hopt->prio) >= TC_HTB_NUMPRIO) in htb_change_class()
1500 cl->prio = TC_HTB_NUMPRIO - 1; in htb_change_class()