Bug 493680 - system-config-display crashes on startup in Rawhide with NVIDIA proprietary driver xorg.conf: index out-of-bounds
system-config-display crashes on startup in Rawhide with NVIDIA proprietary d...
Status: CLOSED NOTABUG
Product: Fedora
Classification: Fedora
Component: system-config-display (Show other bugs)
13
All Linux
medium Severity medium
: ---
: ---
Assigned To: Orphan Owner
Fedora Extras Quality Assurance
: Reopened, Triaged
: 434695 505972 509078 533653 546699 557644 616045 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-04-02 12:17 EDT by Adam Williamson
Modified: 2011-06-04 00:30 EDT (History)
18 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-06-03 15:12:20 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
offending xorg.conf (488 bytes, text/plain)
2009-04-02 12:17 EDT, Adam Williamson
no flags Details
My xorg.conf (1.06 KB, text/plain)
2009-05-28 03:07 EDT, rookcifer
no flags Details

  None (edit)
Description Adam Williamson 2009-04-02 12:17:19 EDT
Created attachment 337843 [details]
offending xorg.conf

Running system-config-display in Rawhide with an /etc/X11/xorg.conf file set up for the NVIDIA proprietary driver crashes:

[adamw@adam 10osvendor]$ system-config-display 
Traceback (most recent call last):
  File "/usr/share/system-config-display/xconf.py", line 376, in <module>
    dialog = xConfigDialog.XConfigDialog(hardware_state, xconfig, rhpxl.videocard.VideoCardInfo())
  File "/usr/share/system-config-display/xConfigDialog.py", line 641, in __init__
    if len(self.xconfig.layout[0].adjacencies) > 1:
IndexError: index out-of-bounds

the xorg.conf in question is attached. brianv confirmed the same happens to him (he's also using the NVIDIA proprietary driver). If I rename xorg.conf temporarily, s-c-d starts up correctly.
Comment 1 Phil 2009-04-04 21:11:37 EDT
I get the same issue even without the twinview statements.  I'm using akmod-nvidia.x86_64 from RPMFusion.
Comment 2 Adam Williamson 2009-04-08 17:44:26 EDT
I am going to abuse my powers and triage my own bug =)

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers
Comment 3 Panormitis Petrou 2009-04-23 00:14:21 EDT
I have the same problem on a computer that has an Nvidia 9800GT. I'm using Fedora 11 beta
Comment 4 Max 2009-05-16 17:18:07 EDT
Reproduced on:

Linux xxx 2.6.29.3-140.fc11.i686.PAE #1 SMP Tue May 12 10:44:10 EDT 2009 i686 i686 i386 GNU/Linux

with nVidia Corporation GeForce 8400 GS (rev a1)
Comment 5 Rodd Clarkson 2009-05-17 01:58:11 EDT
reproduced on:

Linux moose 2.6.29.3-140.fc11.i686.PAE #1 SMP Tue May 12 10:44:10 EDT 2009 i686 i686 i386 GNU/Linux

with nVidia Corporation NV41.8 [GeForce Go 6800] (rev a2)
Comment 6 Rodd Clarkson 2009-05-17 01:59:30 EDT
Oh and I should add that I don't have either of the TwinView* lines either in xorg.conf
Comment 7 rookcifer 2009-05-28 03:00:01 EDT
I have almost the same problem here.  system-display-config will not open at all on F10 (KDE 4.2.3).  If I run it in the terminal, I get the following Python errors:

Traceback (most recent call last):       
  File "/usr/share/system-config-display/xconf.py", line 312, in <module>
    hardware_state = XF86HardwareState(xconfig)                          
  File "/usr/lib64/python2.5/site-packages/rhpxl/xhwstate.py", line 174, in __init__
    self.init_from_xconfig(xconfig)                                                 
  File "/usr/lib64/python2.5/site-packages/rhpxl/xhwstate.py", line 260, in init_from_xconfig
    if screen.device:                                                                        
AttributeError: 'NoneType' object has no attribute 'device' 


I tried what Adam said (renaming my xorg.conf file) and it starts up as it should.  I will attach my xorg.conf file for reference.
Comment 8 rookcifer 2009-05-28 03:07:09 EDT
Created attachment 345704 [details]
My xorg.conf

This is my xorg.conf.  The way Xorg autoconfigures my card (using X -configure) probably has something to do with this bug.  If I run X -configure I get a lot of output about too many screens detected for the device (I never has this issue in the past, so I am assuming the new Xorg has had a regression).  So, this attached xorg.conf was mostly edited by hand. 

Oh, and like the guy above, my video card is:

nVidia Corporation GeForce 8400 GS (rev a1)
Comment 9 Bug Zapper 2009-06-09 09:07:20 EDT
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 10 Kurt Bechstein 2009-06-18 10:38:01 EDT
On my Fedora 11 system when I run system-config-display I get the following error message and I'm not using nvidia hardware but rather an Intel video chipset.

system-config-display
Traceback (most recent call last):
  File "/usr/share/system-config-display/xconf.py", line 376, in <module>
    dialog = xConfigDialog.XConfigDialog(hardware_state, xconfig, rhpxl.videocard.VideoCardInfo())
  File "/usr/share/system-config-display/xConfigDialog.py", line 665, in __init__
    self.xml.get_widget("secondMonitorLabel").set_text(monitor_list[1].modelname)
TypeError: GtkLabel.set_text() argument 1 must be string, not None


Let me know if I can provide anything further.
Comment 11 Adam Williamson 2009-06-18 11:43:58 EDT
That's a different bug, you should file it separately. And attach your xorg.conf :)

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers
Comment 12 Kurt Bechstein 2009-06-18 11:50:33 EDT
Will do.
Comment 13 Sebastian Krämer 2009-07-14 05:16:22 EDT
Is bug 509078 a duplicate?
Comment 14 Adam Williamson 2009-07-21 13:54:48 EDT
*** Bug 509078 has been marked as a duplicate of this bug. ***
Comment 15 Juan Castro 2009-08-09 20:55:47 EDT
Reproduced here too, didn't happen with "nv" driver, appeared after installed nvidia modules from RPMFusion. Fedora 11 fully updated as of August 9, 2009.

My output:

------------------------------------------------------------
$ system-config-display 

(system-config-display:2484): Gdk-CRITICAL **: gdk_x11_atom_to_xatom_for_display: assertion `atom != GDK_NONE' failed

(system-config-display:2484): Gdk-CRITICAL **: gdk_x11_atom_to_xatom_for_display: assertion `atom != GDK_NONE' failed
Traceback (most recent call last):
  File "/usr/share/system-config-display/xconf.py", line 376, in <module>
    dialog = xConfigDialog.XConfigDialog(hardware_state, xconfig, rhpxl.videocard.VideoCardInfo())
  File "/usr/share/system-config-display/xConfigDialog.py", line 641, in __init__
    if len(self.xconfig.layout[0].adjacencies) > 1:
IndexError: index out-of-bounds
$
------------------------------------------------------------

My xorg.conf (generated upon install of nvidia kmod and nvidia xorg driver via yum):

------------------------------------------------------------
# Xorg configuration created by livna-config-display

Section "Files"
	ModulePath   "/usr/lib/xorg/modules/extensions/nvidia"
	ModulePath   "/usr/lib/xorg/modules"
EndSection

Section "ServerFlags"
	Option	    "AIGLX" "on"
EndSection

Section "Device"
	Identifier  "Videocard0"
	Driver      "nvidia"
	Option	    "AddARGBGLXVisuals" "True"
EndSection

Section "Extensions"
	Option	    "Composite" "Enable"
EndSection
------------------------------------------------------------
Comment 16 Matěj Cepl 2009-11-05 13:24:56 EST
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 17 Adam Williamson 2009-11-05 19:04:57 EST
since no-one ever touches s-c-d, no, this has not been fixed with an update.

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers
Comment 18 Rick Mortensen 2009-11-07 15:27:00 EST
I am installing a new desktop system that is suffering from this issue.  I tried the command in comment #16 (yum upgrade --enablerepo='*-updates-testing') and still have the same issue.  It would seem this has not been corrected yet.
Comment 19 Ken Milmore 2009-11-21 23:55:09 EST
I've just run into this issue on Fedora 12 (package system-config-display-2.2-1.fc12.x86_64) after installing the proprietary nVidia driver.  I think I know what's going on...

The issue appears to be caused by a bounds violation on an empty layout[] collection in the Python object which represents the xorg.conf file.  This only occurs when there is an existing xorg.conf file which does not contain an explicit "ServerLayout" section.

A workaround is to run "system-config-display --reconfig", which should write a new xorg.conf file with the "ServerLayout" section included.

As to the root cause, see /usr/share/system-config-display/xconf.py:

- If we are doing a reconfigure, or if there is no existing xorg.conf, then the xconfig object is populated from the call to hardware_state.generate_xconfig on line 331 of xconf.py.  This object is initially set up by xf86config.createTemplate() with a dummy layout[0] entry.  In this case no problem occurs.

- In other cases (i.e. not a reconfigure, and if xorg.conf exists), the xconfig object is built from the xorg.conf file via xf86config.readConfigFile() on line 308 of xconf.py.  It appears that if there isn't a "ServerLayout" section in the file, then the layout[] collection is returned empty.  This causes a bounds violation when an attempt is made to access layout[0].  (The script assumes all over the place that layout[0] exists).

I would have thought this can be fixed up quite easily by adding a dummy layout object to the list in cases where none was found in the xorg.conf file.  Not sure exactly where the best place is to do this though.
Comment 20 Sebastian Krämer 2009-12-02 14:39:54 EST
(In reply to comment #19)
> A workaround is to run "system-config-display --reconfig", which should write..

Thanks, that did the trick for me!
Comment 21 Bug Zapper 2010-04-27 09:27:21 EDT
This message is a reminder that Fedora 11 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 11.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '11'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 11's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 11 is 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 please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

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
Comment 22 Joachim Frieben 2010-05-20 08:26:21 EDT
The same issue occurs on a fully updated F12 system including package system-config-display-2.2-1.fc12.x86_64.
Comment 23 Bug Zapper 2010-06-28 07:40:05 EDT
Fedora 11 changed to end-of-life (EOL) status on 2010-06-25. Fedora 11 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.
Comment 24 Adam Williamson 2010-06-28 11:46:38 EDT
it still does this. it'll keep doing it until anyone actually touches the s-c-d code. =)

I'm just going to switch the version field to Rawhide to avoid the EOL stuff happening.



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers
Comment 25 Rodd Clarkson 2010-07-16 19:58:18 EDT
I'm going to have to bug out on this as I don't have an nvidia card to test with any more.
Comment 26 Bug Zapper 2010-07-30 06:38:01 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 14 development cycle.
Changing version to '14'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Comment 27 Ankur Sinha (FranciscoD) 2010-11-05 01:04:29 EDT
Hello,

Still getting this:

Traceback (most recent call last):
  File "/usr/share/system-config-display/xconf.py", line 378, in <module>
    dialog = xConfigDialog.XConfigDialog(hardware_state, xconfig, videocard.VideoCardInfo())
  File "/usr/share/system-config-display/xConfigDialog.py", line 640, in __init__
    if len(self.xconfig.layout[0].adjacencies) > 1:
IndexError: index out-of-bounds


[Ankur@070905042 ~]$ rpm -q system-config-display
system-config-display-2.2-1.fc12.x86_64

(I'm on F13)

regards,
Ankur
Comment 28 Ankur Sinha (FranciscoD) 2010-11-05 01:07:36 EDT
*** Bug 505972 has been marked as a duplicate of this bug. ***
Comment 29 Ankur Sinha (FranciscoD) 2010-11-05 01:08:16 EDT
*** Bug 434695 has been marked as a duplicate of this bug. ***
Comment 30 Ankur Sinha (FranciscoD) 2010-11-05 01:08:29 EDT
*** Bug 616045 has been marked as a duplicate of this bug. ***
Comment 31 Ankur Sinha (FranciscoD) 2010-11-05 01:08:40 EDT
*** Bug 533653 has been marked as a duplicate of this bug. ***
Comment 32 Ankur Sinha (FranciscoD) 2010-11-05 01:17:04 EDT
*** Bug 557644 has been marked as a duplicate of this bug. ***
Comment 33 Ankur Sinha (FranciscoD) 2010-11-05 01:21:28 EDT
*** Bug 546699 has been marked as a duplicate of this bug. ***
Comment 34 udo 2010-11-05 10:04:21 EDT
The duplicate `system` is weird indeed.
Why mark older bugs as duplicates?
Why use this NVIDIA specific one (not a general description at least) as a bug that should stay?
Why no real bug fixing but only bug list cleanups?

What can we test?
Comment 35 udo 2010-11-05 10:10:26 EDT
Why on earth choose a bug that exists w.r.t. a proprietary driver to carry all the 'duplicate' bugs?
Comment 36 Adam Williamson 2010-11-05 18:45:25 EDT
updating it to f13. s-c-d was actually orphaned for f14 so it's not valid for f14.

"Why on earth choose a bug that exists w.r.t. a proprietary driver to carry all
the 'duplicate' bugs?"

well, it shouldn't fall over whatever the contents of xorg.conf are. it isn't particularly important which bugs get marked as dupes, just that we have one bug to track the problem.



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers
Comment 37 Bug Zapper 2011-06-02 14:10:59 EDT
This message is a reminder that Fedora 13 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 13.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '13'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 13's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 13 is 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 please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

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
Comment 38 Sebastian Krämer 2011-06-02 14:23:43 EDT
So I guess we can close this one now. There's no s-c-d any more, right?
Comment 39 Adam Williamson 2011-06-04 00:30:57 EDT
it's orphaned, which isn't entirely the same thing, but never mind.

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