Chrome および Electron ベースのアプリケーションのランダム停止

Chrome および Electron ベースのアプリケーションのランダム停止

私はArch LinuxとCinnamonデスクトップ環境を使用しています。過去数週間でランダムに一時的に停止する現象(数秒、5〜10秒)を経験しました。クロム勇敢なフランツそして気分転換。凍結は独立しています。たとえば、Chromiumを凍結することができ、Braveはうまく機能します。その逆に

これらのツールはすべて、Chromium自体とBraveと直接または次の方法でChromiumコードを使用するため、関連していると思います。電子SlackやFranzの場合と同様に、問題もそれと関連がないかと推測してみます。

停止が発生すると、停止したアプリケーションが応答しなくなり、ウィンドウのサイズ変更も機能しません(破損しているように見えます)。

ウィンドウのサイズ変更の失敗を示すスクリーンショット

他のすべてはうまく機能しますが、新しい端末を開き、他のアプリケーションと正常に対話することができ、デスクトップが反応し、CPUやRAMの使用量が急増しません。そのツールに過ぎません。

4 つのツールをすべて実行すると、一部の GPU 関連メッセージが端末に表示されます。

  • クロム

    $ chromium 
    [58330:58330:0822/140928.777356:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [58383:58383:0822/140928.908932:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [58438:58438:0822/140928.917645:ERROR:angle_platform_impl.cc(43)] Display.cpp:992 (initialize): ANGLE Display::initialize error 0: Internal Vulkan error (-3): Initialization of an object could not be completed for implementation-specific reasons, in ../../third_party/angle/src/libANGLE/renderer/vulkan/RendererVk.cpp, initialize:1317.
    [58438:58438:0822/140928.917713:ERROR:gl_surface_egl.cc(831)] EGL Driver message (Critical) eglInitialize: Internal Vulkan error (-3): Initialization of an object could not be completed for implementation-specific reasons, in ../../third_party/angle/src/libANGLE/renderer/vulkan/RendererVk.cpp, initialize:1317.
    [58438:58438:0822/140928.917732:ERROR:gl_surface_egl.cc(1353)] eglInitialize SwANGLE failed with error EGL_NOT_INITIALIZED
    [58438:58438:0822/140928.917751:ERROR:gl_ozone_egl.cc(23)] GLSurfaceEGL::InitializeOneOff failed.
    [58438:58438:0822/140928.919686:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [58470:58470:0822/140928.943148:ERROR:gpu_init.cc(486)] Passthrough is not supported, GL is disabled, ANGLE is 
    
  • 勇敢な

    $ brave 
    [42382:42382:0822/135725.937415:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42441:42441:0822/135726.073407:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42530:42530:0822/135726.271483:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42643:42643:0822/135726.363020:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42763:42763:0822/135726.440747:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42789:42789:0822/135726.566024:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [42493:7:0822/135726.634474:ERROR:command_buffer_proxy_impl.cc(128)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
    
    
  • フランツ

    $ franz
    [56942:0822/140812.860154:ERROR:viz_main_impl.cc(188)] Exiting GPU process due to errors during initialization
    [56982:0822/140812.959086:ERROR:viz_main_impl.cc(188)] Exiting GPU process due to errors during initialization
    [57029:0822/140812.990586:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
    
  • 気分転換。これは非常に冗長ですが、上記と同じGPUプロセスエラーをすべて出力します。

    $ slack 
    Initializing local storage instance
    (electron) Sending uncompressed crash reports is deprecated and will be removed in a future version of Electron. Set { compress: true } to opt-in to the new behavior. Crash reports will be uploaded gzipped, which most crash reporting servers support.
    [56298:0822/140741.539635:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
    [08/22/22, 14:07:41:619] info: 
    
    [ many, many more lines of normal looking output here 
    

このGPUメッセージは特に関連しているようです。

[56298:0822/140741.539635:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization

しかし、これらのメッセージのどれも停止を引き起こさない。プログラムを実行するとこの問題が発生しますが、プログラムはまだうまく動作し、反応も良いです。

ChromiumとBraveはどちらも設定でハードウェアアクセラレーションを有効にしますが、Braveのchromium://gpuページには失敗したと表示されます(下記参照)。興味深いことに、両方のブラウザはグラフィック機能ステータスセクションが異なりますchrome://gpu(読みやすくするために色を使用するスクリーンショット。ここで完全なchrome://gpu出力を見つけることができます)。ここ(クロム)そしてここ(勇敢):

  1. 勇敢な

Braveグラフィック機能ステータスセクションのスクリーンショット

  1. クロム

Chromiumグラフィック機能ステータスセクションのスクリーンショット

私は新しいLenovo ThinkPad P14でWaylandではなくXorgを使用しています。これが私のシステムです。

$ inxi
CPU: quad core 11th Gen Intel Core i7-1165G7 (-MT MCP-)
speed/min/max: 2385/400/4700 MHz Kernel: 5.19.2-arch1-1 x86_64 Up: 35m
Mem: 6423.7/31799.3 MiB (20.2%) Storage: 953.87 GiB (27.8% used) Procs: 336
Shell: Bash inxi: 3.3.20

制度法:

$ inxi -G
Graphics:
  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel
  Device-2: NVIDIA TU117GLM [Quadro T500 Mobile] driver: nvidia
    v: 515.65.01
  Device-3: Chicony Integrated Camera type: USB driver: uvcvideo
  Display: x11 server: X.Org v: 21.1.4 with: Xwayland v: 22.1.3 driver: X:
    loaded: intel unloaded: modesetting gpu: i915 resolution: 1920x1080~60Hz
  OpenGL: renderer: llvmpipe (LLVM 14.0.6 256 bits) v: 4.5 Mesa 22.1.6

sudo pacman -Suy私はすべてのパッケージを定期的に使用して更新trizen -Suyし、すべてが最新です。

この問題をどのように解決できますか?

ベストアンサー1

凍結を防ぐために、x11からウェイランドに切り替えることをお勧めします。この問題は、あなたが言及したアプリケーションに限定されているようですが、過去にも同様の問題がありましたが、デスクトップ全体に影響を与えましたが、Waylandに切り替えると問題は解決しました。

残念ながら、CinnamonはまだWaylandと互換性がありません。そのため、別のデスクトップ環境を使用する必要があります。 KDEは良い選択であり、Archに簡単にインストールできます。バラよりhttps://wiki.archlinux.org/title/KDE#インストール

おすすめ記事