--------------------- PatchSet 5695 Date: 2007/09/12 12:34:40 Author: amosjeffries Branch: squid3-ipv6 Tag: (none) Log: Patch around a locking problem in ipcache. On some regular triggers ipcacheUnlockEntry would be called from ipcacheCallback() when no locks are counted on the entry. Members: src/ipcache.cc:1.9.2.44->1.9.2.45 Index: squid3/src/ipcache.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/ipcache.cc,v retrieving revision 1.9.2.44 retrieving revision 1.9.2.45 diff -u -r1.9.2.44 -r1.9.2.45 --- squid3/src/ipcache.cc 29 Aug 2007 11:52:37 -0000 1.9.2.44 +++ squid3/src/ipcache.cc 12 Sep 2007 12:34:40 -0000 1.9.2.45 @@ -1,6 +1,6 @@ /* - * $Id: ipcache.cc,v 1.9.2.44 2007/08/29 11:52:37 amosjeffries Exp $ + * $Id: ipcache.cc,v 1.9.2.45 2007/09/12 12:34:40 amosjeffries Exp $ * * DEBUG: section 14 IP Cache * AUTHOR: Harvest Derived @@ -995,7 +995,11 @@ static void ipcacheUnlockEntry(ipcache_entry * i) { - assert(i->locks > 0); + if(i->locks < 1) { + debugs(14, 1, "WARNING: ipcacheEntry unlocked with no lock! locks=" << i->locks); + return; + } + i->locks--; if (ipcacheExpiredEntry(i))