• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/net/sched/

Lines Matching refs:sch

874 qdisc_peek_len(struct Qdisc *sch)
879 skb = sch->dequeue(sch);
886 if (unlikely(sch->ops->requeue(skb, sch) != NET_XMIT_SUCCESS)) {
889 qdisc_tree_decrease_qlen(sch, 1);
896 hfsc_purge_queue(struct Qdisc *sch, struct hfsc_class *cl)
930 hfsc_find_class(u32 classid, struct Qdisc *sch)
932 struct hfsc_sched *q = qdisc_priv(sch);
974 hfsc_change_class(struct Qdisc *sch, u32 classid, u32 parentid,
977 struct hfsc_sched *q = qdisc_priv(sch);
1021 sch_tree_lock(sch);
1035 sch_tree_unlock(sch);
1050 parent = hfsc_find_class(parentid, sch);
1055 if (classid == 0 || TC_H_MAJ(classid ^ sch->handle) != 0)
1057 if (hfsc_find_class(classid, sch))
1078 cl->qdisc = qdisc_create_dflt(sch->dev, &pfifo_qdisc_ops, classid);
1081 cl->stats_lock = &sch->dev->queue_lock;
1086 sch_tree_lock(sch);
1090 hfsc_purge_queue(sch, parent);
1093 sch_tree_unlock(sch);
1105 hfsc_destroy_class(struct Qdisc *sch, struct hfsc_class *cl)
1107 struct hfsc_sched *q = qdisc_priv(sch);
1119 hfsc_delete_class(struct Qdisc *sch, unsigned long arg)
1121 struct hfsc_sched *q = qdisc_priv(sch);
1127 sch_tree_lock(sch);
1132 hfsc_purge_queue(sch, cl);
1136 hfsc_destroy_class(sch, cl);
1138 sch_tree_unlock(sch);
1143 hfsc_classify(struct sk_buff *skb, struct Qdisc *sch, int *qerr)
1145 struct hfsc_sched *q = qdisc_priv(sch);
1151 if (TC_H_MAJ(skb->priority ^ sch->handle) == 0 &&
1152 (cl = hfsc_find_class(skb->priority, sch)) != NULL)
1172 if ((cl = hfsc_find_class(res.classid, sch)) == NULL)
1184 cl = hfsc_find_class(TC_H_MAKE(TC_H_MAJ(sch->handle), q->defcls), sch);
1192 hfsc_graft_class(struct Qdisc *sch, unsigned long arg, struct Qdisc *new,
1202 new = qdisc_create_dflt(sch->dev, &pfifo_qdisc_ops,
1208 sch_tree_lock(sch);
1209 hfsc_purge_queue(sch, cl);
1211 sch_tree_unlock(sch);
1216 hfsc_class_leaf(struct Qdisc *sch, unsigned long arg)
1227 hfsc_qlen_notify(struct Qdisc *sch, unsigned long arg)
1238 hfsc_get_class(struct Qdisc *sch, u32 classid)
1240 struct hfsc_class *cl = hfsc_find_class(classid, sch);
1249 hfsc_put_class(struct Qdisc *sch, unsigned long arg)
1254 hfsc_destroy_class(sch, cl);
1258 hfsc_bind_tcf(struct Qdisc *sch, unsigned long parent, u32 classid)
1261 struct hfsc_class *cl = hfsc_find_class(classid, sch);
1273 hfsc_unbind_tcf(struct Qdisc *sch, unsigned long arg)
1281 hfsc_tcf_chain(struct Qdisc *sch, unsigned long arg)
1283 struct hfsc_sched *q = qdisc_priv(sch);
1330 hfsc_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb,
1354 hfsc_dump_class_stats(struct Qdisc *sch, unsigned long arg,
1379 hfsc_walk(struct Qdisc *sch, struct qdisc_walker *arg)
1381 struct hfsc_sched *q = qdisc_priv(sch);
1394 if (arg->fn(sch, (unsigned long)cl, arg) < 0) {
1404 hfsc_schedule_watchdog(struct Qdisc *sch)
1406 struct hfsc_sched *q = qdisc_priv(sch);
1421 hfsc_init_qdisc(struct Qdisc *sch, struct rtattr *opt)
1423 struct hfsc_sched *q = qdisc_priv(sch);
1431 sch->stats_lock = &sch->dev->queue_lock;
1441 q->root.classid = sch->handle;
1443 q->root.qdisc = qdisc_create_dflt(sch->dev, &pfifo_qdisc_ops,
1444 sch->handle);
1447 q->root.stats_lock = &sch->dev->queue_lock;
1454 qdisc_watchdog_init(&q->watchdog, sch);
1460 hfsc_change_qdisc(struct Qdisc *sch, struct rtattr *opt)
1462 struct hfsc_sched *q = qdisc_priv(sch);
1469 sch_tree_lock(sch);
1471 sch_tree_unlock(sch);
1511 hfsc_reset_qdisc(struct Qdisc *sch)
1513 struct hfsc_sched *q = qdisc_priv(sch);
1525 sch->q.qlen = 0;
1529 hfsc_destroy_qdisc(struct Qdisc *sch)
1531 struct hfsc_sched *q = qdisc_priv(sch);
1537 hfsc_destroy_class(sch, cl);
1544 hfsc_dump_qdisc(struct Qdisc *sch, struct sk_buff *skb)
1546 struct hfsc_sched *q = qdisc_priv(sch);
1560 hfsc_enqueue(struct sk_buff *skb, struct Qdisc *sch)
1566 cl = hfsc_classify(skb, sch, &err);
1569 sch->qstats.drops++;
1578 sch->qstats.drops++;
1587 sch->bstats.packets++;
1588 sch->bstats.bytes += len;
1589 sch->q.qlen++;
1595 hfsc_dequeue(struct Qdisc *sch)
1597 struct hfsc_sched *q = qdisc_priv(sch);
1604 if (sch->q.qlen == 0)
1625 sch->qstats.overlimits++;
1626 hfsc_schedule_watchdog(sch);
1657 sch->flags &= ~TCQ_F_THROTTLED;
1658 sch->q.qlen--;
1664 hfsc_requeue(struct sk_buff *skb, struct Qdisc *sch)
1666 struct hfsc_sched *q = qdisc_priv(sch);
1669 sch->q.qlen++;
1670 sch->qstats.requeues++;
1675 hfsc_drop(struct Qdisc *sch)
1677 struct hfsc_sched *q = qdisc_priv(sch);
1691 sch->qstats.drops++;
1692 sch->q.qlen--;