public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: axboe@kernel.dk, linux-kernel@vger.kernel.org,
	xen-devel@lists.xensource.com
Subject: [GIT PULL] (xen) stable/for-jens-3.8
Date: Fri, 9 Nov 2012 09:55:29 -0500	[thread overview]
Message-ID: <20121109145529.GB23023@phenom.dumpdata.com> (raw)

Hey Jens,

Please git pull the following branch:

 git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/for-jens-3.8

which has a new feature of the blk[back|front] driver - it is called 'feature-persistent'.
Roger and Oliver patch says:
"  This patch implements persistent grants for the xen-blk{front,back}
    mechanism. The effect of this change is to reduce the number of unmap
    operations performed, since they cause a (costly) TLB shootdown. This
    allows the I/O performance to scale better when a large number of VMs
    are performing I/O.
    
    Previously, the blkfront driver was supplied a bvec[] from the request
    queue. This was granted to dom0; dom0 performed the I/O and wrote
    directly into the grant-mapped memory and unmapped it; blkfront then
    removed foreign access for that grant. The cost of unmapping scales
    badly with the number of CPUs in Dom0. An experiment showed that when
    Dom0 has 24 VCPUs, and guests are performing parallel I/O to a
    ramdisk, the IPIs from performing unmap's is a bottleneck at 5 guests
    (at which point 650,000 IOPS are being performed in total). If more
    than 5 guests are used, the performance declines. By 10 guests, only
    400,000 IOPS are being performed.
    
    This patch improves performance by only unmapping when the connection
    between blkfront and back is broken.
"

Note: You might get a conflict in the common.h file. It should
be fairly easy to fix it - it should end up looking as this:

160         /* Cached size parameter. */
161         sector_t                size;
162         unsigned int            flush_support:1;
163         unsigned int            discard_secure:1;
164         unsigned int            feature_gnt_persistent:1;
165         unsigned int            overflow_max_grants:1;
166 };

Thanks!

 drivers/block/xen-blkback/blkback.c |  295 ++++++++++++++++++++++++++++++++---
 drivers/block/xen-blkback/common.h  |   17 ++
 drivers/block/xen-blkback/xenbus.c  |   23 +++-
 drivers/block/xen-blkfront.c        |  198 ++++++++++++++++++++----
 4 files changed, 478 insertions(+), 55 deletions(-)

Roger Pau Monne (2):
      xen/blkback: Persistent grant maps for xen blk drivers
      xen/blkback: persistent-grants fixes


             reply	other threads:[~2012-11-09 14:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-09 14:55 Konrad Rzeszutek Wilk [this message]
2012-11-12 16:19 ` [GIT PULL] (xen) stable/for-jens-3.8 Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2013-02-14 23:26 Konrad Rzeszutek Wilk
2013-02-15  9:30 ` Jens Axboe
2013-02-15 13:31   ` Konrad Rzeszutek Wilk

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=20121109145529.GB23023@phenom.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=axboe@kernel.dk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=xen-devel@lists.xensource.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox