* fs/smb/client/connect.c:3360 generic_ip_connect() error: we previously assumed 'server->ssocket' could be null (see line 3347)
@ 2026-03-22 18:12 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-03-22 18:12 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Kuniyuki Iwashima <kuniyu@amazon.com>
CC: Steve French <stfrench@microsoft.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 113ae7b4decc6c2d95bdbbe52e615a0137ef7f9f
commit: 95d2b9f693ff2a1180a23d7d59acc0c4e72f4c41 Revert "smb: client: fix TCP timers deadlock after rmmod"
date: 11 months ago
:::::: branch date: 26 hours ago
:::::: commit date: 11 months ago
config: hexagon-randconfig-r072-20260322 (https://download.01.org/0day-ci/archive/20260323/202603230251.8scooaYz-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
smatch: v0.5.0-9004-gb810ac53
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/202603230251.8scooaYz-lkp@intel.com/
smatch warnings:
fs/smb/client/connect.c:3360 generic_ip_connect() error: we previously assumed 'server->ssocket' could be null (see line 3347)
vim +3360 fs/smb/client/connect.c
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3317
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3318 static int
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3319 generic_ip_connect(struct TCP_Server_Info *server)
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3320 {
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3321 struct sockaddr *saddr;
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3322 struct socket *socket;
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3323 int slen, sfamily;
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3324 __be16 sport;
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3325 int rc = 0;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3326
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3327 saddr = (struct sockaddr *) &server->dstaddr;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3328
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3329 if (server->dstaddr.ss_family == AF_INET6) {
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3330 struct sockaddr_in6 *ipv6 = (struct sockaddr_in6 *)&server->dstaddr;
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3331
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3332 sport = ipv6->sin6_port;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3333 slen = sizeof(struct sockaddr_in6);
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3334 sfamily = AF_INET6;
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3335 cifs_dbg(FYI, "%s: connecting to [%pI6]:%d\n", __func__, &ipv6->sin6_addr,
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3336 ntohs(sport));
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3337 } else {
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3338 struct sockaddr_in *ipv4 = (struct sockaddr_in *)&server->dstaddr;
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3339
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3340 sport = ipv4->sin_port;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3341 slen = sizeof(struct sockaddr_in);
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3342 sfamily = AF_INET;
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3343 cifs_dbg(FYI, "%s: connecting to %pI4:%d\n", __func__, &ipv4->sin_addr,
def6e1dc178168 fs/cifs/connect.c Samuel Cabrero 2020-10-16 3344 ntohs(sport));
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3345 }
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3346
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 @3347 if (server->ssocket) {
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3348 socket = server->ssocket;
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3349 } else {
ef7134c7fc48e1 fs/smb/client/connect.c Kuniyuki Iwashima 2024-11-02 3350 struct net *net = cifs_net_ns(server);
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3351 struct sock *sk;
ef7134c7fc48e1 fs/smb/client/connect.c Kuniyuki Iwashima 2024-11-02 3352
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3353 rc = __sock_create(net, sfamily, SOCK_STREAM,
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3354 IPPROTO_TCP, &server->ssocket, 1);
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3355 if (rc < 0) {
afe6f65353b644 fs/cifs/connect.c Ronnie Sahlberg 2019-08-28 3356 cifs_server_dbg(VFS, "Error %d creating socket\n", rc);
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3357 return rc;
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3358 }
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3359
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 @3360 sk = server->ssocket->sk;
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3361 __netns_tracker_free(net, &sk->ns_tracker, false);
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3362 sk->sk_net_refcnt = 1;
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3363 get_net_track(net, &sk->ns_tracker, GFP_KERNEL);
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3364 sock_inuse_add(net, 1);
ef7134c7fc48e1 fs/smb/client/connect.c Kuniyuki Iwashima 2024-11-02 3365
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3366 /* BB other socket options to set KEEPALIVE, NODELAY? */
f96637be081141 fs/cifs/connect.c Joe Perches 2013-05-04 3367 cifs_dbg(FYI, "Socket created\n");
f0b6a834a8f0d2 fs/smb/client/connect.c Paulo Alcantara 2023-06-19 3368 socket = server->ssocket;
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3369 socket->sk->sk_allocation = GFP_NOFS;
98123866fcf3fe fs/cifs/connect.c Benjamin Coddington 2022-12-16 3370 socket->sk->sk_use_task_frag = false;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3371 if (sfamily == AF_INET6)
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3372 cifs_reclassify_socket6(socket);
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3373 else
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3374 cifs_reclassify_socket4(socket);
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3375 }
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3376
3eb9a8893a76cf fs/cifs/connect.c Ben Greear 2010-09-01 3377 rc = bind_socket(server);
95d2b9f693ff2a fs/smb/client/connect.c Kuniyuki Iwashima 2025-04-02 3378 if (rc < 0)
3eb9a8893a76cf fs/cifs/connect.c Ben Greear 2010-09-01 3379 return rc;
3eb9a8893a76cf fs/cifs/connect.c Ben Greear 2010-09-01 3380
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3381 /*
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3382 * Eventually check for other socket options to change from
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3383 * the default. sock_setsockopt not used because it expects
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3384 * user space buffer
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3385 */
d5c5605c27c92d fs/cifs/connect.c Jeff Layton 2008-12-01 3386 socket->sk->sk_rcvtimeo = 7 * HZ;
da505c386c9f99 fs/cifs/connect.c Steve French 2009-01-19 3387 socket->sk->sk_sndtimeo = 5 * HZ;
6a5fa2362b628e fs/cifs/connect.c Steve French 2010-01-01 3388
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3389 /* make the bufsizes depend on wsize/rsize and max requests */
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3390 if (server->noautotune) {
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3391 if (socket->sk->sk_sndbuf < (200 * 1024))
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3392 socket->sk->sk_sndbuf = 200 * 1024;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3393 if (socket->sk->sk_rcvbuf < (140 * 1024))
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3394 socket->sk->sk_rcvbuf = 140 * 1024;
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3395 }
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3396
12abc5ee7873a0 fs/cifs/connect.c Christoph Hellwig 2020-05-28 3397 if (server->tcp_nodelay)
12abc5ee7873a0 fs/cifs/connect.c Christoph Hellwig 2020-05-28 3398 tcp_sock_set_nodelay(socket->sk);
6a5fa2362b628e fs/cifs/connect.c Steve French 2010-01-01 3399
f96637be081141 fs/cifs/connect.c Joe Perches 2013-05-04 3400 cifs_dbg(FYI, "sndbuf %d rcvbuf %d rcvtimeo 0x%lx\n",
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3401 socket->sk->sk_sndbuf,
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3402 socket->sk->sk_rcvbuf, socket->sk->sk_rcvtimeo);
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3403
cedc019b9f260f fs/smb/client/connect.c Jordan Rife 2023-10-03 3404 rc = kernel_connect(socket, saddr, slen,
8eecd1c2e5bc73 fs/cifs/connect.c Paulo Alcantara (SUSE 2019-07-16 3405) server->noblockcnt ? O_NONBLOCK : 0);
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3406) /*
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3407) * When mounting SMB root file systems, we do not want to block in
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3408) * connect. Otherwise bail out and then let cifs_reconnect() perform
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3409) * reconnect failover - if possible.
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3410) */
d532cc7efdfd7b fs/cifs/connect.c Paulo Alcantara (SUSE 2019-10-10 3411) if (server->noblockcnt && rc == -EINPROGRESS)
8eecd1c2e5bc73 fs/cifs/connect.c Paulo Alcantara (SUSE 2019-07-16 3412) rc = 0;
ee1b3ea9e6171d fs/cifs/connect.c Jeff Layton 2011-06-21 3413 if (rc < 0) {
f96637be081141 fs/cifs/connect.c Joe Perches 2013-05-04 3414 cifs_dbg(FYI, "Error %d connecting to server\n", rc);
d7171cd1acf70e fs/cifs/connect.c Steve French 2021-11-04 3415 trace_smb3_connect_err(server->hostname, server->conn_id, &server->dstaddr, rc);
ee1b3ea9e6171d fs/cifs/connect.c Jeff Layton 2011-06-21 3416 sock_release(socket);
ee1b3ea9e6171d fs/cifs/connect.c Jeff Layton 2011-06-21 3417 server->ssocket = NULL;
ee1b3ea9e6171d fs/cifs/connect.c Jeff Layton 2011-06-21 3418 return rc;
ee1b3ea9e6171d fs/cifs/connect.c Jeff Layton 2011-06-21 3419 }
d7171cd1acf70e fs/cifs/connect.c Steve French 2021-11-04 3420 trace_smb3_connect_done(server->hostname, server->conn_id, &server->dstaddr);
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3421
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3422 /*
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3423 * Establish RFC1001 NetBIOS session when it was explicitly requested
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3424 * by mount option -o nbsessinit, or when connecting to default RFC1001
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3425 * server port (139) and it was not explicitly disabled by mount option
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3426 * -o nonbsessinit.
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3427 */
665e18794804f8 fs/smb/client/connect.c Pali Rohár 2024-10-28 3428 if (server->with_rfc1001 ||
665e18794804f8 fs/smb/client/connect.c Pali Rohár 2024-10-28 3429 server->rfc1001_sessinit == 1 ||
7d14dd683b1b00 fs/smb/client/connect.c Pali Rohár 2024-10-27 3430 (server->rfc1001_sessinit == -1 && sport == htons(RFC1001_PORT)))
a9f1b85e5ba805 fs/cifs/connect.c Pavel Shilovsky 2010-12-13 3431 rc = ip_rfc1001_connect(server);
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3432
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3433 return rc;
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3434 }
^1da177e4c3f41 fs/cifs/connect.c Linus Torvalds 2005-04-16 3435
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-03-22 18:13 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-22 18:12 fs/smb/client/connect.c:3360 generic_ip_connect() error: we previously assumed 'server->ssocket' could be null (see line 3347) kernel test robot
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.