[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250309123004.85612-2-kerneljasonxing@gmail.com>
Date: Sun, 9 Mar 2025 13:30:00 +0100
From: Jason Xing <kerneljasonxing@...il.com>
To: davem@...emloft.net,
edumazet@...gle.com,
kuba@...nel.org,
pabeni@...hat.com,
dsahern@...nel.org,
ast@...nel.org,
daniel@...earbox.net,
andrii@...nel.org,
martin.lau@...ux.dev,
eddyz87@...il.com,
song@...nel.org,
yonghong.song@...ux.dev,
john.fastabend@...il.com,
kpsingh@...nel.org,
sdf@...ichev.me,
haoluo@...gle.com,
jolsa@...nel.org,
horms@...nel.org,
kuniyu@...zon.com,
ncardwell@...gle.com
Cc: bpf@...r.kernel.org,
netdev@...r.kernel.org,
Jason Xing <kerneljasonxing@...il.com>
Subject: [PATCH net-next 1/5] tcp: bpf: support bpf_getsockopt for TCP_BPF_RTO_MIN
Support bpf_getsockopt if application tries to know what the RTO MIN
of this socket is.
Signed-off-by: Jason Xing <kerneljasonxing@...il.com>
---
net/core/filter.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/net/core/filter.c b/net/core/filter.c
index a0867c5b32b3..31aef259e104 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -5415,6 +5415,17 @@ static int sol_tcp_sockopt(struct sock *sk, int optname,
if (*optlen < 1)
return -EINVAL;
break;
+ case TCP_BPF_RTO_MIN:
+ if (*optlen != sizeof(int))
+ return -EINVAL;
+ if (getopt) {
+ int rto_min = inet_csk(sk)->icsk_rto_min;
+ int rto_min_us = jiffies_to_usecs(rto_min);
+
+ memcpy(optval, &rto_min_us, *optlen);
+ return 0;
+ }
+ return bpf_sol_tcp_setsockopt(sk, optname, optval, *optlen);
case TCP_BPF_SOCK_OPS_CB_FLAGS:
if (*optlen != sizeof(int))
return -EINVAL;
--
2.43.5
Powered by blists - more mailing lists