diff mbox series

cifs: fix wrong release in sess_alloc_buffer() failed path

Message ID 20210817145510.639-1-dinghui@sangfor.com.cn (mailing list archive)
State New, archived
Headers show
Series cifs: fix wrong release in sess_alloc_buffer() failed path | expand

Commit Message

Ding Hui Aug. 17, 2021, 2:55 p.m. UTC
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>
---
 fs/cifs/sess.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Paulo Alcantara Aug. 18, 2021, 12:30 a.m. UTC | #1
Ding Hui <dinghui@sangfor.com.cn> writes:

> 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>
> ---
>  fs/cifs/sess.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Steve French Aug. 18, 2021, 2:46 a.m. UTC | #2
tentatively merged into cifs-2.6.git for-next pending more testing

On Tue, Aug 17, 2021 at 7:33 PM Paulo Alcantara <pc@cjr.nz> wrote:
>
> Ding Hui <dinghui@sangfor.com.cn> writes:
>
> > 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>
> > ---
> >  fs/cifs/sess.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
>
> Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
diff mbox series

Patch

diff --git a/fs/cifs/sess.c b/fs/cifs/sess.c
index c5785fd3f52e..606fd7d6cb71 100644
--- a/fs/cifs/sess.c
+++ b/fs/cifs/sess.c
@@ -877,7 +877,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;