Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jul 2018 23:39:51 -0400
From:      Mark Johnston <markj@freebsd.org>
To:        Mateusz Guzik <mjguzik@gmail.com>
Cc:        Mateusz Guzik <mjg@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r336231 - head/sys/vm
Message-ID:  <20180713033951.GB26064@raichu>
In-Reply-To: <CAGudoHGZV8mcKGLwJKi7zBAtufKW63YO2ro7Yp=TsPqv9=HWeA@mail.gmail.com>
References:  <201807122235.w6CMZqO8030291@repo.freebsd.org> <20180712225856.GA26064@raichu> <CAGudoHGZV8mcKGLwJKi7zBAtufKW63YO2ro7Yp=TsPqv9=HWeA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jul 13, 2018 at 01:41:46AM +0200, Mateusz Guzik wrote:
> uma_zone_get_cur iterates the per-cpu stats and looks at the zone-global
> stats. The patch only gets rid of rolling them up, thus there is no
> difference from the pov of this func.
> I don't follow the remark about uma_reclaim.

I'm pointing out that with this change we no longer maintain any
zone-global stats.

> On Fri, Jul 13, 2018 at 12:58 AM, Mark Johnston <markj@freebsd.org> wrote:
> 
> > On Thu, Jul 12, 2018 at 10:35:52PM +0000, Mateusz Guzik wrote:
> > > Author: mjg
> > > Date: Thu Jul 12 22:35:52 2018
> > > New Revision: 336231
> > > URL: https://svnweb.freebsd.org/changeset/base/336231
> > >
> > > Log:
> > >   uma: whack main zone counter update in the slow path, freeing side
> > >
> > >   See r333052.
> > >
> > > Modified:
> > >   head/sys/vm/uma_core.c
> > >
> > > Modified: head/sys/vm/uma_core.c
> > > ============================================================
> > ==================
> > > --- head/sys/vm/uma_core.c    Thu Jul 12 22:34:40 2018        (r336230)
> > > +++ head/sys/vm/uma_core.c    Thu Jul 12 22:35:52 2018        (r336231)
> > > @@ -3135,14 +3135,6 @@ zfree_start:
> > >       cpu = curcpu;
> > >       cache = &zone->uz_cpu[cpu];
> > >
> > > -     /*
> > > -      * Since we have locked the zone we may as well send back our
> > stats.
> > > -      */
> > > -     atomic_add_long(&zone->uz_allocs, cache->uc_allocs);
> > > -     atomic_add_long(&zone->uz_frees, cache->uc_frees);
> > > -     cache->uc_allocs = 0;
> > > -     cache->uc_frees = 0;
> > > -
> >
> > Doesn't this break the accounting of these stats?  uma_reclaim() doesn't
> > update them when it frees cached items, and uma_zone_get_cur() doesn't
> > look at the stats for cached buckets.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180713033951.GB26064>