On 3 Feb 99, at 14:09, Andres Kroonmaa <andre@ml.ee> wrote:
> squid -N -X starts, forks, runs 1 dnsserver, parses its
> conf, last yikes is "leave_suid:..." and thats it.
> CPU skyrockets, http port is not listening. By truss -p
> it all seems doing pretty nothing, I cant even find the
> source of high CPU usage...
aioCancel was broken while adding memPools to it.
the used_list went short-circuit to itself causing
endless while loop.
--- async_io.c.orig Fri Jan 29 01:57:44 1999
+++ async_io.c Wed Feb 3 21:40:38 1999
@@ -133,9 +133,9 @@
ctrlp->operation = _AIO_CLOSE;
if (aio_close(fd, &(ctrlp->result)) < 0) {
close(fd); /* Can't create thread - do a normal close */
+ memPoolFree(aio_ctrl_pool, ctrlp);
return;
}
- memPoolFree(aio_ctrl_pool, ctrlp);
fd_was_closed(fd);
ctrlp->next = used_list;
used_list = ctrlp;
@@ -288,9 +288,9 @@
errno = EWOULDBLOCK;
if (callback)
(callback) (ctrlp->fd, callback_data, -1, errno);
+ memPoolFree(aio_ctrl_pool, ctrlp);
return;
}
- memPoolFree(aio_ctrl_pool, ctrlp);
ctrlp->next = used_list;
used_list = ctrlp;
return;
----------------------------------------------------------------------
Andres Kroonmaa mail: andre@online.ee
Network Manager
Organization: MicroLink Online Tel: 6308 909
Tallinn, Sakala 19 Pho: +372 6308 909
Estonia, EE0001 http://www.online.ee Fax: +372 6308 901
----------------------------------------------------------------------
Received on Tue Jul 29 2003 - 13:15:56 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:04 MST