Hi William,

I love your patch! Yet something to improve:

[auto build test ERROR on gpio/for-next]
[also build test ERROR on v4.20-rc7 next-20181218]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/William-Breathitt-Gray/Introduce-the-for_each_set_clump8-macro/20181219-004325
base:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git 
for-next
config: x86_64-randconfig-x011-201850 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

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

   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:14,
                    from include/asm-generic/bug.h:18,
                    from arch/x86/include/asm/bug.h:47,
                    from include/linux/bug.h:5,
                    from include/linux/jump_label.h:251,
                    from arch/x86/include/asm/string_64.h:6,
                    from arch/x86/include/asm/string.h:5,
                    from include/linux/string.h:20,
                    from include/linux/bitmap.h:9,
                    from lib/test_bitmap.c:7:
   lib/test_bitmap.c: In function '__check_eq_clump8':
>> include/linux/kern_levels.h:5:18: warning: format '%zu' expects argument of 
>> type 'size_t', but argument 4 has type 'unsigned int' [-Wformat=]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:12:22: note: in expansion of macro 'KERN_SOH'
    #define KERN_WARNING KERN_SOH "4" /* warning conditions */
                         ^~~~~~~~
   include/linux/printk.h:310:9: note: in expansion of macro 'KERN_WARNING'
     printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
            ^~~~~~~~~~~~
   include/linux/printk.h:311:17: note: in expansion of macro 'pr_warning'
    #define pr_warn pr_warning
                    ^~~~~~~~~~
>> lib/test_bitmap.c:100:3: note: in expansion of macro 'pr_warn'
      pr_warn("[%s:%u] bit offset for clump out-of-bounds: expected less than 
%zu, got %zu\n",
      ^~~~~~~
   include/linux/kern_levels.h:5:18: warning: format '%zu' expects argument of 
type 'size_t', but argument 5 has type 'unsigned int' [-Wformat=]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:12:22: note: in expansion of macro 'KERN_SOH'
    #define KERN_WARNING KERN_SOH "4" /* warning conditions */
                         ^~~~~~~~
   include/linux/printk.h:310:9: note: in expansion of macro 'KERN_WARNING'
     printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
            ^~~~~~~~~~~~
   include/linux/printk.h:311:17: note: in expansion of macro 'pr_warning'
    #define pr_warn pr_warning
                    ^~~~~~~~~~
>> lib/test_bitmap.c:100:3: note: in expansion of macro 'pr_warn'
      pr_warn("[%s:%u] bit offset for clump out-of-bounds: expected less than 
%zu, got %zu\n",
      ^~~~~~~
>> include/linux/kern_levels.h:5:18: warning: format '%zu' expects argument of 
>> type 'size_t', but argument 4 has type 'unsigned int' [-Wformat=]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:12:22: note: in expansion of macro 'KERN_SOH'
    #define KERN_WARNING KERN_SOH "4" /* warning conditions */
                         ^~~~~~~~
   include/linux/printk.h:310:9: note: in expansion of macro 'KERN_WARNING'
     printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
            ^~~~~~~~~~~~
   include/linux/printk.h:311:17: note: in expansion of macro 'pr_warning'
    #define pr_warn pr_warning
                    ^~~~~~~~~~
   lib/test_bitmap.c:107:3: note: in expansion of macro 'pr_warn'
      pr_warn("[%s:%u] bit offset for zero clump: expected nonzero clump, got 
bit offset %zu with clump value 0",
      ^~~~~~~
   In file included from include/linux/bitmap.h:8:0,
                    from lib/test_bitmap.c:7:
   lib/test_bitmap.c: In function 'test_for_each_set_clump8':
>> include/linux/bitops.h:46:53: error: 'offset' undeclared (first use in this 
>> function); did you mean 'off_t'?
          (start) = find_next_clump8(&(clump), (bits), (offset) + 1, (size)))
                                                        ^
>> lib/test_bitmap.c:426:2: note: in expansion of macro 'for_each_set_clump8'
     for_each_set_clump8(start, clump, bits, size)
     ^~~~~~~~~~~~~~~~~~~
   include/linux/bitops.h:46:53: note: each undeclared identifier is reported 
only once for each function it appears in
          (start) = find_next_clump8(&(clump), (bits), (offset) + 1, (size)))
                                                        ^
>> lib/test_bitmap.c:426:2: note: in expansion of macro 'for_each_set_clump8'
     for_each_set_clump8(start, clump, bits, size)
     ^~~~~~~~~~~~~~~~~~~
>> lib/test_bitmap.c:125:8: error: implicit declaration of function 
>> '__check_eq_clump'; did you mean '__check_eq_clump8'? 
>> [-Werror=implicit-function-declaration]
      if (!__check_eq_ ## suffix(__FILE__, __LINE__,  \
           ^
>> lib/test_bitmap.c:137:32: note: in expansion of macro '__expect_eq'
    #define expect_eq_clump8(...)  __expect_eq(clump, ##__VA_ARGS__)
                                   ^~~~~~~~~~~
>> lib/test_bitmap.c:427:3: note: in expansion of macro 'expect_eq_clump8'
      expect_eq_clump8(offset, size, clump_exp, clump);
      ^~~~~~~~~~~~~~~~
   At top level:
   lib/test_bitmap.c:91:20: warning: '__check_eq_clump8' defined but not used 
[-Wunused-function]
    static bool __init __check_eq_clump8(const char *srcfile, unsigned int line,
                       ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +125 lib/test_bitmap.c

5fd003f5 David Decotigny        2016-02-19   90  
7b161d18 William Breathitt Gray 2018-12-18   91  static bool __init 
__check_eq_clump8(const char *srcfile, unsigned int line,
7b161d18 William Breathitt Gray 2018-12-18   92                                 
    const unsigned int offset,
7b161d18 William Breathitt Gray 2018-12-18   93                                 
    const unsigned int size,
7b161d18 William Breathitt Gray 2018-12-18   94                                 
    const unsigned char *const clump_exp,
7b161d18 William Breathitt Gray 2018-12-18   95                                 
    const unsigned long *const clump)
7b161d18 William Breathitt Gray 2018-12-18   96  {
7b161d18 William Breathitt Gray 2018-12-18   97         unsigned long exp;
7b161d18 William Breathitt Gray 2018-12-18   98  
7b161d18 William Breathitt Gray 2018-12-18   99         if (offset >= size) {
7b161d18 William Breathitt Gray 2018-12-18 @100                 
pr_warn("[%s:%u] bit offset for clump out-of-bounds: expected less than %zu, 
got %zu\n",
7b161d18 William Breathitt Gray 2018-12-18  101                         
srcfile, line, size, offset);
7b161d18 William Breathitt Gray 2018-12-18  102                 return false;
7b161d18 William Breathitt Gray 2018-12-18  103         }
7b161d18 William Breathitt Gray 2018-12-18  104  
7b161d18 William Breathitt Gray 2018-12-18  105         exp = clump_exp[offset 
/ 8];
7b161d18 William Breathitt Gray 2018-12-18  106         if (!exp) {
7b161d18 William Breathitt Gray 2018-12-18 @107                 
pr_warn("[%s:%u] bit offset for zero clump: expected nonzero clump, got bit 
offset %zu with clump value 0",
7b161d18 William Breathitt Gray 2018-12-18  108                         
srcfile, line, offset);
7b161d18 William Breathitt Gray 2018-12-18  109                 return false;
7b161d18 William Breathitt Gray 2018-12-18  110         }
7b161d18 William Breathitt Gray 2018-12-18  111  
7b161d18 William Breathitt Gray 2018-12-18  112         if (*clump != exp) {
7b161d18 William Breathitt Gray 2018-12-18  113                 
pr_warn("[%s:%u] expected clump value of 0x%lX, got clump value of 0x%lX",
7b161d18 William Breathitt Gray 2018-12-18  114                         
srcfile, line, exp, *clump);
7b161d18 William Breathitt Gray 2018-12-18  115                 return false;
7b161d18 William Breathitt Gray 2018-12-18  116         }
7b161d18 William Breathitt Gray 2018-12-18  117  
7b161d18 William Breathitt Gray 2018-12-18  118         return true;
7b161d18 William Breathitt Gray 2018-12-18  119  }
7b161d18 William Breathitt Gray 2018-12-18  120  
5fd003f5 David Decotigny        2016-02-19  121  #define __expect_eq(suffix, 
...)                                       \
5fd003f5 David Decotigny        2016-02-19  122         ({                      
                                        \
5fd003f5 David Decotigny        2016-02-19  123                 int result = 0; 
                                        \
5fd003f5 David Decotigny        2016-02-19  124                 total_tests++;  
                                        \
5fd003f5 David Decotigny        2016-02-19 @125                 if 
(!__check_eq_ ## suffix(__FILE__, __LINE__,          \
5fd003f5 David Decotigny        2016-02-19  126                                 
           ##__VA_ARGS__)) {            \
5fd003f5 David Decotigny        2016-02-19  127                         
failed_tests++;                                 \
5fd003f5 David Decotigny        2016-02-19  128                         result 
= 1;                                     \
5fd003f5 David Decotigny        2016-02-19  129                 }               
                                        \
5fd003f5 David Decotigny        2016-02-19  130                 result;         
                                        \
5fd003f5 David Decotigny        2016-02-19  131         })
5fd003f5 David Decotigny        2016-02-19  132  
5fd003f5 David Decotigny        2016-02-19  133  #define expect_eq_uint(...)    
        __expect_eq(uint, ##__VA_ARGS__)
5fd003f5 David Decotigny        2016-02-19  134  #define expect_eq_bitmap(...)  
        __expect_eq(bitmap, ##__VA_ARGS__)
5fd003f5 David Decotigny        2016-02-19  135  #define expect_eq_pbl(...)     
        __expect_eq(pbl, ##__VA_ARGS__)
5fd003f5 David Decotigny        2016-02-19  136  #define 
expect_eq_u32_array(...)       __expect_eq(u32_array, ##__VA_ARGS__)
7b161d18 William Breathitt Gray 2018-12-18 @137  #define expect_eq_clump8(...)  
        __expect_eq(clump, ##__VA_ARGS__)
5fd003f5 David Decotigny        2016-02-19  138  

:::::: The code at line 125 was first introduced by commit
:::::: 5fd003f56c2c584b62a0486ad25bbd4be02b8b6c test_bitmap: unit tests for 
lib/bitmap.c

:::::: TO: David Decotigny <[email protected]>
:::::: CC: David S. Miller <[email protected]>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to