From: Rusty Russell <rusty@rustcorp.com.au>
To: torvalds@linux-foundation.org
Cc: linux-kernel@vger.kernel.org,
virtualization <virtualization@lists.linux-foundation.org>
Subject: [RESENDx2] [PULL] virtio: fix barriers for virtio-mmio
Date: Fri, 23 Dec 2011 15:46:17 +1030 [thread overview]
Message-ID: <8739cbkgv2.fsf@rustcorp.com.au> (raw)
This one as a signed tag on github, in case the inline patch was
the reason you dropped this.
virtio-mmio in new 3.2, and they found a corruption bug. Please apply.
* [new tag] rusty@rustcorp.com.au -> rusty@rustcorp.com.au
The following changes since commit b3b1b70e62a603f473619dbebc3b3d23f535e6f8:
Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb (2011-12-22 12:59:47 -0800)
are available in the git repository at:
git://github.com/rustyrussell/linux.git master
Rusty Russell (1):
virtio: harsher barriers for virtio-mmio.
drivers/lguest/lguest_device.c | 8 +++++---
drivers/s390/kvm/kvm_virtio.c | 2 +-
drivers/virtio/virtio_mmio.c | 7 ++++---
drivers/virtio/virtio_pci.c | 4 ++--
drivers/virtio/virtio_ring.c | 34 +++++++++++++++++++++-------------
include/linux/virtio_ring.h | 1 +
tools/virtio/linux/virtio.h | 1 +
tools/virtio/virtio_test.c | 3 ++-
8 files changed, 37 insertions(+), 23 deletions(-)
commit ef3a731beb9a030e552945a734dc898b5525e2f7
Author: Rusty Russell <rusty@rustcorp.com.au>
Date: Fri Dec 23 15:07:56 2011 +1030
virtio: harsher barriers for virtio-mmio.
We were cheating with our barriers; using the smp ones rather than the
real device ones. That was fine, until virtio-mmio came along, which
could be talking to a real device (a non-SMP CPU).
Unfortunately, just putting back the real barriers (reverting
d57ed95d) causes a performance regression on virtio-pci. In
particular, Amos reports netbench's TCP_RR over virtio_net CPU
utilization increased up to 35% while throughput went down by up to
14%.
By comparison, this branch is in the noise.
Reference: https://lkml.org/lkml/2011/12/11/22
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
drivers/lguest/lguest_device.c | 8 +++++---
drivers/s390/kvm/kvm_virtio.c | 2 +-
drivers/virtio/virtio_mmio.c | 7 ++++---
drivers/virtio/virtio_pci.c | 4 ++--
drivers/virtio/virtio_ring.c | 34 +++++++++++++++++++++-------------
include/linux/virtio_ring.h | 1 +
tools/virtio/linux/virtio.h | 1 +
tools/virtio/virtio_test.c | 3 ++-
8 files changed, 37 insertions(+), 23 deletions(-)
next reply other threads:[~2011-12-23 5:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-23 5:16 Rusty Russell [this message]
2011-12-23 9:31 ` [RESENDx2] [PULL] virtio: fix barriers for virtio-mmio Linus Torvalds
2011-12-23 9:35 ` Linus Torvalds
2011-12-23 11:35 ` Ohad Ben-Cohen
2011-12-23 11:35 ` Ohad Ben-Cohen
2011-12-24 3:01 ` Rusty Russell
2011-12-24 3:01 ` Rusty Russell
2011-12-24 3:01 ` Rusty Russell
2011-12-29 4:31 ` Rusty Russell
2011-12-29 4:31 ` Rusty Russell
2011-12-29 4:31 ` Rusty Russell
2011-12-29 6:53 ` Ohad Ben-Cohen
2011-12-29 6:53 ` Ohad Ben-Cohen
2011-12-29 6:53 ` Ohad Ben-Cohen
2011-12-23 11:35 ` Ohad Ben-Cohen
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=8739cbkgv2.fsf@rustcorp.com.au \
--to=rusty@rustcorp.com.au \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=virtualization@lists.linux-foundation.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.