Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Feb 2019 10:58:06 -0800
From:      Conrad Meyer <cem@freebsd.org>
To:        Pedro Giffuni <pfg@freebsd.org>
Cc:        Alan Somers <asomers@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-projects@freebsd.org
Subject:   Re: svn commit: r344558 - in projects/fuse2: . sbin/ifconfig
Message-ID:  <CAG6CVpXSXC-5nP=dPiVjniR-K7g9nmkx2JmVfc698ej57GY6yg@mail.gmail.com>
In-Reply-To: <306af793-6776-cf1b-fc19-f0a66e59be84@FreeBSD.org>
References:  <201902260328.x1Q3SEbK009132@repo.freebsd.org> <d3f15c04-79a7-84c6-5566-2cab4dd8cd48@FreeBSD.org> <CAG6CVpU=ee48gLXfHRyBMg2yFCDa7MXe9m%2B_r1sYz4YhaU9_Gg@mail.gmail.com> <306af793-6776-cf1b-fc19-f0a66e59be84@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi Pedro,

On Tue, Feb 26, 2019 at 10:12 AM Pedro Giffuni <pfg@freebsd.org> wrote:
> Yes they keep that file under a BSD license, and order is important. I
> think we actually have to stop around 7.13 unless we are willing to
> support the linux splice call.

I don't think splice is necessary.  libfuse today already handles
kernels that do not support SPLICE capability by emulating in
userspace.  It doesn't even request the capability of the kernel
unless all of the following are true:

1. Userspace defines a splice() function.
2. Kernel advertises version 7.14+

( https://github.com/libfuse/libfuse/blob/0c73b8389aaea156e7544d984be95515b9743033/lib/fuse_lowlevel.c#L1910
)

And it doesn't use the splice syscall on fuse fds unless the kernel
additionally advertises the capability.  We simply won't advertise the
capability, and since we don't have the function at all, libfuse built
on FreeBSD won't even compile the code wrapped in HAVE_SPLICE.

I agree there will probably be some stumbling blocks, but I don't
think splice is going to be one of them.  And I think libfuse upstream
is very receptive to any compatibility shims we might need to
coordinate with them if it helps get us beyond 7.8 :-).

Best,
Conrad



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG6CVpXSXC-5nP=dPiVjniR-K7g9nmkx2JmVfc698ej57GY6yg>