lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202512111949.7OSsjLSn-lkp@intel.com>
Date: Thu, 11 Dec 2025 20:27:43 +0800
From: kernel test robot <lkp@...el.com>
To: Pycode <pycode42@...il.com>, Trond Myklebust <trondmy@...nel.org>,
	Anna Schumaker <anna@...nel.org>, linux-nfs@...r.kernel.org,
	linux-kernel@...r.kernel.org
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev
Subject: Re: [PATCH] Removed unused variable

Hi Pycode,

kernel test robot noticed the following build errors:

[auto build test ERROR on trondmy-nfs/linux-next]
[also build test ERROR on linus/master v6.18 next-20251211]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Pycode/Removed-unused-variable/20251211-050134
base:   git://git.linux-nfs.org/projects/trondmy/linux-nfs.git linux-next
patch link:    https://lore.kernel.org/r/aTnfSQJ4QsfwTSf0%40raspberrypi
patch subject: [PATCH] Removed unused variable
config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20251211/202512111949.7OSsjLSn-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251211/202512111949.7OSsjLSn-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512111949.7OSsjLSn-lkp@intel.com/

All errors (new ones prefixed by >>):

>> fs/nfs/flexfilelayout/flexfilelayoutdev.c:182:48: error: use of undeclared identifier 'ret'; did you mean 'net'?
     182 |         dprintk("%s ERROR: returning %d\n", __func__, ret);
         |                                                       ^~~
         |                                                       net
   include/linux/sunrpc/debug.h:25:28: note: expanded from macro 'dprintk'
      25 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |                                   ^
   include/linux/sunrpc/debug.h:42:26: note: expanded from macro 'dfprintk'
      42 |                 __sunrpc_printk(fmt, ##__VA_ARGS__);                    \
         |                                        ^
   include/linux/sunrpc/debug.h:34:57: note: expanded from macro '__sunrpc_printk'
      34 | #  define __sunrpc_printk(fmt, ...)     trace_printk(fmt, ##__VA_ARGS__)
         |                                                             ^
   include/linux/kernel.h:276:26: note: expanded from macro 'trace_printk'
     276 |                 do_trace_printk(fmt, ##__VA_ARGS__);    \
         |                                        ^
   include/linux/kernel.h:287:37: note: expanded from macro 'do_trace_printk'
     287 |         __trace_printk_check_format(fmt, ##args);                       \
         |                                            ^
   include/linux/kernel.h:239:40: note: expanded from macro '__trace_printk_check_format'
     239 |                 ____trace_printk_check_format(fmt, ##args);             \
         |                                                      ^
   fs/nfs/flexfilelayout/flexfilelayoutdev.c:52:14: note: 'net' declared here
      52 |         struct net *net = server->nfs_client->cl_net;
         |                     ^
>> fs/nfs/flexfilelayout/flexfilelayoutdev.c:182:48: error: use of undeclared identifier 'ret'; did you mean 'net'?
     182 |         dprintk("%s ERROR: returning %d\n", __func__, ret);
         |                                                       ^~~
         |                                                       net
   include/linux/sunrpc/debug.h:25:28: note: expanded from macro 'dprintk'
      25 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |                                   ^
   include/linux/sunrpc/debug.h:42:26: note: expanded from macro 'dfprintk'
      42 |                 __sunrpc_printk(fmt, ##__VA_ARGS__);                    \
         |                                        ^
   include/linux/sunrpc/debug.h:34:57: note: expanded from macro '__sunrpc_printk'
      34 | #  define __sunrpc_printk(fmt, ...)     trace_printk(fmt, ##__VA_ARGS__)
         |                                                             ^
   include/linux/kernel.h:276:26: note: expanded from macro 'trace_printk'
     276 |                 do_trace_printk(fmt, ##__VA_ARGS__);    \
         |                                        ^
   include/linux/kernel.h:290:50: note: expanded from macro 'do_trace_printk'
     290 |                 __trace_bprintk(_THIS_IP_, trace_printk_fmt, ##args);   \
         |                                                                ^
   fs/nfs/flexfilelayout/flexfilelayoutdev.c:52:14: note: 'net' declared here
      52 |         struct net *net = server->nfs_client->cl_net;
         |                     ^
>> fs/nfs/flexfilelayout/flexfilelayoutdev.c:182:48: error: use of undeclared identifier 'ret'; did you mean 'net'?
     182 |         dprintk("%s ERROR: returning %d\n", __func__, ret);
         |                                                       ^~~
         |                                                       net
   include/linux/sunrpc/debug.h:25:28: note: expanded from macro 'dprintk'
      25 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |                                   ^
   include/linux/sunrpc/debug.h:42:26: note: expanded from macro 'dfprintk'
      42 |                 __sunrpc_printk(fmt, ##__VA_ARGS__);                    \
         |                                        ^
   include/linux/sunrpc/debug.h:34:57: note: expanded from macro '__sunrpc_printk'
      34 | #  define __sunrpc_printk(fmt, ...)     trace_printk(fmt, ##__VA_ARGS__)
         |                                                             ^
   include/linux/kernel.h:276:26: note: expanded from macro 'trace_printk'
     276 |                 do_trace_printk(fmt, ##__VA_ARGS__);    \
         |                                        ^
   include/linux/kernel.h:292:36: note: expanded from macro 'do_trace_printk'
     292 |                 __trace_printk(_THIS_IP_, fmt, ##args);                 \
         |                                                  ^
   fs/nfs/flexfilelayout/flexfilelayoutdev.c:52:14: note: 'net' declared here
      52 |         struct net *net = server->nfs_client->cl_net;
         |                     ^
   3 errors generated.


vim +182 fs/nfs/flexfilelayout/flexfilelayoutdev.c

d67ae825a59d63 Tom Haynes       2014-12-11   39  
d67ae825a59d63 Tom Haynes       2014-12-11   40  /* Decode opaque device data and construct new_ds using it */
d67ae825a59d63 Tom Haynes       2014-12-11   41  struct nfs4_ff_layout_ds *
d67ae825a59d63 Tom Haynes       2014-12-11   42  nfs4_ff_alloc_deviceid_node(struct nfs_server *server, struct pnfs_device *pdev,
d67ae825a59d63 Tom Haynes       2014-12-11   43  			    gfp_t gfp_flags)
d67ae825a59d63 Tom Haynes       2014-12-11   44  {
d67ae825a59d63 Tom Haynes       2014-12-11   45  	struct xdr_stream stream;
d67ae825a59d63 Tom Haynes       2014-12-11   46  	struct xdr_buf buf;
4b7c3b4c673d40 Anna Schumaker   2025-06-30   47  	struct folio *scratch;
d67ae825a59d63 Tom Haynes       2014-12-11   48  	struct list_head dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11   49  	struct nfs4_pnfs_ds_addr *da;
d67ae825a59d63 Tom Haynes       2014-12-11   50  	struct nfs4_ff_layout_ds *new_ds = NULL;
d67ae825a59d63 Tom Haynes       2014-12-11   51  	struct nfs4_ff_ds_version *ds_versions = NULL;
6b9785dc8b13d9 Jeff Layton      2025-04-10   52  	struct net *net = server->nfs_client->cl_net;
d67ae825a59d63 Tom Haynes       2014-12-11   53  	u32 mp_count;
d67ae825a59d63 Tom Haynes       2014-12-11   54  	u32 version_count;
d67ae825a59d63 Tom Haynes       2014-12-11   55  	__be32 *p;
07df4d912b7c38 Pycode           2025-12-10   56  	int i = -ENOMEM;
d67ae825a59d63 Tom Haynes       2014-12-11   57  
d67ae825a59d63 Tom Haynes       2014-12-11   58  	/* set up xdr stream */
4b7c3b4c673d40 Anna Schumaker   2025-06-30   59  	scratch = folio_alloc(gfp_flags, 0);
d67ae825a59d63 Tom Haynes       2014-12-11   60  	if (!scratch)
d67ae825a59d63 Tom Haynes       2014-12-11   61  		goto out_err;
d67ae825a59d63 Tom Haynes       2014-12-11   62  
d67ae825a59d63 Tom Haynes       2014-12-11   63  	new_ds = kzalloc(sizeof(struct nfs4_ff_layout_ds), gfp_flags);
d67ae825a59d63 Tom Haynes       2014-12-11   64  	if (!new_ds)
d67ae825a59d63 Tom Haynes       2014-12-11   65  		goto out_scratch;
d67ae825a59d63 Tom Haynes       2014-12-11   66  
d67ae825a59d63 Tom Haynes       2014-12-11   67  	nfs4_init_deviceid_node(&new_ds->id_node,
d67ae825a59d63 Tom Haynes       2014-12-11   68  				server,
d67ae825a59d63 Tom Haynes       2014-12-11   69  				&pdev->dev_id);
d67ae825a59d63 Tom Haynes       2014-12-11   70  	INIT_LIST_HEAD(&dsaddrs);
d67ae825a59d63 Tom Haynes       2014-12-11   71  
d67ae825a59d63 Tom Haynes       2014-12-11   72  	xdr_init_decode_pages(&stream, &buf, pdev->pages, pdev->pglen);
4b7c3b4c673d40 Anna Schumaker   2025-06-30   73  	xdr_set_scratch_folio(&stream, scratch);
d67ae825a59d63 Tom Haynes       2014-12-11   74  
d67ae825a59d63 Tom Haynes       2014-12-11   75  	/* multipath count */
d67ae825a59d63 Tom Haynes       2014-12-11   76  	p = xdr_inline_decode(&stream, 4);
d67ae825a59d63 Tom Haynes       2014-12-11   77  	if (unlikely(!p))
d67ae825a59d63 Tom Haynes       2014-12-11   78  		goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11   79  	mp_count = be32_to_cpup(p);
d67ae825a59d63 Tom Haynes       2014-12-11   80  	dprintk("%s: multipath ds count %d\n", __func__, mp_count);
d67ae825a59d63 Tom Haynes       2014-12-11   81  
d67ae825a59d63 Tom Haynes       2014-12-11   82  	for (i = 0; i < mp_count; i++) {
d67ae825a59d63 Tom Haynes       2014-12-11   83  		/* multipath ds */
6b9785dc8b13d9 Jeff Layton      2025-04-10   84  		da = nfs4_decode_mp_ds_addr(net, &stream, gfp_flags);
d67ae825a59d63 Tom Haynes       2014-12-11   85  		if (da)
d67ae825a59d63 Tom Haynes       2014-12-11   86  			list_add_tail(&da->da_node, &dsaddrs);
d67ae825a59d63 Tom Haynes       2014-12-11   87  	}
d67ae825a59d63 Tom Haynes       2014-12-11   88  	if (list_empty(&dsaddrs)) {
d67ae825a59d63 Tom Haynes       2014-12-11   89  		dprintk("%s: no suitable DS addresses found\n",
d67ae825a59d63 Tom Haynes       2014-12-11   90  			__func__);
d67ae825a59d63 Tom Haynes       2014-12-11   91  		goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11   92  	}
d67ae825a59d63 Tom Haynes       2014-12-11   93  
d67ae825a59d63 Tom Haynes       2014-12-11   94  	/* version count */
d67ae825a59d63 Tom Haynes       2014-12-11   95  	p = xdr_inline_decode(&stream, 4);
d67ae825a59d63 Tom Haynes       2014-12-11   96  	if (unlikely(!p))
d67ae825a59d63 Tom Haynes       2014-12-11   97  		goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11   98  	version_count = be32_to_cpup(p);
d67ae825a59d63 Tom Haynes       2014-12-11   99  	dprintk("%s: version count %d\n", __func__, version_count);
d67ae825a59d63 Tom Haynes       2014-12-11  100  
6396bb221514d2 Kees Cook        2018-06-12  101  	ds_versions = kcalloc(version_count,
6396bb221514d2 Kees Cook        2018-06-12  102  			      sizeof(struct nfs4_ff_ds_version),
d67ae825a59d63 Tom Haynes       2014-12-11  103  			      gfp_flags);
d67ae825a59d63 Tom Haynes       2014-12-11  104  	if (!ds_versions)
d67ae825a59d63 Tom Haynes       2014-12-11  105  		goto out_scratch;
d67ae825a59d63 Tom Haynes       2014-12-11  106  
d67ae825a59d63 Tom Haynes       2014-12-11  107  	for (i = 0; i < version_count; i++) {
d67ae825a59d63 Tom Haynes       2014-12-11  108  		/* 20 = version(4) + minor_version(4) + rsize(4) + wsize(4) +
d67ae825a59d63 Tom Haynes       2014-12-11  109  		 * tightly_coupled(4) */
d67ae825a59d63 Tom Haynes       2014-12-11  110  		p = xdr_inline_decode(&stream, 20);
d67ae825a59d63 Tom Haynes       2014-12-11  111  		if (unlikely(!p))
d67ae825a59d63 Tom Haynes       2014-12-11  112  			goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11  113  		ds_versions[i].version = be32_to_cpup(p++);
d67ae825a59d63 Tom Haynes       2014-12-11  114  		ds_versions[i].minor_version = be32_to_cpup(p++);
940261a195080c Anna Schumaker   2022-06-17  115  		ds_versions[i].rsize = nfs_io_size(be32_to_cpup(p++),
940261a195080c Anna Schumaker   2022-06-17  116  						   server->nfs_client->cl_proto);
940261a195080c Anna Schumaker   2022-06-17  117  		ds_versions[i].wsize = nfs_io_size(be32_to_cpup(p++),
940261a195080c Anna Schumaker   2022-06-17  118  						   server->nfs_client->cl_proto);
d67ae825a59d63 Tom Haynes       2014-12-11  119  		ds_versions[i].tightly_coupled = be32_to_cpup(p);
d67ae825a59d63 Tom Haynes       2014-12-11  120  
d67ae825a59d63 Tom Haynes       2014-12-11  121  		if (ds_versions[i].rsize > NFS_MAX_FILE_IO_SIZE)
d67ae825a59d63 Tom Haynes       2014-12-11  122  			ds_versions[i].rsize = NFS_MAX_FILE_IO_SIZE;
d67ae825a59d63 Tom Haynes       2014-12-11  123  		if (ds_versions[i].wsize > NFS_MAX_FILE_IO_SIZE)
d67ae825a59d63 Tom Haynes       2014-12-11  124  			ds_versions[i].wsize = NFS_MAX_FILE_IO_SIZE;
d67ae825a59d63 Tom Haynes       2014-12-11  125  
a7878ca140084e Tigran Mkrtchyan 2017-04-04  126  		/*
a7878ca140084e Tigran Mkrtchyan 2017-04-04  127  		 * check for valid major/minor combination.
a7878ca140084e Tigran Mkrtchyan 2017-04-04  128  		 * currently we support dataserver which talk:
a7878ca140084e Tigran Mkrtchyan 2017-04-04  129  		 *   v3, v4.0, v4.1, v4.2
a7878ca140084e Tigran Mkrtchyan 2017-04-04  130  		 */
a7878ca140084e Tigran Mkrtchyan 2017-04-04  131  		if (!((ds_versions[i].version == 3 && ds_versions[i].minor_version == 0) ||
a7878ca140084e Tigran Mkrtchyan 2017-04-04  132  			(ds_versions[i].version == 4 && ds_versions[i].minor_version < 3))) {
d67ae825a59d63 Tom Haynes       2014-12-11  133  			dprintk("%s: [%d] unsupported ds version %d-%d\n", __func__,
d67ae825a59d63 Tom Haynes       2014-12-11  134  				i, ds_versions[i].version,
d67ae825a59d63 Tom Haynes       2014-12-11  135  				ds_versions[i].minor_version);
d67ae825a59d63 Tom Haynes       2014-12-11  136  			goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11  137  		}
d67ae825a59d63 Tom Haynes       2014-12-11  138  
d67ae825a59d63 Tom Haynes       2014-12-11  139  		dprintk("%s: [%d] vers %u minor_ver %u rsize %u wsize %u coupled %d\n",
d67ae825a59d63 Tom Haynes       2014-12-11  140  			__func__, i, ds_versions[i].version,
d67ae825a59d63 Tom Haynes       2014-12-11  141  			ds_versions[i].minor_version,
d67ae825a59d63 Tom Haynes       2014-12-11  142  			ds_versions[i].rsize,
d67ae825a59d63 Tom Haynes       2014-12-11  143  			ds_versions[i].wsize,
d67ae825a59d63 Tom Haynes       2014-12-11  144  			ds_versions[i].tightly_coupled);
d67ae825a59d63 Tom Haynes       2014-12-11  145  	}
d67ae825a59d63 Tom Haynes       2014-12-11  146  
d67ae825a59d63 Tom Haynes       2014-12-11  147  	new_ds->ds_versions = ds_versions;
d67ae825a59d63 Tom Haynes       2014-12-11  148  	new_ds->ds_versions_cnt = version_count;
d67ae825a59d63 Tom Haynes       2014-12-11  149  
6b9785dc8b13d9 Jeff Layton      2025-04-10  150  	new_ds->ds = nfs4_pnfs_ds_add(net, &dsaddrs, gfp_flags);
d67ae825a59d63 Tom Haynes       2014-12-11  151  	if (!new_ds->ds)
d67ae825a59d63 Tom Haynes       2014-12-11  152  		goto out_err_drain_dsaddrs;
d67ae825a59d63 Tom Haynes       2014-12-11  153  
d67ae825a59d63 Tom Haynes       2014-12-11  154  	/* If DS was already in cache, free ds addrs */
d67ae825a59d63 Tom Haynes       2014-12-11  155  	while (!list_empty(&dsaddrs)) {
d67ae825a59d63 Tom Haynes       2014-12-11  156  		da = list_first_entry(&dsaddrs,
d67ae825a59d63 Tom Haynes       2014-12-11  157  				      struct nfs4_pnfs_ds_addr,
d67ae825a59d63 Tom Haynes       2014-12-11  158  				      da_node);
d67ae825a59d63 Tom Haynes       2014-12-11  159  		list_del_init(&da->da_node);
d67ae825a59d63 Tom Haynes       2014-12-11  160  		kfree(da->da_remotestr);
d67ae825a59d63 Tom Haynes       2014-12-11  161  		kfree(da);
d67ae825a59d63 Tom Haynes       2014-12-11  162  	}
d67ae825a59d63 Tom Haynes       2014-12-11  163  
4b7c3b4c673d40 Anna Schumaker   2025-06-30  164  	folio_put(scratch);
d67ae825a59d63 Tom Haynes       2014-12-11  165  	return new_ds;
d67ae825a59d63 Tom Haynes       2014-12-11  166  
d67ae825a59d63 Tom Haynes       2014-12-11  167  out_err_drain_dsaddrs:
d67ae825a59d63 Tom Haynes       2014-12-11  168  	while (!list_empty(&dsaddrs)) {
d67ae825a59d63 Tom Haynes       2014-12-11  169  		da = list_first_entry(&dsaddrs, struct nfs4_pnfs_ds_addr,
d67ae825a59d63 Tom Haynes       2014-12-11  170  				      da_node);
d67ae825a59d63 Tom Haynes       2014-12-11  171  		list_del_init(&da->da_node);
d67ae825a59d63 Tom Haynes       2014-12-11  172  		kfree(da->da_remotestr);
d67ae825a59d63 Tom Haynes       2014-12-11  173  		kfree(da);
d67ae825a59d63 Tom Haynes       2014-12-11  174  	}
d67ae825a59d63 Tom Haynes       2014-12-11  175  
d67ae825a59d63 Tom Haynes       2014-12-11  176  	kfree(ds_versions);
d67ae825a59d63 Tom Haynes       2014-12-11  177  out_scratch:
4b7c3b4c673d40 Anna Schumaker   2025-06-30  178  	folio_put(scratch);
d67ae825a59d63 Tom Haynes       2014-12-11  179  out_err:
d67ae825a59d63 Tom Haynes       2014-12-11  180  	kfree(new_ds);
d67ae825a59d63 Tom Haynes       2014-12-11  181  
d67ae825a59d63 Tom Haynes       2014-12-11 @182  	dprintk("%s ERROR: returning %d\n", __func__, ret);
d67ae825a59d63 Tom Haynes       2014-12-11  183  	return NULL;
d67ae825a59d63 Tom Haynes       2014-12-11  184  }
d67ae825a59d63 Tom Haynes       2014-12-11  185  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ