Greeter not displayed correctly on multi monitor setup

Bug #813566 reported by Joe Barnett on 2011-07-20
196
This bug affects 42 people
Affects Status Importance Assigned to Milestone
LightDM GTK+ Greeter
High
Unassigned
Unity Greeter
Fix Released
High
Unassigned
unity-greeter (Ubuntu)
High
Robert Ancell
Precise
High
Unassigned
xserver-xorg-video-ati (Ubuntu)
High
Unassigned
Precise
High
Unassigned

Bug Description

Upon booting with an external monitor (1920x1200 resolution) hooked up to my laptop (1920x1080 resolution), the external display mirrors the laptop display, but garbles the screen (see screenshot).

Using GDM, the external display is treated as extra screen space (greeter appears on laptop screen only), and is not garbled

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: lightdm 0.4.3-0ubuntu1
ProcVersionSignature: Ubuntu 3.0.0-5.6-generic 3.0.0-rc7
Uname: Linux 3.0.0-5-generic x86_64
Architecture: amd64
Date: Wed Jul 20 07:52:42 2011
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Release Candidate amd64 (20100419.1)
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: lightdm
UpgradeStatus: Upgraded to oneiric on 2011-07-13 (6 days ago)

Joe Barnett (thejoe) wrote :
Joe Barnett (thejoe) wrote :
Sebastien Bacher (seb128) wrote :

could you try if that's still an issue with 0.9.2?

Changed in lightdm (Ubuntu):
importance: Undecided → Low
Joe Barnett (thejoe) wrote :

Yes, still an issue with latest from oneiric.

Also noticed that the issue _does_ appear with GDM initially when X starts up, but by the time the GDM greeter fully initializes, the resolution/etc gets fixed. Note that everything gets fixed after login with lightdm, so maybe something gnome-session is doing is fixing the display, while X is initializing wrong for some reason?

Robert Ancell (robert-ancell) wrote :

I've merged all the multi-monitor issues into one to make this easier to solve. Multiple monitor support is clearly broken, both in the GTK and Unity greeters. Will try and fix all these asap.

summary: - LightDM external monitor mirrors main screen, but garbled
+ Corruption using dual monitors
Changed in lightdm:
status: New → Triaged
Changed in unity-greeter:
status: New → Triaged
Changed in lightdm (Ubuntu):
status: New → Triaged
Changed in unity-greeter (Ubuntu):
status: New → Triaged
importance: Undecided → High
Changed in lightdm (Ubuntu):
importance: Low → High
Changed in unity-greeter:
importance: Undecided → High
Changed in lightdm:
importance: Undecided → High
summary: - Corruption using dual monitors
+ Greeter not displayed correctly on multi monitor setup
Changed in unity-greeter (Ubuntu):
milestone: none → ubuntu-11.10
assignee: nobody → Robert Ancell (robert-ancell)
Bryce Harrington (bryce) wrote :

@Joe, would you mind checking something?

Reproduce the bug, then ssh into your machine and run:

$ DISPLAY=:0 xrandr --auto

It is curious that you see the same effect with gdm but it corrects itself. I wonder if the displays are initialized improperly for some reason, and the first randr operation clears it up. (This type of thing is not uncommon, but shouldn't be happening.)

Robert Ancell (robert-ancell) wrote :

I've done some testing and I don't reproduce these problems in my setup. Other people have confirmed working multi-monitor behaviour.

What I see is:
- If the monitor is plugged in before boot, then the greeter is shown mirrored on both monitors
- If the monitor is plugged in after boot, then the greeter remains on the primary monitor, and the second monitor just shows a black background.

If you're getting this problem, can you use the following PPA and attach the file /var/log/lightdm/:0-greeter.log (or /var/log/lightdm/x-0-greeter.log for newer versions of lightdm).
https://launchpad.net/~robert-ancell/+archive/unity-greeter

Thanks

Jane Silber (silbs) wrote :

I was experiencing one of the bugs marked as a dupe of this one (bug 850885). Using the PPA makes the behaviour better, and I've attached the log file requested.

Current behaviour is that the greeter is displayed correctly (so not seeing what was in the first photo of the original bug), but the transition to the desktop is awkward (still seeing what is in photos 2 and 3 of the original bug). It's not as smooth and beautiful an experience as I think we should have, but it is certainly better.

Jane Silber (silbs) wrote :
Rocko (rockorequin) wrote :

On my laptop, the login is displayed on both the 1920x1080 laptop screen and the 1680x1050 external display-port monitor for about half a second. Then both screens abruptly go blank, and shortly afterwards the login reappears on the laptop monitor. It doesn't matter if I'm typing the password at this point (the characters are not lost or anything). It's just rather disconcerting.

The laptop screen is sized correctly to the native resolution with the latest lightdm - before it was being resized to the 1680x1050, like the external monitor.

Robert Ancell (robert-ancell) wrote :

Thanks Jane,

Your system confirmed one issue, that the monitors are reconfigured while the greeter is running:
[+0.12s] DEBUG: unity-greeter.vala:187: Monitor is 1440x900 pixels at 0,0
[+1.15s] DEBUG: unity-greeter.vala:187: Monitor is 1440x900 pixels at 0,300
So this is now fixed in unity-greeter 0.1.0.

There is a second problem, where lightdm doesn't draw the background on all the monitors correctly, so that still needs fixing.

Robert Ancell (robert-ancell) wrote :

Thanks Rocko,

You're also being reconfigured during the greeter, though more severely than Jane:
[+0.89s] DEBUG: unity-greeter.vala:187: Monitor is 1680x1050 pixels at 0,0
[+6.23s] DEBUG: unity-greeter.vala:187: Monitor is 1920x1080 pixels at 0,0

My guess is X defaults to mirroring, then gnome-settings-daemon reconfigures it to side by side layout. This may be visible because the greeter starts quickly as opposed to normal login where the reconfigure occurs before Unity/GNOME starts.

Matthew Gregg (mcg) wrote :

Having similar issues on a dual monitor Nvidia TwinView setup. See attached picture of the issue, the monitor on the right does not make for a good first impression of Ubuntu. Using current 11.10.

tags: added: rls-mgr-o-tracking
Rocko (rockorequin) wrote :

The greeter is displaying correctly now on my setup: both screens are set to 1680x1050 (at least that is the case with kernel 3.1; kernel 3.0 has a bug that powers down the external monitor when the gdm greeter or lightdm greeter runs).

lirel (m8r-lcodw5) wrote :

Bug #868611 leads to the same results(greeter display resolution being to low) but could have an other reason:
VGA-0 is detected as connected and so makes X11 mirror "both" outputs displaying 1024x788px.

Joe Barnett (thejoe) wrote :

@Bryce:

I get an error about no protocol specified / cannot connect to DISPLAY=:0 when trying to xrandr --auto from a console or from an ssh session.

Some more info on the garbling though:
- if I set external (1920x1200) monitor to mirror the laptop (1920x1080) screen, I see the same garbling effect within a session.
- using fglrx I can have 1920x1080 mirrored onto the external screen fine.
  so actually probably is not lightdm specific, but something with the ati drivers in oneiric (I've been able to mirror in natty/earlier).

Using a lenovo U160 with external 1080p as screen, on 11.04 I had to run arandr instead of xrandr because the latter did not work properly- the arandr created a sh that I run at startup making it all work well, *also in the greeting*.

Now in 11.10 it works well without script, but the greeting is mirrored screens set to the lowest resolution, which looks real bad on the 1080p, and the mosaic in the transition to running system.

Daniel Nyström (speakman) wrote :

I'm running a four monitor setup with 2xNvidia GPUs using Xinerama (hence not RandR).

When logging out, I'm getting a scrambled (but readable!) mirror of my _last session_ which could reveal security and/or personal information e.g. if browsing your bank prior to logging out. I think this should be considered an security issue!

Too bad I wasn't able to reproduce it right now, but I will try to get it on photo asap.

Using lightdm 1.0.1-0ubuntu6.

I do agree with Daniel Nyström; today I found my screen filled with old data from my last session, this is definitely a security or at LEAST privacy issue.

I am not sure if this is exactly the same bug, but it really sounds so.

My setup: Notebook in docking station, two external monitors (HDMI 1680x1050, VGA 120x1024).
When LightDM starts HDMI monitor reports "Wrong Sync error", VGA monitor turns black, Notebook display shows correctly. This way I always have to open the closed notebook sitting in the docking station, login, and continue to work when Unity/Gnome comes up.

Behaviour does NOT differ if notebook is plugged into docking station after booting or booting after plugging in docking station.

Daniel Nyström (speakman) wrote :

I finally got a screenshot!

On the third screen you can see almost my complete first screen desktop. And on the fourth screen you can see an "ajax-loader.gif" with all it's animation frames. Is this coming from arbitrary graphics memory? It sounds more and more like a big security issue.

Thoughts?

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in xserver-xorg-video-ati (Ubuntu):
status: New → Confirmed
Aquilon (marc-descharles) wrote :

Hi,

I have the same problem with my eeepc 1000he (graphic card is an Intel GMA 945) when I boot on with an external screen (1440X900).

Greeter is present on the two screen (external and internal) but in a poor resolution.

I get the same behavior as Daniel Nyström, (btw, how did you take a screenshot of the login screen?), but only _after_ the monitor has gone to sleep. On bootup, and immediately after logging out, things look normal -- the primary monitor has the login window and the second monitor is black (but working -- it shows the mouse pointer if I move it over there).

This is a docked laptop with two external 1920x1200 displays (one DVI, one VGA) using binary nVidia drivers (nvidia-current 280.13-0ubuntu6; GPU is "nVidia Corporation G84 [Quadro FX 1600M]") and TwinView.

affects: lightdm → lightdm-gtk-greeter
no longer affects: lightdm (Ubuntu)
no longer affects: lightdm (Ubuntu Precise)
Bryce Harrington (bryce) on 2011-12-20
Changed in xserver-xorg-video-ati (Ubuntu Precise):
status: Confirmed → Triaged
importance: Undecided → High
tags: added: precise
Bryce Harrington (bryce) wrote :

This bug report conflates several distinct bugs, some of which are fixed.

For a period of time in oneiric lightdm was attempting to set extended displays and was doing so incorrectly, resulting in a corrupted external display. We believe this particular issue is resolved in the oneiric release.

In some of the dupe bugs it is mentioned that lightdm mirrors the external display, resulting in a smaller resolution on both screens, such as 1024x768. This is a known issue, bug #874241.

Jane mentions in her bug report some irregularities in the display when switching from the login session to the user session. These are transitory and go away once logged in, but they look poor. This only occurs when the logged in session differs from the login screen and X needs to perform a modeset; unfortunately this is a typical situation for docking stations or laptops with external monitors. I will undupe Jane's bug #850885 to focus on that part of the problem.

For Daniel's issue, it's hard to say what's going on there given only a screenshot, but the conditions of reproducing it are completely different than the other bugs (i.e. on logout rather than login), and it is with a very different driver setup than everyone else so it's likely to be completely unrelated. Daniel, if you can still reproduce it under Precise please file a new bug report.

Since I think the crux of this original report (and the balance of the dupes) was the first listed issue, which should be solved now, I'm going to close out this bug report. If anyone thinks they have this same problem, we'd ask that you file *new* bug reports (`ubuntu-bug lightdm`, or `ubuntu-bug xorg` as appropriate) so we get properly up to date logs. Screenshots or screen photos are very helpful as well.

Daniel Nyström (speakman) wrote :

Since this is a production workstation, I can not run Alpha nor Beta releases. But is there any way to "backport" the Precise lightdm version to Oneiric, I'd be happy to try it out.

I wrote a report just a few comments above my screenshot. What else can I do to help?

Another thing I've noticed both at work with the Xinerama setup and at home with a simple Nvidia TwinView setup (with two monitors with different resolutions) is that the background image is tiled in the middle of my extra screens while in the login session. In user session it's all perfectly aligned.

Joe Barnett (thejoe) wrote :

original bug report split off into bug 915408 ; screenshot at the top of this bug still applies, but logs should be updated.

Daniel Nyström (speakman) wrote :

Just noticed on my Xinerama workstation that when logging out from user session into login session, all non-primary screens are black. And this "scambling" seems to be taking place during night when all monitors are turned off (by screensaver or whatever used in login session).

Bryce Harrington (bryce) on 2012-01-13
Changed in lightdm-gtk-greeter:
status: Triaged → Fix Released
Changed in unity-greeter:
status: Triaged → Fix Released
Changed in unity-greeter (Ubuntu Precise):
status: Triaged → Fix Released
Changed in xserver-xorg-video-ati (Ubuntu Precise):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related blueprints