OpenCloudOS-Kernel/drivers/vhost
Jason Wang 8241a1e466 vhost_net: stop polling socket during rx processing
We don't stop rx polling socket during rx processing, this will lead
unnecessary wakeups from under layer net devices (E.g
sock_def_readable() form tun). Rx will be slowed down in this
way. This patch avoids this by stop polling socket during rx
processing. A small drawback is that this introduces some overheads in
light load case because of the extra start/stop polling, but single
netperf TCP_RR does not notice any change. In a super heavy load case,
e.g using pktgen to inject packet to guest, we get about ~8.8%
improvement on pps:

before: ~1240000 pkt/s
after:  ~1350000 pkt/s

Signed-off-by: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-06-07 14:46:11 -07:00
..
Kconfig vhost: cross-endian support for legacy devices 2015-06-01 15:48:55 +02:00
Makefile vhost: Make vhost a separate module 2013-07-07 17:33:44 +03:00
net.c vhost_net: stop polling socket during rx processing 2016-06-07 14:46:11 -07:00
scsi.c target: make close_session optional 2016-05-10 01:19:26 -07:00
test.c vhost: rename vhost_init_used() 2016-03-02 17:02:04 +02:00
test.h vhost test module 2010-12-09 16:00:21 +02:00
vhost.c vhost_net: basic polling support 2016-03-11 02:18:53 +02:00
vhost.h vhost_net: basic polling support 2016-03-11 02:18:53 +02:00
vringh.c vringh: update for virtio 1.0 APIs 2014-12-15 23:49:28 +02:00