Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.8 35 lines 830 B view raw
1// SPDX-License-Identifier: GPL-2.0 2 3#include "vmlinux.h" 4 5#include <bpf/bpf_helpers.h> 6#include <bpf/bpf_tracing.h> 7 8char _license[] SEC("license") = "GPL"; 9 10static inline struct tcp_sock *tcp_sk(const struct sock *sk) 11{ 12 return (struct tcp_sock *)sk; 13} 14 15SEC("struct_ops/incompl_cong_ops_ssthresh") 16__u32 BPF_PROG(incompl_cong_ops_ssthresh, struct sock *sk) 17{ 18 return tcp_sk(sk)->snd_ssthresh; 19} 20 21SEC("struct_ops/incompl_cong_ops_undo_cwnd") 22__u32 BPF_PROG(incompl_cong_ops_undo_cwnd, struct sock *sk) 23{ 24 return tcp_sk(sk)->snd_cwnd; 25} 26 27SEC(".struct_ops") 28struct tcp_congestion_ops incompl_cong_ops = { 29 /* Intentionally leaving out any of the required cong_avoid() and 30 * cong_control() here. 31 */ 32 .ssthresh = (void *)incompl_cong_ops_ssthresh, 33 .undo_cwnd = (void *)incompl_cong_ops_undo_cwnd, 34 .name = "bpf_incompl_ops", 35};