• Paolo Abeni's avatar
    act_mirred: use TC_ACT_REINSERT when possible · e5cf1baf
    Paolo Abeni authored
    When mirred is invoked from the ingress path, and it wants to redirect
    the processed packet, it can now use the TC_ACT_REINSERT action,
    filling the tcf_result accordingly, and avoiding a per packet
    skb_clone().
    
    Overall this gives a ~10% improvement in forwarding performance for the
    TC S/W data path and TC S/W performances are now comparable to the
    kernel openvswitch datapath.
    
    v1 -> v2: use ACT_MIRRED instead of ACT_REDIRECT
    v2 -> v3: updated after action rename, fixed typo into the commit
    	message
    v3 -> v4: updated again after action rename, added more comments to
    	the code (JiriP), skip the optimization if the control action
    	need to touch the tcf_result (Paolo)
    v4 -> v5: fix sparse warning (kbuild bot)
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Acked-by: default avatarJiri Pirko <jiri@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    e5cf1baf
act_mirred.c 10.5 KB