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 404474 - crash starting up
crash starting up
Status: RESOLVED OBSOLETE
Product: gnome-power-manager
Classification: Deprecated
Component: gnome-power-manager
SVN TRUNK
Other Linux
: Normal critical
: ---
Assigned To: GNOME Power Manager Maintainer(s)
GNOME Power Manager Maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2007-02-05 01:28 UTC by William Jon McCann
Modified: 2009-06-07 18:19 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
test patch (594 bytes, patch)
2007-02-09 18:47 UTC, Richard Hughes
none Details | Review
patch (1.95 KB, patch)
2007-02-09 21:19 UTC, William Jon McCann
none Details | Review

Description William Jon McCann 2007-02-05 01:28:58 UTC
Distribution: Fedora Core release 6 (Zod)
Gnome Release: 2.17.2 2007-01-06 (JHBuild)
BugBuddy Version: 2.17.3

System: Linux 2.6.19-1.2895.fc6 #1 SMP Wed Jan 10 19:28:18 EST 2007 i686
X Vendor: The X.Org Foundation
X Vendor Release: 70101000
Selinux: Permissive
Accessibility: Disabled

Memory status: size: 27996160 vsize: 0 resident: 27996160 share: 0 rss: 5447680 rss_rlim: 0
CPU usage: start_time: 1170638839 rtime: 0 utime: 9 stime: 0 cutime:7 cstime: 0 timeout: 2 it_real_value: 0 frequency: 0

Backtrace was generated from '/opt/gnome/bin/gnome-power-manager'

Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1209014592 (LWP 32603)]
0x00adb402 in __kernel_vsyscall ()

Thread 1 (Thread -1209014592 (LWP 32603))

  • #0 __kernel_vsyscall
  • #1 __waitpid_nocancel
    from /lib/libpthread.so.0
  • #2 libgnomeui_segv_handle
    at gnome-ui-init.c line 870
  • #3 <signal handler called>
  • #4 __kernel_vsyscall
  • #5 raise
    from /lib/libc.so.6
  • #6 abort
    from /lib/libc.so.6
  • #7 IA__g_logv
    at gmessages.c line 497
  • #8 IA__g_log
    at gmessages.c line 517
  • #9 IA__g_return_if_fail_warning
  • #10 IA__g_value_set_int
    at gvaluetypes.c line 612
  • #11 demarshal_basic
    at dbus-gvalue.c line 477
  • #12 _dbus_gvalue_demarshal
    at dbus-gvalue.c line 1120
  • #13 dbus_g_proxy_end_call_internal
    at dbus-gproxy.c line 2262
  • #14 dbus_g_proxy_call
    at dbus-gproxy.c line 2464
  • #15 gpm_brightness_lcd_get_hw
    at gpm-brightness-lcd.c line 102
  • #16 gpm_brightness_lcd_init
    at gpm-brightness-lcd.c line 622
  • #17 IA__g_type_create_instance
    at gtype.c line 1569
  • #18 g_object_constructor
    at gobject.c line 1041
  • #19 gpm_brightness_lcd_constructor
    at gpm-brightness-lcd.c line 485
  • #20 IA__g_object_newv
    at gobject.c line 937
  • #21 IA__g_object_new_valist
    at gobject.c line 981
  • #22 IA__g_object_new
    at gobject.c line 795
  • #23 gpm_brightness_lcd_new
    at gpm-brightness-lcd.c line 676
  • #24 gpm_srv_screensaver_init
    at gpm-srv-screensaver.c line 275
  • #25 IA__g_type_create_instance
    at gtype.c line 1569
  • #26 g_object_constructor
    at gobject.c line 1041
  • #27 IA__g_object_newv
    at gobject.c line 937
  • #28 IA__g_object_new_valist
    at gobject.c line 981
  • #29 IA__g_object_new
    at gobject.c line 795
  • #30 gpm_srv_screensaver_new
    at gpm-srv-screensaver.c line 331
  • #31 gpm_manager_init
    at gpm-manager.c line 1526
  • #32 IA__g_type_create_instance
    at gtype.c line 1569
  • #33 g_object_constructor
    at gobject.c line 1041
  • #34 IA__g_object_newv
    at gobject.c line 937
  • #35 IA__g_object_new_valist
    at gobject.c line 981
  • #36 IA__g_object_new
    at gobject.c line 795
  • #37 gpm_manager_new
    at gpm-manager.c line 1667
  • #38 main
    at gpm-main.c line 234
  • #0 __kernel_vsyscall

Comment 1 Richard Hughes 2007-02-05 09:04:44 UTC
Yes, changing the g-p-m SetBrightness method to INT32 broke all the other brightness addons. I think HAL is incorrect: http://lists.freedesktop.org/archives/hal/2007-February/007156.html

Richard.
Comment 2 Richard Hughes 2007-02-09 16:52:58 UTC
So you still get this with SVN head?
Comment 3 William Jon McCann 2007-02-09 16:55:10 UTC
Yup
Comment 4 Richard Hughes 2007-02-09 18:47:59 UTC
Created attachment 82239 [details] [review]
test patch

Can you try this patch please, it might perhaps fix it.
Comment 5 William Jon McCann 2007-02-09 21:11:33 UTC
Still crashes.

Oddly reminiscent of 395174.
Comment 6 William Jon McCann 2007-02-09 21:19:30 UTC
Created attachment 82248 [details] [review]
patch

Fix the return type from proxy.  Also don't use the ac-adapter object before you create it.  Seems to fix the crash anyway.
Comment 7 Richard Hughes 2007-02-10 00:18:52 UTC
2007-02-10  Richard Hughes  <richard@hughsie.com>

	* src/gpm-srv-backlight.c: (gpm_srv_backlight_init):
	Part of a patch from Jon McCann:
	Don't use the ac-adapter object before you create it.
	Fixes half of #404474.

I've not applied the "Fix the return type from proxy" as it makes my iBook crash (generic backlight class driver) with:

g_value_set_uint: assertion `G_VALUE_HOLDS_UINT (value)' failed

We've also used G_TYPE_UINT as the return type for the proxy all through 2-16, without one bug about it not working, so I'm very confused.

I've reviewed the HAL code for the hald_dbus method invocation and with org.freedesktop.DBus.Introspectable.Introspect and it SHOULD be a signed integer, so maybe this is a deeper bug.

I'll cc davidz too.
Comment 8 William Jon McCann 2007-03-09 22:28:49 UTC
So, I still crash at startup... we should probably have a fix for this for 2.18 right?
Comment 9 Richard Hughes 2007-03-09 23:47:39 UTC
Well, I really don't know what to do. Changing G_TYPE_UINT to G_TYPE_INT makes g-p-m crash both on my Toshiba (i386) and by iBook (ppc), although I agree with you, it should be a int return type according to the HAL spec.
Comment 10 William Jon McCann 2007-03-10 12:56:39 UTC
So why do your systems crash?  I think you have to follow the HAL spec on this, right?
Comment 11 Richard Hughes 2007-03-11 00:16:47 UTC
Jon, I've not had one bugreport about the proxy crash using G_TYPE_UINT and the SetBrightness generic interface for the whole of 2.16.x, and it works for me with all HAL versions. I can't imagine how many bugs we would get if I set this to G_TYPE_INT. I think we need to discuss this on the dbus or HAL list, as something fishy is going on either in dbus, dbus-glib or HAL itself, although I'm not sure what.

I think we need to make a small test case for this with a small dbus server and a dbus-glib client and just test the return G_TYPE_UINT and G_TYPE_INT cases.

Richard.
Comment 12 Richard Hughes 2007-06-14 21:31:57 UTC
David has fixed the HAL bug that was triggering this. Could you install HAL from git (or use my rpms) and see if the problem is fixed? Thanks dude.
Comment 13 André Klapper 2008-11-16 17:18:01 UTC
So? OBSOLETE, FIXED, INCOMPLETE?
Comment 14 Tobias Mueller 2009-06-07 18:19:41 UTC
I assume it's OBSOLETE by now. If this is still an issue, please reopen!