search for: vhost_zerocopy_signal_used

Displaying 20 results from an estimated 172 matches for "vhost_zerocopy_signal_used".

2013 Sep 02
1
[PATCH V2 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
On Fri, Aug 30, 2013 at 12:29:18PM +0800, Jason Wang wrote: > We tend to batch the used adding and signaling in vhost_zerocopy_callback() > which may result more than 100 used buffers to be updated in > vhost_zerocopy_signal_used() in some cases. So wwitch to use switch > vhost_add_used_and_signal_n() to avoid multiple calls to > vhost_add_used_and_signal(). Which means much more less times of used index > updating and memory barriers. pls put info on perf gain in commit log too > > Signed-off-by: Jason...
2013 Sep 02
1
[PATCH V2 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
On Fri, Aug 30, 2013 at 12:29:18PM +0800, Jason Wang wrote: > We tend to batch the used adding and signaling in vhost_zerocopy_callback() > which may result more than 100 used buffers to be updated in > vhost_zerocopy_signal_used() in some cases. So wwitch to use switch > vhost_add_used_and_signal_n() to avoid multiple calls to > vhost_add_used_and_signal(). Which means much more less times of used index > updating and memory barriers. pls put info on perf gain in commit log too > > Signed-off-by: Jason...
2013 Aug 30
0
[PATCH V2 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
We tend to batch the used adding and signaling in vhost_zerocopy_callback() which may result more than 100 used buffers to be updated in vhost_zerocopy_signal_used() in some cases. So wwitch to use vhost_add_used_and_signal_n() to avoid multiple calls to vhost_add_used_and_signal(). Which means much more less times of used index updating and memory barriers. Signed-off-by: Jason Wang <jasowang at redhat.com> --- drivers/vhost/net.c | 13 ++++++++----...
2013 Aug 30
0
[PATCH V2 1/6] vhost_net: make vhost_zerocopy_signal_used() returns void
.../vhost/net.c index 969a859..280ee66 100644 --- a/drivers/vhost/net.c +++ b/drivers/vhost/net.c @@ -276,8 +276,8 @@ static void copy_iovec_hdr(const struct iovec *from, struct iovec *to, * of used idx. Once lower device DMA done contiguously, we will signal KVM * guest used idx. */ -static int vhost_zerocopy_signal_used(struct vhost_net *net, - struct vhost_virtqueue *vq) +static void vhost_zerocopy_signal_used(struct vhost_net *net, + struct vhost_virtqueue *vq) { struct vhost_net_virtqueue *nvq = container_of(vq, struct vhost_net_virtqueue, vq); @@ -297,7 +297,6 @@ static int vhost_zeroc...
2013 Sep 02
1
[PATCH V2 1/6] vhost_net: make vhost_zerocopy_signal_used() returns void
...100644 > --- a/drivers/vhost/net.c > +++ b/drivers/vhost/net.c > @@ -276,8 +276,8 @@ static void copy_iovec_hdr(const struct iovec *from, struct iovec *to, > * of used idx. Once lower device DMA done contiguously, we will signal KVM > * guest used idx. > */ > -static int vhost_zerocopy_signal_used(struct vhost_net *net, > - struct vhost_virtqueue *vq) > +static void vhost_zerocopy_signal_used(struct vhost_net *net, > + struct vhost_virtqueue *vq) > { > struct vhost_net_virtqueue *nvq = > container_of(vq, struct vhost_net_virtqueue, vq); > @@ -297...
2013 Sep 02
1
[PATCH V2 1/6] vhost_net: make vhost_zerocopy_signal_used() returns void
...100644 > --- a/drivers/vhost/net.c > +++ b/drivers/vhost/net.c > @@ -276,8 +276,8 @@ static void copy_iovec_hdr(const struct iovec *from, struct iovec *to, > * of used idx. Once lower device DMA done contiguously, we will signal KVM > * guest used idx. > */ > -static int vhost_zerocopy_signal_used(struct vhost_net *net, > - struct vhost_virtqueue *vq) > +static void vhost_zerocopy_signal_used(struct vhost_net *net, > + struct vhost_virtqueue *vq) > { > struct vhost_net_virtqueue *nvq = > container_of(vq, struct vhost_net_virtqueue, vq); > @@ -297...
2013 Aug 16
0
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
...ng <jasowang at redhat.com> --- drivers/vhost/net.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c index 280ee66..8a6dd0d 100644 --- a/drivers/vhost/net.c +++ b/drivers/vhost/net.c @@ -281,7 +281,7 @@ static void vhost_zerocopy_signal_used(struct vhost_net *net, { struct vhost_net_virtqueue *nvq = container_of(vq, struct vhost_net_virtqueue, vq); - int i; + int i, add; int j = 0; for (i = nvq->done_idx; i != nvq->upend_idx; i = (i + 1) % UIO_MAXIOV) { @@ -289,14 +289,17 @@ static void vhost_zerocopy_signal_used(stru...
2013 Aug 16
2
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
...t; drivers/vhost/net.c | 13 ++++++++----- > 1 files changed, 8 insertions(+), 5 deletions(-) > > diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c > index 280ee66..8a6dd0d 100644 > --- a/drivers/vhost/net.c > +++ b/drivers/vhost/net.c > @@ -281,7 +281,7 @@ static void vhost_zerocopy_signal_used(struct vhost_net *net, > { > struct vhost_net_virtqueue *nvq = > container_of(vq, struct vhost_net_virtqueue, vq); > - int i; > + int i, add; > int j = 0; > > for (i = nvq->done_idx; i != nvq->upend_idx; i = (i + 1) % UIO_MAXIOV) { > @@ -289,14 +289,17 @...
2013 Aug 16
2
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
...t; drivers/vhost/net.c | 13 ++++++++----- > 1 files changed, 8 insertions(+), 5 deletions(-) > > diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c > index 280ee66..8a6dd0d 100644 > --- a/drivers/vhost/net.c > +++ b/drivers/vhost/net.c > @@ -281,7 +281,7 @@ static void vhost_zerocopy_signal_used(struct vhost_net *net, > { > struct vhost_net_virtqueue *nvq = > container_of(vq, struct vhost_net_virtqueue, vq); > - int i; > + int i, add; > int j = 0; > > for (i = nvq->done_idx; i != nvq->upend_idx; i = (i + 1) % UIO_MAXIOV) { > @@ -289,14 +289,17 @...
2013 Aug 30
12
[PATCH V2 0/6] vhost code cleanup and minor enhancement
...he zerocopy enabling check by changing the check of upend_idx != done_idx to (upend_idx + 1) % UIO_MAXIOV == done_idx. - Switch to use put_user() in __vhost_add_used_n() if there's only one used - Keep the max pending check based on Michael's suggestion. Jason Wang (6): vhost_net: make vhost_zerocopy_signal_used() returns void vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used() vhost: switch to use vhost_add_used_n() vhost_net: determine whether or not to use zerocopy at one time vhost_net: poll vhost queue after marking DMA is done vhost_net: correctly limit the max...
2013 Aug 30
12
[PATCH V2 0/6] vhost code cleanup and minor enhancement
...he zerocopy enabling check by changing the check of upend_idx != done_idx to (upend_idx + 1) % UIO_MAXIOV == done_idx. - Switch to use put_user() in __vhost_add_used_n() if there's only one used - Keep the max pending check based on Michael's suggestion. Jason Wang (6): vhost_net: make vhost_zerocopy_signal_used() returns void vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used() vhost: switch to use vhost_add_used_n() vhost_net: determine whether or not to use zerocopy at one time vhost_net: poll vhost queue after marking DMA is done vhost_net: correctly limit the max...
2013 Aug 20
0
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
On 08/16/2013 05:54 PM, Michael S. Tsirkin wrote: > On Fri, Aug 16, 2013 at 01:16:26PM +0800, Jason Wang wrote: >> > Switch to use vhost_add_used_and_signal_n() to avoid multiple calls to >> > vhost_add_used_and_signal(). With the patch we will call at most 2 times >> > (consider done_idx warp around) compared to N times w/o this patch. >> > >> >
2013 Aug 23
1
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
On 08/20/2013 10:33 AM, Jason Wang wrote: > On 08/16/2013 05:54 PM, Michael S. Tsirkin wrote: >> On Fri, Aug 16, 2013 at 01:16:26PM +0800, Jason Wang wrote: >>>> Switch to use vhost_add_used_and_signal_n() to avoid multiple calls to >>>> vhost_add_used_and_signal(). With the patch we will call at most 2 times >>>> (consider done_idx warp around)
2013 Aug 23
1
[PATCH 2/6] vhost_net: use vhost_add_used_and_signal_n() in vhost_zerocopy_signal_used()
On 08/20/2013 10:33 AM, Jason Wang wrote: > On 08/16/2013 05:54 PM, Michael S. Tsirkin wrote: >> On Fri, Aug 16, 2013 at 01:16:26PM +0800, Jason Wang wrote: >>>> Switch to use vhost_add_used_and_signal_n() to avoid multiple calls to >>>> vhost_add_used_and_signal(). With the patch we will call at most 2 times >>>> (consider done_idx warp around)
2012 Nov 01
9
[PATCHv3 net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to
2012 Nov 01
9
[PATCHv3 net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to
2012 Oct 31
8
[PATCHv2 net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to
2012 Oct 31
8
[PATCHv2 net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to
2012 Oct 29
9
[PATCH net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to
2012 Oct 29
9
[PATCH net-next 0/8] enable/disable zero copy tx dynamically
tun supports zero copy transmit since 0690899b4d4501b3505be069b9a687e68ccbe15b, however you can only enable this mode if you know your workload does not trigger heavy guest to host/host to guest traffic - otherwise you get a (minor) performance regression. This patchset addresses this problem by notifying the owner device when callback is invoked because of a data copy. This makes it possible to