On Fri, 18 Jul 2025 01:24:22 +0200 chia-yu.chang@nokia-bell-labs.com wrote:
- if (!opt || !nla_len(opt)) {
NL_SET_ERR_MSG_MOD(extack, "Dualpi2 options are required");
return -EINVAL;
- }
- err = nla_parse_nested(tb, TCA_DUALPI2_MAX, opt, dualpi2_policy,
extack);
- if (err < 0)
return err;
- q = qdisc_priv(sch);
- sch_tree_lock(sch);
[...]
- if (tb[TCA_DUALPI2_STEP_THRESH_PKTS] && tb[TCA_DUALPI2_STEP_THRESH_US]) {
NL_SET_ERR_MSG_MOD(extack, "multiple step thresh attributes");
return -EINVAL;
- }
You're missing an unlock, please place the validation before sch_tree_lock().