lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 31 Jul 2022 19:11:34 -0300
From:   Maíra Canal <mairacanal@...eup.net>
To:     Sander Vanheule <sander@...nheule.net>,
        linux-kernel@...r.kernel.org,
        Andrew Morton <akpm@...ux-foundation.org>
Cc:     Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
        Brendan Higgins <brendanhiggins@...gle.com>,
        Dave Hansen <dave.hansen@...ux.intel.com>,
        David Gow <davidgow@...gle.com>,
        Borislav Petkov <bp@...en8.de>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        "H . Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...hat.com>,
        Marco Elver <elver@...gle.com>,
        Peter Zijlstra <peterz@...radead.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Valentin Schneider <vschneid@...hat.com>,
        Yury Norov <yury.norov@...il.com>
Subject: Re: [PATCH v5 4/5] lib/test: introduce cpumask KUnit test suite



On 7/31/22 12:42, Sander Vanheule wrote:
> On Sun, 2022-07-31 at 12:23 -0300, Maíra Canal wrote:
>> Hi Sander
>>
>> On 7/29/22 04:01, Sander Vanheule wrote:
>>> Add a basic suite of tests for cpumask, providing some tests for empty and
>>> completely filled cpumasks.
>>>
>>> Signed-off-by: Sander Vanheule <sander@...nheule.net>
>>> Reviewed-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
>>> Suggested-by: Yury Norov <yury.norov@...il.com>
>>> Cc: Borislav Petkov <bp@...en8.de>
>>> Cc: Dave Hansen <dave.hansen@...ux.intel.com>
>>> Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
>>> Cc: "H. Peter Anvin" <hpa@...or.com>
>>> Cc: Ingo Molnar <mingo@...hat.com>
>>> Cc: Marco Elver <elver@...gle.com>
>>> Cc: Peter Zijlstra <peterz@...radead.org>
>>> Cc: Thomas Gleixner <tglx@...utronix.de>
>>> Cc: Valentin Schneider <vschneid@...hat.com>
>>> Cc: Brendan Higgins <brendanhiggins@...gle.com>
>>> Cc: David Gow <davidgow@...gle.com>
>>> Cc: Maíra Canal <mairacanal@...eup.net>
>>> ---
>>> Changes since v4:
>>> - Belated addition of Yury's Suggested-by:
>>> - Follow KUnit style more closely
>>> - Drop full check on cpu_possible_mask
>>> - Update last check on cpu_possible_mask
>>> - Log masks when starting test
>>> - Update commit message 
>>>   
>>> Changes since v3:
>>> - Test for_each_cpu*() over empty mask and cpu_possible_mask
>>> - Add Andy's Reviewed-by
>>> - Use num_{online,present,possible}_cpus() for builtin masks
>>> - Guard against CPU hotplugging during test for dynamic builtin CPU masks
>>>  
>>> Changes since v2:
>>> - Rework for_each_* test macros, as suggested by Yury
>>>
>>> Changes since v1:
>>> - New patch
>>>
>>>  lib/Kconfig.debug  |  12 ++++
>>>  lib/Makefile       |   1 +
>>>  lib/cpumask_test.c | 147 +++++++++++++++++++++++++++++++++++++++++++++
>>>  3 files changed, 160 insertions(+)
>>>  create mode 100644 lib/cpumask_test.c
>>>
>>> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
>>> index 2e24db4bff19..e85e74646178 100644
>>> --- a/lib/Kconfig.debug
>>> +++ b/lib/Kconfig.debug
>>> @@ -2021,6 +2021,18 @@ config LKDTM
>>>         Documentation on how to use the module can be found in
>>>         Documentation/fault-injection/provoke-crashes.rst
>>>  
>>> +config CPUMASK_KUNIT_TEST
>>> +       tristate "KUnit test for cpumask" if !KUNIT_ALL_TESTS
>>> +       depends on KUNIT
>>> +       default KUNIT_ALL_TESTS
>>> +       help
>>> +         Enable to turn on cpumask tests, running at boot or module load
>>> time.
>>> +
>>> +         For more information on KUnit and unit tests in general, please
>>> refer
>>> +         to the KUnit documentation in Documentation/dev-tools/kunit/.
>>> +
>>> +         If unsure, say N.
>>> +
>>>  config TEST_LIST_SORT
>>>         tristate "Linked list sorting test" if !KUNIT_ALL_TESTS
>>>         depends on KUNIT
>>> diff --git a/lib/Makefile b/lib/Makefile
>>> index bcc7e8ea0cde..9f9db1376538 100644
>>> --- a/lib/Makefile
>>> +++ b/lib/Makefile
>>> @@ -59,6 +59,7 @@ obj-$(CONFIG_TEST_BPF) += test_bpf.o
>>>  obj-$(CONFIG_TEST_FIRMWARE) += test_firmware.o
>>>  obj-$(CONFIG_TEST_BITOPS) += test_bitops.o
>>>  CFLAGS_test_bitops.o += -Werror
>>> +obj-$(CONFIG_CPUMASK_KUNIT_TEST) += cpumask_test.o
>>>  obj-$(CONFIG_TEST_SYSCTL) += test_sysctl.o
>>>  obj-$(CONFIG_TEST_SIPHASH) += test_siphash.o
>>>  obj-$(CONFIG_HASH_KUNIT_TEST) += test_hash.o
>>> diff --git a/lib/cpumask_test.c b/lib/cpumask_test.c
>>> new file mode 100644
>>> index 000000000000..0f8059a5e93b
>>> --- /dev/null
>>> +++ b/lib/cpumask_test.c
>>
>> In order to make the tests at lib/ with more compliant naming, it would
>> make more sense to name it test_cpumask.c.
> 
> That's what I had originally, exactly because I copied the naming from other
> files in lib/. That didn't match the style guide [1] which proposes the _test.c
> or _kunit.c suffix.

My mistake!

> 
> Most files in lib/ use the test_ prefix (45), but some use the  _test.c suffix
> (4), or _kunit.c suffix (6). Of the "test_" ones, only 8 are actually KUnit test
> suites. I personally think the style guide makes a good argument to use a
> suffix, as that clearly places the test suite next to the relevant file in an
> alphabetic listing.
> 
> Based on the above, would you agree with using "cpumask_kunit.c" as the
> filename? That distinguishes it from the non-KUnit test files, and follows the
> style guide.

I believe this would be the best option as well, as there is many
different types of tests in this folder. Thank you for noticing this!

Best Regards,
- Maíra Canal

> 
> [1] https://docs.kernel.org/dev-tools/kunit/style.html#test-file-and-module-names
> 
>>
>> Thank you for the respin to the series! All tests are passing now.
>>
>> Tested-by: Maíra Canal <mairacanal@...eup.net>
> 
> Thank you for testing!
> 
> Best,
> Sander

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ