[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250110160845.GA1514771@mit.edu>
Date: Fri, 10 Jan 2025 11:08:45 -0500
From: "Theodore Ts'o" <tytso@....edu>
To: "Nirjhar Roy (IBM)" <nirjhar.roy.lists@...il.com>
Cc: fstests@...r.kernel.org, linux-ext4@...r.kernel.org,
linux-xfs@...r.kernel.org, ritesh.list@...il.com,
ojaswin@...ux.ibm.com, djwong@...nel.org, zlang@...nel.org
Subject: Re: [RFC 2/5] check: Add -q <n> option to support unconditional
looping.
On Fri, Jan 10, 2025 at 09:10:26AM +0000, Nirjhar Roy (IBM) wrote:
> This patch adds -q <n> option through which one can run a given test <n>
> times unconditionally. It also prints pass/fail metrics at the end.
>
> The advantage of this over -L <n> and -i/-I <n> is that:
> a. -L <n> will not re-run a flakey test if the test passes for the first time.
> b. -I/-i <n> sets up devices during each iteration and hence slower.
> Note -q <n> will override -L <n>.
This is great! It's something that I've wanted for a while, since at
the moment I implement {gce,kvm}-xfstests -C 10 is to run check ten
times, and doing something which does the looping inside check instead
of outside will be much more efficient.
One other thing that has been on my todo list to update, but which
perhaps you might be willing to do while you are doing work in this
area (nudge, nudge :-), is an optional mode which interates but which
stops once a test fails. This is essentially the reverse of -L, and
the reason why it's useful is when trying to bisect a flakey test,
which sometimes might only be failing 2-5% of the time, require
running a test 30-50 times. But the moment the test fails, we don't
need to run the test any more, so this would speed up bisection tests
which today I do via:
gce-xfstests ltm --repo linux.git --bisect-good v6.12 --bisect-bad \
v6.13-rc1 -C 50 -c ext4/inline_data generic/273
Because of this, I wonder if we should have one option to specify the
number of interations, and then a different option which specifies the
iteration mode, which might be "unconditional", "until first failure",
"only if the test initially fails", etc, instead of separate options
for -q, -L, etc.
Thanks,
- Ted
Powered by blists - more mailing lists