Re: [PATCH v2 2/3] check: Add -q <n> option to support unconditional looping.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Theodore Ts'o" <tytso@xxxxxxx> writes:

> On Thu, Apr 03, 2025 at 08:58:19AM +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>.

First things first -q is similar to -L except that it loops
unconditionaly even when there is no failure. (Bad choice of -q naming,
since -l was in use for something else)

>
> I'm wondering if we need to keep the current behavior of -I/-i.  The
> primary difference between them and how your proposed -q works is that
> instead of iterating over the section, your proposed option iterates
> over each test.  So for example, if a section contains generic/001 and
> generic/002, iterating using -i 3 will do this:
>
> generic/001
> generic/002
> generic/001
> generic/002
> generic/001
> generic/002
>
> While generic -q 3 would do this instead:
>
> generic/001
> generic/001
> generic/001
> generic/002
> generic/002
> generic/002
>

Yes, that's correct. Since it iterates at the top level, it also sources
some common configs, re-formats and does a mount re-cycle of the scratch
device during each iteration.

This mostly should not matter, since each test can anyways re-format the
scratch device when it needs to mount/test it.

>
> At least for all of the use cases that I can think of where I might
> use -i 3, -q 3 is strictly better.  So instead of adding more options
> which change how we might do iterations, could we perhaps just replace
> -i with your new -q?  And change -I so that it also works like -q,
> except if any test fails, that we stop?

I agree that in this case it make more sense to replace the underlying
functionality of -i/-I with what -q <n> is doing here. But maybe others
can comment, if anyone has any objection on this.

-ritesh




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux