qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Hajnoczi <stefanha@gmail.com>
To: Wolfgang Richter <wor6c@virginia.edu>
Cc: Wolfgang Richter <wolf@cs.cmu.edu>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Adding Disk-Level Introspection to QEMU
Date: Wed, 24 Apr 2013 10:37:58 +0200	[thread overview]
Message-ID: <20130424083758.GB20971@stefanha-thinkpad.redhat.com> (raw)
In-Reply-To: <FEBF59E3-3BE5-4B0A-809A-B77728C129A9@virginia.edu>

On Tue, Apr 23, 2013 at 01:40:19PM -0400, Wolfgang Richter wrote:
> 
> --
> Wolf
> 
> On Apr 23, 2013, at 1:22 PM, Eric Blake <eblake@redhat.com> wrote:
> 
> > On 04/23/2013 11:12 AM, Wolfgang Richter wrote:
> >> I'm interested in adding introspection of disk writes to QEMU for various
> >> applications and research potential.
> >> 
> >> What I mean by introspection of disk writes is that, when enabled, each
> >> write
> >> passing through QEMU to backing storage would also be copied to an
> >> introspection channel for further analysis.
> > 
> > Sounds like you would be benefited by the block-backup series, with an
> > NBD server as the point where you inject your introspection.
> > 
> > https://lists.gnu.org/archive/html/qemu-devel/2013-04/msg04629.html
> > 
> > The existing drive-mirror command can also target an NBD destination,
> > with similar effects.
> 
> Yes, OK as a new member to the list I saw the block-backup series and was starting to have similar thoughts.  I'll port my code (analysis side) to work with it (or drive-mirror).
> 
> Has there been any performance analysis of drive-mirror (impact on executing guest)?

It slows down guest I/O for a couple of reasons:

1. Writes now require a read from the original device followed by a
   write to the target device.  Only after this completes is the write
   allowed to proceed.

2. Overlapping read/write requests are serialized to maintain
   consistency between the guests I/Os and the block-backup I/Os.

But on second thought, I don't think block-backup fits the bill.  You
don't care about the original data, you care about what new data the
guest is writing.

I think what you really want is a "tap" block driver which mirrors
writes to a target device (typically a NBD volume).  You can model this
on blkverify or check out Benoit Canet's quorum patches.

Stefan

  reply	other threads:[~2013-04-24  8:38 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-23 17:12 [Qemu-devel] Adding Disk-Level Introspection to QEMU Wolfgang Richter
2013-04-23 17:22 ` Eric Blake
2013-04-23 17:40   ` Wolfgang Richter
2013-04-24  8:37     ` Stefan Hajnoczi [this message]
2013-04-24  9:24       ` Paolo Bonzini
2013-04-24 16:14         ` Wolfgang Richter
2013-04-24 15:59       ` Wolfgang Richter
2013-04-24 19:20       ` Wolfgang Richter
2013-04-23 18:19   ` Stefan Hajnoczi
2013-04-23 18:21 ` Stefan Hajnoczi
2013-04-23 18:31   ` Wolfgang Richter
2013-04-23 19:11     ` Wolfgang Richter
2013-04-24  8:39       ` Stefan Hajnoczi
2013-04-24 16:05         ` Wolfgang Richter
2013-04-24  9:26     ` Paolo Bonzini
2013-04-24 16:14       ` Wolfgang Richter
     [not found]       ` <CACO=3k4eoT9KwPBgM2eN089=PzzOyBECWgD6MOHz=bzy5EcxAQ@mail.gmail.com>
     [not found]         ` <51780539.1010303@redhat.com>
2013-04-24 16:43           ` Wolfgang Richter

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=20130424083758.GB20971@stefanha-thinkpad.redhat.com \
    --to=stefanha@gmail.com \
    --cc=qemu-devel@nongnu.org \
    --cc=wolf@cs.cmu.edu \
    --cc=wor6c@virginia.edu \
    /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;
as well as URLs for NNTP newsgroup(s).