From: Chris Mason <clm@fb.com>
To: Zhao Lei <zhaolei@cn.fujitsu.com>
Cc: "'btrfs'" <linux-btrfs@vger.kernel.org>,
"'Qu Wenruo'" <quwenruo@cn.fujitsu.com>
Subject: Re: [GIT PULL] Fix for btrfs/070 checksum error
Date: Wed, 29 Jul 2015 10:52:30 -0400 [thread overview]
Message-ID: <20150729145230.GB23543@ret.masoncoding.com> (raw)
In-Reply-To: <07c601d0c9d7$94522f30$bcf68d90$@cn.fujitsu.com>
On Wed, Jul 29, 2015 at 04:21:33PM +0800, Zhao Lei wrote:
> Hi, Chris
>
> > -----Original Message-----
> > From: linux-btrfs-owner@vger.kernel.org
> > [mailto:linux-btrfs-owner@vger.kernel.org] On Behalf Of Qu Wenruo
> > Sent: Tuesday, July 28, 2015 3:11 PM
> > To: Chris Mason; btrfs
> > Subject: Re: [GIT PULL] Fix for btrfs/070 checksum error
> >
> > Chris Mason wrote on 2015/07/23 21:57 -0400:
> > > On Fri, Jul 24, 2015 at 08:29:05AM +0800, Qu Wenruo wrote:
> > >
> > > [ deadlock with the 070 patches ]
> > >
> > >> Thanks Chris
> > >>
> > >> We will investigate it with highest priority.
> > >>
> > >> Thanks,
> > >> Qu
> > >>
> > >
> > > Thanks! I'm doing a few more runs to make sure the lockup is new with
> > > these patches.
> > >
> > > -chris
> > >
> > Hi Chris,
> >
> > I'm very sorry that we are unable to fix the lockup in a short time, so it may not
> > fit in the v4.2 merge window.
> >
> > Please ignore this patchset for now.
> >
>
> Sorry for taking quite a long time for investigate because it is
> randomly happened.
>
> We got reason of process blocking:
> 1: In some case, this patch caused __btrfs_cow_block()->btrfs_reloc_cow_block()
> failed from btrfs_balance operation.(need more investigation)
>
> 2: __btrfs_cow_block()'s error handle code hadn't unlock/free
> new_allocated tree block before return error.
>
> 3: do_relocation(), which is caller of __btrfs_cow_block(), have error handle
> code, but also can't work in this case, because new_allocated eb is not
> returned.
>
> 4: subsequent code in do_relocation() try to lock above eb again,
> and caused dead lock.
Excellent, thanks for tracking this down. I agree investigating #1 is
the top priority, since it's possible the patches are just making it
happen more often.
-chris
prev parent reply other threads:[~2015-07-29 14:52 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-08 3:35 [GIT PULL] Fix for btrfs/070 checksum error Qu Wenruo
2015-07-22 9:28 ` Qu Wenruo
2015-07-22 11:58 ` Chris Mason
2015-07-23 20:21 ` Chris Mason
2015-07-24 0:29 ` Qu Wenruo
2015-07-24 1:57 ` Chris Mason
2015-07-24 2:50 ` Qu Wenruo
2015-07-28 7:10 ` Qu Wenruo
2015-07-29 8:21 ` Zhao Lei
2015-07-29 14:52 ` Chris Mason [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=20150729145230.GB23543@ret.masoncoding.com \
--to=clm@fb.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=quwenruo@cn.fujitsu.com \
--cc=zhaolei@cn.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.