net: Rename ->stream_memory_read to ->sock_is_readable
The proto ops ->stream_memory_read() is currently only used by TCP to check whether psock queue is empty or not. We need to rename it before reusing it for non-TCP protocols, and adjust the exsiting users accordingly. Signed-off-by: Cong Wang <cong.wang@bytedance.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20211008203306.37525-2-xiyou.wangcong@gmail.com
This commit is contained in:
		
							parent
							
								
									cd9733f5d7
								
							
						
					
					
						commit
						7b50ecfcc6
					
				| @ -1208,7 +1208,7 @@ struct proto { | ||||
| #endif | ||||
| 
 | ||||
| 	bool			(*stream_memory_free)(const struct sock *sk, int wake); | ||||
| 	bool			(*stream_memory_read)(const struct sock *sk); | ||||
| 	bool			(*sock_is_readable)(struct sock *sk); | ||||
| 	/* Memory pressure */ | ||||
| 	void			(*enter_memory_pressure)(struct sock *sk); | ||||
| 	void			(*leave_memory_pressure)(struct sock *sk); | ||||
| @ -2820,4 +2820,10 @@ void sock_set_sndtimeo(struct sock *sk, s64 secs); | ||||
| 
 | ||||
| int sock_bind_add(struct sock *sk, struct sockaddr *addr, int addr_len); | ||||
| 
 | ||||
| static inline bool sk_is_readable(struct sock *sk) | ||||
| { | ||||
| 	if (sk->sk_prot->sock_is_readable) | ||||
| 		return sk->sk_prot->sock_is_readable(sk); | ||||
| 	return false; | ||||
| } | ||||
| #endif	/* _SOCK_H */ | ||||
|  | ||||
| @ -375,7 +375,7 @@ void tls_sw_release_resources_rx(struct sock *sk); | ||||
| void tls_sw_free_ctx_rx(struct tls_context *tls_ctx); | ||||
| int tls_sw_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, | ||||
| 		   int nonblock, int flags, int *addr_len); | ||||
| bool tls_sw_stream_read(const struct sock *sk); | ||||
| bool tls_sw_sock_is_readable(struct sock *sk); | ||||
| ssize_t tls_sw_splice_read(struct socket *sock, loff_t *ppos, | ||||
| 			   struct pipe_inode_info *pipe, | ||||
| 			   size_t len, unsigned int flags); | ||||
|  | ||||
| @ -486,10 +486,7 @@ static bool tcp_stream_is_readable(struct sock *sk, int target) | ||||
| { | ||||
| 	if (tcp_epollin_ready(sk, target)) | ||||
| 		return true; | ||||
| 
 | ||||
| 	if (sk->sk_prot->stream_memory_read) | ||||
| 		return sk->sk_prot->stream_memory_read(sk); | ||||
| 	return false; | ||||
| 	return sk_is_readable(sk); | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  | ||||
| @ -150,7 +150,7 @@ int tcp_bpf_sendmsg_redir(struct sock *sk, struct sk_msg *msg, | ||||
| EXPORT_SYMBOL_GPL(tcp_bpf_sendmsg_redir); | ||||
| 
 | ||||
| #ifdef CONFIG_BPF_SYSCALL | ||||
| static bool tcp_bpf_stream_read(const struct sock *sk) | ||||
| static bool tcp_bpf_sock_is_readable(struct sock *sk) | ||||
| { | ||||
| 	struct sk_psock *psock; | ||||
| 	bool empty = true; | ||||
| @ -491,7 +491,7 @@ static void tcp_bpf_rebuild_protos(struct proto prot[TCP_BPF_NUM_CFGS], | ||||
| 	prot[TCP_BPF_BASE].unhash		= sock_map_unhash; | ||||
| 	prot[TCP_BPF_BASE].close		= sock_map_close; | ||||
| 	prot[TCP_BPF_BASE].recvmsg		= tcp_bpf_recvmsg; | ||||
| 	prot[TCP_BPF_BASE].stream_memory_read	= tcp_bpf_stream_read; | ||||
| 	prot[TCP_BPF_BASE].sock_is_readable	= tcp_bpf_sock_is_readable; | ||||
| 
 | ||||
| 	prot[TCP_BPF_TX]			= prot[TCP_BPF_BASE]; | ||||
| 	prot[TCP_BPF_TX].sendmsg		= tcp_bpf_sendmsg; | ||||
|  | ||||
| @ -681,12 +681,12 @@ static void build_protos(struct proto prot[TLS_NUM_CONFIG][TLS_NUM_CONFIG], | ||||
| 
 | ||||
| 	prot[TLS_BASE][TLS_SW] = prot[TLS_BASE][TLS_BASE]; | ||||
| 	prot[TLS_BASE][TLS_SW].recvmsg		  = tls_sw_recvmsg; | ||||
| 	prot[TLS_BASE][TLS_SW].stream_memory_read = tls_sw_stream_read; | ||||
| 	prot[TLS_BASE][TLS_SW].sock_is_readable   = tls_sw_sock_is_readable; | ||||
| 	prot[TLS_BASE][TLS_SW].close		  = tls_sk_proto_close; | ||||
| 
 | ||||
| 	prot[TLS_SW][TLS_SW] = prot[TLS_SW][TLS_BASE]; | ||||
| 	prot[TLS_SW][TLS_SW].recvmsg		= tls_sw_recvmsg; | ||||
| 	prot[TLS_SW][TLS_SW].stream_memory_read	= tls_sw_stream_read; | ||||
| 	prot[TLS_SW][TLS_SW].sock_is_readable   = tls_sw_sock_is_readable; | ||||
| 	prot[TLS_SW][TLS_SW].close		= tls_sk_proto_close; | ||||
| 
 | ||||
| #ifdef CONFIG_TLS_DEVICE | ||||
|  | ||||
| @ -2026,7 +2026,7 @@ splice_read_end: | ||||
| 	return copied ? : err; | ||||
| } | ||||
| 
 | ||||
| bool tls_sw_stream_read(const struct sock *sk) | ||||
| bool tls_sw_sock_is_readable(struct sock *sk) | ||||
| { | ||||
| 	struct tls_context *tls_ctx = tls_get_ctx(sk); | ||||
| 	struct tls_sw_context_rx *ctx = tls_sw_ctx_rx(tls_ctx); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user