Bug 492366 - Multihead boot in Lenovo docking station
Summary: Multihead boot in Lenovo docking station
Keywords:
Status: CLOSED INSUFFICIENT_DATA
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-nouveau
Version: 11
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Ben Skeggs
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-03-26 16:22 UTC by kosmici-atakuja
Modified: 2018-04-11 17:10 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-12-11 20:17:08 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
cheese on the desktop after an attempt to suspend with desktop extended to external monitor (2.67 MB, image/png)
2009-07-16 08:50 UTC, Nikolay Botev
no flags Details
default user display configuration with external monitor attached (79.07 KB, image/jpeg)
2009-07-16 09:05 UTC, Nikolay Botev
no flags Details

Description kosmici-atakuja 2009-03-26 16:22:26 UTC
Description of problem:
Found during Fedora Nouveau driver test day. When booting the prepared rawhide livecd while the external monitor is plugged into my docking station the systems boots okay in text mode (the text progress bar, shown on the external display) but when it gets to X loading both screens turn black. The system doesn't respond to any keys I could think of (like ctrl-alt-del, ctrl-alt-backspace, ctrl-alt-f1, etc).

Version-Release number of selected component (if applicable):
Rawhide (11?)

How reproducible:
Always? The only way to avoid this was to physically disconnect the external monitor before turning the power on. 

Steps to Reproduce:
1. Connect a Lenovo R61i to the docking station. 
2. Connect external monitor via DVI cable to the docking station (digital link)
3. Turn the system on, wait for X to boot. 
4. Observe blank screens on both screens. 
  

Actual results:
Blank screens on both monitors. 

Expected results:
Xorg on both (I think this is the default in nouveau?)

Additional info:
HW profile: http://www.smolts.org/client/show/pub_19d4d36d-2143-40a7-95d9-fe916d2ec786
External monitor: NEC 2070NX
Cable: DVI, digital connection.
Connected via the docking station.

Comment 1 Helge Deller 2009-03-27 12:14:34 UTC
FWIW, no such problems with IBM T61 laptop. There dual-head bootup to xorg worked fine (Quadro NVS 140M).

Comment 2 kosmici-atakuja 2009-03-27 12:54:53 UTC
In the meantime I did the following experiment: disconnected the laptop from the docking station and connected the monitor via an analog cable to the VGA port (on the left side of the laptop). The effect is exactly the same: machine boots with the external screen in text mode and when X starts the display turns off (literally, the monitor reports 'no signal'). The internal laptop screen is never used and never turns on in this configuration. 

It seems this is not related to the docking station or DVI digital connection. Or Quadro NVS 140M as it works in T61 from the comment above...

Comment 3 Adam Williamson 2009-03-27 21:20:27 UTC
Could you possibly test with another monitor, or is that not practical?

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 4 kosmici-atakuja 2009-03-31 09:13:27 UTC
This will be difficult but I will try, please give me a day or two to arrange some other monitor. Thanks!

Comment 5 Adam Williamson 2009-03-31 19:04:45 UTC
OK, then please don't cancel the needinfo until you have the info! :) thanks a lot.

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 6 Ben Skeggs 2009-04-09 05:12:08 UTC
LVDS not coming up is expected, nouveau can't program it if the VBIOS hasn't.  By default, a lot of VBIOS opt to only program the external output if it's connected.  You probably have a BIOS option to control it, my T61P does at least.

However, we should still be able to use the external output just fine.  Are you able to update to latest versions of kernel and xorg-x11-drv-nouveau and retest?  There's been some changes since the LiveCD which may help.

Another thing worth trying is to boot with nouveau.modeset=1 enabled and see if kernel modesetting does any better.

Comment 7 Nikolay Botev 2009-05-23 14:27:39 UTC
I experience the same problem...

Booting F11 Preview LiveCD while ThinkPad T61 is docked with extenral monitor connected (NEC MultiSync LCD 2690 WUXi 25" 1920x1200), F11 hangs with all monitors blank.

If I enable KMS (nouveau.modeset=1) then F11 hangs immediately after the boot prompt (as soon as it tries to switch the mode?)

What is the reason this bug is still marked as [NEEDINFO]? Is there anyway I can help to get the bug confirmed?

Comment 8 Ben Skeggs 2009-05-23 14:40:19 UTC
The bug, and the reason behind it is known (as I explained in my previous comment).  You *might* be able to make kms work by booting with "nouveau.modeset=1 nouveau.uscript=1", but the uscript code isn't widely tested.  The only known tested and working case currently is on my T61P, so use it at your own risk.

If that doesn't help, as my previous comment explains, set the BIOS option to initialise the panel in preference to the external display at boot.

Comment 9 Nikolay Botev 2009-05-24 01:38:58 UTC
Ben,

Are you saying that there are no plans to fix this bug?

By a fix I mean something that works out-of-the-box without requiring the user to set kernel parameters or change BIOS settings.

Thanks

(In reply to comment #8)
> The bug, and the reason behind it is known (as I explained in my previous
> comment).  You *might* be able to make kms work by booting with
> "nouveau.modeset=1 nouveau.uscript=1", but the uscript code isn't widely
> tested.  The only known tested and working case currently is on my T61P, so use
> it at your own risk.
> 
> If that doesn't help, as my previous comment explains, set the BIOS option to
> initialise the panel in preference to the external display at boot.

Comment 10 Ben Skeggs 2009-05-24 01:49:17 UTC
No, I didn't say anything like that.  The code that's enabled if you boot with nouveau.uscript=1 *is* the code that's required to make this work, it's just not ready to be turned on by default.  Did it work for you?

Comment 11 Nikolay Botev 2009-05-26 09:57:29 UTC
Ben,

I tested once only with the nouveau.uscript=1 parameter but without nouveau.modeset=1 and it did not work. Does the nouveau.uscript parameter only work in conjunction with nouveau.modeset?

Thanks

(In reply to comment #10)
> No, I didn't say anything like that.  The code that's enabled if you boot with
> nouveau.uscript=1 *is* the code that's required to make this work, it's just
> not ready to be turned on by default.  Did it work for you?

Comment 12 Ben Skeggs 2009-05-26 10:37:44 UTC
Yes, that option only effects KMS.

Comment 13 Bug Zapper 2009-06-09 12:39:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle.
Changing version to '11'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 14 Ben Skeggs 2009-06-29 09:07:23 UTC
Is there any update here?  If "nouveau.modeset=1 nouveau.uscript=1" didn't work previously, please update to the kernel build from http://koji.fedoraproject.org/koji/buildinfo?buildID=112059 and retry.  The uscript codepath has had some significant improvements in that release.

Thanks.

Comment 15 Nikolay Botev 2009-07-16 06:51:11 UTC
Hi,

I finally got to test nouveau modeset with the uscript option on my ThinkPad T61.

I tested with latest kernel package from software update which is a little older than the one you linked to:

Linux nikolay-laptop 2.6.29.5-191.fc11.x86_64 #1 SMP Tue Jun 16 23:23:21 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

Here are my observations:

1) WORKS LIKE A CHARM! Booting is tangibly faster, it might be only perception but still the boot process feels a lot smoother and super fast (compared to booting without KMS)

2) Switching to VT and back is super fast (as advertised).

3) Booting while docked with an external monitor attached to ThinkPad Docking station works. This actually fails (stuck with a blank screen) without KMS.

4) Performance is tangibly slower with KMS than without KMS, when dragging a big firefox window on the external monitor (with both internal monitor and external monitor on at their native resolutions 1680x1050 and 1920x1200 respectively).

2) Only minor issues are as follows:

2-1) While booting with external monitor attached, the bootloader image appears flushed to the left on the external monitor which has a higher resolution. It would be nice if the image was stretched or centered. On the other hand, left-flushed image works better when in a VT

2-2) If I turn off the external monitor in GNOME, the external monitor is not blank, but displays a snapshot of the last VT I was in.

That said, agian, KMS works great! No show stoppers thus far!

Actually I just installed Fedora on my new SSD and the only show-stopper is that audio is not working.

I will now test with my external monitor connected via the VGA port while undocked. My testing so far was while docked and the external monitor connected through the DVI port on the docking station.

Actually, another part of my setup probably worth a mention is that the extenral monitor is attached via a KVM switch. I will also test switching between computers with the KVM and post back.

(In reply to comment #14)
> Is there any update here?  If "nouveau.modeset=1 nouveau.uscript=1" didn't work
> previously, please update to the kernel build from
> http://koji.fedoraproject.org/koji/buildinfo?buildID=112059 and retry.  The
> uscript codepath has had some significant improvements in that release.
> 
> Thanks.

Comment 16 Nikolay Botev 2009-07-16 07:06:30 UTC
With the external monitor attached via the ThinkPad VGA port the experience was different:

1) there is flicker while the loign screen fades in
2) the login screen is replicated on external and internal displays, but uses the external monitor resolution and in my case the image is truncated on the internal display, because the resolution of the internal display is lower.
3) i tried user switching this time between two accounts - switching to a second account worked the first time. when trying to switch back to the first account though, Fedora froze with both displays blank and an unresponsive keyboard (no response to Caps/Num-lock keys)

will try user switching again with external monitor on VGA and then again with external monitor via the Docking Station's DVI

Comment 17 Nikolay Botev 2009-07-16 07:13:45 UTC
second attempt to switch users with external monitor attached via VGA failed the same way as the first time - hanging right after selecting Switch User from the menu (i.e. the user selectoin prompt does not appear).

user switching without external monitor attached works fine. I now also got a notification about a kernel failure but ended up dismissing it before submitting the coredump. if anyone can tell me how to submit that kernel coredump that must still be sitting somewhere on my machine, i will do it.

coming up next - user switching with external monitor attached via docking station.

Comment 18 Nikolay Botev 2009-07-16 08:49:01 UTC
before doing any further testing I decided to upgrade to the latest kernel. i got 2.6.29.5-205.fc11.x86_64 from here:

http://koji.fedoraproject.org/koji/buildinfo?buildID=112237

here is my full experience testing with the above kernel.

the biggest show-stopper for me is the lack of suspend support
second comes the inability to reliably switch between different monitor configurations (docked with external display/undocked/undocked with external display on VGA port)

i will not be able to take the time to repeat such a thorough test with every new kernel / nouveau build, but I will be happy to go through simple scenarios upon request.

i hope the extensive log of my experience that follows is useful.



no external monitor
* booting, logging in, user switching work
* suspend does not work - suspend proceeds but appears to resume immediately and shows locked screen
* user switching works fine

external monitor via laptop's VGA port
* dynamically connecting monitor after boot and trying to enable via Display properties hung with cheese on the laptop's internal display
* booting with external monitor connected works
* boot progress screen is flushed to the left and does not fill the external display (which has higher res)
* login prompt fills the external display and is chopped on the lower-res internal display
* there is flicker on the external display during the transitions between boot screen and login screen and during the transition between login screen and user's desktop.
* suspend does not work - same as without external monitor
* user switching does not work - after switching to the second user, attempts to go back to the switch user screen fail - the screen flashes and returns to the second user's desktop
* turning off the external monitor via Display properties does not turn off the external display, which still shows a snapshot of the user's desktop as it appeared before turning the external display off 
* attempting to switch to a VT (Ctrl-Alt-F6) hung X. killing Xorg restored the login screen. login and switching off the external display worked the same way as before, however further attempts to switch to a VT failed, only showing a blank screen on the internal display. the external display is stuck showing a mouse cursor on all-black background 

external monitor via docking station's DVI port
* restarted wtih external monitor connected via the laptop's *VGA* port
* turned on external monitor via Display properties and then turned it off. then connected the laptop to the dock and attempted to turn the external monitor on again (this time connected via the dock's DVI port). the display properties hung. an attempt to switch to a VT logged me out and showed the login screen. after logging in again, I was able to successfully extend my desktop to the external monitor attached on the DVI port by using display properties
* an attempt to supsend failed the same way as before. after this (as in previous cases) the top fifth of the desktop background shows cheese (see attached screenshot)
* restarted with thinkpad connected to docking station
* as with VGA, boot progress screen is flushed to the left and does not fill the external display
* as with VGA, login prompt fills the external display and is chopped on the lower-res internal display
* unlike with VGA, there is NO flicker on transitoins between boot screen, login screen and user's desktop
* as with VGA, user switching does not work. trying to switch to a user whose configuration is set to extend the desktop to the external monitor is not possible. switching to a new user whose default configuration is to mirror the two displays works, but after the second user is logged in, switching back to the first user is no longer possible. this appears to be the case wheter connecting the external monitor through VGA or DVI.
* turning off the external monitor via Display monitor actually turned off the signal to the external monitor this time (connected through DVI). however, switching to a VT turned the external monitor back on and switching back to X kept the external monitor on.

other thoughts
* i found it confusng at first how switching users allocates new consoles - logging off the first user, makes Ctrl-Alt-F1 switch to a blank screen, and I have to look for X in a new location (Ctrl-Alt-F7 / F8 etc). not sure if this is standard X behavior. Furthermore, I can switch between users freely by using Ctrl-Alt-F? without having to go through a login prompt. this looks like a major security flaw.

Comment 19 Nikolay Botev 2009-07-16 08:50:17 UTC
Created attachment 353956 [details]
cheese on the desktop after an attempt to suspend with desktop extended to external monitor

Comment 20 Nikolay Botev 2009-07-16 09:05:53 UTC
Created attachment 353959 [details]
default user display configuration with external monitor attached

notice how the laptop display only shows a portion of the user's desktop.

the panels on top and bottom extend beyond the bounds of the internal dipslay and span the entire width of the larger external monitor.

however, the maximized terminal window (with midnight commander running) only covers the area displayed on the internal laptop display, which is smaller than the area of the external display.

on the display properties window the two monitors show as overlapping boxes.

Comment 21 Ben Skeggs 2009-07-22 05:22:44 UTC
Hey!

> 
> i hope the extensive log of my experience that follows is useful.
Thanks for taking the time to do this.  I'll comment on any pieces I have thoughts on below.

> 
> 
> 
> no external monitor
> * booting, logging in, user switching work
> * suspend does not work - suspend proceeds but appears to resume immediately
> and shows locked screen
This is expected, the nouveau code in F11 had no hope of being able to resume at all, so I made it refuse to suspend.  This will hopefully be working correctly in time for F12.
> * user switching works fine
> 

> external monitor via laptop's VGA port
> * dynamically connecting monitor after boot and trying to enable via Display
> properties hung with cheese on the laptop's internal display
Odd, this I wouldn't expect on an analogue output, on a digital one perhaps, there's numerous known bugs there that'll hopefully be fixed in F12 too.

> * booting with external monitor connected works
> * boot progress screen is flushed to the left and does not fill the external
> display (which has higher res)
This is the intended behaviour, due to limitations in fbcon.

> * login prompt fills the external display and is chopped on the lower-res
> internal display

> * there is flicker on the external display during the transitions between boot
> screen and login screen and during the transition between login screen and
> user's desktop.
This is an unavoidable side-effect of the analogue display detection.

> * suspend does not work - same as without external monitor
> * user switching does not work - after switching to the second user, attempts
> to go back to the switch user screen fail - the screen flashes and returns to
> the second user's desktop
Hmm this should work, I'd say the original X server dies for some reason.  It'd be useful to get the /var/log/Xorg.<display>.log from after it's died.

> * turning off the external monitor via Display properties does not turn off the
> external display, which still shows a snapshot of the user's desktop as it
> appeared before turning the external display off 
Fixed in the next F11 kernel.

> * attempting to switch to a VT (Ctrl-Alt-F6) hung X. killing Xorg restored the
> login screen. login and switching off the external display worked the same way
> as before, however further attempts to switch to a VT failed, only showing a
> blank screen on the internal display. the external display is stuck showing a
> mouse cursor on all-black background 
> 
> external monitor via docking station's DVI port
> * restarted wtih external monitor connected via the laptop's *VGA* port
> * turned on external monitor via Display properties and then turned it off.
> then connected the laptop to the dock and attempted to turn the external
> monitor on again (this time connected via the dock's DVI port). the display
> properties hung. an attempt to switch to a VT logged me out and showed the
> login screen. after logging in again, I was able to successfully extend my
> desktop to the external monitor attached on the DVI port by using display
> properties
Not sure what to think here, if the display engine had hung you wouldn't be able to get back to a VT either.

> * an attempt to supsend failed the same way as before. after this (as in
> previous cases) the top fifth of the desktop background shows cheese (see
> attached screenshot)
> * restarted with thinkpad connected to docking station
> * as with VGA, boot progress screen is flushed to the left and does not fill
> the external display
> * as with VGA, login prompt fills the external display and is chopped on the
> lower-res internal display
> * unlike with VGA, there is NO flicker on transitoins between boot screen,
> login screen and user's desktop
Correct, we don't rely on DAC load detection to detect the presence of digital outputs, so no flicker.

> * as with VGA, user switching does not work. trying to switch to a user whose
> configuration is set to extend the desktop to the external monitor is not
> possible. switching to a new user whose default configuration is to mirror the
> two displays works, but after the second user is logged in, switching back to
> the first user is no longer possible. this appears to be the case wheter
> connecting the external monitor through VGA or DVI.
> * turning off the external monitor via Display monitor actually turned off the
> signal to the external monitor this time (connected through DVI). however,
> switching to a VT turned the external monitor back on and switching back to X
> kept the external monitor on.
> 
> other thoughts
> * i found it confusng at first how switching users allocates new consoles -
> logging off the first user, makes Ctrl-Alt-F1 switch to a blank screen, and I
> have to look for X in a new location (Ctrl-Alt-F7 / F8 etc). not sure if this
> is standard X behavior.
I don't believe it is, this'd be plymouth's responsibility?

> Furthermore, I can switch between users freely by using
> Ctrl-Alt-F? without having to go through a login prompt. this looks like a
> major security flaw.  
Use the "Switch User" functionality which'd force going back through the login prompt..

Comment 22 Matěj Cepl 2009-11-05 18:23:43 UTC
Since this bugzilla report was filed, there have been several major updates in various components of the Xorg system, which may have resolved this issue. Users who have experienced this problem are encouraged to upgrade their system to the latest version of their packages. For packages from updates-testing repository you can use command

yum upgrade --enablerepo='*-updates-testing'

Alternatively, you can also try to test whether this bug is reproducible with the upcoming Fedora 12 distribution by downloading LiveMedia of F12 Beta available at http://alt.fedoraproject.org/pub/alt/nightly-composes/ . By using that you get all the latest packages without need to install anything on your computer. For more information on using LiveMedia take a look at https://fedoraproject.org/wiki/FedoraLiveCD .

Please, if you experience this problem on the up-to-date system, let us now in the comment for this bug, or whether the upgraded system works for you.

If you won't be able to reply in one month, I will have to close this bug as INSUFFICIENT_DATA. Thank you.

[This is a bulk message for all open Fedora Rawhide Xorg-related bugs. I'm adding myself to the CC list for each bug, so I'll see any comments you make after this and do my best to make sure every issue gets proper attention.]

Comment 23 Chris Campbell 2009-12-04 01:36:10 UTC
Ben, should we keep this bug open? (Any forward motion?)

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 24 Ben Skeggs 2009-12-04 02:06:13 UTC
Well, the bug is rather confusing.  However, I believe the issue raised originally is resolved in F12 (or, F11 with the addition of then-experimental options).

Comment 25 Adam Williamson 2009-12-11 20:17:08 UTC
Let's close it as insufficient info, then. Reporter, please re-open if you are able to provide the requested info and the bug is still valid. Thanks.

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers


Note You need to log in before you can comment on or make changes to this bug.