[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141123233637.GC12456@thin>
Date: Sun, 23 Nov 2014 15:36:37 -0800
From: Josh Triplett <josh@...htriplett.org>
To: Pieter Smith <pieter@...sman.nl>
Cc: David Miller <davem@...emloft.net>, alexander.h.duyck@...el.com,
viro@...iv.linux.org.uk, ast@...mgrid.com,
akpm@...ux-foundation.org, beber@...eeweb.net,
catalina.mocanu@...il.com, dborkman@...hat.com,
edumazet@...gle.com, ebiederm@...ssion.com, fabf@...net.be,
fuse-devel@...ts.sourceforge.net, geert@...ux-m68k.org,
hughd@...gle.com, iulia.manda21@...il.com, JBeulich@...e.com,
bfields@...ldses.org, jlayton@...chiereds.net,
linux-api@...r.kernel.org, linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org, mcgrof@...e.com, mattst88@...il.com,
mgorman@...e.de, mst@...hat.com, miklos@...redi.hu,
netdev@...r.kernel.org, oleg@...hat.com, Paul.Durrant@...rix.com,
paulmck@...ux.vnet.ibm.com, pefoley2@...oley.com, tgraf@...g.ch,
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 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.
That said, given that it seems exceedingly unlikely that anyone would
use the in-kernel nfsd on a system trying to minimize kernel size, it
still seems cleaner to just "select SPLICE_SYSCALL" from NFSD in
Kconfig. That avoids making any changes at all to the nfsd source in
this patch series.
- 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