xrandr plugin makes g-s-d crash on Karmic when connected using NX

Bug #437939 reported by Stéphane Graber
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
gnome-settings-daemon (Ubuntu)
Invalid
Low
Ubuntu Desktop Bugs

Bug Description

Binary package hint: gnome-settings-daemon

When connected to a gnome session using NX, gnome-settings-daemon refuses to start with the following error:
The program 'gnome-settings-daemon' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRequest (invalid request code or no such operation)'.
  (Details: serial 102 error_code 1 request_code 150 minor_code 8)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

That's after using a workaround from bug 409621 so we don't get the Xinput error first.
Disabling the xrandr plugin in gconf workarounds the problem.

Here's a xrandr output from a NX session:
stgraber@orilla:~$ xrandr
Xlib: extension "Generic Event Extension" missing on display ":1001.0".
 SZ: Pixels Physical Refresh
 0 1024 x 768 ( 347mm x 260mm ) 60
 1 160 x 120 ( 54mm x 41mm ) 60
 2 320 x 240 ( 108mm x 81mm ) 60
 3 640 x 480 ( 217mm x 163mm ) 60
 4 800 x 600 ( 271mm x 203mm ) 60
 5 3360 x 1080 (1138mm x 366mm ) 60
*6 1280 x 800 ( 433mm x 271mm ) *60
Current rotation - normal
Current reflection - none
Rotations possible - normal
Reflections possible - none

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. Please try to obtain a backtrace following the instructions at http://wiki.ubuntu.com/DebuggingProgramCrash and upload the backtrace (as an attachment) to the bug report. You will need to run gnome-settings-daemon with "--no-daemon --sync" in order to do this. This will greatly help us in tracking down your problem.

Changed in gnome-settings-daemon (Ubuntu):
assignee: nobody → Ubuntu Desktop Bugs (desktop-bugs)
importance: Undecided → Low
status: New → Incomplete
Revision history for this message
Stéphane Graber (stgraber) wrote : Re: [Bug 437939] Re: xrandr plugin makes g-s-d crash on Karmic when connected using NX

I already tried that but for some reason I don't get a backtrace, here's
the log from my GDB session:

stgraber@orilla:~$ gdb gnome-settings-daemon
GNU gdb (GDB) 6.8.91.20090918-cvs-ubuntu
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/gnome-settings-daemon...(no debugging
symbols found)...done.
(gdb) run --sync --no-daemon
Starting program: /usr/bin/gnome-settings-daemon --sync --no-daemon
[Thread debugging using libthread_db enabled]
Xlib: extension "Generic Event Extension" missing on display ":1000.0".
Xlib: extension "Generic Event Extension" missing on display ":1000.0".
Xlib: extension "Generic Event Extension" missing on display ":1000.0".
Xlib: extension "Generic Event Extension" missing on display ":1000.0".
Xlib: extension "Generic Event Extension" missing on display ":1000.0".
The program 'gnome-settings-daemon' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRequest (invalid request code or no such operation)'.
   (Details: serial 122 error_code 1 request_code 150 minor_code 8)
   (Note to programmers: normally, X errors are reported asynchronously;
    that is, you will receive the error a while after causing it.
    To debug your program, run it with the --sync command line
    option to change this behavior. You can then get a meaningful
    backtrace from your debugger if you break on the gdk_x_error()
function.)

Program exited with code 01.
(gdb) bt
No stack.
(gdb)

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

Ah, it seems g-s-d is actually exiting, which is why there is no stack there. Could you try doing "break gdk_x_error" before running and then trying again?

Thanks

Revision history for this message
Dima Ryazanov (dima-gmail) wrote :

I'm getting the same crash. Here's the stack:

#0 gdk_x_error (display=0x630800, error=0x7fffffffddf0) at /build/buildd/gtk+2.0-2.18.3/gdk/x11/gdkmain-x11.c:438
#1 0x00007ffff3c7f414 in _XError (dpy=0x630800, rep=0x668f00) at ../../src/XlibInt.c:2924
#2 0x00007ffff3c85fd6 in _XReply (dpy=0x630800, rep=<value optimized out>, extra=0, discard=0)
    at ../../src/xcb_io.c:506
#3 0x00007ffff2c0541d in doGetScreenResources (dpy=0x630800, window=143, poll=1) at ../../src/XrrScreen.c:86
#4 0x00007ffff04a79f2 in fill_out_screen_info (screen=0x65c970, needs_reprobe=<value optimized out>,
    error=<value optimized out>) at gnome-rr.c:379
#5 screen_info_new (screen=0x65c970, needs_reprobe=<value optimized out>, error=<value optimized out>)
    at gnome-rr.c:470
#6 0x00007ffff04a7dd7 in gnome_rr_screen_new (gdk_screen=0x61bfa0, callback=0x7ffff06ba260 <on_randr_event>,
    data=0x640880, error=0x7fffffffe188) at gnome-rr.c:633
#7 0x00007ffff06bb983 in gsd_xrandr_manager_start (manager=0x640880, error=0x7fffffffe188)
    at gsd-xrandr-manager.c:1899
#8 0x00007ffff06b8cc7 in impl_activate (plugin=0x664230) at gsd-xrandr-plugin.c:78
#9 0x0000000000405cdd in gnome_settings_plugin_info_activate ()
#10 0x0000000000404975 in ?? ()
#11 0x00007ffff4b8353c in IA__g_slist_foreach (list=<value optimized out>, func=0x404960, user_data=0x0)
    at /build/buildd/glib2.0-2.22.2/glib/gslist.c:743
#12 0x000000000040537c in gnome_settings_manager_start ()
#13 0x0000000000404771 in main ()

Changed in gnome-settings-daemon (Ubuntu):
status: Incomplete → New
Changed in gnome-settings-daemon (Ubuntu):
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.