[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210426025001.7899-1-xiyou.wangcong@gmail.com>
Date: Sun, 25 Apr 2021 19:49:51 -0700
From: Cong Wang <xiyou.wangcong@...il.com>
To: netdev@...r.kernel.org
Cc: bpf@...r.kernel.org, jiang.wang@...edance.com,
duanxiongchun@...edance.com, wangdongdong.6@...edance.com,
Cong Wang <cong.wang@...edance.com>
Subject: [Patch bpf-next v3 00/10] sockmap: add sockmap support to Unix datagram socket
From: Cong Wang <cong.wang@...edance.com>
This is the last patchset of the original large patchset. In the
previous patchset, a new BPF sockmap program BPF_SK_SKB_VERDICT
was introduced and UDP began to support it too. In this patchset,
we add BPF_SK_SKB_VERDICT support to Unix datagram socket, so that
we can finally splice Unix datagram socket and UDP socket. Please
check each patch description for more details.
To see the big picture, the previous patchsets are available:
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/commit/?id=1e0ab70778bd86a90de438cc5e1535c115a7c396
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/commit/?id=89d69c5d0fbcabd8656459bc8b1a476d6f1efee4
this patchset is also available:
https://github.com/congwang/linux/tree/sockmap3
---
v3: fix Kconfig dependency
make unix_read_sock() static
fix a UAF in unix_release()
add a missing header unix_bpf.c
v2: separate out from the original large patchset
rebase to the latest bpf-next
clean up unix_read_sock()
export sock_map_close()
factor out some helpers in selftests for code reuse
Cong Wang (10):
sock_map: relax config dependency to CONFIG_NET
af_unix: implement ->read_sock() for sockmap
af_unix: implement ->psock_update_sk_prot()
af_unix: set TCP_ESTABLISHED for datagram sockets too
af_unix: implement unix_dgram_bpf_recvmsg()
sock_map: update sock type checks for AF_UNIX
selftests/bpf: factor out udp_socketpair()
selftests/bpf: factor out add_to_sockmap()
selftests/bpf: add a test case for unix sockmap
selftests/bpf: add test cases for redirection between udp and unix
MAINTAINERS | 1 +
include/linux/bpf.h | 38 +-
include/net/af_unix.h | 13 +
init/Kconfig | 2 +-
net/core/Makefile | 2 -
net/core/sock_map.c | 9 +
net/unix/Makefile | 1 +
net/unix/af_unix.c | 83 +++-
net/unix/unix_bpf.c | 96 +++++
.../selftests/bpf/prog_tests/sockmap_listen.c | 386 ++++++++++++++----
10 files changed, 528 insertions(+), 103 deletions(-)
create mode 100644 net/unix/unix_bpf.c
--
2.25.1
Powered by blists - more mailing lists