[lkml]   [2007]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] lazy freeing of memory through MADV_FREE
On Tue, 17 Apr 2007 03:15:51 -0400 Rik van Riel <> wrote:

> Make it possible for applications to have the kernel free memory
> lazily. This reduces a repeated free/malloc cycle from freeing
> pages and allocating them, to just marking them freeable. If the
> application wants to reuse them before the kernel needs the memory,
> not even a page fault will happen.
> This patch, together with Ulrich's glibc change, increases
> MySQL sysbench performance by a factor of 2 on my quad core
> test system.

In file included from include/linux/mman.h:4,
from arch/sparc64/kernel/sys_sparc.c:19:
include/asm/mman.h:36:1: "MADV_FREE" redefined
In file included from include/asm/mman.h:5,
from include/linux/mman.h:4,
from arch/sparc64/kernel/sys_sparc.c:19:
include/asm-generic/mman.h:32:1: this is the location of the previous definition

sparc32 and sparc64 already defined MADV_FREE:

#define MADV_FREE 0x5 /* (Solaris) contents can be freed */
I'll remove the sparc definitions for now, but we need to work out what
we're going to do here. Your patch changes the values of MADV_FREE on

Perhaps this should be renamed to MADV_FREE_LINUX and given a different
number. It depends on how close your proposed behaviour is to Solaris's.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2007-04-22 10:21    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean