Re: [PATCH] reduce fragmentation due to kmem_cache_alloc_node

From: Badari Pulavarty
Date: Mon Oct 11 2004 - 12:29:35 EST


Manfred,

This patch seems to work fine on my AMD machine.
I tested your patch on 2.6.9-rc2-mm3.

It seemed to have fixed fragmentation problem I was
observing, but I don't think it fixed the problem
completely. I still see some fragmentation, with
repeated tests of scsi-debug, but it could be due
to the test. I will collect more numbers..

Thanks,
Badari

On Sat, 2004-10-09 at 13:37, Manfred Spraul wrote:
> Hi Andrew,
>
> attached is a patch that fixes the fragmentation that Badri noticed with
> kmem_cache_alloc_node. Could you add it to the mm tree? The patch is
> against 2.6.9-rc3-mm3.
>
> Description:
> kmem_cache_alloc_node tries to allocate memory from a given node. The
> current implementation contains two bugs:
> - the node aware code was used even for !CONFIG_NUMA systems. Fix:
> inline function that redefines kmem_cache_alloc_node as kmem_cache_alloc
> for !CONFIG_NUMA.
> - the code always allocated a new slab for each new allocation. This
> caused severe fragmentation. Fix: walk the slabp lists and search for a
> matching page instead of allocating a new page.
> - the patch also adds a new statistics field for node-local allocs. They
> should be rare - the codepath is quite slow, especially compared to the
> normal kmem_cache_alloc.
>
> Badri: Could you test it?
> Andrew, could you add the patch to the next -mm kernel? I'm running it
> right now, no obvious problems.
>
> Signed-Off-By: Manfred Spraul <manfred@xxxxxxxxxxxxxxxx>
>
>
> ______________________________________________________________________


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