-
-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DisplayLink Screens Not Outputting #910
Comments
Hm, not really sure. Do they work on cosmic-comp? If not, then could you open an issue in Smithay? |
I'll check if it works on Cosmic tomorrow, will let you know. Thanks! |
This will most likely require using a software renderer like the |
Absolutely not, why would it? If you have a GPU, you can always render into an offscreen target for whatever purpose (including remote desktop sessions etc.) 🙃 With See mutter#615. |
Yeah, no, this is not how things work. You can not blindly assume that importing buffers from different subsystems or devices/drivers just works. The display link drm device will probably require linear dumb buffers for scanning out the framebuffer. Rendering into dumb buffers with something like GLES is not guaranteed to work, so you need to be prepared to render into an offscreen buffer compatible with the render node and transfer the memory to the (dumb) buffer compatible with the display link device. An important optimization of wayland compositors is to avoid re-drawing/copying stuff that did not change. This is typically done with some kind of damage tracking base on buffer ages. You definitely do not want to copy the whole buffer from the render node to the display link node every time some small part changes.
Transferring those damage rects from the offscreen render buffer to the target framebuffer is what currently would require using something like the I did some tests in the past using dumb-buffers and pixman for drawing client dmabuf with pretty good results (though I do not have the numbers available). So sometimes it might even be more performant to explicitly not use the gpu for composition. Pretty sure that fullscreen clients and shm clients would fall into this.
Yes, this is an optimization we should also do, but as said can not rely on. There is even an linked issue with an still open MR to disable it for some setups where you have two GPUs from the same vendor which are unable to share memory. The whole multi-gpu/split kms topic is a bit brittle imo. |
Hello and thank you for your hard work.
I have a DisplayLink dock that powers two monitors, working fine in GNOME and Hyprland, but unable to output in Niri.
When I enter niri msg outputs, the displays are not showing.
This is the output I get when I do
journalctl -eb /run/current-system/sw/bin/niri
:I checked to see if there was an environment variable but my searching skills failed me.
Here's what shows when I list the current available cards:
ls /dev/dri/by-path/
pci-0000:00:02.0-card pci-0000:00:02.0-render platform-evdi.0-card platform-evdi.1-card
Thank you very much for reading.
System Information
The text was updated successfully, but these errors were encountered: