All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Aditya Garg <gargaditya08@live.com>,
	Petr Mladek <pmladek@suse.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	"andriy.shevchenko@linux.intel.com"
	<andriy.shevchenko@linux.intel.com>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	"senozhatsky@chromium.org" <senozhatsky@chromium.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Andrew Morton <akpm@linux-foundation.org>,
	"apw@canonical.com" <apw@canonical.com>,
	"joe@perches.com" <joe@perches.com>,
	"dwaipayanray1@gmail.com" <dwaipayanray1@gmail.com>,
	"lukas.bulwahn@gmail.com" <lukas.bulwahn@gmail.com>
Cc: oe-kbuild-all@lists.linux.dev,
	Linux Memory Management List <linux-mm@kvack.org>,
	"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Hector Martin <marcan@marcan.st>, Sven Peter <sven@svenpeter.dev>,
	Janne Grunau <j@jannau.net>,
	Alyssa Rosenzweig <alyssa@rosenzweig.io>,
	Asahi Linux Mailing List <asahi@lists.linux.dev>
Subject: Re: [PATCH v5] lib/vsprintf: Add support for generic FourCCs by extending %p4cc
Date: Sun, 2 Mar 2025 01:35:57 +0800	[thread overview]
Message-ID: <202503020121.qsiw3acQ-lkp@intel.com> (raw)
In-Reply-To: <2C9622E6-A2DB-4681-A971-604C79F9955E@live.com>

Hi Aditya,

kernel test robot noticed the following build errors:

[auto build test ERROR on akpm-mm/mm-nonmm-unstable]
[also build test ERROR on linus/master v6.14-rc4 next-20250228]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Aditya-Garg/lib-vsprintf-Add-support-for-generic-FourCCs-by-extending-p4cc/20250301-003018
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-nonmm-unstable
patch link:    https://lore.kernel.org/r/2C9622E6-A2DB-4681-A971-604C79F9955E%40live.com
patch subject: [PATCH v5] lib/vsprintf: Add support for generic FourCCs by extending %p4cc
config: arc-randconfig-001-20250301 (https://download.01.org/0day-ci/archive/20250302/202503020121.qsiw3acQ-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250302/202503020121.qsiw3acQ-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503020121.qsiw3acQ-lkp@intel.com/

All error/warnings (new ones prefixed by >>):

   lib/test_printf.c: In function 'fourcc_pointer':
>> lib/test_printf.c:802:17: warning: braces around scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:802:17: note: (near initialization for 'try_ch.code')
>> lib/test_printf.c:802:31: warning: excess elements in scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:802:31: note: (near initialization for 'try_ch.code')
   lib/test_printf.c:805:17: warning: braces around scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                 ^
   lib/test_printf.c:805:17: note: (near initialization for 'try_cn.code')
   lib/test_printf.c:805:31: warning: excess elements in scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:805:31: note: (near initialization for 'try_cn.code')
   lib/test_printf.c:808:17: warning: braces around scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:808:17: note: (near initialization for 'try_cl.code')
   lib/test_printf.c:808:44: warning: excess elements in scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:808:44: note: (near initialization for 'try_cl.code')
   lib/test_printf.c:811:17: warning: braces around scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:811:17: note: (near initialization for 'try_cb.code')
   lib/test_printf.c:811:44: warning: excess elements in scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:811:44: note: (near initialization for 'try_cb.code')
   In file included from include/linux/kernel.h:16,
                    from lib/test_printf.c:9:
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   In file included from include/linux/build_bug.h:5,
                    from include/linux/init.h:5,
                    from lib/test_printf.c:8:
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> lib/test_printf.c:815:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:816:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:817:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   lib/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:818:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
--
   test_printf.c: In function 'fourcc_pointer':
   test_printf.c:802:17: warning: braces around scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:802:17: note: (near initialization for 'try_ch.code')
   test_printf.c:802:31: warning: excess elements in scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   test_printf.c:802:31: note: (near initialization for 'try_ch.code')
   test_printf.c:805:17: warning: braces around scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                 ^
   test_printf.c:805:17: note: (near initialization for 'try_cn.code')
   test_printf.c:805:31: warning: excess elements in scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   test_printf.c:805:31: note: (near initialization for 'try_cn.code')
   test_printf.c:808:17: warning: braces around scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:808:17: note: (near initialization for 'try_cl.code')
   test_printf.c:808:44: warning: excess elements in scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   test_printf.c:808:44: note: (near initialization for 'try_cl.code')
   test_printf.c:811:17: warning: braces around scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:811:17: note: (near initialization for 'try_cb.code')
   test_printf.c:811:44: warning: excess elements in scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   test_printf.c:811:44: note: (near initialization for 'try_cb.code')
   In file included from include/linux/kernel.h:16,
                    from test_printf.c:9:
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   In file included from include/linux/build_bug.h:5,
                    from include/linux/init.h:5,
                    from test_printf.c:8:
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   test_printf.c:815:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
   test_printf.c:816:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
   test_printf.c:817:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                                          ^~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
     202 | #define __must_be_array(a)      __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
   test_printf.c:818:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~


vim +/fourcc_pointer_test +815 lib/test_printf.c

   792	
   793	static void __init fourcc_pointer(void)
   794	{
   795		static const struct fourcc_struct try_cc[] = {
   796			{ 0x3231564e, "NV12 little-endian (0x3231564e)", },
   797			{ 0xb231564e, "NV12 big-endian (0xb231564e)", },
   798			{ 0x10111213, ".... little-endian (0x10111213)", },
   799			{ 0x20303159, "Y10  little-endian (0x20303159)", },
   800		};
   801		static const struct fourcc_struct try_ch = {
 > 802			{ 0x41424344, "ABCD (0x41424344)", },
   803		};
   804		static const struct fourcc_struct try_cn = {
   805			{ 0x41424344, "DCBA (0x44434241)", },
   806		};
   807		static const struct fourcc_struct try_cl = {
   808			{ le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
   809		};
   810		static const struct fourcc_struct try_cb = {
   811			{ be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
   812		};
   813	
   814		fourcc_pointer_test(try_cc, ARRAY_SIZE(try_cc), "%p4cc");
 > 815		fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
   816		fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
   817		fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
   818		fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
   819	}
   820	

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

  parent reply	other threads:[~2025-03-01 17:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-28 16:29 [PATCH v5] lib/vsprintf: Add support for generic FourCCs by extending %p4cc Aditya Garg
2025-02-28 16:41 ` Aditya Garg
2025-02-28 18:47 ` Andy Shevchenko
2025-03-01 17:35 ` kernel test robot [this message]
2025-03-01 18:07 ` kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202503020121.qsiw3acQ-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=alyssa@rosenzweig.io \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=apw@canonical.com \
    --cc=asahi@lists.linux.dev \
    --cc=corbet@lwn.net \
    --cc=dwaipayanray1@gmail.com \
    --cc=gargaditya08@live.com \
    --cc=j@jannau.net \
    --cc=joe@perches.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=lukas.bulwahn@gmail.com \
    --cc=marcan@marcan.st \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pmladek@suse.com \
    --cc=rostedt@goodmis.org \
    --cc=senozhatsky@chromium.org \
    --cc=sven@svenpeter.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.