emersion/xdg-desktop-portal-wlr

Chromium crash when sharing the screen

875d opened this issue · 1 comments

875d commented

I have downloaded the latest dev version of Chromium from here.

It crashes when I try to share the screen.

Here is my setup. The console stdout / stderr follows.

Used distribution: Arch Linux

Used version/commit of xdpw (+ connected PR):

❯ pacman -Q xdg-desktop-portal-wlr
xdg-desktop-portal-wlr 0.6.0-1

Installed GPU's (Vendor + Model):

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] [10de:1c20] (rev a1)
	Subsystem: Acer Incorporated [ALI] Device [1025:1265]
	Kernel driver in use: nvidia

Used configuration_file (especially if force_mod_linear is used): none

Used client and version which displays the corrupt image: Chromium 110.0.5456.0 custom

Is the image still corrupt on OBS 27.2.4 or later: No. OBS works fine

Anything special with your setup

I'm using this patch by installing hyprland-nvidia-git.

This is the desktop file that starts my session:

[Desktop Entry] Name=Hyprland (W) (NV) Comment=An intelligent dynamic tiling Wayland compositor 
Exec=[MYHOME]/.local/bin/wrappedhlnv 
Type=Application

With wrappedhlnv being:

#!/usr/bin/env bash

cd ~

export _JAVA_AWT_WM_NONREPARENTING=1
export XCURSOR_SIZE=24

# env for NVIDIA
# see: https://wiki.hyprland.org/Nvidia/
export LIBVA_DRIVER_NAME=nvidia
export XDG_SESSION_TYPE=wayland
export GBM_BACKEND=nvidia-drm
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export WLR_NO_HARDWARE_CURSORS=1

# use only external monitor
# see: https://wiki.hyprland.org/FAQ/#my-external-monitor-is-blank--doesnt-render--receives-no-signal-laptop
#export WLR_DRM_DEVICES=/dev/dri/card1
export WLR_DRM_DEVICES=/dev/dri/card0

exec Hyprland

Console:

❯ ./chrome-wrapper
[28400:28459:1203/160055.691788:ERROR:object_proxy.cc(622)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.FileChooser”
[28400:28459:1203/160055.691840:ERROR:select_file_dialog_linux_portal.cc(274)] Failed to read portal version property
[28400:28400:1203/160056.191050:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160056.592151:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160056.961549:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160057.274143:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160057.581192:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160057.864425:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160058.068906:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160058.270626:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28400:28400:1203/160058.462174:ERROR:gpu_process_host.cc(958)] GPU process exited unexpectedly: exit_code=256
[28709:28709:1203/160058.469713:ERROR:gpu_init.cc(523)] Passthrough is not supported, GL is disabled, ANGLE is 
[28400:28813:1203/160111.404433:ERROR:egl_dmabuf.cc(569)] Failed to record frame: Error creating EGLImage - EGL_NOT_INITIALIZED
[28400:28813:1203/160111.404469:ERROR:shared_screencast_stream.cc(707)] Dropping DMA-BUF modifier: 72057594037927935 and trying to renegotiate stream parameters
[1203/160127.469534:ERROR:elf_dynamic_array_reader.h(64)] tag not found
[1203/160127.469905:ERROR:elf_dynamic_array_reader.h(64)] tag not found
Received signal 11 SI_KERNEL000000000000
 Possibly a General Protection Fault, can be due to a non-canonical address dereference. See "Intel 64 and IA-32 Architectures Software Developer’s Manual", Volume 1, Section 3.3.7.1.
#0 0x556cb86abbe2 base::debug::CollectStackTrace()
#1 0x556cb8610cd3 base::debug::StackTrace::StackTrace()
#2 0x556cb86ab701 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#3 0x7fa6e772fa00 (/usr/lib/libc.so.6+0x389ff)
#4 0x7fa6e72abb99 wl_list_insert
#5 0x7fa6e4073323 <unknown>
#6 0x7fa6e4073a8c <unknown>
#7 0x7fa6e4074c10 <unknown>
#8 0x7fa6d6f8dca6 <unknown>
#9 0x7fa6c8aa8496 <unknown>
#10 0x7fa6c8a47a97 <unknown>
#11 0x556cb93cea86 webrtc::EglDmaBuf::EglDmaBuf()
#12 0x556cb93cb934 webrtc::SharedScreenCastStreamPrivate::StartScreenCastStream()
#13 0x556cb93c689f webrtc::BaseCapturerPipeWire::OnScreenCastRequestResult()
#14 0x556cb93c7b3c webrtc::ScreenCastPortal::OnPortalDone()
#15 0x556cb93c885c webrtc::ScreenCastPortal::OnOpenPipeWireRemoteRequested()
#16 0x7fa6e7fd3e04 (/usr/lib/libgio-2.0.so.0.7400.2+0xa5e03)
#17 0x7fa6e7fd7abd (/usr/lib/libgio-2.0.so.0.7400.2+0xa9abc)
#18 0x7fa6e803e79e (/usr/lib/libgio-2.0.so.0.7400.2+0x11079d)
#19 0x7fa6e7fd3e04 (/usr/lib/libgio-2.0.so.0.7400.2+0xa5e03)
#20 0x7fa6e7fd7abd (/usr/lib/libgio-2.0.so.0.7400.2+0xa9abc)
#21 0x7fa6e80358c3 (/usr/lib/libgio-2.0.so.0.7400.2+0x1078c2)
#22 0x7fa6e7fd3e04 (/usr/lib/libgio-2.0.so.0.7400.2+0xa5e03)
#23 0x7fa6e7fd3e3d (/usr/lib/libgio-2.0.so.0.7400.2+0xa5e3c)
#24 0x7fa6e842887b g_main_context_dispatch
#25 0x7fa6e847f299 (/usr/lib/libglib-2.0.so.0.7400.2+0xac298)
#26 0x7fa6e8427132 g_main_context_iteration
#27 0x556cb8618b15 base::MessagePumpGlib::Run()
#28 0x556cb8677a1b base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run()
#29 0x556cb863d759 base::RunLoop::Run()
#30 0x556cb676ec0d content::BrowserMainLoop::RunMainMessageLoop()
#31 0x556cb6770872 content::BrowserMainRunnerImpl::Run()
#32 0x556cb676c226 content::BrowserMain()
#33 0x556cb8142688 content::RunBrowserProcessMain()
#34 0x556cb81439ed content::ContentMainRunnerImpl::RunBrowser()
#35 0x556cb81437b1 content::ContentMainRunnerImpl::Run()
#36 0x556cb81404f5 content::RunContentProcess()
#37 0x556cb8140d8f content::ContentMain()
#38 0x556cb43e21fb ChromeMain
#39 0x7fa6e771a290 (/usr/lib/libc.so.6+0x2328f)
#40 0x7fa6e771a34a __libc_start_main
#41 0x556cb43e202a _start
  r8: 0051868400000000  r9: 0000000000000001 r10: 000009b0012785b8 r11: 0000000000000014
 r12: 000009b0012785b8 r13: 0000000000001000 r14: 000009b0012785a0 r15: 0000000000000018
  di: e062f201b0090000  si: 000009b001278658  bp: 000009b0012785b8  bx: 00007ffea62c94d0
  dx: 0000000000000075  ax: 000009b001f27b80  cx: 000009b00535b660  sp: 00007ffea62c9438
  ip: 00007fa6e72abb99 efl: 0000000000010283 cgf: 002b000000000033 erf: 0000000000000000
 trp: 000000000000000d msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
fish: Job 1, './chrome-wrapper' terminated by signal SIGSEGV (Address boundary error)

The new version of Chromium doesn't crash anymore