panic: uma_zone_slab is looping

From: Peter Holm <peter_at_holm.cc>
Date: Thu, 9 Dec 2004 15:42:33 +0100
I modified:

$ cvs diff -u uma_core.c 
Index: uma_core.c
===================================================================
RCS file: /home/ncvs/src/sys/vm/uma_core.c,v
retrieving revision 1.110
diff -u -r1.110 uma_core.c
--- uma_core.c  6 Nov 2004 11:43:30 -0000       1.110
+++ uma_core.c  9 Dec 2004 14:38:32 -0000
_at__at_ -1926,6 +1926,7 _at__at_
 {
        uma_slab_t slab;
        uma_keg_t keg;
+       int i;
 
        keg = zone->uz_keg;
 
_at__at_ -1943,7 +1944,8 _at__at_
 
        slab = NULL;
 
-       for (;;) {
+       for (i = 0;;i++) {
+               KASSERT(i < 10000, ("uma_zone_slab is looping"));
                /*
                 * Find a slab with some space.  Prefer slabs that are partially
                 * used over those that are totally full.  This helps to reduce


and caught this one:
http://www.holm.cc/stress/log/cons94.html
-- 
Peter Holm
Received on Thu Dec 09 2004 - 13:42:36 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:24 UTC