core dumps on leaf
dillon at apollo.backplane.com
Tue Jan 18 18:53:20 PST 2005
: Why does this problem not appear under FreeBSD?
:It does happen in FreeBSD, but you have to catch it at the right
:time. Since FreeBSD is effectively single-threaded with their
:mutual exclusion locks, this happens much less in FreeBSD. However
:it also means when we both release the big kernel lock, we'll be
:able to scale to much higher number of processors because we're
:multi-threaded instead of single-threaded in the kernel.
: Is it because of the multi-threaded kernel?
It could also be partially hidden by FreeBSD's priority mechanism,
but I suspect the primary reason is simply the fact that their network
is 'interrupt driven', i.e. not multi-threaded but more
multi-interrupt-driven, so it is very likely that any pending packets
will have been processed by the time mainline kernel code tries to free()
the interface structure.
I suspect the issue will come out of the woodwork for them too at some
<dillon at xxxxxxxxxxxxx>
More information about the Kernel