On 20-09-2023 23:11, Harry Ramsey wrote:
Hello,
This patch series enables purecap applications to utilise tcp_zerocopy_receive to map packets directly from a network interface card into a shared space with the process and kernel.
I do not think I shall have time to continue revising this patch series and debugging the bus error generated by the latest patch. Hopefully this provides a start to tcp_zerocopy_receive for capability architecture.
Many thanks for the series, Harry! Your efforts are greatly appreciated! I'll pick up this series and credit you accordingly, of course.
Thanks, Tudor
v2:
- There appears to be a new error generated against musl resulting in a BUS error when using memcpy to copy between allocated shared space and other regions of memory.
- Rebase patch order to ensure aarch64 support throughout commits.
- Fix naming convention format issues for compat structs and functions.
- Remove uaddr_to_user_ptr usage to enforce capability model.
v1: I have tested these changes against musl and there still exists an issue in this implementation with copybuf and potentially msg_control generating an EFAULT error.
Gitlab Issue:
Review branch:
Thanks, Harry
Harry Ramsey (2): tcp: Implement compat version of tcp_zerocopy_receive tcp: Support userspace capabilities for tcp_zerocopy_receive
include/linux/sockptr.h | 28 ++++++++ include/uapi/linux/tcp.h | 6 +- net/ipv4/tcp.c | 135 ++++++++++++++++++++++++++++++++++----- 3 files changed, 149 insertions(+), 20 deletions(-)