Message ID | 20230414185309.220286-3-pctammela@mojatatu.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net/sched: cleanup parsing prints in htb and qfq | 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, 43 lines checked |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/source_inline | success | Was 0 now: 0 |
On Fri, 14 Apr 2023 15:53:10 -0300 Pedro Tammela wrote: > if (tca[TCA_OPTIONS] == NULL) { > - pr_notice("qfq: no options\n"); > + NL_SET_ERR_MSG_MOD(extack, "missing options"); NL_REQ_ATTR_CHECK() (probably in addition to the string message) since it's legacy netlink. > return -EINVAL; > } > > err = nla_parse_nested_deprecated(tb, TCA_QFQ_MAX, tca[TCA_OPTIONS], > - qfq_policy, NULL); > + qfq_policy, extack); > if (err < 0) > return err; > > if (tb[TCA_QFQ_WEIGHT]) { > weight = nla_get_u32(tb[TCA_QFQ_WEIGHT]); > if (!weight || weight > (1UL << QFQ_MAX_WSHIFT)) { > - pr_notice("qfq: invalid weight %u\n", weight); > + NL_SET_ERR_MSG_FMT_MOD(extack, "invalid weight %u\n", > + weight); The checks should be expressed as part of the policy and parsing will take care of the extack > return -EINVAL; > } > } else > @@ -424,7 +425,8 @@ static int qfq_change_class(struct Qdisc *sch, u32 classid, u32 parentid, > if (tb[TCA_QFQ_LMAX]) { > lmax = nla_get_u32(tb[TCA_QFQ_LMAX]); > if (lmax < QFQ_MIN_LMAX || lmax > (1UL << QFQ_MTU_SHIFT)) { > - pr_notice("qfq: invalid max length %u\n", lmax); > + NL_SET_ERR_MSG_FMT_MOD(extack, > + "invalid max length %u\n", lmax); > return -EINVAL; ditto
diff --git a/net/sched/sch_qfq.c b/net/sched/sch_qfq.c index cf5ebe43b3b4..b2a4cf01766c 100644 --- a/net/sched/sch_qfq.c +++ b/net/sched/sch_qfq.c @@ -403,19 +403,20 @@ static int qfq_change_class(struct Qdisc *sch, u32 classid, u32 parentid, int delta_w; if (tca[TCA_OPTIONS] == NULL) { - pr_notice("qfq: no options\n"); + NL_SET_ERR_MSG_MOD(extack, "missing options"); return -EINVAL; } err = nla_parse_nested_deprecated(tb, TCA_QFQ_MAX, tca[TCA_OPTIONS], - qfq_policy, NULL); + qfq_policy, extack); if (err < 0) return err; if (tb[TCA_QFQ_WEIGHT]) { weight = nla_get_u32(tb[TCA_QFQ_WEIGHT]); if (!weight || weight > (1UL << QFQ_MAX_WSHIFT)) { - pr_notice("qfq: invalid weight %u\n", weight); + NL_SET_ERR_MSG_FMT_MOD(extack, "invalid weight %u\n", + weight); return -EINVAL; } } else @@ -424,7 +425,8 @@ static int qfq_change_class(struct Qdisc *sch, u32 classid, u32 parentid, if (tb[TCA_QFQ_LMAX]) { lmax = nla_get_u32(tb[TCA_QFQ_LMAX]); if (lmax < QFQ_MIN_LMAX || lmax > (1UL << QFQ_MTU_SHIFT)) { - pr_notice("qfq: invalid max length %u\n", lmax); + NL_SET_ERR_MSG_FMT_MOD(extack, + "invalid max length %u\n", lmax); return -EINVAL; } } else @@ -441,8 +443,9 @@ static int qfq_change_class(struct Qdisc *sch, u32 classid, u32 parentid, delta_w = weight - (cl ? cl->agg->class_weight : 0); if (q->wsum + delta_w > QFQ_MAX_WSUM) { - pr_notice("qfq: total weight out of range (%d + %u)\n", - delta_w, q->wsum); + NL_SET_ERR_MSG_FMT_MOD(extack, + "qfq: total weight out of range (%d + %u)\n", + delta_w, q->wsum); return -EINVAL; }