Как убить задачу, которая не может быть убита (не прерывается?)

У меня есть задача, которая блокирует pm-hibernate (в Linux 4.0.7-2). Когда я пытаюсь использовать pm-hibernate, появляется сообщение об ошибке: «Замораживание задач завершилось с ошибкой через 20.002 секунд (1 задача, которая запрещает замораживание, wq_busy = 0):« и задача показана.

Этот процесс является мертвым, убитым за несколько часов до этого. Почему root может не просто удалить его из ядра? Я чувствую себя под Windows!

Я видел связанные вопросы, как Как убить процесс, который нельзя убить без перезагрузки? но, похоже, нет удовлетворительных ответов.

Некоторая информация ( 31207 – pid):

 # cat /proc/31207/syscall 11 0x7fe482a47000 0x25fce 0x7fe481d4eb78 0x1 0x7fe482a6e700 0x25f2d30 0x7ffca8d8c278 0x7fe481a95ae7 # ps -l -p 31207 FS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 0 D 1001 31207 1 0 80 0 - 5035 lock_e pts/9 00:00:00 a.out # ps -lnp 31207 FS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 0 D 1001 31207 1 0 80 0 - 5035 ffffff pts/9 0:00 /tmp/a.out # ps opid,wchan:42,cmd -p 31207 PID WCHAN CMD 31207 lock_extent_bits /tmp/a.out 

Итак, почему я не могу просто остановить это? Остановить это было бы достаточно!

Я не использую сетевой FS, и задача была простой, когда вы обращались к сети. Если вы можете это прочитать, сеть все еще работает.

Процессы в состоянии D (непрерывный сон) не могут быть убиты, пока они находятся в этом состоянии. NFS был известен, но есть другие способы заставить процесс застрять. Ошибочные драйверы устройств, которые не возвращают управление вызывающему процессу, также могут вызывать подобное поведение. Нужно будет сбросить драйвер, но, как правило, этого не сделать. Ненавижу сказать это: нет ничего, кроме перезагрузки, чтобы выбраться из этого.