From: Ivan Khoronzhuk <ivan.khoronz...@linaro.org> Date: Tue, 6 Aug 2019 13:04:25 +0300
> Based on net/master I wonder about that because: > --- a/net/sched/sch_taprio.c > +++ b/net/sched/sch_taprio.c > @@ -1451,7 +1451,8 @@ static int taprio_change(struct Qdisc *sch, struct > nlattr *opt, > spin_unlock_bh(qdisc_lock(sch)); > > free_sched: > - kfree(new_admin); > + if (new_admin) > + call_rcu(&new_admin->rcu, taprio_free_sched_cb); > > return err; In my tree the context around line 1451 is: nla_nest_end(skb, sched_nest); done: rcu_read_unlock(); return nla_nest_end(skb, nest); which is part of function taprio_dump(). Please respin this properly against current 'net' sources.