我正在嘗試調試顯然會導致其他 任務掛起的設備驅動程序。確定性是哪個任務或哪個時間會掛起。內核調試掛起進程?
基本上我從內核收到一些錯誤消息,說「任務有 被阻塞超過120秒」,以及一些堆棧跟蹤。 掛起的任務從sendmail的變化到MKFS到將pdflush(內核線程」。 而在堆棧跟蹤中最頂端的功能從改變‘getnstimeofday’ 爲‘bio_submit’到‘mark_locks_held’。
我有一個硬因爲很難找到 問題,內核提供的堆棧跟蹤對 沒有太大幫助。根據這些堆棧跟蹤,一些掛起進程 甚至沒有試圖抓住一個鎖(就像在我不知道爲什麼他們掛起。
所以我想知道如果有人有一些想法如何調試這樣一個 問題。 kgdb是否會在這裏有用,或許通過給我提供什麼 點過程掛起,以及它正在等待什麼樣的鎖?
任何建議表示讚賞。
你的內核編譯爲使用幀指針嗎? – Karmastan 2012-02-04 18:38:49
不,不是。它確實有所有的調試選項。 – yangsuli 2012-02-04 18:51:33