tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git untested.persistency head: 2860da18a75c4e0e4d477417ac9ae9f1d37c676c commit: 2ecf285ca491683e16fc72b963cdbb23dc2b4c7a [41/58] convert hypfs config: s390-defconfig (https://download.01.org/0day-ci/archive/20240515/202405150917.hqI6d508-lkp@xxxxxxxxx/config) compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project b910bebc300dafb30569cecc3017b446ea8eafa0) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240515/202405150917.hqI6d508-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/202405150917.hqI6d508-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from arch/s390/hypfs/inode.c:15: In file included from include/linux/fs_context.h:14: In file included from include/linux/security.h:33: In file included from include/linux/mm.h:2210: include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> arch/s390/hypfs/inode.c:331:3: error: call to undeclared function 'd_mark_discardable'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 331 | d_mark_discardable(dentry); | ^ arch/s390/hypfs/inode.c:331:3: note: did you mean 'd_make_discardable'? include/linux/dcache.h:617:13: note: 'd_make_discardable' declared here 617 | extern void d_make_discardable(struct dentry *dentry); | ^ 5 warnings and 1 error generated. vim +/d_mark_discardable +331 arch/s390/hypfs/inode.c 316 317 static struct dentry *hypfs_create_file(struct dentry *parent, const char *name, 318 char *data, umode_t mode) 319 { 320 struct dentry *dentry; 321 struct inode *inode; 322 323 inode_lock(d_inode(parent)); 324 dentry = start_creating_persistent(parent, name); 325 if (IS_ERR(dentry)) { 326 dentry = ERR_PTR(-ENOMEM); 327 goto fail; 328 } 329 inode = hypfs_make_inode(parent->d_sb, mode); 330 if (!inode) { > 331 d_mark_discardable(dentry); 332 dentry = ERR_PTR(-ENOMEM); 333 goto fail; 334 } 335 if (S_ISREG(mode)) { 336 inode->i_fop = &hypfs_file_ops; 337 if (data) 338 inode->i_size = strlen(data); 339 else 340 inode->i_size = 0; 341 } else if (S_ISDIR(mode)) { 342 inode->i_op = &simple_dir_inode_operations; 343 inode->i_fop = &simple_dir_operations; 344 inc_nlink(d_inode(parent)); 345 } else 346 BUG(); 347 inode->i_private = data; 348 d_instantiate(dentry, inode); 349 fail: 350 inode_unlock(d_inode(parent)); 351 return dentry; 352 } 353 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki