Message ID | 20230418234354.582693-2-pctammela@mojatatu.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net/sched: act_pedit: minor improvements | expand |
Context | Check | Description |
---|---|---|
netdev/series_format | success | Posting correctly formatted |
netdev/tree_selection | success | Clearly marked for net-next |
netdev/fixes_present | success | Fixes tag not required for -next series |
netdev/header_inline | success | No static functions without inline keyword in header files |
netdev/build_32bit | success | Errors and warnings before: 18 this patch: 18 |
netdev/cc_maintainers | success | CCed 8 of 8 maintainers |
netdev/build_clang | success | Errors and warnings before: 18 this patch: 18 |
netdev/verify_signedoff | success | Signed-off-by tag matches author and committer |
netdev/deprecated_api | success | None detected |
netdev/check_selftest | success | No net selftest shell script |
netdev/verify_fixes | success | No Fixes tag |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 18 this patch: 18 |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 56 lines checked |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/source_inline | success | Was 0 now: 0 |
On Tue, Apr 18, 2023 at 08:43:50PM -0300, Pedro Tammela wrote: > 'err' is returned -EINVAL most of the time. > Make the exception be the netlink parsing and remove the > redundant error assignments in the other code paths. > > Signed-off-by: Pedro Tammela <pctammela@mojatatu.com> Reviewed-by: Simon Horman <simon.horman@corigine.com>
On Tue, 18 Apr 2023 20:43:50 -0300 Pedro Tammela wrote: > 'err' is returned -EINVAL most of the time. > Make the exception be the netlink parsing and remove the > redundant error assignments in the other code paths. > diff --git a/net/sched/act_pedit.c b/net/sched/act_pedit.c > index 4559a1507ea5..90f5214e679e 100644 > --- a/net/sched/act_pedit.c > +++ b/net/sched/act_pedit.c > @@ -54,46 +54,39 @@ static struct tcf_pedit_key_ex *tcf_pedit_keys_ex_parse(struct nlattr *nla, > > nla_for_each_nested(ka, nla, rem) { > struct nlattr *tb[TCA_PEDIT_KEY_EX_MAX + 1]; > + int ret; > > - if (!n) { > - err = -EINVAL; > + if (!n) > goto err_out; > - } > n--; IMHO this is not worth doing. Setting the error value before the jump is more idiomatic. If anything I'd remove the unnecessary init of err to EINVAL at the start of the function.
diff --git a/net/sched/act_pedit.c b/net/sched/act_pedit.c index 4559a1507ea5..90f5214e679e 100644 --- a/net/sched/act_pedit.c +++ b/net/sched/act_pedit.c @@ -54,46 +54,39 @@ static struct tcf_pedit_key_ex *tcf_pedit_keys_ex_parse(struct nlattr *nla, nla_for_each_nested(ka, nla, rem) { struct nlattr *tb[TCA_PEDIT_KEY_EX_MAX + 1]; + int ret; - if (!n) { - err = -EINVAL; + if (!n) goto err_out; - } n--; - if (nla_type(ka) != TCA_PEDIT_KEY_EX) { - err = -EINVAL; + if (nla_type(ka) != TCA_PEDIT_KEY_EX) goto err_out; - } - err = nla_parse_nested_deprecated(tb, TCA_PEDIT_KEY_EX_MAX, + ret = nla_parse_nested_deprecated(tb, TCA_PEDIT_KEY_EX_MAX, ka, pedit_key_ex_policy, NULL); - if (err) + if (ret) { + err = ret; goto err_out; + } if (!tb[TCA_PEDIT_KEY_EX_HTYPE] || - !tb[TCA_PEDIT_KEY_EX_CMD]) { - err = -EINVAL; + !tb[TCA_PEDIT_KEY_EX_CMD]) goto err_out; - } k->htype = nla_get_u16(tb[TCA_PEDIT_KEY_EX_HTYPE]); k->cmd = nla_get_u16(tb[TCA_PEDIT_KEY_EX_CMD]); if (k->htype > TCA_PEDIT_HDR_TYPE_MAX || - k->cmd > TCA_PEDIT_CMD_MAX) { - err = -EINVAL; + k->cmd > TCA_PEDIT_CMD_MAX) goto err_out; - } k++; } - if (n) { - err = -EINVAL; + if (n) goto err_out; - } return keys_ex;
'err' is returned -EINVAL most of the time. Make the exception be the netlink parsing and remove the redundant error assignments in the other code paths. Signed-off-by: Pedro Tammela <pctammela@mojatatu.com> --- net/sched/act_pedit.c | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-)