On Mon, Sep 25, 2023 at 08:52 PM -07, John Fastabend wrote: > With e5c6de5fa0258 ("bpf, sockmap: Incorrectly handling copied_seq") we > started fixing the available bytes accounting by moving copied_seq to > where the user actually reads the bytes. > > However we missed handling MSG_PEEK correctly and we need to ensure > that we don't kfree_skb() a skb off the receive_queue when the > copied_seq number is not incremented by user reads for some time. > > v2: drop seq var in tcp_read_skb its no longer necessary per Jakub's > suggestion Credit goes to Simon Horman. > v3: drop tcp_sock as well its also not used anymore. sorry for the extra > noise there. > > John Fastabend (3): > bpf: tcp_read_skb needs to pop skb regardless of seq > bpf: sockmap, do not inc copied_seq when PEEK flag set > bpf: sockmap, add tests for MSG_F_PEEK > > net/ipv4/tcp.c | 10 +--- > net/ipv4/tcp_bpf.c | 4 +- > .../selftests/bpf/prog_tests/sockmap_basic.c | 52 +++++++++++++++++++ > 3 files changed, 57 insertions(+), 9 deletions(-) For the series: Reviewed-by: Jakub Sitnicki <jakub@xxxxxxxxxxxxxx>