Hi Donald, On Fri, 2019-06-28 at 14:36 +0200, Donald Buczek wrote: > The function nfs4_setup_state_renewal is to be used by > nfs4_init_clientid. Move it further to the top of the source file to > include it regardles of CONFIG_NFS_V4_1 and to save a forward > declaration. No code changed. > > Signed-off-by: Donald Buczek <buczek@xxxxxxxxxxxxx> > --- > fs/nfs/nfs4state.c | 42 +++++++++++++++++++++--------------------- > 1 file changed, 21 insertions(+), 21 deletions(-) > > diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c > index 778ebfb00d13..c2df257f426f 100644 > --- a/fs/nfs/nfs4state.c > +++ b/fs/nfs/nfs4state.c > @@ -87,6 +87,27 @@ const nfs4_stateid current_stateid = { > > static DEFINE_MUTEX(nfs_clid_init_mutex); > > +static int nfs4_setup_state_renewal(struct nfs_client *clp) > +{ > + int status; > + struct nfs_fsinfo fsinfo; > + unsigned long now; > + > + if (!test_bit(NFS_CS_CHECK_LEASE_TIME, &clp->cl_res_state)) { > + nfs4_schedule_state_renewal(clp); > + return 0; > + } > + > + now = jiffies; > + status = nfs4_proc_get_lease_time(clp, &fsinfo); nfs4_proc_get_lease_time() is defined under a CONFIG_NFS_V4_1 block, so this still won't compile. As far as I can tell, there isn't anything v4.1 specific to nfs4_proc_get_lease_time() and the corresponding xdr code so it's probably safe to move all this out too. Anna > + if (status == 0) { > + nfs4_set_lease_period(clp, fsinfo.lease_time * HZ, > now); > + nfs4_schedule_state_renewal(clp); > + } > + > + return status; > +} > + > int nfs4_init_clientid(struct nfs_client *clp, const struct cred > *cred) > { > struct nfs4_setclientid_res clid = { > @@ -286,27 +307,6 @@ static int nfs4_begin_drain_session(struct > nfs_client *clp) > > #if defined(CONFIG_NFS_V4_1) > > -static int nfs4_setup_state_renewal(struct nfs_client *clp) > -{ > - int status; > - struct nfs_fsinfo fsinfo; > - unsigned long now; > - > - if (!test_bit(NFS_CS_CHECK_LEASE_TIME, &clp->cl_res_state)) { > - nfs4_schedule_state_renewal(clp); > - return 0; > - } > - > - now = jiffies; > - status = nfs4_proc_get_lease_time(clp, &fsinfo); > - if (status == 0) { > - nfs4_set_lease_period(clp, fsinfo.lease_time * HZ, > now); > - nfs4_schedule_state_renewal(clp); > - } > - > - return status; > -} > - > static void nfs41_finish_session_reset(struct nfs_client *clp) > { > clear_bit(NFS4CLNT_LEASE_CONFIRM, &clp->cl_state);