Unlock before returning if smb3_sync_session_ctx_passwords() fails.
Fixes: 7e654ab7da03 ("cifs: during remount, make sure passwords are in sync")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
fs/smb/client/fs_context.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fs/smb/client/fs_context.c b/fs/smb/client/fs_context.c
index c614c5d8b15e..49123f458d0c 100644
--- a/fs/smb/client/fs_context.c
+++ b/fs/smb/client/fs_context.c
@@ -1008,8 +1008,10 @@ static int smb3_reconfigure(struct fs_context *fc)
* later stage
*/
rc = smb3_sync_session_ctx_passwords(cifs_sb, ses);
- if (rc)
+ if (rc) {
+ mutex_unlock(&ses->session_mutex);
return rc;
+ }
/*
* now that allocations for passwords are done, commit them
--
2.45.2