net/mlx5: Fix dereference on pointer attr after null check
When removing a flow from the slow path fdb, a flow attr struct is
allocated for the rule removal process. If the allocation fails the
code prints a warning message but continues with the removal flow
which include dereferencing a pointer which could be null.
Fix this by exiting the function in case the attr allocation failed.
Fixes: c620b77215
("net/mlx5: Refactor tc flow attributes structure")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Ariel Levkovich <lariel@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
This commit is contained in:
parent
7be3412a76
commit
5efbe61788
@ -1238,8 +1238,10 @@ mlx5e_tc_unoffload_from_slow_path(struct mlx5_eswitch *esw,
|
||||
struct mlx5_flow_attr *slow_attr;
|
||||
|
||||
slow_attr = mlx5_alloc_flow_attr(MLX5_FLOW_NAMESPACE_FDB);
|
||||
if (!slow_attr)
|
||||
mlx5_core_warn(flow->priv->mdev, "Unable to unoffload slow path rule\n");
|
||||
if (!slow_attr) {
|
||||
mlx5_core_warn(flow->priv->mdev, "Unable to alloc attr to unoffload slow path rule\n");
|
||||
return;
|
||||
}
|
||||
|
||||
memcpy(slow_attr, flow->attr, ESW_FLOW_ATTR_SZ);
|
||||
slow_attr->action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
|
||||
|
Loading…
Reference in New Issue
Block a user