BPF List
 help / color / mirror / Atom feed
* [PATCH bpf v3 0/3] bpf, sockmap complete fixes for avail bytes
@ 2023-09-26  3:52 John Fastabend
  2023-09-26  3:52 ` [PATCH bpf v3 1/3] bpf: tcp_read_skb needs to pop skb regardless of seq John Fastabend
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: John Fastabend @ 2023-09-26  3:52 UTC (permalink / raw)
  To: daniel, ast, andrii, jakub; +Cc: john.fastabend, bpf, netdev, edumazet

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
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(-)

-- 
2.33.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-09-29 15:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-26  3:52 [PATCH bpf v3 0/3] bpf, sockmap complete fixes for avail bytes John Fastabend
2023-09-26  3:52 ` [PATCH bpf v3 1/3] bpf: tcp_read_skb needs to pop skb regardless of seq John Fastabend
2023-09-26  3:52 ` [PATCH bpf v3 2/3] bpf: sockmap, do not inc copied_seq when PEEK flag set John Fastabend
2023-09-26  3:53 ` [PATCH bpf v3 3/3] bpf: sockmap, add tests for MSG_F_PEEK John Fastabend
2023-09-29  8:02 ` [PATCH bpf v3 0/3] bpf, sockmap complete fixes for avail bytes Jakub Sitnicki
2023-09-29 15:10 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox