diff mbox series

[1/1] NFSD: Fix warning unused SSC variables from kernel test robot.

Message ID 20210419213556.75204-1-dai.ngo@oracle.com (mailing list archive)
State New, archived
Headers show
Series [1/1] NFSD: Fix warning unused SSC variables from kernel test robot. | expand

Commit Message

Dai Ngo April 19, 2021, 9:35 p.m. UTC
Compiler warning unused variables when NFS_V4_2 is configured and
NFSD_V4 is not:

fs/nfs/super.c:90:40: warning: unused variable 'nfs_ssc_clnt_ops_tbl'
static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {

fs/nfs/nfs4file.c:410:41: warning: unused variable 'nfs4_ssc_clnt_ops_tbl'
static const struct nfs4_ssc_client_ops nfs4_ssc_clnt_ops_tbl = {

Fix by moving nfs_ssc_clnt_ops_tbl and nfs4_ssc_clnt_ops_tbl to
under NFSD_V4 since they are only used when NFSD_V4 is configured.

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
---
 fs/nfs/nfs4file.c | 2 ++
 fs/nfs/super.c    | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

Comments

Chuck Lever April 19, 2021, 9:40 p.m. UTC | #1
Hello Dai-

> On Apr 19, 2021, at 5:35 PM, Dai Ngo <dai.ngo@oracle.com> wrote:
> 
> Compiler warning unused variables when NFS_V4_2 is configured and
> NFSD_V4 is not:
> 
> fs/nfs/super.c:90:40: warning: unused variable 'nfs_ssc_clnt_ops_tbl'
> static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {
> 
> fs/nfs/nfs4file.c:410:41: warning: unused variable 'nfs4_ssc_clnt_ops_tbl'
> static const struct nfs4_ssc_client_ops nfs4_ssc_clnt_ops_tbl = {
> 
> Fix by moving nfs_ssc_clnt_ops_tbl and nfs4_ssc_clnt_ops_tbl to
> under NFSD_V4 since they are only used when NFSD_V4 is configured.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
> ---
> fs/nfs/nfs4file.c | 2 ++
> fs/nfs/super.c    | 2 +-
> 2 files changed, 3 insertions(+), 1 deletion(-)

I think because these are client-side source files, the patch
should go to Trond.


> diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c
> index 441a2fa073c8..400c8db05808 100644
> --- a/fs/nfs/nfs4file.c
> +++ b/fs/nfs/nfs4file.c
> @@ -313,6 +313,7 @@ static loff_t nfs42_remap_file_range(struct file *src_file, loff_t src_off,
> 	return ret < 0 ? ret : count;
> }
> 
> +#ifdef CONFIG_NFSD_V4
> static int read_name_gen = 1;
> #define SSC_READ_NAME_BODY "ssc_read_%d"
> 
> @@ -411,6 +412,7 @@ static const struct nfs4_ssc_client_ops nfs4_ssc_clnt_ops_tbl = {
> 	.sco_open = __nfs42_ssc_open,
> 	.sco_close = __nfs42_ssc_close,
> };
> +#endif	/* CONFIG_NFSD_V4 */
> 
> /**
>  * nfs42_ssc_register_ops - Wrapper to register NFS_V4 ops in nfs_common
> diff --git a/fs/nfs/super.c b/fs/nfs/super.c
> index 94885c6f8f54..a7af01bad344 100644
> --- a/fs/nfs/super.c
> +++ b/fs/nfs/super.c
> @@ -86,7 +86,7 @@ const struct super_operations nfs_sops = {
> };
> EXPORT_SYMBOL_GPL(nfs_sops);
> 
> -#ifdef CONFIG_NFS_V4_2
> +#ifdef CONFIG_NFSD_V4
> static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {
> 	.sco_sb_deactive = nfs_sb_deactive,
> };
> -- 
> 2.9.5
> 

--
Chuck Lever
Trond Myklebust April 19, 2021, 10:01 p.m. UTC | #2
On Mon, 2021-04-19 at 21:40 +0000, Chuck Lever III wrote:
> Hello Dai-
> 
> > On Apr 19, 2021, at 5:35 PM, Dai Ngo <dai.ngo@oracle.com> wrote:
> > 
> > Compiler warning unused variables when NFS_V4_2 is configured and
> > NFSD_V4 is not:
> > 
> > fs/nfs/super.c:90:40: warning: unused variable
> > 'nfs_ssc_clnt_ops_tbl'
> > static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {
> > 
> > fs/nfs/nfs4file.c:410:41: warning: unused variable
> > 'nfs4_ssc_clnt_ops_tbl'
> > static const struct nfs4_ssc_client_ops nfs4_ssc_clnt_ops_tbl = {
> > 
> > Fix by moving nfs_ssc_clnt_ops_tbl and nfs4_ssc_clnt_ops_tbl to
> > under NFSD_V4 since they are only used when NFSD_V4 is configured.
> > 
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
> > ---
> > fs/nfs/nfs4file.c | 2 ++
> > fs/nfs/super.c    | 2 +-
> > 2 files changed, 3 insertions(+), 1 deletion(-)
> 
> I think because these are client-side source files, the patch
> should go to Trond.
> 

I don't want anything in the NFS client that depends on CONFIG_NFSD. 

Now that I'm aware of the issue, I'd rather want to see a patch that
removes the existing CONFIG_NFSD_V4 #ifdefs from fs/nfs/nfs4file.c and
fs/nfs/super.c.
The code in fs/nfs_common was supposed to fix the problem of cross
coupling between the NFS client and server code, not add to it.

> 
> > diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c
> > index 441a2fa073c8..400c8db05808 100644
> > --- a/fs/nfs/nfs4file.c
> > +++ b/fs/nfs/nfs4file.c
> > @@ -313,6 +313,7 @@ static loff_t nfs42_remap_file_range(struct
> > file *src_file, loff_t src_off,
> >         return ret < 0 ? ret : count;
> > }
> > 
> > +#ifdef CONFIG_NFSD_V4
> > static int read_name_gen = 1;
> > #define SSC_READ_NAME_BODY "ssc_read_%d"
> > 
> > @@ -411,6 +412,7 @@ static const struct nfs4_ssc_client_ops
> > nfs4_ssc_clnt_ops_tbl = {
> >         .sco_open = __nfs42_ssc_open,
> >         .sco_close = __nfs42_ssc_close,
> > };
> > +#endif /* CONFIG_NFSD_V4 */
> > 
> > /**
> >  * nfs42_ssc_register_ops - Wrapper to register NFS_V4 ops in
> > nfs_common
> > diff --git a/fs/nfs/super.c b/fs/nfs/super.c
> > index 94885c6f8f54..a7af01bad344 100644
> > --- a/fs/nfs/super.c
> > +++ b/fs/nfs/super.c
> > @@ -86,7 +86,7 @@ const struct super_operations nfs_sops = {
> > };
> > EXPORT_SYMBOL_GPL(nfs_sops);
> > 
> > -#ifdef CONFIG_NFS_V4_2
> > +#ifdef CONFIG_NFSD_V4
> > static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {
> >         .sco_sb_deactive = nfs_sb_deactive,
> > };
> > -- 
> > 2.9.5
> > 
> 
> --
> Chuck Lever
> 
> 
>
diff mbox series

Patch

diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c
index 441a2fa073c8..400c8db05808 100644
--- a/fs/nfs/nfs4file.c
+++ b/fs/nfs/nfs4file.c
@@ -313,6 +313,7 @@  static loff_t nfs42_remap_file_range(struct file *src_file, loff_t src_off,
 	return ret < 0 ? ret : count;
 }
 
+#ifdef CONFIG_NFSD_V4
 static int read_name_gen = 1;
 #define SSC_READ_NAME_BODY "ssc_read_%d"
 
@@ -411,6 +412,7 @@  static const struct nfs4_ssc_client_ops nfs4_ssc_clnt_ops_tbl = {
 	.sco_open = __nfs42_ssc_open,
 	.sco_close = __nfs42_ssc_close,
 };
+#endif	/* CONFIG_NFSD_V4 */
 
 /**
  * nfs42_ssc_register_ops - Wrapper to register NFS_V4 ops in nfs_common
diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index 94885c6f8f54..a7af01bad344 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -86,7 +86,7 @@  const struct super_operations nfs_sops = {
 };
 EXPORT_SYMBOL_GPL(nfs_sops);
 
-#ifdef CONFIG_NFS_V4_2
+#ifdef CONFIG_NFSD_V4
 static const struct nfs_ssc_client_ops nfs_ssc_clnt_ops_tbl = {
 	.sco_sb_deactive = nfs_sb_deactive,
 };