lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.1202060858510.393@router.home>
Date:	Mon, 6 Feb 2012 09:02:23 -0600 (CST)
From:	Christoph Lameter <cl@...ux.com>
To:	Alex Shi <alex.shi@...el.com>
cc:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	Pekka Enberg <penberg@...helsinki.fi>,
	"linux-mm@...ck.org" <linux-mm@...ck.org>
Subject: Re: [rfc PATCH]slub: per cpu partial statistics change

On Sat, 4 Feb 2012, Alex Shi wrote:

> On 02/03/2012 11:27 PM, Christoph Lameter wrote:
>
> > On Fri, 3 Feb 2012, Alex,Shi wrote:
> >
> >> This patch split the cpu_partial_free into 2 parts: cpu_partial_node, PCP refilling
> >> times from node partial; and same name cpu_partial_free, PCP refilling times in
> >> slab_free slow path. A new statistic 'release_cpu_partial' is added to get PCP
> >> release times. These info are useful when do PCP tunning.
> >
> > Releasing? The code where you inserted the new statistics counts the pages
> > put on the cpu partial list when refilling from the node partial list.
>
>
> Ops, are we talking the same base kernel: Linus' tree?  :)
> Here the Releasing code only be called in slow free path and the PCP is
> full at the same time, not in PCP refilling from node partial.

Well the term releasing is unfortunate. per cpu partial pages can migrate
to and from the per node partial list and become per cpu slabs under
allocation.

> >> @@ -2465,9 +2466,10 @@ static void __slab_free(struct kmem_cache *s, struct page *page,
> >>  		 * If we just froze the page then put it onto the
> >>  		 * per cpu partial list.
> >>  		 */
> >> -		if (new.frozen && !was_frozen)
> >> +		if (new.frozen && !was_frozen) {
> >>  			put_cpu_partial(s, page, 1);
> >> -
> >> +			stat(s, CPU_PARTIAL_FREE);
> >
> > cpu partial list filled with a partial page created from a fully allocated
> > slab (which therefore was not on any list before).
>
>
> Yes, but the counting is not new here. It just moved out of
> put_cpu_partial().

Ok but then you also added different accounting in put_cpu_partial.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ