On Mon 13 Aug 2018 at 17:23, Jamal Hadi Salim <j...@mojatatu.com> wrote: > On 2018-08-13 1:20 p.m., Vlad Buslov wrote: >> Lockdep reports deadlock for following locking scenario in ife action: >> >> Task one: >> 1) Executes ife action update. >> 2) Takes tcfa_lock. >> 3) Waits on ife_mod_lock which is already taken by task two. >> >> Task two: >> >> 1) Executes any path that obtains ife_mod_lock without disabling bh (any >> path that takes ife_mod_lock while holding tcfa_lock has bh disabled) like >> loading a meta module, or creating new action. >> 2) Takes ife_mod_lock. >> 3) Task is preempted by rate estimator timer. >> 4) Timer callback waits on tcfa_lock which is taken by task one. >> >> In described case tasks deadlock because they take same two locks in >> different order. To prevent potential deadlock reported by lockdep, always >> disable bh when obtaining ife_mod_lock. >> > > Looks like your recent changes on net-next exposed this.
Its because I've recently expanded my private tests to create all kinds of actions with estimator. > > Acked-by: Jamal Hadi Salim <j...@mojatatu.com> > > cheers, > jamal