summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@kernel.org>2023-10-01 09:13:28 -0700
committerPaul E. McKenney <paulmck@kernel.org>2023-10-01 09:13:28 -0700
commit3860345ab8d75a321b64062ea013e33591e69586 (patch)
treeb5e402aa68a22dde8db1a107228c74d0db5803e4
parent18bb86ce86bd9fdd451e76c4f10aa2c072ef338a (diff)
downloadperfbook-3860345ab8d75a321b64062ea013e33591e69586.tar.gz
defer/rcuusage: Add Matt Kline GC/RCU analogy
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
-rw-r--r--bib/RCU.bib9
-rw-r--r--defer/rcuusage.tex8
2 files changed, 14 insertions, 3 deletions
diff --git a/bib/RCU.bib b/bib/RCU.bib
index 092ee13e..e653a1b9 100644
--- a/bib/RCU.bib
+++ b/bib/RCU.bib
@@ -3530,3 +3530,12 @@ series = {SPAA '20}
primaryClass={cs.IT},
note="\url{https://arxiv.org/abs/2304.11683}",
}
+
+@unpublished{MattKline2023LockBasedLocklessFresh,
+ Author="Matt Kline",
+ Title="Garbage Collection for Systems Programmers",
+ year="2023",
+ month="September",
+ day="27",
+ note="\url{https://bitbashing.io/gc-for-systems-programmers.html}",
+}
diff --git a/defer/rcuusage.tex b/defer/rcuusage.tex
index fb2a04ee..3db94b21 100644
--- a/defer/rcuusage.tex
+++ b/defer/rcuusage.tex
@@ -881,9 +881,11 @@ existence guarantees discussed in
\label{sec:defer:Light-Weight Garbage Collector}
A not-uncommon exclamation made by people first learning about
-RCU is ``RCU is sort of like a garbage collector!''
-This exclamation has a large grain of truth, but it can also be
-misleading.
+RCU is ``RCU is sort of like a garbage
+collector!''~\cite{MattKline2023LockBasedLocklessFresh}.
+This exclamation has a large grain of truth, especially when using RCU
+to implement non-blocking algorithms that rely on garbage collection,
+but it can sometimes be misleading.
Perhaps the best way to think of the relationship between RCU
and automatic garbage collectors (GCs) is that RCU resembles