From: santosh shilimkar <santosh.shilimkar@oracle.com>
To: Ming Lei <ming.lei@canonical.com>
Cc: Jens Axboe <axboe@fb.com>, Christoph Hellwig <hch@lst.de>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [Regression] Guest fs corruption with 'block: loop: improve performance via blk-mq'
Date: Mon, 18 May 2015 11:07:50 -0700 [thread overview]
Message-ID: <555A2A76.5050701@oracle.com> (raw)
In-Reply-To: <CACVXFVOd9gOte-9t1fgdHq_GYHUHQ8kkBXz2Dzz-J3a7bv50+A@mail.gmail.com>
On 5/17/2015 6:26 PM, Ming Lei wrote:
> Hi Santosh,
>
> Thanks for your report!
>
> On Sun, May 17, 2015 at 4:13 AM, santosh shilimkar
> <santosh.shilimkar@oracle.com> wrote:
>> Hi Ming Lei, Jens,
>>
>> While doing few tests with recent kernels with Xen Server,
>> we saw guests(DOMU) disk image getting corrupted while booting it.
>> Strangely the issue is seen so far only with disk image over ocfs2
>> volume. If the same image kept on the EXT3/4 drive, no corruption
>> is observed. The issue is easily reproducible. You see the flurry
>> of errors while guest is mounting the file systems.
>>
>> After doing some debug and bisects, we zeroed down the issue with
>> commit "b5dd2f6 block: loop: improve performance via blk-mq". With
>> that commit reverted the corruption goes away.
>>
>> Some more details on the test setup:
>> 1. OVM(XEN) Server kernel(DOM0) upgraded to more recent kernel
>> which includes commit b5dd2f6. Boot the Server.
>> 2. On DOM0 file system create a ocfs2 volume
>> 3. Keep the Guest(VM) disk image on ocfs2 volume.
>> 4. Boot guest image. (xm create vm.cfg)
>
> I am not familiar with xen, so is the image accessed via
> loop block inside of guest VM? Is he loop block created
> in DOM0 or guest VM?
>
Guest. The Guest disk image is represented as a file by loop
device.
>> 5. Observe the VM boot console log. VM itself use the EXT3 fs.
>> You will see errors like below and after this boot, that file
>> system/disk-image gets corrupted and mostly won't boot next time.
>
> OK, that means the image is corrupted by VM booting.
>
Right
[...]
>>
>> From the debug of the actual data on the disk vs what is read by
>> the guest VM, we suspect the *reads* are actually not going all
>> the way to disk and possibly returning the wrong data. Because
>> the actual data on ocfs2 volume at those locations seems
>> to be non-zero where as the guest seems to be read it as zero.
>
> Two big changes in the patchset are: 1) use blk-mq request based IO;
> 2) submit I/O concurrently(write vs. write is still serialized)
>
> Could you apply the patch in below link to see if it can fix the issue?
> BTW, this patch only removes concurrent submission.
>
> http://marc.info/?t=143093223200004&r=1&w=2
>
What kernel is this patch generated against ? It doesn't apply against
v4.0. Does this need the AIO/DIO conversion patches as well. Do you
have the dependent patch-set I can't apply it against v4.0.
Regards,
Santosh
next prev parent reply other threads:[~2015-05-18 18:08 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-16 20:13 [Regression] Guest fs corruption with 'block: loop: improve performance via blk-mq' santosh shilimkar
2015-05-18 1:26 ` Ming Lei
2015-05-18 18:07 ` santosh shilimkar [this message]
2015-05-18 23:13 ` santosh shilimkar
2015-05-18 23:25 ` [Ocfs2-devel] " Ming Lei
2015-05-18 23:25 ` Ming Lei
2015-05-18 23:38 ` [Ocfs2-devel] " santosh shilimkar
2015-05-18 23:38 ` santosh shilimkar
2015-05-19 0:47 ` [Ocfs2-devel] " Ming Lei
2015-05-19 0:47 ` Ming Lei
2015-05-19 19:59 ` [Ocfs2-devel] " Jens Axboe
2015-05-19 19:59 ` Jens Axboe
2015-05-19 21:52 ` santosh shilimkar
2015-05-19 21:52 ` santosh shilimkar
2015-05-19 21:52 ` [Ocfs2-devel] " santosh shilimkar
2015-05-18 23:14 ` Ming Lei
2015-05-18 23:18 ` santosh shilimkar
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=555A2A76.5050701@oracle.com \
--to=santosh.shilimkar@oracle.com \
--cc=axboe@fb.com \
--cc=hch@lst.de \
--cc=linux-kernel@vger.kernel.org \
--cc=ming.lei@canonical.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.