[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141124090054.GA20119@thin>
Date: Mon, 24 Nov 2014 01:00:54 -0800
From: Josh Triplett <josh@...htriplett.org>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
Cc: Pieter Smith <pieter@...sman.nl>,
David Miller <davem@...emloft.net>,
alexander.h.duyck@...el.com, Al Viro <viro@...iv.linux.org.uk>,
Alexei Starovoitov <ast@...mgrid.com>,
Andrew Morton <akpm@...ux-foundation.org>, beber@...eeweb.net,
catalina.mocanu@...il.com, Daniel Borkmann <dborkman@...hat.com>,
Eric Dumazet <edumazet@...gle.com>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Fabian Frederick <fabf@...net.be>,
fuse-devel@...ts.sourceforge.net, Hugh Dickins <hughd@...gle.com>,
iulia.manda21@...il.com, Jan Beulich <JBeulich@...e.com>,
bfields@...ldses.org, jlayton@...chiereds.net,
linux-api@...r.kernel.org,
Linux FS Devel <linux-fsdevel@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"Luis R. Rodriguez" <mcgrof@...e.com>,
Matt Turner <mattst88@...il.com>, Mel Gorman <mgorman@...e.de>,
"Michael S. Tsirkin" <mst@...hat.com>,
Miklos Szeredi <miklos@...redi.hu>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Oleg Nesterov <oleg@...hat.com>, Paul.Durrant@...rix.com,
Paul McKenney <paulmck@...ux.vnet.ibm.com>,
Peter Foley <pefoley2@...oley.com>,
Thomas Graf <tgraf@...g.ch>, Tom Herbert <therbert@...gle.com>,
willemb@...gle.com, xiaoguangrong@...ux.vnet.ibm.com,
zhenglong.cai@...c.com.cn
Subject: Re: [PATCH 0/6] kernel tinification: optionally compile out splice
family of syscalls (splice, vmsplice, tee and sendfile)
On Mon, Nov 24, 2014 at 09:38:20AM +0100, Geert Uytterhoeven wrote:
> On Mon, Nov 24, 2014 at 12:36 AM, Josh Triplett <josh@...htriplett.org> wrote:
> > On Sun, Nov 23, 2014 at 09:30:40PM +0100, Pieter Smith wrote:
> >> On Sun, Nov 23, 2014 at 11:43:26AM -0800, Josh Triplett wrote:
> >> > On Sun, Nov 23, 2014 at 01:46:23PM -0500, David Miller wrote:
> >> > > Truly removing sendfile/sendpage means that you can't even compile NFS
> >> > > into the tree.
> >> >
> >> > If you mean the in-kernel nfsd (CONFIG_NFSD), that already has a large
> >> > stack of "select" and "depends on", both directly and indirectly; adding
> >> > a "select SPLICE_SYSCALL" to it seems fine. (That select does need
> >> > adding, though. Pieter, you need to test-compile more than just
> >> > tinyconfig and defconfig. Try an allyesconfig with *just* splice turned
> >> > off, and make sure that compiles.)
> >>
> >> Did exacly that. Took forever on my hardware, but no problems.
> >
> > Ah, I see. Looking more closely at nfsd, it looks like it already has a
> > code path for filesystems that don't do splice. I think, rather than
> > making nfsd select SPLICE_SYSCALL, that it would suffice to change the
> > "rqstp->rq_splice_ok = true;" in svc_process_common (net/sunrpc/svc.c)
> > to:
> >
> > rqstp->rq_splice_ok = IS_ENABLED(CONFIG_SPLICE_SYSCALL);
> >
> > Then nfsd should simply *always* fall back to its non-splice support.
>
> Hence I suggest adding to the nfsd help text:
>
> While nfsd works without SPLICE_SYSCALL, you may want to enable
> SPLICE_SYSCALL for <...> (performance?) reasons.
It already seems sufficiently unlikely to enable NFSD while disabling
SPLICE_SYSCALL (in the latter case, turning on EXPERT to do so). It
doesn't seem worth adding such a note to NFSD. At most, I'd say that
NFSD might want a note somewhere in its documentation saying that it
takes advantage of filesystems with splice support if serving files from
one, and if running on a kernel that has splice.
> (Hmm, does Kconfig need a "suggests", cfr. Debian package dependencies?)
Perhaps, though that seems much lower priority than, for instance,
transitive "select".
- Josh Triplett
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists