From: Jack Wang <xjtuwjp@gmail.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: Kevin Wolf <kwolf@redhat.com>, qemu-devel <qemu-devel@nongnu.org>,
Stefan Hajnoczi <stefanha@redhat.com>,
Alexey Zaytsev <alexey.zaytsev@gmail.com>
Subject: Re: [Qemu-devel] [RFC] block io lost in the guest , possible related to qemu?
Date: Wed, 30 Oct 2013 11:55:20 +0100 [thread overview]
Message-ID: <5270E598.9040200@gmail.com> (raw)
In-Reply-To: <20131030095018.GC11994@stefanha-thinkpad.redhat.com>
On 10/30/2013 10:50 AM, Stefan Hajnoczi wrote:
> On Fri, Oct 25, 2013 at 05:01:54PM +0200, Jack Wang wrote:
>> We've seen guest block io lost in a VM.any response will be helpful
>>
>> environment is:
>> guest os: Ubuntu 1304
>> running busy database workload with xfs on a disk export with virtio-blk
>>
>> the exported vdb has very high infight io over 300. Some times later a
>> lot io process in D state, looks a lot requests is lost in below storage
>> stack.
>
> Is the image file on a local file system or are you using a network
> storage system (e.g. NFS, Gluster, Ceph, Sheepdog)?
>
> If you run "vmstat 5" inside the guest, do you see "bi"/"bo" block I/O
> activity? If that number is very low or zero then there may be a
> starvation problem. If that number is reasonable then the workload is
> simply bottlenecked on disk I/O.
>
> virtio-blk only has 128 descriptors available so it's not possible to
> have 300 requests pending at the virtio-blk layer.
>
> If you suspect QEMU, try building qemu.git/master from source in case
> the bug has already been fixed.
>
> If you want to trace I/O requests, you might find this blog post on
> writing trace analysis scripts useful:
> http://blog.vmsplice.net/2011/03/how-to-write-trace-analysis-scripts-for.html
>
> Stefan
>
Thanks Stefan for your valuable input.
The image is on device exported with InfiniBand srp/srpt.
Will follow your suggestions to do further investigation.
The 300 infight ios I memtioned is from the /proc/diskstats Field 9 --
# of I/Os currently in progress.
Jack
prev parent reply other threads:[~2013-10-30 10:55 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-25 15:01 [Qemu-devel] [RFC] block io lost in the guest , possible related to qemu? Jack Wang
2013-10-28 9:15 ` Jack Wang
2013-10-28 9:54 ` Alexey Zaytsev
2013-10-28 10:13 ` Jack Wang
2013-10-30 9:50 ` Stefan Hajnoczi
2013-10-30 10:55 ` Jack Wang [this message]
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=5270E598.9040200@gmail.com \
--to=xjtuwjp@gmail.com \
--cc=alexey.zaytsev@gmail.com \
--cc=kwolf@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=stefanha@redhat.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 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.