Multi monitor support regression in 24.10.2 (2024-11-21)

Hi everyone, is there anyone seeing this too?

When I reboot to 24.10.2 (2024-11-21) version, I loose my multi-monitor setup and all screens are in mirroring mode. And there is no UI for monitor configurations in intel fb component. I assume, that it is related to missing /report/runtime/intel_fb/connectors file.

When I switch again to 2024-11-05 release it works as expected.

I’m on ThinkPad T460p, in case it is related to specific hardware only.

Hi,

I’m working on a T460p and don’t have this issue by now. I also use up to 3 monitors mirrored. Is there something suspicious regarding the intel_fb messages in the log ?

Additionally, I uploaded an updated Sculpt image (alex-ab 2024-11-23) with improvements in the intel_fb driver I’m currently working on, which addresses some shortcomings. Can you please give it also a try and tell me whether this works for you better ?

Thanks.

Hi Alex, thanks for response.

I think I was misunderstood. I’m normally not using mirroring, and the issue is about loosing my “all monitors in a row” setup.

I have booted in 24.10.1, 24.10.2 and with your image. Only 24.10.1 works for me, but the behavior differs between 24.10.2 and your image. I have gathered logs and compared output of intel_fb. In logs for version 24.10.2 there is one additional log (marked below) when compared to others:

    i915 00:02.0: [drm] [ENCODER:117:DDI C/PHY C] is disabled/in DSI mode with an ungated DDI clock, gate it
--> fb_client_hotplug: error on modeset commit -22 - unknown error
    __acpi_video_get_backlight_type -> native

(if you give me a tip how paste into firefox in seoul, then I can provide more logs :slight_smile: )

/report/runtime/intel_fb/connectors exists when I boot with 24.10.1 and with your version, but not with 24.10.2.

With your version connectors are reported and I could see multi monitor setup ui on intel_fb component, but I couldn’t get “non-mirroring” setup.

If you think I can provide more information, then let me know.

Hi Tomga,

sorry, I meant of course that I use up to 3 monitors in discrete mode (aka non-mirror) mode. Thanks for testing my image, so it solves the issue with the missing connectors report, which is indeed the main culprit for a non working UI.

I also can’t switch between mirrored and non-mirorred via the UI as soon as I have a hand-copied/crafted config/fb. This is potentially intended, I have to ask back.

Actually I was a little surprised when I read that you are mirroring 3 different screens :slight_smile:

Regarding your published version, if I remove the fb file, I can click in configuration editor but I always stay with one screen mirrored on all monitors. So it is not working for me either.

Hi Tomga, thanks for your feedback, which is very valuable. I could reproduce the issue about the non working UI in case of a handcrafted config/fb with solely discrete connectors defined and come up with a fixup. Additionally, switching a discrete connector into mirror mode is now working for me.

I uploaded two test images, which you may give a spin again, if you can afford it. One w/o debug and one with additional debug output if requred (2024-11-27 && 2024-11-27a).

1 Like

Hi Alex, I have just started your version (w/o debug).

First and most important: it started with display being consistent with my configuration. However I’d like to note, that my configuration was not handcrafted. I have saved one, which I configured using UI.

Second, it is possible to change configuration now. Switching from discrete configuration to mirroring works too. The only restriction is that I cannot mirror second and third display without first mirroring first with second. I think it may be a conscious design decision but may potentially be a restriction. Although this allows to configure to mirror any two different screens, mouse movement between them may be a not natural one (going from right to left monitor may require to move to the right side).

I don’t know what improvements did you implement in this version in comparison to 24.10.1 version, but from my perspective there are no visible regressions.

Good that you are asking. Yes, this was indeed a deliberate decision to keep the complexity of the implementation at a manageable level. Without this restriction, we would need to support arbitrary groups of mirrored displays, not just one group.

Sculpt arranges the panorama by placing the displays left to right. So the mirrored displays show always the left-most part of the panorama. However, this is just the built-in policy, which is implemented by the Sculpt manager by generating the configuration of the nitpicker GUI server at /config/managed/nitpicker. If take a look at this file, you will see the generated panorama configuration within the <capture> node.

You can override Sculpt’s builtin policy by providing a custom nitpicker config (at /config/nitpicker) where the <capture> node contains your rules. E.g., you may copy the generated config as starting point and then adjust the coordinates to your liking. This allows for arbitrary display placements, e.g., placing a display vertically on top of another. You can get creative here.

1 Like

The current working branch is Commits · alex-ab/genode · GitHub with the changes of the latest image, 2024-11-30 and 2024-11-30-a (debugging).

Currently, there is no shared folder support or copy&paste in Seoul. Though the only way to export files is (beside your used storage device of the VM) via network (scp/tftp/etc) or via an attached USB device.

Thank you Norman for you explanation. My observations about not being able to achieve some configurations were only a response for testing specific version. I’m completely happy about panorama configuration.

However, you have provided me with additional information I was not aware of. I thought that monitor configuration was stored in /config/managed/fb. It is the place that I found by myself (and it matched a place where UI for configuration is available). Your message has added me a missing part, that I was not aware of about positioning of screens. It may become useful someday.

Thanks Alexander. Currently I’m happy with 24.10.3 version with regard to display configuration.

However, if you’d like me to test something specific on my system, please let me know.