[PATCH 0/5] vmsplice: fix some problems in my previous vmsplice patchset
Askar Safin <[email protected]>
| Newsgroups | org.kernel.vger.linux-api,dev.linux.lists.fuse-devel,dev.linux.lists.patches,it.linux.lists.ltp,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.netdev,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
This patchset is for VFS. Of course, it depends on my previous vmsplice patchset. I fix some problems in my previous patchset. 1. Fix problem with CLASS(fd, f)(fd). See first patch for details. This is probably not so important, but I fix it anyway. 2. Change "unsigned long" back to "int". See second patch for details. Again, this is probably not important, but I want to fix this anyway. 3. Fix that LTP vmsplice01 bug. See patches for details. Please, run that LTP vmsplice01 test again. Notes: - I want to repeat: I change behavior around SPLICE_F_NONBLOCK. Previously, vmsplice ignored whether pipe itself was opened as non-blocking file. Now it is not ignored. And in my opinion new behavior is better. - vmsplice(2) now is in fs/read_write.c . It is very similar to preadv2 and pwritev2 now, so I think it belongs to fs/read_write.c now. Please, review this patchset carefully. I'm still new contributor. In particular, please, review that do-while loop, I'm not sure I did everything right. Tested in Qemu. Askar Safin (5): vmsplice: open-code do_writev and do_readv vmsplice: change argument type back to "int" splice: turn wait_for_space flags argument into bool pipe: move wait_for_space to fs/pipe.c and rename it vmsplice: make sure we don't wait after writing some data fs/pipe.c | 17 +++++++++++ fs/read_write.c | 61 ++++++++++++++++++++++++++++++++++----- fs/splice.c | 19 +----------- include/linux/pipe_fs_i.h | 2 ++ include/linux/syscalls.h | 2 +- 5 files changed, 75 insertions(+), 26 deletions(-) base-commit: 8d86fcfc2857d64af85f5c87c193c25655c970af (vfs-7.2.vmsplice) -- 2.47.3