From: Avi Kivity <avi@redhat.com>
To: Antoine Martin <antoine@nagafix.co.uk>
Cc: Christoph Hellwig <hch@infradead.org>,
Michael Tokarev <mjt@tls.msk.ru>,
kvm@vger.kernel.org
Subject: Re: raw disks no longer work in latest kvm (kvm-88 was fine)
Date: Sun, 07 Mar 2010 20:47:00 +0200 [thread overview]
Message-ID: <4B93F4A4.9050003@redhat.com> (raw)
In-Reply-To: <4B93E9EE.6020701@nagafix.co.uk>
On 03/07/2010 08:01 PM, Antoine Martin wrote:
> On 03/08/2010 12:30 AM, Avi Kivity wrote:
>> On 03/07/2010 07:21 PM, Christoph Hellwig wrote:
>>> On Sun, Mar 07, 2010 at 07:18:40PM +0200, Avi Kivity wrote:
>>>>> The only things that stands out is this before the "read failed"
>>>>> message:
>>>>> [pid 9098] lseek(12, 0, SEEK_END) = 1321851815424
>>>>> [pid 9121] pread(12, 0x7fa50a0e47d0, 2048, 0) = -1 EINVAL (Invalid
>>>>> argument)
>>>>>
>>>> The buffer is unaligned here, yet the file was opened with O_DIRECT
>>>> (cache=none). This is strange, since alignment is not related to disk
>>>> size.
> Yes cache=none: "-drive file=./vm/var_fs,if=virtio,cache=none"
>
> Side question: this is the right thing to do for raw partitions, right?
The rightest.
>>> The other interesting thing is that it's using pread - which means
>>> it's a too old kernel to use preadv and thus a not very well tested
>>> codepath with current qemu.
> Too old?, I am confused: both host and guest kernels are 2.6.33!
> I built KVM against the 2.6.30 headers though.
You need to build qemu against the 2.6.33 headers ('make
headers-install'). But after we fix this, please.
>>
>> It may also be that glibc is emulating preadv, incorrectly.
> Not sure how to do that.
>>
>> Antoine, can you check this? ltrace may help,
> This the only part that looked slightly relevant:
> [pid 26883] __xstat64(1, "./vm/media_fs", 0x7fff92e40500) = 0
> [pid 26883] malloc(48) = 0x2a38d60
> [pid 26883] memset(0x2a38d60, '\000', 48) = 0x2a38d60
> [pid 26883] open64("./vm/media_fs", 540674, 00) = 12
> [pid 26883] posix_memalign(0x7fff92e40560, 512, 16384, -1, 48) = 0
> [pid 26883] lseek64(12, 0, 2, 0x7f404f2f3e60, 4) = 0x133c4820600
Where's pread/preadv? Did you use -f?
>
>> or run 'strings libc.so | grep pread'.
>>
> strings /lib/libc.so.6 | grep pread
> preadv
> preadv64
> pread
> __pread64_chk
> __pread64
> __pread_chk
>
So it does seem glibc emulates preadv.
Perhaps https://bugzilla.redhat.com/show_bug.cgi?id=563103 ?
--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
next prev parent reply other threads:[~2010-03-07 18:47 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-06 20:48 raw disks no longer work in latest kvm (kvm-88 was fine) Antoine Martin
2010-03-06 21:28 ` Michael Tokarev
2010-03-07 4:14 ` Antoine Martin
2010-03-07 9:32 ` Michael Tokarev
2010-03-07 10:00 ` Christoph Hellwig
2010-03-07 13:12 ` Antoine Martin
2010-03-07 13:52 ` Antoine Martin
2010-03-07 15:15 ` Michael Tokarev
2010-03-07 17:11 ` Antoine Martin
2010-03-07 17:18 ` Avi Kivity
2010-03-07 17:21 ` Christoph Hellwig
2010-03-07 17:30 ` Avi Kivity
2010-03-07 17:34 ` Christoph Hellwig
2010-03-07 18:43 ` raw disks no longer work in latest kvm (kvm-88 was fine) [SOLVED] Antoine Martin
2010-03-07 18:55 ` Avi Kivity
2010-03-07 18:01 ` raw disks no longer work in latest kvm (kvm-88 was fine) Antoine Martin
2010-03-07 18:47 ` Avi Kivity [this message]
2010-03-07 19:07 ` Antoine Martin
2010-03-07 19:10 ` Avi Kivity
2010-03-07 19:13 ` Antoine Martin
2010-03-07 19:17 ` Avi Kivity
2010-03-07 19:25 ` Antoine Martin
2010-03-07 19:35 ` Avi Kivity
2010-03-13 9:51 ` Antoine Martin
2010-03-14 7:34 ` Avi Kivity
2010-04-08 22:00 ` Antoine Martin
2010-05-22 10:44 ` Antoine Martin
2010-05-22 11:17 ` Michael Tokarev
2010-05-22 11:35 ` Antoine Martin
2010-05-23 8:53 ` Antoine Martin
2010-05-23 11:57 ` Avi Kivity
2010-05-23 14:07 ` Antoine Martin
2010-05-23 14:18 ` Avi Kivity
2010-05-23 14:43 ` Antoine Martin
2010-05-23 14:53 ` Antoine Martin
2010-05-23 14:56 ` Avi Kivity
2010-05-23 15:06 ` Antoine Martin
2010-05-23 15:12 ` Avi Kivity
2010-05-23 16:18 ` Antoine Martin
2010-05-23 17:47 ` Stefan Hajnoczi
2010-05-29 9:42 ` Antoine Martin
2010-05-29 9:55 ` Stefan Hajnoczi
2010-05-29 10:34 ` Christoph Hellwig
2010-05-29 11:06 ` Stefan Hajnoczi
2010-05-29 10:34 ` Christoph Hellwig
2010-03-07 19:09 ` Asdo
2010-03-07 19:11 ` Antoine Martin
2010-03-07 19:12 ` Avi Kivity
2010-03-07 16:21 ` Avi Kivity
2010-03-08 16:45 ` Anthony Liguori
2010-03-07 9:36 ` Gleb Natapov
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=4B93F4A4.9050003@redhat.com \
--to=avi@redhat.com \
--cc=antoine@nagafix.co.uk \
--cc=hch@infradead.org \
--cc=kvm@vger.kernel.org \
--cc=mjt@tls.msk.ru \
/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.