Discover linux kernel debugging tutorial, include the articles, news, trends, analysis and practical advice about linux kernel debugging tutorial on alibabacloud.com
environment. The function call stack information can be displayed through Bt–n (backtrace), and N represents the number of call stack layers displayed. Because the TEST.C debugger does not involve function calls, we can only see the stack information of the main function, and if the program is wrong in the child function of the main function, it is possible to print more call stack information.The disassemble command allows you to print an assembly code fragment when an error occurs, where the
(Crashes the system without first unmounting file systems or Syncing disks attached to the system)Immediately re-mount all file systems echo "S" > Proc/sysrq-trigger (attempts to sync disks attached to the system)Immediately re-mount all file systems as read-only echo "U" > Proc/sysrq-trigger (Attempts to unmount and remount all files systems as Read-only)In addition, there are two features that are similar to forced logoffE----kills all processes except init using SIGTERMI----kills all process
quickly and compilation was much faster. Very powerful.
Look at the code and change the code. It is quite good to use vim. With cscope, As long as make O = .. /latest V = 1 csest generated. it's good to add the cssag tag file when you look at the code.
When debugging, you can use qemu to conveniently modify, compile, and test on the host. Very convenient.
You can compile a qemu or install it directly on ubuntu.
Apt-get install qemu-pxe
Then you can g
of the package in the system (access rights, paths ...), similar to some LNK files in Windows.Package UID ERRORSGet the log: Read file/data/system/uiderrors.txtError messageKERNEL last Kmsg LOGLatest Kernel message LogLast RADIO LOGLatest Radio LogKERNEL PANIC CONSOLE LOGKERNEL PANIC THREADS LOGConsole/thread error messages logBacklightsGet the log: Get LCD brightness Read/sys/class/leds/lcd-backlight/brightnessGet the log: Get button brightness Read
FtraceUseThe Ftrace contains a series of trackers for different occasions, such as tracking kernel function calls (function Tracer), tracking context switches (Sched_switch Tracer), viewing the length of the interrupt being closed (Irqsoff tracer), Track latency and performance issues in the kernel. Ftrace is a kernel tracing tool built into
Article title: Linux kernel module debugging. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open sourc
know the latest kernel has not fixed these details, too lazy to see, there should be no official hairstyle version will open this option. So the article title mentioned in the possibility of injection is relatively small, originally this thing appeared in the background is to facilitate the debugging of the kernel developer work!Instance/*JPROBE_TEST.C * *#inclu
check whether other programs are using this I/O port. If not, mark this port as in use, release it after use. In device drivers, the timing mechanism is generally used. In Linux, the clock is taken over by the system, and the device driver can apply for a clock from the system. The information printed by printk is not only displayed on the screen, but also recorded in the file syslog.
Like other programs in the system, the
instructions, please see://Www.gnu.org/software/gdb/bugs/>, .....Reading symbols from/home/share/jz2440/Test_debug...done. [New LWP748] Warning: '/lib/libc.so.6': Shared Library architecture unknown is not compatible with target architecture arm.Warning: '/lib/ld-linux.so.2': Shared Library architecture unknown is not compatible with target architecture arm.Core is generated by './test_debug'.Program terminated with Signal One, segmentation fault. #0 0X000084AC inchC (p=0x0) at TEST_DEBUG.C:6
Article Title: Linux kernel debugging tool: Kdb Application Guide (3 ). Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedd
Ladies and gentlemen, I haven't solved a problem when compiling the kernel module for a long time. Please help me to see it,666 static _ init int cbac_init (void)667 {668 struct cred * cred;669670 if (! Security_module_enable ( cbac_ops ))671 return 0;672673 printk (KERN_INFO "cbac: InitializE ");674 /*675 * Set the security state for the initial task.676 */677 cred = (struct cred *) current-> cred;678 cred-> security = c_f_key.cbackey;679680/* regis
SysRqUseSYSRQ is called the "Magic key combination" and is a debugging tool built into the Linux kernel. As long as the kernel is not fully locked, no matter what the kernel is doing, using these key combinations can collect system operation information including system memo
calls. There are two special symbols all and none.Note that some shells use! To perform commands in the history, so use \\\\.-E Trace=setOnly the specified system calls are tracked. For example, the-e trace=open,close,rean,write indicates that only the four system calls are tracked. The default is Set=all.-E Trace=fileOnly system calls about file operations are tracked.-E trace=processOnly system calls about process control are tracked.-E Trace=networkTracks all system calls related to the netw
To tamper with the data segment of a child process
7
Ptrace_pokeuser
Tampering with user data for child processes
8
Ptrace_getregs
Read the register value of the child process
9
Ptrace_getfpregs
Read the floating-point register value of a child process
10
Ptrace_getsiginfo
To view information about the semaphore that caused the child process to abort execution
11
Ptrace_setreg
LtraceUseLibrary file call Tracker, Linux kernel built-in command, usage similar to Strace"Command Format""parameter description""Detailed description reference man Ltrace Help document"-D print debug information 01-debug_general 010-debug_event 020-debug_process 040-debug_function-F simultaneously tracks the child processes created by the current process (fork or clone)-l specifies a specific library file
Original URL: http://blog.csdn.net/dragon101788/article/details/9419175The code call process in the kernel is difficult to track, the context is complex, it really makes people headacheCalling Dump_stack () will print the Call function for the stack of the current CPU.So, at a glance you can see the current context, call the relationshipAssume:Encounter Uvc_probe_video Such a function, do not know it is ultimately called by WHO, according to the
11
Diskstats
Display disk-related information
12
Battery
Display battery Information
13
Alarm
Displays application lock-in, which can be used to analyze problems with the system not being idle and application-level deadlock issues
14
Input
The Inputreader and Inputdispatcher message queues are displayed, and the underlying events are typically escalated by inputevent, and by looking at Message Queuin
file systemThe/proc file system is used by the kernel to expose some kernel information to user space. For debugging purposes, therefore, we can add code to the/proc file system to export the information that helps monitor the drive in the driver code. This allows us to monitor and debug drivers by looking at the relevant information in/Proc. How to implement th
SystemTap kernel debugging and systemtap kernel debugging
I. Introduction
Systemtap is a brand new debugging, diagnosis, and performance measurement tool in Linux. It is the most powerful ke
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.