2023-12-31 14:58:52

by Markus Elfring

[permalink] [raw]
Subject: [PATCH 1/2] net/smc: Return directly after a failed kzalloc() in smc_fill_gid_list()

From: Markus Elfring <[email protected]>
Date: Sun, 31 Dec 2023 15:15:19 +0100

The kfree() function was called in one case by
the smc_fill_gid_list() function during error handling
even if the passed variable contained a null pointer.
This issue was detected by using the Coccinelle software.

Thus return directly after a call of the function “kzalloc” failed
at the beginning.

Signed-off-by: Markus Elfring <[email protected]>
---
net/smc/af_smc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/smc/af_smc.c b/net/smc/af_smc.c
index 7fc2f3c6d248..a396a9977ba9 100644
--- a/net/smc/af_smc.c
+++ b/net/smc/af_smc.c
@@ -1180,7 +1180,7 @@ void smc_fill_gid_list(struct smc_link_group *lgr,

alt_ini = kzalloc(sizeof(*alt_ini), GFP_KERNEL);
if (!alt_ini)
- goto out;
+ return;

alt_ini->vlan_id = lgr->vlan_id;
alt_ini->check_smcrv2 = true;
--
2.43.0



2024-01-02 02:13:45

by Tony Lu

[permalink] [raw]
Subject: Re: [PATCH 1/2] net/smc: Return directly after a failed kzalloc() in smc_fill_gid_list()

On Sun, Dec 31, 2023 at 03:58:15PM +0100, Markus Elfring wrote:
> From: Markus Elfring <[email protected]>
> Date: Sun, 31 Dec 2023 15:15:19 +0100
>
> The kfree() function was called in one case by
> the smc_fill_gid_list() function during error handling
> even if the passed variable contained a null pointer.
> This issue was detected by using the Coccinelle software.
>
> Thus return directly after a call of the function "kzalloc" failed
> at the beginning.
>
> Signed-off-by: Markus Elfring <[email protected]>

LGTM, thank you.

Also please add net tag in subject and fixes tag in commit body.

Reviewed-by: Tony Lu <[email protected]>

> ---
> net/smc/af_smc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/smc/af_smc.c b/net/smc/af_smc.c
> index 7fc2f3c6d248..a396a9977ba9 100644
> --- a/net/smc/af_smc.c
> +++ b/net/smc/af_smc.c
> @@ -1180,7 +1180,7 @@ void smc_fill_gid_list(struct smc_link_group *lgr,
>
> alt_ini = kzalloc(sizeof(*alt_ini), GFP_KERNEL);
> if (!alt_ini)
> - goto out;
> + return;
>
> alt_ini->vlan_id = lgr->vlan_id;
> alt_ini->check_smcrv2 = true;
> --
> 2.43.0