On 2022/9/14 20:35, Raed Salem wrote:
-----Original Message-----
From: Yang Yingliang <yangyingliang@xxxxxxxxxx>
Sent: Tuesday, 13 September 2022 17:37
To: netdev@xxxxxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx
Cc: Saeed Mahameed <saeedm@xxxxxxxxxx>; Lior Nahmanson
<liorna@xxxxxxxxxx>; Raed Salem <raeds@xxxxxxxxxx>;
davem@xxxxxxxxxxxxx
Subject: [PATCH -next 1/2] net/mlx5e: add missing error code in error path
External email: Use caution opening links or attachments
Add missing error code when mlx5e_macsec_fs_add_rule() or
mlx5e_macsec_fs_init() fails.
Fixes: e467b283ffd5 ("net/mlx5e: Add MACsec TX steering rules")
Signed-off-by: Yang Yingliang <yangyingliang@xxxxxxxxxx>
---
.../ethernet/mellanox/mlx5/core/en_accel/macsec.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/macsec.c
b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/macsec.c
index d9d18b039d8c..5fa3e22c8918 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/macsec.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/macsec.c
@@ -194,8 +194,13 @@ static int mlx5e_macsec_init_sa(struct
macsec_context *ctx,
MLX5_ACCEL_MACSEC_ACTION_DECRYPT;
macsec_rule = mlx5e_macsec_fs_add_rule(macsec->macsec_fs, ctx,
&rule_attrs, &sa->fs_id);
- if (IS_ERR_OR_NULL(macsec_rule))
+ if (IS_ERR_OR_NULL(macsec_rule)) {
+ if (!macsec_rule)
+ err = -ENOMEM;
+ else
+ err = PTR_ERR(macsec_rule);
goto destroy_macsec_object;
+ }
sa->macsec_rule = macsec_rule;
@@ -1294,8 +1299,13 @@ int mlx5e_macsec_init(struct mlx5e_priv *priv)
macsec->mdev = mdev;
macsec_fs = mlx5e_macsec_fs_init(mdev, priv->netdev);
- if (IS_ERR_OR_NULL(macsec_fs))
+ if (IS_ERR_OR_NULL(macsec_fs)) {
+ if (!macsec_fs)
+ err = -ENOMEM;
+ else
+ err = PTR_ERR(macsec_fs);
goto err_out;
+ }
macsec->macsec_fs = macsec_fs;
--
Look at mlx5e_macsec_fs_init implementation, it never returns error code, it either returns NULL or a valid Ptr, the use of IS_ERR_OR_NULL is redundant here (same for mlx5e_macsec_fs_add_rule)
Yes, I will replace it with NULL ptr check in v2.
Thanks,
Yang
2.25.1