lib/kunit/string-stream-test.c:73:9: sparse: sparse: incorrect type in initializer (different base types)

From: kernel test robot
Date: Fri Nov 17 2023 - 19:54:42 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 12ee72fe01e45a9586b9d130c5501763818c8efc
commit: d1a0d699bfc00ae5b5e74bb640d791a93e825b68 kunit: string-stream: Add tests for freeing resource-managed string_stream
date: 9 weeks ago
config: sparc-randconfig-r021-20230427 (https://download.01.org/0day-ci/archive/20231118/202311180846.j5VBD2IH-lkp@xxxxxxxxx/config)
compiler: sparc-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20231118/202311180846.j5VBD2IH-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311180846.j5VBD2IH-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> lib/kunit/string-stream-test.c:73:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected long long left_value @@ got restricted gfp_t const __left @@
lib/kunit/string-stream-test.c:73:9: sparse: expected long long left_value
lib/kunit/string-stream-test.c:73:9: sparse: got restricted gfp_t const __left
>> lib/kunit/string-stream-test.c:73:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected long long right_value @@ got restricted gfp_t const __right @@
lib/kunit/string-stream-test.c:73:9: sparse: expected long long right_value
lib/kunit/string-stream-test.c:73:9: sparse: got restricted gfp_t const __right
lib/kunit/string-stream-test.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/umh.h, include/linux/kmod.h, ...):
include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false

vim +73 lib/kunit/string-stream-test.c

61
62 /* Unmanaged string_stream object is initialized correctly. */
63 static void string_stream_unmanaged_init_test(struct kunit *test)
64 {
65 struct string_stream *stream;
66
67 stream = alloc_string_stream(GFP_KERNEL);
68 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, stream);
69 kunit_add_action(test, cleanup_raw_stream, stream);
70
71 KUNIT_EXPECT_EQ(test, stream->length, 0);
72 KUNIT_EXPECT_TRUE(test, list_empty(&stream->fragments));
> 73 KUNIT_EXPECT_EQ(test, stream->gfp, GFP_KERNEL);
74 KUNIT_EXPECT_FALSE(test, stream->append_newlines);
75
76 KUNIT_EXPECT_TRUE(test, string_stream_is_empty(stream));
77 }
78

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki