2023-11-20 02:40:19

by Zongmin Zhou

[permalink] [raw]
Subject: [PATCH] ksmbd: initialize ar to NULL

Initialize ar to NULL to avoid the case of aux_size will be false,
and kfree(ar) without ar been initialized will be unsafe.
But kfree(NULL) is safe.

Signed-off-by: Zongmin Zhou<[email protected]>
Acked-by: Namjae Jeon <[email protected]>
---
fs/smb/server/ksmbd_work.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/smb/server/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
index 44bce4c56daf..2510b9f3c8c1 100644
--- a/fs/smb/server/ksmbd_work.c
+++ b/fs/smb/server/ksmbd_work.c
@@ -106,7 +106,7 @@ static inline void __ksmbd_iov_pin(struct ksmbd_work *work, void *ib,
static int __ksmbd_iov_pin_rsp(struct ksmbd_work *work, void *ib, int len,
void *aux_buf, unsigned int aux_size)
{
- struct aux_read *ar;
+ struct aux_read *ar = NULL;
int need_iov_cnt = 1;

if (aux_size) {
--
2.34.1


2023-11-29 03:32:23

by Zongmin Zhou

[permalink] [raw]
Subject: Re: [PATCH] ksmbd: initialize ar to NULL

Friendly ping. I think this patch was forgotten.

Best regards!

On 2023/11/20 10:39, Zongmin Zhou wrote:
> Initialize ar to NULL to avoid the case of aux_size will be false,
> and kfree(ar) without ar been initialized will be unsafe.
> But kfree(NULL) is safe.
>
> Signed-off-by: Zongmin Zhou<[email protected]>
> Acked-by: Namjae Jeon <[email protected]>
> ---
> fs/smb/server/ksmbd_work.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/smb/server/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
> index 44bce4c56daf..2510b9f3c8c1 100644
> --- a/fs/smb/server/ksmbd_work.c
> +++ b/fs/smb/server/ksmbd_work.c
> @@ -106,7 +106,7 @@ static inline void __ksmbd_iov_pin(struct ksmbd_work *work, void *ib,
> static int __ksmbd_iov_pin_rsp(struct ksmbd_work *work, void *ib, int len,
> void *aux_buf, unsigned int aux_size)
> {
> - struct aux_read *ar;
> + struct aux_read *ar = NULL;
> int need_iov_cnt = 1;
>
> if (aux_size) {

2023-11-29 04:48:13

by Namjae Jeon

[permalink] [raw]
Subject: Re: [PATCH] ksmbd: initialize ar to NULL

2023-11-29 12:31 GMT+09:00, Zongmin Zhou <[email protected]>:
> Friendly ping. I think this patch was forgotten.
Sorry for not sharing it, I have merged it into another patch from
you("ksmbd: prevent memory leak on error return").

Thanks.
>
> Best regards!
>
> On 2023/11/20 10:39, Zongmin Zhou wrote:
>> Initialize ar to NULL to avoid the case of aux_size will be false,
>> and kfree(ar) without ar been initialized will be unsafe.
>> But kfree(NULL) is safe.
>>
>> Signed-off-by: Zongmin Zhou<[email protected]>
>> Acked-by: Namjae Jeon <[email protected]>
>> ---
>> fs/smb/server/ksmbd_work.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/smb/server/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
>> index 44bce4c56daf..2510b9f3c8c1 100644
>> --- a/fs/smb/server/ksmbd_work.c
>> +++ b/fs/smb/server/ksmbd_work.c
>> @@ -106,7 +106,7 @@ static inline void __ksmbd_iov_pin(struct ksmbd_work
>> *work, void *ib,
>> static int __ksmbd_iov_pin_rsp(struct ksmbd_work *work, void *ib, int
>> len,
>> void *aux_buf, unsigned int aux_size)
>> {
>> - struct aux_read *ar;
>> + struct aux_read *ar = NULL;
>> int need_iov_cnt = 1;
>>
>> if (aux_size) {
>
>

2023-11-29 05:47:05

by Zongmin Zhou

[permalink] [raw]
Subject: Re: [PATCH] ksmbd: initialize ar to NULL

Okay,got it.

Thanks

On 2023/11/29 12:47, Namjae Jeon wrote:
> 2023-11-29 12:31 GMT+09:00, Zongmin Zhou <[email protected]>:
>> Friendly ping. I think this patch was forgotten.
> Sorry for not sharing it, I have merged it into another patch from
> you("ksmbd: prevent memory leak on error return").
>
> Thanks.
>> Best regards!
>>
>> On 2023/11/20 10:39, Zongmin Zhou wrote:
>>> Initialize ar to NULL to avoid the case of aux_size will be false,
>>> and kfree(ar) without ar been initialized will be unsafe.
>>> But kfree(NULL) is safe.
>>>
>>> Signed-off-by: Zongmin Zhou<[email protected]>
>>> Acked-by: Namjae Jeon <[email protected]>
>>> ---
>>> fs/smb/server/ksmbd_work.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/fs/smb/server/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
>>> index 44bce4c56daf..2510b9f3c8c1 100644
>>> --- a/fs/smb/server/ksmbd_work.c
>>> +++ b/fs/smb/server/ksmbd_work.c
>>> @@ -106,7 +106,7 @@ static inline void __ksmbd_iov_pin(struct ksmbd_work
>>> *work, void *ib,
>>> static int __ksmbd_iov_pin_rsp(struct ksmbd_work *work, void *ib, int
>>> len,
>>> void *aux_buf, unsigned int aux_size)
>>> {
>>> - struct aux_read *ar;
>>> + struct aux_read *ar = NULL;
>>> int need_iov_cnt = 1;
>>>
>>> if (aux_size) {
>>