• Pedro Tammela's avatar
    net/sched: act_connmark: transition to percpu stats and rcu · 288864ef
    Pedro Tammela authored
    The tc action act_connmark was using shared stats and taking the per
    action lock in the datapath. Improve it by using percpu stats and rcu.
    
    perf before:
    - 13.55% tcf_connmark_act
       - 81.18% _raw_spin_lock
           80.46% native_queued_spin_lock_slowpath
    
    perf after:
    - 2.85% tcf_connmark_act
    
    tdc results:
    1..15
    ok 1 2002 - Add valid connmark action with defaults
    ok 2 56a5 - Add valid connmark action with control pass
    ok 3 7c66 - Add valid connmark action with control drop
    ok 4 a913 - Add valid connmark action with control pipe
    ok 5 bdd8 - Add valid connmark action with control reclassify
    ok 6 b8be - Add valid connmark action with control continue
    ok 7 d8a6 - Add valid connmark action with control jump
    ok 8 aae8 - Add valid connmark action with zone argument
    ok 9 2f0b - Add valid connmark action with invalid zone argument
    ok 10 9305 - Add connmark action with unsupported argument
    ok 11 71ca - Add valid connmark action and replace it
    ok 12 5f8f - Add valid connmark action with cookie
    ok 13 c506 - Replace connmark with invalid goto chain control
    ok 14 6571 - Delete connmark action with valid index
    ok 15 3426 - Delete connmark action with invalid index
    Reviewed-by: default avatarJamal Hadi Salim <jhs@mojatatu.com>
    Signed-off-by: default avatarPedro Tammela <pctammela@mojatatu.com>
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    288864ef
tc_connmark.h 392 Bytes