Skip to content
  • Jason Wang's avatar
    vhost_net: remove tx polling state · 70181d51
    Jason Wang authored
    After commit 2b8b328b
    
     (vhost_net: handle polling
    errors when setting backend), we in fact track the polling state through
    poll->wqh, so there's no need to duplicate the work with an extra
    vhost_net_polling_state. So this patch removes this and make the code simpler.
    
    This patch also removes the all tx starting/stopping code in tx path according
    to Michael's suggestion.
    
    Netperf test shows almost the same result in stream test, but gets improvements
    on TCP_RR tests (both zerocopy or copy) especially on low load cases.
    
    Tested between multiqueue kvm guest and external host with two direct
    connected 82599s.
    
    zerocopy disabled:
    
    sessions|transaction rates|normalize|
    before/after/+improvements
    1 | 9510.24/11727.29/+23.3%    | 693.54/887.68/+28.0%   |
    25| 192931.50/241729.87/+25.3% | 2376.80/2771.70/+16.6% |
    50| 277634.64/291905.76/+5%    | 3118.36/3230.11/+3.6%  |
    
    zerocopy enabled:
    
    sessions|transaction rates|normalize|
    before/after/+improvements
    1 | 7318.33/11929.76/+63.0%    | 521.86/843.30/+61.6%   |
    25| 167264.88/242422.15/+44.9% | 2181.60/2788.16/+27.8% |
    50| 272181.02/294347.04/+8.1%  | 3071.56/3257.85/+6.1%  |
    
    Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
    Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    70181d51