]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'vhost-skb-leaks'
authorDavid S. Miller <davem@davemloft.net>
Sun, 3 Dec 2017 02:31:04 +0000 (21:31 -0500)
committerDavid S. Miller <davem@davemloft.net>
Sun, 3 Dec 2017 02:31:04 +0000 (21:31 -0500)
commit2e507f2bf841878b587e6228fd8442c15adaad64
treedc7a2620476bf2716201f858f342f3b389cdfae2
parent3a657f335c0d22969f5384c6bd739190c5210df5
parent31f4df75cb79aeecc34965fcab79dc6f82306892
Merge branch 'vhost-skb-leaks'

Wei Xu says:

====================
vhost: fix a few skb leaks

Matthew found a roughly 40% tcp throughput regression with commit
7243bf5a(vhost_net: try batch dequing from skb array) as discussed
in the following thread:
https://www.mail-archive.com/netdev@vger.kernel.org/msg187936.html

v4:
- fix zero iov iterator count in tap/tap_do_read()(Jason)
- don't put tun in case of EBADFD(Jason)
- Replace msg->msg_control with new 'skb' when calling tun/tap_do_read()

v3:
- move freeing skb from vhost to tun/tap recvmsg() to not
  confuse the callers.

v2:
- add Matthew as the reporter, thanks matthew.
- moving zero headcount check ahead instead of defer consuming skb
  due to jason and mst's comment.
- add freeing skb in favor of recvmsg() fails.
====================

Acked-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Matthew Rosato <mjrosato@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>