Steffen Klassert <steffen.klass...@secunet.com> wrote: > On Thu, Aug 11, 2016 at 03:17:59PM +0200, Florian Westphal wrote: > > @@ -972,14 +972,14 @@ int xfrm_policy_flush(struct net *net, u8 type, bool > > task_valid) > > if (pol->type != type) > > continue; > > __xfrm_policy_unlink(pol, dir); > > - write_unlock_bh(&net->xfrm.xfrm_policy_lock); > > + spin_unlock_bh(&net->xfrm.xfrm_policy_lock); > > cnt++; > > > > xfrm_audit_policy_delete(pol, 1, task_valid); > > > > xfrm_policy_kill(pol); > > > > - write_lock_bh(&net->xfrm.xfrm_policy_lock); > > + spin_unlock_bh(&net->xfrm.xfrm_policy_lock); > > I've just noticed that you accidentally replaced write_lock_bh > with spin_unlock_bh here.
Sorry about this, thanks for fixing this up.