Thu, Dec 21, 2017 at 08:26:24AM CET, [email protected] wrote: >The rcu_barrier_bh() in mini_qdisc_pair_swap() is to wait for >flying RCU callback installed by a previous mini_qdisc_pair_swap(), >however we miss it on the tp_head==NULL path, which leads to that >the RCU callback still uses miniq_old->rcu after it is freed together >with qdisc in qdisc_graft(). So just add it on that path too. > >Fixes: 46209401f8f6 ("net: core: introduce mini_Qdisc and eliminate usage of >tp->q for clsact fastpath ") >Reported-by: Jakub Kicinski <[email protected]> >Tested-by: Jakub Kicinski <[email protected]> >Cc: Jiri Pirko <[email protected]> >Cc: John Fastabend <[email protected]> >Signed-off-by: Cong Wang <[email protected]>
Acked-by: Jiri Pirko <[email protected]>
