summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDing Hui <dinghui@sangfor.com.cn>2021-08-17 22:55:10 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-09-18 13:40:32 +0200
commitba2faddf1f14c2a7ecb0adecaebcc332c919cf05 (patch)
tree62698a0f22390026eabc1b28f16071959feebfdb
parent7c7d6c9cd879a4bb19b101735858a175e698219b (diff)
downloadlinux-stable-ba2faddf1f14c2a7ecb0adecaebcc332c919cf05.tar.gz
linux-stable-ba2faddf1f14c2a7ecb0adecaebcc332c919cf05.tar.bz2
linux-stable-ba2faddf1f14c2a7ecb0adecaebcc332c919cf05.zip
cifs: fix wrong release in sess_alloc_buffer() failed path
[ Upstream commit d72c74197b70bc3c95152f351a568007bffa3e11 ] smb_buf is allocated by small_smb_init_no_tc(), and buf type is CIFS_SMALL_BUFFER, so we should use cifs_small_buf_release() to release it in failed path. Signed-off-by: Ding Hui <dinghui@sangfor.com.cn> Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz> Signed-off-by: Steve French <stfrench@microsoft.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--fs/cifs/sess.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/cifs/sess.c b/fs/cifs/sess.c
index 1a0298d1e7cd..d58c5ffeca0d 100644
--- a/fs/cifs/sess.c
+++ b/fs/cifs/sess.c
@@ -888,7 +888,7 @@ sess_alloc_buffer(struct sess_data *sess_data, int wct)
return 0;
out_free_smb_buf:
- kfree(smb_buf);
+ cifs_small_buf_release(smb_buf);
sess_data->iov[0].iov_base = NULL;
sess_data->iov[0].iov_len = 0;
sess_data->buf0_type = CIFS_NO_BUFFER;