summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorKumar Kartikeya Dwivedi <memxor@gmail.com>2026-07-15 11:10:15 +0200
committerKumar Kartikeya Dwivedi <memxor@gmail.com>2026-07-15 11:10:15 +0200
commit2d8af4e633d3dea7269f2dad724977ce48034fd4 (patch)
treec75b615f723900f318e176c03ff260947a79ce65 /include
parent71836d063d2d97d5b66f9c2477c2d8035558a6fc (diff)
parenta42f05cc4c1d49e27bbc6f65415aa76274ef7736 (diff)
Merge branch 'bpf-sockmap-fix-fionread-for-sockets-without-a-verdict-program'
Mattia Meleleo says: ==================== bpf, sockmap: Fix FIONREAD for sockets without a verdict program Sockets added to a sockmap/sockhash with no stream/skb verdict program attached answer FIONREAD with 0 even when unread data is pending in sk_receive_queue. Fix tcp_bpf_ioctl() to account for the receive queue in that case, and add a selftest. Changes in v3: - Remove unused sk_psock_msg_inq() - Link to v2: https://patch.msgid.link/20260708-fionread-no-verdict-v2-0-29dd293621c7@coralogix.com Changes in v2: - Split the fix and the selftest into separate patches - Use READ_ONCE() to read the verdict program pointers - Link to v1: https://patch.msgid.link/20260707-fionread-no-verdict-v1-1-ce94a72357ec@coralogix.com Signed-off-by: Mattia Meleleo <mattia.meleleo@coralogix.com> --- ==================== Link: https://patch.msgid.link/20260708-fionread-no-verdict-v3-0-b4ee31b3af53@coralogix.com Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/skmsg.h14
1 files changed, 0 insertions, 14 deletions
diff --git a/include/linux/skmsg.h b/include/linux/skmsg.h
index a8553401b1c9..d5e35f24738d 100644
--- a/include/linux/skmsg.h
+++ b/include/linux/skmsg.h
@@ -551,20 +551,6 @@ static inline void psock_progs_drop(struct sk_psock_progs *progs)
psock_set_prog(&progs->skb_verdict, NULL);
}
-/* for tcp only, sk is locked */
-static inline ssize_t sk_psock_msg_inq(struct sock *sk)
-{
- struct sk_psock *psock;
- ssize_t inq = 0;
-
- psock = sk_psock_get(sk);
- if (likely(psock)) {
- inq = sk_psock_get_msg_len_nolock(psock);
- sk_psock_put(sk, psock);
- }
- return inq;
-}
-
/* for udp only, sk is not locked */
static inline ssize_t sk_msg_first_len(struct sock *sk)
{