httpd-apreq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bojan Smojver <bo...@rexursive.com>
Subject Re: Recall of input filter module on completion of output filterprocessing for a request???
Date Tue, 31 Aug 2004 04:37:55 GMT
On Tue, 2004-08-31 at 13:23, Joe Schaefer wrote:

> Here your talking about the "buckets" in the brigade, not the 
> brigade itself, right?  (If so, I totally agree with you).

Yeah, I stuffed that bit up, didn't I? Brigades are actually allocated
from the heap directly, not from the pool. The cleanup is registered
with the pool. So, what I meant is that the brigade's cleanup gets
registered with the connection pool, rather than request pool. That's
all for output filters, which were mentioned in the original post. But,
I didn't mention that either. Sorry :-)

When the request is dealt with, the brigade may get hosed, if it's
registered with the request pool. So, when the output connection filter
wants to access that memory, it's gone or allocated to something
completely different. Instant segfault.

In terms of buckets (which can be allocated among other things from the
pool), of course, your interpretation is again correct. They have to
have lifetime of at least connection. Same problem again - if they
don't, by the time the output filter gets to deal with them, they may be
gone. Again, instant segfault.

So, if the brigade from the input filter is somehow used by connection
processing later on, once the request cleanup whacks it, the connection
part may be causing the segfault. That's what I was trying to point to.
But, it may be something completely different, of course.

-- 
Bojan


Mime
View raw message