cifs: avoid parallel session setups on same channel
authorShyam Prasad N <sprasad@microsoft.com>
Fri, 8 Apr 2022 13:31:37 +0000 (13:31 +0000)
committerSteve French <stfrench@microsoft.com>
Thu, 21 Jul 2022 15:40:03 +0000 (10:40 -0500)
commit6ba4a8e28356eeeef8b6d0160d92bd4adf2bc76b
tree9c253161c732946e0f1268afc0bbb74ff2869850
parent77ad06c5f8f4a0ae7db62dba2ac140628620b2cf
cifs: avoid parallel session setups on same channel

After allowing channels to reconnect in parallel, it now
becomes important to take care that multiple processes do not
call negotiate/session setup in parallel on the same channel.

This change avoids that by marking a channel as "in_reconnect".
During session setup if the channel in question has this flag
set, we return immediately.

Signed-off-by: Shyam Prasad N <sprasad@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/cifs_debug.c
fs/cifs/cifsglob.h
fs/cifs/cifsproto.h
fs/cifs/connect.c
fs/cifs/sess.c