mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	Highlights include:
 
 Stable fixes:
 - Fix a 1-byte stack overflow in nfs_idmap_read_and_verify_message
 - Fix a hang due to incorrect error returns in rpcrdma_convert_iovs()
 - Revert an incorrect change to the NFSv4.1 callback channel
 - Fix a bug in the NFSv4.1 sequence error handling
 
 Features and optimisations:
 - Support for piggybacking a LAYOUTGET operation to the OPEN compound
 - RDMA performance enhancements to deal with transport congestion
 - Add proper SPDX tags for NetApp-contributed RDMA source
 - Do not request delegated file attributes (size+change) from the server
 - Optimise away a GETATTR in the lookup revalidate code when doing NFSv4 OPEN
 - Optimise away unnecessary lookups for rename targets
 - Misc performance improvements when freeing NFSv4 delegations
 
 Bugfixes and cleanups:
 - Try to fail quickly if proto=rdma
 - Clean up RDMA receive trace points
 - Fix sillyrename to return the delegation when appropriate
 - Misc attribute revalidation fixes
 - Immediately clear the pNFS layout on a file when the server returns ESTALE
 - Return NFS4ERR_DELAY when delegation/layout recalls fail due to igrab()
 - Fix the client behaviour on NFS4ERR_SEQ_FALSE_RETRY
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJbH8gIAAoJEA4mA3inWBJcpzYQAJYY3ykt9oLQgm/2b/D/weDe
 6890M9W5nIeuZq5soWSpYsZTxqIFbGV4laG/eCTW1gUN1TitSZsoOp7kqhRHXOjq
 Rv3ZvjlZsP2qv2SnzsEmhJsynfyB46d19smSTJhgQ8dnXhaZv04Wsd4krLHx0z6p
 uUUis5Q1m+vL7HsFPp3iUareO/DFKeSkw2cQ2V5ksTIEiAzX7GC+Ex/KKWf82nrJ
 hm7+Nq7rLf1QHJkQvsc3fYCMR4gIzEwUu6F8RyxCoAVgD6O90Hx6NbxnINaHDD4N
 U0nRP5LwCyN9hbPWvwcH7Sn4ePDTos2yj2tFO5NP9btTLDVLFSGYZ2a74d9PRdAf
 9jn6f6juSDwI7T6NXvkHzzkJG6Or9ABAUZo+yX5JoD6lmgOcPUJpLRy6fu7UxAuN
 a5OZ7d9edYpOi0Kys8sDSIlLlxZtFkvybOMVuI3dSHsI+c0g39w8oarpqT2wXWMs
 /ZtFz0FCreHhKkNtz7Z49z1UQHDv/XYM0WkcO+eaeK58RLIEE0pZHoMvPKP63lkI
 nbbgHvBRAu38Jtvvu65Hpb/VpBcqNGM5hjN1cfW/BOqAPKW23s4vWVj+/1silfW/
 uw0MkNrDC9endoALp/YMCcMwPvEw9Awt9y4KjMgfVgSnKwXd0HaSZ2zE6aJU3Wry
 Fy2Tv0e0OH3z9Bi/LNuJ
 =YWSl
 -----END PGP SIGNATURE-----
Merge tag 'nfs-for-4.18-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
Pull NFS client updates from Trond Myklebust:
 "Highlights include:
  Stable fixes:
   - Fix a 1-byte stack overflow in nfs_idmap_read_and_verify_message
   - Fix a hang due to incorrect error returns in rpcrdma_convert_iovs()
   - Revert an incorrect change to the NFSv4.1 callback channel
   - Fix a bug in the NFSv4.1 sequence error handling
  Features and optimisations:
   - Support for piggybacking a LAYOUTGET operation to the OPEN compound
   - RDMA performance enhancements to deal with transport congestion
   - Add proper SPDX tags for NetApp-contributed RDMA source
   - Do not request delegated file attributes (size+change) from the
     server
   - Optimise away a GETATTR in the lookup revalidate code when doing
     NFSv4 OPEN
   - Optimise away unnecessary lookups for rename targets
   - Misc performance improvements when freeing NFSv4 delegations
  Bugfixes and cleanups:
   - Try to fail quickly if proto=rdma
   - Clean up RDMA receive trace points
   - Fix sillyrename to return the delegation when appropriate
   - Misc attribute revalidation fixes
   - Immediately clear the pNFS layout on a file when the server returns
     ESTALE
   - Return NFS4ERR_DELAY when delegation/layout recalls fail due to
     igrab()
   - Fix the client behaviour on NFS4ERR_SEQ_FALSE_RETRY"
* tag 'nfs-for-4.18-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (80 commits)
  skip LAYOUTRETURN if layout is invalid
  NFSv4.1: Fix the client behaviour on NFS4ERR_SEQ_FALSE_RETRY
  NFSv4: Fix a typo in nfs41_sequence_process
  NFSv4: Revert commit 5f83d86cf5 ("NFSv4.x: Fix wraparound issues..")
  NFSv4: Return NFS4ERR_DELAY when a layout recall fails due to igrab()
  NFSv4: Return NFS4ERR_DELAY when a delegation recall fails due to igrab()
  NFSv4.0: Remove transport protocol name from non-UCS client ID
  NFSv4.0: Remove cl_ipaddr from non-UCS client ID
  NFSv4: Fix a compiler warning when CONFIG_NFS_V4_1 is undefined
  NFS: Filter cache invalidation when holding a delegation
  NFS: Ignore NFS_INO_REVAL_FORCED in nfs_check_inode_attributes()
  NFS: Improve caching while holding a delegation
  NFS: Fix attribute revalidation
  NFS: fix up nfs_setattr_update_inode
  NFSv4: Ensure the inode is clean when we set a delegation
  NFSv4: Ignore NFS_INO_REVAL_FORCED in nfs4_proc_access
  NFSv4: Don't ask for delegated attributes when adding a hard link
  NFSv4: Don't ask for delegated attributes when revalidating the inode
  NFS: Pass the inode down to the getattr() callback
  NFSv4: Don't request size+change attribute if they are delegated to us
  ...
		
	
			
		
			
				
	
	
		
			51 lines
		
	
	
	
		
			920 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
	
		
			920 B
		
	
	
	
		
			C
		
	
	
	
	
	
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
 | 
						|
/*
 | 
						|
 * Copyright (c) 2015, 2017 Oracle.  All rights reserved.
 | 
						|
 */
 | 
						|
 | 
						|
/* rpcrdma.ko module initialization
 | 
						|
 */
 | 
						|
 | 
						|
#include <linux/types.h>
 | 
						|
#include <linux/compiler.h>
 | 
						|
#include <linux/module.h>
 | 
						|
#include <linux/init.h>
 | 
						|
#include <linux/sunrpc/svc_rdma.h>
 | 
						|
 | 
						|
#include <asm/swab.h>
 | 
						|
 | 
						|
#include "xprt_rdma.h"
 | 
						|
 | 
						|
#define CREATE_TRACE_POINTS
 | 
						|
#include <trace/events/rpcrdma.h>
 | 
						|
 | 
						|
MODULE_AUTHOR("Open Grid Computing and Network Appliance, Inc.");
 | 
						|
MODULE_DESCRIPTION("RPC/RDMA Transport");
 | 
						|
MODULE_LICENSE("Dual BSD/GPL");
 | 
						|
MODULE_ALIAS("svcrdma");
 | 
						|
MODULE_ALIAS("xprtrdma");
 | 
						|
 | 
						|
static void __exit rpc_rdma_cleanup(void)
 | 
						|
{
 | 
						|
	xprt_rdma_cleanup();
 | 
						|
	svc_rdma_cleanup();
 | 
						|
}
 | 
						|
 | 
						|
static int __init rpc_rdma_init(void)
 | 
						|
{
 | 
						|
	int rc;
 | 
						|
 | 
						|
	rc = svc_rdma_init();
 | 
						|
	if (rc)
 | 
						|
		goto out;
 | 
						|
 | 
						|
	rc = xprt_rdma_init();
 | 
						|
	if (rc)
 | 
						|
		svc_rdma_cleanup();
 | 
						|
 | 
						|
out:
 | 
						|
	return rc;
 | 
						|
}
 | 
						|
 | 
						|
module_init(rpc_rdma_init);
 | 
						|
module_exit(rpc_rdma_cleanup);
 |