# Debug documentation Diagnose subsystem discrepancies using debug tools and logs that help you troubleshoot system-level issues. ## Debug overview Debug workflow Identify errors and locate the components that need debugging. https://docs.qualcomm.com/doc/80-70020-12/topic/Debug-overview.html#identify-subsystem-to-be-debugged Debug methods Apply debugging methods to fix both hardware and software issues. https://docs.qualcomm.com/doc/80-70020-12/topic/Debug-overview.html#debugging-approaches ## Debug Linux user space issues Debug using ltrace Trace library calls and debug application behavior. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#ltrace Debug using Valgrind Identify memory issues. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#debug-using-valgrind Debug using GDB Enable the GNU project debugger to identify application issues. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#debug-using-gdb Collect coredump Locate where the process crashed and uncover the root cause using coredump analysis. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#collect-coredumps Debug using gdbserver Troubleshoot effectively even when your device has limited space for debug symbols. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#debug-using-gdbserver Debug with user space logs Connect using SSH and use debug tools to identify and troubleshoot issues within the Linux user space. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#userspace-logs Configure debug symbols Analyze system crashes by enabling debug symbols and using the right packages to parse coredumps. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#debug-symbols Reboot the system Trigger controlled or forced system restarts to apply configuration changes, recover from critical faults, or initiate diagnostic workflows with minimal disruption. https://docs.qualcomm.com/doc/80-70020-12/topic/using_open_source_debug_tools.html#reboot-device-from-userspace ## Debug Linux kernel space issues Enable dynamic debug Activate the debugfs file system to dynamically debug kernel components in real time. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#enable-dynamic-debug Enable kernel debugging options Use kernel configuration settings to debug memory leaks, lock contention, and mutex-related issues. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#fmk1520725112713 Configure the kernel for debugging Explore common kernel settings that support debugging and help detect memory-related issues. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#mox1520725120450 Assess memory usage Understand how virtual memory is managed and utilized to optimize system performance and stability. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#qex1520725113914 Trace kernel functions Trace kernel functions at runtime to profile and debug complex system behavior. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#tag1520725122494 Collect and parse RAM dump Capture and decode crash-time memory with platform tools to trace root causes and enable post-failure analysis. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#collect-and-parse-ram-dumps Parse RAM dumps using RAMParser Analyze Qualcomm RAM dumps using the open-source Linux RAMParser to extract process stacks, IRQs, and work queues for in-depth crash diagnostics. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#parse-ram-dumps-using-linux-ramdump-parser-rdp Parse RAM dumps using QCAP Analyze subsystem logs and identify the initial point of failure using QCAP. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#parse-ram-dumps-using-qcap Debug using the crash utility tool Inspect kernel state and debug post-crash issues on Linux systems by analyzing RAM dumps through a GDB-based CLI. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#crash-utility Capture the subsystem dumps Enable and capture the coredumps from subsystems to support targeted debugging and root cause analysis. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#subsystem-ram-dumps Debug using OpenOCD Perform real-time debugging, flashing, and boundary-scan testing on embedded targets using the OpenOCD on-chip interface. https://docs.qualcomm.com/doc/80-70020-12/topic/debugging_linux_kernel.html#debug-using-openocd ## Debug common system issues Debug watchdog timeout issues Debug watchdog-related failures to help your system recover from unexpected hardware or software crashes. https://docs.qualcomm.com/doc/80-70020-12/topic/general_system_debugging.html#watchdog-timeout Debug bus hang and timeout issues Debug bus hang and timeout issues to prevent failures in components that can trigger critical system errors. https://docs.qualcomm.com/doc/80-70020-12/topic/general_system_debugging.html#erroneous-transaction-on-bus-error-and-timeout Identify the cause of hardware reset Use targeted debugging methods to identify the root cause of unexpected hardware resets and system reboots. https://docs.qualcomm.com/doc/80-70020-12/topic/general_system_debugging.html#reset-hardware Last Published: Jul 06, 2025 [Next Topic Debug Overview](https://docs.qualcomm.com/bundle/publicresource/80-70020-12/topics/Debug-overview.md)