[PATCH v2] net: dsa: felix: fix possible NULL pointer dereference

Zheng Yongjun posted 1 patch 4 years, 2 months ago
drivers/net/dsa/ocelot/felix_vsc9959.c | 4 ++++
1 file changed, 4 insertions(+)
[PATCH v2] net: dsa: felix: fix possible NULL pointer dereference
Posted by Zheng Yongjun 4 years, 2 months ago
As the possible failure of the allocation, kzalloc() may return NULL
pointer.
Therefore, it should be better to check the 'sgi' in order to prevent
the dereference of NULL pointer.

Fixes: 23ae3a7877718 ("net: dsa: felix: add stream gate settings for psfp").
Signed-off-by: Zheng Yongjun <zhengyongjun3@huawei.com>
---

v1->v2:Rewrite fixes tag, delete extra 'q'.

 drivers/net/dsa/ocelot/felix_vsc9959.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
index 33f0ceae381d..2875b5250856 100644
--- a/drivers/net/dsa/ocelot/felix_vsc9959.c
+++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
@@ -1940,6 +1940,10 @@ static int vsc9959_psfp_filter_add(struct ocelot *ocelot, int port,
 		case FLOW_ACTION_GATE:
 			size = struct_size(sgi, entries, a->gate.num_entries);
 			sgi = kzalloc(size, GFP_KERNEL);
+			if (!sgi) {
+				ret = -ENOMEM;
+				goto err;
+			}
 			vsc9959_psfp_parse_gate(a, sgi);
 			ret = vsc9959_psfp_sgi_table_add(ocelot, sgi);
 			if (ret) {
-- 
2.17.1
Re: [PATCH v2] net: dsa: felix: fix possible NULL pointer dereference
Posted by Vladimir Oltean 4 years, 2 months ago
On Tue, Mar 29, 2022 at 09:08:00AM +0000, Zheng Yongjun wrote:
> As the possible failure of the allocation, kzalloc() may return NULL
> pointer.
> Therefore, it should be better to check the 'sgi' in order to prevent
> the dereference of NULL pointer.
> 
> Fixes: 23ae3a7877718 ("net: dsa: felix: add stream gate settings for psfp").
> Signed-off-by: Zheng Yongjun <zhengyongjun3@huawei.com>
> ---

Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>

> 
> v1->v2:Rewrite fixes tag, delete extra 'q'.
> 
>  drivers/net/dsa/ocelot/felix_vsc9959.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
> index 33f0ceae381d..2875b5250856 100644
> --- a/drivers/net/dsa/ocelot/felix_vsc9959.c
> +++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
> @@ -1940,6 +1940,10 @@ static int vsc9959_psfp_filter_add(struct ocelot *ocelot, int port,
>  		case FLOW_ACTION_GATE:
>  			size = struct_size(sgi, entries, a->gate.num_entries);
>  			sgi = kzalloc(size, GFP_KERNEL);
> +			if (!sgi) {
> +				ret = -ENOMEM;
> +				goto err;
> +			}
>  			vsc9959_psfp_parse_gate(a, sgi);
>  			ret = vsc9959_psfp_sgi_table_add(ocelot, sgi);
>  			if (ret) {
> -- 
> 2.17.1
>
Re: [PATCH v2] net: dsa: felix: fix possible NULL pointer dereference
Posted by patchwork-bot+netdevbpf@kernel.org 4 years, 2 months ago
Hello:

This patch was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Tue, 29 Mar 2022 09:08:00 +0000 you wrote:
> As the possible failure of the allocation, kzalloc() may return NULL
> pointer.
> Therefore, it should be better to check the 'sgi' in order to prevent
> the dereference of NULL pointer.
> 
> Fixes: 23ae3a7877718 ("net: dsa: felix: add stream gate settings for psfp").
> Signed-off-by: Zheng Yongjun <zhengyongjun3@huawei.com>
> 
> [...]

Here is the summary with links:
  - [v2] net: dsa: felix: fix possible NULL pointer dereference
    https://git.kernel.org/netdev/net/c/866b7a278cdb

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html