cvs commit: src/sys/netgraph netgraph.h ng_base.c ng_iface.c

Joerg Sonnenberger joerg at britannica.bec.de
Thu Jan 31 11:54:05 PST 2008


On Thu, Jan 31, 2008 at 09:38:15PM +0200, Alexander Motin wrote:
> There will always be some part of magic as nobody can say for sure how much 
> stack is required to pass packet via all network stack to TCP socket and 
> then back. But while netgraph engine allows to decouple stack without 
> consequences I thing it worth to make it work.

There was a some research work a number of years ago on this topic.
They instrumented the compiler to check the remaining size of the stack
based on the call graph. This allows threads without fixed size stacks
and gives one of the huge advantages of non-blocking programming to
threaded programs. Of course, this was never turned into main stream,
but the result was that the performance impact was quite low for typical
programs, as the number of cycles in the call graph to break is not that
bad in practise.

Joerg


More information about the cvs-src mailing list