揮発性のメモ2

知識をメモ書きしておく

Kernel panic - not syncing: hung_task: blocked tasks

beaglebone blackなどの非力なマシンで
くそでっかいファイルをコピーして sync したらカーネルパニックを起こした。

[  420.350535] INFO: task sync:11110 blocked for more than 60 seconds.
[  420.357122] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  420.365312] sync            D c038cccf     0 11110   9162 0x00000000
[  420.371980] Kernel panic - not syncing: hung_task: blocked tasks
[  420.378274] [<c0010569>] (unwind_backtrace+0x1/0x8c) from [<c0388f91>] (panic+0x55/0x14c)
[  420.386809] [<c0388f91>] (panic+0x55/0x14c) from [<c0061d27>] (watchdog+0x153/0x1a0)
[  420.394895] [<c0061d27>] (watchdog+0x153/0x1a0) from [<c003cd3b>] (kthread+0x61/0x72)
[  420.403071] [<c003cd3b>] (kthread+0x61/0x72) from [<c000c73d>] (ret_from_fork+0x11/0x34)
[  420.411507] drm_kms_helper: panic occurred, switching back to text console
[  420.418673] Rebooting in 6 seconds..

http://docs.oracle.com/cd/E39368_01/e48214/ch05s02.html


ちょっと不安定なマシンだったので、念のためにカーネルパニックが起きたらリブートするようにしていた。

echo 6 > /proc/sys/kernel/panic
echo 1 > /proc/sys/kernel/panic_on_oops

そこに、sync、設定値(60秒)以上固まるスレッドがやってきたため、カーネルパニックが発生した。
カーネルパニックが発生したので、リブートした。


対処法
ログにあるように、時間かかりそうことするときは /proc/sys/kernel/hung_task_timeout_secs に0書いて無効化しておく