All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Tokarev <mjt@tls.msk.ru>
To: Avi Kivity <avi@redhat.com>
Cc: Bernhard Schmidt <berni@birkenwald.de>, kvm@vger.kernel.org
Subject: Re: linux-aio usable?
Date: Mon, 08 Mar 2010 23:11:06 +0300	[thread overview]
Message-ID: <4B9559DA.8000407@msgid.tls.msk.ru> (raw)
In-Reply-To: <4B94BF05.20609@redhat.com>

Avi Kivity wrote:
> On 03/08/2010 03:46 AM, Bernhard Schmidt wrote:
>> Hi,
>>
>> sorry for this pretty generic question, I did not find any real pros and
>> cons on the net anywhere, but I might just have missed them.
>>
>> In a pure x86_64 environment (~2.6.32 vanilla kernel, 0.12.3 qemu-kvm),
>> is enabling linux-aio in KVM a good idea?
> 
> Yes.

Apparently that does not quite work.  I just re-compiled kvm with
--enable-linux-aio (actually I just installed libaio-dev on debian
and qemu-kvm's configure picked it up automatically), and tried
a guest.  But any I/O fails.

  kvm-0.12.3 ... -drive file=/dev/sda10,if=virtio,cache=none,aio=native

(/dev/sda10 is a (spare) partition on my hard drive I use for testing).
Here's the resulting dmesg in the guest (2.6.32):

 vdb:
end_request: I/O error, dev vdb, sector 0
Buffer I/O error on device vdb, logical block 0
Buffer I/O error on device vdb, logical block 1
Buffer I/O error on device vdb, logical block 2
Buffer I/O error on device vdb, logical block 3
Buffer I/O error on device vdb, logical block 4
Buffer I/O error on device vdb, logical block 5
Buffer I/O error on device vdb, logical block 6
Buffer I/O error on device vdb, logical block 7
end_request: I/O error, dev vdb, sector 0
Buffer I/O error on device vdb, logical block 0
Buffer I/O error on device vdb, logical block 1
end_request: I/O error, dev vdb, sector 0
 unable to read partition table

And any I/O - be it reads of writes - fails.

I see some aio_submit() etc are happening in strace,
but no errors.  Unfortunately my strace does not
decode io_*() routines.

# fgrep io_ trc
...
1227  io_submit(4152147968, 1, {...})   = 1
1226  io_getevents(-142819328, 1, 128, {...}{0, 0}) = 1
1227  io_submit(4152147968, 1, {...})   = 1
1226  io_getevents(-142819328, 1, 128, {...}{0, 0}) = 1
1227  io_submit(4152147968, 1, {...})   = 1
1226  io_getevents(-142819328, 1, 128, {...}{0, 0}) = 1
...

Oh well.... ;)

/mjt

  parent reply	other threads:[~2010-03-08 20:11 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-08  1:46 linux-aio usable? Bernhard Schmidt
2010-03-08  9:10 ` Avi Kivity
2010-03-08  9:48   ` Bernhard Schmidt
2010-03-08  9:48     ` Avi Kivity
2010-03-08 14:25       ` Dustin Kirkland
2010-03-08 14:26         ` Avi Kivity
2010-03-08 16:28           ` Anthony Liguori
2010-03-08 16:36             ` Avi Kivity
2010-03-08 13:00   ` Christoph Hellwig
2010-03-08 20:11   ` Michael Tokarev [this message]
2010-03-08 20:19     ` Michael Tokarev
2010-03-09  9:08       ` Avi Kivity
2010-03-09  9:19         ` Michael Tokarev
2010-03-09 10:05           ` Avi Kivity
2010-03-09 14:12             ` Christoph Hellwig
2010-03-08 21:27   ` Nikola Ciprich
2010-03-08 21:46     ` Brian Jackson
2010-03-09  9:09     ` Avi Kivity

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=4B9559DA.8000407@msgid.tls.msk.ru \
    --to=mjt@tls.msk.ru \
    --cc=avi@redhat.com \
    --cc=berni@birkenwald.de \
    --cc=kvm@vger.kernel.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.