Re: [GIT PULL] slab updates for 6.11

Uladzislau Rezki
2024-09-26T16:41:04Z

On Thu, Sep 26, 2024 at 06:35:27PM +0200, Vlastimil Babka wrote:
> On 9/18/24 16:40, Uladzislau Rezki wrote:
> >>
> > Thank you for valuable feedback! Indeed it is hard to follow, even
> > though it works correctly.
> > I will add the comment and also break the loop on first queuing as you
> > suggested!
> >
> > It does not make sense to loop further because following iterations
> > are never successful
> > thus never overwrite "queued" variable(it never reaches the
> > queue_rcu_work() call).
> >
> > <snip>
> > bool queued = false;
> > ...
> > for (i = 0; i < KFREE_N_BATCHES; i++) {
> > if (need_offload_krc(krcp)) {
> > queued = queue_rcu_work(system_wq, &krwp->rcu_work);
> > ...
> > return queued;
> > <snip>
> >
> > if we queued, "if(need_offload_krc())" condition is never true anymore.
> >
> > Below refactoring makes it clear. I will send the patch to address it.
>
> Looks good, AFAICT. Can you send the full patch then? Thanks.
>
I will do so. We can send it from RCU-side for rcX, this merge window or
you can do it.

What is the best for you?

--
Uladzislau Rezki