Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 Oct 2010 22:06:32 +0200
From:      Ivan Voras <ivoras@freebsd.org>
To:        Ivan Voras <ivoras@freebsd.org>, freebsd-arch@freebsd.org
Subject:   Re: Importing the fusefs kernel module?
Message-ID:  <AANLkTi=6GEoYNYYSkUiws8tPQRqtUw_pTYzUC7UqX%2BTm@mail.gmail.com>
In-Reply-To: <20101028184504.GB46314@acme.spoerlein.net>
References:  <ia4qnl$bgl$1@dough.gmane.org> <20101025211904.GM2392@deviant.kiev.zoral.com.ua> <20101026205801.GA39716@zim.MIT.EDU> <D1BAEBBF-4CD4-4C2A-A877-B86D6322E6C7@samsco.org> <AANLkTikR2YuLA-SGc2HKNp94BEBFF0%2BhO2ye-=qJVnwD@mail.gmail.com> <4CC92D1B.5010701@entel.upc.edu> <AANLkTimVWaRzhuCDHM-F_%2ByYNF9ObqViPSzQ51M0wQRA@mail.gmail.com> <20101028184504.GB46314@acme.spoerlein.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 28 October 2010 20:45, Ulrich Sp=C3=B6rlein <uqs@spoerlein.net> wrote:
> On Thu, 28.10.2010 at 12:19:52 +0200, Ivan Voras wrote:
>> 2010/10/28 Gustau P=C3=A9rez <gperez@entel.upc.edu>:
>>
>> > =C2=A0 The point is, do we stick with fuse or do we switch to puffs ? =
What is
>>
>> Basically my vote goes to fuse for these reasons:
>>
>> =C2=A0* More file systems are developed for fuse
>> =C2=A0* It's more popular both among the users and 3d party software
>> developers (you mentioned Gnome)
>> =C2=A0* It's better performing, at least in theory, because puffs was no=
t
>> originally written for a multi-threaded kernel (lots of serialization)
>
> I was under the impression, there's a library for puffs (called
> re-fuse?!?) which would provide API compatible shims for FUSE, rendering
> your first argument invalid.
>
> Or am I wrong?

Sort of. According to the development paper at
http://www.netbsd.org/docs/puffs/refuse.pdf the refuse library
doesn't/didn't support the whole FUSE API, and according to a post I
can't seem to find right now (and will send if I find it) the
architectures (especially wrt threading) are too different for it to
be 100% mapping between puffs and fuse. As I'm interested in the more
advanced fuse file systems (e.g. cluster fs's), this stands out as a
possible problem.

The puffs system continued to be developed at NetBSD after the FreeBSD
port was branched. There will also be nontrivial work to merge new
code from NetBSD. I'm not specifically against puffs, but I think
dispersal of efforts between the two APIs is the worst possible
outcome right now.

The above paper also states that there are OpenSolaris and MacOS X
implementations of FUSE which are based on fuse4bsd so there's even
that aspect - they made it stable, why can't we?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTi=6GEoYNYYSkUiws8tPQRqtUw_pTYzUC7UqX%2BTm>