[PATCH v1 12/23] erofs: implement fscache-based metadata read
kernel test robot
lkp at intel.com
Tue Dec 28 04:17:42 AEDT 2021
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 <lkp at intel.com>
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
More information about the Linux-erofs
mailing list