2.5.37: oom stress test crashes immediately

From: Manfred Spraul (manfred@colorfullife.com)
Date: Mon Sep 23 2002 - 08:07:33 EST


I've added oom handling into the natsemi network driver, but testing it
was tricky: I immediately ran into oopses.

The attached patch fails kmalloc and kmem_cache_alloc if

                (jiffies%HZ) < HZ/10

with a 5 minute guaranteed success, for the boot process.

Is that something the kernel should survive? Obviously the computer is
unusable after the 5 minute grace period, but I didn't expect oopses.

-- 

Manfred

--- 2.5/mm/slab.c Sat Sep 21 17:03:15 2002 +++ build-2.5/mm/slab.c Sun Sep 22 16:59:29 2002 @@ -1568,6 +1568,9 @@ */ void * kmem_cache_alloc (kmem_cache_t *cachep, int flags) { + if (jiffies > HZ*300 && (jiffies % HZ) < HZ/10) + return NULL; + return __kmem_cache_alloc(cachep, flags); } @@ -1596,6 +1599,9 @@ { cache_sizes_t *csizep = cache_sizes; + if (jiffies > HZ*300 && (jiffies % HZ) < HZ/10) + return NULL; + for (; csizep->cs_size; csizep++) { if (size > csizep->cs_size) continue;

- 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/



This archive was generated by hypermail 2b29 : Mon Sep 23 2002 - 22:00:38 EST