Re: [PATCH v20 03/32] splice: Make direct_read_splice() limit to eof where appropriate

From: David Howells
Date: Fri May 19 2023 - 04:44:39 EST


Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:

> I'm really not sure if this is a good idea. Right now
> direct_read_splice (which also appears a little misnamed) really is
> a splice by calling ->read_iter helper.

It can be renamed if you want a different name. copy_splice_read() or
copy_splice_read_iter()?

> I we don't do any of this validtion we can just call it directly from
> splice.c instead of calling into ->splice_read for direct I/O and DAX and
> remove a ton of boilerplate code.

There's a couple of places where we might not want to do that - at least for
non-DAX. shmem and f2fs for example. f2fs calls back to buffered reading
under some circumstances. shmem ignores O_DIRECT and always splices from the
pagecache.

David