]> git.baikalelectronics.ru Git - kernel.git/commit
net: sched: add support for TCQ_F_NOLOCK subqueues to sch_mq
authorJohn Fastabend <john.fastabend@gmail.com>
Thu, 7 Dec 2017 17:57:20 +0000 (09:57 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 8 Dec 2017 18:32:26 +0000 (13:32 -0500)
commite3b895974f6099339e40a1c767eb735f908935e0
treebd055fb59d32845be92e7c52f030778055b10c96
parentb576d9e7fe76fa69e0727d56d0bbd32768a2f6d7
net: sched: add support for TCQ_F_NOLOCK subqueues to sch_mq

The sch_mq qdisc creates a sub-qdisc per tx queue which are then
called independently for enqueue and dequeue operations. However
statistics are aggregated and pushed up to the "master" qdisc.

This patch adds support for any of the sub-qdiscs to be per cpu
statistic qdiscs. To handle this case add a check when calculating
stats and aggregate the per cpu stats if needed.

Also exports __gnet_stats_copy_queue() to use as a helper function.

Signed-off-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/gen_stats.h
net/core/gen_stats.c
net/sched/sch_mq.c