FUSE, pthread and dl
Jörg Faschingbauer
joerg.faschingbauer at aon.at
Fri Jun 25 17:59:10 UTC 2010
On Fri, 2010-06-25 at 02:06 +0200, Denys Vlasenko wrote:
> On Sunday 20 June 2010 11:35, Jörg Faschingbauer wrote:
> > On Sat, 2010-06-19 at 22:02 +0200, Denys Vlasenko wrote:
> >
> > > > in an attempt to build FUSE into Busybox (*)
> > >
> > > What do you mean by "build FUSE into Busybox"?
> >
> > FUSE (http://fuse.sourceforge.net) comes with a library which is used by
> > user space filesystems to handle /dev/fuse traffic, and a couple of
> > executables that help mount filesystems that are implemented using FUSE.
>
> What this traffic to /dev/fuse is needed for?
> I thought FUSE is a filesystem, not a library,
> that is, no wrappers aroung open/read/close needed.
Yes, kernel-wise FUSE is a filesystem. It doesn't implement anything in
the kernel - rather, it leaves that to user space. The kernel module and
user space communicate over /dev/fuse.
User space FUSE is a library and a few associated programs that
wrap /dev/fuse handling. A file system daemon links against the library,
and registers filesystem methods. See for example
http://hg.podgorny.cz/unionfs-fuse/file/2e0d3d1c9c6f/src/unionfs.c.
> > The executables are applets, and the library has to make it into Busybox
> > "somehow". FUSE will be enabled when somebody selects a FUSE filesytem
> > implementation in the config, for exampe unionfs-fuse (I'm doing all
> > this for the purpose of getting unionfs-fuse into Busybox).
>
> What unionfs-fuse does (on syscall level)?
It is yet another user of the FUSE user space library, so I suppose
open/read/write/close are the syscalls, basically.
It's just that FUSE uses dl and pthread, that's why I'm asking,
originally. I dealing with upstream FUSE to accept my patch that make dl
configurable, so that shouldn't be an issue. Not sure about pthread
though.
Joerg
More information about the busybox
mailing list