linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <Alexander.Levin@microsoft.com>
To: "Luis R. Rodriguez" <mcgrof@kernel.org>
Cc: Dave Chinner <david@fromorbit.com>,
	Sasha Levin <levinsasha928@gmail.com>,
	"Darrick J. Wong" <darrick.wong@oracle.com>,
	Christoph Hellwig <hch@lst.de>, xfs <linux-xfs@vger.kernel.org>,
	"linux-kernel@vger.kernel.org List"
	<linux-kernel@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Julia Lawall <julia.lawall@lip6.fr>,
	Josh Triplett <josh@joshtriplett.org>,
	Takashi Iwai <tiwai@suse.de>, Michal Hocko <mhocko@kernel.org>,
	Joerg Roedel <joro@8bytes.org>
Subject: Re: [PATCH] xfs: always free inline data before resetting inode fork during ifree
Date: Mon, 2 Apr 2018 00:35:25 +0000	[thread overview]
Message-ID: <20180402003523.GG7561@sasha-vm> (raw)
In-Reply-To: <20180330194946.GF9190@wotan.suse.de>

On Fri, Mar 30, 2018 at 07:49:46PM +0000, Luis R. Rodriguez wrote:
>On Fri, Mar 30, 2018 at 02:47:05AM +0000, Sasha Levin wrote:
>> On Thu, Mar 29, 2018 at 10:05:35AM +1100, Dave Chinner wrote:
>> >On Wed, Mar 28, 2018 at 07:30:06PM +0000, Sasha Levin wrote:
>> >"./check -g auto" runs the full "expected to pass" regression test
>> >suite for all configured test configurations. (i.e. all config
>> >sections listed in the configs/<host>.config file)
>>
>> Great! With information from Darrick and yourself I've modified tests to
>> be more relevant. Right now I run 4 configs for each stable kernel, but
>> can add more or remove any - depends on what helps people analyse the
>> results.
>>
>> This brings me to the sad part of this mail: not a single stable kernel
>> survived a run. Most are paniced, some are hanging,
>
>I expected this. The semantics over -g auto yielding "expected to pass"
>are relative. Perhaps its better described as "should pass"?
>
>> and some were killed
>> because of KASan.
>>
>> All have hit various warnings in fs/iomap.c, and kernels accross several
>> versions hit the BUG at fs/xfs/xfs_message.c:113 (+-1 line)
>>
>> 4.15.12 is hitting a use-after-free in xfs_efi_release().
>> 4.14.29 and 4.9.89 seems to end up with corrupted memory (KASAN
>> warnings) at or before generic/027.
>> And finally, 3.18.101 is pretty unhappy with sleeping functions called
>> from atomic context.
>
>From my limited experience you have no option but to create an expunge list for
>each failure for now, and then pass the expunge lists -- that in essence would
>define the stable baseline and you should expect this to be different per
>kernel release. If you upgrade tooling, it can also change the results, and
>likewise if you upgrade fstests.
>
>If you define an expunge list you can then pass the list with the -E parameter,
>you can for instance categorize then failures by type and use a file for each
>type of failure, whether that's a triage list or a type of common failure.
>Format can be:
>
>test # comments are ignored
>
>Since you may want to database this somehow, perhaps a format that lists
>some tracking for it or other heuristics:
>
>generic/388 # bug#12345 - 1/300 run fails
>
>I'd recommend to just add all failures to one large expunge list for now,
>and later you can split / sort them them as needed.
>
>The idea later is that any failure later would be a regression. What would
>be good is to test a stable kernel prior to the auto-selection and use that
>as baseline, then bump the kernel and ensure no regressions were created.
>
>A dicey corner issue is that of tests which are supposed to "pass" but yet
>can fail every blue moon. For instance I've been running into one-off failures
>with generic/388 -- but only if I run it over 300 times.
>
>As such the baseline IMHO should also track these as just failures, however it
>will be often picked up as a regression first. The only way to rule this out
>is to loop test the same test prior to a kernel update and ensure it wasn't
>a regression -- ie, that it *was* still failing before.

Thanks for the pointers!

>This is why all this work is rather full time'ish. There is no way around it,
>it will take time to establish a baseline from fstests for a filesystem. There
>will also be a lot of odd ins and outs of each filesystem.

Right, but the way I see it, no one actually uses upstream. If anything,
it's a development branch, and the "real" users pick up one of the
stable trees to work with. So while there seems to be a lot of effort
dedicated to new features or fixing upstream bugs, not enough people
care that no one won't see those fixes for a few years.


--
Thanks,
Sasha

  reply	other threads:[~2018-04-02  0:35 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-23  6:01 [PATCH] xfs: always free inline data before resetting inode fork during ifree Darrick J. Wong
2017-11-23  8:14 ` Christoph Hellwig
2018-03-23  1:30 ` Luis R. Rodriguez
2018-03-23  3:41   ` Darrick J. Wong
2018-03-23 17:08     ` Luis R. Rodriguez
2018-03-23 17:26       ` Darrick J. Wong
2018-03-23 18:23         ` Luis R. Rodriguez
2018-03-24  9:06           ` Greg Kroah-Hartman
2018-03-24 17:21             ` Darrick J. Wong
2018-03-26  4:54               ` Sasha Levin
2018-03-26  6:48                 ` Darrick J. Wong
2018-03-26 17:39                 ` Luis R. Rodriguez
2018-03-25 22:33           ` Dave Chinner
2018-03-26 23:54             ` Sasha Levin
2018-03-27  7:06               ` Michal Hocko
2018-03-27 19:54                 ` Luis R. Rodriguez
2018-03-28 13:21                   ` Michal Hocko
2018-03-28 19:33                     ` Sasha Levin
2018-03-29  7:01                       ` Michal Hocko
2018-03-28  1:11                 ` Sasha Levin
2018-03-28 13:20                   ` Michal Hocko
2018-03-28  3:32               ` Dave Chinner
2018-03-28 19:30                 ` Sasha Levin
2018-03-28 19:40                   ` Darrick J. Wong
2018-03-28 23:05                   ` Dave Chinner
2018-03-29 18:12                     ` Luis R. Rodriguez
2018-03-29 18:17                       ` Josef Bacik
2018-03-29 18:36                         ` Sasha Levin
2018-03-30  2:47                     ` Sasha Levin
2018-03-30 19:49                       ` Luis R. Rodriguez
2018-04-02  0:35                         ` Sasha Levin [this message]
2018-03-31 22:02                       ` Dave Chinner
2018-04-02  0:32                         ` Sasha Levin
2018-04-03  1:46                           ` Dave Chinner

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=20180402003523.GG7561@sasha-vm \
    --to=alexander.levin@microsoft.com \
    --cc=darrick.wong@oracle.com \
    --cc=david@fromorbit.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hch@lst.de \
    --cc=joro@8bytes.org \
    --cc=josh@joshtriplett.org \
    --cc=julia.lawall@lip6.fr \
    --cc=levinsasha928@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=mcgrof@kernel.org \
    --cc=mhocko@kernel.org \
    --cc=tiwai@suse.de \
    /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).