lib/list-test: add a test for the 'list' doubly linked list
authorDavid Gow <davidgow@google.com>
Thu, 24 Oct 2019 22:46:31 +0000 (15:46 -0700)
committerShuah Khan <skhan@linuxfoundation.org>
Fri, 1 Nov 2019 17:13:48 +0000 (11:13 -0600)
commitea2dd7c0875ed31955cda7b1b20612c8337192e5
treedbcf68824bc1cd015728bbdd3f4e2803e366ca41
parent1cbeab1b242d16fdb22dc3dab6a7d6afe746ae6d
lib/list-test: add a test for the 'list' doubly linked list

Add a KUnit test for the kernel doubly linked list implementation in
include/linux/list.h

Each test case (list_test_x) is focused on testing the behaviour of the
list function/macro 'x'. None of the tests pass invalid lists to these
macros, and so should behave identically with DEBUG_LIST enabled and
disabled.

Note that, at present, it only tests the list_ types (not the
singly-linked hlist_), and does not yet test all of the
list_for_each_entry* macros (and some related things like
list_prepare_entry).

Ignoring checkpatch.pl spurious errors related to its handling of for_each
and other list macros. checkpatch.pl expects anything with for_each in its
name to be a loop and expects that the open brace is placed on the same
line as for a for loop. In this case, test case naming scheme includes
name of the macro it is testing, which results in the spurious errors.
Commit message updated by Shuah Khan <skhan@linuxfoundation.org>

Signed-off-by: David Gow <davidgow@google.com>
Reviewed-by: Brendan Higgins <brendanhiggins@google.com>
Tested-by: Brendan Higgins <brendanhiggins@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
MAINTAINERS
lib/Kconfig.debug
lib/Makefile
lib/list-test.c [new file with mode: 0644]