mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	Provide an implementation for splice() when we are using SMC. See smc_splice_read() for further details. Signed-off-by: Stefan Raspl <raspl@linux.ibm.com> Signed-off-by: Ursula Braun <ubraun@linux.ibm.com>< Signed-off-by: David S. Miller <davem@davemloft.net>
		
			
				
	
	
		
			31 lines
		
	
	
	
		
			715 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			715 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* SPDX-License-Identifier: GPL-2.0 */
 | 
						|
/*
 | 
						|
 * Shared Memory Communications over RDMA (SMC-R) and RoCE
 | 
						|
 *
 | 
						|
 * Manage RMBE
 | 
						|
 *
 | 
						|
 * Copyright IBM Corp. 2016
 | 
						|
 *
 | 
						|
 * Author(s):  Ursula Braun <ubraun@linux.vnet.ibm.com>
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef SMC_RX_H
 | 
						|
#define SMC_RX_H
 | 
						|
 | 
						|
#include <linux/socket.h>
 | 
						|
#include <linux/types.h>
 | 
						|
 | 
						|
#include "smc.h"
 | 
						|
 | 
						|
void smc_rx_init(struct smc_sock *smc);
 | 
						|
 | 
						|
int smc_rx_recvmsg(struct smc_sock *smc, struct msghdr *msg,
 | 
						|
		   struct pipe_inode_info *pipe, size_t len, int flags);
 | 
						|
int smc_rx_wait(struct smc_sock *smc, long *timeo,
 | 
						|
		int (*fcrit)(struct smc_connection *conn));
 | 
						|
static inline int smc_rx_data_available(struct smc_connection *conn)
 | 
						|
{
 | 
						|
	return atomic_read(&conn->bytes_to_rcv);
 | 
						|
}
 | 
						|
 | 
						|
#endif /* SMC_RX_H */
 |