From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753713AbbBMPt0 (ORCPT ); Fri, 13 Feb 2015 10:49:26 -0500 Received: from resqmta-ch2-11v.sys.comcast.net ([69.252.207.43]:34740 "EHLO resqmta-ch2-11v.sys.comcast.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752811AbbBMPtZ (ORCPT ); Fri, 13 Feb 2015 10:49:25 -0500 Date: Fri, 13 Feb 2015 09:49:24 -0600 (CST) From: Christoph Lameter X-X-Sender: cl@gentwo.org To: Joonsoo Kim cc: akpm@linuxfoundation.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, penberg@kernel.org, iamjoonsoo@lge.com, Jesper Dangaard Brouer Subject: Re: [PATCH 2/3] slub: Support for array operations In-Reply-To: <20150213024515.GB6592@js1304-P5Q-DELUXE> Message-ID: References: <20150210194804.288708936@linux.com> <20150210194811.902155759@linux.com> <20150213024515.GB6592@js1304-P5Q-DELUXE> Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 13 Feb 2015, Joonsoo Kim wrote: > > + *p++ = freelist; > > + freelist = get_freepointer(s, freelist); > > + allocated++; > > + } > > Fetching all objects with holding node lock could result in enomourous > lock contention. How about getting free ojbect pointer without holding > the node lock? We can temporarilly store all head of freelists in > array p and can fetch each object pointer without holding node lock. Could do that but lets first see if there is really an issue. The other cpu sharing the same partial lists presumaly have cpu local objects to get through first before they hit this lock.