Aku punya pesan ini di log kernel saya: INFO: task XXX blocked for more than 120 seconds
. Saya ingin tahu apa artinya secara teknis: di bawah kondisi apa kernel menampilkan pesan ini tentang sebuah tugas?
Sebagai catatan, tugas saya yang diblokir adalah multipathd
, tetapi saya juga tertarik pada arti umum dari kesalahan ini.
linux-kernel
scheduling
Totor
sumber
sumber
Pada dasarnya pencatatan ini dipicu jika penjadwal CPU belum beralih ke proses dalam jumlah waktu tertentu, dan proses tersebut tidak memenuhi syarat untuk pengecualian.
Pengecualian adalah kasus khusus di mana suatu proses belum beralih ke tetapi tidak harus login tentang. Saya tidak mengerti dengan jelas kondisi untuk pengecualian; FWIW komentar pada kasus-kasus dalam kode adalah:
http://lxr.free-electrons.com/source/kernel/hung_task.c#L75
Mengenai mengapa tugas mungkin tidak dijadwalkan untuk jangka waktu yang lama, tugas itu terus menerus dalam TASK_UNINTERRUPTABLE (status 'D') akan menjadi satu kemungkinan, tetapi saya tidak tahu apa yang mungkin ada orang lain.
sumber