[PATCH] Merge two rcu types

Bruno Wolff III bruno at wolff.to
Thu Mar 14 13:32:11 CET 2019


On Thu, Mar 14, 2019 at 00:16:08 -0500,
  Bruno Wolff III <bruno at wolff.to> wrote:
>Paul McKenney made it harder to mess up ending rcu sections with an
>incorrect function call by using the same functions to end multiple
>types of rcu sections.

There are a number of commits involved in this change, but this commit 
has a pretty explicit comment about doing the renames I did.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c8d1da4000b0b95bf95d3e13b7450eec5428da1e
netfilter: Replace call_rcu_bh(), rcu_barrier_bh(), and synchronize_rcu_bh()
Now that call_rcu()'s callback is not invoked until after bh-disable
regions of code have completed (in addition to explicitly marked
RCU read-side critical sections), call_rcu() can be used in place
of call_rcu_bh().  Similarly, rcu_barrier() can be used in place of
rcu_barrier_bh() and synchronize_rcu() in place of synchronize_rcu_bh().
This commit therefore makes these changes.

In case it isn't obvious, the patch I supplied is only good for 5.1+ 
kernels. I'm not sure how you wanted to handle doing compatibility for 
older kernels and didn't even have a good idea how to start.


More information about the WireGuard mailing list