[bootlin/training-materials updates] master: prove-locking: split concurrency and locking issues and add sleep in atomic (113c5c82)
Clément Léger
clement.leger at bootlin.com
Tue Oct 25 10:52:06 CEST 2022
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/113c5c8202d0f89ee640670ce350e722f086255b
>---------------------------------------------------------------
commit 113c5c8202d0f89ee640670ce350e722f086255b
Author: Clément Léger <clement.leger at bootlin.com>
Date: Wed Oct 19 16:41:53 2022 +0200
prove-locking: split concurrency and locking issues and add sleep in atomic
Signed-off-by: Clément Léger <clement.leger at bootlin.com>
>---------------------------------------------------------------
113c5c8202d0f89ee640670ce350e722f086255b
common/prove-locking.tex | 25 ++++++++++++++++++-------
1 file changed, 18 insertions(+), 7 deletions(-)
diff --git a/common/prove-locking.tex b/common/prove-locking.tex
index 7a74a7b1..c89e60a9 100644
--- a/common/prove-locking.tex
+++ b/common/prove-locking.tex
@@ -1,5 +1,5 @@
\begin{frame}
- \frametitle{Debugging locking and concurrency issues}
+ \frametitle{Debugging locking}
\begin{itemize}
\item Lock debugging: prove locking correctness
\begin{itemize}
@@ -16,11 +16,22 @@
in development.
\item See \kdochtml{locking/lockdep-design} for details
\end{itemize}
- \item Kernel Concurrency SANitizer framework
- \begin{itemize}
- \item \kconfig{CONFIG_KCSAN}, introduced in Linux 5.8.
- \item Can find concurrency issues in your system.
- \item See \url{https://lwn.net/Articles/816850/} for details.
- \end{itemize}
+ \item \kconfig{CONFIG_DEBUG_ATOMIC_SLEEP} allows to detect code that
+ incorrectly sleeps in atomic section (while holding lock typically).
+ \begin{itemize}
+ \item Warning displayed in the dmesg in case of such violation.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Concurrency issues}
+ \begin{itemize}
+ \item Kernel Concurrency SANitizer framework
+ \item \kconfig{CONFIG_KCSAN}, introduced in Linux 5.8.
+ \item Dynamic race detector relying on compile time instrumentation.
+ \item Can find concurrency issues (mainly data races) in your system.
+ \item See \kdochtml{dev-tools/kcsan} and
+ \url{https://lwn.net/Articles/816850/} for details.
\end{itemize}
\end{frame}
More information about the training-materials-updates
mailing list