Re: [PATCH 2/2] mm/slab: break up RCU readers on SLAB_TYPESAFE_BY_RCU example code

From: SeongJae Park
Date: Fri Apr 14 2023 - 23:07:17 EST


On Sat, 15 Apr 2023 03:51:54 +0100 Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:

> On Sat, Apr 15, 2023 at 12:37:53AM +0000, SeongJae Park wrote:
> > *
> > + * begin:
> > * rcu_read_lock();
> > - * again:
> > * obj = lockless_lookup(key);
> > * if (obj) {
> > * if (!try_get_ref(obj)) // might fail for free objects
> > - * goto again;
> > + * goto begin;
> > *
> > * if (obj->key != key) { // not the object we expected
> > * put_ref(obj);
> > + * rcu_read_unlock();
> > * goto again;
>
> - * goto again;
> + * goto begin;

Oops, thank you for catching, Matthew!


Thanks,
SJ