From: Liu Bo <bo.li.liu@oracle.com>
To: Josef Bacik <jbacik@fusionio.com>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] Btrfs: limit delalloc pages outside of find_delalloc_range
Date: Wed, 9 Oct 2013 21:07:13 +0800 [thread overview]
Message-ID: <20131009130711.GB13983@localhost.localdomain> (raw)
In-Reply-To: <20131009125712.GE16461@localhost.localdomain>
On Wed, Oct 09, 2013 at 08:57:12AM -0400, Josef Bacik wrote:
> On Wed, Oct 09, 2013 at 06:07:20PM +0800, Liu Bo wrote:
> > On Tue, Oct 08, 2013 at 01:31:57PM -0400, Josef Bacik wrote:
> > > Liu fixed part of this problem and unfortunately I steered him in slightly the
> > > wrong direction and so didn't completely fix the problem. The problem is we
> > > limit the size of the delalloc range we are looking for to max bytes and then we
> > > try to lock that range. If we fail to lock the pages in that range we will
> > > shrink the max bytes to a single page and re loop. However if our first page is
> > > inside of the delalloc range then we will end up limiting the end of the range
> > > to a period before our first page. This is illustrated below
> > >
> > > [0 -------- delalloc range --------- 256mb]
> > > [page]
> > >
> > > So find_delalloc_range will return with delalloc_start as 0 and end as 128mb,
> > > and then we will notice that delalloc_start < *start and adjust it up, but not
> > > adjust delalloc_end up, so things go sideways. To fix this we need to not limit
> >
> > This makes me more confused...
> > so do you mean that 'delalloc_end < delalloc_start' leads to the not locked pages?
> >
>
> No, it leads to an infinite loop, I still have no idea how that guy was seeing
> unlocked pages with you patch :(. Thanks,
Oh infinite loop yah, that makes sense :)
-liubo
prev parent reply other threads:[~2013-10-09 13:07 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-08 17:31 [PATCH] Btrfs: limit delalloc pages outside of find_delalloc_range Josef Bacik
2013-10-09 10:07 ` Liu Bo
2013-10-09 12:57 ` Josef Bacik
2013-10-09 13:07 ` Liu Bo [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=20131009130711.GB13983@localhost.localdomain \
--to=bo.li.liu@oracle.com \
--cc=jbacik@fusionio.com \
--cc=linux-btrfs@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).