Date: Fri, 11 Nov 2011 22:14:39 +0200 From: Alexander Motin <mav@FreeBSD.org> To: freebsd-net <freebsd-net@freebsd.org>, yakimenko.alexey@gmail.com Subject: Re: Netgraph multithreading Message-ID: <4EBD822F.6000509@FreeBSD.org>
next in thread | raw e-mail | index | archive | help
Hi. > Is Netgraph supports multithreading in FreeBSD 8.1? Generally yes, but there are many different cases. Netgraph uses direct function calls to handle traffic. It means that when it is possible it runs directly in network card interrupt threads contexts, or if net.isr.direct sysctl set to 0 (default) in network software interrupts threads context. How many first you have depends on hardware and NIC drivers. Number of second depends on hardware and OS version. Also when function call depth is too big or there are other reasons preventing direct calls, netgraph queues packets, and then, when possible, handles them using multiple dedicated threads. Unluckily, after packets queued for some node, all packets for it will be handled only by one thread to prevent reordering. -- Alexander Motin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EBD822F.6000509>