[ammarfaizi2-block:dhowells/linux-fs/netfs-maple 2/40] fs/netfs/objects.c:48:9: error: implicit declaration of function 'netfs_proc_add_writeback'; did you mean 'netfs_proc_add_rreq'?

From: kernel test robot
Date: Tue Apr 05 2022 - 01:19:52 EST


tree: https://github.com/ammarfaizi2/linux-block dhowells/linux-fs/netfs-maple
head: 674eea41fc70a740ff83ec590f9833f805852464
commit: 9bff5b05142d47cc6a64f5e023fd01d9bf8bee9e [2/40] netfs: Add a procfile to list in-progress requests
config: powerpc64-randconfig-s031-20220405 (https://download.01.org/0day-ci/archive/20220405/202204051305.EmtUGQOR-lkp@xxxxxxxxx/config)
compiler: powerpc64le-linux-gcc (GCC) 11.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/ammarfaizi2/linux-block/commit/9bff5b05142d47cc6a64f5e023fd01d9bf8bee9e
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block dhowells/linux-fs/netfs-maple
git checkout 9bff5b05142d47cc6a64f5e023fd01d9bf8bee9e
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=powerpc SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

fs/netfs/objects.c: In function 'netfs_alloc_request':
>> fs/netfs/objects.c:48:9: error: implicit declaration of function 'netfs_proc_add_writeback'; did you mean 'netfs_proc_add_rreq'? [-Werror=implicit-function-declaration]
48 | netfs_proc_add_writeback(rreq);
| ^~~~~~~~~~~~~~~~~~~~~~~~
| netfs_proc_add_rreq
fs/netfs/objects.c: In function 'netfs_free_request':
>> fs/netfs/objects.c:80:9: error: implicit declaration of function 'netfs_proc_del_writeback'; did you mean 'netfs_proc_del_rreq'? [-Werror=implicit-function-declaration]
80 | netfs_proc_del_writeback(rreq);
| ^~~~~~~~~~~~~~~~~~~~~~~~
| netfs_proc_del_rreq
cc1: some warnings being treated as errors


vim +48 fs/netfs/objects.c

10
11 /*
12 * Allocate an I/O request and initialise it.
13 */
14 struct netfs_io_request *netfs_alloc_request(struct address_space *mapping,
15 struct file *file,
16 loff_t start, size_t len,
17 enum netfs_io_origin origin)
18 {
19 static atomic_t debug_ids;
20 struct inode *inode = file ? file_inode(file) : mapping->host;
21 struct netfs_i_context *ctx = netfs_i_context(inode);
22 struct netfs_io_request *rreq;
23 int ret;
24
25 rreq = kzalloc(sizeof(struct netfs_io_request), GFP_KERNEL);
26 if (!rreq)
27 return ERR_PTR(-ENOMEM);
28
29 rreq->start = start;
30 rreq->len = len;
31 rreq->origin = origin;
32 rreq->netfs_ops = ctx->ops;
33 rreq->mapping = mapping;
34 rreq->inode = inode;
35 rreq->i_size = i_size_read(inode);
36 rreq->debug_id = atomic_inc_return(&debug_ids);
37 INIT_LIST_HEAD(&rreq->subrequests);
38 refcount_set(&rreq->ref, 1);
39 __set_bit(NETFS_RREQ_IN_PROGRESS, &rreq->flags);
40 if (rreq->netfs_ops->init_request) {
41 ret = rreq->netfs_ops->init_request(rreq, file);
42 if (ret < 0) {
43 kfree(rreq);
44 return ERR_PTR(ret);
45 }
46 }
47
> 48 netfs_proc_add_writeback(rreq);
49 netfs_stat(&netfs_n_rh_rreq);
50 return rreq;
51 }
52
53 void netfs_get_request(struct netfs_io_request *rreq, enum netfs_rreq_ref_trace what)
54 {
55 int r;
56
57 __refcount_inc(&rreq->ref, &r);
58 trace_netfs_rreq_ref(rreq->debug_id, r + 1, what);
59 }
60
61 void netfs_clear_subrequests(struct netfs_io_request *rreq, bool was_async)
62 {
63 struct netfs_io_subrequest *subreq;
64
65 while (!list_empty(&rreq->subrequests)) {
66 subreq = list_first_entry(&rreq->subrequests,
67 struct netfs_io_subrequest, rreq_link);
68 list_del(&subreq->rreq_link);
69 netfs_put_subrequest(subreq, was_async,
70 netfs_sreq_trace_put_clear);
71 }
72 }
73
74 static void netfs_free_request(struct work_struct *work)
75 {
76 struct netfs_io_request *rreq =
77 container_of(work, struct netfs_io_request, work);
78
79 trace_netfs_rreq(rreq, netfs_rreq_trace_free);
> 80 netfs_proc_del_writeback(rreq);
81 netfs_clear_subrequests(rreq, false);
82 if (rreq->netfs_ops->free_request)
83 rreq->netfs_ops->free_request(rreq);
84 if (rreq->cache_resources.ops)
85 rreq->cache_resources.ops->end_operation(&rreq->cache_resources);
86 kfree_rcu(rreq, rcu);
87 netfs_stat_d(&netfs_n_rh_rreq);
88 }
89

--
0-DAY CI Kernel Test Service
https://01.org/lkp