Tenía este mensaje en mi registro del núcleo: INFO: task XXX blocked for more than 120 seconds
. Me gustaría saber qué significa técnicamente: ¿bajo qué condiciones muestra el núcleo este mensaje sobre una tarea?
Para el registro, mi tarea bloqueada fue multipathd
, pero también estoy interesado en el significado general de este error.
linux-kernel
scheduling
Totor
fuente
fuente
Básicamente, este registro se desencadena si el programador de la CPU no ha cambiado al proceso en la cantidad de tiempo dada, y el proceso no califica para una excepción.
Las excepciones son casos especiales en los que no se ha cambiado un proceso pero no se debe iniciar sesión. No entiendo claramente las condiciones de las excepciones; FWIW los comentarios sobre los casos en el código son:
http://lxr.free-electrons.com/source/kernel/hung_task.c#L75
En cuanto a por qué una tarea podría no estar programada durante un largo período de tiempo, estar continuamente en TASK_UNINTERRUPTABLE (estado 'D') sería una posibilidad, pero no sé qué otras podrían existir.
fuente