--- linux-2.6.18.noarch/mm/oom_kill.c.orig +++ linux-2.6.18.noarch/mm/oom_kill.c @@ -431,6 +437,9 @@ void out_of_memory(struct zonelist *zone cpuset_lock(); read_lock(&tasklist_lock); + /* check if we are going to panic before enything else... */ + if (sysctl_panic_on_oom) + panic("out of memory. panic_on_oom is selected\n"); /* * Check if there were limitations on the allocation (only relevant for * NUMA) that may require different handling. @@ -447,8 +456,6 @@ void out_of_memory(struct zonelist *zone break; case CONSTRAINT_NONE: - if (sysctl_panic_on_oom) - panic("out of memory. panic_on_oom is selected\n"); retry: /* * Rambo mode: Shoot down a process and hope it solves whatever