diff options
Diffstat (limited to 'include/net/tcp.h')
| -rw-r--r-- | include/net/tcp.h | 12 | 
1 files changed, 11 insertions, 1 deletions
diff --git a/include/net/tcp.h b/include/net/tcp.h index d10962b9f0d0..14d45661a84d 100644 --- a/include/net/tcp.h +++ b/include/net/tcp.h @@ -327,6 +327,8 @@ void tcp_remove_empty_skb(struct sock *sk);  int tcp_v4_tw_remember_stamp(struct inet_timewait_sock *tw);  int tcp_sendmsg(struct sock *sk, struct msghdr *msg, size_t size);  int tcp_sendmsg_locked(struct sock *sk, struct msghdr *msg, size_t size); +int tcp_sendmsg_fastopen(struct sock *sk, struct msghdr *msg, int *copied, +			 size_t size, struct ubuf_info *uarg);  int tcp_sendpage(struct sock *sk, struct page *page, int offset, size_t size,  		 int flags);  int tcp_sendpage_locked(struct sock *sk, struct page *page, int offset, @@ -346,6 +348,7 @@ void tcp_rcv_established(struct sock *sk, struct sk_buff *skb);  void tcp_rcv_space_adjust(struct sock *sk);  int tcp_twsk_unique(struct sock *sk, struct sock *sktw, void *twp);  void tcp_twsk_destructor(struct sock *sk); +void tcp_twsk_purge(struct list_head *net_exit_list, int family);  ssize_t tcp_splice_read(struct socket *sk, loff_t *ppos,  			struct pipe_inode_info *pipe, size_t len,  			unsigned int flags); @@ -402,9 +405,13 @@ void tcp_init_sock(struct sock *sk);  void tcp_init_transfer(struct sock *sk, int bpf_op, struct sk_buff *skb);  __poll_t tcp_poll(struct file *file, struct socket *sock,  		      struct poll_table_struct *wait); +int do_tcp_getsockopt(struct sock *sk, int level, +		      int optname, sockptr_t optval, sockptr_t optlen);  int tcp_getsockopt(struct sock *sk, int level, int optname,  		   char __user *optval, int __user *optlen);  bool tcp_bpf_bypass_getsockopt(int level, int optname); +int do_tcp_setsockopt(struct sock *sk, int level, int optname, +		      sockptr_t optval, unsigned int optlen);  int tcp_setsockopt(struct sock *sk, int level, int optname, sockptr_t optval,  		   unsigned int optlen);  void tcp_set_keepalive(struct sock *sk, int val); @@ -1295,11 +1302,14 @@ static inline bool tcp_is_cwnd_limited(const struct sock *sk)  {  	const struct tcp_sock *tp = tcp_sk(sk); +	if (tp->is_cwnd_limited) +		return true; +  	/* If in slow start, ensure cwnd grows to twice what was ACKed. */  	if (tcp_in_slow_start(tp))  		return tcp_snd_cwnd(tp) < 2 * tp->max_packets_out; -	return tp->is_cwnd_limited; +	return false;  }  /* BBR congestion control needs pacing.  |