Re: [PATCH 1/2] rcu/kvfree: Carefully reset number of objects in krcp

From: Paul E. McKenney
Date: Thu Dec 15 2022 - 16:33:57 EST


On Thu, Dec 15, 2022 at 10:16:15PM +0100, Uladzislau Rezki wrote:
> On Thu, Dec 15, 2022 at 12:40:22PM -0800, Paul E. McKenney wrote:
> > On Wed, Dec 14, 2022 at 01:06:29PM +0100, Uladzislau Rezki (Sony) wrote:
> > > Problem. A schedule_delayed_monitor_work() relays on the
> > > number of pointers queued into krcp. Based on that number
> > > and threshold the work is rearmed with different delayed
> > > intervals, i.e. sooner or later.
> > >
> > > There are three pipes where pointers can be placed. When
> > > any pipe is offloaded the krcp->count counter is set to
> > > zero - what is wrong. Because another pipes might not be
> > > empty.
> > >
> > > Fix it by maintaining a counter individually per a pipe.
> > > In order to get a number of objects per a krcp introduce
> > > a krc_count() helper.
> > >
> > > Signed-off-by: Uladzislau Rezki (Sony) <urezki@xxxxxxxxx>
> >
> > Queued and pushed for further review and testing, and with the usual
> > wordsmithing. Much better use of workqueue handlers, thank you!!!
> >
> <snip>
> This commit therefore maintains per-pipe counters, and introduces a a
> krc_count() helper to access the aggregate value of those
> counters.
> <snip>
>
> a a ? :)

Good eyes! I will fix on my next rebase.

Thanx, Paul