2024-02-10 10:54:03

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH net-next] net/mlx5: Use kasprintf()

Use kasprintf() instead of open-coding it.
This saves some lines of code, avoid a hard-coded magic number and is more
robust.

Signed-off-by: Christophe JAILLET <[email protected]>
---
If you consider it as a bug fix, should 'name' overflow because of the
hard-coded limit, then:
Fixes: ac6ea6e81a80 ("net/mlx5_core: Use private health thread for each device")
---
drivers/net/ethernet/mellanox/mlx5/core/health.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/health.c b/drivers/net/ethernet/mellanox/mlx5/core/health.c
index 8ff6dc9bc803..3f775da15afc 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/health.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/health.c
@@ -856,12 +856,11 @@ int mlx5_health_init(struct mlx5_core_dev *dev)
mlx5_reporter_vnic_create(dev);

health = &dev->priv.health;
- name = kmalloc(64, GFP_KERNEL);
+ name = kasprintf(GFP_KERNEL,
+ "mlx5_health%s", dev_name(dev->device));
if (!name)
goto out_err;

- strcpy(name, "mlx5_health");
- strcat(name, dev_name(dev->device));
health->wq = create_singlethread_workqueue(name);
kfree(name);
if (!health->wq)
--
2.43.0



2024-02-20 08:00:02

by Simon Horman

[permalink] [raw]
Subject: Re: [PATCH net-next] net/mlx5: Use kasprintf()

On Sat, Feb 10, 2024 at 11:53:13AM +0100, Christophe JAILLET wrote:
> Use kasprintf() instead of open-coding it.
> This saves some lines of code, avoid a hard-coded magic number and is more
> robust.
>
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> If you consider it as a bug fix, should 'name' overflow because of the
> hard-coded limit, then:
> Fixes: ac6ea6e81a80 ("net/mlx5_core: Use private health thread for each device")

TBH I am entirely unsure if an overflow can occur.
But in any case the change looks good to me.

Reviewed-by: Simon Horman <[email protected]>