• Petr Machata's avatar
    net: sched: sch_red: Add qevents "early_drop" and "mark" · aee9caa0
    Petr Machata authored
    In order to allow acting on dropped and/or ECN-marked packets, add two new
    qevents to the RED qdisc: "early_drop" and "mark". Filters attached at
    "early_drop" block are executed as packets are early-dropped, those
    attached at the "mark" block are executed as packets are ECN-marked.
    
    Two new attributes are introduced: TCA_RED_EARLY_DROP_BLOCK with the block
    index for the "early_drop" qevent, and TCA_RED_MARK_BLOCK for the "mark"
    qevent. Absence of these attributes signifies "don't care": no block is
    allocated in that case, or the existing blocks are left intact in case of
    the change callback.
    
    For purposes of offloading, blocks attached to these qevents appear with
    newly-introduced binder types, FLOW_BLOCK_BINDER_TYPE_RED_EARLY_DROP and
    FLOW_BLOCK_BINDER_TYPE_RED_MARK.
    Signed-off-by: default avatarPetr Machata <petrm@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    aee9caa0
sch_red.c 13.7 KB