Module Name: src Committed By: ozaki-r Date: Tue Aug 7 07:19:09 UTC 2018
Modified Files: src/doc: TODO.smpnet Log Message: Categorize non MP-safe components into protected and unprotected ones To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/doc/TODO.smpnet Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/doc/TODO.smpnet diff -u src/doc/TODO.smpnet:1.20 src/doc/TODO.smpnet:1.21 --- src/doc/TODO.smpnet:1.20 Mon Jun 25 09:32:28 2018 +++ src/doc/TODO.smpnet Tue Aug 7 07:19:09 2018 @@ -1,8 +1,11 @@ -$NetBSD: TODO.smpnet,v 1.20 2018/06/25 09:32:28 msaitoh Exp $ +$NetBSD: TODO.smpnet,v 1.21 2018/08/07 07:19:09 ozaki-r Exp $ MP-safe components ================== +They work without the big kernel lock (KERNEL_LOCK), i.e., with NET_MPSAFE +kernel option. Some components scale up and some don't. + - Device drivers - vioif(4) - vmx(4) @@ -34,8 +37,25 @@ MP-safe components Non MP-safe components and kernel options ========================================= +The components and options aren't MP-safe, i.e., requires the big kernel lock, +yet. Some of them can be used safely even if NET_MPSAFE is enabled because +they're still protected by the big kernel lock. The others aren't protected and +so unsafe, e.g, they may crash the kernel. + +Protected ones +-------------- + - Device drivers - Most drivers other than ones listed in the above section + - Layer 4 + - DCCP + - SCTP + - TCP + - UDP + +Unprotected ones +---------------- + - Layer 2 - ARCNET (if_arcsubr.c) - ATM (if_atmsubr.c) @@ -51,11 +71,6 @@ Non MP-safe components and kernel option - PIM - MPLS (mpls(4)) - IPv6 address selection policy - - Layer 4 - - DCCP - - SCTP - - TCP - - UDP - Interfaces - agr(4) - carp(4)