Hi Jeffle, Thank you for the patch! Yet something to improve: [auto build test ERROR on dhowells-fs/fscache-next] [cannot apply to xiang-erofs/dev-test ceph-client/for-linus linus/master v5.16-rc7 next-20211224] [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] url: https://github.com/0day-ci/linux/commits/Jeffle-Xu/fscache-erofs-fscache-based-demand-read-semantics/20211227-205742 base: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git fscache-next config: x86_64-randconfig-a014-20211227 (https://download.01.org/0day-ci/archive/20211228/202112280132.0kJ8Vjql-lkp@intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://github.com/0day-ci/linux/commit/c3453b91df3b4e89c3336453437f761d6cb6bca3 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Jeffle-Xu/fscache-erofs-fscache-based-demand-read-semantics/20211227-205742 git checkout c3453b91df3b4e89c3336453437f761d6cb6bca3 # save the config file to linux build tree mkdir build_dir make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): vmlinux.o: warning: objtool: do_machine_check()+0x89f: call to queue_task_work() leaves .noinstr.text section vmlinux.o: warning: objtool: enter_from_user_mode()+0x4e: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode()+0x59: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare()+0x4e: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: irqentry_enter_from_user_mode()+0x4e: call to on_thread_stack() leaves .noinstr.text section ld: fs/erofs/fscache.o: in function `erofs_issue_op': fs/erofs/fscache.c:27: undefined reference to `netfs_subreq_terminated' ld: fs/erofs/fscache.o: in function `erofs_readpage_from_fscache': >> fs/erofs/fscache.c:59: undefined reference to `netfs_readpage' vim +59 fs/erofs/fscache.c 35 36 struct page *erofs_readpage_from_fscache(struct erofs_cookie_ctx *ctx, 37 pgoff_t index) 38 { 39 struct folio *folio; 40 struct page *page; 41 struct super_block *sb = ctx->inode->i_sb; 42 int ret; 43 44 page = find_or_create_page(ctx->inode->i_mapping, index, GFP_KERNEL); 45 if (unlikely(!page)) { 46 erofs_err(sb, "failed to allocate page"); 47 return ERR_PTR(-ENOMEM); 48 } 49 50 /* The content is already buffered in the address space */ 51 if (PageUptodate(page)) { 52 unlock_page(page); 53 return page; 54 } 55 56 /* Or a new page cache is created, then read the content from fscache */ 57 folio = page_folio(page); 58 > 59 ret = netfs_readpage(NULL, folio, &erofs_req_ops, ctx->cookie); 60 if (unlikely(ret || !PageUptodate(page))) { 61 erofs_err(sb, "failed to read from fscache"); 62 return ERR_PTR(-EINVAL); 63 } 64 65 return page; 66 } 67 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org