From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [cel:nfsd-courteous-server 32/34] fs/nfsd/nfs4state.c:5893:9: error: implicit declaration of function 'nfsd4_get_client_reaplist'; did you mean 'nfs4_get_client_reaplist'?
Date: Tue, 15 Feb 2022 19:23:47 +0800 [thread overview]
Message-ID: <202202151804.8Tf5mieQ-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 6267 bytes --]
tree: git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux nfsd-courteous-server
head: 4b14f83e0bc79cb49f28fdc63a370c19637e2bfc
commit: 2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6 [32/34] NFSD: Refactor nfsd4_laundromat()
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20220215/202202151804.8Tf5mieQ-lkp(a)intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.2.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/cel/linux.git/commit/?id=2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6
git remote add cel git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux
git fetch --no-tags cel nfsd-courteous-server
git checkout 2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
fs/nfsd/nfs4state.c: In function 'nfs4_laundromat':
>> fs/nfsd/nfs4state.c:5893:9: error: implicit declaration of function 'nfsd4_get_client_reaplist'; did you mean 'nfs4_get_client_reaplist'? [-Werror=implicit-function-declaration]
5893 | nfsd4_get_client_reaplist(nn, &reaplist, <);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| nfs4_get_client_reaplist
At top level:
fs/nfsd/nfs4state.c:5841:1: warning: 'nfs4_get_client_reaplist' defined but not used [-Wunused-function]
5841 | nfs4_get_client_reaplist(struct nfsd_net *nn, struct list_head *reaplist,
| ^~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +5893 fs/nfsd/nfs4state.c
5860
5861 static time64_t
5862 nfs4_laundromat(struct nfsd_net *nn)
5863 {
5864 struct nfs4_client *clp;
5865 struct nfs4_openowner *oo;
5866 struct nfs4_delegation *dp;
5867 struct nfs4_ol_stateid *stp;
5868 struct nfsd4_blocked_lock *nbl;
5869 struct list_head *pos, *next, reaplist;
5870 struct laundry_time lt = {
5871 .cutoff = ktime_get_boottime_seconds() - nn->nfsd4_lease,
5872 .new_timeo = nn->nfsd4_lease
5873 };
5874 struct nfs4_cpntf_state *cps;
5875 copy_stateid_t *cps_t;
5876 int i;
5877
5878 if (clients_still_reclaiming(nn)) {
5879 lt.new_timeo = 0;
5880 goto out;
5881 }
5882 nfsd4_end_grace(nn);
5883
5884 spin_lock(&nn->s2s_cp_lock);
5885 idr_for_each_entry(&nn->s2s_cp_stateids, cps_t, i) {
5886 cps = container_of(cps_t, struct nfs4_cpntf_state, cp_stateid);
5887 if (cps->cp_stateid.sc_type == NFS4_COPYNOTIFY_STID &&
5888 state_expired(<, cps->cpntf_time))
5889 _free_cpntf_state_locked(nn, cps);
5890 }
5891 spin_unlock(&nn->s2s_cp_lock);
5892
> 5893 nfsd4_get_client_reaplist(nn, &reaplist, <);
5894 list_for_each_safe(pos, next, &reaplist) {
5895 clp = list_entry(pos, struct nfs4_client, cl_lru);
5896 trace_nfsd_clid_purged(&clp->cl_clientid);
5897 list_del_init(&clp->cl_lru);
5898 expire_client(clp);
5899 }
5900 spin_lock(&state_lock);
5901 list_for_each_safe(pos, next, &nn->del_recall_lru) {
5902 dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru);
5903 if (!state_expired(<, dp->dl_time))
5904 break;
5905 WARN_ON(!unhash_delegation_locked(dp));
5906 list_add(&dp->dl_recall_lru, &reaplist);
5907 }
5908 spin_unlock(&state_lock);
5909 while (!list_empty(&reaplist)) {
5910 dp = list_first_entry(&reaplist, struct nfs4_delegation,
5911 dl_recall_lru);
5912 list_del_init(&dp->dl_recall_lru);
5913 revoke_delegation(dp);
5914 }
5915
5916 spin_lock(&nn->client_lock);
5917 while (!list_empty(&nn->close_lru)) {
5918 oo = list_first_entry(&nn->close_lru, struct nfs4_openowner,
5919 oo_close_lru);
5920 if (!state_expired(<, oo->oo_time))
5921 break;
5922 list_del_init(&oo->oo_close_lru);
5923 stp = oo->oo_last_closed_stid;
5924 oo->oo_last_closed_stid = NULL;
5925 spin_unlock(&nn->client_lock);
5926 nfs4_put_stid(&stp->st_stid);
5927 spin_lock(&nn->client_lock);
5928 }
5929 spin_unlock(&nn->client_lock);
5930
5931 /*
5932 * It's possible for a client to try and acquire an already held lock
5933 * that is being held for a long time, and then lose interest in it.
5934 * So, we clean out any un-revisited request after a lease period
5935 * under the assumption that the client is no longer interested.
5936 *
5937 * RFC5661, sec. 9.6 states that the client must not rely on getting
5938 * notifications and must continue to poll for locks, even when the
5939 * server supports them. Thus this shouldn't lead to clients blocking
5940 * indefinitely once the lock does become free.
5941 */
5942 BUG_ON(!list_empty(&reaplist));
5943 spin_lock(&nn->blocked_locks_lock);
5944 while (!list_empty(&nn->blocked_locks_lru)) {
5945 nbl = list_first_entry(&nn->blocked_locks_lru,
5946 struct nfsd4_blocked_lock, nbl_lru);
5947 if (!state_expired(<, nbl->nbl_time))
5948 break;
5949 list_move(&nbl->nbl_lru, &reaplist);
5950 list_del_init(&nbl->nbl_list);
5951 }
5952 spin_unlock(&nn->blocked_locks_lock);
5953
5954 while (!list_empty(&reaplist)) {
5955 nbl = list_first_entry(&reaplist,
5956 struct nfsd4_blocked_lock, nbl_lru);
5957 list_del_init(&nbl->nbl_lru);
5958 free_blocked_lock(nbl);
5959 }
5960 #ifdef CONFIG_NFSD_V4_2_INTER_SSC
5961 /* service the server-to-server copy delayed unmount list */
5962 nfsd4_ssc_expire_umount(nn);
5963 #endif
5964 out:
5965 return max_t(time64_t, lt.new_timeo, NFSD_LAUNDROMAT_MINTIMEOUT);
5966 }
5967
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Chuck Lever <chuck.lever@oracle.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org
Subject: [cel:nfsd-courteous-server 32/34] fs/nfsd/nfs4state.c:5893:9: error: implicit declaration of function 'nfsd4_get_client_reaplist'; did you mean 'nfs4_get_client_reaplist'?
Date: Tue, 15 Feb 2022 19:23:47 +0800 [thread overview]
Message-ID: <202202151804.8Tf5mieQ-lkp@intel.com> (raw)
tree: git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux nfsd-courteous-server
head: 4b14f83e0bc79cb49f28fdc63a370c19637e2bfc
commit: 2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6 [32/34] NFSD: Refactor nfsd4_laundromat()
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20220215/202202151804.8Tf5mieQ-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.2.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/cel/linux.git/commit/?id=2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6
git remote add cel git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux
git fetch --no-tags cel nfsd-courteous-server
git checkout 2fb4c8cd9a292bbee4428e9c6d33be28ca5775c6
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
fs/nfsd/nfs4state.c: In function 'nfs4_laundromat':
>> fs/nfsd/nfs4state.c:5893:9: error: implicit declaration of function 'nfsd4_get_client_reaplist'; did you mean 'nfs4_get_client_reaplist'? [-Werror=implicit-function-declaration]
5893 | nfsd4_get_client_reaplist(nn, &reaplist, <);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| nfs4_get_client_reaplist
At top level:
fs/nfsd/nfs4state.c:5841:1: warning: 'nfs4_get_client_reaplist' defined but not used [-Wunused-function]
5841 | nfs4_get_client_reaplist(struct nfsd_net *nn, struct list_head *reaplist,
| ^~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +5893 fs/nfsd/nfs4state.c
5860
5861 static time64_t
5862 nfs4_laundromat(struct nfsd_net *nn)
5863 {
5864 struct nfs4_client *clp;
5865 struct nfs4_openowner *oo;
5866 struct nfs4_delegation *dp;
5867 struct nfs4_ol_stateid *stp;
5868 struct nfsd4_blocked_lock *nbl;
5869 struct list_head *pos, *next, reaplist;
5870 struct laundry_time lt = {
5871 .cutoff = ktime_get_boottime_seconds() - nn->nfsd4_lease,
5872 .new_timeo = nn->nfsd4_lease
5873 };
5874 struct nfs4_cpntf_state *cps;
5875 copy_stateid_t *cps_t;
5876 int i;
5877
5878 if (clients_still_reclaiming(nn)) {
5879 lt.new_timeo = 0;
5880 goto out;
5881 }
5882 nfsd4_end_grace(nn);
5883
5884 spin_lock(&nn->s2s_cp_lock);
5885 idr_for_each_entry(&nn->s2s_cp_stateids, cps_t, i) {
5886 cps = container_of(cps_t, struct nfs4_cpntf_state, cp_stateid);
5887 if (cps->cp_stateid.sc_type == NFS4_COPYNOTIFY_STID &&
5888 state_expired(<, cps->cpntf_time))
5889 _free_cpntf_state_locked(nn, cps);
5890 }
5891 spin_unlock(&nn->s2s_cp_lock);
5892
> 5893 nfsd4_get_client_reaplist(nn, &reaplist, <);
5894 list_for_each_safe(pos, next, &reaplist) {
5895 clp = list_entry(pos, struct nfs4_client, cl_lru);
5896 trace_nfsd_clid_purged(&clp->cl_clientid);
5897 list_del_init(&clp->cl_lru);
5898 expire_client(clp);
5899 }
5900 spin_lock(&state_lock);
5901 list_for_each_safe(pos, next, &nn->del_recall_lru) {
5902 dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru);
5903 if (!state_expired(<, dp->dl_time))
5904 break;
5905 WARN_ON(!unhash_delegation_locked(dp));
5906 list_add(&dp->dl_recall_lru, &reaplist);
5907 }
5908 spin_unlock(&state_lock);
5909 while (!list_empty(&reaplist)) {
5910 dp = list_first_entry(&reaplist, struct nfs4_delegation,
5911 dl_recall_lru);
5912 list_del_init(&dp->dl_recall_lru);
5913 revoke_delegation(dp);
5914 }
5915
5916 spin_lock(&nn->client_lock);
5917 while (!list_empty(&nn->close_lru)) {
5918 oo = list_first_entry(&nn->close_lru, struct nfs4_openowner,
5919 oo_close_lru);
5920 if (!state_expired(<, oo->oo_time))
5921 break;
5922 list_del_init(&oo->oo_close_lru);
5923 stp = oo->oo_last_closed_stid;
5924 oo->oo_last_closed_stid = NULL;
5925 spin_unlock(&nn->client_lock);
5926 nfs4_put_stid(&stp->st_stid);
5927 spin_lock(&nn->client_lock);
5928 }
5929 spin_unlock(&nn->client_lock);
5930
5931 /*
5932 * It's possible for a client to try and acquire an already held lock
5933 * that is being held for a long time, and then lose interest in it.
5934 * So, we clean out any un-revisited request after a lease period
5935 * under the assumption that the client is no longer interested.
5936 *
5937 * RFC5661, sec. 9.6 states that the client must not rely on getting
5938 * notifications and must continue to poll for locks, even when the
5939 * server supports them. Thus this shouldn't lead to clients blocking
5940 * indefinitely once the lock does become free.
5941 */
5942 BUG_ON(!list_empty(&reaplist));
5943 spin_lock(&nn->blocked_locks_lock);
5944 while (!list_empty(&nn->blocked_locks_lru)) {
5945 nbl = list_first_entry(&nn->blocked_locks_lru,
5946 struct nfsd4_blocked_lock, nbl_lru);
5947 if (!state_expired(<, nbl->nbl_time))
5948 break;
5949 list_move(&nbl->nbl_lru, &reaplist);
5950 list_del_init(&nbl->nbl_list);
5951 }
5952 spin_unlock(&nn->blocked_locks_lock);
5953
5954 while (!list_empty(&reaplist)) {
5955 nbl = list_first_entry(&reaplist,
5956 struct nfsd4_blocked_lock, nbl_lru);
5957 list_del_init(&nbl->nbl_lru);
5958 free_blocked_lock(nbl);
5959 }
5960 #ifdef CONFIG_NFSD_V4_2_INTER_SSC
5961 /* service the server-to-server copy delayed unmount list */
5962 nfsd4_ssc_expire_umount(nn);
5963 #endif
5964 out:
5965 return max_t(time64_t, lt.new_timeo, NFSD_LAUNDROMAT_MINTIMEOUT);
5966 }
5967
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
next reply other threads:[~2022-02-15 11:23 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-15 11:23 kernel test robot [this message]
2022-02-15 11:23 ` [cel:nfsd-courteous-server 32/34] fs/nfsd/nfs4state.c:5893:9: error: implicit declaration of function 'nfsd4_get_client_reaplist'; did you mean 'nfs4_get_client_reaplist'? kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202202151804.8Tf5mieQ-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.