search for: vhost_net

Displaying 20 results from an estimated 1241 matches for "vhost_net".

2013 Jun 05
4
[PATCH] vhost_net: clear msg.control for non-zerocopy case during tx
.../tap may set zerocopy callbacks which may decrease the kref of ubufs wrongly. Bug were introduced by commit cedb9bdce099206290a2bdd02ce47a7b253b6a84 (vhost-net: skip head management if no outstanding). This solves the following warnings: WARNING: at include/linux/kref.h:47 handle_tx+0x477/0x4b0 [vhost_net]() Modules linked in: vhost_net macvtap macvlan tun nfsd exportfs bridge stp llc openvswitch kvm_amd kvm bnx2 megaraid_sas [last unloaded: tun] CPU: 5 PID: 8670 Comm: vhost-8668 Not tainted 3.10.0-rc2+ #1566 Hardware name: Dell Inc. PowerEdge R715/00XHKG, BIOS 1.5.2 04/19/2011 ffffffffa0198323 ffff...
2013 Jun 05
4
[PATCH] vhost_net: clear msg.control for non-zerocopy case during tx
.../tap may set zerocopy callbacks which may decrease the kref of ubufs wrongly. Bug were introduced by commit cedb9bdce099206290a2bdd02ce47a7b253b6a84 (vhost-net: skip head management if no outstanding). This solves the following warnings: WARNING: at include/linux/kref.h:47 handle_tx+0x477/0x4b0 [vhost_net]() Modules linked in: vhost_net macvtap macvlan tun nfsd exportfs bridge stp llc openvswitch kvm_amd kvm bnx2 megaraid_sas [last unloaded: tun] CPU: 5 PID: 8670 Comm: vhost-8668 Not tainted 3.10.0-rc2+ #1566 Hardware name: Dell Inc. PowerEdge R715/00XHKG, BIOS 1.5.2 04/19/2011 ffffffffa0198323 ffff...
2010 Mar 30
1
[PATCH][QEMU][VHOST]fix feature bit handling for mergeable rx buffers
This patch adds mergeable receive buffer support to qemu-kvm, to allow enabling it when vhost_net supports it. It also adds a missing call to vhost_net_ack_features() to push acked features to vhost_net. The patch is relative to Michael Tsirkin's qemu-kvm git tree. +-DLS Signed-off-by: David L Stevens <dlstevens at us.ibm.com> diff -ruNp qemu-kvm.mst/hw/vhost_net.c qemu-kvm....
2010 Mar 30
1
[PATCH][QEMU][VHOST]fix feature bit handling for mergeable rx buffers
This patch adds mergeable receive buffer support to qemu-kvm, to allow enabling it when vhost_net supports it. It also adds a missing call to vhost_net_ack_features() to push acked features to vhost_net. The patch is relative to Michael Tsirkin's qemu-kvm git tree. +-DLS Signed-off-by: David L Stevens <dlstevens at us.ibm.com> diff -ruNp qemu-kvm.mst/hw/vhost_net.c qemu-kvm....
2018 Jul 20
12
[PATCH net-next 0/9] TX used ring batched updating for vhost
...ing for datacopy. This is because zercopy had already supported its own batching. TX PPS was increased 25.8% and Netperf TCP does not show obvious differences. The split of datapath will also be helpful for future implementation like in order completion. Please review. Thanks Jason Wang (9): vhost_net: drop unnecessary parameter vhost_net: introduce helper to initialize tx iov iter vhost_net: introduce vhost_exceeds_weight() vhost_net: introduce get_tx_bufs() vhost_net: introduce tx_can_batch() vhost_net: split out datacopy logic vhost_net: rename vhost_rx_signal_used() to vhost_net_...
2018 Jul 20
12
[PATCH net-next 0/9] TX used ring batched updating for vhost
...ing for datacopy. This is because zercopy had already supported its own batching. TX PPS was increased 25.8% and Netperf TCP does not show obvious differences. The split of datapath will also be helpful for future implementation like in order completion. Please review. Thanks Jason Wang (9): vhost_net: drop unnecessary parameter vhost_net: introduce helper to initialize tx iov iter vhost_net: introduce vhost_exceeds_weight() vhost_net: introduce get_tx_bufs() vhost_net: introduce tx_can_batch() vhost_net: split out datacopy logic vhost_net: rename vhost_rx_signal_used() to vhost_net_...
2013 Jun 06
1
[PATCH] vhost_net: clear msg.control for non-zerocopy case during tx
...;> ubufs >> wrongly. > >> Bug were introduced by commit cedb9bdce099206290a2bdd02ce47a7b253b6a84 >> (vhost-net: skip head management if no outstanding). > >> This solves the following warnings: > >> WARNING: at include/linux/kref.h:47 handle_tx+0x477/0x4b0 [vhost_net]() >> Modules linked in: vhost_net macvtap macvlan tun nfsd exportfs bridge >> stp llc openvswitch kvm_amd kvm bnx2 megaraid_sas [last unloaded: tun] >> CPU: 5 PID: 8670 Comm: vhost-8668 Not tainted 3.10.0-rc2+ #1566 >> Hardware name: Dell Inc. PowerEdge R715/00XHKG, BIOS 1....
2013 Jun 06
1
[PATCH] vhost_net: clear msg.control for non-zerocopy case during tx
...;> ubufs >> wrongly. > >> Bug were introduced by commit cedb9bdce099206290a2bdd02ce47a7b253b6a84 >> (vhost-net: skip head management if no outstanding). > >> This solves the following warnings: > >> WARNING: at include/linux/kref.h:47 handle_tx+0x477/0x4b0 [vhost_net]() >> Modules linked in: vhost_net macvtap macvlan tun nfsd exportfs bridge >> stp llc openvswitch kvm_amd kvm bnx2 megaraid_sas [last unloaded: tun] >> CPU: 5 PID: 8670 Comm: vhost-8668 Not tainted 3.10.0-rc2+ #1566 >> Hardware name: Dell Inc. PowerEdge R715/00XHKG, BIOS 1....
2013 Mar 07
3
[PATCH] vhost_net: remove tx polling state
After commit 2b8b328b61c799957a456a5a8dab8cc7dea68575 (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. Signed-off-by: Jason Wang <jasowang at redhat.com>...
2013 Mar 07
3
[PATCH] vhost_net: remove tx polling state
After commit 2b8b328b61c799957a456a5a8dab8cc7dea68575 (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. Signed-off-by: Jason Wang <jasowang at redhat.com>...
2016 Jun 01
7
[PATCH V3 0/2] vhost_net polling optimization
Hi: This series tries to optimize vhost_net polling at two points: - Stop rx polling for reduicng the unnecessary wakeups during handle_rx(). - Conditonally enable tx polling for reducing the unnecessary traversing and spinlock touching. Test shows about 17% improvement on rx pps. Please review Changes from V2: - Don't enable rx...
2016 Jun 01
7
[PATCH V3 0/2] vhost_net polling optimization
Hi: This series tries to optimize vhost_net polling at two points: - Stop rx polling for reduicng the unnecessary wakeups during handle_rx(). - Conditonally enable tx polling for reducing the unnecessary traversing and spinlock touching. Test shows about 17% improvement on rx pps. Please review Changes from V2: - Don't enable rx...
2016 May 30
4
[PATCH V2 0/2] vhost_net polling optimization
Hi: This series tries to optimize vhost_net polling at two points: - Stop rx polling for reduicng the unnecessary wakeups during handle_rx(). - Conditonally enable tx polling for reducing the unnecessary traversing and spinlock touching. Test shows about 17% improvement on rx pps. Please review Changes from V1: - use vhost_net_disabl...
2016 May 30
4
[PATCH V2 0/2] vhost_net polling optimization
Hi: This series tries to optimize vhost_net polling at two points: - Stop rx polling for reduicng the unnecessary wakeups during handle_rx(). - Conditonally enable tx polling for reducing the unnecessary traversing and spinlock touching. Test shows about 17% improvement on rx pps. Please review Changes from V1: - use vhost_net_disabl...
2018 May 21
20
[RFC PATCH net-next 00/12] XDP batching for TUN/vhost_net
Hi all: We do not support XDP batching for TUN since it can only receive one packet a time from vhost_net. This series tries to remove this limitation by: - introduce a TUN specific msg_control that can hold a pointer to an array of XDP buffs - try copy and build XDP buff in vhost_net - store XDP buffs in an array and submit them once for every N packets from vhost_net - since TUN can only do nati...
2018 May 29
2
[PATCH net] vhost_net: flush batched heads before trying to busy polling
After commit e2b3b35eb989 ("vhost_net: batch used ring update in rx"), we tend to batch updating used heads. But it doesn't flush batched heads before trying to do busy polling, this will cause vhost to wait for guest TX which waits for the used RX. Fixing by flush batched heads before busy loop. 1 byte TCP_RR performance rec...
2018 Dec 11
2
[PATCH net 2/4] vhost_net: rework on the lock ordering for busy polling
...deadlock with the assumption > that handle_rx() and handle_tx() run in a same process. But this > commit remove the protection for IOTLB updating which requires the > mutex of each vq to be held. > > To solve this issue, the first step is to have a exact same lock > ordering for vhost_net. This is done through: > > - For handle_rx(), if busy polling is enabled, lock tx vq immediately. > - For handle_tx(), always lock rx vq before tx vq, and unlock it if > busy polling is not enabled. > - Remove the tricky locking codes in busy polling. > > With this, we can...
2018 Dec 11
2
[PATCH net 2/4] vhost_net: rework on the lock ordering for busy polling
...deadlock with the assumption > that handle_rx() and handle_tx() run in a same process. But this > commit remove the protection for IOTLB updating which requires the > mutex of each vq to be held. > > To solve this issue, the first step is to have a exact same lock > ordering for vhost_net. This is done through: > > - For handle_rx(), if busy polling is enabled, lock tx vq immediately. > - For handle_tx(), always lock rx vq before tx vq, and unlock it if > busy polling is not enabled. > - Remove the tricky locking codes in busy polling. > > With this, we can...
2018 Jul 03
11
[PATCH v2 net-next 0/4] vhost_net: Avoid vq kicks during busyloop
...dditionary patch 4 is to avoid rx kicks under heavy load during busypoll. Tx performance is greatly improved by this change. I don't see notable performance change on rx with this series though. Performance numbers (tx): - Bulk transfer from guest to external physical server. [Guest]->vhost_net->tap--(XDP_REDIRECT)-->i40e --(wire)--> [Server] - Set 10us busypoll. - Guest disables checksum and TSO because of host XDP. - Measured single flow Mbps by netperf, and kicks by perf kvm stat (EPT_MISCONFIG event). Before After...
2016 Jun 01
0
[PATCH V3 1/2] vhost_net: stop polling socket during rx processing
...d, 33 insertions(+), 31 deletions(-) diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c index f744eeb..1d3e45f 100644 --- a/drivers/vhost/net.c +++ b/drivers/vhost/net.c @@ -301,6 +301,32 @@ static bool vhost_can_busy_poll(struct vhost_dev *dev, !vhost_has_work(dev); } +static void vhost_net_disable_vq(struct vhost_net *n, + struct vhost_virtqueue *vq) +{ + struct vhost_net_virtqueue *nvq = + container_of(vq, struct vhost_net_virtqueue, vq); + struct vhost_poll *poll = n->poll + (nvq - n->vqs); + if (!vq->private_data) + return; + vhost_poll_stop(poll); +} + +static int...