Messages in this thread | | | From | Toke Høiland-Jørgensen <> | Subject | Re: [V9fs-developer] [PATCH] fs: 9p: add generic splice_read file operations | Date | Tue, 01 Dec 2020 16:23:45 +0100 |
| |
Dominique Martinet <asmadeus@codewreck.org> writes:
> Dominique Martinet wrote on Tue, Dec 01, 2020: >> > Since generic_file_splice_read() seems to just implement splice_read in >> > terms of the read_iter operation, I simply added the generic implementation >> > to the file operations, which fixed the error I was seeing. A quick grep >> > indicates that this is what most other file systems do as well. >> >> Good catch, might as well do that. >> I'm surprised you didn't hit the same problem with splice_write? >> >> I see iter_file_splice_write being used for it on many filesystems, >> it's probably better to add both? > > Yeah, I confirm both are needed (the second for the pipe -> fs side)
Yeah, makes sense; I was only testing with a very specific use case where a file is being passed to the kernel with sendfile().
> This made me test copy_file_range, and it works with both as well (used > not to) > > interestingly on older kernels this came as default somehow? I have > splice working on 5.4.67 :/ so this broke somewhat recently...
Huh, no idea; this is my first time digging into filesystem code, I normally do networking and BPF :)
> I'll add an extra patch with the second and take your patch. > Thanks!
Awesome, thanks!
-Toke
| |