Hi beomsu,

kernel test robot noticed the following build errors:

[auto build test ERROR on v6.4-rc4]
[also build test ERROR on linus/master next-20230601]
[cannot apply to jaegeuk-f2fs/dev-test jaegeuk-f2fs/dev]
[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/beomsu-kim/f2fs-including-waf-data-in-f2fs-status-information/20230531-162208
base:   7877cb91f1081754a1487c144d85dc0d2e2e7fc4
patch link:    
https://lore.kernel.org/r/20230531082038epcms2p256f9db0d7ac377d404694354db1c3ebc%40epcms2p2
patch subject: [PATCH] f2fs: including waf data in f2fs status information
config: x86_64-randconfig-x065-20230531 
(https://download.01.org/0day-ci/archive/20230601/202306011410.w02tpfn1-...@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project 
f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
        mkdir -p ~/bin
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # 
https://github.com/intel-lab-lkp/linux/commit/3a2228fdedf76cc8448b358d07b77eb26d1299a4
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review 
beomsu-kim/f2fs-including-waf-data-in-f2fs-status-information/20230531-162208
        git checkout 3a2228fdedf76cc8448b358d07b77eb26d1299a4
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=x86_64 olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=x86_64 SHELL=/bin/bash fs/f2fs/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <l...@intel.com>
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202306011410.w02tpfn1-...@intel.com/

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

>> fs/f2fs/iostat.c:37:30: error: implicit declaration of function 'F2FS_STAT' 
>> is invalid in C99 [-Werror,-Wimplicit-function-declaration]
           struct f2fs_stat_info *si = F2FS_STAT(sbi);
                                       ^
>> fs/f2fs/iostat.c:37:25: warning: incompatible integer to pointer conversion 
>> initializing 'struct f2fs_stat_info *' with an expression of type 'int' 
>> [-Wint-conversion]
           struct f2fs_stat_info *si = F2FS_STAT(sbi);
                                  ^    ~~~~~~~~~~~~~~
>> fs/f2fs/iostat.c:46:32: error: incomplete definition of type 'struct 
>> f2fs_stat_info'
                   data_written_to_storage += si->sbi->iostat_bytes[j];
                                              ~~^
   fs/f2fs/iostat.c:37:9: note: forward declaration of 'struct f2fs_stat_info'
           struct f2fs_stat_info *si = F2FS_STAT(sbi);
                  ^
   fs/f2fs/iostat.c:48:29: error: incomplete definition of type 'struct 
f2fs_stat_info'
                   data_written_by_user += si->sbi->iostat_bytes[j];
                                           ~~^
   fs/f2fs/iostat.c:37:9: note: forward declaration of 'struct f2fs_stat_info'
           struct f2fs_stat_info *si = F2FS_STAT(sbi);
                  ^
   1 warning and 3 errors generated.


vim +/F2FS_STAT +37 fs/f2fs/iostat.c

    26  
    27  #define IOSTAT_INFO_SHOW(name, type)                                    
\
    28          seq_printf(seq, "%-23s %-16llu %-16llu %-16llu\n",              
\
    29                          name":", sbi->iostat_bytes[type],               
\
    30                          sbi->iostat_count[type],                        
\
    31                          iostat_get_avg_bytes(sbi, type))
    32  
    33  int __maybe_unused iostat_info_seq_show(struct seq_file *seq, void 
*offset)
    34  {
    35          struct super_block *sb = seq->private;
    36          struct f2fs_sb_info *sbi = F2FS_SB(sb);
  > 37          struct f2fs_stat_info *si = F2FS_STAT(sbi);
    38          int j;
    39          unsigned long long waf = 0;
    40          unsigned long long data_written_to_storage = 0, 
data_written_by_user = 0;
    41  
    42          if (!sbi->iostat_enable)
    43                  return 0;
    44  
    45          for (j = FS_DATA_IO; j <= FS_CP_META_IO; j++)
  > 46                  data_written_to_storage += si->sbi->iostat_bytes[j];
    47          for (j = FS_DATA_IO; j <= FS_CDATA_IO; j++)
    48                  data_written_by_user += si->sbi->iostat_bytes[j];
    49  
    50          if (data_written_by_user > 0)
    51                  waf = data_written_to_storage * 100 / 
data_written_by_user;
    52  
    53          seq_printf(seq, "time:          %-16llu\n", 
ktime_get_real_seconds());
    54          seq_printf(seq, "\t\t\t%-16s %-16s %-16s\n",
    55                                  "io_bytes", "count", "avg_bytes");
    56  
    57          /* print app write IOs */
    58          seq_puts(seq, "[WRITE]\n");
    59          IOSTAT_INFO_SHOW("app buffered data", APP_BUFFERED_IO);
    60          IOSTAT_INFO_SHOW("app direct data", APP_DIRECT_IO);
    61          IOSTAT_INFO_SHOW("app mapped data", APP_MAPPED_IO);
    62          IOSTAT_INFO_SHOW("app buffered cdata", APP_BUFFERED_CDATA_IO);
    63          IOSTAT_INFO_SHOW("app mapped cdata", APP_MAPPED_CDATA_IO);
    64  
    65          /* print fs write IOs */
    66          IOSTAT_INFO_SHOW("fs data", FS_DATA_IO);
    67          IOSTAT_INFO_SHOW("fs cdata", FS_CDATA_IO);
    68          IOSTAT_INFO_SHOW("fs node", FS_NODE_IO);
    69          IOSTAT_INFO_SHOW("fs meta", FS_META_IO);
    70          IOSTAT_INFO_SHOW("fs gc data", FS_GC_DATA_IO);
    71          IOSTAT_INFO_SHOW("fs gc node", FS_GC_NODE_IO);
    72          IOSTAT_INFO_SHOW("fs cp data", FS_CP_DATA_IO);
    73          IOSTAT_INFO_SHOW("fs cp node", FS_CP_NODE_IO);
    74          IOSTAT_INFO_SHOW("fs cp meta", FS_CP_META_IO);
    75  
    76          /* print app read IOs */
    77          seq_puts(seq, "[READ]\n");
    78          IOSTAT_INFO_SHOW("app buffered data", APP_BUFFERED_READ_IO);
    79          IOSTAT_INFO_SHOW("app direct data", APP_DIRECT_READ_IO);
    80          IOSTAT_INFO_SHOW("app mapped data", APP_MAPPED_READ_IO);
    81          IOSTAT_INFO_SHOW("app buffered cdata", 
APP_BUFFERED_CDATA_READ_IO);
    82          IOSTAT_INFO_SHOW("app mapped cdata", APP_MAPPED_CDATA_READ_IO);
    83  
    84          /* print fs read IOs */
    85          IOSTAT_INFO_SHOW("fs data", FS_DATA_READ_IO);
    86          IOSTAT_INFO_SHOW("fs gc data", FS_GDATA_READ_IO);
    87          IOSTAT_INFO_SHOW("fs cdata", FS_CDATA_READ_IO);
    88          IOSTAT_INFO_SHOW("fs node", FS_NODE_READ_IO);
    89          IOSTAT_INFO_SHOW("fs meta", FS_META_READ_IO);
    90  
    91          /* print other IOs */
    92          seq_puts(seq, "[OTHER]\n");
    93          IOSTAT_INFO_SHOW("fs discard", FS_DISCARD_IO);
    94          IOSTAT_INFO_SHOW("fs flush", FS_FLUSH_IO);
    95  
    96          /* print waf */
    97          seq_puts(seq, "[WAF]\n");
    98          seq_printf(seq, "fs waf:                %llu.%02llu\n", waf / 
100, waf % 100);
    99  
   100          return 0;
   101  }
   102  

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


_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to