net: sched: do not acquire qdisc spinlock in qdisc/class stats dump
[linux-2.6-block.git] / net / sched / sch_multiq.c
index bcdd54bb101cc8f25c1b6202a7aaef9b3293d996..21e69d2e834712d4a3c1e03f121a637309e21627 100644 (file)
@@ -356,7 +356,8 @@ static int multiq_dump_class_stats(struct Qdisc *sch, unsigned long cl,
        struct Qdisc *cl_q;
 
        cl_q = q->queues[cl - 1];
-       if (gnet_stats_copy_basic(d, NULL, &cl_q->bstats) < 0 ||
+       if (gnet_stats_copy_basic(qdisc_root_sleeping_running(sch),
+                                 d, NULL, &cl_q->bstats) < 0 ||
            gnet_stats_copy_queue(d, NULL, &cl_q->qstats, cl_q->q.qlen) < 0)
                return -1;