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 582579 - gvfs-gdu-volume-monitor crashed with SIGSEGV in gdu_pool_get_presentables()
gvfs-gdu-volume-monitor crashed with SIGSEGV in gdu_pool_get_presentables()
Status: RESOLVED FIXED
Product: gvfs
Classification: Core
Component: [obsolete] gdu volume monitor
git master
Other Linux
: Normal critical
: ---
Assigned To: gvfs-maint
gvfs-maint
: 616200 651824 662189 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2009-05-14 08:09 UTC by Sebastien Bacher
Modified: 2014-11-03 11:49 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28


Attachments
Proposed patch (3.64 KB, patch)
2012-04-11 18:32 UTC, Michael Terry
committed Details | Review

Description Sebastien Bacher 2009-05-14 08:09:32 UTC
The bug has been opened on https://bugs.launchpad.net/bugs/376145, the version used is a git snapshot taken on tuesday

"#0  0x0092cfda in gdu_pool_get_presentables () from /usr/lib/libgdu.so.0
  • #1 update_all
    at ggduvolumemonitor.c line 1087
  • #2 g_gdu_volume_monitor_constructor
    at ggduvolumemonitor.c line 455
  • #3 IA__g_object_newv
    at /build/buildd/glib2.0-2.21.0/gobject/gobject.c line 1215
  • #4 IA__g_object_new_valist
    at /build/buildd/glib2.0-2.21.0/gobject/gobject.c line 1278
  • #5 IA__g_object_new
    at /build/buildd/glib2.0-2.21.0/gobject/gobject.c line 1060
  • #6 monitor_try_create
    at gvfsproxyvolumemonitordaemon.c line 1651
  • #7 g_vfs_proxy_volume_monitor_daemon_main
    at gvfsproxyvolumemonitordaemon.c line 1694
  • #8 main
    at gdu-volume-monitor-daemon.c line 42

Comment 1 Linus Hoppe 2009-05-28 12:46:59 UTC
I have noticed gvfs-gdu-volume-monitor doesn't crash if the package "devicekit-disks" are installed
gvfs-gdu-volume-monitor crash only if no programme provide the dbus service "org.freedesktop.DeviceKit.Disks.service".
Comment 3 Sebastien Bacher 2009-09-17 11:21:54 UTC
the ubuntu bug is getting lot of duplicates and makes disks not being listed for lot of users in GNOME 2.27
Comment 4 Alexander Larsson 2009-09-22 19:01:52 UTC
Its not very nice that it crashes, but it seems like a packaging bug to ship the gdu volume monitor without devicekit-disks.
Comment 5 Sebastien Bacher 2009-09-22 21:13:51 UTC
not sure where you read that gdu is shipped without devicekit-disks but that's not the case on most of those bugs, the issue seems to be fixed in the recent devicekit-disks 0.7 update though
Comment 6 James Westby 2009-10-01 13:16:04 UTC
This is actually caused by a D-Bus bug, but the crash on failure
still isn't nice, up to you if you fix it.

Thanks,

James
Comment 7 André Klapper 2010-03-14 12:56:25 UTC
(In reply to comment #5)
> the issue seems to be fixed in the recent devicekit-disks 0.7 update though

So this issue is fixed by shipping an updated version?
Comment 8 André Klapper 2010-06-08 21:44:48 UTC
Sebastien, can you answer my last question?
Comment 9 Sebastien Bacher 2010-06-08 23:29:47 UTC
seems users still get the issue on lucid by reading the ubuntu bug
Comment 10 Michael Terry 2012-04-11 15:49:05 UTC
I was cleaning up some Ubuntu bugs when I saw this bug was still open.  Just FYI, we haven't seemed to have many reports past Lucid.  So this is probably fixed from a user-visible standpoint.

But the bug in gvfs is still there.  gdu_pool_new() will return NULL in some error cases, and gvfs does not check its return value.
Comment 11 Michael Terry 2012-04-11 18:10:27 UTC
*** Bug 662189 has been marked as a duplicate of this bug. ***
Comment 12 Michael Terry 2012-04-11 18:12:36 UTC
I spoke too soon.  The stacktrace has changed to include an assert on the libgdu side, so Ubuntu still is getting the crashes, just on a different bug:

https://bugs.launchpad.net/ubuntu/+source/gvfs/+bug/832379
Comment 13 Michael Terry 2012-04-11 18:32:35 UTC
Created attachment 211869 [details] [review]
Proposed patch

Here's a patch that avoids using monitor->pool if it's NULL.  Obviously, the volume monitor is going to be less useful without a gdu pool, but it will not crash.

I haven't actually run with this, because I don't know how to reliably reproduce the crash anyway.  But the changes seem simple enough.
Comment 14 Tomas Bzatek 2012-09-14 14:18:57 UTC
Review of attachment 211869 [details] [review]:

Looks good, thanks for the patch. I've committed this with one more fix but haven't tested as I don't have gnome-disk-utility anywhere around. Somebody please test. This backend is in maintenance mode anyway.

commit 60f0ed90b3fa4d70f7896096dd837dd2277a89ac
Author: Tomas Bzatek <tbzatek@redhat.com>
Date:   Fri Sep 14 16:16:37 2012 +0200

    gdu volume monitor: Don't unref possibly NULL object

commit 3eb8533baba381e4c454b764692dea8ef5876ad1
Author: Michael Terry <michael.terry@canonical.com>
Date:   Fri Sep 14 16:14:53 2012 +0200

    gdu volume monitor: Handle gdu_pool_new() returning NULL gracefully
    
    https://bugzilla.gnome.org/show_bug.cgi?id=582579
Comment 15 Tomas Bzatek 2012-12-06 10:43:06 UTC
*** Bug 616200 has been marked as a duplicate of this bug. ***
Comment 16 Ondrej Holy 2014-11-03 11:49:22 UTC
*** Bug 651824 has been marked as a duplicate of this bug. ***