Problems accessing files with gvfs-fuse-daemon

Joe Marcus Clarke marcus at marcuscom.com
Sun Feb 7 19:42:05 UTC 2010


On Sat, 2010-02-06 at 11:36 +0100, Gustau Pérez wrote:
> Hi everyone,
> 
>   I'm having problems with gvfs-fuse-daemon. I'm trying to find out why
> apps like vlc are unable to read files
> in a samba share. As you may know, if you try to open a file in a share
> throu nautilus, if the apps is not gvfs-aware nautilus launches the apps
> passing a filename like :
> 
>          $HOME/.gvfs/share in server/file.avi
> 
>    then through it works through the gvfs-fuse-daemon which does the magic.
> 
>    Well, anytime I try this, the app seems to freeze. No matter which
> app I try. So I decided to open a terminal a did like this :
> 
>          # cp $HOME/.gvfs/share in server/file.avi /tmp
> 
>    Then, with tcpdump I saw a few packets were transferred between the
> server and the client then transfer stopped. In the terminal I got and
> Input/output error.
> 
>    Even the gvfs-* apps (like gvfs-cat, gvfs-copy) fail. The error with
> this apps comes from glib (gio part, when making a read syscall, so it
> makes me think that probably the error is in gvfs-fuse-daemon, when the
> kernel returns the read syscall to the fuse daemon that handles the
> reads in that mount point).
> 
>    I noticed that when I let gnome-session launch gvfs-fuse-daemon
> without arguments (normal situation) the transfer stops at 1Mb of size.
> 
>    If I try launching gvfs-fuse-daemon with "-o direct_io" in a
> different mount like (say .gvfs_tmp), then I'm able
> to copy files with both cp and gvfs-copy through that mount point. Even
> I'm able to play mp3 files with mpg123, but vlc, totem and other apps
> still fail to access that share (they transfer a little amount of data
> and then they stop).
> 
>    With this config (with .gvfs_tmp, -o direct_io), If I try to launch
> and mpg123 (which works) and then and vlc instance, everything freezes
> again. mpg123 stops playing until I kill vlc, then it can continue
> playing. The same with kaffeine and other friends not gvfs-aware.
> 
>    As I said, if I let gvfs-fuse-daemon without options (as
> gnome-session does) I can do nothing through .gvfs/. No cp, no mpg123,
> anything at all. -o direct_io allows me a few things.
> 
>    I'm yesterday updated (before the jpeg library update). gvfs is 1.4.3_1.
> 
>    My system is kernel and world updated too :
> 
>         FreeBSD gusiport 8.0-STABLE FreeBSD 8.0-STABLE #0: Fri Feb  5
> 18:50:54 CET 2010                    
>         root at gusiport:/usr/obj/usr/src/sys/CUSTOM  amd64
> 
>    Clean /etc/src.conf (no special options given there). The fuse 
> module is update before the kernel and world were last updated.
> 
>     I'm puzzled because I saw anyone having such a problem. I checked
> /usr/ports/UPDATING, just I case I missed anything importa.
> 
>    Is anyone having such a problem ? Any idea where can I start
> debugging ? If I can provide any additional info, let me know.

The fact that direct_io kind of works leads me to think this a problem
with fuse, and not gvfs.  Gvfs will simply call fuse_main() with the
arguments passed to it.  It's up to the fuse userland and kernel module
to provide a lot of the heavy lifting.  To that end, you might try
rebuilding your kernel module, or ask the fuse maintainer if they have
some ideas.

Joe

-- 
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-gnome/attachments/20100207/c7e15223/attachment.pgp


More information about the freebsd-gnome mailing list