Merge branch 'nfp-abm-RED-MQ-qdisc-offload'
authorDavid S. Miller <davem@davemloft.net>
Tue, 29 May 2018 13:49:17 +0000 (09:49 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 May 2018 13:49:17 +0000 (09:49 -0400)
commit566e51d750f64049dc7767695b4cb988cd263056
tree3e99ed265c76717fe8009345013fbe5b01335054
parent874fcf1de613ad7b3cecf8a9cfe806fe7c2e3c68
parent2440711e49b6144ef74a51e29e4e876ac5f0d066
Merge branch 'nfp-abm-RED-MQ-qdisc-offload'

Jakub Kicinski says:

====================
nfp: abm: RED/MQ qdisc offload

This is second batch of advanced buffer management nfp driver
changes.  This series adds the qdisc offload.  Support for
a very simple subset of RED qdisc offload is added as needed
for DCTCP ECN marking (min and max thresholds set to the same
value).

The first two patches fix glitches introduced by the previous
series.  We have to be careful about phys_port_name handling,
because VFs share the same code path, and some user space may
get confused by the names we chose.

Since unlike previous offloads we can report the queue backlog
both in bytes and packets we need to adjust how statistics are
added up in the core (patch 6).

There are some extra statistics we want to expose which don't
fit into TC stats, namely counts of packets which have been fast-
-forwarded without getting enqueued because there was no
contention and number of packets that were ever queued (sum of
all momentary backlogs).  We expose those through ethtool stats
(patches 8 and 9).

Remaining 5 patches add MQ offload - to be able to set different
configurations on different queues.  Representors are made multi-
-queue and we add offload support to MQ.  MQ stats are added up
before calling ->dump qdiscs on the children, and therefore don't
include updated offload values.  To avoid clearly incorrect stats
MQ is made to also request stats update from offloads.  This way
we can correct the diff at the driver level.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>