2013-10-11 107 views
0

我有掛以及proc/SysRq的觸發輸出I看到的調用堆棧在翹起的方法:掛起的進程,調試

test_code   S 0000000101fcf430  0 15181  1   15182 15180 (NOTLB) 
ffff810080997d28 0000000000200086 0000000000000006 0000000000000009 
ffff81012a8a0a28 ffff81012a8a07d0 ffff81010003b980 000079a97155a4a6 
0000000000001474 000000022a8a0808 

Call Trace: 
<ffffffff802f3618>{schedule_timeout+30} 
<ffffffff8014c1ef>{get_futex_key+71} <ffffffff80149a88>{add_wait_queue+21} 
<ffffffff8014c597>{futex_wait_abstime+565} 
<ffffffff8010a1da{do_notify_resume+180} 
ffffffff8012d7d5>{default_wake_function+0} <ffffffff8014c9c7>{do_futex+104} 
<ffffffff801886a7>{pwrite+328} <ffffffff8015692e>{compat_sys_futex+186} 
<ffffffff8b0>{sysenter_do_call+27} 

strace的顯示過程在卡住了:

[pid 7867] accept(12, <unfinished ...> 

有什麼好的鏈接可以讀取調用堆棧中的函數並調試問題?

+1

這是完全正常的,accept()被認爲是「掛起」,直到有人連接到端口。 –

+0

感謝hans的回覆。 – RKum

回答

1

如果它在accept (2)它沒有掛起,它正在等待傳入的連接。

+0

非常感謝您的回覆。 – RKum

+0

proc/sysrq-trigger輸出在get_futex_key上顯示一些等待的輸出如何? 這是什麼意思? – RKum