On 9/22/2024 8:05 AM, Guenter Roeck wrote:
> This reverts commit e620799c414a035dea1208bcb51c869744931dbb.
>
> The commit introduces unit test failures.
>
> Expected cur == &entries[i], but
> cur == 0000037fffadfd80
> &entries[i] == 0000037fffadfd60
> # list_test_list_cut_position: pass:0 fail:1 skip:0 total:1
> not ok 21 list_test_list_cut_position
> # list_test_list_cut_before: EXPECTATION FAILED at lib/list-test.c:444
> Expected cur == &entries[i], but
> cur == 0000037fffa9fd70
> &entries[i] == 0000037fffa9fd60
> # list_test_list_cut_before: EXPECTATION FAILED at lib/list-test.c:444
> Expected cur == &entries[i], but
> cur == 0000037fffa9fd80
> &entries[i] == 0000037fffa9fd70
>
> Revert it.
>
> Fixes: e620799c414a ("list: test: fix tests for list_cut_position()")
> Cc: I Hsin Cheng <richard120...@gmail.com>
> Cc: David Gow <david...@google.com>
> Cc: Andrew Morton <a...@linux-foundation.org>
> Signed-off-by: Guenter Roeck <li...@roeck-us.net>
> ---
I ran into this as well.
Reviewed-by: Jacob Keller <jacob.e.kel...@intel.com>
> lib/list-test.c | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/lib/list-test.c b/lib/list-test.c
> index 4f3dc75baec1..e207c4c98d70 100644
> --- a/lib/list-test.c
> +++ b/lib/list-test.c
> @@ -408,13 +408,10 @@ static void list_test_list_cut_position(struct kunit
> *test)
>
> KUNIT_EXPECT_EQ(test, i, 2);
>
> - i = 0;
> list_for_each(cur, &list1) {
> KUNIT_EXPECT_PTR_EQ(test, cur, &entries[i]);
> i++;
> }
> -
> - KUNIT_EXPECT_EQ(test, i, 1);
> }
>
> static void list_test_list_cut_before(struct kunit *test)
> @@ -439,13 +436,10 @@ static void list_test_list_cut_before(struct kunit
> *test)
>
> KUNIT_EXPECT_EQ(test, i, 1);
>
> - i = 0;
> list_for_each(cur, &list1) {
> KUNIT_EXPECT_PTR_EQ(test, cur, &entries[i]);
> i++;
> }
> -
> - KUNIT_EXPECT_EQ(test, i, 2);
This test failure was also pointed out during an earlier review of the
patch..
> https://lore.kernel.org/all/CABVgOSmn=SEwq3je3+vJ-S1Rwb=clt2a3_wkoqshu9xzyez...@mail.gmail.com/
I suspect what we really want here is an explicit check against the
length of the lists.