Coda File System

Re: Coda development roadmap

From: <u-codalist-z149_at_aetey.se>
Date: Tue, 5 Aug 2014 09:27:17 +0200
Hi Greg,

On Mon, Aug 04, 2014 at 08:48:01PM -0400, Greg Troxel wrote:
> >> Moving to FUSE would be a much better approach if you want to get rid of
> >> kernel complexity. Patches are welcome.
> >
> > That would be more portable, sure, but I expect that we'd lose performance.
> > I appreciate that the current implementation offers very high efficiency
> > for read()/write()/seek().
> 
> Well, it's very efficient on Linux and NetBSD, and it has zero
> efficiency on many other platforms!!

That's right and I fully support the idea of (someone else than myself)
implementing a FUSE kernel interface. Nevertheless there is hardly
any point in dropping the existing and well performing Coda-specific
implementation, where it exists and is present in the mainstream kernel.

> But seriously, in 2010+ all other serious distributed filesystems except
> NFS seem to be "FUSE first".   A particular case in point is GlusterFS.
> Someone in NetBSD has been getting Gluster ported to NetBSD, and has
> reported file read rates over the network (GbE) from remote servers at a
> substantial fraction (60%?  more?) of the GbE rate, on a
> normal-but-fairly-high-end amd64 box.
> 
> So I don't think the performance issues are really that big a deal any
> more.

The performance of read/write in Coda (note we are not talking about
open() and friends) does not relate to the ability to "fill" the network.

It is about processes efficiently accessing the _local_ (cached) files.
So your comparison may be not exactly applicable.
(I recall ZFS on Linux has remarkably worse performance via FUSE compared
to natively)

Nevertheless what I actually wrote about was the need to replace the
pioctl interface. AFAICT FUSE does not provide any replacement.

For Coda to be portable kernel-wise we must anyway do pioctl via a
different channel, a local socket or probably better via the upcall
interface. If I correctly interpret comments in the code there was/is
even an intention to do so. (Jan please correct me if I am totally off
the road on this point)

Regards,
Rune
Received on 2014-08-05 03:27:41