From: Miao Xie <miaox@cn.fujitsu.com>
To: Chris Mason <chris.mason@oracle.com>
Cc: Josef Bacik <josef@redhat.com>,
Linux Btrfs <linux-btrfs@vger.kernel.org>,
Ito <t-itoh@jp.fujitsu.com>
Subject: Re: [PATCH -V2 3/3] btrfs: fix panic caused by direct IO
Date: Mon, 29 Nov 2010 11:58:57 +0800 [thread overview]
Message-ID: <4CF32501.2070100@cn.fujitsu.com> (raw)
In-Reply-To: <1290995089-sup-4112@think>
Hi, Chris
On Sun, 28 Nov 2010 20:55:28 -0500, Chris Mason wrote:
> Excerpts from Chris Mason's message of 2010-11-21 22:18:54 -0500:
>> Great, I'll test this and the others overnight. Thanks!
>>
>> -chris
>>
>> Excerpts from Miao Xie's message of 2010-11-21 22:04:43 -0500:
>>> V1->V2 Changes:
>>> change the fix method. we split bios in btrfs_submit_direct() to fix this
>>> problem now.
>>>
>>> btrfs paniced when we write>64KB data by direct IO at one time.
>>>
>>> Reproduce steps:
>>> # mkfs.btrfs /dev/sda5 /dev/sda6
>>> # mount /dev/sda5 /mnt
>>> # dd if=/dev/zero of=/mnt/tmpfile bs=100K count=1 oflag=direct
>
> Thanks again for coding this up, the implementation looks good to me.
>
> This easily passed the basic tests, but I ran into trouble when I tried
> using it to server my virtual machines. The problem is that we create
> ordered extents in the DIO get_blocks call, but the generic DIO code
> may create a single bio to span more than one ordered extent by merging
> adjacent ranges. I've fixed it here by walking forward through the
> ordered extents in the end_io processing.
>
> I've pushed these changes out to the next-rc branch of the btrfs
> unstable tree, and the last commit is here:
>
> Could you please take a look and verify it still works with your tests?
>
> http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-unstable.git;a=commit;h=163cf09c2a0ee5cac6285f9347975bd1e97725da
I have tested it, and It works well.
Thanks
Miao
>
> -chris
>
prev parent reply other threads:[~2010-11-29 3:58 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-22 3:04 [PATCH -V2 3/3] btrfs: fix panic caused by direct IO Miao Xie
2010-11-22 3:18 ` Chris Mason
2010-11-29 1:55 ` Chris Mason
2010-11-29 2:08 ` Miao Xie
2010-11-29 3:58 ` Miao Xie [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=4CF32501.2070100@cn.fujitsu.com \
--to=miaox@cn.fujitsu.com \
--cc=chris.mason@oracle.com \
--cc=josef@redhat.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=t-itoh@jp.fujitsu.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.