Messages in this thread | | | Date | Thu, 23 Nov 2006 15:03:40 +0200 | From | "Yakov Lerner" <> | Subject | Re: coping with swap-exhaustion in 2.4.33-4 |
| |
On 11/23/06, Xavier Bestel <xavier.bestel@free.fr> wrote: > On Thu, 2006-11-23 at 14:30 +0200, Yakov Lerner wrote: > > Where can I read anything about how kernel is supposed to > > react to the 'swap-full' condition ? We have troubles on the > > production machine which routinely arrives to the swap-full state > > no matter how I increase the swap, because user proceses multi-fork > > and then want to allocate a lot of virtual memory. > > Did you disable memory overcommit ?
The /proc/sys/vm/overcommit_memory is 0 (the default is 0, no ?)
This is test program, memstress.c. We make sure we touch all allocated chunks.
#include <stdio.h> #include <stdlib.h> #include <poll.h> #include <string.h>
int main(int argc, char **argv) { char *p; int size = 10*1024*1024; int k; int bypass_prompt = 0; int mb = 0; int bytes = 0;
printf("Warning this allocation test may kill your computer by exhausting the swap+memory\n"); if( argc > 1 && 0 == strcmp("-f", argv[1])) { bypass_prompt = 1; } if(!bypass_prompt) { printf("Press Enter to proceed, or Ctrl-C to cancel; or use -f option to bypass the prompt\n"); getchar(); }
for(k=0; ; k++) { p = malloc(size); if(p) { memset(p, 0xff, size ); bytes += size; printf("%d mb\n", bytes / (1024*1024) ); } poll(0,0, 1); } } - 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/
| |