Quoth David Wu:
> OK. For normally CGI program(I mean exit normally) it works fine. But If
> I try to call "cat kmsg" in a CGI program then it will block further 
> request from browser.  It seems there is one missing close on the socket.

That's just vfork at work, isn't it?  vfork blocks the execution of the parent 
process until the child exits or execs.

IIRC, the way the patch worked was to run the actual CGI in parallel (because 
it was exec'd), but the output processing within the server itself blocks the 
main server body while waiting for output from the CGI.  Admittedly not ideal, 
but I wasn't needing to serve multiple connections anyway so I didn't look into 
it further.  There was a comment to that effect in the patch, I think.

I think to sort that out the I/O interpose helper children would have to be 
split off into "true" separate processes that could be exec'd, which would have 
been quite a bit more work :)


_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to