]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Delay pool memory usage statistics fixes from David Luyer
authorhno <>
Sun, 6 Jan 2002 07:44:13 +0000 (07:44 +0000)
committerhno <>
Sun, 6 Jan 2002 07:44:13 +0000 (07:44 +0000)
src/cache_cf.cc
src/delay_pools.cc
src/protos.h

index e3062777067b5085ed7abf0ad41d508c8aca0633..db831c2b2cbda35d18193a8cc5b033028987ccbc 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: cache_cf.cc,v 1.396 2001/10/24 07:45:34 hno Exp $
+ * $Id: cache_cf.cc,v 1.397 2002/01/06 00:44:13 hno Exp $
  *
  * DEBUG: section 3     Configuration File Parsing
  * AUTHOR: Harvest Derived
@@ -754,7 +754,7 @@ free_delay_pool_count(delayConfig * cfg)
        }
        aclDestroyAccessList(&cfg->access[i]);
     }
-    delayFreeDelayData();
+    delayFreeDelayData(cfg->pools);
     xfree(cfg->class);
     xfree(cfg->rates);
     xfree(cfg->access);
index 5be906f464e8871336ec4e72ed1132d7daf9e66a..d3bdd7198c602b28459125852aa06cf901b19aee 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: delay_pools.cc,v 1.19 2001/03/19 06:18:42 wessels Exp $
+ * $Id: delay_pools.cc,v 1.20 2002/01/06 00:44:13 hno Exp $
  *
  * DEBUG: section 77    Delay Pools
  * AUTHOR: David Luyer <david@luyer.net>
@@ -144,7 +144,7 @@ delayInitDelayData(unsigned short pools)
     if (!pools)
        return;
     delay_data = xcalloc(pools, sizeof(*delay_data));
-    memory_used += sizeof(*delay_data);
+    memory_used += pools * sizeof(*delay_data);
     eventAdd("delayPoolsUpdate", delayPoolsUpdate, NULL, 1.0, 1);
     delay_id_ptr_hash = hash_create(delayIdPtrHashCmp, 256, delayIdPtrHash);
 }
@@ -160,10 +160,10 @@ delayIdZero(void *hlink)
 }
 
 void
-delayFreeDelayData(void)
+delayFreeDelayData(unsigned short pools)
 {
     safe_free(delay_data);
-    memory_used -= sizeof(*delay_data);
+    memory_used -= pools * sizeof(*delay_data);
     if (!delay_id_ptr_hash)
        return;
     hashFreeItems(delay_id_ptr_hash, delayIdZero);
index 79be53a22c843738b203ee176534076382377d88..7729f9514e60cbb8718f1a24f992e819acc2bfe7 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: protos.h,v 1.421 2001/12/24 15:33:43 adrian Exp $
+ * $Id: protos.h,v 1.422 2002/01/06 00:44:13 hno Exp $
  *
  *
  * SQUID Web Proxy Cache          http://www.squid-cache.org/
@@ -1230,7 +1230,7 @@ extern peer *carpSelectParent(request_t *);
 #if DELAY_POOLS
 extern void delayPoolsInit(void);
 extern void delayInitDelayData(unsigned short pools);
-extern void delayFreeDelayData(void);
+extern void delayFreeDelayData(unsigned short pools);
 extern void delayCreateDelayPool(unsigned short pool, u_char class);
 extern void delayInitDelayPool(unsigned short pool, u_char class, delaySpecSet * rates);
 extern void delayFreeDelayPool(unsigned short pool);