lkml.org 
[lkml]   [2005]   [Nov]   [22]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 22 Nov 2005 08:57:13 +0200 (EET)
FromPekka J Enberg <>
SubjectRe: [PATCH] slab: minor cleanup to kmem_cache_alloc_node
On Mon, 21 Nov 2005, Christoph Lameter wrote:
> If we drop the printk then this may be even simpler
> 
> Signed-off-by: Christoph Lameter <clameter@sgi.com>

Even better. Thanks!

Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>

> Index: linux-2.6.15-rc1-mm2/mm/slab.c
> ===================================================================
> --- linux-2.6.15-rc1-mm2.orig/mm/slab.c	2005-11-21 13:16:07.000000000 -0800
> +++ linux-2.6.15-rc1-mm2/mm/slab.c	2005-11-21 13:16:59.000000000 -0800
> @@ -2890,21 +2890,14 @@ void *kmem_cache_alloc_node(kmem_cache_t
>  	unsigned long save_flags;
>  	void *ptr;
> 
> -	if (nodeid == -1)
> -		return __cache_alloc(cachep, flags);
> -
> -	if (unlikely(!cachep->nodelists[nodeid])) {
> -		/* Fall back to __cache_alloc if we run into trouble */
> -		printk(KERN_WARNING "slab: not allocating in inactive node %d for cache %s\n", nodeid, cachep->name);
> -		return __cache_alloc(cachep,flags);
> -	}
> -
>  	cache_alloc_debugcheck_before(cachep, flags);
>  	local_irq_save(save_flags);
> -	if (nodeid == numa_node_id())
> +
> +	if (nodeid == -1 || nodeid == numa_node_id() || !cachep->nodelists[nodeid])
>  		ptr = ____cache_alloc(cachep, flags);
>  	else
>  		ptr = __cache_alloc_node(cachep, flags, nodeid);
> +
>  	local_irq_restore(save_flags);
>  	ptr = cache_alloc_debugcheck_after(cachep, flags, ptr, __builtin_return_address(0));
> 
> 
-
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/

\
 
 \ /
  Last update: 2005-11-22 08:00    [from the cache]
©2003-2008