• Eric Dumazet's avatar
    sit: enable lockless xmits · 8df40d10
    Eric Dumazet authored
    SIT tunnels can benefit from lockless xmits, using NETIF_F_LLTX
    
    Bench on a 16 cpus machine (dual E5540 cpus), 16 threads sending
    10000000 UDP frames via one sit tunnel (size:220 bytes per frame)
    
    Before patch :
    
    real	3m15.399s
    user	0m9.185s
    sys	51m55.403s
    
    75029.00 87.5% _raw_spin_lock            vmlinux
     1090.00  1.3% dst_release               vmlinux
      902.00  1.1% dev_queue_xmit            vmlinux
      627.00  0.7% sock_wfree                vmlinux
      613.00  0.7% ip6_push_pending_frames   ipv6.ko
      505.00  0.6% __ip_route_output_key     vmlinux
    
    After patch:
    
    real	1m1.387s
    user	0m12.489s
    sys	15m58.868s
    
    28239.00 23.3% dst_release               vmlinux
    13570.00 11.2% ip6_push_pending_frames   ipv6.ko
    13118.00 10.8% ip6_append_data           ipv6.ko
     7995.00  6.6% __ip_route_output_key     vmlinux
     7924.00  6.5% sk_dst_check              vmlinux
     5015.00  4.1% udpv6_sendmsg             ipv6.ko
     3594.00  3.0% sock_alloc_send_pskb      vmlinux
     3135.00  2.6% sock_wfree                vmlinux
     3055.00  2.5% ip6_sk_dst_lookup         ipv6.ko
     2473.00  2.0% ip_finish_output          vmlinux
    Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    8df40d10
sit.c 28.9 KB