私はpm-hibernate(Linux 4.0.7-2)をブロックするタスクを実行しています。 pm-hibernateを試みると、「20.002秒後にジョブの固定に失敗しました(1ジョブの固定が拒否されました、wq_busy = 0):」というエラーメッセージが表示され、ジョブが表示されます。
そのプロセスは死んだプロセスで、数時間前に終了しました。 rootでカーネルから削除できないのはなぜですか?まるでWindowsの下にあるような感じですよ!
同様の関連質問を見ました。再起動しないと終了できないプロセスを終了するには?しかし、満足のいく答えはないようです。
いくつかの情報(31207
pidはpidです):
# cat /proc/31207/syscall
11 0x7fe482a47000 0x25fce 0x7fe481d4eb78 0x1 0x7fe482a6e700 0x25f2d30 0x7ffca8d8c278 0x7fe481a95ae7
# ps -l -p 31207
F S 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
F S 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
では、なぜ停止できないのですか? しばらく止まるだけで十分です!
私はネットワークファイルシステムを使用していません。タスクは、ネットワークにアクセスする簡単なタスクです。この内容を読むことができれば、ネットワークはまだ良いです。
答え1
状態D(無中断スリープ)のプロセスは、この状態では終了できません。 NFSはこの問題で悪名高いが、プロセスを中断する別の方法があります。この動作は、呼び出しプロセスに制御を返さない破損したデバイスドライバが原因で発生する可能性があります。人々はドライバーをリセットする必要がありますが、一般的にそうする方法はありません。話すのが嫌いです。再起動以外は何もしません。