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>