-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
wl-mirror crashes in mesa when using the dmabuf backend with software rendering #48
Comments
Hi! if wl-mirror stops mirroring then it probably died. does wl-mirror print anything useful on stdout/stderr? You can also add I will also try to reproduce your issue once I find time. |
Hi, thanks for the quick reply! This seems to be a segfault in Mesa's libgallium (I'm using mesa-24.2.0 with only softpipe,llvmpipe as gallium drivers, btw):
wl-mirror -v output shows nothing scary I guess:
An strace -f on wl-mirror shows this:
The mmap returning EACCESS is suspicious I think?! And the (lengthy) labwc debug output shows this:
Full output:
If you need any more logs, etc. I'm happy to help. Thanks, |
Thanks for the logs! This appears to be some kind of issue with DMA-BUF import/export in combination with software rendering, though I'm not sure who is at fault here. The EACCESS in mmap is definitely strange. In the meantime, you can try running wl-mirror with |
Good morning,
As I said before, if I can provide any more logs or such, I'd be happy to help. Thanks, |
Good morning!
Yeah, screencopy with SHM buffers isn't really intended for continuous video capture. It mostly exists as a fallback in wl-mirror since it basically always works, but as you said it can be slow with weak hardware or high resolutions. The screencopy protocol also has a DMA-BUF mode, but (a) I haven't implemented that yet and (b) I'm not sure it would work if the dmabuf-export protocol crashes somewhere in mesa.
What would really help me is knowing what hardware and distro you are running this on. Thanks for posting the mesa version as well though. I'm gonna try and see if I can reproduce this with your versions and |
Hi,
I've observed this so far on two laptops: one is an older Dell Latitude with integrated Intel Graphics:
and the other is a quite new HP ZBook, also using the onboard graphics:
Regarding the distro I use: I use an entirely selfmade linux system (roughly based on https://www.linuxfromscratch.org/, so everything is self-compiled and self-configured, etc. (and of course I cannot rule out that this is the reason for the segfaulting mesa ;-) The kernel I use is 6.10.4. Regards, |
Thanks for the info! Under my current setup my wlroots doesn't seem to like to be started with I don't have a lot of time to work on wl-mirror at the moment though, so it might take a while. |
I still can't reproduce this since I can't seem to run DRM/KMS compositors with software rendering, likely due to the fact that simpledrm is unloaded when amdgpu is loaded. I'll need to temporarily disable my GPU for the whole boot to test this. |
I have now managed to start sway/labwc with software rendering when blacklisting amdgpu, as well as starting sway/labwc with amdgpu but |
Hi there,
I have this problem: I'm running labwc-0.8.0 based on wlroots-0.18.0 on a laptop with an external monitor connected. After starting labwc the internal display (eDP-1) is extended by the external (DP-7). What I want is the internal display to be mirrored to the external monitor.
When I run wl-mirror in the following way:
wl-present mirror eDP-1 --fullscreen-output DP-7 --fullscreen
the internal display is indeed mirrored to the external monitor, but only for about half a second. Then the two displays fall back to the 'extended mode' no matter if wl-mirror is still running or not.
Does anyone have any hints what I'm doing wrong?
Thanks and best regards,
Christian
The text was updated successfully, but these errors were encountered: