Bug 23256

Summary: playing hokey-pokey with UPS USB interface crashes gnome-session
Product: upower Reporter: Dan Winship <danw>
Component: generalAssignee: Richard Hughes <richard>
Status: RESOLVED MOVED QA Contact:
Severity: major    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: backtrace from the daemon

Description Dan Winship 2009-08-11 09:52:04 UTC
If you have a UPS with a USB interface, and you put the usb cable in, then take the usb cable out, then put the usb cable in (and you shake it all about), then remove it again, then everything linked to libdevkit-power-gobject (including, in particular, gnome-session, but also gnome-power-manager and gpk-update-icon) will crash.

(the CFA errors are rawhide gdb being broken)

#0  IA__g_str_hash (v=can't compute CFA for this frame
) at gstring.c:99
#1  0x007f90a8 in g_hash_table_lookup_node (key=<value optimized out>, hash_table=<value optimized out>) at ghash.c:195
#2  g_hash_table_remove_internal (key=<value optimized out>, hash_table=<value optimized out>) at ghash.c:974
#3  0x0062e801 in dkp_device_removed_cb (proxy=can't compute CFA for this frame
) at dkp-client.c:463
#4  0x0076524c in IA__g_cclosure_marshal_VOID__STRING (closure=0x836b360, return_value=can't compute CFA for this frame
) at gmarshal.c:496
#5  0x00562b5c in ?? () from /usr/lib/libdbus-glib-1.so.2
#6  0x00756643 in IA__g_closure_invoke (closure=0x836b360, return_value=0x0, n_param_values=3, param_values=0x83029c8, invocation_hint=0xbffe8fa0) at gclosure.c:767
#7  0x0076d4d0 in signal_emit_unlocked_R (node=<value optimized out>, detail=<value optimized out>, instance=0x83674a8, emission_return=0x0, instance_and_params=0x83029c8)
    at gsignal.c:3247
#8  0x0076e8ad in IA__g_signal_emit_valist (instance=0x83674a8, signal_id=149, detail=742, var_args=can't compute CFA for this frame
) at gsignal.c:2980
#9  0x0076ed67 in IA__g_signal_emit (instance=can't compute CFA for this frame
) at gsignal.c:3037
#10 0x00563d3d in ?? () from /usr/lib/libdbus-glib-1.so.2
#11 0x007160fb in dbus_connection_dispatch () from /lib/libdbus-1.so.3
#12 0x0055a20e in ?? () from /usr/lib/libdbus-glib-1.so.2
#13 0x00806ff8 in g_main_dispatch (context=<value optimized out>) at gmain.c:1960
#14 IA__g_main_context_dispatch (context=<value optimized out>) at gmain.c:2513
#15 0x0080a928 in g_main_context_iterate (context=0x8309e58, block=<value optimized out>, dispatch=1, self=can't compute CFA for this frame
) at gmain.c:2591
#16 0x0080ad9f in IA__g_main_loop_run (loop=0x833bfd8) at gmain.c:2799
#17 0x080572ba in main (argc=can't compute CFA for this frame
) at gpm-main.c:276
Comment 1 Richard Hughes 2009-08-11 10:18:47 UTC
I guess the issue is the devkit-power-daemon crashes -- but looking at the backtrace it looks like a DeviceKit (rather than DeviceKit-power) bug. Are you running rawhide or F11? If F11, does it still happen in the GUdev world of rawhide?
Comment 2 Richard Hughes 2009-08-11 10:21:02 UTC
Created attachment 28520 [details] [review]
backtrace from the daemon

backtrace from the daemon -- and it looks like DeviceKit itself might have gone pop, not just DeviceKit-power. (hint: all the devicekit-power functions and files start with 'dkp')
Comment 3 Dan Winship 2009-08-11 10:43:43 UTC
this was with rawhide

(In reply to comment #2)
> (hint: all the devicekit-power functions and files start with 'dkp')

yeah, the trace from gnome-session and gnome-power-manager involved:

#3  0x0062e801 in dkp_device_removed_cb (proxy=can't compute CFA for this frame
) at dkp-client.c:463

I didn't notice that any of the devkit daemons themselves were crashing too
Comment 4 GitLab Migration User 2018-06-04 13:25:13 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/upower/upower/issues/46.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.