All of lore.kernel.org
 help / color / mirror / Atom feed
* [bytedance:6.6-velinux 5959/5959] drivers/block/nbd.c:1298 nbd_reconnect_socket() warn: inconsistent returns '&nsock->tx_lock'.
@ 2025-09-19 11:19 ` Dan Carpenter
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2025-09-19 10:40 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: jason.zeng@intel.com

tree:   https://github.com/bytedance/kernel.git 6.6-velinux
head:   267e33ff5e034d9f9222c229e6967b6ceb65e27a
commit: 454e732aaf9bdba6d2183f14939163e6a37dfbd3 [5959/5959] bytedance: nbd: Don't use workqueue to create recv threads
:::::: branch date: 26 hours ago
:::::: commit date: 26 hours ago
config: x86_64-randconfig-161-20250919 (https://download.01.org/0day-ci/archive/20250919/202509191844.UIjeXrdY-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0

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@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202509191844.UIjeXrdY-lkp@intel.com/

smatch warnings:
drivers/block/nbd.c:1298 nbd_reconnect_socket() warn: inconsistent returns '&nsock->tx_lock'.

vim +1298 drivers/block/nbd.c

23272a6754b81f Markus Schneider-Pargmann 2015-10-29  1229  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1230  static int nbd_reconnect_socket(struct nbd_device *nbd, unsigned long arg)
b7aa3d39385dc2 Josef Bacik               2017-04-06  1231  {
b7aa3d39385dc2 Josef Bacik               2017-04-06  1232  	struct nbd_config *config = nbd->config;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1233  	struct socket *sock, *old;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1234  	struct recv_thread_args *args;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1235  	int i;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1236  	int err;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1237  
cf1b2326b73489 Mike Christie             2019-10-17  1238  	sock = nbd_get_socket(nbd, arg, &err);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1239  	if (!sock)
b7aa3d39385dc2 Josef Bacik               2017-04-06  1240  		return err;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1241  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1242  	args = kzalloc(sizeof(*args), GFP_KERNEL);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1243  	if (!args) {
b7aa3d39385dc2 Josef Bacik               2017-04-06  1244  		sockfd_put(sock);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1245  		return -ENOMEM;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1246  	}
b7aa3d39385dc2 Josef Bacik               2017-04-06  1247  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1248  	for (i = 0; i < config->num_connections; i++) {
b7aa3d39385dc2 Josef Bacik               2017-04-06  1249  		struct nbd_sock *nsock = config->socks[i];
454e732aaf9bdb Xie Yongji                2021-12-17  1250  		struct task_struct *worker;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1251  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1252  		if (!nsock->dead)
b7aa3d39385dc2 Josef Bacik               2017-04-06  1253  			continue;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1254  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1255  		mutex_lock(&nsock->tx_lock);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1256  		if (!nsock->dead) {
b7aa3d39385dc2 Josef Bacik               2017-04-06  1257  			mutex_unlock(&nsock->tx_lock);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1258  			continue;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1259  		}
454e732aaf9bdb Xie Yongji                2021-12-17  1260  		worker = kthread_create(recv_work, args, "knbd%d.%d-recv",
454e732aaf9bdb Xie Yongji                2021-12-17  1261  					nbd->index, i);
454e732aaf9bdb Xie Yongji                2021-12-17  1262  		if (!worker) {
454e732aaf9bdb Xie Yongji                2021-12-17  1263  			sockfd_put(sock);
454e732aaf9bdb Xie Yongji                2021-12-17  1264  			kfree(args);
454e732aaf9bdb Xie Yongji                2021-12-17  1265  			return -ENOMEM;
454e732aaf9bdb Xie Yongji                2021-12-17  1266  		}
454e732aaf9bdb Xie Yongji                2021-12-17  1267  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1268  		sk_set_memalloc(sock->sk);
5eafd64a3bd2ab Hou Pu                    2020-11-06  1269  		if (nbd->tag_set.timeout &&
5eafd64a3bd2ab Hou Pu                    2020-11-06  1270  		    !test_bit(NBD_RT_WAIT_ON_TIMEOUT, &config->runtime_flags))
dc88e34d69d87c Josef Bacik               2017-06-08  1271  			sock->sk->sk_sndtimeo = nbd->tag_set.timeout;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1272  		atomic_inc(&config->recv_threads);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1273  		refcount_inc(&nbd->config_refs);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1274  		old = nsock->sock;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1275  		nsock->fallback_index = -1;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1276  		nsock->sock = sock;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1277  		nsock->dead = false;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1278  		args->index = i;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1279  		args->nbd = nbd;
7e62a555d99f2f Li Nan                    2023-09-11  1280  		args->nsock = nsock;
799f9a38bc9f55 Josef Bacik               2017-04-06  1281  		nsock->cookie++;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1282  		mutex_unlock(&nsock->tx_lock);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1283  		sockfd_put(old);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1284  
ec76a7b922e42d Xiubo Li                  2019-09-17  1285  		clear_bit(NBD_RT_DISCONNECTED, &config->runtime_flags);
7a362ea96d0df8 Josef Bacik               2017-07-25  1286  
b7aa3d39385dc2 Josef Bacik               2017-04-06  1287  		/* We take the tx_mutex in an error path in the recv_work, so we
b7aa3d39385dc2 Josef Bacik               2017-04-06  1288  		 * need to queue_work outside of the tx_mutex.
b7aa3d39385dc2 Josef Bacik               2017-04-06  1289  		 */
454e732aaf9bdb Xie Yongji                2021-12-17  1290  		wake_up_process(worker);
560bc4b39952ed Josef Bacik               2017-04-06  1291  
560bc4b39952ed Josef Bacik               2017-04-06  1292  		atomic_inc(&config->live_connections);
560bc4b39952ed Josef Bacik               2017-04-06  1293  		wake_up(&config->conn_wait);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1294  		return 0;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1295  	}
b7aa3d39385dc2 Josef Bacik               2017-04-06  1296  	sockfd_put(sock);
b7aa3d39385dc2 Josef Bacik               2017-04-06  1297  	kfree(args);
b7aa3d39385dc2 Josef Bacik               2017-04-06 @1298  	return -ENOSPC;
b7aa3d39385dc2 Josef Bacik               2017-04-06  1299  }
b7aa3d39385dc2 Josef Bacik               2017-04-06  1300  

:::::: The code at line 1298 was first introduced by commit
:::::: b7aa3d39385dc2d95899f9e379623fef446a2acd nbd: add a reconfigure netlink command

:::::: TO: Josef Bacik <josef@toxicpanda.com>
:::::: CC: Jens Axboe <axboe@fb.com>

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-09-19 11:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-19 10:40 [bytedance:6.6-velinux 5959/5959] drivers/block/nbd.c:1298 nbd_reconnect_socket() warn: inconsistent returns '&nsock->tx_lock' kernel test robot
2025-09-19 11:19 ` Dan Carpenter

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.