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)