[NET_SCHED] sch_prio: class statistics printing enabled
This patch adds a dump_stats callback to enable printing of basic statistics of prio classes. (With help of Patrick McHardy). Signed-off-by: Jarek Poplawski <jarkao2@o2.pl> Acked-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
5986a2ec35
commit
2cf6c36cb4
1 changed files with 15 additions and 0 deletions
|
@ -372,6 +372,20 @@ static int prio_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int prio_dump_class_stats(struct Qdisc *sch, unsigned long cl,
|
||||
struct gnet_dump *d)
|
||||
{
|
||||
struct prio_sched_data *q = qdisc_priv(sch);
|
||||
struct Qdisc *cl_q;
|
||||
|
||||
cl_q = q->queues[cl - 1];
|
||||
if (gnet_stats_copy_basic(d, &cl_q->bstats) < 0 ||
|
||||
gnet_stats_copy_queue(d, &cl_q->qstats) < 0)
|
||||
return -1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void prio_walk(struct Qdisc *sch, struct qdisc_walker *arg)
|
||||
{
|
||||
struct prio_sched_data *q = qdisc_priv(sch);
|
||||
|
@ -414,6 +428,7 @@ static struct Qdisc_class_ops prio_class_ops = {
|
|||
.bind_tcf = prio_bind,
|
||||
.unbind_tcf = prio_put,
|
||||
.dump = prio_dump_class,
|
||||
.dump_stats = prio_dump_class_stats,
|
||||
};
|
||||
|
||||
static struct Qdisc_ops prio_qdisc_ops = {
|
||||
|
|
Loading…
Reference in a new issue