dm_crypt/kworkerがIOを消費し、システムがハングします。

dm_crypt/kworkerがIOを消費し、システムがハングします。

この問題をデバッグする方法はわかりませんが、多くのディスクの読み取り/書き込みが必要なタスク(大きなpostgresテーブルの更新など)を実行している場合、定期的に実際の読み取りと書き込みがゼロになることを確認しました。 dm_cryptがiotopにある間、IO使用率は99.9%で表示されます。

dmcrypy_wwrite 99.9% IO

さらに、複数のkworkerスレッドが作成されると、DE全体が頻繁に停止します。マウスは引き続き機能して移動できますが、他のウィンドウは約30〜60秒間応答しません。

CPU は常に低い使用率を維持し、iotop に表示されている複数の kworker スレッドと同時に停止します。

kworker/kcryptd 遅延

これは停止中のsyslog出力です。

Oct 22 11:09:47 pop-os /usr/lib/gdm3/gdm-x-session[3348]: (EE) client bug: timer event5 debounce: scheduled expiry is in the past (-6ms), your system is too slow
Oct 22 11:09:47 pop-os /usr/lib/gdm3/gdm-x-session[3348]: (EE) client bug: timer event5 debounce short: scheduled expiry is in the past (-19ms), your system is too slow
Oct 22 11:10:12 pop-os gjs[184224]: JS ERROR: Gio.IOErrorEnum: Timeout was reached
                                    _proxyInvoker@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:139:46
                                    _makeProxyMethod/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:164:30
                                    makeAreaScreenshot@/home/anthony/.local/share/gnome-shell/extensions/[email protected]/auxhelper.js:78:33
                                    main/<@/home/anthony/.local/share/gnome-shell/extensions/[email protected]/auxhelper.js:190:21
                                    main@/home/anthony/.local/share/gnome-shell/extensions/[email protected]/auxhelper.js:204:30
                                    @/home/anthony/.local/share/gnome-shell/extensions/[email protected]/auxhelper.js:216:3
Oct 22 11:10:36 pop-os gnome-shell[3610]: JS ERROR: Error: cmd: gjs /home/anthony/.local/share/gnome-shell/extensions/[email protected]/auxhelper.js --filename /tmp/gnome-shell-screenshot-ZPGAT0.png --area 3640,809,948,419 exitCode=256
                                          callHelper/<@/home/anthony/.local/share/gnome-shell/extensions/[email protected]/selection.js:87:16
Oct 22 11:10:50 pop-os gnome-shell[3610]: ../clutter/clutter/clutter-actor.c:10558: The clutter_actor_set_allocation() function can only be called from within the implementation of the ClutterActor::allocate() virtual function.

postgresデータベースはOSとは別のディスクに保存されているので、私のDE作成中に停止してはいけませんか?この問題をさらにデバッグし、問題の原因を特定する方法に関する提案がある人はいますか?

人気のあるオペレーティングシステム20.04

5.4.0-7634 - 一般

ベストアンサー1

この問題を解決するには、vm.dirty_ratioとvm.dirty_Background_ratioを編集する必要がありました。問題は、ディスクが処理できるよりも速くディスクに書き込んでおり、キャッシュがいっぱいになるたびにシステムがハングすることです。

おすすめ記事