Jakub Kicinski says:
====================
net: sched: gred: introduce per-virtual queue attributes
This series updates the GRED Qdisc. The Qdisc matches nfp offload very
well, but before we can offload it there are a number of improvements
to make.
First few patches add extack messages to the Qdisc and pass extack
to netlink validation.
Next a new netlink attribute group is added, to allow GRED to be
extended more easily. Currently GRED passes C structures as attributes,
and even an array of C structs for virtual queue configuration. User
space has hard coded the expected length of that array, so adding new
fields is not possible.
New two-level attribute group is added:
[TCA_GRED_VQ_LIST]
[TCA_GRED_VQ_ENTRY]
[TCA_GRED_VQ_DP]
[TCA_GRED_VQ_FLAGS]
[TCA_GRED_VQ_STAT_*]
[TCA_GRED_VQ_ENTRY]
[TCA_GRED_VQ_DP]
[TCA_GRED_VQ_FLAGS]
[TCA_GRED_VQ_STAT_*]
[TCA_GRED_VQ_ENTRY]
...
Statistics are dump only. Patch 4 switches the byte counts to be 64 bit,
and patch 5 introduces the new stats attributes for dump. Patch 6
switches RED flags to be per-virtual queue, and patch 7 allows them
to be dumped and set at virtual queue granularity.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>