[bootlin/training-materials updates] master: slides: debugging: move sparse slide after prove_locking (3476d9a1)
Clément Léger
clement.leger at bootlin.com
Fri Feb 3 10:28:54 CET 2023
Repository : https://github.com/bootlin/training-materials
On branch : master
Link : https://github.com/bootlin/training-materials/commit/3476d9a1c4141390828db20a27d54a8781f7aa43
>---------------------------------------------------------------
commit 3476d9a1c4141390828db20a27d54a8781f7aa43
Author: Clément Léger <clement.leger at bootlin.com>
Date: Fri Feb 3 10:28:54 2023 +0100
slides: debugging: move sparse slide after prove_locking
It makes more sense to group slides based on the type of debugging and
in that case to group compile-time instrumentation/checks
Signed-off-by: Clément Léger <clement.leger at bootlin.com>
>---------------------------------------------------------------
3476d9a1c4141390828db20a27d54a8781f7aa43
.../debugging-kernel-debugging.tex | 56 +++++++++++-----------
1 file changed, 28 insertions(+), 28 deletions(-)
diff --git a/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex b/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
index 1edfb4ec..4128ed66 100644
--- a/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
+++ b/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
@@ -501,34 +501,6 @@ $ target remote localhost:5551
\input{../common/prove-locking.tex}
-\begin{frame}[fragile]
- \frametitle{Static code analysis}
- \begin{itemize}
- \item Static analysis can be run with the {\em sparse} tool
- \item {\em sparse} works with annotation and can detect various errors at
- compile time
- \begin{itemize}
- \item Locking issues (unbalanced locking)
- \item Address space issues, such as accessing user space pointer directly
- \end{itemize}
- \item Analysis can be run using \code{make C=2} to run only on files that are
- recompiled
- \item Or with \code{make C=1} to run on all files
- \item Example of an unbalanced locking scheme:
- \end{itemize}
- \begin{block}{}
- \begin{minted}[fontsize=\small]{console}
-rzn1_a5psw.c:81:13: warning: context imbalance in 'a5psw_reg_rmw' - wrong count
- at exit
- \end{minted}
- \end{block}
-
- \vspace{0.5cm}
- \begin{center}
- \includegraphics[height=0.1\textheight]{slides/debugging-kernel-debugging/sparse.pdf}
- \end{center}
-\end{frame}
-
\begin{frame}
\frametitle{{\em UBSAN}}
\begin{itemize}
@@ -582,6 +554,34 @@ R13: 0000000000005490 R14: 00000000006ed530 R15: 00007fb5ef0e3700
\end{block}
\end{frame}
+\begin{frame}[fragile]
+ \frametitle{Static code analysis}
+ \begin{itemize}
+ \item Static analysis can be run with the {\em sparse} tool
+ \item {\em sparse} works with annotation and can detect various errors at
+ compile time
+ \begin{itemize}
+ \item Locking issues (unbalanced locking)
+ \item Address space issues, such as accessing user space pointer directly
+ \end{itemize}
+ \item Analysis can be run using \code{make C=2} to run only on files that are
+ recompiled
+ \item Or with \code{make C=1} to run on all files
+ \item Example of an unbalanced locking scheme:
+ \end{itemize}
+ \begin{block}{}
+ \begin{minted}[fontsize=\small]{console}
+rzn1_a5psw.c:81:13: warning: context imbalance in 'a5psw_reg_rmw' - wrong count
+ at exit
+ \end{minted}
+ \end{block}
+
+ \vspace{0.5cm}
+ \begin{center}
+ \includegraphics[height=0.1\textheight]{slides/debugging-kernel-debugging/sparse.pdf}
+ \end{center}
+\end{frame}
+
\begin{frame}[fragile]
\frametitle{Good practices in kernel development (1/2)}
\begin{itemize}
More information about the training-materials-updates
mailing list