After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 649676 - Gnome-Shell segfaults when two monitors is connected.
Gnome-Shell segfaults when two monitors is connected.
Status: RESOLVED DUPLICATE of bug 648156
Product: gnome-shell
Classification: Core
Component: general
3.0.x
Other Linux
: High critical
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2011-05-07 17:26 UTC by Pete
Modified: 2011-07-23 19:34 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Pete 2011-05-07 17:26:56 UTC
I have an issue starting Gnome 3 when i have two monitors connected causing a segfault with the following error. [ 1117.070047] gnome-shell[10857]: segfault at 5 ip 00007fb5bada7f59 sp 00007fffedc92070 error 4 in libcairo.so.2.11000.2[7fb5bad6f000+a9000]

This issue only appears when my second monitor is either plugged in or specified in the xorg configuration. If i plug out one monitor or comments out the section in the Xorg configuration Gnome-Shell starts without any issues *iam right now filing this bug from Gnome 3*
---
However because of this issue i have to plug back the second monitor and start another Desktop Envoirment eg XFCE when i want to watch movies on the second monitor / TV - and when going back to Gnome i need to plug out one monitor. I do need to point out that this hapens on both my Desktop PC & Laptop with a pretty much identical setup. Here's some hardware information.

Desktop PC 
----------------
Architecture: X86_64
Distrubition: Arch Linux - 64
GPU: Nvidia GTS 450
GPU Drivers: nvidia 270.41.06-1

Laptop
----------------
Architecture: X86_64
Distrubition: Arch Linux - 64
GPU: Nvidia GT 420M
GPU Drivers: nvidia 270.41.06-1

/var/log/messages.log
May  7 18:00:04 Peteware kernel: [ 1111.720682] HDMI hot plug event: Pin=5 Presence_Detect=0 ELD_Valid=0
May  7 18:00:04 Peteware kernel: [ 1111.790992] HDMI hot plug event: Pin=5 Presence_Detect=0 ELD_Valid=1
May  7 18:00:05 Peteware kernel: [ 1112.436590] HDMI: detected monitor SAMSUNG
May  7 18:00:05 Peteware kernel: [ 1112.436592]      at connection type HDMI
May  7 18:00:05 Peteware kernel: [ 1112.436595] HDMI: available speakers: FL/FR
May  7 18:00:05 Peteware kernel: [ 1112.436598] HDMI: supports coding type LPCM: channels = 2, rates = 44100 48000 88200, bits = 16 20 24
May  7 16:00:09 Peteware rtkit-daemon[2172]: Successfully made thread 10850 of process 10850 (/usr/bin/pulseaudio) owned by '1000' high priority at nice level -11.
May  7 16:00:09 Peteware rtkit-daemon[2172]: Successfully made thread 10881 of process 10881 (/usr/bin/pulseaudio) owned by '1000' high priority at nice level -11.
May  7 18:00:09 Peteware kernel: [ 1117.070047] gnome-shell[10857]: segfault at 5 ip 00007fb5bada7f59 sp 00007fffedc92070 error 4 in libcairo.so.2.11000.2[7fb5bad6f000+a9000]
May  7 18:00:09 Peteware gnome-session[10800]: WARNING: Application 'gnome-shell.desktop' killed by signal
May  7 18:00:10 Peteware kernel: [ 1117.373764] gnome-shell[10890]: segfault at 5 ip 00007ff1e6f3cf59 sp 00007fffd8df69a0 error 4 in libcairo.so.2.11000.2[7ff1e6f04000+a9000]
May  7 18:00:10 Peteware gnome-session[10800]: WARNING: Application 'gnome-shell.desktop' killed by signal
May  7 18:00:10 Peteware gnome-session[10800]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Comment 1 Rui Matos 2011-05-08 00:36:09 UTC
Thanks for taking the time to report this bug.
Without a stack trace from the crash it's very hard to determine what caused it.
Can you get us a stack trace? Please see http://live.gnome.org/GettingTraces for more information on how to do so. Thanks in advance!
Comment 2 Pete 2011-05-08 13:42:03 UTC
Starting program: /usr/bin/gnome-shell 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe6d2e700 (LWP 4969)]
[New Thread 0x7fffe652d700 (LWP 4970)]
[New Thread 0x7fffe4fc4700 (LWP 4971)]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff65c0f59 in cairo_pattern_reference () from /usr/lib/libcairo.so.2
(gdb) thread apply all bt

Thread 1 (Thread 0x7ffff7fae920 (LWP 4966))

  • #0 cairo_pattern_reference
    from /usr/lib/libcairo.so.2
  • #1 gdk_window_set_background_pattern
    from /usr/lib/libgdk-3.so.0
  • #2 gtk_style_context_set_background
    from /usr/lib/libgtk-3.so.0
  • #3 ??
    from /usr/lib/libgtk-3.so.0
  • #4 ??
    from /usr/lib/libgtk-3.so.0
  • #5 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #6 ??
    from /usr/lib/libgobject-2.0.so.0
  • #7 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #9 ??
    from /usr/lib/libgtk-3.so.0
  • #10 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #11 ??
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #14 gtk_style_context_invalidate
    from /usr/lib/libgtk-3.so.0
  • #15 gtk_widget_get_style_context
    from /usr/lib/libgtk-3.so.0
  • #16 ??
    from /usr/lib/libgtk-3.so.0
  • #17 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #18 ??
    from /usr/lib/libgobject-2.0.so.0
  • #19 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #20 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #21 gtk_widget_realize
    from /usr/lib/libgtk-3.so.0
  • #22 ??
    from /usr/lib/libgtk-3.so.0
  • #23 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #24 ??
    from /usr/lib/libgobject-2.0.so.0
  • #25 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #26 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #27 gtk_widget_show
    from /usr/lib/libgtk-3.so.0
  • #28 meta_ui_new
    from /usr/lib/libmutter.so.0
  • #29 meta_screen_new
    from /usr/lib/libmutter.so.0
  • #30 meta_display_open
    from /usr/lib/libmutter.so.0
  • #31 meta_run
    from /usr/lib/libmutter.so.0
  • #32 main

Comment 3 André Klapper 2011-05-08 13:55:55 UTC
Please install debug packages for lib(cairo), (lib)gtk3, (lib)glib2 and mutter and attach an updated stacktrace.
Comment 4 Cole Gleason 2011-06-03 04:41:41 UTC
I am also experiencing this issue using the proprietary ATI drivers (catalyst).  gnome-shell works fine on the open source ones.  If I figure out how to turn these debug options on, I'll post a trace.
Comment 5 Rui Matos 2011-06-03 18:14:53 UTC
Pete, do you have multiple X screens configured in xorg.conf? If you do, then this is a dupe of bug 648156. TwinView is what you should be using if that's the case.

Cole, the same is valid for you. Do you use multiple X screens?
Comment 6 Cole Gleason 2011-06-03 20:48:36 UTC
Yes, I believe that is what aticonfig gave me.  But TwinView is a feature fo the nVidia drivers, correct?  Do I need to be using Xinerama?
Comment 7 Rui Matos 2011-06-03 21:55:08 UTC
(In reply to comment #6)
> Yes, I believe that is what aticonfig gave me.  But TwinView is a feature fo
> the nVidia drivers, correct?  Do I need to be using Xinerama?

I never used the catalyst drivers (formerly fglrx) but I hear that they have lots of issues with gnome-shell. You should be much better served by using the free radeon drivers.

Anyway what I suggest you to use is a driver which conforms to XRandR 1.2 (or greater) like the free radeon driver which will allow the Display panel in gnome-control-center to configure your multi-display setup without static xorg.conf configurations.
Comment 8 Cole Gleason 2011-06-03 22:17:30 UTC
> I never used the catalyst drivers (formerly fglrx) but I hear that they have
> lots of issues with gnome-shell. You should be much better served by using the
> free radeon drivers.

The free drivers work amazingly.  Unfortunately, I want OpenCL support, which is why I'm using fglrx.  I guess it's back to KDE for now.
Comment 9 Akhil Laddha 2011-07-15 06:27:49 UTC
any conclusion on bug report ? If there is no further information required, bug should be moved out of needinfo state.
Comment 10 Pete 2011-07-23 11:35:33 UTC
I can confirm that it works if i use Xinerama.
However this is something i do absolutley not want, the way i have configured Xorg is to give my TV it's own desktop *And i have configured the layout like this*

    Screen 0    "Screen0"        0 0
    Screen 1    "Screen1"        2000 0

Why i am doing this is to prevent the mouse pointer to reach the other screen, since that's just so annoying. I am using a script called mouse-switchscreen i execute when i want to move my mouse pointer between screens. Gnome 2.x did this wonderful and i see no reason why i should be forces to use either Xinerama or TwinView.

The second reason is that there's just too much Video Tearing when watching movies on my TV through Gnome-Shell. So the most perfect solution would be if i could start a Gnome-Fallback that does not use the composite extension on my TV, and use Gnome-Shell on my Primiary Desktop Screen.

However this is also not possible - since there's no option for me from what i found to configure the gnome-session to allow such.
So my quick an dirty solution have been to.

1. Start a WM on DISPLAY:0.1
2. Start Gnome Shell on DISPLAY:0.0 to prevent gnome shell to start on the second screen.

The best solution would simply be Add a feature to the gnome-session that allows me to specify wich WM should be on wich screen.

Regards
Peter Johansson
Comment 11 Dan Winship 2011-07-23 19:34:45 UTC

*** This bug has been marked as a duplicate of bug 648156 ***