]> git.proxmox.com Git - mirror_iproute2.git/commit
Merge branch 'tc-qevents' into next
authorDavid Ahern <dsahern@kernel.org>
Sun, 5 Jul 2020 15:45:48 +0000 (15:45 +0000)
committerDavid Ahern <dsahern@kernel.org>
Sun, 5 Jul 2020 15:45:48 +0000 (15:45 +0000)
commit79ea01927ca3ad0a9c2ff35e5b1022058bffe97c
tree6205416a017eed38b355791d83f6bc519634fdea
parentbc4d9f982f8d0bb00fb61e0f4633e98522af597a
parentd0e45043857191034098ff08b8531a43b8c57cfe
Merge branch 'tc-qevents' into next

Petr Machata  says:

====================

To allow configuring user-defined actions as a result of inner workings of
a qdisc, a concept of qevents was recently introduced to the kernel.
Qevents are attach points for TC blocks, where filters can be put that are
executed as the packet hits well-defined points in the qdisc algorithms.
The attached blocks can be shared, in a manner similar to clsact ingress
and egress blocks, arbitrary classifiers with arbitrary actions can be put
on them, etc.

For example:

 # tc qdisc add dev eth0 root handle 1: \
red limit 500K avpkt 1K qevent early_drop block 10
 # tc filter add block 10 \
matchall action mirred egress mirror dev eth1

This patch set introduces the corresponding iproute2 support. Patch #1 adds
the new netlink attribute enumerators. Patch #2 adds a set of helpers to
implement qevents, and #3 adds a generic documentation to tc.8. Patch #4
then adds two new qevents to the RED qdisc: mark and early_drop.

====================

Signed-off-by: David Ahern <dsahern@kernel.org>