mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-03 18:20:25 +02:00 
			
		
		
		
	net: flag sockets supporting msghdr originated zerocopy
We need an efficient way in io_uring to check whether a socket supports zerocopy with msghdr provided ubuf_info. Add a new flag into the struct socket flags fields. Cc: <stable@vger.kernel.org> # 6.0 Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Acked-by: Jakub Kicinski <kuba@kernel.org> Link: https://lore.kernel.org/r/3dafafab822b1c66308bb58a0ac738b1e3f53f74.1666346426.git.asml.silence@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
		
							parent
							
								
									996d3efeb0
								
							
						
					
					
						commit
						e993ffe3da
					
				
					 3 changed files with 3 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -41,6 +41,7 @@ struct net;
 | 
			
		|||
#define SOCK_NOSPACE		2
 | 
			
		||||
#define SOCK_PASSCRED		3
 | 
			
		||||
#define SOCK_PASSSEC		4
 | 
			
		||||
#define SOCK_SUPPORT_ZC		5
 | 
			
		||||
 | 
			
		||||
#ifndef ARCH_HAS_SOCKET_TYPES
 | 
			
		||||
/**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -457,6 +457,7 @@ void tcp_init_sock(struct sock *sk)
 | 
			
		|||
	WRITE_ONCE(sk->sk_sndbuf, READ_ONCE(sock_net(sk)->ipv4.sysctl_tcp_wmem[1]));
 | 
			
		||||
	WRITE_ONCE(sk->sk_rcvbuf, READ_ONCE(sock_net(sk)->ipv4.sysctl_tcp_rmem[1]));
 | 
			
		||||
 | 
			
		||||
	set_bit(SOCK_SUPPORT_ZC, &sk->sk_socket->flags);
 | 
			
		||||
	sk_sockets_allocated_inc(sk);
 | 
			
		||||
}
 | 
			
		||||
EXPORT_SYMBOL(tcp_init_sock);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1624,6 +1624,7 @@ int udp_init_sock(struct sock *sk)
 | 
			
		|||
{
 | 
			
		||||
	skb_queue_head_init(&udp_sk(sk)->reader_queue);
 | 
			
		||||
	sk->sk_destruct = udp_destruct_sock;
 | 
			
		||||
	set_bit(SOCK_SUPPORT_ZC, &sk->sk_socket->flags);
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue