Revision: 992 Author: teawater Date: Wed Mar 28 01:41:46 2012 Log: Update doc http://code.google.com/p/kgtp/source/detail?r=992 Modified: /trunk/howto.txt /wiki/HOWTO.wiki ======================================= --- /trunk/howto.txt Fri Feb 24 19:10:54 2012 +++ /trunk/howto.txt Wed Mar 28 01:41:46 2012 @@ -2,7 +2,7 @@ ========================================= By Hui Zhu <teawater@xxxxxxxxx> https://code.google.com/p/kgtp/wiki/HOWTO - 2012-02-21 + 2012-03-28 Table of contents ----------------- @@ -49,7 +49,6 @@ Howto let tracepoint output value directly Output stack dump directly Switch collect to output the value directly - Use printf command in actions Get status of KGTP from Kernel Set the trace buffer into a circular buffer Do not stop tracepoint when the GDB disconnects @@ -254,17 +253,6 @@ -How to get new version GDB --------------------------- --The old version GDB such as GDB 7.2 have some bugs about tracepoint that KGTP
-need. So I suggest you update your version older than 7.2. -If you use UBUNTU, use can get the new version from -https://lkml.org/lkml/2011/6/4/65 - - - - Howto use --------- @@ -1216,46 +1204,6 @@ "gtp 1" means that it was output by tracepoint 1. -Use printf command in actions ------------------------------ - -Before you use this function, please go to https://code.google.com/p/gdbt/ -install GDB for KGTP first. - -Following example show the a count number, pid and the file name that call -vfs_readdir: - --------------------------------------------------------------------------------- -target remote /sys/kernel/debug/gtp -tvariable $c -trace vfs_readdir - commands- printf "<0>%d pid=%d name:%s\n", $c=$c+1, ((struct task_struct *)$current_task)->pid, file->f_path.dentry->d_iname
- end --------------------------------------------------------------------------------- - -Then your kernel will printk like: - --------------------------------------------------------------------------------- -1 pid=10888 name:bin -2 pid=10888 name:bin -3 pid=10893 name:teawater -4 pid=10893 name:teawater --------------------------------------------------------------------------------- --Like what we use with printk in Linux Kernel, please add kernel loglevel at the
-beginning and add "\n" in the end. -The kernel loglevel is: -KERN_EMERG "<0>" system is unusable -KERN_ALERT "<1>" action must be taken immediately -KERN_CRIT "<2>" critical conditions -KERN_ERR "<3>" error conditions -KERN_WARNING "<4>" warning conditions -KERN_NOTICE "<5>" normal but significant condition -KERN_INFO "<6>" informational -KERN_DEBUG "<7>" debug-level messages - - Get status of KGTP from Kernel ------------------------------ ======================================= --- /wiki/HOWTO.wiki Mon Feb 20 20:06:54 2012 +++ /wiki/HOWTO.wiki Wed Mar 28 01:41:46 2012 @@ -1,5 +1,5 @@ #labels Phase-QA,Phase-Deploy -Update in 2012-02-21 +Update in 2012-03-28 <wiki:toc max_depth="3" /> = What is KGTP =*KGTP* is a *realtime* and *lightweight* Linux Kernel *debugger* and *tracer*.<br><br>
@@ -106,10 +106,6 @@This commands will copy the files of KGTP to the directory that DKMS need.<br>
Then you can use DKMS commands to control KGTP.<br> Please goto http://linux.dell.com/dkms/manpage.html to see how to use DKMS. - -= How to get new version GDB =-The old version GDB such as GDB 7.2 have some bugs about tracepoint that KGTP need. So I suggest you update your version older than 7.2.<br> -If you use UBUNTU, use can get the new version from https://lkml.org/lkml/2011/6/4/65
= Howto use = == Exec it == If you have installed KGTP in your system, you can: @@ -814,36 +810,6 @@ gtp 1:file->f_path.dentry->d_iname=b26 }}} "gtp 1" means that it was output by tracepoint 1. -=== Use printf command in actions ===-Before you use this function, please go to [https://code.google.com/p/gdbt/] install GDB for KGTP first. -Following example show the a count number, pid and the file name that call vfs_readdir:
-{{{ -target remote /sys/kernel/debug/gtp -tvariable $c -trace vfs_readdir - commands- printf "<0>%d pid=%d name:%s\n", $c=$c+1, ((struct task_struct *)$current_task)->pid, file->f_path.dentry->d_iname
- end -}}} -Then your kernel will printk like: -{{{ -1 pid=10888 name:bin -2 pid=10888 name:bin -3 pid=10893 name:teawater -4 pid=10893 name:teawater -}}}-Like what we use with printk in Linux Kernel, please add kernel loglevel at the beginning and add "\n" in the end.<br>
-The kernel loglevel is: -{{{ -KERN_EMERG "<0>" system is unusable -KERN_ALERT "<1>" action must be taken immediately -KERN_CRIT "<2>" critical conditions -KERN_ERR "<3>" error conditions -KERN_WARNING "<4>" warning conditions -KERN_NOTICE "<5>" normal but significant condition -KERN_INFO "<6>" informational -KERN_DEBUG "<7>" debug-level messages -}}} == Get status of KGTP from Kernel == Please use GDB command "tstatus" == Set the trace buffer into a circular buffer ==