Date: Thu, 31 Jan 2008 20:50:26 +0100 From: Joerg Sonnenberger <joerg@britannica.bec.de> To: cvs-src@freebsd.org Subject: Re: cvs commit: src/sys/netgraph netgraph.h ng_base.c ng_iface.c Message-ID: <20080131195026.GB3751@britannica.bec.de> In-Reply-To: <47A223A7.8030503@FreeBSD.org> References: <200801310851.m0V8pmNB093625@repoman.freebsd.org> <20080131.112901.803599757.imp@bsdimp.com> <47A223A7.8030503@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080131195026.GB3751>