From: "Michael L. Semon" <mlsemon35@gmail.com>
To: Dave Chinner <david@fromorbit.com>, Mark Tinguely <tinguely@sgi.com>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH] xfs: xfs_alloc_fix_minleft can underflow near ENOSPC
Date: Tue, 17 Feb 2015 10:36:54 -0500 [thread overview]
Message-ID: <54E36016.20908@gmail.com> (raw)
In-Reply-To: <20150216231716.GB4251@dastard>
On 02/16/15 18:17, Dave Chinner wrote:
> On Mon, Feb 16, 2015 at 11:35:50AM -0600, Mark Tinguely wrote:
>> Thanks Michael, you don't need to hold your test box for me. I do
>> have a way to recreate these ABBA AGF buffer allocation deadlocks
>> and understand the whys and hows very well. I don't have a community
>> way to make a xfstest for it but I think your test is getting close.
>
> If you know what is causing them, then please explain how it occurs
> and how you think it needs to be fixed. Just telling us that you know
> something that we don't doesn't help us solve the problem. :(
>
> In general, the use of the args->firstblock is supposed to avoid the
> ABBA locking order issues with multiple allocations in the one
> transaction by preventing AG selection loops from looping back into
> AGs with a lower index than the first allocation that was made.
>
> So if you are seeing deadlocks, then it may be that we aren't
> following this constraint correctly in all locations....
>
> Cheers,
>
> Dave.
Will this be a classic deadlock that will cause problems when trying to
kill processes and unmount filesystems? If so, then I was unable to use
generic/224 to trigger a deadlock. If not, then I'll need a better way
of looking at the problem.
The longest generic/224 loop lasted only 3-1/2 hours, though. The
fstests enospc group was given some consideration as well.
If this issue does not require a lot of files, I might see if fio can
be helpful here.
Hints on whether to us a fast kernel or a miserably slow kernel would
be rather helpful.
My test setup is torn because most of the recent warning messages are
coming from the CONFIG_XFS_WARN kernels. The i686 Pentium 4 box will be
left that way. However, the Core 2 box was configured per
Documentation/SubmitChecklist from the kernel source, adding debug XFS
and locktorture. The locktorture settings are in flux, exercising
spinlocks at present. There was a mild halt in I/O for generic/017, but
that was XFS waiting on kmem-something waiting on a kmemleak function.
kmemleak was removed, and I'll continue from there.
Thanks!
Michael
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2015-02-17 15:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-12 23:14 [PATCH] xfs: xfs_alloc_fix_minleft can underflow near ENOSPC Dave Chinner
2015-02-13 23:40 ` Mark Tinguely
2015-02-14 23:29 ` Dave Chinner
2015-02-16 3:39 ` Michael L. Semon
2015-02-16 17:35 ` Mark Tinguely
2015-02-16 23:17 ` Dave Chinner
2015-02-17 15:36 ` Michael L. Semon [this message]
2015-02-18 0:48 ` Dave Chinner
2015-02-18 15:32 ` Michael L. Semon
2015-02-16 13:41 ` Brian Foster
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=54E36016.20908@gmail.com \
--to=mlsemon35@gmail.com \
--cc=david@fromorbit.com \
--cc=tinguely@sgi.com \
--cc=xfs@oss.sgi.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.