26 Jun, 2021

1 commit

  • Functionally, this just means that the test output will be slightly
    changed and it'll now depend on CONFIG_KUNIT=y/m.

    It'll still run at boot time and can still be built as a loadable
    module.

    There was a pre-existing patch to convert this test that I found later,
    here [1]. Compared to [1], this patch doesn't rename files and uses
    KUnit features more heavily (i.e. does more than converting pr_err()
    calls to KUNIT_FAIL()).

    What this conversion gives us:
    * a shorter test thanks to KUnit's macros
    * a way to run this a bit more easily via kunit.py (and
    CONFIG_KUNIT_ALL_TESTS=y) [2]
    * a structured way of reporting pass/fail
    * uses kunit-managed allocations to avoid the risk of memory leaks
    * more descriptive error messages:
    * i.e. it prints out which fields are invalid, what the expected
    values are, etc.

    What this conversion does not do:
    * change the name of the file (and thus the name of the module)
    * change the name of the config option

    Leaving these as-is for now to minimize the impact to people wanting to
    run this test. IMO, that concern trumps following KUnit's style guide
    for both names, at least for now.

    [1] https://lore.kernel.org/linux-kselftest/20201015014616.309000-1-vitor@massaru.org/
    [2] Can be run via
    $ ./tools/testing/kunit/kunit.py run --kunitconfig /dev/stdin <
    Tested-by: David Gow
    Acked-by: Brendan Higgins
    Signed-off-by: Shuah Khan

    Daniel Latypov
     

09 Apr, 2021

1 commit

  • list_sort() internally casts the comparison function passed to it
    to a different type with constant struct list_head pointers, and
    uses this pointer to call the functions, which trips indirect call
    Control-Flow Integrity (CFI) checking.

    Instead of removing the consts, this change defines the
    list_cmp_func_t type and changes the comparison function types of
    all list_sort() callers to use const pointers, thus avoiding type
    mismatches.

    Suggested-by: Nick Desaulniers
    Signed-off-by: Sami Tolvanen
    Reviewed-by: Nick Desaulniers
    Reviewed-by: Christoph Hellwig
    Reviewed-by: Kees Cook
    Tested-by: Nick Desaulniers
    Tested-by: Nathan Chancellor
    Signed-off-by: Kees Cook
    Link: https://lore.kernel.org/r/20210408182843.1754385-10-samitolvanen@google.com

    Sami Tolvanen
     

21 May, 2019

1 commit

  • Add SPDX license identifiers to all files which:

    - Have no license information of any form

    - Have MODULE_LICENCE("GPL*") inside which was used in the initial
    scan/conversion to ignore the file

    These files fall under the project license, GPL v2 only. The resulting SPDX
    license identifier is:

    GPL-2.0-only

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

18 Nov, 2017

1 commit


09 May, 2017

1 commit

  • Extract the linked list sorting test code into its own source file, to
    allow to compile it either to a loadable module, or builtin into the
    kernel.

    Link: http://lkml.kernel.org/r/1488287219-15832-4-git-send-email-geert@linux-m68k.org
    Signed-off-by: Geert Uytterhoeven
    Reviewed-by: Andy Shevchenko
    Cc: Arnd Bergmann
    Cc: Paul Gortmaker
    Cc: Shuah Khan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven