On Wed, Jul 11, 2001 at 12:01:50AM +0200, Sander Striker wrote: > I want to discuss this some more to be honest. There > are several options we can try and I feel it is best > to examine more than one, even though one looks like > the way to go. A per-CPU free list will be difficult > to implement for reasons Justin pointed out. > A per thread free list is a lot easier. Actually, if > we use an sms like "tracking" instead of "trivial" we get > one free list. If we then use the "threads" sms (which > I should commit (I'll wait until Davids patch is in)) > as the parent sms of all the top level smss in each > thread, we get a free list per thread. But, this > requires tweaking httpd, which right now is not really > an option.
Well, what about this: If pool_create is called with a NULL parent, then let's create a new thread/trivial SMS (parent is the global pool - aka std SMS - which of course never needs locking). Otherwise, everything else is a tracking SMS that should be descended from a trivial SMS. I wonder how that would work. I'll try to implement this tonight. This shouldn't require any changes to httpd. Maybe, maybe not. -- justin
