From: Rusty Russell <rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
To: Anthony Liguori <aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: kvm-devel
<kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
Christian Borntraeger
<borntraeger-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
Subject: Re: virtio_net backport performance
Date: Mon, 7 Jan 2008 19:23:44 +1100 [thread overview]
Message-ID: <200801071923.45083.rusty@rustcorp.com.au> (raw)
In-Reply-To: <477EB228.4030905-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
On Saturday 05 January 2008 09:24:40 Anthony Liguori wrote:
> Hey Rusty et al,
>
> I've got automatic backports of the virtio modules[1] working back to
> 2.6.18. Everything seems okay except that for any kernel with the older
> NAPI api, performance is extremely bad. I get about 1gbit on TX with
> 2.6.24 but I get somewhere around 20mbit on 2.6.22.
OK, I tested this backport and immediately got oopses. Revealed some
interesting races in net driver (again, it's that damn callback disable
causing problems). New queue fixes these, but get awful performance:
'dd bs=1M count=1000 if=/dev/zero | nc 172.20.0.1 8889' takes almost 30
seconds.
Found one bug in your code tho: if enable_cb returns false, it means the queue
has *not* been enabled:
--- hack-module.awk.~1~ 2008-01-06 10:49:16.000000000 +1100
+++ hack-module.awk 2008-01-07 19:08:40.000000000 +1100
@@ -49,7 +49,6 @@
print " netif_rx_complete(vi->dev);";
print "";
print " if (!no_work && netif_rx_reschedule(vi->dev, received)) {";
- print " vi->rvq->vq_ops->disable_cb(vi->rvq);";
print " skb = NULL;";
print " goto again;";
print " }";
Will continue looking for performance regression tomorrow (actually, better
check my changes haven't introduced it in non-backports first!).
Thanks!
Rusty.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
next prev parent reply other threads:[~2008-01-07 8:23 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-04 22:24 virtio_net backport performance Anthony Liguori
[not found] ` <477EB228.4030905-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-01-04 23:59 ` Rusty Russell
2008-01-07 8:23 ` Rusty Russell [this message]
[not found] ` <200801071923.45083.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2008-01-07 16:20 ` Anthony Liguori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200801071923.45083.rusty@rustcorp.com.au \
--to=rusty-8n+1lvoiyb80n/f98k4iww@public.gmane.org \
--cc=aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
--cc=borntraeger-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.