gnome-vfs-daemon reads /proc/mounts at startup and uses HAL via libhal_drive_from_device_file() in multiple places in gnome-vfs-hal-mounts.c Strings in DBUS must be valid UTF8. If the device path is not valid UTF8, dbus_connection_send() will cause a disconnect of the caller and an exit. Threfore if the device path contains invalid utf8, gnome-vfs-daemon will fail to start. If that happens during a session, gnome-vfs-daemon will be restarted by any gnome application wich cause a lot of start/stop of gnome-vfs-daemon. The following patch simply ensures that we use valid utf8 for device path to avoid problems with hal/dbus. Olivier Fourdan gnome-vfs-volume-monitor-daemon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -up gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c.utf8-mount gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c --- gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c.utf8-mount 2009-07-07 06:10:24.000000000 -0400 +++ gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c 2009-07-07 06:10:34.000000000 -0400 @@ -874,7 +874,7 @@ create_vol_from_mount (GnomeVFSVolumeMon vol = g_object_new (GNOME_VFS_TYPE_VOLUME, NULL); vol->priv->volume_type = GNOME_VFS_VOLUME_TYPE_MOUNTPOINT; - vol->priv->device_path = g_strdup (mount->device_path); + vol->priv->device_path = make_utf8 (mount->device_path); vol->priv->unix_device = 0; /* Caller must fill in. */ vol->priv->activation_uri = gnome_vfs_get_uri_from_local_path (mount->mount_path); vol->priv->filesystem_type = g_strdup (mount->filesystem_type);