aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNamjae Jeon <[email protected]>2021-03-30 12:38:03 +0900
committerSteve French <[email protected]>2021-05-10 19:15:27 -0500
commit69f447be15130b57cc00fa0a5c2d3fa949a46165 (patch)
treecc95d8ea119d803c3ca9cf91a97eabc2b0524431
parente5066499079de0e1dac094baf4cb62eb86cbdd4f (diff)
cifsd: fix wrong use of rw semaphore in __session_create()
Adding list to session table should be protected by down_write/up_write(). Signed-off-by: Namjae Jeon <[email protected]> Signed-off-by: Steve French <[email protected]>
-rw-r--r--fs/cifsd/mgmt/user_session.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifsd/mgmt/user_session.c b/fs/cifsd/mgmt/user_session.c
index afcdf76a3851..1b71a20dacdb 100644
--- a/fs/cifsd/mgmt/user_session.c
+++ b/fs/cifsd/mgmt/user_session.c
@@ -298,9 +298,9 @@ static struct ksmbd_session *__session_create(int protocol)
goto error;
if (protocol == CIFDS_SESSION_FLAG_SMB2) {
- down_read(&sessions_table_lock);
+ down_write(&sessions_table_lock);
hash_add(sessions_table, &sess->hlist, sess->id);
- up_read(&sessions_table_lock);
+ up_write(&sessions_table_lock);
}
return sess;