[bootlin/training-materials updates] master: debugging: slides: add crash utility (a650921a)

Clément Léger clement.leger at bootlin.com
Wed Nov 16 13:28:04 CET 2022


Repository : https://github.com/bootlin/training-materials
On branch  : master
Link       : https://github.com/bootlin/training-materials/commit/a650921ad3edb241bbe22e8161b24ac2ad81874e

>---------------------------------------------------------------

commit a650921ad3edb241bbe22e8161b24ac2ad81874e
Author: Clément Léger <clement.leger at bootlin.com>
Date:   Wed Nov 16 13:27:52 2022 +0100

    debugging: slides: add crash utility
    
    Signed-off-by: Clément Léger <clement.leger at bootlin.com>


>---------------------------------------------------------------

a650921ad3edb241bbe22e8161b24ac2ad81874e
 .../debugging-kernel-debugging.tex                 | 49 +++++++++++++++++++++-
 1 file changed, 48 insertions(+), 1 deletion(-)

diff --git a/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex b/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
index 4e11bf62..4f4f3cb3 100644
--- a/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
+++ b/slides/debugging-kernel-debugging/debugging-kernel-debugging.tex
@@ -153,7 +153,54 @@
 \begin{frame}
   \frametitle{{\em crash}}
   \begin{itemize}
-    \item {\em crash} utility usage
+    \item {\em crash} is a tool allowing to investigate kernel (dead or alive !)
+    \item Can use a coredump generated using kdump, kvmdump, etc.
+    \item Also works on a live system using /dev/mem or /proc/kcore.
+    \item Based on \code{gdb} and provides many specific commands to inspect the
+      kernel state.
+    \begin{itemize}
+      \item Stack traces, dmesg (\code{log}), memory maps of the processes,
+            irqs, virtual memory areas, etc.
+    \end{itemize}
+    \item Allows examining all the tasks that are running on the system.
+    \item Hosted at \url{https://github.com/crash-utility/crash}
+  \end{itemize}
+\end{frame}
+
+
+\begin{frame}[fragile]
+  \frametitle{{\em crash} example}
+  \begin{itemize}
+    \begin{block}{}
+      \begin{minted}[fontsize=\tiny]{console}
+$ crash vmlinux vmcore
+[...]
+    TASKS: 75
+NODENAME: buildroot
+  RELEASE: 5.13.0
+  VERSION: #1 SMP PREEMPT Tue Nov 15 14:42:25 CET 2022
+  MACHINE: armv7l  (unknown Mhz)
+  MEMORY: 512 MB
+    PANIC: "Unable to handle kernel NULL pointer dereference at virtual address 00000070"
+      PID: 127
+  COMMAND: "watchdog"
+    TASK: c3f163c0  [THREAD_INFO: c3f00000]
+      CPU: 1
+    STATE: TASK_RUNNING (PANIC)
+
+crash> mach
+    MACHINE TYPE: armv7l
+     MEMORY SIZE: 512 MB
+            CPUS: 1
+ PROCESSOR SPEED: (unknown)
+              HZ: 100
+       PAGE SIZE: 4096
+KERNEL VIRTUAL BASE: c0000000
+KERNEL MODULES BASE: bf000000
+KERNEL VMALLOC BASE: e0000000
+KERNEL STACK SIZE: 8192
+      \end{minted}
+    \end{block}
   \end{itemize}
 \end{frame}
 




More information about the training-materials-updates mailing list