regular segfaults with .gvfs access

Bug #235326 reported by Gavin Hamill
10
Affects Status Importance Assigned to Milestone
gvfs
Fix Released
Critical
gvfs (Ubuntu)
Fix Released
Medium
Ubuntu Desktop Bugs
Hardy
Fix Released
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

Revision history for this message
Gavin Hamill (gdh) wrote :
Revision history for this message
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.

Revision history for this message
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
Revision history for this message
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.

Revision history for this message
Gavin Hamill (gdh) wrote :
Revision history for this message
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.

Revision history for this message
Sebastien Bacher (seb128) wrote :

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

Revision history for this message
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
Revision history for this message
Gavin Hamill (gdh) wrote :

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

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

Revision history for this message
Hairy Hardon (glideraerobatics) wrote :

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).

Revision history for this message
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
Revision history for this message
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

Revision history for this message
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
Revision history for this message
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
Revision history for this message
Hairy Hardon (glideraerobatics) wrote :

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

description: updated
Revision history for this message
Sebastien Bacher (seb128) wrote :
Revision history for this message
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
Revision history for this message
Hairy Hardon (glideraerobatics) wrote :

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

Revision history for this message
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  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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