Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 07 Feb 2010 21:07:07 +0100
From:      =?UTF-8?B?R3VzdGF1IFDDqXJleg==?= <gperez@entel.upc.edu>
To:        freebsd-gnome@freebsd.org
Subject:   Re: Problems accessing files with gvfs-fuse-daemon
Message-ID:  <4B6F1D6B.2070408@entel.upc.edu>
In-Reply-To: <4B6D4624.803@entel.upc.edu>
References:  <4B6D4624.803@entel.upc.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
En/na Gustau PĂ©rez ha escrit:
>   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@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.
>
>    Regards,
>
>    Gus
>
>   
   I debugged the daemon with truss. I got a very strange serie of
syscall with a lot of POLLs and READs to a channel returning "ERR#35
resource temporary unavailable).  I discovered some socket call
returning a channel that then produce that read errors. Any idea ?

  I posted the trace to pastebin :

            http://pastebin.com/m79cf37f3

  If you search for socket syscalls, you'll see it normally creates two,
and then it connects them to a unix socket in /var/tmp. For example I
see it connecting two sockets to

        /var/tmp/gvfs-gus-B9lo36Ky/socket1
        /var/tmp/gvfs-gus-B9lo36Ky/socket2
  
   But only the second can be found. I can't see the first. So probably
this is the problem. Anyone has the same problem ? I can provide more info.

   Regards,

   Gus

-- 
PGP KEY : http://www-entel.upc.edu/gus/gus.asc




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B6F1D6B.2070408>