Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756096AbXJBS37 (ORCPT ); Tue, 2 Oct 2007 14:29:59 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753141AbXJBS3w (ORCPT ); Tue, 2 Oct 2007 14:29:52 -0400 Received: from netops-testserver-3-out.sgi.com ([192.48.171.28]:49138 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752195AbXJBS3v (ORCPT ); Tue, 2 Oct 2007 14:29:51 -0400 Date: Tue, 2 Oct 2007 11:29:51 -0700 (PDT) From: Christoph Lameter X-X-Sender: clameter@schroedinger.engr.sgi.com To: Yasunori Goto cc: Andrew Morton , Linux Kernel ML , linux-mm Subject: Re: [Patch / 002](memory hotplug) Callback function to create kmem_cache_node. In-Reply-To: <20071002105422.2790.Y-GOTO@jp.fujitsu.com> Message-ID: References: <20071001183316.7A9B.Y-GOTO@jp.fujitsu.com> <20071002105422.2790.Y-GOTO@jp.fujitsu.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 809 Lines: 25 On Tue, 2 Oct 2007, Yasunori Goto wrote: > Do you mean that just nr_slabs should be checked like followings? > I'm not sure this is enough. > > : > if (s->node[nid]) { > n = get_node(s, nid); > if (!atomic_read(&n->nr_slabs)) { > s->node[nid] = NULL; > kmem_cache_free(kmalloc_caches, n); > } > } > : > : That would work. But it would be better to shrink the cache first. The first 2 slabs on a node may be empty and the shrinking will remove those. If you do not shrink then the code may falsely assume that there are objects on the node. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/