On Wed, Oct 2, 2019 at 6:45 PM <[email protected]> wrote: > > From: "Paul E. McKenney" <[email protected]> > > This commit replaces the use of rcu_swap_protected() with the more > intuitively appealing rcu_replace() as a step towards removing > rcu_swap_protected(). > > Link: > https://lore.kernel.org/lkml/CAHk-=wiAsJLw1egFEE=z7-ggtm6wcvtyytxza1+bhqta4gg...@mail.gmail.com/ > Reported-by: Linus Torvalds <[email protected]> > Signed-off-by: Paul E. McKenney <[email protected]> > Cc: Alexei Starovoitov <[email protected]> > Cc: Daniel Borkmann <[email protected]> > Cc: Martin KaFai Lau <[email protected]> > Cc: Song Liu <[email protected]> > Cc: Yonghong Song <[email protected]> > Cc: <[email protected]> > Cc: <[email protected]> > ---
Acked-by: Andrii Nakryiko <[email protected]> > kernel/bpf/cgroup.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kernel/bpf/cgroup.c b/kernel/bpf/cgroup.c > index ddd8add..06a0657 100644 > --- a/kernel/bpf/cgroup.c > +++ b/kernel/bpf/cgroup.c > @@ -180,8 +180,8 @@ static void activate_effective_progs(struct cgroup *cgrp, > enum bpf_attach_type type, > struct bpf_prog_array *old_array) > { > - rcu_swap_protected(cgrp->bpf.effective[type], old_array, > - lockdep_is_held(&cgroup_mutex)); > + old_array = rcu_replace(cgrp->bpf.effective[type], old_array, > + lockdep_is_held(&cgroup_mutex)); > /* free prog array after grace period, since __cgroup_bpf_run_*() > * might be still walking the array > */ > -- > 2.9.5 >

