From: Cong Wang <xiyou.wangc...@gmail.com>
Date: Mon,  6 Nov 2017 13:47:17 -0800

> This patchset tries to fix the race between call_rcu() and
> cleanup_net() again. Without holding the netns refcnt the
> tc_action_net_exit() in netns workqueue could be called before 
> filter destroy works in tc filter workqueue. This patchset
> moves the netns refcnt from tc actions to tcf_exts, without
> breaking per-netns tc actions.
> 
> Patch 1 reverts the previous fix, patch 2 introduces two new
> API's to help to address the bug and the rest patches switch
> to the new API's. Please see each patch for details.
> 
> I was not able to reproduce this bug, but now after adding
> some delay in filter destroy work I manage to trigger the
> crash. After this patchset, the crash is not reproducible
> any more and the debugging printk's show the order is expected
> too.
> 
> Fixes: ddf97ccdd7cb ("net_sched: add network namespace support for tc 
> actions")
> Reported-by: Lucas Bates <luc...@mojatatu.com>
> Cc: Lucas Bates <luc...@mojatatu.com>
> Cc: Jamal Hadi Salim <j...@mojatatu.com>
> Cc: Jiri Pirko <j...@resnulli.us>
> Signed-off-by: Cong Wang <xiyou.wangc...@gmail.com>

I have to say this was a lot of churn so late in the release
cycle.... but I ended up pulling anyways.

I cannot guarantee that I will be able to push this to Linus
in time for 4.14-final.

Thanks.

Reply via email to