Chrome 및 Electron 기반 애플리케이션의 무작위 정지

Chrome 및 Electron 기반 애플리케이션의 무작위 정지

저는 Arch Linux와 Cinnamon 데스크탑 환경을 사용하고 있습니다. 지난 몇 주 동안 무작위로 일시적으로 정지되는 현상(몇 초, 5~10초)을 경험했습니다.크롬,용감한,프란츠그리고기분 전환. 동결은 독립적입니다. 예를 들어 Chromium을 동결할 수 있고 Brave는 잘 작동합니다.그 반대로.

이 모든 도구는 Chromium 자체 및 Brave와 직접적으로 또는 다음을 통해 어떤 방식으로든 Chromium 코드를 사용하기 때문에 관련이 있다고 생각합니다.전자Slack이나 Franz의 경우와 마찬가지로, 문제도 그것과 관련이 있지 않을까 추측해봅니다.

정지가 발생하면 정지된 응용 프로그램이 응답하지 않게 되고 창 크기 조정도 작동하지 않습니다(손상된 것처럼 보입니다).

창 크기 조정 실패를 보여주는 스크린샷

다른 모든 것은 잘 작동하지만 새 터미널을 열고 다른 응용 프로그램과 정상적으로 상호 작용할 수 있으며 데스크톱이 반응하고 CPU 또는 RAM 사용량이 급증하지 않습니다. 그 도구에 지나지 않습니다.

네 가지 도구를 모두 실행하면 일부 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로 전환하는 것이 좋습니다. 이 문제는 귀하가 언급한 응용 프로그램에만 국한된 것으로 보이지만 과거에도 비슷한 문제가 있었지만 전체 데스크톱에 영향을 미쳤지만 Wayland로 전환하면 문제가 해결되었습니다.

안타깝게도,Cinnamon은 아직 Wayland와 호환되지 않습니다.이므로 다른 데스크톱 환경을 사용해야 합니다. KDE는 좋은 선택이며 Arch에 쉽게 설치할 수 있습니다. 바라보다https://wiki.archlinux.org/title/KDE#설치.

관련 정보