tree: https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git dev-test head: 64be79d41fc0aefc57b4127f949e9995e739398e commit: 64be79d41fc0aefc57b4127f949e9995e739398e [17/17] erofs: get rid of z_erofs_fill_inode() config: powerpc-randconfig-r022-20230410 (https://download.01.org/0day-ci/archive/20230411/[email protected]/config) compiler: powerpc-linux-gcc (GCC) 12.1.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git/commit/?id=64be79d41fc0aefc57b4127f949e9995e739398e git remote add xiang-erofs https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git git fetch --no-tags xiang-erofs dev-test git checkout 64be79d41fc0aefc57b4127f949e9995e739398e # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=powerpc olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash
If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <[email protected]> | Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): powerpc-linux-ld: fs/erofs/inode.o: in function `erofs_fill_inode': >> fs/erofs/inode.c:296: undefined reference to `z_erofs_aops' >> powerpc-linux-ld: fs/erofs/inode.c:296: undefined reference to `z_erofs_aops' vim +296 fs/erofs/inode.c 245 246 static int erofs_fill_inode(struct inode *inode) 247 { 248 struct erofs_inode *vi = EROFS_I(inode); 249 struct erofs_buf buf = __EROFS_BUF_INITIALIZER; 250 void *kaddr; 251 unsigned int ofs; 252 int err = 0; 253 254 trace_erofs_fill_inode(inode); 255 256 /* read inode base data from disk */ 257 kaddr = erofs_read_inode(&buf, inode, &ofs); 258 if (IS_ERR(kaddr)) 259 return PTR_ERR(kaddr); 260 261 /* setup the new inode */ 262 switch (inode->i_mode & S_IFMT) { 263 case S_IFREG: 264 inode->i_op = &erofs_generic_iops; 265 if (erofs_inode_is_data_compressed(vi->datalayout)) 266 inode->i_fop = &generic_ro_fops; 267 else 268 inode->i_fop = &erofs_file_fops; 269 break; 270 case S_IFDIR: 271 inode->i_op = &erofs_dir_iops; 272 inode->i_fop = &erofs_dir_fops; 273 inode_nohighmem(inode); 274 break; 275 case S_IFLNK: 276 err = erofs_fill_symlink(inode, kaddr, ofs); 277 if (err) 278 goto out_unlock; 279 inode_nohighmem(inode); 280 break; 281 case S_IFCHR: 282 case S_IFBLK: 283 case S_IFIFO: 284 case S_IFSOCK: 285 inode->i_op = &erofs_generic_iops; 286 init_special_inode(inode, inode->i_mode, inode->i_rdev); 287 goto out_unlock; 288 default: 289 err = -EFSCORRUPTED; 290 goto out_unlock; 291 } 292 293 if (erofs_inode_is_data_compressed(vi->datalayout)) { 294 if (!erofs_is_fscache_mode(inode->i_sb) && 295 inode->i_sb->s_blocksize_bits == PAGE_SHIFT) { > 296 inode->i_mapping->a_ops = &z_erofs_aops; 297 err = 0; 298 } else { 299 err = -EOPNOTSUPP; 300 } 301 goto out_unlock; 302 } 303 inode->i_mapping->a_ops = &erofs_raw_access_aops; 304 mapping_set_large_folios(inode->i_mapping); 305 #ifdef CONFIG_EROFS_FS_ONDEMAND 306 if (erofs_is_fscache_mode(inode->i_sb)) 307 inode->i_mapping->a_ops = &erofs_fscache_access_aops; 308 #endif 309 310 out_unlock: 311 erofs_put_metabuf(&buf); 312 return err; 313 } 314 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests
