Bug 844463 - Xorg blows assertion at startup: Xorg: privates.c:560: dixPrivatesSize: Assertion `!screen_specific_private[type]' failed.
Summary: Xorg blows assertion at startup: Xorg: privates.c:560: dixPrivatesSize: Asser...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-qxl
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Alon Levy
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: AcceptedNTH
: 844311 (view as bug list)
Depends On:
Blocks: F18Beta, F18BetaBlocker F18Alpha-accepted, F18AlphaFreezeExcept
TreeView+ depends on / blocked
 
Reported: 2012-07-30 18:18 UTC by Ray Strode [halfline]
Modified: 2014-08-04 22:09 UTC (History)
18 users (show)

Fixed In Version:
Clone Of: 841755
Environment:
Last Closed: 2012-09-06 00:52:33 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
suggested fix 1 (162.45 KB, application/x-rpm)
2012-08-17 10:43 UTC, Alon Levy
no flags Details

Description Ray Strode [halfline] 2012-07-30 18:18:29 UTC
+++ This bug was initially created as a clone of Bug #841755 +++
--- Additional comment from john.ellson on 2012-07-28 12:48:51 EDT ---

I'll add to this bug, if I may, because I think its probably related.  Still no GDM screen for me in a rawhide virtual-host console:

kernel-3.6.0-0.rc0.git2.1.fc18.x86_64
gdm-3.5.4.2-2.fc18.x86_64
dconf-0.13.4-2.fc18.x86_64
xorg-x11-server-Xorg-1.12.99.903-2.20120726.fc18.x86_64


# tail /var/log/gdm/:0.log
memory space from 0x7f0877b77000 to 0x7f0879b75000
memory space from 0x7f0872b77000 to 0x7f0876b77000
slots start: 1, slots end: 7
done reset
(II) UXA(0): Driver registered support for the following operations:
(II)         solid
(II)         copy
(II)         composite (RENDER acceleration)
(II)         put_image
Xorg: privates.c:560: dixPrivatesSize: Assertion `!screen_specific_private[type]' failed.

--- Additional comment from petersen on 2012-07-30 01:10:51 EDT ---

(In reply to comment #8)
> I'll add to this bug, if I may, because I think its probably related.

Does X start for you?

For me currently X can't start from a rawhide install.
(Above testing was done on a F17 install + some Rawhide packages.)

--- Additional comment from john.ellson on 2012-07-30 11:32:45 EDT ---

No.  Or at least, it hangs halfway with a blank screen. Sounds like you might have the same issue with Rawhide?

/var/log/Xorg.0.log  just ends with:
[    22.583] memory space from 0x7fca48f21000 to 0x7fca4af1f000
[    22.583] memory space from 0x7fca43f21000 to 0x7fca47f21000
[    23.287] slots start: 1, slots end: 7
[    23.287] done reset
[    23.288] (II) UXA(0): Driver registered support for the following operations:
[    23.288] (II)         solid
[    23.288] (II)         copy
[    23.288] (II)         composite (RENDER acceleration)
[    23.288] (II)         put_image


which is the same as /var/log/gdm/:0.log ends, but without the:
Xorg: privates.c:560: dixPrivatesSize: Assertion `!screen_specific_private[type]' failed.

The system is usable from ssh login, and no process is running away with cpu cycles.

--- Additional comment from john.ellson on 2012-07-30 12:36:11 EDT ---

Still broken with:  kernel-3.6.0-0.rc0.git4.1.fc18.x86_64

/var/log/messages contains:

Jul 30 12:16:52 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSimpleSlave: Started X server
Jul 30 12:16:52 rawhide-64 dbus-daemon[486]: dbus[486]: [system] Rejected send message, 1 matched rules; type="method_call", sender=":1.8" (uid=0 pid=603 comm="/usr/sbin/gdm-binary -nodaemon ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination=":1.20" (uid=0 pid=800 comm="/usr/libexec/gdm-simple-slave --display-id /org/gn")
Jul 30 12:16:53 rawhide-64 abrt[805]: Not dumping repeating crash in '/usr/bin/Xorg'
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmServer: child (pid:803) done (signal:6)
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSimpleSlave: server died with signal 6, (Aborted)
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): slave finished
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSimpleSlave: Stopping simple_slave
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSlave: Stopping slave
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSignalHandler: Removing handler 10: signum=11 0x40c390
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSlave: Stopping slave
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): GdmSignalHandler: Finalizing signal handler
Jul 30 12:16:53 rawhide-64 gdm-simple-slave[800]: DEBUG(+): Slave finished
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmDisplay: Finishing display: /org/gnome/DisplayManager/Displays/_5
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmDisplay: Unmanaging display
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmDisplay: unmanage display
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmSlaveProxy: Killing slave
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmCommon: sending signal 15 to process 800
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmCommon: process (pid:800) done (status:0)
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmSlaveProxy: slave died with exit status 0
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmSlaveProxy: Disposing slave proxy
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmSlaveProxy: Killing slave
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: WARNING: GdmDisplay: display lasted 0.887870 seconds
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmLocalDisplayFactory: display status changed: 4
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: DEBUG(+): GdmDisplayStore: Unreffing display: 0x214ece0
Jul 30 12:16:53 rawhide-64 gdm-binary[603]: WARNING: GdmLocalDisplayFactory: maximum number of X display failures reached: check X server log for errors

--- Additional comment from rstrode on 2012-07-30 14:15:44 EDT ---

that bug is actually distinct from the other two mentioned in comment 7 (which were actually distinct from each other).

Let's clone this bug instead of muddying it up more (I'll clone it).

Comment 1 John Ellson 2012-07-31 23:34:20 UTC
Downgrading to the following versions (from koji) gives me a desktop again:

xorg-x11-drv-ast-0.93.9-6.fc18.x86_64.rpm
xorg-x11-drv-ati-6.14.4-6.20120602git930760942.fc18.x86_64.rpm
xorg-x11-drv-cirrus-1.4.0-2.fc18.x86_64.rpm
xorg-x11-drv-dummy-0.3.5-4.fc18.x86_64.rpm
xorg-x11-drv-evdev-2.7.0-4.fc18.x86_64.rpm
xorg-x11-drv-fbdev-0.4.2-8.fc18.x86_64.rpm
xorg-x11-drv-intel-2.19.0-4.20120529.fc18.x86_64.rpm
xorg-x11-drv-mga-1.4.13-19.20120104git9223c44a7.fc18.x86_64.rpm
xorg-x11-drv-nouveau-1.0.1-2.fc18.x86_64.rpm
xorg-x11-drv-openchrome-0.2.906-1.fc18.x86_64.rpm
xorg-x11-drv-qxl-0.0.22-1.fc18.x86_64.rpm
xorg-x11-drv-synaptics-1.6.2-1.fc18.x86_64.rpm
xorg-x11-drv-vesa-2.3.1-1.fc18.x86_64.rpm
xorg-x11-drv-vmmouse-12.9.0-2.fc18.x86_64.rpm
xorg-x11-drv-vmware-12.0.2-1.fc18.x86_64.rpm
xorg-x11-drv-void-1.4.0-8.fc18.x86_64.rpm
xorg-x11-drv-wacom-0.15.0-2.fc18.x86_64.rpm
xorg-x11-server-Xdmx-1.12.3-1.fc18.x86_64.rpm
xorg-x11-server-Xephyr-1.12.3-1.fc18.x86_64.rpm
xorg-x11-server-Xorg-1.12.3-1.fc18.x86_64.rpm
xorg-x11-server-common-1.12.3-1.fc18.x86_64.rpm

Comment 2 John Ellson 2012-08-03 13:52:43 UTC
Proposed Fedora-18 blocker.

Using latest xorg-x11-server has left Rawhide without a desktop since July 18.

Comment 3 John Ellson 2012-08-05 16:10:34 UTC
Still broken with today's:
    xorg-x11-server-common-1.12.99.903-6.20120726.fc18.i686
    xorg-x11-server-Xorg-1.12.99.903-6.20120726.fc18.i686
    xorg-x11-server-Xephyr-1.12.99.903-6.20120726.fc18.i686
    kernel-3.6.0-0.rc1.git1.2.fc18.i686

Comment 4 John Himpel 2012-08-06 20:19:59 UTC
I am experiencing the same symptoms as John Ellson when running inside a virtual machine.  My host driver is the ati driver and my client driver is the qxl driver.  When I change the client driver to cirrus, the gui is successfully started.

Comment 5 John Ellson 2012-08-06 21:46:12 UTC
Wonderful.  That worked for me too.  Thanks!

So perhaps the bug is just in the QNX driver?

Comment 6 Alon Levy 2012-08-09 09:29:25 UTC
s/QNX/QXL/. probably related to the latest api changes. I'll try to reproduce. Thanks for the report.

Alon

Comment 7 Adam Williamson 2012-08-16 21:11:06 UTC
This is still affecting current Fedora 18, no F18 image we've built boots in a KVM with the qxl driver. I can confirm the "Xorg: privates.c:560: dixPrivatesSize: Assertion `!screen_specific_private[type]' failed." message seems to be the key error.

Moving to proposed Beta blocker - virt functionality is supposed to be in place for Beta:

"The release must be able host virtual guest instances of the same release, using Fedora's current preferred virtualization technology"

"The release must install and boot successfully as a virtual guest in a situation where the virtual host is running the previous stable Fedora release, using Fedora's current preferred virtualization technology"

Comment 8 Alon Levy 2012-08-17 10:43:42 UTC
Created attachment 605164 [details]
suggested fix 1

Comment 9 Alon Levy 2012-08-17 10:44:09 UTC
Could somebody try the attachment? I've added the only patch in my local tree that has something to do with the latest api changes. Attached the srpm.

Comment 10 Adam Williamson 2012-08-17 20:11:05 UTC
scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4400854

Comment 11 Adam Williamson 2012-08-17 22:42:41 UTC
scratch build with an incremented revision: http://koji.fedoraproject.org/koji/taskinfo?taskID=4401091

doesn't seem to help, though. X startup still fails on a live image built with this xorg-x11-drv-qxl.

X: privates.c:560: dixPrivatesSize: Assertion `!screen_specific_private[type]' failed.
Aborted
[liveuser@localhost ~]$ rpm -q xorg-x11-drv-qxl
xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18.x86_64

I checked in the build.log of the scratch build that the patch really gets applied, so it seems like it just doesn't _help_.

Comment 12 John Himpel 2012-08-19 00:59:24 UTC
Trying the new driver from koji.  GUI still doesn't start.  Don't know if the following from /var/log/messages will help or not.

Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Registering
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: starting slave
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Starting slave
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Creating proxy for /org/gnome/DisplayManager/Displays/_4
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Got display ID: /org/gnome/DisplayManager/Displays/_4
Aug 18 19:48:07 rawhide dbus[562]: [system] Rejected send message, 1 matched rules; type="method_call", sender=":1.7" (uid=0 pid=593 comm="/usr/sbin/gdm-binary ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination=":1.20" (uid=0 pid=1022 comm="/usr/libexec/gdm-simple-slave --display-id /org/gn")
Aug 18 19:48:07 rawhide abrtd: Can't load public GPG key /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSignalHandler: Adding handler 11: signum=10 0x40c360
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): Failed to get value for security/DisallowTCP: GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._gdm_5fsettings_5fbackend_5ferror.Code1: Key not found
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmServer: Starting X server process: /usr/bin/Xorg :4 -br -verbose -auth /var/run/gdm/auth-for-gdm-3esrvC/database -seat seat0 -nolisten tcp vt1
Aug 18 19:48:07 rawhide gdm-simple-slave[1031]: DEBUG(+): GdmServer: Opening logfile for server /var/log/gdm/:4.log
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmServer: Started X server process 1031 - waiting for READY
Aug 18 19:48:07 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSimpleSlave: Started X server
Aug 18 19:48:07 rawhide dbus-daemon[562]: dbus[562]: [system] Rejected send message, 1 matched rules; type="method_call", sender=":1.7" (uid=0 pid=593 comm="/usr/sbin/gdm-binary ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination=":1.20" (uid=0 pid=1022 comm="/usr/libexec/gdm-simple-slave --display-id /org/gn")
Aug 18 19:48:08 rawhide abrtd: '/var/spool/abrt/ccpp-2012-08-04-11:56:57-384' is not a problem directory
Aug 18 19:48:08 rawhide abrt[1038]: Not saving repeating crash in '/usr/bin/Xorg'
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmServer: child (pid:1031) done (signal:6)
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSimpleSlave: server died with signal 6, (Aborted)
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): slave finished
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSimpleSlave: Stopping simple_slave
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Stopping slave
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSignalHandler: Removing handler 10: signum=11 0x40c360
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSlave: Stopping slave
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): GdmSignalHandler: Finalizing signal handler
Aug 18 19:48:08 rawhide gdm-simple-slave[1022]: DEBUG(+): Slave finished
Aug 18 19:48:08 rawhide gdm-simple-slave[1039]: DEBUG(+): Enabling debugging

Comment 13 Vratislav Podzimek 2012-08-20 13:25:36 UTC
(In reply to comment #11)
> scratch build with an incremented revision:
> http://koji.fedoraproject.org/koji/taskinfo?taskID=4401091
> 
> doesn't seem to help, though. X startup still fails on a live image built
> with this xorg-x11-drv-qxl.
Doesn't work for me on a testing image neither.

Comment 14 Fedora Update System 2012-08-23 14:53:51 UTC
xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18

Comment 15 John Himpel 2012-08-23 15:11:24 UTC
buildID=350106 from koji at least brings up the gdm login screen.  Unfortunately, can't test any further as gnome seems to be borked again.

Thanks for the update.

Comment 16 John Ellson 2012-08-23 15:25:12 UTC
Not working for me, but it may be a different problem now.

When I boot into run-level-5, I see the busy-mouse-pointer but then nothing happens.  (I didn't get the gdm screen that John Himpel reports.)

When I boot at run-level-3, log in, and type "startx",  I get a gnome complaint "Oh no! Something has gone wrong."   (how useless!)


/var/log/Xorg.0.log shows a problem starting with:
     [   412.114] qxl_surface_create: Bad bpp: 1 (1)




# tail -50 Xorg.0.log
[   380.534] (II) XINPUT: Adding extended input device "ImExPS/2 Generic Explorer Mouse" (type: MOUSE, id 9)
[   380.534] (II) VMWARE(0): VMMOUSE DEVICE_INIT
[   380.534] (**) ImExPS/2 Generic Explorer Mouse: (accel) keeping acceleration scheme 1
[   380.534] (**) ImExPS/2 Generic Explorer Mouse: (accel) acceleration profile 0
[   380.535] (**) ImExPS/2 Generic Explorer Mouse: (accel) acceleration factor: 2.000
[   380.535] (**) ImExPS/2 Generic Explorer Mouse: (accel) acceleration threshold: 4
[   380.535] (II) VMWARE(0): VMMOUSE DEVICE_ON
[   380.536] (II) VMWARE(0): vmmouse enabled
[   380.542] (II) config/udev: Adding input device ImExPS/2 Generic Explorer Mouse (/dev/input/mouse0)
[   380.542] (II) No input driver specified, ignoring this device.
[   380.543] (II) This device may have been added with another device file.
[   412.114] qxl_surface_create: Bad bpp: 1 (1)
[   412.114] qxl_surface_create: Bad bpp: 1 (1)
[   446.464] qxl_surface_create: Bad bpp: 1 (1)
[   471.452] (EE) 
[   471.452] (EE) Backtrace:
[   471.453] (EE) 0: /usr/bin/X (xorg_backtrace+0x36) [0x46c266]
[   471.453] (EE) 1: /usr/bin/X (0x400000+0x71a19) [0x471a19]
[   471.454] (EE) 2: /lib64/libpthread.so.0 (0x7f5208134000+0xf000) [0x7f5208143000]
[   471.454] (EE) 3: /usr/lib64/xorg/modules/drivers/qxl_drv.so (0x7f52073cb000+0xca3a) [0x7f52073d7a3a]
[   471.454] (EE) 4: /usr/bin/X (0x400000+0xce118) [0x4ce118]
[   471.454] (EE) 5: /usr/bin/X (0x400000+0xace14) [0x4ace14]
[   471.455] (EE) 6: /usr/bin/X (0x400000+0xad03c) [0x4ad03c]
[   471.455] (EE) 7: /usr/bin/X (RRCrtcSet+0x749) [0x50a2f9]
[   471.455] (EE) 8: /usr/bin/X (ProcRRSetCrtcConfig+0x3d7) [0x50b377]
[   471.455] (EE) 9: /usr/bin/X (0x400000+0x395aa) [0x4395aa]
[   471.460] (EE) 10: /usr/bin/X (0x400000+0x2805a) [0x42805a]
[   471.460] (EE) 11: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7f5207891a05]
[   471.461] (EE) 12: /usr/bin/X (0x400000+0x2839d) [0x42839d]
[   471.461] (EE) 
[   471.461] (EE) Segmentation fault at address 0x78
[   471.461] 
Fatal server error:
[   471.461] Caught signal 11 (Segmentation fault). Server aborting
[   471.461] 
[   471.462] (EE) 
Please consult the Fedora Project support 
	 at http://wiki.x.org
 for help. 
[   471.462] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[   471.462] (EE) 
[   471.489] (II) evdev: Power Button: Close
[   471.489] (II) UnloadModule: "evdev"
[   471.490] (II) evdev: QEMU 1.0,1 QEMU USB Tablet: Close
[   471.490] (II) UnloadModule: "evdev"
[   471.490] (II) evdev: AT Translated Set 2 keyboard: Close
[   471.490] (II) UnloadModule: "evdev"
[   471.490] (II) VMWARE(0): VMMOUSE DEVICE_OFF/CLOSE
[   471.796] (II) VMWARE(0): VMMOUSE DEVICE_OFF/CLOSE
[   472.098] (II) VMWARE(0): VMMouseUnInit
[root@fc18-64 log]#

Comment 17 Alon Levy 2012-08-23 15:27:01 UTC
Thanks for the quick test. Could you please install the debuginfo and give me a stacktrace? I tested on a vm with icewm & xterm only, I'll try gnome too but you would help by providing it faster :)

Alon

Comment 18 Fedora Update System 2012-08-23 15:36:30 UTC
Package xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-12557/xorg-x11-drv-qxl-0.0.22-4.20120718gitde6620788.fc18
then log in and leave karma (feedback).

Comment 19 John Ellson 2012-08-23 19:00:16 UTC
Re Comment #17

Sorry, I'm not that fast - real job intervened ... also, although I can use gdb on simple programs, I don't know how to run X under gdb?

Comment 20 Vratislav Podzimek 2012-08-24 08:47:42 UTC
(In reply to comment #19)
> Re Comment #17
> 
> Sorry, I'm not that fast - real job intervened ... also, although I can use
> gdb on simple programs, I don't know how to run X under gdb?
Something should be here:
http://www.x.org/wiki/Development/Documentation/ServerDebugging
but I cannot load that page, now.

Comment 21 Alon Levy 2012-08-24 12:44:56 UTC
I couldn't get gdm to run - I get a black screen with the icon revolving. Tried running gnome-session directly, it hangs. Tried running gnome-shell directly, it segfaults but not X related. So in short, I couldn't get X or qxl_driver.so to segfault yet.

To produce a better backtrace you just need to install the debuginfo and reproduce the crash, no need for gdb.

debuginfo-install xorg-x11-drv-qxl -y
<reproduce crash>

Alon

Comment 22 John Ellson 2012-08-24 14:17:25 UTC
I can't recreate the segfailt either.

I see the same on a normal run-level-5 start: a black screen with the icon revolving.

If I start at run-level-3, then use "startx" as a regular user, I eventually get the useless Gnome message: "Oh no! Something has gone wrong."

I was running "tail -f Xorg.0.log" at the time and I noticed that the messages:
 [   938.000] qxl_surface_create: Bad bpp: 1 (1)
 [   938.001] qxl_surface_create: Bad bpp: 1 (1)
 [   957.789] qxl_surface_create: Bad bpp: 1 (1)
occurred simultanously with the useless Gnome message.

My guess is that the qxl_driver is probably OK now and we're hitting Gnome bugs,
but I can't prove that.

Should I try downgrading GDM ?   Anyone know of one that works?

Comment 23 John Ellson 2012-08-24 14:22:32 UTC
Oh interesting!    I still had the tail -f running, and just after I finished my last reply I got the segfault:

[   905.746] (II) VMWARE(0): VMMOUSE DEVICE_ON
[   905.746] (II) VMWARE(0): vmmouse enabled
[   905.747] (II) config/udev: Adding input device ImExPS/2 Generic Explorer Mouse (/dev/input/mouse0)
[   905.747] (II) No input driver specified, ignoring this device.
[   905.747] (II) This device may have been added with another device file.
[   938.000] qxl_surface_create: Bad bpp: 1 (1)
[   938.001] qxl_surface_create: Bad bpp: 1 (1)
[   957.789] qxl_surface_create: Bad bpp: 1 (1)
[  1533.682] (EE) 
[  1533.682] (EE) Backtrace:
[  1533.686] (EE) 0: /usr/bin/X (xorg_backtrace+0x36) [0x46c266]
[  1533.688] (EE) 1: /usr/bin/X (0x400000+0x71a19) [0x471a19]
[  1533.689] (EE) 2: /lib64/libpthread.so.0 (0x3ad9e00000+0xf000) [0x3ad9e0f000]
[  1533.691] (EE) 3: /usr/lib64/xorg/modules/drivers/qxl_drv.so (0x7fb782577000+0xca3a) [0x7fb782583a3a]
[  1533.693] (EE) 4: /usr/bin/X (0x400000+0xce118) [0x4ce118]
[  1533.695] (EE) 5: /usr/bin/X (0x400000+0xace14) [0x4ace14]
[  1533.696] (EE) 6: /usr/bin/X (0x400000+0xad03c) [0x4ad03c]
[  1533.698] (EE) 7: /usr/bin/X (RRCrtcSet+0x749) [0x50a2f9]
[  1533.700] (EE) 8: /usr/bin/X (ProcRRSetCrtcConfig+0x3d7) [0x50b377]
[  1533.701] (EE) 9: /usr/bin/X (0x400000+0x395aa) [0x4395aa]
[  1533.703] (EE) 10: /usr/bin/X (0x400000+0x2805a) [0x42805a]
[  1533.705] (EE) 11: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3ad9621a05]
[  1533.706] (EE) 12: /usr/bin/X (0x400000+0x2839d) [0x42839d]
[  1533.707] (EE) 
[  1533.715] (EE) Segmentation fault at address 0x78
[  1533.716] 
Fatal server error:
[  1533.717] Caught signal 11 (Segmentation fault). Server aborting
[  1533.718] 
[  1533.718] (EE) 
Please consult the Fedora Project support 
	 at http://wiki.x.org
 for help. 
[  1533.722] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  1533.722] (EE) 
[  1533.725] (II) evdev: Power Button: Close
[  1533.730] (II) UnloadModule: "evdev"
[  1533.732] (II) evdev: QEMU 1.0,1 QEMU USB Tablet: Close
[  1533.732] (II) UnloadModule: "evdev"
[  1533.734] (II) evdev: AT Translated Set 2 keyboard: Close
[  1533.735] (II) UnloadModule: "evdev"
[  1533.737] (II) VMWARE(0): VMMOUSE DEVICE_OFF/CLOSE
[  1534.038] (II) VMWARE(0): VMMOUSE DEVICE_OFF/CLOSE
[  1534.339] (II) VMWARE(0): VMMouseUnInit

Comment 24 John Ellson 2012-08-24 15:55:28 UTC
How to recreate: 
 - boot to run-level 3
 - login as regular user on console
 - ssh in as as root from another machine
 - enter "startx" on console
 - in ssh session, enter:  tail -f /var/log/Xorg.0.log
 - don't touch anything and wait around 600 seconds (~10 min)

Comment 25 John Ellson 2012-08-24 16:36:30 UTC
I caught the crash with /usr/bin/X attached to gdb in a second ssh:

Program received signal SIGPIPE, Broken pipe.
0x0000003ad96eaec7 in __libc_writev (fd=23, 
    vector=vector@entry=0x7fff92595fe0, count=count@entry=1)
    at ../sysdeps/unix/sysv/linux/writev.c:50
50	    result = INLINE_SYSCALL (writev, 3, fd, CHECK_N (vector, count), count);
(gdb) where
#0  0x0000003ad96eaec7 in __libc_writev (fd=23, 
    vector=vector@entry=0x7fff92595fe0, count=count@entry=1)
    at ../sysdeps/unix/sysv/linux/writev.c:50
#1  0x00000000004783d6 in _XSERVTransSocketWritev (ciptr=0x21d7e20, 
    buf=0x7fff92595fe0, size=1) at /usr/include/X11/Xtrans/Xtranssock.c:2157
#2  0x000000000046f2fd in FlushClient (who=who@entry=0x21d80c0, 
    oc=oc@entry=0x21cc910, __extraBuf=__extraBuf@entry=0x0, 
    extraCount=extraCount@entry=0) at io.c:892
#3  0x000000000046dd67 in CloseDownConnection (client=client@entry=0x21d80c0)
    at connection.c:1042
#4  0x0000000000438af8 in CloseDownClient (client=client@entry=0x21d80c0)
    at dispatch.c:3372
#5  0x00000000004395c6 in Dispatch () at dispatch.c:440
#6  0x000000000042805a in main (argc=4, argv=0x7fff92596278, 
    envp=<optimized out>) at main.c:295
(gdb)

Comment 26 Ray Strode [halfline] 2012-08-24 19:45:44 UTC
SIGPIPE is a normal signal gdb should probably be told not to stop for.  You can do that with

(gdb) handle SIGPIPE nostop pass

(after attaching before continuing)

though, you probably will also need to do

startx -- -dumbSched

instead of just startx , since X's scheduling mechanism also interferes with gdb.

Comment 27 John Ellson 2012-08-25 13:36:39 UTC
OK, thanks, now I get (after 10min for the SIGSEGV):

(gdb) handle SIGPIPE nostop pass
Signal        Stop	Print	Pass to program	Description
SIGPIPE       No	Yes	Yes		Broken pipe
(gdb) c
Continuing.
Detaching after fork from child process 1176.

Program received signal SIGPIPE, Broken pipe.
Detaching after fork from child process 1218.

Program received signal SIGPIPE, Broken pipe.
Detaching after fork from child process 1249.

Program received signal SIGPIPE, Broken pipe.
Detaching after fork from child process 1280.

Program received signal SIGSEGV, Segmentation fault.
uxa_xorg_enable_disable_fb_access (arg=0xaddba0, enable=0) at uxa.c:365
365		uxa_screen_t *uxa_screen = uxa_get_screen(pScreen);
(gdb) where
#0  uxa_xorg_enable_disable_fb_access (arg=0xaddba0, enable=0) at uxa.c:365
#1  0x00000000004ce118 in xf86CursorEnableDisableFBAccess (pScrn=0xaddba0, enable=0) at xf86Cursor.c:226
#2  0x00000000004ace14 in xf86RandRSetMode (pScreen=pScreen@entry=0xadd640, mode=0xae23b0, useVirtual=<optimized out>, mmWidth=271, 
    mmHeight=<optimized out>) at xf86RandR.c:162
#3  0x00000000004ad03c in xf86RandRSetConfig (pScreen=0xadd640, rotation=1, rate=60, pSize=0x7fff1ba44320) at xf86RandR.c:287
#4  0x000000000050a2f9 in RRCrtcSet (crtc=<optimized out>, mode=0xcb9970, x=0, y=0, rotation=1, numOutputs=numOutputs@entry=1, 
    outputs=outputs@entry=0xd602c0) at rrcrtc.c:588
#5  0x000000000050b377 in ProcRRSetCrtcConfig (client=0xcb8ca0) at rrcrtc.c:1157
#6  0x00000000004395aa in Dispatch () at dispatch.c:428
#7  0x000000000042805a in main (argc=5, argv=0x7fff1ba446b8, envp=<optimized out>) at main.c:295
(gdb) 


And the last entries in /var/log/Xorg.0.log upto the SIGSEGV are:

[   104.215] (II) config/udev: Adding input device ImExPS/2 Generic Explorer Mouse (/dev/input/mouse0)
[   104.215] (II) No input driver specified, ignoring this device.
[   104.215] (II) This device may have been added with another device file.
[   138.585] qxl_surface_create: Bad bpp: 1 (1)
[   138.585] qxl_surface_create: Bad bpp: 1 (1)
[   163.834] qxl_surface_create: Bad bpp: 1 (1)




I'm fairly sure that the "Badd bpp" messages were coincident with the SIGPIPEs.

Comment 28 John Ellson 2012-08-25 13:43:16 UTC
Maybe this will help...

(gdb) p *pScreen
$2 = {myNum = 0, id = 0, x = -30063, y = 20341, width = 32566, height = 0, mmWidth = -10688, mmHeight = 173, numDepths = 0, rootDepth = 0 '\000', 
  allowedDepths = 0x100000000, rootVisual = 0, defColormap = 137438953504, minInstalledCmaps = 0, maxInstalledCmaps = 0, 
  backingStoreSupport = 0 '\000', saveUnderSupport = 0 '\000', whitePixel = 0, blackPixel = 0, GCperDepth = {0x0, 0x2000202018, 0x1800000002, 0x2, 
    0x800000008, 0xff000000000008, 0xff0000ff00, 0x800000010, 0x800000000}, PixmapPerDepth = {0x3f8000003f800000}, devPrivate = 0x43f800000, 
  numVisuals = 0, visuals = 0x30000000400, root = 0x100000008, screensaver = {pWindow = 0xa00, wid = 0, blanked = -1 '\377', 
    ExternalScreenSaver = 0x63f}, screenSpecificPrivates = {{key = 0x0, offset = 11412400, created = 0, allocated = 11418672}, {key = 0xacc5e0, 
      offset = 11322944, created = 0, allocated = 11398912}, {key = 0xacc540, offset = 1, created = 0, allocated = 0}, {key = 0x60, 
      offset = 1333103249, created = 32566, allocated = 11395552}, {key = 0xacc500, offset = 11390176, created = 0, allocated = 11395360}, {key = 0x0, 
      offset = 0, created = 0, allocated = 0}, {key = 0x0, offset = 1, created = 0, allocated = 0}, {key = 0x0, offset = 0, created = 0, 
      allocated = 0} <repeats 12 times>}, CloseScreen = 0x0, QueryBestSize = 0x0, SaveScreen = 0x0, GetImage = 0x0, GetSpans = 0x0, 
  SourceValidate = 0x0, CreateWindow = 0x0, DestroyWindow = 0x0, PositionWindow = 0x0, ChangeWindowAttributes = 0x0, RealizeWindow = 0x0, 
  UnrealizeWindow = 0x0, ValidateTree = 0x0, PostValidateTree = 0x0, WindowExposures = 0x0, CopyWindow = 0x0, ClearToBackground = 0x0, 
  ClipNotify = 0x0, RestackWindow = 0x0, CreatePixmap = 0x0, DestroyPixmap = 0x0, RealizeFont = 0x0, UnrealizeFont = 0x0, ConstrainCursor = 0x0, 
  ConstrainCursorHarder = 0x0, CursorLimits = 0x0, DisplayCursor = 0x0, RealizeCursor = 0xbff8, UnrealizeCursor = 0x0, RecolorCursor = 0x0, 
  SetCursorPosition = 0x0, CreateGC = 0x0, CreateColormap = 0x0, DestroyColormap = 0x0, InstallColormap = 0x0, UninstallColormap = 0x1, 
  ListInstalledColormaps = 0xadfec0, StoreColors = 0x0, ResolveColor = 0x0, BitmapToRegion = 0x0, SendGraphicsExpose = 0x0, BlockHandler = 0x0, 
  WakeupHandler = 0x0, devPrivates = 0x0, CreateScreenResources = 0x0, ModifyPixmapHeader = 0x0, GetWindowPixmap = 0xade1c0, 
  SetWindowPixmap = 0xad57c0, GetScreenPixmap = 0x0, SetScreenPixmap = 0x0, pScratchPixmap = 0x0, totalPixmapSize = 0, MarkWindow = 0x0, 
  MarkOverlappedWindows = 0x0, ConfigNotify = 0x0, MoveWindow = 0x0, ResizeWindow = 0x0, GetLayerWindow = 0x0, HandleExposures = 0x0, 
  ReparentWindow = 0x0, SetShape = 0x0, ChangeBorderWidth = 0x0, MarkUnrealizedWindow = 0x0, DeviceCursorInitialize = 0x7f364f73f870 <qxl_pre_init>, 
  DeviceCursorCleanup = 0x7f364f741060 <qxl_screen_init>, canDoBGNoneRoot = 5039536, isGPU = 0, unattached_list = {next = 0x0, 
    prev = 0x7f364f740fc0 <qxl_enter_vt>}, unattached_head = {next = 0x7f364f73f2b0 <qxl_leave_vt>, prev = 0x0}, 
  current_master = 0x7f364f73f690 <qxl_valid_mode>, output_slave_list = {next = 0x4ce0a0 <xf86CursorEnableDisableFBAccess>, 
    prev = 0x485c00 <xf86SetDGAMode>}, output_head = {next = 0x0, prev = 0x483860 <xf86PointerMoved>}, SharePixmapBacking = 0x0, 
  SetSharedPixmapBacking = 0x0, StartPixmapTracking = 0x0, StopPixmapTracking = 0x0, pixmap_dirty_list = {next = 0x0, prev = 0x0}, 
  offload_slave_list = {next = 0x0, prev = 0x0}, offload_head = {next = 0x0, prev = 0x0}, ReplaceScanoutPixmap = 0x0}
(gdb)

Comment 29 Alon Levy 2012-08-26 12:16:21 UTC
(In reply to comment #27)
> OK, thanks, now I get (after 10min for the SIGSEGV):
> 
> (gdb) handle SIGPIPE nostop pass
> Signal        Stop	Print	Pass to program	Description
> SIGPIPE       No	Yes	Yes		Broken pipe
> (gdb) c
> Continuing.
> Detaching after fork from child process 1176.
> 
> Program received signal SIGPIPE, Broken pipe.
> Detaching after fork from child process 1218.
> 
> Program received signal SIGPIPE, Broken pipe.
> Detaching after fork from child process 1249.
> 
> Program received signal SIGPIPE, Broken pipe.
> Detaching after fork from child process 1280.
> 
> Program received signal SIGSEGV, Segmentation fault.
> uxa_xorg_enable_disable_fb_access (arg=0xaddba0, enable=0) at uxa.c:365
> 365		uxa_screen_t *uxa_screen = uxa_get_screen(pScreen);
> (gdb) where
> #0  uxa_xorg_enable_disable_fb_access (arg=0xaddba0, enable=0) at uxa.c:365
> #1  0x00000000004ce118 in xf86CursorEnableDisableFBAccess (pScrn=0xaddba0,
> enable=0) at xf86Cursor.c:226
> #2  0x00000000004ace14 in xf86RandRSetMode (pScreen=pScreen@entry=0xadd640,
> mode=0xae23b0, useVirtual=<optimized out>, mmWidth=271, 
>     mmHeight=<optimized out>) at xf86RandR.c:162
> #3  0x00000000004ad03c in xf86RandRSetConfig (pScreen=0xadd640, rotation=1,
> rate=60, pSize=0x7fff1ba44320) at xf86RandR.c:287
> #4  0x000000000050a2f9 in RRCrtcSet (crtc=<optimized out>, mode=0xcb9970,
> x=0, y=0, rotation=1, numOutputs=numOutputs@entry=1, 
>     outputs=outputs@entry=0xd602c0) at rrcrtc.c:588
> #5  0x000000000050b377 in ProcRRSetCrtcConfig (client=0xcb8ca0) at
> rrcrtc.c:1157
> #6  0x00000000004395aa in Dispatch () at dispatch.c:428
> #7  0x000000000042805a in main (argc=5, argv=0x7fff1ba446b8, envp=<optimized
> out>) at main.c:295
> (gdb) 
> 
> 
> And the last entries in /var/log/Xorg.0.log upto the SIGSEGV are:
> 
> [   104.215] (II) config/udev: Adding input device ImExPS/2 Generic Explorer
> Mouse (/dev/input/mouse0)
> [   104.215] (II) No input driver specified, ignoring this device.
> [   104.215] (II) This device may have been added with another device file.
> [   138.585] qxl_surface_create: Bad bpp: 1 (1)
> [   138.585] qxl_surface_create: Bad bpp: 1 (1)
> [   163.834] qxl_surface_create: Bad bpp: 1 (1)
> 
> 
> 
> 
> I'm fairly sure that the "Badd bpp" messages were coincident with the
> SIGPIPEs.
The "Bad bpp: 1 (1)" is not a problem, it isn't related.

Could you please try:

http://koji.fedoraproject.org/koji/taskinfo?taskID=4423416

Comment 30 John Ellson 2012-08-26 14:01:35 UTC
Better.   No crash after 10min.

Still no GDM login - just a black screen with rotating mouse pointer.

No luck with cirrus driver either...  Bug #851854

I was able to use qxl driver, start in runlevel-3, switchdesk XFCE, and startx to get an XFCE desktop.   However, logout didn't get me back to the shell prompt.

Is there a gdm or gnome bug that you know of already that this should be cross-referenced too?

Comment 31 Fedora Update System 2012-08-26 14:13:51 UTC
xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18

Comment 32 Alon Levy 2012-08-26 14:16:07 UTC
John,

 Thanks for testing. I'm pushing an update based on your input:
 https://admin.fedoraproject.org/updates/xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18
 Please karma it so it gets pushed.

 I've installed F18 on a non virtual machine and seems gdm is broken there too (surprise), so far I'm running it from console (just "gdm") and then it works fine. Didn't touch it after that :)

 No idea about a bug. But it doesn't sound like it's related to qxl at all, so I'm going to chase other fish.

Alon

Comment 33 Fedora Update System 2012-08-26 16:19:35 UTC
Package xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-12739/xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18
then log in and leave karma (feedback).

Comment 34 John Ellson 2012-08-26 18:48:31 UTC
BTW.

The "stuck black screen with rotating mouse icon" problem was Bug #841451.   The quick fix was:   "yum reinstall polkit"

The bug apparently only affects systems yum updated from fc17, not new fc18 installs.

Now I have GDM is running on the PXE driver just fine.  :-)

Comment 35 John Ellson 2012-08-28 16:00:50 UTC
Grrr..    s/PXE/QXL/       sorry for my typonese.

Comment 36 Adam Williamson 2012-08-28 21:32:23 UTC
Nominating as Alpha NTH, it'd be good to get the fix in Alpha so we can easily install it in VMs with the best driver (qxl).

Comment 37 Adam Williamson 2012-08-29 19:26:04 UTC
Damn, my NTH nomination somehow failed. Re-nominating.

Confirming the fix with the above update. I built a custom F18 live image with it included, and it boots happily to gdm and then Shell with qxl. Nice.

Comment 38 Tim Flink 2012-08-29 19:36:27 UTC
+1 NTH - a lot of early testing is done in VMs

Comment 39 Adam Williamson 2012-09-05 18:23:00 UTC
Discussed at 2012-09-05 NTH review meeting. Accepted as NTH, per discussion above (importance of VM functionality).

Comment 40 Fedora Update System 2012-09-06 00:52:33 UTC
xorg-x11-drv-qxl-0.0.22-5.20120718gitde6620788.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 41 Cole Robinson 2012-10-02 00:05:22 UTC
*** Bug 844311 has been marked as a duplicate of this bug. ***


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