regular segfaults with .gvfs access

Bug #235326 reported by Gavin Hamill on 2008-05-27
10
Affects Status Importance Assigned to Milestone
gvfs
Fix Released
Critical
gvfs (Ubuntu)
Medium
Ubuntu Desktop Bugs
Hardy
Medium
Ubuntu Desktop Bugs

Bug Description

Version: 0.2.4-0ubuntu1

I had great hopes for today's update in hardy-proposed given this changelog entry " Fix fuse locking and file handle life-cycle issues that were causing frequent crashes." Alas even after a reboot, the gvfs-fuse-daemon is still very unstable:

[ 176.775971] gvfs-fuse-daemo[6134]: segfault at 03000004 eip b7cb2de0 esp b49fe6d4 error 4

which leaves this in /home/gdh/

d????????? ? ? ? ? ? .gvfs

Reproducing the crash is easy. Just copy files up and down from a remote smb share. I can never manage more than 3 up+down copies before it crashes. Simply reading files from the remote share is 'quite reliable' - e.g. I can safely unrar gigabytes of data. It's a mix of read/write that's the killer....

This is purely the gvfs-fuse daemon... if I use Nautilus to perform the same work on smb:// locations, it works flawlessly every time.

I've attached the log of refreshing "/home/gdh/.gvfs/plinth on eddie/gdh", deleting an mpeg, copying an mpeg, and then copying/overwriting the same mpeg (it crashed 3MB into the overwrite)

gdh@gdh-home:/usr/lib/gvfs$ fusermount -u /home/gdh/.gvfs
gdh@gdh-home:/usr/lib/gvfs$ /usr/lib/gvfs/gvfs-fuse-daemon -d /home/gdh/.gvfs 2>/tmp/gvfs.log

Please look into this - it makes the fuse daemon useless :(

TESTCASE:

- browe a ssh location in nautilus
- use gedit and open a text file on the ssh server using the local .gvfs mount directory
- save the file several files in gedit until getting the crash, it should crash quickly before the update

Gavin Hamill (gdh) wrote :
Gavin Hamill (gdh) wrote :

SUCCESS!

Simply by adding '-s' to the gvfs-fuse-daemon arguments ("disable multi-threaded operation") I am able to hammer away with complete reliability!

I do not notice any loss in performance. In the interim, I have renamed /usr/lib/gvfs/gvfs-fuse-daemon to /usr/lib/gvfs/gvfs-fuse-daemon.real and put this crappy script at /usr/lib/gvfs/gvfs-fuse-daemon

#!/bin/sh

/usr/lib/gvfs/gvfs-fuse-daemon.real $@ -s

Poor, but It Works For Me. Hopefully the next update of gvfs-fuse will contain a working binary that doesn't crash.

Sebastien Bacher (seb128) wrote :

Thanks for your bug report. Please try to obtain a backtrace http://wiki.ubuntu.com/DebuggingProgramCrash and attach the file to the bug report. This will greatly help us in tracking down your problem.

Changed in gvfs:
assignee: nobody → desktop-bugs
importance: Undecided → Medium
status: New → Incomplete
Gavin Hamill (gdh) wrote :

First I undid the shell script described above so that the non-debug hardy-proposed binary was present at /usr/lib/gvfs/gvfs-fuse-daemon, then installed the .ddeb:

-rwxr-xr-x 1 root root 46032 2008-05-27 15:29 /usr/lib/debug/usr/lib/gvfs/gvfs-fuse-daemon

And finally logged out + in, and followed https://wiki.ubuntu.com/Backtrace - the results are attached.

Gavin Hamill (gdh) wrote :
Gavin Hamill (gdh) wrote :

OK, I've re-read the backtrace and realised I need to flesh it out with symbols from 'gvfs' , libfuse2, et al... so here's another try attached - hopefully this will be more use.

Sebastien Bacher (seb128) wrote :

thank you for your work on that, could you install libglib2.0-0-dbgsym and get a new valgrind log?

Sebastien Bacher (seb128) wrote :

I've sent the issue upstream now on http://bugzilla.gnome.org/show_bug.cgi?id=536614

Changed in gvfs:
status: Incomplete → Triaged
Changed in gvfs:
status: Unknown → New
Gavin Hamill (gdh) wrote :

libglib2.0-0-dbgsym now installed... valgrind log attached.

I have also sent this to the upstream bug you listed.

I've been experiencing the same problem for since the release of Ubuntu 8.04 and the fix mentioned at the top also didn't help me. I just want to mention how I always experience the problem just in case it offers some clues:

1. Make a Samba share on another server. Mine are unpublished i.e. you don't see them when browsing the network, but you can "cd" and log into them after which they become visible in Nautilus.
2. Use Gnome Commander to navigate via the ~/.gvfs directory to the samba server and open a source code file in gedit.
3. Edit and save the file.

After a couple of saves at most you get a "Transport endpoint is not connected" error and an "ls -al" of the .gvfs directory returns this:
d????????? ? ? ? ? ? .gvfs

In /var/log/messages you see this:
Jun 28 18:57:19 Green732 kernel: [ 8748.661968] gvfs-fuse-daemo[6048]: segfault at 0800007a eip b7dec540 esp b740d0ac error 4

I'm running a i386 system and all packages are up to date (2008-06-28).

Gavin Hamill (gdh) wrote :

Since the glib2.0 release 2.6.14 on 3rd July in hardy-proposed, I am no longer seeing this issue. Can anyone else confirm?

Current version is 2.16.4-0ubuntu2 with gvfs-fuse at 0.2.5-0ubuntu1 (the real bug seems to be in glib2.0, not the fuse daemon)

Changed in gvfs:
status: New → In Progress
Gavin Hamill (gdh) wrote :

Ah, the real bug has been found and fixed upstream. I can confirm it [1] resolves the problem.

[1] http://bugzilla.gnome.org/attachment.cgi?id=114694&action=view

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gvfs - 0.99.1-0ubuntu3

---------------
gvfs (0.99.1-0ubuntu3) intrepid; urgency=low

  * debian/patches/90_from_svn_fix_fuse_crasher.patch:
    - change from svn to fix fuse crasher (lp: #235326)

 -- Sebastien Bacher <email address hidden> Fri, 18 Jul 2008 18:15:32 +0100

Changed in gvfs:
status: Triaged → Fix Released
Changed in gvfs:
status: In Progress → Fix Released
Gavin Hamill (gdh) wrote :

Upstream has since also added

http://bugzilla.gnome.org/attachment.cgi?id=114799&action=view

as 'belt and braces' for another locking issue "gvfs-fuse-lock-on-open.patch"

Can both of these be sent for hardy-proposed, please?

Changed in gvfs:
assignee: nobody → desktop-bugs
importance: Undecided → Medium
status: New → Confirmed

I don't mean to rush anyone, but about how long does it take before these fixes appear in Hardy proposed?

description: updated
Sebastien Bacher (seb128) wrote :
Martin Pitt (pitti) wrote :

Accepted into -proposed, please test and give feedback here. Please see https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in gvfs:
status: Confirmed → Fix Committed

It works for me. I saved numerous times without a single crash today. Thanks!

Martin Pitt (pitti) wrote :

Copied to hardy-updates.

Changed in gvfs:
status: Fix Committed → Fix Released
Changed in gvfs:
importance: Unknown → Critical
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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