TCP and NET_MPSAFE

Kevin Bowling <[email protected]> Wed, 15 Apr 2026 16:06:24 -0700
Newsgroups gmane.os.netbsd.devel.network
Message-ID <CAK7dMtBMibH0dO28k9e2_PY=OFGLY3NR_-bcVab7kDjQGsbWKw@mail.gmail.com>
Looking at https://nxr.netbsd.org/xref/src/doc/TODO.smpnet there is
mention of TCP being protected, and I think this is referring to the
KERNEL_LOCK around tcp_output() and like.

But a cursory read makes these seem unnecessary, i.e. they could be
dropped or switched to KERNEL_LOCK_UNLESS_NET_MPSAFE, because all the
callers already lock accordingly.  A quick test doing so doesn't lead
to immediate issues with a NET_MPSAFE kernel.  But it's also not a big
win because softnet_lock still dominates.

Is there any recent history looking into any of this, and is anyone
working on it still that may want to compare notes?

Regards,
Kevin Bowling