1.核心開關開啟
.config中,需要開啟如下選項
config_kgdb 加入kgdb支援
config_kgdb_serial_console 使kgdb通過串列埠與主機通訊(開啟這個選項,缺省會開啟config_console_poll和config_magic_sysrq)
config_kgdb_kdb 加入kdb支援
config_debug_kernel 包含驅動除錯資訊
config_debug_info 使核心包含基本除錯資訊
3.使能kdb
在bootargs中增加如下內容 「kgdboc=ttys0,115200」
我的例子是:
bootargs=kgdboc=ttys0,115200 console=ttys0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ath-nor0:256k(u-boot),256k(u-boot-env),6m(rootfs0),1m(uimage0),6m(rootfs1),1m(uimage1),320k(config),1m(reserved),64k(log),64k(manu),64k(art)
4.啟用kdb
進入linux之後,通過echo g >/proc/sysrq-trigger 來開啟kdb
我的例子及輸出是:
[1970-01-01 00:01:55:092000]sysrq : debug
entering kdb (current=0x839d6dd0, pid 2087) due to keyboard entry
kdb> print
unknown kdb command: 『print
』 kdb> bt
stack traceback for pid 2087
0x839d6dd0 2087 346 1 0 r 0x839d6fe0 *echo
[1970-01-01 00:01:55:096000]stack : 7fd18998 000004a8 8284be8c 800b51bc 802ba6d8 80159444 82b429a0 8027fe18
[1970-01-01 00:01:55:096000] 0000000d 00003dcd 00000002 fffffffb 00000002 2ab75038 7fffffff 00000100
[1970-01-01 00:01:55:096000] 004b0000 00463668 80159638 00000571 00000000 00000001 00000000 839d6dd0
[1970-01-01 00:01:55:096000] 838ce660 800df90c 00000002 004065b0 8004a74c 004065b0 82bb77c0 fffffff7
[1970-01-01 00:01:55:096000] 800a7f50 800a7f50 004a4410 00000000 8003e700 00000000 00000000 2ab7218c
[1970-01-01 00:01:55:096000] …
[1970-01-01 00:01:55:096000]call trace:
[1970-01-01 00:01:55:096000][<8000ffe4>] breakinst+0x0/0x10
[1970-01-01 00:01:55:096000][<80057a88>] kgdb_breakpoint+0x30/0x58
[1970-01-01 00:01:55:096000][<80159444>] __handle_sysrq+0xa4/0x19c
[1970-01-01 00:01:55:096000][<80159638>] write_sysrq_trigger+0x64/0x6c
[1970-01-01 00:01:55:096000][<800df90c>] proc_reg_write+0x48/0x6c
[1970-01-01 00:01:55:096000][<800a7f50>] sys_write+0x58/0xa8
[1970-01-01 00:01:55:096000][<8000f324>] stack_done+0x20/0x3c
[1970-01-01 00:01:55:096000]
kdb>
u-boot 1.1.4 (apr 9 2015 - 17:11:33)
注意:進入斷點之後,如果不執行go指令,那麼系統就會停下來。當看門狗沒喂會導致系統重啟。
如果啟動時沒有指定kgdboc=ttys0,115200, 那echo g >/proc/sysrq-trigger只會列印出幫助資訊。
[1970-01-01 00:10:00:132000]sysrq : help : loglevel(0-9) reboot crash terminate-all-tasks(e) memory-full-oom-kill(f) debug(g) kill-all-tasks(i) thaw-filesystems(j) show-memory-usage(m) nice-all-rt-tasks(n) show-registers(p) show-all-timers(q) sync show-task-states(t) unmount show-blocked-tasks(w) dump-ftrace-buffer(z)
即列印出sysrq只支援的選項
ogre開發環境快速搭建 成功率100
條件 vs2010,directx sdk 安裝完畢 解壓後,在環境變數中新增ogre home,值為ogre.sln所在目錄 解壓路徑 的絕對路徑。用vs開啟ogre.sln 並編譯,編譯需要很長時間。完成後應該可以在debug release目錄下找到並成功執行 samplebrowser.ex...
Nginx搭建成功後,無法訪問Tomcat問題
一 nginx搭建好後無法訪問後端tomcat專案 通過專案名稱過濾的方式訪問tomcat,比如專案名稱叫easy。修改其server下的location目錄,配置如下 1 server219 20 過濾檔案網域名稱結尾是如下型別的,可以進行時間設定載入 二 配置原理解說 其中easy是tomcat...
PurchaseOrder建立成功,然而
乙個好訊息,乙個壞訊息。好訊息是purchase order成功在qad中通過soapui新建,但刪除和查詢功能暫未實現。壞訊息是,目前qxtend與iib的專案不是優先順序最高的專案。所以暫停進行下一步。qxtend的培訓也暫緩到11月,目前先集中精力投入到barcoding專案上。這樣一來,工作...