net: qede: propagate extack through qede_flow_spec_validate()

Pass extack to qede_flow_spec_validate() when called in
qede_flow_spec_to_rule().

Pass extack to qede_parse_actions().

Not converting qede_flow_spec_validate() to use extack for
errors, as it's only called from qede_flow_spec_to_rule(),
where extack is faked into a DP_NOTICE anyway, so opting to
keep DP_VERBOSE/DP_NOTICE usage.

Only compile tested.

Signed-off-by: Asbjørn Sloth Tønnesen <ast@fiberby.net>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://lore.kernel.org/r/20240508143404.95901-14-ast@fiberby.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Asbjørn Sloth Tønnesen
2024-05-08 14:34:01 +00:00
committed by Jakub Kicinski
parent eb705d7345
commit d2a437efd0

View File

@@ -1953,7 +1953,8 @@ int qede_add_tc_flower_fltr(struct qede_dev *edev, __be16 proto,
static int qede_flow_spec_validate(struct qede_dev *edev,
struct flow_action *flow_action,
struct qede_arfs_tuple *t,
__u32 location)
__u32 location,
struct netlink_ext_ack *extack)
{
int err;
@@ -1977,7 +1978,7 @@ static int qede_flow_spec_validate(struct qede_dev *edev,
return -EINVAL;
}
err = qede_parse_actions(edev, flow_action, NULL);
err = qede_parse_actions(edev, flow_action, extack);
if (err)
return err;
@@ -2024,7 +2025,7 @@ static int qede_flow_spec_to_rule(struct qede_dev *edev,
/* Make sure location is valid and filter isn't already set */
err = qede_flow_spec_validate(edev, &flow->rule->action, t,
fs->location);
fs->location, &extack);
err_out:
if (extack._msg)
DP_NOTICE(edev, "%s\n", extack._msg);