Bug 653456

Summary: nouveau failed to set mode
Product: [Fedora] Fedora Reporter: Alex Buell <alex.buell>
Component: xorg-x11-drv-nouveauAssignee: Ben Skeggs <bskeggs>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 14CC: airlied, ajax, bskeggs, mcepl, xgl-maint
Target Milestone: ---Keywords: Patch, Triaged
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-16 17:40:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dmesg
none
Xorg.0.log none

Description Alex Buell 2010-11-15 14:28:55 UTC
Description of problem:

Xorg won't start because nouveau fails to set mode

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

xorg-x11-drv-nouveau-0.0.16-11.20100826git065576d.fc14.i686
mesa-dri-drivers-experimental-7.9-2.fc14.i686

How reproducible:

Every time

Steps to Reproduce:
1. Start X11
  
Actual results:

X11 stops with an error

Expected results:

Should have got GDM

Additional info:
[  5754.337] (II) SELinux: Disabled by boolean
[  5754.386] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[  5754.387] (II) AIGLX: enabled GLX_INTEL_swap_event
[  5754.387] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[  5754.388] (II) AIGLX: Loaded and initialized /usr/lib/dri/nouveau_vieux_dri.so
[  5754.388] (II) GLX: Initialized DRI2 GL provider for screen 0
[  5754.439] (II) NOUVEAU(0): NVEnterVT is called.
[  5754.461] (EE) NOUVEAU(0): failed to set mode: Invalid argument
Fatal server error:
[  5754.461] failed to create screen resources
[  5754.461] 

Would be quote happy to help to get this resolved as quickly as possible.
This was a LiveCD installation of Fedora 14.

Comment 1 Matěj Cepl 2010-11-16 00:32:58 UTC
Thanks for the bug report.  We have reviewed the information you have provided above, and there is some additional information especially concerning your hardware we require that will be helpful in our diagnosis of this issue.

If the anaconda crashes during the switching to the graphic mode, most likely the problem lies in Xorg support for your graphics chip. There are couple of options how we can obtain information necessary for resolving the issue.

If the computer is not completely frozen when installation fails, switch to the console (Ctrl+Alt+F2) and copy /tmp/X* and /var/log/anaconda.xlog to some other place -- USB stick, some other computer via network, somewhere on the Internet, and please attach it to the bug report as individual uncompressed file attachments using the bugzilla file attachment link above.

If the computer is completely useless after installation fails, you can also install Fedora with a VESA mode driver (see http://docs.fedoraproject.org/en-US/Fedora/13/html/Installation_Guide/
for more information on that). Then after successful installation you can collect /var/log/anaconda.xlog, /var/log/Xorg.0.log, and the output of the program dmesg instead.

Or you can install Fedora in a text mode completely, and then start X after that. If it fails, still /var/log/Xorg.0.log and the output of dmesg program from the failed attempt to start X would be useful.

We will review this issue again once you've had a chance to attach this information.

Thank you very much in advance.

Comment 2 Alex Buell 2010-11-19 01:17:29 UTC
Created attachment 461421 [details]
dmesg

Comment 3 Alex Buell 2010-11-19 01:18:01 UTC
Created attachment 461423 [details]
Xorg.0.log

Comment 4 Alex Buell 2010-11-19 01:20:03 UTC
OK, here's the information you requested. Fedora 14 installed just fine in text mode but I really wanted to be able to see the graphical installer. This laptop should work out of the box with nouveau and X11, as Ubuntu worked just fine. 

I set up X11 with nouveau driver and got the logs you asked for. 

Hope you can help resolve this problem!

Comment 5 Alex Buell 2010-11-25 10:06:26 UTC
This patch should fix the problem; old BIOSes often do not have enough info to set the mode. 

diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
index 23a7bec..fc35e9d 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bios.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
@@ -5855,7 +5855,7 @@ static void fabricate_vga_output(struct dcb_table *dcb, int i2c, int heads)
 	entry->i2c_index = i2c;
 	entry->heads = heads;
 	entry->location = DCB_LOC_ON_CHIP;
-	/* "or" mostly unused in early gen crt modesetting, 0 is fine */
+	entry->or = 1;
 }
 
 static void fabricate_dvi_i_output(struct dcb_table *dcb, bool twoHeads)

Comment 6 Alex Buell 2010-12-03 09:41:20 UTC
I'm sorry to have to ask, but has there been any progress on this lately?

Comment 7 Ben Skeggs 2010-12-05 23:34:26 UTC
What is the rationale behind initialising entry->or exactly?

Comment 8 Alex Buell 2010-12-06 20:14:05 UTC
I'd have thought it self-evident, but you can find the information here:
http://www.mail-archive.com/nouveau@lists.freedesktop.org/msg05904.html

This explains why the patch is needed and what it solves. 

I'd urge getting this patch into the kernel asap as it would solve this issue on old laptops that doesn't provide enough information for mode setting.

Comment 9 Ben Skeggs 2010-12-06 22:17:19 UTC
It's not overly self-evident if you're not too familiar with pre-G80 modesetting :)  But, indeed that patch looks fine.

Comment 10 Ben Skeggs 2010-12-06 22:27:45 UTC
Oh, and another note:  This should be already fixed since kernel-2.6.35.8-60.fc14, at least, there's an equivalent to the above patch in that kernel.

Comment 11 Alex Buell 2010-12-06 23:47:12 UTC
Ok, I just upgraded to 2.6.35.9-64.fc14, and now getting a different error:

[drm:drm_crtc_helper_set_config] *ERROR* failed to set mode on crtc dc5bb800

Looks like there's another bug that hasn't been resolved yet. 

I'm also running Gentoo w/ 2.6.35, and I'm not experiencing the same problems with X.

Comment 12 Alex Buell 2011-01-10 01:38:20 UTC
I have just encountered the same problems with Ubuntu Natty, so I think this is now a upstream problem, as this laptop has a NV11 chip. But the other laptop has a NV34 chip but works perfectly. 

I'll also be raising this on the drm mailing list for a resolution.

Comment 13 Fedora End Of Life 2012-08-16 17:40:40 UTC
This message is a notice that Fedora 14 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 14. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained.  At this time, all open bugs with a Fedora 'version'
of '14' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this 
occurring, but we forgot to do that. A thousand apologies.)

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, feel free to reopen 
this bug and simply change the 'version' to a later Fedora version.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we were unable to fix it before Fedora 14 reached end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" (top right of this page) and open it against that 
version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping