All of lore.kernel.org
 help / color / mirror / Atom feed
From: Josef Bacik <jbacik@fusionio.com>
To: Alexandre Oliva <oliva@gnu.org>
Cc: "linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>
Subject: Re: clear chunk_alloc flag on retryable failure
Date: Fri, 22 Feb 2013 10:54:40 -0500	[thread overview]
Message-ID: <20130222155440.GD2062@localhost.localdomain> (raw)
In-Reply-To: <orvc9lqsgt.fsf@livre.home>

On Thu, Feb 21, 2013 at 02:15:14PM -0700, Alexandre Oliva wrote:
> I've experienced filesystem freezes with permanent spikes in the active
> process count for quite a while, particularly on filesystems whose
> available raw space has already been fully allocated to chunks.
> 
> While looking into this, I found a pretty obvious error in
> do_chunk_alloc: it sets space_info->chunk_alloc, but if
> btrfs_alloc_chunk returns an error other than ENOSPC, it returns leaving
> that flag set, which causes any other threads waiting for
> space_info->chunk_alloc to become zero to spin indefinitely.
> 
> I haven't double-checked that this patch fixes the failure I've observed
> fully (it's not exactly trivial to trigger), but it surely is a bug and
> the fix is trivial, so...  Please put it in :-)

Yup putting in btrfs-next, thanks.

Josef

      parent reply	other threads:[~2013-02-22 15:54 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-21 21:15 clear chunk_alloc flag on retryable failure Alexandre Oliva
2013-02-22  1:15 ` collapse concurrent forced allocations (was: Re: clear chunk_alloc flag on retryable failure) Alexandre Oliva
2013-02-22 15:54   ` Josef Bacik
2013-02-23 14:18     ` collapse concurrent forced allocations Alexandre Oliva
2013-03-04  0:54       ` Alexandre Oliva
2013-02-22 15:54 ` Josef Bacik [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=20130222155440.GD2062@localhost.localdomain \
    --to=jbacik@fusionio.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=oliva@gnu.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 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.